(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 12 Number 11: Heuristic Algorithms"

THE SMALL SYSTEMS JOURNAL® 



OCTOBER 1987 VOL.12, NO.11 



$3.50 IN UNITED STATES 

$4.50 IN CANADA / £1 .75 IN U.K. 

A McGRAW-HILL PUBLICATION 

0360-5280 



«JK 



THEME 

Heuristic Algorithms 



Turbo C, 

Turbo Basic, 

Turbo Pascal and 

Turbo Prolog: 

technical 

excellence 




66 Borland International's Turbo Pascal, Turbo Basic 
and Turbo Prolog automatically identify themselves, by 
virtue of their 'Turbo' forenames, as superior language 
products with a common programming environment. 
The appellation also means to many PC users a 'must 
have' language. To us Turbo C looks like a coup for 
Borland. Garry Ray, PC Week 99 



TUrbo Prolog: 

The Natural Language of 

Artificial Intelligence 



W7" Aether you're a first-time 
\JL/ programmer or an expe- 
ls Trienced one, Turbo Prolog's 
natural implementation of Artifi- 
cial Intelligence soon shows you 
how to build expert systems, nat- 
ural language interfaces, custom- 
ized knowledge bases and smart 
information 
management 
systems. 




lUrbo Prolog and lUrbo C 
work hand in hand 

Turbo Prolog® interfaces per- 
fectly with Turbo C® because 
they're both designed to work 
with each other. 

The Turbo Prolog/Turbo C 
combination means that you can 
now build powerful commercial 
applications using two of the 
most powerful languages 
available. 



TUrbo Prolog's development 
system includes: 

Hf A complete Prolog compiler that 
is a variation of the Clocksin and 
Mellish Edinburgh standard 
Prolog. 

Hf A full-screen interactive editor. 

H' Support for both graphic and text 
windows. 

Hf All the tools that let you build 
your own expert systems and 
AI applications with un- 
precedented ease. 



All Borland products are trademarks or registered trademarks ol Borland Interna- 
tional, Inc., or BoflandVAnalylica, Inc. Other brand and product names are trade- 
marks or registered trademarks ol their respective holders 
Copyright 1987 Borland International B1-1131A 



Circle 32 on Reader Service Card 
(Dealers: 33) 



it An affordable, fast, and 
easy-to-use language that 
will delight the newcomer 
. . . You experienced Prolog 
hackers will likewise be 
delighted, if not astonished, 
by the features and per- 
formance of the Turbo 
Prolog development 
environment. 

Turbo Prolog offers gener- 
ally the fastest and most 
approachable implementa- 
tion of that language. 

Darryl Rubin, AI Expert 7 7 

How TUrbo Prolog's new Tool- 
box adds 80 powerful tools 
and 8000 lines of source code 

In keeping with Borland tradi- 
tion, we've quickly added the 
new Turbo Prolog Toolbox™ to 
Turbo Prolog. 

With 80 tools and 8000 lines 
of source code that can easily be 
incorporated into your own pro- 
grams—and 40 sample programs 
that show you how to put these 
AI tools to work — the Turbo 
Prolog Toolbox is a highly intelli- 
gent, high-performance addition. 
Only $99.95! 



TUrbo Prolog Toolbox 
features include: 

Hf Business graphics generation: 
boxes, circles, ellipses, bar charts, 
pie charts, scaled graphics 

Hf Complete communications pack- 
age: supports XMODEM protocol 

Hf File transfers from Reflex, "dBASE 
III," 1-2-3," Symphony" 

H' A unique parser generator: con- 
struct your own compiler or query 
language 

Hf Sophisticated user- interface design 
tools 

Hf Contains 40 example programs 

Hf Easy-to-use screen editor: design 
your screen layout and I/O 

Hf Calculated fields definition 

H' Over 8,000 lines of source code 
you can incorporate into your own 
programs 



Tbr 

The most pow 

compi 

Our new Turbo C generates 
| fast, tight, production- 
quality code at compilation 
speeds of more than 13,000 lines 
a minute! 

It's the full-featured optimizing 
compiler everyone has been wait- 
ing for. 

Switching to lUrbo C, or 
starting with Ibrbo C, you 
win both ways 

If you're already programming 
in C, switching to Turbo C will 
make you feel like you're riding a 
rocket instead of pedaling a bike. 

If you're never programmed in 
C, starting with Turbo C gives you 
an instant edge. It's easy to learn, 
easy to use, and the most efficient 
C compiler at any price. 
Only $99.95! 




ti Turbo C does look like 
What We've All Been Waiting 
For: a full-featured compiler 
that produces excellent 
code in an unbelievable 
hurry . . . moves into a class 
all its own among full- 
featured C compilers . . . 
Turbo C is indeed for the 
serious developer . . . One 
heck of a buy — at any 

price. Michael Abrash, 

Programmer's Journal SS 



*i 



boC: NEW! 

r erful optimizing 
ler ever 



Sieve benchmark 





Turbo C 


Microsoft® 
C 


Compile time 


2.4 


13.51 


Compile and 
link time 


4.1 


18.13 


Execution time 


3.95 


5.93 


Object code 
size 


239 


249 


Execution size 


5748 


7136 


Price 


$9935 


$450.00 



Benchmark run on an IBM PS/2 Model 60 using Turbo C version 
1.0 and Ihe Turbo Linker version 1.0; Microsoft C version 4.0 and 
Ihe MS overlay linker version 3.51. 



Technical Specifications 

H' Compiler: One-pass optimizing com- 
piler generating linkable object 
modules. Included is Borland's high- 
performance Turbo Linker." The object 
module is compatible with the PC- 
DOS linker. Supports tiny, small, com- 
pact, medium, large, and huge 
memory model libraries. Can mix 
models with near and far pointers. 
Includes floating point emulator 
(utilizes 8087/80287 if installed). 

H' Interactive Editor: The system 

includes a powerful, interactive full- 
screen text editor. If the compiler 
detects an error, the editor auto- 
matically positions the cursor approp- 
riately in the source code. 

S' Development Environment: A power- 
ful "Make" is included so that manag- 
ing Turbo C program development is 
highly efficient. Also includes pull- 
down menus and windows. 

S' Links with relocatable object modules 
created using Borland's Turbo Prolog 
into a single program. 

S' Inline assembly code. 

H' Loop optimizations. 

H' Register variables. 

S' ANSI C compatible. 

S' Start-up routine source code included. 

H^ Both command line and integrated 
environment versions included. 

S' License to the source code for Run- 
time Library available. 



Join more than 100,000 Turbo C 
enthusiasts. Get your copy of 
Turbo C today! 

Minimum system requirements: All products run on IBM PC, 
XT, AT, PS/2, portable and Irue compatibles. PC-DOS (MS-DOS) 
2.0 or laler. 384K RAM minimum. Basic Telecom and Editor Tool- 
boxes require 640K. 

Borland International 

4585 ScoUs Valley Drive, Scolls Valley, CA 95066 

Telephone: (408) 438-8400 Telex: 172373 



Why more than 600,000 

programmers worldwide are using 

Hirbo Pascal today 



Tlhe irresistible force behind 
Turbo Pascal's worldwide 
success is Borland's advanced 
technology. We created a com- 
piler so fast, that Turbo Pascal® is 
now the worldwide standard. And 
there are more tools for Turbo 
Pascal than for any other develop- 
ment environment in the world. 

You'll get everything you 
need from Tbrbo Pascal and 
its 5 Toolboxes 

Turbo Pascal and Family are 
all you'll ever need to perfect pro- 
gramming in Pascal. 

If you've never programmed 
in Pascal, you'll probably want to 
start with Turbo Pascal Tutor® 2.0, 
and as your expertise quickly 
grows, add Toolboxes like our 

• Database Toolbox® 

• Editor Toolbox® 

• Graphix Toolbox® 

• GameWorks® 
and our newest, 

• Numerical Methods Toolbox™ 



66 Borland International's 
Turbo Pascal took the pro- 
gramming world by storm. A 
great compiler combined 
with a good editor at an 
astounding price, the pack- 
age quickly came to be 
called, simply, Turbo — and 
has sold more than 500,000 
copies. 

Stephen Randy Davis, PC Magazine 



Language deal of the cen- 



tury. 



PC Magazine 



33 





And because Turbo Pascal is the 
established worldwide standard, 
3rd party, independent non- 
Borland developers also offer an 
incredible array of programs for 
Turbo Pascal. Only $99.95! 



For Scientists and Engineers: 
lurbo Pascal Numerical 
Methods Ibolbox 

The Numerical Methods Tool- 
box is a complete collection of 
Turbo Pascal routines and pro- 
grams. Add it to your develop- 
ment system and you have the 
most comprehensive and power- 
ful numerical analysis capabil- 
ities — at your fingertips! 

The Numerical Methods Tool- 
box is a state-of-the-art mathemat- 
ical toolbox with these ten pow- 
erful features: 

S' Zeros of a function 

S' Interpolation 

\^ Differentiation 

S' Integration 

S' Matrix Inversion 

S' Matrix Eigenvalues 

S' Differential Equations 

S' Least Squares 

[vf Fourier Transforms 

S' Graphics 

Each module comes with pro- 
cedures that can be easily adapted 
to your own program. The Tool- 
box also comes complete with 
source code. So you have total 
control of your application. 

Only $99.95/ bih 3 ia 







Tbrbo Basic introduces 

its powerful new Telecom, Editor 

and Database Toolboxes 



NEW 1 - 



Turbo Basic® is the break- 
through you've been waiting 
for. The same power we 
brought to Pascal with Turbo 
Pascal has now been applied 
to BASIC with Turbo Basic. 

Compatible with BASICA, Turbo 
Basic is the high-performance, 
high-speed BASIC you'd expect 
from Borland. 

Basically, TUrbo Basic is 
all you need 

It's a complete development 
environment which includes an 
incredibly fast compiler, an inter- 
active editor and a trace debug- 
ging system. It outperforms all its 
rivals, and because it's compatible 
with BASICA, you probably 
already know how to use it. 

Includes a free MicroCalc 
spreadsheet complete with source 
code Only $99.95! 




A technical look at Tbrbo Basic 

Hf Full recursion supported 

Hf Standard IEEE floating-point format 

H' Floating-point support, with full 
8087 (math co-processor) integra- 
tion. Software emulation if no 
8087 present 

H' Program size limited only by avail- 
able memory (no 64K limitation) 

Sf VGA, CGA, and EGA support 

Sf Access to local, static, and global 
variables 

Hf Full integration of the compiler, 
editor, and executable program, 
with separate windows for editing, 
messages, tracing, and execution 

H' Compile, run-time, and I/O errors 
place you in the source code 
where error occurred 

Hf New long integer (32 -bit) data 
type 

Hf Full 80-bit precision 

S' Pull-down menus 

Hf Full window management 



QQ Borland has created 
the most powerful version 
of BASIC ever. 

Ethan Winer, PC Magazine J J 




Telecom Toolbox is a complete 
communications package which 
takes advantage of the built-in 
communications capabilities of 
BASIC — use as is or modify. 

• Pull-down menus and windows 

• XMODEM support 

• VT 100 terminal emulation 

• Captures text to disk or printer 

• PhoneBook file 

• 300, 1200, 2400 baud support 

• Supports script files 

• Fast screen I/O 

• Supports most of XTalk's 
command set 

• Manual dial and redial options 

Use Telecom Toolbox to embed 
communications capabilities into 
your own programs and/or build 
your own communications pack- 
age. Source code included for 
all Toolbox code and sample 
programs. Only $99.95! 



For the dealer nearest you or to order by phone call 

(800) 255-8008 

in CA (800) 742-1)33 in Canada (800) 237-1136 




BORLAND 

INTERNA T I N A I 




Database Toolbox means that 
you don't have to reinvent the 
wheel each time you write new 
Turbo Basic database programs. 

H' 'Trainer" shows you how B+ 
trees work. (Simply key in 
sample records and you'll see 
your index being built.) 

H' Turbo Access instantly locates, 
inserts or deletes records in a 
database — using B+ trees. 

Hf Turbo Sort sorts data on single 
items or on multiple keys and 
features virtual memory 
management for sorting large 
data files. 

Source code included. 

Only $99.95! 




SUMMER BREAK SPECIAL! 

Buy Turbo Basic and Get a FREE Product 
See your dealer for details! 



Editor Toolbox is all you need 
to build your own text editor or 
word processor. Includes source 
code for two sample editors. 

First Editor is a complete editor 
ready to include in your programs, 
complete with windows, block 
commands and memory-mapped 
screen routines. 

MicroStar" is a full-blown text 
editor with a complete pull-down 
menu user interface, and gives you 

• Wordwrap 

• Undo last change 

• Auto- Indent 

• Find and Find/Replace with options 

• Set left/right margins 

• Block mark, move and copy 

• Tab, insert, overstrike modes, line 
center etc. 

Includes source code. 

Only $99.95! 



Contents 



BYTE 

OCTOBER 1987 
VOLUME 12 
NUMBER 1 1 




Features/99 



FEATURES 



99 



The Tandy Anniversary Product Explosion 100 

by Rich Malloy, G. Michael Vose, and George A. Stewart 
Tandy celebrates its ten-year milestone 
with four new computers and a laser printer. 

The four new 
Tandy computers 
and Tandy *s 
(long-awaited) 
first laser 
printer. 




The OS/2 Applications Family 109 

by Ray Duncan 

Let's clear up the confusion about what it will take 

to run programs under OS/2. 

Product Preview: 

A Spiritual Heir to the Macintosh 121 

by Ezra Shapiro 

The Canon Cat is Jef Raskin's version 

of a "people's computer." 

Product Preview: 

The Archimedes A310 125 

by Dick Fountain 

An early look at what may be the world's fastest 

personal computer. 

Ciarcia's Circuit Cellar: 

Build the Circuit Cellar AT Computer, Part 2 135 

by Steve Ciarcia 

Steve reveals the circuitry for his AT-on-a-board. 

2 BYTE • OCTOBER 1987 



THEME: Heuristic Algorithms 147 

Introduction 148 

by G. Michael Vose 

Zero-Knowledge Proofs 149 

by Peter Wayner 

A new heuristic method lets you prove your identity 

without revealing a password, 

Back-Propagation 155 

by William P. Jones and Josiah Hoskins 

A generalized delta learning rule, demonstrated 

with a neural-network simulation written in C . 

Optimizing Compilers 165 

by Mark Roberts 

Techniques for generating more efficient code. 

A Search Strategy for Commonsense Logic 

Programming 173 

by Paul V. Haley 

The incorporation of heuristics into modern languages 

could give us the ability to write "smart" programs. 

Mathematical Reasoning 177 

by Leon Sterling 

An equation solver written in Prolog that uses 

heuristic methods. 

Neural-Network Heuristics 183 

by Gary Josin 

Three heuristic algorithms that learn from experience. 

REVIEWS 193 

Reviewer's Notebook 194 

by Curtis Franklin Jr. 

The Macintosh II 197 

by Bruce F. Webster 

The newest Mac features a 68020 CPU, NuBus slots, 

and color. 

The GRiDLite Laptop 202 

by John Unger 

GRiD's portable computer combines advanced features 

with mundane hardware. 



Cover photo by Paul Avis 




Themes/147 



Reviews/193 



Kernel/249 



The Wang LapTop 203 

Alex Lane 

A portable to bridge the gap between Wang and IBM PC 

computing environments. 

The Definicon DSI-780 209 

by Dave Thomas 

Equip your IBM PC with a 16-MHz 68000 

microprocessor. 

Laser Printer Times Four 214 

by Wayne Rash Jr. 

Lower prices and higher capabilities characterize 

these printers. 

Three C Language Screen-Utility Packages for PCs. . . . 223 

by Jonathan Robie 

A comparison of the windows for Data, C- Worthy , 

and Vitamin C screen utilities. 

Advantage C++ and Guidelines C + + 229 

by Mark Mallett 

C++ compilers for the IBM PC and its compatibles. 

Equation Solvers 237 

by George A. Stewart 

A look at two packages for mathematical computing 

without programming. 

Personal Consultant Plus 242 

by Ernest R. Tello 

A LISP-based expert system shell for personal computers. 

Guide 244 

by William Hershey 

Hypertest comes to the Macintosh. 



KERNEL 249 

Computing at Chaos Manor: 

New Life for Lucy 251 

by Jerry Pournelle 
Jerry reincarnates Lucy. 

Applications Only: 

Into the 4th Dimension, Part 1 269 

by Ezra Shapiro 

Ezra's first impressions of an important new product 

for the Macintosh. 



LISTINGS 

From BIX. 267 

FromBYTEnet (617)861-9764 

On disk or in print see card after 304 



DEPARTMENTS 

Editorial 6 

BIX's New Pyramid 9820 
Letters and 

Review Feedback 10 

Chaos Manor Mail 28 

Microby tes 37 

What's New 45 

Events 65 

Ask BYTE 68 



BEST OF BIX 

Macintosh 275 

IBM PC 280 



Circuit Cellar 

Feedback 74 

Book Reviews 81 

BOMB and Coming 

Up in BYTE 330 

Editorial Index 

by Company 331 

Reader Service 333 



BYTE (ISSN 0360-5280) is published monthly with additional issues in June and October by McGraw-Hill Inc. 
Founder; James H. McGraw( 1860- 1948). Executive, editorial, circulation, and advertising offices: One Phoenix Mil! 
Lane. Peterborough. NH03458.phone(603) 924-9281. Office hours: Monday through Thursday 8:30AM-4:30PM. 
Friday 8:30 AM- 1 :00 PM. Eastern Time. Address subscriptions to BYTE Subscriptions. P.O. Box 682 1 . Piscataway . 
N'J 08855. Postmaster: send address changes. USPS Form 3579. undeliverable copies, and fulfillment questions to 
BYTE Subscriptions. P.O. Box 6821 . Piscataway. NJ 08855. Second-class postage paid at Peterborough. NH 03458 
and additional mailing offices. Postage paid at Winnipeg, Manitoba. Registration number9321. Subscriptions are $22 
for one year. $40 for two years. andS58 for three years in the U.S. and its possessions. In Canada and Mexico. $25 for 
one year. $45 for two years. $65 for three years. $69 for one year air delivery to Europe. 31.000 yen for one year air 
delivery to Japan. 15.600 yen forone year surface delivery to Japan. $37 surface delivery elsewhere. Air delivery to 
selected areas at additional rates upon request. Single copy price is $3.50 in the U.S. and its possessions, $4.25 in 
Canada and Mexico. $4.50 in Europe, and $5 elsewhere. Foreign subscriptions and sales should be remitted in U.S. 
funds drawn on a U.S. bank. Please allow six to eight weeks for delivery of first issue. Printed in the United States of 
America. 

Address editorial correspondence to: Editor. BYTE. One Phoenix Mill Lane. Peterborough. NH 03458. 
Unacceptable manuscripts will be relumed if accompanied by sufficient postage. Not responsible for lost manuscripts 
or photos. Opinions expressed by the authois are not necessarily those of BYTE. 

Copyright © 1987 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. $1.50. Copying done for other than personal or internal refeience use 
without the permission 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 48 106 or 18 Bedford Row. Dept. PR. London WC1R 4EJ. England. 

Subscription questions or prohlems should be addressed lo: BYTE Subscriber Service. P.O. Box 6821. Piscataway. NJ 

08855. 



Section art by Robert Tinney 



OCTOBER 1987 -BYTE 3 



BVTE 



EDITORIAL DIRECTOR, BYTE and BIX 
Philip Lemmons 

EXECUTIVE EDITOR, BYTE 

Frederic S. Langa 

ASSISTANT MANAGING EDITOR 

Glenn Hartwig 

CONSULTING EDITORS 

Steve Ciarcia 
Jerry Pournelle 
Ezra Shapiro 

SENIOR TECHNICAL EDITORS 

Cathryn Baskin, Reviews 
G. Michael Vose, Themes 
Gregg Williams, Features 

TECHNICAL EDITORS 

Dennis Allen 
Richard Grehan 
Ken Sheldon 
George A. Stewart 
Jane Morrill Tazelaar 
Tom Thompson 
Charles D. Weston 
Eva White 
Stanley Wszola 

ASSOCIATE TECHNICAL EDITORS 

Curtis Franklin Jr. 

Margaret Cook Gurney, Book Reviews 

COPY EDITORS 

Lauren Stickler, Copy Chief 
Judy Connors-Tenney 
Jeff Edmonds 
Nancy Hayes 
Cathy Kingery 
Margaret A. Richard 
Warren Williamson 

ASSISTANTS 

Peggy Dunham, Office Manager 

Martha Hicks 

L. Ryan McCombs 

June N.Sheldon 



ADMINISTRATION 

J. Burt Totaro, Publisher 

Beverly Jackson, Publisher's Assistant 

ADVERTISING SALES 

Dennis J. Riley, Director of Sales 
Sandra Foster, Administrative Assistant 

ADVERTISING/PRODUCTION (603-924-6448) 

Lisa Wozmak, Supervisor 

Lyda Clark, Senior Account Coordinator 

Marion Carlson 

Karen Cilley 

Brian Higgins 

Linda Short 

Wai Chiu Li, Quality Control Manager 

Julie Murphree, Advertising/Production 

Coordinator 

MARKETING COMMUNICATIONS 

Horace T. Howland, Director (603-924-3424) 
Vicki Reynolds, Promotion Manager 
Lisa Jo Steiner, Marketing Assistant 
Stephanie Warnesky, Marketing Art Director 
Sharon Price, Associate Art Director 
Julie Perron, Market Research Analyst 
Cynthia Damato Sands, Reader Service 
Coordinator 



NEWS AND TECHNOLOGY 

Gene Smarte, Bureau Chief, Costa Mesa 

Jonathan Erickson, Senior Technical Editor, 

San Francisco 

Rich Malloy, Senior Technical Editor, New York 

Nicholas Baran, Associate Technical Editor, 

San Francisco 

Cindy Kiddoo, Editorial Assistant, San Francisco 

ASSOCIATE NEWS EDITORS 

Dennis Barker, Microbytes 

Anne Fischer Lent, What's New 

Stan Miastkowski, What's New, Best of BIX 

CONTRIBUTING EDITORS 

Jonathan Amsterdam, programming projects 

Mark Dahmke, video, operating systems 

Mark Haas, at large 

Rlk Jadrnicek, CAD, graphics, spreadsheets 

Robert T. Kurosaka, mathematical recreations 

Alastair J.W. Mayer, software 

Alan R. Miller, languages and engineering 

Dick Pountain, U.K. 

Roger Powell, computers and music 

Phillip Robinson, semiconductors 

Jon Shiell, high-performance systems 

ART 

Nancy Rice, Art Director 

Joseph A. Gallagher, Assistant Art Director 

Jan Muller, Art Assistant 

Alan Easton, Drafting 

PRODUCTION 

David R. Anderson, Production Director 
Denise Chartrand 
Michael J. Lonsky 
Virginia Reardon 

TYPOGRAPHY 

Sherry McCarthy, Chief Typographer 

SelindaChiquoine 

Donna Sweeney 



TELEMARKETING 

L Bradley Browne, Director 
Susan Boyd, Administrative Assistant 

PLANNING AND RESEARCH 

Michele Perron, Director 

Faith Kluntz, Copyrights Coordinator 

FINANCIAL SERVICES 

Philip L. Penny, Director of Finance and Services 

Kenneth A. King, Business Manager 

Christine Lee, Assistant 

Marilyn Haigh 

Diane Henry 

Vern Rockwell 

LisaTeates 

JoAnn Walter 

CIRCULATION 

Dan McLaughlin, Director 
James Bingham, Single-Copy Sales Manager 
Vicki Weston, Assistant Manager 
Claudette Carswell, Distribution Coordinator 
Karen Desroches, Direct Accounts Coordinator 
Louise Menegus, Back Issues 



EIX 



EXECUTIVE EDITOR, BIX 

George Bond 



SENIOR EDITOR 

David Betz 

ASSOCIATE EDITORS 

Tony Lockwood 

Donna Osgood, San Francisco 

MICROBYTES DAILY 

Dennis Barker, Coordinator, Peterborough 

Gene Smarte, Bureau Chief, Costa Mesa 

Nicholas Baran, San Francisco 

Rick Cook, Phoenix 

Jonathan Erickson, San Francisco 

Martha Hicks, Peterborough 

Anne Fischer Lent, Peterborough 

Larry Loeb, Wallingford, CT 

Rich Malloy, New York 

Brock N. Meeks, La Mesa, CA 

Jeff Merron, Peterborough 

Stan Miastkowski, Peterborough 

Lynne Nadeau, Peterborough 

Wayne Rash Jr., Washington, DC 

William Webb, Peterborough 

GROUP MODERATORS 

David Allen, Applications 

Frank Boosman, Artificial Intelligence 

Leroy Casterline, Other 

Marc Greenfield, Programming Languages 

Jim Howard, Graphics 

Gary Kendall, Operating Systems 

Steve Krenek, Computers 

Brock N. Meeks, Telecommunications 

Barry Nance, New Technology 

Donald Osgood, Computers 

Sue Rosenberg, Other 

Jon Swanson, Chips 

BUSINESS AND MARKETING 

Doug Webster, Director (603-924-9027) 

Patricia Bausum, Secretary 

Denise A. Greene, Customer Service 

Brian Warnock, Customer Service 

Tammy Burgess, Customer Credit and Billing 

TECHNOLOGY 

Clayton Lisle, Director 
Business Systems Technology, MHIS 
Bill Garrison, Business Systems Analyst 
Jack Reilly, Business Systems Analyst 



PERSONNEL 

Cheryl Hurd, Office Manager 
Patricia Burke, Personnel Coordinator 

BUILDING SERVICES/TRAFFIC 

Anthony Bennett, Building Services Manager 
Mark Monkton, Assistant 
Agnes E. Perry, Traffic Assistant 

RECEPTIONIST 

Donna Healy 



EDITORIAL AND BUSINESS OFFICE: 

One Phoenix Mill Lane, Peterborough, New Hampshire 
03458,(603)924-9281. 

West Coast Branch Offices: 425 Battery St., San Francisco, 
CA 94111, (415) 954-9718; 3001 Red Hill five., Building #1, 
Suite 222, Costa Mesa, CA 92626, (714) 557-6292. 
New York Branch Editorial Office: 1221 /Venue of the 
Americas, New York, NY 10020, (212)512-3175. 
BYTEnet: (617) 861-9764 (set modem at 8-1 -N or 7-1-E; 300 
or 1 200 baud). Fax: (603) 924-7507. Telex: (603) 924-7861. 
SUBSCRIPTION CUSTOMER SERVICE: Non-U.S. (201) 
837-1315; inside U.S. (outside NJ.) 1-80CM23-8272; (inside 
N.J.) 1-800-367-0218. 



E/^ibafl Officers of McGraw-Hill Information Systems Company: President: Richard B. Miller. Executive Vice Presidents: Frederick P. Jannott, Construction Information Group; Russell 
■rflifi ^' White, Computers and Communications Information Group; J. Thomas Ryan, Marketing and International. Senior Vice Presidents-Publishers: Laurence Altman, Electronics; 
■ ■Mil David J. McGrath, Engineering News-Record. Group Vice Presidents: J. Burt Totaro, BYTE; Frank A. Shinal, Dodge; Peter B. McCuen, Communications Information. Vice 
Presidents: Robert D. Daleo, Controller; Fred O. Jensen, Planning and Development; Michael J. Koeller, Human Resources; Talat M. Sadiq, Systems Planning and Technology. 

Officers of McGraw-Hill Inc.: Harold W. McGraw Jr., Chairman; Joseph L. Dionne, President and Chief Executive Officer; Robert N. Landes, Executive Vice President, General Counsel 
and Secretary; Walter D. Serwatka, Executive Vice President and Chief Financial Officer; Shel F. Asen, Senior Vice President, Manufacturing; Robert J. Bahash, Senior Vice President, 
Finance and Manufacturing; Frank D. Penglase, Senior Vice President, Treasury Operations; Ralph R. Schulz, Senior Vice President, Editorial; George R. Elsinger, Vice President, 
Circulation. 

BYTE, BVf f , and The Small Systems Journal are registered trademarks of McGraw-Hill Inc. 



4 BYTE- OCTOBER 1987 



snvlRTI/LORK Kee 
Getting Smarter 



Smarter Artwork 

Three years ago, Wintek engi- 
neers created smARTWORK to 
reduce the time and tedium of 
laying out their own printed-circuit 
boards. Thousands of engineers 
have since discovered the ease of 
use and sophistication that makes 
smARTWORK the most popular 
PCB CAD software available. And 
thanks to them, smARTWORK keeps 
getting better. 




New smARTWORK Features 

□ Silkscreen layer for component 
placement and identification %% 

□ Text capabilities for all three 
layers 

□ Selectable trace widths and 
pad shapes and sizes 

□ User-definable library 

□ Ground planes created with a 
single command 

□ Solder-mask and padmaster 
plots generated automatically 

□ Quick printer 2X checkplots 

□ Additional drivers for printers 
and plotters 

□ Optional drill-tape and 
Gerber photoplotter utilities 
D AutoCAD® .DXF file output 
□ Completely updated 
manual 

□ 800 number for free 
technical assistance 



smARTWORK transforms 
your IBM PC into a PCB CAD system 



Interactive routing, continual 
design-rule checking, pad shav- 
ing, and production-quality 2X 
artwork have always been a part 
of smARTWORK. And now that 
many customer suggestions have 
become a part of the software, 
smARTWORK is an even better 
value. That's why we 
offer it with a thirty- 
day money-back 
no-nonsense 
guarantee. 



* }lifepSS^S^?SSSS!'4?^^SSi^5«PMl^^SlM 



2" by 4" section of a 10" by 16" double- 
sided board with silkscreen layer 




Using an Epson or IBM dot-matrix 
printer, you can create 2X artwork and 
1X or 2X checkplots in a fraction of the 
time hand-taping requires 



Current Versions 




HiWIRE 


V1.0r2 


smARTWORK 


V1.3r0 




Camera-ready 
2X artwork from an HI or HP pen plotter 

The Smart Buy. Guaranteed. 

Still priced at $895, smARTWORK 
is proven, convenient and fast. 
Our money-back guarantee lets 
you try smARTWORK for 30 days 
at absolutely no risk. Call toll free 
[800] 742-6809 today and put 
smARTWORK to work for you 
tomorrow. That's smart work. 



System Requirements 

□ IBM PC PC XT, or PC AT with 384K 
RAM, and DOS V2.0 or later 

□ IBM Color/Graphics Adapter with 
RGB color or B&W monitor 

□ IBM Graphics Printer or Epson 
FX/MX/RX-series printer and/or 

D Houston Instrument DMP-40, 41, 42, 
51, 52, or Hewlett-Packard 7470, 
7475, 7550, 7580, 7585, 7586 pen 
plotter 

□ Optional Microsoft Mouse 



Wintek Corporation 
1801 South St. 
Lafayette, IN 47904 
Telephone: [800] 742-6809 
In Indiana: (317] 742-8428 
Telex: 70-9079 WINTEK CORP UD 




MW 



Europe: RfVA Terminals Lid,, England, Phone: 04862-71 



Circle 296 on Reader Service Card 



19502/ Australia: Entertainment Audio Pry. Ltd., Phone: (08) 363- 



"smARTWORK", "Wintek", and the Wintek logo are registered trademarks of 
Wintek Corporation. "AutoCAD" Is o registered trademark of Autodesk. Inc. 



omlcro tnformatlca E Tecnologla Ltda., Phone: (041) 224-5616 



OCTOBER 1987 -BYTE 5 



EDITORIAL 



BIX's New Pyramid 9820 

The BIX community, which numbers 
more than 17,000 users, can now get 
much bigger because a larger and faster 
computer is going on-line. Our Pyramid 
9820, as delivered, will support 224 si- 
multaneous BIX users and can expand to 
support at least 350 users. In our simula- 
tions, the Pyramid 9820 ran the BIX con- 
ferencing software with very fast re- 
sponse times— even under peak user 
loads. 

We could also expand our system by 
adding more processors to support a 
much larger number of users. If we ever 
exceed the capacity of one Pyramid, fur- 
ther expansion is possible by networking 
multiple Pyramids with NFS, the net- 
work file system developed by Sun. 

We considered several good contend- 
ers for the role of BIX host. The Pyramid 
9820 won because it gives us, in addition 
to high performance and cost-effective- 
ness, the reassurance that comes with 
seeing every essential feature already 
working at the time of purchase. 

System Specifics 

Our new Pyramid 9820 computer has 
dual 32-bit processors based on a RISC 
(reduced instruction set computer) archi- 
tecture and runs the OSx operating sys- 
tem; this is Pyramid's way of simulta- 
neously supporting both Berkeley 4.2 
BSD and System V versions of Unix. 
While the Pyramid 9820 can have as 
much as 128 megabytes of RAM, ours 
has "only" 32 megabytes. Each of the 
Pyramid CPUs has 528 registers. 

The Pyramid 9820, which has a system 
computation of 13 million instructions 
per second, can be upgraded to a three- 
processor 9830 or a four-processor 9840. 
These upgrades would increase system 
computation to 19 and 25 MIPS, respec- 
tively, according to Pyramid. 

The RISC CPUs execute most instruc- 
tions in a single 100-nanosecond cycle. 
Each CPU has its own 1 6K-byte instruc- 
tion cache and 64K-byte data cache in 
order to reduce memory-access time. 
Floating-point processors are included in 
each CPU. 

Pyramid's multiprocessor architecture 
is symmetrical. That is to say, neither 
processor is master or slave— each can 
execute both system and user tasks, so 
that a new task goes to the next available 



processor. Both CPUs share a single 
copy of the Unix kernel. In our previous 
BIX system, performance was at times 
constrained because even though four 
68020s were all functioning as CPUs, 
only one of them could run Unix kernel 
tasks. 

Input/Output 

I/O performance is critical in an applica- 
tion like BIX. The CPUs and terminal 
processors in the Pyramid 9820 commu- 
nicate over a 40-megabyte-per-second 
32-bit system bus called the XTEND bus. 
In addition to two terminal processors 
with asynchronous ports, our Pyramid 
9820 has two synchronous X.25 proces- 
sors, each of which can handle up to 56K 
bits per second. The intelligent I/O pro- 
cessor in the Pyramid 9820 uses an AMD 
29116 processor and 14 parallel direct- 
memory-access channels, with a band- 
width of 5 megabytes per second per 
channel. Pyramid says the aggregate I/O 
throughput is 1 1 megabytes per second 
per I/O subsystem. We ordered the 9820 
with two I/O subsystems installed. 

Since conferences reside on disks, BIX 
performance depends on fast disk I/O. 
The Pyramid 9820 and its I/O subsystem 
use the ESMD disk interface to transfer 
data at up to 2 x h megabytes per second, 
using overlapping seeks and rotational 
position sensing to increase the rate of 
transactions. 

System Software 

Pyramid's dual-port OSx operating sys- 
tem provides both major Unix standards 
concurrently: Berkeley 4.2 BSD and 
AT&T System V. We're running CoSy 
under System V. The most remarkable 
thing about Pyramid's implementation of 
Unix is that it enables the CPUs to oper- 
ate symmetrically and to share the burden 
of the Unix kernel. The tasks handled by 
the kernel are, of course, vital to system 
performance, including handling of inter- 
rupts and of system calls. 

By Pyramid's estimate, a master-slave 
dual processor is limited in performance 
to about 1.5 times the performance of a 
single-processor system. The symmetri- 
cal implementation of dual processors, 
according to Pyramid, boosts the perfor- 
mance of two processors to 1 . 85 times 
that of a single processor. Moreover, 
Pyramid 9000 family systems like the 



9820 can be upgraded to as many as four 
CPUs, with all of them sharing system 
and user tasks. 

Pyramid's version of Unix implements 
virtual memory with demand paging, to 
provide 4 gigabytes of directly address- 
able memory space for each Unix pro- 
cess. Pages are 2K bytes each. The file 
system has a 2K-byte physical-block size 
and an 8K-byte logical-block size. The 
Pyramid version of Unix supports all the 
features of the Berkeley 4.2 BSD Fast 
File System to provide faster storage and 
retrieval. Programs written for System V. 
can take advantage of the Berkeley Fast 
File System. 

Pyramid also has a virtual disk facility 
that is part of OSx. The virtual disk per- 
mits concatenation of multiple partitions 
into a single large file system. Disk parti- 
tions can be larger than the largest physi- 
cal disk. In addition, the virtual disk fa- 
cility permits "striping" of virtual disk 
files. A striped disk is made up of two or 
more pieces of one or more physical de- 
vices. The striped file uses an interleav- 
ing algorithm to translate block numbers 
of the logical disk into those of the physi- 
cal disk. The result is that files can be 
striped across multiple disks to achieve 
greater system I/O throughput because 
I/O activity is distributed evenly across 
several drives or controllers. 

The variety of possibilities for data 
storage should allow us to get the most 
out of the Pyramid hardware. We'll begin 
with four 470-megabyte disk drives. 

Summing Up 

The Pyramid 9820 gives us enough com- 
puting power, ports, and X.25 virtual 
connections to support hundreds of si- 
multaneous users and also to arrange data 
feeds for additional information products 
to be accessible to BIX users. We will be 
not only improving service for users of 
BIX conferences and the Microbytes 
news service, but also making the entire 
BIX environment richer. 

We are confident that the Pyramid 
9820 architecture will provide a fine ven- 
ue for sophisticated computer users all 
over the world to "meet" on-line for 
years to come. We look forward to seeing 
you there. 

—Phil Lemmons 

Editor in Chief 

(BIX name: "plemmons ") 



6 BYTE- OCTOBER 1987 



Maxell Corp. of America, 60 Oxford Drive, Moonachie, NJ 07074 



III 





S\ 




U 



.J/jkr 






FLOPPY DISKS 
THE GOLD STANDARD 



HHHHHHHMH 



1I1UD i Hi' 




" Xerox Ventura Publisher 
will be to the next 
generation of personal 
computing what Lotus 1-2-3 
was to the last." 

DAVID GOODSTEIN 
InterConsult 



" ...with style sheets 
and other powerful 
features that will 
make producing long 
documents in handsome, 
well-organized formats 
a breeze." 

DIANE BURNS 
PC Magazine 

■» \ timely introduction 
for an excellent, user- 
friendly pro**™ 
will be a signilicant 

factor in 198". 

AJIT KAPOOR 
Dataquest 




■ ' ' 



XEROX 




"Sheer Genius." 

LEONARDO DA ViNCI 




r Mini in 1 1* i hi» rtnnin . xtv) 



"This product could 
set the standard for 
desktop publishing. It's 
fast, it's fully featured, 
it allows you to do 
things never thought 
possible. " 

AMY WOHL 
Wohl Associates 



"Will set the standard 
of comparison in 
desktop publishing. " 

JAMES CAVUOTO 
MicroPublishing 







They raved about Version 1.0. 
Now read about Version 1.1. 

Xerox Ventura Publisher, the easily mastered, industrial-strength 
publishing genius that runs on a standard IBM XTor AT, or compat- 
ible, just got better. Version 1.1 offers 80 significant enhancements 
for short document handling; text, graphics and 
font support; and broader output capability. 

Xerox Ventura Publisher already gets raves 
for long documents; now Version 1.1 offers 20 
additional features for producing short docu- 
ments. There's automatic kerning, support for 
multicolumn frames, improved hyphenation, 
cropping and sizing of art, on-screen rulers, 
and automatic letter spacing, to name a few. 

For documents of any length, page layout and type control have 
been raised from excellent to sensational. Pictures are now 
anchored to text during batch pagination. Documents up to 128 
chapters in length, each containing 150 to 300 pages of text, are 
easily handled. The result is a desktop publishing package that can 
be judged by printing industry graphic standards. 

To the longest list of text and graphics input support in desktop 
publishing comes even greater capability. Version 1.1 adds word 
processing interfaces for XyWrite, Displaywrite III and IV and 
DCA files. There's graphic conversion for more than 500 graphics 
packages based on a dozen file formats, including Macintosh 
"PICT" and image files. Plus downloaded PostScript fonts, 
conversion of H-P Soft-fonts and support for Adobe screen fonts. 

This new release makes Xerox Ventura Publisher the first 
desktop publishing program to support the industry-standard 
page-description languages: PostScript 
and Interpress. That means total 
compatibility with all popular laser printers, 
including, of course, the Xerox 4045 Laser CP and the Xerox 4020 
Color Ink-Jet Printer. 

Xerox Ventura Publisher 1.1— industrial-strength publishing 
genius that lets you do so much more, so much faster, ever so 
easily— right on the desktop. 



Circle 302 on Reader Service Card 



n<erox Coiporation, PO. Box 24, Rochester, NY 14692. 

For more information about Xerox Ventura Publisher 1.1, stop by 
any computer store featuring Xerox software, contact your local Team Xerox 
sales office, or call 1-800-TEAM-XRX, ext. 213B. 



Team Xerox 



Li 1 



CITY 

21315 



stati-: 



ZIP 



192-10-87 



J 



XEROX (H> is a trademark of XEROX CORPORATION. 




OCTOBER 1987 -BYTE 9 



LETTERS 



and Review Feedback 



Enhancements to C-terp 

I was extremely pleased by John Unger' s 
favorable review of C-terp ("Four C Lan- 
guage Interpreters," June). His descrip- 
tion of C-terp is accurate, and his under- 
standing of the product is excellent. 

I would like to update readers on Gim- 
pel Software's C-terp 3.00. We have 
added numerous debugging features, in- 
cluding the dumping of aggregates such 
as structures and arrays, exposed macros, 
watch expression, watch condition, sticky 
breakpoints, temporary breakpoints, and 
a leave function command. 

Gimpel Software has developed a new 
optional method of handling very large 
applications by having all C modules 
share the same external symbol table. In 
addition to saving on space, this option 
also speeds up compilation. Another en- 
hancement is C-terp 's ability to directly 
access extended memory through soft- 
ware paging. We now provide an auto- 
mated system of adding commercial li- 
braries by running a simple batch 
procedure. Also, a new configuration 
program lets users more easily customize 
C-terp to their personal programming 
habits and particular applications. 

James F. Gimpel 

President, Gimpel Software 

Collegeville, PA 

Of Mice and Mechanics 

The review of computer mice by William 
H . Murray and Chris H. Pappas ("Pick of 
the Litter," June) was, in our opinion, 
not a thorough investigation of issues that 
are relevant to everyday use of the device. 
Specifically, we at the Torrington Com- 
pany do not agree with the statements 
about our two-wheel direct drive tracking 
mechanism, nor do we believe them to be 
a concern of the typical user. It has been 
our experience that the two-wheel design 
works well on many different surfaces, 
both hard and soft, and we've received 
very few customer complaints regarding 
this issue. 

Additionally, the reviewers made a 
statement about the trouble-free opera- 
tion of optical versus mechanical mice 
because of the clogging associated with 
"wheels and balls." It was our recogni- 
tion of this problem that led us to use the 
wheel design. We are sure that if the re- 
viewers had sufficient time to thoroughly 
test this design compared to a traditional 



ball mouse, they would agree that it will 
not clog with normal use. 

Finally, the statement regarding our 
Model 1001C-KF (and the Key free dri- 
ver) is incorrect. Key free will not allow 
the user to "custom-design application- 
dependent pull-down menus." Instead, 
we provide a pop-up window to allow re- 
definition of mouse buttons while in the 
application program. 

Mark J . Rossi 

The Torrington Company 

Torrington, CT 

Updating Ada 

I commend you and Namir Clement 
Shammas on the excellent comparative 
review of PC Ada compilers ("Ada 
Moves to Micros," July). Since the re- 
view appeared, Artek Ada has been 
greatly enhanced, the current version 
number is 1 .30, and this new release now 
supports complete Ada tasking, generic 
objects, and all the features listed in table 
1 on page 240 of the July issue. The 
Artek translator now handles all BYTE 
benchmark programs correctly, and, ac- 
cording to our tests, the compiler now 
performs better in the speed and execut- 
able file size benchmarks. 

Artek Ada has been scheduled for offi- 
cial validation at the British National 
Computing Centre this autumn. We ex- 
pect the certified Artek Ada 2.0 to be 
commercially available later this year. 
The price of the compiler will remain at 
$495. An upgrade from the previous ver- 
sions will be available at a nominal 
charge. 

Finally, we've moved, and our address 
is now Artek Corp., 835 East 25th Ave., 
Eugene, OR 97405. The local phone 
number is (503) 683-1265. Our toll-free 
number remains (800) 722-7835. 

Vilhjalmur Thorsteinsson 

Manager, Research and Development 

Artek Corporation 

Eugene, Or 

Namir Clement Shammas states that 
Alsys Ada "dictates that you use the 
Profit board; it will not run without it, 
and it w ill not run with any other memory 
board." This is completely incorrect! 
Alsys Ada version 1 .2 works with as little 
as 3 megabytes of memory from any 
memory board. You must set certain 
switches on the Alsys compiler, since it 



expects 4 megabytes, but it works well 
with 3 megabytes. 

Also, although Alsys Ada requires 
compiling on an IBM PC AT, compiled 
programs will run on IBM PCs or com- 
patibles. Thus, you can develop pro- 
grams on an AT and port them for PC, 
XT, and AT users. 

William H. Murray 
Montrose, PA 

Mac II Preview 

I used to say that I subscribed to BYTE to 
read Jerry Pburnelle's column. After a 
couple of readings of your April issue 
(specifically the product preview of the 
Apple Macintosh II), I have to add two 
names: Gregg Williams and Tom 
Thompson. Really, a great article. 

The article, however, leaves an unan- 
swered question. In which BYTE issue 
will we get a Macintosh II product 
review? 
Thanks for a fine job. 

David E. Goode 
McLean, VA 

Thank you. A review of the Macintosh 

II appears on page 197. 

-Eds. 

Noted with Interest 

The articles in your May issue were inter- 
esting and informative— in particular, the 
features about desktop publishing. 

I noted with regret, however, the lack 
of any discussion about Page Planner in 
the text of Thorn Holmes's article, 
"Make My Page." We operate three Page 
Planner units in our shop and consider 
them to be excellent. Moreover, the new 
owners of the supplying company have an 
aggressive development program under 

continued 



LETTERS POLICY: To be considered for 
publication, a letter must be typed double- 
spaced on one side of the paper and must in- 
clude your name and address. Comments and 
ideas should be expressed as clearly and con- 
cisely 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 cannot be returned to authors. Gener- 
ally, it takes four months from the time BYTE 
receives a letter until it is published. 



10 BYTE- OCTOBER 1987 



Xfen-Tel clears 
the path 

to 2400 baud. 

Trying to install a 2400 baud modem in your PC can make you feel 
like you're trying to get through a maze. 

With most 2400 baud modems, you'll wade through pages of docu- 
mentation . . . only to learn that you must set dozens of parameters 
and reconfigure your software. Even buy all new software. 

Ven-Tel 2400 baud modems eliminate the barriers. Just plug one 
in, and you're ready to transmit your data twice as fast. Using whatever 

software you're using today. 
Choose Ven-Tel 2400 baud 



modems in either our convenient 
desktop, or Half Card™ internal , 
versions. Each requires minimal 
installation and will automat- 
ically connect with 1200/300 
baud modems and services. 
And each is available with 
or without X.PC error 
correction built-in. 
Like all of our PC 
products, Ven-Tel 
2400 baud modems 
are backed by a free 
five-year warranty. 
No other major 
manufacturer even comes close. 
So when you decide to shift into high gear, 
do it with a Ven-Tel 2400. We give you the speed 
you want— without making you work for it. 




VenTel 



Modems 



Our free 24-page booklet, "How to Select The Correct Modem" contains specific 
information about our full line of Ven-Tel 1200 and 2400 baud modems. To request your copy, 
call 800-538-5121. 



Circle 286 on Reader Service Card 



OCTOBER 1987 -BYTE 11 




For Only $99.95 BOOKMARK ™ Protects You From: 




ACCIDENTS 




BLACKOUTS 




L ; 




■u 









BOOKMARK protects you against Joss of work and time 
due to unexpected incidents. 



Work in progress, up to the previous BOOKMARK place- 
ment, is safe! ■'■'■■.■■ 



{SYSTEM CRASH 

T L_r 




System crashes used to mean complete loss of data in 
memory, but not any more. 



FROZEN KEYBOARD 



n^twi 




When the keyboard freezes up you've got to reboot-and 
you can't even save first. But with BOOKMARK, work is 

already saved. 





Memory-resident utility software that automatically saves 
work in progress to the hard disk at user-definable intervals. 

Resume where you left of f with a 
SINGLE keystroke! 

To Order Call Tafl FREE \ n Caitfomia Call Tot! Free 800-543-MARK 

8Q - 544" IVI A R K or ca " ,or tf1e d ea |Gr or distributor nearest you. 



Requirements: : 

IBM PC/XT/AT m 10(» Compatible • ZSflk to 640 fc • IBM DOS 2.1 w Higher. 1 Poppy Drive * Hard Disk 
Drtvs (10 Megabytes Minimum) « Video Display Adapter I8M (Monochrome. Color. Enhanced Cotor} 
Hercules, AST (BOOKMARK occupies art equivalent apace on hard disk ae in system RAM plus Video 
BAM) ■ 

5.1987 by IMTEIUSO FT 



NEW" 



SSS- 

Now 



— Stf- 



iH® 



itur^9 : 



« Increased compatibility Including IBM 
COS 3.3 an d plug-In hard disk cards 

• New UNDO (unction key 

• Audlbts Indication option ol BOOKMARK save 

• Keyboard Input now appear* simultaneously 

during BOOKMARK an ve 

• Advanced user mode 



intellisoft: 



INTenNATlOPJAL 

51 Digital Drive • P.O. Box 5055 • Novate California 94948 
(415)883-1188 •Telex 470766 • Fax (415)883-2646 



J The 14th International 

TniormationMan^ement 
Exposition &Corf^nce 

Booth No. 249 



Corn'" 9 



so on! 



BOOKMARK add-on utility for 
extended and expanded RAM 
applications. 

BOOKMARK for Novell Network 
workstations 



■HH^i|||||llfff«sssas^^^i Boot" '""• — -» » 

.mhRTHEAST COMPUTER FAIRE 

The 10th N ORJ H £* a ' 
The World Trade Center ^ Pier Five 

^ M iS r, W - Booth No. 436 
Boston, MA uci. 

■'87 



LETTERS 



12 BYTE- OCTOBER 1987 



Circle 132 on Reader Service Card 



way, and we are very pleased with the 
range of new products. 

I draw this to your attention because we 
rely on your publication to be thorough, 
and to discover the "sleepers" for us. If 
we relied on Mr. Holmes's article while 
shopping for a microcomputer-based 
typesetter, we would have missed Page 
Planner, and that would have been a 
shame. 

For many (if not most) applications, 
Page Planner can match Magnatype fea- 
ture for feature— that is, in every way ex- 
cept price. With certain subroutines 
Magnatype is vastly superior, of course; 
with others, such as the Universal Con- 
version, Magnatype remains in the Stone 
Age in comparison. But again, Page 
Planner costs significantly less. 

Paul Davies 
Oakville, Ontario, Canada 

Uniform vs. Nonuniform 
Distribution 

I found "Building a Random-Number 
Generator" by Brian Wichmann and David 
Hill (March) interesting and useful. How- 
ever, one of the statements in the article is 
confusing. The authors write, "It is clear 
that if xl and x2 are independent and uni- 
formly distributed, then the combination 
of x 1 and x2 is also uniformly distributed 
over the same range of values. " 

You can refer to one of numerous text- 
books devoted to the subject— for in- 
stance, Probability, Random Variables, 
and Stochastic Processes by Athanasios 
Papoulis (McGraw-Hill, 1965)— to be 
convinced that the authors' claim is not 
true. One of the fundamental properties 
of two random variables states that their 
combination (i.e., their sum) has its 
probability density function in the form 
of the convolution of the primary proba- 
bility density functions. In the referred 
case, for^l and*2 uniformly distributed 
over the range (0,1), the combination 
x\+xl will be nonuniformly distributed 
(triangle-shaped) over the range (0,2). 

Roman A. Dyba 
Rome, Italy 

A Powerful Idea 

Bill Gates's article, "Beyond Macro Pro- 
cessing," in the Summer Applications 
Software Today issue of BYTE, calls for 
a common application protocol that 
would provide a programmatic interface 
to the functions of multiple applications, 
to supplement the user interfaces for 
these functions. This would permit the 
creation of useful macro programs that 
combine and integrate the functions of 
several applications, using a standard 
macro language. 

This is a powerful idea, and it is en- 

continued 

Circle 292 on Reader Service Card — ► 



The A*Star 






MEGAHERTZ 80286 



THE A* STAR'S CPU PERFORMANCE 
IS SUBSTANTIALLY ABOVE THAT 
OF THE IBM PS/2 MODEL 60." 

■INFOWORLD 



■III! 






*"■«££ 



M 



A^.* 



# 



For about $5300, you could own an IBM PS/2 Model 60. But for as little as $1100, you 

could own a Wells American A*Star®that can outperform it. Of course, for nearly the same 

money as an A*Star, you could also own any number of Asian built no-name clones. 

But then you wouldn't be getting the exclusive ownership advantages that only 

the A*Star offers. Advantages like an 80286 CPU that runs the new MS OS/2 operating 

system and can also run at 6, 8, 10, 12, 14 and now... 16 MHz! And you wouldn't be 

getting schematics. (Ours are free!) Or GE/RCA on-site maintenance. Or a no questions 

asked money-back guarantee. Oh, and there's one more little item you wouldn't get... 

peace of mind. Wells American has been making microcomputers longer than IBM! 

In fact, we've probably been making microcomputers longer than anybodyl 

But hey, who are we kidding? Not everyone cares about quality, reputation, support or 
serviceability. That's why there are mail-order houses. And, as hard as it is to believe, not 

everyone cares about money or performance. Maybe that's why there's IBM (and 

Compaq® .and all the others). But, for computer users who do care, there is, fortunately, 

a vendor who also cares... Wells American. And, we'd like to prove it to you. Call us with 

the page number of this ad. It's worth a big discount on your next A* Star computer system. 

- Call today. 803/796-7800. This offer is limited. 



<®> Wells American, 



Corporate Headquarters: 3243 Sunset Boulevard • West Columbia, South Carolina 29169 • 803/796-7800 • TWX 510-601-2645 



IBM, OS/2 and PS/2 are trademarks of International Business Machines Corporation 



C PROGRAMMER! 



10 Important Reasons 

to Use dbj/lSTA for 

File Management 



1. db_VISTA is written in C. 

2. It's fast, combining B-tree indexing 
with "network" or direct "set" rela- 
tionships between records. 

3. It's flexible. Use db_VISTA as a file 
manager or a complex database; 
single-user PC to multi-user VAX 
with millions of records. Upgrade 
easily with full compatibility! 

4. It's portable. MS-DOS, UNIX, VMS 
... see list below. 

5. It uses space efficiently. Non-RAM 
resident; only operative functions 
are in your run-time program. 

And there's more . . . 

6. Royalty-free run-time. 

7. Complete source code available. 

8. SQI^based db_QUERY! 

Add fast, C-linkable db_QUERY for 
ad-hoc queries and reports. Build an 
end-user interface; provide a rela- 
tional view of the database. 

9. FREE tech support hotline! 

60 days free; for product or applica- 
tion development help. Extended 
support, consulting, training classes 
— all available. 
10. 30 Day Money-Back Guarantee. 
Full refund if not completely 
satisfied. 

That's just the beginning! 
Want more details? Call today! 

Order Now. It's easy — simply call toll- 
free. We'll answer your technical ques- 
tions and get you started . . . fast 
delivery. 



Call Toil-Free Today! 

1 (800) db-RAIMA 

(that's 1-800-327-2462) 
- OR Call 1-206-828-4636 



LETTERS 



dbJ/ISTA 



Royalty Free 
Prices 



Object w/Source 

Single-User $ 195 $ 495 

Multi-User $ 495 $ 990 

VAX Multi-User $ 990 $1,980 

db__ QUERY prices are the same as above 









VISA 



» Operating systems: MS-DOS, UNIX, 
XENIX, ULTRIX, VMS; more . . . 

* Compilers: Microsoft, Lattice, IBM, 
Computer Innovations, Aztec, Turbo C, 
UNIX, XENIX; more to come . . . 
also works with most C libraries! 

\a RAIMA™ 

LAl CORPORATION ^ 

3055 - 112th N.E., Bellevue, WA 98004 USA r 
(206) 828-4636 Telex: 6503018237 MCI UW CD 



couraging to see the head of a major soft- 
ware company advocate it in such con- 
vincing detail. But it is not an entirely 
new idea (in the mainframe and minicom- 
puter arenas, IBM's Rexx and Exec2 lan- 
guages and the various Unix shell lan- 
guages are macro languages in Gates's 
sense), and it has some clear limitations. 

Application commands sometimes 
have many relevant outcomes, each of 
which must be dealt with in the macro 
program. Too often, though, sophisti- 
cated pattern-matching is needed to dis- 
tinguish these outcomes. This greatly 
complicates the task of writing nontrivial 
macro programs. Moreover, changes to 
the underlying applications can change 
both the outcomes and their distinguish- 
ing patterns, thus invalidating existing 
macro programs. 

It is possible to overcome these prob- 
lems by designing and maintaining appli- 
cation commands as if they were pro- 
gramming language statements or library 
subroutines, but this may be asking too 
much of application developers. 

Chris Shaw 
Manhattan Beach, CA 

Contouring Comments 

Paul D. Bourke 's article and accompany- 
ing software code, "A Contouring Sub- 
routine" (June), is a fine example of the 
kind of material that I believe is worthy of 
being published in BYTE. Bourke writes 
with clarity, and his descriptions are pre- 
cise; this applies to both text and 
software. 

About 12 years ago, as part of a com- 
mercial venture, I wrote a subroutine 
similar to Bourke 's C0NREC, and I agree 
with him that other, commercially avail- 
able contouring subroutines are needless- 
ly complex and computationally inten- 
sive. In my own subroutine, the common 
apex of the triangles whose planes inter- 
sect (or do not intersect) the plane of a 
specified contour level are the "centers of 
gravity" of groups of two, three, or four 
contiguous points. The professional ge- 
ographer who reviewed my work object- 
ed that it was too simple a scheme to be of 
any real value. 

I am less enthusiastic about William G. 
Hood's article, "Polynomial Curve Fit- 
ter," in the same issue. The article as- 
sumes that the user knows virtually nothing 
about the mathematical bases on which the 
curve-fitting algorithm is built, and this is 
glossed over in the article by superficial de- 
scriptions of the mathematics involved. 
This is an increasingly common treatment 
of programs using the techniques of nu- 
merical analysis, and there have been sev- 
eral descriptions in the literature of indis- 
criminate use of such routines as if they 
were universal tools. 



Hood asserts that "the program 
. . . uses the orthogonal polynomial 
method," as if there were only one such 
method and as if there were only one 
form of orthogonal polynomial. In fact, 
with all weight factors equal to 1 , Hood's 
scheme is nothing more than ordinary 
polynomial regression. In addition, there 
are numerous orthogonal polynomials, 
and these include the Fourier series 
(touched on lightly in Hood's article), 
which has the unique property of being 
dually orthogonal. 

Hood also errs in limiting his descrip- 
tion of Horner's rule for evaluating poly- 
nomials. The procedure requires n multi- 
plications plus n additions for a total of In 
operations. For values of n < 4, 
Horner's rule requires the minimum pos- 
sible number of arithmetic operations, 
but for polynomials of higher degree, 
there are schemes that require fewer than 
In operations. 

I suppose it is natural that we "old fo- 
gies" of the precomputer generation 
should note that Horner's rule did not 
magically appear in the BASIC language, 
and that there are implementations of the 
rule other than the one presented in 
Hood's article. Using the more accepted 
form of Hood's polynomial; that is, 

p(x)=c +c 1 x + c 2 x 2 + . . . c n x n , 

Horner's rule requires the forming of the 
nested arrangement, 

p(x)=c +x(ci+x(c 1 + ... 
x(c n -! +xc n ) . . . )) 

If the order of the terms on the right- 
hand side is reversed, the nested form can 
be more readily understood, and for a poly- 
nomial of degree 5 (for example) we get 

P(x) = ((((cs-x + c 4 )x + c 3 ) x+ c 2 )x 
+ c t )x+c 

It should also be emphasized that the 
range of validity of the regressed polyno- 
mial expression is limited to the range of 
the empirical data; in Hood's example, 
0.5<x<15.5. 

Clive J. Grant 
Chichester, NH 

Accurate Algorithm 

I would like to offer some comments on 
Paul D. Bourke's interesting article, "A 
Contouring Subroutine," (June). The 
main strength of the algorithm Bourke 
presents (other than sheer simplicity) is 
its high degree of accuracy, especially in 
those cases where the data points are 
chosen judiciously. It will not produce 
intersecting contour lines, an anomoly 

continued 



14 BYTE- OCTOBER 1987 




aggravated 

confused 

perturbed 

overwhe lned 

defeated 

stupid 

annoyed 

irate 

foiled 



Don't hold back now 

How do you really feel about 

working with columns? 



Columns. The black hole of 
word processing technology. 

Try to move a column with 
your present word processor. 
Good luck. Try to add or delete 
a column. Sorry. 

Lotus Manuscript™ can 
change how you feel about 
working with columns. Really. 
Because Lotus Manuscript 
thinks vertically as well as 
horizontally. 

Consider this. On ordinary 
word processors, when you 
create a table, or put any 
information in columns, you 
work horizontally, using tabs 
to create a vertical effect. 

With our sophisticated table editor, 
you can actually create each column 
independent of one another. You can 




Inserting a cohnrm with 
yoi tr i rresenl wot \lp rocessa / 
would he a true test, of 
patience, rigid? 




It's simple with Manuscript 
because Manuscript 
tkhtks verticattif as well as 
horizontally. 



change information, even 
delete , move or insert col- 
umns , without the usual litany 
of expletives deleted. 

And it's not just limited to 
columns you create yourself. 
Take tables from Lotus® 1-2-3® 
or Symphony,® for instance. 
When you import that tabu- 
lar information into Lotus 
Manuscript, it recognizes it as 
columns, so you can change, 
delete, move, insert or format 
this material as well. You can 
even dress up your tables 
with a variety of boxes and 
borders. 

As you can see, Lotus Manu- 
script is not just another word processor. 
It's a complete document creation sys- 
tem, with more impressive features than 



we could ever go into here. 

Lotus Manuscript is designed to work 
on most IBM® PCs and compatibles * 
Its familiar 1-2-3 interface makes it 
easy to use. And our Manuscript eval- 
uation kit makes it easy to try. For 
$10.00, you'll get a presentation disk, 
working software, and a tutorial man- 
ual, lb get your evaluation kit, call 
1 -800-345- 1043, ask for lot YO- 1450. 
Or, for more infor- 
mation, see your 
Authorized Lotus 
Dealer, or write 
Lotus Development 
Corp., 90 Annex, 
Atlanta. GA 
30390-03070. 

Lotus Manuscript 




© 1987 Lotus Development Corporation. Lotus, 1 -2-3, and Symphony arc registered trademarks and Lotus Manuscript is a trademark if Lotus Development. Corporation. 
IBM is a registered trademark oflnteniational business Machines. "Manuscript and Manuscript Evaluation Kit require 512Kanda hard disk. 

OCTOBER 1987 -BYTE 15 



LETTERS 



often allowed by more "advanced" con- 
touring packages in which each contour is 
smoothed independently of its neighbors. 
It also produces a more straightforward 
representation of edge discontinuities. 

The problem of the lack of z- value in- 
formation is actually worse than the arti- 
cle implies, however, as it is not possible 
to determine direction of slope or to dis- 
tinguish between bumps and dents. In ad- 
dition to the visual clues mentioned 
(color, line style, and contour labeling), I 
have found that viewpoints other than the 
vertical provide a depth clue readily ap- 
parent to most eyes, even without hidden- 
line removal. 

A weakness not mentioned in the arti- 
cle is that contours drawn within one grid 
square are not influenced by nearby 
trends. For example, the algorithm will 
produce the same (incorrect) saddle 
shape for a grid element crossed by a 
ridge along one diagonal or by a valley 
along the other diagonal. This problem 
disappears when data points are spaced 
closely enough to minimize the out-of- 
plane warping of each grid element. 

The CONREC subroutine operates on a 
grid formed by the intersection, at right 
angles, of two sets of irregularly spaced 
parallel lines. 



Of course, quadrilaterals of extremely 
irregular shape should probably be han- 
dled more generally, perhaps by calculat- 
ing the z value of the central point as an 
average weighted by the relative lengths 
of the diagonals. In addition, where the 
central point falls outside of the element, 
the shorter diagonal should be used to di- 
vide the quadrilateral into just two 
triangles. 

In any case, it seems futile to resolve 
the results calculated on a typical finite 
element mesh, in which element sizes 
often vary widely, onto a regularly 
spaced grid for the sole purpose of pro- 
ducing a contour plot. In addition, con- 
tour-smoothing algorithms are based on 
interpolation techniques that bear no rela- 
tionship to the laws actually governing the 
behavior of the structure being analyzed. 

While the mathematics of the algo- 
rithm itself are quite simple, I found Mr. 
Bourke's implementation unnecessarily 
complicated. Each triangle is classified 
according to the relative positions of each 
of its vertices below, coincident with, or 
above each contour plane. A simpler ap- 
proach uses these three rules: 

Rule 1. If the number of contour planes 
below each vertex of a triangle is the 



same, the triangle is not intersected by 
any of them. 

Rule 2. If a triangle is intersected by any 
contour planes, then at least one of its 
sides will be intersected by each of the re- 
sulting contour lines, and this side will be 
one that connects vertices having the 
minimum and maximum z coordinates. 
Rule 3. Each contour line will also inter- 
sect one of the two remaining sides, de- 
pending on whether its z coordinate is 
less than that of the third vertex. 

Note that if two vertices have an identi- 
cal z coordinate, then either of the two 
sides qualifying under Rule 2 can be 
chosen with no adverse results. Coding 
this approach is further simplified by the 
fact that only two cases are considered, 
and if contours are processed in order of z 
coordinate, all of one type (i.e., below 
the third vertex) are calculated before any 
of the other type. Mr. Bourke's various 
triangle classification schemes are han- 
dled properly, but without having to con- 
sider them as special cases: 

1. All vertices below or above a given 
contour plane: This plane is not consid- 
ered with respect to this triangle (rule 1) . 

continued 




"40 EXACT TERMINAL 
EMULATIONS AND COMPLETE 
COMMUNICATIONS" 



• Choose any one of 40 Terminal 
Emulations 

• Transfer Files using 9 Transfer 
Protocols 

• Easy to use for the Novice, Powerful 
enough for the Expert 

• Installs in minutes 

• Supports IBM® PC, XT, AT, and PS/2 

. Introductory price expires 11/1/87 

CALL 800/548-9777 

sofihonics 

303/593-9540 TELEX 450236 



16 BYTE- OCTOBER 1987 



Circle 252 on Reader Service Card 



: :m-;C^ ' "~ : ' ; :. '< ' 


' 






J* 




^^"~ : m y y r ~ 1? *^<s^ ; 


* 




^^ 




' x CIT IZ FN '• " > 


V 



\ 





:'r^-^o 





You're looking.at all the printer you'll ever need. For any 
appli(^oriyoti ; Uev^Hsive, V •;.-,' ;';..■ 

* The Qfeen TM Tribute™ 22^;^24 : pin^tmatrix section of- 
^eririg superb word processmg^ 

cessing applications. Ajt a price you'll find surprisingly affordable, , i; 
TfaeTribute 224 delivers true letter-quafey printing at:66 ; J 
cpsy cor respondence-ouality at 132 cps ; and drafts at 200 cps '% . 
rN(at 10 cpi). In standard or prdpoftionat.spad^ 
v TG cards' enable fonts ^demuIations ; to be easily expanded. 
; ■ % 
feed ; variable-width tractor and automatic paper loading sys-. • 
«|em r Both serial and paraRelibiterfacesfb^ 
compatibility Front panel access to most print functions; And 
compatibility with virtually every major ; : sDJ^are,pac|sage'/- 

i|^*J^^^dl^ backed by our nationwide service, excel-; v - 
lent documentation^ and 12-month warranty \ < ; 

For more information call 1-800-5564234, Extension 34. 
I In G^rnia ; call 1- 800 -441-2345 ; Extension 34; . 
The Citizen Tribute 224. • -^ 
; There is rio; higher tribute to 
• 24-pin printing, r I- ■ .y •: 

h ■ . cidzen iS^dTrib^ 2$™ttedemvk"ot e Printers that run like clockwork. . ■ 

', Citizen \wtchC6. ; Ltd. ' • „ ' -.' V :. 

Circle 50 on Reader Service Card ,v* .; 



^ciTiiii 






This ad is for people who 
don't know where to find Smalltalk 
Or why. 

Today the single most important emerging software technology 
is OOPS, object-oriented programming. It's destined to dramatically 
change the way you use your personal computer. 
You'll find it doing things you never expected. 
And by people you never suspected. 



In an emergency room in 
Vancouver, it's saving lives 
through animation. 

What if a medical textbook could come to life? What 
if it couldshow the effects emergency treatment might 
have on patients? And do it all through moving pic- 
tures? These thoughts led Fblkstone Design, Edge 
Training & Consulting, and Inform Software in 
Vancouver, B.C., to create the first animated, inter- 
active textbook for emergency room technicians and 
in-training paramedics. They found Smalltalk/ V 
could easily facilitate a combination of text, color 
graphics and animation to illustrate various 
physical processes and the results of 
medical intervention. 



At the UCLA Medical 
Center, it sees 
patients before the 
doctor does. 

Mike McCoy, M.D., at the UCLA Medical 
Center, found that he could. easily interface 
Smalltalk /V with dBASEUI and Fbst- 
Script His application, now in use at 
the Clinic, turns a functional status 
questionnaire on each new patient into 
a laser printed, advisary analysis for 
the doctor to review prior to seeing the 
patient. A program like this would 
normally take a specialist months to 
produce. It took Dr. McCoy less than 
100 hours with 
Smalltalk/V 



Uot%M^l 



'{wwftVft 



Ywswb' 



tew 



\es%w 



/ 







r \«A»\» 






WVl 



tifclS 



w 




fci« 






«rw 



\Vfi 



;fi a\es. 



tod* 



are 












rP 



is 



iHo*|- 



*. 



Kt«3&*5» 



-_ » 




!:« '& 



ftM 



w 







It's working on 
Florida's freeways. 

Running on IBM's new PS/2, a Smalltalk/V application 
developed by Greiner Engineerings Mike Rice, lets high- 
way engineers create highly sophisticated graphic analyses 
of any proposed reconstruction So now, instead of having 
to deal with a gridlock of Federal and State regulations, 
engineering specifications and endless calculations, an 
engineer can quickly explore alternative design strategies 
using a mouse, windows and VGA color graphics. 



Smalltalk/V requires DOS and 512K RAM on IBM PC/AT/PS or compatibles and a CGA, 
E GA, Toshiba T31 00. Hercules, or AT&T 6300 graphic controller. A Microsoft or compatible 
mou se is recommended. Not copy protected. dB ASElU, PostScript and PS/2 are trademarks of 
AshtonTate, Adobe Systems and International Business Machines Corporation respectively. 



»#;S* 



It's tracking 
white-tail deer on 
the Barrier Islands 
of Georgia. 

Dr. Lee Graham, a National Park Service 
ecologist chose Smalltalk/ V to write an appli- 
cation to help manage the white-tail deer popu- 
lation on the Barrier Islands of Georgia. Dr. Graham 
found that Smalltalk/ V, with its visual interface and 
class structure, is a perfect tool to graphically simulate 
the complex, ecological interactions of natural systems. 



You can find it in space. 

On a project commissioned by NASA, Dr. Christine Mitchell 
at the Georgia Institute of Technology chose to use 
Smalltalk/ V as an integral part of a new man-machine 
interface. The application, written in Smalltalk, continually 
monitors the commands of the Satellite Network Operator, 
the state-of-the-network and the overall mission plans. 
To NASA, Smalltalk/V means 
real-time. Real OOPS. Real results. 




5pjj 

Create Document 
Reaove Docunent 

Renane Document 
Sort Index 



WCUWWT MOWS 






It's making headlines in Arizona. 

When Digital Composition Systems sat down to build an 
electronic typesetting system, they had three major requirements. 
It had to have the most advanced user interface. It had to be fast. 
And, it had to be able to turn untrained personnel into high quality 
typographers. Of all the languages in the world, they chose Small- 
talk/V. The result is the Signature Series, recognized and reviewed 
by The Seybold Report. It's now marketed by Digital Composition 
Systems and one of the largest digital typesetting firms in the 
world, Varityper AM International. 



What thousands of people 
have found is OOPS. 

Object-Oriented Programming (OOPS) 
is programming by defining objects, 
their inter-relationships and their 
behavior. Objects can represent both 
real-world entities like people, places, 
or things. They can also represent 
useful abstractions such as stacks, 
sets and rectangles. 

OOPS models the 
way you think and the 
way things really are. It 
lets you solve problems 
by breaking them down 
into easily handled 
sub-problems and their 
inter-relationships. The 
solutions you come up 
with can be re-used to 
solve new problems. 
Ultimately OOPS makes 
programming a simple, 
logical process of building on the 
work of others. 

Why thousands more 
are finding their way to 
Smalltalk/V. 

First of all, Smalltalk/V makes OOPS 
easy. 

It's also fast. In fact, it's the fastest 
OOPS programming available on a PC. 

Circle 81 on Reader Service Card 




And it's easy to learn. It comes 
complete with a tutorial that's the 
best introduction to OOPS available. 

Smalltalk/V also has a few other 
features worth noting. Like a user- 
extendable, open ended environment. 
Source code with browser windows 
for easy access and modification. 
A huge toolkit of classes and objects 
for building a variety of applications. 
A sophisticated source-level debugger. 
Object-oriented Prolog integrated 
with the Smalltalk environment. And 
bit-mapped graphics with bit and 
form editors, just to name a few. 

Then, there's its unbelievable 
price of only $99.95. (Optional appli- 
cation packs at $49.95 include 
Communications, EGA/VGA Color 
and Goodies.) 

And it has a 60 day money-back 
guarantee. 

With all this to offer, it probably 
won't come as a surprise to you 
that more people are solving more 
problems with Smalltalk/V than 
any other OOPS. 

See your nearest dealer 
today for your own Small- 
talk/V Or, order it direct 
with MasterCard or Visa 
at (800) 922-8255. 



Or, write to Digitalk, Inc., 9841 Airport 
Blvd., Los Angeles, CA 90045. Then 
discover all the great things you can 
do with your PC and Smalltalk/V 



Smalltalk V 



digitalk inc. 



^^Att 



*Now that you've found us, write us. Tell us some of the 
great things you're doing with Smalltalk/ V. "You could be in our next ad. 




LETTERS 



2. All vertices coincident with the given 
contour plane: No contours cross this tri- 
angle (rule 1). 

3. Vertex a coincident with the contour 
plane, with b and c both above or both 
below: A zero-length line is drawn at a. 

4. Vertices a and b coincident with the 
contour plane: A line is drawn beside ab. 

5 . Vertex a below the contour plane, and 
vertices b and c above (or the reverse): A 
line is drawn connecting sides ab and ac. 

6. Vertex a above the contour plane, b 
below, and c coincident: A line is drawn 
from a point on line ab to vertex c (which 
can be assumed to belong either to side ac 
or to side be with no change in result). 

Al Dunbar 
Edmonton, Alberta, Canada 

Evaluating Benchmarks 

In "The New Generation: High-Tech 
Horsepower" (July), a benchmark com- 
parison between the iAPX386 and the 
MC68020, you took pains to explain that 
benchmarks, especially those written in 
high-level code and that run on off-the- 
shelf machines, present a can-of- worms 
problem and are likely to be misleading in 
that they test the compiler and the whole sys- 
tem perhaps more than the central processor 
itself. Without quoting figures from my own 



experimentation and analysis, I would like to 
point out that the results you presented at the 
end of the article are indeed misleading, just 
as you hint they may be. 

The choice of systems on which to per- 
form the tests is fair to neither CPU, and 
disproportionately so. A Sun-3 system 
and Sun's compiler would make vastly 
better use of the 68020; systems and com- 
pilers yet to be developed using the 80386 
would do more justice to it. 

The only way to obtain a valid compar- 
ison between anything is to isolate the ob- 
jects in question from all other factors, 
removing unrelated variables from the 
equation. To realistically compare the 
80386 to the 68020, experts for each sys- 
tem would have to hand-optimize the 
code for each benchmark, then run the 
test on a system designed to perform at 
the maximum possible speed for each 
chip, under the stated conditions (i.e., 
floating-point processor or not, memory 
management or not, and so forth), and 
run each test to its completion rather than 
extrapolating from a subsample. 

To date, all published "benchmark" 
tests I have seen concerning these two 
CPU chips, yours included, fail to isolate 
the variables under test from the noise, 
and therefore they say little or nothing 



about the actual performance of the 
CPUs in question. 

IanH.Merritt 
Oxnard, CA 

The July article entitled "The New Gen- 
eration: High-Tech Horsepower" gives a 
very misleading impression of floating- 
point performance on the Macintosh. 

The confusion arises because you have 
naively used double variables in your 
tests; .the more accurate 80-bit extended 
format is the natural format for the SANE 
floating-point package. I believe double 
and single variables are supported only to 
enable data transfer to other computers 
that use these formats. All computations 
should be done using extended variables; 
otherwise, the computer spends an enor- 
mous amount of time converting to and 
from different floating-point formats be- 
cause all internal computations are done 
in extended format. 

For example, your Float test in Tom M. 
Leonard Pascal version 2.01 takes 126 sec- 
onds on my humble Mac Plus using ex- 
tended variables in extended precision, 
while it takes an amazing 276 seconds 
using double variables in double precision. 

Using a good C compiler on a Mac SE 

continued 




Transmitted 
Invoice 



Price, Qty, Parti 
Hatched 



Invoir* Stamped 
oded 












-Sgs£- 






^at« a1 



it^ei 






ion 



sW8 



:et \tei 



supP' 



lOtf- 



; roa\ 



rtv 



l0 use ' 








Checks Printed 
& Signed 












__j_ 






1 
T 




1 

i 




Check 
Register 




Open 

Accounts 

Payable 




! (•) 

I 

I 




(e) 


I 

I 

I 

i 

T 




1 ---► 


A/P 
Distribution 



-of 



ca» us * 



20 BYTE- OCTOBER 1987 



eneral 



PATT0N & PATT0N 



Software Corporation 

81 Great Oaks Blvd., San Jose, CA 95119 
1-800/672-3470, ext. 897 Cayfornia 
1-800/538-8157, ext. 897 Outside California 
408/629-5044 International 
*plus shipping. In California add tax. 



Circle 204 on Reader Service Card 



PRESENTING THE DIFFERENCE BETWEEN 
FAST COMPILING AND FAST PROGRAMMING. 



For compiling speed, 
you can't do better than 
Let's C. But to really 
speed up programming 
you can't do without the 
powerful source level 
debugger, csd 

If you want the 
power, portability and flex- 
ibility of C, start with the 
complete compiler, Let's C. 
For utilities, editor, compil- 
ing speed and fast, dense 
code, Let's C has it all. 

But to get your pro- 
grams up and running you 
need more. Because even the fastest compiler 
can't outrun bugs. You need the revolutionary C 
Source Debugger, csd. 

CUT DEVELOPMENT TIME IN HALF 
WLTEcsd 

csd lets you bypass the time consuming frus- 
trations of debugging-like long dumps and clunky 
assembler. With csd, you actually debug in C. You learn 
faster because you watch your program run in C. You 
finish faster because csd combines the speed of a compiler 
with the interactive advantages of an interpreter. The end 
result? Development time is sliced in half. 




REVIEWERS ARE 
RAVING ABOUT 
LET'S C AND csd. 



LIMITED TIME 

OFFER 

FREE csd 

WITH LET'S C! 



LET'S C AND csd FEATURES 



■^fe 



Let's C: 

• Now compiles twice as fast 

• Integrated edit-compile cycle: edi- 
tor automatically points 

to errors 

• Includes both small and large 
memory model 

• Integrated environment or 
command line interface 

• 8087 sensing and support 

• Documentation features new 
lexicon format 

• MS-DOS object compatible 

• New make utility 

• Fast compact code plus register 
variables 

• Full Kernighan & Ritchie C and 
extensions 

• Full UNIX compatibility and 
complete libraries 

• Many powerful utilities including 
make, assembler, archiver, cc one- 
step compiling, egrep, pr. tail, wc 

• MicroEMACS full screen editor 
with source included 

• Supported by dozens of third 
party libraries 



• For the IBM-PC and Compatibles 

• Not copy protected 

Sieve Benchmark 

(Compile time in seconds) 

Let's C: 2.8 (On 512K 6Mhz IBM-AT) 

Turbo C: 3.89 (As advertised) 

csd: 

• Large and small memory model 

• Debug in C source code, not 
assembler 

• Monitor variables while 
tracing program 

• Does not change program speed 
or size 

• Provides separate source, eval- 
uation, program and history 
windows 

• On-line help screens 

• Can interactively evaluate any 
C expression 

• Can execute any C function in 
your program 

• Trace back function 

• Ability to set trace points 

• Not copy protected 



Wt 



"Let's C is an inex- 
pensive, high-quality 
programming package. . . 
with all the tools you will 
need to create applications.' 1 
-William G. Wong, BYTE, 
August 1986. 

'The performance and 
documentation of the $75 
Let's C compiler rival those 
of C compilers for the PC 
currently being sold for 

$500. . . highly recommended. . . " 

-Marty Franz, PC TECH JOURNAL, August 1986. 

"csd is close to the ideal debugging environ- 
ment. . . a definite aid to learning C and an 
indispensable tool for program development: " 
-William G. Wong, BYTE, August 1986. 

'This is a powerful and sophisticated debugger built on a 
well-designed, 'serious' compiler." 
-Jonathon Sachs, Micro/Systems Journal, April, 1986 

START TO FINISH, THERE'S NO 
BETTER ENVIRONMENT, 

Get started with the right C compiler and you'll have 
everything you need for development-including source 
level debugging. On top of it all, Let's C and csd are today's 
best values in professional C programming tools. And 
most reliable: Mark Williams C compilers have been sold 
with DEC, Intel and Wang computers since 1981. 

60 DAY MONEY BACK GUARANTEE 

Mark Williams gives you a full 60 days to find out just 
how good Let's C and csd really are-or your money back. 

So if you want more than a fast compiler-if you want 
your programs up and running fast, ask for Let's C and 
csd. You'll find them at your software dealer's, in the soft- 
ware department of your favorite bookstore, through the 
Express Program at over 5500 Radio Shacks or you can 
order nowby calling 1-800-MWC-1700 * 

* In Illinois call. 1-312-472-6659. 

Mark 

Williams 

Company 

1430 West Wrightwood, Chicago, Illinois 60614 

© 1987 Mark Williams Company 

Let's C is a registered trademark of the Mark Williams Company. 

UNIX is a trademark of Bell Ubs. 




MARK WILLIAMS LET'S C AND csd.0NLY $75 EACH. 



Circle 162 on Reader Service Card 



OCTOBER 1987 -BYTE 21 



LETTERS 



with extended variables, you will com- 
fortably out-perform an IBM PC AT 
without floating-point unit and be more 
accurate at the same time. 

I hope you will publish the list of 
benchmark results again, but this time 
using extended variables on the Mac. I do 
not believe it is performing any trick 
against the spirit of benchmarking to arti- 
ficially boost the performance of the 
Mac. After all, you are requiring greater 
accuracy and simply using the format it 
was designed for, and using double vari- 
ables artificially degrades its perfor- 



mance. Also, I suspect that floating- 
point software for the other computers is 
designed for double variables. 

K. D. Watling 
Swansea, Wales 

I would like to make two suggestions that 
would enhance the value of future 32-bit 
benchmarks. The first regards 32-bit ver- 
sus 16-bit benchmarks; the second, regis- 
ter variables. 

I believe that the benchmarks for 32-bit 
processors should be written primarily to 
test 32-bit operations. Applied to "The 



TM 



MIRRORH 



THE BETTER CROSSTALK 

UPGRADE WITH THE 
MONEY-BACK GUARANTEE! 



60-DAYS RISK FREE 

Don'tlettheir "New Flagship" 
leave you at the dock. Try 
MIRROR II for 60-Days, RISK 
FREE! Why sacrifice 
Crosstalk XVI compatibility 
with an expensive voyage on 
the "New Flagship" and no 
guarantee of Free Passage if 
you don't like the trip. 
To order call Toll Free: 1 -800- 
634-8670 (In Florida call: 
(904) 878-8564) 

$69.95 ESS 

Shipping/Handling $5.00 
(COD add $3.00) 
Overseas Orders $18.00 
Florida Residents add 
5% Sales Tax 

MIRROR IL 



Compare Before You Buy or Upgrade! 


$245.00 

Crosstalk Mk. 4 


$195.00 

Crosstalk XVI 


$69.95 

MIRROR 1 1 


Crosstalk XVI 
Compatibility 


B 




a 


Features 


D 




O 




c 




Background 
Communications 


— 


— 


D 


Integrated Text 

Editor 


D 


— 


D 


Auto-Learn Mode 


D 


— 


a 


Site Licensing 


— 


— 


D 


60-Day Money- 
Back Guarantee 


— 


— 


D 



Not Supported 



better 



LEGEND 




SOFTKLONE 



336 Office Plaza Drive 
Tallahassee, Florida 32301 
(904) 878-8564 
Telex: 6714280 KLON 



Crosstalk. Crosstalk XVI ortd Crosstalk Mk 4 ore registered trademarks ot Digital Commun.ci 
IraaemarksotSofiKbne Distributing Corporation MlRROS lli<, OVI ' ' 
When ordering, please specify 3V or 5><" disk formal 



New Generation: High-Tech Horse- 
power" article, the Fibonacci test (listing 
1) should generate the largest Fibonacci 
number that will fit in 32 bits (or one big- 
ger than 16 bits). The Sieve of Eratosthe- 
nes (listing 3) should find all primes up to 
at least 100,000 and use a flag array well 
in excess of 64K bytes. The Quicksort 
test (listing 4) should sort at least 64,000 
numbers. 

These changes are important when 
benchmarking the 80386 because it per- 
forms differently in 16- and 32-bit 
modes; only with suitable benchmarks 
can we be sure that the results are repre- 
sentative of 32-bit applications. 

The changes I have suggested are also 
important when comparing the 80286 
and the 68000 with the 80386 and the 
68020. Sixteen-bit processors (80286) 
will run the benchmark slowly or not at 
all, while 32-bit processors (68020, 
80386, and 68000) will show their true 
performance. 

About register variables: When bench- 
marking its processors, Motorola would 
like you to declare all character, integer, 
long, and pointer variables as register 
variables, since registers are a major fea- 
ture of Motorola's architecture. In con- 
trast, Intel would like you to avoid all reg- 
ister variables when benchmarking, 
because registers are not a major feature 
of Intel 's architecture. 

Rather than yield to either pressure 
group, I believe that you should perform 
the benchmarks both with and without 
register variables, publish the values, and 
let the readers decide whether they will 
use register variables in their application 
programs. 

E. Stanbury 
Lakemba, Australia 

Applauding Ada 

It is unfortunate that Joel West's book re- 
view of The World of Programming Lan- 
guages (June) was filled with anti-Ada 
propaganda. Ada is a registered trade- 
mark of the U.S. Government (Ada Joint 
Program Office). Mr. West applauds 
Modula-2 for having extensible data 
types, yet he fails to mention that Ada 
does, too. He criticizes Ada for not hav- 
ing spawned another language. That is a 
strength, not a weakness. Ada is com- 
plete; substitutions are not needed. 

Mr. West did say nice things about Pas- 
cal. But he failed to say that Ada is based 
on Pascal. He claims that Ada is a "huge 
language." Not true. It has only 63 re- 
served words. COBOL, the world's most 
popular language, has almost 500. 

Mr. West was upset that C was not 
covered more thoroughly in the book. 
That is because C is nothing more than 

continued 



22 BYTE- OCTOBER 1987 



Circle 251 on Reader Service Card 







INTRODUCING FAST FORWARD: 
NOW ANY SOFTWARE CAN RUN UP TO ID TIMES FASTER. 



No more doodling while your database 
goes digging. Or lollygagging while your 
spreadsheet loads. Or taking five while your 
word processing program takes forever 

With Fast Forward, any software runs 2 to 
10 times faster 

CAN SOFTWARE REALLY 
DO THAT TO SOFTWARE? 

Fast Forward can. Normally, your com- 
puter is constantly going to your disk and 
wading through massive amounts of data. 

But with Fast Forward, data is retained in 
your computer's internal memory. Which is 
incredibly fast. Much faster than hard disks. 
Hundreds of times faster than floppies. 

FAST FORWARD PERFORMANCE 

d With Fast Forward I Without Fast Forward 



dBase 111 

3.15 minutes 
29.6 minutes 

WordStar 3.3 

12 seconds 
40 seconds 

Lotus 1-2-3 

21 seconds 
51 seconds 



a 



(Test: Add and delete 225 records) 



(Test: Move cursor to end of 46 page document) 



(Test: Load spreadsheet, 8 columns by 962 rows) 



All tests done on 640K IBM PC, 20 megabyte hard disk and 
floppy drive. 320K RAM allocated to Fast Forward. 

Circle 163 on Reader Service Card 



THE MORE YOU USE IT, 
THE FASTER YOU GO. 



Once installed, Fast Forward works invisi- 
bly. As you use data, it's automatically stored 
in your computer's memory-and instantly 
available the next time you need it. Programs 
requiring frequent disk access (like dBase III) 
will show amazing improvements. And adding 
extended memory gives Fast Forward more 
room to work. So software runs even faster 

PERFORMANCE HAS 
A NEW PRICE: $69.95. 

You can buy a faster computer Or an 
expensive accelerator board. But if you're ready 
to turn on the speed without turning over a bun- 
dle of money, ask for Fast Forward. It's from 
the Mark Williams Company, makers of quality 
software tools since 1976. And it's available at 
your software dealer In the software depart- 
ment of your favorite bookstore. Or by calling 
1-800-MWC-1700.* 
And hurry. Because ■ 

it'll be going fast WF&Vi money-baoc 

*t in- • (i^A^r^cn ^i*F<A guarantee 

*In Illinois: (312) 472-6659 

Mark 

Williams 

Company 

1430 West Wrightwood 
Chicago, Illinois 60614 

Fast Forward runs on IBM-PCs and 
100% compatibles. Not copy protected. 
© 1987, Mark Williams Company 





OCTOBER 1987 • B Y T E 23 



LETTERS 



warmed-over PDP-1 1 assembly lan- 
guage. Ada was designed with these over- 
riding concerns: efficiency, program re- 
liability and maintenance, and 
programming as a human activity. I have 
used Ada for several years. I think that it 
is elegant, well-designed, and fun. 

Mark Fowler 
Huntington Beach, CA 

Calculating Pi 

John T. Godfrey's letter (May, page 20) 
describes a very clever algorithm for 
computing pi by means of calculating the 



perimeter of the inscribed/circumb- 
scribed regular polygons of 2 n sides. 
While his version of this algorithm is 
very cleverly formulated, using ratios of 
successive circumferences as it does, the 
basic idea is, as he suspects, not new. In 
fact, it is due to the genius of Archime- 
des, who used it over 2000 years ago to 
obtain estimates of pi correct to three dec- 
imal places. This is doubly remarkable 
since the mathematics of Archimedes' s 
time did not have the algebraic or decimal , 
notation that we now enjoy. 
One of the reasons this algorithm is not 




Fortron 
80386 
Beats the 
Systems 



Fortron provides 
more of the features 
you need! 



2 MB Memory Board 

Intel iSBC 386/MEM 020 Compatible 
Assembled in U.S.A. 




Power Supply m* rg 

Fortron FC5192 = -i.^f' m 

U.L. Listed 

(CSA/UL Model Available) 



Compare Our Standard 
Features 

• Intel iSBC 386 Compatible 

• Standard 2 MB Memory (Expandable 
to 16 MB) 

• 2 x 32 Bit Wide Data Bus 

• Supports 80287 Math Coprocessor 

• Supports 80387 Math Coprocessor 

• On-Board 2 serial/1 parallel port 



Applications 

Compatible with IBM PC/AT™ Ideal for 
CAD/CAE/CAM/CAT workstations, 
network file servers, multi-users 
UNIX/ZENIX. 



Order the complete system or individual 
components. 

Corp. accounts and VARS welcome, too. 




FORTRON 



Keyboard 

Maxi-Switch 101-Key Enhanced 



2380 Qume Dr. Ste. F 
San Jose, CA 95131 
Ph: (408) 432-1191 
TX: 559291 
FX: (408) 432-1303 
Intel iSBC 386 is a registered trademark of Intel Corp 



Hours: Mon.-Fri. 
7a.m.-6 p.m. PST 



used very often is that it neither uses cal- 
culus nor is particularly fast in its conver- 
gence. Therefore, it is not taught in calcu- 
lus courses, nor is it used in research- 
level pi calculations. Perhaps the most 
rapidly converging series for pi is the fol- 
lowing, due to S. Ramanujan: 

L= VfLf (4*) ! (1103+26390k) 
7T 9801 ti ( n! ) 4 



396 4 



At the moment, the most rapidly conver- 
gent method of calculating pi is not by 
series, but by an iterative method using 
Gauss's arithmetic-geometric mean. The 
method is due to J. M. Borwein and 
P. B. Borwein (SIAM Review 26, 1984, 
pages 351-366, and BIT26, 1986, pages 
123-126). A nice discussion can also be 
found in The College Mat hematic Journal 
(May 1987, pages 230-235). 

Mark Bridger 
Boston, MA 

John T. Godfrey's letter on a formula for 
pi (May) is more accurate than the formu- 
la I derived, but it is based on the same 
principle. Mine may be easier to do on a 
hand calculator, however, because only 
one variable is used. 

Starting with a 0, add 2 and take the 
square root. Keep adding 2 and taking the 
square root for the desired number of it- 
erations, but on the last one subtract the 
number from 2. Multiply the result by 2 
to the «th power, where n equals the num- 
ber of iterations. On my Hewlett-Packard 
11C, the answer for « = 8 is within 
0.0007 percent of the true value. For 
n > 8, the answer is less accurate due to 
round-off error. 

Frank J. Wilson 
Mill Valley, CA 



FIXES 



Hidden Flaw 

BIX now contains an article by Peter J. 
Becker called "Writing Interrupt Service 
Routines for the IBM PC in Turbo Pas- 
cal." It corrects one shortcoming in the 
article "Concurrent Programming in 
Turbo Pascal" by Mukkai S. Krishna- 
moorthy and Snorri Agnarsson (April). 
The techniques in the latter article are 
valid, but the implementation of an inter- 
rupt-driven tick counter in listing 8a (on 
page 133 of the April issue) has a hidden 
flaw: It crashes the IBM PC if you inter- 
rupt the main program with a Control- C. 
The BIX article shows how to correct this 
shortcoming and further explores the 
topic of running interrupt-service rou- 
tines from Turbo Pascal. ■ 



24 BYTE • OCTOBER 1987 



Circle 102 on Reader Service Card 
(Dealers: 103) 



2 new monitors 
for the System/2. 

2 good to be true. 



Some people shy away from tech- 
nological change. But at Amdek®, we look 
upon change as an opportunity. 

And now that there's a new generation 
of PCs, we have the opportunity to intro- 
duce you to 2 new monitors from Amdek- 
the 732 color and 432 monochrome. 

The meticulous details. 

From the beautifully styled cabinet to 
the flicker-free screen, these new monitors 
are unmistakably Amdek 

Text so sharp, you'll think your news- 
paper is blurry by comparison. Graphics so 
colorful, you'll have a tough time trying to 
think of a hue you can't incorporate. 

And because the Amdek 732 and 432 
are compatible with IBiVPs new Personal 
System/2™ Video Graphics Array (VGA) 
and MultiColor Graphics Array (MCGA), 
the image of all your programs will look 
better than you've ever imagined. 



The 732 allows you to choose from a 
palette of over 256,000 colors-up to 256 
colors at once. And the text switch delivers 
clear single color text for word processing. 

The black and white of it 

For the ultimate in monochrome, the 
432 features a large 14-inch flat surface 
screen that projects visually larger black type 
against a high-contrast white phosphor 
background The impression is more like ink 
on paper. 

Combine these features with our non- 
glare screen and tilt/swivel stand, and you'll 
see that Amdek has thought of everything. 

Then compare our monitor price 
against other monitors compatible with the 
System/2. 

We think you'll enjoy that benefit, 2. 



M 

mmm 



Clearly the finest in monitors. 

1901 Zanker Road, San Jose, C A 95 1 1 2 Phone: 800/PC- AMDEK (800/722-6335) FAX: 408/436-8 1 87 



Circle 13 on Reader Service Card 





IBM is a registered trademark of International Business Machines Corp. Personal System/2 is a trademark of International Business Machines Corp. 



While the DAKYWHEEL 
shoots blanks... 



PPpM 

Painter. Parker & Mullen, Inc. 401 Keogh Place New York. NY 10023 



(212)555-1249 



Mr. Tad Davis 

2901 S. 14th Street 

Philadelphia, PA 19147 



Bear Mr. Davis, 



July 27, 1987 



Here at Painter, Parker, and Mullen we applaud your ambition to retire at age 50 
with the resources to travel at least six months of the year. 

We also think you' re asking a lot of your current investments . Here is one idea 
we have on how to change'' that . 

Your present portfolio is 36$ blue chip stocks, 39$ in a mutual fund invested in 
the Pacific Basin and the balance in preferred stocks (CHA T 1 ) . Value as of 
6/10/87: $100,000. 

Considering your age rif>^ low and your goal, we recommend shifting your 
portfolio into *■' rewarding, but more risky investments (.RISK/REWARD 
ANAT.Y! — 




Ufa 



purees into a mutual fund for income-producing 
'Resources in triple tax-free municipal bonds or 
'c bonds. Then split the remainder into three 



IK 



Meetly clear and that your new investment picture 
l f you need anything cleared up, don ' t hesitate to 



C. Peter Painter 

Certified Financial Planner 



mmm 



REGISTERED TRADEMARKS: OKIDATA, Oki America, 
Inc., Marque de'posee de Oki America, Inc.; LaserJet and 
LaserJet Plus, Hewlett-Packard, Inc. TRADEMARKS: 
LASERLINE, Oki Electric Industry Co., Ltd.; LaserControl, 
Insight Development Corp. 



26 BYTE- OCTOBER 1987 



...the OKIDAIA LASER 
hits the mark. 




BULLSEYE INVESTMENTS 



Mr. Tad Davis 




2901 S. 14th Street 




Philadelphia, PA. 19147 








Dear Mr. Davis, 








July 27, 1987 



At Bullseye Investments drawing a brighter investmentpicture doesn't mean doing it 
"by the numbers." Sometimes you have to take risks. Take your goal of retirement at 
age 50. It's ambitious, but it's possible. 

Your assets and investments as of 6-10-87, were about $100,000. Considering your 
dream, we recommend the following adjustments: 

PRESENT PROPOSED 

,. BLUE CHIP 



MUTUAL FUNDS 





FIG. A 



FIG.B 



Shift your money from blue chips, preferred stocks and mutual funds (FIG. A) and into 
real estate, triple tax-free municipal bonds, specialized mutual funds and gold 
stocks.(F\G.B) 




fPESi BLUECHfP 


N| 




M MUTUAL 






IllHIl!! PREFERRED 






CD 






EE53 REAL ESTATE 






EZ) SPECIALTY 






CZ) GOLDBTOCK 






Ux>-1 TAX-FREES 


d 





Naturally, your risks are greater. However, so are your rewards. Roughly 300% more 
interest and appreciation.(FIG.C) I'll call soon to review your portfolio in detail. 



William C. Ricci 

Certified Financial Planner 



1040 Archer Road □ larget, PA 17070 □ (717) 828-5555 




With a daisy wheel you waste 
a lot of time plugging the holes 
in your ideas. 

But with the new LASERLINE™6 
from OKIDATA you can grab your 
reader's attention right away. 

Make your letters more effective 
by using graphics. Call attention to 
your hot topics with 15 built-in 
type fonts. And add emphasis to 
your most important ideas with 
underlining, boldfacing and italicizing. 

Thanks to the LaserControPdisc 
you get with it, you can do it all 
using software that's probably 
sitting next to your PC right now. 

The OKIDATA LASER is 
compatible with LaserJet® and 
LaserJet Plus® software. And it's 
very affordable. You can own it for 
about what you'd pay for a good 
daisywheel. Get the three-user 
module and you've got economy 
no daisywheel can match. 

So see your OKIDATA dealer 
today. Orcalll-800-OKIDATA, 
Ext. 22, for the name of the dealer 
nearest you. 

Stop shooting blanks and start 
hitting the mark with an 
OKIDATA LASER. 



OKIDATA 

^k an OKI AMERICA company 



We put business on paper. 



Circle 196 on Reader Service Card 



OCTOBER 1987 -BYTE 27 



Circle 171 on Reader Service Card 



MicroCom Systems 

OUTSTANDING 
SOFTWARE 

For IBM PC's and Compatibles 



$350 



PER 
DISK 

SMALL QUANTITIES 



$300 



PER 
DISK 

FOR TEN OR MORE 



$1 OFF 5 DISKS OR MORE WITH THIS COUPON 

□ BUSINESS 1— EZ-Forms business form genera- 
tion, completion and printing program. 

□ CAD 1-Altamira, a 4 color object oriented draw- 
ing program. Color required. 

[J] CDMM 4a,b,c,d I e-(5 disks) RBBS Bulletin 
Board System 14.1 D. 

E DATABASE 1a,b— (2 disks) File Express menu 
driven general purpose database mngr. 

G EDUCATION 1 -Interactive DOS tutorial for new 
PC users. Makes learning DOS painless. 

G GAMES 1— 3-D PacMan, Kong. SpaceWar, 
JanitJoe, and more. Color required. 

G GAMES 2— Qubert, Pango. Centipede. Monopoly, 
Zoarre, and more. Color required. 

G GAMES 3— Blackjack (you set rules), Arm Chair 
QB, and Empire (War Game). 

G GAMES 4— Castle. StarTrek, and the original 
Colossal Caves Adventure. 

G GAMES 5— The Hack adventure game from the 
universities. Like Rogue, only more complex. 

G GAMES 6-Pinball, Othello, Dragons, Sopwith 
(fly one), and more. Color required. 

E INFO 1a, b— (2 disks) Cooking recipes database 
with keyword/ingredient retrieval. 

G LANGUAGE 5— Turbo Pascal interactive debug- 
ger, pop-up help, formatters, et cetera. 

G LANGUAGE 7-Complete Pascal inter- 
preter/compiler. Great for learning Pascal! 

Q ORGANIZER 1-DeskMate, a Sidekick clone, and 
the Judy calendar program. 

G PINUP 2-Provocative high res digitized g 

graphics pinups. Graphics required. ° 

G PRINTER 1— Font and sideways utilities, £ 

spoolers, banner makers, and more. 

C UTILITIES 1— A collection of invaluable general 
purpose DOS utilities. A must! 

C UTILITIES 2-More invaluable DOS utilities. Too 
many to list here! 

G UTILITIES 3— A comprehensive set of debug- 
ging and diagnostic utilities. 

NEW RELEASES/UPDATES 

HI CAD 2a,b-(2 disks) An advanced 2D/3D draft- 
ing prog. 640k and color required. 

El COMM 1a,b— (2 disks) Version 2.4 of the ever- 
popular Qmodem comm. program. 

E COMM 2a,b-(2 disks) Procomm 2.42, an ex- 
cellent modem program with terminal emulation. 

a EDUCATION 2-Learn the Presidents, States 
(and capitals) and more. Color required. 

G EDUCATION 5— Learn Origami, the Japanese art 
of paper folding. Color required. 

E FINANCES 3a,b-(2 disks) Express Calc 3.12, a 
powerful spreadsheet program. 

G GAMES 8— Striker helicopterattack. and Risk, 
world domination. Color required. 

G GAMES 9— EGARisk, the game of world domina- 
tion in very high resolution. EGA required. 

G GAMES 10 — Solitaire, Teed-Off golfing, and Sail- 
ing in the Bermuda triangle. Color required. 

□ GAMES 12-MyChess (9 levels), Backgammon, 
and Wheel of Fortune. Color not required. 

G GRAPHICS 1— Record and play back screen 
images! Excellent for demo, etc. Color required. 

E INFO 2a,b-(2 disks) Zip-Phone, national 
areacode/ prefix to zip-code cross reference. 

E LANGUAGE 3a,b— (2 disks) The A86 2.18 macro 
assembler and debugger. 

G SHELL 4-Automenu and HDM II 4.04 hard disk 
menus. Create custom full-screen menus. 

G UTILITIES 5 — Utilities for formatting, parking, 
and optimizing hard disk drives. 

G UTILITIES 6— Advanced utilities including Dpath, 
Esc, Hotdos. Resident program utilities. 

G UTILITIES 7— More Advanced utilities including 
MasterKey (undeletes files from hard disks). 

E WORD 1a,b— (2 disks) PC Write 2.71 , a power- 
ful word processing system, w/spell checker. 

Catalog available, add $2. 3.5" format add S1/disk. 

MicroCom Systems Cost of Items 

3673 Enochs Ave. Ship/Handling $1-00 

Santa Clara, CA 95051 CA Res. Tax 

408-737-9000 Total Enclosed 

(415)325-6500 

M-F 7am-9pm 
Sat-Sun 8am-5pm 



I Santa Clan 
■ 408-737-90C 



28 BYTE • OCTOBER 1987 



t) 



CHAOS MANOR MAIL 



Conducted by Jerry Pournelle 



Letter from Europe 

Dear Jerry, 

Right now, I am trying to decide just 
how badly I want (or need) to access BIX 
and other U.S. public networks. Would 
you like to know how much the Bundes- 
post charges for transatlantic data traffic? 
I could really eat up my paycheck if I get a 
modem (charges) and an account on the 
German Datex-P network (charges) and 
move data (more charges). 

People need information in order to 
know enough to ask questions to get more 
knowledge. Vicious circle, right? Read- 
ing the "Best of BIX," I get tantalizing 
glimpses into what by now must be a con- 
siderable knowledge base. Having it just 
out of my grasp is really frustrating. But 
the question is still there. In reality, the 
people who run (and price) the systems 
are controlling who has access to them. 
Set the price for correct information high 
enough, and no one will be able to use it. 
At that point, who is really in control of 
society and public opinion? 

The French program to put a terminal 
next to every phone is progressing well. 
At last report, about 50 percent of private 
homes had the devices installed and oper- 
ating. Now the French have to deal with 
the next step: how to police the abusers 
while providing the expected level of ser- 
vice to responsible subscribers. Remem- 
ber when CB radio got so popular so fast? 
The service became saturated with fools 
and idiots, so much that legitimate users 
gave up. Soon, just about everyone quit 
using it. Now, so I am told, CB radio is 
tolerable once again. 

The French are seeing an analogy to 
this in their public network. The seamy 
underside of society has reared its ugly 
head in the form of obscene conferences 
ranging from simple requests for hetero- 
sexual liaisons to bestiality, kiddie porn, 
and neo-Fascism. As it should be, the na- 
ture of the network software ensures the 
relative anonymity of the user. Since 
there is no restriction on who can enter a 
conference, young children and the not- 
quite-sane have equal levels of access. 
The whole ugly specter of censorship and 
who is capable of judging the competence 
of another human being is involved. 

I have no doubt that the French will be 
able to sort out an enlightened solution. 
But as conferencing systems grow in" the 
United States, you are sure to experience 



many of the same problems. The differ- 
ence in the United States is that some of 
the less tolerant groups will attach their 
vision of society to a religious (or politi- 
cal, or whatever) banner and do their best 
to shut down the systems that offend their 
sensibilities. Their fear of the future will 
force them to act so, rather than face the 
ultimately liberating and civilizing (we 
hope) influence that increased knowl- 
edge brings. 

Working for a German firm, I am get- 
ting a good taste of the computer angst, or 
fear, that exists here. Not to beat this un- 
pleasant issue to death, but the German 
people do know what national socialism 
could have done had today's computer 
technology existed in 1936. As a result, 
every database (public, private, or gov- 
ernmental) that is in machine-readable or 
-sortable form is subject to constant scru- 
tiny. The holders of the database must 
continually justify the existence of the 
records. 

Charles Kuhlman 
Mannheim, West Germany 

Thanks for the update on conditions in 
Europe. We think BIX is a bit overpriced 
here! You have my sympathies. 

It will be interesting to follow the 
French experience with networking. 
Thanks again. —Jerry 

WordStar 4.0 Flaw 

Dear Jerry, 

I recently received an update from 
WordStar 3.3 to WordStar 4.0 and found 
a very serious flaw in it. 

When using WordStar 4.0 to generate 
source code for BASIC programs, the 
line-drawing functions Alt-Fl through 
Alt-FlO must not be used. Attempting to 
use such source code will totally lock up 
the computer, requiring the machine to 
be powered down to restore control. This 
is also true if the line graphics are gener- 
ated using the Alt key plus a three-digit 
code. The computer will lock up when at- 
tempting to read the source code. 

An examination of the code generated 
using the line-drawing graphics of Word- 
Star 4.0 shows that the hexadecimal 
codes generated are different from those 
generated when using the line-drawing 
graphics codes of WordStar 2000 2.0. 
The graphics codes generated using 

continued 



Automatic Backup Protection 




. . . From Top-Notch Everex SCHEDULER™ 



I Automatic Scheduler™ for unattended backups 

i File restore from image backup or file backup 

i Backup across networks (using logical image or file-by-file) 

i Physical image backup/restore of local disks 

i Logical image backup/restore of local or remote disks 

i File backup from any local or remote disk of any file size 

I File-by-file and image backup on the same tape 

I Multiple tapes to support unlimited backup capacity 

I Multiple datasets for multiple backups on the same tape 



I Tape sequence management recorded on the tape 

I Menu-driven hardware configuration guide 

I Backup any disk whether formatted for DOS or not 

I Escape to DOS while in backup/restore operation 

I File selection from directory listing or command line 

I Context sensitive on-line help 

I Dynamic display of tape status 

I Multiple windows ( nestable and movable) ( 



i Extensive diagnostics 



\ 



*tms 




$775 



Excel Stream 20 Internal $1195 



Excel Stream 60 Internal $1335 



Excel Stream 60 External 






^BtrflO''"' 



$865 Excel Stream 20 External $1295 Excel Stream 60 External $925 Excel Stream 60-8 External 

48431 Mihnont Drive, Fremont, CA 94538 

415-683-2100 

EVEREX. EVER for Excellence. Stream 20/60/60-8 and Scheduler are trademarks of Everex Systems, Inc.. © 1987 Everex Systems. Inc. All rights reserved. 



Utilize the features. Compare the 
performance. Count on our commitment 
to Excellence. Enjoy the Everex 
Protection TODAY! 

For the name of your nearest EVEREX 

dealer or more information, call us. 

Remember... 

We're EVER for Excellence. ™ 

1-800-821-0806 

in US. 

1-800-821-0807 

in California 



EVER for Excellence 



Circle 93 on Reader Service Card (Dealers: 94) 



OCTOBER 1987 • B Y T E 29 



CHAOS MANOR MAIL 



WordStar 2000 work correctly with 
the BASIC language. 

Thomas S. Cox 
Greenville, SC 

Thanks for the info. I confess I don 't 
use WordStar as a programming editor; I 
prefer Brief or First Time. —Jerry 

Praise for Pascal 

Dear Jerry, 

Your short remark about FTL Modula- 
2 in your February column made me 
think of my own experience with various 
programming languages. As a student in 
computer science (we call it "Informa- 
tik"), my first computer language was 
Wirth's Pascal. Maybe I'ma little short- 
sighted, but I think Pascal and its follow- 
er, Modula-2, are the best general-pur- 
pose programming languages. Thanks to 
Turbo Pascal, they're even suitable for 
quick-and-dirty little programs for one- 
time use. I have never learned BASIC, 
and I don't intend to. Seeing those silly 
line numbers and that ancient subroutine 
call scheme, I cannot understand why 
BASIC could survive. 

Okay, current implementations give 
you very powerful functions, but it's all 
spaghetti because the concept of BASIC 



is spaghetti. Unfortunately, a great deal 
of serious (commercial) PC program- 
ming continues to be done in BASIC. 

Manfred Jeusf eld 
Aachen, West Germany 

Well, BASICs are getting so many fea- 
tures that it 's hard to tell some of them 
from Pascal except that BASIC has easier 
string-handling functions. 

I agree, though, that if you have Turbo 
Pascal or FTL Modula-2, you don 't need 
to learn BASIC in the first place. —Jerry 

Stow the Nets 
Dear Jerry, 

I was appalled at your column in the 
April BYTE. Has what I've known and 
loved as personal computing gone the 
way of all silicon? Far be it from me to 
define what is or isn't personal comput- 
ing , but I hardly think the vast majority of 
lowly mortal users can relate to the vast 
Olympian network you describe. I mean, 
you do get every piece of hard-/f irm-/ 
software under the sun for the asking, 
and it's great that you can link them all 
together, but other than yourself and a 
few very large corporations, who could 
possibly afford this? 

Perhaps I've missed the bus. Most 



home users I know make do with one ma- 
chine. If most companies are smart, it 
would seem to me that they ought to stick 
with one computer maker and go with its 
local area networks, terminals, or what- 
ever—this would at least be simpler. 

On the whole, I really like your col- 
umn (and your science fiction), but I 
really think this sort of thing should be 
filed away under Possibly Productive Er- 
gonomic Esoterica. Let's get back to 
helping The Rest of Us. 

John J. Ross 
New York, NY 

The PC Arcnet isn't that expensive, 
and by using a PC or clone as the control- 
ler for a powerful system like the Compu- 
Pro, you can get quite a lot done. Agreed, 
it isn 'tfor everyone, but surely we 're still 
in the price range of microcomputers ? 

I agree, I have a great deal of equip- 
ment around here, and some of it is pretty 
advanced, but it has been my experience 
that today's expensive start-of-t he-art 
equipment is tomorrow's required sys- 
tem; after that it becomes obsolete. A lot 
of people have been touting 1987 as the 
year of the LAN; surely I can be forgiven 
for experimenting with networks? After 

continued 













HARMONY COMPUTERS 

2357 CONEY ISLAND AVE., (BET. AVES. T & U) BKLYN, NY 11223 j 
ORDER DEPT. ONLY 800-441-1144 OR 718-627-1000 - INFORMATION 718-627-8888 












^j ^ NOADDITIONALCHARGE 
^W <5r FORCREDITCARDS 




IBM PS II MODEL 50 S2649.00 
STARNX-10 S149.00 




PANASONIC 1080 I $149.00 
COMMODORE 64C $148.00 



Apple Image Writer II 454 

Brother HR 20 329 

Brother 1509 359 

Citizen 120D 159 

Citizen MSP 10 259 

Citizen MSP 15 319 

Citiren MSP 20 289 

Citizen MSP 25 389 

Citizen Premier 35 438 

Diconix Ink Jet 289 

Epson LXBO0 166 

LX 86 Cutsheet 24 

Epson LQ800 429 



IBM PS 2 Model 30 (2 Drives) 1249 

IBM PS 2 Model 30 (20 Meg.) 1699 

IBM PS 2 Model 50 (20 Meg.) 2649 

IBM PS/2 Model 60 (40 Meg ) 3899 

AT Enhanced IBM 30 Meg (339) 3299 

IBM PC XT Call 
IBM PC XT 286# 6MHZ. 640K 

1.2 MB. 20 MB Hard Dnve 1795 

ATCbne 1.2 Meg Drive 999 

Hertz XT ( 10 MHZ) 640K. w drive 549 

IBM Monitor 219 

Toshiba 5'/< Disk Dr 104 

Topshiba 3V? Disk Dr 129 

AST Six Pack 384K 165 

AST Stx Pack Premium 256 K 189 

AST Rampage (286) 379 

Hercules Color Card 139 

Hercules Monographic Plus 169 

NEC EGA GB1 279 

Quad EGA+ 239 

Quad Prosync 279 

Video 7 Deluxe 264 

ATI Wonder EGA 229 

Paradise Auto Switch (350) 229 

Paradise Auto Switch (480) 259 

Everex Auto Sync (480) 149 

Everex EGA Deluxe (640x480) 169 

Everex Edge 199 

Everex Graphics Pacer 189 

Intel 8087-3 109 

Intel 8087-2 168 

Intel 80287-6 169 

Intel 80287-8 269 

Intel 80287-10 299 

Multifunction Card 99 



APC 4 with 20 MEG (Powermate I) 1649 

APC 4 with 40 MEG (Powermale II) 2195 

NEC Multispeed '279 

NEC Multispeed EL Call 

Masi^t Card 

30 BYTE- OCTOBER 1987 



"PRINTER SPECIALS" 



Epson LQ 1000 529 

Epson FX 86E - 308 

Epson FX 286E 429 

Epson EX800 369 

Epson EX 1000 489 

Epson LQ2500 869 

Siekosa SP 1200 189 

NEC 3550 719 

NEC 8850 1039 

NEC P6 427 

NEC P7 599 

NEC Color P6 529 

NEC Color P7 S99 



SEAGATE HARD DRIVES 



20 Meg. w/cont rower 299 

20 Meg No Controller 259 

30 Meg w/controller 334 

30 Meg. No Controller 279 

30 Meg. AT #4038 509 

40 Meg AT #251 489 

Tandon 20 Meg. Hard Card 339 

NEC 30 Meg. Hard Card 429 

Tandon 40 Meg Hard Card 459 



130 XE 

Atari 801 Printer 
Atari 804 Printer 
1050 Drive 
Atari Writer+ 
Atari 1027 
AtariModem301 
Atari 520 Keyboard 
Alan 520 Disk Drive 




Hayes 1200 

Hayes 1200B w/Smartcom 2 

Hayes 300 

Hayes 2400 

Hayes 2400B w/Smar1com 2 

Micromodem 2E 

Promethias 1200 Internal 

Everex Internal 1200B 

Everex 2400 Internal 

Hayes SmaMcom 2 



e For your proteclion we cbutn li 
:hrn |he lerms ol our warrantee AH sales li 



Okidata 182 
Okidata 192 Plus 
Okidata 193 Plus 
Okidata 292 wINTFC 
Okidata 293 wHntfc 
Panasonic KXP 1080 i 
Panasonic KXP 1091 i 
Panasonic KXP 1092 i 
Panasonic KXP 3131 
Panasonic KXP 3151 
Panasonic KXP 1592 
Panasonic KXP 1595 
Star NX-10 
Star NX 10C 



2GS with 256K 

Apple Drive (57-0 

Apple Drive (3V?) 

MAC Plus 

MACSE (2 Drives) v 

MACSE (20 Meg.) w/keybd 

Imagewriter II 

Apple Color Monitor 

Apple Green Monitor 

Maple Drive (2E. 2C. MAC) 5v. 



v keybd 



228 
309 



149 
184 

279 
238 
369 
369 
399 



745 
249 
329 
1619 
2149 
2749 
454 
399 
118 
139 



ATT 6300 Drive. 640K 

ATT 6300 Plus. 512K, 1.2 Drive 

ATT Monitor 



TOSHIBA PORTABLES 



Toshiba 1000+ (512K) w/Drive 

Toshiba 3100 + 

Toshiba 1100 + 

Toshiba 1200+ and 3200+ 



Amdek 410A 
Amdek Color 600S 
Amdek Color 722 
Princeton HX12 
Princeton HX12E 
Princeton Max 12E 
Scan Doubler 
NEC Multisync 
NEC Multisync Plus 
Gold Star TTL Amber 
Gold Star RGB Color 
Color Composite 



849 
2649 
1459 
Call 



329 
434 
394 
439 



509 
Call 

99 
289 

179 



Star NP 10 

Star NX15 

Star ND 10 

StarND 15 

Star NB 2410 

Star NB 2415 

SR 15. SR 10 Sheetfeed 

Silver Reed Exp 800 

Toshiba 341 3L 

Toshiba 351 Model 2 

Toshiba 351 Model 2 Color 

Toshiba 321 SL 



COMMODORE 






Commodore 128 
1571 Drive 
1670 Modem 
Commodore 64C 
1541 Disk Drive 
2002 Monitor 
1902A Monitor 
MSP 1200 Printer 
Star NX10C 

Amiga 500 with 1080 Monitor 
Amiga 1080 Color Monitor 
Amiga 500 Computer 
Amiga 512 RAM Upgrade (lor Amiga 500) 
Commodore PC ?0-2. 640K. 2 Drives. 
Video Card. DOS 



Lotus 123 Ver 2 
Base 3+ 
Framework 2 
Symphony 1 2 



134 
289 
259 
399 
429 
559 
49 
639 
679 
839 
1024 
469 



218 
212 
119 
148 
164 
244 
229 



375 
374 
419 



Microsoft Word 3.11 


189 


Microsoft Windows 1 03 


59 


Word Perfect 4 2 


199 


Q & A 20 


199 


PFS First Choice 


99 


PFS Professional Write 


109 


Norton Utilities 4.0 


49 


Microsoft Mouse 


109 


Hayes Smartcom II 


69 


Wordperteci Library 


69 


Wordstar Professional Ret. 4 


229 


Multimate Advantage Rel. 2 


239 


Bankstreet Wnterplus 


69 


DAC Easy Accou nlng 
Ventura Desk Top Publishing 


49 


449 


Managing Your Money 
3 V?" Software 


109 
Call 



r sloien credil cardi Shi 
ai Pr>cp anil availability 



ippmg & handling exlra Delechvemeichandise win he replaced o 
ib|ecl to change wlhout nohce We cannol guarantee compaltb 



WITH 
HOUSTON 
INSTRUMENT 



^TJkPT Whether you're a newcomer to 
+m l#*m!m ■ Qfijy or just looking for a reliable, 
low-cost plotter for your PC CAD 
system— start here. With the popular 
Houston Instrument™ DMP- 41/42 
series plotters. 

Priced at $3,295*, these single-pen 
plotters give you the features you 
need for a sensible start— field-tested 
reliability, C and D size plots, good 
resolution, a wide selection of plotting 
media and pens, and compatibility 
with hundreds of software packages. 
Enter the PC CAD world with the 
DMP- 41/42 series— the plotters that 
offer superb reliability and excellent 
performance at a very affordable 
price. Learn about the advantages of 



Hi's Priority Response Pre r 1 s 
featuring a competitive le< . . plan 
and an express service agi en tit s 
that can replace your plotter overnight. 

Begin by calling 1-800-531-5205 
(512-835-0900 if in Texas) or .writing 
Houston Instrument, 8500 Cameron 
Road, Austin, Texas 78753. In Europe, 
contact Houston Instrument, Belgium 
NV., Rochesterlaan 6, 8240 '.'Gistel, 
Belgium. Tel: 32-(0)59-277445. Tlx.: 
846-81399. 



instrument *VIVIE I ElV 



*U.S. suggested retail price. Prices subject to change. 
Houston Instrument is a trademark o/AMETEK, Inc. 



Circle 126 on Reader Service Card 




CHAOS MANOR MAIL 



all, the motto is, "One user, at least one 
CPU. . . "-Jerry 

Macintosh II Looks Good 

Dear Jerry, 

I just read a product preview of the new 
Macintosh II. My previous gripe with the 
Macintosh was its lack of color capabili- 
ty, expandability, MS-DOS compatibil- 
ity, and its small screen size. 

The color capability issue is, admitted- 
ly, a personal preference of mine. Ex- 
pandability is necessary since personal 
computers still require modifications to 
the base unit to suit individual prefer- 
ences. MS-DOS compatibility is neces- 
sary since we are reluctant to trash all our 
software for a new machine. As for the 
small screen size, I have the same gripe 
as you. A small screen is a crime on the 
eyes. 

The new Mac II solves most of these 
problems, and in addition it adapts a use- 
ful bus architecture, the NuBus, and rele- 
gates most of the graphics and sound- 
thrashing to hardware, where it should 
be. The system looks to be the dream 
machine I have always wanted: a VAX- 
like microprocessor (68020), excellent 
color graphics, expandable architecture, 
and a good software base. Now, if the 



price were below $2000, I'd suck one up 
in a minute. 

David Nakamoto 
Pasadena, CA 

We 're in agreement on just about every 
point, especially on software investments 
forcing us to get DOS compatibility. 

They tell me I '11 get a Mac II Real Soon 
Now. I sure hope so; I've been impressed 
with all I've seen. —Jerry 

Undocumented Feature 

Dear Jerry, 

After many phone contacts with AT&T 
regarding a problem I found with its ver- 
sion of MS-DOS, I received a letter ex- 
plaining the source of difficulty and the 
proposed corrective action to be taken (if 
any/if needed/if ever). It reads: 

Thank you for reporting the inconsis- 
tency between the AT&T and IBM 
versions of MS-DOS, in dealing with 
interrupts while in a batch script. The 
inconsistency is due to an undocu- 
mented feature of the IBM version, 
and could therefore be changed by 
IBM at any time. Therefore, before 
any changes are made, if any changes 
are made, the problem will have to 



undergo further review. If a change is 
made, it will be included in a future 
release of MS-DOS. 

Jim Sorrells 
Somerdale, NJ 

Yeah. Wow. Thanks for showing it to 
me. —Jerry 

Not-So-New Keyboards 

Dear Jerry, 

Regarding your comments in the April 
BYTE on the "new" keyboards for IBM 
PCs and clones, let's give credit where 
credit is due. DEC Rainbow owners have 
been noting with irony that these key- 
boards look suspiciously like the LK201 
keyboards that came with their 
computers. 

Now that DEC is backing out of the 
microcomputer business, maybe we'll 
start to see other "advanced" features, 
such as true scrolling, crop up on other 
machines. 

Carl D. Neiburger 
San Jose, CA 

DEC tried as hard as it could to alien- 
ate the micro community, and lo! it suc- 
ceedednicely.—Jeny ■ 



WE'LL BE YOUR BUSINESS-BUILDER - UK/EUROPE 



SERVICED HI-TEC OFFICE NEAR 

LONDON? 
> FIRST FOOTHOLD IN EUROPE? 
+ COMPANY PIED A TERRE IN ENGLAND? 
+ SOMEONE TO HANDLE YOUR TECHNICAL 

SUPPORT? 
♦ MARKETING, ADVERTISING AND P.R. 

ADVICE? 



PROFESSIONAL FOLLOW-UP OF 

EUROPEAN SALES LEADS? 

GUIDANCE ON SETTING UP A EUROPEAN 

OPERATION? 

DISTRIBUTOR INTRODUCTION AND 

PERFORMANCE MONITORING? 



Corporate Software is able to provide you and your Company with a wide range of cost-effective services which 

will enable you to commence (or increase) your penetration of the U.K. and European Marketplace. The rangeof 

our Portfolio includes: the provision of servicedof f icef acilities on short and medium term with Telex, Fax, 

Networked PC's and conference rooms; trained technical support staff to handle your European support 

commitments; professional sales lead handling and follow up; PR Marketing and Advertising guidance; plus a 

comprehensive consultancy service for use when setting up a UK or European operation. 

Located in the heart of England's Thames Valley, only 25 minutes from London's Heathrow airport and 4 miles 

from the main M4 expressway, we are ideally positioned. 

Whether you're already selling in Europe but want to increase your penetration, or want to get going but don't 
know how, or want to move forward but without a major cost commitment, Corporate Software can help. 

Contact David R. Moore, Vice President Corporate Services, for further information. 



CORPORATE SOFTWARE 



Corporate House, Horseshoe Park, Pangbourne, Reading RG8 7JW, U.K. 
Tel. (U.K.) (07357) 5361 Telex 8950511 (Quote '13189001') Dialcom79:WAI034 Fax (07357) 5396 



32 BYTE- OCTOBER 1987 



Circle 69 on Reader Service Card 



We Do Windows 

Choose from a Complete Family of Windows 
compatible Graphics Applications. 



Micrografx is the 
premier developer of 
graphics applications 
compatible with Microsoft 
Windows. And Windows 
DRAW, Windows GRAPH, 
and In* a* Vision are 
recognized as the leading 
graphics applications in the 
industry. 

Windows DRAW is a busi- 
ness drawing and presenta- 
tion graphics program, 
which includes over 1000 
predefined clip art images. 
Windows DRAW was rated 
as the number one free-form 
graphics program by Soft- 
ware Digest (Dec, 1986) 
and is sold internationally 
by Microsoft. 



Windows GRAPH is a business graphics and charting program, and is 
the newest member of the Micrografx family. With Windows GRAPH, 
you can create an unlimited variety of area, bar, column, line, pie, 
scatter, combination, and table graphs. Use existing spreadsheet data 
or enter data directly to create a stunning array of two- and three-di- 
mensional color graphics. Then enhance your charts with free-form 
drawings, multi-font text and clip art. 

In*a*Vision is a powerful, easy-to-use Computer Aided Design (CAD) 
program. In*a*Vision was the first Windows-compatible program and 
according to PC Magazine (June, 1987), "In*a* Vision is still the best 
Windows-specific application." In*a* Vision is ideal for design profes- 
sionals. Whether you are creating complex technical drawings, sche- 
matics, flowcharts, floor plans, organization charts or designing your 
own new kitchen, In*a* Vision makes your job easier. 




Each Micrografx application 
is compatible with Microsoft 
Windows. And compatibil- 
ity with Windows today 
guarantees an easy upgrade 
path to the Windows of to- 
morrow. 

With Windows, each Micro- 
grafx application can run in 
a window simultaneously 
with any other Windows ap- 
plication. And Micrografx' 
applications are data com- 
patible with all other Win- 
dows applications through 
the Windows Clipboard. A 
common user-interface, pull- 
down menus, mouse sup- 
port, shared device drivers 
and our common "object- 
oriented" file structure gives 
you consistent ease-of-use 
and top-quality output. Our PostScript and PageMaker compatibility 
means that all of the graphics you create are perfect for desktop and 
professional publishing. 

In addition, Micrografx offers Windows Clip Art with over 1000 busi- 
ness-oriented images and CAD Clip Art with over 1000 images from 
the architectural, electrical, chemical, and mechanical engineering 
fields. And through Windows CONVERT, your graphics are fully 
compatible with the AutoCAD data exchange format (DXF). 

For additional information about how to put Micrografx to work for 
you, call your local authorized dealer, or contact Micrografx toll-free, 
at 800-272-DRAW (in Texas 214-234-1769) or write to Micrografx 
Inc., 1820 N. Greenville Ave., Richardson Texas 75081. Call today 
and let Micrografx take the dirty work out of doing Windows. 



MICROGRAFX 

The Picture of Success 




Supports the IBM AT standard 





Supports the new IBM PS/2 standard 



Circle 1 72 on Reader Service Card 



The following listing is trademark reference, including registered and unregistered trademarks, for the companies listed: In' a" Vision, Windows ClipArt. Windows CAD ClipArt. Windows CONVERT. 
Windows DRAW. Windows GRAPH. Microgralx, Inc.; PageMaker, Aldus Corporation; Microsoft Windows, Microsoft Corporation; AutoCAD. Autodesk, Inc. c 1987 Micrografx. Inc 



ALL IT LACKS IS 



A choice of snap-in/ out, 24- or 
18-pin prin t heads gives you the 
versatility and ease of mainte- 
nance that other printers lack, 



With a top speed of 360 cps, 
it makes most printers seem 
downrigh t la cka daisical. 




"ALPS P2400C 



But who needs competition And take care of it faster. Thanks 
when you've got all this? not only to its talents pointed 



Namely, the *»« 
ALPS P2400C™ | 

Dot Matrix Printer. \ 

No other printer 
in its class can do so 
much for so many for 
so little. 

For instance, the 
P2400C can easily take 
on all the work an office 
full of busy PCs can dish out 



tip 



SSeffisjMfo. 



' ?Z%*"£'-<* '"" 




fat'lL 




For letters, seven-color graphics, 
spreadsheets or whatever, its output is so 
brilliant, everything else appears lackluster. 



out above, but to its many 
Others, as well. 

Like a choice of 
draft, correspondence 
and letter quality print 
modes. A print buffer 
expandable to 256K. 
Multiple font cart- 
ridges. And full com- 
patibility with the most 
popular PCs and software. 



COMPETITION. 



Most printers lack the good 
sense to include a paper-saving, 
push/ pull tractor lor both bottom 
and rear feed. Not this one. 




You also get conveniences that 
many other printers are lacking. 
Like con trol of e very thin g from 
the front panel, the feature menu, 
or from software— without using 
DIP switches. 



Not to mention the ability to 
run quietly. At under 55dBA, the 
P24000C is one of the least noisy 
printers around. 

One of the most durable, too. 
It comes with a full, one-year 
limited warranty. And if you give 
it normal care, it'll give you over 
five years of trouble-free 
performance. 

Of course, there's nothing like 
a live performance to prove there's 
nothing like the P2400C. 



For a free demo, or more 
information, call us at 
(800) 828-ALPS. In California, 
(800) 257-7872. 

And see what every other 
dot matrix printer is lacking. 

ALPS 

AMERICA 
IT'S TIME YOU SAW THE ALPS. 



Circle 11 on Reader Service Card (Dealers: 12) 



P2400C is a trademark of ALPS Electric Go., Ltd. © 1987 ALPS America. 



AceessYour Data 3-6 Times Faster* 



\ , s 



CO- STAR 



CO-STAR is a unique data storage subsystem containing either an 80-megabyte or a 1 50-megabyte disk drive and a hard drive controller card with 

a powerful difference: an onboard disk-management co-processor. 



Fast Disk 



Now you can get incredibly fast disk access 
performance from your IBM PC/XT, AT or 
compatible with Nestar s breakthrough 
co-processor technology. 

Co-Processin g 

Co-processing means that while your system 
CPU runs applications without interruption 
or memory overhead, CO STAR runs invisibly 
in the background with an array of sophis- 



ticated disk-management (unctions, such as 
1 . File and disk space optimized for most 
efficient retrieval 

■ 2. Intelligent buffering, dramatically 

reducing disk access delays 
PLUS 
I DOS 32 megabyte file size — limitation is 
eliminated 

■ Performs print spooling 

■ Fast access SCSI interface eon next i ng 
up to 8 devices 



VISA,M/(;,AmEx 



Disk-Intensive Applications 



CO-STAR can increase productivity up to 
366 percent! — in applications like data 
base management, accounting, CAD/CAM 
and desktop publishing. 

Complete System 

CO-STAR subsystems include everything: 

Top-rated hard disk drives 

CO-STAR disk controller, 256K of memory 

(expandable to 1 Mb) with a co-processor 

Cabling 

Easy installation software for DOS 3.X 

User manual 
: i Free 800 -phone technical support 

Don't miss out on our limited-time 
introductory prices. 

80 Mb CO STAR System $ 1 ,495 .00 
Half Height Internal Drive 

150 Mb CO-STAR System $ 2 ,495 .00 
Full Height Internal Drive ^^ 



To order, call us direct at 



*E 1-800-832-727 



If you're not completely sa 
CO-STAR system, return it to > 
30 days for a full refund. A 12-month r 
to factory, limited warranty. 

To learn more about CO-STAR and how new 
technologies have been used to deliver you 
great disk performance, call or write today 

foryour free copy of . 

George Morrow's SET™ 

"11 Design Innovations S§tar_ 

That Improve *j"~ 

Disk Performance!* 



Nestar Systems 



A Member of the Business Network Systems 
Group of DSC Communications Corporation. 

1345 Shorebird Way 

Mountain View, California 94043-1339 



8:00 AM - 5:00 PM Pacific Time 

♦Based upon reading 1000 sequential sectors, one at a time. Full comparative tests using standard industry benchmarks are available upon request. 



MICROBYTES 



Staff-written highlights of developments 
in technology and the microcomputer industry. 



Optical Storage Growing Up, Facing the 
Magnetic Challenge 



No one ever said making an optical 
disk was easy, certainly not manufactur- 
ing experts at a recent conference on 
optical drives and media. As Richard 
Zeck, of Rothchild Consultants (San 
Francisco) , explained, you have to worry 
about things like the multiple layers 
of a disk matching both optically and 
thermally and tracks only 1 micron 
wide, 10 to 15 times narrower than with 
magnetic media. 

Richard Gardner of 3M Company 
(Vadnais Heights, MN), a major North 
American producer of optical disks, 
described 3M's manufacturing process 
as having more than 1000 separate 
steps per disk, 475 of those steps in the 
thin-film deposition process alone. 
The most critical factor, at least from 
3M's perspective, is the implementa- 
tion of on-line diagnostic devices that 
measure key observable parameters, 
such as bonding and lamination and han- 
dling. "Testing must occur inside the 
system as the product is being made," he 
said. "The only thing you learn from 
downstream testing is that what you just 
made is garbage." 

According to Gardner, the 3 M op- 
tical disk manufacturing line is moni- 
tored by a single person, the control 
operator, who watches each step of the 
process for each disk. With each 
step, data is sent back to the operator, 
who then analyzes that data using a 
mainframe computer. Modifications can 
then be made during the manufactur- 
ing process. "We know while a disk is 
being made whether or not it is any 
good," Gardner explained. 

Frans Carpay, director of manufac- 
turing for Philips and DuPont Optical 
Company (Nieuwegein, The Nether- 
lands), explained that it now takes 7 
minutes to make a disk ("In one end 
of the line, you put in granulate; at the 
other end is a disk") and that overall 
production yield is 25 percent greater 
than with first-generation techniques. 
Carpay stated that the company current- 
ly produces blank disks that can be 
sold to customers for between $1 .60 and 
$1 .70 each. 

Even though the optical storage in- 



dustry is still in its infancy, said Zeck, 
it's mired in a period of transition. 
"There will be at least three, maybe 
five, generations of products," he 
said, "and we are only in the first gener- 
ation. " Zeck said that by the 1990s, 
"Optical storage will be a very large 
successful market." 

Zeck described several trends he 
sees developing in optical memory, par- 
ticularly the emergence of 5 14 -inch, 
half -height drives. "There's no question 
about it," he said. "A majority of the 
optical drive manufacturers will be mak- 
ing 5 Va- and before long 3 16 -inch 
units that are half -height because this is 
what the market wants. " 

Developments like holographic op- 
tical elements, higher power laser diodes 
(which use shorter wavelengths and 
diode arrays), better position sensors, 
and single-element molded aspheric 
lenses have enabled manufacturers to de- 
sign smaller drives that have multiple 
heads, Zeck said. He explained that in- 
novations like diode lasers with 
shorter wavelengths will make doubling 
of the bit and track densities possible, 
effectively quadrupling the storage ca- 
pacity, while laser diode arrays will 
permit multichannel read/writes. Some 
of the laser diode arrays may also in- 
corporate fiber-optic arrays. 

Zeck predicted such innovations 
will gain widespread use in the next 
three years; we'll also see optical 
drives with 30-ms access times, he said. 

Zeck doesn't discount magnetic 
storage altogether, however. He sees the 
"continuing evolution of magnetic 
technology, which annually improves in 
both capacity and throughput and de- 
creases in price" as one of the most for- 
midable challenges optical storage 
must overcome. In many environments, 
magnetic storage is still more cost- 
effective than optical storage, and sys- 
tems like Konica's high-capacity 5 %- 
inch disk drive continue to make it tough 
on optical devices. In addition to high 
costs and sometimes low performance, 
Zeck said, the biggest problem for 
optical storage is both the lack of stan- 

continued 



Nanobytes 



Amid all the glittering graphics 
technology at SIGGRAPH-87, we 
found a humble new device for 
controlling screen images. Called 
the Spaceball, this tangerine- 
size unit, mounted to a molded 
base, is filled with force/ 
motion sensors; when you twist 
the ball, the sensors read the 
direction of the pressure and rotate 
the image on the screen ac- 
cordingly. Push on the ball and 
the image recedes into the 
background; pull it and the image 
moves into the foreground. The 
pickups are filtered to eliminate 
the first 10 percent of motion. 
Inventor John Hilton said that be- 
cause the Spaceball has its own 
processor, it can be software-con- 
figured to work with any sys- 
tem or application. Spatial Sys- 
tems (Milsons Point, Australia) 
is testing the device now; at press 
time, it wasn't yet being mar- 
keted. . . . The Software Link 
(Atlanta) sounds pretty sure of 
its PC-MOS/386 operating system 
for 80386-based machines. 
The company says that if a com- 
mercial application or utility 
doesn't run under its OS, it will 
work with the developer to fix 
the cause of incompatibility. If 
they can't correct the problem, 
the owner can return PC- 
MOS/386 and get a full re- 
fund .... Mercury Computer 
Systems (Lowell, MA) showed 
at SIGGRAPH an add-in board 
for IBM PC ATs engaged in 
computation-intensive work. The 
MC3200 Micro-Supercom- 
puter, built around the Weitek 
8032 chip set, uses three 32-bit 
processors to handle program se- 
quencing, integer processing, 
and floating-point operations. 
Mercury claims performance 
of 5 to 25 times that of an 
80386/80287 combo. With 2 
megabytes of RAM, the board 
costs $8000; the software de- 

continued 



• Circle 193 on Reader Service Card 



OCTOBER 1987 'BYTE 37 



MICROBYTES 



velopment package is $8500. . . . 
The Semiconductor Industry 
Association (Cupertino, CA) has 
appointed five scientists to an 
advisory panel that will study the 
possibility of doing a study on 
possible health hazards of working 
in a chip fabrication plant. The 
head of the panel said it will first 
try to find researchers inter- 
ested in doing an epidemiologic 
study of workers at semicon- 
ductor plants. . . . MIT's Randall 
Davis told a group of manufac- 
turing planners that factory auto- 
mation won't save much 
money on the assembly line but 
will have an impact at the in- 
ventory level, where there's more 
room for cutting costs (he said 
that only 5 percent to 10 percent 
of a factory's resources are de- 
voted to assembly). Davis specu- 
lated that robots and expert 
systems may have their biggest 
impact on middle managers. 
"Maybe the real consequence of 
factory automation will be in 
thinning management ranks, since 
these are the people who have 
typically dealt with inventory and 
accounting, areas that will 
need less management in the 
future." . . . TokiAmerica 
Technologies (Irvine, CA) will 
soon start shipping its wire, 
which contracts, just like muscle 
tissue, when current is applied 
to it. Called BioMetal, it's a 
nickel-titanium member of the 
shape-memory family of alloys. 
According to a company execu- 
tive, one disk drive maker is ex- 
ploring BioMetal 's use as a re- 
placement for the solenoids and 
small electric motors that raise 
and lower the drive's read/ write 
heads. The metal doesn't emit 
a large magnetic field. Another re- 
searcher reportedly has used 
the wire in a robot arm to probe 
integrated circuits .... Data 
Technology (Santa Clara, CA) 
says it will come out with a 
smaller, less expensive model of 
its CrystalPrint VIII, a page 
printer that uses a liquid-crystal 
shutter. The CrystalPrint IX 
will print six pages per minute and 
will be priced "at the bottom of 
the market. " 



dards and the lack of an industry 
leader. "The very diversity of optical 
storage options is perhaps its biggest 
negative," he said. "IBM's announce- 



ment of its 3363 [optical drive in 
April] was very important, but we're 
still waiting for the overall breakout 
type of leadership that's needed. " 



The Minicomputer: An Endangered Species? 



"Taking aim" might be the best way 
to describe the combined Microsoft/ Intel 
position regarding the future of 
80386-based personal computers run- 
ning the Xenix operating system. 
Both Steve Ballmer, vice president of 
system software at Microsoft (Red- 
mond, WA) , and Claude Leglise, 86- 
family marketing manager at Intel 
(Santa Clara, CA), described an 80386- 
based Xenix system as having power 
that not only rivals a DEC VAX, IBM 
370, or Hewlett-Packard minicom- 
puter but that ou tperforms those 
systems. 

"The top three contenders in the 
minicomputer market," said Leglise, are 
the IBM 370, DEC VAXes, and an 
80386-based IBM PC. "All offer 32-bit 
capabilities, a large address space, 
and virtual storage architecture. How- 
ever, a '386 today delivers more CPU 
power than the IBM or VAX. " Ballmer 
agreed, stating "386 Xenix is a multi- 
user system that competes with low-end 
VAX, an IBM System 36, and a Hew- 
lett-Packard minicomputer more so than 
it competes with DOS." According to 
Ballmer, the installed base of Unix/ 
Xenix users exceeds 250,000, mak- 
ing it the largest installed base for multi- 
user operating systems in the world. 
"Some people don't think 250 ,000 is a 
very big number," Ballmer said, 
"and it isn't if you compare it to 10 mil- 
lion DOS users. However, it is a very 



big number if you compare it to the few- 
er-than-100,000 VAX VMS installed 
base." 

Both men lauded the standardized, 
binary Unix platform the 80386 makes 
possible. "No other processor or ar- 
chitecture can make this claim," boasted 
Leglise, while Ballmer added that 
"it's a way of putting a level of standard- 
ization into the minicomputer 
market." 

According to Ballmer, Microsoft's 
operating system strategy is threefold: 
DOS and Windows for real mode, 
OS/2 for protected mode, and Xenix for 
multiuser environments. "DOS and 
OS/2 remain single-user systems," said 
Ballmer. "We will use OS/2 to pene- 
trate mission-critical markets like airline 
reservation systems." 

Paul Sribhibhadh, Microsoft's 
Xenix marketing manager, told Micro- 
bytes Daily that Xenix sales "are 
doing better than ever since the OS/2 
announcement. " Ballmer said Micro- 
soft has "never had a higher level of 
Xenix development" than it does 
now. According to Sribhibhadh, the 
Xenix development team at Microsoft 
consists of about 30 people. 

Leglise, who noted that the 80486 
won't be available for quite a while, pre- 
dicted that by the end of the century, 
Intel "will deliver a chip that will 
compete effectively against a 
mainframe." 



Coprocessor Will Enhance Amiga Graphics 



A prototype parallel imaging copro- 
cessor board has been developed for the 
Commodore Amiga 2000 by the Uni- 
versity of Lowell (MA) Center for Pro- 
ductivity Enhancement. Called the 
Amiga Parallel Imaging Coprocessor, 
the card is built around the NEC 
/xPD7281 Image Pipelined Processor 
(ImPP) , which executes at the rate of 
5 million instructions per second. How- 
ever, because the board can accom- 
modate as many as seven ImPPs , an ef- 
fective processing rate of up to 35 
MIPS can be achieved. The board can 
also perform DMA transfers of 
images within 512K bytes of graphics 
memory and within up to 8 mega- 
bytes of system memory. 

According to Georges Grinstein, 



associate professor of computer science 
at the University of Lowell, the board 
is programmable and will come with a 
development environment that in- 
cludes an ImPP assembler, a run-time 
support library, and an image-pro- 
cessing library (filters, geometrical 
operations, processing routines, and 
so on). The board can be programmed 
through the C run-time library or 
through an imaging kernel system (also 
developed by the University of 
Lowell) . 

Grinstein said at SIGGRAPH-87 
(in July) that the board would soon 
go into production and would be 
available in September for approxi- 
mately $2000. 

continued 



38 BYTE • OCTOBER 1987 




Turtle Souped 



Nantucket 



Real programmers don't use dB ASE, Or do they? 
Were finding that some very swift programmers are using it to 

write some very fast applications, 
and are completing their 
projects much more quickly 
But they cheat. 
They use our Clipper™ 
compiler to combine dBASE™ 
with C and assembler. 
With dBASE used like 
pseudo-code, they can then quickly create 
prototypes that actually run. 
Then, with dBASE doing the high-level database functions, 
they use our Clipper compiler to link in C or assembly language 
modules from their own bag of tricks. 

And they're finding that they're linking in less than they 
expected because Clipper compiled code runs so fast and 
because of Clipper's built-in enhancements. 

Clipper includes easy networking that provides file and 
record locking the way it should be done. 

Fast screens that can be treated as memory variables and 
eliminate the need for direct screen writes and all that tortuous 
heap management code. 

Box commands that make 
windowing a breeze, And more. 

So if you'd like to use your time 
more productively check us out: 
Nantucket Corporation, 
12555 W Jefferson Boulevard, 
Los Angeles, C A 90066. 

Or if you're on deadline, call 
(213) 390-7923 today 

Clipper could get you out of 
the soup. 




© Nantucket Corporation 1987 Clipper is a trademark of Nantucket Corporation; dBASE isn't. In Europe: Nantucket Corporation (Europe) 2 Bluccoats Avenue. Fore Street, Hertford, Herts SG14 1PB Telephone 0992 554621. 



Circle 189 on Reader Service Card (Dealers: 190) 



OCTOBER 1987 -BYTE 39 



MICROBYTES 



Some Researchers Concerned with Defense Funding of Al Projects 



One of the most heated topics of talk 
at the recent AAAI-87 in Seattle con- 
cerned the role of the Department of 
Defense's Strategic Computing Initiative 
(SCI) in AI research. AI researchers, 
particularly those in universities who see 
themselves as "antimilitary," are 
facing a real dilemma: They don't want 
their work used for military applica- 
tions, but no one else seems ready to pay 
the bills. The only realistic perspec- 
tive, according to Rod Brooks, an MIT 
researcher heavily involved in the 
SCI-sponsored Autonomous Land Vehi- 
cle (ALV) program, is to realize that 
research results can be used for all sorts 
of purposes and that a researcher can- 
not assume responsibility for every even- 
tual application. 

Randall Davis, another university 
researcher working on SCI-related proj- 
ects, agreed, pointing out that many 
of the algorithms being used with missile 
systems were originally developed by 
medical researchers. Jon Jacky of the 
University of Washington concurred: 
"You can never have complete control 



over the results of your work. " 

SCI, with its 1987 budget of slight- 
ly more than $116 million, is a DARPA 
(Defense Advanced Research Projects 
Agency) program started by Robert 
Kahn in 1983. SCI has four major 
goals: to advance machine intelligence 
technology, to aid in the transition of 
this technology from laboratories to in- 
dustry , to increase the availability of 
trained scientists and engineers, and to 
provide a broad base of supporting 
research for advanced machine-intelli- 
gence technology. General areas of 
technology research include computer 
vision, speech processing, natural- 
language processing, knowledge-based 
systems, integrated interfaces, archi- 
tectures, and microelectronics. 

More than one-third of SCI's 1986 
$116.3 million budget was released to 
university research laboratories; 26 
percent was allocated for multiprocessor 
system architectures, 20 percent for 
applications (e.g., ALV), and 16 percent 
for machine intelligence. Although 
the 1987 budget will be cut to just over 



$104 million, the 1988 projected 
budget will be up to about $120 million. 
Robert Simpson, the DARPA admin- 
istrator responsible for overseeing SCI, 
added that SCI is the funding source 
for AI and computers within DARPA. 

Questioned about the relationship 
between SCI and the Strategic Defense 
Initiative (SDI), commonly referred 
to as the "star wars defense," Simpson 
pointed out that the two are not re- 
lated; however, "technologies developed 
by SCI are available to the entire De- 
fense Department." Simpson mentioned 
that SDI researchers are very inter- 
ested in the parallel computing architec- 
tures at Carnegie-Mellon University 
(see the story on the Warp Computer in 
April's Microbytes, page 10). 

When asked why SCI funds could 
not be turned over to a nonmilitary 
agency, such as the National Science 
Foundation, for distribution to univer- 
sities, Simpson said "it's unlikely" 
that the DoD would agree to deliver mil- 
lions of dollars to the NSF simply to 
create the impression of "clean money. " 



No LAN Is an Island, E-Mail Panel Says 



The lack of intersystem connections 
has been the single biggest obstacle for 
electronic-mail users and vendors, 
according to a panel of e-mail experts 
speaking in San Francisco recently. 

But one panelist, Richard Miller of 
Telematica (Palo Alto, CA), said the 
technical problems of "interconnect- 
ing islands of communication" have 
been solved so that users of one 
e-mail system can send and receive 
mail to and from users on other systems. 
The problems that now exist, said 
Miller, are primarily administrative. 

"Within companies, the problem is 
to convince the various parts of the orga- 
nization that they really can talk to 
one another," said Miller. "Usually that 
isn't dealt with until a CEO finds out 
he can't send a message to the entire 
company." Peter Westwood, vice 
president of Sydney Development Corp. 
(Vancouver, British Columbia), 
added that more than 80 percent of the 
e-mail systems that serve the more 
than 6 million active e-mail users in the 



United States are capable of commu- 
nicating with one another, but whether 
or not they actually do is another 
matter. 

Miller and the other speakers on 
the panel credited the adoption by e-mail 
vendors of the X.400 protocol stan- 
dards with helping greatly to make inter- 
connection possible. Those standards 
are backed by the Electronic Mail Asso- 
ciation and are now being considered 
for adoption by the National Bureau of 
Standards in the United States and by 
Cen/Cenelec in Europe. 

"We are at the point today," Miller 
said, "where X.400 is no longer a 
dream. Real services and real prod- 
ucts are out there. " X.400 is a global 
messaging interconnection protocol 
that defines the envelopes and text for- 
mat of message naming, addressing, 
and routing schemes. 

When asked about the implications 
that X.400 might pose for broad-based 
Unix systems like Arpanet, UUCP, 
and others, however, Westwood admit- 



ted it is unlikely that those systems 
will adopt the X . 400 protocol. Instead, 
vendors, like Westwood 's company, 
will be offering gateways to those 
systems. 

Russell Briggs, an e-mail consul- 
tant and president of DA Systems 
(Campbell, CA), agreed. "The Unix 
systems work now," said Briggs, "and 
there probably will be little incentive 
to adopt X.400. The alternative is to 
provide gateways." Briggs added that 
implementing X.400 protocol is not 
cheap and predicted that many e-mail 
systems will turn to gateways or to ser- 
vices like DA System's recently in- 
troduced DASnet. 

DASnet is a service that allows the 
exchange of electronic mail between 
users of most of the major e-mail sys- 
tems. With a DASnet, an e-mail user can 
reach almost everyone who has an ac- 
count on a public or for-fee system using 
the mail system with which they have 
become familiar, regardless of the 
destination. 



TECHNOLOGY NEWS WANTED. The news staff at BYTE is always interested in hearing about new technological and 
scientific developments that might have an impact on microcomputers and the people who use them. We also want to keep track 
of innovative uses of that technology. If you know of advances or projects that involve research relevant to microcomputing 
and want to share that information, please contact us. Call the Microbytes staff at (603) 924-9281 , send mail on BIX to Micro- 
bytes, or write to us at One Phoenix Mill Lane, Peterborough, NH 03458. 



40 BYTE- OCTOBER 1987 




Verbatim 6.6 MB subsystems: high capacity 
with the convenience and security of 
removable floppies. 

You' 1 1 appreciate the advantages of Verbatim 
6.6 MB subsystems from Kodak. 

You get 5.57 MB of formatted capacity and 
all the benefits of removable floppies. Store 
unlimited amounts of data. Easily transport files. 
Secure important information. And back up 
your hard disk quickly and reliably. 

No need to throw away existing disks. This 
subsystem can read disks with 48, 96, and 
192 tpi. Available to fit inside or alongside your 
IBM PS/2 model 30 or IBM PC/XT/AT and 
compatibles. Everything you need for fast, easy 
installation comes with the package. And you're 
protected by a one-year warranty. 

Ask your computer dealer about this new 
Verbatim subsystem and media. Or call 
1-800-44KODAK, ext. 990. 

Free Back-It software for hard-disk backup 
with purchase, while supplies last. 



6.6 MB 

OF ADDED 

STORAGE 
FROM 

KODAK 



The new vision of Kodak 




©Eastman Kodak Company, 1987 
Circle 88 on Reader Service Card 



Meal Waking Conditions 




If you're looking for a high-speed laser feeders, combined with PageLaserl2's 



printer that can easily handle as many as 
25,000 pages a month, the new Toshiba 
PageLaserl2® is the machine for you. 

It thrives in any high-volume office 
environment. Whether it consists of a 
productive single user, or a network of 
multiple users sharing the workload. 

FageLaserl2's extended product life 
might help to explain its hard-work 
mentality. At up to 1.2 million 
pages, it's three times more dur- ^ i 
able than other laser printers " ! 

You'll also have an equal 

. . p . i X « TOSHIBA 

appreciation lor its advanced 
paper handling 
options. Our 
Toshiba-made 
dual-bin paper 



l,„, 




standard cassette feeder, give you a paper 
capacity of 750 sheets. 

That's 500 sheets more than most 
other laser printers. 

But here's the best part With three 
paper feeders, you can now print multiple 
paper types and sizes automatically. Letter, 
legal, letterhead, even labels can be ac- 
cessed with no physical change. 

What's more, our optional 
proprietary envelope feeder 
lets you print large quantities 
■ of envelopes without con- 
| stantly banging away on 
1 your office typewriter. 

You can also use the 
1 same font style that appears 
on your letters to create a 




Wm 



FbrThe PageLaserl2. 




■0S 



more professional, unified look. 

But don't think for a second all 
these bells and whistles slow down 
performance. At 12 pages per 
minute, PageLaserl2 is up to 50% 
faster than many other laser printers. 

As for multiple emulations, HP 
LaserJet 500 Pius? Diablof IBM® 
Graphics, Qume® and Toshiba P351 all 
come standard, as do parallel/serial 
interfaces. There's also a 1.5MB memory 
option for full-page 300 dpi graphics. And 
our optional output jogger/collator ensures 
easy separation of multiple copy output All 
of which means PageLaserl2 can meet the 
needs of any office worker. 

A complete library of Toshiba font car- 
tridges is available with multiple HP Laser- 
Jet-compatible fonts on each cartridge. And 



• <i 5>. 




PageLaserl2's high-volume capability 
* and low-priced supplies produce one 
of the lowest desktop laser costs per 
page in existence. 

To top it off, you get all this 
high- volume ingenuity, speed 
and flexibility for what you'd ex- 
i pect to pay for a less equipped 
low-volume laser printer. 
So if your business prospers on high 
volume, get the laser printer that does the 
same. The PageLaserl2. 

For more details, call 1-800-457-7777 
for the name of the Toshiba printer and 
computer dealer nearest you. 

Then see how well PageLaserl2 
performs in your surroundings. 

IBM is a registered trademark of International Business Machines Qirporation. Diablo is a registered 
trademark of Xerox Corporation. Qume is a registered trademark of Qume Corporation. LaserJet 
500 Plus is a registered trademark of Hewlett-Packard. 



In Touch with Tomorrow 

TOSHIBA 

Ibshiba America, Inc.. Information Systems Division 



in SAMSUNG 

provides compatibility and beyond 




SAMSUNG S-286 (Base System) includes: 



• Intel 80286-8 CPU with 8 Expansion Slots. 

• 1Mb Standard RAM Memory On Board (100nS Chips). 

• Combined 2 Floppy/2 Hard Disk Controller Card (Western Digital WA2). 

• 200 Watt Power Supply 230/115 V Switchable. 

• Clock Calendar with Battery Back-up (Rechargeable Battery). 

• 6 or 8MHz Clock Speed (Switch Selectable). 

• Wait or No Wait Memory Access (Switch Selectable). 

• 1.2Mb Floppy Disk Drive. 

• 2 Serial Ports and 1 Parallel Port (Built-in Motherboard). 

• Enhanced 101 MAXISWITCH™ Keyboard. 

• Push Button for Hardware Reset. • Hardware Reference Manual. 

• Awards ROM BIOS (100% Compatible and Faster). 

• Landmark CPU Test Shows 10.3MHz at 8MHz on Wait State. 

• One Year Complete Warranty Parts & Labor. • FCC/UL Approved. 



S-286 EGA System 



$1690 S-286 Monochrome System 



$1250 



• Includes Base System (Shown Above). 

• Samsung 14" EGA Monitor (640 x 350). 

• Video-7™ VEGA Deluxe Extra Hi-resolution EGA Card 




With 20Mb Seagate ST-225 VfeHT 65mS $1960 

With 30Mb Seagate ST-4038 Full HT 39mS $2180 



• Includes Base System (Shown Above). 

• MGA Card. 

• Samsung 12" Hi-resolution Monochrome Amber 
Monitor with Tilt and Swivel Base. 

With 20Mb Seagate ST-225 VaHT 65mS $1540 

With 30Mb Seagate ST-4038 Full HT 39mS $1 740 




• Samsung 12" Amber and Green Monochrome Monitor 
with Tilt and Swivel Base 

• Video-7™ VEGA Deluxe EGA Card 



OPTIONAL PRODUCTS 



$ 75 
.329 



• Seagate ST-225 V 2 HT 20Mb Hard Disk Drive 

65mS Access Time 270 

• Seagate ST-4038 Full HT 30Mb Hard Disk Drive 

39mS Access Time 490 



TO ORDER IN CA CALL TOLL FREE TECH SUPPORT & INFO 

800-543-8868 (408) 737-8585 



• Samsung 14" EGA Monitor $350 

• Modem - 1200 Baud 95 

• Modem - 2400 Baud 245 

• Tape Back-up Samsung SACT40Q 40Mb Internal 470 

• Toshiba 360K Floppy Disk Drive 95 

• Chinon 360K Floppy Disk Drive 90 



TO ORDER CALL 
TOLL FREE 



1-800-451-8556 




Hours: Mon - Fri 8:00 am - 6:00 pm (PST) 
Saturday 8:00 am - 3:00 pm (PST) 



AV3 Macara Avenue 
Suite VOB 
Sunnyvale, CA 9<40B6 



TERMS: Orders shipped same day on all 
stocked products. We accept Visa, Master- 
Card, 3% extra on Amex, wire transfers, 
qualified PO's and CO.D.'s. Only factory seal- 
ed and fully warranted products stocked. PC 
Home extends a one year complete warranty 



BYTE- OCTOBER 1987 



to be free from defects in materials and 
workmanship on all products. Returned items 
must be shipped prepaid and insured, and 
must contain an MRA number on the shipp- 
ing label. CA residents add 672% sales tax. 
Prices are subject to change without notice. 

Circle 206 on Reader Service Card 



WHAT'S NEW 



Fortune's Super- 
micro Supports 
2 to 20 Users 

Sporting a 68020 pro- 
cessor running at 16.5 
megahertz, the Fortune 
Formula 4000 is a desktop 
computer system that sup- 
ports from 2 to 20. The sys- 
tem runs Fortune's propri- 
etary Unix-based operating 
system, FOR:PRO. The 
company says system V .3 will 
be released later this year. 
Also available is For- 
tune: Works, a package that 
lets IBM PCs and compatibles 
access FOR: PRO files. 

The 4000 includes four 
standard expansion slots, one 
of which is reserved for the 
SCSI host adapter. Two slots 
are also available for mem- 
ory expansion. The main sys- 
tem has two full-height 
drive slots. An expansion cabi- 
net with two additional full- 
height drives is also available. 

Fortune's entry-level 
configuration includes 1 mega- 
byte of RAM and a 40- 
megabyte hard disk drive. A 
fully loaded high-end sys- 
tem includes a 145-megabyte 
hard disk drive, 4 mega- 
bytes of RAM, a 60-megabyte 
tape-backup unit, and a 
complete set of Fortune Office 
Automation software. 
Price: $9900 to $19,900. 
Contact: Fortune Systems/ 
SCI Technology Inc., 300 Har- 
bor Blvd., Belmont, C A 
94002, (415) 593-9000. 
Inquiry 575. 



A New Interleaf 

Interleaf's electronic pub- 
lishing program has been 
ported down to the Macin- 
tosh from the mainframe 
world. It retains the full fea- 
tures that enable you to com- 
pose, edit, and print docu- 
ments with multifont text and 




The 68020-based Formula 4000 can support 20 users. 



graphics, including CAD 
and freehand drawings, charts, 
diagrams, photographs, and 
line art. The program takes 
over the Macintosh screen 
with its own desktop and offers 
a component bar for 
changing fonts and other char- 
acteristics. Changes are 
made globally across the docu- 
ment, including repagina- 
tion, auto-hyphenation, and 
auto-numbering. 

You can use a mouse to 
access pop-up menus and a 
keyboard for word 
processing. 

A spelling checker, based 
on The American Heritage Dic- 
tionary, spell-checks and 
offers choices of corrections. 

An object-oriented 
graphics editor enables you to 
add text to graphics, align, 
center, copy, ungroup, move, 
rotate, size, and cut. You 
can zoom in graphics mode but 
not in text mode, and you 
can edit zoomed objects. In- 
stead of using a ruler in 
graphics mode, you can create 
an object on a grid and 



align objects or parts of objects 
to grid points. 

A data-driven charting 
feature accepts data from Lotus 
1-2-3 and other programs in 
ASCII format. You can also 
import data from the Mac- 
intosh Clipboard. 

Page-layout functions in- 
clude rotate, size, cut, and 
copy, and you can enter text 
into the page or cut and paste it 
in. Word-processing func- 
tions are also available. 

A referencing function 
dynamically links all references 
throughout a document. 

Interleaf reports that doc- 
ument length is limited primar- 
ily by disk size. 

The program requires a 
Mac II. A color screen is rec- 
ommended for use with 
WYSIWYG (what you see 
is what you get) features but is 
not necessary to run the 
program. 
Price: $2495. 
Contact: Interleaf Inc . , 10 
Canal Park, Cambridge, MA 
02141,(617)577-9800. 
Inquiry 576. 



SEND US YOUR NEW PRODUCT RELEASE 
If you want us to consider your product for publication, send us full 
information about it, including its price, ship date, and an address 
and telephone number where readers can get further information. 
Send to New Products Editor, BYTE, One Phoenix Mill Lane, 
Peterborough, NH 03458. Information contained in these items is 
based on manufacturers ' written statements and/or telephone inter- 
views with BYTE reporters. BYTE does not represent itself has hav- 
ing formally reviewed each product mentioned. 



Three Neural- 
Network Programs 

MacBrain, a Macintosh 
neural-network-simula- 
tion program from Neuron- 
ics, supports up to 200 pro- 
cessing nodes and provides 
up to 40,000 connections. It 
contains an interpreter and 
paradigm shells. You can simu- 
late adaptive resonance, the 
Delta rule, Boltzman ma- 
chines, and Hopfield nets. 

The program supports 
color on the Mac II and pro- 
vides seven instruments to 
display units and four ways to 
display weights and links. 

MacBrain runs on the 
Mac Plus, SE, or II. The com- 
pany plans to support 
Transputer-based boards in a 
future release that will also 
include two programming 
languages. 
Price: $99. 

Contact: Neuronics Inc., 
P.O. Box 738, Cambridge, 
MA 02142, (617)367- 
9254. 
Inquiry 577. 



NeuralWorks is an IBM 
PC development tool for 
designing and building neu- 
ral applications and models. It 
uses a graphic intuitive in- 
terface and offers editing, exe- 
cution, tuning, and observa- 
tion capabilities. The editing 
functions let you lay out the 
network in layers, then inter- 
connect the layers with one 
of four methods. You can spec- 
ify the layers manually, rep- 
licate an existing pattern, con- 
nect them randomly with a 
specified density, or specify 
them fully connected. You 
can also modify the layers at 
any time without redefining 
the entire network. 

The learning rule at each 
layer is programmable. Inputs 
include raster scan files and 
ASCII files. The program 
offers scatter diagrams of 

continued 



OCTOBER 1987 -BYTE 45 



WHAT'S NEW 



training inputs and outputs. 

A maximum of 4000 pro- 
cessing elements with a total of 
16,000 connections are pro- 
vided. On an IBM PC AT with 
an 80287 math coprocessor, 
a maximum of 32,000 connec- 
tions per second can be 
made. 

NeuralWare also sells 
Solution Packs, a tutorial tool 
that lets you examine 
Rosenblatt's classic Perceptron 
neural model and Hop- 
field's Cross-Bar Associative 
Network. 

NeuralWorks runs on 
IBM PCs or compatibles with 
at least 5 12K bytes of RAM 
and a graphics monitor. 
Price: $99; Solution Packs, 
$49. 

Contact: NeuralWare Inc., 
103 Buckskin Court, 
Sewickley, PA 15143, (412) 
741-7699. 
Inquiry 578. 

NetWurkz for the IBM 
PC is a neural-network 
tutorial. It models associa- 
tive memory to find the nearest 
match to your input word. 
The emulator is limited to 
about 1000 neurons. The 
program comes with a PL/D 
compiler (NetWurkz is em- 
bedded within the PL/D lan- 
guage as data statements). 
The program also comes with 
source code. 

To run NetWurkz, you 
need an IBM PC, XT, AT, or 
compatible with at least 
256K bytes of RAM. 
Price: $79.95. 
Contact: DAIR Computer 
Systems, 3440 Kenneth Dr., 
Palo Alto, CA 94303, (415) 
494-7081. 
Inquiry 579. 



Turn Your AT into a 
Neurocomputer 

The Anza coprocessor 
board from Hecht-Nielsen 
Neurocomputer Corp. 
transforms any IBM PC AT or 
compatible into a neuro- 
computer that's capable of im- 
plementing a neural net- 
work. The Anza uses a 68020 
processor and a 68881 
floating-point coprocessor, 
along with 4 megabytes of 




The VAXstation 2000 displays 1024- by 864- pixel color. 



one-wait-state RAM. 

The system can imple- 
ment neural networks contain- 
ing up to 30,000 processing 
elements (neurons) with up to 
480,000 interconnects. It 
can update the interconnects at 
25 ,000 interconnects per 
second during learning and at 
45,000 interconnects per 
second in feed-forward mode. 

Software supplied with 
the Anza includes the User In- 
terface Subroutine Library 
(UISL) and five Basic Netware 
Packages. The UISL is a 
collection of instructions that 
provide access to all Anza 
functions from within pro- 
grams written in C, Pascal, 
FORTRAN, and BASIC. Each 
of the five Basic Netware 
Packages is a generic, user- 
configurable implementa- 
tion of a basic network para- 
digm specifying the 
interconnection structure of the 
network and the form of the 
differential equations that de- 
termine the behavior of the 
individual processing ele- 
ments. You can customize 
the Netware Packages to fit 
specific applications by 
modifying the number of neu- 
rons, their initial state and 
weight values, learning rates, 
and time constants. 

The Anza is available 
both as a board/software pack- 
age alone or bundled with a 
10-MHz Zenith Z-248 AT- 
compatible with a 20- or 
40-megabyte hard disk drive, 
an EGA board, and a moni- 
tor. In addition, the com- 
pany offers three different 
training courses on working 



with neural networks. 
Price: Board alone, $9500; 
with Z-248 and 20-megabyte 
hard disk drive, $14,950; 
with Z-248 and 40-megabyte 
hard disk drive, $18,950. 
Contact: Hecht-Nielsen 
Neurocomputer Corp., 5893 
Oberlin Dr. , San Diego, 
CA 92121, (619) 546-8877. 
Inquiry 581. 



Low-Cost Color VAX 

Digital Equipment 
Corp.'s VAXstation 2000 
is a four-plane workstation 
(i.e., it has 16 simultaneous 
colors) with graphics reso- 
lution of 1024 by 864 pixels. 
The system's processor is 
the Micro VAX II chip set, and 
its proprietary graphics chip 
set is the same one used in the 
VAXstation II/GPX. 

Two versions are avail- 
able. The entry-level system in- 
cludes the Micro VAX II 
chip set running at 20 MHz 
with a floating-point unit, 4 
megabytes of RAM, a built-in 
Ethernet adapter, three-button 
mouse, keyboard, 15 -inch 
color monitor, and software. A 
42-megaby te hard disk 
driver is also available. 

The advanced system in- 
cludes a 19-inch color monitor. 
All systems include one- 
year on-site warranty service. 
Price: Entry-level version, 
$4600; with 19-inch monitor, 
$5400; with hard disk 
drive, $10,950. 
Contact: Digital Equip- 
ment Corp., The Mill, May- 
nard, MA 01754-2571, 
(617)897-5111. 
Inquiry 580. 



A Disk Named 
Patrick Henry 

Patriotic themes abound 
in a company named 1 776 
Inc. Case in point: Patrick 
Henry, a high-capacity hard 
disk-caching system with 
an average access time that the 
company claims is between 
0.5 and 7 milliseconds, de- 
pending on system config- 
uration. Tuning software in- 
cluded with the system lets 
you increase its performance by 
adjusting the cache to the 
application you're using; it 
guarantees that critical files 
will always be found in the 
cache when needed. 

The system uses SCSI for 
connecting to the host and 
ESDI (enhanced small de- 
vice interface) for intercommu- 
nicating among drives with- 
in a multidrive system. Data is 
transferred to the host at 1.2 
megabytes per second. A 
68000 processor provides 
intelligence for the system. Pat- 
rick Henry is compatible, 
with MS-DOS, Novell Ad- 
vanced Netware, and MS- 
DOS networks. The company 
has plans for Unix and 
Xenix compatibility in the near 
future. 

Patrick Henry's built-in 
fault tolerance automatically re- 
allocates disk space when 
bad sectors are suspected. It 
also keeps duplicate copies 
of the directories and file-allo- 
cation tables. The system's 
security features let you divide 
the disk into up to 256 pass- 
word-protected sections. 

Systems are available in 
capacities ranging from 70 
megabytes to 1280 mega- 
bytes, with cache sizes from 
512K bytes to 16.5 mega- 
bytes. Tape backup is available 
in 60- and 1 20-megabyte 
sizes. 

Price: $9900 to $64,700. 
Contact: 1776 Inc., 4522 
MuriettaAve., Suite 700, 
Sherman Oaks, CA 91423, 
(818)789-2004. 
Inquiry 582. 

continued 



46 BYTE- OCTOBER 1987 



© 1987 MathSoft, Inc. All rights reserved. 










p % 



ay 



<tt 



Wk 



6.7*7 

2L v(& - a%t 



/ 
6 | v// 






^*t*>^ 



5V/7W ~3 zz6 





*&£&? 






ztiriferr- 



/ 11 



. p^ ^ jfL^ t—f-- 4 ■ fr \ ^^^ 

— A- A- tP~- i£— *^»^?!S 




Now you can calculate onyour PC 
withthe same freedom you have on papp! 



MathCAD. The first software that 
lets you do calculations on your PC as simply 
as on a scratchpad. Just define your variables 
and enter your formulas anywhere on the 
screen. MathCAD not only formats your 
equations as they're typed, it instantly calcu- 
lates the results, and displays your work in 
real math notation. 

But MathCAD is more than an 
equation solver. In addition to the usual trigo- 
nometric and exponential functions, it in- 
cludes built-in statistical functions, cubic 
splines, Fourier transforms, Bessel functions, 
and more. It also handles complex numbers 
and unit conversions in a completely trans- 
parent way. 




And here's the best news. 
Even with all this power, MathCAD 
is so easy to learn, you'll be 
using it in an hour. With 
MathCAD you can 
concentrate imme- 
diately on your 
problem, not your 
computer. 

What kind of calculations 
can you do with MathCAD? Anything you 
have a formula for— from working out your 
mortgage payments to solving a heat transfer 
problem, or modeling electrical circuit 
parameters. 

You can display your results as 
numbers, tables, or graphs, and combine 
them just like you do on paper. Add text 

New features in MathCAD 2.0 

This major MathCAD upgrade includes such new 
features as: built-in equation solver • full matrix 
operations • two- to four-times increase in calcula- 
tion speed • easier full-page text processing • auto- 
scaled plots • memory enhancements • additional 
printer and plotter support • and more. Call for 
detailed spec sheet. 

Circle 164 on Reader Service Card 




anywhere 
to support 
your work. 
And try an 
unlimited num- 
ber of "what-ifs." 
MathCAD lets you 
see and record every 
step. Then print your 
entire calculation in 
standard math notation as 
an integrated document that 
anyone can understand. 
Why spend another minute doing 
calculations by hand or writing and debug- 
ging programs? Put MathCAD to work for you 
now. Call today for further information and 
the name of a MathCAD dealer near you. 

1-800-MathCAD 

(In Massachusetts: 617-577-1017) 

MathCAD 

MathSoft, Inc., 1 Kendall Sq., Cambridge, MA 02139 

Requires IBM PC 9 or compatible. 512KB RAM, graphics card. 
IBM PC* International Business Machines Corporation. 
MalhCAD™ MalhSoft, Inc. 



WHAT'S NEW 



NEC Upgrades 
Laptop Screen 

The NEC MultiSpeed 
EL is an upgraded version 
of the NEC MultiSpeed lap- 
top computer. As its name im- 
plies, it now has an electro- 
luminescent, backlit, 
supertwist LCD screen. 
The screen provides you with a 
full 80 characters by 25 
lines with an aspect ratio of 1 .6 
to 1 and a resolution of 640 
by 200 pixels. 

Also new on the Multi- 
Speed EL are brightness and 
contrast controls on the 
screen panel, a friction lock 
that holds the screen at the 
angle you choose, on/off 
switching of LCD back- 
lighting, and automatic screen 
power-off. NEC claims a 
battery life of 4 hours. 

If you own an original 
NEC MultiSpieed, you can up- 
grade your system to the 
new screen. Some early serial 
numbers have to be returned 
to the factory for upgrade. The 
rest can be upgraded either 
by the owner or by your local 
dealer. 

Price: $2500; screen up- 
grade, $499. 

Contact: NEC Home Elec- 
tronics, 1255 Michael Dr., 
Wood Dale, IL 601 91, 
(312)860-9500. 
Inquiry 583. 



Artificial Intelligence 
Applied to Statistical 
Forecasting 

Forecast Pro is an ex- 
pert-system time-series 
forecasting program from 
Business Forecast Systems, the 
company that released Fore- 
cast Master. BFS reports that 
with Forecast Pro, prior 
knowledge of statistics is not 
necessary. 

Artificial intelligence is 
used to guide you through a 
series of steps, or modules, 
that make up the forecasting 
process. Techniques include 
exponential smoothing, Box- 
Jenkins, and dynamic re- 
gression. The expert-system 




NEC adds an electroluminescent screen to the MultiSpeed. 



analysis feature performs 
statistical tests on the data and 
determines the characteris- 
tics and the power of potential 
explanatory variables or 
leading indicators. The system 
then describes the data sta- 
tistically, recommends an ap- 
propriate method, and ex- 
plains its reasoning. 

Once you've chosen the 
forecasting procedure, auto- 
matic fitting options let you 
choose and optimize the model 
parameters. The program 
presents and interprets fitting 
diagnostics and can suggest 
a route to improve the model. 
You can also make your 
own decision at any time. 

A set of diagnostic 
screens helps you compare dif- 
ferent models. Other fea- 
tures include a full-screen 
time-series editor, graphics, 
user-defined variables, color 
capability, and batch-pro- 
cessing capability. The graph- 
ics facility lets you compare 
several forecasts and time 
series on the same plot with 
scaling options. You can output 
them to a variety of graphics 
devices or save them for inter- 
active editing. 

BFS is directing the pro- 
gram toward academic use as 
much as general business 
applications. 

Forecast Pro runs on 
IBM PCs, XTs, ATs, and com- 
patibles with at least 512K 



bytes of RAM and two disk 
drives. It also runs on the 
IBM PS/2 series and supports 
VGA graphics. An Intel 
math coprocessor chip is 
recommended. 
Price: $495; academic 
price, $195. 

Contact: Business Forecast 
Systems Inc. , 55 Wheeler St. , 
Cambridge, MA 02138, 
(617) 354-3745. 
Inquiry 584. 



Low-Cost PC-Based 
Telephone Management 

BigmOuth from Talking 
Technology is a digital re- 
cording and telephone man- 
agement system for IBM PCs 
and compatibles. It consists 
of a half-length card, software, 
telephone cables, and an ex- 
ternal speaker. 

BigmOuth's features in- 
clude basic answering-machine 
capabilities and personal 
messaging, which gives users 
private mail boxes. The sys- 
tem can store up to 1000 mes- 
sages, and you can retrieve 
them either locally or remotely 
from any Touch-tone tele- 
phone. The unit can also for- 
ward messages to other tele- 
phones and deliver messages at 
a prearranged time. 



Software that comes with 
BigmOuth includes an auto- 
dialer with a database and 
an automatic activity log. All 
messages and hang-ups are 
stamped with the time, date, 
and a description of the 
activity. 

To use BigmOuth, you 
need 256K bytes of RAM and 
at least two floppy disk 
drives, although a hard disk 
drive is recommended. 
Talking Technology also offers 
a licensing program for de- 
velopers who want to integrate 
BigmOuth's voice features 
into their software. 
Price: $239. 

Contact: Talking Technol- 
ogy Inc., 6558 Lucas Ave. 
#301, Oakland, CA 94611, 
(415) 339-8255. 
Inquiry 585. 



Updated Dot-Matrix/ 
Daisy-Wheel Combo 

Brother International' s 
latest incarnation of its 
Twinriter— the Twinriter 
6— combines faster dot-matrix 
and daisy-wheel printheads 
side by side in the same 
printer. The unit's daisy- 
wheel element prints at 36 
characters per second, 
while the dot-matrix part of the 
system prints at 200 cps. 
The twin heads allow true let- 
ter-quality text and graphics 
to be mixed on the same page. 

The Twinriter 6 prints up 
to 36 columns bidirectionally 
and supports the IBM ex- 
tended character set in both let- 
ter-quality and draft modes. 
Options include a forms trac- 
tor, a single-bin sheet feed- 
er, and a triple-bin sheet/ 
envelope feeder. A parallel 
Centronics interface is stan- 
dard, and an RS-232C 
serial interface is available. 
Price: $1395; forms trac- 
tor, $169; single-bin sheet 
feeder, $325; triple-bin 
sheet feeder, $599. 
Contact: Brother Interna- 
tional Corp . , 8 Corporate 
Place, Piscataway, NJ 
08854,(201)981-0300. 
Inquiry 586. 

continued 



48 BYTE • OCTOBER 1987 



THE WORLD'S SMARTEST 
ANSWERING MACHINE 



PERSONAL VOICE MAIL 

"Hello. I'm not available right now. Please 
wait for the tone and leave a detailed 
message. Touch the star to listen to what 
you've recorded'.' 

PERSONAL MESSAGES 
FOR FREQUENT CALLERS 

"Hello, I'm not ...Q... Dad! I'm not here, 
but my computer knows exactly where I am 
and will pass your message on to me 
immediately. Wait for the tone and tell me 
where you are. I'll call you right back" 

REALLY PERSONAL MESSAGES 
FOR FREQUENT CALLERS 

"Hello, I'm not aval ...Q... Anne! 
Sweetheart! I'm in the car, picking up your 
flowers. My earphone number is 993-1234 
if you need me. Otherwise, see you at 
seven. Kiss-kiss-kiss!" 

MESSAGE FORWARDING 

"Hello. This is your answering machine 
calling. . . Q. . . Three new messages. 
Message one was received at 3:52PM 
today'.' 



Answering machines are irritating 
because they are so dumb. Even 
the best of them. For only $349, 
we'll give you personal voice mail for 
your PC, and turn it into the world's 
smartest answering machine. All 
without disturbing whatever else you've 
been doing on the PC. 

How smart is "smartest?" The 
examples above . . . uh . . . speak for 
themselves. Sure, your PC can answer 
the phone in your voice, and let you 
retrieve messages remotely from any 
touch-tone phone. And it can call you 
to deliver your messages. 

But give your friends and associates 
their own voice mailboxes. The ability 
to interrupt your greeting and start 
recording immediately. To deliver 
messages to each other as well as to 
you. The ability to transfer to other 
extensions. Even let them change their 
minds and their messages. Give them 

Circle 55 on Reader Service Card 




MULTIPLE VOICE MAIL BOXES 

"Hi. This is the operating systems group. 
We're out to lunch, but you can leave a 
private message by dialing II for Diane, 12 
for June, 13 for Joel and 14 for Bob. Or you 
can wait for the tone to leave a message for 
our secretaiy'! 

INCREASED SECRETARIAL PRODUCTIVITY 

"This is Gene's voice mailbox. Please wait 
for the tone and leave a message. My 
computer knows where I am at all times and 
will call me immediately with your message. 
If you need to speak to someone right away, 
touch zero to transfer to my secretaiy'.' 

DON'T FORGET MOM! 

"This is Chip. Please . . . Q. . . Hi, Mom. I've 
been waiting for your call. How's Europe? 
Thanks for remembering my birthday. Sony 
I missed you, but I had to run some 
errands. See you Thursday at the airport'.' 

OUTGOING MESSAGES 

"This is Joel's computer calling. Just a 
reminder for Lynne and Rick — We have a 
budget review tomorrow morning at 8:00 
o'clock. See you there'.' 



all this and you'll never again have to 
apologize for making people talk to a 
machine. 

In your business, it will relieve your 
secretary of the burden of taking 
routine messages. And relieve you of 
the burden of transposed telephone 
numbers. In business or in personal use, 
it works 24 hours a day. Without 
irritating your callers like mere 
answering machines do. All while 
you're running your spreadsheet, word 
processor or just about anything else. 



We call the world's smartest 
answering machine "CAM!' For 
Complete Answering Machine. We call 
ourselves The Complete PC. And CAM 
is just the beginning of a whole line of 
smart products designed to help you get 
more from your personal computer. 

You should call (800) 634-5558 
today for the name of the CAM dealer* 
nearest you. 

So tomorrow, you can give your old 
answering machine to someone who 
doesn't mind annoying people. 




il -IIECOMPMSTEF 

More from your personal computer 

521 Cottonwood Drive • Milpitas, California 95035 
408 434-0145 • 800 634-5558 • FAX 408 434-1048 

© 1987 by The Complete PC. Inc. w Complete Answering Machine'" CAM" are trademarks oflhe Complete PC. Ads by TRBA 

*CAM is available now from: R + R Direct (800-654-7587) • Radio Shack (Cat. No. 90-2137) 

OCTOBER 1987 -BYTE 49 



WHATS NEW 



Al Development 
Environment 

KnowledgePro, an arti- 
ficial intelligence pro- 
gramming environment, in- 
cludes hypertext capabilities, 
rules, and a list-processing 
language. Its hypertext capabil- 
ities enable you to present 
information in nonlinear form. 
You can display a screen of 
text with certain words or 
phrases highlighted, and the 
reader can follow that train of 
thought to other screens, 
which may also have high- 
lighted phrases. You can 
also program any set of instruc- 
tions (i.e., rules) or areas of 
the knowledge base to be acti- 
vated when the reader se- 
lects specified concepts. 

A "topic" organizes in- 
formation into conceptual units 
containing a hierarchical 
structure. Each predefined 
command acts like a built-in 
topic, and each topic you write 
behaves like a system com- 
mand. Topics include name, 
contents, descriptions, and 
machinery; and each can be- 
have like a frame, object, 
function, command, or 
variable. 

KnowledgePro lets you 
use rules and commands to ma- 
nipulate words or word 
lists, change window colors, 
perform calculations, and 
access external files. 

The program includes 
macro capabilities, a built-in 
text editor, mouse support, 
and sample knowledge bases. 

Knowledge Garden used 
its KnowledgePro environment 
to create KnowledgeMaker, 
an induction program. It can 
extract IF. . .THEN rules 
from raw data and convert the 
rules into Turbo Prolog, In- 
sight 2 + , M. 1 , MicroExpert, 
and KnowledgePro formats. 

KnowledgeMaker accepts 
data from Lotus 1-2-3 and 
databases and outputs 
IF . . . THEN statements, or 
you can use data from other 
programs and output rules in 
English. Lotus 1-2-3 files 
are read without an interface or 
conversion procedure. 

Both KnowledgeMaker 
and KnowledgePro run on IBM 
PCs, XTs, ATs, and com- 




Hypertext in operation as part of KnowledgePro. 



patibles with MS-DOS or PC- 
DOS 2.1 or higher, 51 2K 
bytes of RAM, and two floppy 
disk drives, although the 
company recommends a hard 
disk drive. KnowledgePro 
also comes with source code, 
and it is not copy-protected. 
Price: KnowledgePro, 
$495; KnowledgeMaker, $99. 
Contact: Knowledge Gar- 
den Inc., 473A Maiden Bridge 
Rd., Nassau, NY 12123, 
(518)766-3000. 
Inquiry 587. 



Microsoft Announces 
Works for the PC 

PC-Works combines 
word-processing, spread- 
sheet, database, reporting, 
charting, and communications 
modules, along with graph- 
ics, a spelling checker, and 
macros. You can copy data 
between modules or receive in- 
formation over the commu- 
nications module and place it in 
another module. 

The word-processing 
module is basically Word 2.0, 
according to Microsoft, but 
without the style sheets, glos- 
saries, divisions, and multi- 
ple columns. It has an undo 
command and a mailing- 
label facility, and it features the 
same font support and 
printer drivers as Microsoft 
Word. 

The spreadsheet, which 



has 256 columns by 4096 rows, 
functions like Lotus 1-2-3. 
It offers names, macros, and 
freeze-title capabilities. PC- 
Works does not include such 
Lotus 1-2-3 features as 
tables, distribution ranges, 
automatic series, and label- 
range justifications, but it does 
provide numeric alignment, 
cell printing styles, and the 
ability to print in different 
fonts. 

The charting interface, 
which is also similar to that of 
1-2-3, lets you chart work- 
sheets with overlapped bars 
and line charts with differ- 
ent scales. Eight graph types 
are included. 

With the report module, 
you can break up reports into 
three levels and perform 
several statistical functions, in- 
cluding cumulative or non- 
cumulative functions over any 
break level. Summary re- 
ports are also an option. 

The in-memory and non- 
relational database allows 4096 
records and 256 fields and 
features form and list views. 
Also allowed are calculated 
fields, Boolean logic, and three 
concurrent sorts. 

The program runs in 
character mode rather than 
graphics mode in all mod- 
ules except charting. PC- 
Works uses pull-down Win- 
dows-like menus, and the 
mouse is supported for se- 
lection, scrolling, and com- 
mand or dialog item selec- 
tions. Communications 
facilities include auto- 



logon, VT-100, and Xmodem. 

PC-Works is designed to 
run on 8086/8088 IBM PCs 
and compatibles with 512K 
bytes of RAM, two 360K-byte 
floppy disk drives or one 
720K-byte drive, and a CGA or 
Hercules card. The pro- 
gram is not copy-protected. 
Price: $195. 

Contact: Microsoft Corp., 
P.O. Box 97017, Redmond, 
WA 98073-9717, (206) 
882-8080. 
Inquiry 588. 



C Library 

C -Worthy from Solution 
Systems is a C library that 
works with most C com- 
pilers. The program-callable 
subroutines and develop- 
ment utilities automate pro- 
gram-development tasks. 

Screen display of text, 
error messages, and help 
screens are held in separate 
files. Windowing facilities 
make use of virtual screens 
as well as physical screens. 
Keyboard-handling routines 
offer text windows that de- 
scribe the next step. A 
word-wrapping text editor is 
featured, along with pop- 
up, Lotus-style, and Windows- 
style menus. Error check- 
ing is done automatically with 
a call to a single library rou- 
tine. A DOS interface acts as 
the interface to the operat- 
ing system and takes care of 
such functions as setting 
date and time through the lock- 
ing of a variable-length 
record in a file. 

Solution Systems reports 
that C-Worthy runs on IBM 
PCs and compatibles, PS/2 
machines, and incompatible 
MS-DOS-based systems. 
Price: $295; $495 with 
source code. 

Contact: Solution Systems, 
541 Main St., Suite 410, South 
Weymouth, MA 02190, 
(800) 821-2492; in Massachu- 
setts, (617) 337-6963. 
Inquiry 589. 

continued 



50 BYTE • OCTOBER 1987 





Sharpen 
Your Image 

800 x 600 EGA 



• 100% Multisync Compatible 

• CGA DoubleScan (just like 
IBM's new VGA!) 

• Drivers for AutoCAD, 
Windows, GEM, Ventura, 
Pagemaker and more. 



• 100% IBM EGA Compatible 

• 132 Column Drivers for Lotus 
1-2-3 and Symphony 

• 80 x 66 for Desktop 
Publishing 



DESKTOP 
PUBLISHING 




Genoa's SuperEGA™ board is the easiest way to get the best out 
of your high-resolution monitor— and the popular CADICAM 
and desktop publishing programs. And, SuperEGA also sup- 
ports CGA, CGA DoubleScan (to 640x400), MDA, Hercules, 
and EGA, thanks to Genoa's exclusive AutoSync™ capability 
So now you can get high performance at a reasonable cost— 
and look sharp! 



y stems Corporation 



' SuperEGA and AutoSync are trademarks of Genoa 
Systems Corporation, Multisync is a trademark of NEC 
Home Electronics. Lotus 1-2-3 and Symphony— Lotus 
Development Corporation; Hercules — Hercules Com- 
puter Technology, Windows-- Microsoft; GEM— Digital 
Research, inc.; AutoCAD— AutoDesk, inc.; Ventura — Xerox 
Corporation; Pagemaker— Aidus Corporation. 




Genoa 

SYSTEMS CORPORATION 



73 E. Trimble Road, San Jose, CA 95131 
FAX: 408-434-0997 Telex: 172319 
Circle 112 on Reader Service Card Telephone: 408-432-9090 



WHAT'S NEW 



SYSTEMS 



Under-$2000 
80386 System 

Advanced Logic Re- 
search's 80386 product 
line includes the ALR 
386/2 Model 10, a $1990 sys- 
tem. The Model 10 includes 
1 megabyte of 32-bit 80-nano- 
second RAM, expandable 
to 2 megabytes on the system 
board. Also included is a 
single 1.2 -megabyte floppy 
disk drive, single serial and 
parallel ports, and a Phoenix 
BIOS. 

In addition to the entry- 
level Model 10, the 386/2 is 
available as Models 40, 80, 
and 130, with hard disk drives 
of corresponding capacities. 
All have 2 megabytes of RAM 
and a hard disk controller 
that features 1 -to- 1 interleave 
and on-board caching. 

All models of the 386/2 
come with 101 -key keyboards 
and eight full-length expan- 
sion slots: two 32-bit, four 16- 
bit, and two 8-bit. Optional 
accessories include an EGA 
and a high-resolution color 
monitor. 

Price: $1990; with 40- 
megabyte hard disk drive, 
$3990; with 70-megabyte 
drive, $4690; with 130-mega- 
byte drive, $7299. 
Contact: Advanced Logic 
Research Inc., 10 Chrysler, 
Irvine, CA 92718, (714) 
581-6770. 
Inquiry 590. 



High-Speed, Low- 
Cost Workstation 

Sun Microsystems' Sun- 
3/60 is a 68020-based 
Unix system that runs at 3 
million instructions per second 
(MIPS) and can be ex- 
panded to 24 megabytes of 
main memory. The com- 
pany claims that using the 
Dhrystone benchmark, the 
3/60 performs at approximately 
three times the speed of the 
VAX-1 1/780. 

In addition to the 20- 
MHz 68020, the 3/60's stan- 
dard configuration includes 
a 68881 floating-point co- 




The Sun 3/60 runs at 3 MIPS and can take 24 megabytes of RAM. 



processor, 4 megabytes of 
200-nanosecond RAM, two 
RS-423C serial ports, an 
SCSI port, and both standard 
and thin-cable Ethernet in- 
terfaces. Mass storage options 
include 71- or 141 -mega- 
byte hard disk drives and a 60- 
megabyte tape-backup unit. 
Also standard is an optical 
mouse. 

Both color and mono- 
chrome display options are 
available, including three 
monochrome monitors with 
resolutions of up to 1600 by 
1280. Both 16-inch and 19- 
inch color monitors are 
available, with 1 152- by 900- 
pixel by 8-bit resolution, 
along with a monochrome 
plane. 

In addition to the Unix 
operating system, the 3/60 in- 
cludes the SunPro program- 
ming environment, the Sun- 
View window-management 
and interface-development sys- 
tem, and the SunCore and 
SunCGI graphics libraries. 
Also available is the 
SunGKS graphics library, as 
well as C, FORTRAN-77, 
Pascal, and Modula-2. 
Price: Entry-level diskless 
system, $4995; with 141 -mega- 
byte hard disk drive and 
tape backup, $12,400. 
Contact: Sun Microsystems 
Inc., 2550 Garcia Ave., Moun- 
tain View, CA 94043, (415) 
691-1300. 
Inquiry 591. 



Heavy-Duty 
AT-Compatible 

Designed for withstand- 
ing hazards and harsh en- 
vironments, the Heath/Zen- 
ith SW-3000 is an IBM PC 
AT-compatible, 80286- 
based system that operates at 8 
MHz with no wait states. 
The system's standard features 
include 512K bytes of 
RAM, a single 1.2-megabyte 
floppy disk drive, and a 20- 
megabyte hard disk drive. A 
socket for an optional 
80287 numeric coprocessor is 
included as well. 

Other standard features 
of the SW-3000 include serial 
and parallel ports, six 
expansion slots, and a video 
card that supports mono- 
chrome display adapter-, 
CGA-, EGA-, and Hercu- 
les-compatible displays. 

The SW-3000 can be 
rack-mounted for laboratory or 
production-area use. A fil- 
tered fan maintains positive air 
pressure within the cabinet 
to keep dust and dirt from en- 
tering, and the keyboard is 
impervious to dust, dirt, and 
liquids. 

Along with the computer, 
you'll need an SW-3010 Indus- 
trial Monitor, a 13 -inch 
EGA-compatible monitor that 
supports dual-scan fre- 
quency outputs of 15.75 kilo- 
hertz and 21.8 kHz for res- 
olution of up to 640 by 350 
pixels. The monitor is 
housed in a metal cabinet, and, 
like the computer, it has a 



filter-equipped fan that main- 
tains positive air pressure. 
It's also rack-mountable. 
Price: SW-3000, $4500; 
SW-3010, $900. 
Contact: Heath/Zenith, 
Computer-Based Instruments, 
Hilltop Rd., St. Joseph, MI 
49085,(616)982-3200. 
Inquiry 592. 



Tl Upgrades Explorer 

Texas Instruments' Ex- 
plorer II system is built 
around TI's proprietary 32- 
bit Explorer Lisp microproces- 
sor. The company claims 
the system provides more than 
5 times the performance of 
previous Explorer systems. 
The Explorer Lisp micro- 
processor integrates 60 percent 
of the original two-board 
Explorer processor onto a sin- 
gle custom chip, packing 
more than 553,000 transistors 
into a 1 -square-centimeter 
area, more than 2.5 times as 
dense as the 68020. Pipe- 
lined architecture provides exe- 
cution of microinstructions 
and many of the more complex 
Lisp macroinstructions in a 
single clock cycle. 

The Explorer II system in- 
tegrates Lisp and Unix by com- 
bining an Explorer II proces- 
sor with a 68020 processor 
running Unix System V. The 
Explorer II processor comprises 
the Explorer Lisp Micro- 
processor, 32,000 words of 
writable control store, and 
two high-speed cache memories. 

The system includes a 
three-button mouse and a 17- 
inch monochrome monitor 
with 1024- by 808-pixel 
resolution. 

Owners of the original 
Explorer systems can upgrade 
their systems with the Ex- 
plorer II processor kit. 
Price: $49,900 to $99,900; 
processor upgrade, $20,000. 
Contact: Texas Instruments 
Inc. , Data Systems Group, 
P.O. Box 809063, DSG- 
141, Dallas, TX 75380-9063, 
(800) 527-3500. 
Inquiry 593. 

continued 



52 BYTE- OCTOBER 1987 




■ Data Processing ■ Word Processing ■ Info. Processing. 
And Now. The Wheel Calculation Processor. 

There's absolutely nothing like it on the market today. 

The full power of the IBM PC and the extraordinary ease of 
a calculator. Full screen operations and editing with text remarks. 
On-screen guidance. Create your own files library. For the first 
time, it's all in your language. You see what you're doing and you're 
doing what comes naturally You're rolling along the moment your 
fingers touch the keys. The Wheel is so easy to use, you don't 
even have to open your user's guide. 



p> 




©• 

V 



the 
DAILY 

WHEEL 

List price: $99' 95 
Now $59-95 



Calculation Processor (Pop-up*) 

■ Arithmetic calc. ■ Ft.-inch calc. 

■ Repetitive calc. ■ And much more! 
Unit Conversion (Pop-up*) 
Length, Area, Volume, Weight, Angles, 
Temperatures. 

Calculation Editor 




Trademarks/Owners ■ IBM PC, XT, AT, PC-DOS/IBM Corp.; 
MS-DOS/Microsoft Corp.; Hercules/Hercules Dev. Tech. Corp. 



the^ 
SCIENTIFIC 

WHEEL 

List price: $99- 95 Now $59- 95 

Scientific Calculation Processor (Pop-up*) 

■ Mathematical calculations using built-in log., 
trig., hyperbolic functions. ■ Repetitive 
calculations with one variable and predefined 
multi-variable functions and constants. 

Unit Conversion (Pop-up*) 

Length, Are*a, Volume, Weight, Angles, 

Temperatures, Base N. 

Function Analysis [y=f (x)] 

On one screen, fully interactive, easy: 

■ Solving (x=0; y=0) ■ Analyzing max. 
and min. ■ Calculating f (x), derivatives (/) 
and integrals ■ Plus full-screen graphs. 

• Pop-up: Memory resident service programs, 
operating with all major software. 

System requirements ■ For IBM PC/XT/ AT or fully 
compatibles. 

■ PC-DOS (MS-DOS) 2.0 or later. One floppy drive. 
256K for Daily/Scientific; 384K for Professional. For 
graphics: CGA, EGA or Hercules or fully compatibles. 

Introductory off er- good through Oct. 30, 1987. 

Not copy protected. 

30-Day Money Back Guarantee. 

Additional discount for bulk orders. 
Call our main office today! 

'Add shipping charge: $5 - California residents: add sates tax. 

Circle 76 on Reader Service Card 



the 
PROFESSIONAL 

WHEEL 

List price: $199- 95 
Now $158-95 
Special Introductory Offer: 
The Scientific Wheel.FREE! 

Calculation Editor 

All features of Daily Wheel Editor plus sophis- 
ticated, easy-to-use file library organizer. 
Function Calculations 
Create your own functions and constants 
library, including notes and use it to make your 
calculations easier, faster and more accurate. 
Extended Unit Conversion 
Length, Area, Volume, Weight, Angles, 
Temperature, Velocity, Flow, Density, Viscosity, 
Pressure, Power, Energy. 
Statistical Analysis 

Fully interactive processing in your natural 
environment. Designed by engineers for 
scientists, engineers and other professionals. 




Plus, Print-Outs for reports and Files: easy file 
library organizer, Save/Load, rename, delete, etc. 
Visa and Master Card only. 

Get Rolling Right Now! 

Call: 800-533-9533 

dalin inc. 

applications software 

16421 Clymer Ave., Granada Hills 
Calif. 91344. Tel: (818) 360-7058 



WHAT'S NEW 



PERIPHERALS 



Floppy Disks 
with 5.5 Megabytes 

Based on Kodak's 6.6- 
megabyte high-density 
floppy disk drive, the Peli- 
can 6.6 stores 5.5 megabytes 
(formatted) of data on spe- 
cial Verbatim floppy disks. 
The Pelican includes a high- 
speed controller card with 
5 12K bytes of its own cache 
memory. By buffering data to 
and from the drive, the 
cache gives the system an ef- 
fective access time of 85 
milliseconds. 

The drive uses hard disk- 
type head positioning and 
stores 384 tracks per inch. 
Data-transfer speed is 500,000 
bits per second. The Pelican 
will read from (but not write 
to) 3. 3 -megabyte, 1.2- 
megabyte, and 360K-byte 
disks. 

Both an internal mount 
and an external Pelican are 
available. The internal Peli- 
can fits into any half -height slot 
and uses the computer sys- 
tem's internal disk drive. The 
external model, which has a 
2 Va -inch-wide footprint, has its 
own power supply and cool- 
ing system. 

Price: Internal, $695; ex- 
ternal, $895; disks, approxi- 
mately $20 each. 
Contact: Pacific Micro 
Systems, 160 Gate 5 Rd., 
Sausalito, CA 94965, (415) 
331-2525. 
Inquiry 594. 



High-Speed Daisy- 
Wheel Printer 

Primages' 90-GTisa 
daisy-wheel character 
printer that prints at 90 
characters per second. The 
printer has a ribbon-sensing 
system that automatically shuts 
it down if a ribbon breaks. 
The company offers sev- 
eral 100-spoke wheels in a 
wide variety of type styles. 
Each wheel is capable of print- 
ing in 12 languages. Sheet 
and envelope feeders are also 
available. 





ID 


. 


- 


1 



The Pelican 6.6 stores 5.5 megabytes on a special floppy disk. 



Price: $1095. 

Contact: Primages Inc., 

1 5 1 Trade Zone Dr. , Ronkon- 

koma, NY 11779, (516) 

585-8200. 

Inquiry 595. 



Desktop Modem 
Uses MNP 

With the introduction 
ofitsMultiModem212E, 
MultiTech Systems has 
added hardware-based MNP 
error-detection and retrans- 
mission protocol to its 300-/ 
1200-bps desktop modem. 

The Hayes-compatible 
MultiModem212E can operate 
both synchronously and 
asynchronously. It can be set to 
run with or without MNP 
or to auto-detect MNP. Ac- 
cording to the company, use of 
MNP will pass up to 10 
percent more data through a 
connection in a given period 
of time. 
Price: $399. 

Contact: MultiTech Sys- 
tems, 82 Second Ave. SE, 
New Brighton, MN 551 12, 
(800) 328-9717; in Minnesota, 
(612)631-3550. 
Inquiry 596. 



High-Speed Personal 
Laser Printer 

The Model L1012 Per- 
sonal Laser Printer is a 
12-page-per-minute unit 
from Printronix. It emulates 
the HP LaserJet Plus, the 
Diablo 630, and the Epson FX- 
80 and comes with nine 
typefaces, each available in 
both normal and bold. 



Toner life is 2000 pages, 
developer and drum life is 
rated at 15,000 copies, and 
the optical filter and fusion unit 
has a rated life of 45 ,000 
copies. The printer is shipped 
with Quickset, a configura- 
tion software package. 
Price: $3495. 

Contact: Printronix, 17500 
CartwrightRd.,P.O. Box 
19559, Irvine, CA 92713- 
9559, (714) 863-1900. 
Inquiry 597. 



Overhead Palette 
Shows Color 

Telex Communications' 
MagnaByte 5220-1 is a 
computer-interfaced LCD 
for overhead projectors that has 
a new twist: color. The 
display takes the color output 
from an IBM PC or com- 
patible and turns it into an ap- 
proximate LCD color image 
for overhead projection. It will 
also work with mono- 
chrome-only systems, project- 
ing graphics in deep blue 
and yellow. 

No special software is re- 
quired for the MagnaByte. It 
comes complete with an 
LCD screen, a full-length plug- 
in board, and a slide-projec- 
tor-like remote control. The 
display weighs 6*/2 pounds 
and is fan-cooled. 
Price: $1580. 
Contact: Telex Communi- 
cations Inc., 9600 Aldrich 
Ave. S, Minneapolis, MN 
55420,(612)884-4051. 
Inquiry 598. 



Shadow Boasts 
Redundant Disks 

The Shadow is a high- 
capacity redundant data- 
storage system designed for 
use with IBM PC ATs and 
compatibles, the Macin- 
tosh, and Digital Q-Bus-based 
systems. 

Consisting of dual 86- 
megabyte or 170-megabyte 
hard disk drives, the Shad- 
ow also has two separate con- 
trollers and two separate 
power supplies. All data is si- 
multaneously written to 
both disks. 

If either a disk, control- 
ler, or power supply fails, the 
data continues to be read 
from and written to the other 
disk with no interruption 
and no loss of data. 

The company reports that 
the average access speed is 
under 30 ms. 
Price: Dual 86-megabyte 
drives, $4395; dual 170-mega- 
byte drives, $5995. 
Contact: Century Data 
Systems, Ford/Higgins Divi- 
sion, 1301 South Sunset 
St.,Longmont, CO 80501, 
(800) 262-6743; in Colorado, 
(714)999-2664. 
Inquiry 599. 



TurboVision Offers 
Big-Screen View 

AST Research's Turbo- 
Vision is a combination 
high-resolution graphics 
board and high-resolution full- 
page monitor designed pri- 
marily for desktop-publishing 
applications with IBM PCs, 
XTs, ATs, and compatibles. 

Turbo Vision's 15-inch 
full-page display has a resolu- 
tion of 1024 by 1280 (108 
pixels per inch) and uses 
"paper-white" phosphors. 
The monitor has a 107-MHz 
bandwidth, a 79.6-kHz scan 
rate, and a 60-hertz noninter- 
laced refresh rate. 
Price: $1995. 
Contact: AST Research, 
212 Alton Ave., Irvine, CA 
92714,(714)863-1333. 
Inquiry 600. 

continued 



54 BYTE- OCTOBER 1987 





30 DAY 
MONEYBACK 
GUARANTEE 



There are plenty of compatibles but none can 

match PROTEUS in IBM Compatibility, Speed, 

Reliability, Support & Delivery. 

PROTEUS SYSTEMS features: 

16MHz, Zero Wait State, 32-bit RAM 

Keyboard, Software, & Hardware 

selectable CPU speed & Wait States 

ROM based advanced Diagnostics. 

Norton SI: 23.5 !! 

Editor's Choice. 

"There are so many nice aspects to Proteus and the company 

that makes it, there isn't enough room to cover them all." 

Lawrence Oakley, 

Business Computer Digest, 3/87 

PROTEUS SYSTEMS ARE DESIGNED AND BUILT IN USA 

15-MONTH FULL WARRANTY, LABOR & PARTS INCLUDED 

FREE NATIONWIDE ON YOUR SITE SERVICE! 

24 HOUR ONLINE CUSTOMER SUPPORT 

100% COMPATIBILITY WITH DOS, UNIX, XENIX, AUTOCAD, NOVELL 



CHOOSE FROM THESE BEST HIGH SPEED 386 AND 286 SYSTEMS 



PROTEUS-386A 

• 80386 Intel CPU 16 MHz. Norton SI: 23.5 

• Zero Wait State, 64KB Cache 

• Keyboard Selectable Speed and Wait state 

• 1 Megabyte 32-bit RAM expandable to 
4MB on system board 

• 2 Serials, 1 Parallel Port 

• ROM Based Diagnostics & Setup 

• Onboard EGA Bios 

• Coprocessor Support 

• Hard Disk & Floppy Controller 

• Clock, CaL, & battery backup 

• 230W quality 11 0/220v power supply 

• 1.2MB Floppy Drive, Choice of 

• 3.5" Microfloppy 

• Enhanced Keyboard 

• 14" High Resolution Monitor 

• Here, compatible Mono graphics card 

• 40Mb Fast Hard Disk installed 
Price: $3995.00 

40MB EGA System $4495.00 

WE HAVE THE LARGEST SELECTION OF HARD DISKS, MONITORS 
AND ADAPTERS AT THE LOWEST PRICES. WE CUSTOM 
CONFIGURE AND TEST THE SYSTEMS EXTENSIVELY FOR YOU. 



PROTEUS-386i 

•80386-16 Intel CPU, 16 MHz. 

• 512KB 32-bit RAM expandable to 

• 16MB on Two 32-bit Slots 

• Keyboard Selectable Speeds 

• 80387 Coprocessor Socket 

• Serial, & Parallels on mainbd. 

• 230W, quality Power supply 110/220v 

• Hard Disk & Floppy Controller 

• 1.2MB Floppy Drive, choice of 

• 3.5" microfloppy 

• Hijjh Resolution Monochrome Monitor 

• Here. Compatible Mono adapter 

• Enhanced Keyboard 

• 40MB Fast Hard Disk Installed 

• Custom Configurations available 
Price: $3595.00 
40MB EGA System $3995.00 



HARD DISKS 



ADD-ONS 



20MB St. ay ate 
U)MU Squall 1 
WMHKnifime 
40MB Seagate 
42MB Minist rib*? 
44MB Priam 
BOMB Sim gate 
140 Maxtor 
)9Q -Max I or 



MONITORS 



High Resolution Monoehrom 
14 'Proteus. Mono Monitor 
1 1" Color Monitor 
14" Proteus FGA Monitor 

M ( Mulrisvm EGA Monitor 



S279 
S575 
S5t^ 
Sb49 
ShbS 
S795 
S985 
Seal! 
Scall 



sun 

$449 
Vib9 



Here. Compatible Mono card, S>% 

IBM Compatible Color card $% 

Proteus EGA, CCA, MDA card S2.S5 

Vega Delux EGA card 5*45 

ATI Wonder Card Scall 

80287-8 Coprocessor $249 

80207*10 Coproces Mir $369 

80387 Coprocessor Seal! 

1200B Omnitel Modem $109 

24()()BOmnitel Modem $239 

40MB Tape Backup ini $469 

f>0MB & 120MB Tape Ik kup $< all 

3. r v 720K Hnppv Dr. $175 

U)0K floppy Drive $109 



Terms: Visa/MC, COD, Prepayment with cash discount, University 
and Corporate POs accepted upon approval. Quantity discounts. 



IBM i- a iradt>m«irv. nt Imi-m.mmul 

Circle 225 on Reader Service Card 



PROTEUS-286E 

• Intel 80286, 6/8/10 MHz. 

• 1024K KAM on System board 

• 8 I/O slots 

• Coprocessor Socket 

• Clock, CaL, Battery backup 

• 195W110/220v power supply 

• Hard Disk & Floppy comb, controller 

• 2 Serials, Parallel Ports 

• 1.2MB Floppy Drive (reads both 

• 1.2MB and 360K floppy) 

• Maxiswitch AT Style Keyboard 

• Here. Compat. Graphics Adapter 

• Hij}h Resolution Monochrome Monitor 

• 20MB Seagate Hard Disk Installed 
Price: $1780.00 

"...Proteus 286e Is a clear winner. 



PROTEUS-286F 

• 10MHz ZERO Wait State System 

• 80286-10, 8/10MHz Keybd Select. 

• 1024 RAM. 

• 2 Serials & 1 Parallel Ports 

• 8 I/O Slots 

• Hard Disk & Floppy Controller 

• Clock, Cal. & Battery 

• 195VV Power supply 11 0/220v 

• 1.2MB Floppy Drive, reads 1.2MB 

• and 360K floppy. 

• Maxiswitch Keyboard 
Price: $1450.00 





The Intelligent Conclusion 




To order or for information call us 1-800-782-8387 

In New Jersey Call (201) 288 8629 
Telex 510 601 0960 
Proteus Technology Corp, 
377 Route 17, 
Airport 17 Center, 
Hasbrouck Heights, NJ 07604 

OCTOBER 1987 -BYTE 55 



When you want to talk computers.. 



ATARI COMPUTERS COMMODORE COMPUTERS MS/DOS SYSTEMS 



Atari Computers 

800 XL 64K Computer Call 

65XE 64K Computer 87.99 

130XE 132K Computer 139.00 

520ST Monochrome System 499.00 

520ST Color System 659.00 




ATARI SOFTWARE 



Atari 1040 *«„ 

Color System $ 859 

Includes: 1040ST, 1 mb RAM with 3Vfe" 
drive built-in, 192K ROM with TOS, Basic, 
ST language and color monitor. 
New 520ST FM is in stock Call 

Access 

Leaderboard Golf 24.99 

Accolade 

Fight Night 19.99 

Activision 

Music Studio 34.99 

Antic 

Cad 3-D 32.99 

Batteries Included 

Paperclip w/Spellpack 39.99 

Degas Elite 48.99 

Infocom 

Zork Trilogy 44.99 

Microprose 

Top Gunner 19.99 

Silent Service 24.99 

Optimized Systems 

Personal Pascal 47.99 

Origin Systems 

Ultima 4 XL/XE 39.99 

Paradox 

Wanderer (3-D) 27.99 

Psygnosis 

Deep Space 34.99 

Timeworks 

Wordwriter ST 48.99 

VIP 

Professional (GEM) 144.00 




COMMODORE SOFTWARE 



Amiga 500 System 

Includes: Amiga 500 CPU, 1 MB, 1080 
RGB Monitor, Amiga DOS, Mouse, 
Kaleidoscope On 1 1 

Commodore 128 259.00 

Commodore 128D 529.00 

Commodore 64C 179.00 

64C, 1541C, 1802C Package.... 599.00 

128, 1571, 2002 Package 759.00 

128D, 2002 Package 829.00 

Activision 

Gamestar Series (ea.) 28.99 

Broderbund 

The Print Shop 29.99 

The Toy Shop 39.99 

Commodore 

Textcraft w/Graphic Craft 59.99 

Assembler 79.99 

Enhancer DOS 1.2 14.99 

Discovery Software 

Marauder Back-up 32.99 

Electronic Arts 

Deluxe Paint II .'.97.99 

Deluxe Print 74.99 

Instant Music 34.99 

Deluxe Video 1.2 97.99 

Infocom 

Hitchhiker's Guide 28.99 

Micro Illusions 

Dynamic-Cad 349.00 

Mindscape 

Halley Project 34.99 

SAT Prep 51.99 

Micro Systems 

Analyze Version 2.0 119.00 

Scribble 66.99 

On-Line/Comm. 46.99 

Sublogic 

Flight Simulator 31.99 

V.I.P. 

V.I. P. Professional 112.00 



AT&T 6300 from $1299.00 

Compaq from 1699.00 

IBM-PS-2 Model 30 Call 

IBM-AT Enhanced from 3499.00 

Leading Edge from 999.00 

NEC Multispeed from 1499.00 

Toshiba 1000 Lap Top from 999.00 




PC-TOO 512K ^ „ 
AT-Compatible $ 999 

(Monitor Optional) 



MULTIFUNCTION CARDS 



AST 

Six Pak Plus PC/XT 129.00 

Hercules 

Color Card 159.00 

Graphics Card Plus 209.00 

Fifth Generation 

Logical Connection 256K 299.00 

Quadram 

Silver Quadboard 119.00 

Video 7 

EGA Video Deluxe 319.00 

Zuckerboard 

Color Card w/Parallel 89.99 

Ashton-Tate 

d-Base III + 399.00 

5th Generation 

Fastback Utility 89.99 

IMSI 

Optimouse w/Dr. Halo 99.99 

Lotus 

Lotus 1-2-3 329.00 

MicroPro 

Professional 4.0 w/GL Demo 239.00 

Microstuf 

Crosstalk XVI 89.99 

P.F.S. 

First Choice (Premium) 119.00 

Word Perfect Corp. 

Word Perfect 4.2 209.00 



MS/DOS SOFTWARE 





COMPUTER MAIL ORDER 



56 BYTE* OCTOBER 1987 



When you want to talk price. 



DRIVES 



Atari 

AA314 DS/DD Disk (ST) $209.00 

AA354 SS/DD Disk (ST) 129.00 

SHD204 20 Mb ST Hard Drive. .579.00 
Commodore 

Amiga 1020 189.00 

Amiga 1010 3 1 /2 M 219.00 

1541C 179.00 

1571 239.00 

1581 3V2" External 229.00 

CSI 

10 mb (64-128) 1099.00 

Indus 

GT Disk Drive Atari XUXE 179.00 

Microbotics 

20 mb Hard Drive (Amiga) 1299.00 

Racore 

Jr. Expansion Chassis 299.00 

Seagate 

20 mb ST-225 Hard Drive Kit.... 339.00 

Supra 

20 Meg Hard Drive (ST) 559.00 

Xebec 

20 mb (Amiga) 899.00 

Amdek 

Video 300 Amber Composite 139.00 

Commodore 

Commodore 2002 319.00 

Amiga 1080 Hi-Res Color 299.00 



MONITORS 




Magnavox 

8502 Composite* 179 

Magnavox 

8505 RGB/Composite 199.00 

NEC 

12" TTL Green or Amber 99.99 

JC-1401 P3 A Multi-Sync 549.00 

Princeton Graphics 

MAX-12 12" Amber TTL 149.00 

Taxan 

Model 124 12" Amber 119.00 

Zenith 

ZVM 1220/1230 (ea.) 99.99 



MODEMS 



Anchor 

Volksmodem 1200 $99.99 

6480 C64/128 1200 Baud 119.00 

VM520 ST520/1040 1200 Baud. 129.00 
Atari 

XM301 300 Baud 42.99 

Best 

1200 Baud External 119.00 

Commodore 

Amiga 1680-1200 BPS 169.00 

CBM 1670 & C-128) 99.99 

Everex 

Evercom 1200 Baud Internal 109.00 

Hayes 

Smartmodem 300 129.00 

Smartmodem 1200 External 299.00 

Novation 

Parrot 1200 119.00 

Practical Peripherals 

1200 BPS External 159.00 

Supra 

MPP-1064 AD/AA C64 :... .69.99 

1200AT 1200 Baud Atari 139.00 




DISKETTES 



U.S. RobOtiCS (t-j^rv 
Direct 1200 Ext. *l09 

U.S. Robotics 

2400 Baud Internal 189.00 

Maxell 

MD1-M SS/DD 5V4" 9.99 

MD2-DM DS/DD 5 1 /4" 10.99 

MF1-DDM SS/DD 3V2" 12.99 

MF2-DDM DS/DD 3V 2 " 21.99 

Sony 

MD1D SS/DD 5V4" 8.99 

MD2D DS/DD 51/4" 10.99 

MFD-100 SS/DD 3W 13.99 

MFD-200 DS/DD 3V 2 " 20.99 

Hewlett-Packard Calculators 

28C Scientific Pro 199.99 

18C Business Consultant 139.95 

12C Slim Financial 74.99 



PRINTERS 



Atari 

1020 XL/XE Plotter $31.99 

XDM121 Letter Quality 199.00 

XMM801 XL/XE Dot Matrix 189.00 

XMM804ST Dot Matrix 179.00 

Brother 

M-1109 100 cps, 9 pin 199.00 

M-1409 180 cps, 9 pin 319.00 

Citizen 

MSP-10 160 cps, 80-Column 279.00 

Premier 35 cps Daisywheel 489.00 

C.ltoh 

315P 132 Column Prowriter 449.00 




Epson EX-800 $0 ^ Q 
300 cps 80 Columrr369 

Epson 

LX-800 150 cps, Dot Matrix 169.00 

FX-86E 240 cps, 80-column 329.00 

FX286E 240 cps, 132-column.... 439.00 
EX-1000 300 cps, 132-column ...499.00 

LQ-800 180 cps, 24- Wire 459.00 

Hewlett Packard 

Thinkjet 379.00 

NEC 

Pinwriter 2200 24 Wire 319.00 

Pinwriter 660 24 Wire 459.00 

Pinwriter 760 24 Wire 679.00 

Okidata 

Okimate 20 Color Printer 129.00 

ML-182 120 cps, 80-column 239.00 

ML-192+ 200 cps, 80-column... 329.00 

ML-193+ 200 cps, 132-column. 479.00 

Panasonic 

KX-1080i 120 cps, 80-column....159.00 

KX-1091i 180 cps, 80-column....169.00 

KX-P3131 22 cps Daisywheel. ...289.00 

Star Micronics 

NX-10 120 cps, 80-column 159.00 

NX-10C 120 cps, C64 lnterface.219.00 

NX-15 120 cps, 132-column 339.00 

Toshiba 

P-321 SL 216 cps, 24-Pin 539.00 

P-351 II 300 cps, 24-Pin 899.00 



In the U.S.A. and in Canada 

Call toll-free: 1-800-233-8950. 

Outside the U.S.A. call 717-327-9575 Telex 5106017898 Fax 717-327-1217 
Educational, Governmental and Corporate Organizations call toll-free 1-800-221-4283 
CMO. 477 East Third Street, Dept. A 110, Williamsport, PA 17701 

ALL MAJOR CREDIT CARDS ACCEPTED. 

POLICY: Add 3% (minimum $7.00) shipping and handling. Larger shipments may require additional charges. Personal and company checks require 3 weeks 
to clear. For faster delivery use your credit card or send cashier's check or bank money order. Pennsylvania residents add 6% sales tax. All prices are U.S.A. 
prices and are subject to change and all items are subject to availability. Defective software will be replaced with the same item only. Hardware will be replaced 
or repaired at our discretion within the terms and limits of the manufacturer's warranty. We cannot guarantee compatibility. All sales are final and returned shipments 
are subject to a restocking fee. 



Circle 60 on Reader Service Card 



OCTOBER 1987 -BYTE 57 



WHAT'S NEW 



ADD-1NS 



Two for the Mac II 

Providing test signals 
and generating waveforms 
for automated test equip- 
ment are two typical applica- 
tions for which National In- 
struments' NB-AO-6 analog 
output board is designed. 
The board plugs into the Mac- 
intosh IPs NuBus and fea- 
tures six 12-bit D/A 
converters. 

Both unipolar and bipolar 
voltage outputs are available for 
each converter. National In- 
struments says each voltage 
output settles to within one- 
half least significant byte of 
full scale (10 volts) within 4 
microseconds. 

The NB-AO-6 features a 
high-performance real-time 
system integration (RTSI) 
bus interface that allows syn- 
chronization with processes 
on other NB series boards. The 
converter outputs can be 
updated by an RTSI bus signal, 
an external signal, or by 
software control. 

The board allows you to 
supply references voltages be- 
tween - 10V and 10V, pro- 
viding the capability for four- 
quadrant multiplication. 
Data can be written to any 
combination of D/As simul- 
taneously with standard 16-bit 
write operations. 
Price: $895. 

Contact: National Instru- 
ments, 12109 Technology 
Blvd., Austin, TX 78727- 
6204,(800)531-4742; in 
Texas, (800) 433-3488 or 
(512)250-9119. 
Inquiry 601. 

Meanwhile on the Mac 
II front, AST Research 
has released an intelligent 
communications processor that 
offloads I/O processing 
from the Mac's 68020. The 
ASTTCP has a 68000 pro- 
cessor running at 8 MHz, 
512K bytes of zero- wait- 
state RAM, and either two or 
four synchronous/asynch- 
ronous serial ports. 

AST says the board pro- 
vides a foundation for multi- 
user, multitasking environ- 
ments through Unix. In 




National Instruments ' NB-AO-6 adds six DACs to the Mac II. 



addition, two of the ports 
can be configured to work with 
AppleTalk, giving develop- 
ers the opportunity to create 
links between AppleTalk 
networks. 

The AST-ICP plugs into 
the Mac II' s NuBus and pro- 
vides support for full Nu- 
Bus arbitration. It can be con- 
figured with up to 64K 
bytes of EPROM. 
Price: Two-port version, 
$949; four-port version, $999. 
Contact: AST Research 
Inc., 2121 Alton Ave., Irvine, 
CA 92714, (714)863-1333. 
Inquiry 602. 



386 Board for the PC 

The PC-Elevator 386 is a 
full-length plug-in board 
that turns any IBM PC, XT, 
AT, or compatible into an 
80386-based system. The 
board runs at 16 MHz with no 
wait states and includes 1 
megabyte of 100-nanosecond 
RAM that can be expanded 
to a maximum of 16 megabytes 
using daughterboards. 

According to the manu- 
facturer, the PC-Elevator 
doesn't require any modifi- 
cations of the host machine for 
installation. The 80386 pro- 
cessor works in tandem with 
the system's processor, 
using the original chip to 
handle I/O processing. 
Price: $1995. 
Contact: Applied Reason- 
ing Corp., 86 Sherman St., 
Cambridge, MA 02140, 
(617) 492-0700. 
Inquiry 603. 



Two Megabytes 
for the Amiga 

The latest addition to 
Micron Technology's line 
of add-on memory boards is 
a 2-megabyte version for all 
Amigas, including the 500, 
the 1000, and the 2000 models. 
If you have an Amiga 2000, 
you can insert the board direct- 
ly into a motherboard ex- 
pansion slot. If you have an 
Amiga 500 or 1000, you'll 
need an optional expansion 
chassis. 

Price: $495; expansion 
chassis, $55. 

Contact: Micron Technol- 
ogy Inc., Systems Group, 2805 
East Columbia Rd., Boise, 
ID 83706, (800) 642-7661; in 
Idaho, (208) 386-3800. 
Inquiry 604. 



PC Multiuser System 

QuickLink is a hard- 
ware/software system that 
turns an IBM PC, XT, AT, 
or compatible into a multiuser, 
multiprocessor MS-DOS 
system running under the 
Novell Netware operating 
system. 

The basic hardware com- 
ponent of the system is the 
QuickLink card, a full- 
length expansion card that's es- 
sentially an IBM PC on a 
circuit board, complete with an 
NEC V40 processor and 
768K bytes of RAM. 

A standard IBM PC- 
compatible ASCII terminal 
connects to the QuickLink 
card using standard twisted- 
pair telephone wiring. Each 
terminal and QuickLink card 
becomes a complete MS- 



DOS workstation. Up to 5 1 sta- 
tions can be configured on a 
single system. 

According to its manufac- 
turer, QuickLink is a closely 
coupled local area network 
that uses the high-speed bus of 
the main system to intercon- 
nect the multiple processors in- 
stead of the serial cables 
used in most LANs. 

For those looking for 
growth beyond 5 1 stations, 
multiple IBM PC file 
servers can be interconnected. 
The Network Link claims 
that QuickLink is compatible 
with most off-the-shelf 
LAN interface cards, commu- 
nication servers, and main- 
frame gateways. QuickLink is 
compatible with COM1 and 
COM2 for printer and modem 
hookup. I/O ports are user- 
selectable via DIP switches. 
Price: $1095. 
Contact: The Network 
Link, 3303 Harbor Blvd., 
Bldg.H-10, Costa Mesa, 
CA 92626, (714)549-9380. 
Inquiry 606. 



Micro Channel 
Prototype Board 

For those who have an 
uncontrollable urge to 
work on their own hardware 
for the IBM PS/2 Micro Chan- 
nel bus, a company by the 
name of 29 Industries has de- 
veloped two different PS/2 
prototype boards. 

Both single-layer and 
four-layer boards are available. 
The four-layer board has 
separate power and ground 
planes, with top-row 
through holes of +5V and a 
bottom row of ground con- 
nections. Both boards have 
3500 tin lead reflow holes, 
each with 0.035- inch on 0.1- 
inch centers. Bus connec- 
tors on both boards are gold- 
plated. 

Price: Single-layer, $39.95; 
four-layer, $59.95. 
Contact: 29 Industries Inc., 
6190 North Federal Highway, 
Boca Raton, FL 33431, 
(305) 994-9229. 
Inquiry 605. 

continued 



58 BYTE • OCTOBER 1987 



SOFTWARE ENGINEERING 

COMES OF AGE ... 

ANNOUNCING LOGITECH MODULA-2 VERSION 3.0 





Modula-2 is the language 
of choice for modern 
software engineering, and 
LOGITECH Modula-2 is 
the most powerful implemen 
tation available for the PC. 
The right language and the rig] 
tools have come together in oik 
superior product. Whether 
you're working on a small 
program or a complex project, 
with LOGITECH Modula-2 
Version 3.0 you can write more 
reliable, maintainable, better docu 
mented code in a fraction of the 
time at a fr; 

FREE TURBO PASCAL 

TO LOGITECH MODULA-2 

TRANSLATOR 

NEW, IMPROVED 
DEBUGGERS 

Time gained with a fast compiler can 
i lost at debug time w ithout the right 
debugging tools. With the powerful 
_ogitech Modula-2 Debuggers you 
i debug your code fast, and 
latically improve your overall 

project throughput. 
The Post Mortem 
Debugger analyzes 
the status of a program 
after it has terminated 
while the dynamic, 
lunTime Debugger monitors the exec 
tion of a program with user-defined 
breakpoints. With their new, mouse 
3ased, multiple-window user interface 
hese powerful debugging tools are a 
Dleasure to use. 

NEW, INTELLIGENT 
LINKER 

Jnks only those routines from a 
Darticular module that you need, so 
you eliminate unreferenced routines 
md produce smaller, more compact 
executable files. 

ill is a registered trademark ol Borland Interna 

Circle 154 on Reader Service Card (Dealers: 155) 



Compiler in overlay and fully linked form. 
Linkable Library. Post Mortem Debugger. 
Point Editor 



Library sources, Linker. RunTime Debug- 
ger. MAKE, Decoder. Version. XRef . 
Formatter 

□ LOGITECH Modula-2 S^/IQ 
V. 3 . Development System £^TJ7 
Compiler Pack plus Toolkit 

□ Turbo Pascal to 1713 17 17 
Modula-2 Translator 1/ JV H/H/ 
With Compiler Pack or Development System 

□ Window Package $/1Q 
Build true windowing into your ^Js 
Modula-2 code. 

□ Upgrade Package 
Call LOGITECH for information or 
to receive an order form. 

Add $6.50 for shipping and handling. California residents 

add applicable sales tax. Prices valid 

in U.S. only. £ Total Enclosed $ 

D VISA □ MasterCard .□ Check Enclosed 




Expiration Dale 



NEW, IMPROVED 
COMPILER 

Faster and more flexible. Now 
its DOS linker compatible object 
files (.OBJ) can be linked with 
existing libraries in C, PASCAL, 
FORTRAN and ASSEMBLER- 
so you can build on previous 
development and put the power 
of LOGITECH Modula-2 to 
work for you right now. Fully 
supports Wirth's latest language 
definition, including 
LONGINTand LONGSET, 
which provides large set 
support including SET:, 
of CHAR. Provides 
optimization for tighter, more 
efficient code generation. 

NEW EDITOR 

Our new, mouse based editor is fully 
integrated, easy to learn, fast and easy 
to use, and very customizable. Its 
multiple, overlapping windows and 
color support make it easy to manage . 
parts of one file or several files on the 
screen at one time. You'll love using 
it — with or without a mouse. 

Call for information about our VAX/VMS 
version, Site License. University Discounts, 
Dealer &. Distributor pricing. 

To place an order call toll-free: 

800-231-7717 

In California: 



IDGITECH 






' 



LOGITECH, Inc. 

6505 Kaiser Drive, Fremont, CA 94555 
Tel: 415-795-8500 

In Europe: LOGITECH, Switzerland 

Tel: 41-21-87-9656 Telex 458 2 17 Tech Ch 

In the United Kingdom: LOGITECH. U.K. 

Tel: 44908-368071 Fax: 44908-71751 

OCTOBER 1987 • B Y T E 59 



^^mmm* 



WHAT'S NEW 



SOFTWARE • PROGRAMMING LANGUAGES AND AIDS 



Pascal for the 
Apple IIGS 

O RCA/Pascal, an im- 
plementation of ISO stan- 
dard Pascal, offers over 60 
built-in procedures and func- 
tions. Extensions include 
UCSD-style strings, bit- 
manipulation operators, and 
extensions for systems and sci- 
entific programming. You 
can run ORCA/Pascal in stand- 
alone mode or install it 
under the Apple Programmer's 
Workshop or ORCA/M for 
the Apple IIGS shells. Access 
to the Apple IIGS Toolkit is 
provided, and the program fea- 
tures directives to control 
large or small memory models. 

According to Byte 
Works, ORCA/Pascal runs the 
Sieve of Eratosthenes 
benchmark in 5.4 seconds on 
the Apple IIGS. 
Price: $125. 

Contact: Byte Works Inc., 
4700 Irving Blvd. NW, Suite 
207, Albuquerque, NM 
87114,(505)898-8183. 
Inquiry 607. 



Pascal Source Tool 

TurboRef4.0, a $49.95 
cross-referencing and list- 
ing utility, assists in locat- 
ing variable names and map- 
ping logical structures in 
Pascal source code. 

The lister encloses con- 
trol blocks in boxes and indi- 
cates the current procedure 
name for each source line and 
the source file for each line. 
You can highlight comments in 
bold, as well as underline 
reserved words. 

The cross-reference utili- 
ty lists the line number for each 
use of variables and con- 
stants, and it lists the type of 
use for each reference. You 
can upshift lowercase names or 
reference them separately. 
You can also process a list of 
files for separate or com- 
bined cross-references; with 
multiple source files, you 
can list the filename with each 
reference. 



Version 4.0 features sepa- 
rate printer-configuration files, 
enabling you to use virtual- 
ly any printer, Gracon reports. 
The addition of block reads 
and writes has increased the 
speed of execution with this 
new version. 

TurboRef 4.0 runs on 
IBM PCs with 128K bytes of 
RAM, MS-DOS 2.0 or 
higher, and a Pascal compiler 
from Borland, Microsoft, 
or Software Building Blocks. 
Price: $49.95. 
Contact: Gracon Services 
Inc., P.O. Box 340, Haslett, 
MI 48840-0340, (517)349- 
4900. 
Inquiry 608. 



COBOL Productivity 
Tool 

ProCode the Develop- 
ment Tool (PCDT) is a 
COBOL programming tool 
that creates debugged ANSI 
COBOL 74 source code and 
runs it through a compiler. 
PCDT lets you generate 
COBOL program shells and 
data-definition logic at a 
rate of 3000 lines per minute, 
ProCode reports. You can 
create custom screens and on- 
line help for each data-defi- 
nition field. 

PCDT runs on MS-DOS- 
or PC-DOS-based systems 
with at least 256K bytes of 
RAM. A hard disk drive is rec- 
ommended, but not neces- 
sary to run the program. 
Price: $995. 

Contact: ProCode, 859-44 
State Rd. 436, Casselberry, FL 
32707, (305) 699-6799. 
Inquiry 609. 



80386 BASIC 
Compiler 

True BASIC'S 386 
BASIC compiler includes 
an implementation of Phar 
Lap's Run 38 6. Features and 
syntax are identical to ver- 
sion 2.0 of True BASIC, but 
with the 80386 version you 
can create megabyte-long 
strings and perform matrix 
algebra with arrays that com- 



pletely fill memory, the 
company reports. The 80386 
version will also support the 
80387 microprocessor. 
Price: Under $500. 
Contact: True BASIC Inc . , 
39 South Main St. , Hanover, 
NH 03755, (603) 643- 
3882. 
Inquiry 610. 

Programming on the 
Commodore 64 
and 128 

Designed to facilitate 
application development 
for GEOS, geoProgrammer 
offers an assembler, linker, 
and symbolic debugger. 
The assembler reads source 
text from documents created 
with geo Write, a WYSIWYG 
word processor that enables 
you to place comments in bold 
or italics or paste a picture 
from geoPaint. The graphics 
appear as pictures in the 
listing instead of just numbers. 
The assembler supports 
standard 6502 assembly lan- 
guage mnemonics and ad- 
dressing modes, and you can 
design over 1000 labels for 
each assembly module. 

Expressions can include 
a combination of arithmetic 
and logical operators. A 
macro facility supports nested 
invocation and multiple ar- 
guments. Pseudo-operators are 
incorporated into geo- 
Assembler for conditional as- 
sembly, memory segment- 
type definition, and space 
allocation. 

The linker accepts link 
structure from geo Write docu- 
ments and reads relocatable 
object modules produced by 
geoAssembler. It supports 
GEOS SEQ-type and VLIR ap- 
plications, resolves cross- 
references, and evaluates unre- 
solved arithmetic and 
logical expressions passed from 
the assembler. Error mes- 
sages are placed in geo Write 
documents, and executable 



files are created. 

The debugger transforms 
the RAM Expansion Unit into 
a monitor so that you can 
debug applications with the 
maximum available mem- 
ory. It also features memory 
examination and modifica- 
tion commands, including sym- 
bolic line disassembly and a 
line assembler for patching 
codes. Results are printed 
into an overlay text window. 
Price: $69.95. 
Contact: Berkeley Soft- 
works, 2150 Shattuck Ave., 
Berkeley, CA 94704, (415) 
644-0883. 
Inquiry 611. 



Prolog Knowledge 
Base Manager 

Bridgeware is a stand- 
alone application that lets 
you create Prolog databases 
that you incorporate as knowl- 
edge bases into expert sys- 
tems. It works with ASCII 
files, or it can access data 
from other programs or lan- 
guages. It can also combine 
information from several appli- 
cations into a single knowl- 
edge base. 

Bridgeware's Schema 
editor lets you create and main- 
tain your knowledge base 
with full-screen and visual 
editing of files and terms, 
management of linked files, 
formats for parsing ASCII 
text files, and a print function. 

The program is compat- 
ible with Edinburgh, Turbo, 
and ExperProlog. Example 
programs and data are included 
for languages and programs 
including BASIC, C, Pascal, 
dBASE II and III, Lotus 
1-2-3, and Symphony. 

To run Bridgeware you 
need an IBM PC, AT, XT, or 
compatible with MS-DOS 
or PC-DOS 2.1 or higher. 
Price: $69.95. 
Contact: MicroBase Soft- 
ware Systems Inc . , Medford 
Office Center, Old Marlton 
Pike, Medford, NJ 08055, 
(609) 654-7394. 
Inquiry 612. 

continued 



60 BYTE- OCTOBER 1987 



Lofiifec 



iiN 



'*p| 



OW'S 



^jyj. 


iv 


IU 


SJLL 









LOGITECH $ 
MOUSE 

with Publisher Software 



179 



Our Mouse and Publisher Soft- 
ware is the complete solution for 
people who want to produce great 
looking, attention getting docu- 
ments without having to master 
a lot of complex commands 
and typographical jargon. It's 
easy to learn, fast to use, and it gets 
you the results you need right now. 

Page Layout Made Easy 

You don't have to be a graphic de- 
signer to get professional quality 
results. Create and edit text right 
on the page. We offer design tem- 
plates, automatic layout in 1-4 
columns, automatic flow of text 
around graphics, and vertical and 
horizontal rulers to guide you. 

Typography Made Easy 

Select from over 61 fonts repre- 
senting 14 typefaces, in sizes suit- 
able for headlines, subheads and 
text. We provide optimal line 
spacing automatically. You adjust 
for special effects. 

Graphics Made Easy 

Use our Clip Art or create your 
own using LOGIPAINT, PC 
Paintbrush or MS Windows Paint 
software. You can shrink or 
expand your graphic images to fit. 
You can also modify, rotate or 
copy them. 



Circle 156 on Reader Service Card (Dealers: 157) 





To place a credit card order 
call our special toll-free number: 

800-231-7717 

Call toll-free in California: 

800-552-8885 



Blogflech News 



THE LOGITECH DEALER NEYSUTTEfi 



INTRODUCING LOGITECH DEALEK NEWS 

We re 'introducing LOGITECH Dealer news so we can Keep you. tiie Deal' 
informed Mout oureroauciV We wartt.iuo be o sourcoui timely 
^formation that will help you sell LOGITECH products well be offer 
ii ion, sals6 libs end up-tu-tne minute inchmeal 

i en jug* 31 



LETTEB FBOM THEPKESIBEITT 

At ifXIffCK viwmiOcr.injr *ateri « 

n a nt ott*r,*lset « Mve af'J 
camp»mj Irrn lawllnter ucntwiylf 
rtepinjintauclt yilfiuwrimnertiM dealer 

- ,>!_■. *'- »• -r;> -'• , ',' ■ ."'•?. ..-■'■■-' 



*lthouj!)!hun 



TM» taring titbit //JfctfTo t[« LOGITECH 
Mom* We 've recent! o S m reduced a I in hte r 
till trti nevtthKigeallieajllMgeta 
erxnmcdetsit Chances art ycu went bcIim 
tlni change or 5a wffvcciM by (* 8ot our 
tati i nfflcalt tint tl* Irnlrifltt with Vtii toll 
u tncrethbtij accurate 



it's face it • email chalets tilt! 

innji But vetel's 

tuts tt i orat pfirf ut i ' '■• s ! s r 



BwiRtoar**, .,■.■; ■■- -■■ 



publishes mouse miwoDucf d 

LOGITECH) new LOGITECH PtiMutar Mow 
Pactaae includes the LOGITECH 5crii1 ar Bui 

Moult bundled vilh LOGITECH. tOEH ytn|on 
of Pf3 firil Publisher from &ft*»re 
Pusluhinj 

Tte LOCnCCM product is li'tettd >t busmen 
• fit home users vhg want < complete (Jtsfclao 
pitstuMng Mlgtun, inelurJiit) moine «ri 
software, al a tov cost ft* ptetaot is east} to 
team and we, mating u ideal for first time 
dclelap puollihtng users It entitle; tiers 
villi little or mi page layout experience to 
creeta, edil tint produce hioh- 1 mpeet , 
dunammtlacuflicnli wilrwut having to learn a 
complex set of commands and lujagrephicai 

ICQTJCrlvilI be stiiepthfl the package to its 
d*«,ltrs beginning Ju«t| l full peat 
sdYsrllaetneiit) announcing Ik product will 
annear tn July edtliam of Bute, PC ttscjejir* 
erd PC War Id 



Produced on a dot matrix printer. Laser printer 
support also included. 

30 Day Money-Back Guarantee 
3 Year Warranty 



YES 



I I want to produce great 
• looking documents now! 



LOGITECH Publisher Package $179 

□ w. Serial Mouse and Plus Software 

□ w. Bus Mouse and Plus Software 

Add S6.50 for shipping and handling. California 
residents add applicable sales tax. Prices valid 
in U.S. only. 

Total Enclosed $ 

D VISA □ MasterCard □ Check Enclosed 



Card Number 


Expiration Date 


Signature 


Name 


Address 


City 


State 



Zip Phone 

DEALER INQUIRIES WELCOME 

HLOGITECH 

LOGITECH, Inc. 

805 Veterans Blvd., Redwood City, C A 94063 

Tel: 415-365-9852 

In Europe: 

LOGITECH SA, Switzerland 

Tel : 4 1 -2 1 -879656 • Telex 458 217 Tech Ch 

In Italy: 

Algol-Logitech Spa 39-2-215-5622 



OCTOBER 1987 -BYTE 61 



WHAT'S NEW 



SOFTWARE • SCIENTIFIC AND ENGINEERING 



Plot and Display 
Stresses with CPLOT 

Part of Algor's Supersap 
finite-element stress, dy- 
namic, and heat-transfer 
modeling and analysis system, 
CPLOT enables you to plot 
and display stress, displace- 
ment, temperature, and heat 
flux. 

The program uses the 
shading technique of dithering 
to display stress, tempera- 
ture, and other contours. The 
technique uses patterns of 
different-color pixels to simu- 
late intermediate colors on a 
computer screen. Dithering en- 
ables you to see 33 shades 
of color with a CGA (with only 
4-color capability). With an 
EGA, dithering can turn seven 
colors into 97, with 15 
shades between each base 
color. 

With CPLOT you can see 
a graphic display of the stress 
or thermal state and yield 
criteria stresses, such as Von 
Mises or Tresca stresses. 
You can view plots of stress- 
contour lines, iso-stress 
lines, shaded stress contours, 
superimposed stress-con- 
tour lines, and shaded 
contours. 

The program uses colors 
to represent degrees of stress, 
and you can change the 
color mapping to suit your 
needs. 

CPLOT runs on IBM 
PCs and compatibles and re- 
quires MS-DOS or PC- 
DOS 2.0 or higher. 
Price: $995. 

Contact: Algor Interactive 
Systems, Essex House, Essex 
Square, Pittsburgh, PA 
15206,(412)661-2100. 
Inquiry 613. 



A Calculator 
for Your PC 

TheLascauxlOOO is 
based on a model of a 
pocket calculator. It uses 
dimensional analysis, which is 
the recognition of physical 
quantities rather than just num- 
bers. You can enter the 
units of measurements you 




CPLOT displays stress, displacement, and temperature. 



want calculated, along with 
numbers, and the calculator 
performs the conversions. It 
recognizes over 150 units of 
measurement and has a 
table of over 200 constants 
used in physics, chemistry, 
and engineering. You can also 
expand and customize its in- 
ternal tables. 

What you see on-screen 
looks like a calculator, with the 
paper tape scrolling above 
it. You can view the full length 
of paper tape on screen or 
output it to your printer. 

The LascauxlOOO runs 
on IBM PCs and compatibles 
with at least 320K bytes of 
RAM. 
Price: $59. 

Contact: Lascaux Graph- 
ics, 3220 Steuben Ave. , Bronx, 
NY 10467, (212)654- 
7429. 
Inquiry 614. 



Science Study 
through Software 

Students can study biol- 
ogy and physics on their 
computers with software 
from Mindscape and 
Br0derbund. 

That's Life: Explorations 
and Simulations in Biology lets 
students in grades seven 
through 10 explore human 
physiology, field ecology, 
applied genetics, and compara- 
tive zoology. Students can 



participate in adventure pro- 
grams or simulations. The 
adventure programs include 
Human Body Exploration 
and Comparative Physiology 
Exploration, and the simu- 
lations include Applied Genet- 
ics Simulation and Field 
Ecology Simulation. Students 
participate in the research 
process, developing their scien- 
tific research and deduc- 
tive-reasoning skills. 

Mindscape reports that 
the program correlates to 15 
life science and biology 
texts, a list of which is 
provided. 

That's Life runs on 
Apple lis with at least 64K 
bytes of RAM. 
Price: $175. 

Contact: Mindscape Inc., 
3444 Dundee Rd., North- 
brook, IL 60062, (312) 
480-7667. 
Inquiry 615. 

Br0derbund's Physics is 
another interactive educa- 
tional program, and it lets 
students experiment with ma- 
nipulating vectors, inter- 
preting graphs, and answering 
over 300 problems. They 
can also study orbital motion 
by experimenting with ve- 
locity and position. The pro- 
gram provides hints, further 
explanations, and answers to 
problems when necessary. 

Physics runs on 512K- 
byte Macintoshes with external 
disk drives, as well as on 



the 512E Mac, Mac Plus, and 
SE. 

Price: $99.95. 
Contact: Br0derbund Soft- 
ware Inc . , 17 Paul Dr. , San 
Rafael, CA 94903-2101, 
(415)479-1700. 
Inquiry 616. 



Math-Processing 
Software 

The Professional Wheel 
Calculation Processor is 
a math program that lets 
you perform many different 
kinds of mathematical and 
scientific calculations in an in- 
teractive environment. It 
runs on the IBM PC, XT, AT, 
or compatibles with PC- 
DOS or MS-DOS 2.0 or high- 
er, one floppy disk drive, 
and 3 84K bytes of RAM. 

The program includes a 
full-screen editor with built-in 
mathematical functions and 
a library that lets you create 
your own library of formu- 
las and functions that you can 
call readily for later use. 
Functions and other calcula- 
tions can be documented for 
future reference. You can ana- 
lyze functions by calculat- 
ing individual or incremental 
values, derivatives, or inte- 
grals, as well as by plotting. 

The program can also 
calculate statistical probabili- 
ties, correlations, and fre- 
quency analysis. In addition, it 
performs conversions of 
commonly used units of mea- 
sure for length, area, vol- 
ume, weight, and temperature. 

Certain features are avail- 
able as pop-up utilities. These 
include the unit-conversion 
utility and two calculation pro- 
cessors that are capable of 
repetitive calculations and can 
call user-defined functions 
and constants. 
Price: $158.95 until Octo- 
ber 30; $199.95 thereafter. 
Contact: Dalin Inc. Appli- 
cations Software, 16421 
Clymer St., Granada, CA 
91344,(818)360-7058. 
Inquiry 617. 

continued 



62 BYTE- OCTOBER 1987 



Get¥)ur Hands On 
More Solu^s. 




LOGITECH $ 
MOUSE 

with Plus Software $119 



99 




EDITORS 
CHOICE 



Purchase our 
best selling 
LOGITECH 
Serial or Bus 
Mouse and Plus 
Package with 
CADD, Paint 
and Publisher 



software at very affordable prices. 
Each package is a complete solu- 
tion that gets you the results you 
need right now. 

CADD $ 



189 



Solution 

Our Mouse, Plus Software and 
LOGICADD (Generic CADD 3.0 
plus DotPlot). Everything you 
need to turn your PC into a full 
featured CADD workstation. It's 
the complete solution for dimen- 
sioned line drawing and CADD. 




149 



Paint $ 

Solution 

Our Mouse, Plus Software and 
LOGIPAINT(PC Paintbrush). 
With 11 type fonts and a 16 color 
palette, it's the paint set that's used 
by professional and beginning 
users alike. LOGIPAINT files 
move easily into both LOGICADD 
and Publisher documents. 




Publishing $1^70 
Solution l/y 

Our Mouse, Plus Software and 
PUBLISHER Software (PFS: 
First Publisher). It's the complete 
package that makes it easy to pro- 
duce high-impact, professional 
looking documents. 



Generic CADD is a trademark of Generic Software. PC Paintbrush is a trademark of ZSoft Corp. PFS: First Publisher is a trademark of 
Software Publishing Corp. 



To place a credit card order 
call our special toll-free number: 

800-231-7717 

Call toll-free in California: 

800-552-8885 



YES 



I I want the 

I LOGITECH Mouse solution! 

LOGICADD Package $189 

□ w. Sena] Mouse and Plus Software 

□ vv. Bus Mouse and Plus Software 
LOGIPAINT Package $149 
D vv. Serial Mouse and Plus Software 

□ vv. Bus Mouse and Plus Software 
PUBLISHER Package $179 
D w. Serial Mouse and Plus Software 

□ vv. Bus Mouse and Plus Software 

Add 56. 50 for shipping and handling. California 
residents add applicable sales tax. Prices valid 
in U.S. only. 

Total Enclosed S 

□ VISA □ MasterCard □ Check Enclosed 



Card Number 


Expiration Dale 


Signature 


Name 


Address 


City 


State 


Zip 


Phone 



BS LOGITECH 

LOGITECH, Inc. 

805 Veterans Blvd. .Redwood City. CA 94063 

Tel: 415-365-9852 

In Europe: 

LOGITECH SA. Switzerland 

Tel: 41-21-879656 • Telex 458 21 7TechCh 

In Italy: 

Algol-Logitech Spa 39-2-215-5622 



Circle 158 on Reader Service Card (Dealers: 159) 



OCTOBER 1987 • B Y T E 63 



WHAT'S NEW 



SOFTWARE • BUSINESS AND OTHER 



Map Information 
Display and Analysis 
System 

With MID AS you can 
locate street addresses 
and display a map from raw 
data or from a database. The 
program supplies maps of 
over 300 U.S. metropolitan 
areas, including names of 
every street, river, and bridge, 
as well as address number 
ranges for every block and side 
of a street. You can create 
your own map using the key- 
board, a mouse, or a 
digitizer. 

MIDAS can also show 
boundary designations, such as 
city, town, and county bor- 
ders, or you can designate your 
own. You can use the 
boundary features to search for 
data points within a border, 
determine what boundaries a 
given point lies within, or 
overlay different boundaries. A 
zoom-in/zoom-out function 
is also available. 

The program runs on 
IBM PCs, XTs, ATs, and com- 
patibles with 640K bytes of 
RAM, MS-DOS or PC-DOS 
2.0 or higher, and a hard 
disk drive. A color graphics 
monitor is recommended, 
along with a full-color plotter; 
however, MIDAS works 
with monochrome adapters and 
supports most printers and 
plotters. Maplnfo also recom- 
mends dBASE III Plus or a 
similar database program. 
Price: $750; metropolitan 
area maps cost between $300 
and $2000. 

Contact: Maplnfo, Hend- 
rick Hudson Building, 200 
Broadway, Troy, NY 
12180,(518)274-8673. 
Inquiry 618. 



Text Editor 
for the Amiga 

CygnusEd combines 
word-processing and pro- 
gramming features, includ- 
ing auto-indent and macro 
keys. Designed to be used 
with a mouse or keyboard, it is 
written in assembly lan- 
guage. To run the program, 




MIDAS displays geographical data in black and white or color. 



you need an Amiga 500, 
1000, or 2000 with at least 
5 12K bytes of RAM. 

With CygnusEd you can 
edit multiple files simulta- 
neously and see multiple 
views of the same files, use in- 
tuitive commands and 
macros, run from the CLI or 
Workbench, set margins, 
and use word-wrap functions. 
Price: $30. 

Contact: CygnusSoft Soft- 
ware, P.O. Box 363, 1215 
Davie St., Vancouver, 
B.C., V6E1N4 Canada, (604) 
688-1085. 
Inquiry 619. 



WordPerfect 
for the Amiga 

WordPerfect for the 
Amiga supports multi- 
tasking, features pull-down 
menus, and lets you use the 
mouse or the keyboard. In 
addition, the Amiga's files are 
compatible with Word- 
Perfect 4. 1 for the IBM PC. 
File-management features 
include a Look option and the 
ability to perform common 
file operations without exiting 
the program. You can re- 
name, delete, print, or copy 
files. The Look option lets 
you preview the contents of a 
document, and a Search op- 



tion displays only those files 
that contain a given word or 
phrase. 

Other features of the pro- 
gram include footnotes and 
endnotes, macros, merging, 
paragraph and outline number- 
ing, and table of contents 
and index generation. 

A spelling checker with a 
1 15,000-word dictionary in- 
cludes a phonetic and word- 
template lookup. You can also 
create your own dictio- 
naries, or import those created 
with WordPerfect on the 
IBM PC. 

The thesaurus lets you 
display synonyms and ant- 
onyms for two words at the 
same time. 

The program supports in- 
terlace mode but does not offer 
bit-mapped fonts. 
Price: $395. 
Contact: WordPerfect 
Corp., 288 West Center St., 
Orem,UT 84057, (801) 
225-5000. 
Inquiry 620. 



VP-Planner Plus 

Paperback Software's 
new version of VP-Planner 
has a word processor and 
graphics tools. With the pro- 
gram, you can also set up a 
multidimensional database via 
prompts. 

VP-Planner Plus is com- 
patible with Lotus 1-2-3 ver- 



sion 2.0, but it features a re- 
vised interface that is not like 
Lotus 1-2-3's. 

The program runs on 
IBM PCs and compatibles with 
at least 256K bytes of RAM 
or 320K bytes when using 
multidimensional files. A 
CGA, EGA, or Hercules 
adapter is also required. 
Price: $174.95. 
Contact: Paperback Soft- 
ware, 2830 Ninth St., Berke- 
ley, CA 94710, (415) 644- 
2116. 
Inquiry 621. 



Flying with Yeager 

Chuck Yeager' s Ad- 
vanced Flight Simulator 
offers you the chance to test 
and fly in formation with real 
and experimental aircraft at 
Mach speeds, according to 
Electronic Arts. 

Three levels of instruc- 
tion are offered. The first 
teaches basics, such as take- 
offs and landings; the second 
covers more advanced ma- 
neuvers, like aileron rolls and 
hammerhead stalls; and the 
third teaches acrobatic stunts. 
The latter prepares you to 
use the Formation Flying fea- 
ture, in which you follow 
Yeager through obstacle 
courses and three-dimen- 
sional terrain. A flight record- 
er lets you create and store 
your stunt flying patterns. 

A Test Pilot option offers 
a selection of 14 aircraft to 
check out, using actual test- 
pilot aircraft-evaluation charts. 

The flight simulator runs 
on IBM PCs, XTs, ATs, and 
compatibles with MS-DOS 
or PC-DOS 2.0 or higher. The 
program supports CGA, 
EGA, and compatible graphics 
adapters. Electronic Arts 
reports that a Commodore 
64/128 version is in the 
works. 

Price: $39.95. 
Contact: Electronic Arts, 
1820 Gateway Dr., San Mateo, 
CA 94404, (415)571-7171. 
Inquiry 622. 



64 BYTE- OCTOBER 1987 



EVENTS 



October 1987 



Commodore Show, Anaheim, CA. R.K. 
Productions, P.O. Box 18906, San Jose, 
CA 95158, (800) 722-7927; in California, 
(800) 252-7927. October 3-4 

Buscon/87-East, Marlborough, MA. Ed- 
ward E. Grazda, Director of Education, 
17100 Norwalk Blvd., Suite 116, Cerritos, 
CA90701-2750, (213) 402-1610. 
October 5-7 

Computer Security Technology and 
Techniques, Berkeley, CA. Continuing 
Education in Engineering, University of 
California Extension, 2223 Fulton St., 
Berkeley, CA 94720, (415) 642-4151 . 
October 5-7 

1987 Nebraska Videodisc Symposium- 
Education: Discoveries and Decisions, 

Lincoln, NE. Videodisc Design/Produc- 
tion Group, P.O. Box 83111, Lincoln, NE 
68501-3111,(402)472-3611. 
October 5-8 



AmiEXPO, the Amiga Event, New York, 
NY. AmiEXPO Headquarters, 211 East 
43rd St., Suite 301, New York, NY 10017, 
(800) 322-6442; in New York, (212) 867- 
4663. October 10-12 

Computer Graphics of Fractals: Algo- 
rithms from the Frontiers of Research, 

Santa Clara, C A. Sally Thomas, University 
of California Extension, Carriage House, 
Santa Cruz, CA 95064, (408) 429-4985. 
October 12-13 

Second Annual PC Expo, Chicago, IL. 
Jim Mion, 333 Sylvan Ave., Englewood 
Cliffs, NJ 07632, (800) 922-0324; in New 
Jersey, (201) 569-8542. October 13-15 

Voice Information Services Industry: 
Progress and Prospects, Washington, DC. 
Information Industry Association, 555 New 
Jersey Ave. NW, Suite 800, Washington, 
DC 20001, (202) 639-8262. 
October 14-15 



Database Expo, Anaheim, CA. Engineer- 
ing Information Inc., 345 East 47th St., 
New York, NY 10017, (800) 221-1044; in 
New York, (212) 705-7635. October 19 

Conference on Data and Knowledge Sys- 
tems for Manufacturing and Engineer- 
ing, East Hartford, CT. Fred Maryanski, 
CSE Dept., U-155, Storrs, CT 06268, 
(203)486-2584. October 19-20 

APICS Thirtieth Annual International 
Conference and Technical Exhibit, St. 

Louis, MO. APICS Meetings Department, 
500 West Annandale Rd., Falls Church, VA 
22046-4274, (800) 368-3402; in Virginia, 
(703)237-8344. October 19-23 

Third Expert Systems in Government 
Conference, Washington, DC. Peter 
Bonasso, AI Director, Mitre Washington 
AI Center, 7725 Colshire Blvd., MS 
W952, McLean, VA 22102, (703) 883- 
6908. October 19-23 



Twelfth Annual DSSD User's Confer- 
ence—Information Power: The Strategic 
Imperative, Kansas City, MO. Georganna 
Carson, Ken Orr & Associates Inc., 1725 
Gage Blvd., Topeka, KS 66604-3379, (800) 
562-8000; in Kansas, (913) 273-0653. 
October 6-8 

Calgary Computer/Office Technology 
Show, Calgary, Alberta, Canada. Gary 
Gow, Calgary Computer/Office Technol- 
ogy Show, 1015 Centre St. N, Suite 200, 
Calgary, Alberta, Canada T2E 2P8, (403) 
276-7881. October 7-8 

Seventh Annual Educational Computer 
Fair: Computers— Tools Reshaping Edu- 
cation, Cleveland, OH. Alice Fredman, 
Educational Computer Consortium of 
Ohio, 1 123 S.O.M. Center Rd., Cleveland, 
OH 44124, (216) 461-0800. October 8-9 

Seventh Annual Symposium on Small 
Computers in the Arts, Philadelphia, PA. 
Richard Moberg, 338 South Quince St., 
Philadelphia, PA 19107, (215) 834-1511. 
October 8-11 

Northeast Atari Computer Fair, Worces- 
ter, MA. Alan Glick, Boston Computer 
Society, One Center Plaza, Boston, MA 
02108,(617)296-8286. 
October 9-11 



Computer Technology/Special Educa- 
tion/Rehabilitation, Northridge, CA. Dr. 
Harry J. Murphy, California State Univer- 
sity-Northridge, Office of Disabled Stu- 
dent Services, 18111 Nordhoff St., North- 
ridge, CA 91330, (818) 885-2578. 
October 15-17 

Northeast Computer Faire, Boston, MA. 
The Interface Group Inc., 300 First Ave., 
Needham, MA 02194, (617) 449-6600. 
October 15-17 

1987 International Symposium on Lab- 
oratory Robotics, Boston, MA. Interna- 
tional Symposium on Laboratory Robotics, 
Zymark Corp., Zymark Center, Hopkin- 
ton, MA 01748-9990, (617) 435-9501 . 
October 18-21 

Interex North American Conference of 
Hewlett-Packard Technical Computer 
Users, San Jose, CA. Interex Conference 
Department, 680 Almanor Ave., Sunny- 
vale, CA 94086-35 13 , (408) 738-4848. 
October 18-22 

Technetron '87: Integration— Meeting 
the Challenge, Boston, MA. International 
Society of Wang Users, Wang Laboratories 
Inc., Mail Stop 019-350, One Industrial 
Ave., Lowell, MA 01 851, (617) 967-4322. 
October 18-22 



International Test and Transducer In- 
strumentation Exhibition and Confer- 
ence, London, U.K. Trident International 
Exhibitions Ltd., 21 Plymouth Rd., Tavi- 
stock, Devon PL19 8AU, U.K., 822-4671. 
October 20-22 

Computer Technology in Special Educa- 
tion and Rehabilitation, Minneapolis, 
MN. Closing the Gap Inc., P.O. Box 68, 
Henderson, MN 56044, (612) 248-3294. 
October 20-24 

Conference on Computers and Law, San- 
ta Monica, CA. Michael M. Krieger, P.O. 
Box 24619, Los Angeles, CA 90024, (213) 
393-9910. October 21-23 

Sixth National Print Quality Seminar, 

Bedford, MA. Frank Stefansson, Datek In- 
formation Services Inc., P.O. Box 68, 
Newtonville, MA 02160, (617) 893-9130. 
October 25-27 

EDUCOM '87, Los Angeles, CA. Carol 
Parysz, EDUCOM, P.O. Box 364, Prince- 
ton, NJ 08540, (609) 734-1888. 
October 27-30 

Applied Imagery Pattern Recognition, 

Washington, DC. Jane Harmon, 403 Argus 
Place, Sterling, VA 22170, (703) 351- 
2708. October 28-30 ■ 



OCTOBER 1987 -BYTE 65 



Motorola M68000 



Your high-performance systems require a wide 
range of microprocessor and peripheral support. 
The versatile M68000 Family serves those needs 



with product that's well documented, easy to use, 
cost effective, easy to get and as varied as your 
applications. 



■ Versatile solutions for the 
need to communicate data. 

Motorola has developed a family of high- 
performance communications controllers 
called Serial Processing Units (SPUs) based 
on a modular design concept. 

The MC68605 X.25 Protocol Controller 
(XPC) independently generates link-level 
commands for X.25 and X.75 networks. It 
expertly terminates the Link Access Proce- 
dure Balanced (LAPB) at the full 1544 or 
2.048 data rates provided by Tl facilities. 
It has passed rigorous Defense Data 
Network certification tests, and its 
global acceptance is suggested by use 
on packet networks all over Europe. 

The MC68824 Token Bus Controller 
(TBC) is the only single-chip VLSI imple- 
mentation of the IEEE 802.4 Media Access 
Control (MAC) sublayer defined in the 
Manufacturing Automation Protocol 
(MAP) specification. 



Terminal 



LocalArea 
Network 




Wide Area 
Network 



This high-performance micro- 
coded communications engine 
also supports the real-time 
extensions required in MAP 
version 3.0, on-chip diagnostics 
and MAC-level bridging, and 



. — . — 



Modem 



Modem 



DTE 



I The highest-performance 8/16/32-bit MPUs smooth 
the migration path for your products. 




Common internal 32-bit architecture. 
Object-code software compatibility. Just 
two of the reasons M68000 Family micro- 
processors from the 8-bit MC68008 to the 
32-bit industry standard MC68020 give 
your products both the highest perfor- 
mance and 
the smooth- 
est migration 
path. 

Operating 
speeds range 
from 8 MHz 
for low-cost 
applications 
to the indus- 
try's fastest 
general pur- 
pose MPUs 
at 25 MHz. 

And, products based on M68000 Fam- 
ily MPUs are the standard for UNIX® 
operating systems, CAD/CAM worksta- 
tions, next-generation office automation, 
multi-user/multi-tasking departmental 
computers, color graphics as well as for 

UNIX is a registered trademark of AT&T. 
HDS-300 is a trademark of Motorola Inc. 



real-time factory automation. 

M68000 MPUs are also preferred 
engines for high-performance artificial 
intelligence with large linear addressing 
requirements. 

Large, flexible 32-bit register set, large 



13 

12 

11 

ID- 
S' 
8- 
7- 
6- 
5- 
4- 
3- 
2- 
1- 



i MC68000 : 
8 MHz 



< MC68008 
8 MHz 



MC68010 
10 MHz 



r 



MCS8020 i 
12.5 MHz 




^ *M T '85 '£ 

First Year of Production 



linear address space, powerful yet simple 
instruction set and flexible addressing 
modes all add up to the competitive ad- 
vantage for your M68000 MPU-based 
product. B 



implements the recommended standard 
MAC-to-physical serial interface. 

The MC68184 Broadband Interface 
Controller is, with RF circuitry, the broad- 
band modem required for each node of 
a broadband MAP network. 

In addition to the SPUs, M68000 com- 
munications peripherals include the 
MC68661 Universal Synchronous Com- 
munications Controller, the MC68652 
Multi-Protocol Communications Con- 
troller, several DMA circuits and a variety 
of miscellaneous single- and multifunc- 
tion devices. A 

■ Emulate in real time, debug 
in record time, with the most 
powerful M68000 Family 
development system. 

Motorola's 
HDS-300™ 
hardware/soft- 
ware develop- 
ment station 




can give you 
an important 
edge in slash- 
ing develop- 
ment time and 
moving your 
product to market when you design 
in one of the industry's leading M68000 
family MPUs. 

It simplifies and speeds up debugging 
and testing of your MPU hardware and 
software, and in the appropriate config- 
uration can also provide source-level 
debug for even greater development-time 
reduction. 

Labor-saving features include real-time 
no wait-state emulation to 25 MHz, system 
performance analysis and "C" language 
source-level debugging. Cost efficiency 
is achieved with a modular approach that 
permits operation with any of the available 
emulator modules, including MC68020, 
MC68010, MC68000 and MC68008. 

There are so many more reasons why 
the HDS-300 development station is 
the ultimate emulation and analysis tool 
for systems based on MC68000 Family 
processors. Discover them. C 



66 BYTE- OCTOBER 1987 



Peripherals Today 



■ Create three different high-performance systems 

It's worth a lot more, of course, but we put the irresistibly low 
$98 price on our MC68000KIT so you'll never forgive 
yourself if you don't experience the flexibility, 
versatility and performance of the M68000 
Family. 

The design kit has just what you need to 
create three M68000-based systems. 

Three MPUs include the MC68000 16-bit 
general-purpose standard, the 
high-performance 16-bit 
virtual memory MC68010 
and the cost-effective 
8-bit MC68008 with the 32- 
bit internal architecture of the 
MC68000. 

Six flexible family peripherals are included so you can design 
for your specific applications. 

The MC68440 with dual independent DMA channels provides 



with our $98 design kit. 

DMA control. System timing and parallel I/O requirements are 
handled by the MC68230. The MC68901 is a multifunc- 
tion circuit with a single-channel UART for data 
communications, in addition to an 8-source 
interrupt controller, four 8-bit timers and eight 
parallel I/O lines. 
Three different serial communications 

devices, MC68681, MC68661 and 
MC68652, complete the parts 
complement, and the kit 
also contains the docu- 
mentation you'll want 
for converting these high- 
performance M68000 Family 
devices into superior systems of your own design. 
The MC68000KIT is available only through authorized 
Motorola distributors. Contact your Motorola distributor to 
take advantage of this great $98 value. D 




M68000 Family now offers surface-mount packaging. 



As customers develop the 
ability to utilize surface-mount 
packages, Motorola is putting 
the M68000 Family in "J"-leaded, 
Plastic Leaded Chip Carriers. 
Several MPUs and over a half- 
dozen varied peripherals are 
already available now or later 
this year. The MC68000, MC68HC000 
(HCMOS) and MC68010 are available now 
in the 68-lead package. The MC68008 is 



aJljCLOiliLEillLaiiXLCiL- 




available now in the 52-lead 
version. 

PLCC-packaged family pe- 
ripherals include the MC68824 
and MC68605 SPUs (84-lead), 
MC68440 and MC68442 DMA 
devices (68-lead), MC68681/2681 
DUART (44-lead), MC68230 Pro- 
grammable Interface/Timer (52-lead) and 
the MC68901 Multifunction circuit (52- 
lead). And this is only the beginning. E 



irrraTTouiraG-trxr 



Heralded Motorola M68000 
Family training courses now 
available on audio cassettes. 

Two Motorola-developed training 
courses for the MC68000 and MC68020 
are now available on audio cassettes. Both 
of these low-cost courses also include 
course notes 
and appro- 
priate techni- 
cal literature. 

Course 
MTTA1 is an 
overview of 
the MC68000 
microprocessor: pins and bus operation, 
addressing modes, instruction set and 
exception processing including interrupts. 
Course completion offers you basic famil- 
iarity with the MC68000. 

Course MTTA2 is an introduction to the 
MC68020: internal architecture, program- 
ming model, pins and bus operation, 
addressing modes, instruction set and 
exception processing. 

MTTA1 is $60. MTTA2 is $95. The price 
for both courses together is $140. 

Anew course on the MC68030, MTTA3, 
is available in mid-September at $95. F 




■ Literature Packs supply 
M68000 Family device and 
application information. 

M68000 Family product literature has 
been assembled into three special, distinct 
assortments for differing 
interests. They include 
brochures, technical 
summaries and data 
sheets, benchmark 
reports, application 
notes, technical article 




reprints and other useful pieces. 

The M68KPAK is the M68000 Family 
overview, from chips and software to 
board- and system-level products. 

The M32BITPAK focuses on our top- 
o -the-industry 32-bit products, featuring 
the MC68020, of course. 

The M68KCOMPAK is oriented to the 
extensive M68000 Family communica- 
tions capabilities. G 

■ One-on-one design-in help. 

Get engineer-to-engineer insight on 
designing-in the M68000 Family. 

1-800-521-6274 

Call toll-free any weekday, 8:00 a.m. to 
4:30p.m.,MST.If 
the call can't cover 
your needs, we'll 
have our local 
applications engi- 
neer contact you. 



We're 
pnyour 
design-in 
team. 



M) MOTOROLA 




Please send me the following information 
on the M68000 Family. 

A G M68000 Family Communications 

Capability 
B □ M68000 Family High-Performance 

MPUs 
C G HDS-300™ Hardware/Software 

Development Station 
DQM68000KIT 

E □ M68000 Family PLCC Packaging 
F □ M68000 Family Audio Cassette 

Training Courses 
G G Literature Packs: 

1 QM68KPAK (General Family) 

2 nM32BITPAK (Family 32-bit) 

3 DM68KCOMPAK (Communications) 



To: Motorola Semiconductor Products, Inc. ■ 

P.O. Box 20912, Phoenix, AZ 85036 



Name , 



Title 

Company . 
Address 



City 



State 



Zip 



Please call me (_ 



OCTOBER 1987 -BYTE 67 



ASK BYTE 



Conducted by Steve Garcia 



CAD Programs 

Dear Steve: 

I am looking into how to interface a 
computer-aided-design (CAD) program 
for an IBM PC-style computer with com- 
puter-numerical-control (CNC) ma- 
chines. I would like to study the CNC 
programming practices and languages 
that are being currently used. I under- 
stand that MAP (manufacturing automa- 
tion protocol), developed by General 
Motors, is gaining some acceptance. 

I would be grateful for any sources you 
could give me to learn more about these 
or related subjects. 

Thaddeus M. Sendzimir 
Waterbury, CT 

Basically, mechanical CAD packages 
produce a database containing all the di- 
mensional information for the part. A 
separate program digests that database 
and produces a file that directs the CNC 
machine's motors to move the tool and 
workpiece in the right direction at the 
right time. 

Unfortunately, there are no standards 
for the format of the CAD database, the 
instructions that the CNC tools expect to 
see, or the method you use to get the two 
talking together. That's the motivation 
behind MAP, which was supposed to set 
up some solid standards. Unfortunately, 
GM is finding that it 's bitten off far more 
than it can chew: MAP is running into 
some serious schedule slips and general 
confusion. 

One of MAP 's big selling points was 
that it could connect everything to every- 
thing else. You might want to start out a 
lot smaller, with only a few tools at first. 
This gives you a chance to find out the 
advantages (and the problems) of com- 
plete automation without betting the 
whole company on someone else 's ability 
to make everything work. 

Fun though it is to play around making 
serious machinery take heavy cuts and 
spit big blue hot curly chips, I don 't think 
this is a roll-it-y our self topic. There are 
too many subtle issues involved in getting 
it to work without wrecking something ex- 
pensive along the way. 

The general- purpose CAD program 
isn 't suitable for this sort of work; you 
need full-blown three-dimensional solid 
modeling capability. The number of com- 
putations and display resolution required 



for that puts the hardware out of the PC 
or AT class and into the engineering 
workstation class. Of course, the price 
goes up along with the performance. 

Probably the best starting point is to 
call up the folks who sell machine tools 
and pick their brains on CNC hookups. I 
suspect you '11 find that they have a pack- 
age that bolts a specific CAD package to 
a specific CNC machine, or perhaps to a 
family of similar machines. A general 
connection from a given CAD package to 
all the machines you 're planning to use 
will be more difficult to get. 

Ask what CAD programs are compat- 
ible with which CNC machines. When 
you get the same answer from more than 
one vendor, invite that CAD company in 
for a talk, and ask what tools they drive. 
Eventually, you '11 figure out who 's doing 
what. Ask for references, and be sure to 
follow them up: Talking with someone 
who 's already done it is worth more than 
my advice any day. What you should be 
interested in is a complete packaged sys- 
tem rather than the details of exactly how 
the drawings get translated into tool 
paths. There are enough traps at your 
level to ruin your day. —Steve 

Incompatible Compatibles 

Dear Steve: 

My organization bought a few Corona 
PCs because they were IBM PC-compat- 
ible. However, the staff encountered 
some problems when they created Word- 
Star files on a Corona and tried to read 
them on IBM PCs or other compatibles. 

Specifically, WordStar text files that 
were saved on a Corona and stored on a 
floppy disk seemed corrupted when they 
were read on IBM PCs or other compat- 
ibles: Part of a file (a page or a few para- 
graphs) would be missing or would be 
composed of peculiar characters. Some- 
times WordStar would read in files other 
than the ones we specified. 

Likewise, when a text file was created 
on other machines, it appeared corrupted 
when it was read by a Corona PC. 

I would be grateful if you could help us 
identify the problem. 

Yeo Pee Pin 
Republic of Singapore 

Your problem with WordStar files may 
be due to using different versions of DOS, 
the disk operating system, which you use 



to initially boot up the computer. The 
symptoms you describe appear when a 
disk created by DOS 2. or higher is used 
on a computer running DOS 1.0 or 1.1. 

To avoid this type of problem, you 
should standardize on a later version of 
DOS (say 2. 1) for all machines. Be sure 
that any system disks or boot disks used 
on the various computers are all DOS 2. 
or higher. 

If this is not possible, remember that a 
computer running DOS 2. can use a disk 
created by DOS 1.1, but a computer run- 
ning DOS 1 . 1 cannot use a disk created 
on a computer running DOS 2. 0. You can 
determine the version of DOS running on 
a computer at boot time, when the DOS 
"signs on" with its version number. To 
determine under which version a disk has 
been formatted, use the CHKDSK com- 
mand. A disk formatted with DOS version 
1.1 will report a disk capacity of 320 K 
bytes (160K bytes if single-sided) , while a 
disk formatted with DOS 2. or higher 
will report a capacity of 360 K bytes 
(180 Kbytes if single-sided). 

To make use of WordStar files created 
under DOS 1.1, you should boot your 
computer with DOS 2.1 in drive A:, for- 
mat a blank disk in drive B:, replace the 
disk in drive A with the old disk contain- 
ing your WordStar files, and then use the 
COPY command to transfer your WordStar 
files on A: to the newly formatted disk in 
drive B:. You can then reformat the old 

continued 



INASKBY1E, Steve Garcia answers questions 
on any area of microcomputing. The most 
representative questions received each month 
will be answered and published. Do you have 
a nagging problem? Send your inquiry to 
AskBYlE 
do Steve Ciarcia 
P.O. Box 582 
Glastonbury, CT 06033 

Due to the high volume of inquiries, we 
cannot guarantee a personal reply, but Steve 
and the Ask BYTE staff answer as many as 
time permits. All letters and photographs be- 
come the property of Steve Ciarcia and can- 
not be returned. 

The Ask B YTE staff includes manager 
Harv Weiner and researchers Eric Albert, 
Bill Curlew, Ken Davidson, Jeannette Dojan, 
Jon Elson, Roger James, Frank Kuechmann, 
Dave Lundberg, Tim McDonough, Edward 
Nisley, Dick Sawyer, Andy Siska, Robert 
Stek, and Mark Voorhees. 



68 BYTE- OCTOBER 1987 



MICROSOFT LANGUAGES NEWSLETTER VOL. 2, NO. 10 



News about the Microsoft Languages Family 



Optimizing Your Programs with the Microsoft® C Optimizing Compiler Version 5.0 

Fast execution speed is the single most important feature of a C compiler. Volume 2, Number 2 of the Microsoft Languages 
Newsletter talked about the optimizations available in Microsoft C Version 4.0. Microsoft C Version 5.0 takes these optimizations 
further. For example, 



for(i = 0;i<25;i++) 
array[i] == a*b; 



becomes tmp = a*b; 

for(i = 0;i<25;i++) 

array [i] = tmp; 

Since a and b are not affected by the loop, they are moved outside of the loop. This optimization is called invariant code motion. 
The Microsoft C Optimizing Compiler also uses instructions available on the 8086 to optimize specialized loops. Initialization 
and memory movement loops are two examples. The optimizer generates REP STOSW and REP MOVSW instructions for 

inti,x[25]; and inti,x[25],y[25]; 

for (i = 0; i < 25; i++) for (i = 0; i < 25; i++) 

x[i] = 0; x[i] = y[i]; 

The following example is more complicated. The optimizer rewrites array references as pointer references because they are 
more efficient. 

int i, x[25]; becomes int i, x[25], *ptr; 

for (i = 0; i < 25; i++) for (i = 0,ptr = x; i< 25; i++,ptr++) 

x[i] = i*4; *ptr = i*4; 

Then the optimizer puts key variables in registers using bop enregistering and changes the loop incrementation using a 
process called strength reduction. The loop becomes 

int i, x[25]; 
i = 25; 

\ 



register int j; 
register int *ptr; 
for(j = 0,ptr = x;j 
*ptr = j; 



100; j + =4,ptr++) 



The final form of the loop uses registers for key values and exchanges addition instructions for multiplication instructions. . 
Here is the output of the Microsoft C Optimizing Compiler in 8086 assembly code. 



mov 
mov 
sub 
sub 

$L20000: 

mov 
add 
add 
cmp 
jle 



WORDPTR[bp-52],25 

di,bp 

di,5C 

si,si 



WORDPTR[di],si 

di,2 

si,4 

si,96 

$L20000 



; set final value of i to 25 

; load pointer to x 

; set temporary register variable to 

; this variable is used as the loop counter 

; set the array value 

; increment pointer by 2 

; increment loop counter by 4 

; check if we are at the end of the loop 



What is the result of these optimizations? Programs compiled with Microsoft C Version 5.0 run 15 to 30 percent faster than 
those compiled with Version 4.0. 



For more information on the products and features 

discussed in the Newsletter, 

write to: Microsoft Languages Newsletter 

16011 NE 36th Way,Box 97017, Redmond, WA 98073-9717. 

Or phone: 

(800) 426-9400. In Washington State and Alaska, 

call (206) 882-8088. In Canada, call (416) 673-7638. 



Microsoft and the Microsoft logo are registered trademarksof Microsoft Corporation. 

Look for the Microsoft Languages Newsletter every month in this publication. 



Latest DOS Versions: 




Microsoft C Compiler 


5.00 


Microsoft QuickC 


1.00 


Microsoft COBOL 


2.20 


Microsoft FORTRAN 


4.01 


Microsoft Macro Assembler 


5.00 


Microsoft Pascal 


3.32 


Microsoft QuickBASIC 


3.00 



Microsoft 



' tfft 



tf 



Circle 182 on Reader Service Card 



t« 



ltfl» 



CAD 



SOFTWARE & PRINTERS 



PRINTERS & LASERS 



AIds Call 

ASTTurboLaser Call 

Citizen 

120-D S159 

MSP-10 S249 

MSP-15 S319 

MSP-20 S279 

MSP-25 S375 

Overture 110 Laser . .51599 

Premiere 35 S429 

Tribute 224 S579 

Diconix 150 S289 

Fijitsu Call 

H-P Laser Jet 500* ... . Call 

JDL call 

NEC ■ Call 

CHIPS 64k. 256k. 8087. 80287 

MONITORS & TERMINALS 



Nissho Call 

Okidata Call 

Panasonic 

1080i S153 

10911 S167 

1092i S289 

1592 S370 

1595 S399 

3131 S250 

3151 S275 

Toshiba 

321 SL S479 

341 E $649 

341 SL „..$689 

351 C ... r AQ?.?.&B» 

Call 



S70 

. . . .S229 
, . . .5289 

....Call 



Amdek 

1280 

Goldstar 

TTL 

RGB 

RGB .31 . . 
Hitachi ... 
Mitsubishi 

Diamond Scan Call 

Others -.^S Call 

NEC Multisync.. » rTssa* 

Multisync Plus Call 

Multisync XL Call 

Sigma Designs 

LaserView 15" S1590 

LaserView19" S1890 

Sony Multiscan Call 

Taxan 

123 G S85 



124 A S95 

635 Ultra HiRes RGB . .S378 
650 Ultra HiRes RG8 . .$439 

720 14" HiRes S315 

77014" MultiRes S559 

Teknika Multi-Scan ...S469 
Thompson Ultrascan . .5569 

VerticomCD-5 $1998 

Viking 1 & 10 Call 

VMI Call 

Wvse 

30 $282 

50 $356 

60 $399 

75 $559 

85 $419 

99GT $498 

700 $674 

Others Call 



AUTOCAD 

Tutorials. Symbols, and Custom Programs Call 

SOFTWARE 

Logitech Publisher 

& Mouse S119 

Lotus 123 2.01 S296 

MathCad S189 



Acad Call 

AutoSketch iQ«L$59 

Boeing Graph . . . . V* ?53*» 
CPA* lor Lotus 123 ...S279 

Clipper S365 

dBase III Plus $365 

Diagraph Windows.... S299 

DraTix 1 $129 

Drafix 1 Plus Call 

Drafix Options Call 

Dr. Halo II (ltd qty) S29 

EasyCad S279 

Enable 2.0 S355 

Fast Forward $59 

FastCad S1298 

FastBack Backup S89 

FullBack Backup S49 

GEM Publisher S299 

Generic Cadd 3.0 S55 

Generic Opt Call 

Harvard Presentation 

Graph II S194 

Lighting Speedup $54 

LogiCaddS Mouse.... $119 



Calcomp 

1041 Call 

1043 S6790 

Digitizers Call 

Enter 

Sweet-p 600 S639 

1000 S2690 

1200 $2990 

Houston Instruments 

DMP41/42 S2298 

OMP 51/52 S3298 

OMP 52MP S3698 



MemoryMate Call 

Microsoft Word 3.11 ..S199 
MSDOS 3.2 w/Basic . . . .S65 
NewViews . . qu<\ ^m 

Paradox "...S369 

PathMinder $49 

Peachtree Accounting .$159 ... 

Perspective 3D S159CA* 

PFS: First Choice Jflf 

PFS First Publisher: .. . Call 
PFS: Professional File .$110 
PFS: Professional Plan ,S99 
PFS: Professional Write S87 
R:Base5000SysV....S345 
Tas-Books Accting 

& Obase A.S85 

V-EMM ^(0*t.S68 

Ventura Publishing.... J4ff 
Versacad & Libraries . Call 
WordPerfect 4,2 V$\ J*4i 
WordPerlect & Library S235 
DIGITIZERS & PLOTTERS 
Hitachi 

Tiger 111 1C $399 

Others 

H-P Plotters 

loline 

JDL 

Kurta 

Mitsubishi Digitizers 

Graf net-01 8x12 $260 

Grafnet-02 13x16 Call 

Numonics Call 

Summagraphics Q 0l» 



. Call 
. Call 
.Call 
. Call 
. Call 



DMP56A S4098 Summa 12x12 (P»i.v.S339 

MP Options Call Others \Vf... Call 

-oO^Si© COMPUTERS 

AST Premium 286 . ..« C«« Toshiba 



Compaq . . . ^j$*\» Ca|| 



Cordata ~\ Call 

IBM Call 

NEC Multispeed Call 

Sperry IT (AT) Enhanced 
40 Meg S2599 



T110O* Call 

T110O/T310O 

Modem H.M S219 

T3100 $2755 

Wysepc/286 S1299 

Zenith 181 Laptop.... S1629 

80ARDS & NETWORKS 

Others Call 

NECGB-1 S299 

Novell Call 

Number 9 Call 

Paradise 

AutoSwitch EGA 480 .. S279 

Photon Call 

So ma Designs 
EGAAutoCard480....S249 

Color 400 S289 

Verticom. Call 

Video 7 

Vega Deluxe w/VG A ..$275 

Others Call 



Aristocats Call 

AST Boards Call 

ATI 

Graphics Solutions . . .S169 

EGA Wonder $219 

Control Sys Artist .... Call 

Genoa SuperEGA S318 

Hercules 

Color S139 

Graphics Plus S171 

JnColor S359 

Intel 

Above Board AT S311 

Above Board PS/AT ..S341 
InBoard 386/AT S1436 

DRIVES MODEMS FAX 

Fijitsu 5.25 360k Drive . .S79 ST238 30 w/Card S359 



SmartModem 1200i 

& SW S85 

SmartModem 2400e 

&SW S199 

Toshiba 3.5" XT/AT 

720k Drive S115 

US Robotics 

Courier 2400 .5329 

Microlink 2400 $326 

MOUSE & ACCESSORIES 

Logitech Microsoft Mouse 

Logimouse C7 $65 w/Paint $115 

Logimouse Bus S89 PC Mouse/Optimouse 

w/Haloll $97 



Hayes Call 

MicroFax Call 

Novell . 

Modem T1100/T3100/I9 

Z1B1 *Si 

PhoneFlex .$169 

Seagate 4.AH 

ST225 20 w/Card .T7\% 



M.H.I. WAREHOUSE 

5021 N. 20th Street #10261 • Phoenix, AZ 85064 
TOLL FREE with order • 602-995-1134 
Hours 8-5 MT M-F 9-2 SAT 
Prices reded casn discount and are subject to change 
without notice Compatibility ol products not guaranteed 
All returns are suoject lo a restocking charge 
Preapproved P s are welcome and C Q s are subjecl i^* >ft \ft"J 
to 2 1 1 -, plus 5/H AJI Silii in Flint. Alt oroduct claims r° |s * " 
and warranties are Handled oy the manufacturer only tjjifiifir 



VISA 



ASK BYTE 



disk under DOS 2. 1 for future use. 

I hope this helps solve your problem. 
—Steve 

Driven Crazy by Drivers 

Dear Steve: 

Someone has said: "Only the rich can 
afford to buy anything cheap, because if 
it does not suit their needs, they can sim- 
ply throw it away." This is so true for 
those of us who love computers but do not 
have the time or the inclination to pro- 
gram them. I find it particularly true of 
printer drivers. 

I need a driver or other instructions to 
use the full power of both the Amiga and 
my new Panasonic KX-P1092 printer. I 
also have Micros System's Scribble 2.0 
(an excellent value, by the way). I need a 
printer driver that is simple enough for a 
novice to install. Hopefully, one driver 
will work with both Scribble and the 
Amiga. 

George Of fenbacher 
Port Clinton, OH 

To use your Panasonic printer with the 
Amiga, you need an Epson printer driver. 
Fortunately, this driver is included with 
your system, and you can select it from 
the Preferences menu. Just change the 
printer selection to Epson, and your 
printer should work fine. Be sure to save 
your preferences after you make the 
change. —Steve 

CB86 and Cursor Keys 

Dear Steve: 

I have some programs written in 
CB80, Digital Research's 8-bit com- 
piled-BASIC language. I have recom- 
piled these programs under CB86 to run 
on the Compaq computer. Everything 
works fine, except that I cannot read the 
cursor keys. I think that the Compaq is 
sending an ASCII followed by another 
character whenever I press a cursor key, 
but that the CB86 program cannot pick up 
the character and only picks up the fol- 
lowing character. 

Is there something I'm overlooking, or 
is there another way to pick up the use of 
the cursor keys besides using CB86's 
INKEY function? 

Weldon Bailey 
Kingwood, TX 

You 're absolutely right about the way 
the cursor keys work. IBM picked a two- 
character code to represent the keys that 
didn 't have good ASCII equivalents, with 
the first character of the pair being ASCII 
O. The second character is a standard 
ASCII character that, except for the lead- 
ing null, is indistinguishable from the 
code produced by some other key . 

For example, the cursor keys produce 



these codes: left arrow = <null> K; 
right arrow = < null > M; up arrow = 
< null> H; and down arrow = < null > 
P. IBM's INKEY$ function returns a 
string that contains none, one, or two 
characters. If no key was pressed, there 
will be no characters in the string. An or- 
dinary key will return the single ASCII 
character that you'd expect. The ex- 
tended keys (such as cursor or function 
keys) return two characters, the first of 
which is always a null. 

Now, I don't know exactly how CB80 
and CB86 work, but what you suspect 
may well be happening. You could try 
putting the INKEY in a loop, printing out 
the length of the result as well as the actu- 
al characters and their numeric equiva- 
lents. That should tell you something. 

One possibility is that CB86uses a null 
to represent "no key pressed, " in which 
case you're sunk without a trace. You 
could write a small assembly-language 
program that would grab the keyboard 
interrupt back from BASIC and perform 
the same function as INKEY, but that's a 
pretty tricky project. — Steve 

DOS EXEC 

Dear Steve: 

I have been in the software field for 
about two years, developing application 
software in COBOL and BASIC for busi- 
ness purposes. During this time I have 
often encountered cases where it would 
be useful to be able to execute DOS com- 
mands from within my programs. 

I am not an expert in assembly lan- 
guage. Nevertheless, it would be most 
helpful if you could at least point me in 
the right direction. Could you also sug- 
gest any assembly language books that 
could help me in developing assembly 
routines for other purposes? 

Floyd D'Aguiar 
Bombay, India 

A program executes DOS commands 
from within itself by using the DOS func- 
tion called EXEC. This function loads 
and passes control to a specified pro- 
gram. That program can be another copy 
of the command inteipreter (COMMAND- 
. COMj , with a command line set up to exe- 
cute an internal or external command. 

The EXEC function is tricky, and the 
standard DOS documentation is woefully 
inadequate. Advanced MS-DOS by Ray 
Duncan (Redmond, WA: Microsoft Press, 
1986) has a 20-page description of the 
command, including an example pro- 
gram and a two-page summary with a 
number of caveats. PC DOS 2. and 2. 1 
had some crippling bugs in the EXEC 
code, so if you 're using either of them, it 
may be time for an upgrade. 

continued 

Circle 282 on Reader Service Card _► 



AMERICAN 




SMALL BUSINESS 


Prodesign II 


..$169.00 


ANSA 

Paradox 


..$359.00 



PC COMPATIBLE 
SOFTWARE 

AMERICAN 
SMALL BUSINE 

Prodesign II 

ANSA 

Paradox 

ASHTON-TATE 

D Base III+ .$389.00 

FrameWork II $389.00 

Multimate Advantage II $CALL 

Rapidfile $244.00 

BOEING 

Boeing Calc $CALL 

Boeing Graph $CALL 

BORLAND 

Eureka .■.„.,. $CALL 

Keflex „.....„..„«......$84.05 

Reffex Workshop; ....„.„..„. $44.95 

>d) $47,00 

Sidekick-Traveling 

Sidekick Bundle $74.95 

Superkey .„.....„„„.„...„.... $37.00 

Travelling Sidekick ,. $42,95 

Turbo C ............... SCALL 

Turbo Database Toolbox ..$42.95 

Turbo Gameworks $39.00 

Turbo Graphix Toolbox $31.00 

Turbo Jumbo Pack $177.00 

Turbo Lightning $54.95 

Turbo Pascal ,.,.,..,...,..,..... $59.00 ; 

Turbo Pascal 

Numerical Methods -.,...,.,$59.00 

Turbo Prolog ,.„.,;.. ...SCALL 

Turbo Prolog Toolbox $57.95 

Turbo Tutor«,.»«L«..,..„... $27.95 
BRODERBUND 

Graphics Library $25.95 

Graphics Library Disks $24.95 

Newsroom Pro $69.95 

Print Shop $39.95 

Print Shop Companion $32.00 

Toy Shop $42.95 

CENTRAL POINT 
SOFTWARE 

COPY II PC $27.00 

Option Board .$79.95 

PC Tools $27.00 

DAC SOFTWARE 

Dae Easy Accounting $54.95 

Dae Easy Acct. Tutor $19.95 

Dae Easy Payroll $39.95 

DAYBREAK 

Silk $CALL 

ELECTRONIC ARTS 

Call for price on all titles! 
EPYX 

Call for price on alt titles! 
FUNK 

Sideways $37.95 

GENERIC SOFTWARE 

Generic Cadd 3.0 ............ $69.95 

Generic Caddw/Dot Plot ..$89.95 

INFOCOM 

call for price on all titles'. 

LIFETREE 

Volks Writer ... $157.00 

Words & Figure $137.00 

LIVING WDEOTEXT 

Ready! ...$52.95 

Think Tank ......$97.95 

LOTUS 

1 23 $307.00 

HAL $CALL 

Symphony $439.00 

MECA 

Managing Your Money ...$119.95 

MERIDIAN TECHNOLOGY 

Carbon Copy $109.00 

MICROPRO 

Wordstar 2000 .,..............$199.00 ! 

Wordstar 20004"........ $219.00 

Wordstar Prof Bel 4 „..,... $249.00 
MICRORIM 

R Base System 5 $427.00 

Clout $1 24.00 

MICROSOFT 

Access SCALL 

C Compiler $249.00 

Chart $1 64.00 

Flight Simulator $32.95 

Fortran $267.00 




Macro Assembler $87.00 

MS-DOS & GW Basic. ......$CALL 

Mouse $109.00 

Pascal $1 67.00 

Project $227.00 

Quick Basic $57.00 

Windows $57.00 

Word $279.00 

MICROSTUFF 

Crosstalk XVI $94.00 

NORTON PRODUCTS 

Norton Commander $39.95 

Norton Utilities ........$49.95 

Norton Advanced Utilities ,$84.00 
PAPERBACK SOFTWARE 

VP Planner $52.95 

Executive Writer $39.95 

Executive File $29.95 

VP Graphics $CALL 

VP Expert $CALL 

VP-lnfo $59.00 

PERSONICSCORP 

Smart Notes $47.95 

ROSESOFT 

Prokey $74.00 



SOFTWARE PUBLISHING 

Harvard Total PM $257.00 

Harvard Presentation 

Graphics $229.00 

PFS First Choice $94.00 

Professional File $139.00 

Professional Plan $CALL 

Professional Write $109.00 

SIMON & SCHUSTER 
Typing Tutor III $39.95 

SPRINGBOARD 

Newsroom Pro $79.00 

Clip A $CALL 

SYMANTIC 

Q&A $21.00 

TURNER HALL 

Note It $57.00 

SQZ $57.00 

WORDPERFECT 

WordPerfect $207.00 

Executive $1 27.00 

Library $79.00 

Math Plan $CALL 

XEROX 

Ventura Publisher $CALL 



HARDWARE 



PRINTERS 



CITIZEN 

120D. 


...$174 00 


MSP-10 


...$279.00 


MSP-15 


...$379.00 


Premier 35.... 


...S45Q.nn 


Tribute 224 $CALL 

EPSON PRINTERS 

FX-86E $317 00 


FX-286E 


,$447.00 


LX-800.... 


...$179.00 


LQ-800 


...$447.00 


LQ-1 000 


...$627.00 


EX-800 


...$387 00 


EX-1000 


...$497.00 


GQ-3500 LASER 


SldQQnn 


CALL FOR PRICE 

ON EPSON COMPUTERS 

PANASONIC PRINTERS 

1 0801 „..$1 59.00 

1Q91L..„ r .$l89ftfl 


t092t 


.$279.00 


1592 „, 


...$389.00 


1595 


,..$439.00 


31 31 


...$259.00 


3151 .. „. 


.„$3S9.no 


Laser Printer ...... „,......$CALL 

STAR MICRONICS 

NP-10 $134.95 


NX-10 


...$157.95 


NX-15 


...$349.00 


ND-10 


...$289.00 


ND-15 


,..$429.00 


NR-15 


...$499.00 


NB24-10 ... 


...$499.00 


NB24-15 


___£fi3Q.nn 


MONITORS 


TTL Monochrome 

Amdek 41 0A Amber, 

Green.or White .....$149.00 

Blue Chip Green $89.00 

Packard Bell Amber w/std. $97.00 
Samsung TTL r Sfl9.no 


Xtron Amber 
TTUCGA autoswitch .. 
Zenith 1240 


...$119.00 
...$139.00 


RGB 

Magnavox 8562 


...$269.00 


Magnavox 51 5 

Thompson. ..All Models 
Zenith 1330 


...$289.00 
.... $CALL 
...$407.00 


EGA 

NEC Multisync 

Packard Bell 
EGAVCGA/TTL Auto .... 
Amdek 722 


...$549.00 

...$419.00 
...$477.00 


Thompson Ultrascan ... 
Zenith 1470 EGA 


...$499.00 
...$219.00 



Kensington 

Accessories In stock!!! 

Call for Best Price 



DON'T SETTLE FOR LESS... 

tcp SHIPS IT 




Software orders over $50 & Accessories/Peripherals 
under 8 pounds will be shipped FEDERAL EXPRESS 

(Yes even a t these prlces).You only pay TCP's standard shipping charge o f $4 .00 per 
order. Orders arriving before 1 1 :00 AM our time will be shipped out same day.!! part of 
your order is backordered the remainder will be shipped UPS Ground lor FREE. 



TOLL 



FREE 



1-800-468-9044 



PC ADD ON BOARDS 

AST 

Advantage(128k) $319.00 

Rampage AT $419.00 

Rampage PC 

6 Pak +(64k) $CALL 

I/O Mini II $159.00 

ATI 

Graphic Solution $187.00 

EGA Wonder $274.00 

BOCA RESEARCH 
EGA/CGA/MDA/MCA .....|1 49.00 

BOCARAM XT w/OK $139.00 

BOCARAM AT w/OK $169.00 

Bocarams are Intel Above Board 
compatible 

BOCA I/O AT...... $79.95 

BOCA I/O XT $79.95 

Gameport Adapter for I/O .$19.95 
HERCULES 

Graphics Plus $179.00 

Color Card $147.00 

Other Hercules boards in stock... 

Call for price 

INTEL 

AboveBoard PC $227.00 

AboveBoard PS/XT $267.00 

AboveBoard AT $339.00 

KEYSTONE 
TECHNOLOGIES 
Add on Cards 
-Compatibility guaranteed 
-1 year replacement warranty 
CGA card w/printer port ....$69.95 
Hercules Compatible Mono 

card w/printer Port $69.95 

Multt I/O $CALL 

for configuration and price 
PARADISE 

Autoswitch... SCALL 

STR 

EGA+ $259.00 

Chauffer HT $214.00 

ZUCKER 

CGA $89.95 

Monochrome Graphics $94.95 

Memory Expansion SCALL 

PC HARD DRIVES 

Miniscribe 

30MB XT Drive 

w/controller $339.00 

30MB Hard Card $379.00 

40MB AT Drive $379.00 

Seagate 
ST-225 20MB 

w/controller $289.00 

ST-238 30MB 

w/controller $359.00 

AT Hard Drives 

ST-4038..... $549.00 

ST-251 $469.00 

Western Digital 

File Card 20 ..$439.00 

File Card 30 $CALL 

AT FD/HD Controller $169.00 



INFORMATION AND PA ORDERS B14-234-2236 

OPEN: 8:00AM-9:00PM Mon-Frl 
10:00AM-6:00PM Sat-Sun EAST COAST TIME 




tCD XT 10 



tcp price $76&tfb 

Limited Introductory Offer 

$699.00 



■ 1 0MHz with Wait State. ■ 640 KB RAM (120 nano- 
seconds) on motherboard. ■ 150W Power Supply. ■ 8 
Expansion Slots. ■ (2) 360K Floppy Drives (Room for 2 
additional 1/2 height devices). ■ 101 Key, Enhanced AT 
Style Keyboard with IBM® type mechanical "touch- 
click"f eel. ■ Reset and Turbo Buttons plus Keyboard 
Keylock on front panel. ■ Hercules compatible 
monographic card (720 x 348). ■ Packard-Bell High 
Resolution Amber Monitor with tilt and swivel. ■ 
Parallel and Serial Ports, Clock/Calender w/Battery 
Back-up. ■ MS DOSv3,21/GW Basic Option $79.95. 
HARD DRIVE OPTION: Same as above but 
w/single Floppy Drive, 30MB Hard Drive and 
Controller. Introduction Price $949.00 
Buy with Confidence, 30-Day Satisfactbn Guarantee 



MSI 

PC mouse w/Dr. Halo I 

MODEMS 



..$104.00 



Hayes Smart Modem 

1 200B w/sw $329.00 

2400B w/sw $499.00 

Keystone Technologies 1/2 Card 
Internal 300/1200,lncludes PC 

Talk 111 software $89.00 

2400 baud Internal $199.00 

Packard Bell External 

300/1200 baud $149.00 

2400 baud External $279.00 

US Robotics Sportster 

300/1200 baud $139.00 

Ventel Modems 

Call for best prices on all models 

Zucker 

300/1200 Half Cd Modem 

with software $87.00 

CHIPS 

Numeric Coprocessors 

8087 ....$104.00 

8087-2 ....$147.00 

80287 $179.00 

80287-2 $CALL 

Memory Chips 
64k- 120 or 150ns 
64k x 4 120 or 150ns 
256k < 120 or 150ns 
PRICES ARE TOO VOLATILE 
TOLISTI PLEASE CALL 
FOR CURRENT PRICE. 




AHSTRAD 



PC-1512 

Compatibility 

PlusBBMHz 
Processor! 3 
Available Slots 
l 512K Memory 
l Parallel Port, Serial Port, 
Game Port Standard ■ Microsoft 
Compatible Mouse ■ MS-DOS 3.2, 
GEM Desktop, GEM Basic 2 ■ CGA Video Card 

CALL FOR BEST PRICE 
IN THE USA 



TOSHIBA 

3 1/2" DRIVE, 720 K, 
Requires DOS 3.2 or higher 

Includes Mounting Hardware $129.00 



EDUCATIONAL & CORP ACCOUNTS 

CALL 1-800-533-1131 

Inside PA Call 814-234-2236 



DISKS 

par box oT10 



3-50" 5.25' 



BONUS DS/DD - $6.95 

MAXELL DS/DD $17.95 $9.95 

VERBATIM DS/DD $19.95 $9.95 

SONY DS/DD $16.95 $8.95 



To order by mall: We accept money order, certified check, 
personal check. Allow 2 weeks lor personal check to clear. 
Shipping: $4.00 tor software and accessories/ $10.00 for 
printers and color monitors/ $8.00 for disk drives and other 
monitors/ Add $3.00 per box shipped COD. Call tor other 
shipping charges. Additional shipping required on APO, 

FPO, AK, HI, and foreign orders. ^^^__ 

Terms: ALL PRICES REFLECT nSF 
CASH DISCOUNT, ADD 1.9% L^££. 
FOR MASTERCARD OR VISA, ^^™ 
All products include factory warranty. 
ALL SALES ARE FINAL Defective items replaced or re- 
paired at our discretion. Pennsylvania residents add 6% 
sales tax. Prices and terms subject to change without notice. 



TUSSEY COMPUTER PRODUCTS 



P.O, BOX 1006 

STATE COLLEGE. PA 16804 




1971. Kansas 
tornado blows out DEC™ 

PDP-IIs. Files saved 
on 3M data cartridge tape? 



1978. Colorado electric 

storm jolts Wangs? 

Files saved on 3M data 

cartridge tape. 



The more th 
the more they 



1984 Hard disk fails 

in soft market; brokers panic. 

Files saved on 3M data 

cartridge tape. 




1972. Moonlighting 

programmer deprograms company's 

production records. Files 

saved on 3M data cartridge tape. 





1979. Little Stevie Fong 
[lips floppies out 
father's office window. Files saved 
on 3M data cartridge tape. . 





1985. Sal's Diner. 

Dropped eggs scramble Macs." 

Files saved on 3M data 

cartridge tape. 






1973. Fastidious 

janitor turns off IBM* 370. 

Files saved on 3M data 

cartridge tape. 




1980.1femporary help 
permanently dumps accounting 

records on Apple III. Files 
saved on 3M data cartridge tape. 




1987 Delivery boy delivers 

IBM PS/2™ swiftly and 

abruptly to the sidewalk. Files saved 

on 3M data cartridge tape. 




ings change, 



stay the same 




1975. Head of the 

office trips, pulls plug on 

HP" 3000. Files saved 

on 3M data cartridge tape. 




1981. Circuit breaker 

flips, floppies flop. 

Files saved on 3M data 

cartridge tape. 




1990. Somewhere, 
somehow on some computer, data 

will crash. Files will be 
saved on 3M data cartridge tape. 






1976. Unnamed computer 

does the unmentionable. 

Files saved on 3M data 

cartridge tape. 



1977. Office 

fire bakes Apple* lis. 

Files saved on 3M data 

cartridge tape. 





1982. Head crash 


1983.Thief sneaks 


^es fatal to Lisa.™ Files 


away with Osbornes® Files 


saved on 3M data 


saved on 3M data 


cartridge tape. 


cartridge tape. 



Computers come, and computers go. 

But when they go out abruptly, youVe always been 
able to rely on 3M data cartridge tape for backup. 

In fact, 80% of the people who back up on data 
cartridge tape back up on 3M. 

Why? 

We've been covering computer and human errors 
almost longer than computers and humans have erred 
together. 

Not only did we invent and patent data cartridges, 
we've continually patented the innovations that make 
data cartridge backup the best way to back up data. 

Which is something that's never changed. 



Call (800) 423-3280 for a brochure. 



Trademarks/owner: DEC/Digital Equipment Coiporation; IBM, Personal System/2/Intemational Business 
Machines Corp.; 11 P/ Hewlett-Packard; Apple, Lisa/Apple Computer Inc.; Wang/ Wang Laboratories; 
Osborne/ Novell, Inc.; Mac/Macintosh Laboratory, Inc. 

"True to life stories. ©3M 1987 



3M 



Circle 2 on Reader Service Card 



Circle 131 on Reader Service Card 

Rack & Desk 
PC/AT Chassis 



ASK BYTE 




A Fresh Approach 

Integrand's new 
Chassis/System is not 
another IBM mechanical 
and electrical clone. ** 
Appearance, power, Q 
thermal, reliability and EMI 
problems that plague other 
designs have been solved. An entirely 
fresh packaging design approach has been 
taken using modular construction. At present, 
over 40 optional slock modules allow you to 
customize our standard chassis to nearly any 
requirement. Integrand offers high quality, 
advanced design hardware along with 
applications and technical support 
all at prices competitive with imports. 
Why settle for less? 




Rack & Desk Models 



Accepts PC, XT, AT Motherboards 
and Passive Backplanes 



Doesn't Look Like IBM 



Rugged, Modular Construction 



Customize with over 40 Stock Panels 
Excellent Air Flow & Cooling 



Optional Card Cage Fan 



Designed to meet FCC 



204 Watt Supply, UL Recognized 



145W&85Wabo available 



Reasonably Priced 



Made in USA 



RESEARCHCORR 



Call or write fa descriptive brochure and prices: 

8620 Roosevelt Ave. • Visalia, CA 93291 

209/651-1203 

TELEX 5106012830 (INTEGRAND UD) 

, EZLINK 62926572 

We accept BankAmericard/VISA and MasterCard 

IBM, PC, XT, AT trademarks of International Business Machines. 
Drives and computer boards not included. 



You '11 need to figure out a way to pass 
control to an assembly routine that will 
release the excess storage allocated to 
your COBOL or BASIC program. I'm not 
sure how to do this with the compilers 
you 're using , but I think it will be a little 
messy because neither language was in- 
tended for this sort of application. Dun- 
can 's book details what to do with C and 
assembler programs, so you may be able 
to figure out how to use it with your lan- 
guages.— Steve 

Printer Problems 

Dear Steve: 

The problem I'm having is with a 
printer interface between a Tandy DMP- 
2100 (not to be confused with a DMP- 
21 OOP) printer and IBM PC XT and AT 
compatibles. I purchased a cable from 
Radio Shack that purports to properly 
connect the Tandy 1200 and IBM PC to 
designated Radio Shack printers, one of 
which is the DMP-2 100. 

When I got everything connected and 
executed a Shift-Print Screen, I got a per- 
fect screen dump to the printer. Also, 
when I use WordStar 2000 Plus Release 
2.0, which includes a Tandy DMP-2 100 
printer driver, I get printed output as ex- 
pected. All this would tend to make me 
think the cable is functioning. 

However, when I type Control-P at the 
DOS prompt, which should echo the 
screen output to the printer, I get a mes- 
sage that reads: 

Write fault error writing device PRN 
Abort, Retry, Ignore? 

Interestingly enough, this message 
prints out perfectly on the printer. Any 
ideas? 

Eugene W. Hungate 
Elkhart, IN 

You wouldn 't believe the number of let- 
ters I get from people who have a printer, 
a PC, a cable, and no characters on the 
page. You 're ahead of the crowd so far. 

Not having your collection of equip- 
ment handy, I did a little tinkering 
around with a PC AT and an ordinary 
IBM graphics printer. The Write Fault 
error cropped up when I tried printing 
something while the printer was set off- 
line. 

That was the easy part; now comes the 
deductive logic. I assume, incidentally, 
that you 've made sure that the printer is 
ready to go, and that you have the cable 
securely fastened at both ends when you 
press Control-P. (I make those mistakes, 
too, by the way.) 

If the DMP-1200 is particularly slow, 
it may be that the print routines give up in 
disgust. Because DOS, BIOS, and the 



WordStar driver code can all use differ- 
ent time-out values and retry counts, it 's 
conceivable that everything but the BIOS 
code works just fine. Take a look at what 
the printer is doing when the error mes- 
sage occurs. If it's always feeding a line 
or returning the print head to the left 
margin, that's a sure sign of a timing 
problem. 

You don't mention which compatible 
you 're using, but if it 's a souped-up PC 
or an AT, the timing problem will be 
worse. You might want to try a slower 
machine just to see if the problem will 
clear up. 

You can try changing the BIOS time- 
out value to a larger number. This would 
cause all the code that uses the BIOS to 
wait a little longer before concluding that 
there's an error. This may or may not 
help, because I don 't know exactly where 
the error is coming from. Use DEBUG 
and follow this script: 

A> DEBUG 

-D40:78L1 

0040:007814 

-E40:78 40 

-Q 

(Return to DOS) 

The above steps show how to change 
the time-out value stored at address 
0040:0078 from 20 decimal to 64 deci- 
mal (numbers given by DEBUG are in 
hexadecimal). Now try the Control-P 
trick and see if it works. If so, then the 
following simple BASIC routine should 
also fix the problem. Just put the program 
name into your AUTOEXEC. BAT so that 
it 's run every time you boot your PC, and 
the problem will be solved. 

10 DEF SEG &H40 
20P0KE&H78,64 
30 SYSTEM 

Store this program in file PKTFIX.BAS 
and add a line to your AUTOEXEC.BAT 
file that reads: 

BASICAPRTFIX 

I hope this helps, because ifitdoesn 't . . . 
I'm fresh out of ideas! — Steve 



CIRCUIT CELLAR FEEDBACK 



Where It's AT 

Dear Steve: 

I'm interested in building some gad- 
gets to plug into my IBM PC slots. From 
your last few articles in BYTE, it's obvi- 

continued 



74 BYTE- OCTOBER 1987 



"Incredible performance for the price.' 
—PC Magazine 



Drafix 1 Plus. 

The easy way to become 
a sophisticated CAD user. 



Some CAD packages give you powerful 
features. Others promise ease of use. 

Only one gives you both. New 
Drafix 1 Plus. 

High perf onnance CAD you'll be 
using in minutes. 

Drafix 1 Plus features a unique menuing 
system that was created to work with, not 
against, the way you design. 

All of the menus are visible all of the 
time, options are automatically displayed, 
everything is smooth, natural, easy to use. 

In minutes you'll be able to create 
sketches and drawings that would take 
weeks to learn on any other CAD system. 



'Best CAD buy in town." 
-PC CAD A Buyer's Guide 



Item attributes, component and 
grid snaps can be selected on the 
fly for speed and accuracy. 



High perf onnance CAD you'll be 
using for years. 

At the same time Drafix 1 Plus offers 
all of the drawing, designing and editing 
functions demanded by the most serious 
users such as architects and engineers. 

Text editing window, function key 
macros, splines, automatic dimensioning — 
Drafix delivers the full function CAD power 
only found on the most sophisticated sys- 
tems, at a fraction of their cost. 
Order today. Only $295. 

Your Draiix 1 Plus package includes both 
Dot Plotter (to give you high resolution 
output on over 100 dot matrix and laser 
printers) and our library of 450 time-saving 
pre-drawn symbols. 



Pop-up text editing window to 
enter, edit and rearrange even 
large blocks of text. 




Powerful drawing functions 
include splines, arcs, cross- 
hatching solid fill, parallel 
and perpendicular lines, and 
many others. 



Pointer prompts display 
current mouse or digitizer 
button functions for 
ease of use. 



Flexible automatic 
dimensioning system is 
powerful, easy to use 

and adaptable to your 

work style. 



Message center displays step-by- 
step instructions and other useful 
status information. 



All for the remarkably low price of 
just $295. 

Order new Drafix 1 Plus today. You'll be 
using it in minutes. And you'll appreciate 
it for years. 

Drafix adds a new dimension! 
Introducing Drafix 3-D Modeler. 
Also just $295! 

Introducing new 3-D Modeler. Its true 
3-D database allows you to easily create 
a three-dimensional computer model and 
generate unlimited perspective views. Set 
your eye location and viewing target, then 
view the model from any angle — inside 
and out! 

Drafix 3-D Modeler has the same fea- 
tures found in the product rated the #1 
3-D CADD in the 1986 AIA CADD Review. 



Call for the name of your local Drafix 
dealer or place your Toil-Free order today! 

1-800-231-8574 

Ext. 150 

Use Visa, MasterCard or 
American Express 



Drafix 1 
Drafix 1 Plus 
OTTO (AutoCad 

File Exchange) 
Professional 

Symbols Libraries 
Drafix 3-D Modeler 
Mouse Systems Mouse 

with any Drafix package 



(Now just $195) 
$295 



$150 
$295 

$100 



Note: Drafix 3-D Modeler must be used 
with Drafix 1 or Drafix 1 Plus for plotter or 
printer output. 

Drafix supports IBM PC/XT/AT and 
compatibles. Ask about Drafix 1/Atari 
SI software. 

FORESIGHT 

RESOURCES CORP~ 

932 Massachusetts 

Lawrence, KS 66044 913-841-1121 



Circle 99 on Reader Service Card 



Circle 86 on Reader Service Card 



Attention all FX80, FX100, JX, RX, & MX owners: 

You already own half of 
a great printer ggk 




Now for $79.95 you can own 
the rest. You see, today's new dot 
matrix printers offer a lot more. 

Like an NLQ mode that makes 
their letters print almost as sharp as 
a daisy wheel. And mode switch- 
ing at the touch of a button in over 
160 styles. But now, a Dots-Perfect 



upgrade kit will make your printer 
work like the new models in min- 
utes— at a fraction of their cost. 

And EX, JX and MX models will 
print the IBM character set, too. 

So, call now and use your Visa, 
MasterCard, or AmerEx. Don't 
replace your printer, upgrade it! 



1-800-368-7737 

(Anywhere in the United States or Canada) 



gg& (Dots-Perfecf) 

^Dresselhaus 

8560 Vineyard Ave., Ste. 405, Rancho Cucamonga, CA 91730 

An upgrade kit for EPSON FX, JX, RX, & MX printers 



Sample of 

letter without 

Dots-Perfect 



g 




(714)945-5600 



MM lio rcjliltrtd trademark 

oflntt manorial Bualn* U Miehlnu Corp. . 

Graf irai \\ a trademark of Epion America. Inc. 

Epion la a r«(il<ered trademark or Epion America. Inc. 



I 
I 

I 
I 
I 
I 
I 
I 
I 

I 
I 
I 
I 
I 
I 
I 
I 
I 



UNIVERSAL 

PROM/PAL7MICRO 

PROGRAMMER 



* 




U.S. prices From $995 .00 



□ EPROMS TO 1 MEG 

□ EPROM SIMULATION 

□ SET PROGRAMS 

□ 20-24 PIN PLD/EPLD 

□ BIPOLAR PROMs 

□ SINGLE CHIP MICROS 

□ RS-232/PC DRIVEN OR 
STAND-ALONE 



1-800-331-PROM 

(305)974-0967 Telex 383142 Fax (305) 974-8531 
From a Name You Can Trust 



LOGICAL DEVICES INC. 

Represented In 18 Countries 
1321 NW 65th Place, Ft. Lauderdale, FL 33309 



*Some devices require optional Adaptors - PAL is a Trademark of Monolithic Memories Inc. 



1 
I 

I 
I 
I 
I 
I 
I 
I 
I 
I 
I 
I 
I 
I 
I 
I 
I 
I 



76 BYTE- OCTOBER 1987 



-I 

Circle 152 on Reader Service Card (Dealers: 153) 



CIARCIA FEEDBACK 



ous you know how it's done. Is there one 
book you could recommend that gives the 
bus transfer protocols between the oper- 
ating system and those card slots? What 
do you use for authoritative source docu- 
mentation? I'm particularly interested in 
setting up something like a disk control- 
ler as a smart-file transfer interface to an- 
other system. 

Also, I'm really tempted by the low 
prices on some of the PC AT compat- 
ibles. Is there a good source of wisdom 
on the AT slot-protocol peculiarities? 

Any advice that you could give would 
be greatly appreciated. I know nothing 
about those slots now, and I'm hoping 
that I won't have to go through 12 differ- 
ent documents before I find one that gives 
the information I want. Sampling books 
here in Berlin is not as easy as browsing 
in the stores back home. 

James L. Barnett 
US AFS Berlin, Germany 

Actually, the way you find out how the 
IBM PC bus works is to build something, 
then figure out why it doesn 't work. 
There are a lot of tricks and "gotchas " 
that aren 't written down anywhere. 

Probably the best references are the 
IBM technical reference manuals for the 
PC and the AT. While they're short on 
timing diagrams and explanations, they 
have the schematics for all the IBM PC 
adapters so you can see how the logic is 
put together. IBM tends to use ordinary 
TTL gates rather than custom logic for 
the bus decoding and buffering, so you 
can easily reproduce IBM's logic in your 
own designs. 

I 'm not sure how you 'dgo about order- 
ing these documents from Berlin, but 
here in the U.S. you can get them from 
authorized IBM PC stores or by ordering 
them from 

IBM Technical Directory 
P.O. Box 2009 
Racine, WI 53404-3336 

They take checks, money orders, or cred- 
it cards (no cash, postal orders, or 
CODs), and probably require payment in 
U. S. funds. The manuals you need are 

AT Technical Reference, Part No. 
6280070, Form No. S229-9611-00, 
$105. 

AT Technical Reference Update, Part 
No. 6280099, Form No. S229-9608-00, 
$49. 75. 

XT Technical Reference, Part No. 
6290089, Form No. S229-9607-00, 
$49. 75. 

PC Technical Reference, Part No. 
6322507, FormNo.S229-9610-00, $30. 

continued 





Why you should buy aiuouse 
with no moving parts. 

Now 




■ .-.-.. - - - , , ^. ., 



Several reasons. No moving parts. No problems. 
And $20 comes back to you. 

The PC Mouse has no moving parts. It is an optical 
mouse. It's faster. More accurate. And so reliable, it's the only 
mouse with a Lifetime Warranty Other mice, like the ones 
from IBM and Microsoft? have a rolling ball, little teeny bear- 
ings and shafts and lots of other moving parts. Which make a 
mechanical mouse less reliable. Less accurate. 

The PC Mouse gives you digital accuracy and superior 
software compatibility. PC Mouse works with any software 
package written for use with a mouse and quite a few that 
aren't. Designer Pop-up™ menus come FREE with every 
PC Mouse. Designer Pop-up menus include over 20 pre- 
conf igured menus for the most popular software programs, 
like Lotus 1-2-3. You also get an easy to use application so 



you can create your own menus for software programs not 
originally designed to use a mouse. 

The PC Mouse from Mouse Systems comes in three 
models: PC Mouse (serial), PC Mouse Bus Plus (it comes 
with a serial Bus card) and our NEW PC Mouse PS/2 
(for the IBM Personal System/2™). 

And from September 15th through the 
end of December you can get $20 back* Just 
send us your receipt, registration card and 
this ad, postmarked no later than 
midnight December 31, 1987 
and we'll send you $20. 

PC Mouse. 

No moving parts. 

No problems. 




MOUSE 
SYSTEMS 



©1987 MSC Technologies, Inc. 2600 San Timas Expressway, Santa Clara, CA 95051 (408) 988-0211. Mouse Systems and Designer Pop-up are trademarks of MSC Technologies, Inc. 
Personal System/2 is a trademark of International Business Machines Corp. Microsoft is a registered trademark of Microsoft Corp. 
*This offer applies only to the Mouse Systems' PC Mouse product brand. 



Circle 188 on Reader Service Card 



OCTOBER 1987 -BYTE 77 



CIARCIA FEEDBACK 



Compact. . . a key reason why people like 
the AnthroCart, A lot of hardware arranged 
in a little space. Stacked up, not out Sturdy 
enough to keep it together. 

AnthroCart. High-tech furniture for high- 
tech equipment. Space saver. Mobile. 
Rugged. 

The AnthroCart is designed for tight 
spaces. Designed so your workspace is as 
slick as your hardware. 

Call us. 800-325-3841 






Supports up to 750 lbs. 
All steel frame construction 
5V? square foot footprint 




Anthro Corporation 
Technology Furniture 

3221N.W.YeonSt. 
Portland, OR 972 10 
ANTr-RO 503-241-7114 



Anthro Corporation is a wholly owned subsidiary of Tektronix, Inc. Anthro is a registered trademark of Anthro Corporation. 



& 



PCjr Technical Reference, Part No. 
1502293, Form No. S229-9612-00, $35. 

Options & Adapters, Part No. 
6322509, Form No. S229-9612-00, 
$125. 

EGA Technical Reference, Part No. 
6280131, Form No. SS34-0007-00, 
$9.95. 

Engineering/Scientific, Part No. 

6280133, Form No. SS34-0009-00, 
$27.95. 

AT Options & Adapters, Part No. 

6280134, Form No. SS34-0010-00, 
$9.95. 

The options and adapters technical 
reference manuals contain the adapter 
cards. The other volumes contain just 
system-board and BIOS information. I 
suggest that you get the XT and AT system 
reference manuals and the options and 
adapters volumes for the cards you 're in- 
terested in. The BIOS listings are partic- 
ularly useful for figuring out how a pro- 
gram actually uses the hardware. 

Some of the prices look like misprints, 
but they're not. It isn't clear why the 
original PC Options & Adapters volume 
is $125 and the AT Options & Adapters 
volume is $9.95. The EGA Technical 
Reference manual originally cost about 
$100, and its price has dropped dramati- 
cally. Still, you may want to contact the 
Technical Directory to verify current 
prices and form numbers. 

Most AT compatibles are very compat- 
ible at the bus level— that lesson was 
learned by the early not-quit e-compat- 
ibles. The only trick is coping with the 
higher clock rates: Anything over 8 mega- 
hertz tends not to work with some popular 
expansion cards. 

You will need a good oscilloscope if 
you 're serious about this. Sometimes just 
sitting down, writing a short assembly- 
language test loop, watching the scope, 
and sketching what 's going on is more re- 
warding than reading many chapters in 
some manual. Good luck!— Steve ■ 



Between Circuit Cellar Feedback, personal 
questions, and Ask BYTE, I receive hundreds of 
letters each month. As you might have noticed, 
in Ask BYTE I have listed my own paid staff. 
We answer many more letters than you see pub- 
lished, and it often takes a lot of research. 
If you would like to share your knowledge of 
microcomputer hardware with other BYTE 
readers, joining the Circuit Cellar/ Ask BYTE 
staff would give you the opportunity. We 're 
looking for additional researchers to answer 
letters and gather Circuit Cellar project 
material. 

If you're interested, let us hear from you. 
Send a short letter describing your areas of 
interest and qualifications to Steve Ciarcia, 
P.O. Box 582, Glastonbury, CT06033. 



TOmPUTER WAREHOUSE 



CALL TOLL FREE 



FREE 

Air Express Shipping 




-800-528-1054 



See Details Below 



PRINTERS 

Alps AH Models Call 

Brother All Models Call 

Citizen MSP-10 $249 

MSP-15 .$315 

MSP-20 $285 

MSP-25 $385 

Premier 35 $445 

Tribute 224 $619 

120D $159 

Diablo 635 $759 

Diconixs 150 $299 




I LOWEST PRICES 



HARDWARE 



EPSON 

All Printer Models 



Call 



Hewlett-Packard LazerJetli ... $1859 

NEC P2200 $335 

850 $1539 

860 + $1935 

3510,3550. $729 

8810,8850 $1059 

P6 $429 

P7 $619 

P9 $1159 



DISKETTES 

Maxell MD2(Qty 100) . 

M2S 

Sony MD/2 (Qty 100) . 

MONITORS 

Amdex All Monitors Call 

NEC Multisync $545 

Multisync Plus Call 

Multisync Graphic Board Call 

Princeton Graphics All Models ... Call 
Sony Multiscan w/cable $585 

VIDEO TERMINALS 

Qume 101 Plus Green $31 5 

101 Plus Amber $315 

Wyse30 $285 

50 $359 

75 $565 

Wyse 85 $425 

MODEMS 




FAST DELIVERY 




OKIDATA 

All Printer Models ■...■' Call 



All Modems 



HAYES 



Call 



Panasonic NEW 1080 Call 

NEW 1091 .....Call 

1092 I $295 

1592 $375 

1595 $419 

3131 $229 

3151 $369 



STAR MICRONICS 

All Printer Models . Call 



Prometheus All Models 
US Robotics Courier 2400 

Password 1200 

Microlink2400 

Ventel 

DISK DRIVES 

Iomega Bernoulli 10 meg . . 

Bernoulli 20 meg 

Bernoulli 40 meg 

Teac AT 1 .2 Meg Drive 

XT V* Height Drive .. ; .. .^ , _. 



Call 
$335 
$149 
$335 
. Call 



$865 
$1175 
$1720 

$100 
$85 



Toshiba 321 SL $509 

341E Parallel $595 

351 MndeMI $899 

Laser Printer Call 



SEAGATE 

20 meg w/Western J/O . , 
Other Models. ... 



$309 

Call 



256 Memory, One 360K Brand Name 
Floppy Drive * 135 Watt Power Supply, Slide 
Case, AT Style Keyboard • 4-10 MHz Clock 
Speed, (Keyboard Selectable), 8 Expansion Slots 



Turbo PC/XT W/640K & 1 Drive ... $4 1 5 
Turbo PC/XT w/640 K & 2 Drives .... $485 
TurbO PC/XT W/640K, 

1 Drive & 20 MG . . $725 

PC/AT 10 MHz W/512K, 

1.2 Floppy Drive .,$935 

PC/AT 10 MHz W/1024K, 

12 Floppy Drive .$989 

PC/AT 10 MHz W/1024K, 

1.2 Floppy 40 MG .§1519 

MonGraphics Card with 

Parallel PrintetiPort $69 

Color Card w/Parallel Printer Port $65 

Amber Monitor(TTL) . ... $89 

Amber Monitor w/Swivel Tilt .. ,. .$99 

Color Monitor (RGS) $279 

EGA+, Card , $145 

I/O Card (Serial/Parallel) "; .$38 

I/O Card (Serial/Clock Calendar) ...;.. $39 

Enhanced Keyboard $69 

AT M ulti I/O Card . ■. <..*.'.. $69 

XT Multi I/O Caf d ..,;.,.........,.,. $55 



TRAINING 

FlightSimulator 

PC Logo 

Typing Instructor 

Typing Tutor III 

MS Learning DOS . . . 

LANGUAGES 



SOFTWARE 



$27 
$69 
$27 
$27 
$27 



BOARDS 

ASTSix-Pack Plus $115 

Other Models Call 

ATI EGA Wonder $245 

CSSL Awesome — $375 

Hercules ColorCard $1 45 

Graphic Card $ 1 75 

GraDhic Card + $185 

Intel Above Board PC 1010 $21 

Above Board PS/PC (1110) $239 

Above Board AT (4020) $315 

Above Board PS/AT (41 20) $345 

NEC Multisync Graphic Board Call 

Orchid Tiny Turbo 286 $355 

Turbo EGA $449 

Paradise Five Pak $99 

Autoswitch 350 $205 

Autoswitch480 $279 

Plus Development 

Plus Hard Card 20 Megabyte $545 

Plus Hard Card 40 Megabyte $829 

Quadram Quad EGA+ - $265 

Tec Mar Graphics Master $409 

Captain No Memory $109 

EGA Master $239 

Video-7VegaDeluxe $285 

COMPUTERS 

TOSHIBA 

T-1100 Supertwist Call 

T-3100 ^.Call 



COPIERS 

Canon 

fff >» 




IBM PC and 100% Compatibles 



INTEGRATIVE SOFTWARE 



C Compiler (Microsoft) 

Fortran Compiler (Microsoft) 
Macro Assembler (Microsoft) . , . 


. ..$249 

..$245 

$83 

....$165 




$55 




$159 


Turbo Pascal w/8087 & BCD 


$55 
..$55 




$55 


Turbo Prolog 


$54 



PROJECT MANAGEMENT 

Harvard Total Project Manager II $282 

Microsoft Project $218 

Super Project Plus Call 

Timeline 2.0 $235 

COMMUNICATIONS 

CompuServe Starter Kit $19 

CrosstalkXVI $88 

MS Access $ 1 37 

Mirror // $33 

Remote $88 

Smartcom III $155 



Enable 2.0 

Framework II 

Smart Software System 3.1. 

Symphony 

Ability 

GRAPHICS 

Logi Mouse 

Logi Buss Mouse w/paint . . 

Newsmaster 

In-A-Vision 

Microsoft Buss Mouse 6.0 . . 

Microsoft Chart 3.0 

Microsoft Serial Mouse 6.0 . 

Newsroom 

PCBussPlusMouse 

PFS: First Publisher 

IMSI Mousew/Dr Halo II 

PC Mouse 

Printmaster 

Signmaster 

Turbo Graphix Tool Box 



$359 
$395 
$409 
$439 
$55 



Call 

$85 

$48 

$259 

$103 

$249 

$115 

$31 

$99 

$45 

$92 

. $89 

$29 

Call 

. $38 



WORD PROCESSORS 


..$103 


Leading EdgeW/Pw/Spell & Mail . 

Turbo Lightening 

Microsoft Word 3.11 


. $59 

$55 

..$175 


M ultimate Advantage II 

Wordstarw/Tutor 

Wordstar Pro Pack 4.0 

PFS: Professional Write 


$245 

$162 

..$209 

$89 


Word Perfect (Ver.4.2)$195 
Wordstar 2000 + 2.0 $205 


SPREADSHEETS 

Lotus 1 -2-3 .... 


. . . Call 


Multiplan3.0 


S108 




VP Planner 


S47 




| Supercalc4 ... 


.Call | 


MONEY MANAGcMcN 

Dollars & Sense w/Forcast 

Tobias Managing Your Money. . . . 


T 

... $92 
Call 



UTILITIES 

MS Windows 

Copy II PC 

1 DIP, Plus 

Fastback 

Norton Utilities 4.0 .... 

Printworks 

Sidekick (Unprotected) . 
Sideways 3.1 



$55 

$19 

$46 

$80 

$48 

$36 

$47 

$37 

Superkey Call 

Xtree $25 

SQZ $46 

Brooklyn Bridge $72 

DATA BASE MANAGEMENT 

Clipper $375 

Cornerstone $53 

dBase II $289 

dBase III Plus $379 

Extended Report Writer $ 1 75 

Knowledgeman II PromoPack $319 

QuickcodePlus $138 

QuickReport $138 

Reflex $79 

DB-XL $82 

PFS: Professional File $112 



R:Base 5000 

System V $41 5 



Many other titles available. 



Circle 65 on Reader Service Card for MS DOS Products. 
(All others: 66) 

To Place an Order: 1-800-528-1054 

To Follow-up on an Order: 602-944-1037 



roompuTCR 

WAREHOUSE 



8804 N. 23rd Ave. 
Phoenix, Arizona 85021 



Order Line Hours: 

Mon-Fri 7:00 a.m.-6:00 p.m. 
Saturday 9:00-1:00 
Order Processing: 

10:00 a.m.-3:00 p.m. Mon-Fri 



• NoChargeforVISAand MasterCard • You Pay the Ground Shipping— We Pay the Air • Ground Shipping & Handling $6.00 • Free Air applies ONLY to orders 
up to 10 lbs. & Over $50. • All products carry a manufacturer's warranty. All Guarantees, rebates, trial period privileges & promotional programs are handled by 
the manufacturer only. • NO APO FPO, or international orders, please • Call before submitting PO Numbers • Personal and Company Checks Will Delay Ship- 
ping 3 weeks • Prices, Terms & Availability Subject to Change Without Notice • Add 5% for COD Orders • We Do Not Guarantee Machine Compatibility 



™^^™l r^^> ^^!!?E| 



— , — _^ 


j 


37MPIUS* 


3770SNA 


3 


3 


7 


7 


8 


7 








P 

I I 
u 1 


1 s 
1 N 


* .,J! 


1 A 




1 8*128 




' s i; 

N 





unSSm 


i kihpBRs^^^^ 


InP^^H SCTK 


"H 

■ ' 5B2? 


■ ■ :;;;;->-^: ; _ , 

" • \ ; --\>' 


■• ' &» 


feW~-~ -,S 



I 



CUOl" 



CLEO is your SNA or BSC Gateway 



Remote Sites Communication 

Whatever your industry, your remote 
computers need to share information with 
your mainframe. Or, they need to exchange 
data with other remotes. In either case, you 
need a total solution at the remote sites. You 
need software, hardwareinterf aces and 
modems that all work together smoothly. 
You need CLEO! 

CLEO software products allow micro- 
computers to communicate with mini- 
computers and mainframes, and to emulate 
their workstations. Since 1981, CLEO has 
providedremote communications between 
micros and mainframes for the automotive, 
insurance, medical and banking industries. 
Today over 44,000 CLEO users worldwide 
are running on all major brands of micro- 
processors. The greatest number of these 
users run CLEO software on IBM Personal 
Computers and NETBIOS LANs. 





tM:^ 




V 


Complete 


Call us today to discuss 


Software/Hardware Package 


your application. 


Every CLEO package contains all the soft- 


CLEO Software 


ware and hardware accessories needed at the 


1639 North Alpine Rd. 


remote site. Your selected CLEO SNA or BSC 


Rockford,IL 61107 


software is packaged with 1) an internal 


Telex 703639 


modem card for dial-up applications, or 2) 




an interface card and cable for use with your 


Headquarters: 


existing modem. There's no waiting for non- 


USA. 1-800/233-2536 


CLEO add-ons. And, you get prompt, single- 


Illinois: 1-800/422-2536 


^^ri| ^^fc^^source service. 


International: 815/397-8110 




Sales and Distribution: 




Benelux, Scandinavia: 31 (71) 899202 


ilS^AwSS H 


Canada, Hast: 800/361-3185 




Canada, West: 800/361-1210 


■l VPv^sZdlkifl 


Canada, Montreal: 514/737-3631 


H "■'is s - 


Colombia, S.A.: 12875492 


H m *t 


Denmark: 451 628300 




Italy: (0331) 634 562 


^^^i^RS 


Mexico City: 203-0444 



Package prices 

rangefrom $795.00 for 

most stand-alone packages, up to $2,995.00 

for the 32-user SNA gateway. 



CLEO 




CLEO and 3780Plus arc registered trademarks of CLEO Software. 
IBM is a registered trademark of International Business 
Machines Corporation. 



BOOK REVIEWS 



LESSONS IN DIGITAL 
ESTIMATION THEORY 
Jerry M. Mendel 
Prentice-Hall 

Englewood Cliffs, N J: 1987 
ISBN 0-13-530809-7 
304 pages, $41.95 

THE SOCIETY OF MIND 
Marvin Minsky 
Simon and Schuster 
New York: 1987 
ISBN 0-67 1-60740-5 
339 pages, $21.95 

THE SEARCH FOR 
EXTRATERRESTRIAL 
INTELLIGENCE: 
LISTENING FOR LIFE 
IN THE COSMOS 
Thomas R. McDonough 
John Wiley & Sons 
New York: 1987 
ISBN 0-471-84684-8 
244 pages, $19.95 



LESSONS IN DIGITAL 
ESTIMATION THEORY 

Reviewed by John V. Olson 

Jerry M. Mendel's book is 
a concise, lucid, and 
intensely mathematical de- 
scription of the current state of 
estimation theory and its ex- 
tensions. Lessons in Digital 

Estimation Theory, the latest volume in the Prentice-Hall series 
on signal processing edited by Alan V . Oppenheim, is intended 
as an introductory text for a one-semester course in estimation 
theory. 

The text is divided into 27 short "lessons," self-contained 
kernels that express and develop briefly a fundamental idea in 
estimation theory. Each lesson contains a few problems that are 
intended to allow the student to flesh out the mathematics and 
try the techniques presented. The author emphasizes digital im- 
plementation of the techniques described, which fits the modern 
approach to the analysis of signals and systems. Also, as Mendel 
points out, the mathematics associated with digital estimation 
theory are simpler than those associated with continuous esti- 
mation theory. 

Roots of Parameter Estimation 

The general task of estimation theory, as practiced in many 
fields in engineering and science, is to determine one or more of 
the parameters in a model that describes a physical process. The 
theory has its roots in Gauss's least-squares approach to the de- 
termination of the orbital elements of asteroids from measure- 




ments that contain errors. It 
has continued to be devel- 
oped—driven, as Mendel 
points out, by the needs of 
technology. 

The rise of digital technol- 
ogy has seen the concomitant 
rise in the number and variety 
of digital algorithms in digital 
estimation. The field was ex- 
tended greatly in this century 
by the work of Wiener and 
Kalman in developing a least- 
squares approach to filters. 
Mendel has chosen to present 
the techniques of estimation 
theory in a digital format. 

How Mendel Sees It 

Mendel views the generalized 
extensions of the problem of 
least-squares parameter esti- 
mation as a natural extension 
of digital filter theory. Tradi- 
tional filter design is con- 
cerned with fixed responses to 
deterministic signals and re- 
sults in low-pass, band-pass, 
and high-pass filters that meet 
certain design criteria in the 
frequency band. Estimation 
theory, as Mendel points out, 
leads naturally to filters that 
have time-varying parameters. 



The Four Steps 

To begin the process 



of 



parameter estimation, you must perform the most difficult task: 
the proper description of a model to represent the signal or pro- 
cess at hand. Mendel identifies four steps in the modeling of a 
physical process: representation, measurement, estimation, and 
validation. The representation problem involves choosing an ap- 
propriate model for a system, here taken to be a mathematical 
model of the parameters of a system. 

Once the system has been modeled, a series of physical quan- 
tities must be measured; these can be used to validate the model. 
It is the task of estimation theory to determine the values of the 
parameters of the model, including those that cannot be mea- 
sured directly. Finally, validation of the model is performed 
using statistical measures of the confidence limits of the esti- 
mated model parameters. 

Linear to Nonlinear 

The bulk of this book deals with the problem of parameter esti- 
mation using linear models. In a linear model, the measure- 
ments are assumed to have a linear dependence on the param- 
eters of the model and to be contaminated by an additive noise 

continued 



Illustration by Dave Ridley 



OCTOBER 1987 -BYTE 81 



BOOK REVIEWS 




Multiplex data from multiple devices to one port 

on a computer with an H-series multiplexer from 

BayTech. Its versatility makes it the ideal choice for 

data collection and control applications. You tailor this 

multi-function device to your own environment by 

selecting one of six modes of operation: time-division 

multiplexing, port expansion/ sharing, or four types 

of buffered message multiplexing. 

The Model-H is a stand-alone RS-232C multiplexer 

that connects between one host computer and 

up to 17 peripheral devices. It provides full duplex 

transmission of asynchronous data at speeds up to 

19,200 bps. Selecting the mode of multiplexing 

(and also the baud rates, control character, data block 

size, message terminating character, etc.) is as easy as 

answering questions from a menu. All parameters 

are saved permanently in non-volatile memory 

In a size to fit large and small applications: 

The 525H with four peripheral ports, $395. 

The 528H with eight peripheral ports, $649. 

The 5212H with eleven peripheral ports, $1,095. 

The 5218H with seventeen peripheral ports, $1,495. 

CALL FOR YOUR FREE BROCHURE 
800 523-2702 



Bay Technical Associates, Inc. 
Highway 603, PO Box 387 
Bay St. Louis, MS 39520 
Telephone 601 467-8231 
Telex 910-333-1618 BAYTECH 

Circle 28 on Reader Service Card 



BayTech 

DATA 

COMMUNICATIONS 

PRODUCTS 



field. When the parameters to be estimated can be assembled 
into a vector that describes the model, then the estimation of the 
state vector follows naturally from the ideas of parameter 
estimation. 

Mendel provides this unification in a natural way, and it is 
one of the book's strong points. He ends with several lessons 
that extend the treatment to nonlinear systems. Most physical 
systems are described by nonlinear differential equations, and 
Mendel shows how such equations can be linearized and sub- 
jected to the techniques of linear parameter estimation. 

A Coherent View 

Within this framework, the author examines several important 
techniques of parameter-estimation theory. By beginning the 
book with a review of least-squares estimation techniques, he 
applies them to cases involving both large and small samples. 
The maximum-likelihood and maximum a posteriori methods 
are presented along with the best linear unbiased estimator 
(BLUE). Mendel then moves on to a study of state estimation. 
He covers the basic state-variable model and includes several 
examples. Finally, he examines the connection to least-squares 
theory and discusses the relationship between the Wiener and 
Kalman filters. Regarding nonlinear problems, Mendel focuses 
primarily on the treatment of the extended Kalman filter. He 
concludes with a discussion of the continuous-time Kalman- 
Bucy filter. 

The appendix includes a glossary of major results. This list- 
ing lets students trace the logical development of the text, as well 
as find a particular theorem. Again, it shows the author's effort 
to bring a coherent view to what have been separate topics in 
estimation theory. 

Classroom Experience 

Lessons in Digital Estimation Theory is an excellent book, and I 
highly recommend it to those who are seeking a first contact 
with the mathematical foundations of estimation theory. The de- 
velopment of the material begins from a familiar foundation in 
least-squares theory and moves logically through the modern 
extensions, always with an eye to their relationship to the origi- 
nal least-squares approach. This well-integrated approach pro- 
vides a coherent view of the state of estimation theory and its 
mathematical description. 

Mendel states that the book is the outgrowth of a course he 
has given at the University of Southern California since 1978. 
The clarity of the ideas presented shows that the book has gone 
through the tempering process that occurs when a set of ideas is 
presented frequently in the classroom. 

A Welcome Change 

Mendel's approach is a welcome change from the current spate 
of "cookbooks" providing recipes and algorithms. Those may 
be useful as guides, but the study of the formulation of methods 
is a more helpful approach. If there is a weakness in Lessons in 
Digital Estimation Theory, it lies in the absence of discussions 
of the relative strengths and weaknesses of the methods. How- 
ever, the author includes a few numerical examples for the stu- 
dent, and some of the exercises make use of these examples. 

Students using this book must be well-grounded in the mathe- 
matics of signal processing. Although the author suggests that 
the text could be used for self -study, its compact, essentially 
mathematical presentation makes it more appropriate as a text 
for a course following a senior-level course in signal processing. 

John V. Olson is an associate professor of geophysics (Geophys- 
ical Institute, University of Alaska, Fairbanks, AK 99701), a 
consultant, and a software developer. 

continued 



24 Hours A Day, 7 Days A week 





FOR THE BEST BUYS, CALL US ANYTIME. 



Software 



Word Processing/ 
Desktop Publishing 

Fancy Font 
Microsoft Word 
MultJmate 

Advantage-ll 
Lotus Manuscript 
Office Writer /Speller 
Pagemaker 
PFS: Prof Write 
Ventura Publisher 
Volkswriter 3 
Word Perfect 4.2 
Word Perfect Server 
Word Perfect 

Station 
Wordstar Pro 4.0 
Wordstar 2000 + 
Xywrite 111 
Xywrite 111 + 



$ 139 
$ 209 

$ 259 
$ 339 
$ 249 
$ 489 
$ 119 
$ 519 
$ 145 
$ 195 
$ 309 

$ 75 
$ 235 
$ 219 
$ 199 
$ 249 

$ 389 
$ 389 
$ 599 
$ 229 
$ 429 
$ 145 
$ 209 
$ 319 
$ 449 
$ 239 
$ 89 
$ 499 



Database Systems 

Clipper 

DBase III Plus 

DBase III Lan Pak 

Foxbase + 

Paradox 2 

PFS: Prof File 

Q&A 

Quicksilver 

R Base System V 

RapidFile 

Reflex 

Revelation 

Spreadsheets/ 

Integrated Packages 

Enable 2.0 

Framework II 

Javelin + 

Lotus 1-2-3 

Lotus Hal 

Multiplan 

Plan Perfect 

Smart System 

SuperCalc 4 

Symphony 

Communications 

Carbon Copy + 
Crosstalk XVI 
Crosstalk Mark IV 
Relay Gold 
Smarterm(Persoft) 
Smartcom III 
3.5 INCH SOFTWARE NOW IN STOCK CALL! ! 



$ 389 
$ 399 
$ 179 
$ 309 
$ 105 
$ 125 
$ 179 
$ 429 
$ 279 
$ 499 

$ 119 
$ 95 
$ 125 
$ 139 
$ Call 
$ 149 



Statistics 

SPSS/PC + $ 699 

Statgraphics $ 419 

Systat $ 439 

Graphics 

Chartmaster $ 209 

Diagraph $ 279 

Diagram Master $ 189 

Freelance Plus $ 339 

Graphwriter Combo $ 349 
Harvard Presentation 

Graphics $ 239 

MS Chart $ 189 

PC Paintbrush Plus $ 99 

Picture Perfect $ 209 

Presentation Pak $ 329 

Prodesign II $ 149 
Publishers Paintbrush $ 169 

Signmaster $ 139 

Desktop Environments 

Lotus Metro $ 65 

MS Windows $ 65 

Sidekick $ 59 

Project Management 

Harvard Total 

Project Manager II $ 359 

Microsoft Project $ 249 

Superproject Plus $ 299 

Timeline2.0 $ 249 

Languages/Utilities 

Fastback $ 89 

Lattice C $ 229 

Norton Advanced $ 79 

Microsoft C $ 279 

Mace Utilities $ 65 

MS Fortran 4.0 $ 279 

Quick Basic $ 65 

Turbo Basic $ 59 

Turbo C $ 59 

Turbo Pascal $ 69 

Productivity Tools 

VP Expert $ 59 

Eureka $ 119 

Sideways $ 39 

Accounting 

BPI $ 179 

Great Plains $ 499 



Hardware* 



Computers 

AST Premium 286 

Wyse 286 PC 

Panasonic Business 

Partner 

Toshiba 3100/1100 + 



Easy Business $ 359 

QUALIFIED INSTALLERS 
AVAILABLE 



Multifunction Boards 

AST Advantage (128K) 
AST Advantage 

Premium 
AST 6 Pak Plus (64K) 
AST Premium (256K) 
AST Rampage PC 
AST Rampage 286 
Inboard 386AT 
Intel AboveBoard 
PC Turbo 286 (1MB) 
QuadBoard(OK) 

Display Boards 

ATI EGA Wonder + 
Hercules Graphics 

Card Plus 
Hercules Color Card 
Hercules In-Color 
NECGB1 
Paradise Auto 

Switch EGA 480 
Quad EGA Prosync 
Qyadram EGA + 

Modems 

Hayes 1200 
Hayes 1200B 
Hayes 2400 
Hayes 2400B 
Migent Pocket 
US Robotics 1200 
US Robotics 1200B 
US Robotics 2400B 
Ventel 2400 
Ventel 2400B 
Watson 

Emulation Boards 

AST 521 1-11 + 
lrma/2 

Monitors 

Amdek310A 
Amdek410A 
Amdek 1280 
NEC MultiSync 
Princeton HX-12 
Princeton MAX-12E 



$ Call 
$ Call 

$ Call 
$ Call 

$ 319 

$ 419 
$ 119 
$ 219 
$ 219 
$ 399 
$1350 
$ Call 
$ 749 
$ 109 

$ 239 

$ 189 
$ 159 
$ 309 
$ 359 

$ 399 
$ 339 
$ 289 

$ 299 
$ 299 
$ 449 
$ 449 
$ 159 
$ 139 
$ 109 
$ 189 
$ 399 
$ 399 
$ 339 

$ 629 
$ 725 

$ 149 
$ 169 
$ 779 
$ 579 
$ 439 
$ 149 



24 Hours A Day, 7 Days A Week 

1-BOO-221-126Q 



Printers/Plotters 




Epson EX-1000 


$ 549 


Epson FX-286E 


$ 449 


Epson LQ-1000 




w/Tractor 


$ 599 


HP 7475A 


$1499 


HP Laserjet II 


$1825 


NEC 3550 


$ 789 


Okidata 192 + 


$ 359 


Okidata 193 + 


$ 519 


Toshiba P321SL 


$ 549 


Toshiba P341SL 


$ 749 


Toshiba P351M2 


$ 999 


Mass Storage/Backup 




Imega 20 + 20 




W/intfc 


$1949 


Irwin Tape Drives 


$ Call 


Plus HardCard 20MB 


$ 675 


Plus HardCard 40 


$ 929 


Seagate ST 225 W/int 


$ 329 


Seagate ST238W/int 


$ 389 


Tallgrass 


$ Call 


Tecmar QT60 Int 


$ 899 


Input Devices 




Keytronics KB 101 


$ 119 


Microsoft Mouse 


$ 129 


Accessories 




Curtis Ruby 


$ 59 


DataShield S-100 


$ 69 


Logical Connection 


$ 329 


Masterpiece Plus 


$ 129 


256K Ram Set 


$ 39 


8087 Math Chip 


$ 119 


80287 Math Chip 


$ 189 




P.O. Box 300729, 

Brooklyn, NY 11230 

TELEX: 627-30170 or 910-240-3916 

FAX: 718-972-8346 



Customer Service Hours: 9 AM— 5 PM, Mon.— Fri. 

agl r^^^l In New York State call (718)438-6057 
\m g) WS4 free SHIPPING 

l ^^ r ^^ J l^^^^^™J on all orders over $1,000.00, credit card orders and prepaid orders. 
Our Policy: 

• All returns require prior authorization • Visa or Mastercharge— add 3% • Cash, M.0. or bank check only— add $5.00 per order • Prepaid personal or company check— allow two weeks to clear 

• Shipping via UPS surface— add $3.00 per item, UPS Blue— add $8.00 per item * Call for shipping costs. • Prices subject to change; call tor latest prices. 

I 



AT LAST: Professional 

Typesetting Capability 

For PC Users 

With PCTfcX™ — the best-selling full 
implementation of Professor Don Knuth's 
revolutionary typesetting program T^X. 

FINEST Typeset Quality Printing From: 

dot matrix laser phototypesetter 



oo ! 



f an 
<*21 






Va 



f 

J — ( 



dx 



ml 



WIDEST Range Of Output Device Drivers: 

• Epson FX, LQ • HP LaserJet* 

• Toshiba • Apple LaserWriter 

• Corona LP-300* • APS-5 phototypesetter 

• Screen preview, with EGA or Hercules card 

MOST COMPLETE Product Offering: 

PC l^X (not copy protected) includes the following: 

• Our specially written PCT^X Manual, which en- 
ables you to start using T^X right away. 

• Custom "macro packages" that provide formats 
for letters, manuals, technical documents, etc. 

• The M^X document preparation system, a full- 
featured macro package for preparing articles, 
books, reports, etc., and IAI^X User's Manual. 

• A)^S-T£)i, developed by the Amer. Math. Society 
for professional mathematical typesetting. 

Site licenses, volume discounts, and interfaces to 
PC Paintbrush, PC Palette, FancyFont and Fontrix 
are also available. 

PRICED FROM ONLY $249.00! 

(Printer drivers and interfaces additional.) 




iff. 



Laser printer, 
fonts & software 
from $2995.00 



Ttf 



For IBM PC/XT, AT or compatible, DOS 2.0 or higher, and 
512K RAM. Hard disk required for printer drivers and fonts. 
*HP LaserJet and Corona require additional interface boards. 

For more information call or write: 

Personal Tg|X, Inc. 

12 Madrona Avenue, Mill Valley, CA 94941 (415) 388-8853 

This ad, with space for the photograph, produced by PC TfeX. 

Typeset on the Epson FX80, the Corona LP-300 laser printer, 

and the Autologic APS-5 phototypesetter. 

TgX is a trademark of the American Mathematical Society. Manufac- 
turers' product names are trademarks of individual manufacturers. 



BOOK REVIEWS 



THE SOCIETY OF MIND 

Reviewed by Darrow Kirkpatrick 



Marvin Minsky 's The Society of Mind says more sensible 
things about how people think than anything else I've 
read. Minsky has spent years contemplating thinking. He is 
fascinated by the minds of children, by the simplest and most 
complex mental problems, and by the challenge of program- 
ming computers to think like people. This book is a picture of 
how his ideas about thinking go together. 

Even though the book will be read and studied by those at the 
cutting edge of psychology and artificial intelligence, Minsky 
doesn't see his book as scientific scholarship. He wants it to be 
read as an "adventure story for the imagination." He admits to 
making hundreds, of assumptions and speculations, saying, 

Until we have a more coherent framework for psychology, it 
will remain too early for the task of weeding out unproved 
hypotheses or for trying to show that one theory is better than 
another— since none of our present-day theories seem likely 
to survive very long in any case. Before we can have an 
image of the forest of psychology, we'll have to imagine 
more of its trees and restrain ourselves from simplifying 
them to death. 

The Sum of Small Ideas 

The Society of Mind is intentionally unfocused. At the start, 
Minsky tells the reader that neither thinking nor theories about 
thinking can be very organized. Evolution has made our minds 
powerful by using countless, messy cross-connections— and 
Minsky doesn't quarrel with evolution. He groups his discus- 
sions into bite-size sections of one page each, spread across 31 
chapters. Fortunately, the excellent glossary and index make 
the book's tangled web of thoughts easily accessible. Like its 
subject, the human mind, this book is a society of many small 
ideas. Minsky believes that when we join enough of these small 
ideas, we can explain the strangest of mysteries. 

The Society of Mind is about psychology, not computer sci- 
ence. Don't read it for explicit directions on how to implement 
AI on your computer. Those of us in the small-computer world 
might be disappointed that Minsky barely mentions computer 
software and hardware, but he does mention AI more and more 
as the book progresses. I think he wants us to know where many 
of his ideas were born and where many of them have been tested 
by experience. 

Rereading the Script 

Connecting Minsky' s ideas with the programming structures 
and algorithms they grew from is a task left to the reader. I often 
found myself "reverse-engineering" his conclusions about 
thinking— back to the computer problems that must have created 
them. 

For example, Minsky says that you learn skills by experi- 
menting to find which agents to use, then preparing a script that 
will do the job automatically. Later, when you need to solve the 
same type of problem, you unconsciously play back the script. 
This sounds like what I do with my favorite macro language 
when I want to automate a sequence of tedious computer com- 
mands. Minsky goes on to say that such a script would be 
limited if it could work on only one type of thing. Then he de- 
scribes an "action" script that never refers to the thing it acts on, 
only to a temporary memory that represents the thing. To me 
this sounds like the standard structured programming practice 
of passing generic variables to subroutines. 

Throughout the book, Minsky dwells on a few simple 

continued 



84 BYTE- OCTOBER 1987 



Circle 211 on Reader Service Card 




YOUR PC WANTS YOU 

TO GIVE IT THE SAME ADVANTAGE 

YOU GIVE YOUR TAPE DECK 

AND VCR. 



It's only fair. Not to mention logical. PC's want to 
perform as well as all your other sophisticated elec- 
tronic equipment. If you're like millions of informed 
people throughout the world, you rely on the 
ultimate in audio and video, recording performance. 
You rely on TDK. 

Well, you should also rely on TDK when it comes 
to your computer. TDK's Floppy Disks provide the 
same consistently high performance. The same 
level of absolute quality. Which is understandable 
since all TDK products share an unparalleled level 
of technical superiority that spans over 50 years. 



In fact, TDK is the world's largest manufacturer 
of magnetic media. 

What's more, they're also a major producer of 
electronic component parts, including the most 
sophisticated heads for disk drives. What a stra- 
tegic advantage! With vital "inside" information like 
that, it's no wonder their disks provide error-free 
performance. 

So, if you want to put a smile on your computer's 
face, choose from TDK's family of 5.25-inch stan- 
dard, 5.25-inch High Density and 3.5-inch No-Risk™ 
Disks. It's to you and your PC's advantage. 




&TDK 

THE NO-RISK DISK. 

Northeastern Region: 516-625-0100; Southern Region: 404-948-1346; Midwestern Region: 312-676-5356; Western Region: 714-863-1844 ©1986Tdk Electronics Corp. 



Circle 274 on Reader Service Card 



OCTOBER 1987 -BYTE 85 



Circle 294 on Reader Service Card 




DHL 



BROOKLYN! 



BRIDGEI 



WHITE CRANE 
SYSTEMS 

404-394-3119 

Suite 151 



Laptop & IBM PS/2 Users: 

The solution to bridge the gap between your 5S4 & 
3!/ 2 inch drives. 

"It's a steal. It allows you to use your favorite DOS 
shell for selective file transfer and it even lets you 
use your PC's peripherals from your laptop. . . In 
short: An exceptionally fast and functional transfer 
utility ... The Brooklyn Bridge is the perfect solution 
for people who use a laptop almost exclusively as a 
portable machine that travels from PC to PC. It's 
terrific!" - Howard Marks, PC Magazine, July 1987* 

Rated as one of the best of the best utilities 
by John Dvorak. 

"This is one of those rare programs that you enjoy 
the minute you take it out of the box, especially when 
you discover that a cable is included . . . Excellent 
product."- PC Magazine, June 23. 1987- 

End users are "sold on Brooklyn Bridge. . . 

Dvorak is certainly correct in describing White Crane 
Systems' Brooklyn Bridge as fabulous' ... and I 
love it." — G. Schochet, Letter to the Editor, PC 
Magazine, May 12, 1987- 

PS/2 users: The Brooklyn Bridge allows data transfer 
and drive access in either direction so you may also 
transfer your data back to your 514 inch PC. 







^?<*7 



1W 




This internal 720K 3.5" disk drive is a "drop-in" replacement 
for 5.25" drives! It's the ideal solution for exchanging data 
between your PC/XT/AT and the new generation of laptops. 
Disk format is compatible with IBM, Toshiba and Zenith 
portables. The Model 853W drive kit contains everything you 
need, including interface adapters, premium SONY drive, and 
complete documentation. Uses your existing disk controller 
(no additional slots required). Requires DOS 3.2 for maximum 
performance. Ask about our Model 873W (1.44MB). 



$$ SAVE $$ 
SONY DISKS 



J INCC 



INCORPORATED 



$159.95 

+ FRT. & TAX 



gg 



400 Daily Lane 
P.O. Box 5210 
Grants Pass, OR 97527 ' 



*&\ 



V*^JeD n IMMEDIATE DELIVERY! 
^° Call 503-474-6700 or 503-474-6701 



BOOK REVIEWS 



example problems to illustrate his ideas. His Block- Arch and 
Hand-Change scenario concerns a child playing with blocks and 
a toy car. The child builds an arch-shaped structure, then no- 
tices a strange phenomenon: When you push the car through the 
arch, your arm gets trapped. Minsky goes on to use this simple 
situation to explore ideas about how we represent and recognize 
shapes, how we model space and the relationship of our bodies 
to it, and how we learn. 

You Are Your Agents 

Agents are crucial to Minsky 's mind society. Agent is the term 
he uses to describe an element of the mind responsible for one 
thinking function. The majority of agents are just middle-level 
bureaucrats that manage the activities of agents below them and 
respond to requests from agents above. You would not be tempt- 
ed to call the activity of any one agent "intelligent. " Yet Minsky 
believes that when taken together as societies of processes, the 
mind's agents create emotions, the sense of self, and all the 
other facets of a human personality. The mind's intelligence 
emerges from its unintelligent agents. 

Memory and Experience 

Some of Minsky 's most interesting thinking concerns how 
memory works. Most of us have wondered how the brain stores 
information. We may have tried picturing a vast reservoir of 
facts. Yet how could the brain possibly capture reality in a sea of 
static facts? And how it could retrieve useful information from 
that sea? 

Minsky suggests that the brain does not try to store away 
facts. It contains special agents he calls K-lines, which can make 
records of what some agents are doing at a certain moment. 
Later, if you activate those K-lines, they restore those agents to 
their previous states. Thus, K-lines take a partial "snapshot" of 
your brain state during a certain event. You remember previous 
mental events because parts of your brain are doing precisely 
what they did before, and other parts are reacting to those parts 
as though the same events are happening again. 

How does the mind know to arouse so many appropriate 
memories so quickly, without arousing too many? According to 
Minsky, when we learn by attaching agents to K-lines, we don't 
attach them all with equal firmness— we make strong connec- 
tions only at a certain level of detail, or "level band." Weaker 
connections at higher and lower levels are default assumptions 
that retreat when other agents challenge them. These default as- 
sumptions contain some of our most valuable commonsense 
knowledge: They tell us what is usual or typical. 

Minsky says that older psychological theories are based on 
pieces of memory too small or too large to be practical. He pro- 
poses a compromise that has been effective in AI work: struc- 
tures called frames, which represent what we've acquired from 
previous experience. We remember millions of stereotypical 
frames that represent everyday happenings, such as being in a 
certain kind of room. A frame is like a blank form with many 
empty boxes, called terminals, to be filled. To represent a spe- 
cific situation, we fill in the terminals with more detail. Nor- 
mally, terminals come with agents already attached, and these 
are the default assignments that make up level bands. 

To explain his theory, Minsky invents an intimidating medley 
of terms. For example, a polyneme is a type of K-line that 
arouses different activities in different agencies by sending the 
same message to each. Micronemes are inner mental-context 
clues that shade the mind's activities. Pronoun-like devices 
called pronomes access whatever mental activities are in prog- 
ress. Pronomes that can operate in several different realms at 
once are paranomes. An isonome, a sort of opposite to a poly- 
neme, is an agent that has a uniform effect on different agencies. 

continued 



86 BYTE- OCTOBER 1987 



Circle 275 on Reader Service Card 



You don't have to be an Engineer to use CAD anymore! 





We've made Computer Aided 
Design & Drafting so easy-to- 
use, affordable, and capable 
that now if s showing up vir- 
tually everywhere. In the 
office, on the job site, at school, 
and home. 

Managers are using Generic 
CADD™ to generate reports, 
forms and flow charts, Trades- 
people are using Generic 
CADD™ to make plans and 
change plans. Schools are 
using Generic CADD™ to 
change the way their students 
learn. 

Professionals of all types now 
realize that Generic CADD™ 
gives the same kind of power 
over their drawing that 
spreadsheet programs gave 
them with numbers! 



Generic CADD! M Just $99.95 

Not copy protected. 

60-day money back guarantee. 

Productivity Modules: 

DotPlot™ 

AutoDimensioning™ 

Drafting 

Enhancements 1™ &2™ 

AutoConvert™ 

Generic IGES™ 



To order, call toll free: 
1-800-228-3601 
or 206-885-5307 
8763 148th N.E. 
Redmond, WA 98052 

Circle 110 on Reader Service Card 
(Dealers: 111) 



Generic 

SOFTWARE 




Programmer's Paradise Gives You Superb Selection, 
Personal Service and Unbeatable Prices! 

Welcome to Paradise. The microcomputer software source that caters to your programming needs. 
Discover the Many Advantages of Paradise . . . 

• Lowest price guaranteed • Huge inventory, immediate shipment • Special orders 

• Latest versions • Knowledgeable sales staff • 30-day money-back guarantee* 



Corporate Buyers 



We'll Match Any 
Nationally Advertised Price 



-t*A Hours 



386 SOFTWARE 

ADVANTAGE 386 C 

ADVANTAGE 386 

PC-MOS386 

PHARLAP 386IASM/LINK 

VM/386 



895 805 
895 805 
CALL CALL 
495 419 
195 CALL 



295 

395 

149 

200 

150 

195 

495 289 

CALL CALL 

CALL CALL 

80 65 

100 89 



265 
359 
125 
179 
95 
109 



386 MICRO-PORT COMPLETE SYSTEM 799 679 

386DOS/MERGE 345 295 

386 SCO COMPLETE XENIX SYS V 1495 1195 

ARTIFICIALINTELLIGENCE 

ACTIVE PROLOG TUTOR 65 55 

ARITY COMBO PACK 1095 979 

ARITY PROLOG INTERPRETER 295 229 

ARITY STANDARD PROLOG 95 79 

CHALCEDONY PROLOG 100 89 

GOLDEN COMMON LISP 495 CALL 

GCL 286 DEVELOPER 1190 CALL 

INSIGHT 2 + 485 379 

IQCLISP 300 CALL 

MICROSOFT LISP 250 155 

PC SCHEME 95 85 

PROLOG 86 PLUS 250 CALL 
PROLOGPROFESSIONALCOMPILER 895 759 

SMALLTALK V 99 85 

TRANS LISP 95 CALL 

TRANS LISP PLUS 195 CALL 

TURBO PROLOG 100 65 

TURBO PROLOG TOOLBOX 100 65 

VP EXPERT 100 89 



ASSEMBLERS/LINKERS 

ADVANTAGE DISASSEMBLER 

ADVANTAGE LINK 

ASMLIB 

DR ASSEMBLER + TOOLS 

MICROSOFT MACRO ASSEMBLER 

PASM86 

PLINK86PLUS 

RELMS CROSS ASSEMBLERS 

UNIWARE CROSS ASSEMBLERS 

VISIBLE COMPUTER: 8088 

VISIBLE COMPUTER 80286 

BASIC 

BETTER BASIC 
FINALLY! 
FLASH-UP 
INSIDE TRACK 
MACH2 

MS QUICKBASIC 
PEEKS & POKES 
QBASE 

QUICK-TOOLS 
QUICKPAK 
SCREENSCLfLPTER 
STAY-RES 
STRUBAS 
TRUEBASIC 
TURBO BASIC 
DATABASE TOOLBOX 
EDITOR TOOLBOX 
TELECOM TOOLBOX 

C + + 

ADVANTAGE C + + 
PFORCE + + 

C COMPILERS 

AZTEC C-COMMERCIAL 

AZTEC C-DEVELOPERS 

C86PLUS 

DATALIGHT C DEVELOPER KIT 

DATALIGHTOPTIMUM-C 

HIGHC 

LATTICE C 

LET'S C 

MICROSOFT C 

QUICKC 

TURBO C 

C INTERPRETERS 

C-TERP 

INSTANT C 

RUN/C 

RUN/C PROFESSIONAL 



C LIBRARIES 

ASYNCH MANAGER 175 135 

BASIC C 175 129 

C-FOOD SMORGASBORD 150 95 

W/SOURCE CODE 300 179 

C TOOLS PLUS 175 135 

C UTILITY LIBRARY 185 119 

C-XPERT 295 249 

ESSENTIAL COMMUNICATIONS 185 125 

COMMUNICATIONS PLUS 250 189 

GREENLEAF FUNCTIONS 185 125 

GREENLEAFCOMM LIBRARY 185 125 

GREENLEAF SAMPLER (TURBO C) 100 79 

MULTI-C 149 135 

PFORCE 295 225 

THE HAMMER 195 129 

TIMESLICER 295 265 

W/SOURCE CODE 
TURBO C TOOLS 

COBOL 
COBOLSPII 
FPLIB 

MICRO FOCUS COBOL PRODUCTS 
MICROSOFT COBOL 

MICROSOFT SORT 195 129 

OPT-TECHSORT 149 115 

REALCICS 995 785 

REALIA COBOL 995 785 

W/REALMENU 1145 899 

RM/COBOL 950 759 

RM/COBOL-85 1250 999 

SCREENIO 400 CALL 

SCREENPLAY 175 129 



1000 CALL 
129 109 



395 329 

149 129 

CALL CALL 

700 439 



89 
65 
75 
99 
45 
89 
130 
69 
125 
95 
495 
100 
100 
100 
100 
100 



129 
89 
79 
55 
59 
65 
39 
79 

109 
59 
95 
75 

445 
69 
65 
65 
65 
65 



MACINTOSH PRODUCTS 


APL*PLUS/PC 


595 


429 


BASIC COMPILER 


195 


139 


BASIC INTERPRETER 


99 


69 


CHALCEDONY PROLOG 


100 


89 


CONSULAIRMAC C (MAC II) 


600 


509 


FORTRAN COMPILER 


295 


209 
f25 


LIGHTSPEEDC 


175 


LIGHTSPEED PASCAL 


125 


89 


MAC C JR. 


80 


59 


MAC PROLOG 


395 


335 


MACTRAN 77 


199 


179 


MASTERFORTH 


350 


315 


MACNOSYV2 


90 


69 


TURBO PASCAL 


100 


65 


Z BASIC 


90 


69 



495 479 
395 225 

499 CALL 
299 CALL 
497 369 

99 75 

139 105 

595 CALL 

500 265 



75 
450 

99 
100 



55 

269 

65 

65 



300 229 

500 379 

120 79 

250 155 



DBASE TOOLS 

CLIPPER 

DBASE III PLUS 

DBASE TOOLS FOR C 

DBASE GRAPHICS FOR C 

DBRIEF 

DBCIII 

DBC III PLUS 

DBXL 

DBPOWERPAKIII 

DB/RA 

DOCUMENTOR 

FOXBASEPLUS 

GENIFER 

QUICKCODE III PLUS 

QUICKSILVER 

TOM RETTIG'S LIBRARY 

UI PROGRAMMER 

DEBUGGERS 
386 DEBUG 
ADVANCED TRACE-86 
BREAKOUT 
CSD DEBUGGER 
C-SPRITE 
PERISCOPE I 
PERISCOPE II 
PERISCOPE II-X 
PERISCOPE III 8 MHZ 
PERISCOPE III 10 MHZ 



695 
695 
80 
80 
95 
250 
750 
139 
100 
200 
295 



459 

429 

65 

65 

85 

169 

595 

99 

89 

179 

249 



395 CALL 
395 299 



295 
599 
100 
295 



195 
175 
125 
75 
175 
345 
175 
145 
995 
1095 



239 

499 

79 

249 



155 
119 



119 
289 
139 
105 
825 
899 



PFIX 86 PLUS 
SOFTPROBE II/TX 
XVIEW86 

DISK/DOS/KEYBOARD UTILITIES 

BACK-IT 

BOOKMARK 

COMMAND PLUS 

FASTBACK 

INTELLIGENT BACKUP 

KEYWORKS ADVANCED 

NORTON COMMANDER 

NORTON UTILITIES 

ADVANCED NORTON UTILITIES 

PDISK 

Q-DOSII 

QUAID ANALYZER 

TASKVIEW 

FILE MANAGEMENT 

ASMTREE 

BTRIEVE 

XTRIEVE 

REPORT OPTION 

BTRIEVE/N 

XTRIEVE/N 

REPORT OPTION/N 

C-TREE 

R-TREE 

C-TREE/R-TREE BUNDLE 

DBC III 

W/SOURCE CODE 
DBC III PLUS 
DBVISTA 
FABS PLUS 
INFORMIX ESGL/C 
INFORMIX 4GL 
INFORMIX SQL 
PHACT MANAGER 

EDITORS 
BRIEF 

W/DBRIEF 
CVUE W/SOURCE CODE 
EDIX 
EMACS 
EPSILON 
FIRSTIME(C) 
KEDIT 
PC/EDT 
PC/VI 

PMATEPRO 
SPF/PC 
VEDITPLUS 
XTC 

FORTRAN COMPILERS 

LAHEY FORTRAN 

LAHEY PERSONAL FORTRAN 77 

MICROSOFT FORTRAN 

RM/FORTRAN 

WATFOR FORTRAN 

FORTRAN 77 

FORTRAN UTILITIES/LIBRARIES 

ACSTIME SERIES 

DIAGRAM'ER 

DOCUMENTOR 

DIFF-E-Q 

FORTLIB 

FORTRAN ADDENDA 

FORTRAN ADDENDUM 

GRAFLIB 

GRAFMATICS 

MATHPAC 

NO LIMIT 

PLOTMATICS 

SSP/PC 

GRAPHICS 

ADVANTAGE GRAPHICS (C) 

ESSENTIAL GRAPHICS 

GRAPHIC 

GSS GRAPHIC 

DEVELOPMENTTOOLKIT 
HALO 



395 


225 


750 


715 


60 


49 


100 


89 


100 


79 


80 


69 


175 


129 


150 


135 


299 


239 


75 


55 


100 


59 


150 


89 


145 


89 


70 


59 


99 


89 


80 


59 


395 


339 


245 


185 


245 


185 


145 


99 


595 


455 


595 


455 


345 


269 


395 


315 


295 


239 


650 


519 


250 


169 


500 


359 


750 


595 


195 


129 


195 


169 



595 CALL 
995 CALL 
795 CALL 
249 219 



195 CALL 
275 CALL 
250 199 



195 
295 
195 
295 
125 
250 
149 
195 
195 
185 
99 



155 

265 
149 
229 

99 
229 
109 
109 
145 
129 

79 



477 CALL 
95 89 



450 
595 
375 

350 



495 
129 
129 
495 
125 
165 
95 
175 
135 
495 
129 
135 
350 



250 
250 
350 

495 
300 



269 
399 
335 
319 



389 
115 
115 
445 
109 
139 
85 
169 
119 
445 
115 
119 
269 



225 
185 
285 

375 
205 



HALO (5 MICROSOFT LANG.) 595 389 

HALO TEN FONT PACK 100 79 

METAWINDOW 195 159 

METAWINDOW PLUS 275 229 

TURBOWINDOW/C 95 79 

TURBO HALO (FOR TURBO C) 100 79 

LINT 

PC-LINT 139 99 

PRE-C 295 155 

MODULA-2 

FARBWARE MODULA-2 90 79 

LOGITECH MODULA-2 

APPRENTICE PACKAGE 99 79 

WIZARD PACKAGE 199 159 

MAGIC TOOLKIT 99 79 

WINDOW PACKAGE 49 39 
"ROM PACKAGE AND CROSS 

RUNTIME DEBUGGER 299 239 

REPERTOIRE 89 75 

OPERATING SYSTEMS 
MICROPORT: 

286 DOS MERGE 149 125 

SYSTEM V/AT (COMPLETE) 549 475 

RUNTIME SYSTEM 199 169 
SOFTWARE DEVELOPMENT 

SYSTEM 249 209 

TEXT PREPARATION SYSTEM 199 189 

UNLIMITED LICENSE KIT 249 209 

SCO: 

XENIX SYSTEM V (COMPLETE) 1295 995 

DEVELOPMENTSYSTEM 595 499 

OPERATING SYSTEM 595 499 

TEXT PROCESSING PACKAGE 195 145 

WENDIN: 

OPERATING SYSTEM TOOLBOX 99 79 

PCVMS 99 79 

PCNX 99 79 

WENDIN-DOS 99 79 

WENDIN-DOS APPLICATION 99 79 

PASCAL COMPILERS 

ADVANTAGE 386 PASCAL 895 805 

MARSHALL PASCAL 189 155 

MISCROSOFT PASCAL 300 185 

PASCAL-2 350 329 

TURBO PASCAL 100 65 

PROFESSIONAL PASCAL 595 CALL 

TURBO PASCAL ADD-ONS 

ALICE 95 69 

DOS/BIOS & MOUSE TOOLS 75 69 

FIRSTIME 75 59 

FLASH-UP 89 79 

FLASH-UP TOOLBOX 49 45 

GSI PASCAL DEBUGGER 50 45 

INSIDE TRACK 65 55 

MACH 2 75 59 

METRABYTE DATA ACQ. TOOLS 100 89 

PASCAL HELPER 80 7 5 

PEEKS & POKES 45 39 

SCIENCE AND ENGIN. TOOLS 75 69 

SCREENPLAY 175 129 

SCREEN SCULPTOR 125 95 

SYSTEM BUILDER 150 129 

IMPEX 100 89 

REPORT BUILDER 130 115 

TP2C 249 199 

TURBO-ASM 99 69 

TDEBUGPLUS 60 49 

TURBO ASYNCH PLUS 100 79 

TURBO EDITOR TOOLBOX 70 45 

TURBOEXTENDER 85 65 

TURBO GRAPHIX TOOLBOX 70 45 

TURBOHALO 129 99 

TURBOMAG1C 99 89 

TURBO MASTER 125 99 

TURBO NUMERICAL METHODS 100 65 

TURBO OPTIMIZER 75 65 

TURBO POWERTOOLS PLUS 100 79 

TURBO PROFESSIONAL 70 49 

TURBOPOWER UTILITIES 95 79 

TURBOWINDOW/PASCAL 95 79 

UNIVERSAL GRAPHICS LIBRARY 150 119 



NEW PRODUCTS 

PMATEPRO— Phoenix's fully customizable full 
screen editor now does file editing limited only by 
memory. And its unique text storage method allows 
movement of the cursor to the end of the file in- 
stantaneously. PMATEPRO includes support for 
user-definable overlapping windows, keyboard re- 
mapping, and FORTRAN and c-specific macros. 
List $195 Ours: $109 

PHACT-MANAGER— An ISAM database record 
manager with over 2,000 licenses in the field, under 
DOS, VAX and UNIX systems. And now a tremen- 
dous bargain. Phact-Manager now includes Phact 
dbrm, query, report, and full "C" source code, yet 
lists at $249. Ours: $219 

ADVANTAGE VCMS — A powerful version control 
management system needed for any ongoing soft- 
ware development project. ADVANTAGE VCMS 
maintains a complete revision history in data com- 
pressed files. A powerful report generator is 
provided for selective queries. The tools and utilities 
included can be accessed through an easy-to-use, 
full-screen menu-driven shell. Additionally, a make 
utility, designed to work together with ADVANTAGE 
VCMS is included. 

List: $379 Ours: $329 

THE KORN SHELL— A direct part of The Popular 
UNIX System V KSH command line interpreter used 
throughout AT&T and Bell Laboratories. Some of 
the Korn Shell's features are built-in command line 
editing, command re-entry and command aliasing 
available for either XENIX or UNIX. 
List: $125 Ours: $115 



PROFILERS 

CODESIFTER 

PFINISH 

THE PROFILER 

THE WATCHER 

SCREEN DISPLAY/WINDOWS 

C POWER WINDOWS 

C-SCAPE 

CURSES W/SOURCE CODE 

FORMAKER 

GREENLEAF DATA WINDOWS 

W/SOURCE CODE 
JAM 

MICROSOFT WINDOWS 
MS WINDOWS DEVELOPMENT KIT 



119 


85 


395 


225 


125 


89 


60 


DD 


130 


115 


279 


CALL 


250 


169 


495 


CALL 


225 


155 


395 


289 


750 


CALL 


99 


65 


500 


309 



88 BYTE- OCTOBER 1987 



PANEL 
PANEL PLUS 
QUICKSCREEN 
VITAMIN C 
VC SCREEN 
WINDOWS FOR C 
WINDOWS FOR DATA 
VIEW MANAGER 
ZVIEW 

TRANSLATORS 

BAS C (ECONOMY) 

BAS C (COMMERCIAL) 

BAS PAS (ECONOMY) 

BAS PAS (COMMERCIAL) 

BASTOC 

BASTOC (BASICA VERSION) 

DB2C 

DBXTRANSLATOR 

PTRAL 

RTC PLUS 

TP2C 

ADDITIONAL LANGUAGES 

ACTOR 

APL* PLUS/PC 

HS/FORTH 

JANUS/ADA C PACK 

LATTICE RPG II COMPILER 
SCREEN DESIGN AID 
SOURCE ENTRY UTILITY 
SORT/MERGE UTILITY 

MASTERFORTH 

PC/FORTH 

PERSONALREXX 

POCKETAPL 

THE WEINER SHELL 

ADDITIONALPRODUCTS 

ADVANTAGE VCMS 

DAN BRICKLIN'S DEMO PROGRAM 

DAN BRICKLIN'S DEMO TUTORIAL 

FAST FORWARD 

FLOW CHARTING II 

HELP/CONTROL 

LINK & LOCATE 

NORTON GUIDES 

NS CHARTS 

ON-LINE HELP 

SAPIENS V8 

SETtSCIL 

SOFTSCREEN HELP 

SOURCE PRINT 

TEXT MANAGEMENT UTILITIES 

TREE DIAGRAMER 

VENTURAPUBLISHER 

BLAISE 

ASYNCH MANAGER 

C TOOLS PLUS 

EXEC PROGRAM CHAINER 



295 
495 
195 
225 
99 
245 
395 
275 
245 



199 
395 
175 
165 
85 
189 
315 
199 
169 



199 

375 

149 

280 

495 

795 

299 CALL 

350 299 

179 CALL 

325 289 

249 199 



169 
319 
125 
239 
399 
639 



LIGHT TOOLS FOR DATALIGHT C 100 

PASCAL TOOLS 125 

PSACALTOOLS2 100 

PASCAL TOOLS &TOOLS 2 175 

RUNOFF TEXT FORMATTER 50 

TURBOASYNCHPLUS 100 

TURBO C TOOLS 129 

TURBO POWER TOOLS PLUS 100 

VIEW MANAGER 275 

BORLAND 

EUREKA EQUATION SOLVER 100 

REFLEX & REFLEX WORKSHOP 200 

REFLEX DATA BASE SYSTEMS 150 

REFLEX WORKSHOP 70 

SIDEKICK & TRAVELING SIDEKICK 125 



495 
595 
395 

95 
750 
350 
250 
250 
125 
150 
125 

95 
199 



379 
75 
50 
70 
229 
125 
350 
100 
450 
149 
300 
349 
195 
95 
120 
77 
895 



175 
175 
95 



419 

429 

359 

89 

629 

309 

199 

199 

115 

109 

99 

79 

179 



329 
59 
45 
59 

205 
99 

315 
65 

405 
99 

269 

319 

149 
75 
89 
69 

625 



135 
135 
75 



SIDEKICK 

TRAVELING SIDEKICK 
SUPERKEY 
TURBO BASIC COMPILER 

TURBO DATABASE TOOLBOX 

TURBO EDITOR TOOLBOX 

TURBO TELECOM TOOLBOX 
TURBO C COMPILER 
TURBO JUMBO PACK 
TURBO LIGHTNING 
TURBO PASCAL 

TURBO PASCAL AND TUTOR 

TURBO TUTOR 

TURBO PASCAL NUMERICAL 
METHODS TOOLBOX 

TURBO PASCAL DATABASE 
TOOLBOX 

TURBO PASCAL EDITOR TOOLBOX 70 

TURBO PASCAL GAMEWORKS 
TOOLBOX 

TURBO PASCAL GRAPHICS 
TOOLBOX 
TURBO PROLOG COMPILER 

TURBO PROLOG TOOLBOX 
WORD WIZARD 
WORD WIZARD AND 
TURBO LIGHTNING 



85 
70 
100 
100 
100 
100 
100 
100 
300 
100 
100 
125 



100 
70 



70 

70 
100 
100 

70 



150 

DIGITAL RESEARCH 

CB 86 600 

PASCAL MT+ 400 

PL1 86 750 

DR ASSEMBLER + TOOLS 200 

ACCESS MANAGER 400 

DISPLAY MANAGER 500 

FORTRAN 77 350 

LATTICE 

LATTICE C COMPILER 500 

W/SOURCECODE 900 
C CROSS REFERENCE GENERATOR 50 

W/SOURCECODE 200 

C-FOODSMORGASBORD 150 

W/SOURCE CODE 300 

C-SPRITE 175 



79 
99 
79 

135 
45 
79 
99 
79 

199 



65 
129 
89 
45 
85 
59 
45 
65 
65 
65 
65 
65 
65 
219 
65 
65 
85 
29 



45 
45 



45 
65 
65 
49 



539 
359 
675 
179 
359 
449 
319 



265 
495 

39 
139 

95 
179 
119 



CURSES SCREEN MANAGER 125 89 

W/SOURCE CODE 250 169 

CVUE 75 59 

W/SOURCECODE 250 199 

DBC III/II 250 169 

W/SOURCECODE 500 359 

DBC III PLUS 750 595 

W/SOURCECODE 1500 1185 

LMK 195 139 

LSE 125 99 

RPG II COMBO 1100 875 

RPG II COMPILER 750 629 

RPG II SEU 250 199 

RPG II SORT/MERGE 250 199 

RPG II SCREEN DESIGN AID 350 309 

SECRETDISK 120 89 

SIDETALK 120 89 

SSP/PC 350 269 

TEXT MANAGEMENT UTILITIES 120 89 

TOP VIEW TOOLBASKET 250 179 

W/SOURCE CODE 500 359 

LIFEBOAT 

ADVANTAGE 386 C 895 805 

ADVANTAGE 386 PASCAL 895 805 

ADVANTAGE C + + 495 479 

ADVANTAGE DISASSEMBLER 295 265 

ADVANTAGE GRAPHICS 250 225 

ADVANTAGE LINK 395 359 

ADVANTAGE MAKE 125 99 

ADVANTAGE VCMS 379 329 

PANEL 295 199 

PANEL PLUS 495 395 

QUICKSCREEN 195 175 

RUN/C-THE C INTERPRETER 120 79 

RUN/C PROFESSIONAL 250 155 

TIMESLICER 295 265 

W/SOURCECODE 1000 895 



PHOENIX 

PASM86 

PDISK 

PFANTASY PAC 

PFINISH 

PFIX86PLUS 

PFORCE 

PFORCE+ + 

PLINK86PLUS 

PLOCATE 

PMAKER 

PMATEPRO 

PRE-C 

PTEL 

POLYTRON 

POLYBOOST 

POLYDESKIII 
POLYDESK III ARCHIVIST 
POLYDESK III CRYPTOGRAPHER 
POLYDESK 111 TALK 

POLYLIBRARIAN 

POLYLIBRARIANII 

POLYMAKE 

POLYSHELL 

POLYTRON C BEAUTIFIER 

POLYTRON C LIBRARY I 

POLYXREF 

POLYXREF ONE LANGUAGE 

PVCS NETWORK 

PVCS CORPORATE 

PVCS PERSONAL 

PVMFM 



195 
145 
995 
395 
395 
395 
395 
495 



109 
89 
599 
225 
225 
225 
225 
299 



CALL CALL 

125 79 

195 109 

295 155 

195 109 



80 
99 
50 
50 
70 
99 
149 
149 
149 
49 
99 
219 
129 



85 
45 
45 
59 
85 
125 
125 
125 
45 
85 
189 
109 
1000 CALL 
395 335 
149 125 
199 155 



MICROSOFT 






MS BASIC COMPILER (XENIX) 


695 


419 


MS BASIC INTERPRETER (XENIX)' 


350 


209 


MS C COMPILER 


450 


269 


MSCOBOLCOMPILER 


700 


439 


FOR XENIX 


995 


609 


MS FORTRAN 


450 


269 


FORXENIX 


695 


419 


MS LEARNING DOS 


50 


39 


MS LISP 


250 


155 


MS MACRO ASSEMBLER 


150 


95 


MS MOUSE BUS VERSION 


175 


119 


MSMOUSESERIAL VERSION 


195 


125 


MSMUMATH 


300 


185 


MS PASCAL COMPILER 


300 


185 


FORXENIX 


695 


419 


MS QUICK BASIC COMPILER 


99 


65 


MS QUICKC 


99 


65 


MS SORT 


195 


125 


MSWINDOWS 


99 


65 


MS WINDOWS DEVELOPMENT KIT 


500 


309 



XENIX/UNIX PRODUCTS 


ADVANTAGE C + + 


695 CALL 


BTRIEVE 


595 455 


C-TERP 


498 379 


INFORMIX 


CALL CALL 


KORN SHELL 


125 115 


MICROSOFT LANGUAGES 


CALL CALL 


PANEL PLUS 


795 675 


REAL TOOLS 


149 89 


RM/COBOL 


1250 949 


RM/FORTRAN 


750 549 



AMIGA PRODUCTS 






AZTEC COMMERCIAL 


499 


449 


AZTEC DEVELOPERS 


299 


269 


DBMAN 


150 


119 


LATTICE AMIGA DOS COMPILER 


225 


179 


LATTICE PRO AMIGA C COMPILER 


375 


299 


MODULAIIREG 


90 


75 


MODULAIIDEV 


150 


125 


TRUE BASIC 


100 


79 



Windows for Data 



Build a state-of-the-art user interface into your user program. 
Complete system for building and managing menus, data-entry 
forms, user help and text files in a windowing environment. Begins 
where others end. Features include: Field entry from lists of 
choices, scrollable regions for entry of a vari- ^m^ ii^rm 
able number of line items, nesting and branch- gjg Creative 
ing of forms and menus. Unique built-in ^^gf Software 
debugging system. List $395 Ours $315 

Essential Communications Plus 

A C library plus debugger stressing reliability and ease of use. It 
enables speeds to 9600 baud with XON/XOFF and XMODEM 
support. It includes a thorough manual with tutorial and easy-to- 
follow examples and demos. The debugger turns your PC into a 
sophisticated line monitor while an internal editor 
enables you to create, send or capture data, save 
it to a file, compute checksums or edit it in Hex 
or ASCII. List $250 Ours $189 

PforCe 

PforCe is a pre-coded optimized object-oriented toolkit of over 400 
routines for C programmers. It includes data bases with B-trees, 
windows, interrupt-driven communications,- string handling, 
menus, all of the basic DOS interfaces, and a complete set of low- 
level functions to interface directly to the hard- y- 
ware. PforCe comes complete with indexed refer- /f^i^fU^ 
ence manual, on line resident help, and quick ^' 
reference card. List $295 Ours $225 



Periscope III 




Periscope III sets a new standard in price/performance for real- 
time hardware breakpoint debuggers. You'll find the errors in real- 
time systems, stop intermittent failures, interface with undocu- 
mented systems and eliminate bottlenecks in your code. It's an 
easy transition from other models too, since the commands are a 
superset of those used in Periscope I, II and II-X. One board works 
on PC/XT/ AT. Includes the board, break- .-^t^-* 

out switch, software and quick reference PERISC3[SPE 
card. 8MHZ List $995 Ours $899 ^^ 

Microsoft Quick C 

The New Quick C from Microsoft sets new standards for speed in a 
C Compiler. Fast and complete; compilation speed of 10,000 lines/ 
min. Includes source-level debugger, graphics libraries, library 
manager, make facility. The libraries in Quick C support ANSI 
standard C and the UNIX System V standard for C. 
Quick C supports 8087/ 80287 math coprocessor. Migrr~rtft* 
Quick C supports multiple module programming 
and dynamic break points. List $99 Ours $65 

TimeSUcer New Version 

A library of C functions to create multitasking and real-time pro- 
grams at the application level rather than interfacing with the 
operating system. Create, suspend or terminate tasks at run-time. 
Compatible with Lattice C, Microsoft C, • f pwfw* mm* 
ADVANTAGE C + + and object-oriented UitSUAT 
programming. List $295 Ours $265 



Terms and Policies 

• We honor MC, VISA, AMERICAN EXPRESS 
No surcharge on credit card or C.Q.D. Prepayment by 
check. New York State residents add applicable sales 
tax. Shipping and handling $3.00 per item, sent UPS 
ground. Rush service available, prevailing rates. 

• Programmer's Paradise will match any current nation- 
ally advertised price for the products listed in this ad. 

• Prices and Policies subject to change without notice. 

• New Extended Hours 9AM EST —7PM EST 
*Ask for details. Some manufacturers will not allow 

returns once disk seals are broken. 
Corporate Buyers — Call for special 
discounts and benefits! 



1-800-445-7899 

In NY: 914-332-4548 

Customer Service: 

914-332-0869 

International Orders: 

914-332-4548 
Telex: 510-601-7602 



Programmer's 



,>— v programmers 




Circle 149 on Reader Service Card 



42 River Street, Tarrytown, NY 10591 

OCTOBER 1987 -BYTE 89 



Circle 258 on Reader Service Card 



Expansion Chassis/Tape Back-up 




Specification 



Model 
No. 


No. of 

Slot 


Space for 
54 Height Drive 


Power Supply 
(Watts) 


Dimension 
DXWXH(cm) 


Price 


M-r 





1 


50 


30x15x6.5 


$139 


M-2 


3 


3 


100 


42x25x16 


$299 


M-3 


5 


3 


100 


39x30x15 


$239 


M-4 


12 


2 


100 


40x49x14 


$299 


M-5 





2 


45 


39x18x15 


$149 


M-6 





1 


50 


26.5x18x13.5 


$169 


M-7 


5 


2 


100 


38,5x30x13.5 


$299 


M-8 





2 


45 


39.5x18x13.5 


$149 


M-9 





2 


60 


38.5x49x9 


$249 


M-10 


8 


4 


135 


43x49x14 


$239 



' Extra space for a stand alone controller 
EXT and RCV Adapters (Interfacing Computer & Chassis With Slots).. 
Tape Back-up (With Controller & Cable].... $499 

ORDER TOLL FREE: (800) 826-0267 

In California Call (408) 434-0877 

SOURCE ELECTRONICS CORP. 

2380 Qume Drive, Suite E 

San Jose, CA 95131 

Telex: 279366 Fax: (408) 434-0539 



.$149 



BOOK REVIEWS 



& 



Comdex Booth R8731 



Keyboard Protector 




Finally! A Keyboard Protector That: 



• PROTECTS CONTINUOUSLY - 24 HOURS A DAY - 

Against computer downtime due to liquid spills, dust, ashes, 
staples, paper clips and other environmental hazards. 

• REMAINS IN PLACE during the operation of your keyboard. 
Saf eSkin is precision molded to fit each key - like a "second skin." 

• EXCELLENT FEEL - The unique design eliminates any in- 
terference between adjacent keys, allowing smooth natural 
operation of your keyboard. 

• SafeSkin IS VIRTUALLY TRANSPARENT - Keytops and 
side markings are clearly visible. In fact, SafeSkin is so clear, 
sometimes you may not know it's there! 

• DURABLE - LONG LASTING - SafeSkin is not a "throw- 
away" item. Many of our protectors have lasted over 3 years 
under continuous daily use, without failure. 

SafeSkin is available for most popular PC's and portables including: 
IBM, APPLE, AT&T, COMPAQ, DEC, EPSON, KEY- 
TRONICS, NEC, TANDY, TOSHIBA, WANG, WYSE, 
ZENITH. Specify computer make and model. Send $29.95, Check 
or M.O., VISA & MC include exp. date. Dealer inquiries invited. 
Free brochure available. 

Merritt Computer Products, Inc. 

4561 S. Westmoreland / Dallas, Texas 75237 / 214/339-0753 



A Fresh Start 

Minsky's ideas seem very close to the truth about how minds 
work. This makes them seem obvious, because on a superficial 
level we are all familiar with how the mind appears to work. 
However, the theoretical basis for these practical ideas is far 
from obvious. 

For me, Minsky has made a fresh start on explaining the 
mind. His book doesn't take the little we know about brain hard- 
ware and try to force-fit a theory of mind onto the world of neu- 
rons, synapses, and brain chemistry. Instead, the book is a live- 
ly discussion of the brain's software. It takes cues from biology, 
child psychology, and computer science to build a model of how 
a thinking machine as powerful as the human brain might work. 

Minsky says frightening things that may threaten our sense of 
self and our place in the universe. But he also has words of en- 
couragement. He doesn't accept incompetence of intellect as a 
normal, if unfortunate, deficiency in talent. He thinks that intel- 
lectual incompetence should be treated as an illness to be cured, 
just as emotional and other human deficiencies are treated. 

"Only" a Machine 

For Minsky, the mind is a machine— a powerful, complex ma- 
chine, but nevertheless a machine we can understand using sci- 
entific methods. He wonders why people are so distraught that 
our most prized possession, the mind, might be "only" a ma- 
chine. For Minsky, machines are the most wonderful constructs 
on earth: 

Are minds machines? Of that, I've raised no doubt at all but 
have only asked, what kind of machines? And though most 
people still consider it degrading to be regarded as machines, 
I hope this book will make them entertain, instead, the 
thought of how wonderful it is to be machines with such mar- 
velous powers. 

Borrow Kirkpatrick (P. O. Box 376, Rosendale, NY 12472) is an 
engineer, consultant, and freelance technical writer. 



THE SEARCH FOR EXTRATERRESTRIAL 
INTELLIGENCE: LISTENING FOR LIFE 
IN THE COSMOS 

Reviewed by Jack Kirwan 

Philosophers from every culture wonder about the possibili- 
ty of other life forms in the universe. But because there has 
been absolutely no data and no way of getting it, the possibility 
has never become more than idle speculation. 

Thanks in large part to computers, all that is changing. Not 
only have the arguments for and against extraterrestrials become 
more sophisticated, so have the techniques of sending informa- 
tion. Addressing this topic is Thomas R. McDonough's interest- 
ing, very clear, but sometimes uneven survey, The Search for 
Extraterrestrial Intelligence . 

McDonough, a lecturer at California Institute of Technology, 
is the coordinator for the Search for Extraterrestrial Intelligence 
(SETI) within the Planetary Society, so he brings to the book a 
definitive pro-SETI bias. This is not so bad, except for his chap- 
ter on the objections to SETI (which I'll discuss later). Unlike 
Edward Regis Jr.'s excellent anthology, Extraterrestrials- 
Science and Alien Intelligence (see my review in the August 
1985 BYTE, page 62), McDonough's book is not an academic, 
highly technical treatment of the subject. It is popularly written, 
and, as Isaac Asimov and Ben Bova have demonstrated, popular 
writing is not necessarily unscientific. However, McDonough 
wants extraterrestrials to exist so much you can almost taste it. 

continued 



90 BYTE- OCTOBER 1987 



Circle 168 on Reader Service Card 



More than two years ago, we introduced the leading low-cost (under $1000) 
CAD system, ProDesign II. It was priced at $299. Since that time, more than 
1 000 enhancements havebeenaddedtothe software, making ProDesign II the 
price performance leader in CAD. 

Now, ProDesign II has been renamed DesignCAD and packaged with more than 
$400 worth of supplementary software, including symbol libraries, file transfer 
utilities, and materials list programs. We added more than 1 00 enhancements to 
the software, making DesignCAD an extremely powerful CAD system at any 
price. 

We were at a loss, however, when it came time to set the price. We considered 
pricing DesignCAD at $999. We thought about reducing the price to a low 
$599. We talked to industry experts. We met with marketing consultants. We 
performed calculations on the finest spreadsheets money can buy. Then, in the 
great American tradition, we said "Aw. . . What the Heck!" DesignCAD is priced 
at $299! 



New Name: ProDesign II is now DesignCAD 
New Features: 

• Compatibility with most other CAD systems large and small (DXF and IGES, 
Input and Output included at no extra charge). 

• Compatibility with virtually all desktop publishing systems is included at no 
extra charge. 

• Expanded Memory Support is now provided to utilize the full power of your 
PC/AT. 

• Several new character fonts are now provided at no extra charge. 

• More than 1 00 new drawing features are now provided at no extra charge. 

• Symbol libraries with more than 500 symbols are included at no extra charge. 

• A Bill of Materials utility is provided at no extra charge. 

• DesignCAD provides complete support for the IBM System/2. 
Same Quality: 

• DesignCAD has all the features and capabilities of ProDesign II- normally 
found only in CAD systems costing thousands of dollars. 

• DesignCAD, like ProDesign II, has unparalleled ease of use. 

• DesignCAD, like ProDesign II, has unprecedented dot matrix print quality. 

• DesignCAD supports more than 200 printers, 80 plotters, and virtually any 
mouse, digitizer, and display compatible with the IBM PC. 

Call or write for a FREE DEMO DISK: 
American Small Business Computers 
118 South Mill • Pryor, OK 74361 • 918/825-4844 



ProDesign II is now DeSJCinCAD 

Still Only 6299! 





M 

1 SI 

jAfflf 






|B 


IPS 








III 









Circle 15 on Reader Service Card 



XI^^j I 



DRAWN USING DESIGNCAD 



II 





Circle 299 on Reader Service Card 



Easy to C 

Cis a great programming 
language. Now the C 
WORKSHOP makes it easy. 

Interactive software teaches 
you C with immediate feedback 
on your program exercises. 

The C WORKSHOP has 
everything you need to learn 
C and write your own pro- 
grams, too. You get a fast editor^ 
standard C compiler, and online 
help. 

Let the other guy struggle with confusing books 
and compilers. Join AT&T and other major com- 
panies now using the C WORKSHOP. Columnist 
Adam Green calls it "the most intriguing new type 
of training system I've ever seen/' (InfoWorld 
1/27/86) 





Quality software since 1! 



Order Information 

To order the C Workshop, call toll-free 
(800) 227-2400 ext. 955 day or night 
(Visa, MC, or AmEx). Or send check to 
Wordcraft, 3827 Penniman Ave., Oak- 
land, CA 94619. $69.95 plus $5.00 
shipping (Priority Mail). In CA, add 
$4.90 sales tax. 



15 MHZ PC/AT SYSTEM si 158 $ 1440 
15 MHZ PC/AT/XT si 155 



12 MHZ O WAIT AT SYSTEM 

Sl:15.8 $ 1390 
12 MHZ MINI ATC6/10/12mhz)SI:13.3 



DESK TOP SYSTEM $1240 

LCD P0RTADLE $1690 

PORTABLE $1440 

Our systems are Listed on 2 pages ADS on COMPUTER SHOPPER 



BOOK REVIEWS 



80386(6/16 MHZ O WAIT STATE) 

* Mini AT Size 6 Layers Board 

* 2 MB RAM on Board, Expandable to 8 MB on Board 

* Sl:21.7 



DESK TOP SYSTEM $2590 

LCD PORTABLE $2799 

PORTABLE. $2699 

MOTHERBOARD . $1790 

DESK TOP SYSTEM $1 190 

LCD PORTABLE $1590 

PORTABLE $1390 



IMPERIAL COMPUTER CORP 

31B#B&C,S. San Gabriel Blvd.,San Gabriel, CA91776 
Tel: (818) 285-1256 (5 lines) 

TELEX: 3719072 IMPERIAL FAX: (818)2859488 



92 BYTE* OCTOBER 1987 



Circle 128 on Reader Service Card 



SETFs Earliest Beginnings 

Despite centuries of philosophical and theological speculation, 
serious searching for extraterrestrial intelligence began in the 
19th century. In the 1820s, mathematician Carl Friedrich Gauss 
proposed talking to lunar inhabitants by planting pine trees "in 
the shape of squares on the side of a right triangle." He hoped 
this would communicate to the extraterrestrials on the Moon that 
humans at least knew the Pythagorean theorem. Nothing came 
of this, nor of the Viennese astronomer Joseph von Littrow's 
idea of digging a 20-mile ditch in the Sahara, filling it with kero- 
sene, and tossing in a lit match. 

Mostly due to the American astronomer Percival Lowell , in- 
terest shifted from the Moon to Mars. Lowell was convinced 
(thanks to the work of Italian astronomer Giovanni Schiaparelli) 
that there was intelligent life on Mars. He wrote a series of 
scholarly books on the subject. In fact, as McDonough points 
out, the Martian extraterrestrial hypothesis became so widely 
accepted that "a contest was eventually held to reward the first 
discovery of intelligent life beyond Earth, excluding Mars— 
because that would be too easy . " 

Most of the confusion about Mars resulted from a simple mis- 
translation. When observing Mars, Schiaparelli had seen what 
appeared to be grooves or straight lines through his telescope. 
He labeled them "canali," the Italian word for channel. In the 
excitement, a linguistic jump mistranslated the word as 
"canal," thus implying a level of intelligent engineering. 

The Modern SETI 

The modern SETI began in 1959 with an article by Philip Mor- 
rison and Giuseppe Cocconi in the British journal Nature. Dis- 
counting the idea of other intelligent life in the solar system, 
they concluded that "the easiest way to communicate across the 
galaxy would be by radio signals. " And with this, the story of 
SETI begins to pick up. 

The first problem, of course, is which of many channels to 
tune into. Trying to cover all parts of the sky with every channel 
is a centuries-long, mind-boggling concept, so Morrison and 
Cocconi proposed using the fundamental radio signal that hy- 
drogen atoms broadcast. 

In McDonough 's words, "over the vastness of space there are 
so many atoms that the feeble radio broadcasts of each one 
would add up to a detectable signal. The atoms broadcast at a 
frequency of 1420 megahertz." Morrison and Cocconi rea- 
soned that if there are other civilizations in the universe, they 
would probably know about this hydrogen signal, so 1420 MHz 
would be the channel of choice. 

Herein lies another major problem with SETI: trying to fig- 
ure out what the members of a totally alien civilization would be 
like. Some simplistic judgments assume that extraterrestrials 
would follow certain positive terrestrial philosophical bents— 
often those of the assumers. Others think that any advanced civi- 
lization anywhere must share certain scientific basics (e.g., the 
speed of light and pi) and must go on from there to develop 
means of communication. But for the most part, putting togeth- 
er an intelligent and rational SETI package is a complicated and 
interesting tale, and the strongest part of McDonough' s book. 

The Drake Equation 

Naturally, the biggest question in SETI is whether or not any- 
body is out there sending or receiving. Here we get an interest- 
ing professional breakdown. A lot of astronomers tend to be on 
the pro-extraterrestrial side, while many microbiologists are op- 
posed. SETI pioneer Frank Drake, for example, set up seven 
questions (to form what's now labeled The Drake Equation) to 
argue for the defense. These questions (plus McDonough' s esti- 
mated answers in parentheses) are as follows: 

continued 

Circle 160 on Reader Service Card _► 




Our thanks to NASA for supplying this computer enhanced ultraviolet photo taken by Skylab IV of a solar prominence reaching out 350,000 miles above the sun's surface 

Genius Begins With A Great Idea ... 



But The Idea Is Just The Beginning 

What follows is the time consuming task of giving 
form and function to the idea. 

That's why we concentrate on building into our soft- 
ware development systems functions and features 
that help you develop yoursoftware ideas in less time 
and with less effort. 

We've started 1987 by releasing new versions of 
our MS-DOS, Macintosh, Amiga, ROM, and Apple // 
C development systems. Each system is packed with 
new features, impressive performance, and a little bit 
more genius. 

Aztec C86 4.1 

'New PC/MS-DOS • CP/M-86 • ROM 

Superior performance, a powerful new array of fea- 
tures and utilities, and pricing that is unmatched 
make the new Aztec C86 the first choice of serious 
software developers. 

Aztec C86-p Professional System . . . .$199 

• optimized C with near, far, huge, small, and large 
memory + Inline assembler + Inline 8087/80287 + 
ANSI support + Fast Float (32 bit) + optimization 
options • Manx Aztec 8086/80x86 macro assembler 

• Aztec overlay linker (large/small model) • source 
ie^el debugger • object librarian • 3.x file sharing & 
locking • comprehensive libraries of UNIX, DOS, 
Screen, Graphics, and special run time routines. 

Aztec C86-d Developer System $299 

• includes all of Aztec C86-p • Unix utilities make, 
dif f , grep • vi editor • 6 + memory models • Profiler. 

Aztec C86-c Commercial System $499 

• includes all of Aztec C86-d • Source for library rou- 
tines • ROM Support • CP/M-86 support • One year 
of updates. 

Aztec C86 Third Party Software 

A large array of support software is available for Aztec 
C86. Call or write for information. The following is a 
list of the most requested products: • Essential Graphics 

• C Utility Library • Curses • Greenleaf Communica- 
tion, General, and Data Window • Halo • Panel + • 
PC-lint • PforCe • Pre-C • Windows for C • Windows 

for Data • C terp • db Vista • db-Query • Phact • 

Plink-86 Plus • c-tree • r-tree • Pmate. 

CP/M • TRS-80 • 8080/Z80 ROM 

C compiler, 8080/Z80 assembler, linker, librarian, 
UNIX libraries, and specialized utilities. 

Aztec C ll-c (CP/M-80 & ROM) $349 

Aztec Cll-d (CP/M-80) $199 

Aztec C80 (TRS-80 3&4) $199 



Aztec C68k/Am 3.4 

New Amiga Release 

Amiga user groups across the USA voted Aztec 
C68k/Am release 3.3 the best Software Development 
System for the Amiga. Release 3.4 is more impres- 
sive. 

Aztec C68k/Am-p Professional $199 

A price/feature/performance miracle. System in- 
cludes: optimized C • 68000/680x0 assembler • 
68881 support • overlay linker • UNIX and Amiga 
libraries • examples. 

Aztec C68k/Am-d Developer $299 

The best of Manx, Amiga, and UNIX. System in- 
cludes: all of Aztec C68k/Am-p • the Unix utilities 
make, dif f, grep and vi. 

Aztec C68k/Am-c Commercial $499 

Aztec C68k/Am-d plus source for the libraries and 
one year of updates. 




Aztec C68k/Mac 

Macintosh • New Release 3.4 

quality, reliability, and solid professional 
features, Aztec C for the Macintosh is unbeatable. This 
new release includes features and functions not found 
in any other Macintosh C development system. 
Aztec C68k/Mac-p Professional . . .$199 

• MPW source level compatibility • TMON, MACSBUG, 
and MACNOSY support • powerful symbolic debug- 
ger • optimized C • 68000/680x0 assembler • 68881, 
IEEE, and SANE support • overlay linker • UNIX and 
Macintosh libraries • mouse editor • examples. 

Aztec C68k/Mac-d Developer $299 

The tpest of Manx, Macintosh, and UNIX. System in- 
cludes: all of Aztec C68k-p • ProFiler • the UNIX utilities 
make, diff, grep • vi editor. 

Aztec C68k/Mac-c Commercial. . . .$499 
Aztec C68k/Am-d plus source for the libraries and one 
year of updates. 

Aztec C65 

New ProDOS Release 

Aztec C65 is the only commercial quality C com- 
piler for the Apple II. Aztec C65 includes C compiler, 
6502/65C02 assembler, linker, library utility, UNIX li- 
braries, specialpurpose libraries, shell development 
environment, and more. An impressive system. 

Aztec C65-C Commercial $299 

• runs under ProDOS • code for ProDOS or DOS 3.3 

Aztec C65-d Developer $199 

• runs under DOS 3.3 • code for DOS 3.3 



Aztec ROM Systems 

6502/65C02 • 8080/Z80 • 8086/80x86 • 680x0 

An IBM or Macintosh is not only a less expensive 
way to develop ROM code, it's better. Targets include 
the6502/65C02, 8080/Z80, 8086/80x86, and 680x0. 

Aztec C has an excellent reputation for producing 
compact high performance code. Our systems for 
under $1,000 outperform systems priced at over 
$10,000. 

Initial Host Plus Target $750 

Additional Targets $500 

ROM Support Package $500 

Vax, Sun, PDP-11 ROM HOSTS 

Call for information on Vax, PDP-1 1 , Sun and other 
host environments. 

C Prime 

PC/MS-DOS • Macintosh 
Apple II •TRS-80* CP/M 

These C development systems are unbeatable for 
the price. They are earlier versions of Aztec C that 
originally sold for as much as $500. Each system 
includes C compiler, assembler, linker, librarian, 
UNIX routines, and more. Special discounts are 
available for use as course material. 

C Prime $75 

Aztec Cross Development Systems 

Most AztecC systems are available as crossdevel- 
opment systems. Hosts include: PC/MS-DOS, Mac- 
intosh, CP/M, Vax, PDP-11, Sun, and others. Call for 
information and pricing. 

How To Become An Aztec C User 

To become a user call 800-221-0440. From NJ or 
international locations call 201-542-2121. Telex: 
4995812 or FAX: 201-542-8386. C.O.D., VISA, 
MasterCard, American Express, wire (domestic 
and international), and terms are available. One 
and two day delivery available for all domestic and 
most international destinations. 

Aztec C is available directly from Manx and from 
technically oriented computer and software stores. 
Aztec Systems bought directly from Manx have a 30 
day satisfaction guarantee. 

Most systems are upgradable by paying the differ- 
ence in price plus $10. Site licenses, OEM, educa- 
tional, and multiple copy discounts are available. 




Circle 160 on Reader Service Card ■ Manx Software Systems 
1 Industrial Way, Eatontown, NJ 07724 



To order or for more information call today. 

1-800-221-0440 

In N J or international call (201) 542-2121 •TELEX: 4995812 

MS is a registered TM ol Microsoft. Inc. CP/M TMDHI. HAlO TM Media Cybernet ics. PANEL TM Roundhill Computer Systems. Ltd.. 
PHACT TM PHACT Assoc.. PRE-C. Plink-86. Plink-86 + . P-ForceTM Phoenix, db Vista TM Raima Corp. C-te/p. PC-linl, TM GimpelSoH- 
ware. C-iree TM Faircom. Inc . Windows lor C. Windows lor DATA TM Creative Solutions. Apple II. Macintosh TM Apple. Inc.. TRS-80 TM 
RadioShack. Amiga TM Commodore Int'l . Unix TM AT&T. Vax TM DEC. A;tec TM Manx Software Systems 



Circle 194 on Reader Service Card (Dealers: 195) 



NONSTOP MODEM 

The New Generation Choice 



BOOK REVIEWS 




Introducing MERGE— an innovative and revolutionary Hayes* 
compatible modem with a built-in advanced phone system 
MERGE is loaded with incredible features found nowhere else. Its 
self-contained memory ( up to 264K) and communication software 
allow automatic and unattended execution of voice and data 
communication at any time. MERGE's one-touch suitchable feature 
allows you to conduct voice and data communication without 
interruption, thereby eliminating the expensive inconvenience of 
"dial- hang- up- redis].'' 

MERGE costs only $399 for 40K memory and $449 for 
264K memory. Order now and receive a 20% discount during this 
introductory offer. To order or for more information, caJJ 
1-800-4- A- MERGE (In California call 1-714-848-0871). WHY BUY 
JUST A MODEM MERGE INSTEAD! 

"ILi\es is a registered trademark of Hayes Microcomputer Products. 



NEW GENERATION TECHNOLOGY 



THE INCREDIBLE 




• Word 
Processing 

• Database 

• Spreadsheet 

• Graphics 



INTEGRATED SOFTWARE 

Easy to use. Easy to learn. Fast. Powerful. All it takes is one 
screen to do everything you've always wanted to do, at 
one time. 

From PC Magazine: "A well-conceived, well-executed pro- 
gram. Finishes a winner!" 

NOW at the incredible introductory 
price of $49.95! (Regularly $99.95) 

NOT COPY PROTECTED 

Mail your check or money order to: -. 

Pecan Software Systems, Inc. T 
1410 39th Street \ 

Brooklyn, New York 11218 The UCSD Pascal Company 

InlKlBER 4 9r o ««,£*: 1-800-63-PECAN 

CompuServe ID: 76703.500 (Nys) ^QO-45-PECAN 

Please add $4.50 for shipping within the US. Foreign orders add 515.00 and make paymenl by bank draft payable 

in US dollars on a US bank. New York State residents add appropriate sales lax. 

UCSD Pascal is a trademark of the Regents in the University of California. 



1. How many stars are in the Milky Way galaxy? (About 400 
billion.) 

2. How many of these stars have planets? (Around 40 billion.) 

3. How many of these planets are suitable for life? (Estimating 
10 planets per star: 40 billion.) 

4. How many of the nice planets actually develop life? (For the 
sake of argument, 1 in 10: 4 billion.) 

5. How many of these develop intelligent life? (Let's say one in a 
hundred with life evolves intelligence: 40 million.) 

6. How many of these develop civilizations with technology ca- 
pable of interstellar communication? (If even one civilization in 
10 does this, there might be 4 million.) 

7. How long do these civilizations last? Here McDonough does 
some fancy footwork. (The Earth is 5 billion years old, and the 
age of the universe is about 1 5 billion years. Suppose a civiliza- 
tion is communicative for a thousandth of the age of its home 
world— 10 million years. That would mean that one-thousandth 
of the 4 million technological civilizations— some 4000 
worlds— could be out there right now.) This all boils down to the 
Drake Equation: (N=N* f p n e f, f, f c f L ). 

Level of Speculation 

But how accurate is this intellectually stimulating model? Every 
one of McDonough 's answers is qualified with "mights" or 
"supposes" or "estimates. " Once we get past the first question, 
the slide into speculation becomes steep pretty fast. But at least 
it's a try. 

Unlike Drake and the astronomers, the microbiologists argue 
from the little to the big. In a nutshell, their argument is that of 
all the millions of species that came into being on earth, only 
one (Homo sapiens) developed what could really be called intel- 
ligence. And of all the dozens and dozens of human cultures, 
only one (the rational, scientific subculture of Western man) de- 
veloped a technology able to send and receive interstellar com- 
munication. Furthermore, all this took place only in the last 150 
years. So, looking at the question from a totally biological point 
of view, the microbiologist makes a pretty good case for SETI' s 
stand not being viable. 

As a matter of fact, the biggest weakness in The Search for 
Extraterrestrial Intelligence is that McDonough devotes only 
one chapter to "Scientists Against SETI." Granted, this is an 
advocacy book written by an unabashed (but rational) enthusi- 
ast, but there are legitimate arguments against SETI (mathema- 
tician Frank Tipler's 1980 essay "Extraterrestrial Beings Do 
Not Exist" in particular), and they deserve more than the few 
pages McDonough offers up. 

New Ideas 

The final chapter of The Search for Extraterrestrial Intelli- 
gence, "The Future," is ostensibly about "what will happen if 
SETI is successful. " Here, McDonough tosses out a lot of spec- 
ulation and some tight ideas about culture shock— not from ex- 
traterrestrials but about what is happening on earth right now. 
For instance, due to satellite communications, people in Belize 
who never saw a baseball glove or bat have become Chicago 
Cubs fans. As McDonough says, "The citizens will never be the 
same; they have absorbed an alien culture." Some people be- 
moan the fact that primitive cultures are being contaminated by 
external influences, and some— mostly in the "primitive" cul- 
tures—think it' s just dandy . 

In the last analysis, the real value of this book is not that aliens 
may or may not be out there listening and broadcasting, but 
rather that such thinking and speculation generates new ideas. 
The door to possibility should never be latched. ■ 

Jack Kirwan (Department of Economics, University of Arizona, 
Tucson, AZ 85721) is assistant editor o/The Energy Journal. 



94 BYTE- OCTOBER 1987 Circle 210 on Reader Service Card 




Casio challenges you 
to find more power. At any price 



The amazing Casio FX-4000P pro 
grammable scientific calculator: In 
power; it's compa- 
rable to the most 
highly touted calcu- 
lators on the market 
today. 

It offers you 
160 total functions, including 83 scien- 
tific functions, such as hexadecimal/ 
decimal/binary/octal conversions, 
standard deviation and regression 
analysis. 

Making it easier to deal with 
long computations, its 12 character 



CASIO 


FX-4000P 


Functions 


160 


Display 


12 Scrolls to 79 


Memory 


550 Step 


Formula Replay 


up to 79 chr: 


Computer Math 


Hex-Bin-Octal 


Regression Analysis 


2 Variable 



alpha-numeric display scrolls to 79 
characters and its instant formula 
replay feature lets 
you review, edit and 
replay your formula 
at the touch of a 
button. It even has 
an answer key that 
stores your last computed value. 

And to make things still easier, 
the FX-4000P has a "perfect entry" 
system, which allows you to enter and 
display a formula exactly as written. 
Plus, it has a non-volatile 550 
step program memory with 10 program 



divisions. This allows 10 different pro- 
grams to be stored at once. 

And it includes up to 94 data 
memories, which are invaluable for 
statistical analysis. 

Finding all this power at your 
fingertips is remarkable enough, let 
alone at half the price of some com- 
petitors. If you can put your finger 
on a scientific calculator that gives 
you more power at any price, by all 
means buy it. 



Where miracles never cease 



Casio, Inc. Consumer Products Division: 15 Gardner Road, Fairfield, NJ 07006 New Jersey (201) 882-1493, Los Angeles (213) 803-3411 
Circle 44on Reader Service Card OCTOBER 1 987 • BYTE 



95 



1 



The most powerful 



Automation: 

• Phonebooks store over 20 settings for each of 108 entries. 

• Autopilots for each phone number can replay your logon sequence every time you dial. 

• Redials busy phone numbers. 

• Freeway Ad vanced's full-power script facility lets you run any command sequence even when you're 
not there. 

Control: 

• Freeway controls over 30 settings; Freeway Advanced controls over 50, including flow control, delays, 
LF filters, fold to uppercase, null line and tab expansions, and many more. 

Gory Details: 

• VT100, VT52, TTY, and Freeway terminal emulations. • LAPTOP TO DESKTOP LINKING CAPABILITIES. 

• ASCII, Kermit, Xmodem, Ymodem, Ymodem Batch, Compuserve-B, and Freeway file transfer protocols. 

• Configurable for most modems. Runs on all 100% IBM-compatible computers and the PS/2. 

• Script facility includes conditional branches, subroutines, string and numeric variables, and elapsed time as a variable. 

• DOS shell with access to all commands, including file and directory manipulation. 

• ANSI graphics • All these features are instantly accessible through fast menus and one-key shortcuts • Cleans windows. Cooks omelettes 







: mm tu.N 


tt'CJ-U' f«wUMo» 

ift'jr wt« 

fell ti« U f «*iu* 

hi, tiffmfm 


: (0 (Wl "dm 
' to Ml Ui \M 


Ffw Control 

M*} IcUttt* Unci 

swuf tkm tito 


! IVj f l<» du»tr*lt 

: fi, it. Up 




m ^»amia^^^^ 




EEW££> 



is the best commi 



The easiest to use 

Take Freeway's simple menus and clear 
displays. Add the arrow keys and the Escape 
and Enter keys. The result is powerful but 
straightforward communication — at your 
fingertips. 

©Phonebooks: Freeway lets you store the 
phone numbers (and other settings) for 
up to 100 computer systems. You just use 
the arrow keys to pick the number you want, 
hit Enter, and leave the dialing to us. 

©Autopilot: Computer communication is 
more than just placing a call. You have to 
log on to the other computer, and often 
type introductory commands. Freeway 
provides an "autopilot" to relieve you of this 
chore. You simply go through these 
preliminaries once, with the autopilot noting 
your every move. Then, when you next call, 
the autopilot will do the work for you. 

©Setting Up: Setting up Freeway is a piece 
of cake! The parameters you need — 
baud rate, parity, and even the number 
to call — are gathered in simple menus. To set 
them, you just zip through with arrows and 
Enter, and then save them in the Phonebook. 
Later, changing one or all of them is just as easy! 

BRK&TBK© 



®0©@ 



FWSEVAY-55 ^m^ '/■'■< 



Main Menu 



t 

Dial Icon phonebook 

Teach autopilot 

Manual dial 

Suitch to terninal 

Wait for a call 

Other CGfiiiands 



Advanced settings 
Kelp — 
Quit 



Nane 

Phone flunber 

Tern i iic 1 Type 
Baud Ifcte 
Data Ft r nat 
PftHtg 

Cail/Hcst Mode 



by Henry Tebeka, KOBTEK 



: KOBTEK Bfeoard 
: 1 (415) 327-4589 


: MSH/T160 

; 2488 

J 8 data *■ I stop bits 1 

' Ho parity 

: Call 



ID=BB:3E 



WKi cohi 



Connected: No 



®On-Line Help: Even though Freeway is 
very easy to use, we all need a hint now 
and then. Every line of every menu has 
on-line help at the touch of a key. 




Over 30,000 satisfied users 

of previous version (KX-COM) 

Crosstalk® Emulation: At the touch of a function key, you can switch from the menu 
interface to a command line interface. Crosstalk® users will feel right at home, and 
everyone can use whichever interface suits them best. 

Terminal Emulation and File Transfer: We haven't forgotten the basics. Freeway emulates 
ANSI VT-100, VT52, and TTY. It offers seven file transfer protocols, including the new 
ultra-fast, ultra-reliable Freeway protocol. Why a new protocol? Because it is better — it 
sets many parameters automatically, adapts packet sizes to line conditions, and, in short, 
gets files through the first time. 









FREEWAY vs 


. other communications software packages 












Menu 
Driven 


On-Line Help For 

Every Command 


One-time, 
EASY Setup 


Phonebooks/Automatic 
Dialing 


Login Learning 
(Autopilot] 


On-Line 
Page Editor 


Password Script 
Protection Language 


Baud 
Rates 


Crosstalk 
Emulation 


LIST 
PRICE 


FREEWAY 


YES 


YES 




YES 


YES 


YES 


YES 


NO 


NO 


75-115.2k 


NO 


$ 24.95 


FREEWAY Advanced 


YES 


YES 




YES 


YES 


YES 


YES 


YES 


YES 


75-115.2k 


YES 


$ 89.95 


Xtalk XVI 


NO 


NO 




NO 


NO 


NO 


NO 


NO 


YES 


110-115.2k 


WELL. . . 


$195.00 


Xtalk Mk.4 


YES 


NO 




NO 


YES 


YES 


YES 


YES 


YES 


300-1 15.2k 


WELL. . . 


$245.00 


Smartcom II 


NO 


NO 




YES 


LIMITED 


LIMITED 


NO 


NO 


NO 


110-9600 


NO 


$149.00 


MS Access 


NO 


NO 




NO 


LIMITED 


LIMITED 


YES 


YES 


YES 


50-9600 


NO 


$250.00 



mation software. 






It seems unbelievable to get such a complete communications software 
package for only $24.95. But it's true! With its many powerful features, 
Freeway handles all your communications applications with ease. It 
has full terminal emulation, full file transfer capabilities, baud rates up 
to 115200, and many other features, and it uses all the easy Freeway 
interfaces with pop-up menus. Freeway is a powerful tool, and it is 
only $24.95! (non-copy protected) 



$24.95 

ONLY! 

Introductory price 



FREEWAb Advanced 



Freeway Advanced has of course all the power and simplicity of 
Freeway with more features there when you need them: 

• Crosstalk emulation and a powerful script language jammed with 
features Crosstalk® doesn't have. A BBoard script is supplied free as 
an application (callers can change drives, directories, and upload and 
download files using any protocol). 

• More communication parameters; filters, flow control, delays. Pass- 
words protect phonebooks and unattended mode, (non-copy protected) 



$89.95 

ONLY! 

Introductory price 



System Requirements: IBM PC, XT, AT, or PS/2 or 100% compatible. 






Kortek BBoard (415) 327-4589 



60-Day Money-Back Guarantee 

Order now! Call toll-free 
1-800/327-0310 

Or, send a check or major credit card number, including $5 for 
postage and handling, C A residents add 7% sales tax 

Crosstalk® is a registered trademark of Digital Communication Associates Inc. 
Kortek Inc. has no affiliation with and no relationship with Digital Communication Associates Inc. 

Artag, Lincoln Graphics & JDLH 



IK 



KORTEK INC W v 

505 Hamilton Avenue 
Palo Alto, California 94301 
0(415)327-4555 




K I O 





T E K 



Circle 146 on Reader Service Card 



MICROPROCESSOR 
MASTERY! 

The Development System that 
Supports 150 Different Microprocessors. 



A complete solution 



Here, at last is the working environ- 
ment of the future for developing 
error-free and efficient microproces- 
sor code. Save time and money with 
UniLab ll's seamlessly integrated 
toolset: 

An 8/16-Bit Universal Emulator- 
With UniLab's full selection of symbolic, 
debug commands you can 
quickly display and change 
all registers, memory, and 
ports, plus set software 
and hardware breakpoints. 
An Advanced 
48-Channel 
Analyzer- 
Most other 



find Bugs Fast 



Searching for bugs by single-stepping 
through suspect code can take forever, 
how, with UniLab, just specify the 
bug symptom you are looking for as 
a trigger spec and let UniLab catch the 
bug for you as 



i On- Line Help 

menus, command your program 

Glossary, and 
Word List. 



runs in real time. 



Pop-up Modem 
Selection^ 
panel called 
by soft key. 



Get Running Fast 



Windows can be 

used to view source 

files, previous 

traces, and more. 



tfroft addr> <to *Adr> BINLOAD <f Uenaae) 
Lewis a binary f Ho from disk into emulation nenory. Pr 
for tke naae of the file if you sWt include it on the 
lis*. 

. 
^j& Starts loading a binary ft is into the fro* addi 
•**** loading at the to addr, or when end of file is 

The binary file should contain a prograii. Can 

to load the product of a cross compiler into s 

aeeory. 



w 



Symbol < 
translation 
or source code 
line display. 



IS OBJW 

1C 
IT 
* 22 STOUMTA 

25 TABCTJL 

26 STOR.WW 
raetilaj 



development 
systems are 
dead in the 
water if there 
is a hardware fault such 
as a simple bus short, how, 
you can use the power of 
UniLab to home in on both 
software and hardware 
problems quickly. 
An Input Stimulus Generator- 
You conveniently specify system 
inputs and observe the results. 
A Built-in EPROM Programmer- 
helps finish the job! 



Development Dreams Come True 

Use Unilab's advanced 
windows to set up 
your screen the 
way you want to... 
view multiple items 
of interest. Imagine 
being able to auto- 
matically compare a 
current trace with previous 
trace data to instantly 
determine differences. You 
can set breakpoints, single- 
step, then go back to the an- 
alyzer without missing a beat. 
If you make a change in your 
code, use UniLab's built-in line- 
by-line assembler to instantly patch 
the fix and test the results. Think of 
the time savings. 

98 BYTE • OCTOBER 1987 



MR DATA 

8014 218001 LB HL.WEH.TUl 
0017 012008 LB BC,28 
eeiA 110010 LD OE.TABG.TBL 
Win dbb UIR 
HB0 U pmJ 
1000 Ifi wlti 
001D EDB0 LOIR 



"M 210001 LD HL.1B0 
17 012000 LD BC.20 

ia 110010 ld DEaeea 



if 2iirrr ldhl.ffff 

22 3110 LDA,ie 

24 77 LD (HL).A 

i JP 80 



Af=flBl (sx-a-»«C) 0C=mT D!=06FF HL=19O0 IX=1234 IV=5670 O»=10F1 FC=«14 4 
mwm 0014 210001 LDHL.HD1.TBL (next stop) 

[JE arfJJ (trace restusa) EQ ^op) n TN (fro* step n) T (froa n=lG ) : 



\ 



screen displays UniLab trace 

scroll off into . 

> history buffer- filtering 



context >h e story on UniLab II and how it can 



eliminates extraneous 



can be viewed 
later. 

information and shows 
you only the program steps of interest. 



sensitive f , ,. . c , , 

e ,4 revolutionize your software design 



prompt line. I 



Setup for any 8- or 
16- bit processor 
in seconds! 

\ Thanks to our innova- 
tive emulation 
approach, moving 
between processor 
types requires only 
a new emulation 
module and soft- 
ware change. You 
save both money 
and time: Our 
inexpensive 
Personality Paks™ (only 
about $500) include all the items 
you need for fast hook-up. Orion Micro- 
Targetsr functioning target circuits for 
popular MPUs, let you test your software 
before your own hardware is ready. 




You probably won't use your develop- 
ment system every day. You do need 
a system that's easy to learn, and easy 
to come back to. That's UniLab. It lets 
you use commands or menus-or a 
mixture of both. The same commands 
work for all MPUs. Useful help screens, 
in on-line manual & glossary, instant 
pop-up mode panels, a quick 
command and parameter 
reference, are at the ready. 



Affordable, Expandable 

At less than $5,000 UniLab 
costs less than 
our less-able 
competitors. 
You can add our 
new Program 
Performance 
Analysis option 
to help you 
optimize your software. If 
you don't need UniLab's 
power, other models are 
available from $2,995. Get 



Disassembly of 
*code in memory 
can be compared 
withtrace in 
adjacent window. 

Symbolic 
breakpoint 
register 
display. 






efficiency, as it has for thousands. 
Universities, ask about our Education 
Outreach Discount Program. 

Call Toll Free 1-800 245-8500. 
In California call (415) 361-8883. 




When you own or rent a UniLab II, 
you qet access to Orion's team of 
Applications Engineers. 



, =*= 702 Marshall St. 
Redwood City, CA 



INSTRUMENTS, INC. TELEX 530942 

Circle 200 on Reader Service Card 



EVTE 



Features 



The Tandy Anniversary Product 

Explosion 100 

by Rich Malloy, G. Michael Vose, 
and George A. Stewart 

The OS/2 Applications Family 109 

by Ray Duncan 

Product Preview: 

A Spiritual Heir to the Macintosh 121 

by Ezra Shapiro 

Product Preview: 

The Archimedes A310 125 

by Dick Pountain 

Ciarcia's Circuit Cellar: 

Build the Circuit Cellar AT Computer 

Part 2: Schematic 135 

by Steve Ciarcia 

Special BIX supplement: 

In "Apple II Memory Management" 
(found in the octsup conference on BIX), 
Howard Huang explains how to break the 
64K-byte memory barrier on your Apple II 
programs, and presents Ultra Copy, a 
disk-duplicator program that employs the 
added RAM. For information on joining 
BIX, see page 267. 





■ 

■ 




: 






. 





OCTOBER 1987 -BYTE 99 



Rich Malloy, G. Michael Vose, and George A. Stewart 



The Tandy Anniversary 
Product Explosion 

Four new computers from the maker of the TRS-80 Model I 




en years is a very long 
time in the microcom- 
puter business. Having 
passed our own tenth an- 
niversary over two years 
ago, we can proudly assert that this event 
is a notable accomplishment. Only a few 
microcomputer-related manufacturers 
have been in business that long, and fewer 
still have survived the myriad changes 
that have rocked the industry during that 
time. What better way to celebrate such a 
milestone than by introducing a complete 
new line of products? 

Tandy did exactly that in its tenth anni- 
versary celebration in August. The 



Texas-based company came out with four 
new computers and a laser printer. More 
importantly, the company says it will 
continue to make most of its previous 
products available. All told, Tandy might 
now be offering the most extensive line of 
computer products in the world (see the 
text box entitled 'Tandy's Lineup" on 
the opposite page) . 

The four new computers are the Tandy 
4000, a low-priced 80386-based com- 
puter; the Tandy 1400 LT, an IBM PC 
XT-compatible laptop portable; the 
Tandy 1000 TX, a low-priced 80286 sys- 
tem; and the Tandy 1000 HX, a new low- 
end system for home and schools. The 



Photo 1: The Tandy 4000, an 80386-based machine. 




company also introduced the LP-1000, 
its first laser printer. 

The information for this article was 
gathered this past summer; we have 
tested early versions of each machine. If 
any details change by the time this article 
runs, we will update you as soon as 
possible. 

The Tandy 4000 

Practically every company that produces 
MS-DOS computers seems to have come 
out with a computer based on Intel's 
80386 microprocessor, and Tandy is no 
exception. The new Tandy 4000 (see 
photo 1) does not seem to scale any tech- 
nological peaks, but, like the earlier 
Tandy 3000, it appears to be a good solid 
office workhorse. Perhaps the most sig- 
nificant feature of the 4000 is its price: 
$2599 (without a monitor or hard disk 
drive). This is less than many IBM PC 
AT-compatible systems that perform 
only a half to a third as fast. 

It is also interesting to note that in less 
than a year, the price of 80386 systems 
has dropped by a third: from $6499 for 
the Compaq Deskpro 386 last September 
to the new Tandy 4000 ($4299 with moni- 
tor and 40-megabyte hard disk drive). 

External 

The Tandy 4000 comes in practically the 
same box as the older 3000. It measures 
19 by 18 by 6V2 inches. Unlike the 3000, 
however, it features a keylock on the front 
panel, and on the right side of the front 
panel there is room for three half -height 
disk drives instead of just two. Like the 
IBM PS/2 Model 80, the 4000 includes in 

Rich Malloy and G. Michael Vose are 
BYTE senior technical editors, and 
George A. Stewart is a technical editor. 
They can be reached at One Phoenix Mill 
Lane, Peterborough, NH 03458. 



100 BYTE- OCTOBER 1987 



its standard configuration a 1.44-mega- 
byte 3 ] /2-inch floppy disk drive. Tandy 
happily points out that other types of disk 
drives— such as a 5^ -inch floppy— are 
available as options. The keyboard de- 
parts from the XT style used by the 3000 
and looks very similar to the latest PC AT 
keyboard, complete with 12 function 
keys arranged horizontally, and LED 
indicators. 

Internals 

Like most 80386-based systems, the 
model 4000 uses a 16-megahertz 80386 
processor. Tandy has employed an 80386 
chip set from Chips and Technologies, 
and makes use of eight custom ASIC (ap- 
plication-specific integrated circuit) 
chips. A socket exists for an 8-MHz 
80287 math coprocessor, with 10-MHz 
80287 support slated for "the near fu- 
ture." Also slated for the future: Tandy 
will offer a new version of the 4000 that 
will support the Intel 80387 coprocessor. 

As for memory, the 4000 can currently 
accommodate up to 4 megabytes. Half of 
this will reside on the motherboard, and 
the other half on a proprietary 32-bit- 
wide memory card. At some point in the 
future, when 1 -megabit RAM chips be- 
come more available, the 4000' s memory 
can be boosted to 16 megabytes. 

The 4000's memory is stored on 
SIMMs (single in-line memory mod- 
ules). Each SIMM holds nine 256K-bit 
chips for a total of256K bytes of memory 
plus parity on each SIMM. The system 
uses fairly fast 100-nanosecond memory 
chips. The motherboard has eight SIMM 
sockets. When you buy the machine, four 
of these sockets are already filled, giving 
a base configuration of 1 megabyte of 
memory. To bring the memory up to 2 
megabytes, you simply insert four more 
256K-byte SIMMs, at a cost of $599. 
You can add another 2 megabytes using 
the memory-expansion board. When 1- 
megabit chips— and thus 1 -megabyte 
SIMMs— become available, you can re- 
place the eight SIMMs on the mother- 
board with eight 1 -megabyte SIMMs, to 
get 8 megabytes on the motherboard. 

Memory can then be further expanded 
by performing this same operation on the 
memory-expansion board, increasing the 
total system capacity to 16 megabytes. 

The amount of memory present has an 
effect on the system's speed. The mem- 
ory controller in the Tandy 4000 uses a 



page-interleaving scheme when two or 
four additional SIMMs are installed. The 
page-interleaved design allows overlap- 
ping of row and column address strobes. 
This overlap permits access to a memory 
location by changing only the column ad- 
dress strobe. This operation will be suc- 
cessful 50 percent of the time. The other 
50 percent requires both a row and a col- 
umn address strobe. 

A Tandy 4000 with 2 megabytes of 
RAM is organized into 1024 pages, each 



containing 2K bytes with the same row 
address. The 2K-byte pages are arranged 
into two banks, with the odd-numbered 
pages in one bank and the even pages in 
the other. Two conditions allow zero- 
wait-state operation using this page-inter- 
leaved scheme: a subsequent memory ac- 
cess in the current 2K-byte page or a 
subsequent access in the other bank. 

The page-interleaving memory con- 
troller results in a performance improve- 

continued 





Tandy's Lineup 


A lthough Tandy is sometimes over- sories of any manufacturer in the U.S., 


ii looked as a 


major computer com- and perhaps in 


the world. Here is a list 


pany , the Texas-based retailer offers the of its current offerings, including the re- 


widest selection of computers and acces- cently announced products : 


Computer 


Processor 


Operating System 


Price 


Tandy 6000 


68000 


Xenix multiuser 


$3499 


Tandy 4000 


80386 


IBM AT compatible 


$2599 


Tandy 3000 


80286 


IBM AT compatible 


$2199 


Tandy 3000 HL 


80286 


IBM AT compatible 


$1699 


Tandy 2000 


80186 


MS-DOS 


$1599 


Tandy 1400 LT 


NECV-20 


IBM XT-compatible laptop 


$1599 


Tandy 1 000 TX 


80286 


IBM AT compatible 


$1199 


Model 4D 


Z-80A 


CP/M.TRSDOS 


$1199 


Tandy 1 000 SX 


8088 


IBM XT compatible 


$ 999 


Tandy 1000 HX 


8088 


IBM XT compatible 


$ 699 


Tandy 1000 EX 


8088 


IBM XT compatible 


$ 599 


Tandy 200 


80C85 


Laptop 


$ 799 


Tandy 1 02 


80C85 


Laptop 


$ 499 


Color Computer 3 


68B09E 


OS-9 


$ 219 


Color Computer 2 


6809E 


OS-9 


$ 99 


Printer 


Type 


Main feature 


Price 


LP-1000 


Laser 


300 dpi 


$2199 


DMP2200 


Dot-matrix 


380 cps 


$1295 


DMP2110 


Dot-matrix 


24-wire printhead 


$1295 


DWP 520 


Daisy-wheel 


43 cps 


$ 995 


DMP430 


Dot-matrix 


18-wire printhead 


$ 699 


DMP130 


Dot-matrix 


100 cps 


$ 699 


DWP 230 


Daisy-wheel 


20 cps 


$ 399 


DMP105 


Dot-matrix 


57 cps 


$ 199 


Tandy also offers a 


line of pocket computers, modems, and monitors, and even a plotter. 



OCTOBER 1987 • B Y T E 101 



TANDY PRODUCTS 



ment, although in our tests it was barely 
noticeable. 

In addition to the proprietary 32-bit 
memory-expansion slot, the system has 6 
IBM PC AT-style slots, and two PC XT 
slots. On the back panel of the system is a 
serial port and a parallel printer port. 

Performance 

Using our simple Multiplan recalculation 
test, we found that the 4000 was about 6. 9 
times faster than an IBM PC (1.53 sec- 
onds on the 4000, 10.5 seconds on the 
PC) . In our other benchmark tests aimed 
specifically at the 80386 processor, the 
4000 seemed to be just slightly slower 
than the Compaq Deskpro 386, the IBM 
PS/2 Model 80, and the PC's Limited 
386. With 2941 Dhrystones per second, 
the difference was in the range of approx- 
imately 12 percent to 14 percent (the 
Compaq Deskpro 386 delivers 3748 
Dhrystones per second, and the PCs 
Limited 386 yields 3846). The Sieve test 
showed the Tandy 4000 taking 6.07 sec- 
onds, the Compaq 5.99 seconds, and the 
PC's Limited 386 5.15 seconds. 

Software 

Like most other Tandy computers, the 
Phoenix BIOS-based Tandy 4000 comes 
with MS-DOS and BASIC included. The 
system also comes with three utilities: a 
caching utility (which now seems to be 
standard on high-performance com- 
puters), an expanded-memory manager 
that allows certain applications to make 
use of the memory above 640K, and a 
monitor program that Tandy says will 
allow you to have up to nine different ses- 
sions available at the same time. The user 
can easily switch from one session to an- 



other, but the sessions do not execute 
simultaneously. 

Flaws 

One thing we did not like about the 4000 
was a report that it would pass the FCC 
Class A certification, but not the stricter 
Class B test. This means that the device 
causes too much electromagnetic radia- 
tion for use in most homes. Such radia- 
tion is common for 80386-based systems 
because of their high clock speeds. But, 
all in all, the 4000 looks like a solid office 
machine for a very reasonable price. If it 
performs as well as the 3000 has, then it 
is a very good buy, indeed. 

The Tandy 1400 LT 

Tandy practically invented the laptop 
computer, but until recently it has lacked 
an IBM PC compatible. The Tandy 1400 
LT (see photo 2) fills that gap, and, 
though it has no revolutionary features, it 
does have all the required ones— at a very 
competitive price. The only disadvantage 
might be that, in view of its weight, it 
might have too many features. 

Like the Tandy 100, the new 1400 LT 
is manufactured in Japan. Because it uses 
an 8-/ 16-bit processor, it should not, 
however, be affected by this year's tariff 
restrictions. Also, because Tandy deals 
with its manufacturers only in terms of 
dollars, the computer's low price- 
Si 599— should remain constant despite 
fluctuations in the yen. At least one other 
company has had to raise the price of its 
portable because of this. 

Appearance 

Externally, the new machine looks a 
great deal like IBM's PC Convertible, in- 




Photo 2: The Tandy 1400 LT laptop, a portable computer weighing 13Vi pounds. 



eluding the rather significant front-to- 
back length. But while IBM placed sever- 
al important features on option modules, 
the Tandy machine includes almost all 
the features of a desktop system as stan- 
dard. The 1400 LT measures 14.5 by 
12.4 by 3.5 inches, about the same size as 
the Convertible. It weighs 13 ] /2 pounds, a 
little heavy for laptops. The machine uses 
the familiar "clamshell" design, with a 
display that folds over the keyboard for 
travel. Immediately behind the keyboard 
are two 3Vi -inch 720K-byte floppy disk 
drives. On the right side of the machine 
are an on/off switch and a contrast con- 
trol for the screen. The back panel con- 
tains a parallel port, both an RGB and a 
composite monitor connector, a 9-pin 
serial port, an external disk drive connec- 
tor, and an external keyboard connector. 
Also on the back is an external bus con- 
nector and a small slot for an internal 
modem. Under the keyboard is a handle 
that slides forward for easy carrying. 

Display 

The 1400 LT has a fairly high-contrast, 
dark-blue-on-light-blue liquid-crystal 
display that makes use of supertwisted 
liquid crystals and electroluminescent 
backlighting. It looks very much like the 
Zenith Z-181 display, but it has a flatter 
aspect ratio. Like most computer LCD 
screens, the 1400 LT's screen can display 
80 by 25 lines and has a graphics resolu- 
tion of 640 by 200 pixels. However, un- 
like some other LCDs, the 1400 LT's 
screen can also display eight shades of 
gray (blue, actually). These multiple 
levels of shading are achieved by refresh- 
ing the pixels at varying intervals of time. 
As a result, pixels displaying the lightest 
shades, which are refreshed only a small 
number of times a second, appear to 
flicker. On the machine we saw, which 
was a preproduction model, this flicker 
was quite noticeable for one or two of the 
lighter shades; since the background was 
a light shade, the entire screen flickered. 
But the company says that on production 
machines, it should be less noticeable. 

To save battery power, the backlight- 
ing can be turned off. Surprisingly, even 
with this feature turned off, the screen 
still has an impressive amount of con- 
trast. The display can be adjusted to any 
angle and can even be placed down flat 
on its back against the machine if you 
want to use a CRT monitor instead. The 
display is also removable, although 
Tandy did not imply any future upgrade 
capability. 

Keyboard 

The 1400 LT has a fairly well-populated 
keyboard for its size. Its 76 keys include 
12 function keys arranged horizontally 



102 BYTE- OCTOBER 1987 



TANDY PRODUCTS 



along the top, and an inverted-T cursor 
key arrangement in the bottom right. The 
keyboard is more like the Tandy 1000's 
than the IBM AT's. One possible prob- 
lem is that, because of the front-to-back 
length of the computer, it may be uncom- 
fortable fox some people to use on their 
laps, as the keyboard may be uncomfort- 
ably close to the abdomen. This is a prob- 
lem on many of the new so-called 
laptops. 

The only things that seem to be missing 
from the insides of the 1400 LT are an 
80286 processor and a complete AT-style 
expansion bus. Everything else is already 
there: an NEC V-20 (compatible with the 
Intel 8088) running at 7.14/4.77 MHz, 
768K bytes of memory (128K of which is 
used as a RAM disk), two S^-inch 
720K-byte floppy disks, a socket for an 
8087 math coprocessor, a CGA, and a 
real-time clock/calendar, which the com- 
pany says is missing from most other 
laptops. 

A nice feature of the RAM disk is that 
its contents remain intact even if the user 
performs a "soft reset" of the system. 
Tandy claims that the NEC V-20 is 10 
percent to 1 5 percent faster than a n equiv- 
alent 8088. We did a test using Micro- 
soft's Multiplan to verify this. The test, a 



simple recalculation, ran about 62 per- 
cent faster on the 1400 LT's fast-speed 
mode (7.14 MHz) than on an IBM PC 
(4.77 MHz). We had expected only a 50 
percent speedup due to the difference in 
clock speeds. 

The 1400 LT uses a removable nickel- 
cadmium battery pack that is about the 
size and weight of eight C batteries. This 
battery pack powers the machine for 
about 4 hours, depending on disk usage. 
It can be recharged overnight, or with an 
AC adapter, while the 1400 LT is being 
used. A complete recharge takes 16 
hours. For those situations requiring 
longer operation, a second battery pack 
($79) can replace a worn-down unit. The 
AC power supply weighs about a pound. 

Tandy claims that the 1400 LT is the 
closest you can get to an open architec- 
ture on a laptop. For those who would 
like to add a special device to the com- 
puter, an expansion port on the back of 
the machine accesses all the expansion 
bus lines. Though Tandy is not currently 
offering an expansion box for the 1400 
LT, the company says it will provide 
documentation to anyone who wants to 
build such a device. 

Those who want to attach an alternate 
graphics board will be relieved to hear 



that the company says the internal graph- 
ics adapter can be disabled. Besides an 
8087, the only internal enhancement of- 
fered by Tandy is an internal 300-/1200- 
bit-per-second Hayes-compatible modem. 
This modem sells for the very competi- 
tive price of $200. 

Interfaces 

When it comes to interfacing capabilities, 
the new Tandy laptop appears to concede 
nothing to the low-end desktop machines. 
Of course, it has a serial and a parallel 
port. It also has both an RGB connector 
and a composite monitor connector, for 
those who prefer to see their work in 
color. There is even a keyboard connec- 
tor, by which you can attach any of 
Tandy's full-size keyboards. 

The big question for any 3y2-inch- 
drive machine is: How do you connect a 
5V4-inch drive to it? Tandy uses a 
straightforward approach to this by sup- 
plying an external disk drive connector 
on the back of the machine. The problem 
is that Tandy is not currently offering 
such a drive. Instead, the company sug- 
gests that users install 3Vfc-inch drives on 
their desktop Tandy machines and do the 
conversion there, or use Traveling Soft- 

continued 



i 



Hf.V,',U!f4^rt:l»l»Iif,V,tJ^:l»I>J.]', l .V.]IM^ 



$995 C -S MS-DOS 




UniWare™ C Cross Compilers 

generate fully optimized code for 
your ROMable applications. 

• UniWare C- 68000 is for the 
68000, 68008, 68010, 68012, 
68020 and 68881. 

• UniWare C-Z80 is for the Zilog 
Z80 and the Hitachi HD-64180. 



YOU WON'T FIND A MORE 
COMPLETE PACKAGE - 

Each compiler comes with a re- 
locating macro assembler, type- 
checking linker, and all the utilities 
you need to put your program into 
ROM. 



CALL TODAY 

(312)971-8170 

SOFTWARE DEVELOPMENT SYSTEMS, INC. 

3110 Woodcreek Drive 
Downers Grove, IL 60515 

The above prices include one compiler. 
Prices subject to change without notice. 



Mainframe Powered CROSS ASSEMBLERS 



$ 



.$ 



Complete under 

MS-DOS 



j( 



$1495 



Complete 
under 



UNIX 



UniWare™ Cross Assemblers. 

Fully relocatable, of course, yet they 
can generate listings with absolute 
addresses and fully linked object 
code. Each assembler comes com- 
plete with a linker, librarian, and 
utilities. There's plenty of macro 
power. And all tools have unlimited 
symbol capacity. 



Intel 


8086,80186,80286, 
8051,8048,8080/5,8041 


Motorola 


68000, 68010, 68020, 68HC11 , 
6809,6805,6801,6800 


Hitachi 


HD641 80, 6305,6301 


Zilog 


Z80, Z8 


Others 


65020, 1 802, TMS7000, 3870/F8 



CALL TODAY 

(312)971-8170 

SOFTWARE DEVELOPMENT SYSTEMS, INC. 

3110 Woodcreek Drive 
Downers Grove, IL 60515 

The above prices include one assembler. 
Prices subject to change without notice. 



Circle 254 on Reader Service Cai-d 



OCTOBER 1987 -BYTE 103 



TANDY PRODUCTS 



ware's LapLink to transfer files from the 
5 ^-inch desktop to the 3 16 -inch laptop. 

Although the company does not offer a 
5V£-inch drive, it did demonstrate how 
easily you could add one. Apparently, all 
you have to do is attach a power supply 
and the appropriate connector to the ex- 
ternal 5 !4-inch drive that Tandy sells for 
its Model 1000 EX. Tandy suggests that a 
third-party company might offer one. 
Note that if you were able to add an exter- 
nal drive, there is a switch to allow that 
drive to be the default boot-up drive. 

Software 

Unlike the Tandy Model 1000, the 1400 
LT does not come standard with Tandy's 
DeskMate software package. The com- 
pany said, however, that such bundling 
might occur in the future. Both MS-DOS 
and GWBASIC are included in the sys- 
tem's base price. The 1400 LT also has 
an interesting setup facility that allows 
you to set various parameters such as pro- 
cessor speed and the default video device. 

Perhaps the only thing we don't like 
about the 1400 LT is its weight. It is about 
1 to 3 pounds heavier than similar ma- 
chines, such as the Zenith Z-181, the 
NEC MultiSpeed, and the Toshiba 
T1100 Plus. Tandy claims that one ad- 
vantage of the size is that Tandy can easi- 
ly add a hard disk without a major rede- 
sign. The company, however, again made 
it clear that it was not offering such an op- 
tion at this time. 

The Tandy 1400 LT seems to have all 
the essentials and appears to outclass all 
its competitors in terms of features. We 



applaud Tandy for not skimping on any of 
the necessities for the sake of a low price. 

Tandy 1000 TX 

Performance is the watchword of Tandy ' s 
new 1000 TX (see photo 3). The $1199 
machine is based on an 80286 micropro- 
cessor running at 8 MHz (switchable to 4 
MHz) with one wait state. A preliminary 
"working sample" of the computer 
equipped with an optional 80287 float- 
ing-point coprocessor ran BYTE's 
benchmarks at roughly the same speed as 
an IBM PC AT (see table 1). 

The 1000 TX does not provide an AT 
bus architecture. As one Tandy engineer 
put it, the 1000 TX is "an 80286 in an 
IBM PC XT architecture." The most im- 
mediate implication is that all the expan- 
sion slots on the machine are for IBM PC 
XT-style expansion cards. The 1000 TX 
cannot accommodate cards designed spe- 
cifically for the AT bus. Another more 
long-range implication is that the ma- 
chine will not run OS/2. 

The machine comes with 640K bytes 
of 150-ns RAM and a 3^-inch, 720K- 
byte floppy disk drive. Beyond that, it 
closely resembles the 1000 SX. It has a 
separate keyboard and system unit. 

The system unit has space for a 5 l A - 
inch device, which could be any of the 
following: a 20- or 40-megabyte 5 l A -inch 
hard disk drive, or a 5 !4 -inch floppy disk 
drive, a second 3 ! /6-inch floppy disk 
drive, or a tape backup. A CGA, parallel 
and serial ports, two joystick adapters, 
three-voice sound, speaker, and head- 
phone jack with volume control are all 




Photo 3: The Tandy 1000 TX, an 80286-based version of the company 's top seller. 



standard. The motherboard has a socket 
for an 80287 floating-point coprocessor, 
which Tandy sells for $399.95. 

The system also includes Personal 
DeskMate 2 and MS-DOS 3.2 with 
GWBASIC. For a display, Tandy recom- 
mends its CM- 11 RGB-intensity (RGBI) 
monitor ($399.95), bringing the system 
cost to about $1600. 

Expansion 

The TX allows for memory expansion to 
768K bytes, of which 128K bytes are ded- 
icated video RAM. With this addition, 
Tandy claims video operations are about 
10 percent faster, and the user ends up 
with more usable RAM in the original 
640K bytes. This option costs $49.95. 

The 1000 TX has five expansion slots 
capable of accommodating IBM PC XT 
cards up to 10 inches long. It has no slots 
for AT-style cards. The technical reason 
is that the TX's I/O bus has only 8 data 
lines. AT-style cards use 16 separate data 
lines. 

The TX would not make a practical 
host machine for OS/2 because its mem- 
ory space is limited to 640K bytes of 
RAM . Additional RAM would have to be 
connected through the 8-bit data paths. 

Of course, Tandy didn't design the 
machine for the OS/2 market; the TX is 
supposed to be a high-performance IBM 
PC XT-compatible suitable for work- 
station use, home, office, education, and 
small business. (The workstation angle is 
based on the unit's low cost and the idea 
that workstations rely on file servers for 
storage rather than on local devices.) 

Performance 

We ran four computational benchmarks 
on a TX equipped with an 80287 float- 
ing-point coprocessor, and the results 
show that the machine is indeed a class 
above the PC and XT computers. We 
weren't able to test disk access, but a 
Tandy spokesperson said I/O times were 
likely to be in line with XT performance, 
despite the presence of the 80286. 

Tandy 1000 HX 

It takes more than a low price to make a 
home computer, and Tandy has recog- 
nized this in its new 1000 HX machine 
(see photo 4). The $699 machine comes 
with a number of significant user-friend- 
ly features: MS-DOS 2.11 in ROM; a 
menu alternative to the A> prompt, also in 
ROM; a nonvolatile storage device for 
storing the user's system configuration; 
and an enhanced, ROM-based version of 
the company's integrated software sys- 
tem, Personal DeskMate 2. 

Having MS-DOS in ROM means that it 
takes less than 3 seconds to power up. 
The arrangement also makes a one-disk 



104 BYTE- OCTOBER 1987 



TANDY PRODUCTS 



system more convenient to use: Upon 
ending a disk-based application, it isn't 
necessary to remove the application disk 
and insert a disk containing COM- 
MAND. COM, as happens when some 
applications are used in a one-drive sys- 
tem without MS-DOS in ROM. A one- 
drive HX system is also practical in terms 
of storage capacity, since the built-in 
drive is a 3 16 -inch 720K-byte device. The 
unit has space available for installation of 
another 3 '/2-inch drive ($169.95). 

Beyond these changes, the HX closely 
resembles the 1000 EX that Tandy intro- 
duced in August 1986: an integrated key- 
board and system unit with an 8088-2 
microprocessor running at 7.16 MHz or 
4.77 MHz, 256K bytes of 150-ns RAM 
expandable to 640K bytes, an on-board 
CGA, a parallel printer interface, a con- 
nector for an external 5 l A -inch disk 
drive, and an expansion slot for one of 
Tandy's "Plus" circuit boards. There is 
no socket for an 8087 floating-point co- 
processor. The rear-panel disk and 
printer ports are printed-circuit card 
edges rather than the DB plugs found on 
most personal computers. 

The MS-DOS utilities, Personal Desk- 
Mate 2 modules, and GWBASIC are in- 
cluded on a 3/2-inch floppy disk. A 
monitor is not included; Tandy recom- 
mends its CM-5 RGBI monitor, which 
sells for $299.95 and makes a total sys- 
tem price of just under $1000. 

MS-DOS in ROM 

According to John Patterson, senior vice 
president of Tandy Computers, the 
choice of which MS-DOS version to put 
in ROM was obvious. Software reliability 
is the primary concern, and version 2.11 
has been in use for several years without 
having any major problems discovered. 

Size is another consideration; MS- 
DOS versions 3.0 and higher require 
about 1 8K bytes more RAM than 2. 1 1 re- 
quires. (MS-DOS loads and executes in 
RAM, regardless of whether it is stored 
on disk or in ROM.) 

The HX actually carries 128K bytes of 
ROM; half of that is devoted to the Phoe- 
nix IBM compatibility BIOS version 2.51 
and MS-DOS 2.11 invisible files 
MSDOS.SYS, IO. SYS, and COM- 
MAND.COM. The other 64K bytes of 
ROM contain the HX menu program and 
the core routines for Personal DeskMate 
2. Patterson said Tandy was considering 
offering some support to software devel- 
opers who want to use the PDM2 ROM 
routines to speed and simplify the devel- 
opment of applications for the HX. 

Nonvolatile Memory 

Even though the HX comes with MS- 
DOS 2.11, you can use other versions by 



booting the computer from the 3 Vi-'mch 
drive or even from an optional external 
drive. A 16- by 16-bit EEPROM device 
stores the primary boot device and other 
information commonly specified in the 
CONFIG.SYS and AUTOEXEC.BAT 
files, including the microprocessor clock 
speed selection, the graphics mode, and 
whether to run the menu program auto- 
matically or go to the command level on 
boot-up. 

To change the EEPROM settings, you 
run a setup program included on the MS- 
DOS utility disk. 

The Menu Program 

The ROM-based menu program provides 
a way of executing application programs 
without having to type DIR to see the di- 
rectory and then type the name of the pro- 
gram file you want. Instead, a window 
shows all the . EXE and . COM files in drive 
A: (the internal drive). You select a pro- 
gram by moving the cursor to it and 
pressing Enter. 

Function keys in the menu program 
allow you to activate Personal DeskMate 
2, change the date and time, see the cur- 
rent directory in drive A:, and reboot the 
system from drive A:. Pressing Escape 
returns you to the MS-DOS A> prompt. 

In short,- the menu program provides 
you with quick access to the most com- 
monly used operations without requiring 
you to type in any commands. 

One minor deficiency of the menu pro- 
gram is that it does not support subdirec- 
tories; the directory window shows only 
those program files in the currently se- 



lected subdirectory or the root directory. 
To change directories, you must revert to 
the standard MS-DOS command level. 

Personal DeskMate 2 

Personal DeskMate is a graphics-oriented 
environment for running productivity 
and other software, including a calcula- 
tor, notepad, calendar, phone directory, 
text, worksheet, and telecomm. Music is 
a new addition that lets you compose 
three-voice music in standard musical no- 
tation. Paint now offers 16 colors at once 
with 320- by 200-pixel resolution. 

Personal DeskMate 2 includes support 
for an optional joystick or mouse. The 
HX has two joystick ports built in, and 
Tandy sells a $29.95 joystick that per- 
forms the pointing function reasonably 
well when it is set to the " free-floating" 
mode. 

Expansion 

The HX has only one expansion slot. To 
add more than one card, you must plug 
the optional memory-expansion card 
($129.95) into the on-board slot. The ex- 
pansion card brings the total system 
memory up to 512K bytes and gives two 
additional slots for other Plus cards. The 
expansion card also includes a DMA (di- 
rect memory access) chip for faster block 
transfers between memory and external 
devices. 

A serial interface and a clock/calendar 
circuit are omitted from the basic ma- 
chine. Tandy has a neat solution to the 
latter: an IC-size assembly that plugs into 

continued 




Photo 4: The Tandy 1000 HX, an 8088-based machine with MS-DOS in ROM. 



OCTOBER 1987 -BYTE 105 



TANDY PRODUCTS 



an IC socket on the motherboard. The 
$39.95 option, called a Smart Watch, 
provides a clock and calendar function 
with a 10-year lithium battery. 

For the serial port, Tandy offers a 
serial Plus card. The company is also 
working on obtaining a hard-disk con- 
troller Plus card through a third-party 
vendor (estimated price: $250), which 
would enable users to connect Tandy's 
20-megabyte hard disk ($699). 



Table 1: Here are the results of 
our benchmark tests , with IBM PC 
AT results shown for comparison. 



1000 TX 



PC AT 



Dhrystone 
Savage 
Sieve 
Fibonacci 



1456 
38.3 
26.8 
131.0 



1590 
37.3 
24.6 
126.2 



Magic Ingredient 

If convenience is the magic ingredient 
that makes a home computer worthy of 
the name, Tandy may have a winner in 
the 1000 HX. On the other hand, some 
important features have been left out of 
this package— 640K bytes of RAM as a 
standard complement, more expansion 
slots, a built-in modem, and the capacity 
to use the 8087 floating-point co- 
processor. 

Tandy's marketing people have judged 
these features to be nonessential to the 
HX's target market: home users, first- 
time personal computer users, and ele- 
mentary, high-school, and collegiate 
classroom users. 

The LP-1000 Laser Printer 

Although Tandy has manufactured a 
large number of printers in the past, the 
Tandy LP-1000 (see photo 5) is the com- 
pany's first laser printer. The printer 
does not break any new ground in terms 
of technology, but, at $2 199 it does have 




Photo 5: The LP-1000 laser printer > a 6-page-per-minute, 300-dot-per-inch 
Ricoh engine printer. 





^93 






aajE 


qh 


1 


■=! 


H *^*' 


*H^m^Hi 


B!^«o^fl| ' 


I h 


| SHIFT ] 

















Photo 6: The front panel of the LP-1000 laser printer. 



a competitive price, especially consider- 
ing how much memory is included with 
the printer. 

Like several other lasers that have 
come on the market this year, the Tandy 
printer is based on a Ricoh engine. It 
prints at a maximum rate of 6 pages per 
minute with a horizontal and vertical res- 
olution of 300 dots per inch. Unlike many 
other printers, however, the LP-1000 
comes standard with 1.5 megabytes of 
memory, enough to do full-page 300- by 
300-dpi graphics. 

The LP-1000 can accept letter-size or 
legal-size paper andhasan input tray that 
can hold 150 sheets. The printer cannot 
accept envelopes, but can print on full- 
page label sheets. The printer stacks the 
printed sheets face-down in the correct 
order in a bin on the top of the printer. 
The suggested duty cycle is 3000 sheets 
per month. 

The printer can emulate the HP Laser- 
Jet Plus, the IBM Proprinter, and the 
Tandy 2100 dot-matrix graphics printer. 
Like most laser printers, the LP-1000 has 
both a Centronics-style parallel interface 
and a video interface. 

The printer can support only four fonts 
at any one time. Two of these are standard 
resident fonts, and you can download the 
other two. The printer does not have a 
socket for additional fonts. Tandy also of- 
fers a font-editing software package, 
which also works with its DMP 2 1 10 dot- 
matrix printer, for $29.95. 

The printer has no DIP switches. You 
can see status information and enter all 
changes to the printer via an LED touch 
panel (see photo 6) on the front of the 
printer. You can print out the current sta- 
tus of the printer at any time. 

The LP-1000 is not compatible with 
PostScript or DDL or with any of the cur- 
rent controller boards that feed informa- 
tion through a laser printer's video inter- 
face. The company says, however, that 
there may be such a board available in the 
future, either from Tandy or a third-party 
manufacturer. 

Not Much Missing 

Tandy's current lineup of microcom- 
puters probably represents the widest 
range of computers of any manufacturer 
in the world. These computers range 
from a $99 home computer to a $3499 
multiuser Unix system. The company 
also has a sizable offering of printers, 
modems, and a smorgasbord of other 
accessories. 

Only two products seem to be missing 
from the current collection: a write-once 
optical disk drive, and a CD-ROM drive. 
But we would not be surprised if the com- 
pany were testing these devices even as 
these words are printed. ■ 



106 BYTE* OCTOBER 1987 



This $ 1595 frame grabber 

price won't surprise you, once 

you knowour history 










fSbsm 


' f 

• .'■ 


mff l^mSSt ] ■ 




<\£S ,TKJ',: , f>°W 




U MMm 


3* 

■ 


^m\\\\\\\\\\\\ 


111 


1 


: .^H ^Hr •• 






aSBF^- :-W 







rnr-m o 




1626: Chief Fred 

SoldManhattanfor$24 
worth of beads. 



1803: Fred "Napoleon" Bonaparte 

Sold the Louisiana territory for 
less than 3 cents an acre. 



1987: FredMolinari, President 

Sells the DT2853 frame grabber 

for $1595. 



Nobody gets something for nothing. But through- 
out history, anyone dealing with our family has come 
awfully close. 

Take, for instance, ournewDT2853 512x512x8-bit 
frame grabber that performs real-time image process- 
ing on the IBM PC AT. It has advanced features like 
built-in real-time math and logic operations; square 
pixel display (for perfect display without geometric 
distortions); and external trigger inputs (for machine 
vision inspection applications). And it's supported by 
a wealth of software. 

You get all that, and it's sold for the next-to-nothing 



price of $1595- well below the nearest competing board! 

Give us a call today. We don't offer prices like this 
very often, but when we do, they make history. 



Call (617) 481-3700 

To learn more, see us in 
Gold Book 1987, or call to 
receive our first-ever 1987 
3-Book Set, including 1987 
Catalog, Product Summary 
Price List, and Applications 
Handbook. 




Image 

Processing 

Board 


Computer 


Resolution 


Gray 
Levels 


RS-170, NTSC, 
RS-330, CCIR. 

PAL 
Compatible 


VCR 
Compatible 


External 
Trig. 
Inputs 


Square 
Pixels 


Number 
of Video 
Inputs 


Real-Time 
Frame 
Grab 


Input and 
Output 
LUT's 


Memory-Mapped 

Frame-Store 

Memoiy 


Real-Time 
Processing 


Software 
Support 


Price 


OT2853 
Frame 

Grabber 


IBM PC AT 


512x512 


256 


Yes 


Yes 


Yes 


Yes 


8* 


Yes 


Yes 


2 buffers 

512x512x8 each 

(512 Kbytes) 


Yes 


DT-IRIS 
DT/lmage-Pro 
PC SEMPER 


$1,595 



*Wth 0T28&9 Vi siie multiplexer board ($395). 



DATA TRANSLATION 



World Headquarters: Data Translation, Inc., 100 Locke Drive, Marlboro. MA 01752-1192, (617) 481-3700 Tlx 951646 

European Headquarters: Data Translation, Ltd., The Mulberry Business Park, Wokingham, Berkshire, RG11 2QJ. U.K. (0734) 793838, Tlx 851849862 

International Sales Off ices: Australia (2) 662-4255; Belgium (2) 735-2135; Canada (416) 625-1907; Chile (2) 25-3689; China (408) 727-8222, (8) 721-4017; Denmark (2) 274511; 

Finland (90) 372-144; France (1) 69280173, (1) 69077802; Greece 951-4944, (03) 152-7039, (1) 361-4300; Hong Kong (3) 7718585; India (22) 23-1040; Israel (3) 32-4298; Italy (2) 81-821; 

Japan (3) 502-5550, (3) 375-1551, (3) 355-1111; Korea 778-0721/5; Morocco (9) 30-4181; Netherlands (70) 99-6360; New Zealand (9) 504-759; Norway(02) 55 90 50; Peru (14) 31-8060; 

Portugal (1) 545313; Singapore 7797621; South Africa (12) 46-9221; Philippines 818-0103; Spain (1) 455-8112; Sweden (8) 761-7820; Switzerland (1) 723-1410; Taiwan (2) 709-1394; 

United Kingdom (0734) 793838; West Germany (89) 80-9020. 

IBM PCAT is a registered trademark of I B M Corp. Data Translation is a registered trademark of Data Translation, Inc. Image-Pro is a trademark of Media Cybernetics, Inc. 



Circle 80 on Reader Service Card 



OCTOBER 1987 • B Y T E 107 





Now create superb sounding 
music on your IBM® PC. 
Ad Lib™ makes it easy. 

Just when you thought you'd 
heard it all, along comes ^ 
Ad lib. 

And with it comes rich, 
room-filling music like 
you've never heard from a 
PC before. With rumbling 
bass, crystal clear highs, up- 
front mid-range. All of it composed 
and performed on the first complete PC 
music system for people like you — long 
on desire, a little short on experience. 

The heart of the system is the 
Ad Lib Music Synthesizer Card!" 
An electronic sound synthe- 4 
sizer based on the same digital 
technology found in professional 
keyboards and the finest music computers. 

Just plug it into your PC and get clean, 
powerful music through high fidelity head- 
phones, bookshelf speakers, even your 
home stereo. It'll handle up to eleven differ- 
ent instrument sounds playing at once, so 
it's perfect for anything from a solo to a / 
symphony. 

There's also Ad Lib Visual Composer,™ 
about the most instinctive composition 
software ever devised. Simply draw 
lines to indicate notes, using the on- 
screen piano keyboard as a guide. 
Change instruments, tempo and 
volume with a couple of keystrokes. 
Cut, copy and paste portions of your 
music in a snap. 

Included with the program is Composition 
Projects ™#1, a step-by-step guide to 
creating all kinds of music, including classi- 
cal, jazz, bossa nova, ragtime, and more. 
Just the thing for an ever-expanding 
repertoire. 

Visual Composer is worth $89.95 if 
purchased separately, but it's yours 
free when you buy the system. 

Then play back all of your crea- 
tions, as well as several pre- 
programmed selections, on 
the Juke Box™ playback soft- 4 
ware, also included with your system. 

Look for the Ad Lib Personal Computer 
Music System™ at selected computer and 
music stores, or order direct from Ad Lib 
with your check, Visa or MasterCard. 





^--;* 




The Ad Lib Personal Computer Music 
System. At last, you have what it takes to 
make great-sounding music. 

The Ad Lib Personal Computer Music 
System. Includes the Ad Lib Music Synthe- 
sizer Card, Juke Box playback software, free 
Visual Composer software with 50 pre-set 
instrument sounds and Composition 
Projects#1 . ; . .$245.00 

Enhance your system further with this 
additional Ad Lib software: 

Music Championship ™#1 — Basic Con- 
cepts. Learn to identify basic musical con- 
cepts, including tempo, mode, rhythm and 
key. Perfect for all ages. The first in a series 
of music training programs combining syn- 
thesized 
music with 
exciting 
computer 
game com- 
petition 

$39.95 



A*J*^ 



Instrument 

Maker™ 

software. 

Lets you 
create and 
save new 
instrument 

sounds for use with Visual Composer. Alter 
23 sound characteristics like attack, sustain 
\ and decay. Modeled after professional 

c synthesizer software .... .$49.95 

Look for more Ad Lib music software 
titles coming soon. 

Requires IBM PC, XT, AT or compatible, 256K 
RAM, DOS 2.0 or higher, 
CGA, EGA or monochrome 
graphics adaptor. 

To place your order, orto 
request your free 
demonstration recording, 
call us toll-free today. ' 



Circle 334 on Reader Service Card 



Ad Lib Inc. 
50 Staniford Street 
Suite 800 
Boston, MA 02114 

-800-^ 



Personal Computer 
Music System 



Ray Duncan 



The OS/2 
Applications Family 

A look at the variety of application types that OS/2 supports 



[Editor's note: This article was adapted 
from Advanced OS/2 by Ray Duncan, to 
be published in January 1988 by Micro- 
soft Press.] 

| S/2, Microsoft's long- 
J) awaited multitasking op- 
I erating system for the 
I 80286, is designed to 
1 serve as a platform for an 
entirely new generation of fast, highly in- 
teractive applications with a uniform 
graphic user interface. It is also engi- 
neered as a crucial bridge from the 1- 
megabyte real-mode environment to the 
1 -gigabyte virtual-memory protected- 
mode environment. 

To serve as this bridge, OS/2 can run 
programs with a wide spectrum of char- 
acteristics and capabilities: "old" MS- 
DOS applications; character-oriented, 
dual-mode Family Apps; character-ori- 
ented, protected-mode Kernel Apps; and 
Windows/Presentation Manager Apps. 

This broad support has led, in turn, to 
much unnecessary confusion among soft- 
ware publishers who are trying to design 
and position their next wave of products 
and among users who are trying to recon- 
cile their upcoming equipment purchases 
with their long-term software needs. 

In this article, I will compare the types 
of programs that OS/2 can run (see figure 
1), briefly touch upon the development 
tools that are available during the interim 
period until the official retail release of 
the operating system, and then look at a 
sample OS/2 program. [Editor's note: 
See "A Programmer's Introduction to 
OS/2 " by Ray Duncan in the September 
BYTE for an overview of OS/2 features 
and application program structure. ] 

"Old" MS-DOS Applications 

OS/2 has a special module, the DOS 3.X 
Compatibility Box, that allows the user to 



run one old MS-DOS application at a 
time in real mode alongside one or more 
new, protected-mode applications. The 
Compatibility Box is not a physical box at 
all; it is simply a special screen group that 
you can enable or disable with a directive 
in the system's CONFIG.SYS file. Pro- 
grams loaded into the Compatibility Box 
run on top of an MS-DOS emulator that 
traps MS-DOS and ROM BIOS function 
calls and converts them into calls to the 
appropriate OS/2 services and device 
drivers. It also provides a realistic-look- 
ing milieu for more hardware-dependent 
MS-DOS programs by supporting certain 
undocumented MS-DOS services and in- 
ternal flags, supplying a "clock tick" in- 
terrupt at the appropriate frequency, 
maintaining a ROM BIOS data area at 
segment 40 hexadecimal, and so forth. 

There are, of course, a few exception- 
ally ill-behaved MS-DOS programs that 
the Compatibility Box cannot handle. 
These include terminate-and-stay-resi- 
dent utilities, which steal hardware inter- 
rupt vectors already belonging to a pro- 
tected-mode device driver, reprogramthe 
system's 8259 programmable interrupt 
controller, and perform other similarly 
nefarious deeds. 

In any event, it is important to realize 
that MS-DOS applications gain nothing 
by being run under OS/2— in fact, they 
run slightly slower. 

The Compatibility Box is only present 
as a temporizing measure, to protect 
users' software and hardware investments 
until a healthy variety of protected-mode 
software becomes available. It is ironic 
that, although the 3.X box is one of the 
crowning technical achievements of 
OS/2— and one of the major factors in the 
delay in OS/2's release— it is destined to 
fade away altogether (at least from users' 
consciousness, though it might still be 
present as a historical curiosity, just as 



the CP/M emulator cards and programs 
for the IBM PC had a brief heyday after 
the introduction of MS-DOS and then 
vanished forever). 

Family Apps 

A Family App program is written to con- 
form to the new OS/2 Application Pro- 
gram Interface (API). However, it re- 
stricts itself to those OS/2 functions that 
have direct counterparts in MS-DOS and 
that do not utilize the machine instruc- 
tions unique to the 80286 or 80386. After 
a Family App is compiled or assembled 
and linked into a protected-mode execut- 
able (.EXE) file in the usual manner, it 
goes through an additional linkage step 
using the utility BIND. EXE and the li- 
brary file API. LIB. The result is an 
.EXE file that can run in protected mode 
under OS/2, in real mode under OS/2 in 
the DOS 3.X Compatibility Box, or 
under MS-DOS 2.x/3.x on any 8086/88, 
80286, or 80386-based machine. Such 
programs are sometimes called bound or 
dual-mode applications, and nearly all 
the programming tools supplied in the 
OS/2 software development kit fall into 
this category. 

The executable file for a Family App 
actually contains both an old .EXE file 
header and an MS-DOS-compatible pro- 
gram called the stub loader, and a new 
.EXE file header (containing segmenta- 
tion and dynamic-link information) and a 
protected-mode program image. If you 
invoke such a program under OS/2 in a 
protected-mode screen group, the OS/2 
loader inspects the new .EXE file head- 

continued 

Ray Duncan is president of Laboratory 
Microsystems Inc. , and the moderator of 
the OS/2 conference on BIX. He can be 
reached at P.O. Box 10430, Marina del 
Rey, CA, 90295, or on BlXas rduncan. 



OCTOBER 1987 -BYTE 109 



OS/2 APPLICATIONS FAMILY 



er, brings the code and data segments that 
are marked "preload" into memory, re- 
solves the dynamic links to system ser- 
vices, and starts up the new process in the 
normal fashion. 

If a Family App is activated in a real- 
mode environment, the entire file goes 
into memory, and the stub loader initially 
receives control. The stub loader patches 
up each OS/2 API call within the main 
program to point to a routine, appended 
to the file by BIND. EXE, that can pop 
the parameters off the stack into the ap- 
propriate registers and substitute an Int 
2 In function call to MS-DOS. It then sets 
up the machine registers in accordance 
with OS/2's conventions and jumps to the 
normal entry point of the application. 

A Family App is the natural first target 
of an experienced programmer who 
wants to port existing MS-DOS programs 
to OS/2. If said programs are already seg- 
mented according to normal .EXE file 
conventions, are well-behaved in their 
use of system memory, perform all file 
and record I/O using Handle function 
calls, and do not manipulate the keyboard 
or video controllers directly, then con- 
version is a straightforward job. The MS- 
DOS Int 21 h calls are simply rewritten as 
the corresponding OS/2 API calls, and 
any necessary variables or structures re- 
quired by the OS/2 calls are added to the 
program's data segment. The procedures 
that access command-line parameters or 
the environment block are adjusted ap- 
propriately, and a simple module defini- 
tion (.DEF) file, describing the pro- 
gram's segment behavior, is created for 
the benefit of the linker. 

Thus, transformation of an MS-DOS 
program into an OS/2 Family App pro- 
gram does not require any redesign of the 
program's structure or internal logic. It 
allows the software developer to maintain 
a single program and manual that can be 
shipped to all purchasers. On the other 
hand, a Family App gains little from the 
conversion except for the ability to exe- 
cute in protected mode. Since the more 
sophisticated OS/2 services have no MS- 



DOS counterparts, they cannot be used in 
the program unless the developer is will- 
ing to sacrifice symmetry of its operation 
in all three environments. When the pro- 
tected-mode Windows/Presentation Man- 
ager arrives, Family Apps will run in a 
window (allowing cut and paste of text 
from one to another) but will not support 
graphics operations. 

Kernel Apps 

A Kernel App runs only in a protected- 
mode screen group and uses the kernel 
KBD, VIO, and MOU subsystem ser- 
vices (i.e., keyboard, screen, and mouse 
I/O, respectively). Consequently, al- 
though such a program can run in a win- 
dow under the Presentation Manager, it is 
ordinarily limited to character-oriented 
screen displays (if it has its own graphics 
drivers, it can't run in a window). On the 
other hand, a Kernel App has full access 
to OS/2's advanced features: 

• It can create subprocesses (threads) 
that share the same data and files, child 
processes that run in protected memory 
spaces and have independent data and 
files, or whole new screen groups con- 
taining one ormoreprocesses writing to a 
separate virtual display. 

• It can use all of OS/2's interprocess 
communication facilities (e.g., pipes, 
queues, semaphores, and signals) to 
communicate with other processes. 

• It can elect to perform I/O or almost 
any other OS/2 operation in either syn- 
chronous or asynchronous (overlapped) 
fashion. 

• It can create either periodic or one-shot 
timers and use them to schedule its own 
operations or those of other processes. 

• It can allocate huge amounts of virtual 
memory. 

In addition, when several protected- 
mode applications are closely related and 
contain many identical or nearly identical 
subroutines, you can transfer those pro- 
cedures to private dynamic-link (dyna- 
link) libraries. This reduces the size of 
each application's .EXE file, since the 
routines in dynalink libraries are bound 



Application 
Type 


Runs under: 








MS-DOS App 
Family App 
Kernel App 
Windows App 


MS-DOS 
2.x/3.x 


OS/2 

Real-Mode 

Box 


OS/2 

Protected 

Mode 


OS/2 Windows/ 

Presentation 

Manager 


Yes 
Yes 
No 
No 


Yes 
Yes 
No 
No 


No 
Yes 
Yes 
No 


No 

Yes 

.Yes 

Yes 



Figure 1: A comparison of various types of applications that can run under OS/2. 



to an application at its load time. It also 
allows more efficient use of memory, 
since concurrently executing client appli- 
cations can share code segments from the 
library. The most important benefit of 
dynalink libraries, however, is simplifi- 
cation of code debugging and mainte- 
nance. You can modify, repair, or im- 
prove a routine in a dynalink library at 
any time without any change to the appli- 
cations that use it, as long as you don't 
alter its calling sequence. 

You should attempt to convert an exist- 
ing MS-DOS or OS/2 Family App into a 
true Kernel App only after close study of 
both the program's fundamental mission 
and the services available from the OS/2 
API. A clean division of the program's 
functionality between asynchronously 
executing processes or subprocesses (to 
fully exploit OS/2's multitasking capa- 
bilities) requires very careful planning. 
You must address new questions of sub- 
routine reentrancy and synchronization of 
access to shared data. But the time you in- 
vest in the design phase will be amply re- 
paid in the user's perception of applica- 
tion performance. 

Windows/Presentation Manager 
Apps 

Protected-mode Windows/Presentation 
Manager applications, like their prede- 
cessors under real-mode Windows, have 
a radically different internal structure and 
flow of control when compared to ordi- 
nary MS-DOS or OS/2 programs. The 
actual work performed by the program is 
segregated into several relatively autono- 
mous routines known as window proces- 
sors, each associated with a specific 
screen region, such as a parent window, a 
child window, a dialog box, and so on. 
The main routine of a Windows App is a 
relatively simple loop that reads a mes- 
sage off the program's input queue, op- 
tionally performs some translation on the 
message, and then redispatches the mes- 
sage to a window processor within the 
same application or in another. The mes- 
sage might consist of a key press, key re- 
lease, a mouse movement, a signal from 
the system to repaint part of a window, or 
a notification that the application has 
been "iconized." 

Conceptually, a Windows App re- 
quires a complete reversal of viewpoint 
on the part of the programmer. Instead of 
the application driving the environment, 
the environment drives the application. 
Instead of the application requesting a 
character from the keyboard or polling 
the mouse position when it is good and 
ready, the application is constantly being 
bombarded with messages from the sys- 
tem about events that are totally outside of 

continued 



110 BYTE- OCTOBER 1987 



ASYSTANT+ . . . Menu Driven 

Engineering And Scientific Software 

Brings New Power To Your PC! 




Data acquisition, analysis, statistics and astounding graphics 
in one easy to use, integrated and affordable package. 



ASYSTANT+ is a software package designed 
exclusively for engineers and scientists who 
use a PC as a personal productivity tool. It 
offers fully integrated data acquisition, 
data analysis and astounding graphic 
capabilities. 

This powerful software is menu driven to get 
you up and running immediately and provides 
an interactive and very clear help menu. 



Here are just a few of the powerful features: 

• A/D, D/A, Data Acquisition and Control 

• Full integration to eliminate program 
shuffling 

• Outstanding presentation quality graphics 
which easily outputs to plotters 

• Built-in, ready to run functions include FFT, 
smoothing, curvefitting, statistics, matrix 
and polynomial operations. . . and more 

ASYSTANT+ has no equal, either in power 
or functionality. With this software the time 
consuming requirements of custom 
programming are eliminated. With this 
software you no longer have to settle for 
"business oriented spread sheets" or multiple 
programs from several sources. With this 



software you can unlock your engineering and 
scientific potential while expanding your 
productivity. 

ASYSTANT+ is what engineering and 

scientific software is supposed to be. . . 

productive, powerful and capable of handling 

your toughest assignments. 

Best of all, it's easy to install, easy to use 

and very affordable. 

Call us today for more detailed information. 

1-800-348-0033 




ASYSTANT+ Ready-to-Run Scientific Software is a trademark of Asyst Software Technologies, Inc. 



SOFTWARE TECHNOLOGIES, INC. 

100 Corporate Woods • Rochester, N.Y. 14623 



Circle 317 on Reader Service Card 



OCTOBER 1987 -BYTE 111 



OS/2 APPLICATIONS FAMILY 



its control— and it must dispose of these 
messages quickly (for example, most 
users would consider any perceptible de- 
lay between clicking on a menu bar and 
the appearance of the pull-down menu as 
intolerably poor performance). 

Aside from design considerations, a 
move to Windows programming requires 
a programmer with true grit: There is no 
such thing as a trivial Windows program. 
Even the traditional "Hello, World!" 
program is several pages of C code, and 
the logic to scroll a window correctly 
under all possible circumstances adds a 
couple more pages. 

For those programmers who haven't 
yet gotten the message about Microsoft's 
love affair with C, an encounter with 
Windows can be a real crash landing. The 
Windows libraries are C libraries, the 
manuals and example programs assume a 
fluent knowledge of C, and any attempt 
to write a Windows App in any other 
high-level language or even (perish the 
thought) in Macro Assembler are vigor- 
ously discouraged by the Microsoft sup- 
port personnel. 

Needless to say, those few developers 
who have already written real-mode Win- 
dows applications have a significant head 
start, but even their lot is not easy. Al- 
though protected-mode Windows/Pre- 
sentation Manager has the same user in- 
terface as real-mode Windows 2.0, the 
system interface at the application pro- 
gram level is somewhat different. Devel- 
opers of Windows Apps will have to 
maintain two sets of source code, one for 
protected mode and one for real mode, 
and just pray that the two systems don't 
diverge too much over the years. 



What do Windows App developers get 
for their pains? A dramatically shortened 
user learning curve, access to a battery of 
graphic drawing and "rich text" display 
functions that would take years to dupli- 
cate, ready exchange of all types of data 
with other Windows Apps, and eternal 
relief from the dreary job of writing and 
optimizing a new device driver for every 
video adapter, printer, and pointing de- 
vice that appears on the market. The bur- 
den of writing a general-purpose Win- 
dows driver for new hardware is shifted to 
the manufacturer— where it belongs. 

The Tools 

The Microsoft OS/2 Software Develop- 
ment Kit (SDK) established some historic 
precedents when it landed on purchasers' 
doorsteps with a thump on the morning of 
May 29. It was certainly the most formi- 
dable software package ever shipped by 
Microsoft, arriving in a box nearly 3 feet 
long and weighing roughly 30 pounds. It 
was the most expensive Microsoft prod- 
uct ever, at a cost of $3000 per copy (to 
be fair, this includes automatic software 
updates, a year's technical support, and 
attendance at a three-day OS/2 seminar). 
It was the first time in my memory that 
Microsoft had delivered a product two 
months before its announced release date. 

And last, but not least, it was the first 
time that Microsoft had ever asked devel- 
opers to pay to be beta testers. 

The SDK's nine high-density (1.2- 
megabyte) disks contain a prerelease ver- 
sion of the OS/2 operating system and its 
associated utility programs, dual-mode 
versions of the Microsoft C Compiler, 
Macro Assembler, Linker, MAKE, 



Listing \\ DUMP.C, 


the source code for the C version of the Kernel App 


example. 




/* 




DUMP.C 


Displays the binary contents of a file in hexadecimal 




and ASCII on the standard output device. 




Program has been deliberately complicated to 




demonstrate direct calls from C to operating 




system, use of multiple threads, and 




synchronization with semaphores. 


Usage is: 


C>DUMP unit : path \ filename . ext 




[ destination ] 


Compile with 
*/ 


: OCL/AL/Zi/Gs/F 2000 DUMP.C 


^include <stdio.h> 




^include <malloc . h> 




^include <doscalls .h> 




#def ine REC_SIZE 16 


/* size of file records */ 


#def ine STK_SIZE 1024 


/* stack size for threads */ 




continued 



BIND, protected-mode CodeView, 
source code for many example programs, 
and even a fully configurable visual edi- 
tor. The documentation fills eight bind- 
ers, totaling some 3100 pages. The first 
SDKs did not include the software and 
documentation (an additional three man- 
uals containing another thousand pages 
collectively) for the Windows/Presenta- 
tion Manager graphic interface that was 
scheduled to be delivered as part of an 
update by the time this article appears. 

To use the OS/2 SDK, you need a PC 
AT or compatible with a hard disk and at 
least 1.5 megabytes of RAM, room on 
the disk for 10 megabytes or so of pro- 
grams, libraries, and example source 
code, and a lot of patience. The OS/2 ker- 
nel alone supports over 200 functions that 
can be called by application programs, 
and the Windows/Presentation Manager 
layer adds some 500 more. The days 
when a PC programmer could get by with 
a $20 MS-DOS reference book, a run- 
time library manual for his or her favorite 
language, and a quick reference card to 
the Intel 80x86 instruction set are gone. 

An Example Kernel App 

As an example of an OS/2 Kernel App to 
accompany this article, I have written two 
implementations of a file-dumping utility 
in C and Macro Assembler. The utility 
accepts a filename on the command line 
and displays the binary contents of that 
file, in hexadecimal bytes and their 
ASCII character equivalents, on the stan- 
dard output device (and may be re- 
directed into a file or to the printer) . Such 
a utility is indispensable when trying to 
decipher the format of undocumented 
data files, load modules, and the like. 
The C source code (from the file 
DUMP.C) is in listing 1. [Editor's note: 
DUMP.C, DUMP ASM, and DUMP- 
.DEF, which contain the source code for 
these two implementations, are available 
on disk, in print, and on BIX; see the in- 
sert card following page 304 for details. 
Listings are also available from BYTE- 
net; see page 4 for details. ] 

Although file-dumping utilities per se 
are common and not very interesting, 
these particular programs have been in- 
tentionally complicated in order to illus- 
trate some of the powerful capabilities of 
OS/2. They perform overlapped I/O by 
creating separate threads to handle the 
disk reads and screen writes. 

The threads use a double-buffering 
scheme and coordinate their access to the 
buffers with semaphores. Figure 2 shows 
a sketch of the general logic of the DUMP 
program. 

The C example demonstrates the ease 
with which OS/2 services may be called 

continued 



112 BYTE- OCTOBER 1987 




Please accept my application for trial member- 
ship and send me the 5-Volume UNIX Library 
(85389) billing me only $9.95, plus shipping and 
handling. I agree to purchase at least three addi- 
tional Selections or Alternates over the next 12 
months. Savings range up to 30% and occasion- 
ally even more. My membership is cancelable 
any time after I buy these three additional books. 
A shipping and handling charge is added to all 
shipments. 

No-Risk Guarantee: If I am not satisfied— for 
any reason— I may return the 5-Volume UNIX 
Library within 10 days. My membership will be 
canceled, and I will owe nothing. 



Name of Firm_ 



(If you want subscription sent to your office) 



Address- 



. Apt.. 



City- 



State- 



. Zip_ 



(Books purchased for professional purposes may be a 
tax-deductible expense. Offer good in Continental U.S. 
and Canada only. Prices slightly higher in Canada.) 
Byte 10/87 7-DU4 




Please accept my application for trial member- 
ship and send me the 5-Volume UNIX Library 
(85389) billing me only $9.95, plus shipping and 
handling. I agree to purchase at least three addi- 
tional Selections or Alternates over the next 12 
months. Savings range up to 30% and occasion- 
ally even more. My membership is cancelable 
any time after I buy these three additional books. 
A shipping and handling charge is added to all 
shipments. 

No-Risk Guarantee: If I am not satisfied— for 
any reason— I may return the 5-Volume UNIX 
Library within 10 days. My membership will be 
canceled, and I will owe nothing. 



Name_ 



Name of Firrru 



(If you want subscription sent to your office) 



Address. 



.Apt.. 



City_ 



State. 



. Zip_ 



(Books purchased for professional purposes may be a 
tax-deductible expense. Offer good in Continental U.S. 
and Canada only. Prices slightly higher in Canada.) 
Byte 10/87 7-DU4 



£S£ 



BUSINESS REPLY MAIL 

FIRST CLASS PERMIT NO. 230 RIVERSIDE, N J 



POSTAGE WILL BE PAID BY ADDRESSEE 



The Library of 

Computer and 
Information Sciences 

Riverside New Jersey 08075-9889 



NO POSTAGE 

NECESSARY 

IF MAILED 

IN THE 

UNITED STATES 



I I I I I I I I I I I M I I M I I I I I I I I I I I I I I I I I I I I I MM I I I I I I I 



KM*? Fr n, 



Exami 



natio" 



BUSINESS REPLY MAIL 

FIRST CLASS PERMIT NO. 230 RIVERSIDE, N J 



POSTAGE WILL BE PAID BY ADDRESSEE 



The Library of 

Computer and 
Information Sciences 

Riverside, New Jersey 08075-9889 



NO POSTAGE 

NECESSARY 

IF MAILED 

IN THE 

UNITED STATES 



MM Mil Mill I I I I I I I I I I I I I I I I I I I I I I I I I I I I J I I Mil 



TAKE THE 5-VOLUME 
UNIX PROGRAMMER'S MANUAL 



for only $9.95 



when you join The Library of Computer 
and Information Sciences 



You simply agree to buy three more books— at handsome discounts— within the next 12 months. 






THE UNIX BIBLE 

System V is here. You'll want the 
latest edition to the most comprehen- 
sive reference to the UNIX operating 
system. Take the UNIX Programmer's 
Manual, now in an expanded five- 
volume set. 

VOLUME 1 

Commands and Utilities. 
Take command of the most important 
applications and utilities available in 
the UNIX system. From the special 
functions of the DASI 300 and 300A 
terminals to user details on many UNIX 
implementations. Plus, you'll find in- 
formation and cross references for quick 
how-tos and easy problem solving. 

VOLUME 2 

System Calls and Library 
Routines 

Now feel completely at ease with 
UNIX programming features: system 
calls, subroutines, libraries, file for- 
mats, macro packages, character set 



tables, and more. A valuable tech- 
nical manual for the computer 
professional. 

VOLUME 3 

System Administration 
Facilities 

This is your guide to efficiently 
administrating the UNIX system. 
Change, debug, kill, copy or compile, 
execute important system maintenance 
commands and procedures, use appli- 
cation programs and special files. 

VOLUME 4 

Documentation Preparation 
You'll find detailed examples, prac- 
tical commands and memorandum 
macros to help you create and format 
documents. Includes step-by-step 
tutorials on nrof f and trof f , advanced 
editing commands, the stream editor 
(sed), preprocessors, plus tbl and eqn 
to prepare tables and typeset mathe- 
matics, and more. 

VOLUME 5 

Languages and Support Tools 
An indispensable reference tool, vol- 
ume 5 explains languages and soft- 
ware tools critical to the system user. 
In this expanded and enriched hand- 
book, you'll find guides to: Fortran 
and C programming, make, M4 Macro 
Processor, awk, Link Editor, Com- 
mon Object File Format, 
Interactive Desk Calcula- 
tor, Lexical Analyzer 
Generator, and much 
more. 




The Library of Computer and Infor- 
mation Sciences is the oldest, largest 
book club especially designed for 
computer professionals. In the 
incredibly fast-moving world of data 
processing, where up-to-the-moment 
knowledge is essential, we make it 
easy to keep totally informed on all 
areas of the information sciences. 
What's more, our selections offer you 
discounts of up to 30% or more off 
publishers' prices. 

4 Good Reasons to Join 

1. The Finest Books. Of the hundreds 
of books submitted to us each year, only 
the very finest are selected and offered. 
Moreover, our books are always of 
equal quality to publishers' editions, 
never economy editions. 

2. Big Savings. In addition to getting 
the 5-vol. UNIX Programming Library 
for only $9.95 when you join, you keep 
saving substantially, up to 30% and 
occasionally even more. (For example, 
your total savings as a trial member- 
including this introductory offer— can 
easily be over 50%. That's like getting 
every other book free!) 

3. Bonus Books. Also, you will immedi- 
ately become eligible to participate in 
our Bonus Book Plan, with savings of up 
to 65% off the publishers 1 prices. 

4. Convenient Service. At 3-4 week 
intervals (16 times per year), you will 
receive The Library of Computer and 
Information Sciences News, describing 
the Main Selection and Alternate Selec- 
tions, together with a dated reply card. 
If you want the Main Selection, do noth- 
ing, and it will be sent to you automati- 
cally. If you prefer another selection, or 
no book at all, simply indicate your 
choice on the card and return it by the 
date specified. You will have at least 10 
days to decide. If , because of late mail 
delivery of the News, you should 
receive a book you do not want, we 
guarantee return postage. 

^, If reply card is missing, please 
write to The Library of Com- 
puter and Information 
Sciences, Dept. 7-DU4-85389, 
Riverside, N J, 08075 for 
membership information 
and an application. 



BYTE Magazine 10/87 
OCTOBER 1987 -BYTE 



Circle 191 on Reader Service Card 




OS/2 APPLICATIONS FAMILY 



r Interfaces For 
IBM PC/XT/AT 
and Compatibles 

IBM Personal 
System/2 

Industry standard GPIB software 
for MS DOS and XENIX. 

Co-developer of GPIB support for 
Lotus Measure, ASYST, LABTECH 
NOTEBOOK, and TBASIC 



Software compatible with our 
family of IEEE-488 interfaces for 
Macintosh, MicroVAX, PDP-11 
LSI-ll,VMEbus, STDBus, 
MULTIBUS, S-100 Bus, and 
SBX Bus 







riie Lesaer ui iLLh-488 



\usi in, Tex is • 



12109 



Tcchnc log^BlVd 



CALL ]<Ol CAT AL 



800/53l-4742*512/250-9119 



787 



char Buf 1[REC_SIZE]; 
unsigned Buf lLen; 


/* first disk buffer */ 

/* amount of data in buffer */ 


charBuf2[REC_SIZE]; 
unsigned Buf2Len; 


/* second disk buffer */ 

/* amount of data in buffer */ 


unsigned Handle; 
long f ilptr; 


/* file Handle from DOSOPEN */ 
/* file offset in bytes */ 


unsigned longExitSem; 
unsigned long Buf IFullSem; 
unsigned long BuflEmptySem; 
unsigned long Buf 2FullSem; 
unsigned long Buf2EmptySem; 


/* semaphore for process exit */ 
/* semaphores for disk buffer 1 */ 

/* semaphores for disk buffer 2 */ 


main(int argc, char *argv[ ] ) 

{ 

void far DisplayThr( ) ; 
void far DiskThr( ) ; 




/* entry point for Display Thread */ 
/* entry point for Disk Thread */ 


unsigned DisplayThrlD; 
unsigned DiskThrlD; 


/* receives Thread ID */ 
/* receives Thread ID */ 


char DisplayThrStk[STIC_SIZE] ; 

char DiskThrStk[STK_SIZE] ; 

int action; 

int openf lag=0x01; 

int openmode=0x40; 


/* allocate stacks for threads */ 

/* receives DOSOPEN result */ 
/* fail open if file not found */ 
/* read only, denynone */ 


filptr=0L; 


/* initialize file pointer*/ 


ExitSem=OL; 


/* initialize semaphores */ 


BuflEmptySem=BuflFullSem=OL; 
Buf2EmptySem=Buf2FullSem=0L; 
DOSSEMSET( ( long) &ExitSem) ; 
DOSSEMSET((long) &Buf IFullSem) ; 
DOSSEMSET((long) &Buf2FullSem) ; 




if (argc < 2) 

{ fprintf (stderr, " \ ndump: mis 
exit(l); 

} 

if (DOSOPEN(argv[l],&Handle,&act 
{ f print f ( stderr , " \ ndump : can 

exit(l); 
} 

if (DOSCREATETHREAD(DiskThr,&Dis 
{ f printf ( stderr, " \ ndump : can 

exit(l); 
} 

if (D0SCREATETHREAD(DisplayThr,8 
{ f print f( stderr, " \ ndump: can 

exit(l); 
} 


/* check command tail */ 
sing file name\n"); 


/* open file or exit */ 
ion , OL , , openf lag, openmode , OL ) ) 
' t find file *s \ n" , arg v[l] ) ; 


/* create Disk Thread */ 
kThrID,DiskThrStk+STK_SIZE) ) 
•t create Disk Thread") ; 


/* create Display Thread */ 
DisplayThrlD, DisplayThrStk+STiC_SIZE) ) 
't create Display Thread"); 


DOSSEMWAIT((long) &ExitSem,-lL); 


/* wait for exit signal */ 


DOSSUSPENDTHREAD (DiskThrlD) ; 
DOSSUSPENDTHREAD (DisplayThrlD) ; 
D0SCL0SE( Handle); 
D0SEXIT(1,0); 
} 


/* suspend other threads */ 

/* close file V 

/* terminate all threads */ 


/* 

The Disk Thread reads the disk file, alternating between Bufl 
and Buf 2 . This thread gets terminated externally when the 




continued 



114 BYTE- OCTOBER 1987 



Circle 105 on Reader Service Card - 



FOXBASE+ 2.00 



lazing Speed 
New Features 
Easiert 



Complete dBASE III PLUS 
Replacement. . .Ami Much Mote 

Don't change your programs, 
databases, screens, or reports! 

FoxBASE+ makes your dBASE applica- 
tions run like lightning without changing 
one line. And you can still use the best 
parts of dBASE— great interactive fea- 
tures like EDIT and BROWSE plus the 
full power of the "dot-prompt." Use 

r> t> a or* . ■__ j_i_. ii_ _ r it 



iar, user-friendly way you use dBASE. 

30+ Ma/or Enhancements 

User-Defined Functions, screen 
save & restore, VALID clause in GET s, 
built-in "light-bar" menus, 10 new 
commands, 4 new functions, and much 
more. 

Faster Than Fast 

FoxBASE+ was already the fastest 
dBASE product in existence— but based 
on independent benchmarks f new 
FoxBASE+ 2.00 averages 73% faster. 
That's an average 3.2 times faster than 
Clipper, 4.3 times faster than Quick- 
silver, and 5.9 times faster than dBASE 
III PLUS. 



80386 Version Available NOW 

For ultimate speed now, FoxBASE+/386 
runs about 50% faster than standard 
FoxBASE+ 2.00-over 10 times faster 
in some operations. It takes full advan- 
tage of protected mode and the giant 
memory capacity of the 80386 chip today 
. . .yet runs under standard MS-DOS. 

Easier To Use 

Don't worry about memory configura- 



tion or si; 

automatically optimizes memory usage 
as it runs. . .requires less memory yet 
runs faster. And because FoxBASE+ is 
completely interactive, you don't have 
to waste hours compiling and linking 
your programs. 

FoxBASE+ Is Economical 

Best of all, single-user MS-DOS 
FoxBASE+ 2.00 costs just $395 and 
FoxBASE+/386 2.00 just $595. Multi- 
user versions are also available ?* And 
with our Royalty-Free Runtime you can 
distribute your FoxBASE+ applications 
freely and never pay another dime. 



FoxBASEh- runs on the new IBM 
Personal System/ 2 and 3.5" diskettes 
are available at no additional cost. 

So call (419) 874-0162 and ask for the 
details about FoxBASEh- 2.00 and our 
money-back guarantee. After all. . . 



Nothing Runs Like a Fox. 



FoxBASE, Fox BASE +, and FoxBASE+/386 are trademarks of Fox Software. dBASE 111 PLUS is a trademark of 
AshtonTate. Clipper is a trademark of Nantucket. Quicksilver is a trademark of WordTech Systems. Personal System /2 
is a trademark of IBM. 

* Using the suite of 48 comprehensive benchmarks published in Data Based Advisor, March 1987. 

" Multi-User FoxBASE-t- 2.00 for MS-DOS costs $595. Multi-User XENIX version available at $795. 



Fox Software 
27493 Holid 



Perrysburg, Ohio 43551 
Telex: 6503040827 FOX 



Circle 295 on Reader Service Card 



Importers 

Germany is 

competing with 

Taiwan! 

Times arc changing. Up to now you had to buy your 
peripherals in Taiwan. Now you get more sophisticated 
products from Germany. At the same prices. 



Printer Buffer inside cable 

For the average user, most buffers 
are too complicated. So we designed 
a buffered cable with 64K or 256K 
inside. Just a cable. As easy to use. 
Nearly as inexpensive. 

Take out your data. 

In a battery-operated buffer. 32K 
with Centronics- or RS232-input. 
B attery will hold data for as long as 
10 years. Record and play as often 
as you like. Carry data to a printer 
or to another computer. 

Share your printer. 

Good printers still are quite expen- 
sive. So it's a good idea to share one 
printer by two computers (with 
parallel output). We have a fully 
automatic switch that does not need 
any power supply. 

That's what T-swItches should 
look like! 

For IBM-compatibles. 2 printers to 
one computer. Complete set inch all 
cables and a small switch-box. No 
bulky box on your desk! 

Want a special keyboard? 

Connect any matrix type keyboard 
to an IBM-compatible. Any layout. 
Any size. Our interface adapts it to 
the standard keyboard plug. No soft- 
ware modification! 



C64/C128: Printer Interface 

With graphics. 100% compatible. 
For almost any printer. Professional 
design. Low cost. 



C64/C128: RS232 Interface 

Microprocessor controlled. Has its 
own 64K buffer, performs automa- 
tic handshake and can receive data 
even while your computer is busy. 
High speed, up to 38kBaud. 

Atari 800, 130: Interface 

Printer Interface. Low cost, pro- 
fessional design. Including cable. 




^ 





There are a lot of good ideas and unique products from 
Germany at prices you would not expect. 

We invite inquiries from 
importers all over the world 

The following are registered trademarks: IBM.C64, C123, Atari 



wiesemann 
& theis 

MIKROCOMPUTERTECHNIK 



nn «V 

gmbh'M, 

iRTECHNiK mmi 



r 



wlnchenbachstr. 3-5 
d-5600 wuppertal 2 
west-germany 



phone: 202-505077 
telex: 859 16 56 
fax: 202-511050 



OS/2 APPLICATIONS FAMILY 



other threads (see end of file) have been reached, 
void far DiskThr( ) 



*/ 



while(l) 

{ DOSREAD(Handle,Bufl,REC_SIZE,&BuflLen); /* read disk */ 

SemFlip( &Buf lEmptySem, &Buf lFullSem) ; /* mark buffer 1 full */ 

DOSSEMWAIT ( ( long) &Buf 2EmptySem, -1L) ; /* wait for buffer 2 empty */ 

D0SREAD(Handle, Buf 2, REC_SIZE, &Buf 2Len) ; /* read disk */ 

SemFlip( &Buf 2EmptySem, &Buf 2FullSem) ; /* mark buffer 2 full */ 

DOSSEMWAIT ( ( long) &Buf lEmptySem, -1L) ; /* wait for buffer 1 empty */ 



} 



/* 



The Display Thread formats and displays the data in the disk 
■ buffers, alternating between Bufl and Buf 2. */ 

void far DisplayThr( ) 



while(l) 

{ D0SSEMWAIT( (long) &Buf lFullSem, -1L) ; 

DumpRe c( Bufl, Buf lLen) ; 

SemFlip( &Buf lFullSem, &Buf lEmptySem) ; 

D0SSEMWAIT((long) &Buf2FullSem,-lL) ; 

DumpRec(Buf2,Buf2Len) ; 

SemFlip( &Buf 2FullSem, &Buf 2EmptySem) ; 



/* wait for buffer 1 full */ 
/* format and display it */ 
/* mark buffer 1 empty */ 
/* wait for buffer 2 full */ 
/* format and display it */ 
/* mark buffer 2 empty */ 



/* 

Display record in hexadecimal and ASCII on standard output. 
Clear exit semaphore and terminate thread if record length=0. */ 
DumpRec(char *buffer, int length) 



int i; 

if (length==0) 

{ D0SSEMCLEAR( (long) &ExitSem) ; 
D0SEXIT(0,0); 



/* index to current record */ 

/* check if record length = */ 
/* yes, signal main thread */ 
/* and terminate this thread */ 



if ( f ilptr % 128 ==0) /* maybe print heading */ 

printf ( "\n\n 0123456789ABCDEF"); 



printf ( » \ n#04lX " , f ilptr) ; 



/* file offset V- 



for (i = 0; i < length; i++) /* print hex equiv. of each byte */ 

printf( " %02X», (unsigned char) buffer[i] ); 

/* space over if partial record */ 
if (length != 16) for(i=0; i<(l6-length); i++) printf(" "); 

printf (" »)j 

for ( i = 0; i < length; i++) /* print ASCII equiv. of bytes */ 

{ if (buf fer[i] < 32 \ | buf f er[i] > 126) putchar( • . • ) ; 
else putchar(buf fer[i] ) ; 



f ilptr += REC_SIZE; 



/* update file offset*/ 



/* 



Since there is no operation to wait until a semaphore is set, we 
must maintain two semaphores to control each buffer and flip 
them atomically. 
SemFlip(long *seml, long *sem2) 

{ D0SENTERCRITSEC( ) ; /* block other threads */ 

D0SSEMSET( (long) semi) ; /* set the first semaphore */ 

D0SSEMCLEAR( ( long) sem2 ) ; /* clear the second semaphore */ 

DOSEXITCRITSEC ( ) ; /* unblock other threads */ 



V 



116 BYTE- OCTOBER 1987 



rs^ 



vt 







VSf 



aP 1 



»vT^ 



^ 



-^° 






,*# 



.* 



^ 






Sg* 



•%&■ 




NOW DINERS CWB 

HOLDS THE KEY 

TO BONUS FREQUENT 

STAYER POINIS AT HIUON, 

INTER-CONTINENTAL, 

RADISSON, RAMADA AND 

SHERATON HOTELS. 



From now on, when you use the Diners Club Card, you can earn Club Rewards™ 
points good towards exciting gifts and services. Including frequent stayer credit at the 
participating hotel of your choice. Which can earn you a free room upgrade or even 
a free suite. Or you can choose frequent flyer miles on American, Continental, Northwest, 
TWA or United* airlines. 

So dine with the Diners Club Card. Sleep on it Rent with it Whatever. And watch your 
frequent stayer credit grow. Or use someone else's card... and miss out on a very suite deal. 

Call 1-800-DINERS-l. 

pin the Club. The rewards are endless. 

© 1 987, Citicorp Diners Club Inc. 

Frequent Traveler benefits available through the Club Rewards™ program. Participating companies subject to change. Club Rewards is a 
service available only to Personal Cardmembers of Diners Club from Citicorp located within the 50 United States. Free enrollment required. 
Certain terms and conditions apply. Free suites available at selected hotels. "United participation limited to 1986/87 Club Rewards brochure. 



OS/2 APPLICATIONS FAMILY 



directly from a high-level language. The 
assembly language version, DUMP- 
.ASM, also contains two procedures that 
Macro Assembler programmers should 
find useful in other programs. The rou- 
tines are called ARGC and ARGV, and 
they return the number of command-tail 
arguments and pointers to those argu- 
ments, similar to C's argc and argv. 

Assembling and Linking 
DUMP. ASM 

First, use the Microsoft Macro Assem- 
bler to assemble the file DUMP.ASM 
into the relocatable object module 
DUMP. OBJ with the following com- 
mand line: 

[C: \]MASM/L/ZiDUMP 

The optional /L and /Zi switches in the 



MASM command line request the creation 
of a program-listing file and the inclusion 
of symbolic debugging information in the 
relocatable object file, respectively. 

To link the file DUMP.OBJ, the mod- 
ule-definition file DUMP.DEF, and the 
OS/2 API dynalink reference file DOS- 
CALLS. LIB into the executable applica- 
tion DUMP.EXE, enter: 

[C: \ ] LINK DUMP, , , DOSC ALLS , DUMP 

You can then run the DUMP utility with a 
command of the form: 

[C: \] DUMPMYFILE.DAT 

Compiling and Linking DUMP.C 

The C compiler has a control program, 
CL.EXE, that automatically runs the 
preprocessor, the various passes of the 





Main thread 




Disk thread 




Display thread 






Entry from 
OS/2 




s 


i 






> 


t 








Get semaphore 
for buffer 1 






Get semaphore 
for buffer 1 
































Initialize 
semaphores 






Read disk 
to buffer 1 






Display 
buffer 1 
































Create disk 

and display 

threads 






Release 

buffer 1 

semaphore 






Release 

buffer 1 

semaphore 
































Wait for 
exit signal 






Get semaphore 
for buffer 2 






Get semaphore 
for buffer 2 
































Read disk 
to buffer 2 






Display 
buffer 2 




























Release 

buffer 2 

semaphore 






Release 

buffer 2 

semaphore 


* 




Clean up 
and exit 











































Figure 2: A sketch of program logic for the DUMP example program. Separate 
sub processes (threads) are used to perform the disk file reads, and the formatting 
and display. Two semaphores provide mutual exclusion on the I/O buffers. The 
main thread simply waits until the other two threads are done, unless a critical error 
or other external event activates it in the meantime. 



compiler, and the linker for you. To com- 
pile and link the file DUMP.C, together 
with the library DOSCALLS.LIB and the 
module-definition file DUMP.DEF, into 
the executable DUMP.EXE, enter the 
command line: 

[C: \ ] CL /AL /Zi /Gs /F2000 
DUMP.C 

The /AL switch specifies a "large model" 
program, while the /Zi switch (again) 
specifies that the linker should include 
symbolic debugging information in the 
object module and in the final executable 
file. I prefer to use the large model for 
most of the OS/2 utility programs I write 
in C because the compiler then generates 
"long" addresses for the parameters sup- 
plied in direct calls to OS/2 services 
without the need for any special type- 
casting. 

To Port a Program 

If you want to port an existing MS-DOS 
application to OS/2, or develop an entire- 
ly new OS/2-based product, you must 
make some early implementation deci- 
sions based on the specific characteristics 
and needs of your application. 

You can quickly port products that re- 
quire a minimum of user interaction and 
have no need for graphics, such as com- 
pilers, linkers, and similar tools, to OS/2 
as Family Apps. This gives you the added 
advantage of being able to ship a single 
disk and manual for MS-DOS 2.x/3.x, 
the OS/2 DOS 3.X Compatibility Box, 
and OS/2 protected mode. 

You can write highly interactive appli- 
cations with no need for graphics (e.g., 
communications programs) as character- 
oriented Kernel Apps and reap the bene- 
fits of OS/2's protected-mode services. 
While not as straightforward as a Family 
App port, a Kernel App is still relatively 
easy to write and will run in a window 
under the Presentation Manager, if nec- 
essary. Most of the commercial products 
released for OS/2 in the next year or so 
will undoubtedly fall into this category. 

Finally, if you need to port graphics- 
oriented applications to OS/2, you have a 
choice between revamping your program 
as a true Windows/Presentation Manager 
App, or going it alone and providing your 
own graphics routines. If you choose the 
latter course, your program might be 
published sooner, but it will lose the abil- 
ity to run in a window alongside of (and 
exchange data with) other Windows/Pre- 
sentation Manager Apps, and you forfeit 
the advantages of the common graphic 
user interface. You will also waste time 
writing hardware-dependent drivers that 
might be better spent on user-oriented 
enhancements. ■ 



118 BYTE* OCTOBER 1987 



VIDEOTRAX DATA BACK UP 

WE JUST INTRODUCED IT. 

AND ALREADY 40 MILLION 

PEOPLE OWN HALF OF IT. 



Every human in the hemisphere who 
owns a standard VCR has half of 
what's needed to back up data.The 
rest of what you need is neatly con- 
tained on the new Videotrax® con- 
troller board by Alpha Micro. 

Slip the half-size Videotrax board 
into the expansion slot of any PC. 
Meaning any IBM? PC, XT, AT, Com- 
paq® 386 or true compatible. 






1 1 Ml Ul: I.I 1 1 1 






"1 H H if ! fill 






IIHIIH!! M - 


* 




i MM MM f ! f 




£ 


I 1 





High-tech. Open your PC and slide tfie controller board 
into any expansion slot Low-tech. Hook up VCR to com- 
puter with standard connector cables. 

Connect the computer to a VCR with 
standard connector cables. And, as of 
that moment, you are under the pro- 
tection of a highly sophisticated, strin- 
gently reliable, data backup system. 
In fact, exhaustive testing and the 
long term experience of over 19,000 
Alpha Micro users have proven Video- 
trax technology to be more reliable 
than any other backup option avail- 
able. More dependable, even, than 



Corporate Headquarters: 3501 Sunflower, PO. B*z 25059, Santa An a, CA 92799. 
©Alpha Microsijstems 1987. All rig his reserved IBM is a registered trademark 
of International Business Machines. Videotraxis a registered trademark ofAlpiia 
Microsystems Compaq is a registered trademark of Compaq Computer Corp 
RadioS fiack Computer Center is a registered trademark ofRmdy Corporation 



the hard disk you're covering for. 
QUICK STUDY 
Videotrax has been designed to 
extremely demanding standards. 
So that it won'tputalotof demands 
on you. Anyone who can run a 
VCR knows most of the drill.The 
rest is covered by our menu-driven 
software. By clear, concise docu- 
mentation. And by a range of 
backup modes that keeps it 
simple: 

Insert a blank video cas- 
sette tape and follow the direc- 
tions which appear on screen. 
These guide you through the 
painless steps for copying or 
restoring an entire hard disk, 
specific files, or only files mod- 
ified since the last backup. 
Meanwhile, Videotrax rigor- 
ously monitors it- 
self for proper 
functioning. 
WE MAKE 
THE VCR 
PART OF IT, 
TOO. 
If you like, opt for 
our enhanced Videotrax 
VCR and experience the 
extra joy of its automatic, un- 
attended backup capabilities. 
It will be a most prudent invest- 
ment. Because, for the price of 





taping Dallas you can preserve your 
most precious A data. Up to 
80MB ^Sk fek on a single 



Your bask video 
cassettes. Reliable, 

inexpensive, 
easy to find 



cassette, at less than a tenth of the 
cost of streamer tape. 

And now the price is low. Just $399 
for the board and $1199 for the board 
and enhanced VCR , sug g ested retail. 

And of course, if you ever require 
service, your authorized Alpha Micro 
dealer and our worldwide 
network of factory service 
centers will provide all the 
support you need. 

For the name of your near- 
est Videotrax dealer, call Alpha 
Micro at 1-800-992-9779. In 
California, call 1-800-821-0612. 

The Videotrax System. 
It's a great leap forward in 
backing up. 



DATA BACKUP FROM 
ALPHA MICRO. 




IBM 




Circle 8 on Reader Service Card (Dealers: 9) 

Available at R3CIIO 3 I13CK Computer Centers'/Plus Computer Centers 
and other fine computer dealers worldwide. 



r 



M 




*$ifefc: 



3St 



Totally-carapatible with the IBM AT, right 
down to keyboard layout. But with a more 
resilient feel. 

14' j 132 column, high resolution screen 
.gets more out of programs like Multiplan and 
Lotus 1-2-3. 

Boosts productivity with easy to read 
charac ter set and advanced ergonomics. 

Manufactured-, serviced and supported by 
the company that ships more terminals than 
anyone but IBM? 

At $599, the Wyse WY-60 delivers unrivaled 
value if you're looking for sharp resolution, 
advancedf eatunes and superior overall quality 
in an AT-compatible alphanumeric terminal. 



Likewise. 



Likewise., 



Likewise. 



Likewise. 



At $649, the Wyse WY-99GT delivers 
likewise in a graphics terminal, with Hercules 
and IBM CGA compatibility. 



So if you're looking for the best terminal to turn your AT into a multi-user system, there's 
really no choice like Wyse. For more information, call 1-800- GET- WYSE. 



* - 



WYSE 

ii i i 

We make it better, or we just don't make it. 



Trademarks/OwnereVWyse, WY-60, WY-99GTV Wyse Technology; IBM AT, IBM CGA/lnternaiional Business Machines; Hercules/Hercules; 
Lotus 1-2-3/Lotus Development Corporation; Multiplan/Microsoft. *I1)C 1986 US. Terminal Census. 



Circle 300 on Reader Service Card 



v 



PRODUCT PREVIEW 



Ezra Shapiro 



A Spiritual Heir 
to the Macintosh 

The Canon Cat may be Jef Raskin 's long-sought "information appliance " 




Editor's note: The following is a BYTE 
product preview. It is not a review. We 
provide an advance look at this new prod- 
uct because we feel it is significant. 

he Canon Cat is being ad- 
vertised as a piece of of- 
fice equipment— the next 
step beyond the memory 
typewriter— but there ' s 
some real computer muscle under this fe- 
line's skin. It's Jef Raskin's first machine 
since he left Apple, where he headed the 
original Macintosh development team. 
And, as you might expect from this pedi- 
gree, the Cat takes an innovative ap- 
proach to computing in the business envi- 
ronment. 

Like the Macintosh, the Cat is a one- 
piece unit with a 9-inch black-and-white 
bit-mapped monitor, a single 3 ^ -inch 
floppy disk drive, a small footprint, a 
Motorola 68000 CPU, and a user inter- 
face built into ROM. However, that's 
where the similarity ends; the Cat has no 
mouse, no icons, and no graphics. 

Raskin's goal at Apple had been to 
create a low-cost, minimalist "people's 
computer." However, as the Macintosh 
evolved into a product, it grew in scope, 
complexity , and cost. A year after his de- 
parture from Apple in 1982, Raskin 
founded a small company and began to 
design a machine that would recapture 
his original vision; he named the firm In- 
formation Appliance, a rather succinct 
statement of his utilitarian philosophy. 

The company is still going strong. The 
Canon Cat is a refinement of the proto- 
types developed by Raskin and his co- 
Ezra Shapiro is a consulting editor for 
BYTE. Contact him at P. O. Box 146069, 
San Francisco, CA 94114. Because of the 
volume of mail he receives, Ezra, regret- 
fully, cannot respond to each inquiry. 



workers at Information Appliance and is 
now being manufactured and sold by 
Canon U.S.A. under a series of technol- 
ogy licenses. 

At First Glance 

The 17 -pound Cat takes about as much 
space as an Apple lie with a monitor, 
standing 10 n / 16 inches tall with a foot- 
print 13% inches wide and \1 3 A inches 
deep. The CRT display is tilted back from 



the keyboard at a comfortable viewing 
angle; the screen is slightly to the left of 
center. A 3 1 /2-inch floppy disk drive is 
mounted vertically next to the screen in 
the right-hand section of the integrated 
housing. 

Outputs include a Centronics parallel 
port, a 25-pin RS-232C serial port, and 
two Telco RJ-11 jacks to connect the 
Cat's internal 300/1 200-bit-per-second 

continued 




Photo by Paul Avis 



OCTOBER 1987 -BYTE 121 



CANON CAT 



1NBR: 



Canon Cat 



Company 

Canon U.S.A. Inc. 

One Canon Plaza 

Lake Success, NY 1 1042-9979 

(515)688-7000 

Size 

10 11 /i 6 by 13 1 / 8 by 1 7% inches; 
17 pounds 

Components 

Processor: 68000 running at 5 MHz 

Memory: 256K bytes 

Mass storage: One 256K-byte internal 

3 1 /2-inch floppy disk drive 

Display: 9-inch black-and-white built-in 

bit-mapped screen 

Keyboard: Compatible with IBM 

Selectric typewriter plus control functions 

on front of keycaps 

I/O interfaces: One Centronics 

parallel port, one RS-232C serial (DB-25) 

port, and two R J-1 1 jacks (one to 

external telephone, one to telephone line) 

Modem: Internal 300/1200 bps 

Software 

Contained in ROM, it includes word 
processing, mail merge, calculation, 
communications, data retrieval, and 
programming in Forth or assembly 
language 

Price 

$1495 



modem to an incoming telephone line and 
an external telephone. The modem uses 
the Hayes command set and can be con- 
figured either for regular ASCII commu- 
nications (including auto-answer) or as a 
simple telephone dialer. 

The machine's motherboard, boasting 
a 5-megahertz 68000 and 256K bytes of 
dynamic RAM, lies flat underneath the 
display. Software for the Cat is built into 
256K bytes of ROM, with an additional 
128K bytes that contains the system's 
built-in spelling checker, a 90,000-word 
version of The American Heritage Dictio- 
nary. Setup parameters and a small per- 
sonal dictionary are stored in 8K bytes of 
CMOS RAM, backed up with a lithium 
battery. 

Putting the Cat to Work 

It's the software for the Cat that really 
shows off Raskin's conceptual touch. The 
basic interface is a simple text editor; you 



can sit down at the keyboard and just start 
typing. Initial defaults are set for a stan- 
dard business page, so a novice can begin 
producing letters and memos almost 
immediately. 

The Cat's full-size keyboard is almost 
identical to those of the IBM Selectric 
typewriter and its competitors. Although 
several new keys have been added to the 
layout, the business typist will notice no 
anomalies. The period and comma keys, 
for example, generate those characters in 
either shifted or unshif ted mode. 

While the tops of the key caps adhere 
to the office standard, computer com- 
mands are printed on the front face of 
many of the keys. The L key is marked 
Disk, the J key is marked Print, and so 
on. You trigger these special functions 
the same way you use Control-key combi- 
nations on a computer keyboard. How- 
ever, the Cat's Control key is labeled 
simply Use Front— meaning use the com- 
mand that is printed on the front of the 
key cap. 

So, for example, to access the context- 
sensitive help screens (48K bytes' 
worth), you press the Use Front key to- 
gether with the N key, which says Explain 
on the front of its key cap. A Setup com- 
mand—the l A/Vi key— lets you change 
system parameters like margins, printer 
types, character set, and so on. An Undo 
command lets you reverse your last 
action. 

The display looks as much like a type- 
writer with a sheet of paper as you can get 
on a CRT screen. Black characters on a 
white background extend upward from a 
white-on-black ruler bar at the bottom of 
the display. Margins are indicated with a 
hollow box superimposed on the ruler 
bar; the effect is similar to a typewriter's 
paper bail. Small symbols below the 
ruler show line spacing, justification, 
memory usage, and so on. 

The Cat holds 160K bytes in RAM, 
which is roughly equivalent to 80 single- 
spaced typewritten pages. You move 
through your data by holding down one of 
two extra keys located in front of the 
spacebar and typing a string of charac- 
ters; the Cat jumps to the next occurrence 
of that string. The right-hand key initiates 
forward searches; the left-hand key, 
backward searches. If the search string 
doesn't find a match, the cursor returns 
to your starting position. In Cat jargon, 
these two keys are called Leap keys. 

Raskin claims that scrolling from the 
top to the bottom of a full 8 V2- by 1 1 -inch 
page takes 8 seconds if you're pressing a 
cursor key, 4 seconds if you're using a 
mouse and scroll bars, and only 2 sec- 
onds with this Leap-key search mecha- 
nism. The disparity becomes more pro- 
nounced if you're trying to move longer 



distances with any precision. 

Aborting a Leap operation is as easy as 
adding a few nonsense characters to the 
search string; the Cat won't be able to 
find it, and you'll be back where you 
started. Raskin suggests slapping your 
hand lightly in the center of the keyboard, 
an action likely to produce the required 
gibberish. 

The Leap keys are also used to high- 
light text. You can delete, copy, or move 
highlighted blocks or check them for 
spelling mistakes with the built-in dictio- 
nary . If a highlighted block happens to be 
a mathematical formula, one keystroke 
calculates the result. The answer appears 
on the screen with a dotted underline; 
highlighting it and hitting a command se- 
quence reveals the original formula, 
which you can then edit and recompute. 

If the highlighted text is a computer 
program written in either Forth or 68000 
assembly language, the Cat executes it. 
You can use a highlighted columnar table 
as the raw data for a full mail merge. 
Since you can assign sequences of com- 
mands mixed with text to each of the nu- 
meric keys at the top of the keyboard (ac- 
cessed with the Use Front key), you can 
create complex macros or store boiler- 
plate text. 

One keystroke also dials a highlighted 
telephone number either for voice com- 
munications or to initiate a session with a 
remote computer; ASCII data simply 
flows into RAM as a long text document, 
which you can then manipulate as you 
would any other text. The incoming data 
stream is buffered in RAM, so if it 
doesn't require constant attention, you 
can move to another document and con- 
tinue working. 

Documents and Disks 

The Cat environment is essentially one 
long text stream broken into pages. The 
software automatically inserts page 
breaks, but you can force a new page or 
start a new document whenever you want 
to. Forcing a document break resets a 
page-number counter to zero. Indepen- 
dent files do not exist per se, but if you 
don't want to use Leap searches to locate 
a specific document, the Cat lets you as- 
sign a title to any region started with a 
forced document break. 

The machine uses a 256K-byte disk 
format, which holds the entire contents of 
the Cat's RAM plus configuration pa- 
rameters, personal additions to the dictio- 
nary, system information, and a bit map 
of the last screen saved to disk. 

There are several advantages to this 
system. First, you're always working in 
RAM, so you're always at full speed. 
Disk operations are reduced to swapping 
the entire load of RAM, which reduces 



122 BYTE- OCTOBER 1987 



CANON CAT 



the risk of error. If you plug a disk into an 
idle Cat, it loads the contents of the disk, 
and you're ready to go. If the disk is un- 
formatted, the Cat beeps at you: Execut- 
ing the Disk command formats the disk 
and starts you off with a clean slate. 

If you pull your disk out of the machine 
without saving, the Cat beeps. Insert the 
disk, and the Cat saves and continues. In- 
sert a blank disk, and the Cat formats and 
saves your current RAM. Insert an al- 
ready-used Cat disk, and the Cat beeps 
again, inquiring if you really want to 
erase it and save the current RAM; you 
have to hit the Disk key again to erase the 
disk. 

Second, because each disk contains all 
configuration information as well as data, 
if you move a disk to another machine, 
you move your environment with you. 
You don't have to hassle with setting up 
parameters every time you switch Cats; 
that's all done automatically. 

Finally, storing the image of the screen 
gives you the impression that load opera- 
tions are extremely fast. It takes about 20 
seconds to load a full disk into RAM, but 
only about 2 seconds to recall the screen 
data. Rather than waiting impatiently as 
the disk drive hums along, you're shown 
your work environment almost immedi- 
ately, and you can use the remaining load 
time to figure out what you're going 
to do. 

Low-Hassle Computing 

The Cat represents an eye-opening new 
approach to data storage and retrieval; it 
will surprise anyone who thought that in- 
terface design was a dying art. Though 
the basic configuration appears on the 
surface to be a flexible word processor, 
the Cat's computational, macro, and pro- 
gramming capabilities make it quite pos- 
sible to build data structures that emulate 
spreadsheets and databases. 

The seeming formlessness of the envi- 
ronment may cause some initial hesita- 
tion if you are accustomed to the com- 
plexity and rigidity of current application 
packages, but it's easy enough to start 
small— with rudimentary typed docu- 
ments—and graduate to more sophisti- 
cated operations as you need them. 
What's more, you've got the whole thing 
in a tidy package that clerical workers and 
executives alike won't find threatening. 

Whether the Canon Cat is truly an "in- 
formation appliance" is hard to say. Its 
$1495 price tag forces it into competition 
with low-cost MS-DOS clones and dis- 
counted Macintoshes— not a good posi- 
tion for a "people's computer." How- 
ever, the Cat's unique interface could 
make it a strong contender; it's certainly 
worth a look, particularly if you're inter- 
ested in low-hassle computing. ■ 




Circle 203 o n Reader Service Card 



OCTOBER 1987 -BYTE 123 



At last, 

real mainframe-based CAD 

power at a PC price. 



Introducing 
MICRO CADAM 
CORNERSTONE" 



Now you can have mainframe CAD 
power on your IBM® PS/2: PC/AT® or 
compatible-for just $2,995* 

If that sounds amazing, it is. Especially 
when you compare MICRO CADAM CORNER- 
STONE to run-of-the-mill PC CAD systems. 

Use it to create complex orthographic 
drawings, then make automatic isometric projec- 
tions with mathematical accuracy. It is a serious 
design tool, made to order for solving multi- 
dimensional problems, and solving them fast. 



It employs the friendly CADAM user 
interface, famous throughout the industry for 
being easy to learn and use-even if you've 
never worked with a CAD system before. You 
can make drawings quickly and naturally, a 
feature you'll appreciate if you've ever strug- 
gled with an older PC-based drafting system. 

MICRO CADAM CORNERSTONE is 
upwardly compatible with the whole CADAM 
family of CAD/CAM/CAE solutions, working 
today on more than 25,000 CADAM terminals 
and used by over 100,000 design and manu- 
facturing professionals worldwide. And it 
features .DXF neutral files, so you can 
exchange data with other PC-based systems. 

Everything you need is included: three- 
button optical mouse, comprehensive user 
guide, your own self-training course-and 60 
days of free dial-up support from CADAM. 



So if you want mainframe power with 
the affordable convenience of a stand alone 
desktop mechanical design system, start at the 
top-with new MICRO CADAM CORNERSTONE. 
At last, real mainframe power at a PC price. 

Tb order, or for more information, 
call CADAM toll-free 800-255-5710. 

MICRO CADAM CORNERSTONE . . . 
The Ultimate PC CAD Production Tool 

£"* 

cfiDflm inc 

A SUBSIDIARY OF LOCKHEED CORPORATION 

Circle 169 on Reader Service Card (Dealers: 170) 



CADAM is a registered trademark and MICRO CADAM CORNERSTONE is a trademark of CADAM INC. lBMand Personal Computer AT 
'Suggested U.S. licensing fee. are registered trademarks and PS/2 s a trademark of International Business Machines Corporation. ©1987 CADAM INC 



Dealer inquiries invited 



HUX UIEU Uieu PU Scale 1.000 Udo 1.6000, -5. OO COPR 1387 CADAM CI. 2 
Sel line of sight / VH section line 




PRODUCT PREVIEW 



Dick Pountain 



The Archimedes A3 10 



Probably the world's fastest personal computer, the Archimedes is also 
the first RISC machine inexpensive enough for home use 




Editor's note: The following is a BYTE 
product preview. It is not a review. We 
provide an advance look at this new prod- 
uct because we feel it is significant. 

t prices that start below 
£1000— approximately 
$1600— Acorn's new Ar- 
chimedes is the first ma- 
chine to offer reduced-in- 
struction-set-computer technology to 
home users . Powered by the ARM (Acorn 
RISC machine) chip, the Archimedes 
comes in two series. The A300 com- 
puters are low-cost machines for school 
and home use that bear the name of the 
BBC, like Acorn's previous 6502-based 
BBC Micro. The A400 series, to be 
launched later this year, will feature fast 
hard disk drives, more memory, and ex- 
pansion slots. The computers in the A400 
series will be professional workstations. 

Acorn's Archimedes 

The machine Acorn lent me for this arti- 
cle was an Archimedes Model A3 10 (see 
photo 1) that features 1 megabyte of 
RAM and a single 3 1 /2-inch floppy disk 
drive. Its floppy disks have a capacity of 
800K bytes. The A3 10 runs a new propri- 
etary operating system called Arthur that 
provides some compatibility with the 
BBC Micro. Arthur is contained in the 
machine's 512K bytes of ROM, along 
with an advanced BASIC interpreter. A 
desktop-style interface is forthcoming. 

The Archimedes supports color graph- 
ics with resolutions up to 640 by 512 
pixels and as many as 256 colors from a 
palette of 4096. It also supports eight 

Dick Pountain is a technical author and 
software consultant living in London, 
England. He can be contacted do BYTE, 
One Phoenix Mill Lane, Peterborough, 
NH 03458. 



channels of stereo sound. It uses no cus- 
tom hardware to support either the graph- 
ics or the sound; sound synthesis and blit- 
ting are done purely by "ARM power. " 

The machine comes standard with a 
parallel printer interface, an RS-423 
serial interface (Acorn has used this stan- 
dard in preference to RS-232C for years 
on the BBC Micro), outputs for compos- 
ite monochrome and analog RGB video, 
and connectors for both stereo head- 
phones and Acorn's proprietary Econet 
network. The computer also sports a 
three-button mouse. 



Acorn offers three monitor choices for 
the Archimedes: a black-and-white mon- 
itor, a medium-resolution color monitor 
capable of 640 by 256 pixels in 256 colors 
(see photo 2), or none at all. The latter 
option lets you supply the NEC Multi- 
Sync or equivalent monitor that you need 
to use the highest-resolution screen mode 
(640 by 512 pixels in 16 colors). 

The A3 10 sells in the U.K. for £875 
with no monitor, £925 with the mono- 
chrome monitor, and £1075 with the 
color monitor. The A305, which in- 

continued 



Photo 1: The Acorn Archimedes A3 10. 




OCTOBER 1987 -BYTE 125 



ARCHIMEDES A3 10 



eludes 512K bytes of RAM, costs £799 
with no monitor, £849 with the mono- 
chrome monitor, and £999 with the color 
monitor. 

The Hard Facts 

The A3 10 is about the same size as an 
IBM PS/2. The 3%-inch floppy disk 
drive slopes so you insert disks at a slight 
downward angle, which is more natural 
for your hand. As soon as the drives are 
available, you should be able to upgrade 
to a second floppy disk drive for £125. 

A detached 102-key keyboard follows 
the IBM Enhanced layout, although two 
or three keys have alternative names for 
compatibility with earlier Acorn ma- 
chines (e.g., the End key is also called 
Copy). The three-button mouse plugs 
into a socket on the keyboard rather than 
on the system unit. 

A single multilayer double-sided 
motherboard contains all the electronics, 
including four large JEDEC (Joint Elec- 
tronic Device Engineering Council) car- 
riers that contain the ARM and its three 
companion chips. Thirty-two RAM chips 
are hidden away under a metal bridge that 
supports the floppy disk drive. These are 
64- by 4-bit devices, 16 soldered and 16 
socketed (the latter would b e empty o n an 
A305). There is also a battery-backed 
256-byte CMOS static RAM that the 
clock/calendar and the operating system 
use to store configuration parameters. 

The motherboard contains a 64-pin 
bus-extender socket. This isn't an expan- 
sion slot per se; it's designed for an op- 
tional backplane board that holds two real 
expansion slots. Acorn calls the cards 
that fit in these slots podules. (The back- 
plane is also used for a controller card if 



you add a hard disk drive to the A3 10.) 

The podules Acorn plans to release in- 
clude network cards (for Econet and Eth- 
ernet), ROM cards containing applica- 
tion software, a MIDI (musical instru- 
ment digital interface) sound card, an 
extended I/O card, an 80186 coprocessor 
to run IBM software, and a floating-point 
coprocessor. 

The A300 and A400 machines diverge 
most sharply in the area of expansion. 
The A300 machines can accept only two 
podules (after you add the optional back- 
plane), and they can't use coprocessors 
that need access to the system data bus. 
The A400 machines come with four 
slots, have Econet built in (thus saving a 
slot), and can accept coprocessors. 

The A3 10 I previewed came with 
Acorn's medium-resolution color moni- 
tor, a straightforward analog RGB unit 
that connects to the Archimedes via a 
SCART socket (also known as a Euro- 
connector) and has the main controls and 
power switch mounted on the front. The 
color quality is excellent, but text defini- 
tion is only adequate at 80 characters per 
line; it is somewhat better than an IBM 
CGA's text definition, but not as good as 
an EGA's. The Archimedes also sup- 
ports 132-character text modes, but I 
found them too tiring for prolonged use; 
they might be usable on an NEC Multi- 
Sync or equivalent monitor. 

A Designer Chip Set 

The architecture of the Archimedes— a 
blend of simplicity and sophistication- 
depends heavily on three peripheral chips 
designed by Acorn specifically to com- 
plement the ARM . The ARM itself is a 
32-bit RISC processor (see "How Much 




Photo 2: An example of the Archimedes screen at 640- by 256- pixel resolution 
with up to 256 colors. 



of a RISC?" by Phillip Robinson in the 
April BYTE and my "BYTE U.K.: The 
Acorn RISC Machine" in the January 
1986 BYTE). Its design deliberately re- 
sembles a 6502 brought up to date with 
short, fast instructions and a superf ast in- 
terrupt response time. 

The three peripheral chips are IOC, 
the I/O controller; VIDC, the video con- 
troller; and MEMC, the memory con- 
troller. Along with the ARM, they are 
fabricated in 2-micron CMOS. By put- 
ting a lot of carefully chosen functionality 
into these three chips, Acorn has created 
a designer chip set to which you need add 
only RAM and disk controllers to make a 
computer. The chips are optimized to 
work together and to exploit the large 
processor-to-memory bandwidth better 
than an assemblage of off-the-shelf chips. 

The IOC chip controls system inter- 
rupts and the system bus. It contains a 
number of timers, a serial keyboard inter- 
face, and logic for talking to peripherals 
like disk controllers and serial chips. 

The VIDC chip contains 46 control 
registers and three 32-bit-wide first-in/ 
first-out buffers for direct-memory-ac- 
cess transfer of video, sound, and cursor 
data. It can control a color display with 1 , 
2, 4, or 8 bits per pixel (i.e., from mono- 
chrome up to 256 colors) and with a 
colored border. It includes an on-chip 16- 
word color-lookup palette (allowing a 
choice of 4096 colors) and three on-chip 
D/A converters to directly drive the guns 
of an RGB monitor. VIDC supports a 
hardware cursor in any of three colors, 
and it permits programmable control over 
the VDU (video display unit) timing pa- 
rameters, including an interlaced mode. 

The pixel rate is programmable to 8, 
12, 16, or 24 megahertz, which translates 
to a maximum of 640 by 256 pixels in 256 
colors or 640 by 512 pixels in 16 colors. 
As an added feature, the 4 bits normally 
supplied to the red D/A converter are out- 
put on separate pins; external logic can 
serialize the bits to give a pixel stream 
four times the chip speed, or up to 96 
MHz. Thus, with a suitable monitor, the 
VIDC chip can support a 1024 by 1024 
high-resolution monochrome display. 

The VIDC chip also supports sound 
synthesis, using a four-word FIFO buffer 
and an 8-bit latch driving a 7-bit D/A 
converter; sound signals are produced 
from the D/A converter output by inte- 
gration and subtraction using external 
logic. The chip can handle from one to 
eight sound channels in stereo, and a ded- 
icated VIDC register controls the stereo- 
image position for each channel. 

The MEMC chip can address and re- 
fresh up to 4 megabytes of dynamic 
RAM, and it translates between logical 

continued 



126 BYTE • OCTOBER 1987 



Better Spreadsheets, 
Rist With Hercules. 



Like to know a secret shared by nearly 
200,000 Hercules RamFont users? Your 
1-2-3, Symphony, Framework or Multiplan* will 
run better on a Hercules Graphics Card Plus or 
Hercules InColor Card. 
And we run them better in a number of ways. 





>lus 



Hercules RamFont lets spreadsheets like 1 -2-3 display nearly 
twice the data with no loss in scrolling speed. 

Display More Data. 

First, you get more data on the screen without 
sacrificing your ability to scroll or move around 
the spreadsheet fast. Hercules' exclusive Ram- 
Font mode lets 1-2-3 and Symphony display 
nearly twice as much data (from 2,000 charac- 
ters to about 3,400) expanding your view from 
80 columns x 25 rows to a full 90x38. Microsoft 
Multiplan's display expands from 80x25 to 90x30 
with the ability to 
toggle between the 
two. And Ashton- 
Tate's Framework 
goes from 80x25 
to 90x43. 

More data on 
screen without a loss 
of scrolling speed 
means you get a more 
functional spread- 
sheet. And you get 
it fast. 

Crisp Graphics. 
Mono & Color. 

Hercules 720x348 graphics is the highest 
popularly supported resolution available for 
IBM PCs/XTs/ATs, and a wealth of compatibles. 

Our industry-standard 720x348 graphics 
mode and RamFont mode are now available for 



both monochrome TTL monitors (Hercules 
Graphics Card Plus) and enhanced color 
"EGA type" and multi-synchronous monitors 
(Hercules InColor Card). 

All of which means that built-in graphics on 
1-2-3, Symphony, Framework II, SuperCalc 4, 
Javelin, Open Access, and Enable will be able to 
run in both mono and full color on either card. 
And so can add-on packages like Microsoft 
Chart, VP Graphics, and Stella Business 
Graphics. 

Compatibility Plus. 

Which brings us to yet another big benefit for 
spreadsheets and graphics. Hercules cards are 
completely compati- 
ble with each other. 
Any monochrome 
standard text, Her- 
cules graphics or 
Hercules RamFont 
compatible program 
(and there are thou- 
sands of them) will 

run in tWO tO Six- Hercules 720x348 resolution is now 

teen Colors On the available in bothmono andcolorfor 
Hercules InColor integrated or add-on graphics programs. 

Card without changing video drivers. 

And that makes moving (or networking) 
between mono and color systems a breeze. 

So, for better spreadsheets ask for Hercules 
with RamFont. We're the graphics cards you can 
count on. 




HERCULES 



Hercules Graphics 
Card Plus 

(For monochrome monitors) 
Includes the three modes 
your software needs most: 

• Standard Text — For thous- 
ands of text-based programs 

• Hercules 720x348 graphics — 
highest popularly supported standard 

• Hercules RamFont — 3 y 72 software 
definable characters improve many popular 
software programs. (Calif or the latest list.), 




Hercules InColor Card 

(For multi-synchronous and enhanced 
color "EGA-type" monitors.) 
Runs all Hercules monochrome software in 2 
colors, most popular software in up to 16 colors 
selected from a palette of 64. 

• Standard Text — All programs run in 2 or 
more colors. 

• Hercules 720x348 graphics in up to 16 colors — 
15% higher resolution than EGA. 

• Hercules RamFont — 3, 072 software definable 
characters in 16 colors up to 12,288 in 2 colors. 



For more information call Hercules toll-free at 
1-800-532-0600 Ext. 304. In Canada, 1-800-323-0601 Ext. 304. 

Hercules 

We run}wir software better: 

Circle 117 on Reader Service Card (Dealers: 118) 



Hercules Computer Technology, 2550 Ninth Street, Berkeley, California 94710;Tech Support: (415) 540-0749; Sales: (415) 540-0212. Hercules, RamFont and InColor are trademarks of 

Hercules Computer Technology. Other products are trademarks of their respective holders. © 1987 Hercules Computer Technology. 

'Multiplan French and German version now available. English version available fall 1987. 



ARCHIMEDES A310 



and physical addresses to give a 32-mega- 
byte logical-address space. It provides 
memory protection with three levels of 
access privilege: supervisor mode, oper- 
ating system mode, and user mode. The 
MEMC also doubles as a DMA control- 
ler to manage the buffers for video, 
sound, and cursor data. Finally, it pro- 
vides the processor-clock signal and all 
other system-timing signals; thus, it is the 
glue that holds the four chips together. 

A Map of the Interior 

In the Archimedes machines, the MEMC 
"sits" on the address bus, mapping all 
ARM 26-bit addresses into 22-bit virtual 
addresses and arbitrating between the 
ARM and the VIDC during DMA trans- 
fer for video, cursor, or sound data. The 
Archimedes has no dedicated video 
RAM; the screen buffer can exist in any 
portion of RAM (you can program its 
start address through the MEMC). None 
of the RAM needs to be dual-ported; the 
VIDC can always get DMA access to the 
screen by requesting it through the 
MEMC. The screen buffer is contiguous, 
not bit-plane-organized, and the VIDC 
simply groups adjacent bits together ac- 
cording to the color mode selected. 

The MEMC supports page-mode 
memory access for greater speed when 
accessing adjacent addresses. A slow 
memory cycle sets the row and column 
addresses of the RAM. After that, fast 
cycles in which the MEMC only needs to 
alter the column address are permitted. 
Up to three fast cycles can occur before 
another slow cycle is required. The 
MEMC actually clocks the ARM at twin 
speeds: 4 MHz for the slow cycles and 8 
MHz for the fast cycles. 

When the MEMC receives a nonse- 
quential-read request, it cancels the 8- 





Read Write 


3FFFFFFH 

3400000H 
3000000H 

2400000H 

2000000H 
0000000H 




ROM 


MEMC 
VIDC 


Memory-mapped I/O 


Physical RAM 
(theoretically) 


Physical RAM 
with current MEMC 


Logical RAM 







Figure 1: Memory mapping on the 
Archimedes. 



MHz cycles. It always reads ROM at 4 
MHz, which gives you a speed bonus for 
working in RAM. Since a large percent- 
age of computer operations take place on 
sequential data (e.g., fetching most pro- 
gram instructions or moving a block of 
screen data), you can nearly double the 
effective throughput without using expen- 
sive static RAM. The DRAMs on the 
A3 10 I used had a 120-nanosecond ac- 
cess time. Since most ARM instructions 
execute in one cycle, the processing rate 
on mixed data probably exceeds 6 million 
instructions per second. 

The VIDC is optimized to take advan- 
tage of the MEMC's page-mode access. 
The VIDC loads video data into its FIFO 
buffer four 32-bit words at a time. For 
most video accesses, this means the first 
word transfers at 4 MHz and the next 
three at 8 MHz. 

You can, in principle, use the MEMC 
to provide a disk-based, demand-paged 
virtual memory system, or to provide 
hardware memory protection for multi- 
tasking by stopping one task from inter- 
fering with another's memory. However, 
Arthur uses it more simply. 

The ARM can address 64 megabytes 
with its 26-bit address bus. The MEMC 
maps this space as shown in figure 1. 
Only the bottom 32 megabytes of logical- 
ly mapped RAM are available in user 
mode; all the higher addresses are re- 
stricted to supervisor and operating sys- 
tem modes. You can address up to 12 
megabytes of ROM, of which the 512K- 
byte built-in operating system takes a por- 
tion. In principle, 16 megabytes of physi- 
cal RAM could be present, but the 
current MEMC chip restricts this to the 
lower 4 megabytes (a limitation of the 
MEMC chip rather than the ARM). 

The logical memory mapping provides 
great programming flexibility. The oper- 
ating system can use addresses that are 
guaranteed regardless of how much real 
memory the machine contains. For ex- 
ample, the video-screen memory sits at 
the top of user memory (i.e., the thirty- 
second megabyte of the bottom 32 mega- 
bytes of logically mapped memory), and 
it grows downward as more is needed for 
the higher screen modes. This address re- 
mains the same on all models, from the 
512K-byte A305 to the 4-megabyte 
A440. The system heap can allocate and 
reclaim pieces of memory from any- 
where in physical memory, with no prob- 
lems about loading order; contrast this 
with MS-DOS, where you can't reclaim 
freed memory stuck below a resident pro- 
gram without rebooting. 

Operating With Arthur 

Arthur is new but derives much of its de- 
sign from the BBC Micro's 6502 operat- 



ing system Acorn wrote in 1979. It is 
quite different from the CP/M and MS- 
DOS operating systems in philosophy. 

For a start, Arthur segregates the ma- 
chine operating system (MOS) proper 
from the disk filing system. The Archi- 
medes comes with two alternative filing 
systems: the ADFS (advanced disk filing 
system), which supports both 640K- and 
800K-byte floppy disk formats, and the 
ANFS (advanced network filing system), 
which supports file sharing via Econet. 
You change filing systems merely by 
loading a module from disk (i.e., type 
ADFS or NET. at the MOS prompt). 

Under Arthur, all files consist of a 
stream of bytes on the disk with no head- 
er; filename extensions are not sup- 
ported. File-type information determines 
how Arthur treats a file; this information 
is stored not in the file itself but in 64 bits 
in the file's directory entry. Arthur uses 
these 64 bits in various ways. For execut- 
able binary files, they are two 32-bit ad- 
dresses: the load address and the execu- 
tion address. Programs can load and run 
from anywhere in memory, and many 
programs may be coresident. 

Although Arthur is not a multitasking 
operating system, the memory manage- 
ment scheme makes it easy to add multi- 
task scheduling at the application level; 
Acorn's Twin editor uses this scheme to 
allow compilers to run in the back- 
ground. Arthur also manages storage for 
graphics and sound data. 

The command-line interface, which 
has an asterisk prompt, understands the 
same sort of commands as other operat- 
ing systems, such as those needed to man- 
age disk drives and files and support hier- 
archical directories like those in later 
versions of MS-DOS. The actual com- 
mands, however, are different, but you 
can change them to the familiar com- 
mands with a special set alias facility if 
you wish. 

If command-line interfaces make you 
nervous, the Desktop front-end program 
conceals Arthur. For now, you must boot 
this program from disk. When it is fin- 
ished, however, it will live in ROM. The 
Desktop looks like a cross between GEM 
and Windows. The copy I reviewed was 
in an early stage of development, but, 
even so, its response time was superior to 
the Macintosh's or GEM's, and it already 
lets you open subdirectory icons and 
launch programs by double-clicking. You 
can't yet pass parameters to a clicked pro- 
gram or pop desk accessories up from in- 
side an application, but these and other 
features are coming. 

The operating system also contains a 
powerful BASIC-like command language 
that you can use to create macros and new 

continued 



128 BYTE • OCTOBER 1987 







No OtiierHrtable PC 
Can MakeThis Statement 



At 6.4 pounds, the newTlOOO is the 
lightest portable PC in the world. 

Ks a good ten pounds lighter than 
some "portables." And you know how it feels 
to carry around ten extra pounds. 

Yet within its diminutive footprint (if s 
about a foot wide and not even that deep) 
lies all the power of a desktop PC. 

Included are 512KBof RAM and a 
built-in 720KB 3% "floppy drive, plus MS- 
DOS® 2.11 in ROM. 

It comes with a new supertwist screen 
thafs adjustable a full 180° and folds flat 
when you want to add a CRT 

The ffiM®-compatibleT1000 offers 
you some very intelligent options. Like a 
numeric keypad and a 1200 bps Hayes® 



compatible internal modem. Or an expan- 
sion card that will improve its memory by 
another 768KB. 

All in all, if s the perfect way to go to 
work without going to work. Or to get home 
early, even when youll be working late. 

Call 1-800-457-7777 for theToshiba 
computer and printer dealer nearest you. 
And see how it feels to pick up the most 
portable portable in 
the world. Nothing is 
as easy to take. 

Except, maybe, 
its price. 



MS-DOS is a registered trademark of Microsoft 
Corporation. Mayes is a registered trademark 
of Hayes Corporation. IBM is a registered 
trademark of Interna tiona! 
Business Machines 
Corporation 



In Touch with Tomorrow 

TOSHIBA 

Toshiba America Inc.. Information Systems Division 




ARCHIMEDES A310 



Table 1: BYTE BASIC benchmarks (times are in 
results are preliminary. 

Write Read 


seconds); the Archimedes 
Sieve Calculations 


Archimedes A310 

ROM BASIC V 
RAM BASIC V 
Compaq Deskpro 386 


15.8 
15.8 
25.0 


15.6 
15.6 
24.0 


7.9 

6.0 

21.0 


3.2 
2.4 
6.8 



Table 2: BYTE C benchmarks (times are in seconds); the Archimedes 


results are preliminary. [ Editor 's note. 


We have omitted the Float benchmark 


in C because the ARM C compiler essentially optimizes it to 


nothing.] 


Acorn 


Compaq 


Mac SE with 


Archimedes A31 Deskpro 386 


HyperCharger 


Fib 52.4 


53.1 


71.6 


Sieve 5.7 


6.0 


14.9 


Sort 10.0 


5.6 


20.6 


Savage 91 .2 


21.5 


8.8 


Dhrystones per second 4901 


3748 


2176 



Table 3: BYTE C benchmarks 
that I have converted into BASIC 
V to find out what difference 
compilation makes (times are in 
seconds). 

Fib Savage 

Archimedes A310 

ROM BASIC V 2868.4 45.5 
RAM BASIC V 2174.1 32.8 



commands and define environment 
variables. 

The only thing I missed in Arthur was 
a good general-purpose system editor. 
The BASIC editor is powerful, but it 
can't open batch or text files. Acorn has a 
fast and powerful editor called Twin (so- 
called because it can split the screen into 
two windows), but you have to buy this 
separately as part of the Programmer's 
Toolkit. 

A WeJcome disk comes with the Archi- 
medes; it contains the Desktop program, 
some tutorials, and a number of demon- 
stration programs (including some 
games) that illustrate the power of the 
ARM. The Welcome disk also contains 
various utilities, like 65Arthur, a soft- 
ware 6502 emulator that lets many pro- 
grams for the BBC Micro run on the 
Archimedes. 

How Fast Is It? 

Acorn claims that the Archimedes is the 
fastest personal computer in the world, 
which makes the task of benchmarking it 
more than usually sensitive. I ran the 



BYTE BASIC benchmark tests twice, 
once from ROM and once from RAM, 
because of the difference in access speed 
on this machine (see table 1). I ran the 
ROM set in ARM BBC BASIC V (the 
BASIC built into the Archimedes ROM). 
The RAM set used the RAM-resident 
version of BASIC V that comes on the 
Welcome disk. 

I tested the BYTE C benchmarks (see 
"A Closer Look" in the September 
BYTE) using Acorn's ARM C compiler 
(see table 2). I also ran the Fibonacci and 
Savage benchmarks in BASIC V to find 
out what difference compilation makes 
(see table 3). While Fibonacci takes much 
longer in BASIC V, Savage runs twice as 
fast in BASIC V as it does in C on the Ar- 
chimedes because the C compiler uses 
less efficient (but, at 64 bits, more pre- 
cise) IEEE emulation routines. 

The results suggest that Acorn's claim 
is not idle boasting, although, as with all 
benchmarks, there are wins and losses, 
and none of them tells the whole story. 
What I can say with certainty is that the 
Archimedes running C programs without 
a math coprocessor rivals the Compaq 
Deskpro 386, a 16-MHz 80386 machine 
with an 8-MHz 80287, and comfortably 
outpaces a Macintosh SE with a Hyper- 
Charger, a 15.67-MHz 68020 with a 
7.83-MHz 68881 , on all but the floating- 
point-intensive Savage benchmark (the 
Compaq also beats the Archimedes on 
the Sort). Even more remarkably, the 
Savage benchmark in interpreted BASIC 
V in RAM on the Archimedes takes only 
half again as much time as it takes in 
compiled C on the Deskpro 386 with a 
math coprocessor. 



Benchmarks are not everything, but 
the experience of using the Archimedes 
tells me that on many untested tasks, like 
writing to the screen, it is far faster than 
anything else I've seen. If I had to take a 
stand on benchmark figures alone, I 
would look at the Dhrystone, which is the 
most general-purpose test (even though it 
doesn't test floating point). The Archi- 
medes runs 3 1 percent more Dhrystones 
per second than a Compaq Deskpro 386. 

It's a Winner! 

The Archimedes really does offer RISC 
power within the budget of the serious 
home user. What's more, it is extraordi- 
narily inexpensive compared to its only 
serious competitors, the Macintosh II and 
the various 80386 machines. 

The Archimedes really does offer 
RISC power to the home user. Its color 
graphics rival those of the Macintosh II 
and the IBM VGA, and they far exceed 
existing IBM standards. It's a boon to sci- 
entists and engineers who need to write 
their own high-performance software be- 
cause it is no more difficult to program 
than the old Apple II. However, when 
provided with a hard disk drive and suit- 
able applications, it also makes an excel- 
lent vehicle for desktop publishing and 
workstation roles. 

Cynics can fairly point out that since 
the Archimedes lacks either an Intel or a 
Motorola microprocessor, it bucks the in- 
dustry standards and lacks a software 
base. But there are times in computer 
evolution when you must make a quan- 
tum leap and leave existing standards be- 
hind to advance the technology; Apple 
did this when it came out with the Macin- 
tosh, and Commodore did it— rather less 
successfully— when it came out with the 
Amiga. I believe that the Archimedes is 
such an attractive hardware package— at 
such an attractive price— and so easy to 
write for compared to the Macintosh, 
Amiga, or Atari ST (thanks to its mem- 
ory management hardware), that it will 
quickly promote a substantial base of 
software. 

We should also remember that Acorn is 
owned by Olivetti, the most successful 
computer firm in Europe— and by no 
means negligible in the U.S., thanks to its 
deal with AT&T. The Acorn people have 
not finalized their plans for selling the 
Archimedes in the U.S., and it's not clear 
whose name will be on the machine when 
they do. The Archimedes is on sale now 
in the U.K., and you can get more infor- 
mation on it from Acorn Research Centre 
(5 Palo Alto Square, Suite 910, 3000 El 
Camino Real, Palo Alto, CA 94306, 
(415) 424- 1 1 14). I'm no Wall Street ana- 
lyst, but my programmer's instinct tells 
me it's a winner. ■ 



130 BYTE- OCTOBER 1987 



*We £ ) eleven, /4e{v<z*teed *7ec6*toloyty 




Am^NCE TO THE 
NEXT LEVEL 



ATI-386 

The ATI-386 AT board is a high-performance system board that provides 
the primary elements for building advanced personal computers. The 
board is functionally compatible with the system board in the IBM AT. 
However, it contains an 80386 microprocessor, 32-bit access to data and 
other features that give it over twice the performance of an 8MHz IBM AT. 

Other features include downward compatibility with IBM 8 MHz AT, one 
MByte 32-bit on-board memory expandable to 16 MByte, a socket for the 
Intel 80387 math co-processor and more. 

ATI-386-64 

The ATI-386/64 Board features the same specifications as the ATI-386 AT 
board as well as on-board 64 KByte cache memory, cacheable to a full 16 
MByte memory space to achieve nearly zero-wait state operation at full 
speed. 

ATI-6/I2 System 286 

The ATI System 286-12 runs at an amazing speed of 12MHz. That's 20% 
faster than the IBM* Personal System 2 50/60. 

And to protect your existing investment, we've built-in a normal-speed 
mode as well. A few simple keystrokes will switch you to 6MHz operation 
mode, when necessary. 

Combine the ATI System 286-12 with our MegaGraph Plus EGA board to 
get superb graphics performance. Or expand your system's main memory 
with the ATI Multifunction card. Expand from single-user to multi-user 
system with up to five disk drive slots and eight expansion slots. 6/8 & 6/10 
MHz systems also available. 



12 MHz Multifunction Card 

Our versatile multifunction card features a system bus of 12MHz. Sockets 
on board to handle up to 2.5 MBytes of memory, one serial port, one 
parallel port, one game port. Optional second serial port available. 

Professional Image Board 

The new Professional Image Board is a PC board which allows an ordinary 
home video camera (color or black-and-white) to be plugged into an IBM 
PC/XT/AT personal computers or IBM compatibles. Now, live, fast action 
scenes can be instantly captured in full color and frozen. The frozen 
pictures can be stored on a floppy or hard disk. The frozen pictures can 
also be transmitted to any remote computer in the world via modem or 
network. 



ATT Alronics 

International Inc. 

1830McCandlessDr. Milpitas CA, 95035 USA 

(408) 942-3344 TLX: 510-600-6093 FAX: (408) 942-1674 



Southern California Contact: CNT Marketing 

16580 Harbor Blvd., Ste. J, Fountain Valley, CA 92780 (714) 839-3724 

Circle 23 on Reader Service Card 

IBM & ATronics are trademarks of their respective companies. 




The American 
Success Story: 




Basic System Features: 

• 80286 16-Bit Intel CPU /• AT Style Keyboard 

• 512K Motherboard Expandable to 1MB 
•8 Slots (2 8 Bit, 6 16 Bit) 

• 1.2MB Floppy Drive 

• Clock Calendar with Battery Backup 

• 195 Watt Power Supply 1 1 0/220 V Switchable 

• Fully Compatible High Speed AMI BIOS 

• Full 200 Page Users Guide in a Glossy Binder 

• Limited One Year Warranty 

• Fully Open Front Face Panel 

• Our Systems are UL Approved 

Option: 

• 2 Hard Disk/2 Floppy Disk Controller /• 360KB Floppy Drive 

• 1.44MB 3 1/2" and 720K 3 1/2" Drive/* Enhanced Keyboard 



Dealers and Corporate inquiries are welcome 

(415) 490-2201 fax 490 2687 (24 hrs) 

Tech Support Call (415) 683-6580 

IRM AT. Xenix. AutoCnd. MSDOS. PC DOS. Nmdl Network. Ik-rcuk-s. dBASR I runs. Sidekick. :iml Symphony 
art- registered trademarks of their respective companies 



CLUB American Technologies has defined the standards for all 
other manufacturers. We provide the highest quality and finest 
workmanship in our products. We have the most qualified technical 
support and customer service in the country. Whether you are a 
corporate buyer or just want a reliable, made in the U.S.A. machine 
for yourself, call us and find out why we have shipped more than 
25,000 machines all over the United State. 

Call for our MAC Product 

Corporate Buyer call for Corporate Desk 
Dealers are welcome 
University P.O.'s are welcome 
Quantity Discount are available 1 



Mt>n - iTi 


T-30— 6:30 (West Const) 


Mtm - F'ri 


]QM) — 9:30 (Fast Coast) 


Saturdiy 


1(1:3(1— 3:00 (VC'i-st Coast) 


S;iuird:iy 


1:30- 6:00 (Fast Toast) 



American Technologies, Inc. 

3401 W. Warren Avenue, Fremont California 94539 



132 BYTE- OCTOBER 1987 



Once upon a time, American led the world 
in innovation, quality, engineering, and 
manufacturing with names like Edison, 
Ford, and Bell... 
Once Again America returns: 




" If Imitation is the 
sincerest form of flattery, 
the CLUB 286 pays the IBM 
AT a heartfelt compliment. 
The only failing of the 
(CLUB 286) is that it 
imitates the IBM too 
accurately; ...and you can't 
beat that..." 

KarlKoessel PC World 
December 1986 



Software Compatibility 

Xenix, AutoCad, MSDOS, 
PC DOS, Novell Network, 
dBASE, Lotus, Sidekick, 
Symphony and others... 



\ - \ - 1- I 




a' : ' r »■■ if i i ' i i i }■ \-\ \ v \.\m\ 

J II' ] l'' -| f | 1 I \mimmm\ U J , \ : "W\ 

I J 1 111 1 I I \ '—' :^M \ \ \ V 



Monitors Optional 



CLUB 286 8MHz Mono System 

• Basic System Features Plus 

• Fully Configured and Tested 

• High Resolution 800 x 350. 
Hercules Compatible 1 32 Columns 

• Monographics Card, Printer Port 

• High Resolution 800 x 350 IBM Quality Monitor 



$995 




With a 20MB 1 /2 HT 65ms Drive $ 1 2 9 5 
With a 30MB Full H T 39ms Drive $ 1 49 5 



CLUB 286 8MHz EGA System 



$1399 



• Basic System Features Plus 

• Fully Configured and Tested 

• High Resolution Micro EGA Card 

• Capable of Mono, Color and EGA 

• IBM Quality Monitor (EGA/CGA), 14" Nonglare Screen 

With a 20MB 1/2 HT 65ms Hard Drive $1 699 
With a 30MB Full HT 39ms Hard Drive $ 1 899 



CLUB 286 (12MHz Thruput 



put) Mono System it "1 £/} Q 



• Basic System Features Plus /• A 80286-1 CPU 

• Fully Configured and Tested /• Hercules Compatible Graphics 132 Columns 

• Video Adapter with Printer Port 

• A High Resolution IBM Quality 800 x 350 Monochrome Monitor 

• 2 Serials, 1 Parallel Port /• Wait State Insertible Slots 

• 8/10 Keyboard Selectability /• 12MHz Thruput 



With a 30MB Full HT 

39ms Hard Disk $ 2 1 2 9 



With a 40MB 1/2 HT 39ms Hard Disk $2200 
With a 80MB Full HT 23ms Hard Disk $2499 



CLUB 286 (12MHz Thruput) EGA System 

• Basic System Features Plus / • 80286-1 CPU 

• High Resolution 16 Color EGA Card with Mono and RGB Output 

• High Resolution EGA Monitor, 14" Nonglare IBM Quality 

• Wait State Insertible Slots /• 2 Serials/ 1 Parallel Port 

• 8/10 Keyboard Selectibility /• 12MHz Thruput 



$1995 



With a 30MB Full HT 
39msHardDisk $2490 



With a 40MB 1 /2 HT 39ms Hard Disk $2540 
With a 80MB Full HT 23ms Hard Disk $2870 



Circle 51 on Reader Service Card 



OCTOBER 1987 • B Y T E 133 



12 MHz 
SPEED! 



For your PC, XT, AT 

or compatible. 



a)rtCACHE-286 T ' 

The Fastest PC Accelerator! 

FastCACHE-286j is the fastest 
half card accelerator ever built. It 
is also the first to have an on-board 
8088 socket, built-in high-speed 80287 
clock, and software controlled slow and 
fast 80286 modes. FastCACHE-286 acceler- 
ates the IBM PC} XT and compatibles. It can be 
purchased in either a 9 or 1 2 MHz version starting 
at $399 (9 MHz). ]The card combines the best features of our 
286TurboCACHE™ (PC Magazine "Editor's Choice") with 
the ability to run asynchronously. This frees it from the 7.2 
MHz frequency barrier of synchronous cache cards and 
enables the board to run on dual-speed motherboards and 
PCs such as the Zenith 1 58 or the Leading Edge Model D! 
The board includes MicroWay's DCache software and is 
compatible with j all PC software and EMS, EEMS, and 
EGA. 



Steve Shuttle 

SI MS C (sec) Regen (sec) Price 

>C 1.0 5.88 100(12)* 

9 MHz FastCACHE-286 7.1 1.32 28(7)* $399 

12 MHz FastCACHE-286 10.3 .93 22(6)* $599 



Times in parentheses are with an 8087 or 80287. 



287TurboPLUS™ 

Speeds Up your 80287 
and your 80286! 

287TurboPLUS adds a new 
feature to PC Magazine Editor's 
Choice - 287Turbo. 287Turbo 

increases 80287 speed from the 4 MHz used by IBM to 1 
or 1 2 MHz. It has become an industry standard used in the 
AT, clones and the 386 Deskpro. 287TurboPLUS lets a user 
control the 80286 clock speed of the AT motherboard. 
Typical ATs will run up to 9 or 1 MHz. When used with 1 00 
nsec DRAM and an optional high speed 80286 it is possible 
to get 1 1 MHz speed from an AT. 287TurboPLUS includes a 
1 or 1 2 MHz tested 80287, 80287 diagnostic software and 
easily installs in your 80287 socket 



MICROWAY . . . Respected throughout the industry for high quality engineering, service and technical support. 

Dealer, VAR, university and corporate inquiries are welcome. 



icrb 



The World Leader in 8087 Support 



P.O. Box 79, Kingston, Mass. 02364 USA (617) 746-7341 
32 High St, Kingston-Upon-Thames, England, 01-541-5466 

jrbo, 287TurtooPLUS and 286TurboCACHE are trademarks of MicroWay, Inc. MicroWay is a registered trademark of Microway, Inc. 



CIARCIA'S CIRCUIT CELLAR 



Steve Ciarcia 



Part 2: Schematic 



Build the Circuit Cellar 
AT Computer 

Steve reveals the circuitry for his AT on a board 




Last month, we took a 
close look at the structure 
I of the IBM PC AT com- 
I puter, and I introduced the 
highly integrated POACH 
(PC on a chip) set from 
ZyMOS that makes an AT on a board a 
feasible project. This month, you'll see 
that, aside from the choice of board lay- 
out and perhaps memory configuration, 
the task is done. [Editor's note: You'll 
want to keep last month's article on 
hand. Many AT circuit details Steve talks 
about this month were described there.] 
Since most functions are already part of 
the POACH set, the remaining circuitry 
must follow strict guidelines to remain 
100 percent compatible. In essence, the 
rest of the design is just "cookbook" 
stuff and— as you can see from the circuit 
schematic for CCAT in figure 1 —is fairly 
simple. 

Inside CCAT 

The CCAT is designed to run with either 
an 8- or 10-megahertz system clock, de- 
pending upon which 80286 chip is used 
(-8 or -10). POACH1 generates both 
PROCCLK and the system clock 
(SYSCLK) from a 16- or 20-MHz crystal 
connected across pins 26 and 27. 

POACH 1 requires a 32.768-kilohertz 
time base (CCROSC) for the 6818 clock/ 
calendar/RAM. A CMOS 74HC04 in- 
verter is used as the oscillator amplifier. 
The POACH1 6818 requires only 10 
microamperes of standby current. Bat- 

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 develop- 
ment. The author of several books on 
electronics, he can be reached at P. O. 
Box 582, Glastonbury, CT 06033. 



tery power for the 6818 is connected to 
pin 32 of POACH 1. 

The local data bus (DO through D15) 
runs between the 80286, 80287, and 
POACH3-D. Local address lines Al 
through A23 go directly to POACH3-A, 
but since the POACH2 memory mapper 
also generates A 17 through A23 during 
direct-memory-access operations, those 
address lines are also connected to 
POACH2. 

The system address bus lines SA1 
through SA 19 are generated by POACH3- 
A. Normally, CPUHLDA and ALE con- 
trol system bus activity. +ACK from 
POACH2 gates SA17 through SA19 dur- 
ing DMA operations. SAO is generated 
directly from A0 by POACH1. POACH1 
also produces +CNTL OFF, XA0, 
LSDOE, MSDOE, and DI7R, which are 
required gate and direction control for the 
system data bus. 

Memory-address and data-bus genera- 
tion is a convoluted affair if you try to 
handle it with discrete logic, but it be- 
comes straightforward for the CCAT 
project. POACH3-A generates the multi- 
plexed MAO through MA8 address lines 
that are controlled by + REFRESH and 



GA-2RAS. The memory data bus (MD0 
through MD15) connects POACH3-D di- 
rectly to the dynamic RAMs and ROM. 
XA0 gates the least significant byte; 
XBHE gates the most significant byte. 
-XMEMR and DIRMS control direction; 
when both signals are high, data flow is 
from memory to system. 

Primarily, the X address bus runs be- 
tween POACH2, POACH3-A, and ROM. 
POACH2 generates -DMAAEN, which 
POACH3-A uses to control direction on 
the X bus during DMA operations. X 
data flows between POACH1, POACH2, 
the 8742 keyboard processor, and 
POACH3-D. DIR245 and -RDXDB con- 
trol direction on the bus, and GATE245 
and + ACK gate control the data flow. 

The overall effect of integration on the 
AT is obvious when you view design 
complexity (including chip count) and 
board space. But some very subtle bene- 
fits don't immediately come to mind. 

For instance, EMI (electromagnetic 
interference) and RFI (radio frequency 
interference) decrease dramatically. 
Every trace running across the circuit 
board is an antenna that radiates more ef- 

continued 



Photo 1: The Circuit Cellar AT computer: an AT clone on a board. 




Copyright © 1987 Steven A. Ciarcia. All rights reserved. 



OCTOBER 1987 • B Y T E 135 



CIRCUIT CELLAR 



IDENTIFICATION CODE: 

11 (20) = IC PIN NUMBER. (IC FUNCTION 
NUMBER) 



NUMBERS INSIDE 
NUMBERS 

NUMBERS INSIDE IC , 

ARE PIN NUMBERS 
(BUS EXITS ONLY) 



BUS ARE ALSO FUNCTION 



. 


Z 




„ 




m 


II 


- 


h 


i^ 


— 


~ 


u> 


<NJ 


o 

to 


cr 




O 


to 


to 
o 


X 


2 


o 


< 


s 


£ 




CD 


o 


u 


CD 


to 


o 


1 


X 


a 

r 


fr 











DRQ 
(SH3) 



XAO -XA16 



IRQ r 



(SH3) 



IRQ 3-7. 9-12. 14. 15 



£ 



0-15 



O 



C30 
lOpF 



+ 5V 



5-8. 11. 12. 
14-23 



IC 18 

80287 



7 \M * 

10,30 



NPS1 
RESET 

BUSY 
ERROR 



/F 



-)h 



/77 



"32 |3: 



f— IDH 

Y2 

12MHz 
l C31 
30pF 



r=> 



_L C38 
'T X 0.047 M F 



+ 5V 



;R53 
' 10K 



+5V 



; R26 

>10K 



D 



D0-D15 w 
(SH2) m 







IC17 
80286 



M/10 

RESET 

BUSY 

INTR 



NMI 
HOLD 



f5V 

L 



7.8.10 

12-28. 
32. 33 



35 34 30 31 45 46 53 52 



OUJ 

<< 



to o 

1-7. 

81-84 

-NPCS 

+RESET 287 

-BUSY 

-ERROR 

BATT 

CCRRST 

CCROSC 

-PWR GOOD 

PROC CLK 

-READY 

X3 

X4 

SI 

SO 

CPU HLDA 

A0 

Al 

NA20 



M/10 
RES CPU 
-BUSY 286 
INTR 



IC 19 

P0ACH1 



-MEMW 
-MEMR 



V DD2 
V DD1 

V SS1 
V SS2 
V SS3 



67-74 



-«-#- 



£R18 
>10K 

+ 5V 

_4 



XD0 -XD7 



LOCAL ADDRESS Al - A 23 













N 


„ 


™ 


CM 




X 










to 

UJ 


X 

to 





LO 


in 





rr 


h- 


III 


s 







z 


H 




co 







< 






a 


+ 


O 


Q 



Figure 1: The CCAT circuit schematic. 



136 BYTE- OCTOBER 1 987 



CIRCUIT CELLAR 







jl 




4 4 






























-. 


— 


i2 


<*> 


•~ 


Ci 


C\j 


w 


ir 


X 

00 


^ 


a 


a: 


% 




i- 


UJ 


X 

o 

o 


tr 


2 


7 


a 
a. 

a 


< 

2 


U. 

UJ 

or 


X 

a 

o 


UJ 

S 

X 


UJ 
5 
X 










" 







+ 5V 



+ 5V 



> R8 

► 10K 



> R9 

► 10K 



XAO - XA16 



r=> 



XA0-XA16 




J A1-A23(SH2) 



OCTOBER 1987 • B Y T E 137 



CIRCUIT CELLAR 






sh3 'C 



10 

/T~1 



<2. 



B 11-17 

IC1 
74ALS245 

A 3-9 OIR 



TWT~ 



. 19 



MASTER 
(SH2.3) 



LOCAL ADDRESS A17-A23 



{SH 1 ) A17-A23 



+ 5V 



L2. 



i 1 r i 3 

7 8 9 



-5.16. 
17 (0.6) 



IC2 
82S147 






J18 
1 2 3 



RT 




(SHI) DT/R > 
(SH 1) MSDEN > 
(SHI) LSDEN y 

(SHI)f 



LOCAL DATA 



-POWER 
GOOD 



CCROSC 



Figure 1: Continued. 



138 BYTE- OCTOBER 1987 



CIRCUIT CELLAR 



T^SL 



IC12 
74F32 



-DPCK 
fSHl) 



(SHI) [ 



LOCAL ADDRESS 



+ 5V 
A 



<*> 



(SHI) (SHI) (SHI) (SHI) 
M/IO BHE ALE CPU HLDA 

V V V V 



<2. 



28-30 -LCSCROM 2-9, 

11-18 

+ REFRESH 

-CSCROM 



M/IO BHE ALE CPU HLDA 



IC21 
P0ACH3 
ADDRESS MODE 



SAO 

- DMAAEN 

+ ACK 

SM/Jo 

SBHE 



V S S 



O r-« <M 

< < < 

2 2 2 



*» in to rv CO 
< < < <t < 
2 2X22 




SA1-SA19 SYSTEM ADDRESS 



33&{9) 



+5V 
A 



0,1234567 



, |«| |» AO Al A2 A3 A4 A5 A6 A7 A8 
lo < l<r 



9 



DD 

vss 



TM4256ELS-12 
256K-9DRAM 



OOOOOOOO 
\HD9Q9daoaaaaa 



12 3 4 5 6 7 



w, ia> ico AO Al A2 A3 A4 A5 A6 A7 A8 

< en \< 
o \<t \(r 

TM4256ELS-12 
256K-9DRAM 



oo r*. «> «n «» "J <m _ 
— OOoOOOoa 

WD9Q9QOQOO o o o 




: 



15 14 13 12 11 10 9 8 



78 48 47 46 45 44 43 42 41 



7 6 5 4 3 2 10 



79 77 27 26 25 24 23 22 21 20 



AT 




z a a a a a a o 



MD0 



= 5-2222222 







CNTLOFF 
DT/R 
MSDEN 
LSDEN 

2-9. 
11-18 



IC22 
P0ACH3 
DATA MODE 



SAO 

SBHE 

+ ACK 

XBHE 

-DMAAEN 

-XMEMR 

DIR 245 

GATE 245 

-RDXDB 



f 5V 

* L-l 



TT 



SYSTEM DATA 






OCTOBER 1987 • B Y T E 139 



CIRCUIT CELLAR 




"*) (SHI 



Figure 1: Continued. 



140 BYTE • OCTOBER 1987 



CIRCUIT CELLAR 



fectively as the length increases, particu- 
larly if it becomes tuned to the carrying 
frequency. Integration collapses trace 
lengths, subsequently reducing emis- 
sions. Also, since the POACH set is 
CMOS, power requirements are substan- 
tially reduced. The original IBM PC AT 
motherboard drained 5 amperes. The 
CCAT requires less than 1 A (typically, 
about 0.8) at 5 volts. 

The final configuration agreed upon 
for the CCAT was a six-layer printed cir- 
cuit board with an AT expansion-board 
form factor: 4.8 inches high by 13.12 
inches long (see photo 1). The four 84- 
pin packages in the center right portion of 
the board are the POACH chips. To their 
left are the three processors in the sys- 
tem: the 8742 keyboard controller, the 
80287 math coprocessor, and the 80286 
16-bit microprocessor. The Award Soft- 
ware ROM BIOS is located in the two 
sockets on the lower left portion of the 
board, labeled Low and High for low byte 
and high byte, respectively. The 16-MHz 
crystal, which provides clocking for the 
whole system, lies between the 8742 and 
POACH 1. 

Power, ground, system-address, data, 
and control signals are available at the 
edge connectors (see figure 2). These 
edge connectors follow the standard pin- 
out of the IBM PC AT bus. The speaker 
and external backup-battery connections 
are located on the upper right edge of the 
card, immediately above the on-board 
battery. Both are 4-pin Berg strips with 
pin assignments, as shown in table 1 . 

A hardware clone of an AT is not con- 
sidered compatible unless its operating 
system and application software also 
function in a manner equivalent to the 
way they would on an IBM PC AT. This 
compatibility is facilitated through the 
ROM and keyboard-controller BlOSes 
provided by Award Software for the 
CCAT. This licensed software is among 
the most efficient available to IBM 
PC-compatible developers. 

One handy feature of the Award BIOS 
on the CCAT is that the Setup program 
usually provided on disk is built into the 
ROM. Invoking the Ctrl-Alt-Esc key se- 
quence enters Setup where you can set the 
following options: date, time, diskette 1, 
diskette2, diskl, disk2, video, base 
memory, extended memory, and error 
halt. 

Putting the CCAT to Use 

Even though it might be obvious at this 
point, I want to emphasize that the CCAT 
is the equivalent of the IBM PC AT 
motherboard. Like any AT motherboard, 
it needs other peripheral cards to function 
as a computer system. To create a system, 
you plug the CCAT and all the peripheral 



cards into a passive backplane (often 
called a passive motherboard) that carries 
all the signals from the CCAT to the other 
peripheral cards. (A passive backplane 
contains no circuitry— only connectors 
and connecting wires.) 

Neglecting some of the new super- 
multifunction boards, a minimum CCAT 
system would require a display-driver 
card (e.g., EGA, CGA, and mono- 
chrome), an AT floppy disk or AT flop- 
py/hard disk controller card, and a key- 
board. For a complete system, you would 
add one more combo card containing 
memory expansion and serial and paral- 
lel ports. Thus, a full-function CCAT 
computer is made up of four cards. Visu- 
alize four expansion cards plugged into 
your present XT or AT, and you will see 
that it takes relatively little volume. That 
giant motherboard and power supply 
were hogging all the space! 

I've already stated that the CCAT is 
both smaller and more power-efficient 
than a standard AT configuration. Being 
more efficient, it needs no power-supply 
fan or monster power supply (power re- 
quirements beyond the CCAT, of course, 
depend upon the specific peripherals you 
plan to use). Newly introduced VLSI 
display and disk-controller cards are also 
more energy-efficient as well. 

In Conclusion 

While the greatest audience for the CCAT 
design will eventually be OEMs looking 
for a better 80286-based computer, such 
testaments are relatively boring to an end 
user reading this article. Instead, to pro- 
vide a suitable demonstration, it was only 
natural for me to consider making a brief- 
case-size, battery-operated portable 



The CCAT is both 
smaller and more power- 
efficient than a 
standard IBM PC AT 
configuration. It needs 
no power-supply fan or 
monster power supply. 



computer as the conclusion to this 
project. 

Unfortunately, like most computer 
systems these days, objective is not nec- 
essarily reality. I briefly considered 
building something to rival one of the 
commercially produced portable com- 
puters, but that was like trying to fit 10 
pounds in a 5-pound bag. The CCAT 
does indeed reduce the size of the AT 
electronics to a point where such a project 
is conceivable, but standard form-factor 
peripheral cards, disk drives, batteries, a 

continued 



Table 1: Speaker and external 
backup-battery pin connections. 



Pin 



Speaker 



Battery 



Data out 
Key 

Ground 
+ 5VDC 



Ground 
Not used 
Not used 
6VDC 




Photo 2: CCAT in a box. 



OCTOBER 1987 • B Y T E 141 



CIRCUIT CELLAR 



With the CC AT board, 
the only task becomes 
that of mechanically 
fitting off-the-shelf 
peripheral hardware in 
the smallest box. 



display, and an AT keyboard just 
wouldn't fit in a briefcase. 

Short of redesigning everything and 
making this portable computer a bigger 
project than the CCAT, I had to resort to 
using a larger case. Fortunately, I had 
this nice camcorder case sitting around 
holding an infrequently used camcorder. 
Out went the camcorder, and in went the 
CCAT and a bunch of other junk. Ten 
pounds eventually evolved into 30 
pounds, with my minimal but efficient 
configuration losing out to enclosing 
everything but the kitchen sink. Equip- 
ment cases are like mass storage— the 
more room you have, the faster it seems 
to be filled. 

My CCAT portable uses a backlit 
LCD, as most portables do. This $1395 
display from Axonix Corp. (2257 South 
1 100 East, Suite 2C, Salt Lake City, UT 
84106) has 640- by 200-pixel resolution 
and connects to the RGB output of a CGA 
display card, making it suitable for home- 
brew applications. 

This display— and everything else in 
the unit— is powered from a pair of 4-A- 
hr 12-V gel-eel batteries (read that as 
heavy). The 12-V battery output is also 
converted to +5 V for the computer sec- 
tion and - 12 V for RS-232. 

The brain is a four-card AT system 
mounted on its side to reduce space. It 
consists of the CCAT board, a standard 
AT-style keyboard, an IBM CGA board, 
and clones of standard AT floppy/hard 
disk controllers and AST SixPakPlus ex- 
pansion boards. Since we didn't know 
any better and nobody lifted the case until 
we finished, we added both a half -height 
floppy disk drive and a 40-megabyte hard 
disk drive. 

There is nothing more I can add about 
this portable, beyond telling you what is 
in the case. With the CCAT board, the 
only task becomes that of mechanically 
fitting all this off-the-shelf peripheral 
hardware in the smallest box. We suc- 
ceeded, and it works well indeed (see 
photo 2). 

It operates for about 2 hours on the in- 
ternal batteries, but it is better to plug it in 
the wall with the rest of the computers. 







'"S" : ' 












i 
i 

A02-A09 

1 
El 

62-PIN I/O 
CONNECTOR 
CARD EDGE 

1 
A31-A12 

1 

1 

1 

1 

1 

1 

1 

1 

1 
B14 1 
B13 1 
B12 
Bll , 

B20 1 
B30 1 
B27 1 
All | 
B02 | 

B19 1 
B17 1 
B26 1 
B15 | 

B28 ' 

I 




SH2< _ 


SD0-SD7 




> 












A01 


A10 


BOS 




SH2( _ 


SAO -SA19 




) 


BOA 


BZ5 




-IOR 






B24 


B23 


B22 


B21 


B18 


B06 


B16 




Sill 


-I0W 








SH2 


-SMEMR 










-SMEMW 










SYSCLK 










OSC 






B29 




T/C 






B09 




AEN 






B07 




RESET DRV 






B31 




-REFRESH 




B01 T 
810 T 




-DACK1 








-DACK2 




BOS 




-DACK3 








BALE 




B03 






300.fi. f 
— vw 1 
















I 

1 

C11-C18 

1 
E2 

36-PIN I/O 
CONNECTOR 
CARD EDGE 

1 
C02-C05 

1 

C09 | 
C10 j 

DOS. 10, 12. H 

1 
C06-C08 

1 

1 

1 

1 

1 




sh2 C 


SD8-SD15 




) 


D17 


D01 


D02 


009 


on 


D13 


SH2^ 


LA23-LA20 




> 


015 




-MEMR 






D03 




-MEMW 






D04 










D05 




sHic: 


DACK0. 5.6,7 




) 


007 










,„ 


SH2<^~ 


LA19-LA17 




5 


+ 5V 

dig | 


018 


~lh 







Figure 2: Edge-connector pin-outs for the CCAT. 



And, while technically portable, it is a bit 
too large to use on your lap in an airplane. 
Still, it serves well as a transportable, and 
these 8088 portables are put to shame 
when you turn on the switch and crank up 
the CCAT's 10-MHz 80286. 



Next Month 

I'll begin a two-part project on how to 

build an IC tester. ■ 

The CCAT was a joint venture, and I'd 
like to note the contributions and help 



142 BYTE* OCTOBER 1987 



CIRCUIT CELLAR 






+ 5V 



+ 5V 



>R14 
>4.7K 



>R13 
• IK 



R46 
300ft 



B01 • • A01 



+ 5V 
SHI. 2 





+5V 












+ 12V 








-12V 










» GND 
















^10 M F ^ 
-5V 


^0.047 M F 


< 


_C11 _ 
"M50pF ' 


_C12 _ 
"MSOpF'- 


_C13 
>150pF 














< 


^* V 4 


i 




_Lci4 
^150p 


n 

F GND 
SHI 


7 
? 



B31 



D01 



+5V 



+ 5V 



+ 5V 



; R7 

? 300ft 



;R23 
? 300ft 



^R20 
►300ft 



-10 CH CK 
-10 CH RDY 



■OWS 



-IRQ9 
■IRQ3 
■IRQ4 
■IRQ5 
-IRQ6 
■IRQ7 



-DRQ1 
■ DRQ2 
-DRQ3 



SHI 
SHI 



SHI 



SHI 
SHI 
SHI 
SHI 
SHI 
SHI 



SHI 
SHI 
SHI 



I/O CONNECTORS 
AS SEEN FROM 
TOP SIDE OF BOARD 

A31 

C01 



-MASTER 


SHI. 2 


-MEMCS16 


SH2 


-I0CS16 


SHI 


DRQO 


SHI 


DRQ5 


SHI 


DRQ6 


SHI 


DRQ7 


SHI 


IRQ10 


SHI 


IRQ11 


SHI 


IRQ12 


SHI 


IRQ15 


SHI 


IRQ14 


SHI 



from ZyMOS, Micromint, Award Soft- 
ware, and the Circuit Cellar research 
staff. In addition, I'd like to personally 
thank Bob Andrews, JeffBachiochi, Jeff 
Remmers, Steve Smith, and Charles 
Skylesfor their efforts. 



Editor's Note: Steve often refers to previous 
Circuit Cellar articles. Most of these past arti- 
cles are available in book form from BYTE 
Books, McGraw-Hill Book Company, P.O. 
Box 400, Hightstown, N J 08250. 

Garcia' s Circuit Cellar, Volume I covers 



articles in BYTE from September 1977 
through November 1978. Volume II covers 
December 1978 through June 1980. Volume 
///covers July 1980 through December 1981. 
Volume IV covers January 1 982 through June 
1983. Volume K covers July 1983 through De- 
cember 1984. 

The following items are available from 

Micromint Inc. 
4 Park St. 
Vernon, CT 06066 
(800) 635-3355 (orders) 
(203) 871-6170 (information) 
Telex: 643331 

1 . Assembled and tested CCAT 80286 PC AT- 
compatible CPU board with 512K bytes of 
RAM, Award BIOS in ROM, and user's man- 
ual. Available in 8 MHz or 10 MHz. 

8 MHz, order OEM286LP/8 $775 

10 MHz, order OEM286LP/ 10 $825 

2. Assembled eight-slot AT-style passive 
backplane with all connectors. 

order MBAT/8 $115 

The following items are available from 

CCI 

P.O. Box 428 

Tolland, CT 06084 

(203)875-2751 

1. CCAT/POACH developer's kit. Contains 
six-layer CCAT PC board, four POACH 
chips, Award BIOS ROMs, preprogrammed 
8742 keyboard controller, PROM, and user's 
manual. (This developer's kit is scheduled to 
be available through January 15, 1988.) 

order CCAT/DEV $475 

2. Bare, unpopulated AT-style passive back- 
plane PC board. 

order MBAT/0 $35 

POACH chips and BIOS ROMs are available. 
Call for price and delivery information. 

For either source above, all payments should 
be made in U.S. dollars by check, money 
order, MasterCard, Visa, or American Ex- 
press. Surface delivery (U.S. and Canada 
only): add $5 for U.S., $8 for Canada. For de- 
livery to Europe via U.S. airmail, add $14. 
Three-day air freight delivery: add $10 for 
U.S. (UPS Blue), $25 for Canada (Purolator 
overnight), $45 for Europe (Federal Express), 
or $60 for Asia and elsewhere in the world 
(Federal Express). 

There is an on-line Circuit Cellar bulletin 
board system that supports past and present 
projects. You are invited to call and exchange 
ideas and comments with other Circuit Cellar 
supporters. The 300/1200/2400-bps BBS is 
on-line 24 hours a day at (203) 871-1988. 



To be included on the Circuit Cellar mail- 
ing list and receive periodic project up- 
dates and support materials, please circle 
100 on the Reader Service inquiry card at 
the back of the magazine. 



OCTOBER 1987 -BYTE 143 



People who deal withfbaud 
of McGraw-Hill information. 



Nobody understands the value of good informa- 
tion better than the people who work in computers 
and communications. 

And for those people, no information carries more 
weight than McGraw-Hill's. We provide the databases, 
analyses and news that computer and communications 
professionals rely on to illuminate the workings of 
their industries. 

Everyone in the business keeps up with the 
latest developments by reading McGraw-Hill maga- 



zines. BYTE, Electronics and Data Communications 
are all required reading in the field. So are books fron 
Osborne/McGraw-Hill. 

For MIS/EDP and communications professionals 
Datapro's print and on-line directories and reports 
cover every aspect of computer hardware and softwai 
from mainframes to micros, as well as communication 
and office automation. 

$br people who manufacture or sell microcom- 
puters and microsoftware, Future Computing is the 




andloyte use every bit 



number one information source for product tests, 
analyses and comparisons. 

People who specialize in communications are 
wired into CCMI/McGraw-Hill, to receive not only the 
hard facts on communications tariffs, but also in-depth 
analyses and bottom-line recommendations via print, 
software and on-line products. 

And when telecommunications and computer 
companies plan for the future, they rely on DRI 
Communications to provide them with forecasts 



of economic forces and industry trends. 

When it comes to turning megabytes into mega- 
bucks, nothing computes like McGraw-Hill information. 

McGraw-Hill, Inc., 1221 Avenue of the Americas, 
New York, N.Y. 10020. 



McGraw-Hill. 

Information that leads to action. 





Is your PC 

an endangered 

species? 



With PC technology evolving at breakneck speed, it's 
become survival of the fastest. But before you decide 
your PC, XT or even AT is doomed to extinction, 
take a look at PC Technologies' complete family of 
enhancement boards: 




386 Express™ — Our 16-MHz 80386 accelerator — 
specially suitable for LANs — will make your IBM AT two 
to three times more productive and maintain full 
software compatibility including OS/2, all at a remarkably 
low price — $995. 

286 Express™ — The first half-slot 80286 accelerator 
card and winner of AFIPS/FORTUNE Magazine's 
Hardware Product-of-the-Year Merit Award. Engineered 
to deliver two to six times more speed for your PC, XT 
or compatibles. 

Circle 207 on Reader 



286 RAMracer ™ — Two performance upgrades, one 
low price. Combines 8-MHz 80286 acceleration and up to 
2MB of EEMS/EMS- compatible expanded memory for 
your larger, demanding software applications. 

RAMparlner™ — Batter down the DOS 640K memory 
barrier with up to 2MB of expanded memory. Ideal for 
spreadsheets, databases, windowing software . . . and as a 
companion to the RAMracer or AST and Intel expanded 
memory products. 

286 Rainbow Plus™ — Our one-slot, five-function 
board contains an Enhanced Graphics Adapter, a 10-MHz 
80286 accelerator, PLUS a Microsoft® InPort™ mouse 
interface, parallel printer port, and clock/calendar. 



To find out how easy — and economical — it is to 
take your PC off the endangered species list, see your 
nearest PC Technologies dealer. Or call us today, direct, 
at 800-821-3086 (outside Michigan) or 313-996-9690. 



OB 

HiiKT 



PC Technologies Inc. 



inK? 

704 Airport Blvd., Ann Arbor, MI 48108 
313-996-9690/Telex 503589/FAX 313-996-0082, 
800-821-3086 (outside Michigan) 

Trademarks: IBM PC, XT, AT, OS/2 — International Business Machines 
Corporation; AST — AST Research Inc.; Intel — Intel Corporation; Microsoft, 
InPort — Microsoft Corporation. 
Service Card 



BITE 



Heuristic 
Algorithms 



Zero-Knowledge Proofs 149 

by Peter Wayner 

Back-Propagation 155 

by William P. Jones and 
Josiah Hoskins 

Optimizing Compilers 165 

by Mark Roberts 

A Search Strategy for 

Commonsense Logic Programming 173 

by Paul V.Haley 

Mathematical Reasoning 177 

by Leon Sterling 

Neural-Network Heuristics 183 

by Gary Josin 




OCTOBER 1987 -BYTE 147 



Introduction 



Heuristic Algorithms 



No matter how good a given algorithm is, it can't deal 
with problems it wasn't designed to solve, nor can it 
handle subtle variations of a problem. An algorithm, unfor- 
tunately, can only provide solutions to specific problems. 

Heuristics can provide the capability to deal with the sub- 
tle variations in a problem, or to deal with a totally new prob- 
lem, by devising a solution based on previous experience. 

The synergy of these dissimilar methods of problem solv- 
ing can provide powerful new tools to practitioners of artifi- 
cial intelligence. A marriage of heuristic learning and algo- 
rithmic problem solving has already appeared in 
commercially available expert systems. 

Heuristic algorithms have many potential applications. 
For example, computerized systems to design and control the 
manufacturing process, such as expert systems and other op- 
timization systems, are becoming widespread. The problems 
solved by such systems (scheduling jobs, laying out work- 
pieces, routing robots) are very often optimization problems 
of a combinatorial nature. Because these problems can be 
computationally very expensive to solve exactly, and be- 
cause a solution must often be found in a real-time environ- 
ment, heuristic rather than exact-solution techniques are fre- 
quently used. 

One goal of ongoing research at Stanford University is to 
investigate methods for evaluating heuristic solutions to 
large-scale manufacturing problems. There are several com- 
binatorially difficult manufacturing problems, including 
parts nesting, cutting-path determination, and machine 
scheduling. Since these types of problems are typically 
solved by a computer in real time, the "learning" power of a 
computer can be applied in a dynamic manufacturing en- 
vironment. 

In the following pages, we explore the emergence of some 
heuristic algorithms . 

One of the most promising applications of machine learn- 
ing to problem solving is in the embryonic field of neural 
networks. Neural networks were first conceived in the 
1950s, but only lately have researchers successfully achieved 
results simulating these networks. 




Two articles in this issue explore neural-network heuristic 
algorithms. Gary Josin gives an overview of general ap- 
proaches to the heuristics of neural networks. William P. 
Jones and Josiah Hoskins closely examine the delta learning 
rule with back-propagation and offer a C-language program 
that demonstrates the technique. 

Beyond neural networks, Paul V. Haley writes about the 
need for heuristic techniques in developing algorithms in 
Prolog. Haley explains the ways in which Prolog needs to be 
modified to permit best-first, instead of depth-first, 
searches. 

Optimization problems constitute a category; rich for the 
potential application of heuristic algorithms. Of particular 
interest is compiler optimization. Mark Roberts looks at this 
subject and speculates on the promise of heuristics in the de- 
velopment of microcomputer optimizing compilers. 

The zero-knowledge-proof algorithm, developed recently 
by researchers at MIT; Berkeley; Haifa, Israel; and Toronto, 
uses a heuristic technique that Peter Wayner illustrates with a 
BASIC program. 

Finally, we conclude our exploration of heuristic algo- 
rithms with Leon Sterling's examination of an equation 
solver written in Prolog that emulates the problem-solving 
heuristics of math students. 

Although we may have only scratched the surface of this 
intriguing subject, we hope we've suggested the potential of 
the synthesis of heuristics and algorithms. 

—G. Michael Vose, Senior Technical Editor 



148 BYTE- OCTOBER 1987 



HEURISTIC ALGORITHMS 



Zero-Knowledge Proofs 

A new heuristic method lets you prove your identity without 
revealing a password or other information 



Peter Wayner 



RECOGNIZING THE DIFFERENCE 

between an authorized user and a fake is a 
difficult problems for computers. Tradi- 
tional password systems and other heuris- 
tics for controlling access can never be 
made perfectly secure because a com- 
puter can judge only the signals it re- 
ceives, not whether the binary bits are the 
product of a sincere, authorized user or of 
an impostor providing the same input. 

Now, new mathematical techniques 
known as zero-knowledge proofs can 
strengthen these heuristic approaches by 
providing complex interactive passwords 
for users, passwords that cannot be faked 
by anyone who happens to intercept the 
message— or even by the host computer 
itself. The chief developers of the new 
methods are Oded Goldreich of Haifa 
University, Silvio Micali and Shafi Gold- 
wasser of MIT, Manuel Blum of Berke- 
ley, Charles Rackof f of the University of 
Toronto, and others (see reference 1). 

Zero-knowledge proofs differ from 
regular mathematical proofs in two epis- 
temologically curious ways: They hide 
the truth while defending its validity, and 
they are played out much like a card 
game. In a zero-knowledge-based ex- 
change, the prover first makes an asser- 
tion. The skeptic verifies the assertion 
and specifies the next fact he or she would 
like to hear. The prover responds with an- 
other assertion. The exchange continues 
until the skeptic is satisfied. 

What makes this ordinary-sounding 
interrogation process unique is that the 
individual assertions taken together re- 
veal no privileged information except the 
fact that the prover isn't lying; the skeptic 



can safely conclude that the prover is in- 
deed the person he or she claims to be. 

A Preliminary Example 

Arms-control treaties, because they are 
plagued by mistrust, are a good prelimi- 
nary example for understanding how an 
interaction can hide information while 
providing some kind of validation. 

Suppose a nation wants to prove it does 
not have nuclear warheads at a storage 
plant without revealing exactly how many 
conventional warheads it has stockpiled. 
In one zero-knowledge approach, the 
representative from the proving nation 
randomly divides the warheads between 
two locked rooms. The examiner from 
the skeptical nation flips a coin to choose 
one of the rooms. The prover hands the 
skeptic the corresponding key so he can 
check the contents of the selected room. 
If the skeptic doesn't find a nuclear war- 
head in the room, he can conclude there 
is only a one-in-two chance that the treaty 
is being violated. 

The prover nation locks both doors, re- 
arranges the warheads, and again lets the 
skeptic nation randomly select a room for 
viewing. After this examination, if no nu- 
clear weapons are found, the skeptic con- 
cludes there is only a one-in-four chance 
that the treaty is being violated. 

After 20 or 30 such iterations, the 
skeptic can be satisfied that even though 
he lacks absolute proof, the chance that 
he has chosen the wrong door every time 
is practically nil. Meanwhile, the prover 
can be content that the exact number of 
missiles hasn't been revealed. 

This isn't a true zero-knowledge proof 



because it gives the skeptic a statistically 
converging estimate of the number of 
missiles. Nevertheless, it does illustrate 
several important facets of the method. 

First, the techniques never prove some- 
thing perfectly and incontrovertibly, but 
they always come as close as the two par- 
ties' patience will allow. This is a draw- 
back for anyone who needs literal certifi- 
cation, but it should make no difference 
to practical people who realize how 
quickly 2" shrinks. Second, zero-knowl- 
edge proofs keep the prover honest by let- 
ting the skeptic demand any particular 
fact, while hiding the entire truth from 
the skeptic by letting him or her choose 
only a fraction at most. Third, these 
proofs rely upon one-way functions to 
protect the information. 

One-way functions are an important 
part of cryptography, enabling a person 
to encrypt information and place it in the 
open, secure in the knowledge that no in- 
verse function can be found to decipher 
the information. In the warheads exam- 
ple, the one-way function is the random 
division of warheads between the two 
rooms. It is impossible to infer the total 
number of warheads from the number 
found in just one of the rooms. 

In mathematics, one-way functions are 
operations that have no inverse, or at least 
no readily discoverable inverse. For in- 

continued 

Peter Wayner is a graduate student in 
computer science at Cornell University. 
He can be reached at the Department of 
Computer Science, Cornell University, 
Ithaca, NY 14853. 

OCTOBER 1987 -BYTE 149 



ZERO-KNOWLEDGE PROOFS 



The security can be 
further strengthened 
by requiring that each 
proverbeableto 
handle any of 1000 
different x,y pairs. 



stance, given a list of prime numbers, you 
can easily generate a product. However, 
the inverse operation— factoring— can be 
so time-consuming as to be impractical 
when the number is large— say, 100 or 
more digits. The public-key-cryptogra- 
phy system (see reference 2) relies on the 
difficulty of factoring large numbers. 

Quadratic residuosity is another num- 
ber-theoretic property that gives a good 
one-way function (see reference 3). I will 
use it in a program that demonstrates the 
operation of a zero-knowledge proof. 



























S:p=1 ) 

(assume pis lying) 
^ J 






i 


t 






S:x,y 

(start dialog) 






1 


' 








f 












Continue 




P:choose 
u€Z x 
Calculate Z = u 2 




P:z 


















v J 
























\ 


! 












S:0 




S: randomly 
choose or 1 




S'A 










-;;1 


f\ 




• 


■ 






( ^ 
P:use password 

w to calculate 

v = uw 






P = u (reveal 
square root of z) 




' 


• 




^ J 




1 


t 






r \ 

Sxonfirm 




P\v (reveal 
square root of zy) 


















i 


t 




f > 








(recalculate 
probability) 




S;confirm 
v 2 =xy 














N 


V J 








i 

/^ S 

satis 


jfied 

r y/ 

Y 

f 
















r 

Quit 

























Figure 1: Flow diagram of a zero-knowledge dialog between skeptic S andprover 
P. Squares indicate data revealed over the communications link; circles represent 
internal processing. 



First, we need some theoretical back- 
ground. 

Quadratic Residues 

Given y relatively prime to jc (i . e . , x and y 
have no common factors except 1), y is 
said to be a quadratic residue of x if there 
exists a w such that w 2 mod x = y. For 
example, 9 and 10 are relatively prime, 
and 7 2 = 49 mod 10 = 9, so 9 is a qua- 
dratic residue of 10. 

For shorthand, let Z x symbolize the set 
of integers relatively prime to x and QR X 
symbolize the set of all elements in Z x that 
are quadratic residues of jc. For instance, 
Z 10 = (1, 3, 7, 9) and QR, Q = (1,9) since 
only those two numbers have square roots 
inZ 10 : 1 = l 2 mod 10 = 9 2 mod 10, and 9 
= 3 2 modl0 = 7 2 modl0. 

Quadratic residuosity makes a good 
one-way function because it is easy to 
square a number modulo x but difficult to 
find the square root of a number modulo 
x when the number is relatively prime to x 
and the factors of jc are unknown. 

Three other properties of quadratic 
residues are important here. First, the 
fastest way known to compute whether y 
is a quadratic residue of x is to start by 
factoring x into primes. Since this is hard 
when x is the product of large prime num- 
bers (in excess of 100 digits each), a 
strong system must start with a very large 
jc. The zero-knowledge interaction will 
also reveal nothing about the factors of jc. 
Second, every y G QR X has an equal 
number of square roots w such that w 2 
mod x = y. The third property concerns 
products of two integers. If y,z G QR X 
thenyz G QR^ ify E QR X but z G Z x - 
QR x thenyz EZ X — QR X . These facts can 
be proved using group theory or at least 
verified by working through a few sample 
cases. 

A Working Example 

In the working example, the prover is 
given jc and y and asked to prove that}' is a 
quadratic residue without revealing its 
square root. The square root is, in effect, 
the password, and the zero-knowledge 
techniques let the prover keep the pass- 
word secret from the skeptic while still 
showing that he knows it. This prevents 
the password from being stolen by an 
eavesdropper. 

Here is a more detailed view of the pro- 
tocol. Keep in mind that all computations 
are done modulo jc even when not explic- 
itly so stated. 

The skeptic S starts by giving the 
prover P the number pair (jcj). P will 
prove that he knows a square root w (i.e. , 
w 2 mod x = y) without revealing what it 
is. P randomly selects u, a member of Z x , 
squares it, and sends the result z = u 2 
mod jc to S. 



150 BYTE* OCTOBER 1987 



ZERO-KNOWLEDGE PROOFS 



S then sends P a random bit, or 1 . If 
the bit is 0, P must reply with «, and S 
confirms that u is indeed a square root of 
the first number z. If the bit is 1 , P uses 
the secret value w to form the product v = 
uw mod x, which he sends to S. S checks 
that this value is indeed a square root of 
the product zy. (Remember, z = u 2 andy 
= w 2 so zy = u 2 w 2 = vy.) 

In either case, P's correct response 
convinces S with a probability of x h that P 
does know a square root ofy. The process 
is repeated until the probability of cheat- 
ing grows small enough to satisfy S. Fig- 
ure 1 diagrams the process. 

The technique works because it is not 
possible for both u 2 and u 2 y to have 
square roots unless y is a member of QR X . 
Since P doesn't know w hich he will be 
asked to provide ( Vj?~or \fu 2 y), he cannot 
try to fake the choice of u. However, 
since P reveals only u or «w, it is impos- 
sible for S (or an eavesdropper) to derivfe 
a square root w of y from the information 
provided. Without a w, it is impossible to 
calculate a square root of u 2 y, as required 
to satisfy S. 

The BASIC program in listing 1 imple- 
ments this system for the sake of demon- 
stration. Both parties to the dialog are 
handled in separate routines of the pro- 
gram. The main program sets x and y, 
and then calls the two routines in turn 
using global variables to pass values be- 
tween the two. A short routine, based on 
Euclid's algorithm, is used by both sub- 
routines to test relative primality . 

Several considerations are important to 
build a strong system. The first is making 
sure that* is large enough and has at most 
two factors (other than 1) of equal length. 
If x is prime, then the size of QR X is 
(x— 1)/2. If x is the product of primes p A 
and p 2 , then QR X has ((p,-l)/2) 
((p 2 -l)/2). (This can be proven with 
group theory.) Since every y E QR X has 
the same number of square roots, it fol- 
lows that each has only two or four square 
roots. This reduces the possibility of 
finding a square root simply by guessing. 

The security of this system can be fur- 
ther strengthened by requiring that each 
prover be able to handle any of, say, 1000 
different x,y pairs. The skeptic computer 
chooses a pair at random, and the prover 
must prove (in the zero-knowledge sense) 
that y is a member of QR X . Having 1000 
possible sets of quadratic residues adds 
deterrence by increasing the computa- 
tional burden on any would-be intruder. 

Of course, there are caveats to the par- 
ticular zero-knowledge method outlined 
in this article, using quadratic residues. 
Its security relies heavily on the assump- 
tion that factoring numbers is too difficult 
to be done in a reasonable amount of 
time. If the numbers are chosen incor- 



rectly, the system is not strong enough. 
Alternatively, if computer technology or 
mathematical theory advances sufficient- 
ly to make factoring a fast process, the 
quadratic residues method (and many 
more of today's encryption systems) will 
be vulnerable. 

Practical Uses 

Zero-knowledge proofs require a great 
deal of computation and thus are prob- 
ably not adaptable to situations that rely 

continued 



A short routine, 
based on Euclid's 
algorithm, is used 
by both subroutines 
to test relative 
primality. 



Listing 1: A BASIC program, written in QuickBASIC, demonstrating the 
zero-knowledge-proof method using quadratic residues. A sample run is given 
at the end of the listing. 

RANDOMIZE 

x = 100 

DIMqr(lOO) 

' qr( i) =0 if i is relatively composite to x 

1 =1 if i is relatively prime to x 

' =2 if i is relatively prime and is a quadratic residue 

FOR i = 1 TO x 

qr(i)=l 
NEXTi 
loopl: 

'Mark the primes and composites 

FOR i=2 TO x 

j=i 
k=x 
again: 

IF j MOD k = THEN 

qr(i)=0 
ELSE IF j M0Dk = lTHEN 

qr(i)=l 
ELSE 

J J =J 

j=kM0Dj 

GOTO again 
END IF 
NEXTi 
loop2 : 

'Mark the quadratic residues 
FOR i=l TO x 

IF qr(i)>0ANDqr((i*i) MOD x)>0 THEN qr( (i*i) MOD x) =2 
NEXTi 
start: 

'Select a y at random 
w = INT(x*RND) 

'Make sure it is a quadratic residue 
IF qr(w)=0 THEN GOTO start 
y- (w*w) MODx 

PRINT USING "Prover : (Secret password w = ###)"; w 
PRINT 

PRINT USING "Skeptic: (x,y) = (### , ###)"; x,y 
'x and y are global variables 
'w is known only to the prover 
' z , b , u, v are the four numbers exchanged 
'between the prover and the skeptic 
prob = 1 ' Initial probability that prover is lying 
F0Rtry=lT010 
PRINT 

PRINT "Round: "jtry 
proverl: 

' Set nl=w~2 MOD x and n2 = y*w~2 MOD x 
' Randomly select a u in Z ( x) 

continued 



OCTOBER 1987 -BYTE 151 



ZERO-KNOWLEDGE PROOFS 



u = INT(x*RND) 

IF qr(u)=0 THEN GOTO proverl 
z=(u*u) MODx 

PRINT USING "Prover: z = ##"jz 
skepticl: 

' Sees z and asks for square root o f z 
1 or square root of zy 
b=int(2*RND) 'b = or 1 
Print using "Skeptic: b = #";b 
prover2 : 

'Returns the correct square root 
IF b=0 THEN 

PRINT USING "Prover: u = ##" ;u 
ELSE 

v= (u*w) MODx 

PRINT USING "Prover: v = ##" ;v 
END IF 
skeptic2: 

1 Checks the prover ' s response 
IF b=0 AND (u*u) MOD x = z THEN 

PRINT "Skeptic : (u*u) MOD x = z : Ok . " 
ELSEIFb=l AND (v*v) M0Dx=(z*y) MODx THEN 
1 PRINT "Skeptic: (v*v) M0Dx= (z*y) MODx: 
ELSE 

IF b=0 THEN 

PRINT "(u*u) MODxO z" 
STOP 
ELSE 

PRINT "(v*v) MODxo (z*y) M0Dx=" 
STOP 
END IF 
END IF 
' Compute probability of lying 
prob=prob* . 5 

PRINT "Skeptic: Probability of lying = ";prob 
NEXT try 



Random Number Seed (-32768 to 32767) ? 55 
Prover: (Secret password w = 77) 

Skeptic: (x,y) = (100, 29) 

Round: 1 

Prover: z = 9 

Skeptic: b = 1 

Prover: v = 69 

Skeptic: (v*v) MOD x = (z*y) MODx: Ok. 

Skeptic: Probability of lying = .5 

Round: 2 

Prover: z = 69 

Skeptic: b = 1 

Prover: v = 51 

Skeptic: (v*v) MOD x = (z*y) MODx: Ok. 

Skeptic : Probability of lying = .25 



Ok. 



Round: 3 








Prover: 


z = 89 






Skeptic: 


b = l 






Prover: 


/ = 4l 




■ 


Skeptic: 


(v*v) M0Dx = 


(z*y) MOD 


x: Ok. 


Skeptic: 


Probability 


of lying = 


.125 


Round: 4 








Prover: 


2 = 61 






Skeptic: 


b = 






Prover: 


a = 69 






Skeptic: 


(u*u) M0Dx = 


z: Ok. 




Skeptic: 


Probability 


of lying = 


.0625 


Round: 5 








Prover: 


z = 89 






Skeptic: 


b = l 






Prover: 


^ = 59 






Skeptic: 


(v*v) M0Dx = 


(z*y) MOD 


x: Ok. 


Skeptic: 


Probability 


of lying = 


.03125 


Round: 6 








Prover: 


z = 49 






Skeptic: 


b = l 






Prover: 


v = 6l 






Skeptic: 


(v*v) MOD x = 


(z*y) MOD 


x: 0k. 


Skeptic 


Probability 


of lying = 


.015625 


Round: 7 








Prover: 


z = 69 






Skeptic 


b = 1 






Prover: 


v = 49 






Skeptic 


(v*v) M0Dx = 


(z*y) MOD 


x: 0k. 


Skeptic 


Probability 


of lying = 


.0078125 


Round: 8 








Prover: 


z = 89 






Skeptic 


b = l 






Prover: 


v = 9 






Skeptic 


(v*v) M0Dx = 


(z*y) MOD 


x: 0k. 


Skeptic 


Probability 


of lying = 


3.90625E-03 


Round: 9 








Prover: 


z = 21 






Skeptic 


b = 






Prover: 


u = 11 






Skeptic 


(u*u) M0Dx = 


z: Ok. 




Skeptic 


Probability 


of lying = 


1.953125E-03 


Round: 10 






Prover: 


z = 49 






Skeptic 


b = 






Prover: 


u = 93 






Skeptic 


(u*u) M0Dx = 


z: Ok. 




Skeptic 


Probability 


of lying = 


9.765625E-04 



on human participation (such as the typ- 
ing in of a password, or the response to a 
series of questions) . However, in a world 
that is rapidly replacing paper with elec- 
tronics, the zero-knowledge-proof meth- 
od promises to be quite useful. 

Banks, for instance, are heavily com- 
puterized businesses; increasingly, they 
rely on "smart cards" as a means of veri- 
fying customer identity. Under these cir- 
cumstances, electronic eavesdropping 
can be as devastating to security and pri- 



vacy as simply overhearing or glimpsing 
a password. The problem extends to com- 
munications between computers over the 
electronic networks that dominate the 
money markets; it is quite feasible for one 
computer to mimic another simply by 
"playing" the correct data stream. Zero- 
knowledge proofs may be able to help in 
these situations. 

Zero-knowledge proofs will likely be a 
major factor in computer security sys- 
tems of the future. ■ 



REFERENCES 

1. Goldreich, Oded, S. Micali, and A. Wig- 
derson. "Proofs that Yield Nothing but Their 
\&lidity . " In Proc. of the 27th Annual Sym- 
posium on the Foundations of Computer 
Science. IEEE Publication, 1986. 

2. Smith, John. "Public Key Cryptogra- 
phy." BYTE, January 1983, page 198. 

3. Goldwasser, Shaft, and Silvio Micali. 
"Probabilistic Encryption." Journal of 
Computer and System Sciences, vol. 28, no. 
2, April 1984. 



152 BYTE- OCTOBER 1987 



Tandy Computers: 
Because there is 
no better valuer 



The New Tandy 4000 




A price breakthrough 
in high-performance 
80386 technology. 

Put a Tandy 4000 on your desk and unleash the 
incredible power of the 32-bit, 16-megaherz 
80386 microprocessor. The 4000 is so cost effec- 
tive you can actually configure a 386 system for 
less than you'd pay for a competitor's 286 model. 

The 4000 is ready to run current PC and AT® 
software with incredible new speed. And when 
new operating systems such as OS/2™ become 
available, the full potential of 80386 can be un- 
leashed. When used with the XENIX® operating 
system, your Tandy 4000 can become the heart of 
a multiuser office system. Or configure the Tandy 
4000 with a 3Com® workgroup file server to 
achieve maximum productivity. 



A built-in, high-capacity 3 l k" disk drive lets 
you store up to 1.4 million characters on pocket- 
sized diskettes. Six AT slots and two XT™ slots 
give you plenty of room for system expansion. 
The Tandy 4000 also comes with serial and 
parallel ports, a 101 -key enhanced key- 
board, and a keylock with chassis- 
lock mechanism for system 
protection. 

Come into a Radio Shack 
Computer Center and see 
the Tandy 4000-only $2599. 
(25-5000) 



Send me a new 
1988 computer 
catalog. 



Mail To: Radio Shack 
Dept. 88-A-24 
300 One Tandy Center 
Fort Worth, TX 76102 



Name. 



Company 

Address 

City State _ 

ZIP, 






Phone 

warn w^ mm wmm mi m 

Radio /hack 



Price applies at Radio Shack Computer Centers and participating 
stores and dealers. Monitor, display adapter and operating systems sold 
separately. AT/Reg. TM and XTAT/M IBM. XENIX/Reg. TM and OS/2/ 
TM Microsoft Corp. 3Com/Reg. TM 3Com Corp. 

Circle 231 on Reader Service Card 



COMPUTER CENTERS 

A DIVISION OF TANDY CORPORATION 

OCTOBER 1987 -BYTE 153 



/2^~.. ;;^ 



r 
i 
i 
■ 
i 



L 

1 



I" 

I- 



I 




Finally A lettable 

Denned ^Q^akn|ieM)ld, 

fisbeadQf ¥>ur Back. 



Portable computers fit a predictable pattem.The 
more powerful they are, the less portable they are. 

With one magnificently small exception. The 
T3100/20. 

Ifs the best shape power has ever been in. 
A smaller, slimmer profile that's tailored to you, 
instead of the other way around. 

Yet inside this sleek 15-pound package are 
640KB of RAM and a built-in 20MB hard disk. All 
driven by an 80286 microprocessor, the same CPU 
that sparks the IBM® PC AT 

Its gas plasma screen is so bright, it looks like 
a full-size CRT display. Which, by the way you can 
easily plug into the T3100/20's standard RGB 
color port 

MS-DOS® 3.2 is standard. So are parallel, serial 
and SVextemal drive ports. And a soft carrying case. 

With every T3100/20, well include free copies 
of Lotus® Symphony^ and Lotus Metro® two of the 
world's most popular programs, for the world's 



most popular portable computer. 

You can also add a 1200 bps Hayes ! compatible 
modem, a five-slot IBM-compatible expansion 
chassis, 2 megabytes of extended memory, and a 
numeric keypad. 

TTieT3100/20 is backed by Exceptional Caref* 
our promise that if we have to fix your computer, 
well fix you up with another one while you wait 

All of which leads one to a small dilemma. 
How to regard a machine that changes forever the 
way the world thinks about portable performance. 

Yow could think of it as a desktop on a crash 
diet. Or the muscle of an AT without the bulk. Or 
simply as PC World put it: "A small miracle!' 

Call 1-800-457-7777 for the Toshiba computer 
and printer dealer nearest you. He can show you 
how to enjoy all the advantages of power. 

With none of the burdens. 

IBM & PC AT are registered trademarks of Internationa] Business Machines Corporation. MS-DOS is 
a registered tradem£»rk of Micmsoft Corp. Lotus, Symphony and Metro are registered trademarks of 
Lrtus Development Corp. Mayes is a registered trademark of Hayes Coip. *Limited time offer. **No-cost 
enrollment required. See your dealer for details. 



In Touch with Tomorrow 

TOSHIBA 

Toshiba America, Inc.. Information Systems Division 



HEURISTIC ALGORITHMS 



Back-Propagation 

A generalized delta learning rule 



William P. Jones and Josiah Hoskins 



A CHERISHED DREAM of the com- 
puter age is to build machines that can 
think as we do. How closely must the 
computer's internal representations and 
processes resemble those of a person for 
this to occur? The wisdom of the artifi- 
cial intelligence community has long 
been that a close resemblance is neither 
necessary nor, given the architecture of a 
conventional computer, feasible. How- 
ever, some recent impressive successes 
of the neural-network approach to the 
production of intelligent behavior have 
forced a reconsideration of this position. 
Computer-based neural networks, for ex- 
ample, have learned to speak (see refer- 
ence 1), to induce kinship patterns (see 
references 2 and 3), to recognize hand- 
written characters (see reference 4), and 
even to play games (see reference 5). Do 
these proof -of-concept demonstrations 
presage a breakthrough in efforts to build 
intelligent machines? 

Implementations of neural networks, it 
turns out, date back to the beginnings of 
the computer age (see reference 6), and it 
has long been known that some of the ear- 
lier, more basic networks are severely 
limited in the kinds of computations they 
can perform (see reference 7). What, 
then, is new in neural-network research 
that might justify the current wave of ex- 
citement? Some of the resurgence of in- 
terest is a consequence of recent hard- 
ware advances in the construction of 
massively parallel machines that may en- 
able much faster simulations of a biologi- 
cal neural network. Other theoretical de- 
velopments may dramatically increase 
the computational power of neural net- 



works—even when these are realized in a 
conventional Von Neumann machine. 

This article focuses on one such devel- 
opment by Rumelhart and colleagues (see 
reference 8) (with similar developments 
by Parker [see reference 9] and Le Cun 
[see reference 10]) known as the back- 
propagation rule. This is a powerful, 
general learning algorithm employing a 
gradient- or "steepest" -descent heuristic 
that enables a network to self -organize in 
ways that improve its performance over 
time. We will examine the back-propaga- 
tion rule and demonstrate its learning ca- 
pability with a simple neural-network 
simulation implemented in C. But first, 
we set the stage by discussing the neural- 
network approach and some of the events 
leading up to the development of the 
back-propagation rule. 

The Neural-Network Approach 

The neural-network approach, also re- 
ferred to as connectionism or parallel dis- 
tributed processing, adopts a "brain met- 
aphor" of information processing. Intel- 
ligent behavior in a person seems to 
emerge from interactions involving huge 
numbers of neurons— each of which, 
compared to a computer, is quite limited 
in its processing capabilities (i.e., with 
regard to its speed, the information it acts 
upon, and the information it produces). 
Similarly, under a neural-network ap- 
proach, information processing occurs 
through interactions involving large num- 
bers of simulated neurons, such as the 
one depicted in figure 1 . This simulated 
neuron, or unit, has four important 
components: 



• input connections (synapses), through 
which the unit receives activation from 
other units. 

• a summation function that combines 
the various input activations into a single 
activation. 

• a threshold function that converts this 
summation of input activation into output 
activation (e.g., perhaps output activa- 
tion if the input activation falls below 
some threshold). 

• output connections (axonal paths) by 
which a unit's output activation arrives as 
input activation at other units in the 
system. 

An inter-unit connection in a computer- 
based neural network is typically as- 
signed a numeric weight that modulates 
the activation passing through the con- 
nection. If the connection from unit A to 
unit B has a weight of w BA for example, 
then the activation output of unit A might 
be multiplied by this value to determine 
the activation actually received by B. We 
can then represent the absence of a con- 
nection between A and B by simply as- 
signing w BA a value of 0. An inhibitory 

continued 

William P. Jones (8200 Neeley Dr. #145, 
Austin, TX 78759) received his Ph.D. in 
psychology from Carnegie-Mellon Uni- 
versity in 1982. Josiah Hoskins received 
his M.S. in chemistry from the University 
of Georgia in 1980 and is currently work- 
ing toward a Ph. D. in chemical engineer- 
ing at the University of Texas. Both are 
currently employed by Microelectronics 
and Computer Technology Corp. 



OCTOBER 1987 -BYTE 155 



BACK-PROPAGATION 



A neural network's 
input, output, and 
internal state can all 
be characterized by 
the patterns of node 
activations. 



relation between A and B can be repre- 
sented by giving w BA a negative value. 

It is instructive to draw two important 
contrasts between the neural-network ap- 
proach and a more conventional rule- 
based approach found in AI expert-sys- 
tem work: 

• The knowledge of a neural network lies 
in its inter-unit connections and their 
weights. In contrast, much of the knowl- 
edge of an expert system lies in its rules 
(i.e., its condition/action or if/then 
pairs). 

• A neural network is driven by the acti- 
vation that passes from units to other 
units. In contrast, an expert system is 
driven by symbols generated as a conse- 
quence of rule-firing . 

Because only numerically valued activa- 
tion passes from unit to unit in a neural 
network, neural networks are often said 
to involve a subsymbolic level of compu- 
tation. A network's input, output, and in- 



~____^ lnput___^ 


^.Output ____*. 


Summation 
function 


Threshold 
function 



Figure 1: A simulated neuron. 




Figure 2: A simple "wolf-detector" 
assemblage. 



ternal state can all be characterized by 
patterns of activation across its nodes. 

How can intelligent behavior emerge 
from such very low level subsymbolic in- 
teractions among a network's units? It is 
sometimes helpful to view each unit as a 
classifier or a feature detector. Consider 
a simple example involving a tabula rasa 
Little Red Riding Hood who is sent to 
school to learn how to detect wolves in 
the forest. (Hopefully the school is not on 
the other side of the forest!) Little Red 
Riding Hood is shown a series of wolf 
pictures until she has internally formed 
the network depicted in figure 2. Input 
primitives in this example are the features 
of "big ears," "big eyes," and "big 
teeth. " For each feature, there is a corre- 
sponding input unit with a rate of firing 
(i.e., an amount of output activation) that 
depends upon the extent to which this fea- 
ture is detected in the outside world. 

These input units, in turn, are con- 
nected to a unit corresponding to the 
"wolf classifier unit. The actions of this 
unit's threshold function may cause it to 
behave like a Boolean AND so that it 
fires only when all three wolf features are 
observed. As the unit's threshold is 
lowered, it functions increasingly like a 
Boolean inclusive-OR, such that any 
combination of wolf-features is sufficient 
to trigger the wolf classification. It is 
through the combined effects of large 
numbers of such classifiers and input- 
unit feature detectors that intelligent be- 
havior can emerge from a neural net- 
work. 

The numerical base of the neural-net- 
work approach provides a ready means 
by which to represent continuous grada- 
tions in such things as the intensity of an 
input feature, the certainty of a classifica- 
tion, or the importance of a connection 
between two units. By contrast, such gra- 
dations are represented with great diffi- 
culty or not at all in most rule-based ex- 
pert systems. Additional advantages of 
the neural-network approach may stem 
from properties of default assignment, 
content addressability, graceful degrada- 
tion, and spontaneous generalization (see 
reference 11). 

But how are the connections and con- 
nection weights of a network determined? 
As the size of a network increases, it is no 
longer feasible for the human designer to 
determine network connections by hand, 
nor is it feasible to engage the computer 
in a brute-force iterative search for the 
right connections. In a network with only 
a single layer of connections— those con- 
necting input units to output units— there 
is a simple and elegant learning heuristic, 
the delta rule, that gives a network an 
ability to form and modify its own con- 
nections in ways that often rapidly ap- 



proach a performance optimum. A brief 
discussion of the delta rule (sometimes 
called the Widrow/Hof f rule [see refer- 
ence 12]) serves as an introduction to its 
recent successor, the more general and 
more powerful back-propagation rule. 

The Basic Delta Rule 

We describe the delta rule through the 
continuing education of our tabula rasa 
Little Red Riding Hood (LRRH). She 
will encounter three distinct beings in her 
world that we know as the wolf, the 
grandma, and the woodcutter. We limit 
LRRH to a single layer of connections be- 
tween input nodes representing observ- 
able features and output nodes represent- 
ing actions that LRRH can take. LRRH 
must learn to run away, scream, and look 
for the woodcutter when she detects a 
being with big ears, big eyes, and big 
teeth (the wolf). She must learn to ap- 
proach, kiss on the cheek, and offer food 
to beings that are kindly, wrinkled, and 
that have big eyes (grandma). And she 
must learn to approach, offer food to, and 
flirt with beings that are handsome, kind- 
ly, and have big ears (the woodcutter) . 

Under these circumstances, the delta 
rule produced the network depicted in 
figure 3, with red lines corresponding to 
negatively weighted connections, and 
blue lines corresponding to positively 
weighted connections. Some features in 
the network have more diagnostic value 
than others (e.g., "big teeth" versus "big 
eyes"). However, LRRH need only cor- 
rectly identify two features of a being in 
order to produce an appropriate set of ac- 
tions using the network in figure 3 . 

The training procedure used in con- 
junction with the delta rule to produce the 
network in figure 3 is straightforward. 
There are three I/O training pairs, one 
each for the wolf, grandma, and the 
woodcutter. An input pattern I is repre- 
sented by a vector of Os and Is that follow 
the ordering of input nodes in figure 3. 
Thus, the input pattern for the wolf is (1 1 
1 Oj . The target output pattern T that 
we want LRRH to produce in response to 
an input pattern can be similarly repre- 
sented. Thus, the target output pattern for 
the wolf is fl 1 1 0]. Before training 
begins, connections between all input 
nodes and all output nodes are formed, 
and each connection is randomly given a 
small, initializing weight. 

Training using the delta rule then pro- 
ceeds by cycling through the training 
pairs until a satisfactory level of perfor- 
mance is reached. On a given trial, the 
network first generates an output pattern 
O p in response to the input pattern I p of a 
training pair. The discrepancy, or delta, 
between the actual and the desired behav- 

continued 



156 BYTE- OCTOBER 1987 





70 
60 



•£: 



NTSC 



MEA 

AND HERCULES 




CGA 




EGA 



jrm.MtTSUaJ5H} 




Mitsubishi Diamond Scan™ 

The New Standard 

In Multi-Application Monitors* 



Introducing Model AUM4371A— The Single 
Solution Monitor Ideally Suited For Applications 
Ranging From Monochrome Text To FulLColor, 
High Resolution Graphics. 

Introducing the newest, most versatile high resolution color 
monitor in the industry today— Mitsubishi's Diamond Scan 
(Model AUM-1371A). 

Actually five monitors for the price of one, the Diamond 
Scan delivers everything you'll ever need in a multi-application 
monitor. Including full compatibility with the IBM® PGC/ 
EG A/CG A/MDA and Monochrome Hercules graphics 
boards. And for even greater flexibility, the Diamond Scan also 
accepts NTSC video input. 

Exceptional design characteristics allow for a resolution up 
to maximum 800 horizontal dots and maximum 560 vertical 
lines on a 13V" viewing area. What's more, Mitsubishi's 
Diamond Scan incorporates propri- 
etary auto-scan circuitry which 
automatically locks onto any hor- 
izontal frequency from 15.6KHz to 
35.0KHz, and any vertical frequency 
from45Hzto75Hz. 



*s 



as** 



Other advanced design features include a high resolution 
CRT with .31 dot pitch, automatic screen image adjustment, 
super-high contrast panel glass for improved visibility and 
Diamond Matte® coating for maximum glare reduction. All 
packaged in a compact, economically styled plastic cabinet. 

TTL Input D-9 Pin 
Cable Assignments 
and Signal Levels 

6 cccccc 





Graphic Board Compatibility 1 * 



Quadram QuadEGA ProSync 

□ Orchid Turbo EGA/Turbo PGA 

□ Sigma Designs Color 400 

□ Video 7 Vega-Deluxe 

Ef QDP VIVA 640/800/1000 
D Paradise Auto SW EGA 



[?fSTBEGAMultiRes 
Bf Everex Micro Enhancer 

□ Hercules 

Ef IBM VGA, PGC, EGA, CGA 

□ AST Research AST 3G/Model 1 

□ ATI Graphics Solution/EGA Wonder 



Analog Input D-25 Pin 
Cable Assignments 
and Signal Levels 

NTSC Video Input 

Move up to Mitsubishi's Diamond Scan— the new standard 
in performance and versatility by which all others will be 
compared. 

For additional information and the location 
of your nearest distributor, call Mitsubishi today 
at 1-800-556-1234, Ext. 54. In California, call 
1-800-441-2345, Ext. 54. Mitsubishi Electronics 
America, Inc., Computer Peripherals Division, 
991 Knox Street, Torrance, CA 90502. 



We've Got A Great Picture 
In- Store For You* 



♦Partial List Only 

Diamond Scan is a trademark of Mitsubishi Electronics. IBM is a registered trademark of 

International Business Machines Corp., Diamond Matte is a registered trademark of Mitsubishi Electric Corp. 

© 1987 Mitsubishi Electronics America, Inc. 



A 



MITSUBISHI 
ELECTRONICS 

Circle 183 on Reader Service Card 
(Dealers: 184) 



BACK-PROPAGATION 



ior of the network is then determined by 
subtracting vector O p from the target out- 
put pattern T p of the training pattern. 
Under the delta rule, the post-trial 
change in the weight w jt of a connection 
between input unit U t and output unit Oj 
is a function of the activation I pi of the in- 
put unit and the delta (T pj — O pj ) associ- 
ated with the output unit. Specifically, 



Awji = n(T pJ -O PJ )I pi 



(1) 



where n represents a trial-independent 
learning rate. (As the learning rate in- 
creases, so too does the risk of oscillatory 
behavior.) 

The delta rule essentially assigns cred- 
it (or blame) to the input units according 
to their activation levels; the more active 
an input unit, the more responsible it is 
(or should be) for the current distribution 
of activation among output units. The ef- 
fect, then, is that connections pointing 
from the more active input units of a trial 
will undergo the largest modification in 
their weights. At the same time, among 
connections pointing from a given input 
unit, the larger modifications will involve 
those connections that point to output 
units with larger associated deltas (i.e., 
discrepancies between actual and target 
activation levels). 

It can be shown that the delta rule be- 
longs to a class of gradient- or steepest- 
descent heuristics. This means that the 
delta rule will cause a network of connec- 
tions to change in directions that maxi- 
mize the change in an error term that 



sums the squares of output deltas. One 
way to view this feature is to see the delta 
rule as a skier who always moves with the 
fall-line in a breakneck journey back to 
the clubhouse. 

Limitations of the Basic Delta Rule 

The basic delta rule works quite well at 
assigning connections and connection 
weights in single-layered systems (involv- 
ing only input units and output units), but 
it is unable to determine connection 
weights in a multilayered system involv- 
ing hidden units (units that have no direct 
contacts with the outside world). In a 
careful analysis done nearly 20 years ago, 
Minsky and Papert (see reference 7) de- 
lineated a number of interesting computa- 
tions that single-layered systems cannot 
perform. For example, they cannot com- 
pute the exclusive-OR. To take a concrete 
situation, a single-layer system cannot 
learn a preference for classes meeting on 
Monday or Wednesday evenings but not 
(e.g. , because of time constraints) meet- 
ing both evenings. Table 1 illustrates the 
problem. There is simply no linear com- 
bination of variables M and W (for Mon- 
day and Wednesday classes, respectively) 
that will generate the desired values of the 
exclusive-OR. 

In a sense, single-layered networks are 
limited to computations that map similar- 
looking input patterns into similar-look- 
ing output patterns. In many computa- 
tions such as the exclusive-OR relation or 
the more general parity computation, a 
small change in the input pattern may ne- 



cessitate a drastic change in the desired 
output pattern. In these instances, we 
need multiple-layered networks with hid- 
den units. Through hidden units, the sys- 
tem can represent abstractions that it can- 
not directly encode from the environment 
via input nodes. 

Figure 4 illustrates that a simple two- 
level network with only one hidden unit 
can compute the exclusive-OR. In this 
case, the hidden unit represents the ab- 
straction "Monday and Wednesday." 
With the right set of connections to and 
from a large enough set of hidden units, a 
network can perform any desired map- 
ping between input and output. (It is often 
the case that hidden units will also reduce 
the number of connections needed to per- 
form a particular computation— a point 
we return to in the example of the next 
section.) Much of the current resurgence 
of interest in neural networks can be 
traced to the development of a powerful 
generalization of the delta rule that can 
arrive at such a set of connections in a 
multilayered system. This back-propaga- 
tion rule (see reference 8) is described in 
the next section. 

Back-Propagation 

The equation that determines weight 
changes under the back-propagation rule 
is similar in form to that of equation 1 . 
However, the back-propagation rule pro- 
vides a more general means of computing 
the delta of a unit. On a given trial, the 
delta of an output unit is computed in 

continued 



Big ears Q j 




j Run away 




Big eyes Q j( 




j Scream 

J) Look for woodcutter 
^ Kiss on cheek 


big leein i t 

k'inrllw r Td 




rxinaiy i j 


^TCr^' 


Wrinkled C J 


^Ov^^- 


J| Approach 
^ Offer food to 


Handsome C Jf 








j Flirt with 



Figure 3: A network produced by the basic delta learning rule. 



Table 1: The exclusive-OR 
problem. 

Monday Wednesday XOR (M,W) 





Xor(M.W) 




C 5 ^) 




/ 1 \ 

/+ 1 1-2 \ + 1 




And |(M,W)\ 




C^O \ 




1 + 1 ^Cl^ 


Monday 


Wednesday 



Figure 4: A network solution to the 
exclusive-OR problem. 



158 BYTE- OCTOBER 1987 




Actual unretouched screen image. 



Mitsubishi Has A Great Picture 
In-StoreFor¥)u* 



A High-Quality Line of PC Monitors 
Priced Below The Competition. 



Introducing the Mitsubishi brand name family of PC 
Monitors. Select from five different IBM® compatible 
models, along with the new IBM PS/2™ compatible 
XC4429C. Each has a 13 V" diagonal viewing area and 
proprietary high contrast glass for the sharpest image 
possible. 

Affordably Priced PC Monitors 

The XC Series incorporates proven Mitsubishi quality 
and reliability at an extremely affordable price. In fact, 
we've included a wide variety of features for which you'd 
expect to pay considerably more. Like advanced video 
and deflection circuits to reduce distortion and optional 
tilt and swivel base for improved ergonomics. Also in-line 
self-convergence for low power consumption and extra 
reliability. 

The XC Series is available in quantity, ready to support 
a wide range of application needs— from standard word 
processing and business graphics to windowing and high 
resolution solids modeling and CAD. 




MVE m V 

■Bisi 



Complete Customer Satisfaction 

Mitsubishi stands behind its brand name XC Series 
monitors with knowledgeable applications and service 
personnel and backs each product with a comprehensive 
one-year warranty. It all adds up to a worldwide reputation 
for state-of-the-art electronics and unparalleled customer 
satisfaction. 

Compare the picture quality and see for yourself why 
Mitsubishi monitor displays look so good. 

For product literature and your nearest distributor, call 
Mitsubishi today at 1-800-556-1234 Ext. 54. In California 
call 1-800-441-2345 Ext. 54. Mitsubishi Electronics 
America, Inc., Computer Peripherals Division, 991 Knox 
Street, Torrance, CA 90502. 

Circle 185 on Reader Service Card 



A 



(Dealers: 186) 



MITSUBISHI 
ELECTRONICS 






""•" ^~ 



XO1409C 

$519.00 Sug. Retail 
IBM-CGA Compatible 
Medium Resolution Monitor: 

13 V" • 2,000 characters, 
640 x 200 graphics resolu- 
tion • TTL video input 
15.75KHz- 16 colors 
0.4mm pitch stripe mask 



XC-1410C 

$659.00 Sug. Retail 
IBM-EGA Compatible 
High Resolution Monitor: 

13V" • 2,000 characters, 
640 x 350 graphics resolu- 
tion • Dual-Mode/TTL 
video input 15.75/ 
22.4KHz • 16/64 colors 
0.4mm pitch stripe mask 



XC-1430C 

$739.00 Sug. Retail 
IBM-EGA Compatible 
High Resolution Monitor: 

13V" • 2,000 characters, 
640 x 350 graphics resolu- 
tion • Dual-Mode/TTL 
video input 15.75/ 
22.4KHz • 16/64 colors 
0.31mm fine dot pitch 



XC-1412C 

$799.00 Sug. Retail 
IBM-PGC Compatible 
High Resolution Monitor: 

13 V" • 4,800 characters, 
640 x 480 graphics resolu- 
tion • Analog video input 
30.49KHz • Infinite colors 
0.31mm fine dot pitch 



XC-1429C <g^ 

$685.00Sug. Retail 
IBM- VGA Compatible 
High Resolution Monitor: 

13 V" • 4,800 characters, 
640 x 480 graphics resolu- 
tion • Analog video input 
3 1.5 KHz • Infinite colors 
0.28mm fine dot pitch 



IBM is a registered trademark of International Business Machines Corp., © 1987 Mitsubishi Electronics America, Inc. 



BACK-PROPAGATION 



much the same way as it is computed in 
the basic delta rule. Specifically, 

**/ = (T Pj - O pJ WAnet pj ) (2) 

where f'j(net pj ) is the derivative of a 
"squashing" function that operates on 
the sum of the inputs to a unit in order to 
determine the unit's output. A squashing 
function is a special kind of threshold 
function that is dif ferentiable and nonde- 
creasing. Such a function can be found in 
the listing of our C language implementa- 
tion of the back-propagation rule. [Edi- 
tor' s note: The source code for bpsim. c is 
available on disk, in print, and on BIX. 
See the insert card following page 304 for 
details. The listing is also available on 
BYTEnet. See page 4. Bpsim. c, which 
must be compiled and run on Unix sys- 
tems, illustrates the Little Red Riding 
Hood example in this article. ] In a linear 
system with no squashing function, the 
output of a unit equals its input. In this 
special circumstance, the delta produced 
by the back-propagation rule is identical 
to that produced by the basic delta rule. 

The real power of the back-propaga- 
tion rule comes from its assignment of 
deltas to hidden units that receive no di- 
rect feedback from training patterns in 
the outside world. These deltas, in turn, 
influence the modification of weights to 
connections leading into the hidden units. 
The delta for a hidden unit is computed as 
follows: 



d PJ =fj(net p j)J: k d pk w k j 



(3) 



This is a recursive definition in which the 
unit's delta is determined by the deriva- 
tive of its squashing function multiplied 



by the weighted sum of the deltas to 
which the unit sends activation via out- 
going connections. A given delta term 8 pk 
in the summation is, in fact, weighted by 
the strength of the connection pointing 
from the hidden unit Uj to the unit U k that 
is the source of the delta. 

As the back-propagation rule's name 
suggests, the basic idea behind this com- 
putation of deltas for internal units is to 
propagate back through the system errors 
that are based on observed discrepancies 
between the values of output units and a 
training pattern. The deltas are first com- 
puted for the output units, and these are 
then propagated backward to all units 
pointing to the output units in the layer 
below. These units, in turn, propagate 
their received deltas backward to units 
that point to them, and so on, until the in- 
put level is reached. These deltas then 
drive the network's weight changes in 
much the same way as with the basic delta 
rule; the back-propagation rule, like its 
basic delta rule predecessor, is a gradi- 
ent-descent heuristic. 

We return to the tutoring of Little Red 
Riding Hood to illustrate the effects of the 
back-propagation rule with a more con- 
crete example. Suppose we were to follow 
the same training procedure used to gen- 
erate the network in figure 3, but now we 
introduce three hidden units. Initially, 
each input unit is connected (with some 
low, randomly determined weight) to all 
three hidden units; similarly, each hidden 
unit is connected to all output units. No 
connections are permitted that directly 
connect input to output units. We now 
have two layers of connections, necessi- 
tating the use of the back-propagation 
learning rule. 



Figure 5 shows the results of this ex- 
periment. Interestingly, the hidden units 
have come to represent internally the con- 
cepts for wolves, grandmas, and wood- 
cutters. It is often the case that hidden 
units, through the actions of back-propa- 
gation, will come to represent useful ab- 
stractions of the outside world. Note that 
the I/O mapping in this example does not 
require the use of hidden units. As figure 
3 indicates, this mapping can be accom- 
plished without hidden units using the 
basic delta rule. It is, nevertheless, inter- 
esting to note that the introduction of hid- 
den units in figure 5 reduces the number 
of connections needed to represent the 
mapping. 

Applications and Future Directions 

In principle, the use of the back-propaga- 
tion algorithm would seem to give a sys- 
tem the ability to induce an I/O mapping 
of arbitrary complexity— providing that 
the system has enough units and connec- 
tions at its disposal. As such, the back- 
propagation algorithm and related work 
may profoundly alter our use of com- 
puters. Much of the current applied work 
on neural networks is focused on the con- 
struction of pattern-recognition systems 
(i.e., systems that can recognize hand- 
writing, gestures, images, and so on). 
But the range of potential applications is 
clearly much broader. 

Consider the economic value of a sys- 
tem that observes and eventually mimics 
the behavior of a domain expert. Current- 
ly, the construction of expert systems 
often requires an enormous amount of ef- 
fort. Rules must be laboriously ab- 
stracted, entered, and checked for poten- 

continued 



Big ears 
Big eyes 
Big teeth 
Kindly 
Wrinkled 
Handsome 




Run away 

Scream 

Look for woodcutter 

Kiss on cheek 

Approach 

Offer food to 

Flirt with 



Figure 5: A network produced by the back-propagation learning rule. 



160 BYTE- OCTOBER 1987 



RUSH POSTAGE-PAID CARD 
FOR YOUR FREE CATALOG 



COMPUTER ELECTRONICS training prepares you 
to service all computers as you build your own 1 6-bit 
IBM PC compatible computer. Total system program 
includes disk drive, test equipment, bundled soft- 
ware, and NRI Discovery Lab. 

. TV/VIDEO/AUDIO SERVICING includes training 
with a state-of-the-art 27" high resolution broadcast 
stereo TV for learning troubleshooting and profes- 
sional bench techniques. 

SATELLITE ELECTRONICS training gives you 
the skills to service both consumer and commercial 
satellite earth station equipment as you assemble 
your own home satellite TV system. 

» ROBOTICS training features remote-controlled, 
mobile, fully programmable robot you build, experi- 
ment with, and keep along with other test equipment. 



CHECK 
EfONE 






Name 


(Please Print) 




Age 


Street 


City 




State 


Zip 



Send me your free catalog 
on NRI Training in: 

□ Computer Electronics 

□ TV/Video/ Audio Servicing 

□ Robotics 

□ Satellite Electronics 

□ Digital Electronics Servicing 

□ Data Communications 

□ Electronic Design Technology 

□ Industrial Electronics 

□ Communications Electronics 

□ Basic Electronics 

□ Building Construction and 
Remodeling 

□ Automotive Servicing 

□ Small Engine Servicing 

□ Electrician 

□ Air Conditioning, Heating, 
and Refrigeration 

□ Locksmithing and Electronic 
Security 

□ Telephone Servicing 

□ Appliance Servicing 

□ Bookkeeping and Accounting 



Accredited by the National Home Study Council 



170-107 



For career courses approved 
under G.I. BUI □ Check for details. 



BUSINESS REPLY MAIL 

FIRST CLASS MAIL PERMIT NO. 10008 WASHINGTON, D.C. 



POSTAGE WILL BE PAID BY ADDRESSEE 



NRI Schools 

McGraw Hill Continuing 

Education Center 
3939 Wisconsin Avenue 
Washington, D.C. 20077-9265 



NO POSTAGE 

NECESSARY 

IF MAILED 

IN THE 

UNITED STATES 



I..I.III...II...I...II...II.I....I.I.II...I.Im.I.II 



Just What The Doctor Ordered. 

AndThe Lawyer. 

AndTheArchitect... 



The Quantus Turbo AT 

• Monochrome monitor 

• Half-height 40Mb hard drive 

• 80286 running at 6-10MHz 

• 1 Mb RAM 

• 8 expansion slots 

• Text/graphics card 

• Speaker 

• 1 .2Mb floppy drive 

• 101 -key enhanced keyboard 

• 200 watt power supply 

• 3 year limited warranty 

$1495 

COMPLETE 



The Quantus MT386 

• Monochrome monitor 

• Full-height 80Mb hard drive 

• 80386 running at 4.77/6/8/10/16MHZ 

• 2Mb RAM 

• 8 expansion slots 

• Text/graphics card 

• Speaker 

• 1 .2Mb floppy drive 

• 101 -key enhanced keyboard 

• 200 watt power supply 

• 3 year limited warranty 



$2995 



lj r t r I ir Lf in i : i I \ 



<^LUUV- 



Specifications and prices subject to change. 
Circle 242 on Reader Service Card 



The Quantus Turbo XT 

• Monochrome monitor 

• Half-height 20Mb hard drive 

• 8088 running at 4.77-8MHZ 

• 640K RAM 

• 8 expansion slots 

• Text/graphics card 

• Speaker 

• 360K floppy drive 

• 84-key keyboard 

• 150 watt power supply 

• 2 year limited warranty 

$795 

COMPLETE 




OH 




Scientific Storage Technology 
238 Central Street 
Hudson, NH 03051 



(800) 356-9001 
(800) 255-0125 



(603) 886-3220 
(603) 363-4564 



NRI Trains You At Home— As You Build Your Own IBM-Compatible Computer 

GET THE KNOW-HOW 

TO SERVICE EVERY 

COMPUTER ON THIS PAGE. 



Learn the Basics the NRI 
Way -and Earn Good 
Money Troubleshooting 
Any Brand of Computer 

The biggest growth in jobs 
between now and 1995, 
according to Department of 
Labor estimates, will occur in 
the computer service and repair 
business, where demand for 
trained technicians will actually 
double. 

You can cash in on 
this opportunity— either 
as a full-time corporate 
technician or an inde- 
pendent service-person 
—once youve learned all 
the basics of computers 
the NRI way. NRI's 
practical combination of 
"reason-why" theory and 
"hands-on" building skills 
starts you with the funda- 
mentals of electronics, then 
guides you through advanced 
electronic circuitry and on into 
computer electronics. You also 
learn to program in BASIC and machine 
language, the essential languages for 
troubleshooting and repair. 

Total Computer Systems 
Training, Only From NRI 

No computer stands alone . . . it's part of 
a total system. To really service computers, 
you have to understand computer systems. 
And only NRI includes a powerful com- 
puter system as part of your training, 
centered around the new fully IBM 
compatible Sanyo 880 Series computer. 

You start with the step-by-step 
assembly of the new, highly rated fully 
IBM compatible Sanyo 880 Series com- 
puter. You install and troubleshoot the 
"intelligent" keyboard. Then you assem- 
ble the power supply, install the disk 
drive, and add extra memory to give you 
a powerful 256K RAM system. The new 
880 computer has two operating speeds: 
standard IBM speed of 4.77 MHz and a 
remarkable turbo speed of 8 MHz, mak- 
ing it almost twice as fast as the IBM PC. 
Next, you'll interface the high-resolution 
monitor and begin to use the valuable 
software also included with your com- 
plete computer system. 



IBM is a Registered Trademark of IBM 
Corporation. 



Epson is a Registered Trademark of Epson 
America, Inc. 



Apple and the Apple logo are Registered 
Trademarks of Apple Computer, Inc. 



Compaq is a Registered Trademark of 
COMPAQ Computer Corporation. 








no need to quit your present job until 
you're ready to make your move. Your 
training is backed up by your persona/ 
NRI instructor and the NRI technical staff, 
ready to answer your questions 
and help you when you 
need it. You get it all with 
NRI at-home training. 

100-Page Free 
Catalog Tells More 

Send the postage-paid 
i reply card today for 
NRI's big, 100-page, 
color catalog on NRI's 
electronics training, 
which gives you all 
the facts about 
NRI courses 
inMicro- 
1 computers, 
\J Robotics, 
Data Com- 
munications, 
TV/Audio/ 
Video Servicing, 
and other growing 
high-tech career fields. 
If the reply card is missing, 
write to the address below. 



It all adds up to confidence- 
building, real-world experience 
that includes training in program- 
ming, circuit design, and peripheral 
maintenance. You'll be learning about, 
working with, servicing, and trouble- 
shooting an entire computer system- 
monitor, keyboard, computer, disk drive, 
power supply— to ensure that you have 
all the essential skills you need to succeed 
as a professional computer service 
technician. 

No Experience Needed, 
NRI Builds It In 

This is the kind of practical, hands-on 
experience that makes you uniquely 
prepared, with the skills and confidence 
you need for success. You learn at your 
own convenience in your own home. 
No classroom pressures, no night school, 




Your NRI total systems training includes: 
• NRI Discovery Lab® to design and modify circuits • 
Your four-function digital multimeter with walk-you- 
through instructions on audio tape • Digital logic 
probe for visual examination of keyboard circuits • 
The newest Sanyo 880 Series Computer with "intelli- 
gent" keyboard and 360K double-density, double-sided 
disk drive • High resolution monochrome monitor • 8K 
ROM, 256K RAM • Bundled software including GW 
BASIC, MS-DOS, WordStar, CalcStar • Reference 
manuals, schematics, and bite-sized lessons. 



SCHOOLS 

McGraw-Hill Continuing Education Center 
3939 Wisconsin Avenue, NW 
Washington, DC 2ii 16 



We'll Give You Tomorrow. 

OCTOBER 1987 



rtnlN 



BYTE 161 



BACK-PROPAGATION 



tial incompatibilities with the existing 
rule base. Moreover, as the saying goes, 
"rules are made to be broken." All too 
often, expert systems are brittle, so that 
their performance precipitously degrades 
in situations not anticipated by their 
human designers. As an alternative, a 
neural-network approach using back- 
propagation may give us a system that es- 
sentially builds its own rule base with a 
minimum of outside intervention, so that 
over time it gradually takes over the tasks 
of the human expert. In this direction, 
work is currently under way to build an 



adaptive neural-network system to aid in 
fault detection and diagnosis in a chemi- 
cal-engineering plant (see reference 13). 
On the downside, neural-network im- 
plementations involving the back-propa- 
gation rule can be demanding of compu- 
tational resources (see reference 14). As 
we noted, one general approach to this 
problem is to completely redo machine 
architecture in ways that support mas- 
sively parallel computation. It may also 
turn out that many important applications 
permit limited implementations of the 
back-propagation rule that are extremely 



o 

Q. 

fiC 
D 
O 

> 

o 

IL 

</> 

.J 

o 
o 

I- 

X 



HfiSoH 



PC/VI 



UNIX's VI Editor Now Available For Your PC! 

Are you being as productive as you can be with your computer? An editor should be a tool, 
not an obstacle to getting the job clone. Increase your productivity today by choosing 
PC/VI— a COMPLETE implementation of UNIX* VI version 3.9 (as provided with System V 
Release 2). 

PC/VI is an implementation of the most powerful and most widely used full-screen editor 
available under the UNIX operating system. The following is only a hint of the power 
behind PC/VI: 

• Global search or search and replace using regular expressions 

• Full undo capability 

• Deletions, changes and cursor positioning on character, word. line, sentence, 
paragraph, section or global basis 

• Editing of files larger than available memory 

• Shell escapes to DOS 

• Copying and moving text 

• Macros and Word abbreviations 

• Many controllable options including Auto-indent, Showmatch and Wrap Margin 

• Filter text through external programs AND MORE! 

Dont take it from us. Here's what some of our customers say: "Just what 1 was looking for!". 
"It's great!", "Just like the real VI!" "The documentation is so good I have already learned 
things about VI that I never knew before." — IEEE Software. September 1986. 

PC/VI is available for IBM-PC's and generic MS-DOS+ systems for only $149. Included are 
CTAGS and SPLIT utilities, TERMCAP function library and an IBM-PC specific version 
which enhances performance by as much as TEN FOLD! 

PC/TOOLS" 

What makes UNIX SO powerful? Sleek. Fast, and POWERFUL utilities! UNIX gives 
the user not dozens, but hundreds of tools. Now the most powerful and popularof these are 
available for your PC! Each is a complete implementation of the UNIX program. Open up our 
toolbox and find: 



ASA 


. COMM 


•DIFFH 


• MAKE 


• SED 


• TAIL 


BANNER 


. CMP 


. DIFF3 


. MV 


• SEE 


• TAR 


BFS 


• CP 


• FIND 


• OD 


• SORT 


• TR 


CAL 


• CUT 


. GREP 


. PASTE 


• SPLIT 


• TOUCH 


CAT 


. DATE 


• HEAD 


. PR 


. STRINGS 


• UNIQ 


CHMOD 


. DIFF 


.LS 


• RM 


• SUM 


• WC 



All of these for a limited time introductory price of only $49.00. Extensive documentation 
is included! 



PC/SPELL 



X 

-\ 

o 
o 

r 
w 

■n 
O 

30 

■< 
O 

c 

39 

■o 

O 



Why settle for a spelling checker which can only compare words against its limited 
dictionary database when PC/SPELL is now available! PC/SPELL is a complete implemen- 
tation of the UNIX spelling checker, renowned for its understanding of the rules of English! 
PC/SPELL determines if a word is correctly spelled by not only checking its database, but also 
by testing such transformations as pluralization and the addition and deletion of prefixes 
and suffixes. For only $49.00, PC/SPELL is the first and last spelling checker you will 
ever need! ^^^^^^^^^^^^m 

Buy PC/VI and PC/TOOLS noiuand get PC/SPELLforonly $1.00! Site licenses are available. 
Dealer inquiries invited. MA residents add 5% sales tax. AMEX, MC and Visa accepted without 
surcharge. Thirty day money back guarantee if not satisfied! Available in 5'/i". 3W and 8" 
disk formats. For more information call today! 

*UNIX is a trademark of AT&T +MS-DOS is a trademark of Microsoft. 

CUSTOM SOFTWARE SYSTEMS 

P.O. BOX 678 • NATICK. MA 01760 
617 • 653 • 2555 



'(2Bl 



fast even on today's smaller computers. 

Will the neural-network approach, in 
conjunction with techniques such as the 
back-propagation rule, usher in a new 
age of computing? Or will it, like so 
many developments in the AI field, prove 
to have a grasp that falls far short of its 
reach? Only time will tell. ■ 

REFERENCES 

1. Sejnowski, T. J., and C. R. Rosenberg. 
"NETalk: A Parallel Network That Learns 
to Read Aloud." JHU/EECS-86/01, 
School of Electrical Engineering and Com- 
puter Science, Johns Hopkins University, 
1986. 

2. Hinton, G. E. "Learning Distributed 
Representations of Concepts. " In Proceed- 
ings of the Cognitive Science Society, Am- 
herst, MA, August 1986. 

3. Rumelhart, D. E. Personal communica- 
tion, 1987. 

4. Burr, D. J. "A Neural Network Digit 
Recognizer. " In Proceedings of IEEE Inter- 
national Conference on Systems, Man, and 
Cybernetics, Atlanta, GA, October 1986. 

5. Mozer, M. "RAMBOT: A Connectionist 
Expert System That Learns by Example." 
In Proceedings of the IEEE First Annual In- 
ternational Conference on Neural Net- 
works, San Diego, June 1987. 

6. Rosenblatt, F. Principles ofNeurodyna- 
mics. New York: Spartan, 1962. 

7. Minsky, M., andS. Papert. Perceptrons. 
Cambridge: MIT Press, 1 969. 

8. Rumelhart, D. E., G. E. Hinton, and 
R. J. Williams. "Learning Internal Repre- 
sentations by Error Propagation." In Paral- 
lel Distributed Processing: Explorations in 
the Microstructures of Cognition. Cam- 
bridge: MIT Press, 1986. 

9. Parker, D. B. "Learning-logic." TR-47, 
Center for Computational Research in Eco- 
nomics and Management Science, MIT, 
1985. 

10. Le Cun, Y. "Une procedure d'appren- 
tissage pour reseau a seuil assymetrique" 
("A Learning Procedure for Asymmetric 
Threshold Networks). In Proceedings of 
Cognitiva, Paris, June 1985. 

11. Rumelhart, D. E., and J. L. McClel- 
land. Parallel Distributed Processing: Ex- 
plorations in the Microstructures of Cogni- 
tion. Cambridge: MIT Press, 1986. 

12. Widrow, G., and M. E. Hoff. "Adap- 
tive Switching Circuits." Institute of Radio 
Engineers, Western Electronic Show and 
Convention, Convention Record Part 4 
(1960), pages 96-104. 

13. Hoskins, J. C, and D. M. Himmel- 
blau. "Neural Network Models of Knowl- 
edge Representation in Process Engineer- 
ing." Computers and Chemical 
Engineering (in press). 

14. Jones, W. P. "ANNA: An Adaptive 
Neural Network Associator for Personal 
Computer Interfacing," August 1987. 



162 BYTE- OCTOBER 1987 



Circle 73 on Reader Service Card 



"WINNING COLOR...AND IT 
CAME OUT OF A SHARP COPIER'. 



This is an unretouched copy made by Sharps new full-color copier 




7 



Sharp's new full-color business 
copier, with its advanced tech- 
nology, makes all others seem 
obsolete. 

It captures all the vibrance of 
the LeRoy Neiman original That's 
winning color— color that's alive. 

And it can reproduce your busi- 
ness documents with the same 
astonishing results. From layouts 
to computer graphics. 

It also enlarges, reduces, copies 
slides and makes transparencies. 
All in winning full-color at a sur- 
prisingly low price. 

See an authorized Sharp dealer 
for a demonstration. You'll wonder 
how you ever got along without it. 

For more information, call 
1-800-BE-SHARR or mail coupon. 




FREE! A 20" x 30" poster of LeRoy Neimans "Winning Color" 
when you visit an authorized Sharp dealer for a full-color copier demonstration. 



Circle 248 on Reader Service Card 

© 1987 Sharp Electronics Corp. 



FROM SHARP MINDS 
COME SHARP PRODUCTS 



Mr. James MacKenzie 

General Manager, Copier Division 

Sharp Electronics Corp. 

Sharp Plaza, Mahwah, N.J. 07430 

Please send me more information on Sharp's full-color copter. 



j 



Just What The Doctor Ordered 

AndThe Lawyer. 

And The Architect... 



The Quantus Turbo AT 

• Monochrome monitor 

• Half-height 40Mb hard drive 

• 80286 running at 6-10MHz 

• 1Mb RAM 

• 8 expansion slots 

• Text/graphics card 

• Speaker 

• 1.2Mb floppy drive 

• 101 -key enhanced keyboard 

• 200 watt power supply 

• 3 year limited warranty 

$1495 

COMPLETE 



The Quantus MT386 

• Monochrome monitor 

• Full-height 80Mb hard drive 

• 80386 running at4.77/6/8/10/16MHz 

• 2Mb RAM 

• 8 expansion slots 

• Text/graphics card 

• Speaker 

• 1.2Mb floppy drive 

• 101 -key enhanced keyboard 

• 200 watt power supply 

• 3 year limited warranty 



$2995 



The Quantus Turbo XT 

• Monochrome monitor 

• Half-height 20Mb hard drive 

• 8088 running at 4.77-8MHz 

• 640K RAM 

• 8 expansion slots 

• Text/graphics card 

• Speaker 

• 360K floppy drive 

• 84-key keyboard 

• 150 watt power supply 

• 2 year limited warranty 

$795 

COMPLETE 




^^iiS 



tJ fill I I JLJ^LJ f I I I \\ iT \-~\Fn 



I 



I r J t T T I r T T T T T I 

'■■■■ I I I , I -J I ,. I I.I.I 1 ' It 

' n I J I I 1 II t ! I 1*— 

f I i i r i i i i i t 

-J I .:J L \ \ 




Specifications and prices subject to change. 
Circle 242 on Reader Service Card 



Scientific Storage Technology 
238 Central Street 
Hudson, NH 03051 



(800) 356-9001 
(800)255-0125 



(603) 886-3220 
(603) 363-4564 



HEURISTIC ALGORITHMS 



Optimizing Compilers 

How compilers produce fast code, and how they could be improved 



Mark Roberts 



AN OPTIMIZING COMPILER'S pur- 
pose in life is not a simple one: It must 
attempt, by making the resulting machine 
code either smaller or faster, to improve a 
program's performance without chang- 
ing the program's intent. Since small por- 
tions of a program account for most of the 
run time, streamlining the heavily used 
portions can result in a dramatic increase 
in performance. A good programmer, 
drawing on years of experience and ex- 
pertise with the system hardware, can 
write efficient code for those critical rou- 
tines that require fine-tuning. Compilers 
generate machine code without the bene- 
fit of representative input data or experi- 
ence, so identifying and eliminating these 
performance bottlenecks turns into an 
automated guessing game. 

A compiler using heuristic algorithms 
would eliminate the guesswork by using 
data gathered from the analysis of the 
program to generate the best code for a 
particular sequence of program instruc- 
tions. I'll present some examples of C 
language code and the optimizations (or 
program transformations) that can be 
achieved by a compiler, briefly noting 
where heuristic capabilities could result 
in the generation of better code. 

The Scope of Compilers 

Optimizing compilers can be character- 
ized by the scope of their optimizations; 
that is, how much of the user's program 
they will consider at one time while 
searching for and performing transforma- 
tions. As you would expect, the complex- 
ity of a compiler increases dramatically 
as its scope expands. 



The scope of program transformations 
can be broken down into five basic levels: 

1. Statement: A single line of the 
program. 

2. Basic block: A sequence of statements 
with only one entrance and one exit. 

3. Loop: A sequence of statements exe- 
cuted repetitively. 

4. Procedure (or Intraprocedural): An 
entire procedure (or subroutine or func- 
tion). Although procedure-level optimi- 
zation is often referred to as "global," 
this term is somewhat misleading, since a 
procedure is clearly not the most global 
view of a user's program. Since the bulk 
of literature uses the term global in this 
manner, I'll do the same for the sake of 
consistency. 

5. Program (or Interprocedural): The en- 
tire program, not including assembly lan- 
guage and standard library routines. 

Most compilers perform at least some op- 
timizations at the block, or local, level 
(level 2). Since the data-dependence rela- 
tionships within a basic block can be 
found by relatively simple analysis tech- 
niques, the optimizations performed on 
basic blocks can usually be more elabo- 
rate than those performed on the program 
as a whole. Many mainframe compilers 
optimize at the procedure, or global, 
level (level 4). Alternate methods of opti- 
mizations are also possible. For example, 
certain microcomputer compilers adopt 
optimization strategies similar to those of 
mainframe compilers, but, instead of op- 
erating on procedures, these compilers 
limit their global optimizations to loops. 



A compiler using interprocedural optimi- 
zations and heuristic techniques could 
perform optimizations using data gath- 
ered from the analysis of most of or all the 
procedures in a program. 

Optimization Techniques 

Optimization techniques fall into two 
basic classes: machine-independent and 
machine-dependent. This article focuses 
on a number of machine-independent op- 
timizations, but I'll also cover some ma- 
chine-dependent techniques as well. 

Machine-independent techniques fo- 
cus on an intermediate representation of a 
program— the program's logic—that is 
independent of the target machine. Ma- 
chine-independent optimizations pre- 
serve the semantic correctness of the pro- 
gram but reduce its running time, 
memory requirements, or both. This is 
not to say that these techniques are totally 
divorced from the architecture of the pro- 
cessor involved: Not all machine-inde- 
pendent program transformations will 
run with equal facility on certain ma- 
chine architectures. 

Machine-dependent optimizations 
must also preserve semantic correctness 
but focus on using the strengths and 
weaknesses of a particular machine 
architecture. 

Both techniques reorganize the struc- 
ture and elements of a programmer's code 

continued 

Mark Roberts is manager of the Compiler 
Technology Group at Microsoft Corp. 
(16011 Northeast 36th Way, P.O. Box 
97017, Redmond, WA 98073). 



OCTOBER 1987 • B Y T E 165 



OPTIMIZING COMPILERS 



The trade-off is more 
activity and slower 
speeds at compile time 
for faster programs 
at execution time. 



when it is compiled. These manipula- 
tions basically reduce the amount of code 
the computer must handle at execution 
time, so the program runs with increased 
efficiency. The trade-off is increased ac- 
tivity and slower speeds at compilation 
time in exchange for faster programs at 
execution time. It's important to note that 
while these optimizations by no means 
guarantee the best possible code, the re- 
sults should at least mean a reduction in 
code size or an increase in speed. More- 
over, an optimizing compiler obtains re- 
sults far quicker than a programmer. 

Some Machine-Independent 
Techniques 

As stated earlier, certain optimizations 
can be performed by analyzing the pro- 
gram's logic. These logic optimizations 
are independent of the machine type and 
are usually independent of the program- 
ming language being used. Let's look at 
several things that can be done to reduce 
code in a program. 

Constant arithmetic: Also known as 
constant folding, this technique evaluates 
constant expressions at compile time and 
replaces them with the computed result. 
Arithmetic expressions should be evalu- 
ated the same way at compile time as they 
are at run time, since many constant ex- 
pressions arise through the use of sym- 
bolic constants in these expressions. 
Constant terms in array subscript expres- 
sions can be integrated with the array ad- 
dress at compilation time. Unnecessary 
arithmetic, such as m * 1 or b - 0, and 
unnecessary logical operations are elimi- 
nated. Conversion of a constant from one 
type to another is performed. 

As a simple example of constant fold- 
ing, the statement fit = 1.5 + 3-2; is 
compiled as fit = 4.7;. 

Constant propagation: This replaces 
the use of variables assigned a constant by 
the constant itself. This in turn can create 
more opportunities for constant folding. 
For example, j=2;k = j+5;are com- 
piled as j = 2; k = 7;. 

Common subexpression elimination: 
This technique involves finding and elim- 
inating those computations that calculate 
values already available. An occurrence 
of an expression E is called a common 



subexpression if E was previously com- 
puted and the values of the variables in E 
have not changed since the previous 
computation. 

Common subexpressions can be saved 
in registers or memory and accessed 
there instead of being recalculated at each 
use. With the use of this technique, ex- 
pressions such as 

a = b + c * d; ...x = c* d/y; 



are compiled as 

t = c* d; a = b + t; 



t/y;, 



where t is a compiler-generated tempo- 
rary variable that will be assigned to a 
register where possible. 

Dead store elimination: A variable is 
"live" at a point in a program if its value 
is subsequently used; otherwise, it is 
"dead" and can be eliminated. A related 
idea is dead or useless code— code that 
computes a value that is never used. 
While a programmer is unlikely to inten- 
tionally introduce dead code, it can ap- 
pear as the result of previous transforma- 
tions, such as constant folding or copy 
propagation. 

Copy propagation: References to a 
variable can be replaced by the expres- 
sion previously assigned to that variable. 
For example, consider the statements 



x = a + b; 



a; 



y = c + b;. 



Copy propagation would determine that 
the variable c can be discarded and re- 
placed with a, so that y = c + b becomes 
y = a + b. Copy propagation alone is not 
an optimization, but combined with com- 
mon subexpression elimination, dead 
store elimination, and the appropriate 
register allocation (which I'll discuss in 
more detail later), the program may be 
improved. Continuing with our example, 
the statements ultimately compile as 



t = a + b; 



:t; 



y = t;, 



where t, as before, is a temporary 
variable. 

Two recent types of machine-indepen- 
dent optimizations are interprocedural 
constant propagation and procedure em- 
bedding. Interprocedural constant propa- 
gation would analyze all procedures in a 
program (level 5) rather than from within 
a procedure (level 4) to perform opti- 
mization by constant propagation. In pro- 
cedure embedding, a procedure call is 
treated as a macro expansion; that is, the 
text of the procedure is expanded in-line 
and optimized together with the calling 
routine. The optimizer could then fold 
constant arguments into the code or move 



invariant instructions into less frequently 
executed regions of the calling routine. In 
both cases, heuristic analysis could pro- 
vide the capabilities of selecting the opti- 
mizations across procedures that would 
generate smaller and faster code. Since 
each program is unique, heuristics would 
provide the flexibility to handle special 
or unusual cases when the rules pre- 
sented here break down. 

Loop Optimizations 

An important place for other machine-in- 
dependent optimizations is loops (level 
3), especially inner loops, where pro- 
grams tend to spend the bulk of their 
time. We can improve program execution 
time by decreasing the number of instruc- 
tions in an inner loop, even if that in- 
creases the amount of code outside the 
loop. Three techniques are important for 
loop optimization: invariant code motion, 
strength reduction, and induction- vari- 
able elimination. 

Invariant code motion: The intent of 
code motion is to move instructions from 
frequently executed areas of the program 
to less frequentiy executed areas. An ex- 
pression can be moved out of a loop if the 
value it produces is not changed by this 
move and if it computes the same value 
for every iteration of the loop. For exam- 
ple, the statement 

for (i = 0; i<10; i++) 
array [i] = x + y; 

would be compiled as 

t = x + y; 
for (1 = 0; i< 10; i++) 
array [i] = t;. 

Since relative execution frequencies of 
various areas of a program are not always 
readily apparent, moving code may not 
always improve the results. 

Strength reduction: This optimization 
replaces certain computations that use 
recursively defined variables with re- 
cursively defined computations that use 
less computationally expensive machine 
operations. By way of example, the 
statement 

for (i = 0; i< 10; i++) 
array [i] = 1*4; 

would be compiled as 

t = 0; 

for (1 = 0; i< 10; i++) 

{ 

array [i] = t; 
t+=4; 

}• 

continued 



166 BYTE- OCTOBER 1987 




SOMETIMES, THE ACID TEST OF OUR 
MICROPROCESSOR DEVELOPMENT TOOLS 
IS UP IN THE AIR. 



Two miles up, in the belly of a U2 jet, the U.S. 
Government is now tracking acid rain and radio- 
active particles with a just-developed device called 
an Upper Air Sampler. 

But months earlier, with expensive develop- 
ment hardware on the blink, timely completion of 
the project was in real jeopardy 

Luckily, Avocet was called to the rescue. And 
within 48 hours we came through. With "the best 
software development tools" their design engineer 
had ever seen. 

Not to mention, down-to-earth prices. 

Let Avocet turn your PC or VAX into a 

powerful, integrated development system in 

48 hours, even overnight. 

Avocet can help you turn more good ideas into 
more real products in less time. 

Just call us now and well get you up and 
running— with everything you need to turn 
your computer into a personal, professional 
development system. 

All at a modest price. From a single source. 
Backed by the reassurance of a technical hotline. 
So friendly, knowledgeable support is always as 
close as your phone. 

No wonder design engineers with no time 
to spare come to us first— and keep coming 
back smiling. 
Any similarity to Intel, Hitachi or Motorola 
is purely intentional. 

Avocets professional quality AVMAC assem- 



blers run on any PC-compatible with DOS or Xenix. 
And on VAX Unix. Just released, AVMAC Version 2.0 
has major speed improvements to assure you 
lightning-fast assembly Plus, enhanced compatibil- 
ity with Intel, Hitachi, Motorola & other chip makers 
—so you can convert existing code more easily 
than ever before. 

Each AVMAC package comes complete with our 
AVLINK" linker, AVLIB" librarian, AVREF 
cross-reference generator and new 200+ page 
AVMAC Users Guide— all the assembly tools you 
want and need. 

After assembly, check your program with 
AVSIM'*— widely acclaimed as the best simulator/ 
debugger in the industry. AVSIM tests target (.l? code 
right on your PC— with no special hardware. It's 
crashproof. And what you see is what you get: 
AVSIMs full-screen display gives you instant visual 
access to the entire CPU— registers, memory, I/O 
ports, even attached peripheral chips. 



gotf**** 5 * 



Target Microprocessor 
Families Supported 




1802/1805 68000/68010 
6502/65C02 68020 
6801/6301 8048/8041 
6804 8051/8052 
6805/6305 8085 
6809 8096 
68HC11 F8/3870 


COP400 

HD64180 

NEC 7500 

TMS-32010 

TMS-32020 

Z8 

Z80 


Host Operating Systems 




CP M DOS PC Xenix 


VAX Unix 


AVMAC Macro Assemblers 


. .from 5349 


AVSIM Simulator/ Debuggers 

Other Development Tools 


. .from S379 
. .Call 


CALL TOLL-FREE 


800-448-8500* 


to order or receive our latest cat. 
microprocessor development t 


dog of 
ools 





AVf)CET 



Try before you buy. 

Order your AVMAC assembler and AVSIM 
simulator/debugger today and we'll include a special 
demo kit for both. Try the demo for 30 days. If you're 
not satisfied for any reason, return the unopened 
products for a full refund, less the $35 demo/ 
documentation kit which is yours to keep. 

Avocet Systems. We help you get your job done, 
on time and on budget. 

Avocet Systems, Inc., 120 Union Street 
RQ Box 490AI , Rockport, Maine 04856 
*Outside US and in ME, call (207) 236-9055 
TLX: 467210 AVOCET CI FAX: (207) 236-6713 



Avocet delivers all the tools you need— in 48 hours or less. 
Ask about our AVPiOW™ and AVPAV programmers. And our 
NEW 8051 in-circuit emulator; development boards, AVPAS 5F 
cross-compiler— and AVKITJ* the total Unix toolbox jor DOS, 
including the incomparable VI editor. 

© 1987. Avocci Systems. Inc. All ngius resened VAX is a trademark of DEC 
Unix is a trademark of AT&T. Xenix is a trademark of Microsoft. 
CP/M is a trademark ofDigial Research 






SYSTEMS, INC." 
THE SOURCE FOR PERSONAL jtP DEVELOPMENT TOOLS. 



Circle 312 on Reader Service Card for inquiries in the US. and Canada. 
(Outside North America: 313) 



OCTOBER 1987 • B Y T E 167 



OPTIMIZING COMPILERS 



The advantage here is that a particular 
computation (the multiply statement) is 
replaced by a faster one (the addition with 
sum statement). 

A more important example of strength 
reduction would be optimizing the use of 
the array [i] term. The address calcula- 
tion probably involves a multiply by 2 or 
4. Hence, the code produced by an opti- 
mizing compiler for this example would 
resemble typical C language array refer- 
encing with pointers: 

t = 0; 

p = &array; 

for (i = 0; i< 10; i++) 

{ 

*(P++) =t; 
t + =4; 

}• 

Notice that i i s no longer used i n the 
loop at all. This leads us to our next 
subject. 

Induction-variable elimination: In the 
context of this article, an induction vari- 
able is a variable whose value is modified 
by a fixed amount each time the loop is 
executed. When there are two or more in- 
duction variables in a loop, it may be pos- 
sible to eliminate all but one. 

After performing the strength-reduc- 
tion optimization and introducing new re- 
cursively defined variables, frequently 
the only use for the original recursively 
defined variable is for the loop-control 
test. This test can often be replaced by a 
test on one of the introduced variables, 
thereby making the instructions associ- 
ated with initializing and incrementing 
the program variable no longer neces- 
sary. Our example now becomes 

p = &array; 

for (t = 0; t<40; t+=4) 
*(P++)=t;, 

where the induction variable i has been 
replaced by the variable t. 

Loop unrolling: A loop can be unrolled 
completely so that the successive compu- 
tations implied by the loop appear se- 
quentially, or it can be partially unrolled, 
as in the following example. The original 
loop code looks like this: 

for (i= 0; i< 100; i++) 
a[i]=a[i]+b[i];. 

When the loop is unrolled by 2, the code 
becomes 

for (i = 0; i< 100; i+=2) 

{ 

a[i]=a[i]+b[i]; 

a[i+l] =a[i+l] + b[i+l]; 
}■ 



Loop unrolling has two major advan- 
tages. First, the number of increments 
and tests for loop control is cut in half in 
this example. Second, more instructions 
are exposed for parallel execution. Nests 
of loops can also be unrolled. A loop with 
variable control parameters, such as for 
( i = j ; i < k; i += 1) , can be unrolled, 
but it requires extra code to test for end 
conditions. 

The major disadvantage of loop unroll- 
ing is that it improves performance at the 
cost of additional instructions. For this 
reason, the criteria for unrolling loops 
should include the size of the loop and the 
relative frequency of executing the loop. 
Other factors include the severity of the 
object space constraints and the form of 
the loop itself. In these situations, an ex- 
perienced programmer can decide 
whether to unroll a loop. Heuristic analy- 
sis of these criteria in a compiler could 
allow sensible code-generation of pro- 
gram loops, and in a fraction of the time. 

Loop jamming: In this transformation 
(also called loop fusion), two loops are 
put together and expressed by one loop. 
This reduces loop overhead and code 
space while exposing more instructions 
for parallel execution and local optimiza- 
tion. Since there are no disadvantages to 
making this transformation, it should be 
used wherever possible. 

The cases that can be transformed are 
relatively simple or fairly elaborate. The 
simplest case involves two loops that to- 
gether satisfy several criteria. First, if 
one loop is executed, then so is the other 
one; that is, the two loops should have the 
same execution conditions. Second, the 
computations in one loop do not depend 
on computations in the other. This cri- 
terion can easily be relaxed in particular 
situations. Last, the loops are executed 
the same number of times. By generating 
code for the end conditions, this criterion 
can be relaxed as well. 

Here's an example of a simple case. 
The code for the two loops is 

for (i = 0; i<100; i++) 

a[i]=0; 
for (i = 0; i<100; i++) 

b[i] =x[i]+y;, 

which becomes 

for (i = 0; i<100; i++) 

{ 

a[i]=0; 

b[i] =x[i]+y; 

}• 

The need for this transformation may 
arise when compiling languages that have 
array or vector operations. If statements 
involving these operations are translated 



to the more basic element-by-element op- 
erations, fusible loops and nests of loops 
may appear frequently in the code. 

Machine-Dependent Techniques 

Rather than manipulating a program- 
mer's code, machine-dependent tech- 
niques involve determining the fastest 
way to perform a specific operation, 
given the architecture of a processor. The 
intent of machine-dependent optimiza- 
tions is, figuratively, to squeeze the pro- 
cessor for every possible degree of speed 
by using all its features to optimum ad- 
vantage. I'll look briefly at register allo- 
cation, operand permutation, instruction 
scheduling, and peephole optimization. 

Register allocation: One key to design- 
ing an optimizing compiler is to make ef- 
ficient use of the target machine's regis- 
ters. It takes a comparatively long period 
of time for the processor to retrieve data 
from memory, as opposed to retrieving it 
from registers. Therefore, the goal is to 
maintain "register residency" for values 
used most often in a user's program. 

Allocating registers is possibly the 
most difficult optimization to perform. 
Several issues can be isolated in the use of 
this optimization technique. The first 
issue is whether register allocation can be 
separated from register assignment. Al- 
location involves determining how many 
program values should be held in regis- 
ters. Assignment involves determining 
which actual hardware registers will be 
used for each allocated register. One 
problem associated with register assign- 
ment is boundary matching: An entity 
used in two or more program blocks that 
are executed sequentially should be as- 
signed to the same register, if possible. 

The second issue is load-store motion. 
Load-store motion moves the LOAD and 
STORE instructions out of loops to retain 
intermediate results in registers and to 
avoid unnecessary storage references. 
However, other instructions can also be 
moved to obtain a better allocation. 

The last issue is using \oca\ or global 
allocation and assignment of registers. 
The allocation of code within a basic 
block (local) may use simpler techniques 
than allocation across basic-block bound- 
aries (global), since the latter must con- 
sider control flow. An optimizing alloca- 
tion normally consists of both local and 
global allocation. 

Operand permutation: By changing 
the order of evaluation of expressions, the 
number of registers needed to do a calcu- 
lation can be reduced. For example, since 
results require fewer registers than com- 
putations, you might always generate the 
operation that needs the most registers 
first. Once the complex operation is per- 

continued 



168 BYTE- OCTOBER 1987 



TM 




AutoSketch 

A Resource to Draw Upon 

' o get any job done, you need the right tools. Ideally, they 

should be extensions of your talents, freeing you to do 

what you do best. And speed, precision, flexibility, and 

consistency are alwaystoppriorities, no matterwhatthejob. 

If communicating with drawings is part of your job, 

* AutoSketch should be one of your resources. 

AutoSketch from Autodesk, the developers of 
AutoCAD? is the precision drawing tool for professional 
use. It's fast, powerful, and simple to learn . The price is 
right, too. 

With AutoSketch and your personal computer, you'll enter the world of computer-aided 
drawing with ease. You may never have designed with a PC before, and you may think it's 
bound to be complicated and time-consuming. Surprise! With AutoSketch, you'll probably 
be up and running in about an hour. 

Despite its ease of use, AutoSketch is a 
full-function, object-oriented CAD program. 
Pull-down menus and dialog boxes 
help you each step of the way. 
With a click of the mouse, you can 
draw, then copy, mirror, or move 
objects, even create symbol libraries. 
AutoSketch automatically updates 
measurements whenever you stretch, 
scale, or rotate dimensioned objects. 
It even keeps track of everything you 
do, so that you can delete and restore 
parts of your drawing as easily as you 
change your mind, using successive 
undo or redo commands. 

We know you'll be impressed with the professional results. So will your 
clients and colleagues. 

AutoSketch runs on the IBM PC/XT/AT and 
compatible systems with a minimum of 512KRAM 
and either color or monochrome display. The 
standard version is yours for just $79.95. If your PC 
has an 8087 or 80287 math coprocessor, this 
version operates about three times faster. The ^ 
speed-enhanced version for $99.95, requiring 
the coprocessor, is three times faster still. 

Call 800-445-541 5 for the name of the 
AutoSketch Dealer nearest you or more 
information on supported peripherals. 
To order direct with a credit card, 
call 800-772-9200, ext. 347. 






Circle 24 on Reader Service Card 



Circle 54 on Reader Service Card 



■ CD-ROM IS HERE! 



•• LOW PRICES 



CD-ROM DRIVES 

1 Panasonic SQ-D1 $1095* 

Watt height - internal mount - high speed - industrial grade - Hi-Fi CD 
audio capabilities (with CDP Audio Software described below) - daisy 
chain capabilities - for IBM PC/XT/AT and full compatibles. 

| SPECIAL OCTOBER OFFER | 



I Hitachi CDR-1503S 



$799' 



| Full height- standalone - front auto load - Hi-Fi CD audio capabil- 1 
. ities (with CDP Audio Software described below) • daisy chain | 

' nnn ^;i;); nr inr IQM DP/VT/AT onH full rnmnatihloc 



capabilities - for IBM PC/XT/AT and full compatibles. 



1 Hitachi CDR-2500 $849' 

full height - internal mount- high speed- daisy chain capabilities • 
for IBM PC/XT/AT and full compatibles. 

' Priceincludes interface board, connect cable and CD-ROM drive. Call 
for low prices on CD-ROM drives from all major manufacturers. 



SOFTWARE + 



1 Grolier — The Electronic Encyclopedia 



$295 



'Microsoft-Bookshelf $295 

The ultimate memory resident writing tool. Instant CD-ROM access 
to 10 major writing reference sources including Roget's Thesaurus, 
The American Heritage Dictionary, and Bartlett's Familiar Quotations. 
Includes Houghton Mifflin Spelling Checker and Usage Alert Soft- 
ware. Compatible with 14 leading word processors and most other 
programs including Microsoft Multiplan and Lotus 1 2 3. 

' CDP-Audio Software $95 

Software permits users to access Hi-Fi CD audio capabilities of 
Panasonic SQ-D1 and Hitachi CDR-1503s drives described above. 



i AUDIO SOFTWARE COMPETITION 

i The first 100 purchasers of the CDP- Audio Software are invited to 
i customize the software to include programmable CD music capa- 
1 bilities, digital music volume and frequency displays, and sound 
1 synthesizing capabilities. The winning software package will be 
1 distributed to all purchasers of the CDP-Audio Software. The 
j author of the software will be awarded $1000 of CDP products and 
a royalty on all sales of the software. 



1 PG-SIG-PC Software Sampler $125 

125 of PC-SIG's most popular public domain software programs for 
IBM PC's and compatibles. Includes word processors, spreadsheets, 
personal and business accounting packages and much more. PC- 
SIG's directory of 700 public domain programs included ($12.95 
value). 

■ McGraw Hill— Science & Technical Reference Set $300 
Includes full text of the famed Concise Encyclopedia of Science and 
Technology (7,300 articles) and the Dictionary of Scientific and 
Technical Terms (9,500 terms and 115,500 definitions). Powerful 
search algorithms provide instant access to reference data. 

*■ Call for business and library CD-ROM software product pricing. 



STARTER PACKAGES 

All drives will be discounted $50 when purchased with software. 
Call for corporate discount information. 



TO ORDER CALL 800-MEGABYTe (634-2298) 

IN NEW YORK STATE 212-996-6999 

INQUIRES CALL 212-996-6999 

Policy: Shipping and handling extra. Personal and company checks 
require 3weeksto clear For faster delivery use your credit card {add 
3% for MC and Visa, add 5% for AMEX) or send a cashier's check 
or bank money order. New York residents add 8.25% sales tax. All 
prices are U.S.A. prices and are subject to change and all items are 
subject to availability. Defective software will be replaced with the 
same item only. Hardware will be replaced or repaired within the 
terms and limits of the manufacturer's warranty. We cannot guaran- 
tee compatibility. All sales are final and returned shipments are sub- 
ject to a restocking fee. 



1 



COP 

Compact Disc Products, Inc. 
P.O. Box 1520 Wall Street 
New York, NY 10268 



OPTIMIZING COMPILERS 



formed, you have registers free that can 
store the results of the operation for fur- 
ther optimizations. 

Instruction scheduling: In this optimi- 
zation, sequences of instructions are or- 
dered to minimize the execution time of 
the sequence. This optimization is of par- 
ticular importance when the target pro- 
cessor has a pipelined instruction fetch. 
For example, instruction scheduling is 
important on many reduced instruction 
set computers (RISCs) that always pre- 
fetch and execute the instruction follow- 
ing a branch instruction, regardless of 
whether the branch is taken. Rather than 
simply place a NOP after the branch, an 
optimizing compiler can often reorder 
the instruction sequence to place a useful 
operation there. 

Peephole optimization: The final code 
from a compiler can often be improved 
simply by a local scan of the sequence of 
instructions. A window of 5 to 10 instruc- 
tions can be examined for possible trans- 
formations. When certain combinations 
of instructions are detected, they can be 
replaced by a smaller and/or faster set of 
instructions that accomplish the same 
function. 

In addition to the machine-dependent 
optimizations just presented, most 
processor/operating-system combina- 
tions have a "standard" calling sequence 
used to invoke most external procedures. 
An interprocedural optimizer, coupled 
with heuristic analysis of the code, could 
modify this protocol on a procedure-by- 
procedure basis. For example, a function 
random ( ) that has only a single floating- 
point argument could be compiled to al- 
ways get its argument in a specific float- 
ing-point machine register. This might 
save both a PUSH and a POP via the normal 
argument stack. 

A Look into the Future of Compilers 

Compiler research is being conducted in 
a wide variety of areas today. A cursory 
look at recent computing literature will 
attest to this. Two interesting directions 
that relate directly to the topics covered in 
this article are interprocedural optimiza- 
tion and vectorization/parallelization. 
Richardson and Ganapathi have produced 
a good bibliography covering interproce- 
dural optimizing, and Padua and Wolfe 
present a survey of vectorization in the 
December 1986 CACM. 

I've mentioned instances in this article 
where interprocedural optimizations 
could assist in the generation of better 
code. Another possibility would be opti- 
mizations based on execution profile data 
maintained by the development environ- 
ment—the heuristic analysis I've men- 
tioned. One example would be a tech- 
nique that biases the code generated for 



if statements so that the most frequently 
occurring case is the fall-through path. 
This can improve execution performance 
on machines like the Intel 80386 by keep- 
ing the instruction prefetch queue full. 

Vectorizing compilers have been 
around since the late 1970s, but until re- 
cently, only a few programmers with ac- 
cess to a Cray or Cyber supercomputer 
have used one. But as the cost of high- 
performance computers continues to fall, 
we will see more and more medium- 
priced vector machines, as well as 
"supercomputers" based on networks of 
so-called general-purpose microproces- 
sors. Compilers that can discover and ex- 
ploit the parallelism inherent in many 
programs will be needed to take full ad- 
vantage of these machines. 

Owning today's microcomputers is 
comparable to having a 1960s mainframe 
on your desk. As these machines become 
more powerful, users expect more from a 
compiler to help them take advantage of 
this power. User demand, together with 
the machine's advancing capabilities, is 
leading us toward better and more power- 
ful compilers. Within as little as a year or 
two, we will probably see truly state-of- 
the-art optimizing compilers for the 
microcomputers now on our desks. ■ 

BIBLIOGRAPHY 

Aho, A. V., R. Sethi, and J. D. Ullman. 
Compilers— Principles , Techniques, and 
Tools. Reading, MA: Addison-Wesley, 
1986. 

Allen, F. E. "Bibliography on Program 
Optimization." Research Report RC- 
5767, IBM T. J. Watson Research Cen- 
ter, 1975. 

Chow, F. A Portable Machine-Independent 
Global Optimizer. Ph.D. thesis, Stanford 
University, 1983. 

Cooper, K. D., K. Kennedy, and L. 
Torczon. "The Impact of Interprocedural 
Analysis and Optimization on the Design 
of a Software Development Environ- 
ment." Sigplan Notices, vol. 20, no. 7, 
1985, pages 107-1 16. 

Lowry, E. S., and C. W. Medlock. "Ob- 
ject Code Optimization." Communica- 
tions of the ACM, vol. 12, no. 1, 1969, 
pages 13-22. 

Padua, D. A. and M. J. Wolfe. "Advanced 
Compiler Optimizations for Supercom- 
puters." Communications of the ACM, 
vol. 29, no. 12, 1986, pages 1 184-1201. 

Richardson, S., and M. Ganapathi. "Inter- 
procedural Analysis— A Bibliography." 
Sigplan Notices, vol. 22, no. 6, 1987, 
pages 12-17. 

Scarborough, R., and H. Kolsky. "Im- 
proved Optimization of FORTRAN Ob- 
ject Programs." IBM Journal of Re- 
search and Development, vol. 24, no. 6, 
1980, pages 660-676. 



170 BYTE- OCTOBER 1987 



WHO YA GONNA CALL? 
BUGBUSTERS! 



This is how 
PROBE displays 
real-time trace 
data. Trace 
information 
includes C source 
code, assembly 
language and 
data which was 
read or written 
during instruction 
execution. 
PROBE software 
simplifies the 
display by tossing 
out prefetched but 
unexecuted 
instructions. 







— (<«»ter> for mxt f*|b> 
ADS* C*M OftWiiWS) — <**V ott*r key to ox It tr*col 
' r"T7_» u u— ni 10 2 IOO: 



~~ (mrtr). Uorhmr 111. Ifl * 1W: 

iimh XEAI "~ rsv* 



.- («FtiO. Worker {11. 8«Ury = IB 



«5flffl«36 4«656B7279l«8e83-rrrFra8922M5A»A .fle^. 

r 'miMnmiLKBaomn = wu 



Ejjgn fiSff BP BYte COflpare CONsole DElete 
frl% FLOat Go IF I Nit INTerpt List 






PROBE knows all 
about your local 
and complex 
variables. You can 
display and 
change an array 
of structures as 
easily as shown in 
this display. 



PROBE's menu 
' window means 
you do not have to 
look up debug 
commands in the 
manual. Entering 
the command 
name shows you 
command syntax. 



a 



Real-time source-level debugging of very large programs simply can't be done 

Without AfrOn's AT PROBE. " Ed Oates, Director of PC Software Development, Oracle Corporation 



The good news with your new Microsoft 4 . or Lattice* 
C compilers is that they're providing more symbolic 
debugging information than ever. The bad news is you 
can't fit your program, a software debugger and that monster 
symbol table into memory - at least at the same time. 

The great news is that Atron's AT PROBE™ hardware- 
assisted software debugger not only has 1-MByte of onboard 
memory for debugger and symbol table, but it now supports 
local variables and complex data types. 

The AT PROBE is a debugging tool that plugs into your PC 
AT and monitors everything the processor is doing. In real 
time. 

REAL TIME DEBUGGING. 

SOONER OR LATER, YOU KNOW YOU'LL NEED IT. 

The AT PROBE's hardware-assisted breakpoints trap on 
reading, writing, executing, inputting and outputting. On 
single or ranges of addresses, including particular variable 
values. All in real time. For a mere software debugger to 
attempt this, a 1 minute program would take 5 hours to 
execute. 



OPTIMIZED CODE - GOOD, BAD AND UGLY 

The good news is optimizing compilers generate 
very tight code. The bad news. The time to debug 
optimized code is inversely proportional to the quality 
of the optimizer. Figuring out how in the world you 
ended up somewhere gets ugly, fast. 



With AT PROBE's real-time trace capability, program 
execution history is saved on-board, in real time. Once a 
hardware trap has occurred, PROBE displays the program 
execution in detail, including symbols and source code. Real- 
time trace can show you how out-of-range pointers got that 
way. And there's really no other way to debug interrupt-driven 
code. 

AT PROBE OPTIMIZES THE OPTIMIZED 

When the job of bugbusting is done, your AT PROBE 
becomes a performance analyzer. So you can have both 
reliability and performance. So you can send only the best 
software into the field. 

CALL TODAY FOR YOUR FREE BUGBUSTING MANUAL 

Nine of the top ten software packages were debugged using 
Atron tools. Our complete tutorial on state-of-the-art bug- 
busting is yours, free. Full of examples and illustrations, it 
will show you how to become a bugbuster yourself. 
Call today. Bust bugs tomorrow. 




^jjjSR* 



BUGBUSTERS 

A division of Northwest Instrument Systems, Inc. 

20665 Fourth Street • Saratoga, CA 95070 

408/741-5900 

Circle 22 on Reader Service Card 



*Soon to be supported. Copyright © 1987 by Atron. AT PROBE is a trademark of Atron. IBM and Oracle own numerous registered trademarks. 



Adv. by TRBA. 



Can You 
Talk To 
Your Modem... 



SPRING 



Springmodem 1200X lets you talk 
during data file transmission. 

Auto Data/Voice Transfer 

Springmodem lets you transmit a data file, then 
switch to voice mode to discuss and analyze 
the information. With the revolutionary new 
Springmodem you go directly from data mode 
to voice mode simply by picking up your 
telephone receiver. You are now ready to 
speak to another Springmodem user. To return 
to data mode simply hang. up the receiver. 
Springmodem will do the rest . . . 

with no data loss concerns. 

Auto Swap Dial 

With your new Springmodem you can now 
swap dial automatically. If the number you are 
calling is busy Springmodem will keep dialing, 
either the same number or another number, 
whichever you prefer, until the line is free and 
can be connected. 

•Hayes is a registered trademark of Hayes Microcomputer Products, Inc, 



. . And Does It 
Understand? 

• Fully Hayes* Compatible 

• Runs Crosstalk, PC talk 

• Frame Worl^ Symphony 

• PROCOMM 

• AT Command Compatible 

• Asynchronous Data Transmission 

• 1 200-300 BPS Data Transmission 

• Auto Dial/Auto Answer 

• Full or Half Duplex 

• To guarantee voice data transfer 

two Springmodems are needed 

• One year warranty. 

• Suggested retail price $ 189. 00 

Call Spring Circle Technology for more 
information about this outstanding 
modem. Dealer inquiries are welcome. 



717 Industry Drive, Seattle, WA 98188 

Tel: (206)575-8086 • Fax.: (206) 575-6808 



Circle 260 on Reader Service Card 



HEURISTIC ALGORITHMS 



A Search Strategy 

for Commonsense 

Logic Programming 

A heuristic algorithm for searching 



Paul V.Haley 



PROLOG, THE DE FACTO logic pro- 
gramming language, is widely assumed 
to be a problem solver that reasons logi- 
cally. However, its fixed search strategy 
often causes its reasoning to violate our 
notions of common sense. 

Just as human beings use common sense 
to cope with the real world, real-world 
computer programs need to be able to pur- 
sue appropriate goals. I'll discuss some ar- 
chitectural characteristics that would en- 
able a truly logical programming language 
to implement common sense using heuris- 
tics. Incorporation of heuristics in modern 
programming languages could give us the 
ability to write "smart" programs. Smart 
programs should be more efficient than 
programs that use brute-force algorithms. 

Unfortunately, an actual solution to the 
problems associated with certain kinds of 
inefficient programs does not yet exist. 
My goal here is to stimulate thought 
about logical reasoning using searches, 
and how such searches might be made to 
more closely resemble human approaches 
to problem solving. Unfortunately, even 
though I outline the scheme for a solution 
to the problems associated with "dumb" 
programs, an actual solution does not yet 
exist. 

Initial States 

Any problem solver starts in an initial 
state and determines a sequence in which 
to apply appropriate operators in order to 
transform the initial state into a goal state. 
Prolog's states are the goals on its stack 
and the contents of its propositional data- 
base (predicates and facts). Prolog's op- 
erators are its rules of logical implication. 



These rules generate goals and deduce 
new facts that change Prolog's problem- 
solving state. 

Conventional programming languages 
provide a rich vocabulary of control con- 
structs that, when used properly, can 
lead a program directly to a solution. 
Searching is performed at the option of a 
programmer and is expressed using these 
unambiguous control constructs. Prolog, 
on the other hand, provides very little in 
the way of direct control. Prolog's rules 
of logical implication are best viewed as 
statements of truth, with the language it- 
self deciding when to apply a rule. 

Prolog determines whether something 
is true by first looking for an explicit 
proposition in its database. It then tries to 
derive this proposition by checking 
whether it is implied by other contents of 
the database. To determine whether 
something is implied, given these con- 
tents, Prolog must search for an applica- 
ble rule. Since more than one rule might 
be capable of determining whether some- 
thing is true, Prolog must choose a rule to 
investigate first. 

All Prolog implementations check 
rules in the order in which they occur; 
this is referred to as depth-first search. 
Since, in checking a rule, Prolog might 
need to find out if some other thing is 
true, it also supports recursion by using a 
stack. When going back up the stack 
from a failure to determine something to 
be true, Prolog is said to backtrack. 
Thus, Prolog's control algorithm is 
depth-first searching with backtracking. 

In general, the search strategy used by 
an inference engine has a direct impact on 



the efficiency and the intuitive plausibili- 
ty of the resulting logical reasoning. The 
search strategies used manifest them- 
selves in reasoning behaviors that can 
have varying degrees of efficiency and 
that vary in their plausibility as cognitive 
models of how people reason. As always, 
efficiency is important in computer pro- 
grams. However, for programs attempt- 
ing to emulate human problem-solving 
capabilities, the plausibility of the rea- 
soning employed takes on critical signifi- 
cance. Programs that behave mechanical- 
ly until they stumble across a solution to a 
problem are clearly less intelligent than 
programs that proceed directly toward a 
solution without wasting time pursuing 
fruitless directions. 

The Problem 

For example, to get from point A to point 
B, you might be able to walk, ride, or fly. 
You might walk to your car, ride to the 
airport, and fly to your destination. If no 
direct flight was available, you might 
travel to an intermediate destination and 
travel on from there. The following Pro- 
log pseudocode encodes some of this 
knowledge. 

Travel(A,B) :=Walk(A,B); 
Ride(A,B); 
Fly(A,B). 

continued 

Paul V. Haley is vice president for re- 
search and development at Intelligent 
Technology Inc. He can be reached at 
115 Evergreen Heights Dr., Pittsburgh, 
PA 15229. 

OCTOBER 1987 -BYTE 173 



A SEARCH STRATEGY 



In Prolog, there 
can never be a goal 
more relevant than 
the one most recently 
generated. 



Ride(A,B) := Drive(A,B) ; 
Bike(A,B); 
Taxi(A>B); 

Train(A,B); 
Bus(A,B) . 

Few people trying to get from New York 
to London would seriously consider 
walking or taking a bus or taxi. Common 
sense would dictate that you needed to 
fly. Once you knew how to take care of 
the unfamiliar parts of the trip, you would 
think for a moment to ensure that you 
could get a ride to the airport. You would 
probably never think of walking at all. 
However, consider the behavior of the 
Prolog program below. Without going 
into great detail, the program would pur- 
sue, fail to achieve, and finally achieve 
goals something like this (< = denotes a 
failure to achieve, and = > indicates 
achievement of a goal): 

=> Goal(Travel(New York, London) ) 
=> Goal(Walk(New York, London)) 
<= Goal(Walk(New York, London) ) 
=> Goal(Ride(New York, London)) 
=> Goal(Drive (New York, London)) 
<= Goal(Drive(New York, London) ) 
=> Goal(Bike(NewYork,London)) 

< = Goal(Bike(New York,London) ) 
=> Goal(Taxi(New York, London)) 

< = Goal (Taxi (New York, London) ) 
=> Goal(Train(New York, London)) 
<=Goal(Train(New York, London)) 
=> Goal (Bus (New York, London)) 
<= Goal(Bus (New York, London) ) 
<= Goal(Ride(New York,London) ) 
= > Goal ( Fly ( New York, London) ) 
=> Fly (New York, London) 

=>Travel(New York, London) 

This Prolog program does not display 
common sense. Because it pursues a goal 
by checking the next rule that might 
achieve that goal, Prolog is prone to a fa- 
tal catch-22: It can't pursue the most rele- 
vant goal if that goal hasn't already been 
generated. However, Prolog generates 
goals only by checking the next rule that 
could derive the most recent goal. That 
is, Prolog never generates an alternative 
goal. Thus, there can never be a goal that 
is more relevant than the one most recent- 
ly generated. This is not very satisfying. 



It is difficult to write a Prolog program 
that will display common sense in a vari- 
ety of situations. For instance, in our 
travel example, many considerations 
must be weighed to qualify the feasibility 
of driving as an appropriate mode of 
transportation: There has to be a road to 
drive on; the road has to be passable; 
there must be a car; it must start; it must 
have enough gas to travel at least as far as 
the next gas station; the next gas station 
has to be open; if the car has a diesel en- 
gine, the gas station has to sell diesel 
fuel; there must be sufficient money to 
pay for the fuel required; and so on. All 
these conditions would have to be explic- 
itly stipulated and satisfied. 

People don't consider every possible 
detail in this way. They solve such trivial 
problems without effort; it's simply 
"common sense." They think about 
roads only if they know they will be driv- 
ing; they don't worry about gas stations 
unless there is a compelling reason, such 
as crossing an uninhabited desert. 

Common sense seems to involve 
choosing what to consider and what to ig- 
nore. Unfortunately, deciding to ignore 
certain details can result in unsound or 
incomplete "logical" formulations. For 
example, by not considering whether 
there is a road to the top of Mount Ever- 
est, a program might reach the unsound 
conclusion that one could drive there. 
Fortunately, deciding the order in which 
to consider things will never, in itself, 
lead to an erroneous conclusion. If the 
first goal considered is unfruitful, the 
correct alternative is not abandoned— it is 
only delayed. To the extent that a pro- 
gram orders alternatives intelligently, it 
will pursue fewer fruitless goals and 
therefore be more efficient. 

Consider again our travel rule: 



Travel(A,B) 



=Walk(A,B); 
Ride(A,B)j 
Fly(A,B). 



In response to a goal to get from A to B, 
Prolog will always "think about" walking 
before flying. There is nothing we can do 
about this algorithmically correct, but 
maddeningly counter-intuitive, behavior. 
One method to provide this system with 
some common sense is to use heuristics. 

A Heuristic Search Solution 

In an architecture supporting heuristics, 
the travel rule could simultaneously gen- 
erate the following goals: 

Goal (Walk( New York, London) ) 
Goal (Ride (New York, London) ) 
Goal (Fly (New York, London) ) 

For these goals to exist simultaneously, 



they would have to be represented as data 
in the propositional database rather than 
being procedure calls that exist transient- 
ly on the stack, as in Prolog. We could 
then reason about these goals just as flex- 
ibly as if they were facts in Prolog's data- 
base. Using this approach, rules can be 
checked in response to new goal data, 
rather than in response to recursive pro- 
cedure calls, as in Prolog. 

The travel rule takes on a new look 
from this perspective. It is equivalent to 
these three rules: 

Goal(Travel(A,B)),Walk(A,B)-> 

Travel(A,B) 
Goal(Travel(A,B) ) ,Ride(A,B) -> 

Travel(A,B) 
Goal(Travel(A,B)),Fly(A,B) -> 

Travel(A,B) 

When the goal to travel from New York to 
London is pursued, each of these rules 
responds in parallel, generating the fol- 
lowing goals: 

Goal (Walk (New York, London) ) 
Goal(Ride(New York,London) ) 
Goal (Fly (New York, London) ) 

All three of these, in addition to the origi- 
nal goal, are represented as data in the 
propositional database. Given the possi- 
ble methods of travel from New York to 
London, each represented as one of the 
above subgoals, how does the program 
determine what goal to consider first? 
Each time a goal is generated, the pro- 
gram can evaluate it according to its set of 
heuristics. Each heuristic can cast a vote 
in favor of pursuing a specific goal. The 
goal with the most votes is deemed the 
best. The inference engine then checks 
all rules that might achieve this goal, or 
any subgoal, and executes any applicable 
rules until none remain. By always pursu- 
ing the best goal, this inference engine 
performs a "best-first" search. We might 
use heuristics of the form 

Heuristic 1: 

Goal(Fly(A,B)), 

Distance_between(A,B, Distance) , 
Distance > fly_threshold 
-> 
VoteFor(Goal(Fly(A,B) ) ) . 

Heuristic2: 

Goal(Walk(A,B)), 
Distance_between( A, B, Distance) , 
Distance < walk_threshold 
-> 
VoteFor(Goal(Walk(A,B))). 

These are domain-specific heuristics that 
cause the program to first consider flying 
for long trips and walking for short trips. 



174 BYTE- OCTOBER 1987 



Circle 267 on Reader Service Card 



A SEARCH STRATEGY 



Being rules themselves, these heuristics 
can also generate subgoals, as do the 
rules described above. 
For example, given 

Goal(Fly(New York, London) ) 

Heuristic 1 would generate the subgoal 

Goal(Distance_between(New , 

York,London,??)) 

Heuristic2, given the same goal, would 
generate an equivalent subgoal. Thus, the 
single goal to determine the distance be- 
tween New York and London would have 
two sources: 

Goal ( Fly ( New York , London) ) , 

Heuristicl 
Goal ( Fly (New York , London) ) , 

Heuristic2 

where a source is the combination of goal 
and rule that generates the subgoal. 

The program could vote for any goal it 
created each time that goal was generated; 
that is, it could cast a vote in favor of a 
goal each time a source was added. Such 
a program would cause the system to 
strive to satisfy any goal that would allow 
it to evaluate or achieve a number of high- 
er level goals. This is a domain-indepen- 
dent heuristic, as opposed to the previous 
heuristics, which are specific to domains 
in which flying or walking are relevant. 

Using this heuristic would cause the in- 
ference engine to focus on establishing 
the distance between New York and Lon- 
don before focusing on walking, flying, 
or driving, each of which would have 
only one vote. After establishing the dis- 
tance, which is presumably greater than 
both the riding and walking thresholds, 
the program votes for trying to fly, which 
dominates. If the distance were less than 
the walking threshold, a deciding vote 
would be cast in favor of trying to walk. 

Such a strategy yields reasoning that 
more closely resembles our own intuitive 
approach to problem solving and results 
that are more in keeping with our com- 
monsense expectations. The ability to ap- 
ply any combination of heuristics to guide 
logical reasoning would dramatically as- 
sist in developing useful applications dis- 
playing more of what we normally think 
of as intelligence. ■ 

FOR MORE INFORMATION 

Laird, J. E. , and A. Newell. A Univer- 
sal Weak Method. Computer Science 
Dept. Technical Report CMU-CS-83- 
141. Carnegie-Mellon University, 1983. 

Haley, Paul V. Opportunistic Back- 
ward Chaining. Los Angeles, CA: Infer- 
ence Corporation, 1987. 




The Real 
World Runs 
on Real Time 



TViodern intelligent systems require real 

time response and high efficiency. That's why OS-9/68000 

has been the designer's choice in thousands of the most demand 

ing real-life applications. 

OS-9 is very compact, highly adaptable, and fully ROMable. It's 
C source code compatible with Unix, and it's supported by a wide range 
of outstanding software tools, including graphics and networking options. 

Many leading suppliers of 68000 and 68020 based systems offer ready-to-run 
OS-9 packages for their products. Or you can use a Microware PortPak to 
install OS-9 on your own custom hardware. 

When microseconds count, you can count on OS-9. 

OS-9/68000 — The Emerging Standard 



— Truetomrtc-^ 



Microware Systems Corporation 

1866 N.W. 114th Street • Des Moines, Iowa 50322 
Phone 515-224-1929 • Telex 910-520-2535 



Circle 180 on Reader Service Card 



OCTOBER 1987 • B Y T E 175 



ElM 



'T'TiIJri 



■a 



hI 



j From micro to mainframe, 
Casio's got the hardware for your software. 








At first glance, it may look like an 
ordinary calculator, but the Casio 
solar CM-100 is anything but. It's 
an extraordinary software tool 
that's as useful in programming an 
Apple™ as it is a mainframe IBM™ 

ThekeytotheCM-100's 
incredible flexibility is Casio's 
adjustable bit-size selector which 
can be set to suit any size com- 
puter up to 32 bits. And its block 
display which can, by scrolling 
blocks of 8 digits at a time, display 
up to a 32 bit word. 



But there's much more to this 
pocket-size powerhouse. It can do 
base conversions from binary/ 
octal/decimal/hexadecimal modes 
and can store in its memory 
numbers in any base. It also has 
Shift, Rotate, Arithmetic Shift and 
Boolean functions that include 
AND, OR, XOR and NOT. 

Perhaps what is most extraor- 
dinary about the CM-100 though, 
is not how much it can do, but how 
little it costs to do it. The CM-100 is 
the only calculator that'll let you do 



all your software figuring for less 
than you'd figure to pay for an 
average ($25.00) textbook. 

The more you work with com- 
puters — whatever their size — the 
more you need a CM-100. Whether 
you're a student or professional, 
it's the one piece of hardware that 
will make designing your software 
easier. 

Apple and IBM are trademarks of the Apple and IBM Corporations. 




Where miracles never cease 



Casio, Inc. Consumer Products Division: 15 Gardner Road, Fairfield, NJ 07006 (201) 882-1493, Los Angeles (213) 803-3411 
176 BYTE- OCTOBER 1 987 Circle 45 on Reader Service Card 



HEURISTIC ALGORITHMS 



Mathematical Reasoning 

A Prolog program uses heuristic methods to solve equations 



Leon Sterling 



[Editor's note: This article is adapted 
from chapter 22 o/The Art of Prolog by 
Leon Sterling and E. Y. Shapiro, MIT 
Press, 1986.] 

SUCCESSFUL MATH STUDENTS do 
not solve equations by blindly applying 
axioms of algebra. Instead, they learn, 
develop, and use various methods and 
strategies. In this article, I'll describe and 
present key sections of an equation 
solver, written in Prolog, that models this 
heuristic behavior. [Editor's note: The 
complete source code for the program is 
approximately 12 K bytes long and is 
available on disk, in print, and on BIX. 
See the insert card following page 304 for 
details. Listings are also available on 
BYTEnet. See page 4.] 

The program is a simplified version of 
PRESS (which stands for Prolog equa- 
tion-solving system), a system developed 
by Alan Bundy and coworkers in the 
mathematical reasoning group in the Uni- 
versity of Edinburgh's department of ar- 
tificial intelligence (see reference 1). The 
original version of PRESS, written in 
1976 by Bob Welham, was intended as a 
research tool for investigating methods of 
controJJing search— which is, by the way, 
an alternate definition of heuristic. 

What does equation solving have to do 
with searching? Quite a lot, when you 
construe it as a search for a sequence of 
correct algebraic identities to apply to an 
equation to find the value of an unknown. 

The Use of Prolog 

Prolog makes it easy to express tasks in- 
volving symbolic manipulation. As an ex- 



ample, let's consider the task of deciding 
whether a given symbolic expression is a 
polynomial in a given term. For instance, 
is the expression a 2 — 3a + 2 a polyno- 
mial in the constant al 

A constant is a polynomial in any term 
X. X is a polynomial in itself. Sums, dif- 
ferences, and products of polynomials in 
Xare polynomials in X. So, too, is a poly- 
nomial raised to a nonnegative integer 
power, and the quotient of a polynomial 
by a nonzero constant. 

By this informal definition, a 2 — 3a + 
2 is a polynomial in a because it is the 
sum of the polynomials a 2 — 3a and 2. 
The expression a 2 - 3a is a polynomial 
because it is the difference of the expres- 
sions a 2 and 3a, which are similarly 
shown to be polynomials in a. 

The top level of a Prolog program for 
recognizing polynomials is shown in list- 
ing la. It is no more (and no less) than a 
translation of the informal rules given 
above. The relation scheme of the pro- 
gram is polynomial(expression, 
term) ; the relation is true if Expression 
is a polynomial in Term. One thing that 
makes the code so natural is its declara- 
tive quality. For example, the fact poly- 
nomial (X,X) says that a term X is a poly- 
nomial in X itself. The rule 

polynomial(Polyl+Poly2,X) :- 
polynomial (Polyl,X) , 
polynomial (Poly2,X) . 

says that the sum Polyl+Poly2 is a poly- 
nomial in X if both Polyl and Poly 2 are 
polynomials in X. The colon-hyphen se- 
quence :- can be read as "if," and the 



comma inserted between relations as 
"and." 

Notice that only what is true needs to 
be specified in the program. For in- 
stance, it is not necessary to state explic- 
itly that sin x is not a polynomial in x. 
That fact is taken care of implicitly in 
Prolog's computational model. 

Another property that makes Prolog 
good for this kind of program is that the 
language (in most implementations) lets 
programmers use the natural algebraic 
syntax for writing mathematical expres- 
sions. Internally, A+B is a structure 
1 + f ( A+B) , where ' + ' is an uninterpreted 
function symbol, but this is irrelevant to 
the programmer. 

What Is Equation Solving? 

We can describe equation solving syntac- 
tically. Given an equation 

left hand side = righthand side 

in an unknown x, the object is to produce 
an equivalent statement 

x = righthand side 1 

where righthand side 1 does not contain 
x. This final equation is our solution. 
Two equations are equivalent if one can 
be transformed into the other by a finite 
number of applications of the rules of al- 

continued 

Leon Sterling is an assistant professor of 
computer science at Case Western Re- 
serve University (University Circle, 
Cleveland, OH 44106). 



OCTOBER 1987 -BYTE 177 



MATHEMATICAL REASONING 



gebra, known as rewrite rules (see refer- 
ence 2). 

Our equation solver handles three cate- 
gories of equations in one unknown, ex- 
emplified as follows: 

cos;c(l -2sin;c) = (1) 

x 2 - 3x + 2 = (2) 

2 2x - 5 x 2* +1 + 16 = 0. (3) 

In general, the program handles algebraic 
functions involving the operations + , - , 
x , /, exponentiation to an integer power, 
and trigonometric and exponential func- 
tions. I'll briefly show how the solver 
handles each of the example equations. 

The first step in solving equation (1) is 
factorization, which results in two sim- 
pler equations: 

cosx = (la) 

l-2sin;c = 0. (lb) 

A solution to either of these equations is a 



solution to the original equation. 

An algorithmic method called isola- 
tion handles equations like (la) and (lb), 
in which a single unknown occurs just 
once. The method repeatedly applies an 
appropriate inverse function to both sides 
of the equation until the single occur- 
rence of the unknown is isolated on the 
left-hand side. For instance, the isolation 
algorithm handles equation (lb) as 
follows: 

2 sin x = 1 

sin* = 1/2 

x = arcsin 1/2. 

Equation (2) is a quadratic equation in x. 
Like any proficient high school student, 
the program solves it by a direct applica- 
tion of the quadratic formula. 

Our equation-solving program uses a 
process called homogenization to solve 
equation (3). The aim of homogenization 
is to transform an equation involving log- 
arithmic, exponential, or other transcen- 



Listing la: Top-level code for recognizing polynomials. 

polynomial(X,X) . 
polynomial ( Term, X) :- 

constant(X) . 
polynomial (Polyl+Poly2,X) :- 

polynomial Polyl,X), polynomial Poly2,X) . . 
polynomial (Polyl-Poly2,X) :- 

polynomial (Polyl,X), polynomial(Poly2,X) . 
polynomial(Polyl*Poly2,X) :- 

polynomial (Polyl,X) , polynomial (Poly2,X) . 
polynomial(Poly/Term,X) :- 

polynomial (Poly,X), constant(Term) . 
polynomial(Poly"N,X) :- 

integer(N), N>=0, polynomial(Poly,X) . 



Listing lb: Top-level code for equation solving. 

solve_equat ion(A*B=0, X , Solution) : - 
factorize(A*B,X, Factors), 
remove_duplicates(Factors, Factorsl) , 
solve_factors( Factors 1,X, Solution) . 

solve_equation(Equation,X, Solution) :- 
single_occurrence(X, Equation) , 
position(X, Equation, [Side|Position] ) , 
maneuver_sides( Side, Equation, Equationl) , 
isolate (Position, Equationl, Solution) . 

solve_equat ion ( Lhs=Rhs , X , Solution) : - 
polynomial ( Lhs , X) , 
polynomial Rhs,X) , 

poly nomial_normal_f orm ( Lhs-Rhs , X , PolyForm ) , 
solve_polynomial _equation( PolyForm , X , Solution) . 

solve_equation( Equation, X, Solution) :- 
homogenize ( Equation , X , Equationl , XI) , 
solve_equation(Equationl, XI, Solutionl) , 
solve_equat ion( Solutionl , X , Solution ) . 



dental functions into a polynomial in 
some term containing the unknown. For 
example, the key to solving equation (3) 
is to view it as a quadratic equation in 2 X : 

2 2x - 5 x 2* +1 + 16 = 

(2*) 2 - 10 x 2 X + 16 = 0. 

Solving by the quadratic method for 2 X 
gives two solutions of the form 2 X = Rhs, 
where Rhs (the right-hand side) is free of 
x. Isolation techniques will then solve 
these equations for x. 

Homogenization consists of four steps. 
The program parses the equation, collect- 
ing all maximal (i.e., not part of a larger 
term) nonpolynomial terms containing 
the unknown into an offenders set. For 
equation (3), the set would be (2 2x ,2 x+1 ). 
The second step finds the reduced term- 
that is, the term in which the equation is a 
polynomial. The third step is to find re- 
write rules that express each of the ele- 
ments of the offenders set as a polynomial 
in the reduced term. Finding the rules 
guarantees that homogenization will suc- 
ceed. The final step is performing the 
substitutions given by the rewrite rules. 

The predicate solve_equat ion (Equa- 
tion^, Solution) is shown in listing 
lb. It is the top-level relation of the equa- 
tion solver. The relation is true if Solu- 
tion is a solution to Equation in the un- 
known X. The predicate has four clauses, 
one for each of the four methods used in 
solving the three types of equations: fac- 
torization, isolation, polynomial analy- 
sis, and homogenization. 

Each method has two parts: a condi- 
tion testing whether the method is appli- 
cable, and the application of the method. 
I'll look briefly at how each method is 
implemented in Prolog. 

Factorization 

Factorization is the first method the equa- 
tion solver attempts. The applicability 
test is trivial: The right-hand side of the 
equation must be 0, and the left-hand side 
must have the form A*B. In Prolog, the 
test is accomplished through unification 
(i.e., pattern matching) of the equation to 
be solved with the term A*B=0. 

If the test succeeds, the program in- 
vokes the factorization operations. Each 
factor of the left-hand side is equated to 
and solved recursively by the use of 
solve_f actors. Single solutions are 
found by solve_f actors, with alterna- 
tive solutions being given on back- 
tracking. This is described by the first 
clause in listing lb. 

Isolation 

The second method tried by the solver is 
the isolation of the unknown on the left- 



178 BYTE- OCTOBER 1987 



MATHEMATICAL REASONING 



hand side of the equation. The second 
clause in listing lb defines this method. 
The condition for applicability is that there 
be a single occurrence of the unknown X, 
checked by single_occurrence . 

The isolation method proceeds to the 
predicate position, which calculates the 
position list of the unknown. Consider 
the equation cos x = 0. The term cos x is 
the first argument of the equation, and x 
is the first and only argument in cos x. 
The position list of x is therefore [1 , 1 ] , as 
illustrated in figure la. Figure lb shows 
the position list of x in the equation 1 — 2 
sin* = 0, which is [1,2,2,1]. 

The next predicate in the isolation 
method is maneuver_sides(N, Equa- 
tion, Equationl). It ensures that the 
unknown X appears on the left-hand side 
of Equationl. The argument N is the 
head of the position list and indicates the 
side of the equation in which the un- 
known appears (1 = left, 2 = right). The 
code for maneuver_sides consists of 
two facts, covering the cases that X is on 
the left-hand or right-hand side of 
Equation: 

maneuver_s ides ( 1 , Lhs=Rhs , 

Lhs=Rhs) . 

maneuver_s ides ( 2 , Lhs=Rhs , 

Rhs=Lhs) . 

The final stage of the isolation method 
makes the unknown the subject of the 
equation by repeatedly applying the re- 
write rules until the position list is 
exhausted: 

isolate( [N|Position] , Equation, 
IsolatedEquation) :- 
isolax(N, Equation, Equationl) 
isolate (Position, Equationl, 
IsolatedEquation) . 



isolate ( [ ] , Equation, Equation) . 

The rewrite rules, or isolation axioms, 
are specified by the relation isolax(N, 
Equation, Equationl) where N is an ar- 
gument position, Equation is an expres- 
sion before applying the rewrite rule, and 
Equationl is the expression afterward. 

Polynomial Analysis 

The condition of the polynomial method, 
given by the third clause in listing lb, is 
that both sides of the equation be polyno- 
mials in the unknown. If the condition is 
satisfied, the equation is converted to a 
polynomial normal form, and the polyno- 
mial solver goes to work. 

The polynomial normal form is a list of 
tuples of the form (A i9 Ni), where each A f 
is the coefficient of the corresponding, 
necessarily nonzero N im The tuples are 
sorted into decreasing order of N t ; for 
each degree i, there is at most one tuple. 
For example, the list [(1,2), (-3,1), 
(2,0)] i s the normal form for x 3 - 3x + 2 . 

Reduction to normal form occurs in 
two stages: 

poly nomial _nor mal_f or m ( Poly nom i a 1 , 
X,NormalForm) :- 

polynomial_f orm ( Polynomial , X , 

Poly Form), 
remove_zero_terms (Poly Form , 

NormalForm) . 

The code for polynomial_form closely 
follows the code for polynomial given in 
listing la. For each clause used in the 
parsing process, a corresponding clause 
gives the resultant polynomial. For in- 
stance, the polynomial form of a term 
x" is [(l,n)], which is expressed by the 
clause 

continued 





















a 




1 




b 




| 






1 




1 


I 




I 




cos 

1 

X 









i 









1 

1 




I 

X 














I 






i 




I 












2 




sin 

I 

X 





Figure 1: A diagram showing how the position list for an unknown is generated. 
(a) In the equation cos x = 0, the position list for x is [1,1]. (b) In the equation 
1 — 2 sinx = 0, the position list for x is [1,2,2,1]. 



Circle 109 on Reader Service Card 

r \ 

Now Your 
Computer 
Can See! 

Two camera designs for scientific, 
engineering, art, graphics and 
OEM applications. 

Plug one of these digitizing cameras into 
your personal computer, focus the lens, 
and produce immediate visual input A 
binary image is instantly loaded into the 
MOS-sensor-based memory array, from 
which it can be reviewed and manipu- 
lated like any other binary file. 

MicronEye™ 

$295. 00 

Produce inexpensive digi- 
tized images for desktop 
publishing, graphics, draft- -.„.„, 
ing, signature recognition, 
animation and a variety of / 

other applications. The / 

MicronEye™ is extremely 
versatile for photographing flat and 3-dimen- 
sional subjects, and provides instantaneous 
response. Multiple exposure capability allows 
a range of gray scale values. Available now 
for IBM PC and compatibles, Apple II, Apple 
Macintosh and Commodore 64. 

Idetix™ 
$695. 00 

For rugged indus- 
trial applications, the 
high-speed Idetix™ 
camera offers en- 
hanced still and 
muItHntervaT imaging capabilities that are 
ideal for process control, factory inspection 
and robotics applications. Available now for 
IBM PC and compatibles. 




Each camera comes complete with lens, 
cable, interface board and introductory 
software. Custom engineering and appli- 
cations assistance are available. 



For Credit Card and C.O.D. orders, or for 
further information, phone toll free: 

1-800-253-2226 

In Idaho, phone (208)939-0420 




GENERAL 
IMAGING 



CORP. 



P.O. Box 9000 • Boise, Idaho 83707 

MicronEye™ and IdeMx™ are manufactured by 

Micron Technology, Inc. 

Shipped UPS-add $10.00 for shipping and handling; 
$1.90 C.O.D. charge; please add applicable sales tax. 

1BM PC is a trademark of International Business Machines, 
Apple II and Apple Macintosh are trademarks of Apple 
Computer, Inc., Commodore 64 is a trademark of 
Commodore Corp. 



OCTOBER 1987 -BYTE 179 



Protect Your 
Copies of BYTE 

NOW AVAILABLE: 
Custom-designed library files 
or binders in elegant blue 
simulated leather stamped in 
gold leaf. 



Binders— Holds 6 
issues, opens flat for 
easy reading. 
$9.95 each, two for 
$18.95, or four for 
$35.95. 



mil 




Files— Holds 6 issues. 
$7.95 each, two for 
$14.95, or four for 
$27.95. 

Order Now! 



' 



Mail to: Jesse Jones Industries, Dept, BY, 
499 East Erie Ave., 
Philadelphia, PA 19134 



Please send . 



files; 



binders for BYTE magazine. 

Enclosed is $ Add $1 per 

file/ binder for postage and handling. 
Outside U.S.A. add $2.50 per file/ binder 
(US. funds only please). 

Charge my: (minimum $15) 

American Express Visa 

MasterCard Diners Club 



Card | _ 
Signature 



Exp. Date 



CALL TOLL FREE (24 hours): 
1-800-972-5858 



Name 
Address 
City _ 
State 



.(No P.O. Box) 



MATHEMATICAL REASONING 



Zip 



Satisfaction guaranteed. 

Pennsylvania residents add 6% sales tax. 

Allow 5-6 weeks delivery in the U.S. 



BYTE m 



polynomial_form(X~N,X,[(l,N)]). 

Classical algorithms for handling polyno- 
mials apply to equations in normal form. 
The recursive clauses for polynomials 
form manipulate the polynomials using 
simple algorithms to preserve this form. 

Homogenization 

The fourth clause in listing lb shows the 
top-level homogenization logic. The 
original equation is transformed into a 
new equation in a new unknown. This 
new equation is then solved recursively, 
and its solution is used to obtain a solu- 
tion to the original unknown. 

Here's the code implementing the four 
stages of homogenization needed for 
solving equation (3) and similar 
equations: 

homogenize (Equation, X, 

Equation!., XI) :- 
of fenders (Equation, X, Of fenders), 
reduced_term(X, Of fenders , 

Type, XI), 
rewrite ( Offenders , Type , XI , 

Substitutions), 
substitute (Substitutions , 

Equation, Equationl) . 

The code for offenders is similar to that 
for polynomial. A typical clause is 

offenders ( Expr A+ExprB , X , 

Offenders) :- 
offenders(ExprA,X,Off A) , 
offenders(ExprB,X,OffB) , 
append(0ffA,0ffB, Offenders) . 

This clause states that the offenders set of 
the expression ExprA+ExprB is the result 
of concatenating the offender sets of 
Expr A and ExprB. 

The code for offenders checks that 
there are at least two distinct elements in 
the offenders set. If there is only a single 
offender, homogenization will not be 
useful. 

The predicate reduced_term finds a 
reduced term— that is, a candidate for the 
new unknown. Finding a reduced term 
proceeds in two stages: classifying the 
type of the offenders set, and finding a re- 
duced term of that type. 

reduced_term(X, Of fenders , 

Type, XI) :- 
classif y(Offenders,X,Type) , 
candidate (Type, Of fenders, X, XI) . 

The program uses heuristic rules to clas- 
sify the offenders set. In the example 
equation (3), the offenders set is of type 
exponential: All elements in the offend- 
ers set have the form A B where A does not 
contain the unknown but B does. 



Heuristic knowledge is also the basis 
for finding a suitable reduced term: If all 
the bases of the exponential terms in the 
offenders set are the same, say, A, and 
each exponent is a polynomial in the un- 
known X, then A* is a suitable reduced 
term: 

candidate ( exponent ial, Of fenders , 
X,A~X) :- 
base(Offenders,A) , 
polynomial_exponents ( Offenders , 
X). 

The next step checks that each member of 
the offenders set can be rewritten in terms 
of the chosen reduced term. This involves 
finding a suitable rewrite rule. In this 
case, the applicable rules are 

homogenize_axiom( exponential, 

A~(N*X),A'%(A~XrN). 

homogenize_axiom ( exponential, 

A~(X+B),A'%A~B*A~X). 

Extending the Solver 

The equation-solving methods are readi- 
ly adaptable to similar symbol-manipula- 
tion tasks, such as solving inequalities, 
proving identities, and solving simulta- 
neous equations. Adding these capabili- 
ties is primarily a matter of adding rules 
covering the appropriate symbols. 

An interesting extension of PRESS (the 
large system from which the minisolver is 
derived) is the learning program LP, 
written by Bernard Silver (see reference 
3). Starting with a subset of the methods 
of PRESS, LP was given worked exam- 
ples of how to solve equations. LP ana- 
lyzed the worked solutions and was able 
to build a new equation-solving method 
to solve similar equations. Essential to 
LP's success was the logical nature of the 
equation-solving program— for example, 
the distinction between testing for meth- 
ods applicability and the execution of a 
method. 

The range and variety of extensions to 
PRESS illustrate the importance of using 
a logic programming language like Pro- 
log for heuristic applications. ■ 

REFERENCES 

1. Sterling, L. S., A. Bundy, L. Byrd, R. 
O'Keefe, and B. Silver. "Solving Symbolic 
Equations with PRESS." In Proceedings of 
EUROCAM 82, Springer Lecture Notes in 
Computer Science, vol. 144, 1982, pages 
109-116. 

2. Bundy, A., and R. Welham. "Using 
Meta-Level Inference for Selective Appli- 
cation of Mul tiple Rewrite Rules in Alge- 
braic Manipulation." Artificial Intelli- 
gence, vdL. 16, 1981, pages 189-212. 

3. Silver, B. Meta-Level Inference. New 
York: North-Holland, 1986. 



180 BYTE- OCTOBER 1987 



THE DRIVE 

THAT MAKES 

YOUR COMPUTER 

WORTH 
LOOKING ENTO. 




Circle 245 on Reader Service Card 
(Dealers: 246) 



We'll let you in on a secret. If the small 
computer you're using has a hard disc drive 
memory, chances are that drive was made 
by Seagate. 

There's a reason for this — actually over 
6 million reasons. (That's the number 
of hard disc drives Seagate has shipped to 
quality-conscious customers throughout 
the world.) 

Why are we telling you this? 

So you can be sure you get Seagate quality 
in your new compute]; disc memory upgrade 
or add-on. 

The name on the outside may be different, 
but now that you know the difference, 
make certain that the name on the inside 
is SEAGATE. 

Seagate Technology, 920 Disc Drive, 
Scotts Valley, C A 95066. 800-468-DISC . 

<SP Seagate 



OCTOBER 1987 -BYTE 181 



The $638,400 
microcomputer commuter. 



Scott Hunter, systems development manager, 
isn't the average commuter. When he arrives 
at his office today, he will issue purchase 
orders for micros and peripherals worth over 
$600,000. Scott is upgrading his company's 
PC equipment to speed communications 
between the field offices and headquarters. 
His company knows that Scott will select the 
most efficient, cost-effective and reliable 
models available. He is a 'Tower User" of 
micros at work and at home. 

To keep his edge as a microcomputer expert, 
Scott reads BYTE, the authoritative micro 
technology magazine for the 'Tower 
Reader." BYTE readers have tremendous 
clout when it comes to micro-related 
purchases where they work. During the next 



12 months, BYTE subscribers with technical 
titles like Scott's will buy or influence their 
companies' average purchases of $710,097 
for micros, peripherals and software. It's 
a fact. . .the BYTE reader is the 
'Tower Buyer." 

In terms of buying influence, our "Scott 
Hunter" typifies the average BYTE reader 
with a technical job title, according to the 
1986 Hardware and 1987 Software 
Purchasing Influence Studies. 

Are you putting the "Power of BYTE" to 
work for your micro products? To find out 
how . . . call your BYTE Advertising Sales 
Consultant today. 



nin in 




BYTE 

THE SMALL SYSTEMS JOURNAL 



One Phoenix Mill Lane 
Peterborough, NH 03458 
(603) 924-9281 



182 BYTE- OCTOBER 1987 



HEURISTIC ALGORITHMS 



Neural-Network 
Heuristics 



Three heuristic algorithms that learn from experience 



Gary Josin 



THE ACCELERATING PACE of high- 
performance hardware development and 
the emergence of parallel-machine archi- 
tectures signal the need for a new ap- 
proach to designing software. We need a 
new software paradigm that cannot only 
take advantage of hardware advances but 
also can deal with circumstances the soft- 
ware* s writer could not have foreseen. 

What we need is software that can 
learn from experience. A concept that 
lends itself well to the heuristics of learn- 
ing from experience is the neural-net- 
work model. Several algorithms have 
been developed to test the validity of neu- 
ral-network heuristics. This article ex- 
plores three of these algorithms. [Edi- 
tor's note: For an explanation of another 
of the neural-network algorithms, see 
"Back-Propagation " by William P. 
Jones andJosiah Hopkins on page 155.] 

Before delving into the algorithms, 
however, let me explain why the neural- 
network paradigm holds much promise. 

Computational Richness 

When performing intelligent information 
processing, such as image recognition, 
language comprehension, or combina- 
torial optimization, the human brain out- 
performs even the fastest digital com- 
puter. This is primarily because of the 
fundamental difference in information- 
processing capabilities of digital com- 
puters and human brains. 

Digital computers can be programmed 
for intelligent tasks. The problem is that 
the algorithmic solution to many informa- 
tion-processing tasks is far too complex 
to be programmed. 



But that's not the only problem. Even 
if a particular application has a clear and 
concise solution, many algorithms are 
too computationally intensive to allow a 
digital computer to find a solution in any 
reasonable period of time. 

The computational richness of the 
human brain comes from its large num- 
ber of "living neurons" that are con- 
nected to each other by a complex net- 
work of synapses. Neural-network 
designs use the structure of the human 
brain to try to emulate the way intelligent 
information processing occurs within a 
living brain. 

In software simulations, the basic 
structure of a neural network is very sim- 
ple. It consists of an array of elements 
usually called "neurons," interconnec- 
tions between these neurons, and some 
I/O scheme. The intelligent information 
properties of the network arise from the 
topology of the network and in the learn- 
ing rules of the neurons. 

The topology of a neural network de- 
scribes factors such as how many inter- 
connections there are for each neuron; 
that is, is each neuron connected to a few 
other neurons, to many other neurons, or 
to all other neurons in the network? If a 
neuron is not connected to all other neu- 
rons, does it connect to its nearest neigh- 
bor neurons, to distant neurons, or to 
some combination of near and distant 
neurons? Finally, and more importantly, 
what is the neural network trying to inter- 
nally represent within a particular topo- 
logical structure? 

The learning rules for the neurons de- 
scribe how each neuron interprets the in- 



formation coming in from all the neurons 
connected to it and, on the basis of that 
interpretation, what signal to distribute to 
the rest of the network. There are many 
different learning rules based on a num- 
ber of factors, such as dependence on the 
previous state of the neuron, stable or 
varying thresholds, and the particular 
functions used to sum the input signals. 

A model of a neural network uses a par- 
ticular topology, a type of neuron, and a 
learning rule for the interactions and inter- 
relations of its fundamental constituents— 
the neurons and their connections. Particu- 
lar models give a description of a neuron's 
actual input and output and the mapping 
between the input and output. 

Soviet mathematician A. N. Kolmo- 
gorov has proved a theorem (see refer- 
ence 1) that neural-network models can 
learn to approximate any continuous 
mapping — while minimizing error in the 
mapping in a least-mean-square sense- 
based only on the example mapping. In 
fact, a network can even learn to adapt to 
unpredictable changes in its inputs. 

If a particular neural-network model 's 
computational capabilities are more ef- 
fective at performing information-pro- 
cessing operations than computer-based 
approaches, this makes it practical for the 
construction of neural-network ma- 
chines, regardless of whether neural net- 
works actually emulate the human brain. 

continued 

Gary Josin is the president of Neural Sys- 
tems Inc. He can be reached at 2827 West 
43rd Ave, Vancouver, B. C. , Canada V6N 
3H9. 



OCTOBER 1987 -BYTE 183 



NEURAL-NETWORK HEURISTICS 



Neural networks process information 
in novel ways. In fact, given a threshold 
number of connections between a set of 
simple neurons, a form of self-organiza- 
tion takes place, and from this organiza- 
tion collective computational properties 
emerge, such as association, generaliza- 
tion, differentiation, preferential learn- 
ing, optimization, and fault tolerance. 
The use of these properties holds promise 



for developing solutions to problems that 
have intractable or unknown algorithms 
or are too computationally intense. The 
above properties are evident in the three 
neural-network models described and il- 
lustrated below. 

General Equation 

The different models and combinations 
of models of neural networks can be de- 



Sample Neural Network (Note: ( 
column 

1 2 3 4 5 6 7 8 

row i iioooooo ooooooti 

2fiOOOOOO OOOOOIIO 

3 09900000 OOOOflOO 

4000f»000 oootiooo 

50000««00 oottoooo 

600000f#0 OIIOOOOO 

700000011 #§000000 



8 OOOOOOOi 

9 • 



OOOOOOOO 

, t 



= 1;0 =0.) 



OOOIfOOO 
OOOIfOOO 

ooottooo 

OOOIfOOO 
OOOIfOOO 

ooo»«ooo 

000II000 

ooottooo 



oooooooo 
oooooooo 
oooooooo 
•••••••• 

•••••••• 

oooooooo 
oooooooo 
oooooooo 
... t ... . 



oo#ooooo 

oooioooo 
oooioooo 

00001000 

oootoooo 
ooootooo 
ooootooo 

OOOIOOOO 

. . t 



OOOOOOOt 

ooooooto 

00000900 

ooootooo 
ooomoooo 

ootooooo 

OIOOOOOO 

tooooooo 
. t 



oooooooo 
oooooooo 
oooooooo 

OOOtOlOO 

itioioii 
oooooooo 
oooooooo 
oooooooo 



oooooooo 
oooooooo 

OOltllOO 
OOlltlOO 
OOttttOO 

OOlltlOO 

oooooooo 
oooooooo 



oooooooo 
oooooooo 

OOlltlOO 

ooioitoo 

OOIOIIOO 
OOlltlOO 
OOOOOOOI 
OOOOOOOI 



00090000 

ooootooo 
oootoooo 
ooootooo 
oootoooo 
oootoooo 
ooootooo 
oootoooo 
. . I 



oooo 
oooo 
oooo 

IIIO 

ton 
oooo 
oooo 
oooo 

... I 



oooo 
oooo 
oooo 
not 
otto 
oooo 
oooo 
oooo 



OOIOIOOO 
00090000 

OOOIIOOO 

ooootooo 
oootoooo 
ooootooo 
ooootooo 
oootoooo 



tooooooo 
ottooooo 

00900000 

oottoooo 
oooooooo 
oooottoo 
ooooooto 
ooooooot 
t 



••oooooo 
ootooooc 
ootooooo 
oootttoo 
oooottoo 
oooottto 
oooooott 
oooooott 
t 

ooooooot 
oooootto 
oooottoo 
ooottooo 
oottoooo 
ootooooo 
otoooooo 
tooooooo 



oooooooo 
oooooooo 
oottotoo 
oottotoo 
ooototoo 
oottttoo 
oooooooo 
oooooooo 
........ 



oooooooo 
oooooooo 
ootttooo 
ootottoo 
oottotoo 
ootottoo 
oooooooo 
oooooooo 



••oooooo 
ootooooo 
oottoooo 
oootoooo 

00009900 

oooootto 

00000090 

ooooooot 



00000009 

ooooooto 
oooottoo 
oootoooo 
oootoooo 
ottooooo 
•ooooooo 
tooooooo 
. t 



ooot 
ooot 
oooo 
ooot 
oooo 
ooot 
ooot 
ooot 



tooo 
oooo 
tooo 
oooo 
tooo 
tooo 
oooo 
tooo 



ootooooo 
oootoooo 
ooottooo 
ooootooo 
oootoooo 
ooootooo 
ooottooo 
ooottooo 
. . t 

oooooott 
oooooott 
oooooott 

00000099 

oooooott 
oooooott 
oooooott 
oooooott 



tooooooo 
ottooooo 
ootooooo 
oottoooo 
oooottoo 
ooooomoo 
oooootto 

00000009 

t 



ooooooot 
oooootto 
oooootoo 
ooottooo 
oottoooo 
ootooooo 
otoooooo 
••oooooo 
. t 



oooo 
oooo 
oooo 
otot 
toto 
oooo 
oooo 
oooo 
. . . t 



oooo 
oooo 
oooo 
otoo 
tott 
oooo 
oooo 
oooo 



oooooooo 
oooooooo 
oottttoo 
oototooo 
ootottoo 
oottttoo 
oooooooo 
oooooooo 
. . . . t . . . 



ttoooooo 
otoooooo 
tooooooo 
ttoooooo 
otoooooo 
ttoooooo 
tooooooo 
ttoooooo 



oooooott 
ooooooto 
ooooooot 

00000099 

oooooott 
ooooooto 
oooooott 
ooooooto 
t . 



ttoooooo 
•ooooooo 
ttoooooo 

09000000 

ttoooooo 
tooooooo 
ttoooooo 
ttoooooo 
t . . 



oooooott 
ooooooto 
oooooott 

00000009 

oooooott 
oooooomo 
oooooott 

00000009 



mooooooo 
otoooooo 
ootooooo 
oootoooo 
ooootooo 
oooootoo 
ooooooto 
ooooooot 
t 



oooooott 
ooooooto 
oooootto 
oootoooo 
oootoooo 
otoooooo 
ttoooooo 
•ooooooo 
. t 



oooo 
oooo 
oooo 
otot 
toto 
oooo 
oooo 
oooo 



oooo 
oooo 
oooo 
otot 
toto 
oooo 
oooo 
oooo 



oooo 
oooo 
oooo 
ttto 
toto 
oooo 
oooo 
oooo 



oooo 
oooo 
oooo 
ttot 
toto 
oooo 
oooo 
oooo 



ttoooooo 
ttoooooo 
ttoooooo 
ttoooooo 
ttoooooo 
ttoooooo 
ttoooooo 
ttoooooo 
t . . 



tooo 
oooo 
ooto 
oooo 
otoo 
oooo 
ooot 
oooo 



oooo 
ooot 
oooo 
ooto 
oooo 
ooto 
oooo 
tooo 
. . . t 



09000000 

oooootoo 
oootoooo 
tooooooo 
oooootoo 
ooooooto 
oootoooo 
ooootooo 
t 



00000900 

ootooooo 
oooooooo 
ooootooo 
•ooooooo 
ooooooto 
ooooooot 
otoooooo 
t 



oootoooo 
ooootooo 
oooootoo 
tooooooo 
ootooooo 
oootoooo 
oooootoo 
tooooooo 



ooooooot 
•ooooooo 
totooooo 
oooooooo 
tooooooo 
oootoooo 
oooootoo 
ooooooto 



Figure 1: The original patterns for a sample neural network designed to illustrate 
the associative memory property. (Note: • = 1; O = 0.) 



rived from the following equations: 

dU(i)/dt = G[J(U(i)), 
(Sj)T(i,j)f(UG)] 



(la) 



where 



dT(i,j)/dt = g(T(i,j),U(i),U(j)). (lb) 

U(i) is the input to neuron (i); G() is a 
function that describes the output of neu- 
ron (i); (Sj) denotes the sums over the j 
interconnections to neuron (i); J() is a 
function describing the coupling of a neu- 
ron to itself; f() is a function that de- 
scribes the input from connection (j) to 
neuron (i); T(i,j) is an interconnection 
value between neuron (i) and neuron (j); 
and g() is a function that describes how to 
assign an interconnection value. 

Particular network models and their 
heuristics can be derived from this gener- 
al neural-network equation. Here is a 
brief description of the three models 
under examination: 

• The associative memory model exhib- 
its many of the computational capabilities 
of neural networks, such as association. 
This model can be used for simple visual 
processing (see reference 2) . 

• The optimization model offers solu- 
tions to very difficult combinatorial opti- 
mization problems, such as the well- 
characterized traveling salesman problem 
(see reference 3). 

• The self organization model is effec- 
tive for dealing with problems that have a 
complicated or impossible-to-define al- 
gorithm, and it can be used for robotic 
control (see reference 4) . 

The Associative Memory Model 

For an example of a simple visual-pro- 
cessing application and an introduction to 
the computational properties of a neural 
network, consider the set of patterns in 
figure 1 . These patterns constitute a data- 
base of simple "primal" images. These 
images are a simple list of eight rows of 
eight numbers with values of or 1 . The 
ninth row contains a single 1 . 

The ninth row categorizes the patterns; 
for example, the pattern in the top left- 
hand corner of figure 1 has a single 1 in 
the first column of row 9, whereas the 
pattern directly beside it to the right has a 
1 in the second column of row 9. A 1 in 
the first column of row 9 categorizes a 
pattern as a top left- to bottom right-hand 
corner diagonal line. A 1 in the second 
column of row 9 categorizes a pattern as a 
top right to bottom left diagonal. The 
other patterns are similarly categorized. 
This process of categorizing patterns is a 
case of supervised learning. A teacher 

continued 



184 BYTE- OCTOBER 1987 



Reliable, Cost Effective 
Solutions for Computerization 



World's smallest PC — and CMOS too! 

A Motherboard and 4 Expansion Cards in the 
Space of a Half-Height 5-1/4" Disk Drive! 



from $395 
(Qty100,$336) 



3 WATTS! 

5 VOLT ONLY OPERATION 

± 1 2 V GENERATED ON BOARD 

SCSI BUS OPTION 
(HARD DISK, ETC) 

256 K RAM 
(512 K, 768 K 
OPTIONS) 

POWERFUL 
V40 CPU 

FLOPPY DISK CONTROLLER 

(3.5V5.25" 

360 K/720K, 1.2 MB) 

UP TO 128 K 
EPROM/RAM/NOVRAM 
BATTERY BACKED RT CLOCK 



Little Board /PC 




PC COMPATIBLE 
ROM-BIOS 



MOUNTS ON A 
5.25" DRIVE 
(5.75"x8"x1") 



— 2RS232C 
SERIAL PORTS 



SPEAKER PORT 
KEYBOARD PORT 

PARALLEL 
PRINTER PORT 

PC BUS 

4 MODE VIDEO 
CONTROLLER 
OPTION 
FITS ENTIRELY 
WITHIN BOARD 
DIMENSIONS 




Development Chassis/PC™ 

"Known Good" PC bus project development environment 
for Little Board/PC (not included). 



$179 




CMOS Video Controller 

4-mode CMOS video 
controller for Little 
Board/PC. 



$195 

(Qty100,$166) 




^ SCSI 



Little Board" 

World's least expensive 
single board system. 



INCLUDES 
CP/M!™ 



$395 

(Qty100,$336) 




Little Board™/186 

High performance single 
board MS-DOS system. 



from 



$189 



$119 



^^P^^ 



Expansion/ 186™ 

Multi-function expansion for 
Little Board/186. I/O, Serial, 
RAM, and Math Options. 





Project Board/186™ 

Prototype adapter 

for 801 86 based projects 

and products. 



Project Board/80™ 

Prototype adapter 
for Z80 based projects 
and products. 



Distributors • Argentina: Factorial, S.A. 41-0018 • Australia: Current Solutions (613) 720-3298 • Austria: International Computer Applications GMBH 43-1/45 45 01-0* • Brazil: 
Computadores Compuleader (41) 262-4866 • Canada: Tri-M (604) 438-0028 • Denmark: Danbit (03) 66 20 20 • Italy: Microcom (6) 811-9406 • Finland: Symmetric OY 358-0-585- 
322 • France: Egal Plus (1) 4502-1800 • Germany, West: IST-Elektronik Vertribes GmbH 089-611-6151 •Israel: Alpha Terminals, Ltd. (03) 49-16-95 • Spain: Hardware & Software 
204-2099 • Sweden: AB Akta (08) 54-20-20 • Switzerland: Thau Computer AG 41 1 740-41-05 • UK: Ambar Systems. Ltd. 0296 435511 • USA: Contact Ampro Computers Inc. 



COMPUTERS. INCORPORATED 



390427, Mountain View, CA 94039 #(41 5) 962-0230 • TLX 494030S 



OCTOBER 1987 • B Y T E 185 



NEURAL-NETWORK HEURISTICS 



has to categorize the patterns. 

The associative memory model can be 
configured as an associative "memory" 
to encode/decode these primal images. If 
each neuron represents a bit (1 or 0), a 
network of 72 neurons can map this par- 
ticular set of patterns in the form of an N- 
by-N connection matrix T(i,j). Then, 
when presenting a pattern U(i) as input to 
the neurons, the network evokes the de- 
sired memory behavior. 

For this particular application, the as- 
sociative memory model uses two-state 
neurons. The neurons' outputs take on 
values of either a 1 or a 0, depending on 
the inputs from all other interconnected 
neurons. The total input to neuron (i) is 
then 

E(i) = total input to (i) 
= (Sj)(Sl(i))T(i,j,l(i)), 

where (Sj] denotes the sum over all other 
neurons, and (Sl(i)) denotes the sum over 
l(i) and defines the length of the memory 
of neuron (i) . 

Given the total input, neurons change 
their output according to a threshold rule: 

G[E(i)] = 1 if E(i) > Th(i), 
G[E(i)] =0ifE(i)< = Th(i), 

where Th(i) is the threshold of neuron (i). 
This model uses a modified Hebbian 
learning rule (see reference 5) that de- 
scribes how patterns are mapped between 
neuron (i) and neuron (j): 

T(i,j,l(i)) = (2U(i,l(i))-l) 
*(2U(j,l(i))-l). 

For N two-state neurons, equations (la) 
and (lb) then simplify to 

U(i)=G[(Sj)(Sl(i)(2U(i,l(i))-l) 
*(2U(j,l(i))-l)UG)]. 

This network operates in two phases. In 
the first phase, the 40 patterns in figure 1 
are input to the network to assign the con- 
nection matrix T(i,j) between the neu- 
rons. In the second phase, the perfor- 
mance of the network is tested by 
presenting patterns to the input neurons. 
The N outputs then describe how the net- 
work performs information processing. 

Figure 2 shows how the network per- 
forms on a set of input patterns in the sec- 
ond phase after the connection matrix 
T(i,j) has been assigned. The sequence 
shows the mapping of the network after 
entering a particular input pattern. The 
input patterns in this sequence were se- 
lected so that they would get progressive- 
ly further away from resembling the orig- 
inal pattern shown in figure 1 . Figure 2 
also shows the total excitation on the neu- 



ron that categorizes that particular pat- 
tern. As the figure shows, the categorizer 
neuron is less excited as the input pattern 
to the network gets further away from re- 
sembling an original pattern. In this way, 
a categorizer neuron's excitation is a 
measure of how close an input pattern is 
to a particular original pattern. 

Figure 3 shows how a network per- 
forms computation on confusing and am- 



biguous input patterns. The last pattern in 
the sequence shows how the network has 
responded to a confusing input pattern 
that was constructed from 60 percent of 
one pattern and 40 percent of another. 
The network maps this confused pattern 
to the closest original pattern. 

Figure 3 also shows the network's per- 
formance for ambiguous input patterns 

continued 



• moo 
9900 
9900 

• •oo 

• •oo 
9900 

• •oo 

• •oo 



oooo 
oooo 
oooo 
oooo 
oooo 
oooo 
oooo 
oooo 



• •oo 

• •oo 

• •oo 

• •oo 

• •oo 

• •oo 

• •oo 

• •oo 
oooo 



• •oo 

• •oo 

• •oo 

• •oo 
oooo 
oooo 
oooo 
oooo 
oooo 



• •oo 

• •oo 

OIOO 

oooo 
oooo 
oooo 
oooo 
oooo 



oooo 
oooo 
oooo 

• •oo 

• •oo 
oooo 
oooo 
oooo 
oooo 



Original 
pattern 



OOOO •••••••• OOOOOOOO #§000000 

OOOO •••••••• OOOOOOOO 99000000 

OOOO •••••••• OOOOOOOO 99000000 

OOOO ••••0««« OOOOOOOO 90000000 

OOOO •••00««« OOOOOOOO 09000000 

OOOO •••••••• OOOOOOOO 99000000 

OOOO •••••••• OOOOOOOO 99000000 

OOOO •••••••• OOOOOOOO 09000000 

OOOO • •. . OOOOOOOO 

V = 40 
6 

OOOO •••••••• OOOOOOOO 99000000 

oooo o««««««o OOOOOOOO 90000000 

OOOO •••••••• OOOOOOOO ••oooooo 

OOOO •••••••• OOOOOOOO 99000000 

OOOO •••©••OO OOOOOOOO 99000000 

oooo 0««««««0 OOOOOOOO 09000000 

OOOO ••••••OO OOOOOOOO #1000000 

OOOO •••••••• OOOOOOOO #1000000 

OOOO • •.. OOOOOOOO 

V = 18 

6 

OOOO •••••••O OOOOOOOO IIOOOOOO 

oooo o««««#«# OOOOOOOO #1000000 

OOOO •••••••• OOOOOOOO ##000000 

oooo #o###o## OOOOOOOO 90000000 

OOOO •••••••• OOOOOOOO ##000000 

OOOO •••••••• OOOOOOOO 09000000 

OOOO •••••••• OOOOOOOO 99000000 

OOOO • #. . OOOOOOOO 

V = 12 
6 

OOOO •••••••• OOOOOOOO 

OOOO •••••••• OOOOOOOO 

OOOO •••••••• OOOOOOOO 

OOOO •••••••• OOOOOOOO 

OOOO •••••••• OOOOOOOO 

OOOO •••••••• OOOOOOOO 

oooo •••o««## OOOOOOOO 

OOOO •••••••• OOOOOOOO 

oooo ...•.• • . • . . 

V = 8 
4 

V = 8 
6 

Input Output Re-input Output 

patterns patterns categorizer pattern 



Figure 2: Inputs to the original pattern of the network produces output patterns 
and an input categorizer. 



• •oo 

• •oo 

• •oo 

• •oo 

9900 
9900 

• •OO 
9900 
OOOO 



oo«# 

oo## 
oo## 
oo#o 
oooo 
oooo 
oooo 
oooo 
oooo 



• ••• 

• ••• 



IOOO 



• ••• 

• ••• 



Confused 
input 



• ••• 

oooooo 

Output 
pattern 



••oooooo 
••oooooo 
•ooooooo 
••oooooo 

99000000 
99000000 
••OOOOOO 
99000000 
OOOOOOOO 



••oooo©© •####o#o 

•#oooo## •••••••• 

•#oooo## •••••••• 

99000099 •••••••• 

•#oooo## •••••••• 

•#oooo## •••••••• 

•#oooo## •••••••• 

•#oooo## •••••••• 



OOOOOOOO OOOOOOOO 



Output 

after 

reentering 

categorizer 



Ambiguous 
input 



Output = 
no response 



Figure 3: The output patterns generated by confused and ambiguous input patterns. 



186 BYTE- OCTOBER 1987 



J~*Q* 



)\ 



\ 









& WW 

% Mr 




G 



Jj^M^fe 







micro-cap 11: 



The CAE tool with fully interactive 
analog simulation for your PC. 



Spectrum Software's MICRO-CAP II® is 
fast, powerful, and feature rich. This fully 
interactive, advanced electronic circuit 
analysis program helps engineers speed 
through analog problems right at their 
own PCs. 

MICRO-CAP II, which is based on our origi- 
nal MICRO-CAP software, is a field-proven, 
second-generation program. But it's dra- 
matically improved. 




Ihinsient, AC, DC, and FFT routines 
Op-amp and switch models 
Spec-sheet-to model converter* 
Printer and plotter* hard copy 




Schematic Editor 

MICRO-CAP II has faster analysis routines. 
Better resolution and color. Larger librar- 
ies. All add up to a powerful, cost-effective 
CAE tool for your PC. 

The program has a sophisticated inte- 
grated schematic editor with a pan capa- 
bility. Just sketch and analyze. You can step 

Circle 259 on Reader Service Card 



Transient Analysis 

component values, and run worst-case 
scenarios — all interactively. And a 500-type* 
library of standard parts is at your finger- 
tips for added flexiblity. 
MICRO-CAP n is available for IBM® PCs 
and Macintosh." The IBM version is CGA, 
EGA, and Hercules® compatible and costs 
only $895 complete. An evaluation version 
is available for $100. Call or write today for 
our free brochure and demo disk. We'd like 
to tell you more about analog solutions in 
the fast lane. 

■ Integrated schematic editor 

■ Fast analysis routines 

■ High-resolution graphic output 

■ Standard parts library of 500* types 
* IBM versions only. 











] Bfflili 


































AC Analysis 



1021 S. Wolfe Road, Dept. E 
Sunnyvale, CA 94087 
(408) 738-4387 



MICRO-CAP II is a registered trademark 

of Spectrum Software. 

Macintosh is a trademark of Mcintosh Laboratory, Inc. 

and is being used with express permission of its owner. 

Hercules is a registered trademark 

of Hercules Computer Technology 

IBM is a registered trademark 

of International Business Machines, Inc. 

OCTOBER 1987 -BYTE 187 



NEURAL-NETWORK HEURISTICS 



that are constructed from 50 percent of 
one pattern and 50 percent of another. 
The network matches this ambiguous in- 
put to no response. If the network had 
been trained on one of the patterns more 
often than the other, it would have devel- 
oped a preference for that particular pat- 
tern. This is called preferential learning. 

Since input patterns are stored in a dis- 
tributed fashion throughout the network, 
a large percentage of neurons and/or their 
interconnections can be destroyed, and 
the network can categorize input patterns 
as before. This gives the network fault 
tolerance. When the associative memory 
model is minimally connected to map 
only one pattern, it acts like a filter and 
can differentiate. In other words, the net- 
work can discriminate that particular in- 
put pattern from all other input patterns. 

On the other hand, as the network 
comes closer to being fully connected, 
the network can map or associate varia- 
tions of particular patterns. 

The Optimization Model 

As an example of a neural network that 
could produce solutions to optimization 
problems, consider the map of locations 
in figure 4. For N locations on a map, 
calculate all closed paths that visit each 
location once, then pick that combination 
of paths that produces the overall shortest 
path length. There are N! possible solu- 
tions, and this number gets large very 
fast. For example, for 30 locations there 
are 10 30 possible paths. On a present-gen- 




Figure 4: The seven map locations 
illustrating the well-known traveling 
salesman problem. 



4 


_ 1 


2 
— ^» 




3 



Figure 5: A solution for the traveling 
salesman problem, as found by a neural 
network using the optimization heuristic. 



eration computer, this task is computa- 
tionally intensive. This is an example of a 
problem that has a well-characterized al- 
gorithmic solution. The goal for this 
model is to find a less intensive solution. 
This model optimizes for path minimi- 
zation and uses an equation for dU/dt as 
follows: 

dU(i)/dt = -U(i)/R(i)C(i) 

+ (Sj}T(i,j)fG,U(j))/C(i) + I(i), 

where 

• U(i) is the input to neuron (i), 

• I(i) is the current injected into neuron 

(i), 

• RC is the time constant of the neuron 
(i), and the resulting U(i) is processed by 
G[U(i)] = (1 + tanh(A(U(i) - Th(i))))/2, 
where G[U(i)] is the output of the neu- 
ron, Th(i) is the threshold of neuron (i), 
A is the gain. 

• T is the connection matrix defined 
from the learning rule 

T(i,j) = -Adelta(x,y)(l - delta(ij) 
- Bdelta(i,j)(l - delta(x,y)) - C 
-Dd(x,y)(delta(j,i+1) 
+ delta(j,i-l)), 
where delta(ij) = 1 if i=j; otherwise, 
delta(ij) = 0; and A, B, C, and D are 
coefficients that are general constraints 
for any particular problem of this type. 

The first two terms of the expression 
for T(i,j) guarantee only one visit to each 
location and that a location can be in only 
one position in the tour. The fourth term 
is a constraint that controls which of the 
N! possible final states is the best path. 

Figure 5 shows a solution found by the 
optimization model. The network found 
near-best solutions to this problem— not 
the exact solution. 

In many situations, finding one of the 
best paths very rapidly is better than com- 
puting the optimal solution to the 
problem. 

The Self -Organization Model 

The final model is an example of a neural 
network that can learn to approximate a 
mapping for robotic control strategy 
based only on randomly sampled inputs 
from a two-dimensional space. This 
model uses neurons that operate in the 
linear regime as follows: 

U(i,t+l)=(Sj)(T(i,j)U(j,t)), 

where the learning rule evolves the sys- 
tem by the following equation: 

dT(i,j)/dt = a(t)[U(j,t) - T(i,j,t)], (2) 

depending on whether neuron (i) is in the 
topological neighborhood of the neuron 



that best matches a particular input U(j). 
During the learning phase, the connec- 
tions T(i,j) are adjusted so that their 
values form a topological image of the in- 
puts. When a position U(j) is input to the 
network, the T(i, j) value that is maximal- 
ly active for that particular input acts like 
an image of that input. 

Consider a robotic arm that is moving 
around randomly in a two-dimensional 
plane. The arm is a line segment that can 
change its angle and length. As the arm 
moves in the plane, its end effector is lo- 
cated to a random position in the x,y 
plane. The connections are thought of as 
internally representing 400 coordinate 
pairs in the plane. A randomly selected 
coordinate pair from the arm's location 
sensor is fed as input to the network. The 
connection that becomes the most active 
is considered the image of that particular 
location. This connection to a particular 
neuron defines the topological neigh- 
borhood. 

As described by equation (2) , once the 
neighborhood is defined, all of the neu- 
rons within it change their connection 
strengths by an amount directly propor- 
tional to how far away it is from the ran- 
domly selected coordinate pair. After the 
robot arm has sampled a sufficient num- 
ber of uniformly distributed coordinate 
pairs over the two-dimensional surface, 
the network's connections become or- 
dered according to their mutual similar- 
ity. The end result is that a particular 
neuron becomes sensitive to a particular 
connection that in turn becomes most ac- 
tive in response to a particular randomly 
sampled coordinate, forming an image of 
the two-dimensional space. 

Figures 6 to 10 show how well the net- 
work forms the image of two-dimensional 
space as the number of randomly selected 
coordinate pairs used to produce the map- 
ping increases. Notice that as more points 
are sampled, the lattice of lines is begin- 
ning to show the emergence of the topol- 
ogy-conserving property of the connec- 
tions. The connections converge to form 
an ordered map of a two-dimensional 
space. In figure 10, a well-formed map 
has emerged. 

Figure 1 1 shows a plot of random coor- 
dinate pairs that are totally different from 
any of the pairs that were used in forming 
the topological map. These previously 
unseen positions are generalized as a 
nearest-neighbor match. 

Neural-Network-Based Systems 

Self-organization lets neural-network- 
based systems adapt to unpredictable 
changes in their environment. The net- 
work learns directly from its environment 
so that no extra constraints are required. 

continued 



188 BYTE- OCTOBER 1987 



Get a new handle 
on your 

business with SBT 







Now you can handle up to 254 users, all 
working in the same data files, with the SBT MultiNet 
Database Accounting Library. The accounting soft- 
ware written in dBASE III PLUS.® 

So whether your business is large or small, 
you can grow to the limits of the most advanced 
PC networks available. 

When you want that special report, or your 
business needs something we didn't think of, you can 
quickly and easily modify our programs to meet 
your needs exactly (because our dBASE source code 
is included). 

And if you don't have time 
to make the changes yourself, 
there's a nearby consultant who 
can make them for you. 

So if your company has 
two users or two hundred and 
fifty, you can add customers, 
update records, and have as 
many people enter orders as it 
takes to keep your business growing. 
Isn't it nice to know there's software you 
can't outgrow? The SBT MultiNet Database 
Accounting Library. 



Now you can get a new handle on your business. 

Call today for our demo disk, brochure and for 
the name of the SBT consultant in your area. 
(415) 331-9900. In Canada, call MSR, (416) 598-4982. 




THE SBT DATABASE ACCOUNTING LIBRARY. 


dProfessional 


Time & Billing 


$395 


dOrders 


Sales Order Processing 


$295 


dlnvoice 


Billing/Inventory Control 


$295 


dStatements 


Accounts Receivable 


$100 


dPurchase 


Purchase Order 


$295 


dPayables 


Accounts Payable 


$395 


dPayroll 


Payroll/Labor 


$395 


dLedger 


General Ledger/Finance 


$395 


dAssets 


Asset/Depreciation 


$295 


dProject 


Project/Job Accounting 


$395 


dProperty 


Tenant/Unit Management 


$395 


dMaterials 


Manufacturing Planning 


$395 


dMenu/Backup 


Menu/Backup 


$ 65 


MultiNet versions $200 additional per module 



One Harbor Drive 
Sausalito, California 94965 
(415) 331-9900 Telex 9102404708 



SBT 



Macintosh, Atari and compiled versions are available. dBASE III PLUS is a registered trademark of AshtonTate, Inc. Macintosh is a trademark of Apple Computer, Inc. 

Atari is a registered trademark of Atari Corp. XENIX is a registered trademark of Microsoft Corp. SCO is an abbreviation of the Santa Cruz Operation. 

SBT Database Accounting Library and MultiNet are trademarks of SBT Corp. © 1987, SBT Corporation. 



Circle 239 on Reader Service Card 



OCTOBER 1987 -BYTE 189 



NEURAL-NETWORK HEURISTICS 



Consequently, this property allows de- knowledge of equations, nor does it learn inaccuracies in mechanical structures and 

sired functionality independent of any any. inaccurate sensor readings as they natu- 

knowledge of the physical parameters of a Self-organization enables neural- rally degrade. Present-day systems that 

particular system. A neural system has no network-based systems to make up for continued 





















«.r- i* ';.->. '■/ 


^TV^-^ A 






fte|^ 


v : : ' "■»**• - '^""^ 




Wi*&M&» 








;.. •"-./, --'.^ .-* 










Hm^-*» v* 


'- ■ -J". 


..- Q * -;--^'^ 


«ft5ilff 






mm??,?! 














•-l-~* ~* *'*- '^■'^'"•\ '" '• 


t-f ^*(^>- 


3131^ 




aJ. 


\\ ■- j^-rtf^CTr^ 


r#£#^SS| 






r* 






^ 





Figure 6: /I map of the two-dimensional space for 
a sample robotic-arm matrix, plotted using randomly 
selected coordinate pairs. 




Figure 7: The matrix begins to define a two-dimensional 
surface as the number of points increases. Here, the number of 
defined points is 50. 




Figure 8: With 250 points defined, the matrix nearly has 
a recognizable shape. 



Figure 9: The matrix still looks irregular with 500 points 
defined. 




Figure 10: It requires the specification of 5000 points 
to clearly define the matrix. 



Figure 11: After the matrix is defined, it is possible to 
place points within the two-dimensional space of the matrix 
that are different from the points used to define the area. 



190 BYTE- OCTOBER 1987 



Order Status, 
Technical & Other 
Info. (602) 246-2222 



Call for programs 
not listed 




SPECIAL 

WORD PERFECT 

$195 



TOLL-FREE ORDER LINE 1-800-421-3135 



FREE SOFTWARE! 

Purchase over $100 and re- 
ceive one of these disks abso- 
lutely FREE! Purchases over 
$250 get two free disks, over 
$400 get three, or get all four 
disks when your purchase is 
over$500! 1) MIXED BAG— A 
great assortment of utilities 
and games all packed on one 
disk. 2) PC-WRITE — Try this 
famous feature packed word 
processor. It's a winner! 3) 
FONT-SET — Lets you set 
popularfonts like bold, under- 
line, etc. on most late model 
printers from Citizen, Epson, 
NEC, Okidata, Panasonic, 
Star, Toshiba, etc. You can 
even use your printer like a 
typewriter! 4) ABC-LIST — 
Great mailing list program! 
Sort on any field, do qualified 
searches, print reports and 
mailing labels, and more! 



— SOFTWARE — 

ACCOUNTING 

BPIAP.AR.PR.GA $169 ea. 

Cyma Call 

Dae Easy Accounting 39 

Dollars & $ense 94 

Managing Your Money 3.0 ... 117 

COMMUNICATION 

PROGRAMS 

Carbon Copy Plus 115 

Crosstalk 89 

Remote 89 

Smartcom II 83 

DATA BASE MANAGERS 

Clipper 380 

Clout 2 Call 

Condor III 310 

Knowledgeman II Call 

Powerbase 2.2 169 

Q&A Call 

Quickcode 138 

Quicksilver 295 

Quickreport 138 

Revelation 469 

R: Base System V 425 

EDUCATIONAL 

Flight Simulator 28 

Turbo Tutor II 25 

Typing Tutor III Call 

GRAPHICS 

Chartmaster Call 

EnergrapKics 2.01 294 

lr>A- Vision 275 

Microsoft Bus Mouse 106 

Microsoft Chart 3.0 229 

Microsoft Serial Mouse 119 

Newsroom 31 

OPTI Mouse W/DR Halo II .... 96 

Printshop 33 

Signmaster Call 

INTEGRATED 

Ability 59 

Enable 355 

Smart Software Call 



LANGUAGES 

Lattice C Compiler $242 

Microsoft C Compiler 249 

Microsoft Fortran 4.0 255 

Microsoft Macro Assembler ... 84 
Microsoft Pascal Compiler . . . 166 

Microsoft Quick Basic 3.0 55 

Ryan McFarlan Fortran 305 

Ryan McFarlan Cobol 479 

Turbo Basic 55 

Turbo C 55 

Turbo Pascal w/8087 + BCD ... 55 

PROJECT MANAGER 

Harvard Total Project II 349 

Microsoft Project 219 

Super Project Plus Call 

Timeline 2.0 242 

SPREADSHEET 

Microsoft Multiplan 108 

Spreadsheet Auditor 3.0 82 

Supercalc 4 Call 

VP Planner 49 

UTILITIES 

Copy II PC 19 

Copywrite 39 

Desqview 2.0 72 

Double Dos 30 

Fastback 85 

Graph in the Box 55 

Homebase 39 

Microsoft Windows 55 

Norton Utilities 3.1 48 

Prokey 4.0 70 

Q DOS 49 

Sidekick (unprotected) 55 

Sideways 3.1 39 

WORD-PROCESSING 

Easy Extra 88 

Microsoft Word Call 

Multimate Advantage II Call 

Volkswriter3 139 

Webster Spellcheck 37 

Word Perfect 195 

Wordstar 162 

Wordstar Propac 233 

Wordstar 2000+ 206 

— HARDWARE — 

ACCESSORIES 

Copy II PC Board 75 

1 50 watt power supply 69 

Mini Micro Parallel 

Print Buffer 69 

Masterpiece 88 

Masterpiece Plus 99 

BOARDS 

AST Advantage Premium Call 

AST Premium Sixpac Call 

AST Sixpac 145 

Hercules Color Card 145 

Hercules Graphics + 182 

Intel Above Boards Call 

J Laser (Tall Tree) Call 

J Ram 3 (Tall Tree) 169 

J Ram 3 AT (Tall Tree) 207 



COMPUTERS 



AZ386 

80386-16 Micro Processor, 
1 MB of Ram, Teac 1.2 MB 
disk drive, 220 watt power 
supply, 6 layer mother board, 
RT keyboard $2995 



AZ TURBO XT 

IBM Compatible Computer, 
135 watt power supply, 
1 brand name floppy disk, 
1 parallel port, 1 serial port, 
1 game port, PC keyboard, 
640K Ram, 8 expansion slots, 
8088-2 processor . . $51900 



AZ TURBO AT 

IBM AT Compatible, 512K, 
6 & 8 MHZ, keyboard, 
graphics card, 220 watt 
power supply, MS/DOS 3.2 
GW Basic $1025 



AST 286 
PREMIUM COMPUTER 

51 2K, expandable to 2MB 
on the system board, RT 
enhanced style keyboard, 
parallel, serial and clock, 
1.2 MB floppy disk drive, 
7 expansion slots, two 32 
bit fastram slots, DOS 3.1 
& Basic 
1 year warranty Call 



EGA BOARDS 

GBI Board Call 

Paradise Auto Switch 480 

EGA Card 290 

Quad EGA Plus Call 

Vega Deluxe 299 

EGA MONITORS 

AMDEK722 455 

Casper EGA Call 

NEC Multisync 559 

HARD DRIVES 

AZ 20 MB Hard Card 425 

AZ 30 MB Hard Card Call 

Filecard20MB 499 

Maynard 20 MB Hard Card . . . Call 

Plus Hardcard 20MB Call 

Seagate 20 MB Int. w/cont 299 

Seagate 30 MB Int. w/cont. , . . Call 
Seagate 30 AT Int 515 

KEYBOARDS 

Keytronics 5151 149 

Keytronics 5153 245 

RT Style Keyboard 89 



INCREDIBLE VALUES 

Nationally advertised boards 
for IBM PC and most compat- 
ibles at give away prices. 
Keyboards (similar 

to 5151) $79 

Monochrome Board w/printer 

port (similar to Hercules 

Graphics) $79 

Expansion Board 

to 576K $42 

Multifunction Board w/game 

port (similar to AST 

six pack) $79 

Four Drive Floppy 

Controller $39 

Color Card w/o printer 

port $69 

Color card w/printer 

port $79 



MODEMS 

Everex 300/1200 89 

Hayes 1200 Call 

Hayes 1200B Call 

U.S. Robotics Courier 2400 ... 335 
U.S. Robotics Passwd. 1200 . . 180 

MONITORS 

AMDEK 410 Amber 157 

AMDEK 600 339 

Magnovox Color RGB Call 

Princeton Max 12 138 

Samsung TTL Amber 72 

Samsung TTL Green 70 

Samsung Color w/tilt/tum Call 

PRINTERS 
CANON LASER 
CITIZEN 

MSP-10 255 

MSP-15 324 

MSP-20 294 

Premiere 35 Daisy wheel 459 

EPSON - Call on all models 

LASER IMAGE 2000 Call 

NEC 

NEC P5XLP 840 

NEC P7 Parallel 619 

NEC 8850 1059 

NEC P6 Parallel 439 

NECP960XL 1035 

NEC Laser Call 

OKIDATA - Call on all models 
PANASONIC 

1080-1 155 

1091-1 179 

1092-1 310 

1592 392 

KXP3151 407 

STAR MICRONICS 

NP10 139 

NB24-10 437 

NX10 160 

NX15 306 

TOSHIBA - Call on all models 
RAM 

64K150NS(setof9) 16.50 

256K150NS(setof9) 33 

256K120NS(setof9) Call 



TERMS: Shipping on most software is S5.00. AZ 
orders 'b.^/a sales tax. Personal check/company 
check - allow fourteen (14) days to clear. We 
accept purchase orders from authorized institu- 
tions for 3.5% more than cash price. All returns 
are subject to our approval. There will be a 20% 
restock fee. Minimum phone order S50. All prices 
are subject to change. Due to copyright laws we 
cannot take back any open software. 



No Charge for Master Card or Visa 



^5l3y 



We do not guarantee compatibility 



TOLL-FREE ORDER LINE 1-800-421-3135 

WAREHOUSE DATA PRODUCTS 

2701 West Glendale Ave. • Phoenix, AZ 85051 



Phone Hours: Monday. Wednesday & 
Thursday 7 am-9 pm: Tuesday & Friday 
7 am-5 pm; Saturday 9 am-5 pm. MST. 



Circle 291 on Reader Service Card 



OCTOBER 1987 -BYTE 191 



NEURAL-NETWORK HEURISTICS 



use predefined algorithms are insuffi- 
cient in situations that do not have accu- 
rately known structures or have changed 
due to system malfunctioning. Prede- 
fined adaptive algorithms do exist, but 
they use iterative least-squares approxi- 
mations to deal with the problem of 
changing situations. 

These algorithms are too computation- 
ally intensive for use in real-time appli- 
cations, since such schemes require 
cumbersome lookup tables and prior 
knowledge. Furthermore, neural net- 
works are intrinsically fault-tolerant, let- 



ting neural circuits survive orders of 
magnitude longer than present-day cir- 
cuitry. In fact, neural-circuit technology 
should be able to make up for propagation 
delays, jitter, and noise, making systems 
virtually fail-safe. 

The self-organization property offers a 
method of dealing with unexpected situa- 
tions that cannot be described mathemati- 
cally. An example is the management of 
real-time databases encountered in 
knowledge-based applications for com- 
plex industrial-control strategies, such as 
making decoding decisions based on the 




ENHANCED VERSION 

ADVANTAGE C++ 



Add ADVANTAGE C + + to your 
C compiler and enhance your 
C tools with object-oriented 
capabilities. ADVANTAGE C + + is 
a superset of C, delivering all the 
benefits of C without its limita- 
tions. Our latest version is the 
only full PC implementation of 
AT&T's C + + language and has 
everything you need to develop 
large and complex applications: 



nr 



MORE POWER AND PERFORMANCE 



• Significantly faster and smaller. 

• Fully compatible with your exist- 
ing C programs and libraries. 

• Code is more reliable and 
maintainable. 

• Translates efficiently with vir- 
tually no run-time overhead. 

• Catches many mistakes the 
compiler misses, saving devel- 
opment time. 

• Tested on several hundred 
benchmark programs. 

• Most thoroughly documented 
product. 



• Continuously enhanced and sup- 
ported by over 20 developers. 

• Available for Microsoft C (MS- 
DOS and XENIX), Lattice C, 
UNIX and other operating 
systems. 

• Based on latest AT&T version. 

• ANSI compatible. 

• Now in use by AT&T; Ashton 
Tate; Deloitte, Haskins & Sells; 
GE; HP; IBM; Lotus; Mitsubishi; 
Prime Computer; Texas Instru- 
ments; Time Inc. and many 
other major corporations. 



MORE SUPPORT CAPABILITIES 



• Virtual disks. 

• Small, medium, compact and 
large memory models. 

• Full C+ + source level debug- 
ging with CodeView and Pfix. 



Microsoft Windows compatible, 
with support for far, near and 
Pascal key words. 
Protected mode OS. 



Call 

1-800-847-7078 
In NY: 914-332-1875 

or see your local Lifeboat Affiliated Dealer 
5 5 South Broadway Tarrytown N.Y. 10591 



192 BYTE- OCTOBER 1987 



IHXBnAT 



present status of the system. 

In the context of neural-based robotic- 
control strategy, self-organization will 
enable control with inaccurately known 
mechanical structures, or even if the me- 
chanical structure has changed from me- 
chanical deformation from bending, slid- 
ing, or recoil. 

Furthermore, if a neuron's excitation 
represents the rate of contraction of par- 
ticular "muscle groups," then given the 
coordinates of a previously unseen posi- 
tion in space, the neurons' excitations— 
their rate of contraction— determine 
where in space the arm will end up. With 
this type of self -organization, numerical 
stability is guaranteed. 

The optimization property offers a 
method of finding solutions to problems 
that are computationally explosive. In- 
deed, neural networks allow for a method 
of dealing with the "combinatorial explo- 
sion" encountered in path minimization. 
For instance, researchers have shown that 
the optimization property can be used to 
perform a number of difficult tasks in 
computer vision, such as computing mo- 
tion and brightness perception, surface 
interpolation, and localizing edges. Im- 
plementation of these properties will be- 
come very important for real-time vision 
systems that will be used in a variety of 
applications, such as adaptive flight-con- 
trol systems. 

Combinations of neural-network prop- 
erties will become even more powerful. 
For example, a combination of self-orga- 
nization and optimization will be useful 
for robotic-control path minimization and 
collision avoidance, and it will be the next 
step for the simplest of real-life applica- 
tions. This combination will make robot 
motion graceful. 

Although we have a long way to go to 
understand how the human brain actually 
works, it is clear that this line of research 
will ultimately increase our understand- 
ing of fundamental functions of human 
intelligence and perhaps lead to the first 
truly intelligent machines. ■ 

REFERENCES 

1. Kolmogorov, A. N. "Dolk.Akad.- 
Nauk. " AMS Translation 2 , 5 5 , 1 957. 

2. Josin G. M. "Neural Systems for Uses as 
a Research Tool." Computer Simulation in 
Brain Science. Ed. E. Cotteril. Cambridge: 
Cambridge University Press, 1986. 

3. Hopfield, J. J., and D. W. Tank. "Neu- 
ral Computation of Decisions in Optimiza- 
tion Problems." Biological Cybernetics, 
vol.52, 1985, pages 147-152. 

4. Kohonen, T. Self-organization and Asso- 
ciative Memory. Berlin: Springer Verlag, 
1984. 

5. Hebb, J. O. The Organization of Behav- 
ior. New York: John Wiley and Sons, 1949. 



Circle 150 on Reader Service Card 




Reward the computer enthusiast on your gift list 
with a year's subscription to BYTE magazine- 
plus a bonus issue dedicated to IBM PC's! All 
at a savings of 47% off the cover 
price. A gift announcement 
will be sent in your name to 
the recipient. Order your 
gift subscription today and 
beat the holiday rush! 




YES! Please send a gift 
subscription to BYTE at the 
basic subscription rate of 
only $22 for a full year 
(12 issues)— a savings of 
47% off the newsstand 
price of $42. 



FROM: 

Name _ 




Address . 



City/State/Zip . 



TO: 

Name 



Address 



City/State/Zip . 



□ Payment enclosed □ Bill me 

□ Charge to: □ VISA □ MasterCard 



Account # . 
Signature _ 



Expiration Date 



Note: if you wish to give more than one gift 
subscription, simply list names and ad- 
dresses for additional gifts on a separate 
sheet of paper and mail in an envelope with 
this card. 

Please allow 6-8 weeks for processing. 47AGSU-5 



BYTE 

1.1 



YES! Please send a gift 
subscription to BYTE at the 
basic subscription rate of 
only $22 for a full year 
(12 issues)— a savings of 
4 7% off the newsstand 
price of $42. 



FROM: 

Name 



BYTE 



Desktop fHibiisi 




3§s 



«££ 






Address . 



City/State/Zip . 

TO: 

Name 



Address 



City/State/Zip 

□ Payment enclosed □ Bill me 

□ Charge to: □ VISA □ MasterCard 



Account # 



Expiration Date 



Signature 



Note: if you wish to give more than one gift 
subscription, simply list names and ad- 
dresses for additional gifts on a separate 
sheet of paper and mail in an envelope with 
this card. 

Please allow 6-8 weeks for processing. 47AGSU-5 



BUTE 

m 





THE SMALL SYSTEMS JOLp^pT 

THE PERFECT 



: -^-.-.,.. y,m 




■&&*■" 



Reward the computer enthusiast on your gift list 
with a year's subscription to BYTE magazine- 
plus a bonus issue dedicated to IBM PC's! All 
at a savings of 47% off the cover 
price. A gift announcement 
will be sent in your name to 
the recipient. Order your 
gift subscription today and 
beat the holiday rush! 




< < LU LU pi 

oi2< h o 

O LU LL tZ 




<! 




si 




o 




s- - 


UJ 
UJ 
00 


CM 


LU 

cr 


|lj° 


Q 
Q 


teg 

_ CE 


< 

> 
CQ 


(/)£ 


Q 


C/)^ 


± 


UJ< 


UJ 
CD 


mmm CO 


_l 


^™ < 


<f)6 


LU 

CD 


—J an 


00 


m£ 


O 

Q_ 



(A 



O 

o 2 

Q. ■* 

.=■ in 

^ 00 

u 00 

5 s 



(/> 



z = 



B 



° ^ 

x re 

O <M 

0.2 
0.0. 



I' 



o 
%. - 



Ujg 

C/)£ 
CO- 

QJ< 



CO 
CO 

< 

_J 

(J 



CO 
CD 



cc 



<A 



00 
oo 

LU 

cr 
Q 
Q 

< 

CD 



£ 



LU 
CD 



OO 

O 

CL 



o 

w 00 

js ! 



(A 



B 



x re 

o *f 

co re 

w 

0.2 
a. a. 



Five bills to make a MILLION 

with The Printer Works' 630-11 Printer. 












- 



2 f^*Urr 






^ 



/^ : ' /: ' :; 






For a modest investment of only $495 you 
can make a million bills with The Printer Works 
630-11 printer. This heavy-duty daisywheel 
printer is ideal for the printing of checks, 
invoices, and other multi-part forms. 
The easy-to-read letter quality print also 
makes these printers excellent for j 

word-processing applications. 

The Printer Works' 630-11 is based on 
the reliable Diablo 1355HS mechanism. 
These great printers are not new, but 
The Printer Works makes them look and 
work like-new. The Printer Works has 
been selling refurbished Diablo printers for 
over 5 years, and we stand behind every 
one of them with a full 1 year warranty. 

The model 630-II contains our new 
PSA-1300 interface board which provides 
both RS-232 Serial and Centronics/IBM 
PC compatible parallel interfaces, as well 
as complete emulation of the industry 
standard Diablo 630. 




SPECIFICATIONS: 

Speed 55cps {Shannon Text) 

Pitch 10, 12, 15, PS 

Columns 132/158/198 

VMI 1/48" 

HMI 1/120" 

Buffer 8K Bytes 

Power 110 or 220 VAC 

Sensors: End of ribbon 
End of paper 
Cover open 
Interfaces: Centronics/IBM PC parallel 
RS-232 Serial to 9600 baud 
Automatic modes: Bidirectional printing 

True-proportional spacing 
Margin justification 
Line centering 
HyPlot Graphics 
Supplies: 
Over 100 printwheel styles and several rib- 
bon types and colors are readily available at 
reasonable prices from many suppliers 
worldwide. 



SPECIAL 
INTRODUCTORY 
PRICE: *jtr\t?QQ 

(F.O.B. Hayward, CA) 

Includes: Ribbon, Printwheel, 
Manual, and One Year 
Limited Warranty. 



ADDITIONAL SUPPLIES: 

Plastic Printwheels $ 7.50 

Multi-Strike Ribbons $ 5.50 

Single-Strike Ribbons $ 5.85 

Cloth Ribbons $ 7.50 

OPTIONAL ACCESSORIES: 

Unidirectional Forms Tractor $ 65.00 

Sound Enclosure $195.00 

Automatic Cut-Sheet Feeder $395.00 

Bottom-Feed Chute Installed $ 95.00 

Parallel Interface Cable $ 25.00 

Serial Interface Cable $ 20.00 



NATIONAL SERVICE CENTER 



DIABLO IMPACT PRINTERS • CANON-ENGINE LASER PRINTERS • PRINTER PARTS AND ACCESSORIES 



For more information and product demonstrations call: 

THE PRINTER 

INTEGRATORS OF PRINTING SYSTEMS 

3481 ARDEN ROAD • HAYWARD, CA 94545 




Local 
Calif. 



U.S.A. 



(415)887-6116 
(800)225-6116 
(800)235-6116 



Circle 423 on Reader Service Card 



OCTOBER 1987 -BYTE 192PNW-1 



COMMIX 32: A complete table-top network for PCs and 

minicomputer hosts. Optional Ethernet and Wide-area link 

modules, Print Buffer module, and MS-DOS® Network Utilities. 

Powerful Solutions for Small and Large Networks! 



PC Networks: Do you need a PC LAN 
and multi-user file server, or just advanced 
communications? 

Chances are your company's operations are managed on a mini or mainframe host; 
PCs are for personal productivity (word processing, spreadsheet analysis, etc.). So 
the interactive (operations) files reside on the multi-user host and PC users need to 
conveniently exchange files, share peripherals and access the host. So what do you 
need in a PC network? You need COMMIX 32, for ease of installation and use, you 
can't buy anything better! and COMMIX is priced at under $125 per port. 

COMMIX Software Utilities Provide 
Unsurpassed Productivity 

ITRON has added exceptional value to COMMIX 32 with an MS-DOS® software 
package that includes background file transfer, electronic mail, terminal emulation 
and printer sharing utilities. The COMMIX utilities are configured and controlled 
from pop-up menus for ease of set-up and use. The printer sh <,r, * n " imllrv n 
while in background mode, intercepts print requests from ' 
rerouting through COMMIX to the printer of your choice. Background file transfer 
and E-mail utilities serve local and remote users while running most popular 
applications programs. 

Ideal PC-PC and Mini-Host Communications 

COMMIX 32 uses the popular "AT" modem protocol for connection command, 
treating each port or port group as a telephone extension number. This means that 
popular software such as Crosstalk® or Mirror® can be used to make connections, 
transfer files, or emulate a terminal when the connection is to a minicomputer 
host — at up to 192ikbps! Wide area calls can be made through an "AT" modem 
connected to a COMMIX port. The connection command from the PC software 
appears as an access code in front of the remote telephone number. Remote modem 
users can call into COMMIX via an attached modem and select any PC, mini-host 
port, or printer. COMMIX 32 converts speed, async format and flow control set-up 
parameters as required for each connection. This allows maximum sharing of 
printers, host computer ports, and PC data for local and remote users. An optional 
Ethernet link module provides distributed logic switching for larger or multiple 
host networks. Theoptional Wide Area link module provides a multi-channel, high 
speed synchronous bridge to other COMMIX systems or networks. 

Mini Host Networks: Port contention 

and shared peripherals with universal connectivity. 

COMMIX 32 is the ideal data switch for multi-user minicomputer hosts, such as the- 
MicroVax®. Advanced switching features allow universal port contention or 
utilization with convenient printer sharing and modem pooling. COMMIX 32 
provides an alternate "native" connection protocol that is convenient for terminal 
users. Port class and auto-queue features for port/peripheral contention provide 
additional functionality. An optional one megabyte print spooler module, man- 
aging two printers, frees your computer from print job delays. Other features, such 
as built-in diagnostics with fault reporting and console control of the network with 
statistical reporting; make COMMIX 32 your best PC network solution. 






Call our toll free number for complete information today! 
P.S . Yes, we do have a nationwide field service organization! 



130 Gaither Drive 

Suite 116 

Mount Laurel, NJ 08054 



FiTOT 



(800) 423-8044 
An Infotron Division (609) 722-5575 



COMMIX 32— Under $125 per Port ' 










Data Switching Features 

• Up to 32 async pons 

• lixp^ndabtc user I/O in -l-port module increments 

• I'urt rates (AMI and preset) ro 19.2 kbps 

• Speed and async format conversion 

• Flow control, selectable as in-band or EI A 
signal type 

• F.I A control signal handshaking 

• Local echo, selectable- at any port 

• Stontl virtual circuits, and virtual call connections 

• Camp-on queue for port contention 



• Poet class feature, allowing user m define one 
address for any of a group of pctrts 

• Inactivity timeout, user selectable and 
progtammMefmm IO106O minutes 

• Password security facilities, two leiels 

• Diagnostic facilities for port and link loopbacks, 
and test pattern generation to verify interfaces 

• Optional synchronous channel module 

• I/O interface lompatiblc with popular modular 
wiring system for neat, versatile and highly 
functional premise wiring 




MS-DOS, Crosstalk, Mirror sod MicroVax are registered 
trademarks of Microsoft, Inc. , Ditial CommuntcaQOGj 
Associates, Inc. , Sortklooe Distribution Corporation, 
sod Digital Equipment Corporation, rcspectivdjr. 



192PN W-2 BYTE* OCTOBER 1987 



Circle 420 on Reader Service Card 




Protect Your Investment in DEC Computing 

Building your DEC system efficiently demands a 

winning strategy: Stay in tune with the latest 

technological developments and compare alternative 

solutions. 

In other words, come to DEXPO West 87. 



A Winning 
Strategy 
for Finding 
Digital Equipment 
Computer Solutions 

It's your best strategy. 
DEXPO brings you the best of DEC-style computing . . . 300 vendors demonstrating over 10,000 DEC-compatible 
products and services. You get the answers you need. Plus hands-on technical assistance. Fast. 

Push Your System to its Maximum Potential 

Improve the productivity of all your VAXs — from MicroVAX to VAX 8800 clusters. Uncover the mysteries 
behind PC- VAX connectivity. Explore a universe of DBMS, Storage and Memory, CAD/CAM/CAE products. 
Keep your PDP-lls and older DEC systems at peak performance levels. You'll discover applications, ideas and 
solutions you've never even considered! 

Register Now . . . Call 800-433-0880 

Call to get your FREE Show Preview featuring over 100 of the newest DEC-compatibles. (And, be sure 

to ask for your money-saving VIP tickets!) Admission ^v® w a 

is FREE for Anaheim DECUS* Symposium Attendees. DEXPO WCSt 87 



IDC in cooperation with DEXPO presents: 

"Corporate Computing: DEC vs. IBM, The Digital Challenge Continues" 

A Two-Day Conference. 



DEXPO is organized by Expoconsul International, Inc., 
3 Independence Way, Princeton, NJ 08540. 



World's Largest DEC*-Compatible Exposition 

Disneyland Hotel 
Anaheim, California 
December 8-10, 1987 

'Registered trademark of Digital Equipment Corp. 
DEXPO is not affiliated with or sponsored by DECUS. 

OCTOBER 1987 -BYTE 192PNW-3 



Circle 424 on Reader Service Card 



TCS-7000 

• 6/12 MHz Switchable 

• IBM PC-AT Compatible 

• Expands to 1 Mb Ram 
on Motherboard 

• 8 Expansion Slots 
TCS^OOO 

• IBM PC-AT Compatible 

• 6/10 MHz Switchable 

• Expands to 1 Mb Ram 
on Motherboard 

• Equivalent of 5 Ex- 
pansion Slots 

Color Monitor 
Model Resolution 

• CM-1495 800 x 560 
Multi-frequency 

• CM-1365 640 x 200 

• CM-1322N 640 x 200 

• CM-1380F 640 x 350 
IBM EGA Compatible 

Mono Monitor 
Model Resolution 

• MM-1295 800 x 560 
Multi-frequency 

• MM-1222 800 x 350 

• MM-1422 800 x 350 
Terminal 

• TVT-7220 DEC VT 220 
Compatible 

• TVT-7261 ANSI-ASCE 
Terminal 



Make The Right 
Connection 




Local Area Network 






TCS7000 



• J 




0TATUNG 

Call Now: (408) 435-0140 

VAR, Distributors, OEM and Dealer 
Inquiries Are Welcome 

Tktung Science & Technology 
780 Charcot Avenue 
San Jose, CA 95131 



Tatung Computer 
Systems give you better 
than IBM PC-AT Com- 
patible speed, memory, 
and performance at a 
great price. And, you need 
look no further to find 
savings on high quality 
monitors, too. 

You see, Tatung is one 
of the world's largest 
manufacturers of 
computer components 
with a reputation for 
superior quality known 
around the world. In 
feet, we produce over a 
million monitors every year. 

That's quality you can trust. 
And we deliver complete 
after sales service to you. 



IBM and DEC VT 220 are registered trademarks of 
International Business Machines & Digital Equipment 
Corporation. 



''■ v,,, r*4l ' In 

TCS4000 



Computers For The Blind 

Talking computers give blind and visually impaired people access to 
electronic information. The question is how and how much? 

The answers can be found in "The Second Beginner's Guide to 
Personal Computers for the Blind and Visually Impaired" published by 
the National Braille Press. This comprehensive book contains a 
Buyer's Guide to talking microcomputers and large print display 
processors. More importantly it includes reviews, written by blind 
users, of software that works with speech. 

This invaluable resource book offers details on training programs in 
computer applications for the blind, and other useful information on 
how to buy and use special equipment. 

Send orders to: 

National Braille Press Inc. 

88 St. Stephen Street 

Boston, MA 02115 

(617) 266-6160 

$ J 2.95 for braille or cassette, $14.95 for print. ($3 extra for UPS shipping) 

NBP is a nonprofit braille printing and publishing house. 



192PNW-4 BYTE* OCTOBER 1987 



Mercury Computer 



2501 Channing Way, Berkeley 
415/549-1717 



1443 Broadway, Oakland 
415/763-7622 



Mercury 386 System 

The Mercury 386 Mother Board is an AT compatible Mother Board based on 
the Intel 80386 32-Bit Microprocessor. The Mercury 386 Board uses AT 
enclosure, Power Supply, Keyboard, and AT Interface Cards; And it runs PC 
Software three to four times the speed of a PC/AT. 

• 512K interleaved 32-Bit Ram on board 

• Real time clock/calendar w/battery backup 

• Intel 32-Bit 80386 microprocessor 

• 16 MHz clock speed 

• Socket for 80387 



Mercury AT 286 



► 6/12 MHz switchable, wait state 
» 640K RAM on board 

► 2 hard disk & 2 floppy drive controllers 

► 1.2 MB floppy drive 

» Seagate 30MB hard disk 

► 8 expansion slots 

► Parallel port 

► 2 serial port one standard one option 

► Game port 

► Real time clock w/back up battery 

► Phoenix bios 

• 80287 math, co-processor socket 
» 200 watt power supply 

► Key lock & LED 

► Hi-Res. Amber monitor w/swivel base 

► AT/XT switchable keyboard w/tactile feedback 

• Hardware reset switch 

• Landmark speed test = 16 MHz 

» MS DOS 3.1 



Mercury AT-286 Plus 



$1750 



► 6/10/13 MHz switchable 

► 3 speed selectable 

» Landmark speed test = 13.2 MHz 
» 640K Ram on board 

► 1.2 MB floppy drive 

• Seagate 30MB hard disk 
» Phoenix bios 

► 8 expansion slots 
1 Parallel port 

» 2 serial port one standard one option 

1 Game port 

» Real time clock w/back up battery 

► 80287 Math, co-processor socket 
» 200 watt power supply 

• Key lock & LED 

• Casper H-Res. Amber monitor w/swivel base 

• Hardware reset switch 

» AT/XT switchable keyboard w/tactile feedback 

► 2 hard disk & 2 floppy drive controllers 

• MS DOS 3.1 



SPECIALTIES 

Quality Software 

System Upgrades that make sense. Let us show you what additional memory 
and disk caching can do for slow data bases. 

Network Systems 

We can help you solve small systems problems in an economic way. 
Demonstrations available. 

Iii-store Rental of PCs and Printers. 

We offer use of the new IBM and Macintosh Laser Write printer. 



$2990 



» 8 Slot - Two for high speed 32 Ram expansion, Two PC compatible. Four 

AT compatible. 
» 6/16 MHz clock speed switchable 
» 1.2 MB floppy drive 
■ 40 MB St - 251 hard disk 
• Monographics card 
» 220W power supply 
» Hi-Res monitor w/swivd base 
» AT keyboard w/tactile feedback 



$1850 Mercury XT-IV Turbo 



$770 



• 4.77/10 MHz switchable 

• V20 chip 

• 640K Ram on board 

• 180 watt heavy duty power supply 

• 2 floppy drives 

• 8 expansion slots 

• Monographics card 

• 2 parallel port 

• 2 serial port one standard one option 

• Game port 

• Real time clock w/back up battery 

• AT look like metal case 

• 8087 socket 

• Hi-Res. Amber monitor w/swivel base 

• AT/XT switchable keyboard w/tactile feedback 

• SI = 4.0 time fast than XT 

• MS DOS 3.1 



Mercury XT-VI Turbo Plus 

• 4.77/10 MHz switchable 

• 640K Ram on board 

• 180 watt power supply 

• 2 floppy drives 

• 8 expansion slots 

• 2 parallel port 

• 2 serial port one standard one option 

• Game port 

• Real time clock/calendar w/back-up battery 

• AT keyboard w/tactile feedback (XT-AT switchable) 

• Hi-Res monitor w/swivel base 

• 8087 socket 

• SI = 2.0 



$770 



ONE YEAR 
GUARANTEE 



OTHER OPTIONS 

Citizen 120D Printer $199 

Modem 300/1200 $129 

360 Floppy Drive $99 

EGA Card $199 

Monitor OmII 

Hard disk ST-225/ST4026 $290/5490 

ST-4038/ST251 $580/$650 

Logic Mouse C-7 Plus $79 



(Not Responsible for Misprints — Call to Verify Prices) 

HOURS M-F 10-7, Sat 11-5 

Mercury delivers the lowest prices, the biggest selection and the best value in the Bay Area. All our systems are lOO^o IBM compatible and include disk drive, monitor and keyboard. Our monitor boasts the best 
color graphics and perfect high resolution text. And a Mercury Computer has enough parts and expansion slots to build just about any computer system you might want in the future. 



Circle 421 on Reader Service Card 



OCTOBER 1987 -BYTE 192PNW-5 



EEB 



El 



TO LAN OR NOT TO LAN 
THAT IS NOT THE QUESTION 

THE QUESTION IS WHO CAN GIVE YOU 
THE BEST SOLUTION. 



Option A— We ease the connectivity for you: 

Free consultation on LAN 
Various hardware/software discounts 
Moderate Installation/Training charge 
90 days labor/180 days parte warranty. 
Maintenance contract available. 

OVER 40 STATIONS ASK FOR "DAN" 





Option B— Or if you want to do it yourself: 






List 


Sale 


n 


Novell Netware/286 


$2195 


$1795 


IhS 


3 Novell Netware/86 


1595 


1295 




SMC Active Hub 


800 


560 




SMC Passive Hub 


110 


75 




SMC PC-110 NW Card 


545 


300 




Compatible Arcnet Card 




200 




Ethernet Card 




340 




AST 1.5M File Server 




1795 




Ethernet Workstation 




625 




Cable RG-62/U 1st 25ft 




23 


n 


Extra Foot 




.30 


hi.v. 


Option C 




i 




Ideal for small operation, 


we have 






"Novell Netware/286 Starter Kit" 






Nondedicated/Dedicated 


$2695/2895 




Choice of 






i 


1. Arcnet— Passive Hub, 3pc-110 & cable 






2. Ethernet— 3 Ethernet cards & cable 






&L 



Option E— A High End Complete LAN 

3-Node Ethernet with PC's $4675 

* AT Server, 10 MHz, 1 M, 40 HD, 1.2 FD, KB 
Monitor, Ethernet Network card 

* 2 Diskless Ethernet Workstation 

* Novell Netware 286 2.0 A 

* 2-20 ft. cable 

* 10 M bps Data Transmission Rate 



Storage Devices 



Hard Disk Seagate 



■f Option D 

For very light users, we have 
"Novell Netware/86 EasyKit", 
3 node complete PC-NET $1595 

All kits include: File server preparation 

Application software installation 
Two hours tutorial instruction 




Maxter 



Tape Backup Teac 

Emerald 



225 

238 

251 

4096 

Miniscribe 6053 

6085 

1140 



CTLR, 20M 
CTLR, 30M 
40M, 40Ms 
80M, 28Ms 
42M, 28Ms 
80M, 28Ms 
120M, 28Ms 



SALE 

270 
330 
470 
920 
620 
870 
2095 



OL 



601/X 

501/X 

601/X 

1201/X 



60M, Int/Ext 625/785 
50M, Int/Ext 645/825 
60M, Int/Ext 1185/1295 
120M, Int/Ext 1650/1895 



Link your LAN to mini/mainframe 



NETWORK ASSOCIATES CORPORATION 




TEL: 408-744-0631 
FAX: 408-744-0639 

592 Weddell Dr. #9 
Sunnyvale, CA 94089 

C.O.D. only, very sorry. 



JtfT 



Novell Authorized Dealer 

LAN should be nothing but a commodity. 
Let us remove its barrier for you. 



-BP- 



m 



192PNW-6 BYTE- OCTOBER 1987 



Circle 422 on Reader Service Card 



NEED 

ASHTONTATE 

SOFTWARE? 



We've made a special deal directly with 
AshtonTate and our warehouse is stocked to the 
ceiling. Better than usual discounts are available 
on dBase III Plus, MultiMate Advantage 11 and the 
Master Graphics Pack. All are in-stock and we 
guarantee shipment within 48 hours. Try Diamond 
Software for the right combination of pricing and 
technical support. Prices below are single unit 
prices. 




cBase III Plus 


no copy protection 


$375 was $399 


New dBase III Plus with both 5 l A " and iWi" diskettes $429.00 


■ Use it for mailing lists, labels or to develop 


entire systems. 


■ Now contains the Assistant. Pull down menus 


make ordering commands easy. 


■ New features. Over 50 new 






commands. Improved 


•Vhlns hit 




debugging and assembly 


lIRASH 111 PLUS 




language interface. Source 


\ 




code encryption standard. 


A 




■ Built in networking 


\\\ 




capability, password 


\\\\ 




protection and ability to 


\\w\ 




control five printers. — ■ 


IaXImSL 





MULTlMAre*t[ 

$259 was $294 



Ne 



! MultiMate Advantage II with both 5 '/« and 



V/i" diskettes $289.00 

■ dBase merge for 
mailings — no conversion 
needed. 

■ Pull down menus. 

■ Directly imports ASCII text 
files. 

■ Supports over 400 printers, 
including laser printers and 
sheet feeders. 



MlutMatE" 

/inihir )i^! ftilurn. 



x 



RapidFilf 



lUnnFiLE 



THE FASTEST FILE MANAGER 

$219 was $244 

■ File management, reporting 
and mailmerge functions. 

■ Designed for the casual 
user. Up to twice as fast as 
PFS:File. 

■ Imports and exports 
dBASE, Friday!, Lotus and 
ASCII files. 



A. 



New! Graphics Master 
Presentation Pack 

Regular separate items price $598 
Bundle price $349 

Includes: 

CHART-MASTER: Choice of the Fortune 1000. 

Turn raw data into easy to remember graphs. 

DIAGRAM-MASTER: Creates and edits 

organization charts, flow charts and Gantt 

schedules. Includes library of over 100 shapes 

and images. 

SIGN-MASTER: Gives you letter by letter control 

of typeface size, style and color. Produces 

presentation quality slides in minutes. 



1 (800) 227-0545 

Diamond Software 




7916 Capwell Drive, Oakland, CA 94621 

In California (415) 633-2588 

Buy with confidence from an 
authorized Ashton-Tate Reseller 



Circle 419 on Reader Service Card 



OCTOBER 1987 -BYTE 192PNW-7 



We want product managers 
as great as our products. 



Apple products have a reputation for innovation, the ability to 
communicate clearly and graphically, and versatility. So the 
people we select as Apple Product Managers should display 
the same virtues. 

If you have experience in microcomputer product man- 
agement, why not become a part of the company that 
launched the industry and continues to shape its direction. 
Look into these opportunities today with Apple: 

System Software Product Manager 

You will plan and coordinate the development of new versions 
of the Macintosh™ operating system. This will involve working 
with engineering, marketing, customers and applications devel- 
opers to determine new product needs. You must have 2-5 
years' experience in applications, operating systems or soft- 
ware development; a BS or MS in computer science, software 
engineering or a related field; and a background or education 
in business management. Knowledge of the PC industry and 
Macintosh hardware/software is also required. A familiarity 
with the UNIX* operating system and programming the Macin- 
tosh are pluses. Reply to Dept. JS-B1. 

Macintosh Product Manager 

Working with engineering and other functional groups, you 
will plan, manage and coordinate the development of new CPU 
products. You should have a BS or MS in EE or CS, 3-5 years' 
experience with hardware development, Macintosh hardware/ 
software user experience, and a background or education in 
business management. Reply to Dept. JS-B2. 

Networking and Communications 
Product Managers 

In one position, you will take responsibility for product line 
planning, market and competitive analysis, technology assess- 
ing, and managing the business side of the development pro- 
cess. You will also work with marketing and other groups on 
product positioning, pricing, and support. 

A second position very similar to the first is also available. 
However, you will focus on managing our educational product 
lines. 

For both positions you must have a BS in engineering, CS 
or EE preferred (MS or MBA a plus). Your background should 



include 1-2 years' product marketing, sales or field support 
experience; 2-3 years' in product or project management; and 
2-3 years' experience in at least 2 of the following: LAN, 
MS-DOS, Network Servers, Networked Multi-User Microcom- 
puters, and Educational Networks. Experience in the education 
arena is necessary for the second position. Reply to Dept. 
JS-B4. 

A/UX Product Manager 

Working with engineering, marketing, customers, and applica- 
tion developers, you'll plan, execute, and coordinate the devel- 
opment of A/UX software products plus determine future 
product needs. You should have a BS or MS in computer sci- 
ence or software engineering. You'll also need 3-5 years with 
UNIX Kernel development, Macintosh hardware/software user 
experience, knowledge of products and competitors in the 
technical workstation marketplace and a background or educa- 
tion in business management. Reply to Dept. JS-B3. 

Monitor Product Manager 

You will be responsible for defining monitor strategy and will 
interact with all functional areas of the company to drive prod- 
uct definition and implementation. You must be familiar with 
basic display technology and computer video architecture and 
should have a technical degree plus an MBA and 2-3 years' 
product management experience of computer display devices. 
Reply to Dept. JS-B5. 

Printer Product Managers 

In helping to form printer product line strategies, you will 
develop a thorough understanding of relevant markets, applica- 
tions, and customer needs. We have one position available to 
work with the LaserWriter™ printer and a second position 
available to work with ImageWriter™ II printers and Image- 
Writer LQ. For both, you must have 3-5 years' experience in 
engineering and marketing and be familiar with basic printing 
technologies and system software. A BS in CS, EE or ME or 
equivalent experience is required and Macintosh experience 
or an MBA is a plus. Reply to Dept. JS-B6. 

To apply, please send your resume indicating appropriate 
department code, to APPLE COMPUTER, INC., Human 
Resources, 20525 Mariani Ave., MS9-C, Cupertino, CA 95114. 
Principals only, please. 




192PNW-8 



An equal opportunity employer 

©I^H -7 Apple Computer, Inc. Apple and the Apple logo arc registered trademarks of Apple Computer, Inc. 
Macintosh, LaserWriter, and ImageWriter are trademarks licensed to Apple Computer, Inc. 
•UNIX is a registered trademark of AT&T Bell laboratories. 
BYTE- OCTOBER 1987 



BUI 



Reviews 



Reviewer's Notebook 194 

by Curtis Franklin Jr. 

The Macintosh II 197 

by Bruce F. Webster 

The GRiDLite Laptop 202 

by John linger 

The Wang LapTop 203 

by Alex Lane 

The Def inicon DSI-780 209 

by Dave Thomas 

Laser Printer Times Four 214 

by Wayne Rash Jr. 

Three C Language Screen-Utility 

Packages for PCs 223 

by Jonathan Robie 

Advantage C + + and 

Guidelines C + + 229 

by Mark Mallett 

Equation Solvers 237 

by George A. Stewart 

Personal Consultant Plus 242 

by Ernest R. Tello 

Guide 244 

by William Hershey 




OCTOBER 1987 -BYTE 193 



REVIEWER'S NOTEBOOK 



The ALR 386/2 i s a second-generation 
80386-based computer from Ad- 
vanced Logic Research, one of the first 
companies to introduce an 80386 ma- 
chine. The 386/2 differs considerably 
from the first ALR 386 in its redesigned 
motherboard and lower price. [Editor's 
note: For a review of the ALR 386, see 
"The ALR Access 386 and the Compaq 
Deskpro 386" by Stanley J. Wszola and 
Curtis Franklin Jr. in the February 
BYTE.] 

I reviewed the ALR 386/2 Model 40, 
which has 2 megabytes of 80-nanosecond 
RAM, a 40-megabyte hard disk drive, an 
EGA graphics adapter and monitor, a 
1.2-megabyte floppy disk drive, and 
serial and parallel ports. The machine 
has eight expansion slots (two 32-bit, 
four 16-bit, and two 8-bit), and uses a 
Phoenix BIOS. All models of the 386/2 
come with a standard 101 -key AT-style 
keyboard. The suggested retail price of 
the Model 40 is $3990. 

The lowest priced member of the 386/2 
line is the Model 10, which has 1 mega- 
byte of RAM on the motherboard, no 
hard disk drive, and no graphics. The 
Model 10 is priced at $1990, making it 
one of the first 80386-based computers 
that costs less than $2000. 

The Model 40 is available in either 
desk- or floor-mount configuration. The 
unit I reviewed was the floor mount. 
Some companies make a floor-mount 
model by slipping a stand over the case; 
with the ALR, the case is the floor stand. 
You can use the floor-mount model on a 
desk only if you position it on the far left 



edge of the desk, letting the stand hang 
over the edge. 

Two major changes differentiate the 
386/2' s hardware from that of the origi- 
nal 386. Both are the result of using a new 
motherboard. The original ALR 386 
used the Intel motherboard, which had an 
Intel proprietary 32-bit slot design for 
high-speed memory expansion. The 
386/2 uses 32-bit slots that are propri- 
etary to ALR. The most striking feature 
of these slots is that they are physically in- 
distinguishable from standard AT 16-bit 
slots. You locate them by virtue of the 
ALR special 32-bit slot legend stenciled 
between them on the motherboard. 

The original Intel motherboard also 
came with a socket for an 80387 math co- 
processor. Actually, the 80387 would fit, 
but it wouldn't work. ALR has avoided 
this problem in the 386/2 by providing a 
socket for an 80287 (supplied on the re- 
view machine). There is a bare spot on 
the motherboard that is just the right size 
and shape for an 80387, but no socket is 
provided. [Editor's note: ALR has an- 
nounced that it will provide an upgrade 
for 386/2 owners who wish to install an 
80387. The company was unable to pro- 
vide cost and availability of the upgrade 
at press time. You can reach ALR at 10 
Chrysler, Irvine, CA 92718, (714) 581- 
6770.] 

One of the other improvements Ad- 
vanced Logic Research made for the new 
machine is in documentation. In the re- 
view of the original ALR 386, some of 
the harshest words were reserved for the 
manual. The user's manual for the 386/2 



Table 1: Benchmark results for the ALR 386/2. These C benchmark 
programs are described in "A Closer Look " by Richard Grehan in the 
September BYTE. Ml times are in seconds, except for the Dhrystone, which 
is in iterations per second. The ALR 386/2 benchmarks were run with 
Control-386 installed on the system. 





ALR 386/2 


Compaq 386 


Compaq 386 


Model 80 




10-MHz 


8-MHz 


16-MHz 


16-MHz 




80287 


80287 


80387 


80387 


Dhrystone 


3283 


3748 


3748 


3626 


Fibonacci 


64.66 


53.12 


< 53.13 


57.26 


Float 


5.2 


6.8 


1.43 


1.62 


Savage 


17.97 


21.53 


8.95 


9.49 


Sieve 


7.41 


5.99 


5.98 


6.45 


Sort 


8.55 


5.58 


5.58 


7.74 



is a vast improvement. It is easy to read, 
well-organized, and has meaningful illus- 
trations. The user's manual still would 
not be mistaken for a technical guide, but 
it is complete enough to let you get started 
with the computer. 

The ALR 386/2 does notcome with an 
operating system. For this review, I used 
PC-DOS 3.3. The 386/2 does come with 
software, however. ALR is now bundling 
a copy of Control-386, from Phoenix 
Technology, with the 386/2. This soft- 
ware brings many advantages to the ma- 
chine; the most impressive is the dramat- 
ic increase in the performance of the hard 
disk drive. According to the Coretest 
software I used to measure the speed of 
the hard disk drive, the data transfer rate 
of the controller jumped from 184.2K 
bits per second to 434.4K bps after the 
installation of Control-386 version 1.1. 
For comparison, the Compaq Deskpro 
386 has a disk transfer rate of 165. IK 
bps, and the IBM PS/2 Model 80 has a 
disk transfer rate of 456.8K bps. 

Control-386 also provides disk cach- 
ing, loading of ROM BIOS and EGA 
BIOS into 32-bit RAM, and disk inter- 
leave optimization. In addition to all these 
performance benefits, the software offers 
virtual 8086 environments, 32-bit emula- 
tion of EEMS and EMS memory, and 
complete emulation of the 80286. The 
emulation of 80286 functions includes 
undocumented functions, such as LOAD- 
ALL, that are frequently used in virtual- 
mode software for the IBM PC AT. 

The major performance boost in the 
386/2 is the result of the new hard disk 
controller and the Control-386 software. 
The 100- by 25-cell spreadsheet that the 
original ALR 386 loaded in less than 22 
seconds is loaded in less than 2 seconds 
by the 386/2. (For other benchmark re- 
sults, see table 1.) While the boost in 
hard disk performance does not show up 
in most benchmarks, it does have a great 
impact on most operations that a user 
would perform. 

In all, ALR has taken the very fast 
80386 and coupled it with a very fast hard 
disk system. The result is a computer that 
should satisfy the performance needs of 
all but the most specialized technical ap- 
plications that demand the power of 
workstations. 

—Curtis Franklin Jr. 
Associate Technical Editor 



194 BYTE- OCTOBER 1987 



rficWK 






wwn»_ 








- art 'l 



•<*•*£, 





^e Your DeaW- F ° ^tion ov 
p-o*ct°'^^ alet nearest 



Reader Service 



OBD EB j 




Architec 



3i ? KCa * 

can make or break a computer system. 



t 

sture c 




Ifthe sheer weight of UNIX brings the 
PC to its knees, all appfiGsitLo'ns running 
ufldg r it will suffer. Conceived more tha[(?i a 
decade and a half ago, UNJK is today the 
reguH&f modifications, additions am$ 
patches by hundreds of programmers. It 
needs the resources of at least an AT 5 

Compare this to the QNX O/S, 
designed by a dedicated tjeam with a 
common purpose and complete under- 
standing of both the software and the 
environment in which it must run. Having 
elegantly solved the problem of inter-task 
communications, JINX is more than capa- 
ble of both networking and real time per- 
formance— the superior choice for process 
control and office automation systems. 

Quick and efficient on a PC, QNX 
soars on an AT. QNX occupies 80K (stand- 



alone version) to 1 14K (network version) 
of system memory and allows 40 tasks 
(programs) and up to 16 terminals per 
computer. 

QNX modular architecture facilitates 
easy adaptation and extensions by soft- 
ware developers for specific requirements. 
In addition, PC-DOS runs as a single- 
tasking guest operating system under QNX. 
With the DOS Development System, 
DOS EXE files can be developed in shorter 
time than under DOS itself. 

Communication among all tasks is via 
"message-passing." Tasks anywhere on 
a network of up to 255 computers com- 
municate rapidly and transparently with 
each other. 

With the true distributed processing 
and resource sharing of QNX, all the 



resources on the network are available to 
any user. Application programs and data 
can be distributed over the network with- 
out having to go through a central file 
server. 

Network growth is fast and simple. 
If your disk becomes a bottleneck, add a 
disk anywhere on the network. If y^ur 
needs outgrow your present configuration, 
just add terminals and/or computers as 
required, Wthout! having to re-write pro- 
grams; and without system degradation. 

If you would like to know the secret 
of the QNX architecture, please give us 
a call. We invite End Users, VAR's, OEM's 
and Software Developers to discover a 
whole new world of computing capabilities. 

Over 30,000 systems have been 
installed worldwide since 1982. 



THE ONLY MULTI-USER, MULTI-TASKING, NETW0RKINQ, REAL-TIME OPERATING SYSTEM FOR THE IBM fO, AT, 



— | 



■i 



Multi-User 10 (1 6) serial terminals per PC (AT). 
Multi-Tasking 40 (64) tasks per PC (AT). 
Networking 2.5 Megabit token ring. 

255 PC's and/or AT's per network. 

10,000 tasks per network. 

Thousands of users per network. 
RealTime 2,800 task switches/sec (AT). 
Message Fast intertask communication 
Passing between tasks on any machine. 



C Compiler Standard Kernighan and Ritchie. 

Flexibility Single PC, networked PC's, 
single PC with terminals, 
networked PC's with terminals. 
No central servers. Full sharing 
of disks, devices and CPU's. 

PC-DOS PC-DOS runs as a QNX task. 

Cost From US $450. 

Runtime pricing available. 



THE HP VECTRA , AND COMPATIBLES. 

/ 




For further information or a free demonstration 
diskette, please telephone (613) 591-0931. 

Quantum Software Systems Ltd. • Kanata South Business Park • 175 Terrence Matthews Crescent • Kanata, Ontario, Canada • K2M 1 W8 



UNDCtaa reglbliiwd trademark of AT & X Boll Labs. IBM Ffc, AT, XT fitnjfjge DOS are tra&rJartoofjeM Corp. HP arid Veetraare rgglrtared trademarks ot Hewlett-Packard Company. 



Circle 229 on Reader Service €af& 



SYSTEM REVIEW 




The Macintosh II 



Bruce F. Webster 



Back in February 1984, I 
bought a Macintosh computer 
right of f the shelf. It had a 5 12- 
by 384-pixel monochrome 
display, 128K bytes of RAM, 
64K bytes of ROM, a single 
400K-byte floppy disk drive, 
and a 68000 CPU running at 
7.83 megahertz. It had no ex- 
pansion slots, no means of ex- 
panding RAM, and no external 
disk drives or hard disks avail- 
able. It cost me around $2500, 
and there were only three soft- 
ware packages available for it: 
the MacPaint/MacWrite combi- 
nation from Apple, Microsoft 
Multiplan, and Microsoft's 
BASIC interpreter. 

Now, more than three years 
later, I have a Macintosh II sit- 
ting in my office. It has a 640- 
by 480-pixel gray-scale display, 
1 megabyte of RAM, 256K 
bytes of ROM, an 800K-byte 
floppy disk drive, a 40-mega- 
byte internal hard disk drive, an 
Apple video card with 256K 
bytes of video memory, and a 
monochrome monitor. It has 
six NuBus expansion slots. It can be ex- 
panded to many megabytes of RAM via 
both the motherboard and the NuBus 
slots, and a variety of disk drives (both in- 
ternal and external) are available. This 
system costs around $6267, and there are 
hundreds of software packages available 
for it. 

The Macintosh II System 

The Macintosh II has already been 
covered extensively in the product pre- 
view that appeared in the April issue of 
BYTE. But I'll give a quick description of 
it here. 

The Mac II is a modular computer sys- 
tem built around the 68020/68881 chip 
set from Motorola running at 16 MHz, 
and the Macintosh Toolbox and operating 
system routines from Apple. A full 32-bit 
data path is used for memory and bus ac- 



A powerful 68020 CPU, 

NuBus slots, and color, with a few 

compatibility problems 




cess, as opposed to the 16-bit data path 
and 24-bit bus on the other Macintosh 
systems. The combination of doubled 
clock rate and doubled data path give 
roughly a fourfold increase in perfor- 
mance over the Mac Plus. 

Since the computer has no standard 
video system, you can select the video 
display you want. Apple sells a Macin- 
tosh II video card with 256K bytes of 
RAM that supports 640- by 480-pixel 
resolution with four bits per pixel, giving 
you 16 colors (or gray shades) out of a 
palette of 16 million. A video card expan- 
sion kit adds 256K bytes of RAM to in- 
crease the pixel depth to 8 bits (1 byte per 
pixel), yielding 256 colors/shades simul- 
taneously. Apple also sells two monitors 
to go with the video card: a 12-inch 
monochrome monitor, which can display 
gray scales, and a 13-inch RGB monitor. 



However, you do not have to 
buy Apple's video card, nor 
one of its monitors. Several 
third-party manufacturers, such 
as E-Machines Inc. and Super- 
Mac Technology, have an- 
nounced their own video cards 
and monitors for the Mac II. 



Using the Mac II 

Unpacking and setting up the 
Mac II took about 10 minutes, 
and I was taking my time. To 
turn on the machine, I reached 
to the back (right side) and 
pushed the power button. The 
monitor came on, the system 
booted up with the usual Mac 
display, and it was ready to go. 
You go through this installa- 
tion only once. From then on, 
switching on the Mac II is ac- 
complished from the keyboard: 
You press a key labeled with a 
triangle (present on both the 
standard and extended key- 
boards), and the power's up. 

The Macintosh II comes with 
version 4. 1 of System (the oper- 
ating system) and version 5.5 of 
Finder (the user interface). These ver- 
sions have no major changes from previ- 
ous versions, but there are a number of 
minor ones, particularly in Finder. The 
most significant is that the Control Panel 
desk accessory (DA) now has subpanels 
for each major hardware device (General, 
Keyboard, Monitor, Mouse, Sound, and 
Startup Device). Third-party hardware 
manufacturers can define subpanels for 
their products, and by dropping these 
files into the System Folder, you auto- 
matically install and select them as part 
of the Control Panel. 

Using the Mac II is pretty much like 
using a regular Macintosh, but with two 

continued 

Bruce F. Webster (P.O. Box 1910, Orem, 
UT 84057) teaches at Brigham Young 
University. 



OCTOBER 1987 -BYTE 197 



REVIEW: MAC II 



Macintosh I 



Company 

Apple Computer Inc. 
20525 Mariani Ave. 
Cupertino, CA 95014 
(408)996-1010 

Size 

18% by 14 1 /3 by 5 1 /2 inches; 
24 to 26 pounds 

Components 

Processors: Motorola 68020 CPU 
and Motorola 68881 math coprocessor 
running at 16 MHz 
Memory: 1 megabyte of RAM, 
expandable on the motherboard to 8 
megabytes; 256K bytes of ROM 
Mass storage: Both models come 
with one 800K-byte 3 1 /2-inch floppy disk 
drive; one model comeswith a 
40-megabyte hard disk drive 
Expansion: Six NuBus slots 
I/O interfaces: Two DIN-8 serial 
connectors; two Apple Desktop Bus 
(ADB) ports; one SCSI port 
Mouse: Mechanical tracking; optical 
shaft encoding at 90 pulses per inch; 
ADB connector 

Sound: Apple custom digital sound 
chip, including 4-voice wave-table 
synthesis 

Options: 

Processors: Motorola 68851 paged 
memory management unit (PMMU) chip: 
$499 

Memory: 1 -megabyte RAM 
expansion (256K-byte chips): $349 
Display: Apple video card, supports 
640 by 480 display with 4 bits per pixel: 
$499; Apple video card expansion, 
expands video memory to 8 bits per 
pixel: $149; Apple 12-inch 
monochrome monitor: $399; Apple 1 3- 
inch RGB monitor: $999 
Keyboard: Apple Keyboard (81 keys, 
including numeric keypad and cursor 
keys): $129; Apple Extended 
Keyboard (1 05 keys, including 1 5 
function keys, numeric keypad, cursor 
keys): $229 

Mass storage: Additional 800K-byte 
floppy disk drive: $299; 20-megabyte 
hard disk drive: $999; 
40-megabyte hard disk drive: $1599; 
80-megabyte hard disk drive: $2699 

Documentation 

263-page user's manual 

Price 

With 1 megabyte of RAM and one 
800K-byte 3 1 /2-inch floppy disk drive: 
$3769 

With 1 megabyte of RAM, one 800K- 
byte3 1 /2-inch floppy disk drive, and a 
40-megabyte hard disk drive: 
$5369 



DISK ACCESS IN BASIC (IN SECONDS) 



WRITE 














READ 












20 


40 60 80 1( 


)0 l 


i 20 40 60 80 100 


BBMM15 












10 












■BM18 












^■M15 












■■■■115 














6.3 













BASIC PERFORMANCE (IN SECONDS) 
SIEVE CALCULATIONS 

50 100 150 200 250 50 100 150 200 250 





























24 


H68 



SYSTEM UTILITIES (IN SECONDS) 
40K FORMAT/DISK COPY 40K FILE COPY 



10 20 30 40 50 O 10 20 30 40 50 




SPREADSHEET (IN SECONDS) 

LOAD RECALCULATE 

5 10 15 20 25 5 10 15 20 25 

































^n 7.e 


2.4 

















■■7.5 






■ 






2.7 


| 



MAC II - MACSE - MAC PLUS 



Thegraphs for Disk Access in BASIC show how long ittakesto write andthen read a 64K- 
byte sequential text file to a blank floppy disk. (For the program listings, see BYTE's 
Inside the IBM PCs, Fall 1 985, page 1 95.) The Sieve graph shows how long it takes to run 
one iteration of the Sieve of Eratosthenes prime-number benchmark. The Calculations 
graph shows how long it takes to do 1 0,000 multiplication and 1 0,000 division operations 
using single-precision numbers. The System Utilities graphs show how long it takes to 
format and copy a 40K-byte file using the system utilities. The Spreadsheet graphs show 
how long it takes to load and recalculate a 25- by 25-cell spreadsheet in which each cell 
equals 1 .001 times the cell to its left. The Mac II and Mac SE used System 4.1 , Finder 5.5, 
and Microsoft BASIC 2.1(b) for the System benchmarks. The Mac Plus used System 3.0, 
Finder 5.0, and Microsoft BASIC 1.0 for the System benchmarks. Multiplan 1.02 was 
used on the Mac Plus and Mac II; Multiplan 1 .1 was used on the MacSE. 



198 BYTE* OCTOBER 1987 



REVIEW: MAC II 



important differences: Everything hap- 
pens much faster, and the screen is 
larger. 

With the Mac II, the agonizing wait of 
the orignal Macintosh is gone: Applica- 
tions and data files load very quickly, and 
application operations take less time. 
Windows jump open at amazing speeds, 
and file copies from the floppy disk to the 
internal drive were completed sooner 
than I expected. You can have several 
DAs operating simultaneously with little 
or no degradation of performance. 

A number of the applications that I 
tried recognize the larger screen and 
automatically size their windows to 
match. For example, the editor window 
on Consulair's Edit version 2. 1 fills most 
of the screen, allowing you to look at 123- 
column-wide code listings. So does 
Lightspeed C version 2.01, with its built- 
in editor. Microsoft Word 3.0 and Super- 
Paint also size their windows this way, 
giving you the ability to easily manipulate 
information on large documents. 

Interestingly, some old programs also 
detect and use the extra screen space, 
among them Multiplan 1.02 and Mac- 
Draw 1.9 (although MacDraw's Lines 
menu behaves rather strangely, blanking 
the menu items as you use it) . Unfortu- 
nately, some applications have their win- 
dow dimensions hard-coded in, so that 
the window can't expand to make use of 
the extra space. This limitation is easier 
to tolerate if you can drag the window to 
another part of the screen (such as with 
Mac Write 4.5), but some applications 
don't allow you to move the small win- 
dow at all (e.g., MacPaint 1.5 and Red 
Ryder 9.4). 

The vast screen size (compared to the 
9-inch monitor on the original Macin- 
tosh) also affects how you work with the 
Mac II. For example, the Alarm Clock 
DA is virtually useless on a small screen: 
When you summon it up, it becomes the 
foreground window and disables the 
menus in the application you're working 
with. Clicking on the application's win- 
dow to reactivate the menus doesn't 
help— this hides the Alarm Clock 
display. But with a large screen, you 
summon up the Alarm Clock, drag it to 
an unused portion of the screen, and click 
back in the application window to resume 
work. Then you can edit, write code, or 
telecommunicate with an on-line service 
while having a running time display. 

You can use a compiler to produce an 
application you're working on, the 
MockWrite DA to take notes, and the 
Alarm Clock DA to let you know when 
it's getting really late, and you don't have 
to shuffle through the various windows to 
find what you need. It's all there on the 
roomy screen. You find yourself arrang- 



ing desk-accessory windows so that, as 
you use your favorite application, you can 
summon up additional information or 
handle some minor task at the click of a 
mouse. 

To shut off the Mac II, you select the 
Shut Down command from the special 
menu on the desktop. This takes care of 
any operating system housekeeping, 
parks the heads on the hard disk, and ac- 
tually turns the power off for you. 

Color on the Mac II 

One of the major features of the Mac II is 
its support of color. As mentioned ear- 
lier, the fully expanded Macintosh II 
video card supports a display with 256 si- 
multaneous colors from a palette of 16 
million (8 bits of information each for 
red, green, and blue). Dithering tech- 
niques can dramatically increase the 
number of apparent colors on the screen. 
This color capability is supported by 
Color QuickDraw, which is an exten- 
sion—not a replacement— for the original 
QuickDraw that provides the Mac with its 
powerful graphics primitives. Apple also 
sells an RGB monitor, manufactured by 
Sony, which yields a clear, crisp picture. 

Unfortunately, the system I reviewed 
came with the unexpanded video card 
(only 4 bits per pixel) and a monochrome 
monitor; Apple has a large backlog on the 
color monitor orders and was unable to 
supply one in time for this review. Select- 
ing all 4 bits (16 shades of gray) from the 
control panel had a noticeable effect: The 
Apple logo on the menu bar developed 
shaded gray strips (corresponding to the 
color strips on the real logo). 

All was not lost, though. Sony sent me 
one of its multiscan RGB monitors (Sony 
CPD-1302), along with the necessary 
video cable (made by Cables-To-Go). I 
set the switches on the back of the Sony to 
"analog RGB," plugged it into the Mac 
II, and powered up. Everything was still 
in black-and-white and gray, but I didn't 
panic; instead, I brought up the Control 
Panel, selected the Monitor display, and 
clicked on the Color button. The Mac II 
redrew the desktop display, and the 
Apple logo was in color. 

That was the good news. The bad news 
was that I had very little software to show 
off the Mac IPs colors. So, I figured I'd 
write my own program: More bad news. 
First, a good many of the compilers I had 
did not work on the Mac II, or produced 
code that did not work well (see the sec- 
tion on "Problems," on page 200). 
Worse yet, none of them had the inter- 
faces and libraries needed to access the 
Color Manager and Color QuickDraw. 

I remembered that the Mac II sup- 
ported some fixed color routines in the 
original QuickDraw. These routines let 



you set the foreground and background 
colors out of a palette of eight colors. 
Using a beta version of a Pascal compiler, 

I whipped up a quick program to draw 
circles of different colors. It worked fine, 
and the colors did show up as expected. 

Even as I write this, vendors are rush- 
ing to fill the need for color displays and 
support for the Mac IPs Color Quick- 
Draw. For example, Manx Software Sys- 
tems has introduced version 3.4 of its Az- 
tec C compiler; it supports the new Mac 

II interfaces and generates 68020 code. 
Think Technologies has circulated both 
the necessary header files and an applica- 
tion that patches its present C compiler 
(version 2.01). 

Nor have users been stymied by the 
lack of Apple color monitors. Most on- 
line services now have information on 
how to build adapter cables to connect 
either the Sony or the NEC JC-1401P3A 
MultiSync color monitors to a Mac II. 

Multiple Monitors 

Even more interesting than the Mac IPs 
support of color is its capability to have 
multiple monitors sharing the desktop 
display simultaneously. Each monitor re- 
quires a video card, which obviously 
limits you to six monitors (the number of 
slots in the Mac II). I was able to acquire 
a spare video card long enough to test out 
this capability using the Sony color moni- 
tor and the Apple monochrome monitor. 

Initially, the extra monitor would 
display only a gray pattern at boot-up. 
Under the monitor section of the Control 
Panel, an area of dead space in the display 
showed something new: two gray boxes 
representing the two screens hooked to 
the Mac II. I could drag either one of the 
boxes to the position I wanted the ex- 
tended desktop to map across the two 
screens: left, right, top, bottom, or even 
diagonally. You select which screen you 
want to be the master screen by dragging 
a tiny representation of the menu bar to 
the desired box. 

Upon rebooting, the results are fasci- 
nating. The mouse pointer is constrained 
to the layout that has been set up in the 
Control Panel. Well-written applications 
let you drag windows to the extra screen. 
Microsoft Word 3.0 and MacDraw allow 
this, although you can't "grow" a win- 
dow larger than the screen it occupies. 
The Lightspeed C editor window can ac- 
tually be grown to fill both screens, al- 
though I can't imagine anyone writing 
code that needs that large a window. I 
even dragged a color window to straddle 
the color and monochrome monitors, and 
I watched the patterns change by color on 
one screen, and in shades of gray on the 
other. 

continued 



OCTOBER 1987 -BYTE 199 



REVIEW: MAC II 



A logical structure called a gDevice 
quietly handles the updating and drawing 
of each screen as a window crosses the 
boundary of a monitor. Although you can 
access gDevice if necessary, for the most 
part you don't need to deal with it. For 
the programmer, if your application uses 
the screenBits. bounds global variable 
to set the boundaries of its window, it 
should work flawlessly in this type of en- 
vironment without any additional code. 
For the typical user, the important thing 
to know is that the Mac II comes out of 
the box with this type of video support 
built-in. 

Performance 

I ran BYTE's standard C benchmarks on 
both the Mac II and the Mac Plus. All six 
tests were first compiled on the Mac Plus 
using Lightspeed C version 2.01 . The re- 
sulting object code was run on both the 
Mac Plus and the Mac II. The tests were 
then recompiled and rerun on the Mac II, 
using Consulair's 68020/68881 Mac C 
compiler version 5.04. The results are in 
table 1 . 

First, let's look at the Lightspeed C 
versions. Ignoring the two floating-point 
benchmarks (Float and Savage), there's 
an average performance increase of 



4.25— that is, the same code ran 4.25 
times faster on the Mac II than on the Mac 
Plus. This is roughly what you'd expect. 

Next, let's look at all three sets of 
floating-point benchmarks (Float and 
Savage). These dramatically show the 
difference between using SANE (stan- 
dard Apple numeric environment, 
Apple's floating-point package on the 
Mac) on the Mac Plus, using the 68881 
via SANE on the Mac II, and using the 
68881 on the Mac II directly. Moving 
from Mac Plus/SANE to Mac II/SANE 
yields a performance increase of 8.5 for 
both Float and Savage. Moving from Mac 
II/SANE to Mac 11/68881 yields a perfor- 
mance increase of 5.5 for Float and a 
whopping 41.9 for Savage. The overall 
boost in speed going from Mac Plus/ 
SANE to Mac 11/68881: 48.3 for Float 
and 353.8 for Savage. 

Finally, compare the times of the non- 
floating-point benchmarks for Light- 
speed C and Mac C on the Mac II. De- 
spite the fact that Mac C is generating 
68020-specific code, the Lightspeed C 
versions are faster for every benchmark. 
The biggest difference is in the Dhrys- 
tone, where Lightspeed C is 20 percent 
faster than Mac C. On the other hand, 
Mac C's direct access of the 68881 chip 



Table 1: Benchmark results for the Macintosh Plus and Macintosh II. 
"LSC" refers to Lightspeed C version 2. 01; "Mac C" refers to Mac C version 
5. 04 for the 68020/68881. The benchmarks are described in more detail in "A 
Closer Look " by Richard Grehan, in the September BYTE. 

Benchmark 



Dhrystone 

Fib 

Float 

Savage 

Sieve 

Sort 



Mac Plus/LSC 


Mac ll/LSC 


Mac ll/Mac C 


724 


2631 


2106 


247.3 


58.9 


83.8 


125.7 


14.4 


2.6 


1910.6 


226.2 


5.4 


56.2 


11.9 


16.7 


89.0 


19.6 


23.2 



Table 2: Benchmark timings for the Macintosh product line, using the C 
language benchmarks described in "A Closer Look. " All times are in seconds, 
with the exception of the Dhrystone results, which are in Dhry stones per 
second. Consulair's Mac C 68020 compiler version 5. 04 was used with the 
68020 processors, and Mac C version 5. 04, which produces 68000 code, 
was used for the 68000 processors. "SE/HC" is a Mac SE using General 
Computer's Hyper Charger 68020 accelerator board, and "SE/LP " is a 
Mac SE using Levco's SE Prodigy 68020 accelerator board. 



Benchmark 



Mac II Mac SE/HC Mac SE/LP MacSE 



Mac Plus 



Dhrystone 

Fib 

Float 

Savage 

Sieve 

Sort 



2106 

83.7 

2.6 

5.4 

16.8 

23.2 



2176 

71.6 

4.0 

8.9 

14.9 

20.5 



2380 

71.5 

2.6 

5.2 

14.8 

20.4 



574 
263.5 
2302 
1921 
64.6 
103.8 



480 
327.22 
228.3 
2049.2 
77.6 
124.6 



can make a tremendous difference in 
floating-point operations. 

For more performance information on 
the entire Macintosh product line, see 
table 2, which contains benchmark times 
measured by the BYTE staff. 

Problems 

Given all the changes between the Macin- 
tosh II and its predecessors, problems 
were bound to happen. The original Mac 
design was a closed, fixed box, and the 
temptation among developers was to 
make assumptions about the hardware 
and software, despite Apple's warnings 
to the contrary. Apple itself faced chal- 
lenges in moving toward the open archi- 
tecture of the Mac II. 

The single biggest hardware problem is 
the CPU bottleneck. Other than the stan- 
dard 68881 math coprocessor, a truly in- 
telligent move on Apple's part, there is 
very little distributed processing. In- 
stead, the 68020 must draw each and 
every pixel on the graphics screen. A 
graphics coprocessor that intercepts 
many (or most) of the QuickDraw calls 
could enhance performance tremendous- 
ly, as could direct-memory-access cir- 
cuitry for the disk drives. 

The biggest software problem is in- 
compatibility. There are several reasons 
for this, some of which are Apple's fault, 
some of which are the developers' fault, 
and some of which are just inevitable. 

Apple's biggest problems center 
around bugs in the ROM and the operat- 
ing system (currently, version 4.1). I've 
talked with a number of developers, some 
with large third-party firms, who have 
been frustrated by the impact that 
Apple's bugs have had on their products. 
Some manufacturers have had to make 
quick patches to their programs, because 
it's necessary to work around some of 
Apple's bugs. 

Many software incompatibilities, how- 
ever, are due to poor planning on the part 
of the developers. Apple has been warn- 
ing developers for months not to depend 
on absolute memory locations (other than 
specifically defined system globals), not 
to presume anything about screen dimen- 
sions (which results in those stuck win- 
dows I described earlier), and especially 
not to use programming techniques in- 
compatible with the 68020. 

One major source of problems has to 
do with the 68020's instruction cache. In 
this cache, the 68020 keeps the last 64 in- 
structions that it has executed, along with 
the address (in memory) of each. When 
the 68020 is about to fetch its next in- 
struction, it checks first to see if that in- 
struction is already in the cache. If so, it 
loads the instruction from the cache, 
avoiding a fetch from memory and thus 



200 BYTE- OCTOBER 1987 



REVIEW: MAC II 



speeding up execution. Small chunks of 
code, such as tight loops, can fit entirely 
inside the cache, enhancing performance 
dramatically. 

Why does this cause problems? Be- 
cause some programs, particularly those 
with copy protection, use self -modifying 
code. If the original, unmodified instruc- 
tions are still in the cache, then they are 
executed instead of the modified ones. In 
another form of the same problem, usual- 
ly involving system I/O calls, a set of in- 
structions is created in some unused por- 
tion of memory (such as on the stack) and 
then executed. If two such calls are made 
close together and are created at the same 
locations, the cache may still contain the 
instructions from the first call and may 
use those instead of the ones just created. 

Unfortunately, the Mac II has no pro- 
visions for disabling the 68020 cache. 
This is a real deficiency, since the 68020 
does have a cache-disabled mode, and 
most of the 68020 accelerator boards for 
the Mac Plus and Mac SE allow you to 
disable the cache via a desk accessory. 
Given the flexible nature of the System 
4.1 Control Panel, I'm surprised that 
Apple did not implement such an option. 
However, at least one public domain ap- 
plication (cachectrl) and one FKEY (Dis- 



able Cache) have surfaced to let you do 
this. 

Finally, here's a hard one for me to 
make a call on: Virtually every paint- 
style application mashed the screen 
display when I used more than 1 bit for 
the pixel depth, either in gray- scale or in 
color. Although the program still func- 
tions, several patches of gray or color 
garble the upper portion of the screen. 
MacPaint 1.5, SuperPaint 1.0, and Full- 
Paint 1 .0 (which had been hacked to op- 
erate on a Mac SE) all did this. I cor- 
rected the problem by setting the colors to 
2 in the control panel, but it's a nuisance 
swapping between modes. 

Because of mistakes by both Apple and 
the developers, about 10 percent to 20 
percent of the Macintosh programs on the 
market, at the time of this writing, won't 
work on the Mac II. That percentage 
should shrink significantly by the time 
this review sees print. In fact, Apple itself 
is already trying to correct problems with 
its own programs by offering an update 
plan for owners of MacTerminal, Mac- 
Draw, MacProject, and Mac Write. 

The Open System 

The Macintosh II is probably the best and 
most important product that Apple has 



released since the original Apple II. It 
represents the end of the closed-box leg- 
acy of the original Mac and a return to the 
open architecture that continues to sell 
the Apple II, despite its age and 
obsolescence. 

However, much like the current 80386 
systems, the Mac II is a tad underbaked. 
Little software exists to take advantage of 
the Mac II' s power, and current software 
suffers from compatibility problems. 
While Apple did a lot of things right, 
there was still some shortsightedness at 
work. 

Should you buy a Macintosh II? If 
you've got the money and the need, then, 
yes, the Mac II is worth buying. It has 
some of the drawbacks of any new archi- 
tecture, but it has the advantages as well: 
speed, power, and expandability. Most 
important, it has tremendous third-party 
support, and those third-party manufac- 
turers will transform the Mac II into a far 
better machine than it is now. 

Three years ago, I described the origi- 
nal Macintosh as "a gem— rough, slight- 
ly flawed, but a gem nonetheless . " Those 
same words apply just as well to the Mac- 
intosh II, but with one important differ- 
ence: Here's a gem that you can cut and 
polish yourself. ■ 



Hardware Specials 



COMMODORE PCI 0-2 SYSTEM 

640K dual drive, w/o monitor 



AMIGA 500 COMPUTER 

wlfh matching 1080 color monitor . . . 

AMIGA MEMORY BOARD 

expands to ) megabyte RAM 

AMIGA 1680 MODEM 

300/1200 baud tot Amiga 500/1000 

AMIGA ENHANCER 

with Klckstait 1.2 and Amiga DOS 

AMIGA EXTERNAL DRIVE 

Addon 3.5" disk drive 

AMIGA GENLOCK 

Video Interface for Amiga 1000 

AMIGA SIDECAR 

Add IBM compatibility to your system . . 

PROGRESSIVE MEGABOARD II 

2MB expansion tor Amiga systems .... 

PRACTICAL 2400 

7. card IBM compatible modem w/sottware 

PRACTICAL 1200SA 

External IBM compatible modem . . . 

ATARI 1040ST COLOR 

Complete 1MB color computer system 

ATARI SHD-204 

20 megabyte hard disk lor ST systems 

ATARI SF-314 

I megabyte floppy drive for ST systems 

IBM COMPATIBLE MODEM 

1200 baud Internal w /software .... 

20 MEGABYTE 

Disk drive on a card, IBM compatible 

30 MEGABYTE 

Disk drive on a card, IBM compatible 



?629 95 

S849' 5 

'159 95 

'129 95 

'14' 5 
5199' 5 

'199 95 
579995 

'479 95 

S159' 5 

'119' 5 

?839 95 
5549*5 

59995 
$34995 

$399' s 



mt™* 



WORLD 






rf^Illill 



Epson Equity 1-Plus 
XT Compatible Turbo Computer 

•640K «5 slot -4.77/1001 H2 turbo -AT style 
keyboard -Mono or color card -Serial/ 
parallel ports -DOS 3.2 -GW-BasIc -Monitor 
not Included -Specify mono or color card 

Dual 
Floppy 




Blue Chip by Hyundai 
XT Compatible 20MB Computer 

•512K RAM -360K floppy -20MB hard disk 
•Serial and parallel ports -Monochrome 
graphics card -Six expansion slots -Keyboard 
•DOS 3.2 -GW-BASIC -Monitor optional 



W9* 



Sff'WP* 



Sale 
Price 



9799 



95 



Amiga Software Specials MM IBM Compatible Software 



AEGIS VIDEO SCAPE 3-D 

Powerful animation software . , . . 



M29' 



195 



ELECTRONIC ARTS DELUXE MUSIC ._ AM 

Construction Set *0T 

NEW HORIZONS PRO WRITE $ , A95 

Word processing sottware ©T 

NEWTECH DIGI PAINT s - rt95 

4096 color paint sotlware *Ot 



ASHTON-TATE ADVANTAGE 2 

New version 3.7 

BORLAND TURBO C 

Language development sottware 

MICROSOFT WINDOWS 

Mac-Like operating environment 

SOFTWARE PUB. FIRST CHOICE 

Word proc, database, spreadsheet 



'249' 5 
,.«59 95 
. '59 95 
,.*89 95 



To Order 
Toll Free 


I'l^WB'lffl 


In New York 
Alaska & Canada 
Call: (718) 417-3737 



Dealer Inquiries Invited — Prices Effective Through October 31, 1987 



Hardware Specials 



AMSTRAD PC1512-DD 

512K, dual drive, monochrome monitor 

BROTHER HR20 

Letter quality printer, ftictlon/tractor . . 

BROTHER M1509 $?Jl095 

180 cps dot printer, IBM/Epson compatible 34r 

COLORGRAPHICS 

'A card, parallel printer poit . , . 

COMMODORE 2002 

13" RGB color monitor 

EPSON FX-86E 

200 cps trictlon/tractor dot matrix printer 

EPSON LQ-IOOO 

180 cps/60 cps, parallel/serial 

EPSON LX-800 

180 cps dot matrix printer.tractor/friction 

EPSON MBM-2095 

12" green monitor tor Epson/IBM 

MAGNA VOX 8505 

12" RBG/Composlte color monitor 

MAGNAVOX 8562 S1A095 

12" RGB BOcolumn color monitor w/cable aOt 

MAGNAVOX MONO MONITOR 

613 green, 623 amber, TTL 

MONOGRAPHICS 

1/2 card, parallel printer port 

SEIKOSHA SL80AI 

24-pln dot matrix printer, 135 cps 

SEIKOSHA SP180 

100 cps dot matrix printer, NLQ mode . 

SONY FLOPPY DISKS 

10-pack 5.25" double sided/density . . . 

SONY FLOPPY DISKS 

10-pack 3.5" double sided /density , . , 



'679' 5 
5 319 95 



«89 95 

S249' 5 

S339' 5 

5 549 9S 

M89 95 

«99 95 
5,9995 



,.>99 95 

5 89 95 

'359' 5 

5 139 95 

..., 5 8" 
...»19 95 



MAUI TSN nnncn BV lltll SEND MONEY ORDER, CERTIFIED OR CASHIER'S CHECK, MASTERCARD, VISA or DISCOVER CARD (Include card number, Interbank No, 
HUH IU UKUEK DT MAIL! expiration date and signature.) TO: J&R MUSIC WORLD, 59-50 QUEENS-MIDTOWN EXPRESSWAY, department BMI087, QUEENS, 
NY 11378 DO NOT SEND CASH. Personal and business checks must clear our Authorization Center belore processing. $25 MINIMUM ORDER. Shipping, Handling & Insurance 
Charge Is 5% ot Total Order with a $3.95 minimum. (Canadian Orders Add 15% Shipping, with a $9.95 minimum charge.) For shipments by air, please double these charges. 
SORRY, NO C.O.D.'S. NEW YORK RESIDENTS PLEASE ADD SALES TAX. ALL MERCHANDISE SHIPPED BRAND NEW, FACTORY FRESH, AND 100% GUARANTEED. WE ARE NOT RESPONSIBLE 
FOR ANY TYPOGRAPHICAL ERRORS. 



59-50 Queens-Midtown Expressway, Queens, NY 11378 



v*$C/ 


, 



Circle 142 on Reader Service Card 



OCTOBER 1987 -BYTE 




SYSTEM REVIEWS 



The GRiDLite Laptop 



John Unger 



The GRiDLite Model 1032 lap- 
top differs from GRiD's earlier 
portables, which had rugged 
magnesium cases, custom 
ROM modules, and high price 
tags. The GRiDLite 1032 has a 
lower price ($1750), a high-im- 
pact plastic case, and up to a 
megabyte of ROM. 

This machine's hardware 
represents a "bad news/good 
news" story. The 80C86 
CMOS CPU runs at 4.77 mega- 
hertz, and the standard machine 
has only one 3 l /2-inch floppy 
disk drive, 128K bytes of RAM 
(the 1032 with 640K bytes of 
RAM is $600 extra), and a 3- 
to 4-hour battery lifetime. 
There are no slots for accessory 
boards other than an optional 
modem. 

On the good news side, the 
supertwist LCD display is 
bright and easy to read, and you 
can put a megabyte of ROM in 
this machine. The rest of the 
system is comparable to other 
laptops and includes a parallel 
and a serial port, a port for an 
IBM CGA-compatible color monitor, a 
connector for an external 3^2 -inch disk 
drive, and provision for an internal 1200- 
or 2400-bit-per-second modem. 

A Closer Look 

The GRiDLite 1032 is about the same 
size as other laptops, and its single disk 
drive and small battery keep its weight 
down to 9 pounds. Two sliding latches on 
the top front edge of the case unlock and 
raise the screen. There is sufficient fric- 
tion in the screen's hinges to let you set it 
at any angle between about 60 and 120 
degrees. 

The laptop comes with an internal 
9.6-volt, 1 -ampere-hour nickel-cadmi- 
um battery and an external combination 
power supply and battery charger. 
After only 3 to 4 hours of use, the red 
warning light on the keyboard begins to 



Grid's portable: 



A mixed bag of advanced features 
and mundane hardware 




glow. If you need longer battery life, 
you can either purchase another internal 
battery (changing the battery is a trivial 
task) or buy the optional external nick- 
el-cadmium battery pack, which lasts 
about 10 to 12 hours. 

The GRiDLite's one 720K-byte, 3Vi- 
inch floppy disk drive is located at the 
rear of the right side of the computer, 
which means that you need some clear- 
ance on that side to get the disks in and 
out. A small green LED at the top of the 
keyboard glows when the disk drive is be- 
ing accessed. 

A second external 3 1 /2-inch disk drive 
is available as an option. The disk drive is 
powered through the drive cable that 
plugs into a dedicated DB-25 connector 
on the rear of the computer. This allows 
the drive to be quite small (4U inches 
wide, \ x h inches high, and 6V4 inches 



deep). The cable connector 
adds about 2Vi inches to the 
depth of the drive. 

The system's eight ROM 
sockets can accept either 64K- 
byte or 128K-byte ROM or 
EPROM ICs. Four of the sock- 
ets hold either 28-pin or 32-pin 
ROM chips; the other four 
sockets hold 28-pin GRiDLite 
ROM cartridges. These are 
much easier to install than stan- 
dard ROM packages because 
the pins don't bend as easily. 

My review system came with 
six ROM sockets filled. Three 
sockets contained GRiD's Inte- 
grid DOS shell software. A 
fourth had MS-DOS 3.2's 
COMMAND.COM, hidden 
system files, and a few DOS 
utilities. Crosstalk was loaded 
on two GRiDLite ROM car- 
tridges. The remaining DOS 
utilities and the PC-to-GRiD 
communications program are 
on floppy disks. GRiD offers a 
variety of software on ROM 
chips, at the list price of the 
software plus $50. You get all 
the manuals and the original disks in ad- 
dition to the programs in ROM. 

You can buy the GRiDLite with either 
128K bytes, or, for an additional cost of 
$600, 640K bytes of RAM. You can buy 
either 5 1 2K bytes or 1 024K bytes of addi- 
tional RAM for the 128K-byte GRiD- 
Lite. This RAM is compatible with the 
Lotus/Intel/Microsoft Expanded Mem- 
ory Specification (EMS) and is installed 
as a piggyback module under the floppy 
disk drive. GRiD also includes a RAM 
disk program. Adding memory chips to 
the GRiDLite is not a user option; it must 

continued on page 204 

John Unger (P.O. Box 95, Hamilton, VA 
22068) is a geo physicist for the U.S. gov- 
ernment. He writes graphics software 
and uses computers to study the structure 
of the earth 's crust. 



202 BYTE* OCTOBER 1987 




The Wang LapTop 



Alex Lane 



To the designers of the Wang 
LapTop computer ($3530), 
IBM PC compatibility was a 
secondary consideration. 
Wang's LapTop computer is 
chiefly a Wang-compatible re- 
mote terminal capable of run- 
ning PC software. This Im- 
pound machine features an 8- 
megahertz, 16-bit NEC V30 
CPU, 5 12K bytes of RAM, and 
a 10-megabyte hard disk drive. 
Built into this laptop are a Wang 
communications interface (you 
need the optional Wang Systems 
Networking software), a ther- 
mal-transfer printer, and a re- 
chargeable nickel-cadmium 
battery that supplies power for 
up to 4 hours. 

With the LapTop computer, 
you get a power supply, a roll- 
paper attachment, a roll of 
paper, a set of system disks, a 
carrying case, documentation, 
and a pair of function-key over- 
lays. The case, however, is 
large enough to hold only the 
computer and a few disks. The 
standard software includes MS- 
DOS 3.2, GWBASIC 3.2, and Wang en- 
hancements such as diagnostics, system 
utilities, and Wang's Industry Standard 
PC-emulation mode. 

My review machine had the following 
options: an external numeric keypad, one 
3 ^2 -inch and one 5 V4-inch external flop- 
py disk drive, a 512K-byte memory ex- 
pansion card, and a 2400-bit-per-second 
internal modem. The total cost for the 
Japtop and options was $5998. 

A Hefty Package 

When closed, Wang's LapTop looks 
more like a small portable typewriter 
than a computer. The rear half of the ma- 
chine contains a thermal dot-matrix 
printer, complete with platen knob, 
paper slot, and release lever. 

The LapTop weighs 14^ pounds and 
measures 14 inches wide, 12 inches 



Wang's portable: 

A bridge between Wang and PC 

computing environments 




deep, and 4 inches high. It is one of the 
larger and heavier laptops, and it is defi- 
nitely intended for two-handed use, even 
down to the LCD screen's latches on both 
sides of the machine. 

On the computer's left side is the RS- 
232C serial port and a pair of jacks for 
the telephone line and handset. On the 
right side is the power switch, a jack for 
the numeric keypad, a printer switch, and 
the SCSI port. The rear panel contains 
only an adapter plug for the 21 -volt DC 
power supply. The parallel port is con- 
spicuously absent. (Wang makes only 
serial printers.) 

High Performance 

Unlike the Intel 8088, with 16-bit archi- 
tecture and only eight address lines, the 
LapTop's 8-MHz NEC V30 is a true 16- 
bit microprocessor. The performance 



difference shows in the Lap- 
Top's Sieve and Calculations 
benchmark times. Wang's Lap- 
Top is 20 percent faster than the 
7.16-MHz Toshiba T1100 
Plus, and 60 percent faster than 
the 4.77-MHz IBM PC. 

The LapTop comes with 
512K bytes of RAM, and you 
can install another 512K-byte 
memory module in a dedicated 
slot in the back of the machine. 
Unlike PC clones that are 
limited to 640K bytes of ad- 
dressing, the Wang LapTop can 
use the entire megabyte when 
running Wang software. In 
Wang's Industry Standard PC- 
compatible mode, the DOS 
640K-byte address space can be 
supplemented by a 400K-byte 
RAM disk. 

Wang offers two internal 
Hayes-compatible modems 
(1200- and 2400-bps) that share 
the serial interface with the RS- 
232C serial port; when the 
modem is on, the serial port is 
disabled. You can turn on the 
modem and control its config- 
uration via a Wang utility program and a 
communications menu. 

The LapTop's hard disk drive is fast. 
Its BASIC Disk Write and Disk Read 
times come in at 18.3 seconds and 14.3 
seconds, respectively. The hard disk also 
tolerates transportation well. After I 
commuted with the LapTop for a month, 
the format procedure reported the ap- 
pearance of only one bad sector out of 
over 2400. To conserve battery power, 
you can make the hard disk stop spinning 
when it hasn't been accessed for a time. 
(You specify the time in the CON- 
FIG.SYS file.) 

Although putting a 10-megabyte hard 
continued on page 205 

Alex Lane (do Reynolds, Smith and 
Hills, P.O. Box 4850, Jacksonville, FL 
32201) is a senior software engineer. 



OCTOBER 1987 -BYTE 203 



REVIEW: GRIDLITE LAPTOP 



continued from page 202 

be performed by GRiD technicians. 

The optional 1200-bps internal modem 
furnished with my computer functioned 
perfectly. It was completely Hayes-com- 
patible and worked fine with Crosstalk, 
Qmodem, and ProComm. 

Keyboard 

Squeezing all the functions of a full- 
featured, IBM-type keyboard onto the 
GRiDLite's 71 keys requires some 
compromise in convenience. GRiD 
uses a shift-type Function key in combi- 
nation with other keys to invoke func- 
tions, in the same way as IBM's Shift 
key is used. Some keys can invoke up to 
four functions if they are used with both 
the Function and Shift keys. Twelve 
numbered function keys are arranged in 
a row at the top of the keyboard. You 
can access ten of these directly; the re- 
maining two do double duty as the In- 
sert and Delete keys and have to be 
pressed with the Function key to re- 
spond as function keys. 

A numeric keypad is superimposed 
on keys of the main keyboard, and 
GRiD supplies a utility program to 
make access to them as easy as possible. 
However, the layout is not very conve- 
nient, and I preferred sticking to the 
normal number keys along the top of the 
keyboard. 

This keyboard has full-size keys with a 
good feel, but they give no audible feed- 
back and call for a lighter touch than I am 
used to. Four editing keys at the right end 
of the keyboard act as arrow keys and as 
PageUp, PageDown, Home, and End 
when used with the Function key. This 
layout worked well for me. 

Display 

The supertwist LCD screen is one of the 
GRiDLite's strong points. It gives supe- 
rior contrast without power-hungry back- 
lighting and can be viewed from as much 
as 45 degrees off to the side. ■ 

This screen features blue-black char- 
acters on a yellow-green background. 
The characters are well-formed from an 
8- by 8-pixel matrix, and the standard text 
mode is 80 characters by 25 lines. The 
GRiDLite supports both CGA 320- by 
200-pixel and 640- by 200-pixel graphics 
modes. However, there appear to be only 
three, or possibly four, distinct shades of 
blue-gray in CGA mode. You have to ad- 
just the contrast carefully to discriminate 
between the two darkest shades. 

The screen is Wi inches wide by 6*/2 
inches high, which gives an aspect ratio 
of 1 . 3 to 1 (width to height) . This value is 
the same as that of most CRT monitors, 
which means that graphics figures, such 
continued on page 206 



GRiDLite Model 1032 


Wang LapTop 




Company 


Company 




GRiD Systems Corp. 


Wang Laboratories Inc. 




47211 Lakeview Blvd. 


One Industrial Ave. 




Fremont, CA 94538 


Lowell, MA 01851 




(415)656-4700 


(617)459-5000 




Size 


Size 




1 1 y 5 by 13y 3 by 2% inches; 


14 by 12 by 4 inches; 14 1 /4 pounds 




9 pounds 


Components 




Components 


Processor: 8-MHz NEC V30 




Processor: 4.77-MHz 80C86 


Memory: 512K bytes of RAM 




Memory: 1 28K bytes of RAM, 


standard, expandable to 1 megabyte 




standard, expandable to 640K bytes on 


Mass storage: 1 0-megabyte internal 




system board; up to 1 megabyte of 


hard disk drive; optional external 3 1 /2- and 




optional internal EMS RAM; up to 1 


5 1 /4-inch floppy disk drives 




megabyte of ROM 


Display: 80-column by 25-row 




Mass storage: One 720K-byte 


supertwist LCD, emulates IBM CGA in 




double-sided, double-density 3 1 /2-inch 


monochrome; screen size: 9 inches 




floppy disk drive; optional second 


by 4 inches 




3 1 /2-inch floppy disk drive 


Keyboard: 90 keys, including 16 




Display: LCD supertwist, 25 lines by 


function keys; optional numeric keypad 




80 columns; 320- by 200-pixel color 


I/O interfaces: Optional 2400-bps 




graphics or 640- by 200-pixel 


asynchronous or synchronous/ 




monochrome graphics; screen size: 


asynchronous modem; RS-232C 




8 1 /2 by 6 1 /2 inches 


serial port; SCSI port 




Keyboard: 71 keys, including 12 


Other: Built-in thermal printer; 




function keys; special editing key cluster; 


rechargeable nickel-cadmium batteries 




embedded numeric keypad 


(12-volt sub-C pack); approximate 




selectable on ASCII keyboard 


lifetime (with printer and modem on): 




I/O interfaces: RS-232C serial port; 


4 hours 




Centronics-compatible parallel port; 






external floppy disk drive port for 


Software 




optional 3 1 /2-inch disk drive; RGB video 


Proprietary Wang; MS-DOS 3.2; 




port (IBM PC-compatible); standard 


GWBASIC 3.2 




telephone jack for internal modem 






Other: Internal nickel-cadmium 


Options 




rechargeable; approximate lifetime, 3 to 4 


3 1 /2-inch 720K-byte external floppy 




hours 


disk drive: $51 8 
5 1 /4-inch 360K-byte external floppy 




Software 


disk drive: $365 




MS-DOS 3.2, GWBASIC 3.2; file- 


Numeric keypad: $95 




transfer and other utilities 


512K-byte RAM expansion: $695 
1200-bps modem: $425 




Options 


2400-bps modem: $795 




640K-byte RAM expansion: $600 


Wang Systems Networking software: 




External 3 1 /2-inch floppy disk drive: 


$400 




$295 


Wang Integrated Word Processing: 




External nickel-cadmium battery 


$385 




pack: $175 


Wang Asynchronous Communications 




512K-byteEMSRAM:$295 


software: $100 




1024K-byteEMSRAM:$395 


Car lighter attachment: $25 





Hayes-compatible 1200-bps 

modem: $395 
Hayes-compatible 2400-bps 

modem: $595 

Documentation 

46-page GRiDLite Owners Guide 
(includes index); 24-page Using MS-DOS 
and the GRiDLite; 290-page MS-DOS 
3,2 Reference Manual (includes index); 
423-page GWBASIC User's Guide 
(includes index) 

Price 

Base Model 1032 with 128K bytes of 
RAM: $1750 



Documentation 

Fundamentals Guide; 
Troubleshooting Guide; Modem User's 
Guide; Asynch User's Guide; DOS 
Command Processor Guide; Printer 
Software Administration Guide; 
Installation Instructions; BASIC Guide; PC 
User's Guide 

Price 

System unit: $3530 (includes system 
software with GWBASIC, MS-DOS 3.2, 
carrying case, roll-paper attachment, 
roll of paper, power supply, battery, and 
function-key overlays) 



204 BYTE* OCTOBER 1987 



REVIEW: WANG LAPTOP 



DISK ACCESS IN BASIC (IN SECONDS) 
WRITE READ 

20 40 60 80 100 20 40 60 80 100 







| 








I 




■MHMM 


8 


| 


i i 



m 






BASIC PERFORMANCE (IN SECONDS) 
SIEVE CALCULATIONS 

50 100 150 200 250 50 100 150 200 250 



23 



SYSTEM UTILITIES (IN SECONDS) 
40K FORMAT/DISK COPY 40K FILE COPY 

10 20 30 40 50 10 20 30 40 50 



1 








^^^9.0 








N/A 








■■■■■19.6 
1 



















■EOT 5.6 


.6 









SPREADSHEET (IN SECONDS) 



LOAD 

5 



10 15 20 25 























2,3 


IM 6.8 
■■■8.1 







RECALCULATE 

5 10 15 20 25 




GRIDLITE «» WANG - IBM PC 



Thegraphsfor Disk Access in BASIC show how long it takes to write and then read a 64K- 
byte sequential text file to a blank, formatted floppy disk. (For the program listings, see 
BYTE's Inside the IBM PCs, Fall 1 985, page 1 95.) The Sieve graph shows how long it 
takes to run one iteration of the Sieve of Eratosthenes prime-number benchmark. The 
Calculations graph shows how long it takes to do 10,000 multiplication and 10,000 
division operations using single-precision numbers. The System Utilities graphs show 
how long it takes to format and copy a 40K-byte file using the system utilities. The 
Spreadsheet graphs show how long it takes to load and recalculate a 25- by 25-cell 
spreadsheet in which each cell equals 1.001 times the cell to its left. Tests on the 
GRiDLite were done using MS-DOS 3.2, GWBASIC 3.2, and Multiplan 1.06. The 
GRiDLite had one double-sided, double-density 720K-byte internal floppy disk drive, 
one external 720K-byte floppy disk drive, and 640K bytes of RAM. Tests on the Wang 
LapTop were done using Wang GWBASIC 3.2, Wang's Industry Standard DOS, and 
Multiplan 1.06. The LapTop tested had the 10-megabyte internal hard disk drive and 
360K-byte and 720K-byte floppy disk d rives. Test times for both of the Wang's floppy disk 
drives were identical, so the charts indicate only one figure for both drives. 



continued from page 203 
disk drive inside the LapTop is laudable, 
not having a built-in floppy disk drive is 
annoying. If you travel and must carry 
software and data, you'll soon tire of lug- 
ging a disk drive about in a separate case. 

The LapTop' s external disk drives 
communicate via the SCSI port, which 
lets you connect up to six other disk 
drives or peripheral devices. The disad- 
vantage of SCSI is a lack of compatibility 
with some PC software. The Norton Util- 
ities is a notable example: The software 
expects to deal with a standard PC disk 
controller. 

The LapTop's 3 1 /2-inch disk drive can 
run on rechargeable batteries, or you can 
connect it and the computer to the power 
supply via a T connection. The 5 U-inch 
disk drive uses only AC power and comes 
with a connecting cable to attach it either 
to the system unit or to the back of the 
3y2-inch disk drive. The 3 l /2-inch drive 
uses 720K-byte disks, so you can't do a 
DOS DISKC0PY to or from the 5 M -inch 
disk drive. 

The performance of both external disk 
drives compares favorably to the drives 
installed in other laptops. The Read 
(29.66 seconds) and Write (31 seconds) 
benchmark results of both of the Lap- 
Top's external disk drives are as fast as 
the fastest disk drive (Toshiba T1100 
Plus— Read 30 seconds, Write 31 sec- 
onds) of the laptops reviewed in "Four 
Portable Computers" by John Unger in 
the February BYTE. 

Keys and Pixels 

The LapTop's keyboard, like other Wang 
keyboards, resembles a pre-PC type- 
writer. Sixteen function keys are ar- 
ranged horizontally above the full-size 
QWERTY keyboard. These keys, along 
with the shift key, give you 32 functions. 
The keyboard is comfortable and easy to 
adapt to, with one major exception: The 
Control key is small and is located in a 
cramped position to the left of the space 
bar. DOS programs like XyWrite, which 
use control-key sequences, are difficult 
to use with this keyboard. Also, the gray 
plus and gray minus keys are found only 
on the separate numeric keypad, making 
it difficult or impractical to use packages 
like Framework without the keypad. 

If you input a lot of numeric data, I 
strongly suggest that you obtain the nu- 
meric keypad. The keypad's functions 
are toggled by the F16 key, which dou- 
bles as the Num Lock key. When not in 
Num Lock mode, the keypad's functions 
are the same as the IBM PC's numeric 
keypad. 

The LapTop's 9- by 4-inch screen is an 

80-column by 25-line supertwist LCD 

continued on page 207 



OCTOBER 1987 -BYTE 205 



8087 Potpourri 



COPROCESSORS 

8087 5 MHz $99 

For the IBM PC, XT and compatibles 

8087-2 8 MHz $154 

For Wang, AT&T, DeskPro, NEC, Leading Edge 

80287-3 5 MHz $159 

For the IBM PC AT and 286 compatibles 

80287-6 6 MHz $179 

For the 8 MHz AT and compatibles 

80287-88MHZ $259 

For the 8 MHz 80286 accelerator cards and 
Compaq 386 

80287-1010 MHz $395 

80387-16 16 MHz $495 

INTEL INBOARD $1250 

All MicroWay 8087s include a one year warranty, 
complete MicroWay Test Program and installation 
instructions. 

64K DRAM 150ns $10 

256K DRAM 150ns $29 

PC-PAL Programmer $395 

287Turbo™- 10/12 

Boostyour80287 speed with 287Turbo 
and AT speed with 287TurboPlus. 
1 00% software compatible. See our full 
color ad on page 134 for details. 



REVIEW: GRIDLITE LAPTOP 




287Turbo 

10 MHz $450 

12 MHz $550 

287TurboPlus 

10 MHz $549 

12 MHz $629 



PC Magazine "Editor's Choice" 

8087 SOFTWARE 

MICROSOFT QUICK BASIC $79 

87BASIC COMPILER PATCH $150 

87BASIC/INLINE $200 

87MACRO/DEBUG $199 

MICROSOFT FORTRAN V4 $299 

RM FORTRAN $399 

LAHE Y FORTRAN F77L $477 

GRAFMATIC Graphics $125 

MS or LATTICE C CALL 

STSC APL*PLUS/PC $450 

STSC STATGRAPHICS $675 

87SFL Scientific Functions $250 

87FFT $200 

OBJ --ASM $200 

PowerDialer for 1-2-3 $79 

EPSILON EDITOR $169 

Call for technical information 
and our complete catalog. 



Micro, 

Way ,e? 



O P.O. Box 79 
Kingston, Mass. 
02364 USA 
(617)746-7341 



continued from page 204 

as pie charts, will look the same when 

displayed on the GRiDLite's screen. 

Specialized Software 

MS-DOS treats the files residing in the 
special ROM packages as though they are 
on the A: drive. One peculiarity of this 
system is that you can have two identical 
files with the same name in a directory- 
one in ROM and the other on the disk. If 
you execute a program that exists both in 
ROM and on the disk, the system will run 
the version from the disk. The CHKDSK 
command adds the amount of ROM to the 
amount of disk space on drive A: . 

The MS-DOS 3.2 operating system 
provided with the GRiDLite includes 
specialized utility programs and unique 
versions of standard MS-DOS programs, 
designed specifically for this machine. 
The MODE command is a good example. 
With the GRiDLite, you can use this 
command to turn on power to the modem 
or the serial port, to switch the COM 1 : 
device between the modem and the serial 
port, or to change the the size of the cur- 
sor. GRiD's version of MS-DOS also in- 
cludes an extremely useful HELP utility 
program that supplies information about 
using DOS commands and functions. 

ROM-based software can be beneficial 
on a laptop. For example, in my review 
computer, the operating system kernel 
was in ROM; this meant I saved disk 
space because I never had to format a disk 
with the /S option to include the MS-DOS 
system files and COMMAND.COM. In 
addition, the machine booted much faster 
from a cold start. If you need them, you 
can simply have AUTOEXEC.BAT and 
CONFIG.SYS files on the disk in the A: 
drive. The convenience of having a com- 
munications program like Crosstalk in 
ROM is twofold: First, it's always there 
when you want it; and second, it doesn't 
take up any disk space or RAM until you 
need it. 

The GRiDLite uses Phoenix Corp.'s 
highly IBM PC-compatible ROM BIOS 
2. 03 . 1 had no trouble running any of my 
IBM software on the laptop. 

Performance 

The GRiDLite's performance is adequate 
but not outstanding. The main reasons it 
does better than the IBM PC in the bench- 
marks are its 80C86 chip, versus the 
8088 in the IBM PC, and the improve- 
ments in version 3.20 of GWBASIC. The 
GRiDLite outperforms the Toshiba 
Tl 100 Plus when the Toshiba is running 
in its 4.77-MHz mode, and in disk I/O 
operations even when the T 1100 Plus is 
running at 7.16 MHz. The figures are 
impressive. The GRiDLite did the Sieve 
benchmark in 138 seconds; the Toshiba 



T1100 Plus at 4.77 MHz took 142 sec- 
onds. The GRiDLite did the 40K-byte 
File Copy benchmark in 8.2 seconds; the 
T1100 Plus (at high speed) took 11.4 
seconds. 

Because the GRiDLite lacks an external 
5 l A -inch disk drive, there are two options 
for transferring files and programs between 
a PC and the GRiDLite; both use a null 
modem cable between the serial ports of 
the PC and the laptop. The first and most 
direct method simply uses a communica- 
tions program, such as PC-Talk or Cross- 
talk, running on each machine, to upload 
and download files from one machine to 
the other. The second method, and the one 
GRiD recommends, involves using 
GRiD's PC master /slave software (in- 
cluded with the DOS utilities) to set up one 
of the computers as a master node and the 
other as a slave. To the master micro, the 
slave machine looks like a logical disk 
drive with a normal letter designation 
(e.g., E:). You can then issue DOS com- 
mands, such as COPY and DIR, from the 
master machine to examine and transfer 
files from one machine to the other. 
Don't expect high-speed transfer rates 
from either of these methods; 9600 bps 
from the serial port is tops. 

Pros and Cons 

The GRiDLite Model 1032 is a curious 
mixture of advanced, specialized features 
and mundane hardware. Its 4.77-MHz 
clock rate clearly compromises its per- 
formance, and its short battery life hurts 
its usefulness as a truly portable laptop 
computer. 

Moreover, the 90-day warranty period 
for the computer is short compared with 
the one-year warranties of the IBM, Ze- 
nith, and Toshiba laptops. GRiD will sell 
you an extended warranty for $180 when 
you buy the machine; an expanded war- 
ranty, which includes a loaner while your 
machine is being fixed, costs $540. The 
user pays the initial shipping cost, and 
GRiD pays the return freight. 

On the other hand, having a megabyte of 
applications software at your fingertips in 
ROM is clearly an advantage for any porta- 
ble computer, and the GRiDLite's LCD 
display is one of the best I have used. 

However, I would not recommend the 
machine for someone who is looking for 
a laptop capable of doing desktop-like 
computing and who needs higher perfor- 
mance and expansion capability. Com- 
pared with the latest versions of the 
Toshiba T1100 Plus ($2099 with 640K 
bytes of RAM), the Zenith Z-181 ($2399 
with 640K bytes of RAM), and the NEC 
MultiSpeed ($2195 with 640K bytes of 
RAM and two drives), the GRiDLite's 
performance is not up to par; it has fewer 
features; and it is not as good a value. ■ 



206 BYTE- OCTOBER 1987 



REVIEW: WANG LAPTOP 



continued from page 205 
that provides a 7-to-l contrast ratio. The 
screen resolution is either 320 by 200 
pixels or 640 by 200 pixels in CGA mode. 
A jack in the side of the screen lets you 
remove the LCD screen and connect an 
external color monitor. The screen pivots 
easily to any position to take advantage of 
available lighting, since supertwist 
screens generate no light of their own. 

Printer 

The integral thermal dot-matrix printer 
works with either thermally sensitive 
paper or with a ribbon cartridge and nor- 
mal printer paper. The printer-control 
switch turns the printer on and off and 
also adjusts the darkness of the print. 

The LapTop' s printer is slow (18 char- 
acters per second). A 64-character by 55- 
line page of text took about 6 Vi minutes to 
print in both medium and dark print 
modes. The ribbon cartridge gets used up 
rather quickly— I'd estimate that about 20 
single-spaced pages can be printed from 
one cartridge. 

The printer uses either single sheets or 
continuous-form paper, but since the 
printer has no tractor mechanism, contin- 
uous-form media drifts a bit. Two dedi- 
cated keyboard keys retract or advance 
the platen to simplify paper loading and 
unloading. The machine comes with one 
roll of paper and an attachment that hangs 
from the back of the computer. The at- 
tachment folds up, but it and the paper do 
not store gracefully. 

Software 

The unit I reviewed came with seven 5 l A- 
inch disks: four disks (1.3 megabytes) of 
system files including DOS 3.2 and 
GWBASIC 3.2, one diagnostics disk, a 
printer-support disk, and an installation 
disk. Wang's optional Integrated Word 
Processing and Asynchronous Commu- 
nications packages are on two 3^2 -inch 
disks. 

When you power up, the CON- 
FIG.SYS file boots the machine into 
Wang mode and asks if you want to 
change the time and date. Pressing the 
EXEC key produces Wang's main sys- 
tem menu. You can now go forward or 
backward through the menus by using 
the EXEC and CANCEL keys, 
respectiveJy. 

Selecting DOS Command Processor 
from the main system menu spawns an 
offspring session of DOS 3.2, identified 
with the prompt [Wang] C>. At this 
prompt, you can run the SYSMODE util- 
ity to switch the machine from Wang 
mode to what Wang calls "Industry Stan- 
dard" mode (i.e. , PC mode). If you don't 
run SYSMODE first, attempts to load 
and run most DOS programs will cause 



the machine to stop working. I ran 
Framework II, WordStar 3.3, and Turbo 
Prolog 1.1 with no problems. A list of 
"tried-and-found-true" DOS programs 
was included with the computer, and the 
documentation acknowledges that not all 
PC-compatible programs will run. 

Wang's Integrated Word Processing is 
functionally the same as that used on the 
Wang VS and PC systems. The Asyn- 
chronous Communications software 
gives you telephone-line communications 
at 300 to 2400 bps, and direct connection 
to minicomputers and mainframes at 
9600 bps. 

Technical Support 

The LapTop comes with an impressive 
array of documentation: six small three- 
ring notebooks that cover everything 
from taking the system out of the packing 
boxes to the nuances of the system soft- 
ware. On a practical level, the only prob- 
lem with having so much documentation 
is knowing where to find what, and what 
to take with you when you travel. 

As a Wang customer, you are assigned 
a customer number, which you should 
have handy when you call. You can call 
the toll-free number and directly punch in 
the type of support you are calling for if 
you have Touch-tone service. Once con- 
nected, you are assigned a tracking num- 
ber for future reference should your prob- 
lem not be resolved immediately. 

Despite not having a customer num- 
ber, I was not denied support. After a 
mild interrogation (i.e., name, company, 
machine serial number), I was given a 
temporary number. Once past the gates, I 
found Wang's technical-support people 
friendly and competent. 

Form and Function 

When you consider it against the back- 
drop of PC compatibility, the Wang Lap- 
Top computer scores in the mediocre 
range. It lacks appeal to PC users because 
of its limited DOS compatibility and un- 
usual keyboard, which cause difficulty 
with some DOS-based software. From a 
performance standpoint, I am impressed 
with the speed of both its processor and 
its disk drives. I transported the LapTop 
daily to a real office environment to do 
real work, and had no problems. Also on 
the plus side are the internal 10-megabyte 
hard disk drive and the SCSI port. On the 
minus side, however, I missed having a 
built-in parallel port and an internal 3Vi- 
inch floppy disk drive. 

If your office uses Wang equipment 
and is considering buying laptops, you 
should definitely give this machine a 
careful once-over. If what bothered me 
doesn't bother you, this LapTop may be 
just the ticket. ■ 




For DOT MATRIX and 
Laser Printers 

(Epson/IBM/Okidata/ LaserJet) 

Labels for shelves, bins, inventory 
Text readable up to 50 ft. 
- Bar Codes: I 2 of 5. UPC/ EAN 
MIL-STD;AIAG.Code39 
Any size label • Flexible format 
Color options • Reversals • Fast 
File input • Menu driven • $279 
Other bar code programs from $49. 
Not Copy Protected! 

30 Day Money Back Guarantee! 

/0RTHINGT0N 



DATA SOLUTIONS 

417-A Ingalls Street 
Santa Cruz, California 95060 

408/458-9938 



Bar Cade Readers 

for PC, XT, AT, PS/2 




RS-232 and PS/2 model $39! 

PC/XT/ AT Internal/External ... $38: 

• Rugged Metal Pen 

• Reads I 2 of 5, UPC/EAN 
Codabar, Code 39, etc. 

• Attaches as 2nd Keyboard 

• No software needed to add bar 
code reading to your system 

30 Day Money Back Guarantee! 

70RTHINGT0N 



DATA SOLUTIONS 

417-A Ingalls Street, 
Santa Cruz, California 95060 

408/458-9938 



OCTOBER 1987 -BYTE 207 



//fllllllllWl 





GRAPHICS TOOLS FOR SOFTWARE DEVELOPERS 



What is HALO? 

HALO is a device independent library 
of 190 graphics subroutines. It is 
compatible with 17 programming 
languages and over 110 graphics 
hardware devices for the IBM PC, 
PS/2 and compatibles. It provides the 
software designer w^th the richest 
environment of graphics functions; the 
programmer with reliable and well- 
documented tools; and DP managers 
with continuity of user interface and 
database format. 

! 

Who uses HALO? 

Since its introduction in 1982, HALO 
has developed an installed base of 
60,000+ end-users,! hundreds of site- 
licensed corporations, government 
agencies, universities, and national 
laboratories, and most importantly, 
a family of over 150 Independent Soft- 
ware Vendors (ISVs) who market ap- 
plications written with HALO. 



What about 
performance? 

Our ISVs are the best proof 

of HALO's performance. 

They use HALO because: 

—building their own library 
costs too much 

—HALO outperforms the 
rest 

—HALO is easier to pro- 
gram 

—it supports a wider range 
of devices for a bigger 
potential market 

—new device drivers are 
added quarterly to prevent 
software obsolescence 
and reduce maintenance 



HALO 

infinite possibilities in 
graphics and imaging 



How much does it cost? 

A single license for HALO costs 
$300.00 and includes all device drivers 
and your choice of one compiler 
binding. 

HALO is fully documented, includes 
LearnHALO (an interactive tutorial) 
and free 800# technical support. 

If you need high performance graphics 
development software that provides a 
migration path to OS / 2 and other 
future technology, follow the industry 
leaders^call (800) 426-HALO. 



media cybernetics 

8484 Georgia Ave. 
Silver Spring, MD 20910 
(800) 426-HALO 
(301)495-3305 telex 322014 



HALO is a registered trademark of Media Cybernetics, Inc. 
IBM PC, and PS/2 are registered trademarks of Internationa 1 
Business Machines Corp. 




United States □ One Year $22 □ 2 Years S40 
Canada/Mexico □ One Year U.S. S25 
Europe □ $69 {air delivery), U.S. Funds enclosed 

D $37 (surface mail), U.S. Funds enclosed 

□ BILL ME. If I'm not completely satisfied with my first copy, 
I'll simply write "cancel" across your invoice, mail it back, and 
my subscription will be cancelled. 

□ Check Enclosed □ Bill VISA □ Bill Mastercard 
Please allow 6-8 weeks for processing your subscription. 



47ATSU 



Address . 



City/State/Zip 
Acct.# 



Expires_ 



Signature 



finlS 




United States □ One Year $22 D 2 Years $40 
Canada/Mexico □ One Year U.S. $25 
Europe □ $69 (air delivery), U.S. Funds enclosed 

□ $37 (surface mail), U.S. Funds enclosed 

□ BILL ME. If I'm not completely satisfied with my first copy, 
I'll simply write "cancel" across your invoice, mail it back, and 
my subscription will be cancelled. 

□ Check Enclosed □ Bill VISA □ Bill Mastercard 
Please allow 6-8 weeks for processing your subscription. 







Namp 


47 ATS U 


Addrps?; 


City/StatP/7ip 


Arrt# 


Ex Dire s 


Sianature 



©1 



BUSINESS REPLY MAIL 

FIRST CLASS MAIL PERMIT NO. 201 PISCATAWAY, NJ 



POSTAGE WILL BE PAID BY ADDRESSEE 



BITE 



Subscription Dept. 

P.O. Box 6807 

Piscataway, NJ 08855-9940 



NO POSTAGE 

NECESSARY 

IF MAILED 

IN THE 

UNITED STATES 



BUSINESS REPLY MAIL 

FIRST CLASS MAIL PERMIT NO. 201 PISCATAWAY, NJ 



POSTAGE WILL BE PAID BY ADDRESSEE 



BYTE 



Subscription Dept. 

P.O. Box 6807 

Piscataway, NJ 08855-9940 



NO POSTAGE 

NECESSARY 

IF MAILED 

IN THE 

UNITED STATES 



HARDWARE REVIEWS 




The Definicon DSI-780 



Dave Thomas 



Are you frustrated sharing your 
VAX with 10 other scientists? 
Do you wish you could run your 
finite-element analysis in your 
engineering office, rather than 
at that expensive service 
bureau? Do you need a develop- 
ment machine for both Intel and 
Motorola CPUs? Then the DSI- 
780 may be the PC coprocessor 
you need. 

The DSI-780 from Definicon 
Systems runs in the IBM XT, 
AT, and true compatibles. The 
board uses the Motorola 
MC68020 CPU and the 68881 
floating-point coprocessor. 
Multitasking software provided 
by Definicon allows both an 
AT-based application and a 
780-based application to exe- 
cute concurrently. 

For most 68000 applications, 
the Definicon board is more 
than adequate. However, it does 
not provide the full Unix envi- 
ronment that some developers 
require. 



On the Board 

The DSI-780's MC68020 CPU and the 
MC6888 1 floating-point unit (FPU) run 
at 16.67 megahertz with no wait states 
(20- and 25-MHz models are also avail- 
able). Definicon offers boards in various 
configurations ranging from $1000 for 
the DSI-020 (12.5 MHz with 1 megabyte 
of RAM) to $12,000 for the 25-MHz, 16- 
megabyte RAM model. (The version of 
the board that I reviewed had 4 megabytes 
of 120-nanosecond RAM). The board 
has an expansion socket for a promised 
Motorola memory-management-unit 
chip. Additionally, the DSI-780 is 
equipped with a 2681 dual universal 
asynchronous receiver/transmitter 
(DUART), which drives two RS-232C 
ports, accessible via DB-9 and DB-25 
connectors at the rear of the board. 

Software for the board includes both 
system software and compilers. System 



A 68020-based 



XT/ AT coprocessor for scientific and 
engineering applications 




software consists of a hardware diagnos- 
tic, a minimal assembler, two loaders, 
and source-level debugger. Definicon of- 
fers C, FORTRAN, and Pascal com- 
pilers, as well as a BASIC interpreter/ 
compiler and two assemblers (all at addi- 
tional cost— see page 212 for details). 

The Definicon board's communication 
area resides at address D000:0000 of the 
IBM AT and at address E000:0000 of the 
IBM XT. This area is a 64K-byte seg- 
ment through which the board and DOS 
talk to one another using three special 
ports: the control port (at address 2A0 
hexadecimal), the page-select port (2B0), 
and the secondary page-select port 
(2B8). The secondary page-select port is 
used on the DSI-780 boards with more 
than 4 megabytes of RAM. Software run- 
ning on the XT/ AT uses these ports to 
map the 64K-byte memory window onto 



any page in the 4-megabyte ad- 
dress space of the 780. This ar- 
chitecture facilitates the devel- 
opment of cooperative multi- 
processing applications. 

I reviewed the DSI-780 board 
installed in a Packard Bell AT- 
compatible computer. The Pack- 
ard Bell was running at 8 MHz 
with one wait state, and I used 
MS-DOS 3.1 as the operating 
system. The machine had an 
80287 FPU (also running at 8 
MHz), a 1.2-megabyte floppy 
disk drive, and no hard disk 
drive. I ran all test programs 
from a 4-megabyte RAM disk 
(unless stated otherwise), using 
two 2-megabyte JRAM cards 
from Tall Tree Systems, and 
their supporting software. I had 
no difficulty installing the board 
using the instructions provided. 

The DSI resident MS-DOS 
interface lets the board commu- 
nicate with the operating system 
using either polled or interrupt 
mode. (I used interrupt mode 
for my tests.) 



Software 

The DSI-780 I reviewed came with De- 
finicon system software and Silicon Val- 
ley Software's (SVS) B ASIC-Plus inter- 
preter and C, Pascal, and FORTRAN 
compilers (all were version 2.6). Each 
compiler package consists of three disks 
containing the Definicon system soft- 
ware, SVS utilities, and the associated 
SVS compiler. The system disk contains 
several programs to test that the DSI-780 
board's components are functioning 
properly, as well as a monitor/debugger 

continued 

Dave Thomas (School of Computer Sci- 
ence, Carleton University, Ottawa, On- 
tario, Canada K1S 5B6) is an associate 
professor of computer science at Carleton 
University and is a moderator of the BIX 
Smalltalk conference. 



Circle 309 on Reader Service Card 



OCTOBER 1987 -BYTE 209 



REVIEW: DEFINICON DSI-780 



and the loader program. The SVS utilities 
disk contains the error message files for 
all three compilers, an object code gener- 
ator, an assembler, and a linker. 

The loader program is responsible for 
loading files from the host computer into 
the DSI-780 and for regulating communi- 
cation and program control between the 
host and the DSI-780. The loader manages 
the communications memory area and 
ports and performs the following func- 
tions: It resets and initializes the DSI 
board; determines the presence and type of 
DSI board; loads the operating system into 
the DSI board; resets and transfers control 
to the DSI board; and services requests 
from the DSI board until termination. 

When the DSI-780 requires service, 
the loader obtains the service-request in- 
formation by looking in the interproces- 
sor communication area. From this infor- 
mation, the loader determines the 



requested service— writing a character to 
the screen, reading information from the 
disk, and so on— and begins work on it. 
When the loader has finished the re- 
quested operation, it resets a specific 
memory location (referred to as the 
8086SVC location). While the host CPU 
is performing its task, the DSI-780 con- 
tinues with its own operations. However, 
if the DSI-780 requires another service 
and the host CPU is not finished, the 780 
will wait for the loader to reset the 
8086SVC location. 

The Definicon loader is actually a 
DOS shell that allows software executing 
in the DSI-780 to issue DOS and BIOS 
calls. I was very impressed by the loader, 
which cleverly intercepts the calls and 
forwards them to the AT via a TSR (ter- 
minate-and-stay-resident) program. The 
DSI loader makes performing a compila- 
tion and executing the result on the DSI- 



780 as natural as doing it on the host PC. 
Since the DSI-780 uses DOS for all file 
and screen I/O, there is no need for spe- 
cial file formats or terminal I/O. Also, if 
you install the DSI multitasking loader, 
you can compile on the DSI-780 and con- 
tinue working on your PC. 

All three compilers performed well. 
They provide clear, concise error mes- 
sages for compilation errors, and they let 
you choose to abort or continue the com- 
pilation when an error occurs. 

The SVS compilers adhere closely to 
the standards for their respective lan- 
guages. FORTRAN-77, for example, in- 
sists that you arrange the declarations in a 
particular order. Pascal accepts few, if 
any, of the extensions found in some Pas- 
cal compilers available for PC-DOS. 
Such compliance is fine if you're devel- 
oping new code, but it's very frustrating 

continued 





TheDJ 

T ast spring, Definicon Systems an- The 2681 DUAI 
-L/nounced the DSI-750 + , which on the DSI-780, is 
supersedes the DSI-780. Although the 750 +. If you ord 
750+ represents a redesign of the 780 the DUART in pla 
board layout, for all intents and purposes uration I reviewed; 
it operates identically to the 780. Many ate the board in po 
of its features are identical to those of the interrupt mode th 
780: Both are full-size AT-style boards, rupts the 68020 vi 
the installation is the same, you can run neers at Definicoi 
the same software (I used the same exe- was little dif fere 
cutable file for benchmarking both between the inten 
boards), and expansion connectors are munication protoc 
pin-compatible. I compared bench 
It is interesting to note, however, that terrupt-mode DS] 
although the 750 + operates at 1 6 MHz, mode DSI-750+ , 
it uses select 12-MHz components. difference betweer 
(You can jumper it for 12-MHz opera- Table A shows t 
tion if you're skittish about running dard BYTE BASI 
components beyond their rated speeds, executed under S\ 
but I ran the board at 16 MHz with no DSI-750 + . These 
problems . ) to those obtained c 


51 

IT, 

op 
er 1 
ce ( 
,th 
lied 
e h 
atl 
i in 
nee 
•upt 
ols, 
mai 
-78 
[fo 
ith( 
he 
C t 
'SI 

f ig 
)na 


-750+ 

which is standard ferences are negligible. Next, I ran the C 
tional on the DSI- benchmarks that BYTE has been using 
he board without in the New Generation articles (see table 
this is the config- B). Again, the DSI-750+ turns in times 
en you must oper- so close to those of the DSI-780 that you 
mode, because in really can't tell the two apart, 
ost actually inter- If there's so little difference, why 
le DUART. Engi- bother producing a new product? Engi- 
dicated that there neers at Definicon told me that the lay- 
in performance out and components of the new board 
and polled com- make it easier for Definicon to manufec- 
and in feet, when ture it. Also, I noticed only one back-of- 
k results of an in- the-board jumper fix on the 750 + , as 
with a polled- opposed to several on the back of the 
and no discernible 780, so Definicon has probably cleaned 
im. up problems in the circuit layout. If 
results of the stan- you're really concerned about the 12- 
)enchmarks when MHz parts of the 750+ , Definicon still 
lASIC-Plus on the manufactures the DSI-780 for people 
ures are very close who believe that only 16-MHz CPUs 
DSI-780; the dif- should run at 16 MHz. 




Table A: Standard BASIC BYTE benchmarks for 
the DSI-750+. The board tested was plugged into an 
IBM PC AT running at 8 MHz. All times are in 
seconds. 

DSI-750+ DSI-750+ IBM PC AT 
(16 MHz) (12 MHz) (8 MHz) 


Table B: The C benchmarks for the DSI-750+. 
These benchmark programs are described in "A Closer 
Look " by Richard Grehan in the September BYTE. Ml 
limes are in seconds, except for the Dhrystone, which is 
in iterations per second. 

DSI-750+ DSI-750 + 
(12 MHz) (16 MHz) 




Read 25 25 24 
Write 27 27 26 
Sieve 6 8 80 
Calculations 4 6 27 


Dhrystone 2428 3200 
Fibonacci 64.67 48.58 
Float 2.98 2.22 
Savage 7.45 5.63 
Sieve 6.45 4.82 
Sort 9.13 6.91 







210 BYTE- OCTOBER 1987 



Aztec C ... The Best C 

Frees the genius inyou" 



You've got a great idea . . . 

. . . you're ready to write your programs. 

You don't want to be sidetracked by all the paper- 
work. With Manx Aztec C and the ingenious make 
function, your creative processes won't get bogged 
down in program administration and housekeeping. 
Manx Aztec C has the most sophisticated, hardwork- 
ing program administrator available to you. Once 
you've described your project, adding new features or 
enhancements is simple. You never have to concern 
yourself with the repetitive, tedious task of rebuild- 
ing your systems. 

The development process moves quickly. Com- 
piles, assemblies, link edits ... all finish in record 
time. 

Manx Aztec C is the fastest, most efficient C de- 
velopment system in the industry. Benchmarks show 
it . . . reviews commend it . . . users praise it. 

You're ready to test the program. You're ahead of 
schedule. The Manx Aztec C Source Level Debugger 
shows you the exact C language statement giving you 
a problem. You fix the problem quickly . . . you're 
still ahead of schedule. 

You've got some time for fine tuning. 
The Manx Aztec C Profiler examines 
your program, tells you where the slow 
spots are and validates your test pro- 
cedure. A few changes and it's exactly 
what you wanted. 

You've made it! 

Aztec C is available for MS-DOS/PC 
DOS. Call for details on Macintosh, 
Amiga, Apple II, CP/M-80, 
CP/M-86, TRS-80, ROM and others. 

To order, or, for information 

Call Today 

1-800-221-0440 1 

In NJ or outside the USA call 
(201)5422121 

30-day satisfaction guarantee. Special Discounts 
are available to professors, students, independent 
developers, and on a "trade-in" basis. Site licenses. 



" . . . a superb linker, a profiler, an assembler, 
and a set of development utilities are only the be- 
ginning of this package . . . performed admirably 
on the benchmarks, with short compile times and 
the best link times in this review . . . includes the 
most professional make utility . . . documentation 
is clear and complete. There is no doubt that this 
is a valuable and powerful programming en- 
vironment.'' Computer Languages Feb. '86 

" . . . execution times are very good, close to the 
best on most tests ..." PC Tech Journal Jan. '86 

" Easily one of the fastest compilers overall . . . 
library provides a lot of flexibility . . . generates 
small .EXE files." Dr. Dobbs Journal Aug. '85 



C'Prime (Compiler, Assembler, Linker) $ 99. 

Aztec C 86-d Developer's System $299. 

Aztec C 86-c Commercial System $499. 

PC ROM (8086, 68000, 8080, or 6502) $750. 

Third Party Software for Aztec C: HALO, PHACT, C-tree, 
PRE-C. Windows for C, PC-lint, PANEL, Greenleaf, db Vista, 
C-terp, Plink-86, FirsTime, C Util Lib, 
and others. 



MS is a registered TM of Microsoft. Inc., CP/M TM DRI, HALO TM Media Cybernetics, PANEL TM 
Roundhill Computer Systems. Ltd., PHACT TM PHACT Assoc, PRE-C. P!ink-86TM Phoenix, db 
Vista TM Raima Corp.. C-terp, PC-lint. TM Gimpel Software. C-tree TM Faircom. Inc.. Windows for 
C TM Creati ve Solutions. Apple II. Macintosh TM Apple. I nc, TRS-80 TM Radio Shack, Amiga TM 
Commodore Intl. 

Circle 161 on Reader Service Card 




Manx Software Systems 
One Industrial Way 
Eatontown, NJ 07724 



OCTOBER 1987 -BYTE 



REVIEW: DEFINICON DSI-780 



for people converting existing code. The 
quality of the compiler-generated code, 
while adequate, is not as efficient as that 
generated by the popular GreenHills 
compilers available on the DSI-32 under 
Unix. [Editor's note: See 'The DSI-32 
Coprocessor Board, " a two-part article 
beginning in the August 1985 BYTE. ] 

The SVS assembler is adequate for 
coding small procedures to be called 
from C, FORTRAN, or Pascal; other- 
wise, it's very limited. For example, I 
took a programming example from an- 
other 68000 assembler package, and the 
SVS assembler gave error messages for 
the directive XDEF (used to declare exter- 
nal definitions) and for an absolute jump 
instruction, JMP $2428. Also, there is no 
manual provided for the SVS assembler, 
so it was a little difficult to get started. 
Definicon recommends the Quelo As- 
sembler (a macro-assember product also 
available for the DSI-780) for any serious 
assembly language work. 

Debugging with SDB 

One of the major difficulties of develop- 
ing software for add-in coprocessor 
boards is debugging a program resident 
on the board. Definicon provides both a 
traditional machine-code debugger (simi- 
lar to the PC-DOS DEBUG program) 
and a symbolic-level debugger. SDB, the 
symbolic debugger I reviewed, was a beta 
copy, but nevertheless I found it very use- 
ful. SDB runs on the host processor 
(8088 for the XT or 80286 for the AT), 
which means that all the DSI-780' s mem- 
ory is available for the applications pro- 
gram. All the basic debugging commands 
are provided, including data display, 
tracing, and breakpoints. 

SDB worked with C, Pascal, and FOR- 
TRAN programs. One minor annoyance 
is SDB's case sensitivity to routine 
names. This is awkward for users who 
have programs composed of routines 
written in a mixture of C, Pascal, and 
FORTRAN. 

In summary, while SDB is definitely 
not as powerful as Microsoft's Code 
View (the symbolic debugger that Micro- 
soft provides with its C compiler), it is a 
useful and essential tool for debugging 
programs executing on the 68020. 

Documentation and Support 

The documentation was adequate, but it 
could have been more detailed, better or- 
ganized, and indexed. The lack of an in- 
dex in the SVS manuals forces you to 
search through the entire DSI-780 man- 
ual to find a particular feature. Also, the 
SVS manuals make no reference to the 
routines contained in PASLIB (the Pascal 
library), CLIB (the C library), or 
FTNLIB.P (the FORTRAN library). The 



SDB manual does not describe the de- 
bugger's commands in any logical order. 
In contrast to the problems with the 
documentation, Definicon' s technical 
support is excellent. I used the com- 
pany's BIX conference (dsi.32bit) fre- 
quently, and I received prompt responses 
to technical questions both electronically 
and by phone. [Editor's note: Definicon 
also operates the Thousand Oaks bulletin 
board system at (805) 493-1495 for 
2400-/1 200-bit-per -second calls and 
(805) 492-5472 for 1200-1300-bps calls. 
The system is on-line 24 hours a day with 
software and support for Definicon 's 
products, including the DSI-780] 

Performance 

I used both the BYTE benchmarks and a 
more traditional scientific test to see if the 
DSI-780 measured up (see table 1). 

It is interesting to observe the figures 
returned by the Write benchmark. Since 
all file I/O is handled by the host com- 
puter, the speed of the disk write will de- 
pend largely on the speed of the host 
computer. But if you compare the results 
obtained by the DSI-780 board against 
those produced by the Packard Bell 
alone, you'll see that the times from the 
DSI-780 are faster. This is because the 
DSI-780 handles some of the job of ma- 
nipulating the text buffer and leaves the 
task of writing to the buffer to the host. 
When the Packard Bell is operating on its 
own, it has to manage both of these tasks. 

Since my major interest in the DSI-780 
was its ability to do fast computation, I 
ran the Whetstone, Dhrystone, and LIN- 
PACK tests. I ran UNPACK, an applica- 
tion benchmark, to get a better feel for the 
speed of the DSI-780. UNPACK is a 
FORTRAN benchmark developed at the 
Argonne National Laboratory. It solves a 
dense set of linear equations, which 
makes it a useful test of CPU perfor- 
mance in scientific applications. 

Although LINPACK produces a num- 
ber of results, two of them are particular- 
ly noteworthy. The first is the Cray Ratio, 
which is a measure of the CPU power rel- 
ative to a Cray supercomputer (hence, a 
Cray scores a 1.0 on this test). The DSI- 
780 board returned a Cray Ratio of 132.3 
on the double-precision LINPACK, while 
a VAX- 11/780 with a floating-point ac- 
celerator scored an 89. The second mea- 
sure is an estimate of the floating-point 
performance of the machine in millions 
of floating-point operations (MFLOPS). 
On this test, the DSI-780 scored a 
0.0928, and the VAX-1 1/780 scored a 
. 1 4 (a Cray scores a 1 2) . 

A Cost-Effective Alternative 

The benchmarks show that for many ap- 
plications, the DSI-780 approaches the 



Definicon DSI-780 

Type 

68020 coprocessor board 

Company 

Definicon Systems Inc. 
1 1 00 Business Center Dr. 
Newbury Park, CA 91320 
(805)499-0652 

Size 

Standard XT/ AT full-length expansion 
card; 13 1 /3 by 4 by 3 /a inches 

Features 

16.67-MHz 68020 CPU; 16.67-MHz 
68881 FPU; expansion socketfor MMU; 
4 megabytes of on-board memory; 
uses 8-bit bus (XT) or 1 6-bit bus (AT); 
MS-DOS interface software; 68020 
DOS-compatible kernel; 68020 memory 
is memory-mapped into the PC 
address space 

Hardware Required 

IBM PC XT, AT, or true compatibles; 
hard disk drive or RAM disk 
recommended 

Software Required 

MS-DOS 2.0 or higher, or Concurrent 
PC DOS 4.1 

Options 

SVS C compiler: $398 
SVS Pascal compiler: $448 
SVS FORTRAN compiler: $528 
SVS BASIC-Plus interpreter: $248 
Lattice Logic LTD Pascal compiler: 

$448 
Living Software BASIC-to-C 

converter: $348 
QUELO Macro Assembler and 

utilities: $198 
Library Manager: $48 
Public-domain disks (4): $20 
Graphics-support disks: $188 
SciTech scientific package: $314 

Documentation 

104-page user/reference manual 

Price 

DSI-780/4 (with 4 megabytes of RAM 
and 68020 running at 16.67 MHz): $3295 



speed of a VAX-1 1/780. [Editor's note: 
See the text box "The DSI-750+ " on 
page 210 for a speed comparison of the 
DSI-780 and the DSI-750+.] You can 
use this board as a stepping-stone to bring 
mature mainframe applications into the 
PC environment. Unfortunately, the SVS 

continued 



212 BYTE* OCTOBER 1987 



If you ever 
wanted to 
take a crack' 
at assembly 
language 



You probably already 
know that assembly 
language subroutines 
are the smartest way to 
get the fastest programs. 

But if the complexities 
of working in assembler 
made you think twice, 
here's some good news. 
We've made Microsoft® 
Macro Assembler Version 
5.0 a lot easier to use. 

We eased the learning 
process by giving you the best 
support around. We com- 
pletely revised our docu- 
mentation. The new Mixed 
Language Programming 
Guide gives you step by step 
instructions for linking your 
assembly code with Microsoft 
QuickBASIC, C, FORTRAN, 
Pascal and other languages. And 
you get a comprehensive refer- 
ence manual with listings of the 
instruction set and examples of each instruc- 
tion. We didn't stop there, though. You also 
get an on-disk collection of templates 
and examples. 

We've also dramatically simplified the 
high-level language interface. In just a few 







X 



nows 
the time. 



simple steps, you can be 
calling Macro Assembler 
subroutines from pro- 
grams written in your 
favorite language. 

Now that you're writ- 
ing the fastest programs , 
Microsoft is giving you 
the fastest way to de- 
bug them. For the first 
time, we've added our 
CodeView® debugger 
to Macro Assembler. 
With source code 
and comments on your 
screen, Microsoft Code- 
View makes debugging pro- 
grams containing assembly 
language subroutines a snap. 
And you'll be glad to know that you 
don't sacrifice any speed for all the ease of use. 
We took the fastest Macro Assembler on 
the market and made it even faster. 

So what are you waiting for? Get your 
hands on Microsoft Macro Assembler and 
see what it's like to break your personal 
speed limit. 

Microsoft 

For more information or for the name of your nearest 

Microsoft dealer, call (800) 426-9400. In Washington State arid 

Alaska, (206) 882-8088. In Canada, call (416) 673-7638. 



Microsoft, the Microsoft logo and CodeView are registered trademark of Microsoft Corporation. 



Circle 178 on Reader Service Card (Dealers: 1 79) 



OCTOBER 1987 -BYTE 213 



REVIEW: LASER PRINTER TIMES FOUR 



Table 1: Benchmarks 
comparing the 16-MHz DS 1-780, 
running SVS B ASIC-Plus on a 
Packard Bell 8-MHz AT clone, 
with the Packard Bell alone 
running GWBASIC. The Read and 
Write benchmarks are the 
standard BYTE BASIC benchmark 
programs to read and write a 
64K-byte file. The Sieve 
benchmark is a BASIC 
program that closely follows the 
Sieve benchmark BYTE uses to 
test C compilers (10 iterations). 
The Calculations benchmark is 
the standard BYTE benchmark 
extended to 100,000 iterations. 
All times are in seconds. 

DSI-780 Packard Bell 

Read 25.6 26.0 

Write 27.0 48.8 

Sieve 66.6 587.9 

Calculations 36.1 317.7 



Laser Printer 
Times Four 



FORTRAN-77 compiler is not main- 
frame-quality, so you should expect a 
week to a month of conversion time if 
your code is very machine-dependent. 
Note, too, that the DSI-780 does not pro- 
vide virtual memory; therefore, you must 
be sure that your board has the appropri- 
ate amount of real memory to accommo- 
date your application. 

Some developers, no doubt, will be 
frustrated by the fact that the DSI-780 
does not operate with Unix. However, I 
found the process of developing software 
using the Def inicon MS-DOS interface to 
be straightforward. 

In addition, unlike Def inicon's DSI-32 
board, with the DSI-780 you don't have 
to partition your hard disk into a Unix 
area and a DOS area and run two differ- 
ent operating systems: The DSI multi- 
tasking loader lets you run simultaneous 
DOS-based editing and 68020 compila- 
tion tasks. 

What kind of applications are best 
suited to the DSI-780? Obviously, those 
that require a linear address space and 
need lots of CPU power, "typical exam- 
ples include finite-element analysis, sim- 
ulation, and font generation. For these 
and similar applications, the DSI-780 can 
offload the mainframe and provide a 
cost-effective solution for PC-based 
computation. 

If Definicon continues to evolve this 
product (and, particularly, to improve the 
compilers available), I may consider can- 
celing my order for a Mac II and perma- 
nently disconnecting my line to the 
mainframe. ■ 



Wayne Rash Jr. 



The new generation of laser printers is 
coming within the price range of individ- 
uals and small businesses. More manu- 
facturers are offering their own versions 
of printers based on different laser- 
printer engines. These new laser printers 
offer a bewildering array of font styles, 
memory options, and methods for con- 
trolling output. For this comparison re- 
view, I looked at four relatively recent 
entries covering a wide price range: the 
Hewlett-Packard LaserJet Series II 
($2595); the Kyocera F-1010 ($3695); 
the Okidata Laserline 6 ($1995); and the 
Epson GQ 3500 ($2199). 

The Engines 

In most cases, a laser-printer manufac- 
turer buys the actual printing engine from 
another company, usually one that makes 
photocopiers. Hewlett-Packard, for ex- 
ample, uses a Canon engine, while the 
Epson and Okidata printers are both built 
around engines made by Ricoh. Kyocera 
builds its own engine. 

The major differences between en- 
gines relate to the cost of supplies and the 
life of the machine. Canon was the origi- 
nal maker of low-priced laser-printer en- 
gines. The Canon engine uses a cartridge 
that contains both the toner and the pho- 
tosensitive drum. This makes it easy to 
replace supplies when the toner runs out, 
and it keeps your hands clean. 

However, the photosensitive drum, the 
device that transfers the image to the 
paper, does not wear out as quickly as the 
toner runs out. So, when you throw out 
the expended cartridge from a Canon-en- 
gine laser printer, you throw out a per- 
fectly good drum in the process. [Edi- 
tor's note: Several companies now 
advertise that they can recharge your old 
Canon cartridges for considerably less 
than the price of a new cartridge. Laser - 
printer manufacturers, however, do not 
recommend using recharged cartridges 
because of possible excessive wear on the 
photosensitive drum and lack of quality 
control over the toner supplies. ] 

Printers based on the Ricoh and Kyo- 
cera engines avoid this problem; they 
have separate drum and toner cartridges. 
When the toner runs out, you replace 
only the toner cartridge. Unfortunately, 
it's also a lot easier to get toner all over 



yourself, as I found out more than once. 

Of course, the engine is only part of 
the printer. The printer manufacturer 
adds electronics that can give an engine 
different capabilities (e.g., graphics- 
image size and resolution). 

The Tests 

To test the printers objectively, I ran a 
suite of tests that try to simulate actual 
day-to-day uses of laser printers. The 
tests include printing a full page of graph- 
ics and a full page of combined text and 
graphics, using every printer emulation 
available for each laser printer to test for 
compatibility. Each test was repeated at 
75, 150, and 300 dots per inch. 

To measure the actual throughput, as 
compared to the manufacturer's claimed 
page-per-minute (ppm) speed, I bench- 
marked these machines in two ways. The 
first method involved sending a 96K- 
byte, 30-page text document to the printer 
with the DOS COPY command. In the sec- 
ond method, I set the printers to produce 
30 copies and then sent them a single 
page of text, again using the DOS COPY 
command. Ideally, for a given computer, 
the times of these two tests should have 
been the same. In practice, there were 
time differences. 

I timed the printers by pressing the but- 
ton on the stopwatch at the same time that 

I pressed the Enter key on the computer. 
Since the files were on the computer's 
hard disk, the delay before sending the 
file to the printer was minimal. I also 
tested the time it took the printers to run 
through their power-on, self-test, and 
warm-up sequences (see the results in the 
table at right). 

I ran these tests on a Tandy 1200 HD 
with 640K bytes of memory. To test text 
throughput, I used WordStar version 4, 
which supports Hewlett-Packard and 
Apple laser printers. I mixed text and 
graphics with Ashton-Tate's Framework 

II version 1.1, and I generated graphics 
with Lotus's Freelance Plus version 2. 

While all printers performed well with 
WordStar, Framework's word-process- 
ing capabilities eluded some printers. In 
this test, I generated a memo that in- 
cluded bold, underlined, and italic print, 
along with the normal print and em- 
bedded graphics. The graph was a simple 



214 BYTE- OCTOBER 1 987 



REVIEW: LASER PRINTER TIMES FOUR 





HP LaserJet Series II 


Kyocera F-1010 


Okidata Laserline 6 


Epson GQ 3500 


Company 


Hewlett-Packard 
3000 Hanover St. 
Palo Alto, CA 94304 
(800) 367-4772 
(415)857-1501 


Kyocera Corp. 
3165 Adeline St. 
Berkeley, CA 94073 
(800)367-7437 
(415)848-6680 


Okidata 

532 Fellowship Rd. 
Mount Laurel, NJ 08054 
(800) 654-3282 
(609) 235-2600 


Epson America Inc. 
2780 Lomita Blvd. 
Torrance, CA 90505 
(213)539-9140 


Warm-up time 
(in seconds) 


26.0 


21.5 


32.0 


33.0 


Time to print one page 
(in seconds) 


29.0 


22.0 


27.8 


29.1 


Time to print 30 copies 
(minutes:seconds) 


3:58.0 


3:17.1 


5:05.8 


5:09.4 


Time to print 96K-byte file 
(minutes:seconds) 


5:49.0 


3:13.1 


5:05.9 


5:07.0 


Rated speed 


8 ppm 


10 ppm 


6 ppm 


6 ppm 


Price 


$2595 


$3695 


$1995 (includes 
Personality Module) 


$2199 


Resident fonts 


6 


40 


15 


7 


Ports 


Serial and parallel 


Serial and parallel 


Serial or parallel 


Serial or parallel 


Memory (standard) 


512Kbytes 


1 megabyte 


272K bytes 


640K bytes 


Memory (as reviewed) 


2.5 megabytes 


1 megabyte 


656K bytes 


640K bytes 


Accessory prices 


Font modules (20+): 
$150 to $330 each 
Download font disks (1 6): 
$200 each 
Memory boards: 

1 megabyte: $495 

2 megabytes: $995 
4 megabytes: $1995 


Download font disks: 
$150 to $195 each 


Memory module, 384K 
bytes: $300 
Additional Personality 
Modules: $200 each 
Multiuser Personality 
Module: $600 


Memory board, 1 .5 
megabytes: $499 
Font cards (15): 
$149.95 each 
Emulation cards (2): 
$169.95 each 
Large paper tray, 
250 sheets: $499 


Paper bins 


Letter, legal, A4, 
Executive (7 1 /4 by IOV2) 


Letter, legal, A4, B5 


Up to legal-size 


Letter, legal, half- 
letter, A5, A4, B5 


Toner cost 


$11 5 (including drum) 


$29.95 


$29 


$29 


Cartridge life 


4000 pages 


3000 pages 


1500 pages 


1500 pages 


Drum life 


(In toner) 


10,000 pages 


20,000 pages 


20,000 pages 


Engine life 


N/A 


300,000 pages 


1 80,000 pages 


180,000 pages 


Documentation 


Getting Started With 
LaserJet Series II; user's 
manual 


User's manual; 
programming manual 


Setup guide; printer 
handbook; software 
handbook 


User's manual 


Size (In Inches) 


18by19by8 1 /2 


17V4by17V2by13 1 /2 


16by16V 2 by9 


16by16V2by8V2 


Weight 


50 pounds 


65 pounds 


37.8 pounds 


35 pounds 



bar graph placed in the middle of the 
memo. 

The full-page graphics test used an- 
other bar graph, this one generated by 
Freelance Plus. This software package 
supports a variety of laser printers and 
prints at 300 dpi regardless of the mem- 
ory available to the computer. 

Emulation and Graphics 

The full-page graphics test provided the 
opportunity to test the emulation com- 
patibility of each printer. The LaserJet 
did no emulations; it is a de facto stan- 
dard that the others try to emulate. The 
Epson, Okidata, and Kyocera printers all 
support the Hewlett-Packard and Epson 



emulation. The emulations are complete, 
except that the Laserline 6 could not pro- 
duce graphics with Framework, although 
this package supports the Epson MX, 
which the Laserline emulates. 

To create graphics images, your soft- 
ware must have the appropriate printer- 
driver software, and the printer must 
have enough memory to handle the 
graphics file. A rule of thumb is that 1 
megabyte of memory is sufficient to sup- 
port a full page of 300-dpi graphics. 

The software packages that I tried used 
different methods to create the image that 
was sent to the printers. Framework gen- 
erates the graphics image entirely in the 
computer's memory. On the 640K-byte 



Tandy 1200 HD, Framework could pro- 
duce high-resolution images of only 
about 1 Vi by 2Vi inches, regardless of the 
memory available in the printer. Free- 
lance Plus builds the images in parts, and 
downloads one part to the printer before 
continuing with the next. Building and 
downloading images is not fast. A 300- 
dpi image took about 45 minutes to print 
on all the printers, and nearly all this time 
was taken up by the computer creating the 
image and sending it to the printers. 

The time required to build and down- 
load an image is directly related to the 
resolution: A 150-dpi image takes only 
about 20 minutes, and a 75-dpi image 

continued 



OCTOBER 1987 -BYTE 215 



REVIEW: LASER PRINTER TIMES FOUR 



about 10 minutes. Of course, the time 
spent waiting is also directly related to the 
speed of the computer. 

Status Messages and Manuals 

All the printers have some method for 
displaying their status— either a front- 
panel display or a printed status sheet. 
The LaserJet has a single-line 16-charac- 
ter LCD screen that is informative and 
easy to read and use. All the machines ex- 
cept the GQ 3500 can also print a status 
page. This page lists the current status of 
the printer, the available fonts, and the in- 
terface settings. 

Each of the printers comes with a 
user's manual. These manuals share one 
trait: They are woefully lacking in exam- 
ples of how to use the special features of 
these printers. For example, the instruc- 
tion for printing multiple pages in the 
Epson manual is a very terse ASCII 
code : ESC m n. That's all, except for a re- 
peat in decimal and hexadecimal code, 
and a note that you can't print more than 
99 copies. There are no examples. Of 
course, most BYTE readers can figure 
out how to send an ESC m to the printer by 
writing a program in BASIC, but the 
method of setting the number of copies is 
not readily obvious. That n could stand 
for almost anything, from the decimal 
number 30 (for 30 pages) to Roman nu- 
merals. As it turns out, it's supposed to 
be an ASCII character, such as 
CHR$(30) , but this is explained in an en- 
tirely different section. An unskilled user 
might never figure it out. While the Kyo- 
cera user's manual has some examples, it 
could use more. The other manuals are 
much worse. They are not adequate for an 
inexperienced user. 

Hewlett-Packard LaserJet Series II 

HP laser printers are the standard against 
which other laser printers for PCs are 
judged, not necessarily because it's the 
best, but because it is the most common. 
The Series II is the latest in the HP model 
line. It is smaller and less expensive than 
its predecessors, but it is just as fast, and 
it supports the same software as the earli- 
er versions. 

The LaserJet is rated at 8 ppm. In test- 
ing, it approached that speed only when 
printing the same page 30 times. It 
churned out the 96K-byte document in 
just under 5.5 ppm, and, in fact, took 
longer than either the Laserline 6 or the 
GQ 3500, which are rated at only 6 ppm. 
(Hewlett-Packard replied that the speed 
of the laser printer depends on the inter- 
action of the software and hardware. Dif- 
ferent system configurations produce dif- 
ferent times.) The LaserJet was also no 
faster than the Laserline 6 or the GQ 
3500 in the other benchmarks, with the 



exception of printing multiple copies of 
the same page. 

The LaserJet is easy to use. The LCD 
readout gives you a menu of functions 
and fonts, and you can rotate through 
them and choose what you want. Unfor- 
tunately, the manual fails to mention that 
you have to turn the printer off and back 
on again for the choices to take effect. 

Because of the LaserJet's generally 
good documentation, getting the printer 
installed and operating is a snap. The in- 
structions and drawings lead you through 
installation of the toner/drum cartridge 
and hookup to the computer. As part of 
the installation process, the documenta- 
tion shows you how to install the font car- 
tridges and how to run the status sheets. 
The LaserJet gives you a status report 
that can run to several pages if you print 
out all the internal fonts. 

The LaserJet has the largest selection 
of optional font cartridges and font disks. 
The font cartridges ($150 to $330 each) 
are easy to use; you just plug them in and 
then select them from the menu. The font 
disks ($200) let you download a font from 
your computer to the printer as needed. 

HP includes a utility program with the 
LaserJet to send an individual font to the 
printer and to print a test page. You can 
do only one font at a time, and the down- 
load process is rather time-consuming. In 
addition, downloaded fonts take up mem- 
ory space that otherwise could be used 
for storing a graphics bit image. 

Another utility available for LaserJet 
users is called PCLPak. This software 
takes advantage of what HP calls its 
Printer Command Language. HP says 
that PCLPak runs on HP and IBM com- 
puters. I did not test it for this review. 

HP does not indicate the life of the La- 
serJet; the company says that, with rou- 
tine maintenance, the engine should last 
indefinitely. The average life for a toner/ 
drum cartridge is 4000 pages. This is 
longer than in earlier models of Canon- 
based printers and is due to a new com- 
pact Canon engine (the LPB-SX). 

The new engine also provides a new 
paper path. The pages are stacked face- 
down in correct order. The paper path 
takes a U-turn, so not all paper and enve- 
lopes will work, but a straight-through 
paper path with no turns at all is also 
available. 

The LaserJet is a very quiet printer and 
consumes relatively little power. In fact, 
the standby power requirement is only 
170 watts, which is well within the range 
of most home wiring systems, as is the 
printing power requirement of 870 W. 

Kyocera F-1010 

The F-1010 is the fastest, largest, heavi- 
est printer discussed in this review; it's 



also the most flexible, and the most ex- 
pensive. The F-1010 has been available 
longer than the others, and it uses Kyo- 
cera 's proprietary engine. It emulates the 
LaserJet and the Epson FX-80, as well as 
the IBM Graphics Printer and Diablo, 
Qume, and NEC daisy- wheel printers. 
Its printer-control language, Prescribe, 
lets you include printer commands in text 
files instead of having to write programs 
in BASIC. The F-1010 supports a num- 
ber of graphics and shading primitives, 
does graphs and charts by itself, and even 
does bar codes. 

The F-1010 is rated at 10 ppm, a claim 
supported by the machine's benchmarks; 
thus, it is significantly faster than the 
other machines reviewed here. It also gets 
running in a hurry. 

Installing the F-1010 is slightly more 
complex than the LaserJet, because the 
F-1010 uses a separate toner and drum. 
You have to install each of them, in addi- 
tion to removing some packing material 
and installing a waste toner bottle and a 
cleaning pad. The toner cartridge and de- 
veloper unit fit beneath a door on the top 
of the printer. The drum fits into the side, 
and the bottle and cleaning pad go inside. 
The waste toner bottle includes a cap so 
you can dispose of it without mess, but 
there is no provision for storing the cap. 

The printer is relatively easy to oper- 
ate. Setting printer attributes, such as the 
number of copies to print, is different 
from other printers, since there is no 
LCD readout. Instead, you can embed 
commands in text. You don't need to send 
escape codes. Printer control codes are 
preceded by the text sequence ! R ! , which 
is unlikely to be duplicated in normal 
text. Using this method, you can easily 
change typefaces, text size, and other 
printer attributes from within documents. 
You can also use a series of batch files 
from MS-DOS to set the printer up the 
way you want it. 

The F-1010's control panel has a two- 
digit status display and several warning 
lights. Kyocera includes a quick-refer- 
ence panel to help interpret the status 
codes on the display. 

The Kyocera user's manual includes a 
respectable number of examples and is by 
far the most thorough manual of all the 
printers covered in this review. Most of 
the commands have adequate examples. 

The printer also comes with the Pre- 
scribe programming manual, which tells 
you how to use the Prescribe printer-con- 
trol language. With Prescribe, you can 
generate pie, bar, and line graphs by sim- 
ply specifying the type of graph and the 
data points. The HP download fonts also 
work with the F-1010. 

The F-1010 has an automatic page- 

continued 



216 BYTE- OCTOBER 1987 



Circle 249 on Reader Service Card for MS DOS Products. 

(All others: 250)^ 



From As Low As 

^^ ^m %m With System Only 

Call For Details and Other 
System Configurations. 



5335FM 








JRBO PC/XT 

K Brand Name Floppy Drive, 

upply Slide Case, 
AT Style Keyboard, 
4-10 MHz Clock Speed, 
(Keyboard Selectable), 
8 Expansion Slots 



PRINTERS 

Alps 

All Models Call 

Brottof Printers Call 

Ofow Printers 

MSP-10 $249 

MSP-15 315 

MSP-20 285 

MSP-25 385 

Prerraer35 445 

120D 159 

Diablo 

D-25 469 

635 759 

DJconics 
150 $ 299 

Epson Printers Call 

Neifatt'Ptctard 
Laser Jet Series II 1829 

NEC 

3510, 3550 729 

8810. B850 1059 



P-6 429 

P-7 619 

P-9 1035 

OkJdate Call 

Panasonic 

1080 i NEW Call 

1091 1 NEW Call 

1092 1 295 

1592 375 

1595 419 

3131 229 

3151 369 

Star Micronics Call 

Toshiba 

321SL Calt 

341E 665 

351 Model II 699 

351 Color 1029 

TERMINALS 

Qum 

101 Plus Green $ 315 



101 Plus Amber 315 

Wyse 

30 285 

50 359 

75 565 

85 425 

MONITORS 

Amdex Monitors Call 

NEC 

Multisync $ 545 

Other Models Call 

Princeton Graphics Monitors Call 

COMPUTERS 

NEC 

Mulltispeed $1419 

Pansonic 

Business Partner 719 

Sr.Partner 969 

Exec. Partner Dual Drive . 1429 

Toshiba 
T-1100 Supertwist Call 




^t G Z w 



T-3100 Call 

AST 

Six Pack Plus $ 139 

Other Models Call 

ATI 
EGA Wonder 245 

Hercules 
All Models Call 

Intel 
All Above Boards Call 

Paradise 

Autoswitch 350 205 

Autoswitch 480 279 

5 Pack 99 

DISK DRIVES 

Bernoulli Box 

10 Meg , $865 

20 Meg 1190 

40 Meg 1720 

•Segale 20 MG w/WD Controller 339 



Plus Development 

Plus Hard Card 20 Megabyte ....... 609 

Quad ram 

Quad EGA Plus 295 

Tecmar 

All Models Call 

Vldeo-7 

Vega Deluxe 285 

Zenith 

1490 FTM 615 

MODEMS 

Anchor Automation 
Anctior Express $ 185 

Hayes 

All Models . Call 

Prometheus 
1200B w/Software 125 

US Robotics 

Password 1200 149 

Courier 2400 335 

Microiink 2400 335 



MONEY MANAGEMENT 

Dollars & Sense w/Forcast $ 92 

Tobias Managing Your Money Call 

TRAINING 

FBghl Simulator $ 27 

Lete 38 

Mastertype 23 

Mind Prober 25 

MS Learning DOS . 27 

PC Logo 69 

TurboTutorll 23 

Typing Instructor 27 

Typing TutorlV 27 

DATA BASE MANAGEMENT 

Clipper $375 

Cornerstone 53 

ase III LAN 589 

dBase 111 Plus 379 

DB-XL 82 

Eureka Call 

Fox Base Plus 2.0 195 

Genrfer 188 

Knowiedgeman li Ptomo Pack 319 

Nutshell 75 

Paradox 20 Call 

PFS: Prolessionat Fite 112 

Q&A 195 

QuictaodePlus 138 

QuickReporl 138 

Rapid File 239 

Revelation 449 

Revelation BumpDisit 249 

R Base Clout (New Ver.) Call 

R:Base Ext. Report Writer (New Ver.) Call 

R:Base 5000 System V . . Call 

R:Base Graphix 175 

Reflex 79 

VP Expert 47 

VP Into 47 



COMMUNICATIONS 

CompuServe Starter Kit $ 19 

Crosstalk XVI 88 

Crosstalk Mark IV 109 

Microsoft Access . 137 

Mirror II 33 

Remote 88 

Smartcomltl 155 

INTEGRATIVE SOFTWARE 

Ability $ 55 

Enable 2.0 Call 

Framework II 395 

PFS: 1st Choice j Call 

Smart Software System 409 

Symphony 439 

GRAPHICS/MICE 

Chartmaster Call 

Diagram Master Call 

Energraphics 2.0 $269 

Easy CAD 94 

Fast CAD 1375 

Freelance Plus 325 

Generic CAD w/Dot Plot 3.0 75 

Harvard Graphics Call 

IMSI Mouse (PC Mouse) w/Dr Halo II . . . 92 

In-A-Vsion 259 

Map Master Call 

Microsoft Buss Mouse 6.0 106 

Microsoft Chart 3.0 249 

Microsoft Serial Mouse 6.0 119 

News Room 31 

News Room Professional 65 

PCBuss Plus Mouse (New Ver.) 99 

PC Mouse (New Ver.) 89 

Piintmaster . 29 

PrintShop 32 

Signmaster Call 

Turbo Graphix Tool Box 38 

VP Graphix 47 

Windows Draw!! w/Clip Art 163 



PROJECT MANAGEMENT 

Harvard Total Project Manager II $282 

Microsoft Project 218 

Super Projecl Plus Call 

Timeline 2.0 235 

ACCESSORIES 

Copy II Option Board $ 75 

Masteipiece 84 

Masterpiece Plus 97 

Masterpiece Remote 107 

Microsoft Mach 10 wWindows & Mouse . . 322 

MousePad by Mousetrac 9 

Summasketcti 12x12 Plus Call 

ACCOUNTING 

BPI-B/l. A/R. A/P. Payroll . . $ 159 

Computer Associates - G/L, A/R, A/P . . , 379 

DAC Easy Accounting 38 

DAC Easy Payroll 28 

In-House Accountant 53 

One Write Plus 140 

One Write A/R, A/P. Payroll 125 

Time Slips Call 

WORD PROCESSORS 

Easy Extra $ 79 

Leading Edge Word Processor , . 25 

Leading Edge W/P with Spell & Merg ... 59 

Microsoft Word 3. 11 175 

Multimate Advantage II 245 

PFS: Professional Write 89 

Smart Spell Checker 65 

Turbo Lightening 55 

Volkswriter 3 136 

Volkswriter Deluxe Plus 59 

Votkswriler Scientific 235 

Websler New World Writer ... 55 

Webster Spell Checker 33 

Webster Thesaurus 39 

Word Perfect Executive 103 

Work Perfect library 54 

Word Perfect (Ver. 4.2) 195 



Wordstar w/Tutor 3.31 162 

Wordstar Pro Pack 4.0 233 

Wordstar 2000 Plus 2.0 209 

DESKTOP PUBLISHING 

Harvard Professional Publisher $329 

Newsmaster 48 

Pagemaker 479 

PFS: First Publisher 45 

Ventura Publishing 465 

DISKETTES 

Maxell MD-2Qly. 100 $ 83 

Maxell MD-2HDQIy. 100 185 

Maxell M25Qty. 100 65 

Sony MD-2 Qty. 100 85 

Sony3Vi>Oty. 100 107.50 

Sony 5/t? 80 

LANGUAGES 

Basic Compiter (Microsoft) . $219 

C Compiler (Microsoft) ' 249 

Cobol Compiler (Microsoft) 385 

Fortran Compiler (Microsoft) 4.0 245 

Lattice C Compiler 236 

Macro Assembler (Microsoft) 83 

Pascal Compiler (Microsoft) 165 

Quick Basic 3.0 55 

Run C Interpreter 64 

Ryan McFarlan Cobot 539 

Ryan McFarlan Fortran 339 

Turbo Basic 55 

TurboC 55 

Turbo Jumbo Pack (New Ver.) 159 

Turbo Pascat w/8087 & BCD 55 

Turbo Prolog 54 

Turbo Prolog Toolbox 55 

UTILITIES 

1 DIR Plus $ 46 

Bookmark 40 

Brooklyn Bridge 72 

Carbon Copy Plus 105 

Carousel 2.0 29 

Copy II PC 19 

Copywrite 40 



Corelast 189 

Cruise Control 24 

Cubil 25 

Disk Optimizer 2.0 29 

Disk Technician 56 

Double DOS 4.0 25 

DSBack-UpPlus Call 

Fastback 80 

Homebase 2.5 40 

Keyworks *9 

Mace Utilities 48 

Microsoft Windows 55 

Norton Commander 36 

Norton Utilities 4.0 48 

Note It Plus 45 

Noteworthy 42 

PCTods 19 

Printworks 38 

Prokey 4.0 » 

Referee 38 

Sidekick (Unprotected) 45 

Sideways 3.1 37 

Smart Notes 40 

SQZ 45 

Superkey Call 

Take Two 79 

Turbo Editor Tool Box 38 

Unlock A. or B Plus 32 

Unlock D Plus 43 

XTree 25 

SPREADSHEETS 

Cambridge Analyst $ 59 

4 Word 55 

HAL 104 

Lotus 1-2-3 Ver. 2.01 Call 

Lotus Manuscript 339 

Lotus Report Wiiter 67 

Multiplarv3.0 ; 108 

Silk 138 

Supercalc4 Call 

Twin Classic 35 

VP Planner 47 















• Ho Charge tor VISA and liaftwcird ■ No APO, FPO, or international orders, please Mailing Addraaa: 

• You Pay me Ground Shipping - We Pay me Air ■ Call baton submitting P.O.'a - A*k tor National Account* 6604 N. 23rd Avenue 'Phoenix. A2 B5021 
" ■ Ground Shipping & Handling $6.00 ■ Personal and Company Checks Will Delay Shipping 3 weeks Order Lines: Mon-Fri 7 a.m. - 6 p.m. 

■ ■ Free Air applies ONLY to orders up to 10 lbs 4 Over $50 • Prices. Terms & Availability Subject to Change Without Notice Saturday 9 a.m. - 1 p.m. 
■ All product carries a manufacturer's warrantee. All Guarantee, * Add 5% tor C.O.D. Orders Order Processing: (602) 994-2552 
rebates, trial period priviledges & promotional programs are * We Do Not Guarantee Machine Com pa H Witty 10 a.m. - 3 p.m. Mon-Fri 
handled by the manufacture only 




Wa 




VjSA 




Q$ 











REVIEW: LASER PRINTER TIMES FOUR 



ejection feature. After a user-specified 
time during which data is not received, 
the F-1010 automatically prints a page, 
even if there is no command to do so. You 
can select a time from seconds up to 8 Vi 
minutes, or you can turn off the feature. 

The F-1010, like the LaserJet, stacks 
the pages in a face-down pile in the order 
in which they were printed. The curl of 
the pages is slightly tighter than with the 
LaserJet, and a page will sometimes push 
the page beneath it out of the stack. There 
is no straight-through paper path. 

The F-1010 will handle an enormous 
amount of paper. According to the com- 
pany, the estimated life of the engine is 
over 300,000 pages. The toner lasts for 
about 3000 pages, but with the F-1010 
you don't replace anything but the toner, 
which costs about $30. The drum can last 
for as long as 10,000 pages. 

The F-1010 is a heavy-duty printer, 
and it shows. The machine weighs 65 
pounds and requires 950 W maximum 
power. The cycling of its heaters causes 
lights sharing its circuit to flicker. 

Okidata Laserline 6 

At $1995, the Laserline 6 is the least ex- 
pensive printer in this review. The price 
includes the required single-user Person- 
ality Module. The Laserline 6 emulates 
the LaserJet, as well as the Epson MX- 
80, IBM Graphics Printer, Diablo, NEC, 
and Qume. It is rated at 6 ppm. 

The Laserline 6's Ricoh engine lives 
up to its rated speed. The benchmarks for 
this printer supported its speed claims, 
both in the 96K-byte document and in the 
single page repeated 30 times. 

In some ways, the Laserline 6 was the 
easiest printer of the group to use. While 
it lacks an LCD screen, it comes with the 
LaserControl memory-resident utility 
program for the IBM PC and compat- 
ibles, which gives you complete control 
of most of the commonly used functions. 

From the main menu you can choose 
the emulation you want to run, margin 
settings, font settings, download fonts, 
paper size, number of copies, and page 
orientation, among other things. The 
software even makes suggestions for the 
proper settings for various software pack- 
ages. LaserControl will also support 
screen dumps of graphics images. 

LaserControl supports HP download 
fonts, and these fonts work fine with the 
Laserline 6. The software keeps track of 
the subdirectory where the fonts are kept 
and downloads one or more of them on 
request. Unlike the HP software, Laser- 
Control translates the somewhat cryptic 
filenames into English, so you can pick 
fonts by name and size. 

The printer has a single-digit status 
display and a series of LEDs that indicate 



current status. The display panel includes 
buttons for the self -test and for switching 
off-line or on-line. The Laserline 6 also 
prints a status page and font test. 

As with the other printers, there should 
be more examples in the user's manual. 
The LaserControl software partly com- 
pensates for this lack of information, be- 
cause controlling the printer is somewhat 
easier with the LaserControl program. 

In other respects, the manual is fine. 
The setup guide leads you through un- 
packing, installing, and hooking up your 
printer, in clear steps illustrated by care- 
fully chosen photographs. Installation is 
easy, even for the novice. 

There are a few more steps in getting 
the Laserline 6 running than there are in 
the same process for the LaserJet. This is 
mostly due to the use of the Ricoh engine, 
in which the toner is separate from the 
drum. Both of these have to be installed, 
but it's a simple process, requiring you 
only to snap the items into place and re- 
move some shipping material. The pro- 
cess is faster and less complicated than 
for the F-1010. 

The LaserJet emulation worked fine 
with the Laserline 6, but there were prob- 
lems with the Epson MX-80 and the IBM 
Graphics Printer emulations. In both em- 
ulations, the Laserline 6 could not accept 
the Framework test file that mixed text 
and graphics. It would accept graphics 
for either emulation from Freelance Plus, 
and it would accept text from Framework 
and WordStar. Graphics screen dumps 
worked fine. The problem was with only 
those emulations and the mixture of text 
and graphics from Framework. That 
function worked fine in the LaserJet 
emulation. 

A required Personality Module, insert- 
ed into the rear of the printer, provides 
emulation in the Laserline 6. This mod- 
ule also contains the parallel interface. 
Optional Personality Modules for serial 
input ($200) and for a three-person multi- 
user interface ($600) are also available. 

The Ricoh engine that Okidata uses for 
the Laserline 6 is the same one Epson 
uses in the GQ 3500. Also, supplies such 
as toner and drums are easier to find, 
since they work with both the Laserline 6 
and the GQ 3500. 

The engine has a paper path similar to 
that of the LaserJet. Normal operation 
calls for the paper to be stacked face- 
down on the top of the printer, but it can 
be fed straight through and out the other 
side. The Ricoh engine makes this easy 
by the use of a knob that controls the 
paper direction. The engine allows man- 
ual feeding and can print envelopes. 

The Ricoh engine life is rated at 
180,000 pages, and the drum life is 

continued 



AUTHORIZED DATA5PEC 
DEALERS 



COMPUTER EXPRESS • 907-479-4098 
FAIRBANKS, AK • CHAPPELL COMPUTERS • 
205-284-8197 MONTGOMERY, AL • THE MICRO 
SHOP • 501-568-6203 LITTLE ROCK, AR • 
ARIZONA COMPUTER PRODUCTS • 602-526- 
3474 FLAGSTAFF, AZ • CHRISMANN 
COMPUTER SERVICES • 602-939-8260 
GLENDALE, AZ • ABBC SOFTWARE • 818-846- 
9700 BURBANK, CA • ADRAYS • 818-908-1500 
VAN NUYS, CA • BASIC COMPUTER SUPPLY • 
805-654-1919 VENTURA. CA • CENTAUR 
COMPUTERS • 619-588-2766 EL CAJON, CA • 
COMPUCLASSICS • 818-705-1895 RESEDA, CA • 
COMPUTER LADY • 714-676-3333 RANCHO, CA 

• COMPUTER LANE • 818-884-8644 CANOGA 
PARK, CA • COMPUTERLAND • 714-861-1958 
DIAMOND BAR, CA • COMPUTERLAND • 818- 
997-1107 VAN NUYS, CA • COMPUTERLAND OF 
GLENDALE • 818-246-2453 GLENDALE, CA • 
COMPUTERLAND OF GRANADA HILLS • 818- 
891-5795 GRANADA HILLS, CA • 
COMPUTERLAND OF PALM SPRINGS • 619-320- 
7262 PALM SPRINGS, CA • COMPUTERLAND OF 
SAN BERNARDINO • 714-886-6838 SAN 
BERNARDINO, CA • COMPUTING 
TECHNOLOGY • 619-375-5744 RIDGECREST. CA 

• DATA SYSTEMS • 818-907-91 10 SHERMAN 
OAKS, CA • HEATH/ZENITH • 714-776-9420 
ANAHEIM, CA • HOUSE OF COMPUTERS • 213- 
479-7746 LOS ANGELES, CA • J.F. COMPUTER 
SOLUTIONS • 916-442-1794 SACRAMENTO, CA 

• JAMECO • 415-592-6718 BELMONT, CA • 
LEARNING TREE • 714-667-1575 SANTA ANA, 
CA • P.C. UPGRADE • 818-708-2853 VAN NUYS, 
CA • R.N.D. ENTERPRISE • 818-341-2112 
CHATSWORTH, CA • SOFTWARE CITY • 619- 
560-6886 SAN DIEGO, CA • SOUTHERN 
CALIFORNIA CAD ENGINEERING • 818-700-0398 
CANOGA PARK, CA • WORDSOURCE • 818-287- 
3800 TEMPLE CITY, CA • WESTERN COMPUTER 
GROUP • 213-337-1553 CULVER CITY, CA • 
GOLDEN MICRO • 303-278-0200 GOLDEN, CO • 
NATIONAL COMPUTER • 303-650-5522 DENVER, 
CO • COMPATIBLE SYSTEMS • 203-278-4555 
NEWINGTON, CT • ELECTRONICS PLUS • 904- 
371-3223 GAINESVILLE, FL • DIGITAL SERVICES 

• 404-872-5032 ATLANTA, GA • RAY-KAR 
COMPUTERS • 808-533-7600 HONOLULU, HI • 
COMPUTER SHOPPE • 504-454-6600 METAIRIE, 
LA • STATEWIDE TEACHING AIDS • 318-443- 
0349 ALEXANDRIA, LA • BUTLER FLATS 
ASSOCIATES • 617-997-7131 FAIRHAVEN, MA • 
CORD CABLE COMPANY • 507-282-7252 
ROCHESTER, MN • TEAM ELECTRONICS • 507- 
387-5831 MANKATO, MN • EXECUTIVE 
BUSINESS MACHINES • 704-294-2811 HICKORY, 
NC • AMERICAN BUSINESS PRODUCTS • 201- 
569-0853 ENGLEWOOD, NJ • OTTO 
ELECTRONICS • 609-448-9165 EAST WINDSOR, 
NJ • COMPUTERS UNLIMITED • 516-333-2266 
JERICHO, NY • EXECUTIVE COMPUTER • 516- 
368-2554 EAST NORTHPORT, NY • FACILITIES 
MANAGEMENT CONSULTING • 212-227-2317 
NEW YORK, NY • HARBOR RESEARCH 
CORPORATION • 716-473-8963 ROCHESTER, NY 

• UNICORN ELECTRONICS • 607-798-0260 
JOHNSON CITY. NY • FORCE 4 DP SUPPLIES 
503-620-8888 PORTLAND, OR • PACIFIC 
DATAWARE • 503-620-9858 LAKE OSWEGO, OR 

• BFI COMPUTER SUPPLIES • 915-593-6767 EL 
PASO, TX • P C COMPUTER PRODUCTS • 713- 
367-4431 THE WOODLANDS, TX 



The PC1025 control unit is available 
from additional authorized DATA 
SPEC dealers not listed above. 
Contact your local dealer for more 
information. 



218 BYTE- OCTOBER 1987 



FEATURISTIC PROTECTION 

The PC1025 by DATA SPEC 

With full-featured convenience and sleek contemporary styling, the 
PC 1025 is a new dimension in control protection. 

Its slim-line design, color-matched to your PC, fits easily on top of your 
computer without intruding into your workspace. 




The PC 1025 combines the complete safety 

of system and modem surge protection, the easy 

convenience of five lighted power switches and a Master Switch, 

with the versatility of a built-in 
data switch. Added features 
include a digital clock, LED 
status lights, and more. 



FEATURISTIC protection that gives you more system control 
and convenience than you thought possible from one source. 



[ooaieHxri 

A DIVISION OF ALLIANCE RESEARCH CORPORATION 

20120 mummer Street • P.O. Box 4029 • Chatsworth, CA 91313 

IN JAPAN: DATA SPEC JAPAN LTD. Tokyo Japan. 



THE ULTIMATE IN COMPUTER ACCESSORIES 



©Copyright 1967 Alliance Research Corporation 



Circle 78 on Reader Service Card (Dealers: 79) 



OCTOBER 1987 -BYTE 219 



REVIEW: LASER PRINTER TIMES FOUR 



20,000 pages. The toner cartridge has a 
normal life of about 1500 pages, which is 
shorter than the life of toner cartridges in 
the other printers. According to the man- 
ual, some of the toner goes to fill up 
spaces and channels inside the machine, 
so the initial toner cartridge lasts only 
about half that long. 

The Ricoh engine's power require- 
ments are comparatively modest— only 
600 W at the most; this means the printer 
can share electrical circuits with other de- 
vices. It is also extremely quiet, even for 
a laser printer. 

Epson GQ 3500 

The GQ 3500 does not support LaserJet 
emulation without an add-on card, which 
was not available for this review. (The HP 
LaserJet and Diablo 630 emulation cards 
are now available.) Without emulation 
cards, you're stuck with Epson LQ emu- 
lation, and not all software supports it. 
Freelance Plus doesn't, so I could not 
perform the full-page graphics test. 

The interface card on the GQ 3500 can 
be removed to reveal several sets of DIP 
switches. You can set the switches to em- 
ulate either the LQ 1500 printer or a ge- 
neric, text-only line printer. A change to 
LQ is advisable if you plan to print graph- 



ics. Emulation cannot be set through soft- 
ware control. 

Many printer functions must be set by 
software. This includes normal printer 
operations, plus those operations unique 
to laser printers, such as printing multiple 
copies. The GQ 3500 also allows the def- 
inition of circles, boxes, and shading. 

The printer has a two-digit LED status 
display that keeps you posted on the prog- 
ress of the printer as it warms up and goes 
through its self-test. It displays a combi- 
nation of numbers and symbols, which 
can be translated using a function table on 
the top of the printer or a reference sec- 
tion on the control panel. The reference 
section is printed in dark-green letters on 
a black background and is difficult to 
read from a distance. The printer does 
not print a status page. 

The speed benchmarks were similar to 
the Laserline 6's, reflecting the common- 
ality of the Ricoh engine. While each test 
took a couple of seconds longer than on 
the Laserline 6, the claimed speed of 6 
ppm was supported. The other details of 
the Ricoh engine operation are shared 
with the Laserline 6 and have been dis- 
cussed in that section. 

The Epson GQ 3500 is quiet and works 
well, but it misses the mark when com- 



pared to the competition. The lack of 
standard LaserJet emulation, or even 
Epson MX or FX emulation, is a serious 
handicap. 

Final Printout 

Laser printers are adding functions and 
dropping in price. The Okidata Laserline 
6, Epson GQ 3500, and Hewlett-Packard 
LaserJet Series II are certainly examples 
of that, and they provide excellent value. 
The Kyocera F-1010 looks instead to fea- 
tures and speed, as well as an extremely 
long life. All these printers perform 
adequately . 

Before choosing a laser printer, you 
must first determine your needs. Do you 
need fast text output or graphics? Will the 
software you use support a particular 
printer? Is there an upgrade path that will 
let you add fonts or memory to the 
printer? Because of the proliferation of 
new laser printers, you'll have to careful- 
ly examine the specifications for each. ■ 

Wayne Rash Jr. is a member of the profes- 
sional staff of American Management 
Systems Inc. (1777 North Kent St., 
Arlington, VA 22209), where he consults 
with the federal government on 
microcomputers. 






Whole Earth Electronics 

WHOLE EARTH^ 
XT Turbo 

Complete 20 MB System 

Complete plug-in-and-use system 

I The Confident Compatible. Superb 

workmanship. Assembled in our Berkeley 

x^ California plant and lab tested to 

ensure quality and compati- 

' : '":.,,.-^ bility! Each computer gets a 
48-hour burn-in. 

Features Include: 

• Dual dock speed/keyboard switchable 4.77Mhz and 8Mhz • 640K RAM • 150 watt 
power supply • Eight expansion slots • Runs all MS-DOS programs • BRAND NEW 
(not refurbished) famous make 20MB hard drive and controller card • 360K famous 
make floppy drive • AT style 85 key keyboard w/LED status indicators • Mono- 
graphics (Hercules compatible) card w/printer port • High resolution TTL amber 
screen monitor • System assembled and tested • FULL ONE YEAR LIMITED 
WARRANTY • 30-Day return for refund policy • FCC Class B approved 



Free Freight 



About 
Whole Earth Access 

'The Company that 
Calls You Back"™ 

Whole Earth Access stores, well known 
throughout California, now sell the finest 
computer products nationwide. We 
provide total customer satisfaction at the 
lowest possible prices. We have 400 
employees, we perform over 10,000 
customer transactions a week, we do 
over $50 million business per year! In all, 
we have the ability and commitment to 
take care of our customers. 

S 



I -800-323-8080 



FOR MORE INFORMATION AND ORDERS CALL TOLL FREE: 
I FREE! 

Whole Earth Software 

Catalog with each 

CPU purchase! 

For CA calls or customer support: 415-653-7758 
WHOLE EARTH ELECTRONICS • 2990 7th Street • Berkeley, California 94710 

Calf for freight and COD information Errors subject to correction 

AM returned fterm must be as new, not modfied or damaged, with of manuah, warranty cords ond packaging intoct Returned rtcrrw must bear a Whofe Earth Electronics Return Merchandise Authorization on the shipping 
tabd to recerve o fut credit, ond must be shipped prepaid ond insured. Please coll Whole Eonh Efectrtywcj for more information. ABOUT OUR WARRANTY: WholeEarxh Occwnics wHI repair or rephce. atitsoption, any 
defective products or ports at no additional charge, provided that the customer returns the product, shipping prepaid, to Whole Earth Access. 



220 BYTE- OCTOBER 1987 



Circle 27 on Reader Service Card 



tOTH WORLDS 







■ ■■ 


!-" ■ ■ ».... s ?■*• 


«!■■■ 

iii 




■ ■ ' » 


maaanaB ■ BaiaiiaBiaaai 


■ 


BIBB ! 1 


laaMaaaiiilBiaeBaaBaaBaaai 


■ 


■ ■■ 


U lliiiii 


■■■■■■■■■■gin ■ hn a ■■■aliaa) 


■ in 


■■■ 


i asaaftiia 




■««■■■_ 


■ ■■■ 


iisnaiaal 


lamaa « ■ mil 


asaai ■ 


■ ■ 


iraiimM 


■■ma a laaaiBI 


iiaaa 


■■ 


laiBBIBIBB 


■BBBBBB 


* aa 


■I 


HUB 


I1UUIHI 


I1IUHI flHIII 


■■■ 


■ 


Iii» 


■BlaalMI ■ 


SBBlin a Sm«« 


ill 


II 


■■B ■ 

a 5s a 


iiiiiiiini 


■■■■"V SSSi 


Sis* 




laiHlHU) 


MHNM II 


'11 _ 


■1 




■aa 


aa ■ 


■1 


■■■■■ 


inn Bill 


■■ 




■■1 


■■■■■ 


•■ III ■■ 


■■ ■ 

■ B ■■■■■■■■ 

■ ■ „ llll III! 


III! 


■MMBB 


ibb 3 


■Ill 


■ ■■■■ 


IBBIB 


■1 


■ ■■■■ 


IBBB 


II II 

% m 

mm 

aiiam 




1 


■ ■■■ 


IBM 


■■■■■■ 




■■■ 


■in 


■■■■ 
««■■ 


■ « 


iia 


IBBB 


III 


II 


•EiiMi 


Ill 


■■ 
■■ 

■ 


■ 


fisiana 

B *5i J 


iS 



1 »■■•« H U M aBBM* amouaM 

B 'HIBB BBaaBBSaaBBBaMBI* MMBaiHMKans .'117 

■ MWHiaJil .'■■■„ 



■Mill II 


iaK»i»a»ana» 
nniRHlRMiimi 


::: 

a 


IT ■llttlllll 


iiiaiiiiaiaiiia 


B^MHMHMI 


iHBBiiiiaiaiia ■ 


* iBitnai 


iaaaaaaaMa«Ba»« 




llllllllllli 


iiiiiiiiaiiHia 


"»ssp6:r 


^asaSSaSisssa s 


nasi iMiiii 


liiiiiiiiiia 


m «mmi 


i«5«MM«M«aiE« 


«MM*£t aaaaai 


laaMHiaiaai 


iiaiaiaiaii; 


i mini 


■«■■■■■■•« .■■■ ■■ bib i 


■iliaiBiaiiiii 


1 ■ -■ „ 


IHHIHIIII 


■ ! a 


■at imiiii 




iiiiii 


B 


aaaia 
nasi 


Hill 

■■■■■a 


a 


ia«a 
■■■ 


■a s Ss 


ft 



CGA 
EGA 

VGA [PS-2] 
MUTLI-SCAN / ANALOG 



DUAL SCAN 

GREEN / AMBER / WHITE 

132 COLUMN 



ALL WITH TWO- YEAR WARRANTY 




ILS. HEADQUARTERS: CTX INTERNATIONAL, INC. 

260 PASEO TESORO/WALNUT, CA 91789 

TEL: (714) 595-6146 FAX: (714) 595-6293 



EASTERN REGIONAL OFFICE 

CONTINENTAL TECHNOLOGY, INC. 

300 McGAW DRIVE 

EDISON, NEW JERSEY 08837 

TEL: (201) 225-7377 FAX: (201) 225-6355 



NEW ENGLAND AREA 

MICRO-REP 

141 BROOKS ST., SUITE NO. 1 

BRIGHTON, MA $2135 

TEL: (617) 254-1469 FAX: (617) 783-4877 



FACTORY 

CHUNTEX ELECTRONIC CO., LTD. 
ROOM 401, NO. 50 SEC.1, 

HSIN-SHENG S. RD., 

TAIPEI, TAIWAN, R.O.C. 

TEL: (02) 3921171 FAX: (02) 3919780 



Circle 70 on Reader Service Card (Dealers: 71) 



OCTOBER 1987 -BYTE 221 



TOP-LAN 




NETWORKING! 




THE MOST 

OST 

FFECTIVE 
METHOD TO 
OBTAIN 





MAXIMUM PC 
AUTOMATION! 




STATE-OF-THE-ART ^| 
CONCEPT AND TECHNOLOGY! 

The Top-Lan™ 1+ system is the most cost 

effective method to obtain local area 

networking of personal computers for sharing 

resources. It's a system compatible with 

IBM and Novell networks. The 1+ has highly 

productive capabilities for schools, offices, 

retail outlets (POS systems), factories 

and for cataloging. 

STANDARD TOP-LAN™ 1+ starter kit contains 

connections for two IBM PCs, XTs or ATs, 

including 2 top link interface cards, 10 

meters of network cable, a pair of terminator 

plugs, installation and operation manual, 

operational file server software and drivers 

for Novell and 1MB netbios. Future system 

expansion is convenient! Installation is 

quick! Access to the system is secure! 

It's a new system concept to maximize 

existing PC resources. 

CONTACT TOP-LAN™ today for the application 

of a TOP-LAN™ 1+ system to your operation; 

ALSO AVAILABLE: Autoboot card for remote 

stations, Ethernet E+ card, and other accessories 

to complete your installation. 

ATTENTION DISTRIBUTORS, MFGRS. REPS: 

Call us today to get in on the ground floor 

of the TOP-LAN™ national distribution programs. 




222 BYTE- OCTOBER 1987 



TOP-LAN 

11005 West 60th, Suite 320, Shawnee, KS 66203 
P.O. Box 15945-312, Lenexa, KS 66215 



'IBM is a trademark of International Business Machines Corp. 
"Novell is trademark of Novell. Inc. 



Circle 278 on Reader Service Card (Dealers: 279) 



WARE REVIEWS 



□ 



Three C Language 
Screen-Utility Packages for PCs 



Jonathan Robie 



Writing an easy-to-use interface 
for a program accounts for a 
large part of the time spent de- 
veloping applications, and it 
often accounts for the majority 
of the code. Screen utilities pro- 
vide the programmer with high- 
level tools for developing windows, 
menus, and data prompts. The look and 
feel of the user interface in a prototype 
program can be rapidly modified because 
these packages supply libraries of ready- 
to-use screen and keyboard functions. 
Appropriate inputs from the user cause 
the library functions to call core func- 
tions that accomplish the program's pur- 
pose. Once all parties agree on the user 
interface design, the core functions can 
be written, tested, and integrated into the 
program. 

The products reviewed here all provide 
for menus, data-entry forms, on-line 
help, and keyboard and windowing func- 
tions using the C programming language. 
Although they allow some flexibility in 
program design, these packages also 
make assumptions about the user inter- 
face that can be different from your own. 
You can obtain the source code for each 
product (usually at additional cost) and 
modify it to suit your needs. All three 
companies allow you to develop commer- 
cial programs with their packages 
without having to pay royalty fees. 

The Packages 

Vermont Creative Software's Windows 
for Data version 2.05 was built using the 
Windows for C version 4.12 windowing 
library, and the two packages together 
cost $395. I received both Windows for 
Data and Windows for C for this review, 
and I will treat them as one package. A 
free demonstration disk is also available. 
The two packages together including 
source code costs $1290. Although the 
package I reviewed is for use with MS- 
DOS, you can obtain versions that sup- 
port the Unix, Xenix, and VMS operat- 
ing systems. 
Custom Design Systems' C- Worthy 



A look at the Windows 

for Data, C-Worthy, and Vitamin C 

screen utilities 



Library version 1.0 is marketed by Solu- 
tion Systems and costs $295. C-Worthy is 
available with source code for $495. A 
free demonstration disk is available, and 
it contains the tutorial on disk. C- Worthy 
also supports a variety of MS-DOS com- 
puters that are not IBM PC-compatible 
(e.g., the TI Professional, Victor 9000, 
NEC APC III, and NEC PC 98) through 
the use of machine-specif ic overlays. 

Vitamin C, from Creative Program- 
ming Consultants, costs $225 and in- 
cludes the source code. It comes with two 
demonstration disks. If you return it 
within 30 days and have used only the 
demonstration disks, the company will 
refund your money. If you need source 
code for your program development, then 
Vitamin C will be significantly less ex- 
pensive than the other packages. 

I tested these products on an Epson Eq- 
uity II computer with an NEC V30 CPU, 
640K bytes of RAM, and a 20-megabyte 
hard disk drive. All three packages re- 
quire a minimum of 256K bytes of RAM, 
and a hard disk drive is recommended for 
program development. 

Windows 

The data-entry, menu, and help facilities 
of these programs are built on extensive 
windowing libraries. Windows for Data's 
windowing libraries are sold as a separate 
product called Windows for C, which 
comes with its own manual. The other 
two programs document their windowing 
routines along with other routines. All 
three programs support multiple pop-up 
windows with borders and titles, text 
display with automatic word wrap and 
scrolling, and assignment of display attri- 
butes to a window. 

C-Worthy and Vitamin C support vir- 
tual screens— windows that are larger 



than the screen display. You can 
only view as much of the con- 
tents as will fit in the screen 
display at a given time, so C- 
Worthy has a function that lets 
you scroll through the window 
manually, and Vitamin C auto- 
matically adjusts the window so the text 
at the cursor position is always visible. 
Windows for Data does not support virtu- 
al screens per se, but provides the same 
functionality through memory files. The 
term/iVe is misleading: A memory file is 
an array of pointers to strings associated 
with a window that are treated like a file. 
These strings reside in the computer's 
memory for fast access. A function is 
provided that lets you scroll through the 
memory file and return control to the 
program by hitting the Escape key. 

Keyboard Handling 

I was pleased with the powerful key- 
board-input routines in all three pack- 
ages. Each lets you associate a function 
key with a C function that's executed 
whenever the keyboard-input routines de- 
tect a key press on the associated key. For 
example, in Windows for Data, you can 
define the F2 key to display a help screen 
by using keyd_def (-K_F2, kdhelp( ) ) , 
where kdhelp ( ) is a help function. Each 
package supports keyboard-idle func- 
tions—user-written functions that exe- 
cute whenever the input function doesn't 
detect new keystrokes for processing. A 
keyboard-idle function might be used to 
update the time display on the screen. 

Only Vitamin C supports keyboard 
handlers and keyboard reassignment. 
Keyboard handlers are called prior to the 
Vitamin C input functions, allowing the 
handler to perform text filtering or con- 
version. The programmer can also reas- 

continued 

Jonathan Robie (do Software by Design, 
P. O. Box 26121, Lansing, Ml 48909) is a 
freelance computer consultant. He has 
an M.S. in computer science from Michi- 
gan State University. 



OCTOBER 1987 • B Y T E 223 



REVIEW: THREE SCREEN UTILITIES 



sign the keyboard definitions at run time. 
For example, the text editor has its own 
table of keyboard definitions, so you can 
have one set of assignments for the text 
editor and one set for all other data entry. 

Menus 

All three packages have high-level routines 
for creating and processing menus. Table 1 
lists some of the menu features of these 
packages. Each package stores menus as a 
linked list of menu items. The first step to 
using a menu is to initialize the menu struc- 
ture. In Windows for Data, the size and at- 
tributes of the menu are specified with this 
call. Vitamin C defines a menu style, then 
specifies that style in the initialization call. 
Since C-Worthy automatically determines 
the size, placement, and attribute of the 
menu, you simply declare the beginning of 
a list. 
The second step is to declare the items 



on the menu. Windows for Data specifies 
the relative coordinates for each menu 
item and gives pointers to functions or 
submenus that are activated when the 
item is chosen. Vitamin C positions the 
items automatically within the menu, 
but, like Windows for Data, requires the 
programmer to specify the menu function 
in the definition call. C- Worthy takes a 
different approach: Instead of defining a 
function for each item, it calls a general- 
purpose function when the item is se- 
lected. This function handles all menu 
choices and has a single input parameter 
that stores the user-selected item. Other 
functions can be called or additional 
menus defined within this function. 

The third step is to call a menu-pro- 
cessing function. In all three packages, 
this function handles the chores of high- 
lighting menu choices, moving the cur- 
sor, and returning the user's response. 



Table 1: Menu options for the three packages. Vertical menus are menus in 
which the items are arranged from top to bottom. Lotus-style menus are 
horizontal; items are placed next to each other on a line. A pop-down menu 
is a pull-down menu that displays its contents without requiring a pull-down 
action. Pop-up and pull-down menus are two different ways of providing a 
second-level menu: Pop-up menus are displayed automatically when the item 
on the primary menu is selected; pull-down menus are displayed when the 
user highlights the item and requests the second-level menu with the Return 
key or the down arrow. Menu-level help is context-sensitive help that 
explains how to use the current menu; item-level help explains only the 
currently highlighted item. Item-level prompt strings are one-line prompts 
that appear when an item is highlighted to explain the purpose of the item. 
Initial character selection allows the user to choose an item on a menu by 
typing the first character. Default placement positions the menu on the screen 
without having the position specified by the programmer; manual 
placement allows the programmer to specify the location of the menu. A menu- 
processing function is a function that displays and controls the menus, 
calling the appropriate functions when choices are made. Check marks are 
marks that appear next to items on a menu to indicate program status. 
Separators and blank items are formatting options used to group items on a 
menu. Unavailable items are used to indicate that some options are 
currently inactive and cannot be selected. 

Menus 



Vertical 

Lotus-style 

Pop-down 

Pop-up 

Pull-down 

Menu-level help 

Item-level help 

Item-level prompt strings 

Initial character selection 

Default placement 

Manual placement 

Menu-processing function 

Check marks 

Separators/blank items 

Unavailable items 



Windows for 


C-Worthy 


Vitamin C 


Data 






Yes 


Yes 


Yes 


Yes 


No 


Yes 


Yes 


No 


Yes 


Yes 


Yes 


Yes 


Yes 


No 


Yes 


Yes 


Yes 


Yes 


Yes 


No 


Yes 


Yes 


No 


Yes 


Yes 


Yes 


Yes 


1 


Yes 


No 


Yes 


No 


Yes 


Yes 


Yes 


Yes 


No 


No 


Yes 


No 


No 


Yes 


No 


No 


Yes 



Fa secondary-level menus only. 



The menu-processing function regains 
control after the item functions are 
called, and an item function can return a 
value to signal the menu processor to stop 
the program. 

Although Vitamin C provides more 
options for pop-down and pull-down 
menus, Windows for Data places the 
menus on the screen automatically. This 
is a great convenience, because the place- 
ment of secondary menus depends on the 
location of the items on the primary 
menu, and Windows for Data will adjust 
the secondary menus automatically when 
the primary menu is altered. Like the 
other packages, Windows for Data lets 
you select a menu item by typing the first 
character, but, unlike the others, it does 
not allow the programmer to require con- 
firmation. This makes it possible to de- 
velop menus where you accidentally 
make choices by hitting the wrong key. 

C-Worthy does not provide pop-down 
or pull-down menus. Instead, C-Worthy 
automatically centers all menus on the 
screen and uses windows to display them. 
The active menu is highlighted by the 
menu-processing routine. This means 
that menus developed with C-Worthy 
have a consistent appearance, and it is 
easy to develop the menus because much 
of the work is done for you. 

Data-Entry Forms 

The three packages take different ap- 
proaches to defining data-entry forms, 
which are displays that prompt the user 
for data. C-Worthy and Windows for 
Data treat forms much like they treat 
menus: First you define the form, and 
then you add fields and text strings to it. 
Finally, you call a function that handles 
the user's interaction with the form and 
stores the response. The form is stored as 
a linked list in both packages. 

Vitamin C doesn't have data-entry 
forms; instead, it defines a set of fields and 
their relative placement within the current 
window. The a t say get ( ) function posi- 
tions the cursor, prints the prompt string, 
and sets up the data-entry field. All input 
fields are placed in a "get table." The 
function readgets ( ) controls all user in- 
put based on the entries in the get table, 
and then deletes all entries from the table 
when data entry is finished. 

You must specify the form's coordi- 
nates in Windows for Data when the form 
is defined. Next, you specify the location 
of every field. You can define the prompt 
and the field in one call, and the field is 
automatically placed next to the prompt. 
However, you can corrupt memory if the 
placement of the fields is not consistent 
with the size of the form. This is an easy 
mistake to make, as the form size must be 

continued 



224 BYTE- OCTOBER 1987 



FREE, ♦♦Perfect Monitor 
Comparison Kit 

Return this card or call today: 1-800-553-0305 

Offer expires: December 3 i , 1987 

□ V/ 17 O I want to preview the most important innovation since the computer. 
\ £ll3 • Send my Kit today, including viewfinder and four-color slides. 

NOTE: To receive your FREE Kit, you must complete the information below: 

Name Title 




Company Name- 
Address 

Zip Code 



_City_ 



_State_ 



.Phone # L 



Product usage: Business □ Personal □ 
Application (e.g., Graphics, spreadhsheet, etc.) 



Purchase Time Frame: □ Within 1 month □ Within 1-3 months □ Within 3-6 months □ Over 6 months 

Purchase Quantity: □ Single purchase □ 2-20 units □ 21-50 units □ 51-100 units □ Over 100 units 

What best describes your □ Recommend Are you interested in a 

involvement in the purchase rj i n fl uen ce product demonstration? ^ £JitTH 

decision? (Check any that apply.) nPurchase DYes D No 



data 
systems 



10096/080187/20029 



<cj 1 987, Zenith Data Systems 



THE QUALITY GOES IN BEFORE THE NAME GOES ON 



BUSINESS REPLY MAIL 

FIRST CLASS PERMIT NO. 87 MT. PROSPECT, I L 
POSTAGE WILL BE PAID BY ADDRESSEE 

data 
systems 

Perfect Monitor Program 

P.O. Box 7618 

Mount Prospect, I L 60056 




NO POSTAGE 
NECESSARY 
IF MAILED 
IN THE 
UNITED STATES 




When Zenith Invented The Perfect Monitor 
The Industry Took A Giant Leap, 



In the harsh light of day, no other monitor 
compares with Zenith's Perfect Monitor. 
The breakthrough of flat technology has 
redefined the monitor industry forever. 
The Perfect Monitor will redefine your 
expectations with one look. 

50% brighter. Vastly enhanced contrast. 
Colors, richness and highlights that leap 
off the perfectly flat screen. Eyestrain and 
glare are virtually unheard of. 

© 1987, Zenith Data Systems 



Backward and Forward Compatibility. 
The Perfect Monitor is compatible with 
IBM's new Personal System/2® computers. 
And with Zenith's Z-449 Video Card, it 
accommodates Zenith PC's... plus other 
AT and XT compatible PC's. 

FREE...the Perfect Monitor Comparison 
Kit. To preview Zenith's new perfect 
monitor, send for your FREE Kit* which 
includes a viewfinder and 4-color slides. 



Or if you can't wait, call today: 

1-800-553-0305. 

'Offer expires 12/31/87. 

Personal System/2 is registered 
trademark of IBM Corp. 



TEMITH 



data 
systems 



THE QUALITY GOES IN BEFORE THE NAME GOES ON e 



OCTOBER 1987 • B Y T E 225 



Circle 37 on Reader Service Card 



HIGH PERFORMANCE 

(E)PROM/PLD 

MULT1PROGRAMMER 



BYTEK System 125 MultiProgrammers™ are 
based on an advanced modular design concept 
to support a World of Programmable Devices 
at affordable prices. Gradually, or all at once, 
you can build a full Universal Multiprogramm- 
ing site to program EPROM/EEPROMs, 
PLD/EPLD/GALs, PROMs and MICROs. 

BYTEK Multiprogramming Equipment are 
backed by Dedicated Customer Service, 
Unlimited Product Support, and a Full One 
Year WARRANTY. All Products are 100% 
USA Made. 



REVIEW: THREE SCREEN UTILITIES 




(S125-EG GANG/SET MultiProgrammer™) 

• GANG & SET EPROM Programmer: Pro- 
gram up to 8 EPROMS from RAM or 
MASTER, optional 16 Devices. 16 & 32-Bit 
Word Programming capabilities. 

• UNIVERSAL Programmer: Support for 
EPROM/EEPROMS, PLD/EPLD/GALS, 
Bipolar PROMS, 40 pin Micros, 3 Voltage 
EPROMS & EPROM Emulation. 

STANDARD FEATURES INCLUDE: 

• STAND ALONE: 25 Keys/32 Character LCD 
provide User Friendly Operation to EDIT, 
SPLIT or SHUFFLE DATA. 

• VERSATILE: MOC/CMOS/HMOS 
EPROM/EEPROM 24 & 28 Pin Devices. 
Options for 32 & 40 Pin Devices. 

• RS232 PC Interface: Optional IBM PC 
Driver. 

• Remote Control Data I/O* Compatible. 

CALL TODAY: 800-523-1565 

In FL: (305) 994-3520 
FAX: (305) 994-3615 
Telex: 4998369 BVrEK 

BYTEK offers a wide range of Models, from low 
cost (E)EPROM Programmers, to Universal 
MultiProgrammers™ : 

WRITER: 

EPROM only Programmers from $345 

S125-EL: 

Low Cost SET MultiProgrammer™ -$795 

GANG WRITER: just $695. Gang/Set 
Production EPROM Duplicator. 

S125-LADS: Dedicated PLD Programmer. 

S125-BP: Dedicated PROM Programmer. 

S125-GL: Universal EPROM/PROM/ 
PLD/EPLD/GAL MultiProgrammer™. 

UV Erasers from $47. 

FREE Device Support 
Updates for One Year. 

BYTEK-the #1 CHOICE in 

(E)PROM Programming Equipment. 



jBjJH 



COAPOAATION 



| INSTRUMENT SVSTCMS DMSJON 
1021 S Rogers Circle 
Boca Raton, FL 33431 

"Data I/O is a Registered Trademark of Data I/O Corporation. 



somewhat larger when you are using bor- 
ders. For this reason, it's important to 
use the debugger during the development 
of data forms, because it catches this type 
of error at run time. Some help is avail- 



able from the Forms Design utility, a 

simple program that lets you design 

forms by drawing them with a text editor. 

In C- Worthy you must specify the lo- 

continued 



Table 2: Data forms and field options for the three packages. I have used 
Windows for Data's terminology. Autoexit endsfotm processing after the last 
field is entered. For Automove, the cursor is automatically advanced to the 
next field when the current field is full. Normally the user must enter data by 
filling the fields in the order they are presented on the screen. Cursorfree 
lets the user enter data by moving the cursor to any field in any order. Noecho 
fields do not echo data to the screen. Initialblanks initializes all data-entry 
fields to display blanks before data is entered. The clear attribute clears the 
input field when the first printable character is entered. If afield is 
required, then some data must be entered in the field; if it is a mustf ill field, 
then the entire field must be filled. A picskip field strips all formatting 
characters before returning the variable: For example, a phone number 
entered as (51 7) 353-9297 would be returned as 51 73539297. Data in a 
protected field cannot be changed. The skip attribute means the cursor is 
never placed on the field. Data in a rtadjust or lftadjust/ze/d is right- 
justified or left-justified upon exit. A rtentry field lets a user enter numbers 
from right to left, as on a banking machine. Trailblanks specifies that 
blanks at the end of the string are to be retained as data. 



Forms and Fields 



Windows for 
Data 



C-Worthy 



Vitamin C 



Picture clauses 
Predefined types 

string 

extended string 

date 

time 

Boolean 

integer 

longint 

fixed-point 

float 

double 

scientific notation 

multiple choice 

text edit 

menu field 

Form attributes 

user-defined validation 
user-defined evaluation 
user-defined control 

Field attributes 

autoexit 

automove 

cursorfree 

noecho 

initialblanks 

clear 

required 

mustfill 

picskip 

protected 

skip 

rtadjust/lftadjust 

rtentry 

trailblanks 



Yes 

Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
No 
Yes 
Yes 
Yes 
No 
No 



Yes 
Yes 
Yes 



Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 



Yes 



Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
Yes 
No 
Yes 
No 
Yes 
Yes 
Yes 



Yes 
Yes 
Yes 



Yes 
No 
Yes 
No 
No 
Yes 
Yes 
No 
Yes 
Yes 
Yes 
Yes 
Yes 
No 



Yes 

Yes 
No 
Yes 
No 
No 
Yes 
No 
No 
No 
Yes 
No 
Yes 
No 
No 



Yes 
Yes 
No 



Yes 
Yes 
No 
No 
No 
Yes 
Yes 
No 
No 
No 
No 
No 
Yes 
Yes 



1 All string processing is extended-string processing. 



226 BYTE- OCTOBER 1987 



Who says you 
need naraware to 
speedupyourPC? 



Personal computers, like 
automobiles and yachts, are 
much more rewarding when 
they're operating at high speed. 

And, as with cars and 
boats, there's more than one 
way to get your PC moving. 

You can, for example, buy 
an expensive piece of hard- 
ware with "turbo" or "accel- 
erator" in its name. 

Or you can buy an afford- 
able piece of software with 
"Norton" in its name. 

Because the same Peter 
Norton who brought you 
the indispensable Norton 
Utilities™ now brings you 
the Norton Commander.™ 

And what is the Norton 
Commander? 

It's a power user's PC 
control program that lets you 
cruise through your data 
with the greatest of ease. 

While taking the hard 
work out of working with a 
hard disk 

Directory assistance. 
With the Norton Commander 
at your command, you can see 
your way through a sea of data 
faster than you can say "point 
and shoot." 

A compact pair of pop-up 
directory windows put your 
files— and a fleet of file man- 
agement functions— at your 
fingertips. 




oi0F TOUR COMPUTER 

" Poi *t and shoot 

operation. Quick 
disk navigation. 
Menu control 

ga? for power-users 
^IlSterJW 

F °^e,BM. P c andc(TOpata)te 






s^sssssjas-j- 



You can list your files any 
way you like them— by name, 
extension, size or date. 

You can scroll through 
them or page through them. 

Or use the special speed- 
search command to find them 
even faster. 

You can also inspect, edit, 
move, rename, delete, copy and 
whip your files into shape— at 
the stroke of a key or the 



nudge of a mouse. 
Automatic 
pilot 

Running your pro- 
grams is a breeze. 
Especially when you 
take advantage of our 
custom user menus. 
Or, if you want to 
take a convenient short 
cut, just point to your 
data and fire away. 

The Norton Com- 
mander will find and run 
the matching program. 
Automatically. 

How much memory 
oes it take to work all of 
these wonders? 
As little as 10K 
So it's no wonder the 
Infoworld Review Board 
found the Norton Com- 
mander so memorable. 

"Tops in its class" 
they said. "Loaded with 
useful features" that pro- 
vide "a new level of conve- 
nience for MS/DOS users." 
"The more we used it, the 
more we liked it!' 
You will, too. 
Unless, of course, you'd 
rather not operate in the fast 
lane. 

'j&ter Norton- 

COMPUTING 



Designed for the IBM® PC, PC-ATand DOS compatibles. Available at most software dealers, or direct from Peter Norton Computing, Inc., 2210 Wilshire Blvd. #186, 
Santa Monica, CA 90403. To order, call 213-453-2361 (VISA and MasterCard welcome). MCI Mail: PNCI. Fax 213-453-6398. ©1987 Peter Norton Computing. 



Circle 214 on Reader Service Card (Dealers: 215) 



OCTOBER 1987 -BYTE 227 



REVIEW: THREE SCREEN UTILITIES 



Name 


Windows for Data version 2.05/ 
Windows for C version 4.12 


C-Worthy Library 
version 1.0 


Vitamin C version 3.0 


Type 


Screen utilities 


Screen utilities 


Screen utilities 


Company 


Vermont Creative Software 
21 Elm Ave. 
Richf ord, VT 05746 
(802) 848-7738 


Solution Systems 

541 Main St., Suite 410 

South Weymouth, MA 02190 

(617)337-6963 


Creative Programming Consultants 
P.O. Box 11 2097 
Carrollton, TX 7501 1-2097 
(214)416-6447 


Format 


4 double-sided, double-density 
5 1 /4-inch floppy disks 


5 double-sided, double-density 
5 1 /4-inch floppy disks 


6 double-sided, double-density 
5 1 /4-inch floppy disks 


Computer 


IBM PC or compatible with 
at least 256K bytes 
of RAM 


IBM PC or compatible or several 
noncompatible MS-DOS machines 
with at least 256K bytes of RAM 


IBM PC and compatibles with 
at least 256K bytes 
of RAM 


Hardware Required 


Hard disk drive recommended 


Hard disk drive 


Hard disk drive 


Software Required 


Microsoft 4.0; Lattice 3.0 or 
higher; Aztec 3.40A or higher; 
Computer Innovations 2.3 or 
higher; Turbo C 1 .0 


Microsoft 3.0 or 4.0; Lattice 
2. 1 5 or 3.00; Aztec 3.4 or higher 


Microsoft 4.0; Lattice 2.1 5 or 
3.0; Aztec 3.20E; Computer 
Innovations 2.30; Datalight 3.0; 
Turbo C 1.0 


Language 


C 


C 


C 


Documentation 


426-page Windows for C 
Reference Manual; 428-page 
Windows for Data Reference 
Manual 


485-page C-Worthy Library; 
documentation on disk 


360-page Vitamin C User's 
Guide/Reference Manual/Tutorial 


Price 


$395 for Windows for Data and 
Windows for C; network for up to 
five users, $1 1 85; with source 
code, $1290; free demo disk 
available 


$295; with source code, $495; 
free demo disk available 


$225 with source code 



cation for both the prompt and the field. 
This doubles the number of function calls 
needed to define an average form, and 
you must modify the field placement any 
time the text of the prompt is changed. 
The text in the prompt string, like text in 
menus, is defined within a message li- 
brarian, which defines a symbolic con- 
stant used in your program whenever you 
wish to invoke the text. This allows text 
messages to be changed without recom- 
piling the main program, and it makes it 
much easier to change the text to different 
languages. Unfortunately, this means 
that the actual text of the message is not 
visible when you are writing the calls to 
define the form, making it difficult to 
place the field properly. Table 2 lists the 
most important field-entry features of the 
three programs. 

User-defined input functions allow 
your program to accept input in formats 
that you define yourself. This is conve- 
nient if the library's input format doesn't 
suit your data-entry needs. There are a 
number of ways to process form data 
fields, but generally they can be classi- 
fied as control options, validation op- 
tions, and evaluation options. 



An example of a control option is a pic- 
ture clause. A picture clause uses a control 
string that specifies what characters can oc- 
cupy a given position in the field. For in- 
stance, if the digit 9 in the control string 
means that only a digit can be entered in 
the position, then the picture clause 
99/99/99 allows pairs of digits to be en- 
tered between slashes for entering a date. 

Validation functions specify what type 
of input is considered valid. The picture- 
clause example given for dates does not 
force you to enter a valid date: You could 
enter 89/88/00. A validation function 
corrects this type of data-entry error. 

Evaluation functions determine what 
value should be stored in the data variable 
based on the validated contents of the in- 
put field. As an example of this, none of 
the packages accept fractions as floating- 
point numbers. However, one user might 
enter the value 0.5 in decimal notation, 
and another user might enter the value as 
a fraction (V2). If you can define a data 
type that allows the use of either format, 
you can avoid forcing the user to convert 
values from one form to the other. 

C programmers will recognize most of 
the types in table 2, but a few deserve 



special mention. Extended strings are 
strings that can include any extended 
ASCII character, which is useful when 
processing foreign language input. Multi- 
ple-choice fields present a list of options 
from which the user chooses. Text-edit 
fields call up a text editor and allow sim- 
ple word processing in a window. The 
final results are returned to the program 
as a string. 

Windows for Data supports signifi- 
cantly more form and field attributes than 
the others, and it supports all the prede- 
fined types except float, text-edit fields, 
and menu fields. C-Worthy provides ex- 
tensive support for predefined types, and 
the text-edit field is useful when trying to 
make your data-entry forms fit on the 
screen. Defining forms is awkward, how- 
ever. Vitamin C is relatively poor in fea- 
tures, but the syntax for defining forms is 
simple and intuitive. The programmer 
can add most of the missing features 
through programmer-defined routines 
that can be associated with the fields. 

Additional Features 

The context-sensitive help facilities of the 
three programs are similar. Windows for 



228 BYTE- OCTOBER 1987 



REVIEW: ADVANTAGE C++ AND GUIDELINES C + + 



Data and Vitamin C place all help mes- 
sages in a file, where they are indexed on 
a keyword. Special characters indicate 
the keywords, and all text between 
keywords is assumed to be a help screen. 
Keywords are specified when defining 
menus, items, forms, and fields, and are 
used to access the relevant help text. 

Windows for Data provides a function 
that reads the help file into memory so 
the program can use it; Vitamin C pro- 
vides a utility that indexes the help file so 
it can be accessed efficiently. C-Worthy 
has a special utility, called the help li- 
brarian, that is used to define help text for 
the application. All three packages allow 
help text to be defined and implemented 
quickly and painlessly. 

C- Worthy and Vitamin C both include 
simple text editors that you can incorpo- 
rate into your programs. This can be ex- 
tremely useful in programs that accept 
free-form text input: You simply define a 
window and call the editor. They have a 
good set of basic features: Both provide 
general cursor-positioning functions, 
word wrap, and cutting and pasting. Vita- 
min C also has a search function. 

Strengths and Weaknesses 

All three packages are suitable for profes- 
sional programming and for the overall 
design of user interfaces. You will be- 
come more productive using any one of 
these programs, and I did not find one to 
be clearly superior to the others. Your 
taste and needs will be important factors 
in choosing a package. Demonstration 
disks are available separately for C- 
Worthy and Windows for Data, and I en- 
courage you to obtain them if you want to 
evaluate these products. Vitamin C is 
available on a 30-day trial basis. 

Windows for Data gets high marks for 
flexibility in forms, and it is good at 
menus (although not quite as flexible as 
Vitamin C). Windows for C provides ex- 
tensive windowing facilities that can give 
your application a professional look. 
Windows for Data has a rich set of rou- 
tines that will not restrict you if you know 
how you want your screens to appear. 

Vitamin C provides the most options 
for menus. Macintosh fans will be 
pleased with its ability to duplicate the 
menus found on that machine. It would 
be more difficult to implement Macin- 
tosh-style menus with the other pack- 
ages. Vitamin C is fairly weak in han- 
dling forms, as it provides only a few 
field types and relatively few field op- 
tions, but the form-handling functions are 
easy to use and will be familiar to dBASE 
programmers. If you want source code, 
Vitamin C is the least expensive, and it is 
probably adequate for most users. 

C- Worthy does not have as many options 



as the other packages, but its predefined 
menu styles allow development of attrac- 
tive applications with less effort than the 
others. C- Worthy's screens are quite strik- 
ing, and I found myself imitating them 
when working with the other packages. 
However, C- Worthy is good only as long as 
you stay within its predefined formats. If 



you want high-level support for a variety of 
custom menus, C- Worthy will not be of 
help. On the other hand, if you intend to 
translate your program for use with foreign 
languages, you will appreciate the feet that 
in C- Worthy, all text is managed by the li- 
brarians and can be changed without modi- 
fying the program. ■ 



Advantage C + + 
and Guidelines C + + 

by Mark Mallett 



Advantage C++ and Guidelines C+ + 
are two of the first PC implementations 
derived from the AT&T C + + translator 
developed by Bjarne Stroustrup. 

C + + is a strict superset of C that adds 
facilities for data abstraction, in-line 
functions, and function prototyping. In- 
line functions let you avoid the overhead 
of procedure calls. Function prototyping 
ensures that procedures are used the same 
way they are declared. 

The new features in C + + mainly sup- 
port classes that give you the ability to de- 
fine new data types and opefators or to 
redefine already-existing operators (op- 
erator overloading). A class is a descrip- 
tion of data. It can include how the data is 
stored, as well as how, or even whether, 
the data can be accessed. A class can be 
derived from another class (base), in 
which case it inherits some or all of the 
properties of the base class. 

Advantage C + + version 1 . 1M3 (Life- 
boat Associates, $495) and Guidelines 
C + + version 1.1 (Guidelines Software, 
$195) each require an IBM PC, XT, AT, 
or compatible. A hard disk drive and 
640K bytes of RAM are recommended. 

C + + compilers are often referred to as 
translators because they produce C code, 
not assembly language or binary output. 
Thus, you must also have a C compiler. 
Advantage C++ works with either the 
Lattice compiler (version 3.0 or higher) or 
Microsoft C (version 3.0 or higher); 
Guidelines C++ requires Microsoft C 
(again, version 3.0 or higher). 

For this review, I used an Intelligent 
Micro Systems PC AT-compatible com- 
puter running at 10 megahertz, with 3.5 
megabytes of RAM and a 42-megabyte 
MiniScribe 28-microsecond hard disk 
drive. I used Microsoft C version 4.0, 
with MS-DOS 3.1. 

The main differences between these 



two implementations are in the documen- 
tation, the front end, and the price. I did 
not find any significant differences be- 
tween the libraries supplied. 

Starting Up 

The bulk of the documentation for both 
packages consists of Stroustrup 's book, 
The C+ + Programming Language 
(Addison-Wesley, 1986). Advantage 
C++ comes with a bookshelf -style box 
and binder, with some excerpts from 
AT&T release notes, a small amount of 
introductory material from Lifeboat, and 
some discussion of future packaging 
plans. A small, nicely printed user's 
guide is also included, but it doesn't say 
much that isn't said in Stroustrup 's book. 
Guidelines C + + documentation con- 
sists of essentially the same AT&T re- 
lease notes, bound in a full-size three- 
ring binder. The print quality leaves 
much to be desired; most of the pages are 
poor-quality photocopies. 

Installing either package is amazingly 
painless. For each, you insert the first of 
two disks and type install with the ap- 
propriate parameters, and after awhile 
you insert the second disk and hit Return. 
After that, you may have to do some mi- 
nor tinkering to set environment variables 
that C + + uses to find directories. 

One complaint that I have is that, 
unless you specify otherwise, the Advan- 
tage installation program puts some of its 
files (executables and include files) into 
the directories used by the C compiler 
(Microsoft ' s , in my case) . I prefer to keep 
different packages totally separate. An- 
other complaint is that, to avoid name 
conflicts with the C compiler's files, Ad- 
vantage gives some of its include files the 
extension .HXX. I'd rather have standard 
include-file extensions, so source files 

continued 



OCTOBER 1987 -BYTE 229 



REVIEW: ADVANTAGE C + + AND GUIDELINES C + + 



Advantage C++ version 1.1 M3 
Type 


Guidelines C + + version 1.1 


Type 


Translator 


Translator 


Company 


Company 


Lifeboat Associates 


Guidelines Software 


55 South Broadway 


P.O. Box 749 


Tarrytown, NY 1 0591 


Orinda, CA 94563 


(800) 847-7078 


(415)254-9393 


(914)332-1875 






Hardware Required 


Hardware Required 


IBM PC, XT, AT, or compatible with at 


IBM PC, XT, AT or compatible with at 


least 640K bytes of RAM (a hard disk 


least 640K bytes of memory (a hard disk 


drive is recommended); MS-DOS 2.0 . 


drive is recommended); MS-DOS 2.0 


or higher; Microsoft C version 3.0 or 


or higher; either M icrosoft C version 3.0 


higher 


or higher, or Lattice C version 3.0 or 




higher 


Language 




C + + 


Language 




C+ + 


Documentation 




Full-size three-ring binder with 


Documentation 


photocopied installation guide, reference 


Bookshelf-style binder with loose-leaf 


sheets, and release notes; The C++ 


user's guide, release notes, and The 


Programming Language by Bjarne 


C+ + Programming Language by 


Stroustrup 


Bjarne Stroustrup 






Price 


Price 


$195 


$495 





don't have to be modified depending on 
the compiler being used. 

These complaints, however, are sub- 
jective, minor, and solvable. The instal- 
lation program lets you specify another 
directory during installation. Then you 
can rename all the .HXX files, giving 
them .H extensions, provided that you 
keep them in a separate directory from 
the C compiler's include files. 

Translating and Compiling 

Both products follow similar steps in 
turning C + + source programs into exe- 
cutable files. First, the program is run 
through the C + + preprocessor. This is 
similar in function to the C preprocessor, 
removing comments from the source file 
and handling directives that begin with a 
#, and providing for insertion of include 
files, macro definition, and expansion. 
The output from the C + + preprocessor 
goes to the C + + compiler itself, which 
compiles it into C language source code; 
this is then run through the C compiler. A 
linker combines the code from one or 
more relocatable files, along with rou- 
tines from any run-time libraries used 
(including, at least, the standard routines 
supporting the C + + product and the C 
product used), and produces an execut- 
able program. 

To control the compilation process, 
Guidelines provides an array of batch 
files. For each memory model (small, 
compact, medium, large, and huge), 



there are four batch files, each of which 
takes a C + + source file to a particular 
stage in the compilation. One batch file 
runs the source file through the C+ + 
preprocessor; another preprocesses and 
translates to C source code; a third does 
these first two steps and also compiles the 
C source code; and the last carries out the 
first three steps and then generates an ex- 
ecutable file. 

The batch files, which are all hidden 
away in a subdirectory, are named in a 
way that makes it easy to remember what 
the names are. You can reference these 
batch files from a MAKE file; Micro- 
soft's MAKE utility had no trouble with 
them. Also, the Guidelines documenta- 
tion includes complete descriptions of 
how to run each phase of the C + + com- 
piler, in case what you want to do isn't 
covered in any of the batch files. 

Advantage C+ + supports small, com- 
pact, medium, and large model pro- 
grams. Instead of batch files, Advantage 
C++ provides a driver program that 
automates the compilation program. This 
program directs the process by invoking 
the C + + preprocessor and compiler, the 
C compiler, and, finally, the linker. Pa- 
rameters to this driver program can speci- 
fy various options, such as how much of 
the compilation process to perform, or 
whether to allow old-style function defi- 
nitions in order to compile plain C code. 
These options are given on the command 
line as a special character, such as a 



minus sign or an exclamation point, fol- 
lowed by an alphabetic character that 
identifies the option. 

One of the options to this driver program 
causes it to output the commands that it 
would execute, without actually executing 
those commands. You can use this option 
to build a batch file to be executed later. 
This is useful when you don't have enough 
memory to run both the compiler and the 
driver program plus any program that may 
be controlling it; in fact, with the programs 
I compiled, this technique was necessary 
when using Advantage C++ with Micro- 
soft' s MAKE utility. 

The command syntax for the driver 
program is completely documented, but 
Lifeboat should include specific docu- 
mentation for the individual compiler 
phases. The only way to learn the com- 
mand syntax is to vary the parameters to 
the driver program, run the program, and 
output the results to a batch file. Then 
you must look at the commands that it 
generates and find the relationship be- 
tween the options you typed and the com- 
mand lines it generated. 

Debugging C+ + Programs 

With either product, you can debug the 
C++ source files with Microsoft's 
Codeview debugger. Both products ran 
into problems with Codeview when non- 
in-line functions were defined in include 
files. With Advantage, Codeview will not 
enter into the include file; with Guide- 
lines, it gets stuck in the include file. The 
Advantage documentation notes this as a 
flaw in Codeview. 

Within Codeview, you must reference 
variables by their names as output by the 
C++ compiler, even though the C+ + 
variable names are shown in the source 
window. Both packages use the same 
rules for forming these names, and al- 
though the names are long and hard to 
type, the rules for constructing them are 
easy to figure out. For example, a struc- 
ture variable called strl has a member 
meml, declared as an integer. If the vari- 
able strl is on the stack, member meml 
would be referred to by the name 
_auto_strl._INT_jneml:. The storage 
class is attached to the beginning of the 
variable or member name, with under- 
scores in front of each class, variable, 
and member name. 

Messages from the C++ compilers 
are peculiar at times (especially when in- 
serting in-line functions, from which a 
lot of Sorry, not implemented mes- 
sages can result), but both products' mes- 
sages are peculiar in the same ways. In 
fact, I got both C++ compilers to give 
me an Internal error message. 

Both compilers have a habit of generat- 

continued 



230 BYTE- OCTOBER 1987 



Introducing 

A High-Performance 

Graphics Engine With 

A Low Sticker Price. 




Now the DEC Micro - 
VAX II® can be eq uipped 
with "four-on-the-floor." 

Here's a high- 
performance champion 
that's graphically superior. 

It's CalComp's new 
Formula 1™ Series. The hot 
little graphics engine that 
uses new, custom VLSI 
gate-array technology to give you as many as 
four workstations from a single MicroVAX II. 
Without excess power drain. Before CalComp 
got in the race, a MicroVAX II could gain 
graphics capability only by using multiple 
slots. Or with the addition of separate, bulky 
and expensive controller hardware. Now, 
there's no contest. 

With CalComp's Formula 1 Series your 
MicroVAX II gains a graphics capability that 
will set the designing mind free. Zoom, pan 
and update with turbocharged speed and a 
high-visibility 1280 x 1024 resolution. All in 
256 souped up colors on a flicker-free screen. 
Plus get 32-bit floating point CGI standard 
functionality as standard equipment. 

And don't worry about sticker shock. You 
can drive away with the entire Formula 1 
Series subsystem-graphics engine, high- ^" 
resolution color monitor, keyboard and f 
mouse— for only $6995. Or, try-out the \ 
Formula 1 Series engine alone for just 
$3995. It's your option. 



Naturally, our smooth-running Formula 1 
Series graphics engine is CalCompatible with 
other peripherals and software. For informa- 
tion and specifications call 1-800-CALCOMP. 
Or write CalComp, E 0. Box 3250, Anaheim, 
CA 92803. 

Drop the Formula 1 Series graphics engine 
into your MicroVAX II and see what it'll do. 
Because there's no other way to get high perfor- 
mance and four-on-the-floor at a price like this. 




i 



I :.r'dJ ' ' ' ' '.7.H IBU 1 \ V. 



DEC and MICROVAX II are registered trademarks of Digital 

Equipment Corporation. 

Formula 1 is a trademark of CalComp. © 1987 CALCOMP 



Circle 318 on Reader Service Card (Dealers: 319) 



Wedrawon 
yoiff imagination." 

^frCalComp 

A Lockheed Company 



OCTOBER 1987 -BYTE 231 



REVIEW: ADVANTAGE C + + AND GUIDELINES C + + 



Table 1: Operator overloading tests. In this test, I used C+ + operator- 
overloading techniques to change the way basic arithmetic and logical 
functions were compiled using the BYTE Sieve program without changing 
the source of the Sieve program itself "Unmodified" indicates the Sieve 
program without changes. "In-line substitution " redefines all arithmetic 
and logical operators, but does so using in-line operator procedures. 
"External substitution " reimplements all operators by using procedure calls. 
"External, no registers " is the same as "External substitution, " except that the 
operator functions do not declare their terms to be of class "register. " 



Compile time 
(in seconds) 



Execution time 
(in seconds) 



File size 
(in bytes) 



Unmodified 

Advantage 1 6 

Guidelines 15 

In-line substitution 

Advantage 1 9 

Guidelines 18 

External substitution 

Advantage 21 

Guidelines 20 

External substitution, 
no register 

Advantage 21 

Guidelines 20 



22 
22 



24 
24 



222 
224 



217 
217 



8048 
6824 



8080 
6852 



8464 
7220 



8448 
7204 



ing very long symbol names. This often 
causes the Microsoft C compiler to issue 
messages warning that the symbol names 
have been truncated to the first 32 signifi- 
cant characters. Error messages from the 
C++ compiler itself (again, both prod- 
ucts) do not necessarily refer to source- 
file lines in order; and although they are 
usually quite accurate (my favorite was 
Perhaps you forgot a ' ; ' after the 
'}'?), occasionally error messages have 
nothing at all to do with the problem. 

Finally, both C + + compilers emit 
spurious unreferenced values in the C 
code, from null constructors and destruc- 
tors. Since these are unnecessary, the C 
compiler filters them out. 

Benchmarks 

I modified the standard BYTE Sieve 
benchmark to perform 100 iterations 
rather than 10. (On my AT, 10 iterations 
were too fast to measure easily.) I then 
compiled and ran the benchmarks under 
both C + + products and compared the 
results to compiling and running under 
Microsoft C. Not surprisingly, there is 
very little difference in code size or exe- 
cution speed between the two C+ + 
packages. Both packages produce slight- 
ly larger executable files than does the 
Microsoft C compiler by itself; this is to 
be expected, because of extra start-up and 
termination code with C + + . 

One important aspect of type defini- 
tion is operator overloading— using stan- 



dard operators, such as + and < , to ma- 
nipulate variables of user-defined data 
types. To investigate the performance of 
operator overloading, I redefined the op- 
erators in the Sieve program and com- 
pared this to the same program using 
built-in operators. I chose the Sieve pro- 
gram because, while it makes heavy use 
of integer arithmetic and Boolean opera- 
tions, it uses only a small number of dif- 
ferent operators. To overload operators, 
you write C + + procedures to implement 
each operator. 

Taking a cue from one of the exercises 
in Stroustrup's book, I created a file to be 
included at the beginning of the Sieve 
program. This include file defines a class 
INT, to be equivalent to an int, and the 
appropriate operators for it. Class INT 
looks like this: 

class INT { 
int val; 

public: 

INT( inti ) { val = i; } 

INT0O 

int operator= ( int t2) ; 

int operator+ ( int t2) ; 

int operator- ( int t2) ; 

int operator+= ( int t2) ; 

int operator++ ( ) ; 

int operator<= (int t2) ; 

operator int( ) ; }; 

This definition defines a class INT that 
contains a single integer value and over- 



loads some arithmetic and Boolean oper- 
ators. I've also defined a way to convert 
from class INT to type int, so that binary 
operations on two INT types will also 
work. The bodies of all the operator func- 
tions are declared apart from the defini- 
tion of the INT class, to make it easier to 
change them from in-line to non-in-line 
for this test. 

I ran this benchmark in three ways: 
with the operator functions declared in- 
line, not declared in-line (external substi- 
tution), and not declared in-line but also 
with their second term not declared as a 
register variable. (The first term of a 
binary operator is always declared as a 
register variable.) 

Table 1 gives the compilation time, ex- 
ecution time, and executable file size for 
each scenario with each C + + system. In 
this test, the use of in-line procedure sub- 
stitution cost little in execution time over 
the original benchmark (24 seconds ver- 
sus 22 seconds for both products), nor 
was there a significant increase in file 
size. The penalty in execution time when 
in-line substitution was not used is not 
surprising: The added function-call over- 
head slowed the execution of the program 
by a factor of 10 (222 seconds for Advan- 
tage and 224 seconds for Guidelines, as 
opposed to 22 seconds for the base non- 
overloaded-operator version for both 
products) . Note that when the second op- 
erator was not declared as a register vari- 
able, the execution time improved slight- 
ly. This is also normal behavior in C 
programs; declaring a little-used variable 
as a register variable often costs more 
time to set up the register variable than it 
saves in accessing the data through a 
register. 

Operator overloading works well and 
efficiently in both packages. The benefits 
of operator overloading, and other as- 
pects of data abstraction, include clearer 
semantics and more reliable code, result- 
ing from the separation of datatype defi- 
nition and data use. Where operators can 
be implemented in small functions with 
in-line substitution, there is very little in- 
crease in size or execution time. Where 
in-line substitution is not used, you must 
bear the overhead of procedure calls; but 
keep in mind that implementing the 
equivalent operations in C involves func- 
tion calls that must be coded explicitly. 

I wrote a more extensive program, 
called Score, which uses the unique fea- 
tures of C + + to manipulate simple repre- 
sentations of melodies to test the unique 
features of C + + . All song elements are 

derivatives of a base class, SCORE 

ITEM. This program also defines input 
and output operators for each song ele- 
ment, to test overloading existing operators 

continued 



232 BYTE- OCTOBER 1987 



1JK 



Back To School Special - Save Over 50% 

Prices good through October 31. 



Getofftoa fast start with MIX C. Our comprehensive 
book and nimble C compiler will have you program" 
ming in C before you know it. 

Our book is your teacher. You'll start right away, compiling and 
executing C programs. The tutorial takes you step by step through the 
C language. You'll learn by example with a book that's chock-full of 
sample programs. And the programs aren't just fluff. They teach you 
the important C concepts. An amortization program teaches you how 
to use pointers to functions. A data base program teaches you how to 
manage memory dynamically. It's the best hands on training available. 

You'll love working with our C compiler. It's half as large and twice 
as fast as other C compilers. In fact, it's the only full featured C compiler 
that can be operated comfortably on floppy disks. And as you would 
expect, MIX C is easy to use. It produces a complete program listing 
with compile errors clearly identified and explained. If you've been 
frustrated by other C compilers, don't throw in the towel until you've tried 
ours. There's a big difference. 

Although it's small, MIX C is not a subset. MIX C supports the full 
K&R standard, including the extensions that are often omitted in other 
C compilers. MIX C comes complete with a comprehensive book, a 
standard library of more than 1 75 functions, a blazingly fast linker, and 
tools for optimizing your programs for minimal space or maximum speed. 
All of this is yours for the incredibly low price of $19.95. That's little 
more than the cost of most C books alone. So don't be left behind. Order 
your copy today and find out why everyone is switching to C. 

TO ORDER CALL TOLL FREE: 1-800-523-9520 

For technical support and for orders inside Texas please call (214) 783-6001 Or Contact one 
of our Distributors in Canada: Saraguay 1-800-387 -1288 • France: Info/Tech 1-43-4406-48 

• Australia: Techflow 047-586924 • Switzerland: DMB Communication CH-0-523-31817 

• England: Analytical 0703-262099 

System Requirements: MSDOS/PCDOS 2.0 or higher: 256K Memory; 1 Disk Drive or 
CP/M 2.2 or higher (Z80): 55K Memory: 1 Disk Drive (2 recommended) 
(Ctrace not available for CP/M) 




CTRACE DEBUGGER $19.95 



The perfect companion forMIXC 
is our exciting new Csource debug- 
ger. Ctrace is unlike any debugger 
you've ever seen. It brings your pro- 
grams to life on the screen. You'll 
see your variable values changing 
as you watch your C source code 
executing. The animated trace 
shows you the flow of execution, 
statement by statement. It's like 
watching the bouncing ball as 
the cursor dances over your 
C program. 

Ctrace is very simple to operate. 
Commands are executed with a 
single keystroke. Pop up menus list 
the command options. Pop up 
messages alertyou when anything 
important happens. There are 6 
windows of information: source, 
output, variables, watch, memory, 
and symbols. You can view as many 
as 4 windows atonce. The function 
keys make it easy to quickly choose 
among 8 different views. 

The combination of Ctrace with 
MIX C makes C programming a real 
joy. MIX C provides the power of a 
compiler while Ctrace provides an 
execution environment that's more 
elegant than an interpreter. 



SPLIT-SCREEN EDITOR$19.95 



Another great companion to the 
MIX C compiler is our split-screen 
editor. It makes writing programs 
even faster and easier. With the 
MIX Editor, you can compile, link, 
and execute your program at the 
touch of a key. Compiling is fast 
because the MIX C compiler reads 
the program directly from memory. 
Correcting errors is easy because 
the editor automatically positions 
the cursor to the first error in the 
program. The editor is similar to 
Micropro*s WordStar but with addi- 
tional programming features like 
split-screen, macros, and much 
more. Use it for all your programm* 
ing needs. 



ASM UTILITY $10.00 



Our ASM utility is available if you 
want to link assembly language 
functions to your C programs. It 
works with Microsoft's MASM or 
M80 assemblers. Call assembly 
language functions just like C func- 
tions. Call C functions from 
assembly language. Lots of useful 
assembly language functions are 
included as examples. 




Save $29.95 on the Works 
includes Editor, C Compiler, 
Ctrace, & ASM Utility 

Product Price Total 

_Ctrace ($19.95) $ 

_C Compiler ..... ($19.95) $ 

_ASM Utility ($10.00) $ 

_Split-Screen Editor . ($19.95) $ 

_The MIX C Works. ($39.90). $ 

(includes all of above) 

Subtotal $ 

Texas Residents Add 

7. 25% Sales Tax $ 

Add Shipping Charges ... $ 

In USA: add $5 per order 

In Canada: add $10 per order 

Overseas: add $10 for editor 

add $20 for compiler 

add $30 for Works 

Total of Your Order $ 



30 Day Money Back Guarantee 
Not Copy Protected 

Please check method of payment 

_Check _Money Order _MC/VISA 

Card * 

Expiration Date 

Please give name of computer 

Please check operating system 

_ MSDOS/PCDOS _CP/M 
Please check disk size 

_5«/4" _3Vz" _8" 
Please check disk format if CP/M 
_ SSSD _ SSDD _ DSDD 

Your Name 

Street „___ 

City . { ■ 

State Zip 

Telephone ( ) - 

Country 



'^dPT^^ 1132 Commerce Drive 
J LL/\, Richardson. Tx. 75081 
software (214) 7836001 

Ask about our volume discounts! 
Dealer Inquiries Welcome D 



Circle 187 on Reader Service Card 



OCTOBER 1987 -BYTE 233 



Circle 173 on Reader Service Card 





















, 


1 




1 

r 


r 


C 


N 


fKFAST 


■ 


11 






1 


n 


h 


E 


IN 


wm 


K 


3i 


3 


U 


UN 


f] 


:x. 


Take advantage of every last bit in your 386. All 32 of them. With Microport's real ' 
UNIX® System V/386,™ the only industry standard, multi-user multi-tasking way to 
push every sinew of silicon in your 386 to its absolute limits. Get 80386 and 80286 
protected mode. 8086 emulation. Demand paged virtual memory (up to 4 gigabytes) 
...get almost unlimited speed and power. And, you can 

get network support, DOS under UNIX, extended soft- RcCll UNIX $199 
ware development tools and more. Starting at $199.00. m^^m^^HBH^HH 

Call fast for free info and a UNIX discount coupon. 
(800)722-UNIX/(800)822-UNIXinCA '^^ r~ 

M 1 CRDPORT 
UNIX is a registered trademark of AT&T. © 1987 Microport Systems, Inc. 



UTAH 



COBOL 



NEW 

VERSION 4.0 

69! 5 



! 



For IBM^C's, XT's, AT's and other DOS machines. 
This is the oneyou've heard so much about- with fast 
compile times, small object code modules, no royal- 
ties, and clear error messages. Version 4.0 is based 
upon ANSI-74 standards with new features including: 

• Multi-key Indexed files with up to 24 keys. This advanced feature requires the software 
package Btrieve®which is optionally available. 

• Windowing, pop-up's, color and overlays. This advanced feature requires the software 
package Saywhat?!™ which is optionally available. 

• ACCEPT numerics with decimal point alignment, numeric checking, AUTO-SKIP, SECU- 
RITY, LENGTH-CHECK, EMPTY-CHECK. 

• Fast memory mapped DISPLAY'S (1, 5) ERASE, BEEP, ATTRIBUTE. 

• Level 88's - READ INTO - WRITE/REWRITE FROM - and DELETE. 

• An easy to use, COBOL source code EDITOR with auto line numbering, A-margin, B- 
margin tabbing with full screen cursor control. 

Current customers can receive the new version by sending in their original diskette and 
$30.00. This offer expires Dec. 31, 1987 

Also available: Utah FORTRAN, Utah BASIC, Utah PASCAL, Utah PILOT, Btrieve and 
Saywhat?!. Used by 50,000 professionals, students and teachers in 40 countries. 



To order call: 
(702) 827-3030 







SINCE 1977 

ELLIS COMPUTING™ 

5655 Riggins Court, Suite 10 
Reno, Nevada 89502 



IBM is a registered trademark of International Business Machines, Inc. Btrieve is a registered trademark of Softcraft, Inc. 
SAYWHAT?! is a trademark ol The Research Group. Utah COBOL is a trademark of Ellis Computing, Inc. © 1987 Ellis 
Computing Inc. 



REVIEW: ADVANTAGE C + - 
AND GUIDELINES C + + 



on already-defined types when new types 
are defined. It lets the user enter song items 
(e.g., rests, notes, and chords) using stream 
I/O (a fecility that is part of the C+ + li- 
brary), and then play back the song using a 
virtual function defined for all items. 

Advantage C + + took somewhat 
longer to compile and link the program 
than did Guidelines (89.5 seconds versus 
81 .5), but the executable files that each 
product produced were nearly the same 
size: Advantage C + + produced a 
31222-byte file, and Guidelines C + + 
produced a 30308-byte file. Since Score 
is an interactive program, execution 
times are not relevant. Both programs 
performed identically and as expected. 
[Editor's note: The source code for Sieve 
and Score is available on disk, in print, 
and on BIX. See the insert card following 
page 304 for details. Listings are also 
available on BYTEnet. Seepage 4.] 

Little Difference 

C + + 's extensions to the C language pro- 
mote more understandable, reliable, and 
maintainable programs by providing 
stronger type-checking (especially con- 
cerning procedure definitions and refer- 
ences) and support for data abstraction. 
Once you have decided that the C + + ex- 
tensions to C are useful enough to learn, 
you will want to choose a commercial 
implementation. 

I could find very little difference be- 
tween the performances of Advantage 
C + + and Guidelines C+ + . Both are 
essentially equivalent in ease of use, exe- 
cution time, and generated code. Advan- 
tage C + + has the edge in documenta- 
tion, since it comes with many sample 
source files and all the examples from 
Stroustrup's book. If you want to use Lat- 
tice C, then your only choice is Advan- 
tage C + + . If you are using Microsoft C , 
the difference in price ($195 for Guide- 
lines, $495 for Advantage) recommends 
Guidelines. ■ 

[Editor's note: At the time of this writing, 
Guidelines informed us that version 1.2 
would be released this month. According 
to the company, it will include profes- 
sionally printed documentation and more 
example programs on disk, and will cost 
$295. Lifeboat was also scheduled to 
come out with version 1.2 last month; ac- 
cording to the company, version 1.2 will 
have Microsoft Windows compatibility 
and improved documentation. ] 



Mark Mallett is a 10-year computer vet- 
eran with interests in systems, graphics, 
database, mail, and conferencing soft- 
ware. He can be contacted at Zinn Com- 
puter Co. (Litchfield, NH 03103. ) 



234 BYTE- OCTOBER 1987 



Circle 92 on Reader Service Card 



Add up to 96K 
above 640K to all 
programs, including 
PARADOX and 1-2-3. 



Parity-checked 256K 
with a one-year 
warranty. 



Run custom software 
or the 3270 PC 
Control Program 
above 640K 




Run resident 
programs like 
Sidekick above 640K 



Topoffa512KIBM 
AT's memory to 640K 
and add another 
128K beyond that. 



Short card works in 
the IBM PC, XT AT! 
and compatibles. 

Add expanded 
memory to programs 
supporting the 
Lotus/ Intel/ 
Microsoft 
specification 3.2. 



MAXIT' "memory works above 64QK 
for only $195. 



Break through the 640K barrier. 

MAXIT increases your PC's available 
memory beyond 640K. And it does 
it for only $195. 

MAXIT includes a 256K half-size 
memory card that works above 
640K. MAXIT will: 

■ Add up to 96K above 640K to all 
programs. 

■ Run memory resident programs 
above 640K. 

■ Top off an IBM AT's memory from 
512Kto640K. 

■ Expand 1-2-3 Release 1 A or 2.0 
worksheet memory by up to 256K. 

■ Add expanded memory above 
640K to programs like Symphony 1 . 

Big gain — no pain. 

Extend the productive life of your, 
IBM PC, XT, AT or compatible. Build 
more complex spreadsheets and 
databases without upgrading your 
present software. 



Installation is a snap. 

MAXIT works automatically. You 
don't have to learn a single new 
command. 

If you have questions, our cus- 
tomer support people will answer 
them, fast. MAXIT is backed by a 
one-year warranty and a 30-day 
money-back guarantee. 

Order toll free 1-800-227-0900. 

MAXIT is just $ 1 95 plus $4 ship- 
ping, and applicable state sales tax. 
Buy MAXIT today and solve your 
PC's memory crisis. Call Toll free 1 - 
800-227-0900 (In California 800- 
772-2531). 
We accept VISA, MC, AE, and DC. 

m 

Osborne McGraw-Hill 

2600 Tenth Street. Berkeley, California 94710 



MAXIT is a trademark oi McGraw-Hill CC1G software. IBM is a registered trademark of International Business Machines Corporation; 1 -2-3 and Symphony are 
registered trademarks of Lotus Development Corporation; Sidekick is a registered Irademark of Borland International, Inc; PARADOX is a trademark of ANSA 
Software 

Circle 201 on Reader Service Card 



■ Lattice 
;dBC III Plus 



Lattice ~ 

Source Kntry Utility 



Lattk 

r :CS2 ' 




^B 



Lattice 

tfMerge Utility 



t* 




•RTO II Compiler ;E;; qqJ 




S Lattice 
G Compiler 



Lattice 

l>iler Jfcj Screen Design. 



1 Lattice ^ I 
1 Screen Editor 1 


1 LattiSfi. 
1 Make Oil 


■ 






<5> 



t Lattice 
Fv I SecretDisk 







Our software comes with something 
no one else can offer. 



When you join the Lattice family 
of customers, you'll discover that 
your software purchase is backed 
by more than just an excellent 
warranty. It's backed by unparal- 
leled technical support. By a total 
commitment to your success and sat- 
isfaction. And by Lattice's dedication 
to excellence in products and sendees. 

Unlike other software manufacturers 
who charge you for services after you've 
purchased their product, Lattice offers 
a unique package of support programs 
at a price we can all live with — FREE. 

Lattice Bulletin Board Service 

LBBS is our 24-hour a day bulletin 
board system that allows you to obtain 
notification of new releases, general 
information on Lattice products, and 
programs for the serious user, And if 
you've ever experienced the frustration 
of having to wait a year or more for 
a new release (that has corrected a 
bug), you'll really appreciate LBBS. 
Because with this service, you can 
actually download the latest program 
fixes to instantly eliminate any bugs 
discovered after release. 



Available through dealers and 
distributors worldwide. 



Lattice Service. 



Technical Support Hotline 

Responsible, dependable and capable 
Support Representatives are only a 
phone call away. You will talk to a highly 
skilled expert who is trained to answer 
any questions you have relating to 
specific Lattice products. Remember, 
your complete satisfaction is our goal. 

McGraw-Hill BIX™ Network 

The Byte Information Exchange (BIX) 
Network is a dial-in conference system 
that connects you with a Special Interest 
Group of Lattice users. The nominal 
one-time registration fee allows you 
to BlX-mail your questions — via your 
modem — directly to Lattice. Or you 
can post your questions in the con- 
ference mode for Lattice or other users 
to answer. Once again, you have 
24-hour access. 



You Also Receive: 

■ Timely updates and exciting 
enhancements ■ 30-day, money- 
back guarantee ■ Lattice Works 
Newsletter ■ Technical Bulletins 

■ Access to Lattice User Groups 

Lattice has developed more than 50 
different Microcomputer software tools 
that are used by programmers world- 
wide. We were there for every MS-DOS 
release. We're there now for OS/2. And 
we'll be there for the next generation 
of technical changes. But most of all, 
Lattice is there for you. 



Lattice 
RPG lie 



J 



<^> 



Lattice, Incorporated 
2500 S. Highland Avenue 
Lombard, I L 60148 
Phone: 800/533-3577 
In Illinois: 312/916-1600 
Subsidiary of SAS Institute Inc. 



y 



Lattice 



Circle 147 on Reader Service Card 



APPLICATION REVIEWS 



□ 



Equation Solvers 



by George A. Stewart 



Eureka and TK Solver Plus 
offer two very different ap- 
proaches to equation solving on 
computers. 

Eureka 1.0, a $167 MS-DOS 
package from Borland Interna- 
tional, is easy to use and is a 
good educational tool for any field in- 
volving mathematics, but it is limited in 
its suitability to realistic mathematical 
applications. (For instance, equation files 
are limited to 20 variables, 20 equations, 
10 user-defined functions, and 10 unit 
conversions.) The program's strongest 
technical feature is its nonlinear opti- 
mization. 

TK Solver Plus 1.0, a $395 MS-DOS 
product from Universal Technical Sys- 
tems, is a more sophisticated, open- 
ended product that can solve realistically 
sized models in engineering, finance, 
pure math, statistics, chemistry, and 
other mathematical fields. Some of its 
more interesting features are interactive 
display tables, user-defined procedures, 
input and output lists, list functions, a 
large-model capacity ( > 1000 equations, 
limited only by memory), and exception- 
al error-handling. 



Eureka 1.0 

Anyone familiar with Borland program- 
ming languages such as Turbo BASIC 
and Turbo Pascal will have an easy time 
learning Eureka; the pull-down menus, 
windowing controls, and editor are the 
same. Newcomers to Borland products 
shouldn't have much difficulty, either; 
the interface is simple and intuitive. 

Instead of a programming-language 
source-code window, Eureka gives you 
an equation file window. The entire prob- 
lem definition goes in that one window. 
ASCII-format equation files can also be 
loaded from and saved on disk. Other an- 
alogs to programming are the ability to 
set global parameters using commands in 
the equation file, and the ability to in- 
clude other equation files implicitly with 
an $ INCLUDE directive. 

Copying the programming-language 



Eureka and TK Solver 

Plus do mathematical computing 

without programming 



interface has its drawbacks, however. 
Most importantly, all the input values 
have to be provided in the program as 
equations or set as default values using a 
global switch setting. Also, you cannot 
easily obtain an orderly list of all vari- 
ables in the model, one that clearly iden- 
tifies the input and output variables. 

To solve a set of equations, you exit 
from the edit window and activate the 
Solve command. Eureka first tries to ob- 
tain the solution directly, by reordering 
the equations and substituting constants. 
If the program makes six substitutions 
and still can't solve for all the unknowns, 
it begins an iterative process of making 
educated guesses. 

After satisfying the equations, Eureka 
presents the results in a solution window. 
Each variable in the equation file is listed 
alongside its value. There is no indication 
as to which variables are constants and 
which were derived. After the variable 
list, Eureka gives additional information, 
such as the maximum error of the solu- 
tion and warning messages. 

Eureka has the very handy ability to 
constrain a solution. For instance, you 
may want to find a root of a previously 
defined function f (x) over a specified in- 
terval [ — 1 ,0] . You simply put the follow- 
ing into the solution file: f(x)=0: -1< = 
x<=0. 

Equally powerful are the maximize 
and minimize directives. For instance, to 
find the maximum of f(x), you use 
$max(y)andy=f(x). 

Eureka also plots functions that you 
define and presents a small text-mode 
graph. Pressing Alt-F5 generates a full- 
screen text-mode graph, and pressing F5 
generates a graphics-mode graph (if a 
graphics adapter is installed). The text- 
mode graphs are surprisingly smooth, 



due to the clever use of three 
different characters for dots, ef- 
fectively tripling the screen's 
vertical resolution. 

Limitations of Eureka's 
graphing include the inability to 
plot more than one function on 
the same graph, and the absence of any 
grid marks or numbers except at the ex- 
treme points of the axes. 

Eureka also has limited facilities for 
generating lists based on function evalua- 
tions. Given a function f(x), the pro- 
gram generates a two-column table con- 
taining a list of values for x and f(x). 
There is only one way to specify the 
values used for x: start— increment- 
number of values. 

Eureka's reporting facilities are easy to 
use, but they are limited to the informa- 
tion developed in the screen windows. A 
pull-down menu lets you specify the out- 
put device (screen, printer, or disk file) 
for the report. The report contains the 
complete equation file, solution, and any 
graphs and lists that you generated. You 
cannot use it to generate more detailed 
tables or graphs. Additionally, you can 
set Eureka to keep a log file containing 
the results of various equation solutions. 
Eureka has a context-sensitive on-line 
help utility. The help file is about 29K 
bytes of uncompressed text. 

Eureka's 250-page user's manual 
gives a good operational view of the prod- 
uct. About 14 pages are devoted to mod- 
eling techniques— just a bare introduction 
to a very complex subject. The 100 pages 
of worked examples are very helpful. The 
worked examples are also included on the 
program disk. 



TK Solver Plus 1.0 

TK Solver Plus is a descendant of 
TK! Solver, introduced by Software Arts 
in 1983. Universal Technical Systems has 

continued 

George A. Stewart is a technical editor at 
BYTE. He can be contacted at One Phoe- 
nix Mill Lane, Peterborough, NH 03458. 



OCTOBER 1987 • B Y T E 237 



REVIEW: EQUATION SOLVERS 



Eureka version 1 .0 


TK Solver Plus version 1 .0 


Company 

Borland International Inc. 
4585 Scotts Valley Dr. 
Scotts Valley, CA 95066 
(408)438-8400 


Company 

Universal Technical Systems Inc. 
1220 Rock St. 
Rockford, IL 61 101 
(815)963-2220 


Type 

Equation solver 


Type 

Equation solver 


Format 

One double-sided, double-density 
5 1 /4-inch floppy disk; not copy-protected 


Format 

Six double-sided, double-density 5V4- 
inch floppy disks; not copy-protected 


Computer 

MS-DOS-based computer with 384K 
bytes of RAM and one floppy disk drive 


Computer 

MS-DOS-based computer with 384K 
bytes of RAM and one floppy disk drive 


Documentation 

250-page user's manual 

Price 

$167 


Documentation 

100-page tutorial; 200-page technical 
reference; 100-page application notes 

Price 

$395 for new users 

$ 1 45 with trade-in of TKISolver 1 .6 

$200 with trade-in of earlier versions 



rewritten the code in C to improve speed 
and portability (the original program was 
written in a proprietary development lan- 
guage of Software Arts). [Editor's note: 
For a review of TKISolver, see the De- 
cember 1984 BYTE.] 

The user interface of TK Solver Plus is 
based on the concept of sheets of infor- 
mation that keep a model organized: 
There are separate sheets for rules (i.e., 
equations), variables, lists, user-defined 
functions, procedures, units, lists, plots, 
tables, numeric formats, and global set- 
tings. TK displays either one full-screen 
sheet or two split-screen sheets. 

TK stores models in an abbreviated 
ASCII format. It can also read in and 
write out list data in WKS (used by Lotus 
1-2-3), DIF (used by numerous spread- 
sheet programs), and ASCII formats. 

You begin a new model by entering 
equations into the rule sheet. As each rule 
is entered, any new variables that you in- 
troduce appear in the variable sheet. 

The variable sheet lists all the variables 
in the rule sheet. A status indicator iden- 
tifies them as inputs or outputs and gives 
their most recent values. Variables can be 
either single-valued or associated with 
lists of values. List variables are used in 
TK's very powerful table- and plot-gen- 
eration facilities. Variables can also be 
given the Guess attribute, which allows 
TK to use a specified first guess or the 
variable's most recent output value as a 
first approximation. Unless a variable 
has the Guess attribute, TK will not try to 
approximate it. 

Each variable is associated with a sub- 



sheet giving additional properties of the 
variable: status, first-guess value, associ- 
ated list, input or output value, numeric 
format, display unit, calculation unit, and 
comments. 

If none of the unknowns has the Guess 
attribute, TK will attempt to solve the 
model using direct substitution methods. 
If not enough variables are known, TK 
will stop and tell you so. If there are con- 
flicts between the equations, again, TK 
will stop and tell you. On the other hand, 
if you activate the iterative solver by as- 
signing guesses to one or more variables, 
TK will go ahead and try. 

Lists make it easy to generate and save 
a related set of calculations for use in 
further calculations or for generating 
tables or graphs. For instance, given the 
equation payment = loan * (rate/ 
(l-(l+rate)~-term)), you can set up 
payment as an output list, rate as an in- 
put list, and all the other variables as in- 
put variables. Next, you can assign a list 
of 32 values to rate, ranging from, say, 8 
to 16 percent. You can then specify con- 
stants for term and loan. TK will solve 
the equation once for each value from the 
rate list, saving the corresponding pay- 
ment in the payment list. 

Then you can generate a table or graph 
showing the payment required for various 
rates. Other list variables can also be in- 
cluded in the table. To specify the details 
of the table or graph, you go to the corre- 
sponding sheet and fill in information re- 
garding format and content. 

TK's interactive table subsheets (one 
for each table defined) let you modify the 



contents of a table cell and solve for the 
other related table entries. It's like using 
a spreadsheet, except that you haven't had 
to carefully plan the formulas that govern 
the row and column relationships. 

TK has three kinds of user-defined 
functions: rule, list, and procedure func- 
tions. Rule functions serve much the 
same purpose as functions do in Eureka, 
except that they can be defined in terms of 
local variables that have no effect on the 
rest of the model; rule functions can also 
be defined in nonstandard fashion. 

List functions relate two lists, a do- 
main and a range, using any of four map- 
ping techniques. Table mapping asso- 
ciates the /th element of one list with the 
/th element of the other list. 

Step mapping uses the intervals be- 
tween items in the domain list. Given an 
argument, a step function finds the first 
interval containing the argument and re- 
turns the value associated with the lower 
bound of that interval. Linear and cubic 
mappings also use the intervals between 
domain elements, but they interpolate 
values using linear or cubic polynomial 
approximation. 

Procedure functions allow the specifi- 
cation of functions that are, in effect, al- 
gorithmic solutions. For instance, one 
procedure function might calculate the 
greatest common factor of two inputs. 

TK's reporting capabilities are lim- 
ited. You can copy the contents of most 
sheets to the printer or to a disk file, but 
you cannot generate a complete, readable 
report of the model, containing all the 
field definitions within each sheet. 

TK's on-line help is context-sensitive 
and comprehensive. The help file is over 
200K bytes of uncompressed text. TK 
comes with a 100-page tutorial manual, a 
200-page technical reference manual, a 
100-page application notes manual, the 
program disk, and additional disks con- 
taining a library of over 100 models and 
200 procedures. All the manuals are 
well-written, and, taken together, they 
make TK a very well documented tool. 

Technical Comparisons 

The one area where Eureka may have an 
advantage over TK is in optimization of 
nonlinear equations. Using Eureka, it is 
very simple to locate the roots of nonlin- 
ear functions, to find a minimum or max- 
imum, or to satisfy other combinations of 
constraints. It is possible to do this with 
TK Solver Plus, but it's not quite so easy. 
For instance, given a previously de- 
fined function f (x), find the values of x 
that give the maximum values on the in- 
terval [-7r,0]. In Eureka, you could use 
$max(y) and y=f(x): -pi()<=x<=0. 
You then activate the solver. I f Eureka 

continued 



238 BYTE- OCTOBER 1987 



Is this the new lookof 
project management? 

Plan on it 




Our interactive Work Breakdown Structure is a more intuitive way to start planning. 

We redesigned HTPM for a faster, easier 
approach to project management. 

Even though Harvard Total Project Manager 
was the category leader, we knew we could make 
it better. 

So we listened to project managers, added inno- 
vations, and created Harvard Total Project Manager II. 
The result is a redesigned project management tool 



that's dramatically easier to use, with more 
features and increased capability 

You'll see the difference right away 
It starts with a more intuitive, easily 
accessible user interface. Then HTPM IPs 
unique Work Breakdown Structure 
gives you the opportunity to plan your 
project completely on-screen. You also 
have the choice of other interactive 
planning formats: PERT charts, GANTT 
charts and Task Lists. Only HTPM II 
offers all four alternatives, letting you 
plan the way that works best for you. 

HTPM IPs other sophisticated 
features help you automatically track 
resources across multiple projects, 
add project data more efficiently, and 

keep everyone on the project up to speed with 

comprehensive presentation quality reporting. 
We can't tell you everything about HTPM II 

here. We can invite you to call for our free trial 

disk, and find it all out for yourself. 
You'll see why the k 

new look of project 

management fits 

your style. Perfectly 



Graduate to Harvard Total Project Manager II. 



For a free trial disk call 1-408-848-4391. Oper. #57. 



For upgrade information call 1-800-255-5550. 



Runs on IBM XT with hard drive and MS DOS compatibles. © Software Publishing Corporation, P.O. Box 7210, 
Mountain View, CA 94039-7210. 



Circle 256 on Reader Service Card 




REVIEW: EQUATION SOLVERS 



finds a solution, you graph the function to 
see if other solutions exist on the interval. 
If they do, you adjust the constraint on x 
according to visual estimates from the 
graph. 

In TK, after defining the function 
f (x) , you enter the rule y = f (x) . On the 
variable sheet, you make y an output-list 
variable and x an input-list variable. Fill 
the list x with, say, 50 values ranging 
from -PI ( ) to 0, list-solve, and use TK's 
MAX(y) list function to find the largest 
value of y on the interval. You then input 
that value for y and back-solve for x. 
Even then, the maximum may not be ex- 
act: You've only broken down the inter- 
val into 50 subintervals. It might be better 
to now repeat the process over a smaller 
interval. Getting TK's best answer (maxi- 
mum precision) takes some time. The 
proper way to solve this problem under 
TK is to use one of the optimizing proce- 
dures provided on the program disk. 

Except for Eureka's built-in features 
for optimization and constraint problems, 
I found the two programs comparable in 
their iterative solving capabilities. 

In some areas, TK is clearly superior. 
For instance, consider the following set 
of n simultaneous linear equations in 
n + 3 variables: 



a x = a 2 + a 3 — a 4 

a n = a n+1 + a n+2 - a n + 3 

I used these equations to test the solvers' 
back-solving capability by setting as in- 
puts fli = l, a 2 =2, and<2 3 =3, and to test 
their reordering capacities by setting 
as inputs a n+l = n+ 1, a n + 2 = n+2, and 
a n+3 = n + 3. 

For n = 10, Eureka took 72 seconds to 
back-solve. Setting the substitution level 
to cut the solution time to 54 seconds. 
With the substitution level set back to 6, 
Eureka took 5 seconds to do the reorder- 
ing test. TK took a split second to do both 
tests for n = \0. (Tests were done on a 
4.77-megahertz IBM PC with an Intel 
8087 floating-point processor, which both 
packages fully support.) Eureka was un- 
able to solve the equations by direct meth- 
ods and had to resort to iterative methods. 

In another test, I gave both solvers a set 
of eight linear equations in eight un- 
knowns. Both solvers had to resort to it- 
eration to produce a solution. TK took 6 
seconds; Eureka took 77 seconds with 
substitution level 6, and 48 seconds with 
substitution level 0. 

Automatic equation-solving is a decep- 
tive area, and one must evaluate results 



carefully. Eureka is particularly liable to 
produce meaningless results. For in- 
stance, given the equation file d=0 : 8- 
b=8: 77/b=c/d, Eureka came up with 
b=0, d=0, and c=. 99474364. It also 
printed a warning that the solution pro- 
cess resulted in an attempted root or log 
of a negative number. This cryptic warn- 
ing was not visible in the small solution 
window; I had to zoom to see it. Given 
the same set of equations, TK (correctly) 
refused to give any answer and printed an 
error message about division by 0. 

The Real World 

Most real-world mathematical models in- 
volve dozens of variables, functions, and 
equations. Eureka 1 .0's stated limit of 20 
variables, 10 user-defined functions, 20 
equations, and so forth, makes it inappli- 
cable to many real- world problems. On 
the other hand, the program is perfectly 
suitable for smaller, educational models, 
as evidenced in the sample models dis- 
tributed with the program. 

TK Solver Plus 1.0 is the obvious 
choice for someone who needs a mathe- 
matical tool for professional work in engi- 
neering, mathematics, finance, and other 
scientific fields. ■ 

continued 



12 MHz— 

NO 

WAITING! 

Introducing the DP12/0 High 
Performance 100% AT Compatible 
Motherboard. 

True Zero Wait-State design 
increases throughput up to 30% 
over competing products. 

The DP12/0 design is optimized 
for demanding engineering and 
scientific applications... e.g. 
AutoCAD, Fortran. 

• 8/12 MHz Zero Wait-State 
80286-12 CPU-Fastest '286 
performance available. 

•1Mbyte CMOS Zero Wait-State 
RAM. 

• 80287 Math Co-Processor socket 
with independent clock allows full 
10 MHz 80287-10 operation. 



ZyMOS POACH/AT CMOS 
chip set reduces chip count 
for improved reliability and 
reduced power consumption 



• 8 expansion slots 
(6-16, 2-8 bit) 
with 8 
MHz I/O 
clock to 
ensure reliable 
expansion board 
operation. 



• AWARD BIOS with built-in 
setup utility. 

• Quiet, fully socketed, multi-layer 
board design. 16 MHz ready. 

• CMOS Clock Calendar/ 
Configuration File. 

• Keyboard Controller. 

• Made in U.S.A. 

• One Year Warranty. 



For evaluation, 

dealer and 

OEM pricing, 

contact: 




1 DISKS PLUS, INC. 
356 Lexington Drive 
Buffalo Grove, IL 60089 
Telex: 650 249 2139 MCI UW 
*^ Fax: (312) 537-8331 

Technical and more info: (312) 537-7888 
To order: 1 800 752-DISK 

Trademarks: IBM PC-AT, International Business Machines Corp.; 
AutoCAD, Autodesk. Inc.; Poach/AT, ZyMOS Corporation. 



BIS Kt PLUS 

Microcomputers & Peripherals 



240 BYTE- OCTOBER 1987 



Circle 84 on Reader Service Card (Dealers: 85) 




More people use CompuServe than any other online 
computer information service on Earth. 

Over 375,000 members access hundreds of information, 
communications and entertainment services online. 

Thousands with similar interests and special expertise 
converge regularly and exchange ideas on an ever-expanding 
list of special-interest Forums. 

They have access to a combination of more financial 
information, a greater variety of shopping services, 
and deeper research resources than any other online 
computer service. Anywhere. 



Of course, it's conceivable that there's a service like 
ours somewhere that could give you more for your money 
Butyou may have to travel a few light-years to find it. 

Instead, all you have to do is visityour nearest computer 
dealer today To order CompuServe direct, or for more infor- 
mation, write: CompuServe, 5000 Arlington Centre Blvd., 
Columbus, Ohio 43220. Or call 800848-8199. In Ohio and 
Canada, call 614 457-0802. 



CompuServe^ 



ANH&R BLOCK COMPANY 



Circle 57 on Reader Service Card 



OCTOBER 1987 • BYTE 241 





1 Exxon 


2 


General Motors 


3 


Mobil 


4 


Ford Motor 


5 


IBM 


6 


Texaco 


7 


E.I. du Pont 


8 


Standard Oil (Ind.) 


9 


Standard Oil of Cal. 


10 


General Electric 


11 


Gulf Oil 


12 


Atlantic Richfield 


13 


Shell Oil 


14 


Occidental Petroleum 


15 


U.S. Steel 


16 


Phillips Petroleum 


1 7 


c;, in 



REVIEW: PERSONAL CONSULTANT PLUS 



27 
million 
Americans 
can't read. 
And guess 
who pays 
the price. 



Every year, functional 
illiteracy costs American 
business billions. 

But your company can 
fight back... by joining 
your local community's 
fight against illiteracy. 
Call the Coalition for 
Literacy at toll-free 
1-800-228-8813 and find 
out how. 

You may find it's the 
greatest cost-saving 
measure your company 
has ever taken. 

A literate 

America is a 

good investment 



Gcxnal Coalition for Literacy 



Personal Consultant 

Plus 



Ernest R. Tello 



Can a real expert system be developed 
and used on a personal computer? The 
experts at Texas Instruments think so, 
and they offer Personal Consultant Plus 
to prove their point. 

Personal Consultant Plus version 2.0 
($2950) is a LISP-based expert-system 
shell written in PC Scheme LISP. It of- 
fers frame-based representation, forward 
and backward chaining, meta-knowledge 
control, graphics displays, and a broad 
interface to Scheme LISP. 

Personal Consultant Plus (which I'll 
call PCPlus) includes a complete copy of 
PC Scheme LISP version 2.0, with full 
documentation. The program runs on the 
IBM PC AT and compatibles with at least 
512K bytes of memory; 640K bytes is 
highly recommended. Versions are also 
available for the TI Professional and 
Business Pro. 

The current version of PC Scheme sup- 
ports the Lotus/Intel/Microsoft Ex- 
panded Memory Specification (EMS) 
and extended memory for the IBM PC 
AT and compatibles. [Editor's note: For 
a review of PC Scheme LISP, see ''PC 
Scheme: A Lexical LISP" by William G. 
Wong in the March BYTE.] The PCPlus 
program itself comes on two disks, and it 
also includes a run-time disk, used for 
producing a stand-alone expert system. I 
tested PCPlus on a 10-megahertz IBM 
PC AT-type computer with 640K bytes 
of RAM, a 40-megabyte hard disk drive, 
and an EGA display. 

The User Interface 

PCPlus lets applications users ask the 
system why information is being re- 
quested, how a conclusion was arrived at, 
and what the user's responses were. The 
user interface also gives the user a way to 
avoid tedious repetition when a knowl- 
edge base is used frequently. With