Byte Magazine Volume 11 Number 09 - The 68000 Family

This book was produced in EPUB format by the Internet Archive.

The book pages were scanned and converted to EPUB format automatically. This process relies on optical character recognition, and is somewhat susceptible to errors. The book may not offer the correct reading sequence, and there may be weird characters, non-words, and incorrect guesses at structure. Some page numbers and headers or footers may remain from the scanned page. The process which identifies images might have found stray marks on the page which are not actually images from the book. The hidden page numbering which may be available to your ereader corresponds to the numbered pages in the print edition, but is not an exact match; page numbers will increment at the same rate as the corresponding print edition, but we may have started numbering before the print book's visible page numbers. The Internet Archive is working to improve the scanning process and resulting books, but in the meantime, we hope that this book will be useful to you.

The Internet Archive was founded in 1996 to build an Internet library and to promote universal access to all knowledge. The Archive's purposes include offering permanent access for researchers, historians, scholars, people with disabilities, and the general public to historical collections that exist in digital format. The Internet Archive includes texts, audio, moving images, and software as well as archived web pages, and provides specialized services for information access for the blind and other persons with disabilities.

Created with abbyy2epub (v.1.7.0)

Turbo GameWorks™

Also recently released, TurboGameWorks is what you think it is:"Games" and "Works." Games youcan play right away (like Chess,Bridge and Go-Moku), plus the mWorks—which is how computer ™games work. All the secrets andstrategies of game theory are there for you to learn. Youcan play the games "as is" or modify them any which wayyou want. Source code is included to let you do that, andwhether you want to write your own games or simply playthe off-the-shelf games, Turbo GameWorks will give hoursof diversion, education, and intrigue. George Koltanowski,Dean of American Chess,and former President,United States ChessFederation, reacted toTurbo GameWorks likethis, "With TurboGameWorks, you 're onyour way to becoming amaster chess player" and

Kit Woolsey, writer, author, and twice Champion of theBlue Ribbon Pairs, wrote, "Nowplay the world's mostpopular card game—Bridge... even program your ownbidding or scoring conventions." Suggested retail: $69.95.

Turbo Graphix Toolbox"

It, Includes a library of graphics routines for TurboPascal programs. Lets even beginning programmerscreate high-reBOluUon graphics with an IBM,Hercules,™ or compatible graphics adapter. OurTurbo Graphix Toolbox includes all the tools you'llever need for complex business graphics, easywindowing, and storing screen Images to memory. It comes completewith source code, ready to compile. Suggested retail: $69.95.

Recognition lot Borland International has come Irom business, trade, and media, and includes both productawards and awards for technical excellence and marketing. Borland was named "Company ol the Year" byPC Magazine: Sidekick, the I / best seller lor the IBM PC, was named "Product ol the Year" by InloWortd;Turbo Pascal was selected one ol PC Week's fop 10 Products lor 1984; SuperKey won one ol PCMagazine's "Best of 1985"awards; Reflex, The Analyst was recognized in the "Software Products ol theYear" awards by InloWorld; and Rellex and SideKick were both nominated tor British Micro Awards in 1986.

Turbo Database Toolbox"

A perfect complement to Turbo Pascal, because Itcontains a complete library of Pascal proceduresthat allows you to search and sort data and buildpowerful database applications. Having TurboDatabase Toolbox means you don't have to reinventthe wheel each time you write a Turbo Pascal program It comes withsource code for a free sample database—right on disk. The database canbe searched by keywords or numbers. Update, add, or delete records asneeded. Just compile It and It's ready to go to work for you. Suggestedretail: $69.95.

Technical Specifications:

TURBO PASCAL 3.0 Minimum memory:128K; includes 8087 and BCD features lor 16-bil MS-DOS and

CP/M-86 systems. CP/M-80 version minimum memory: 48K; 8087 and BCD leatures not available

TURBO DATABASE TOOLBOX Minimum memory: 128K CP/M-80 minimum memory: 48K. Requires

Turbo Pascal 2.0 or later.

TURBO GRAPHIX TOOLBOX' Minimum memory: 192K Requires PC/MS-DOS 2 0 or later. Turbo

Pascal 3.0, and IBM CGA. Hercules Monochrome Card or equivalent.

TURBO TUTOR 2.0 Minimum memory: 192K. CP/M-80 version minimum memory 48K Requires

PC/MS-DOS 2.0 or later and Turbo Pascal 3.0.

TURBO EDITOR TOOLBOX' Minimum memory 192K Requires PC/MS-DOS 2.0 or later and Turbo

Pascal 3.0.

TURBO GAMEWORKS' Minimum memory: 192K. Requires PC/MS-DOS 20 or later and Turbo

Pascal 3.0.

TURBO PROLOG' Minimum memory: 384K.

REFLEX: THE ANALYST' Minimum memory: 384K. Requires IBM CGA, Hercules Monochrome Card

or equivalent. Works with Intel's AboveBoard-PC and -AT; AST's RAMpage! and RAMpage! AT;

Quadram's Liberty-PC and -AT, Tecmar's 640 Plus; IBM's EGA and 3270/PC; ATST's 6300 and

many others

REFLEX WORKSHOP' Minimum memory: 384K Requires Rellex: The Analyst Two disk drives or bard

disk recommended.

TURBO LIGHTNING' Minimum memory: 256K Two disk drives required Hard disk recommended

LIGHTNING WORD WIZARD' Minimum memory: 256K Requires Turbo Lightning. Turbo Pascal 3 0

required to edil source code.

SIDEKICK' Minimum memory: 128K.

TRAVELING SIDEKICK' Minimum memory 256K.

SUPERKEY' Minimum memory: 128K.

"For IBM PC, AT. XT, PCjr and Irue compatibles only, running PC/MS-DOS 2 0 or later

TUBBClbSCAL

A BOftUNO

E323BH

Turbo Pascal® 3.0

"For the IBM PC, the benchmarkPascal compiler is undoubtedlyBorland International's TurboPascal" says Gaiy Ray of PCWeek. We and more than 500,000other people around the worldthink Mr. Ray got that right.Since launch, Turbo Pascal has become the de factoworldwide standard in high-speed Pascal compilers.Described by Jeff Duntemann of PC Magazine as the"Language deal of the century" Turbo Pascal is nowan even better deal than that—because weVe includedthe most popular options (BCD reals and 8087 support).What used to cost $134.95 is now only $99.95! You nowget a lot more for a lot less: the compiler, a complete-ly integrated programming environment, and BCDreals and 8087 support—all for a suggested retail ofonly $99.95.

«0»

Borland's Business Productivity Programs:Rellex: The Analyst' Analytical database manager. Provides complete new look atdata normally hidden by programs like 1-2-3* and dBASE" Best report generatorlor 1-2-3.

\\ Rellex Workshop' Important new addition to Retlex: The Analyst. Gives you 22different templates to run your business right.SideKick' Complete RAM-resident desktop management includes notepad, dialer,calculator and more.

Traveling SideKick' Electronic version ot business/personal diaries, daylimeorganizers; works with your SideKick files; important professional tool.SuperKey" Keyboard enhancer. Simple macros turn 1000 keystrokes into 1. Alsoencrypts your files to keep confidential files confidential.

Borland's Electronic Reference Programs:

Turbo Lightning' Works with all your programs and checks your spelling whileyou type\ Includes 80,000-word Random House" Concise Dictionary and 50,000-word Random House Thesaurus. Forerunner ol Turbo Lighlning Library.

Lightning Word Wizard' Includes ingenious crossword solver and six other wordchallenges. II you're into programming, Lighlning Word Wizard is also a developmenttoolbox and the technical relerence manual for Turbo Lightning.

»** Turbo Tutor8 2.0

Just released (July '86), the newTurbo Tutor can take you from"What's a computer?" onthrough to complex datastructures, assembly languages,trees, tips on writing longprograms in Turbo Pascal, and ahigh level of expertise. Source code for eveiything isincluded. New split screens allow you to put source textin the bottom half of the screen and run the examplesin the top half. There are quizzes that ask you, showyou, tell you, teach you. You get a 450-page manual—which is not as daunting as it sounds, because unlikemany software manuals, it was not written by oran-gutans. (With our all "almost-free" upgrade, you canupgrade to Turbo Tutor 2.0 by sending us your masterdiskettes, proof of purchase, and $10.00, which coversshipping and handling.) Suggested retail: $39.95.

Turbo Editor Toolbox"

Recently released, we called ournew Turbo Editor Toolbox a"construction set to write yourown word processor." PeterFeldmann of PC Magazinecovered it pretty well with, "A'write your own word processor'program for intermediate level programmers, with lotsof help in the form of prewritten procedures coveringeverything from word wrap to pull-down windows."Source code is included,and we also includeMicroStar, a full-blown text editor withpull-down menusand windowing. Itinterfaces directlywith Turbo l^tningto let you spell-check

your MicroStar files. Jerry Pournelle of BYTEmagazine said, "The new Turbo Editor Toolbox is theTurbo Pascal source code to Just about anythingyou ever wanted a PC-compatible text editor to do."Suggested retail: $69.95.

All Borland products are registered trademarks or trademarks ol Borland International. Inc. orBorland/Analylica, Inc. 1-2-3 is a registered trademark ol Lotus Development Corp. dBASE is a regisleredtrademark ol Ashton-Tale. Random House is a registered trademark of Random House, Inc. Hercules is aIrademark ol Hercules Computer Tech. IBM, AT, XT, and PCjr are registered trademarks of InternationalBusiness Machines Corp. Copyright 1986 Borland International BI-1067A

Abohuano

Toolbox

■hi <x»m * n*»£22&E£2*a

WW

News from Borland International! Vol. 1 No. 1

W.

•e frequentlysurprise peoplewith inventive,imaginative software,and people frequentlysurprise us with the wayfcheyuse it.

For example, you'llread on this page howMichael J. Watitins of thePetroleum TechnologyCenter in Houston, Texas,used Turbo Pascal* (and Turbo Graphix Toolbox'"and Turbo Tutor") to cut down the tedium andtime in creating Circular Performance ProfileCharts (CPPCs).

We didn't know they existed, but you learnsomething new every day!

Applications like CPPCs might not fit yourexact needs, but at the same time they mightstimulate fresh ideas in your mind about how youcan put Turbo Pascal and the Turbo Pascal familyto work for you.

And thank you for your interest in andsupport for Borland International.

fjtoL

Philippe Kahn,

President, Borland International

INSIDE STORIES!

■ Turbo Pascal 3.0, already described by PC Magazine as "Languagedeal otthe century," is now an even belter deal Iban that, because we'veincluded the most popular options (BCD reals and 8087 support).What used to cost $124.95 is now only $99.95!

■ Completely new Turbo Tutor 2.0 now available. New software. Newmanual. New split screens. New quizzes. Only $39.95. Upgradesavailable under Borland's "Almost-Free" upgrade plan. Details inside.

LATE NEWS!

■ June/July Special Artificial Intelligence Issue of The Micro TechnicalJournal says, "turbo Prolog looks like it's going to be a winner, lor boththe beginner and prolessional programmer"

Turbo Pascaldeliberatelyprogrammed to goaround in circles

Circular charts (orCPPCs) are used by MichaelJ. Watklns of the PetroleumTechnology Center inHouston, Texas, to plot asingle performance propertyfor a large number ofelastomers, which haveelastic, rubber-like properties.

Mr. Watkins wrote ussaying, "Because CPPCscondense a lot of data in onegraphic, they can be verytedious and time-consummgto draw."

What he did to solvethose problems was to write aTurbo Pascal program forIBM® personal computers to"generate these chartsquickly and easily."

He used Turbo Pascal" because it has a companionset of very powerful graphicsprograms (Turbo GraphixToolbox) which greatlysimplifies the requiredprogramming.

Turbo Pascal is not adifficult language to use andcan be easily learned bypersons who can program inFORTRAN or BASIC. Anexcellent tutorial (TurboTutor) is available for thenovice or experiencedprogrammer. The TurboPascal products are also verymoderately priced."

nrograin-

W^S*?****

Uodsw

wten,^30

flleiv

„,|y ol OOBLANO Inl

Step-by-step tutorial, demo programs with source code included!

Borland's new Turbo Prolog is the

powerful, completely natural

introduction to Artificial Intelligence

Mi

■■

Jtrolog is probably one of themost powerful computer program-ming languages ever conceived,which is why we've made it oursecond language—and "turbo-charged" it to create Turbo Prolog.™Our new Turbo Prolog, the naturallanguage of Artificial Intelligence,brings supercomputer power to yourIBM® PC and introduces you step-by-step to the fascinating new world ofArtificial Intelligence. And does allthis for an astounding $99.95.

e

Turbo Prolog is toProlog what TurboPascal* is to Pascal!

Our Turbo Pascal astonishedeveryone who thought of Pascalas "just another language." Wechanged all that—and now TurboPascal is the de facto worldwidestandard, with hundreds of

thousands of enthusiastsand users inuniversities,i researchj centers,J schools,and with pro-fessional program-mers, students,and hobbyists.You can expect at least thesame impact from Turbo Prolog,because while Turbo Prolog is themost revolutionary and naturalprogramming language, it is alsoa complete development environ-ment—just like Turbo PascalMinimum memory: 384K

Mlwtoo Prolog offersgenerally the fastest andmost approachable imple-mentation of Prolog.

Danyl Rubin, ■■

AT Expert's

j Even if you've neverprogrammed before,our free tutorial willget you started right away

You'll get started right awaybecause we have included acomplete step-by-step tutorial aspart of the 200-page Turbo PrologReference Manual. Our tutorialwill take you by the hand andteach you everything you're likelyto need to know about TurboProlog and artificial intelligence.

For example: once you'vecompleted the tutorial, you'll beable to design your own expertsystems utilizing Turbo Prolog'spowerful problem-solvingcapabilities.

Think of Turbo Prolog as ahigh-speed electronic detective.First you feed it information andteach it rules. Then Turbo Prolog"thinks" the problem throughand comes up with all thereasonable answers—almostinstantly.

If you think that this isamazing, you just need toremember that Turbo Prolog is a5th-generation language—andthe kind of language that 21stcentury computers will useroutinely. In fact, you cancompare Turbo Prolog to

Turbo Pascal the way youcould compare Turbo Pascal tomachine language.

You get the completeTurbo Prologpmgramming systemfor only $99.95

You get a complete TurboProlog development systemincluding:

■ The lightning-fast Turbo Prologincremental compiler and theinteractive Turbo Prolog editor.

■ The 200-page referencemanual which includes the step-by-step Turbo Prolog tutorial

■ The free GeoBase™ naturalquery language databaseincluding commented sourcecode on disk—ready to compile.GeoBase is a complete databasedesigned and developed aroundU.S. geography. It includes cities,mountains, rivers, and highways,and comes complete with naturalquery language. Use GeoBaseImmediately "as Is," or modify itto fit your own interests.

So don't delay—don't waste asecond—get Turbo Prolog now.$99.95 Is an amazingly smallprice to pay to become animmediate authority—an instantexpert on artificial intelligence!The 21st century is only onephone call away.

BORLAND

INTERNATIONAL

4585 SCOTTS VALLEY DRIVESCOTTS VALLEY, CA 95066(108) 438-8400 TELEX: 172373

YES!

I wantthe best!For credit card ordersor the dealer nearest you

call (800) 255-8008

in CA call (800) 742-1133

Copies Product Price Totals

_ Turbo Prolog $99.95 $.

_ Re/lex: The Analyst 149.95' $._ Reflex Workshop 69.95" *_

— Reflex, Reflex Workshop 199.95' I_ Turbo Pascal 3.0

w/8087 & BCD 99.95

— Turbo Pascal lor CPiM-80 69.95

Turbo Database Toolbox 69.95

Turbo Graphix Toolbox 69.95

Turbo Tutor 2.0 39.95

— Turbo Editor Toolbox 69.95

Turbo GameWorks 69.95

Turbo Lightning 99.95

_ Lightning Word Wizard 69.95

— Turbo Lightning,

Lightning Htvtf Wizard 149.95_ SideKick 84.95

Traveling SideKick 69.95'

SideKick,

Traveling SideKick 125.00' SuperKey 69.95

Outside USA add $10 per copy

CAandMA res. add sales tax

Amount enclosed

Prices include shipping to all US cities.Carefully describe your computer system;Mine is: _ 8-bit —16-bitI use:—PC-DOS — CPIM-80 —MS-DOSMy computer's name and model is

The disk size I use is- D 3W Q 5 W D 8'Payment: VISA MC Money orderCredit card expiration date 1

cm* 1 1 1 1 1 1 1

Oiert

1 1 1

1 I 1 1 1 1 I 1 1 I

NOT COPt PROTECTED <=F15"60-DAYMONEY-BACK GUARANTEE

miy

Sale- 7ji-

Telephnrw

CODs and purchase orders WILL NOT be accepted by Borland.

Outside USA make paymenl by bank dratt. payable in US dollars

drawn on a US bank.

'Limited Time Offer until September 1,1986.

"YES, il within 60 days of purchase you find that this product

does not perform in accordance with our claims, call our

customer service department and we will gladly arrange

a retund.

Prices subject to change without notice.

Turbo Prolog 1.0 Technical SpecificationsCompiler: Incremental compiler generating native in-line codeand linkable objecl modules. The linking format includes a linkerand is compatible with the PC-DOS linker. Large memory modelsupport. Compiles over 2500 lines per minute on a standardIBM PC.

Interactive Editor: The system includes a poweduf interactivetext editor It (he compiler detects an error, the editorautomatically positions the cursor appropriately in the sourcecode. At run-time. Turbo Prolog programs can call Ihe editor,and view the tunning program's source codeType Sy$lem:A flexible object-oriented type system issupported.

Windowing Support: The syslem supports both graphic andtext windows.

Input/Output: Full I/O facilities, including lormatted I/O,streams, and random access files.Numeric Ranges: Integers: -32767 io 32767, Reals.1E-307IO 1E+308.

Debugging: Complete buitl-in trace debugging capabilitiesallowing single stepping olprograms.

1/5*

^#^

inquiry 49 for End-Users. Inquiry 50 for DEALERS ONLY.

CONTENTS

82

160

FEATURES

Introduction 82

Product Preview: LabVIEW:

Laboratory Virtual Instrument Engineering Workbench

by G. Michael Wose and Gregg Williams 84

Scientists and engineers can use the Macintosh as a general-purpose laboratory tool bycreating virtual instruments.

Ciarcias Circuit Cellar: Build a Hardware Data Encryptor by Steve Ciarcia 97

This easy-to-build device is extremely difficult to crack.

Programming Proiect: Calculating CRCs by Bits and Bytes by Greg Morse 114

Use the XOR function to implement modulo 2 division when calculating cyclicredundancy checks.

Programming Insight: Breaking Out by Edward Batutis 127

BREAKFT provides the IBM PC-DOS DEBUG program with a break-out switch.

Keyed File Access in BASIC by Stephen C. Perry 137

If maintaining data on disk is a problem for you. these BASIC routines may be the solution.

Real Time Under Real Pascal by ]ames Feldman 145

A look at two ways to interface a machine language routine to Pascal.

THEME: 68000 MACHINES

Introduction 160

68000 Trips and Traps by Mike Morton 163

Programming in assembly language will help you exploit the 68000 to the fullest.

UNIX AND THE MC68000

by Andrew L, Rood, Robert C. Cline, and ]on A. Brewster 179

The powerful yet simple programmer's model offered by the 68000's architecture makesUNIX implementation easy.

A Comparison of MC68000 Family Processors by Thomas L. Johnson 205

High levels of hardware and software compatibility distinguish the five members of this family.

Atari ST Software Development by Michael Rotfonan 223

A programmer surveys TOS operating system and how the 68000 influences it.

Amiga Animation by Elaine A. Ditton and Richard A. Ditton 241

An exploration of the exciting possibilities for animation on the Amiga.

Amiga vs. Macintosh by Adam Brooks Webber 249

A comparison of the system calls on two 68000-based machines reveals one as the clear winner.

REVIEWS

Introduction 258

Reviewer's Notebook by ]or\ Edwards 261

The Franklin ACE 2200 by Albert S. WoodhuU 263

An inexpensive Apple II clone with integrated disk drives.

The Leading Edge Model D PC by Stan Miastkowski 269

An IBM PC compatible that has lots of standard features.

BYTE (I55N 036O-5280I Is published monthly with one extra issue per year by McGraw-Hill Inc. Founder lames H. McGraw (1860-19481 Executive, editorial,circulation, and advertising offices One Phoenix Mill Lane, Peterborough. NH 03458. phone (6031 924-928\. Oftice hours: Monday through Thursday8:30 AM -4:30 PM. Friday 8:30 AM - 1:00 PM. Eastern Time. Address subscriptions to BYTE Subscriptions. P.O. Box 590. Martinsville, N| 08836. Postmaster:send address changes. USPS Form 3579. undeliverable copies, and fulfillment questions to BYTE Subscriptions, P.O Box 596, Martinsville. N| 08836Second-class postage paid at Peterborough. NH 03458 and additional mailing offices. Postage paid at Winnipeg. Manitoba. Registration number 9321.Subscriptions are S21 for one year. S38 for two years, and S55 for three years in the U.S. and its possessions. In Canada and Mexico. S23 for one year,S42 for two years, S61 for three years S69 for one year air delivery to Europe. 31.000 yen for one year air delivery to lapan. 15.600 yen for one yearsurface delivery to lapan. S37 surface delivery elsewhere Air delivery to selected areas at additional rates upon request. Single copy price is 53.50 inthe U.S. and its possessions. 54 25 in Canada and Mexico. 54 50 in Europe and 55 elsewhere. Foreign subscriptions and sales should be remitted inUS funds drawn on a US bank Please allow six to eight weeks for delivery of first issue. Printed in the United States of America

BYTE • SEPTEMBER 1986

COVER PHOTO BY PAUL AVIS

BITE

September

VOLUME 11, NUMBER 9, 1986

The Xerox 6060 by Wayne Rash jr. 275

A speedy machine virtually identical to the AT&T PC 6300.

The C. Itoh TriPrinter by Robert D. Swearengin 283

A hefty printer that lets you program dozens of functions.

The Turner Haul Card by Jonathan Angel 287

Simple-to-install memory expansion for IBM PCs and compatibles.

Turbo Prolog by Namir Clement Shammas 293

An implementation of Prolog for the IBM PC.

Software Carousel by Mark Haas 299

A virtual memory manager that enables you to shift between programs instantly.

Paradox 1.1 by Rusel DeMaria 303

A relational database offering tremendous power.

WordPerfect 4.1 by Ricardo Birmele 311

Improvements beyond earlier versions.

Review Feedback 315

Readers respond to previous reviews.

KERNEL

Introduction 318

Computing at Chaos Manor: A Busy Day by \erry Pournelle 321

But he was able to finish all he had to do.

According to Webster: Two Fine Products by Bruce Webster 335

Close-ups on Turbo Prolog and LightspeedC.

BYTE Japan: Perspectives on Hardware and Software by William M. Raike 351

Bill finds a few interesting products at Tokyo's Microcomputer Show.

BYTE U.K.: Turbocharging Mandelbrot by Dick Pountain 359

Dick returns to the topic of dynamic load balancing.

Applications Only: Sing Ye MacPraises by Ezra Shapiro 367

Excellent software is converting this Mac skeptic.

BEST OF BIX

Amiga 380

Atari ST 390

IBM PC and Compatibles 398

Editorial: College Credits ThroughCommunications 6

Microbytes 9

Letters 14

Whats New 31

Events and Clubs 49

Ask BYTE 50

Macintosh 404

Pascal 409

Circuit Cellar Feedback 58

Book Reviews 65

Fixes 373

Chaos Manor Mail 376

BOMB Results and

Next Month in BYTE 461

Reader Service 463

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

Copyright © I9B& 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 ICCC1 to photocopy any articleherein [or the flat fee ol SI 50 per copy ot the article or any part thereof. Correspondence and payment should be sent directly to the CCC. 29 CongressSt Salem MA 01970 Specify ISSN 0360-5280/83 S! 50 Copying done for other than personal or internal reference use without the permis-sion of McGraw-Hill Inc is prohibited Requests for special permission or bulk orders should be addressed to the publisher BYTE is availablein microform from University Microfilms International 300 North Zeeb Rd. Dept PR. Ann Arbor. Ml 48106 or 18 Bedford Row, Dept, PR,l,ondon WCIR 4EI EnglandSubscription questions or problems should be addressed to: BYTE Subscriber Service. P.O. Box 328 Hancock NH 03449

258

318

SECTION ART BY ANDRZEI DUDZ1NSKI

SEPTEMBER 1986 'BYTE

BYTE

SENIOR VICE PRESIDENT/PUBLISHER

Harry L. Browneditor in chief

Philip Lemmons

BIX

MANAGING EDITOR, BYTE

Frederic S. Langa

executive editor, bix

George Bond

assistant managing editor

Glenn Hartwigconsulting editors

Steve Ciarcia

lERRY POURNELLE

Ezra Shapiro

Bruce Webster

senior technical editors

Ion R. Edwards, ReviewsC. Michael Vose, ThemesGregg Williams, Featurestechnical editorsDennis AllenRichard GrehanKen SheldonGeorge A. StewartIane Morrill TazelaarTom ThompsonCharles D. WestonEva WhiteStanley Wszolaassociate technical editorsCurtis Franklin, ]r.. Best of BIXMargaret Cook Gurney, Book ReviewsBrenda McLaughlin. Applications Software Reviews.San Francisco

COPY EDITORS

Bud Sadler, ChiefIeff EdmondsFaith HansonNancy HayesCathy KingeryPaula NoonanWarren WilliamsonJudy Winkler

assistants

Peggy Dunham. Office ManagerMartha Hicks]une N. Sheldon

NEWS AND TECHNOLOGY

Gene Smarte, Bureau Chief. Costa MesaRich Malloy. Senior Technical Editor. New YorkCindy Kiddoo, Editorial Assistant. San FranciscoASSOCIATE NEWS EDITORS

Dennis Barker, MicrobylesCathryn Baskin, What's NewAnne Fischer Lent, What's New

CONTRIBUTING EDITORS

Jonathan Amsterdam, programming projects

Mark Dahmke, video, operating systems

Mark Haas, at large

Rik Iadrnicek, CAD, graphics, spreadsheets

Robert T. Kurosaka, mathematical recreations

Phil Lopiccolo. computers in medicine

Alastair I. W. Mayer, software

Alan R. Miller, languages and engineering

Dick Pountain, U.K.

Roger Powell, computers and music

William M. Raike, japan

Phillip Robinson, semiconductors

ART

Nancy Rice, Art Director

Joseph A. Gallagher, Associate Art Director

Jan Muller, Art Assistant

Alan Easton, Drafting

PRODUCTION

David R. Anderson, Production DirectorDenise ChartrandMichael |. LonskyVirginia Reardon

typography

Sherry McCarthy, Chief TopographerLen LoretteDonna Sweeney

senior editor

David Betzassociate editors

Tony lockwood

Donna Osgood, San Francisco

BUSINESS AND MARKETING

Doug Webster, Director. (603) 924-9027Patricia Bausum, SecretaryBrian Warnock, Customer ServiceDenise A. Greene, Customer ServiceTammy Burgess, Customer Credit and Billing

technology

Clayton Lisle, Director, Business Systems Technology. MHISBill Garrison, Business Systems AnalystJack Reilly, Business Systems AnalystLinda Wolfe Senior Business Systems Analyst

ADVERTISING SALES

Dennis |. Riley Director of Sales and Marketing

Sandra Foster, Administrative Assistant

ADVERTISING/PRODUCTION (603-924-6448)

Lisa Wozmak, Supervisor

Robert D. Hannings, Senior Account Coordinator

Marion Carlson

Karen Cilley

Lyda Clark

Michele Jackson

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 |o Steiner, Marketing Assistant

Stephanie Warnesky, Marketing Art Director

Sharon Price. Associate Art Director

Wilbur S. Watson, Operations Manager, Exnioits

RESEARCH

Patricia Akerley. Research Manager

Julie Perron, Market Research Analyst

Cynthia Damato Sands, Reader Service Coordinator

PLANNING AND DEVELOPMENT/PUBLIC RELATIONS(603-924-72551

Michele P. Verville. ManagerFaith Kluntz, Copyrights Coordinator

FINANCIAL SERVICES

Philip L. Penny, Director of Finance and Services

Kenneth A. King, Business Manager

Christine Lee, Assistant

Vicki Weston, Accounting Manager

Linda Short. D/P Manager

Edson Ware, Credit

Marilyn Haigh

Diane Henry

Vern Rockwell

JoAnn Walter

publisher's assistant

Beverly Iackson

U 'J Officers of McGraw-Hill Information Systems Company: President: Richard B, Miller. Executive Vice Presidents: Frederick

P. lannott. Construction Information Group: Russell C White. Computers and Communications Information Group:

■ ■nil I. Thomas Ryan, Marketing and International. Senior Vice Presidents: Francis A. Shinal. Controller: Robert C Violette.Manufacturing and Technology. Senior Vice Presidents and Publishers: Laurence Aitman. Electronics Week: Harry L. Brown. BYTE:David I. McGrath. Construction Publications. Group Vice President: Peter B. McCuen, Communications Information. Vice Presi-dent: Fred O. Jensen. Planning and Development.

Officers of McGraw-Hill, Inc.: Harold W. McGraw. Jr., Chairman: loseph L. Dionne. President and Chief Executive Officer: RobertN. Landes. Executive Vice President and Secretary: Walter D. Serwatka, Executive Vice President and Chief Financial Officer;Shel F. Asen. Senior Vice President. Manufacturing; Robert I. Bahash. Senior Vice President, Finance and Manufacturing; RalphR. Schulz, Senior Vice President. Editorial: George R. Elsinger, Vice President. Circulation: Ralph I. Webb. Vice President andTreasurer

BYTE, BYTE . and The Small Systems lournal are registered trademarks of McGraw-Hill Inc.

CIRCULATION (800-258-5485)

Andrew Iackson, Subscriptions Manager

Laurie Seamans, Assistant Manager

Susan Boyd

Mary Emerson

Louise Menegus

Agnes E. Perry

Iennifer Price

James Bingham, Single-Copy Sales Manager

Cathy A. Rutherford. Assistant Manager

Claudette Carswell

Karen Desroches

personnel

Cheryl Hurd. Office ManagerPatricia Burke, Personnel Coordinator

BUILDING SERVICES/TRAFFIC

Anthony Bennett, Building Services ManagerBrian HigginsMark Monkton

receptionist

Donna Healy

EDITORIAL AND BUSINESS OFFICE: One Phoenix Mill Lane.Peterborough. New Hampshire 03458. (603) 924-9281

West Coast Offices: 425 Battery St.. San Francisco, CA 941II,(415) 954-9718; 3001 Red Hill Ave.. Building #1. Suite 222. CostaMesa. CA 92626. (714) 557-6292. New York Editorial Office:

1221 Avenue of the Americas, New York, NY 10020, (212)512-2000.

BYTE • SEPTEMBER 1986

Circuit-Board-Artwork Software:$895. And guaranteed.

smARTWORK® lets the designengineer create and reviseprinted-circuit-board artwork onthe IBM Personal Computer. Youkeep complete control over yourcircuit-board artwork—from startto finish.

And smARTWORK® is reliable.When we couldn't find a pack-age that was convenient, fast,and affordable, we createdsmARTWORK® to help design ourown microcomputer hardware.We've used it for over two years,so we know it does the job.

That's why we offer every designengineer a thirty-day money-back no-nonsense guarantee.smARTWORK* advantages:D Complete interactive control

over placement and routingD Quick correction and revision□ Production-quality 2X artwork

from a pen-and-ink plotter

D Prototype-quality 2X artworkfrom a dot-matrix printer

□ Easy to learn and operate, yetcapable of sophisticatedlayouts

D Single-sided and double-sidedprinted circuit boards up to10 x 16 inches

□ Multicolor or black-and-whitedisplay

System Requirements:

□ IBM Personal Computer, XT, orAT with 320K RAM, 2 disk drives,and DOS Version 2.0 or later

□ IBM Color/Graphics Adapterwith RGB color or black-and-white monitor

□ IBM Graphics Printer or EpsonFX/MX/RX series dot-matrixprinter

□ Houston Instrument DMP-41pen-and-ink plotter

□ Microsoft Mouse (optional)

The Smart Buy

At $895, smARTWORK® is proven,convenient, fast—and guaran-teed. Call us today. And putsmARTWORK® to work for yourselfnext week. Try it for 30 days atabsolutely no risk. That's smart work.

Wintek Corporation inquiry 3so

1801 South StreetLafayette, IN 47904-2993Telephone: (317) 742-8428Telex: 70-9079 WINTEK CORP UD

In Europe contact: RIVA Terminals Limited,Woking, Surrey GU21 5JY ENGLAND,Telephone: 04862-71001, Telex: 859502

"smARTWORK". "Wintek" and the Wintek logo areregistered trademarks of Wintek Corporation.

EDITORIAL

College Credits ThroughTelecommunications

We urge colleges and universities to ex-pand the practice of granting credits forcourses taught through computer con-ferencing.

We have become aware of the need forcomputer-mediated instruction becauseBYTE's offices are located in a rural area.In order to advance professionally,members of our staff often need to takeuniversity courses to increase theirknowledge of computer science or engi-neering. Unfortunately, we have no univer-sities in easy commuting range that offerbroad curricula in these fields of study.Some of our staff members have enduredlong commutes to continue their studies,but work loads are high at BYTE, and fewemployees can both do their jobs well andundertake regular university studies at dis-tant sites.

The Instructional Medium

Direct observation has shown us that com-puter conferencing works as an instruc-tional medium. We have seen tutorialtopics spring up in many conferences onBIX. People learn about programming anew machine, for example, from volunteerteachers in distant areas. Sessions havethe quality of free and open classroomdiscussions. The lack of face-to-face con-tact has not proved to be a hindrance.

We also know that instruction by com-puter conferencing has already worked ina university. The New School for SocialResearch, through an association withConnect Ed, has already taught graduatecourses in media studies. Connect Ed usesthe EIES conferencing software developedat the New York Institute of Technologyby Murray Turoff. Some members of theBYTE staff visited the New School last yearand spoke with students and teachers inthe New School/Connect Ed program. Allagreed that the system works. In their pro-gram, computer conferencing is supple-mented by some actual classes. The re-quirement of occasional classes on cam-pus is much less daunting than a longcommute several times each week.

From the teacher's perspective, com-puter conferencing has some advantagesas an instructional medium. It is easy to

monitor attendance and to measure par-ticipation. Questions can be addressed tothe whole class or to an individual. Sincestudents can think as long as they wishbefore replying, dialogue conductedthrough computers is in some respectseasier than spoken conversation. And, ofcourse, shy and quiet people can alwayshave their say in computer conferencing.The loud and aggressive can't drown themout. Examination tools to simplify the ad-ministration of exams on-line would notbe difficult to create.

New Educational Opportunities

The use of telecommunications as ameans of instruction can enable potentialstudents in rural areas to gain access tooutstanding teachers and scholars at ma-jor universities. If computer conferencingsoftware is used, students can enjoydiscussion and debate with students fromdifferent regions and backgrounds. Thecommunity of higher education willbecome accessible from remote areas asnever before. Potential students in ruralareas will enjoy unprecedented educa-tional opportunities.

Moreover, computer conferencing canmake many educational opportunitiesnow beyond commuting range availableto everyone. Even the opportunities avail-able to those in urban areas will increase.

Cost Advantages

Sadly, the cost of higher education hasnow become prohibitive for many people.Instruction through computer conferenc-ing can alleviate this situation by reduc-ing expenses for both the university andthe student. Universities will be able toadd more students without building moredormitories and classrooms. The studentcan continue to live at home, incurring nonew room and board expenses. This willeffectively reduce the student's expensesto the amount of tuition, which can be ex-actly the same for on-line students as foron-campus ones. With tuition remainingthe same, the university will experience noloss of revenue.

Combined Study

It seems likely that universities will beable to combine on-line instruction

with on-campus instruction to provideimproved courses. Daily on-line instructioncould be supplemented by on-campusinstruction—perhaps one or two Saturdaysper month. Another intriguing possibilitywould be letting on-line students com-pete for on-campus scholarships to com-plete their studies. On-line interactionwith prospective students might alsopermit both students and universities tomake better choices in the admissionsprocess.

The Big Step

We urge universities to offer credit coursesthrough computer conferencing in orderto test the limits of the medium and tolearn how best to combine on-line and on-campus instruction. We believe computerconferencing can help preserve and ex-tend educational opportunity in a time ofprohibitive costs for many students andmany universities. If universities do this,they will open their curricula to millionsof potential students—personal computerusers everywhere. Through their com-puters and modems, personal computerusers, even those located in rural areas,will gain access to an enormous range ofcourses. Let's hope that universities andaccrediting associations will seize thisopportunity to extend educationalprograms.

—Phil LemmonsEditor in Chief

Update on Availability of Listings

This issue contains postage-paid cardsfor ordering source code listings ondisk or in print. You can order indi-vidual disks or take out an annualsubscription. While the postage-paidcards and our agreement with a diskfulfillment service will make orderingmore convenient, they will also add toour costs. As a result, we have had toraise prices. Previously, IBM and otheravailable 5!4-inch disks were priced at$5 each, or $60 for the year. The IBMdisks will now cost $8.95 each, or$69.95 for the year. Pricing for otheravailable disks is stated on the ordercards.

BYTE • SEPTEMBER 1986

When computers get down to business, they move up to Maxell.

Maxell is ready when you arewith the newest technologyin magnetic media. A perfectexample is this double-sided3V2" microdisk.

rnaxell

MICRO FLOPPY DISK

IF2-DD

maxell

THE GOLD STANDARD

Maxell Corporation of America, 60 Oxford Drive, Moonachie, NJ 07074

RAM-Resident Program Users...

IT'S EASY TO WIN

WHEN YOU BUY

THE REFEREE

Referee™ stopsRAM-residentprogramconflicts.

If you use desktop

organizers, spell

checkers, keyboard

enhancers or other

RAM-resident programs

you may have already discovered

the horror of "RAM Cram."

RAM Cram occurs when memoryresident programs competewith each other (and withapplications programs) forcontrol of your keyboard orother computer resources.It's a fierce competition that cancause your computer to lock upcompletely. Then you pay thepenalty—in lost time and lost data.

With Referee, you make the rules.

Referee, by Persoft, is a new type ofsoftware that puts you in total control ofyour RAM-resident programs. And thatputs Referee in a league all its own.You can create your own RAM Teams™for specific applications programs.Team Superkey™ and Sidekick™ withLotus 1-2-3™. Or call in Prokey™ and bench

the others when you switch to dBASE 111™.Load all the programs you need at thebeginning of your workday. Referee auto-matically activates and deactivates the onesyou need according to your set of rules,nstantly. Invisibly. You can also use Referee tounload programs from memory—even thosewith no unload option of their own.

Referee's Sideline™ menu enables

you to control RAM-resident

programs from within an

applications program!

s ideal for integrated pack-ages like Symphony™ Youcan use a keyboardenhancer with thespreadsheet module.Or deactivate it, enter theword processing moduleand activate your favorite spellchecker. It's easy. And you never haveto back all the way out of the program!

Referee puts an end to RAM-resident

program conflicts. It solves a very big

problem for a very small price.

It's easier to win with the Referee on

your side. For more information, and for the

dealer nearest you, contact: Persoft, Inc.,

465 Science Drive, Madison, Wl 53711,

(608) 273-6000—Telex 759491.

persafr

© Copynghl 1986 Persoft. Inc. All rights reserved

Referee, Sideline, and RAM Teams are trademarks ol Persoft. Inc.

Sidekick and Superkey are registered trademarks ol Borland International. Inc.

Lotus 1-2-3 and Symphony are registered trademarks ol Lotus Development Corp

Prokey is a trademark of RoseSoft. Inc

dBASE III ts a registered trademark ol Ashton-Tate.

8 BYTE • SEFTEMBER 1986

Inquiry 270

MICRO-BYTES

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

Philips Working on WORMs Compatible with CD-ROMs

Philips Subsystems and Peripherals (New York City) is working on a new type of write-onceread-many (WORM) optical disk drive that will be compatible with CD-ROM optical disks.Philips calls the new disks CD-PROMs and says that the disks will store the same amount ofdata (540 megabytes), formatted in the same way, as CD-ROM disks. CD-PROMs are morethan a year away from commercial availability.

Currently, most small write-once optical disks are 5.5 inches in diameter (compared to the4.7 inches of the CD-ROM disk) and can store only 100 to 200 megabytes per side. Whatwill differentiate CD-PROM disks from standard CD-ROM disks is the manner in which thebits of information are stored. On a normal CD-ROM disk, the bits are stored as pits in themedium. On the CD-PROM disk, the bits are stored as phase changes in the medium.

Philips is working on a drive that not only reads and writes the new CD-PROM disks butcan also read regular CD-ROM disks. One problem is the sizable amount of processing re-quired for the error-correction techniques CD-ROM disks need (see May BYTE, page 164).

Another problem is that CD-PROM disks are more delicate than CD-ROM disks, which arerelatively impervious to normal wear and tear. Philips is proposing to other manufacturers adisk cartridge designed to protect CD-ROM and CD-PROM disks.

The CD-PROM drives may be useful for archival purposes or for publishing large amountsof information in small quantities—that is, quantities not cost-effective for regular CD-ROMpublishing. Another possible application will be for companies that want to test prototypeCD-ROM disks before mass-producing them.

The cartridge for the CD-ROM disks will probably be introduced at the Fall COMDEXshow. Samples of the CD-PROM drives will probably not be ready until the second half ofnext year. Production units will most likely not be available until 1988. Philips expects thedrives to cost less than $1000, and the disks somewhere under $100.

The Terabytes Are Coming, the Terabytes Are Coming

Remember when a gigabyte was an unbelievably large quantity of data? Well, now a Dutchcompany named DOCdata is planning an optical tape drive that can store 1 terabyte—that's1000 gigabytes—of data. The device, called the DOCwheel, uses 128 optical data cassettesarranged in a wheel; it has a footprint of approximately 3 square feet. The DOCwheel willsupposedly be able to access any file on any cassette in an average time of 10 seconds.

Each cassette is approximately the same size as a standard audio cassette, measuring 4.4by 2.2 by 0.6 inches. With a data capacity of up to 8 gigabytes, the cassette's ratio of datacapacity to volume is said to be 30 times that of an optical disk. For durability, the cassettehas a steel casing and is hermetically sealed to keep out dust.

The DOCwheel and the smaller DOCreader, which can read only one cassette, are de-signed to be used with large systems and will be plug-compatible with existing magnetictape drives, DOCdata said. Although the system uses write-once optical tape, DOCdata doesnot think this will be an impediment, since most magnetic tape is used in a similar way (thatis, magnetic tape is written on once and might later be recycled, but it is rarely updated).

Both devices are scheduled to be available commercially in 1987. DOCdata N.V. can bereached at P.O. Box 1021, Maaskade 11, 5900 BA Venlo, The Netherlands, (0) 77-544100.

Colorado Crystals Changing Face of Display Technology

A new type of liquid-crystal device has been designed by a physics professor at the Univer-sity of Colorado in Boulder and a colleague from Sweden's Chalmers Technical University.The device, called an electro-optic light valve, uses a ferroelectric liquid crystal betweenclosely spaced glass plates. It's described as being much faster than liquid-crystal lightvalves currently in use. In large arrays, the ferroelectric crystals can provide display screensthat have inherent memories.

(continued)SEPTEMBER 1986 -BYTE 9

The Colorado professor, Noel Clark, says that when voltage is applied, the valves changecolor in less than a microsecond. According to Clark, who with Sven T. Lagerwall haspatented the technology, the crystals provide a high-speed electrically operated light valvewith built-in memory.

Clark said that because the technology offers very fast switching times, it could be used inshutters that respond in less than a microsecond, in high-speed switches for fiber optics,and in optical modulators. Another possibility Clark cited is optical printers, which he called"fast and inexpensive enough to make laser printers obsolete."

Along with David Walba, a chemistry professor who helped synthesize the new crystals,Clark set up a Boulder-based firm that's selling the ferroelectric crystal materials.

GaAs Chip Passes Test As Microprocessor

McDonnell Douglas (Huntington Beach, CA) has built a gallium arsenide chip for use as amicroprocessor and claims it's the first such chip to be tested successfully. The MD290I"contains the logic elements to process information, not just to store it," said BillGeideman, microprocessor program manager at McDonnell Douglas. "It would form thebrains of a gallium arsenide computer." Gallium arsenide as an 1C material is noted for itsspeed, resistance to natural radiation, and use of less power than silicon chips.

Geideman said the new chip, a bit-slice processor, is "tested and fully functional." Itemulates the AMD2901 and could run the same software. The 4-bit chip measures one-eighth inch square, contains 1860 transistors, and uses 135 milliwatts of power.

Geideman said he hopes to assemble a 16-bit computer using the new architecture andseveral other chips. The company said it is developing a 32-bit GaAs microprocessor.

And Jessica Had Amnesia, and Dorian Really Wasn'tDead, and...

A computer science professor at Columbia University (New York City) is working on a pro-gram designed to generate plot outlines for soap operas. The program, called Universe, cancurrently generate only a few outlines. But professor Michael Lebowitz thinks he can getthe program to generate a significant variety of plots by expanding its knowledge base to asize approximately two orders of magnitude larger than its present dimension.

To design the program, Lebowitz monitored one soap opera, "Days of Our Lives," andnoticed some patterns. For example, there is usually some force keeping lovers apart. In atwo-year period, Lebowitz counted three dead spouses who turned out to be alive, fourlovers who died (at least temporarily), and three lovers who contracted some type ofdisease (one of which, of course, was amnesia).

Universe is being written in LISP and is now running on a DEC 20 mainframe, althoughLebowitz says it could easily run on an IBM PC AT. Lebowitz predicts that the program willprobably not replace scriptwriters but says it may be useful as a scriptwriter's assistant.

Nanobytes

An industry source who recently dissected IBM's 3'/2-inch external disk drive (introduced inApril and available for the PC, PC XT and PC AT) says the drive itself is a 2-megabyte drive,from Alps Electric USA, that could be formatted for as much as 1.4 megabytes of data, in-stead of its current capacity of 720K bytes. This leads to speculation that a new version ofPC-DOS will enable users to exploit the full 1.4 megabytes, which would provide incentiveto switch from 360K 5'/4-inch drives to the new microfloppies. . . . Phoenix TechnologiesLtd. (Norwood, MA) and Interactive Systems Corp. (Santa Monica, CA) have agreed tojointly develop software designed to provide a "virtual" PC environment under UNIXSystem V version 3.0 for computers based on the Intel 80386 microprocessor. The V86/ix(an internal name) software would allow PC-compatible DOS applications to run as a taskunder UNIX without modification.... The Association of Independent Microdealers(Peoria, IL) has formed a special interest group called the Computer Musicians Cooperative,aimed at bringing together computer dealers, music dealers, manufacturers, and peoplewho are interested in computer music. . . . The U.S. Naval Observatory (Washington, DC) isplanning to put out a disk of astronomical information for professional and amateur star-watchers, navigators, meteorologists, engineers, and other people who want to know what'shappening in the heavens. The Floppy Almanac will run on MS-DOS machines. . . . NS1Logic Inc. (Marlboro, MA) has integrated five graphics standards on one chip. The user-programmable EVC (Enhanced Video Controller) -315 can emulate the Color GraphicsAdapter, the Monochrome Display Adapter, the Enhanced Graphics Adapter, the HerculesGraphics Controller, and the Professional Graphics Adapter.

10 BYTE • SEPTEMBER 1?

Pre-shrunk.Pre-fitted.Ere-thunk.

When you buy a Ven-Tel modem, you buy 12 years of well thoughtout, innovative technology that's custom-tailored to your needs.

Like the PC Modem Half Card™ the first modem ever shrunk tofit into a short slot, so you'd have another long slot for more memory

or other functions.

And our "pre-fitted" 2400 baud modem-the only 2400 that lets you double yourtransmission speed without reconfiguringyour PC, buying new software orchanging switches.

Another thing: other modemshave 300 or so working compo-nents, ours have 70.That means

custom:

they use less energy and generateless heat—the main cause of PCmalfunctions.Even so, we back every Ven-Telwith a free five-year warranty. Nomajor manufacturer even comes close.

Tel modem you buy off the shelf seems■ your office, don't be surprised. It was.

VenTel

Modems

Our free 24-page booklet, "How To Select The Correct Modem" contains specific informationabout our full line of modems.To request your copy, call 800-538-5121. In California, call408-727-5721.

Inquiry 363

SEPTEMBER 1986 -BYTE II

40 Megabyte Opacity, BACKUPmTape System.

Irwin has raised tape backup to a capac-ity of 40 megabytes. And, just as withIrwin's 10 and 20 megabyte systems, themicro cartridge is so small, it fits easilyin a shirt pocket. This new 40 megabytesystem provides all of the features andadvantages that have made IrwinBACKUP™ Tape Systems the best selling inthe microcomputer industry. Here's why!

Irwin's Complete and Friendly Software

makes backup convenient and easy touse. Menu driven, Irwin software per-mits unattended backup of your entiredisk or only specific files you select.

Interchangeability is Assured

by Irwin's patented SERVO™ track fol-lowing feature. Your Irwin Micro Car-tridge can be accurately read on anycomputer equipped with an IrwinBACKUP™ Tape System.

Irwin's EC/TAIW

provides automatic error correction.This eliminates the need for verificationand assures yon of data integrity.

Extremely Affordable,

less than $1,000* the Irwin 40 megabyteBACKUP™ System more than pays for itselfthe first time it is used to restore data.

Designed Specifically to protect

information stored in microcomputersequipped with hard disks, each Irwin10, 20 and now 40 megabyte systemincludes models for internal mountingdrive or external plug-in. IrwinBACKUP™ Systems are designed for IBMPC/Ai; IBM PC/XT and most popularcompatibles.

Now there's 40 megabyte protec-tion that is easy to use and affordable.Why take unnecessary risks? Call1-800-BACKUP 1 or visit a leading 4computer store for a "hands-on"demonstration.

T

MAGNETIC^

I.HOO.IIACKIH'

Inquiry \T>

-Kfc 1

■

ml

0*04**"'-

/>£ ;-i: ft) ■

m^

fne&t IHIJn&m mlmma

u *arl j ■ I

LETTERS

Hilbert Curves Made Simpler

Thank you for June's Programming Insight,"Hilbert Curves Made Simple." 1 was notfamiliar with these elegant designs. Itseemed to me. however, that the Hilbertcurve would lend itself to simpler, moreself-evident instructions in the Logo lan-guage rather than in BASIC.

After reviewing Michael Ackerman's ar-ticle, I sat down with Apple Logo II andtaught the turtle that Hilbert curves,regardless of complexity, were simplyright-hand curves and left-hand curves thatalternate in a constant, recursive pattern.I carefully explained to the turtle thatthese curves could be generated with onlythree procedures and two variables:

TO HILBERT :ORDER :SIZE

PENUP

SETPOS [-125 115]

SETHEADING 180

PEN DOWN

CURVRIGHT :ORDER

END

TO CURVRIGHT :ORDER

IF :ORDER = 0 [STOP]

LEFT 90

CURVLEFT .ORDER - 1

FORWARD :SIZE

RIGHT 90

CURVRIGHT :ORDER - 1

FORWARD :SIZE

CURVRIGHT :ORDER - 1

RIGHT 90

FORWARD :SIZE

CURVLEFT .ORDER - 1

LEFT 90

END

TO CURVLEFT :ORDER

IF :ORDER = 0 [STOP]

RIGHT 90

CURVRIGHT :ORDER - 1

FORWARD :SIZE

LEFT 90

CURVLEFT :ORDER - 1

FORWARD :SIZE

CURVLEFT :ORDER - 1

LEFT 90

FORWARD :SIZE

CURVRIGHT .ORDER - 1

RIGHT 90

END

The first procedure. HILBERT, tells the

Figure I: Hilbert curve with logo.

turtle where to start and that the largestpattern will be that of a right-hand curve.The other two procedures (CURVRIGHTand CURVLEFT) show the turtle how tomake right- and left-hand curves andwhere to make the little side trips.

The symmetry of the curve is suggestedin the palindromic nature of the twomirror-image procedures. The swapping ofright and left turns is built in. Even tothose unfamiliar with programming, thisLogo program conveys how complexdesigns (like figure I above) can begenerated by a few simple, understand-able instructions.

Mark D. WidomeHershey, PA

In Defense of Amiga

Much of the "discussion" about popularpersonal computers approaches the fer-vor usually reserved for religion (and com-puter languages). While it is not my inten-tion to turn BYTE readers into Amiga con-verts, the misinformation in Ronald Miller'scomments in the June Letters column("Putting the Amiga to Good Use," page14) cries out for clarification.Specifically, Mr. Miller:

• Based his opinions on a conversation hehad with one dealer. I know a dealer whoworships the Osborne 1 and has little usefor anything else.

• Concludes that the IBM PC's 8087 chipis faster and more precise for numericalwork than the 68881. BYTE readers shouldkeep in mind that the 68881 is to the

68000 what the 8087 is to the 8088.Would it be fair of me to say that the688.81 runs rings around the 8087 for ac-curacy and speed? Astute readers will alsonotice that the IBM PC does not comewith the 8087. In both machines the mathcoprocessor is an add-on.

• Worries about RAM glitches corruptinghis data. While this is not a meritless con-cern, it is minuscule compared to the pos-sibility of a "bad bit" (or worse) on yourdisk, where far more information is stored.Memory errors seldom happen; disk er-rors happen too often. It is much morecritical to have a file system that helpsyou recover from disk errors. AmigaDOSmay well be the most secure file systemon any personal computer, just for thisreason.

A recent experience comes to mind: Iwas compiling a program on the Amigawhile a friend sat next to me using an IBMXT. As 1 got up to stretch, 1 inadvertentlykicked the power strip where the two com-puters were plugged in. flickering poweroff for a split second. The XT monitorflashed, then the machine rebooted itself.The Amiga monitor flashed. Period. Thedisk drive kept on spinning, and the com-pile finished normally. Which machine doI want to keep my database on?

• Is amazed at how bad the 80-columntext is and suspects that a font changewould fix that. Correct. In fact, the Amigafonts are not generated by a charactergenerator chip: all fonts are changeable.The Sidecar (Amiga PC-compatible add-on) font looks just like the IBM PC font,for example.

• Rules out the machine as a word pro-cessor because it does not have mono-chrome video output. I don't now how this

{continued)

LETTERS POLICY: To be considered for publica-tion, a letter must be typed double-spaced on oneside of the paper and must include your name andaddress. Comments and ideas should be expressed asclearly and concisely as possible. Listings and tablesmay be printed along with a letter if they are shortand legible.

Because BYTE receives hundreds of letters eachmonth, not all of them can be published, letters willnot be returned to authors. Generally, it takes fourmonths from the time BYTE receives a letter untilit is published.

14 BYTE • SEPTEMBER 1986

LOOKING FOR THE BESTVALUE IN PC/AT COMPATIBLES?

INTRODUCING THE $1495 A*STAR

Looking for a lower priced, higherquality PC/AT compatible than our newA*Star™is like looking for a needle ina haystack. You're more apt to come upwith a case of hayfever.

A*Star gives you features youwon't get from any other vendor. NotIBM. Not Compaq. Not even those for-eign manufacturers. Features like a 220watt power supply, eight available ex-pansion slots and "network ready"multi-user operation. All for only $1495.And that price includes a 1.2MB dis-kette drive, 512KB memory, a fixeddisk/diskette drive controller, a tactilefeedback keyboard (you'll love it!) and a6/8MHz switch /software selectable80286 CPU.

Best of all, A-A-Star is quality builtright here in America by Wells Ameri-can Corporation - an American StockExchange manufacturer. So now you

IBM. Personal Compuler AT and AT are trademarks ol Inlernalional

Inquiry 368

can buy with confidence from a vendoryou can trust, just like you've trustedIBM. And you'll get a genuine, top qual-ity product (not a cheap imitation) for aprice even less than those "questionable"mail order clones. And if that's not enough,it's all money-back guaranteed!

The $1495 Wells American A^Star.1

A PC/AT FOR ONLY $1495?THAT'S NOTHING TO SNEEZE AT!

[Hurry! This offer is limited.]

□ I'm tired of sneezing! Have someone callme immediately to take my order.

□ A*Star sounds terrific. Tell me more.

Name: '.

Company:

Phone:

Address:

City:

State:

■ Zip:.

A^ Wells American

^T 803/796-7800-TWX 510-601-2645Sunset Boulevard ■ West Columbia, SC 29169

s Machines Corpora

SEPTEMBER I986 -BYTE 15

LETTERS

wmim

Super PowerCompatibility

The POWER SYSTEM™ from PECAN has set a new standard for comprehensiveness in programdevelopment environments that you won't find anywhere else:

PORTABILITY: Whether you're an ardent beginner or a seasoned pro, THE POWER SYSTEM letsyou design software that can run on virtually any mini or micro without having to rewrite the program.The program you write on one computer will operate on another— even if the two hardware systemsare incompatible. Your software never becomes obsolete — even if your hardware does.

INTEGRATABIUTY: The versatility and flexibility of THE POWER SYSTEM enables different users toexchange program modules freely with one another, even though the modules may be written in differentprogramming languages.

LANGUAGE INTERCHANGEABILITY: THE POWER SYSTEM lets you customize the modules ofyour application in the most appropriate of Pecan's powerful languages including UCSD PASCAL,BASIC, FORTRAN-77, ASSEMBLER, or MODULA-2. Once you've created your multi-language program,the modules are linked automatically. The application then runs as if you'd written it all in one language.

THE POWER SYSTEM FEATURES:

• NATIVE CODE • SEPARATE COMPILATION OF UNITS • EXTENDED PRECISION ARITHMETIC• DYNAMIC MEMORY MANAGEMENT • EVENT-DRIVEN MULTI-TASKING • CONFORMANT ARRAYSPROCEDURAL PARAMETERS • 8087 AND BCD SUPPORT (PC's AND COMPATIBLES) • URGE FILE EDITOR• LIBRARY UTILITY • ON-LINE HELP SYSTEM • FILE MANAGER

THE POWER SYSTEM Only $99.95

For PC-DOS, MS-DOS, AMIGA, ATARI ST, MACINTOSH, RAINBOW, TANDY, STRIDE, as well as mostpopular 8/16/32 bit systems. Also available in VAX, UNIX, PDP-11 OS's & others.

THE POWER SYSTEM includes the language of your choice: UCSD PASCAL, MODULA-2, BASIC,ASSEMBLER and FORTRAN-77. Choose an additional language for only $79.95. Buy three and we willsend you a fourth one FREE!

To custom-tailor software, PECAN offers such programming tools as:

CROSS-ASSEMBLER/NCG PACKAGE $79.95 SOFTEACH TUTORIAL $49.95

KEYED SEDUENTIAL ACCESS METHOD.... $59.95 MENUMAKER $49.95

CODE OPTIMIZER $59.95 PROGRAM ANALYSIS TOOLKIT $59.95

SYMBOLIC DEBUGGER $59.95 SORT UTILITY $59.95

Write for complete list of development aids.

ATTENTION CORPORATIONS: Call and ask about our training seminars.SCHOOLS: Special Educational Discounts

NOT COPY PROTECTED

Mail Your Check Or Money Order To:

Pecan Software Systems, Inc.

1410 - 39th Street

Brooklyn, New York 11218

(718) 851-3100

ITT TELEX NUMBER: 494 8910

COMPUSERVE CODE: 76703,520

Please add $2.50 tor shipping within the US. Foreign orders add $10.00 and make payment by bank draftpayable in US dollars on US bank. New York State residents add appropriate sales tax.UCSD Pascal is a trademark of The Regents ot University of California.Inquiry 269

The UCSD Pascal CompanyCredit Card Orders ., .800-63-PECAN

Call Toll Free

(NYS) 1-800-45-PECAN

could help. I am typing this letter on theAmiga, which (at the moment) has a blackscreen with amber letters (and a white cur-sor so I can always find it quickly, and bluedepth-arranger icons, too. but that'sbeside the point) and a custom font. I haveoften sat here for hours and have neverdeveloped a headache from the display.A nice long-persistence monitor and my50-line word processor work very welltogether, thank you.

• Dismisses the Amiga from being a "realgraphics" machine without explanation.If he means it's not a $30,000 dedicatedgraphics processor. 1 see his point. Similar-ly, Mr. Miller asserts that it cannot be usedfor image processing work because itdoes not have 1K by IK by 2 56 capability.

First, no personal computer fits thesedescriptions, save those that have beenenhanced with third-party add-on boards.Second, for those who can't afford to do"real graphics" on a $30,000 system, aquarter of the functionality can be had for5 percent of the price. Third, the hardwarein the Amiga 1000 doesn't have IK by IKby 2 56 capability (yet), but the software hasalways had the capability.

• Asks the question, "What is an Amigagood for?" My mother asks that about allpersonal computers. For the amount oftime and money we shovel into theseglorified hobbies of ours, could we reallyjustify them? Ten years from now we mightcome across an old issue of BYTE andremember what religions (machines, lan-guages, text editors) were then. And laugh.

Bob PaceAndover, MA

Smalltalk and Spaceblankets

As a developer of object-oriented lan-guages and a Smalltalk fan, I read withgreat interest I. Ganapathy's letter in the(une issue ("Problems with Smalltalk."page 24). I have to agree that Small-talk-80's windowing problems are signifi-cant and a real drawback to anyone hop-ing to write an application and release itto inexperienced users.

Part of the problem is that getting Small-talk's windows to work well on smaller ma-chines would have required a great dealof optimization and recoding in machinelanguage. This obviously makes the lan-guage far less portable and gives pauseto any potential implementor.

Another part of the problem is the na-ture of Smalltalk's genesis. Smalltalk wasdeveloped in a research branch of Xeroxand will never be a significant profit center.Since Smalltalk is hardly relevant toXerox's corporate survival, there isn't the

{continued)

Inquiry 193 —►

The source of Wizardry* ♦ ♦

Throughout historypeople have sought theaid of wizards to adviseand direct them throughthe mysteries of the age.These powerful beingswere believed to be thepurveyors of super-natural substances, theweavers of secret spells,and keepers of a magiclore. Today we knowwhat was once magic issimply a combination ofknowledge and ability—the ability to manipulatean environment andsolve its most difficultproblems.

Today's wizards seldommake such claims tosupernatural powers, yetthey work their magicstill: in globalcommunications, infor-mation networking anda range of areas thatonce existed only in aworld of imagination.No longer fantasy, this isthe magic on which areal world now depends.

Ours is an age thatdemands a knowledge ofsystems software forcomputer networks,switching systems, expertsystems and a variety ofpowerful operatingsystems including theUNIX® operatingsystem andUTS® onmachines

ranging from microsto mainframes.

At Lachman Associates,Inc., we understand theunique position of thesystems professional whoholds the secrets of thisspecialized knowledge.We understandbecause of who

over 125 full-timeconsultants who adviseand direct sophisticatedtechnical projects forsome of the largest com-panies in the world. Thespells we weave and themagic we summon cancreate high-reliabilityoperating systems;telephony products; net-working with TCP/IP,OSLX.25, and ISDN;Network File Sharing(NFS); engineering andscientific applications;multi-processor archi-tecture evaluations;training, productanalysis and docu-mentation; or stillanother environmentyet to be imagined.

So be advised. Wizardsdo exist. In fact youmight be one. If not, re-member us. Somedayyou will surely need one.

Equal Opportunity EmployerResumes accepted in confidence

registered trademark of AT&lT.rademark of the Amdahl Corpo

Lachman Associates, Inc.

Corporate Offices i

(v)5 Blackhawk Drive • Wcstmont, IL 60559 J*

}|2 98d HH40 SUfi

Chicago ColumbusDenver New Jersey

Inquiry 416

The world's bestdata acquisition

softwarejust got better.

LABTECH REAL TIME ACCESS

teal Ii«e SpreadsheetData Analysis:

Control Linit FactorStd Deviations 1.2

SUHKV STATISTICS:

Latest value 8.2563

Current Bean 8.357448

Std Deviation B.B43793

Himu value 8.2881

tain Value 8.4712

Upper Unit 8.418268

Low Lii.it 8.384675

Real time data flowing into a Symphony spreadsheet.

withLABTECH Real Time Access.

With LABTECH Real TimeAccess you have a link between NOTE-BOOK and any other MS/PC-DOS applica-tion package. A real time link that servesas a data "pipeline" between the two.

So now you can move datadirectly between NOTEBOOK and Lotus1-2-3®, Symphony®, Ashton-Tate'sdBASE III®, MathSoft's MathCAD™, orother spreadsheets, data bases, statisti-cal analysis systems, or programs thatyou develop.

If you already own LABTECHNOTEBOOK you're probably alreadythinking of new ways to use it with RealTime Access. If you don't have NOTE-BOOK now, you have one more reason toinvest in it.

Find out more about LABTECHNOTEBOOK, the accepted standard inData Acquisition software, and LABTECHReal Time Access, the ultimate option.Call or write Laboratory Technologiesnow for complete information.

LABTECH software is compatible with:

IBM PC, XT, AT, compatibles

LABTECH NOTEBOOK works with instrumentationInterfaces from: Acrosystems, Action Instruments,Advanced Peripherals, Analog Devices, Anasco,Burr-Brown, Coulbourn Instruments, Cyborg, Dataq,Datatek, Data Translation, Datel, HanZon Data, IBM,ICS/Action, Interactive Microware, Interactive Struc-tures, Keithley, Metrabyte, Microhybrid, Micro StarLaboratories, National Instruments, Omega Engineering,Scientific Solutions, Strawberry Tree and Taurus.

II

Laboratory Technologies Corporation

255 Ballardvale Street, Wilmington, MA 01887(617)657-5400.

dBASE III is a registered trademark of Ashton-Tate. Lotus 1-2-3and Symphony are registered trademarks of Lotus DevelopmentCorporation. MathCAD is a trademark of MathSoft, Inc.

18 BYTE • SEPTEMBER 1986

LETTERS

same kind of motivation to support thelanguage with new releases. I'm sureSmalltalk is extremely important to thegroup at PARC, but their raison d'etre isresearch, not technical support.

This may also explain why so little em-phasis was placed on "cosmetic" issuessuch as clean, fast windowing. It seemsthat more attention has been given to theunderlying elegance of the language thanto the external features. Many of the win-dowing problems have been addressed inSmalltalk systems used internally at Xerox.As of a couple years ago, however, thesefixes had not been applied even to the sys-tem used for demonstrations.

Ironically, Smalltalk is the system thatpopularized windows in the first place.Now that windows are hot, Smalltalk hasbeen outclassed by hungrier, more profit-minded competitors in the commercialmarketplace. Nevertheless, we all oweSmalltalk and Xerox PARC a tip of the hatfor many innovations that are just nowfinding their way into the mainstream ofpersonal computing. I suppose it's kind oflike NASA and space blankets.

Charles B. DuffEvanston, IL

Linking Data Flow WithDeviled Hands

1 found "Linking Data Flow and FunctionalLanguages" (by Chris Hankin, David Till,and Hugh Glaser, May) enlightening, butI had trouble getting used to the notationused in the data flow diagrams. To makereading data flow diagrams easier for

novices like me, I would like to suggest re-placing the symbols used in the articlewith more informative icons.

Figure 2 below shows the symbols forthe basic operators and the apply node.1 designed the icons to make the point thatthey can make learning easier.

Steve MetskerPortland, ME

Iterative vs. NoniterativeInversion

Several correspondents have pointed outsomething to me that should have beenmade clear in my article ("Inversion ofLarge Matrices," April) and was not; name-ly, for serial processing—meaning homecomputers—any iterative method ofmatrix inversion, such as Pan-Reif. is farinferior in speed and memory economyto established noniterative inversion-in-place methods such as Gauss-Jordan.Computations sent to me by Alfred Allenof Victoria College in Victoria. Texas, forexample, show a speed advantage of thelatter methods using compiled BASIC,over the program 1 gave using interpretedBASIC, by factors of 20 to 40 or evenmore.

To exploit the Pan-Reif "breakthrough,"one has to be serious about needingspeed in the inversion of very largematrices. This means investing sizablesums of money in parallel processinghardware.

On consulting the references I gave, onefinds the following: Let M(n) be the

(continued)

primitive function

duplicator

value generator

—u3=

0

true

apply

Figure 2: Truth, Falsity, the basic operators, and the apply node.

AST's EGA Solution:Upgradeability IsJust A Chip Away

Introducing AST-3G Plus

A lot of EGA boards bundle together IBM" EGA,MDA, CGA and Hercules'" modes, whether youneed them or not. And like it or not, you pay forthem. AST-3G offers something a little different-customer's choice.

Optional CGA, Hercules, MDA Modes. BuyAST-3G's super EGA graphics solution today, and ifyou don't need compatibility with Hercules, CGAand MDA, you don't have to buy it. If you changeyour mind later that's okay too. Upgradeability isjust a chip away using the AST Plus Enhancement Kit.

Easy Upgradeability. The Plus EnhancementKit makes the upgrade to CGA, Hercules and MDAmodes a simple matter of just snapping a chip intothe AST-3G board. And for you corporate buyers,here's your chance to mix and match several boardsaccording to your needs.

AST-3G Is Feature Perfect. With or without thePlus Option, AST-3G offers high-resolution 640 x 350graphics, full-spectrum color capabilities, high-quality text and across-the-board compatibility withall your applications, including business/presenta-tion graphics, CAD/CAM, graphic arts and desktoppublishing. AST-3G virtually transforms your PCinto a presentation medium to create, preview andpresent clear, clean, crisp text and sizzling graphics.

Graph-In-The-Box™ SoftwareIncluded. You can produce a variety ofsharp, colorful charts from spread-sheets, word processing, databaseprograms and more using this revo-lutionary RAM-resident softwarewe've included. Graph-In-The-Boxcaptures data from whatever programyou are running and generates a chart on the spot,without ever leaving your applications program.

AST PresentsGraphicsFreedom

Give Yourself An Option With AST-3G. For

more information contact your local AST authorizeddealer, or call our Product Information Center(714) 863-1480. AST Research, 2121 Alton Ave., Irvine,Ca. 92714.TWX: 753699 ASTR UR.

R€S€HRCH INC.

AST-3G trademark of AST Research, Inc.1HM registered trademark of InternationalBusiness Machines. Hercules trademarkLit'Hercules Graphic Products, Inc. Graph*ln-The-Box trademark oi New EnglandSoftware. Copyrighi >('iy86 AST Research,Inc. All rights reserved.

I

«•.-

gy/gsssess

The Plus Is On Us

Mail in this coupon to AST today, and you will receivean AST-3G Plus Enhancement Kit absolutely free(a $75 value). The kit provides CGA, Hercules andMDA compatibility on your AST-3G.

□ Please send me a free AST-3G PlusEnhancement Kit.

□ Please send me more information on the AST-3G.

Hercules Graphics Mode

■r*¥*

HPJ

Name_Title

Company.

Address

City

Phone

_State_

_Zip.

Monochrome DisplayAnd Printer Adapter (MDA) Mode

AST Research, Inc. 2121 Alton Avenue, Irvine, CA

92714-4992

' ^ B3G+-A1 Offer Expires 9/30/86

J

LETTERS

number of parallel processors required tomultiply two n x n rational-numbermatrices in total time of the order of thelogarithm of n, written 0(log «). Prior toPan-Reif, the most efficient knownalgorithms for inverting a nonsingular n xn matrix required 0(log2«) time and M(n)x n"2 processors. Moreover, all known al-gorithms of this "polylog-time" type wereunstable—that is, they required calcula-tions of perfect precision to yield anyresults at all.

The Pan-Reif algorithms, of which I gavea sample, are stable and forgiving of low-precision arithmetic and run in 0(log2«)time with M(n) processors, provided thematrix is not too poorly conditioned. Therequirement is that the number denotingthe "condition" of the matrix be less thannk for some constant k. The elements ofthe inverse matrix are obtained withrelative precision 2"', where t = nk forsome constant k. it should be added thatfast multiplication methods are involved—I

FoxBASE wins the dBASE race!

6.43 times fester than dBASE III PLUS

New FoxBASE+ sweeps the field: runs 2.26 timesfaster than Clipper, 6.69 times faster than dBCOMPlLER,and 10.86 times faster than dBMAN! And FoxBASEcompiles programs up to 60 times faster than othercompilers.

The others aren't even close!New FoxBASE+ is totally compatible with dBASE III PLUSas is original FoxBASE with dBASE II. No changes inyour present programs, databases, screens, or reports!

Though FoxBASE is a super-fast compiler, it offers thefamiliar, user-friendly interactive features of dBASE andthe full power of "dot prompt" mode plus many signif-icant enhancements.

FoxBASE is available in single andmulti-user versions for MS-DOS,XENIX, UNIX, many net-I works, and other envi-ronments.

Best of all, FoxBASE is economical. Single-user FoxBASEcosts just $395, multi-user FoxBASE $995**—no matterhow many workstations you have.

So call (419) 874-0162 now, and ask for a copy of ourdetailed benchmarks. After all . . .

Nothing Runs Like a Fox.

Fox Software

27475 Holiday Lane, Perrysburg, OH 43551

(419) 874-0162 Telex: 6503040827

XENIX .itredlradernarks olMrciasolt Corporation

presume in hardware.

Needless to say, any polylog-time algo-rithm is much faster than any power-of-n-time algorithm for large enough n. So, weare speaking of exciting progress from thestandpoint of, say, the Department ofDefense, which may not care what it coststo invert large matrices of data on incom-ing enemy missiles. BYTE readers are notin this category. Still, for anyone interestedin iterations, it is intriguing to watch thealgorithm at work—struggling away,gradually overcoming its difficulties . . .so much like the human mind at work ona problem that one is tempted to view the"thinking" process as some sort ofiterative algorithm.

My intent in assigning both plus andminus entries to the random-entry A-matrix to be inverted was to show that thePan-Reif method works for any real-number entries and is not limited to thoseof one sign. Incidentally, the REM at line130 of my listing 1 is misleading in its ref-erence to an alleged need to "input nor-malized data" in case a user-suppliedmatrix is to be inverted. Any real numberscan be input—they need not be normal-ized. In reference to numerical checks onthe inversion, line 2 50 of the listing assuresthat no entry of the difference betweenthe identity matrix and the matrix prod-uct BxA for 3=^4"' exceeds in magnitudesome chosen small number—be it calleda criterion or a tolerance. The routine atlines 500 to 610 makes a similar check forthe reversed-order product AxB. 1 am in-debted to a former BYTE technical editor,Tom Clune, for the latter refinement.

Thomas E. Phipps Jr.Urbana, 1L

CRT Radiation

I am writing in response to the letter fromWilliam G. Nabor ("CRTs Are Safe," May,page 24). As Mr. Nabor correctly asserts,CRTs do not emit significant amounts ofionizing radiation. They do. however, af-fect the concentration and trajectory ofions (charged particles) in the vicinity ofthe screen. The relative concentration ofpositive and negative air ions is known tohave physiological effects on humans andanimals. High concentrations of positiveions can cause irritability, increased sus-ceptibility to respiratory infections, andfatigue. These effects are seen on a largescale during certain weather phenomenathat increase the concentration of positiveions in the air, such as the Santa Ana windin California or the Witch Wind in Israel,for example.

The positively charged screen of theCRT creates a region of high positive ion

[continued)

20 BYTE • SEPTEMBER 1986

Inquiry 135

PC PENS

VI

Discover new dimensionsin PC graphics with HoustonInstrument's "PC Pens"—a familyof desktop plotters that allow youto add brilliant color and clarityto your presentations.

Starting at $699 * these compactplotters produce professional graphicsthat dot-matrix printers simply can'tmatch. With sharp resolution, Hi'sPC Pens give you countless graphicchoices—a variety of pen types(felt tip, hard nib, and drafting),plotting media (paper, vellum, andtransparencies), and special firmware.

Whether you're producing salesgraphs, creating CAD drawings,

or charting household finances,these plotters complete the pictureon 8'/2 x 11 or 11 X 17 inch formats.

Choose from Houston Instrument'ssingle-pen DMP-40, the four-penPC Plotter series, or the impressiveeight-pen DMP-29. Each featuresa standard RS-232-C compatibleinterface and Houston Instrument'sbuilt-in DM/PL™ language, makingeach one immediately compatible withmost microcomputers and hundredsof software packages. And each isremarkably reliable and simple to use.

For more information and the nameof the distributor nearest you, callHouston Instrument at 1-800-531-5205

(512-835-0900 if in Texas) orwrite Houston Instrument, 8500Cameron Road, Austin, Texas78753. In Europe, contact HoustonInstrument, Belgium NV.,Rochesterlaan 6, 8240 Gistel,Belgium. Tel.: 32-(0)59-277445,Tlx.: 846-81339.

*U.S. suggested retail price for PC595 model plotter.Pricing subject to change. DM/PL is a trademark ofHouston Instrument.

Inquiry 164

instrument

A Division of AMETEK

LETTERS

flux, in which the user's face is generallyimmersed. This could affect the health ofusers who are sensitive to ion concentra-tions. A grounded screen positioned infront of the surface of the CRT will reducethe flux of ions in the vicinity of the user.1 have not seen the advertisement towhich Mr. Nabor refers, but I suspect thatthe advertisers have confused the terms"ionizing radiation" and "ions."

William L. CobbMelrose, MA

Easy C: Is the Easy Waythe Best Way?

1 much appreciate your continuing interestin the C language and the high caliber ofBYTE's articles on C.

In "Easy C" (which appeared in the MayBYTE), Pete Orlin and lohn Heath describea set of mnemonic replacements for cer-tain C operators, keywords, and syntacticalelements. The intent was "to produce aversion of C that is quicker to learn andapply."

VTERM/220

Quality makes

all other DEC

terminal

emulators

obsolete

Over 35,000 demanding profes-sionals, like Teradyne's GreggPrescott, have recognized VTERM'ssuperior quality.

Now this same VTERM quality isavailable in Coefficient's powerfulnew emulator, VTERM/220.Features include:

• Plug compatible VT220 emulationwith 132-column support andoptional Tektronix™ 4010/4014

graphics.

• Extensive file transfer system offering KERMIT, XMODEM

and our VTRANS protocol with VMS™ RSXU M/M + ™ RSTS/E™and UNIX™ software.

• Host data capture on PC with conversion to Lotus® 1-2-3®Symphony® and dBase®

• "Hot Key" toggle between host session and PC DOS.

Call us today at 212-777-6707 ext. 190.

Trademarks: DEC, VMS, RSTS'E, RSX I' M/M - , DigitalEquipment Corp.; Tektronix, Tektronix, Inc.; Lotus, 1-2-3,Symphony. Lotus Development Corp.; dBase, AshtonTate,UNIX, AT&T, Bell Laboratories.

22 BYTE • SEPTEMBER 1986

Coefficient

The Leader in DEC Emulation Software

Coefficient Systems Corporation611 Broadway, New York, N.Y. 10012

Inquiry 68

This approach is undesirable for severalreasons:

A programmer who learns Easy C willnot be literate in standard C and will notbe able to read fluently in the C literature.Does not communication require adher-ence to accepted rules of style (in this casethe rules of standard Q? Is it not wrongto teach, "As with any question of style,subjectivity is the rule"? Should notchanges in an established language bemade cautiously, as the ANSI group isdoing?

A program written in Easy C is difficultto read PERIOD Uppercase charactersdraw the eye to keywords COMMA oper-ators COMMA and delimiters COMMA somoving the focus of attention away fromthe principal content of statementsPARENTHESIS variables COMMA func-tions COMMA values COMMA etcPERIOD PARENTHESIS PERIOD In the ex-amples given in figures 5 and 6 PAREN-THESIS pages 146 and 148 PARENTHESISCOMMA it may be easier to follow theflow of the program in Easy C COLON butdoes not the eye of the reader more readi-ly find the variables and see the opera-tions upon them in something written instandard C QUESTION MARK If youdoubt this COMMA try to scan for infor-mation a paragraph such as this COMMAin which punctuation EM DASH periodCOMMA comma COMMA etc PERIODEM DASH is replaced by uppercasewords.

A major attraction of the C language isits clarity. One can generally understandat first reading uncommented C code writ-ten by another programmer. Heavily com-mented FORTRAN and BASIC can be un-readable, even for the coder after a bit oftime has gone by. As illustrated in thepreceding paragraph, the introduction ofuppercase mnemonics reduces the clari-ty of the C language. I am sensitive to this,perhaps because of having been com-pelled awhile ago to write a filter thathelped maintain sanity by converting,back to standard C, code written in a ver-sion of C like Easy C.

An aesthetic point: 1 believe that muchof the visual beauty of C code is lostwhen uppercase words replace sparse Ctokens.

The use of #define statements to allowmnemonic replacements of standard Coperators is found occasionally in the Cliterature, and the excellent Van NuysToolkit, placed in the public domain in1983, was written in an Easy C-like dialect.Such attempts to change the form of Chave not met with general acceptance,

[continued)

Inquiry 179 for End-Users.

Inquiry 180 for DEALERS ONLY. —►

The Word is Out...

It's going to break yourheart if you alreadyown a PC.

JC LIPS provides a new experience inpersonal computing. Our third generationpersonal computer brings you technologicaladvancement and features which have notbeen possible in the past. It runs allpopular IBM PC software 2 to 4 timesfaster than other compatibles. It willimpress you with unsurpassedperformance and cool reliability.Best of all, it is available to you atan affordable price.

Starts from

795

JC LIPS features the

advanced-technology CMOS

NEC V40 processor running at 8

MHz with an equivalent

throughput of at least 9.5 MHz.

The systemboard has 256K of

RAM, expandable to 640K, a

built-in floppy disk controller,

a socket for a high speed floating

point processor, and 8 I/O expansion slots. Also

included as standard on systems are 360K floppy

disk(s), a serial interface, a parallel printer interface, a

battery backed-up clock, a keyboard, and a 135 Watt

power supply, capable of handling all of this plus any

accessories you may add later.

JC LIPS' display system includes a quality 14" highresolution monochrome monitor, with a dark

background non-glare screen and a tilt

and swivel base for easy viewing. The

multi-function display card provides

an IBM PC compatible interface for

a monochrome display with

Hercules compatible graphics or

a RGB color graphics display.

JC LIPS is also available with

l high speed 20 MB hard disk

with 2K cache buffer memory

controller, Enhanced Color

Graphics display adapter, high

resolution RGB color monitor,

local area networking controller,

and more. These options can be

added at any time, and with the

features we supply as standard, it

will be a difficult system to

outgrow.

NOW the ward is out. Another superb product is

available from the high-performance, multi-user systems

company, JC Information Systems.

JC INFORMATION SYSTEMS

161 Whitney Place

IBM, PC, and AT are trademarks of International Business Machines ConHercules is a trademark of Hercules Computer Technology, JC LIP;

LETTERS

perhaps because one has to pay too muchin clarity to obtain a modest decrease infrequency of coding error. If one believesthis judgment is wrong, then should notthe ANSI Standardization Committee,rather than individual dissenters, be en-joined to wrestle with the problem?

The moral? If you generate a mutatedC. keep the new species to yourself andplease let no others learn of your for-bidden engineering, unless you are sure

the mutant is so well conceived that it willtake over the world.

John A. RupleyTUcson, AZ

Modifications to CP/M

1 have some unofficial modifications toCP/M v. 2.2 that might benefit BYTEreaders.

• The DDT D command displays nonprint-able characters with a period. This ar-

Sidelalk

It minds the phone while you do your work

No more interruptions! Because now SideTalk can trans-fer your files or receive your mail while you're using yourcomputer for other important matters. And SideTalk isprogrammable with its own BASIC-like language. What'smore, you're never more than a keystroke away from allof the power of SideTalk

When we say SideTalk is the best telecommunicationsprogram on the market, we're not just talking out of theside of our mouth.

Lattice

Lattice

To place your order:Lattice, IncorporatedPost Office Box 3072Glen Eltyn, Illinois 60138312-858-7950TWX 910-291-2190

Only119-95

rangement causes some confusion,because a period is not an infrequentlyused character. A better choice, I believe,would be the ASCII tilde (*) character.Method: Change memory address 0E41from 2E to 7E.

A>DDT DDT.C0M press return

-SE41

press return

0E41 2E

enter 7E and press

return

0E42 C3

enter a period and

press return

-

press control key

and C key

A>SAVE 19 DDT.COM

The following modifications assume thereader is proficient in the use of DDT.COMand can write assembly language utilityroutines to find the starting address of abyte sequence. A more intimate knowl-edge of CP/M is also necessary.

• When using Control-S to stop/start con-sole output, pressing any other key, afterinitially issuing a Control-S, causes subse-quent Control-S commands to be ignored.

Method: In the COM file that is used forsystem generation, find the starting ad-dress of the byte sequence (in hex) B7 C2G2. Change the next call instruction fromcall ??23H to call ??2AH: the ?? hexnumbers are unchanged. Save the mem-ory image and sysgen it. [Editor's note: Besure to keep a backup copy of your original systemdisk]

• Change the Control-S for stopping/start-ing console output to the space bar, whichis more convenient.

Method: In a manner similar to that usedin the second method above, find thestarting address of the byte sequence (inhex) FE 13 C2 42. Change the 13H to20H, save the memory image and sysgenit.

David A. DanelloBlacksburg, VA

A Bug in ProDOS Directories

I enjoyed the article "Sorting ProDOSDirectories" (June) by Antonio Silvestri. Un-fortunately, the sample program has a bugthat Mr. Silvestri's test program will notdetect.

The bug (pointed out by Glen Bredon,who noticed this same type of problemin early versions of several commercialProDOS utilities) can be evidenced by ex-panding the size of a subdirectory file thathas had its order in the parent directoryaltered by the sort. An easy way is to addmore than 13 new files to the "relocated"subdirectory (which adds at least oneblock to the directory file's size): try thefollowing steps:

(continued)

24 BYTE • SEPTEMBER 1986

Inquiry 196

12 MHz SPEED...

.,. plus A MEGABYTE FOR DOS!

THEY ALL NEED NUMBER SMASHER/ECM

TM

Turn your PC or XT into the machine it should havebeen! The 12 MHz Number Smasher/ECM is the fastestaccelerator on the market It is also the most powerful, provid-ing a true megabyte for DOS!

To break the 640K DOS barrier MicroWay designed aMemory Management Unit (MMU) that is tailored to DOSplus a 2000 byte resident driver- MegaDOS™. MicroWaycalls this breakthrough Extended Conventional Memory.When you type CH KDSK with the board installed, your sys-tem will report 1,036,288 bytes total memory and 1,010,016bytes free! Any conventional DOS program can utilize a fullmegabyte for data or code without changing a byte.

Downloading a mainframe application? ECM memoryruns with any program that uses DOS for screen servicesincluding RM and MS FORTRAN and MS and LATTICE C!This means you have an additional 384 K available for over-sized applications. Programs which write directly to thescreen require a simple patch to adhere to the new standard.MicroWay has already developed patches for the Lotus,WORDSTAR and AUTOCAD screen drivers. Release 1A of1-2-3 jumps from 535,516 to 916,444 bytes available andruns faster than Release 2 for most worksheets.

Micro

\im

Inquiry 241

Number Smasher/ECM is 100% compatible with allhardware and software including EMS and EGA boards. Thecompatibility is a result of control: its speed is switch, key-board or software selectable from 4.77 MHz to 12.0 MHz.Applications which have not been upgraded to ECM can stillbe run by setting DOS to 640K or 704K and using thememory above DOS for I/O enhancers.

Number Smasher/ECM runs floating point bound pro-grams fasterthan an AToranyother80286 based machine.In fact, Number Smasher's 12 MHz 8087 runs a factor ofthree faster than the standard 80287 on the AT, delivering upto 125 kflops. Software is included for RAM Disk, printspooler, and disk caching, which speeds up floppy and harddisks by a factor of 2 to 10!

Number Smasher/ECM is the most cost effective pro-ductivity tool you can buy. The base board which runs at9.54 M Hz comes with 512 K and costs only $599! The com-plete system which includes a motherboard accelerator, onemegabyte of memory and a 12 M Hz 8087 is just $1199. Calltoday to discuss your particular configuration. Remember:"The advantage of buying from MicroWay is outstanding per-sonal service." (PC Magazine, 6/10/86- p. 162)

The World Leader in 8087 Support

P.O. Box 79, Kingston, Mass. 02364 USA (617) 746-7341Tempo House, London, U.K. call 01-223-7662Number Smasher, ECM and MegaDOS are trademarks ol MicroWay, Inc. MicroWay is a registered trademark of MicroWay, Inc.

SEPTEMBER I986 'BYTE 25

LETTERS

1. Make (format) a ProDOS data disk (callit /TEST for the sake of argument).

2. Create two files (in this order):

CREATE /TEST/SUB.BCREATE /TEST/SUB.A

3. Alphabetize the test disk.

4. Create 13 or more files within one ofthe subdirectories. A simple BASIC pro-gram to do this is

10 FOR = 1 TO 15

20 PRINT CHR$(4);"SAVE /TEST/SUB.A/

FILE.";I30 NEXT I

5. Try to read the contents of the subdirec-tory, as per the command

CAT /TEST/SUB.A

You should get a "beep" and a RANGEERROR message after the 13th filename.The creation of 15 files in SUB.A expandedthe size of the subdirectory, but this wasnot reflected in its entry within the parentdirectory. Incidentally you can LOAD any

WHAT'S THE SECRET DEBUGGING WEAPONUSED BY EVERYBODY FROM BORLAND TO ORACLE?FREE 44-PAGE ANSWER FROM ATRON.

"WE COULDN'T HAVE DONE IT WITHOUTATRON'S HARDWARE-ASSISTEDSOFTWARE BUGBUSTERS.

This is the city saved by theAtron bugbusters. Your city.Full of wizards, with hundredsof millions of dollars investedin wringing every ounce ofintelligence and performanceout of your PC. It used to beplagued with the toughestsoftware bugs known to man-kind.

PLAGUES OF

BIBLICAL PROPORTIONS

The first and most difficultplague was impossible to trapwith software debuggers.These were carnivorous bugswhich randomly overwroteprograms, data, even thedebugger. Nastiest were theones that slipped in once everyfew houis. or changed theirbehavior after each new com-pile. Forty days and fortynights of recompiling, trying.something else, caused manya would-be resident of the cityto run screaming into the wil-derness, never to be heardfrom again.

Second came the plague ofnot knowing where the pro-gram was, or where it hadrecently been. This com-pounded the first plague: Howcould anyone know whatcaused the random memoryoverwrites? Add to this ran-dom interrupts and limingdependencies, and you beginto understand The Fear thatgripped the city.

Then came the last plague,which brought the wizards totheir knees before they evenstarted debugging. Their tow-ering programs consumed so

much memory, there wasn't enough room for their symbol table, let alonedebugging software. Even if they could get past the first two plagues, thisone killed their firstborn software.

ENTER WE HARDWARE-ASSISTED SOFTWARE BUGBUSTERS

The Atron solution came as a revelation: Monitor every memoryreference and every instruction executed, by adding a hardware board tothe AT or PC with an umbilical probe to the processor.

The result? Wham! The PC PROBE" and the AT PROBE'" savedcivilization as we know it. The first plague was cured with PROBE'Shardware-assisted breakpoint traps on reading, writing, executing, input-ling and outputting. These could be done on single or ranges of addresses,and could include particular data values. All in real time. For a meresoftware debugger to attempt this, a 1 -minute program would take 5 hoursto execute.

The second plague, not knowing from whence you came, was curedwith PROBE'S real-time trace memory. The history of program executionis saved on-board, in real lime. Once a hardware trap has occurred.

PROBE displays the program execution in detail, including sym-bols and source code for C, Pascal, or assembly language pro-grams. Which shows how out-of-rangc pointers got that way.

The third plague, not enough room for thedebugging symbol table to be co-resident inmemory with a large program, was cured withI-megabyte of on-board, hidden, write-pro-tectcd memory. System memory was then freefor the program, keeping the symbol table anddebugger safe from destruction.

When the job of bugbustingwas done, the wizards usedtheir PROBEs as performanceanalyzers. So they could haveboth reliability and perfor-mance. So they could sendonly the best software into thefield.

IF YOU AREN'T AN ATRONCUSTOMER, ODDS ARE YOUWON'T BE MAKINGTHE TOP-TEN LIST.

On any given week, at leastnine of the lop ten best-sellingsoftware packages on the Soft-Sel Hollisl come from Atroncustomers.

Ever heard of Borland?"Without Atron," says itspresident Philippe Kahn,"there wouldn't be a Side-Kick1", Turbo Lightning'"would be light-years away, andTurbo Prolog'" wouldn't beshipping today."

Ever use a spreadsheet?From Enable'" to Paradox'",their bugs were busted byAlron products.

Into DBMSs? Everyonefrom Ashlon-Tate to Oracleowns at least one Atron bug-buster.

If you use a product fromone of the companies in TheCity, you owe life as you knowit to Alron. Our guess is that997c of all PCs, XTs and ATshave at least one productdebugged with Atron bug-busters.

FREE 44-PAGE BUGBUSTING BIBLE COULB MAKE YOUA PROPHET, AND YOUR COMPANY A PROFIT.

We've written a complete tutorial on state-of-the-art bugbusting.And it's yours, free for the asking. Full of examples and illustra-tions, it will show you how the wizards work their magic.

If you're tired of suffering the wrath of program bugs, call Atrontoday. You could be busting bugs, and sales records, tomorrow.

THE BUGBUSTERS

20665 Fourth Street • Saratoga, CA 95070 • 408/741-5900

Copyright O I1K6 by Atron Corp. PC PROBE1" anil AT PROBE'" I

i. 'Hie other lini: tnnipaiiic mi-nliimcd liiioifjihoiu this adveni*

i> [in ii it in ik liiiilrnuik-.

Ailv hyTRHA.

file within the subdirectory, even thoughyou can't get CAT or CATALOG to displayit.

The problem has to do with the rear-rangement of subordinate directory en-tries while sorting a directory file. Eachsubdirectory file contains a link to its loca-tion within its parent directory. The linkconsists of a pointer to the block (of theparent directory) where the subdirectory'sfilename entry is located, and its numeri-cal position among the 13 (possible) file-name positions within the block. Mr.Silvestri's routine will usually move thefilenames' positions within the parentdirectory (unless they happen to wind upin exactly the same positions after thesort) but does not correct the link in thesubdirectory file itself.

In the example, we start with a newly for-matted ProDOS volume named 7TEST (thevolume directory will start block $2).?TEST will occupy the position of the firstfilename. We then CREATE the directoryfile SUB.B as its second entry and thedirectory file SUB.A as its third entry. Eachof these entries will point to the actual fileassigned to each of these names. Informa-tion within the file SUB.B itself will pointto its filename's location within /TEST'Sdirectory as the third file in block $2.SUB.A will similarly point to itself as be-ing the second file.

Now we alphabetize the /TEST directory,SUB.A, SUB.B, and their associated dataexchange places, so now SUB.A is the sec-ond entry and SUB.B is the third entry. Butneither subdirectory file's links (pointingback to its original position in the parentdirectory) has been updated to reflect this!So now the link within the file SUB.Apoints to the entry (and data) associatedwith SUB.B.

The problem does not evidence itselfimmediately. What occurs is that any al-teration in the status of one of the sub-directories that requires altering its entrywithin the volume directory will result inthe improper entry being "updated." IfSUB.A expands to eight blocks, the entrySUB.B will be assigned the new data in-stead, while the entry SUB.A is unchanged.

The way around this is to have the sortprogram correct the link to the parentwithin the subdirectory file. I don't havea quick and easy fix (I'm too lazy), butGlen Bredon has developed a set of Pro-DOS utilities that includes a program thatmay fix any directories after the fact. Ihope Mr. Silvestri doesn't find this too dis-couraging, as a lot of programmers (andcommercial programs) seemed to initiallyrun into this bug. Volumes that do not usesubdirectories (or in which the subdirec-[continued on page 370)

26 BYTE • SEPTEMBER 1986

Inquiry 30

LANGUAGES THAT ARE CAUSING THE BIGGEST

PROGRAMMING BACKLOG IN HISTORY ARE ALSO

EATING NICE BIG HOLES IN OUR POCKETS.

Whether it's BASIC, COBOL,Pascal, "C", or a data base manager,you're being held back.

Held back because the languagehas frustrating limitations, and theprogramming environment isn'tintuitive enough to keep track ofwhat you're working on.

In the real world, there's pres-sure to do more impressive work, inless time, and for more clients.

We've been given some incrediblypowerful hardware in recent times,but the languages aren't a whole lotbetter than they were 20 years ago.

So, whatever language you havechosen, by now you feel its out toget you — because it is.

Sure, no language is perfect, butyou have to wonder, "Am I gettingall I deserve?"

And, like money, you'll neverhave enough.

Pretty dismal, huh?

We thought so, too.

So we did something about it.

We call it CLARION™

You'll call it "incredible."

Distributed on 7 diskettes,CLARION consists of over 200,000lines of code, taking 3+ years tohone to "world-class" performance

With CLARION you canwrite, compile, run and debugcomplex applications in aNew York afternoon.

Even if you're in Savannah.

It gives you the power andspeedto create screens, windowsand reports of such richness andclarity you would never attemptthem with any other language.

Because you would have towrite the code.

With CLARION you simplydesign the screens using ourSCREENER utility and thenCLARION writes the source codeAND compiles it for you in seconds.

Likewise, you can useREPORTER to create reports.

Remember, only CLARION canrecompile and display a screen orreport layout for modification.

And with no time wasted.

All the power and facilities youneed to write great programs, fasterthan you ever dreamedof.

Programs that are easy to use.Programs that are a pleasure towrite.

And to you that means truesatisfaction.

You've coveted those nifty pop-uphelp windows some major applica-tions feature. But you can't affordthe time and energy it takes towrite them into your programs.That's the way it used to be.So we fixed that, too.CLARION'S HELPER is aninteractive utility that let's youdesign the most effective pop-uphelp screens that you can imagine.And they're "context sensitive,meaning you can have help forevery field in your application.

Unlike the other microlanguages, CLARION providesdeclarations, procedures, and

functions to processdates, strings,screens, reports,indexed files,DOS files andmemory tables.

ram)I-

SAYITIN

31CLARION

^^f DEPT. A2BY/4

1-800-354-5444

Imagine making source prochanges with the CLARION E£TOR. A single keystroke termi-nates the EDITOR, loads the COM-PILER, compiles the program, loadsthe PROCESSOR and executes theprogram. It's that easy!

Our data management capabili-ties are phenomenal. CLARIONfiles permit any number of compos-ite keys which are updated dynami-cally.

A file may have as many keys asit needs. Each key may be com-posed of any fields in any order.And key files are updated when-ever the value of the key changes.

Like SCREENER and RE-PORTER, CLARION'S FILER utilityalso has a piece of the CLARIONCOMPILER. To create a new file, youname the Source Module. Then youname the Statement Label of a filestructure within it.

FILER will also automaticallyrebuild existing files to match achanged file structure. It creates anew record for every existing rec-ord, copying the existing fields andinitializing new ones." )unds pretty complicated, huh?Not with CLARION'S docu-mentation and on-line helpscreens. If you are currentlycompetent in BASIC, Pascalor "C" you can be writingCLARION applications in aday. In two days you won'tbelieve the eloquence of yourCLARION programs.Okay, now for the best part ofall. You can say it in CLARIONfor $295.00—plus shipping andhandling. All you need is an IBM® PC, XT,AT or true compatible, with 320 KB ofmemory, a hard disk drive, and a parallel port.And we'll allow a full 30 day evaluationperiod. If you're not satisfied withCLARION, simply return it in itsoriginal condition for a full refund.2 you're not quite ready to takeadvantage of this no-riskopportunity, ask for our detailed 16page color brochure. It vividlyillustrates the elegance ofCLARION. Consider it a preview ofprogramming in the fast lane.Either way, the 800 call's a freebie.

BARMNGTON SYSTEMS,INC ISO EAST SAMPLE ROAD P0MPAN0 BEACH FLORIDA 33064 305/785-4555

IBM is a registered trademark of International Business Machines Corporation. CLARION™ is a trademark of Barrington Systems, Inc. ©1986 Barrington Systems

Inquiry 36

SEPTEMBER 1986 -BYTE 27

OFFICE AUTOMATION

Tech PC, we're out to capture your micro-computer business. No one matches ourdiverse line of high performance products, orour comprehensive system of support, warran-ty, and third party maintenance service op-tions. Tech PC is a large Southern Californiacomputer design and manufacturing firm withcomputer research and design specialists, pro-duction' engineers, technical assistance staff,qualified sales personnel, and a strongmanagement and investment team to provideyou with state of the art products, state of theart reliability, and state of the art economy.

PORTABLES

Tech PC Portable Computers come in fourdifferent base models to match your com-puting needs. Our entry level Tech PC/XT por-table computer is designed to provide a non-obstructive profile, and has a capacity to holdtwo thirty megabyte hard disks, a high resolu-tion monochrome monitor with a Herculescompatible graphics card to drive it with 800by 400 lines resolution, and never before heardof 6 expansion slots in a portable computer. If4.77 MHz of Intel 8088 power isn't fast enough,try our Turbo 4.77 to 8 MHz 8088-2 or optionalNEC V-2 microprocessor based portablemachine. Designed to increase speed up to 170percent of a standard PC/XT, the Tech PC/ATand Tech Turbo PC/AT portable units are stateof the art in portable performance. The 80286microprocessor based units can be fitted withup to 240 megabytes of high speed voice coilhard disk technology, and with the Turbo AT's10 MHz math co-processor socket and 10 MHz

80286 microprocessor the unit canmanipulate large spreadsheets withunparalleled performance.

DESKTOPS

Tech PC Desktop Computers are de-signed for survival. The XT's leave yourdesktop looking comfortably empty withtheir slim non-obtrusive profile; The AT'sgive you a powerful presence with a cleanlined sturdy chassis. Combined with a 14inch, 800 by 400 line amber monochromemonitor or a 14 inch, 1280 by 800 blackand white monochrome monitor you'vegot State of the Art staring straight backat you. If 8 MHz 80286 power isn't fastenough for you... try the Tech TurboPC/AT with its 10MHz 80286 and 10 MHz

80287 math co-processor socket. The TechTurbo PC/AT gives you the strongest,most powerful 80286 performance avail-able from anyone, anywhere... availablewith up to 16 megabytes of memory andhard disks up to 1 gigabyte with our newoptical storage disk, the Tech Personal

iffV

28 BYTE • SEPTEMBER 1986

Computer Desktops represent the cuttingedge of desktop microcomputer technology.

Tech Personal Computers, Inc. is a fullservice manufacturer of Micro ComputerProducts and offers a complete line ofDesktop, Portables and Multi-User Com-puter Systems as well as an accessory lineof over one hundred enhancement prod-ucts. Tech Personal Computers, Inc. areall backed by a full one year warranty withadditional maintenance coverage and ex-tended maintenance con-tracts available throughMomentum Service Corp.For more informationconcerning hundreds ofMSC Service Centersthroughout the UnitedStates, contact TechPersonal Com-puters, Inc. at(714) 754-1170.

OFFICE ON LOCATION

DESKTOPS

TECH PC/XT DESKTOP $529

Options:

Tech PC/XT with 20MB Hard Disk $979

Tech PC/XT with 20MB Hard Disk, Monochrome Monitor,Hercules® Compatible Mono/Graphics Card $1179

TECH TURBO PC/XT DESKTOP $629

Options:

Tech Turbo PC/XT Desktop with 20MB Hard Disk $1079

Tech Turbo PC/XT 20MB Hard Disk, Monochrome Monitor,Hercules® Compatible Mono/Graphics Card $1279

TECH PC/AT DESKTOP $1399

Options:

Tech PC/AT with 20MB Hard Disk $1799

Tech PC/AT with 20MB Hard Disk, Monochrome Monitor,Hercules® Compatible Mono/Graphics Card $1999

TECH TURBO PC/AT DESKTOP $1599

Options:

Tech Turbo PC/AT Desktop with 20MB Hard Disk $1999

Tech Turbo PC/AT with 20MB Hard Disk, MonochromeMonitor, Hercules® Compatible Mono/Graphics Card . .$2199

PORTABLES

TECH PC/XT PORTABLE $ 899

Options:Tech Turbo PC/XT Portable with 20 MB Hard Disk .. . .$1349Tech Turbo PC/XT Portable with 1200 Baud Internal HayesCompatible Modem and 20 MB Hard Disk $1549

TECH TURBO PC/XT PORTABLE $999

Options:

Tech Turbo PC/XT Portable with 20 MB Hard Disk . . .$1449Tech Turbo PC/XT Portable with 1200 Baud Internal HayesCompatible Modem and 20 MB Hard Disk $1649

TECH PC/AT PORTABLE $1799

Options:

Tech PC/XT Portable with 20 MB Hard Disk $2199

Tech PC/XT Portable with 1200 Baud Internal HayesCompatible Modem and 20 MB Hard Disk $2399

TECH TURBO PC/AT PORTABLE $1999

Options:

Tech PC/XT Portable with 20 MB Hard Disk $2399

Tech PC/XT Portable with 1200 Baud Internal HayesCompatible Modem and 20 MB Hard Disk $2599

All TECH PC PORTABLES available with tape backups, hard disksup to 1 gigabyte, networking systems, and hundreds of otherhardware and software accessories.

714/754-1170

2131 South Hathaway, Santa Ana, California 92705Tfelex 272006 Answer Back - TECH FAX: 71415568325

Inquiry 341 for End-Users Desktop. Inquiry 342 for End-Users Portable. Inquiry 343 for DEALERS ONLY.

SEPTEMBER 1986 • BYTE 29

Advanced Digital's PC-Slave is the solution to yourmulti-user or local area network problems.- *

pffi

Just plug Advanced T-*-/ Digital's PC-Slave board.\/ into your PC expansion \slot, a connecting cable, a \low-cost dumb terminal or a/ PC look-alike terminal and/ you're in business. As many as 31 \/ low-cost workstations may be added \/ <to your IBM-PC, AT, XT, and the com- \patibles. Share a common data basewithout loss of speed or efficiency since \U each PC-Slave has its own 8088 CPU, 256-/ 768K RAM dedicated to each user. AdvancedDigital provides additional software which sup-ports File & Record locking and print spooling.Advanced Digital's slave concept provides the bestmulti-user PC system available today! For the locationof the dealer nearest you contact:

Advanced Digital Corporation

5432 Production Drive

Huntington Beach, CA 92649

(714) 891 -4004 (800) 251 -1 801

Telex 183210 ADVANCED HTBH

msm

CORPORATION i

•

Advanced Digital U.K. Ltd.

27 Princes Street. Hanover Square

London W1R8NQ-United Kingdom

(01) 409-0077 (01) 409-3351

TLX 265840 FINEST

Regional Distributors: In California, Thomas Data Systems, Inc. (213) 214-4661, MP Systems (714) 770-6411; In Texas, MP Systems (214) 385-8B8S or (800) 854-8885;In Ontario, Canada, Computer Lab (416) 299-7660; In Australia, Archives Computers (03) 699-8377; In Florida, International Micro Systems (305) 665-1515

■■■^■■■■■■■■LHHHMHMI

Inquiry 5 for End-Users. Inquiry 6 for DEALERS ONLY

WHAT'S NEW

Turbo Chassisfor Amiga

Computer Systems As-sociates has releasedthe Turbo Chassis, an expan-sion unit that adds a 32-bit68020 microprocessor and68881 floating-point co-processor to the Com-modore Amiga. Installedwith the 68881 on a co-processor board in thechassis, the 68020 runs at14.28 MHz, twice the fre-quency of the Amiga's stan-dard 68000 processor. Thecoprocessor board also pro-vides 32-bit data and ad-dress buses, as well as32-bit DMA operation. Ac-cording to the company, the68020 and 68881 are fullysupported by AmigaDOS.

The Turbo Chassis attachesto the Amiga via a 100-pinexpansion bus. In additionto the coprocessor board,the unit is equipped with a512K-byte, 32-bit static RAMboard, a 20-megabyte harddisk drive with an SCSI con-troller, and a power supply;a 40-megabyte hard disk isoptional. The unit's two re-maining expansion slots canaccommodate additionalboards from CSA or fromother manufacturers.

With the coprocessorboard, memory board, and20-megabyte hard disk drive,the Turbo Chassis sells for$5475. You can also pur-chase the componentsseparately or with an Amigaand color monitor. For moreinformation, contact Com-puter System Associates.7564 Trade St., San Diego.CA 92121, (619) 566-3911.Inquiry 550.

The Amiga Turbo Chassis, with 68020 and 68881 processors.

Smalltalk-basedExpert System Shell

Humble, a set of toolsfrom Xerox for buildingexpert systems, functions inthe SmalltaIk-80 environ-ment. It's primarily a goal-directed expert system shellto which you can add rulesand data definitions, from abrowser window, to createsystems for specific prob-lems. You can also alter thecertainty model. The rulelanguage contains an"escape" to standard Small-talk-80 code.

The program, which candeal with several hypothesessimultaneously, is capable ofboth backward and forwardchaining. The former isautomatic during execution;the latter can be specifiedat any time during rule ex-ecution. Because Humblesupports multiple executioncontexts, the same rules canbe applied to several similarobjects within a knowledgebase. Any Smalltalk-80 ap-plication can interface toHumble knowledge bases.

Humble runs in Small-talk-80 systems based on

any licensed virtual image. Itneeds at least 200K bytes ofmemory after the Smalltalkimage is loaded. A sitelicense is $1500; per-machine price is $500. Thepackage comes with sourcecode for the shell and sup-porting windows. ContactXerox Special InformationSystems. 250 North HalsteadSt., P.O. Box 7018, Pasadena,CA 91109, (818) 351-2351.Inquiry 551.

Spreadsheet-style

Signal-Analysis

Software

DSP Systems has devel-oped technical-worksheetsoftware that provides aspreadsheet-like environmentfor displaying and analyzingdigital waveforms. DADiSPWorksheet has 150 data ma-nipulation and analysis func-tions, including signal edit-ing, signal arithmetic andcalculus, waveform genera-tion, FFTs, statistical analysis,and peak finding. You canalso build other functions

with macros.

You set up signal-process-ing steps by typing formulasinto a window. The menu-driven program evaluatesand displays the results ofeach step. Worksheets canbe saved and used to buildanalysis templates.

DADiSP Worksheet sup-ports real and complexarithmetic and carries engi-neering units through com-pound calculations. It candetect an 8087, supportsvarious file formats, and hascommand files for automat-ing data analysis. The pro-gram runs on the IBM PCseries and compatibles withan EGA, IBM CGA. or Her-cules graphics adapter. Thepackage price of $795 in-cludes six months of up-dates and support. A demodisk is $20. Contact DSPSystems, One KendallSquare, Cambridge, MA02139, (617) 577-1133.Inquiry 552.

Amiga Organizer

Order, a desktoporganizer for Com-modore's Amiga, uses themachine's multitasking,voice, graphics, sound,menu, and window capabili-ties. The package bundles atelephone directory thatdoubles as a mailing list andlabel printer; a talking alarmclock; a perpetual calendar;an appointment book: ascreen dumper; andDoodler. a scratch pad forgraphing and sketching. Thesoftware also contains a37-function scientificcalculator, which can print atape of computations.Retail price is $44.95. Con-(continued)

SEPTEMBER 1986 • B Y T E 31

WHAT'S NEW

tact the Northeast SoftwareGroup at 1CS. 165 DyervilleAve., Johnston. Rl 02919,(401) 273-1001.Inquiry 553.

Scientific Sourcebook

Advanced ScientificAnalysis S- Graphics isa sourcebook of techniqueswritten in IBM PC BASICA.The 48 source code applica-tions, which can be runalone or as modules incustom programs, are de-signed primarily for peopleinvolved in math, physics,and engineering. The pro-grams on the disk are alsolisted in a handbook.

The sourcebook is brokendown into four categories:graphics techniques, includ-ing programs for 3D surfaceplotting, contouring, andcharting; imaging and trans-forms, including programsfor FFTs, fractal structures,convolution, image enhance-ment, and optical ray trac-ing; probability and statis-tics, with programs for pro-bability distributions, con-fidence bounds, MonteCarlo radiative transfer, andregression; and matrix oper-ations, covering 3D perspec-tive projections, symbolicmultiplication, determinants,inversion, simultaneousequations, and eigenvaluesand eigenvectors.

The package sells for $60.For more information, con-tact Simplication UnLtd., P.O.Box 654, Menlo Park, CA94026, (415) 859-4244.Inquiry 554.

Hard Disk Cardswith up to60 Megabytes

Express Systems in-troduced a series ofHard DiskCards for IBM PCs.ATs, and compatibles thatrange in capacity from 20 to60 megabytes. The 40- and60-megabyte cards, called

A plot [top] and a pseudocode image generated with codefrom Simplication s sourcebook.

the Express Double Disk-Cards, require two expan-sion slots; all others requireone and a half slots.

The 20-megabyte AT Back-up DiskCard for the IBM PCAT ($449) comes with back-up utilities and software thatcompresses binary, text, anddatabase files by 30 to 90percent of the original size.The drive performs file-by-file backup at the rate of 3megabytes per minute. TheExpress Double DiskCardscome with two hard disks.One disk can back up theother with the firm'sautomatic backup software,or the drives can be madeto work as one with the

company's Coalescesoftware.

In addition, the Coalesesoftware ($95) permits youto combine any ExpressHard DiskCard with an exist-ing hard disk and have bothdisks act as one. The soft-ware can also divide asingle drive into multipleunits and lets you bypassthe DOS file limitation of 32megabytes.

The 20-megabyte HardDiskCard sells for $595 or$495. with access speeds of60 or 80 milliseconds,respectively. The 30-mega-byte cards with 80- and60-ms access speeds sell for$695 and $795. The 40-megabyte card (80 ms only)costs $995; the 60-megabytecard (60 ms only) costs

$1095. For more informa-tion, contact Express Sys-tems Inc., 1254 RemingtonRd., Schaumburg, IL 60195,(800) 341-7549, ext. 3600;in Illinois, (312) 882-7733,ext. 3600.Inquiry 555.

TI GraphicsDesign Kit

Texas Instruments is of-fering the TMS340Graphics Design Kit for de-signing bit-mapped graphicssystems. The $99 kit con-tains samples of com-ponents likely to be used ina graphics system, includingthe TMS4161 64K by 4video RAM, the TMS34061video system controller, andthe TMS34070 color palettechip.

Other components includea 4-bit bidirectional universalshift register and a 68-pinplastic leaded chip carriersocket for the video systemcontroller. Also packagedwith the kit are user'sguides, data sheets, and ap-plications information. Formore information, contactTexas Instruments Inc..Semiconductor Group(SC-618), P.O. Box 809066.Dallas, TX 75380-9066, (800)232-3200, ext. 700.Inquiry 556.

80386 DevelopmentTool

American Computer &Peripheral has an-nounced a software develop-ment tool to help program-mers adapt to the 80386microprocessor environment.The 386 Translator plugsinto an 80286 PGA (pin gridarray) socket in an IBM PCAT or compatible computerand transforms the systeminto an 80386 environment.

The 386 Translator costs$395 without an 80386 chip[continued]

32 BYTE- SEPTEMBER 1986

i

Nowthere'sa truevalue-added

Wli

compatible!

General Technologies, anaffiliate of one of America'sleading electronic partsmanufacturers anddistributors, has designedthree outstanding personalcomputers with full IBM®compatibility:

GENERAL AT:

A fast, powerful,dual-speed (8/6 MHZ)computer with an 80286CPU. Perfect as a file server,

■ GENERAL TURBO: A high-speed PC. Zero wait state. 70%faster than a standard PC/XT®.Rated by Norton Utility.

■ GENERAL PC: The perfect inexpensive personalcomputer for your home and office.

RUNS ALL MAJOR SOFTWARE WRITTEN FOR IBM®PC,

POXT®ANDAT®.

ALL PACKAGED WITH FREE INTEGRATED BUSINESS

SOFTWARE!

180-DAY FULL WARRANTY, INCLUDING PARTS AND

LABOR.

FREE 60-DAY ON-SITE SERVICE IN OVER 100 CITIES

NATIONWIDE.

Get more computer for a lot less money by calling

toll-free 1-800-426-1242 for our professional dealer

nearest you. Snap to it and snap up a real value with

GENERAL!

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

GENERAL

Technologies, Inc.

Bloomfield, New Jersey 07003

Twx: 710-994-4780- Fax: 201-429-8683

FOR WARRANTY SERVICE DIRECTORY CALL 1-800-262-6772

FOR SOFTWARE/HARDWARE SUPPORT CALL 1-201-429-0053

Inquiry 140

DEALER INQUIRIES INVITED

WHAT'S NEW

or $895 with an 80386. Inteloffers PLM compilers,assemblers, and other MS-DOS software for 80386program development. Formore information, contactAmerican Computer £• Pe-ripheral Inc., 2720 SouthCroddy Way, Santa Ana, CA92704, (714) 545-2004.Inquiry 557.

PC-compatibleLaptop from STMElectronics

STM Electronics an-nounced the STM Lap-Top, an IBM PC-compatibleportable computer that canbe equipped with an expan-sion unit called the Lap-Mate. The LapMate, whichconnects to the computerthrough an interface on theback of the system unit, pro-vides additional disk drivesand other expansionoptions.

The computer runs on a4.77-MHz 80C88 processorand can accommodate an8087 math coprocessor.Priced at $2999, the stan-dard model comes with2 56K bytes of RAM (ex-pandable to 640K) and aninternal 720K-byte 3!/2-inchfloppy disk drive.

Two display options areavailable. The electro-luminescent display providesa resolution of 80 columnsby 25 lines in text modeand 640 by 200 pixels ingraphics mode. The backlitLCD screen offers the sametext and graphics resolution.The LapTop also supports anPC-compatible color graph-ics adapter and includes asstandard a parallel andserial port and a mouseport.

A ROM cartridge interfaceon the computer's back-panel accepts ROM car-tridges available from STMor other manufacturers. AROM cartridge without theROM is priced at $39, and acartridge with 128K bytes ofEPROM sells for $115. Thecompany also offers two op-

The STM LapTop connects to the LapMate expansion unit.

tional ROM sockets for in-stalling up to 2 56K bytes ofapplications software.

Among the other optionsare 384K bytes of internalbubble memory ($649), aninternal 300/1200-bpsmodem ($299), two nickel-cadmium battery packs thatpower the unit for two hours($149) or four hours ($249),a battery pack recharger/adapter ($19.50), and an ACadapter/charger ($149).

With a base price of $549,the LapMate unit contains a514-inch and a 3'/2-inch flop-py disk drive; a hard diskdrive is optional. The unitalso contains a half-lengthexpansion slot that will ac-cept an RGB adapter ($209)and has interfaces for an ex-ternal PC-compatible key-board, an external monitor,and a connector for addi-tional expansion boxes. Ac-cording to the company, thecomputer should be avail-able this month. For moreinformation, contact STMElectronics Corp., 444Castro St., Mountain View,CA 94041. (415) 968-1790.Inquiry 558.

Atari STDevelopment System

The Nexus EPROMDevelopment Systemfor the Atari ST consists of

software and a 16-bit exter-nal EPROM programmer/simulator that plugs into theST's cartridge port. Thedevice enables you to pro-gram EPROMs of 8K andabove and supports datatransfer to and from theserial port and disk files inbinary, hex-space andMotorola and Intel hexformats.

The unit has two socketsfor programming and read-ing EPROMS, 64K bytes ofCMOS simulator RAM, anexternal simulation socket,and a socket for further ex-pansion. Internal (cartridge)simulation enables the unit's64K of RAM to be treatedas if it were 64K of EPROM.During external simulation,the ST is free for processingother tasks.

The system's software usesthe GEM interface and pro-vides windows for displayingRAM or EPROM contents.Its data manipulation fea-tures include edit, locate avalue, block move, fill/clearRAM, calculate checksums,check for blank and pro-grammable EPROMS, andverify EPROM against RAM.

The development systemsells for £175. For more in-formation, contact NexusTechnical Services Ltd., 38Melrose Ave., Reading,Berkshire RG6 2BN, U.K., tel:(0734) 664559.Inquiry 559.

3D ModelingPackage for Mac

Phoenix 3D is a set ofMacintosh tools forcreating and viewing three-dimensional models. Youcan design models from allsides, using the mouse torotate, twist, stretch, bend,explode, and shrink orenlarge the image. You canthen view the drawing fromany angle. Drawing tools letyou remove hidden lines,shade with 64 levels of gray,smooth facets, and filter theresulting image. Drawingscan be saved as MacPaintdocuments. With a conver-sion utility supplied on thedisk, you can import modelsfrom other programs.

Models can have as manyas 1200 polygons (with asmany as 22 sides), spheres,cones, prisms, and surfacesof revolution. The packageprovides 55 methods ofrendering algorithms forbuilding wireframe, hidden-line, flat-shaded, or smooth-shaded models.

The program runs on the512K Mac, Mac Plus, andMac XL; supports HFS,Switcher, and Servant; andworks with the Imagewriterand LaserWriter. Phoenix 3Dcosts $39.95. ContactDreams of the Phoenix Inc..P.O. Box 10273, Jacksonville,FL 32247, (904) 396-6952.Inquiry 560.

Apple-based Systemfor Handicapped

Point to Pictures is asoftware/hardware sys-tem for persons with IQlevels of 20 to 80 ordevelopmental ages of 6months to 5 years. R. J.Cooper & Associates says itdesigned its package, basedon research at a school forlow-functioning 3- to 22-year-olds, to fulfill three goals: in-crease educational produc-tivity, stimulate spontaneous(continued)

34 BYTE • SEPTEMBER 1986

GETSER K)!JS

...ABOUT ANALYZING

ViTII TD F^ATTA You might be spreading yourIWUIv U/\I/\. spreadsheet a little too thin. Ormaybe you're starting from scratch. But if you're seriousabout data analysis, you're ready for SPSS/PC+'" -a fullsoftware family that brings you six high-powered waysto complete any data analysis task.

Enter it. SPSS/PC+ Data Entry'" takes the effort outof entering and correcting data.

Analyze it. The SPSS/PC+ Base Package pro-vides a powerful array of statistical and reportingprocedures.

Examine it. SPSS/PC+ Advanced Statistics'" lets youget more serious with your data.

Table it. SPSS/PC+ Tables'" produces presentation-ready tables instantly.

Chart it. SPSS/PC+ Graphics'" featuring Microsoft*Chart creates show-stopping graphs and charts.

Map it. SPSS/PC+ Mapping'" featuring MAP-MASTER'"-our latest option-creates maps where vast amountsof data can be summarized and presented in one,simple picture.

SPSS/PC+ products are being put to productive useby serious fact finders in business, government and edu-cation. For countless purposes such as market research.Wage and salary studies. Survey analysis. And qualitycontrol. Plus each product is superbly documented andsupported by SPSS Inc., a leader in statistical softwarefor nearly 20 years.

So if you're serious about data analysis, step up toSPSS/PC+. For details, contact our Marketing

Department. CALL 1/312/329-3630

IB^^^^ SPSS Inc. • 444 North Michigan Avenue, Suite 3000 • Chicago, Illinois 60611

IK#B In Europe: SPSS Europe BV • PO. Box 115 • 4200 AC Gorinchem, The Netherlands • Telephone: +31183036711 • TWX: 21019

SPSS/PC i runs on IBM PC/XT/ATs with hard disk. Contact SPSS Inc. for compatible microcomputers. SPSS/PC+, SPSS/PC i Data Entry, SPSS/PC+ Advanced Statistics. SPSS/PC i Tables.SPSS/PC+ Graphics and SPSS/PC + Mapping are trademarks of SPSS Inc. for its proprietary computer software. Chart and Microsoft are trademark ot Microsoft Corporation. MAP-MASTER is atrademark of Decision Resources. © 1986, SPSS Inc.

Inquiry 327

SEPTEMBER 1986 -BYTE 35

WHAT'S NEW

speech, and help with earlyacquisition of augmentativecommunication skills.

FTP uses a large graphicstablet (the Power Pad) withlarge pictures on its surfaceto allow low-functioning in-dividuals to interact with theApple lie. The systememploys graphic and verbalprompts (using the Echo+speech synthesizer). An in-terface that hooks to thegame port controls twoswitch-modified toys, whichcan correlate to pictures onthe Power Pad.

Several configurations areavailable. Software pricesrange from $49.95 to$199.95. The Power Pad andthe Echo+ sell for $150each. For more information,contact R.). Cooper & As-sociates, 2144 South 1100E, Suite 150. Salt LakeCity, UT 84106, (801)263-1388.Inquiry 561.

MacBus HoldsPC Add-on Boards

Designed for laboratory,instrumentation, andtest and measurement ap-plications, National In-struments' MacBus expan-sion unit provides a Macin-tosh Plus with a means ofusing IBM-compatible expan-sion cards.

The MacBus unit has five16-bit PC AT expansionslots, two of which are oc-cupied by a microcomputercard and an SCSI card thatprovides the communica-tions link to the Mac. Thethree remaining slots can ac-commodate A/D converters,digital I/O, serial communica-tion links, video frame grab-bers, and other boards com-patible with the IBM PC orPC AT.

Data acquisition and in-strument control are per-formed by National Instru-ments' GPIB-V50 microcom-puter card, which containsan 8-MHz, 16-bit micropro-cessor, circuits that control

The Kurzweil Voiceterminal acts as a terminal or stand-alone PC.

the AT-compatible bus, andan IEEE-488 interface. Thecard can also hold an op-tional 8-MHz math copro-cessor. The operatingsystem, contained in EPROMon the card, is a version ofthe company's IBCL (Instru-ment Bus Control Language),,which provides commandsfor controlling GPIB in-struments and a programdevelopment language.

The system's software in-cludes an IEEE-488 bus con-trol and configurationutilities and a driver for theMacBus hardware. Languageinterface libraries provideaccess to the IEEE-488driver and the MacBus hard-ware from user-developedprograms written in C andBASIC.

List price for the hardwareis $1495; for the software,$200. Contact National In-struments Corp., 12109Technology Blvd., Austin, TX78727-6204, (800) 531-4742;in Texas, (800) 433-3488.Inquiry 562.

Kurzweil'sVoiceterminal

Kurzweil Applied In-telligence introducedthe Kurzweil Voiceterminal(KVT), a 1000-word in-telligent terminal thatenables you to use spokenwords and phrases to con-trol, enter data into, andretrieve data from main-frames and minicomputers.The terminal emulates ASCIIor IBM 3270 terminals andalso functions as a stand-alone computer that can runmost IBM PC-compatiblesoftware.

Each Kurzweil Voice-terminal consists of an IBMPC XT-compatible computerwith embedded voice recog-nition, a 10-megabyte harddisk drive, and a 360K-bytefloppy disk drive. Thesystem is also equippedwith a monochrome display,two serial ports, and oneparallel port.

The KVT connects to hostsystems via a hard-wiredserial communications lineor a modem. The systemautomatically translatesvoice commands and data

into keyboard inputs; nomodification to host applica-tions is required. Multipleusers can train the terminalto recognize their voicesand tailor the vocabulary forparticular applications. Thecompany also offers pre-defined command sets formainframe applications.

In a stand-alone configura-tion, the Voiceterminal costs$9500; with ASCII emula-tion, $9900; and with IBM3270 emulation, $10,900.Contact Kurzweil Applied In-telligence, 411 WaverleyOaks Rd.. Waltham, MA02154, (617) 893-5151.Inquiry 563.

TallgrassFile Servers

Tallgrass Technologies in-troduced two file serverproducts that support avariety of local area networkconfigurations and commu-nications options. Bothproducts use the VINES vir-tual networking software de-veloped by Banyan Systems.

The TG-8000 is a 32-bitdesktop network file serverthat provides wide-area net-working, host access, server-to-server communications,and resource sharing forsmall networks. TheTG-8000AT is a software-only version that enables anIBM PC AT or compatible tofunction as a network server.

Prices for the TG-8000begin at $8495 for a con-figuration that includes 1megabyte of RAM, a 50-megabyte hard disk, and60-megabyte tape backup.The VINES software costs$1895. The TG-8000 AT soft-ware, which is scheduled toship in October, will alsosell for $1895. ContactTallgrass Technologies Corp..11100 West 82nd St..Overland Park. KS 66214,(913) 492-6002.Inquiry 564.

[continued]

36 BYTE • SEPTEMBER 1986

Inquiry 247 for End-Users.Inquiry 248 for DEALERS ONLY.

dBase III Plus™ compiler available.Nothing else comes close. Whenperformance counts, experts relyon Clipper for more speed, morepower, and more creative freedom.You can, too. Call for details.

Clipper compiled programsrun 2 to 20 times faster.

No royalties...no runtime fees.

Source code security.

User defined functions.

Arrays.

Simple menu commands.

Context sensitive help can beincluded with programs.

• More fields; more memoryvariables.

• Call C and Assembly programs.

• Complete debugging facilities.

• Multiple file relationships.

•IBM PC, XT, AT, 327compatible™.

• Multi-user capability.

Clipper

r i-

>A.fc pi

!25&&3^as£

S^*§1

' »t«*irV;ii.f»Sreii?£

CLIPPER. THE dBASE COMPILER.

A WINNING PERFORMANCE EVERY TIME.

Nantucket™

Nantucket Corporation

5995 South Sepulveda Boulevard

Culver City, California 90230

(213)390-7923

Outside California call toll-free:

1-800-251-8438

dBase, dBase III, and dBase 111 Plus are trademarks

of Ashton-Tate, Inc.

IBM PC, XT, AT, and 3270 are trader

of International Business }

Clipper and Nantucket are trademarks

of Nantucket Corporation.

WHAT'S NEW

SYSTEMS

AT Compatiblefrom Wyse

Wyse Technology an-nounced the WYSEpc286, an IBM PC AT-com-patible computer thatoperates at 10 and 6 MHz.The computer offers up to81.2 megabytes of diskstorage, several display op-tions, and a standard PC ATkeyboard or an IBM En-hanced Personal Computerkeyboard.

Standard features include640K bytes of RAM, eightfull-size PC AT expansionslots, a real-time clock withbattery backup, an RS-232Cserial port, and a parallelport. Also included as stan-dard are MS-DOS 3.1 andGW-BAS1C 3.1. The computercan be configured with a1.2-megabyte half-heightfloppy disk drive, a20-megabyte half-heighthard disk drive, and a40-megabyte full-height harddisk drive.

The company is also offer-ing three monitors and twographics adapter boards, allof which are PC-compatible,for use with the WYSEpc286. The 14-inch monitorsinclude the WY-530 mono-chrome monitor ($23 5),WY-630 color graphicsmonitor ($599) with 640 by200 resolution, and WY-640EGA-compatible monitor($749) with 640 by 3 50 or640 by 200 resolution. TheWY-430 graphics board($299) is compatible withthe Hercules graphicsadapter, IBM Color GraphicsAdapter, and Plantronicsdisplay adapter. The WY-440graphics board ($499) pro-vides compatibility withIBM's Enhanced GraphicsAdapter.

The computer can also beconnected to Wyse terminalsfor use as a multiuser sys-tem. With a 1.2-megabytefloppy drive, the system sellsfor $2499; with a 20-mega-byte hard drive, $2999; and

Zenith's Z-181, an IBM PC compatible with 640K bytes of RAM.

with a 40-megabyte harddrive, $4199. Contact WyseTechnology, 3 571 North FirstSt., San lose, CA 95134,(408) 433-1000.Inquiry 565.

Two VMEbusSingle-Board Systems

Force Computers' CPU-6series of VMEbusboards is based on 68000or 68010 processors andsupports floating-point oper-ations. The CPU-6 series of-fers 512K bytes of dedicatedon-board DRAM permittingzero-wait-state operation at8 MHz and one-wait-stateoperation at 12.5 MHz. A68881 coprocessor at 8 or12.5 MHz is optional.Four 28-pin JEDECsockets accommodate 27512EPROMs for up to 2 56Kbytes of user and systemprogram area or 8-bit-wideSRAM devices. ThreeRS-232C serial ports andone parallel port are alsoincorporated. Other stan-dard features include a real-time clock with battery

backup and a 16K-bytemonitor including a one-lineassembler/disassembler.

The base board sells for$1845. Contact Force Com-puters Inc., 727 UniversityAve., Los Gatos, CA 95030,(408) 354-3410.Inquiry 566.

Motorola introduceda 32-bit VMEbus-compatible board (ModelMVME133) that incorporatesa 12.5-MHz 68020, a 68881floating-point coprocessor,and 1 megabyte of DRAM.A 16.67-MHz version (ModelMVME133-1) is also avail-able.

Among the other featuresof the single-board com-puter are a serial debugport and two RS-232C multi-protocol serial ports, three8-bit timers, a real-timeclock, and an A24/D32VMEbus master interfacewith system controller capa-bilities.

With a 12.5-MHz pro-cessor, the board costs$1995. Contact MotorolaSemiconductor Products Inc.,P.O. Box 20912, Phoenix, AZ85036, (602) 438-3501.Inquiry 567.

Zenith's Z-181Laptop Computer

Zenith introduced theZ-181, an IBM PC-com-patible laptop computerpriced at $2399. Like theIBM PC Convertible, theZenith machine uses a4.77-MHz CMOS 8088 pro-cessor and features two3!/2-inch floppy disk drivescapable of storing 720Kbytes of data each. Unlikethe Convertible, the Z-181 iscompletely compatible withthe ROM BIOS in the IBMPC, according to Zenith.

The Z-181's fold-up LCDscreen uses what the com-pany calls supertwistedbirefringent crystals withelectroluminescent backlight-ing to attain a claimed con-trast ratio of 12 to 1. (Zenithclaims that a standardmonochrome CRT has acontrast ratio of 3 to 1.) Inaddition, the screen candisplay true shades of grayand has both brightness andcontrast controls.

The 11.8-pound computercomes standard with 640Kbytes of memory, connec-tors for RGB and compositemonochrome monitors, andserial and parallel interfaces.The portable also comeswith MS-DOS 3.2 (a BASICinterpreter is optional), areal-time clock, a nickel-cadmium battery thatpowers the unit for up tofive hours, an AC charger, asocket for an 8087 math co-processor, and a set of"desktop" software pack-ages. Options include a514-inch battery-powereddisk drive, a 300/1200-bpsinternal modem, and an in-terface for a bar codereader.

For more information, con-tact Zenith Data Systems,1000 Milwaukee Ave. Glen-view IL 60025, (800)842-9000; in Illinois, (312)391-8949.Inquiry 568.

(continued)

38 BYTE • SEPTEMBER 1986

Princeton

is the best choice

in PC monitors.

When you're looking for a personalcomputer monitor, look atPrinceton Graphic Systems. Ourgrowing family of high qualitypersonal computermonitors deliverscompatibility,brilliant colors,high resolution,and dependability.Whether you'redesigning sophisti-

cated business graphics ornumber-crunching a financialspreadsheet. That's why Princetonis number one in the minds of more

and more personal computer

owners every year.For the very best in PC monitors,

the choice is clear: Pick the com-pany that's at thetop. PrincetonGraphicSystems.

HX-12E. Our EGA-compatible monitor givesyou 64 vivid colors. Extrasharp text and graphicdisplays. The finest dotpitch (,28mm) ot any IBM-compatible enhancedmonitor. Nonglare screen.Fully compatible withIBM's™ Enhanced GraphicsAdapter (or equivalents).

SR-12P. Top-of-the-lineanalog color monitorfeatures ultra high resolution(640x4801. 4,096 colorsfor superb graphics. Thefinest dot pitch (.26mm) ofany PGC-compatiblemonitor. Laminated nonglarepanel.

HX-12. High resolution RGBcolor monitor with .31mmdot pitch gives you bettergraphics, better text thanIBM's Color Monitor (5153).Nonglare screen. Voted"Best in the World" twoyears running in PC World's"World Class PC Contest".

SR-12. Super high resolu-tion RGB monitor with a.31mm dot pilch. Compati-ble with Sigma Designs Col-or 400 bbard and others.Gives you 400 lines ofresolution. Nonglare screen.

All monitors come with free data and power cables.

MAX-12. High resolutionamber monitor. When usedwith an IBM-compatiblemonochrome adapterdelivers 720 x 350 resolu-tion. With an IBM-compatible color adapter,640x200 resolution with 15shades of amber. Themonitor automatically ad-justs to either card.

HX-9/HX-9E. Compact nine-inch high resolution RGBmonitor. Perfect for worksta-tions where space is at apremium. Both feature a.28dot pitch and an etched darkglass screen. Ergo-nomic features like a built-in tilt/swivel base, non-glare screen, and a built-in green/amber switch. HX-9Eis compatible with IBM's EGA(or equivalents).

Visit your local computer store today and ask about our fullline of high resolution color and monochrome monitors.Monitors that live up to the Princeton Graphic Systemstradition of quality, performance, and value.

Princeton Graphic Systems, 601 Ewing Street, Bldg.Princeton, NJ 08540; (609) 683-1660; TLX821402PGSPRIN; (800) 221-1490, ext. 1104.

■Mi

Inquiry 275

GRAPHIC SYSTEMS

r E L L I a E r»

IBM is a trademark ol International Business Machines, inc. Color 400 is a trademarkot Sigma Designs, Inc. QuadEGA + is a trademark of Quadram Corp. Compaq is atrademark of Compaq Computer Corp.

SEPTEMBER 1986 • BYTE 39

WHAT'S NEW

PERIPHERALS

Line Printer for PCs

The Persona] Line Printer. from Printronix is de-signed for use with (BM PCs,XTs, ATs, and compatibles.The printer, which producesan entire line of dots at onetime, operates in draft modeat 134 lines per minute andin near-letter-quality mode(with a character matrix of18 by 3 5 dots) at 47 linesper minute. The printer isalso capable of producingIBM block graphics charac-ters and bit-map graphics ata resolution of 60, 120, or240 dots per inch. Plug-incartridges enable the printerto emulate the IBM Pro-printer, Epson LQ-1500, andDiablo 630. A choice ofdownloadable fonts is alsoavailable.

The printer comes with aCentronics parallel interfaceand 2K-byte buffer. List priceis $795, which includes atractor and friction feedand two font/personalitymodules. Additional fontcartridges cost $40 each.Contact Printronix, 17500Cartwright Rd., P.O. Box19559, Irvine, CA 92713,(800) 826-3874; in California,(800) 826-7559 or (714)863-1900.Inquiry 569.

300- to 9600bpsModem

Fastcomm Data intro-duced a modem thattransmits data at 300, 1200,2400, and 9600 bps. TheFastcomm modem enablesyou to connect with anothercomputer at lower speed,then switch to 9600 bps fordownloading files.

Available in internal($979). external ($999), andrack-mount ($979) models,the modem offers auto-dial/auto-answer capabilities andnonvolatile memory for stor-ing communication param-eters. The modem supports

a superset of the Hayes ATcommand set, as well as theBell 212A and CCITT V.22bisand V.29 standards. ContactEVI/Fastcomm Data Corp.,12347-E Sunrise Valley Dr.,Reston, VA 22091, (703)620-3900.Inquiry 570.

Mitsubishi'sLow-Cost Digitizer

The Graf net Model-01from Mitsubishi is astandard page-size digitizerwith an active area 8.3inches by 11.8 inches. Pricedat $395, the tablet comeswith a pen or an optionalfour-button puck.

The digitizer operates atup to 60 points per second;its resolution is 0.1 mm or250 lines per inch. It fea-tures a DIP-switch-selectablerange of output data for-mats that, the companysays, makes it compatiblewith any computer inputprotocol. The tablet workswith AutoCAD, P-CAD, PC-Paint, and other standardsoftware packages.

A power supply is bun-dled with the tablet; a 6-footRS-232C connecting cable isoptional. Contact MitsubishiInternational Corp., 520Madison Ave., New York, NY10022, (212) 605-2607.Inquiry 571.

High-ResolutionDisplay for Macintosh

MicroGraphic Images isoffering MegaScreen, agraphics display interface forthe Macintosh that providesa resolution of 1024 by1024 pixels. The $1495board includes 128K bytesof memory and fits insidethe computer.

According to the company,the board can be modifiedto work with any monitor,

including a video projector,an IBM monochrome moni-tor, a television, or a VCR atlow resolution. For an addi-tional $1500, MicroGraphicoffers a 20-inch monitorwith a resolution of 1024 by980 that is said to be thesame as the one offeredwith Sun computers.

The company claims thatalmost all Macintosh soft-ware that uses a "grow bar"can be grown to cover theentire high-resolution screen.By the end of the year, thecompany expects to have anoption available for the in-terface that will let usersconnect a video camera anddo fast digitization. ContactMicroGraphic Images Corp.,20954 Osborne St., CanogaPark, CA 91304, (818)407-0571.Inquiry 572.

Teleswitch Gives YouAccess to Remote PC

Teleswitch, a power-control device that canbe activated through aremote phone or modem,enables a password-authorized caller to turnon a personal computer andperipherals at any time andfrom anywhere. The devicekeeps the system's power onfor as long as the callerstays on-line. A time-delaycircuit turns the power offfive minutes after the callerdisconnects the line.

To power a computer up,you dial the number, hangup the phone when thesystem answers, and thenredial after about a minuteor a sufficient interval toallow the computer to bootup. Redial and passwordvalidation must be com-pleted within five minutes;otherwise, the device auto-matically turns the com-puter's power off.

The unit also featuresvoltage spike and surge sup-pression for all devices

plugged into its four poweroutlets. The device com-plements pcAnywhere, aremote-access communica-tions program developed byDynamic MicroprocessorAssociates that runs on IBMPCs. Suggested retail pricefor Teleswitch is $229. Con-tact EKD Computer Salesand Supply Corp., 764 Mid-dle Country Rd., Selden, NY11784, (516) 736-0500.Inquiry 573.

Memory Upgradefor Amigas

Alegra, a memory expan-sion unit from AccessAssociates, adds 512K to 2megabytes of RAM to theCommodore Amiga. Theunit supports the auto-configuration architecture ofthe Amiga; with 512K bytesof RAM, it costs $379.

According to the company,the Alegra's power require-ment is less than 5 watts forall versions; power is sup-plied by the Amiga at theexpansion connector. Con-tact Access Associates, 491Aldo Ave., Santa Clara, CA95054, (408) 727-02 56.Inquiry 574.

Streaming TapeBackup for Macs

Mirror Technologies'Magnum Tape 20 tapedrive offers image, file-by-file, and incremental tapebackup for the Macintoshcomputer. The drive usestape cartridges ($29) with acapacity of 25 megabytes.

Priced at $1195, the driveconnects to the SCSI port ofa Mac Plus or to a Fat Macequipped with the com-pany's Fast Port option($199). Contact Mirror Tech-nologies, 2209 Phelps Rd.,Box 304, Hugo, MN 55038,(612) 426-3276.Inquiry 575.

(continued)

40 BYTE • SEPTEMBER 1986

Disc drives should never forget one thing:your important information.

At Seagate, we build our drives to protectyour data against all mishaps. And we puteach drive through a series of grueling teststo make sure it doesn't forget.

That's why quality-conscious customershave bought more than 3 million of our5'/t" hard disc drives.

So the next time you're looking for a newcomputer, disc memory upgrade or add-on,ask for Seagate by name.

It's all you need to remember.

Seagate Technology, 920 Disc Drive,Scotts Valley, CA 95066. 800-468-DISC.In California, 800-468-DISK.

Inquiry 305 for End-Users. Inquiry 306 for DEALERS OMLY.

£P Seagate

SEPTEMBER 1986 -BYTE 41

WHAT'S NEW

A D D - 1 N S

Internal Hard Drivefor Tandy 1000

An internal 10-megabytehard disk drive for theTandy 1000 is available fromJ&M Systems. The $495drive comes with a con-troller, cables, mountinghardware, and installationmanual. The drive requiresIBM PC-DOS 2.1 or later; itslow power consumption, thecompany says, enables it tobe powered by the Tandy1000's power supply. Formore information, contactI&M Systems Ltd., 15100-ACentral SE, Albuquerque,NM 87123, (505) 292-4182.Inquiry 576.

PC Networkfor $250per Computer

The Invisible Network, alocal area network forIBM PCs and compatibles,can connect up to 45 com-puters at a maximumdistance of 1300 feet. Eachcomputer in the network isequipped with a plug-inboard and linked with dou-ble twisted-pair wire andtelephone jacks. The net-work requires one computerwith a minimum of 320Kbytes of RAM and a harddisk to be used as server;the company recommendsan IBM PC AT.

The network transfers dataat a rate of 700K bits persecond. It requires the IBMPC Network program as thenetwork operating systemand can run PC- or MS-DOS3.1 or later and multiuserNETBIOS programs such asdBASE III Plus, R:base 5000,and others.

Each plug-in board costs$249.95; a 30-foot cablesells for $10. A starter kitwith two plug-in cards and a

cable costs $499.90. Formore information, contactInvisible Software Inc., 48147th Ave., San Francisco, CA94121, (415) 221-0916.Inquiry 577.

Plug-In ROMSimulator

The ROMSim fromGrossman + Associatesis a ROM simulator boarddesigned to increase the ef-ficiency of microprocessordevelopment. According tothe company, the board canbe used in place of in-circuitemulators in most develop-ment applications.

The board occupies oneslot in the IBM PC AT andcompatibles and emulates2716, 2732, 2764, 27128,and 272 56 ROMs, ROM-based programs can executefrom the board's RAM, andprograms assembled on thecomputer can be loadeddirectly into the board. Youcan use the standardDEBUG utility to enterpatches or changes to aprogram while debugging.The board also features ad-dress trapping and a pro-cessor address capture.

The ROMSim costs $650.For more information, con-tact Grossman + Associates,749 Grayling Bay, CostaMesa, CA 92626, (714)662-7911.Inquiry 578.

4- and 8-MegabyteRAM Upgradesfor RT PCs

Clearpoint released twomemory expansionboards for the IBM RT PC.The RTRAM/4 offers up to 4megabytes of RAM using2 56K ZIP DRAMs, and theRTRAM/8 offers an 8-mega-byte capacity using megabitDRAMs. Both boards sup-

port the RT's error detectionand correction logic andhave an access time of 150nanoseconds.

The RTRAM/4 draws 1.9amps, and the RTRAM/8draws 1.4 amps becauseof the fewer number ofDRAMs. List price for the4-megabyte board is $1895;for the 8-megabyte board,$4395. For more informa-tion, contact Clearpoint Inc..99 South St.. Hopkinton.MA 01748, (617) 435-5395.Inquiry 579.

Definicon's

32-bit Coprocessors

for PCs

Definicon Systems hasdeveloped two 32-bitcoprocessor boards for IBMPC XTs, ATs, and compatiblecomputers. The boards havean NS32032 processor oper-ating at a minimum of 10MHz, an NS32081 floating-point processor, and anNS32082 memory manage-ment unit for MS-DOS vir-tual memory functions. Bothboards support multiusertasks under AT&T's UNIXSystem V.

The basic board (DSE-32)can be equipped with up to2 megabytes of dual-portedRAM. The DSI-32E comeswith 2 or 4 megabytes of120-ns RAM and features anexpansion socket that ac-cepts one or two half-sizepiggyback boards for up to12 megabytes of RAM. TheDS1-32E is also availablewith a clock speed optionthat boosts the clock rate to15 MHz. Both boards in-clude a 2681 DUART operat-ing at 38.400 bps and twoRS-232C serial ports viaDB-2 5 and DB-9 connectors.

The boards' proprietaryloader runs under MS-DOS

2.0 and later. For softwaredevelopment, the companyoffers C, Pascal, and FOR-TRAN compilers, as well asassemblers, linkers, loaders,library managers, symbolicdebuggers, public domainFORTH and LISP, a graphicslibrary for virtual screens,and utilities.

Prices for the DSI-32 beginat $1495; for the DS1-32E,$2295. A 4-megabyte add-on board costs $1795. Formore information, contactDefinicon Systems Inc.,31324 Via Colinas, Suite108, Westlake Village. CA91362. (818) 889-1646.Inquiry 580.

GPIB Interfacefor PCsfrom Philips

Philips introduced a GPIBinterface that allows anIBM PC, AT, or compatiblecomputer to connect to andcontrol up to 15 instru-ments.

The PM 2201 board plugsinto one of the computer'sexpansion slots and comeswith supporting softwareand an installation and pro-gramming manual. The soft-ware enables you to callGPIB procedures through ahigh-level language additionto the computer's BASICAor GW-BAS1C interpreter.Functions include bus ini-tialization, sending com-mands, sending and receiv-ing messages, remote andlocal instrument setting,serial polling, time-out set-ting, error reporting, andothers.

The PM 2201 sells for$850. For more information,contact Philips Test andMeasurement InstrumentsInc., 85 McKee Dr., Mahwah,NJ 07430, (201) 529-3800.Inquiry 581.

{continued}

42 BYTE • SEPTEMBER 1986

I vv> ■

T

Presentations! Newsletters! Flyers!Signs! Overhead Foils! Invita-tions! Menus! Logos! An-nouncements! Banners! Layouts!When you need a goodlooking visualquicklyyou need FONTASY — superbtypefaces and simple drawing in oneeasy to use package.

FONTASY giws you a "what-you-seewhat-you-get" picture, as you type and drawon the graphics screen of your IBM-PC,can create a page at a time, see a minlure of that page, print it, and save it onPage size is limited only by memory, notscreen size.

Features

Proportional space, justify, kern, bold-face, rearrange, magnify, black-white rever-sal, rotate, mirror image, lines, rectangles,ovals, draw, fill in. undo (and tin undo), on-line help, 200-page book, and easy controlfrom keyboard or mouse. Corporatelicenses available.

Fonts, fonts, and more fonts! We haveover .273 typefaces in our growing library,and will be happy to send you free printsamples on request.

NX'hen you deal directly with the manufac-turer (that's us), you pay rock-bottom distributor prices. If you order FONTASY now,we will give you 28 fonts (a $30 value) at noextra charge. With so many features at such alow price, FONTASY belongs in your soft-ware library even if you already have a"font" program.Inquiry 281

What You Can DoWith

Fontasy printed al! of these.

>v.

Includes 28 Fontsand free ClipArt.

Equipment Needed

IBM-PC. XT, AT, or true compatible (Compaq,with IBM or Hercules graphics adapter andtics monitor. 256K memory needed for partialpages, 448-640K recommended for full pages.Dot-matrix printer. Mouse optional. MS-DOS2.00 or above.

FONTASY supports: IBM graphics printer.Proprinter; Epson FX, JX, LX, MX, RX, andLQ-1500; C. Itoh 8510, 1550, 1570. Pro-writer-.|r; H-P LaserJet, Thinkjet; Microline 92,93; Gemini 10X, 15X; Radio Shack DMP 105-430. 2100; Toshiba 351. 1340-1351; Star; andmost Epson-compatibles.

Money-BackGuarantee

Fontasy is not copy protected and has a30-day money back guarantee. So, takeadvantage of our breakthrough price andorder now TOLL-FREE:

1-800-824-7888, operator 669 (orders only)

For further information and same day shipping, call; (818) ~65-4444

PROsm®

7248 Bellaire Ave., Ilox 560No. Hollywood, CA 91603-0360

FONTASY $69.95

Tax

Shipping

Total

Name _Address .

Company1 _Telephone .

City, State. ZIPVisa/MC

Exp. Date.

. Memory

. Printer

Computer

Terms: M C. Visa, checks. Please add 83.00 shipping and handling in t'.S.Canada. S20.00 overseas. S2.00 fur COB., and sales tax in Calif.

I.J

SEPTEMBER 1986 -BYTE 43

WHAT'S NEW

SOFTWARE

PROGRAMMING LANGUAGES AND AIDS

68020 C

Cross-Compiler

System

Software DevelopmentSystems announced theUniWare 68020 C Cross-Compiler System, which runsunder UNIX, XENIX, andDOS. It supports Kernighanand Ritchie with standardextensions and new lan-guage features such as theconst type specifier, functionprototyping, and lint-liketype checking.

You can write programs inany combination of C andassembly language, and youhave control over placementof program parts and thesizes of ints, pointers, andother types.

The package includes a68020 assembler withmacros. The DOS versionsells for $595; XENIX for$1390; and UNIX for $2790.Contact Software Develop-ment Systems Inc., 3110Woodcreek Dr., DownersGrove, IL 60515, (312)971-8170.Inquiry 582.

Serial AsyncCommunications

A serial asynchronouscommunications pack-age, Dual Serial PortManager from Akron Soft-ware provides an interfacebetween an application pro-gram and the serial ports ofan IBM PC, XT, AT, or com-patible. It enables applica-tions developers to writeprograms that communicatewith external modems, com-puters, or other peripheralsvia the COM1 and COM2ports.

The interface program isinterrupt-driven, buffers allreceived and transmitteddata, and enables devel-opers to specify the size ofeach buffer. With DSPM, anapplication program can use

both ports simultaneously.

DSPM works with pro-grams written in Pascal, C,compiled or interpretedBASIC, FORTRAN, and as-sembly language. It requiresless than 2K bytes of RAMplus buffer space, accordingto the company, and costs$99. For more information,contact Akron Software, 53Hillside Ave., Toronto,Ontario, Canada, M8V 1S7,(416) 251-1866.Inquiry 583.

Multiuser OperatingEnvironment

RealFile from Realiaenables you to use thefile-sharing capabilities ofPC-DOS on the IBM PC Net-work. A central journal com-municates task record locks,current positions, and blockalterations.

The RealFile operating en-vironment runs on IBM PCs,XTs, ATs, and compatiblesrunning PC-DOS or MS-DOS3.1 or higher. The programuses 8K bytes of RAM andcosts $150. For more infor-mation, contact Realia, 10South Riverside Plaza,Chicago, IL 60606, (312)346-0642.Inquiry 584.

PDOS for68020 Systems

Eyring Research Instituteannounced a version ofPDOS for 68020-based sys-tems. PDOS includes a real-time, multitasking kernel, filemanager, editor, floating-point module, assembler,and linker. These requireless than 32K bytes of RAM,according to Eyring.

The Institute reports thatthe macro assembler runs

up to 40,000 lines perminute.

BASIC, C, Pascal, and FOR-TRAN are available for usewith the 68020 PDOS. Theoperating system alone costs$12 50. For more informa-tion, contact Eyring Re-search Institute Inc., 1455West 820 N, Provo, UT84601, (801) 375-2434.Inquiry 585.

A Ratfor for

MS-DOS

FORTRAN-77

Logical Developmentssays it has rewritten theRatfor concept, usedprimarily in minicomputerapplications, using C, en-abling it to work withFORTRAN-77 compilers andpersonal computers.

RF77 is a translator pro-gram, with programs writtenin RF77 syntax and thenconverted into equivalentFORTRAN code. RF77 alsoaccommodates FORTRAN'Sformatting requirements,enabling the programs to becompiled with any normalFORTRAN compiler.

RF77 adds WHILE, FOR,and REPEAT. . .UNTIL loop-control structures, which arenot in FORTRAN.

The RF77 program re-quires an IBM PC or com-patible running MS-DOS orPC-DOS 2.0 or higher. RF77costs $65. For more infor-mation, contact LogicalDevelopments, P.O. Box55798, Houston, TX 7725 5.(800) 835-2246, ext. 41.Inquiry 586.

Simulator/Debuggersfor MS-DOSMachines

Mecklenburg Engineer-ing's simulator/debug-gers enable you to test anddebug software by loading

files in hexadecimal format.Status displays show thecontents of the machineregisters and also memoryreferences, where necessary.Instructions are displayeddisassembled and show thedata about to be read oroverwritten. You can changetarget machine registers andmemory from the keyboard.The programs run on IBMPCs, XTs, ATs, and com-patibles. Versions areavailable for the 6300, 6500,6800, 8085, 8048, and Z80.Each is $75. ContactMecklenburg EngineeringInc., P.O. Box 744, ChagrinFalls, OH 44022, (216)338-8379.Inquiry 587.

Visual COBOL

Visual COBOL from mbpSoftware and SystemsTechnology is an enhancedversion of its native codeCOBOL compiler. Newfeatures include full supportof DOS path names, fastercompilation speed, and ashrink utility that, accordingto the company, reduces thesize of executable code.

This screen managementsystem has an enhancedmask editor that creates aworking-storage screendefinition in the form of aCOPY file. The enhancedmask editor also offers real-time numeric field validationand update capabilities withan ACCEPT statement.

Visual COBOL runs onIBM PCs. XTs, ATs. and com-patibles with 192K-byteRAMs. The company recom-mends a hard disk. Thepackage costs $1150. Con-tact mbp Software andSystems Technology Inc.,1131 Harbor Bay Parkway,Suite 260, Alameda. CA94501, (415) 769-5333.Inquiry 588.

(continued)

44 BYTE ■ SEPTEMBER 1986

TRANSEC NEW PRODUCTS

Program Review:

TP^SSvst

co^od^4J9S

Makes d BASE Easier to Program,Reduces Logic Errors, Bugs

TranSec d ANALYST™ automaticallyconverts any dBASE III program tod BASE III PLUS with true record andfile locking for multi-user operation.Features include syntax/blockinganalysis, tabbed file output, variablecross reference. Framework-type inter-face command windows, pop-up menus,graphic analysis REPORTS menu.Saves programmer's time to analyze anddebug d BASE II, III, or PLUS. Supportsmulti-user Clipper and network ver-sion of WordTech. Not copy protected.Rated a "best buy."

TranSec dANALYST'" $74.95 plus $5 s/h

TO ORDER: 1-800-423-0772 VISA/MC

IN FL: 1-305-474-7548

Program Review:

Simplify Naming, Finding YourFiles with 32-Character File Names

TranSec PCEasy™ is a new easyto-use"office environment" file managementsystem that allows anyone to easilyorganize large amounts of data on ahard disk. Expands DOS file name limitto 32 characters to name files naturally,the way you think. Use easily re-membered plain words or numbers. Theinterface structure mimics the paperworld, only it's faster, better and easierto use ... by programmers, managers,secretaries, clerks. PCEasy immediate-ly finds file cabinets, file drawers, filefolders, spread sheets, reports in theirown logical location. Automatic menuaccess to application programs. Workswith all popular applications and utili-ties. Not copy protected. Rated"****for ease of use."

TranSec PCEasy'" $74.95 plus $5 s/h

TO ORDER: 1-800-423-0772 VISA/MC

IN FL: 1-305-474-7548

UNlock RemovesCopy Protection

RUNS YOUR SOFTWARE ON ANY HARD DISK

UNlock "copying" disk allows you tomake "unprotected" DOS copies ofpopular original program disks. Unpro-tected backup copies perform per-fectly, as do copies of these copies.UNlock copies run on any hard disk,including Bernoulli Boxes. No original

required in drive "A." Run on a RAMdisk simply and conveniently. Also,copy DOS 5V*" programs to 31/2"diskettes. For IBM® PC, XT, AT, com-patibles, 256K or more, DOS 2.1 orhigher. Choice of the critics!

Guaranteed to work only with programs below:

UNLOCK ALBUM "A" PLUS

$49.95

{Plus $4 ship/handling. Foreign orders $10)

• d BASE III & d BASE III PLUS™

• FRAMEWORK I & II™

• CHARTMASTER™(6.1)

• SIGNMASTER™ (5.1)

• FASTBACK™ (5.3)

• HARVARD TOTAL PROJECT MGR.™<1.10)

• THINKTANK™(2.0,2.1)

• DOLLARS & SENSE™ (2.o>

• LOTUS 1-2-3™ (1.A-2.0)

• IBM WRITING ASSISTANT™ (1.01)

• IBM FILING ASSISTANT™ (1.0)

• IBM REPORTING ASSISTANT™ (i.o)

• GRAPHWRITER™ (4.3,4.31)

• REALIA COBOL™ (1.2.2.0)

• MULTILINK ADVANCED™ (3.02,3.03)

UNLOCK' ALBUM "B" PLUS

$49.95

(Plus $4 ship/handling. Foreign orders $10)

• SYMPHONY™ (1.1)

• CLIPPER™

• LOTUS 1-2-3 REPORT WRITER™ (1.0)•DOUBLEDOS™

• sm ARTWORK™ (1.0 R« 8 thru 10 »1.1)

• DISK OPTIMIZER™

• MANAGING YOUR MONEY™ (1.5.1.51,2.0)

• MICROSOFT WORD™ (1.16,2.0,2.01)

• PFS: ACCESS™ 0984 Ed.)

• PFS:PLAN™(B)

• PFS: GRAPH™ (B)

• PFS: WRITE™ (1.01, c)

• PFS: REPORT™ (B, c)

• PFS: FILE™ (B, o

• DATABASE MANAGER II—THE INTEGRATOR™ (2.0,2.02)

SPECIAL OFFER

"Best of UNLOCK" $74.95

ALBUM D PLUS (Plus $4 ship/handling. Foreign orders $10)

• d BASE III & d BASE III PLUS™

• FRAMEWORK I & II™

• CLIPPER™

• FASTBACK™ (5.3)

• CHARTMASTER™ (6.1)

• SIGNMASTER™ (5.1)

• DOLLARS & SENSE™ (2.0)

• LOTUS 1-2-3™ (i.a-2.0)

• SYMPHONY™ (1.1)

• LOTUS 1-2-3 REPORT WRITER™ (1.0)

• DOUBLEDOS™

• HARVARD TOTAL PROJECT MGR.™ (1.10)

• MANAGING YOUR MONEY™ (1.5,1.51,2.0)> THINKTANK™ (2.0,2.1)

• MICROSOFT WORD™ (1.15, 2.0, 2.01)

I UNLOCK FLIGHT/JET #201• FLIGHT SIMULATOR™ -JET™

$14.95

{Plus $4 ship/handling. Foreign orders $10)

CHOICE OF THE CRITICS!

^ i^fifjMM "UNlock has two particularly en-tvJiilii'llUH dearing characteristics: it works,and works simply. I was able to quicklyproduce unprotected copies of Lotus 1-2-3release 2, Symphony 1.1, Microsoft Word 2.0,dBase III 1.1, and Framework II. These copiesperformed flawlessly, as did copies of thesecopies." Christopher O'Malley,

PERSONAL COMPUTING, April '86

p VT P "UNlock 4.7 defeats the latest Pro-D T I C lok and SuperLock type of copyprotection scheme. It's menu-driven and worksfine on the programs it's supposed to work on:Lotus 1-2-3, dBase III, Framework, Symphony,Paradox, and several others."

Jerry Pournelle, BYTE, Feb. '86

"Because copy protection can interferewith the ability to back up a hard disk,business-oriented users may prefer programslike TranSec's UNlock series."

Winn L. Rosch, PC MAGAZINE, May 27,1986

UNLOCK

ORDER TODAY TOLL FREE:

1-800-423-0772

IN FLORIDA: 1-305-474-7548

TranSec Systems, Inc., 1802 North University Drive, Plantation, FL 33322

Trademarks are the sole properly of their respective owners. UNlock is for use only to improve the useablllty of legally acquired andoperated software.

WHAT'S NEW

SOFTWARE • SCIENTIFIC AND ENGINEERING

Program forRobot Design

Kern International's MAT-MAN, a program forcomputer-aided design ofrobot arms written at TexasA&M. is based on the Stan-ford manipulator. The soft-ware can predict the degree-of-freedom motion of themanipulator when the con-trol parameters of each linkare specified, or it can tellwhat the control parametersshould be for a particularmovement. MATMAN sym-bolically handles the com-plex matrix manipulation.The disk contains sourcecode in BASIC for the IBMPC. The manual covers thetheory of robot manipulatorkinematics and the deriva-tion of equations. MATMANsells for $85. Contact KernInternational Inc.. 575Washington St.. Pembroke.MA 02359, (617) 826-0095.Inquiry 589.

Computer-aidedCircuit Design

E soft's electronic designtool. CompDes, is amenu-driven program withselections that range frombasic electricity to circuitdesign.

The program calculatesvalues of circuits for activeand passive filters, at-tenuators, amplifiers, andpower supplies. You can

determine circuit values ofresistance, reactance,resonance, and decibelratios with the program'sbuilt-in calculators.

To use CompDes, youmust have an IBM PC, XT,AT. or compatible with MS-DOS or PC-DOS 2.0 orhigher and at least 128Kbytes of RAM. The price is$49.95. Contact Esoft Soft-ware. P.O. Box 072134,Columbus, OH 43207, (614)491-0832.Inquiry 590.

Least SquaresApproximation

Alpha Applied Researchannounced R2, a leastsquares approximation soft-ware package with curve fit-ting and data correlationcapabilities.

You can build mathe-matical models of scientificand engineering data usinga variety of functions, in-cluding polynomials, ex-ponentials, power functions,logarithmics, trigonometries,inverse trigonometries,hyperbolics, and inversehyperbolics. You can testmany functional forms, ac-cording to the company,with the addition of user-defined variables. You canalso build linear and non-linear equations in two toten variables from ex-perimental data.To run R2 you must have

an IBM PC XT or compati-ble running MS-DOS or PC-DOS 2.0 or higher, at least256K bytes of RAM. and asingle floppy disk drive.R2 costs $199 for the single-variable configuration; $298for the multiple version.Contact Alpha AppliedResearch, 2355 McLeanBlvd., Eugene, OR 97405,(503) 485-6841.Inquiry 591.

Signal Processingon the IBM PC

Tektronix announcedSignal Processing andDisplay Programs, a wave-form-processing, display,and data structure manipula-tion package.

SPD offers signal process-ing algorithms, enhancedgraphics, flexible data struc-tures, and software libraries.According to the company,SPD has more than 190 pro-cessing functions.

All of the waveform-pro-cessing graphic-display func-tions and data structure ma-nipulation utilities are writ-ten in C. Some of thesefunctions can be accessedthrough a BASIC interface aswell.

Hardware requirements in-clude an IBM PC. XT, AT, orcompatible with 256K bytesof RAM, a hard disk, andcolor graphics adapter. Thecompany recommends usingan XT or AT with 640K

RAM. For BASIC program-ming, you'll need an IBMBASIC version 1.0 compiler.For C programming, SPD iscompatible with Lattice Cversion 2.15. The cost of thepackage is $950. ContactTektronix Inc. P.O. Box 500.Beaverton. OR 97077. (800)426-2200; in Oregon, (503)627-9000.Inquiry 592.

Guide to

Signal Processing

Moonshadow Softwaredescribes its SPIA asan interactive software guidefor people who want tostudy signal processing.Using the program, you"build" functions by select-ing from a library of pre-defined functions and math-ematical operations. Theseoperations include Fouriertransforms, convolutions,and correlations. Each com-mand is displayed graph-ically in up to three win-dows. SPIA also operates onuser-acquired data.

The package runs on theIBM PC family and com-patibles and supportsseveral graphics adapters, in-cluding Hercules and IBMdevices. It costs $99;"qualified students" can buyit for $2 5. Contact Moon-shadow Software, 5016Castlewood Dr.. San lose.CA 95129, (408) 446-2459.Inquiry 593.

SOFTWARE • BUSINESS AND OTHER

Linking XENIXMachines

MMB's TEAMate is atool that enablesgroups of people to worktogether using their existingterminals. XENlX-based per-sonal computers, andsoftware.

TEAMate structures users'files into an outline form.

from which members of theteam can develop, reorga-nize, edit, or read docu-ments. These can includetext, spreadsheets, orgraphs.

The software can also beused as an electronic mes-saging system and a com-puter conferencing system

for both internal and exter-nal communication.

The user interface is cur-cursor-controlled. Other fea-tures include an on-line helpfacility, database access con-trol, XMODEM support, andmappable keys for non-standard terminal support.You can customize the com-mands, database, and screenand print formats for vertical

applications.

TEAMate runs under SCOXENIX System V on the IBMPC AT and compatibles.Prices for TEAMate start at$1995. An upgrade kit,which includes SCO XENIXSystem V, a database sys-.tern, a word-processingsystem, 2 megabytes of

[continued)

46 BYTE • SEPTEMBER 1986

BUT HIS TOOLS HAVE.

Counting the corn and measuring the market used to demandartistic, as well as accounting, virtuosity. And before you couldshow your results to the powers that be, you had to wait for theink to dry on the papyrus.

Today the whole procedure is cut and dried. Computersseparate the wheat from the chaff.And printers present the resultsfaster than an asp can strike. S^TL™..»

Now, the new OKIDATAMICROLINE8 290 series goesbeyond speed to give yougraphic capabilities theancient scribes would envy.The 292 model producesexecutive-quality correspon-dence at "need-it-yesterday"speed. The 293 prints just asfast on paper as wide as 16".

And for lightning-fast, high-quality data processing, the 294 widecarriage simply can't be beat.

Add color as brilliant as anything along the Nile—just bypushing a button. And special effects like boldface, underlinesand italics are as easy to use, too.

The MICROLINE 290 seriesworks with your IBM®, IBM com-

,„, ,.„,„«„„„ patibles and other major

PCs. And works perfectly,thanks to OKIDATA's highquality and rugged reliability.Count on OKIDATA to pro-duce the clearest presenta-tions for your business. Andcount yourself lucky youdon't have to know how todraw. For the dealer nearestyou, call l-800-OKIDATA.

OKIDATA

^^ an OKI AMERICA company

company

We put business on paper.

Inquiry 256Registered Trademark: OKIDATA and MICROUNE (Registered U.S. Trademarkl. Oki America. Inc. Marque deposee de Oki America. Inc. IBM. International Business Machines Corp.

WHAT'S NEW

SOFTWARE • BUSINESS AND OTHER

memory, and four serialports, costs $4500. For moreinformation, contact MMBDevelopment Corp., 753Deep Valley Dr., Rolling HillsEstates. CA 90274, (213)541-4504.Inquiry 594.

Relational Database

Microrim announcedR:base System V, adatabase management prod-uct for the IBM PC andcompatibles. This relationaldatabase enables multipleusers to perform data man-agement and create pro-grams to automate datamanagement tasks in stand-alone or multiuser LANenvironments.

R:base System V requiresan IBM PC, XT, AT, or com-patible, with PC-DOS or MS-DOS 2.0 or higher for singleusers. 3.1 or higher formultiusers. Single usersneed 512K bytes of RAM;multiusers need 640K. Ahard disk is required. Theprice is $700. For more in-formation, contact MicrorimInc., 3925 159th Ave. NE,P.O. Box 97022. Redmond.WA 98073-9722, (206)885-2000.Inquiry 595.

Database forIBM PCs

TAS-Plus, a program-mable relational data-base, was announced byBusiness Tools. It combinesthe aspects of a filemanager, a relational data-base, and an applicationdevelopment system.

TAS-Plus enables you tocreate, add, change, anddelete database recordswithout writing a program.Front-end facilities includepull-down menus and on-linehelp screens. You can dis-play multiple records andmanipulate data with thebrowse utility. The report

SELECT Display: data fron a tabic in ro

BROWSE Displays data while scrolling up, doMn, left and righl in (U

row: and coluans of a table.COMPUTE Calculate; the count, ninmun, aaMnun, average, sub, m

rows, standard deviation, variance or all of these vaU

for a column,

TALLY Display: unique values with nunber of occurrences in a colunCROSSTAB Cro::-labulates valuei in two colunn:.

LIST Display

list: euailabUIEU Define: a vie

out the structure of an open dalabae: on the current directory,at data in nuttiple tables.

A screen from Microhm's R.base System V.

writer organizes the datathat you select into reportformats that you define.Also, you can convertdBASE 111 files to TAS-Plusfiles with another utility. Upto 16 files can be open atthe same time, and they canbe updated as well. Andyou can chain to other pro-grams or execute DOS com-mands without leavingTAS-Plus.

System requirements in-clude an IBM PC, XT. AT, orcompatible running MS-DOSor PC-DOS 2.0 or higher.You must also have a mono-chrome or color monitor,384K. bytes of RAM. and atleast one floppy disk orhard disk drive. TAS-Pluscosts $69. For more infor-mation, contact BusinessTools Inc., 4038-B 128th Ave.SE, Suite 266, Bellevue, WA98006, (206) 644-2015.Inquiry 596.

Graphics Glue

Glue is a Macintosh soft-ware package thatenhances desktop-publishingprograms, such as Page-Maker and ReadySetGo, byletting you incorporate in adocument graphics frommost Mac applications. Solu-tions Inc. says its productalso makes electronicdistribution of documents(newsletters, for example)practical.

The program adds a print-to-disk capability to mostMac applications. Afteryou've saved a graph or aspreadsheet, you can copyimages into a document be-ing produced with MacWrite,MacPaint, Word, or othersoftware. Images copied byGlue are not limited byscreen size.

Once you've printed adocument to disk, you can

WHERE DO NEW PRODUCT ITEMS COME FROM?The new products listed in this section of BYTE are chosen from the thousandsof press releases, letters, and telephone calls we receive each month frommanufacturers, distributors, designers, and readers. The basic criteria for selectionfor publication are: (a) does a product match our readers' interests? and [b)is it new or is it simply a reintroduction of an old item? Because of the volumeof submissions we must sort through every month, the items we publish arebased on vendors' statements and are not individually verified. \f you wantyour product to be considered for publication (at no charge), send full infor-mation about it. including its price and an address and telephone numberwhere a reader can get further information, to New Products Editor, BYTE,One Phoenix Mill lane, Peterborough, NH 03458.

send it through a network ore-mail system, using mostcommunications packages.Solutions says.

Glue runs on any Mac andis HFS-compatible. Sug-gested retail price is $49.Contact Solutions Inc., P.O.Box 989, Montpelier, VT05602, (802) 229-0368.Inquiry 597.

Function LibraryEnhances Clipper

Communication Horizonsannounced five versionsof its function libraries,which provide record- andfile-locking capabilities forthe Clipper dBASE III com-piler from Nantucket.

NovelLib provides multi-user capabilities for Clipperrunning on the Novell Net-work and requires Novell'sNetware 4.61 or higher.PCnetLib is for use withIBM's PC Network or TokenRing. MlinkLib works withThe Software Link's Multi-Link Advanced or LANLink.3ComLib is for use with3Com's EtherShare series.OrchidLib works with AlloyComputer Products' ATNX,RTNX, or NTNX and AST'sPCnet.

All libraries share thesame syntax and can betransported to another net-work with few programchanges, according to thecompany. The multiuserlibraries include a basic coreof functions that parallel therecord- and file-locking func-tion of dBASE III Plus.

To use the libraries, youmust have the appropriatenetwork or multiuser systemand an IBM PC or compati-ble with approximate^ 10K.of free memory above thesingle-user program size.The libraries cost $99 each.Contact CommunicationHorizons, 701 Seventh Ave.,Suite 900, New York. NY10036, (212) 724-0150.Inquiry 598.

48 BYTE- SEPTEMBER 1986

Small Wonder.

Proof positive that good thingscome in small packages is thenew 3.5-inch diskette.

And that's big news for anyonewho uses an appropriately con-figured IBM PC, PC/XT, PersonalComputer AT and the new IBMPC Convertible.

Durable 3.5" diskettes, allowyou to carry over 350 standardtyped pages (720KB) in your shirtpocket. That's twice as muchinformation as on a 5.25" (360KB)diskette, in a much more rugged,portable form.

The new 3.5" diskette stores up to twiceas much (720 KB) as a 5.25" (360KB)diskette.

s

Now IBM PC users have the optionol using programs and data in eithersize, and the llexibility to work withother members of the IBM PC familyusing 3.5" diskettes.

Translation Services.

The new IBM Personal Computer3.5" External Diskette Drive providesa vital bridge between your IBM PCand 3.5" technology.This compactunit makes it easy for you to shareinformation between

computers using 3.5"diskettes and

5.25" diskettes.

The IBM PC 3.5"External Diskette Drive »/

provides a cost-effective bridgebetween 3.5" and 5.25"technology.

The new IBM PC Convertible is a f\

The IBM Personal Computer 3.5"External Diskette Drive comes intwo models, one for the IBM PersonalComputer AT and one for the IBMPC, PC/XT or IBM PC Convertible.

Information and applications canbe shared* between 3.5" diskettedrive machines and an IBM PCrunning DOS 3.2 with the IBMPersonal Computer 3.5" ExternalDiskette Drive attached.

Transferring files and programsbetween 3.5" and 5.25" diskettes is aseasy as making a backup copy of adiskette. So, you can very quickly havea "database to go" for your IBM PCConvertible. Or, a week's worth ofsales call information in a ready-to-useform for your secretary when youreturn.

Print Evolution.

The new IBM Proprinter XL isespecially designed to make life easierfor those who work with accountingapplications. Its wide carriage designand switchable printing speeds of upto 200cps are perfectly suited forspreadsheet applications.

The IBM Proprinter XL alsofeatures an easy-to-use front operatorpanel that lets you choose from theXL's extensive menu ol features, evenif you have little or no programmingskills.

Plus, the new Proprinter XL offersa long list of standard, labor-savingfeatures to make many printingjobs easier: easy printing ofsingle sheets and envelopeswithout removing yourcontinuous forms paper,power-assisted paper

loading, all-points-addressable graph-ics capabilities, near-letter-qualityprinting (40cps), and emphasized textprinting (lOOcps). Plus, you can setthe printer in double high, doublewide or emphasized print through theoperator panel or through software.

Power To Go.

The new IBM PC Convertible canplay two powerful roles in any business-person's life.

In the office, with an optionalIBM PC monochrome or color displayand adapter, the PC Convertiblefills the bill as a space-savingdesktop PC.

But when you're ready to hit theroad or runway, just attach the highquality, 80-column x 25-line detach-able LCD display, and the PCConvertible is ready to travel, too.

Weighing in at a scant 12 pounds,the IBM PC Convertible deliversfull-size PC performance in a portablecomputer with heavyweight featuresincluding

A full-function keyboard with full-size keys and the same ccnter-to-center key spacing as a standard IBMPC keyboard.

A last, very efficient 80C88 micro-processor with up to 10 hours ofnon-stop computing power betweenbattery recharges (with average use).

Dp to 512KB of user storage(through 128KB expansion cardsfrom a standard 256KB).

Dual 3.5" diskette drives supporting720KB capacity 3.5" diskettes.

Additional IBM PC Convertiblefeatures help ensure that work doneon the road doesn't get lost in transit.

READ

ONLY

A review of the IBM Personal Computer Family. Vol. 3, No. 1

Welcome To Read Only.

Here's great news lor IBM PC users.IBM has expanded its alreadyexpansive; PC product line to bringeven more power and flexibility toyour desktop.

I n this issue alone you'll be readingabout new enhancements to theIBM PC/XT, the IBM PersonalComputer AT,® the IBM PC Keyboard,the IBM Proprinter, the MainframeCommunications Assistant, andmore.

And, as if that weren't enough,IBM has also found time to expandyour computing horizons evenmore by introducing exciting newPC products. This issue of Read Onlywill tell you about the new IBM PC

Two Ctrl andkeys lor ambitrous access.

Isolated Escape keyto help reducekeying errors.

Enlarged Tab andCaps Lock keys.

Convertible, new 3.5"diskettes, thenew IBM PC 3.5" External DisketteDrive, and two new accountingsoftware packages.

HARDWARE NEWSThe Right Touch.

To make it easier than ever to workat an IBM PC/XT or PersonalComputer AT, IBM has introducedthe new IBM Enhanced PersonalComputer Keyboard (shown below).

Alt

dex-

Twclvc Functionkeys in new position-two additionalFunction keys pro-vide added flexibilityin host access orcommunicationsapplications.

IBM redesigned its classickeyboard to better meet the needsol PC users, office system users, aswell as users who communicate withlarger computers.

To accomplish this, IBM includedseparate cursor and screen controlkeys, making it easier for users todedicate the numeric keypad tonumeric input when working withnumber-intense applications. Plus,the keypad can still be used forcursor and screen control when notin the num/lock mode.

IBM also increased the numberof function keys from ten to twelve,arranged across the top of thekeyboard. This gives users twoadditional keys for increasedautomatic operation.

All to enhance the productivity ofthose who work with words, numbersor a host of other applications.

Enlarged ISackspaceand Shift keys.

Dedicated FunctionControl keys forfrequently used. functions.

Dedicated NumericPad including Enterkey and fourArithmetic Functionkeys for easynumeric input.

Separate ScreenControl andCursor keys forfaster, easier access.

The IBM Enhanced PC Keyboardto help you he more productive, faster.

wer PC that works wherever you do.

These optional features include:

An internal modem feature to letyou communicate with othercomputers simply by plugging thePC Convertible into any standardmodular phone outlet.

The IBM PC Convertible Printer forsystem battery powered, near-letter-uualily printing anywhere.

Plus, the IBM PC Convertible cancome with a helpful set of programsto get you up and running on theroad to enhanced productivity. Fast.

Planned For Growth.

It's a classic case of a very goodthing that just keeps getting better.

IBM has now introduced theenhanced PC/XT product family:increased flexibility in storage,memory and option configuration formaximum productivity today, and

IBMPC/XT

£*;»-«-^.J^.'r-»»v-i_fc.t.1

The new IBM PC/XT—enhanced powerand flexibility for today. And tomorrow.

plenty of room to expand as yourbusiness docs.

The XT is now available with a 20-megabyle hard file that can store upto 10,000 pages of information.There's also an easy, low cost way toincrease memory to a lull 640KB onthe system board without tying upvaluable expansion slots. And theXT now has 3.5" diskette capability,utilizing the new IBM PersonalComputer 3.5" External Diskette Drive.

Plus, full IBM PC compatibilitymeans that no matter which XT modelyou choose, you can benefit fromthe extensive IBM Personal Computersoftware library.

The new IBM PC/XTs, becauseone size should not have to fit all.

Power Play.

If you thought you'd seen all theIBM Personal Computer AT has tooffer, think again.Twice.

IBM has increased processor speedin two new models of the IBMPersonal Computer AT by an impres-sive 33% (from 6mhz to 8mhz). So,they're sure to become your lastIriends il you work with large spread-sheets and volumes of data.

The new models offer a standard30MB hard file and the option to addan additional 20MB or 30MB hardfile. That's a grand total ol 60MB,or approximately 30,000 pages ofwords and numbers.

These two newcomers are borncommunicators: Sharing files withother PC s from a variety of popularsoftware programs. Working as aserver for data storage and fileprocessing in an IBM PC LAN running

the IBM PC Local Area Networkprogram. Utilizing IBM Top View™and one of the IBM PC 3270 Emula-tion Programs to access mainframeinformation and to execute PCDOS and mainframe applicationsconcurrently.

And the best news of all is thatyou can get all this increasedpower without anincreased price.

20MB 30MB

Now the IBM Personal Computer AToffers a choice of hard fdes to meetyour storage needs.

WHAT'S the program

Meet Your New Assistant.

Keeping the books for a smallbusiness is a very big job. So, IBMthought you could use a friendly,versatile, highly skilled assistant.The new IBM Accounting AssistantSeries.

This complete series of automatedbookkeeping application programsfor small to medium size businessescan help cut any job down to size.And, its modular design means thatyou can start out with just the pro-grams you need today, then expandyour series as your business grows.

The IBM Accounting AssistantSeries includes six individualeditions: General Accounting,Accounts Payable, Accounts Receiv-able and Billing, Payroll, Inventory

The IBM Accounting Assistant Series.Big help for small to medium sizebusinesses.

Control and Purchasing, and Job Costbidding software.

Plus, thanks to the IBM AccountingAssistant Series' user-friendly attri-butes and easy-to-follow instructions,you can start profiting from yoursystem from day one.

High-Powered Advice.

Perhaps your business has pro-gressed past the need for basicaccounting software. Then youshould consider getting powerful,sophisticated help: the IBMBusiness Advisor.

IBM Business Advisor PC account-ing soft ware takes integrated softwareto a new level of sophistication andease-of-use.

Business Advisor's seamlessarchitecture allows functions fromeach of its modules to play together.Passage back and forth among theGeneral Accounting, AccountsPayable, Accounts Receivable, Payroll,Inventory Control, Order Entry andother applications is intuitive.Menus guide you easily from one taskto another.

And when you make a changeanywhere, consider it made every-where it applies. Automatically,through Business Advisor's real-timeposting feature.

This Business Advisor speaks yourlanguage, too. It uses business languageinstead of accounting language,and has over 80 easily customizedfinancial report formats built in.And you don't have to keep this allto yourself, because in an IBM LAN

different people at different PCscan work on the same fib; at thesame time.

And you always go further wheneveryone is working together.

The 3270 Emulation Programs,

Entry Level, Version 2 and Version 3,give you an easy and inexpensiveway to attach your IBM PC to yourhost computer.

Working at your IBM PC, stand-alone or in an IBM LAN, you cannow utilize the local power and user-friendly attributes of your PC lot-DOS applications, plus have accessto the vast memory, number-crunchingcapacities and other productivity-enhancing capabilities of your hostcomputer.

The Entry Level product offers upto 40% faster file transfer between your

IBM PC 3270 Emulation

Products can put your IBM I'd or IBMLAN in touch with the big time.

PC and host computer. A "Hot Key"for easy switching between host andPC applications. Keyboard remappingso you can always work in a familiarkeyboard format. And much more.Versions 2 and 3 can provide aneconomical gateway which lets you

share the wealth of host knowledgewith the members of your IBM PCNetwork or Token-Ring Network.

Versions 2 and 3 support the newPC DOS 3.2, 3.5" media, the IBMLocal Area Network program 1.10,a host of printers and the Top View1.1 interface, for multitasking andwindowing capabilities.

All of which adds up to addedproductivity for you and everyoneon your IBM Local Area Networkor token ring.

To find out more about the entirefamily of 3270 PC EmulationPrograms, as well as a wide range ofother IBM connectivity hardwareand software, watch for the nextRead Only.

Mainframe CommunicationsAssistant enhancements include3.5" media support and increasedIBM PC family communicationscapabilities.

The IBM PC Voice Communica-tions Option speaks for itself. Thismultifunction adapter card canallow your IBM PC to recognize andrespond to voice commands, speaktext that appears on the screen,initiate and rcceive/record/playbaekphone calls, provide remote, tonepush button phone access to your PC(and host), and transmit voice anddata simultaneously. —...

For more information on any of thePersona] Computer products dis-cussed in this issue of Haul Only, seeyour Authorized IBM Personal Com-puter Dealer. Or, eall 800-447-4700.In Alaska call 800-447-0890.

IBM and Personal Computer AT are registeredtrademarks of Internationa] Business MachinesCorporation. PC/ XT and lop View are trademarksof International Business Machines Corporation.

* lie lore copying any software product, be sure toread, understand and comply with the specificsoftware license agreement and installationinstructions for that product.

O V)H(t International Business Machines Corporation,tattle Tramp character licensed by itiihMrs Inc., S.A.

EVENTS AND CLUBS

September 1986

Events

Midcon/86, Dallas, TX. Electronic Conven-tions Management Inc.. 8110 Airport Blvd..Los Angeles. CA 90045. (800) 421-6816;in California. (800) 262-4208 or (213)772-2965. September 9-11

ESC 86: Second European SimulationCongress, Antwerp, Belgium. The Societyfor Computer Simulation, P.O. Box 17900,San Diego, CA 92117-7900, or Ghislain C.Vansteenkiste, Professor of Engineering,University of Ghent, Coupure Links 653,B-9000 Ghent, Belgium, tel: 91-236961,ext. 400; telex: 12754 RUGENT.September 9-12

Software Engineering '86, SouthamptonUniversity. United Kingdom. B1SL Con-ference Dept. (SE '86), The British Com-puter Society, 13 Mansfield St., LondonW1M 0BP, United Kingdom, tel: 01 6370471. September 10-12

The 39th Annual Conference onEngineering in Medicine and Biology,Baltimore. MD. The Alliance for Engineer-ing in Medicine and Biology. 1101 Connec-ticut Ave. NW. Suite 700, Washington, DC20036. (202) 857-1199. September 13-16

Euromicro 86: Twelfth Symposium onMicroprocessing and Microprogram-ming, Venice. Italy. Mrs. Chiquita Snippe-Marlisa, p/a TH Twente, Dept. INF, RoomA227, P.O. Box 217, 7500 AE Enschede.The Netherlands, tel: (31) (53) 338799;telex: 44200 THES. September 15-18

Fall National Design EngineeringShow & Conference, Jacob K. lavits Con-vention Center. New York, NY. Fall Na-tional Design Engineering Show, CahnersExposition Group, 999 Summer St., Stam-ford, CT 06905, (203) 964-0000.September 16-18

Third Annual International Forum onMicro-based CADD, Colorado StateUniversity, Fort Collins. CO. Office ofResearch. Development, and Training,Department of Industrial Sciences, Col-orado State University, Fort Collins. CO80523. (303) 491-5278. September 17-19

Canadian High Technology Week, Ot-tawa, Ontario. Canadian High TechnologyWeek, 2487 Kaladar Ave.. Suite 214, Ot-tawa, Ontario. Canada K1V 8B9, (613)731-9850. September 21-27

1986 Nebraska Videodisc Symposium,

Lincoln. NE. Videodisc Design/ProductionGroup. KUON-TV/University of Nebraska.P.O. Box 83111, Lincoln. NE 68501-3111.(402) 472-3611. September 22-2 5

PDOS Interest Group Conference,

Garden Grove, CA. Eyring Research In-stitute Inc., 1455 West 820 N, Provo, UT84601, (801) 375-2434, September 22-25

Ultratech '86, Long Beach, CA. GreggBalko, Society of Manufacturing Engineers,One SME Dr.. P.O. Box 930, Dearborn, Ml48121, (313) 271-1500. September 22-25

Artificial Intelligence and AdvancedComputer Technology Conference/Ex-hibition, Rhein-Main Halle, Wiesbaden,West Germany. Tower Conference Man-agement Co., 331 West Wesley St.,Wheaton, IL 60187, (312) 668-8100. InEurope. TCM Expositions Ltd., ExchangeHouse, 33 Station Rd., Liphook. Hamp-shire GU30 7DN. United Kingdom, tel: (44)0428-724660: telex: 859438 TOWER.September 23-25

The International Videotex IndustryExposition and Conference, New York.NY. Susan M. LeDonne, Cahners Exposi-tion Group, 999 Summer St.. Stamford, CT06905, (203) 964-0000. September 23-25

ACC '86: 1986 Australian ComputerConference and Exhibitions, Mel-bourne, Australia. Peter Peterick, RiddellExhibition Promotions Pty Ltd., RiddellHouse, 137-141 Burnley St., Richmond,Victoria 3121. Australia. September 23-26

Interex/Hewlett-Packard ComputerUsers Conference, Detroit, MI. Interex,680 Almanone Ave.. Sunnyvale, CA 94086,(408) 738-4848. September 29-October 3

Northcon/86 Electronic Show and

Convention, Seattle. WA. Electronic Con-ventions Management Inc., 8110 AirportBlvd., Los Angeles, CA 90045. (800)421-6816; in California. (800) 262-4208 or(213) 772-2965. September 30-Octofer 2

1/ you send notice of your organimlion's publicactivities at least four months in advance, wewill publish them as space permits. Please sendthem to BYTE [Events and Clubs), OnePhoenix Mill lane, Peterborough. NH 03458.

Clubs

The Amigan Apprentice and Journey-man. P.O. Box 411. Hatteras. NC 27943. ForAmiga programmers.

North American Amiga Users Group(NAAUG). Box 376, Lemont, PA 16851.

MacInterested, Nashville MacintoshUsers Group, c/o Clark Thomas, 2305Ellison Place #C5. Nashville, TN 37203,(615) 327-1757.

Indy ST Computer Club, Box 252 5, In-dianapolis, IN 46206, (317) 898-9856.

Amiga Atlanta, Box 7724. Atlanta. GA30357. (404) 676-0384 or 676-0411.

Space Coast Amiga Users Group, P.O.Box 2098, Merritt Island, FL 32952.

Toronto Atari Federation, 5647 YongeSt. #1527, Willowdale, Ontario, CanadaM2M 4E9.

The Space Coast Macintosh Meetingand Drinking Society (MacMad), c/oJamie Cox. 2604 Lewis St., Melbourne, FL32901, (305) 723-7935.

technology Update, Sensory Aids Foun-dation, 399 Sherman Ave. Suite 12, PaloAlto, CA 94306, (415) 329-0430. Tech-nology for blind and partially sightedpeople.

Apple PugetSound Program LibraryExchange, A.P.P.L.E. Co-op, 290Southwest 43rd St., Renton. WA 98055.

Snap-n-Sketch Image Processing UsersGroup, P.O. Box 9506, Berkeley, CA 94709,(415) 841-7627.

KCS CompuClub, KCS Micro ComputerServices, 8 Reynolds Cr, Belleville, Ontario,Canada K8P 2W7, (613) 966-82 50.

Gavilan User Group, Robert Brown, 780Manx Ave.. Campbell. CA 95008, (408)379-2774.

Milwaukee Area IBM PC Users Group,P.O. Box 2121, Milwaukee, WI 53201-2121.

Bahamas Bulletin Board System, ErikRussell, P.O. Box N1684, Nassau. Bahamas,(809) 326-5630. For Commodore 64 and128 users. ■

SEPTEMBER 1986 -BYTE 49

ASK BYTE

Conducted by Steve Garcia

A Sharp Apple

Dear Steve,

I am the owner of an Apple He and aSharp PC-1350. I have learned that amodem and/or RS-232C interface is nowavailable for the PC-1350 (perhaps forother Sharp PC machines as well).

However. I have been unable to locateinformation on how to hook my two com-puters together so they can communicate.Do you have any suggestions? Also, doyou know of any users groups for SharpPC-series computers or of any publica-tions devoted specifically to thesecomputers?

Larry JonesManhattan Beach, CA

It would seem that the easiest ap-proach to communication between yourSharp and Apple machines would beASCII transfer through modems. Terminalprograms in both machines would easeuploads and downloads and could allowformat changes in files, allowing, for in-stance, BASIC program transfer. As thesemachines are widely dissimilar hardware-wise, this would seem to be the best wayto go.

1 am uncertain of the availability of aSharp-specific publication or a usersgroup in your area. A Sharp dealer wouldprobably know of any such magazines.As to users groups, you might contact

The Silicon Valley Computer SocietyP.O. Box 60506Sunnyvale, CA 94088

They might be able to advise you of clubsin your area that are interested in Sharpcomputers. You might also pick up a copyof Computer Shopper (available at manyelectronics and computer shops); theyhave listings of users groups that are up-dated monthly.—Steve

8 or 16?

Dear Steve,

As a relative newcomer to computerhardware systems, I am somewhat per-plexed to find a large number of 16-bitcomputers that have only eight DRAMchips on the main processor card. In-cluded in this list are many of the newercomputers, like the Amiga and the Atari

520ST, as well as the Cypher, which sportsa 68000 and a Z80-surely there must besome way of accessing a 16-bit-wide RAMbank with two reads or writes of the Z80rather than slowing the 68000 down byforcing it to increment the address aftereach half-word.

For the benefit of any other tyro whomay be perplexed by the anomaly of a"four-lane highway with a two-lane tollgateat the end," could you please explain thepros and cons of 8- versus 16-bit-wideRAM in a 16-bit processor system?

1 cannot imagine that price has anythingto do with it, since the Amiga and the520ST are recently released machines,and 256K-bit DRAMs are available for lessthan $5 apiece.

Is it true that the NS32016 CPU has aCP/M subset of its coding? Does this meanthat CP/M can be run directly on anNS32016?

Chris WendtMalvern, Victoria, Australia

There's a simple trade-off that governswhether or not a manufacturer will usea full 16-bit interface for a computer: Willthe added performance add enoughsales to outweigh the cost of the addedhardware? As it turns out, fetching twobytes in sequence isn't a severe penaltywith micros that are designed to use an8-bit bus, so for most tasks the smallerbus wins out. The trick is that the 808x-and 680xx-class processors fetch instruc-tion bytes before they're needed, when-ever the bus isn't being used for anythingelse. In most cases, the prefetching hard-ware can keep up with the instruction ex-ecution hardware with little performancedegradation.

Using both 16-bit and 8-bit processorson the same bus has some interestingconsequences: If the memory is 16 bitswide, you must read and write two bytesat a time. How do you handle an 8-bitprocessor writing only one byte? In ef-fect, the memory hardware must readtwo bytes, change one of them, thenwrite them both back. Remember that a16-bit memory can't be accessed byte bybyte!

There are two reasons why you don'tsee 16-bit-wide RAMs, ROMs, and

EPROMs. The first is pin count: 16 fordata I/O, 1 each for power and ground,2 for chip select and output enable, then7 or 8 for a multiplexed address add upto 28 pins and a rather large (expensive)package. The second is economics: ICprices are determined in large part bysales volume. A 16-bit-wide IC could beused only in a 16-bit-wide system: an8-bit-wide IC can be used in either a16-bit or an 8-bit system. If you're amanufacturer, you'll always choose toproduce a part that can be used in themost systems.

As far as 1 know, the National Semicon-ductor 32000 family isn't compatible withthe Intel 8080 instruction set used byCP/M computers. You may be thinking ofthe new V20 processors from NEC thatare pin-compatible with Intel 8088 lCsbut can also emulate an 8080 when aspecial mode is used.— Steve

Solenoids

Dear Steve,

1 am a graduate student in water re-sources engineering at Texas A&M Univer-sity. We are currently modeling waterdistribution networks (water supply sys-tem: pipes, elevated tanks, pumps, etc.)with a program written in BASIC. We needto be able to trigger electric solenoids toturn pumps, valves, etc., on and off fromwithin the program. 1 haven't seen anysolenoid-driver software or hardware ad-vertised that could be operated with the

{continued)

IN ASK BYTE, Steve Garcia answers questions onany area of microcomputing. The most representativequestions received each month will be answered andpublished. Do you have a nagging problem? Sendyour inquiry to

Ask BYTE

do Steve Garcia

P.O. Box 582

Glastonbury. CT 06033Due to the high volume of inquiries, personal repliescannot be given. All letters and photographs becomethe property of Steve Garcia and cannot be returned.Be sure to include "Ask BYTE" in the address.

The Ask BYTE staff includes manager HarvWeiner and researchers Eric Albert. Bill Curlew. KenDavidson, jeannette Dojan. \on Elson. Roger lames,Frank Kuechmann. Dave Lundberg. Edward N/sley.Dick Sawyer. Andy Siska. and Robert Stek.

50 BYTE • SEPTEMBER 1986

COPYRIGHT © 1986 STEVEN A. CIARCIA. ALL RIGHTS RESERVED.

MICROSOFT LANGUAGES NEWSLETTER Vol. 1, No. 9

News about the Microsoft Language Family

Adding New Commands to Microsoft* QuickBASIC Version 2.00

The standard way to add separately compiled modules to a BASIC program has been through the use of a linker,but Microsoft QuickBASIC provides a second method as well. The Microsoft QuickBASIC BuildLib routine can beused to add separately compiled modules to the BASIC runtime file. You can create a new runtime file that includessoftware interrupt support by typing:

BUILDLIB USERLIB.OBJ, QB_BIOS.EXE;

This will create a new runtime file by the name QB_BIOS.EXE that can be used by Microsoft QuickBASIC.When you load Microsoft QuickBASIC, you must specify the new runtime file with the /L switch as follows:

QB/L QB_BIOS.EXE

This allows Microsoft QuickBASIC to support separately compiled modules without requiring the LINK step.

Using the mouse in Microsoft QuickBASIC Version 2.00 Programs

The software interrupt routines that you just added to Microsoft QuickBASIC can be used to access the ROM BIOSand DOS system service routines. These routines provide a range of mouse, keyboard, video, and DOS services thatwere previous^ unavailable to BASIC programs. The following example lets you draw in high resolution graphics modewith the mouse. The mouse driver (MOUSE. COM) must be installed before running this program.

' everything is integer'high resolution graphics

'initialize mouse

' turn on mouse cursor

'exit when a key is pressed'read mouse position' if mouse button pressed'draw a line to mouse position'save old position

DEFINTa-z

SCREEN 2

mO = 0: ml = 0: m2 = 0: m3 = 0: oldx = 0: oldy = 0

CALL mouse( mO, ml, m2, m3 )

rn0=l

CALL mouse( mO, ml, m2, m3 )

m0 = 3

WHILE inkey$=""

CALL mouse( mO, ml, m2, m3 )IFmloOTHEN

LINE(oldx,oldy)-( m2, m3)oldx = m2: oldy = m3END IFWENDEND

Call the mouse interrupt driverSUB mouse( mO, ml, m2, m3 ) STATICDIMregs(7)

regs( 0 ) = mO: regs( 1) — ml: regs( 2 ) = m2: regs( 3 ) = m3

CALL INT86( 51, VARPTR( regs( 0 )), VARPTR( regs( 0 )))

mO = regs( 0 ): ml — regs( 1): m2 = regs( 2 ): m3 = regs( 3 )END SUB

In addition to INT86, the userlib.obj module also contains the INT86X and PTR86 routines. The INT86X routineshould be used instead of INT86 when the system call requires segment registers. The PTR86 routine is used to convertthe address of a large numeric array variable to a segment-offset value for use with PNT86X. Access to the softwareinterrupts adds tremendous flexibility to BASIC programs. However, care should be taken since BASIC does no errorchecking on interrupt calls.

For more information on the products and features discussed inthe newsletter,

write to: Microsoft Languages Newsletter16011 NE 36th Way, Box 97017, Redmond, WA 98073-9717Or phone:

(800) 426-9400. In Washington State and Alaska,call (206) 882-8088. In Canada, call (416) 673-7638.

Microsoft is a registered trademark of Microsoft Corporation.

Look for the Microsoft Languages Newsletter every month in this publication.

Latest DOS Versions:

Microsoft C Compiler

4.00

Microsoft COBOL

2.10

Microsoft FORTRAN

3.31

Microsoft Macro Assembler

4.00

Microsoft Pascal

3.31

Microsoft QuickBASIC

2.00

ASK BYTE

IBM PC or a compatible. It would be bestif we could operate the solenoids fromwithin BASIC. Can you offer any sug-gestions?

Frank BellCollege Station, TX

Some boards available for the IBM PCfor control and instrumentation applica-tions may satisfy your needs. Thesegenerally won't drive solenoids directlybut can be buffered with transistors orsolid-state relays as appropriate. A cou-ple of sources are

Analog DevicesP.O. Box 280Norwood, MA 02062(617) 329-4700

Burr-BrownP.O. Box 11400Tucson, AZ 85734(602) 746-1111

Metrabyte Corporation440 Myles Standish Blvd.Taunton, MA 02780(617) 880-3000

It is also fairly simple to use a printer

port to control your solenoids, if you canget by with eight channels. The outputlines should be connected to latches orflip-flops to hold the solenoids on, sincethe printer ports are set up to outputshort pulses. You could use one line tosignal the latches when to turn on or offor use the flip-flop to alternately turn thesolenoid on or off each time it receivesa signal.

The method for doing this in BASIC isto do LPRINT CHR$(n), where n is theseries sum fX, *2"\) for \ = 0 to 7 and X,is 0 or 1, depending on whether solenoidnumber i is to be turned on. For exam-pie, if solenoids 0 and 2 are to beswitched, you would send CHR$(1 *2"0+ 0*2-1 + 1*2-2 +0) or CHR$(5)(binary 00000101).—Steve

Booting Problems

Dear Steve,

1 recently purchased Orchid Tech-nology's PCturbo 186 board and an ASTmultifunction card for my IBM PC XT-compatible machine. When I boot the ma-chine with both cards in it, 1 get a "badchecksum" error from the PCturbo 186board. The boards work fine on their own.

I have tried everything 1 can think of, in-cluding removing the game ports andchanging the direct memory access chan-nel. Have you any idea what might be theproblem?

Also, why won't the 80186 work with the8087 on the PC motherboard?

Peruez BhathenaDammam, Saudi Arabia

I talked to Howard Pitchon at OrchidTechnology about your problem. He saysthat the most likely cause is a conflict be-tween the printer interrupt on the multi-function card and the interrupt used bythe PCturbo 186.

The PCturbo 186 board uses IRQ 7,which is normally assigned to the printer.There is little software on the market thatuses the printer interrupts, so you prob-ably won't have any trouble if you disableit. (And you'll surely have none if youdon't have a printer connected to theport!)

There may be a jumper on the multi-function card that disables IRQ 7. If not,you will have to cut the trace that con-nects the circuitry to pin B21 on the

(continued)

AC/FORTRAN™

The most powerful FORTRAN 77 compiler available for a personal computer.

AC/FORTRAN is a full feature, mainframe quality, ANSI FORTRAN 77 compiler. It generates position independent,directly executable native object code and includes: a full screen Debugger, Linker, Library manager, Runtime

Library, IEEE math, interface to C, VAX extensions and the ability to generate assembler source. There is no limitation oncode or data size; support for Complex numbers, Virtual arrays, and Overlays is provided. AC/FORTRAN requires only46K of RAM, works with hard drives and is not copy protected. All of the following versions of AC/FORTRAN are source compatible.

MacFortranV2.2 -

MacFortran/RL

MacFortran/020 -

AmigaAmiga/020

Atari ST

absmft

HFS compatible. Includes full support for mouse, windows and toolbox. Distributed by Microsoft as MS

FORTRAN for Macintosh. $295

Replacement Hardware Runtime library for MacFortran (MS FORTRAN) V2.1 and later. Version available

for NS32081 or the HyperDrive 2000 with MC68881. $149

Professional Series: includes all the features of MacFortran (MS FORTRAN) PLUS full support for

68020/68881 upgrades such as Levco's Prodigy 4. $495

Includes full support and special documentation for ROM interface. $295

Professional Series: includes all the features of AC/FORTRAN plus full support for CSA's 68020/68881

Turbo Amiga. $495

Includes full support and special documentation for GEM. Runs on all 520/1040 series machines. $199-95

Telephone orders welcome4268 N. Woodward, Royal Oak, Ml 48072 USA(313)549-7111 Telex 235608

MS and Microsoft are trademarks of Microsoft Corp.; VAX is a trademark of Digital Equipment: Macintosh is a trademark licensed to Apple; Amiga is a trademark ofCommodore/Amiga; Atari and ST are trademarks of Atari Corp.; Macfortran. MacFortran/ Rl„ MacFortran/020, anil AC./FORTRAN are trademarks of Absoft Corp

52

I YTE • SEFTEMBER 1986

Inquiry 2

We have 1000's of Software andhardware items in stock. Shipmentson almost all items within 24 hours!

Call for programsnot listed

WAREHOUS

DATAPRODUCTS

Technical & OtherInfo. (602) 246-2222

TOLL-FREE ORDER LINE 1-800-421-3135

FREE! UP TO $100 SOFTWARE FREE!

With every purchase over $100.00 you canselect one of the following MS/DOSdiskettes at no charge. Please indicatechoice(s).

1. Blueberry I - 54 basic utility programsincludes printer select, graphic genera-tion, etc. Retail value $10.

2. Blueberry II - includes a banner genera-tor, a label maker and a checker game(requires graphics card). Retail value$10.

3. Print Select program - Assembly lang-uage program to select different typefonts, etc., or make your printer func-tion as a correctabletypewriter-perfectfor envelopes, notes, etc. Adaptationmodules for popular printers includedand capability to adapt any printer.Retail value $40.

4. Deposit Program Compiled DBase tolist and total cash, check, bank card forbank deposit and keeps history - Deve-loped for our corporate use - Super Pro-gram! (source code available). Retailvalue $40.

Select an additional diskette for everyadditional purchase of $150 or purchaseover $500 and receive all fourat no charge.

DATA BASE MANAGERS

Clipper $334

Clout 2 117

Condor III 310

Fox and Geller Quickcode 138

Fox and Geller Quickreport 138

Knowledgeman II 285

Nutshell Filer 59

Powerbase 2.2 212

PFS: File 78

Q&A Call tor price

RBase 5000 247

Think Tank 92

Wordtech DBase 3 compiler 419

WORD-PROCESSING

Easy (Micro Pro) 88

Leading Edge w/Merge/Spell 75

Microsoft Word 3.0 Call

Multimate 3.31 Call

Multimate Advantage Call

Peachtext 5000 145

PFS: Write 78

Volkswriter 3 139

Webster Spell Checker 37

Word Perfect 4.1 195

Wordstar 162

Wordstar Propac 233

Wordstar 2000 233

Wordstar 2000+ 278

SPREADSHEETS

Microsoft Multiplan 108

PFS: Plan 78

Supercalc 4 Call

VP Planner 49

ACCOUNTING

BPI Accounts Payable 299

BPI Account Receivable 299

BPI General Accounting 299

BPI Payroll 299

Cyma Call

Dollars and $ense 94

Tobias Managing Your Money 94

TCS. Big Four equivalent of PeachtreeSeries 4 - Specially augmented and cus-tomized for your IBM PC Terminal andPrinter - GL, AR, PA, AP, CP/M-80, CP/M-86 for PC XT, DOS 1.1, 2.0.Each Module $65 For All Four $249

INTEGRATED

Enable Call

Smart Software Call

TRANSFER PROGRAMS

Crosstalk XVI $89

Hayes Smartcom II 88

Microsoft Access Call

Move-It 79

Remote 89

GRAPHICS

Chartmaster 205

Energraphics 2.0 289

Fancy Font 129

Fontrix 99

Freelance 197

Graphwriter/Combo 294

Microsoft Bus Mouse 107

Microsoft Flight Simulator 28

PC Mouse W/DR Halo II 106

Printshop 33

Signmaster 134

INCREDIBLE VALUE!

Nationally advertised boards for IBM PCand most compatibles at giveaway prices.1 year warranty

Keyboards (similar to 5151) $89

Monochrome Board w/Printer Port.. $79Graphic Board with parallel port(similar to Hercules Graphics) .... $85

Expansion Board 0 to 576K $42

Multifunction Board w/game port

(similar to AST Six Pack) $99

Four Drive Floppy Controller $45

Color Card without printer port $79

Color Card with printer port $89

MULTITECH Turbo IBM Compatible Com-puter 256K, dual drives, 8MHZ, Ports-parallel,-serial-clock, 5151 typekeyboard, graphics board (similarto Hercules), mono monitor, DOS 3.16 month national (TRW) warranty .. Call

LANGUAGES

Lattice C Compiler 3.0 Call

Run C Professional 135

Microsoft C Compiler 219

Microsoft Fortran 195

Microsoft Macro Assembler 84

Microsoft Pascal Compiler 166

Microsoft Quick Basic 55

UTILITIES

Carbon Copy 115

Copy II PC 19

Copy II PC Board 79

Copywright 42

Desqview ', 59

Direct Access 59

Fastback 85

Microsoft Windows 56

Norton Utilities 3.1 49

PC Tools 19

Prokey 4.0 72

Superkey 39

PROJECT MANAGEMENT

Microsoft Project 219

Super Project Plus Call

HARDWARE

HARD DRIVES

Bernoulli 20 MB <h ht. w/Controller .... 2077

Filecard 20 MB 555

Seagate 20 MB Internal w/Controller .,. 399Seagate 30 MB w/Controller 479

MODEMS

Hayes 1200 Call

Hayes 1200B w/Software Call

Hayes 2400 599

HARDWARE

U.S. Robotics Courier 2400 $359

U.S. Robotics Password 1200 Call

RAM

64K 150NS Chips (Japan-Set of 9) .. $10.50256K Ram Chips (Set of 9) 27

BOARDS

AST Advantage 329

AST Sixpack (384K) Call

Hercules Color Card 145

Hercules Graphics Card 299

J RAM III (Tall Tree) Call

J RAM III AT (Tall Tree) Call

J Lazer (Tall Tree) Call

Paradise Five Pak 99

Paradise Modular Graphics Card 249

Quadram Board with Par/Ser

and Game Port 199

Quadcolor I 185

Sigma Maximizer Multifunction 149

STB Chauffeur Board 249

STB EGA Plus Call

STB Mono Board 155

AB Parallel Print Switch w/cables 75

Mini Micro Parallel Print Buffer 69

IBM 135 Watt Power Supply 59

COMPUTERS

Corona PC Call

Sperry PC Mono 256K Dual DriveSerial Port, Clock, MS/DOS 2.11 Call

ABBOTT TURBO PC

IBM Compatible Computer, 4.77 MHZ or7.47 MHZ, AT style keyboard, 640K, dual

drive, 135 watt power supply 620

or with 20 MB Seagate Harddrive ..9756 month limited warranty

Sharp Portable Call

PRINTERS

CITIZEN

MSP-10 285

MSP-15 385

MSP-20 325

Citizen 120D 185

Premiere 35 Daisywheel 469

CANNON Laser 1939

EPSON - Call on all modelsNEC

8850 1098

P5 Parallel ....970

P5 XL 1098

Elf 360 398

OKIDATA - Call on all modelsPANASONIC

1091 235

1092 299

1592 435

KXP3151 399

STAR MICRONICS- Call'for pricesTOSHIBA

P351 969

P341 768

MONITORS

AMDEK Call tor price

Multitech RGB 259

NEC Multi Sync 544

Samsung TTL 72

Taxan 121 Green Call

Taxan 122 Amber Call

Princeton Max 12 159

TERMS: Add 3% tor C.O.D. orders. Shipping on most soft-ware is S5.00. AZ orders *6.7% sales tax. Personal check -allow fourteen (14) days to clear. Prices are subject tochange. We accept purchase orders from authorized com-panies. All returns are subject to a restock fee. We do notguarantee compatibility.

No Charge for MasterCard or Visa

1

8

»

VISA

TOLL-FREE ORDER LINE 1-800-421-3135

WAREHOUSE DATA PRODUCTS

2701 West Glendale Ave. • Phoenix, AZ 85051

Hours 7 A.M. to 5:30 P.M. M.S.T. - Mori, thru Frl.Saturday 10:00 A.M. to 3:00 P.M.

Inquiry 367

SEPTEMBER 1986 -BYTE 53

ASK BYTE

card's edge connector. First try thejumper, then resort to surgery if it stillfails.

To locate B2I, lay the multifunctioncard down with the ICs underneath (thesolder traces on top) and the edge con-nector pointing toward you. Count edge-connector contacts starting from Bl onthe left near the mounting bracket: pinB2I is the twenty-first contact. Use asharp knife or an awl to scrape a gap in-to the printed circuit trace coming from

the pin; be careful not to damage anyother traces, but be sure to cut throughcompletely.

I doubt that the DMA channel is aproblem, but you should try both allowedsettings to see what happens. Start withthe default of direct memory accesschannel 3 after you modify the multifunc-tion card. Remember that you have to tellthe software which DMA channel is be-ing used. The details for that are in theinstructions, and I suspect that you're

We BeatThe Systems

Display Telecommunications Corporation was named BestSmall Business Exporter in Texas for 1986 because we offer thebest IBM® PC clone available. We offer state-of-the-artcomponents and our service reps are always accessible toanswer your questions. Beat the systems with DTC.

MEGA-BOARD-XT"

The Industry Standard

MEGA-BOARD-AT™

80286 CPU

MEGA-NET™

Token-Passins Ring LAN • IBMNETBIOS Compatilbe

MULTIPLE INPUT/DUAL OUTPUTSWITCHING BUFFER

4 Computers In—2 PrintersOut • Automatically routesComputer to Printer • Inter-nal Buffering 64K or 256K

OEM QUANTITY PRICINGAVAILABLE ON REQUEST

MEGA-KIT™

Motherboard 256K • Case •130W Power Supply • (2) '/aHeight Floppy Disk Driveswith Controller • Keyboard

BARE-BONESMEGA-KIT™

Same as Mega-Kit but with-out floppy Disk or Controller

XT Bare Board

59.95

XT Assembled 256K 299.95

Mega-CaseMega-KitDTC-2 BIOSPower SupplySwitching Buffer

BIOS licensing.

69.95

775.00

29.95

89.95

399.00

MEGA-CASE™

Flip Top (requires a powersupply with a switch in therear)

IBM is a reslstered trademark ofInternational Business MachinesCorporation.

POWER SUPPLY

130 Watt'Rear PowerSwitch

Display Telecommunications Corporation

8445 Freeport Parkway • Suite 445 • Irving, TX 75063

1-800-227-8383 • For Technical Calls Only: 1-214-929-1382

TELEX 5106000176 DTC UD

already familiar with them.

Howard also mentions that gameadapters have given some trouble in thepast, so you may want to remove that op-tion if you can. When you get thingsworking without it, you can try installingit again to see if it contributed to thetroubles.

The PCturbo 186 board does not useany of the PC's RAM space, so removingRAM chips won't solve any of the prob-lems. Do make sure that you've got themultifunction card's switches set to in-dicate the starting address at 2 56K bytesand six installed banks with a length of384K bytes when you reinstall the RAMchips.

The reason that the 80186 on thePCturbo 186 board can't use the 8087 onthe PC's system board is, sad to say,because the PC wasn't designed to havea complete computer system on an I/Ocard! The original IBM PC was intendedto have the "computer" part (the 8088and 8087) on the system board and the' I/O "part (printerports and the like) onthe cards. IBM didn't include the circuitrythat would allow the PCturbo 186 boardto connect to the 8087, so you won't getany benefit from an 8087 when you'rerunning the PCturbo 186 board.

If your programs include 808 7 support,you might want to find out which versionis faster: 8087 running on the PC ornon-8087 running on the PCturbo 186board. The results may be surprising!—Steve

Computer Generations

Dear Steve,

What were the first five generations ofcomputers, and what would you imaginemight be the next five?

What role do you see virtual devicesplaying throughout these generations?Richard WillisPalma de Mallorca, Spain

It all depends on how you count, butthe first five computer hardware genera-tions seem to be

1. Electromechanical calculators

2. Vacuum tube computers (mid 1940s tolate 1950s)

3. Transistor computers (early 1960s tomid 1960s)

4. Integrated circuit computers (late1960s to mid 1980s)

5. VLSI computers (mid 1980s onward)

The popular use of the term "FifthGeneration Computers" comes from theJapanese effort to produce machines thatare much easier to use and capable of

(continued)

54 BYTE • SEPTEMBER 1986

Inquiry 112

"Information Is The Next Frontier"

Michael B. ShaneChairman, Leading Edge World Trade, Inc.and Leading Edge Products, Inc.

ACCESS INFORMATION

Model V"

$1345.00

Model "L"m Modem

$149.95

<MA'I ION iiiionnformation InfoINFORMATION

KMATION infofn

The Leading Edge Model "D"comes complete with more stan-dard features than most others listas options. It's IBMm-compatible,it comes with a 15-month warrantyand when configured with a singledrive is priced at $1345.00. A dualdisk-drive version and a 30MBFixed-drive version of the Model"D" are also available.

The Leading Edge Model "L"Series 1200B Modem fits in fullor half-size slots of the LeadingEdge Model "D"'", "M"'", and"MH'7 the IBM PC, Aland IBMcompatibles. It's Hayes®-compat-ible, yet at $149.95 is priced atabout a third the price of Hayes'equivalent.

Electronic data bases like theSourceSM, CompuServeSM, and2,500 others, give you instantaccess to information on justabout every topic under the sun.(Access charges vary.)

If you were to buy a Leading Edge® Model "D"T" Personal Computer and plug into it aLeading Edge® Model "L" Series'" Modem, you'd have created one of the most powerfulinformation gathering and processing tools ever to sit on a desktop — for $1495.

How Powerful?

Think about instant access to current and historical financial quotes, up-to-the-minutenews on all topics, detailed statistics on companies, industries, or even the entire economy.

Think about instant access to information on topics like medicine, law, finance, real estate,politics, farming, and automotive repair —to name only a few.

Think about having immediate access to documented information on every subject fromastrology to zoology.

Just think about what you could do with all that information; think of how profoundly itcould improve your life.

Now, stop thinking about it and call 1-800-USA-LEAD for more information and a LeadingEdge Dealer near you. For our Fortune Fleet Division, call 1-800-457-7286.

* To obtain a copy of the Leading Edge Corporate Philosophy on Information, please write to this address.

Leading Edge Hardware Products, Inc.

225 Turnpike Street

Canton, MA 02021

In MA, (617) 828-8150. Fortune Fleet Division (617) 769-8050

Inquiry I97

A

LEADING E D C IB

Leading Edge and Logo are registered trademarks of Leading Edge Products, Inc. Model "D", "M", M-H, Model "L" Series, and Information System are trademarks ofLeading Edge Products, Inc. IBM is a registered trademark of International Business Machines Corporation. Hayes is a registered trademark of Hayes MicrocomputerProducts, Inc. The Source is a service mark of Source Telemarketing Corporation, a subsidiary of the Readers Digest, Inc. CompuServe is a service mark of CompuServeInformation Services, Inc.

MEETDISTINGUK

3 paper feeding controls,plus paper-sa vingpush/pull tractor teed.

\

/

Diagnostic self-testsignals errors withflashes and beeps.

Go off-line to changetype styles and modeswithout lengthysoftware commands.

POWER

\ ON LINE

ERROR

ADJUST

/

ON LINE \ L.F

FF

TOF

J

.,;;,.;

12 pushbuttonsto control printingfunctions.

Lets you feed paper

lin e-by-lin e, by 1/216 -in ch

in crem en ts, or con tin u o usly.

This could be the most intelligentgroup of buttons ever assembled.

You'll find them on the front ofevery Alps Dot MatrixPrinter. And you'lluse them to dosomething mostprinters can't.

Everything.

Just push a '. '■:.

button on our front panel. You canchange type styles and print modes,

ALPS raw i

load paper automatically, reprint datastored in the print buffer, even over-ride your software to do things it can't.

All while using yourPC for other workat hand.

But of course,Alps printers aremore than a bunch'"■ vVii Mu.in.iiuu'ij'.i.iiV^ ■ of buttons.

They're fast. The new P2100™ printsdrafts at an amazing 400 cps, the

OURHEDERNEL

Clears prin t bufferof data withoutprintingit.

17 LEDs indicatefunctions in operation.

Choose threealmost amazingP2000 speeds:250 cps draft,125 cps memo,or 50 cps letterquality. Price: $995.

A u toma tically reprin ts da tastored in prin t b uffer(4K expandable to 256K).

Select fon t cartridges,prin tin g m odes, prin tpitches and spacingquickly and easily.

Choose three amazingP2100 speeds: 400 cpsdraft, 200 cps memo,or 80 cps letter quality.Price: $1595.

P2000™at an almost amazing 250 cps.

They're versatile. They printeverything from letters and graphsto six-part forms and 16-inch-widespreadsheets. And they run with allthe most popular PCs and software.

Best of all, they're reliable.Because Alps printers are among themost solidly built at any price. In fact,with normal care, they'll run fiveyears or more without a breakdown.And their precision-engineered print-inquiry 409 for End-Users. Inquiry 410 for DEALERS ONLY.

head will deliver over 200 millioncharacters of superb output.

So don't just get a printer that doesa lot of work. Get one that doesn'tinterfere with yours.

An Alps.

For our brochure and name of ournearest dealer, call (800) 828-ALPS. InCA, (800) 257-7872. _

We'll show you A DChow to push all the *lii* Jright buttons. AMERICA

P2000 and P2100 are trademarks of Alps Electric Co., Ltd. 'C'1986 Alps America.

ASK BYTE

Let Lab Boss turn

your IBM PC into a powerful

instrument controller.

> "J ou can spend thousands of dollarsy for a dedicated instrument controller.•*• Or a few hundred for a controllerthat's dedicated to you and your IBM PC.

Lab Boss™ from National Instru-ments puts you and your IBM PC (orcompatible) firmly in charge of QPIBinstruments. From sophisticated lab-oratory equipment, like digitizingoscilloscopes and spectrometers,to standard printers, plotters,tape drives and more.At data transfer speeds

that are the highest in the industry.

And Lab Boss products offer a directdata link from your measuring equipmentto a full range of analysis software, includ-ing RS/1, Lotus 1-2-3, and Symphony. Soyou can easily report your findings onthe same system you used for

instrument control, data acqui-sition and analysis. Try thaton a dedicated controller!So — you want to be theboss? Call National Instru-ments. 800/531-4742.

f

fT NATIONAL"INSTRUMENTS

12109 Technology Blvd.

Austin, TX 78727 512/250-9119

handling much more difficult problemsthan the current generation. It's not clearhow software generations should becounted, but this list seems reasonable:

1. Machine language binary programs(not even assembly language!)

2. Assembly language programs

3. FORTRAN, ALGOL, and similar high-level languages

4. Application-specific languages andsimple AI

5. Programs capable of reasoning in thereal world

Particularly with respect to the hard-ware generations, it seems that each onetook us quite by surprise. So beyondspeculating on the likelihood ofbioelec-tronics and three-dimensional circuitry,I'm willing to be surprised like everyoneelse. One thing is certain, though: Thesoftware is the hardest part of the job!

I don't think that virtual devices arerelated to particular computer genera-tions. A virtual device is simply a sub-program that translates a standardizedI/O device command set into the specificcommands required by a particular I/Odevice. For example, a virtual device in-terface to two different graphics displayswould allow a single program to run un-changed on either one: Only the virtualdevice code would be changed.—Steve

CIRCUIT CELLARFEEDBACK

Program Conversion

Dear Steve,

I built the scrolling alphanumeric displayyou described in the April 1984 CircuitCellar, and it worked great using the Z8board. However, I no longer have use ofthe Z8 board. I do, however, have anApple II computer at my disposal. I waswondering if it is at all possible to convertthe Z8-BASIC system controller assemblylanguage instructions for use by the 6502microprocessor on the Apple II.

If you could provide me with some helpin converting these programs, 1 would bemore than grateful.

Javier PelayoLos Angeles, CA

The Z8671 microprocessor used in theZ8 controller and the 6502 used in theApple II have completely different archi-tectures and instruction sets. Because ofthis, a one-to-one translation of theassembly language source listing is im-

[conlmued)

58 BYTE • SEPTEMBER 1986

Inquiry 2 50

Those who insist on C compiler performanceare very big on Mark Williams.

And the compiler is just part of our total C Programming System.

,v~X-FS These and other powerful.^^■r/utilities now included in the C

&*"/ ' make: compiles only what's necessaryr from multiple modules, a powerful pro-gramming discipline

• dill: identifies differences between two files

• m4: macroprocessor expression editingand substitution

• egrcp: extended pattern search

• MicroEMACS: full screen editor with source

COMPILER FEATURES

• Runs under MS-DOS

• Full Kernighan & Ritchie C with recentextensions including void and cnum

• Register variables for fast, compact code

• Full UNIX™ compatibility and completelibraries

• 8087 Support

• One-step compiling

• English error messages

• ROMable code

• Large and small memory models

• MS-DOS linker compatibility

• Linker, assembler, archiver

• Extensive third party library supportcsd C SOURCE DEBUGGER

• Debugs at C source level without assemblylanguage

• Separate evaluation, source, program andhistory windows

• Can execute any C expression

• Capabilities of a C interpreter, but runs inreal time

• Set trace points on any statement or variable

O 1985 Mark Williams Company

I'NIX is a registered trademark ol'Rcll Labs.

Inquiry 218

Mark Williams' C compiler has earned a placein some very big companies for some very good reasons:it proves the benchmarks right with the speed, codedensity, consistent performance and expert supportrequired in professional development environments.

But a total development tool shouldn't stop withcompiling. Or go on and on with extras that add up and up.

Only Mark Williams' C Programming Systemsincludes the csd C Source Debugger with true sourcelevel debugging to speed your programming job.

And only Mark Williams' new 3.0 version includes■ utilities like "make" to make quick work of even thelargest projects.

From source code to final product, only one takesyou all the way: Mark Williams' C Programming System.All for only $495. Ask about our 60-day money backguarantee when you call1-800-692-1700 to order today.* f|f||| MarkYou'll be big on die total C l|J Williams

frograrnming system from \AJ Company

n k 1 iv-7-11- ^- 1430 West Wrightwood

Mark Williams, too. Chicago, iiunoii eoei4

*ln Illinois call 312-472-6659.

SEPTEMBER 1986 -BYTE 59

Accidental File ErasureCan Be Fatal.

It's no secret. Thousands of businessand home users have turned toexisting file recovery programsto "save their posteriors'when a file has beenerased by accident-and met disaster!After-the-factprocedures justcan't assure successevery time. Finally, thereis a revolutionary new filerecovery system which cando the job, SafefyNet- from

Westlake Data. When you erasea file, it disappears from yourdirectory but not from yourgrasp. Your data is safeand secure, ready tobe recovered when-ever you desire.The recovery ofyour file is assuredregardless of the timespan between erasureand recovery! This uniqueapproach sets a new industrystandard for file recovery programs.

Safety Net

FOR FLOPPY AND HARD DISK SYSTEMS

catches your file erasure mistakeseven before you do!

You don't lose data every day. Butwhen you do, you want it back—and you want it back NOW. WithSafefyNet" three easy steps leadto INSTANT FILE RECOVERY:

1) Type "SN" at the > prompt,

2) Select the files you wish recoveredby highlighting the file and pressingthe "space bar", and 3) Press the"Enter" key. That's all you need todo!! Your data will be back at yourfinger tips in seconds!

SafetyNef

From The Creators of PathMinder"

Revolutionary New File Recovery SystemFor the IBM PC and Compatibles

SafefyNet's Unformat featurerestores a Hard Disk that has lostdata through the DOS "FORMAT"command with only 5 keystrokes!We recover everything including theRoot Directory and no renaming ofsub-directories!

49

95 plus *5 shipping NOT COPYand handling PROTECTED

Contact your dealer or call(800) 628-2828 ext. 555

Dick HodgkinsPresident

P.O. Box 1711

(512) 474-4666

Austin, Texas 78767

CIARCIA FEEDBACK

possible. With some 6502 assembly lan-guage experience, it should be possiblefor you to create a program for the Applethat will permit it to control the scrollingdisplay. You need three output bits: data,clock, and clear. It would be easy to usethe "annunciator" outputs on the Apple'sgame controller socket for this purpose.The following are some books that givefull explanations of the workings of theannunciators:

Sather, fames. Understanding the AppleII (Quality Software, 1983)

Cayler, Winston D. The Apple II CircuitDescription (Howard W. Sams, 1983)

Several good Apple II and 6502 assem-bly language programming books areavailable. These can provide the informa-tion you need to create your program.Two of these books are

De Jong, Marvin L. Apple II AssemblyLanguage (Howard W. Sams, 1982)

Leventhal, Lance. Assembly LanguageProgramming: 6502 (Osborne/McGraw-Hill, 1979)

-Steve

People Detection

Dear Steve,

I want to improve a home-lighting con-trol system 1 installed in 1980. One of myrequirements is to control the level oflighting in one of our rooms.

I currently use six reflector spots atregular intervals around the walls to giveplenty of light where it's required. Atabout half power, the lamps give adequateillumination for background purposes, butfor reading you need to bring the lampclosest to where you are sitting to fullpower.

My problem is correctly detecting thelocation of a person. Movement detectionwould have to be very sensitive if you aresitting still reading. Similarly, body heatdetection would also need careful calibra-tion to avoid permanently illuminating aradiator. Also, any scanning system wouldhave to be quiet in operation, since thewhir of a rotating scanner would be mostannoying.

I have even considered installing floor-pressure switches under the carpet. If youhave any suggestions, I would be pleasedto hear them.

Roderick SparksfieldSandy, Bedfordshire, United Kingdom

One of the best methods for detectingpeople in a room is to use infrared mo-tion detectors. These are commonly used

[continued)

60 BYTE- SEPTEMBER

Inquiry 375

Now the biggest name

in C compilers comes in a size

everybody can afford.

Let's C

$75

Introducing Mark Williams' $75 C compiler. Want to explore C programming for the first time? Or juston your own time? Now you can do it in a big way without spending that way With Let's C.

This is no little beginner's model. Lets C is a powerful programming tool, packed with all theessentials of the famous Mark Williams C Programming System. The one chosen by Intel, DEC, Wang

and thousands of professional programmers. The one that wins the

benchmarks and the reviewers' praise:

"Let's C is a thoroughly professional C environment loaded with tools andprogramming utilities. It is also another fine Mark Williams Co. product."—Christopher Skelly, Computer Language Magazine, Feb. 1986

And now for more big news. Get our revolutionary csd C Source

Debugger for just $75, too.Use this coupon or charge by calling toll-free: \£,u cari breeze throueh

1-800-MWC-1700. In 111. call 312-472-6659. . . _. ^

debugging at the C source

level ignoring clunky

assembler code.

Affordable, powerful,

debuggable. Mark Williams

Lets C is the big name C

compiler at a price you can

handle. Get your hands on

it now

Mark Williams Let's C

• For the IBM-PC andMS-DOS

• Fast compact code plusregister variables

• Full Kernighan & Ritchie Cand extensions

• Full UNIX" compatibilityand complete libraries

• Small memory model

• Many powerful utilitiesincluding linker,assembler, archiver, ccone-step compiling, egrep,pr, tail, wc

• MicroEMACS full screeneditor with source

• Supported by dozens ofthird party libraries

• Upgradeable to CProgramming System forlarge scale applicationsdevelopment

Let's C Benchmark Done onan IBM-PC/XT, no 8087.Program: Floating Pointfrom BYTE, August, 1983.

Exec Time in SecondsLet's C 134.20

MS 3-0 347.45

ORDER NOW! 60-DAY MONEY BACK GUARANTEE!

Mark Williams Let's C

Please send mc:

copit-s of Left C and copies of csd ( C Source Debugger)

at $75 each. (III. residents add 7% sales tax.)LZI Check U Money Order ED Visa, MasterCard orAmerican Express

Name.

Address-

City_

. State-

. Zip_

Card#_

Exp. Date-

Signature-

Mark

Williams

Company

© 1985 Mark Williams UNIX is a trademark (if Bell Ubs

1430 West WrightwoodChicago, Illinois 60614

Inquiry 219

TM

ZBasic

^FASTEST, EASIEST, MOSTPOWERFUL BASIC EVER!

Amazing New Advance-ments for an Old Friend.

ZBasic is an incredibly advanced andpowerful BASIC—but—it's still the old BASICyou're used to. Instead of spending 6 months ofyour life learning another complicated language, letZBasic put your programs into light-speed, now!(If you know BASIC, you know ZBasic.)

How Fast is ZBasic?

Lightening fast. Four years of intensedevelopment have produced the ultimate BASIC.ZBasic is "Compiled BASIC," and generates stand-alone applications that make any other BASICcompletely obsolete. Just look al these speedcomparisons.

IBM* PC gOW

Apple lie, lie

Z-80 (CP/M™-B0. TflS-BO"

10 Derations o( the Sieve from Byte, January, 1963

Compiler Speed/Interpreter Ease.

Like a BASIC interpreter, ZBasic allows youto write and execute your programs immediately! Nomessy "Linkers," "Loaders," or clumsy "SubroutinePackages" like most other compilers. To compileand edit, simply type "RUN." Debugging works thesame as the interpreter, too. Jusl type "BREAK" or"CTRL C" to get back to the editor.

Lightning-Fast Compilation.

Computer Language Magazine says."Compilalion is amazingly fast..." After typing"HUN," ZBasic compiles your program at blindingspeed—40 lines per second.

Works the Same on AllComputers.

If you're tired of throwing away your oldprograms everytime you switch to a new computer,ZBasic is for you. Source code is portable from onecomputer to another, and since ZBasic uses DeviceIndependent Graphics and Disk File commands,your programs automatically "Adapt" to any othercompuler. And Ihe ZBASIC editor is the sameon all versions—regardless of the computer.

Einstein Math.

ZBasic offers programmers a mathpackage that surpasses anything else in theindustry! (Yes, ZBasic is even better thanFORTRAN, PASCAL, MODULA-2 or any otherlanguage available!) You will have up to 54digits of user-selectable accuracy at your power.

"Superb Documentation!"

"The 387 page ZBasic manual is a modelof clarity and organization. The documentation issuper*, solidifying our impression that someoneworked incredibly hard to make ZBasic abenchmark for all other BASIC Compilers."

PC WEEK, Nov. 12,1985

Easy Structure—If You Want It.

ZBasic helps you "Structure" yourprograms in a way that's easy and simple.. .youmay use GOSUB or GOTO with names or linenumbers. Supports multi-line LONG IFs andLONG FNs. LIST programs with—or wilhoul—linenumbers! ZBasic automatically indents loops andstructures in LISTmgs, too.

" Awesome! It's about timel-Great!Unbelievable! " J.R. CPA

Seymour, MO" ....fast, generates stand alone programs,requires only modest amounts of memory, hasoutstanding compilation speeds and...was bugfree and felt solid. And the price is veryattractive. " Bruce W. Tonkin

COMPUTER LANGUAGE" ZBasic is a powerful offering for BASICprogrammers. It provides the flexibility of TurboPascal and the speed of compiled BASIC, all at aprice that can't be matched. Kudos to Zedcor and toall users who make wise decisions to use ZBasic tothe fullest. " Garry Ray

PC WEEK'(The best I have ever seen. I love III You shouldbe proud of this product. " R. R. Manager

Mesa, AZ

" Mind-blower! Easily the best BASIC I've everseen! " J. D.

Baltimore, MD

Versions shipping now!

Macintosh , Apple lie - lie (128K & DOS 3.3} -

IBM PC and MSDOS 2.1 & Compatibles •

Kaypro Graphics version (CP/M-80} ■

CP/M-80 2.0 or greater (ZBO only) ■

TRS-80 Model 1/3, Model 4/4p-

Customized for YOUR Computer:

MSDOS™ and Compatibles: Including PC, XT, AT,jr.. TandyTU 500-1200-2000-3000 and all Compaqs'".Creates fast stand-alone .COM tiles. Supports a mouse.ighlighls keywords e

Macintosh,u: Complete Toolbox ROM calls support,creales 68000 Native Code, Macintalk and Applelalksupport, program size to 4 mogabyte, malh accuracyIrom 8 to 240 digits. Incredible program speeds!

Apple™ lis, lie: Mouse support lor both the lie and tic.Super Hi-Res graphics support (560x192 and 280x192and lo-RES support tool). Advanced Graphics com-mands like CIRCLE, BOX, FILL etc. and you can MixGraphics and Text on Ihe screen like a PC. DOS 3,3support (PRODOS coming this summer) Requires Applelie or He with 128K bul programs created wflh ZBasic ™on a 64K Apple II *.

ZOO11'

ONLY ZBASIC GIVES YOUTHESE FEATURES:

Highlights errors...makes debugging easy!

Not Copy Protected

Never any Royalties or Runtime tees lor

programs you sell.

Direct commands (Speeds logic testing like en

Interpreter)

Super Single-Step debug

CHAIN with variable passing. (Share ell or some

variables)

Create transportable subroutines and (unctions

Multi-line LONG IF. Multi-line LONG FNs

(argument passing)

Decimal, HEX, OCTal or BINary support.

Device-Independent Graphics end File I/O.

Never does String "Garbage Collection"

Comes with "Quid:" and "Shell" sort source

code

Built in "HELP" screens lets you get answers

last.

Long variable name (15 characters)

Loops: VVHILE-WENO, DO-UNTIL, FOR-NEXT-

STEP

Serial Port end Modem support

Easily load your old BASIC programs saved In

ASCII

89

ORDER TOLL FREE:

1-800-482-4567

Technical Support: (602) 795-3996

or Use Our Coupon on Facing Page

(Please specify brand or model)

or write to us at Zedcor, Inc.

4500 E. Speedway, #93

Tucson, AZ 85712

POWERCOMPILER

CIARCIA FEEDBACK

in security and alarm systems and arequite sensitive. They work by dividing thearea in their view into a series of discreteslices and then monitoring the infraredlevel in each slice. When a moving warmbody disturbs the normal pattern thatthe detector sees, it trips a relay. It doesnot take a great deal of motion to trig-ger the detector, depending on where itis located.

In your situation, you could try usingseveral detectors, each one aimed at thearea that you want it to control. 1 don'tknow what type of system you are usingto control your lights, but I'm sure thatyou could find a way to interface thedetectors to your system.

I am currently using a number of thesedetectors around my home to controllighting. They are connected to my HomeRun Control System (April to June 1985BYTE). When one of the detectors seesmotion, HCS senses it and turns the lightor lights on. As long as someone remainsin view of the detector, HCS keeps reset-ting the time-out. When the personleaves the room, HCS will turn the lightsoff—Steve

Property Protection

Dear Steve,

Some time ago, I believe you mentioneda company that provides property-protec-tion devices. I am looking at the HomeRun Control System, and I would like touse this company's passive infrared mo-tion detectors. Can you give me the nameof this company?

William P. DrescherLansing, Ml

The company is

Mountain WestP.O. Box 10780Phoenix, AZ 85064-0780(800) 528-6169

Its catalog contains a variety of securitydevices and reference books. Several ap-plication notes for the various devices arealso included.—Steve ■

Over the years I have presented many dif-ferent projects in BYTE. I know many of youhave built tiietvt and are making use of themin many ways.

I am interested in hearing from any of youtelling me what you've done with these projectsor how you may have been influenced by thebasic ideas. Write me at Circuit Cellar Feed-back. P.O. Box 582. Glastonbury. CT 06033,and fill me in on your applications. All lettersand photographs become the property of SteveGarcia and cannot be returned.

62 BYTE • SEPTEMBER 1986

Inquiry 384 for End-Users.Inquiry 385 for DEALERS ONLY.

"7RoQ|/* The Ultimate BASIC developmentfaUOOlU system for your Macintosh™

Let ZBasic" Unleash thePower of Your Macintosh™. .

Accelerate your BASIC programs! CompareZBasic™ lo C, Pascal, FORTRAN and otherBASICS.

SIEVE

Run

Compile"

BENCHMARK* Moon*)

Time

Time

ZBaalc'Interactive Compiler

7.0

10

Sottworks™ BASIC Compiler

520.0

20.

True BASIC™ Compiler

132.0

10."'

MSBASIC" 2.1 Inlerpreter

6B4.0

0

Soltworksr" C Compiler

as

445.

Aztec™ C Compiler

es

240.

MS™ FORTRAN Compiler

68

1B0.

TML™ Pascal Compiler

6.6

120.

Designed for Mac Programmers

In addition to the hundreds of comands providedwith "Standard ZBasic'—this version provideslots of extras

• ApplBTalk'" Network commands

• MacinTalk'" (with English or Phonemes)

• Modem and Printer serial port commands

• Enhanced Integer range ott2,i47,483,647

■ From 8-240 digits of configurable BCD Accuracy

• Over 400 QuickDraw & TOOLBOX commands« Memory management (SEGMENT) commands

• MDS EDITOR included (licensed from Apple®)

• HMakar™ included (licensed from Appu> |)

• Interactive Command and Edit Windows

• Works with HFS. MFS and all hard disks

"'0 HBtaiions of Sieve Benchmark Iran Byte, .Jan 1983. TML speedfrom Mocliset Juno 1986 C speeds imm Byto. Nov 1985 (r»n-regisim) MS-FORTRAN speed (rem MACWORLD-Juno 1966 Soil-wortca BASIC time from Ma cfu roe-June 1986."Compde from editor to stand-alone applicslion RAM disks not used"'Trii* BASIC* program vras not s sund-elooe doutXrt-cllck application—This nquiroe an optional (t-5001 runtime licenseCompile lime was taken from inlotaciive mods

Lightning-Fast Compilation

"Compilation is so fast that execution is indistin-guishable from a BASIC interpreter. . ."

As reviewed in BYTE, May 1966

Create Double-Click Programs

ZBasic creates fast, stand-alone (double-click 68000native code) applications easily with no royalties orruntime fees lor your programs.

"Superb Documentation"

"The 387 page manual is a model of clarity andorganization. The documentation is superb, solidifyingour impression that someone worked incredibly hardto make ZBasic a benchmark for all other BASICcompilers."

As reviewed In PC Week, Nov. 1985(The new 620 page manual is even better)

Standard Features

• Highlights Errors

• No royalty/runtime fee

• Auto Indents structures

• Single Step debug

• Fast string processing

■ Use both serial ports

• No garbage collection

■ Device Ind- graphics

SOME OF THE SPECIAL MAC COMMANDS

DIALOG ON

DIALOG OFF

DIALOG (n)

ON DIALOG

EDIT FIELD

EDITS

BUTTON

MENU ONiOFF

BUTTON |n)

MENU

APPLE MENU

EDIT MENU

DEFMOUSE

TIMER

TIMER OFF

TIMER ON

ON TIMER In]

MOUSE ON

MOUSE OFF

MOUSE |n|

ON MOUSE

FILESS

SOUND

BEEP

EJECT

OPEN TALK

TALK

SCROLL BUTTON

FINDERINFO

EXPERT

WINDOW OFF

WINDOW CLOSE

WINDOW

ALERT WINDOWS

HELP WINDOWS

SEGMENT

GRAPHICS ENHANCEMENT

COORDINATE

COORDINATE WINDOW

GET nnd PUT

CURSOR -(walch,texLouraor,o1c.)

PICTURE

PICTURE ONIOFF

PEN x.y.v.m.pallom

TEXT loot, si/o, lace, mode

LCOPY and PAGE LPRINT

CLIPBOARD LOAD

CLIPBOARD SAVE

• Nol Copy Protected

• Multi-line FN and IF

• Line numbers or labels

• Chain programs

• SORT source included

• Load old programssaved as text (lies

• Device Ind. File I/O

Ultimate Math Accuracy

The MAC version of ZBasic gives you 8 to 240 digits ofconfigurable BCD precision (no binary rounding errors).In addition, a High-Speed SANE Floating Point optionwill be available late summer lor $59.95 {fixed binarysingle and double precision).

A Portable Language

Designed as a "portable language," ZBasic is availableon many popular computers including: IBM'"' (MS-DOS")and compatibles, CP/M'"B0. Apple»lle. lie and TRS-BO"This allows you lo easily create programs to work onmany other machines.

PRINT TEXT OR GRAPHICS TO YOURLASERWRITER" OR IMAGEWRITER™

CLEAR LPHINT DEF PAGE

DEF LPRINT ROUTE (SCREEN)

COORDINATE COMPLETE TEXT CONTROL

PRHANDLE PRCANCEL

LPRINT@ («») LPRINTtk (x.y)

Available NOW for the512K Macintosh1" and Macintosh Plus™

Review Quotes

"Fasf, generates stand-alone programs, requiresmodest amounts ol memory, and has outstandingcompilation speeds."

Bruce W. TonkinAs reviewed in COMPUTER LANGUAGE

"[ZBasic] is extremely fast end accurate ... In mostcases, compilation is so fast that execution is In-distinguishable Irom a normal BASIC interpreter start-up"

TJ ByersAs reviewed In BYTE

"ZBasic is a powerful ottering tor BASICprogrammers. It provides the flexibility of 7u*o Pascaland the speed of complied BASIC, all at a price thatcan't be matched. Kudos toZedcor. .. "

Garry RayAs reviewed in PC WEEK

"Without question, ZBasic Is one ol the best BASICcompilers . . . ZBaslc's compiler is last. . . conclusion;il you like to program In BASIC, buy ZBasic If youdon't like to program in BASIC, buy ZBasic"

Jim BaldridgeAs reviewed in HARVEST

(NBwaletlar lor the Northom Illinois Computer Sectary)

"ZBasic is unquestionably an excellent Implementationof the tanguege . . . fend] comas with one of the bestuse: manuals in the industry .. "

James McKelvyAs reviewed in INCIDER

30 day Money-Back GuaranteeNot Copy Protected

ZBasic" Is available from Batter Computerand Software Stores everywhere . ..

Or Call Toll Free to Order:

800-482-4567

Send me the Ultimate BASIC Development system for the Macintosh

| Price: $89.95 + shipping.

Shipping: In U.S. $5 (C.O.D. add $5) Name

Canada $12-Foreign $25-SU.S. only (no C.O.D.)

Visa-Mastercard-American Express

SignatureMail to:

Company.Country

Zedcor Inc.

4500 E. Speedway, Suite 93

Tucson, Arizona 85712

Tech Support: (602) 795-3996

. Exp.

Address _

I

I

■ I

I

II

I MS, True BASIC, Softworks, Aztec, TML, IBM. etc., are trademarks of their respective companies.

II Macintosh is a trademark licensed to Apple Computer Inc. ZBasic is a trademark ol Zedcor Inc.

City.

. State

Day Phone _

Inquiry 386 lor End-Users. Inquiry 387 lor DEALERS ONLY.

SEPTEMBER I986 -BYTE 63

In* a* Vision"a marvelous little CAD system"

Listen To What The Critics Are Saying About ln*a*Vision

PC Magazine

PC Week September 1985

"Stands out from the crowd." "It has the makings of a winner."

InfoWorld February 1986

"In*a*Vision is very easy-to-learn and easy-to-use."

PC Magazine March 1986

"Fast, accurate and fun to use." "Excellent template system."

Computer Buyers Guide March 1986

"A remarkable value." "Fast and easy to learn."

FLOOR PI AH

Power. Versatility. Ease. Allof these add up to perform-ance. And performance is whatIn*a*Vision is all about.

Power!

"What surprised us was howfast In*a*Vision works."

PC Magazine"Even complex commandsequences are generated withlightning speed."

"This is arguably the first pieceof software that fully utilizesthe power of the AT."

Computer Buyers Guide

Versatility!

"In*a*Vision's text provisionsare flexible and impressive."

This advertisement was created withIn*a*Vision and output at 300 DPI.

"The spooling mechanism is areal times aver."

PC Magazine

"The system is ideal for the kindof fine detail work that engi-neers, draftsmen and designersdemand."

Computer Buyers Guide

J UCJJ JMC-7A |#kT-BA |6{■IC-5~~]§ JHC-7B I8FJC-8B IS

JMC-6 l@JMC-7C 1SR-8C ISi IC - ) i{■IC-7D |6flC-8D IS

|0UU00| JicEzOEOOK- 3 I@Fic-7f \Gfic~-ar t3

JLiC^lJSEic- 7G glC-SlTlatlC-4|@^IC-7H lSflC-8H~|S

Ease!

"An hour with In*a*Vision andeven the most devoted MACfan will be a convert."

PC Magazine

"The program is quickly mas-tered; intuitive quickness iswhat this system is all about."

"The program's ease-of-use andspeedy execution allow you toconcentrate on design..."

Computer Buyers Guide

MICROGRAFX

The Picture of Success

"In*a*Vision is so easy to learnthat its menu bar will tempt youto begin using it without evenreading the documentation."

"The program's use is intuitive."InfoWorld

Order Now!1-800-272-3729

Yes, I want to improve my CAD performance

with In*a*Vision.

Please send me copies at $495 each.

I enclose:

CreditCard:

r~l Check fj Money OrderI I Visa rj MasterCardI I American Express

Name

Company Name

Address

City

State

Zip

Country

Credit Card No.Send to:

Exp. Date

MICROGRAFX, Inc.1820 N.Greenville Ave.Richardson, TX 75081In Texas: 214-234-1769

Runs with or without Microsoft Windowson two-floppy or hard disk IBM PC orcompatible with 320K; hard disk and512K recommended.

64 BYTE • SEPTEMBER 1986

Inquiry 236

BOOK REVIEWS

AMIGA PROGRAMMER'S

HANDBOOK

Eugene F. Mortimore

Sybex

Berkeley, CA: 1986

529 pages, $24.95

TECHNICAL TOPICSFOR MOTOROLAMC68000-BASEDMICROCOMPUTERS:An AnnotatedBibliography ofRecent Books

AMIGA PROGRAMMER'SHANDBOOK

Reviewed byGregg Williams

Many people find theCommodore Amigainteresting because of itstremendous processingpower. Unfortunately, verylittle of that power is ac-cessible without the propercomputer program. Be-cause of this, many users of

a new machine like the Amiga are hungry for the detailedtechnical documentation that unlocks the computer'scapabilities. Although the official Commodore seven-booktechnical reference set was available much sooner thanis usual for a new computer, at $100 it is expensive forthe interested (but not professional) user. The quality andprice of Eugene F. Mortimore's Amiga Programmer's Hand-book make it a good buy for such people, but it isn't a sub-stitute for the full reference set.

Organization

The Amiga Programmer's Handbook is essentially an overviewof the Amiga as seen from the programming point of view.After a brief explanation of needed background informa-tion about program development (register usage, include

files, and structures), Morti-more presents sevenchapters, each of whichcovers a class of functions:the Exec functions (re-source management),graphics display and draw-ing, animation, text. Layerfunctions (which manipu-late Amiga "screens"). Intui-tion (the user interface), andWorkbench (the Amiga'soperating environment).

Each chapter is structuredlike the book itself—anoverview describing impor-tant concepts followed bydetailed information. With-in the chapters, the detailedinformation is a collectionof alphabetized entriescovering all the softwareroutines designed for pro-grammers' use. (Thesenames—like AreaDraw, Set-SoftStyle, and SetDM-Request—are importantbecause they are called byname in whatever languageyou are using to develop aprogram.)

Each entry follows thesame format: the syntax ofthe function, a description of its purpose, descriptions ofall its inputs, and a discussion section that describes thecontext of the function's use. This last section containsuseful information that is not in the Amiga referencebooks. It begins by listing all the other related functionsin the chapter: for example, the discussion of AreaDrawlists the other five functions that manipulate areas. It thendescribes the context in which the function is used, some-times listing other functions that must be called, suggest-ing alternative methods, and warning of possible pitfalls.The entries are usually between one and two pageslong.

The book ends with two appendixes, a glossary of terms,and some notes on advanced video topics (the dual-play-

(continued)

SEPTEMBER 1986 -BYTE 65

MAKE YOUR PC CLONEA GOOD INVESTMENT!

BOOK REVIEWS

Your PC represents a substantial investment, so it does notmake sense to risk costly downtime or system failure due tothe use of a so-called "BARGAIN" power supply.

At Fortran we insist on quality and reliability That's whathas earned us a UL rating. For your complete satisfaction weoffer a one-year warranty and full technical support.

200 WATTS

PC AT

S 189.00

*i

MEETSFCC CLASS B

150 WATTSPC XT

$129.00

1 U.L. Recognized

1 Meets FCC Class B requirements

' 115/230 VAC, selectable

1 OVP. OCP short circuit protection

1 Power failure signal

' All U.S. made connectors

provide better connection to

drives and CPU board' Meets European safety specs.• 100% burn-in & pre-shippmg test.

one full year warranty1 Direct replacement for original IBM® power supplies1 FARADAY® type pin-out available upon request

PC EXPANSION CHASSIS

Provides easy expansion to your PC, PC XT, Tandy 1000™,Compaq Portable™, Compaq Desk Pro™, and other PCclones by having extra expansion slots for video controllers,disk drives or I/O boards.

FC 640 . . . S 388.00

• 5 slot mother board

• 100 w. power supply

• Capacity for 3 drives

• 15<A"x\2"xb'A"

FC 650 . . . S 398.00

• 8 slot mother board

• 150 w. U.L. reg. power supply ;..,

• Capacity for 4 drives

• 19!/4"xl5">;5"

FC 660 .. . S438.00

• 12 slot mother board

• 100 w, power supply

• Capacity for 2 drives

• )53A"xl5iA"xl5V2"*Prices above include system interface adaptors

^

SPECIAL OFFER

• 20 MB hard disk drive with

controller and cables S 385.00

• 20 MB internal tape back-up with

controller, cable and software S545.00

[Special prices valid with expansion chassis purchase only]

HI FORTRON CORPORATION

3225 Seldon Court Orders Only: (800) 821-9771

Fremont, CA 94538 In Calif: (415) 490-8171

Telex: 559291 FORTRON Technical Service: (415) 490-8403

Compaq Portable: Desk Pro™/ Compaq Corp.IBM'U/I-B.M.. Tandy I000™/Tandy Corp.

field, double-buffering, hold-and-modify, and extra-half-bright modes).

Strengths and Weaknesses

As an intermediate C programmer with some knowledgeof the Amiga's internal details, I am beginning to appre-ciate the way Mortimore organized functions and cross-references. Although I still have to go to the referencemanuals to get detailed information, I am often at a lossas to what information I need and where to find it. Thisbook's dictionary-like organization and thesaurus-likecross-referencing of related functions gave me a much-needed overview. The Discussion section includes the sortof hard-earned practical observations and advice thatreference books lack.

The Amiga Programmer's Handbook was the first technicalbook published by a source outside Commodore-Amiga(others have appeared since then), and the rush to publishfirst has affected this book, although not as adversely asit does most such technical books. On the positive side,this book seems to be far more accurate (technically andgrammatically) than most early books and many otherbooks; I've found only one or two typographical errorsand no technical ones so far. One serious drawback, how-ever, is that the book contains no figures and only a fewexamples, both of which are sorely needed (they are pres-ent in the most recent version of the technical referenceset).

Because it is not a seven-volume set, the Amiga Program-mer's Handbook necessarily summarizes some importantconcepts and leaves others out entirely. That's not a fault,but you need to be aware of it. The book points out thatmuch of the missing information is documented in the in-clude files that come with your assembler or C compiler.This is true—every serious Amiga programmer shouldprint and read the Intuition include file (include.h for C,include.i for assembly language).

Another, more serious weakness is an omission: Morti-more makes no mention of devices (the word used todescribe the mechanism by which the Amiga interacts withvarious hardware components). This means that the bookoffers no insight into (among others) the audio subsystem,the keyboard, the "console" (video text output) device,the game ports (mouse and joystick interface hardware),the serial and parallel ports, the "narrator" device (whichhandles Amiga's human-speech output), and the printer-driver software.

A final criticism, reported by a Commodore Amiga tech-nical person, is that the book mixes information from bothversions I.Oand 1.1 of the Amiga Workbench. (Yet anotherversion, 1.2, may be out by the time you read this.) Al-though I have not seen any examples of this during myuse of the book, I'm sure they're there—so be warned,and double-check with the official Amiga documentation.

I said earlier that you couldn't develop Amiga softwarewith this book alone. Actually, by studying the include filesand several of the numerous C source code files in thepublic domain, you could get by with just this book, but

[continued]

66 BYTE • SEPTEMBER 1986

Inquiry 130 for End-Users.Inquiry 131 for DEALERS ONLY.

PANASONIC PRINTERS.THEY'RE GENERATING A LOT OF

GOOD PRINT.

■y jad. »tA.e their lo. r.unon, thePanasonic machines are well made, sturdyprinters that should serve well in the vari-ous applications for which they were de-

er-quality <

The good reviews keep rolling in. And, as youcan see, the critics agree: Panasonic printers arereal winners!

But that shouldn't come as too big of a surprise.After all,Panasonicprintersoffer theadvancedfeatures and ^*~° pcweek-junei/, 1986

ease-of-use you've come to expect from Panasonic.

So, whether your business is big, small or in-between, you'll find a printer with features to loveevery bit as much as the critics. Like—as one

withuiis little ,,..iiier.

As far as I'm concerned, the KX-P109Iproduces not near letter quality but rathertrue letter quality in this mode. You'd real-ly have to strain to distinguish it from type-writer quality. Knqpjtfhafthe ^Sflu^p

company produced fast, courteous,and knowledgeable answers^

PC-SEPT. 17, 1985

reviewer observed—extraordinary near-letter-quality on our dot matrix models. They alsocome standard with impressive high-resolutiongraphics capability So you can add graphs,charts, illustrations—even your company's logo.

Not to be outdone, all our daisy wheel printersgive you sophisticated advances like boldface,shadow and underline.

Of course, we've put just as much care into the

Inquiry 408

unu (.->... ..allCe vM UlL.

KX-Kii51. It is a well-built productthat promises to deliver many hours oftrouble-free operation. The print quali-ty is clear and well-defined. The alisin-ment of characters on adjacent lines isalso excellent, a sign of a well-designedpaper and printwheel transport system,

human side of our printers, too. You'll findswitches and buttons that let you change printsizes and styles right on the printer rather thanthrough the computer. And, with our continuous,self re-inking ribbons, you'll find yourself chang-ing ribbonsless often.When you do,our snap-incartridgemakes it a snap.

Finally, just when pc products-april, ms

you thought all this would behard to top, there's more: all our printers are backedwith an unprecedented two-year limited warranty.

Now that you've reviewed all of this for your-self, call toll-free 1 (800) PIC-8086 for the name

of thedealernearestyou.You'llsee how

PRINTERS BUYERS GUIDE & HANDBOOK #3 easily

Panasonic printers generate good print for you.And, you 11 agree: THE EASIER, THE BETTER.

Panasonic

ed.

as-iap-jre isr in-

i , ~j l... ,^/a.._

/ Sfi'is 30.i pounds. Like all the Pan-asonics we tested at, the 1592 comeswith the company's exceptional two-year warranty. And like all of them, itdefinitely rates a look.

Office Automation

o

r~\\

SEPTEMBER 1986 • BYTE 67

STATISTICALPACKAGES

Complete, high-performancedata-analysis software from:

StatSoft

Unbeatable power and flexibility forunbeatable prices!

1. STATS-2™ (release 2.1): A complete,superfast statistical package. Can alsobe used as a statistical supplement forLotus 1-2-3™ and other spreadsheetprograms. Runs on IBM™ and compat-ibles, 256k, 2dd, 8087 support $149

2. STATFAST-2™ (release 2.1): Themost powerful statistical packagedeveloped for the Macintosh™128k/512k/Plus, idd $119

3. APP-STAT™: A complete statisticalpackage for the Apple II™ family ofcomputers, 1dd $99

4. PSYCHOSTAT-3™: A complete sta-tistical package, available for Kaypro™

and all CP/M™ computers, 1dd $99

All of these statistical packages are user friendly and super-easy to use. They include the full range of basic statisticalanalyses (descriptive statistics, t-tests, correlations, cross-tabulations, nonparametric statistics, and much more) andadvanced multivariate statistics (comprehensive multipleregression with forecasting, general multifactor ANOVA/AN-COVA up to 5 factors including a covariate, repeated mea-sures, contrasts, unbalanced designs, and more). All pack-ages can handle data files of unlimited size, include flex-ible Data Editors with complex transformations and com-plete data-base management functions, and can accessdata files from spreadsheets, data-bases, and mainframes.

Ask for our statistical packages for other computers.

TO ORDER: Send check, credit card number, or money order{plus $5 shipping and handling) to:

BOOK REVIEWS

StatSoft

2832 EAST 10TH STREET, SUITE 4, TULSA, OK 74104(918) 583-4149

VISA'

To order by phone (Visa, MasterCard, C.O.D. orders accepted) or talk toour technical staff for more information, call (918) 583-4149.

STATSOFT. STATSOFT logo. STATS-2 STATFAST. APPSTAT. PSYCHOSTAT-3, LOTUS 12-3. IBM.Macintosh. Apple 11. Kaypro and CP'M are trademarks ol resoechve companies

it would be like trying to use a one-disk computer—youcan do it, but it's a lot of extra work.

Conclusion

The Amiga Programmer's Handbook is an accurate, well-organized reference book for the Amiga's internal soft-ware, though it omits needed material about the softwareinterface to several input and output devices. It doesn'toffer the technical depth you'll sometimes need, but it pro-vides several kinds of contextual information that themanuals don't. It is nevertheless a useful addition to anAmiga technical library.

Gregg Williams is a senior technical editor at BYTE who worked onthe Amiga cover story (August 1985). He can be reached at BYTE,One Phoenix Mill lane. Peterborough. NH 03458.

TECHNICAL TOPICS FOR MOTOROLAMC68000-BASED MICROCOMPUTERS:An Annotated Bibliography of Recent Books

Compiled by Donald Evan Crabb

Observing the progress of the Motorola MC68000processor chip, I felt that a survey of some of the cur-rent books on the subject was needed. By eliminatingmonographs and manuals, 1 focused on four areas: 68000technical references, Macintosh 68000 programming ref-erences, Macintosh 68000 programming textbooks, andAtari 520ST technical books. The books mentioned belowoffer current technical information about the MC68000and its implementation in several computers. This collec-tion reflects my bias and cannot be considered inclusive.All books are softcover unless otherwise specified.

68000 Technical References

Cramer, William, and Jerry Kane. 68000 Microprocessor Hand-boot Includes 68008, 68010, & 68020. 2nd ed. Berkeley,CA: Osbome/McGraw-Hill, 1986. $34.95. 142 pages.

The 68000 Microprocessor Handbook covers technical criteriaof the M68000 processor family with a distinct hardwareorientation. It is a functional overview of the micropro-cessors of the M68000 family, including the MC68020. Assuch, it leaves out a thorough discussion of the instruc-tion set of the 68000 family, opting instead for a 10-pageoverview of the more than 300 instructions that makethese microprocessors work. William Cramer and JerryKane have condensed the instruction set discussion intoa general synopsis about the basic format of instructionsand their use. Topics familiar to readers of other 68000books include addressing modes, timing and bus opera-tions, exception processing, and I/O interfacing. The con-sistent hardware orientation is based on the configurationof the M68000 family and how its architecture and opera-tions can support systems and applications software. Asa hardware handbook, the 68000 Microprocessor Handbook

(continued)

68 BYTE • SEPTEMBER 1986

Inquiry 329

Powerful MS-DOS Software.

For the IBM®-PC, XT, AT & others with generic MS-DOS/PC-DOS 2.0 or higher.

NO*

pro

copV

Only

UTAH

• :<§

I TM

n

D

DD□

□

Whether student, teacher or professional programmer,

this is the one you've heard so much about.

It's easy to use. Compiles 5000 statements on a 128K

machine.

170 clear error messages, i.e. DATA-NAME IS

MISSING OR MISSPELLED.

Distribute your object code programs royalty free.

Small object code programs conserve disk space.

Fast compile times to increase programmer pro-ductivity. Over 25 times faster than one compiler

costing $995!

You get a diskette and 213-page manual with lots of

examples and 16 complete COBOL source code

programs. $39.95.A/so available: COBOL Application Packages, Book 1 $9.95.

UTAH

PASCAL

14-digit precision, BCD math, no round-off errors

with decimal arithmetic for business and floating point + 63

-64 for scientific.

A very nice TRACE style debugging.

Arrays up to 8 dimensions and 64K strings.

External procedures and functions with dynamic

auto-loading.

One-step compile, no assembly or link required.

□

□□□

D

□ You get a 132-page manual and diskette. $39.95

UTAH

TM

D

□

□

□

PILOT

Perfect for industrial training, office training, drill

and testing, virtually all programmed instruction, word

puzzle games, and data entry facilitated by prompts.

John Starkweather, Ph.D., the inventor of the PILOT

language, has added a built-in full-screen text editor,

and much more.

Meets all PILOT-73 standards for full compatibility with

older versions.

You get a diskette, 125-page manual and ten useful

sample programs. $39.95.

Also still available for 8-bit machines with CP/M® is our world famousNevada Software Series used by 50,000 customers in 40 countries.These include Nevada COBOL, Nevada FORTRAN, Nevada PASCAL,Nevada PILOT, Nevada BASIC and Nevada EDIT. $39.95 each.Satisfaction guaranteed. If for any reason you're not completelysatisfied, just return the package within 15 days in good condition, andwe'll refund your money.

IBM is a registered trademark of International Business Machines Corp.CP/M is a registered trademark of Digital Research. MS is a trademarkof Microsoft Corp. © 1985 Ellis Computing, Inc.

□□□D□D□□□□

Each!

UTAH

FORTRAN

FORTRAN IV based upon ANSI-66 standards.

Very fast compile times and easy to use.

IF .. THEN .. ELSE constructs.

Chaining with blank and named common.

Copy statement.

ENCODE and DECODE.

Free-format input and output.

A very nice TRACE style debugging.

150 English language error messages.

You get a diskette, and 223-page manual. $39.95

TM

UTAH

EDIT

TM

□

□ ■

□

n

A character-oriented full-screen video display text

editor designed specifically to create COBOL,

FORTRAN and PASCAL programs.

Only requires 15K disk space so it can fit on the

same disk as your compilers.

Completely customizable tab stops, default file

type, keyboard control key layout and CRT by menu

selection.

Diskette comes with easy to read 58-page manual. $39.95.

UTAH

TM

BASIC

□ This interpreter has a built-in full-screen editor.

□ Single- and Multi-line user definable functions.

□ BCD Math-no round-off errors.D Full Matrix operations.

□ You get 220-page manual and diskette. $39.95.

Handling/Shipping: No shipping charge within US. Overseasadd $10 for first package, $5 each additional. Checks must bein US Dollars, drawn on a US bank.

Utah Software requires 128K RAM and PC-DOS or MS-DOS 2.0 or higher.

HOW TO ORDER. Send check or money order to Ellis Computing, Inc.with VISA or MASTERCARD order by phone. Sorry no COD's.

a Ellis Con5655 RigiReno, NePhone(7SINCE 1977

Ellis Computing, Inc.5655 Riggins Court, Suite 10Reno, Nevada 89502Phone (702) 827-3030

ELLIS COMPUTING

Inquiry 119

SEPTEMBER I986 -BYTE 69

BOOK REVIEWS

INCOMPATIBILITY B^AFFORDABILITY

^RELIABILITY [^EXPANDABILITY

IBM XT/AT COMPATIBLE COMPUTERS BY

nAFTON COMPUTER INC.

QUANTUM286 TURBO

Made

In The

USA

■ IBM AT COMPATIBLE

■ PHOENIX BIOS

■ 8-10 MHZSWITCHABLE CLOCK SPEED

■ 512K UP TO 1 MB RAM ON BOARD

■ 2 SERIAL PORTS 1 PARALLEL PORTON BOARD

■ 20 MB HARD DISK

■ 1.2 MB FLOPPY

■ 8 EXPANSION SLOTS

■ AT KEYBOARD

■ 200 WATT POWER SUPPLY

■ ONE YEAR WARRANTY

All For Only $1995°°

QUANTUM XT TURBO(Made in the USA)

■ PHOENIX BIOS

■ 4.77-8MHZ SWITCHABLE CLOCK SPEED

■ 640K ON BOARD

■ SERIAL, PARALLEL AND CLOCK

■ AT STYLE KEYBOARD

■ 360K FLOPPY

■ 135 WATT POWER SUPPLY

■ ONE YEAR WARRANTY

All For Only $74500

Quantum XT 4.77 MHz.. .Call For Pricing

AFTON COMPUTER INC.

(714) 863-6951

24825 Calle El Toro Grande

El Toro, California 92630

Customer Service (714) 553-1701

Telex 756731

Prices and Configurations Subject To Change.

is most useful to experienced microprogrammers and sys-tem designers who seek a handy reference manual.

Fortgang, Karen Skrable, ed. M68000 8-/16-/32-BH Micro-processors Programmer's Reference Manual. 5th ed. EnglewoodCliffs, NJ: Prentice-Hall, 1986. $18.95. 240 pages.

This is the reference manual for the M68000 processorfamily (MC68000, MC68008, MC68010, MC68012). It iswritten by Motorola engineers for anyone interested inserious assembly language programming of the 68000family. The latest version adds a discussion of theMC68012 extended virtual memory processor to thematerial presented in the 4th edition. This book will not,however, teach you 68000 assembly language program-ming. It is strictly a reference for the 68000 family.

The information is straightforward and delivered in theno-nonsense style that is so familiar to readers of elec-trical engineering texts. The book's audience is narrowlydefined—M68000 programmers, system implementers,and computer designers—but readers should find thecoverage of the M68000 family's architecture, dataorganization and addressing, instruction set, micropro-cessor operations, and exception processing definitive.

Most of the book concentrates on the MC68000, butit also explains the architectural and instruction set dif-ferences of the MC68008 processor (8-bit data bus, 20address bits), the MC68010 processor (virtual memoryversion of the MC68000), and the MC68012 (extendedvirtual memory version of the MC68010). The full 32-bitMC68020 processor is mentioned only briefly.

Kelly-Bootle Stan, and Bob Fowler. 68000. 68010, 68020Primer. Indianapolis, IN: Howard W. Sams & Co., 1986.$21.95. 368 pages.

This Waite Group book bridges the gap between anM68000 processor reference manual and an M68000 as-sembly language textbook. Coauthored by a recognizedcomputer pioneer (Stan Kelly-Bootle) and a principal inthe Alpha Micro User's Society (Bob Fowler), the 68000,68010, 68020 Primer is useful to experienced microcom-puter programmers who want a quick introduction to theM68000 family. Novice programmers who don't knowmuch about micros (and least of all the 8-bit micropro-cessors that preceded the M68000 family) will also findthe book informative. The authors provide numerous ex-amples of the M68000 instruction set, discussing the pur-pose of each instruction and its intended use.

Kelly-Bootle and Fowler have chosen a structure that em-phasizes familiarity with the basic concepts of the M68000early on. From there, they accelerate their discussionthrough the various levels of microprogramming and final-ly discuss individual differences between processors ofthe family. They also include several appendixes that coverthe M68000 instruction sets and the various addressingmodes. The book is filled with useful illustrations andtables and includes a handy tear-out reference card.

[continued]

70 BYTE • SEPTEMBER 1986

Inquiry 10 for End-Users.Inquiry II for DEALERS ONLY.

THE PROFESSIONAL'S CHOICE

Lotus1-2-3

$319

Software

Word Processing Editors

FANCY FONT S139

FANCV WORD $109

FINAL WORD II $219

MICROSOFT WORD 3.0 $279

Paradox

$469

dBase IIIPlus

$389

FrameWorkII

$389

MultiMateAdvantage

*869

WordPerfect 4.1

$809

MULTIMATEMULTIMATE

ADVANTAGEOFFICE WRITER/

SPELLERPFS: WRITESAMNA WORD IIITHINK TANKTURBO LIGHTNINGVOLKSWRITER 3VOLKSWRITER

SCIENTIFICWORD PERFECT 4.1WORDSTAR 2000WORDSTAR 2000*WORDSTAR PROXYWRITE III

Database SystemsCLIPPERCONDOR IIIDBASE III PLUSKMAN2PARADOXPFS: FILE/REPORTPLEASE!01 A

OUICKCODE IIIOUICKREPORTR BASE 5000REFLEXREVELATION

GraphicsCHARTMASTEROIAGRAPHDIAGRAM MASTERENERGRAPHICS2.0FREELANCEGEM DRAWGRAPHWRITER

COMBOIN-A-VISIONMAPMASTERMS CHARTPC DRAWPC PAINTBRUSHPFS: GRAPHPICTURE PERFECTGRAPHICS PRINTSHOPSIGNMASTERWINDOWS/DRAW

NECMultisync

$529

$219

$269

$239$ 89$259$109$ 65$159

$259$209$249$289$259$239

$359$339$389$339$469$169

$99$219$159$159$359

$89$499

$219$309$199$339$209$149

$299$259$239$189$209$ 99$ 89$245$ 49$149$119

Spreadsheets/Integrated Packages

ENABLEFRAMEWORK IIJAVELINLOTUS 1-2-3MULTIPLANOPEN ACCESSSMART SYSTEMSPREADSHEET

AUDITORSUPERCALC 3SYMPHONYTWINNetwork ApplicationsDBASE III LAN PAKKMAN2

MICROSOFT WORDMULTIMATEMULTIMATE

ADVANTAGEOPEN SYSTEMSR BASE 5000REVELATIONSAMNA WORD IIIWORD PERFECT

Desktop Environments

DESQVIEWMS WINDOWSGEM DESKTOPSIDEKICK

Project ManagementHARVARD TOTAL

PROJECT MANAGERMICROSOFT

PROJECTPROJECT SCHEDULER

NETWORKQUICKNET 500SUPERPROJECT♦TIMELINE 2.0

Communications/Productivity Tools

CARBON COPY

CROSSTALK

PROKEY

RELAY GOLD

REMOTE

SMARTERM

SMARTCOM II

SUPERKEY

StatisticsSPSS/PC*STATGRAPHICSSTATPAC GOLD-

WALONICKSYSTAT—NEW

$349$389$419$319$135$259$439

$ 99$209$449$ 79

$639$899$Call$639

$749$459$799$999$799$450

$ 69$ 69$ 39$ 39

$249

$339$539$269

$239

$129$ 99$ 85$149$109SCall$ 99$ 49

$575$449

$399$499

Languages/Utilities

CONCURRENT DOS $179

COPYWRITE $ 45

C86C COMPILER $319

FASTBACK $ 99

LATTICE C $269

MARK WILLIAMS C $319MICROSOFT C

COMPILER $249

MS BASIC COMPILER $249

MS FORTRAN $229

NORTON UTILITIES $ 59

QUICK BASIC $ 65

SUPERKEY $ 55

TURBO PASCAL $ 49

TURBO PROLOG $ 69

XENIX $Call

ZERO DISK $ 70

Accounting

BPI $309

GREAT PLAINS $479

IUS EASYBUSINESS $309

ONE WRITE PLUS $159

OPEN SYSTEMS $409

PEACHTREE $259

REAL WORLD $399STAR ACCOUNTING

PARTNER II $529

Hardware *

Multifunction BoardsAST ADVANTAGE (128K) $349AST I/O MINI $139

AST MP MINI $199

AST 6 PAK PLUS (64K) $169AST 6 PAK

PREMIUM (512K) $359

AST RAMPAGE PC $249

AST RAMPAGE AT $459

AST SHORTRAM (OK) $159GOLD OUADBOARD (OK) $419INTEL ABOVEBOARD PC $279INTEL ABOVEBOARD AT $439INTEL ABOVEBOARD PS

(64K)JRAM AT-3 (OK)JRAM 3 (OK)ORCHID CONQUEST

(OK)ORCHID ECCEL (OK)PC TURBO 286 (1MB)PC TINY TURBO 286OUADBOARD (64K)SILVER OUADBOARD

(OK)

$329$239$179

$279$399$799

$459$139

$219

Display Boards

GENOA SPECTRUM $239HERCULES GRAPHICS

CARD $199HERCULES COLOR

CARD $159PARADISE MODULAR

GRAPHICS $259

QUAORAM EGA+ $369

SIGMA EGA 350 $379

SIGMA COLOR 400 $449

STB EGA PLUS $339TECMAR GRAPHICS

MASTER $399

TSENG ULTRA PAK $429

TSENG ULTRA PAK-S $369

Emulation Boards

AST 5251-11+ $649

AST 5251-12 $499

AST BSC $489

AST SNA $599

IRMA $799

SMART ALEC 5251 $699

Modems

AST REACH 1200 $359

HAYES 1200 $389

HAYES 1200B $349

HAYES 2400 $579

HAYES 2400B $549

TRANSNET1000 $279VENTEL1200

HALF CARD $369

VENTEL 1200 PLUS $300

WATSON $339

Mass Storage/Backup

IOMEGA 10+10 W/INTFC $1999

IOMEGA 20+20 W/INTFC $2599

IRWIN 120D 20MB TBU $599

IRWIN 145AT 40MB TBU $699MOUNTAIN DRIVECARD

20MB $719

PLUS HARDCARD 10MB $569

PLUS HARDCARD 20MB $719

PRIAM 42MB AT $949SYSGEN SMART IMAGE

20 MB (INT) $625

TALLGRASS SCsllTECMAR QIC-60AT TBU

(INT) $1199

TECMAR OIC-60H (EXT) $1599

Networks

AST PC NET $Call

NOVELL Scan

ORCHID PC NET SCall

3 COM $Call

Monitors

AMDEK 310AAMDEK 600/722NEC MULTISYNCPRINCETON HX-12PRINCETON MAX-12EPRINCETON SR-12PRINCETON HX-12EPRINCETON HX-9SAMSUNGTAXAN 122 AMBER

TAXAN 630/640

$159$429/539$529$449$179$499$539$529SColl$169

$469/539

Printers/PlottersBROTHER TWINWRITER $939

DATAPRODUCTS SCall

DIABLO 635 $1149

EPSON FX-85 $399

EPSON FX-286 $549

EPSON HI-80 $349

EPSON CR— 420 I $1569

EPSON LO-800 $589

EPSON LQ-1000 $729

HP 7475A $Call

NEC 3550 $799

OKIDATA182 $249

OKIDATA192 $379

OKIDATA 193 $519

OKIDATA 292 $539

OKIDATA 293 $589

TOSHIBA P321 $565

TOSHIBA P341 $829

TOSHIBA P351 $1069

Input Devices

KEYTRONIC 5151 $179

KEYTRONIC 5153 $299

MICROSOFT MOUSE $129

PC MOUSE/PAINT+ $139

Accessories

CABLES SCallCURTIS SURGE

PROTECTORS SCallDATASHIELO BACKUP

POWER SCallDATASHIELD SURGE

PROTECTORS $Call

GILTRONIX SWITCHES SColl

MASTERPIECE PLUS $135MICROFAZER INLINE

BUFFERS SCall

256K RAM SET $ 39

8087 MATH CHIP $135

80287 MATH CHIP $199

•CALL FOR SHIPPING COSTS

Drivecard 20

$719

1/2 Card

$369 I ^$349 $239

Board

$799

•CALL FOR SHIPPING COSTS

LOWEST PRICEGUARANTEE!!

We will match current

nationally advertised

prices on most products.

Call and compare.

fie

Diskette

Library

Case

with your order

1800221-1260

TERMS

Checks—allow 14 days to clear. Credit processing—add 3%. COD orders—cash,M.O- or certified check—add $5,00. Shipping and handling UPS surface—add $3.00per item {UPS Blue $8.00 per item). NY State Residents—add applicable safes tax.All prices subject to change.

In New York State call (718) 438-6057

I^J M

MON.-THURS. 9:00AM-8:00PMSUN. & FRI. 9:00AM-4:00PM

Softline CorporationP.O. Box 729, Brooklyn, N.Y. 11230TELEX: 421047 ATLN UlFAX: 718-972-8346 byt-

SEFTEMBER I986 -BYTE 71

HERrS 118 REASONS AND

IS AMERICAS

1LOW PRICES. Micro Mart specializesin giving you the best value on all yourPC product needs.

2 QUALITY PRODUCTS. We've got a, huge selection of national brand nameproducts. Computer systems, printers, per-ipherals, supplies and accessories!

3 FULL SERVICE SALES. Our friendly,• knowledgeable sales staff will help you

choose the right product at the right price.

4 COMPLETE TECHNICAL SUPPORT.1 For pre-sale or post-sale advice, give usa call. We're here to help.

5 CUSTOMER SATISFACTION.It's made us famous. Drop in at oneof our many store locations or give us acall today.

Shop us today and save on these specials...

6

ProLine XT—A complete systemfor only $995!

Here's a system value thatcan't be beat. Featuresfull PC compatibility.640K RAM memory. One360K half height floppydrive. Six expansion slots.Monochrome graphicscard and monitor. Printerand communications v.;?ports. Clock/calendar.Came port. MS DOSwith GW BASIC.Enhanced IBM-stylekeyboard. UL andFCC approved.Full 1 year parts exclsive warranty.

All systems built andconfigurations!

tested! Call for custom

FREE!

With the purchase of ourProLine XT

This complete accessory pack: 10 pk.DS/DD Maxell Diskettes. SRW Media StorageCase. Six-outlet Curtis power strip with surgeprotection. Texwipe PC careware kit with anti-static solution and CRT cleaning fluid andwipes. Perfect Data 5Va" drive head clean-ing kit. ProLine XT dust cover. TotalRetail Value-$89.95!

7

ProLine AT- Powerful ATperformance for only $2,289!

All the speed and

power you need.

Features full PC

compatibility. 512K

RAM memory. 8Mhz

processor. One 360K

floppy drive. Eight

expansion slots.

Monochrome

graphics card

and monitor.

Printer port.

Clock/calen

dar. MS DOS

UL and FCC approved. 90 day exclusive warranty.

All systems built andconfigurations!

tested! Call for custom

FREE!

With the purchase of ourProLine AT

This complete accessory pack:

10 pk. tpi quad density Maxell Diskettes.

SRW Media Storage Case. Six-outlet Curtis

power strip with surge protection. Texwipe PC

careware kit with antistatic solution and

CRT cleaning fluid and wipes. Perfect

Data 5'/4" drive head cleaning kit.

American XT dust cover. Total

Retail Value-$99.95!

^T Amei

72 BYTE • SEPTEMBER 1986

MORE WHY MICRO MART

PC SPECIALIST!

MULTIFUNCTION BOARDS

We have a complete line of Multifunction Boards compatiblewith the PC, XT & AT and all compatibles.

8. SIX PAK 64-384K, multifunction, fully

loaded W/384K $239

9. AST I/O MINI I/O shortboard for

Portable & AT New Low Price!

10. ADVANTAGE 128K-3Mb, expansion for AT

11. RAMPAGE 64K-2Mb with Deskview NEW!

12. QUADRAM QUADBOARD

loaded, 384K CALL!

13. QUADRAM GOLDBOARD, 384K $459

14. TECMAR MEGAFUNCTION, 1 Meg of

nonvolatile memory $369

15.TALLTREEJ-RAMIII CALL!

16.1NTEL ABOVE BOARD, PC & AT From $280

17.THESYSFASTCARDupto1MB From $235

GRAPHICS CARDS

18. HERCULES Mono & Color

Graphics cards New Low Price!

19. TECMAR Graphics Master, HiRes Color &

Mono supports Lotus $449

20. QUADRAM Quadcolor I & II color cards

21. QUADRAM EGA, Includes 256K memory $389

22. STB EGA + Mono 5. Graphics cards

also available CALL!

23. Generic monographic cards From $99

24. SIGMA Color 400 for

PGS SR-12 New Low Price!

FLOPPY DISK DRIVES

25. 1/2 HEIGHT Disk Drives from Panasonic,& Teac; 360K &

26. 1.2 MEG Floppy drives for the PC, XT, AT

and Compatibles From $99

HARD DISCS

27. IRWIN Tape Back-up systems Call!

28. SYSGEN Complete line Call for our

special Sysgen pricing!

29. BERNOULLI TECHNOLOGY Hard disc

Subsystems (20 & 40 MB) From $2875

30. SEAGATE fast 20, 30 Meg. forPC&AT Call!

31. PRIAM Superfast 40 & 60 Meg. for AT CALL!

32. TAUCRASS 25, Through 80 Meg. Hard drive systems,including 60 Meg. tape back-up

33. WESTERN DIGITAL 10 & 20 MB File cards CALL!

34. Best availability of voice coil and stepper motor hard driveswith highest quality controllers From $495

SOFTWARE

ACCOUNTING

35. SORCIM/IUS Complete line

including windows From$295/each

SPREADSHEETS &INTEGRATED PACKAGES

36. SORCIM SuperCALC 3,

Vers. 2.0 New Low Price!

ENHANCEMENTS & UTILITIES

37. NORTON Utilities 3.0 $69

38. ROSESOFTProKey3.0 $89

39. CENTRAL POINT SOFTWARE

CopyIIPC $35

40. SOFTSTYLE Set FX+ and Printworks,printercontrol

41. SIDEWAYS Inverts printout $51

42. BORLAND SideKick and SuperKey From $40

43. BORLANDLightningand

Reflex NEW! CALL!

COMPILERS & LANGUAGE TOOLS

44. LATTICE C-Compilers $279

45. MICROSOFT Complete line

46. MICROSOFT Quick-Basic New Low Price!

47. BORLANDTurboPascale, Turbo Toolbox,

& more From $35/each

GRAPHICS

48. Z-SOFT PC Paintbrush, mouse graphics $95

49. DECISION RESOURCES Diagram

Master From $199

SO.MICROSOFTChart CALL!

51. MICROSOFT Windows CALL!

COMMUNICATIONS

52. MICROSTUF Crosstalk XVI, Latest version $105

53. HAYES Smartcom II $85

54. MICROSOFT Access CALL!

WORD PROCESSING

55. MULTIMATE Advantage $294

56. MICROSOFT Word,

new version New Low Price!

57. LIFETREE Volkswriter Deluxe, ver 3.0 $169

58. SSI WordPerfect,

version 4.1 New Low Price, CALL!

59. MICROPRO Wordstar

Professional series New Low Price!

60. LEADING EDGE Nutshell $59

61. LEADING EDGE Word Processor $59

OFFICE & PLANNING

62. HARVARD Total Project Manager $339

63. SORCIM/IUS Super Project $209

64. MICROSOFT Project, vers. 2.0 $269

DATA BASE MANAGERS

65. Call For Unadvertised Data

Base Managers

66. MICRORIM 5000, Report Writer

& Clout New Low Price!

67. MICROSTUF Infoscope $99

MONITORS & CRTS

85. PGS Max 12(E), HX12, HX12(E),

&SR-12 New Low Prices!

86. AMDEK Color 600 CALL!

87. AMDEK 722, New alternative to IBM

enhanced monitor $569

B8. AMDEK310A CALL!

89. MAGNAVOX Monochrome monitors $129

90. SONY, monitors in stock CALL!

MISCELLANEOUS

$139

91. MOUSE SYSTEMS PC Mouse, opticalw/software

92. MICROSOFT Mouse, bus or serialmechanical New model in stock!

93. KEYTRONICS5151 Keyboards CALL!

94. KEYTRONICS 5153 Keyboard

w/mouse NEW!

95. GRAVIS Joysticks $45

96. QUADRAM Microfazer print

buffer 8-128K From$129

DISKETTES

Following Items available only in sets of 100 each brand.

68. D BASE III plus CALL! W 97. Precision Diskettes by Xidex,

NETWORKING PROTOCOL j£,8Son Diskettes'byxidex,' $ -65/ea-

CONVERSION ~ DS/DD $ .69/ea.

69. SNA & B1SYNC 3780, 5251, Mod 11 &12,3274,3278

70. PC TURBO 186/187 board, 128K,

8087 Serial Board attached . , $875

71. IRMA Complete line From $849

PRINTERS

99. Maxell SS/DDMD1 $ .99/ea.

100. Maxell DS/DDMD2 $1.25/ea.

101. Maxell High Density MD2 $2.60/ea.

102. Maxell 3'/j inch SS/DDMF1 $1.60/ea.

103. Maxell V/i inch DS/DD MF2 $2.35/ea.

104. FujiSS/DDMDl $ .89/ea.

105. FujiDS/DDMD2 $1.15/ea.

DOT MATRIX

72. EPSON FX85/2B6 NEW!

73. EPSON LQ800/LQ1000 •■ NEW PRICES!M106. Flip N FileOriginal, stores fifty 5'/4"diskettes with free twin

MEDIA STORAGE

74.0KIDATA192, 193, 292, 293, Pacemark 2410 ■^•

75.TOSHIBAP-341,P-351,&NEW321 New Low Prices!

76. NEC New P-5, P-6, & P-7 Low Price!

LETTER QUALITY

77. NEC Spinwriters 2050,3550, 8850 New Low Prices!

78. EPSON DX20&DX35 NEW LETTER

QUALITY PRINTERS

We carry a full range of form handling options.

CHIPS

All our chips are tested and priced for quick sale. Call us!

79. INTEL 8087, 80287,math coprocessors CallforMarket Price. v,_„ ™'""\"™"

80. 64K-256K RAMCHIPS Call for Market Price.-*!12' Curtis 6 outlet power strip with

81. 128K Piggy-back chipsfor your AT Call for Market Price.

MODEMS

82. HAYES Smartmodem 300, 1200, 1200B & 2400. We havethebeststockintheU.S.A CALL!

83. VEN-TEL 1200 Baud Half Cardw/Crosstalk $399

84. PEACHTREE TECHNOLOGIES P-1200(Hayes compatible external) $249

pack of Fuji DS/DD diskettes ($25 retail value)

Now Vi price $12.50

107. Flip N File, stores 25 5VTdiskettes with lock $12.99

108. Flip N File, stores 50 5'/<"diskettes with lock $19.99

109. Innovative Concepts Data Case $ 9.99

110. Microdex by S.R.W., stores25 3V4" diskettes $ 9.99

111. Microdex by S.R.W., stores605Vi"diskettes $11.99

SURGE PROTECTORS

surge protection $19.99

113. Curtis Diamond $31.99

114. Curtis Emerald $37.99

115. Curtis Sapphire $49.99

116. Curtis Ruby $56.99

117. Networx Wire Tree, 4 outlet surge and spikeprotector $44.99

118. Networx Wire Tree Plus, 6 outlet surge,spike, and modem protector $64.99

(404) 449-8089

°cSn-800-241-8149

America's PC Specialist

© Copyright 1986, Micro Mart, Inc. Technology Corporate Campus 3159 Campus Drive, Norcross, CA 30071

Prices are subject to change without notice and are similar, but may vary at Micro Mart Retail Stores.

Inquiry 23!

SEPTEMBER

iYTE 73

ChalcedonyPROLOG

A REAL $QQ95

Clocksinfi \J ^S

Mellish Prolog for BOTHmajor microcomputingoperating systems —with full cross-compatibility.

Complete with the predicatesnecessary for POWER AI programming:op () name () functor () clause () =..("Univ"...And no constraining data typing.

■ Floating point ■ Step-by-step tutorial

■ Math functions ■ Integrated editor

PROLOG0

Extensible overlay library,8087 support, large memorymodel (up to 640K)

PROLOG^

Complete Macintosh en-vironment with extensivepull-down menus anddialogue boxes.

No Risk Oiler: Examine !he PROLOG/i orPROLOG/m documentation at our risk tor 30days. It not completely satisiied, return withdisk still sealed lor relund.

APPLICATIONS-

Complete with SOURCE CODE

NFL X-pert $4095

A true interactive expert system written by aprofessional knowledge engineer. A valuablelearning tool lor any Prolog programmer inter-ested in using Prolog to develop expert systems.

TOOLBOX $2995

More than 50 subroutines that speed and com-press list handling, searches, sorts, and reversalalgorithms. An inside look at the tricks of theprofessional Prolog programmer.

BOOK REVIEWS

$2995

TOYBOX

Written by an academician to help his studentsunderstand Prolog, this collection of puzzlesand mind-teasers will illustrate how the Prologprogrammer creates programs that find thebest solution to the problem. Turn your com-puter into a super reasoning machine!

System Requirements:Minimum 256K RAM

(320K recommended)PC DOS/MS-DOSANSI Standard Support

Minimum 512KMacintoshMacintosh-plus andHFS Compatible

CHALCEDONYSOFTWARE, INC.

5580 LA IOLLA BLVD.

SUITE 126 B

LA JOLLA, CA

92037

(619) 483-8513

SAVE 10% when youbuy either PROLOG/ior PROLOG/m and all3 applications.

PHONE ORDERS: 1-800-621-0852 EXT 468-

Q PAYMENT ENCLOSED $

CA residents add 6"^ sales lax

D CHARGE MY: D MasterCard

I Card No

q. Signature

' Mr /Mrs/Ms.Address

D Visa

Exp. Date .

PROLOG/iPROLOG/mCheck:MS-DOS □NFL XpertTOOLBOXTOYBOXCompletePack

$99.9599.95

Mac D49.9529.9529.95

188.82

(please pan I lull r.

City/State/Zip

SHIPPING:$ 5.00 U.S.7.50 Canada10.00 Carribean,Hawaii Air20.00 Overseas Air

Triebel, Walter A., and Avtar Singh. The 68000 Micropro-cessor: Architecture, Software, and Interfacing Techniques. Engle-wood Cliffs, NJ: Prentice-Hall, 1986. Hardcover. $34.95.366 pages.

This book is challenging, both to read and to understand.But if you make the effort and read it carefully, you cancome away with a balanced view of both the M68000microprocessor family and how microcomputers are de-signed to use these chips. This hardbound textbook wouldbe at home in both electrical engineering/computerscience microprogramming and design courses. Walter A.Triebel and Avtar Singh cover the material extensively, withparticular emphasis on the memory and I/O interfaces ofthe MC68000 microprocessor.

The 68000 Microprocessor also covers the internal architec-ture of the processor, including a complete discussion ofthe control and execution of instructions. Triebel and Singhjump into circuit design issues as well, covering such topicsas address maps, I/O interface circuits, and interrupt cir-cuits. The software side of the 68000 is not left out, either:Two full chapters break down technical topics like address-ing modes, the 68000 instruction set, and the analysis andwriting of assembly language programs.

Macintosh 68000 Programming References

Chernicoff, Stephen. Macintosh Revealed, Volume One: Unlock-ing the Toolbox. Berkeley, CA: Hayden Book Co., 1985.$25.95. 516 pages. (A full review of this book can be foundin November 1985 BYTE, page 57).

Chernicoff, Stephen. Macintosh Revealed, Volume Two: Program-ming with the Toolbox. Berkeley, CA: Hayden Book Co., 1985.$29.95. 626 pages. A disk of the programming examplesin volumes one and two is available from Hayden for$19.95. (For a full review, see April BYTE, page 67.)

\nside Macintosh: Promotional Edition. San Jose, CA: AppleComputer Inc., 1985 (published as documentation). $2 5.1000-plus pages. Also published as a three-volume seriesby Addison-Wesley, Reading, MA. 1985, at $24.95 each.

\nside Macintosh is the ultimate reference for Macintosh pro-gram developers. Published in a phone-book format onnewsprint-type stock, it appears as authoritative as it isindispensable. Written by a team of Apple programmersand writers, Inside Macintosh offers definitive informationabout how the Macintosh works: its ROM, RAM, disk drive,microprocessor, ports, keyboard, mouse, and all the rest.The information is densely packed and not particularlyeasy to get at, but most of what you need is there.

Macintosh 68000 Programming Textbooks

Commander, lake Macintosh Assembly Language Programming.

Blue Ridge Summit. PA: Tab Books, 1985. $16.95. 198pages.

[continued]

74 BYTE • SEPTEMBER 1986

Inquiry 63 for End-Users.Inquiry 64 for DEALERS ONLY.

A

<9

Slowest prices

/%^

^ y/,A^AO SURCHARGE

o<^>'

#'

#

. W ON BANK CARDS

silicon srcciniTics

Brother All Model; Save

'Cannon Loser Printer 1949

Citizen MSP-10 S279

MSP-15 S379

M5P-20 5315

MSP-25 . S479

Premier 35 5479

Diablo D-25 $489

\b SI 035

EPSON

All Printer Models Save

Fujitsu Save

\ Proprinter S399

"Juki61006300NEC

3510. 3550,3515, 3530 S729

8810.8830,8850 51039

P5 S959

P6 $429

P7 S609

a So.

PRINTERS

Toshiba 3-11321 Parallels SeP351 PaiLoser Printer

DISKETTES

Maxell MD-2(Qry 100)Sony MD/2(Qly 100]

MONITORS

HARDWARE

$449S969Save

$100$119

Signalman ExpressPractical Peripherals

Practical 17.00 Baud

MODEMS

Anchor Automation$235

HAYES

All Modems $ave

COMPUTERS

$349$669

OKIDATA

All Printer Models

. Save

Panasonic 1080

S199

1091

5239

1092

5309

1592

5425

KXP3151

S399

Amdex All Monitors

Save

NEC All Monitors

Save

Princeton Graphics

Save

Zenith All Models

Save

VIDEO TERMINALS

QumeQVT Green 101

$299

QVT Amber 101

5314

Wyse 30

S299

50

5419

75

5559

Wyse 85

5439

Wyse 350

5859

Zenith Z-22

S455

Z-29A

S559

Z-49

Save

DISK DRIVES

Iomega Bernoulli 10meg

SI 249

Bernoulli 20 meg

S1649

Bernoulli 40 meg

S2329

SEAGATE

20 meg w/Western I/O 5395

Prometheus All ModelsUS Robotics Courier 2400Password 1200Microlink 2400

BOARDS

AST Advantage

Rampage AT

Rampage PC

Si* Pack Plus

Hercules Color Card

Graphic Card

Intel

Above Board PC(II10)

Above Board AT (2010)

Above Board PS/AT(2110)

Maynard Hardcard

Paradise Modular Graphic 06-1

FivePak

Plus Development

Plus Hard Card 20 Megabyte

Ouadram

STAR MICRONICS

All Printer Models Save

PLOTTERS

Epson Hi-80

SOFTWARE

$ave$379$180$379

$329$445$239$159$149$179

$239$329$369$549$239$115

$669

$ave

.$329

$359

PC 1 Drive 256K

XT1 Drive 256K .

XT 1 Drive 20 Meg 640K

AT/68

AT/339

COmPAO.

Portable 11-2 Drive

5119951729S2169

S2849S44A9

SI 649

PANASONIC!

Sr. Partner Dual Drive

Exec. Partner Dual Drive

TOSHIBA

T-1100

. S1309SI 899

SI 299

SPERRY

Sperry IT ,

Other Models

WYSE

Wysepc 1 100-1

Wysepc 1100-20

51999Save

S979S1539

Zenith Computer ProductsSAVE up to 50%

All Models Save

[Quad EGA + . .

Tec Mar Graphics Master S445

jplain No Memory $169

KEYBOARDS

Keytronics5151 .

TRAINING

Flight Simulator S28

PC Logo 575

Typing Instructor S28

Typing Tutor III S28

INTEGRATIVE SOFTWARE

Enable 1.1 5319

Framework II Save

Smart Software System S379

Symphony Save

GRAPHICS

Chartmaster SI 99

Diagram Master S1 85

Energrophics 2.0 S269

In-A-Vision 5249Microsoft Buss Mouse

w/PC Paintbrush 3.0 SI 06

Microsoft Chart SI 64

Microsoft Serial Mouse 5119

Newsroom ..... .531

PC Draw 5199

Click Art Personal Publisher $99

PC Mouse w/Dr. Halo II 599

PC Paint w/Mouse S11 5

PFS Graph S76

Prinlmasrer $29

Signmaster $132

Turbo Graphix Tool Box $30

IBM PC AND 100% Compatibles

COMMUNICATIONS

CompuServe Starter Kit Best Price

Crosstalk XVI 592

MS Access 1.01 Save

PFS Access 576

Remote 592

Smarlcomll $83

UTILITIES

Copy II PC 519

I DIR $46

Faslback $86

Norton Utilities 3.1 548

Printworks 536

Sidekick $30

Sidekick (Unprotected) $47

Sidekick-Superkey (Bundle) S85

Travelling Sidekick S39

Turbo Prolog 554

Sideways 3.1 534

Superkey ... S39

PROJECT MANAGEMENT

Harvard Total Project Manager 5262

Microsoft Project $219

Super Project Plus Save

Timeline 2.0 . S209

WORD PROCESSORS

Leuding Edge Word Processor

S48

Leading Edge W/P w/Spell & Mail

572

Lightening

555

Microsoft Word 3.0

Save

Multimate Advanlaqe

Save

PFS: Write w/Spell Checker

S76

Wordstar w/Tutor ...

$162

Wordstar Pro Pack

$233

SPREADSHEETS

Lotus 1-2-3Mulliplon

Spreadsheet Auditor 2.0VP Planner

$ave

$108

$82

$48

Word Perfect (Ver.4.1Wordstar 2000 + 2.0

)$196$278

LANGUAGES

C Compiler (Microsoft)

Fortran Compiler (Microso(l)

Lattice C Compiler

Macro Assembler (Microsoft)

Pascal Compiler (Microsoft)

Quick Basic 2

RonC Interpreter

Turbo Pascal w/8087 & BCD

Turbo Database Tool Box

$249$195$242

$84$166

S55

565Save

$30

Supercalc4 Save

MONEY MANAGEMENT

Dollars & Sense w/Forcasl 594

Tobias Managing Your Money Save

DATA BASE MANAGEMENT

Clipper. . $335

Cornerstone S67

dBase II Save

dBase III Plus Save

Extended Report Writer S74

Knowledgeman II $279

Nutshell 2.0 S59

PFS: File $76

PFS; Report $67

Qukkcode SI 38

QuickReport $138

Reflex Save

Th.nkTonk $91

R:Base5000 $245

SPECIAL

Over $200 worth ofPaperback Software Programs

5*Kr with each system

Turbo PC/XT

$449

256 Memory. One 360K Brand Nome Floppy Drive

135 Wall Power 5upply, Slide Case, AT Style Keyboard

8 MHz Clock Speed, (Keyboard Selectable). 8 Exponsion Slats

Turbo PC/XTw/256K& I Drive S449

Turbo PC/XT w/6-lOK & I Drive S499

Turbo PC/XT w/640K & 2 Drives S599

Turbo PC/XT w/6-lGK. 1 Drive & 20MG $969

MonGraphics Card with Software and Parallel Prinler Port $ 79

Color Card with Parallel Print Port $ 69

Multifunction Card w/Sollware S 79

Amber Monitor (TTL) S 95

Color Monilor (RGB) S289

Sega Enhanced Graphics Cord S259

I/O Card (Serial/Parallel) S 39

I/O Cord (Serial/Clock Calendar) $ 39

l/OCard[Parallel) S 39

5151CloneKeyboard $ 79

Product shipped in factory cartons with manufacturer's warranty. Please add $10.00 per orderfor UPS shipping.Prices & availability subject to change without notice. Send cashier's check or money order. ..all other checks will delayshipping two weeks.

Inquiry 309 for MS DOS Products. Inquiry 310 for all others.

BOOK REVIEWS

TIME IS MONEY.10 MHz IS

FULL IBM PC-AT* COMPATIBILITY

IF YOU ARE TIRED OF WAITING FOR A 'SOMEDAY' PRODUCT

OR YOU DON'T WANT TO BUY YESTERDAY'S TECHNOLOGY,

THEN TREAT YOURSELF TO THE PERFORMANCE & FEATURES

OF THE "WESTECH 286 TURBO™" 10 MHz

PHOENIX BIOS - THE MISSING LINK INSOFTWARE COMPATIBILITY - ON BOARD

LOWEST COST 10 MHz AVAILABLE

COMPLETELY DESIGNED, MANUFACTURED, ASSEMBLEDAND TESTED IN U.S.A.

• 8 I/O Slots

• Onboard Battery

• Parallel Port

• CMOS Clock Calendar

• Up to 2 RS-232 Ports

• Standard Power

• 1 RS-232 Included

Connector

• Phoenix BIOS

• Low Power Circuitry

• Up to 1 MB Onboard

• 10 MHz 80286

• 512K Included 120ns

• Socket for 80287

• 4 Layer Mother Board

• One-Year Warranty

HIGH SPEED INDUSTRIAL GRADE COMPUTER FOR:

• Industrial • Engineering

• Medical • University/Education

• Scientific • Artificial Intelligence

QUANTITY DISCOUNTS AVAILABLE FOR QUALIFIED DEALER,OEM, UNIVERSITY AND CORPORATE ACCOUNTS.

$599.00 OEM Quantity Price

Call for other pricing

Westech, Inc.

(714) 474-6022

17781 Mitchell, Irvine, CA 92714

FAX (714) 553-0236

TELEX 756731

Answer Back: Western Comp

Prices and availability subject to change.' IBM AT is a trademark ot International Business Machines CorporalionWestech 286 Turbo is a trademark of Westech, Inc.

Macintosh Assembly language Programming is a surprisinglygood book. Ignore its shortcomings—design, execution,and illustrations—and you will be rewarded with a lucid,effective, and easy-to-understand discussion of Macintoshassembly programming. The author, a microcomputersoftware writer, has concentrated on the most importantaspects of Macintosh assembly language programming(program specification and design, using the 68000assembly language development system, the Macintoshoperating system, etc.), so that novice assembly languageprogrammers have enough hooks to latch onto.

Rosenzweig, Edwin, and Harland Harrison. Programmingthe 68000: Macintosh Assembly language. Hasbrouck Heights,NJ: Hayden Book Co., 1986. $24.95. 399 pages.

This book attempts to cover assembly language program-ming of the MC68000 chip on the Macintosh. I found de-tailed chapters on difficult material written by both authorsto be praiseworthy in their clarity.

Programming the 68000 covers the territory of a self-taughtMacintosh assembly language programming textbookquite well. It provides most of the information you needto know to become a Mac assembly and Tbolbox program-mer. The authors begin with a discussion of the address-ing modes of the 68000 and move through the 68000 in-struction set on to the Mac Tbolbox and ROM calls.

Takatsuka, Jim, David Burnard, and Fred Huxham. Usingthe Macintosh Toolbox with C. Berkeley, CA: Sybex, 1986.$22.95. 559 pages.

This book is handy if you're planning to program in C onthe Macintosh. Regardless of which C compiler you use,it provides the interfacing information you'll need to makeyour programs work with the Toolbox. The tutorial ap-proach is reasonably successful. Using the Macintosh Toolboxwith C details how to use dialog and alert boxes, windows,text editing, menus, screen graphics and icons, and muchmore from your C programs.

Ward, Terry A. Programming C on the Macintosh. Glenview,IL: Scott, Foresman and Co., 1986. $21.95. 411 pages.

Terry A. Ward's book is important to programmers whowant to become part of that software development effortbut lack the knowledge about C on the Mac.

Ward begins by moving from a discussion of the ubiq-uitous Macintosh user interface through a short descrip-tion of the syntax and properties of C. Programming C onthe Macintosh goes on to cover five different Mac C com-pilers, QuickDraw routines, menus, the event manager ofthe Mac, and the Mac's TextEdit routines. The book is filledwith example programs, illustrations, and charts, and ispleasant to read. The index is thin, but the appendixesand a table of contents are helpful.

Williams, Steve. Programming the Macintosh in Assembly Ian-

[continued)

76 BYTE • SEPTEMBER 19

Inquiry 369 for End-Users.Inquiry 370 for DEALERS ONLY.

Major Databasefeatures fora minor price!

THE U :

TAS

Before you buy DBaseIII, QuIckCode andClipper, look atTAS-Plus

TAS-Plus just made it faster, easier andcheaper to build database applications.

TAS-Plus combines the power of aRelational Database with the ease of aProgram Generator. Then TAS-Plus addsa Runtime Compiler to producelightning-fast finished code.

Look at what TAS-Plus gives you:

Relational Database4th Generation LanguageScreen PainterProgram GeneratorReport WriterSource Code EditorRuntime Compiler

TAS-Plus gives you power where itcounts. You can store up to 65,000records, open up to 16 files at a time andenter up to 10,000 characters per record.TAS-Plus even reads your old DBase files.

TAS-Pluswrites theprogramfor you

With TAS-Plus, you can start buildingprofessional database applications onday one. Just "paint" the screen theway you want and TAS-Plus writes the

The following are registered trademarks of these companies: TAS-Plus, The Accounting Solution, Business Tools, Inc; DBaseIII. Ashton-Tate; CP/M, Digital Research; IBM PC/XT/AT, International Business Machines Corp; QuickCode, Fox&Giller; Clipper,Nantucket Inc. • Copyright 19B6 Business Tools, Inc.

Inquiry 54

program for you. You can even paintusing different colors or graphiccharacters. And custom reports are justas easy.

TAS-Plus has over 86 commands and200 options available in its Source CodeEditor, so you won't run out of room togrow.

Easy to use features

Add new databases quickly and easily.

Add, change or delete records without

any programming at all.

Browse through your database and see

multiple records on the screen at the

same time.

Restructure capability allows you to

change existing databases without loss

of any data.

All this for just s69

TAS-Plus would be respectable at anyprice, at S69 it's awesome.

30 day Money Back Deal

TAS-Plus comes with a 30 day moneyback guarantee (less $15 handling fee).TAS-Plus is available for the IBMPC/XT/AT and fully compatiblecomputers. TAS—Plus Accountingapplications available.

Order Today1*800-648-6258

Call our Toll-Free Hotline. Use yourVISA, MasterCard or American Expressto order today. For information orWashington residents call1-206-644-2015.

TA

NOT COPY-PROTECTED

|C3' Rush me the following items.

Qty.

ItemTAS +

Shipping add $6 USA,$25 outside USAWA res add $5.59 Tax

Name:

Price$69

Shipping

Tax

Amount Enclosed(US funds only)

Shipping Address:

City: _State:.

-Zip:

Telephone:

Payment: VISACredit Card Expiration Date:Card Number:

MC

Check

Name on Card:.

BUSINESS..TOOLSINC.

4038-B 128th Ave. S.E., Suite 266

Bellevue, Washington 98006

(20b) 644-20 J 5

58

TOTALCONTROL

with LMIFORTH"

For Programming Professionals:

an expanding family ofcompatible, high-performance,Forth-83 Standard compilersfor microcomputers

For Development:

Interactive Forth-83 Interpreter/Compilers

• 16-bit and 32-bit implementations

• Full screen editor and assembler

• Uses standard operating system files

• 400 page manual written in plain English

• Options include software floating point, arithmeticcoprocessor support, symbolic debugger, native codecompilers, and graphics support

For Applications: Forth-83 Metacompiler

• Unique table-driven multi-pass Forth compiler

• Compiles compact ROMable or disk-based applications

• Excellent error handling

• Produces headerless code, compiles from intermediatestates, and performs conditional compilation

• Cross-compiles to 8080, Z-80, 8086, 68000, 6502, 8051,8096, 1802, and 6303

• No license fee or royalty for compiled applications

For Speed: CForth Application Compiler

• Translates "high-level" Forth into in-line, optimizedmachine code

• Can generate ROMable code

Support Services for registered users:

• Technical Assistance Hotline

• Periodic newsletters and low-cost updates

• Bulletin Board System

Call or write for detailed product informationand prices. Consulting and Educational Servicesavailable by special arrangement.

IBIi

Laboratory Microsystems Incorporated

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

Overseas Distributors.

Germany: Forth-Systeme Angelika Flesch, Titisee-Neustadt, 7651-1665UK: System Science Ltd., London, 01-248 0962France: Micro-Sigma S.A.R.L., Paris, (1) 42.65.95.16Japan: Southern Pacific Ltd., Yokohama, 045-314-9514Australia: Wave-onic Associates, Wilson, W.A., (09) 451-2946

BOOK REVIEWS

guage. Berkeley, CA: Sybex, 1986. $24.95. 779 pages.

Programming the Macintosh in Assembly Language is a massivebook for experienced programmers. Novices would beoverwhelmed by the detailed presentation of 68000 chiparchitecture, instruction sets, and the Macintosh Toolbox.The presentation of the Macintosh programming en-vironment is the strongest aspect of the book. The discus-sion of interfacing issues will help you get your own pro-grams working with the Toolbox quickly, using the appro-priate screen and mouse features. The book also hascopious listings of the source code discussed throughout.

Atari 520ST Technical References

Editors of Compute!. ComputeVs ST Programmer's Guide.Greensboro, NC: Compute! Publications, 1986. $16.95. 356pages.

One-third of this reference book is a discussion of the Atari520ST implementation of BASIC. The other two-thirdscover Logo programming, GEM and TOS, and writing GEMapplications. As one of the first books on the ST, it at-tempts to cover as many different audiences as it coversprogramming topics, for the most part successfully.

Later chapters will be of more interest to advanced pro-grammers due to the discussions of TOS, the GEM desk-top, the GEM Virtual Device Interface (VDI), and Applica-tion Environment Services (AES). The detail is such thatan advanced programmer can learn to write GEM applica-tions in C But just when you expect the book to discussapplication implementation under GEM with C, the bookends. Computers ST Programmer's Guide also fails to discussany aspects of assembly language programming for theST, another serious drawback to the book's ultimateusefulness.

Szczepanowski, Norbert, and Bernd Gunther. Afar/ STGEM Programmer's Reference. Grand Rapids, Ml: Abacus Soft-ware, 1986. $19.95. 414 pages.

Despite its title, the Atari ST GEM Programmer's Reference isreally a complete programming handbook for the ST. Thebook covers much of the same ground as Compute\'s STProgrammer's Guide, but it does so in much more detail, withmore emphasis on implementing user applications with CThe bulk of this handbook is taken up with the discus-sion of GEM's Virtual Device Interface (VDI) and how touse it in your programs to create graphics. A fair numberof programming examples are provided to help you im-plement your own code. Like Computers ST Programmer'sGuide, this book is dry reading, chock full of assembly lan-guage routines and C language definitions, without somemore invigorating text to break the monotony.

Donald Evan Grabb is director of instruction and laboratories at theUniversity of Chicago (Department of Computer Science. Ruerson Hall260, 1100 East 58th St.. Chicago, IL 60637). He is on the reviewboard of InfoWorld. ■

78 BYTE • SEPTEMBER 1986

Inquiry 192

Right now, many of the biggest names in thebusiness have their next-generation personalcomputers on the drawing boards. Theseadvanced systems will have capabilities thatwill go far beyond what's available today.Many of these exciting new products willfeature high-performance system software byMicroware.

Operating systems and programming languagesare the foundations upon which all otherapplications are built. Microware's OS-9operating system is the ideal base forinnovative fourth-generation applicationpackages. It provides many advancedcapabilities including true multitasking, auniversal file and I/O system, modularconstruction, powerful graphics, unlimitedcommunications gateways, and real-timeresponse. And it's so versatile it can be usedon almost any size system — from inexpensivepersonal computers all the way up to largemultiuser systems.

Microware also has outstanding versions of themost popular programming languages. Forexample, Microware's extended, structured Basicis friendlier than an interpreter, yet it runs asfast as a compiler. And it's so smart that itactually reports bugs as programs are typed in.Or consider Microware's full-feature C Compiler.It can recompile almost any Unix applicationprogram to be much smaller and faster thanthe Unix equivalent. You can also chooseFortran and Pascal compilers of equal calibre.

Software like this doesn't happen by accident.Microware software is specifically designed tounleash the full potential of the extraordinary

68000 and 6809 microprocessor families.Microware works in close cooperation with thepeople who actually design the systems andsilicon in order to achieve maximum integrationand performance. That's why Microwaresoftware has already made a big impact withinthe scientific, engineering, and industrialcommunities.

Affordable, powerful personal computers withMicroware software are available now at mostTandy/Radio Shack retail locations, and throughFujitsu and Hitachi in Japan. Plus over ahundred innovative manufacturers worldwideoffer a veritable banquet of professionalsystems and software for VME, Multibus, STD,and most other popular standard busarchitectures. If you're technically oriented, youcan even get a reasonably priced MicrowarePortPak™ and install OS-9 on your own custom68000 system.

Some things change, others can't. Will Unixever become affordable and understandableenough for you? How long can MS-DOS keepup with new technology? You can wait andfind out, or you can step into the future today.Contact us today and we'll send you completeinformation.

MICROWARE«

MICROWARE SYSTEMS CORPORATION

1866 N.W. 114th Street • Des Moines, Iowa 50322

Phone 515-224-1929 • Telex 910-520-2535

MICROWARE JAPAN, LTD.

41-19 Honcho 4-Chome, Funabashi City • Chiba273,

Japan • Phone 0474-22-1747 • Telex 298-3472

OS-9 is a trademark of Microware and Motorola. Unix is a trademark of BellLaboratories. VAX is a trademark of Digital Equipment Corporation. Multibusis a trademark of Intel Corporation,

Inquiry 240

Simply put: THE "highest quality andbest value in computer products anywhere.

THE ™ commitment to our

customers is compatibility,

quality, value,

service and support

THE "backs

every product with a

45 DAY

MONEY BACK

GUARANTEE

and a

FULL 1 YEAH

PARTS AND LABOR

WARRANTY

THE "MULTI 384

This multi-function card features0-384K memory, a parallel printer port,a serial port for communications,a clock/calendar with battery backup,and a software bonus that includesRAMdisk and other utilities. Retail $9000

.00*

Special Wholesale Price

THE "COLOR CARD

100% compatible with the IBM'"colorcardwith display modes of80x25 alphanumeric

and 320x200 graphic. Retail Price $75.00

$60.00*

THE'"576K MEMORY +

Supports 0-576K of available memory and iscompatible with all IBM "PC's. Retail $46 25

$37.00*

THEPRINTERFACE

Supports all text and graphics featuresand is fully compatible with third party

software. Retail Pnce $23 13

$18.50*

Special

WholesalePrice

'All Items Subjeci lo Availability —Prices Subject 10 ChangeTM-Registercd Trademarks o( IBM Ast ResearchMicrosoft Hercules Hayes

THE M MODEMS

100% Hayes compatible

THE "1200 COM EXTERNAL

This self-testing 1200 BPS modem comeswith auto answer.auto dial, auto redial anda built-in speaker. Retail Price $i6i.25-

Special

Wholesale

Price

$129.00*

THE "1200 COM INTERNAL

Features auto answer, dial and redial, witha built-in speaker, RS 232-C serial port

and PC Talk III. Retail Price $148.75

Special

Wholesale

Price

$119.00*

THE "2400 COM EXTERNAL

Eight times the speed of a 300 BPS unitmakes this 2400 Baud modem trulyaffordable, and we've made it trulycompatible. With auto answer, auto dial,auto redial, and a built-in speaker withvolume control.

Retail Price $346.25

Special

Wholesale

Price

$277.00*

THE "H720 MONO

This monochrome graphics card withprinter port features 100% IBM"'andHercules'" compatibility, at a fraction oftheir prices. Retail Price $9125

$73.00*

S120.00 VfltlTE'

ADAM OSBORNSPAPERBACK SOFTWARE

• Paperback Writer

• Paperback Speller

• NumberworksSpreadsheet

All three for only...

$32.00*

With the purchase ofa PC +

THE '20MB HARD DISK

Featuring a half-height IBM™PCcompatible internal 20MB disk drive,controller card, connecting cablesand installation manual. Retail $458.75

Special

Wholesale

Price

$367.00*

THE "MULTI I/O

Feature for feature, THE'"matchesthe AST"'I/O +and comes up a winner,with serial/parallel and game portsstandard, (a second serial portoptional), a clock/calendar, RAMdisk

and print Spooler. Retail Price $75.00

$60.00*

THE "EGA PLUS

With 256K standard this 100% IBM ™ EGAand Hercules Graphics compatible card isideal for high resolution graphics displayof Microsoft'"Windows, Lotus'" and

AutoCAD ™ . Retail Price 5283.75-

Special

Wholesale

Price

$227.00*

Thompson, Harriman and Edwards Computer

THE

TM

THE ' PC + COMPUTER

THET"PC + is compatible with all

business, professional and personal

software written for the IBM™PC. It will

also enhance your productivity with its

ability to switch to an 8 megahertz clock

rate, enabling you to run your software

twice as fast as the IBMT"PC.THE™PC +

also comes standard with an "AT" style

keyboard, correcting the inefficiencies

found by IBM™on their regular PC

Keyboard. 256K standard (640K optional)

on the mother board will allow you to run

memory intensive programs such as

Lotus 1-2-3, DBase III and Framework

without adding extra memory cards. Plenty

sf power, with a 135 Watt source and

ots of room for expansion

with 8 card slots is also

standard. Base unit

ncludes: 256K RAM,

Zomputer with

Dne 360K 5W Floppy

3rive, Dual Turbo Clock

Speed, 8 Expansion

slots, 135 Watt Power

supply, "AT" Style

<eyboard, Full

1 Year Warranty

and 45 Day

Vloney Back

juarantee!

<elail Price S586.25-

■pecialVholesale

$444.00*

(Monitor Not Included)

Thompson, Harriman and EdwardsComputer Products Company Ltd.

THE MOST INCREDIBLE

LIMITED TIME OFFER IN

COMPUTER HISTORY, FROMTHE ™ and PC NETWORK...

TM

"THE PC + is well builtand has enough companysupport behind it to make it_ a very attractive alternative toi'A^MlH higher-priced competition."

PC LABS FIRST LOOK/AUGUST 19H<i

\11THE

Droducts

n this

-pecial

,ale

are

offered

:hru

256K RAM,

IBM™ PCcompatible,

360K 5.25"

Disk Drive,

Turbo Speed,

»»

MH

»i i j i i

\\\

PC Network

*M1 prices in this ad are wholesale—PC NetworkMembers pay wholesale + 8% and shipping.

CALL TOLL FREE B3N9

(800) 621-SflVE

In Illinois (312) 280-0002

AT StyleKeyboard

Special Wholesale Price

$444.00*

$469.00* for 640K System

Products Company Ltd.

Dealer Inquiries Call THE'"at (312) 642-9626319 West Ontario Street, Chicago, Illinois 60610

NETWORK

BUY HARDWARE AND SOFTWARE AT WHOLESALE + 8%,AND GET 14-30 DAY SOFTWARE RENTALS1...

Listed below are just a few of the over 30,000 products available at our EVERYDAY LOW PRICES!The Network carries products for Apple, IBM, CP/M and most other popular computer families.

GAMES & EDUCATIONAL SOFTWARE FOR YOUR APPLE // & MACINTOSH

(Please add $1 shipping and handling for each Ittle ordered from below.)WholesaleS65.00-

Miles Computing Mac Attack-Mac OnlyPalatlr Mac Type-Mac OnlyPenguin Graphics Magician

Penguin PensateXyphus Transylvania-Mac Only 20.00"

Professional Software Trivia Fever 19.00"

Pryorlty Software Forbidden Quest 21.00"

Scarborough Master Type 19.75"

Scarborough Run lor the Money 26.00*

Simon & Schuster Typing Tutor III 28,25"

Sir-Tech Wizardry 26,97'

Sir-Tech Knight of Diamonds or Rescue Raiders 18

Arrays Home Accountant-Mac Only

Axion Art Portfolio & Card Shoppe 31.00'

Bluechlp Baron.MillionairejTycoon 28.99'

Broderbund Lode Runner 17.25'

Broderbund Choplifter 17.00'

Broderbund Print Shop 24,75'

Broderbund Dazzle Draw 31.97'

CBS Mastering the GRB 53.50'

CBS Murder by the Dozen 20.97'

CBS Goren Bridge Made Easy 45.00*

Counterpoint The News Room 26.97'

Davidson Speed Reader II 31.00'

Davidson Math Blaster or Word Attack! 21.50'

1st Byte Smooth Talker-Mac Only 44.00'

Haydon DaVmci-House lntehors<Landscapes 23.00'

Hayden Sargon III 24.75'Infocom Deadline or SuspendedInfocom Enchanter. Planetfall.Cutthroats. Witness or Zork IInfocom Hitchhiker's Guide or SeastalkerIntocom Suspect. Sorcerer. Infidel. Zork II or IIILayered Front Desk-Mac OnlyMirage Concepts Trivia

BUSINESS SOFTWARE FOR YOUR APPLE II & MACINTOSH(Please add S2.50 shipping and handling for each title ordered from below,)►Apple Apple Works S160.00' MECA Managing Your Money

Assimilation Process/Mac Memory Disk 17.75*

Borland International Turbo Pascal or SideKick 37.50*BPI GL AP. AR. PR or INV 190.00'

35.25*

WholesaleS22.00*23.50*28.97'

Subloglc Night Mission PinballSubloglc Flight Simulator II►Spinnaker Alphabet .i*v. Fjw M.iheihm^ier Camp, hey Diddle DiddleRhymes & Riddles. Story Machine24.00" ►Spinnaker Most Amazing Thing Delia Drawing19.75" ►Spinnaker Delta Drawing

T/Maker Click Art-Mac Only19.75' Warner Desk Organizer21.75* Vldex Fun Pack-Mac Only65.00' Vldex Mac Checkers & Reversal21.00' Virtual Comblnatlcs Micro Cookbook

19.25"27.25*

15.25'

20.77"20,75"25.00'65.00'19.25*25.17'17.50'

Broderbund Bank Street Writer

Central Point Copy II Plus or Copy II Mac 16.25'

Funk Software Sideways 26.50'

Funsott Macasm 60.00*

Haba Habadex 40.00*

Harvard Mac Manager 29.95'

Human Edge Mind Prober 21.00*

Human Edge Sates Edge 21.00"

Human Edge Communication Edge 98.00"

►Living Videotex! ThmkTank-Mac Too' 65.00"

Main Street Filer-Mac Only 67.00"

HARDWARE FOR YOUR APPLE // & MACINTOSH

(Please add shipping and handling charges found In italics next to price.)

S92.00"

Microsoft Word Rfffl Mullipl.ui tor Macintosh 97.50"

Microsoft Excel for Macintosh 197.50'

Microsoft Basic for Macintosh 75.00"

Microsoft Charl for Macintosh 62.50*

Monogram Dollars & Sense for Apple II 55.00"

Monogram Dollars & Sense tor Macintosh 71.99'

Odesta Helix for Macintosh Reg's 512K 200.00"

Provue Oven-ue-Mac Only 130.00'

Sensible Software Sensible Speller IV 67.50'

Softcraft Fancy Fonts 109.00"

Softech Microsystems UCSD Pascal 37.00*Software Publishing PFS File. Write, or Graph 61.00'

Stoneware DB Master-Mac Tool 90.00*

Telos Filevision for Mac 85.00"

DISK DRIVES

Apple MAC 800KB External Drive 5349.95'

►Haba 800KB Double Sided Mac Drive 215.00'

lOmega Macnoulli 5MB Removable 999,00"

Dnve for Macintosh

lOmega Dual 10MB Bernoulli tor Mac 1,805.00"

with SCSI Port

Micro Scl AS 143KB Drive 150.00'

Just like Apple's Own

Micro Scl Floppy Controller 55.00"

► Paradise Mac WMB Hard Dnve 525.00'

Hard Drive Subsystem

► Paradise Mac 20MB Hard Dnve 745.00'

Hard Drive Subsystem

► PC Network 140K External Drive 95.00"

tor Apple lie

► PC Network hlOK Dnve lor Applelle 95.00"Tecmar 5MB Removable Drive for MAC 999,00'Tecmar 10 MB MAC Drive 999.00"

BOARDS AND BUFFERS

AST ' MultilO-2 Serial.Clock S155.00'

Microsoft Premium Sottcard lie 243.67*

Microtek DumptingGX 55.00"

Orange Micro Grappler + 66.00'

Orange Micro Serial Grappler 66,00'

PC Network Z80 Card 35.00*

Quadram APIC'G Graphics Interface 62.00'

Quadram E RAM-80 88.00'

Quadram Multicore-1 Parallel 140.00'

1 Serial/Clock Expandable to 256K

Thunderware Thunderclock 104.00"

Titan Technologies Accelerator lie 207.35'

(7.SO)121.58)(38.99)

(5 00)

(2 50)'11.34)

(16 09l

(2 501

12.05)(21.53)(21.58)

(2.50)(2.50)(2.50)(2.50/(2.501(2.50)(2.50)(250)(2.50)

(2.501(4.48)

MODEMS

Hayes Micromodem lie w,Smartcom S125.00' (2.50)

Novation Apple Cat II 174.45* (3.50)

Prometheus 1200 A 225.00" (6.00)

Low Cost 1200 Baud Internal Modem for Apple II

PromelheusPromodem 1200'MacPack 299.00' (6.00)

Prentice Popcorn MacPack 219,00* (2.50)

1200 Baud Modem. Cable Straightalk

ACCESSORIES

Apple Macintosh Carrying Case S69.00* (1.491

Apple Macintosh Security Kit 29.00' (1 50)

Curtis Ruby Surge Protector 39.00' (1.501

Hayes Mach til Joystick 26.50' (1.50)

w.'Fire Button for lie

Kensington Dust Cover tor MAC 7,50' (1.50)

or ImageWriter

Kensington Starter Pack 49,00' (3.00)

Kensington Surge Protector 29.50' (2.50)

Kensington System Saver Fan 56,97' (1.50)

►Koala MacVovon 150.00' (3001

Koala Koalapad Touch Tablet 78.00* (1.50/

M&R Sup-R-Mod RF Modulation 44,00" (1.50)

PC Network Cooling Fan with Surge 25.00* (2.50)

Protector & Dual Outlets

PC Network SSDD Diskettes (Box ot 10) 7.95' (1.00)

PC Network Macintosh Diskettes 12.50' (1501

includes Free Flip & File Case

These Diskettes are Guaranteed (or Lite!No Generics!

Sony Mac Diskettes (Box o( 101 19.00" (150)

Thunderware Thunderscan 155.00' (3.35)

MONITORS

Amdek Video 300G Composite Green S110.

Amdek Video 300A Composite Amber 120.

Amdek Video 310A IBM Type Amber 130.Amdek Color 600 NEW'High Res RGB 365.

Amdek Color 722 Enhanced Graphics 424.

Magnavox 12'TTL IBM Type Amber 79,

A great looking,performing monochrome

NEC SC-1401 Multisync RGB 480.

Princeton HX-12 RGB Monitor 399.

Princeton HX-12E CGAorEGA Monitor 445.

Princeton MAX-12e 138

Works with Color or Mono Card

Quadram Amberchrome 12" 771 125

Non Glare-Slow Phosphor

Taxan 630 High Res RGB Monitor 383.

Taxan 640 Highest Res (740x400) 439.

Currently Available—Works with Persyst

BOB Card & the AT&T Computer

Zenith ZVM 1230AHighResNonGlare 81.

Wholesale

0* (3.001

0* (3.001

0* (3.00)

0* (7.88)

0* (9.16)

0* (5.00)

MEMORY CHIPS

(All Memory Chips Guaranteed for Lite!)

Wholesale

► 64K Memory Upgrade Ktll

Out

>' il:-

'.■li'.'f'

oo-

(10.37)

00" (8.60)

00' (9.61)

00" (5.001

00" (2.70}

00" (8.27)

00* (10.691

►64K Dynamic Ram Chips tEachi►256K Dynamic Ram Chips (Each!► 128K IBM AT Mother Board Chips (Each)►Intel Co-Processor

3.50'

99.50"

(1 001(100)12 151

EXTERNAL MODEMS

Anchor Signalman ExpressAnchor Lightning 2400Hayes Smartmodem 300Hayes Smartmodem 1200■Hayes Smartmodem 2400Prometheus Promodem 1200

S205.00"309.00"125.00'340.00"525.00"276.00"

(5.001(2.501(5 001(5 00)(5.00)(6 00)(5.00)(4.00)

U.S. Robotics Conner2400BPS Modem 345.00

U.S. Robotics Password 172.00'

ALL I HI MODEMS ARE 100°. HAYES COMPATIBLE

nil '200 Com Externa) 129.00- t2S8

nil 2400 Com External 277.00' (B.S4,

TERMS & CONDITIONS

■PCNETWORK-Members pay just 8% above the wholesale price, plus shipping. All prices relied a 3% cash discountMinimum shipping S2.50per order. Internalional orders call for shipping S handling charges Money Orders, personaland company checks please allow 10 working days to clear All prices subject tochnnge without notice!

tRENTBEFORE YOU BUY-Members are eligible lo|Oin Ihc NETWORK'S Business and Game software Renlal Librariesand evaluate products (or a lull 14 (Regular) or 30 (VIP) days losee if it meels your needs And The NETWORK'S rentalchargesare tar less than other soltware renlal services-Just 20% OF THE MEMBER WHOLESALE PRICE Rental titlesavailable in IBM/Apple/MAC and CP/M Formats. Hardware prices highlited oy ► reflecl recent major price reductions

GAMES & EDUCATIONAL SOFTWARE FOR YOUR IBM

(Please add S1 shipping and handling for each title ordered Irom below.)

Wholesale

ATI Intro to PC DOS Vol. 18. II or BASIC $23.00'

Bluebush Chess (Your Toughest Opponent) 34.00'

Bluechlp Millionaire Oil Baron or Tycoon 28.99"

Broderbund Lode Runner 17.25'

CBS Goren Bridge Made Easy 40.00"

CBS Mastering the SAT 50.00"

CDEX Training for Wordstar 37.25*Comprehensive Intro to Personal Computing 26.50'

Davidson Math Blaster. Word Attack! 21.50'

Davidson Speed Reader II 31.00*

Hayden Sargon III 24.00'

Individual Professor DOS 29.75'

Individual The Instructor 24.50'

► Infocom ZotMlOtWito&m 19.-75*

WholesaleS24.00"27.00"59.95*

► Infocom Deadline or SusoenoeilMicrosoft Flight SimulatorMouse Systems PC Paint—Turn your PC

Into A Color Macintosh!

Scarborough Master Type

Sierra On-Line Crossfire

Sierra On-Line King's Quest II

Spectrum Holobyte GATO 1B.00'

►Spinnaker Alphabet Zoo, Kinder Coinp. 15.25'

Story Machine Face Maker Hey Diddle. Diddle

Rhymes & Riddles

►Spinnaker Delta Drawing or Most Amazing Thing 20.75'

Subloglc Night Mission Pinball 19.25

Virtual Comblnatics Micro Cookbook 21.00'

19.75"

24.75"

BUSINESS SOFTWARE FOR YOUR IBM

(Please add S2.50 shipping and handling for each title ordered from below.)

►Ashton-Tale DBase III oi Framework II

Borland Turbo Pascal

Borland SideKick (Protected!

Borland SuperKey

BPI G'L. A-R or A'P

BPI Personal Accounting

Breakthrough Timeline►Central Point Copy II PC

Computer Associates Supercalc IV

Conceptual Instruments Desk Organizer

Digital Research Gem Desktop

Digital Research Gem Draw

Enertronics Energraphics

FGS Fastback

Funk Software Sideways►Harvard Harvard Project Manager

Harvard Total Project Manager

► Hayes Smatlcom II-New VTtOO Emulator

► Human Edge Management Edge or Mind Pro\Infocom Cornerstone

Llfetree Volkswriter III►Lotus Development Lotus 1-2-3MDBS Knowleclgeman/2MicroPro Wordstar 2000

S365.00' MicroPro Wordstar 2000 +35.00' MIcroRlm RBase 500024.50" Microsoft C Compiler34.50* Microsoft Word-Latest Version 3.0262.00" Microsoft Muttiplan43.75* Microsoft Mouse203.00" Mlgent Ability20.00" Monogram Dollars & Sense239.95" ►Muliimate Mutbmate (Latest Vemk>n)47.00' Norton Norton Utilities 3.125.00' Open Systems PO Sales A<R INV GL117.00' A'P Team Mgr. - Ver. 3.X

143.00' Power Base Power Base85.00* Real World GL A>P A'R or OEINV32.00' Rosesoft ProKey Version 3175.00" Ryan McFarland RM COBOL (Dev. System/225.00* ► Samna Samoa III Word Processor68.00" ►Samna Word +Bt 24.00' ►Satellite Software Word PerfectSoftcraft Fancy FontsSoftware Group EnableSoftware Publishing PFS:File Wrile.GraphSoftware Publishing PFSiReport

65.00"

126.50"270.00"229.00"209.00"

5250.00"285.00'

205.00*202.00"101.00*107.00"55.00"85.00"160.00"43.00'ea.395.00'

200.00"ea.350.00'65.00*520.00'207.75"340.00"180.00"125.00*293.00"68.00*59.50"

HARDWARE FOR YOUR IBM

{Please add shipping and handling charges found in Italics next to price.)

DISK DRIVES MODEMS

►lOmega Bernoulli Box SI,710.00*

Dual WMB Drives►PC Network WMB INTERNAL t-2 299.00"

Hafe/n Autobeel Dnve /Veil tower priesPC Network WMB Tape Backup 395.00'

Same unit used in Compaq's DeskPro!PC NelworkAT42MB Internal HD 1.050.00"

35MS Access Time-Comes CompletePC Network 20MB Tape Backup 495.00*

Halt Height Internal w controller

► PC Network Hail Height DSDD Drives 78.00*►Tandon TM-100 120.00"

2 Full Height DSDD Drives►THE" 20MB Internal t 2 Height 367.00'

Autoboot Drive By Seagate or Microscience

MULTIFUNCTION CARDS

Apparat AT Ram Expansion CardAST SixPakPremium "2MB Mulli.OK►AST SixPekPlUB 'with64l<AST ■ UO Plus II "AST' Advantage tor AT"'Everex Magic Card 64KQuadram Gold Card

384K Multitunclion'Color Card w/OKTecmar Captain Multi Card w/OK

► UN 576K Pius Memory Board wOK►THE " Multi 384 A functional done

qIASTb StoPakPtus

Includes up (0 384K ol expansion memory

l serial. 1 parallel. 1 game port.

a dock calendar and 3 software standard

► I Hi: Multi IfO Plus II Clone 60.00'

Ser.Par. Game Clock standard

136 941

(6 46)

(B.941

(24.95)

(10.691

(1681(2 20)

S139.O0*

(2 50)

315.00'

(2.50)

139.00'

12.501

120.00'

(2.50)

325.00"

(2.50)

160.00'

(2.50)

340.00'

(2.50)

109.00'

(2 50)

37.00'

(2 50!

72.00'

(2 50)

Hayes Smartmodem 1200B 5305.00* (2.50)

with New Smadcom II VT100 Emulator

Hayes Smartmodem I200B Alone 265.00' (2.50)

Prome\r\euBPromodeml200Bliitemal 225.00* (2.50)

►Till: Internal 1200 12008PS Modem 119.00" ffififlj

Lowest Cost Hayes Compatible w.'FREE PC Talk II

VIDEO CARDS

Hercules Color Card w/Parallel Port SI 26.00'►Hercules Monochrome Graphics drd 162.00'

Orchid Turbo EGA Caid 610.00"

Paradise Modular Graphics Ca<d 219.00'

Quadram Ouad EGA -t Enhanced 323.00"Graphics Adapter

► I III: EGA Plus EGA Clone 227.00*

with 256K A printer port

► I1II-,' H720 Mono Mono Graphics 73.00*

with parallel port 100rc Hercules Compatible1►THE Color Card 60.00"

t0O% IBM Compatible'

ACCESSORIES

► Brand Name DS'DD Diskettes S7.95' (I 00)

Guaranteed hr Life' Not Generic'

► DS/DD Bulk Rate Special each .54'

Packaged in 50 with sleeves and labelsGuaranteed lor Life'

► PC Network Replacement 130 Walt 79.00" (5 00)

IBM-PC Power Supply-Gives your PC the sameCapacity as an XT Good lor add in Tape Drives(without need lor a piggyback unit) ana largecapacity disk drivesSMAPCDocumate. Keyboard 9.99"ea. t' 00)

Templates for Lotus DBase Multimate and others

12 50)

(2 50)12 501(2 50)

(2.50)

\2S0)

(2.50}

COMPLETE SYSTEMS

Apple Macintosh Base System►Central Point (JUST 128

Apple lie and lie CompatibleAT4T 7300 Unix PC

WMB Hard Disk-1 Floppy 512KCOMPAQ DeskPro w256K

1 Floppy'WMB Hard Disk

► Citizen MSP-10 NEW!

16OCFS aocot. Frit i Trac►Citizen MSP-16 NEW'

160CPS 132COL Fnc + Trac

► Citizen MSP-20 NEW'

200CPS BOCOLFric * Trac

► Citizen MSP-?5 NEW'

SOOCPS l32COLFnc + Trac►Citizen Premiere 35 NEW

35CPS Daisywheel 132COL.Fric -Citizen 120-D 125CPS W'Trac

► Epson IX BO IOQCPS80COLLQ

► Epson FX 85

► Epson FX 296 NEW'

► Epson LO '000 NEW

ISOCFS-60CPS NLOEpson SO 2000 Inkjet PrinterEpson DX 35 35CPS LO Model►NEC J'.l'O 20CPS LO Parallel

► NEC 2050 20CPS Letter Quality

CALLS355.0Q"

3,699.00'

1,805.00'

► COMPAQ Hard Disk Portable SI.835.00"

20MB Hard Disk 1 Floppy 255K^■\BMPCBaseSystem2SDD FDC 256K 1.025.00"IBM PC Professional Hard Disk 1,392.00"

IBM PC AT Base System-1 2MB 2,875.00'

Floppy,256KIBM AT Professional System CALL

1.2MB Floppy20MB Hard Disk 1 Ser-1 Par.512K

PRINTERS

(79.90) |(38.99)

(22 14)

(62 101

S225.00'

(4.861

340.00'

(7 34)

299.00*

(6 46)

435.00'

(9 401

420.00'

19 071

Trac

169.00"

(3.63)

225.001

i-: Sol

345.00"

(7 45)

505.00-

11091)

CALL

1,453.00"

(31.38)

590.00'

(12.74)

605.00'

(13.05)

570.00'

(13 00)

► NEC 3530 33CPS LO Parallel

► NEC 3550 33CPSLQ►NEC 8850 55CPS

NEC PinWriter P-7 180CPS 132COLOkidata ML 182 New 120CPSLQ

Model Fric IBM Graphics & MoreOkidata ML 192 Nevj Sleek Design

160CPS'LO Fric IBM GraphicsOkidata Color 20 80CPSW0 +

ColorsLOIBM Graphics & More

(Requires Interface)Okidata ML 193P 60CPSOkidata IBM Interface

for Okidata Color 20Okidata ML B4P 200CPS 132COLOkidata 2410 P Pacemark 350CPSPanasonic KX-W91 1207522CPSPanasonic KX-1092 WOCPSwTractoiToshiba P341 210CPS 132COLToshiba P351 P 5 288CPS 132COL

S888.00'920.00-

1.330.00'535.00"188.00"

299.00'

(19 18)

\ir.B7)

(28 73)(1156)(4 06)

(6 46)

425.00-

(9 18)

69.00-

1150)

599.00'

(12.94)

CALL

220.00-

(4 751

329.00*

(7 11/

699.00'

(15.09)

986.00'

(21 34)

Copyright © 1985, PC NETWORK. INC.

Prices subject to change without notice.

COMPLETE SYSTEMS

(Optional local warranty service available in most major metro areas)

IBM PC BASESYSTEM

IBM PC W/256K

Floppy Drive Controller

2 Double Sided Double

Density Disk Drives

Mix and Match with

your Favorite Monitor

and Printer!

$1,025.00*

CUSTOM

CONFIGURATIONS

WELCOME

IBM PCHARD DISK SYSTEM

IBM PC W/256KFloppy Drive Controller1 Double Sided Double

Density Disk DriveHalf Height Hard Disk

$1,467.00*

i»n

CALL FOR

LATEST IBMANNOUNCEMENTS

PORTABLEHARD DISK SYSTEM

256K/1Floppy/20MB Hard Disk

comma

$1,910.00'

DESKPRO SYSTEM

256K CPU/1 Floppy/Hard Disk

$1,999.00*$1,910.00*

W/30MBW/20MB

64K IBM PC MEMORY EXPANSION KITSQuantity Discounts Available.

Guaranteed for Life! Mm a9_\

***

$7.75*

Set of9 Chips

DISKETTES

Guaranteed for Life!

31/2"SS/DD

Bx. 10

$12.95*

Free Flip& File Case

1/2 HEIGHT DS/DDDISK DRIVES

The Network buys directand makes fantastic dealswith manufacturers like MR/

Tandon/CDC/Shugart/Qume/TEAC and others to bring you

fantastic prices on Name

Brand drives for your PC/AT/

XT/jr/or Compatible.

$78.00*

(Juantity Discounts Available

0 Lotus

$275.00

INTERNAL PC HARD DISK

Low Power/Automatic Boot. Works on standard PC's

and Compatibles. Includes drive/controller/cables/

mounting hardware and instructions.

%

Full one year warranty'10MB

$299.00*

20MB

$367.00*

Quantity Discount Available

\AbrdFferfect

$180.00*

MultiMate"

ea.

'Members pay 8% above this wholesale price plus shipping.CALL TOLL FREE 1 -800-621 -S-A-V-E (£SS&)

In Illinois call (312) 280-0002 Validation code: B396

Customer Service and Order Status (312) 280-1567

TM & R-Registered trademarks of IBM/COMPAQ/APPLE/AST Researcti/LOTUS/Mult.mate Int../IOMEGA

NETWORK

SEE WHY OVER 150,000 HAVE JOINEDMAKING US THE NATION'S #1 SOURCEFOR EVERYTHING IN COMPUTING» Our 600 Page Wholesale Catalog

Over 30,000 products priced at Wholesale + 8%. Anythingyou will ever need at a Consistent low price...

Quarterly Catalog Updates

Your Catalog is never obsolete! Ket

Keep on top of the newestproducts and latest price changes.

• The Printout

Our newsletter gives you fantastic specials alog withunbiased analysis of new products and industry trends.

• 10 Day Returns on any Hardware!!

If you don't like any hardware product—for any reason—return it for a refund.

• 1000 + Title Rental Library

14 to 30 day rentals on over 1000 different titles.Try before you buy!!

• Size. Strength and Stability

The Network Has over 150 employees. 45,00 squarefeet of office and warehouse space, inventory valued inexcess of $15,000,000 and is ranked the largest computerproduct supplier in the nation! Our commitment is to serveour customers and our 90% repeat business rate is proof!!

• Online ""Bulletin Board

Download "Freeware" from the nation's largest singleconcentration of Public Domain software available! Get tiedinto the nation's largest technical information network! Placeorders, get tech support or contact customer service from theNetwork's Online, "not just a bulletin board but a completecustomer information network.

Yl

a\ p1

V ki

CALL TOLL FREE1-800-621-S-A-V-E

{Orders—Membership and Advice!)

In Illinois call (312) 280-0002 „,„.Your Membership Validation Number B JS"You can validate your membership number and. if you wish,place your first money-saving order over the phone by usingyour VISA, MASTERCARD or AMERICAN EXPRESS. Ourknowledgeable sales consultants are on duty Mon.-Fri. 8:00AM to 7:00 PM, SAT. 9:00 AM to 5:00 PM CST. ^< \,

. PERSONAL COMPUTER NETWORK *■

\ 320 West Ohio1 Chicago, Illinois 60610Call now...Join the PC NETWORK and start saving todayCustomer Service and Order Status (312) 280-15678:30 AM to 4:30 PM, Mon.-Fri. CST

PC NETWORK • MEMBERSHIP APPLICATION

YES! Please enroll me as a member in the PC Network1" and send mycatalog featuring thousands of computer products, all at just 8% aboveDEALER WHOLESALE PRICES. I will also periodically receive "THEPRINTOUT," a special up-date on merchandise at prices BELOW eventhose in my wholesale catalog, and all the other exclusive money-saving services available to Members, 396 I

I am under no obligation to buy anything. My complete satisfaction isguaranteed. Please check {^) all boxes that apply:

Basic Membership

with optional 14 Day Evaluation.

Q One-year membership for $8D Two-year membership for$15 (Save $1)

□ Business Software EvaluationLibrary for $25 add'l. peryear—with 14-day returns

D Games Software EvaluationLibrary for $10 add'l. per year

□ Bill my credit card: D VISA

Special V.I.P. Membership*with optional 30 Day Evaluation.

O One-year membership for $15

□ Two-year membership for $25(Save $5)

□ BOTH Business and GameSoftware Evaluation Libraries for $30add'l. per year-with 30 day returns"V LP members may receive

advance notice on limited quantitymerchandise specials□ MasterCard D American Express

AccountNumber:

Exp. Date_

D Check or money order enclosed for $

Name

Address

City State

Telephone j )

Mycomputer(s)is:OIBMPC DIBM-XT DIBM-AT D Apple H□ Macintosh O Other

_Zip_

Signature-

(Signature required to validate membership)

Inquiry 266

BYTE

Features

Product Preview: IF THE VIOLATION of private electronic communication is a subject that

LabVIEW: Laboratory Virtual arouses your ire, Steve Ciarcia's article on data encryption will interest you.

Instrument Engineers Workbench Fortunately, there are ways to prevent electronic Peeping Toms. The Circuit

by G. Michael Vose and Gregg Whams....84 Cel|ar data encryptor is easy to understand, easy to build, and easy to use,

Ciarcias Circuit Cellar: but it is very difficult to break. When Steve began this project, he knew little

fsw? a™™*™ °ATA Encrvptor 97 about the subject. Because many of you probably share this lack of knowledge,

eve maa Steve presents more background material than he ordinarily might.

Calculating CRCs'byBits and Bytes ln this month's Product Preview, BYTE senior technical editors G. Michael

r G Morsg H4 Vose and Gregg Williams provide an advance look at LabVIEW, the last four

", letters of which stand for Virtual Instrument Engineering Workbench. The Na-

Programming Insight: , , , , . ■ . " i

Breaking Out tional Instruments product enables scientists and engineers to create virtual

by Edward Batutis 127 instruments that turn the Mactinosh into a general-purpose laboratory tool.

Keyed File access in BASIC "Calculating CRCs by Bits and Bytes," our Programming Project for

by Stephen c. Perry 137 September, explains how to use the XOR function to implement modulo 2

Real Time Under Real Pascal division when calculating cyclic redundancy checks. Author Greg Morse pro-

fey lames Feldman 145 vides a lucid description of his method for those who have difficulty under-

^^^^^^^ standing the math behind CRC calculations.

When Edward Batutis discovered that the DEBUG program provided withIBM PC-DOS had no break-out switch, he devised a program to provide thecapability. "Breaking Out," this month's Programming Insight, explains theroutine.

Maintaining data on disk can be a challenging aspect of programming forbeginners and experts alike. In "Keyed File Access in BASIC," Stephen C Perrypresents several BASIC routines that provide fast and efficient keyed accessto data files.

Our last feature, "Real Time Under Real Pascal" by James Feldman, explainstwo ways to interface a machine language routine to Pascal. Such a techniqueis useful for those rare times in a high-level program when you must descendinto the depths to achieve timing, communications, or any other operationfor which machine language is the sine qua non.

SEPTEMBER 1986 ■ BYTE 83

PRODUCT PREVIEW

LabVIEW:

Laboratory

Virtual

Instrument

Engineering

Workbench

Aw executable

block-diagram

environment exploitingMacintosh graphics

Editor's note: The following is a BYTE prod-uct preview. \t is not a review. We providean advance look at this product because wefeel that it is significant. A complete reviewwill follow in a subsequent issue.

Scientists and engineers donot deny that computersare important tools in thelaboratory. However, theyoften wish they didn't have to becomecomputer wizards to exploit thepotential of the computer. Extendingthe graphics power of the Macintosh,National Instruments' Laboratory Vir-tual Instrument Engineering Work-bench (LabVIEW) offers a computerprogramming environment that close-ly resembles the way scientists andengineers work. Using graphic frontpanels controlled by executable blockdiagrams, LabVIEW gives laboratoryusers a way to create virtual instru-ments that turn the Macintosh into a

general-purpose laboratory tool.

LabVIEW requires a 512K-byte Mac-intosh and costs $1995. It works withstand-alone instruments connected tothe Macintosh's serial port, and it sup-ports National Instruments' $595GPIB-MAC interface box and the$1495 MacBus box (see the text box"Using LabVIEW in the Real World" onpage 92).

The intended user base for Lab-VIEW includes engineers and scien-tists with no programming experienceor limited experience with a simplelanguage like BASIC. The componentsof LabVIEW are the front panel andblock-diagram panes for the creationof virtual instruments; a graphic pro-gramming language for building frontpanels and block diagrams; mecha-nisms for connecting virtual instru-ments to one another and for linkingthem to existing C, assembly lan-guage, or FORTRAN code modules;built-in I/O functions for reading andwriting data to disks or communica-tion ports; and built-in functions forstatistical and matrix operations.

Virtual Instruments

A virtual instrument (abbreviated as"instrument" for the rest of the arti-cle) in the LabVIEW system consistsof two items: a front panel and a

block diagram. The front panel con-tains the input and output controls(e.g., dials, switches, and outputscreens) that represent the data com-ing into and going out of the instru-ment (a control's appearance changeswhen the user manipulates it). Theblock diagram contains the programthat the instrument executes. Eachcontrol is represented by an icon inthe block-diagram window, and theprogram appears as a collection of"black box" icons connected in logic-diagram fashion (see the right half offigure 1). If an instrument is to be usedinside another instrument, it must alsohave an instrument icon, which allowsthe smaller instrument to be used asa black box in the block diagram ofthe larger instrument.

A Simple Example

We will demonstrate the LabVIEW sys-tem with a simple example. Let's say

84 BYTE- SEPTEMBER 1986

by G. Michael Vose and Gregg Williams

we want to generate, graph, and storesets of random data points in therange of (0, s). (We can store multipleruns of data with the instrument andrecall them later, perhaps for use astest data for another instrument.)

Before we start planning the exam-ple itself, remember that the random-number function supplied with Lab-VIEW generates numbers in the range(-1, 1). We need a separate virtual in-strument that scales a number fromthe range (-1, 1) to (0, s), where s isan arbitrary positive scaling factor.Our first task, then, is to create a scal-ing virtual instrument.

lb create a virtual instrument thatscales a number from the range(-1, 1J to (0, s), we first have to under-stand how we are going to calculatethis transformation. If we think of thenumber as a signal to be processed,we might come up with a block dia-gram for our virtual instrument likethe one in figure 2.

First we must add the appropriatecontrols to the front-panel window(see the left half of figure 1). In stan-dard Macintosh fashion, we call theseitems up from menu selections in theControls menu and the dialog boxesthat subsequently appear. By clickingon the open-hand icon in the toolpalette at the top of the display, thecursor changes to the hand shape,called the Grabber, while it is in thefront-panel window. We can thenmove (and in some cases resize) thesecontrols by using the Grabber. In thisexample, we use a slider switch to rep-resent the input number to be scaled,an input-only digital readout for thescaling factor s, and an output-onlydigital readout for the scaled result.

When we add controls to the front-panel window, the block-diagram win-dow (which appears when you ex-

ecute Open Diagram from the Filemenu) gains corresponding icons. Wecreate the instrument's design in theblock-diagram window in figure 1,using icons called by the Functionsmenu. Again, we use the Grabber tomove icons, and the wiring tool (thespool-of-wire icon in the top row) todraw the connections between icons.The scaling instrument is now com-plete. We can test it by using the oper-ate tool (pointing finger) to move theslider switch (thus changing its value)and edit the scale value. When weclick on the Go icon on the menu bar,LabVIEW executes the program de-fined by the block-diagram windowand puts the result in the front-panelwindow. Note that the input value 0,

which is in the middle of the interval(-1, 1), translates to 5 on a scale of(0, 10).

The two remaining tools in the toolpalette are the labeling tool, which isan I-beam cursor acquired by clickingon the large A icon, and the magnify-ing-glass-shaped help tool, which dis-plays tutorial information on whateverfeature of LabVIEW it is used to clickon.

This instrument can be saved, re-called, and run as is. However, wemust do one more thing to use it in-

(continued)G. Michael Vose and Gregg Williams aresenior technical editors for BYTE. They canbe contacted at BYTE, One Phoenix MillLane, Peterborough, NH 03458.

File Edit Format Controls furuUoftS

Scale Number Ul Panel

6

Output

Input Value

10

Scaling Factor

EI

]'

$

o

m

*0

EK

^NationalI Instruments

Scale Number HI Diagram

Input Value(-1,0

CEH

(0,2)

Scaling Factor s

(Numbers in parentheses indicate thevalid range of a number at a givenpoint.)

Figure 1: The Scale Number virtual instrument. The left half of this figurecontains the front panel for this instrument: it contains two input variables, orcontrols, and one output control. The block diagram in figure 2 translates directlyto the block diagram shown in the right half of this figure. The \nput Valueslider switch (dashed line) is associated with the upper left corner (blackened) ofthe instrument's icon.

SEPTEMBER 1986 -BYTE 85

LABVIEW

side other instruments: create adistinctive icon for it. Through selec-tions in the Format menu, you candraw an arbitrary icon, divide its areainto rectangular regions, and associ-ate each region with an input or out-put control. Then within a larger in-strument, wires that connect to theseregions will be taken as sending or re-ceiving values consistent with the cor-responding controls.

The screen dump of figure 1 wastaken while the connection points onthe scaling instrument's icon were be-ing defined. The icon is representedhere by the dark square in the upperleft corner of the front-panel window.At this particular moment, the upperleft corner of the icon (blackened) isassociated with the slider switch (out-lined with dashes). The finished iconfor the scaling instrument, visible infigure 3, has two inputs, labeled INand SCA (scale), and an outputlabeled OUT.

Building the GraphingInstrument

The construction of the final instru-ment, which generates the randomnumbers and scales and graphs them,proceeds similarly to that of the scal-ing instrument. (The data can besaved in a step unrelated to the instru-ment definition.) We begin by creat-ing an input control for the numberof points to be generated (e.g., a dif-ferent kind of slider switch), an input-only numeric window for the scalingfactor, and a graphic-output window

(see the left half of figure 3).

The block-diagram window containsseveral new items. The icon markedIN/OUT/SCA represents the scaling in-strument we just designed. The iconwith the graphed points is anotherpredefined instrument that takes a listof numbers, pairs the entries with the

numbers 0, 1, 2 and outputs

them as a composite structure of data(note the thick striped line) suitablefor use by the graphic control. Thetriangle with the two dice in it is therandom-number-generating function.

The most important item in theblock-diagram window is the largebox that looks like a stack of sta-tionery; in the LabVlEW system, thisrepresents a FOR loop. The contentsof the box will be executed a setnumber of times. The box labeled Ndetermines the number of iterations(here it receives its input from theNumber of Points slider switch on thefront panel).

As before, to run this instrument, weset the number of data points and thescaling factor using the operator tool,then hit Go. When LabVIEW isfinished, it displays the new data inthe graphic control, automaticallyscaling both axes to fit the data.

Controls

Now that we've seen an example, let'slook at the LabVIEW controls in detail.Controls are the components of thefront-panel window that define the in-puts to and the outputs from the in-strument. Controls are input-only or

output-only, meaning that they willreceive values from the front panel ordisplay them.

We have seen numeric controls asboth input and output controls. Atany time, the user can change thecontrol's appearance, the range ofvalid values, and other characteristics.(LabVIEW also offers a strip-chartnumeric control that displays a run-ning history of the variable's values asthey scroll off to the left.) String con-trols differ from numeric controls inthat they hold character strings asvalues; they usually appear as boxeswithin which text can appear. Binarycontrols contain a simple 1-bit value;they can appear as a variety of tog-gle switches, buttons, and indicatorlamps whose appearances changewhen their states change.

Numeric, string, and binary controlsall share the ability to be multidimen-sional; that is, a single control can rep-resent more than one value. For ex-ample, an indicator lamp can be de-clared as a 2 by 4 by 3 array of binaryvalues. Such a control appears on thefront panel as an indicator lamp withthree boxes beside it that contain theindexes of the value currently beingdisplayed. By changing the values in-side the boxes, you can look at thevalues of individual elements in thearray. LabVIEW supports controls thathave up to eight dimensions.

Graphic controls are simpler; as out-put, they display an ordered set of x,ypairs as a line graph. National Instru-ments plans for the graphic controls

Data in: i

range (-1,1)

s (Desired scale factor)

Divideby2

Multiply

Add 1

range (0,1)

range (0,2)

nr\ ----- -

Data out:range (0,s)

Figure 2: Designing the block diagram. This diagram shows one way to scale a number from the range (-1, 1) to the range (0, s).

86 BYTE • SEPTEMBER 1986

LABVIEW

to have additional options in thefinished product.

The last type of control is a clustercontrol, which allows you to groupan arbitrary collection of data itemstogether so that they can be rep-resented as a single line in the block-diagram window instead of as multi-ple lines. For example, the X(i)-versus-iinstrument in figure 3 contains asingle cluster that transforms the listof X(i) data and an internally gen-erated list of i values into the datastructure that the graphic-output con-trol requires.

Compiled Instruments

The designers of LabVIEW realize thatyox*. maj need functions that cannotbe accomplished with high-level user-defined instruments. They also realizethat you may already have data ac-quisition routines written in a high-level compiled language that you donot want to give up. To meet this situa-tion, LabVIEW has the ability to linkthe parameters of a compiled subrou-tine (called, in Macintosh terminology,a code resource file) to front-panelcontrols. In this way you can tie yourroutine to an instrument icon and useit anywhere in the LabVIEW system.National Instruments plans to offerMacintosh users the ability to link toroutines written in C, assembly lan-guage, and FORTRAN, with links toother compiled languages possible inthe future.

G—The GraphicsProgramming Language

LabVIEW's programming language,called G, uses icons in place of key-words but tosses in a few texturalcompromises to overcome the intrin-sic limitations of a pictographic lex-icon. The LabVIEW programmer usesthe icons to build the block diagramsthat define the function of a virtualinstrument.

The language offers a special set offlow-of-control structures and a wiringmechanism to connect them. Thesewired structures define the flow ofdata among the parts of a blockdiagram. In addition, the languageprovides standard and special arith-metic functions plus a broad array ofspecial functions for input/output,

• File Edit Format Controls Rsn< tioos

■51331

Dl

Random Data HI Panel

O

2^

m

o

a

jfNationalI Instruments

Random Data HI Diagram

Graph

Figure 3: The Random Data virtual instrument. The Scale Number instrumentof figure 1 is visible here as the square icon marked IN/OUT/SCA. The Numberof Points input drives a FOR loop that scales a random number (the triangularicon) to the range given by the Scaling Factor input control. The instrument thencollects the data, scales it, and graphs it.

Table 1: Built-in functions in LabVIEW.

Arithmetic: +, -, *, /, "(exponentiation), min, max, neg, abs, inv, AND, OR, XOR

Comparative: =, not =, >, > = , <, <=, =0, not =0, >0, >=0, <0, <=0

Transcendental: sin, cos, tan, asin, acos, atan, sinh, cosh, tanh, log, exp, sqrt, In

String: string concatenation, substring, parse string, string to numeric, numeric tostring, string compare, string length, null-string detection, ASCII-string detection

Statistical: mean, variance, standard deviation, histogram, mode, median, moments,residues

Matrix: transposition of dimension, lesser-dimension subsets, subarrays, individualelement manipulation, dot product, cross product, matrix multiply, inversion

Curve fitting: linear, polynomial, exponential

Signal processing: FFT, inverse FFT, convolution, correlation, power spectrum,integration, differentiation

string manipulation, and scientific andengineering tasks (see table 1 for a listof specific functions available). Thecompromises to the iconic scheme ofthe language include a calculator thatpermits the use of formulas within vir-tual instruments and a provision for

linking traditional program code toexisting instruments.

Building Blocks

Computer science theorists haveshown that any algorithm can be built

{continued)

SEPTEMBER 1986 -BYTE 87

LABV1EW

successfully with three structures: aniterative loop, an IF. . .THEN. . . ELSEstructure, and a DO. . .WHILE loop.Any system with these structures canbe called a programming language.Using these criteria, LabVlEW's iconicunderpinnings can be called a lan-guage.

G provides five flow-of-control struc-tures: a sequence structure: an itera-tive, or FOR, loop: a case selectionstructure: an indefinite, or WHILE,loop: and a set of shift registers thatpermit the recursive use of the itera-tive and indefinite loops. These graph-ic structures permit structured pro-gramming in a data-flow environment.

The sequence structure of G allowsthe LabVIEW programmer to specifythe order of execution of any set ofoperations. Icons that look like framesof film (see figure 4) represent theseparate ordered steps in a series ofsequential operations. A number inthe upper middle area of each framedisplays the sequence number of theframe currently selected.

An instrument's sequence framesexecute in strict order: that is, frameone must finish execution beforeframe two can begin. Interestingly,structures within a frame, such as aFOR structure, can execute in parallelwith other such structures. Sequences,however, like nodes in a traditionaldata-flow model, cannot execute untila prior condition is satisfied, namely,the arrival of dependent data. Se-quences help, in fact, to defeat Lab-VlEW's inherent parallelism. For ex-ample, in a three-sequence instru-ment, you cannot specify that execu-tion begins with the second frame in

the sequence: execution alwaysbegins with the first frame. The execu-tion signal for the start of the secondframe in the sequence is the avail-ability of all outgoing data at theborder of the first frame.

Variables within a sequence frameare local to that frame, but localvariable data can pass from a lower-numbered frame to a higher one.

The G control structure for iterativeoperations is a FOR loop (see figure4). A pair of special variables local tothe loop hold the total number ofiterations and the value of the currentiteration, or index. It is possible topass arrays of data into an iterativeloop or to perform operations on in-divdual elements using the value ofthe index to extract values. All theoperations placed inside the icon rep-resenting the loop execute for everyiteration of the loop.

The case selection structure in Gpermits you to the execute severaloperations within the structure byusing a selector value to determinethe operation to be performed. Theselector value must be an integer be-tween 0 and n. You must use the casestructure to perform the equivalent ofIF. . .THEN. . . ELSE comparisons in G.

The indefinite, or WHILE, loop issimilar to the FOR loop with onemajor difference. Loop executiondepends on a test of a specified con-dition, usually a Boolean conditional.As with FOR loops, you can pass dataarrays into the loop. You can also passindividual array elements into an in-definite loop. Even though the Lab-VIEW manuals call this a WHILE loop,it is actually an UNTIL loop that

Programming Structures

SequenceStructure

CaseStructure

For Loop While Loop

i

LH0

(Multiple Sequences occupy (Multiple Cases occupg (N=Loop Count (Q=Recirculation Flagthe same screen area ) the same screen area) i=Loop Counter) i=Loop Counter)

always executes at least once, evenwhen the conditional is set at zero.The shift registers of G allow aniterative or indefinite loop to executerecursively. A shift-register set in-cludes a leaf node and two or moreroot nodes. You can use multiple setsof shift registers. Since many program-ming situations demand the use ofpast, or existing, data. G's shiftregisters offer a method for accumu-lating this data. The data shifts fromregister to register, with the initialvalue of the leaf node passing to thefirst root node and that node's valuepassing to the second root node.

Connecting the Parts

Since the underlying programmingmodel for G is data flow, the connec-tions between control structures, con-stants, variables, and input/outputcontrols are extremely important. Theiconic representation of the paths onwhich data flows among the G com-ponents is wire. The wiring tool isused to connect block-diagram parts.The appearance of a wire revealsdetails of the type of the data thattravels that path. For example, a thinwire represents a flow of singlenumbers, while a medium-size wirewith a hatched border represents amultidimensional array of strings (seefigure 5). A dashed wire denotes abad connection, which is a data paththat is not possible.

When G programmers connect twoG program structures together withthe wiring tool, they do not have toknow what kind of wire to use. Gchooses the appropriate data type for

(continued)

Wire Styles

Plumber

Array of Numbers

Multidimensional Array of Numbers

Boolean

Array ofBooleans

Multidimensional Array of Booleans

String

Array of Strings

Multidimensional Array of Strings

Structures

Bad connection

Figure 4: The flow-of-control structures of G, LabVlEW's underlying iconicprogramming language.

Figure 5: The wire types of G and theirassociated data types.

88 BYTE • SEPTEMBER 1986

The BIGGEST reason to buy the

FASTCOMM™ 2496 is that it

adds Top Speed for Bottom Dollar,

jf*

Here are 8 more.

The FASTCOMM 2496 is designed for PC to PC.mini and mainframe users who need all popular baudrates-9600-as well as 2400,1200 and 300. You can domore than ever before with your modem and youcan do it now!

#5

#1

... more modem for your money.

The FASTCOMM 2496 includes 300-2400baud for interactive work and play. When it comes tohigh-speed downloading—switch to 9600 baud with asimple AT command. You can transfer full diskettesof data in less than 10 minutes! Say goodbyeto excessive long distance charges!

... or choose only the speed youneed, now.

Start with either our FASTCOMM 9600 or 2400, ateven lower prices. Later, snap in additional speeds bypurchasing our FASTSNAP boards, available for boththe external or half card modem.

#6

#"% .. .with error-free reliability.» What's more, at high data rates,the modem's built-in enor detection-conection The FAHS£™*2496B

Erotocol ensures error-free transmission when phonenes get too "noisy." Constantly monitoring the line,FASTCOMM 2496 quickly bounces you back to topspeed when the lines clear. Your data remains intactand enor-free! You get optimum performance withoutthe worry!

... customize your modem to suityour needs.

With FASTCOMM's non-volatile memory, makechanges that stay. Set defaults today, even onyour remote modem using the ATY Com-mand, and you'll have them tomorrow!And whenever you autodial, FASTCOMMautomatically sets the speed of the receivingmodem to match your baud rate!

#7

... supported by popularcommunications software.

U 2 ■ ■ • y°u can choose the flexibilityft s of an internal modem.

The FASTCOMM 2496B may be the version foryou! Ideal for PC applications, this half card insertsinto any full or short expansion slot in your IBM PC,XT, AT or compatible, leaving you more room forother expansion uses.

44 A ..or choose theft *T portability of anexternal modem.

Our external version—the com-pact FASTCOMM 2496—is a superbchoice for PC terminal to main-frame applications. Its LED statusindicators and speaker controlmake for easy monitoring duringoperation.

The FASTCOMM 2496 runs with virtually any asyn-chronous communications software that can support9600 baud, including Crosstalk XVI, Carbon Copy,Respond, Relay Gold, Q Modem, Blast and SimPC 3278.

COMPARE THE ADVANTAGES FOR YOURSELF

Manufacturer

300. 1200. 2400

9600

2496

FASTCOMM

$619

$899

$999

HAYES

$795

NA

NA

NOVATION

$795

NA

NA

RACAL VADIC

$695

NA

NA

VENTEL

$695

NA

NA

UQ .. • and you get top to bottomttO service.

Call our toll-free number and your modem willbe on its way within 24 hours! If you're not totallyconvinced the FASTCOMM 2496 sets a new high inspeed, flexibility, and savings, return it within 30 daysfor a full refund.

And there's more—dial up ourFASTCOMM Bulletin Board for usertips, or our customer service repre-sentatives for support. And, if youshould ever need it, the FASTCOMMcomes with a two-year warranty.

Call 800- 521-2496, ext.18(in Virginia (703) 620-3900)today!

Fastcomm Data Corp. is an Electronic Vaults, Inc. company.

All product names are trademarks of their manufacturers.

LABVIEW

the data path based on the kind ofstructures that are being connected.G knows, for example, that plottingvalues on a graph means that the dataflowing to the graph will be at leasta two-dimensional array of numbers.

The appearance of the wires oftenchanges at the border of a controlstructure due to data transformationstaking place at the border. The valuesthat a FOR loop's operations gen-erate, for example, accumulate into anarray at the loop border, and this ar-ray of values travels along a data pathto another component. In this way thechange in the appearance of the wirefrom a thin line to a thicker line signalsthat a data transformation hasoccurred.

LabVIEW programmers have fourbasic data types at their disposal: realnumbers and arrays of reals, Booleansand arrays of Booleans, strings and ar-rays of strings, and structures that areanalogous to structures in C.

Constants, Variables, andArithmetic Functions

You load G program variable valuesinto controls on an instrument's frontpanel. The controls represent vari-ables on the underlying blockdiagram, and these values are thenused when the program, the virtual in-strument, runs. Constants functionsimilarly except that you load their

values at the block-diagram level.

Arithmetic functions in G are as richas in any other imperative language.Addition, subtraction, multiplication,and division are supplemented bycomplex functions such as exponen-tiation, binary and logical functions,transcendentals, and special functionslike square root and random-numbergeneration. Table 1 lists the full set ofavailable functions.

A calculator solves the problem ofscreen clutter for implementing com-plicated formulas or equations in G.One of the calculator's inputs takes astring containing one or more for-mulas and uses this formula string toprocess up to five numeric inputs toproduce up to four numeric outputs.The calculator is itself a virtual instru-ment, and its underlying blockdiagram can be displayed to aid in thedebugging of entered formulas.

Input/Output String,and Other Functions

The LabVIEW system's design targetsscientists and engineers as primaryusers. The system's designers have in-corporated within the G language anumber of specialized functionsaimed specifically at these users.

In addition to standard file input/output functions, LabVIEW providesbuilt-in functions to manage GPIBcommunications between a Macin-

tosh and stand-alone instruments orboard-level devices. These functionsgo beyond merely passing ASCIIstrings containing GPIB commands,providing functions to reset the bus,triggering instrument events, and giv-ing GPIB status information.

A variety of signal-processing func-tions, like fast Fourier transform, con-volution, correlation, power spectrum,integration, and differentiation areplanned in the release version of Lab-VIEW, although they were not in thesoftware we worked with. National in-struments also promises statisticaJfunctions, matrix manipulation func-tions, and curve-fitting routines in theinitial release of LabVIEW.

Caveats

When we wrote this article, there werea number of claimed features for Lab-VIEW that were not yet complete sowe cannot describe exactly how theywill work. We worked with at leastthree pre-beta versions of LabVIEWover a period of three months in com-piling this preview, the last of whichwas version 0.35. We found that themechanism for programmable dataretrieval of past instrument runs wasunreliable. The Options function forchoosing certain features of input/output controls wasn't working, andseveral of the planned built-in func-

[conlinued)

You already own a computer that can talk.

Now let it.

Meet the Votrax Family of Voice Products.

* P.C. Dial/Log

Televoice management system

Digitizes your voice

Saves and sends voice messages

Auto answer/Auto dial

Call store and forward

Message distribution

P.C. to P.C. communication

For IBM-PC, XT, AT and compatibles

* VotalkerlB&AP

Board level speech synthesizers

Unlimited vocabulary

Text-to-speech software

Voice mode selection switch

Speech filter selection switch

For IBM-PC, XT, AT and compatibles

For Apple II, HE, II Plus and compatibles

* SC-01-SC-02

Phonetic speech synthesizer chipsUnlimited vocabulary

Now you can upgrade almost any personalcomputer and make it more powerful than ever,by giving it the power of speech.

* P.S.S.&T.N.T.

Stand-alone speech synthesizersUnlimited vocabularyText-to-speechParallel/RS-232 compatibleException word tableOn-board music chipAdaptable to most computers

* VotalkerC-64

Plug in speech synthesizer

Unlimited vocabulary

Text-to-speech

Rate, volume and pitch control

Three speaking modes

Free trivia game

For Commodore C-64/128

* Software Developers Welcome

* Dealers and Distributors Welcome

1394 Rankin, Troy. Michigan 48083

1-800-521-1350

In Michigan 313-588-0341

For a voice demonstration call

313-588-2926

V

90 BYTE • SEPTEMBER I986

Inquiry 366

Introducing the 10/6 MHz Multitech 900Innovation without compromise

^T^K1|

Mnl rl Fl 1

mtinwaji

The high-performance Multitech 900is your innovative alternative in an ATsystem.

Poised to run faster.

The Multitech 900 operates at 6 or10 megahertz. With this speed ad-vantage switching from 6 to 10megahertz cuts processing time al-most in half — you spend less timewaiting for the information you needto analyze.

Bundled Soft-white display.

A high-resolution, non-glare, soft-white display and monochrome-graphics adapter are included withyour Multitech 900 — not pricedseparately.

Price/performancebreakthrough.

At $2,395 the Multitech 900 deliversthe high-performance you demand in

CPU Speed

Mother-boardMemory

Max. # ofHalf-HeightInternalDrives

Display

OperatingSystem

WarrantyPeriod

SuggestedList Price

Multitech 900

10or6MHzKeyboard, Soft-ware or HardwareSwitchable

512KRAMUp to 1MB

5

Hi-Res.,Soft-white

MS-DOS 3.1

12-Months

$2395

IBM PC/AT

8MHz0nly

512KRAMUpto640K

3

Option

Option

12-Months

$5295"

Sperry PC/IT

6,7.16 or 8 MHz

Hardware

Switchable

512KRAMUp to 1MB

4

Option

MS-D0S3.1

12-Months

S3395

CompaqDeskpro 286

6or8MHzKeyboard & Soft-ware Switchable

256KRAMUpto2.2MB

4

Option

Option

3-Months

S3395

Tandy 3000

8 MHz Only

512KRAMUpto640K

3

Option

Option

3-Months

$2599

TeJevideoTelecat-286

6 or 8 MHzKeyboard & Soft-ware Switchable

512KRAMUptoIMB

3

Hi-Res..Green

Option

3-Months

$2995-•

an AT system but at an affordableprice to fit within all budgets.

Uncompromising.

While the Multitech 900 introducesinnovation it doesn't compromise anyindustry standards.

For example: Software compatibilitywith programs designed for the IBMPC/AT and PC/XT; hardware com-patibility to tie into your networkingoptions; full one-year warranty andguaranteed support from Multitech,a company with a proven track-recordin quality microcomputer manufac-ture; and, Nationwide serv/ce*that isconvenient and dependable. Call ustoday for more information about theMultitech 900 or our full line of per-sonal computer products.

fc>

Includes 30MB Hard Disk Drive•Includes 20MB Hard Disk Drive

Inquiry 244

All prices reflect manufacturers' suggestedlist for base models as of June 4. 1986

Mulfltecb 900 is a trademark of Multitech Electronics Inc.

All other product names are trademarks of their respective manufacturers

/Multitech

ELECTRONICS INC.

Committed to Excellence, Quality & Service

1012 Stewart DriveSunnyvale, CA 94086Tel: (408) 773-8400(800)538-1542

A Division of MSC International'Serviced Nationwide by TRW

SEPTEMBER !986 • BYTE 91

LABVIEW

tions were not yet available. Some ofthe alternate graph styles were not yetadded. These alternate graphs will in-clude polar plots and scattergrams aswell as the ability to plot multiple setsof data on one graph.

Conclusions

Many of LabVlEW's features showgreat promise. Its pop-up menus arecontext-sensitive; the menu you getdepends on the icon you are touchingwhen you call for it. These contextualmenus make creating front panels andblock diagrams easier and less proneto error. Pop-up menus are consistentwith the Macintosh user interface and

are usually better than the dialogboxes that they replace.

The amount of housekeeping thatLabVlEW performs—letting the pro-grammer forget about data types, forexample—makes the system easy touse by not requiring you to be a pro-grammer. LabVIEW does type-check-ing automatically, and there is essen-tially no such thing as a syntax error(dashed lines representing improperwiring connections excepted) whenusing icons for programming. Lab-VIEW initializes and maintains loopsautomatically, and its block diagramsmake programs self-documenting.

The metaphor of the front panel

Using LabVIEW inthe Real World

National Instruments specializes incomputer and GP1B hardwareinterfaces and software. They devel-oped LabVIEW as the next generationof software to help users of data ac-quisition equipment to control thisequipment with computers. They nowhave one product, the GP1B-MAC inter-face box, which will work on a 512KMacintosh or Macintosh Plus, and an-other product under development thatwill connect to a Macintosh Plusthrough its SCSI port.

National Instruments has been ship-ping the $595 GPIB-MAC interfacesince November. It plugs into themodem port on the Macintosh andmakes a GPIB plug available for one ormore instruments. (GPIB plugs canstack on top of each other, allowing in-struments to be connected in a starpattern.) Currently, custom programscan send GPIB commands and receiveresults as if through a modem. FromLabVIEW. however, the virtual instru-ment designer can use six differentGPIB-related icons in the block-diagramwindow, including one that passes anarbitrary string to the GPIB bus.

MacBus is a $1495 hardware andsoftware combination that provides aGPIB interface, five IBM PC AT-com-patible interface card slots, and variousnecessary software packages. Its cardcage connects to a Macintosh Plusthrough its SCSI port. Two slots aretaken up by the GPIB interface card

and a microcomputer card containingthe NEC V50 chip, which coordinatesthe Macintosh Plus and the GPIB inter-face. Backplane circuitry is reported togenerate a subset of the IBM PC ATbus. The V50 chip controls the GPIBcircuitry through a FORTH-like exten-sible proprietary language called IBCL,and National Instruments supplies in-terface routines that allow the user tocontrol and program MacBus fromMegamax C or Microsoft BASIC. Al-though details are not final, users willbe able to access existing IBM PC andPC AT cards by some sort of memorymapping; this method will require acustom device driver to interact withthe LabVIEW system.

However, even when users have thehardware and software connections toGPIB, their job may not be finished.GPIB commands are terse and cryptic(e.g., rd #16 5 reads up to 16 bytesfrom the device at address 5), andmany users have difficulty writing thecorrect commands for a given task.Because of this, National Instrumentsthinks that virtual instruments could beuseful as front ends that take a com-mand from the front panel and buildand execute the proper GPIB string.National Instruments may supply front-end virtual instruments for selectedpopular GPIB instruments. Customerscould then use these virtual instru-ments as is or modify them to fit asimilar piece of equipment.

and its underlying block diagram is in-tuitive and creates a comfortable userinterface. The different versions ofLabVIEW that we've seen show agood design sense with the additionof new features when necessary.

Logical debugging of block dia-grams can be tedious, however. Theprogram's multiple cursors (tools) canbe confusing, such as decidingwhether to use the Grabber tool orthe Pointer. The system is also con-strained by its application beinglimited to engineering uses and by itsexistence on a Macintosh in a worlddominated by IBM PCs.

There are some intrinsic contradic-tions in LabVIEW. What LabVIEW callsa WHILE loop is actually an UNTILstatement. The case icon must beused for an IF. . .THEN. . . ELSE con-struct.

The screen space within a block dia-gram may be a limiting factor in Lab-VlEW's practical application. A singlevirtual instrument can't be very com-plex since there's room for only afinite number of operations within asingle screen. You can nest virtual in-truments without limit, but thisdoesn't guarantee that you can buildcomplex structures with 10 or 20branches versus the 2 to 3 branchesthat can easily fit on a screen.

LabVIEW uses the Macintosh'sSANE math library, providing fullIEEE-754 floating-point compatibility.SANE yields 80-bit precision forfloating-point operations and gives adynamic range of -1.7E-4932 to1.1E+4932. Loop counters are alwayscast to integers and are currentlylimited to the range 0 to 232.

National Instruments claims thatLabVlEW's performance is equal toBASIC'S, but many laboratory applica-tions may require better performancethan that. However, the capability tolink code resources to virtual instru-ments may negate this performancelimitation.

Overall, using LabVIEW is an excit-ing experience that may give us apeek into the future. Will the data-flowprogramming model and object-oriented programming techniquesmerge into an iconic language of thefuture? Maybe LabVIEW is a step inthat direction. ■

92 BYTE • SEPTEMBER 1986

Inquiry 188 —►

DATA ACQUISITION WORKSTATION

System 570

■

im

• ANALOG INPUTS: 32 single-ended or 16 differential. 12 bit,31kHz.

| • ANALOG OUTPUTS: Two,12 bit.

• DIGITAL INPUTS: 16.

• DIGITAL OUTPUTS: 16 + 16

power control.

• SOFTWARE: IBM PC andCompaq compatible. Comeswith Soft500: Interrupt drivenBASIC environment. Alsoworks with DADiSP, ASYST,LABTECH NOTEBOOK.

• EXPANSION SLOT: Chooseone of 16 optional modules.

• $1295, complete with Soft500software.

NHi '

"IP

H

rK'l ■ .'!

n

For complete information CA11

1-800-552-1115

Jn.

X-i I

u

If you can

EVEREX Streaming Tape Family

If you can find better streaming tape software, buy it:

User Interface

■ Menu driven.

■ Multiple windows (nestable and movable).

■ Context sensitive on-line help.

■ File selection from directory listing or command line.

■ Constant tape status display.

■ Menu driven hardware configuration guide.

Tape Functions

■ Multiple tapes allowing unlimited backup capacity.

■ Multiple datasets for multiple backups on the same tape.

■ Tape sequence management recorded on the tape.

■ Programmable messages.

■ File-by-file and image backup on the same tape.

■ Installation program.Functionality

■ Physical image backup/restore of local disks.

■ Logical image backup/restore of local or remote disks.

■ File backup from any local or remote disk of any file size.

■ File restore from image backup or file backup.

■ Allows wildcards for selection of files.

■ Automatic scheduler for unattended backups.

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

■ Real time clock display.

■ Backup any disk whether formatted for DOS or not

■ Escape to DOS while in backup/restore operation.

94 BYTE • SEPTEMBER 1986

If you can find a company with bettertape achievements, buy from them:

■ Over 30,000 streaming tapesub-systems, Vz height, 51/4"form factor industry standardQIC 24 recording format, QIC-36 hardware interface andlargest installed customer baseworldwide.

Over 100,000 industrystandard streaming tapecontrollers in the field.The first company to releaseQIC-02 IBM-compatiblesoftware drivers to the OEMcommunity.

The first company to releasean internal 51/4"half-height IBMcompatible tape subsystem.The first company to releasefile-by-file retrieval from a mirror-image backup.

>■

mri 4.n n H-ir rust*

• Car* Suntl ,■■ ■ ■■■■■

1-24-«. u:

bp mw

\h-aimiLE.EXE

^Idlir.

en i ^

4-tft 0:

(,j. 224ZB

ii-.

VrU

WH 1 2

4-K. it:4 Bb 0:4 Bb U:4-8b R:

bp 7H

H\

*!«

(!,:■.«. i ,f aw? 12

bp 33bb8

C:\EVIrtl1

STftlT.HtH

MHf

E:MVmi

\WIJU

BZW \l

lllb Elf

■Jp M332

::mhesto

n\nprofB.INI

1

vim 1-07-* r.hu 7112

nEMHtSTOK.IILr

1 HB223HtW

H.-.l'i'i IllTiil-hdl inn

MflMWfl

1

1

nrarx sYsrois

i

i mi mtuMU

uiTimn 1

■ .„ ,...,* J..r. ..

Automatic Scheduler

Nestable. Movable Windows

find..

Backup with Multiple Datasets

If you can find a streaming tape with betterperformance and system characteristics, buy it:

File-by-file operations near streaming speed.Dynamic adjustment to disk and system speeds.System Characteristics

■ Hardware identification provides software integrity.

■ External systems can be shared with many users.

■ Same software for all types of tape drive, controller, andcomputer system configurations

■ External systems uses a shielded round cable with a D-connector for tangle-free, easy connect and disconnect.

■ Hardware read-after-write data verification.

■ Track 0 seek to insure tape interchangeability.

■ Original controller manufacturer.Industry standard QIC-24 tape format.

ndustry standard QIC-36 interface.Industry standard QIC-02 commands.Tape does not require pre-formatting.Available in 20MB, 60MB, and 100MB drive capacities.

EVEREX Excel Streaming Tape.For the name of your nearest EVEREXdealer or more information, call us.Remember... We are

EVER for Excellence.

Excel Stream 20 External

VEREX

Excel Stream 60 External

1-800-821-0806 1-800-821-0807 (inCA)

Excel Stream 60-8 External

EVER for Excellence ™

48431 Milmont Dr., Fremont, CA 94538

Inquiry 123 for End-Users. Inquiry 124 for DEALERS ONLY.

, y-V

w

COMPLETE EVERY FILE TRANSFER PASS.

The problem: Error-free file transfer betweenany IBM PC/XT/AT/Portable* (or a 100% com-patible) and another personal computer-orany mainframe that supports one of these pro-tocols: 3780,3741, 3740, 2780, or 2740.The solution: PC3780 from TDTGroup-chosen by the United States Air Force, Occi-dental Petroleum, Blue Cross Blue Shield(Nebraska).This synchronous emulator takes

the guessing out of file transfers, lowers thedollar and energy cost of accuracy. With oursoftware and key, one disk drive, a modem andan IBM BSC cardfyou can enter the world ofIBM mainframe data communications. Call now!Minimum required configuration:128 Kbyte RAM, a 320 Kbyte disk drive or fixeddisk and an IBM BSC-ASM* card installed inan IBM micro or 100% compatible.

*IBM is the Registered Trademark of International Business Machines Corp.30-Day Money-Back Guarantee! TO ORDER TOLL-FREE 1-800-826-7839

SHIPPED VIA U.P.S. $249Price includes archival diskette, software key, user's manual.

Rivergate Plaza, 444 Brickell Avenue, Suite 902, Miami, Florida 33131. (305) 372-9332/TELEX: 4947306

96 BYTE • SEPTEMBER 1986

Inquiry 340

CTARCIAS CIRCUIT CELLAR

BUILD A HARDWAREDATA ENCRYPTOR

by Steve Ciarcia

This easy-to~build deviceis extremely difficult to crack

It's 4:00 a.m. Do you knowwho has logged on to yourelectronic messaging sys-tem? Theophilus Crackerhas spent all night tryingto get into the files on yourlatest research project, andhe has finally made it. All your efforts andcareful planning are about to go down thedrain, as the contents of the stolen libraryare listed on his screen.

But wait, what is this? Why the blank ex-pression on his face? Has he been thwartedby a little black box? Will he go sleeplessand hungry trying to figure out why it alllooks like trash?

Whether gaining access to sensitive datapresents an interesting challenge to thecracker or whether there's a maliciousulterior motive in mind, the violation of yourprivate electronic communication is thesame. Fortunately, it can be prevented.

The Circuit Cellar data encryptor is in-tended to provide an additional level ofprivacy. With the feverish rush to install thelatest and best electronic data and messag-ing systems, individuals and companies fre-quently overlook who has access to sensi-tive materials until something turns up inthe wrong place. Rather than requiring pass-word access to all materials of a certainsecurity level within a computer system,data encryption allows individually desig-

nated data access. The delivery of a mes-sage "For Mr. Jones's eyes only" becomesan easily achieved reality merely by con-trolling the dissemination of the encryptionkeys.

Electronic data should be managed andprotected with the same attention given toyour bank account. The electronic messag-ing system that you just installed to coor-dinate all your branch offices with your on-the-road field service personnel might ac-tually be a comprehensive accounting ofyour business's current vulnerabilities in thehands of a competitor. Or someone may ac-cidentally log on to a very sensitive memoto the branch managers about recent payscales.

I'm not attempting to be a harbinger ofdoom. I'm just trying to point out somethings that you may have overlooked. 1could hardly have kept your attention if Idescribed anything less than a worst-casescenario.

In reality, vulnerability is a function of ac-cess and content. More simply stated, thistranslates to "who can get their hands on

{continued)Steve Ciarcia {pronounced "see-ARE-see-ah") is anelectronics engineer and computer consultant with ex-perience in process control, digital design, nuclear in-strumentation, and product development. The authorof several books on electronics, you can write to himat P.O. Box 582, Glastonbury, CT 06033.

COPYRIGHT © 1986 STEVEN A. CIARCIA. ALL RIGHTS RESERVED.

SEPTEMBER 1986 • B Y T E 97

CIRCUIT CELLAR

what." Even the simple one-line tele-phone bulletin board has a systemoperator. If installed in a moderate-size business, a few other peoplewould probably have complete accessto the electronic database.

At the point where the number of"whos" who should have access to allthe "whats" is greater than 0, you

have to think about alternatives.

Because there are more program-mers than hardware designers, thepredominant approach to systemsecurity has been in application soft-ware. The techniques most frequent-ly employed to improve computersecurity are reducing the "whos," in-dividually categorizing the "whos"

(passwords), limiting the posting ofthe sensitive "whats," or individuallycategorizing (more passwords) or en-crypting the "whats."

These methods have had relativesuccess in minicomputers and main-frames, where there is enough horse-power to maintain a menu-driven,stratified security level, password-

Cryptography Background

After World War I broke out, Amer-ican Telephone & Telegraph real-ized that a system was needed to guardmessages sent between its new print-ing telegraphs. These early teletypesused Baudot code to transmit the 26letters of the alphabet, the 10 digits, anassortment of punctuation marks, car-riage return, line feed, shift-to-figures,and shift-to-letters. There were 32 dif-ferent combinations of marks (Is) andspaces (0s) making up the 5-bit code.Gilbert S. Vernam solved the prob-lem in December 1917 with a systemthat now bears his name and that is theheart of most stream-encryption sys-tems in use today. Vernam sought asystem where a key is combined witha plaintext character to produce acipher character in a reversible waysuch that if the same key were com-bined with the cipher character, theoriginal plaintext character would berecovered. The system he employed tocombine the plaintext character withthe key is an exclusive-OR of each pairof bits to form the ciphertext character.A truth table of the exclusive-OR func-tion will show that the system is rever-sible, as shown in figure A.A key bit of 1 causes a plaintext bit

to reverse to form a ciphertext bit. Ap-plying the same key bit again wouldreverse the ciphertext bit to recreatethe original plaintext bit. A key bit of0 causes the plaintext bit and cipher-text bits to remain unchanged.

The Vernam system drew a lot of in-terest, particularly from the Navy,because it was the first encryption sys-tem that did not need a cipher clerkand the first to encrypt on-line withoutany delays. But it had a flaw, which theengineers who worked around Vernamdiscovered.

During early development, key tapeswere short loops of tape bearing char-acters picked from a hat. It didn't takethe engineers long to discover that theVernam system was polyalphabetic.permitting a Kasinsky solution. One ofthe engineers, Lyman F. Morehouse,solved this problem by combining twoshort key tapes of slightly differentlengths (in effect encrypting themessage twice). If one key tape was1001 characters long and the secondwas 999 characters long, the resultingkey would be 999,999 characters long.The cipher is still polyalphabetic, butit has 999,999 alphabets.

Vernam's system was patented in July

plaintext

ciphertext

1 0

key

1 0

plaintext

1key

0

0 1

ciphertext

1 0

10

0 1

1 0

Figure A: A key bit of 1 causes a plaintext bit to reverse to form a ciphertextbit. Applying the same key bit again would reverse the ciphertext bit torecreate the original plaintext bit. A key bit of 0 causes the plaintext bit andciphertext bits to remain unchanged.

1919, but it did not gain wide accep-tance until the Army started using itwhen World War II broke out.

How Secure Is My Encryptor?

Generating every possible key is not apractical way to break the Circuit Cellardata encryptor because the key is apseudorandom bit stream that repeatsevery 18,014,396,3 53,609,729 bits.Once it is initialized with a user key. thekey sequencer is stepped eight timeseach time a character is encrypted. Notknowing what the initial bit pattern inthe sequencer was would require thatevery possible pattern be tried todecode a message. With each trial, partof the message would be decrypted byusing the trial key and examining theresults for meaningful words ornumbers. Generating the trial key iseasy. Testing to see if the decryptedtext is meaningful would require someclever programming.

Another technique, the most-prob-able-word method, is more or less areverse of the previous one. Instead ofguessing at the key and looking forstrings of characters that look likewords or numbers, a string of charac-ters is assumed to be at a certain loca-tion in the text. For instance, it mightbe assumed that the sender has senta letter and put "Dear Sir," at the begin-ning. Knowing this, and assuming itsexact location in the message, the keythat encrypted that word can be deter-mined.

In reality, this is just part of the solu-tion. The real work is trying to deter-mine the rest of the key from this smallsegment of the key. This crackingscheme is further complicated by thetechnique called diffusion, whichmakes it almost impossible to regen-erate the pseudorandom bit streamsfrom even a large sequence of knownkey bits.

98 BYTE • SEPTEMBER 1986

CIRCUIT CELLAR

directed communication maze. Unfor-tunately, most of the recently intro-duced low-cost microcomputer-basedelectronic messaging systems andbulletin boards cannot offer this muchsecurity, and the user must resort toother means if portions of the data-base are to be truly protected. Themost secure and cost-effective solu-tion is hardware data encryption.

A Designer s Dilemma

This article presents an encryptiondevice that is easy to understand,easy to build, easy to use, but whichis very difficult to break.

In building this project, I faced adilemma regarding the hardware. Aswith any complex task, there are amultitude of solutions that are usual-ly a trade-off of time and materials.Unlike most designers, who do a one-of-a-kind project and document itsuse, most of my projects end up be-ing manufactured. While this absolute-ly demonstrates that the publisheddesign indeed works, sometimes thedesign that is best to manufacture isnot the best to use as the basis of anarticle.

Engineers with lots of manufactur-ing experience (and the responsibili-ty for making a product successful) in-stinctively know the algorithm thatcompares R&D, production costs, andvolume. Hardware solutions, while lowon initial R&D expense, can be in-finitely more expensive to manufac-ture than a well-thought-out hybridmicrocomputer-based hardware/soft-ware approach.

The solve-it-quick-it's-only-an-articlehardware encryptor is a real kludge.It requires at least 2 5 TTL chips justto perform the encryption, takes a lotof printed-circuit-board real estate,and is fairly inflexible to functionalmodification. On the positive side, thebuilding-block SSI/MSI-level intercon-nections provide convenient func-tional separations allowing easier ex-planation.

If I merely wrote articles and neverwanted people to use the designs, theanswer would be easy (I'll never livedown not having PC boards for myserial EPROM programmer. Nextmonth I'll do it right). Rather than redothe encryptor to make it manufac-

turable, I looked very carefully at itscomponent count and performanceobjectives. The conclusion I came towas to describe and produce the onedesign that was actually worthbuilding.

Encryption Techniques

Many techniques for encrypting dataare available: the RSA public-key en-cryption system, Lucifer, DES (thedata-encryption standard), and varia-tions on the Vemam cipher.

DES, considered among the mosteffective, is the system chosen by thegovernment and the military. Luciferand DES are very similar and complexenough to make them difficult to im-plement on a small computer withoutdedicated VLSI encryption logic. RSA,developed at MIT in 1977 by RonRivest, Adi Shamir, and Len Adleman,is copyrighted; its users must pay aroyalty to the copyright owners. Thissystem is not suitable for implemen-tation on a small computer becauseit involves a lot of large-integer arith-metic.

RSA, Lucifer, and DES are blockciphers, meaning that a block of char-acters (64 bits or 8 characters for DES,100 characters for RSA) are encryptedtogether so that each output block isa functional combination of the com-plete key and input block.

The Vemam cipher is a streamcipher, meaning that each bit of theencrypted data is a function of only1 bit of the original data and 1 bit ofthe key. If the signal gets distorted andcauses a bit to be misinterpreted, onlythat bit will be incorrect in the deci-phered text. If a bit is misinterpretedwhen using a block cipher, the ava-lanche effect will cause the entireblock to be affected. In any encryp-tion system, however, if a whole char-acter is lost or added, the rest of themessage will be garbled unless somespecial text-blocking system is em-ployed to resynchronize the decryp-ted Then, only one block will begarbled.

The Vernam Cipher

1 chose the Vernam cipher over DESfor this project because it is easy toimplement in hardware or in softwareand it offers adequate security for

If a cracker

tested 10 millionkeys per second,it would take28 years to findthe correct one.

anything but the most sensitive com-munication. While it might seem moreintriguing to build a DES-based en-cryptor, such an endeavor involveseither expensive DES encryptionchips or bureaucratic involvement inlicensing arrangements. I like CircuitCellar projects to be buildable, andwarning labels with abbreviations likeNSA and CIA only complicate thetask.

While my encryptor could conceiv-ably be used for DES encryption inaddition to or instead of the Vernamcipher, I have decided to presentlystay with the latter as a publishedpresentation (if the entanglements areresolved, the additional features canbe implemented by simply changingan EPROM). Even though the Vernamcipher is simple, it is an effectivecipher. The most obvious techniquefor breaking a cipher is by trying everypossible key. The key in this imple-mentation is a pseudorandom bitstream almost 1.8 x 1016 bits long. Ifan attacker were able to generate andtest 10 million keys per second, itwould take 2 8 years, on the average,to discover the key. (See "Cryp-tography Background" on page 98.)

Connecting an Encryptor

TWo of the primary design objectivesof my data encryptor were that itsoperation should be transparent tothe terminal or computer that it wasconnected to and that it would beusable with any system. The data en-cryptor connects to your computerthrough a serial port (see figure 1). Asecond encryptor, functioning indecryption mode, is needed wherever

[continued]

SEPTEMBER 1986 • BYTE 99

CIRCUIT CELLAR

the scrambled data is received andused (except in loopback mode to en-crypt data files on a single system).The transmitter converts the dataoutput from your computer or ter-minal to encrypted binary or en-crypted ASCII data for transmission toanother system. The receiver sectiontakes encrypted text and deciphers itinto plaintext that is then presentedto your computer or terminal. Bothtransmitter and receiver sections haveserial ports that share a commonbaud rate and configuration settings;otherwise, they are independentchannels. You can encrypt data in onekey and decrypt in another as well assend encrypted text while receivingplaintext or vice versa.

If messages are being encrypted forstorage on either your own disk drive(figure la) or on the storage facilitiesof an information service (figure lb),only you need to know the key. If,however, messages are being en-crypted and transmitted to a secondparty (figure lc), both persons musthave the key before the message canbe decrypted. The key must thus bedelivered to the receiving party bysecure electronic communication ormanual delivery. It is advisable tochange keys occasionally, in casesomeone discovers it and uses it.

The Brute-Force Approach

My first encryptor design used thebrute-force hardware approach

because it easily explained Vernamcipher encrypting. However, this ap-proach was dismissed early. It was notprototyped nor was the schematicfully completed. 1 caution you that,while parts of it are shown as sche-matics, these should be treated moreas functional block diagrams with con-necting wires. They are includedmerely to explain the internal logic ofan encryptor and the cost benefit ofperforming the same functions in soft-ware where applicable.

Figure 2 shows a functional blockdiagram of a typical hardware-imple-mented Vernam cipher encryptiondevice (when the terms "encryptor"or "encryption" are used to specify acomplete device, they also usually in-

(a)

CIRCUIT CELLARDATA ENCRYPTORICCDE)

(b)

TERMINAL

OR

COMPUTER

ENCRYPTED DATA

INFORMATIONSERVICE.BBS, ETC.

(0

TERMINAL

OR

COMPUTER

TERMINAL

OR

COMPUTER

Figure 1: (a) The data encryptor connected in loopback mode. Data is encrypted before being stored on disk, (b) A single-endeddata-encryption system. Data is encrypted before being stored on the information system disk, (c) Two data encryptors connected as atwo-party secure data-transmission system. Both parties must have the key to encrypt and decrypt data.

RS-232CLEVELS INO>-

+ 7V —| LOGIC 1OV

MC1489LEVELSHIFTER

TTL LEVELS OUT

7V — I—LOGIC 0

LOGIC 1 —I + 2.4V

LOGIC 0 I +0.4V

OV

8 BITS ) j J I"CIPH

KEY

GENERATOR

EXCLUSIVE-OR GATE

TTL

LEVELS

IN

MC1488

LEVELSHIFTER

RS-232CLEVELSOUT

Figure 2: A functional block diagram of the basic Vernam cipher encryptor, as used in the Circuit Cellar data encryptor.

100 BYTE • SEPTEMBER 1986

CIRCUIT CELLAR

elude the decryption function).

The signal to be encrypted entersfrom the left. The RS-232C signal hasits voltage levels (nominally +7, -7volts DC) shifted to TTL voltage levels(nominally +2.4, +0.4 V), passes to aUART, and exits the UART as 8 databits in parallel. If plaintext is selected,the data passes back into a UART andis serialized and level-shifted from TTLto RS-232C. In the plaintext position,the key generator remains inactive.

If ciphertext is selected, the keygenerator originates 8 bits of the keyevery time a character is received.Using an exclusive-OR function, thekey is combined with the data com-ing from the receiving UART and isthen fed to the sending UART.

Key generation is accomplisheddirectly in hardware (see figure 3). Thetechnique used here is to combinethe output of two pseudorandom se-quencers to produce one pseudoran-dom bit stream. The pseudorandombit stream must produce 8 new bitsevery time a character is received bythe UART. Many imaginative tech-niques for generating pseudorandombit streams have been devised, butthe security of a system must dependnot on how complex this technique is,but on how many bits are producedbefore the cycle repeats.

Relative Primes

One possible method is to use an ex-ceptionally long sequencer, but even

this makes the most-probable-wordmethod of cryptanalysis (code crack-ing) only minimally less successful. Asignificantly more secure methodcombines bits from two pseudoran-dom sequencers. The resulting diffu-sion makes the most-probable-wordcracking very difficult. When combin-ing two bit streams, however, it is im-portant that the lengths of the twocomponent streams be relative primes(they must not have any factors incommon). The numbers 14 (2 x 7)and 15(3x5) are relative primes. Putanother way, their greatest commondenominator (GCD) must turn out tobe 1.The length of the bit stream gen-

(conlinued)

00000000

KEY BITS K8 K7 K6 K5 Kd K3 K2 Kl

Figure 3: Key-generator logic.

SEPTEMBER 1986 'BYTE 101

CIRCUIT CELLAR

erated by the top four shift registersin figure 3 is 231 - 1 or 2.147,483.647.The length of the bit stream of thelower three shift registers is 2" - 1or 8,388,607. The last bit in both bitchains is not used, even though usingthese bits would almost quadruplethe length of the combined bit streamproduced, because 224 - 1 and 2" -1 are not relative primes. Their GCD

is 255, producing a key length of (232- 1) x (224 - 1) / 255.

Mersenne Numbers

The integer 2" - 1 is called a Mer-senne number after Marin Mersenne,who determined that two integers,2m-l and 2"-l, are not relativeprimes if m and n are not relativeprimes.

The numbers above (232 - 1 and 224- 1) are not relative primes because32 and 24 are not relative primes. Ashift register of length n can be turnedinto a pseudorandom sequencer oflength 2" - 1 by providing feedbackusing a combination of exclusive-ORs.ICs 3, 4, 5, and 6 (in figure 3) form asequencer with a length of 231 - 1 bytapping the twenty-eighth and thirty-

> MODEMDB-25P

PINS 7.8.22CARRIED FROM ONEDB-25 TO THE•> OTHER

Figure 4: A schematic diagram of the microcomputer-based Circuit Cellar data encruptor.

102 BYTE • SEPTEMBER 1986

CIRCUIT CELLAR

first bits of the shift register with\C\2a.

ICs 7, 8, and 9 form a sequencerwith a length of 224 - 1 by tappingthe eighteenth and twenty-third bitsof the shift register with ICllc. Eachsequencer is tapped at two places(lC12b and IC1 lb), and the bit streamsfrom each tap are combined together,using an exclusive-OR, by IClla and

fed to another shift register where theresult becomes the key. This is the dif-fusion that makes the most-probable-word method difficult. Even if a bit ofthe key were known, the three ex-clusive-ORs, acting together like aparity generator, tell whether therewas an odd or even number of Is atthe four taps—and no more. Out of 16possible combinations of Is and Os

8031

40

20

74LS373

20

10

2761

28

14

74LS245

20

10

MAX232

16

15

7407

14

7

POWERCONNECTIONS

7.5V DC

UNREG

<&> 500 mA

IT

lOO^F

J

-X

->+5V

10/xF

that could be at the taps, the key bitnarrows the choice down to no lessthan 8.

A Hardware Substitute

Most of these functions, including theencryption itself, can be synthesizedusing a microprocessor and software.The task of producing a cost-effectiveencryptor then ultimately becomes anexercise in configuring an efficient,low-cost microcomputer. A sidebenefit of such an approach is that itallows future performance enhance-ments by merely upgrading the soft-ware (to include DES encryption, forexample).

The design I finally settled on usesan Intel 8031 microcomputer andonly seven additional chips. The eight-chip circuit (shown schematically infigure 4 and in photos 1,2, and 3) in-cludes two full-duplex serial ports andtwo parallel ports with configurationDIP switches and bicolor LED chan-nel-status indicators. The encryptionand operating system software is con-tained in an 8K-byte 2764-typeEPROM, IC3. Total power consump-tion is approximately 300 milli-amperes if populated with NMOSdevices (at somewhat greater cost,consumption can be lowered to about110 mA if CMOS devices are usedthroughout).

The 8031, IC1, is a single-chip micro-computer with internal RAM andparallel I/O. The 8031 is capable of ad-dressing 64K bytes of data memoryand 64K bytes of code memory viaa multiplexed 16-bit address bus.However, only 8K bytes of programmemory (IC3) starting at 0000 hexa-decimal are required for this applica-tion. The rest of the address rangeprovides convenient memory-mappedaddress space for two 8-bit inputports used to read the configurationswitches.

Input buffer IC5 is connected to DIPswitch SW1 (addressed at 4000 hexa-decimal). Input buffer IC4 is con-nected to DIP switch SW2 (addressedat 8000 hexadecimal). SW1 sets theserial-port protocol and baud rates;SW2 deals with the encryption/de-cryption functions. Table 1 gives acomplete functional description of

(continued)

SEPTEMBER 1986 'BYTE 103

CIRCUIT CELLAR

SW1. Table 2 gives a functional de-scription of SW2.

Bit Banging

Probably the most unique feature ofthis microcomputer is that while it in-corporates two serial ports, it has noserial-port hardware! Since the effortwas to synthesize as many hardwarefunctions as possible, the baud-rategenerator and UART were discarded

along with the encryption logic. In-stead, my data encryptor utilizes atechnique often referred to as bitbanging to simulate the missing hard-ware.

The 8031 includes predecodedparallel output ports among its pin-out connections. Utilizing its crystal-controlled clock to precisely time theexecution of certain routines, it ispossible to take a single parallel out-

Photo 1: The prototype Circuit Cellar data-encryptor board shown beside the fullyenclosed unit.

Photo 2: A close-up of the Circuit Cellar data-encryptor board showing the rear-mounted RS-232C connectors (left side) and the manual start/stop and option switcheson the front panel (right side).

put pin and directly change its logiclevel to be that that would have oc-curred through the parallel-to-serialconversion in a hardware UART. Thissoftware serial-port technique is fre-quently used where there is no needfor high-speed interrupt processing(anything with a higher priority thanthe serial port, that is) or high datarates. Considering that the encryptorhas to handle two full-duplex ports aswell as handshaking, 1200 baud isabout the top data rate without in-creasing the crystal frequency. (Theroutines for these tasks are not trivial.When it was finished, this bit-bangercode turned out to be larger than theencryption software!)

Level-Shifter Design

One other novel design addition inthis circuit is found in the RS-232Clevel shifters themselves. Typically,designers use 1488/1489 level shiftersfor RS-232C connections. The 1488sare dual-supply devices that arerelatively power-hungry. To have usedthem, the power-supply requirementsfor the encryptor would have been+ 12 V, -12 V, and +5 V. As an alter-native, an ICL7660 voltage invertercould have been used to create anegative supply from the +12 V, butthe power consumption would nothave been improved.

Instead, I decided to use a newdevice called a MAX232 from Max-im. Shown in figure 5 and photo 4, theMAX232 is a dual CMOS RS-232Clevel shifter that operates on a single+ 5-V supply. It creates its own+/-10-V sources for use in theRS-232C transmission. While more ex-pensive than the alternatives it re-places, it consumes less board realestate and power. As a result, the en-cryptor runs on a single 7.5-9-V 0.5-Apower source. When populated withCMOS and high-speed CMOS logic,power consumption falls to about 200mA. (See photo 5.)

One final circuit detail is the inclu-sion of a pair of bicolor LEDs to pro-vide a visual status indicator to theuser. The bicolor LEDs are equivalentto a regular pair of red-and-greenLEDs encapsulated in the same two-wire package (three-wire bicolor LEDsare not the same). The bicolor LED

104 BYTE- SEPTEMBER 1986

CIRCUIT CELLAR

glows either red or green, dependingupon the polarity applied to it. At-taching a bicolor LED between theoutputs of a pair of inverters producesa bicolor, bistable status indicator (ac-tually, you get red, green, and off). Theinverters are connected to additionalparallel output pins on the 8031 andare controlled by the application pro-gram. When the LED shows red. thespecific encryptor channel is passingplaintext. When it shows green, it ispassing encrypted data.

Data Encryptor Software

The data encryptor is a perfect exam-ple of what not to build in hardware.Many of its functions can be simu-lated completely in software, as wellas enhancements that would other-wise not be incorporated (like all theATN= commands). Using just eightchips, a hardware and software sys-tem is configured that duplicates thehardware exactly in the method ofencryption as well as the user inter-face. A complete description of thesoftware will not be given herebecause it is beyond the scope of thisarticle.

| Editor's note: Should you care to build theencryptor from scratch, the &K-byte executable-code contents of the encryptor's EPROM isavailable as a downloadable file from the Cir-cuit Cellar BBS at (203) 871-1988 or pre-programmed from the source (CCI, Tolland.CT) listed at the end of the article.]

At reset, the 8031 automaticallyjumps to location 0000 hexadecimal(where the Reset/Power-up Vectorresides) and starts initializing the dataencryptor. During initialization, theprogram makes use of three utilitysubroutines that function as a soft-ware UART. (See listing I.)

GETCHAR waits for a character toappear in the terminal UART, transfersit to the processor's accumulator, andreturns to the calling program. PUT-CHAR transfers the character in theaccumulator to the terminal UART fortransmission to the terminal screen.

If hardware UARTs were being used,they would normally be memory-mapped, and their status and dataregisters would each occupy two loca-tions in memory. In the software im-plementation, the status register anddata register are both at one address,

PARM2. The distinction as to whetherPARM2 contains status or data ismade by which subroutine is called toreference it.

In GETCHAR, 1U2STATR is called toput the receive status into PARM2.GETCHAR will loop until bit 6 of thestatus byte, DAV, is high, indicating acharacter has been received by theUART, then JU2RECV is called, whichputs the character into PARM2.

PUTCHAR works similarly, but itmust loop until bit 7 of the status byte,TBMT, goes high, indicating that thetransmit buffer is empty, then thecharacter to be transmitted is put in-to PARM2, and JU2TRANS is called tohave the UART transmit the character.PUTSTRG is called to print a string ofcharacters from program memory tothe screen. The data pointer, DPTR, is

{continued)

Photo 3: 1/ right-angle DIP sockets and toggle switches are used, the data encryptorcan be attractively packaged in a 5- by 5 V^-inch enclosure.

Table 1

: Switch functions

for

UART DIP switch SW1.

UART Control DIP Switch SW1

Switch

Function

Value

Result

8& 7

data rate

OFF OFFOFF ONON OFFON ON

150 baud300 baud600 baud1200 baud

6 &5

data bits

OFF OFFOFF ONON OFFON ON

not usednot used

7 bits

8 bits

4

stop bits

ON

OFF

1 stop bit

2 stop bits

3

parity enable

ON

parity disabled

OFF

parity enabled

2 & 1

parity

OFF OFFOFF ONON OFFON ON

space

mark

odd

even

SEPTEMBER 1986 • BYTE 105

CIRCUIT CELLAR

a 16-bit address pointer, set to thestart of the string by the callingroutine. The last byte is 00 hexadeci-mal, signaling the end-of-string toPUTCHAR. (The code for these rou-tines is also available from the CircuitCellar BBS.)

Pseudorandom Sequencer

CHAINIX and CHAIN2X are called byKEYGENE to create the feedback nec-essary for the pseudorandom se-

quencer. The exclusive-OR function isaccomplished by putting one of thebits (bit 28 or bit 18) into the carry andthen inverting the carry if the other bit(bit 31 or bit 23) is a l.SHFCHAIN iscalled with a value either 2 or 3 hexa-decimal in R2 to indicate how manybytes are being shifted. SHFCHA1Nshifts the whole chain 1 bit to the leftand returns to KEYGENE, which loopseight times to generate 8 bits of thekey. The rest of the code is fairly or-

Photo 4: The Maxim MAX232 RS-232 transceiver installed in the data encryptor.The MAX2 32 runs on +5 V and produces its own +10 and -10 V for RS-232level output.

Photo 5: Power is supplied to the data encryptor by the wall-module power supplyshown. The power supply plugs into the data encryptor between the two RS-232Cconnectors on the rear panel.

dinary, and you know how 1 feel aboutsoftware.

How to Use the DataEncryptor

Figure 6 is a block diagram showingthe overall program flow of the dataencryptor. After reset, initialization ofthe software UARTs is performed byreading the eight segments of SW1.The encryptor configuration and func-tion are determined by reading thesegments of SW2. (See table 1 andtable 2 for a complete description ofthese switch functions.)

After initialization, a copyrightnotice and a listing of the preset selec-tions defined by SW2 are displayed.If the key is selected to come frommanual entry rather than the presetkey provided in EPROM, the user isprompted to enter the transmit keyand the receive key (the keys storedin EPROM are randomly selected dur-ing the manufacturing process andare unique to each encryptor). To aidthe user in getting the keys enteredcorrectly, a checksum is calculatedand printed. The checksum should bedelivered with the key so that usersat both ends can check each key afterit is entered.

After each key is entered, the useris asked to accept it. If it is rejected,the user is prompted to enter it again.After the transmit key is accepted, theuser is prompted in the same mannerfor the receive key. After the receivekey is accepted, the data encryptorgoes into an infinite loop, encryptingand transmitting any charactersentered from the local terminal/com-puter connected to it. Conversely, itdecrypts and displays (via the localterminal/computer) any encryptedcharacters it receives from the re-motely located modem, computer, orterminal. During the infinite loop, ifthe data encryptor is in the manualstart/stop mode, SW2 is scanned todetermine when encryption and de-cryption should start and stop.

In the manual start/stop mode, theuser would start communication inplaintext mode, and the LEDs wouldglow red (unsafe communication) toindicate this. The users at each endwould flip the transmit and/or receive

106 BYTE • SEPTEMBER 1986

CIRCUIT CELLAR

Table 2:

Functions of encrypt/decrypt mode control DIP switch SW2.

Encrypt/Decrypt Mode Control DIP Switch

SW2

Switch

Function

Value

Result

8

DSR reset

ON

disabled

OFF

enabled

7

encryption key

ON

user-supplied

OFF

EPROM-supplied

6

auto start/stop

ON

disabled

OFF

enabled

5

data type

ON

8-bit binary

OFF

7-bit ASCII

4

receive decrypt

ON

disabled

OFF

enabled

3

transmit encrypt

ON

disabled

OFF

enabled

2

# of encrypted

ON

7 bits

data bits

OFF

8 bits

1

loopback

ON

disabled

OFF

enabled

+ 5VINPUT

a 22^F

22*.F T I

4

C2 IE22*F ^P_ 5

TTL/CMOSINPUTS

^

+ 5V TO + 10VVOLTAGE DOUBLER

+ 10V TO -10VVOLTAGE INVERTER

+ 5V< 40OK

TTL/CMOSOUTPUTS

+ 5V<40OK T2

o

^22,xF

i>

K 1

<■

U .. TO

RS-232C OUTPUT

RS-232C OUTPUT

13 , RD

1

RS-232C INPUT

_/ CTS

N RS-232C INPUT

Figure 5: A functional block diagram of the Maxim MAX232 level-converterchip.

( RESET J

INITIALIZE UARTsCOUNTERS. FLAGS. AND LEDs

INITIALIZE THE TRANSMITAND RECEIVE PSEUDORANDOMSEQUENCERS WITH THEIR KEYS

ENCRYPT CHARACTER

TRANSMIT CHARTO MODEM

DECRYPT CHARACTER

TRANSMIT CHARACTER

UPDATE LEDs

Figure 6: The software flowchartof the Circuit Cellar data encryptor.

SEPTEMBER

lYTE 107

CIRCUIT CELLAR

Settings for Encryption Mode Switch SW2

Switch

Segment

Function

Setting

8

DSR Reset:

disabled

7

Key Source:

user

6

Start/Stop:

manual

5

Data Type:

ASCII 7

4

Receive:

plain

3

Transmit:

plain

2

Encrypt:

7 bits

1

Loopback:

off

Enter TRANSMIT key:

>

At this point, if the user wants to change the switch settings, they can be changedand the encryptor reset. The settings shown on the screen after reset will reflect thenew settings. Note that if switch segment 7 is.OFF, nothing will be displayedbecause the ehcryptor is assuming it is at a remote site and there is no one torespond to it. Assuming that the settings are what is desired:

>How is the time for all good men

Checksum = A6. Accept key? (Y/N) n

Enter TRANSMIT key:

>Now is the time for all good men

Checksum = AO. Accept key? (Y/N) y

Enter RECEIVE key:

>to come to the aid of their party.

Checksum = 1D. Accept key? (Y/N) y

User A can now call user B, just as during any regular communication.

Hello, user B.Hello, user A.

Do you remember the keys we agreed on?Remember, my transmit key is your receive key.

Yes, I remember.

I will now switch over to ciphertextso we can exchange sensitive data.I will not transmit anything moreuntil I hear from you.

* User A and user B now switch both switches to ciphertext. Any transmissionsfrom now on will be encrypted.

Hello, user A. What did you want to tell me?

My transmit key for our next session will be:

'U. S. Bach was born in 1685." The checksum is 22.

My transmit key for our next session will be:

"1.6180339887." The checksum is 71.

I will now switch over to plaintext so we can talkplainly.

* User A and user B both change the DIP-switch settings to plaintext. Anytransmissions from now on will not be encrypted.

C U later, user A.

See you next time. Bye.

Figure 7: A sample communication session between user A and user B, using bothplaintext and encrypted transmission.

encrypt switches during a pause intransmissions. For example, user Amight transmit in plaintext, "I will flipboth my switches after the nextsentence is transmitted. 1 will nottransmit any more until I receive thego-ahead from you." Then user A flipsboth switches. User B at the other endreads both sentences, flips bothswitches, and transmits back "go-ahead." They are now both transmit-ting encrypted messages. Both LEDswill indicate that transmission is be-ing encrypted by glowing green (safecommunication). Figure 7 is a samplecommunication session between userA and user B. User B's responses arein italic.

Intelligent Command Set

The Circuit Cellar data encryptor alsoincorporates an intelligent commandstructure (somewhat like smartmodems) and can change functionswithout physically manipulating theDIP-switch settings. If the auto start/stop mode is selected instead ofmanual mode, encryption on thetransmit side is started when the com-mand ATN=BEG is sent. This com-mand will start encryption with thecharacter following the command.

The receiving data encryptor willstart decrypting with the characterfollowing the command. The com-mand ATN=END causes the transmit-ting data encryptor to stop decryptingafter the last character of the com-mand. With the auto start/stop mode,the data stream does not have to beinterrupted to start or stop encryptionas in the manual mode (as shown infigure 8). Assume the keys have beenentered at both ends and communica-tion in plaintext has already begun.

Encryption can be started andstopped as often as desired. Eachtime it is started, key generation picksup where it left off when encryptionwas last stopped. Key generationdoes not start over unless the data en-cryptor is reset.

Loopback Mode

Another mode, illustrated in figure la,is transmitting to yourself by havingthe encryptor loop back. Loopback isone of the options selected on SW2.In loopback mode, you can encrypt

108 BYTE • SEPTEMBER 1986

CIRCUIT CELLAR

a file, store it on disk to protect sen-sitive data, or transmit it to anothercomputer with standard communica-tion software like XMODEM (the en-cryptor can encrypt a file withoutchanging control characters or creat-ing them in the encrypted results). Asample loopback encrypting programwritten in BASIC for an IBM PC isavailable via the Circuit Cellar BBS.

>Now is the time for all good menChecksum = AO. Accept key? (Y/N) y

Consider the example shown above.Since loopback requires the sametransmit and receive keys, it asks foronly one. As soon as the user con-cludes that entry by answering yes,any communication will be echoed

back to the terminal.

This sentence is not encrypted.

ATN=BEGvD)tbbV7%6} =dXf6YpOnjf]h8This sentence is also not encrypted.

If this were stored somewhere and atanother time retransmitted to your-self, it will be decrypted, providing the

same key is used that you used to en-crypt it. The three lines above willthen look like this:

This sentence is not encrypted.

ATN=BEGThis sentence is. ATN=ENDThis sentence is also not encrypted.

(continued)

Hello, user B.

My transmit key for our next session

will be: ATN = BEG

"J. S. Bach was born

in 1685.'

ATN=

END

Talk to you next time.

Bye.

Figure 8: An example of the use of auto start/stop mode during transmission.

Listing l: Input/output section of the data encryptor's

assembly code.

; UTILITIES FOR INPUT/OUTPUT

; GET A

CHARACTER FROM THE

KEYBOARD

03AF 9176

GETCHAR-

ACALL

JU2STATR

03B1 E559

MOV

A,PARM2

GET RECEIVE STATUS

03B3 5440

ANL

A,#DAV

AND LOOP UNTIL

03B5 B440F7

CJNE

A,#DAV,GETCHAR ;

DATA AVAILABLE.

03B8 917F

ACALL

JU2RECV

GET CHARACTER AND

03BA E559

MOV

A.PARM2

PUT INTO ACCUMULATOR.

03BC 22

RET

; WRITE

A CHARACTER ON THE

SCREEN

03BD C082

PUTCHAR

PUSH

DPL

SAVE

03BF C083

PUSH

DPH

DATA POINTER.

03C1 C0E0

PUSH

ACC

SAVE CHAR FOR LATER.

03C3 9176

XMSTAT:

ACALL

JU2STATR

03C5 E559

MOV

A,PARM2

GET TRANSMIT STATUS

03C7 5480

ANL

A,#TBMT

AND LOOP UNTIL

03C9 B480F7

CJNE

A,#TBMT,XMTSTAT ;

TRANSMIT BUFFER EMPTY.

03CC D0E0

POP

ACC

RETREIVE CHARACTER

03CE F559

MOV

PARM2,A

AND TRANSMIT IT.

03D0 C0E0

PUSH

ACC

SAVE FOR AFTER JU2TRANS

03D2 917C

ACALL

JU2TRANS

0304 D0E0

POP

ACC

RETREIVE CHARACTER AND

0306 D083

POP

DPH

DATA POINTER FOR CALLING

03D8 D082

POP

DPL

ROUTINE.

03DA 22

RET

; WRITE

A. STRING TO THE SCREEN

03DB C0E0

PUTSTRG

PUSH

ACC

SAVE ACCUMULATOR.

03DD 7400

PNTCHAR:

MOV

A(#00H

03DF 93

MOVC

A,@A+DPTR

;

POINT TO CHAR IN STRING

03E0 6005

JZ

DONSTRG

i

DONE IF IT IS 0.

03E2 71BD

ACALL

PUTCHAR

;

OTHERWISE WRITE IT

03E4 A3

INC

DPTR

;

AND POINT TO NEXT CHAR.

03E5 80F6

SJMP

PNTCHAR

03E7 D0E0

DONSTRG:

POP

ACC

;

RESTORE ACCUMULATOR.

03E9 22

RET

SEPTEMBER 1986 -BYTE 109

CIRCUIT CELLAR

Because it is

a bad practice

to use the same keyover and over,five additionalplaintext charactersare sent to scramblethe fixed key.

Two other commands are included toenable one encryptor to be locatedat a remote site. You may want to beable to communicate with your com-puter at home or at your office, butno one is at the remote computer toinitialize the encryptor. With thesecommands, you can call the computerand initialize the encryptor by phonebefore sensitive information is trans-mitted either way (leaving the encryp-tor attached protects you from themalicious crackers who auto-dialsearch for unattended auto-answercomputers). This procedure is also ap-plicable for use on LANs or multiter-minal systems.

The two commands are ATN=PROM+xxxxx and ATN=USER+xxxxx,where xxxxx are any five charactersused to offset the key already loadedin the remote data encryptor. (Thereason for the offset will be explainedlater.) Both commands reset the keyto a known point in case the key gen-erators in the transmitting and receiv-ing encryptors have gotten out ofsync. ATN=USER+xxxxx will reset tothe manual key that was previouslyentered through the normal prompt-ing after a power-on reset.

Unfortunately, if a power failure hadoccurred (without some sort of un-interruptible power source), the keywould be lost, and the remote encryp-tor would have no way of reinitializ-ing without a manually entered key.ATN=PROM+xxxxx takes care of thissituation by using a key stored in the

encryptor's EPROM to reinitializewith.

Because it is a bad practice to usethe same key over and over, however,the five extra characters are sent toscramble the fixed key. This defeatsany attempts of an attacker using themost-probable-word method to dis-cover the key. Even though these fivecharacters are sent in plaintext, theireffect on the unknown key cannot bepredicted. The most-probable-wordmethod can be used only if the at-tacker knows what part of the key wasused to encrypt a given part of amessage, and that part of the keymust be used often. Both of thesecommands initialize the transmit andreceive side of both encryptors, andencryption or decryption is startedimmediately after the fifth scramblingcharacter is processed.

In Conclusion

I'll have to admit that I didn't knowmuch about data encryption beforeattempting this project. Since most ofyou probably share this lack of knowl-edge, I included more backgroundmaterials than 1 might ordinarily pre-sent with a project. I trust that Ineither bored you nor made you intoa paranoid computer user. It's justthat forewarned is forearmed.

One additional observation aboutusing the encryptor. While it was de-signed to facilitate direct use througha modem, the telephone lines aresometimes not up to the task. Drop-ping or adding a character destroysthe synchronization necessary be-tween the encryptor and decryptor,and most modems do not include er-ror checking. Rather than restartingafter sending fixed character blocksusing the intelligent (ATN=) commandset, it is much easier to preencrypt theentire file using the loopback mode.

Then, using XMODEM or any gooderror-checking communication pro-gram, send the whole file to the re-ceiving system. This situation doesnot occur in directly connected com-puters, LANs, or any communicationsystem with block transmission anderror checking.

Finally, after describing the encryp-tor to a longtime engineering friend,I was informed of an unconsidered

application. His job was to designanimated graphics simulations of vari-ous research projects so that manage-ment has some clue as to what theirbig-bucks scientists are up to. Unfor-tunately, to most people these simula-tions looked and ran like the greatestvideo games, and he was always try-ing to track down who had swiped hissoftware for a demo.

The solution was to create a hard-ware key to his software. He did thisby connecting a data-encryptor set inthe loopback mode to the serial porton his computer and partially encrypt-ing the graphics software to the cipherkey stored in EPROM. As his programinitialized, it had to send the en-crypted block out to be decipheredcorrectly before there were any graph-ics routines to execute. This didn't in-hibit the demonstrations but requiredthat they be only at his computer,where he could keep track of his soft-ware, or wherever he carried his littleblack encryptor. Too bad. I used tohave such a good time runningaround demonstrating his stuff!

Circuit Cellar Feedback

This month's feedback begins onpage 58.

Next Month

Steve presents his new and improvedserial EPROM programmer.

BIBLIOGRAPHY

Data Encryption Standard. FIPS Publication46. U.S. Department of Commerce/Na-tional Bureau of Standards, 1977.

Feistel, Horst. "Cryptography and Com-puter Privacy." Scientific American. May1973, page 15.

Kahn, David. The Codebreakers. New York:Macmillan, 1967.

Konheim. Alan G. Cryptography: A Primer.New York: Wiley, 1981.

Lancaster, Donald E. TTL Cookbook. In-dianapolis: Sams, 1974.

Meushaw. Robert V. "The Standard DataEncryption Algorithm." BYTE, March1979, page 66: April 1979, page 110.

Roberts, Ralph. "A BASIC Program forHome Cryptography." BYTE, April 1982,page 432.

Smith, John, "Public Key Cryptography."BYTE, January 1983, page 198.

Special thanks to Roger James and BillCurlew for their software expertise.

UO BYTE • SEPTEMBER 19

CIRCUIT CELLAR

Caesar Cipher: The simplest encryp-tion scheme, where the encryptedcharacter is displaced from the plain-text character by a fixed amount:

Plaintext:

ABCDEFGHIIKLMNOPQRSTUVWXYZCiphertext:DEFGHIIKLMNOPQRSTUVWXYZABC

Plaintext: THE QUICK BROWN FOXCiphertext: WKH TXLFN EURZK IRA

This cipher is easily broken using fre-quency analysis.

DES: This stands for data-encryptionstandard, a system in which a 64-bitblock of data (eight characters) is trans-formed into an encrypted block of 64bits using a standard algorithm con-trolled by a 56-bit key. Because thevalue of each bit in the output blockis dependent on every bit in the inputblock, it is called a block cipher.

Frequency Analysis: Tabulating theoccurrences of each letter in theciphertext. It is assumed that the mostfrequently occurring letter is a plaintext"e," the next most frequently occurringletter is a "t." etc. Cryptograms in theSunday paper are easily broken usingfrequency analysis.

Glossary

Kasinsky Solution: A method ofdetermining the number of alphabetsused in a polyalphabetic cipher.

Monoalphabetic Cipher: A simplesubstitution in which each letter ofplaintext has a unique letter in theciphertext.

Plaintext:

ABCDEFGHIIKLMNOPQRSTUVWXYZCiphertext:EXUGRQFBPIAKCZHINODLMSVWYT

Plaintext: THE QUICK BROWN FOXCiphertext: LBR NMPUA XOHVZ QHW

This cipher is easily broken using fre-quency analysis.

Polyalphabetic Cipher: A system inwhich several monoalphabetic ciphersare used together in a cycle. This ex-ample has a short cycle of 3:

Plaintext:

ABCDEFGHIIKLMNOPQRSTUVWXYZCiphertext 1:

EXUGRQFBPIAKCZHINODLMSVWYTCiphertext 2:

LWKCVJAXMBNFEUDSTGOPRYIQZHCiphertext 3:IPIOAKHQBLGNMRCFEWSYVUTZXD

Plaintext: THE QUICK BROWN FOXCiphertext: LXA NRBUN PODTZ JCW

Frequency analysis can be used todecipher this, but a separate tabulationmust be kept for each alphabet. In thisexample, three tables would have to bekept. With even a few lines of text, itcould be broken. Before tabulation canbegin, the attacker must know howmany alphabets are being used. If amessage is encrypted with as manyalphabets as there are characters in themessage, and the arrangements of theletters in each is truly random, themessage will prove to be impossibleto break.

Pseudorandom Sequence Genera-tor: Any hardware or software thatgenerates a very long sequence of bits.The sequence will eventually start overand repeat. This is why it is a pseudo-random sequencer and not a randomsequencer. In addition, while the se-quence appears to be random, it willalways be the same if it is started withthe same seed.

Vernam Cipher: A method where acontinuous stream of key bits is com-bined, using an exclusive-OR function,with the message bits for encryption.Each bit in the output stream is depen-dent on only 1 bit in the input streamand I bit in the key.

The following items are available from

CCI

P.O. Box 428

Tolland. CT 06084

1. Data encryptor/decryptor blank PC boardand programmed 2764 EPROM containingencryption algorithm and serial I/O software.

$79, two for $150

2. Data encryptor/decryptor PC board kit.Includes all board-mounted components,programmed EPROM, and microprocessor,less power-supply module and case . . $99.two for $195

3. 115-V AC/60-Hz power-supply module forabove $9

4. 5- by 514- by I ^-inch enclosure with blankend plates $9.75

The data encryptor is available in low quan-tities only in kit form. It is available assem-bled and tested with right-angle toggle andDIP switches only in volume OEM quantities(telex: 643331). Price and delivery informa-

tion available on request.

All payments should be made in U.S.dollars by check, money order, MasterCard,or Visa. Surface delivery (U.S. and Canadaonly): add $5 for U.S., $10 for Canada. Fordelivery to Europe via U.S. air mail, add $20.Three-day air freight delivery: add $8 for U.S.(UPS Blue). $25 for Canada (Purolator over-night), $45 for Europe (Federal Express), or$60 (Federal Express) for Asia and elsewherein the world. Shipping costs are the same forone or two units. Connecticut residents add7.5 percent sales tax.

Most of the individual encryptor com-ponents, including the 8031, are availablefrom |DR Microdevices, 1224 South BascomAve. San lose, CA 95128, (800) 538-5000.

There is an on-line Circuit Cellar bulletinboard system that supports past and pres-ent projects. You are invited to call and ex-change ideas and comments with other Cir-cuit Cellar supporters. The 300/1200/2400-bps

BBS is on-line 24 hours a day at (203)871-1988.

Editor's Note: Steve often refers to previousCircuit Cellar articles. Most of these past ar-ticles are available in book form from BYTEBooks. McGraw-Hill Book Company. P.O. Box400, Hightstown, NJ 082 50.

Ciarcids Circuit Cellar. Volume 1 covers articlesin BYTE from September 1977 throughNovember 1978. Volume II covers December1978 through lune 1980. Volume III covers July1980 through December 1981. Volume IVcovers January 1982 through June 1983.Volume V covers July 1983 through December1984. ■

To be included on the Circuit Cellar mail-ing list and receive periodic project up-dates and support materials, please cir-cle 100 on the Reader Service inquirycard at the back of the magazine.

SEPTEMBER 1986 • BYTE 111

ryTv.-i

_16

e six time machines.

t»il*m8)

■ all

i-; >

SBRjlaRygBisCgE

Machines that are not only built to save time, but to defy it,by taking you years into the future. Bfc

They are Citizen™ printers. Designed to run like dmost leading computer systems.They7re quiet,lightweight and willproduce quality printouts time after time without a bit of trouble.

They have simple user controls and easy paper loading systemsthat let you start any job in seconds. And only Citizen ados built-in extras like variable-width tractors without making you endurethe

^^^^^mmt

id, with correspondence quality at the flip of a switch.And our Premiere™ 35 is the only 35 cps daisywheel with a price

114 BYTE • SEPTEMBER 1986

ILLUSTRATED BY CARY HENRIE

PROGRAMMING PROJECT

CALCULATING CRCSBY BITS AND BYTES

by Greg Morse

Use the XOR function to implement modulo 2 divisionwhen calculating cyclic redundancy checks

Recently I needed to im-plement the XMODEMcyclic redundancy check(CRC) option on myXCom9 modem pro-gram. Despite the manyprograms available for, 1 had some difficultyunderstanding the math behind the calcula-tions. The details became clear after muchresearch and experimentation.

The starting point for all CRCs is fancylinear algebra. The CRC is defined in termsof message polynomials, generator poly-nomials, and so on. As Perez. Wismer, andBecker state in "Byte-wise CRC Calculations"[IEEE Micro, June 1983).

In a system employing CRC the message be-ing transmitted is considered to be a binarypolynomial M(Xj. It is first multiplied by Xkand then divided (modulo 2) by an arbitrarygenerator polynomial G(Xj of degree kwhich results in a quotient Q(X) and aremainder. . .

It sounds confusing, but if you can under-stand how to apply the math, you candesign more efficient programs and spotmany erroneous ones.

The "Math-ness" to the Method

The design of the polynomial G(X) is ex-tremely complex. You need to pick one that

produces CRCs that are good at detectingerrors. Fortunately, many G(X)s existalready. Table 1 contains the two most com-mon G(X)s in an 8-bit-byte environment.Let's calculate the CRC for the letter T,0101 0100 in binary. M(X) is the messageas it is transmitted. You transmit a charac-ter's least significant bit (LSB) first, so M(X)becomes 00101010. Then you dividemodulo 2 as shown in figure 1. (Modulo 2means you use the XOR instruction insteadof the normal add and subtract.) Work itthrough according to the process shown infigure 2. Note that the CRC result is givenin reverse order, that is, most significant bit(MSB) on the right, LSB on the left.

BIT-ORIENTED ALGORITHMS

Using the long-division approach, if you hadonly a single zero bit to send, you wouldget the result shown in figure 3. If you hadtwo bits to send, a zero and then a one, longdivision would produce the result shown infigure 4. The first remainder in figure 4 isthe same as the first remainder in figure 3except that its LSB has been XORed with

[continued)Greg Morse (10871 Roseland Gate, Richmond, B.C..Canada V7A 2Rl) is an engineer with the BritishColumbia Telephone Company. He has 20 years'experience with computers and 10 with data com-munications. Greg has B.A.Sc. and M.A.Sc. degreesin electrical engineering.

SEPTEMBER 1986 -BYTE 115

CALCULATING CRCS

Table 1: The two most common G(Xjs (generator polynomials) in an 8environment. You can code the G(X) as a 17-bit binary, or hexadecimal,The ones and zeros represent the coefficients of the different powers of Xpolynomial

bit-bytenumber,in the

CRC-16 (Bisynchronous)

X16 + X's + X2 + 1 = 1 1000 0000 0000 0101CRC-CCITT (SDLC, X.25, XMODEM)

X16 + X" + Xs + 1 = 1 0001 0000 0010 0001

1 0001 0000 0010 0001 0010 1010 0000 0000 0000 0000

1 1 '^n^1 1 '

CCITT polynomial

letter TLSB MSB

16 extra zeros

Figure l: The initial modulo 2 division used to calculate the CRC for the letter T.Note that the letter is given LSB first: in other words, it is reversed.

Figure 2: The entire long-division calculation process used to derive the CRC forthe letter T. The apparent subtractions in this process are XORs; therefore, there areno "borrows:' A "." represents a zero that has no further part in the calculation,and "O" represents a zero that was "brought down" from the dividend line.Therefore, the line .00 1000 0101 0010 100 represents a remainder of 00 10000101 0010 10. Note that the CRC is given with the LSB on the left. Thus, theCRC for the letter T = 0 54 is (MSB first) 0001 0100 1010 0001. or 14A1hexadecimal.

1

1 0001 0000 0010 0001

1st remainder -*remainder after 4 bits

CRC for the letter T

(quotient, ign

| 0010 10100

Dred)0000

0000

0010

0000

10000000

0

1

.0100

1010

0000

0000

oo

. 1010

10100010

00000000

00000100

ooo

001

.00

1000

0000

0100

0010

10001000

00001000

01000001

0010

0000

. 0000

1000

0101

0010

10

. 00

0

1000

0101

0010

100

.00

1000

0101

0010

100O

. 1000LSB—I

0101

0010

1000

L-MSB

the second data bit. This similarity willalways be true because of the way theM(X) polynomial is built.

This observation leads to the follow-ing bit-by-bit algorithm for calculatingthe CRC:

1. Write down the first data bit (zeroor one) to be transmitted.

2. Write down 16 zeros to its right.

3. Divide the 17-bit number by the17-bit CRC polynomial usingXOR instead of subtraction.Make a note of the remainder,which is the CRC.

4. Get the next data bit.

5. XOR this bit with the LSB (left-most bit) of the CRC in step 3.

6. Append a zero to the right-handend of the result in step 5.

7. Divide the 17-bit number fromstep 6 by the 17-bit CRC poly-nomial. Use XOR instead of sub-traction. The remainder is theCRC.

8. Repeat steps 4 through 7 untilthere are no more data bits.(You can replace steps 1 through3 with a single step to initializethe CRC to zeros.)

Thus, you can calculate the CRC abit at a time, for any number of bits,with almost no extra calculation over-head. In summary, the steps involvedin the long-division method are

1. The message bits are writtendown in the order in which theyare transmitted, from left toright, that is, LSB on the left.

2. Sixteen zeros are appended tothe right-hand end of the binarynumber formed in step 1.

3. The generating polynomial iswritten down MSB first, that is,on the left.

4. The division is done modulo 2,that is, using XOR instead ofnormal subtraction.

5. The CRC is the remainder afterall data bits have been pro-cessed. The LSB is on the left.

Figure 5 translates these steps into aflowchart.

Hardware Implementations

One disadvantage of the flowchart infigure 5 is that it requires a 17-bit reg-

[continued)

116 BYTE • SEPTEMBER 1986

Inquiry 221

CALCULATING CRCS

1 0001

0000 00101st remainder

■ 0

MSB

0001 | 0 00000

0000

0000

0000

-> . 0000LSB -J

0000

0000

0000

L

Figure 3: The long-division CRC calculation for a single zero bit.

1 0001 0000 00101st remainder -»2nd remainder -»

0001

01

| 010

0000

0000

0000

0000

. 11

00000001

00000000

00000010

oooo

0001

0001

0000

0010

0001

Figure 4: The long-division CRC calculation for the two bits 01.

Set 16-bit CRC to zero.

)

r

XOR CRC withpolynomial (17-bit XOR).

J

'

XOR LSB of CRC withcurrent data bit andstore result in CRC.

J

r

Shift CRC left. DeleteLSB. CRC now 16 bits.

Append a zero to RHS ofCRC. CRC now 17 bits.

<r bit of

ft ^\CRC \

No

>^ A

S^ mc

^\ d£^\ bi

^y ^\

\c Yes

ire ^\__L

ta s/*~s? /^

^v. zero'5 s'

No

CRC now contains 16-bitresult. LSB on the left.

Figure 5: A flowchart representing the steps involved in the long-division method ofcalculating a CRC.

MathCAD

The Engineer's Scratch Pad

■HPilHiWiM

FOURIER RECONSTRUCTION SQUARE HftUB

40

: 1

2-5CJ

,,N20)

Reconstructfunction, usingfirst two ternsof Fourier series

40 points

stepfunction

i := 1,3 ..3

.1

■sin

i -2 -ir-

Lb

., /

R ,Sj J

/'"■

"' N

\ ..

-i s

■—■

(

)

j

N

A powerful computation anddocumentation tool for yourIBM-PC.

With MathCAD you simply and inter-actively create, edit and display for-mulas on the screen the way you areused to writing them. Equations areinstantly computed and the results dis-played on the screen as a single num-ber or a plot. Text may be added to thescreen and everything may be printedout as an integrated document.MathCAD has built-in hyperbolic andcircular functions, performs all calcu-lations with real and complex num-bers, performs iterative calculations,handles all units, performs errorchecking and dimensional analysisand much more...

The price of MathCAD-f 189.

In Massachusetts add 5% sales tax.

To order send check, p.o., call uswith your MasterCard number orcall us for the nearest dealer.

1.800.MathCAD or 617.577.1017

Math Soft

x +

V

I *

One Kendall SquareCambridge, Massachusetts 02139

SEPTEMBER 1986 -BYTE 117

CALCULATING CRCS

Q=1

R1

R2

R3 R4 R5

R6

R7

R8

R9 R10 R11 R12 R13 R14 R15 0

XOR

X16=1

0

0

0 X12 0

0

,0

0

0 0 X5 0 0 0 0 1

NewCRC RO R1 R2 R3 R4 R5 R6 R7 R8 R9 R10R11 R12 R13 R14 R15

Figure 6: The division process if Q = l.

Q = 0XOR

0

R10

R20

R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15 000000000000000

New GRC

RO

R1

R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15

Figure 7: The division process if Q = 0.

Q = (DXOR

RO)XORX16

R10

R20

R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15 0OQOOOOOOQOOOOQ

New CRC

RO

R1

R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15

Figure 8: The division process regardless of the value of Q.

CRCout

c

R0 W R1 W R2 C R3 ( X0R

7~7

R4 (3 £

R10 ( XOR

7^

R11 C3 £

R15

XOR

XOR

data bit

Figure 9: The process shown in figure 8 translated into a hardware circuit using shift registers and XOR gates. (The boxesare stages to a shift register: the shift register is only 16 stages long.) Note that the XOR gate going into R15 is superfluous,since Q XOR 0 is always Q. Note also that in the long-division method, the calculations are done before "bringing down" thenext zero bit. Similarly here, the XORs are performed before the shift.

xor ';

R15

-4

R11

XOR7T

R10

3 e>

R4

XOR "j R3

R2

R1 Z} RO

CRCout

P

XOR

data bit

Figure 10: The reverse drawing of figure 9; the LSB is on the right instead of on the left.

118 BYTE • SEPTEMBER

CALCULATING CRCS

ister. However, after the division iscomplete, the left bit will always be azero. Either it was a zero to beginwith, or if it was a one, it was XORedwith the X16 bit of the polynomial,which is also a one, producing a zero.Thus, you can XOR with only the 16LSBs of the polynomial. In the caseof the CRC-CCITT polynomial, X16 +X12 + X5 + 1 (1 0001 0000 0010 0001in binary or 1 1021 in hexadecimal),you can XOR with 0 1021.

Let the bits of the CRC register beR0, R1, up to R15; let the data bits beDO up to D7; let the polynomial bitsbe XO up to X15; and define Q = DXOR RO, that is, set Q equal to thecurrent data bit. D, XORed with RO.In every case, the LSB is bit 0.

Then, if Q = l. the division processlooks like that in figure 6. If Q = DXOR RO is zero, then the divisionreduces to that in figure 7. But whenQ = l, the new R15 is always 1, andyou XOR R4 and R11 with X12 andX5, which are 1. If Q = 0, then thenew R15 is zero and you XOR R4 andR11 (and all other Rns) with zero.

You can combine the two cases asshown in figure 8. Turning that pro-cess into a circuit using shift registersand XOR gates (see figure 9) isstraightforward. You can also draw thecircuit so that the LSB (R0) is on theright (see figure 10). Both diagramsare convenient depending on the kindof software algorithm to be derived.Note that in hardware the XOR isdone before the shift because of theway flip-flops work. The importantpoint is that the new R10 = (old R11)XOR (old R0) XOR (new data bit).

Bit-by-Bit SoftwareAlgorithms

When you do the calculations in soft-ware, you don't have to do the XORbefore the shift. The important thingin software is to avoid having to dealwith 17-bit values that don't fit into avariable. A software routine alsodoesn't need to use the Q = D XORR0 result to drive a gate. You can pro-gram the polynomial directly into thecode as a constant.

You can now derive a software rou-tine based on figure 10 (or figure 9,in which the order of storing the bitsof the CRC is reversed). If you assume

that the CRC result is kept in a 16-bitinteger with R15 (the MSB of the CRC)in the high (leftmost) bit position, thenif Q = 1, you first shift the previousCRC to the right as in figure 11. Interms of a high-level language, youshift the CRC right by one, discardingthe LSB, and XOR with 0 8408. By

testing Q first and then doing the shiftbefore the XOR, you avoid the needfor a 17-bit register. Because of theway in which the CRC is stored in thevariable, the XOR is done with 0 8408rather than 0 1021, as you mightexpect. This follows directly from the

(continued)

0 R15 R14 R13 R12 R11 R10 R9 R8 R7 R6 R5 R4 R3

R2

R1

and then XOR with:

10000100000010

0

0

to get the new CRC:

R15 R14 R13 R12 R11 R10 R9 R8 R7 R6 R5 R4 R3 R2

R1

R0

L_ Note new R10 = old R11 XOR 1

Figure 11: The diagram for a software routine based on the hardware circuit in figure 10.When Q = 1 the new CRC becomes the previous CRC shifted right by one bit positionand XORed with G(X).

Listing 1: CCITT.C, the CCITT routine for calculating CRCs in C source code.

*/*/*/

/* Straightforward, non-optimized CRC-CCITT routine

/* Assumes 16-bit integer variables

/* MSB of integer is MSB of CRC result

#define POLY 0x8408

/* POLY = 1021 in bit rev order*/

BLKCRC(bufptr, crcres, count)

unsigned char *bufptr;

unsigned int *crcres, count;

\

int i;

*crcres = 0; /* for SDLC use 0xFFFF */

for (i=1; i<=count; ++i, bufptr++) /* do for whole BLK*/bytecrc(bufptr, crcres) /* do CRC for 1 char */

return (*crcres);{ /* end BLKCRC */

bytecrc(bufptr, crcres)unsigned char *bufptr;unsigned int *crcres;

\

unsigned int j.ch.Q;

ch = (unsigned int) *bufptr;

for (j=1; j<=8; j++) {

/* get char, to int fmt*//* do each bit LSB 1st */

Q=(*crcresfc0x0001)~(ch&0x0001) /* Q=R0 XOR D

if ( Q == 0x0001) {*crcres= *crcres»1;*crcres= *crcres~POLY;

\

e I se

*crcres= *crcres»1;ch = ch »1 ;

/* Q is one

/* shift right one

/* XOR with number

/* Q is zero/* just shift no XOR/* move next data bit/* into position

} /* end FOR - data bits all done */

return (*crcres);} /* end bytecrc */

*/*/*/*/

*/*/*/*/

SEPTEMBER 1986 • BYTE

119

CALCULATING CRCS

diagram shown in figure 10. Generallyspeaking, if you process data LSB first,you-can store the CRC with its MSB inthe MSB position of the integer variable.

Listing 1 contains the implementa-tion of a CRC calculation based on theCC1TT polynomial. CC1TT.C provideslots of intermediate results, for clari-ty rather than performance. This pro-gram implements the CCITT/IBM FCScalculation in a standard way with oneexception: initializing the CRC. \Editofsnote: CC1TT.C, XMODEM.C SDLC.ASM,and XMODEM.ASM for OS9 are avail-able in several formats: see the insert card afterpage 368.|

The purpose, however, is to imple-ment the de facto XMODEM stan-dard. I found no published XMODEMCRC specification as such. What hasbeen published is a C program.

XMODEM.C, that does the calcula-tions (see listing 2). Apart from usingthe CCITT polynomial, this programis not CCITT standard in that data isprocessed MSB first, rather than LSBfirst, and the CRC is initialized to zerosrather than to ones.

Choices in CRC Calculationand Transmission

A CRC calculated by these methodshas some very desirable error-detec-tion properties, but it is not perfect.For example, you can add or deleteany number of zero bits to or from thebeginning of the block without affect-ing the CRC. (The remainder stayszero no matter how many zero bitsstart the block.) Furthermore, sincethe CRC is a cyclic code, any error,such as a clock slippage, that deletes

a bit at the beginning of the block andinserts the same bit at the end of theblock (the last bit of the CRC) will notaffect the CRC. For these reasons theCRCs used by IBM in the SDLC pro-tocol and CCITT in the X.2 5 andHDLC protocols specify the following:

1. All bits of a block are protectedby the CRC.

2. The data is sent LSB first. TheCRC is calculated on bits as theyare sent.

3. The CRC is initialized to all ones.This allows detection of anymissed or inserted zero bits atthe beginning of a block.(Missed or inserted ones are stilldetected.)

4. The one's complement of the

(continued)

Listing 2: XMODEM.C the XMODEM

routine for calculating CRCs in C source code

/* Sample bit-oriented

CRC routine */

/* Adapted fron

YMODEW

protocol reference */

/* Calculate CRC on a block

of date

.

*/

/* Ptr points to block of ct

aracters, count gives size of buffer.

*/

/* This program returns the

CRC

with the LSB of the CRC in the

*/

/* high bit of the result ir

teger.

*/

/* XMODEM deviates from the

CCITT s

tandard in that it does not use */

/* the LSB of the data 1st,

nor

does it initialize the CRC to all

*/

/* ones as specified by the

standar

d.

*/

int calcrc(ptr, count)

char *ptr;

int count;

{

unsigned int crc;

int i;

crc = 0;

/*

note not 0xFFFF

*/

while (—count >= 0) {

i = (int) *ptr++;

/*

convert data char to int

*/

i = i « 8;

/*

shift char to high byte

*/

crc = crc * i;

/*

add current data to current

*/

/*

remainder modifies only least

*/

/*

sig 8 bits (high byte) of CRC

*/

for (i=0; i<8; ++i)

/*

loop for each bit

*/

i f (crc & 0x8800) }

/*

test D XOR R0

*/

crc = (crc « 1);

/*

discard LSB of CRC and

*/

/*

append zero

*/

crc = crc * 0x1021;

/*

XOR with low 16 bits

*/

/*

of CCITT polynomial

*/

/*

because CRC is stored LSB 1st

*/

/*

polynomial written MSB 1st

*/

{ /* end if */

e I se

crc = crc « 1;

/*

discard LSB & append 0 */

| /* end wh ile */

return (crc & 0xFFFF);

/*

16-bit result for whole block

'/

\ /* end calcrc */

120 BYTE • SEPTEMBER 1986

The single best way to turn yourPC-ATinto a multi-user system.

Introducing the Wyse WY-60.

Now there's a perfectly compatible,reliable, economical, Wyse way to getmulti-user mileage from your PC-AT.Wyse WY-60 terminals give you com-plete compatibility for your IBMPersonal Computer AT systems, rightdown to the exact keyboard layout,character set and display features.

The only thing different is howmuch cleaner and more readable yournformation is with the WY-60's highresolution and flat, non-glare, 14" tilt/swivel screen.

Multiple display formats go upto 132 columns and 44 lines on onescreen, to get the most out ofapplications such as Multiplan andWordStar.

And a 512-character downloadablesoft font is also there when you needmathematical symbols or customizedcharacter sets.

The adjustable arm is optional,and you can choose a green, white oramber screen.

No wonder we ship more terminalsthan anybody but IBM.*

Call toll-free or write, today, formore information. Wyse Technology,Attn: Marcom Department 60-AT, 3571N. First St., San Jose, California 95134.

Call 1-800-GET-WYSE

WYSE

I I I I

YOU NEVER REGRET A WYSE DECISION.

l;':y''':i^p &:&&'& ^;!

Wyse is a registered trademark of Wvse Talmo.logv. WY-60 and the "V"shapeddesign arc trademarks of Wyse teehnolagy. I ISM and IBM Personal Computer ATaretrademarks of Internationa! Business Machines Corporation, WordStar is aregistered trademark of MicroPro International Multiplan is a registered trademark ofMicrosoft Corporation. O t$86 HVse Teehnahw ttWqwatf N85 terminal shipmentupdate.

Inquiry 383

CALCULATING CRCS

Bit

*15 14 13 12 11 *10 9

8

7

6

5

4

*3

2

1

0

R15 R14 R13 R12 R11 R10 R9

R8

R7

R6

R5

R4

R3

R2

R1

RO

Figure 12: The contents of the shift register at the beginning of bytewise SDLCcalculations.

Bit *15 14 13 12 11 *10 9 8

7

6

5

4 *3

2

1

0

Shift 1 DO R15 R14 R13 R12 R11 R10 R9RO DORO

R8

R7

R6

R5 R4DORO

R3

R2

R1

Figure 13: The contents of the shift register after the first shift. Note that allentries in a column are XORed together.

Bit

*15 14 13 12 11 *10 9 8

7

6

5

4

*3 2

1

0

Shift 1

TO R15 R14 R13 R12 R11 R10 R9TO

R8

R7

R6

R5

R4 R3TO

R2

R1

Figure 14: The same as figure 13 but with the abbreviation TO for DO XOR RO.

Bit *15

14

13

12 11 "10 9 8 7

6 5

4

"3

2

1

0

Shift 4 T3

T2

T1

TO R15 R14 R13 R12 R11T3 T2 T1 TO

R10 R9

R8

R7T3

R6T2

R5

T1

R4TO

Figure 15: The contents of the shift register after three more right shifts. TOrepresents DO XOR RO, T1 represents D1 XOR R1, and so on.

Bit "15 14

13

12

11 "10 9 8 7 6

5 4 "3

2

1

0

Shift 5 T4 T3TO

T2

T1

TO R15 R14 R13 R12 R11T4 T3 T2 T1 TOTO

R10 R9 R8

T4TO

R7T3

R6

T2

R5

T1

Figure 16: The contents of the shift register after the fifth shift.

Bit

"15

14

13

12

11

"10

9

8

7

6

5

4

"3

2

1

0

Shift 8

T7

T6

T5

T4

T3

T2

T1

TO

R15

R14

R13

R12

R11

R10

R9

R8

T3

T2

T1

TO

T7T3

T6T2

T5T1

T4TO

T3

T2

T1

TOT7

T3

T6T2

T5T1

T4TO

CRC is transmitted rather thanthe CRC itself. This allows detec-tion of slippage-type errors.The CRC is sent LSB first.The polynomial used is X16 +X12 + X5 + 1.

Figure 17: The contents of the shift register after the eighth shift.

XMODEM.C implements the CRC asfollows:

1. Only data bits are included. Theheader character and two block-number bytes are not included.

2. The data is sent LSB first. TheCRC is calculated on the dataMSB first.

3. The CRC is initialized to zeros.

4. The CRC is not complementedbefore transmission.

5. The order of transmission is highbyte of CRC then low byte. SinceUARTs transmit LSB first, this isequivalent to LSB of high bytethrough MSB of high byte, thenLSB of low byte through MSB oflow byte.

6. The polynomial used is X16 +X12 + X5 + 1.

The CCITT method is easily imple-mented in a chip using shift registersand XOR gates, while the XMODEMmethod is not easily realized in hard-ware. To check an incoming datablock, you have two options. You cancalculate the CRC on all the protectedbits only, omitting the CRC bits, andcompare the calculated value to thereceived value. Or you can calculatethe CRC on all the protected bits andthe CRC itself and then compare theresult to a known constant. If the firstmethod is adopted in the CCITT case,the one's complement of the calcu-lated value must be compared to thereceived CRC. In the XMODEM case,the comparison is direct. If the secondmethod is adopted, in the XMODEMcase the known constant is zero, whilein the CCITT case it is 0 FOB8. (Thehigh bit is on the left, i.e., 1.) No one's-complementing is required.

Byte-oriented SoftwareImplementations

The next step is to derive routines tocalculate the CRC a whole byte at atime rather than bit by bit. This ap-proach was first proposed by Perez,Wismer, and Becker. The motivationis that an 8-bit microprocessor is not

122 BYTE • SEPTEMBER 1986

CALCULATING CRCS

limited to single-bit XORs but can dothem 8 bits at a time. The basic ap-proach is to work from the hardwarediagram (figure 9 or 10) and see whatthe CRC register would look like after8 bits have been calculated.

Bytewise SDLC calculations. Infigure 10 you can see that you havethe contents of figure 12 in the shiftregister at the beginning of calcula-tions. Then you take the LSB of data,DO, and XOR it with R0 (DO XOR R0).After the right shift, the new R15 is DOXOR R0, the new R10 is R11 XOR DOXOR R0, and the new R3 is R4 XORDO XOR RO (See figure 13).

The combinations DO XOR RO, D1XOR R1, D2 XOR R2, and so on, oc-cur frequently, so let's abbreviatethem as TO = DO XOR RO, T1 = D1XOR R1, and so on. Figure 13 cannow be rewritten as in figure 14. If youproceed in this fashion for three moreshifts, you get figure 15.

To do the XOR on D4, you must usethe content of the LSB of the shift reg-ister, which is now R4 XOR DO XORRO. The result is D4 XOR R4 XOR DOXOR RO, or in shorter form, T4 XORTO. The result after the fifth shift isshown in figure 16; after the eighthshift, in figure 17.

The tedious part is done. Now youwant to write a program that will pro-duce the same result when you'reworking with a byte of data as youwould get from the shift register aftereight shifts. The emphasis in thisroutine will be on speed. If you makeit too general-purpose, a differentchoice of polynomial will lead to acompletely different program. Also,for speed, it makes sense to code theroutine in assembly language.

When working with 8-bit microcom-puters, it is convenient to define the8-bit quantities found in table 2. If youstudy figure 17, you will see that thecombination

T7 T6 T5 T4XOR T3 T2 T1 TO

occurs several times. Let's call thisterm U = U7 U6 U5 U4. If you re-write figure 17 with these substitu-tions, you get figure 18.

Further optimizations become ap-parent as you write the code. It is con-venient to implement the SDLC algo-

Bit *15 14

13

12

11

*10 9

8

7 6 5 4 *3

2 1

0

Line*1

2 U7 U634

U5

U4

T3

T2 T1U7 U6

TOU5

R15 R14 R13 R12 R11

U4 T3 T2 T1 TOU7

R10 R9U6 U5

R8U4

Figure 18: The same as figure 17 but using the abbreviations given in table 2.Line 1 is CRCHi moved into CRCLo; line 2 is the high nubble of U and the lownubble of T; line 3 is the line 2 byte shifted left by 3 bits; and line 4 is U shiftedright by 4 bits.

Table 2: Some convenient abbreviations for

various 8-bit quantities used in

CRC

calculations in an

8-bit microcomputer environment.

CRCHi = R15

R14

R13

R12

R11

R10

R9

R8

CRCLo = R7

R6

R5

R4

R3

R2

R1

RO

Data = D7

D6

D5

D4

D3

D2

D1

DO

T = T7

T6

T5

T4

T3

T2

T1

TO

U = U7

U6

U5

U4

0

0

0

0

Table 3: Some test cases provided for comparison if you want to writeyour own routine.

Text SDLC

CRC

T 1B26THE 44BETHE,QUICK,BROWN,FOX,0123456789 DF91

14A17D8D7DC5

15 14 13 12 11 10 9

8

7

6

5

4

3

2

1

0

R15 R14 R13 R12 R11 R10 R9

R8

R7

R6

R5

R4

R3

R2

R1

RO

Figure 19: The contents of the shift register at the beginning of bytewiseXMODEM calculations.

15 14 13 12 11 10 9

8

7

6

5

4

3

2

1

0

R15 R14 R13 R12 R11 R10 R9D7 D6 D5 D4 D3 D2 D1

R8DO

R7

R6

R5

R4

R3

R2

R1

RO

Figure 20: The contents of the shift register after the XOR with the data byte.

rithm (as in the program SDLC.ASM)because of the built-in check that cal-culating a CRC on a "received" blockprovides: that is, the result shouldalways be 0 F0B8.The innermost loop of SDLC.ASM

takes only 86 cycles per byte in-cluding seven overhead cycles tocheck for end of buffer. If a 2-MHz6809 were dedicated to CRC calcula-tions, this would result in a through-

(continued}

SEPTEMBER I986 -BYTE 123

CALCULATING CRCS

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

T7

T6

T5

T4

T3

T2

T1

TO

R7

R6

R5

R4

R3

R2

R1

RO

Figure 21: The same as figure 20 but with the abbreviations T7 for R15 XORD7, T6 for R14 XOR D6, and so on.

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

T6

T5

T4

T3T7

T2

T1

TO

R7

R6

R5

R4T7

R3

R2

R1

RO

T7

Figure 22: The contents of the shift register after processing the first data bit andperforming the left shift.

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

T3

T2

T1

TO

R7

R6

R5

R4

R3

R2

R1

RO

T7

T6

T5

T4

T7

T6

T5

T4

T7

T6

T5

T4

Figure 23: The contents of the shift register after four shifts.

Figure 24: The contents of the shift register after five shifts.

Figure 25: The contents of the shift register after eight shifts.

15

14

13 12

11

10

9

8

7

6

5

4

3

2

1

0

T2

T1

TO R7

R6

R5

R4

R3

R2

R1

RO

T7

T6

T5

T4

T3

T6

T5

T4 T3T7

T7

T6

T5

T4

T3

T7

T7

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

R7

R6

R5

R4

R3

R2

R1

RO

T7

T6

T5

T4

T3

T2

T1

TO

T3

T2

T1

TO

T7

T6

T5

T4

T7

T6

T5

T4

T7

T6

T5

T4

T7

T6

T5

T4

T3

T2

T1

TO

Table 4:Text

The same test cases as in table 3 but for

XMODEM

XMODEM CRC

T

THE

THE.QUICK, BROWN, FOX.0123456789

1A711E0A0498

put of about 200,000 bps. A bitwisealgorithm to do the same job takes onaverage 3 53 cycles per byte and couldtake as many as 385. So the bytewisealgorithm is about four times faster.

The test cases in table 3 are pro-vided in case you want to write yourown routine. The column labeledSDLC results when you initialize theCRC with ones (this is the resultbefore the one's-complementing), andthe column labeled CRC results whenyou initialize with zeros.

XMODEM byte-oriented algo-rithms. The XMODEM CRC "spec,"such as it is, is shown in listing 2. Ifyou repeat the work done for SDLCcalculations (in figures 12 through 18)using listing 2 as a base, you will ob-tain the contents of the diagrams infigures 19 through 2 5. The contentsof the starting CRC are shown in figure19. After the XOR with the data byte,you get the result shown in figure 20.When you abbreviate R15 XOR D7 asT7, R14 XOR D6 as T6, and so on,figure 20 becomes figure 21. Afterprocessing the first data bit and theleft shift, you get the result shown infigure 22: after four shifts, figure 23:after five shifts, figure 24; and aftereight shifts (the final result), figure 2 5.Next, you define the appropriate vari-ables such as CRCHi, CRCLo, T, andU, and you look for factors.

An implementation of the XMODEMCRC calculations for the 6809 is givenin the program XMODEM.ASM. Thetest case results using the XMODEMalgorithm are shown in table 4.

Conclusion

Once you arrive at the basic idea ofusing the XOR function to implementmodulo 2 division, it is not difficult toapply the CRC algorithms, onlytedious. As with so many other com-munications standards, the optionsand the details provide most of thedifficulties and confusion. ■

BIBLIOGRAPHY

Forsberg. Chuck, ed. "XMODEM/YMODEM Protocol Reference." GodzillaBBS, (503) 621-3746.

IBM SDLC General Information Manual.Appendix B.

McNamara, J. E. Technical Aspects of Data Com-munications. Bedford, MA: Digital Equip-ment Press, 1982.

124 BYTE • SEPTEMBER 1986

SYSTAT

LESS BULKMORE STATISTICS!

How has SYSTAT become one of the largeststatistical software companies in only 3 years?

LESS BULK:

■

Will run from floppy disks

■

Needs less memory (256K on IBM or

compatible machines, 64K on CP/M, 400K

on VAX, or 512K on Apple Macintosh)

■

Has fewer than '/a of the commands of

other manufacturers' packages

MORE STATISTICS:

■

Full screen spreadsheet data editor

■

Missing data, arrays, character variables

■

Unlimited cases

■

Process rectangular, hierarchical, triangular

files and variable length records

■

Relational database management and

file concatenation

■

Character, numeric, and nested sorts

■

Unlimited numeric and character

transformations

■

Interactive or batch

■

Read and write text and external files

■

Subgroup processing in statistical modules

with SELECT and BY

■

Value labels

■

RECODE statements for quick multiple codes

■

Scatterplots, contours, histograms, stem-

and-leaf, boxplots, bar charts, quantile,

probability plots

■

Basic statistics, frequencies, T-tests

■

Multi-way crosstabs with log-linear modeling,

association coefficients, PRE statistics,

asymptotic standard errors

■

Pairwise/listwise missing value correlation,

SSCP, covariance, Spearman, Gamma,

Kendall Tau, Euclidean distances

■

Linear, polynomial, multiple, stepwise,

weighted regression

■

Extended regression diagnostics

a

Multivariate general linear model

Multi-way ANOVA, ANOCOVA, MANOVA,repeated measures, unbalanced designs,post-hoc tests■

Principal components with rotationsand scores■

Multidimensional scaling■

Multiple and canonical discriminant analysis,Bayesian classification■

Canonical correlation■

Cluster analysis (hierarchical, single,average, complete median, centroidlinkage, k-means, cases, variables)■

Nonparametric statistics (sign, Runs,Wilcoxon, Kruskal-Wallis, Friedman two-wayANOVA, Mann-Whitney U, Kolmogorov-Smirnov, Lilliefors, Kendall coefficient ofconcordance)■

Time Series (smoothing, seasonal andnonseasonal ARIMA, ACF, PACF, Cross-correlation function, transformations,forecasting, Fourier analysis)■

Nonlinear estimation (non-linear regression,least absolute values regression, logit, probit,maximum likelihood estimation, iterativelyreweighted least squares)■

Supplements include: Logit (multinomiallogit), Probit (probit analysis), Tesfaf (classi-cal and Rasch model test analysis), Report(formatter for SYSTAT files), Transfer (dBase,Lotus, GAUSS, STATA, SPSS direct filetransfer)

SYSTAT operates on the following machines:IBM-PC/XT/AT,™ Apple II,'" Apple Macin-tosh,"" Kaypro,'" HP 150,'" HP 9000,'" DECRainbow," VAX,'"' Alpha Micro,'" MS-DOS,'"CP/M'" and UNIX.'"

Single copy price:

$595 USA and Canada / $695 Foreign

Site licenses and quantity prices available

Call or write for additional information

SYSTAT, Inc.

2902 Central StreetEvanston, IL 60201

312 864.5670

CP/M

Apple Macintosh

VAX

SYSTAT

IBM PC

Read more about the extraordinary successof SYSTAT in So You've Got a Great Idea,by Steve Fitter (Addison Wesley, 1986).

The system for statistics

Inquiry 338 for End-Users. Inquiry 339 for DEALERS ONLY.

SEPTEMBER 1986 • BYTE

125

MICRO CAP and MICRO LOGICput your engineers on line

not in line

/viyoh/N ivo(?Ksr/«iT/o/><

How many long unproductive hourshave you spent "in line" for your simula-tion? Well, no more. MICROCAP andMICROLOGIC can put you on line byturning your PC into a productive andcost-effective engineering workstation.

Both of these sophisticated engineeringtools provide you with quick and efficientsolutions to your simulation problems.And here's how.

MICROCAP:

Your Analog Solution

MICROCAP is an interactive analogcircuit drawing and simulation system.It allows you to sketch a circuit diagramright on the CRT screen, then run an AC,DC, or Transient analysis. While pro-viding you with libraries for definedmodels of bipolar and MOS devices,Opamps, transformers, diodes, and muchmore, MICROCAP also includes featuresnot even found in SPICE.

MICROCAP II lets you be even moreproductive. As an advanced version, itemploys sparse matrix techniques forfaster simulation speed and larger net-

"Typical MICROCAP Transient Analysis"

works. In addition, you get even moreadvanced device models, worst case capa-bilities, temperature stepping, Fourieranalysis, and macro capability.

MICROLOGIC:Your Digital Solution

MICROLOGIC provides you with asimilar interactive drawing and analysisenvironment for digital work. Usingstandard PC hardware, you can createlogic diagrams of up to 9 pages with eachcontaining up to 200 gates. The systemautomatically creates the netlist requiredfor a timing simulation and will handlenetworks of up to 1800 gates. It providesyou with libraries for 36 user-definedbasic gate types, 36 data channels of 256bits each, 10 user-defined clock wave-forms, and up to 50 macros in each net-work. MICROLOGIC produceshigh-resolution timing diagrams showingselected waveforms and associateddelays, glitches, and spikes—just like diereal thing.

"Typical MICROLOGIC Diagram"

Reviewers LoveThese Solutions

Regarding MICROCAP ... "A highlyrecommended analog design program"(PC Tech Journal 3/84). "A valuable toofor circuit designers" (Personal SofrwarMagazine 11/83).

Regarding MICROLOGIC ... "An effi-cient design system that does what it issupposed to do at a reasonable price"(Byte 4/84).

MICROCAP and MICROLOGIC areavailable for the Apple II (64k), IBM PC(128k), and HP-150 computers and pricedat S475 and $4 SO respectively. Demoversions are available for S75.

MICROCAP II is available for theMacintosh, IBM PC(256k), and HP-ISOsystems and is priced at $895. Demoversions are available for SI00.

Demo prices are credited to thepurchase price of the actual system.

Now, to get on line, call or write today!

Spectrum Software

1021 S. Wolfe Road, Dept. BSunnyvale, CA 94087(408)738-4387 Inquiry 325

PROGRAMMING INSIGHT

BREAKING OUT

by Edward Batutis

This routine enables a breakpointin the PC-DOS DEBUG program

MOST DEBUGGERS have a "break-out" switch that allows you to jumpinto the debugger regardless of whatyour computer is doing. Unfortu-nately, the DEBUG program providedwith IBM PC-DOS does not have thisfeature. I have designed a programcalled BREAKPT (short for breakpoint)that gives PC-DOS DEBUG this capa-bility (see listings 1 and 2). |Editor's note:BREAKPT.ASM and BRKPTCOM.BASare available in a variety of formats: see theinsert card following page 368.|

HOW BREAKPT WORKS

BREAKPT is a memory-resident pro-gram that you need to run just onceafter booting your computer. Itsearches for a specific set of key-strokes. When it finds them, the pro-gram executes the breakpoint inter-rupt (interrupt 3). If DEBUG is running,BREAKPT prints out the registers,shows the next instruction, and waitsfor a command.

BREAKPT intercepts the keyboardinterrupt (interrupt 9), which is in-voked every time you strike a key. Theprogram examines the keyboard flagsin the ROM BIOS data area. The firstflag, at segment 40H (hexadecimal),byte I7H, shows what Shift and Con-trol keys are currently depressed. Ifthe flags indicate that the Control key

and both Shift keys are depressed si-multaneously, BREAKPT sets themicroprocessor's trap flag (bit 8) to 1.This initiates the execution of inter-rupt 3 (the breakpoint interrupt) viainterrupt 1 (single step).

For example, you install BREAKPTby entering the command BREAKPTat the DOS prompt. If you want to ex-plore the inner workings ofBASICA.COM, you load DEBUG and

BASICA.COM with the command DE-BUG BASICA.COM. Then you startBASICA with the go, or g, command.At this point, BASICA is in a loopwaiting for a keyboard entry. If youhold down the Control, left Shift, andright Shift keys and then release them,

[continued]Edward Batutis is a systems analyst for LFPSystems Inc. (4600 Marriott Dr., Suite 400,Raleigh, NC 27612).

Listing 1: Assembly language

source code for BREAKPT.

; BREAKPT

; Copyright 1985, Edwar

d Batutis

; Invokes the breakpoin; combination Is presse

t interrupt when Ctrl-Shift-ShIftd.

; Assembled with the IBM Macro Assembler Version 1.00

cseg segment

para

public 'code'

assume cs:cseg,org 100h

ds:cseg

breakpt proc

jmp

instal I

copyr ight

dbdb

'BREAKPT (c) Copyright 1985,'' Edward J. Batutis',01ah

oId_i nt9_vectorold_int9_offsoId_int9_seg

label

dw

dw

dword

?

7

[continued]

SEPTEMBER 1986 • BYTE

127

BREAKING OUT

new_int9:

call old keyboard routine by simulating an int

; save registers

qu i t:

done:

pushfcal 1

cs:o1d_int

pushpushpush

esaxbx

mov

ax,40h

movmovmovand

es.axbx,17ha I,es:[bx]al,07h

cmpjne

al,7quit

; turn

on the trap

poppoppop

bxaxes

pushpushf

ax

pop

ax

or

push

popf

pop

nop

iret

ax,0100hax

ax

poppoppop

bxaxes

; look at keyboard fIag1 in; ROM BIOS data area

mask off everything but lowest

three bitsare Ctrl-Shift-Shift depressed?no, quit

; restore registers

; save register

; get flags into ax

; set trap flag on; put new flags back

; restore ax

; wait one instruction

; debug is invoked at this instruction

; restore registers when; quitting

iret

END_OF_RESIDENT.banner db

instalI:

.CODE LABEL BYTE'BREAKPT installed.',10,13,'$'

mov

ah,35h ;

mov

al.9 ;

int

21h

cmp

bx,offset new_int9

J«

no_instaI I

mov

old_int9_offs,bx

mov

old_int9_seg,es

mov

dx,offset banner

mov

ah, 9

int

21h

get interrupt vector forkeyboard interrupt

; get interrupt vector function; get interrupt 9

; are we already installed?; yes, just exit

; save old keyboard interrupt; address

; print banner

; print string function

; set keyboard interrupt; to point to new_int9

128 BYTE • SEPTEMBER 1986

New from Macmillan Software

ASYSTANT scientific software.

Flexible menu-driven

environment gets you up

and running -fast.

Fully integrated analysis,graphics, and processingfunctions operate directlyon large datasets.

Unique features give youflexibility not found in mostmenu-driven packages.

Acquired data is immediatelyavailable for analysisand graphics. You neverhave to shuffle programs

A single keystroke lets youimport data from spreadsheetand other data file formats.

Lets you interact visuallywith your data. Just scroll,select curve segments, andwatch your results appear.

44.IM ( UU. )

2 (tMKitaa >33 (u.imaa >

UiuimJ lrri» CMfflB B!M 87 , 21 I

On-line help is alwaysavailable by typing "?"

j Gives you more powerr for the price than any othersoftware for the IBM PC.

— Presentation-qualityscientific graphics easilyoutput to plotters.

The PC software of choice when youdon't want to program.

Now get the power of widely acclaimed ASYST ™Scientific Software in a stand-alone menu-drivenpackage: ASYSTANT Ready-to-Run ScientificSoftware.™ Easy to learn and use whatever your com-puter background, ASYSTANT is a fully integratedanalysis and graphics package. It's versatile, too.Unlike other menu-driven products, ASYSTANTgives you an extensive feature set and macro capabil-ity to tackle your toughest applications.

Built-in functions include FFT, smoothing, inte-gration, differentiation, curve fitting, statistics, dif-ferential equations, and matrix and polynomialoperations. And all analysis functions are fully linkedto powerful graphics capabilities, including axono-metric and contour plotting. ASYSTANT menu-driven scientific software-just $495.

Optional data acquisition with ASYSTANT +.Get all the features of the ASYSTANT package, plus

Inquiry 214

one-touch data acquisition, with ASYSTANT +.No extensive prompt lists. No tedious set-up. Justchoose the "metaphor" of the collection instrumentyou wish to simulate- such as XYor strip chartrecorder, data logger, or signal averager-and you'reready to go. Only $895.

Free technical support. 60 days of free technicalsupport help you design, set up, and fine-tune theperfect system. It's your guarantee of trouble-freeoperation.

30-Day No-Risk Offer.CALL 1-800-348-0033

In New York state, (212) 702-3241.

Macmillan Software Co.

An affiliate of Macmillan Publishing Company630 Third Avenue, New York, NY 10017

ASYSTANT Ready-io-Run Scientific Software and ASYSTare trademarks of Macmillan Software Co.ASYSTand ASYSTANTwere developed by Adaptable Laboratory Software, P.O. Box 18448, Rochester, NY 14618

SEPTEMBER 1986 'BYTE 129

BREAKING OUT

mov

ah,25h ; set interrupt function

mov

al,9 ; set interrupt 9

mov

dx,offset new_int9 ; point to new routine

int

21h

terminate, but stay

partially resident

point to last byte of resident

rout i nes+1

mov

dx,offset END 0F_RESIDENT_C0DE+1

int

27h

no instal1:

int

20h ; don't install, just exit

breakpt endp

cseg 'ends

end

breakpt

Listing 2: 7k BASIC program that creates BREAKPT.COM.

100

■RUN

THIS

PROGRAM (BRKPTCOM.BAS) TO CREATE breakpt.com

110

PRINT "Creating

sreakpt.com"

120

OUTFILE$="

sreakpt.com"

140

DATA

&hEB,

&h74,

&h90,

&h42,

&h52,

ih45,

&h41,

&h4B,

&h50,

&h54

150

DATA

&h20,

&h28,

&h63,

&h29,

&h20,

&h43,

&h6F,

&h70,

&h79,

&h72

160

DATA

&h69,

&h67,

&h68,

&h74,

&h20,

&h31,

&h39,

4h38,

&h35,

&h2C

170

DATA

4h20,

&h45.

&h64,

&h77,

&h61,

&h72,

&h64,

&h20.

&h4A,

&h2E

180

DATA

4h20,

&h42,

&h61,

&h74,

&h75,

&h74,

&h69,

&h73.

&h1A,

&h00

190

DATA

&h00,

&h00,

&h00,

&h9C,

&h2E,

&hFF,

&h1E,

&h31,

&h01,

&h06

200

DATA

&h50,

&h53,

&hB8,

&h40,

&h00,

&h8E,

&hC0,

&hBB,

&h17,

&h00

210

DATA

&h26.

&h8A,

&h07,

&h24,

&h07,

&h3C,

&h07,

&h75.

&h0E,

&h5B

220

DATA

&h58,

&h07,

&h50,

&h9C,

&h58,

&h0D,

&h00,

&h01,

&h50,

&h9D

230

DATA

&h58,

&h90,

&hCF,

&h5B,

&h58,

4h07.

4hCF,

&h42,

&h52.

&h45

240

DATA

&h41.

4h4B,

&h50,

&h54,

4h20,

&h69,

&h6E.

&h73,

&h74,

&h61

250

DATA

&h6C,

&h6C,

&h65,

&h64,

&h2E,

&h0A,

&h0D,

4h24,

&hB4,

&h35

260

DATA

&hB0,

&h09,

&hCD,

&h21,

&h81,

4hFB,

&h35,

&h01,

&h74,

&h1D

270

DATA

&h89,

&h1E,

&h31,

&h01,

&h8C,

&h06,

&h33,

&h01,

&hBA,

&h61

280

DATA

&h01,

&hB4,

&h09,

&hCD,

&h21,

&hB4,

&h25,

&hB0,

&h09,

&hBA

290

DATA

&h35,

&h01,

&hCD,

&h21 ,

&hBA,

&h62,

&h01,

&hCD,

&h27,

&hCD

300

DATA

&h20

310

TOTAL- 161

320

OPEN OUTFILE$ AS #1 LEN=1

330

FIELD #1,1

AS A$

340

FOR

[-1 TO

TOTAL

350

READ A

360

LSET A$=CHR$(A)

370

PUT 1

380

NEXT

390

CLOSE

400

PRINT"Done

■i

410

END

Table 1:

An example

of the register-content display produced by

BREAKPT.

AX = 3920

BX =

= 3160

CX-.

= 0324 DX =

= 0078

SP =

= FFDA

BP =

FFEE

SI = 0000

Dl =

000F

DS = 3160

ES =

= 48CE

ss=

= 48CE CS=

= 435E

IP =

1D31

NV

UP El

PL ZR AC

PE

NC

435E:-1D31

CF

IRET

130 BYTE • SEFTEMBER 1986

STATGRAPHICS

Powerful Statistics, Sophisticated GraphicsIn One Complete Software System

STATGRAPHICS from STSC is simplythe most complete and powerful statis-tical software available for your PC.STATGRAPHICS integrates powerfulstatistics with high-resolution colorgraphics—in one single softwaresystem—to give you an extraordinarilypowerful analytical environment.

"[STATGRAPHICS] is unusuallycomplete as software systems goin terms of statistical capabilities."

(PC Week)

With more than 250 statistical and math-ematical procedures, STATGRAPHICSoffers you the power and precision ofmainframe software—right on your PCAll the tools you need for comprehensivestatistical analysis: ANOVA, completeregression analysis, experimental design,quality control procedures, multivariatetechniques, nonparametric methods, andextensive forecasting and time seriesanalysis, including Box-Jenkins.

"I've found STATGRAPHICS to beone of the most complete andeasy-to-use statistics programsthat I have come across."

(Whole Earth Software Catalog)

All this statistical power is evenmore valuable with STATGRAPHICS'unique interactive environment.STATGRAPHICS is completely menu-driven so you can get into yourstatistical analysis work quickly andbe productive right from the start. Youcan easily go back and forth betweenyour numerical and graphical analysis-change variables as many times as youwant—and see the effect immediately.

You can also enter and access data easily.STATGRAPHICS has a full-screen dataeditor and interfaces with standard ASCIIfiles, Lotus® 1-2-3® and Symphony® work-sheets, and dBASE® files.

STATGRAPHICS—the best overall choice!

Integrated Direct

Statistical Lotus & dBASEGraphics Interfaces

STATGRAPHICS

MinimumHardwareRequired

Dual FloppyDisk

10 MegHard Disk

HelplineSupport

U.S.SuggestedRetail Price

$795*

$1385

20 MegHard Disk

$2700+ Annual

Maintenance

Fee

"verdict: [STATGRAPHICS is] amodel PC software system whichwill set standards for PC statistical

Software." (PC User Magazine)

STATGRAPHICS offers you a wide varietyof graphics capabilities to help youvisually analyze your data—more optionsand more sophistication than any otherPC statistical software. Included arehistograms, two- and three-dimensionalline and surface plots, scatter plots, timesequence plots, quality control charts,as well as bar and pie charts.STATGRAPHICS supports a wide rangeof graphics boards, printers, and plotters.

For the most complete, advanced statis-tical graphics software system available,order STATGRAPHICS today. To order,contact your local dealer. If they don'thave it, tell them to call STSC toll-free.

(800) 592-0050

In Maryland or Canada call (301) 984-5123.

STSC

Inquiry 330

Available nationally through Softsel and distributorsworldwide. Dealer inquiries welcome.

•International prices slightly higher. STATGRAPHICS,SAS, and dBASE are registered trademarks of StatisticalGraphics Corporation, SAS Institute Inc., and Ashton-Tate,respectively. Lotus, 1-2-3, and Symphony are registeredtrademarks of Lotus Development Corp. PLUS'WARE andSPSS/PC+ are trademarks of STSC, Inc. and SPSS Inc.,respectively.

A PLUS*WARE PRODUCT

Data compiled as of April 1986

The ultimate time savinqinput device for IBM PC!

KEYPORT 60

60 ProgrammableFunction Keys/

Polytel's programmable multifunctionkeypad, the KEYPORT 60, is your keyto one-finger pushbuttonsoftware.

BREAKING OUT

60 Wloosl

«<

-asJ-

ins

* Every key fu//y programmable

* Label the Keys so you never forgetwhich hey does what

* Ideal for entering repetitivecommands with a single touch.

* ho need to memorize hard-to-remember command sequences

* Includes ready-to-go templates forDOS, WordStar, Lotus 1-2-5, and BA5IC

* Runs on IBM PC. XT. AT, andcompatibles

* Connects to game port—leaves yourother ports free

* Does not interfere with normaloperation of regular keyboard

* 60 day monev bach guarantee-no risk to you.

* • • * Price—$139 • * • •

(add $6 shipping for each tteyport)

— SPECIAL OFFER —

Game port included!A $45 value!

To order, call Polytel at

1-800-245-6655

In California, call 1-408-730-1347Or send $145 check or money order to

Polytel Computer Products Corp.

1250 Oakmead Parkway, Suite 310Sunnyvale, California 94086

In the UK and Scandinavia, contact

Electrone Ltd.

Haywood House, High Street

Pinner, Middlesex HA5 5QA

Tel- 01-429-2455

VI5A, MasterCard & American Expresscheerfully accepted!

Table 2:

The meanings c

)/ the various bits in the keyboard flags.

Segment

Offset Bit

Meaning

40H

17H 0

Right Shift depressed

1

Left Shift depressed

2

Ctrl depressed

3

Alt depressed

4

Scroll Lock toggled

5

Num Lock toggled

6

Caps Lock toggled

7

Ins active

40H

18H 0

No meaning

1

No meaning

2

No meaning

3

Suspend key toggled

4

Scroll Lock depressed

5

Num Lock depressed

6

Caps Lock depressed

7

Ins depressed

you will see a display that resemblesthe one in table 1.

The instruction displayed at the endof the table, IRET, is the last instruc-tion in the BREAKPT routine itself.The contents of the registers will varydepending on exactly where the pro-gram is when you press Control-Shift-Shift and depending on whereDEBUG is loaded in memory.

If you use the DEBUG trace com-mand, t, you will see the instructionimmediately following the one you in-terrupted. If you use the go com-mand, g, you will return to BASICA.

To explore a particular feature ofBASICA, you can write a program thatputs the interpreter in a loop and thenbreak out of it with Control-Shift-Shift.For example, breaking out during theprogram

10 a=1.0*1.0:goto 10

will probably put you somewhere in(or near) the floating-point multiplica-tion routine.

You can also use BREAKPT if youare debugging a program and it getsaway from you. For example, if you seta DEBUG breakpoint in the wrongplace, or if the program does some-thing unexpected and does not ex-ecute the breakpoint you've set, youcan often save yourself by pressingControl-Shift-Shift.

You must be careful not to pressControl-Shift-Shift when DEBUG is not

loaded. Also, DEBUG is not very goodat debugging programs that make alot of calls to DOS because DEBUGitself uses DOS. If DEBUG is calledduring certain DOS interrupts, younormally won't be able to return tothe original calling program. It's alsoimportant to keep in mind that thebreakpoint interrupt won't execute ifthe interrupts within DEBUG are dis-abled. DEBUG will be invoked whenthey become enabled. For thisreason, you don't always break outwhere you think you should.

Modifications

The default condition when DEBUGstarts up is for the interrupts to beturned off. If you want to turn themon before starting the program youwant to debug, enter the followingDEBUG commands: r f then ei. If youwant to change the keystrokes that in-voke BREAKPT, see table 2, whichcontains a list of the meanings of eachbit in the keyboard flags.

You can alter BREAKPT quickly andeasily by using the assemble com-mand in DEBUG or by altering and as-sembling the source code using theIBM Macro Assembler. You mask thebits that you don't want to checkusing the and instruction, and thenyou test to see if the proper bits areturned on with the cmp (compare) in-struction. (BREAKPT is compatiblewith SideKick if loaded after it.) ■

132 BYTE • SEPTEMBER 1986

The C for Microcomputers

- * + PC-DOS, MS-DOS, CP/M-86, Macintosh, Amiga, Apple II, CP/M-80, Radio Shack,Commodore, XENIX, ROM, and Cross Development systems

MS-DOS, PC-DOS, CP/M-86, XENIX,8086/80x86 ROM

Manx Aztec C86

"A compiler that has many strengths... quite valuable(or serious work"

Computer Language review, February 1985

Great Code: Manx Aztec C86 generates fast executingcompact code. The benchmark results below are from astudy conducted by Manx. The Dhrystone benchmark(CACM 10/84 27:10 pl018) measures performance for asystems software instruction mix. The results are with-out register variables. With register variables, Manx,Microsoft, and Mark Williams run proportionately faster,Lattice and Computer Innovations show no improve-ment.

Execution

Code

Compile/

Time

Size

Link Time

Dhrystone Benchmark

Manx Aztec C86 3.3 34 sees

5,760

93 sees

Microsoft C 3.0 34 sees

7,146

119 sees

Optimized C86 2.20J 53 sees

11,009

172 sees

Mark Williams 2.0 56 sees

12,980

113 sees

Lattice 2.14 89 sees

20,404

117 sees

Great Features: Manx Aztec C86 is bundled with a powerful

array of well documented productivity tools, library' routines

and features.

Optimized C compiler Symbolic Debugger

AS86 Macro Assembler LN86 Overlay Linker

80186/80286 Support Librarian

8087/80287 Sensing Lib Profder

Extensive UNIX Library DOS, Screen. & Graphics Lib

Large Memory Model Intel Object Option

Z (vi) Source Editor -c CP/M-86 Library -c

ROM Support Package -c INTEL HEX Utility -c

Library Source Code -c Mixed memory' models -c

MAKE, DIFF, and GREP -c Source Debugger -c

One year of updates -c CP/M-86 Library -c

Manx offers two commercial development systems,Aztec C86-c and Aztec C86-d. Items marked -c arespecial features of the Aztec C86-c system.

Aztec C86-C Commercial System $499

Aztec C86-d Developer's System $299

Aztec C86-p Personal System $199

Aztec C86-a Apprentice System $49

All systems are upgradable by paying the differencein price plus $10.

Third Party Software: There are a number of high qual-ity support packages for Manx Aztec C86 for screenmanagement, graphics, database management, and soft-ware development.

C-tree $395 Greenleaf $185

PHACT $250 PC-lint S98

HALO $250 Amber Windows $59

PRE-C $395 Windows for C $195WindScreen $149 FirsTime $295

SunScreen $99 C Util Lib $185

PANEL $295 Plink-86 $395

MACINTOSH, AMIGA, XENIX,CP/M-68K, 68k ROM

Manx Aztec C68k

"Library handling is very flexible... documentation isexcellent ...the shell a pleasure to work in ... blowsaway the competition for pure compile speed ...an ex-cellent effort."

Computer Language review, April 1985Aztec C68k is the most widely used commercial C com-piler for the Macintosh, Its quality, performance, andcompleteness place Manx Aztec C68k in a position be-yond comparison. It is available in several upgradable

Optimized CMacro AssemblerOverlay LinkerResource CompilerDebuggersLibrarianSource EditorMacRam Disk -cLibrary Source -c

Creates Clickable ApplicationsMouse Enhanced SHELLEasy Access to Mac ToolboxUNIX Library FunctionsTerminal Emulator (Source)Clear Detailed DocumentationC-Stuff LibraryUniTools (vi,make,diff,grep) -cOne Year of Updates -c

Items marked -c are available only in the Manx AztecC86-c system. Other features are in both the Aztec C86-dand Aztec C86-C systems.

Aztec C68k-c Commercial System $499

Aztec C68d-d Developer's System $299

Aztec C68k-p Personal System $199

C-tree database (source) $399

AMIGA, CP/M-68k, 68k UNLX call

Apple H, Commodore,65xx, 65C02 ROM

Manx Aztec C65

"The AZTEC C system is one of the finest softivarepackages I have seen"

NIBBLE review, July 1984

A vast amount of business, consumer, and educationalsoftware is implemented in Manx Aztec C65. The qualityand comprehensiveness of this system is competitivewith 16 bit C systems. The system includes a full optim-ized C compiler, 6502 assembler, linkage editor, UNIXlibrary, screen and graphics libraries, shell, and muchmore. The Apple II version runs under DOS 3.3, andProDOS, Cross versions are available.

The Aztec C65-c/128 Commodore system runs underthe C128 CP/M environment and generates programs forthe C64, C128, and CP/M environments. Call for pricesand availability of Apprentice, Personal and Developerversions for the Commodore 64 and 128 machines.

Aztec C65-c ProDOS & DOS 3.3 $399Aztec C65-d Apple DOS 3.3 $199

Aztec C65-p Apple Personal system $99Aztec C65-a for learning C $49

Aztec C65-C/128 C64, C128, CP/M $399

Distribution of Manx Aztec C

In the USA, Manx Software Systems is the sole and ex-clusive distributor of Aztec C. Any telephone or mailorder sales other than through Manx are unauthorized.

Manx Cross Development Systems

Cross developed programs are edited, compiled, assem-bled, and linked on one machine (the HOST) and trans-ferred to another machine (the TARGET) for execution.This method is useful where the target machine is sloweror more limited than the HOST, Manx cross compilersare used heavily to develop software for business,consumer, scientific, industrial, research, and education-al applications.

HOSTS: VAX UNIX (S3000), PDP-11 UNIX (S2000), MS-DOS ($750), CP/M ($750), MACINTOSH ($750),CP/M-68k ($750), XENIX ($750).

TARGETS: MS-DOS, CP/M-86, Macintosh, CP/M-68k,CP/M-80, TRS-80 3 & 4, Apple II, Commodore C64,8086/80x86 ROM, 68xxx ROM, 8080/8085/Z80 ROM,65xx ROM.

The first TARGET is included in the price of the HOSTsystem. Additional TARGETS are $300 to $500 (nonVAX) or $1000 (VAX).

Call Manx for information on cross development to the68000, 65816, Amiga. C128, CP/M-68K, VRTX, andothers.

CP/M, Radio Shack,8080/8085/Z80 ROM

Manx Aztec CII

"I've had a lot of experience with different C compilers,but the Aztec CHO Compiler and Professional Develop-ment System is the best I've seen."

80-Micro, December, 1984, John B. Harrell III

Aztec C II-c (CP/M & ROM) $349

Aztec C D-d (CP/M) $199

C-tree database (source) $399

Aztec C80-C (TRS-80 3 & 4) $299

Aztec C80-d (TRS-80 3 & 4) $199

How To Become an Aztec C User

To become an Aztec C user call 1-800-221-0440 or call1-800-832-9273 (800-TEC WARE). In NJ or outside theUSA call 201-530-7997. Orders can also be telexed to4995812.

Payment can be by check, COD, American Express,VISA, Master Card, or Net 30 to qualified customers.

Orders can also be mailed to Manx Software Systems,Box 55, Shrewsbury, NJ 07701.

How lb Get More Information

To get more information on Manx Aztec C and relatedproducts, call 1-800-221-0440, or 201-530-7997, or writeto Manx Software Systems.

30 Day Guarantee

Any Manx Aztec C development system can be return-ed within 30 days for a refund if it fails to meet yourneeds. The only restrictions are that the original pur-chase must be directly from Manx, shipped within theUSA, and the package must be in resalable condition.Returned items must be received by Manx within 30days. A small restocking fee may be required.

Discounts

There are special discounts available to professors,students, and consultants. A discount is also available ona "trade in" basis for users of competing systems. Call forinformation.

Inquiry 216

IT1

»^1

To order or for information call:

800-221-0440

Graphic Kernel System GK-2

Q.

m^

Macro Assembler 68000/68010/68020

Put your chipson the software.

The best bet.

If you're betting yourfuture on a 32-bit micro-processor-based system,you'd rather bet a winner.Today, the clear winner isthe MC68020 microprocessor.It's faster. It's fully supportedin hardware and software.It's backed by what others havecalled, "The strongest supportteam in the business." And,we're delivering productionquantities. Now

In fact, last year Motorolashipped over 50,000 unitsand this year we expect to shipmore than a quarter of amillion MC68020s.

Software support. Now.

When you choose theMC68020, you get the largestbody of software available for32-bit microprocessor-basedmachines. Operating systems.Languages. Tools and utilities.Host independent developmentsystems. And, of course, appli-cations. In fact, 80% of themicroprocessor-based systemdesigns running UNIX® OSs arebased on M68000 Family chips.

The fastest just got faster.

At 25 MHz, the latest ver-sion of the MC68020 and itsearlier 20 MHz version remain

TIM"*'*

The MC68020

the fastest general-purposeprocessors on the market today.And fully compatible. Butspeed alone isn't the answer.And for the generation beyondthe MC68020, we're com-mitted to higher performancedevices while maintaining theM68000 Family software base.

Chips, boards or boxes.

Motorola is with you atevery level. As the world'sleader in VMEbus products,supplying MC68020-basedVMEmodule'" and VMEsystem'"products, we can work withyour development team at vir-tually every level, includingtechnical training.

Betting the winner.

There's a lot of 32-bittalk in the press. Sampling

quantities, blue sky and

vaporware are fine, butmaybe you'd rather not betyour company on them.

When you're planning tobuild the kind of leading-edgesystems that win in the market-place, Motorola offers youspeed to market, aggressivepricing and the strength of afully-realized 32-bit environment.

If you're an executiveevaluating microprocessors,software and support, call usat 1-800-521-6274. We'll arrangea one-on-one management-level meeting. Fast. And we'llshow you why a better micro-processor, coupled with here-and-now volume production,software and support, addsup to a winning combination.

UNIX is a registered trademark of AT&T

Concurrent DOS and GEMDOS is

a trademark of Digital Research Inc.

VERSAdos is a registered trademark

of Motorola Inc.

VRTX is a registered trademark of Hunter

& Ready, Inc.

RTUX is a trademark of Emerge Systems

ADA is a trademark of the Department

of Defense

VMEmodule and VMEsystem are

trademarks of Motorola Inc.

<8>

MOTOROLA

Microprocessor DevelopmentDreams Come True!

On-Line Help menus,Command Glossary,and Word List.

Windows can be usedto view source files,previous traces,and more.

Symbol translationor source codeline display.

Screen displays scroll offinto history buffer -can be viewed later.

ADB <word> ADR<vord> TO <void> ADR

Seta up Ihe trigger specification for analyzer i-A15 ( Sets trigger for AO to A19 if five digita period )

USAGE

DeterBines/which 16 bit addresses the_^_——' trigger on Can also trigger on 20 bi

With TO the trigger will occur on thefrom adrl to adr2

3. LOG modes

LOG TO PRINT

off

LOG TO FILE

on

PBIHTF.B

ott

Nil I VECTOR

inactive 1

SHI VECTOR

active

1 0O0D 31FE18 LD SP.TOP_STAK 0000 31FE16 LD SP.18FE

1 0003 DD213112 LD IX. 1231 0003 DD213«2 LD IX.1234

8 0007 FD217B66 LD IY 567B D007 FD2178B6 LD IY.5678

C HUT PTR 000B 210019 LDHL.1900 00OB 210019 LDHL.1900 /

f * 000E 3600 LD (ML) 0 000E 3600 LD (HL).O/

11 1900 00 write 0010 31 INC (HL)

-inCJEH 0010 34 INC (I1L) OOll 34 INC (HL)

1900 00 reed 0012 14 INC D

14 1900 01 vrite 0013 14 INC D

15 0011 31 INC (HL) 0014 210001 LD HL.100U--80BD (Sz-»-pNC) BC-0000 DE-0020 HL-1900 IX-1231 IY-5678 SP-18FE PC-0010-INC tffin 0010 31 INC (HL) <■>«' =l=P)

LD SP.18FELD IX.1231LD IY.5678LD HL.1900LD (HL).OxINC (HL)INC (HL)INC DINC DLD HL.100

Pop-up A-iodeSelection panelcalled by soft key.

Disassembly of codein memory can be'compared with trace inadjacent window.

liEB'Ta or Q (tra

e) [JEZ3 (toP> n TN {from step n) T (from n»22

Symbolic debugregister display-

context sensitiveprompt line.

NEW UniLab II™: FOUR INSTRUMENTS IN ONE!

Here are all the developmenttools you ever dreamed of integratedinto one PC-controlled system:

• An Advanced 48-Channel BusState Analyzer

• An 8/16-Bit Universal Emulator

• A Built-in EPROM Programmer

• An Input Stimulus Generator

The synergy of these instru-ments that were designed togetherto work together saves you time andmoney. All UniLab II commandsand menus are seamlessly integratedinto a single, super-efficient workingenvironment.

ACTION COUPON

Send me info on UniLab II andyour No-Risk 10-Day Evaluation!

Name:

Company:

Address:

City:

State/ZIP:.Tel.:

.Title: .

. Ext.

UniLab II™

Universal Development Laboratory

Orion Instruments, Inc.

702 Marshall StreetRedwood City, California 94063

An Integrated SoftwareEnvironment, too!

Imagine being able to split yourscreen and look at real-time programtraces and the source code that pro-duced them at the same time! Thengo to the On-Line Help or pop-upMode Panels instantly.

If you see something on a tracethat doesn't look like last time, youcan hold it in one window whileyou scroll back through your pre-vious displays.

If you set a breakpoint andsingle-step you can then go back tousing the analyzer without missinga beat. You can even execute a DOSbatch file from UniLab to edit, as-semble, and link, then automaticallyload the new program and symboltable. UniLab uses the full power ofthe PC.

Find bugs fast with

Hardware-assisted

Debugging

The traditional way to look forbugs is to single-step through sus-pect parts of the code until you catchit in the act. This requires a lot ofguessing and wasted time.

With UniLab's built-in analyzeryou eliminate the guesswork. Just de-scribe the bug symptom as a trigger,and let the UniLab hardware search

for it as your program runs in realtime. UniLab will show you a traceof the program steps leading up tothe symptom, almost like magic.

A friendly user interface

UniLab lets you use commandsor menus - or a mixture of both. Anon-line manual, soft-key help screens,a glossary of commands and theirparameters, with full-screen writeupsare also at the ready.

Reconfigure for any 8 or16-bit processor in seconds

Thanks to our unique approachto emulation, changes between pro-cessor types require only cable anddiskette changes. At last count, wespecifically support over 120 micro-processors.

Bonus! The built-in EPROMProgrammer and Stimulus Genera-tor are simply icing on the cake.

Affordable capability

How much does all this superiorcapability cost? A lot less than ourless able competitors, and probablya lot less than you expect. Our pro-ducts are sold with a Money BackGuarantee, and our crack team ofApplications Engineers is standing byif you need help. Get the full storyon the amazing UniLab II and how itcan liberate your development pro-jects, today.

CALL TOLL FREE: 1-800-245-8500

In California (415) 361-8883

136 BYTE • SEPTEMBER 1986

Inquiry 259

by Stephen C. Perry

Keyed FileAccess

in BASIC

These routines

provide efficient access

to data files

For both beginning andexperienced BASIC pro-grammers, maintaining dataon disk files can be a chal-lenging aspect of programming. Forbeginners, it's often a question of howto do it; for the more experienced, it'sa matter of how to do it most efficient-

ly. Either way, programmers arelimited by the file operations availablein BASIC.

Most versions of BASIC provide twomethods for accessing records on adisk file: sequential and random. Withsequential access, you locate a recordby reading from the beginning of thefile until you retrieve the desiredrecord; updating a record requiresyou to rewrite the entire file. Randomaccess allows you to jump around inthe file, directly reading or writing atany location. The record to be locatedis designated by its relative file posi-tion with a GET or PUT statement.

These access methods are ade-quate for the simple file-handling ex-amples in most BASIC manuals butare of limited use in interactive pro-grams that must respond promptly touser requests. For example, an ac-counting program that maintainscustomer records should respondquickly to a query for informationabout any customer. Typically, this re-quires searching the file for a recordwith the name or customer code sup-plied by the user. Clearly, searchingsequentially takes too long for all butthe shortest files, and random accessoften provides no way to locate arecord by a field value. Thus the needfor another access method—one thatwill find a record by its field value.

Accessing records by field values,called "keyed access," has long beenavailable in high-level languages.

(continued]Stephen C. Perry (3413 Malibu Dr.. Raleigh.NC 27607) is a manager of informationsystems at Cotton inc. He specializes in ap-plying microcomputers to office and manage-ment use. His interests are database manage-ment systems and local-area networks.

ILLUSTRATED BY PHILIPPE WEISBECKER

SEPTEMBER 1986 -BYTE 137

KEYED FILE ACCESS

Using such routines as ISAM (indexedsequential access method), programscan read, write, delete, or updaterecords by one or more key values.The programmer is relieved of codingthe underlying search routine andmaintaining data and file structures.

This article describes a set of sub-routines you can use in BASIC pro-grams to provide keyed access. Theroutines enable you to randomly add,delete, update, and retrieve recordsbased on a single, unique key value.The routines also provide sequentialaccess to records based on ascend-ing or descending key value.

Before examining the routines andhow to use them, let's review thegeneral concept and requirements ofa file management system.

File Management Systems

The purpose of any file managementsystem is to give you simple and fastaccess to records in a file. Ideally, thesystem should be set up as a "blackbox" that conceals from you thedetailed steps needed to carry out filemaintenance operations. Let's exam-ine this box and see how file accessis accomplished.

Logically, any file management sys-tem can be defined by its file struc-ture, its data structure, and its methodof searching. The file structure deter-

PT%()

KESI)

1

"

2

3

3

9

4

12

5

5

6

10

7

13

8

1

9

6

10

4

11

2

12

8

13

0

14253

0

254

■>

255

1

256

12

\

/

/

/

246861977

300324354

222342564

287345673

233344323

263467332

329833325

342874294

222774393

243234445

113654345

232345432

243234544

———___

- Pointer to deleted record

- Number of deleted records

- Number of active records

mines how records are actually storedon a disk, including the contents andformat of data files, and any indexesrequired for keyed access. The datastructure reflects how overhead infor-mation for accessing data is main-tained in the program, that is, the ar-rays or list structures containingpointers and key values. The searchmethod is based on the algorithmused to access the data structure.Usually, the method of searchingdetermines the data structure.

Numerous techniques are availablefor implementing these essential fea-tures. To choose from them you mustevaluate the data to be handled. Thetype of data, the quantity of data, andhow the data will be accessed mustall be considered.

Type of data: The data can be rep-resented by records of fixed or vari-able length having no key fields, asingle key, or multiple keys. The keysmay be unique to each record, orrecords with duplicate keys may beallowed.

Quantity of data: A file holdingthousands of records usually demandsa more elaborate structure and accessmethod than one with a few hundredrecords. The concern with larger filesis to minimize the number of disk ac-cesses required to search for a record.This is not as important for smaller

I

2

3

4

5

6

7

8

9

10

1 1

12

13

14

253254255256

PT%()

KESI1

1 1

>

246861977

3

300324354

9

222342564

12

287345673

5

233344323

10

263467332

13

333333333

1

342874294

6

222774393

4

243234445

2

113654345

7

232345432

8

243234544

0

0

Pointer to deleted record

Number of deleted records

Number of active records

0

0

13

Figure I: Tfte SKAM vectors before anew record is inserted.

Figure 2: The SKAM vectors after anew record has been added. Note thechanges in the PT°/o vector.

files, since it is possible to keep an in-dex and set of keys in memory for theentire file.

Processing requirements: Fourbasic operations are required on mostfiles—record addition, deletion, modi-fication, and retrieval. What varies ishow frequently, and on how muchdata, each operation must be per-formed.

Now, having examined the impor-tant features of file management ingeneral, let's look at my file manage-ment routines.

SKAM

My routines are designed to handlefiles of approximately a thousandfixed-length records with a singleunique key. 1 refer to this collection ofroutines as SKAM (single-keyed ac-cess method).

A data file and an index file makeup the file structure of SKAM. Thedata file is simply a random file con-taining the records entered by theuser. Normally, records are storedphysically in the same order in whichthey are entered: the only exceptionis when space from deleted recordsis used. Opening and defining the for-mat of the data file is the responsibili-ty of the programmer and is de-scribed later.

The index file contains pointers tothe data file that permit access to therecords in ascending and descendingkey order. The programmer need onlyprovide a name for this file. Internally,SKAM assigns the index file as logicalfile 1. It stores 64 pointers in eachphysical record.

Besides the pointers for ordering,three other types of information arekept in the index file: the last pointerin the last record contains the numberof active records in the data file: thepointer preceding this one containsthe number of deleted records in thedata file: and a last-in/first-out stack ofpointers to the deleted records pre-cedes these last two values.

Corresponding to the data file andindex file are two vectors (see figureI) used by the BASIC routines to holdrecord keys and addresses. KE$ con-tains the key values ordered by actualphysical location, and PT% containsa sorted list of pointers that address

138 BYTE • SEPTEMBER 1986

KEYED FILE ACCESS

records by ascending key value. Vec-tor PT% contains the exact contentsof the index file, with the deleted andactive record information stored in itslast locations.

To understand the logic of this datastructure, let's look at what happenswhen a record is added to a file.Figure 1 shows the original structurecontaining 12 records. Figure 2 showsit after a record with the key value3 3 3 3 3 3 3 3 3 has been added. Note thechanges:

• Location 7 in KE$, which held adeleted key value, now holds the newkey. The physical record has beenstored as the seventh record in thedata file.

• The total number of deletedrecords, in PT°/o(255) has been decre-mented by 1.

• The total number of active records,in PT°/o(256) has been incrementedby 1.

• A pointer addressing the newrecord (location 7) has been insertedin location 12 of PT°/o. This indicatesthat the new key is logically twelfth inkey sequence.

To delete a record, this process isreversed. A pointer is deleted fromPT°/o, and the totals of deleted andactive records are appropriately up-dated. The physical space of thedeleted record is made available forreuse by placing a pointer to it inPT%.

It is important to realize that thesechanges to PT°/o do not immediatelyaffect the index file; all changes occuronly in main memory. As a result, thisvector must be written back to the in-dex file after all operations have beencompleted.

To locate records by key value, abinary search is performed using thevector PT%. First, the pointer at themidpoint of the vector is selected. Thekey it points to in KE$ is then com-pared with a search key. If no matchis found, the pointer search area ishalved and the midpoint of the newrange is selected. This process con-tinues until a match or no match isconfirmed.

By searching for keys in main mem-ory, it is not necessary to access thedisk for each comparison. Only when

Table 1: The SKAM routines arranged by function. To invoke an operation, set11% to the required value. Depending upon the operation, other variables willalso have to be set. The return code, RC°/o, indicates the result of the operation.

11%

Operation

F1$

A$

NX%

RC%

1

Set Up DataStructure

Name ofindex file

0 - Successful

1 - Index name

or MX% notdefined

2

Add Record

Key value

0 - Successful

1 - Key exists

2 - File is full

3

RewriteRecord

Key of recordto rewrite

0 - Successful

1 - Key does

not exist

4

DeleteRecord

Key of recordto delete

0 - Successful

1 - Key does

not exist

5

Read Recordby Key

Key value

Relativeposition ofrecord

0 - Successful

1 - Key does

not exist

6

Read

Relative

Record

Relativelocation

0 - Successful

1 - Invalid

location

7

Store Index

0 - Successful

8

Display FileStatistics

0 - Successful

a match is found must the actualrecord be read or written to disk. Thisworks because a matching key foundin the nth location of KE$ has its cor-responding record at the nth recordposition in the data file.

Using the SKAM Routines

The eight operations shown in tablel are available for your BASIC pro-grams. To use them, set variable ll%to the value of a desired operation,set any required parameters, andissue a GOSUB command to passprogram control to the entry point ofthe SKAM subroutines. The desiredoperation, determined by ll%, will beperformed and a return code sentback in variable RC°/o. If this value is

0, the operation was successful; othervalues identify specific errors.

Let's look at the details of theseeight operations.

1. Set Up Data Structure reads thepointers from the index file into thevector PT°/o and reads the keys from

the data file into KE$. This routinemust be called before the other oper-ations can be used. If F1$ or MX% isnot defined, a code of 1 is returned.Parameters: II%=1, F1$=name ofindex file, MX°/o=maximum numberof records.

2. Add Record stores a new record inthe data file. The index is automati-cally updated to locate the record inproper key sequence. If a record withthe key already exists, the operationwill fail.

Parameters: ll%=2, A$ = key ofrecord to be stored.

3. Rewrite Record writes a record backover itself. This allows a program toupdate a record by reading it, chang-ing a field, and then rewriting thealtered record in its old location.

Parameters: ll%=3, A$=key ofrecord to be rewritten.

4. Delete Record deletes a record hav-ing the specified key. Internally, therecord is logically—not physically—

[continued)

SEPTEMBER I986 -BYTE 139

Inquiry 172

DRIVE

INN

KEYED FILE ACCESS

Enclosures

& power

supplies for

FLOPPY,

WINCHESTER,

TAPE DRIVES,

SINGLE

BOARD

COMPUTERS

&

S-100

SYSTEMS.

8 inch5 inch3 inch

CUSTOMIZINGAVAILABLE

Call or write

for free

catalogs

and

application/Hi

assistance.

id\SM

RESEARCH CORPORATION

8620 Roosevelt Ave. • Visalia.CA 93291

209/651-1203

TELEX 5106012830 (INTEGRAND UD)EZLINK 62926572

We accept BankAmericard/VISAand MasterCard

Listing l: A simple BASIC program for maintaining employee records illustratesthe use of SKAM routines.

SAMPLE PROGRAM USING KEYED ACCESS ROUTINES

NM$ - NAME

A1$ -

STREET ADDR.

BD$ - BIRTH DATE

A2$ -

CITY-STATE

SX$ - SEX

ZP$ -

ZIP CODE

1 '

2 '

3 •

5 UA$-"A" ' .. DRIVE CONTAINING DATA

16 OPEN "R",#2,UA$+":DATA.EMP",84 ' .. OPEN DATA FILE

17 FIELD #2, 9 AS KY$, 20 AS NM$, 6 AS BD$, 1 AS SX$, 3 AS JC$,A2$, 5 AS ZP$

18 '

19 ' KY$ - ZIP CODE (KEY) JC$ - JOB CODE202122

23 '25 MXX-150: F1$-"PTR.EMP

30 11%—1: G0SUB 2000

31 '

32 INPUT "OPERATION (D, A, L ,S ,LA,U,Q) " ;Q$

33 IF Q$-"D" THEN GOSUB 150: GOTO 32

34 IF Q$-"L" THEN GOSUB 180: GOTO 32

35 IF Q$-"A" THEN GOSUB 100: GOTO 32

36 IF Q$-"S" THEN IIX-8: GOSUB 2000: GOTO 32

37 IF Q$-" LA "THEN GOSUB 200: GOTO 32

38 IF Q$-"U" THEN GOSUB 250: GOTO 3240 IF Q$<>"Q" THEN 3250 CLOSE: END

97 '

98 ' *»*** ADD RECORD99100101

20 AS A1$, 20 AS

INDEX FILE NAMEINITIALIZE DATA STRUCTURE

DELETE

LIST INDIVIDUAL DATA

ADD

DISPLAY STATISTICS

LIST ALL RECORDS

UPDATE RECORD

102105107109110111112115116120122147148

INPUT "SS#";A$ : IF A$-"END" THEN 120 ELSE IF LEN(A$)<>9 THEN 100IIX-5:GOSUB 2000: IF RCXO0 THEN LSET KY$-A$: GOTO 102 ELSE PRINT"** ERRORKEY ALREADY EXISTS": GOTO 100INPUT "NAME";F$: LSET NM$-F$INPUT "BIRTH DATE";F$: LSET BD$-F$INPUT "SEX";F$: LSET SX$-F$INPUT "JOB CODE";F$: LSET JC$-F$INPUT "STREET";F$: LSET A1$-F$INPUT "CITY-STATE";F$: LSET A2$-F$INPUT "ZIP C0DE";F$: LSET ZP$-F$IIX-2: GOSUB 2000 '.. ADD RECORD

IF RCX-0 THEN 100 ELSE PRINT"** ERROR - RECORD CANNOT BE STORED"- GOTO 100IIX-7: GOSUB 2000 '.. STORE POINTERSRETURN

***** DELETE RECORD

IF A$«"END" THEN 156PRINT "** ERROR - KEY DOES NOT EXIST"

RESTORE POINTERS IF RECORD DELETED

149

150 STX-0

151 INPUT "CODE TO DELETE" ;A$:

152 IIX-4: GOSUB 2000

154 IF RCX-0 THEN STX-1 ELSE

155 GOTO 151

156 IF STX-1 THEN IIX-7: GOSUB 2000158 RETURN

177 '

178 ' ***** LIST INDIVIDUAL RECORD

179 '

180 INPUT "SOCIAL SECURITY NUMBER";A$: IF A$-"END" THEN 190

182 IIX-5: GOSUB 2000: IF RCXO0 THEN PRINT"**ERROR - KEY DOES NOT EXIST"180

183 PRINT

184 PRINT

185 PRINT

186 PRINT

187 PRINT

;NM$

:JC$

;LEFT$(BD$,2);"/";MID$(BD$,3,2);"/";RIGHT$(BD$,2);A1$PRINT ""

NAME:

JOB CODE:

"BIRTH DATE:

ADDRESS:

188 PRINT TAB(13);A2$:

189 GOTO 180

190 RETURN

197 '

198 ' ***** LIST RANGE OF RECORDS

199 '

200 NXX-0: IIX-6: KX-0202 NXX-NXX+1: GOSUB 2000

204 IF RCXO0 THEN 210

205 PRINT KY$,NM$

206 KX=KX+1: IF KX<10 THEN 202 ELSE INPUT ">";Q$ • .. PAUSE

207 IF Q$o"END" THEN KX-0: GOTO 202210 RETURN

247 '

248 ' ***** UPDATE RECORD

249 '

250 INPUT "SS#";A$: IF A$-"END" THEN 270

252 IIX-5:GOSUB 2000 ' .. FETCH RECORD TO BE UPDATED

254 IF RCX-1 THEN PRINT "** ERROR - RECORD DOES NOT EXIST": GOTO 250

255 PRINT "NAME: /";NM$;"/";: INPUT F$: IF LEN(F$)<>0 THEN LSET NM$=F$

{continued)

140 BYTE • SEPTEMBER 1986

$2000?

That's Too Darned High!

Why should a CAD package cost more than a WordProcessor? It shouldn't! Lots of people ask how we canoffer a CAD system as good as ProDesign II at a price aslow as $299. It's easy. A PC Software Package does notcost $2000 to manufacture. It doesn't even cost $200. Itmakes us ask the questions, "Why do comparable CADpackages cost $2000 and more?" "What makes a CADpackage cost more than a Word Processor?"

ProDesign II doesn't. ProDesign II is the completeCAD package you get for $299. With ProDesign II, youget such advanced features as Auto Dimensioning, AreaFill, Fillets, Mirroring, Isometrics, Curve Fitting, ObjectSnap, Attributes, Drawing Merge, and many, many more.Features once available only for $2000 or more. Featuresyou get at no extra charge with ProDesign II.

But there is another, very important reason youshould get ProDesign II. ProDesign II is very uniqueamong CAD packages. It is easy to learn and use. Whenwe call ProDesign II "The Easy To Use CAD System",we're not joking. You will be productive with ProDesign IIin an hour or two instead of a week or two.

What else does ProDesign II offer? Compatibility.Compatibility with over 100 printers. Compatibility with

over 50 plotters. Compatibility with most graphics adapt-ers, digitizing tablets, and mice. Compatibility with mostdisplay adapters. Compatibility with any software that canproduce HP plotter commands. Compatibility with main-frame CAD systems (IGES). All at no extra charge! (Youcan also get an AutoCAD Interchange Utility for $99 thatconverts drawings to or from the AutoCAD format.)

What additional hardware do you need? None! AnIBM PC compatible and 51 2K RAM are all you need.ProDesign II produces high resolution drawings on yourdot matrix printer - better than .005" resolution on anIBM/Epson compatible printer. And you don't have to geta mouse or digitizing tablet. ProDesign II is designed foreasy and efficient keyboard use. You won't even need amath coprocessor, although it is supported. From a smalldrawing on a dot matrix printer to an E-Size drawing on alarge plotter, ProDesign II is the one to use!

ProDesign II — Affordable, Compatible, and Usable!

Where do you get it? See your local dealer or contact:

American Small Business Computers, Inc.

118 South Mill Street

Pryor, OK 74361

918/825-4844

PRODESIGN II — ONLY $299!

Inquiry 21

SEPTEMBER 1986 -BYTE 141

Inquiry 67

KEYED FILE ACCESS

Think Itover...

...and the

decision

becomes clear!

A VerticalMarketLeader

9 Years

Construction/Estimating

Payroll

General.Ledger" EstimatingJob Cost

Medical/Dental

AppointmentsPatient BillingClaim PreparationPatient Data BaseGeneral Ledger• Payables and Payroll

EducationalAdministration

SchedulingGradingAttendanceComputer Literacy> Vocational Training

24-Hour Technical Support

Why Think Further?

MS-DOS,.

MAC

fpWa

MICRO COMPUTER DIVISION

55888 Yucca Trail

P.O. Box 2080

Yucca Valley, CA 92286-2080

(619)365-9718

257 PRINT '

258 PRINT '260 PRINT

262 PRINT

263 PRINT265 PRINT268 IIX-3:268 PRINT270 RETURN1995 '1996

BIRTH DATE: /"iB0$;"/";'. INPUT F$: IF LEN(F$)<>0 THEN LSET BD$=F$'SEX: /";SX$;"/";: INPUT F$: IF LEN(F$)<>0 THEN LSET SX$-F$'JOB CODE: /";JC$;"/";: INPUT F$: IF LEN(F$)<>0 THEN LSET JC$=F$'STREET: /";A1$;"/";: INPUT F$: IF LEN(F$)<>0 THEN LSET A1$=F$'CITY-STATE: /";A2$;"/";: INPUT F$: IF LEN(F$)<>0 THEN LSET A2$=F$'ZIP CODE: /";ZP$;"/";: INPUT F$: IF LEN(F$)<>0 THEN LSET ZP$=F$

GOSUB 2000 ' . . RESTORE UPDATED RECORD' ": GOTO 250

FILE MANAGEMENT SUBROUTINES (IIX,MXX,F1$.A$.PTX,PT$, NXX.RCX)

199719981999

2000 RCX-0: IF IIX<1 OR II%>8 THEN RCX-1: RETURN

2001 IF IIX-1 THEN 2006: ' ELSE STORE VARIABLES USED BY SUBROUTINES

2004 ZZX(1)-JX: ZZX(2)-JJX: ZZX(3)-KX:ZZX(4)-L0X: ZZX(5)-HIX: ZZX(6)-ZX

2005 '

2006 ON IIX GOSUB 2035.2080,2090.2180,2150,2200.2250.2280

2007 '

2008 IF IIX-1 THEN 2010: ' ELSE RESTORE VARIABLES USED BY SUBROUTINES

2009 JX-ZZX(I): JJX-ZZX(2): KX-ZZX(3): L0X-ZZX(4): HIX-ZZX(5): ZX-ZZX(6)

2010 RETURN

2034 REM (1) SUBROUTINE (MXX,F1$) INPUT POINTERS AND KEYS

2035 IF MXX<1 THEN RCX-1: RETURN2037 MRX-(INT((MXX+2)/64)+1)»64

203B DIM PT$(64).PTX(MRX).KE$(MXX),ZZX(8)

2040 OPEN "R".#1,UA$+":"+F1$,128 ' INDEX FILE

2042 FOR JX-1 TO 64: FIELD #1,(JX-1)*2 AS DU$, 2 AS PT$(JX): NEXT JX

2050 KX-0: IF LOF(1)-0 THEN 2062

2051 FOR JX-1 TO INT(MRX/64)

2052 GET 1.JX ' .. INPUT RECORD CONTAINING 64 POINTERS

2054 FOR JJX-1 TO 64: KX-KX+1: PTX(KX)-CVI(PT$(JJX)): NEXT JJX

2055 NEXT JX

2056 '

2057 IF PTX(MRX)-0 THEN 2062

2058 FOR JX-1 TO PTX(MRX)+PTX(MRX-1)

2059 GET 2, JX: KE$(JX)-KY$

2060 NEXT JX2062 RETURN

2079 REM (2) SUBROUTINE (MRX,A$. RCX) — ADD RECORD TO FILE

2080 GOSUB 2500 : IF KX>0 THEN RCX-1: GOTO 20882083 GOSUB 2520 : IF ZX>MRX-1 THEN RCX-2: GOTO 2088

2085 KX—KX:GOSUB 2540 ■ .. INSERT POINTER . PTX(KX)-ZX

2086 KE$(ZX)-A$

2087 PUT 2.ZX ' .. STORE NEW RECORD

2088 RETURN

2089 REM — (3) SUBROUTINE REWRITE RECORD

2090 GOSUB 2500: IF KX<0 THEN RCX-1: GOTO 20982092 PUT 2,PTX(KX) ' .. STORE RECORD

2098 RETURN

2099 REM (4) SUBROUTINE (MRX,A$,RCX) DELETE A RECORD

2100 GOSUB 2500: IF KX<0 THEN RCX-1: GOTO 21102102 ZX-PTX(KX): IF KX-PTX(MRX) THEN 2107

2104 FOR JX-KX TO PTX(MRX)-1: PTX(JX)-PTX(JX+1): NEXT JX

2107 JJX-PTX(MRX-I)

2108 PTX(PTX(MRX))-0: PTX(MRX)-PTX(MRX)-1: PTX(MRX-1)-JJX+1:PTX(MRX-2-JJX)=Z%2110 RETURN

2149 REM (5) SUBROUTINE (MRX,A$.NXX,RCX) READ RECORD BY KEY

2150 GOSUB 2500: IF KX<0 THEN RCX-1: GOTO 2155

2152 GET 2,PTX(KX) '.. INPUT RECORD

2153 NXX-KX2155 RETURN

2199 REM (6) SUBROUTINE (MRX.NXX.RCX)

2200 IF NXX<0 OR NXX>PTX(MRX) THEN RCX-1:2203 GET 2, PTX(NXX)2205 RETURN

2249 REM (7) SUBROUTINE (MRX) RESTORE POINTERS

2250 KX-0: ZX-INT((PTX(MRX)-1)/64)+1

2252 FOR JX-1 TO ZX

2253 FOR JJX-1 TO 64: KX-KX+1:LSET PT$(JJX)-MKI$(PTX(KX)): NEXT JJX: PUT 1.JX

2254 NEXT JX

2255 KX-INT(MRX/64): IF ZX-KX THEN 2259

2257 KX-(KX-1)*64: FOR JX-1 TO 64: LSET PT$(JX)-MKI$(PTX(JX+KX)):NEXT JX:PUT 1,

INT(MRX/64)2259 RETURN

2279 REM

2280 PRINT "

2282 PRINT "

2283 PRINT "

2284 PRINT "

2285 PRINT "

2286 PRINT "

2287 PRINT "2290 RETURN

2498 '

2499 REM SUBROUTINE (MRX,A$. KX) -

2500 IF PTX(MRX)-0 THEN KX—1: RETURN2502 LOX-0: HIX-PTX(MRX)+1

2504 MX-INT((L0X+HIX)/2)

2505 IF A$-KE$(PTX(MX)) THEN KX-MX: GOTO 2510 [continued]

— READ RECORD BY SEQUENCEGOTO 2205

(8) SUBROUTINE — DISPLAY FILE STATISTICS":IF PTX(MRX)-0 THEN PRINT "** NO RECORDS IN FILE":»» FILE STATISTICS **": PRINT " "

1. RECORDS IN FILE: ";PTX(MRX)

2. DELETED RECORDS: ";PTX(MRX-1)

3. LOWEST KEY: ";KE$fPTX(1))

4. HIGHEST KEY: " ;KE$(PTX(PTX(MRX)))

BINARY SEARCH

GOTO 2290

142 BYTE • SEPTEMBER 1986

Inquiry 226

KEYED FILE ACCESS

250625682510251825192520252225242530253825392540254225442545254825502997299829993000300130023004300630083009301030123014301530163918302030223025

IF A$>KE$(PTX(M%)) THEN LOJ£=MX: ELSE HIX-MXIF LOX+1 <> HIX THEN 2504 ELSE KX--HIXRETURN

REM — SUBROUTINE (MRX.PTX.ZX) — LOCATE FREE RECORD IN DATA FILE

IF PTX(MRX-1)-0 THEN ZX=PTX(MRX)+1: GOTO 2530

JX-PTX(MRX):JJX-PTX(MRX-1)

ZX-PTX(MRX-I-JJX): PTX(MRX-1)-PTX(MRX-1)-1: PTX(MRX-1-JJX)=0

RETURN

REM — SUBROUTINE (MRX.KX.ZX) —

IF KX-PTX(MRX) + 1 THEN 2548

FOR JX=PTX(MRX)+1 TO KX+1 STEP -

PTX(JX)-PTX(JX-1)

NEXT JX

PTX(KX)-ZX: PTX(MRX)-PTX(MRX)+1

RETURN

INSERT POINTER INTO POINTER VECTOR

PROGRAM TO INITIALIZE INDEX FILE

PRINT " ":PRINT TAB(5);"«* INITIALIZE INDEX FILE **":PRINT " "

INPUT "> DRIVE TO CONTAIN DATA";UA$

INPUT "> FILE NAME";F$

INPUT "> MAXIMUM NUMBER OF RECORDS FILE WILL HOLD";MXX

MRX-(INT((MXX+2)/64)+1)*64

DIM PT$(64)

■ OPEN FILE AND SET POINTERS TO 0

OPEN "R",#1,UA$+":"+F$,128

FOR JX-1 TO 64: FIELD #1.(JX-1)*2 AS DU$,2 AS PT$(JX):NEXT JX

ZR$-MKI$(0): FOR JX-1 TO 64: LSET PT$(JX)-ZR$: NEXT JX

■ STORE BLOCKS OF ZERO POINTERS

FOR JX-1 TO MRX/64

PUT 1.JX

NEXT JX

PRINT " ": PRINT

END

INITIALIZATION COMPLETE ON DRIVE";UA$

deleted: A pointer is set up indicatingthat the space can now be used forstoring a new record.

Parameters: ll%=4, A$=key ofrecord to delete.

5. Read Record by Key allows therecord with the specified key to beread from the data file. This routinealso returns the relative key sequenceof the record in the variable NX°/o.This means, for example, that if thekey value is the lowest in the file, NX°/ois set to 1.

Parameters: ll%=5, A$=key ofrecord to read, NX°/o=key sequence.

6. Read Relative Record reads the nthrecord—based on key sequence—inthe file. For instance, if you want toread the record with the lowest key,set NX°/o to 1 and call this routine.Conversely, to read the record withthe highest key value, set NX°/o to thenumber of records in the file beforecalling.

Parameters: ll%=6, NX°/o=relativeposition of record to be read.

7. Store Index writes the values of thevector PT% back into the index fileand must be called after records havebeen added or deleted. If these oper-ations occur and the program endswithout calling this routine, all yourchanges will be lost.

Parameters: ll%=7.8. Display File Statistics prints thefollowing file information on thescreen:

1. RECORDS IN FILE:

2. DELETED RECORDS:

3. LOWEST KEY:

4. HIGHEST KEY:

Parameters: ll%=8.

A Sample Program

To illustrate the use of these SKAMroutines, let's consider a simple pro-gram for maintaining employeerecords (see listing l). It uses a socialsecurity number as the key field foreach record. [Editor's note: Listing 1, whichruns on IBM PC-compatible machines usingBASIC, is available in a variety of formats;see the insert card following page 368.]

The listing consists of three sec-tions: (1) lines 1-270 are the sampleprogram: (2) the SKAM routines arein lines 2000-2 550; and (3) a shortprogram to build and initialize the in-dex file begins at line 3000. Referringto tables 2 and 3. let's look at themost important features of the code.

Any program using the SKAM rou-tines must take care of some over-head:

[continued)

wMetaComCo

Languages

Atari ST™* Amiga"* QL

lattice® c

The well known LATTICE® C compiler, full featuredportable implementation.

MCC™ PASCAL

An ISO/ANSI standard Pascal. A fast single pass com-piler, ideal for commercial, educational and personaluse.

MCC™ ASSEMBLER

A professional standard macro assembler with manypowerful features.

CAMBRIDGE LISP

LISP interpreter/compiler providing a complete LISPdevelopment environment.

BCPL

A powerful compiler offering the convenience of a highlevel language with the flexibility of an assembler.

APL

Keyword and symbolic versions of this importantlanguage from MicroAPL.

MCC™ BASIC

68000 BASIC interpreters and compilers fromMetaComCo.

MENU+™

An easy to use program environment with pull-downmenus. Menu + comes free with Atari software.Upgrades ready for registered users.

TOOLKIT

Provides useful tools and utilities. From the people whowrote AmigaDOS.

Atari™

Commodore™

Sinclair™

Product

ST

Amiga

QL

Lattice C

$149.95

$149.95

$129.95

Pascal

$99.95

$99.95

$99.95

Assembler

$79.95

*

$49.95

Lisp

$199.95

$199.95

$79.95

BCPL

TBA

TBA

$79.95

APL Key.

$149.95

TBA

$129.95

APL Sym.

$245.00

TBA

$129.95

MENU +

$29.95

TBA

—

TOOLKIT

TBA

$49.95

—

* = available from Commodore

t = available from Atari

Cambridge LISP is available for CP/M-68Ktm

QL Lisp includes interpreter only

The Quality Source for 68000 Software

5353 #E Scotts Valley Dr., Scotts Valley, CA 95066Contact your local dealer or call:Tel: US 800-AKA-METACal 800-GET-META, Eur (UK) 44-272-428781Telex (UK) 444874 METACO G —— pj>Add 6.5% tax if CA resident.

Lattice is a registered trademark of Lattice Inc.Amiga and AmigaDOS js a trademark of Commodore-Amiga Inc.Atari ST is a registered trademark ot Atari Inc.CP/M-68K is a trademark ot Digital Research Inc.

SEPTEMBER 1986 -BYTE 143

KEYED FILE ACCESS

Table 2: Description of the employee record-keeping program by BASIC codenumbers.

Lines

Description

16, 17 The data file is opened and its format defined. This file must be

opened as logical file 2, and the variable used for the key (socialsecurity number in this case) must be KY$.

25 MX% is set to the maximum number of records to be contained in

the data file, and F1$ is assigned the name of the index file. Thisinformation must be the same as that used in the index-file-initialization program.

30 A call is made to the file management routines to set up the data

structure. The subroutines will allocate the vectors PT°/o and KE$and read pointers and keys into them.

100-270 The subroutines in the sample program that direct the file

maintenance operations on the employee file. By calling theappropriate SKAM routines, they provide an example of how toadd, delete, and list records.

Table 3: Description of the SKAM subroutines and index-file-initializationprogram by BASIC code numbers.

Lines

Description

2000-2010 The control section of the file management routines that stores

locally used variables and calls the desired routine.

2035-2062 Subroutine to input pointers from the index file and store them in

vector PT°/o and to read keys from the data file and store them inKE$.

2080-2088 Subroutine to add a new record to the data file. It calls routines to

insert the new pointer and locate a free space in the data file. Thenew record is stored in this location.

2090-2098 Subroutine to rewrite a record to the data file.

2100-2110 Subroutine to delete a record. The pointer to the record to be

deleted is located and moved to the section in PT% containingpointers to deleted space.

2150-2155 Subroutine to retrieve a record with key value in A$.

2200-2205 Subroutine to retrieve a record based on its position in ascending

key sequence. NX% contains the relative position.

2250-2259 Subroutine to write pointers in PT% back to the index file.

2280-2290 Subroutine to display certain file statistics.

2500-2510 Binary search routine. Using the pointers in PT°/o, the vector KE$ is

searched to find a key matching A$. If a match is found, K°/o is setto the location in PT°/o pointing to the matched key; if no match,K°/o is set to the negative value of the location in PT% where itwould be inserted.

2520-2530 Subroutine to locate the next free physical record in the data file. If

any records have been deleted, it uses the space from the last onedeleted; if there are no deleted records, the next position at theend of the file is used.

2540-2550 Inserts a pointer to a new record in PT%. The pointer is placed at

PT°/o(K%), and all pointers above it are shifted up one position.

3000-3025 The program to create and initialize the index file. The size of the

file is determined by the number of records the data file is tocontain. For each 64 data records, one block of pointers isallocated in the index file. Additionally, there must be space at theend of this file for keeping count of the number of deleted andactive records.

• The data file must be opened aslogical file 2 (line 16).

• Variable KY$ must be defined asthe key (line 17).

• Variables MX°/o and F1$ must be setto the maximum number of recordsin the file and the index filename, re-spectively.

• The SKAM routines must be calledwith ll% set to 1 in order to initializethe data structure (line 30).

Four variables, KE$, PT%, PT$, andZZ%, must be reserved for use by thefile management routines. To mini-mize the number of reserved vari-ables, the routines store all otherlocally used variables in vector ZZ°/owhen the code is entered (line 2004)and restore them upon exit (line2009).

The file management sectionstresses a modular, easily understooddesign. The sample program invokesthis section by setting 11% to thenumber of the desired operation andexecuting GOSUB 2000. In line 2006the controlling section passes controlto the required subroutine. A returncode in variable RC°/o indicates thestatus of the operation.

Prior to using the SKAM routines,you must run the short initializationprogram shown at line 3000. This pro-gram asks for the filename andnumber of records to be contained inthe data file. It then creates the indexfile and initializes the pointers. Notethat if you give the name of an exist-ing index file, the program will writeover the old index.

Conclusion

For programs requiring single-keyedaccess to a file, I have found theseroutines to be an effective, timesavingapproach to file I/O. I maintain thecode in a software library and appendit to programs needing keyed access,such as payroll, general ledger, andmembership programs. At less than100 lines of code, I think the routinesoffer one of the easier ways to beginaccessing records by key values.

| Editor's note: Ihe keyed-access filingroutines presented here are in BASIC. For asimilar treatment of this method implementedin Pascal, see Bruce Webster's "A Simple File-Indexing Scheme" in the June BYTE.] ■

144 BYTE ' SEPTEMBER 15

FREE OVERNIGHTDELIVERY

n ni

LOWEST PRICEGUARANTEE

TOLL-FREECUSTOMER SERVICE

Buy it today, use it tomorrow!

Only Logicsoft ships your order thesame day via overnight courier* Free.

Nobody beats Logicsoft prices.

In fact, if you find a lower price(advertised or a bonafide quote) on anyof the hundreds of products we stock,we'll beat it by $10+ Our CorporateAccounts Program offers attractivevolume discounts. Credit cards andPO's accepted.

Outstanding customer serviceand technical support.

It's only a toll-free phone call away.Another reason why Logicsoft is amajor hardware and software supplierto over 50,000 companies, includingover 90% of the Fortune 1000.

See inside for the lowest priceson over 800 products for IBM-PC's and compatibles.

■Applies lo order totaling over $100. It under $100, shippedUPS-FREE (Within Cont, U.S.). Due lo weight restrictions, printersand monitors are also shipped UPS —FREE. fhis otter does not applyto items under $100. American Express or Terms orders. In these in-stances, we will meet any lower price. We reserve the right to requesta current written price quote.

^FTl

To order or receive technical assistance, call our National Hotline:

1-800-645-3491

NY STATE: 1-800-235-6442 (516) 249-8440

Customer Service: 1-800-431-9037 NYS: 516-249-8440

FAX #516-249-5289

No surcharge tor MasterCard. VISA. American Express. COD.. money order, check or PO'S (please call lor price verification) • No salestax on orders shipped outside NY. State • Please add 2% lor Insurance and handling ($3.00 minimum) (int'l orders add'l) • We do notbill until we ship. All producls covered by mlg's warranty. Defective merchandise may be returned lor repair or exchange only. We do notguarantee compatabilily. Any goods returned lor credit are sub|ect to at 15% restocking charge. All prices and policies subject lo changewithout notice.

Lease or Purchase SystemsFrom Logicsoft

A Logiclease of any system entitles you toFREE installation and 90-day service contractat your place of business! High techwithout high cost.

Outstanding flexibility.

Plus possible

tax benefits.

Give Logicsoft a call -

well process your

lease application

ONLY LOGICSOFT

OFFERS ON-SITE

INSTALLATION & SERVICE

ON ALL LEASED AND

PURCHASED SYSTEMS

in 24 hours!

A purchase of any system entitles you toinstallation for only $99, and FREE servicefor 90 days at your place of business!

ComputerMaintenance

Now.. .trained installers andexpert service techniciansdispatched from each of our96 authorized service centersin most metropolitan areasthroughout the United States,ready to respond within anaverage of 4 hours.

To order or receive technical assistance, call our National Hotline:

1-800-645-3491

Customer Service: 1-800-431-9037

NY STATE: 1-800-235-6442 (516) 249-8440

FAX #516-249-5289

110 Bi-County Blvd., Dept. 543 EUROPE: 020-83 48 64

Farmingdale, NY 11735 Telex: 10759 Logic NL

CANADA: 416-283-2354 Mail orders to:

Domestic/lnt'l Telex LOGICSOFT EUROPE BV

286905SoftUR . pb 9460, 1006 AL Amsterdam, Holland

by James Feldman

Real TimeUnder RealPascal

Two ways to interfacea machine languageroutine to Pascal

Some critics of Pascal havecomplained about its in-ability to communicate withmachine language orassembly language routines. If youneed to do real-time or real-world pro-gramming in a Pascal environment,then access to the real machine isessential. Many Pascals have exten-sions that do allow such un-Pascal-likegoings-on. For example, Apple, Micro-soft, and DEC Pascals all provide toolsthat let you get at the guts of yourmachine. With such tools, it is not allthat difficult to gain access to the realmachine if you understand how vari-ables and data are transferred fromone procedure to another within aPascal environment.

Let's say that you want to do somesignal processing on data coming infrom the outside to an Apple II. Forexample, you might want to analyzean audio signal to see what its powerspectrum is. The data is availablethrough a machine-specific device—an analog-to-digital converter (ADC)board. To find out what the powerspectrum is, you have to gather thedata and analyze and display theresults. One numerical tool for analyz-ing and displaying these results is afast Fourier transform, which is anefficient algorithm for finding the

Fourier series that best characterizesa finite sample of a waveform. If youwere writing the FFT program, youwould most certainly want to do it ina high-level language. For this par-ticular application, you might alsohave some filtering to do, so youwould have to perform still other pro-cedures for signal conditioning. Youmight want to see the results of suchanalysis as a graph, so you would usegraphing routines. Note that you canperform all these functions usingPascal procedures. In other words, thesignal is to come from the outsideworld, but everything else is to bedone in the computationally comfor-table higher-level language.

To feed the FFT routine, you wanta set of 2 56 equally spaced samplesof a real signal. You probably want tobe able to control both the spacingand the source of the signal, and youwant that frame of points available fordirect processing in Pascal. If it isgiven that V1 is the name of the arrayto contain the 2 56 samples, CHAN-NEL is an integer that indicates whereyou would like your signal to comefrom, DELAY is another integer thatspecifies how long it is betweensamples, and FRAME is the name ofyour assembly language routine, then

there are two ways you might proceedin constructing the interface betweenPascal and assembly language. Oneway is to define the procedureFRAME with parameters CHANNELand DELAY transferred by value andV1 transferred by address. You wouldcall the assembly language routine asfollows:

FRAME (CHANNEL, DELAY, V1);

(For an explanation of the terms"transfer by value" and "transfer byaddress," see the text box "The Com-munication Problem" on page 146.)The other way is to make all variablesglobal so that both Pascal and assem-bly language can access them direct-ly by name. The call to the assemblylanguage routine would simply beFRAME without any parameters.

Figure I shows the relationship be-tween the several segments of the

[continued]James Feldman teaches computer architectureand semiconductor theory at NortheasternUniversity; he can be reached at the Depart-ment of Electrical and Computer Engineer-ing, Northeastern University, Boston, MA02115. He has a B.S., M.S., and Ph.D. fromCarnegie-Mellon University. His interests arecomputer architecture and semiconductordevices.

SEFTEMBER 1986 -BYTE 145

REAL TIME UNDER PASCAL

The Communication Problem

T™' here are two ways for a Pascal example, in the procedure definition routine. However, having the keyword

JL procedure to communicate with PROCEDURE EXAMPLEfXY ^^ Precec'e tne variables U and V

other routines: through a "transfer by INTEGER- VAR UVINTEGER) causes the address of the variables to

address" or a "transfer by value." The ' be transferred; it does not cause the

difference between these calls is the values of X and Y are transferred variables to be copied. Any change

similar to the difference between giving by value to the procedure and, there- that the procedure EXAMPLE makes

someone an original document and fore, any change that EXAMPLE makes in U and V will change corresponding

giving him or her a photocopy. For in them is not returned to the calling variables in the calling routine.

Listing A: This program demonstrates the difference between transfer by data and transfer by address.

PROGRAM TRANSFER;

WRITE('K) *);

TYPE Q = ARRAY [0..19] OF INTEGER;

FOR N := 0 TO 19 DO WRITE(K[N]:3);WRITELN;

VAR N : INTEGER;

END;

J.K : Q;

BEGIN { MAIN \

PROCEDURE CHANGE(P:Q; VAR L:Q);

FOR N := 0 TO 19 DO J[N] := 0;FOR N := 0 TO 19 DO K[N] := 3;

VAR N : INTEGER;

WRITE('J) ');

FOR N := 0 TO 19 DO WRITE(J[N]:3);

BEGIN

WRITELN;

FOR N := 1 TO 10 DO P[N] := 2;

WRITE('K) ');

FOR N := 1 TO 10 DO L[NJ := 2;

FOR N := 0 TO 19 DO WRITE(K[N]:3);

WRITE('P) ');

WRITELN:WRITELN;

FOR N := 0 TO 19 DO WRITE(P[N]:3);

CHANGE(J.K);

WRITELN;

WRITELN;WRITELN;

WRITE('L) ');

WRITE('J) ');

FOR N := 0 TO 19 DO WRITE(L[N]:3);

FOR N := 0 TO 19 DO WRITE(J[N]:3);

WRITELN; WRITELN;

WRITELN;

WRITE('J) ');

WRITE('K) ");

FOR N := 0 TO 19 DO WRITE(J[N]:3);

FOR N := 0 TO 19 DO WRITE(K[N]:3);

WRITELN;

END.

program. The Pascal user is unawareof the stack, and so is the program-mer who shares global variables be-tween the assembly language routineand Pascal. However, in the procedure

that passes variables through the call,a copy of CHANNEL and DELAY andthe address of the first byte in the ar-ray (V1) are pushed onto the stack justprior to the transfer of control to

TRANSFER BY

TRANSFER BY

VAR PASCAL

____M)pRESS

VAR

"

ASSEMBLY

PROGRAM

PROGRAM

S

T

)

CK

VALUE

Figure 1: The data-transfer routes. Direct use of global variables is shown, as well as atransfer of data through the procedure call that employs the stack as the transfer agent.

FRAME. FRAME begins by pullingthese three integers off the stack.

I will first describe in detail the solu-tion to the problem that passes pa-rameters to the assembly languageprocedure on the stack. Then I willlook at a side-by-side comparison ofthis method and the one that usesglobal variables.

| Editor's note: The programs of listings 1,2, and 3 are not meant to be run as such,since they require some specific hardware, butthey are good illustrations of the techniquesinvolved in interfacing machine language withPascal. You can apply these techniques to yourown problems]

The Un-Pascal Procedure

The assembly language program writ-ten in Apple II TLA (The Last Assem-

146 BYTE • SEPTEMBER 1986

REAL TIME UNDER PASCAL

This becomes a critical distinctionwhen you are using structured datasuch as arrays or records. If data istransferred by value, the wholestructure is copied over into a new areaof memory It doesn't take long to runout of memory this way, nor is it agood way to have a fast program. Onthe other hand, if you transmit theaddress of the structured data, it takesbut one word (2 bytes) to know allabout it, even if "it" is a huge,structured variable. All you transmit isthe address of the first byte of thearray.

Listing A and its accompanyingoutput in figure A give a complete (ifsilly) demonstration of how the twotypes of transfer affect the "current"value of a variable. It is done withstructured variables to show the detailsof that operation.

The first pair of rows in figure A arethe original values of J and K, re-spectively. J is all Os and K is all 3s.Then PROCEDURE CHANGE iscalled. It gets J as a transfer by valueand K as a transfer by address. Thesebecome P and L in the procedure.Values 1 to 10 in P and L are changed.These two data vectors are thenprinted. Both have changed. Next, theglobal variables J and K are printedfrom the procedure, showing their

The results of this

program appear on th

s screer

i as

J)

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

K)

3

3

3

3

3

3

3

3

3

3

3

3

3

3

3

3

3

O

3

3

P)

0

2

2

2

2

2

2

2

2

2

2

0

0

0

0

0

0

0

0

0

L)

3

2

2

2

2

2

2

2

2

2

2

3

3

3

3

3

3

3

3

3

J)

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

K)

3

2

2

2

2

2

2

2

2

2

2

3

3

3

3

3

3

3

3

3

J)

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

K)

3

2

2

2

2

2

2

2

2

2

2

3

3

3

3

3

3

3

3

3

Figure A: The output from the program in listing A.

current values. Note that J is still all 0sbut K has now changed. In otherwords, CHANGE was able to actdirectly on K (and on J's clone, P), butit has no connection with J at all.

The last two lines are simply the finalversion of J and K written out by themain program. Note that J still retainsits original values; K, of course, hasbeen altered.

The observant reader will note thatCHANGE did have access to J (and K)through the medium of global vari-ables. After all, it printed them. Globalvariables also represent a transfer-by-address technique that differs only

slightly in structure from what hap-pened between K and L. With globalvariables, you have a public blackboardon which any routine can write andfrom which any routine can read. Touse such a public facility, all users-readers and writers alike—must beconstrained to using the blackboard ina prescribed manner. That means thatevery user must call the variables bythe same name, that every user mustknow when another user is changingthe data, and that if one user needs tofix the current value, a private copy ofthe public data must be made beforesome other user changes it.

bier) is shown in listing 1. It is notmeant to be a superb lesson in as-sembly language programming, butrather an illustration of the transfer ofdata between Pascal and assemblylanguage. Remember that the call tothis program is FRAME (CHANNEL,DELAY, VI).

At the moment of transfer toFRAME, the stack will contain, inorder, four 2-byte integers: the returnaddress, the address of the first bytein V1, the value of DELAY, and thevalue of CHANNEL.

FRAME will first copy the four in-tegers from the stack to local storage.Next it must set up for gathering databy entering the loop once to primethe ADC. Then FRAME will have toput the 2 56 values of data from the

ADC into the appropriate locations inthe Pascal data space and in standardinteger format; data comes from theADC as single bytes (XX) but must goto the P-machine as words (00XX).Finally, FRAME must return control tothe calling routine.

The central point in this illustrationis the connection to variables in thePascal data space. Two words of dataare transferred directly through thestack as well as two addresses. Eachof these words is pulled in turn fromthe stack and stored at a local ad-dress. Then 2 56 bytes of data aregathered in TMP and transferred aswords to the Pascal data space. (Thedata-collection and transfer functionsare separated to make the loopfaster.)

If you want to follow the assemblylanguage program in detail, thefollowing comments should be help-ful. To span the full 2 56-word array,the local data pile is divided into twogroups of 128 bytes. In the Pascal dataspace the address for the first 128words runs from VX to VX+FF (hexa-decimal) in steps of 2; for the secondgroup of 128 words, addresses rangefrom VQ=VX+100 (hexadecimal) toVQ+FF (hexadecimal). Note that VQis generated at the top of the pro-gram. Using indexing after acquiringan indirect address (post-indexed in-direct), the 6502 processor, with its1-byte index register, can span a blockof 128 words. As illustrated in figure2, the 2 56 bytes of data in TMP must

(continued)

SEFTEMBER 1986 -BYTE 147

REAL TIME UNDER PASCAL

Listing 1: The assembly language routine FRAME used to illustrate thepassage of parameters through the call statement from Pascal.

.MACRO PULL

;pulls a word off of the stack

;and stores it in location specified

;as in PULL RETURN.

PLASTA %1PLASTA %1+1

.ENDM

;%1 means first argument of PULL; the high-order byte of the word

PROC FRAME,3

the "3" means three words (6 bytes) of

parameters (plus return address) will

be on the stack. LINKER will check

agreement

FRAME GRABBER takes 256 8-bit data points andstores them in an array of bytes labeled TMP.After the data is grabbed, it is transferredto V1. The delay between adjacent points isgiven by

t = 26.64 + 5*DELAY in microseconds.DELAY (<256) and CHANNEL (<16) are in the procedurecall as FRAME(CHANNEL,DELAY,VX).

;Each of these sets aside 1 word of;storage on page 0 (54 bytes;are avaiIabIe).

STOP .EQU 0

CHANNEL .EQU 2

DELAY .EQU 4

RETURN .EQU 6

VX .EQU 8

VQ .EQU 0A ;space for (VX+100 hexadecimal)

PULL RETURN

PULL VXPULL DELAY

PULL CHANNEL

LDA VXSTA VQ

CLC

LDA VX+1ADC #1STA VQ+1

LDX #0FF

STX STOP

LDY CHANNEL

JMP START

LOOP LDY #0

STY STOP

START LDY CHANNEL

LDA 0C0D0.Y

;MACRO call pulls return address;off the stack and puts it in RETURN.

;note that the order is the;reverse of the call's parameter list.;at this point the transfer of;parameters through the stack is;complete.

;set contents of VQ;to the address of;VX + 100 hexadecimal

;start with -1 (or 255) in index to;throw first datum away.;put 255 in STOP just for first pass;to allow reading of 257 values.

;set end point after first passage;to get the full 256 point list.

;assumes slot 5.

{continued)

Global variablesprovide a publicblackboard on whichthe current statusof each variableis always available.

become 2 56 words (512 bytes) in thePascal data space. A byte is takenfrom TMP and put into the low-order(LO) byte of the appropriate elementof the integer array in the Pascal dataspace. Then 00 (hexadecimal) is putin the corresponding high-order (HO)byte. After that is done for the 2 56samples, all that remains is to pushthe return address back onto thestack and execute a return from sub-routine (RTS).

A macro is used for the repetitivetask of pulling 2-byte integers off thestack. Note that locations must be setup to receive that data. I have chosento put them into page 0 to make thecode block as small as possible.

The first step is to cycle the ADConce to get meaningful data into theADC data register. The data that isreceived on the first LDA is garbageand should be ignored. It is put intolocation TMP+FF (hexadecimal),which will be written over when the2 56th good point is taken. The sec-ond step is to change STOP to let thestandard loop slide over 0 as the loopis entered for the first time. This reset-ting of STOP is done every timearound the loop to keep the looplength identical. Note that the firstgood piece of data (from the secondcall to the ADC) goes into locationTMP+0 and that a total of 256 equallyspaced, good data points will betaken, the last going into TMP+FF(hexadecimal).

The Global Alternative

As 1 mentioned before, you have theoption of using global variables. Whilethis method is not generally recom-

[conlinued)

148 BYTE • SEPTEMBER

ThisfeQneEme

IBMsSize

IsNot An Advantage.

When it comes to a portable com-puter, smaller is better. Thafs one reason thenew dual disk drive Toshiba T1100 PLUShas it all over the IBM PC Convertible.1

But our portable PC is not onlysmaller than the IBM, it's lighter. And morepowerful. Our 80C86 microprocessor letsyou zip through work at up to twice thespeed. And our maximum memory capac-ity is 640K of RAM. Theirs is only 512K.

The 11100 PLUS has other thingsthe IBM doesn't Like serial, parallel andCRT ports that are built-in standards.Not add-on extras. And a high resolutionLCD display screen that tilts to manyconvenient viewing angles. Not just a few.

Of course, die Toshiba TL100PLUS does have a few things in commonwith the IBM portable. Like completeIBM compatibility. And two built-in 720K3.5" disk drives. Ifs just that it has thesethings in a smaller, lighter, faster, moreportable, more affordable package.

To find out about theTllOO PLUS,call 1-800-457-7777 for the name of yourToshiba dealer.

And see why being smaller thanIBM is going to make us one of the big-gest names in PCs.

1. IBM PC Convertible is a registered trademark of International Business Machines Corporation.A.

In Touch with Tomorrow

TOSHIBA

Toshiba America, Inc.. Information Systems DivisionInquiry 354

REAL TIME UNDER PASCAL

STA

TMP.X

INX

LDY

DELAY

INNER

DEY

BNECPX

BNE

INNER

STOP

LOOP

;delay loop runs 1 or more times.;0 would give 256 cycles.

LDY

#0

;Set up to load results into V1.

LDX

#0

LDA

#80

;80 hexadecimal or 128 decimal

STA

STOP

AGAIN

LDA

TMP.X

;take a byte from the beginning

STA

(VX),Y

;put it LO at beginning of array

LDA

TMP+80,

X

;take a byte from the middle.

STA

(VQ),Y

;put it in LO at middle of array.

INX

;counting by bytes in TMP

I NY

LDA

#0

;high order byte is 0;with this 8-bit ADC.

STA

(VX),Y

STA

(VQ).Y

I NY

;counting by integers (2 bytes).

CPX

STOP

BNE

AGAIN

LDA

RETURN+1

;Set up for return.

PHA

LDA

RETURN

PHA

;return address is back on stack

RTS

;back to the calling routine.

TMP

.BLOCK 256

0

;this is just a block of bytes

;for temporary storage of data.

.END

PASCAL

TMP

B254--(00)B255 ♦(00)

-B254-B255

Figure 2: The relationship betweenbytes in the array TMP and words inPascal data space.

mended, the global-variable alter-native works well enough. The dif-ference between using a global vari-able and transferring variablesthrough the procedure call is signifi-cant, even if the transfer process is byaddress in both cases. Probably themost important difference is that, withtransfers through the call, neither thecaller nor the person being calledhas any idea of what the other usesas the name of the variables. Thecaller says, "Load your 2 56 pointsstarting HERE." HERE is an address.It can be a different address each timethe person being called is accessed.That makes the two procedures es-sentially independent of each other.The only thing that must be commonis the agreed-upon transfer state-ment—the interface. For Pascal, the in-terface is the list of parameterspassed in the call and the set of globalvariables defined for that programsegment. If no global variables are

employed, the procedure or functionis almost independent of its surround-ings.

However, there is a hidden depen-dence that shows up only if the calledroutine calls yet another routine andthen another, and so on. If the subse-quent routine has access to the samedata, the first routine must know whatthe second and any subsequent rou-tines do to that variable to know thatit hasn't been altered in mid-computa-tion. If you are not the only program-mer or if the program is large, it canbe exceedingly difficult to know if anyother routine is mucking about in thedata that you thought was secure.

Global variables do have two re-deeming virtues. First, they provide apublic blackboard on which the cur-rent status of each of the variables isalways available without any overheadin computation or memory use. Sec-ond,.they are easier to deal with at theassembly language level since theycan be accessed with direct address-ing (by name). If you use the transferthrough the stack technique in thecalling sequence, these variables mustbe accessed using indirect address-ing. Indirect addressing is not difficultin itself, but it slows the machinedown slightly and sometimes puts theburden of complex address computa-tion directly on the programmer.

A side-by-side comparison of thetwo techniques is given in listing 2.Global data is directly accessible byname from the assembly languageprogram through the .PUBLICdeclaration. Note that the right sideuses post-indexed indirect addressing(i.e., the full 2-byte address is fetchedfrom page 0 and then indexed), whilethe left uses indexing of an absoluteaddress provided by the LINKER (i.e.,the LINKER installs the appropriate2-byte address directly into the in-struction). The two sets of code looksimilar and, apart from an extramachine cycle for the indirect instruc-tion, they do the same thing in thesame number of instructions. How-ever, note the additional instructionson the right that generate the addressof the 128th word of V1 (or, moreproperly for the column on the right,whatever array was passed in the call).

(continued)

150 BYTE • SEPTEMBER 1986

REAL TIME UNDER PASCAL

Inquiry 44 for End-Users.Inquiry 45 for DEALERS ONLY.

Listing 2: A side-by-side comparison of the two methods for interlacing

assembly language to Pascal. On the left is the method that uses V1 as a

global array. On the right is the method that passes parameters through the

call, as in FRAME (CHANNEL, DELAY, V1). Notice the extra lines of

code required on the right to set up variables for indirect addressing.

.PUBLIC VI.CHANNEL,DELAY

VX .EQU 8

.

VQ .EQU 10

PuIi VX

■

LDA VX

STA VQ

CLC

LDA VX+1

ADC #1

•

STA VQ+1

LDY #0

LDY #0

LDX #0

LDX #0

LDA #80

LDA #80

STA STOP

STA STOP

AGAIN LDA TMP.X

AGAIN LDA TMP.X

STA V1,Y

STA (VX),Y

LDA TMP+80.X

LDA TMP+80.X

STA V1+100.Y

STA (VQ),Y

INX

INX

I NY

I NY

LDA #0

LDA #0

STA V1.Y

STA (VX).Y

STA V1+100.Y

STA (VQ),Y

I NY

I NY

CPX STOP

CPX STOP

BNE AGAIN

BNE AGAIN

Listing 3: The Pascal program that uses the version of the assemblylanguage routine FRAME that passes parameters on the stack.

PROGRAM GRABBER;

USES NUMBER; } library that contains anumerical entry routine, INTIN

TYPE INTRAY = ARRAY [0..255] OF INTEGER;

VAR L.M.N.K,DELAY,CHANNEL : INTEGER;V2.V1 INTRAY;

VOLTS : ARRAY [0..255] OF REAL;A : REAL;PRINTFILE : TEXT;

C & PASCALPROGRAMMERS

Blaise Computing provides a broad range of pro-gramming tools for Pascal and C programmers,with libraries designed for serious softwaredevelopment. You get carefully crafted codethat can be easily modified to grow with yourchanging needs. Our packages are shipped com-plete with comprehensive manuals, sample pro-grams and source code.

C TOOLS PLUS

$175.00

NEW! Full spectrum of general-purpose utilityfunctions; windows that can be stacked, re-moved, and accept user input; interrupt serv-ice routines for resident applications; screenhandling including EGA 43-line text mode sup-port and direct screen access; string functions;and DOS file handling.

PASCAL TOOLS/TOOLS 2

$175.00

Expanded string and screen handling; graphicsroutines; easy creation of program interfaces;memory management; general program con-trol; and DOS file support.

VIEW MANAGER

$275.00

Complete screen management; paint data entryscreens; screens can be managed by your appli-cation program; block mode data entry or field-by-field control. Specify C or LBM/MS-Pascal.

ASYNCH MANAGER

$175.00

Full featured asynchronous communicationslibrary providing interrupt driven support forthe COM ports; I/O buffers up to 64K; XON/XOFF protocol; baud rates up to 9600; modemcontrol and XMODEM file transfer. Specify C orIBM/MS-Pascal.

Turbo POWER TOOLS PLUS

$99.95

NEW! Expanded string support; extendedscreen and window management including EGAsupport; pop-up menus; memory management;execute any program from within Turbo Pascal;interrupt service routine support allowing youto write memory resident programs; schedul-able intervention code.

Turbo ASYNCH PLUS

$99.95

Complete asynchronous communicationslibrary providing interrupt driven support forthe COM ports; I/O buffers up to 64K; XOK/XOFF protocol; and baud rates up to 9600.

RUNOFF

$49.95

NEW! Text formatter written especially for pro-grammers; flexible printer control; user-definedvariables; index generation; and general macrofacility. Crafted in Turbo Pascal.

EXEC

$95.00

Program chaining executive. Chain one pro-gram from another even if the programs are indifferent languages. Shared data areas can bespecified.

ORDER TOLL-FREE 800-227-8087.'

BLAISE COMPUTING INC.

2560 Ninth Street. Suite 316 Berkeley. CA 94710 (415)540-5441

Inquiry 81

MAC INKER

Re-ink Any Fabric RibbonAutomatically for lessthan 5 cents.

Dedicated Units start at $54.95

Universal CartridgeMAC INKER

Universal SpoolMAC INKER

$68.50$66.95

shipping S3.00

Lubricated, Dot Matrix Ink $3.00,

bottle available in black/brown/

red/green/yellow/purple/

orange/gold and silver.

Over 50,000 MAC INKER(s) in the field.

Over 7500 printers supported.

MERCURY MODEM

Really 100% Hayes* Compatible.

■ 300/1200 baud.

■ audio monitor/front panel lights.

■ 18 months warranty.

"* Shipping S4.00

$205.00

*Hayes is a trademark of Hayes Microproducts.

DATA SWITCHES

AU types, all lines switched, all metal,heavy duty switch, elegant design, bestvalue for money. ——-~^.

''■?

2 Ports Parallel or Serial

4 Ports Parallel or Serial

2 Computers/2 PrintersParallel or Serial

We have cables too. Please inquire orspecify at time of order.

$ 75°°$150°°

$150°°

Order Toll Free.

Call or write for free brochure.

1-800-547-3303

In Oregon 503-297-2321 (24 hours line)

Computer

Friends

®

6415 SW Canyon Ct., #10, Portland, OR 97221,

telex 4949559

Dealer inquiries welcome.

REAL TIME UNDER PASCAL

PROCEDURE FRAME(DELAY,CHANNEL : INTEGER;

VAR VX : INTRAY); EXTERNAL;

PROCEDURE DUMP; {prints out the data}

VAR K,M,N : INTEGER;

BEGIN

WRITELN(PRINTFILE);FOR K := 0 TO 15 DO BEGINFOR M := 0 TO 15 DO BEGIN

N := K * 16 + M;

WRITE(PRINTFILE,V0LTS[N]:5:2,' ');

END;END;WRITELN(PRINTFILE)WRITELN(PRINTFILE)WRITELN(PRINTFILE)END;

BEGIN {main}

REWRITE(PRINTFILE,'PRINTER:'); {open and output file}

WRITELN(CHR(12)); {clear screen; get DELAY and CHANNEL}

REPEAT

GOTOXY(0,5);

WRITELN( 'Enter delay as integer (1..256) in steps of);

WRITE('5 microseconds from minimum of 26 microseconds:');

DELAY := INTIN;

IF (DELAY<0) OR (DELAY>255) THENWRITE('DELAY OUT OF RANGE');UNTIL (DELAY>-1) AND (DELAY < 256);

WRITE(CHR(12)); {erases error message}

REPEAT

GOTOXY(0,5);

WRITE('Enter channel number 0..15): ');

CHANNEL := INTIN;

IF (CHANNEL<0) OR (CHANNEL>15) THEN

WRITE('CHANNEL out of range. Reenter.');UNTIL (CHANNEL>-1) AND (CHANNEL < 16);

A:= 1.25.5;

WRITELN(CHR(12)); {clears screen}

GOTOXY(0,5);

WRITELN('FRAME GRABBER STARTING');

WRITELN;

FRAME(CHANNEL,DELAY,V1); {the first call to FRAME.}

WRITELN(CHR(12)); {clears screen}

REPEAT

GOTOXY(0,5);

WRITELN('Enter delay as integer (1..256) in steps of);

WRITE('5 microseconds from minimum of 26 microseconds:');

DELAY := INTIN; {DELAY is 5 microseconds}

IF (DELAY<0) OR (DELAY>255) THENWRITE('DELAY out of range');UNTIL (DELAY>-1) AND (DELAY<256);

WRITE(CHR(12)); {erases error message}

GOTOXY(0,5);

WRITELN('FRAME GRABBER STARTING');

WRITELN;

FRAME(CHANNEL,DELAY,V2);

WRITELN('Converting data to REAL.');

FOR N:= 0 TO 255 DO BEGIN

{continued)

152 BYTE • SEPTEMBER 1986

IQBti So!e3= ]|,, :;,,: .,,,Rndasulo -Vonga■

**

fa ra Hi0E

SI W

[] I ■ n

l/ntf/ today;

yot; needed a

Charting program,

a Drawing program,

and aPresentation program

NOW ALL YOU NEED IS

IMUVV /ALL YUU /VCCL> Id IT

ERGRAPHICS 2.0

EnerGraphics 2.0 simply outperforms thecompetition. Whether you 're making charts fora presentation, analyzing data, making maps,flow charts or creating almost any type ofgraphic, you'll find the capability with^EnerGraphics 2.0.

EnerGraphics 2.0

is easy to use too, because a

mouse has been added. Now with mere

pushes of a button, stunning charts and drawings

are easily created. Help screens are also available,

plus, new documentation with a quick-tip book that

makes EnerGraphics 2.0 a breeze to use.

So, if you want this kind of

performance and capability which can be

used by anyone, the simple choice

is EnerGraphics 2.0.

m

Write for moreinformation and adealer near you orcall 800-325-0174.

ENERTRONICS

Enertronics Research, Inc. • #5 Station Plaza • 1910 Pine Street* St. Louis, MO 63103 • (314)421-2771

Inquiry 120

REAL TIME UNDER PASCAL

VOLTS[N] := V1[N];

{convert to REAL}

VOLTS[N] := A*V0LTS[N]-5;

{change to voIts{

END;

DUMP;

FOR N := 0 TO 255 DO BEGIN

VOLTS[Nl := V2[N];

jconvert to REALl

VOLTS[NJ := A*VOLTS[N]-5;

{change to volts}

END;

CLOSE(PRINTFILE;

END.

X10"1

40.0

-/

/

20.0

3.2 \

9.7

/ 16/-20.0

' -40.0

.1

22.6

29.0 /

X10"3

Figure 3: The graph of the data taken from the ADC with DELAY = 6{hexadecimal).

Figure 4: The graph of the data taken from the ADC with DELAY = 20[hexadecimal).

On the left, you need only write V1 +100 (hexadecimal) to have that ad-dress of the 128th word of V1.

Let me stress that in assembly lan-guage no reference is made in any ofthis data manipulation to data struc-ture. Any structure that is there mustbe handled by the programmer. Youhave to know exactly how the data willbe arranged, and if you do it wrongthe opportunities for disaster areboundless.

For example, structured arrays of in-tegers are arranged sequentially inmemory. Each integer is distributedover two bytes with the low-order partof the integer in the byte at the loweraddress. This means the LO byte ofinteger #2 is the third byte from thestart of the list. The PUBLIC state-ment or the transfer of addressthrough the stack provides you withaccess to the LO byte in the array be-ing referenced, whether the array isan array of 1 or 100. After that, thecounting is all yours.

The Pascal Part

To complete the example, listing 3 isa simple Pascal program that uses theassembly language routine in listing1. The program simply gathers twoblocks of data and prints them out. Itspurpose is to show how the call ismade, that it actually works, and thatthe transfer by address through thestack does enable you to applyFRAME to any array you might want.Had I used a global variable array, Iwould have had to use the data 1 ob-tained from each call to FRAMEbefore calling FRAME again. Figure 3shows the sinusoid plotted from thedata taken on a 60-Hz signal usingGRABBER with DELAY - 6 (hexa-decimal). Figure 4 shows the sinecurve with DELAY = 20 (hexadeci-mal).

Conclusion

This application shows that for thoserare circumstances in a high-level pro-gram where you must descend intothe depths to achieve timing, com-munications, or any other operationwhere machine language is sine quanon, the makers of many Pascals havemade it possible for you to do justthat. ■

154 BYTE • SEPTEMBER 1986

WeVe taken the workout of doing Windows*

Microsoft® Windows is becoming the mostpopular operating environment for PC systems.

It's not surprising. Windows provides thefoundation for an exciting new generation ofapplications that users are demanding. In addi-tion, Windows handles many of the detailsinvolved in a software project allowing you tospend more time enhancing your application.That's why a growing number of corporate andindependent software developers are buildingWindows applications.

The Microsoft Windows Software Develop-ment Kit is your key to this extraordinary newenvironment. It's packed with full referencedocumentation, libraries, utilities and sampleprograms. Together with our C Compiler orMacro Assembler, it's a comprehensive packagethat lets you make the most of your application.

Software with a new view.

Giving your applications the Windowstreatment begins with a new look. The richgraphical environment allows you to rethink howyou want your program to be presented on screen.It lets you mix text and graphics. You can incor-porate multiple fonts in a variety of sizes, faces andstyles. And it provides the basic building blocksthat make it easy to create drop-down menus,dialog boxes, scroll bars, icons and more.

These features not only simplify your applica-tion design, but also provide the familiar interfacethat makes your software easier to learn and use.

Easing the data shuffle.

Of course, there's more to Windows thanjust looks. Now, different applications can worktogether. In concert.

The Windows Clipboard provides supportfor users to cut and paste information betweenyour applications and others. Or you can usemessages to establish "hot links" to transferdata automatically.

Upgrading made easy.

Windows' device independent design allowsyou to build your application today and takeadvantage of new technology as it becomes avail-able. When new graphics cards, printers andpointing devices appear they can be used withyour software, without modifying your code.Simply by installing the new driver.

Your window of opportunity.

The Microsoft Windows Software Develop-ment Kit is your fastest route to better applica-tions. And with it, we also offer DIAL, our on-linetechnical support service to help you with thetough questions, and development courses thatcover everything from using the dialog editorto memory management.

Find out how you can get your MicrosoftWindows Software Development Kit. Pick up thephone and call (800) 426-9400. In WashingtonState and Alaska, call (206) 882-8088. In Canada,call (416) 673-7638. And we'll open the doorto Windows.

The Microsoft WindowsSoftware Development Kit includes:

♦ Dialog editor.

♦ Icon editor.

♦ Font editor.

♦ Resource compiler.

♦ Linker.

♦ MAKE (program maintenance utility).

♦ Symbolic debugger.

♦ Heap analysis utility.

♦ Sample programs.

♦ Windows libraries.

♦ Programmer's reference.

♦ Programmer's utility guide.System requirements:

♦ 512K memory, DOS 2.0 or higher.

♦ Two double sided disk drives*

♦ Graphics adapter card.*hard disk recommended

Microsoft®Windows Software Development Kit

The High Performance Software.

Microsoft is a registered trademark ot Microsoft Corporation.

SEPTEMBER

1YTE 155

The fastest C

Your search for execution speed is over.The new Microsoft® C Compiler Version 4.0is here. With blazing performance. We'veadded common sub-expression eliminationto our optimizer that produces code thatrips through the benchmarks faster thanever before.

"... the Microsoft performance in the benchmarksfor program execution is the best of the lot overall'.'—William Hunt, PC Tech Journal, January, 1986*

But speed isn't the only edge you get withMicrosoft C. Other advantages include a vari-ety of memory models like our new HUGEmodel that breaks the 64K limit on singledata items. Plus our NEAR, FAR and HUGEpointers, which provide you greater flexibility.All this allows you to fine tune your programto be as small and fast as possible.

"Excellent execution times, the fastest registersieve, and the best documentation in this review... Microsoft Corporation has produced atremendously useful compiler."—ChristopherSkelly, Computer Language, February, 1986.

No more debugging hassles.Introducing CodeView. Free.

Now, for a limited time, we'll give you anunprecedented programming tool when youbuy Microsoft C, free. New Microsoft Code-View™ offers the most powerful tool yet in

the war on C bugs. Forget the hex dumps.Now you can view and work with programsat any level you want. Use the programsource, the disassembled object code, or

Microsoft C Compiler Version 4.00

Microsoft C Compiler

♦ Produces fast executables and optimized code including eliminationof common sub-expressions. NEW!

♦ Implements register variables.

♦ Small, Medium and Large Memory model libraries.

♦ Compact and HUGE memory model libraries. NEW!« Can mix models with NEAR, FAR and the new HUGE pointers.

♦ Transport source and object code between MS-DOS® and XENIX®operating systems.

♦ Library routines implement most of UNIX™ System V C library.

♦ Start-up source code to help create ROMable code. NEW!

♦ Full proposed ANSI C library support (except clock). NEW!

♦ Large number of third parry support libraries available.

♦ Choose from three math libraries and generate in-line 8087/80287instructions or floating point calls:

— floating point emulator (utilizes 8087/80287 if installed).

— 8087/80287 coprocessor support.

— alternate math package — extra speed without an 8087/80287.

♦ Link your C routines with Microsoft FORTRAN (version 3.3 orhigher), Microsoft Pascal (version 3.3 or higher) or MicrosoftMacro Assembler.

♦ Microsoft Windows support and MS-DOS 3.1 networking support.

♦ Supports MS-DOS pathnames and input/output redirection.

Microsoft Program Maintenance Utility. NEW!

♦ Rebuilds your applications after your source files have changed.

♦ Supports macro definitions and inference rules.

Other Utilities

♦ Library Manager.

♦ Object Code Linker.

♦ EXE File Compression Utility.

♦ EXE File Header Utility.

C Benchmarks

In seconds

Microsoft

C4.0

LatticeC3.0

Computer

Innovation

C2.3

AztecC86 3.2

WizardC3.0

Sieve ofEratosthenes(register) 82.9Copy Block 86.9

151.4231.7

172.3199.0

88.0123.8

91.9189.5

Run on an IBM PC XT with 512K memory

Microsoft CodeViewWindow-oriented source-level debugger. NEW!

♦ Warch the values of your local and global variables and expressionsas you debug.

♦ Set conditional breakpoints on variables, expressions or memory;trace and single step.

♦ Watch CPU registers and flags as you execute.

♦ Effectively uses up to four windows.

♦ Debug using your original source code, the resulting disassemblyor both intermingled.

♦ Use drop-down menus to execute CodeView commands.

♦ Access the on-line help to lead you through CodeView's optionsand settings.

♦ Easily debug graphics-oriented programs since program output iskept separate from debugger output.

♦ Keyboard or optional mouse support.

♦ Enter in familiar SYMDEB or DEBUG commands.

*Reprinced from PC Tech Jnumal, January 1986, copyright 1986, Ziff-Davis Publishing.

t

you ve ever seen,

both at the same time. Open a window toview CPU registers and flags. Watch localand global variables as well. All while yourprogram is running.

CodeView gives you complete control.Trace execution a line at a time—usingsource or assembly code. Or set conditionalbreakpoints on variables, memory or expres-sions. CodeView supports the familiarSYMDEB command syntax, as you'd expect.Commands are also available through drop-down menus. Combine the new window-oriented interface with our on-line help anddebugging has never been easier. Or quicker.

Take the $5 CodeView tour.

You may find it hard to believe our debug-ger can do all we've claimed. So we're offeringtest drives. Five bucks will put you behindthe wheel of a Microsoft C demo disk withCodeView+See for yourself how fast debug-ging can get.

For more information about the Code-View demo disk, the new Microsoft CCompiler, a list of third party library sup-port or the name of your nearest Microsoftdealer, call (800) 426-9400. In WashingtonState and Alaska, (206) 882-8088. In Canadacall (416) 673-7638.

File Search Uiew Rim Uateh Options

J math.cisland ! 244I) tiszeroO : 1:) 4834:8880 88 88 88 88 88 88 88 88 43

EH

Trace! Go!

pi.exe

arctan(2)

Aain(2,12782)

—» 72

JDB5:8BEE B88288

3DB5:88F1 E89482

3DBS:8BF4 56

JDB5:88F5 8B7684

13: t[0] = l;

3DB5:88F8 C6B6441AB1

14: dig(s);

3DB5:88FD 56

3DB5:B8FE E82681

3DB5:B181 83C482

15: add();

3DB5:8184 E84D88

16: island =

BBS:8187 C746FE01B8

17: do i

AX,8882chkstk (8388)

SI,Word Ptr [BP+84]

Byte Ptr [_t (1A44)],81

/* t[.l = 1/s */s

_diy (8227)SP,+82

_add (8154)

Word Ptr Lis land J,8881

>da 33 8x291834:8821 Microsoft

AX = 8882BX = 3ICCCX = 08F4DX s 1E88SP = 31CABP = 31CESI = 8082DI = 32A8DS = 4834ES = 4834SS = 4834CS = 3DB5IP = 88F8nourflouup

enable

positiye

not zero

no auxcy

odd

carry

Microsoft* C Compiler

The High Performance Software

Microsoft. MS-DOS and XENIX arc registered trademarks and CodeView is a trademark of Microsoft Corporation. UNIX is atrademark of AT&T Bell Laboratories. IBM is a registered trademark of International Business Machines Corporation. "("Offer expires 12/31/86.

Finally, a language worth

For years BASIC has been everyone's firstlanguage. And for almost as long, they've beentempted by other languages. Lured by promisesof more speed, more power.

We have a solution. A new language that's asubstantial improvement over BASICA. Faster.More structured. Finally, a compelling reason toleave BASIC.

Introducing Microsoft's QuickBASICCompiler, Version 2.0.

At last, you can have the latest programmingtechniques, combined with the solid foundationof BASIC. Our new compiler is as compatiblewith BASICA as you can get. At the same timeit offers the extra speed and power you've beenlooking for.

Run faster with compiled code.

If there's one thing you've asked for, it's speed.And Microsoft® QuickBASIC simply blazes.Old BASICA programs will run up to ten timesquicker once they've been compiled. Sometimeseven faster.

Everything you need. Built-in.

Making programs run faster is only part of thestory, though. The new Microsoft QuickBASICCompiler includes a full-screen editor, built-in.So now you can make the jump from writing toRUNning in no time flat. Edit your program,compile it, and run it. Faster than any otherBASIC compiler around. All without leavingour on-line help and prompts.

File Edit

■ta = 8 TO 2*iStar(c

Search

Run

<t i

T theta

Find...Selected TextRepeat Last FindChange...

Label

0

iStai*<cx,cy,radius,theta) STATIC

- radius * cos(theta)dy = radius * sin(theta)1 ine(cx,cy)-(cx+dx,cy+dy),2sub

|| NEXT without FOR

Next Error

leaving BASIC for.

On the rare chance your program doesn't run100% the first time out, we've got another sur-prise for you. The Microsoft QuickBASICdebugger. Our full-screen tracing lets you debugyour programs while watching the source codeexecute. A line at a time, or with breakpoints.As easy as can be.

Our compiler is also smart enough to save youtime. First, by finding any errors in one pass.Second, by putting your editor's cursor on theproblem. Automatically. So you don't have to getlost in a maze of error codes and line-numbers.

The BASIC virtues. And more.

Speaking of line numbers, lets not. Becauseline numbers are strictly optional. And MicrosoftQuickBASIC lets you use alphanumeric labelsas well. Now you can GOTO ErrorCheck insteadof line number 6815.

Or you could stop using GOTOs altogether.There are a variety of options that could makethe GOTO an endangered species. Features likemulti-line IF-THEN blocks. And named sub-programs. Now your BASIC programs can beas structured and organized as you want.

We've only just begun to talk about thevirtues of Microsoft QuickBASIC. There aredozens of enhancements to your favoritelanguage. Things like larger arrays. Local andglobal variables. Reusable modules that let youcreate libraries of your most often-used routines.All explained in a revised manual that includesa complete language reference.

Making your quick escape.

If all these features follow your BASICinstincts, then zip on down to your nearestMicrosoft dealer. That's where you'll discover thebest surprise of all. The price. Only $99 for thebest reason to leave BASIC.

For the name of your nearest Microsoft dealer,call (800) 426-9400. In Washington State andAlaska, (206) 882-8088. In Canada, call (416)673-7638.

Microsoft® QuickBASIC

The High Performance Software™

Microsoft is a registered trademark and The High Performance Software is a trademark ofMicrosoft Corporation. IBM is a registered trademark of International Business Machines Corporation.

Microsoft QuickBASIC Compiler Version 2.0for IBM* PC and Compatible Computers.

BASICA Compatibility

♦ Sound statements including SOUND and PLAY.♦Graphics statements including WINDOW VIEW, DRAW

GET, PUT, LINE, CIRCLE, LOCATE and SCREEN.♦Support of EGA extended graphics modes. NEW!

♦ BASICA structures are supported including WHILE/WEND,

IF/THEN/ELSE, FOR/NEXT, GOSUB/RETURN, and

event handling. .

Microsoft

Results of Sieve Benchmark BASICA 3.1 QuickBASIC 2.0Seconds per iteration 78 0.52

Complete Programming Environment

♦ Built-in Editor that places the cursor on found errors auto-matically. NEW!

♦ Compile entirely in memory at speeds up to 6000 lines perminute. NEW!

♦ Link routines once when starting a programming session andno need to link again when changing programs. NEW!

♦ Built-in debugger with single-step, animate, and trace modes.NEW!

♦ Create stand-alone programs.Alphanumeric Labels

♦Can be used to make your programs more readable. Linenumbers are not required but are supported for BASICAcompatibility.

Structured Programming Support

♦Block IF/THEN/ELSE/END IF eliminates the need forGOTO statements. NEW!

♦ Subprograms can be called by name and passed parameters.Both local and global variables are supported.

Modular Programming Support

♦ Separate compilation allows you to create compiled BASIClibraries to use and re-use your programs.

♦A library of routines to access DOS and BIOS interrupts is

supplied. NEW!Large Program Support♦Code can use up to available memory.♦Numeric arrays, each up to 64K bytes,

can use up to available memory.

NEW!

.•'."■'.-;:,

f

.*»

L^^yS'

BYTE

68000

Machines

68000 Tricks and Traps

by Mike Morton 163

UNIX and the MC68000

by Andrew L. Rood, Robert C. Cline.

and ]on A. Brewster 179

A Comparison of MC68000 FamilyProcessors

by Thomas L. ]ohnson 205

Atari ST Software Development

by Michael Rothman 223

Amiga Animation

by Elaine A. DittoM and Richard A. Ditton 241

Amiga vs. Macintosh

by Adam Brooks Webber 249

THE APPLE MACINTOSH GAVE US all a glimpse, back in February of 1984,of a glittering new future for personal computers. Many people had seen similartechnology in the high-end workstations made by companies like Xerox,Apollo, and Sun. But these workstations were priced outside the range of thetraditional personal computer; we drooled over them but didn't expect to beable to own one—until the Macintosh came along.

Soon after the Macintosh created a new wave of excitement in the personalcomputer world, Atari and Commodore began showing prototype machinesthat offered similar capabilities but with more power and at lower cost. Sud-denly, it seemed that a new trend in personal computers was developing.

Inspection of the new machines, and many of the workstations they emulated,revealed a common component—a Motorola MC68000-series microprocessor.Closer investigation showed that the MC68000 had the horsepower and theeasy programmability that lent itself to the creation of workstation-likemachines. These machines had lots of memory, addressed linearly, and han-dled bit-mapped graphics with ease.

Many people began to see the MC68000 as an alternative to the InteliAPX86-series microprocessor that powered the IBM PC-class machines. Today,there are avid MC68000 camps and equally avid Intel iAPX86 programmercadres.

Sparked by all the interest in the new Commodore Amiga, the Atari ST series,and the Macintosh, BYTE began work on an extensive examination of theMC68000. Originally planning for a separate issue of the magazine, we puttogether a series of articles exploring the MC68000 and many of the machinesit powers. Those articles make up this month's theme section and the con-tinuing coverage of the MC68000 that will appear in our Features section overthe next several months.

The coverage in the following pages includes a comparison of the entireMC68000 series by Motorola's Tom Johnson. There are, in fact, five differentMC68000s, and Johnson explains what each is designed to do and, most im-portant, how compatible they all are with each other.

In other articles, Mike Morton passes along some of the assembly languagetechniques he's acquired while helping to write software such as Lotus's Jazzfor the Macintosh. Adam Webber shares some similar observations about theMacintosh and Amiga system software gleaned from his work in porting theTrue BASIC language to those two machines. A group of Hewlett-Packardengineers explains why the MC68000 is particularly well suited to the UNIXoperating system. Mike Rothman explains the many faces of GEM and theother system software on the Atari ST. And Elaine Ditton and Richard Dittonlook at writing animation software for the Amiga, the MC68000-based machinewith the most raw computing power but also the rawest system software ofthe new wunderkind computers.

Follow-on articles in subsequent issues will include articles on debuggingin an MC68000 environment, more assembly language programming tech-niques, and more advanced tutorials on the Atari ST, Amiga, Macintosh, andother MC68000 machines.

—G. Michael Vose, Senior Technical Editor, Themes

SEPTEMBER 1986 • BYTE 161

HttMiWN .|.mMfl!MIMtlMHIl»MlM»|ilMMftMtfW"fcM*«M>"W««»<!«"'«M^

Amiga under $2,000.Anybody elseup to $20,000.

This "painting" was created on theAmiga™computer using ElectronicArts' Deluxe Raint™software. NoPC, anywhere, can create this kindof graphic dazzle for the price ofan Amiga.

But there's more to the Amigathan whiz bang graphics. It's also atop-of-the-line PC ready to solveproblems, business and personal.

The incredible power that bringsTut back to life can also makegigantic spreadsheets sit up andbeg, can make eloquent the word-iest of word-processing tasks, andthanks to the Amiga's unique multi-tasking capabilities, it can do

BBaS

UUIItl -lUlltli mllNl.l.llii

<"■< '••Hill IHM 'HCM(I)

T

m

m)| HnHHimum

l|. IIH1HI'

•HilMUt

itiitiuiffiMMiM". *N

'.'.lilt

timmtwtwHftHMiiniH-

IHMMMMM'ini

I' "Mil

HHII

TltlKlllMMIH,

i.ll|IMIl|<|ill|-li!H HImiiiiiimiiiiii«t|tib.MtWIMlllKllHKI ML'

Mi)

lum

i i!

jpfeIII

iaBttK!l«!ii!!:!!::!!!ttltit|i;,:i::r

!':.:

xmH*m*m*tnmmmmum*tt***i*t*i*m

»»">l*ttMf>HI*Hi*l*4ll>mHtMiHi""<"-<"

IMiMHi'i.i.i.l"!.MMftttKllltlHHIitMMHMtltltlMM

,. MtimittMHH

•::!!!!:;„.;::

m

iniiiiiiimi.nl.Ml

liiiiilliliiiiiit'1''llllllllli.i.i.l

MHHmmfl

l.,,M,...h,MMH..

ttiMtiitHttHMMM,. HtMti }t»M H

HttHMMUnUuiiHHhiitiidiiiiiil

■ IMW-WKK...

nMMuilULJ Hit

^^^^^^^^.*

Saiaagniiiiiiii!

.i.«,. -h mmiiiMtti- !•••

•HiiitMi m¥ i wm—■»■»m«it*ti

..•«"...:

=ss

ffl

word processing and spreadsheetanalysis and graphics and moresimultaneously.

No other PC past, present or inthe near future has done it, is doingit or is likely to do it.

nuga is a trademark oi uommc

"'"". Commodore Electronics I

lc. "ivfe'lVm! is a trademark' (irT!Iec1'rohic*A^S, Irit1:'

See what you think.

Inquiry 398

6-8000 MACHINES

68000 TRICKSAND TRAPS

by Mike Morton

Some assembly language programming guidelines

THE ERA OF HIGH-LEVEL LANGUAGES has not madeassembly language coding a dead art, even on modernmicroprocessors designed for executing compiled high-level code. Although personal computers are approachingthe power of mainframes, the way to get the most out ofany processor is to know when to use assembly language.The popular Motorola MC68000 processor is a good ex-ample; it has a fairly regular instruction set and instruc-tions to support features of such languages as Pascal andC. Yet the instruction set is not perfectly orthogonal—wartsin the design and implementation make the architectureinteresting for hand-coded assembly programs.

The continuing usefulness of assembly language, evenon this processor, is apparent in recent industry products.The Macintosh ROM, for instance, is written entirely inassembly language, yielding considerable savings in mem-ory and speed.

In this article I'll survey some of the subtleties of the68000 to help you avoid its pitfalls and exploit its oddi-ties for better speed or memory use. I assume that youhave some experience using the 68000; if not, see thebibliography at the end of this article.

Traps for the Beginner

Most of the 68000's "traps" have a reason behind them;unintuitive aspects of the processor may actually be moreuseful, easier to implement, or correct in the view of the68000 designers.

One trap is memory alignment. Although the 68000 sup-ports byte, word, and long-word operations, word andlong-word operands must be aligned on word boundaries(even addresses). This is because memory is grouped in

words (2 bytes) and accessed via a 16-bit bus. Instructionsmust be word-aligned also, but assemblers and linkers nor-mally do this for you.

Another trap is stack direction. The 68000 stack "grows"toward low memory. This means that to allocate stackspace you should subtract from the stack pointer:SUB #size,SP. To deallocate space (or to discard previous-ly pushed values), add to the stack pointer. Equally con-fusing, when allocating local storage with the LINK instruc-tion, you must specify a negative displacement to be add-ed to the stack pointer.

The stack pointer (SP) must stay word-aligned. If youpush or pop a byte through the SP, the processor willmove a word to or from the stack, placing the relevantbyte in the high-order half of that word. Only the SPbehaves this way; other address registers act the way you'dexpect. This may seem an anomaly in an orthogonal ar-chitecture, but the SP must stay word-aligned so that wordsand long words are pushed to even addresses.

Shift and rotate instructions can operate on the byte,word, or long-word part of a data register, but shifts ofmemory operands can be only word size. Data registerscan be shifted by up to 32 bits if the shift count is specifiedin another register or by up to 8 bits if the shift count isa constant given in the instruction. Memory can be shiftedby only 1 bit.

The syntax of two-operand instructions may be reversedfrom other machines you're used to. For instance, the

{continued}Mike Morton received his B.A. in mathematics from Dartmouth Col-lege. He is currently a senior software engineer for lotus Develop-ment Corporation (161 First St., Cambridge, MA 02142).

SEPTEMBER 1986 -BYTE 163

TRICKS AND TRAPS

68000 instruction MOVE.W D0.D1 is equivalent to LOADD1.D0 on some other machines; that is, the contents ofthe DO register are moved into Dl. On the 68000, the des-tination register—the one affected by the instruction—isalways second. The operand order for CMP instructionsis also reversed from some older machines; therefore youwould read CMP D0.D1 as "compare Dl to DO." (Butbeware: Some assemblers reverse the order of theoperands from Motorola's standard; UNIX assemblersoften do this.)

The 68000 provides the comparison operations shownin table 1. This includes not only all six possible relation-ships between two numbers, but also whether numbersare compared as signed or unsigned quantities. (Compar-ing the word values 0006 and FFFE hexadecimal dependson how the numbers are interpreted. If they're signednumbers, 6 is greater than -2. But if they're addresses,they're unsigned, and 0006 is a lower address than FFFE.)

The confusing thing is that the expected unsigned equiv-alents of BLT and BGE are not BHS (branch on higheror same) and BLO (branch on lower). Instead, Motorolauses BCS and BCC, respectively. The processor is perfect-ly orthogonal, providing for all types of comparisons. Butthe mnemonics are asymmetrical on the unsigned side(unless you use a nonstandard assembler or define yourown macros).

(The distinction between signed and unsigned com-parisons comes up rarely, since they are the same unlessone of the values involved has the high-order bit |the signbit| set. However, when the distinction is significant, it canlead to trouble. An operating system's disk allocator maysort disk blocks using a BGT instruction. After some years,a site tries to configure a system with more than 231 bytesof disk storage. Everything grinds to a halt because BGTcompares 80000010 hexadecimal to 7FFFFFF0 hexadeci-mal and incorrectly finds the latter address to be greater.A BHI instruction would have compared and sorted theaddresses correctly.)

A note on using the condition codes: After a TST in-struction, the overflow (V) condition code is cleared. Thismeans that after TST, BLT is equivalent to BMI, and BGEis the same as BPL. Stylistically, BMI and BPL make more

Table 1: This table shows which branch instructions will

result in a branch taken when testing for a given relation-

ship of Dl to DO after a

CMP D0.D1 instruction.

Relationship

Signed

Unsigned

D1 < DO

BLT

BCS (branch on Carry Set)

D1 <= DO

BLE

BLS

D1 = DO

BEQ

BEQ

D1 * DO

BNE

BNE

D1 > DO

BGT

BHI

D1 > = DO

BGE

BCC (branch on Carry Clear)

sense after a TST unless the value being tested is the dif-ference of two other values.

Traps for Experts

Some quirks of the 68000 are less intuitive and regularlycatch seasoned programmers. Some of these aspects ofthe implementation suggest design difficulties and trade-offs in the processor; others reflect the designers' ideason what constitutes good programming.

Addresses and data are different. Most assemblersquietly assemble MOVE #0,An as a MOVEA (move to anaddress register) instruction without nagging the program-mer about the distinction between MOVE and MOVEA.But the 68000 treats data and address values verydifferently.

Address operations (MOVEA, ADDA, etc.) are neverbyte-size.

Word values are sign-extended to 32 bits before beingused in address operations. Thus, ADDA.W D1.A2 extendsthe low-order word of Dl before adding it to A2. In the68000, there is no such thing as a 16-bit address, so aword-size value is converted to 32 bits before being usedin address operations.

Address operations never set condition codes; mostdata operations do. This is useful in subroutines that returninformation in the condition codes:

TST.W DO

MOVE.L(SP) + ,A0ADD.W #params,SP

JMP (A0)

Set condition codes to

return to caller.

Pop return address into A0.

Deallocate <params> bytes

of parameters.

Return with condition codes

still set.

(Note that the MOVE and ADD are translated into MOVEAand ADDA by the assembler.) The condition codes set bythe TSTW are unaffected by the remainder of the exitsequence.

Another trap concerns loop operations. A loop endingwith a DBcc instruction (such as DBEQ) loops until thecondition cc is true; this instruction can be thought of as"decrement and branch back if condition false." This isconfusing since, if you were to write out several instruc-tions to replace a DBEQ, they would contain a BNE tojump back to the top of the loop, not a BEQ.

If the condition being tested for is not detected (or ifyou're using DBRA), the loop will stop when the counterreaches - 1, not 0. If you want the loop always to be ex-ecuted once, you should enter it at the top with the countalready decremented by 1. For example, to search for thefirst null (zero) byte in a table of N bytes pointed to by Al:

MOVE.W #N-1, DOLOOP

TST.B (A1) +DBEQ DO,LOOP

Start the loop counterone too low.Come here to testanother byte.Is A1's byte zero?(Advance after testing)If not zero AND DO isstill > = 0, loop back.

(continued)

164 BYTE • SEPTEMBER 1986

"Turbo Pascal-is a very good system.

But don't makethe mistake of trying touse it for laige programs."

Niklaus Wirthas reported in Micro Cornucopia

August-September 1985

Hi!

wmm

mm

LOGITECH

MODULA-2/86

TRICKS AND TRAPS

This loop will execute at most N times. It corresponds toPascal's "repeat. . .until" construct. For the equivalent of"while. . .do," which doesn't necessarily enter the loop:

MOVE.W #N,D0

; Start the loop counter normally.

BRA LOOPSTART

; Don't fudge DO; jump to

; the loop end first.

LOOP

; This is the loop head.

TST.B(A1) +

; Is A1's byte zero?

; (Advance after testing)

LOOPSTART

; Enter here to check count

; before looping.

DBEQ DO.LOOP

; If not zero AND DO is

; still > = 0, loop back.

If you're using DBcc, don't forget to initialize the condi-tion codes so the DBcc doesn't fall through when youjump to it. In the code above, the MOVE.W #N, DO"primes" for the loop.

Also remember that the data register used to controlthe loop is decremented as a word quantity. If it's possi-ble to have more than 2'6 iterations, you have to nest twoDBcc loops. For example, to checksum a list of byteswhose length is specified in the long word DO:

MOVEQ #0, D3MOVE.W D0.D1MOVE.L, D0.D2SWAP D2BRA.S STARTLOOP: ADDB (A1) + ,D3START DBRA D1.LOOP

DBRA D2.LOOP

; Initialize checksum.; Low word of loop length in D1.; Get high word of loop length; in D2 to use for outer loop.; Enter at the end of the loop.; Add the next byte into sum.; Inner loop: Loop on low word ofDO.; Outer loop: Loop on high word.

Small adjustments to the stack pointer can be done withADDQ (or SUBQ) #n,SP, but these instructions canchange it by at most 8 bytes. The fastest way to changeit by more than 8 bytes is with LEA n(SP),SP.

The 68000 does not allow you to execute a MOVE in-struction with a destination relative to the program counter(PC). In the view of the 68000 designers, code should notpatch itself. If you must change a table in the middle ofcode, you must point to it with an instruction like LEATABLE(PC),An and then alter it through An. (Self-modifying code is especially bad for 68000 programs thatmay someday run on the 68020, because the 68020's in-struction cache normally assumes that code is pure.)

For no apparent reason, the CLR instruction alwaysreads from an operand before clearing it. But unlike BCLR,CLR doesn't set the condition codes. Never use CLR towrite a zero to a memory-mapped device address if thedevice will be affected by the read. The Sec instructionand MOVEs from the status register also read beforewriting but are less likely to cause problems.

Don't confuse the EXG and SWAP commands. EXG ex-changes the 3 2-bit contents of two registers. SWAP swapsthe 16-bit halves of a single data register.

When indexing into an array, remember to multiply theindex register by the "stride" (bytes per element) of thearray. For instance, if DO holds an index into an array oflong words pointed to by Al, you must multiply the in-

dex by 4 to convert from long words to bytes:

MULU #4,D0 ; Turn the array index into

; a byte offset.MOVE.L 0(A1,D0.L),D1 ; Pick up the long-word

; array element in D1.

The EOR instruction must have a data register for thesource, except for the immediate form of the instruction,EOR I.

Coding for Speed: Principles

The secret of efficient code on the 68000 can be describedusing one word: "registers." Suppose, for example, thatyou have two 32-bit variables. If you keep them in regis-ters, the time to add one to the other with ADDL D0.D1is 8 clock periods. If they're in memory pointed to by ad-dress registers, the time to add them with MOVE.L (A0),DOand ADD.L D0,(A1) is 32 clock periods, four times slower!The moral of the story is simple: Work hard to keep fre-quently used quantities in registers.

You can learn this important rule and others by study-ing instruction timing information (such as the tables inthe M68000 16/32-bit Microprocessor Programmer's ReferenceManual). Times are given in clock periods, which I'll callcycles: a 10-MHz processor executes 10 cycles per micro-second. In general, the tables give the base time for eachinstruction. Most base times must have additional timesadded in for the operands. For instance, the time to ex-ecute AND.W D0,(A1)+ is 8 cycles for a word-size AND-to-memory and 4 more cycles for the (A1)+ destinationoperand. (The source operand is "free" because it's aregister.) Thus, the entire instruction takes 12 cycles, or1.2 /xsec on a 10-MHz processor.

When you're trying to save a few cycles in a crucial loop,timing tables can be useful as more than just a reference.They provide a concise summary of the architecture—sortof a shopping list of the instructions available and the costof each. When you're trying to avoid preconceived no-tions of which instructions are suited to solving a problem,this summary can remind you of alternatives and en-courage lateral drift in your thinking.

Coding for Speed: Basic Rules

The MOVEQ, ADDQ, and SUBQ instructions are great.For instance, it's faster to zero all 32 bits of a data registerby using MOVEQ #0,Dn than it is to use CLR.L Dn.Remember that these instructions are limited to smallnumbers: MOVEQ can load values from -128 to 127 in-. to a data register; ADDQ (SUBQ) can add (subtract) onlyvalues from 1 to 8 to (from) its destination.

DBcc is especially efficient; use it whenever you can.(But beware the traps described above.)

Not all assemblers automatically produce "short"branches (branches with 8-bit displacements). Check theoutput of your assembler to see if it emits a short branchwhenever possible. If not, you may have to use BRA.S,BSR.S, and Bcc.S in your source code instead of BRA,BSR, and Bcc.

[continued]

166 BYTE ■ SEPTEMBER 1986

TAKE THE NEXTIOGICAI STEP

$

89 Price

Separate Compilation

Native Code Generation

Large Memory Model Support

Multitasking

Powerful Debugging Tools

Comprehensive Module

Library

■ Available for the PCand the VAX

Move up to LOGITECH

MODULA-2/86. Whetheryou're a single programmer or part of a teamwith LOGITECH MODULA-2/86 you'lldecrease your overall development cycleand produce more reliable, more main-tainable code. Build your program using ourextensive library modules, your ownmodules or those from a growing list ofavailable third-party software vendors. Ifyou're a Turbo Pascal user you can eventake your existing code along with you withthe help of our new Translator!

. NEW,

improved Turbo

Pascal to Modula-2

Translator!

Call for information about our VAX/VMSversion. Site License, University Discounts,Dealer & Distributor pricing.

To place an order call our specialtoll free number:

MODULA-2/86

800-231-7717

In California:

800-552-8885

Kia',',rw;nj:m'jinin

Turbo Pascal to .

Modula-2 Translator 49

Now it's even easier for Turbo users to stepup to Modula-2/86. Our improved Trans-lator changes your Turbo source code intoModula-2/86 source, solving all the incom-patibilities, and translating the functioncalls of Turbo into Modula-2/86 procedures.Implements the complete Turbo library!

LOGITECH MODULA-2/86 s89

Complete with Editor, RunTime System,Linker, 8087 Software Emulation, BinaryCoded Decimal (BCD) Module, Logitech'scomprehensive library, Utility to generatestandard .EXE files. AND more!

■ LOGITECH MODULA-2/86

with 8087 Support s129

■ LOGITECH MODULA 2/86 PLUS s189For machines with 512K of RAM. Takesadvantage of larger memory to increasecompilation speed by 50%.

Turbo Pascal is a registered trademark of BorlandInternational.

RUN TIME DEBUGGER s69

(Source level!)

The ultimate professional's tool! Displaysource code, data, procedure call chain andraw memory. Set break points, assign valuesto variables, pinpoint bugs in your source.

UTILITIES PACKAGE s49

Features a post-mortem debugger (PMD).If your program crashes at run time thePMD freezes the situation so you can pin-point, in the source, the cause of the errorand the status of the data. Also includes adisassembler, cross reference utility and ver-sion that allows conditional compilation.

LIBRARY SOURCES s99

Source code for our major library modulesis now available for customization or exem-plification.

WINDOW PACKAGE s49

Now you can build true windowing intoyour Modula-2 code. Powerful, though only15K in size. Features virtual screens, colorsupport, overlapping windows and a varietyof borders.

MAKE UTILITY s29

Automatically selects modules affected bycode changes to minimize recompilationand relinking. Even figures out dependen-cies for you!

CROSS RUN TIME DEBUGGER

AND ROM PACKAGE s199

Now available at an introductory price!

FYES

I want to move up toLOGITECH MODULA-2/86

"I

Here's the configuration I'd like:

□ Logitech Modula-2/86 S89

□ with 8087 support $129

□ Plus Package S189

□ Turbo to Modula Translator S49

□ RunTime Debugger $69

□ Utilities Package $49LJ Library Sources $99

□ Window Package $49

□ Make Utility $29

□ ROM Package $199

Total Enclosed S

□ Visa □ Mastercard □ Check Enclosed

Card Number Expiration Dj!l'

ffl LOGITECH

Logitech. Inc.

805 Veterans Blvd.

Redwood City. CA 94063

Telephone 415-365-9852

For European pricing please contact:

Logitech SA

Box 32. CH-1143

Apples. Switzerland

Telephone 41-21-774545

J

Inquiry 207

SEPTEMBER 1986 -BYTE 167

TRICKS AND TRAPS

Because a taken short branch is slower than an untakenone, try to avoid taking most branches. For instance, if youhave a loop searching for a null, the simple way to searchis with

LOOP

TST.B (A3) +BNE.S LOOP

Here to search for thenext null.

Check next byte; advancethe search pointer.Loop back if not found.

It takes only a bit more space to "unroll" one or moreiterations of the loop:

LOOP

Here to search for the

next null.

TST.B (A3)+

Check next byte; advance

the search pointer.

BEQ.S FOUND

If zero, exit the loop.

TSTB (A3)+

Not zero: check another

byte and advance.

BNE.S LOOP

If still not found,

loop back.

FOUND

Come here when A1 points

one past the null byte.

If the character tested generally isn't zero, the BEQ.Susually goes untaken and is faster. You can unroll anynumber of iterations, adding TST.B/BEQ.S pairs until theextra space consumed is no longer worth the diminish-ing increase in speed (or the branches become longbranches).

Addressing with (An) + is faster than with - (An). If youhave the choice of which direction to go in a search orother loop through memory, move upward. (Note that thisis not true for the destination operand of a MOVEinstruction.)

Because (An) addressing is faster than x(An), access tothe first element of a data structure is faster than to theothers. (This is also useful with Pascal records, C struc-tures, etc.)

The MOVEM instruction is a very efficient way to stackor unstack a large number of registers. But if you haveto push only two registers, or pop three, MOVEM is nofaster than moving them one at a time.

Don't assume that long operations are always slowerthan word-size ones. For instance, word address opera-tions can be slower than long ones because of the timeto sign-extend a word value.

As with other machines, never multiply or divide by apower of 2 when you can shift instead. Although shiftsare time-consuming, they're always faster than a multiplica-tion or division. So, you can use the ASL (arithmetic shiftleft) instruction to multiply by a power of 2 and use ASR(arithmetic shift right) to divide by a power of 2. (Be carefulhere—the right shift is not the same as a division if thecontents of the register are negative. For example, -1divided by 2 should be zero, but -1 shifted right by 1bit is -1, rounded incorrectly.) Don't forget that the multi-plication instructions produce a long-word result from aword operand; shifting doesn't.

To multiply by 2, add a register to itself instead of shift-

ing: ADD Dn.Dn. In fact, if you are multiplying a wordoperand by 4, you can do it faster with two ADD instruc-tions than with a single shift by 2 bits.

Similarly, in doing extended-precision arithmetic, youcan replace the common operation ROXL #1,Dn withADDX Dn,Dn and save 2 or 4 cycles, depending onwhether the operands are words or longs.

You can compute certain multiplications faster with shiftseven if they're not powers of 2. For instance, to multiplyDO by 17, add DO to 16 times DO:

MOVE D0.D1LSL #4,DOADD D1.D0

Copy DO to D1.Compute 16 x DO in DO.Add original value in tocompute 17xD0.

Computing products this way is still faster than the 40-pluscycles for a multiply instruction.

The cost of maintaining the stack can be lessened if argu-ments are deleted after the call by the caller, not the sub-routine. (Most C compilers use this stack protocol.) If thestack doesn't have to be cleaned up after every call, youcan allow debris from several calls in a row to accumulateas long as it's easy to keep track of how much there is.Typically, you can let it pile up until you reach a branch,then unstack it all with an ADDQ (or LEA if there's morethan 8 bytes to remove).

Finally, don't ignore the 68000's "higher-level" instruc-tions. Even at the assembler level, instructions such asPEA, LINK, UNLK, and CHK can be very useful.

Coding for Speed: Some Cookbook Examples

Here are a variety of things you can do to save time whenyou're scraping for cycles. Some are useful in many ap-plications; others are very specialized. The more obscureones are examples of the kinds of tricks that the 68000can do.

Remember that timings will not be the same on the68000's relatives (the 68008, 68010, 68020, etc.). If you'reworking on one of these processors, recompute the tim-ings or, when you're not sure which of two approachesis faster, measure the speed of both. Timings for the 68020will be especially hard to compute because of its sophis-ticated prefetch and instruction caching.

You should also know that not all computers run the pro-cessor at the advertised speed. For instance, the Macin-tosh's 68000 runs at 7.8 MHz, but it can't always operateat this speed because the screen is memory-mapped and"steals" some memory cycles. Thus, the effective speedof the Macintosh is about 6 MHz, but only memory cyclesare slowed down—CPU cycles are unaffected. So opera-tions done mostly within the CPU (such as multiply, divide,and long register shifts) run at nearly full speed. The lessonin all this is that timings are hard to compute or intuit:you may want to time various pieces of code for yourselfto see which is faster.

It is said that one doesn't really know how to use a tooluntil one knows three ways to abuse it. Here are someof my favorite ways to abuse the 68000.

(continued)

168 BYTE • SEPTEMBER 1986

AMERICAS NEXTBM)RTTF MOUSE

The bestprice: $99

THE BEST HARDWARE:

■ PC/XT/AT compatible through yourserial port

■ NO pad. NO power supply

■ High (200 DPI) resolution

■ Tactile feedback switches

11!

NEW Reflex& LOGICADD

Packages!

-:

THE BESTSOFTWARE:

LOGIMOUSE withPlus Package Software

$119

LOGIMOUSFC7

LOGIPAINT SET-LOGIMOUSE

& PC Paintbrush 3.0 ,$25$" $169

LOGIMOUSE plus PC Paintbrush 3.0 is the mostadvanced paint set available for the PC. Useit for designing a logoor painting a picture. Youwon't believe its powerwith either freehanddrawing or graphics!

■ Driver 3.0: makes LOGIMOUSE run with all mouse basedsoftware, including Microsoft.

■ LOGIMENU: a programmable Pop-Up Menu System thatcustomizes LOGIMOUSE for each of your keyboard basedapplications.

I CLICK: a new concept in mouse software! It resides in memory,detects what application you're running and automaticallysets the mouse to your predefined setting.

■ POINT-AND-CLICK SHELL for Lotus 1-2-3: the only mouseinterface for 1-2-3 that goes beyond keyboard emulation. Withcontext sensitive pop-up menus and an independent mousecursor that changes shape and meaning in different areas of the1-2-3 screen. Makes it faster and easier to select a cell, invoke

a command or scroll.

■ POINT EDITOR: a mouse based program editor featuringpop-up menus and overlapping, color windows for faster, easierfile editing. Use it instead of EDLIN or any other ASCII fileeditor.

THE BEST DEALS:

To place a credit card ordercall our special toll-free number:

Call toll-freein California:

800-231-7717 800-552-8885

| Introductory Price! fiTTi^ €100

LOGIMOUSE with Plus Pkg. & Reflex JI^TOO Myy

A winning combination! LOGIMOUSE enhances the powerof Reflex, Borland's amazing database management system,to probe relationships in your data and display them in graphicform.

GES3 Introductory Price!

LOGICADD-LOGIMOUSE with Plus ^

Pkg. & Generic CADD 2.0 with Dot Plot 3244 $189

Everything you need to turn your PC into a CAD workstation.Generic CADD has the features and performance of high-priced CAD, DotPlot turns your dot matrix printer into aplotter,and LOGIMOUSE is the ultimate input device.

yri ri I I want America's next favorite mouse!X -L_>kJ . Please send me:

□ LOGIMOUSE with Driver 3.0 $99

□ LOGIMOUSEwith Plus Software $119

□ Plus Package Software $ 29

□ LOGIMOUSE with Reflex $199

□ LOGICADD

□ LOGIPAINT $169

For your computer model:

30-Day Money-BackGuarantee/New 3-YearWarranty

Add $6.50 for shipping &$189 handliny.Calif.residentsaddippilcable sales tax.

□ VISA □ MASTERCARD □ CHECK ENCLOSED

Card Number Expiration DawSIGNATURE

NAME.

ADDRESS.

CITY. STATE.ZIP

PHONE.

DEALER INQUIRIES WELCOME

LOGITECH

United Stales:

LOGITECH, Inc.

805 Veterans Blvd.

Redwood City. CA 94063

Tel: 415-365-9852

/// Europe:LOGITECH SACH-1143 Apples

SwitzerlandTel: 41-21-774545

LOG I MOUSE is a registered trade

ark of LOGITECH. Lotus and I-2-.1 are trademarks of Lotus Development Corp. Reflex itGeneric CADD is a trademark of Generic Software. Inc.

i trademark of Borland-Analytica.

Inquiry 208

SEPTEMBER 1986 -BYTE 169

TRICKS AND TRAPS

Fast subroutine calls. Although JSR and RTS providea simple subroutine call-and-return, the cost of pushingthe return address on the stack is significant. For a veryfrequently called subroutine, you can change the call tostore the return in an address register as in

LEA RETURN,AOJMP routineRETURN

Return address goes in AO.Jump to the subroutine.AO points to this spot.

Then to return, just JMP (AO). By avoiding use of memory,this saves 8 cycles. (Note that the LEA instruction refer-ences the label RETURN with PC-relative addressing.)Also, if you end a subroutine with

JSR lastsubRTS

Call one last subroutineand return.

and lastsub doesn't alter the stack, you can save a whop-ping 24 cycles by using "tail recursion" to replace the twoinstructions with a single

JMP lastsub

"Call" lastsub andit'll return for us.

Finally, if you call a subroutine and then branch some-where else, you can avoid extra jumping around. Forinstance.

JSR subJMP next

; Make a call

; and go somewhere else.

can be made slightly faster with

PEA nextJMP sub

Push a fake return address

and "call."

sub will RTS to next for us.

(All of the above work for BSR and BRA as well as JSRand JMP.)

Quick test for zero. If you want to test whether a registeris zero and don't mind trashing the value, use DBRA

Dn.NOTZERO instead of combining TST.W Dn with BNENOTZERO.

If you want to do an A/-way branch depending on a value,you'll usually want to index into a jump table and transferto the appropriate address. A "case" statement is typicallyimplemented this way. But if you have a very small numberof values and want to handle the lower values more quick-ly, a series of DBRAs can do this conveniently. For exam-ple, if you want to branch based on a register that con-tains 0, 1, or 2,

DBRA D0.NOT0 ;Decrement; jump if it wasn't; zero.

< handle zero case>

NOT0 ; Come here if not zero.

; DO has been decremented.DBRA D0.NOT1 ; Decrement; jump if original

; DO wasn't one.

< handle one case>

NOT1 ; Not one. DO has been

; decremented twice.DBRA D0.ERROR ; Decrement; if not originally; two, error.

< handle two case>

Checking for membership in a small set. If you wantto see if a number is in a set of several numbers, you cancreate a bit mask corresponding to the set. For instance,if the set is {0,1,3,5}, the mask has those bits set and thebit map is 00101011 (2B hexadecimal). You can test formembership in this set with

BTST D0,#$2B

Is DO in {0,1,3,5}?

If your set is composed of more than eight elements youhave to move the mask into a data register first.

Quick comparisons. To check the value of a data regis-ter with CMP.L #xxx,Dn takes 14 cycles. If the value be-

[continued]

GREATER PERFORMANCE... AT HALF THE COST!

DATA I/O 29B™COMPATIBILITY-UNDER $1,500

Programming A World of TechnologiesUNIVERSAL, GANG & SET PROGRAMMING FOR LAB AND LIGHT PRODUCTION

BYTEK ALWAYS SETTING HIGHER STANDARDS

m Supports MOS/CMOS EPROM/EEPROMs including Megabitdevices. Options: Bipolar PROMs, Logic Array Devices, 40pin Micro Chips, and GangCel

■ Memory capacity to 1Mbyte, 64 bit wide programming, device

type and parameters stored in non-volatile memory

■ 3-Way device type selection: manually, auto ID or from menu

■ 2-Way command execution: Function keys or menu

■ Data I/O PROMIinkTM and BYTEK PROMsoft™ compatible

21 Day No ObligationTrial Period

$1,495

25 Key-32 Character LCD display - Memory expandable to 1 MegabyteRS232 PC Interface, Parallel Printer Port

Data I/O, PROMIInk are trademarks of Data I/O, Inc.MADE IN THE U.S.A.

COMPLETE

Model:

S125-GL

ORDER TODAY .

800-523-1565 / In Fla. - 1-305-994-3520

Telex: 4998369 BYTEK

m

g^l Mastercard or Visa Welcome

0*Jui iLaLlJ lnstrument Systems Division • 1021 South Rogers Circle • Boca Raton,Florida 33431

170 BYTE • SEPTEMBER 1986

Inquiry 57

PC-DESK.Thc Ultimate in Desk-Top Management

Now, finally at your com-mand. A completely integratedword processor, calendar/reminder, name/address/phonedatabase and directory. Letter/label/report printer, mailmerge,invoice system and printingcalculator.

PC-Desk does just abouteverything you need. It's apowerful and easy-to-use toolthat reduces your work andmakes your business life easier.And, it does more than hun-dreds of higher-pricedprograms.

The Most Powerful Feature

PC-Desk automatically pre-pares your letters, invoices andmemos.

It's fast and easy to sendindividually typed, personalizedletters, either singly or by thehundreds. Just select the namesyou want. Tell PC-Desk whichletter to send, and it does therest.

It puts in the special greet-ing you use for each person. Itadds the variable informationyou want. . .the shipment date,company or product name, or

Look At Every thing You Get!

Easy Instructions

Step by step directions on the screen.You'll always know what codes to use.Even if you're new to computers, you'll beefficient right away.

Calendar/Reminder

24 reminders per day. Reminder days arehighlighted. Put the cursor on any day. . .all your reminders pop up. See a full monthat a time. Flick back and forth betweenmonths. Print reminders with a single key-stroke. You're organized and you'll stayorganized.

To Do List

Tracks up to 20 projects. You'll never for-get what you need to do.

Word Processor

Full-featured. . .why use any other wordprocessor? PC-Desk gives you professional-looking documents. . .with bold, underlin-ing, centering, and justification. Wordwrap, block move, search, margin settings.And no waiting for screens to come upwith Turboscreen.

Personal Address Book

Automatically printed in a pocket-sized for-mat. Cross-indexed by company name.Breast-pocket holder free when you orderPC-Desk.

Database

Outstanding organization and flexibility.Easy to access and maintain. Name, address,phone number (work and home), saluta-tion, title, date, variables for automaticprinting, comments, and more. Sort on zip,or alphabetically by name or company.Search, scroll through, change or delete.

Select names for group mailings. Make noteson client contact. Print your rolodex, enve-lopes, (with return address too), letterheads,invoices, labels, entire name and addressfile.

Mail Merge

Fully integrated with database. Letters withup to four variables.

Calculator

Print your calculations. Pops up into wordprocessor. Hex, binary, and octal forprogrammers.

Memory Partitioning

Lets you flip back and forth between PC-Desk and other programs. Cut and paste.

Logs

Client billing, computer use, telephone,and expense logs. Great for tax records!Print monthly statements with total timeand expenses. Edit your logs. With auto-dialer calls are logged automatically.

Auto-Dial

Save time. Auto-dial any phone number inyour database. Choose work or homenumber.

Encrypt

Protect your files from prying eyes.

DOS Functions

Copy, delete, print, view, renamefiies easily.

On-Screen Clock

Manual

Full instructions.

whatever you choose. All at thetouch of a button.

PC-Desk is simply spectac-ular. Users say, "This is the waysoftware ought to be!" Try it for60 days. If you're not completelysatisfied, return it for a fullrefund.Free Updates, Free Support.

That's right. Free updates.(Remember, if you already ownPC-Desk, send for your free up-date to version 6.5.)

And, if you ever need help,just call us. We'll talk youthrough it.

ff —— ■■■■!

Not CopyProtected

SideKick Is a registered trademark of Borland International. Inc. IBM Is a registered trademark of International Business Machines Corp.

PC-DESKSIMPLY THE BEST.

To order, or for more information:Call Toll Free 1-800-A-PC-DESK

YES! Rush me the best—PC-Desk.60-Day Money-Back Guarantee.

• SPECIAL OFFER *

Only $79

(plus $5- 00 Shipping & Handling).

You save $46 on the regular S125 price.

Offer Expires in 30 Days

D Check D Money order□ MasterCard □ Visa

Card*

Expiration date /

Name

Firm

Address

1

City

State/Zip .

Requirements. IBM-PC, AT, XT, or compat-ible. 128K for program, 272K for memorypartitioning, MS-DOS2.0. Modem requiredfor Auto-Dial only.

SEPTEMBER 1986 • BYTE 171

TRICKS AND TRAPS

ing tested for is small enough to fit in a MOVEQ, it'sshorter and faster to put the value in a temporary register:

MOVEQ #xxx,D0CMRL DO.Dn

Set up value to look forand do the comparison.

If the value xxx is between -8 and 8, and you don't mindaltering the data register, you can just use SUBQ #xxx,Dn(or ADDQ, as appropriate) instead of a CMP. Then youcan use a conditional branch just as you would after aCMP. This works for word or long-word comparisons.

Picking up an unaligned word. The straightforward ap-proach is to load 1 byte, shift it into position, and loadthe second byte. The faster way (28 cycles instead of 38)is to exploit the stack pointer's odd behavior when bytequantities are pushed on the stack:

MOVE.B (A0)+,-(SP)MOVE.W (SP)+,D0MOVE.B (A0),D0

First byte to high half ofnew word on stack.Pop that new word to DO.First byte in place.Second byte in place.

Clearing address registers. MOVE.L #0,An takes 12cycles, while SUB.L An.An takes only 8 and is shorter.(CLR doesn't work with address registers.)

Avoiding long shifts and rotates. The time the 68000takes to shift a register is proportional to the distance be-ing shifted: 2 additional cycles for every bit. Thus, neverrotate a long word more than 16 bits in either directionor a word more than 8 bits. (Remember that to shift bymore than 8 bits, you have to put the shift count into adata register. In the examples that follow, the bit countis not a constant: the value is bracketed to show this.)

ROL.L <16 + x>,Dn = ROR.L <16-x>,DnROL.W <8 + x>,Dn = ROR.W <8-x>,Dn

In shifting 16 bits or more, the first 16 bits of the shift canbe done with a SWAP to save 26 cycles in each of thesecases:

LSR.L <16 + x>,Dn =

CLR.W DnSWAP DnLSR.W <x>,Dn

Clear bits that swap upand LSR.L #16,Dn.Now finish the shift.

ASR.L <16 + x>,Dn =

SWAP DnEXT.L DnASRW <x>,

Dn

Slide down 16 bits.Sign-extend to a long word.Finish up, sign-extended.

LSL.L <16 + x>,Dn =LSL.W <x>DnSWAP DnCLR.W Dn

Shift x bits in low half.Shift 16 more bits.Throw away bottom half.

And some long-word operations of less than 16 bits canbe optimized with SWAP. Long shifts between 11 and 15bits can be speeded up with

LSL.L <x>,Dn =SWAP Dn

ROR.L <16-x>,DnAND.W #mask,Dn

Rotate left by 16 bits.Undo to x-bit left rotate.Remove bottom x bits.

LSR.L <x>,Dn =AND.W #mask,DnSWAP DnROL.L <16-x>,Dn

: Remove bottom x bits.; Rotate right by 16 bits.; Undo to x-bit right rotate.

Fast sign-extend. While there are instructions to sign-extend bytes into words or words into long words, whatif you have a signed 12-bit field (from unpacking a recordor reading a DAC)? The standard way to sign-extend thisto a full 16-bit word is with

LSL.W #16-12,DnASRW #16-12,Dn

Shift so 12-bit field is left-justified.Shift it back down sign-extended.

If you know that the bits outside the 12-bit field are zero,you can do this without shifting. In general, if you wantto sign-extend an N-bit field to 16 bits, define "mask" tobe -(2(N-1])-a mask with the bottom N+1 bits clear. Thenthe sign extension can be done using a temporary register:

MOVE.W #mask,D0ADD.W DO.Dn

EORW DO.Dn

Build mask with high N+1 bits set.

Negative: top bits=0.

Positive: top bits=1.

Flip so top bits are correct.

This is always at least as fast as the shifting method, whichgets slower as N increases. Sign-extending to a long wordis faster this way if N is 3 or more.

Loading large constants. To move certain values into theupper half of a data register, you might code MOVE.L#00xx0000,Dn. It's faster to replace this single instructionwith two:

MOVEQ #xx,DnSWAP Dn

Move value to lower halfand clear upper half.Swap—put things in position.

Clearing the upper half of a data register. Instead of do-ing this with AND.L #$FFFF,Dn, it's quicker to use

SWAP DnCLR.W DnSWAP Dn

Swap high and low halves.Clear high half while it's low.Put things back in place.

Conclusions

Esoteric coding techniques continue to be important inpushing processors to their limits. A machine such as68000, which is oriented toward executing compiled high-level languages, can still be appropriate for tight hand-crafted solutions. A programmer who needs the utmostin performance can exploit quirks in an instruction set togreat advantage. ■

BIBLIOGRAPHY

Harmon, Thomas L, and Barbara Lawson. The Motorola 68000

Microprocessor Family. Englewood Cliffs, NJ: Prentice-Hall, 1985.Kane, Gerry, Doug Hawkins, and Lance Leventhal. 68000 Assembly

language Programming. Berkeley. CA: Osbome/McGraw-Hill, 1981.Motorola Inc. M68000 16/32-bit Microprocessor Programmer's Reference

Manual. Englewood Cliffs. NJ: Prentice-Hall, 1984.Scanlon, Leo J. The 68000: Principles and Programming. Indianapolis.

IN: Howard W. Sams, 1981.Starnes, Thomas W. "Design Philosophy Behind Motorola's

MC68000." BYTE, April-June 1983.Williams, Steve. Programming the 68000. Berkeley, CA: Sybex, 1985.

172 BYTE • SEPTEMBER 1986

The most

significant

development in

monochrome graphics

since the

Hercules

Graphics Card.

Announcingthe Hercules Graphics Card Plus.

Four years ago, the Hercules™Graphics Card brought high resolu-tion monochrome graphics to theIBM8 PC for the first time. And revo-lutionized the world of personalcomputers.

Now, it's happening again.

Because now there's the HerculesGraphics Card Plus. A giant stepforward in technology that creates awhole new standard for graphicshardware and a world of potential forsoftware.

Three modes arebetter than two.Until now, graphics cards have had

only two modes to work with: textand graphics.

Text mode is very fast, but it'slimited to 256 pre-programmedcharacters.

Graphics mode, on the other hand,lets your software create as manycharacters as you want. But for textprocessing, graphics mode can beslow, painfully slow.

Enter a new, third mode.

Called RamFont:

Two years in development,RamFont gives you the best of bothworlds. It blends the blinding speed oftext with the flexibility of graphics.

The heart of the GraphicsCard Phis: the V112 microchip,Hercules' next generationvideo processor that makes theRamFont mode possible.

174 BVTE • SEPTEMBER 1986

Enough flexibility to blow thedoors off the 256-character limit oftext mode.

Because RamFont can handle anastonishing 3072 different charactersof various widths and heights.

Instead of 256 canned,unchangeable ones.

The futureaccording to RamFont.

With all these characters andfonts to work with, softwarewill never be the same again.

RamFont word processors,for example, will put italics,boldface, and scientificcharacters right on the screenwith standard text. So you cansee what you're about to print.

RamFont spreadsheets will usesmaller characters to display largeramounts of information. So you

can get the big picture.

RamFont integrated packageswill mix true text and graphics andturn your PC's screen into a fast-laneversion of the Macintosh's.™

And if youhappen to be one ofthose geniuses who'sfluent in five lan-guages, you'll beable to type a letterin all of them.

Simultaneously.

A Herculean feat.

How did we manageto combine the radi-cal new RamFont onthe same card withHercules' legendary sharp text andhigh resolution 720x348 graphics andstill be 100% compatible with theoriginal Hercules Graphics Card?It wasn't easy.

In fact, it took two years and allof the sophisticated CAX) tools at ourdisposal to create our exclusive V112microchip*

This totally new generation ofvideo processor is at the heart ofevery Hercules Graphics Card Plus.

It's also at the heart of a revolutionin software that's beginning right now.Turn the page and you'll see whatwe mean.

*Patent applied for.

The Hercules Printer Cablea $b0 value, free with eachGraphics Card Plus.

Another Herculesinnovation: the newLPT112. It's a parallelprinter port on a chip.

Inquiry 154 for End-Users. Inquiry 155 for DEALERS ONLY

SEPTEMBER 1986 -BYTE 175

Lotus 1-2-3 Rel. 2 in the RamFont mode of the Graphics Card Plus: fast scrolling,a 90-column by 38-row screen and a pop-up graphics window.

Software will never be the same again.

The trouble with most new hard-ware introductions is that there isn'tany software available to introducethem to.

Not so with the new HerculesGraphics Card Plus.

It runs everything the originalHercules Graphics Card runs.

Better yet, it comes completewith the software you need to startusing the revolutionary new RamFontmode right now with some of theworld's favorite programs.

Lotus blossoms.

Of course, if you want to talk aboutthe world's favorite programs, youhave to start with Lotus® l-2-3fYou won't recognize Release 2.

Because now you can put nearly twiceas much information on your screen,scrolling right and left and up anddown at speeds you'll remember nos-talgically from the days of Version 1A.

Another thing you won't recognizeis that cute little graphics window.You can thank RamFont for that.

Now that RamFont is with us,you can pop up a graphics window anytime you're in the mood and still keepyour 1-2-3 spreadsheet in thebackground.

And you can do the same withSymphony,™ of course.

Or, if your tastes tend towardAshton-Tate®'s Framework™ II, you'llbe pleased to hear that you can really

176 BYTE • SEPTEMBER 1986

RAMFONT

T«P,t jtote »iXX veXea pe nye: o«jir i

The Ranfoat1" note of the Hercules Graphics Card ris a versatile and powerful new nods. Ths G6112 provide*facilities far software to Basil? aco3jplish in "what used to require a great deal of effort in £._,.

a fen «xspt&s of fonts created for Rsfont node.hall ':■'.: \.- ?v .-.:>," -'■-_

<"ROM HERCULES

J.txt iwlx wUt rjwji Sw jia .tcvu i^am...

flll Capillar U»er«

HmxuIm Computer TechnologyMorale. Houni" — Graphic Plm

' ncu/M Computer Technology is prVlllm toemrjreductllne, Vrems, Mv mmtmulms ffcmoEArow firM *// »Mm «M< supported' m IksMhmm. Qrsmhlcs Plus tl„ mklok si lams Up to 317! usterm. In this new mode, mnstItshmi M graphics moos esn rIts st—i end simplicity of ten

The Graphics Card Plus in RamFont modeshowing multiple fonts created using FontMan? aHercules program that comes free with each Card.

Ashton-Tate's Framework II with italics andboldface and speed in the RamFont mode of thenew Hercules Graphics Card Plus.

The programmable RamFont is so flexible,Symphony can mix true text and graphics.

tla la •■ example of the origin*! version of Microsoftrd- All off the handling off text In done In graphics ModeAs you ess see. the character set la Identical to the9x14 character set. Because the software operatgraphic* Mods, there are soste Interesting featu

Like It*lies, no frohlem stteinff exactly uhai's kappenln$

Ism.

tfcer attribute that Is handled i

Graphics moic U very useful for displaying characters acharacter attributes that cannot be disul

.soda. The problem ulth graphics node t

tots to the bottom of the display area and the progr*...- ..to scroll the screen. As you are about to see, a graphic

ery Help Insert Juup Library

Option Prl.it Halt 1

op lace

:;;

arch Transfer Undo Ulndow

Microsoft Word: TOTflU.POC

■•loot option or typo cooo.n. lottor'•to 1 (pi

Microsoft Word in RamFont mode: italics, boldfaceand small caps—plus speed and lots of it, at last.

burn rubber with its word processor.

The revealed Word.

Speaking of word processors, remem-ber a couple of pages ago how we saidthey would be forever changed? Well,the change has already begun.

For example, the HerculesGraphics Card Plus with RamFontmakes Microsoft8 Word a whole newprogram.

Suddenly the italics, boldface,superscripts and subscripts scrollsuperfast. Which means you don'thave to twiddle your thumbs waitingfor the screen to catch up with yourfingers.

More to come.

As time goes by, more and moremajor programs will take advantage

of the extraordinary capabilities ofRamFont.

Which gives you two choices.

You can buy a Hercules GraphicsCard Plus and look forward to gettingyour socks knocked off.

Or you can buy another card andwatch while technology leaves youand your socks behind.

lb help you make up your mind,we've prepared a little surprise foryou on the next page.

Just make sure you're sitting down.

HERCULES

Plus

Inquiry 156 for End-Users. Inquiry 157 for DEALERS ONLY.

SEPTEMBER 1986 'BYTE 177

Shocked?

We thought you'd be.

Imagine, the new Hercules Graphics Card Plus withthe power of RamFont plus everything that made theoriginal Hercules Graphics Card the monochrome standard.

At about half the old price.

Now that's progress.

Call 1-800-532-0600 ext. 202 (in Canada call 1-800-323-0601ext. 200) for the name of an Authorized Hercules Dealer nearyou and well rush you a free info kit.

Hercules.

WfeVe strong on graphics.

Address: 2550 Ninth St., Berkeley, CA 94710 Ph: 415 540-6000 Telex: 754063Trademarks/Owners: IBM/IBM; Macintosh/Apple; Lotus, 1-2-3, Symphony/Lotus; Microsoft/Microsoft; Framework II/Ashton-Tate; Hercules, RamFont, FontMan/Hercules.

178 BYTE • SEPTEMBER 1986

Inquiry 158 for End-Users. Inquiry 159 for DEALERS ONLY.

6-8000 MACHINES

UNIX ANDTHE MC68000

by Andrew L. Rood, Robert C Cline, and Jon A. Brewster

A software perspective on the MC68000 CPUarchitecture and UNIX compatibility

THE MOTOROLA MC68000 CPUarchitecture is well suited to UNIXimplementation; its linear, 32-bitaddressing simplifies the system pro-grammer's task by allowing direct ac-cess to the entire memory addressspace at all times. The 68000's dual-state architecture also maps conve-niently into the UNIX user and kernelmodes. The CPU TRAP instructionprovides a disciplined way to movefrom user to supervisor state duringa kernel call, and the RTE (returnfrom exception) instruction simplifiesthe return from supervisor to userstate.

The MC68000 architecture providesa powerful yet simple interrupt orga-nization that includes seven levels ofinterrupt priority. The multiple priori-ty levels are used in UNIX implemen-tations to help organize the kerneldevice-driver code in an environmentcomprised of high-speed massstorage devices and low-speed userI/O devices (terminals).

I/O devices are used in a memory-mapped manner rather than having aset of I/O-specific instructions. Thisallows the UNIX implementer to writedevice drivers in a high-level language,manipulating I/O devices as though

they were memory-resident datastructures.

MC68000 ArchitectureOverview

In this article, we use the program-mer's model rather than the hardwareimplementation when discussing theMC68000 CPU architecture. TheMC68000 is a general-register pro-cessor; the CPU incorporates a num-ber of internal registers that can beloaded from main memory, manipu-lated, and stored in main memory.This is different from a single-accumu-lator CPU such as the Intel 80286,where most operations happen in oneregister (the accumulator), or a stack-oriented machine such as the Hewlett-Packard 3000, where all operationsoccur on the stack. (See figure 1 fora description of the registers.)

Actually, the program counter, stackpointers, and status registers are notconsidered general registers. The re-maining registers are broken into twotypes, address registers and data reg-isters. Each type has a set of dedi-cated instructions that enrich itsgeneral capability. For example, dataregisters can handle byte (8-bit), word(16-bit), and long word (32-bit) data.

The address registers can be used assoftware stack pointers and are in-tended for address calculations.

There are two distinct CPU stackregisters (see figure 1), one for eachstate, and a small set of privileged in-structions whose operation is state-dependent. If a user program at-tempts to execute a privileged instruc-tion, a trap will occur so that the

(continued)

Andrew L. Rood received a B.S. in mathe-matics from Stanford University and an M.S.in computer science from Oregon StateUniversity. He is a Software Research andDevelopment Project Manager at Hewlett-Packard's Corvallis Workstation Operation.

Robert C. Cline earned a B.S. in mathe-matics from the University of Massachusettsand an M.S. in computer science from IndianaUniversity. He is a Software Research andDevelopment Engineer at Hewlett-Packard'sCorvallis Workstation Operation.

}on A. Brewster, who holds a B.S.E.E.degree from Oregon State University, is a soft-ware Research and Development Manager atHewlett-Packard's Corvallis WorkstationOperation.

The authors can be contacted at Hewlett-Packard, Corvallis Workstation Operation,1000 Northeast Circle Blvd., Corvallis, OR97330.

SEPTEMBER 1986 • BYTE 179

UNIX AND THE MC68000

kernel can arbitrate the violation. TheCPU architecture provides vectoredinterrupts and seven levels of inter-rupt priority. (Note that access to theinterrupt-level mask is a privilegedfacility.) The MC68000 architectureprovides no I/O instructions. I/O ispresumed to be performed in a mem-ory-mapped manner using the normalLOAD and STORE instructions.

A Quick UNIX Summary

The UNIX system is a multitaskingoperating system designed for soft-ware development. It has becomepopular because of its simplicity ofdesign and the ease with which it canbe ported to a variety of machine ar-chitectures. The simplicity and por-tability are due mostly to the fact that90 percent of the system's code iswritten in the high-level language C.

UNIX is a process-oriented system.The management of processes in theUNIX system is fairly simple. Each run-nable process (program) is placed ina list. These processes are ordered bya priority system. Each process sharesthe CPU via a time-slicing, round-robin, scheduling algorithm where theprocess with the highest priority getsto use the CPU first. The time slicingis normally governed by a periodic in-terrupt that occurs each time a systemclock ticks.

The UNIX system is oriented aroundtwo states of operation: operating sys-tem, or kernel, state, and user state.

All driver activity, process manage-ment activity, and low-level file man-agement activity occur in the kernelstate. Processes normally run in theuser state. Each time a kernel intrin-sic (operating system request) is calledby a process, a state transitionchanges the user state to the kernelstate. When the intrinsic has finished,the state is changed back to the userstate. This provides some insulationof user processes from the systeminternals.

The memory management primi-tives in the UNIX system make no as-sumptions about the sophistication ofmemory management hardware avail-able to them. UNIX systems havebeen implemented with no memorymanagement and with sophisticated,paged, segmented systems. Even amemory protection scheme can bedispensed with if the system being de-signed is to be just an applicationsengine.

Due to the multiprocessing natureof a UNIX operating system, somesort of memory protection is recom-mended if you intend to do softwaredevelopment on the machine. This isto prevent experimental softwarefrom writing over memory occupiedby its neighboring processes anddestroying them. It is entirely up tothe implementer to say how muchmemory management power is re-quired. Such a decision boils down tothe trade-off between price, perfor-

31

■ 14 15 8 7 C

DO

Data registers

D7A0

Address registers

A6

User stack pointer A7Supervisor stack pointer A7Status register

Supervisor status

|

Figure 1: The MC68000 CPU register model.

mance, and design schedule.

The I/O system of UNIX is designedaround two generic device models:the block device and the characterdevice. Block devices are those, suchas disk and tape devices, that treatdata in blocks. Character devices arethose, such as data terminals, thathandle data one character at a time.Strict conventions exist in the systemas to how devices of each type are tobe accessed. Such a well-defined in-terface makes driver writing easier.Because driver writing makes up thebulk of the work for most operatingsystem ports, the device model of theUNIX operating system makes portingless trying than with many other lessorganized systems.

Linear Address Space

The MC68000 family of processorshas a large linear address space inwhich each memory address is 32 bitslong. This allows up to 4 gigabytes ofmemory to be directly addressed.Since only 24 address lines arebrought out of the MC68000 andMC68010 processors, only 16 mega-bytes are accessible in thosemembers of the family. (The MC68020presents all 32 bits of address.) Thislinear addressing scheme sharplycontrasts with segmented addressingschemes, which have a small local ad-dress range and a way to relocate thelocal address range within a largerglobal addressing range.

Linear addressing may be the singlemost important feature of theMC68000 processor family. It greatlysimplifies the task of implementing anoperating system and makes large,complex working sets of segmentpointers for managing process imagesunnecessary. (It is also the single big-gest difference between the MC68000and the Intel 80286 CPUs.)

Theoretically, a system with the ad-dress reach of a segmented architec-ture is as powerful as the MC68000with its large linear reach. However,it is easier for programmers to use thelinear addressing scheme (a program-mer in this context is an assembly lan-guage programmer or a compilerwriter).

The reasons to write in assembly

(continued)

180 BYTE • SEPTEMBER 1986

Put RUN/CRM in your PC todayand run 50,000 programs thatyou couldn't run yesterday!

BDWCPM V-20/30 CP/M Emulator

RUN/CPM is a revolutionary new product which combinessoftware and hardware to allow your PC to run 1,000s of pro-grams written lor the CP/M80 operafing system. For years,popular 8 bit computers such as "Kaypro", "Osborne", and"Morrow" have relied on this vast library of high quality, in-expensive software, which can now be accessed by your PC.A simple replacement ol your PC's 8088 ormicroprocessor with a dual 8/16 bit N.E.C. V-20 or V-30microprocessor creates a system capable of running bothCP/M80. and MS-DOS/PC-DOS soltware. In addition to ad-ding 8 oil CP/M compatibility, your PC's overall performancewill improve by up to 30% as a result of the speedupcharacteristics of the V-20 and V-30 microprocessors. Runn-ing CP/M software directly from CP/M disks is easy thanksto RUN/CPM's disk emulation feature, which will allow yourPC's floppy drives to directly READ, WRITE, and FORMATover 175 diiterent CP/M disk formats! You will also be ableto run CP/M programs in lull color, Irom a hard disk or RAMdisk, aid you can even run MS-DOS background programssuch as Borland's "Sidekick" on top of CP/M programs!.Add pop-up windows, terminal emulation, and help screensand it is easy to see why RUN/CPM is fast becoming the de-facto standard in CP/M emulation software.

READ/CPM CP/M Disk Emulation

READ/CPM adds CP/M disk compatibility to your PC, XT, orAT. Now your PC can directly READ, WRITE, and FORMATover 175 different CP/M disks using DOS commands such as"COPY," "TYPE," "DIR" etc. READ/CPM supports a varie-ty of disk drives including 5V*", 3Vi", and with the properdisk controller even supports 8" disk drives. READ/CPM isthe solution to your disk compatibility problems.

■ rt^. 'V>h

RunCP/NTZ80forthe incredible price of

95

The RUN/CPM Z-80 co-processor gives youall of the incredible features of RUN/CPM,plus the advantage of the full Z-80 instructionset at a price you can afford. Never before hasit been easier to add Z-80 compatibility to yourPC, XT, or AT. The RUN/CPM Z80 co-processor board comes complete with 64K ofmemory, a 5Mhz clock, and of course the in-credible RUN/CPM emulation software. Plugthis card into one of your PC's slots and withinminutes you will be running the most powerfulCP/M software available, including the mostpopular assemblers, compilers, debuggers,and wide variety of application programs suchas word processors and spreadsheets. OurISIS-II emulation option will even allow you torun "Intel" development languages on yourPC, or AT. If you want to step up to theultimate in high speed Z80 processing, thencheck out our RUN/CPM Z80-H full size co-processor available for only $499.95. Runningin excess of 9mhz with 128 K memory onboard, this co-processor virtually blows awaythe competition! Both the RUN/CPM Z80 &Z80-H co-processors come with theRUN/CPM emulatorsoftware and are backedby our 30 daymoney back guarantee.

"It's an excellentprogram backed bya knowledgeablecompany."

ROBERTATHEYMicro Times

". . . the mostpowerful of all theemulators reviewed."

TED DRUDEComputer Shopper

I WANT TO ORDER!

To order by phone,or for a dealer nearest you,

CALL (800) 637-7226

Technical Into call (305) 823-8088

Copies Product Price Total

RUN/CPM requires V-20/30 $ 99.95 ,

RUN/CPM Z80 (Board 5mh2) S199.95

RUN/CPM 28QH (Board Gmfiz) $499.95

READ/CPM $ 49.95

. V-20 8mhz • Replaces 80BB up 5 24.95

to 8 Mhz . V-?0 5mlu - Replaces 8088 up $14.95

(0 5 Mhz V-30 BmtQ ■ Replaces 8086 up $ 29.95

to 8 Mhz V-30 lOmhz-Repljces 8086 up $49.95

lo 1C Mhz (NEW) . MICRUNaO(UDI) requires V-20/30 $450.00

MICRUNBO 5 MHZ ZBO Board $595 00

MICRUNBO 9 MHZ Z80 Board $995.00

MICRUNB6 (UDI) $450.00

Add $5.00 shipping charge per order except (or V-20/30chips which include shipping. International ordersadd $10.00

Payment - VISA MC MONEY ORDER COO ■ Add S3 Dollars

I

Card N | |

i i i i i i

i I i i i i i i i i

raty

Zip

Tel.

Statu

/

30 DAY MONEY BACK GUARANTEE ON

ALL PRODUCTS. SOFTWARE IS NOT

COPY PROTECTED.

Requires V-20 or V-30 microprocessor

-Xgi

RUN/CPM is a registered trademark of Micro Interfaces Corporation; Sidekick is a registered trademark of Borland international; Kaypro is a registered trademark of the Kaypro Corporation; Intel is a registered trademark ol the IntelCorporation; CP/M is a registered trademark of Digital Research; Z80 is a registered trademark of the Zilog Corporation; ISIS-II & ISIS-III are registered trademarks of the Intel Corporation.

RUN INTEL SOFTWARE ON IBM PC's

Transform an IBM PC, XT, AT, or compatible into a totally integrated Intel Micro Development System, capable of runnings bit ISIS-II, and 16 bit ISIS-II (UDI) software whileremaining 100% MS-DOS compatible. MICRUN 80 and MICRUN 86 are Universal Development Interfaces which will allow you to increase your development capabilities withfaster, more reliable and affordable PC based work stations. TheMICRUNSO (UDI) utilizes the N.E.C. V-20/30 microprocessor to execute 8 bit Intel software on a PC, or XT, 2to 3 times faster then an Intel MDS! For ultra fast execution speed, our Z80 co-processor version of MICRUN 80 runs in excess of 9 Mhz and is PC "AT" compatible. TheMICRUN86 (UDI) is the perfect solution for running 16 bit ISIS-III software on PC's or XT's, and AT's and does not require any additional hardware. Both MICRUN80, andMICRUN86come complete with a full featured communication program for transferring Intel software to your PC or choose our 8" compatibility option, which will allow you toconnect an 8" disk drive to your PC and directly access single density 8" Intel format disks. Micro Interfaces Corporation has brought the power of Intel development to thePC, and in doing so provided you with an affordable alternative to the high cost of Intel development. To order, or obtain more information call the toll free number listed aboveor refer to the order coupon.

Inquiry 229 for RUN/CPM. Inquiry 230 for Intel on PCs.

SEPTEMBER 1986 -BYTE 181

UNIX AND THE MC68000

language are varied, but it oftencomes down to speed, space optimi-zation, and minimal complexity. Keep-ing the compiler writer's job easy haspaid off in two ways: first, high-qualitycompilers were available early in theMC68000 life cycle; second, the com-pilers have been of high enough quali-ty to reduce the amount of assemblylanguage programming.

One drawback of linear addressingis that the code density of the actualmachine instructions may suffer fromthe presence of many long addresses(the top byte of which is nearly always0). This problem is alleviated some-what by short (16-bit) relative address-ing modes. However, UNIX implemen-tations prefer separate instruction anddata areas, and, consequently, therelative addressing modes are usedinfrequently.

Address space management be-comes easy with a large, linear ad-dress space. The compiler needs tobe concerned with only three spaces:code, data, and stack. Also, the oper-ating system can quickly allocate anddeallocate any number of easily ac-cessible memory fragments. Verylarge processes such as those for ex-pert systems can be designed easilybecause you don't have to be con-cerned about the overhead involvedin passing control between routines

in different code segments.

The same can be said for the useof large data structures. UNIX in-cludes many application programswhose memory image exceeds 1megabyte and that use individual datastructures several hundred kilobytesin size. There is also a class of recur-sive programs that are heavy stackusers. A machine such as the 80286with a 64K-byte stack limit can be areal disadvantage in this type ofapplication.

Another nice feature of a large ad-dress space is that parts of it can beeasily reserved for other functions. Anexample is mapping I/O device inter-faces into memory. Many megabytesof address space may be allocated forI/O without impacting other needs.(Segmented-architecture machinestypically provide a separate I/O ad-dress space to keep the intersegmentcommunication to a minimum.) Figure2 shows an example of addressallocation.

Dual Processor States

The MC68000 is a dual-state pro-cessor. The processor has two stackregisters, one used while in the super-visor state and the other used whilein the user state. When an instructionis executed that changes the CPUstate, the stack is automatically

100000

400000

800000

F80000

■ 1111111111.11111.11 j

1-megabyte ROM

3-megabyteexpansion ROM

4-megabyte I/O

7-megabyteexpansion RAM

1-megabyte RAM

Figure 2: A typical MC68000 address allocation scheme.

changed as well. The CPU providesstatus lines coming off-chip to allowsupport chips (such as an externalmemory management unit) to deter-mine the current CPU state.

The state of the CPU can be deter-mined by reading the supervisor statebit in the CPU status register. Thereis a small set of privileged instruc-tions, including STOP RESET, RTE,MOVE to SR, AND, EOR, OR, andMOVE (word) IMMEDIATE to SR, thatoperate differently in user state thanin supervisor state. In user state theycause a privilege violation and associ-ated CPU fault. In supervisor statethey modify the CPU as indicated.Note that any instruction that explicit-ly sets the supervisor portion of thestatus register (SR) is a privileged in-struction.

Interrupts are dispatched in super-visor state even if the CPU was pro-cessing in user state when the inter-rupt occurred.

UNIX Use of Dual States

In UNIX a process is a user task thathas resources allocated to it, includingmain memory, CPU time, I/O process-ing, and space in system tables. It isby time-slicing processes that UNIXperforms multitasking.

Figure 3 shows a memory-orientedpicture of a process. Normal pro-cesses have a kernel and user side,each of which contains code, data,and stack. Process 0, the original pro-cess, acts as the scheduler in the sys-tem. Process 0 is unique in that it hasno user side, only a kernel side.

A zombie process is a process thathas no user side and no kernel side;in fact, a zombie process has no mem-ory allocated to it at all. It is simplyan entry in the process table waitingto be deallocated.

UNIX kernel code normally ex-ecutes in the supervisor state of theCPU, and the UNIX user code normal-ly executes in the user state of theCPU. In the UNIX framework there isa distinguished user called the super-user. The concept of a superusershould not be confused with thesupervisor or kernel portion of a pro-cess. A superuser process is a normalprocess from the CPU perspective,

(continued)

182 BYTE- SEPTEMBER

If you have not had a trial subscription in the last two years, we invite you now to...

RECEIVE VALUE LINEFOR ONLY $55

This Special Introductory Trial offer brings you the COMPLETEValue Line Survey for 10 weeks at a 34% saving. And it's tax-deductible.

You willreceive:

• two strong binders inwhich are already filed themost recent full-page re-ports on each of 1700stocks regularly coveredby The Value Line Invest-ment Survey.

• all new full-page stockreports to be issued in thenext ten weeks (about 130new reports each week)—updating and replacingthe original reports in yourbinder.

regular

• the next ten editions of Selection & Opin-ion, presenting Value Line's current view ofthe stock market and the economy plus speci-fic stocks to consider now.

• and as a bonus the Subscriber's Guide byArnold Bernhard, Value Line's ResearchChairman—explains how you can apply thou-sands of hours of professional research by our100-strong staff to your own portfolio byfocusing on only two unequivocal Value Lineranks—one for timeliness (performance inthe next twelve months)—one for safety.

We believe Value Line offers the biggest re-turn for the smallest investment in time. In 10minutes, the Value Line will give you on onepage more useful information about a com-pany's past performance, current status andfuture prospects than any other publishedsource we know of.

Money Back Guarantee

If you find that The Value Line Service is not allthat you expected it to be, you may return thematerial we send you within 30 days for a fullrefund of your fee.

'OUTBOARD MARiNE.iii.|g3;|a,n.Dfa'iifeai ;;!;;■ i.niwEE

Sample Report

reduced from

8V2" x 11" size.

Ih.-'i..i'r.|..ir.> i :;r »lh [.r. -.f . ;■. I. I'.'-'i ;. ■ hulk of a 1100 mlllio

i,',,^,d"„'r!';,M,':,"!,"ilr„. i.'.i .'■'V,', '."■'":",■': :i .': a"in...'inr '.i-i'vLr.'."v.Vamjihi. with a 3 n Wl in Annl Krrnnr™,!.,-. i ...is....,

Call toll free (24 hrs. a day 7 days a week) Ext. #2811-800-633-2252 Master Card, American Express or Visa

THE VALUE LINE

■ INVESTMENT SURVEY - - - "■

711 Third Ave., New York, N.Y 10017 890D01

INTRODUCTORY OFFER

□ Begin my 10-week trial subscription for $55 to The Value Line Survey(limited once to any household every two years) and send me these twobonuses:

(1) the Subscriber's Guide

(2) two strong binders with the most recent full page reports on all1700 stocks.

ONE YEAR SUBSCRIPTION□ Begin my 1-year (52 issues) subscription for $425 and send methese two bonuses:

(1) the Subscriber's Guide

(2) two strong binders with the most recent full page reportson all 1700 stocks.

(3) a pocket-size CREDIT CARD LCD CALCULATORThere are no restrictions with this annual subscription.

□ My payment is enclosed.Please charge to: □ American Exp. □ MasterCard □ Visa

Account # Expiration Date

This subscription is tax-deductible and non-assignable.(N.Y residents add sales tax.) Foreign rates upon request.Allow 4 weeks for delivery.

Signature _Name

Address.City

State

No...Zip.

Inquiry 362

SEPTEMBER 1986 -BYTE 183

UNIX AND THE MC68000

but one that is distinguished by thesuperuser process identificationnumber (pid). The pid is checked bythe operating system during certaincritical operations, for example,mounting new file-system devices.

Only superuser processes are al-lowed to perform these operations.Any process (even those belonging tothe superuser) has both a kernel side,which executes in the supervisor stateof the CPU, and a user side, which ex-ecutes in the CPU's user state.

In contrast to the dual privilegelevels associated with UNIX, the80286 processor provides four levelsof privilege, each protected from thelevels above it. For more sophisticated

operating systems than UNIX thisfour-state CPU can provide a good im-plementation vehicle. In the UNIX en-vironment it is not immediately clearthat four CPU states are required oreven useful.

Trap Discipline

The TRAP instruction can be used toimplement kernel calls and the as-sociated state change from user tosupervisor. A matching RTE instruc-tion is used to return to the user state.The register environment can be usedto pass information to the kernel, suchas the type of kernel call being made.(The registers must be saved explicit-ly by the kernel as desired.)

user data

user code

u area

user stack

-\

r

kernel side <of process

>

J

user sideof process

(u area

containssaved CPUstate forsleepingprocess, etc.)

^

kernelglobal data

kernelshared code

per-processkernel stack

Figure 3: A graphic description of a process, showing user and kernel elements.

TtiE User Viewof a Kernel Call Using TRAP

Syscall(callno,arg1 ,arg2)

Perform the kernel call indicated by callno.Send argl and arg2 (typically pointers) to thekernel as part of the call.

Syscall move. I 4(sp),d0move.l 8(sp),d1move. I 12(sp),d2

traprts

#1

Get the kernel call number.Get the first argument (argl).Get the second argument fromthe stack.

Trap to supervisor state.

The kernel call is a frequently usedoperation, but typically a costly one.Overhead involved in trapping to thekernel includes TRAP and RTE in-structions, register state save andrestore, kernel call decode anddispatch, and kernel call implementa-tion. See the text boxes "The UserView of a Kernel Call Using TRAP,"below, and "The Kernel View of aKernel Call" on page 186.

The 80286 processor implements amore complex state-transition mech-anism using call gates to allow pro-cedures to transfer control to thesame or more privileged levels. Thisscheme is more complex than theMC68000 implementation of CPUstate transition, and it is exactly thisadded complexity that makes UNIXimplementation with the 80286 moredifficult.

UNIX Context Shifting

Context shifting in the UNIX systemis the operation of putting the current-ly executing process to sleep andresuming the execution of some otherprocess. Because of the processorientation of UNIX, and its time-slicing algorithms for scheduling, con-text shifting is frequently performed.

Context shifting occurs either at theend of a kernel call or in response tosome interrupt during user state pro-cessing (e.g., the heartbeat interruptfrom the system clock). Context-shiftoverhead includes saving the current-ly executing process state, selecting anew process to run, and restoring thestate of the new process. (See the textboxes "CPU State Save in a ContextShift" on page 188 and "CPU StateResume in a Context Shift" on page190.)

The 80286 provides a complex taskenvironment that allows high-per-formance context shifting betweentasks. As with the privilege architec-ture of the 80286, the task separationmechanism is more powerful than isrequired in a UNIX implementation.

Kernel View of ContextShifting

The kernel view of context shifting in-volves two functions: sleep and switch(see figure 4). Sleep is a function that,

(continued)

184 BYTE • SEPTEMBER 1986

From micro to mainframe,dsio's got the hardware for your software.

At first glance, it may look like anordinary calculator, but the Casiosolar CM-100 is anything but. It'san extraordinary software toolthat's as useful in programming anApple™ as it is a mainframe IBM™

ThekeytotheCM-100'sincredible flexibility is Casio'sadjustable bit-size selector whichcan be set to suit any size com-puter up to 32 bits. And its blockdisplay which can, by scrollingblocks of 8 digits at a time, displayup to a 32 bit word.

But there's much more to thispocket-size powerhouse. It can dobase conversions from binary/octal/decimal/hexadecimal modesand can store in its memorynumbers in any base. It also hasShift, Rotate, Arithmetic Shift andBoolean functions that includeAND, OR, XOR and NOT.

Perhaps what is most extraor-dinary about the CM-100 though,is not how much it can do, but howlittle it costs to do it. The CM-100 isthe only calculator that'll let you doall your software figuring for less

than you'd figure to pay for anaverage ($25.00) textbook.

The more you work with com-puters—whatever their size—themore you need a CM-100. Whetheryou're a student or professional,it's the one piece of hardware thatwill make designing your softwareeasier. For more information, call1 (800) 553-3338 X34.

Apple and IBM are trademarks of the Apple and IBM Corporations.

Where miracles never cease

Casio, Inc. Consumer Products Division: 15 Gardner Road, Fairfield, N.J. 07006

Inquiry 60

SEPTEMBER I986 -BYTE 185

Inquiry 267

PC-SIGLibrary

Keeps on growing...

New disks recently added to our library

of user-supported and public domain

software for the PC:

□ #471 Present V5.1 Make your own slide showsfor business or home using your color monitor.

Q #477 Name Gram/Break Down/Fane WordDo anagrams, find what words your phone numbermakes.

□ #480 PC-Outline Outline and organizeinformation, much likeThinktank.

□ #481 Still River Shell Makes DOS easy to use.

□ #483 Mall Master Keeps track of multiple lists,sorts and prints by city, state, zip and name.

D #485 Icon Maker and FX-Matrix Makesgraphics characters like the MAC for your screenand you can paint them on your EPSON printer.

□ #487 Reflex Point An action game modeled afterthe ROBOTECH cartoon series.

□ #492 Nutrient Tracks your diet and its calorie/nutrient value.

□ #494,495,496 The World Digitized Find over100,000 different locations in the world and displaythem on screen.

n #498 OOS-a-Matlc Load different programs andmanipulate them with single keystrokes.

□ #499 PROCOMM Communications withXMODEM, KERMIT, ASCII protocols, supports IBM-3101, DEC VT52/1000, ADM-3 and ANSI.

D #501 & 502 Saleseye Tracks prospects, leadsand memos and prints letters with that information.

D #503 Reliance Mailing List Keeps track ofmultiple lists, sorts and prints by specific group-good for custom mailing.

O #506 Bibliography of Business Ethics andMoral Values The regularly updated masterbibliography for those doing papers and researchinvolving business ethics.

□ #507 PC-Sprint Software and instruction on howto cheaply speed up your system 2-3 limes.

G #508&509 Statistics Tools Factor experiments,

"FORGET-IT" plots, simultaneous confidence

intervals, randomization tests, expected mean

squares.D #510 Visible PASCAL Compiler Learn to

program PASCAL and watch the internal functions

of PASCAL as it runs.|"1 #511 Turbo Sprites and Animation Create,

maintain and animate your own images inTURBO

PASCAL.

RECENT DISK UPDATES

□ # 5 PC-File Ver. 4

□ # 78 PC-Write Ver. 2.6/1

[H #124 Extended Batch Ver. 2.04a

□ #199 PC-CalcVer.3

D #212,334 RBBS-PC(2disks)Ver.3.7

□ #388 100 Letters Ver. 1.1i : #393 Checkbook Ver. 2

Q #395 Home Inventory Ver. 2O #397 Checkbook Program Ver. 3.31n #402 IBM 370 Cross Assembler Ver. 1.1D #403 Computer Tutor Ver. 4.2

□ #417 ADA Prolog Ver. 1.90

□ #449 Gags Vers. 1.06

□ #468 CPA Ledger Ver. 1.1

D 350-page directory (disks 1-300) $8.95

□ Printed Supplement (disks 301-454) $3.95

□ 1 yr. PC-SIG Membership ($35 foreign) $20

Includes printed directory, supplement, bimonthlymagazine

SPECIAL

Any 5 Disks plus 1 -Year Membership $39

Disks are $6 each. Add $4 postage and handling ($10foreign)- CA residents add state sates tax.

Total Enclosed $ by fj Check DVISA QMC

Card No.

Exp. date

Name

Address

City

.Phone_

. State.

_Zip_

PC-SIG

To order, call: 800-245-6717In CA: 800-222-2996

For technical questions orlocal orders: (408) 730-9291

1030-D East Duane AvenueSunnyvale, CA 94086 213

UNIX AND THE MC68000

THE Kernel Viewof a Kernel Call

trap

The address of this routine is placed in memory at theaddress of vector 33 (the TRAP 1 vector); that is, atmemory location 132 decimal. When the TRAP #1 instructionis executed, the CPU generates an internal exception andautomatically transfers to this routine in supervisorstate. The user return address and status register aresaved on the supervisor stack.

On entry it is presumed that the registers contain:dO . . . the kernel call numberd1 . . . first argument to the kernel calld2 . . . second argument to the kernel call

Typically the arguments are pointers into the user's data

space.

trap

movem.l #0xFFFE, - (sp)

movel usp.aO

move. I aO,-(sp)

movel dO,-(sp)

move. I d1,-(sp)

move.l d2,-(sp)

jsr

C-trap

; Save registers d0-d7 and a0-a6.; Save the user stack pointer.

Push the incoming parameters soa high-level language routinecan access them using standardcompiler parameter passingtechniques.

; Call a C handler to perform; the desired kernel call.

After the kernel call, this process may be context-shiftedout. We have saved the user stack pointer with the registerset so that we can do a complete restore later after someother user process has run.

add.l #12,sp

move.1 (sp) + ,a0

move. I aO.usp

movem.l + (sp),#0x7FFF

rte

; Strip the parameters off; the stack.

; Get the saved user stack; pointer.

; Restore user stack pointer.

; Restore registers a6-a0 and; d7-d0.

Return from exception backto the user, restoring theCPU status and returningto user state of the CPU.

[continued)

Osborne/McGraw-Hill Computer Books

%urALanguage Library

68000 AssemblyLanguage Programming,Second Edition

by Lance A. Leventhal,Doug Hawkins, GerryKane, and William D.Cramer

This classic on assembly languageprogramming for the 68000microprocessor has been revisedto provide complete coverage ofthe entire 68000 family, includingthe 68010 and 68020 chips.

$19.95, Order #0-07-881232-1,625 pp., 6% x 9Va

68000 MicroprocessorHandbook, Second Edition

by William D. Cramerand Gerry Kane

For serious programmers andhardware designers, here's anextensive handbook on the 68000microprocessor, now revised tocover the 68008,68010,68012, and68020 chips. Includes addressingmodes, signal conventions,instruction sets, exception pro-cessing logic, timing, and busoperations.

$14.95, Order #0-07-881205-4,176 pp., 7% x 91/4

65816/65802 AssemblyLanguage Programming

by Michael Fischer

Both a tutorial and lasting refer-ence, this recent addition toOsborne's Assembly LanguageProgramming series examinesinstruction sets, arithmetic opera-tions, loops, and code conversion,sorting and searching, I/O andinterrupts, subroutines, and more.Well-organized, complete andillustrated.

$19.95, Order #0-07-881235-6,425 pp., 6% x 9V4

80386/80286 AssemblyLanguage Programming

by William H. Murray, IIIand Chris H. Pappas

Take full advantage of the uniquedesign of Intel's newly acclaimed80386 chip and 80286 micropro-cessor, as well as the 80387/80287coprocessors with this comprehen-sive guide. Many practical pro-gramming examples and illustratedtechniques enhance this authori-tative resource.

$19.95, Order #0-07-881217-8,400 pp., 6% x 9V4

• Osborne/McGraw-Hill books are available atbookstores and computer stores everywhere.

• To order by mail, complete the coupon andsend it to:

Osborne/McGraw-HillP.O. Box 400Hightstown, NJ, 08520

• All orders must be prepaid and shouldinclude local tax.

• Checks, money orders, VISA and Master-Card are acceptable for payment. No postageor handling charges are required.

• Books will be shipped via UPS. Allow 4-6weeks for delivery. Books will not bedelivered to post office boxes.

This order is subject to acceptance by McGraw-Hill. Offer is good only in the U.S.A.

■

Copyright ©1986 by McGraw-Hill, Inc.Inquiry 260

NAME

AnnRFRS

(Please, no PO Box)

city

STATE

ZIP

INDICATE METHOD OF PAYMENTn VIRA/FXP riATF

CARD #

D CHECK/MONEY ORDERn MARTFRCARfl/FXP DATF

SIGN ATI IRF

. PRICE.

Osborne/McGraw-HHJPO Box 400Hightstown, NJ 0B520

SUBTOTAL

TAX

TOTAL

SEPTEMBER I986

42-Q-012-7000-1

BYTE 187

UNIX AND THE MC68000

when called, returns after some inter-val, during which other processes mayhave executed. Switch is the functionthat actually performs the selection ofa new process and transfers control

to that process.

The kernel also provides a wakeupfunction. Wakeup is used to make aprocess (which has been sleeping,waiting for some external event) ready

CPU State Savein a Context Shift

save(save-area)

The function save() saves the CPU register statein preparation for a later resume call. Registersand user stack pointer are saved in save-area[17].This save call returns 0, indicating it is the firstreturn from save. When resume simulates the secondreturn from save, it will return 1.

The save-area will look like:

user stack ptr

saved registers

a7,a6,a5 a1 ,a0

d7,d6,d5 d1,d0

< --

[16] = usp

[15] = a7

[14] = a6

[1]' ='d1

-save-area [0] = dO

save movew #0x2700,sr ; Go to high-priority supervisor

state to prevent interrupts duringthis function call. This also clearsthe rest of the status bits.

movel 4(sp),a0 ; Get address of register save-area.

movem.l #0xFFFF,(a0) + ; Save all registers.

movel usp,a1 ; Get user stack pointer.

movel a1,(a0) ; Save the user stack pointer.

At this point other processing may occur, for example, the savingof other types of process description information, especiallythe stack image that contains the return address for this call.

Note that a1, aO, and dO are used as working registers here althoughthey are also saved with the rest of the registers.

movel #0x0,d0

movaw #0x2000,srrts

The return value for this savecall is 0. For this example thereturn value is presumed to be indO upon return from function call.

Go to low-priority supervisorstate and enable interrupts.

to run. This is typically after the eventhas occurred.

Figure 4 shows sleep in a contextswitch. Sleep calls switch, which inturn performs two operations; it savesthe current process's state and thenselects the next process to run andruns it. Switch uses two critical func-tions to perform this: save andresume. Save is a function that, whencalled once, returns twice. Resume isa function that never returns. Resumeactually transfers to some other save,acting as the second return for thatsave call.

Figure 5 shows an example of con-trol flow from process A to processB and back again to process A. Theexecution of a sleep call in processA eventually calls switch, which callssave. The save call first returns a 0value. This call also saves the state ofprocess A for later resumption. Con-trol after the first return from the savecall continues into a resume call. Thistransfers control to process B. Later,process B will itself execute a resumecall that transfers control back to pro-cess A. This resume (from B) acts asthe second return of the save call inprocess A. This time the save returnsthe value l, which causes switch toreturn to the sleep call, which returnsto the user process.

Save's primary responsibility is tosave the CPU state so that it can beincluded as part of the saved processimage. The image can later be re-sumed.

UNIX Fork Paradigm

In UNIX all processes are created bymaking copies of existing processes,except, of course, the first process,which is handcrafted by the kernelduring system boot-up. This processthen splits in two using a fork() opera-tion. Each child of this first processin turn can divide as many times asneeded to create processes to per-form all tasks desired.

To perform a new task, a child pro-cess may overlay itself with a newprogram image using an exec kernelcall. Figure 6 shows the fork operationpictorially and demonstrates why theterm fork was chosen for this opera-tion.

(continued)

188 BYTE • SEPTEMBER 1986

How to tell the menfrom the toys.

Fully IBM™compatible

Integrated applicationsoftware-w.p., spread-

sheet, database and

communications

included

MS-DOS™ and start-uptutorials

I

FCC/UL approved

Dual 360K floppy diskdrives

A lot of today's PC prices seem like bargains. Until you look at what'sincluded. That's why serious business users are buying Cordata PC's. We're the com-pany that's been the value leader in PC's for years. Compare Cordata's features at$1495 ($1995 with 20MB hard disk). And you'll see we're not just playing around.

Call (800) 621-6746 (in Calif.: 800-331-5867) for the name of your

SeriousKM495

Also available in transportable model. IBM is a trademark ol International Business Machines Corp.MS-DOS is a trademark ol Microsoft. Inc.

nearest Cordata dealer.

cordata

275 E. Hillcresl Drive. Thousand Oaks, CA 91360 TELEX: 650-2696270in Europe: Holland 030 40-18111. In Canada: (604] 984-0641.

Inquiry 94

Inquiry 143

GmX Micro-20

68020

Single-Board Computer

Mainframe CPU Performanceon a 5.75" x 8.8" Board

(benchmark results available on request)

UNIX AND THE MC68000

<£OCCC00 12.5 MHz Version

St^+J\J*J Quantity Discounts Available

Features

• 32-Bit MC68020 Processor (12.5 or 16.67 Mhz)

• MC68881 Floating-point coprocessor (optional)

• 2 Megabytes of 32-blt wide, high-speed RAM

• 4 RS-232 Serial I/O Ports (expandable to 20)

• 8-bit Parallel I/O Port ('Centronics' compatible)

• Time-of-Day Clock w/battery backup

• 16-bit I/O Expansion Bus

• Up to 256 Kbytes ot 32-bit wide EPROM

• Floppy Disk Controller for two 5 V drives

• SASI Intelligent Peripheral Interface (SCSI subset)

• Mounts directly on a 5V4" Disk Drive

Software

Included:

• GMX Version of Motorola's 020Bug Debuggerwith up/download, breakpoint, trace, single-step, and assembler/disassembler capabilities

• Comprehensive Hardware Diagnostics

Optional:

UNIXm-like Multi-user/Multi-taskingDisk Operating Systems

• OS-9/68000™ (Real-time and PROMable)

• UnlFLEX™

Programming Languages and ApplicationSoftware

• BASIC, C. PASCAL, FORTRAN, COBOL, andASSEMBLER

• Spreadsheet, Data Base Management, andWord Processing

Emx

1337 West 37th PlaceChicago, IL 60609

(312)927-5510 • TWX 910-221-4055

State-of-the-Art ComputersSince 1975

CPU State Resumein a Context Shift

resume(save-area )

Resume the process whose saved CPU state is at save-area.

resume move.w #0x2700,sr ; Go to high-priority supervisor

; state so you don't get interrupted; during this state transition.

movel 4(sp),a0

; Get the pointer to the CPU saved; state.

Here you may access other parameters, such as memory managementinformation about how to map the new process.

Before resuming the new process, its image must be appropriatelyrestored (and possibly mapped using an MMU).

movem.l (aO) + ,#0xFFFF

move. I (a0),a1

mov&l a1,usp

move. I #0x1,dO

movaw #0x2000, sr

its

Restore all CPU registers.This includes a7, thesupervisor stack pointer thatstill points to the returnaddress of the original call.

Get the user stack pointer.

Restore the user stack pointer.

Get a 1 as the return value forthe upcoming simulated returnto save().

Go to low-priority supervisorstate, that is, reenableinterrupts.

Return using the return addresscopy from the original callto save.

The programmer's view of the forkcall is that of a function. fork(). which,when called once, returns twice. (Seethe text box "A Programmer's View ofFork))" on page 196). It returns oncein the calling process with the pid ofthe new process created. It returns asecond time in a new process that isan exact copy of the original exceptthat the new process has a differentpid number and the fork call returnsthe value 0.

During the context shift operationthe kernel function save is used to

save the process state and prepare asecond flow of control to be used inthe new process. Rather than ter-minating in a resume call, the firstreturn from the save continues as thecontrol flow in the parent process.(See the text box "A Kernel View ofFork()" on page 198.)

Interrupt Handling andUNIX

The MC68000 processor provides agreat deal of flexibility for the system

[continued)

190 BYTE • SEPTEMBER 1986

$345 (OK)

THE CARD FOR A

Reason 1: More Memory

When you need more memory, the Abovefunction Card* from American Computer & Peripheral, Inc. delivers a full 2Megabytes of RAM to your American, IBM* personal computers and compatibles.

The American Abovefunction Card can fill conventional memory to 640K with the remaining as expanded memory

or install up to four Abovefunction Cards to provide the maximum 8 Megabytes of expanded memory for your PC

system.

Reason 2: More Functions

In addition to expanded memory, the American Abovefunction Card includes commonly used features, such as aserial, parallel and game port and real-time clock/calendar, all on one board.

The American Abovefunction Card has Cache Memory, an enhanced disk buffer software that is transparent to theuser and gives up to four times faster hard disk access. RAM disk and print buffer capabilities are also contained on theEMM (Expanded Memory Manager)/Utility Diskette.

Reason 3: Maximized Slot Usage

Plan for the future with the American Abovefunction Card. One card provides your memory and multi-function needs

in one I/O expansion slot. This frees valuable slot space for other enhancements.

Reason 4: Compatibility

The American Abovefunction Card is based on LotusVIntelVMicrosoft® specifications and is compatible with Intel's

Above* Board.

Reason 5: Price

And, one of the best reasons of all, the American value: $725.00 (includes 2 Megabytes RAM) and $345.00 (0K)

AUTHORIZED DISTRIBUTOR AND SERVICE CENTERS:

MAJOR DEALERS:

California Micro, Inc.

Los Angeles, CA (800) 792-6500

5K Computers

Orlando, FL (800) 624-3250

Computer WholesalersLincoln, NE (402) 466-1962

American Computer DistributingChattanooga, TN (615) 870-1073

Computertand of Whittier

Whittier, CA (213) 945-8321

Imagine ComputersGoleta, CA (800) 344-2964

The Super SourceNorcross, GA (800) 241-8579

Micro Configuration East, Inc.Brooklyn, NY (718) 941-2512

Columbia Data Systems, Inc.Columbia, TN (615) 381-4650

Elek-tek, Inc.

Chicago, IL (312) 677-7660

PC Land, Inc.

Tustin, CA (714) 730-6723

Mid America

Carmel, IN (317) 846-3101

Microsel

Oklahoma City, OK (405) 787-4354

Omega Data

Kirkland, WA (206) 823-9769

Inacomp Computer CenterColumbus, OH (614) 431-2230

Computer ProfessionalsLakewood, CO (303) 232-4009

CPU Distribution, Inc.Burnsville, MN (612) 894-9310

Omega Data

Hillsboro, OR (503) 640-3995

Inter-Micro Distributor, In'c.Alberta, Canada (403) 438-3997

Inacomp Computer CenterSaginaw, Ml (517) 790-1360

Computer Peripheral Warehouse, IncDeerfield Beach, FL (305) 481-2170

. Asibem, Inc.Bluespring, MO (816) 229-2442

Power House Sales

Sioux Falls, SD (605) 335-7181

Paris Sud Electronique ComposantParis, France (1)69.20.66.99

COMPUTER & PERIPHERAL, INC.

Corporate Office: 2720 Croddy Way, Santa Ana, CA 92704 USA • Tel: (714) 545-2004 • Fax: (714) 545-2146Northeastern Office: 826 Busch Court, Columbus, OH 43229 USA • Tel: (614) 846-5433 • Fax: (614) 846-7656

'Abovelunctiort, IBM. Lotus. Intel Above and Microsoft are trademarks of American Computer & Peripheral. International Business Machines, Lotus Development, Intel and Microsoft Corporations, respectively.

Inquiry 17 for End-Users. Inquiry 18 for DEALERS ONLY.

SEPTEMBER 1986 • BYTE 191

UNIX AND THE MC68000

designer in handling interrupts. Aswith most processors, all interruptscan be handled in a vectored fashion.This is where each interrupt, internaland external, is associated with a loca-tion in memory (the vector address)that holds the address of the handlingroutine for that particular interrupt.When an interrupt occurs, the ap-

sleep(){

switch()

}

switch(){

if (save(proc)return

== 1)

< select new

process>

resume(new process)}

Figure 4: Sleep in a context switch.Sleep calls switch, which saves thecurrent process state and then selects thenext process to run and runs it.

propriate location in memory or vec-tor is used to fetch the starting ad-dress of the appropriate interrupthandler, and control is transferred toit (this is also how things work on theIntel 80286 processor). Figure 7shows how vectored interrupts accessinterrupt handlers.

But this is all the 80286 really offers;the MC68000 offers a seven-level pro-cessor priority scheme for selective-ly masking interrupts. Each interrupt-ing device is assigned a priority level.When the processor is set to a par-ticular priority level, all interrupts atthat level and below are held off. Thisallows higher-level, more critical inter-rupts to supersede the handling oflower-level, less critical interrupts. TheIntel 80286 allows only for the turn-ing on and off of all interrupts simul-taneously, which is much less flexible.

This selective masking of interruptsis very useful to the UNIX system.Consider a low-priority event, thescheduling event triggered by aperiodic interrupt from the systemclock. While the scheduling of a pro-cess must occur in the multiprocess-ing UNIX system, it is not crucial thatit be done at a precise moment. Anytime the scheduling process is taking

Process A executing

sleep()— > switch()

— > save(A) .. .[saves the CPU state of process A]

<-- returns .. .[on first return save() returns 0]

< select process B>resume B

> Process B executing

sleepf)- - > switch()

-- > save(B)< - - returns 0

< select process A >

< resume(A)

< -- returns ... [on second return (from a resume) ][save() returns 1 ]

< -- returnsProcess A continues execution

Figure 5: Context shift control flow.

place, another interrupt can be han-dled without harm to the overall oper-ation of the system.

Consider also a high-priority event,the disk interrupt indicating that a sec-tor on the disk has been located. Ifthis interrupt is not serviced im-mediately, the disk will rotate beyondthe desired sector and time will belost waiting for it to come aroundagain. Such delays could impact sys-tem performance greatly. This is espe-cially true with UNIX because it istraditionally a disk-based system. It iseasy to see that you would want thedisk interrupt to supersede the han-dling of process-scheduling chores.

On the MC68000 this is easily ac-complished by making the disk inter-rupt a higher priority than the clockinterrupt. This allows the disk inter-rupt to supersede the scheduling pro-cess and ensure that it is servicedimmediately to prevent any disk per-formance loss.

On processors where interrupts can-not be selectively masked by priori-ty, the disk interrupt would have to beheld off while the scheduling interruptis handled. Unless external interruptpriority hardware was provided, thedisk sector would be missed and sys-tem performance would suffer. Fromthe preceding example you can seethe advantages of the MC68000 inter-rupt system for UNIX implementa-tions.

You can also see that it is not nec-essarily just an advantage for a UNIXsystem. The situation described in theexample could arise in many systemstoday. The MC68000 interrupt ar-chitecture provides the flexibilitynecessary to build an efficient inter-rupt control system.

C Language Compatibility

UNIX, the MC68000, and C are all wellsuited for each other. C itself is a goodsystems programming language. Infact, 90 percent of the UNIX operatingsystem and most of the user programsfor UNIX are written in C. Since theMC68000 allows for a very efficient Ccompiler, this in turn provides an ef-ficient UNIX implementation.

The compiler writer's task is madeeasy by the MC68000. The portable

(continued)

192 BYTE • SEPTEMBER 1986

INTRODUCING FUJITSU'S DX FAMILY OF PRINTERS

TAKING PC PRODUCTIVITYTO NEW HEIGHTS

Choose the 80-column DX2100, or the 136-column DX2200. For sheer print volume, these Fujitsuprinters can't be topped. At 110 lines per minute, theirthroughput is almost double that of most majorcompetitors.

The built-in bi-directional tractor speeds paperhandling too. Just flick a switch to go from continuousforms to single-sheet feeding, without removingcumbersome optional tractors or tractor paper.

The well-designed operator panel gives you fast,convenient control of all printer functions, and enablesyou to identify error conditions quickly.

DX printers won't distract you from your workeither—thanks to their quiet operation at less than 55 dBA.

And in addition to fast spread sheets, Fujitsu'sDX printers produce near-letter-quality print and excellentgraphics. They'll grow with your needs, too. Upgradingto color, or changing your system interface, is as easy asplugging in a new module.

You can put these fine printers to work for a lotless than you might expect. And it costs next to nothingto keep them working.They come with a superb reliabilityrating of 6000 hours MTBF, and a full one-year warranty.

For more information about the new Fujitsu DXfamily of printers, call Fujitsu America, Peripheral ProductsDivision, at (800) 626-4686. Get the personal printersthat really produce.WERE DEVELOPING TECHNOLOGY FOR YOU.

FUJITSU AMERICA

Inquiry 138

UNIX AND THE MC68000

C compiler was designed for a registermachine with two types of general-purpose registers. Setting up the dataand address registers as these twotypes works very well. The MC68000'snearly orthogonal instruction sethelps keep code generation straight-forward. (An orthogonal instructionset is one in which any registers can

be used with any instructions and withany addressing modes.)

The result of having a CPU that sup-ports an efficient compiler is a codedensity (number of assembly instruc-tions per C statement) that is goodenough for libraries, system work, andeven I/O drivers. The C programmerdoes see the CPU peeking through

Programmer's View

Control Flow View of Fork

main(){

fork()'}

1

parentprocess

1

fork()

1 1

parent childprocess process

(fork (forkreturns returns 0)child id)

Figure 6: The programmer's view of a fork() call.

0

•••

*•

/

interruptvector

0 '

••

interruptserviceroutine

interruptvector

interruptvector

interruptvector

interruptserviceroutine

^ • • •

interruptvector

• • •

s

• • •

Figure 7: Vectored interrupts.

now and then even though C is a high-level language. For example, properuse of the register statement requiresCPU knowledge.

C on the MC68000 also allows forefficient pointer/integer arithmetic.This is due to the 32-bit linear addressspace. An integer and a pointer areboth 32-bit quantities.

Missing Features

The MC68000 has some weaknesseswith regard to UNIX implementation,primarily the omission of features thatare typically implemented separate-ly from the CPU using other VLSI sup-port or discrete implementations. Onepoint in favor of the MC68000 is thatits architecture generally does notprohibit or impede external imple-mentation of missing features.

The most glaring omission in theMC68000 family is memory manage-ment. The MC68000 philosophy is todo nothing for memory managementrather than do a partial job. TheMC68000 CPU generates 32-bit logi-cal addresses. If these are to betranslated into physical addresses, off-processor hardware to perform thetranslation must be provided. (Mem-ory management typically consists ofaddress translation and addressbounds checking.)

First, consider address translation.Address translation involves a distinc-tion between logical addresses (name-space addresses used in a program)and physical addresses, those that arepresented to the main memory. Figure8 demonstrates this logical/physicaldistinction using a system blockdiagram. Address translation allowsseveral processes to use an identicallogical address space while usingcompletely separate portions ofphysical address space. This permitsseveral copies of the same process tocoexist in one physical memory.

Because UNIX uses the forkparadigm to duplicate user processesand implement multitasking, someform of memory management is high-ly desirable, and here there is an ad-vantage to the MC68000 philosophy.Since there is no memory manage-ment on board the MC68000, UNIXimplementers are forced to choose

(continued)

194 BYTE • SEPTEMBER 1986

AVOCETINTRODUCES

MACROASSEMBLERS.

Put your design ideas ipOfmore chips.

New AVMAC™ Macro cross-assemblers, combined withour simulators, emulatorsand EPROM programmers,turn your PC or VAX into acomplete developmentsystem.

AVMAC is fast. Its transparentbuffering scheme provides thespeed of memory-based assem-bly without restricting file size.And, AVMAC has one of the mostcomprehensive macro facilitiesavailable.

AVMAC is loaded with fea-tures that make your develop-ment job easier. You get sourcecode flexibility; AVMAC supportsover 1000 relocatable segments.AVLINK™ linker and AVLIB™librarian support modular pro-gramming with full control oversegment combination and place-ment. AVREF™ generates cross-references by line andprocedure. And, AVMAC givesyou informative, plain Englisherror messages.

Inquiry 32

AVMAC offers superior com-patibility with manufacturers'assembly languages. And it'sdesigned to work hand-in-handwith AVSIM™, Avocet's softwaresimulator/debugger.

Every company talks aboutservice. But at Avocet we'recommitted to satisfying customerrequests for in-stock items in 2-3working days. And that's a fact!

For easy access, call our 800number for ordering, productinformation and technical assis-tance. We're also interested inyour ideas on how we can betterserve your needs.

AVMAC Macro Cross-assemblers

MSDOS™, PCDOS'" $349

XMAC68K $595

VAX"7UNIX'" $995

Target MicroprocessorFamilies Supported:

6804 6502/65C02 Z8

6805 6800/01,6301 Z806809 NEC 7500 68H111802/1805 8085 HD641808048/8041 COP400 68020

8051 F8/3870 68000/68010

NEW! TMS32010 TMS32020

In addition to AVMAC,Avocet provides everythingyou need to develop micro-processor software.

AVSIM full-screen Simulator/Debuggers make softwaresimulation practical. Test yourcode in a crashproof, interac-tive environment, without addi-tional hardware. Price $299.TRICE™ self-poweredIn-circuit Emulators recog-nize 34 different commands;

set break points, single-step,

trace and more. Priced from

$498.

AVPROM™ Programmers

work with any PC. Programover 37 different devices,including EPROMs through27512, CMOS and E2PROMS,and MPU/EPROM combos,using fast, "adaptive" algo-rithms. From $429. Gang pro-grammers from $979.

To find out more about Avocetsoftware development tools,call us toll-free:

1-800-448-8500

(In the U.S. except Alaska.)

VISA and Mastercardaccepted. Most popular diskformats now available—pleasespecify. Software shipment bysecond-day air within the conti-nental U.S. included. Specialhandling and other shippingadditional; call for exact quotes.OEM INQUIRIES INVITED. Avo-cet Systems Inc., P.O. Box 490-B16, Rockport, Maine 04856,(207) 236-9055. Telex: 467210AVOCET CI.

AVOCET yfSYSTEMS INC.*

'"signifies manufacturer's trademark

SEPTEMBER 1986 -BYTE 195

UNIX AND THE MC68000

their own style of memory manage-ment hardware and can select thetrade-off between performance, price,and design schedule that is best fortheir target market.

MC68000 UNIX implementationson the market range in memory man-agement unit complexity from no ex-tra hardware to an MMU providing

segmentation and paging. Memorymanagement also involves memoryprotection, often implemented bybounds registers that are comparedto user logical addresses. Memoryprotection allows several processes tocoexist in the same physical memorywithout overwriting each other orreading each other's data.

A Programmer's Viewof Fork( )

main(){

/*

* Simple fork example program.*/int child-pid;

/*

*/

child-pid = fork();

if (child-pid ==0)

{

/*

* This is executing in the child process.*/

printff Hi from the child process. \ n");/*

* At this point the child process may

* overlay itself with another command

* using an exec call; the fork-exec sequence

* is the "normal" way to start a new program.

*

* Here the new program "factorize" is called

* to overlay the child process image.7

execv("factorize" ,argv);

}

if (child-id > 0)

{

I*

* This is executing in the parent process.*/

printff Hello from the parent process. \ n");printff My child's id is %d \ n",child-pid);}

if (child-pid == -1)

{/*

* This is executing in the parent process,

* but the fork() failed, so there is no

* child process.7

printff FORK FAILED! Awk! \ n");}

Memory protection is highly desir-able in a multiuser environment toprotect users from each other. Al-though the MC68000 itself does notprovide any form of memory protec-tion, it does incorporate VLSI MMUs,the MC68451 and the MC68851. TheMC68451 MMU provides memorytranslation in a segmented fashionand memory protection associatedwith each segment. The MC6885Iprovides address translation andbounds checking in a pagedenvironment.

The 80286 provides two modes ofaddressing: Real Address Mode andProtected Virtual Address Mode.When operating in Real AddressMode, the CPU issues logical ad-dresses, as does the MC68000. Whenoperating in Protected Virtual Ad-dress Mode the 80286 performsmemory translation and bounds andprivilege checking on board the CPU.It is possible to use this virtual ad-dress mode to implement processseparation in UNIX. This area is onein which the 80286 architecturemakes implementation of UNIX easy,in that the implementer is not re-quired to add external memory man-agement hardware.

INTERRUPTIBILITY

The 68000 CPU is not restartable forall instructions. If the execution of agiven instruction causes a fault (e.g.,because of an MMU bounds viola-tion), that instruction cannot neces-sarily be restarted transparently.Transparently here implies that therestart occurs in such a manner thatthe interrupted process cannot detectthat the interrupt and restart haveoccurred.

Some MC68000 instructions can beaborted in such a manner that the in-ternal CPU status cannot be recoveredand restored. Such instructions can-not be restarted transparently. In apaged memory environment a CPUexception is typically generated by anMMU when a desired page is not inmain memory. If the CPU cannot berestarted following the abortion ofany instruction, the CPU cannot beused reliably in a paged memory en-vironment.

{continued)

196 BYTE • SEPTEMBER 1986

How to put Ferrari speed andMack Truck capacity into a PC

m \lMrr ;iif^k* ^M available

slots.

Install the Dream Boardin place of yourmultifunction card.

Chugging along in an overloaded,underpowered PC without roomto expand? Need the increasedpower and memory of an AT™without sacrificing your currentsoftware library or DP budget?Problem solved:The Vnivation Dream Board!• A PC accelerator board thattriples the speed of your PC,• Plus an EMS RAM board with upto 2 megabytes of high-speedRAM for your most complexLotus™ spreadsheets and CADoperations,

• Plusa full-featured multifunctioncard with serial and parallelports, clock/calendar, RAM Disk,Print Spooler, Disk Cache, and

a speed selection switch that

maintains 100% PC software

compatibility.

All in ONE SLOT

That's the dream come true. Ifyour PC, XT, Compaq™ Portable,or 100% compatible is full, simplyreplace your single applicationmultifunction card with theDream Board. You'll retain allyour multifunction features whileadding incredible speed andpower. With slots to spare!Planning to buy a new PC? TheDream Board is the ideal multi-function board. It provides thespeed and power of an AT at afraction of the cost.

Act

While theDream Boardis fresh in Iyour mind!

You need the power and the slots.The Dream Board is the answer!Call Univation today. Representa-tives are waiting to answer yourquestions and fill your order. Stoptraveling in the slow lane. MoveInto the passing lane today!

Outside California Call:

(800) 221-5842

UNIVATION

TRADEMARKS and REGISTERED TRADEMARKS: PC/AT-mieraailoiuil BusinessMacnines Corporation: Compaq—Compaq Computer: Lotus—Lotus DevelopmentCorporation: Dream Board—UnlvaUon.

System Solutions for Business

1231 California CircleMilpitas, CA 95035(408)263-1200

Inquiry 360

UNIX AND THE MC68000

A Kernel View of Fork( )

/*

* Newproc is the internal, kernel form of the fork()

* system call. Newproc creates a duplicate of the

* calling process and introduces it to the system.7

newproc()

{

I* ... V

* The new process memory image is duplicated. A new

* entry in the procedure table is allocated and it is

* filled with information about this new process.7

I* ... 7

if (save(save-area) ==1)

{

}

/*

* When save returns with the value 1 (after a

* corresponding call to resume) this copy of the

* process continues execution. The two processes

* are duplicates of each other, but traditionally

* this process is the parent process. This

* process is the one that originally called

* fork() and is the one to which the kernel

* will return the process number of the child.7

/* ... 7return(1);

/*

* This flow of control will become the child process.

* At this point any additional processing that is

* necessary to make the child ready to run is performed.

* The kernel will return a 0 value to the fork()

* call for this flow of control.7

return(O);

}

logical address bus

68000 CPU

1

physical address bus

D

MMU

A

z>

I/O using

logical

addresses

I/O

ROM

RAM

J

I/O using

physical

addresses

I/O

J

Figure 8: Address translation.

Bounds checking can also be usedto detect user stack underflow andallow stack growth and processrestart. The user memory bounds areset to the end of the user's stack.When an underflow occurs, the MMUgenerates a bounds violation. The ex-ception handler for the bounds viola-tion can allocate more memory forstack, remap the process, and restartthe process. If the CPU cannot berestarted, the process cannot beguaranteed to recover properly afterthe stack region is expanded by thekernel.

The MC68010 and MC68020 doallow restart of any instruction. OnMC68000 UNIX implementations it ispossible to implement automaticstack growth using software conven-tions. A simple test is performed inthe preamble to every procedure callto see if sufficient stack is available.This can be accomplished by touchingthe deepest possible region of use onthe stack, using a dummy TST.B in-struction. If the test fails, causing aCPU exception and kernel allocationof more stack, the process can berestarted at the instruction after thedummy TST.B instruction. Since thisis a software convention, all programswishing automatic stack expansionmust conform to the convention tooperate properly.

The text box "Recovery and RestartAfter a Bus Exception" on page 200shows a typical bus error exceptionhandler that calls a high-level lan-guage routine to implement userstack expansion and process re-mapping.

Coprocessors

The MC68000 family allows for multi-ple CPU environments. In the UNIXenvironment there is the possibilityfor much parallel processing if multi-ple processors are available. TheMC68000 bus operates asynchro-nously. This aids in configuring buseswith a multimaster capability that sup-port multiple CPUs using the samememory and peripherals. Many typesof coprocessors are common to UNIXimplementations, including floating-point coprocessors, graphics copro-cessors, and DMA (direct memory ac-

(contimed)

198 BYTE • SEPTEMBER 1986

mh the IBM System/36 PC,

you can run your business

from here.

This surprisingly smalJ JBM System/36 PChas the power to keep any size businessmoving. At a surprisingly small price.

Connect the System/36 PC to your IBMPersonal Computer, and you have the powerto build your fortune without spending one.And you also have a system that's part of the System/36—IBM's most popular multi-user computer family. Whichgives any business access to the broad range of System/36software as well as PC software.

he basic System/36 PC, a processor and a personalmputer, easily operates as a standalone system in a smallbusiness. Or ties a department in a larger organizationtogether by connecting a combination of IBM PCs,System/36 terminals or compatible printers. So you canshare information and resources.

And yet, with all that power, the System/36 PCprocessor is so small, it fits under your desk, on top, ornext to it. Wherever you put it, you can run a successfulbusiness from the best position.

For a free brochure on the IBM System/36 PC, or forinformation on product availability from participatingAuthorized IBM PC Dealers, Value Added Dealers or IBMProduct Centers, call 1800IBM-2468, ext. 104/LD. Orcall your marketing representative. And be sure to ask* out IBM Credit Corporation financing, ssrs^st =®

UNIX AND THE MC68000

Recovery and RestartAfter a Bus Exception

The address of this routine is placed in ROM at the bus addressvector location: vector number 2, memory address 8. Controltransfers to this location at bus error time.

Typically an MMU will cause a bus error when a bounds violationoccurs (e.g., during stack underflow or page fault).

At entry the stack will look like this:

sp + 14

sp+12sp+10

ProgramCounter

Status Register

InstructionRegister

Access Address

sp + 2sp—>

bus-fault

Restore during process restart

Restore during process restart

Examine; verify stack underflow

Examine; verify stack underflowand determine how much memoryto allocate

Function Code; l/N bit; R/W bit

movem.l #0xFFFE, - (sp)

Save d0-d7 and a0-a6.These will also beavailable to C-bus-handler.

jsr

C-bus-handler

A high-level language routine can examine the access addressand instruction register to determine the reason for thefault. If the instruction being executed was a TST.Binstruction and the access address is "slightly" belowthe stack, this may represent a stack underflow thatrequires stack expansion and process remapping.If this was not an implicit stack expansion request,the user process should be sent a signal indicating thatthe bus error occurred.

Here the PC should be decremented and the aborted instructionrestarted. Since the proper status cannot be assured on a68000 CPU, the restart is not attempted. On the presumptionthat the bad instruction was a dummy TST.B, bus-fault simplyrestores what status it can and returns to the user.

movem.l (sp) + ,#0x7FFFaddq.l #8,sp

rte

Restore the registers.

Strip fcode, access address,and instruction registeroff the stack.

cess) processors. Because UNIX is amultitasking system with multiple pro-cesses executing at any time, theoperating system easily managesmultiprocessor environments.

For example, the operating systemmay initiate a disk transfer on behalfof a process, start the operation ona DMA coprocessor, put that processto sleep, and continue executinganother process. Similarly, processesmay be put to sleep while graphicscoprocessors operate on a user's ter-minal. The MC68000 family includesthe MC68881 floating-point copro-cessor, which can be used effectivelyin a UNIX environment.

Summary

The MC68000 architecture providesa powerful yet simple programmer'smodel that makes UNIX implementa-tion easy. The difficult programmer'smodel is a primary weakness of thetypical segmented architectures in usein today's UNIX microcomputers, andin overcoming that, the MC68000became a good choice for UNIX im-plementation. There are also othergood choices, such as those UNIXproducts on the market that usesegmented architectures and othersthat use stack architectures. Still, amajority of implementations use theMC68000 family.

The MC68000 has many architec-tural features that help UNIX imple-mentation, including a large linear ad-dress space dual-state processor, anda seven-level interrupt priorityscheme. The processor architecture isconducive to using the C program-ming language, which is the primarydevelopment language for UNIX. Fur-ther, the MC68000 is a general-regis-ter processor that makes UNIX imple-mentation easy because UNIX wasoriginally developed on machineswith similar architectures.

The weak side of the MC68000 ar-chitecture involves the omission ofhelpful features, in particular on-boardmemory management. This desirablefeature represents the main advantageof the 80286, but when all factors aretaken into account, it is apparent thatthe architecture of the MotorolaMC68000 CPU processor is very wellsuited to UNIX implementation. ■

200 BYTE • SEPTEMBER 1986

c&c

Computers and Communications

Your first color monitor shouldbe good enough to be your last.

SEC introduces the onlycolor monitor you need.Superb resolution plusMultiSync for across-the-board compatibility with allthree PC graphics boardsmade by IBM, for businessgraphics, CAD/CAM,computer art, and text.

Now there's one highresolution colormonitor that does

i <

things your way.; The MultiSync™monitor from NEC.

It gives you thebest color resolu-tion available atthe price.• Compatibility with the IBMProfessional GraphicsAdapter, the IBM EnhancedGraphics Adapter, and theIBM Color Graphics Adapter.

<ff^

• MultiSync, the NECfeature that automaticallyadjusts to color adapterboard scanning frequenciesfrom 15.75 KHz to 35 KHz—suggesting the possibilitythat the MultiSync monitormight be compatible with allcolor graphics boards thatare fully compatible with theIBM PC, PC/XT, and PC/AT,now and in the future.

• Full implementation ofhigh resolution graphicssoftware for business andother applications, nowand in the future.

• And color capabilitylimited only by the boardbeing used.

See Things Our Way

Until now, you had to choosedifferent color monitors for

Inquiry 25!

Illlllllllllllllllllllllllllllllllllllllll

—P i

The Intelligent Monitor

compatibility with all threePC color graphics boardsmade by IBM. With so manyboard and monitor configura-tions, folks didn't know whichway to look.

The new MultiSync colormonitor gives you uniquecompatibility. As well as TTLand analog color. With 7switchable text colors. Andresolution up to maximum 800horizontal dots and maximum560 vertical lines, on a large,13" diagonal viewing area.

r'*"*1^ All that, priced at just\ s# $799. All from NEC, aJX name respected aroundT$+ih tnewor'd for advanced,1£*zJj~. reliable products backed\\\ \\ by nationwide service.

Compati-bility withthe IBM9Profes-sionalGraphicsAdapterBoard

It's the one color monitor thatdoes everything your way.

Compati-bility withthe IBM®ColorGraphicsAdapterBoard

*l-j£

ex'

But why talk more about it?Visit your nearest dealer andsee a graphic demonstrationof the new NEC MultiSyncmonitor's capabilities. Thendraw your own conclusions.

For information dial

1-800-447-4700

NEC HOME ELECTRONICS (U.S.A.) Inc.

Personal Computer Division

1401 Estes Avenue

Elk Grove Village, IL 60007

NEC

SEPTEMBER 1986 • BYTE 201

THE COMPUTER

THAT CONQUERED TIME

Finally: the computers you've been waiting for. Speed. Power. Flexibility. And IBMPC/XT/AT compatibility.

The PC's Limited 286'" and 286'2 are the most technologically-advanced personal com-0 CONQU ERS SPACE* Putcrs evtr designed, They run at 10 ;md 12 megahertz, respectively, providing the fastest

processing times of any PC-compatible.

Who needs 12 megahertz speed? You do, if you use dBase and you're tired of waiting dur-ing long sorts and indexes. You do, if you're tired of going out to lunch while your compiler finishes its work. You do, if you want to seeMicrosoft Windows fly. Or AutoCAD or P-CAD take off.

The PC's Limited 286s also have the exclusive SmartVu panel — an alphanumeric window into the computer that reports on processing speedand provides diagnostic messages in English. It can even help predict hard-disk failures before you lose a month's work.

The 286s are also smaller than the other AT-compatibles — more than 25% smaller than the IBM PC-AT, for example. Which means you can findyour desk again.

And they're not stripped, Asian wonder-boxes. Designed and built in the U.S., the 286'" and 286,J come with 1,02 tk of fast RAM on themotherboard, 1.2 Mb floppy drive, 200-watt power supply, and an AT-style keyboard.

I

■■■

And every 286 goes through ex-tensive bench-testing and ex-tended burn-in before it leavesour plant.

What more can we say? Exceptthat you can buy the 286,J forjust 42,695, the 286'" for $2,295.Including shipping. Both backed,of course, by PC's Limited's One-Year Limited Warranty and30-Day Money-Back Guarantee.

MEGAHERTZ 80286

Call for latest prices,* Limited Warranty

FREE SHIPPING in the continental <■ ,1 no UPS Ground

1495

PC'S LIMITED 286"™ »

High Performance, Competitive PricePC Magazine "Editor's Choice" Feb. 25, 1986Includes: 80286-based system unit, 1024K on mother board,

1.2 Meg Floppy Drive, Combined Floppy and Hard Disk Controller Card, AT Style Keyboard, 192WPower Supply, 2 Serials and 1 Parallel Port, and Clock/Calendar with Batterv Backup.Runs all Major Software written for the IBM PC™, PC XT™, and PC AT™. (Processor): Intel 80286 run-ning at 8MHZ. (Expansion Slots): 8. Same Bus Configuration as IBM PC AT™.One Year Warranty'

795

PC'S LIMITED TURBO PC

High Performance. Competitive Price

Includes: System Unit, 6-tOK on Mother Board, 360K Floppy Drive, AT Keyboard, BOW Power

Supply.

Runs all major software written for the IBM PC™, PC/XT™, 40% faster, withoutmodifications. Processor: 16-bit 8088—2, 4.77 or 6.66 MHZ Clock Speed. Expansion Slots: 8; 7 areavailable in above configuration.One Year Warranty.'

»C'S LIMITED 20 MEG HARD DISK ON A CARD

• 3'A" Tandon Hard Disk

• Software included

• Easy to install

• One Year Warranty

300/1200 BAUD HAYESCOMPATIBLE MODEM

Internal S159 r«!«»«>«si«External S179

■WVANGTEK 60 MEGTAPE BACKUP SYSTEM

TANDON HARD DISKWESTERN DIGITALCONTROLLER

,„,™,s409

21) MB Hard Disk SySKffl for PC"

Includes Tandon Hard Disk, Western Digital Controller, Cables, Manual, Software, and Mounting

Hardware. Boots from Hard disk Our Hard Disk Systems are compatible with the latest versions of

the following computers: IBM PC, IBM XT, AT&T 6300. Compaq Deskpro. Tandy 1000. Tandy

1200. PC's Limited Turbo PC. Leading Edge PC (Both Models). Sperry PC. Vyse PC. ITT PC. and

most other Compatibles.

PLEASE SPECIFY VOIR COMPUTER TYPE WHEN ORDERING.

One Year Warranty'

FLOPPY DISK DRIVE

Mitsubishi Electronics Half-Height. DS/DDAlso available for AT" in gray.

s795

1 Backs up 5 Megs per minute

• Runs under MS DOS orPC DOS

• Pulse Software Included

MONO-II

s129

• 12" flat and compact screen

• TTL signal input

• Built-in swivel and tilt hase

• Instant action system

• Low distortion

PC'S LIMITEDRGB-1 MONITOR

PC'S LIMITED

SIX FUNCTION CARD

,,H

w/ok yy w/384K

• Upgradable to 38-iK

• Clock/Calendar

■ Includes Software

• Parallel Purl

• Serial Purl

• Game Pun

Tno Vtar Warranrv'

449

PC'S LIMITED MINI I/O

s99

• Serial port

' Parallel port

• Clock

• Software

' l-'iis in short slot

459

• MMM dot pilch» RGB input

• 12-inch screen

• 690x240resolution

• 16 colors

SEAGATE, 20, 30 and 40 MEG

high speed 40 ms accesstime hard drives for at

2ombg,5795omeg*699

40MEg'819

Uses Linear Voice Coil Activator. Heads park automaticallyat power down. Includes Seagate Full Height Hard Disk,Cable, and Mounting Rails. Boots from Hard Disk.

One Year Warranty*

PC'S LIMITED AT MULTIFUNCTION CARD

S199 VTOK

PC'S LIMITEDPC-576 RAMBOARD W/OK

$69

• Expandable to 576K

• Supports 6-iK or 256K RAMS

• Fits in Short Slot

XT POWER 130W

$99

Solve Your Power Problem.Directly replaces Power Supply in PC"Fully XT" compatible.One Year Warrant v.'

UNIVERSALGRAPHICS CARD II

'199

• Fully compatible with IBM CGA. Plamronics COLORPLUS,IBM Monochrome, and Hercules compatible graphics modes.

• Includes Parallel Port and fits in a "short" slot.

PC'S LIMITED

SALES CAULS INSIDE IE(AS1611 Headway Gfclr, Building 1, Ausrin, 1ml■ Call* from anywhere in the country. 15121 U9-6962:thnitalSunponCjUi, 1512) JJ9-696JmPC'.limitedBBS(5li| 1 J<MI2;Cimamtr Serviee Calii,l5lil 1W6964 anil MCI MAR; PC'i LimitedTela No. 9IMS08JK6 PC LTD FAX (512)) W-67JI

Piggy Back Board J59W/OK

• Expandable to 3 MEG [1.5 on Board/1.5 on Piggy Hack Board) • Supports

(h or 256K RAMS • Parallel Purl • Serial Port (2nd serial option)

TOTAL SATISFACTION GUARANTEE

WARRANTY

For warranty service; one year limited warranty on PC's Limited products. Contact Technical Support for a Return AuthorizationNumber (RMA). Returns must he accompanied by yourRMA. the invoice, and a brief explanation. During the warranty period, PC'sLimited will repair or replace items at our option.30-DAY TOTAL SATISFACTION GUARANTEE

Any item bought (mm PC's Limited may he relumed within 30 days from the date it was shipped Tor a full refund of your purchase price. Returneditems must be as-new. not modified or damaged, with all warranty cards, manuals, and packaging intact. Returned items must be shipped prepaidand insured, and must bear a PC's Limited Credit Return Authorization (CRA) on the shipping label Call PC's Limited Customer Support Departmentfor CRA. No credit issued after .Ml days from date of shipment.

CONSUMER TIP

When shopping for PC products, »*k our competitors about Ibeir refund policies.

Mitsubishi, Intel. IBM, Hercules. Plamronics. Seagate, western Digital. AT&T, Compaq, Tandy, Leading Edge. Sperry. Wysc, and ITT are registeredtrademarks of their respective companies. IBM PC, IBM XT. IBM AT, are trademarks of IBM Corporation, Leading Edge PC. Sperry PC, Wysc PC.Compaq Deskpro, AT&T 6300, Tandy 1000 and Tandy 120(1 arc trademarks of their respective companies

Some quantities may he limited. PC's Limited sells equipment certified to be compliant with FCC Class B standards. All prices are subject to changewithout notice.

Inquiry 268

SEPTEMBER 1986 -BYTE 203

A POWERFUL PAIR

Having trouble sleeping nights, can'tunderstand why those sheep keepappearing night after night after night! Wellstop worrying! We've got the solution!

Introducing the BIG MACK TWIN PACK™,the POWERFUL PAIR that ends thosesleepless nights worrying about HeadCrashes and Data Security THEBIG MACK TWIN PACK™contains a 20MB HARDDISK for your MACINTOSHPLUS as well as a power-ful 20MB CASSETTE TAPEBACK-UP for all those filesthat somehow vanish fromyour disk. By utilizing theSTATE OF THE ART SCSIINTERFACE, the BIG MACK TWINPACK™ allows for High PerformanceTransfer Rates to your MACINTOSH PLUS.

The Tape Back-up, in addition to Stream-ing Back-up, can be used as a RandomAccess Device that allows file by fileback-up and restore operations.

So stop counting sheep and start counting

on the reliability of a POWERFUL PAIR

of STATE OF THE ART Data Storage

Devices. . .THE BIG MACK

TWIN PACK™.

THE RIGHT PRODUCT AT THE RIGHT TIME

BIG MACKTWINPACK

For Information on the Dealer Nearest You, Please Contact:

%¥estern Computer

17781 MITCHELL, IRVINE. CALIFORNIA 92714

(714) 553-1611 • FAX (714) 553-0236

TELEX 756731 ANSWER BACK: WESTERN COMP.

Prim and Availability Subject \o Change Without Notice.

Macintosh Plus is a Registered Trademark of Apple Computer CorpQig Mack Win Pak h a Trademark of Western Computer Corp.

BIG MACK

TWINPACK

Inquiry 371 for End-Users. Inquiry 372 for DEALERS ONLY.

68000 MACHINES

A COMPARISON

OF MC68000 FAMILY

PROCESSORS

by Thomas L. Johnson

A look at the architectureand hardware and software compatibility

SINCE ITS 1979 introduction, theMotorola MC68000 microprocessorfamily has grown to five members: theoriginal 16-bit MC68000; theMC68008. an 8-bit data bus versionof the MC68000; the MC68010, a vir-tual memory/virtual machine version;the MC68012, an extended addressversion of the MC68010; and theMC68020, a full 32-bit virtual mem-ory/virtual machine microprocessor(see figure 1).

Each family member includes archi-tectural enhancements that offer cer-tain advantages, in terms of software,hardware, and system design. How-ever, the extent of software and hard-ware compatibility between the familymembers varies.

Family Overview

The major external differences are inthe number of address, data, andvarious control lines (see table 1).

The MC68000 family uses a three-wire function code that transmits tothe system the processing state of theprocessor on a bus-cycle-by-bus-cyclebasis. This allows the designer tomaintain in the system hardware the

memory privilege distinctions main-tained within the processor. For theMC68000 and MC68008 these func-tion codes can indicate either super-visor mode or user mode, programaccesses or data accesses, and inter-rupt acknowledge bus cycles. TheMC68010 and MC68012 use the sameencodings on the function code pinsbut change the name of the interruptacknowledge space to "CPU space."A CPU space access indicates eitherinterrupt acknowledge or breakpointacknowledge. The MC68020 expandsCPU space accesses to include copro-cessor communications and access-permission-level checking, which canbe used in sophisticated memorymanagement schemes to implementring protection architectures. All en-codings are done in an upwardly com-patible manner, such that systems thatrecognize an interrupt acknowledgeon an MC68000 will work properlyeven when an MC68020 is inserted inthe system. (See figure 2.)

User Programming Model

To the user programmer, there is ab-solutely no difference in the on-chip

resources available for any of the pro-cessors in the family. Thus, once amodel has been assimilated, no re-training is needed when changingfrom one family member to any other.The base architecture for the user in-corporates eight totally undedicated32-bit data registers, which can be ac-cessed as bytes, words, or long words(32-bit values) and used for either thesource or destination of any opera-tion that will allow the use of a dataregister (i.e., all arithmetic, logical, anddata movement operations). Usersalso have at their command eight3 2-bit address registers that can beaccessed as either 16-bit or 32-bit en-tities. Only one of these registers maybe considered dedicated—A7 is theimplicit user stack pointer for subrou-tine calls and so forth.

Rounding out the user model is an8-bit condition code register and a full32-bit program counter. The conditioncode register contains not only the"normal" condition bits for arithmetic

(continued)Thomas L. Johnson is a staff engineer atMotorola Inc. (6501 William Cannon West,Austin, TX 7873 5-8598).

SEPTEMBER 1986 • B Y T E 205

MC68000 FAMILY

and logical operations (zero, carry,overflow, negative), but also a bit forextended-precision operations (ex-tended).

The inclusion of 32-bit structuresforeshadowed the design of the full32-bit MC68020-setting the stage forupward compatibility of user-levelcode in the future processors.

Supervisory ProgrammingModel

A look at the supervisory-level pro-gramming model (figure 3) finallyreveals the differences in functional-ity of the family members. Whereasthe user-level program has accessonly to user-level resources, thesupervisory-level program has accessnot only to the complete user-levelmodel, but also to the full super-visory-level programming model forthat processor. Note that the super-visor stack pointers are also referredto as A7. An automatic context switchconcerning these stack pointers oc-curs as flow changes from supervisoryto user level and back again without

the necessity of loading and reloadingstack pointer registers. Table 2 encap-sulates all of the resources availableto the supervisory-level program onthe various processors.

Progressing from the MC68000 tothe MC68020, more instructions areavailable to manipulate the additionalsupervisory resources, and eachmodel is a proper subset of the nexthigher processor. Thus, code that ma-nipulates the condition code registeron the MC68008 (the 8-bit version ofthe MC68000) will execute intact onany other of the processors.

This form of "supersetting" the re-sources on newer family members en-sures upward compatibility and ismaintained within the family for thesupervisor and user programmingmodels, the instructions (to the bitlevel), the address modes, and all datatypes.

Additional Supervisory-Level Resources

The vector base register (VBR), intro-duced on the MC68010, allows a

supervisory-level program to relocatethe lK-byte exception vector table toanywhere in the physical address mapof the processor. This exception vec-tor table is used in the MC68000family to route specific exceptions tothe appropriate handler within thesupervisory code space. The vectortable consists of 2 56 four-byte entries,each of which may be used to pointto the entry address of its specifichandler. Of these 256 vector entries,37 to 39 vectors (depending on theprocessor) are dedicated to handlingpredefined exceptions such as bus er-rors, TRAP instructions, and so forth.An additional 26 vectors have beenreserved for future expansion of func-tionality, and 192 vector entries canbe defined by the user.

The alternate function code regis-ters (SFC and DFC) allow the super-visor to retrieve and modify data inany address map (user or supervisor,program or data). On all family mem-bers, the function code outputs aredriven automatically based on the

{continued)

1979

1982

1983

1984

19851986

Relative Performance

1,0 2.0 3.0 4.0 5.0

MC680008 MHz

MC6800012.5 MHz

MC680088 MHz

MC6801012.5 MHz

MC68012

12.5 MHz

MC6802012.5 MHz i

MC6802016.67 MHz

MC6802020 MHz

Figure 1: The MC68000 family genealogy.

206 BYTE • SEPTEMBER 1986

High-Speed Animation on Your IBM PC!

■

VB

iVj^tas* 'tt!:j'«t„ /v '

**.:/!£**

In our commitment to low-cost animation,we've developed an ultra-high-speed colorgraphics board to provide the performance ofexpensive dedicated graphics systems on aninexpensive, user-friendly IBM PC. Thisboard's 400-million bits-per-second color-fillrate offers animation speeds never beforeavailable on a PC plug-in board (the X-1 is 10times as fast as any other PC graphics cardwe've seen). The low-cost, high-performanceX-1 Graphics Board opens up entirely newapplications for microcomputer-basedgraphics.

with the Standard IBM Color/Graphics Adapter or X-1

3ur 3D Graphics software, the graphicdrivers behind Jet and Microsoft Flight

Simulator, opens up new worlds of 3D and 2Danimation. The program works with both theIBM Color/Graphics Adapter and the X-1Graphics Board, so you can update yourhardware at any time and maintain softwarecompatibility.

Specs. The X-1 Graphics Board is available for

$2990. and requires an IBM PC or PC-com-palible computer with minimum 128K RAM,PC-DOS or MS-DOS Version 2.0 or newer,and an X-1 compatible RGB display monllor.

The 3D Graphics software Is available lor$995, and requires an IBM PC or PC-com-patible computer with minimum 256K RAM.PC-DOS or MS-DOS Version 2.0 or newer,and either an IBM Color/Graphics Adapter orthe X-1 Graphics Board.

See your dealer lor details and a special hardware/software demonstration, or call SubLOGIC directly formore Information.

IBM is a registered trademark ol International BusinessMachines Corp.

MfeUDGIC

Corporation

713 EUgebrook DriveChampaign IL 61820(217) 369-6482 Telex: 206995

Order Line: (800) 637-4983

.j anoH*««u)

Inquii

MC68000 FAMILY

type and location of the memory buscycle, and these outputs may be usedto enforce hardware protection in thememory subsystem. Because theMC68000 and MC68008 are not vir-tual machine processors, they have noneed to override this hardware-en-forced protection, but the MC68010,MC68012, and MC68020 processorsrequire this ability. The alternate func-tion code registers allow these newerprocessors to perform that functionto control the virtual environment.

The two cache control registers in-troduced in the MC68020 (the cachecontrol register—CACR, and the cache

address register—CAAR) allow thesupervisor to control the on-chip in-struction cache memory (64 four-byteentries) for that device. The cachepowers up as disabled, and the super-visor, at its discretion, may choose toenable it at some later time. Addi-tionally, the supervisor can selective-ly invalidate cache entries.

The MC68020 status register con-tains an additional bit for control ofthe hardware tracing mechanism builtinto all the family members. TheMC68000, MC68008, MC68010, andMC68012 can trace any given instruc-tion or sequence of instructions when

Table 1: A pin-out comparison.

MC68000

MC68008

MC68010

MC68012

MC68020

Address lines

24

20/22

24

31

32

Virtual address range

16Mb

1Mb/4Mb

16Mb

2Gb

4Gb

Data lines

16

8

16

16

32

Bus protocol

Clock cycles/bus cycle

Number of data strobes

async42

async4

1

async42

async42

async3

1

Number of transfer

acknowledgesFunction code lines

1 (DTACK)3

1 (DTACK)3

1 (DTACK)3

1 (DTACK)3

2 (DTACK)3

Bus arbitration lines

3

2/3

3

3

3

Interrupt acknowledge: MC68000/008

31 20 19 16 15

4 3 10

1111

Level

0

^ 1 ^

B

3

reakpoint acknowledge: MC68010/012

1 20 19 16 15

5 4 2 10

0000

bkpt

00

u ^

t

3

iccess control: MC68020

1 20 19 16 15

7 6 0

0001

MMU Reg

C

3

Coprocessor communications: MC680201 20 19 16 15

13 12 5 4 0

0010

CPID < 0

CPIF Reg

* 0 *"

Figure 2: CPU space address bus encodings (FC0-2 = 111)

the supervisor enables the tracingmechanism. The MC68020 can alsotrace only on a program change offlow instruction, such as branch orjump.

The only other added supervisoryresource is the master stack pointer(MSP), also new on the MC68020,which allows the separation of task-related and non-task-related excep-tion stacking. In use, the MC68020powers up and loads the interruptstack pointer as the active supervisorystack pointer. This is the equivalent tothe power-up sequence of any otherfamily member in which the singlesupervisory stack pointer is loaded.At some later time, the operating sys-tem may choose to enable the masterstack pointer by enabling the MSP bitin the status register (the stack pointerselect bit). From that point on (untildisabled), all common program ex-ceptions, including TRAPs and divide-by-zero, that occur will cause state in-formation to be saved on the masterstack until an interrupt occurs.

Since interrupts are asynchronousevents that will normally have nobearing on the task currently execut-ing in a multitasking environment, itis desirable to separate the inter-rupt-related information from the task-related information. This is accom-plished by first stacking the task-related information from the currenttask on the master stack and then per-forming an automatic switch to the in-terrupt stack pointer for use during in-terrupt handling away from the inter-rupted task. Here, a "dummy" stackframe is stored on the interrupt stackso that at the completion of interruptprocessing, a single RTE (return fromexception) instruction will automati-cally cause a switch back to themaster stack pointer, for reloading thepreviously saved task state and re-sumption of that task. The benefit isthat the supervisor need not providestack space for interrupts that may oc-cur during normal task execution andmay be unrelated to the currently ex-ecuting task.

Instruction Sets

On the MC68020, the RTE instructioncan perform a large number of dis-

(amtinued)

208 BYTE- SEPTEMBER 1986

The computer belowgives you $6000 performance.

The computer abovegives you a $2995 price.

IntroducingtheTeleCAT-286:

No matter how you look at it,now you can have all the powerand speed of the IBM AT-for theprice of a comparably-equippedIBM XT. With the newTeleCAT-286, from TeleVideo.

It starts you off with every-thing you need. Including IBMAT compatibility. 512K RAM.A 20MB hard disk. A 1.2MBfloppy. Plus an Intel 80286 CPU

that runs at either 6 or 8MHzclock speed. All standard.

But we didn't just stop atperformance. We've also designeda complete set of ergonomicfeatures into theTeleCAT-286.Like a high resolution 640 x 400monitor. Sculptured keycapson a high quality keyboard. EvenLEDs right on top of the threecritical locking keys, where theywon't get covered up by overlays.Best of all, you get all this in a

size 28% smaller than the IBM AT.

The newTeleCAT-286.Want to learn more about it? Callus at 1-800-TELECAT, Dept. 114,and we'll tell you the nearestplace you can find one.

Then check out the computerwith performance above your ex-pectations-at a price below them.

©TteleVideo'

Settle for more.

TeleVideo Systems, Inc. 1170 Morse Avenue, Sunnyvale, CA 94088-3568 (408) 745-7760

IBM is a registered trademark of International Business Machines, Inc. inquiry 345 © 1986 TeleVideo Systems, Inc.

MC68000 FAMILY

crete functions (check for dummyframe, change stack pointers, reloadstate); however, this is the same in-struction used on the MC68000,MC68008, MC68010, and MC68012,The function performed by the RTEwill relate to the resources and func-tionality available on the respectiveprocessors. Thus, for the MC68000and MC68008 to return from interruptprocessing or normal exception han-

dling, this instruction simply restoresthe status register and programcounter of the suspended task fromthe supervisory stack pointer, where-as on the MC68010 and MC68012 italso checks the stack format and canreload the more substantial amountof information for the saved internalstate. On all processors, the RTE in-struction performs whatever is neces-sary to return from an exception.

MC68000/00831

16 15 0

A7'SR

VBRSFCDFC

A7"

CAAR

CACR

Interrupt stack pointer

Status register

IV

C68010/012

Vector base register

2

r

Source function code "\

:

Destination function code j

IV

C68020

Master stack pointer

Cache address register

Cache control register

Figure 3: The supervisory programming model.

Table 2: A comparison of supervisory

resources.

MC68000/008

MC68010/012

MC68020

Status register

Hardware trace bits

1

1

2

Supervisor state bit

yes

yes

yes

Interrupt mask bits

3

3

3

Stack pointer select

no

no

yes

Stack pointers

Interrupt stack

yes

yes

yes

Master stack

no

no

yes

Vector base register

no

yes

yes

Cache control registers

no

no

yes

Alternate function codes

no

yes

yes

The instruction set of the base archi-tecture, that of the MC68000, consistsof a set of user-available instructionsand a set of privileged instructions forcontrol of sensitive system resources.The later family MPUs enhanced thisinstruction set (see table 3).

Address Modes

As with the instruction sets, the ad-dress modes are also upwardly com-patible from one family member toanother. All address modes onMC68000 family processors can begenerally divided into four main cate-gories: data, if an address mode mayrefer to data operands; memory, if theaddress mode may be used to referto operands in memory; control, if theprocessor needs absolutely no knowl-edge of the size of the operand priorto calculation of the effective address;and alterable, if the mode may refer towritable operands (see table 4). Sinceit is possible to refer to an alterabledata operand in memory, it followsthat any given mode may be classifiedin more than one category.

The address modes in table 4 areexactly the same for the MC68000,MC68008, MC68010, MC68012, andMC68020 microprocessors. Thesemodes provide a substantial amountof flexibility and power. For instance,the (An)+ and -(An) modes allowfor the maintenance of up to eightstacks per task, a particularly attrac-tive capability in the artificial in-telligence arena. To these modes, theMC68020 adds one more mode:memory indirect. The memory in-direct mode has a large number ofvariations and can best be illustratedby the syntactical expressions

([bdAn],Xn.size*scale,od) and([bd,An,Xn.size*scale],od)

In these new modes, bd and od referto optional sign-extended 8-, 16-, or32-bit base and outer displacements;An, to an optional base addressregister (A0-A7); Xn, to an optionalindex register (D0-D7 or A0-A7); size,how much of the index register is tobe used (16 or 32 bits); and scale, toa scaling factor for the index register(1, 2, 4, or 8).

(continued)

210 BYTE • SEPTEMBER 1986

that's New at

AMERICAN DESIGN COMPONENTS?

"The Source" of theelectro-mechanical componentsfor the hobbyist.

We warehouse 60,000items at AmericanDesign Components — ex-pensive, often hard-to-findcomponents for sale at afraction of their originalcost!

You'll find every part youneed — either brand new,or removed from equipment(RFE1 in excellent condition.But quantities are limited.Order from this ad, or visitour retail showroom and findexactly what you need fromthe thousands of items ondisplay.

OpenMon. - Sat., 9-5

THERE'S NO RISK.

With our full 90-day warranty,any purchase can be returned forany reason for full credit or refund.

19" X-Y

COLOR

DISPLAY

Originally designed for use in Atari coin-operated games. Contains 3-gun colortube, focus and brightness controls. Re-quires external X-Y inputs, 250-0-24Vtransformer for power. May be used foroscilloscopes, reprogrammed for gameuse, or modified with the use of externalvertical and horizontal oscillators to arastor scan display or TV monitor forcomputer use. (IBM compatible.) Trans-former supplied.

Item #5449 $99.00 New

ADAM COMPUTER KIT!

(Less printer & w/o cabinet)

Build it yourself from subassemblies. Nowiring necessary (just plugs together).Hook-up diagram included. Includes:Keyboard, 1 cassette digital data drive, 2game controllers, power supply, allmemory boards, and one cassette. Iscapable of running CP/M, has built-inword processor.Item #7410 $99.00 (complete)

DUAL 3Va " DISK DRIVE EXPANSION MODULES

IBM PC Jr.

Side-by-side mounting (PC Jr.mounts on top). With floppy diskdrive controller board. Contains:2 Tabor TC-500 3 % " disk drives.Total cap. 500K bytes unformatted *

Item #8825 $199.00

"Total capacity IBM unformatted w'"Each unit supplied with two 3V* '

APPLE

Side-by-side mounting with diskstorage space in front. Floppy diskcontroller board capable of hand-ling four disk drives. Contains: 2Tabor TC-500 3V* " disk drives.Total cap. 500K bytes unformatted*Item #8826 $199.00

ith special software,flexible diskettes.

IBM PC/XT

Stacked mounting, replaces old-fashioned 5% " disk drives. Con-tains: 2 Tabor TC-500 354 " diskdrives. Total cap. 500K bytes un-formatted." Plugs right into yourcontroller.Item #8827 $169.00

5V*" DISK DRIVES

96 TPI, DS/QUAD DENSITY

% HTTandon #TM55-4Item #1904 $79.50 ea.2 for $150.00

FULL HT

Tandon #TM101-4Item #1901 $129.00.

STEP UP-DOWNAUTO-TRANSFORMER3.5 KVA

3.5 KVA with taps at: 100-115-120/200-208-220-230 & 240V.Ideal for boosting low line volt-age, or for use in converting 115to 230V and 230 to 115V.Dim.: 7"H x 6"Wx 554" deep.Mfr. - Hyde #3575Item #8006 $69.00 New

MPI 52S (IBM- Compatible)

5V*" FULL HEIGHTDISK DRIVE

Double sided/double density, fullheight drive. 48 T.P.I., 80 tracks.Item #7928 $79.95

2 for $150.00

STEPPING MOTORS for ROBOTICS

Precision ^9-1 V °88P

steppers with

increments from

1 to 7.5 degrees.

Speeds up to

5,000 steps.

Stall Shaft S7,

Item Step Volts Torque x %

No. Angle DC oz/in Type Mfr. & Pan No. Fig Price

5431 1

17

5271 1.8 1.8 150

5275 1.8 1.

PM N.A. PhillipsA82310-M2PM Superior Electric4 0 M091-FD-6009PM Superior Electric

*9.95 ea.2/$14.95$34.50 ea.2/$59.50$19.95 ea.

20 M061-FF-6201B 2/$37.50

IBM FORMAT COMPATIBLE3V*" DISK

DRIVE

Tabor

TC-500

drivette. 14£

Single-sided,

quad density

Capacity:Unformatted-250/500K bytes"Formatted-1 64K bytes.

80 track/140 TPI, based on 16

sectors. Will work with any 5% "

disk controller.

Item #8824 $79.95

"Total cap. 500K bytes with

special software.

115 CFMMUFFIN®FAN 2

SPECIAL! ■—-=*

115 VAC/60 Hz., 21W., 28A.,3100 RPM; 5-blade model, alu-minum housing. Can be mountedfor blowing or exhaust.Dim.: 411/i0"sq. x 17a "deep.

Item #5345 $5.95 RFE

12/24 VDC1" THINMUFFINTYPEFAN

55/100 CFM, 8W. Can bemounted for blowing or exhaust.5 plastic blades with featherededges, aluminum housing. Brush-less, ball-bearing type.Dimen.: 4,1/18" sq. x 1 " deepMfr - Centaur CUDC24K4-601Item #8541 '19.95

PUMPS - COMPRESSORS- BLOWERS - MOTORS - POTENTIOMETERS- COUNTERSTIMERS-RELAYS-VOLTAGE REGULATORS-POWER SUPPLIES

ADAM PRINTER

Complete, less top cover plate.Friction feed. Takes standardpaper 8 '/a " x 11". (Customerreturns: tested — operational.!Item #8839 $69.50

ADAM COMPUTERTAPE DRIVE

Serial format. Search 80IPS -Read/Write 20IPS. 12V motor,5V logic, 8 & 9 pin connectorcables. Originally designed forthe Adam.Dim: 5"W x 3% "H x 4" deep

Item #6641 $9.95 New

48-KEY KEYBOARD

Replace the membrane keyboardonyourTimex/SinclairZ-81 /1000with this brand new "big com-puter" keyboard from Texas In-struments. Simple to install —complete instructions and sche-matic included.Item #6712 $5.95 New

HI-POWER COMPUTERPOWER SUPPLY

+ 5V@20A-12V@.5A+ 12V@4A

Input: 115/230VDimensions: 9% "L x 4%" deepMfr - Power Systems PS 1 554Item #8543 * 19.95

500 VA

MICRO-COMPUTERREGULATOR(Protect Your •Equipment)

AMERICAN DESIGN COMPONENTS, 62 JOSEPH STREET, MOONACHIE, N.J. 07074YESI Please send me the following items: D My check or money order is enclosed.

D Charge my credit card.

□ Visa □ Master Card □ Amex

Card No.

ItemNo.

How

Many?

Description

Price

Total

Output: 120V/60HZ.Input range: 95-1 30V ± 3% Sinusoidolwave output contains less than 3% har-monic distortion. Maintains output addi-tionally + 5%-10% down to 78V input.6 ft. line cord. Input with dual 3-conductor""U" ground output.Dim.: 16%"Lx8J4"Wx7V4"H.Mfr. - Sola #63-13-150.

Item #8007 $199.00 New

Total

Shipping & handling, we ship UPS unless

otherwise specified. Add S3 plus 10% total.

•^Canadian: $3 plus P.O. cost. Charge only.

'00. / Sales Tax (N.J. residents only,

please add 6% of total)

ORDER TOTAL | ^// /nquin-es Bncj free catalog requests call 201-939-2 710.

For all phone orders, ca//TOLL-FREE 800-524-0809. In New Jersey, 201-939-2710.

MINIMUM

ORDER

$15.

Byte-96

Exp. Date

Signature

Telephone: Area Code

Number

Name

Address

City

State

Zip

MC68000 FAMILY

Because the memory indirect modeallows any of the base displacement,base address register, index register,and outer displacement to be op-tional, and allows the index registerto be added to the address calcula-tion either before or after the first ad-dress access (pre- and post-indexing),any conceivable combination of thesemodes is allowed. This includes dis-placed memory indirect ([bd],od),data register indirect (Dn); and reg-

ister doubly indirect ([Rn]).

The addition of these new modes,however, in no way impacts the com-patibility of the earlier modes. Anyaddress mode legal for the MC68000,MC68008, MC68010, and MC68012operates exactly the same on theMC68020.

Virtual Operation

Due to the internal architecture of theprocessors, there are three basic ma-

Table 3: A comparison

of instruction

sets.

MC68000/008

MC68010/012

MC68020

Data movement

7

9

9

Arithmetic/logical

17

17

18

Binary-coded decimal

5

5

7

Single operand

9

9

9

Shift and rotate

8

8

8

Bit manipulations

4

4

4

Bit-field manipulations

0

0

8

Branches (16 conditions)

3

3

3

Exception-related

5

7

8

Control

12

13

20

Coprocessor generic instructionsTotal

0

0

7

70

75

101

Table 4: The base architecture address modes.

Mode

Syntax Data Memory Control Alterable

Data register direct

Dn

Address register direct

An

Address register indirect

(An)

Address register indirect with

(An) +

post-increment

Address register indirect with

-(An)

pre-decrement

Address register indirect with

d(An)

displacement

Address register indirect with

d(An,Rx)

index

Absolute short

xxx.W

Absolute long

xxx. L

PC relative with displacement

d(PC)

PC relative with index

d(PC,Rx)

Immediate

#xxx

Dn refers to any of the eight 32-bit data registers, D0-D7.

An refers to any of the eight 32-bit address registers, A0-A7.

Rx refers to any 32-bit register, D0-D7 or A0-A7

d refers to an 8- or 16-bit sign-extended displacement.

+ , - refer to the automatic post-incrementing/pre-decrementing of the specified ad-dress register by 1, 2, or 4 depending on the size of the target operand (1, 2,or 4 bytes).

chines: the MC68000/008 architec-ture, the MC68010/012 architecture,and the MC68020 architecture. In anutshell, any user-level code writtento execute on the MC68000/008 willexecute unchanged on any of theother processors, and any user-\e\ie\code written to execute on theMC68010/012 will execute unchangedon the MC68020. This upward com-patibility applies even to the binarylevel. The major difference betweenthe processors insofar as exceptionprocessing is concerned is in the stateframe information that is stored as aresult of an exception in support ofvirtual memory and virtual machineoperation.

Virtual memory is a technique thatallows all tasks executing on a pro-cessor to behave as if each had at itsdisposal the entire addressing rangeof the processor, regardless of theamount of physical memory presentin the system. Virtual machine is atechnique in which all processor andsystem resources required by a taskappear to be present, even if not im-plemented. To support the virtualmemory capability, any given instruc-tion must be "abortable" and in somemanner "restartable."

For example, suppose that task A isexecuting a 32-bit memory-to-mem-ory MOVE instruction and the physi-cal piece of memory required for thedestination operand is not currentlyavailable. The fetch of both the in-struction and the source operand aresuccessfully accomplished, but whenthe write to the destination is at-tempted, the memory manager in-dicates a "not-resident" fault bymeans of a bus error or fault line tothe processor. The processor mustthen save the state of task A, find anempty piece of memory (possibly byswapping a currently resident piece toa disk), load the target piece of mem-ory from the disk, restore task A, andallow the MOVE instruction either torestart or complete. So, from the timeof the fault until the completion of theMOVE instruction, task A was not ex-ecuting but has no indication of thisfact.

Although all MC68000 family pro-cessors have the "abort" capability

{continued)

212 BYTE • SEPTEMBER 1986

SAVE k= PRINTERS

NX-10....CALL

STAR MICRONICS

NX-10 (NEW) CALL

NB-15JNEW) CALL

SB-15(NEW) CALL

SG-15 367

SD-10 319

SD-15 438

SR-10 169

SR-15 578

SB-10 589

Powerlype 297

SILVER REED

EXP 420 P 209

EXP 600 P 489

EXP 800 P 649

mm

EPSON

JUKI

Juki 6100

P.S232 Serial Board

6100 Tractor6100 Sheet FeederJuki 6300

SEIKOSHA

SP-1000 VCIC-64)SP-1000 A CentronicsSP-1000 I IBMSP 1000 ASRS-232SP 1000 AP Apple lieBP 5200 I i

SP 1000 ribbon £

BP 5200 ribbon 12

BP-5420

TOSHIBA

PI34Q

P3S1 i

•lii'j1149

BROTHER

f»:mu'

P.'MIS

J.')1 Sheel 1 eerier

969999'>29

HR-15XL-PHR-15XL -S

OKIDATA

Okimale 10

182

192

193

DIABLO

D25 549

D80 1 F 2395

P 32 CO 1 699

P 38 1749

C 150 999

635 1029

C. ITOH

1550 SP. Call

DI040 Call

Prownler Jr Call

Prownler 8510 SPi Call

LEGEND

1080 .....$199

PANASONIC

1080 199

1091 228

1092 3253131 2573151 3991592 4391595 NEW

CITIZEN

MSP-10

268

MSP-15

377

MSP-20

355

MSP-25

528

120-D

195

Premier 35

469

MONITORS

AMDEK

SAKATA

THOMSON

300 Green 118

CM36512V1 269

TEKNIKA

300 Amber 128

SG 1000 12" GreenSA 1000 12" Amber

99109

CM36632 159

MJ-10 175

SG 1500 12" Green TTL

119

MJ-22 250MS-305 RGB NEW

COMMODORE

1902 Color CALL1802 Color CALL

SA 1500 12 Amber TTLSTSl Till stand

12929

PRINCETON GRAPHICS

MAX-12 Amber 175HX-12RGB 458SR-12RGB 575

ZENITH

ZVM 1220 95

ZVM 1230 95

ZVM 1240 149

DISKETTES

MAXELL

SSDD 1199

DSDD 15.99

VERBATIM

5'.i"SSDD 9 99

5 V DSDD 13 99

SUNKYOUNG °>*C NOTCHERS. .S7.95I,

SKC5'V SSDD 1199SKC 5'j" DSDD 13,99

BONUS

SSDD 6 99

DSDD 8 99

MISCELLANEOUS

MODEMS

M

r

US ROBOTICS

Password 1200M 189Password 1200F 229Password 300M 139Password 300F 139Courier 2400 395

HAYES

Smartmodem 300.Smartmodem 1200Smartmodem 1200BSmartmodem 2400

1

133377347598

ARK

ET1

COMPUSERVE.. 18.95

ANCHOR

VolksmodemVolksmodem 12

55179 A

DRIVES

NG

DUST COVERS

PC-AT 2 pc 10.99

PC-XT 2 pc 10.99 Silver quadboard

JOYSTICK Quadboard

Tac 10(Ap/Pc) 22.95

STB AST

EGA Plus 329' Six Pack Plus ...

QUADRAM

Gold quadboard 399

Silver quadboard 229

Quadboard 199

TYMAC

MDD-640 3V

Apple Drive 640K 289

INDUS

GT Atari Call

TANDON

•320K "n la" Drive

COMTEL

Enhancer 2000 (C-64) 155

IBM-PC COMPATABLE

SUBLOGIC (IBM)

Jet Simulator 34 95

Scenery Disks EA 14 95Set 1 -6 .... 69 95

SSI (IBM)

Battle tor Normandy....24.95

Knights of Desert 24.95

Tigers in Snow 24.95

Computer Baseball 24.95

Cartels & Cutthroats 24.95

OP Market Garden 29 95

50 Mission Crush 24.95

BRODERBUND (IBM)

Bank Si Wnler 48 95

The Print Shop 34 95

Graphics Library 1 22 95

Ancient Art ot War 27 95

Champ Lode Runner 22 95

Karateka 22 95

ACTIVISION (IBM) SYNAPSE (IBM)

Borrowed Time .. 24.75 Synstock 6495

Mindshadows 24,75 Essex 2895

Music Studio . 29.95 Wizard ol Wall St 2895

Alter Ego 29.95 Brimstone 2895

TO ORDER

I

CALL TOLL FREE 1-800-233-8760

In PA 717-494-1030

Customer Service 717-494-1670

or send order toLyco ComputerP.O. Box 5088

Jersey Shore, PA17740

RISK FREE POLICY

In-stock items shipped within 24 hours of order. No deposit on COD. orders.Free shipping on prepaid cash orders within the continental U.S. Volundiscounts available. PA residents add sales tax. APO, FPO. and internationalorders add $5.00 plus 3% lor priority mail service. Advertised prices show4% discount for cash, add 4% for MasterCard and Visa. Personal checksrequire 4 weeks' clearance before shipping. Ask about UPS Blue and Redlabel shipping. All merchandise carried under manufacturer's warranty. Fre«catalog with order, All items subject to change without notice,

TOLL FREE 1-800-233-8760

&

co

NS

u

LTANTS

Inquiry 211

MC68000 FAMILY

via the bus error (BERR) input of theprocessors, the MC68000 andMC68008 are not virtual memory pro-cessors and therefore do not have allthe features necessary to support vir-tual memory. Specifically, insufficientinternal processor state information isavailable on receipt of a bus fault toallow recovery of the faulted instruc-tion. The other family members(MC68010, MC68012, and MC68020),

however, save sufficient state informa-tion to allow complete restoration ofthe faulted instruction. The faulted in-struction should be recovered by oneof two methods: instruction restart, inwhich the processor is "backed up"to the start of the instruction thatcaused the fault, or instruction continua-tion, in which the faulted instruction isallowed to complete execution fromthe point of the fault. The choice of

IF YOU STILLUSE PAPER FORMS

TRYFORMMANAGER II!

Name John SmitriAddress 111 Bomd WayGty San FMIKrlGDSlate CA ftp 94111

Prod No

Daicr.flt.on

Pf«W

oir

Total

122-333-33233-33-33

GufgalWhat is Ihal

10

100■10

1000 004000

1040 00

MEET FORMMANAGER II. It canhelp automate your paper office.More than a data manager, Form-Manager II lets you generate formsand organize them easily. You simplylay out your forms on the screen andfill in the data. FormManager II cancalculate the tax due, total amount oreven set up conditional calculations.More than 26 mathematical functionsare included.

FormManager II can print on pre-printed forms or just print on anyplain paper. With a laser printer, youcan even use different fonts on thesame page.

HERE ARE SOME HIGHLIGHTS:

• Generate or use dBase III™ data files.

• Lay out forms on the screen withForms Editor.

• Use the cursor keys to move from fieldto field.

• Fill in data easily with error checking.

• Print on pre-printed forms.

• Print on any plain paper with linesand boxes.

• Sort, search and modify any datarecords easily.

• Do complex calculation or evenconditional statements.

• Report writer summarizes all yourrecords.

SPECIAL LIMITED TIME OFFER ONLY $99Attention, MS FORTRAN, PASCAL, C Programmers,

Forms Designer programming tool can save you time and effort producingprofessional screen forms. Don't struggle with the formatted I/O for screendata entry. Just use our Forms Editor to lay out the forms and call ourlibrary routines to do the job.

Comes with Forms Editor, runtime library, sample programs and librarysource code for PASCAL and C.

To Order Call408-262-1054

dBase III is a trademark of AshtonTate. Inc.KormManager and Korms Designer are trader

Only $275.

urks cif HIT Software, I nc.

w

BIT Software, Inc.

P.O. Box 360619Milpitas, CA 95035

method may seem to be a matter ofcomputer science dogma, but actuallyit is of practical importance. Theadvanced address modes on theMC68000 family and the desire toprotect the user from "processorthrashing" caused the designers ofthe MC68000 family to choose the in-struction continuation method.

INSTRUCTION CONTINUATION

Processor thrashing can be a very de-bilitating problem for virtual memorysystems. The example used above canalso be used to illustrate this problem.In the example, it was assumed thatthe op code and source operandfetches occurred without incident, buta fault was taken on the operandwrite. Since most memory replace-ment algorithms look for unmodifiedsegments to be swapped out (be-cause these segments don't need tobe written to a disk prior to releasingthe memory space), a good candidatecan be the page containing the sourceoperand. If this segment is chosen tobe swapped with the destinationpage, then when the instruction isrestarted (rather than continued), theinstruction will once again fault—thistime for the fetch of the sourceoperand. Thrashing has now begun,with the source and destination areascontinually being swapped with oneanother (since no writes to memorywill ever occur), and the instructionwill never complete. Some replace-ment algorithms also factor the "age"of an area into the selection process,so the thrashing will normally belimited to two restarts. However, mostoperating systems will dispatch a newtask while waiting for the disk sub-system to fill the requested area, andtherefore the newly filled area will be"aged" somewhat by the time it finallygets used. Instruction continuation,utilized by the MC68010, MC680I2,and MC68020, completely alleviatesthis problem because once an areahas been successfully accessed, it isnever needed again by that instruc-tion.

Due to the virtual requirements andthe need to accomplish this virtualitywithout massive operating systemcode, the MC68010, MC68012, andMC68020 have larger stack frames

214 BYTE • SEPTEMBER 1986

Inquiry 41

MC68000 FAMILY

associated with the bus error excep-tions (see figure 4). On the MC68000/008 processors, very little informationmust be saved for bus errors becausethe MPUs accommodate system faultsrather than virtual faults. TheMC68010/012/020 processors, on theother hand, save more internal infor-mation in support of instruction con-tinuation. These variances in stackframes are buried in the exceptionhandlers operating in the supervisorymode of an operating system. Onlythose exception handlers that dealwith the maintenance of the super-visory stack or expect values atspecific offsets on the supervisory

stack are affected by the stack dif-ferences.

Thus, any exception handler codethat is written to execute on one pro-cessor will require only minor or nochanges to execute on another familymember processor. These softwarechanges are a normal part of up-grading a system, since memory man-agement systems are typically up-graded from one system to the next—particularly when going from a non-virtual memory environment to a vir-tual memory environment. However,the specific type of memory manage-ment implemented has no bearing onthe compatibility, since the processor

The instruction

continuation methodprotects the user fromprocessor thrashing.

itself is not affected by the memorymanagement scheme chosen.

Physical Bus Interface

All members of the MC68000 familyuse the same simple asynchronous

(continued)

Lower Address

MC68000/008

MC68010/012

MC68020

Special Status Word

Status Register

Status Register

Access Address

Program Counter

Program Counter

Instruction Register

Vector Offset Word

Vector Offset Word

Status Register

Special Status Word

Internal Register

Program Counter

Fault Address

Special Status Word

Instruction Pipe Stage C

Unused (Reserved)

Instruction Pipe Stage B

Data Output Buffer

Data Cycle Fault Address

Unused (Reserved)

Data Input Buffer

Internal State(6 words)

Unused (Reserved)

Stage B Address

Instruction Input Buffer

Internal State(2 words)

Internal State(16 words)

Data Output Buffer —

Data Input Buffer .

Internal Registers(20 words)

Figure 4: Bus error stack frames.

SEPTEMBER I986 -BYTE 215

Inquiry 121

68000 Reasonsto upgradeYour Apple II...

Transform your Apple II, 11+ or Apple lieinto a powerful 32-bit supermicro. Simplyplug in a PDQ 68000 coprocessor andPDQ highspeed RAM card; ProDOS andDOS acceleration and utility software isincluded.

the PDQSuper-32 System

The Highest PerformanceApple II68000 Coprocessor

Boosts Apple II Performance

PDQ's Applesoft acceleration is compat-ible with most off-the-shelf ProDOS andDOS Basic software, such as BPI GeneralAccounting. PDQ's lightning-fast diskemulation results in dramatic perfor-mance improvements with Appleworksand other popular programs. ProDOSapplications can use PDQ's time anddate functions. And PDQ's printerbuffering allows printing to occur whilethe Apple is free to perform another task.

Hosts Advanced 32-bit Software

In addition to enhancing standard Applesoftware, the PDQ System also providesaccess to a multitude of 68000-specificapplications. Optional applications in-clude CP/M 68K with C, the UCSD 68000PASCAL System, 68000 FORTH,FORTRAN and LISP, and many others.PDQ'S 68000 Macroassembler/Editor isan integrated 68000 development system.

In Use Worldwide

ETC has been shipping advanced 68000products for the Apple II since 1983. Noother company offers a more complete,proven family of 68000 products.

Products with Integrity

• 15 day money back guarantee

• 5 year parts warranty, 1 year labor

• PDQ RAM cards include PDQBASIC,PDQRAM and PDQSPOOL software

PDQ 10Mhz 68000 Coprocessor $449.

PDQ 256K RAM Card option $169.

PDQ 1MEG RAM Card option $399.

PDQ 2MEG RAM Card option $729.

PDQ Macroassembler/Editor * $ 99.

PDQBASIC+68000 Compiler* $ 79.

UCSD 68000 PASCAL System * $ 99.

CP/M 68K with C language * $290.('requires 256K minimum PDQ memory)

Order your PDQ Super-32 System today

by calling Enhancement Technology, or

send your check or money order to

Enhancement Technology Corporation

P.O. Box 1267

Pittsfield, Massachusetts 01201

MC68000 FAMILY

(413) 445-4219

L*Z ENHANCE»*NT■ TEONOLOGY™ CORPORATION

Advanced 68000 coprocessors

216 B Y T E • SEPTEMBER 1986

T/ieMC68010/012implemented the loopmode and support forprogram breakpoints.

bus interface to the outside world. Onan asynchronous bus, the processorstarts the bus cycle, and the externalworld controls the length of this cy-cle. Because of this, each portion ofthe memory subsystem (includingmemory-mapped peripherals) can re-spond to the bus cycle in its own op-timum amount of time. The basic sig-nals for the MC68000 data transferbus are address strobe (AS), which in-dicates valid addresses; data strobe(DS), which indicates valid data dur-ing a write cycle; and data transferacknowledge (DTACK), which is theexternal handshake signal used tocause the termination of a bus cycle.These signals are present in one formor another on all of the processors(see table 5).

The MC68000/010/012 processorsuse two data strobes (upper and lowerdata strobes, UDS/LDS), which act asbyte selects to the memory subsys-tem, whereas the MC68008/020 pro-cessors use only a single data strobe.The MC68008, with its 8-bit data bus,doesn't need byte selects and re-quires only a single data strobe. TheMC68020, due to the presence of theencoded operand size pins (SIZ0/1)also requires only a single pin. Theoperand size pins communicate tothe external world the size of theoperand remaining to be transferredby the MC68020's internal bus con-troller. Because of the hardware con-vention employed, these operand size

pins may be combined with the low-order two address bits to generate theneeded byte selects. The MC68020dynamic bus sizing feature, which isenabled by encoding the data trans-fer acknowledge signals (DSACK0/1),allows the memory port size tochange from 8 to 16 to 32 bits on abus-cycle-by-bus-cycle basis (with oneundefined-reserved encoding). Also,the MC68020 supports operand mis-alignment to the byte level.

The major difference in the externalbus cycles is that the MC68000/008/010/012 execute a minimum bus cy-cle in four clock cycles, while theMC68020 executes its minimum cyclein only three clock cycles (see figures5 and 6). Because of the asyn-chronous nature of the bus, it is a sim-ple matter to mount an MC68020 onan adapter board that is plug-com-patible with any other of the MPUs,and the MC68020 can be pluggedinto an MC68000, MC68008,MC68010, or MC68012 socket andcan operate the bus of an existing sys-tem. Thus, hardware compatibility ismaintained within the family, and anyperipheral device that works with anMC68000 also works with any of theother family members.

Specific FamilyEnhancements

Aside from the MC68010 architec-ture's support of virtual memory andvirtual machines, the MC68010/012also implemented a form of cachingcalled "loop mode" to assist in the ex-ecution of repetitive functions such asblock moves and string operations.This loop mode allows certain codesequences to be latched in the pro-cessor's internal pipeline, thus allow-ing two-clock-cycle accesses of theinstructions—a 50 percent savings-while at the same time freeing band-

Table 5: Transfer bus signals.

Signal Name

Function MC68000

MC68008

MC68010/012

MC68020

Address strobe ASData strobe UDS/LDSData transfer acknowledge DTACKOperand size n/a

ASDS

DTACKn/a

AS

UDS/LDSDTACK

n/a

AS

DS

DSACKO/1

SIZ0/1

MC68000 FAMILY

width on the external data transferbus. The sequences are composed ofa 2-byte instruction, such as MOVE orADD, which is followed immediatelyby a decrement and branch on con-dition (DBcc) instruction back to the2-byte instruction. When the pro-cessor recognizes this sequence, itsimply recycles the instructions andperforms only data accesses to theoutside world until the loop isterminated.

In addition to the loop mode, theMC68010/012 implemented specialsupport for program breakpoints.Here, the recognition of a breakpointbit pattern (one of eight specific illegalinstruction encodings) causes the pro-cessor to execute a specific CPUspace bus cycle during the exceptionprocessing for the illegal bit patternto indicate that a breakpoint has beenreached.

The MC68020 takes both of thesefeatures (loop mode and breakpoints)one step farther. The MC68020 has anon-chip 256-byte instruction cache,which increases overall processor per-formance from 40 percent to 80 per-cent, depending on the locality ofreference exhibited by the code be-ing executed. Code showing the great-est locality of reference (e.g., shortloops) will show the greatest perfor-mance improvement by turning onthe cache, while code that exhibitsless (or no) locality of reference (longloops or in-line code) will show less(or no) performance increase. Thecache is implemented on theMC68020 as a direct-mapped 64-en-try by 3 2-bit cache. The supervisoryprogrammer has control over this newresource by means of the cache con-trol register.

The MC68020 enhancements to theMC68010 breakpoint function notonly cause the processor to run thebreakpoint acknowledge bus cyclejust as before but also allow externalhardware to supply a 16-bit instruc-tion op code to be executed in placeof taking the illegal instruction trap.This means that the MPU can executethe breakpoint a fixed number oftimes, substituting the replacementop code each time through the loopuntil the count expires and the break-point halts the loop.

SO S1 S2 S3 S4 S5 S6 S7

AddressFC0-FC2 X

AS

DS

R/W

DTACK

Data

\

Figure 5: The READ bus cycle for the MC68000, MC68008, MC68010,and MC68012.

SO

\

S1

/

S2 S3\

/

S4

S5\

J \_J~

A0-A31

FC0-FC2

SIZEO/1

XXX

x

X

x

\\

AS

/

/

DSR/W

/

~A

DSACKO/1

\

/

D0-D31

X

x

Figure 6: The READ bus cycle for the MC68020.

The MC68020 is the first processorin the family to offer inherent supportfor coprocessors. This coprocessor in-terface allows any coprocessor devel-oped for the MC68020 also to beused on any other of the family mem-bers. This is accomplished by makingthe maintenance of the coprocessorinterface reliant on standard read/write bus cycles. Because the interfaceis generic in nature, new processordesigns will not require reworking

existing coprocessors, and new co-processor designs will not requirereworking existing processors. In fact,the coprocessor interface gives usersof the microprocessor an opportunityto develop their own custom copro-cessors.

The extensibility offered by the co-processor interface is one of the mostpowerful features of the MC68000family architecture. Both the pro-

(continued)

SEPTEMBER 1986 -BYTE 217

MC68000 FAMILY

The MC68020includes microcodesupport for accesspermission levels.

cessor and coprocessor share in themaintenance of the interface, witheach performing those chores forwhich it is best suited: The processorfeeds commands to the coprocessor,transfers data, and calculates effectiveaddresses, and the coprocessor per-forms its own specialized functions,be that floating-point mathematics,robotics control, Fourier transforms,graphics functions, or anything else.While the MC68020 offers implicitmicrocode support for the copro-cessor interface, emulation of the in-terface protocol allows coprocessorsdeveloped specifically for the

MC68020 to be used as memory-mapped coprocessors (as opposed toCPU-mapped) on the MC68000 andMC68008 or as either memory-mapped or CPU-mapped coproces-sors on the MC68010 and MC68012.

The MC68020 also includes micro-code support for access permissionlevels, allowing an operating system(in conjunction with external hard-ware) to support much finer granulari-ty of permission levels than just userversus supervisory. This feature cansupport up to 256 levels of permis-sion. A new memory managementdevice, the MC68851, provides thehardware to support eight simulta-neous breakpoints (with loop countsup to 2 56) and up to eight levels ofaccess permission.

In addition, the MC68020 has full32-bit ALUs and a 32-bit barrel shifterfor improved performance on arith-metic, logical, and bit-field instruc-tions. A restructured instruction pipe-line with an intelligent, decoupled bus

controller allows a high degree of con-currency in instruction execution withexternal bus activity.

Conclusions

In the final analysis, the name of thegame is compatibility. And the bot-tom line of compatibility betweenmembers of the MC68000 familyshows that, for user code, all familymembers are 100 percent upwardlycompatible for object code, whilesupervisory-level code only requireschanges in supervisory-level excep-tion handlers that use specific infor-mation on the supervisory stacks.Hardware compatibility is also good.In fact, an MC68010 can be directlyinserted into an MC68000 socket, andan MC68020 could also be used withthe appropriate adapter board.

The MC68000 family provides notonly high performance in a commer-cial microprocessor, but also com-patibility, protecting the user's soft-ware investment. ■

This is all it takes to get IBM. Apple,Tand>5Macintosh and Compaq talking to each other.

And it's simple and inexpensive.

office can create its own high micros and peripherals, in the

speed, error-free GridNet™... same network. Freely sharing

instantly! There's no need to data, with complete connectivity

purchase special system software, and effective compatibility.And there's none of the expense The cost? As much as 60%

and inconvenience of installing below that of specially-wired

additional wiring. Because a systems.

GridNet™ utilizes your existing Find out just how easy it is

electrical grid as a highly-effective to increase your office's produc-

data transmission medium. tivity. See your local dealer, or

And a GridNet™ will sup- contact "The Great Communica-

port IBM PC, XT, AT, and all IBM tor" for more informationcompatibles, Apple and Macintosh,Hewlett-Packard, Tandy, AT&T,Epson, NEC.. .all the most popular

TM

Now a powerful GridNetLocal Computer Communica-tions Network is as close as yournearest electrical outlet.

Thanks to GridComm'sCommunicators, virtually any

i r #■■ ■»

rrrr

WW i t I i

TK GREAT CDMVUNKATOR

For information call 203-790-9077. P.O. Box 2779, Danbury, Connecticut 06813-2779

Trademarks: IBM, PC. XT. AT/lnternational Business Machines Corp.- Apple/Apple Computer Inc.- Macintosh/Mcintosh Laboratory Inc -Tandy/Tandy Corp-Compaq/Compaq Computer Corp.Hewlett-Packard/Hewlett-Packard Co -Epson/Epson America Inc -A'MVAmcncan Telephone and Telegraph Co -NEC/NEC Home Electronics (U.S.A.! Inc

218 BYTE • SEPTEMBER 1986

Inquiry 148

PLUB-IN CARDGIVES YOUPLUG-INCONTROL.

PCO0488 allows your IBM PC/XT/AT or compatible to control IEEE-488 instruments.

WHAT ADDITIONAL SOFTWAREDO I HAVE TO BUY?

None. PC00488 supports all pop-ular programming languagesincluding interpreted andcompiled BASIC, TBASICMicrosoft® Pascal, TurboPascal, C, and FORTRANYou can use Tektronix®Standard Codes andFormats and emulateHP control lerstatemPC<&488 also runsIEEE-488 softwariapplication program

IS If DIFFICULT TO USE?

You just plug it in. PC<$488 is totally self-contairlwith all software packaged in read only memory.Documentation includes a complete tutorial andprogramming reference, plus more than thirtyapplication programs.

WILL IT WORK WITH ALL MY INSTRUMENTS?

You bet! More than 500 companies,including every major instrumentmanufacturer in the U.S. andEurope, are currently usingPC00488.

That's the best part. PC<$488 costs just $395including software support for all popular pro-gramming languages, extensive applications_, library, and the programming and refer-ence manual. Order today by calling(617) 273-1818 or Telex 247316.

oec

Capital Equipment Corporation

10 Evergreen Ave., Burlington, MA 01803.

(617)273-1818, Telex 247316.

Inquiry 59

SEPTEMBER 1986 -BYTE 219

i

POWERLUNCH.

CaC

Computers and Communications

Introducing the new power in AT-dass personal computers. The NECAdvanced Personal Computer IV.

You're very serious about personal computers. You'd rather workthrough lunch than sit in some lazy cafe.

You're a Power User. And the NEC APCIV™ is the one machine thatwon't leave you power hungry.

It's built for compatibility and speed, with your choice of 6 MHz or8MHz processing speeds at the flick of a switch.

It's built for looks, with an incredible 800 x 560 screen resolution.

And it's built for power, with 5 versatile internal storage slots to accom-modate two 1.2 MB floppies, two 40 MB hard disks, and a tape back upallowing you the flexibility to tailor the APCIV to your storage requirements.

Plus, the APC IV has the power of NEC behind it. The $ 10 billion leader incomputers and communications. So you never have to worry about support.

The new NEC APC IV. Because sooner or later, you're going to have totake it to the limit. For more information, call NEC at 1-800-343-4419(in MA 617-264-8635). NEC Information Systems, Inc., Dept. 1610, 1414Massachusetts Avenue, Boxborough, MA 01719.

NEC

Inquiry 253

Actually, we give you two things free.

Our source code. And your freedom.

Just buy part or all of our excellent integratedbusiness accounting system, the SBT DatabaseAccounting Library.

Well give you our source code absolutely free.

Which, in turn, gives you the freedom tocustomize our software to fit your business needs.

Say, for instance, you want to change theway a management report is formatted. Our freesource code enables you to change it.

What's more, the change will be quick andsimple because our software is written in easy-to-use dBASE.

In fact, the entire SBT Database AccountingLibrary runs with dBASE III or dBASE II, * so youget the power and flexibility of those best-sellingprograms. Plus the freedom to use any computerthat runs dBASE.

The SBT Database Accounting Library.Great software and freedom. All in the same box.

Call today for our demo disk and brochure.

(415) 331-9900.

THE SBT DATABASE ACCOUNTING LIBRARY.

dProfessional

Time & Billing

$395

dOrder

Sales Order processing

$195

dlnvoice

Billing/Inventory Control

$195

dStatement

Accounts Receivable

$ 95

dPurchase

Purchase Order

$195

dPayable

Accounts Payable

$295

dPayroll

Payroll/Labor

$395

dLedger

General Ledger/Finance

$395

d Assets

Asset /Depreciation

$295

dProject

Project/Job Accounting

$395

dProperty

Tenant/Unit Management

$395

dBackup

Menu/Backup

$ 65

MultiNet versions additional $200 per module

SBT

BSEBSBiBgl

Three Harbor DriveSausalito,CA 94965(415)331-9900

Call today for the name of the SBT consultantin your area.

Free source codein every box.

Compiled and Multi-User versions also available. dBASE III and dBASE II are registered trademarks of AshtonTate, Inc. Copyright 1985, SBT Corporation.

222 BYTE • SEPTEMBER 1986

Inquiry 302

68000 MACHINES

ATARI ST

SOFTWARE

DEVELOPMENT

by Michael Rothman

A survey of the TOS operating systemthat comes with the Atari ST

THE ATARI ST is one of severalrecently introduced microcomputersthat use the Motorola MC68000microprocessor. In this article I'lldescribe the organization of the ST'soperating system, called TOS, andshow some ways the 68000 influencesit. TOS is approximately 200K bytes.Its organization is somewhat confus-ing because it has three parts that par-tially overlap in functionality. The twomain parts, GEM (Graphics Environ-ment Manager) and XBIOS (ExtendedBIOS), were originally designed in-dependently and have somewhat dif-ferent purposes. GEM, a completeoperating system developed by DigitalResearch, is meant to support applica-tions that are portable to other ma-chines (at this writing, GEM has alsobeen implemented on the IBM PCand compatibles).

The Atari-written XBIOS is meant tosupport ST-specific capabilities not ac-cessible through GEM. For example,the ST's sound chip can be accessedonly through the XBIOS. But in somecases, the differences between GEMfunctions and XBIOS functions aresubtle. (For example, GEM and the

XBIOS each have a function to reador write sectors to devices. The XBIOSfunction assumes the actual ST diskand is knowledgeable about itsphysical characteristics; the GEMfunction supports a number ofdevices that are logically but notphysically similar.)

The third part of TOS, the Atari-written Line A Handler, overlapsalmost entirely with the graphics rou-tines of GEM—indeed, GEM graphicsroutines call the Line A Handler to dotheir work. The Line A Handler will letprogrammers write faster graphicsroutines than with GEM.

I've organized this article aroundthe various parts of TOS, which meansthat you will sometimes encountersimilar functionality discussed in twodifferent places. (See figure I.)

GEM

Most people probably identify GEMwith the icons, menus, and windowsof the GEM user interface, called theDesktop. The Desktop, however, is nottechnically part of the operating sys-tem. It is an application, automatical-ly invoked by the operating system

after the system boots.

GEM includes the GEM disk oper-ating system (GEMDOS), the GEM Vir-tual Device Interface (the VDI—apowerful set of graphics routines), andthe GEM Application EnvironmentServices (the AES—a selection of spe-cial libraries designed to support thedistinctive GEM user interface).

GEMDOS

GEMDOS contains the basic input/output system (BIOS), a disk filehandler, and a number of functions tosupport peripheral devices, memoryallocation, and the system clock. TheBIOS handles low-level character I/Oto five different devices: the printer,an auxiliary device (the RS-232C port),the console, a MIDI port for use withmusic synthesizers, and the keyboard.The routines read or write a singlecharacter to these devices or returnstatus information.

[continued]Michael Rothman is the manager of softwaredevelopment at Spinnaker Software (1 Ken-dall Square. Cambridge, MA 02139). Hehas been programming tools for microcom-puters since 1979.

SEPTEMBER 1986 -BYTE 223

ATARI ST SOFTWARE

The BIOS contains a single routineto read and write to appropriatedevices on a sector basis (i.e., floppies,hard disks, networks). Two routinesdetect whether media in such deviceshave changed and return a map of thedevices actually present.

Another routine returns a pointer tothe BIOS parameter block (BPB) for aparticular drive. The BPB is a block onthe disk containing certain disk pa-rameters, such as the number of bytesper sector or the number of directoryentries. It is loaded into RAM whenthe disk is first accessed. The ST BPBis software-compatible with an MS-DOS BPB, right down to the 16-bitquantities in the BPB, which are writ-ten in low-byte, high-byte order—8086style! (The 68000 orders quantitieswith the high byte in the lowest mem-ory address.) Using the 8086's order-ing of the 16-bit quantities in the BPBwas presumably done to make port-ing GEMDOS from the 8086 to the68000 easier.

Finally, the BIOS contains a routineto set the 68000's exception vectorsin the low end of memory, a routinethat returns the system timer value,and a routine to set or get the stateof Shift and Control keys on the key-board and the mouse buttons.

The File Handler

GEMDOS supports a hierarchical filesystem similar to that of MS-DOS. Thefile-handling functions are

• Create, open, read, write, seek in,close file.

• Get, set file attributes.

• Create, delete, get, or set a sub-directory.

• Get disk free space.

• Directory search, file rename.

The Rest of GEMDOS

The remaining GEMDOS functions letyou

• Handle character I/O on the stan-dard input and output.

• Check the status of a peripheraldevice.

• Get and set time and date.

• Terminate an application.

• Allocate or deallocate a memoryblock.

The Virtual Device Interface

GEM's graphics routines, known col-lectively as the VDI, provide a sys-tematic way to handle a large numberof graphics primitives in a device-independent fashion.

Graphics primitives are drawn bysoftware that is tuned to the particularhardware at hand. The software doesnot simply move a prestored block ofpixel data into memory; instead, ittakes a mathematically described no-tion, like a circle with a diameter x,and calculates what pixels to change.Thus, if the lower-level software isproperly written, closely equivalentresults can be produced on differentdevices.

A wide variety of primitives havebeen defined in the VDI, and you caninstruct the software to draw themwith various attributes by using theportable VDI routines (the portableportion is sometimes called the

T0S consists of:

GEM consists of:

GEMDOS consists of:

BIOS

Disk File Handler

Various System Functions

Virtual Device Interface (VDI)

Application Environment Services

(AES)

XBIOS

Line A Handler

i

Figure 1: Organization of TOS. GEM is an operating system in its own right,written by Digital Research and implemented across other machines such as IBM PCsand compatibles. The XBIOS and Line A Handler parts of TOS were writtenspecifically for the Atari ST and provide faster and in some cases the only accessto the capabilities of the ST.

Graphics Device Operating System, orGDOS). A number of device drivershave been written to support theprimitives across several devices.

The VDI routines can "think" ineither raster coordinates (RC) or nor-malized device coordinates (NDC).The raster coordinate system cor-responds to the actual target's screenresolution. Thus, if you are working onthe ST in its highest resolution, 640by 400, you can call the VDI routinesto place and size objects in terms ofthis resolution. Alternatively, you canuse normalized device coordinates,which are always 0 to 32,767 in bothdirections, and the software will ad-just for the particular device. Thetrade-off for the additional portabili-ty is that the software must do a trans-form on the object being drawn. TheNDC space origin also differs from RCspace in that it starts in the lower leftcorner rather than in the upper leftcorner of the device.

Writing an Application Usingthe VDI

The first step in using the VDI is tospecify the devices for graphics out-put. An application must always callthe Open Workstation routine foreach graphics device that the VDIroutines will subsequently manipu-late. This function takes an array con-taining the user's requested defaultsfor graphics characteristics such asline style, color, character size, fillcolor, and so on. It is here thedeveloper also specifies the choice ofNDC or RC coordinates.

In addition to a device identifier(handle), the routine passes back twolarge arrays (combined into one in theC language binding) that tell you thedevice's characteristics (e.g., thenumber of colors it supports and thesize of its pixels in microns) and whatVDI functions and attributes itsupports.

For convenience, the VDI also pro-vides the ability to open virtual screenworkstations so that you can maintainseveral different sets of default char-acteristics for the screen device. Eachof these workstations is attached tothe real screen: Just change which oneyou specify in your subsequent VDI

{continued)

224 BYTE • SEPTEMBER 1986

^-"^ MASTER THE NEW ELECTRONICS WITH McGRAW-HILL'S

CbntempoiaiyHectonlcs Series

The fast, easy and low cost way to

meet the challenges of today's

electronic innovations. A unique

learning series that's as innovative as

the circuitry it explains, as

fascinating as the experiments you

build and explore.

From digital logic to the latest32-bit microprocessor, the McGraw-Hill Contemporary Electronics Seriesputs you into the electronic pictureone easy step at a time. Fifteenunique Concept Modules, sent to youone every 4-6 weeks, give you ahandle on subjects like optoelec-tronics, robotics, integrated circuits,lasers, fiber optics and more.

Each Concept Module goesright to the heart of the matter.You waste no time on extraneousmaterial or outdated history. It's afast, efficient, and lively learningexperience.. .a non-traditionalapproach to the most modern ofsubject matter.

Unique Interactive Instruction

With each module, you receivea McGraw-Hill Action AudioCassette. Each tape is a dynamicdiscussion that drives home the keyfacts about the subject. Your learning

experience is reinforced throughinteraction with vividly illustratedtext, audio cassettes, and actualelectronic experiments. Indexedbinders preserve backup material,notes, and tapes for convenientreferral.

PerformExperimentsin Contemporary Electronics

Throughout your series, lab-oratory experiments reinforce everysignificant point. Thisessential experience.. .dynamic, hands-ondemonstrations oftheory in practice...will help you masterprinciples that apply allthe way up to tomorrow's ^latest VLSI (Very LargeScale Integrated) circuitry.

In your very first module, you'lluse integrated circuits to build a digitaloscillator, verifying its operation witha light emitting diode (LED). You'lllearn to identify passive and activecomponents, understand conceptscommon to all electronic circuits.

For Anyone Interested in Electronics

The Contemporary ElectronicsSeries is designed for anyone fromhobbyist to professional. It's for youif you're looking for new fields ofinterest.. .if you're a teacher who

wantsan update in con-temporary circuits.. .amanager or supervisor in an electronicsplant.. .a doctor, an engineer, a chemistwho finds electronics playing anincreasingly important role in yourwork. It's even for electronics engineersor technicians who feel their trainingneeds freshening up. It's the quickest,most convenient,probably leastexpensive way todoit. And theonly one that givesyou hands-onexperience.

15-Day No-Risk Trial

To order your first module with-out risk, send the postage-paid cardtoday. Examine it for 15 days underthe terms of the order form and seehow the Contemporary ElectronicsSeries gets you into today's electronics.If card has been used, write us forordering information.

m

McGraw-Hill

Continuing Education Center

3939 Wisconsin Ave.Washington, D.C. 20016

SEPTEMBER 1986 -BYTE 225

ATARI ST SOFTWARE

routine, and the defaults will changeappropriately.

The VD1 functions themselves aretoo numerous to describe in detail,but most of them can be consideredunder three headings: graphics primi-tives, attribute functions, and textfunctions.

Graphics Primitives

You can draw graphics primitives,such as a square, a polyline, or arounded rectangle, after specifyingthe appropriate attributes for each.Size and endpoints are defined in thechosen coordinate system and passedto the routine. Several of the primi-tives have their own routines, butmost of them are grouped under theGeneralized Drawing Primitive func-tion. Primitives can be grouped toform more complex objects, and so-phisticated graphics can thus be built.The primitives supported on the STare

Polyline: Draws straight lines connect-ing endpoints defined in an arraypassed to the routine.Polymarker. Only the endpoints aredrawn, and several different graphics(markers) are available to representthose points.

Text: Note for novice programmers:isn't it nice to know you have beenusing a graphics primitive all along?Filled area: The area is a complexpolygon, again specified in an inputarray.

Contour fill: A seed fill.Generalized Drawing Primitive: The GDPis a single entry point for the follow-ing primitives: bar, circle, arc, pie,ellipse, elliptical arc, elliptical pie,rounded rectangle, and filled roundedrectangle. If you are programming inC with the Atari-supplied developer'spackage, these are bound as separatefunctions.

lustified text: Can be justified left orright.

Attribute Functions

The attribute functions of the VDI ma-nipulate characteristics of the graphicsprimitives. The developer can setcolor for both fills and lines. Thepolyline width is variable, as are thetype of line (e.g., dashes or dots can

be substituted for a solid line) and theend type (arrow, squared, orrounded). The polymarker function,which essentially lets you draw aconnect-the-dots figure, is supportedby an attribute function to change thetype of "dot" or marker.

One of the most important attri-butes that can be set is the writingmode. This determines the relation-ship of a new image to the raster areait overlays. When you draw a newgraphic, whatever the method, youcan think of it as a mask of Is and Oslaid over the display. Each corre-sponding pixel on the device will beaffected. In the simplest case (thereplace mode), each pixel under a 1on the mask is set to the currentlyselected color for that type of primi-tive, and each pixel under a 0 is setto the current background color. Butthe developer can also choose one ofthree other modes. In transparentmode, only the pixels under Is arechanged. In reverse transparent, on-ly the pixels under Os are changed.And in XOR mode the mask value isexclusive-ORed with the value on thedisplay. (Twelve additional modes areavailable through the Line A Handler,described below.)

All the attribute functions take effectfor all subsequent relevant graphicoperations, until the developerchanges the attributes once again.

Text Functions

The VDI provides two ways to handletext. One is an Alpha mode with itsown set of functions, which on the STimplements an 80-column by 2 5-rowtext mode (in high and medium reso-lution). Alpha mode is not compati-ble with most of the other VDI func-tions: that is, you cannot display othergraphics with text in this mode.

Much more interesting is text han-dling within the normal graphicsmode, where text and graphics can becompletely intermixed. The VDI sup-ports two basic text output functions(regular and justified) and a sophisti-cated set of attributes, including multi-ple fonts (two are built into the ST,more have been developed by thirdparties). The developer can changethe character height absolutely (interms of the chosen graphics coor-

dinate system) or in "points," the sys-tem used in print shops. The baselineof the character can be set at variousangles (thus allowing rotated charac-ters—on the ST, only multiples of 90-degree rotation are supported). Andthe characters can be thickened,skewed, underlined, outlined, orshadowed. In addition, text attributesinclude the standard VDI character-istics such as color and write mode.

The GEM ApplicationEnvironment Services

The AES is an umbrella name forseveral libraries of routines, most ofwhich implement various data ab-stractions for the developer. That is,some of these "services" gather to-gether functionality available else-where in GEM to express useful con-cepts, such as windows or events.

But the AES also includes the partof GEM that manages the interactionbetween application and certain sys-tem capabilities that run concurrent-ly. As a developer, you rarely need tothink about this limited multitasking,precisely because it is limited andexists mainly to service system needs.Those needs are the desk accessoriesand the Screen Manager.

GEM supports several desk acces-sories: tasks that are selected by theuser from drop-down menus, each ofwhich occupies its own window. It alsosupports the Screen Manager, an ap-plication that runs concurrently withwhatever else is going on and moni-tors user interaction with the menusand window borders.

The AES functions also comprise anevent library, a window manager,several libraries for managing certaingraphic data structures, a scraplibrary, a shell library, and a resourcelibrary.

The Event Library

Macintosh developers will be familiarwith the concept of an event manager.On that machine, the ideal programis seen as a loop. During each passthrough the loop, the Mac waits forany one of several "events" specifiedby the developer, usually keyboardactivity or mouse movement/selec-tion, responds appropriately, and

(continued)

226 BYTE • SEPTEMBER 1986

Withone Hayes Transet 1000*you can do three things at once

HI-

1IANSET 1000

!) Hayes*

I ROY I RPY IPWR MRK A

SELECT MARK HEPLAV

Think Communicate Print

You can keep workingwith your computer.

© 1986 Hayes Microcomputer Products, Inc.

We call it triple tasking™ Transet1000 helps your productivity, byallowing you to perform threeseparate computer tasks. Simul-taneously. No more waiting forone task to be completed beforeyou can begin another. And nomore wasted time!

Transet 1000 keeps working foryou—even when your computeris turned off. Because it has itsown independent memory, Transet1000 can serve as an electronicmailbox. Your files and incomingmessages received through yourmodem remain stored overnight,

While receiving electronicmessages from your modem.

or whenever you're away from theoffice. When you return, you canprint out your mail without turn-ing your PC on. Or, read it onyour PC screen and print out onlyselected messages. You can evenread your mail from any remotePC or terminal with a modem.

Before now, you would have hadto buy several add-on devices to do

T,

Say yes to the future

While your printer isprinting another job.

*Manufacturer's estimated retail price.

all this. And that could be costly.

But no more. Transet 1000 doesit all—for a surprisingly low price.It costs only $399* for the 128Kmodel, which stores up to 90 pages.And only $549* for the 512K version,with up to 360 pages of storage.

So wait no more. If you need thisflexibility in your operation, youshould have a Transet 1000. Seeyour authorized Hayes dealer for ademonstration. Or contact Hayesfor information at 404-441-1617.

Hayes Microcomputer Products,Inc., P.O. Box 105203, Atlanta,Georgia 30348.

Inquiry 152

ATARI ST SOFTWARE

then goes to the top of the loop.

Although GEM is much less radical-ly tied to a particular programmingstyle, the event library has a similarfunction on the ST. At any point inyour program, you can specify anevent or events you are interested inwaiting for, and the multitasking dis-patcher will suspend your applicationuntil one of those events occurs. Theevents included could be a simplekeystroke or perhaps the straying ofthe mouse cursor into and out of arectangle defined by your application.

Giving your program the informa-tion it needs to do its part is the jobof the message events. To wait for cer-tain events, you call a routine specificto the event in question. For morecomplex events, particularly thoseconcerning user interaction withscreen windows, you call a routinethat waits for a "message" from theAES. A message is a multibyte codethat is placed in a buffer whose ad-dress you pass to the routine. Pre-

defined system messages tell you, forexample, that the user has taken anaction that necessitates redrawingpart of one of your windows. (For ex-ample, the user has moved a windowthat was partially covering a secondwindow. The second window is nowmore exposed, and the newly ex-posed area should be redrawn.)

The Window Library

To quote the GEM documentation, "Awindow is an area with clearly definedboundaries." Anyone who has workedwith the Macintosh or one of the userinterfaces that mimic it will be com-fortable with the GEM window con-cepts, which (as of this writing) in-cluded the familiar title bar, close box,scroll bars, and size box. The creation,care, and feeding of windows is han-dled by the routines in the windowlibrary. In general, the GEM divisionof responsibility for the user interfaceis that the developer is expected tohandle and update the work area in-

side a window's frame while GEMhandles the drawing and updating ofthe frame itself, including, for exam-ple, the scroll bars, the title bar, etc.[Editor's note: A program that illustrates afair amount of window work is available, alongwith the two listings printed in this article, ina variety of formats. See the insert card follow-ing page 368 for details.\

Libraries to Support theUser Interface

The AES contains a number of rou-tines concerned with manipulatingvarious graphic data structures thatyour application can use for a stan-dard user interface. For example, theFile Selector Library provides a stan-dard dialog box that lists the files ona disk device and allows you to selectone. The Graphics Library is con-cerned mainly with drawing boxes onthe screen. For example, it will drawan expanding box outline that yourapplication can use to make a windowor other rectangular object appear to

A Personal Language

When it comes to problem solving, theAPL* PLUS System is the undisputed leader.

That's because the APL* PLUS Systemworks with you. It goes far beyond whatapplication software like Lotus® ordBASE®could possibly ever offer. And, it won't tieyou down with the details of standardprogramming languages.

The APL* PLUS System is a personallanguage, with productivity features thathelp you concentrate on getting answers,

rather than struggle with intricate calcula-tions and modeling.

With it you can manipulate tables ofnumbers as easily as single numbers andget quick results from your computer usingshort, simple statements.

When you've reached the limits ofother packages, move up to the APL* PLUSSystem. It's a powerful and flexible toolthat grows with you as your needs becomemore sophisticated. With over 200 built-in

applications—like graphics, reportformatting and communications—youhave all the tools at your fingertips toquickly and easily solve those seeminglyimpossible problems.

Best of all, the APL*PLUS Systeminterfaces well with software packagesyou're already using—like databases,spreadsheets, and graphics packages.The APL*PLUS System also makes iteasy to link those packages that aren't

228 BYTE- SEPTEMBER 15

ATARI ST SOFTWARE

grow quickly out of some other ob-ject. This is what the Desktop doeswhen you click on a disk icon and it"grows" into the disk's file window.

The Object Library is a macro facili-ty that lets you create complicatedgraphic structures and link them in asingle "object tree." For example, sayyou want to display a small rec-tangular box within a somewhat largerbox on the screen and you also wantto place text in the smaller box. Youcan do all this by calling the appro-priate VDI graphics primitives. But al-ternatively, you can use the ObjectLibrary of the AES, which will let youdefine the whole thing in a well-docu-mented tree structure. This has theadvantage that the entire tree can berepeatedly drawn and reused in theapplication with only a single call eachtime. Furthermore, you can specifythat only certain, levels within the treewill be drawn.

The routines in the library supportthe construction of the tree and the

reordering or deleting of its nodes.The library also offers various kindsof user interaction with on-screen ob-jects, such as a routine that will tellyou what object is currently under themouse cursor and another one thatlets you edit text in an object.

The Form Library uses object treesto implement more sophisticated userinteractions. A form is an object treedesigned for user input. A good pre-defined example of an object tree isthe simple form that appears on theDesktop if the user decides to formata disk. The form is a box containingtext that asks the user to confirm theformat request and two small boxescontaining the words O.K. and Cancel.(Boxes of this sort that containmutually exclusive options are called"radio buttons.")

To use a form, the program calls thebasic form routine, with an index ofthe desired object tree as argument.The AES takes over until the userselects an object that the developer

has defined as an "exit object" (suchas the O.K. or Cancel boxes in our ex-ample). Until that time, the AEShandles the user's input, which can beof three types: the radio buttons,"check boxes"—boxes containing op-tions that are not mutually exclusive,or text. On exit from the form routine,the application can examine the formto see what changes have taken place.

The Resource Library

Applications can share objects andobject trees between applications orkeep them conveniently modularthrough use of the Resource Library.For developers, Atari provides theResource Construction Set, whichallows on-screen construction of ob-jects and other types of resources.

The Scrap Library

The Scrap Library allows developersto share certain kinds of data amongapplications. It supports the AES im-

(continued)

Arv's

The APL+PLUS System and You.

currently talking with each other.

With all this problem-solving power,it's no wonder STSC's APL*PLUS Systemis the personal choice of so many businessprofessionals—financial planners,business analysts, actuaries, scientists,mathematicians, engineers, statisticians,and consultants. Especially since theAPL*PLUS System is available on a fullrange of computers from desktops tomainframes.

Inquiry 332

Put the power, speed, and flexibilityof the APL*PLUS System to work foryou. See your local dealer today to getyour APL*PLUS System. If they don'thave it, refer them to STSC or call STSCtoll-free, (800)592-0050.In Maryland or Canada, (301)984-5123.

Available nationally through Softsel, Micro Central, anddistributors worldwide. Dealer inquiries welcome.

Problem-Solving at the Speed of Thought

STSC

STSC, Inc.

2115 East Jefferson St.

Rockville, MD 20852

APL*PLUS is a service mark and trademark of STSC,Inc. PLUS*WARE is a trademark of STSC, Inc. Lotusand dBASE are registered trademarks of Lotus Devel-opment Corporation and AshtonTate, respectively.

A PLUS* WARE™ PRODUCT

©1986 STSC, Inc.SEPTEMBER 1986 -BYTE 229

ATARI ST SOFTWARE

Listing 1: This is a routine to format a floppy disk on the ST. 1/ the formattingis successful, the routine will return a 0.

/* #define DEBUG 1 */#include <osbind.h>

#define HITRACK 79#define SECTORS 9#define MAGIC 0x87654321L#define VIRGIN 0xE5E5#define ILEAVE 1#define DISKTYPE 2#define NOLOAD 0#define RANDOM 0x1000000L#define BOOTSECT 1#define TRACK0 0#define SIDE0 0

/* C bindings for OS routines */

/* Highest numbered track */

/* Sectors per track */

/* Required by FlopfmtQ */

/* Pattern to write to sectors */

/* Interleave factor */

/* Single side, 80 track */

/* No loader code */

/* Protobt makes a random */

/* Side 0, sector 1 */

/* Track for boot sector */

/* Format side 0 */

extern void errprintQ; /* error notification routine */

format(devno)

int devno; /* device holding media to format */

I

/* Automatic variables *//* count tracks */

regi ster int i;/* buffer for track, protoboot */

register char *buf;/* success in format? */

register int succ, totsucc = 0;/* doesn't do anything */

long filler;

*/

cate memory for track. The ST formats one track atand requires sufficient RAM to verify that track inMalloc is a GEMDOS call. */Mailoc(8192L);

uf == 0L)

DEBUG

print(0, "insuff memory for format");

/* Code

/* Alio

a t ime

memory.

buf =

if (b

\

#ifdef

err#endif

return(-1);I

/* Format each track. VIRGIN is the value to write to thenewly formatted track. This particular value (0xE5E5) issuggested in the documentation, but many values arepossible. Flopfmt is XBIOS. */for (i=HITRACK; i>=0; i—)

succ = Flopfmt(buf, filler, devno, SECTORS,i, SIDE0, ILEAVE, MAGIC, VIRGIN);totsucc += succ;

\

/* Release memory.Mfree(buf);

GEMDOS */

/* For the purposes of this routine, I won't accept any badsectors. But, if there were any, their numbers would havebeen left in the buffer after each track was formatted.Alternatively, I could have retried or recorded the badsectors if I were developing my own file system. */

(continued)

plementation of several standard datatypes. If you use these, your applica-tion can exchange information withother applications through a cut-and-paste mechanism.

The Shell Library

The Shell Library contains routines toallow the chaining of applications.

The Extended BIOS

The XBIOS provides more direct ac-cess to the ST's hardware than any-thing in GEM (which, after all, has tobe portable). The XBIOS providesfunctions to read, write, verify, and for-mat the floppy disks on a sector basis.Unlike the BIOS read/write function,these are not device-independent butare designed for the floppy diskdrives only. They work for single- ordouble-sided drives. The format rou-tine gives the caller specific informa-tion on bad sectors. Listing 1 is aroutine to format an entire disk.

Screen Parameters

The XBIOS also handles various videoscreen parameters. The ST screenmemory occupies 32K bytes in mem-ory. Initially, the physical screen baseaddress is set to the top 32K bytes ofmemory, but the XBIOS has a routineto set that base on any 2 56-byteboundary. You can also set a logicalbase that the GEM and Line A graph-ics routines will use as their under-standing of where the screen memorybegins. Other routines let you set thescreen resolution to one of threevalues:

640 by 400 pixels, monochrome640 by 200 pixels, 4 colors320 by 200 pixels, 16 colors

TOS knows what kind of monitor is at-tached to the system and will refuseto set the monochrome resolution ifthe color monitor is attached, or viceversa.

Two other XBIOS routines let youset the ST's palette. The palette has16 entries. Three bits of informationare stored for each entry for each ofthe three primary colors, red, green,and blue. Therefore, the lowest andhighest values for each palette entryare (in octal) 0 and 777. In other

{continued)

230 BYTE • SEPTEMBER 1986

Explore AI on your PC

Smalltalk V transforms your PC into a versatile AI workstation

Only Smalltalk/V letsyou experience the thrillof a responsive AI work-station while learningartificial intelligencetechniques and usingthem to createpractical applications.

"Smalltalk/Vgives me the feel of anAI workstation onmy PC."

—Darryl Rubin,Technical Editor,

AI Expert

Magazine

Watching someone use an AIworkstation is a vision of what thecomputer was meant to be. Fingers danceacross the keys as windows dilate, shift, overlap,and disappear on the bit-mapped display. Ideasspring to life as program fragments execute, aremodified, expanded, combined and tried again ina creative arabesque of text and graphics. Theinterface vanishes, man and machine are one.Smalltalk/V brings that experience toyour IBM-PC.

"We use Smalltalk

as our primary language

for teaching artificial intelligence."

—Dr. John Pugh

Director, School of Computer Science

Carleton University

Of the three main AI languages, Smalltalk, LISP,and Prolog, only Smalltalk was intended forindividual use on a personal computer. OnlySmalltalk was designed to provide a matchbetween human and computer models ofreality. Only Smalltalk is easy to learn, easy toread, and easy to use.

"We found Smalltalk/V excellentfor developing advanced decision-support tools based on decisionanalysis and AI techniques."

—Dr. Samuel Holtzman,Professor, Stanford University

Smalltalk/V is pure object-oriented programming— a powerful tool for designing frame/script-based knowlege representations, inferenceengines, expert systems, simulation environments,intelligent interfaces, network control software,communications interfaces, and much more.

Methods, our character-based Smalltalk, is nowavailable for $79. It has all of the features ofSmalltalk/V except graphics, rules, source-leveldebugger, and object-swapping. However, itsupports color, includes the communicationpackage, and does not require a mouse.

BYTE and BDi are trademarks of McGraw-Hill, Inc. IBM, IBM-PC, andIBM PC-AT are trademarks of International Business MachinesCorporation. Unix is a trademark of Bell laboratories.Inquiry 107

"Smalltalk/V is the

highest performance

object-oriented

programming system

available for PCs."

—Dr. Piero Scaruffi

Chief Scientist

Olivetti Artificial Intelligence Center

Qn Smalltalk/V Features

• High-performanceobject-oriented programmingIntegrates object-based and rule-basedprogramming with object-oriented PrologA user-extensible, open-ended environmentA responsive graphical user interfaceSupports exploratory programming andprototyping

Class hierarchy with inheritance creates highlyre-useable code

Smalltalk source code included, with browserwindows for easy access and modificationA huge toolkit of classes and objects forbuilding a variety of applicationsObject-swapping creates virtual memory onhard or RAM disk

Bit-mapped graphics with bit and form editorsA sophisticated source-level debuggerAutomatic change log for easy recoveryfrom errors

Powerful directory/file browser system fororganizing DOS filesOptional communications interface toUnix™ and other systemsAccess to other languages and DOS functionsDOS command shell

Detailed owner's manual designed for bothbeginners and advanced programmers

YES! I want to turn my PC into an AI workstation. Send me .

| | Smalltalk/V $99

_J Communications for Smalltalk/V ■ • .¥49

j [ Methods (including

Communications) $79

Shipping and Handling SI

CA residents add applicablesales vax

TOTAL $

Shipping and Handling

U.S., Canada, and Mexico % 5.00

Elsewhere $15.00

I enclose □ Check □ Money Order□ Credit card information □ mc

Number:.

□ VISAExpiration

Signature .Name:

Street Address:.City/Slate/Zip: .Phone:

NOT COPY PROTECTED, 60-DAY MONEY-BACK GUARANTEEON-LINE USER-SUPPORT CONFERENCE ON BYTE'S BIX™

Smallialk/V requires DOS and 512K RAM on IBM PCs (including AT) or"compatibles," a Microsoft or compatible mouse, and a CGA, EGA, Hercules,or AT&T Hi-Res graphic controller.

digitalk inc.

5200 West Century Boulevard

Los Angeles, CA 90045 (213) 645-1082

Inquiry 87

800-222-8324Hard Drive Blowout!

Seagate All Drives Seaqates w/ Controller]!

Other Specials

20 Meg Hardcard (uses 1 slot) .... $599

20 Meg Seagate for "AT" $549

30 Meg for "AT" $549

20 Meg Tape (Teac) w/cont. & soft $59565 Meg Tape (3m) w/cont. & soft .. $695

MONITORS

M1TSUBA

510ATTL Amber ... $99w/Tilt & Swivel Stand160A Composite

12" $99

Amber w/Tilt &Swivel Stand

brother

Ml 509 NEW

M-1109 $195

HR-15XL $360

HR-25 $499

• HR-35 $680

■ Twinriter-5 Dual

Head $ Call

EPSON

• LQ-800 $545

• LQ-1000 $765

• LQ-1500 $999

Accessories Available

SAMSUNG

Amber TTL 12" $89

Green TTL 12" $85

Amber

Composite 12" $79

Green Composite ... $79

Epson Products

• LX-80 $220

• FX-80+ $259

• FX-85 $ Call

• JX-80 $349

• FX-286 $ Call

Okidata

•182 ...192

$299

$399

• 193 $599

• 84 $699

• 2410 $ Call

Panasonic

• KXP 1080

• KXP 1091

.$199.$239

ATARI ST SOFTWARE

BkW*Jr

Computers (IBM Compatibles)

IDS PC-XT 8088 j595 . . 795 . . gg5

IDS Turbo 8 Mghz

2 Drives MS-Dos s64g . .895 . 1095

IDS AT

1 1.2 Meg Floppy/M.S. Dos & 1495 1695 1895

Leading Edge Call for Lowest Price

AT&T 6300 Call for Lowest Price

Epson Equity I. II. Ill.... Call for Lowest Price

Everex Products

Everex 1200 Modem $149

Everex Edge Card $1"

(Mono-Graphics-Color)

Everex Mini Magic Card $129

(W/384k 1/2 slot)

Everex Magic Multi-function $99

(Six Pac Clone)

CARDS & ACCESSORIES for IBM

• Mono/Printer $95.00 • RS-232 $59.00

• Color/Printer $99.00 • RS-232/Clock $69.00

• Mono/Graphics/ • Parallel $59.00

Printer $99.00 "| .gOO-222-8324

COMPUTERS

INTERNATIONAL

6619 U.S. 1 Miami, FL 33143

IN FLORIDA CALL (305) 667-5936

In Chicago: suite 24 0343 West Erie, Chicago, Illinois 60610

i f (totsucc != 0)

I

#ifdef DEBUG

errprint(totsucc, "format failed");

#endif

return(-1);f/* Now we need to put a boot sector on the disk

*/

/* Allocate a 512-byte buffer */

buf = Mailoc(512L);

/* Prototype a boot sector in that buffer. The

second

parameter is a serial number for the disk. The

vaIue I

have chosen asks the XBIOS to generate a random

number.

XBIOS */

Protobt(buf.RANDOM.DISKTYPE.NOLOAD);

/* Write out the boot buffer to track 0, side 0

Last

parameter is how many sectors to write. */

succ =

Flopwr(buf,fiIler,SIDENO,BOOTSECT,TRACK0,SIDE0,<

);

/* Throw away memory */

Mfree(buf);

/* Return success or failure */

return (succ);}

words, your 16 colors can be selectedfrom a total of 512.

SOUND

Four routines in the XBIOS manipu-late the ST's sound chip, which is theYamaha Programmable Sound Gen-erator (PSG) YM2149. The sound chiphas two general-purpose I/O ports,which the BIOS uses for both floppyselection and some serial port func-tions; two of the routines are con-cerned solely with setting bits in oneof these ports.

The chip has three sound channelsand 16 registers. The third routine letsyou set the registers to select

• The frequency for each channel.

• The volume for each channel.

• Either white noise or pure tone foreach channel, or a combination.

• One of 16 envelope shapes.

• The frequency with which theenvelope is applied to the basicsound waveform.

The last two points are of some in-terest: Although the PSG cannot ma-nipulate the components of a soundenvelope directly (i.e., the attack,decay, sustain, and release values),the ability to switch between differentpreset envelope shapes and manipu-late their frequency gives you theability to produce unusual sounds.

The final sound routine, dosound(),gives you access to a mini control lan-guage for the sound chip that is im-plemented in the TOS software. By de-veloping a list of commands, you canset any register on the chip, specifya sequence of tones, volume changes,envelopes, or any of the other param-eters available through the chip. Thedosound() routine sets a pointer toan area of RAM where you haveplaced such a list of sound com-mands. The software takes over andruns your commands at 50-Hz inter-vals (actually every fourth instance ofa 200-Hz interrupt that is set up offthe 68901 timer chip and used by TOSfor a number of functions). One of thecommands allows you to specify howmany ticks should go by until the nextcommand is executed.

The Line A Routines

The Line A Handler is not part ofGEM but the result of Atari's realiza-tion that it could provide faster accessto some of the routines that supportthe GEM VDI. These routines are as-sumed to be used from the assemblylanguage level. They are known col-lectively as the Line A Handlerbecause access is through the68000's unimplemented instructionexception handling. The 68000 recog-

(continmd)

232 BYTE • SEPTEMBER 1986

How I work

three times

faster without

• •

I always considered myself a 'power' PC user.But waiting for the system to load andrecalculate spreadsheets, post accounts, and sortdatabases, was holding me back.

Then I installed Orchid's TinyTurbo 286high-performance accelerator. It's tiny in size:just a half slot card. And tiny in price. Butthere's nothing tiny about the performance: nowmy programs run three to four times faster thanbefore. So 1 get AT performance without theAT price. And without the downtime of trans-ferring my files to a new system.

I count on my PC every day. So I was gladto learn thatTinyTurbo 286 is made by Orchid —the leading manufacturer of turbo products for

raisinaa

sweat.

accounting, finance, and other business profes-sionals. And the only company offering a fullline of turbos. They've even got a super high-performance PCturbo 286e with five times thespeed of the PC. Nice to know, in case the workreally piles up.

ORDER YOUR TINYTURBO TODAY.IT WILL PAYFOR ITSELF IN FOUR WEEKS.

IBM XT

WITH TINYTURBO

Post 700 accounts

12 sec/acct

3.5 sec/acct

(2.3 hours)

(0.7 hours)

Sort 10,000 records

25.4 minutes

14.9 minutes

Spreadsheet recalc.

44 seconds

14 seconds

Integer calculation

10 minutes

3 minutes

I used to panic when my boss asked me towork up some additional reports an hour beforea big meeting. Now I just smileand say, "no sweat!'

TinyTurbo 286 and PCturbo 286e are trademarks of Orchid TechnologyIBM is a registered trademark of International Business Machines Corp

ORCHID

When You Say Turbo,You Mean Orchid.

47790 Westinghouse Drive, Fremont, CA 94536

(415) 490-8586 TELEX 709289

Inquiry 258

WHEN YOU NEED

ACCESS TO FULL MEMORY,

STRUCTURE,

COMPATIBILITY WITH

GW- & PC-BASICA,

IJf

WHEN YOU NEED THEPOWER AND FLEXIBILITYOF COR PASCAL...

.. .You need BetterBASIC.The BetterBASIC compiler hasbecome the standard by which otherBASICs are evaluated. BetterBASIC iscompletely compatible with GW-BASIC andPC-BASICA when running on IBM PC's and trueclones. You can load and run your existing BASICprograms in BetterBASIC. It uses standard Microsoftsyntax and gives you more than 150 additional state-ments such as XREF, DEFINE WINDOW, MAKE MOD-ULE, and PROCEDURE. In benchmark comparisons,BetterBASIC is five times faster than interpreted BA-SIC. There is optional 8087/80287 math chip support,and an optional Runtime System to create stand-alone

Ask your dealer or call to order:

1-800-225-5800

In Canada, call 416-469-5244

Summit Software Technology, Inc."

106 Access Rd. Norwood, MA 02062

BetterSASfC is a registered trademark of Summit SoftwareTechnology. Inc. IBM PC, XT, AT are registered trademarksof International Business Machines Corp. Microsoft is aregistered trademark of Microsoft Corp. Tandy is a registeredtrademark of Tandy Corp.

EXE. files. BetterBASIC is notcopy protected. Technical support isprovided for all registered users.See for yourself why Dick Aarons of PC Magazinesaid "BetterBASIC may be the best of all BASIC pro-gramming worlds" and selected BetterBASIC as"Editor's Choice" (Oct. 29,1985).

BetterBASIC $199

8087/80287 Math Chip Support $99

Runtime System $250

Sample Disk with Tutorial $10

iW

#

;c5

4°:

*v

& >%V Vfc

**'

gF.^i^ofc'"-

$?!&

'rffr

Inquiry 335

ATARI ST SOFTWARE

nizes op codes beginning with the bits1010 (hexadecimal A) as unimple-mented instructions and jumpsthrough a special exception vector,which in the ST points to theseroutines.

Because they were not originally in-tended for public access, use of theseroutines is not as easy or as consis-tent as is the case with the other en-try points. Basic usage involves settingsome of the values in a large datastructure and then kicking off the LineA exception handler by defining aword op code whose first 4 bits are1010 and whose last 4 bits specifywhich routine is desired.

The Line A routines give you fasteraccess to graphics using the VDI anda few additional features, including asprite facility and the ability to applyadditional logical changes to rasterobjects while copying them from oneplace to another. You can mix andmatch Line A Handler and VDI rou-tines, but this can be a little tricky.

since your Line A variables may be af-fected by your VDI calls.There are 16 Line A routines:

0

Initialization

1

Put Pixel

2

Get Pixel

3

Line

4

Horizontal Line

5

Filled Rectangle

6

Line-by-Line Filled Polygon

7

BitBlt

8

TextBlt

9

Show Mouse

10

Hide Mouse

11

Transform Mouse

12

Undraw Sprite

13

Draw Sprite

14

Copy Raster Form

15

Seedfill

About half of the Line A routinesare concerned with graphics primi-tives similar to those in the VDI. Themouse manipulation functions arefairly boring and obvious. (TransformMouse sounds neater than it is—it just

changes the cursor representing themouse position.) Let's take a closerlook at the other routines.

Bit Blting (Routines7 and 14)

Raster operations involve a rec-tangular area of the raster, or videoscreen image. You often want to puta rectangular image (a bit-mapped ob-ject) on the screen and define the rela-tionship it will have with the imagethat is already there "under" the rec-tangle being placed on the screen. Forexample, you may wish to say thatcertain pixels in the object are to betreated as transparent: Whatever is"below" them on the screen will notbe changed and will therefore "showthrough" the new rectangle.

Additionally, you would like to beable to set the new rectangle down atan arbitrary coordinate on the screen.Unfortunately many schemes forrepresenting an image in memory are

[continued)

STAY LONGERINEUROPE ON THEMONEY YOU SAVETOURING EUROPEIN YOUR NEWMERCEDES-BENZ.

Plan to make European delivery of anew Mercedes-Benz part of your 1986European vacation plans. Select any1986 gasoline or diesel model? pick itup at the factory European DeliveryCenter—and embark on a deluxe driv-ing vacation. Avoiding costly rentalswhile saving on the price of your newMercedes-Benz. Send coupon for a freeEuropean Delivery brochure today.

'Subject to availability.

Send coupon to: MHAU86-5

Mercedes-Benz of North America, Inc. s~r~\

Marketing Communications.Division ( JLj

One Mercedes Drive, Montvale, NJ 07645

Name

Address

City

State Zip

© 1986 Mercedes-Benz of N.A., Inc., Montvale. NJ.

SEPTEMBER 1986 -BYTE 235

ATARI ST SOFTWARE

Listing 2: This trap handler is the sort you might use if you were programmingthe ST in 68000 assembly language or were using a high-level language andneeded to write a binding for access to a BIOS, XBIOS, or GEMDOS function.The functions assume the C calling conventions: that is, if there are anyparameters, they are assumed to have been pushed onto the stack in reverse orderand to be no smaller than a word. The number of the routine itself must bepushed last, just before the trap call. \f you are developing using the C providedin Atari's developer's kit. this process will be transparent, since a set of bindingsis available that makes TOS calls look just like ordinary C function calls.

; At entry, any arguments for the function have been pushed

; on the stack in reverse order, C-style. Then the

; function number was pushed. Finally this routine was

; called, so as you enter, the return address of the caller

; is on top of the stack.

retsv: ds. I

traprtn:

move.I (a7)+, retsv

trap

#13

move.I retsv, -(a7)rts

some memory for a long variable

Save the return address,

because the OS functions don't

expect it.

Trap to the BIOS function. (BIOS

is available through trap 13,

XBIOS through 14, GEMDOS through

trap 1.)

Put the return address back on

stack.

Return to caIler.

often constructed for the hardware'sconvenience. The ST's screen mem-ory, for example, consists of a word'sworth of one plane of information,followed by a word of the next plane,and so forth, until 16 pixels for eachplane have been defined. Then youstart again with the first plane.

To simplify the job of manipulatingthe screen memory on the ST, a bitbiter (bit-mapped block transfer) isprovided. A bit biter can be softwareor firmware or both to support logicalraster operations. On the ST, in theVDI and the Line A routines, a moder-ately complex data structure knownas a memory form lets you define araster and a rectangle within the rasterso that the biter can manipulate it.One item in the form is a pointer tothe actual image data. The rest of thefields specify things like the numberof planes and the size of the rec-tangle. You need two of these mem-ory forms for your bit-biting opera-tions: one for the source raster andone for the destination.

An intriguing aspect of the memoryform is the specification of the totalraster representation that your object

is part of. This may be the actualscreen memory if the bit-mapped ob-ject is currently on the screen. But itcan also be a virtual screen of any size(word-aligned in the x dimension) upto that of a real screen. Probably themost common bit-bit operationcopies from a source memory formwith a virtual screen just big enoughto hold the bit-mapped object, to adestination memory form pointing atthe real screen. But for arcade-styleapplications in particular, many morecomplicated arrangements can beimagined: for example, biting fromvarious game objects to an entire vir-tual screen being prepared for display.And you can bit from one part of thescreen to another.

The Line A BitBlt is sophisticated.There are 16 logical operations youcan apply between the source anddestination. If you define a pattern,you can perform a logical AND of thepattern with the source and combinethe result with the destination.

Sprites (Routines 12 and 13)

These sprites are not spectacular, andthey're not in hardware. But they are

convenient, and you can have asmany as you want. The Line A spritesare two-color (foreground/back-ground). They are 16 pixels wide and16 lines high. A sprite can be plottedonto the screen relative to any one ofits pixels. When you call Draw Sprite,you specify a buffer to save the screenarea covered by the sprite: when youundraw, the routine can restore thescreen. Nothing to write home about,but nice nonetheless.

What Do You Use?

What is the place of the varied piecesof TOS in a typical application? Well,if you are willing to stick to GEM, youcan access most of the ST's power.And you have the advantage of pro-gramming for a consistent virtualmachine with a well-documentedgraphics model and a well-known userinterface. Also, you will have an ap-plication that is portable to other sys-tems supporting GEM. The non-GEMpieces give you more direct access tothe ST hardware. And in some cases(such as sound), they give you theonly access.

' There are no restrictions on the de-veloper who wants to mix and match.The VDI and AES functions on the STare accessed through libraries of glueroutines that you link with your appli-cation. Entry to the BIOS, XBIOS, andGEMDOS routines is actually achievedthrough the 68000's trap handlers(see listing 2). If you develop in C,bindings are available so that accessto any TOS routine is simply a func-tion call.

I have enjoyed software develop-ment on the Atari ST. I suspect mypleasure has something to do with theST's peculiar combination of operat-ing system routines. There are justenough traditional concepts to staveoff the programmer's fear of comingobsolescence and just enough excit-ing new concepts to challengecreativity. Development has a clean,modular feel to it. The abstractionsavailable in the operating system, par-ticularly in GEM, are clear and con-sistent. These abstractions don't forceyou in any particular direction: if whatyou really want is to make the ST looklike an old-fashioned, user-hostile ma-chine, you can do it. ■

236 BYTE • SEPTEMBER

New GPS Series: Tek sets

the pace with SmartCursors

and push-button ease.

Work faster, smarter, with two newgeneral purpose scopes fromTektronix. The four-channel, 100 MHz2246 and 2245 set the new, fast pace formeasurements at the bench or in thefield. They're easy to use and afford, bydesign.

On top: the 2246 with exclusiveintegrated push-button measure-ments. Measurements are accessedthrough easy, pop-up menus and imple-mented at the touch of a button. Mea-sure peak volts, peak-to-peak, ± peak,dc volts and gated volts with new hands-off convenience and on-screen readoutof values.

SmartCursors'" track voltmeter mea-surements in the 2246 and visually indi-cate where ground and trigger levels arelocated. Or use cursors in the manualmode for immediate, effortless measure-ment of waveform parameters.

Both scopes build on performanceyou haven't seen at the bandwidth orprices. Lab grade features includesweep speeds to 2 ns/div Vertical sen-sitivity of 2 mV/div at full bandwidth for

Features

2246

2245

Bandwidth

100 MHz

100 MHz

No. of Channels

4

4

Scale Factor Readout

Yes

Yes

SmartCursors'"

Yes

No

Volts Cursors

Yes

No

Time Cursors

Yes

No

Voltmeter

Yes

No

Vertical Sensitivity

2 mV/div

2 mV/div

Max. Sweep Speed

2 ns/div

2 ns/div

Vert/Hor Accuracy

2%

2%

Trigger Modes

Auto Level, AutoSingle Sweep

Norm, TV Field, TV Line,

Trigger Level Readout

Yes

No

Weight

6.1 kg

6.1 kg

Warranty

3-year on parts and labor including CRT

low-level signal capture. Plus triggersensitivity to 0.25 div at 50 MHz, to 0.5divat150MHz.

Accuracy is excellent: 2% at vertical,2% at horizontal. And four-channelcapability includes two channelsoptimized for logic signals.Best of all, high performancecomes with unmatchedconvenience. You cansee it and feel it— in the

responsive controls and simple front-panel design, in extensive on-screenscale factor readouts, and insimplified trigger operation that includesTek's Auto Level mode for automatic trig-gering on any signal.

Contact the Tektronix office orsales representative nearest you forcomplete details. Each scope isbacked by Tek's three-year warranty,plus excellent documentation, trainingprograms and outstanding service sup-port—worldwide.

m p

Featuring four chan-nels, flexible triggering,extensive CRT readoutsand push-button easeof use, the new Tek2246 (left) and 2245(above) bring high-qual-ity, low-cost analysis todiverse applications indigital design, field ser-vice and manufacturing.

Ttektronix

COMMITTED TO EXCELLENCE

Copyright '1986, Tektronix, Inc. All rights reserved. TTA-469Inquiry 344

SEPTEMBER 1986 • BYTE 237

HOW FAST CAN

THE 80386 MAKE YOUR

WORKSTATION GO?

■ ■

Faster than any other32-bit microprocessor can.

In technical terms that's4 MIPS. 4 MegaWhetstones.With 4 Gigabytes.

Fast enough to have asudden and lethal impacton your competition.

To achieve its blazingspeed, the 80386 has six-stage pipelining, which

allows the standard 16 MHzpart to deliver over 6100Dhrystones per second.

That's nearly four timesthe Dhrystone perform-ance of a VAX* 11/780, or4 VAX MIPS.

And with the 80386you don't sacrifice all thatperformance for demand-paged virtual memoryBecause of its on-chippaging unit and transparentpaging cache, the 80386can do a full virtual tophysical address translationwithout the performancepenalty of non-pipelined,off-chip designs. Givingyou 4 MIPS of deliverableUNIX** performance.

Of course, to achieveperformance like that, youneed a bus that's fasterthan a speeding bullet.

Like our 2 clock bus thatprovides a 32 Megabytesper second transfer rate.

That's the highestperformance of any micro-processor bus.

So what more couldadvanced system designersask for?

Blistering 4 Mega-Whetstones per secondperformance for superbgraphics and numbercrunching. Only the 80386uniquely teams withWeitek's 1167 floating pointcoprocessor to deliverthe highest numerics

*VAX is a registered trademark of Digital Equipment Corp."UNIX is a trademark ofAT&T Bell Laboratories.© 1986 Intel Corporation

Inquiry 173\

performance on themarket.

And of course all thiscomes in a 64 Terabytevirtual address space witha 4 Gigabyte linear addressspace.

Dbn 'sloi tes Per Secoi id

SI N3 180

3850 |

INTEL386*

6133 ]

VAX11/780

-> 1 1 1 1

1662 |

RTPC

1880

0 1000 2000 3000 4000 5000 6000 7000Relative System Performance

Whetstones Per Second

SUNJ 180*

2.6 |

INT1U.3H6*

4.0

VAX 0, 780

/-'I

RTPC

1

1 1 1

0 1 Million 2 Million .->' Million -i Million

Relative System Performance

%Intel386 MULTIBUS' 116 MHz Starter Kit.fVCtth W'eitek 1164,1165 floatingpoint chip set.

t With Weitek 1167floatingpoint coprocessorSource: liefer to Intel80.186 Benchmark Report.

Finally for your silverbullet, add to all this $6billion worth of DOS soft-ware. And watch howfast it runs on your 4 MIPS,4 MegaWhetstones UNIXmachine.

To find out more, attendone of our 80386 Seminars.Call your local Intel salesoffice for details.

Or call (800) 548-4725for complete technicalinformation.

Get all the ammunitionyou need to make yournext system a success.

iny

SEPTEMBER 1986 • BYTE 239

Announcing BYTE'sNew Subscriber Benefits

Y

.our BYTE subscription bringsyou a complete diet of the latest inmicrocomputer technology every30 days. The kind of broad-basedobjective coverage you've read inthis issue. In addition, yoursubscription carries a wealth ofother benefits. Check the checklist:

DISCOUNTS

[VJ 13 issues instead of 12 if yousend payment with subscriptionorder.

13 One-year subscription at $21(50% off cover price).

|V| Two-year subscription at $38.

12 Three-year subscription at $55.

12 One-year GROUP subscriptionfor ten or more at $17.50 each.(Call or write for details.)

SERVICES

2J BIX: BYTE's InformationExchange puts you on-line 24hours a day with your peersvia computer conferencing andelectronic mail. All you need tosign up is a microcomputer, amodem and telecomm software.

C9 Reader Service: For informationon products advertised inBYTE, circle the numbers onthe Reader Service Cardenclosed in each issue thatcorrespond to the numbers forthe advertisers you select. Dropit in the mail and we'll getyour inquiries to the advertisers.

Ef TIPS: BYTE's TelephoneInquiry System is available tosubscribers who need fastresponse. After obtaining your

Program

BYTE

Subscriber I.D. Card (see TIPSinformation adjacent to ReaderService cards), dial TIPS andenter your inquiries. You'll saveas much as ten days over theresponse to Reader ServiceCards.

[Vj Disks and Downloads:Listings of programs thataccompany BYTE articles arenow available free on theBYTEnet bulletin board; andon disk or in quarterly printedsupplements (see reply cards inthis issue).

(Vj Microform: BYTE is availablein microform from UniversityMicrofilm International in theU.S. and Europe.

(FJ BYTE's BOMB: BYTE'sOngoing Monitor Box is yourdirect line to the editor's desk.Each month, you can rate thearticles via the Reader Service

Card. Your feedback helps uskeep up to date on yourinformation needs.

(Vj Customer Service: If you havea problem with, or a questionabout, your subscription, youniay phone us during regularbusiness hours (Eastern time)at our toll-free number: 800-258-5485. You can also useCustomer Service to obtainback issues and editorial indicies.

BONUSES

(2 Annual Separate Issues: Inaddition to BYTE's 12 monthlyissues, subscribers also receiveour annual IBM PC issue freeof charge, as well as any otherannual issues BYTE mayproduce.

5f BYTE Deck: Subscribersreceive five BYTE postcarddeck mailings each year—adirect response system for youto obtain information onadvertised products throughreturn mail.

To be on the leading edge ofmicrocomputer technology andreceive all the aforementionedbenefits, make a career decisiontoday—complete and mail in asubscription card or, call toll-freeweekdays, 8:30am to 4:30pmE.S.T.: 800-258-5485.

And. . . welcome toBYTE country!

BITE

THE SMALL SYSTEMS JOURNAL

m

68000 MACHINES

AMIGAANIMATION

by Elaine A. Ditton and Richard A. Ditton

Bringing graphics to life on the Amiga

COMPUTER ANIMATION is the pro-cess of displaying a series of imageson a video screen. The images can bedisplayed in the same spot on thescreen for static animation or movedabout the screen for dynamic anima-tion. Animation in general consumesa large portion of a system's availableprocessing power and memory space.Usually, though, trade-offs can bemade between the amount of mem-ory space and the amount of process-ing power required.

The Commodore Amiga has specif-ic hardware that makes the task ofanimation consume less CPU process-ing. The sprite DMA (direct memoryaccess) channels allow a relativelysmall image to be moved and alteredby changing just a few locations inmemory. The Blitter is a high-speedhardware device used for copying ormerging image data and drawinglines. Because the colors in the Amigaare stored in registers, a special formof animation called color animationis possible.

In this article we will briefly discussthe various aspects of animation onthe Amiga and the facilities providedin the Amiga ROM Kernel to generategraphic images. In conclusion, we will

describe our methods of program-ming animation on the Amiga.

The Display

The first thing that must be specifiedis the background on which the ani-mation will take place. This is done bydefining a View structure, which de-scribes the characteristics of the dis-play (see figure 1). The View consistsof one or more ViewPorts, each withspecified height, width, display mode,image data, colors, and position onthe screen. ViewPorts must be ver-tically stacked and separated by atleast one blank line. The width shouldbe specified as either 320 or 640pixels. Two or more ViewPorts of dif-ferent horizontal resolution can existon the screen at the same time. TheViewPort points via Raslnfo to the Bit-Map structure, which in turn points tothe actual bit planes of image data(figure 2). The number of bit planesdetermines the maximum number ofcolors. The ViewPort also points to theColorMap, which is interpreted de-pending on the mode.

Sprite Animation

Sprites are hardware "objects" thatare independent of the background

display. The Amiga can have eightsprites, each 16 pixels wide and anynumber of lines high (figure 3). Eventhough there are only eight sprites,each one can be reused after its hori-zontal endpoint has been reached onthe screen. Each sprite can have 3colors plus transparent, or you can at-tach two sprites to have 15 colors plustransparent.

A sprite is displayed on the screenby specifying its x,y coordinates anda pointer to the memory area that de-scribes the formed image. To animatea sprite you only have to changeeither of the coordinates or thepointer to the image data. Since youonly have to change a few bytes tomove or alter the image, sprite anima-tion takes very little CPU processing.

The Amiga ROM Kernel providesseveral routines for manipulating thehardware sprites. GetSprite allocatesa hardware sprite for exclusive use ofthe requesting task. ChangeSprite

(continued)Elaine A. Ditton and Richard A. Ditton(Free-Radical Software, 1323 South YaleAve., Arlington Heights, IL 60005) are presi-dent and vice president of Free-Radical Soft-ware, a company specializing in consumer soft-ware and computer graphics consulting.

SEPTEMBER 1986 -BYTE 241

Inquiry 421

One lastsolution*

problems

Diskmaker® translates disksquickly.

If you work with many differentcomputers and disk formats, oneDiskmaker® will pay for itself by rap-idly converting hundreds of differentformats.

Diskmaker® transfers are fast,disk-to-disk; no modems or otherspecial software necessary. Does nottie.-up expensive computer systems toconvert disks.

Diskmaker® handles all commondisk sizes: 8", 5!4". and 31//. Trans-fers can be made among PC DOS,MSDOS, CP/M, UNIX, word process-ing and phototypesetting systems.

Ongoing support features severalsoftware updates each year to stayabreast of new systems as they areintroduced.

Diskmaker® comes complete withdrives, software and extensive man-ual (requires only monitor and key-board). Six months warranty.

For more information, write:New Generation Systems, Inc.,9510A Lee Highway, Fairfax, VA 22031.Telex 750417 NEW GEN SYS. Or call:

NewGerjeRa-noN

1— 5V5TEM5 —'

(703) 471-5598

HSKMAKER

AMIGA ANIMATION

changes the pointer to the image bitmap of a reserved sprite. MoveSpritemodifies the x.y coordinates of thesprite. FreeSprite returns a reservedsprite to the system.

To use the hardware sprites in theanimation system, the Amiga ROMKernel defines a structure known asthe VSprite (for "virtual sprite"). Infor-mation about the sprite such as colordata, collision detection, and doublebuffering is contained in the VSpritestructure.

Sprites are extremely easy to ani-mate but have limitations that youmust consider. A limited number ofsprites are available, and each spriteis of limited size. Therefore, if youhave to animate a large area, spriteswill not be appropriate. An individualsprite can have only 3 colors and at-tached sprites can have 15 colors,whereas the background display canhave up to 32 colors. The SPRITESmode bit in the ViewPort structuremust be set if you are using VSpritesor hardware sprites.

Background Animation

The simplest type of background ani-mation uses the XOR trick. For in-

stance, if you XOR an area of thescreen with a pattern, the pattern ap-pears on the screen with a differentcolor from the background (figure 4).The original background can be re-stored by XORing in the same posi-tion with the same pattern. Thismethod is fast because no data is ac-tually being moved. The Amiga draw-ing mode COMPLEMENT supportsthis idea. It is limited because all thebit planes are complemented so thatthe resulting color is always deter-mined by the background color. Youcan obtain more color control if youselectively XOR bit planes. Unless youchoose the colors in the registerscarefully, the overlapped portion ofXOR images will be a different colorthan either of the images.

The method most often used to ani-mate complex background images isto move the actual blocks of data. Thismethod takes up the most CPU time,but the Amiga assists with the hard-ware Blitter. The Blitter uses up to fourDMA channels to move data 4 to 10times faster than the 68000 micro-processor.

The routines BltBitMap and ClipBlitcopy rectangular areas from one sec-

(0,0)

Master (Bit map;

t

RyOffset

J

1

ViewPort 1

View \

blank

ine

ViewPort 2

I

Figure I: The View structure, which defines the display characteristics of the Amiga,consists of one or more ViewPorts, which must be separated by at least one blank line.The values RxOffset and RyOffset determine which portion of the background bitmap is displayed in a ViewPort.

242 BYTE- SEPTEMBER

Inquiry 243

AMIGA ANIMATION

tion of chip memory to another. Blt-BitMap takes bit maps as argumentsand will blit only specified bit planes.ClipBlit works with the RastPort struc-ture and within the multitasking sys-tem. It will not destroy data of anothertask's overlapping window. Both rou-tines use minterms, 8-bit values thatdetermine how the source rectangle

is moved into the destination area.If you want the object to do morethan just animate in a stationary posi-tion, you must save the backgroundunderneath the object so that it canbe restored. If more than one objectis moving across another, the datamoves must be processed in last-in/

[continued]

i/iew

ViewPort

f

pointers toCopper lists

pointer to next ViewPort

Copper

list

pointers

Y offset

X offset

mode

width height

Y offset

X offset

mode

V///A

<

Color Map

Raslnfo

flags

type

# of colors

pointer to next Raslnfo

flags

depth

///A

t

Color Data

Ro

Go

Bo

Ri

Bit Map

G,

B,

R2

G2

bytes per row

rows

flags

depth

'////

•

>

'

i

'

1 Bit plane C

i

'

1

Bit p

ane 1 '

'

Bit plane 2

Figure 2: The ViewPort structure contains pointers to the ColorMap, whichtells the system which colors to use in the ViewPort, and to Raslnfo, whichtells tfte system where the BitMap is located. The BitMap structure containspointers to (rom one to six bit planes representing from 2 to 64 colors, respectively.

FORTH

The computerlanguage for

increased...EFFICIENCY

reduced.

MEMORY

higher

SPEED

MVP-FORTHSOFTWARE

Stable.. .Transportable ...Public Domain .. .Tools

MVP-FORTHPROGRAMMER'S KIT

for IBM, Apple, CP/M,

MS/DOS, Amiga, Macintosh

and others. Specify computer.

$175

MVP-FORTH PADS,

a Professional Application

Development System. Specify

computer.

$500

MVP-FORTH EXPERT-2SYSTEM

for learning and developing

knowledge based programs.

$100

Word/Kale,

a word processor and

calculator system for IBM.

$150

Largest selection of FORTH

books: manuals, source listings,

software, development systems

and expert systems.

Credit Card Order Number:

800-321-4103(In California 800-468-4103)

Send for your

FREE

FORTH

CATALOG

MOUNTAIN VIEWPRESS

PO BOX 4656Mountain View, CA 94040

SEPTEMBER 1986 • BYTE 243

AMIGA ANIMATION

first-out order. Two moving and over-lapping objects would be processedin this order: (a) save background 1,(b) place object 1, (c) save background2, (d) place object 2, (e) restore back-ground 2, (f) restore background 1.If the animation object is not rec-tangular and you want the back-ground to move behind the actualshape of the object, you can accom-plish this by using the Blitter. First, theBlitter will OR all the bit planes of theobject together to form a mask de-scribing the shape of the object. Anyof the colors can be chosen as thebackground color to be ignored in themask. The Blitter will then AND themask with each bit plane of the ob-ject to create an image of the objectwith a background of zero. It then in-verts the mask and ANDs it with thebackground bit planes, creating anobject-shaped hole. Now the Blitterwill OR the object into the back-ground in the hole. This procedurecan be written as

D = AB + AC

where A is the object mask, B is theobject, C is the background, and D isthe new animation frame. That is, thenew frame is replaced with the objectwherever the object mask is true, andwith the background wherever the ob-ject mask is not true.

To implement this "cookie-cutter"operation, object and backgrounddata addresses are loaded into theBlitter source data registers BLTxDAT(where x equals A, B, or C, as above)and the minterm resulting from theabove equation is placed in theBLTCONO hardware register. Thesame thing can be accomplished bydividing the operation into two partsand using the BltBitMap function,which will take two sources at a time.

When the Amiga changes an imagein memory, it does so by altering onebit plane at a time. Because of thefinite period of time it takes to modifyeach bit plane, a moving object willtend to have its bit planes separateacross the screen. Another problemoccurs if the program starts drawingnew information where the videobeam is passing. This results in ascreen consisting partly of oldmaterial and partly of new. If the two

mmmmmmm

*H»H3

ummmmmmmummmmmmmmm

[:£:+:£: j:

*

■!!!!!;;!;!:;;;;;;:;

ii:i::i:l I;;;;;;;;■;

':■:■':

...

k

;.■■

:;::;

Figure 3: Hardware sprites, graphicobjects that can move independently of thebackground display, may be up to 16 bitswide, any number of bits high, and up tothree colors plus transparent.

frames are very different, it can lookquite bad. The solution to both prob-lems is to double-buffer the screen.That is, the system displays one mem-ory space while drawing in anothermemory area. The pointers to the twoareas are switched when the drawinghas been totally completed, and thescreen retains visual integrity. Thismethod uses twice the amount ofscreen memory, so double-bufferinga screen with four bit planes will usean additional 32K of chip memory.Another way the Amiga facilitatesanimation is by supporting horizon-tal and vertical scrolling. If you sim-ply change the RxOffset and RyOff-set of the ViewPort structure (seefigure 1), the screen will display a dif-ferent portion of the backgrounddata. No memory is moved, so thescrolling is fast and smooth. One quirkof the scrolling, however, is that it dis-ables hardware sprites 6 and 7.

If you set the ViewPort to Dual-Playfield mode, you will have two in-dependently controllable playfields,one with a higher priority than theother. Each playfield can have up toseven colors plus transparent. A mov-ing background outside an airplanewindow is the type of effect possiblewith this technique.

Color Animation

Color animation is a special form ofanimation with fairly limited applica-tions. By changing the Amiga colorregisters in a regular sequence, aproperly formed image will appear toflow on the screen. This effect is wellsuited to animating a flowing river orbillowing smoke. Since color anima-tion uses very little processing poweror memory, it can provide for simpleeffects without utilizing manyresources.

The Amiga Animation System

The Amiga ROM Kernel graphics ani-mation system classifies sprites(VSprites) and background (or Blitter)objects (Bobs) as graphics elements(GELs). The graphics animation rou-tines automatically handle some ofthe topics just discussed. If your ani-mation sequence needs both Bobsand VSprites, and if you need to utilizemost of the features of this system, itmight simplify your job. However, thissystem does add a lot of overhead,and you may find you have more con-trol if you write your own application-specific routines.

A Bob is an extension of the infor-mation contained in the VSprite struc-ture (height, collision-handling infor-mation, position, and pointers to thedata). The Bob structure handles theinformation unique to the backgroundsuch as drawing sequence, imagemask, save and restore backgroundinformation, and double buffering.You can determine the order of draw-ing for each Bob or allow the systemto draw them in y, x positional order.The system will first draw the Bob withthe lowest y value. If two Bobs havethe same y value, then the Bob w\ththe lowest x value is drawn first. Ob-jects drawn later overlap objectsdrawn earlier.

In order to have the system auto-

244 BYTE • SEPTEMBER 1986

AMIGA ANIMATION

matically save the background to berestored after moving the Bob to anew location, you must set the SAVE-BACK bit in the variable sprFlag ofthe VSprite structure and set the vari-able SaveBuffer to the address of amemory location. To "cookie-cut" theBob into the background, set theOVERLAY bit and define the Image-Shadow mask. To double-buffer, aBob pointer is set in the Bob struc-ture to a structure called DBufPacket.This structure contains informationthat helps keep track of the back-ground in the current drawing bufferfor correct restoration. If any of theBobs are double-buffered, all theBobs must be double-buffered.

Four variables describe the boun-daries of a rectangle that will clip theBob. If the GEL has passed complete-ly outside the clipping region, theGELGONE flag will be set. If this GELis no longer needed, you may deleteit from the GEL list to speed up the

overall processing. The SAVEBOB bitcan be set to tell the system not toerase the old image of the Bob, whichgives a "paintbrush" effect as the Bobmoves. Once all of the GELs aremoved or changed, they must besorted with the routine SortGList andfinally displayed with the routineDrawGList. DrawGList makes up aCopper instruction list.

The Amiga supports a set of struc-tures and routines that will animateBobs. The AnimOb (animation object)is the top-level data structure thatorganizes the AnimComps (animationcomponents) and contains the regis-tration point in the display relative towhich of its component Bobs aredrawn. The AnimComp is a compo-nent of the animation that containsthe actual imagery, such as an arm,leg. or other part of the complete ob-ject. The AnimOb structure containsthe initial position of the object, itsvelocity and acceleration in the x and

y directions, a pointer to the first ofa linked list of AnimComps, and apointer to a special animation routine.The AnimComp contains a pointer tothe next AnimComp in the sequenceand a timer to tell the system whento switch. After the two structures areset up, calling the Animate functionsets the animation in motion.

The Amiga animation software sup-ports sequenced drawing and motioncontrol, which can be used separate-ly and together. In sequenced draw-ing, each view is a modification of thepreceding view. This is particularlyuseful with an animation that iscyclical in nature, like walking. Onestep in a walking sequence would bea sequenced drawing. To make theobject look like it's moving, each newview is positioned farther from a com-mon reference point. After the anima-tion has completed one cycle, theAnimOb must be moved a certain

(continued)

s

::

I

I

I

I

I

1

■•:■:■

s;

1

1

:'■:■:

S:

::::j:

.::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

XOR

p;I

I

Figure 4: One form of background animation on the Amiga involves using a pattern to XOR an area of the background. Thepattern will appear on the screen with a different color than the background.

SEPTEMBER 1986 -BYTE 245

AMIGA ANIMATION

Amiga AnimationGlossary

AnimOb: A data structure that bringsmany AnimComps together in a wholeobject.

AnimComp: An expansion of a Bob toallow the Bob to function as part of anAnimOb.

Bit Map: A structure that containspointers to bit planes and defines thewidth and depth of the bit-plane data.

Bit Plane: An area of memory thatdefines the color of the pixels dis-played on the screen. Each bit planemultiplies the number of possiblecolors in the display by 2. If one bitplane is used for a display, only twocolors are possible. If two bit planesare used, four colors are possible. Amaximum of five bit planes can beused in a low-resolution display andfour bit planes in a high-resolutiondisplay.

Butter: A specialized hardware devicethat performs high-speed data copyingand line drawing. The Blitter can per-form up to 2 56 logic operations onthree data sources while copying to adestination.

Bob: A Blitter object that is a softwareversion of the hardware sprite. Bobsare not restricted to the size or colorlimitations of a sprite.

Chip Memory: The lower 512K bytesof memory on the Amiga, which canbe directly accessed by the customchips.

Color Map: A list of the red, green,and blue values that are attached to aViewPort and loaded into the Amigacolor registers when that ViewPort isbeing displayed.

Copper: One of the Amiga's customcoprocessor chips, it controls the en-tire graphics system. The Copper canalter the registers, reposition sprites,change the color palette, update theaudio channels, and control the Blitter.The Copper frees the 68000 to executeprogram logic rather than updating thedisplay screen. The Copper has onlythree commands: WAIT until the beamreaches a specific screen position,MOVE a value into a register, and SKIPthe next instruction if the beam is pasta specified screen position.

GEL: A graphic element that can bemanipulated by the graphic animationroutines in the Amiga ROM Kernel.VSprites, Bobs, AnimComps. andAnimObs are all GELs.

IFF: Interchange Format File, the stan-dard format for data written to files onthe Amiga. This standard allows fordata to be easily exchanged among de-velopment tools and products.

Minterm: An 8-bit value that deter-mines the logic operations to be per-formed by the Blitter during a datatransfer operation.

RastPort: A data structure that con-tains information needed for manipu-lating the graphics display with theAmiga ROM Kernel routines. The draw-ing pen colors, drawing mode, area fillpattern, text attributes, font, pen posi-tion, and line pattern are stored in theRastPort.

Sprite: A hardware graphics objectthat is defined and manipulated in-dependently of the background dis-play. The Amiga has eight sprites thatare 16 pixels wide by any number oflines high. Each sprite can have 4colors, or two sprites can be attachedfor a 16-color sprite. Scrolling thebackground or displaying more than320 pixels per line in low resolution or640 pixels per line in high resolutioncauses the last two sprites to beunusable.

View: A structure that defines an en-tire screen display. The View containsa pointer to a list of ViewPorts and thex and y offsets for this screen.

Viewport: A structure that defines ahorizontal section of the displayscreen. Multiple ViewPorts can be dis-played on a single screen if there is atleast one blank line between ViewPorts.Each ViewPort contains a unique colormap, display mode, width, height, x off-set, and y offset for its portion of thedisplay screen. A scrolling backgroundcan be created by changing the x andy offsets contained in the ViewPortstructure.

VSprite: A virtual sprite, the methodof describing the actual hardwaresprites for use in the Amiga animationsystem.

distance to keep the apparent motionsmooth. This distance is contained inthe AnimOb structure.

Motion-control animation specifiesobjects that have independently con-trollable velocities and accelerations.The velocity and acceleration valuesare treated as 16-bit fixed-point binaryfractions that have the formvvvvvwvvv.ffffff. The slowest possiblespeed is one pixel every 64 frames.Each call to Animate causes the ac-celeration values to be added to thevelocities.

The drawing precedence forAnimObs objects is determined bythe precedence of the Bobs thatmake them up. The animation systemautomatically updates the prece-dence in the Bob structures for eachframe to reflect the order of the firstsequence. If more than one AnimObis on the screen, one complete objectcan have precedence over another bylinking the last Bob of the firstAnimOb to the first Bob of the sec-ond AnimOb. In this way, you canmake one object appear to pass infront of another.

Both the AnimOb and AnimCompstructures can have pointers to user-supplied routines that are called everytime Animate() is called and cancause any change in the animation se-quence.

Timing

To animate an object on the Amigawithout flicker, you have to under-stand how the image is formed on thescreen. The entire screen is redis-played 60 times a second. The timeperiod between the drawing of thelast line of the previous screen andthe first line of the next screen iscalled the vertical blank. During thevertical blank period on the Amiga,the sprites, Copper, and bit-planepointers are initialized for the nextdisplay screen. The screen is thengenerated from top to bottom, left toright.

Flicker is caused when a displayarea is being altered at the same timethe area is being written to the screen.To avoid this, your animation routinesmust complete all updates before thebeam reaches the display area orafter the beam has left the display

246 BYTE • SEPTEMBER 1986

Inquiry 74

AMIGA ANIMATION

area. The current beam position canbe determined by calling the routineVBeamPos.

Under the multitasking system ofthe Amiga, each task is given 4/60second to execute before the task ispreempted to execute the next taskof the same priority This can playhavoc with any attempt to performsmooth animation, since your anima-tion routines may not be executed ina regular time frame. One method ofgetting around this problem is to in-crease the priority of your animationtask to a high level or use the Forbid()function to defeat the multitaskingsystem and allow the animation to ex-ecute exclusively in the Amiga.

Another method is to attach a sub-routine onto the vertical blank inter-rupt chain. This increments a counter,which can then be checked to deter-mine the number of frames that havebeen displayed since the last anima-tion update. The animation routinescan then use this value to correctlyposition the animation objects.

Memory Usage

In one of our applications we have ascrolling background that is fourscreens wide and five bit planes deep,requiring a total of 160K bytes. We usesix sprites to form one moving image.Each animation step uses approxi-mately IK byte. If the moving imagehas 40 steps, just the image and back-ground data would consume 200Kbytes of memory.

As you can see, it is practically im-perative to add the additional 2 56K-byte memory expansion to the inter-nal 2 56K on the Amiga to accom-modate the operating system and anysignificant piece of animation. Cur-rently, only the lower 512K bytes ofmemory are available to the customchip hardware. If additional RAM isadded via the 68000 bus, accessingimage data from there will be slowerthan accessing data stored in thelower 512K bytes because all imageand sound data must still be trans-ferred to the lower 512K bytes to beused.

Materials and Methods

We would like to briefly describe howwe have developed animation on the

The mechanics ofcreating animatedgraphics are difficult,and good animationresults only when artistand programmer takethe system to its limitsto produce visual effects.

Amiga. We are using the Lattice IBM-PC-to-Amiga cross-compiler and theMetacomco assembler and linker todevelop our programs. We wrote ourown PC-to-Amiga parallel transfer pro-gram because we found the one sup-plied with the Amiga developer's kitto be too slow. Developing large pro-grams on the Amiga itself will be dif-ficult until additional RAM and a goodhard disk are available. Adequatedebuggers for the Amiga are onlynow becoming commercially avail-able.

The art for our animation was drawnusing Deluxe Paint by Electronic Arts.Once again, we wrote our own rou-tines to extract the data from the IFFfile generated by Deluxe Paint andconvert it directly into an assemblyfile. Then we used the structures andfunctions described earlier to pro-gram the animations.

Conclusion

The mechanics of creating animatedgraphics can be difficult enough, andthe result is only as good as what yousee in the end. If a car wheel in ananimated sequence is rotating too fastfor the speed of the background pass-ing by, the animation will not reflectwhat you intended it to reflect. Goodanimation is created by both artistand programmer taking the systemto its limits to produce visual effects.In this regard, the possibilities foranimation on the Amiga are veryexciting. ■

CompuPro Solves

the Network

Puzzle

Don't bepuzzled by net-working. Compu-Pro puts all the piecestogether—our high per-formance multi-user systems simul-taneously double as network serversfor IBM® PCs. Move up to a true multi-user system and save your invest-ment in existing PCs. To find out howCompuPro can solve your networkingpuzzle, call today for the name of yournearest dealer.

fompuPro

Viasyn Corporation26538 Danti Court. Hayward. CA 94545-3999 (415) 786-0909

Suggested list prices, subject to change without notice.

Trademarks CompuPro 286/80 286/40 10 Plus 816/C2 NET 100NET 10 NETPC. HYBRID HUB Viasyn Corporation IBM:InternationalBusiness Machines Corporation ARCNET Datapomt CorporationCPLINK CompulerNet A/S

SEPTEMBER 1986 -BYTE 247

Multiuser & LAN Solutions

PC/XT/AT

MULTIUSER

KT-7/PC2 PC Work-a-like TerminalCompatibility: Multilink Advanced3,

PC-Slave/164, PC-Slave12Display: 80 x 25, IBM PC character

set, PC look-a-like attributes, 14"

green or amberKeyboard: AT style std. IBM

scan/ASCII codes.

5161/AT style opt.Pages of memory: 1 std. 2 or 4 opt.Communications: 2 bi-directional

RS-232C serial (data & printer)

portsOperating systems: works with

PC-DOS', MS-DOS5, QNX6,

UNIX7, XENIX5, THEOS8, PICK9,

and Concurrent DOS10.Retail price: $695.00

QUARTET2 4-port I/O card,

RS-232CRetail price: $299.00

LAN

K-Net2 Local Area Network

Software Compatibility: IBM'sNetBIOS1, Token-Ring1, PCNetwork1, Novell's AdvancedNetware", Kimtron's K-Net2

Access Method: CSMA/CD

Topology: Distributed Bus

Data Rate: 1 million bps (baseband)

Cable: Twisted-pair/phone wire

Distance: Up to 4000 ft.

Addressable users: Up to 255

Physical: Half-sized card

Operating systems:

PC-DOS'/MS-DOS5 2.0 or later

Dedicated file server: Not needed

Multiuser solutions supported:Multilink Advanced3,PC-Slave/164, PC-Slave12

Other features: messagecommunication and printspooling

Retail price: $395.00

WORKSTATIONS

KW-l 8088, 4.77 MHz, 256 KbytesRetail price: $995.00

KW-2 8088-2, 8 MHz, 256 KbytesRetail price: $1,195.00

KW-3 80286, 6 or 8 MHz,

256 KbytesRetail price: $1,995.00

All the above include: AT stylekeyboard, 8 slots, built-in K-Net2with remote boot. Upgradeable to"complete" PC. Monitors, videoboards, additional memory, andother keyboard layouts are alsoavailable.

(800) 828-8899(408) 436-6550 (In CA)1705 Junction Ct., Bldg. #160San Jose, California 95112

Kimtfon

Trademarks: 'IBM 2Kimtron 'Software Link 'Alloy "Microsoft ''Quantum 'Bell Labs "THEOS Software ,JPICK Technologies '"Digital Research "Novell ,2ADC© Copyright 1986 by Kimtron Corp.

248 BYTE • SEPTEMBER 1986

Inquiry 189 for End-Users. Inquiry 190 for DEALERS ONLY.

68000 MACHINES

AMIGA VS.MACINTOSH

by Adam Brooks Webber

A programmer's comparison of the system callson two 68000~based machines

1 HELPED IMPLEMENT the TrueBASIC language system on the Macin-tosh. The project has been completedfor some time now and we've all re-covered our perspective and goodhumor, but at the time I felt that if Isaw that smiling "Welcome to Macin-tosh" message one more time I wouldscream. It was in this frame of mind,on my way to see the Amiga for thefirst time, that I wrote out a list entitled"Why I Hate the Macintosh."

That incident led to this article. Ihave now completed the same projecton the Amiga and have many gripesabout that machine, too. In this arti-cle I compare the system software, ofthe two machines.

Implementing a language system isa good way to get to know a machine.True BASIC is not just a compiler andinterpreter, it's a screen editor, agraphics program, and a numbercruncher. It makes sounds, it prints, itmanipulates files—in short, it usesmost of a system's software. My com-parison of the Macintosh and theAm\ga is necessarily limited, but Ihave tried to choose areas that are ofgeneral interest and that are represen-

tative of the differences between thetwo machines. These are the user in-terface, graphics primitives, printersand other devices, multitasking, andmemory management.

The User Interface

The user interface of a system is usual-ly examined from the user's point ofview. You ask, "Is it intuitive? Is itpowerful? Is it forgiving of error?" asyou consider how to communicatewith a program. I am interested in an-other point of view: What does a pro-gram have to do to communicate withthe user? For some machines, com-municating with the user meansreading characters from the keyboardand writing text to the screen. Addingwindows, menus, and mouse opera-tions makes things more complicated,lust how complicated is shown bythe Macintosh user interface software,which determines the structure ofevery Mac program more or less com-pletely. The program must have amain loop that is executed as oftenas possible, usually 60 times a sec-ond. (One rule of thumb: The qualityof system software is inversely propor-

tional to the number of things a pro-gram must do "as often as possible.")The main loop checks for events likekeystrokes, mouse clicks, and disk in-sertions and responds to them.

Responding to an event is usually alot of work because the Mac's user in-terface software provides littleassistance. Figure 1 shows, in pseudo-code, a simple example of what a pro-gram must do to allow a window witha scroll bar to change in size—some-thing that most Mac programs haveto deal with. The system softwaredoes offer significant help in twoareas of user interface: text editingand file access. TextEdit is a subsys-tem that provides a mechanism fordisplaying and editing text in a win-dow. (True BASIC doesn't use TextEdit,but only because we have our own in-ternal string-handling procedures.) For

(continued)Adam Brooks Webber (39 South Main St.,Hanover, NH 0375 5) is a design engineerfor True BASIC Inc. He has a B.A. inmathematics from Dartmouth College andwas involved with operating system and lan-guage system development there before goingto work for True BASIC.

SEPTEMBER

I Y T E 249

AMIGA VS. MACINTOSH

file access, the system software pro-vides the Standard File Dialog, whichgives a graphic display of the contentsof a disk and allows you to choose afile. It's an excellent tool and almostall Mac programs (including TrueBASIC) use it.

Intuition, the Amiga user-interfacesoftware, supports two differentmechanisms for communicating withthe user. The console device is thesimpler of the two. From your pointof view the console device looks likea no-frills window, but from the pro-gram's side it looks like a terminal. Theprogram gets a sequence of charac-ters as input and sends off a sequenceof characters as output. Mouse clicksand other nontextual input comethrough the console device as specialANSI-defined character sequences.The console device is a very easy wayfor text-only applications to commu-nicate with the user. It is especiallyuseful for prompt-based applications

like those typical of UNIX and the IBMPC.

The Amiga's other, more powerfuluser interface mechanism is the Intui-tion Direct Communication Port, orIDCMP. The Amiga Executive allowstasks to communicate with each otherthrough message ports; an IDCMP isa message port that has a program atone end and Intuition at the otherend. Events are communicated to theprogram through the port. This is avery flexible scheme: The programcan poll the IDCMP, or it can arrangeto run only when there is some eventfor it to work on, or it can spawn aseparate task to handle events. Andthe events themselves are much morestraightforward to handle—figure 1shows in pseudocode what an Amigaprogram using an IDCMP must do toallow a window with a scroll bar tochange in size. The program can getmore control of the resizing processif it wants to, but for most programs

Amiga

Macintosh

Anything happen?

Yes, your window is a new size.

Anything happen?

Yes, the mouse button was pressed.

Fine.

Where was it pressed?In the resizing box.

If the window isn't frontmost, make it frontmost.OK.

Otherwise, what size does the user want?This size.

Hide the scroll bar.OK.

Change window sizes.OK.

Change scroll bar to the location and size

I've calculated.

OK.

Redraw the scroll bar.OK.

Remember to redraw the part of the window

whose size I've calculated.

OK.

Figure I: Comparisons (in pseudocode) of a program's actions and the operatingsystem's responses to a user event for both the Amiga and Macintosh. The userattempts to resize a window that contains a scroll bar.

(including True BASIC) it works almostautomatically.

In future revisions of Intuition I'd liketo see something like the Mac's Text-Edit for displaying and editing text ina non-console-device window andsome kind of file interface like theStandard File Dialog. But in spite ofthese deficiencies, I prefer the Amigauser interface. It is more flexible andusually requires less work on the partof the program.

Graphics Primitives

The Amiga has more in the way ofgraphics special effects than theMacintosh. It has color, many differentscreen depths and resolutions, andspecial-purpose animation hardware.I suppose there's no comparisonwhen it comes to games, simulations,art programs, and that crowd. But fora language system what I really wantis a complete, logical set of basicgraphics primitives. I want the systemsoftware to handle straightforwarddrawing on the screen. In this area theMacintosh system software excels.

The Mac knows how to draw rec-tangles, rounded rectangles, poly-gons, ellipses and arcs, and generalclosed figures. These basic objectscan be outlined, filled in with anyblack-and-white pattern, or inverted(turning black pixels in the area towhite and vice versa). The Mac canalso draw lines and write text insoftware-definable fonts. The Macin-tosh graphics subsystem, calledQuickDraw, supports a mechanism forrecording graphics operations in acompact way and then playing themback.

The Macintosh doesn't supportflood-fill. Flood-fill is what the "paintcan" does in MacPaint: Starting atsome point, the program colors in thescreen, stopping at whatever boun-dary lines it comes across. True BASICand several other programs accom-plish this with custom software. (Note:The new 128K ROMs from Apple dosupport flood-fill.) Another weaknessis the ellipse-drawing algorithm usedby the Mac: An ellipse that is substan-tially longer on one axis than on theother is drawn unconnected, with fre-quent perforations. This means thatsuch an ellipse cannot be flood-

250 BYTE- SEPTEMBER

AMIGA VS. MACINTOSH

filled—it leaks! Plenty of publishedellipse-drawing algorithms don't havethis undesirable property.

The Amiga's graphics primitives areless well developed than the Mac's.The Amiga knows how to draw rec-tangles and polygons. Objects can beoutlined, filled with any multicoloredpattern, or inverted. Sometimes themachine can perform a combinationof these operations, like outlining withone color and filling with another, inone pass. The Amiga does supportflood-fill. It draws lines and supportssoftware-definable fonts. However, itdoes not draw ellipses or any othercurved figures at all.

Figure 2 summarizes the graphicsprimitives of the two systems. TheAmiga graphics software strongly re-flects the Amiga graphics hardware.The hardware helps the system drawlines and rectangles, so lines and rec-tangles are well represented; otherfigures are not.

Another example of this kind ofhardware-oriented design is the soft-ware interface to the blitter. TheAmiga's blitter is a custom chip thatdoes bit-aligned data manipulation.One of its many duties is movingscreen images around. The strictesthardware limitation is imposed on theblitter: It can access only the lowest512K bytes of memory. That's fine,that's what hardware is all about; butthe software that uses this hardwareshould relax that restriction. Itdoesn't. One of the things you mightwant to do with a lot of memory is tostore lots of images in it. This is possi-ble on the Amiga, but you have tocopy those images down into thelowest 512K of memory before any ofthe graphics routines will touch them.

For these reasons I prefer the Mac-intosh graphics primitives. They'rewell chosen, and they have natural in-terfaces. The Amiga graphics softwareis very powerful, in its idiomatic way,and it cooperates well with the hard-ware. Is it too much to ask that itcooperate with the programmer too?

Devices

A printer is the programmer's bane.Printers are so similar on the outsidethat it seems ridiculous not to supporta large variety of them—but they're all

annoyingly different on the inside.Both the Amiga and the Macintosh tryto get around the problem of printingby offering device independence. Thismeans that the system software dealswith the problem by offering a singledevice interface, regardless of what isconnected to the computer.

To a program running on the Macin-tosh, the printer looks like a videoscreen. The program draws onto thisscreen just as if it were the video dis-play, and the system software takescare of translating those operationsinto something the printer will under-stand. This makes good sense, but inpractice it doesn't work out well at all.

The different Apple printers (andthere are really only two) accept dif-ferent subsets of the graphics primi-tives, so an operation that prints onthe Imagewriter may produce no ef-fect on the LaserWriter. The programis substantially involved in setting up,adjusting, paginating, and disposingof the special printer "screen." All thisoverhead is acceptable for a programthat is printing complicated graphics,but for an ordinary text-only printingprogram like True BASIC, it's a lot ofwork.

An especially odd aspect of printingon the Macintosh is printing "in thebackground." Programs can allow youto do other things while the printer isbusy. To do this, the program gives thePrinting Manager (the software tohandle printing operations) a pro-cedure that it can call as often as pos-

sible. The program calls the PrintingManager, and the Printing Managercalls the program over and over tolend it processor time, and then whenprinting is done the Printing Managerreturns to the program. This isridiculous, but it's the Mac's lack ofmultitasking that is at fault, not theprinting software—and multitasking isdiscussed in more detail below.

The Amiga offers several ways touse the printer. One is specifically de-signed for programs that print textonly. Using this method, the programdeals with the printer as if it were afile. The printer can be opened, writ-ten to, and closed just like a part ofthe file system. Special fonts andother features of the printer can beactivated by the Amiga's printing soft-ware, which generates the requiredcontrol sequences for the specifiedprinter. Programs that need evenmore control over printing can accessthe printer driver directly. For printinggraphics, the program passes theprinter driver the same image used bythe graphics primitives, rather like theMac's scheme but a bit less auto-matic. | Editor's note: The Amiga usesprinter-specific drivers that perform the con-version from generic primitives to hardware-specific control sequences. You select the driverthat fits your printer from a variety of printerdrivers supplied with the system disk]

For other devices, like the serialport, the Amiga uses the same two-level scheme: The device can be

(continued)

□

a

o

\s

\

rz.

c3

text

draw

□

a

a

a

fill

□

•

•

•

•

////

v//

a

•

•

7///

invert

□

a

a

a

□ =

= Amiga

Macintosh

Figure 2: A comparison of the graphics primitives supported by each machine.

SEPTEMBER 1986 -BYTE 251

AMIGA VS. MACINTOSH

Consistent, high-levelaccess to a varietyof devices is astrong point of theAmiga that has almostno counterpartin the Macintosh.

opened as a file for simple access, orit can be manipulated directly formore complicated operations. TheAmiga's parallel port and RAM diskdevice also use this method. Consis-tent, high-level access to a variety ofdevices is a strong point of the Amigathat has almost no counterpart in theMacintosh. For example, the Mac'sserial port is accessed only througha low-level driver. (Actually, it's ac-cessed through two low-level drivers,one in ROM and one in RAM; but thelatter seems hardly more than a de-bugged version of the former.)

Multitasking

A multitasking system is one that runsseveral independent programs atonce, giving each the impression thatit is the one and only. The Macintoshsystem software does not supportmultitasking. Given this, how do theMac's desk accessories appear tooperate as independent programs?

Desk accessories are parasitic. Theydepend on the currently running"host" program for almost everything.The program must call the ROM rou-tine SystemTask as often as possible,which in turn calls the various desk ac-cessories so that they can performwhatever periodic things they do. Theprogram must also notice that certainevents (keystrokes, mouse clicks, andmenu selections) belong to a desk ac-cessory and must pass those eventsalong to it.

This arrangement makes the ap-plication responsible for starting updesk accessories. A program thatallows the use of desk accessories

must find out which ones are avail-able, create a menu listing them, andstart up any desk accessory selectedby the user. This means that desk ac-cessories interact badly with the restof the system and waste more pro-grammer time than anything else I canthink of on the Mac. Every programon the Mac becomes a frantic con-spirator in the multitasking cover-up.Well, almost every program—somejust give up on desk accessories, andothers (like MacPaint) sharply restricttheir use.

The only thing worse than support-ing a desk accessory is being one.Desk accessories are hard to writebecause they're constructed so dif-ferently from the host programs theydepend on. They're written as devicedrivers—which means, among otherthings, that they are table-driven, thatthey have to be small (about 8K bytesat the most), and that they have to bevery careful not to alter the environ-ment they work in.

One thing a multitasking systemdoes is to mediate between programsthat want to use the same device atthe same time. If one program isusing, say, the printer, another pro-gram will be told that the printer can-not be used right now. No such order-liness exists on the Macintosh. TheControl Panel is a desk accessory thatallows you to change (among otherthings) the volume of the Macintosh'ssound. If a program is using theSound Driver to make sound at thesame time that the Control Panel istrying to change the sound volume,they often end up in a permanent bat-tle for control.

The Amiga supports true multitask-ing. This is visible to the user, whosees that several programs can be runat once, but it can be nearly invisibleto the program. There are no "deskaccessories" on the Amiga becausealmost any program can run concur-rently with any other. The programshould practice moderation and not,for example, count to a million just tolet some time go by. But even agreedy program like that couldoperate as one of several tasks,because the system software ensuresthat every task gets processor time.The system also mediates device ac-

cess, so that problems cannot becaused by having two programs ac-cidentally access a device at the sametime. The only thing a program reallyneeds to be polite about is memoryusage, because any program couldtake up all available memory if itwanted to. A multitasking systemreally needs a more sophisticatedplan for memory management thanthis, and, as you'll see, I have one inmind.

The Macintosh should have hadmultitasking. I can't stress enoughwhat a big contribution it makes tothe elegant design of system software.The Amiga has an excellent multitask-ing system, and I think it will havetwice the product life of the Macin-tosh because of it.

Memory Management

The architecture of the 68000 pro-cessor requires a stack, which is anarea of memory used for subroutineaddresses and other last-in/first-outdata. Since the Mac and the Amigaboth use the 68000, both have stacks;but the multitasking Amiga needs aseparate stack for each task, and thisresults in a memory arrangement verydifferent from that of the Macintosh.

The Macintosh has one stack, whichgrows from the top of memory downto a preset limit. It has two heaps, thesystem heap and the applicationheap. (Heaps are areas of memory forblocks that, unlike stack blocks, neednot be freed in any particular order.)The system heap is small and cannotgrow; it is used mostly by systemsoftware and is preserved across runsof a program. The application heapcan grow up to a preset limit (thesame limit toward which the stack isgrowing, from the other side). Theapplication heap is reinitializedeach time a program is run, so pro-grams need not remember to de-allocate blocks when they are shuttingdown.

Many heap blocks on the Macintoshfloat: that is, the system software maydecide to move a data block withoutconsulting the program that allocatedthat block. Often it will move allallocated blocks to one end of theheap so that all free memory is in a

(continued)

252 BYTE • SEPTEMBER 1?

TOP IBM BEAUTIFULLY

THOMSON T>

EjT

I

BM's Personal Computer is the standard ot the industry,but a Thomson monitor gives your IBM's great body abeautiful face. A Thomson monitor atop your IBM simplyoutperforms the IBM Color Display.Here's proof:

FEATURE

THOMSON .38mm COLOR

IBM COLOR DISPLAY

BENEFIT

Dot pitch (in mm)

.38

.43

Superior resolution

Screen

Non-glare

Glare

Less eyestrain

Switch for green/amber text

Yes

No

Improved legibility

Ail major controls up front

Yes

No

Greater convenience

Warranty

tyr.

90 days

Greater confidence

List Price

$549

$680

A bargain

Who is Thomson? Thomson is a six billion dollarmulti-national company. Unlike our competition, wedesign and build our own monitors with stringent qualitycontrol. We offer monochrome or color monitors fromTV-grade to high resolution.

Call 1-800-325-0464. InCalifornia call 1-213-568-1002(Monday-Friday, 9 a.m. to5p.m. PST) for your localThomson dealer, and startlooking at a beautiful face.

THOMSON O

A SIGHT FOR SORE EYES.

TM

© 1986 Thomson Consumer Products Corporation 5731 VI. Slauson Avenue, Suite 111, Culver City, CA 90230

Thomson is a Iradopiark ot Thomson S. A. IBM is a legisleiad liademark ol Inlsrnational Business Machines Corp. IBM model nomhof 5153. list pikes hi el fee too Fehoraty 18, 1986.

Inquiry 346 for End-Users. Inquiry 347 for DEALERS ONLY.

SEPTEMBER 1986 -BYTE 253

AMIGA VS. MACINTOSH

continuous piece at the other. Thishelps reduce fragmentation and soconserves memory. Figure 3 shows asample Macintosh memory layout.

One problem with the Mac's mem-ory management scheme is the presetlimit that divides the stack from theheap. The program has to decidewhere that limit is going to be—onceset, it cannot easily be altered. Formany programs it is difficult, if not un-

natural, to set such a permanentfence. True BASIC can't tell what kindof memory demands the user is go-ing to make: Running a BASIC pro-gram that uses big strings would usea lot of heap memory, but runningone that's heavily recursive would usea lot of stack. Another problem is thecomplexity introduced by the floatingblocks. Naturally, there's a way for pro-grams to find the current location of

non-RAM addresses:ROM, devices, etc.

\

extra RAMwould go here

4.125M

4M

t

main sound buffer

main screen buffer

applicationglobal space

stack

T

T

_t_ _t_

application heap

system heap

system globals

dispatch table

system globals

trap vectors

512K

0Macintosh memory layout (Plus)

system ROM

reserved

expansion slot decoding

reserved

8250 portsspecial-purpose chips

not used

\

expansionmemory:

heaps andstacks only

16M

10M

\

not used

special chip memoryheaps, stacks, graphics

2M512K

0

Amiga memory layout

Figure 3: A comparison of the Amiga and Macintosh memory

maps.

a floating block, but the current loca-tion isn't current for very long and it'seasy to make mistakes.

The most irritating problem with theMac's memory management is thatthe stack can easily grow down pastthe limit and wipe out part of theheap. The system software uses someunspecified amount of stack space inaddition to the amount used by theprogram. This makes it doubly dif-ficult to determine when the stack isgrowing too low. There is virtually noway to guarantee that the stack won'toverwrite the heap, and most pro-grams merely try to make it as unlikelyas possible.

The Amiga's memory managementplaces everything at fixed locations inone heap: Data blocks do not float.Some memory is not accessible to thecustom hardware, so programs needto explicitly request chip-accessiblememory (that is, available to thegraphics chips) if they want it. Eachtask has a stack, which is usuallyrather small (less than 8K bytes), andeach task has to cope with the sameproblem of noticing when the stack isfull. The operating system does notuse the task's stack at interrupt time,which makes it somewhat easier toavoid stack disasters.

One drawback of the Amiga's mem-ory management is that a programmust remember exactly what heapblocks it allocated and must de-allocate them before shutting down.If it doesn't, the memory cannot bereused until the system is reinitialized(as by turning the machine off andthen back on). The small, fixed maxi-mum size for task stacks is also anuisance. Most annoying is that othertasks may have allocated immovableblocks at any location in the heap, soa program cannot count on findinglarge continuous pieces of memoryfree. This is part of the reason whytask stacks are usually so small—theyhave to be small enough so the pro-gram can be pretty sure of being ableto allocate one.

Considering the design constraintsof the Amiga, I don't see how thememory management software couldhave been much better. It's simpleand fast, unlike the Mac's memory

(continued)

254 BYTE • SEPTEMBER 1986

PRINTER SHARING

AND PRINT BUFFERING

ALL IN ONE VERSATILE UNIT

Print Master from BayTechis an intelligent printercontroller that connectsbetween your computers andprinters. It allows you to shareone printer automatically,contend for multiple printersautomatically, or switchbetween several printers bysending a simple code. Plus,Print Master's built-in bufferspools data until your printercan receive it.

A VERY FLEXIBLEPRINTER SHARER

You configure Print Master'sports for any combination ofprinters and computers byanswering questions from theeasy-to-follow menus. Forexample, with the ten-portPrint Master, nine computerscan share one printer, eightcomputers can share twoprinters, seven computerscan share three printers, andso on, to one computer whichcan share nine printers. Youcan also menu-select thesefeatures: the baud rate, wordsize, stop bits, parity, andXON/OFF handshaking; thedisconnect time-out; and formfeeds. Ports may beconfigured individually totranslate for printers andcomputers using differentconfigurations. Allchanges you make aresaved in non-volatile memory.

PRINT MASTER'S BUFFERKEEPS YOU WORKING

Since Print Master canaccept data faster than yourprinter, you can dump a printjob into Print Master's 512Kbuffer and then go on toanother project. All connectedusers can send data to thiscommon pool buffer, andthey can be doing it at thesame time, even if no printeris available. Data is stored inthe buffer until it can be senton a first-in-first-out basis to

the selected printer. If youneed more memory, PrintMaster is optionally availablewith one megabyte buffer.

CONTROL PRINT OUTPUTFROM YOUR COMPUTER

If several users are sharingone printer, printer sharing iscompletely automatic. Thereare no codes to send. Yousimply perform your normalprint operation. If you aresharing several identical

printers, connectionis also

automatic. Again, you performyour normal print operationand are connected to thenext available printer on afirst-come-first-serve basis.Print Master will send data toall printers simultaneously tokeep your printers running atfull capacity.

If you are sharing severaldifferent printers, such as aletter printer, a laser-jet and aplotter, you do your normalprint routine but insert a shortprinter select code (whichyou can define yourself) asthe first characters of yourdata. The data is then routedto the selected printer. It'sthat easy.

CHOOSE SERIAL

OR PARALLEL MODELS

706A (6 parallel ports), $795.706C (6 serial ports), $795.706D (4 parallel/2 serial), $795.708D (6 parallel/2 serial), $895.708C (8 serial ports), $895.71OC (10 serial ports), $995.Additional 500K buffer, $249.Want more details? Call orwrite BayTech at P.O. Box387, Bay Saint Louis, MS39520. Telex 910-333-1618.Phone 601-467-8231 or

800-523-2702

Bay Technical Associates, inc.

DATA COMMUNICATIONS PRODUCTS

Inquiry 39

SEPTEMBER I986 -BYTE 255

Inquiry 297

AMIGA VS. MACINTOSH

management software, which, thoughit reduces memory fragmentation, iscomplex and slow. What I'd like to seein future machines is some memorymanagement hardware. Mainframeshave had the benefit of virtual memorysystems for the last 20 years, and it'stime this technology made it to micros.When people think of virtual memorysystems they often think of paging, theautomatic use of disk space as an ex-tension of RAM. But with memory soinexpensive, who wants to page to afloppy disk? The real benefits of mem-ory management hardware are segmen-tation and access control.

Segmentation means that memoryis grouped into logical areas, notphysical ones. There might be a seg-ment for the stack and a segment forthe heap. Hardware would take careof mapping these continuous logicalareas into possibly noncontiguouspieces of RAM and would preventthem from ever running into eachother. Access control means that thesegments can be restricted for certainkinds of operations: A segment con-taining scratch space could be ex-amined and altered but not executed,while a segment containing instruc-tions could be examined and ex-ecuted but not altered. Memory man-agement hardware like this may neverbecome an absolute necessity forsingle-user systems, but it would cer-tainly make software developmenteasier and more fun. I'd like to see itin future machines from Apple andCommodore.

Conclusion

Both of the 68000-based machineshave excellent system software inplaces, but the Amiga is the winnerin five of my six areas of comparison.The Amiga software is a bit thin: Forexample, it could use a more com-plete set of graphics primitives. Butthe Amiga's shortcomings are minorin comparison with some of the Mac-intosh's deep-rooted problems. TheMacintosh lacks multitasking but triesto fake it, and it insists on a com-plicated user interface but leavesmuch of the work up to the applica-tion. These are serious drawbacks,and it is difficult to imagine elegantrepairs for them. ■

256

I YTE • SEPTEMBER

Inquiry 95

.oQ'

^.^

^

&

Open Access II

CD

CO »—

Comparison Chart

'ratossoratab

st

g

ssor

tionserne

atabaseorm Queryeport Geneuery Proceelational DraphicsD GraphicpreadsheeoalSeekin/ord Proceommunicame Manac

CD

0

OllOCOQCOcocoO^OI—

Q_

[•J.Milil.MJ.4m

>'

s

s

V*

s

ESI

Lotus 1*2.3

>/"

v"

f

495°°

Symphony

S

\S

s

\S

S

•

s

695°°

Framework

V*

s

\f

•

\S

V

1/

695°°

Enable

\S

v>

•

V

S

v>

</

695°°

Smart

\/

\/

\S

1/

•

S

\S

S

895°°

NETWORK VERSIONAVAILABLE

INTRODUCINGOPEN ACCESS8 II

THE FULLY INTEGRATED BUSINESS SYSTEMWITH THE WORLD AT YOUR FINGERTIPS

Open Access II is anew, super-program whichcan perform virtually everymanagerial and businesstask you'll ever need withperformance and ease-of-use unheard of in theindustry.

Open Access IIcombines an extremelypowerful relational data-base and superiorspreadsheet with datacommunications, wordprocessing, 3-dimensionalgraphics, and timemanagement. Information isconveniently changed frommodule to module.

Open Access M'sDatabase features aneffective and flexible reportgenerator and userdefinable screens."Programmer," our newDatabase language,features simple interactingEnglish-like commandsto produce your customizedapplications.

Open Access II'sSpreadsheet offers a uniquecombination of businessproblem solving capabilities;including goal-seeking, andan advanced table look-upcommand. Professionalbusiness presentationsare easily produced bythe enhanced graphiccapabilities.

Open Access H'simproved Word Processorcan merge data fromSpreadsheet or Databaseeasily to produce reports

mail merge and graphic

presentations.

Inquiry 320 for End-Users.Inquiry 321 for DEALERS ONLY

Open Access H's datacommunications providesyou with the capabilities tohandle any of your microcomputer communicationsneeds. All of Open AccessH's modules work togetherand data is easilycommunicated to the rest ofthe world.

BEST OF ALL,THE PRICE

U.S. Version Only

$595.

Open Access H's superprogram is also available inthe network version. Ask fordetails. Call (619) 450-1526in California, or (800)521-3511 if outside Cali-fornia for your nearestauthorized dealer ordistributor and expand yourbusiness base with OpenAccess II, the fullyintegrated business system.

SPI

SOFTWARE PRODUCTS INTERNATIONAL

10240 Sorrento Valley Road

San Diego, California 92121

(619)450-1526

For Your Authorized Dealer

In California

(800)621-7490

Outside California

(800)521-3511

1996 Soltnare Produils International. Inc All rights reserve!Open Access is a registered trademark rjf Software Products international. IncOpen Access II is a trademark o! Software Products International. IncLotus 1 7-1 and Symphony are registered trademarks ol Lotus Development CorpFrameworkisa regisleiedlludemarkol AshtonTateEnable is a trademark 0! The Software GroupEmail is a trademark ol Innovative Software, Inc.Tandy is a registered trademark olTandjr Cmp.

•Price; U.S. Version Only

«

TW

• ^'^S^m A

^■..j^i

/.•;'>^l

^

Si

X \

BITE

Reviews

Reviewers Notebook

by Ion Edwards 261

The Franklin ACE 2200

by Albert S. Wodfudl 263

The Leading Edge Model D PC

by Stan Miastkowski 269

The Xerox 6060

by Wayne Rash }r. 275

The C. Itoh TriPrinter

by Robert D. Swearengin 283

The Turner Hall Card

by \onathan Angel 287

Turbo Prolog

by Uamir Clement Shammas 293

Software Carousel

by Mark Haas 299

Paradox 1.1

by Rusel DeMaria 303

WordPerfect 4.1

by Ricardo Birmele 311

Review Feedback 315

THE FRANKLIN ACE 2200 is an Apple Ile/IIc clone, but Albert S. Woodhullreports that the system differs from other members of the Apple family. Thetwo disk drives are integrated and the keyboard is detached. He has foundthe system to be well built and highly compatible, but two expansion slotsmay not satisfy all users.

The Leading Edge Model D PC is an IBM PC clone with a long list of stan-dard features. Stan Miastkowski reports that the computer is a very good value,with the lack of a higher processor speed being its main deficiency.

According to Wayne Rash Jr., the Xerox 6060 is virtually identical to the AT&TPC 6300. He was very pleased with the system's quiet and quick operation,although you should consider seriously his comments about obtaining afford-able support.

Apart from a defective cover catch. Bob Swearengin enjoyed working withthe C Itoh TriPrinter. The price is not cheap, but the 9-wire print head canproduce a variety of typefaces, the output is fast, and the overall print qualityis very good.

Jonathan Angel takes a brief look at one of many memory-expansion boardsfor IBM PC compatibles. The Turner Hall Card adds 2 56K bytes of memory,a clock/calendar, and software to let you set up a print spooler or a RAMdisk. Even if you are considering a similar board, his discussion on installa-tion should interest you.

Namir Clement Shammas reviews Turbo Prolog, a language that may do forProlog what Borland's first language did for Pascal. He enjoyed the language'senvironment, its very fast compiler, and its support for screen and windowmanagement, but he has important reservations concerning its nonstandardimplementation.

Software Carousel is a virtual memory manager that lets you load up to10 applications at the same time. Mark Haas suggests that the $49.95 packagehas some minor limitations, but you might appreciate the fact that you canuse any available main storage memory to hold inactive partitions.

Rusel DeMaria looks at Paradox 1.1, a relational database that combinesa powerful script language, keystroke macros, and a complex relational datastructure. The result is a powerful database well worth a look.

Finally, Ricardo Birmele examines the latest version of WordPerfect, whichincludes a wide variety of improvements and new features. Users of word pro-cessors will have little to criticize here.

SEPTEMBER 1986 -BYTE 259

, \\\

Use The Brains your appleWasnt born With.

Right at your fingertipsin CompuServe's Apple®Forums.

Join the CompuServe Apple II and IIIForum to swap everything from tall talesto short cuts with other users, and explorethousands of classic programs stockpiledsince 1979.

Swap programs and files with fellowMac owners in our Macintosh* UsersForum. Questions? You'll get answersfrom the experts here!

Visit the Macintosh DevelopersForum. Get updates to the "InsideMacintosh Software Supplement!' Interactwith the Mac "team" in Cupertino.

The Apple User Groups Forum,supported by Apple Computer, unitesofficers of Apple user groups—"ambassa-dors" for hundreds of thousands of Apple-active enthusiasts worldwide.

Easy access to free software.

• Download First-rate, non-commercial, user-supported software and utility programs.

• Take advantage of CompuServe's

inexpensive weeknight and weekend rates(when Forums are most active, and standardonline charges are just IOC a minute).

• Go online in most major metropolitan areaswith a local phone call.

• And receive a $25.00 Introductory UsageCredit with purchase of your CompuServeSubscription Kit.

Information you simply can't findanywhere else.

Use the Forum Message Board to sendand receive electronic messages, and posespecific questions to Apple owners.

Join ongoing, real-time discussionsin a Forum Conference—with Appleluminaries like Bill Atkinson, Doug Clapp,Dan Cochran, Jean-Louis Gassee, MarkPelczarski, John Sculley and SteveWozniak.

Search Forum Data Libraries for freesoftware, user tips, transcripts of previousCompuServe online conferencesand more.

Enjoy other useful services like:

• Popular Computer Magazines—

electronic editions, for your reading pleasure.Including Apples Online, which reprints

articles from leading user group newslettersnationwide and other Apple-relatedpublications.

• Other CompuServe Forums—support-ing Jazz™ and other LOTUS® products.Microsoft®, MicroPro®, Borland Interna-tional Ashton-Tate? and other software.Also Pascal, Basic, C, Forth, Assembly andother programming languages.

All you need is your Apple computerand a modem... or almost any otherpersonal computer.

To buy your Subscription Kit, see yournearest computer dealer. Suggested retailprice is $39.95. To receive our free bro-chure, or to order direct, call 800-848-8199(in Ohio, call 614-457-0802). If you're al-ready a CompuServe subscriber, type GOMAUG (Micronetworked Apple UsersGroup) at any! prompt to see what you'vebeen missing.

CompuServe

Information Services, P.O. Box 20212

5000 Arlington Centre Blvd., Columbus, Ohio 43220

800-848-8199

In Ohio, Call 614-457-0802

An H&R Block Company Inquiry 76

REVIEWER'S NOTEBOOK

This month I intended to providea quick look at the best andbrightest products from the 1986 Na-tional Computer Conference in LasVegas, but the show was disappoint-ing. Attendance was down, and veryfew new microcomputer productswere shown. However, I vowed that I'dnever return from a show cynicallyproclaiming that there was nothingthere.

Therefore, I'm happy that Alloy (100Pennsylvania Ave., Framingham, MA01701, (617) 875-6100) showed its Bi-Turbo board, a dual-tasking ac-celerator for IBM PCs and compati-bles. The plug-in card has an 8-MHzV20 processor, 1 megabyte of RAM,and a dedicated serial port. Bundledsoftware allows you use the board toperform two separate tasks simulta-neously. The software also providesdisk caching.

Alloy recommends that you have640K bytes of RAM in your system,although the board will operate withless memory. Note, however, that DOS3.1 and the Bi-Turbo operating systemtake up approximately 142K bytes ofyour system's RAM, and you musthave both a hard disk and DOS 3.0or later. The software supports mono-chrome and CGA, but not EGA. Areview of the board is now being writ-ten and should appear in BYTE thiswinter.

We hoped to find evidence of newproducts for the Amiga and the AtariST at NCC, but the best source wasthe pile of packages waiting back atthe office. For the Amiga. Byte byByte Corporation (3736 Bee Cave Rd.,Suite 3, Austin, TX 78746, (512)328-2983) has just released Info-minder, a powerful and innovativedatabase manager. With it you canstore, organize, and access text andgraphic information. A display utilitylets you view the content of files, in-

cluding standard AmigaDOS text filesand IFF format graphics. Byte by Byteclaims that the database functionsbest with files that are prepared withit.

Byte by Byte has also just releasedits expansion chassis for the Amiga.For $1795, you obtain 1 megabyte ofreserve memory (in addition to the 8megabytes of RAM accessiblethrough the expansion port), a bat-tery-powered clock and calendar, and5 DMA expansion slots. The chassis,which also will support up to threehalf-height devices including a harddisk, has a 200-watt power supply andwill autoconfigure under Kickstart/Workbench 1.2. The unit, which in-cludes a 20-megabyte hard disk, willsell for $3195.

For the Atari ST, Batteries Included(30 Mural St., Richmond Hill, Ontario,Canada L4B 1B5, (416) 881-9816) hasreleased Time Link, a time manage-ment system, and Thunder, a BorlandLightning-like spelling checker. TimeLink, which is also available for theMacintosh, lets you organize time-related information. The informationyou enter into the database isstamped with a time, allowing you toorganize and structure your time orsimply keep track of any time-basedinformation. More advanced aspectsof the utility allow you to compile in-formation in separate categories overa period of time. You could, for exam-ple, use the tool to keep track ofregular expenses.

We first saw Thunder at COMDEXin Atlanta, but it has now been re-leased. Dubbed "The Writer's Assis-tant," Thunder provides a real-timespelling checker and a macro facilityvery much like PRD+ that uses ab-breviations to speed up your typing.It also includes several writing toolsfor analyzing your prose and count-ing your words.

Finally, some reviews business. Weare, as always, concerned with pro-viding you with the best reviews in thebusiness. And, of course, we want toprovide as many reviews as possible.We have therefore organized a largenumber of comparative reviews ofIBM PC and PC AT clones, PC AT mul-tifunction boards, modems, printers,expansion boards, and. when pos-sible, languages. You will begin see-ing more of these comparativereviews in the next few issues, and 1certainly want to hear what your reac-tions are.

We obviously have no desire tosacrifice our comprehensiveness orour user perspective, and I think thatwe have done well. We will be able toreview far more products than everbefore, and all of you who havewalked the aisles at the larger com-puter shows know how important thatcan be.

However, our readers are the bestjudges. If you can, write me a quicknote (c/o BYTE, One Phoenix MillLane, Peterborough, NH 03458) to letme know how you feel about thedirection of the Reviews section. Afterall, we are trying to serve you.

As for more immediate concerns,we are organizing a comparativereview that will pit the new IBM PCConvertible against the Zenith Z-180,the Bondwell 8, and the ToshibaTl 100 Plus. The review should be veryexciting, especially since all of thesemachines are currently competing forgovernment contracts. There will alsobe a Product Description of the IBMPC Convertible in our special IBMissue this fall. In addition, we arepreparing comparative reviews of18-pin dot-matrix printers, EGAboards, three new BASICS for theMacintosh, and much more.

—]on EdwardsSenior Technical Editor, Reviews

SEPTEMBER 1986 -BYTE 261

TITAN UP YOUR ACT

UTITAN

Model No. MPC-2100A

• PC/AT COMPATIBLE

• 80286 CPU, OPTIONAL 80287

• SOFTWARE SELECTABLE6- OR 8MHz CPU SPEEDS

• 640 KB RAM ON BOARD.EXPANDABLE TO 1MB

• ONE 1.2 MB FLOPPY DRIVE

• SIX FULL SLOTS AND TWOHALF SLOTS

• PSA BIOS

• MS-DOS 3.2 & GW BASIC

• 84 KEY AT - STYLE KEYBOARC

• 192 WATT POWER SUPPLY

• FCC CLASS "B"

MIT AC'S

COMPUTITAN /M.E.G.AENHANCED GRAPHICS SYSTEMPUTS ON A DAZZLING DISPLAY

If all you want out of a computer is a fancy typewriter/calculator, thisad was not written for you—but if you see the computer as the powerfulaid to creative thinking that it is, read on:

—because Mitac's CompuTitan/Enhanced Graphics System will take you andyour colleagues out of the dreary monochrome wasteland into a splendid worldof clear, precise, brilliant color and give you all the speed and storage capaci-ty you need to shape mountains of data—and your ideas—into a creationall your own.

Here in the same package are combined Mitac's PC/AT compatible Com-puTitan and the M.E.G.A. (Mitac Enhanced Graphics Adapter). Togetherthey provide the perfect complement to the EGA-compatible display of yourchoice—and TRW will provide speedy and reliable service for all Mitac pro-ducts throughout North America! Call the toll-free number below for the ad-dress of the Mitac distributor in your area.

.E.G.A.

Model No. MBC-EGA-P

• IBM EGA COMPATIBLEEMULATES THE FEATURES OF' THE IBM COLOR GRAPHICSADAPTER, ENHANCED COLORGRAPHICS ADAPTER ANDMONOCHROME DISPLAY ADAPTER• 256 KB RAM BUFFERLIGHT PEN INTERFACEPARALLEL PRINTER PORT• FCC CLASS "B"MODEL NO. MBC-EGA/M-SPFEATURES ENHANCED EGA CARDWITH HERCULES GRAPHICSABILITY AND AN RS-232C SERIALT-$345.

mitac

When reliability is a decisive factor

Mitac Inc. No. 585 Ming Sheng E. Rd.. Taipei, Taiwan, ROC. TEL: (02) 501-8231; TLX: 20261 MECTAC. 11942 TAIAUTO; FAX: 886-2-501-4265.

American Mitac Corp. 3385 VisoCt.. Sanla Clara, CA. 95054.TEL: (408) 988-0258. 988-7508; TOLL FREE: 1-1800) 321-8344 TLX: 910-338-2201 MECTEL, FAX: 408-980-9742.

IBM PC/AT and EGA are registered trademarks of International Business Machines Corporation. MS-DOS is a trademark of Microsoft Corp.Hercules is a registered trademark of Hercules Computer Technology.

262 BYTE • SEPTEMBER 1986 Inquiry 19

SYSTEM REVIEW

The Franklin ACE 2200

by Albert S. Woodhull

Although the Franklin ACE2200 is an Apple He/IIc clone,its package is different fromthat of any member of theApple II family. The two diskdrives are integrated into themain unit, and the keyboardis detached. Franklin suppliesits own disk operating sys-tem, and the internal firm-ware, including FranklinBASIC, is different from thatof an Apple II. However, theACE 2200 is designed to bea work-alike of an Apple Heor He, with a 65SC02 micro-processor, built-in 128K-bytememory, graphics at low,high, and double-high resolu-tion, expandability with stan-dard Apple II peripheralcards, and the ability to runmost programs written forthe Apple II family.

PhysicalCharacteristics

The ACE 2200 is a well-builtsystem. The two half-height 5!4-inchfloppy disk drives have indicator lightsto show activity and read/write status.The front panel has five indicatorlights labeled Power, Diag, Disk Error,Dbl Hi Res, and CPU. I particularly likethe Disk Error light; it flickers whendisk errors are detected. This providesa useful early warning that a floppydisk is getting unreliable.

All the standard interfaces (key-board, printer, game controller, andmonitor) are attached by connectorsto the backpanel, and there are cut-outs for mounting additional connec-tors. From the rear panel, you can ac-cess a volume control for the built-inspeaker. This is a nice idea, particular-ly for a family computer that might beused for playing games with sound ef-fects. Also on the rear panel are four

Ah inexpensive Apple II

clone with a detachable keyboard

and integrated disk drives

option switches for selecting an alter-nate character set and several otherconfiguration options. The rear paneldoes not provide AC power outlets forthe monitor or the printer.

You access the inside of the com-puter by removing two small screwsfrom the rear panel and sliding thecover forward. The front panel andthe disk drives remain attached to thecover, and several cables connect thedrive assembly and front panel to themotherboard. This makes it difficult toopen the machine. This problem maynot bother many users, but for thosewho do a lot of work that requiresswitching interface cards, it maybecome annoying. Apple's easy ac-cess to the peripheral slots wouldhave been a welcome feature in theACE 2200.

When 1 opened thecabinet, I was surprised tosee that there are over 110 in-tegrated circuits on the mainboard. Recently the trendhas been to rely on smallnumbers of specializedchips, but Franklin does nottake this path with the ACE2200. This means that if amalfunction can be iden-tified, a long wait to obtain apart available only from themanufacturer is unlikely. Onthe other hand, however,most of the integrated cir-cuits, except for RAM, ROM,the microprocessor, and afew other specialized chips,are soldered directly to theboard. Thus, a local serviceperson will not find it easy tolocate a malfunction by sys-tematically swapping chips.

The Keyboard

Although I am not a skilledtouch typist, the Franklin'skeyboard seemed adequate to me.The two least-used punctuation keys,the backslash (\) and single leftquote (') keys, are located outside oftheir usual placement area, but other-wise the layout is standard, and thekeys are full-size. The keyboard is con-nected to the main unit by a coiledcable that can easily be stretched outto five feet or more. It is very light-weight, and you can easily operate itwith it resting on your lap.At boot-up, the keyboard is in Caps

(continued)

Albert S. Woodhull (School of NaturalScience, Hampshire College, Amherst, MA01002) received his bachelor's degree fromMIT and his Ph.D. from the University ofWashington. He is currently an associate pro-fessor of computer studies and biology atHampshire College.

SEPTEMBER 1986 • B Y T E 263

REVIEW: FRANKLIN ACE 2200

Franklin ACE 2200

Company

Franklin Computer CorporationRoute 73 and Haddonfield Rd.Pennsauken, NJ 08110(609) 488-0600

Size

Main unit: 15% by 131/2 by 4 inches

Components

Processor: 65SC02 8-bit processor; 1.023MHz clock speed

Memory: 128K bytes of RAM; 24K bytesof ROM

Display. Apple-compatible 40- or80-column by 24-line text display; low-,high-, and double-high-resolutiongraphics; standard composite videooutput; provisions for RF modulator toallow use of standard television setKeyboard: 90 keys, including fulluppercase and lowercase alphabetic;numeric keypad; 12 function keys; open-and closed-F (equivalent to Apple's open-and closed-Apple keys)Disk storage: Two 51/t-inch half-heightfloppy disks, format and capacity identicalto Apple II; disks can be formatted for 40tracks for about 15 percent morecapacity, but Apple compatibility is lostExpansion: Two internal connectorsprovided for standard Apple peripheralcards; expansion connector provided foran external expansion chassis, which hasfour additional slots

I/O interfaces: Composite video output,keyboard, game controller, serial printerinterfaces standard; mounting holes forseven additional connectors provided

Software

Franklin BASIC in ROM, Franklin DOS 2version 5.0, several utility programs

Documentation

User's reference manual, 150 pagesTechnical reference manual (not suppliedwith the review model)

Price

$999

SYSTEM FEATURES

MEMORY SIZE (K BYTES) DISK STORAGE (K BYTES)

200 400 600

400 800 1200

DISK ACCESS IN BASIC (IN SECONDS)

WRITE

0 20 40 60 80 100

READ

0 50 100 150 200 250

BASIC PERFORMANCE (IN SECONDS)

SIEVE CALCULATIONS

0 50 100 150 200 250 0 50 100 150 200 250

1

! 251

JJ

9

4

SYSTEM UTILITIES (IN SECONDS)

40K FORMAT/DISK COPY 40K FILE COPY

9,6

51

5.8

' ™

LOAD

SPREADSHEET (IN SECONDS)

RECALCULATE

FRANKLIN ACE 2200 IBM PC w APPLE HE

In the Disk Access in BASIC graph, a 64K-byte sequential text filewas written to a blank floppy disk and then read. (For the programlistings, see BYTE's Inside the IBM PCs, Fall 1985, page 195.) In theBASIC Performance graph, the Sieve column shows how long it takesto run one iteration of the Sieve of Eratosthenes prime-number bench-mark. [Editor's note: This program had to be adjusted to run on theACE 2200—see text] The Calculations column shows how long ittakes to do 10,000 multiplication and 10,000 division operations usingsingle-precision numbers. The System Utilities graphs show how long

it takes to format and copy a disk (adjusted time for 40K bytes ofdisk data) and to transfer a 40K-byte file using the system utilities.[Editor's note: The Disk Access and System Utilities benchmarks wereperformed using Apple's ProDOS. The ACE 2200 is supplied withFranklin's DOS 2 version 5.0, an Apple DOS 3.3 clone with improveddisk I/O. As a sample comparison, an Apple lie performing the Writebenchmark in Apple DOS 3.3 required 180 seconds, while the ACE2200 running Franklin DOS 2 ran the benchmark in 125 seconds.]The IBM PC was tested with PC-DOS 2.0.

264 BYTE • SEPTEMBER 1986

REVIEW: FRANKLIN ACE 2200

Lock mode, which is signaled by astatus light. Initially, the numeric-mode light is off, indicating that thenumeric keypad is functioning as acursor control pad. In addition to theusual cursor movements, this keypadprovides several other screen-oriented commands and single-key-stroke execution of BASIC RUN andLIST commands. The closed-F andopen-F keys duplicate the functions ofthe Apple's closed- and open-Applekeys. There are also 12 function keys,which will be examined later alongwith Franklin BASIC, since a specialBASIC command is the only docu-mented way to set them up.

The Monitor

The ACE 2200 that I reviewed cameequipped with a green-phosphorFranklin monitor. The computer gen-erates a standard composite videosignal, so any other composite inputmonitor or a standard television withan RF modulator would work with thesystem. The ACE 2200 monitor'shousing matches the main cabinet,and it tilts and swivels over a widerange. The resolution is excellent—thespecifications indicate that it has a22-MHz video bandwidth. I did havesome trouble adjusting the contrastand brightness. After I adjusted thevertical size so that Apple Logographics produced a true circle, thedots making up the characters fusedhorizontally but not vertically, givingthem an unpleasant beaded ap-pearance. I decided to decrease thevertical size when I used text.

The extremely short cable suppliedwith the monitor was a nuisancebecause of my frequent need to openthe cabinet. The monitor cable, like allthe cables supplied, has large ferritecores on each end to suppress RF in-terference, but I decided to risk usinganother longer cable I had. Since I.have cable television, I had no prob-lems with interference.

Expandability

The ACE 2200's expansion capabili-ties lie somewhere between those ofits two Apple competitors. The Applelie has an internal bus with seven con-nectors available for various periph-erals, and it requires interface cards

for the disk drive, printer, and serialcommunications. The Apple He hasno peripheral card slots, but the inter-faces for the disk drives, printer, andserial communications are built in. Inthe ACE 2200, the disk controller andthe parallel printer interfaces are builtin, and two additional peripheral cardslots are available. One of these slotsfunctions as slot 2 and is intended foruse with a serial communications in-terface. The other slot can bejumpered to be addressed as eitherslot 4 or slot 7.

The ACE 2200 also allows an expan-sion chassis to be attached by a con-nector, which is accessible by remov-ing a small cover on the right-handside of the cabinet. This provides slotsfor four additional peripheral cards.(My review machine was not providedwith an expansion chassis.)

I tested the ACE 2200 with severalof the peripheral cards I normally usein my Apple. I used an AdvancedLogic Systems CP/M Card and a Syne-tix Flashcard RAM disk extensivelywith no trouble. I wrote most of thisreview on the ACE 2200 with MINCE,a CP/M word-processing program.

While testing a Microsoft Softcard,I noticed an unusual flickering ofsome of the dots on the video display.This effect disappeared after the sys-tem had been running for a while. Italso vanished during disk accesses,when the 6502 microprocessor is han-dling I/O and the Z80 is inactive. TheTaurus 8 large-format floppy disk con-troller I normally use with my Applealso worked well with the ACE 2200under CP/M with either of the Z80 co-processors.

I had one major hardware compati-bility problem: An Apple Co-op BigBoard (a 1-megabyte RAM disk)would not work properly in the ACE2200. The system would not bootproperly when the Big Board was inplace, and the screen display wastorn, as if there was a serious disrup-tion of the video sync timing.

The problems with the Big Boardand the Softcard indicate that theACE 2200's internal timing and videosignal generation are significantly dif-ferent from that of the Apple II+ ,which works well with both cards. Pur-chasers of the ACE 2200 who intend

to use a coprocessor or an extendedmemory card should make sure thatthey have chosen compatible cards.

Firmware and Software

From my observations of the cabinet'sinsides, I found that the ACE 2200 hasa total of 24K bytes of firmware inROM. This includes a machine lan-guage monitor that is called in thesame way as the Apple's machine lan-guage monitor (by a CALL-1 51 fromBASIC). There is absolutely no men-tion of the monitor commands in theuser's reference manual. The com-mands to examine, alter, and movememory contents seem to work exact-ly as they do in the Apple II series,but other commands, including theone used to disassemble 6502 code,are missing.

One aspect of the firmware thatdidn't work properly was the graphicsscreen dump. I have a Star MicronicsGemini-10 printer, which is one of fourprinters for which a screen dumpcommand is supplied. However, try-ing to dump the screen pattern gen-erated by Franklin's diagnostics pro-gram did not work.

Franklin BASIC

Franklin BASIC is also supplied as partof the firmware. Franklin claims thatits BASIC is compatible with Apple-soft BASIC, but it has one docu-mented extension and one docu-mented omission. I found a few otherdifferences, two of which may beserious problems.

The extension is the FKEY com-mand, which allows you to set eachof the 12 function keys to generate aunique string when pressed. The on-ly limitation is that the total numberof characters in the strings for all thefunction keys must be less than 233.A program containing FKEY state-ments will hang up on an Apple, butportability of this function is not reallya necessity, since you would use itprimarily in the Hello program thatexecutes at boot-up.

The documented omission of Frank-lin BASIC is that it does not recognizecommands related to cassette tapestorage (the ACE 2200 has no tape in-terface). Since the days of cassette

{continued)

SEPTEMBER 1986 -BYTE 265

REVIEW: FRANKLIN ACE 2200

storage are now long gone, I don'tthink these commands will be missed.

One feature that the manual doesn'tdescribe is that you can enter BASICprograms using either uppercase orlowercase keys. When you list the pro-gram, you see the BASIC keywords inlowercase, and the other parts of yourprogram are displayed as they areentered. I particularly like this featurebecause it adds clarity to the listings.BASIC programs originally written onan Apple are also listed in this man-ner. There is a potential pitfall, how-ever, if you want to write a programon the ACE 2200 that will also run onan Apple. In Franklin BASIC, variablenames are saved in the form in whichthey are entered; thus, a and A aredistinct variables. The Apple cannotrecognize lowercase variable names,however. A program with lowercasevariables can be listed and edited onan Apple, but it won't run. For Applecompatibility, you must enter variablenames in uppercase.

A more serious problem occurredwhen I attempted to run a programI had written that lists text files to theconsole or printer. The program re-fused to run on the ACE 2200 whenthe 80-column display was active. Asthe screen scrolled, the text near thetop became blanked out, and even-tually the program crashed. ASCIIblanks seem to be written into theFranklin BASIC program memory. Iwas able to list only the first line ofthe BASIC program, and many com-mands would not work until I re-booted. This problem did not occurwhen I used the ACE 2200's 40-col-umn display mode, however.

This program uses no undocu-mented tricks of Applesoft BASIC, butit does output dummy characters tothe display to get around the Applequirk in which the first character sentto the output following a get com-mand is not displayed. This bug is wellknown and likely to be encounteredin commercially available Apple pro-grams, and a good Apple cloneshould be able to handle it.

I ran into a problem with FranklinBASIC while testing it with the Sieveof Eratosthenes benchmark. The stan-dard BYTE Sieve program uses a7000-element array. On the Apple 11 +

with Apple DOS 3.3, this uses almostall available memory. On the ACE2200, the problem isn't just that themachine has less memory availablefor the array; Franklin BASIC incorrect-ly executed the DIM statement with-out issuing an "Out of Memory" er-ror message. Editing the program todecrease the array size to 6000 ele-ments resulted in a correct run. Run-ning with the array size at 8000 was,of course, not possible, but in thiscase, the machine properly reported"Out of Memory."

Clearly, there are two serious prob-lems here. Since ACE 2200 ownerswill depend on software written forthe Apple, they may be disappointedby programs that use all availablememory. Moreover, it is unacceptablefor a machine to fail to detect over-allocation of storage when running ahigh-level language.

Disk Operating System

Franklin Corporation supplies itsFranklin DOS 2 version 5.0 with theACE 2200, along with several utilityprograms for disk and file copying,hardware diagnosis, and disk verifica-tion. I didn't find any problems withthe DOS, and it seems to be able toread and write text files considerablyfaster than Apple DOS. The FranklinDOS recognizes the hyphen (-) as asmart run command (as in Apple'sProDOS), which allows you to run anexecutable file by typing a dashbefore its name. This will workwhether the file is a machine languageor BASIC program, or an EXEC file.

Franklin DOS 2 also supports for-matting and using 40-track disks,which provides about 15 percentmore storage capacity on a disk thanthe Apple standard. Several DOS utili-ty programs also provide a menu op-tion, which implies that double-sideddisks are supported. However, thisisn't mentioned in the documentation,and I'm not sure whether Franklinplans to sell machines with double-sided drives in the future.

The problems with memory alloca-tion that I observed while running theSieve of Eratosthenes benchmark areapparently not in the DOS but inBASIC itself, since the problems oc-curred whether I booted with Franklin

DOS 2 or with Apple DOS 3.3 (seepage 264 for details). This means, ofcourse, that a ROM update will beneeded to correct the problem.

Software Compatibility

I was able to successfully boot andrun five different Apple operating sys-tems: Apple DOS 3.3, ProDOS, Pascal,and two versions of CP/M. In addition,I tested some Apple games on theACE 2200. Many of these are copy-protected, which usually involvessome kind of nonstandard disk inter-face. In every case, I found that a diskthat would boot on my Apple 11+would also boot satisfactorily on theACE 2200.

I had one failure running a commer-cial program, however. Spinnaker'sSnooper Troops booted properly, butcrashed early with an "Out of Mem-ory" error message. This seems to bean example of a program that needsall the memory an Apple can provide.

The ACE 2200 documentation saysthat Apple Integer BASIC is not sup-ported, but I found that an AppleDOS disk, which loads Integer BASICinto RAM at boot time, worked prop-erly, and some Integer BASIC pro-grams also ran properly. An exceptionwas the public domain TED 11+ 6502editor/assembler program, which is anInteger BASIC program that containsan embedded machine language por-tion. The program did not list or as-semble files correctly.

DOCUMENTATION

A 150-page user's reference manualwas supplied with the review machine.I found this manual useful and accu-rate, but I wanted much more detail.Everything I needed to know to set upand configure the ACE 2200 wasthere, and many of the machine's ad-vanced features were covered. How-ever, there were major gaps, includingthe complete lack of mention of themachine language monitor com-mands. No mention is made of howto configure the programmable func-tion keys to work under CP/M. It is anexaggeration to call this book a ref-erence manual.

The manual does suggest thatApple reference manuals should beconsulted for additional information.

266 BYTE • SEPTEMBER 1986

REVIEW:FRANKLIN ACE 2200

Inquiry 115

This is valid advice, but it raises somequestions about what one should ex-pect from a manufacturer.

The user's reference manual refersto a companion technical referencemanual, but the latter was not sup-plied with my machine. Even thoughevery user may not need the technicaldetails that such a manual would con-tain, most users wilt end up with someproblems that they need to ask an ex-pert about. My experience has beenthat when technical information is notpart of the package that the purchaserreceives, it is often not available to thedealers or service people either.

Conclusions

Although there is a definable nichefor the Franklin ACE 2200 betweenApple's lie and lie, it is a narrow one.Even though the lie is not supposedto be expandable, additional memoryand Z80 coprocessors are available aspiggyback boards that plug into anexisting chip socket on the main cir-cuit board. Experienced users willsurely advise those who are attractedby the ACE 2200's cost advantagesover the Apple lie that two expansionslots may not be adequate.

The Franklin ACE 2200 does havesome appeal. Physically, it is a nicepackage. I like the detachable key-board and the single cabinet with in-tegrated disk drives. Franklin's DOS isa significant improvement overApple's painfully slow DOS 3.3 forreading and writing text files, Stan-dard operating systems, such asApple's ProDOS and Pascal and (witha coprocessor) Digital Research'sCP/M, are all usable as well.

On balance, however, I don't thinkI would buy an ACE 2200 for myself.Problems that could affect every userare burned into ROM—the flawedFranklin BASIC cannot be replacedsimply by booting a different disk. Ialso find the Franklin Monitor pro-gram inadequate. In addition, I foundthat the RAM disk that I use to in-crease the performance of my Applewould not work in the ACE 2200.Users who could carefully define theirsoftware and hardware needs mightfind a combination including the ACE2200 and selected peripherals suit-able for their work, however. ■

Attention all FX80, FX100, JX, RX, & MX owners:

You already own half ofa great printer

Dealerinquirieswelcome.

Now for $79.95 you can ownthe rest. You see, today's new dotmatrix printers offer a lot more.

Like an NLQ mode that makestheir letters print almost as sharpas a daisy wheel. And font switch-ing at the touch of a button in over160 styles. But now, a Dots-Perfect

upgrade kit will make your printerwork like the new models in min-utes— at a fraction of their cost.

And FX, JX and MX models willprint the IBM character set, too.

So, call now and use your Visa,MasterCard, or AmerEx. Don'treplace your printer, upgrade it!

1-800-368-7737

In California: 1-800-831-9772

g

Sample ofletter withDots-Perfect

(Dots-Perfect)

>D re sseI ha us

Sample ofletter withoutDots-Perfect

9

837 E. Alosta Ave., Glendora, CA 91740 Tel: (818) 914-5831

An upgrade kit for EPSON FX, JX, RX, & MX printers

EPSON is a trademark ofEPSON America, Inc.

POWERFUL INCIRCUIT EMULATION,

T

Get 95% of what you get from the Big Guys,For 10% of the cost.

You get full-speed, real-timeexecution. Operates up to 10MHz with 16 hardware break-points, 8K bytes of overlay RAM,histogramming and up and downloading of S-record files.

Designed for systemdevelopment, trouble-shooting, debugging ortesting in the lab, field,or at home, NICE 68000simply plugs into thetarget /iP socket and anyRS-232 terminal or terminalemulator.

Send check, money order, orVISA/MASTERCARD to NICE,215 Fourier Ave,Fremont, CA 94539;CODs accepted.

•Other NICE emulators arc available for theZ80, 8088, 8085 and NSC800 starting at$550.00.

At * 1795,00' NICE 68000 offers thebest emulator price/performance.

For information, call800-NICOLET (800 642-6538) or415 490-8300 (in California).

^Nicolet

NICE is a trademark of Nicolet. /.HO is a trademark of Zilog, inc.

Inquiry 254

SEPTEMBER 1986 -BYTE 267

NCmodem is your

>».*

/■''v.

PC/XT/AT/bus compatibleAuto-dial/auto-answer/Tbne or pulse dialSupports Bisync or SDLC links

Models:•201

(2400 baud)

• 212AT/201

(1200 and 2400 baud)

•208

(4800 baud)

Description:

SYNCmodem is an IBM PC, XT or AT buscompatible interface card capable ofoperating as a synchronous modem oras a synchronous interface card.

SYNCmodem is ideal for remote PC-to-mainframe or PC-to-PC communications.It comes fully integrated with 3780Plus™,CLEO-3270 SNA or BSC, and CLEO-5250 SNAsoftware packages.

3780Plus allows fast and efficient filetransfers, over common phone lines,between your PC and any micro, mini, ormainframe that supports 2780/3780Bisync protocol.

CLEO-3270 SNA or BSC and CLEO-5250SNA allow your PC to emulate a remote327x or 525x terminal device. All you needis a phone line.

The 212/201 modem includes the Mirrorasynchronous software package in additionto your selected CLEO SNA or BSC package.

For details call 1(800)233-CLEO.In Illinois 1(815)397-8110.

OEO

CLEO Software

a division of Phone 1, Inc.1639 North Alpine RoadRockford, IL61107TELEX 703639

CLEO Is a registered trademark of CLEO Software.SYNCmodem and 3780Plus are trademarks of CLEO Software.

Inquiry 66

SYSTE

EVIEW

The Leading EdgeModel D PC

by Stan Miastkowski

The Leading Edge Model DPC is the closest thing to a"plug in and run" IBM PCclone that 1 have seen. Stan-dard features include amonochrome (amber orgreen) monitor, two 514-inchfloppy disk drives, 2 56Kbytes of RAM, serial andparallel ports, monochromeand RGB display adapters,and a clock/calendar. Thebasic Model D retails for$1495 and comes with an im-pressive 15-month warranty.A printer is the only additionyou will need to make theModel D into a complete sys-tem, although you can alsoadd a RAM upgrade to 640Kbytes, an 8087 arithmeticcoprocessor, and a 20-mega-byte hard disk drive. You canalso purchase the Model Dwith a 14-inch 640- by200-pixel RGB monitor inplace of the monochromemonitor.

The Model D has many useful fea-tures. The system unit and the moni-tor both come with extra-long(10-foot) AC power cables. The powersupply's fan is extremely quiet. Thepower and reset switches are on thefront of the system unit, and themonitor's power, brightness, and con-trast controls are on the front of themonitor. The system unit even has adepression in which the monitor sitscomfortably.

Inside the System Unit

Despite the small footprint of theModel D (a full five inches narrowerthan the IBM PC), you still have plentyof room for expansion, because the

An inexpensive, well-builtIBM PC done with a longof standard features

parallel and serial ports and displayadapters are built into the mother-board. The Model D power supply israted at 130 watts, which is enoughpower for the system and most addi-tional boards. There are four full-length expansion slots available,enough for most environments. Asyou might expect in a system thiscompact, the components on themotherboard are closely packed.

The system unit cover slides forwardoff the machine after you remove fivescrews. The motherboard, which con-tains all memory and circuitry forports, completely covers the bottomof the case. The disk drives and powersupply sit on a shelf mounted above

the board. To gain access tothe entire motherboard, you»• x must unplug the disk drive"51 cables and power supplyconnectors, remove fourscrews from the front of theshelf and five from the back,and then lift out the powersupply and disk drive assem-bly. The entire process takesabout three minutes. Theonly potential problem isthat you must keep track ofthree differently sized screws.The position of the4.77-MHz 8088 processor (inthe middle of the mother-board just in front of the fourexpansion slot connectors)made it impossible for me touse an 80286 expansioncard. The connector that re-places the 8088 just wouldn'treach, no matter which slotI used. The motherboardalso has an empty ROMsocket next to the BIOSROM. You can install up to32K bytes of ROM.

In addition to a 6-pin connector fora light pen, there are several con-figuration jumpers on the mother-board. They enable and disable themonitor controller, set the interruptlevel of the clock, enable and disablethe I/O controllers, and set the in-stalled RAM and ROM size.

The standard 2 56K bytes of RAMcomes on easily accessible memorychips on the front of the mother-

[continued]Stan Miastkowski (P.O. Box 548, Peter-borough, NH 03458) is a freelance writer,northeast bureau chief for Newsbytes, andeditor in chief of the McGraw-Hill Micro-computer Handbook.

SEFTEMBER 1986 • BYTE 269

Leading Edge Model D PC

Company

Leading Edge Hardware Products Inc.225 Turnpike St.Canton, MA 02021(800) 343-6833

Size

51/2 by 14 by 15V2 inches; 43 pounds

Components

Processor: 477-MHz 8088Memory: 256K bytes, expandable to640K bytes

Mass storage: Two double-sided 360K-byte 51/4-inch floppy disk drivesDisplay: 12-inch green- or amber-phosphor monochrome display standard;dual-mode display adapterKeyboard: IBM PC compatible; 83-keylayout

Expansion: Four 62-pin, full-length IBMPC-compatible slots

I/O interfaces: Parallel printer; RS-232C;clock/calendar

Software

MS-DOS 3.1; GW-BASIC; diagnostics disk;demonstration disk; Leading Edge wordprocessor

Options

20-megabyte hard disk drive; 14-inchRGB monitor; 384K-byte memoryupgrade; 8087 numeric coprocessor

Documentation

Operator's guideGuide to MS-DOSGuide to GW-BASIC

Price

Basic configuration: $1495

With RGB color monitor: $1895

With 20-megabyte hard disk and

monochrome monitor: $1895

With 20-megabyte hard disk and RGB

color monitor: $2295

SYSTEM FEATURES

MEMORY SIZE (K BYTES) DISK STORAGE (K BYTES)

200 400 600 BOO 1000

.100 800 1200 1600 2000

I 64/128I

256(640I 256/640

I 360/720

II 360/720

I 140/280

_l

DISK ACCESS IN BASIC (IN SECONDS)WRITE READ

0 20 40 60 80 100

50 100 150 200 250

BASIC PERFORMANCE (IN SECONDS)SIEVE CALCULATIONS

0 50 100 150 200 250 0 50 100 150 200 250

——t

.--".. ■

1

245

SYSTEM UTILITIES (IN SECONDS)40K FORMAT/DISK COPY 40K FILE COPY

0 10 20 30 40 50 0 10 20 30 40 50

=T"

MBBBH9.6

^|

■^5.8

SPREADSHEET (IN SECONDS)LOAD RECALCULATE

0 5 10 15 20 25 0 5 10 15 20 25

10

LEADING EDGE PC (MODEL D) . i IBM PC ■■ APPLE HE

The Memory Size graph shows the standard and optional memoryavailable for the computers under comparison. The Disk Storagegraph shows the highest capacity for a single floppy disk drive andthe maximum standard capacity for each system. The graphs forDisk Access in BASIC show how long it takes to write and then reada 64K-byte sequential text file to a blank floppy disk. (For the pro-gram listings, see BYTE's Inside the IBM PCs, Fall 1985, page 195.)The Sieve graph shows how long it takes to run one iteration of the

Sieve of Eratosthenes prime-number benchmark. The Calculationsgraph shows how long it takes to do 10,000 multiplication and 10,000division operations using single-precision numbers. The System Util-ities graphs show how long it takes to format and copy a 40K-bytefile using the system utilities. The Spreadsheet graphs show howlong it takes to load and recalculate a 25- by 25-cell spreadsheetin which each cell equals 1.001 times the cell to its left. The spread-sheet used was Microsoft's Multiplan.

270 BYTE • SEPTEMBER 1986

yk Put More Printers

InBusinessThan Anyone Else.

j High

aduc

Resolution 24 PinPrinter Sales, 1982 1985

TOSHIBA

Soure«, DaUquut

. k f Sa.leS„°f 24pin dot matrix Printers have increasedsubstantially over the past several years. Dot matrixprinters account for over 60 oer rent tl„ . .7industry sale* TfxsHini t P?[ , thc total printer

SlSWS P«?I?A has the Iar(5est percentage ofall the industry's 24-pin print head printer sales.

There are more Toshiba 24-pin dotmatrix printers installed in major corpora-tions, as well as in medium and small com-panies, than any other brand*.

More than Epson! More than NEC?More than Brother3 More than Fujitsu?

ThafsbecauseToshiba gives you more.

OurP351'sprinthead, for in-stance, lasts up totwo times longerthan anyone else's.

And during its long life it will giveyou letter quality printing at 100 CPS, draftsat 288 CPS and picture-perfect dot-address-able graphics.

The P351 emulates Qume Sprint ll5and IBM Graphics? and most major softwarepackages utilize its expanded command setPlus, you can add over 40 downloadable typefonts on both disks and plug-in cartridges.

The P351 is compatible with theIBM PC7 family and goes about doing its jobin the quietest manner possible.

If you need color graphics capability,there's the new P351C.The 24-pin printheadwe pioneered and perfected produces high-resolution presentation graphics on paper forreports and on transparencies for projection.

The P351C will also create multicolortransparencies for all software compatiblewith the IBM Color Printer8 and can outputgraphics from Microsoft Chart.9

So when it comes time to select aprinter for your office, why not consider theToshiba P351 or the new P351C. They'reboth good for business.

For the name of the Toshiba dealernearest you, call 1-800-457-7777.

^Installed base figures from Dataquest. 1. Epson is a registered trademark of Epson Corporation. 2. NECis a registered trademark of Nippon Electric Corporation. 3. Brother is a registered trademark of Brother

International Corporation. 4. Fujitsu is a registered trademark of Fujitsu America. Inc. 5. Qume 11 is aregistered trademark of Qume Corporation. 6,7,8. IBM Graphics, IBM PC and IBM Color Printer areregistered trademarks of International Business Machines Corporation. 9, Microsoft Chart is a registered

trademark of Microsoft Corporation.

Inquiry 355

In Tbuch with Tomorrow

TOSHIBA

Toshiba America, Inc., Information Systems Division

SEPTEMBER 1986 -BYTE 271

REVIEW: LEADING EDGE MODEL D PC

board. There are four rows of 64K-bitchips, two rows of which are insockets. To upgrade the system to640K bytes, you need only removethe 64K-bit chips from the sockets,replace them with 2 56K-bit RAMchips, and change a jumper. Theoperator's guide includes completeand clear instructions for the change.

Display Options

The connectors for the monochromemonitor, color monitor, RS-232C serialport, and parallel ports are clearlymarked on the rear panel of theModel D. Between the monochromeand color jacks is a single-throw switchused to select either port, eliminatingsetup problems. You can circumventthe switch in software by using thefamiliar MODE command or theModel D MS-DOS's COLOR orMONO commands.

The monochrome adapter is Her-cules-compatible; you can thereforedisplay graphics on the monitor invarying shades of green or amber.Resolution is 720 by 348 pixels. Thedisplay has a nonglare surface andcan tilt up and down. Both text andgraphics characters are crisp and ofhigh quality.

Disk Drives

The standard Model D comes withtwo double-sided 360K-byte 5!4-inchfloppy disk drives, mounted one overthe other. A mechanical switch on thefront of each drive locks the drive

door closed after you insert a disk.The switches are not absolutely nec-essary, especially since you don't haveto throw the switches to use thedrives, but they do keep a disk frombeing inadvertently removed at an in-opportune time.

The optional 20-megabyte hard diskdrive replaces the 10-megabyte driveavailable with early model Ds, with noadditional cost for the extra 10 mega-bytes. This drive replaces the secondfloppy disk drive. The hard disk con-troller uses one of the four expansionslots. If you want a hard disk but alsowant to keep your second floppy diskdrive, you might consider one of theincreasingly popular hard-disk-on-expansion-card systems.

Keyboard

The 83-key QWERTY keyboard has anIBM Selectric layout with large Returnand Shift keys (see photo 1). The key-board feel is excellent, better thanmany of the more expensive key-boards. However, there are no soundswhen you hit a key. The keyboard it-self weighs enough to keep it firmlyplanted on the typing surface, and itcomes with a 6-foot coiled cord.

Software

The Model D comes with MS-DOS 3.1,GW-BASIC, a demonstration disk, adiagnostics disk, and the LeadingEdge word processor.

The demonstration disk is an ad-junct to the operator's manual and

dLlLLL LLL I;

J. 1J- LJi- LlrJLn

pr:l'_L' T :

: lETUpr

■

■. p3

HEI TlLlrliL

1' .l:LLk_

* 7'l'T l"M I

■I 1 l-FT?

■

UN 1- ]'

I

■

Photo I: Tk Model D's 83-key QWERTY keyboard.

uses the monochrome card's graphicsto walk beginners through the fea-tures and capabilities of the Model D.

The diagnostics disk has twelvestandard tests that you can run in-dividually or all together. The tests arewell designed and include copiousstatus messages that tell you howlong the tests will take and how theyare progressing.

To test compatibility, I ran a numberof commonly used applications, in-cluding WordStar, MultiMate, PFS:Ac-cess, and a few games. 1 experiencedno difficulties. To test the Model D'shardware compatibility, I used amodem board and an extendedgraphics adapter, and 1 replaced thefloppy disk controller. Everythingworked flawlessly. When 1 needed tochange jumpers, the instructions inthe operator's manual were easy tounderstand.

Documentation

Three manuals come with the ModelD: an operator's guide, a guide to MS-DOS, and a guide to GW-BASIC.

Although the 110-page operator'sguide isn't expensively produced, it'sone of the best introductory texts I'veseen. The manual gives excellent in-structions on setting up and gettingstarted. There's a substantial sectionon possible problems and their cures,as well as a short introduction to MS-DOS and subdirectories. The bookfinishes up with clear, well-illustratedinstructions on installing additionalmemory and a hard disk. The othermanuals are also of high quality.

Although there is no technicalmanual for the Model D, more de-tailed information is easy to obtain.There is a toll-free support number,and the technical support people areknowledgeable and helpful.

Summary

The Leading Edge Model D PC is athoughtfully designed and well-builtIBM PC clone. Its long list of standardfeatures makes it stand out from thepack. The lack of a higher processorspeed (see page 270) is perhaps itsgreatest shortcoming. However, atnearly half the cost of a comparablyequipped IBM PC, the Model D is asuperb value. ■

272 BYTE • SEPTEMBER 1986

ANYONE CAN BUILDA CLONE, BUT...

ONLY PANASONIC

GIVES YOU ABUSINESS PARTNER

Introducing the desktop computers that can make your life easier:the Panasonic Business Partner and Panasonic Business Partner 286.Call 1-800-PIC-8086 for the dealer nearest you.You'll agree: THE EASIER, THE BETTER.

TM

Panasonic,

Office Automation/^Wu

Uni

Inquiry 419

SEPTEMBER 1986 -BYTE 273

For $295 you can drawyour own conclusions.

* DraM 1. The first high performance CAD software everyone can afford.

Low-cost, high performance computeraided design & drafting (CAD) software isfinally available for use on your PC.

There's never been a professional CADpackage so complete at such a low cost.

Drafix 1 from Foresight Resources.Only S295.

Powerful, full-featured secondgeneration CAD software.

Drafix 1 offers all of the capabilitiesyou expect to find in packages costingS2.000 or more.

This is not simply a souped-up paintpackage. Drafix 1 is a breakthrough indesign that organizes sophisticated CADfunctions into smooth, fast operations.All of the drawing, designing and editingfunctions that designers demand from aserious CAD tool are included in Drafix I.

A breakthrough in screen designand visual user interface.

Drafix 1 features the best organizedscreen design ever devised. Very simply,it displays all the information you need,all of the time.

The entire menu hierarchy is displayedconstantly. There's no need to memorizecommands or search for menus.

Snap-mode options are continuallyshown on the left screen border and canbe selected "on the fly" by either pointerdevice or a single keystroke. Roll-downscreens provide quick access to the vir-tually unlimited drawing, display andediting options.

And it's all controlled by a versatilethree-button mouse, or digitizer, with on-screen prompts so each button function isclearly defined.

AutoCAD' compatible for easyexpansion.

If you or someone in your companyalready uses AutoCAD, Drafix I offers aninexpensive way to add to your capability.

everyone

The optional Drafix 1/AutoCAD file ex-change utility permits transfer of draw-ings between Drafix 1 and AutoCAD.

It's the perfect, low-cost alternativefor increasing your drafting and designcapacity.Unbelievable low bundle prices.

To get you up and running we offertwo special hardware bundles — all theequipment you need at prices you won'tbelieve

Gel Drafix 1 with your choice ofTorrington's Manager Mouse or theLOGIMOUSE" C7 for just S395.00.Or get Drafix 1 with the SummaSketch12" x 12" digitizer tablet with stvlusfor just S650.00.

Order today. Take advantage of our30-day, money back guarantee.

We're so certain you'll like the per-formance and versatility of Drafix 1 you'rewelcome to try it risk free for 30 days, ifyou're not completely satisfied, return itto us for a full refund.

Find out just how good CAD softwarecan be. For only S295.00.

Use our toll-free number and anymajor credit card to order your copyof Drafix I today.

SPECIFICATIONS

ModiFy/Edi!

Attributes

Cadi ipacillcilloni

Break/Divide

Litticc C language

Idkellcriamier

HUO graphics

!nm

Floating point database

Stretch

Cop idc esse > support

Ema

PC DOS/MS DOS 2 1 or later

Eiplode symbols 4 polygons

Until 1 FmIuiii

Mast

Heme

Replace

Lines

Merge

Pi markers

Region select

Arcs & circles

Workgroup

Note tm

Polygons & ellipses

Aulohilching, polygon (ill

Symbols'individual 4 nested

Itim ittributis

Aula Dimension!

16 pen colors

Linear Ho rArer/Aligned

Z5S Layers

Angular

D<a/Rad>us

12 leu 'ants

Leader Moles

32 Pi marker types

Ordinate

Screen Die pi ay

Cham & Baseline

Zoom/PanrFull

Cfitck calculations

B Save View

Coo'di nates

Slide save/view

Distance 4 angle

Grids on'alt

Area 4 perimeter

Metric 4 Englnh Standards

Mem Masking

Engineering (decrmal'ir action

i Hatdnre

Architectural in in)

Computers

IBM PC XI AT and compatibles

Pto|bc1 drawing into

»JB 6300 Plus

Zenith

Numeric Input

System Re quite men is

Keyboard and cursor

- 5l?K RAM

Absoiule Reiat'vt Pour

- RS 232 Comm port

Snap Model

-Mouse or Oigituc

Grtdpoinl

- Coprocessor leconunended

tr.dB0.m

Graphics Display boards

Midpoint

IBM CGA-EGAjnd compatibles

Intersect

Hercules and a Mide range ot

On item

graphics Boards

Quad rani

DigihiBrs 4 Lection

Tangent

All popular locator de*ces supported

Arc center

Plotters

Iran storm/Copy

All popular plotters 1 C sriel

Move

supported

Rotate

£ sue pJpnei ophon avariasie

Scate

Printers

MltlW

All papular laser and da! malm

Align

printers supported

Order Now! Call Toll-Free!

1-800-231-8574.

Ext. 150

□ Drafix I CAD Package $295

□ Drafix I witb Mouse $395

Torrington

LOGIMOUSE

□ Drafix I with SummaSketch tablet $650

□ AutoCAD File Exchange Utility $ 95

Dealer inquiries welcome

Check, money order, Visaand MasterCard accepted

FORESIGHT

RESOURCES COW. ■

932 MassachusettsLawrence, KS 66044913/841-1121

AutoCAD's a trademark o'Autodesk heIBM PC/XT 'A! are trademarks ol the IBM Corp

Suriiriuiiki'ldi is n luiltniarfc (>! SurnmagiaphiCS lotManager Mouse is a irnrlemark nl Inmnqion Company

Inquiry 128

SYSTEM REVIEW

The Xerox 6060

by Wayne Rash Jr.

The Xerox 6060, which is vir-tually identical to the AT&TPC 6300 (see the review byBob Troiano in the Decem-ber 1985 BYTE), providesquiet, unobtrusive, and veryfast operation. The machineis based on an Intel 8086microprocessor running at 8MHz. The 8086 uses a 16-bitdata path, allowing fasteroperation than the 8-bit datapath in the IBM PC. For someapplications, the Xerox 6060is nearly three times as fastas the IBM PC. The 6060'smain problem is its very cost-ly support.

Besides the exterior color,the biggest difference be-tween the 6060 and theAT&T PC 6300 is the monitor.Like other Xerox computers,the 6060's monochromescreen is black and white.Green and amber apparent-ly are not available. There isalso a noticeable differencein the software supplied with theXerox 6060. Along with MS-DOS, youget a menu-oriented user interface thatperforms most MS-DOS functions.

The System Unit

The Xerox 6060 system unit is abouttwo-thirds the size of the IBM PC. Myreview unit contained a half-height10-megabyte hard disk drive and a360K-byte floppy disk drive. Bothdrives are very quiet. My floppy diskdrive had a strong ejection spring. Inmany cases it ejected the floppy diskto the keyboard and sometimes to thefloor.

A pilot light and a reset switch aredirectly beneath the disk drives. If youhave one of those programs that turnsyour screen off after a few minutes,it's nice to be able to tell at a glance

A fast-running machine

with an Intel 8086 microprocessor

and a \6~bit data path

whether the machine is really off orif the screen is just blank.

The rear of the Xerox 6060 containsthe power switch, the communica-tions ports, the keyboard connector,and the monitor connector. The hous-ing for the cooling fan protrudesslightly over the main unit. Theparallel and serial connectors are nextto each other near the bottom. Bothconnectors are DB-25s. The monitorconnects to a third DB-2 5 located onthe rear of an expansion board. Fourscrews allow you to remove both thetop and bottom of the machine.

Like the AT&T PC 6300, the Xerox6060 has its motherboard beneaththe bottom panel. You must removethe bottom of the computer tochange switch settings or to add amath coprocessor. As unlikely as it

seems, this is more conve-nient than the access to theinside of many other ma-chines. Once the bottom isoff, you have clear, unob-structed access to the entiremotherboard. Most of thecircuitry is soldered in placerather than socketed, so youwon't be able to do muchwith the motherboard otherthan change the switch set-tings.

The backplane containsseven expansion slots thatwill accept most IBM PC-com-patible expansion boards.Two slots also have an addi-tional connector that allowsuse of the full 16-bit datapath from the 8086 micro-processor. The additionalconnectors are arranged andlocated differently fromthose on the IBM PC AT,eliminating any chance ofusing PC AT expansion cardsin the 6060.The disk controller and an optionalmemory-expansion card each takeone of the seven slots. At the far leftedge of the case is the graphics card,into which the monitor is plugged.

The Keyboard

The Xerox 6060 keyboard is identicalto that of the AT&T PC 6300. The rearof the keyboard can be raised andlowered to three different angles. Thekeys are arranged like those on theIBM PC, although the Caps Lock andNum Lock keys have LEDs to indicatewhen they are active. The touch of the

[continued)Wayne Rash Jr. is a member of the profes-sional staff of American Management Sys-tems Inc. (1777 North Kent St., Arlington.VA 22209), where he consults with thefederal government on microcomputers.

SEPTEMBER 1986 -BYTE 275

REVIEW: XEROX 6060

Xerox has extensivelymodified some MS-DOSsystem utilities.

keys is quite light. At the rear of thekeyboard is a connector for themouse.

The Mouse

The two-button optical mouse workswith Screenmate, the MS-DOS shell(see description below). The left but-ton indicates a selection; the right but-ton confirms acceptance. You slidethe mouse on a piece of gray card-board that comes supplied with it. Anoptical sensor on the mouse's under-side determines direction using thedots created by the cardboard's half-tone. The mouse is very sensitive tomovement, and I obtained betterresults by using Washington Post wantads instead of the gray cardboard.

The Monitor

1 found the screen of the Xerox 6060,which is black with white letters, tir-ing to use for long periods, i talkedto people who had used this screenall day, and they complained of head-aches. 1 would recommend that youconsider buying the color monitorfrom Xerox or the monochromemonitor and card from AT&T.

Because the monitor receives itspower through the same DB-2 5 con-nector that provides the video signal,you will probably have difficulty usinga third-party monitor. The charactersare not the same as the IBM characterset, but they do not seem as striking-ly clear as those used by AT&T. Amonitor stand allows you to tilt andswivel the screen.

Using the Xerox 6060

The complete installation process forthe hard disk-equipped review ma-chine took about 20 minutes. It takesalmost no training to start and run thecomputer. I was able to use the sys-tem before I looked at the documen-tation. When you turn on the system,it performs a number of self-diag-nostic tests and reports on their out-

come. The Xerox logo then appearsfor a few seconds, followed by theScreenmate main menu. You can usefunction keys or the mouse to controlthe menu functions.

The Xerox 6060 is so fast that youmay change some of the ways you useyour software. For example, you maywant to slow down Framework menusso you won't miss the animation ofthe windows.

I used all my IBM PC applicationsoftware in the 6060 without incident,although many programs ran fasterthan they do on other machines. Insome cases there are special installa-tion programs for the AT&T PC 6300.If this is the case, use these specialprograms, since the PC 6300 is essen-tially identical to the 6060.

Despite software compatibility, theXerox 6060 is not totally compatiblewith the IBM PC. Since the 6060 hasa 16-bit data path, it requires specialmemory-expansion boards. Thus,third-party memory and multifunctionboards may not run properly, or theymay not have the use of all their func-tions. A Tall Tree JRAM-2 board, forexample, functions properly exceptthat it does not recognize the extramemory, and the memory-relatedsoftware for the board will notfunction.

The Screenmate Shell

With MS-DOS, Xerox includes Screen-mate (which is called XMATE on thedisk), a command-processing shellthat provides all the functions from amenu. The Screenmate menu will re-spond to input from the keyboard orfrom the mouse.

Nearly any MS-DOS command orprogram can be run from withinScreenmate, but at times, such aswhen copying files, it is more difficultthan simply typing the command atthe command level. The only way thatI was able to copy files while usingScreenmate was to copy one file at atime. I was also unable to set thesystem clock from within Screenmate,despite following the directionsexactly.

Xerox has modified a few of the MS-DOS system utilities extensively. TheMODE command, for example, refersyou to the Xerox program Configur,

which allows you to set up the com-munications ports by using a menu.You can even convert from codes de-signed for one type of printer to thoseof another. While you gain some ad-ditional functions, you lose the con-trol that the original commands giveyou. I think it would have been pref-erable to retain the utilities in theiroriginal form so that advanced userswould have access to them.

Eliminated are two MS-DOS com-mands: the ASSIGN command, whichlets you reassign disk drives, and theGRAPHICS command, which lets youprint graphics screens using the Pit Sckey. This last function is replaced tosome extent by the Xerox devicedrivers, which translate a program'scodes to those of another printer.

Whatever the trade-offs from thechanges to the system utilities may be,one definitely useful change is Xerox'son-line help files. Most of the pro-grams Xerox modified will let you getmore information about the com-mand by pressing a key for help.

Documentation

Xerox has rewritten the standard MS-DOS documentation. The result is aset of manuals that should be under-standable to most beginners but is in-sufficient for more advanced users.

The Screenmate manual servesmore as a tutorial than as a referencemanual. The manual has an index, butit is limited to a cross-reference ofScreenmate operations. Less-usedoperations, such as partitioning thehard disk, are in the appendixes.

The Screenmate manual is well writ-ten, and all operations are clearly ex-plained. New users should have notrouble following its procedures.

Like the Screenmate manual, theMS-DOS manual presents explana-tions in the form of a tutorial, a smalldisadvantage when you only need tolocate a discussion on a single com-mand. Of course, the use of menus tocontrol operations lessens the needto understand command syntax. Theindex of the MS-DOS manual is some-what more complete.

The hardware and setup manual isexcellent. It explains each step clear-ly and completely with fine illustra-

[continued)

276 BYTE • SEPTEMBER 1986

REVIEW: XEROX 6060

Xerox 6060

Company

Xerox Corporation1301 Ridgeview Dr.Lewisville, TX 75067(214) 420-7200

Size

15 by 151/2 by 15V4 inches

Components

Processor: Intel 8086

Memory: 256K bytes, expandable to

640K bytes

Mass storage: Two half-height 360K-byte

51/t-inch floppy disk drives, or one floppy

disk drive and a 10-megabyte hard disk

drive

Display: 12-inch white phosphor, 80

characters by 25 lines; color is optional

Keyboard: 83 keys, 10 function keys;

indicator lights on Caps Lock and Num

Lock keys

Expansion: Seven slots, two of which are

16-bit

I/O interfaces: One serial and one

parallel port

Software

MS-DOS 2.11; Screenmate shell (XMATE)

Documentation

MS-DOS manual, Screenmate manual,hardware and setup manual

Price

Basic system with two floppy disk drivesand 256K bytes of memory: $2605Basic system with one floppy disk drive, a10-megabyte hard disk drive, and 256Kbytes of memory: $2810Basic system with one floppy disk drive, a20-megabyte hard disk drive, and 512Kbytes of memory: $3505

SYSTEM FEATURES

MEMORY SIZE (K BYTES)

0 200 400 600 800 1000

DISK STORAGE (K BYTES)

O 400 800 1200 1600 2000

1

^1

■ M 64/125

i

DISK ACCESS IN BASIC (IN SECONDS)

WRITE

0 20 40 60 80 100

READ

0 50 100 150 200 250

BASIC PERFORMANCE (IN SECONDS)

SIEVE

50 100 150 200 250

CALCULATIONS

0 50 100 150 200 250

245

_L

SYSTEM UTILITIES (IN SECONDS)

40K FORMAT/DISK COPY 40K FILE COPY

10 20 30 40

10 20

5 8

SPREADSHEET (IN SECONDS)

LOAD

0 5 10 15 20 25

RECALCULATE

0 5 10 15 20 25

1

—

4.6

XEROX 6060 H IBM PC ■> APPLE IIE

The Memory Size graph shows the standard and optional memoryavailable for the computers under comparison. The Disk Storagegraph shows the highest capacity for a single floppy disk drive andthe maximum standard capacity for each system. The graphs forDisk Access in BASIC show how long it takes to write and then reada 64K-byte sequential text file to a blank floppy disk. (For the pro-gram listings, see BYTE's Inside the IBM PCs, Fall 1985, page 195.)The Sieve graph shows how long it takes to run one iteration of theSieve of Eratosthenes prime-number benchmark. The Calculations

graph shows how long it takes to do 10,000 multiplication and 10,000division operations using single-precision numbers. The SystemUtilities graphs show how long it takes to format and copy a 40K-byte file using the system utilities. The Spreadsheet graph showshow long it takes to load and recalculate a 25- by 25-cell spread-sheet in which each cell equals 1.001 times the cell to its left. Thespreadsheet used was Microsoft's Multiplan. The Xerox 6060 didnot come with a copy of GW-BASIC; the tests were done with AT&T'sversion of BASIC.

SEPTEMBER I986 -BYTE 277

REVIEW: XEROX 6060

tions. However. I was displeased withthe printer installation section, whichwould have you believe that you canonly install a Diablo or Xerox printer,which is not the case.

The hardware manual and both ofthe software manuals are deficient inone significant area—the proper han-dling of problems. The user is left en-tirely at the mercy of a local dealeror Xerox representative.

Support

The main problem with the Xerox6060 is the cost of repair. A bad flop-py disk drive will cost over $900 torepair, according to one Xerox invoicethat I saw. The labor cost $85, and$85 5 was charged for a standard514-inch drive. In another repair job,Xerox charged $5339 to replace ahard disk and the CPU board.

Benchmarks

Owing to its full 16-bit processor run-ning at 8 MHz, the Xerox 6060 is very

fast, and in some operations it isalmost as fast as the IBM PC AT (seepage 277 for details). The hard diskand disk controller, which have theirown 8085 processor, are also fasterthan most of the competition's. Diskaccesses from the hard disk seem tobe significantly faster than those froman IBM PC XT or compatible.

The most notable improvements inoperation involve the tests thatmeasure processing speed. TheCalculations and the Sieve ofEratosthenes benchmarks ran on the6060 in nearly one-third the time thatthey ran on the IBM PC.

Disk format and disk copy times aresignificantly slower than those for theIBM PC because Xerox has changedthe disk format utility so that it auto-matically does a verification of the en-tire disk, whether it's desired or not.

Conclusions

Like the AT&T PC 6300, the Xerox6060 is a speedy machine. It runs

well, operates with most IBM soft-ware, and is generally unobtrusive.

You will have to decide if you likethe Screenmate shell, the opticalmouse, and the black-and-whitescreen. Note that you can never getaway from Screenmate entirely, sincemany of the system utilities retaintheir menu-driven front ends. You maybe forced to work your way throughseveral layers of menus when all youreally want to do is issue a simplecommand, such as to change the datarate on the serial port. It's just too badthat Xerox eliminated some of thestandard system utilities from MS-DOS.

Overall, I was pleased with the capa-bility and speed of the Xerox 6060.It takes the needs of the infrequent orunskilled user into account, and itserves this type of user better thannearly any other machine. The biggestquestion mark is service, and youshould consider this before buyingthe system. ■

^r

SP

MSDOS,PCDOS IBM PC,XT, AT compatibles.

Form Editor:

Al Techniques minimize keystrokes.Automatic multi-dimensional arrayrecognition.

Automatic field naming.Wordstar™compatible editor.Diagonal cursor movement.Pop-Up Windows/Menus.Multi-File Clipboard.Crash recovery.

Writes Programs in "C"

Order Toll Free1-800-624-8711

In SCcall1-803-278-3811

Program generation with power,sophistication, and especially

Cyclic Forms I!!

Free Source Code Included!

$?m

Program Generator:

Writes "C" Code.

Does Q£l generate reams of casestatements like other similarproducts.

Generated code is ultra-efficient.

Supports all standard data types

and user-defined types.

Custom code independence - Code

that you add is isolated from other

changes.

Files feature B+ Tree index support.

Partitioned screens support scrolling,flat, and cyclic forms, and Pop-Upmenus.

Library Packages:

"C" source for all routines.

B+ Tree Manager features:Optimized fan-out for each keytype.

Secondary key GETNEXT support.User-defined ordering for keys.

Open File Cache places no limit onthe number of files open at a time.

Disk-Based Garbage Collectorhandles variable length records andmultiple indexes per file.

Window/Menu manager is call-compatible with UNIX™cursespackage.Generic list processor.

UNIX is a trademark of AT&T Bell Laboratories.Wordstar is a trademark of MicroPro Int. Corp.

Generated programs use suppliedlibrary routines and can use yourfavorite commercial libraries as well.

Fitting solutions to digital problems...

Digifit Inc.

105 Clearwater Rd.Belvedere, SC 29841

278 BYTE • SEPTEMBER I986

Inquiry 3 5

EVERYTHING SYMPHONYWAS SUPPOSEDTO BE.

AVAILABLE NOWOn LY $84.95WITH A 60-DAYMONEY BACKGUARANTEE

in One Totally integrated Package:

Word Processing With Spell CheckerCommunications

1 Spreadsheet

• Database

" Graphs

• Extremely easy to learn and use

• Data is interchangeable with all modules and other products

• Windows allow quick movement between tasks

• Four background, one foreground mode. Can print on twoprinters or plotters and two communication devices (modemand main-frame direct connection) all at the same time.

• Artificial Intelligence features reduce the number ofkeystrokes required to perform tasks

• Upgradable software and data to UNIX and XENIX

• Package contains: one plastic box, one illustrated referencemanual, one program disk, one sample diskette, keycaps anduser support plan

• System Requirements: IBM PC or com-patibles, 512K, two 360K diskettedrives, color or mono display

• Twenty-four hourHotline Support ^^ ^(optional)

Multiple windowsallow quickmovementbetween tasks.

Colorful graphicrepresentations

What the experts say:

"I can safely say that I have yet to come across a packagewhich demonstrates such functionality combined with suchan innovative approach to the man-machine interface. ABLEare to be congratulated on producing a product whichachieves a very high standard of excellence."

-Michael D. Bowe, DATA GENERAL

"The best multi-purpose product I have evaluated. Multi-tasking works great, able to print, make an on-lineconnection and edit a document at the same time."-Robert Lawrence, ITT INFORMATION SYSTEMS

Inquiry 396

s m a m

ABLE Int'l is a longtime, innovative supplierof software for micro and minicomputers.

301 north Main Street

Pueblo, Colorado 81003 U5A

Telephone 303-544-9600, Telex 650-2154286

a<*

c»«

coo's''\r,aB5^:~dt!>vJ^o''^m.art5P'i»IJVtp'<*,,„„<■

(o(a

*

SEPTEMBER 1986 • BYTE 279

What's missing from this picture?

Plenty

While IBM*8 offers only one 80286-based personal computer, COMPAQ*offers three. And no matter whichCOMPAQ Personal Computer youchoose, each gives you more.

Three choices

For example, the COMPAQ DESKPRO286* has speed, storage and perform-ance that meets or exceeds the IBMdesktop. For users who need comput-ing to go, the COMPAQ PORTABLE286* is the most powerful portable onthe market today. And the small-er, lighter, 80286-based COMPAQPORTABLE II™ combines extraordi-nary power and value. Both portablesare full-function. They all run at 8MHz. And all reflect the quality, com-patibility and expandability COMPAQis famous for.

More options

When upgrading, there's room for upto four half-height internal storage de-vices in our desktop; only three intheirs. Our maximum 70 Megabytes ofhigh-performance fixed disk storagebeats their 60. Plus, both COMPAQ286 Computers offer an internal tapeback-up, an option that IBM simplydoesn't offer.

More standard features

IBM does offer a way to connect theirdesktop computer to a monitor, printeror external modem—but only if youpay extra. COMPAQ builds in these ex-tras. Just as we build in shock isolationsystems to protect data. We also buildin high-resolution text and graphics soyou need only one monitor, not two.What's more, true compatibilitymakes COMPAQ Computers ideal forconnecting to mainframes, minicom-puters or to networks.

The picture is clear

COMPAQ refuses to compromise.That's why our user satisfaction ishighest in the industry. That's whywe're the world's second-leadingbrand of business personal computers.And why COMPAQ rose to FORTUNE500 status faster than any other com-pany in history.

For a free brochure or the location ofyour nearest Authorized COMPAQComputer Dealer, call 1-800-231-0900and ask for operator 22. In Canada call(416) 449-8741.

IBM* is a registered trademark and IBM PersonalComputer-AT™ is a trademark of International BusinessMachines Corporation. ©1986 COMPAQ Computer Corpo-ration, all rights reserved.

comPAa

It simply works better.

COMPATIBILITY

Apple 11+, He and Heenhanced systems. MostSCSI hard disk drives,

KEY FEATURES

Cache Memory-replacesmechanical disk accesswith electronic datatransfer.

Z-80 processor-Maintains256K of "most frequentlyaccessed data" in realcache memory. Automaticsave function minimizesdata loss.

DMA-Transfers data fasterthan RAM. Cuts bootingtime in half.

SUPERCHARGE

YOUR SIDER

Specific testing with Siderhard drive resulted in notonly substantially fasterdata accessing but alsoimproved performance ofthe drive itself.

ONLY

$

395

00

ATTENTION APPLE II USERS:

The Kache Board is an intelligent hostadapter interface for hard disk drives.

KACHE BOARD DEVELOPMENT

It took over two years of research anddevelopment, and long hours of testing tomake this product a reality. Ohio KacheSystems dared to go beyond RAM to bringhard disk users a new standard inperformance — The Kache Board.

SUPERIOR TO RAM

It's superior to RAM disk, thanks to the useof Cache Memory, Direct Memory Access(DMA), and an on-board microprocessor.When you combine these features with theperformance of hard disk drives, you'relooking at an overall 25%-30% decrease inaccess rime and the virtual memory environ-ment of a minicomputer such as the VAX.

OKS, Kache Board and the OKS logo are trademarks of Ohio

Kache Systems, Inc.

Apple is a registered trademark of Apple Computers, Inc.

IBM is a registered trademark of International Business

Machines, Inc.

Sider is a trademark of first Class Peripherals, Inc.

VAX is a trademark of Digital Equipment Corp.

KACHE BOARD PERFORMANCE

LoadTime

RunTime

SaveTime

■ Kache Board PerformanceRAM Performance

■ Apple Performance with HardDisk Drive

■ Apple Performance

CONTINUOUSLYINCREASING PERFORMANCE

As more data files reside in Cache,the performance of the Kache Boardcontinues to improve beyond that ofRAM disk. An increasing number of diskaccess requests are replaced by electronicdata transfer from "real" cache memory (seegraph above).

Inquiry 255

AVAILABLE SOON

Available soon: Kache Boards for IBM andIBM compatible systems.

DIRECT FROM DEVELOPER

The Kache Board is available exclusivelyfrom Ohio Kache Systems on a direct mailbasis only. For more information on theKache Board write for our free brochure. Orcall us toll free at:

1-800-338-0050

We think you'll be as excited aboutthis new product as we are!

tSxNrntiii'OJi

Ohio Kache Systems Corp.4166 Little York RoadDayton, Ohio 45414-2566513-890-39133 Ohio Kache Systems is a developer ofcomputer enhancement products.

HARDWARE REVIEW

The C Itoh TriPrinter

by Robert D. Swearengin

The TriPrinter by C. Itoh is ahefty printer that producespica, elite, condensed, italic,double-wide, double-high,bold, underlined, super-script, and subscript type-faces. It can also producecombinations of these type-faces (see the box on page284). The printer lets you pro-gram dozens of functionssuch as print quality, pitch,and lines per inch using 11membrane buttons on the flatfront panel. You read theprinter's current status on athree-digit LED display. If any-thing goes wrong, you'll knowimmediately; the machine hasseveral alarms, including onethat signals overheating.

All these features comewith a considerable price tag:$1895. The TriPrinter is notfor the casual user.

Setting Up

Getting the TriPrinter out ofthe box and onto a sturdy stand is thehardest part of setting up; the unit is22 inches wide, I6/2 inches deep, and4'/2 inches high. It weighs almost 39pounds. After setting up, you simplylift the lid and plug in the matchinginterface and font cartridges.

The interface cartridge for theModel 20 TriPrinter (the IBM andEpson graphics-compatible version,which I reviewed) has the standardCentronics parallel interface. Serial in-terfaces come with the Model 10,which is for DEC computers, and theModel 40, designed for the AppleMacintosh. The Model 30, whichemulates CIE and Printronix 300- and600-Iine-per-minute printers, usesboth parallel and serial interfaces. Thefont cartridges for all models are inCourier, a clean and readable type-

A hefty printer that

produces speedy drafts and

high-quality graphics

face. No other typefaces are available.The cartridge interface sets sell for$75, or $245 with the optional 16K-byte buffer.

The TriPrinter's ribbon cartridgessnap in easily. The cartridges cost $3 5each, or $210 for six. This sounds ex-pensive, but the bidirectional nylonribbons each provide 15 million im-pressions.

The printer's built-in tractor feed isthe best design I've encountered, al-though it makes paper a bit more dif-ficult to load. The rear-fed papersnaps into the bottom of the tractorfeed, goes around the platen, andsnaps again into the top. The doublegrip may be an example of over-engi-neering, but this printer will probablybe feeding paper long after otherprinters have jammed or worn out.

The mechanism workssmoothly and can accom-modate paper up to 16inches wide. You can alsofeed paper from a slot on thebottom of the printer. In thiscase, the paper goes aroundthe platen and attaches toonly the top side of the trac-tor feed.

The printer performs fiveself-diagnostic tests. One ini-tializes the EEPROM tofactory-specified defaultvalues for all functions. An-other test prints a menu ofcurrent default values. Astandard sliding-charactertest, in which each linebegins one character overfrom the line above it, in-cludes graphics. A single-character test repeats the let-ter or number you select,and a mixed-character test in-cludes all the type variations:bold, underline, italics, etc.The front panel is well de-signed but takes considerable time toget accustomed to because of itsnumerous programming options.Each button represents a function anda numeric value. For example, theReset (0) button returns the printer toits previous state. The Mode (1) but-ton readies the printer for functionchanges, and the Test (2) button ac-tivates the test mode. Additional but-tons change commonly used func-tions without requiring you to changethe Mode (1) switch: Forms (3)changes form length, Font (4) changesdraft and letter quality, CPI (5)changes pitch, LPI (6) changes linesper inch, TOF (7) controls top of form,

(continued)Robert D. Swearengin (P.O. Box 1743, NorthAdams, MA 01247) is a professor of Englishand journalism and a freelance author.

SEPTEMBER 1986 -BYTE 283

REVIEW: C. ITOH TRIPRINTER

C. Itoh TriPrinter (Model 20)

Type

Dot-matrix impact printer

Company

CIE Terminals2505 McCabe WayIrvine, CA 92714(714) 660-1421

Size

22 by 161/2 by 4V2 inches39 pounds

Features

Draft and letter-quality text

IBM and Epson graphics-compatible

Highest speed: 258 cps (BYTE

benchmark)

2K-byte buffer; additional 16K bytes

optional

I/O Interfaces

Parallel or serial

Documentation

90-page spiral-bound user's manual

Price

$1895

PRINT SPEED (CHARACTERS/SEC)QUALITY MODE DRAFT MODE

0 12 24 36 48 60 0 25 50 75 100 125

66

LIST PRICE ($100)

) 6 12 18 24 30

1$1895!5

■i$799

258

C. ITOH TRIPRINTEREPSON LQ-1500Tl MODEL 855

A comparison of the C. Itoh TriPrinter withthe Epson LQ-1500 printer (see thereview in the December 1984 BYTE) andthe Tl Omni 800/Model 855 printer (seethe review in the January 1985 BYTE).Each printer has a fast-draft mode and

a slower high-quality mode, amongothers. The Print Speed benchmark in-volves printing 50 rows of 80 As eachat a pitch of 10 characters per inch indraft and quality modes. The pricesshown include a tractor-feed mechanism.

This

is

the C.

Itoh

TriPrinter

r

letter q

uality

This

is

underl

ined .

This

is

boldface.

This

is

italics.

This

is

boldfa

ce its

lies.

Tli

i. s

i. ss

<3 <=>

i_xfc> 1

e —

W

d. <3. e* .

This

is

double

-high,

and LF (8) controls line feed.

This process sounds complicatedbut is actually fairly simple. Theprinter EEPROM stores 49 fields, eachrepresenting a function with a menuof options. For example, field 34 is theprint-direction function. Options onthis field menu are number 1 for bi-directional (the factory default) andnumber 2 for unidirectional printing.To change from bidirectional tounidirectional printing, you simplypunch the Mode (1) button and enter34. The LED always displays thedefault, which in this case is 1. Youthen enter 2, and the display changesaccordingly. The printer sends thechange to the nonvolatile EEPROM,and unidirectional printing becomesthe new default. This ability to changemakes the printer extremely flexible;you can tailor any number of defaultsfor a specific application. The new set-tings you choose remain until you ini-tialize the EEPROM to return to the

original factory defaults.

All function changes from the con-trol panel go to the EEPROM. You canalso change functions with controlcodes from your computer; thesechanges go only to the printer's 8Kbytes of RAM and remain in effectuntil you turn the power off. Theprinter reverts to EEPROM defaults atthe next power-up.

Speed and Quality

The TriPrinter is fast, although itsthroughput was considerably lessthan the rated maximum instanta-neous speed of 3 50 cps (charactersper second] in draft mode and 87.5cps in letter-quality mode. On thestandard BYTE 4000-character bench-mark test, which involves printing 50lines of 80 As, the TriPrinter's through-put at 10 pitch was 2 58 cps in draftmode and 66 cps in letter-qualitymode. The speed was about the sameon a 60-column one-page American

English first-order random approxima-tion (see "The Art of BenchmarkingPrinters" by Sergio Mello-Grand,February 1984 BYTE).

1 found the overall printing qualityto be good. The 9-wire print head canproduce a 9- by 8-pin matrix in draftmode, a 17- by 16-pin matrix in letter-quality mode, and 144 by 144 dotsper inch on graphics. Keeping in mindthat such judgments are always some-what subjective, I'd rate the draftquality as standard. The letter quali-ty is quite acceptable, but not asdense as daisy-wheel printing. I waspleased with the graphic reproductionof both large black designs andsmaller intricate figures with fine lines.

Documentation

The TriPrinter's step-by-step installa-tion instructions are clear and easy tounderstand, and the user's manual ispacked with technical information.The chapters on operation and pro-

284 BYTE • SEPTEMBER 1986

REVIEW:C ITOH TRIPRINTER

gramming are thorough and detailed.However, the manual is not writtenfor novices, and more detailed ex-planations would have been helpful inseveral places. Also, the organizationof the manual could be improved. Forexample, when you've finished install-ing the printer, you must flip oversome 20 pages to find the infor-mation about the printer's self-diag-nostic tests. Furthermore, there's noindex—a serious omission.

Problems

A sliding aluminum catch on the leftside of the TriPrinter locks the coveropen for loading paper and makingother adjustments. The catch on myprinter got stuck several times, pre-venting the cover from closing prop-erly and triggering the "cover open"alarm. I tried to do some gentle ad-justments with no success. Finally thecatch fell off. I had no problem clos-ing the lid after this, but I had to propit open to change the paper. The com-pany says it is aware of the problemand is replacing the catches with im-proved ones.

The printer's noise level is accept-able; it's rated at less than 58 deci-bels. However, the noise itself is some-what harsh. I'd recommend using anacoustic cover for operating theprinter in quiet environments.

Conclusions

Aside from the defective catch on thecover, the TriPrinter is well con-structed. Once you spend the time tolearn how to operate the controlpanel, you can easily exercise theprinter's many options. It's hard tothink of any necessary features thataren't already built in. I liked the Tri-Printer and enjoyed using it.

The price tag. however, raises a veryserious question about the TriPrinter,particularly with its 9-wire print head.A number of printers with densermatrices sell for considerably lessmoney, although the specified print-head life of one billion dots per wireshould provide longtime, high-volumedata-processing and graphics use,with the letter quality as an addedbonus. If its features fit your needs,the TriPrinter is certainly worth com-paring with other high-end printers. ■

Inquiry 364 for End-Users.Inquiry 365 for DEALERS ONLY.

Expand Your Computer'sCapability... Instantly!

Mow You Can Send Data to as llBMany as Four Peripherals at mthe Touch of a Button!

TSP-IBM 79

13 Port Switch)

■m

Via West Data Switches do away with

recabling forever. Simply connect between

your computer and printers, modems, plotters,

terminals, networks, etc. and direct data to the * <*" '

peripheral you want at the touch of a button!

Our switches fit all types of computers and cable connectors. Thisincludes code activated switches for keyboard control. Both serial andparallel versions are available in 2, 3, and 4 port configurations.X Switches are also available.

B

^Wcl

DS Series[2 Ports)$42-89

TS Series(3 Ports| |S72-79

Data

Switch

OS Series|4 Ports)$105-110

Peripherals

Over 22 switch types in stock forApple, Macintosh, IBM PC/AT/34/36/38, WANG, and compatibles. We alsooffer a full line of cables and connec-tors. Custom orders are welcomed.All orders shipped freight collect. Add $4/Unit for postpaid delivery. Checks, Visa orMasterCard accepted. Arizona residentsadd 7%. Dealer inquiries invited.

Ulfl WEST, Inc.

"The Interface Company"

IBM and IBM PC/AT-lnternational Business Machines Corp. Macintosh and Apple-AppleComputer, Inc. Wang-Wang Laboratories, Inc.

534 North Stone Ave.Tucson, Arizona 85705(602) 623-5716

A CROiSJALK

SuperKlone

FEATURING

Foreground/Background Communications

SOFTKLONE

1210 E. Park Ave. • Tallahassee. FL 32301For information call 1-904-878-8564TLX: 6714280 KLON

The Age of KloneWore Has Arrived

Shipping/handling 5.00

(COD orders add $3.00)

International shipping/handling 18.00

Florida residents must add 5% sales tax

ferj||~-»;-3lSfflB To Order Call

Telephone: (416) S

w UK by:

Trisoft Ltd Telephone: (0629) 3021

distributed in Australia by:

" iputer Systems pty. Ltd,: (02) 633-4055Pty. Ltd,

MIRROR™ provides:

- Crosstalk XVIcompatibilityBackground communi-cations

Built-in text editorAutomatic logon scriptgenerationTransaction log

AND MUCH MORE..,

MIRROR

Site Licensing Available

60-Day Money-back Guarantee

Not Copy Protected

7m 1 ')i ,T. ii r.

Inquiry 313

SEPTEMBER I9S6 -BYTE 285

CAD and Mouse

»*(.»'

»*£>■

I Can it sustain extended use withoutmaintenance?

'Can it operate on a variety of desktopsurfaces at any angle?

I Is it conveniently portable with no externalpower supply, no special pads?

•••Manager Mouse.

The serious mouse for the serious

graphics and CAD user. Remember

-all mice are not created equal-

Torrington's Manager Mouse is the only

mouse that can answer yes to all these questions:

Does it have a unique, patentedindependent suspensionsystem for trouble-freeperformance?

Can it be used with Lotus 1-2-3™?*

A mouse by any other name?You can't be serious.

Procad"RoboCAD-PC

DO-IT"PRINT™

Manager Mouse can be used with these CAD programs:

AutoCAD" CadPlan™ drafixV" EE Designer"

CADKEY™ CADVANCE" EasyCAD" Generic CADD"

And these popular graphics programs:

Freelance'" EnerGraphics1" Harvard Presentation Graphics"Telepaint1" Dr. HALO1" Click Art Personal Publisher"

Call 1-800-982-0030 for the Manager Mouse dealer near you

* Specify Manager Mouse with Key Free. ™

Manager Mouse and KeyFree are registered trademarks ot The Torrington Company;AutoCad ol Autodesk, Inc; CADKEY of Micro Control Systems Inc.; CadPlan andCADVANCE OF Calcomp; ClickArt Personal Publisher ol T/Maker Company; DO-IT olStudio Software Corp, Dr. HALO of Media Cybernetics. Inc.; drafix 1 of Foresight ResourcesCorp.; EasyCAD of Evolution Computing. Inc.; EE Designer of Visionics Corp.. EGA PAINTof RIX SoftWorks, Inc; EnerGraphics ol Enertonics Research, Inc.; Freelance of GraphicCommunications Inc.; IPRINT of Indigo Soflware Ltd.; Lotus 1-2-3 of Lolus DevelopmenlCorp.; Generic CADD of Generic Software, Inc.; Harvard Presentation Graphics of SoftwarePublishing Corp.; Procad of Procad Systems, Inc ; RoboCAD-PC ol Robo Systems Corpor-ation; smARTWORK ol Wintek Corporation; TelePaint of LCS Telegraphies; VERSACADof T + W Systems. Inc.

Patented

Suspension

System

smARTWORK'VERSACAD"

EGA PAINT

TORRINGTON

Part of worldwide Ingersoll-Rand

286 BYTE • SEPTEMBER 1986

Inquiry 353

HARDWARE REVIEW

The Turner Hall Card

by Jonathan Angel

The IBM PC and many com-patibles were designed when2 56K bytes was consideredan ample amount of mem-ory. Adding more memory tothese machines requires in-stalling an expansion card.Most expansion cards arealready loaded with optionalparallel and serial ports.However, the typical IBM PCuser already has a paralleland a serial port. Adding atypical multifunction cardcould be expensive overkill.One solution to this prob-lem is the Turner Hall Card,which expands the IBM PC'smemory by 2 56K bytes with-out adding any unwantedextras. The card also includesa clock/calendar and soft-ware to let you use the extramemory for print spooling oras a RAM disk.

Installation

To keep the price down,Turner Hall has kept the circuitry onthis card simple. This makes installa-tion relatively easy for most users. Ifyou have a 2 56K-byte IBM PC XT, theTurner Hall Card is the simplest ex-pansion card you could possibly in-stall. All you have to do is remove thePC XT's cover, fit the Turner Hall Cardinto the short expansion slot, and putthe cover back on. Your PC XT willnow have 512K bytes of memory, aclock, plenty of room for expansion,and you won't have had to change anyswitch settings or move any jumpers.The only mistake you could makeduring installation is to put the cardin its expansion slot backward. Thisis possible because the card is soshort and doesn't have a backplaneconnector. The owner's manual cau-tions against this potential problem.

Simple-to-install and

inexpensive memory expansion for

IBM PCs and compatibles

If your computer is not an IBM PCXT you will, at the very least, have toalter DIP switches on the mother-board to let your computer knowabout the new memory you have in-stalled. This is no more than youwould have to do with any other card.

However, some aspects of theTUrner Hall Card make installationcomplicated if your IBM PC is notfitted with 2 56K bytes of memory.Most memory-expansion boards havea bank of DIP switches that let youselect a variety of load addresses; theTUrner Hall Card has only a jumperthat sets its load address at either2 56K or 512K bytes.

Thus, if your IBM PC does notalready have 2 56K bytes of memory,you must add either chips or anotherexpansion card to bring the machine's

memory up to the first ad-dress. If your IBM PC alreadyhas 512K bytes of memory,adding the TUrner Hall Cardwill bring the memory uponly to the DOS limit of 640Kbytes.

For machines that alreadyhave memory between 2 56Kand 512K bytes, there arethree options. First, you candisable some of your existingmemory to bring it down to2 5'6K bytes. Second, you canadd RAM with another ex-pansion card to bring it up to512K bytes and then installthe TUrner Hall Card. Youwould then have 768K bytesof RAM, of which only 640Kbytes could ordinarily beused. Third, you can add theTUrner Hall Card memory be-tween 2 56K and 512K bytesand set switches, if available,on your other expansioncard to make sure its mem-ory address starts at above512K bytes.

TUrner Hall's documentation takesyou through all these steps with goodtables and illustrations. It also showsyou how to disable the clock on thecard if your IBM PC already has one.

Software

The TUrner Hall Card comes with soft-ware for activating the clock, which isa device driver (CLOCK.SYS). You donot have to slow booting by clutter-ing your AUTOEXEC.BAT file with an-other program name. You can simplyadd the line

DEVICE = CLOCK.SYS

(continued)Jonathan Angel (678 Tennyson Ave., PaloAlto. CA 94301) is a freelance writer andcolumnist.

SEPTEMBER 1986 -BYTE 287

fofTlPUTER WAREHOUSE

CALL TOLL FREE -( .800-528-1054

FREE

HARDWARE

Air Express Shipping

See Details Below

PRINTERS

Brother All Models . -.Cannon Laser Printer .Citizen MSP-10

MSP-15

MSP-20

MSP-25

Premier 35

CallS1949S279S379S315S479S479

BEST PRICES VjS

$489

S1035

EPSON

All Printer Models

...Call

Fujitsu Call

IBM Proprinler S399

Juki

6I00 $349

6300 S669

NEC 3510.3550.3515. 3530 $729

8810. 8830. 8850 $1039

P5 S959

P6 S429

P7 $609

OKIDATA

All Printer Models Call

Panasonic 1080 S199

1091 S239

1092 $309

1592 S425

KXP3151 S399

DISKETTE.

Maxell MD-2 (Qty 100) S100

Sony MD/2(Qty too) $119

MONITORS

Amdex All Monitors Call

NEC All Monitors Call

Princeton Graphics Call

Zenith ah Models Call

VIDEO TERMINALS

QumeQVT Green 101 $299

QVT Amber 101 S314

Wyse 30 $299

50 $419

75 S559

Wyse 85 $439

Wyse 350 $859

Zenith z-22 S4S5

Z-29A S5S9

Z-49 Call

MODEMS

Anchor Automation

Signalman Express

Practical Peripherals

Practical 1200 Baud

\ No Charge for Bank Cards

BOARDS

AST Advantage

Rampage AT

Rampage PC

Six Pack Plus

Hercules Color Card

Graphic Card

Intel Above Board PC (1110)

Above Board AT (2010)

Above Board PS/AT (2110)

Maynard Hardcard

Paradise Modular Graphic 06-1 .Five Pak . ,

Plus Development

Plus Hard Card 20 Megabyte

Quad ram Gold S Silver Boards .

Quadlink

Quad EGA-t

Tec Mar Graphics Master ,

S329S445S239$159$149S179S239S329$369$549S239S115

$669CallS329$359S445

COMPUTERS

I1M

PC 1 Drive 256K S1199

XT 1 Drive 256K S1 729

XT1 Drive 20 Meg 640K $2169

AT/68 S2849

AT/339 S4449

comPAa

Portable II-2 Drive... . S1649

Toshiba T-1100 $1299

T-1100 Plus Call

T-3100 Call

Captain No Memory $169

S235

$124

HAYES

All Modems Call

STAR MICRONICS

All Printer Models Call

Toshiba 321 Parallel S Serial S449

341 $769

P351 Parallel & Serial $969

Laser Printer Call

KEYBOARDS

Keytronics 5151 $159

PLOTTERS Epson Hi-80 Call

Prometheus All Models Call

US Robotics Courier 2400 $379

Password 1200 $180

Microlink 2400 S379

DISK DRIVES

Iomega Bernoulli 10 meg $1 249

Bernoulli 20 meg $1649

Bernoulli 40 meg $2329

SEAGATE

20 meg w/Weslern I/O

$395

PANASONIC

Sr. Partner Dual Drive $1309

Exec. Partner Dual Drive $1899

TOSHIBAT-1100 Call

SPERRY

SperrylT S1999

Other Models Call

WYSE

Wyse pc 1100-1 $979

Wyse pc 1100-20 S1539

Zenith Computer ProductsSAVE up to 50%

All Models Call

256 Memory. One 360K Brand NameFloppy Drive • 135 Watt Power Supply. SlideCase, AT Style Keyboard 8 MHz Clock Speed.(Keyboard Selectable). 8 Expansion Slots

TRAINING

Flight Simulator -.

PC Logo

Typing Instructor .Typing Tutor III . -

SOFTWARE

S28S75$28$28

IBM PC and 100% Compatibles

LANGUAGES

C Compiler (Microsoft)

Fortran Compiler (Microsoft)..

Lallice C Compiler

MacroAssembler(Microsoft) .Pascal Compiler (Microsoft)...

Quick Basic 2

RunC Interpreter

Turbo Pascal w/8087 & BCD . .Turbo Database Tool Box ...

$249$195S242

S84S166

$55..$65

Call

$30

PROJECT MANAGEMENT

Harvard Total Project Manager $262

Microsoft Project S219

Super Project Plus Call

Timeline 2.0 $209

COMMUNICATIONS

CompuServe Starter Kil Best Price

Crosstalk XVI $92

MS Access 1.01 Call

PFSAccess S76

Remote S92

Smartcom II $83

INTEGRATIVE SOFTWARE

Enable 1.1 $319

Framework II Call

Smart Software System $379

Symphony Call

GRAPHICS

Chartmaster S199

Diagram Master S185

Energraphics 2.0 S269

In-A-Vision S249

Microsoft Buss Mouse

w/PC Paintbrush 3.0 S106

Microsoft Chart S164

Microsoft Serial Mouse S119

Newsroom $31

PC Draw S199

Click Art Personal Publisher S99

PC Mouse w/Dr. Halo II S99

PC Paint w/Mouse $115

PFS Graph $76

Printmaster S29

Signmaster S132

Turbo Graphix Tool Box $30

WORD PROCESSORS

Leading Edge Word Processor....Leading Edge W/P w/Spell & Mail.

Lightening

Microsoft Word 3.0.

SPREADSHEETS

Lotus 1-2-3

Multiplan

Spreadsheet Auditor 2.0VP Planner

Call

S108

S82

$48

$48S72$55Call

Multimale Advantage Call

PFS: Write w/Spell Checker S76

Wordstar w/Tutor $162

Wordstar Pro Pack $233

Supercalc4

Call

Word Perfect (Ver.4.Wordstar 2000+ 2

1)5196■0$278

UTILITIES

Copy II PC

1 DIR

Fastback

Norton Utilities 3.1

Printworks

Sidekick

Sidekick (Unprotected)

Sidekick-Superkey (Bundle) .

Travelling Sidekick

Turbo Prolog

Sideways 3.1

Superkey

$19S46$86$48$36S30$47S85$39$54S34$39

MONEY MANAGEMENT

Dollars & Sense w/Forcast S94

Tobias Managing Your Money Call

DATA BASE MANAGEMENT

Clipper S335

Cornerstone S67

dBase II Call

dBase III Plus Call

Extended Report Writer S74

Knowledgeman II $279

Nutshell 2.0 S59

PFS: File S76

PFS: Report S67

Quickcode S1 38

QuickReport $138

Rellex Call

Think Tank $91

R:Base5000 5245

Many other titles available.

^DmPUTCR

WAREHOUSE

Inquiry 84 [or MS DOS Products. Inquiry 85 for all others.

Order Line: 1-800-528-1054Order Processing: 602-224-9345

2222 E. Indian School Rd.Phoenix, Arizona 85016602-954-6109

Store Hours: Mon-Fri 10-5:30

Saturday 9-1Order Line Hours: Mon-Fri 7-5:30

Saturday 9-1Order Processing Hours: Mon-Fri 10-3

Product shipped in factory cartons with manufacturer's warranty. Please add $6.00 per order lor UPS ground shipping on orders up to 10 lbs Orders 10 lbs.and under you pay for ground service, receive air service at no extra charge. Available on orders 11-30 lbs $17 for air service. Prices & availability subject tochange without notice. Send cashiers check or money order..all other checks will delay shipping Iwo weeks.

^ST" iiSSi ^^■jmb *mm JLmmm,

REVIEW: TURNER HALL CARD

Turner Hall Card

Company

Turner Hall Publishing10201 Torre Ave.Cupertino, CA 95014(408) 253-9607

Computer

IBM PC, XT, AT, or compatible with atleast 256K bytes of RAM and one vacantexpansion slot

Features

256K-byte memory expansion, clock/calendar, and software for print spoolingand RAM disk

Documentation

28-page owner's manual withdocumentation for RAM disk and printspooler

Price

$99.95

to your CONFIG.SYS file, and the on-board clock will be automatically ac-tivated when you turn your computeron. Furthermore, the clock can be per-manently reset simply by using thedate and time functions in DOS; manycompeting boards require their ownsoftware to do this.

The RAM disk and print spoolerprograms (RAMDISK.SYS andSPOOL.COM) do not come with theboard. Instead, Turner Hall sendsthem to you after you register yourpurchase. The documentation forthese programs comes as a disk filethat you must print.

RAMDISK.SYS gives you a RAMdisk that is variable in size from 64Kto 360K bytes but limited to holdinga maximum of 32 files. SPOOL.COMgives you a print spooler that can beas small as IK or as large as 64Kbytes. Unlike some spoolers, you canvary its size or delete it from memorywithout rerunning the program. Youcan also pause it to change paper. I

found that it worked with SideKickand SmartKey II without conflict.

Conclusions

The Turner Hall Card is reasonablypriced and supported by superiordocumentation and software. Theworkmanship is good, but the 2 56K-byte RAM chips are soldered in place.However, Turner Hall will give you anew card if anything fails during yourfirst year of ownership.

The only major flaw is that thecard's starting memory addresses areset only at 256K or 512K bytes. Thisis too limiting; other expansion cardsoffer much more flexibility.

I would recommend the Turner HallCard particularly to computer userswho don't want to study manuals andflip switches. For users of 2 56K-byteIBM PCs, XTs, ATs, and compatibles,it is a simple and economical way toupgrade memory. The card wouldalso be useful in any machine thatlacks full-length expansion slots. ■

Effortlessly.

Inquirj W for 1)1 A1ERS ONL\

That's how easy it is to implement on the Apple Macintosh the enormous volume of applications

written in dBase III for the IBM PC. Using dMac III, you can develop applications on the

Macintosh and transfer them to the PC where they can be implemented under dBase III.

With dMac III, the IBM PC and the Apple Macintosh work as a smooth running, tireless team.

i/A/.ii Ill's neat

t'liiiu limitless range oi powei includesUp to 2i0O0 piocedures pel procedure filelip lo 2,000 memory v.mlip to 2.0HD fields |hm record

/// is Immediately available lit *i suggested retail price oj $495.00

or iiour authorized dMac III dealer contact:

Like dBase ill. dMai III features 'i powerful programming /Macintosh users the ability to create professional business./Adii /// shares data imh other majoi Mai intosh softwaredirections

To run ilMih III you need:

'Apple Macintosh oi Macintosh plus with 51'iwo ilisi drives oi om- ilisk drive and .i hard

FORMAT SOFTWARE. INC.

11770 Bernardo Plaza Ct. Suite 217

San Diego. CA 92128

(619) 487-6946

dMac III makes the exchange smoothly and in stride.

AT Power, Toshiba-Style.

I XT* I ■

-">.

m

III

is

■

K

I

I

^a^MHMl^Hl

HI

^

Try tucking this into a drawerwhen you're done! Until now, youhad to be tied to your desk in atangle of cables and hardware toget AT power. Toshiba's T3100,on the other hand, puts AT perfor-mance anywhere you want.

Specifications:

IBM PC-AT compatible

80286 processor, running at 8MHz

or 4 MHz

640KB RAM, extendable to 2.6MB

Built-in 10MB hard disk

Built-in 720KB 3!4" diskette drive

MS-DOS 2.11 operating system

High-resolution gas plasma display

IBM Color Graphics Adapter (CGA)

compatible

80 x 25 character display

640 x 400 bit-mapped

graphics display

RGB, parallel, serial and external

diskette drive ports

Carrying case, MS-DOS,™

BASIC included

Full-sized 81-key keyboard

110/220 VAC switch-selectable

power supply

12.2" W x 3.1" H x 14.2" D

All this—and only 15 pounds

The Toshiba T3100.

Toshiba technology improves on ATfunctionality: The T3100 gives you thepower of an IBM® PC-AT™ in a lean,15-pound computer that looks superb onyour desk, and slips into a drawer whenyou don't need it. Take it home, take itto a meeting, take it around the world—wherever your work takes you.

Don't let its size fool you.

The T3100 is less than a third the sizeof the Compaq™ Portable II, yet everybit as powerful. It uses the same 80286microprocessor as the AT, and is fullyIBM-compatible, so you can share datawith the other desktop computers inyour office. The T3100's 10MB internalhard disk gives you ample storage forsophisticated applications. A dual-voltagepower supply lets you plug in and go towork just about anywhere in the world.And Toshiba built in an advanced gasplasma screen, to give you the clarityand brightness of a CRT display—without the bulk.

Compact is as compact does: The T3100is less than a third the size of the CompaqPortable II.

More memory formore applications.

The T3100's full 640KB RAM letsyou work with the most popular IBMPC/XT™ and AT software: Integratedfinancial and analysis programs, largespreadsheets, lengthy documents, elec-tronic filing and more. A built-in 720KBdiskette drive handles the new industrystandard 3V2" diskettes. Each IBM-compatible pocket-sized disk holds twiceas much information as a conventional5Yi" diskette! And you can easily transferdata to and from other desktop compu-ters using Toshiba's optional external 5Wdiskette drive.

Trademarks: PC-AT, PC/XT—Intem;iunn;!l Business Machines Corporation;Compaq —Compaq Computer Corporation; MS-DOS —Microsoft Corporation.Registered Trademarks: IBM — Intematinn.il Business Machines Corporation;Hayes—Hayes Microcomputer Products, Inc.; SuperKey and SideKick—Borland International. Inc.

"Big" system expansion options.

Like any full-function desktop system,the T3100 grows with your computingneeds. Toshiba offers a full line of internal

**

;.*■

:;

f* muiifinaiBS aftmntaoe

Dollars

- ■■!■!

! bJNSh

1 AjtrVNlMI 1

1 LEAIWIMU AND' 11 JIUM- lil i'l.l. 5

4

Hi ■ "

Software, everywhere: The T3100 runs

the most popular applications written for the

IBM PC/XT and AT.

and external options, including an expan-sion chassis with 5 IBM-compatible slots,and an internal 300/1200 bps Hayes®-compatible modem.

The next generation of computingis here. And it sure would lookgreat on your desk. Or away from it.

Desktop computing will never bequite the same again, thanks to Toshiba'sadvanced CMOS and proprietary gatearray LSI technology. The T3100 isbacked by our reputation for high qualityelectronics, and by our 110-year com-mitment to technological excellence.

See where desktop AT power isheaded.

The T3100 is here now! Call:

1-800-457-7777

for your nearestToshiba dealer.

Now!

IncludesSideKick®and SuperKey.

In Touch with Tomorrow

TOSHIBA

TOSHIBA AMERICA, INC., Information Systems Division

A FRIEND INDEED.

Face it. Everybody needs somebody some-time. And even the best PC occasionallyneeds help with faulty power.

So give your hard disc or critical-usesystem LINE 2s power conditioning. Andeliminate those nagging problems that yourPC can't prevent. Like voltage sags andsurges. Brownouts. Spikes.

LINE 2 Power Conditioners are designed

specifically with your PC in mind. Highinrush currents don't affect them. Neitherdo power problems. And they're amazinglyeconomical.

A LINE 2 Power Conditioner can beyour PC's best friend. And a friend inneed is a friend indeed. Call us today at(619) 279-0831, or contact your localSquare D distributor.

TOPAZ

A Subsidiary of Square D Company

292 BYTE • SEPPEMBER 1986

Inquiry 351 for End-Users.Inquiry 352 for DEALERS ONLY.

SOFTWARE REVIEW

Turbo Prolog

by Namir Clement Shammas

In March, Borland Interna-tiona] entered the arena ofartificial intelligence lan-guages by launching itsTurbo Prolog compiler. Thisreview looks at version 1.0.

An easy-to-use

nonstandard implementation

of Prolog for the IBM PC

Environment

Turbo Prolog provides an excellent in-teractive environment in five windows.The top window is a one-line hori-zontal main menu that offers optionsthat let you edit, compile, and run aprogram; set up the compile options;perform file-related operations; alterthe window setups; and quit.

A message window informs you ofcurrent activities. These include mes-sages related to file I/O and compila-tion progress. The dialog window isactive when you run a program. It ac-cepts input from the user and displaysresults. The trace window is activeonly when a program (or portions ofit) turns on the trace option. This win-dow lets you follow the Prolog pro-gram in execution step by step. TurboProlog does not make a more ad-vanced debugger available.

You can adjust the color, size, andlocation of the windows and save theupdated configuration in a special filefor a permanent setup.

The built-in Turbo Prolog editor isvery similar to that of Turbo Pascal orWordStar in nondocument edit mode.Turbo Prolog also provides a pop-upauxiliary edit window that lets youview or edit another Turbo Prologsource file. You can make nested callsto the auxiliary edit window, and theenvironment correctly recalls previousfiles once you have finished editingthe current file.

Compiler

The Turbo Prolog compiler lets youcompile and run programs in memoryor create external program files. Com-

pilation in memory is very fast and at-tempts to approach the immediate in-teraction of a Prolog interpreter.

If the compiler detects an error,Turbo Prolog activates the editor win-dow, points out the location of the of-fending syntax, and displays an ac-companying compiler message that ishighlighted at the bottom of the win-dow. One problem with this is that theerror message is truncated if it islonger than the width of the editorwindow (although you can adjust thesize of the window, as mentionedabove). The Turbo Prolog manual liststhe error messages but offers no ad-ditional explanation or remedies, andsome of the compiler error messagesare unclear.

When you create compiled programfiles, Turbo Prolog offers two alter-natives. If the program you are com-piling is relatively small, you cancreate an EXE file (executable at theDOS prompt) from within Turbo Pro-log. This makes the compiler createan object file and then call for theMicrosoft linker, LINK.EXE, to pro-duce the EXE file. Following the link-ing phase, you are prompted to eitherrun the new Prolog program or goback to the Turbo Prolog environ-ment. I found that it is best to go backto Turbo Prolog, exit from it, and thenrun the compiled program. I discov-ered that attempting to run programsusing extensive recursion while hav-ing TUrbo Prolog resident in memoryinvariably resulted in an "insufficientmemory" run-time error. For largeprograms, you should select the op-

tion to create object files, exitfrom TUrbo Prolog, andresume linking under DOS.The TUrbo Prolog compilerhas 10 directives to fine-tuneits operation. Among thesedirectives are ones that allowyou to set the size of the in-ternal code array, include source codefrom another text file, display ananalysis of your program as it is be-ing compiled, suppress the Control-Break or Control-C options for pro-gram interruption, suppress compilerwarnings, set up a modular softwareproject, and trace the program flow.TUrbo Prolog programs can inter-face with programs compiled inPascal, C, FORTRAN, and assemblylanguage. This allows you to writeroutines more efficiently in any of theabove languages and then call themfrom a TUrbo Prolog program.

Language

The syntax of Turbo Prolog differssignificantly from that of standard Pro-log. Being a Pascal/Modula-2 pro-grammer, my initial reaction was oneof delight. TUrbo Prolog is more struc-tured and enforces data type check-ing, which makes the source listingsmuch more readable that those ofstandard Prolog.

A TUrbo Prolog program is dividedinto declaration sections, some ofwhich are optional. The first programdeclaration section is the domains,where local user-defined types andlists are declared. The global domainssection makes data types accessibleby other program modules. The pred-icates section defines local predicatenames and the number and type ofarguments for each predicate.

(continued)Namir Clement Shammas (4814 Mill ParkCourt, Glen Allen, VA 23060) is a freelancewriter and programmer.

SEPTEMBER 1986 • BYTE 29J

REVIEW: TURBO PROLOG

Turbo Prolog

Type

Programming language

Company

Borland International Inc.4585 Sootts Valley Dr.Scotts Valley, CA 95066(408) 438-8400

Format

Two 51A-inch disks; MS-/PC-DOS format

Computer

IBM PC, two disk drives, 384K bytes ofmemory, and PC-DOS version 2.0 or later

Documentation

225-page user's manual

Price

$99.95

The global predicates section de-clares predicates accessible by otherprogram modules. The optional goalsection allows you to specify a con-sistent goal. If you want to try a vari-ety of goals one at a time, this sec-tion is omitted and you are promptedfor a goal at run time. Programs com-piled into files must have a goal sec-tion. The database section specifiesthe predicates to which facts areadded during run time.

The clauses section is the last pro-gram declaration section and containsall the facts and rules. All the clausesin this section must be consistent withthe declaration in the predicates sec-tion. Turbo Prolog does not allow youto define predicates that have thesame names as built-in predicates,even if the numbers and types ofarguments are different.

Turbo Prolog supports the followingbasic data types: characters, integers,real numbers, strings, symbols (alsoknown in Prolog as atoms), and files.Symbols and strings can be used in-terchangeably, but internally they arehandled differently. There are two ad-ditional special types: regdom, whichis used with BIOS-related predicatesto access the 8088 microprocessorregisters, and dbasedom, which isused in conjunction with the limiteddynamic database.

Turbo Prolog provides predicatesfor data type conversion and simplestring manipulation. Standard Prologuses symbols or instantiated variablesfor I/O redirection, making it moreflexible than Turbo Prolog. Turbo Pro-log supports the list structures, whichare declared by using the syntaxlist name = data type *

Built-in Predicates

Turbo Prolog contains a wealth ofbuilt-in predicates, many of whichcome from Turbo Pascal. These pred-icates perform math operations, read-ing, writing, screen handling, stringhandling, and type conversion. Thereare also file system, system-level, andlanguage predicates.

Turbo Prolog supports the absolutevalue, square root, random-numbergenerator, logarithmic, and trigono-metric functions. It provides the MODand DIV operators, as well as bit ma-nipulation predicates to performAND, OR, NOT, XOR, and shifting(left and right) operations.

The reading predicates allow the in-put of different data types, somethingnot needed in standard Prolog. Thewrite predicate is "overloaded." allow-ing the output of multiple argumentsof different types and a formattedoutput. Redirecting I/O is achieved byusing the readdevice and writedevicepredicates.

The file system predicates enable aprogram to open a file for reading,writing, and adding data. Sequentialand random access files are also sup-ported. The file position pointer inrandom access files can be taken inreference to the beginning or the endof a file.

Turbo Prolog's screen- and window-handling predicates for text and high-resolution graphics allow you to con-trol the screen cursor and create,remove, select, and clear windows.High-resolution graphics come withbasic plotting and line-drawing pred-icates as well as turtle graphics com-mands.

Since Turbo Prolog is a data-typedimplementation, a number of predi-cates are provided for type conver-sion. These predicates perform con-versions between characters, strings,integers, real numbers, and uppercase

and lowercase characters.

The implementers of Turbo Prologpaid attention to low-level access. Thepredicates included in this categoryallow a variety of tasks, such as set-ting and reading the system time anddate, calling the IBM PC BIOS, invok-ing the Turbo Prolog editor, executinga DOS command from within a TurboProlog program, performing port I/O,and POKEing and PEEKing bytes orwords in the memory.

Dynamic Database

Artificial intelligence languages, appli-cations, and expert systems relyheavily on databases to store andretrieve accumulated information.Standard Prolog is characterized by itsability to incorporate a wide varietyof user input (clauses, rules, and facts)into its database at run time. The ab-sence of strict type checking andpredicate checking in standard Prologimplementations offers superior flex-ibility over Turbo Prolog in this regard.

Turbo Prolog's attempt to offer sucha dynamic database is hampered byboth data type and predicate check-ing. The Turbo Prolog predicates thatare involved in the dynamic databasemust be specified in the databasesection before program run time. Thisseverely limits the flexibility that Pro-log was meant to offer. The imple-mentation deviates from the spirit ofProlog by its lack of a genuine data-base. Moreover, Turbo Prolog has nogarbage collection routine to reclaimmemory left vacant by retracted, ordeleted, facts.

Turbo Prolog does not implement anumber of standard Prolog predi-cates. These omissions are importantbecause they have done away withsome powerful Prolog features. Forexample, list equality test has beenrendered very limited by Turbo Pro-log, and complex data (such as mixedintegers) is more difficult, and some-times impossible, to define.

Modular Programming

Turbo Prolog allows you to buildmodular programs. For these pro-grams you need to use the compiler'sproject directive and include to in-clude a file containing the global do-mains and predicates. You create a

294 BYTE • SEPTEMBER 1986

REVIEW: TURBO PROLOG

"fable 1: Benchmark

tests for

Turbo Prolog. Tests reflect the speed of Turbo Prolog

in compiling programs and the run-time

speed of the compiled

programs

. Turbo Prolog seems to assign

a good stack size to allow deeply nested recursion. Floating-point

operations and

mathematical functions use the 8087 chip.

Source File

EXE File

Memory Compile

Compile and Link

Run Time

Test

(bytes)

(seconds)

(minutes:seconds)

(minutes:seconds)

List Reversal

844

46,637

2

1:22

0:11

Floating Point

610

46,478

2

1:23

0:42

Sieve

955

46,541

3

1:22

0:03

Math Functions

1469

49,321

4

1:23

sqrt

In

exp

atan

sin

0:060:160:280:190:18

Factorial

634

46,313

2

1:20

0:24

Tower of Hanoi

598

46,229

2

1:21 Height

5

7

10

0:030:162:14

Disk Write

585

46,184

2

1:21

0:54

Disk Read

448

47,915

2

1:23

0:29

librarian file for each modular pro-gram project. This is a simple text filethat lists all the names of the modulesinvolved. The compiler generates afile containing the symbols table foreach module involved.

Benchmarks

I carried out a number of benchmarkson Turbo Prolog using an IBM PC XTwith 512K bytes of memory, an 8087math coprocessor chip, and a 20-megabyte hard disk drive running PC-DOS 3.1.

The List Reversal test reverses a listof 50 integers 30 times. The FloatingPoint test, which is similar to the stan-dard BYTE benchmark, repeats aseries of four basic operations 5000times. The Sieve test extracts theprime numbers from the range ofnumbers from 1 to 100. The processis repeated 10 times. The Math Func-tions test clocks the speed of thesquare root, natural logarithm, ex-ponential, arctangent, and sine func-tions. Each function is evaluated 1000times using a fixed argument. TheFactorial test evaluates the factorial often 1000 times. This tests the speedof a simple type of recursion. TheTower of Hanoi program tests recur-sion and the speed of screen output.The program accepts a variable towerheight.

The Disk Write test is the Prolog ver-sion of the standard BYTE test. It

writes 512 blocks of 128 characters toa text file on an empty disk. The DiskRead test is the Prolog version of thestandard BYTE test. It reads 512blocks of 128 characters from a textfile stored on a floppy disk that con-tains no other files.

Table 1 shows the results of thebenchmark tests. The Floating Pointand Math Functions tests, by virtue oftheir speed, seem to automaticallyuse the 8087 coprocessor, althoughthe Turbo Prolog manual does notmention 8087 chip support. (Themanual also incorrectly lists the arc-tangent function as arctan instead ofatan.)

Turbo Prolog programs running ascompiled EXE files seem to have ac-cess to a larger recursion stack thanprograms running within the TurboProlog environment. TUrbo Prologprograms enjoy fast execution speedand larger stack size (relative to otherProlog interpreters), which permitsdeeper recursion levels.

Conclusion

Turbo Prolog is an implementationwith many good features: a very goodinteractive environment, a fast com-piler and compiled programs, supportfor screen and window management,high-resolution graphics, low-level ac-cess, and mathematical functions.

However, Turbo Prolog has a TurboPascal flavor in its compiler and strong

data typing that create an identityproblem for the language. TUrbo Pro-log's lack of a genuine dynamic andflexible database is its main weakpoint. Strict data type checkingweakens TUrbo Prolog's ability to per-form more advanced symbolic pro-cessing. The lack of many importantProlog predicates deprives you of en-joying the unique features of standardProlog language. Some programswritten in the standard language syn-tax must be "hacked" before runningwith TUrbo Prolog, while others mayprove to be unportable.

Borland International claims thatTurbo Prolog is a large superset of theW. F Clocksin and C. S. Mellish defini-tion of the language [Programming inProlog. 2nd edition, Springer-Verlag,1984). A glance through the languagereference book disproves this claim.TUrbo Prolog has enough changesfrom standard Prolog to earn it thename of "TUrbo Paslog." As such, I donot recommend it if you are seriouslyconsidering becoming a Prolog pro-grammer.

Editor's note: The programs used in thebenchmark tests of Turbo Prolog are availablefor downloading from BYTEnet Listings (seethe insert card following page 368). To runthem you will need an IBM PC with 384Kbytes of memory, PC-DOS 2.0 or later, andTurbo Prolog. The programs have beengrouped together in a single file calledTBPROLOG.TST. ■

SEPTEMBER 1986 -BYTE 295

Princeton. The

Here are some of the reasons why

Full EGA and CGA support. Princeton EGA monitorsbring you 64 brilliant colors and bright sharp images inenhanced graphics mode, with 640 x 350 resolution.Your EGA software never looked better. Plus our HX-12Eand HX-9E automatically switch from EGA to CGA mode,when needed.

Compatibility. Princeton monitors are 100% compatiblewith leading personal computers like IBM®, Compaq®, andmore. No matter what system you have, there's a Princetonmonitor that's right for you.

Quality Image. A .28mm dot pitch (the finest dot pitch ofali leading EGA displays), bright colors, and sharpresolution give Princeton monitors a quality image thatcannot be beat.

Easy Viewing and Ergonomic Design. Princetonmonitors are designed Tor easy use, too. You get easyviewing with the HX-12E's black matrix tube and etched

nonglare screen. The lines are crisp, the characters sharp,and the colors even, so you're more productive. Controlsare located on the front, where you can reach them.

Reliability. Princeton monitors are designed andmanufactured to meet your most demanding needs. Onlythe finest components are used. The result: dependableperformance day in and day out.

Value. No other monitor gives you more for the money thanPrinceton. Compare for yourself. Feature for feature there'snot a better value around.

Availability. Princeton monitors are as easy to get yourhands on as they are easy to use. You can find them atcomputer stores around the world.

Reputation. More and more, people are making PrincetonGraphic Systems their number one choice in personalcomputer displays. Because people know Princeton deliversthe ultimate in compatibility, reliability, and performance.

IBM is a trademark of International Business Machine, Inc. Compaq is a trademark of Compaq Computer Corp.Wall Street Journal is a registered trademark of Dow Jones. Inc.

296 BYTE- SEPTEMBER I?

best choice

EGA monitors.

For the no-compromise enhanced graphics monitors, look for the Princeton GraphicSystems name. Princeton delivers everything you need in a quality EGA display, fromcrisp, dear, full EGA support to rugged reliability. When you choose Princeton youchoose the best.

SaJeobj/Product

H

■j

•

^m <^H

k

jriyfli

a4

^mmn.

HX-9L The first IBM compatible 9" high reso-lution color monitor to support EGA. Has a,28mm dot pitch black matrix tube and etchednonglare screen for sharp, crisp displays andfeatures a built-in tilt/swivel stand andgreen/amber switch.

HX-12E. The first IBM compatible highresolution color monitor to support EGA with a.28mm dot pitch. The HX-12E builds on theaward winning features of the HX-12 andfeatures 640 x 350 resolution for sharp, crisptext and colorful graphics.

PRINCETON

GRAPHIC SYSTEMS

AN INTELLIGENT SYSTEMS COMPANY

601 Ewing Street. Bldg. A Princeton, NJ 08540, Telex: 821402 PGSPRIN, (609) 683-1660, (800) 221-1490, Ext. 804

SEPTEMBER I986 -BYTE 297

Inquiry 276

Ready for the Ultimate?

DVANCED MS-DOS*. If you're a seasonedassembly-language or C programmer,* familiar with Intel's 8086/8088/80286microprocessors, you want detailed information onMS-DOS* that speaks to your level of experience.Here, from Microsoft Press and Ray Duncan, is the kind ofhigh-level, advanced information you need to write robust,

high-performance MS-DOS* applications. Now you can exploreeach of the MS-DOS* functions and special features in detail, com-paring and contrasting the various versions along the way. Scoresof detailed programming examples — isolated code fragments andcomplete utility programs — illustrate each feature. And a wealthof reference information on all the functions and interrupts, error

codes, IBM ROM-BIOS, and the Lotus/Intel/

... »■»«■«■►•"

Microsoft Expanded Memory Manager awaits

you. ADVANCED MS-DOS* - let your

I experience shine. $22.95. Available wherever

books and software are sold. Microsoft Press,l

16011 NE 36th Way, Box 97017, Redmond,

Washington 98073-9717

MICROSOFT.

PRESS

SOFTWARE REVIEW

Software Carousel

by Mark Haas

Software Carousel, by Soft-Logic Solutions, is a virtualmemory manager that allowsyou to have up to 10 applica-tions loaded and availablefor use. Only one program ata time can actually run, how-ever. Unlike multitasking en-vironments such as Quarterdeck'sDesqview, Software Carousel pro-grams that are not on-screen are in astate of suspended animation. For in-stance, you can start recalculating alarge spreadsheet, switch to anotherprogram, and then return to find therecalculation continuing from thepoint where you left it. Nothing hap-pens to your spreadsheet while youare away from it.

Use of Memory

Unlike many multitasking systems.Software Carousel allows each pro-gram, when it is running, to use all theavailable memory in your system.Thus, you could load your spread-sheet program six times to work onsix different worksheets requiring512K bytes of memory (assuming youhave sufficient memory to store inac-tive partitions) and still be able to loadand use four more programs withequal memory requirements. Soft-ware Carousel does this by setting upto 10 virtual compartments, calledpartitions, in memory to be used bythe applications. This functionallyturns your computer into 10 com-puters. Each time you switch betweenapplications, it's like turning to an-other machine that is already runningthat application. There is no connec-tion between the partitions, however.You cannot, for example, move datafrom one program to another as youcan with systems like MicrosoftWindows.

The active partition is loaded intowhat SoftLogic Solutions calls lower

A virtual memory manager

that allows you to shift between

programs instantly

memory. This is the main RAM ad-dressed by DOS, which can be up to640K bytes. Several smaller partitionscan coexist in lower memory, makingswitching between them faster. Largerpartitions need to be swapped in andout of lower memory from someother storage area.

Software Carousel can utilize anyavailable main storage memory forholding inactive partitions. On anymachine you can access up to 640Kbytes of RAM, the normal DOS limit.With an IBM PC AT compatible, youcan have Software Carousel use up to16 megabytes of extended memoryto hold inactive partitions. With anIBM PC XT compatible, you can havethe software use up to 8 megabytesof expanded memory using the Lotus/Intel/Microsoft (LIM) standard. Anymachine can use up to 6.4 megabytesof available hard disk space to holdinactive partitions.

You can determine how much mem-ory, up to the limit of available RAM,each application will have access to.You wouldn't want to assign 512Kbytes of memory to a BASIC partition,for example, since anything above64K bytes would never be used. How-ever, you may want to have 512Kbytes of memory assigned to a parti-tion to run a program like Lotus 1-2-3.Other programs may have differentmemory requirements. In general, itis best to use as little memory aspossible for any given application.This will improve Software Carousel'soverall performance.

The user's manual might lead you

to believe that you can set upa partition to hold 640Kbytes of memory. However, itwill actually be less. DOSitself usually takes up be-tween 2 5K and 3 5K bytes.Software Carousel usesabout 75K bytes, and resi-dent software, like SideKick, can takeup much more. What remains is themaximum memory that you canassign to any partition. SoftwareCarousel gives you some flexibilitywith this. For example, you can loadmemory-resident programs like Side-Kick and Keyworks selectively into in-dividual partitions, freeing up mem-ory for other partitions. You can alsomake these programs available fromall partitions.

Setting Up

Before you can use Software Car-ousel, you must first install and ini-tialize it. Because of SoftLogic Solu-tions' copy-protection method, youcan install Software Carousel onlythree times. However, the companywill provide purchasers with a non-copy-protected disk at no charge. In-stalling Software Carousel onto myhard disk was easily handled by abatch file provided on the masterdisk/After installation, I noticed in myroot directory several additional "hid-den" files that were associated withthe copy protection.

After installation you must deter-mine how much memory you want ineach partition and where the inactivepartitions will be stored. You canassign any amount of memory foreach partition, in 16K-byte chunks, forup to 10 partitions. Some partitions

{continued)Mark Haas (55 Franciscan Way, Kensington,CA 94707) is an editor and computer con-sultant. He is a former managing editor forBYTE.

SEPTEMBER 1986 • B Y T E 299

REVIEW: SOFTWARE CAROUSEL

Software Carousel

Type

Virtual memory manager

Company

SoftLogic Solutions Inc.530 Chestnut St.Manchester, NH 03101(603) 627-9900

Computer

IBM PC or close compatible with 192Kbytes of RAM, one disk drive, and PC-DOS or MS-DOS 2.0 or later. A hard diskis recommended.

Price

$49.95

can be left empty. This, in turn, deter-mines the total system memory re-quirement. If, for example, you choseto have five partitions with 512K bytes,three partitions with 384K bytes, andtwo partitions with 64K bytes, yourtotal system memory requirementwould be 3840K bytes.

You also have to decide where youare going to get that much memory.If you are using an IBM PC XT com-patible, you have at most only 640Kbytes of RAM, and you must get therest of the required memory else-where. You can use an AST RAMpagecard or a similar expanded memorycard, [f you have another card thatdoes not use the LIM standard, youcan turn it into a RAM disk and usethat. Or you can use a hard disk, al-though this results in the poorest over-all system performance. If you have anIBM PC AT compatible, you can alsouse the machine's extended RAM,which is up to 16 megabytes. You canassign the memory requirements toyour resources in any combination.

Finally, you can name each memorypartition, if you find this useful. Youcan give the partitions any names youlike, and the names will appear as partof the DOS prompt to remind youwhere you are. Otherwise, they willsimply be numbered.

The partition sizes, the resourceallocation, and the optional partition

names can all be saved for subse-quent use in an ASCII file, which canbe modified at any time using mosttext editors. You can also add com-mands to this file to customize otherfunctions of Software Carousel, suchas reassignment of command keys (toavoid conflicts with other applica-tions) and to automatically load ap-plications into each partition, includ-ing multiple command lines. This issimilar to having an AUTOEXEC.BATfile for each partition. Once you haveSoftware Carousel running, you canchange partition sizes and names.

Using Software Carousel

After Software Carousel has been setup on your computer, you can call itup manually by entering CAROUSELor automatically by including it in yourAUTOEXECBAT file. The softwaretakes about one minute to load, ini-tialize, and load an application intothe first memory partition. By press-ing a two-key combination (which youcan define), you can switch to anotherpartition. If you are in a partition forthe first time, you will see DOS loadagain. Then, if the partition is set upfor it, the appropriate application willload and run.

The speed at which you can movefrom one partition to anotherdepends on how much lower memoryyou have, how large the partitions are,and what type of backup memory youare using to hold the unused parti-tions. Large partitions will move moreslowly than small ones; only one512K-byte partition can exist in lowermemory at once, while several 64K-byte partitions will fit at once andeliminate the need to swap partitions.A hard disk is the slowest device forholding unused partitions, while ex-tended and expanded memory arethe fastest. The slowest time that I ex-perienced was about 15 seconds toswap a large (448K-byte) partitionfrom a hard disk. However, when I wasusing a 256K-byte partition togetherwith two 64K-byte partitions, no swap-ping was needed, and the changetook about 2 seconds.

SoftLogic Solutions says that Soft-ware Carousel will run with most resi-dent software, including SideKick andPro Key. I had no problems using Soft-

ware Carousel with a variety of com-mercial and public domain residentsoftware. If you load these programsbefore running Software Carousel,they will be available in all partitions.On the other hand, if you load themfrom a particular partition, they will beavailable only in that partition.

Conclusions

Software Carousel has some limita-tions. It will not work with programsthat boot directly without DOS (likeFlight Simulator) or that use anotherDOS (like CP/M-86 or the p-System).Some software has limited com-patibility with Software Carousel. Forinstance, programs that grab the key-board like WordVision and SmartcomII will run in a partition, but since Soft-ware Carousel cannot receive the re-quired key sequence to change parti-tions, you must first exit the programto do so. Communications softwarecan be a problem, too. While you maybe able to switch partitions fromwithin your communications software,you probably won't be able to changewhile you are on-line without foulingup the communications link. I wasable to do this only while the systemI was connected to was at a prompt.If I changed partitions while data wasmoving in either direction on the com-munications link, or if line noisecaused data to move, I could notresume communications when I re-turned to that partition.

Some other types of software canchange graphic controller videomodes without informing DOS. Theseprograms will cause problems, too.Finally, Software Carousel does notwork well with dual-display systems.If you change displays while goingfrom one partition to another, youmay have a problem when you returnto the first display.

These limitations are minor, espe-cially when compared to SoftwareCarousel's benefits. Being able to, forinstance, write in one partition, switchto another partition to run a BASICbenchmark, do some more writing,switch to a third partition to use aLotus 1-2-3 spreadsheet, change againto go on-line with BIX to get some in-formation, and return to my word pro-cessor is a marvelous timesaver. ■

300 BYTE- SEPTEMBER 1986

GORILLA EGA

Genoa makes your PC look better.

Outselling the rest,because it's the best.

Genoa Systems Corporation, the bold newleader of the PC Generation, brings you theSpectra-EGA. Genoa is a company that is built ontechnological innovation and engineering excellence.

Unlike the "Other Companies", Genoa controlsits own future through continuous research anddevelopment.

Backed by a major multinational concern with vastassets in the billions. GENOA IS HERE TO STAY!!

Sales Offices in California, Texas, Georgia, & New York.

Key distributors in Europe.

We make PCs better.

Genoa Systems Corporation73 East Trimble Rd.San Jose, CA 95131(408) 945-9720FAX (408) 434-0997

Inquiry 142

[iMiil

ij ii

■ J ij

iffijil

I

I

i

I

I

I

I

I

111

That's right! Now up to eight PCs, word processors,CAD systems, or whatever can share two printersautomatically.

In addition to eight serial input ports, thePSU-81B gives you two output ports—one serial,one parallel—that can operate simultaneously.

You also get lots of other convenient features,including a pause button, clear button, memory test,TOF, and of course, a 256K dynamically allo-cated buffer.

So for under $800, make your laser printer eighttimes more cost effective.

302 BYTE • SEPTEMBER 1986

Check into our new PSU-81B, and other low-costautomatic printer sharing units, from the leadersin data communications technology.

Call or write WTI today for a complete catalog.In California, call (714) 979-0363. Telex 467741.

800-854-7226

"LTUlfe

° western

iU telematic inc.

2435 South Anne St., Santa Ana, California 92704

Inquiry 373 for End-Users. Inquiry 374 for DEALERS ONLY.

SOFTWARE REVIEW

Nir

Paradox 1.1

BY RUSEL DEMARIA

paradox, a relational data- jfjfc relational database

base by Ansa Software,

SS^pSSmSK£ Afls veisafik Stores as well

guage (the Paradox Appli- ,

cation Language, or PAL) fl pOWerful SCVlpt laWQUaQe

against automatic keystrokerecording of scripts; and acomplex relational data structureagainst the intuitive query by exam-ple, which I will explain later. Paradoxuses 512K bytes of RAM in conjunc-tion with virtual disk file management.It does not take advantage of ex-panded RAM cards (like Intel's AboveBoard), and it does not work withmemory-resident programs.

Using Paradox

Initially Paradox seems rather familiar,with its Lotus 1-2-3-type commandline (opened using the F10 Menu key)and tabular format (one record perrow and one field per column). Creat-ing a new database is also familiar.You simply name the fields andchoose alphanumeric, -numeric, in-teger, dollar, or date types. Somevalidity checking is automatic; for in-stance, numeric fields will not allowalphabetic entries. Later you candefine additional validity checks formaximum or minimum values, defaultvalues, table lookups, or specific fieldmasks. You can also format numberand date fields in several ways.

Your first interaction with a file(which Paradox refers to as a table)will probably be the View option,which puts a table on the screen.After selecting this mode, you typethe name of the table you want to seeor press Return for a listing of avail-able tables. You can use the cursorkeys to highlight your selection. If youtype the first letter of the desiredtable name, the listing automaticallycompresses to show all tables begin-ning with that letter. If there is only

one such table, the command ex-ecutes. While you are viewing a table,its name heads the list when you per-form other commands. You can viewup to 16 overlapping tables at once,moving from one to another using theUp Image (F3) and Down Image (F4)keys.

Even after entering data, you can re-arrange, redefine, insert, or deletefields and change key-field assign-ments. I found the edit mode to beversatile and easy to use, although Ihad to get used to the idiosyncrasiesof Alt-F5, which puts you in character-edit mode, and Ctrl-Backspace, whichclears a field for a new entry. If youdefine key fields, Paradox automati-cally sorts according to key order. Youcan also resort into a new table. If atable has no key field, you can sort itto virtually any depth. Paradox thenlets you choose whether to sort to anew table or within the existing table.Because Paradox creates temporaryfiles on disk during a sort, the speedof the sort depends on the type ofdisk drive you are using (see table 1).

Query by Example

Query by example is the most signifi-cant feature of Paradox. It allows youto examine, modify, and filter datafrom multiple tables without usingconvoluted syntax-sensitive com-mands. Paradox performs simplequeries with astonishing ease and in-tuition. Selecting Ask from the mainmenu and then selecting a table dis-plays the query form for that table.The query form is similar to the nor-

mal tabular view. Fieldheadings are at the top ofeach column with spaceaS beneath them for filling inselection criteria. To select in-formation from severaltables, you display a queryform for each.Entering find, insert, or delete in theleftmost column initiates these opera-tions globally using the criteria youset. The insert command will takevalues from selected fields in onetable and insert them into another(the add command is similar). Thedelete command will remove aselected set of records from a table.Deleted records are stored in aspecial table; therefore, you can backout of the operation by inserting thetable of deleted records.

A simple query usually includessome fields selected to be displayedin the answer along with some selec-tion criteria. Multiple table queriesuse what Paradox calls examples.These are temporary variables thatlink tables on a common field whileexpressing the relationship betweenthe tables that you want displayed inthe answer. An example does notreally have to correspond in length ordata type to its field. For instance, youcould use a word as an example in anumeric field, or a number in analphabetic field. After the exampleand other conditions of the queryhave been entered, Paradox writesand executes the program needed toanswer the query. Other databaseprograms require you to write thesearch program. Paradox not onlywrites it for you, but it also usesheuristic goal-reduction techniques tominimize the search time.

{continued)

Rusel DeMaria (443 Ulikoi Rd.. Haiku. HI96708) is a freelance writer and computerconsultant.

SEPTEMBER 1986 -BYTE 303

REVIEW: PARADOX 1.1

Paradox 1.1

Type

Relational database

Company

Ansa Software1301 Shoreway Rd.Belmont, CA 94002(415) 595-4469

Format:

Three 51/i-inch disks; not copy-protected

Computer

IBM PC with at least 512K bytes ofavailable memory; color or monochromemonitor; two floppy disk drives or onefloppy disk drive and one hard disk drive

Documentation

User's Guide, PAL User's Guide,Introduction to Paradox, Quick Guides forLotus and dBASE users

Price

$695

You can select multiple criteria usingAND, OR, EITHER...OR, or NOToperators. You do this by using ex-amples and by placing criteria in thequery forms. You can also use thepowerful changeto command foraltering values in a field. You cansearch for literal values, wild-cardstrings, or ranges. You can also usethe like command to search for stringsthat are similar to the input criterion(useful when you aren't sure of a spell-ing, for instance). The QuerySave op-tion creates an executable PAL scriptof the current query. You can use thisscript repeatedly either alone orwithin other PAL scripts.

You can create calculated fieldsfrom the query form. In fact, this is theonly way to create a permanent cal-culated field. (A calculated fieldcreated on an input form does notbecome a permanent field in thetable.) To recalculate a calculated field,you must run the query again.

A whole range of calculation andsummary commands add power toqueries but further complicate thequery process. The more complexyour queries become, the strongeryour fundamental understanding ofthe uses of examples and checkmarksand their proper placement must be.For those willing to learn query by ex-ample thoroughly, however, Paradoxcan become a powerful and multi-faceted tool.

Forms

If you don't want a tabular listing ofyour file, you press the Form Toggle(F7) key. Paradox then displays a stan-dard form, a simple listing of all fields,and allows you to define up to ninecustom forms. Each form can be upto 15 screens long. You can useregular, display-only, and calculatedfields, or a special record-numberfield. Display-only fields are useful forrepeating field information on otherpages. You can choose from an im-pressive list of mathematical, scien-tific, financial, and other functions tocreate calculated fields. One limita-tion, however, is that you cannot for-mat calculated fields. For instance, ifyou are calculating a dollar amount,the amount will not display in dollarformat. This is an annoying drawback.

You can also create borders usingsingle- or double-lined boxes or anyASCII character. You can move fieldsor entire areas within the form, createdifferent video display characteristics,and display or suppress field names.

A fairly simple definition processlets you create a special form forentering data into more than onetable at a time. Pressing the Do-It! (F2)key posts the data in the appropriatetables. This added feature is veryhandy, but it is not without its limita-tions. Although you can determinewhere the data will go, you can'tdetermine how it will be processed.For example, if you sold some prod-ucts and needed to update an inven-tory file, you could do this only fromwithin a PAL program (explainedbelow), not from standard Paradox.Another missing feature is automatictable lookup, which is the ability tocomplete entries by entering data inone field. For instance, only a fairlyconvoluted PAL procedure can take acustomer number and automaticallyfill in the name and address. Also,unlike the Paradox norm in whichchanges in a table automatically up-date associated files, changing a tableassociated with a multientry form in-validates the form; you must redefineit.

Reports

The Paradox report generator is po-tent but, like the queries, using itbecomes more difficult as you at-tempt to release more of its power.You can generate an Instant Report atany time. This is a simple tabular print-out of the table you are working on.You can also custom-design reportsthat are up to 2000 characters wide.Paradox will separate these widereports into separate pages for paste-up. You can even use Paradox for sim-ple mail-merge and form-letter pro-cessing.

First-time database users may findthe Paradox reports confusing.Paradox bands are similar to whatsome programs call partitions. Thedifference is that a partition simplydefines a section of a report, while aband actually defines a concentricarea, visually displayed on-screen,

{continued)

304 BYTE • SEPTEMBER 1986

Inquiry 181 —►

THAT IS OUT OF THIS WORLD..

$389

$549

MODEL 2000 20MHzDUAL TRACE

MODEL 3500 35MHzDUAL TRACE DELAYED SWEEP

AT A DOWN TO EARTH PRICE

At last! Truly affordable test equipment with no compromise in design, and featuresyou would expect to find only on oscilloscopes costing hundreds of dollars more! JDRInstruments presents two, new, high-performance models backed by a two yearwarranty and technical support which is only a phone call away. Perfect for thetechnician or advanced hobbyist, both models feature Dual Trace capability and avariety of operating and triggering modes, including CH-B Subtract and X-Y operation.

MODEL 2000 has a 20 MHz I MH9H MODEL 3500 features a 35

bandwidth and 20 calibrated l4P^4| I MHz bandwidth and exceptional

sweeps ranging from .2s to .2jjs. I B^W^B^ 1mV/DIV sensitivity. Delayed

A convenient built-in component B\m|^M I sweep and variable holdoff allow

tester provides additional I stable viewing of complex

diagnostic power. gQQQ§jgg^| | waVeforms.

ORDER TOLL FREE800-538-5000800-662-6279 (ca)

JDR INSTRUMENTS

1224 South Bascom AvenueSan Jose, California 95128 (408) 995-5430

COPYRIGHT 1985 JDR INSTRUMENTS. EARTH PHOTO COURTESY OF NASA.THE JDR INSTRUMENTS LOGO IS A REGISTERED TRADEMARK OF JDR MICRODEVICES JDR INSTRUMENTS IS A TRADEMARK OF JDR MICRODEVICES.

REVIEW: PARADOX 1.1

The outer bands

of a report control all

the inner bands.

which may contain several otherbands. One advantage of the bandconcept is that it allows any subdivi-sion or partition to have its ownheader and footer. A disadvantage isthat bands can become confusingwith complex reports. The reportband controls the header and footerinformation for the entire report.Other bands include the page, group,and table bands. The table band is atthe center with all the others sur-rounding it. It defines fields and fieldheaders. Surrounding the table band,the group bands control the sortingand grouping of the data in the tableband. Since the band concept is con-centric, group bands can contain upto 16 other group bands. The outerbands control all the inner bands.

You can create groupings for in-dividual field values, ranges of fieldvalues, or a particular number ofrecords. For instance, it would be easyto divide a sales report by date andsubdivide it alphabetically by product.Another band could produce a spaceor other divider at regular intervals.

The sales report would contain threegroup bands: one for date, one forproduct, and one to control thedivider.

The lower section of a band displayssubtotals. In the example above, youcould easily subtotal sales by date.You can also create summary fields tocount records or to give statisticalsummaries of each group or of thewhole report. You can create calcu-lated fields anywhere on the report.

Many standard reports use thetabular setup, but you can design yourown reports to write checks, fill instandardized forms, or do form let-ters. Paradox's free-form report fea-ture lets you create variable-widthfields so data can appear within textwithout distorting the results.

Paradox does not generate multi-table reports. The only way to createa report that contains data from multi-ple tables is to create a new tablefrom a query. Still, the query processis fast and easy enough to be an ef-fective alternative, unless you areshort on disk space and don't haveroom for a new table.

Another problem with Paradoxforms and reports is that each as-sociates with only one table. Althoughyou can borrow table structures whencreating a new table, you can't do thiswhen defining forms or reports. In-

[continued]

File load:

Bernoulli Box (1.38)* 1.2,1.2,1.2

Floppy disk drives (3.4)* 1.5,1.7,1.7

(1.2)(1.6)

* First time file was loaded. Next three times are subsequent loads. Time in paren-theses indicates average load time. (Paradox builds a special internal directory tolocate tables as they are used, thus optimizing later retrievals.)

Sort test (within same file):Bernoulli BoxFloppy disk drives

25.4,25.6.25.482,80,80

Find last record in table:Bernoulli Box (nonindexed) 22,23,23

Bernoulli Box (indexed) 3.6,3.5,3.6

Floppy disk drives (nonindexed) 104,104,105(Home/End keys instantly find first and last record in present table.)

(25.5)(81)

(23)(3.6)(104)

AdvancedAuthorized Dealers

(Eastern U.S.)

Aardwolf Microsystems

217 East 85th, Suite 102

New York, NY 10028

212/538-7840

Advanced Information Systems, inc.

1336 Edna S.E.

Grand Rapids, Ml 49507

616/243-1312

Archive Systems, Inc.

1876 N.W. 2nd Ave.

Boca Raton, FL 33431

305/393-4602

Corporate Micros, Inc.

333 West 52nd St., Suite 120<V

New York, NY 10019

212/315-2853

Crest Systems, Inc.

2101 Magnolia Ave., Suite 208Birmingham, AL 35205205/328-4882

Fast Forward, Inc.

129 Adams StreetLouisville, KY 40206502/589-0301

ICS Software

P.O.C. 359015Brooklyn, NY 11235718/743-4050

INACOMP Computer Centers

700 Remmington RoadSchaumburg, IL 60195312/519-1900

Micro City Computers

110 West 31st StreetNew York, NY 10001212/563-6110

Mitech Corporation

#1 Perimeter Park South, Suite 335-SBirmingham, AL 35243205/967-0605

Modular Management Systems, Inc.

451 Bloomfield Ave.Caldwell, NJ 07006201/228-3838

National Al Lab, Inc.

1800 Century Blvd., Suite 770Atlanta, GA 30345404/633-3900

Network Data Systems, Inc.

3419 Pierson Place

Flushing, Ml 48433

313/732-6340

PC Connection, Int'l. Inc.

8709 S.W. 132 Street

Miami, FL 33176

305/235-8966

PRISM Computer & ConsultingServices, Inc.

2100 Riverchase Center, Suite 420Birmingham, AL 35244205/988-5111

Don Sivitz & Associates

435 Dayton StreetCincinnati, OH 45214513/421-1105

Southeastern Systems, Inc.

619 East Price Ave., Suite #12Gastonia, NC 28054704/866-8048

TENMAST SOFTWARE SYSTEMS

1015 Richmond RoadLexington, KY 40502606/268-0995

TRIMARC Systems, Inc.

11716 Parklawn DriveRockville, MD 20852301/231-4991

Upen Computer Systems

4701 N.W. 72nd AvenueMiami, FL 33166305/594-2980

306 BYTE • SEPTEMBER 1986

THE

SOFTWARE

LINK, INC.

To Over 30,000 Installations,MultiLink MEANS Multi-User.

At over 30,000 sites, as many as one-quarter of a millionusers tap into the power of MultiLink' Advanced everyday.

Since 1981, they've come to rely on our multi-tasking,multi-user system for compatibility with their favoritesoftware, and the ability to share disks, files, printers,and programs in a true PC-DOS environment.

From the largest of the Fortune 500 to the smallest insmall business, MultiLink- has provided a cost-effectivemulti-user solution that's available from no one else.

MultiLink - Means Cost-Effective Timesharingon a PC. MultiLink'1- Advanced utilizes the principle oftimesharing by sharing a central PC's peripherals, files,and processor time among nine users. Up to eight in-expensive terminals can be connected to a single non-dedicated IBM PC, XT, AT or 100% compatible usingstandard RS-232 ports. Each terminal effectively emu-lates a PC having up to 512K RAM.

PC-Shadow"' Workstations, shown below, even havean AT look-alike, as well as work-alike, keyboard, dis-play, and serial port. In addition, password-protectedremote access via modem can be made with either dumbterminals or PCs running our terminal emulation software.

uMMijoK

MultiLink' Means PC-DOS Compatibility with aSoftware-Driven System. Lotus 1-2-3, Symphony,WordStar, dBASE III, & Multimate are just a samplingof the wide variety of PC-DOS software that's fullycompatible.

Our software-driven system is also IBM NETBIOScompatible, so programs that are written for IBM'sToken Ring will run on our multi-user system, as well.

MultiLink' Means Multi-User to LeadingComputer Publications. Whether you read PC Magazine,"MultiLink-Advanced delivers on...convenience, speed,and flexibility," or InfoWorld, "If you want a low-costmultiuser system with up to eight terminals, MultiLink'Advanced is worth a serious look;' it becomes clear thatMultiLink' Advanced is a formidable contender in themulti-user marketplace.

See What MultiLink' Can Mean to You. Learn,firsthand, how our multi-user system can benefit yourcompany. Call The Software Link TODAY for completeinformation and the authorized dealer nearest you.MultiLink* Advanced is S495 and comes with amoney-back guarantee.

9

^THE SOFTWARE LINK, INC.

8601 Dunwoody Place. Suite 632, Atlanta, GA 30338 Telex 4996147 SWLINK

CALL: 404/998-0700Dealer Inquiries Invited

THE SOFTWARE LINK, INC/CANADA

250 Cochrane Drive, Suite 12 Markham, Ontario L3R 6B7

CALL: 416/477-5480

Inquiry 3I7

(^

MM

j

ftl^j

tZ-

■

— X

REVIEW: PARADOX 1.1

The Application Generatorand Runtime Module

Paradox is already an excellentdatabase, but Ansa continues toimprove and augment it. The newestadditions to Paradox are the Appli-cation Generator (ApGen) and the Run-time module.

ApGen is an elaborate PAL script de-signed to create well-structured code.The whole program is menu-driven andeasy to follow. Using ApGen, you cancreate Paradox menus and submenusup to 10 levels deep with up to 15selections per menu and 15 tables perapplication. By choosing combinationsof tables and scripts, you can designsophisticated Paradox environments.The resulting scripts are not only effi-ciently coded for you. but many stan-dard error-trapping routines are auto-matically included. For instance, when-ever you design a report to go to aprinter, code is automatically includedto warn the user if the printer is notready to print.

There are a few limitations to ApGen.Its applications contain many in-dividual files, including scripts, data-bases, and forms, all of which must bein the same subdirectory as the ApGenfiles. The manual recommends that you

use a separate subdirectory for eachapplication. Although ApGen automat-ically creates a script to copy the ap-plication to a different disk or directory,file management would have beeneasier if ApGen had been able to con-solidate some of these files.

Although you can use PAL to modifyany script you create with ApGen,these modifications will be lost if youuse ApGen to modify the application.In addition, you can't use the tableview from within ApGen. although youcan add scripts or hard-coded routinesthat do. When editing records in multi-table environments, the tables mustcontain key fields. Finally, you musthave at least 1.8 megabytes of availablememory on a hard disk to installApGen, and at least 640K bytes ofRAM to run it.

ApGen is easy to use; you create andselect tables just as you would withParadox. You can design reports andforms or borrow them from existing ex-amples. You can also create selectioncriteria using familiar query forms anddesign customized help screens.

ApGen runs much slower than Para-dox, perhaps because it is a PAL script

and not a compiled program. Despiteits sluggish responses, the program isuseful, especially for nonprogrammerswho would never be able to put to-gether a sophisticated application with-out this kind of help. Systems devel-opers will find that ApGen saves thema lot of time when coding applications,and it creates an excellent frameworkfrom which they can further customizetheir efforts.

After you finish creating an applica-tion, you can use Paradox Runtime torun it, even without Paradox installed.Ansa will supply this run-time packagefor only $9.95.

There are very few limitations to theParadox Runtime package. Basically, itcan run any Paradox script or applica-tion. Typing PDOXRUN <filename>is all that is necessary to run an ap-plication. The Runtime files are quitelarge and fill the better part of two flop-py disks; therefore. Runtime would bemost useful in a hard disk environment.However, Runtime will run Paradoxscripts and applications but not themain body of the Paradox program.

About all that is missing now is aParadox compiler.

stead, you must make a macro scriptout of the definition process itself.

PAL

PAL (the Paradox Application Lan-guage) is a powerful programing lan-guage that contains a full set ofmathematical, statistical, transcenden-tal, and financial functions. It is easyto create a PAL script with the full-screen editor provided with Paradox.In addition to having a syntax thatshould be sufficiently familiar todBASE and R:base programmers, PALoffers sophisticated menu generation,password protection, definable pro-cedures and procedure libraries, andan array structure that can capture en-tire Paradox records, even when thedata types are inconsistent. PAL alsohas a debug mode that is activatedautomatically when a script fails torun properly.1 found that I had to program with

PAL to accomplish some of my goalswith Paradox, but most users will notneed to do much programming. If youwant to use PAL, you can record key-stroke macros and then read them in-to your PAL script. This saves havingto learn the whole language, and ex-amining recorded macros can helpyou to understand the PAL syntax.

Summary

Paradox has several other strongpoints, including an incremental Undofeature: exit to DOS (DOS shell); fastimport and export to and from ASCII,Lotus 1-2-3, Symphony, dBASE II andIII, pfs:File, and DIF formats; keystrokemacros; and convenient date, arith-metic, and string handling.

For the most part, Paradox lives upto Ansa's claims of easy-to-use power,although it can become difficult as itsoperations become more complex.Paradox rivals programs like dBASE

and R:base and may even be moresuitable for many database projects.Within its self-imposed limitations,Paradox offers tremendous power,and a little dabbling with PAL can pro-duce wonderful results. With the ad-dition of Ansa's $9.95 Runtimemodule, Paradox can become a pro-gram for turnkey system design at areasonable cost (see the text box"The Application Generator and Run-time Module" above).

Learning Paradox is not an effortlessprocess, but the manuals are infor-mative and the help screens are ade-quate. Especially pleasing are theshort manuals that are included to getLotus 1-2-3 users and dBASE users upto speed quickly.

I was impressed with the versatilityand forgiving nature of the program.For intense but intuitive relationaldata processing, Paradox performsvery well indeed. ■

308 BYTE • SEPTEMBER 1986

51

^

<*&&><

J0£&g.

It's becoming an epidemic . . . everyone is switching to C!

ten'cam the college students i major softwai

tol granlming world. Programmers everywh'en

lesirel SPEED, lOWER, and PORTAB1UTYIt's time ti' face the inevitable. You're going to catch die lever too! When youdo, give us a call. We've goi the best cure — an illustrated guide to the Clanguage, plus a complete program development system. Everything you needto master the C programming language ... all at a price that's less than the costof a hook!

But don't let this price fool you. Our system is powerful; it compiles twice asfast as the others, is completely standard, and it's very easy to use. Most Ccompilers are designed for wizards. We have designed ours for you!

that supports all data typesand the latest features like bit fields, enumerations, structure assignment,Mix and passing/returning structures.

that loads separately compiled files, searches libraries, andbuilds an executable program.

(including thestandard C functions and the computer specific functions that provide directaccess to the operating system and BIOS).

your programs for minimal space ormaximum speed.

Operators are standing by ... Please use this Number for ORDERS ONLY!

GALL TOLL FREE FOR RUSH ORDER DELIVERY!

IN TEXAS. PLEASECALL TOLL FREE

1-800-622-4070

Split Screen Text Editor

an Incredible

Value

AT ONLY

Our high powerededitor is great for edit-ing high level lan-guages. It works justlike MicroPro'sWordstar® butmacros allow you tocreate your own cus-tom editor, and thesplit-screen feature letsyou edit two files atthe same time.

The MSDOS/PCDOS versionis loaded with special features:

• Execute any DOS command or RUN otherprograms from the editor.

• Quickly edit files as large as 300,000characters.

• Compile MIX C programs directly frommemory. The editor automatically positionsthe cursor to the first error in yourpn igram.

1-800-523-9520

For Technical Support Please call 1-214-783-6001

MIX Software, Inc. / 2116 E. Arapaho / Suite 363 / Richardson, Texas 75081

Or contact our Worldwide Distributors direct in:

Canada: Saraguay S< ifrware IA16-923-1500 Switzerland: DMB Communication CH-1 -825-53-29Australia: Techflow 017 586924 France; Info/Tech 1-43-44-06-48

(RUSH REPLY ORDER FORM!)

SPECIAL

Please check method of payment:

□ CheckD Money OrderD MasterCard/VISA

Your Card #:

Expires

Shipping Charges: (No charge for ASMUtility)

In the U.S.A.: Add $5.00 per Order.In CANADA: Add $10.00 per Order.OVERSEAS: Add $10.00 per Text Editor.Add $20.00 per C Compiler. Add $30.00for combined C Compiler and Text Editor.Operating System: (Check one)□ CP/M Z80 □ MSDOS/PCDOS

Specify Your Computer Name

Specify Disk Formal.

NAME.

ASM UTILITY

an IncredibleValue AT ONLY

Call assembly language routines -rtQt

from your C programs. The ASM utility »■■ '

works with Microsoft's MASM or M80 assem-bler. Macros make it easy! Works just as ifyou were calling a C function, and you caneven call C functions from assembly lan-guage. Lots of useful assembly languagefunctions are included as examples.

Description

II Split-Screen TextEditor

f C Compiler

| C and Text Editor|| (Special)

ASM Utility

Texas Residents Add 6.125%Sales TAX

TotalQuantity PRICE Order

$29.95 $_$39.95 $-

Telephone A/C ( ) _

Street

City.

$54.95 $-$10.00 $_

State.

_ZIP_

Inquiry 12

Shipping Charges (See at Right) (_$_

TOTAL OF YOUR ORDER: [$~

Country—

f"l I Jf 2116 East Arapaho

J lX/\i Suite 363SOf twa re Richardson, Texas, 75081Ask about our Volume Discounts!Call 1-214-783-6001 B

■

§ga^ %iKm "■*"'■■ ■'

-Z-2-2-Z

QNX: With any other OS, your personal computer is asleep at the switch.

If real-time performance is the keyto the next generation of smallsystems, task-switching is the keyto real-time performance.

QNX task-switching has beenmeasured using standard Intelbenchmarks. Here are the results:

OS

Computer

Processor

Task

Switches/

Sec

QNX™

ISM AT

8Mhz 80286

2800

QNX™

IBM PC

5Mhz808B

787

XENIX™

lntel-286

5Mhz80286

203

UNIX™

CODATA

8Mhz 68000

187

XENIX™

ALTOS

5Mhz80B6

96

UNIX™

FORTUNE

6Mhz 68000

95

QNX will remain the only real-timemulti-user, multi-tasking OS forthe PC, the AT and compatibles.

As a networking OS, only QNXprovides integrated performanceat the fundamental level of inter-task communications. The tasksneed not be on the same machine:the messaging is network-wide.

A task responsible for handling anA/D converter on one machine canprovide data and accept requestsfrom tasks on any other machine.For this reason only QNX can

implement true distributedprocessing, distributed file systemsand distributed devices, with noneed for a central file server.

Since QNX is modular, programmerscan easily adapt and enhance theOS itself by adding their ownsystem task. PC-DOS 2.1 or 3.1 ™can run as one ofQNX's many tasks.

With over 20,000 QNX systemsinstalled worldwide, QNX is theundisputed standard for real-timemicroprocessor applications.

Multi-User

10 serial terminals per PC, AT.

C Compiler

Standard Kernighan and Ritchie.

Multi-Tasking

40(64)tasksperPC(AT).

Flexibility

Single PC, networked PC's,

Networking

2.5 Megabit token ring.

Single PC with terminals,

255 PC's and/or ATs per network.

Networked PC's with terminals.

10,000 tasks per network.

No central servers. Full sharing of

thousands of users per network.

disks, devices and CPU's.

Real Time

2800 task switches/sec (AT).

PC-DOS

PC-DOS runs as a QNX task.

Message

Fast intertask communication between

Cost

From US $450.

Passing

tasks on any machine.

Runtime pricing available.

The margin by which QNX out-performs UNIX-based systems isnot accidental. QNX architecture isunique among multi-tasking smallcomputer operating systemsbecause it is modular, not mono-lithic. On the PC, this distinction isdecisive: UNIX system overheadand processing demands sap anycomputer smaller than an AT.

Because QNX was developedspecifically for smaller computers,not "kluged" from an OS written forlarger computers, its structuraladvantages are apparent. QNX wasthe first multi-tasking, multi-userOS forthe IBM PC (1982), the firstagain for the AT (1984) and the firstnetworking OS for the PC and theAT (1984). For the forseeable future,

Quantum Software Systems Ltd., Moodie Drive High Tech Park, 215 Stafford Road, Unit 104, Ottawa. Ontario, Canada K2H 9C1

For further information or a free demonstration diskette,please telephone (613) 726-1893.

The only multi-user, multi-taskingnetworking operating system

r^YAn^for the IBM PC'AT

—iJvj^ and compatibles.By Quantum.

XENIX is 3 registered trademark of tile Microsoft Corporation. Unix is a registered trademark of AT&T Bell Labs. IBM PC. AT. XTand PC DOS are trademarks of IBM Corp

310 BY'

SEPTEMBER 1986

Inquiry 290

SOFTWARE REVIEW

WordPerfect 4.1

BY RlCARDO BlRMELE

This latest version of Word-Perfect from WordPerfectCorporation is an improve-ment over version 3.0, whichI reviewed in the December1984 BYTE. While it retainsmany of the useful featuresof its previous versions, Word-Perfect 4.1 has many new and im-pressive features.

Improved Features

A number of WordPerfect's old fea-tures have been improved. The blockcommand highlights the text con-tained within a block to be moved;remembering what is included withinthe block is no longer necessary.Previous versions of WordPerfect letyou work on two documents at a timeand move text between them, butthey required you to go throughmenus. Now switching between twodocuments is accomplished by press-ing a dedicated key, making the oper-ation much faster.

Now you also have the choice ofhaving two documents appear on twodifferent screens, or as two windowson one screen.

If you need to switch to another pro-gram, you can do so by exiting toDOS from within WordPerfect. Youcan then run the other program, leaveit, and return to your place in Word-Perfect by typing EXIT.

Footnotes can still occupy the tradi-tional bottom of the page, or you canput them at the end of a document.Notes can be up to 16,000 lines (ap-proximately 300 pages) long. Theycan be numbered in sequence (withWordPerfect keeping track of thenumbers as you insert or delete othernotes) or marked by asterisks ornumber signs.

WordPerfect protects you from yourerrors better than before. For instance,a big help in error protection is the

A word processor

with a thesaurus, a dictionary,

and many editing tools

Undelete feature. A group of charac-ters that you erase before moving thecursor is saved to a buffer. From therethe characters can be recalled withtwo keystrokes. This also provides ashortcut for cutting and pasting smallamounts of text.

Directory listings are still alphabet-ized, but WordPerfect now has anumber of added features. For in-stance, you can look at a file's con-tents without having to actually loadthe file. You can also search throughthe files within the directory for aword or word pattern.

An undocumented feature of thedirectory is the ability to batch-printor batch-delete. If you have a numberof files that you want deleted orprinted, you simply move the cursorto highlight the name of each file andpress the asterisk key. Then you entera command to either delete or print,and WordPerfect will do it all at once.

Spelling Dictionary

WordPerfect's spelling dictionary nowhas 100,000 words (without taking upmore disk space than the smaller olddictionary), and it has room for youto add about 10,000 words of yourown. The dictionary includes somecommon legal and medical terms,which will be a bonus for some busi-ness users.

The dictionary works by comparingthe document on your screen withthree lists of correctly spelled words.The first list contains common wordsthat are in the main spelling file. If aword is not found there, the dictionary

goes to the second list, whichcontains less common wordsthat are also in the mainspelling file. Finally, the dic-tionary checks with the thirdlist, which contains wordsthat you have entered in thedictionary yourself.One of the most difficult errors tofind in a document on a computerscreen is the same word inadvertent-ly typed twice. WordPerfect's dic-tionary looks for this kind of errorwhile it checks for correct spelling.If the dictionary finds a misspelledword, you can have it automaticallycorrected by selecting it from a list ofnumbered words on your screen. Youcan also use the dictionary to look upwords that you are not sure of by pat-tern matching (for instance, checkingall words beginning with ind) or byphonetic spelling. WordPerfect also in-cludes a utility, SPELL.EXE, whichallows you to easily manipulate anypart of the dictionary.

After the dictionary is finishedproofing your text, it tells you howmany words the document contains.If you simply want a quick word countwhile you are still writing, one key-stroke when you are in WordPerfect'sdictionary mode will give it to you.

Editing Tools

WordPerfect has an outlining facilitythat you can use as an outline pro-cessor. It will also automaticallynumber paragraphs or whole sectionsof text.

One error that many beginnersmake is not saving their work. Word-Perfect 4.1 helps out by automaticallysaving your work into a special file ifyou choose. You can set up this facili-

{continued)Ricardo Birmele (P.O. Box 1166, Botfiell.WA 98041) is president of The CantileverGroup.

SEPTEMBER 1986 -BYTE 311

REVIEW: WORDPERFECT 4.1

WordPerfect 4.1

type

Word processor

Company

WordPerfect Corporation266 West Center St.Orem, UT 84057(800) 321-4566

Format

Five 51/4-inch disks

Computer

IBM PC, XT, or AT with at least 256Kbytes of memory; color or monochromemonitor; two floppy disk drives or onefloppy disk drive and one hard disk drive

Documentation

User's manual

Price

$495

ty as a default or when you first startthe program.

WordPerfect lets you create tablesof contents and indexes almost auto-matically. You simply indicate that youwant a particular word or phrase fromthe text included in them. Word-Perfect will also keep track of in-dividual items to be incorporated intothe table of contents or index whileyou modify a document's text.

Two other useful editing tools arethe new Redline and Strikeout fea-tures. With Strikeout, you can marktext that you may want to delete laterby having a dash overwritten on eachletter. Redline text—text that is added,but you aren't sure you want to keepin—is marked by a vertical bar to itsleft. Both Strikeout and Redline textcan be deleted automatically beforea final printout.

WordPerfect also has a thesaurusthat will look up a word you specifyand provide you with choices for itsreplacement. You can also scrollthrough successive lists of words untilyou find the word you want.

Merge Facility

WordPerfect 4.1's merge facility is sec-ond to none. It will do the usual merg-ing of mailing lists and boilerplate let-ters, but it also allows input from theconsole during a merge. In addition,WordPerfect can pick up the datefrom your computer's system calen-dar and insert it automatically intoyour text.

Additional Features

WordPerfect's programmers havegone out of their way to make word

T^ble 1: Benchmark results (in seconds).

WordPerfect 4.1

WordStar 3.3

Microsoft Word 3.0

Program load

12.8

9.5

24.3

Load 4000-word file

4.2

4.2

5.7

Save 4000-word file

15.6

26.7

30.0*

Cursor through file

75.7

48.6

90.1

4000-word search

8.7

12.5

18.2

400 replacements

12.8

25.3

85.7

"average time using

MS-DOS 3.1

processing simple by anticipating theway users work. For example, whenyou press F3-Help, you have twochoices: You can press any functionkey to get an explanation of whatthat key does, or you can press anyletter key to get an alphabetical index.This index lists WordPerfect's features,the key that executes each feature,and the name that WordPerfect callseach key. Because Help is so easy touse, this program becomes almostsecond nature very quickly.

WordPerfect 4.1 has a new versionof the PRINTER.EXE utility, which letsyou drive almost any printer. If yourprinter doesn't appear on the list, youcan define it in exhaustive detail bygoing through a simple fill-in-the-blanks process. You can use any of the194 already defined printer patterns,or you can modify the installation ofany included printer. The process isvery easy to complete.

A Convert utility allows you totransform WordStar files to ASCII files.This utility also lets you interface databetween WordPerfect and databaseprograms. I used it to insert datagenerated from a Reflex database intoa text file with no difficulty.

Documentation

WordPerfect 4.1's documentation isdivided logically into step-by-steptutorial and reference chapters. Themore involved functions, like mailmerge, math functions (which aremuch like a spreadsheet), and specialfeatures, are discussed in separatechapters. Each of the program's com-mands is clearly explained with an il-lustration color-coded to the key-board template.

Conclusion

Usually, updates to established pro-grams are simple bug fixes or re-hashes of the previous versions. Thisis not the case with WordPerfect 4.1.It retains all the good points of itsearlier versions, especially things likeits clean screens and fast response tokeyboard input (see the benchmarkresults in table 1). In addition, Word-Perfect's capabilities have been in-creased. It will do anything you canreasonably require a word processorto do. ■

312 BYTE • SEPTEMBER 1986

Inquiry 227 —►

THE

GREAT ESCAPE!

FROM IVORY TOWERS ANDCOLD COMPUTER ROOMS TOTHE WARMTH OF YOUR OFFICE.

Artificial intelligence for businesshas arrived in a revolutionary newproduct. . . Guru.

At last, artificial intelligence designed espe-cially for business! Guru brings together expertsystem capabilities of artificial intelligence,the productivity of familiar business computingtools and the ease of communicating withyour computer using menus, commands or plainEnglish. All available in a single, integratedprogram.

Guru works like human experts, consideringuncertainties, reasoning through forwardand backward chaining, asking for more infor-mation when needed, and explaining itsrecommendations.

Guru's expert system works hand-in-handwith all the familiar business computing toolslike spreadsheets, statistical analysis, businessgraphics and a programming language, alwaysavailable for both expert consultation and youreveryday business computing needs.

Best of all, you won't need to learn LISP orPROLOG or buy fancy computers. . . Guru runson your PC and communicates in plain English!Guru is artificial intelligence that means business.

For more information, call or write Micro DataBase Systems, Inc./Marketing & Sales, P.O. Box248, Lafayette, IN, 47902, 317/463-2581, Telex209147 ISEUR.

ARTIFICIAL INTE L L I G E N C E T II A T MEANS B U S I N E § S

mdbs is a registered trademark and Guru is a trademark of Micro Data Base Systems, Inc., P.O. Box 248, Lafayette, IN. 47902 -SHE

Ml I I II I III I M •

ha*

^SwXttWfJg

VM'i

#M

YOU COULD SAVE A BIGFIFTY DOLLARS ON THE NEWQUIETJET PLUS PRINTER?

If your old printer is beginningto sound like an industrial chainsaw, you should give a listen to thenew Quietjet Plus printer fromHewlett-Packard. It gives you quietoperation and superb printing qual-ity at a very affordable price. Andfor a limited time, you can get a $50rebate on any Quietjet Plus you buy.

Just visit your HP dealer for aQuietjet Plus demonstration. You'llsee its near letter perfect printingquality. And how its wide carriagelets you print a wide range of docu-ments, from short memos to longspreadsheets. You'll hear—oralmost hear—how incredibly quietit is. So quiet that you can carry ona normal telephone conversationwithout being disturbed.

The Quietjet Plus represents thekind of business computing inno-vations you've come to expect fromthe company that never stopsasking, "Whatif...?"

So if your printer is breaking thesound barrier, just call 1800 367-4772,Dept. 276C for the Hewlett-Packarddealer nearest you.

Offer expires 9/30/86. Rebate available when submitted with proof of purchase and official form avail-able at participating dealers and from HP sales reps. Void where taxed, restricted or forbidden by law.© 1986 Hewlett-Packard Company PG603BT9

Inquiry 161

REVIEW FEEDBACK

EXPEROPS5

"ExperOPS5" by William Jacobs (July) ref-erences the OPS5+ product and indicatesthat it is owned by Artelligence Inc. Thisis incorrect. OPS5+ is the exclusive prop-erty of Computer Thought Corporation.Glenn CarterPiano. TX

Computer Thought (1721 West PianoParkway. Suite 125, Piano, TX 75075)now owns OPS5+ following a legal set-tlement with Artelligence Inc. Version 3.0sells for $1850.

Jon EdwardsSenior Technical Editor, Reviews

Panasonic Exec Partner

Having purchased a Panasonic Exec. Part-ner, I was quite interested in the review(April). My impression of the machineroughly parallels Rich Malloy's. However.1 have a few observations to add.

The Exec. Partner is a "quickie" designby Panasonic to put its plasma displaytechnology to consumer use. The systemROM and BIOS seem to be taken directlyfrom the Sr. Partner, and the motherboardlooks very similar to the one inside the Sr.Partner as well. Since the 8086 is in asocket, I tried for a performance upgradewith a NEC V30 chip. However, it didn'twork. I continually got a PIT (program-mable interface timer) fault message withmore than one chip. I heard there is a"mystery" component on the mother-board that needs to be changed, but I wasunable to find the needed information,and I had my 8086 reinstalled.

I agree with the author that the internalprinter is of marginal use. Still, from a con-venience point of view, no one can arguewith having a printer built into a machine.If the printer could be induced to useregular bond or tractor-feed paper, itwould be much more useful.

If a printer that uses normal paper can-not be adapted to the machine, Panasonicshould get rid of it. Then there would beroom for three full-length IBM expansionslots or six half-size cards. With all the half-size expansion cards that are emerging,there would be plenty of room for cus-tomizing the machine.

The long memory check on power-up is

annoying, but 1 think it could be bypassedwith a proper setting on the motherboardDIP switch. I find that Peter Norton's SIutility gives some strange readings everynow and then. This may be related to thedifficulties the author had running Side-Kick. However, I have experienced no suchproblems with SideKick.

The annoying habits of the display aremore of a system ROM problem than ahardware problem. However, Panasonichas demonstrated a full-color version ofits plasma screen. Add an EGA chip setand you have a very impressive machine.Charles KuhlmanBerlin, West Germany

AT&T UNIX PC

As a current user and programmer of aUNIX PC, I noticed a few mistakes in thereview of the AT&T UNIX PC by AlastairJ. W. Mayer (May). The article is based onthe old UNIX operating system (version2.0), which is slower than the current ver-sion 3.0 (if you have 2.0, AT&T will give youa free upgrade to 3.0). An example of thehigher speed of the current version is theresizing of windows, which the authorstated took 2 seconds with 2.0. It nowtakes under 1 second with 3.0.

The motherboard is available with 512Kbytes or 1 or 2 megabytes of RAM. Amemory-expansion card with up to 2megabytes of RAM can be added, whichbrings the system up to 4 megabytes. Cur-rently, 20-megabyte, 40-megabyte, and67-megabyte hard disk drives are avail-able. A point worth noting is that all harddisk drive and floppy disk drive accessesare done through direct memory access;thus, the microprocessor will not beslowed down.

The UNIX PC can read MS-DOS files asstated in the review, but it can also runmost MS-DOS applications with the useof the DOS-73 expansion card. This cardcontains an Intel 8086 processor as wellas the ability to support the 8087 mathcoprocessor. The card also allows you tomaintain full multiprocessing.

The author said there was a need for agraphics package to create device-inde-pendent graphics. This is already availablewith an industry-standard GSS-Toolkit.

A point that was not mentioned was that

the PC is well suited for a multiuser en-vironment. AT&T recommends that fiveusers can be added, although up to ninecan be connected.

Additional software is available that wasnot listed in the review, including dBASEIII, Multiplan, WordStar 2000, Smart, File-it, 3270 SNA Emulator, GSS-Chart, FOR-TRAN, COBOL, BASIC, and more.

Douglas J. GardnerAdelphi, MD

Editor's note: For information on upgrad-ing from version 2.0 to version 3.0, callthe AT&T UNIX PC software upgrade co-ordinator at (900) 432-6600.

ITT XTRA XP

I found the review of the ITT XTRA XP by)ohn D. Unger (July) very well done andinformative, although there is one state-ment that I hope you can expand upon.The sentence states, "The ITT XTRA XPis essentially a hardware upgrade of theIBM PC XT." Is this correct, or should itsay "hardware upgrade of the ITT XTRA?"What are the hardware differences be-tween the ITT XTRA and the XTRA XP?Robert A. MargadonnaSea Bright, NJ

The main difference between the ITTXTRA and the ITT XTRA XP is their cen-tral processors. The XTRA XP uses an80286 CPU the same processor as theIBM PC AT, whereas the ITT XTRA usesan 8088 CPU like the IBM PC and PC XT.However, the rest of the XP is designedto be compatible with the IBM PC or PCXT rather than with the PC AT. The 80286enables the XP to run IBM PC or XT soft-ware faster than the ITT XTRA and theIBM PC or PC XT. The net result is thatboth the XTRA and the XTRA XP arecompatible with the IBM PC XT. butbecause of its CPU and memory design,the XP can run programs much fasterthan the standard ITT XTRA.

—John D. Unger

REVIEW FEEDBACK is a column of readers let-ters. We welcome responses that support or challengeBYTE reviews. Send letters to Review Feedback.BYTE, One Phoenix Mill Lane. Peterborough.NH 03458. Name and address must be on allletters.

SEPTEMBER 1986 -BYTE 315

Smart.Power andfriendliness forcustomapplications.

The difference is power.

If there's one thingdBase users havelearned — the hardway — it's thatthere's a huge differ-ence between powerand usable power.Which, in a nut-shell, is the differencebetween dBase IIIPlus and The Smart

Data Base Manager.

Both are full-fea-tured, multiuser databases. But Smart ismuch easier to learn,easier to use, andeasier to program.Not to mention fasterand more functional.

That's not just ouropinion. In March,

Software Digestranked Smart as theMost Powerfulamong all 15 leadingrelational data bases.Smart also toppeddBase III Plus in testsof speed, versatility,error handling, andease of learning.Custom applica-

The difference is morethan power.

SmartDataBase

dBaseIIIPlus

• ReviseaMeApplications

Yes

No

• Multi-tableAccess

Vet

No

• Nested Menus

Yes

No

• Custom Reports

Yes

No

• AutomaticProtectionAgainst LAN"Deadly Embrace"

Yes

No

• Built-inCommunications

Yes

No

• Not CopyProtected

Yes

No

List Prices:

single-user

$ 495

$ 695

4 user-LAN

1,290

1,690

10 user-LAN

3,060

3,680

Ask for a Smart Demo-Pack.

Now for just $19.95,you can experiencethe complete SmartSystem on your single-user PC or LAN work-stations.

The Demo-Packincludes all of Smart'spowerful features, alongwith a complete set ofdisk tutorials. To order,just call toll-free 800-438-7627 and ask forDept. BD (in Canada orKansas call 913-492-3800).

Once you see the dif-ference, you'll get Smart.

tions are painlesswith Smart. Its built-in programming lan-guage relies on sim-ple English commands.

A powerful"Remember" featurelets anyone, evennon-programmers,reduce long-windedroutines to a singlekeystroke.

Smart also includesbuilt-in asynchronouscommunications, cus-

tom menus, passwordprotection, and a time-saving "Browse" mode.

There are twoways you could makeSmart more powerfulthan it already is: (1)by adding it to anynumber of worksta-tions on a local areanetwork, and; (2) byintegrating it with TheSmart Spreadsheet,and Smart WordProcessor.

The Snail

The Smart Data Base Manager

S> 1986 Innovative Software, Inc.Inquiry 171

oo0(

<§^

fSL

n

■

9

J

5f

■ .

i„ ....... ,.&

~tt,.-wa-~»~f»--~>&•—■ ii in I..

BYTE

Kernel

Computing at Chaos Manor:A Busy Day

by ]erry Pournelle 321

According to Webster:Two Fine Products

by Bruce Webster 335

BYTE Japan:

Perspectives on Hardware and

Software

by William M. Raife 351

BYTE U.K.:

TURBOCHARGING MANDELBROT

by Dick Fountain 359

Applications Only:Sing Ye MacPraises

by Ezra Shapiro 367

IN HIS POEM "EPITHALAMION," Edmund Spenser includes the followingline: "Ah! when will this long weary day have end." Jerry Pournelle was prob-ably ready to utter this on the day he describes in his article, a day that wastypical of his heavily traveled month. In between his peregrinations, he didhave a day at home. Of course, you say, a day to rest and see his family. Nosuch luck. Numerous things to accomplish made for an exhausting day—buthe did get everything done. This column also covers what Jerry found of in-terest at the Spring COMDEX in Atlanta.

The title of According to Webster refers to Bruce's two products of the month:Turbo Prolog from Borland International and LightspeedC from Think Tech-nologies. Bruce is impressed with Turbo Prolog, a development system forthe IBM PC and compatible machines. He believes it is Borland's best prod-uct since Turbo Pascal. LightspeedC, a development environment for the Macin-tosh, goes a long way toward making C Bruce's language of choice on theMac. Bruce also reviews the predictions he made last January (probablybecause most of them have proven to be correct).

Bill Raike begins his column by mentioning some computer applications hehas found in unlikely places—a noodle shop? He then goes on to describetwo interesting products he saw at the annual Microcomputer Show in Tokyo.The Vectra-D Dual-Mode Workstation is from Yokogawa Hewlett-Packard. Thecompany has combined two computers into one, letting you use both Englishand Japanese modes. The second product is Yamaha's Piano Player, a pianoand computer rolled into one.

This month's BYTE U.K. is a continuation of Dick Pountain's last column, whichwas in July. There, he touched briefly on the topic of dynamic load balancing,a programming technique that can be used to optimize performance in parallelcomputing systems. This month, Dick goes deeper into this technique. To il-lustrate it, he looks at a graphics demonstration program written in Occam.This program draws views of the Mandelbrot set.

Ezra Shapiro has not been a fan of the Macintosh—for many reasons. How-ever, he admits that he is being won over to the machine because of the ex-cellent software that is appearing. In almost every application category, Ezrafinds at least one first-rate Mac product. He is not sure whether More fromLiving Videotext is an outline processor or an operating system, but he doesfind it a spectacular piece of software. FullPaint, a program from Ann ArborSoftworks, is a lot like MacPaint. But it is also loaded with significant enhance-ments that make it a richer and more useful program.

SEPTEMBER 1986 • BYTE 319

CONNECT

IBM

S/36

520 to IBM OS/6 toto WANG OIS to W,MICOM to DEC WP!

iPUGRAPHIC to QUAD]to DATA GENERAL t.

HONEYWELL to IBM PC/3<

FLAGSTAFF ENGINEERING can connect your incompatible computersystems using diskette, tape, communications, or printed media. Wehave developed many low cost systems to help you transfer files anddocuments between different computer systems. Our "FILE","WORD", and "TYPESETTING CONNECTION" products can readand write most of your 8", 5lA", and 3V2" diskette formats. The"PROTOCOL CONNECTION" can provide RS232 communicationsbetween your different computers. The "TAPE CONNECTION"system is a 9-track tape drive that can read and write your files on800, 1600, or 6250 BPI magnetic tape. Since 1982, we have installedthousands of conversion systems at customer locations around theworld. Call us today for help in connecting your systems.

320 BYTE • SEPTEMBER 1986

FlagstaffEngineering

1120 W. Kaibab

Flagstaff, AZ 86001

Telephone 602-779-334

Telex 705609 FLAGEIS

Inquiry 125 for End-UsersInquiry 126 for DEALERS ONLY

COMPUTING

HAOS MANOR

A Busy Day

by Jerry Pournelle

It has been a day. I'll explain.

I was on the road most oflast month, and this onewasn't much different. Sometime ago I accepted an en-gagement to speak at theU.S. Navy's Micro Conven-tion—more on that later—and every year I go to the annualmeeting of the American Associationfor the Advancement of Science.When Tom Clancy, author of the suc-cessful Hunt for Red October, heard I wasgoing to be out his way, he arrangedfor me to go with him to the Navy'sflight center at Patuxent River inMaryland, where we got to climbaround in the latest aircraft. 1 wouldn'thave missed that for worlds, but itused up two more days.

The Navy Micro Convention was inVirginia Beach. That isn't quite theend of the earth, but on a clear dayyou can probably see the end of theworld from there. Returning involvedflying with Agony Airlines out of Nor-folk. 1 had two days at home, then wewere off to Philadelphia for the AAAS.While 1 was here I worked on the finaledit of legacy of Heorot and left it forLarry Niven to finish. I also worked allnight on the final report of the Citi-zen's Advisory Council on NationalSpace Policy, since it had to be inWashington before the first of )une.

1 came back to find galley proofs ofthe new release of The Mercenary, mostbut not all of Heorot done, a zillion BIXmessages about the Council report,an Atari 1040ST, the usual four tonsof software, and 28 telephone mes-sages. One was from our editors atSimon and Schuster: they wanted thefinal manuscript of Heorot right away.So did my agent, who was travelingto England and had a really good of-fer for British rights, only he'd have totake a manuscript with him. Anotherwas from Ken Sheldon, my long-

A long day is

representative of what ]erry'smonth was like

suffering BYTE editor, who reallywould like to know when he'd get thiscolumn (already two weeks late).

Heorot existed—more or less—ondisk, but what was needed was papercopies. Some day, I hope, that won'tbe necessary. I ought to be able todeliver books on disk or by telephone.Alas, not yet: I'd have to print thebook out, and now.

It was clearly time to use every bitof computer power available.

Spelling, Anyone?

It wasn't easy, but I got everythingdone in one day.

First things first: our manuscript hadnever been through a spellingchecker. You might think that withthree authors—Larry Niven, JerryPournelle, and Steven Barnes—allworking with computers to producethis book, there wouldn't be manyerrors. One of the great things aboutwriting with little computers is thatyou can not only write faster, you canwrite better, since it's so very mucheasier to make changes. Given therush, surely we could leave the restto copy editors?

I suppose we could have, but Larryand I have had sad experiences withcopy editors who not only didn't catchthe real mistakes but decided theycould write better sentences than wecan. We have developed the theorythat the fewer genuine errors, the lessincentive for the copy editor to makeneedless changes: which means thateverything goes through the spellingchecker, even if it's a 565-page manu-

script that has to be printedand ready for Federal Ex-press in one day.

First thing, then, was to fireup the Golem, our big Com-puPro 286/Z80 machine. TheGolem has 2 megabytes ofM-Drive/H RAM disk mem-ory; more than enough to hold all ofHeorot as well as The Word Plus com-plete with dictionaries. Since a goodpart of a spelling program's activity in-volves long searches through files, aRAM disk speeds things up some-thing wonderful.

The Word Plus allows you to usemultiple dictionaries: the main dic-tionary, an update dictionary, and aspecial dictionary that can be dedi-cated to this particular manuscript.The update dictionary is neededbecause you can't add words to theprogram's main word list; that's en-coded to allow very fast searching.The special dictionary is greatbecause I can fill it with stuff uniqueto this book: character names, slangexpressions, and stuff like that.

When I was ready to begin, I turnedon Big Kat, the Kaypro 286i. While theGolem was working on the text files,1 used Big Kat to connect to BIX andclean up some of my BIX mail. Ofcourse, this was clearly the wrong dayto quit using Crosstalk; that is, I'd in-tended to check out Mirror, the Cross-talk clone program, but I sure wasn'tabout to do that in the middle of acrisis.

It all worked quite well. Heorot isorganized into 34 chapters of about20K bytes each. It took The Word Plusa little more than a minute to read achapter, make a list of unique words,

(continued))erry Pournelle holds a doctorate in psychologyand is a science fiction writer who also earnsa comfortable living writing about computerspresent and future.

SEPTEMBER 1986 -BYTE 321

CHAOS MANOR

I didn't have thefoggiest notion ofwhat to do nextYd never hadtrouble with thePrinter Optimizer.

sort them, and check them against thethree dictionaries in use. During thatminute I could answer a BIX mail in-quiry or read a couple of items in aconference. Then I'd turn back to theGolem and deal with the spellingsituation.

The early chapters took more atten-tion, of course, since I started with ablank special dictionary. I had to buildit up, adding character and placenames and slang. Even so, I found Icould get a chapter done in fiveminutes, one of which I'd spent onBIX.

Once I had ten chapters done it wastime to print.

Critical Job Detector

When we designed my new offices,we included a small soundproofedroom with its own air conditioning. Iwas tired of being in the same roomwith a machine gun; the printerswould lurk in their own special place.It would be inconvenient to haveprinters at a distance, but it surewould be quieter.

By the time we were actually build-ing, though, I had the HP LaserJetprinter; and it's so quiet that there'sno need to put it elsewhere. It doesgenerate a bit of heat, but fans takecare of that.

The Laserlet is normally connectedto Big Rat and to Zeke II, the ancientCompuPro Z80 1 write all my bookson. Actually, neither machine is con-nected to the printer: they both con-nect to the Printer Optimizer, whichis a box full of memory that connectsto Big Kat by a parallel port and toZeke II by a serial port. It's very handy:whichever computer is sending, the

Optimizer catches what's being sentand puts it off into the LaserJet. TheOptimizer can also translate variousprint formats into stuff the LaserJetunderstands; if you have a LaserJet,you probably ought to have anOptimizer.

However, the Optimizer, like mostelectronic equipment, is apparentlyfurnished with a "critical job detec-tor." I say this because I've had thatOptimizer for more than a year nowand never had one iota of trouble withit; but today was different.

My plan was to connect the Golemto the Optimizer. This is simpleenough: I just get an RS-232C cable(I buy mine from Inmac, a pricey butreliable mail-order supply house) andrun it across the floor. The Golem isn'tnormally connected to any printer.Once a month I roll the NEC Spin-writer out to write checks because theLaserJet doesn't take tractor feed, butnormally the Golem's jobs don't in-clude printing. If 1 really need for himto produce hard copy, it's easyenough to string the cable; both ZekeII and the Golem talk to the Optimizerat 9600 baud with the same hand-shaking protocols and such, so I justunplug Zeke's cable and plug in theGolem's.

Having connected the cable, it wastime for a test: the Golem runs underConcurrent CP/M. Do a Control-P andtype a couple of characters to be surethings worked right—

And the Optimizer began to squeal.

The first rule is Don't Panic. Ma-chines know when you're scared. It'sthat "critical job detector" circuit.Work carefully. . .

Maybe I'd connected something upwrong. Better test it; but first, go overto Big Kat and do a "print screen" justto be sure the Optimizer and theLaserJet are working.

More squeals. The Optimizer justwasn't going to accept input.

I didn't have the foggiest notion ofwhat to do next. I'd never had trou-ble with the Optimizer. Of course, I'dnever had such a critical job before.

"Usually," I told myself, "usually it'sa cable." Check all cables. No luck, ofcourse. Next, look at everything verycalmly and carefully—aha. Normallythe Optimizer's little LED display

blinks to tell you whether it wants toprint serial or parallel (it can be con-nected to two different printers as wellas two computers). It wasn't blinking.It wasn't doing anything.

Hmm. Time to open it up and lookinside. That's easy enough. Now pushdown all boards and tap all chips. Noluck. Then I noticed: the Optimizerhas a small lithium battery. This letsit remember what it's supposed to doeven when you've turned off thepower. The Optimizer seemed to haveforgotten something. Could that be it?If that battery is dead I'm in real trou-ble, but suppose the contacts to it arecorroded? Worth a try, anyway. Irotated the battery in its holder, thenreprogrammed the Optimizer.

Voila! Suddenly everything workedfine. Screen dump came through.Connect the Golem, do a Control-P;works fine.

The moral of the story is that ifyou're very, very careful and stay very,very calm, you can defeat the criticaljob detector.

An Orgy of Printing

From there on things were easy. I hadone more glitch: I'd never put a ver-sion of WRITE configured for the HPLaserJet onto the Golem. Attemptingto print to a LaserJet with a programthat thinks it's talking to an NEC Spin-writer will produce interesting results:it fills the LaserJet with form feeds, sothat even if you halt input into theprinter you'll get a dozen or so sheetsof paper with one or two lines of gar-bage. The only way I've found to stopthings when they get that far is to turnthe LaserJet off, which usually resultsin a paper jam. Fortunately, paperjams are easy to clear.

Installing a new version of WRITEtook less than five minutes. After thatit was a piece of cake. At eight pagesa minute the LaserJet can print achapter about as fast as I can checkthe spelling, so after 1 sent over theten chapters I'd already done, thingswent very smoothly. You do have tokeep the LaserJet's paper tray filled,and that has to be done at its conve-nience: if you try to add paper whileit's printing, you get a paper jam. Thegood news is that the LaserJet remem-

(conlinued)

322 BYTE • SEPTEMBER IS

helps save time, money and cut frustrations. Compare, evaluate, and find products.

RECENT DISCOVERY

TurboHALO Graphics for TurboPASCAL- respected, mature, full.150 HALO routines, up to 16 colors,medium or high resolution, multiplefonts. IBM CGA and EGA, HerculesAT&T DEB, more. PC

Al-Expert System Dev't

$ 99

Arity System-incorporate w/C. PC S295Experteach - Improved, samples PC $399EXSYS - Improved. Debug, file &

external program access. PC $339

Insight 2+ - dB2, language MS $879Others: APES ($359), Advisor ($949),

ES Construction ($100), ESP($845),

Expert Choice ($449)

Al-Lisp

BYSO- Common, MacLISPcompatible

250+ functions, fast. PC $150

GC LISP Interpreter-"Common", rich.

Interactive tutorial Call

Microsoft MuLisp 85 MS $199

PC Scheme LISP - by TI. SCHEME has

simple, "orthogonal" syntax. PC $ 95TLC LISP - classes, compiler. MS $225TransLISP - Good for learning MS $ 75WALTZ LISP - "FRANZ LISP" -

like, big nums, debug, CPM-80 MS $149Others: IQ LISP ($155), UNX LISP ($59),

IQC LISP ($269)

Al-Prolog

ARITY Standard - full, 4 Meg

Interpreter - debug, C, ASM PC $ 350

COMPILER/Interprctcr-EXE PC $ 795

With Exp Sys, Screen - KIT PC $1250

MacProlog by Programming Logic

Systems MAC $ 295

MicroProlog - enhanced MS $ 229

Prof. MicroProlog-full memory MS $ 359

Prolog-86 - Learn Fast MS $ 95

Prolog-86 Plus - Develop MS $ 250

TURBO PROLOG by Borland PC $ 79

Others: Prolog-I ($365), Prolog-2 ($1795)

Editors for Programming

Call

$ 75

BRIEF Programmer's Editor-undo, windows, reconfigure PCC Screen Editor - w/source 80/86EMACS by UniPress - powerful,multifile, ML1SP. Source: $949 $299Epsilon- like EMACS PC $169

Kcdit - like XEDIT PC $109

Lattice Screen Editor-multiwindowmulti-tasking Amiga $100 MS $109PMATE - power, multitask 80/86 $149Red Editor CPM $ 95

XTC - multitasking PC $ 85

FEATURE

Smalltalk-80 - "Official" Xeroxlicensed version. Compatible withSmalltalk-80 v2 running on othersystems. Compiler, complete graphicsinterface, debugger, windows, text andgraphics editor, source. Protected mode,RAM access. Requires PC AT PC $995

700 + Programmer's Products

The Programmer's Shop carries every programmer's soft-ware product for MSDOS, PCDOS. CPM, Macintosh.Atari, an J Amiga systems. We help you choose the best toolsfor you. Most popular products are in stock, available forquicTfOelivery. We will gladly special order a product foryou at no charge —just allow a few extra days for delivery.

Need Cross Compilers, Translators, or the right Fortrancompiler? Ask us.

OurServices:

• Programmer's Referral List • Dealers Inquire

• Compare Products •- Newsletter

• Help find a Publisher • Rush Order

• Evaluation Literature FREE • Over 100products

• BBS-7PMlo7AM6l7-82M086 • National Accounts Center

C Support-Systems

Basic-C Library by C Source MSC Sharp - well supported, Source,

realtime, tasks PC

CToolSct-DIFF,xref, source MSLattice Text Utilities PC

The HAMMER by OES Systems PCPC LINT - checker. Amiga $89, MSSECURITY LIB - add encrypt to MSC

C86 programs. Source $250 PC

Fortran & Supporting

$139

$600$ 95$ 99$179$119

$125

Forlib-t- by Alpha - graph, comm.M ACFortran by Microsoft - full '77MS Fortran - well liked, solidNo Limit - Fortran ScientificPolyFortran - xref, pp, screenProspero - '66, reentrantRM/Fortran - enhanced "IBM Ftn"Scientific Subroutines - Matrix

MultiLanguage Support

BTRIEVE ISAM MS

BTRIEVE/N - multiuser MS

CODESIFTER - Execution PRO-FILER. Spot bottlenecks. MSDan Bricklin's Demo Program PCHALO Graphics- 115+ deviceinterfaces, rich, printer. Specifylanguage interfaceMicrosoft Windows SoftwareDevelopment KitPANEL - data validation, noroyalties Xenix $539,Pfinish Performance Analyzer

$ 59$229$219

$119$149$349$395$149

$199$469

$109$ 65

PC $229

PC $399

MSMS

PLINK-86 - a program-independentoverlay linker to 32 levels. MSPLINK-86 PLUS - incremental MSPolyLibrarian MS

PVCS Version Control MS

Screen Sculptor-slick, thorough PCZAP Communications - VT 100,TEK 4010emulation, file xfer. PDZView - screen generator MS

Atari ST & Amiga

$239$249

$249$369$ 85$329$ 99

$ 95$219

We carry full lines of Manx, Lattice, &Metacomco.

Call for a catalog, literature and solid value

800-421-8006

THE PROGRAMMER'S SHOP™

128-B Rockland Street, Hanover, MA 02339Mass: 800-442-8070 or 617-826-7531 7/86

RECENT DISCOVERY

Lattice RPG II Compiler- Run RPG IIprograms developed for the System IIIor system 32/34/36 with little or nochange in source code. Screen gen, ISAM,& direct files. No royalties. PC $639

C Language-Compilers

AZTEC C86 - Commercial PC

AZTEC C65 - Personal Apple II

MSMSMSMSMS

$499$199$299$339$289$399$259

$125$389

C86 by CI - 8087, reliableLattice C - from LatticeLattice C - from LifeboatMark Williams - w/debuggerMicrosoft C 3.0Q/C 88 by Code Works - Compiler

source, decent code, native MSWizard C - full, fast. MS

C Language-Interpreters

C-tcrp by Gimpel - full K & R,

.OBJ and ASM, large progs. MS $249INSTANT C - Source debug.

Edit to Run-3 seconds MS $389

Interactive C-interpreter, editor PC $255Introducing C - learn C

fast, self paced tutorial PC $109

Run/C Professional - Run/C plus

create add-in libraries,

load/unload them. MS $189

Run/C Lite - improved MS $109

C Libraries-General

Blackstar C Function Library PC $ 79

Blaise C Tools 1 ($109), C Tools 2 $ 89C Essentials by Essential PC $ 85

C Food by Lattice-ask for source MS $109C Utilities by Essential - Comprehensive

screen graphics, strings. Source. PC $139C Worthy Library MS $295

Entclckon C Function Library PC $119Grecnlcaf Functions-portable, ASM $139PforCe by Phoenix - objects PC $299

C Libraries-Files

FILES: C Index by Trio - full B +Tree, vary length field, multi compiler/File is object only MS $ 89

/Plus is full source MS $349

C to dBASE - with source MS $139

CBTREE - multiuser record locking,

sequential, source, no royalties MS $ 99

CTree by Faircom-no royalties MS $339

dbVISTA - full indexing, plus optional

record types, pointers, Network.

Object only - MS C, LAT, C86 $159

Source - Single user MS $429

Source - Multiuser MS $849

dBASE Tools for C PC $ 79

dbc Isam by Lattice MS $199

FEATURE

APT - Active Prolog Tutor. -Guides you in building applicationsinteractively. Arity, Borland,Prolog-86 compatible. PC $ 65

Note: All prices subject to change without notice.Mention this ad Some prices arc specials. Ask aboutCOD and POs. All formats available.LPS surface shipping add $3 item.

Inquiry 279

CHAOS MANOR

bers which page it messed up in thepaper jam and does that page againonce you have the paper tray filledand the jam cleared.

By this time I'd caught up with mostof the BIX mail, and the special dic-tionary for Heorat was doing a lot ofthe work, so that I could check achapter's spelling in four minutes orso, meaning that 1 could now relax abit. I thought of firing up Zeke II andbeginning this column, but I didn't.

What 1 did manage was to get onecopy of Heorot done in time for FederalExpress to come get it. The spellingcheck was worth it, too: there were 6to 10 errors per chapter, including in-consistent spelling of characternames, and once a character ap-parently changed sex without anoperation, or would have if The WordPlus hadn't caught it.

So. That's done. Now to do thecolumn.

Word Problems

Of all the spelling checkers I've used,1 like The Word Plus best; but it doeshave some problems. For one thing,it doesn't know any plurals, and itdoesn't know the full conjugations ofmost verbs: it knows "analyze" but not"analyzes" and "dog" but not "dogs."By now I've put most of those into theupdate dictionary, but it can be an-noying while you're building it.

There are also bugs in the dictio-nary. The worst one is that any wordthat contains the root "cen" will bereported as wrong; somehow Oasisgot "cei" in there as the root, so TheWord Plus believes "ceitered" is cor-rect but not "centered." I've found acouple of other odd anomalies likethat. Once in a while, too, The WordPlus wants to run two dictionarywords together, which makes nosense.

For all that, The Word Plus is fast.It can find suggested words quickly,and it's very responsive to user con-trol. I wish Oasis would update themain dictionary, but whether that hap-pens or not, The Word Plus is thespelling-check program I recommend.

Spring COMDEX

The Spring Computer Dealers Exposi-tion, better known as COMDEX, hap-

pens in Atlanta. Every year I say I'mnot going, but 1 always do, lest I falleven further behind. Of course, keep-ing up in this crazy business is im-possible, just as it's impossible to seeeverything at a COMDEX. I hope Ididn't miss anything important, but Iprobably did.

From what I did see, four productsstood out. First, Sayette Technology(an Eastman Kodak company) has awonderful gadget called the SayetteSystem 10. It's a transparent gizmoabout the size of a loose-leaf note-book. You lay it on top of your View-Graph overhead projector and runcables to your IBM PCompatible com-puter. Now anything that appears onthe PC screen will get projected ontothe ViewGraph screen.

There are limits. No color, to start.On the other hand, it will translatecolor output into 16 shades of mono-chrome, so this isn't a severehandicap.

Many places, such as the civil engi-neering department at the U.S. AirForce Academy, have developedreally nifty software that can be usedto demonstrate engineering andscience principles. Up to now, projec-tors that could handle computer out-put have been very costly, so mostschools couldn't afford one. Studentseither have to huddle around a com-puter screen or take the instructor'sword for what's happening. The newEastman projector will change all that.At present it sells for less than a thou-sand dollars. I expect that price to fall.I also expect to see some kind ofadapter for the Macintosh, after whichthis thing is going to have a real im-pact on education.

AT&T PC 6300 PLUS

My second pick of the show is theAT&T PC 6300 Plus.

I don't know what to do about AT&TThe company has really great tech-nological capabilities. I freely confessto being a Bell Labs fan. Moreover,AT&T is one of the few companieswith both the finances and the tech-nical resources to be real competitionto IBM, something this industry sore-ly needs.

With all that going for them, AT&Tneeds only one hit in the small com-

puter market. The company may haveit with the 6300 Plus, which is a 98percent PC AT-compatible box thathappens to be faster than an AT andalso happens to speak UNIX. Morethan that, the 6300 Plus can run onejob under MS-DOS and simultaneous-ly do UNIX tasks. It's also a ratherhandsome piece of equipment, witha sensible design, unlike the AT&T PC7300 (now called the UNIX PC), whichtakes an acre of desk space and hasa keyboard cable coiled so tightly itcan drag the desk to your chair.

The 6300 Plus I saw had terrificgraphics. Text on the color screen waslarge, clear, and as steady as anythingI've seen in monochrome.

In a word, I was impressed.

The AT&T people said they'd get mea 6300 Plus, and I confess I'm rathereager. Certainly it could take the placeof Big Kat, and it could possiblybecome the main machine here.

That's the plus side.

On the minus side, AT&T could takemarketing lessons from just aboutanybody, including some companiesin Chapter 11. That isn't just in thecomputer field, either. As I was writingthis, I got what must have been mytenth call from AT&T urging me tochoose them as my long-distance car-rier. The only problem is that I alreadychose them. Both by mail and everytime they called before. I'm afraid Iscreamed at the poor chap on thephone. I also told him that the nexttime AT&T calls me, I'm going tochange to anyone but them. Think thatwill work?

AT&T does believe in telephones.They believe so much that they don'tput addresses on their press releases.They do give phone numbers, ofcourse, both office and what they sayis the home number of their press of-ficer. Calling that after business hoursgets an answering machine. 1 wonder:do they figure people will call for anaddress? And do they need thebusiness?

Atari ST

My third pick of the show was theAtari ST; the software base for thismachine continues to grow, and it'snow quite clear not only that Atari willsell a lot of them but that the third-

324 BYTE • SEPTEMBER 1986

CHAOS MANOR

party support base is growing.

For example. Mind Mine ComputerCenter has kits to upgrade the 520STto a full megabyte and also to installa permanent battery-backed clock/calendar. Installing the calendar re-quires pulling a chip and inserting itinto a piggyback board. The instruc-tions are clear, and anyone but a cer-tified klutz could do it. The memoryexpansion is a bit more difficult andrequires soldering. Mind Mine warnsthat it's no job for a novice. 1 agree,but the instructions are very clear, andit's a lot easier to use their kit than toexpand the 520ST by piggybackingchips, as many have done. With thoseprovisos, I recommend both boardsand look forward to Mind Mine'sfuture efforts.

Another Atari product I have notrouble recommending is Zoomracksfrom Quickview Systems. Zoomrackswas written by Paul Heckel, the authorof Elements of Friendly Software Design(Warner Books, 1984), which was mybook of the month a year or so ago.It's a kind of database program that'sthe simplest thing in the world to use.Remember a few years ago when theExecuscan Scan Card systems were allthe management rage? I sure do; Ibought several of them and even gavea few as presents. Alas, like most suchorganization schemes, the paperworkwas too much, and my leatherboundExecuscan systems languish on book-shelves. Zoomracks, though, is verylike Execuscan except that it's com-puterized, meaning that it's very sim-ple to set up racks of "cards," labelthe racks, and put whatever you likeon the cards. It really works on theAtari. There's a version for the IBMPC, too; it's a bit slow, but fast enoughon an AT. With that reservation, verymuch recommended. You'll hearmore about Zoomracks in the future.

More Atari software: a ton of stufffrom Antic Software, ranging fromsome of the most absurd joke pro-grams to Maps and Legends, whichhas lots of maps and map-drawingtools. Antic specializes in low-costsoftware that comes without manuals.Alas, they've also set things up so thatmost of their help files have to beprinted out, and I don't have a printer

[continued)

Inquiry 322

"BRIEF is simple to learn anduse and extremely sophisticated"

PC Magazine, July 1986

Tailor Program Editing to Your Style

A high-level, readable MacroProgramming Language - allowscustomization for programminglanguages . . . Complete, unlimitedvariables, etc.

Edit multiple files of unlimited size(2 Meg is OK)

Multiple Windows on screen withdifferent or same file, fragments, etc.

A bona-fide UNDO stack (up to 300)of all operations; deletions, readingfiles, search, translate, more.

Reconfigurable keyboard

Only $195Call 800-821-2492

Full "regular expression search" -wild cards, complex patterns

Adjustable line length - up to 512.

Keystroke macros - for commontyping sequences

Suspend BRIEF to execute, exit toDOS - run another program (like acompiler, dir, XREF, DIFF, orDEBUG) then resume BRIEFsession

Compiler-specific support like autoindent, syntax check, compile with-in BRIEF

-SolutionSystems™

335-B Washington St

Norwell, MA 02061

617-659-1571

Recent Survey Data

88% of survey respondents were more

productive with BRIEF than other

editors.50% were more productive with BRIEF

than their previous editor in 5 hours

or less.72% were performing all operations in 2

hours.

For PC, AT, compatibles or Tandy 2000.

Answer: 1040ST"

Question: Which computer is the first inthe world to give you 1 Megabyte ofpower for under $1,000?

The 1040ST is a major breakthrough in personal com-puters. Indeed, it's the world's first computer with an origi-nal list price that represents less than $1 per kilobyte.

To give you an idea of what an extraordinary accomplish-ment that is, let's look at the price-per-kilobyte figures forsome well-known competitors.

The Macintosh,™ for example, comes in at over $4 perkilobyte, the Amiga™ is over $5 per kilo-byte and the PC AT™ is a whopping $9.

In contrast, the 1040ST comes in atan incredible 98 cents per kilobyte and atotal price of just $99995 for the com- j-plete system: CPU, disk drive andhigh-resolution monochromemonitor.

ATARI and 1040ST are trademarks of Atari Corp.Amiga is a trademark of Commodore-Amiga, Inc.AT is a trademark of International Business Machines. Inc.Macintosh is a trademark licensed to Apple Computer, Inc.© 1986 Atari Corp.

AATARI

Inquiry 27i

SEPTEMBER 1986 -BYTE 325

CHAOS MANOR

Run

ProtectedSoftwarefrom aHard Disk.

ZeroDiskZeroDiskZeroDiskZeroDisk

ZeroDisk lets you run dozensof popular business softwarepackages without floppies.Call us for the latest list ofsoftware it handles. ZeroDiskneeds an IBM PC or XT or ATor compatible, running underDOS version 2.0 or higher. Itoccupies 15k bytes ofmemory. ZeroDisk is notcopy-protected.

ZeroDisk is revised monthly.You may get revisions for an$18 US trade-in fee.

To order ZeroDisk, send acheck for $75 US, or call uswith your credit card. Wewill ship the software withina day.

Quaid Software Limited

45 Charles Street East

Third Floor

Toronto, Ontario M4Y 1S2

(416)961-8243

assigned to the Atari just now. On theother hand, much of their stuff isself-explanatory.

I could go on, but surely the pointis clear: Atari ST software pours forthlike a flood. The Atari is here to stayand delivers more computer powerfor the buck than anything else thatI know of.

Amiga

My top pick of Spring COMDEX wasthe Amiga.

The Amiga did have some prob-lems. For instance, when Ken Sheldonand l approached the Atari booth,they practically ran out to grab us; Istood in the Amiga booth for 15minutes before anyone spoke to me.Atari software was demonstrated byhackers; most of the Amiga softwarewas demonstrated by clerical employ-ees from Commodore headquarters.

None of that really mattered. Whatwas important was that the Amigabooth was jammed. 1 could feel theexcitement. It reminded me of theearly days of microcomputers. More-over, once I got past the clerks andsecretaries, there were plenty of realhackers.

Mike Lehman, who originally wrotePascal MT+ and was later a vice presi-dent of Digital Research, has starteda new company called Maxisoft. Theproduct is MaxiPlan, a combinationspreadsheet and database with chartcapability. MaxiPlan knows how to doa lot of statistical calculations. It willmake databases and charts, and it willtalk to you through the Amiga'sspeech synthesizer. You'll spend awhile on the manual—this thing ispowerful, and the instructions can becomplicated—but it's worth the invest-ment. Highly recommended.

TD1 Software has Modula-2 com-pilers for both the Atari and Amigamachines. The Atari version is a newrelease that fixes some problems withthe original. Both versions work andshould make it simpler to transportprograms from Atari to Amiga. Long-time readers know I'm a Modula-2fan; this is a reasonable implementa-tion, and TD1 is working to make itbetter. The chief problem is the docu-mentation: TDI needs to give moreand better examples of just how to

write and compile simple programs.Pournelle's law of software documen-tation: You can't have too many ex-amples. I wish TDI would learn it.

The Amiga is known for its graphics;one of the best graphics programs isDeluxe Paint by Electronic Arts. Alas,they use an obnoxious copy-protec-tion scheme. That's its only real fault;otherwise. Deluxe Paint is glorious.There's just very little you can't dowith it. You can color-cycle portionsof your drawing, so that waterfallshave running water; zoom in for finedetails; and suchlike. It's a lot of fun.EA also has various games, some in-teresting, some boring.

Mindscape is another company thathas developed some interestingAmiga software. The Halley Project isa spaceflight game that's part arcadebut largely strategic; it helps to knowsomething about planetary astron-omy.

Activision has a whole bunch ofAmiga software, including MusicStudio, which 1 haven't much got intobut which looks wonderful, and aseries of illustrated text adventuregames, including Hacker, which somesay is the most difficult adventure ofthat type ever written.

In other words, there's a great dealof Amiga software: business, games,educational, programming tools. That,however, wasn't the real hit.

What was really impressive was theAmiga Sidecar, a box that turns anAmiga into a 99 percent PCompatible.Moreover, since the Amiga is a multi-tasking machine, they were able to runPC software as just one job. It waseerie to watch Flight Simulator run-ning as if on a PC and still see thefamous Amiga bouncing ball in thebackground and a word-processingprogram running in the foreground.The Sidecar has both 8088 and 8087chips and is supposed to sell for sig-nificantly less than a thousand dollars.An Amiga plus Sidecar plus hard diskwould be one of the most powerfulcombinations around, and I had noproblem designating that the numberone pick of Spring COMDEX.

Problems

One problem I've had with the Amigais that while 1 kept hearing about all

326 BYTE • SEPTEMBER IS

CHAOS MANOR

the new software for it, I never gotany. Commodore's people sent cata-logs, while the Atari people sent soft-ware. At COMDEX, Bob Pariseau, vicepresident for software developmentand one of the original Amiga devel-opment team, promised to fix all that.He also arranged to get me a Sidecaras soon as it was available. 1 left COM-DEX convinced that the Amiga waslikely to be the product of the year.

Two weeks later, Commodore laidoff nearly 200 people, including BobPariseau. There were 55 Amiga peo-ple in the West Coast office; 20 werelet go. Moreover, many who didn'tleave immediately were put on notice;others, seeing the handwriting on thewall, quietly began sending out theirresumes. The rumor I hear is that theinvestment bankers want Commodoreto reduce their payroll by 50 percent;given Commodore's financial situa-tion, the company is in no position toargue.

The question, then, is whether Com-modore has—and can keep—enoughhigh-tech people to support theAmiga properly. Commodore saysthey can. So do Amiga enthusiasts.

Me, I don't know. The situation ismade vastly more complicatedbecause many of those laid off wererequired to sign, as a condition forgetting a few more severance benefits,a particularly severe—I would sayobnoxious—nondisclosure agree-ment, the first term of which is thatthe agreement itself is secret. This hasmade it very difficult to get a decentpicture of what has really happenedat Commodore, and as I write this inearly June I don't think anyone knows.

So. I like the Amiga, and I was muchimpressed by the enthusiasm of theAmiga people at COMDEX. Ofcourse, even then the Commodoretop brass must have known that manyof those enthusiasts wouldn't be withthe company two weeks later. By thetime you read this, we may know theend of the story. I can't say I'm veryfond of Commodore's management,but I do wish the Amiga well. It's aheck of a machine.

Navy Micro

The Navy Micro Convention at Virgin-ia Beach was quite an interesting af-

fair. The exhibitions tended to bedominated by Zenith, which is hardlysurprising since Zenith is furnishingthe armed services with most of theirpersonal computers. Indeed, the de-mand for the new Zenith Z-248 PC ATclone is so great that I can't get one.Real Soon Now, they tell me.

One absolutely fascinating productat the Navy Micro exhibition was fromEastern Computer. I don't even knowthe product's name: I have a brochure,but it's all in Chinese.

What Eastern makes is a board forthe IBM PC, XT, or AT that, coupledwith their 24-pin printer, will let yourmachine write Chinese—using an or-dinary PC keyboard.

You enter Chinese into the machineby keystrokes or phonetically. That is,I watched James Cheng of EasternComputer type in

TKNL YFEMBNKG

which resulted in Chinese charactersappearing on the PC (monochrome)

screen. He could also have typed in"Zheng Su-timg," which is phoneticfor the same result: his name.

Clearly this system isn't much useunless you know Chinese; but if youhave ever seen a Chinese mechanicaltypewriter, with its great number ofkeys and different platen wheels,you'd appreciate just how revolution-ary Eastern's board is. With traditionalChinese typewriters, really fast typistsare lucky to do about 10 words aminute; Cheng tells me that with hissystem they get up to 40 or 50 wordsa minute.

If you're thinking of publishing inChinese, you'll want to give Eastern acall.

Hows That?

I met Wayne Rash at the Navy Microshow. Wayne works for AmericanManagement Systems and also doesreviews for BYTE and other computermagazines. I'd corresponded with him

(continued)

1

Answer: 10405T ™Question: Which computer wasspecially designed for peoplewho hate to wait?

Let's face it, any time you spend waiting on a computeris time wasted. That's why Atari® built the 1040ST with asizzling clock speed of 8 MHz.

And with 1024K bytes of Random Access Memory, the STTgives you an incredible combination of power and speed.(The PC AT,™ for example, has 512K of memory.)

So you'll spend time working on your ST, instead ofwaiting on it.

In addition, the 1040ST costs anamazingly low $99995, which makes it thefirst computer in the world to deliver 1Megabyte of memory for under $1,000.(The PC AT costs about $4,500.)

So if you haven't checkedout the ST yet, what are youwaiting for?

ATARI, ST, and 1040ST are trademarks of Atari Corp.

AT is a trademark of International Business Machines, Inc.

© 1986 Atari Corp.

AATARf

Inquiry 28

SEPTEMBER 1986 • BYTE 327

Resolution IsA Numbers Game...

So Be It.

From 480 dots x 200 lines up to 720 dots x 480 linesfH scanning from 15.75 to over 25.00 KHz.

Lor over a decade, NANAO hasbeen producing the finestmonochrome and color moni-tors for OEM's worldwide. Nowour high resolution monitorsare available right from thesource—factory direct. Thequality, selection, and pricesare beyond compare. Butplease do.

130 different models

i Broad range of features

i Monitors to fit almost everycomputer and configuration(including the IBM PC/ATand AT&T 6300)

i Designed, built, sold andserviced by NANAO

NANAO

NANAO USA Corporation

373 G. Vintage Park Drive Foster City, CA 94404 (415) 341-7055

Dealers and VAD/VAR Inquiries Welcome

328 BYTE • SEPTEMBER 1986

Inquiry 417 tor End-Users. Inquiry 418 for DEALERS ONLY

CHAOS MANOR

on BIX, but until I got to VirginiaBeach I'd never met him.

I'm glad 1 did. He has some fascinat-ing stories. One of the best concernsthe HP Integral.

The Integral came with a single flop-py disk and was supposed to doUNIX—which came on several disks.Needless to say, that setup didn'twork very well. You could, however,get an external hard disk for themachine. Wayne got one. Now theproblem was to format it. HP had fur-nished a format program, but it didn'tseem to work. Finally he called HP.

It took a while, but eventually hefound someone who knew how to doit. It seems you were supposed tostart the format program, and as soonas it began to run, quickly disconnectthe data cable. After that the loboto-mized hard disk would happily formatitself.

I don't see very many HP Integralsany more. I think I can guess why.

T.N.T.

A couple of weeks ago, someone onBIX came up with the notion that abunch of hackers should work to-gether on BIX to design a program.There followed considerable discus-sion as to what that program shouldbe. Eventually someone suggested anindexing program, which generatedmore discussion on what featuressuch a program might have.

Before they could settle the details,Bruce Tonkin of T.N.T. Software leapedin. First he gave a long list of featuresan index program ought to have. Thenhe announced that he would write it.A week later he announced that hehad written it.

"It" turned out to be My Index, awhole series of programs that, work-ing together, produce an index. Theonly requirements are that you're run-ning PC-DOS and that your text editor/word processor be able to "print todisk," so that the index program canfigure out what page things are on bycounting form feeds. Once you havethat you can get started with the in-dexing.

The first program in My Indexmakes a list of unique words in thedocument. A second program willthen remove common words you

don't want to index. You can also gothrough the list with a text editor andeliminate words by hand; and to makelife simpler, Tonkin provides you witha file of common words you're unlike-ly ever to want indexed. From thereyou proceed step by step, until youhave an index.

It won't be what I consider a pro-fessional index, with sublevels, andphrases, and suchlike; but it has itsuses. Back when we were doing com-puter books (something I've justabout given up), I'd have been ex-tremely happy with My Index as thestarting point for a full index; it wouldhave saved days of work.

My Index works best with Tonkin'sMyWord! text editor, which itself isabout as much bang for the buck asyou're likely to find in a word-processing program. Like all T.N.T.software, MyWord! and My Index haveridiculously low prices compared tothe competition. If you run CP/M,TRSDOS, or PODOS, you definitely

ought to have the T.N.T. catalog:there's an awful lot of good stuff inthere.

FONTASY

ProSoft has once again improvedtheir already excellent Fontasy desk-top publishing program for PCs. I'mrunning their demo on Big Kat as Iwrite this, and it's impressive. Fontasyhas a whole bunch of fonts, 60 smallpictures like file cabinets and littleshapes; and it works with a variety ofprinters, including the Epsons, HP'sLaserlet and Thinkjet, and most otherstandards.

It does kerning—that is, tucks smallletters in under the wing of largeones—proportional spacing, and allthe other stuff you'd expect. In addi-tion to the 28 fonts that come withFontasy, some 300 more, and 400 pic-tures, are available separately. At$69.95 for the basic program, Fontasyis quite a bargain. If you're thinking

(continued)

Answer: 1040ST™

Question: Which computer buildsin multiple features insteadof hidden costs?

It seems that a lot of our competitors design stripped downcomputers, and then charge extra for every feature and upgradeyou add.

Atari® doesn't do that, because we believe the features andlevel of performance you want should be built in to begin with.

That's why the 1040ST gives you a full Megabyte of memory.While the competition only gives you the chance to spend bigdollars trying to improve their memories.

Another trick they use is to make sure theirinterfaces don't meet industry standards,so you're locked into their system. In con-trast, the ST™ uses standard interfaces acrossthe board, such as the RS-232C port forserial modem communications andthe parallel interface for an industrystandard printer.

Of course, the ST's best built-in is the price, which is an incred-ible $99995!

ATARI, ST, and 1040ST are trademarks of Atari Corp.it 1986 Atari Corp.

AATARI

Inquiry 29

SEPTEMBER 1986 -BYTE 329

CHAOS MANOR

of publishing a newsletter, you coulddo a lot worse.

Reports Plus

One of the people 1 met at SpringCOMDEX was Sue Currier, presidentof Softsync. She'd arranged to meetme in the press lounge at an ungodlyhour in order to tell me about ReportsPlus, a program intended to rivalBorland's Reflex.

She began talking about the pro-gram. It will take SuperCalc3, Lotus1-2-3, R:base, dBASE, or other filesand transform them in interestingways to generate and format reports.It would sell for $99 and is all menu-driven to make it simple to use. Noprogramming required.

It all sounded good, but then camethe fatal question. "Copy-protected?"I asked her, thinking that I would just

ForYourlBM

pC or ComPf,

THE IntelligentGrammar and Style Checker

RightWriter is a new tool to help you produce lean, powerful BUSINESSWRITING. RightWriter uses advanced artificial intelligence technologyto flag errors in GRAMMAR, STYLE, USAGE, and PUNCTUATION.RightWriter is the first office auto-mation package aimed atproducing better writing,not more writing.

• Messages are Inserted

directly into text to pointout possible errors andproblem areas.

• Easy to Use — only onecommand to learn, yourword processor does therest.

• Works with LeadingWord Processors —

including WordStar®,Volkswriter®, PFS:write®,MultiMate®, and others.

• Readability Index —

measures the readinggrade level of the docu-ment using the D.O.D.standard Flesch-Kincaidformula.

Uncommon Word List

— lists misspelled, slang,and uncommon words.

Recommends — neverdecides. RightWriter is awriting aid. The finaldecision is always leftto you.

330 BYTE • SEPTEMBER 1986

Price$95.00

Available from your local dealer or:DECISIONWARE. INC/RightSoft Division2033 Wood St. • Suite 218Sarasota, FL 33577Phone Orders Call: (813) 952-9211Add $4 for shipping and handling.VISA & MASTERCARD accepted30 Day Money Back Guarantee

RightWriter Is a trademark of DedslonVAre, Inc., WordStar is a trademark ofMicroPro International Corporation. MultiMate is a trademark of MultiMateInternational. PFSavrite Is a trademark of Software Publishing Corporation.Volkswriter is a trademark of Ufetree Software, Inc.

Inquiry 103 for End-Users.Inquiry 104 for DEALERS ONLY.

get it on the record.

"Uh, well—we're thinking about it,"she said.

There followed 15 minutes of con-versation. It turned out that the reviewcopy she'd brought to hand me wasindeed copy-protected with one ofthose crazy schemes that let you in-stall it on your hard disk.

"Not me," I said. "You won't get thatstuff within miles of my hard disk."

The upshot was that I refused thecopy and told her to get back to meif they decided to remove the protec-tion scheme. Three weeks went by.Then came a box from Softsync: acopy of Reports Plus and a letter ex-plaining that they'd decided to put theprogram out unprotected. It also ex-plained that the program, called twen-ty/twenty in Britain, had won somecompetitions against Reflex andParadox over there.

What with running around to NavyMicro and AAAS, I haven't had a lotof opportunity to work with ReportsPlus; but what I have seen I like a lot.I've already used it to reformat someexpense reports I put up with Super-Calc3, and it's certainly easy enoughto use. It comes with both demonstra-tion and tutorial disks, and so far Ihaven't found any glitches. I'vebecome somewhat used to Reflex,but I had no trouble adapting to theReports Plus method.

All in all, Reports Plus is a for-midable rival to Reflex.

AT-style Keyboard

A lot of people hate the IBM PC key-board. Certainly I do, and I've said sooften enough.

I have it on good authority that thedesigner of the IBM PC AT's keyboardwas given explicit instructions to"make it so that d**n Pournelle won'ttrash it in his column." They suc-ceeded, too: the PC AT's keyboard ispretty good.

Robert Solomon at Data Desk Inter-national thought so too, and hebrought out an AT-style keyboard forthe PC called the Model 8700. There'salso a version available for AT com-patibles.

It's a good keyboard. Good feel: thekeys have tactile feedback. No mush

{continued)

Ifyouthink

you cant affordaUNIX system.

we ve got a $160 surprise.

Turn your PC into amulti-user system.

Convert your IBM PC-AT(or compatible) into a multi-user/tasking UNIX workstation—at absolutely the bestprice anywhere, any time.Based on the AT&T-certifiedUNIX System V/286, theMICROPORT SYSTEM V/ATis designed for use in vir-tually any computer environ-ment, from office automationto software development.

Dynamic disk buffer allocation providesRAM disk performance for systems withlarge memory configuration.

Runs on virtually all PC-AT clones.

So, how do we do it?

Binary compatiblewith the AT&T 6300Plus UNIX System.

Over 200 utilitiescome standard.

Grep, awk, sort, split, cut, paste, vi anded (and many more) now let you searchand modify files, make use of electronicmail, emulate terminals, calculate elec-tronically, convert data and publish.

SYSTEM V/AT is more than a look-alike.It was derived from AT&T's own UNIXSystem V release 2 iAPX286. It therebycontains standard System V features thecompetitors don't support, such as thepowerful symbolic debugger, sdb, theshell-layering job-control facility and theF77 Fortran compiler, as well as program-ming tools such as ctrace, cflow, and bs.Also standard is File System Hardeningwhich greatly reduces data loss in a powerfailure.

Want some more features?

Console driver providing ANSI terminalinterface for monochrome, CGA,Hercules and EGA cards.

Multiple Virtual consoles allow up tofour virtual windows of operation.

Record and File Locking

Supports the 286's 16 megabyte virtualaddress space and fully utilizes its otheradvance features.

Supports all standard IBM drive typesand most non-standard hard-diskdrives.

Requires only one hard-disk partition,and allows DOS to reside on the samehard disk.

Provides utilities to transfer files to-and-from DOS file systems.

UNIX and DWB are trademarks ol AT&T

18M and IBM PC-AT are trademarks ol IBM CORPORATION.

SYSTEM V/AT is a trademark ol MICROPORT SYSTEMS tNC

Inquiry 237

Super software-developmentenvironment

We've provided everything: Make,yacc, lex, sees, cflow, ctrace plus everystandard System V software-developmenttool. The F77 Fortran compiler. And theAT&T Portable C compiler for the 286. BothC and Fortran compilers generate 287 in-structions directly—for systems not con-taining 287 math coprocessors, a kernel-resident IEEE-compatible 287 emulator isprovided. The large-model code producedby the compiler is among the densest andfastest currently available.

MICROPORT offers SYSTEM V/AT at afraction of the price of the competitorssimply because we build on the genericSystem V/286 product from AT&T. This en-tire utility package from the certifiedrelease has been copied directly toSYSTEM V/AT—without so much as arecompile. Not only does this mean thatMICROPORT can offer SYSTEM V/AT at aremarkable low price, it also guarantees alevel of quality present in few (if any) otherUNIX-system implementations. (And, sinceour staff was part of the group that im-plemented the standard System V/286port for Intel, MICROPORT can offer com-prehensive support for the system, aswell.)

And a dollar change

The price is even better than youthought. Order right away and we'll returnone silver dollar just as rapidly, with yourproduct shipment. (If you'd like a little moretime we'll apply that dollar to the cost of abrochure—which we'll send right awaytoo.)

90 DA Y MONEY BACK GUARANTEE

Andadollarchange.

*v U-i.uui;Ui

To order: Complete the information below. Yourattractively-packaged and fully-documented order will beshipped within two weeks.

MICROPORT SYSTEMS, INC.

4200 Scotts Valley DriveScotts Valley, CA 95066408/438-UNIX or 800/PC2-UNIX (outside CA)

r~

SYSTEM V/AT

O RUNTIME SYSTEM Includes the SYSTEM V/AT operationsystem and over 200 utilities, for two users

QUANT: $160.00

D SOFTWARE DEVELOPMENT SYSTEM The completeSoftware Generation System for 286 development.

QUANT: $169.00

□ TEXT PREPARATION SYSTEM Includes nrofl, Iroff, spelland other programs

QUANT $169.00

G THE COMPLETE SYSTEM Contains all three packagesindicated above.

QUANT

D OPTIONAL three to eight-user upgradeQUANT: _

$439.00$99.00

TFI FPHONF

ADDRESS

CITY

STATFCOUNTRY

ZIP

□ VISA D MASTERCARDCARD NUMBER

□ BANK DRAFT P CHECKFXP DATF

P Send a brochure only and keep me on your mailing list,please.

Subtotal:

(CA residents add 6.5% tax per copy):

Shipping and handling cnarges (In the USA,$14.00, in Canada. $1800: and in Europe. $110 . :

TOTAL DUE:

Inquiry 356

TURBO PROGRAMMERS-

^^

... COTS DEBUGGING FRUSTRATION.

TDefiugPLUS /s a new, interactive symbolic de-bugger that integrates with Turbo Pascal to let you:

• Examine and change variables at runtimeusing symbolic names - including records,pointers, arrays, and local variables;

■ Trace and set breakpoints using procedurenames or source statements;

■ View source code while debugging;

• Use Turbo Pascal editor and DOS DEBUGcommands

TDefiugPLUS also includes a special MAP filegeneration mode lolly compatible with externaldebuggers such as Periscope, Atron, Symdeb, andothers - even on programs written with TurboEXTENDER.

An expanded, supported version ol the acclaimedpublic domain program TDEBUG, the TOefiugPLUSpackage includes one DSDD disk, complete sourcecode, a reference card, and an 80-page printedmanual, 256K ol memory reguired. Simplilydebugging! $60 COMPLETE.

CHAOS MANOR

TURBO EXTENDER™

Turbo EXTENDER provides you the lollowingpowerful tools to break the 64K barrier;* Large Code Model allows programs to use all640K without overlays or chaining, whiteallowing you to convert existing programs withminimal ellort; makes EXE tiles;

■ Make Facility oilers separate compilationeliminating the need lor you to recompileunchanged modules;

■ Large Data Arrays automatically managesdata arrays up to 30 megabytes as well as anyarrays in expanded memory (EMS);

■ Additional Turbo EXTENDER tools includeOverlay Analyst, Disk Cache, Pascal Encryplor,Shell File Generator, and File Browser.

The Turbo EXTENDER package includes two DSDDdisks, complete source code, and a 150-pageprinted manual. Order now! $85 COMPLETE.

TURBOPOWER UTILITIES™

"It you own Turbo Pascal, you should ownTurboPower Programmers Utilities, that's all thereis to //." Bruce Webster, BYTE Magazine

TurboPower Utilities oilers nine powerful pro-grams: Program Structure Analyzer, ExecutionTimer, Execution Profiler, Pretty Printer, CommandRepealer, Pattern Replacer, Difference Finder, FileFinder, and Super Directory.

The TurboPower Utilities package includes threeDSDD disks, relerence card, and manual. $95 withsource code; $55 executable only.

ORDER DIRECT TODAY!

■ MC/VISA Call Toll Free 7 days a week.800-538-8157x830 (US)800-672-3470x830 (CA)

■ Limited Time Oiler! Buy two or moreTurboPower products and save 15%!

■ Satisfaction Guaranteed or your money backwithin 30 days.

For Brochures, Dealer or other Inlormalion,

PO. COD - call or write:

478 W. Hamilton #196Campbell, CA 950081408) 378-3672M-F 9AM-5PM PSJ

lira

The above TurboPower products require Turbo Pascal 3 0(standard. 80B7, or BCD) and PC-DOS 2.X or 3.X, andrun on the IBM PC/XT/AT and compatibles.

at all. It has a Selectric layout. There'sa two-year warranty. To make the dealeven better, it comes with Borland In-ternational's SuperKey keyboard en-hancer bundled in.

This is about as good a keyboarddeal as you're likely to find, providedthat you're willing to put up with hav-ing your numeric keypad double asyour arrow keys through the use ofNum Lock. That, of course, is whatIBM decreed, so Data Desk didn'thave much choice if they wanted tocopy the PC AT keyboard; and ofcourse it does save weight.

Alas, i find it something of a royalpain, and after using the Data Deskkeyboard for a month or so, I wentback to my big Enigma Research key-board. The Enigma does not have asgood a feel as the Data Desk, and ifI get to where I'm writing books ona PCompatible, I'll probably switchback to the Data Desk; but for BIX-ing and game playing and spellingchecking and all the other stuff exceptwriting for hours on end, the Enigmais just one whack of a lot more con-venient. In any event, I have absolute-ly no hesitation in recommending theModel 8700.

Orchids

Last minute department: Orchid Tech-nology keeps coming up with moreand better stuff to keep your PC frombecoming an anvil. Now they have a286 upgrade for your IBM PC XT. Itwon't work on your older PC. Actual-ly, it will, but you'll need to upgradethe power supply; kits for doing thatare advertised all over the place, sothat shouldn't be difficult.

With the Orchid PCturbo 286e, yourXT will run programs around twice asfast as will a normal PC AT, whichmakes it about five times as fast as anormal PC. Orchid also makes theECCELL, a memory board that notonly finds memory errors but correctsthem. (The name is an acronym forerror correction.)

I'll have more about Orchid's newstuff in a later column. We've beenusing the PCturbo 186 board for twoyears now without glitches; I've noreason to believe we won't have asgood an experience with the PCturbo286e as soon as 1 get a new power

supply into Lucy Van Pelt, our (quiteold) IBM PC.

Winding Down

Barry Workman tells me he's sellinglots of copies of FTL Modula forCP/M; and by the time you read this,he expects to have an IBM PC version.Meanwhile, Tony Pietsch says he'llhave WRITE for the PC done verysoon; and another associate is tryingto port WRITE onto the Atari ST. It allsounds good to me.

The game of the month is Time Ban-dit from MichTron Inc. MichTronmakes a lot of software for the AtariST. Time Bandit on the ST is the bestarcade-type computer game I haveever seen, either on a home computeror in an actual arcade. It has some 11dungeons, each with four levels. Ihaven't begun to master the silly game.I haven't quit trying, either. Watch out,Starship Excalibur. here I come! Fullspeed ahead, and damn the WatchTribbles. . .

The book of the month has to bethe report of the Citizen's AdvisoryCouncil on National Space Policy. Ithas to be, because it has taken up justabout every spare moment I have.

The Council consists of some 50aerospace experts and meets ir-regularly at Larry Niven's house. I'mchairman, in part because they figurethey can stick me with writing the finalreport, which indeed got done at 6a.m. on the morning we left for Phil-adelphia and the AAAS meeting.

This year's Council meeting was dif-ferent: long before we had the actualmeeting, we got many of the issuessettled through conferences on BIX.G. Harry Stine, who's collaboratingwith me to turn the Council reportinto a book (America: A Spacefaring Na-tion Again; Baen Books, late 1986), willprobably do an article on how weused BIX before and after themeeting. We learned a lot, includingsome of the strengths and weak-nesses of electronic conferencing.More on that another time; but Iguarantee you we'd not have accom-plished half what we did if it hadn'tbeen for BIX.

The computer book of the monthhas no author: it's Programmers at Work,First Series from Microsoft Press (1986,

332 BYTE • SEPTEMBER 1986

CHAOS MANOR

Items Discussed

Amiga Sidecar F

'rice notlounced

Data Desk International7650 Haskell Ave., Suite A

Reports Plus

Softsync Inc.

$99

am

Commodore Business Machines Inc.

Van Nuys, CA 91406

162 Madison Ave.

1200 Wilson Dr.

(818) 780-1673

New York, NY 10016

West Chester, PA 19380

(212) 685-2080

(215) 431-9100

Model 9000 Keyboard $350

Enigma Research

AT&T PC 6300 Plus .Starts at $47

4534 Vista Del Monte, No. 104

Sayette System 10

$1200

AT&T Technology Systems

Sherman Oaks, CA 91403

Sayette Technology1133 Mt, Tead Blvd.Rochester, NY 14606

Computer Systems Center4513 Western Ave.

(818) 784-0343

Lisle. 1L 60532

Modula-2 Compiler

(716) 458-0177

(800) 247-1212

(Atari ST) $79.95

Chinese Character

$495

developer's version $149.95

Modula-2 Compiler (Amiga) $89.95

The Halley Project . . .

$44.95

Mindscape

Generator

developer's version $149.95

3444 Dundee Rd.

Eastern Computer600 Lynnhaven ParkwayVirginia Beach, VA 234 52

TDI Software10410 Markison Rd.Dallas, TX 75238

Northbrook, IL 60062(800) 221-9884

(804) 340-2496

(214) 340-4942

Deluxe Paint

$99.95

Music Studio $59.95

The Word Plus

$150

Oasis Systems2765 Reynard Ave.

Electronic Arts

Hacker $44.95

2755 Campus Dr.

Artivi^ion

San Diego, CA 92103

San Mateo, CA 94403(415) 571-7171

X\\_LI V I .7> 1 ■ .' 1 1

P.O. Box 7287

Mountain View, CA 94039

(619) 453-5711

Fontasy Version 2

ProSoft

7298 Bellaire Ave, Box 560

$69.95

(415) 960-0410

My Index .... Price not announced

MyWord! $35

TNT. Software34069 Hainesville Rd.

Time Bandit

$39.95

MichTron Inc.

576 South Telegraph

North Hollywood, CA 91603(818) 765-4444

Pontiac, Ml 48053(313) 334-5700

Maps and Legends

$34.95

Round Lake, 1L 60073

Antic Software524 Second St.

(312) 223-8595

Upgrade Kit

$199.95

Clock/Calendar Kit . . .

$49.95

San Francisco, CA 94107

PCturbo 286E $1195

Mind Mine Computer Center

(415) 957-0886

ECCELL (IBM PC AT) $595 to $1660Orchid Technology

132 56 Northeast 20th St.,Bellevue, WA 98055

Suite 4

MaxiPlan

$150

47790 Westinghouse Dr.

(206) 641-6138

Maxisoft

Fremont, CA 94539

2817 Sloat Rd.

(415) 490-8586

Pebble Beach, CA 93953

Zoom racks

(408) 625-4104

Printer Optimizer $369

Applied Creative Technology

for Atari ST or IBM PCQuickview Systems

. . .$79.95

Model 8700 Keyboard

2156 West Northwest Highway

146 Main St., Suite 404

for PC compatibles

$99.95

Dallas, TX 75220

Los Altos, CA 94022

for PCjr

$119.95

(214) 358-4800

(415) 965-0327

$14.95), and it consists of interviewswith a whole bunch of hackers, includ-ing Dan Bricklin (VisiCalc), Andy Herz-field (Macintosh OS), Bill Gates (Micro-soft BASIC), Wayne Ratliff (Vulcan,which became dBASE II), and manyothers. Quite readable and providesgood insight into the varieties of

hacker mentality.

I am now out of space, which is justas well because I'm also out of time:it's 2 a.m., and this has to be at BYTEby dawn. (I'll use BIX to send it.) Ofcourse, it first must go through thespelling checker.

As I said, it's been quite a day.B

jerry Poumelle welcomes readers' commentsand opinions. Send a self-addressed, stampedenvelope to jerry Poumelle, do BYTE, OnePhoenix Mill Lane, Peterborough, NH03458. Please put your address on the let-ter as well as on the envelope. Due to the highvolume of letters, jerry cannot guarantee a per-sonal reply.

SEPTEMBER 1986 -BYTE 333

A MEGABYTE FOR DOS!

MicroWay is the worlds leading retail-er of 8087s and high performance PCupgrades. We stock a complete selec-tion of 8087s that run from 5 to 12MHz. All of our coprocessors areshipped with a diagnostic disk and thebest warranty in the business - oneyear! We also offer daughterboards forsocketless computers (NEC PC) and287Turbo which increases the clockspeed of the 80287 from 4 to 10 MHz.Our NUMBER SMASHER/ECM™ runsat 12 MHz with a megabyte of RAMand achieves a throughput of .1 mega-flops with 87BASIC/INLINE, Intel For-

tran, or Microsoft Fortraa Software re-viewers consistently cite MicroWaysoftware and 8087 expertise as thebest in the industry! Our customers fre-quently write to thank us for recom-mending the correct software andhardware to meet their specific needsThey also thank us for our same-dayshipping! In addition to our own prod-ucts which support the 8087 and80287, we stock the largest supply ofspecialized software available Formore information call us at

617-746-7341

NUMBER SMASHER/ECM"

THE FASTEST ACCELERATOR

CARD AVAILABLE

gives you 12 MHz speed in two modes704K or one megabyte of "ExtendedConventional Memory." MEGASWITCHMMU and MegaDOS software make itpossible to run DOS applications withupto 1015K using PC compilers, Auto-CAD and Lotus 1-2-3. Does not re-quire EMS software. Totally compat-ible. Priced from $599 with 512K to$1199 for complete package Option-al 8087-12... $295

iM

crr-.l, 1 tflwn B.eld

: I

«M

^Jj. _}.-**■„.,,^Rrf^kjiiirimutual

Ul

vlVF

1 SPEED UP YOUR Al

ORATCOMPATIBL

1 WITH 287TURBO" 1

r

EOMHz

MicroWay

8087St

0 0 0

rt

A2D-160 MicroWay's Data Acquisition Boardperforms 160,00012 bit Analog to Digital conver-sions per second! Includes software drivers Thefastest 12 bit A to D board available. For the IBMPC XT and compatibles $1295

87SFL™ MicroWay's Scientific Function Li-brary contains 170 scientific and engineering func-tions Callable from most 8087 compatible com-pilers ... First Language $250; Additional $100.

MATRIXPAK™ manages a MEGABYTE!

Written in assembly language, our runtime pack-age accurately manipulatesTarge matrices at veryfast speeds Includes matrix inversion and thesolution of simultaneous linear equations Call-able from RM or MS Fortran, MS Assembler, or87BASIC/INLINE each $99

87FFT™ Written in assembly language, per-forms Forward and Inverse FFTs on real and com-plex arrays which occupy up to 512 Kbytes ofRAM. Also does convolutions, auto correlations,hamming complex vector multiplication, and com-plex to radial conversions. Callable from most8087 compatible compilers $200

87FFT-2™ performs two-dimensional FFTs.Ideal for image processing Requires 87FFT $100

FASTBREAK™ employs the 8087 to in-crease the speed of Lotus 1 -2-3" Version 1A or1 A* by up to 36:1 $79

87 Verify'" For users who have to be absolutelysure of their results! This background task period-ically performs an 8087 accuracy and stresstest $49

Microsoft Fortran V 3.31 $209

IBM Professional Fortran $565

Ryan-McFariand Fortran V 2.0 $399

NAG Fortran Library $300

Grafmatic for Fortran or Pascal $125

MultiHalo Graphics (1 language) $189

LABTECH NOTEBOOK $745

UnkelScope $549

INTEL ABOVE BOARD CALL

JRAM, AST, MAYNARD CALL

MicroWay

P.O. Box 79Kingston. Mass02364 USA(617) 746-7341

For the IBM PC, PC XT, PC AT and Compatibles.

MegaPage™ The only Intel-Lotus EMS boardwhich comes with two megabytes of cool-runninglow power drain CMOS RAM installed IncludesRAM disk, print spooler, disk cache, and EMS driv-ers. For the IBM PC, XT& compatibles.... $549

MegaPageAT/ECC" ems card forthePC

AT and compatibles includes Error Correction Cir-cuitry. With ECC, 11 RAM chipscover256Ksotheuser never encounters RAM errors With 1 megabyteCMOS $799; with 3 megabytes CMOS $1295.Optional serial/parallel daughterboard $95.

DFixer Our disk utility which thoroughlychecks PC or AT hard disks for bad sectors andupdates the MS DOS file allocation table accord-ingly. Solves the AT hard disk problem! ... $149

DOptimizer" Optimizes the way your harddisk or floppy stores its files Speeds up accessesby recombining fragmented filea $49

DCache" Our disk caching software speedsup your I/O by storing repetitively used tracks inmemory. The amount of memory used can beselected in 64 Kbyte banks $49

87MACRO/DEBUG" Contains all thepieces needed for writing 8087/80287 assemblycode & MicroWay's 87DEBUG debugger. $199

OBJ -'ASM™ A multipass object module trans-lator and disassembler. Produces assembly lan-guage listings which include public symbols, ex-ternal symbols and labels commented with crossreferences Ideal for patching object modules forwhich source is not available $200

87BASIC™ includes patches to the IBM BASICor MS Quick BASIC Compiler for USER TRANS-PARENT 8087 support Provides super fast per-formance for all numeric operations including trig-onometries, transcendentals, addition, subtrac-tion, multiplication, and division each $150

87 BASIC/1NLI NE™ converts the output ofthe IBM BASIC Compiler into optimized 8087inline code which executes up to seven times fast-er than 87 BASIC. Supports separately compiledinline subroutines which are located in their ownsegments and can contain up to 64 Kbytes ofcode This allows programs greater than 128K!Requires the IBM BASIC Compiler Version 1 anda Macro Assembler. Includes 87BASIC ... $200

MICROWAY UDI runs RTOS or RMX corrvpilers under DOS $300

8087 UPGRADES

All MicroWay 8087s include a one year warranty,complete MicroWay Test Program and accurateinstallation instructions

8087 5 MHz $109

For the IBM PC, XT and compatibles

8087-2 8 MHz $149

For Wang, AT&T, DeskPro, NEC, Leading Edge.

80287-3 5 MHz $179

For the IBM PC AT and 286 compatibles

80287-6 6 MHz $229

For 8 MHz AT compatibles

80287-8 8 MHz $295

For the 8 MHz 80286 accelerator cards

NECV20, V30 $16, $30

64K RAM Set 150ns. $10

256K RAM Set 150ns $29

256KRAMSet120ns $39

128KRAMSetPCAT $49

287Turbo~ 10 MHz If you own an AT,

Deskpro 286 or AT compatible, this is the card youneed to get reasonable numeric performance Itplugs into your 80287 socket and includes a spe-cially driven 10 MHz 80287. The card comes inthree configurations The IBM AT version includesa hardware RESET button $450

287Turbo8 MHz $369

87/88TU rbO™ is a stubby card which includesa clock calendar and a speed controller whichchanges the speed of your motherboard from 4.77to 7.4 MHz Its use requires your PC to have asocketed 8284. Typical speed increase is 1.6 to2.0. The card overcomes slow hardware by slow-ing up only when such devices are accessed and

running at full speed otherwise $149

Optional 8087-2 $149

286TurboCache™ This new MicroWay ac-celerator uses 8 K of cache memory and 80286/80287 processors to provide an average speedincrease of 3:1 for most programs Call torspecifications and benchmarks $595

Call for our complete catalog ofsoftware which supports the 8087.

In London, please phone 223-7762

334 BYTE • SEPTEMBER 1986

Inquiry 242

ACCORDIN

^

WEBSTER

Two Fine Products

by Bruce Webster

It's now mid-May as I writethis; wonder of wonders, I'mgoing to get this column inon time. It should make thefolks back at Peterboroughhappy; I know it's a relief forme. Maybe I can make ahabit of it.

There have been a few columns in which I haven't pickeda product of the month; this is the first time I've pickedtwo: Turbo Prolog (from Borland International) and Light-speedC (from Think Technologies). Both deserve it, andI considered sliding one back a month to avoid "diluting"the honor. But I felt that both also deserved timelycoverage (or at least as timely as anything with a three-month lead time can be), so here they are.

Standard Disclaimer

Since I am about to say some nice things about a prod-uct from Borland International, I thought I would onceagain make it clear that I have had business dealings withBorland in the past. I wrote most of Turbo Tutor back in1984, and I contributed to the rewrite of Turbo Tutor earlylast summer. In both cases. I was paid a lump sum for mywork in lieu of any royalties, so there was and is no on-going financial connection with Borland. If you feel thatsomehow invalidates or makes suspect what I've writtenbelow, fine. Frankly, I feel a little silly even mentioning this.However, over the last several months I've had people ac-cuse me of a suspicious bias for or against (a) Apple, (b)Atari, (c) Commodore, (d) all of the above, so I thoughtI'd make everything clear right from the start. And forthose of you who are curious, the answer is (e) none ofthe above.

Product of the Month: Turbo Prolog

When I first got my hands on Turbo Pascal a few yearsback, it excited me as few software products had. Withall its quirks, bugs, and rough edges, it represented a realbreakthrough in computer software and set Borland onthe path to becoming a major power in the microcom-puter software industry. Borland has come out with manyproducts since then—perhaps too many—and none haveexcited or impressed me as much as Tlirbo Pascal did,though most have been successful. And even though Ihave copies of just about everything Borland has put out,Turbo Pascal has been the only product I've used for anylength of time.Well, I can now say "Borland's done it again!" and really

Turbo Prolog

from Borland and LightspeedC

from Think

mean it. As I'm sure most ofyou are aware (wouldn't youlike to get just a percentagepoint or two of Borland's adbudget?), Borland has re-leased Turbo Prolog, a Prologdevelopment system for theIBM PC and compatibles.[Editor's note: See a review of Turbo Prolog on page 293.| It re-quires 384K bytes of memory, can actually be run on aone-floppy-drive system (and works nicely on a two-drivesystem), and runs under MS-DOS/PC-DOS 2.0 or later. Itis an actual compiler, capable of producing stand-aloneapplications (.EXE files). It comes with two disks: one con-tains the actual Prolog system; the other has more than60 example programs. Much of the manual, which is over200 pages, is dedicated to a Prolog tutorial. Turbo Prologis not copy-protected and sells for the amazing price of$100 (less a nickel).

What's so interesting about Prolog in the first place?Well, it's a nonprocedural language that allows (requires)you to specify a set of rules, data, and relationships, thentries to find answers to goals that you give it. It is so dif-ferent from procedural languages (Pascal, C FORTRAN,BASIC, etc.) that it takes a radical shift in thinking to moveover to it. 1 freely admit that I haven't made the shift yet,even though I've worked through the first six chapters,following the tutorial and keying in all example programs.Of course, the fact that I was using C on the Macintoshand FORTH on the Amiga during the same time periodmight have had something to do with the cognitivedissonance I've had to deal with.

Listing 1 shows a simple Turbo Prolog program. The do-mains section defines any data types specific to the pro-gram itself. The predicates section defines any relation-ships between domains. The clauses section gives actualimplementations of predicates. These can be facts, like thevarious assertions of likes, or they can be rules, like thedefinition of the predicate friends.

For example, given the program in listing 1, you couldspecify a few different goals. If you asked for the goallikes(X,reading), the program will find names X such thatlikes(X,reading) is true; in this case, the values returnedfor X are eva and george. You could ask for the goallikes(eva.X), which would return the solutions reading andbiking. For a different approach, you could ask likes

[continued)Bruce Webster, a consulting editor for BYTE, is reached do BYTE,P.O. Box 1910, Orem, UT 84057, or on BIX as bwebster.

SEPTEMBER 1986 -BYTE 335

Inquiry 376

ACTOR

debuts in one

month.

There's a better way to program comingin October.

It's like an advanced research system.Instead of data structures and procedures.ituses active objects. But it produces finished,useful programs. Not experiments.

It's easy to optimize,and it has a new way to re-claim unused memory. Asa result, it runs so fast onmicrocomputers, it's goodeven for real-time control.

And it's built aroundMicrosoft„iWindows, whichhelp when you write yourprograms. And when otherpeople use them.

It's called ACTOR™and it will perform likenothing you've ever seen. To find out moreabout it, just call.

ThecWhitewaterGroup@

906 University Place, Evanston, IL 60201(312) 491-2370

ACCORDING TO WEBSTER

rr

$495

Little Board™/186.„.

High Performance, Low Cost PC-DOS Engine

Boots IBM PC-DOS(not included)

• Three times the COMPUTING POWER of a PC

• Data and File Compatible with IBM PC, runs"MS-DOS 3eneric" prosrams

• 8 MHz 80186 CPU, DMA, Counter/Timers,512K RAM^ero wait states,16-128KEPROM

• Mini/Micro Floppy Controller (1-4 Drives,Sin9te/Double Density, 1-2 sided,40/80 track)

• 2 RS232C Serial Ports (50-38, 400 baud),1 Centronics Printer Port

• Only 5.75 x 7.75 inches, mounts directly toa 5-1/4" disk drive

• Power Requirement: +5VDC at 1.25A;+12VDC at ,05A; On board -12V converter

\

• SCSI/PLUS'" multi-master I/O expansion bus

• Software Included:

• PC-DOS compatible ROM-BIOS bootsDOS 2.x and 3.x

• Hard Disk supportNEW OPTIONS AVAILABLE

• EXPANSION/IBS with:

• 512K additional RAM

• 2 Sync/Async RS232/422 serial ports

• Battery backed Real Time Clock

• 8087 Math Co-Processor

• Buffered I/O Bus

• SCSI/IOP for STD BUS

• PROTO/188: prototyping adapter

• CONCURRENT DOS: Multitasking/Multi-user (2/4) Operating System

IBM", IBM Corp.; 80186*, Intel, Corp.COMPUTERS. INCORPORATED

67 EastEvelyn Ave.. Mountain View, CA94041 . (415)962-0230. TELEX 4940302 ^

Listing 1: A simple TUrbo Prolog program.

domains

person, hobby = symbolpredicates

I ikes(person,hobby)

fr i ends(person.person)cIauses

I ikes(gregg,gerbi Is).

Iikesfeva.biking).

Iikes(george,reading).

Iikesfeva,reading).

Iikes(ezra,dr iving).

Iikes(phiI,flying).

fr iendsI ikes

(X,Y) if(X.Z) an

d Iikes(Y.Z) and X <> Y.

(phil.flying), which would return the solution TRUE; like-wise, the goal Iikes(gregg,driving) would return FALSE.Similar goals can be specified for the predicate friends.The goal friends(eva,X) will return the solution george.

When you boot up TUrbo Prolog, you first notice the userinterface. It's a multiwindow, keyboard-controlled, menu-driven system that works smoothly and well. Your environ-ment consists of five windows. The top one, the menu bar,is fixed and unchangeable. It lists your main commands-Run, Compile, Edit, Options, Files, Setup, and Quit—whichyou can execute by typing the first letter of each commandor by using arrow-key selection. Three of the commands(Options, Files, and Setup) have pop-down menus that letyou select options by the first letter or by arrow com-mands. Some commands (like Load File) will open upother windows (like when you need to enter a filename).You can always travel back up the chain of windows bypressing the Escape key.

All the action takes place in the other four windows. Thewindow names—editor, dialog, messages, and trace—mayclue you as to their function. You actually enter and modifyyour Prolog programs in the editor window. You interactwith your running Prolog program in the dialog window;that is, all program input and output take place here. Youcan see which clauses are being invoked in the messageswindow, while the trace window gives you a more detailedstep-by-step evaluation of your program's execution if youhave the trace function enabled. You can resize and re-locate all four windows using the arrow keys, then saveyour custom setup.

The editor window accepts both a WordStar subset ofcommands (Control-X, Control-S, etc.) and commandsfrom the function keys and arrow keys. The window auto-matically does horizontal and vertical scrolling as neededwhile you type or move through your text. A Help key (Fl)brings up a pop-up window from which you can get a de-scription of the basic set of editing commands.

When you have entered your program, you hit theEscape key to get out of the editor window, then you type"C" (for Compile) or "R" (for Run). In both cases, the pro-

(tontinued)

336 BYTE • SEPTEMBER 1986

Inquiry 22

The BCC52 packsan entire developmentand acquisition system

into a single dose.

Board's actual size: 4V?" x 6h

Indications for use:

When a single controllerboard or a complete devel-opment and acquisitionsystem is needed.

Active Ingredients:

Intel 8052 8-bit processor,8K floating point ROM resi-dent control BASIC, 3 on-board parallel I/O ports,Serial terminal port (auto baud rate select), Serialprinter port, Socketed for 48K bytes RAM andEPROM, 2 interrupts, Expandable to 64K byteseach of data and program memory, On-boardintelligent 2764/27128 EPROM programmer.

Dosage: Take either a single board or an entiresystem to provide control relief.

CAUTION:

This product has proven to be habit forming.

Now available without prescriptionfrom Micromint for only

)*

$152

'100 quantity OEM price

CALL TOLL FREE

1-800-635-3355

In Connecticut call: 1-871-6170

MlCrOmint, InC. 25 Terrace Drive, Vernon, Connecticut 06066 TELEX: 643331

m

AT LAST: Professional

Typesetting Capability

For PC Users

With PC T^X™ - - the best-selling fullimplementation of Professor Don Knuth'srevolutionary typesetting program TjrjX.

FINEST Typeset Quality Printing From:

dot matrix laser phototypesetter

oo ,

f ana2i

aira2t

\a

ml

A

J

r.

dx

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:

PCT£X (not copy protected) includes the following:

• Our specially written PCT^X Manual, which en-ables you to start using TjtX right away.

• Custom "macro packages" that provide formatsfor letters, manuals, technical documents, etc.

• The IATjtX document preparation system, a full-featured macro package for preparing articles,books, reports, etc., and IAT^X User's Manual.

• ^S-TgX, developed by the Amer. Math. Societyfor professional mathematical typesetting.

Site licenses, volume discounts, and interfaces toPC Paintbrush, PC Palette, FancyFont and Fontrixare also available.

PRICED FROM ONLY $249.00!

(Printer drivers and interfaces additional.)

Laser printer,fonts & softwarefrom $2995.00

For IBM PC/XT, AT or compatible, DOS 2.0 or higher, and512K RAM. Hard disk required for printer drivers and fonts.*HP LaserJet and Corona require additional interface boards.

For more information call or write:

Personal T^K, Inc.

20 Sunnyside, Suite H, Mill Valley, CA 94941 (415) 388-8853

This ad, with space for the photograph, produced by PC TjjX.

Typeset on the Epson FX80, the Corona LP-300 laser printer,

and the Autologic APS-5 phototypesetter.

TeX is a trademark of the American Mathematical Society. Manufac-turers' product names are trademarks of individual manufacturers.

ACCORDING TO WEBSTER

gram is then compiled; in the latter case, it is also ex-ecuted. If an error is found during compilation, the editorwindow becomes active, the cursor is placed at the of-fending location, and an error message is displayed acrossthe bottom of the window. The error message vanishesas soon as you hit any key; unfortunately, the messageis often wider than the editor window, and any attemptto scroll the text over to make the message visible resultsin the message's departure.

When the program compiles correctly and is executed,control passes to the dialog window. Any program out-put shows up here; likewise, any input takes place in thiswindow. If you have defined a goal (or goals) within yourprogram, running it initiates an attempt to solve thosegoals. If you have no defined goal (as is the case with theprogram in listing 1), the program asks you for one; youcan then type in an appropriate goal, for instance,likes(phil.X). If you make an error in the goal, the cursoris positioned at the offending spot and an error messageappears at the bottom, much like compiler errors in theeditor window. And like the editor window, the dialog win-dow is often too narrow for the error message to bereadable, and the message disappears as soon as you typeanything.

One of the nicest features of Turbo Prolog is that youcan bounce directly between the dialog and editor win-dows. Pressing F9 will take you from the dialog windowinto the editor; FI0 will take you out of the editor win-dow, incrementally compile any changes made, and (if suc-cessful) take you to the dialog window. Incremental com-pilation is a key to the speed of the Turbo Prolog inter-face. In effect, Turbo Prolog remembers most of what ithas compiled. When you change a clause, it usually hasto recompile only that one clause. This makes for quickdevelopment, allowing you to try out different ideas andadd different rules.

Some strong points of Turbo Prolog are the trace anddebug features, which let you single-step through your pro-grams, seeing just what clause is being evaluated at anymoment and what values your program is using at thatpoint. You can even turn tracing off and on again withinyour program, so that you don't have to step through sec-tions that you've already debugged.

Another asset is the long list of predefined predicatesthat not only make for a full Prolog implementation butalso give you easy access to screen I/O, graphics, systemcalls, arithmetic functions, and string handling. Further-more, Turbo Prolog has the capability of calling externalpredicates written in assembly language, C, or Pascal. Notethat you can't call routines written in version 3.0 of TurboPascal; however, version 4.0 (due out sometime in thefuture) will produce linkable code files that can be called.

The manual is generally well written, more so than manyof the Borland documents. The style is clear and readable,and it is well organized. I have only two complaints. First,more examples would have helped, especially in the earlychapters. Prolog is such a different language from the onesI and many other programmers have used, that it wouldhelp a lot to see the best approaches to different problems

338 BYTE • SEPTEMBER 1986

Inquiry 271

ACCORDING TO WEBSTER

NEW!

(like loops). Also, the exercises given in the book are prob-ably easy for a Prolog programmer with any experience,but they can prove to be tough for someone (like me)who's just learning Prolog and has no good idea of whereto start.

I had done a little Prolog programming before receiv-ing Turbo Prolog, using Chalcedony Software's PROLOG-V Plus interpreter. But I'm not qualified to judge how goodthe implementation is, so 1 showed it to two instructors—Dr. Dan Olsen and Gary Stokes—at Brigham Young Univer-sity who have worked with Prolog. They were impressedwith the implementation itself, especially its speed andcompleteness, and also with the development environ-ment. They said it was superior to the Prolog systemsthey've been using (including an implementation on aVAX-11/780 minicomputer), and they are looking at switch-ing to Turbo Prolog for class use. Stokes also took a pro-gram that he was unable to debug on the VAX and gotit quickly running using the trace features of Turbo Prolog.

Their main complaint about Turbo Prolog involves thelimitations on having a program expand its own clauses(or rules). You can add facts, like the assertionlikes(eva,reading); you cannot, however, define new rulesor expand on old ones. This, I suspect, stems from thecompiled nature of Turbo Prolog programs. An interpreterhas an easier time accepting new rules, since it is main-taining the source code somewhere in memory, to whichthe program can add new definitions. For stand-aloneTurbo Prolog programs to do the same, they would haveto somehow include the compiler (or a subset thereof)in the code file, which would greatly increase memory anddisk requirements.

The biggest question about Turbo Prolog is how muchdemand there is for it out there. My first inclination is thatthere wouldn't be much, especially since the folks mostlikely to buy it—do-it-yourself programmers—are going tobe firmly entrenched in procedural thinking and will havedifficulty switching over to the appropriate mind-set. Onthe other hand, the demand for Pascal compilers wasgrossly underestimated at the time Turbo Pascal hit themarket or, more accurately, the positive qualities of TurboPascal radically enlarged the market. The same may betrue of Turbo Prolog; given its performance, quality, andlow price, it may well create a much larger market thanmight otherwise exist.

The other big question in my mind concerns the prob-lems that Turbo Prolog is best suited to solve. I don't havea good feeling for the type of problems that Turbo Pro-log addresses and the ways in which it might solve thembetter than, say, Turbo Pascal. This is probably due moreto my own ignorance (which, as always, I'm trying toeliminate) than anything, but it will remain a question untilI know enough to answer it myself.

Even with those questions. Turbo Prolog may be as sig-nificant a leap in software design as Turbo Pascal repre-sented three years ago. I am not sure that the height ofthat leap is obvious, for a number of reasons. First, thereare few Prolog programmers in the microcomputer world,

(continued)

for Turbo

Pascal Programmers

turboMAGIC turns your ideas into state-of-the-art programs.Your productivity increased, or your money back!Let your imagination run wild! It's easy with turboMAGIC. Input forms.Report forms. Help windows. Pop-up menus. Pull-down menu systems.And more! turboMAGIC will turn 15 minutes of your time into code thatwould take you hundreds of hours to write. Whether you're a professionalor just a beginner, you need turboMAGIC.

It's POWERFUL!

It's FLEXIBLE!

It's FAST!

It's MAGIC!

fVMG/Cscreens. A revolutionary breakthrough! Screens updateautomatically to show relationships among fields. Dependentvalues change and unneeded fields disappear before your eyes.You get easy-to-read screens.

MAGICwindows. For truly flashy programs! Pop-up windows at thetouch of a key. And when necessary you'll scroll within framedwindows for help or data entry.

MAGIChelp. Everywherel Get automatic bottom-line help and ahelp window for each field of input forms. And you'll have ahelp window for each option of a menu. You have more than200K of context-sensitive help in turboMAGIC!

MAGICkeylines. A class act! At the touch of a key the bottom linechanges to remind you of your full, customized function-keysetup.

All this magic and more is in turbofVMG/C Put it in your programstool turboMAGIC makes it easy. Here's how:

Full-Featured Editor - WordStar-like. Absolutely the best!

Arrows • repeat • color • box (automatic turns/intersections)

Block • reformat • color • move • copy • read • write

Centers • current page • line • text in a box

Colors • menu selection • all systems supported • no flicker

Graphics • menu selection of extended ascii characters

Printing • customized graphics character translation • fonts

Flexibility - never before seen in a code generator!

• Up to 66 lines in a form.

• Full WordStar-like editing for input forms.

• Your form image stored either in a typed constant or in a picturefile. turboMAGIC can even combine several picture files into one.

• Field types galore: numeric (bounds checking) •date (validitycheck) • character (you can specify the legal input set) • string (fillcharacter, case conversion, justification, and a picture facility thatlets you add your own format elements) • boolean • male/female •yes/no • dollar amount • social security • telephone • zip code •numeric with automatic increment »menu (your options appear atthe tap of a key). You want more types? turboMAGIC lets you addyour own.

Free Bonus! We'll give you an impressive screen/printer installer for theprograms you create with turboMAGIC. And we'll also send you somevaluable demo programs FREE!

Wouldn't you like some magic? Order turboMAGIC today. Only $99.00.You have nothing to lose with our 30-day full money-back guarantee.CALL NOW! 1-600-225-3165 (Outside Alabama, orders only) or 205-342-7026 (VISA & MC welcome, no PO, no COD)

Requires: Turbo Pascal 3.0 and an IBM PC/XT/AT or compatible 256k RAM minimum

Not copy protected.

<&

Sophisticated Software Inc.

6586 Old Shell Road

Mobile, AL 36608 (205) 342-7026

Trademarks:

Turbo Pascal — Borland International

WordStar — MicroPro International

Inquiry 324

SEPTEMBER 1986 -BYTE 339

Inquiry 307

ACCORDING TO WEBSTER

THE AFFORDABLE

BAR CODE READER

THE BCR-1000 BAR CODE READER DELIVERSUNPARALLELED PERFORMANCE AT A BREAKTHROUGH PRICE

IBM-PC/XT/AT andCompatiblesCompatible WithAll Keyboard StylesStainless Steel WandReads All Major BarCode SymbologiesNetwork CompatibilityAuto-DiscriminatesBetween CodesNon-ContactScanner Option

Extremely High FirstRead RateUser-Friendly Menu-Driven Support SoftwareSuperb ComponentReliability

Scans Over 160 10-DigitCodes in One MinuteFive Foot Extension CordFor Wand

Attractive Quantity PricingTwo-Year Service Warranty

#

SEAGULL SCIENTIFIC SYSTEMS

601 University Avenue, Suite 150

Sacramento, CA 95825

(916) 485-7320

DeSmet C

now with 32-Bit Pointer OptionC88 still $109

The editors' choice for fast compilation and execution. Thepricc/perTormance winner in all major C benchmarks since1983. Includes Compiler, Assembler, Binder, Librarian,Execution Profiler and Full Screen Editor. Supports both diskand memory resident Overlays. Contains both 8087 andSoftware floating point support. Full STDIO library.

Large Case Option

.$50

Makes a great C Compiler even better. Adds 32-Bit Pointers toC88 so you can utilize all of your PC. Groups scalar and staticdata for fast access. Supports the D88 debugger.

D88

.$50

Gain most of the benefits of an inteipreter while losing none ofthe run-time speed of the C88 compiler. Display C source andvariable contents during execution. Set breakpoints by functionname or line number. Examine and set variables by name usingC expressions.

order direct from:

C Ware Corporation

505 W. Olive, Suite 767, Sunnyvale, CA 94086 U.S.A.

(408) 720-9696 — Telex: 358185

We accept VISA, MasterCard & American Express

at least compared to the number of Pascal programmerswho were around when Turbo Pascal came out, so therearen't nearly as many people who can appreciate whatBorland has done. Second, Turbo Pascal has spoiled us,both with respect to what we generally expect from com-pilers and what we specifically expect from Borland. Third,Prolog is such a different language from what most of usgrunt-work programmers are using that it's hard to com-pare its capabilities to those of the languages (C, Pascal,BASIC, etc.) we've been using. I suspect it will be a fewyears before we can evaluate just what Borland has re-leased here: a curiosity or a milestone.

My recommendation: If you're at all interested in arti-ficial intelligence, databases, expert systems, or new waysof thinking about programming, by all means plunk downyour $100 and buy a copy of Turbo Prolog. I plan to keepusing it.

Product of the Month: LightspeedC

I mentioned LightspeedC in my column last month, andit certainly deserves more coverage. For those of you un-familiar with it, LightspeedC is a C compiler—or, more ac-curately, a C development environment—for the Macin-tosh. It produces native 68000 code and stand-alone ap-plications, including desk accessories. It requires 5I2Kbytes of memory and 800K bytes of storage (RAM disk,floppy disk, hard disk, or any combination thereof). Themanual claims that you could get by with a single 400K-byte disk drive, but save yourself a lot of grief and makesure you have at least 800K bytes (two single-sided flop-pies, one double-sided floppy, etc.). It comes with threesingle-sided disks: one has the actual system, one has ex-amples, and one has utilities and libraries. As for themanual, it's about 400 pages long, is large and readable,and can occasionally be convinced to stay open, thoughit helps to hold it down with other books, disk drives, rocks,etc. The product is not copy-protected and sells for thereasonable price of $175.

In LightspeedC, the basic development unit is called theproject. A given project, represented on the desktop bya LightspeedC icon, is a collection of C source files, ob-ject code libraries, and other projects. You can add filesto a project, remove them from the project, and groupthem into segments. (Before you ask, no, you can't adda project to itself. When you ask to add files to a project,the file-selection box is smart enough to screen out thatproject as well as all files already added to the project.)You can also set the project to one of four types: applica-tion (the default), desk accessory, device driver, and coderesource. By using the project approach, LightspeedC per-forms a lot of bookkeeping and other project managementfor you, eliminating the tedium of tracking lots of differentfiles.

When you start up LightspeedC, either directly or bydouble-clicking on a project icon, you come up in a stan-dard Mac environment: desktop, menus (seven in all), anda window listing the files that comprise the current proj-ect. You can then double-click on any of the source file-names and go into the editor to make additions and

340 BYTE • SEPTEMBER 1986

Inquiry 304

ACCORDING TO WEBSTER

changes. If you're creating a new source file for your proj-ect, you can open up a new (untitled) file, edit it, save itout under some name, then add that file to the project.The editor itself is a simple, clean, Mac-style editor: nottoo many features, but I haven't found any bugs yet, either.1 started opening up files for editing to see how many Icould have open at the same time. Once I got 12 open,1 started moving and resizing windows, then I closed themall. No problems. Also, the editor is not a separate "mode"from the compiler and linker; you can have editing win-dows open at all times.

So far, so good, but nothing terribly spectacular or in-novative. That comes when you decide to compile andrun your program. The first time through, LightspeedCcompiles each of the source code modules. The compileris fast, especially if you're running off a hard disk or a RAMdisk. On my system (512K Mac, old ROMs, Mac Bottom 20-megabyte hard disk), it took just 40 seconds to compilesome 3000 lines in four separate source code files. Thisincluded the time to open and close each file and to savethe object code out to disk.

If an error is encountered during compilation, that fileis brought up in an editing window (if it's not alreadythere), the cursor is positioned at the start of the line withthe error in it, and a window is brought up at the top ofthe screen describing the bug. You must acknowledge theerror by clicking in that window, and you can then cor-rect the error and restart the compilation. The errormessages are sometimes maddeningly vague ("Syntaxerror" seems to be a favorite catchall); on the other hand,I've always managed to figure out just what the error is,and I'm still a relative neophyte when it comes to C.

LightspeedC starts to show its strengths when you haveto recompile your program. It knows which files you havemodified and which you haven't and recompiles accord-ingly. But wait! It's even smarter than that. If you edit afile not listed in the project window—like an ".h" includefile—it will recompile only the source files that include thatfile. And if you edit a file not used by the project, noneof the source files are recompiled. Someone—I assumeit was Michael Kahl, principal author of LightspeedC—didan outstanding job of making the recompilation algorithmvery intelligent. At the same time, you are not locked inby that algorithm. At any time, you can force a recom-pilation of any or all source code files. You can also forceit to reload any library files from the disk. It then performsan incredibly fast link, based, I suspect, on linkage infor-mation being held in memory and updated during thecompilations. If that isn't successful, it pops up an errorwindow ("Link failed") at the top of the screen and alsobrings up a text window with the unresolved references.Again, you can use that information to track down yourproblems, correct them, and start a recompilation.

Once your program compiles and links, you can executeit without ever leaving LightspeedC. Your program takesover the computer, but when it exits (providing it hasn'tcrashed the system), it returns control back to Light-speedC, not the Finder. At this point, you can create a

[continued)

New Tools ForMac Developers

"This two volume set is a must for anyone seriousabout programming the Mac. They contain informa-tion not found anywhere else, and cover the real-lifeproblems of a software developer."

David Smith, PublisherMacTutor

K J| The Complete Booh or

Macintosh

■ M I 1'■? Co,n r. to* Book ol

Macintosh

DanWeaton

DanWaaton

It's all here — tips, techniques, strategies, advancedtopics. These books explore mac plus ROMS, printmanager, speech drivers, clipboard, and much more.

THE COMPLETE BOOK OF MACINTOSH

ASSEMBLY LANGUAGE PROGRAMMING

Vol. I, 608 pages, $25.95; Vol. II, 416 pages, $22.95.

For your two volume set contact your localbookstore or call 312-729-3000.

Scott, Foresman & Co.,Professional Publishing Group

1900 E. Lake Ave., Glenview, IL 60025

HARMONY COMPUTERS

2357 CONEY ISLAND AVE., (BET. AVES. T & U) BKLYN, NY 11223

800-VIDEO84 or 800-441-1144 or 718-627-1000

Slj^

Commodore 128

PANASONIC 1091

$269.95

$211.95

z&^0

ST/'; NX \c

IBM (268)

mZ*^

$219.00

$1449.00

"PRINTER SPECIALS"

Brother HR 15XL

279

Dkid.Ha 192

31

9 Star SD 10

264

Brother HR35 (Convex C.I)

399

Dkidata 193

45

4 Slar SD 15

386

Citizen MSP 10

269

Dkidata 292 w/INTFC

46

3 Slar SR 10

418

Epson LX80

189

Okidata 293 w-INTFC

60

3 Slar SH 15

539

Epson LO800

■159

Panasonic KXP 1091

21

I SR 10 SR 15 Sheetleed

99

Epson LQ 1000

669

Panasonic KXP 1092

28

3 Star SB 10

489

Epson FX 85

329

Panasonic KXP 3131

23

1 Star NB 15

1099

Epson 286

J 79

Panasonic KXP 3t51

36

3 Silver Reed Exp 550

279

IBM Proprinter

379

Panasonic KXP 1080

18

7 Silver Reed Exp 800

619

Juki 6100

329

Panasonic KXP 1592

40

1 Toshiba 1340

349

NEC 3550

699

Pana 1595

55

i Toshiba 341

639

NEC BB50

029

Star NX-10

21

1 Toshiba 351

949

NEC P6

■149

Star SG-15

33

Toshiba 321

434

NEC P7

619

■A7.W

ZHE

ij

LVMV1J

IBM

ATARI

MONITORS

AT Unenhanced

2912

30 XE

11

3 Amdek 300 Green

113

AT Enhanced IBM

3499

55 XE

8

3 Amdek 300 Amber

119

AT Enhanced IBM 30 Men

3999

027 Printer

9

l 310 Amber

139

IBM Monitor

219

050 Drive

116 Color 600

364

IBM PC No drives

999

Man Writer •

3

Color 722

454

PC XT 268

1459

Convex Printer

9

} Princeton HXI2

39J

PC XT Clone

439

520 ST Color System

75

i Princeton HX12E

4T9

IBM Pro Prtnlef

379

520 STBSW System

62

3 Princeton Max 12E

148

AST Six Pack384K

194

ST 520 Keyboard

35

3 SR'2

529

Hercules Color

139

3T 520 Drive

16

3 Scan Doubler

159

Hercules Monochrome

199

5T 520 B & W Monitor

17

1 Taxan 220

149

Color Card

109

3T 520 Color Monilor

32

1 NEC Mullisync

509

Mulli'unction Card

109

MODEMS

COMPAQ

IBM FH

too

Hayes 1200

34

3 Portable 256K 2-360K

IBM l'2H

99

Hayes 1200B hi Smartcom

32

3 Compaq Drives

1499

Tecmai Graphics Master

299

Hayes 300

12

3 Portable 256K 1-360K

8087 Chip

112

Hayes 2400

54

3 1-20MB Hard

1999

80287 Chip

Hayes 2400B w Smarlcom

48

3 Deskpro 640K 1-360K

Everex Graphics Edge

209

Micro-modern 2E

12

3 1-20MB Hard

1999

Evetex Edge

Everex Graphics Pacer

Joystick (or ISM

21918929

Promelriias 1200Promelhias 1200B

25

13

I COMMODORE

' Commodore 128

270

SEAGATE

APPLE

2E Enhanced w 128K

1571 DriveCommodore 64

230149

& Apple Drrve

89

3 1541 Disk Drive

172

10 Meg w controller

369

Drive

15

3 1802 Monitor

168

20 Meg W controller

30 Meg. AT

.10 Mag AT

20 Meg w controller

419569669329

AT&T

256K 2-360K

540K I-360K 1-20MB

149189

1902A Monitorj MSP 1000 Printer, Comrex Printer

27.1

228

109

Leading Erne Model D 30MBw monitor S1495

Commodore Amiga 256KMouse. Amiga color mon

DOS 1

Leading Edge Model D 25

lj

2 Dr Monitor S1199

■ S999

OUU-14I-I lt<*

Items relied 4"„ cash or check discount. For your protection we check lor stolen credit cafvVC S VISA welcome. Personal checks cause 4 week delay. Shipping & Handling charge ePrice and availability BUtyect lo change without notice

Inquiry 110

IBM PC AT performance!PCjr price!

• AMPRO Little Board/186• 8Mhz 16 Bit 80186 CPU

512K RAM-No Wait-States2 Serial Ports 50-38.4K Baud• Parallel Printer Port• 4 Drive Mini/Micro-Floppy ControllerSCSI Bus Hard Disk Interface• DOS Compatible ROM-BIOSBoots PC DOS 2.x, 3.xComputer Board Assembled and Tested withTech Manual and DOS utilities...$489

• DRI Concurrent DOS 4.1 Multi-User O/S...$395

• Expansion Board for 512K (1 Mb total) 8087-1 Socket,Real-Time Clock, 8530 SCC 2 Channel RS232/422, BufferedExpansion Bus and more...from $149

• AMPRO Little Board (Z80) Same as 80186 board butZ80A CPU, 64K RAM, 16K EPROM, CP/M 2.2 & ZCPR3 andmanuals...$239 ($279 w/SCSI)

• Enclosures w/Power Supply...from $99

• Mini/Micro Floppy Drives...call for current price

• XEBEC or SEAGATE SCSI Drives-Low power 1 /2 Ht Drivew/built-in Controller 10/20Mb...$449/$599

• Terminals: WYSE, QUME, KIMTRON. from $395

• Power supplies, cables, connectors in stock

Complete technical support. Complete systems available. Write or call formore information. Most orders shipped same day.

VISA, MasterCard, Money Order, C.O.D. Checks allow two weeks.Purchase orders and bids welcome. Prices F.O.B. Buffalo Grove, IL.

IBM PC AT, PCjr, PC DOS are trademarks of International Business Machines Corporation.Concurrent DOS is a trademark ol Digital Research, Inc. Xebec Owl is a trademark of Xebec, Inc.

356 Lexington DriveBuffalo Grove, IL 60089-2312tlx: 650 249 2139 MCI UW(312) 537-7888

DISKS PIUS

ACCORDING TO WEBSTER

Expansion Chassis/ Sub-System

S | 6 f-»

7 111

/ [

9

I J

10

Specification

ModelNo.

No. OfSlot

Space forV: Height Drive

Power Supply(Watts)

DimensionDxWxH(cm)

Price

M-r

0

1

50

30x15x6.5

$139

M-2

3

3

100

42x25x16

$299

M-3

5

3

100

39x30x15

$239

M-4

12

2

100

40x39x14

$289

M-5

0

2

45

39x16x15

$149

M-6

0

1

50

26.5x18x13.5

$169

M-7

5

2

100

38.5x30x13.5

$299

M-8

0

2

45

39.5x18x13.5

$149

M-9

0

2

60

38.5x49x9

$249

M-10

8

4

135

43x49x14

$239

•Extra space for a stand alone controller

EXT and RCV Adapters (Interface Computers & Chassis).

$149

ORDER TOLL FREE: (800) 826-0267

In California Call (415) 651-3355

DEALER INQUIRIES INVITED

SOURCE ELECTRONICS CORP.

45277 Fremont Blvd., Unit 6

Fremont, CA 94538

Telex: 279366 Fax: (415) 791-0935

The real beauty of LightspeedCappears when you make achange to a working project.

stand-alone code file by selecting the appropriate menuoption; it takes only a few seconds for the executable fileto be created. You can also use a project to create a libraryfile, which can then be used in other projects.

The real beauty of LightspeedC appears when you wantto make a change to a working project. You edit the ap-propriate source file and then select the Run option inthe project menu (or type Cmd-R). That one source codefile is recompiled (usually in a matter of seconds), allnecessary relinking is done, all the windows are closed(saving any files currently being edited), and the updatedprogram is launched. For example, I changed one line inthe largest of the four modules in my program, then typedCmd-R. Total elapsed time until the program was runningand waiting for my commands: 20 seconds.

How good is the code produced by LightspeedC? I can'tsay with great accuracy, since I haven't run any bench-marks through it yet. What programs 1 have run would in-dicate that the code speed is generally comparable to theother Mac C compilers (Consulair, Aztec, Megamax); butI still plan to run some tests and report on them when1 can. Code files seem to be fairly small, too.

What are some of the features and extensions that Light-speedC offers? Well, for starters, it's a superset of Ker-nighan and Ritchie's C including structures, enumerateddata types, and bit fields. Data type sizes are as follows:

char 8 bits

short 16 bits

int 16 bits

long 32 bits

float 32 bits

short double 64 bits

double 80 bits (full IEEE)

LightspeedC supports the Mac operating system andToolbox routines, though it apparently doesn't supportAppleTalk (as of this writing). It has about 200 other pre-defined functions in other libraries (math, unix, stdio,strings, etc.) to provide compatibility with other C systems.In-line assembly language is not supported; however, autility is provided to convert Macintosh Development Sys-tem (MDS) object files to libraries acceptable to Light-speedC. LightspeedC also provides a plain-vanilla I/O in-terface (using stdio.h) that turns the Mac into a standardterminal; if you include the unix library, you get simplecursor control and graphics functions. In either case, theQuickDraw procedures appear to still work in "terminal"mode. LightspeedC supports resource files (and includesa copy of RMaker). It also comes with the Macsbug debug-ger and instructions on how to use it. And it even has

IconliHued)

342 BYTE • SEPTEMBER 1986

Inquiry 391 for End-Users.Inquiry 392 for DEALERS ONLY.

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 makefunction, your creative processes won't get boggeddown in program administration and housekeeping.Manx Aztec C has the most sophisticated, hardwork-ing program administrator available to you. Onceyou've described your project, adding new features orenhancements is simple. You never have to concernyourself with the repetitive, tedious task of rebuild-ing your systems.

The development process moves quickly. Com-piles, assemblies, link edits ... all finish in recordtime.

Manx Aztec C is the fastest, most efficient C de-velopment system in the industry. Benchmarks showit... reviews commend it... users praise it.

You're ready to test the program. You're ahead ofschedule. The Manx Aztec C Source Level Debuggershows you the exact C language statement giving youa problem. You fix the problem quickly ... you'restill ahead of schedule.

You've got some time for fine tuning.The Manx Aztec C Profiler examinesyour program, tells you where the slowspots are and validates your test pro-cedure. A few changes and it's exactlywhat you wanted.

You've made it!

Aztec C is available for MS-DOS/PCDOS. 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

In NJ or outside the USA call(201)542-2121

30-day satisfaction guarantee. Special Discountsare available to professors, students, independentdevelopers, 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 admirablyon the benchmarks, with short compile times andthe best link times in this review ... includes themost professional make utility ... documentationis clear and complete. There is no doubt that thisis a valuable and powerful programming en-vironment." Computer Languages Feb. '86

"... execution times are very good, close to thebest on most tests ..." PC Tech Journal Jan. '86

" Easily one of the fastest compilers overall...library provides a lot of flexibility ... generatessmall .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.

Manx Software SystemsOne Industrial WayEatontown, NJ 07724

MS is a registered TM of Microsoft. Inc.. CP M TM DRI. HALO TM Media Cybernetics. PANEL TMRoundhill Computer Systems. Ltd.. PHACT TM PHACT Assoc, PRE-C, Plink-86 TM Phoenix, db

Vista TM Raima Corp., C-terp, PC-lint. TM Gimpel Software. C-tree TM Faircom, Inc.. Windows lorC TM Creative Solutions, Apple II. Macintosh TM Apple. Inc.. TRS-80 TM Radio Shack, Amiga TMCommodore Int'l.

Inquiry 217

210 Years Ago Boston WasThe Starting Place Of AnImportant Revolution...

disc Memory Optical Disc CD-ROM Optical Film

:d-i

*/

LaserActive '86

Tradeshow and concurrent conferences.

Insurance and Bankjrig • 2-Document-S^rage ^• lEducatiorti. • S'Pjibhshing •Training.Medical • -

"mm

October 9-10-11

...In 1986 it's the site of animportant evolution.

Interactive Video and Optical Storage Systems havegone through the revolutionary stage of new tech-nology development.

The incredible potential for software, database, andproblem solving applications awaits only a sparkfrom your mind! Come see the industry's leadingcompanies display over 100 applications that ex-pand the characteristics, capabilities, and capacitiesof computers to create entire new markets. Comelearn what it takes to program and work with thisnew exciting, laser-read media. Be an early part ofthe evolution of the revolution at LaserActive '86.

• Seven concurrent conferences covering everythingfrom beginning with optical storage systems to apply-ing their use to the needs of major vertical markets.

• A special conference sponsored by Howard Sams'Books will cover programming for this new media.Don't miss the new Howard Sams' book, CD-I andInteractive Videodisc Technical Reference Guide.

For Immediate Information:

Call: 305/768-2778 Write: POB 3415

Indialantic, FL 32903Inquiry 195 for Howard Sams' book only.

ACCORDING TO WEBSTER

If I had to own just oneC compiler for the Mac—indeed,just one compiler—it wouldprobably be LightspeedC.

a profiling utility to help you see where your program isspending most of its time.

The single greatest weakness with LightspeedC isn't theproduct itself, it's how big and poorly organized themanual is. It's difficult to dig out the information that youneed and that is usually (but not always) there. More thanhalf the manual is devoted to documenting the 200-pluslibrary functions (a few per page, listed in alphabeticalorder) as well as the calling sequences for the Mac routines(listed according to the manager groupings of Inside Macin-tosh). The irony is that the ordering for both sets of routinesprobably should have been the other way around. If youare a programmer, you probably already know the nameof the Mac routine and just want to find the calling se-quence; the manual forces you to find out what managerit's in. If you're looking for a particular C library function,you probably know what you want the function to do, butnot necessarily what its name is, especially if you're nota whizbang C programmer. Given the penchant for cryp-tic C function names (quick! guess what the following func-tions do: atol, cputs, getuid, iscsymf, sbrk, stci d,

strrpbrk, ttyn, vsprintf), you may have to resort to thumb-ing through some 162 pages of function descriptions tofind the one you need.

For an experienced Mac C programmer, this and otherorganizational problems are probably no more than anannoyance. However, for an experienced programmer whois not particularly familiar with either C (like me) or theMac, it's frustrating; for someone familiar with neither,especially if said person isn't an experienced programmer,it would probably be a nightmare. Which is really a shame,since LightspeedC strikes me as an excellent environmentfor learning C and programming on the Mac.

Those of you familiar with my column know that I amnot enamored of C, but LightspeedC goes a long waytoward making it my language of choice on the Macin-tosh (and, of course, LightspeedC my compiler of choice),despite the Pascal/C interface problems that confront allC compilers on the Mac. If I had to own just one C com-piler for the Mac—indeed, just one compiler—it wouldprobably be LightspeedC. Until someone comes out witha comparable Pascal development system.

Prediction Update

In my January 1986 column (which was actually writtenin September 1985), 1 made a series of predictions abouthow the microcomputer industry would develop duringthe coming year. Much to my surprise (and delight), most

(continued

The inventors of the 3.5"driverecommend only one floppy disk,

Theirs.

If your computer has 3.5" drives, it has a little bit of Sony Because Sonyinvented the 3.5" drive technology that has taken floppy disk memory all theway to two megabytes.

So nobody knows better than Sony how important high standards are forproducing 3.5" floppy disks. But then, Sony invented those, too, as well as themost demanding methods for making 3.5" disks.

Such as the Sony Vivax™ magnetic medium, with the high coercive forcenecessary to suppress the "noise" that can cause disk error. And the SonyDDL™ binder system for incredibly even dispersion of magnetic particles onthe disk surface. Then there's Sony's burnishing expertise that eliminatesmicroscopic projections as small as 1/1,000,000th of a millimeter.

But the best reason to trust only Sony is your irreplaceable data. After all,you'll be storing six times the information on a disk that's one-third smallerthan a 5.25" floppy That's why we recommend only one floppy disk for our.5" drives. The Sony

THE ONE AND ONLY,

Inquiry 323

Inquiry 224

New Quark/PC

SingleBoardComputer

Base model 5.75" x 8"

On,y*495

*|| Quantity discounts available

• IBM PC® compatible single boardcomputer mounts to 51M" drive

• Includes Floppy Disk & Color GraphicsCRT Controllers plus more

AISO includes: Legal BIOS • Boots PCDOS"2.1 • PrinterPort • 2 Serial Ports • 256K RAM • Clock Speed at 4.77 MHz •Alphanumerics and Graphics Modes for Color VideoController • Standard IBM® Keyboard Port.

Options include: 512K RAM • Piggyback I/O channelOEM Expansion Board • XT - Compatible Hard Disk SCSIInterlace • Real Time Clock with battery-back-up • Clockspeed of 9.5 MHz (Twice as tast as a PC)

The Megatel Quark/PC is for OEM and end userapplications that require PC compatibility in a compactsingle board computer. The Quark/PC BIOS will run mostIBM PC® software including Flight Simulator and Lotus®. Tomeet your specifications a set of options let you addmemory, speed and an XT-compatible hard disk interface.Not only does it quickly mount to a 5 Va " drive, it also comeswith floppy disk and CRT color graphics controllers — all forjust $495.

To order or enquirecallustoday. Dealer enquiries welcome. Megatel ComputerTechnologies (416) 745-7214150Turbine Drive Weston, Ontario M9L2S2Telex: 065-27453 U.S. Address: 1051 Clinton St., Buffalo, NY. 14206 Distributors: NCSElectronics Varese, Italy • SES Electronics Nordlingen, Germany • PerdixMicrotronics Biggin Hill, U.K. • Microcomputing Ghent, Belgium t AspMicrocomputers Melbourne. Australia.

Quark is a registered trademark ol F and K MFG. CO LID IBM, IBM PC and PCDOSare registeredtrademarks ol Inrernatronal Business Machines Corp Lotus is a tegislerea trademark ol LotusDevelopment Corp MSDOS Is a registered trademark ol Microsoft Corp

ACCORDING TO WEBSTER

megatel

Qp&tffafc

• Eliminate Confusion

• Reduce Training Time

• Increase Productivity

Need Custom Keytops?Call us at 602 634-7515

Nooteon

■ I CORPORATION

P.O. Box 201, Dept.Cornville, A2 86325

KEYTOPS—Kits to support most software, including:

PC to 5251 $21.95 DisplayWrite 3

PC to 5520 $29.95 WordPerfect 4.1

KEY EXPANDERS FULL KIT $21.95

MINI KIT $10.95

□ Black □ Gray

IIIIIIII

I

I Visa or MC orders: 602 634-7515 Same Day Shipment • U.S. Postage Paid j

Inquiry 162 for End-Users.346 BYTE • SEPTEMBER 1986 Inquiry 163 for DEALERS ONLY.

$21.95

$29.95

Touchdown'" key expanders enlarge small, criticalkeys (Return, Shift, Backspace, etc.) on the IBMPC and look-alikes to full-size. AT-style keys. Fullkit has 12 separate expanders. Mini-Kit: Enter/Ret.both shifts, backspace. All kits support LED whereneeded. Must specify keyboard.

Language conversions available! D Send me FREE INFORMATION

Specify Keyboard Make/Model

Name

Address

City.St .Zip

□ VISA

□ MC#_

_Exp..

of those predictions have been coming true within the pastmonth or two or at least appear to be headed in that direc-tion. To wit:

• The Apple Ile/IIc is losing ground to the Amiga and theAtari ST (though not nearly as fast as 1 thought it would);in response, Apple is working on the IIx (which may beout by the time you read this) and will probably cut priceson the He and lie to well below the $600 level, especiallyas Christmas approaches.

• Apple has committed itself (in its annual report, no less)to an open-architecture Mac. Apple has made no officialstatements on what the open Mac will have, but the grape-vine indicates slots, a 68020 processor, faster disk drives,more memory, a larger display, and possibly even color.And, I suspect, a fan.

• John Scully told analysts that all future Macintosh prod-ucts would be capable of running both UNIX and MS-DOS.Also, at least one third-party vendor should be shippingUNIX System V for the Macintosh around the time thiscolumn sees print.

• Analysts are generally pleased with Scully's commitmentto MS-DOS and UNIX (and with Apple's direction ingeneral), especially since (according to said analysts) itgives Apple a better shot at getting into corporate markets.Apple stock now stands (this is mid-May, remember) ataround $32/share, up substantially from last fall and morethan double its low value during the last year.

• Commodore showed (at COMDEX/Atlanta) the Sidecar,an MS-DOS box with an 8088 processor, an IBM PC-com-patible BIOS, expansion slots, and 5!4-inch disk drives.(Atari is also developing an MS-DOS box for the ST, butI didn't predict that.)

• In addition to Apple's open commitment to UNIX,sources at both Atari and Commodore have indicated thatfuture products will include UNIX-based systems, or atleast systems with UNIX (or a look-alike) as an option.

• The 68000 family is having a good year, though theleading edge of the market already seems to be shiftingaway from the 68000 to the 68020 (bypassing the 68010completely). Motorola is apparently selling all the 68020sit can make (and then some). And anyone not making anIBM PC compatible appears to be choosing the 68000(with the exception of the IIx, which apparently will usethe 65816).

• IBM announced (finally!) the PC Convertible, its laptopcomputer, which does, indeed, look to be decently de-signed; the surprise is that the pricing and marketing ap-pear to be better than average, though I wonder how hardIBM will actually push the machine. The only other an-nouncements have been slight improvements (along withprice cuts) on the XT and AT, mostly to catch up with theclone makers. And speaking of the clone makers. . .

• During the last week or so, articles in the Wall Street jour-nal, Newsweek, and elsewhere have focused on the cheap,well-built IBM PC compatibles that are flooding the MS-DOS market and are threatening to (as a group) pass IBMunit sales by the end of this year or early in 1987. It hasreached the point where the name "IBM" on the front

Inquiry 187

ACCORDING TO WEBSTER

Items DiscussedLightspeedC

S175

Think Technologies Inc.420 Bedford St.Lexington, MA 02173(617) 863-5593

Turbo Prolog

S99.95

Borland International

4585 Scotts Valley Rd.

Scotts Valley. CA 95066

(800) 255-8008 (outside California)

(800) 742-1133 (in California)

panel is seen as a liability in some market segmentsbecause it usually means higher prices and lower per-formance.

Okay, so where did I mostly go wrong? Well, the ST andAmiga have not been runaway successes, though both ap-pear to be selling better than competitors and detractorswish to believe. And I'm not sure there's been the "bigupswing" in the home market that I predicted. On theother hand, this is only May; that surge may hit atChristmas. That (together with production problems) hasprobably held down sales of the Amiga and the ST; giventhe lack of reliable sales figures from either firm, though,it's hard to judge. The open Mac appears to be slowercoming to market than I thought it would be and may noteven show up until early next year. But it is coming.

The big question right now is the ultimate impact of thelayoffs at Commodore, which included some key peopleat the Commodore-Amiga (Los Gatos) facility. This couldbe an honest-to-goodness belt-tightening move, such asApple made back in 1985 (to good effect). Or it couldsignal serious trouble at Commodore. By the time youread this, you should have a better idea of which it is. Myguess? I think Commodore and the Amiga will still bearound come September.

In the Queue

Well, it looks like next month may be Round 3 of the 68000wars. I now have for a few brief weeks a Prodigy 4 fromLevco, which I mentioned a few columns ago under thename Super Mac 20. From the outside, it looks like aregular Mac; on the inside, it's got a 16-megahertz 68020processor, a 68881 floating-point coprocessor, 4 mega-bytes of RAM, and a 20-megabyte hard disk (running onan SCSI interface). I also hope to line up Computer Sys-tem Associates' 68020/68881 expansion board for theAmiga, as well as General Computer's HD-2000 upgradefor the Macintosh. And Apple wants to swap the plain-vanilla 512K Mac that they've been lending me for a MacPlus. I've got some software products I want to get to aswell, including Multi-FORTH, Aztec C, and TDI Modula-2for the Amiga. But, as always, I'm making no promises.Until then, I'll see you on the bit stream. ■

Real-Time Multitasking Executive

■ No royalties

■ Source code included

■ Fault free operation

■ Ideal for process control

■ Timing control provided

■ Low interrupt overhead

■ Inter-task messages

Options:

■ Resource Manager

■ Buffer Manager

■ Integer Math Library

■ Language Interfaces:

C Pascal

PL/M Fortran

■ DOS File Access:

CP/M-80IBM PC DOS

AMX L

Task ScheOuler \~

yAMX Service —»Procedures .

Interrupts

User Device

ServtceProcedures

AMX isTM of KADAK Products Lid.CP/M-80 isTM of Digital Research Corp.IBM. PC DOS are TM ol ISM Corp.

AMX for 8080 $800 US8086 950

6809 950

68000 1600

Manual (specify processor) 75

KADAK Products Ltd. <604> Jf-arae

sk Telex: 04-55670

■■ 206-1847 W. Broadway, Vancouver, B.C., Canada V6J1Y5

ALPHA CONCORD

JDdEALERS WELCOME! I

BEST ON THE MARKET

• Auto dial, aulo answer (tone or pulse)

• 8 status indicators & switch selectable

• Auto speed selection (0-300, 1200 bps)

• Speaker with volume control

• Aluminum case, with adaptor 6 MONTH WARRANTY

dan $129

FOR DEALERS OR GROUP USER ■ ...$85 each

(Minimum purchase over 100 units)

Add 5%Shipping Charge

300/12002400

MODEM

$229

BUILD YOUR PORTABLE XT/AT

AT/XT PORTABLE $119

{Price is for CASE only.) Add $27 shipping.

full size keyboard9" monitor, 130 watt power supply extra.)

Replacement & 99% Compatible

AT COMPATIBLEMOTHERBOARD

(Price do not

include any

INTEL IC)

XT MAINBOARD

$125

| AT/XT KIT

AT $279XT $169

CONCORD Technology Ltd.

47 W. Broadway, Van., B.C. Canada V5Y 1P1Ph.(604)879-3555 or 879-7419

(Price include only case,power supply, & keypoard)

FACTORY PRICES ON

AT/XT or He cases cards

I EGA CARD $210 I

Inquiry 90

SEPTEMBER

iYTE 347

THE CMO ADVANTAGE

TO ORDERCALL TOLL FREE

1-800-233-8950

DEPARTMENT A109TELEX 5106017898

OR MAIL YOUR ORDER TO:

COMPUTER MAIL ORDER

Department A109

477 E. Third StreetWilliamsport, PA 17701

HOME COMPUTERS

MODEMS

fl

1

OIHI'NS CLUI]

POLICY 'nquiry 82

Add 3% (Minimum $7.00) shipping and handl-ing. Larger shipments may require additionalcharges. Personal and company checks require3 weeks to clear. For faster delivery use yourcredit card or send cashier's check or bankmoney order. Pennsylvania residents add 6%sales tax. All prices are subject to change andall items are subject to availability. Detective soft-ware will be replaced with the same item only.Hardware will be repaired or replaced at ourdiscretion within the the terms and limits of themanufacturer's warranty. We cannot guaranteecompatibility. All sales are final and returnedshipments are subject to a restocking fee.

EDUCATIONAL INSTITUTIONS

CALL TOLL FREE

1-800-221-4283

CANADIAN ORDERS1-800-268-3974

Ontario/Quebec

1-416-828-0866

In Toronto

1-800-268-4559

Other Provinces

TELEX: 06-218960

2505 Dunwin Drive,

Mississauga, Ontario

Canada L5L1T1

All prices shown are lor U.S.A. orders. Call theCanadian Office for Canadian prices.

THE CMO ADVANTAGE

*■ Next day shipping on all in-stock items.

*• Orders from outside Pennsylvania savestate sales tax.

,- There is no limit and no deposit on C.O.D.orders.

*- There is no extra charge for using yourVisa or MasterCard and your card is notcharged until we ship

y- No waiting period for cashier's checks.

v We accept purchase orders tram qualifiedcorporations. Subject to approval.

*■ Educational discounts available toqualified institutions. (See the toll treeeducational phone number above.)

^ FREE CATALOG MEMBERSHIP

ATARI

65XE (64K) $89.99

130XE (128K) $129.00

S20ST (512K) $369.00

520ST Monochrome System

• 520ST with modulator

• disk drive

• mouse LQW LQW

' l09° SYSTEM PRICE

• Neochrome $543"®Sampler

• monochrome monitor

520ST Color System

• 520ST with modulator

• disk drive

• mouse LOW, LOW

• logo SYSTEM PRICE

• Basic c^eftnfl

• Neochrome ' 7o9Sampler

• color monitor

80OXL 64K $69.99

1010 Recorder $49.99

1050 Disk Drive $129.00

1020 Printer $29.99

1027 Letter Quality Printer $119.00

M301 Direct Connect Modem....$39.99

APPLE

APPLE lie CALL

APPLE lie CALL

lie LCD Display $249.00

COMMODORE

Amiga Package

• 512K

• 2 • 3V;" DS Disk Drives

• Amiga RGB Monitor...$1599.00C64 Package

• C64 • C1541

• Taxan 220 S499.00

C128 Package

• C128 • C1571

• NAP8562 Monitor $779.00

C128 Computer $269.00

C1571 (Disk Drive

for C128) $249.00

C1902 (RGB 13" Monitor

for C128 CALL

C1670 (Modem for C128)$179.00

C1530 Datasette $39.99

C1660 Aulo Modem $59.99

Xetec SuperGraphix 8K $69.99

Micro R&D 128/64 Interface $54.99

C128 Universal Monitor Cable $9.99

PORTABLE COMPUTERS

ACCESSORIES

NEC

PC-8401 LS $699.00

PC-8231 Disk Drive $599.00

PC-8221A Thermal Printers $149.00

PC-8281A Data Recorder $99.99

SPECIAL

• NEC 8201 Computer

• 8K Ram Cartridge ***^*%nn' 300 Baud Modem '37900

SHARP

PC-1350 $149.00

PC-1261 $149.00

PC-1500A $169.00

PC-1250A $89.99

CE-125 Printer/Cassette $129.00

CE-150 Color Printer Cassette.$149.00

CE-161 16K RAM $129.00

PC-7000 PC Compatible CALL

AMARAY

80 Column Printer Stand $14.99

CURTIS

Side Mount SS-1 $19.99

Side Mount AT SS-2 $34.99

Universal Stand SS-3 $19.99

Diamond SP-1 $29.99

Emerald SP-2 $39.99

Sapphire SPF-1 $49.99

Ruby SPF-2 $59.99

Universal Printer Stand $14.99

Static Mat $29.99

DATA SHIELD

300 Walt Backup $379.00

500 Watt Backup $589.00

Turbo 350 Watt Backup S449.00

P125 Power Director $99.99

P150 Power Director w/Modem$119.00

585 Surge Protector $69.99

5100 Surge Protector $79.99

KENSINGTON

Master Piece $99.99

Master Piece + $119.00

KEYTRONICS

KB5150/KB5151/KB5151Jr CALL

KB5152B/KB5153/KB5149Jr CALL

MEMORY CHIPS

4164 RAM Chips (ea.)$1.99

128 RAM Chips (ea.) $4.99

256 RAM Chips (ea.) $3.99

■Polaroid

Palette $1399.00

Power Processor $229.00

Illuminated Slide Mounter $39.99

Polacolor 2 Pack film $18.99

WKS% HEWLETT

mL'KM PACKARD

41CV $139.00

41CX $199.00

HP 11C $49.99

HP 12C $75.99

HP 15C $75.99

HP 16C $89.99

HPIL Module $98.99

HPIL Cassette or Printer $359.99

Card Reader $143.99

Extended Function Module $63.99

Time Module $63.99

We stock the full line ofHP calculator products

DISKETTES

GENERIC

5'A " DS/DD $10.99

..$25.99

5V4" DS/DD floppy disks(Box of 10)

maxell

SS/DD (10) $18.99

DS/DD (10) $29.99

MD-1 SS/SD (10) $11.99

MD-2 DS/DD (10) $16.99

MD-2-HD for AT (10) $29.99

3'/2

3Vz5'A5'A5'A

SONY

MD1-5'A" SS/SD (10) $9.99

MD2-5V4" DS/DD (10) $13.99

MD2HD-514" High Density (10).$28.99

MFD1-3V4" SS/DD (10) $18.99

MFD2-3V2" DS/DD (10) $29.99

kTI Verbatim.

5'A" SS/DD $12.99

5'A" DS/DD $24.99

Disk Analyzer $24.99

DISK HOLDERS

AMARAY

50 Disk Tub 5'A" $9.99

30 Disk Tub 31/2" $9.99

100 Disk Tub 5'A" w/lock $19.99

INNOVATIVE CONCEPTS

Flip'n File 10 $2.49

Fllp'n File 50 $11.99

Flip'n File Data Case $9.99

Anchor

Volksmodem $59.99

Volksmodem 300/1200 $139.00

Signalman Express $209.00

Lightning 2400 Baud $329.00

Expressi (PC Halfcard) $149.00

6480 (64/128) 30011200 Baud. $129.00

520 1200 BPS (Atari ST) $139.00

Lightening Half Card (PC) $349.00

Omega 80 (Amiga) $139.00

/isr

Reach 1200 Baud Halt Card....$399.00

DIGITAL DEVICES

AT300 - 300 Baud (Atari) $99.99

EVEREX1200 Baud Internal (IBM/PC).$149.00

GD Hayes

Smartmodem 300 $139.00

Smartmodem 1200 $389.00

Smartmodem 1200B $359.00

Smartmodem 2400 $589.00

Micromodem lie $149.00

Smart Com II $89.99

Chronograph $199.00

Transet 1000 $309.00

I Novation [Bj

Smart Cat Plus $299.00

J-Cat $99.99

Novation 2400 $499.00

PRACTICAL PHERIPHERALS

1200 Internal $139.00

1200 External $169.00

1200 Multifunction Modem $269.00

quadbamE§§3

Quadmodem II

300/1200 $299.00

300/1200/2400 $499.00

^i SUPRA

MPP-1064 AD/AA (C-64) $69.99

1200 AT (Atari 8 Bit) $149.00

1200 ST (520 300/1200 Baud).$149.00

DRIVES

IOMEGA

A210H 10 + 10 $1995.00

A220H 20 + 20 $2499.00

Save on 10 & 20 Carts CALL

TALLGRASS25. 35. 50. 80 meg (PC)

Irom $1299.00

IRWIN

T110 Tape Back-up $449.00

EVEREX60 Meg Internal Backup System$799.0020 Meg Streamer $699.00

MOUNTAIN

Hard Drives CALL

Hard Card 20 MB $699.00

Hard Card 30 MB $999.00

Tape Back-Up CALL

PRIAM

40. 60 MB Inner Space CALL

Shared Data CALL

Shared Space CALL

RACORE

1500 Expansion Chassis S379.00

1500 Chassis w/DMA $429.00

2101 256K Memory $179.00

2103 512K Memory $199.00

CMS

10 Meg with controller $369.00

20 Meg with controller $469.00

Rambo-AT $229.00

ALLIED TECHNOLOGY

Apple II.II + .lie v2 height $109.00

INDUS

Atari GT $189.00

C-64 /128 GT $189.00

MSD

SD1 C-64 Single $219.00

SD2 C-64 Dual $469.00

TANDON

320K 5'A" (PC) $99.00

TEAC

320K 5'A" $99.00

DEPT. A109

SOFTWARE FOR IBM

ANSA SOFTWARE

Paradox $499.00

ASHTON-TATE

Framework II CALL

dBase III Plus CALL

BATTERIES INCLUDED

Isgur Portfolio $159.00

BORLAND

Lightening $59.99

Sidekick (unprotected) $57.99

Reflex $59.99

Travelling Sidekick $44.99

Turbo Prolog $64.99

CENTRAL POINT

Copy II PC-Backup $29.99

PC Option Board $84.99

DECISION RESOURCES

Chartmasler $229.00

Signmaster $159.00

Diagram Master $209.00

Map Master $259.00

FIFTH GENERATION

Fast Back $89.99

FUNK SOFTWARE

Sideways $44.99

HARVARD SOFTWARE INC.

Tola/ Project Manager $269.00

Presentation Graphics $239.00

IMSI

PC Mouse/Dr. Halo $119.00

LIFETREE

Volkswriter III $149.00

LIVING VIDEOTEXT

Think Tank S109.00

Ready $64.99

LOTUS

Symphony CALL

1-2-3 Version 2 CALL

MECA SOFTWARE

Managing Your Money 2.0 $99.99

Manage Your Market $89.99

MICROPRO

WordStar 2000 $239.00

WordStar 2000 + $289.00

WordStar Pro. w/GL Demo $189.00

MICRORIM SOFTWARE

R:Base 5000 $359.00

Clout 2.0 $129.00

R:Base System V $469.00

MICROSOFT

Flight Simulator $34.99

MultiPlan $129.00

Word 3.0 $279.00

Mouse $139.00

MICROSTUF

Crosstalk XVI $89.99

Crosstalk Mark IV $149.00

Remote $89.99

MULTIMATE

Multi Mate Word Proc CALL

Advantage $269.00

NOUNEMON

Intuit $69.99

NORTON

Norton Utilities 3.1 S57.99

ONE STEP

Golf's Best Pinehurst $34.99

PFS: IBM

Proof $59.99

File/Graph (ea.) $84.99

Report $74.99

Write/Proof Combo $84.99

THE SOFTWARE GROUP

Enable $349.00

SATELLITE SYSTEMS

Word Perfect 4.1 $219.00

SORCIM/IUSAccounting

AP/AR/GL/INV/OE (ea.) $299.00

SuperCalc III $219.00

EasyWriler II System $239.00

Super Project $219.00

SuperCalc 4 $329.00

SUBLOGICJet $37.99

PRINTERS

Canon

A40.A50.A55 from $239.00

LBP-8A1 Laser $1999.00

#CITIZEN

MSP-10 (80 col.) $279.00

MSP-15 (132 col.) $419.00

MSP-20 (80 col.) $349.00

MSP-25 (132 col.) $499.00

MSP-35 (LQ) $449.00

crroH

Prowriter 1550P $299.00

Starwriter 10-30 S299.00

3500 Tri Printer CALL

corona

Lazer LP-300 $2199.00

DIABLO

D25 Daisywheel $549.00

635 Daisywheel $1099.00

D80IF Daisywheel CALL

d#isywriter

2000 $699.00

EPSON

Homewriter 10. LX-80 CALL

FX-85, FX-286, RX-100 CALL

DX-10, DX-20, DX-35 CALL

SQ-2000, Hi-80, HS-80, AP-80 CALL

LQ-800, LQ-1000 CALL

■JUKI

6000 Letter Quality CALL

6100 Letter Quality CALL

6200 Letter Quality CALL

6300 Letter Quality CALL

6500 Letter Quality CALL

5510 Dot Matrix Color CALL

LEGEND

880 Dot Matrix 100 cps $179.00

1080 Dot Matrix 100 cps $259.00

1380 Dot Matrix 130 cps $289.00

1385 Dot Matrix 165 cps $339.00

NEC

3000 Series $779.00

8000 Series $1099.00

ELF 360 $399.00

P560, P660. P760 CALL

OKIDATA

182, 183, 192, 193, 2410, 84 CALL

Okimate 10 (Specify C64/Atari)$189.00

Okimate 20(IBM), 282, 283 CALL

Okidata 93 $299.00

Panasonic

KX1080 $199.00

KX1091 $239.00

KX1092 $359.00

KX1592 $469.00

KX1595 $659.00

Quadjet $199.00

Quad Laser LS-1000 CALL

£d» SilYER-REEO

500 Letter Quality $239.00

550 Letter Quality $299.00

800 Letter Quality $699.00

SG-10C (C64 Interface) CALL

SB/SD/NX/NL/SR Series CALL

Powertype Letter Quality CALL

Tfexas Instruments

TI850 $529.00

TI855 $639.00

TI865 $799.00

TOSHIBA

P321 (80 column) $489.00

P341 (132 column) $749.00

P351 (132 column) $1049.00

MULTIFUNCTION CARDS

AST

RamVantage $349.00

Rampage-PC $299.00

Six Pack Premium $219.00

Six Pack Plus $169.00

I/O Plus II $139.00

Advantage-AT $369.00

Preview Mono $299.00

PC Net Cards $379.00

5251/11 On-line $669.00

5251/12 Remote $579.00

5251/11 Plus $719.00

IRMA 3270....55*"™"" $839.00

IRMA Print $999.00

IRMA Smart Alec $779.00

;=^VEREX—

Edge Card $259.00

Graphics Edge $219.00

Magic Card II $159.00

Magic Card I $99.99

EGA Video $299.00

HEKCULEK

Graphics $199.00

Color $159.00

lutAssociaies

IDEA 5251 $549.00

INTEL

PCNC8087 5MHz '.

PCNC8087-2 8 MHz

PCNC80287 6 MHz AT CALL

PCNC802878 8 MHz AT FOR

1010 PC-Above Board YOUfl

1110 PS-Above Board pc

2010 AT-Above Board

2110 AT-Above Board-PS

MYLEXThe Chairman $439.00

PARADISE

Color/Mono Card $149.00

Multi Display Card $199.00

High Res Mono $169.00

Auloswitch EGA $379.00

Modular Graphics Card $269.00

PERSY5T

Bob Board $359.00

OUADRAM

Quadport-AT $119.00

Liberty-AT (128K) $349.00

The Gold Quadboard $449.00

The Silver Quadboard $239.00

Expanded Quadboard $159.00

Liberty $309.00

QuadSprint $499.00

QuadLink $399.00

QuadColor $199.00

Quadboard-AT $399.00

8600 E.G.A. card $399.00

STBEGA Plus $329.00

TECMAR

Captain - 64 $199.00

Graphics Master $469.00

VIDEO-7EGA $349.00

ast

Multi I/O (Apple II) $139.00

DIGITAL DEVICES

Ape Face (Atari) $39.99

U-Print A (Atari) $49.99

U-A16/Buf(er (Atari) $69.99

U-Call Interface (Atari) $39.99

U-Print C (C64) $44.99

P-16 Print Buffer $69.99

U-Print 16 Apple lie $79.99

MICRO R&D

Apple lie Parallel $49.99

Kaypro 2000 Parallel $49.99

C64/128 $54.99

jjlJOrange micro

Gtappler CD (C64) $89.99

Grappler Plus (lie, lie) $89.99

Grappler C (lie) $89.99

Grappler 16K (lie, II + ) $139.00

MHphactical

■HMHEUU

Graphicard $69.99

Seriall Card $99.99

Microbuffer II + 64K $169.00

Microfazer from $139.00

Efazer (Epson) from $79.99

INTERFACES

IBM |nquiry »2

IBM PC SYSTEMS

Configured to your specifications.

Call for Best Price!

IBM-PC, IBM-XT, IBM-AT

f^Awr

AT&T 6300 CALL

corona

PPC400 Dual Portable $1199.00

PPCXT 10 meg Portable $1799.00

PC40022 Dual Desktop $1289.00

PC400-HD2 10 meg $1799.00

KP-2000 Portable CALL

Kaypro PC CALL

PC,

IBM CLONE

640K MB-256 installed, 150 Watt PowerSupply. XT Keyboard, 360K Floppy, 20Meg Hard Drive $999.00

Sperry-AT as low as $1749.00

Sperry-IT as low as $2699.00

Call for Specific Configuration!All Models CALL

PC-138 Series, PC-148 Series, PC-15BSeries, PC-160 Series, PC-171 Series,AT-200 Series CALL

MONITORS

X\MSDEK

Video 300A Amber $129.00

Video 310A Amber TTL $159.00

410 TTL Amber or Green CALL

Color 600 Hi-Res. RGB $399.00

Color 722 Dual Mode $529.00

Color 725 $619.00

Color 730 $749.00

MAGNAVOX

515 RGB/Composite $299.00

613 TTL Green $99.99

623 TTL Amber $99,99

NEC

JB1280G TTL Green $129.00

JB1285A TTL Amber $129.00

JC1401 Multi Sync RGB CALL

PRINCETON

MAX-12 Amber $169.00

HX-12 12" RGB $459.00

HX-12E Enhanced $549.00

SR-12 Hi-Res $589.00

SR-12P Professional $649.00

QUADRAMI^

8400 Quadchrome I $449.00

8420 Amberchrome $169.00

8460 Quadchrome Enhanced...$499.00

WTSUCfiUM

115 12" Green $119.00

116 12" Amber $129.00

121 TTL Green $139.00

122 TTL Amber $149.00

220 14" Color Composite $179.00

620 640x200 RGB $399.00

630 640x200 RGB $469.00

640 720x400 RGB $527.00

ZVM 1220 Amber $99.99

ZVM 1230 Green $99.99

ZVM 1240 IBM Amber $149.00

ZVM 1330 RGB $459.00

ZVM 1360 RGB $529.00

ZVM 1380 E G Comp CALL

u

DEPT. A109:

DR. JACK PURDUM

Get the proven product from the manwho wrote the books on "C".

C Programming Guide

After reading the 1st edition, Jerry Pournelle (BYTEMagazine) said: "I recommend this book...Read itbefore trying to tackle Kernighan andRitchie." The second edition ex-pands this best seller and walksyou through the C language in aneasy-to-understand manner.Many of the error messages in-clude references to this bookmaking it a perfect com-V* panion to Eco-C88 for those'• just starting out with C.

$20

C Self-Study Guide

(Purdum, Que Corp.) Designed for

1 those learning C on their own. The

book is filled with questions-answers

designed to illustrate many of the

tips, traps, and techniques of the

C language. Although written to

complement the Guide, it may

be used with any introductory

text on C.

$17

C Programmer's Library

(Purdum, Leslie, Stegemoller, QueCorp.) This best seller is an inter-mediate text designed to teach youhow to write library functions in ageneralized fashion. The bookcovers many advanced C topicsand contains many useful ad-ditions to your library includingcomplete ISAM file handler.

$22

CED Program Editor

CED now supports on-line function help. If you'veforgotten how to use a standard library function, justtype in the name of the function and CED gives youa brief summary, including function arguments. CEDis a full screen editor with auto-flagging of source codeerrors, multiple windows, macros, and is fully con-figurable to suit your needs. You can edit, compile,link, and execute DOS commands from within theeditor. Perfect for use with Eco-C88. For IBM PC, ATand look-alikes. m. q.

C Source for Standard Library

Contains all of the source code for the library func-tions that are distributed with Eco-C88, excluding thetranscendentals and functions written in assembler.

$10 ($20 if not with order)Developer's Library

Contains all the source code for the standard library,including transcendental and assembler functions.Available with compiler purchase only.

$25 ($50 if not with order)

THE FIRST PROFESSIONALC COMPILER FOR UNDI

NOTHING INTHIS PRICERANGEEVENCOMES CLOSE.

Ecosoft Inc.

6413 N. College Ave.Indianapolis, IN 46220

"Ecosoft's Eco-C is going to turn some

major heads."

"Eco-C is the first compiler reviewed that

has clearly begun implementing the

coming ANSI standard. Eco-C supports

prototyping."

"Eco-C performed well on all the bench-marks, generating code that was quitecomparable to thai ot compilers 10 timesas costly."

from:

Christopher Skelly

Computer Language,

Feb., 1986

"The driver program is another strength:it compiles and links a list of files andprovides a simple MAKE capability."

"This compiler does handle syntax errorsmuch better than average-no ava-lanche of spurious messages here."from:

William HuntPC Tech Journal,Jan., 1986

"Eco-C88 is a high-quality package...comparable to systems costing much more."

"Eco-C88 is one of the fastest..."

"It is convenient to use, works well, andproduces acceptably compact and fastprograms."

from:

Dr. David Clark

Byte, Jan., 1986

Minimum System Requirements:

To use Eco-CHH Release 3.0, you must

have:

1. An IBM PC, XT, or AT-compatiblecomputer with monitor.

2. 256K or more memory.

3. Two 360K disk drives, or a hard disk.

4. PC or MSDOS 2.1 or later to includethe MSDOS linker.

Eco-C88, mini-make, memfiles and CED

are trademarks of Ecosoft Inc.

IBM is a trademark of International

Business Machines,

UNIX is a trademark of Bell Labs.

MSDOS and MASM are trademarks of

Microsoft. Inquiry 116

Full-featured C compiler. Supports allC features, data types (except bit fields),and operators.

New Language Enhancements, You

also get prototyping, enum and voiddata types, plus structure passing andassignment.

Tiered Error Checking. All syntax er-rors are automatically flagged, but youcan select the level of "link-like" seman-tic error checking you want.

Complete Standard Library, Over 200lunctions, many of which are System Vcompatible for greater source codeportability.

Screen and Memory Functions. Now

you can write programs that use color,cursor addressing, even ones that let youdesign your own graphics functions. Youalso get memliles™ that allow you to ac-cess memory outside the normal datasegment as a file.

8087 and 80287 Support. If you haveone of these math chips, your programswill take immediate advantage of it. liyou don't have one, the code automat-ically switches to software (loating point.

Full Screen Editor. The CED editor is afull screen editor with multiple windows,macro commands, on-line function help,plus a full set ol editing commands. (Re-quires a true IBM PC compatible.) Youcan edit, compile, link, and execute pro-grams from the editor which greatlyreduces development time.

Includes a cc and mini-make™. TheUNIX-like cc makes compiling pro-grams a snap. You can run cc fromwithin the CED editor.

ASM or OBJ Output. You can selectassembler or relocatable output from thecompiler. Both are MASM compatibleand ready for use with the MSDOSlinker to produce EXE files.

Eco-C88

Lattice

ComputerInn. C86

Microsoft

MarkWilliams

sieve

12

11

13

11

12

fib

43

58

46

109

—

deref

14

13

—

10

11

matrix

22

29

27

28

29

Orders

Computer Lai

* 1^

iguage, Fet

100-5

., 1985, p."

)52-

9. Reproduc

0471

ed with permission.

)

ORDER FORM CUP & MAIL TO: Ecosoft Inc., 6413 N. College Ave., Indianapolis, IN 4622C□ C Compiler $59.95

□ C Programming Guide $20.00DC Self-Study Guide $17.00 _D C Programmer's Library $22.(D CED Program Editor $29.95 _

□ C Source for Standard Library $10.00 ($20.00 if not with order)

D Developer's Library $25.00 ($50.00 if not with order)

SHIPPING M-00

TOTAL (IND. RES. ADD 5% TAX)

PAYMENT: D VISA D MC □ AE

CARD » EXPIR. DATE.

NAME

ADDRESS

CITY

ZIP

D CHECK

.STATE.

.PHONE.

BYTE JAPAN

/Wh

Perspectives on Hardwareand Software

by William M. Raike

This is the season of the an-nual Microcomputer Show inTokyo, and with it cameseveral interesting new com-puter products. Surprisingly,while NEC and, to a lesserextent, Fujitsu often domi-nate the show, this yearneither company introduced newcomputers. The most interesting newcomputer, the Vectra-D, came fromYHP, Hewlett-Packard's Japanese com-pany. Yamaha displayed a fascinatinggadget, a piano and computer rolledinto one. But even when I'm not go-ing to computer shows, I'm still on thelookout for other computer applica-tions in less likely spots.

High-Tech Flavor

It's hard to paint a meaningful pictureof modern-day Japan in words. WhenI visit the U.S., most people thereseem to imagine Japan as either ahigh-tech wonderland or as a semi-mystical land of peaceful meditation,martial arts, and traditional handi-crafts. Sometimes, all the realitiesoverlap in amusing, if somewhat jar-ring, ways.

For instance, one way many Japa-nese briefly escape the crowded con-ditions of most Tokyo offices andbusinesses is to stop in at the localcoffee shop in midafternoon. Thesetiny shops, called kissaten, are foundeverywhere, and they provide a placeto meet clients, relax with coworkers,or just duck out of the office to reada book or magazine over a quiet cupof coffee. The proprietor of one suchnook in the Shibuya district of Tokyodecided to attract customers by offer-ing a new service: word processing.He installed several personal com-puters on a large central table, and

Advanced hardware—

why hasn't software managed

to catch up?

customers are encouraged to usethem, gratis, for whatever purposethey choose while sipping coffee andnibbling cakes. According to themanager, the idea seems to haveworked; people often come in just tofind out how a word processor worksand return when they discover howeasy it is to operate one. And so far,no one has spilled coffee over thekeyboard or smeared pastry on thescreen!

But one nearby noodle shop, con-fronted with competition from itsneighbor, may have had the last wordwhen it decided to give itself a "newmedia" edge. It decided to take ad-vantage of rapidly dropping prices bybuying a FAX (facsimile) machine;now I can send in my order for tradi-tional Japanese soba or udon noodlesdirectly from my home FAX machine!

Perspective on Software

Just last month I was lamenting thelack of hardware and/or software thatwould allow IBM Personal Computersand their work-alikes to processJapanese-language text. Despite thefact that a number of Japanese com-puter manufacturers have developedIBM PC AT-compatible computers forthe U.S. market, the number of IBMPC-compatible machines sold inJapan is minuscule compared to thesales of the NEC PC-9801 series, forexample. IBM Japan Ltd. offers itsModel 5 5 50 and 5 540 workstations,

which are popular officecomputers in many banksand large corporations here.(Recently the company an-nounced upgraded modelsbased on the 80286 micro-processor, the same chipused in the PC AT.) But thesecomputers aren't directed toward thepersonal computer market, they aren'tPC-compatible, and they carry sub-stantially higher price tags than mostpersonal computers.

The reason for so few IBM PC andPC AT machines and work-alikes be-ing sold here is no mystery. I'vepointed out several times in this col-umn that you can't expect to sell largenumbers of computers in Japan ifthose computers can't handle theJapanese language. Hardware pro-duced by the leading personal com-puter manufacturers (NEC, Fujitsu,Oki, Sanyo, Sharp, Hitachi, and others)is very powerful and has undergonea long and arduous winnowing pro-cess in the fiercely competitive Japa-nese market. Demands include exten-sive and sophisticated Japanese-lan-guage processing features that arebuilt into the hardware, as well asmore familiar hardware features likefast microprocessors, massive on-board RAM, large floppy disk andhard disk capacities, and extensiveinterfacing capability.

However. . .about software. Now it'strue that hundreds upon hundreds of

[continued)William M. Raike, who has a Ph.D. in ap-plied mathematics from Northwestern Univer-sity, went to japan in 1980 looking for 64K-bit RAMs. He has been there ever since asa technical translator and a software developer.He can be contacted do BYTE, One PhoenixMill lane, Peterborough, NH 03458.

SEPTEMBER 1986 -BYTE 351

BYTE JAPAN

Computer usersare becoming moredemanding interms of whatthey want theirsoftware to do.

Japanese-language application soft-ware packages are available for Japa-nese personal computers. These in-clude word processors, spreadsheets,database managers, graphics pro-grams, business and accounting pro-grams, integrated software packages,communications programs, and soon, not to mention games. That's overand above the large amount of im-ported generic MS-DOS and CP/M

software (including many compilers,interpreters, assemblers, utilities, andother software development pack-ages) that runs perfectly well on lapa-nese personal computers. But all thatsoftware is merely a drop in thebucket compared to the enormousnumber of packages you can choosefrom if you have a PC, a PC AT, or awork-alike.

The growth in the level of sophisti-cation of the new software productsdeveloped for computers that obeythe de facto IBM standard is mind-boggling. And I say that from theviewpoint of having used and devel-oped software for more than 2 5 years!The increasing power and range ofavailable software has an explosivepositive-feedback effect, with usersbecoming more demanding in termsof what they want software to do.Also, the number of people buyingand using the software is dramatical-ly expanding.

Japanese software, in comparison,

hasn't yet shown this growth curve.Japanese-language software productshave not approached the circulation(numbers of copies in use) of prod-ucts like WordStar, Lotus 1-2-3. Smart-corn, SideKick, or ProKey. Except forword-processing software, Japanese-language versions of Multiplan,SuperCalc, and dBASE 11 are amongthe most popular application pack-ages. This doesn't necessarily dis-credit the creativity of the Japanesesoftware industry; rather, a large partof the reason for the low circulationis simply the low volume of mutuallycompatible computers, like thosefound in the IBM PC family.

Regular BYTE Japan readers knowthat my latest in a series of Japanesecomputers is the Fujitsu FM-16/3 andthat I'm very happy with it. But I don'theavily use its Japanese-language fea-tures, and 1 can't help feeling occa-sional twinges of regret at not havingaccess to the flood of useful software

[continued)

The Complete 68020C Compiler System.

I $595 under DOsJJ $1390 under XENIX [($2790 under UNIX

Superior compiler diagnostics help you minimize

recompilation and locate errors precisely. It's fully

documented and backed by professional support services.

YOU WON'T FIND A MORE COMPLETE PACKAGE -

Includes a full 68020 macro assembler, type-checking linker,and all the utilities you need to put your program in ROM,

Software Development Systems, Inc.

3110 Woodcreek Drive, Downers Grove, IL 60515Call today (312) 971-8170

In England call UnitC, Ltd., (0903)205233

UNIX is a trademark of AT&T.XENIX is a trademark of Microsoft.

Prices subject to change without notice.Call for host machine availability.

352 BYTE • SEPTEMBER I986

Train for the Fastest Growing Job Skill in America

Only NRI teaches you to service andrepair ail computers as you build

your own 16-bit IBM-compatiblemicro ,*

Now that computers are firmlyestablished in offices—and in homes,too—the demand for trained com-puter service technicians surges for-ward. The Department of Laborestimates that computer ser-vice jobs will actually doublein the next ten years—afaster growth rate thanany other occupation.

Total systemstraining

No computer standsalone.. . it's part of atotal system. And ifyou want to learn toservice and repair com-puters, you have to under-stand computer systems. Only NRIincludes a powerful computer systemas part of your training, centeredaround the IBM-compatible Sanyo550 Series computer.

As part of your training, you'llbuild this highly rated, 16-bit IBMcompatible computer system,assemble Sanyo's "intelligent"keyboard, install the power supplyand disk drive, interface the high-'resolution monitor and dot matrixprinter, even expand the memoryfrom 128K to 256K RAM. It'sconfidence-building, real-worldexperience that includes training inprogramming, circuit design, andperipheral maintenance.

No experience necessary—NRI builds it in

Even if you've never had any previoustraining in electronics, you cansucceed with NRI training. You'll startwith the basics, then rapidly build onthem to master such concepts asdigital logic, microprocessor design,and computer memory. You'll buildand test advanced electronic circuitsusing the exclusive NRI DiscoveryLab®, professional digital multimeter,and logic probe. Like your computersystem, they're all yours to keep aspart of your training. You even getover $ 1,000 worth of software,including the popular WordStarand CalcStar.

Your NRI total systems training includes all of this • NRI Discovery Lab' to design

and modify circuits • Four-function digital multimeter with audio cassette training

• Digital logic probe for visual examination of computer circuits • Sanyo 550 Series computer with "intelligent"

keyboard and 360K double-density, double-sided disk drive • High-resolution monochrome monitor • RAM expansion

module to give you powerful 256K memory • 120 CPS dot matrix printer with near-letter-quality mode • EasyWnter I,

WordStar, CalcStar bundled software • Reference manuals, schematics, and bite-sized lessons.

Send for100-pagefree catalog

Send the post-paid

reply card today for

NRI's 100-page full

color catalog, with

all the facts about

computer training.

Read detailed

descriptions of each

lesson, each experiment you

perform. See each piece of

hands-on equipment you'll

work with and keep. And

check out NRI training in other

high-tech fields such as Robotics,

Data Communications, TV/

Audio/Video Servicing, and more!

Mail the postage-paid card today,and see how NRI can prepare you foradvancement and new careers in theexciting world of electronics. If thecard has been used, write to NRISchools, 3939 Wisconsin Ave.,Washington, D.C. 20016.

NRI is the only home studyschool that trains you asyou assemble a top-brandmicrocomputer. Afterbuilding your own logicprobe, you'll assemble the"intelligent" keyboard...

.. then installthe computerpower supply,checking allthe circuitsand connec-tions withNRI's DigitalMultimeter.From there,you'll move onto install thedisk drive andmonitor.

'SCHOOLS

McGraw-Hill Continuing Education Center

3939 Wisconsin Avenue, NWWashington, DC 20016

We'll Give You Tomorrow. I

IBM is a Registered Trademark of InternationalBusiness Machine Corporation.

AlfTM

SEPTEMBER 1986 -BYTE 353

BYTE JAPAN

that works only on the PC the PC AT,or fully compatible machines. In lastmonth's column, 1 suggested thatsomeone ought to develop an add-onboard for the IBM PC to give it Japa-nese-language processing ability.Besides opening a wedge in the Japa-nese market for the IBM PC and itsclones, it might give me the excuse Ineed to buy such a machine. And thattopic brings me to one of the high-

lights of the recent MicrocomputerShow.

A PC AT Work-alike

The Hewlett-Packard people in Japanare called YHR which stands forYokogawa Hewlett-Packard. Althoughit's not their first venture into personalcomputers here, 1 wouldn't be a bitsurprised if the new Vectra-D Dual-Mode Workstation was the company's

Don't you d^erve the samehard disk backup protection

asGM,GTE,3M,GE,

UPS, Ibrd, Chrysler,

Westinghouse,

Polaroid, Shell,

Johnson & /&

Johnson,

Mobil, Proctor

& Gamble, The

United Nations, Merrill Lynch, Paine Webber,

Rockwell International, Hewlett Packard, Wells

Fargo Bank & Caterpillar, Inc.?

We think so.

That's why we created DSBACKUP, a powerful hard disk software utility designed to

quickly backup and restore any or all filesfrom an IBM PC/XT/AT or compatiblecomputer, non-IBM compatible

MS-DOS computers, and theMacintosh and MacPlus.

DSBACKUP v.2.4

FASTBACK v.5.03

Runs on Non-IBM compatible MS/DOS PC's

Backs up to Syquest cartridges

Backs up to Bernoulli Box

Backs up to any DOS subdirectory

Runs on the Wang PC in native mode

Runs on Macintosh and MacPlus

Backs up to tape mechanisms

Runs on the DEC Rainbow and Victor 9000

PRICE

Important companies trusttheir important data toDSBACKUP . . . shouldn'tyou?

CALL NOWTO ORDER:

1-800-231-3088

1-312-231-4540In Illinois or Alaska

only $69.95

DESIGN SOFTWARE 1275 W. Roosevelt Rd, West Chicago, IL 60185

MS-DOS is a TM of Microsoft, Inc. Macintosh and MacPlus are TM's of Apple Computer, Inc. Fastback is a TM of Fifth Generation Systems. Wangis a TM of Wang. Syquest is a TM of Syquest. Bernoulli Box is a TM of Iomega. DEC Rainbow is a TM of Digital Equipment Corp. Victor is a TM of Victor,

most successful project. What YHPhas done with the Vectra-D is to com-bine two computers into one.

The Vectra-D can work as an IBM PCAT-compatible computer. With an80286 microprocessor running at 8megahertz (in contrast to the 6-MHzclock rate that IBM uses), the Vectra-D can run Lotus 1-2-3, SideKick. Top-View, Symphony, Flight Simulator, andothers. If you type a command at theoperating system level, though, youcan switch from "English mode" to"Japanese mode." This turns theVectra-D into a computer runningunder version 3.1 of the Japanese-lan-guage MS-DOS operating system. Asa convinced and enthusiastic RAMdisk user, I was happy to hear thatYHP supplies RAM disk software thatworks under both English and Japa-nese modes. Of course, data filescreated by a program in one modeare all available to programs operat-ing in the other mode. As you mightexpect, however, if you try to displayfiles containing Japanese kanji orkatakana characters while in Englishmode, they appear on the screen asgarbage.

The kanji ROM contains both the JISNo. 1 and No. 2 character sets, plusa number of additional characters,totaling nearly 7000 characters. Kanjicharacters are displayed on-screen ina 24- by 24-dot font, which is quitereadable. You get 1024- by 768-dotmonochrome graphics in Japanesemode, with either 640- by 200-dot or640- by 400-dot monochrome graph-ics in English mode. The price you payfor having the Japanese mode onhand is that no color graphics areavailable, though such options may beavailable later. YHP wouldn't makeany promises. And if you buy a Vectra-D, the price includes a monochrome(green) monitor.

I saw the Vectra-D operating in Japa-nese mode and running several Japa-nese-language programs, includingthe jX-Word word processor andSuperCalc3. YHP says that the R:baseSeries 5000 database manager willalso work, along with GW-BAS1C, Lat-tice C, and a terminal emulator/com-munications package. In Englishmode, YHP says that most popular PCAT software will work, although tim-

354 BYTE • SEPTEMBER 1986

Inquiry 105

Inquiry 415

BYTE JAPAN

If you type a

command at theoperating systemlevel, the Vectra-D

switches from

English mode toJapanese mode.

ing problems could conceivably ariseas a result of the faster 8-MHz clockrate; there's no switch for selectingbetween 6-MHz and 8-MHz rates.

The Vectra-D system comes withsome impressive hardware as stan-dard equipment. Standard memory is640K bytes, expandable to 3.64megabytes. One 1.2-megabyte/360K-byte floppy disk drive is standard;there are two more internal shelvesfor one more floppy disk drive andone hard disk drive. You can ordereither a 20-megabyte or a 40-mega-byte internal hard disk. The Vectra-Dincludes seven expansion slots: twoare 8-bit bus slots, while the other fiveare 8-/16-bit bus slots. Both anRS-232C serial interface and aCentronics-type parallel printer inter-face are standard equipment, alongwith an RS-422 interface; that will bea handy feature when some of thenew (and less expensive) laser printersstart appearing on the market. Notsurprisingly, the Vectra-D also incor-porates an HP-IB interface, useful forinterfacing to other Hewlett-Packardequipment. And there's a socket onthe main board for installing an 80287numeric coprocessor.

The price for this kind of power andflexibility is a lot lower than 1 wouldhave guessed. In a version that comeswith one floppy disk drive and one20-megabyte hard disk drive, and in-cluding the high-resolution mono-chrome monitor as standard equip-ment, the list price of the Vectra-D isabout 1,300,000 yen. (In the past, I'vealways converted amounts in yen to

(continued)

How to tacklea 300 page monster.

Turn your PC into a typesetter.

If you're writing a long, serious document on your IBM PC, youwant it to look professional. You want MicroTgX. Designed espe-cially for desktop publishers who require heavy duty typesetting,MicroTgX is based on the TgX standard, with tens of thousandsof users worldwide. It easily handles documents from^smaller than 30 pages to 5000 pages or more.No other PC typesetting software gives you asmany advanced capabilities as MicroTjrX.So if you want typesetting softwarethat's as serious as you are about yourwriting, get MicroTgX. Call toll free800-255-2550 to order or for moreinformation.* Order with a 60-daymoney back guarantee.

MicroTEX

from Addison-Wesley

Serious typesetting for serious desktop publishers.

'Dealers, call our Dealer Hot Line: 800-447-2226

(In MA, 800-446-3399), ext. 2643. » ^^f-

Copying diskettes will never be easierthan pushing one button.

While your computer isbusy doing other tilings,your Victory Duplicator canbe making as many as eightcopies of a diskette at once—producing up to 400 copiesin an hour. DualMaster1"models can even makemultiple copies of two differentdiskettes simultaneously.Just insert the diskettesand press one button.

Copy different formats,flawlessly.

An automatic format analysisprogram makes it possiblefor the Victory Duplicator to

I 1986 Victory Enterprises technology Inc.

copy virtually any 5'/i, 3Vsor Scinch diskette. The systemtests for quality and accuracyat every stage of the process.

It practically servicesitself.

Each drive has a separatecontroller to maximize up-time. Simple diagnostics toverify drive alignment andindustry standard drivesallow you to maintain yoursystem without waiting foroutside service.

All at an attractive price.

Victory Duplicators offerfast copying, serialization,

copy protection, a commu-nications port, a four-monthwarranty and much more—all for one low price.

Call 1-80O-421-0103.

Call today for moreinformation. (In Texas,call 512-450-0801.)

w

RYV

VICTORYENTERPRISES

Technology, Inc.

8910 Research Blvd., Suite B2Austin. Texas 78758

Inquiry 414

SEPTEMBER

IYTE 355

BYTE JAPAN

their dollar equivalents. But exchangerates have fluctuated so much in re-cent months that I feel it will be moreuseful from now on to give the yenamount directly and to mention thedollar/yen exchange rate only whenappropriate.) At today's dollar/yenexchange rate of about 170 yen to thedollar, the Vectra-D carries a pricetag of about S7650. That's a prettysteep price, but not really much

higher than the NEC PC-98XA, for ex-ample, which is not compatible withthe PC AT.

YHP sees a market for the Vectra-Dprimarily in companies that want tohave access to the world of PC ATsoftware and hardware, includingCAD/CAM applications, and yet stillprovide Japanese-language capabili-ties within a fully compatible frame-work—all on a single computer. I

Finally a language that spansthe generation gap.

The language of solutions

There's only one reason for you to learn a new language—to do your workbetter and faster. That's exactly what the Arity/Prolog development environmentwill help you do. Our powerful tools, based on the general purpose programminglanguage Prolog, will speed up your development time significantly and allow youto solve a whole new range of problems.

No translation required

What good is a new language if you have to translate all of your existing pro-grams to use it? With Arity/Prolog, you can start speaking a fifth generationlanguage today without giving up the languages you're comfortable with.

Our development environment for the IBM PC family and all MS-DOS compat-ibles gives you Arity/Prolog, Arity/Expert System, Arity/SQL, and an interfacewith C, Pascal, Fortran, and Assembly, so you can build right on to your existingapplications. You'll be truly multilingual —what better way to span the genera-tion gap?

It can take you to new places

You'll discover amazing speed, power, and flexibility using the Arity/Prologprogramming environment, with its one gigabyte virtual memory, for conven-tional applications.

And if you're working in new territories, like expert systems, natural language,or sophisticated database management systems, you'll be speaking the nativetongue.

Speak it Freely

Our products are not copy protected and we charge no royalties, so you canuse them in as many end-user applications as you'd like. Why keep the languageof solutions all to yourself?

ARITY CORPORATION

358 Baker Ave., Concord, MA 01742 U.S.A.

617-371-1243

Yes, I'd like to be fluent in the language of solutions. Please: Send me information on Arity products Add me to your mailing list.

Name Title

Company

Address

City

Telephone.

-State.

Zip-

0069a

agree, and if YHP's distribution systemis up to the challenge, I see a brightfuture for the Vectra-D. YHP said thatit hadn't considered marketing theVectra-D outside of Japan, but l thinkit would find a lucrative, if small,market in American universities.

Yamahas Piano Player

Would you believe an upright pianowith a 3!/2-inch microfloppy disk driveand an LED display? The people atYamaha, who make MSX computersand musical instruments, have man-aged to reinvent the old-fashionedplayer piano, and they put in a fewnew twists while they were at it. Forabout 930.000 yen (less than $5500today), you can buy a piano that willstore on a microfloppy disk what youplay and at the touch of a button playit again. But simply using a magneticdisk to replace the old-fashioned per-forated paper rolls isn't all that thenew Piano Player does (that's thename Yamaha has given this gadget).Yamaha has combined modern sen-sor and servo technology with a high-quality conventional piano. Unfor-tunately, Yamaha was not very com-municative about the details of thesensor and servo techniques they use.But I can verify that this intriguing in-strument can accurately reproducethe dynamics, nuances, and phrasingof the original performance, besidessimply playing the notes. It's so goodthat it's eerie.

Yamaha plans to offer a floppy disklibrary of prerecorded performancesto address the home entertainmentmarket, although only a handful oftitles are now available. But they'llprobably sell a good number of PianoPlayers to professional musicians.After seeing and being impressed bythe Piano Player, one prominent oboeplayer said, "Imagine how helpful itwould be for my accompanist torecord one of our rehearsal sessionson disk. After he left, I could continueto practice!"

Next Month

Bill covers the Computex Show inTaiwan and finds surprising priceswith a focus on IBM compatibility. Theshow yields more unexpected hap-penings, too. ■

356 BYTE • SEPTEMBER I986

Inquiry 26

Six great reasons to join EIX today

• Over 140 microcomputer-related conferences:

loin only those subjects that interest you and changeselections at any time. Take part when it's convenientfor you. Share information, opinions and ideas infocused discussions with other BIX users who shareyour interests. Easy commands and conference digestshelp you quickly locate important information.

• Monthly conference specials:

BIX specials connect you with invited experts in lead-ing-edge topics-CD-ROM, MIDI, OS-9 and more.They're all part of your BIX membership.

• Jfikrobytes daily:

Get up-to-the-minute industry news and new productinformation by joining Microbytes Daily and What'sNew Hardware and Software.

• Public domain software:

Yours for the downloading, including programs fromBYTE articles and a growing library of PD listings.

• Electronic mail:

Exchange private messages with BYTE editors andauthors and other BIX users.

• Vendor support:

A growing number of microcomputer manufacturersuse BIX to answer your questions about their productsand how to use them for peak performance.

What BIX Costs. .How You Pay

ONE-TIME REGISTRATION FEE: $25

HourlyCharges:

(Your Timeof Access)

Off-Peak6PM-7AM

Weekdays PlusWeekendsS- Holidays

Peak7AM-6PM

Weekdays

BIXTymnet*

TOTAL

$9$2

$ll/hr.

$12$6

$18/hr.**

* Continental U.S. BIX is accessible via tymnet from throughout the U.S. at chargesmuch less than regular long distance. Call the BIX helpline number listed belowfor the Tymnet number near you or Tymnet at 1-800-336-0149** User is billed for time on system (ie.. Vi Hr. Off-Peak w/Tymnet = S5.50 charge.)

BIX and Tymnet charges billed by Visa or Mastercard only.

BIX Helpline

(8:30 AM-11:30 PM Eastern Weekdays)

U.S. (except NHJ-1-800-227-BYTEElsewhere (603) 924-7681

We'll

Send

You a

BIX User's Manual and Subscriber Agreement

as Soon as We've Processed Your Registration.

JOIN THE EXCITING WORLD

OF BIX TODAY!

Join BIX Right Now:

Set your computer's telecommunications program for

full duplex, 8-bit characters, even parity, 1 stop bit OR

7-bit characters, even parity, 1 stop using 300 or 1200

baud.

Call your local Tymnet number and respond as follows:

Tymnet Prompt

Garble or "terminal identifier"

login:

password:

mhis login:

BIX Logo—Name:

You Enter

a

byteneti <CR>mgh <CR>bix <CR>new <CR>

After you register on-line, you're immediately taken tothe BIX learn conference and can start using the systemright away.

Foreign access:

To access BIX from foreign countries, you must havean account with your local Postal Telephone & Telegraph(PTT) company. From your PTT enter 310600157878.Then enter bix <CR> and new <CR> at the prompts.Call or write us for PTT contact information.

BIX

One Phoenix Mill Lane

Peterborough, NH 03458

(603) 924-9281

Inquiry 450

SEPTEMBER 1986 • BYTE 357

THIRD GENERATION PROGRAMMERS FROM GTEK

GTEK MODEL 9000 (E)(E)PROM/MPU PROGRAMMER

If time is money, then let us save some for you. Thenew model 9000, using its quick pulse algorithms, canprogram a 2764 in 10 seconds. The 9000 offershigher performance than the competition has even be-gun to think about. Baud rates to 57,600. Supportsthru 5.12K standard, 8 meg wordwide parts withadapter, Cypress proms, mpu's. NO personalitymodules. As with our other programmers, RS-232, ASCII data formats, and flexible hand-shaking make the model 9000 compatible withvirtually any computer. Introductory price $749.

MODEL 7228 (E)EPROM/MPUPROGRAMMER The standard by which otherother programmers are judged. With thousandsin the field, the time proven 7228 has becomeour most popular programmer. Intelligent al-gorithms standard. Programs a 2764 in one min-ute. Supports devices thru 512K, mpu's, eeproms.cmos. NO personality modules. _^_ Pnce $599

MODEL 7956 GANG(E)EPROM/MPUPROGRAMMER

The 7956 can program eight2764's in one minute using intelli-gent algorithms. Standard supportthru 512K, eeproms, cmos, mpu's. A mustfor production emvironments. Available in

stand alone only configuration for $979

or with RS-232 interface for $1099

MODEL 7128 (E)EPROM/MPU PROGRAMMER The programmer that wont die.Thousands manufactured since 1982. Supports thru 256K. PRICE REDUCED to $389including free PGX communications software, a $95 value.

MODEL 705 Motorola'68705 family programmer. Transfers object code to 28 and 40 pinmpu's. Single key stroke operation $299

MODEL 7324 PAL PROGRAMMER The 7324 has a built-in compiler. It supports 20 and24 pin pals by MMI, NATIONAL, and TI, including the new shared product parts 20S10,20RS10, 20RS8, 20RS4. It operates stand alone or via RS-232 with PALX communicationspackage. Functionally tests parts after programming and securing. External compilers aresupported thru JEDEC and AHS object formats $1499

MODEL 7322 Same as 7324 but no stand alone capability $1249

UTILITY PACKAGESPGMX High Speed Communications Package. For IBM PC, AT and compatibles. Bi-directional data rates to a scorching 57600 bps. Provides flexible manipulation of Intel Hexfiles, both 8 and 16 bit formats, and binary files. Use with model 9000 $149

PGX Utility Package. For PCDOS, CPM, TRSDOS, ISIS, MSDOS. Use with 9000, 7956,7228,7128 $95

PALX Utility Package. Provides communication, download of Palasm source, JEDEC andAHS object files to models 7324, 7322, 7316pal programmers $95

CROSS ASSEMBLERS and SIMULATORS

You name the cpu, we've got the assembler. Simulators allow target software developmentand testing on your computer. Versions available for PCDOS, MSDOS, CPM. . Start at $200

ERASERS-We stock both Ultra VioletProducts and Spectronics for your selection.MODEL CHIPS TIMER LAMP PRICE

ACCESSORIES

CABLES-serial $30, parallel $30,custom Call For Quote

MODEL481/482/483 8048familyadapters $98

MODEL 511/512 8051 family adapter $174

MODEL 755/756 8755 adapter.. . $135

SPECIAL REQUIREMENTS? Call Us For A Quote On Custom OEM Programmers.

DE4

8

N

Tube

$80

PE14T

9

Y

Tube

$139

C25

25

Y

Grid

$349

C50

50

Y

Grid

$599

Run CPM Softwareon Your IBMor IBMCompatible

f

If you are a CPM user who wants to convert toMSDOS or PCDOS or a PC user who wouldlike access to the thousands of CPM programsin existance. here is the perfect solution to theproblem:CPEmulator from GTEK.

CPEmulator is the only field proven emulatorwhich emulates the complete Z-80 instructionset. Terminal attribute emulation is Televideo,Lear Siegler, or the AMSI standard. CPM.COM programs reside under PCDOS and areexecutable under PCDOS as well as 8086 por-grams.

Comes complete with COPYCPM, a disk con-version utility which allows transferring dataand programs to and from 54 different CPMdisk formats. Free CPM utility programs arealso included.

Need speed? CPEmulators Speed Kit includesNEC V20 processor. (8080 opcodes only)

CPEmulator Z80 emulator $199

CPEmulator 8080 emulator w/V20. . . . $199

Both versions $298

Call GTEK's CPM Hotline 1-601-467-9019

The Printing Solution:Model 8014 ProgrammablePrinter Switch

Finally a way to have asmany parallel printers asyou need even whenyou only have oneparallel port. WithGTEK's program-mable parallelswjtch, you canexpand as you re-quire. Perfect for net-works.With the spooling version,you can allocate available memory to fit yourrequirements, get multiple copies and more.

Both use ordinary IBM type parallel printer ca-bles, expand one port to four, and may be cas-caded in Star or Daisy Chain configurations foras many ports as desired. The desired port isselected with a simple escape sequence. Fornetworks, previous selected port is saved onPort Stack and returned to with Return EscapeSequence. Complete with power supply.

PRICE

Model 8014 Four port programmable REDUCED

switch $199

Model 8014-128K spool memory . . . .$339Model 8014-256K spool memory . . . .$399

G

TEK

Development Hardware/SoftwareP.O. Box 289, Waveland, MS 39576 U.S.A.601/467-8048; telex 315-814 (GTEK UD),INC.

358 BYTE

GTEK, PALASM, CPM, MS-DOS, PC-DOS, ISIS, TRSDOS, & CPEmulator are registered trademarks.SEPTEMBER 1986 Inquiry I49 for EPROM Programmer. Inquiry 150 for Software and Switches.

TURBOCHARGING MANDELBROT

by Dick Pountain

In July's column I gave an up-date on the Inmos Transputerand also touched briefly onthe topic of dynamic loadbalancing, a programmingtechnique that can be usedto optimize performance inparallel computing systems.Because the topic deservesmore space than I could giveit, this month I'll dig a littledeeper.

As you'll recall, one issuewhen dealing with parallelcomputing systems is toachieve a correct balancebetween communicationtime and computation time.With dynamic load balanc-ing, an Occam program canredirect the flow of data atrun time to keep the pro-cessors as busy as possibleand help achieve thatbalance.

To illustrate this technique,I'll look at a graphics demon-stration program written inOccam by Phil Atkin of Inmos'sDemonstration Software Group. Theprogram draws views of the Mandel-brot set (see photo), a gorgeous math-ematical object that wins hands downthe title "Fashionable Demo Programof the Year" and makes rotating three-dimensional cubes look passe.

I won't go into the full mathematicsof the Mandelbrot set here. (Anyonewho has been on a desert island andwants to refresh their knowledge thor-oughly should see A. K. Dewdney's"Computer Recreations" column inthe August 1985 Scientific American.)Essentially, the Mandelbrot set isgenerated by iterating a simple func-tion on the points of the complexplane. The points that produce a cycle(the same value over and again) fallin the set, whereas the points that

Aw Occam technique to

boost performance in parallel

computing systems

diverge (give ever-growing values) lieoutside it. When plotted on a com-puter screen in many colors (differentcolors for different rates of diver-gence), the points outside the set canproduce pictures of great beauty. Theboundary of the set is a fractal curveof infinite complexity (see "Fractals"by Peter R. S0rensen in the Sep-tember 1984 BYTE), any portion ofwhich can be blown up to reveal evermore astounding detail, including min-iature replicas of the whole set itself.The reason for the sudden populari-ty of a Mandelbrot program as ademo is that it's hugely computation-intensive but produces a pretty pic-ture that even mathephobes can ap-preciate—there aren't too many pro-grams like that around. The programrequires hundreds of floating-point

multiplications to calculateeach individual pixel and isthus a stern test of any pro-cessor. Mandelbrot is a sterntest even for a parallel com-puter because we can't pre-dict how long the calculationof any given point will take;the individual processors willbe kept busy for truly ran-dom periods, which makessimpleminded schemes forsharing out the work loadgrossly inefficient.

My own program in TurboPascal for the IBM PC takes4 to 8 hours to draw oneMandlebrot screen in fourcolors (without the benefit ofan 8087); a VAX-11/780 takesabout an hour. Phil Atkin'sprogram was designed to useseveral Transputers to drawMandelbrot sets interactive-ly; you can select an areawith the mouse and have itblown up while you wait,typically in 20 to 60 seconds.I describe the program here notbecause the world is crying out forfaster Mandelbrot sets, but becauseit illustrates nicely the technique ofdynamic load balancing.

The Mandelbrot Program

The program is structured in threemain sections: the system controller,the pixel evaluator, and the graphicsengine. The system controller takesthe x.u coordinates of slices of thevideo display screen and feeds themto the pixel evaluator: the screen iswritten concurrently in horizontalslices. The pixel evaluator performs

(continued!Dick Pountain is a technical author and soft-ware consultant living in London, England.He can be contacted do BYTE, One PhoenixMill lane, Peterborough, NH 03458.

SEPTEMBER 1986 • BYTE 359

BYTE U.K.

Listing 1: The outline program in Occam.

CHAN feedSystem, feedGraphics: — channels for

— communication

— between the

— processesPAR

systemController( feedSystem)

pixelEvaluator( feedSystem, feedGraphics)

graphicsEngine( feedGraphics)

Listing 2: PLACED PAR lets the three processes be run on three differentprocessors.

CHAN feedSystem, feedGraphics: — channels for

— communication

— between the

— processesPLACED PAR

PROCESSOR 0

PLACE feedSystem AT MnkOout:systemControI Ier( feedSystem)

PROCESSOR 1

PLACE feedSystem AT Iink0in, feedGraphics AT Iink0out:pixelEvaluator( feedSystem, feedGraphics)

PROCESSOR 2

PLACE feedGraphics AT linkOin:graphicsEngine( feedGraphics)

Listing 3: How to map a program

onto a pipeline of Transputers.

VAL IineSize IS 9:

— a constant

[I ineSize+1]CHAN pipe

ine:

— channels

for communicat

on

PLACED PAR

PROCESSOR 0

PLACE pi peline[0]

AT 1

ink0out :

systemController(

pipe

line[0])

PLACED PAR i = 1 FOR

i neS

i ze

PROCESSOR i

PLACE pipeline[i-1

] AT

1ink0in, p ipe1

ine[i] AT

I inkl

out:

pixeI Eva Iuator( p'

pe1ine[i] , pipe 1ine

ti+1])

PROCESSOR lineSize+2

PLACE pipeline[1ineSize] AT Iink0in:

graphicsEngine( p

peline[1ineSize])

the dirty work of computing thepoints in the Mandelbrot set, and hereis where the dynamic load balancingtakes place. The pixel evaluator is, infact, distributed over an array of pro-cessors (10 Inmos B001 EvaluationCards, each containing one Transputerand 64 K bytes of RAM) and works asa pipeline. Finally, the graphics engine(running on an Inmos BOOGIE Graph-ics Card) plots the points on each sliceof the screen in 2 56 colors at anoverall screen resolution of 2 56 by2 56 pixels. The outline program in Oc-cam is shown in listing 1.

This program merely says the threeprocesses are to run in parallel andcommunicate results to each otherover the two channels, and it could berun on a single Transputer usingpseudoconcurrency. The three pro-cesses can, however, be run on threedifferent processors by usingPLACED PAR (see listing 2), whichspecifies where each is to be run.

PLACE...AT maps the logicalchannel names onto the physicalTransputer serial links called linkOinand linkOout. A program might bemapped onto a pipeline of Trans-puters as shown in listing 3. An arrayof channels called pipeline replacesthe previous two channels, and thereplicator (PLACED PAR i = 1 . . .),which works like a FOR... NEXTloop, attaches them to an array ofparallel processes that forms thepipeline. This illustrates Occam's useas a hardware-configuration language;if you want to add more Transputersto the system, the only change re-quired in the program is to alter thevalue of the constant lineSize. Asimplified diagram of the 11 -processorsystem is shown in figure 1.

The actual Mandelbrot demo pro-gram uses a slightly more complexconfiguration, in which the pipelinebecomes a two-way affair with dataflowing in both directions (see figure2). This means that both raw and pro-cessed data flow through the systemcontroller, with the advantage that thesystem controller can now monitorthe output of the system, which isessential for dynamic load balancing.In the actual program, the pixelevaluator needs four channel param-

[continued]

360 BYTE • SEPTEMBER 1986

H0MEBASE20

IMPACTS JUST 80Kf

HOMEBASE 2.0

Free 800-Line Support7 days a week, 12 hours a day

Communications Programwith background processing

Background Electronic Mail

Calendar/Appointment System

Database Management System

Text Editor

Name, Address and Phone Rolodex11

DOS Services

Cut-and-Paste

Calculator

Autodialer

ASCII Table

Appointment Alarms

Template Maker

Screen Saver

Notepad

Onscreen Clock

Report Generator

Programmable Hotkeys

Mailing Label Printer

Area Code Directory

Type Ahead Keyboard Buffer

Expense Reporter

$69.95

TO ORDER YOUR HOMEBASE CALL NOW

24 hours a day, 7 days a week

800-523-0764

in California

800-323-5335

SIDEKICK

NotepadAutodialerCalendarCalculatorASCII TablePhone DirectoryCut-and-Paste$84.95

TRADE IN YOUR SIDEKICK!

30 Day Money-Back Guarantee*

*call for details

SideKick is a trademark of Borland InternationalInquiry 52

Brown Bag Software2105 So. Bascom Ave.Suite 164Campbell, CA 95008

SEPTEMBER 1986 -BYTE 361

BYTE U.K.

The pixel evaluatorcontains threeparallel processes.

eters to reflect this two-way data offlow.

THROUGHROUTING

The most interesting of the three mainsections is the pixel evaluator, whichdoes all the hard work and containsthree parallel processes itself. One isthe actual number-crunching process,genPixels, and the other two arethroughrouters. A throughrouter is a pro-cess that merely takes input data andpasses it to its outputs unchanged.However, a throughrouter can makean intelligent decision about where tosend the outputs. The pixelEvaluatorprocess contains one throughrouterfor raw screen slices and another forevaluated pixels.

The pixel throughrouter is quitedumb and merely permits finishedresults to be passed hand to handalong the pipeline to the system con-troller without being worked on by the

processors they pass through. Thescreen-slice throughrouter is thesmart one and actually performs loadbalancing. The algorithm it uses isvery simple, although the conven-tional (i.e., sequential) pseudocodeshown in listing 4 cannot capture theconcurrency that's the essence of thealgorithm. This algorithm guaranteesthat all the processors in the line arekept as busy as possible, yet it neednot specify exactly which processorwill evaluate any particular screenslice.

The systemController process firstfills up the pipeline with as manyscreen slices as it can hold and there-after supplies a new slice only whenit gets an evaluated slice back, in-dicating that a processor in the linehas free capacity. The controllerdoesn't know (or care) which one gotthe slice.

To minimize any latency in the sys-tem due to the finite time required tocommunicate results back to the con-troller, each component process ofthe pixelEvaluator pipeline actuallystores an extra screen slice in additionto the one currently being worked on.This means that the number crunchercan be fed as soon as it finishes a

slice, without waiting for the previousresult to traverse the pipeline. Thenumber of slices buffered in thisfashion is a parameter that the pro-grammer can play with to fine-tunethe system.

In Occam, pixelEvaluator at itsoutermost level looks like listing 5.The channels feedPixels, pixelTrigger,and pixelsOut are local to the processand shunt data and messages be-tween its components. PRI PARcreates prioritized parallel processes;the first process that follows it haspriority over the next, and so on. Low-priority processes can only proceedwhen higher-priority ones are waitingto communicate. In this case, the ef-fect is to give the WHILE TRUE loophigh priority (SKIP is a do-nothingprocess).

The pixel Bypass process is thethroughrouter for processed slices ontheir way back to the graphics engine.This process passes back data to theprevious processor in the line, mixingthe data neatly into the stream com-ing from processors that are furtherdown the line (see figure 3). In Occam,this process reads as is shown inlisting 6.

[continued)

0

1

2

- -

8

9

10

—*- R-^- G—** B

SystemControlie

r

C

omputing Elemer

ts

Graphics

Engine

Figure 1: A simplified diagram of the W-processor system.

raw data out -»>

R -*—G -*-B "*~

10

0

1

^_ ^_

7

8

9

GraphicsEngine

SystemContrail

sr

-*- proc

;essed data back

Comp

uting

Elements

Figure 2: Actual hardware configuration used for the Mandelbrot demo.

362 BYTE • SEPTEMBER I986

New Version 4.0

FOR THE IBM-PC

"Brown Bag Software's1 File Recovery System1"...more powerful than the Norton Utility Version 3.1."

—PC Magazine

We May Be Able To Save Your Job Or Your Life

Recover Erased Files w M ^J ~^^W Fix A Damaged File

Edit Any Spot On A Disk f WBk M Menu-Driven and "Goof-Proof

Change File Attributes W Context Sensitive Help

Recover Data From Physically Damaged DisksWorks On Hard And Floppy DisksNot Copy-Protected

• YES YOU CAN RECOVER ERASED FILES. Even*.*. WithBrown Bag Software's™ File Recovery System™ for the IBM-PCand compatibles, no programming experience required. If youcan erase a file,you can restore it.

• MENU-DRIVEN and "FOOL-PROOE. \ Do you have"one-of-those" in your office.. .we do too! That's precisely why wedeveloped Brown Bag Software's'" File Recovery System™ for theIBM-PC and compatibles! Our menu-driven system is a snap.

• FIX A DAMAGED FILE TOO! Sometimes files can get"glitchedrby a power spike, bumping into the hard disk, droppingthe computer on the floor, etc. We understand. That's why we'veincluded a full screen editor to repair any spot in any file, hiddenor otherwise.

: • IS IT HARD OR FLOPPY' We don't care. We work with floppydisk, most hard disks, and most IBM-PC compatible computers.

• HELP IS ONLINE TOO! We know that most people don'tread manuals. (But we include a comprehensive one anyway.) Andwhen you erase a file and need it recovered NOW you're not inany frame of mind to pour through any manual. We understand.That's why we've put hand-holding online. Just hit the ? key andthe help appropriate to where you are and what you want to do isimmediately available. The only thing better would be two aspirins!

• ()TI IER HANDY TOOLS... HELP: WHERE'D THE FILEGO? We provide menu-driven tools to change a file's attributes,change disk labels, modify screen color, locate a lost file that youknow is somewhere on the disk, but it's lost in a maze of sub-directories (you forgot which).

MQ5 SOUTH BASCOMAVE..CAMPBEU..CA9S008Inquiry 53

WITH YOUR CREDIT CARD, CALL NOW24 HOURS A DAY, 7 DAYS A WEEK

800-523-0764

IN CALIFORNIA

800-323-5335

I-19H6 SOfTWARE RESOURCE GROW. INC. All, RIGHTS RESERVEDSEPTEMBER 1986 • BYTE 363

,;,.^v,a

BYTE U.K.

The second part of pixelEvaluator.the smart thruPut process, watchesboth the stream of raw data and thegenPixel process and also maintainsa buffer for the extra screen slice. ThegenPixel process lets thruPut know ithas finished evaluating a slice bysending a signal on the channel pixel-Trigger In Occam, a simplified ac-count of thruPut's action is shown inlisting 7. In the actual demo program,a simple message protocol permitsthe contents of command to be used

to control the process (including stop-ping it, for which no provision is madein listing 7). The demo program alsoincludes a detailed buffering mecha-nism.

But the main point of interest is thePR I ALT construct, which is howthruPut monitors two channels atonce. In an ordinary ALT whicheverchannel—pixelTrigger or fromPrev—is ready first gets to input into com-mand (? command signifies an inputprocess), assuming that the relevant

Listing 4: Pseudocode for the load-balancing algorithm.

input a slice of screen

IF my genPixels is busy

THEN pass the slice on unchanged to the next processor in

the IineELSE send the slice to my genPixelspass evaluated pixels on to pixel throughrouter

Listing 5: The pixelEvaluator process at its outermost level.

PROC pixel Evaluator( CHAN f

romPrev, toPrev,

fr

omNext,

toNe>

0

CHAN feedPixels, pixelTr

igger, pixelsOut

:

PRI PAR

WHILE TRUE

PAR

pixelBypass( toPrev

, fromNext, pixe

IsOut)

thruPut( fromPrev,

toNext, feedPixe

Is,

pixeITr

igger

)

genPixels( feedPixe

Is, pixelsOut, p

ixe

ITrigger

)

SKIP

flag—thru putActive or pixelsActive—isTRUE. In a PRI ALT the same thinghappens. However, in the event of adead heat between the channels,pixelTrigger has higher priority andwins the coconut. Diagrammatically,the processes fit together as shownin figure 4.

The Number Cruncher

The final component of the pixelevaluator, genPixels, is quite straight-forward. It contains a number-crunch-ing process called mandelbrotPixel,which looks pretty much like aMandelbrot program would look inPascal (see listing 8).

Anyone who has written a Mandel-brot program will note that the onlytrick used here is to test the squareof the modulus against four to savea square-root calculation. The pro-cesses complexMultiply and so on doexactly what their names suggest;they're written using Occam floating-point library routines (Occam can sup-port both 32- and 64-bit reals, to theANSI/IEEE standard 754). The threedots in . . . PROC represent what youwould actually see in the Occameditor when the bodies of the PROCsare folded away, ThinkTank style.

The line beginning with [com-plex]REAL32 demonstrates Occam'sway of defining arrays; in this case, thearrays contain two 32-bit reals to rep-resent complex numbers. Occam 2provides record types in addition to

— from my pixel generator

1

1

"

mine"

buffer

\

i

mix

'theirs"

buffer

processor

processor

pixelBypass

Figure 3: The pixelBypass process.

364 BYTE ■ SEPTEMBER 1986

BYTE U.K.

arrays, but at present they can onlybe used in communications overchannels, as a convenient way to in-put or output complicated objects.

Load Balancing

A most interesting aspect of the gen-Pixel process is that it contains a PR IPAR that does the exact reverse of theone we saw earlier; that is, it sets theMandelbrot calculating process tolowest priority:

PRI PARSKIP

mandelbrotPixel( etc. . . .)

This should surprise you: In a hugelycomputation-intensive program, weare giving lowest priority to the com-putational part! The point is that in aparallel computer, computationalpower is a variable; you can add moreprocessors to get more power. (Thespeed of this program is, in fact,directly proportional to the numberof processors that are employed;doubling the number of processorshalves the time it takes to generate aMandelbrot.)

Keeping all those processors busy(i.e., load balancing) becomes the cruxof the problem. In this program, com-munication must take precedenceover computation; if we impede theflow of throughrouted data, the laten-cy time increases and the perfor-

(conlinued)

Listing 6: The pixelBypass process.

PROC pixelBypass( toPrev, fromNext, fromMo)CHAN mine, theirs:PAR

buffer( fromNext, theirs)buffer( fromMe, mine)mix( mine, theirs, toPrev)

Listing 7: A simplified account of thruPut's action.

PROC

thruPut( CHAN fromPrev, toNext, feedPixe

s,

pixelTr i

gger)

INT

command:

BOOL

thruputActive, pixelsActive:

SEQ

pixelsActive := FALSE

th

ruputActive := TRUE

WHILE thruputActive OR pixelsActive

=RI ALT

pixelsActive & pixelTrigger ? command

—

genPixe1

s

—

needs feeding

IF

bufferEmpty

pixelsActive := FALSE

~*~

genPixeis idle

s

TRUE

... send buffer contents to genPixel

s

thruputActive & fromPrev ? command

—

a new s

ice

—

has arrived

IF

NOT pixelsActive

... send new slice to genPixels and

set

pixelsActive to TRUE

bufferFul1

... we can't help, pass new slice

on

toNext

TRUE

... put new slice in buffer

pixelEvaluator

genPixels

r

>

thruPut

processor

r

processor

\

pixelBypass

processor

processor

Figure 4: The pixelEvaluator process.

SEPTEMBER 1986 -BYTE 365

64K-128K-256KDRAMS

80287-8 "80287-3

8087-3-8087-2

8087-1

BITTN6R

eieaRONics

899 SOUTH COAST HIGHWAYLAGUNA BEACH, CA 92651

(714) 497-6200

CALL NOW FOR FREE CATALOG

Inquiry 42

DATA ACQUISITION TO GO

INTERFACE FOR ANY COMPUTER

FREE IBM SOFTWARE

Connects via RS-232. Fully IBM com-patible. Built-in BASIC. Stand alonecapability. Expandable. BatteryOption. Basic system: 16 ch. 12 bitA/D, 2 ch. D/A, 32 bit Digital I/O.Expansion boards available. DirectBus units for many computers.

(201) 299-1615P.O. Box 246, Morris Plains, NJ 07950

ELEXOR

Inquiry H8

DOUBLE

THE OPTION CAPACITY

OF YOUR IBM PERSONAL COMPUTER

PC-XTRA

• DIRECT EXTENSION OFIBM PC BUS

• NO SOFTWARE CHANGES

• NO HARDWARE MODIFICATION

• STYLING CONSISTENT WITH IBAdd an those special options that you've beewtntlng without worrying about tilling youplug-In and back panel space

DEALER INQi

' F.O B SANTA ANA —

•CALIFORNIA RESIDENTS ADD 6% SALES TAX

P C HORIZONS, INC.

1701 E. Edinger, Ste. A6, Santa Ana, CA 92705(714)953-5396

Inquiry 262

BYTE U.K.

Listing 8: The mandelbrotPixel process.

PR0C mandelbrotPixel( INT co

lor, VAL INT x, y)

VAL complex IS 2:

— a complex number has

— two parts

VAL real IS 0:

— ... the reaI

VAL imag IS 1:

— ... and the imaginary

... PR0C complexMultiply(

comp

ex]REAL32 result, a, b)

... PROC complexAdd( [comp

lex]REAL32 result, a, b)

... PROC modulusSquared( REAL32

size, [compiex]REAL32

number)

[complex]REAL32 z, c, zsquared:

— declare some complex

— variables

VAL zero IS 0.0 (REAL32):

— zero as a REAL32

— constant

VAL four IS 4.0 (REAL32):

— ditto four

VAL maximum IS 256:

— maximum iterations

— for divergence

INT iterations, size

SEQ

z

rea I

:= zero

— set z to 0+0i

z

.imag'

:= zero

c

,rea I'

:= x

— c is the current

— point

c[reaI] := y

iterations := 1

complexAdd( z, z, c)

modulusSquared( size, z)

WHILE (iterations < maximum) AND (size <= four)

SEQ

complexMuItiply( zSquared

z, z)

complexAdd(z, zSquared, c

) — z"2 + c is the

— function

modulusSquared( size

*)

iterations := iterat

ons+

IF size <= four

— point in set; color

— it black

color := black

size > four

— point out of set;

— color it

color := iterations

mance drops off drastically as pro-cessors wait idly for data. The use ofdynamic load balancing relieves theprogrammer from worrying about thesynchronization of distributing thedata; the algorithm explained earlierguarantees that data always gets tothe hungry processor.

One of the great debates in theparallel processing world concernshardware topology. Various partieschampion their own particular shapes,from doughnuts to hypercubes and allthe rest. With the arrival of off-the-shelf computing elements like theTransputer, it's becoming easier to

play around with different topologiesand test out the claims. But programslike this one hint that hardwaretopology might not after all be themost significant determinant ofperformance.

Certainly much more research isneeded on load-balancing algorithmsin software. One problem is that manycurrent parallel machines are special-purpose devices that are hard-wiredand programmed at microcode level,making such investigation a realchore. High-level languages likeOccam can take the sting out of it toa remarkable extent. ■

APPLICATIONS ONLY

V

Sing Ye MacPraises

by Ezra Shapiro

There's no room on my deskfor a Macintosh mouse; afriend has suggested an all-terrain model equipped withgiant ribbed tires as the onlyway to negotiate through themounds of junk I collect. Idon't like the dull, echoingthunk of the Macintosh keyboard; itmakes me worry about rousing someangry subterranean being milesbeneath the surface of the earth'scrust. And I have about as much usefor a machine that boots up with acutesy, happy-face computer icon asI have for an automobile horn thatplays "The Yellow Rose of Texas." Butdie-hard MacSkeptic that 1 am, I'm be-ing won over by the software.

Apple promised us a blizzard ofbusiness programs when it intro-duced the machine. It never materi-alized; all we got were scattered flur-ries. Those of us—including a bunchof folks at Apple—who believed thatthe only way to guarantee good soft-ware was to have lots of it were dis-appointed. In the mad quest for quan-tity, nobody mentioned quality.

But that's exactly what we've beengetting of late. I haven't seen zillionsof Mac programs, but what's beencoming in has been first-rate. Inalmost every application category, Ican pick at least one Mac product thatruns rings around its MS-DOS com-petitors. Programmers are figuring outthe uneasy balance between friendli-ness and power, they're mastering thegood points—and sidestepping thebad ones—of the Mac ROM, andthey're producing excellent software.

If this keeps up, when it comes timefor me to pick my next-generationmachine, it may well be a Macintosh.

New Horizons in Outlining

I'm not sure whether More (LivingVideotext, $295) is an outline pro-

Mac software:

the spectacular More and thesolid FullPaint

cessor or an operating system. Theproduct is an extension of the basicconcepts of the original ThinkTank(which started life as an Apple II pro-gram before migrating to the IBM PCand the Macintosh), but it packs somany features and self-contained ap-plications that I could see using it tocover the bulk of my regular tasks. Inthat sense, More is a lot likeFramework, although it's far strongeras an outliner and not as well suitedto traditional database managementand number crunching. Whatever youdo call it, though, More is definitelyone spectacular piece of software.

If you're familiar with ThinkTank orReady! under MS-DOS or ThinkTank512 on the Mac, you've got a goodidea of where the program begins.You organize data as an indented out-line; any line can be treated as theroot of a tree, with subordinate head-ings and subheadings branching offbeneath it. Blocks of flat text or Mac-Paint drawings can be attached to anyheading. By clicking the mouse on aheading and collapsing or expandingthe outline, you choose how muchdetail you want to view at the mo-ment. Reorganization is also a simplemouse operation; select a heading,move the cursor to the new location,hit a command, and the heading withall its subsidiary data is transportedto the new spot. So much for therefresher course; if you want theheavy-duty theory, check out myblatherings a couple of years back("Text Databases" in the October 1984BYTE).

A number of the enhance-ments that differentiate Morefrom ThinkTank 512 havebeen lifted from LivingVideotext's MS-DOS offer-ings. These include hoisting(temporarily bringing a sec-tion of your outline to fullscreen for close work), cloning (cre-ating a duplicate of a heading thatchanges as the original is altered), andmark and gather (selecting a group ofheadings from different places andpulling them into a new section). Theinstant recall of outline templates, oneof the best ideas in Ready!, has beenimplemented in true Mac fashion; in-stead of assigning four outline chunksto function keys, you can install 16templates (32 with the 1-megabyteMac Plus) on a pull-down menu. Sam-ple templates for things like addressbook entries, personal records, dailyappointment calendars, and suchlikeare included with the program.Readyl's point-and-dial, which lets youselect a phone number for a voice calland have your modem dial it for you,has also been implemented. (I findthis a singularly useless feature, butI assume there must be someone outthere demanding it.)

More can handle six outline win-dows at a time, which can be tiled ver-tically, horizontally, diagonally, or ar-ranged as you see fit. ThinkTank 5I2'shot borders, which scrolled your textaway from a window's edge if youclicked the mouse anywhere on theborder, have been replaced with stan-dard Mac scroll bars.

Now we get to the fun stuff: Morehas moved outlining into presentationgraphics. You can now display an out-line as either a bullet chart or a tree

(continued)Fzra Shapiro is a consulting editor for BYTE.Contact him at P.O. Box 170040, San Fran-cisco, CA 94117-0040.

SEPTEMBER 1986 -BYTE 367

APPLICATIONS ONLY

chart. Anyone who has had to pre-pare transparencies for overhead pro-jection or who has been forced togenerate graphics for reports will lovethis.

You construct bullet charts byselecting an outline; the first headingbecomes the title, and subordinateheads become bulleted points under-neath it. The whole process can benearly automatic—any head with sub-heads becomes a chart. On the Macscreen, choosing the bullet-chart op-tion whisks you from your outline toa display of the chart as it will appear.A palette pops up from which you canselect type fonts, sizes, spacing,borders, numbering styles, and so on.

Tree charts are just as simple, onlythe outline becomes a series of littleboxes or circles connected with lines.Another palette lives along the leftborder; you can choose centered orflush text, line styles, orientation (topto bottom, bottom to top, left to right,right to left), drop shadows, and otheroptions. As tree charts can easily ex-tend over several pages, the charts ap-pear on a grid showing position on aprinted page, but the grid can beturned off.

All this stuff can be dumped to aprinter (in fact, if you've got a colorImagewriter, you can choose differentcolors for each level of an outline) orsaved in one of several file formats foruse by page-makeup or drawing pro-grams. If you'd like to use your Macas a presentation tool, you can set upa slide show mixing outlines, textdocuments, bullet charts, tree charts,MacPaint drawings, MacDraw charts,and so on. The show can be orches-trated to bring up screens at timed in-tervals, or you can control it in a wayanalogous to controlling a slide pro-jector, clicking the mouse to changescreens. If it's a working meetingrather than a formal presentation, youcan edit and reorganize the materialas you proceed.

The last of the high points I want totouch is computation; you can calcu-late simple columnar arithmetic withinan outline. Let's say you want torecord a day's expenses; you'd entereach expense item as a subheading,and the grand total would appear inthe title line.

Other reactions. The documenteditor is as good at text handling asany Mac word processor; 1 could bequite happy using it as my primaryeditor. Search functions are slick andwell executed, as is output formatting.And while I'm not usually a fan of Mr.Mouse, he's well suited to trundlingaround an outline, and More providesa complete enough selection of key-board commands to keep the mouseinterruptions to a minimum.

I do have a brief wish list. I'd ljjke tosee more on-screen help; this is a bigprogram that can be confusing. Someform of macro facility would be an im-provement, and a nice long list ofnumeric functions (for those of uswho are always calculating arctan-gents and net present value) wouldbroaden the scope of the product.

I'm really sold on the package, butmy testing has been done with betaversions 0.46 and 0.47 and a loose-leaf draft of the manual, so I can'tvouch for flawless performance. Someof Mores functions were not quitefinished (point-and-dial would point-and-dial me into a system crash), butthe bulk of the program was running,and I didn't spot any bugs that LivingVideotext hadn't warned me about.The company's other products haveall been pretty thoroughly debuggedby the time they've appeared on theshelves, and I'm assuming this onewon't be an exception.

Conclusions? This is superb soft-ware. An owner of ThinkTank 512might want to think carefully and lookat the list of new features before up-grading, but for everyone else, this isexciting news.

Beyond MacPaint

MacPaint was the razzle-dazzle partof the original Macintosh package; itwas the program that caused headsto turn and eyes to pop, the perfectshowpiece you'd use to answer thequestion, "What does the Mac dothat's so special?" It was somethingmore than a game, but something lessthan a serious artist's tool. As soft-ware, it started the juices flowing,whetted the appetite for computergraphics, and made you wonder whatwas next.The world has changed since then.

The Mac environment is accepted; itno longer needs to be demonstratedto a disbelieving public. And Applehas stopped bundling MacPaint soft-ware with its new machines.

These days, you either have tocadge an illegal copy of MacPaintfrom a friend or buy it from Apple for125 bucks (which seems a bit steepfor what used to be a freebie). Or youcan purchase FullPaint (Ann ArborSoftworks, $99.95), a program thattakes the MacPaint concept to thenext generation.

FullPaint looks a lot like MacPaint;in fact, it's so close that only an ex-perienced MacPaint user could tellthe difference at first glance. The ini-tial layout and the pull-down menusare almost identical to the original;making the transition from MacPaintto FullPaint is a snap. All the familiarfunctions have been preserved. Youcan draw freehand lines or constructhollow shapes in the same variety ofline styles, using the same mousecommands and keyboard shortcuts.You can fill screen areas with thesame 38 patterns. You can stretch,trace, rotate, invert, and reposition ob-jects; edit patterns and drawings pixelby pixel (what MacPaint calls "Fat-Bits"); and add text in an assortmentof type fonts and sizes. FullPaint usesthe MacPaint file format, so you cantransfer FullPaint artwork to other pro-grams with ease.

However, scratch the surface andFullPaint turns out to be loaded withsignificant enhancements. Some ofthem are simply convenience featuressorely lacking in MacPaint, but othersgive you new flexibility and power.

Freed from the tyranny of theoriginal Macintosh's 128K-byte limit,FullPaint lets you edit up to four paint-ings at once. The four windows can beshown singly, overlaid along a diag-onal, or tiled into four postage-stampboxes. Each painting now is borderedwith standard Macintosh scroll bars,so you can slide around a page with-out having to crank away with themouse.

You're no longer locked into theMacPaint screen layout. You canzoom a painting to full screen, eveneliminating the command line at thetop of the display. The two palettes

368 BYTE • SEPTEMBER 1986

APPLICATIONS ONLY

of tools can be dragged wherever youwant them. Tapping the space barhides them entirely; tapping it againbrings them back. Once you'vechosen a drawing tool, you can workon your painting without all the visualdistractions of MacPaint.

Then you've got a number of newways to manipulate images: free rota-tion to any angle, rather than Mac-Paint's 90-degree flips; Perspective,which lets you shrink or stretch oneedge of an object; Skew, which allowsyou to move one edge (thereby turn-ing a rectangle into a parallelogram,for example); Distort, which lets youpull out one corner of an image orpush it in.

Text in a dark region can be enteredas white on black. MacPaint is capableonly of black on white.

But my favorite improvements arethose that add precision controls tothe MacPaint shell. First, you can dis-play ruler lines (marked in your choiceof inches, picas, centimeters, or pixels)along the top and left edges of anypainting. Next, by selecting an optioncalled MouseSpot, you can bring upa small status box that tells you exactcursor position as x and y coordinatesmeasured in hundredths of units (ex-cepting pixels, where fractions don'tmake sense) from the upper left cor-ner of the page. Changing the unitsused in MouseSpot changes the rulerlines and vice versa. MouseSpot alsoshows the size of the object you'recurrently constructing, on both axesand along the diagonal. You can slowdown the mouse to pixel-by-pixel mo-tion by using FullPaint's MouseCrawl

Items Discussed

FullPaint $99.95

Ann Arbor Softworks Inc.308/2 South State St.Ann Arbor, MI 48104(313) 996-3838

More $295

Living Videotext Inc.2432 Charleston Rd.Mountain View, CA 94043(800) 822-3700in California, (800) 443-4310

feature. The combination of rulerlines, MouseSpot, and MouseCrawlgives you pinpoint accuracy impossi-ble with MacPaint.

My only real gripe is with the con-tinuation of a major MacPaint an-noyance: the invisible grid. You canturn on this feature, which locates ob-jects along lines eight pixels apart, butyou can't see the grid. Other graphicsprograms provide some form of visualreference; this is not the case withMacPaint or FullPaint. The grid isgreat for aligning text, but withoutMouseSpot you're practically runningblind. I find this particularly frustratingbecause I see the grid as an impor-tant area for future development.Imagine being able to select single ormultiple vanishing points, position ahorizon line, turn on a grid, and con-struct drawings in true perspective! Iguess I'll just have to wait for the nextrelease.

The program seems to be solid—as

well it should, considering how muchof its design is borrowed from Mac-Paint. I was able to crash it only once,after a long series of distortions, andalthough I tried mightily, 1 couldn't doit again. The crash, which merely gar-baged up one file without bringingdown either the system or the soft-ware, easily could have been theresult of using an older version of theMac operating system—or phases ofthe moon; I don't know. Overall, 1 waspleased with FullPaint's performance.

The documentation is complete andusually comprehensible, in spite of atendency to use MacSpeak (the jargonof FatBits, scroll bars, double-clicking,and such). The manual even has an in-dex, so I forgive the authors the con-stant use of "it's" whenever theyshould have used "its."

Should you buy the product? Well,if you purchase a new, unbundledMacintosh, you'd be foolish not to getFullPaint instead of MacPaint. Notonly is FullPaint a richer, more usefulprogram, it's cheaper.

If you already own MacPaint, youought to spend some time assessingyour needs before plunking down ahundred dollars for FullPaint. Do yousee MacPaint as merely an entertain-ment package—cute, but frivolous?On the other hand, do you need thepower of full-blown professional CADsoftware? In either case, FullPaint isoff the mark. But if you presently useMacPaint drawings in your work, orjust spend a lot of time relaxing withthe program, switching to FullPaintwill give you capabilities you'll wishyou'd had all along. ■

THE BEST CARE MEANS YOU GET THE BEST PRODUCTS

ONLY THE BEST IS GOOD ENOUGH

AUTOCOMPUTER is a professional manufacturer in Taiwan. Our complete line is automatically produced and100% tailed by the HP3065 CL/HL Auto test system. All of our products are with legal Phoenix bios and FCCApproval. OEMs & VARs Inquiries welcome.

PC/AT compatible including:

• 640K MAIN BOARD • HDD/FDD CONTHOLLER

• 1.2MB FLOPPY DISC • 20MB HARD DISC

COLOR/GRAPHIC CARD • PARALLEL/SERIAL CARD

200W POWER SUPPLY • MENU • CASE

• EXPORT PACKING • KEYBOARD

All kinds of PC XT/AT ADD-ON cardAC-T1002 EGA Card with AWARD Bios

• Supports IBM color graphics & Monochrome Adapters andhercules modes

• Bit mapped graphics in four planes.

• 640x350 resolution for IBM enhancer color display.

AC-T1001 PC/AT Main Board

• INTEL 6 MHz 80266 microprocessor up-gradable to8 MHz CPU.

• 640 K byte standard main memory on board up to 1M byte.

• In system can install to 16M byte.

PC/XT compatible Including:

• 256K TURBO MAIN BOARD

• TWO DRIVER • MENU

• DRIVER CARD • EXPORT PACKING

• COLOR/GRAPHIC CARD • KEYBOARD

• 135W POWER SUPPLY • CASE

' Full 16 color support in 640x200 & 320x200 pixels lorIBM color display.

• Supports 720x350 pixels for monochrome,i Supports 256K byte of memory using 6Kx4 drams.

• 8 I/O expansion slots: 2 with single 62-pin connector 6 withdual 62-pin and 36-pin connector.

■ On-board battery socket.

• Manual available.

4F. NO. 5, ALLEY 2, LANE SYH WEI,CHUNG CHENG RD., HSIN TIEN,TAIPEI,TAIWAN . P.O. BOX: 642 TAIPEI, TAIWAN. TELEX: 11888 APEXELEC TEL: 918-1800-4 FAX: 3948413

Inquiry 31

SEPTEMBER 1986 • BYTE 369

LETTERS

[continued from page 26)

tory entries do not change position)should survive sorting using his program.Thanks for the continuing coverage ofApple topics.

Dennis DomsKansas City, MO

Mr. Doms is absolutely correct. The pro-gram does not update the parent pointerfield found in a subdirectory's headerentry.

To fix the oversight, one should modifyline 380 of listing I (page 124) to includea GOSUB subroutine call as shownbelow:

380 IF A <= CO THEN

FOR K=1 TO 39: POKEDB+3+Bx39+K,ASC(MID$(NA$(A),K,1)): NEXT: PRINT ".";:GOSUB 500: GOTO 400

Then append to the listing the follow-ing lines of code:

500 REM THIS CODE IS ADDED TOUPDATE THE PARENTPOINTER

510 REM FIELD OF A

SUBDIRECTORY

520 REM AT THIS POINT, DL(J) CON-TAINS THE BLOCK NUM-BER OF THE ENTRY DEFIN-ING THIS SUBDIRECTORY.

530 REM THE EXPRESSION (B+1) ISTHE DIRECTORY ENTRYNUMBER WITHIN THEBLOCK SPECIFIED BYDL(J).

540 IF ASC(MID$(NA$(A),17,1)) <> 15THEN RETURN

550 POKE 791, ASC(MID$(NA$(A), 18,

1)):

POKE 792, ASC(MID$(NA$(A), 19,

D):

XX = PEEK(791) +256xPEEK(792):

REM XX = BLOCK NUMBER OFTHE SUBDIRECTORIESKEY BLOCK560 POKE 789, 0: POKE 790, PEEK(790)+ 2:

REM ALLOW READING OF THEKEY BLOCK INTO $9800,AN AUXILIARY I/O BUFFER570 POKE 776,128: CALL 768: IFPEEK(786) <> 0 THEN PRINT"ERROR IN READING BLOCK NO.";XX: STOP580 REM NOW UPDATE THE PARENTPOINTER AND WRITE ITBACK TO DISK590 YY = PEEK(789) + 256 xPEEK(790):REM YY = ADDRESS OF THE

AUXILIARY I/O BUFFER600 POKE YY + 4 + 35, DL(J) -

256xlNT(DL(J)/256):

POKE YY + 4 + 36, INT(DL(J)/256):

POKE YY + 4 + 37, B + 1610 POKE 776, 129: CALL 768: IF

PEEK(786) <> 0 THEN PRINT

"ERROR IN WRITING BLOCK NO.

";XX: STOP620 POKE 789, 0: POKE 790, PEEK(790)

- 2:

REM SET THE I/O BUFFER AD-DRESS TO THE ORIGINALBUFFER630 RETURN

Antonio C. SilvestriSpringfield, MA

Making RS-232C ConnectionsUniversal

Howard Mark (March Letters, page 30)misunderstood the operation of "her-maphroditic" connectors when he wrotethat Pete Klammer's scheme for simplify-ing the RS-232C tangle (October 1985 Let-ters, page 22) would not work. He as-sumed that when two such connectorswere mated, pin I would contact socket1, etc. But that is only one way of con-structing hermaphroditic connectors.

Suppose instead that a connector has,say five male pins, numbered 1 to 5, andfive female sockets, numbered 11 to 15.When two connectors are mated, pin 1mates with socket 11, and so on. Thisallows a completely symmetrical scheme:

Connector A

Safety Ground Pin 1 -- >

Data-out-from-me Pin 2 -->

l-am-not-busy Pin 3 -->

I-am-ready Pin 4 -->

Signal Ground Pin 5 -->

Connector B

>-- Socket 11 Safety Ground

>-- Socket 12 Data-into-me

>-- Socket 13 Are-you-busy?

>-- Socket 14 Are-you-ready?

>-- Socket 15 Signal Ground

Connector A

Signal Ground

Socket 15 --<

Are-you-ready?

Socket 14 --<

Are-you-busy?

Socket 13 —<

Data-into-me

Socket 12 —<

Safety Ground

Socket 11 --<

Connector B

<-- Pin 5

Signal Ground

<— Pin 4

1-am-ready

<— Pin 3

l-am-not-busy

<— Pin 2

Data-out-from-me

<— Pin 1

Safety Ground

I have followed here the (no doubt sexist!)convention that signals go from male pinsto female sockets. I have not used theRS-232C circuit names because thoseassume precisely the distinction betweenDCE and DTE that this scheme is intendedto eliminate. However, the 3-13 connec-tion would correspond to CTS or RTS, andthe 4-14 connection to DSR or DTR.

The problem with RS-232C is that it wasdesigned around the quite specific job ofconnecting a terminal or computer (DTE)to a modem (DCE). Borrowing it to use forserial connections in general has pro-duced the present muddle. As I've shownabove, it is possible to create a new stan-dard so that any connector can plug intoany other, and this is surely long overdue.So come on, connector manufacturers andstandards organizations—it's over to you!Robert LabournePalmerston North, New Zealand

1 read with interest the letter aboutRS-232C connections in the October 1985issue. 1, too, have long been dissatisfiedwith RS-232C because of the amount ofBrownian motion required in trying vari-ous combinations to get box A to talk tobox B. Too often the makers of box A andbox B simply use the phrase "RS-232C"without giving enough clues to allow theuser to make the correct combination. Ifwe make changes to the traditionalmethod. 1 don't think we should stop withonly changing the type of connectorsused. 1 suggest taking each of the pairsthat sometimes need to be crossed, andconverting each pair to a single wire. Yes,you can send and receive asynchronousDC full-duplex signals on one wire. Thebasic connection is illustrated:

The differential receiver is relatively insen-sitive to the accompanying transmitter,while it is fully sensitive to signals com-ing from the cable. The circuit provides theadded benefit of terminating the cable inits characteristic impedance at both ends.This method would allow you to connectany two of boxes A. B. or C using the samecable, and without making any jumperchanges in any of the boxes. It would notmatter if the boxes were computers, ter-

370 BYTE • SEPTEMBER 1986

LETTERS

minals, or modems. I don't think there isa need for hermaphroditic connectors; wecould just as easily demand that all boxeshave female connectors and all cableshave male connectors. We could connecta terminal to a computer with a singlecoaxial cable and a small phone plug.Neil R. KoozerOakland, OR

Sparking Interest inPersonal Supercomputers

Inmos is successfully programming theirparallel computers in Occam, but 1 thinkthe natural language/programming en-vironment for a parallel computer is theelectronic spreadsheet. lust have the sys-tem divide the spreadsheet into groupsof cells and assign a processor to eachgroup. The editing tools to create largespreadsheets already exist. There are alsomuch more experienced users of spread-sheets than Occam programmers. And justthink how big a spreadsheet could getbefore you'd have to defeat the "auto-matic recalculation"! The main extensionsneeded would be for nonnumeric inputand graphics output.

James R. Van ZandtNashua, NH

Especially enjoyed Dick Pountain's articleon the Inmos Transputer (BYTE U.K.: "Per-sonal Supercomputers," July). Since SirClive Sinclair is said to be working on asupercomputer using this chip, what canwe expect in 1987 or 1988? If develop-ment reaches fruition on the 40-Mb wafer-scale disk, that could make quite amachine combo!

Since the Acorn RISC chips are now be-ing sampled, 1 hope we can look forwardto a BYTE PC board using them.

Pountain mentioned Occam. Are booksavailable discussing this language?

Chuck TrierSpokane, WA

Juki Printer Maintenance

1 am writing about a maintenance prob-lem on the Juki 6100. Recently my ma-chine, which has run consistently for threeyears, began quitting in the middle of aprintout. 1 hit Reset and it would go awhilelonger and quit again. The problemworsened until I could only print a fewlines before this "check" condition wouldarise.

Calling my local dealer wasn't too com-forting. I was told it would cost $40 to $60per hour just to have someone look at mymachine, i had already upgraded thememory myself from 2K to 8K bytes with-out much difficulty, so I decided to takea look first.

Checking the user's manual, I learnedthat the "check" condition (the red LEDlighting up) results from one of three con-ditions: when your printer is out of ribbon,out of paper, or when you have depressedthe Pause switch. These are all considered"recoverable" errors.

The problem clearly wasn't related toPause or paper, so it had to be a signalthat the printer was out of ribbon. Ofcourse, 1 already knew that 1 had ribbonin the printer, but the machine didn't seem

to. 1 set out looking for a device that wastelling the machine that there was noribbon.

I took out the ribbon cartridge; nothing.I took out the black plastic platform thatthe ribbon cartridge sits on. Still nothing.Finally, I took out the black spool on theleft that the new ribbon feeds from. I sawa little black sensor that was covered withblack dust. The bottom of the spool wasdesigned as a reflector for that sensor. It

(continued)

USRobotics' COURIER 2400™...The most dependableat 2400- or 1200-bps

You get 2400/1200/300-bpsdata communications andevery first-class feature you'dexpect in an auto-dial, auto-answer modem...at a surprisinglyaffordable price.

But a modem at any price is onlyas good as its performance...Andthat's where Courier 2400 really shines.Don't take our word for it. Ask any ofthe nearly 2,000 electronic bulletinboard system operators who havechosen the Courier 2400 for one ofthe most demanding modem applica-tions imaginable.

Listen to the unanimous chorus ofpraise for the Courier 2400 from toughreviewers at more than a dozen highlyrespected computer magazines.

Consider Courier 2400's perform-ance record—less than one percentof all Courier 2400s sold have beenreturned for service, a record we chal-lenge the industry to match. And weback up our confidence in Courier 2400

with a full two-year parts and servicewarranty.

Quality, performance, value—yourmodem should be this good. It is, ifit's the Courier 2400 from USRobotics.

ttftobotics

The Intelligent Choice in Data Communications

8100 McCormick Blvd., Skokie, Illinois 60076Phone toll free 1 (800) DIAL USRIn Illinois (312) 982-5001

To learn more, send for ourFREE booklet; "24 Questionsand Answers on 2400-BPSModems"

NAME.

AnnRFRR

CITY

RTATF

7IP

COMPANY

TITI F

PHONE(

PERSONAL USE □ BUSINESS USE D

Inquiry 357 for End-Users.Inquiry 3 58 for DEALERS ONLY.

SEPTEMBER 1986 -BYTE 371

LETTERS

was set up with alternating black and silverspokes. The sensor is active when thesilver passes over it but not when theblack is present, 1 reasoned. If the spooldidn't continue to get alternating signals,the printer could assume the spool wasn'tturning and hence the ribbon had run out.I cleaned it and the bottom of the spoolbefore reassembling. The dust was justcarbon particles, but it was enough tocause a problem.

I have printed many perfect pages sincethen and I am still happy with my Juki.I hope that some of your readers can savemoney and frustration with this knowl-edge.

Marc J. Verber

Corrections on Runge-KuttaMethod

I would like to point out three errors thatappeared in "The Runge-Kutta Methods"(April). In table 6, Benku Thomas presentsthe constants for the Runge-Kutta-Vernerseventh-order method. Three of them areincorrect. B(ll,4) was -20325/5225, butshould read -20032/5225; B(l 1,6) was-42509/712 5, but should read -42599/7125, and B(12,7) was -71681/1166400,but should read -71687/1166400.

These corrections were taken fromThomas's reference 5 at the end of the ar-ticle. Using these new parameters, thismethod gives excellent results. For exam-ple, solving dyldx = y with solution y = e15= 3269017.372460315. Comparing this tothe exact result, the absolute error is-1.181 x 10"5, while the error criteriongiven by the method is 7.689 x 10"8. Thiscalculation was made using double preci-

sion (8-byte words) with VAX/VMSFORTRAN-77.

Francois LadouceurMontreal, Quebec, Canada

A Call for Help

Could you put me in touch with any in-dividuals who are working on the prob-lems of computer applications inarcheology?

Seamus Ross

Institute of Archeology

Oxford University

Oxford OXI 1DP, United Kingdom

Tel. 865-241214

For a BetterUnification Adapter

I am lapanese and am currently on assign-ment in Hong Kong. I own three NEC per-sonal computers.

1 read BYTE [apan: "An Innovative Pro-gram" (May) with great interest. But thearticle introduces only one operating sys-tem unification adapter, while complete-ly ignoring the equal or even better sys-tems for the NEC PC-9801 than EM/3 + :Plus-80 and Spark from Canopus Elec-tronics Co. Ltd. and Turbo-V from KyotoMicrocomputer Co. Ltd. I own both sys-tems and am very happy with them.

This might be because William Raike'scomputer is a Fujitsu, which is said tomake up only 10 percent or so of the total16-bit personal computer market in Japan.Consequently, he can enjoy only limitedsoftware availability. The NEC PC-9801series is doing in the Japanese 16-bitmarket what the IBM PC and its com-patibles are doing in the rest of the world.

I think Mr. Raike's article thus misrepre-sents the Japanese market for this kind ofproduct, and I would like to tell you andyour readers about the other two unifica-tion adapters.

The Canopus system includes a Plus-80card, which has a Z80 running at either6 MHz or 8 MHz and 64K-byte memory,and software. This has been on the marketfor three years and the company claimsthat there are now 6000 users. This systemwas originally for CP/M-86. The PC-9801with this board and accompanying soft-ware works just like the 8/16 system byCompuPro. The Plus-80's enhanced CCPchecks the extension of executable filesand switches to the appropriate CPU.Canopus introduced separately sold soft-ware called Spark for MS-DOS late lastyear. With the Plus-80 card and Spark, youcan read and write CP/M-80 and -86 diskswithout any modification. You are in MS-DOS, so you can enjoy MS-DOS's redirec-tion and piping just as with EM/3 + .

The Turbo-V system consists of three op-tions: software, V30 (/xPD70116), and a 180card, which employs a Hitachi HD64180(6.144 MHz) and 64K high-speed RAM.The first two were introduced last Octoberand a 180 card this March. If your PC-9801includes an 8086 chip, you must get a V30to replace the original 8086 as well as soft-ware. If, however, your PC-9801 is one ofthe new series with the V30, you can runCP/M-80 and -86 and MS-DOS softwareonly with the Turbo-V software. If you wantto run Z80-code CP/M-80 programs, youneed a 180 card. This system provides aprogram called MIA for media conversion.This lets you read and write CP/M-80 and

NEW FROM LOGICAL DEVICES INC:

i Up1M Bill 11 ■ 1

PROM PRO-8X "Model II

A stand-alone programmer starting at $895.00 canput you in business to program EE/EPROMs PAL/PLDs* Single Chip micros,* and Bipolar PROMs*+ EPROM IN-CIRCUIT EMULATION* capability thatcan speed up your development time considerablyand an RS-232 communications port that lets youintegrate it with your IBM PC as a total firmware andLogic development station.

All from a company with an excellent reputation forquality and service.

A UNIVERSAL DEVICE PROGRAMMER

372 BYTE • SEPTEMBER 1986

Inquiry 202 for End-Users. Inquiry 203 for DEALERS ONLY.

LETTERS

-86 files while in MS-DOS. My PC-9801 hasa V30 and can execute CP/M-80 (8080-code) programs three to four times fasterthan my old PC-8801 (Z80A-based ma-chine) can.

I understand that EM/3+ comes with aboard with a number of chips on it. Thisis for copy protection. You can copy thesoftware as much as you want, but youcannot run it without this board. The soft-ware checks the existence of the boardand if there is no board, it terminates theexecution. The PC-9801 has only two tofour slots (depending on which model)and it is simply outrageous that such aboard occupies one of those preciousslots. The other system's boards are solidsingle-board computers, and software is,of course, not copy-protected. EM/3+ isonly able to emulate a Z80, while theother two execute the object codes. As theprice is in the same range or even less forTurbo-V, 1 am sure you can easily tell whois the winner.

I hope Mr. Raike will pay more attentionto computer systems other than his ownand will cover the Japanese market inwider areas.

Masakazu SoneHong Kong

Sorting Large Files onSmall Memory

A sort that runs in 0(h) time? I know it'stheoretically impossible, but it can some-times be done in practice.

Jonathan Amsterdam touched briefly ona most significiant problem at the end ofhis article "An Analysis of Sorts" (Sep-tember). In "real world" sorting, internal

memory is rarely sufficient for the sort athand, and when the sort must use diskspace, the "key operations" that determinerun time are no longer comparisons andswapping but disk accesses.

My "real world" involved sorting 50,000to 60,000 records, each approximately 30bytes in size, on a DEC 11/73. The sort ranseveral times a week and if it wasn't doneby morning, other users slowed it downto a crawl. With task space limited to 64Kbytes, my program could handle only 300records in memory.

The solution: an algorithm that readsand writes each record twice. First, 300records are read from the file to be sortedinto a memory array. These are sorted byany handy routine (1 use Quicksort) andwritten, in order, into the work file. Theprocess is repeated for the whole inputfile. The work file now consists of sortedgroups of up to 300 records. Further, thegroups have been read and written se-quentially to reduce head movement time.

Next, the first record in each sortedgroup is loaded from the work file into thememory array, along with a pointer in-dicating which group each record camefrom. The array is sorted, and the lowestentry is written to the final output file. Thenext record (if any) from that group is readinto the first array position, and the arrayis again sorted by bubbling the new recordup to its proper place. This "write andreplace" process is repeated until allrecords of the work file have been trans-ferred to the output file.

Now, I'm sure this technique has a fancyname and is nothing new to many, but itwas new to me, and it taught me the power

of the meager space in internal memory.With a 300-entry array, 1 can sort 90,000records in two passes, and that's goodenough for my real world.

(P.S.—A colleague spotted a method ofexchanging the contents of two memorylocations without using a third location.The trick involves XOR, but 1 like the BASICversion: A = A + B, B = A-B, A = A-B.)John W. WardWaynesburg, OH

FIXES

The Price of BYSO LISP

In the review of BYSO LISP and Waltz LISP(William Wong's article in the July issue,page 293), we erred on one of the prices.The real price of BYSO LISP version 1.17is $150, not $69.95.

If you'd like more information, contactLevien Instrument Co., Sittlington Hill, P.O.Box 31M, McDowell, VA 24458, (703)396-3345.

Ordering SPICE Thesis

At the end of Wolfram Blume's "ComputerCircuit Simulation" (July), an editor's notetold how you could get a copy of "SPICE:A Computer Program to Simulate Semi-conductor Circuits" by Laurence W Nagel.That information needs updating. Here'show to get a copy of the document. Writea check for $30 to the Regents of theUniversity of California. Send it to Ms.Cindy Manly, EECS/ERL Industrial SupportOffice, 497 Cory Hall, University of Califor-nia, Berkeley, CA 94720. ■

LEADER IN DEVICE PROGRAMMING

•some devices requireoptional adaptors.

FEATURES:

■ Stand-Alone/RS-232

■ 512K bits RAM buffer

■ EPROMs 2716-1 MEG

■ Capacity: Two EPROMs(set programming)

■ Accepts Intel, Mot. Hex files

■ Accepts JEDEC files

■ Optional Keypad/Alpha display

■ Tilt stand and carrying handle

■ Works with Exatron IC handler

also available: UV ERASERS andGANG programmers.

All products 100% made in U.S.A.

CALL 1-800-331-7766

Logical Devices Inc. 1321 NW 65th PlaceFt. Lauderdale, FL 33309

TELEPHONE

TELEX

U.S.A

(305) 974-0967

383142

Canada East

(514)694-7710

05-823554

Canada West

(604)291-8866

04-356533

England

0652-688626

527339

Itly., Ger„ Swss

(02)688-2141

845 79734

Australia

(03)560-1011

790 35703

(02)736-1564

790 82635

WITH AN UNUSUAL PRICE TAG: $895

Inquiry 204 for End-Users. Inquiry 205 for DEALERS ONLY.

SEPTEMBER 1986 'BYTE 373

SOFTSTRIP*

NOW OFFERS YOU SOMETHING IN

NEVER BEFORE AVAILABLE...

£3]

-¥^

1*5

A,

CONVENTIONAL DATA HANDLING

THE SOFTSTRIP SYSTEM

A CHOICE.

Until now you were stuck with disks.

No more. Install our unique STRIPPER™ softwareon your personal computer today and discover themany benefits of the fastest, easiest, least expensiveway to handle information.

STRIPPER lets you print-ON PAPER-your ownmachine readable Softstrip data strips using your dotmatrix printer. The Softstrip System Reader reads thatinformation into a computer rapidly. With STRIPPERand the reader, your PC and printer become part ofthe most versatile information handling systemavailable.

With this system you can do anything you wish withany data you have in your PC - ON PAPER.

DATA ENTRY: Why use keystrokes when you caneliminate them with data strips? Whatever thedocument - invoices, packing slips, memos, letters,sales reports, the list is endless — simply print a datastrip right on the same printed page. Now you havea document that is both human readable and machinereadable. A typical document can be entered in only15 seconds using data strips. And, it ends keystrokeerrors forever.

DATA DISTRIBUTION: Why copy disks? It's timeconsuming and expensive. Softstrip data strips willend all that. Simply photocopy as many data strips asyou like and send them by mail. Data strips ignorefolding, coffee stains, ink marks and, by the way,

magnetic fields. And if you're using telecommunica-tions, you can stop making the phone company rich.

DATA STORAGE AND RETRIEVAL: Why have afile of disks and a file of paper? Eliminate one withSoftstrip data strips. File the data strip with the docu-ment. Better still, print the strip right on the document.Then put it in a file or binder.

Retrieval is simple. To find existing data, pull thedocument and its related data strip from the file.They've been stored together. Then use the readerto enter the data. No more hassle trying to matchdocuments with the right disk — if you can find it.

DATA TRANSFER: Why bother with cables,modems and phone lines to move files betweencomputers? A Softstrip data strip generated by anIBM PC can be read into another PC, or compatible,an Apple or even a Macintosh. If you work at homeon a Macintosh, make a data strip on your printer,take it into the office and read it into your IBM PC.Simple. And we've created the utilities to let you dothat easily. (See Application Notes on opposite page.)

Fascinating, isn't it? Anything you can do with diskscan be done with the Softstrip data strip system —faster, easier and at lower cost — ON PAPER.

All you need is STRIPPER software at $19.95 andthe Softstrip System Reader at $199.95.

DATA HANDLING

SEPTEMBER CASE HISTORY

Nick Turner, editor of Dr. Dobbs Journal, has beenmaking his own data strips to back up and storearticles, listings and other important materials.Turner notes that the STRIPPER™ software "createscompact, machine readable archives that are immuneto dust, dirt and magnetic fields". Strips that Turnerprints on his printer are filed in a loose leaf binder,along with the appropriate article. This permits him topull the strip from the binder and read it back into hiscomputer quickly using the reader. The method savesdisk file space, since once an article has been printed, maintaining it on a disk forrevision isn't required.

The STRIPPER system has solved another problem for the busy editor, inter-machine file compatibility. Using the Softstrip® System, Turner can transfer filesbetween his PC-clone and his Macintosh "with a minimum of fuss".

APPLICATION NOTES

ACT NOW!! Don't delay.See your local SOFTSTRIPdealer or call us at 1-800-533-7323.In Connecticut: 203-573-0150.

Users' Groups: Call forspecial User Group deals.

"It's about time we had a way to store files on paper in machine readable form

Turner Comments. Mr. Turner's comments are his own and do not reflect the opinion of the publication.

On the other side of this ad we said you can move data between different programs

— on paper.

Using Softstrip data strips you can!

For instance move data between AppleWorks and Excel and back. Or Lotus 1 -2-3

to and from AppleWorks.

We've created a series of several dozen Application Notes on Softstrip data strips.

These lead you through simple steps to make the file transfer as easy as possible.

Here are just a few examples:

• AppleWriter to or from MacWrite.

• dBASE to or from Appleworks.

• WordStar to or from AppleWriter.

• WordStar to or from MacWrite.

• Framework to PageMaker.And more are coming.

These strips contain "TheIRA Calculator," a work-sheet for calculating returnswith either Lotus or Excel.To receive the completeApplication Note, call1-800-533-7323, or write toCauzin.

CAUZIIM

835 South Main StreetWaterbury, CT 06706(203) 573-0150

Inquiry 61

IBM is a registered trademark of International Business Machines Corporation.

Framework is a trademark and dBASE is a registered trademark of Ashton-Tate.

PageMaker is a registered trademark of Aldus Corporation.

Cauzin and Softstrip are registered trademarks and STRIPPER is a trademark of Cauzin Systems Inc.

WordStar is a registered trademark of MicroPro International Corporation.

Lotus and 1-2-3 are registered trademarks of Lotus Development Corporation.

MacWrite, AppleWriter and AppleWorks are trademarks and Apple is a registered trademark of Apple Computer.

Excel is a product of Microsoft Corporation.

Dr. Dobbs Journal of Software Tools is published by M&T Publishing, Inc. under license from People's

Computer Company.

Macintosh is a registered trademark of Mcintosh Laboratories licensed to Apple Computer Inc.

-I

A

CHAOS MANOR MAIL

Conducted by ]erry Pournelle

Mac Pros and Cons

Dear Jerry,

For the past few days, I have been brows-ing through old copies of BYTE, lookingfor information that I may have missed thefirst and second times through and espe-cially to reread your columns. 1 must say,(learn more every time 1 reread them. Atany rate, 1 feel compelled to write you afterseeing once again your remarks concern-ing Apple's Macintosh.

1 am a Macintosh owner, and I like themachine overall. However, 1 have to agreewith some of your complaints about it.The most important problem with the Macis the speed of disk access (when usingfloppies). 1 once read a rationalization thatexcused the slow disk access on thegrounds that the Mac needs to load somuch more information upon return to theFinder. Indeed, I've written a couple ofprograms in Microsoft BASIC that use diskfiles, and access times are acceptablyquick in that use. However, the fact re-mains that loading an application is stilldreadfully slow.

One problem 1 have with the Macintoshis one you haven't addressed, the difficultyof really programming an application.You've mentioned that you have Mac-Modula-2 but have never said whether youhave done anything with it. I purchaseda Pascal compiler from TML Systems ofMelbourne, Florida, along with bothvolumes of Macintosh Revealed by StephenChernicoff (excellent descriptions of mostToolbox routines). I have since sold thecompiler. Why? Your old documentationcomplaint. The manual that came with thecompiler was just about useless, unlessyou have already done extensive program-ming in Pascal on the Macintosh. As I con-sider myself to be a novice as far as pro-gramming is concerned, the documentsdid me no good. I quickly gave up on it,disgusted. Maybe I have a learning im-pediment or something, but the Mac is noteasy to program. I now appreciate why ittook six months to a year for any decentapplications to appear for the machine.

I'm learning MS-DOS out of necessity,since that's most likely what I'll be con-fronted with when I start working as a pro-grammer, but I want to learn how to pro-gram the Macintosh because I love it.

Despite my complaints about the machine,Apple did so many things right, and its im-plementation of an extremely simple userinterface is a step in the right direction.It's unfortunate that most people willnever really appreciate the work andenergy that goes into a well-designedMacintosh application.

Philip E. JurgensonMankato, MN

I don't expect there will ever be an endto the Macintosh debate.

The first 1 ever heard of the Mac waswhen Pamela Clark, then editor in chiefof Popular Computing, told me thatApple was coming out with somethingwonderful that she couldn't tell meabout. I continued to hear how great itwas; the mountain was in labor. Whatcame forth was the 128K-byte Mac thatsold for $3000, followed by an over-priced upgrade that did nothing for theearly loyalists who had bought theoriginal.

On the other hand, 1 agree: Applechanged the micro world forever with theMac operating system. It was too slow,and some parts of it were too cute, butit sure beat A > all hollow. Unfortunate-ly, much of the machine was dictated byideology, not reason.

It's probably all moot. Apple is mov-ing ahead with a machine related to theMac in the same way that the new FordTaurus is related to the Edsel, while Atariand Amiga have 68000 machines thattake Apple's innovations and go off innew directions.

Hove it when a bunch of smart peoplestart competing to give me better ma-chines.—Jerry

Sales Help Wanted

Dear Jerry,

My family manufactures custom alumi-num architectural products for domesticand industrial purposes. Our modusoperandi is, typically, as follows: Clientsphone us and specify a product, say, win-dow series G2. Then they proceed to giveus some dimensions, number of shutters,glass thickness, number of units, etc. Thesalesman, after a brief discussion with theclient, elicits any other information

deemed relevant, like cost, practicality, etc.So far, so good. The salesman then pro-vides an estimate based on the cost of thematerials and submits it to the client forapproval. Invariably, the client requests achange, in which case the salesman mustresubmit weeks of work. This is particular-ly true with industrial clients. Such delaysdo us no good. Furthermore, salesmentend to depart frequently, and trainingnew people to perform tedious tasks is nofun. Finally, after the client is satisfied, thesalesman prepares a bill of materials thatdetails, down to the smallest rubberwasher, the parts to be removed from ourinventory and sent off to the site.

Do you know of any software that willeliminate the need for these repetitivecalculations? 1 envisage a situation wherea client calls up and presto! an estimateis ready, a bill of materials is available atthe press of a button, and the inventoryis just waiting to be depleted.

Sanjay A. BulchandaniStanford, CA

General program, no; I'd think youneed a special program. Fortunately, itneed not be written from scratch. 1 thinkit could be handled with an applicationprogram in dBASE II, but if I were youI'd go to Guru from Micro Data BaseSystems (P.O. Box 248, Lafayette, IN47902, (317) 463-2581); costly, but worthit given the size of the problem. You'llhave to get a programmer to customize,but that shouldn't be too difficult.

Guru is a sort of combination expertsystem and database; Til have a fullreview in a later column. Meanwhile, I'mimpressed.—Jerry

Thumbs Up on Top-DownProgramming

Dear lerry,

I found Mr. Suits's letter to Chaos ManorMail (March) most eloquent in his criticismof top-down programming. Unfortunately,I couldn't disagree more strongly withboth the analogies he chose and the con-clusions he drew from them. Musicianstinkering with notes, artists idly sketching,and writers experimenting with the effectof words are not good comparisons for

{continued)

376 BYTE • SEPTEMBER 1986

THE DAISY THAT TAKESYES FOR AH ANSWER

Y«J

[n^

□ To set up the Facit D2000 daisy-wheel printer, just respond toprinted questions using "yes" and"no" keys. This permits almostinstant changes betweenapplications and host computers.

□ The printer produces very high letter qualityprinting. And it does it fast - 24 cps.

□ Interfaces with most computers including IBMPCs. And with most standard software, too. Bothparallel and serial interfaces are available.

□ An automatic paper injector takes care of theentire paper loading operation when using fan-fold and single cut sheets.

□ The D2000 can be equipped with inexpensivetractor and cut-sheet feeders handling both Euro-pean and American paper formats.

AUSTRALIA:EAI Electronics Associates Pty Ltd.,427-3322. AUSTRIA:Ericsson Information Systems GmbH,0222-613641.BELGlUM.Ericsson S.A.,02-2438211.CANADA: Facit Canada Inc.. 416-821-9400. CYPRUS: l.BM (Lillytos) Ltd 51646 34. DENMARK: Facit A/S, 02-92 2400. FINLAND:OY Facit, 90-42021. FRANCE:FacitS.A., 1-4780 7117. G/?£/177«W7'AW.Facil 0634-401721. GREECE:Compuler Application Co. Ltd.,01-67197 22.//OA'G/S'OA/G.-Gilman&Co.Ltd.,5-89300 22.ICELAND:Gisli J. JohnsenHF 354-6412 22./WDM: Forbes Forbes Campbell &Co.Ltd..22-268081./«EL/l/Va-EricssonInformationSystems Ltd., 7530 93./7>lLK-Facit Data Pro-ducts S.p.A.. 039-63 63 31. JAPAN: Electrolux (Japan) Ltd., 03-479-3411. KOREA: K.D.C. Corporation, 723-8555/8236. THE NETHERLANDS: Ericsson InformationSystems H.V..03480-70911.NEWZfi4MNa-Northrop Instruments and Systems, 501-801,501-219.NO/tIV/lK-EricssonmformationSystemsA/S,02-35 58 20. PORTU-GAL: Regiseonta Sari, 1-56 00 91. SINGAPORE: Far East Office Ecipts Pte Ltd., 745 82 88. SPAIN: Facit, 91-4571111. SWEDEN: Ericsson Information Systems SverigeAB, 08-28 28 60. SWITZERLAND: Ericsson Information Systems AG. 01-3919711. WEST GERMANY: Ericsson Information Systems GmbH, 0211-61090.

□ There is no other way to producetypewriter quality printings than touse a daisywheel printer.

□ The printer won't take up muchof your desk space as the footprint

is very small.

□ No annoying noise is produced thanks to aspecially designed, rubber enclosed concreteplaten.

□ Facit D2000 is not merely a converted type-writer. It is specifically developed for your pro-fessional computer printer applications.

Inquiry 420Head Office: Facit AB, S-17291 Sundbyberg. Sweden. Phone: (8) 7643000.USA: Facit Inc. P.O. Box 334, Merrimack. NH 03054. Phone: (603) 424-8000

CHAOS MANOR MAIL

good programmers and the environmentthey work in. While creativity is often in-volved in programming (or any profession,for that matter), it is not, like true art, acreative end in itself but usually anendeavor with a practical goal in mind. Amuch better analogy with a programmerwould be an architect, whose craft re-quires discipline, who pursues work witha pragmatic end, and who is not withoutcreative and aesthetic considerations. Wewould have better programmers if thesame risks were involved in writing codeas designing a building, where crushedpeople, not bugs, are the result of designsloppiness. One does not easily imaginean architect saying, "Tb hell with theblueprint! I've got a hunch two beams willhold this baby just fine." Everyone resentsrules and constraints, yet we should recog-nize their reason for existing. Efficient,free-form code is as rare as arrogant pro-grammers— who think they're above struc-tured programming—are plentiful.

Of course "ideas do not usually jump,full-blown, to the conscious mind." andyes, "the very doing" does help establish theframework or structure of a project. Thusthe need for the preliminary design work

that most successful programmers use intheir profession. The introductory layoutof a Pascal or Modula-2 program is not"ceremony"; it has a purpose. If that pur-pose is obscure to Mr. Suits or tries hispatience ("1 find it difficult to begin scan-ning a Pascal program without thinking.'Damn it! Get to the point!'"), it's becauseit helps people to find the point. I'm suremost of us have reviewed source codewe've written in nonstructured languagesyears earlier, only to find that somethingthat was easily understandable when freshin the mind was hard to follow some timeafter the event. Doubly frustrating is fora second party to wade through the mess.That 1 wouldn't wish on anybody, yet ithappens 10,000 times a day in businesses,schools, and government offices acrossthe country. Old computer languages andbad habits die hard.

James Baker

Agreed, completely, and thanks. Onething I like about CBASIC is that you can,if you're so inclined, write highly struc-tured code, with everything declared (thecompiler can detect undeclared variablesif you tell it to} and generally top-down

What is a Best Western?

"My homeofficewhereverI travel!'

The right place at the right price.

Make reservations at any Best Western,see your travel agent, or call toll-free

1-800-528-1234

INDEPENDENT

WORLDWIDE

LODGING

"World's largest chain of

independently owned

and operated

hotels, motor inns and resorts"

organization. Not long before he died,my mad friend Maclean said thatCBASIC wasn't really BASIC at all; it wasfar too good. But then he was prettythoroughly anti-BASIC, largely because inthe early days you wouldn't believe thespaghetti that was served as programs.

For a job that's to be run once andonce only, it hardly matters what lan-guage you use. For something you mayhave to work on again after an absenceof six months, you'd better use, if not astructured language, at least good orga-nizational methods.

The controversy is over whether or notthe language ought to force you to de-velop good habits.—Jerry

z-100 and Borland

Dear lerry,

1 wanted to thank you for your favorableremarks about the Zenith Z-100 in theMarch issue of BYTE. The Z-100 has notreceived the attention it deserves, espe-cially from software vendors. To give anexample, 1 purchased Turbo Pascal lastsummer. When 1 attempted to order Tur-bo Graphix Toolbox for the Z-100, I wastold that it was not available and that theywere not sure if and when it would everbe available. What is especially irritatingis that in the back of my Turbo Pascal ref-erence manual, and on various orderforms that came with the package, theyspecifically mention that Turbo GraphixToolbox is available for the Z-100. I feelthat I was deceived by this material pub-lished by Borland. Since they quote youas saying this is a high-quality product. 1thought you should be aware of the situa-tion.

Robert R. JuneGrand Forks, ND

The Z-100 with a PCompatible boardis still a darned good option, if only be-cause it runs WRITE and a whole messof other CP/M programs as well as PC-DOS stuff. On the other hand, things flowin the computer world: what was bestlast year isn't necessarily so this year.

Borland told me they were going to doTurbo Graphix Toolbox for the Z-100; ap-parently they decided not to go ahead,which is a real pity. I hope they'll changetheir ads, or better yet, put someone on-to doing it. Alas, though, since Zenith hassold mass quantities of the 248 fa verygood machine) to the government, in-cluding the service academies, they've letthe Z-100 fall between the cracks. I canunderstand, given market realities, but it'sa pity; I'd hoped that dual-processor ma-chines would reunite the micro users. Ohwell.—Jerry ■

378 BYTE • SEPTEMBER 1986

With all these SoftLogic Solutions,you could run out of problems.

Now there's a whole family of low-cost, easy to use Softlogic software for the IBM PC, XT, AT, and compatibles.They'll save you time, aggravation, and lots of money. Got a problem? Check out these Softlogic Solutions.

Disk Optimizer—Speeds up yourdisk by cleaning up your files.

You may not notice, but your hard drive is get-ting slower. Because your files keep getting frag-mented and scattered on your disk. Reading,writing, everything takes longer, because yourdisk is working harder. Disk Optimizer puts backthe speed by putting your files back in onepiece—where they belong.

m

Software Carousel7—The easy wayto move from one program to another.

What a hassle. Saving, exiting, loading, retriev-ing—just to move from one application toanother. With Software Carousel, you can keepup to ten programs loaded and ready to run.Best of all, you can use all your memory in eachand every one. Supports AboveBoard™ andRAMpage™ too.

^>=- *&f :H

1_M

fc^vcV

*s5Pr

T

Cubit—Packs more of your dataonto less disk space.

Filling up your hard disk again? Don't run outand get a bigger drive. Get Cubit, and get up totwice the storage capacity from the drive youalready have. Cubit compresses and decom-presses word processor, spreadsheet, database,all kinds of files—quickly, safely, invisibly.

DoubleDOS—The multitaskingsoftware that takes less of everything.

You can spend more money, load more memory,and read more manuals with systems like Top-View™ or Windows™ Or you can get Double-DOS, the amazingly simple concurrent softwareenvironment that lets you and your computereach work on different tasks at once. Nothingcould be easier. And nothing costs you less.

Put your problems behind you. Order these SoftLogic

Solutions today.

•Plus $5.00 shipping & handling.

So why put up with problems? Especially when youcan get dependable SoftLogic Solutions for just$49.95* each. Ask for SoftLogic products at yourcomputer dealer. Or order directly from SoftLogicSolutions by calling 800-272-9900 (603-627-9900 inNew Hampshire).

SoftLogic

SOLUTIONS

Order today:800*272*9900

SoftLogic Solutions, Inc.530 Chestnut StreetManchester, NH 03101800-272-9900 (603-627-9900 in NH)

Inquiry 401

SEPTEMBER 1986 -BYTE 379

I

Best of BIX • best of BIX • Best of BIX •

BIX

BEST OF BIX • BEST OF BIX • BEST OF Bl

BIX is the BYTE Information Exchange, BYTE's ongoing electronicconference. Each month, this section attempts to give readers aglimpse into this constantly evolving, rapidly growing exchange ofideas and information. This month, the conferences covered areAmiga, Atari ST, IBM PC (and clones), Macintosh, and Pascal.For information on joining BIX, see page 357.

AMIGA

Once again the Amiga conference has come in as one of the busieston BIX. This month's selections begin and end with problems, the firstconcerning a missing text file and the last with troublesome C libraries.In between, there are two discussions on different aspects of using theAmiga for its musical capabilities and a request for advice on makingthe programming leap from C to assembler.

Disk Sector Surgery

amiga/main #3080, from dcoulter [Derek Coulter]

Help! I've destroyed one of my most important text files by accidentallyOPENing the file for output in Amiga BASIC. As you know, OPENingan existing file erases its contents.

Am I right in assuming that the sectors containing what was in thefile were not deliberately wiped clean (i.e., zeroed out) by DOS when IOPENed the file? If I am, I wonder if it's possible to look at individualdisk sectors directly? If I could do that, I could search each one until Ifound the text.

I'd be very appreciative if someone would recommend a program(preferably in the public domain that I could download from BIX) thatwould allow me to read sectors. Or even suggest how a BASIC-boundnon-developer Amiga enthusiast like me could do it from Amiga BASIC.

amiga/main #3093, from rankin [John Rankin]a comment to message 3080

Yes, there is a program that you can use to do just that. It is calledDiskEd and can be found in the "c" directory of some disks. It isdesigned to allow you to edit a disk sector by sector, which can beuseful in cases such as yours. Be aware, however, that it is very difficultto use if you do not have a copy of the "AmigaDOS TechnicalReference," and even then the help the manual gives is marginal. If youhave patience I am sure that your efforts will prevail. I have repairedseveral disks that belonged to friends of mine who were in similar situa-tions. It just takes time and a little know-how; be sure to read as muchas you can before you start to use this program.

I found my copy of this program on the Amiga Cambridge LISPDisk, so I'm sure that there is probably one available if you look hardenough. Good luck.

amiga/main #3095, from fnf [Fred Fish]a comment to message 3093

There is a very nice little public domain disk salvager (called DiskSalv)that has appeared on Usenet and is on my library disk number 20. Ibelieve there is also something similar in the AmigaDOS 1.2 alpha/betareleases.

amiga/main #3097, from jdow [Joanne Dow]a comment to message 3093

DiskDoctor is coming in version 1.2. I dont know if it will recovererased data, but it will generally clean up a disk.

amiga/main #3098, from langeveld [William Langeveld]a comment to message 3093

DiskEd is not on any standard disk that I know of. It is supposedly aprogram for developers. Developers are privileged people who get a lotmore software from Commodore-Amiga than us common mortals.

amiga/main #3099, from langevelda comment to message 3095

The program that will be released with 1.2 is called DiskDoctor. It sup-posedly comes on a disk called 'The Toolbox" and will initially behanded out only to developers. Later on it might be available for therest of us, but it is not clear whether that pleasure will be, er, for free.

amiga/main #3102, from demo9 [Pat Harrington]a comment to message 3095

I have an alpha of version 1.2 of the OS and hope DiskDoctor will begenerally available despite messages here to the contrary. I used it torecover a disk that crashed on me (it contained files I had downloadedon-line) that I couldn't even format. I got the message "Hard errorcylinder 0... Format abandoned" before fixing it with DiskDoctor. Inother words, it sure seemed to do the trick for me.

amiga/main #3109, from duck [Dale Luck, Commodore-Amiga}

It will probably be available only to registered developers. That's one ofthe reasons to become a registered developer; you get some of thesegoodies. Please remember that there is a world of difference betweensomething we hacked up to do a quick job and something that isready as a supportable product. DiskDoctor is once again written inunsupportable (to Americans) BCPL.

amiga/main #3113, from Inoland [Les Noland]a comment to message 3098

I got a copy of DiskEd with my Amiga Pascal but I certainly wouldntsuggest anyone buy it just to get a copy of DiskEd. That's especiallytrue given the fact that DiskEd is about as much fun to use as receiv-ing a heavy wooden mallet on the cranium.

amiga/main #3118, from jdowa comment to message 3080

On reflecting, I don't know how from BASIC, but the trackdisk interfaceshown in one of the Fred Fish support files (#5 disk) shows individualsector access. With that I bet a modest effort could generate a sectorpatcher routine. Now, I suspect this might be very hard to do fromBASIC, but access is possible.

amiga/main #3251, from langevelda comment to message 3080

Even though your message is two weeks old, you still may want toknow that on fishdisk 20 there is a program called DiskSalv, which issupposed to not only fix broken disks but also retrieve deleted files. Ifyou dont have it but still want it, I might be persuaded to upload it toListings.

[Editor's note: DiskSalv is now available for downloading from theAmiga library in the Listings section of BIX. Information concerning thefishdisks (public domain software for the Amiga) mentioned above maybe obtained by sending a SASE (57 cents postage) to: Fred Fish, 345.Scottsdale Rd., Pleasant Hills, CA 94523.]

380 BYTE • SEPTEMBER 1986

Best of BIX

EIX

• Best of BIX •

Sound Sampler

amiga/main #3025, from jsan [Jez San]

Does anyone know of a sound sampler unit for the Amiga that is ac-tually shipping? I need one very quickly (i.e., tomorrow)!

FutureSound is about 5 weeks away (so the lady on the phone says),which, translated into real terms means 10 weeks. And there are othersadvertised but I haven't tracked any down.

If not, does anyone know of a decent sampler unit for any othermachine, or even a stand-alone synthesizer with sample capability thathas provision for uploading and downloading the samples to anotherhost, possibly down the serial port?

amiga/main #303673037, from langevelda comment to message 3025

Call Mimetics. They were selling a sound sampler at the last FAUGmeeting (a week ago).The address of Mimetics is

Mimetics Inc.RO. Box 60238 Station APalo Alto, CA 94306Tel. (408) 741-0117

Their sound sampler is around $100. The MicroForge unit shouldalso be shipping, but it is around $350. I have not actually seen thatone, though.

amiga/main #3039, from Inolanda comment to message 3025

This is speculative, but you might check it out. I don't know of anysound-sampling devices for the Amiga that are shipping right now, butthere is a very reasonably priced sampling keyboard made by En-soniq, called the Mirage (when I say reasonably priced, I mean for asampling keyboard, not for just a sampling device—I believe the priceis $1695). I don't know how possible or easy it would be to transferthose samples to the Amiga but you might want to check it out. Theydo store the samples on 31/2-inch disks but I don't know what formatthey're in. They also advertise that there are sound-editing programsavailable "for all major personal computers." I doubt that that includesthe Amiga at present but who knows?

Ensoniq's particulars: Ensoniq Corp., 263 Great Valley Parkway,Malvern, PA 19355.

In Canada: 6969 Trans Canada Hwy, Suite 123, St. Laurent, Que.H4T 1V8.

In Europe: Ensoniq Europe, 65 Ave. de Stalingrad, 1000 Brussels.

In Japan: Sakata Shokai Ltd., Minami Morimachi—Chu-0 Building,6-2 Higashi-Tenma, 2-Chome, Kita-Ku, Osaka 503.

amiga/main #3124, from grogers [Steve Mueller]a comment to message 3039

Actually, the Ensoniq (like the Prophet 2000, Emulator 2, Roland SPunits, and the Yamaha samplers) dumps sample data over MIDI (socompatible disk format is no object, n'est-ce pas?) in a quasi-compatible format. You cant quite read one sample file from anothersynthesizer (yet). Advantage of Ensoniq? Not much; it uses 8-bitsamples. Prophet 2000 uses 16-bit samples. You could probably makean Ensoniq clone with the Amiga, a minimal amount of hardware, anda lot of software.

amiga/main #3147, from cmcmanis [Chuck McManis]

For those of you who are music buffs and are going to be hooking up

(continued)

Inquiry 71

COMPETITIVE EDGE

631 S. MAIN ST. • PLYMOUTH. Ml 48170 ■ (313) 451-0665

VELOCITY 286 10/12 mhz $2995/$3295

1024K on MB Par, Ser,Clock, 30 MB Fast HardDisk 1.2 MB Floppy, DOS3.2, Enhanced GraphicsAdapter.

BASE AT™ Compatible

1.2 Floppy,

Floppy/HD Contr.

512K, P/S + Case,

Keyboard

$1295

CompuPro Ram 22 .. .$446.00 Disk/A .. .$446.00

LOMAS Thunder + 512K .. .$895.00 1024K ... $1046.00

MG-200 Herules® Compatible mono card $ 99.95

CGP-300 Std color card with Parallel $ 89.95

MF-100 Multi-function card to 384K 0K $ 99.95

Memo 576K Memory board to 576K 0K $ 49.95

MF-3000 Multi-function for AT to 3072K, 0K $ 199.95

FDDA-100 Floppy controller for PC 4 drs $ 44.95

MIO-100 Floppy multi-function card P,5,0K $ 99.95

DIO-200XT P,5,0K . . . $69.95 DIO-200 AT . . . $72.95

MD-2000XT/AT above board to 2048K, 0K EMS $ 149.95

Vutek EGA, CGA, EGA, Herales compatable $ 325.00

M-EGA, CGA, EGA compatible (to 10MHz) $ 275.00

Teac FD-55B DB/OO .. $105.95 Teac FD-FF6F .. $119.95

Seagate ST225 20 MB H.D. .. . $325.00 ST4038 . . . $589.00

ST4051 . . . $648.00 ST4096 . . . $1295.00

Western Digital AT Floppy Hard Disk Controller $ 219.95

Everex AT Floppy/Hard Disk Controller $ 199.95

AT is a trademark of IBM, Ram 22, Disk/A, CompuPro are trademarks or registered trademarks otViasyn.

[BflB

*&*

merging from years of successful problem solvingapplications in piping, and electronics for the aerospaceindustry, DYNAMIC CAD has brought a highly advancedand powerful CAD system together with today's most dynamic andversatile micro-computer, the Amiga. DYNAMIC CAD takes fulladvantage of Amiga's extensive capabilities with color, multiplemodes of resolution, mouse functions, and easily accessiblepull-down menus.

This is not some promised "vapor-ware." DYNAMIC CAD existsnow and comes to the Amiga with a proven track record. The timeand money-saving applications of DYNAMIC CAD for engineers andarchitects are truly astounding. Here is an advanced, 2-D draftingsystem with isometric capabilities that can be combined with manymodels of printers, plotters, and digitizers. In getting started you'llhave the support of an extensive manual written in understandableEnglish along with working examples as tutorial lessons.

Inquiries invited. (818) 360-3715P.O. BOX 3475, GRANADA HILLS, CA 91344

Inquiry 191

SEPTEMBER 1986 -BYTE 381

best of BIX • Best of bix • best of bix •

BIX

• Best of BIX • Best of BIX • Best of bi

synthesizers to your Amiga even though it already has the best soundcapabilities on the market, may I suggest you look at the YamahaDX-100.1 just got one at a recent sale here in Silicon Valley and amquite pleased. It was $350 and although it cant sample directly it canplay back sampled waveforms. Adds another 8 voices to the existing 4of the Amiga. Now if I could just get a decent music package —

Sound Channel Allocation

amiga/softw.devlpmt #1779, from cheath [Charlie Heath]

I've been dealing with putting together three separate audio deviceusers (speech, a canned music driver, and a custom sound-effectsdriver), and have found it difficult to deal with channel allocation. Itseems that there is a missing link—once an audio channel has been"stolen" from a user, the user has to explicitly test to find out that thathas happened and then must reallocate it.

It seems to me that there should be a "borrow" channel command,which would take the channel when a higher-priority request is madebut would automatically restore ownership to the prior owner. Sort oflike prioritized multitasking, except it would never time-slice; you wouldown the channel until a higher-priority request occurs, and you wouldget the channel back when the higher-priority user released it.

Has anyone else found this to be true? It seems to me that peopleare now dealing with this in one of four ways: set the priority to MAX,so nobody else can get the channel; ignore the problem—if the chan-nel is allocated by another user, it is never reallocated; test to find out ifthe channel has been stolen every time an audio command is issued,with a considerable performance penalty and a lot of overhead; testonly at convenient places in the code (like at the start of a song orsound effect, etc.).

I do suspect, however, that simply checking to see if the channel hasbeen stolen for each audio driver call is not too much overhead. If youare running asynchronously (which is generally best for this kind ofstuff, unless you like waiting for sounds to finish) then all you have todo is check the error return of the call, which will tell you that the chan-nel requested is not available immediately. Not exactly the nicestmethod to the driver, but it works.

Once you have discovered your loss, it is up to you to do anythingyou need to. Usually, this means preceding any call to output to thatchannel by an attempt to allocate it.

One final note The list of suggested priorities in the RKM ("ROM Ker-nal Manual") could be shuffled around a bit but otherwise makes somesense if you really want to be nice to other programs running. Eventual-ly, I'm going to have to see if I can change my program to handle thisstuff correctly. But if it is too much time and trouble (and this especiallyincludes overhead), I am going to be nasty and hog the channelsanyway, under the assumption that the user is unlikely to run twoaudio-intensive programs simultaneously. Better that than to have a pro-gram that produces less than quality sound.

amiga/softw.devlpmt #1804, from cheatha comment to message 1803

That seems to concur pretty much with what I'd thought. The problemcomes when you want to combine two audio drivers into one program,say for digitized sound effects and music. That might not be such aproblem if there is a single arbitrator in the program, but unfortunate-ly I've been working with a canned music driver for which I donteven have access to the source code—so I cant build such arbitrationin.

amiga/softw.devlpmt #1803, from sbennett [Steven Bennett]a comment to message 1779

Alas, we're stuck. Sound channels, once stolen, are not returned. Isuspect that this is because the driver was designed more so that theprograms using it would allocate the channel, send out a sound (likeone note), and deallocate it immediately thereafter. Unfortunately, thisdoes cost a bit in overhead, and I suspect (will have to write a programto test it someday RSN) this overhead is too costly to use. In my stuff, Iam being nasty and allocating at maximum priority, at least for now.

amiga/softw.devlpmt #1809, from jdowa comment to message 1804

Only thing I could imagine using sound channels in both of two pro-grams for would be"G character in a program—check for soundallocation and flash screen as an alternative—or accompanying musicwith speech commentary. But then the sync would want to exist be-tween the music and the speech. Hence they'd have to be in the sameprogram.

3 1/2" Disk Labels T/F-F/F 100/18.95

3 1/2" Disks (DS, DD) 10/J27.99 1/(2.99

3 1/2" Disks (SS, DD) Plain Label Brand 10/120.95 1/J2.19

CLASSIC IMAGE, INC. - PRESENTSDIABLO - Graphic mind challenge game Amiga/Atari™ (29.95DISK LIBRARY - Now you can File, Calalog, Update,Search, Cross Reference, Report $49.95

Amiga System Covers - W/mouse/LOGO (21.95

Amiga Disk Cover - 1010 or 1020 with LOGO 17.99

Atari ST System Covers - w/mouse drive/LOGO (34.95

Paper T/F-F/F White, 9 1/2 x 11, 201b. 150/(8.99

Paper T/F-F/F White, 9 1/2 x 11, 201b. 1000/(22.95

Paper T/F-F/F 1/2" Greenbar, 9 1/2 it 11, 181b. 1000/(18.99

Index Cards - T/F-F/F, 3 x 5 500/(7.95

Rolodex Cards - T/F-F/F, 2 1/6x4 500/(8.95

Labels - T/F-F/F, Address 1000/(5.00

Dealers Welcome

S&H-$2.50 US M.W. RUTH CO., B106

S&H-I4.50 CN Visa 510 Rhode Island Ave.US $'s only Master Cherry Hill, NJ 08002

(609) 667-2526

We stock what we sell, for fast delivery.

Send for FREE CATALOG

ATTENTION PROGRAMMERS - Let us take over the headachesof publishing your software. We are looking for all items related tothe "AMIGA" 4 "ATARI ST".

• HL|h porforrunct

• Soffii-iutemittc routine

• Inci ,i«!d

• Auto lip/dlp/plnfrld

• tW tq.—I Uywi

• Full iilkiatin

• Utilim color

• Am rotition

• httfollleillon (zoom)

• Surhco itntch

• Dot Mlrli chockplot

• Contra rdy. ltd. plotton

PCtO™PrintMf Circuit Lijcwt F« Th* Amlti-

• POMrfUl BWUpK*

Dp* tH ion I

• UMiyii cicjbiliry

• Ubj*c, Ubfirm

• H-Jltipli fjd typti

• .050 cmii'i

• Slock opt(i,ion(

• Abf., r.l t loci.

nM(ur*atfl.■ Edltlrif. ROM copy, dtlot*

• Globtl trie* folio*,n|

• Support, hird drlvt

Syitim prici — 1102* / Fund low I umplt disc 175 (ct*dit towirtli p urchin)PCL0 c SofteircuiU, Inc. / Aniip • Com mutton, Inc.

"FTisTT

A SERIES OF ENaiNEKRINO WORKSTATION PROOUCTB f

Soft Circuits. Inc., 401 s.w. 7Bth TirrackIM. Lauderdale. R_ 330S6. OOB) 72 I -2707

"An Amiga withoutFutureSound

is like the

Rolling Stones

without Mick Jagger"

With FutureSound you canrecord any sound and play it back.Record Mr. Spock off thetelevision,your mother-in-law offthe phone, or your own voicenarrating your creations.Jumping Jack Flash!

Applied Visions

15 Oak Ridge Road

Medford, MA 02155

(617) 488-3602

Inquiry 213

Inquiry 312

Inquiry 24

ST OF BIX • BEST OF BIX • BEST OF BIX

EIX

Best of BIX • best of BIX • Best of BIX

Moving to Assembler

amiga/softw.devlpmt #1792, from pjohnston [Dale Kuethe]

Can any of you programming geniuses help me out? I am making atransition from C to assembler for reasons of size and speed. (As put inthe movie 'Top Gun," "I feel the need. The need for speed') I cannotafford Tech Manuals yet and I learn best from examples anyhow. What Iam looking for is the Intuition functions and animation stuff. I have doneit all in C before but it is just too bulky and slow. Also, if you have afew seconds (and are feeling very, very generous) it'd be nice if youuploaded your best 3D graphic routines...

amiga/softw.devlpmt #1794, from jdowa comment to message 1792

Probably the quickest trick from Lattice C is to run OMD (ObjectModule Disassembler) on the object code and feed the result to aneditor to make it something the assembler would really like. Then starthand-optimizing the results. Of course, the OMD route is moot forAztec, as it has an assembler stage in the compile. Take that outputand again hand-optimize.

amiga/softw.devlpmt #1795, from cheatha comment to message 1794

The Manx output is really easy to convert to assembler, since you canjust put in "#asm" statements after compiling a "C" function toassembly source. That makes it easy to get function arguments andstructure offsets correct. However, the current version of Manx'sassembler is not very good for "stand-alone" development. It was reallydesigned to accept the compiler's assembler source output, and notmuch else. I understand Manx is making some improvements in theassembler for the next update, though.

amiga/softw.devlpmt #1782, from fnfa comment to message 1780

This one bit me once a long time ago. Seems that there are some la-tent, problems in the librarian program, the end result of which is a cor-rupted executable.

amiga/softw.devlpmt #1784, from langevelda comment to message 1780

That's right, the librarian with 3.20a is next to useless. What does workis to join the .o's together with the DOS command "join." That doesmean, however, that all .o's are linked in.

amiga/softw.devlpmt #1789, from cheatha comment to message 1784

Are you sure about that, Willy? I thought that only worked for ALink-style libraries, not with Manx. Havent tried it, though.

amiga/softw.devlpmt #1791, from langevelda comment to message 1789

Yup, have tried it myself. Besides, somewhere in manx.aztec/amiga.cjgoodnow says that it will work the way I described.

amiga/softw.devlpmt #1812, from mikeduffy

Aztec users might want to see manx.aztec/amiga #115 if they arecreating programs with large (>64K) data segments for a linker bugthat bit me. By the way, rumor has it that Aegis developed its stuff withAztec. Can w.volkaegis confirm or deny this? Since the Aegis productsare fairly big, have you encountered any problems when stretchingyour tools (eg., Aztec/Lattice/etc.) to the limits?

Aztec C Libraries

amiga/softw.devlpmt #1780, from mikeduffy [Mike Duffy]

Problem: Basically, I get a working program with individual .o files anda non-working program with the same files in a library. No errors onlink, just a different-sized program that loads, begins to execute, andthen software-error task held. For more info, see "manx.aztec/amiga."Thanks for any help you can offer.

amiga/softw.devlpmt #1820, from w.volkaegis [William Volk, Aegis

Software]

a comment to message 1812

Draw is a big program (150K object) but has a smaller than 64K datasegment (almost everything is allocated on the fly). I believe you haveto use a linker option (or compile option) to go to the "large data

(continued)

ANALYZE!

• PULL-DOWN MENU INTERFACE(MOUSE DRIVEN)

• 256 COLUMNS BY 8192 ROWS

■ CONSERVATION OF MEMORY

■ FLEXIBLE VIDEO DISPLAY

• POWERFUL ARRAY OF SIMPLEAND COMPLICATEDMATHEMATICAL FORMULAS

• SORT/DATABASE FUNCTIONS•COMMAND MACROS

■ DELUXE PRINTABLE GRAPHICS(IFF COMPATIBLE)

■ DEDICATED FUNCTION KEYSFOR COMMON COMMANDS

• NATURAL RECALCULATION ORDER

• PRINT FORMATTING AND CONTROL

• PROJECT ICON SUPPORT

$149.95

WM*^? MICRO-SYSTEMS

i-''.^Z^ SOFTWARE, INC.

,'^V 4301-78 OAK CIRCLE, BOCA RATON, FL 33431

(800) 327-8724

Quelo®

680,00

Software

Development

Tools

• Motorola compatible macro assembler

• Industry standard

• Mature—first release January 1983

• Source code available

Amiga and Atari 520/1040ST68000/68010/58020

Native and Cross Assemblers

68000768010 68020Host Target package package

Amiga Amiga

Atari Atari

MS-DOS/PC-DOS Amiga/Atari

CP/M-80 Amiga/Atari

CP/M-86 Amiga/Atari

CP/M-68K Amiga/Atari

S 99$ 99

199-199-

$149$149249*

249*249"

'includes corresponding native assembler.

Additional hosts and targets available:

UNIX 4.2, UNIX V, VAX VMS and external 68xxx bi

Contact Patrick Adams today

Quelo, Inc.

2464 33rd Ave. West, Suite 173

Seattle, WA 98199

phone 206/285-2528 telex 910-333-8171

2 MEGs For YourAMIGA!

A must fur software developers

Allows more programs lo run simultaneously and faster

Can be used to increase system RAM and/or as a FAST RAM DRIVE

Uses standard memory bus architecture to allow for future compatibility

Allows full use of memory expansion port for additional peripherals

AX2000 2 MEG RAM Board $899.00 U.S. ($1276.00 CDN)AX1000 1 MEG RAM Board $729.00 U.S. ($1035.00 CDN)

Complete in case, nothing else to buy!I year manufacturer warranty!

DEALER INQUIRIES INVITED

Comspec Communications Inc.153 Bridgeland Avenue, Unit 5

Toronto, Ontario, CanadaM6A2Y6 (416)787-0617

Prices shown are F.O.B. Toronto

AMIGA is a registered trademark of Commodore linsinrss Machine.

Inquiry 234

Inquiry 291

Inquiry 89

Best of BIX • Best of BIX • Best of BIX •

BIX

• Best of BIX • Best of BIX • Best of Bl

model." Aztec default is to use 16-bit offsets from a register (fast and'compact). I recommend eliminating global data wherever possible (styleconsideration).

amiga/softw.devlpmt #1822, from mikeduffya comment to message 1820

Most of the nonallocated data is 0x6000 bytes of chess openings in en-coded format, so it's not something I'd like to allocate and read off ofdisk (yet another file for the user to accidentally lose). Incidentally, thelarge data model does not necessarily mean what you think. You canmix large and small and (in theory) the linker will notify you when apiece of small data cannot be reached (page cc.11 of the Aztecmanual).

amiga/softw.devlpmt #1823, from cheatha comment to message 1822

Sounds like that big array could easily be accessed from only one fileusing long pointer addressing. Question is, though, is all the Data putin front of all the UData with the current linker? (Have you thoughtabout putting the chess openings into a "comment" hunk, which wouldbe ignored by the loader but which you could go back to and read ex-plicitly as a file?)

amiga/softw.devlpmt #1824, from mikeduffya comment to message 1823

Yeah, from the link map, Data and UData are both in segment 0 (codein 1) with Data first. Thanks for the "comment" hunk suggestion. I cansee I am following where others have already worn a trail.

amiga/softw.devlpmt #1825, from cheatha comment to message 1824

Actually, I haven't tried the comment hunk deal—but I'd like to know if itworks. I've got these nasty data files all over the disk!

amiga/softw.devlpmt #1826, from mikeduffya comment to message 1825

Any suggestions for hiding data files and/or determining where all theapplication-related files live? Somehow, these problems are never fixeduntil the third or fourth release of the OS (witness MS-DOS, which hasyet to get it quite right), but they're quite important for developingrobust applications.

amiga/softw.devlpmt #1827, from cheatha comment to message 1826

I was hoping to get by with an "assign" and use a pseudo devicename within the program. That puts the burden on the user, but whatthe heck. If the user has put a floppy in with the volume name, it willget accessed automatically; if the user copies it to another disk or harddisk, they gots to include an "assign" in the startup sequence, orsomething.

Register A6 As a Frame Pointer

amiga/softw.devlpmt #1913, from jgoodnow [Jim Goodnow]

I've been doing some looking and thinking about this whole thing withusing A6 as the frame pointer. When I originally decided to use A5,1

(continued)

WiseTEK

INT'L, INC.

*TURBO AT

80286 IBM Compatible

6 MHz, 8 MHz, or 10 MHz Keyboard Switch5 CHIPS SET-(Lower Heat. Higher Quality)

0 or 1 Wait State

1 MB MemoryOn Board Battery

80287 Socket Ready

5 VLSI

80286 80287

TURBO xt#

8088-2 IBM-XT Compatible

4.77 MHz or 8 MHz Keyboard Switch

4 Layer PC Board

640K Memory

8087 Socket Ready

We are the manufacturer.

WiseTEK International, Inc.513 Valley WayMilpilas, CA 95035

Distributors, Dealers,OEM Welcome

TEL: (408) 263-1237FAX: (408) 263-1870

384 BYTE • SEPTEMBER 1986

Inquiry 382

Increase your knowledge about all aspects of computers

An absolutely no-risk guarantee.

95

Select 4 Books for only $2

and get 2 Free Gifts!

More programs, projects, and ways to use your micro

Keep well-informed about the latest books available—and get the original

publisher's edition at a discount of up to 65 % off the publisher's price!

ADVANCEDAPPLICATIONS

1939 S24.95 19B9 $22.95

2620 S25.95

1976P S17.95

INSIDE SECJETS OF

WORBfTAR2000

TRUE BASIC

PROGRAMS ANDSUBROUTINES

19

1990 $24.95

GRAPHICSPROGRAMS

IBMPC*

1556P $15.50 2748 $21.95

1873 $21.95 1724P $13.50 2754 $28.95 1920 $22.95

SERIOUS

PROGRAMMING IN

BASIC

2650 $21.95

1852 $21.95

1948 $22.95

1742 $24.95 1947 $25.00

2766 $18.95

1501P $15.95

BUSINESS

IdBASE

1918 $26.95

Programming RovBnftsApple i&///fe//A

JMU3-

ANALYSISWITH

TURBO PASCALPROGRAMMING

wilfTapplications

REFLEX'

\ ""*Z^m

2712 $22.95

2627 $23.95

If card is missing, use this address to join: THE COMPUTER BOOK CLUB'P.O. Box 80, Dspt. BY-986, Blue Ridge Summit, PA, 17214

Inquiry 79

BUSINESSSOFTWARE

PROGRAMMINGTECHNIQUES

2664. Working with DisplayWrite 3

$24.95

1968. Money Management Worksheetsfor 1-2-3T"/Symphony™ $21.95

2688. The Illustrated Dictionary ofMicrocomputers—2nd Edition $24.95

2674. Mastering Omnis* 3 $24.95

2678. Harvard Pro|ect Manager/TotalProject Manager: Controlling YourResources $21.95

2694. SuperCalc" 3: Learning, Usingand Mastering $22.95

OTHER OUTSTANDINGSELECTIONS

2668. Advanced Excel'"

1848. Making MS-DOS and PC-DOSWork For You $19.95

2642. 101 Projects, Plans and Ideas forthe High-Tech Household $24.95

OPERATINGSYSTEMS

1874. Unix7" and Xenix*' Demystified$21.95

1764. Making CP/M-80" Work For You$16.95

1886. Mastering the 68000"Microprocessor

$22.95

1737. The FORTRAN Cookbook

—2nd Edition $18.95

1970. True BASIC® —A CompleteManual $22.95

1997. 469 Pascal Problems with DetailedSolutions $21.95

2682. An Introduction to Prolog $24.95

2692. Designing and Programming Per-sonal Expert Systems $27.95

1876. Getting Great Graphics $25.95

QS^?

IBM PC "33?"

1911. IBM" PC Expansion Gulde$24.95

1921 P. Serious Programming For TheIBM® PC'"/XT'"/AT" Paper $15.95

1929. Networking With the IBM® Net-work'" and Cluster $29.95

1940. 101 Ready-To-Run Programs andSubroutines for the IBM PCjr® $18.95

171 OP. Fundamentals of IBM PC®Assembly Language Paper $15.50

(Publisher's Prices Shown)© I986 The COMPUTER BOOK CLUB®

.D. Fia :■ ii| 11 m Ecift Sluti

FREE when you join!

Investment Analysis with YourMicrocomputer

How to speed up and simplify your financialdecision-making, including ready-tc-run pro-grams! A $13.50 Value.

BASIC Statements, Commandsand Functions

An indispensable pocket guide for everyBASIC programmer.

INVESTMENT

Membership Benefits • Big Savings. Save up to 75% on books sureto increase your computer know-how. • Ironclad No-Risk Guarantee. If not satis-fied with your books, return them within 10 days without obligation! • Club NewsBulletins. All about current selections—mains, alternates, extras—plus bonusoffers and special sales. Comes 13 times a year with hundreds of titles to choosefrom. • Automatic Order. Do nothing, and the Main Selection will be shippedautomatically! But... if you want an Alternate Selection, or no books at all, we'llfollow the instructions you give on the reply form provided with every News Bulle-tin. • Bonus Books. Immediately get Dividend Certificates with every book pur-chased and qualify for big discounts of 60% to 80%. • Exceptional Quality. Allbooks are quality publisher's editions offering the most authoritative informationon the latest hardware and software applications.

SEPTEMBER 1986 • BYTE 385

People who deal withbaud"use every bit of McGraw-Hill

Nobody understands the value of good informa-tion better than the people who work in computersand communications.

And for those people, no information carries moreweight than McGraw-Hill's. We provide the databases,analyses and news that computer and communicationsprofessionals rely on to illuminate the workings oftheir industries.

Everyone in the business keeps up with thelatest developments by reading McGraw-Hill maga-

zines. BYTE, Electronics and Data Communicationsare all required reading in the field. So are booksfrom Osborne/McGraw-Hill.

For people who buy computers (and run EDPoperations) the most widely respected source ofinformation is Datapro.

Datapro's print and on-line directories andreports cover every aspect of computer hardwareand software, from mainframes to micros, as well ascommunications and office automation. There's evei

ancTbyteinformation.

a report on how to protect electronically stored infor-mation from piracy.

For people who manufacture or sell microcom-puters and micro software, Future Computing is thenumber one information source for product tests,analyses and comparisons.

People who specialize in communications arewired into CCMI/McGraw-Hill, to receive not only thehard facts on communications tariffs, but also in-depth analyses and bottom-line recommendations,

via print, software and on-line products.

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.

Best of BIX • Best of BIX • Best of BIX

BIX

Best of BIX • Best of BIX • Best of Bl

was operating pretty much on my own with no feedback. Now,however, with all youse useful people here, let me put it to you. Thequestion really comes down to speed. Size was originally an issue, butI now have a way of cutting the size down even with A6 being theframe.

To recap the question for those unfamiliar with it, when a C programmakes a call to one of the resident libraries, it has to load A6 with thebase of the library before calling the function. If A6 is used as theframe, it has to be saved and restored. The difference in code lookssomething like this:

move. I a6;(sp)

move.1 _DosBase,a6

jsr _LVOInput(a6)

move.1 (sp)+,a6rts

vs. move.1 _DosBase,a6

jmp _LVOInput(a6)

A difference of about 51 cycles. There is also an obvious size dif-ference, but there are other ways around that. The question is whetherthe 50 to 60 cycle difference is worth the incompatibility problems. Ob-viously, for most DOS and EXEC calls this is not a problem, but whatabout GRAPHICS, LAYERS, and INTUITION?? I look forward to anyand all comments, since I have to make a decision in the next fewdays. Thank you.

amiga/softw.devlpmt #1914, from langevelda comment to message 1913

I have a prejudice toward A6 for the frame pointer. Reason: I have boththe Aztec C compiler (commercial version) and Absoft FORTRAN. I oc-casionally want to call C functions from FORTRAN, but Absoft insiststhat the frame pointer be A6.

Is it possible to make this a switch in the compiler (he asks in fullnaivete, not really knowing what's involved)?

amiga/softw.devlpmt #1915, from jgoodnowa comment to message 1914

A switch would be easy, but the problem is what about all thoselibraries that were compiled with the switch set to A5, and the assemblylanguage glue routines that have to have one or the other hard-codedin. Part of the problem at the moment is that there are too many

choices: near/far code, near/far data, 16/32-bit ints, A5/A6 frame ptr.

Whoops! Almost forgot, FFP/IEEE/68881, which makes for 16 regularlibraries and 48 math libraries. I like giving people a choice, but that's alot of disks. Unfortunately, my nice-guy nature gets me in these jams!(grumble grumble try to be nice to everybody...)

amiga/softw.devlpmt #1916, from cheatha comment to message 1913

Jim—The compatibility issue isn't too important for me, because I don'ttend to port a lot of stuff between the compilers. I could see it being aproblem for some folks that want to be able to put together object codemodules from both compilers—and it sounds like, since your new linkersupports the ALink format, that would become a practical possibilityRSN.

The only reason I would want A6 to be the frame pointer would be toget an extra register address variable. But I think it's still a win,because if I really need an extra address register I'd be writing inassembler.

Know what else I'd like? With function prototypes, the ability to passfunction arguments in registers. But that's a different subject

amiga/softw.devlpmt #1917, from cheatha comment to message 1915

Willy—Prolly your best solution would be to write special bindingroutines in assembler for the functions you want to call from FORTRAN.That could get a bit sticky if you do much modification (and forget todo a binding and crash and get mad at Jim), but if you have just a fewshared routines it oughta work. That assumes, though, that there areno name conflicts between FORTRAN and C library functions....

amiga/softw.devlpmt #1919, from ducka comment to message 1913

Graphics and layers use a compiler that has A5 as a frame pointer.However, the C compiler is also modified so that it never uses A6.

I think using A5 as a frame pointer makes sense, but to be strictlycompatible you will still need to preserve/restore A6 if it is used.

{continued)

10 MHz AT COMPATIBLEAMERICAN M/B

AT Compatible 10MHz computer with $1795.001MB. fixed/floppy disk controllerw/cables. 1.2 MB floppy, clock calendarw/battery backup. Performance over 10on Norton.

Above with 20MB fixed drive installed. $2184.00

XT Compatible 8MHz computer with $ 895.00640KB, 4 layer American M/B, resetswitch, floppy disk controller. 2 serial &1 parallel port, clock calendar w/batterybackup, 360 KB floppy drive. Perfor-mance 3.0 on Norton w/V20-8.

Above with 20MB fixed drive. $1395.00

Best service and support in the industry —ask our satisfied customers!

Call or write for brochure and price list.

ADTEK TELECOMMUNICATIONS CORPORATION

3706 Realty Road Suite 100Dallas, TX 75244 (214) 241-5811

SOFTWARE DEVELOPMENT

Major software publishing firmwith strong national and inter-national marketing capabilitieslooking for IBM PC based busi-ness and accounting softwarefor acquisition or licensing.

Send inquiries to:

CMH SoftwareP.O. Box 5526Mesa, AZ 852011

VT100 VT220TEK 4010/14

Emulation from $89

GMS emulators turn your PC* Into full-featuredDEC Color terminals

True 132 columns. VT100 line graphics

Softkeys, DOS keyASCII and binary file transfer KERMIT

38400 Baud, ANSI Color

Fast, Compact (less than 70k), Efficient

OPTIONAL 4010/14 GRAPHICS

CGA, EGA, Here 6300, 3270 support

Coming soon: TV/IP support, PC4105

Join thousands who have discovered GMS's

4 year record of

quality emulation software and support.

General Micro Systems

PO Box 5330

Minneapolis, MN 55343-1553 USA

(612) 944-0593

Call for Free Information Package.

'Also runs on XT, AT, 3270 PC. jr and compatibles.DEC is a trademark of Digital Equipment Corp.

Inquiry 4

Inquiry 97

Inquiry 139

KtOP?

■

The Shape. Sharp, Sleek. And amazinglyadaptable. The Genicom 1000 Series Desktop Printers.Ready for anything from business forms to spread-sheets; word processing to heavy-duty data processing.With letter quality printing at 100 cps. And dataprocessing printing at 200 cps. Open the clamshellcasing and look inside. Discover just how simple thefuture can be.

The Personality. IBMf Epsonf DiabloK-theGenicom 1000 can be all of these printers and more.Because we've built their personalities into plug-incartridges. Changing personalities is as easy as changingyour mind. Simply plug in the personality cartridge ofyour choice, and your Genicom 1000 is off and running.Working with almost any PC or software program youcare to mention. Effortlessly.

Express your personality. With fontcartridges that plug right into the frontof the printer. Pick your type; you've gothundreds of fonts to choose from. Insertup to three cartridges at once, and varytype styles within the same document.The Design. The Genicom 1000 is the first desk-top printer designed with common sense, rightdown to its built-in printer stand.

The unique design also makes paper load-ing faster and easier than ever before. Feedtractor paper straight through the bottom. Orfrom the rear. With Genicom's automatic, zerotear-off bar, no matter how you feed it, you'llnever waste a piece of paper again.

When you want to print on letterhead, just feed singsheets of paper, typewriter style. You don't even haveto remove the tractor paper.

IBM is a registered trademark of International Business Machines Corp.Epson is a registered trademark of Epson America, Inc.Diablo is a registered trademark of Xerox Corporation.

Inquiry 411

But the 1000 Series wasdesigned for more than easeof use. It was also designed forperformance. Its 18-wire printheaddelivers high resolution graphics and wordprocessing printing that can only be called letter quality.The Controls. Easy to adapt. Easy to use. Andeasy to control. With the Genicom 1000's front panel,total command is at your fingertips. Choose fonts,character spacing, line spacing, form length and printquality with the push of a button. No dipswitches. Andno fumbling inside the printer.

The Track Record. When it comes to reliability,Genicom stands by its record. We've created a fulllineof printers: from desktop models to machines that print800 lines per minute. Our printers have proven theirrugged dependability performing for some of the world'slargest corporations. Now we're ready to prove it to you.So stop by your authorized Genicom dealer todayand ask for a demonstration of the new1000 Series; the 1025 and the 1020for wide column printing. We thinkyou'll agree, these printers are aradical departure from the crowd.For the Genicom dealer nearestyou, call 1-800-437-7468. InVirginia, call 1-703-949-1170.

GEiMiCC

The Printers That Mean Business.

One Genicom Drive, Waynesboro, VA 22980

Best of BIX • Best of BIX • Best of bix •

BIX

Best of BIX • Best of BIX • Best of Bl

amiga/softw.devlpmt #1920, from ducka comment to message 1916

If you make heavy use of exec calls or graphics calls, you couldpreload A6 with the vector pointer and get rid of the interface library.If the compiler itself knows the register calling sequence, maybe byuse of the "prototyping" in new standard C, you could generate in-linecode to call the library routines.

amiga/softw.devlpmt #1921, from jgoodnowa comment to message 1919

If I preserve A6 in the library interface routines, then I might as well useit as the frame pointer. The problem is Aztec C calls Lattice C, whichcalls Aztec C glue routine. Even if the C functions save A6, so that Lat-tice C calling Aztec C works, there is still the problem with the glueroutines. As pointed out, the problem exists with other languages aswell.

amiga/softw.devlpmt #1922, from w.volkaegisa comment to message 1921

I'd opt for less T-States

BTW, does the IEEE support include an option for the 68881? I'msurprised at the number of calls we get on the subject.

amiga/softw.devlpmt #1928, from sdb [Scott Ballantyne]a comment to message 1913

Jim, having A6 used as the frame pointer would incredibly ease portsfrom UNIX (PPC) compilers, (It is no fun wading through 3000+ linesof 68K code and dealing with register/frame differences.) In fact, as thecompiler is currently set up, it may not be possible to do a port withouta complete rewrite (having A4 as a register variable would ease that). Idon't know how many others have problems like this, however. On theother hand, for original applications, the current solution seems thebest (A5 = frame pointer).

Speaking for myself, and attempting to take advantage of your nice-guy nature, I would love to see yet another switch (yas, indeed) for this.I do think there is more at issue than simply porting code from AmigaC by Lattice and Manx back and forth, or using modules created byone compiler with another.

ATARI ST

Software seemed to be on the minds of most of the participants in theAtari ST conference this month. The first thread begins as a case ofmissing memory and evolves into trying to "fool" the GEM graphicsmode. The second thread picks up the general topic of graphics, butfrom a rather different point of view, that of low-level bit manipulation.Accessing BIOS from interrupts, accessing the command line fromModula-2 and making your ST act like a VT52 round out the section.

Memory Map

atari.st/tech #169, from sprung [Ron Sprunger]

I am trying to use TDI M2 from C-Shell, and some playing around hasrevealed interesting problems. Dave Beckemeyer sends the C-Shell intwo versions, one of which doesn't support GEM programs. Since theTDI compiler and linker are GEM programs, I can't compile or linkunder that one, but it lets me have about 62K more transient program-ming area to work with.

The memory is important, because I need a minimum 600K RAMdisk to carry all the standard library modules, plus compiler, linker, and

MicroEMACS. If I put the non-GEM C-Shell in AUTO and boot, MDISKtells me it can give me a 702K RAM disk, meaning 298K not available.MDISK is the MichTron RAM disk program. MDISK reserves 128K forTPA, and C-Shell program size is about 67K, leaving 105K unac-counted for, unless C-Shell reserves a bunch.

If I come up on the desktop, MDISK offers me 709K, which seems tobe its maximum, even though the docs say 800K. Now GEM programsare supported, and if I go into the GEM C-Shell, MDISK offers only640K, meaning that the GEM-supporting version of C-Shell seems toneed an extra 62K for something.

The reason I mention the details is that if you make yourself too big aRAM disk, then run C-Shell, things seem to be OK, but you are proneto nasty crashes with no error messages.

Now for a (nearly) undocumented feature of C-Shell. The docs on thedisk for the non-GEM C-Shell mention that it does not support the"gem" command. The "gem" command is mentioned nowhere else,either in the manual or in the disk docs. Before discovering this, I wasrunning Modula and Linker from C-Shell by simply typing in the pro-gram name "modula," etc. I would then come into Modula with a slight-ly shrunken window and with or without a mouse (by some whim Icould not discern). Entering a GEM program without the mouse canmean hangup time if you haven't a valid file on the logged disk, as youcant get to the CANCEL command without a mouse. Anyway, if youwant to run a GEM program from C-Shell, type "gem progname" andyou're in fine shape.

The MDISK program is not without fault—it requires an extra 15K foreach RAM disk it sets up, and it insists on copying any .ACC files plusthe deskt.op.inf file to the created RAM disk, where they haven't theslightest business being.

Can someone tell me where the 90K mentioned above is going?

atari.st/tech #288, from jerryb [Jeremy Brown]a comment to message 169

Ron, MDISK copies the .ACC files because you should be using theMDISK in an AUTO folder, where it would copy the files and load themmuch quicker than from floppy. A better RAM disk is HippoRAMdisk(much better than I hear their C is/was). It allows use in an AUTO folderand accesses a text file where you have the RAM disk size plus a listof all the files you want to automatically copy into the RAM disk. Thereis a special function to create this file, and you can edit this file later ifyou wish. In the file copy list, wildcards are supported (as are folders).Whether you can use this special feature from outside an AUTO folder Ido not know. I recommend that you look into it. I have also usedMDISK and would rather go without. Note: The HippoRAMdisk I amreferring to is a post-updated one from before TOS ROMs.

atari.st/tech #289, from sak [Sal Magnone]a comment to message 288

Doesn't any program running in the AUTO folder boot into that blastedlow-resolution mode? What a bug!

atari.st/tech #291, from swestrup [Stirling Westrup]a comment to message 289

That's right, and I've never found a way around it! If anyone knows howto boot into an AUTO folder program in medium resolution, / want toknow about it!

atari.st/tech #292, from jtittsler [Jim Tittsler, Atari Corp.]a comment to message 291

The easiest way is to have a program in your AUTO folder ahead of theprogram you want in medium res that does nothing more than go intomedium resolution and then terminate. Remember that programs will

[continued]

390 BYTE • SEPTEMBER 1986

Inquiry 228 —►

%y

^&

^&#

S3

wM

PCHARDDISK KITS

20 MEGABYTES

$429

30 MEGABYTES$525

HIGH CAPACITY

AT&XTHARD DISK KITS

70 MEGABYTES

$1995

120 MEGABYTES

$3995

PORTABLEFLOPPY DRIVE

CAPACITY: 720KMF720P$295

TAPE BACKUP

40 MEG INTERNAL

MT40 $595

41) MEG PORTABLE

MT40P $695

TAPE BACKUP

60 MEG INTERNAL

MT60 $795BO MEG EXTERNAL

MT60E $895

TANDY 1000

MULTI-FUNCTION

CARD

SERIAL PORT/DMA CONTRL/CLOCK/512KTMF-1$269

PC/AT OR

TANDY 1000

HARD DISK CARD

21 MEG HARD DISKFREE SCSI PORTTHC-21 $675PCHC-21 $675

SCSI HOSTADAPTER CARD

CONNECTS YOUR

PC TO 7 OTHER

DEVICES

scsi-i $190

CALL FOR OUR

FULLLINEOFHALFCARDS

COLOR GRAPHICSMEMORY CARD

FLOPPYCONTROLLER

CALL

LASER BANK

20002 GIGABYTELASER DRIVE

30 MEGABYTE

WARP DRIVE

HARD DISK CARD

for your PC, AT or Tandy luOO

M Detlgfl IntatntiUono* I

VVui pi" 'vi' :toMU

iMP--:;

tiiiiiiiHiiiiiiiiiiiiiiiuiiii

IBM PC/XT/AT PCWD-30

IMAGINE!!! MDI'S 30 MEGABYTE HARDDISK CARD simply plugs into your systemand is ready to run!!!

The Warp Drive works with your existing harddisk drives.

included FREEwith all Hard Drives

Direct/Assist *499SR/Assist *499S

Light Speed *79a5

TANDY 1000

HARD DISK CARD

30MEG IIAKDDISKTVVD-30

ADI'.MAilKur

MasterCard

ord€R UN€ 800-228-0891305-677-8333

1 V€DR UJRRRflNTV, 30 DflV MON€V BACK GUHRhNT€€ 786

1BI N 1M p"i Hi! U\<A liliW l"A Mil

6566 University Boulevard, UJinter Park, Florida 32792 305-677-8333 telex 332559 MDII OfUUD

NEW DASH FOR YOU

GRA1

Sales

Your old printer should look so good.

Introducing the ImagEnhancer™ PC add-on board. It enables ordinary monochromeor color dot matrix printers to produce high-quality, plotter-like graphics.

THE OUTPUT IS OUTSTANDING.

The ImagEnhancer is the perfect way toget presentation-quality graphs, charts andartwork from your old dot matrix printer.What's more, it comes with a built-in512K memory. So while your printer isprinting one job, you can use your PC foranother. Which will improve your productivitytremendously.

And of course, the ImagEnhancer workswith the same computer products mosteveryone works with.

IBM" PCs, XTs, ATs or 100% compatibles

with graphicscapability.Alps, Epson"or Epson-compatiblemonochrome orcolor dot matrixprinters. AndHouston Instrument (DM/PL) plotter-compatible software, including Lotus" 1-2-3"Symphony," PFS":Graph and Framework)"among others.

AND THE PRICE IS RIGHT.

At $595* the ImagEnhancer costs afraction of what you'd pay for a new plotter.It's simple to install, too. And backed by aone-year warranty.

The ImagEnhancer is a product of AlpsAmerica, a U.S. subsidiary of Alps ElectricCo., Ltd. of Japan, an International Fortune

The ImagEnhancer PC add-on board bringsplotter-like output to dot matrix printers.

35O0

500 company. Other Alps America productsinclude a full line of high-quality printers.

For more information, print samples, orthe name of the dealer/distributor nearestyou, write to Alps America, 3553 NorthFirst Street, San Jose, CA 95134. Or call(800) 828-ALPS. In California, (800) 257-7872.In Canada, (800) 858-2577.

Better yet, send in this coupon alongwith your payment. And teach your old dot

matrix some new tricks.

Inquiry 14 for End-Users. Inquiry 15 for DEALERS ONLY.ImagEnhancer is a trademark of Alps Electric Co., Ltd. Other computer or software names are trademarks and/or tradenames of their respective manufacturers. C'1986 Alps America.

El OLD

III

T MATRIX

ICS BOARD MARKET

•ecast ~ Off ice/Government

800

.986 1987 1988 1989 1990

venues Source: Fiat-are Computing

This image was printed with an ordinary color dot matrix printer and the h

■a printer, you get the same high resolution in black and white

SO ORDER TODAY.

Name:

Address:City:

State:

Zip:

Phone:Send_

. ImagEnhancer(s) at $595 each*

*Add $10.00 shipping and handling for each. California residents add 7% sales tax.Offer available in U.S.A. only.

Method of payment (circle one):

Check Money Order MASTERCARD VISA

Card number:

Exp. date:

Signature:

Mail to: Alps America3553 North First StreetSan Jose, CA 95134Or call (800) 828-ALPSIn California, (800) 257-7872

ALPS

AMERICA

Inquiry 88

BEYOND IBM COMPATIBILITYMORE POWER PLUS RELIABILITY

NOVAS TURBO 286 MOTHERBOARD

• Fewer ICs For Greater Reliability-Only 36 Compared to IBM's 131

• Dual Speeds—6 & 8 MHz—Keyboardor Jumper Selectable (10 MHz opt.)

• 4 Serial and 1 Parallel PortsOn Board Option

• Expandable to 1 Megabyte RAM

• Complete with Setup Program

• Fully Compatible BIOS aiaE

• Socket for 80287 I|>4yO OEM

• 0, 1 Wait State. Jumper Selectable. Hardware reset port.

ALL AT ACCESSORIES AVAILABLE-CALL!

NOVAS 1000 EGA BOARD

• Supports EGA, CGA, MDA

• 640 x 350 Pixels EGA640 x 200 Pixels Color320 x 200 Pixels Color720 x 350 Pixels Monochrome

• Parallel Port on Board »..-

• 256K RAM on Board §£.£.0

NOVAS TURBO 286

AT COMPATIBLE SYSTEM

$1445.00

Include: 640K, 6/8 MHz Turbo Speed (10 MHz opt.), 1 S/1 P, 1.2 Meg. Dr.

COMPLETE NOVAS PC TURBO SYSTEMS AND COMPONENTSIN ANY CONFIGURATION—CALL FOR CURRENT PRICES

OUR QUALITY AND PRICES CANNOT BE BEAT!CALL US FOR COMPLETE SATISFACTION

COMPUTRADE COMPANY

780 Trimble Road, Suite 605 Tel: (408) 435-2662

San Jose, CA 95131 Fax: (408) 435-5458

* IBM & AT are trademarks of International Business Machines Corp.

PC/Vi

FullScreen Editor for MS-DOS (PC-DOS)

Looking for an Ultra-Powerful Full-Screen editor forvour MS-DOS or PC-DOS system? Are you looking foran editor FULLY COMPATIBLE with the UNIX*VIeditor. Are you looking for an editor which not only runson IBM-PC's and compatibles, but ANY MS-DOSsystem? Are you looking for an editor which providespower and flexibility for both programming and textediting? If you are, then look no further because PC/VIIS HERE!

The following is only a hint of the power behind PC/VI:English-like syntax in command mode, mnemonic controlsequences in visual mode; full undo capability; deletions,changes and cursor positioning on character, word, line,sentence, paragraph or global basis; editing of files largerthan available memory; powerful pattern matching capabil-ity for searches and substitutions; location marking;joining multiple lines; auto-indentation; word abbrevia-tions and MUCH, MUCH MORE!

The PC/VI editor is available for I BM-PC's and genericMS-DOS based systems for only $149. For moreinformation call or write:

Custom Software Systems

P.O. Box 678

Natick, MA 01760

617-653-2555

The UNIX community has been using the VI editor foryears. Now you can run an implementation of the sameeditor under MS-DOS. Don't miss out on the power ofPC/VI!

*UNIX is a trademark of AT&T Bell Laboratories.

• BEST OF BIX •

EIX

Best of BIX

be executed in the same order that low resolution will display them (inC0MMAND.T0S). Starting with a new disk/AUTO folder, just copy themedium-res program into the folder first, then the desired program(s).

atari.st/tech #294, from jim kent [Jim Kent]

a comment to message 292

I'm curious about this AUTO folder stuff. Does this mean that if I ex-ecute a little program that does a SetScreen((long)-1, (long)-1, 1) andthen quits, GEM will be usable with the correct fonts, etc., for later ap-plications programs? I guess the AUTO folder stuff is done before GEMis fully initialized, before the desktop.inf file is read maybe?

This sounds like something perhaps quite useful to many people whoneed to 'trick" GEM a little. Please tell us more!

atari.st/tech #306, from swestrupa comment to message 292

Unfortunately, it is not possible to create a program that does a setscreen call that works from the folder. The reason is simple: The AUTOfolder is executed immediately after boot-up. That means that themachine will be in low resolution when it encounters the set screencommand. It will note the new resolution to itself and then reboot. Whilerebooting, it is still in low res and executes the AUTO folder. It makes anote reminding itself to go into medium res and then reboots. If youwrite a program that cheats by setting the video registers, then there is,as far as I have been able to determine, no way to tell GEM that youhave changed its resolution and it keeps on using the old fonts, etc.

atari.st/tech #310, from wes.peters [Wes Peters]a comment to message 306

Can't you just make your program switch to medium res and thenswitch back to low res on exit so GEM can do with it what it will? Ihave a monochrome system so I cant try this out, but can't you justswitch modes and then jump through the reset vector storedsomewhere in the "biblical" system variables?

atari.st/tech #311, from jim .kent

a comment to message 310

Sure, if you don't use GEM inside your program, you can switch it backand forth. I believe you'll have a small problem if there's an I/O errorand GEM wants you to cancel/retry, though, Anyway, I switch modes allthe time from TOS programs.

Line-A Routines

atari.st/tech #229, from chriskuku [Christoph Kukulies]

I am stuck in a problem due to lack of documentation of the $1007(bitblt) (read $a007). It says in the Line-A document that A6 points to ablock of parameters. Maybe someone can give me a layout on theseparameter blocks. I wanted to switch the logical screen base withSetscreen(), then draw something hidden with VDI calls, and then per-form a vro_cpyfm(.,.) with source_mfdb and dest__mfdb set (notequal to zero), vro_cpyfm does not work (!), so I turned, like so veryoften before, to Line-A. Who can help me?

atari.st/tech #232, from jim kent

a comment to message 229

Chris, this is well documented if you have the developer's I6 and 7 of the Line-A document. It looks something like:

struct blit_block

{

short b_wd, b ht;

; on pages

(continued)

394 BYTE • SEPTEMBER 1986

Inquiry 428

A NEW DIMENSIONIN COMPUTER EDUCATION

"PC TechVideo provides an in-depth overview of the installation ofcomputer components. We use it totrain all our technicians andassemblers.

John Atma, Chief Technicianfor Tech Personal Computers

"After viewing PC TechVideo, /

now understand the basics of howmy computer works and was evenable to replace the 1.2M drive onmy AT at work. PC TechVideo wasdefinitely worth the money."

Brenda Hudson, Data entry and processorfor Sark Enterprises

PC TechVideo is an innovative set oftwo 2-hour instructional video tapeswhich form a complete guide to theIBM® and compatible personal com-puter systems. Designed foreveryone, from the complete noviceto the software expert. PC TechVideoprovides the viewer invaluable firsthand instruction in the installation andmaintenance for IBM® and compati-ble systems.

Part I of PC TechVideo is a completeand comprehensive presentation ofprominent features of the PC familyincluding:Motherboard architecture

Memory Configuration and Addressing

Monitor Technology

Floppy and Fixed Disk Technology

Bus Architecture

Serial and Parallel Ports

Part II of PC TechVideo shows thedetails involved in actually installing,configuring, and replacing:

MotherboardsPower SuppliesFloppy and Fixed DisksDrive ControllersPopular Expansion Boards

PC TechVideo provides instruction notfound in books or magazines. It is anessential tool for anyone interested inunderstanding their PC You can't affordnot to have PC TechVideo.

"PC TechVideo is great. With thehelp of PC TechVideo, I was ableto install a 10MB hard disk on myXT without taking it to an expen-sive service center.''

Gita Beant, Economics majorat UC Irvine

.PCSTAR PRODUCTIONS

1040 EAST CHAPMAN AVE.ORANGE, CALIFORNIA 92666

OUTSIDE CALIFORNIA IN CONTINENTALU.S. - PUERTO RICO, HAWAII EX-CLUDING ALASKA:

1-800-438-8877

CALIFORNIA RESIDENTS CALL:

(714) 771-3560

SPECIAL

INTRODUCTORY

OFFER

$89.95

ORDER NOW

NAMF

AnnRFSS

CITY STATF

7IP

PHONF #

PI FARF RUSH

COPIES OF

PC TECHVIDEO IN

a VHS D BETA FORMAT

□ VISA □ MASTERCARD □ C.O.D.

a CHECK/MONEY ORDER ENCLOSED

ADD $3.50 SHIPPING.

CALIFORNIA RESIDENTS ADD 6% SALES TAX.

Inquiry 4I2 for End-Users. Inquiry 413 for DEALERS ONLY.

SEFTEMBER 1986 -BYTE 395

jest of Bix • Best of bix -best of BIX •

EIX

• Best of BIX •Best of BIX • best of BIX

short plane ct;

short fg col, bg color;

char op_tab[4];

short s_xmin, s_ymin;

short *s_form; /'pointer to the source pixels */

short s_nxwd, s_nxln, s nxpl; /'offsets to next word, line, plane 7

short d_xmin, d_ymin;short *dform;

short d_nxwd, d nxln, d nxpl;

short *p_addr; /* == NULL for no pattern 7

short p nxln, p nxpl;

short p_msk;char pad[24];}

The op tab is one of the more cryptic bits of raster logic I've seen.

It works with the fg color and bg_color. If you tell me more

specifically what you want to do, maybe I can tell you the color/opcombinations to try,

atari.st/tech #234, from alexl. [Alex Leavens]a comment to message 229

Check over in the GEM conference for commented C source code onusing the bit-blit routines from C. The parameter blocks are identical towhat you need for the Line-A stuff. The files in question are in gem/listings.st and are CRABS.C and MULTBALL.C.

atari.st/tech #296, from chriskuku

Now I'm at the point where I need to know more on the op_tab[ ]parameters. Where can I get this Line-A Document (which is obviouslymore detailed than where my information came from)?

atari.st/tech #299, from jim kent

a comment to message 296

Try making the op_tab = {4, 4, 7, 7}, fg color = color, bg color =

anything, and s nxpl = 0. This will take a single plane source to the

dest, making the dest color where there are ones in the source plane,and leaving the dest alone elsewhere.However, the op/color combination stuff is probably better described

in the GEM VDI manual (chapter 6) than in the Line-A bit.

I got what documentation I have from Atari. $300 for the developer'skit... the dread Alcyon compiler, etc., and some documentation.

atari.st/tech #303, from chriskukua comment to message 299

Thank you, Jim, for the quick answer. However, I still require additionalinformation on the meaning of the op_tab. It seems that the raster-optable in the GEM VDI manual does not correspond to the bit combina-tions I found. Could you or alexl. be so kind as to send me thenecessary information to make bit-block transfers "by hand," that is, anysource, any destination, any mode, preferably for monochrome but col-or wouldn't do any harm. Until I get the Line-A document from Atariyou are my only hope.Another point: What are the xmins, ymins for... clipping?

atari.st/tech #304, from jim kent

a comment to message 303

Indeed, the xmins, ymins are for clipping. Not many things are clippedby it, though. Rectangular area fills are affected.OK, OK, here's some more stuff on the op_tab:

op_tab[0]—logic employed when foreground and background colorsfor current plane are both 0.

op_tab[1]—when current plane fg color bit is 0 and bg is 1.

op_tab[2]—when fg is 1 and bg 0.op_tab[3]—when fg is 1 and bg is 1.

Now for the logic...

D' = 0

D' = S AND D

D' = S AND [NOT D]

D' = S

D' = [NOT S] AND D

D

SXOR DSOR DNOT [S or D]NOT [S XOR D]

/'just a plain copy 7

/'kind of futile waste of time normally 7

2 Mb EMS RAM / CLOCK

Lean & Mean!

FOR IBM PC/XT and COMPATIBLES

^3Ltg WITH LIFETIME

Solapak ST

B^Ma WARRANTY

Print SpoolerlRam Disk

ifeagjjfl KpSWS FEATURES

■' t&MFK* • Supports Lotus/lnlel/Microsofl

NOW with the "Solapak ST" print spooler you

WSixSa Expanded Memory Specifications

can:

U9£ (EMS)

fgmr • Uses either 64K or 256K DRAM chips

- print up to 8 files with separate printing

• User upgradable

qualities at one time.

^m^f * Car till system memory lo 640K, allowHB|H' EHf ,n9 'chaining memory to be used lor

- configure to any parallel printer with 32 userdefinable options.

wtf* • Includes Clock /Calendar (unction

- format your output, vary the print speed,

HB" • EMS memory manager sollware

,'''Hr S1QQ00

JHT l33 . EMS compatible RAM Disk software

pause/restart printing and much, much more...

The "Solapak ST" ram disk lets you:

3Sr WITH B4K included.■fir OF RAM * EMS compatible Print Spooler soltwareH^r included

- configure up to 1 Mb and 128 files.

- save time with a disk transfer rate of over 10

|^Hr The Apparat 2 MS Expanded Memory/Clock Board allows you the option ot

million bits/second.

^^^ Idling your syslem memory to the manmum 6J0K and/or using up to 2 MB RAMtor eipanded memory The expanded memory manager Sollware. which is provided, is

"Solapak ST" is the fastest, most versatile and

compatible with ihe Loius/imei^Microsoft Eipanded Memory Speculation The ciock/cal-

memory efficient professional print spooler and

pOTWMp ,0'' y0lJ ° " 0ma "* y "" '3 m * 'me

ram disk available for the ATARI ST.

ADDITIONAL PRODUCTS — . XT HARD DISK UPGrade

FREE CRT saver to help prevent image

• CLOCK/CALENDAR CARD • SH0RTSL0T PAR/SERCARO FOR

"burn-in". "Solapak ST" demo at your ST retailer

• PROM BLASTER t24 or 28 p>n) PPC. AT

or on BBS's nationwide.

• COMBO II CARD • 3B4K RAM CARD FOR PPC

$39.95

• 256K RAM CARD • ADD-ON DISK DRIVES

■ 51ZK RAM CARD • AT RAM CARD

■ EXTERNAL HARD DISK • AT COMBO CARD

Action Software - 69 Clementina St.,

• INTERNAL HARD DISK • CABLES

San Francisco, CA 94105 - (415) 974-6638

^X Apparat, Inc.

4401 South Tamarac Parkway — Denver, Colorado 80237

Mail orders: please include $3.00 P&H and Ca.residents add $2.60 sales tax. VISA, MC OK.

(303) 741-1778 — TOLL FREE 800/525-7674

ocsooo

iiiufrn

EXPANDS PC

PERFORMANCE AT A FRACTION

OF NETWORKING COST

• Adds four to eight serial communicationports to IBM PC, XT AT or compatibles.

• Standard RS-232 or optional RS-422 portsfor increased transmission speed and distance.

• Supported by Xenix, Multi-Link, RTCS, QNX,and other multi-user, multi-tasking operatingsystems.

STAR GATE TECHNOLOGIES, INC.Suite 109

33800 Curtis Blvd. • Eastlake. OH 44094Call: (216) 951-5922

Inquiry 23

Inquiry 407

Inquiry 328

Best of bix •

EIX

Best of BIX

10 D'

11 D'

12 D'

13 D'

14 D"

15 D'

NOTD

S OR [NOT D]

NOTS

[NOT S] OR D

NOT [S and D]

1

So this is the official stuff, but what does it mean? Another example:If you want the (new) destination to be a copy of the source, setop_tab[0] = op_tab[1] = op_tab[2] = op_tab[3] = 3 bg_color= fg color = anything.

Using BIOS from Interrupts

atari .st/tech #266, from rchecketts [Rick Checketts]

Has anyone tried calling the Atari ST BIOS from an interrupt routine? Iwas trying to use the serial I/O routines from within an interrupt, savingregisters and using a private stack space, etc., and while the programran for a while, it bombed for no apparent reason. Any ideas?

atari.st/tech #269, from davjon [David Jones]a comment to message 266

I don't know if this is any help, but I was having similar problems—Iwas calling some of the sound-oriented BIOS calls in an interruptroutine and kept getting tote of bombs after a while of correct opera-tion. I solved the problem by disabling all interrupts at the start of theroutine and enabling them again afterwards. My best guess is that theBIOS re-entrancy rule (no more than 9 levels, I believe) is beingviolated or something.

atari.st/tech #271, from jim kent

a comment to message 269

No more than 3 levels of re-entrancy, I believe.

atari.st/tech #273, from saka comment to message 271

Plus, aren't there 3 or 4 routines that cannot be called during systemprocessing at all? I dont have the guide handy, but I do remembersomething about using the printer during a BIOS interrupt. (Excuse me,TRAP! Old habits die hard.)

atari.st/tech #278, from rcheckettsa comment to message 273

The guide does say something about the printer but my routines didn'ttry talking to the printer. I did try blocking interrupts, and while this hadsome effect, it did not cure the problem. I did notice that the crashusually occurred during evnt_multi, so I tried flagging that evnt_multiwas active and skipping the interrupt routine and again this helped;that is, the program ran a bit longer and then bombed. I've workedaround it for now by leaving the interrupt just doing timing, etc., andleaving the rest to a fake interrupt that's just called as often as possible.Not an ideal solution. I'd still like to do it right!

atari.st/tech #279, from jtittslera comment to message 278

Here are some notes on using a BIOS function within an interrupthandler:

Nested Traps and Interrupts

Occasionally it may be necessary to make "nested" BIOS calls (forinstance, to get keyboard input from a critical-error handler). The BIOSis re-entrant to three levels; the total number of standard and extendedBIOS calls may not exceed three. Exceeding this limit will cause the

[continued)

Inquiry I94

FORTRAN PROGRAMMERS

Looking for the right PC FORTRAN LANGUAGE SYSTEM?If you're serious about your FORTRAN programming thenyou should be using F77L- LAHEY FORTRAN.

Editor's Choice - PC Magazine

• Full FORTRAN 77 Standard(F77L is not a subset)

• Popular Extensions for easyporting of minicomputerand mainframe applications

•COMPLEX* 16. LOGICAL. 1and INTEGER. 2

• Recursion - allocates localvariables on the stack

• IEEE - Standard FloatingPoint Arithmetic

• IMPLICIT NONE

• Long variable names -31 characters

• Fast Compile - Increase yourproductivity

• Source on Line Debugger(Advanced features withoutrecompiling)

• Arrays and Common Blocksgreater than 64K

• Clear and Precise EnglishDiagnostics

• Compatibility with Popular3rd Party Software

(i.e. Lattice C)

• Easy to use manual

• Technical Support from LCS

• NEW FEATURE - NAMEUST

F77L - THE PROGRAMMER'S FORTRANS477.00 U.S.

System Requirements: MS-DOS or PC-DOS, 256K. math coprocessor |8087/80287|

FOR MORE INFORMATION; (702) 831-2500 '

Lahey Computer Systems Inc.

] P.O. Box 6091 Incline Village, NV 89450/USA

International Dealers:

England: Grey Matter Ltd.,

Ravenholm Computing,Computer TransitionsMicrosoftware, Inc.,

Denmark:Australia:Japan:

SERVING THE FORTRAN COMMUNITY SINCE 1967

|0364| 53499

(02) 887249|03| 537-2786

(03) 813-8222

BYTE

back issues for sale

1985

1986

Jan.

S4.25

S4.25

Feb.

S4.25

S4.25

March

S4.25

S4.25

April

S4.25

S4.25

May

S4.25

June

S4.25

S4.25

July

S4.25

Auq.

S4.25

S4.25

Sept.

S4.25

Oct.

S4.25

Nov.

S4.25

Dec.

S4.25

SPECIAL ISSUES and INDEX

BYTE '83-'84 INDEX

SI.7S

1984 Special Guide to IBM PCs(Vol. 9, No. 9) $4.75

1985 INSIDE THE IBM PCs

(Vol. 10, No. Il| $4.75

Circle and send requestswith payments to:

BYTE Back IssuesP.O. Box 328Hancock, NH 03449

□ Check enclosed

Payments from foreign countries must be made in US funds payable ata US bank.

□ VISACard # _

Exp.

Signature

□ MasterCard

The above prices include postage in the US. Please add $ .50 per copyfor Canada and Mexico: and S2.00 per copy to foreign countries (surfacedelivery). Please allow 4 weeks for domestic delivery and 12 weeks forforeign delivery.

Name

Address

City

.State.

-Zip.

SEPTEMBER 1986 • BYTE 397

Best of BIX • Best of Bix • best of bix •

BIX

• best of BIX • Best of Bix • best of bi

system to crash.

' It is possible to call the BIOS from an interrupt routine. The basicproblem is to get around a non-atomicity bug in the BIOS trap handler.Before the interrupt routine can call the BIOS, it must decrement thesystem variable "savptr" [$4a2 long] by 46; after the trap, "savptr" mustbe restored to its original value. The interrupt code is responsible for itsown mutual exclusion. This interrupt "level" does not count as one ofthe three nested BIOS calls.

Applications should not attempt disk or printer I/O from critical-erroror interrupt handlers.

Command Line

atarLst/questions #205, from sprung

Can someone give me a quick rundown on the command line? I needto pick it up from Modula. Where is it and what's the format? It must bein these docs somewhere.

atarLst/questions #222, from alexl.a comment to message 205

Ron, the command line is a simple little thing that sort of allows you todo MS-DOS-like things (like passing parameters to a program). Dontbother with it. Buy Beckemeyer's C-Shell.

atarLst/questions #223, from sprunga comment to message 222

Thanks Alex—I know what the command line is. I need it for my ownutilities in M2. I have C-Shell, and I talked with David Beckemeyerabout the command line, but he didnt know how I could get it either.All I really need is a simple way to pick up the base page address atrun time.

According to the review in May "Antic," Personal Pascal provides thecommand line, but no sign of it in M2.

atarLst/questions #224, from jtittslera comment to message 223

Well, I dont know how to do it from M2, but when a program is in-voked, a pointer to the base page of that program is available underthe long on the top of the stack. In code (which is a bit easier for meto deal with than English):

start: move. 4(a7),a0 * aO now points to the base page

move.1 aO, base * put the pointer in the C

* external

It is quite possible that the M2 run-time library does something similar.

atari.st/questions #225, from sprunga comment to message 224

"under the long ... —What exactly is in A7? And what does the 4 doto that number? I can pick up the A7 register (or any other), but I'm notclear on how to make that into the base page address.

atarLst/questions #226, from cheath [Charlie Heath]a comment to message 225

move.l 4(a7), base

will take the address that was the last thing put on the stack into"_base," which you can reference within the language (assuming M2has the same underscore convention as C).

atari.st/questions #227, from saka comment to message 226

Yeah, but isn't that assuming the M2 run-time library hasnt used thestack already?

atari.st/questions #228, from sprunga comment to message 227

That seems to be the case—I've been playing around with it and havemanaged to pick up and reference the address off the stack, but itdoes not contain the base page address by the time I get it. Sigh. I'llhave to pursue it with TDI. Thanks, guys.

atarLst/questions #229, from jtittslera comment to message 225

A7 is the stack pointer. It is a very reasonable thing for the run-timelibrary to squirrel away that pointer before it does anything else. For ex-ample, in the developer's C compiler that I use, that function is the firstthing done in the startup module (GEMS, GEMSTART, MYGEMS, etc.).

Screen Escape Codes

atarLst/questions #236, from sprung

Can someone tell me where, in the DevPak or elsewhere, to find all thescreen and cursor control sequences for the monochrome monitor? Orexactly what it emulates, as I have the VDT book by Stephens. If VT52,my book lacks cursor on and off (which I got from Steve Tether's code)and reverse video.

atarLst/questions #237, from alexl.a comment to message 236

The screen codes are in the "Hitchhiker's Guide to the BIOS."

atari.st/questions #239, from jruley [Jonathan Ruley]a comment to message 236

Get the abacus "internals" book—it has a pretty good rundown. Theemulation is incomplete VT52.

atarLst/questions #243, from jtittslera comment to message 236

The screen escape codes are an (improper) superset of those in theVT52, with a few additions from the H/Z-19 (and a couple more thatprovide similar functions but are accessible in a 2-character sequenceinstead of 3). Specifically, for the ones you asked about:

ESC e Enable cursor

ESC f Disable cursor

ESC p Enter reverse-video mode

ESC q Exit reverse-video modeAlso, someone was asking about wrap/nowrap:

ESC v Wrap at end of line

ESC w Discard at end of lineOne shortcut to erase home is

ESC e Clear screen and home cursor (same as ESC h ESC j)

IBM PC ANDCOMPATIBLES

The majority of this month's IBM PC section is taken up with an in-volved exploration for the answer to a seemingly simple question. Aquery concerning a single interrupt provokes lengthy discussionculminating in the dissection of PRINT In addition to being informativefrom a systems point of view, this example shows the real nature of on-line conferencing, which allows running discussion without constraintsof time or location. This central discussion is bracketed by a shortthread on interfacing an Apple color monitor with a PC compatible, and

398 BYTE • SEPTEMBER 1986

ix • Best of Bix •

EIX

Best of BIX •

a more involved thread on the intricacies of calling C languagesubroutines from inside a BASIC program.

Apple Monitor to PC Connection

ibm.pc/pc.hardware #806, from rjackson [Robert Jackson]

I have an interesting project that no one around here can help me with.I have an Apple RGB Color Monitor 100 that I would like to hook up tomy Z-150 (IBM compatible). My first problem is that I cant find anyonewho can tell me if it will work in the first place, much less help mebuild the necessary cable. If anyone can help, I would appreciate it. Iuse both computers every day and really miss the color on my Zenith.

ibm.pc/pc.hardware #807, from dmick [Dan Mick]a comment to message 806

Do you have docs on IBM-compatible video output (or Zenith's docs fortheir board; same thing) and docs on the input connector for the Applemonitor? There are so few signal lines that it seems from examiningthese docs you could glean what you need, even if you're not an EE.

ibm.pc/pchardware #808, from barryn [Barry Nance]a comment to message 806

I haven't the slightest idea of what the connector for the Apple RGBmonitor looks like, but here's what the TTL output of a standard IBMColor Graphics Adapter looks like:

TTL Adapter

RGBI

Monitor

GroundGround

- Red -• Green -

- Blue -

< —<—<—<—<—

< Intensity > 6

< Reserved > 7

< Horiz. Drive > 8

< Vert. Drive > 9

-> 1->2->3->4->5

Color Graphics

RGB Output

9-Pin D-Shell

Connector

ibm.pc/pchardware #809, from rjacksona comment to message 808

Thanks for the IBM pinouts. I now have two problems. First, I can't getanyone to tell me for sure if the monitor (frequency- and scan-rate-wise)will really work on an IBM. Second, Apple wasnt kind enough to sup-ply the pinouts for their monitor. That shouldn't be too hard to get, con-sidering the available technical information on the Apple II. If anyoneknows whether or not the Apple RGB monitor will work, I'd really ap-preciate a yea or nay.

ibm.pc/pc.hardware #817, from mfg [Marc Greenfield]a comment to message 809

I have converted an Acorn color monitor to work on my IBM by simplyattaching a DIN-9 connector to the circular plug that would normallyhave attached to an Apple. I think that based on this your monitorshould work on your IBM, that is, unless it is a special brand that maywork with a special controller. If the pin configuration matches thatlisted in one of the comments above, then it should work OK.

Interrupt 28H

ibm.pc/pcsoftware #999, from jcummins [John Cummins]

Anyone know what INT 0x28 does?

ibm.pc/pcsoftware #1002, from jrobie [Jonathan Robie]a comment to message 999

It isn't used by BIOS, according to my IBM PC Tech Ref manual.

(continued)

Computers ForThe Blind

Talking computers give blind and visuallyimpaired people access to electronic infor-mation. The question is how and howmuch?

The answers can be found in "The SecondBeginner's Guide to Personal Computers forthe Blind and Visually Impaired" publishedby the National Braille Press. This compre-hensive book contains a Buyer's Guide totalking microcomputers and large print dis-play processors. More importantly it in-cludes reviews, written by blind users, ofsoftware that works with speech.

Send orders to:

National Braille Press Inc.,

88 St. Stephen Street, Boston, MA 02115

(617) 266-6160

NBP is a nonprofit braille printing and publishing house.

Subscription Problems?

^US.MAIL_p^

We want to help!

If you have a problem with your BYTE

subscription, write us with the details. We'll

do our best to set it right. But we must

have the name, address, and zip of the

subscription (new and old address, if it's a

change of address). If the problem involves

a payment, be sure to include copies of the

credit card statement, or front and back of

cancelled checks. Include a "business

hours" phone number if possible.

BYTESubscriber Service

P.O. Box 328Hancock, NH 03449

SEPTEMBER 1986 -BYTE 399

C Primer Plus

Join BYTE: The Book Clubfor the Computer Professional

PRACTITIONER'S GUIDE TOADA. By R. Wallace. 320 pp., 60illus. This much-needed one-stopinfo source covers all aspects ofADA, the language, the environ-ments, policies and standards, de-sign strategies, products and ven-dors! Plus, its unique handbookformat provides a concise roadmapthat guides you through all themany aspects of this complicatedfield.

679/223B $38.95

(Counts as 2 of your 3 books)

SOFTWARE ENGINEERINGHANDBOOK. By the Staff ofGeneral Electric Company. 224pp.,114 illus.. outsized 8V2X 11 format.Proven-in-practice methods fortracking, controlling, and reportingeach item produced as a part of thesoftware development process aredescribed and demonstrated. Re-view procedures are covered in de-tail. A recommended format for thesystem specification document isalso included.

231/656A $59.50

(Counts as 3 of your 3 books)

HANDBOOK OF SOFTWAREENGINEERING. Edited by C.Vick ancf C. Ramamoorthy. 683 pp.,332 illus. and tables. Emphasizingquality assurance, this first-everguide shows you how to design,implement, test and maintain vir-tually any type of software. Rang-ing from graphic theoretic model-ing to software development yousee how to apply the latest soft-ware engineering techniques ineach stage of development.583204-6A $62.50

(Counts as 3 of your 3 books)

SINGLE-CHIP MICROCOM-PUTERS. Edited by P. Lister. 237pp., 102 illus., 25 tables. Compre-hensive coverage of the single-chipmicros now available, their char-acteristics and application range.Separate chapters cover Motoro-la's M6801 & M6805 families, Tl'sTMS 1000 & TMS 7000 devices, Zi-log's Z80, National Semiconduc-tors COPS 400 and Mostek's 16-bitMK 682000.

380/309B $39.50

(Counts as 2 of your 3 books)

400 BYTE- SEPTEMBER 1986

SYSTEM DESIGN FROMPROVABLV CORRECT CON-STRUCTS. By J. Martin. 392 pp.,155 two-color illus. Covers "HigherOrder Software," the break-through in system development thattranslates & refines human think-ing until program codes generateautomatically.

583259-3B $37.50

(Counts as 2 of your 3 books)

Get the competitive edge with

the newest and the best information

in your field ... with books from

all the leading publishers.

New MembersTAKE ANY 3 BOOKSFOR ONLY $loo EACH-. Values up to $89.00 ^

SOFTWARE PORTABILITY.

By O. Lecarme and M. Pellissier-Gart. 256 pp., 40 illus. A compre-hensive guide that provides in-depth, illustrated coverage of all thetools and techniques used to de-velop portable programs or totransport existing software to otherenvironments. Actual case studiesare used to show how these tech-niques can work for you.369/488B $29.95

(Counts as 2 of your 3 books)

ENCYCLOPEDIA OF ELEC-TRONICS. Edited by S. Gibilisco.983pp., more than 1,300 illus., out-sized 8V2 x 11 format. From basicelectronics terms, amateur radioand microcomputer technology tostate-of-the-art digital electronicapplications, this massive refer-ence provides practical informa-tion on each topic. Contains morethan 3,000 alphabetically arrangedarticles.

583348-4A $60.00

(Counts as 3 of your 3 books)

COMPARING AND ASSESS-ING PROGRAMMING LAN-GUAGES: ADA • C • Pascal.

Edited by A. Feurer and N. Behani.277 pp., softbound. Enhances yourunderstanding of these languagesby comparing their strengths andweaknesses. Contrasts and as-sesses each so you can choose thebest for your application.583262-3 $16.95

DATA STRUCTURES FORPERSONAL COMPUTERS. By

Y. Langsam, M. Augenstein and A.Tenenbaum. 560 pp., 116 illus.Gives you a solid grounding in high-level programming techniques bycombining the elementary con-cepts of data structures with guid-ance on structured programmingin BASIC.

583186-4B $29.95

(Counts as 2 of your 3 books)

PROGRAMMING ASSEM-BLER LANGUAGE. By P. Abel.2nd Ed., 581 pp., 154 illus. and list-ings. Updated and expanded thiscarefully detailed study of the 370mainframe and Assembler coversthe essentials of Assembler coding,binary operations, and externalstorage. Also discusses debugging,floating point operations, macrowriting and operating systems.583088-4B $26.95

(Counts as 2 of your 3 books)

MULTIPLE PROCESSOR SYS-TEMS FOR REAL-TIME AP-PLICATIONS. By B. Liebowitzand J. Carson. 383 pp., 150 illus.This definitive guide for the prac-ticing professional covers each ofthe MPS's major building compo-nents, design tools and techniquesand implementation methodology.Case histories from both govern-ment and industry are included.583237-2B $39.95

(Counts as 2 of your 3 books)

STANDARD HANDBOOK OFENGINEERING CALCULA-TIONS, 2/e. Edited by T. G. Hicks.1,468 pp., 1.292 illus., tables. Nowrevised, updated, and considerablyexpanded, this huge handbook pro-vides more than 5,100 step-by-stepprocedures to solve the kinds of en-gineering problems you encountermost frequently in your work. USCSand SI are used throughout.

287/35XA $59.50

(Counts as 3 of your 3 books)

SUCCESSFUL DATA PRO-CESSING SYSTEM ANALY-SIS, 2/e. By T. Gildersleeve. 369pp., 117 illus. This completely re-vised, updated and expanded guidecovers the whole process of systemanalysis. In clear, professional lan-guage it covers identifying theproblem and developing a cost-benefit analysis to testing the sys-tem for acceptability.583311-5B $30.95

(Counts as 2 of your 3 books)

PROGRAMMABLE CON-

TROLLER HANDBOOK. By R

Wilhelm, Jr. 718pp., 341 illus. Firstcomprehensive reference on thesespecial-purpose computers that arenow the standard solution to mostindustrial control applications.Special attention is given to themany functions and operations notpossible to perform with industrialcontrol relays.

583244-5B $49.95

(Counts as 2 of your 3 books)

DATA COMMUNICATIONS,NETWORKS AND SYSTEMS.

T. Bartee, Editor-in-Chief. 359 pp..196 illus. Brings you up-to-date pmdigital system design. Shows howthey operate and the trade-offs theyentail. Covers basic system ap-proaches, network security, errorcontrol techniques and commoncarrier regulations.583276-3B $39.95

(Counts as 2 of your 3 books)

FROM FLOWCHART TO PRO-GRAM. By R. G. Todd583600-9 SI 9.95

HOW TO BE A SUCCESSFULCOMPUTER CONSULTANT.

By A. Simon

572/968 $16.95

THE THEORY S- PRACTICE OFCOMPILER WRITING. By J.

Tremblay & P. Sorenson651/612B $43.95

(Counts as 2 of your 3 books)

INTRODUCING PC-DOS & MS-DOS. By T. Sheldon565/597 $18.95

68,000 MICROPROCESSOR.

By W. Triebel & A. Singh

583613-OB $34.95

(Counts as 2 of your 3 books)

PROGRAMMING WITH

TURBO PASCAL. By D. Carroll852908-5B $34.95

(Counts as 2 of your 3 books)

COMPUTER ARCHITECTURE,

3/e. By C. Foster & T. Iberall583278-XB $38.95

(Counts as 2 of your 3 books)

MICROPROCESSOR SYSTEMDESIGN CONCEPTS. By N. Al-

exandridis

583313-1B $32.95

(Counts as 2 of your 3 books)

THE ENCYCLOPEDIA OFELECTRONIC CIRCUITS. By R.

F. Graf

583265-8A $50.00

(Counts as 3 of your 3 books)

DESIGN AND ANALYSIS OFDISTRIBUTED REAL-TIMESYSTEMS By P. J. Fortier216/193B $39.95

(Counts as 2 of your 3 books)

THE ADA PRIMER By PA. John-son326/266 $16.95

ELECTRONICS: CIRCUITS 8-

SYSTEMS. By S. Madhu583292-5B $39.95

(Counts as 2 of your 3 books)

FUNDAMENTALS OF PRO-GRAMMING LANGUAGES,

2/e. By E. Horowitz

583303-4B $29.95

(Counts as 2 of your 3 books)

DATABASE DESIGN, 2/e. By

G. Weiderhold

701/326B $41.95

(Counts as 2 of your 3 books)

THE MASTER HANDBOOKOF HIGH-LEVEL MICROCOM-PUTER LANGUAGES. By C.

Taylor

583096-5 $21.95

EH!

* 3 books for only $1.00 each ... if you join now for atrial period and agree to purchase three more books—at handsome discounts—during your first year ofmembership. (Publishers' prices shown)

VIDEOTEX/TELETEXT. By A.

Alber

009/570B $39.50

(Counts as 2 of your 3 books)

CICS Made Easy. By J. J. LeBert369/720B $29.95

(Counts as 2 of your 3 books)

COMPUTER PERIPHERALSFOR MINICOMPUTERS, MI-CROPROCESSORS, ANDPERSONAL COMPUTERS. By

C. L. Hohenstein

294/518B $39.50

(Counts as 2 of your 3 books).

THE HANDBOOK OF COM-PUTERS AND COMPUTING.

By A. Seidman and I. Flores583138-4A $77.50

(Counts as 3 of your 3 books)

REAL-TIME COMPUTING:With Applications to Data Ac-quisition and Control. Editedby D. A. Mellichamp582844-8B $44.50

(Counts as 2 of your 3 books)

ASSEMBLERS, COMPILERS,AND PROGRAM TRANSLA-TION. By P. Calingaert582110-9B $27.95

(Counts as 2 of your 3 books)

PASCAL FOR PROGRAM-MERS. By O.LeCarmeS- J. Nebut369/585B $25.00

(Counts as 2 of your 3 books)

ADVANCED C. PROGRAM-MING. By The Waite Group583618-1 $21.95

CIARCIA'S CIRCUITS CEL-LAR, VOLUME V By S. Ciarcia109/672 $19.95

INTERACTIVE MESSAGESERVICES. By D. Chorafas108/501B $32.95

(Counts as 2 of your 3 books)

STRUCTURE & INTERPRE-TATION OF COMPUTER PRO-GRAMS. By H. Abelson & G.Sussman

583258-5B $34.95

(Counts as 2 of your 3 books)

C PRIMER PLUS. By M. Waite.S. Prata & D. Martin583111-2B $29.95

(Counts as 2 of your 3 books)

THE UNIX PROGRAMMINGENVIRONMENT. By B. Ker-

nighan & R. Pike

583007-8B $26.95

(Counts as 2 of your 3 books)

THE THEORY OF RELA-TIONAL DATABASES. By D.

Maier

582986-XB $35.95

(Counts as 2 of your 3 books)

i— More Books to Choose from —i

LEARNING WITH LOGO.

By D. H. Watt

685/703 $22.95

MICROCOMPUTER ANDMICROPROCESSOR IN-TERFACING. By J. C. Cluley582585-6B $27.50

(Counts as 2 of your 3 books)

MICROPROCESSOR ANDMICROCOMPUTER DATADIGEST. By W. H. Buchs-baum & G. Weissenberg582835-9B $29.95

(Counts as 2 of your 3 books)

MICROPROCESSORDATA BOOK. By S. A.

Money

427/062B $35.00

(Counts as 2 of your 3 books)

BUILD YOUR OWN Z-80COMPUTER. By S. Ciarcia109/621 $22.85

MICROCOMPUTER IN-TERFACING. By B. Artwick789/436B $28.00

(Counts as 2 of your 3 books)

PRINCIPLES OF INTER-ACTIVE COMPUTERGRAPHICS, 2/e. By W. M.

Newman & R. Sproull463/387B $45.95

(Counts as 2 of your 3 books)

MICROCOMPUTER OP-ERATING SYSTEMS. By

M. Dahmke

150/710 $18.95

ELECTRONIC ENGI-

NEERS' HANDBOOK,

2/e. By D. G. Fink & D.

Christiansen

209/812A $89.00

(Counts as 3 of your 3 books)

Z80 USERS MANUAL. By

J. Carr

582336-5 $16.95

INTRODUCING THE UNIXSYSTEM. By H. McGilton &R. Morgan450/013 $24.95

HANDS-ON BASIC For theIBM1' Personal Com-puter. By H. Peckham491/78X $24.95

Why YOU should join the Byte Book Club now!

# Best and newest books from ALL publishers! Books are selectedfrom a wide range of publishers by expert editors and consultants togive you continuing access to the best and latest books in your field.

# Big Savings! Build your library and save money tool Savings rangeup to 40% or more off publishers' list prices—usually 20% to 30%.

# Bonus books! You will immediately begin to participate in our BonusBook Plan that allows you savings up to 70% off the publishers' pricesof many professional and general interest books!

# Convenience! 14-16 times a year (about once every 3-4 weeks) youreceive the Club Bulletin FREE. It fully describes the Main Selection

and alternate selections. A dated Reply Card is included. If you wantthe Main Selection, you simply do nothing—it will be shipped auto-matically. If you want an alternate selection—or no book at all—yousimply indicate it on the Reply Card and return it by the date specified.You will have at least 10 days to decide. If, because of late delivery ofthe Bulletin you receive a Main Selection you do not want, you mayreturn it for credit at the Club's expense.

As a Club member you agree only to the purchase of three addtionalbooks during your first year of membership. Membership may be dis-continued by either you or the Club at any time after you have pur-chased the three additional books.

Fill out the card and mail today! If the card is missing, write to:

BYTE BOOK CLUB™, P.O. Box 582, Hightstown, New Jersey 08520-9959

SEPTEMBER 1986

401

BEST OF BIX • BEST OF BIX • BEST OF BIX •

EIX

• BEST OF BIX • BEST OF BIX • BEST OF Bl

Where is this interrupt used?

ibm.pc/pcsoftware #1007, from dmicka comment to message 999

My impressions are, from looking at its code and the code for the'transient loader" in DOS 2.1, that it is the loader for COMMAND.COMto initialize the system. Once I have DOS loaded, there's not a singleINT 28H to be found anywhere in memory, DOS's or otherwise, whichleads me (also) to that suspicion. You might snoop at IBMDOS.COMand see if it's called in that code.

ibm.pc/pcsoftware #1008, from mjk [Martin Kochanski]a comment to message 999

INT 28 is called by DOS repeatedly whenever it gets bored, that is,waiting for the user to type something at the keyboard. INT 28 doesnothing whatsoever. But if you have the standard print spoolerPRINT.COM installed, then it intercepts INT 28 and copies a little text tothe printer before returning to DOS (which tests the keyboard and callsINT 28 again if there's still nothing). It may follow that you can use INT28 for some background purposes of your own, and even that you cancall DOS disk routines from within it, but I'm not sure.

ibm.pc/pcsoftware #1009, from dmicka comment to message 1008

Yeah, I was thinking of INT 2EH, which someone asked about earlier.INT 28H does exactly nothing (IRET) on the IBM XT and Zenith Z-150,that's right. However, I couldn't find any calls, including DOS calls, to iteither. I'll look again on both, I guess, and examine PRINT.COM, too. Ialways thought PRINT used the timer interrupt.

ibm.pc/pcsoftware #1010, from barryna comment to message 1009

>thought PRINT used the timer interrupt.

I think PRINT uses IRQ7 (hardware interrupt F, at addresses 3C-3F) totell it when it can send the next character to the printer via INT 17.

ibm.pc/pcsoftware #1011, from dmicka comment to message 1010

That would seem to make any other process (the foreground task) beawfully slow; that is, the CPU is tied up printing chars as fast as it can.OK, OK... I'm ripping PRINT apart tomorrow. You guys just wont letme get disinterested in whatever you bring up!

ibm.pc/pcsoftware #1012, from barryna comment to message 1011

Don't bother tearing it apart... just try this experiment: Tell PRINT toprint a fairly long file, something that will give you time to do sometelecommunications while it's printing. Then, while the print is occurring,use your communications software to log onto a bulletin boardsomewhere. Watch closely to see if some of the communicationscharacters are dropped. Then hit the button on the printer that de-selects it and watch for the dropped-characters problem to go away.The missing communications characters are a result of the PRINTprogram tying up the PC's interrupt processor for too long a time.

ibm.pc/pcsoftware #1016, from rschnapp [Russell Schnapp]a comment to message 1010

I seriously doubt that any IBM/MS software uses IRQ7. It was poorly im-plemented on early monochrome adapters, and the bad design wascopied by too many board makers. The INT 28 hook to PRINT soundsright.

ibm.pc/pcsoftware #1017, from suer [Sue Rosenberg]a comment to message 1016

The following information about INT 28 came from the NBS bulletinboard and was posted by Ross M. Greenberg:

INT 28: Internal routine for MS-DOS

This interrupt is called from inside the "get input from keyboard"routine in DOS if, and only if, it is safe to use INT 21 to access the diskat that time. It is used primarily by the PRINT.COM routines, but anynumber of other routines could be chained to it by saving the originalvector and calling it with a FAR call (or just JMPing to it) at the end ofthe new routine.

._?|y.-"i!R.-"'pjjj.

i Deals, Bids, Declares, Defends and ScoresEnjoy over a MILLION Deals - or your ownScoring: Rubber-MPS-IMPS-Criicago-PartialsEither partnership can optionally SignalRuns on either a Color-Graphics or Text DisplayCancel, Claim, Concede, Hinls, Take-BackFor 1 to 3 players - partners or opponentsNovice to Advanced Features- lor all playersNewsletter subcription and Owner TournamentsDisk: Not Copy-Protected - can be Backed-up

• Here is what the Critics are saying..."RECOMMENDED" Jerry Pournelle - BYTE JAN 86"A Challenging Opponent" PC World - NOV 85

FOR ANY 256K IBM-PC OR COMPATIBLE

THE $75 BRIDGE PARLOR GameUse it FREE for 15 days - then decide

S 1-716-865-8412 Today

or Send order o- Parlor Software Co.Box 17850, Rochester, NY 14617(No $4 S&H Charge on Phone orders)

Same Day Shipping - Dealer Inquires Welcome

Guaranteed to be Strongest Available

Inquiry 263

ZIMCO

INTERNATIONAL, INC.

• MULTTTECH PC CLONE PACKAGE

• w/256K/monltor/DOS/ports/cfock/moreImm

■H.WimM.VJll.NJlll.'.'JUl

• IBM/APPLE/HARDWARE/SOFTWARE/ASK USI »

C—ilM I ——a

• EVEREX Graphics Edge S235 »

tnVNiH.'lTTTMM^^—— Mill

« AST 6 PackPlus 3B4K S209 »

• HERCULES Graphics Card S200 •

• SEAGATE 20m w/PCXT controller

tjBssasimmMtsMmEBM

• MOUNTAIN 20meg HardcardMliMIJW.II'.IJ.IjJlJ.M.Iimi

• PRINTERS

EBMsaamBsms,

• EPSON FX8S

a

i-r.irVnmE

> IBM PROPRINTER/XL

Tmmmmmrzsnzz

• HAVES I200/I2O0B/2400

S359/348/5S9 •l!H'M«J.I„I.B»tH.U

CALL tor Catalog & latest PRICES

(/)1-800-227-6647

For Technical Support & NYS

Call 718-479-7888

DSB# 130151913

DATA ACQUISITIONAND CONTROL

DATATAKER:$1897 COMPLETE

46 Analog/8 Digital Inputs

Matches Common Transducers & Sensors

Built-in Software/RS-232 Communications

Portable

Dedicated or Stand Alone

What makes it a best buy?Call or write today:

f^ZI-TECH

^^■^J INSTRUMENT CORPORATION

2151 Park Boulev.ml/P.O. Box 60490, Palo Alto. CA 94306 Telephone: (415) 326-2151

Inquiry 389

Inquiry 388

ST OF BIX • BEST OF BIX • BEST OF BIX

EIX

Best of BIX • Best of BIX • Best of BIX

Until PRINT.COM installs its own routine, this interrupt vector simplypoints to an IRET op code.

ibm.pc/pcsoftware #1018, from dmicka comment to message 1017

Thanks, Sue! Timely for sure! And thanks for trying to save me thetime, Barry, but if it's not obvious by now, I'm kind of obsessive. I'll in-vestigate and find out what all of you are telling me, I guess, althoughthere still seems to be some controversy over INT 28H software call orhardware interrupt.

ibm.pc/pcsottware #1021, from dmicka comment to message 1012

But if PRINT used IRQ7 like you say, the communications ports (IRQ2and 3) would take precedence, right? What I mean is, wouldn't theserial interrupt interrupt the IRQ7 service routine? Or does the 8237mask out all eight while it services one interrupt? I forget and donthave my hardware docs handy.

ibm.pc/pcsoftware #1022, from barryna comment to message 1021

Good question. Did you have a chance yet to trace throughPRINT.COM to see exactly what's going on?

ibm.pc/pcsoftware #1024, from dmicka comment to message 1022

No, but you can bet I will. I did look at my reference for the interruptcontroller, though, which is (contrary to what I said before) an 8259A(I've been having problems with my DMA chip, too). Anyway, if a lower-level interrupt comes in while a higher level is being serviced, the8259A passes the IRQ to the CPU, which will respond if the interruptmask is enabled (STI). So, if PRINT'S hypothetical ISR for IRQ7 does anSTI, the comm ISR should execute in the midst of PRINT. I should justshut up until I get to PRINT.

ibm.pc/pcsoftware #1028, from dmicka comment to message 1024

ACK! <—Bill the Cat

Gad! PRINT takes over the following vectors:

28: Called once from within DOS. I can believe it's from the KB

handlers. Just before an exit from the routine, whatever it is.2F: Documented. Unused except by the PRINT system.13: Disk access (!). Seems to be a sort of "isolation" call... don't

print characters while disking, maybe?17: Printer. Obvious reasons.05: Print screen. Can't start one unless no print files going,

Reasonable.14: Communications (!). Pretty complex. I'll look a little further. I

suspect this is to add buffering (and maybe has a bug, Barry).1C: Timer tick. I'll bet this is what does the actual bground/fground

context switch to send some chars to printer. Looks that way.

There's a million variables/semaphores involved with this (surprisinglybig and complex) routine. I think just for my own information about con-text switching, I'll probe further... but not tonight.

Who asked about this, anyway? Have we answered your questionyet?

ibm.pc/pcsoftware #1030, from barryna comment to message 1028

It's past the point of caring who asked about this. It's reached the pointof raw, unadulterated curiosity

Let's see. First off, I notice INT F isn't on the list. There goes myoriginal theory out the window.

INT 13? PRINTCOM does print from the disk, unlike other spoolerprograms. I can see why PRINT would need to be "protectionist" aboutthe disk. I wonder if it releases (restores) the previous INT 13 vectorwhen it finishes?

INT 05... I've replaced that one on occasion myself. If PRINT didthings by the book, it wouldn't replace the interrupt vector; it would justset the print screen flag (at 0050:0000) to a nonzero value. This is sup-posed to tell the print screen routine that something is in progress andit had better not dump the screen at this time.

INT 14? Maybe it has to do with being able to redirect parallel outputto a printer connected to a serial port. It can't be for buffering pur-poses ... the INT 14 routines dont provide any buffering and are prettyuseless for communications purposes, except perhaps for setting baudrate and communications parameters. INT 14 should never be used foractual send/receive operations.

ibm.pc/pcsoftware #1040, from dmicka comment to message 1030

Yeah, INT 14 probably has to do with serial printers. But I meant itmight be adding the buffering to the ISR that should've been in theBIOS from the beginning, since things are just that much more criticalwhen you've got a PRINT process hogging CPU time. About your com-ments on INT 05 (print screen)... seems like that flag is defined as"there's a screen print" in progress or "error during screen print," whichmay or may not be generally applicable to printer activity in general.Do any popular applications or languages allow you to interrupt a printprocedure with a print screen request? Hmmm ... guess I've gotanother thing to investigate.

ibm.pc/pcsoftware #1042, from barryna comment to message 1040

If the INT 05 routine leaves a value of 255 in the print screen flag, it'ssignaling that it ran into an error. However, if the flag has a value of 1when the Shift/PrtSc keys are pressed, the INT 05 routine will just exit(no action taken). Or if INT 05 is invoked from within an application andthe flag is already a 1, it just exits.

ibm.pc/pcsoftware #1044, from dmicka comment to message 1042

Yeah, right, but it's set/read by the INT 05 routine; that was my onlypoint. (Actually my point was that it was defined to be set/read by thatguy. Whether or not he's the only one allowed, I don't know.)

ibm.pc/pcsoftware #1045, from barryna comment to message 1044

Well, if I wrote a payroll application that printed checks, I'd be sure tostick a '1" in the print screen flag while I was printing checks. Whetherprogrammers actually go to that extent or not I don't know. I under-stand a great deal of IBM's "application software" (such as the Assistantseries) was ported from System/23 BASIC to the PC, and I doubt ifmuch effort was put into any of the peculiarities of the PC.

ibm.pc/pcsoftware #1046, from dmicka comment to message 1045

I know what you mean ... I'd either set the flag and hope it worked inthe next BIOS release or take the INT 05 vector and use my own flag.By the way, WordStar, Lotus 1A, and my favorite program editor allallow print screens while printing.

(continued)

SEPTEMBER 1986 • BYTE 403

Best of BIX • Best of BIX • Best of BIX

BIX

Best of BIX • Best of BIX • Best of BL

Linking BASIC and C

ibm.pc/pc.software #1141, from pel [Peter Cleary]

Hello....

I'd like to know if anyone here has tried to make a patch to link Cand BASCOM. I have an application that now has to use files to com-municate data back from C. I really don't know why they decided not tosupport BASIC. Many existing BASIC programs could use some opti-mizing. Meaning C subroutines. If any .ASM wizard has done it, couldhe/she let me know about it? Thank you.

ibm.pc/pcsoftware #1142, from gperfect [George Perfect]a comment to message 1141

I hooked Microsoft BASIC (compiled) into some Texas Instrumentsspeech driver routines written in Lattice (I think) some years ago. TheTl code was designed as standard C libraries so the code should re-main sound. Basically, you need to convert arguments passed byBASIC'S "CALL func(args)" facility into the format expected by your Ccompiler. BASIC passes all arguments as pointers. Version 5.3 of theMicrosoft compiler (and later) passes them on the stack. Where thecalled C function expects (say) an INT value, your conversion routinemust push the value pointed at by the BASIC argument onto the stack.

On return from C, you must remember to pass back the returnedvalue, if any. I did this by passing an extra argument via BASIC'S CALLand stored the result in that.

A couple of ground rules:

• Never allow C to modify a BASIC string—at least not its length.BASIC strings are stored with two bytes (an INT) describing the lengthimmediately followed by the string itself. C has no length field butstores a NULL (zero) byte at the end of the string.

• If you pass a BASIC string to the C routine (say, a filename) BASICactually passes a pointer to its length field. You must increment thispointer by two bytes before passing it on to C.

• Some C routines use quite a lot of stack space; ensure the stack inyour main program is adequate or switch to a separate stack (the ap-proach I adopted) before calling C.

• Be wary of calling C functions that allocate memory or perform I/Oon standard devices (stdin, stdout, etc.), as these are normally initializedby the C program's startup routine, which will not have been called.Some C functions call these routines as side effects; if in doubt, readyour library manual.

I hope this helps. If you need any more info, let me know. Ifnecessary, I'll dig out the assembler I wrote to do the job and post it inlong.messages.

ibm.pc/pc.software #1144, from btonkin [Bruce Tonkin]a comment to message 1142

BASIC strings are passed as a pointer to the string descriptor. On 8-bitversions of BASIC, the first byte pointed to is the string length, and thenext two bytes are the location of the actual string. On 16-bit versions(compiled), the first two bytes are the length as a signed integer, andthe next two are a pointer to the string in the current data segment.Neither the length nor the pointer may be modified except in veryspecial circumstances.

ibm.pc/pc.software #1145, from barryna comment to message 1144

What circumstances, Bruce? I thought it was absolutely forbidden totouch the string descriptor from within an assembler subroutine. Ifthere's a way to do it, I'd sure like to know.

ibm.pc/pc.software #1146, from btonkina comment to message 1145

If the string descriptor points to a file buffer, then the length of the

string or the location of the string may be changed //the length can beentirely contained within the file buffer and //the string is still within thefile buffer after the change. I did it routinely with the CP/M compilerand it'll work in the MS-DOS compiler, too. But be careful! Point it to thebuffer before you fiddle with it! Also, on the MS-DOS stuff, there'ssomething called a "string back pointer" which can mess things up,though I don't know what it's supposed to do.

If you do garbage collection before you call your routines, and if yousave all pointers before you fiddle with the string and restore thembefore you return, you can get away with fiddling, too. Have fun!

ibm.pc/pc.software #1147, from barryna comment to message 1146

Sounds like walking into the Black Lagoon in the dead of night....

ibm.pc/pcsoftware #1148, from dmicka comment to message 1146

Urn .., the back pointer points backward somehow. I figured this outonce, but I believe it's a pointer to the string right behind (earlier de-fined, or higher in string memory) the one to which it belongs. I forgetwhere it is, though. Seems like it's the last item in the string area (afterthe actual string data) or before it. I thought it was added to help gar-bage collection ... seems like I read this somewhere.

ibm.pc/pc.software #1150, from gperfecta comment to message 1144

Apologies, apologies, apologies!

Bruce is quite correct in his description of BASIC string descriptorsand I was quite wrong. You can see how long it is since I did anyserious work in BASIC. I hope nobody spent any time trying to produceworking code with my earlier descriptions. The remaining info is stillvalid, however.

ibm.pc/pcsoftware #1152, from gperfecta comment to message 1144

I just looked up the correct description for Microsoft BASIC strings inthe V5.35 compiler manual. Page 97, paragraph 8 says, "If the argu-ment is a string, the parameter's offset points to four bytes called thestring descriptor. Bytes 0 and 1 of the string descriptor contain thelength of the string (0 to 32767). Bytes 2 and 3 respectively are thelower and upper eight bits of the string starting address in string space.

'The string start address points to a two-byte flag and a two-byteback pointer (for efficient garbage collection), followed by the actualstring. The compiler string space should not be tampered with, or a'String Space Corrupt' error may result" (their emphasis). This is maybewhere Dan saw the reference to back pointers and garbage collection.

MACINTOSH

Confusion over the effects that any of the various upgrades can haveon your system has dominated the Macintosh conference, a dominancethat is reflected in the selections here. In the midst of the confusion,there is a discussion on the philosophical considerations of compilerdesign. With this brief exception, the section concerns itself withupgrades, giving attention to (among others) disk formats, cooling fans,and power supplies.

Upgrade Observations

macintosh/macplus #35, from dpallen [David Allen]

I just upgraded my 512K Mac with the addition of internal and external

404 BYTE • SEPTEMBER 1986

Best of BIX •

BIX

• Best of BIX •

drives and new ROMs. I have not upgraded the logic board yetbecause I need the power from the unupgraded communications portto drive my Macvision and Penmouse+ pad. (Besides which, mydealer doesn't have any right now.)

I have the System Installation disk that was provided with theFebruary 1986 update to "Inside Macintosh." This disk provides system3.1.1 and an install program that does not work. It gets the wrong datefrom the 3.1.1 and throws up. Apparently the install program was date-sensitive to either the 3.0 or 3.1 version and Apple forgot to change thedate for 3.1.1. If anyone has a quick fix for that one I would appreciateit. Meanwhile, I am using the known buggy 3.0 that comes with thedisk drives because I don't want to take the time to reinstall my deskaccessories into all my boot disks, which I would have to do if I brute-force-substitute 3.1.1 for the old system file.

In olden days I could remove the Finder from the boot disk whennecessary for disk space considerations and just specify the boot pro-gram to use. It appears that one must retain the Finder on any bootdisk, even when one does not want to use it. At least I am unable toget a boot from a systems file that does not contain the Finder in thesame window/folder. Is this true? If so, it is really a step backward. Iwanted to reduce the size of the RAM disk folder so that everythingwould fit inside a 339K RAM disk. This I have done with the oldsystem. I can't do it with this one because the Finder insists on comingfor the ride even though I told him to stay home and mind the kids.

Is there any way to force the system to find a file outside the currentwindow? It's a pain to have things bollixed up just because the systemcan't find a file that is really there.

Although there is some improvement in disk speed operations, I donot see the whiz-bang speedup that some of my friends with Plusesare remarking about. Is this because I don't have the new logic boardyet? I had hoped that things would be faster than they are.

Joe Miller of Koala tells me that the cable/power supply cobbled upby the Thunderscan people will also work for Macvision. Koala plans toprovide the self-same cable arrangement as a product in the next cou-ple of weeks. Also coming is a new Morevision program, since the oldone will not work with the new ROMs. The older desk accessory soft-ware for Macvision does work OK with the new ROMs though, so I amnot completely out of business with Macvision. Koala is going to addmore capability to Morevision when they re-release it to fix the ROMcompatibility problem. Look for even better performance from Macvi-sion with this new software. Apparently there has been some hiddencapability in the Macvision box that the older software has notaddressed.

The folks at Kurta are coming up with a new connector and internalcircuit board so that the Penmouse+ tablet will continue to work fromthe communications port of the Mac Plus, They claim to be able tomake their tablet work from the Mac Plus communications port eventhough the voltages previously available there have been removed.They are also going to drastically improve their Macintosh software tomake it much more friendly. (Much needed.) Meanwhile, the Mouse-pad+ is definitely the Macintosh/Amiga/IBM PC mouse It uses a cord-less stylus with internal battery supply and works really well.

I see that Apple is continuing the charade that great disasters will im-mediately befall all who attempt to use single-sided disks initialized fortwo sides. In all the time I have used both sides of single-sided diskswith the Apple II (hundreds of disks) I have never had even one diskfailure from the use of the "other" side. The only disk failures I havewitnessed were on the "front" side! As one manufacturer explained tome off the record, they don't even know which side of the disk will bethe "front" side when the inspection takes place, so they have to beequally careful with both sides of the magnetic material. Apparently theonly virtue in buying "double-sided" disks is that if you have a failureon the "back" side they will replace the disk under the warranty (bigdeal), while they won't with a single-sided disk "misused" as a double-

[continued]

a message to oursubscribers

From time to time we make the BYTE subscriber list avail-able to other companies who wish to send our sub-scribers material about their products. We take great careto screen these companies, choosing only those whoare reputable, and whose products, services, or informa-tion we feel would be of interest to you. Direct mail isan efficient medium for presenting the latest personalcomputer goods and services to our subscribers.

Many BYTE subscribers appreciate this controlled use ofour mailing list, and look forward to finding informationof interest to them in the mail. Used are our subscribers'names and addresses only (no other information we mayhave is ever given).

While we believe the distribution of this information isof benefit to our subscribers, we firmly respect the wishesof any subscriber who does not want to receive suchpromotional literature. Should you wish to restrict the useof your name, simply send your request to the followingaddress.

BYTE Magazine

Attn: Circulation Department

One Phoenix Mill Lane

Peterborough NH 03458

m

Polaroid

®

When you're in a spot,

only Polaroid offers to

get you out.

*

Free DataRescue service

31/2"

DISKS

1C95 DSide Q95SSide 10— D-Den. »J—

m

15252225

DSide

2135

* Offer Good For

Polaroid Diskettes

ONLY

5VDISKS

DSideD-Den.

S-Side96tpi

DSide96tpi

HighDen.

8"DISKS

SSide 1795D-Den. If —

DSide 1Q95D-Den. la-

Old Reliable

Diskette"?

Connection'

♦Delaware 1-800 451-1849

RO. Box 10247 Wilmmglon. DE. 19850

Oklahoma 1800 654-4058

RO. Bo« 1674 Belhany OK 73O0B

* Nevada 1-800 621 6221

RQ Box 1213 Bou1d«r C H y. W. 89005

Inquiry 109

SEPTEMBER 1986

I Y T E 405

Best of BIX • Best of BIX • Best of BIX •

EIX

• Best of bix • best of BIX • Best of bi

sided disk. It isnt that they didn't inspect it.. .they just wont warranty itunless you pay the double-sided price.Any comments on these observations will be appreciated.

macintosh/macplus #36, from bbayer [Barry Bayer]a comment to message 35

Re: single-sided 51/t-inch disks:

Not only that but Apple uses the bottom of the disk, while (I havebeen told) Tandy uses the top (models 1 thru 4, at least). But mostcatalogs show the SS disk for both.

macintosh/macplus #38, from lloeb [Larry Loeb]a comment to message 35

As was previously stated in another section, to get the installer to work,open it with ResEdit, and open the INSC resource, Change the datestring from 9A740CF6 to 9A8B6777 and it should work. See TN76.txt inmacsupplmnt if all else fails.

macintosh/macplus #40, from mcgath [Gary McGath]a comment to message 35

Just got my Mac upgraded today, and updated one of my Finder-lessdisks by temporarily removing an application to make room (havingcopied it), running the update, removing the Finder (but using theMinifinder), and then copying the application back. No problem.

macintosh/macplus #41, from dpallena comment to message 38

Installer script for Mac Plus update has INSC ID=0, which I opened.The only close strings I found were "9A740FF4" and "9874081D." Ilooked and found that I do not have tech note #76. Any further sugges-tions, Larry?

macintosh/macplus #43, from lloeba comment to message 41

TN76.txt is in Listings under macsupplmnt. Is there a INSC resource inthe System you want to update to? If so, change to that string.Keep me posted.

macintosh/macplus #45, from hedges [Tom Hedges]a comment to message 35

Although Apple's comments about single-sided disks being used onboth sides are a little like a press release by disk manufacturers, I havehad more than a few single-sided disks that failed disk initialization fordouble-sided and one that passed, wrote OK, and failed to read im-mediately thereafter (that one was the disaster just like Applepredicted). So watch out.

macintosh/macplus #46, from dpallena comment to message 45

I, too, have had a couple of failures in initializing disks with the newdrives; however, they were accompanied by a peculiar mechanicalsquealing near the end of the initialization and the initialization failed.The disks would not initialize as single-sided after that either, evenwhen I bulk-erased them.

macintosh/macplus #47, from hedgesa comment to message 46

My failure mode was not so dramatic. It got through the format and intothe verify pass, then just said it couldn't initialize. If you try again atdouble-sided, no go; try at single-sided and all will be OK.

macintosh/macplus #48, from scottmac [Scott MacGregor]a comment to message 47

I haven't had failures with single-sided disks yet, although I boughtDD/DS when I upgraded. Somewhere I heard a comment that if asingle-sided disk had been used a lot, that the other (unused) side hadthe pressure pad rubbing on it, and this was the most likely reason fornot using it as a DS disk. I guess the moral is when using a single-sided as a double-sided, make sure it is relatively new!

macintosh/macplus #49, from lloeba comment to message 48

That rings true to me and would account for the horror stories onehears. If the pressure pad stuff hits the top head—bad news.

December 1985 Update

macintosh/tech .talk #183, from rschnapp [Russell Schnapp]

I know, I'm probably the last one to have bought the "December '85"Mac Software Supplement Additions.

I just tried to use the Installer on the System Installation disk to up-date a copy of my Paradise MAC 10 boot disk. There was no troubleinstalling the "External Disk" script. The "Mac Plus" script, though, failsbefore I can click Install. It says the System file's date is incompatiblewith the one in the script.

Do I really have to install System 3.1.1 the hard way (i.e., via ResEdit)?

macintosh/tech.talk #184, from lloeba comment to message 183

Yup. Change the INSC resource to 9A8B6777 from 9A740CF6. If Ia Plus, I'd verify a script and upload it.. .but I don't.

had

macintosh/tech.talk #185, from rschnappa comment to message 184

First, is that INSC resource in the script? I assume that's what youmean.

Second, I don't have a Plus, either. Their documentation said that youmust perform the Mac Plus update to obtain the new System, HardDisk 20, etc., even on a 512K Mac.

macintosh/tech.talk #186, from lloeba comment to message 185

First, yes. There should be a resource-type INSC in the script.

Second, do you currently have an HD20 file on your startup? Does itload HFS into RAM? The installer is based on purging RAM-basedHFS. If you have to have RAM-based HFS (because you dont have thenew ROMs) I'm not sure the newest system will be of much use to you.Comments?

macintosh/tech.talk #187, from rschnappa comment to message 186

Thanks, Larry. I tweaked the INSC resource and the installation worked.Yes, I have the Hard Disk 20 file in my startup. I updated a copy of myMAC 10 boot floppy and booted with mouse button held down (declin-ing auto-mount of the hard disk and System). I then explicitly mountedthe hard disk. Voila. It all works. After some investigation, though, Iagree that Finder 5.2/System 3.1.1 doesn't really gain me much. I washoping for the zoom boxes in the Finder, but I guess that is only if youget the 128K ROMs. Most of the really good stuff seems to be only inthe ROMs, like menu sorting.

After hearing about the Red Ryder problems with RAM HFS and thenew System, I think I'll hold off until I upgrade my ROM/disk. RedRyder 7.0 still works just fine with 2.1/5.0 RAM HFS.

406 BYTE • SEPTEMBER 1986

:st of BIX • Best of BIX • Best of BIX •

BIX

Best of BIX • best of BIX • best of bix

Compiler Qualities

[Editor's note: The messages leading up to #316 dwell on the reputedspeed of a not-yet-released compiler.]

macintosh/software #316, from hedgesa comment to message 306

As a developer I can't understand why everyone is so concerned withcompilation speed. Freedom from bugs, quality of code, support forembedded MDS-compatible assembly language in-line all seem to bemore important to me. A too-fast compiler may be nice if yourmarketing strategy is to lure away BASIC hackers to a compiled lan-guage (i.e., Turbo Pascal), but a developer on the Mac has to be farbeyond that stage. If saving development time is the real objective, theneveryone would be demanding a high-quality source-level debugger,because one certainly spends more time debugging than waiting for aslow compiler.

macintosh/software #317, from paul.hoffman [Paul Hoffman]a comment to message 316

I agree, hedges. More good compilers wili get us more good softwarefrom lower-level people. I never saw the "greater good" of Turbo Pascalon the IBM PC until I talked to two people who had bought it for nerdyfun and ended up releasing very good utilities into the public domain.It will probably happen here, too.

macintosh/software #318, from dwiner [Dave Winer, Living VideoText]a comment to message 316

Hey—I want a good debugging environment, too! But fast compile

speed is important because it makes it easier to make small tune-upsto your program and test them individually, instead of lumping a lottogether. It makes it easier to trap bugs also—because if you changedyour otherwise-debugged program in only one place, you should havea pretty good idea where to look for the problem!

Ideally, you should have your source code in one window and therunning program in another—and such a fast compile time that youcan tune up a program the same way a painter tunes up a painting!

macintosh/software #319, from bwebster [Bruce Webster, Consulting

Editor, BYTE]

a comment to message 316

".. .one certainly spends more time debugging than waiting for a slowcompiler."

It's exactly the time spent compiling—adding code, increment byincrement—that makes fast compilers appealing. You know the old"code-and-go" approach of BASIC hackers? And, of course, I designstuff right the first time, so I spend more time compiling than debug-ging (.. .trying to keep a straight face...).

macintosh/software #321, from jbaker [John Baker]a comment to message 316

I agree; a fast compiler is nice, but given the choice between a fastcompiler that generated mediocre code vs, a slow optimizing compilerthat generated superior, high-performance objects, I would take the op-timizer any day. The comment about a source-level debugger is alsoright on. The recently released native code Modula-2 compiler

[continued]

TAPE BACKUP

i

$880 $794

External InternalU 60MB WANGTEK

Tape BackupI 20MB Cassette QCQQ frCQ

Tape Backup ^D?J ifiOifif

Backup 20MB In less than 5 minutes

Image/flle-by-tlle backup and restore

Menu driven software

Interchangeable DMA, port address and

Interrupt

HARD DISK

'$379

I 20MB Seagate 1/2 Ht.hard disk (with controller)

■ 30MB Seagate 1/2 Ht. *c.nhard disk (65 Ms with controller) %j)OHit

■ 20MB Seagate full Ht. (t>ronhard disk (40 Ms) *f>Qoij

■ 30MB Seagate lull Ht. Afrnhard disk (40 Ms) O0DC7

• C.O.D.. VISA, NIC only.

QIC-286-QT

Made'

USA

$1295

Fully IBM Compatible, runs all mayor software

80286 CPU, 6/8 MHz clock calendar

512K RAM on motherboard, expandable to 1024K

1.2MB or 360K floppy disk drive

WD combined tloppy/hard disk controller

A T style keyboard

192W power supply

8 expansion slots

Clock/calendar with battery backup

Documentation and setup program

FCC Class 'B'approved

QIC RESEARCH

INCORPORATED

800-843-0806 (Sales)(408) 942-8086 (CA)In Canada call(416) 842-3177

Tech Support (408) 942-0856

489 Valley WayMilpitas CA 95035

OlCResefkeganBd-G.en;r,8903

rchofChl<*9°e3A

Suite •

998-

MODEM

EVEREXEVERCOM

• Comes with Bit-Corn Software

• 1/2 size 300/1200 Baud Modem

• Fully Hayes, Bell 103 & 212A compatible

• Supports Com 1,2,3 & 4

$399

1200/2400 Baud Internal

1/2 size modem

Modem, multifunction card S399

QIC EGA $259

• IBM EGA compatible • 720 x 348 mono

• 640 x 350, 16 colors • 640 x 200 color

NEC Multisync monitor $539

QIC MONOGRAPHIC

• 100% Hercules compatible (fcQQ

• Comes with parallel printer port $\SJ

■ Everex Edge (mono/color card) $239

Inquiry 406

SEPTEMBER 1986 • BYTE 407

Best of BIX • Best of BIX • Best of BIX •

BIX

• Best of BIX • Best of BIX • Best of Bl

MacMETH has such a debugger, the best tool in the package, and Ican assure you that a good debugger is tar more useful than a fastcompiler with a poor or (in the case of many Mac systems) nonexistentsource-level debugger.

Macintosh Plus Power Supplies

macintosh/soapbox #575, from hansen [Allan Hansen]

Since I had my 512K Mac upgraded to a Plus, I have had the powersupply changed 3 (three!) times. Is that common (is the power supplynot able to handle the new drive?) or was I just unlucky? I also had tohave the focus redone after the last change. I thought my eyes weregoing bad.

macintosh/soapbox #576, from bwebstera comment to message 575

Ouch. And my condolences.

macintosh/soapbox #578, from lloeba comment to message 575

I've had mine replaced because of voltage regulator/flyback transformerproblems in the sweep circuit. Now I have an inexpensive Radio Shack3-inch fan sitting in the central depression of the case. No heat prob-lems now! Unless you have AppleCare, may I recommend same?

macintosh/soapbox #581, from hedgesa comment to message 575

I've had one Mac for almost two years and another for 15 months.Neither has ever failed (knock on wood) except a 64K memory chipdied (of fright, I think) the night before I got up the nerve to put a Dr.Dobb's-style 512K memory upgrade into it myself. That upgraded 128Kmachine has since been upgraded with 1MB of memory, an SCSIadapter, and a homebrew 12-bit audio DAC, all of which use lots ofpower (and it will still drive a MacNifty Audio Digitizer that sucks morejuice from the serial port). I guess I've got a good power supply board.

macintosh/soapbox #587, from mdelugg [Michael Delugg]a comment to message 578

Larry,

Hate sounding really dumb, but is the fan set up to pull hot air up and

out?? (I would assume, but have learned not to.)

macintosh/soapbox #588, from lloeba comment to message 587

The fan I have (3-inch RS #273-242) sucks air through the Mac andpushes it out. That is, the exhaust is away from the Mac. Sitting in thehandle, it pulls air through the vent that is sometimes blocked by peo-ple putting their keyboard "into" the main body of the Mac. (Go lookunder the lip on the front. See that vent there?) I prop the whole thingup so one edge of the fan is resting on the top of the Mac and theother on the base of the indentation. It rests on a taped-down tonguedepressor (hey, use the materials at hand, right?) so that the vibrationisn't transmitted to the case. What I should do is make up sometriangular rests for a fan and sell them through the back pages ofBYTE for a 4000% profit.. .oh well, another business opportunity lost.

My message wasn't at all clear on the how of the fan, so I dont thinkit was a dumb question at all.

am having my Mac upgraded. For those of you who have a Mac Plusor have had their Mac upgraded, I have a few questions:

1) I am using a Hayes Smartmodem. Will that adapter cable work asit should and make my modem usable?

2) Is there a cable available from Apple for use with the Mac Plusand the Imagewriter I?

3) Can I re-initialize my single-sided disks as double-sided?

4) I have heard that many people who have upgraded have quicklyhad their power supplies fail; anyone have this happen? And if so, didyou have one of the original Macs with the bad power supply?

Thanks in advance.

macintosh/macplus #109, from lloeba comment to message 108

1) Probably.

3) Only if they are relatively new and the stuff from the pressurepad that wipes off on one side of the disk wont foul up the secondhead. Single-siders have this pressure pad where the new head wantsto be.

4) My original 100-day analog board failed because the flybacktransformer went, not because of the power supply part. (Mine haddark paper on the side that goes next to the case; the newer ones arewhite.)

macintosh/macplus #110, from jruley [John Ruley]a comment to message 109

And make sure that you get the latest revision of the software tools(v. 3.0 I think) or you may have some very strange problems!

macintosh/macplus #111, from lloeba comment to message 110

Ummm.. .do you mean System/Finder? 3.1.1/5.2 is latest semi-stable.

macintosh/macplus #112, from jruleya comment to message 111

Oh, sorry. Yes, the Finder. And I should have said v. 3.2—which we justgot. 3.1 has problems with Multiplan (out of memory ?!).

macintosh/macplus #113, from lloeba comment to message 112

3.2/5.3 is frozen and out; you're right.

macintosh/macplus #114, from jamurphya comment to message 113

Yeah, really? When do you think the masses might get their paws on it?Is this version three-quarters done as opposed to 3.1.1, which seemedto be about half done?

macintosh/macplus #115, from jruleya comment to message 114

I checked—version 3.2 is what I've got. It clears up the memory errorsin Multiplan nicely—definitely better than 3.1.1 Try your dealer—ourshad it but did not burst the packaging and put it in, so we got 3.1.1 inthe box.Which is a long-winded way of saying you have to ask for it!

Macintosh Plus Questions

macintosh/macplus #108, from jamurphy [Joe Murphy]

I just heard that my Mac Plus upgrade came in (I ordered it throughmy university consortium about 7 weeks ago) and in a couple days I

macintosh/macplus #116, from erosenbaum [Ed Rosenbaum]

This is a weird comment about startup screens. First, you convert thestraight MacPaint pics with something like "ScreenMaker" by Bill. Then,you stick the screen into the System Folder. Should work fine!

408 BYTE- SEPTEMBER I986

ST OF BIX • BEST OF BIX • BEST OF BIX

EIX

• BEST OF BIX • BEST OF BIX • BEST OF BIX

macintosh/mac.plus #117, from lloeba comment to message 114

It's going to be distributed to all registered developers by Apple.

macintosh/mac.plus #119, from paul.hoffmana comment to message 117

Any idea when it will be sent out? And why only to registereddevelopers? Certified developers need it just as much.

macintosh/macplus #122, from jruleya comment to message 119

As do us mere users

macintosh/macplus #123, from lloeba comment to message 119

Registered developers pay $800. They gotta get something.

PASCAL

The Pascal conference (one of several language-specific conferenceson BIX) provides a forum for the exchange of information and opinionsabout programming. In the messages below, Dave Winer, president ofLiving Videotex!, shares some of what he and other programmers havelearned about trying to write "well-behaved" Terminate and Stay Resi-dent ("pop-up") programs. Then there is a short discussion of checkingfor printer activity from a printer spooler.

Rules for TSR (Terminate and Stay Resident)

pascal/source #25, from dwiner [Dave Winer, Living Videotext]

Part one

There is a very active group of programmers working on Borland'sSIG on CompuServe, studying the technology of resident software.They're also working on a generic "shell" for residency—they includeBela Lubkin, Neil Rubenking, and Kim Kokkonen.

Bob Bierman, an LVT staffer, gave a presentation at the Software En-trepreneur's Forum, discussing the resident technology in Ready!. Mr.Kokkonen attended the meeting and took detailed notes on the presen-tation. With our permission, those notes were posted on the BorlandSIG on CompuServe.

I thought this document would be of interest, so I am forwarding it,with Mr. Kokkonen's permission.

Part two

The following is a summary of a talk given by Bob Bierman of LivingVideotext. Bob is the chief programmer for Ready!, the memory-resident outline processor. The talk was given on February 11, 1986, atthe IBM Special Interest Group of the Software Entrepreneur's Forum inthe San Francisco Bay Area. Bob described many of the techniquesused to develop a "machine-friendly" memory-resident program. Anyconfusion in the following is due to the summarizer and not based onany problem of Bob's.

Ready! takes several steps beyond those of earlier memory-residentprograms (TSRs). Perhaps most importantly, it allows the bulk of theTSR to reside in expanded memory (LIM EMS). A single version ofReady! self-configures to use EMS or not, depending on its presence inthe system. When EMS is used, the kernel of the TSR in normal mem-ory uses only 4K bytes. The rest of the code and data in expandedmemory use about 175K bytes.

When the Ready! hot key is pressed, the first step is to determinewhether it is safe to interrupt DOS or the application at that time. We

will return to this important issue below. Assuming it is safe, Ready!remaps the EMS page window to access one section of the EMS code.Control is transferred to the EMS page window. Then a 16K page win-dow is used to swap whatever is in the top 160K bytes of normal mem-ory into EMS, while pulling the rest of Readyl's code and data into thenormal memory formally owned by the swapped area. Control is thentransferred into normal memory and Ready! executes from there.

The swapping process takes about 1 second on a PC and negligibletime on an AT. This swap time is apparently not bothersome to theusers of Ready!, who are most happy to get their normal memoryback.

The swap of Readyl's code is made into high memory of the PC tohopefully avoid overwriting other memory-resident programs at thelower end of memory. This would be disastrous since a programmedkeyboard interrupt ("hot key") for those other programs would jump intoReadyl's code at some undetermined point. Ready! checks other inter-rupts at invocation to help avoid this possibility.

The choice of the full swap from EMS to normal memory was notmade lightly, according to Bob. The full swap was the weakest ofseveral possibilities considered, but it had the advantage of working onschedule. The swap approach is also the least likely to cause problemswhen other TSRs take advantage of EMS. Bob pointed out three addi-tional difficulties with executing directly from expanded memory—if thecode and data are larger than the 64K window of EMS, the programneeds to have a well-defined overlay structure allowing 16K chunks tobe pulled in and out of the EMS page window; the disk transfer area(DTA) used by the TSR cannot reside in the EMS page window whenan EMS RAM disk is in use; the stack of the TSR should not reside inEMS due to some stack-swapping problems when EMS functions arecalled.

Ready! also breaks new ground in the way it de-installs itself. ManyTSRs will de-install whenever the user asks for it. This may leave holesin DOS's memory allocation structure, leading to problems. Ready! willnot de-install itself until it senses that all memory above itself is free.When the user requests de-installation, Ready! sets a flag and thenawaits the appropriate time for de-installation. EMS memory is freed upimmediately after the request is made.

The trickiest portion of writing the TSR is determining when DOS orthe application is interruptible. DOS provides no clean services to makethis determination. Bob recommends checking several differentmonitors before allowing the "pop-up" to occur.

The first step in popping up is detecting the application's hot key. InReady!, INT 9 is used because they also want to detect some of thekeystrokes (like Ctrl-UpArrow) that the BIOS doesn't report. When thehot key is detected by INT 9, a flag inside Ready! is set, but Ready! isnot activated.

DOS provides two hooks that should normally allow safe pop-ups.INT 21 function 34 returns a pointer to the InDOS flag in ES:BX. If thebyte pointed to is 0, DOS is not active and therefore any DOS call canbe made safely, However, function 34 itself cannot be called at anytime. This function does a stack switch before returning its result and,apparently due to an oversight of its programmer, it does the stackswitch with interrupts enabled. This opens the possibility for function 34to mess itself up if it is called at the wrong time.

Bob also noted that the InDOS flag is not simply a binary value. Itrepresents a count of "recursions" into DOS.

DOS can also be interrupted at certain times even when the InDOSflag is not 0. While DOS is waiting for keyboard input, the InDOS flag isset to (usually) 1, but at the same time, DOS also continually calls INT28. Apparently, INT 28 was created specifically to allow the DOS PRINTcommand to run in the background. In any case, if the TSR watchesfor INT 28 calls, it is safe to use any DOS function above 9 during theINT 28.

Other monitors must also be checked before invocation. Because

(continued)

SEPTEMBER 1986 • BYTE 409

Jest of BIX • Best of BIX • Best of BIX

BIX

Best of BIX • Best of BIX • Best of Bl>

many programs use the BIOS calls without going through DOS, it isnecessary to check whether the BIOS disk calls (at least) are active.This is done simply by taking over the disk interrupt (INT 13) and set-ting a flag (within Readyl's data area) upon entry to the interrupt, andresetting it upon exit from the interrupt. Before popping up based onsome other interrupt, Ready! checks its own "lnlNT13" flag to makesure that no disk access is in progress. Ready! follows the samescheme for several other interrupts.

Looking at the DOS memory map after installing Ready!, it becomesapparent that all of the following vectors are taken over by the program:

8

Timer

9

Hardware Keyboard

10

Video

13

Disk

16

BIOS Keyboard

20

Program Terminate

21

DOS

25

Absolute Disk Read

26

Absolute Disk Write

27

TSR

28

Background Process

In all likelihood, 8, 13, 21, 25, 26, and 28 are taken over specificallyto allow safe pop-ups without disturbing the system. INT 16 is used byReadyl's "key transfer" scheme to pass keystrokes into DOS or an ap-plication (like the cut and paste of SuperKey and SideKick). INT 9 isused to supply special keystrokes and to aid in the pop-up process.INT 10 is used to keep track of the video mode of the system (Ready!turns off the hardware cursor and maintains its own flashing reverse-video block). INT 20 and INT 27 are most likely used to aid in the de-installation process.

This author's guess of the overall pop-up scheme is as follows:

INT 9 is used to set a flag that the hot key (Ctrl-Keypad5) has beenpressed or released. On each timer tick, the hot-key flag is checked. Ifset, the Readyl-maintained inlNTxx flags are checked for safeness.

If the INT 21 flag is set or if another "dangerous" BIOS or DOS inter-rupt is active, activation does not occur at the timer tick.

On each INT 28 call, the hot-key flag is checked. If set, DOS func-tion 34 is also checked to be not greater than 1,

Without actually implementing this, it is a bit hazy but hopefully getsthe idea across.

Bob emphasized that while "de-invoking" the pop-up it is just ascritical that the safeness flags be monitored as while invoking it.

Ready! keeps no files opened between invocations. Files are openedonly when an outline is read or written from memory, and then im-mediately closed. If all DOS handles are in use, Ready! will not be ableto access the disk,

Ready! fully chains all interrupts that it takes over. This means that allinterrupt handlers installed before and after it get their chance at the in-terrupt. Bob recommended that for chaining INT 16, the chaining pro-cess use the INT instruction rather than a CALL FAR instruction. Byusing INT rather than CALL FAR, handlers installed after Ready! getanother chance at the interrupt. This obviously requires that some flagsbe set inside Ready! to avoid an infinite recursion, and it is not neces-sary for most of the interrupts. It is particularly important, however, forINT 16 (keyboard), where macro processors may need to be invoked. Italso plays a role in the delaying mechanisms used when passing key-strokes into other applications.

Ready! does not take any special pains to work with programs (suchas XyWrite) that take over the keyboard without chaining. Bob believesthat any tricks to make these work will cause more problems than theysolve. In particular, the SideKick trick of "stealing back" the hardwarekeyboard interrupt on each timer tick would be a disaster if other pro-grams attempted to do the same thing. Living Videotext is working with

other publishers to get their programs cleaned up and compatible inthis sense. They are also trying to set a standard for the scan codesreturned for keystrokes not supported by the BIOS.

A few general pointers: According to Bob, the "memory-resident inter-face code" of Ready! amounts to 12,000 lines of assembly language.Writing a bulletproof and machine-friendly TSR is obviously no job forthe weekend hacker! The rest of Ready! is written in Pascal (probablyMicrosoft, but definitely a linked version of Pascal).

Ready! includes its own "relocator," which fixes up the EXE image ofthe program when it is relocated from EMS to normal memory.

The resident portion of Ready! could not have been developed onschedule without the ATRON hardware debugger, said Bob. This $1500piece of hardware allows you to continue from hard crashes and to in-vestigate the state of the machine to determine what happened. If youcant afford this, at least get an NMI reset card. The "AT Technical Ref-erence—Options and Adapters" is an invaluable guide that manydevelopers do not have.

The PC Network is a disaster for memory-resident programs. It takesover interrupts in a very unfriendly way, and Ready! will not work withit.

A number of the major vendors of TSRs are currently meeting infor-mally to reach some agreement on behavioral standards for TSRs.Watch for some announcements this year. Microsoft is decidedlyagainst TSRs, and as versions of DOS roll by, support for TSRs (suchas it is) will wane, while support for true multitasking will improve.

Summarized by Kim Kokkonen

pascal/source #26, from dwinera comment to message 25

A list of TSR problem areas (to BlX/Pascal/Source)

Compiled by Living Videotext Inc.

2432 Charleston Road, Mountain View, CA 94043

(415) 964-6300

Background

This list of problem areas in both resident and nonresident softwarewas compiled during the development of Ready! and describes apolicy for writing resident and nonresident software that would eliminatea lot of the problems that users have in running resident softwarereliably.

In each case, we describe a problem, suggest a solution, and pro-vide an example of program(s) that illustrate the problem area.

• Use of INT 16H (get a keystroke). When an application is running, itshould issue an INT 16H to get a keystroke and should not just call thevector installed before the application. This allows every program in thechain to see the key request and to take any and all actions that arerequired [e.g., Word Finder].

• Using a stack in an interrupt routine. Don't set up your own stack inan interrupt routine. This prevents it from being re-entrant and will pre-vent any routine from invoking at the point your stack is active.

Instead, set your stack only when you need it and when interruptsare off, or in an area that is "protected" from re-entrancy [e.g.,Key works].

• Don't take control of INT 9 (the hardware keyboard interrupt). There isno reason to, and no program should ever take complete control overthe keyboard. If your program wants to use keystrokes that the BIOSdoes not generate, such as Ctrl-UpArrow, the program should install aroutine that chains into the interrupt and generates a new scan codefor that keystroke, placing it into the system keyboard buffer just as theBIOS does. If there is just a single keystroke you are looking for to doan invocation (such as a resident program, being activated by a hotkey), you should just chain to the interrupt, looking for the keystroke,and when found, it should only set a flag and continue through the in-

410 BYTE • SEPTEMBER 19

The Buyer's Mart-

COMMUNICATIONS

DATA/DISK CONVERSION

EMULATORS

SERIAL COM PROBLEMS?

PCOA — Use your IBM PC or compatible to findcom problems between serially linked devices.Shows data xmissions, hardware & protocol errors.$150. COM WATCHER — Memory resident utili-ty monitors com between your IBM PC andmodem/plotter/etc. $49.00

TRIPLE C SOFTWARE

2897 S.W. 13th St., Ft. Lauderdale, FL 333121-305-583-0687

CONVERT TAPE TO DISK

We will transfer data from any V2" 9-track magnetic taperecorded at 1600 or 3200 Dpi to SV*" IBM PC floppies.Diskettes included. Quantity and repeat customer dis-counts. Fast turnaround. Disk to tape transfers alsoavailable.

Competitive Rates!

Micro Data Services

5 Town and Country Village, Suite 774 • San Jose, CA 95128(408) 980-7203

ANSIGRAF

One program emulates both Tektronix'" 4014 andDEC1" VT102. Separate virtual screens for texts andgraphics. Xmodem file transfer protocol and fullkeyboard macros.

Only $79.95For more information write or call:

Grafikon Ltd. 301-937-3394

P.O. Box 446, College Park, MD 20740

Inquiry 725.

Inquiry 705.

DATA/DISK CONVERSION

DUPLICATING SERVICES

CONVERT

CP/M < —> MS-DOS

Read, write and tormat CP/M diskettes on an IBM PC or com-patible. Over 115 CP/M formats on the menu and you canadd your own. Use Convert to copy text and data files (suchas WordStar and Dbase II) between CP/M and MS-DOS, Oruse i! to manufacture CP/M diskettes.

Only S69 from Selfware, Inc.

3545 Cham Bridge Rd.. Suite 3Fairfax, VA 22030703-352-2977

DISKETTE COPYING:

3 day turn around, security,quality, most popular formats.

MAG RABBIT/MICHIGAN616-685-6186

65C02 EMULATOR FOR MACINTOSH

MAC + II emulates an Apple II with 128K of RAM 512KRAMDISK. 2 Superserial Printer and Modem Cards, 8DColumn-card, Unidisk Drive Controller, 68000 ExtensionCard. True emulation, utilizes the ROMS directly from

your Apple II (+,E,EE). Runs Apple II 3.5 diskettes on800K Mac drives. Comes with Unidos. Transfer pro-grams included. List Price: Dlrs. $149.95.

MEACOM

P.O. Box 272591, Houston, TX 77277713-526-5706

Inquiry 755

Inquiry 723,

GRAPHICS HARDWARE

CONVERSION SERVICES

Convert any 9 track magnetic tape to or from over600 'ormats including 814" 5Vt", 8" disk formats &word processors. Disk lo disk conversions alsoavailable. Call for more info. (312) 459-6010

Pivar Computing Services, Inc.

165 Arlington Hgts. Rd., Dept. #B• * Buffalo Grove, IL 60089 * *

WESTERN TRANSDATA, INC.

Why risk duplicating your important programs on your com-Duier, when our equipment is designed solely to duplicate disks& verily their perfection IGOW3 Over 600 formats. 31/;", 5'/i"& 8' Plus serialization, copy protection, labeling, packaging,shrink-wrapping and last, personalized service.

WESTERN TRANSDATA, INC.

1701 E. Edinger Ave. A-4

Santa Ana. CA 92705714/547-3383 (collect)

HOUSTON INSTRUMENTS PLOTTERS

DMP 4C741&42 (t Pen. A-B/C-D-Size) $966/52577

DMP-51/52/UP (C. D-size 1/14-Pen) S3B81/S5031

DIGITIZERSSummagraphics MM1201 complete S434

GTCO MD7-1212 complete $602

Hitachi HDG-1111B Tiger II w/stylus $735

Houston TG-101t w/power & stylus $670

Orchid TurboEGA & NEC Multisync $1220

Artist 1 & Mitsubishi 19" monitor $3113

Large corp & institutional PO's accepted O A CARDEN SYSTEMS, INC. (213) 479-6707 ext.2912335 Santa Monica Bl *240. Los Angeles. CA 90025

Inquiry 741.

Inquiry 773

HARDWARE

INCOMPATIBLE WORD PROCESSORS?

We convert to and from: XEROX, DEC, IBM,

LANIER, WANG, CPT, NBI, MICOM, CT,

CP/M'S, MULTIMATE, WORDSTAR,

WORDPERFECT, DW3, SAMNA.

GUARANTEED LOWEST PRICES

Free Test Conversion Available

DATA CONVERSION INC.

6310 Caballero Blvd. • Buena Park, CA 90620

(714) 522-7762 (800) 824-4851 In CA.

Inquiry 684.

DISK AND TAPE CONVERSIONS

High quality conversion services for Dedicated WordProcessors, Mini and Microcomputers. Over 600 3V2",5Vt", and 8" formats. Also 800-1600BPI tape. Includ-ed: Wang, NBI, CPT, DEC, Vydec, Lanier, OS/6, Xerox,IBM Sys/34/36/38/5520, Mac, Victor, TRS, Apple,NSTAR, IBM PC/AT, HP, and most of the other microcom-puters. We can convert directly into word processingsoftware such as: DW3, WP. MS/WRD, WS, Samna, MM.PFS, and many others.

DATA FORMATS, INC. (408) 972-1830

BLANKET SERVICES

Diskette duplication • Packaging • Stocking/Dropshipping • 48 hour delivery • SUPERLoK copy pro-tection • No mastering fee • No charge for stan-dard labels • Place a blanket order with releasesas you need them for any quantity at a fixed price.

Star-Byte, Inc.

2564 Industry Lane, Norristown, PA 19403215-539-4300 800-243-1515

"DUPLICATION SOLUTIONS"

MEGASOFT specializes in all of your Diskette Duplica-tion needs. Our "STATE OF THE ART" equipment pro-duces 0 defects of the end product. We also provide

• AUTOLOADERS " BULK DISKS ■ SERIALIZATION

• TECHNICAL SUPPORT " COPY PROTECTION ■PACKAGE ASSEMBLY and DISTRIBUTIVE SHIPPING

MegaSoft

P.O. Box 710, Freehold, NJ 077281-800-222-0490 201-462-7628 (in NJ)

$79 MONO/GRAPHIC/PRINTER BOARD

* Hercules compatible ' 720 x 348 pixel

• Lotus 1-2-3 compatible ■ 80 x 25 text

' Printer, Mpnitor port " 1 year warranty' Light pen port ' In stock delivery

1 - $99 2-9 $89 10 - $79

SUGAR INTERNATIONAL

12015 NE 8th Ste. 3, Bellevue, WA 98005(206) 462-9283, Mo-Sa, 9-6

EPROM/EEPROM PROG. $250

Programs 2716-27512, 25xx and 68764/66 epromsvia RS-232. Also 874x micros and 28xxA & 52BxxEEPROMs. Automatic baud rate select, built in helpmenus, no personality modules!

16 BIT I/O MODULE $75Low cost control via RS-232. Expands to 512!

INTELLITRONICS

RO. Box 3263, Tustin, CA 92680(714) 669-0614

Inquiry 712.

EDUCATION

Disk/Disk * Tape/Disk

Over 600 formats! 3Vs, 5Vi, or 8 inch disks; 9track mag tape; 10 MB Bernoulli cartridge. Database and word processor translation specialists.

Computer Conversions, Inc.

9580 Black Mountain Rd., Ste JSan Diego, CA 92126

(619) 693-1697

Telespondence Course in 'C

My successful classroom lectures are now on UNIX.Study when and where you want by modem. A pro-fessional programmer and teacher will answer yourquestions. This is the easiest and fastest way to learn'C'. Limited class size; call soon.

The McNamara Lectures

292 9th Ave., San Francisco, CA 94118(415) 751-2936 BBS 300/1200

Inquiry 721

8051, 8096, 68HC11, 68008SINGLE BOARD COMPUTERS

We feature a series of single board computers forprocess control applications. Available as bareboards or assembled and tested. Optional EPROMresident System Monitors and BASIC interpreters arealso available.

ALLEN SYSTEMS

2151 Fairfax Road, Columbus, OH 43221614-488-7122

SEPTEMBER 1986 -BYTE 413

The Buyer's Mart-

HARDWARE

HARDWARE

HARDWARE ADD-ONS

POWERLINE GREMLINS??POWER FAILURES??

The MEIRICK STANDBY POWER SYSTEM

is the TOTAL SOLUTION to your

powerline problems.

240 wan system - $365; 400 watt system - $495;

800 watt system - $795

MEIRICK Inc., POWER SYSTEMS DIV.

Box 298, Frisco, CO 80443 303-668-3251

IBM -TOSHIBA PRINTER INTERFACE

• ail extended capabilities of the TOSHIBAS available

• bit mapped graphics supported

• Prints all IBM extended ASCII characters

• screen dumps in text and graphics

• escape sequences supported

• popular software supported directly

• "Sideways" and "Pyxel Visuals" support

• dealers welcome $79.95 ($2,50 S&H)Integrated Data Technologies, Inc.4775 Bunchberry Lane, Colorado Springs, CO 80917

303-597-5547 MC/VISA

RS-232 RS-422

• Four Port RS-232 w/software

•34900

• RS-422/485 Serial

•14900

• RS-232/422 with 24 Parallel I/O

•19900

• RS-422 Synchronous

•29900

Call About Custom Designed Boards

Sealevel Systems Inc.

P.O. Box 1808

Easley, South Carolina 29641

(803) 855-1581

Inquiry 724.

Inquiry 754.

MEGABYTES OF MEMORY

Lowest Prices Guaranteed in US. Dealer Inq. InvitedFully Populated 2MB Memory BoardsTALLTREE SYSTEMS - JRAM BOARDSJRAM 2 1299 OPEN 7

JRAM 3 Aboveboard 369 DAYS A WEEK

JRAM AT 369 M-F 9-8

JRAM AT Aboveboard 419 S-S 9-6

JDISKETTE 135 VISA, MC, A6. CHOICE

JLASER I 275 703-847-4740

JMODUi.ES CALL 800.642.2395

Information and Technology Services, Inc.

USED APPLES & IBM's

Commodore C-128 — $225.00

Laser 128 (new), Apple II + and He — call

PC-XT Clone — $475.00

Motherboards & accessories — call

Wb buy, sell, & horsetrade — Apple, IBM, & CBM.

SHREVE SYSTEMS

845 Lark Ave., Shreveport, LA 71105318-865-6743 4-9 p.m. C.S.T. VISA/MC

FAST GRAPHICS COPROCESSOR

50,000 vector/second card for PC, XT or AT withCGA. Draws in hardware: zoom, pan, area fill,dithering, arcs etc. Turbo Pascal & MS-Fortranlibraries. 14 day trial, 90 day warranty. 640x400 16color: $582. 640x200: $378. Manual only: $10,refundable.

E-Heart Engineering

1B103 Sky Park South #D, Irvine, CA 92714 (714) 261-1725

Inquiry 756.

Inquiry 688.

LOAD CELL INTERFACE

Connects weigh scales to any computer via serialRS232. 423 or 422, several units individually ad-dressable from single computer port. Directly program-mable in Basic - Demo program included. High ac-curacy 40,000 count. Options Include NEMA-4, shuntcal, 4 load cell summing. Price $599.

SCALE-TRON INC.

P.O. Box 424, Lachine, Quebec, H8S 4C2(514) 634-7032

TANDY-EPSON

Our 10th year of DISCOUNTSCOMPUTERS & CELLULAR PHONES

Freight Prepaid. Save TaxToll Free 800-231-3680

MARYMAC INDUSTRIES, INC.

22511 Katy Fwy., Katy (Houston), TX 77450

1-713-392-0747 Telex: 774132

640K Mother-Board UPGRADE

640K memory without using an expansion slot!Allows easy insertion of 256k chips on the systemboard. 100°/o compatible. 30 day S$ back guarantee.Compaq Portable & plus: $29; $99 with memory.IBM-XT, 3270 & Portable: S39/S109. IBM-PC:S59/$129. $4 s/h. Site discount. Dealers welcome.

ARISTO

16811 El Camino #213-D, Houston, TX 77058713/480-628B 800/3ARISTO

Inquiry 753.

Inquiry 722.

Inquiry 659.

HARDWARE/BLDG. CONTROL

EPSON QX-16 — A complete computer system512K ■ 2 Dnve • Monitor - Keyboard - PP - SP >500 otFREE software - Vadocs2 - CPM • MS • DOSList $2700 Your Cost $895

OKIDATA-93

160 cps - Wide Carriage with NLQList '900 Your Cosl 8379

Electrified Discounters (203) 937-0106

996 Orange Ave., P.O. Box 151, West Haven, CT 06516

68020 COMPUTERS

Up to 14.5 Mbyte RAM, 258K ROM. 30 users. DMA flop-py and SASI (SCSI), calendar/clock w/bat backup, timer,real time multi-tasking, multi-user op. sys.. basic,assembler, screen editors, spreadsheet. Fits PC typecabinet Mem. Prot. option, more.From $2195.00.Other 68XXX computer systems from S99S.00.

AAA Chicago Computer Center

120 Chestnut Lane - Wheeling. IL 60090(312) 4S9-0450

POWERLINE MODEM

CASH REGISTERS, ELECTRONIC SIGNS, PC'S

communicate over POWERLINE

RS232C, GE/EIA Consumer Electronic Bus Protocol.Hayes Compatible, 64,000 units on network, Data Com-pression, 1000 baud (HOMENET spec), 40 HOMENETcommands, User Programmable Client Layer $395.

AISI RESEARCH CORPORATION

Discovery Park, University of Victoria 3771A Haro Rd.

Victoria BC CANADA V8W 2Y2 (604) 477-1415

Inquiry 692.

Inquiry 650.

Inquiry 653.

INFORMATION SERVICES

SANYO 550/555 USERS

TURBO BOARD-7.2 MHZ S 95.00

20 MEG EXTERNAL HARD DISK SYSTEM .... J749.95

VIDEO BOARD $125.00

HARD DISK CONTROLLER (ST-506 COMPATIBLE)S249.95

IBM BOARD ADAPTOR $ 49.95

768 MEM, CLK, & EXPANSION BD-(FREE RAMDISK, SPOOLER, 8 SOFTVIDEO-RUNSIBM PROGRAMS) $199.95

TAMPA BAY DIGITAL

1807 Gulf-to-Bay Blvd., Clearwater. FL 33575 813-443-7049

PC WHOLESALE CENTERF.C.C. APPROVED BASIC KIT

' 640K Mother Board (OK) $94.00

' 5150 Keyboard Board $46.00

■ 150W Power Supply $56.00

* Case $34.00ALL FOR 5230.00, CALL FOR OTHER ADD-ON CARD.

SANFORD INC.

10413 Rockley Rd,, Houston, TX 77099 (713) 879-0068

TURBO S.I.X.

The Turbo Pascal Software Information exchangeoffers its members megabytes of Turbo Pascalcode for only $6 per diskette. Also a monthlynewsletter. Send S1.95 for the TURBO S.I.X.catalog. Deductible from the $19.95 membershipfee when you join. MC/Visa

TURBO S.I.X.

P.O. Box 8373, Dept B2, Waco, Texas 767103101 Mitchell, Waco, TX (817) 753-2182

Inquiry 766.

Inquiry 770.

HARDWARE ADD-ONS

MULTIUSERS

XT/AT COMPATIBLE HARDWARE

ATI-1000 ATSMHz M/B W/640KB" $629.

ATI-1000-10 AT 10MHz M/B w 1MB" 849.

ACS-100Q XT Turbo M/B- w/512KB/8MHz 395.

clock calendar 2 serial, 1 parallel portMITSUBISHI CGA MONITOR 279.

MITSUBISHI EGA MONITOR 399.

MAXI SWITCH XT/AT Keyboard 69.

TEAC 360K Floppy Drive 92.

ZUCKER Mono/Graphic Card 86.

'"""" ""* M,B PC HOUSE3706 Realty Rd., Suite 200, Dallas, TX 75244 (214) 241-5614

APPLE COMPATIBLE PRODUCTS

lie RAM/80 Column Boards, 64K $39. 256K $109.512K $139. 1.0MEG $238. 256K-1.0MEG includesXMe PLUSWORKS Sfwr. II+ 80 Col Bd $49. lieKeypad w/16 Keys $39. Il+/e Cooling Fan w/surgeprotect $29.95. Add $3 Shipping. Write for com-plete list.

NEXO DISTRIBUTION

914 East 8th St., Ste. 109, National City, CA 92050

(619) 474-3328

COMPLETE BUSINESS SYSTEMS

UP TO 50% . . . OFF

WE OFFER MORE THAN BOXES

Specializing in AT&T Single & Multiuser Systems

AT&T COMPAQ IBM

PRINTERS MONITORS SOFTWARE

PRICE AND AVAILABILITY SUBJECT TO CHANGE

FCG Information Systems Inc.

11033 E. ROSECRANS. UNIT E, NORWALK, CA 90650

213-929-8891

800-523-1789

414 BYTE • SEPTEMBER 1986

The Buyer's Mart-

PRINTING

SOFTWARE/ACCOUNTING

SOFTWARE/BUSINESS

DO YOU NEED QUALITYCOMMERCIAL PRINTING?

Call Eli's. Helping people since 1948.

Ask for Rick or Chuck

1-800-228-2007

1-402-342-7006

1231 South 14th StreetOmaha, Nebraska 68108

PROGRAM GENERATORS

WINDOW.LIB $99.

An easy to use complete windowing system (or programmersand writing in

■ BASIC IBM. M-S, CB86 • C LATTICE, M-S .

• COBOL M-S, HMF ... • PASCAL M-S. TURBO• FORTRAN MS. RMF.Window editor included. Create callable pop-up menus, helpscreens. Tne line selector features auto reverse highlightingand cursor control. No royalties. Ask about our BIOS/DOSLIB.VISA/MC

GLENCO ENGINEERING (312) 392-24923920 Ridge Ave.. Arlington Hts., IL 60004

FINANCE MANAGER II - General Ledger

A smalt business/personal finance package for IBM PCMenu driven, easy setup, complete reports, budget,graphs, double entry, simple inputs, demo files. Tracksincome, expenses, assets, liabilities, net worth. Evalua-tion copy with manual on disk tor only $10. Registeredcopy with printed manual $65. Visa/MC/Amex.

Hooper International

Dept. B. P.O. Box 6009, Vancouver, WA 98668-6009

(206) 256-6361

TIME * BILLING 199 JOB COST OPTION $50

Try It, You'll Like II With Our 30 Day Money-Back TrialGreat tor contractors, accountanls, architects, engineers,attorneys—anyone who needs to bill tor service work and ex-penses Very flexible and very easy to learn to use. Prints yourstatements, many reports. Job cost option includes jobestimating. |Ob summary, job detail, and more! For IBM PCand compatibles Order with VISA, MC COD or send tor freecomprehensive brochure.

Accounting Systems (919) 467-3428

POB 5095, Cary, NC 27511CALL 1-(800)-824-7888 op. 138

Info-Lion" Relational DBMS

Outstanding data entry & validation. Powerfulquery. Password security. Easy to use, onlinehelp. Much morel For MS/PC-DOS systems. Only1159.95 VISA/MC

Remember, go with the Hon . .

because it's a jungle out there!

Morgan Software Inc.

414 Valley Ave., Wilmerding, PA 15148(412) 824-0458

Inquiry 730.

PC-File III" Version 4

Search, sort, browse, global changes, macros, mailinglabels, format reports with selection & calculations, sub-totals, totals, averages, encryption. Exchange data with1-2-3, WORD, WordStar. Over 190,000 users. $59.95 +$5 s/h. For IBM PC.

ButtonWare, Inc.

P.O. Box 5786, Bellevue, WA 980061-800-J-BUTTON

Inquiry 703.

PUBLIC DOMAIN

SOFTWARE/BUSINESS

► SOFTWARE FOR PENNIES ■+

GET BEST AND LATEST PC-DOS. CP/M-80 ANDCP/M-86 PUBLIC DOMAIN PROGRAMS FORBUSINESS, PERSONAL, EDUCATION. SOFTWAREDEVELOPMENT, MODEMING. SCIENCE, AND MORE.AT LOW COST OF COPYING. 3-'/!. 5-H AND 8" DISKFORMATS ARE SUPPORTED. SEND $5.00 FOR

CATAL0G MULTIPATH, INC.

Box 395, Montville, NJ 07045(201) 575-5880

► FINANCIAL CALCULATOR

Memory resident calculator performs compound interest. NPV, IRR, bonds, depreciation. Prints financial schedules. Allows importing/exporting of dataIncludes all HP-12C functions plus more. Introductory price $49.95 plus $3 s/h; after 9/1/86. $69.95,

K SOFTWARE HOUSE, INC.

Pit. 2, Box 83B1 Unionville, TN 37180(615) 294-5090

PC-File/FT"

All the power of PC-File III plus: Relational link toother databases, integrated letter writing & mail-merge, context sensitive pop-up help windows. Newbinary search retrieves data hundreds of times faster.$149.95 + $5 s/h.

ButtonWare, Inc.

P.O. Box 5786, Bellevue, WA 980061-800-J-BUTTON

Inquiry 731.

Inquiry 717.

Inquiry 670.

THE BEST OF THE BESTI

Public Domain & User Supported Software for IBM PCor compatible. Word Processing, Database, Spread-sheets, Utilities, Games, Accounting, etc! 50 diskpackage $205.00, or rent 2 wks $75.00. Info & SuperSampler Disk $0.50, Deluxe Word Processor $6.50,both $12.00. MC/VISA

BLUE CIRCLE GROUP, INC.

Box 23502, Minneapolis, MN 55423(612) 823-4111

OFFICE AUTOMATION SOFTWARE

Order Entry. Inventory $49.95 each. Independent or in-teractive. Fast, accurate. Dalabase sizes: 150 to 1000.Monitor up to 15 whse. Other configs avail. Orderacknowledgment forms, inventory listings. & reorder levellistings printed. Min. req: IBM PC or compatible, 1 DSOD360K drive. 128K RAM memory, DOS 2.10 or later.MC/VISA. free shipping.

FutureSoft (216)753-1336

P.O. Box 23005. Cuyahoga Falls, OH 44223-1100

The Andsor Collection™

Unique concept: creates complete, self-contained,window-based data management environment, inone DOS file. Simplifies everything. Combine func-tions to create your own solutions in any application:calculations, database management, modeling, textprocessing, charts, data analysis, statistics, reports,labels, forms, presentations, mail-merge, etc. Sim-ple enough for a PCjr, sophisticated enough for aPC AT,

SEE ALSO THE AD BELOW

Inquiry 664.

Inquiry 700.

$4.50 IBM PC Software

490 disks: S4.S0 on 1-2-3 WKS, 8 disks $36.

Arcade games, 4 disks $18. Directory, 2 disks $9.

Utilities, 4 disks $18. "c" routines, 6 disks $27.

Turbo pascal routines, 8 disks $36.

Unprotect software, 4 disks $18.

Catalog $1.00. Add $4 S&H. MCA/isa accepted.

The Computer Room

P.O. Box 1596, Dept. 102, Gordonsville, VA 22942703/832-3341 (M-F 10-5)

dFELLER Inventory

Business inventory programs written in modifiable dBASEsource code.

dFELLER Inventory $150.00

Requires dBASE II or III, PC-DOS/CPM

dFELLER Plus $200.00

with History and Purchase Orders

Requires dBASE III or dBASE III Plus

Feller Associates

550 CR PPA, Route 3, Ishpeming, Ml 49849 (906) 486-6024

The Andsor Collection™

From simple calculations, files, inquiries, to complex models,data structures, reports. Superb 400 page hard-cover manual,with many examples. US $95 + $5 s&h 60-day money-backguarantee. Visa/MC/AmEx/Chk/MO/COD. Call or write now toorder. IBM PC/XT/AT/PCjr, 12BK + . one drive or hard disk,monochrome and/or color, DOS 2.0 +. Not copy-protected

ANDSOR RESEARCH INC.

181 University Avenue., Suite 1202,

Toronto, Ontario, Canada M5H 3M7

(416)364-8423

Inquiry 678.

Inquiry 696.

ALMOST FREE

Tne best of ihe Public-Domain and User-Supported SoftwareThe Best Selling: (Disk #87) QMODEM — The Powerful andFast Communication Program (Disk #29) GAMES — Full ofExcellem Color Games programs (Disk #42) INVENT — AComplete Professional Inventory Package. (Disk #85) PC-WRITE — Tne Last Version 2 6 of this Word Processing. (Disk#394.40) FORTH — The Full Language Implementation (2disks) (Disk #45) DISKCAT — The Best around Disk Catalog-ing Program Only $5.00 each disk plus $3.50 for Shippinglor any quanlity Order or Write lor Free Catalog to:MICRO-BOARDS (201) 881-7236 P.O. Box 424, Elmwood Park, NJ 07407

Inquiry 777.

TPR088 • ROUTE FINDER

A powerful interactive system for finding routes ontransportation networks w/up to 512 nodes and 16K links.TPR088 can find the shortest path between two nodes,sequence up to 50 stops, compute minimum spanningtrees and times/distances between all points. Req. IBMPC. 192K, graphics adapter. $99 w/8087 support, user'sguide, sample U.S. Highway network. VISA/MC.

EASTERN SOFTWARE PRODUCTS, INC.

POB 15328, Alexandria, VA 22309 (703) 549-5489

Inquiry 690.

PC-Write" Shareware

Fast, powerful word processor/text editor for IBMPC. New Version 2,6 with auto reformat, optionalmenus, on-screen help, laser printer support, newexpanded manual. Mailmerge, split screen, ASCIIfiles, macros. All software, tutorial/guide ondiskette, S10. OK to copy. Register for full manual,support $75. 90-day money-back guarantee.

Quicksort (206) 282-0452 Visa/MC

219 First N. #224J, Seattle, WA 96109

Inquiry 748.

SEPTEMBER 1986 -BYTE 415

The Buyer's Mart-

SOFTWARE/BUSINESS

SOFTWARE/GENERAL

SOFTWARE/GRAPHICS

GREAT SOFTWARE, CHEAP!

Absolutely Smashing User Supported Software$4.95 per disk. PC-Outline, PC-Write, DOSamatic,Commercial Unprotect, File Express, CheapAssembler, PC-Desk, utilities galore, many more.Money-back guarantee. IBM PC, PC Jr, or com-patibles. FREE CATALOG.

PLUS SOFTWARE

33495 Del Obispo, Suite 160 M,Dana Point, CA 92629

MIcroGANTT®

Control your project! You describe the work,MIcroGANTT calculates the schedule and budget. Op-timize the schedule interactively. Customize the reports.Sub-tasking, fixed and variable costs, multi-projectresource allocation, unlimited size and scope. GANTT,PERT, CPM. DOD-7000. Call or write (or free catalog.

Earth Data Corporation

P.O. Box 13168, Richmond, VA 23225 (804) 231-0300

SCIENTIFIC PLOTTING

Are conventional graphics packages notmeeting your requirements lor engineer-ing/scientific plotting with your HP plotter? GP.A-FIT 3.4 is the answer—all the features you want,and more. Only $90 + $5 s&h. Send for details.

JAYAR Systems

P.O. Box 2885, Station "A"

Sudbury, Ontario, Canada P3A 5J3

(705) 522-2230

Inquiry 742.

Inquiry 689.

Inquiry 715.

"THE CLERK" RETAIL POINT OF SALE

New software gives your small-medium business thesame advantages the "Big Guys" have. Automaticsales slip, invoices, inventory control, discounts,taxes, reports, and much more! Indispensablemanagement tool! Demo disk S4.95 (refundable).Regular $179.95 — Sale Price $99.95.1-800-346-3026 ext.958

WDR SALES CO.

9604 BELMONT. KANSAS CITY, MO. 64134Dealer inquiries welcome.

NEW INTEGRATED ENVIRONMENTAl FOR THE IBM PC

TOPSI IS A FULL VERSION OF OPS5 WHICH RUNSUNDER MS-OOS. UNIX OR CP/M. A FAST. EFFICIENTEXPERT SYSTEM DEVELOPMENT TOOL.

PROTOTYPING: $125 PRODUCTION: $250PROFESSIONAL: $375 SHIPPING, ADD $5

Dynamic Master Systems

POB 566456, Atlanta. GA 30356(404) 565-0771 Telex #282923

GRAPHICS PRINTER SUPPORT

A T LAST! Use the PrtSc key to make quality scaledB& W or color reproductions of your display on anydot matrix, inkjet, or laser printer. GRAFPLUS sup-ports all versions of PC or MS-DOS with IBM, Tec-mar, and Hercules graphics boards. $59.95.

Jewell Technologies, Inc.

4302 SW Alaska St., Suite 207, Seattle, WA 98116(206) 937-1081

Inquiry 772.

Inquiry 6B7.

Inquiry 71R

SAVE LEGAL FEES

157 time tested legal forms on disk, complete withmenu driven system and editing and printingcapability. Free copy of PC-Write word processorincluded. Forms written by a noted attorney andapplicable nation-wide. $129.95 plus $7.50 ship-ping and handling.

LegalEase" HOG Software, Inc.

54 Whitney St.. Sherborn, MA 01770617-651-1881

CYBER_CAT catalog $24.95

Somewhere among your 200 disks is a file you used 2

years ago. Cyber Cat will find it in seconds. Cyber Cat

will label, index & catalog your disks. Including your harddisk and all subdirectories. DOS 2.0 or later, 2 DRV,PC/XT compatible or generic. VISA/MC/CK Fl. Res. add6% tax. Postpaid in U.S.

CYBER_WARE Corp.

4411 Beerldge Fid. Suite 251, Sarasota, FL 33583

1 -800-237-8400 x86 (813) 371 -2157

In FL 1-800-282-2469 x86

FORTRAN PROGRAMMER?

Now you can call 2-D and 3-D graphics routineswithin your FORTRAN program.

GRAFMATIC: 75 callable routines forscreen output. $135.

PLOTMATIC: Pen plotter driver. $135.For the IBM PC, XT, AT and compatibles. We sup-port a variety of compilers, graphics boards andplotters.

MICROCOMPATIBLES

301 Prelude Drive, Dept. BSilver Spring, MD 20901

(301) 593-0683

Inquiry 706.

Inquiry 682.

Inquiry 727.

SOFTWARE/CHURCH

Church Package

Parishioner Time, Talent and Treasure System pro-gram is written in modifiable dBASE source code.• Contributions • Disbursements • Ledger• Names with mailing labels• Personal Information database.Requires dBASE II or III. PC-DOS/CPM-80 $200.

Feller Associates

550 CR PPA, Route 3, Ishpeming, Ml 49849(906) 486-6024

BAN-TASTIC"

Easily create, print & store beautiful BANNERS withmultiple text styles & sizes on IBM PC. Features:unlimited banner length, sizes from 2 in. to 12 in.,normal/reverse chars. & more.

Only $19.95 + $5 s/h — MCA/ISA

Perpetual Information Systems

(702) 827-2424

5290 Neil Road, Suite 215, Reno, Nevada 89502

3D TURBO GRAPHICS

ViewPoint quickly and easily generates perspective or parallelplots from an arbitrary view point on a vanety of devices. IBMMono & Color. Epson. Tektronix. Calcomp and HP Haloedeffect indicates hidden lines. Simple application integration:CAD. architecture, chemistry and engineering. Turbo Pascalsource included. Only $49 US. Call or write for more info

Berkeley Computer Software Ltd.

247 Parkglen Cres S.E.Calgary, Alberta, Canada T2J 4M4

(403) 265-4111

Inquiry 697.

Inquiry 739.

Inquiry 662.

ROMAR CHURCH SYSTEMS™

Membership-61 fields plus alternate address; labels,letters, reports any field(s). Offering-256 funds; optionalpledge; statemenls; post to 255 x/year. Finance-G/L withbudget; up to 500 sub-totals & 99 depts: month & YTDreports anytime for any month. Size 2000 people/flop-py; 25000/10 meg. Ad loo short! Write!

Romar Church Systems, Attn: BMB

P.O. Box 4211, Elkhart, IN 46514

(219) 262-2168

MacMoney" Intro: $74.95 +$3 s/h

This easy to use checkbook & financial planner, design-ed especially for the Macintosh'-, Is the next step up.It lets you keep track of all your financial transactions.Plus: transfers data to other programs; prints checks,reports, graphs; does loan planning; & more. 512K Macreq.; HFS compatible.

Survivor Software Ltd.

11222 La Cienega Blvd., Suite 450C

Inglewood, CA 90304

(213)410-9527

3D INTERACTIVE GRAPHICS

Imagine 2D and 3D graphics in real time at $24.95.Keyboard support, construct images, create sound. Re-quired IBM PC/XT/AT/Compatibles, DOS 2.X, 3.X. CGA.Support 8087/80287. MS or IBM Fortran, Basic, Pascal.Demo $5 apply toward purchase. Please add $3 S/H.In TX add 6.125%. VISA/MC/CHECK/MO

Flltrex Research, Inc.

P.O. Box 820425. Houston, Texas 77282-0425(713) 556-5747

SOFTWARE/EDUCATION

SOFTWARE/GRAPHICS

THE DGI WORDSEARCH PUZZLE

A great teaching aid to build vocabulary, improve spelling, orlor your own enpyment Up to forty vrtDrds can be used Sizecan be 20 x 20 or 20 x 40 characters Each puzzle has a uni-que solution If you print the same puzzle twice each solutionis different THE DGI NUM8ERSEARCH is also included. Forihe APPLE II or IBM computers. $30.

DECISION GRAPHICS, INC.

P.O. Box 2776-B, Littleton, Colorado 80161

Phone (303) 796-0341

Inquiry 686.

416 BYTE • SEPTEMBER 1986

MAPIT

Make your own MAPS!!

Simple to produce maps with your data.

Includes most country and state outlines.

Any printer or HP plotter.

Only $95 for MS-DOS or PC-DOS

US County Outlines available for $95.

QSC Box 778. East Lansing, Ml 48823(517) 641-4428

Inquiry 747.

FORTRAN GRAPHICS LIBRARY

MIcroGlyph/SclPlot™ provides (MS/IBM Pro/F77L)FORTRAN graphics on any IBM PC/XT/AT. Featureslin/log axes, labels, Hershey fonts, hi res plots on(IBM/Epson/Apple LaserWriter) printers, or graphicson (IBM color'EGA/Hercules'mono/Tecmar'GM)displays. $69.95 plus $3.00 shipping.

MicroGlyph Systems

P.O. Box 186, Lexington, MA 02173

Inquiry 729.

The Buyer's Mart-

SOFTWARE/GRAPHICS

SOFTWARE/LANGUAGES

SOFTWARE/SCIENTIFIC

Tl PRO + TURBO + GRAPHICS

UNLEASH YOUR Tl PRO WITH TURBO 2.0 or 3 0 + TIGrafixGRAPHICS. TURTLEGRAPHICS. MUSIC, SCREEN & CUR-SOR CONTROLS & more routines loan IBM TURBO. UseBASIC PICS w/o reprog Convert IBM code to Tl PRO Source4 doc included TIGralix $99.95, + TURBO $149.95, + TUR-bo 8087 $179.95. switch to turbo now!!!!

ProWare, Inc.

1023 SE 36th Ave.. Portland. OR 97214

VISA/MC/CHECK 7AM-7PM MON-FRI

(503) 233-4465

EXPERT SYSTEM LANGUAGE

If you can use a spreadsheet, you can useKNOWOL, the Knowledge Oriented Language, toguide people in solving problems.

KNOWOL + (Complete) $99.95

KNOWOL (Introductory) $39.95

Intelligent Machine Company

1907 Red Oak Circle, New Port Richey, FL 33553(813) 844-3262

POP-UP HP-41 EMULATOR

Graphically presents HP-41 keypad and unique view ofstack and registers. Binary, Octal. Decimal. Hexadecimaldisplay and input- 12 digit precision; 500 accessibleregisters. For IBM PC/XT/AT and close compatibles. Stan-dard version $69.95: 8087 version $79.95 ($4 shippingand handling, plus sales tax in Calif.)-

ECLIPSE LOGIC INC.

P.O. Box 2003, Huntington Park, CA 90255-1303(213) 569-6020

Inquiry 744.

Inquiry 711.

Inquiry 691.

SOFTWARE/LANGUAGES

Symbolic Profiler for Turbo Pascal

Find out where your Turbo Pascal programis spending all its time. Only $49 plus S&H:$3 US/Canada, $7 Europe.

KYDOR COMPUTER SYSTEMS

1701 Greenville Avenue, Suite 505Richardson, Texas 75081

(214) 669-1888

SCREEN PROGRAM GENERATOR

SPG I creates BASIC program code quickly and easily Designyour screen directly and SPG I will generate the BASIC pro-gram code to handle the display and input of data. Controlsuse ol color, editing, graphics, cursor movement and functionkeys Generated code easy to modify / merge.IBM PC & compatibles 128K.$75 + $3.00 S&H (CA + tax)

Treebeard Software

5901 Warner Avenue. Suite 428Huntington Beach. CA 92649

(714) 840-6939

► MATRIX 100 <

Perform multiple regression, solve simultaneous equations, in-vert matrices, etc. in BASIC or Fortran ". very soundnumerically very powerful and very easy to use'' — OR/MSToday 2785. "Stanford Business Software deserves congratula-tions"' — PC Mag. 5/14/85 Price $80, 8087 suppon $125;compiler support $250: Fortran library $175. ($4 s&h).

STANFORD BUSINESS SOFTWARE, INC.

2672 Bayshore Parkway, Ste. 304

Mountain View, CA 94043

To Order Call (415) 424-9499

Inquiry 719.

Inquiry 768.

Inquiry 760.

FINALLY!A Subroutine Library for Compiled BASIC

Load directories into arrays. WINDOWING. Graphics, pieand bar charts, 150 more routines to add power toMicrosoft QuickBASIC or IBM BASIC Compiler 2.0 30Day Money-Back Guarantee. VISA/MC/Check/MOFINALLY! is only $99.00 + $4.00 S&H

KOMPUTERWERK, INC.

851 Parkview Blvd., Pittsburgh, PA 15215(412) 782-0384

Minnesota SNOBOL4 Lar>9uagePowerful string & data handling facilities. Interpreter com-patible with mainframe SN0B0L4. 32K strings, 32 bit in-tegers, 8087 for float & large memory model. Sample pomsinclude ELIZA. For >128K IBM PC & DOS or equivalent.Definitive "green" book by Griswold et al available.

Guide + 514" SSDD diskette $44.95

Guide + diskette + "green" book $59.95

"Green" book only $26.95

Postpaid in USA. In NY add tax. VISA/MC (914) 271-5855

BERSTIS INTERNATIONAL

POB 441, Millwood, NY 10546

HP-PC HYPER-CALCULATOR

Pop-up MS-DOS programmable scientific calculatoremulates HP-11C. Hex/oct/bin arithmetic, two-way datatransfer, program & data disk storage, HELP, alphaprompts. 100 registers. 1000 program steps. Free 8087version, utility programs. $39.95 + $1 s&h.

SUNDERLAND SOFTWARE ASSOCIATES

P.O. BOX 7000-64

REDONDO BEACH. CA 90277

CALL TOLL FREE 800-628-2828 ext. 502

Inquiry 718.

Inquiry 66a

Inquiry 764-

HYPER C COMPILERS/TOOLS

Apple II ProDos Professional

$99.95

Macintosh

199.95

Macintosh programming tools with complete source codB:

Assembler & Linker

65.00

Triton Preprocessor

50.00

Multi-Window Text Editor

50.00

Macro Preprocessor

50.00

For further information/literature contact-

WSM GROUP, INC. (602) 298-7910

P.O. Box 32005, TUCSON. AZ 85751

Phllon FAST/Compllers

Philon FAST/BASIC-M Phiion FAST/COBOL. Philon FAST/C.and Philon FAST/FORTRAN are a iamtly of true compilers lhatprovide extremely fas! execution ol compiled code. Fealuresinclude stale-ol-the-art code optimization, suppon ol single- andmulti-user systems, and powerful runtime libraries Availablefor 68000/UNIX systems. Atari 520ST. Apple Macintosh andmany others A BASIC interpreter is also available for the Atari520ST

Philon, Inc.

641 Ave. of the Americas, New York, NY 10011212-S07-0303

Affordable Engineering Software

CALL OR WRITE FOR FREE CATALOGCircuit Analysis • Root Locus • ThermalAnalysis • Plotter Drivers • Graphics • SignalProcessing • Filter Design • Report Proof-reader • Transfer Function Analysis.BV Engineering

2200 Business Way Suite 207. Riverside, CA 92501(714) 781-0252 VISA/MC

Inquiry 776-

Inquiry 740.

SOFTWARE/SCIENTIFIC

68020

Motorola compatible macro Assembler Packagefeatures linker, object librarian, symbol reportgenerator with cross reference. Produces S-recordsand ROMable code. For CP/M-68K, MS-DOS $750.Portable Source in C $3500. AVAILABLE NOW.

Quelo, Inc.

2464 33rd Ave. W. Suite 173. Seattle, WA 98199206/285-2528 telex 910-333-8171

CROSS ASSEMBLERS forVAX VMS and PC/MS DOSNew Low Prices

Relocatable Macro Cross Assemblers,

Linkers, LibrariansTargeted to almost all Microprocessors

ENERTEC, INC.

BOX 1312. Lansdale, PA 19446215-362-0966 MC/VISA

ENGINEERING SOFTWARE WRITTENBY ENGINEERS FOR ENGINEERS

Highest power per dollar. Highest power per K ofmemory. Satisfaction guaranteed.

Electronic Circuit Analysis $450.

EC-ACE $95.

Tatum Labs

33 Main St.. Newtown. CT 06470(203) 426-2184

Inquiry 767.

MACINTOSH DEVELOPERS

Dramatically decrease development lime. Elegantlycraffed compiled library routines for easy implementa-tion of Mac interface. Graphics scrolling and printing, textediting, zooming windows and much more!PASCAL EXTENDER- $89.95C EXTENDER- $129.95

INVENTION SOFTWARE CORPORATION

P.O. Box 3168, Ann Arbor, Ml 48106313-996-8108

Inquiry 714.

TURBO PASCAL TOOLS

Qumn-Curtis offers a family of Science. Engineering, DataAcquisition, and DOS/BIOS Tools for use with TurboPascal. All source code provided,IPCTP-006 Science and Engineering Tools $69.95IPC-TP-008 Metrabyte Data Acquisition Tools $94,95IPC-TP-017 DOS/BIOS Tools $69.95

Quinn-Curtfs

49 Highland Ave., Neodham, MA 02194(617) 444-7721

FREE SOFTWARE GUIDE

600 Plus programs covering applications in biology,chemistry, geology, geophysics, mathematics, instru-ment/process monitoring and control, chemical, civil, elec-trical, mechanical, petroleum engineering. Also graphics,Al, DBMS, languages and utilities.

ALPHA Applied Research

2355 McLean Blvd., Eugene, OR 97405(503) 485-6841

Inquiry 656.

SEPTEMBER 1986 -BYTE 417

The Buyer's Mart-

SOFTWARE/SCIENTIFIC

SOFTWARE/TOOLS

STATISTICS

System Simulations

Micro-CSMP simulates oControl & Servo Systems oRobottcsoHigh Order Filters oChemical Processes oStress & Strain.Graphical results in minutes, typically requiring 10-20 lines olinput. Full IBM S/360 CSMP compatibility. LSAP analyzeslinear systems producing Bode, Nyquist, and TransientResponse plots, and Root-Locus diagrams. Micro-CSMP is5900, LSAP is 1450 lor PC-DOS or MS-DOS systemsCall (714) 581-7654

California Scientific Software

25642 Hazelnut, El Toro, CA 92630

POWERFUL FILE MANAGEMENT

I.D.T.'S FileManager® (or people serious about theirsystems. No kid stuff—only powerful managing tools.File sort, copy, move, delete, search & change attributes.

Undelete and clear files.EDLIN enhancer & batch mode clean up and more.

Menu driven.

$34.95 (about V3 Norton's) MC/VISA

INTEGRATED DATA TECHNOLOGY, INC.

4775 Bunchberry Lane, Colorado Springs, CO 80917

ORDERS: 303-466-2583

STATISTIX"

$75 - Satisfaction guaranteedA comprehensive, powerful, yet easy-to-use

statistical analysis system for IBM PC/XT/AT's, AppleIt's, and MS DOS machines. Clear 200p manual.Write for information.

NH Analytical Software

801 West Iowa Ave.. St. Paul. MN 55117(612) 488-4436

Inquiry 673.

Inquiry 781.

Inquiry 734.

ORDINARY/PARTIAL

DIFFERENTIAL EQN

SOLVER

FOR THE IBM PC & COMPATIBLES

microcompatibl.es inc.

301 Prelude Dr., Silver Spring, MD 20901(301) 593-0683

METRICS FOR MANAGEMENTANALYZE reads your code & produces metrics onVOLUME, COMPLEXITY, PRODUCTIVITY &morel Management, QA/QC & Engineers gainvaluable insight to scheduling, problem areas,testing, maintenance & compliance to standards.For IBM PC. Analyze FORTRAN & "C" $495.00+ S/H. Add Ada tor only $200.00 more! MC/VISA

Autometric Inc.

891 Elkndge Landing Rd. Suite 350. Linthicum, M0 21090 (301)859-4111

STATISTICS CATALOG!

If you need statistics for IBM PC or Apple II, callus and let our technical advisors help you find thestatistics programs you need-Write or call now to get a FREE catalog of statisticsand quality control software.HUMAN SYSTEMS DYNAMICS9010 Reseda Blvd., Ste. 222Northridge, CA 91324

(800) 451-3030 (818) 993-8536 (CA)

Inquiry 660.

Inquiry 708.

Choose Your SCI. CALCULATOR

• RESICALC: Pop-Up Calculator with UserProgrammable functions. Intuitive. $15

• COMPLEX: Pop-Up Calculator for ComplexNumbers. Special & User Functions. $25

• MATRIX: Linear Prog, Sys of Eqns, Programin Symbolic Expression. Macro Editor.$60

SOFTTECH INC. 1-313-544-8544

14640 LaBelle, Oak Park, Ml 48237

FORTRAN Addenda

Graphics, color text, keyboard control, and much more forPC/XT/AT FORTRAN Programs. Includes gets/puts, tiling,tills, pull-down windows, and USER I/O EDITING! MDA thruEGA modes. 170 pg. manual & annotated samples. Sold as2 libraries: each $95; combined $165.

IMPULSE Engineering

P.O. Box 3540

San Francisco, CA 94119-3540

(415)-788-4611

NUMBER CRUNCHER STAT SYS

Menu-driven. Multiple & stepwise regression.ANOVA, time series, discriminant, cluster, and fac-tor analysis, principal components, scatter plots,histograms, t-tests. contingency tables, non-parametrics. Import export data. Spreadsheet, sort,join, merge. $79. IBM PC/Macintosh. Quantitydiscount. NCSS-B

865 East 400 North, Kaysville, UT 84037801-546-0445

Inquiry 757

Inquiry 709.

Inquiry 732.

Digital Filter Tutor $375Kalman Filter Tutor $850

Practical hands-on training courses that run on theIBM PC. Learn how to specify, design, tune, imple-ment, analyze, and test filters. FREE demo diskavailable.

Engineering Tutorial Software

22338 Lull Street, Canoga Park, CA 91304(818) 716-0816

PC-Type™

Fast, compact, capable & easy! Help panels, hands-on tutorial, macros, multiple-line headings & footings,DOS path support, print spooling, block operations,etc. ASCII files. Install program allows customization.$59.95 + $5 s/h. For 128K IBM PC.

ButtonWare, inc.

P.O. Box 5786, Bellevue, WA 960061-800-J-BUTTON

RATS! Version 2.0

RATS, the best selling Econometric software package,now includes daily and weekly data, a new easier lo use500 page manual, and many advanced features. UseRATS for time-series and cross-section regression, in-cluding OLS. ARIMA. VAR, logil. and probit. IBM PC orcompatible $200, MCA/ISA. Call lor brochure.

VAR Econometrics, Inc.

P.O. Box 19334, Minneapolis, MN 55419-0334(612) 822-9690

Inquiry 737.

Inquiry 671.

SOFTWARE/SORT

OPT-TECH SORT/MERGE

Extremely fast Sort/Merge/Select utility. Run as anMS-DOS command or CALL as a subroutine. Sup-ports most languages and filetypes including Btrieveand dBASE. Unlimited filesizes, multiple keys andmuch more! $149.

(702) 588-3737

Opt-Tech Data Processing

P.O. Box 678 - Zephyr Cove. NV 89448

50:1 DATA COMPRESSIONGUARANTEED

Correct Datamizer speeds up your computer

system, cuts storage cost & has computer securitybuilt-in. Ask about CorrectForth. Specify computer,$80.75 VISA/MC/AMEX/MO/CHK

Correct Software, Inc.

RR1 Box 140. Black Hawk, SD 57718

605-787-5904

The Statistician

Includes: Multiple Regression (Stepwise, ridge, allsubsets, backward elimination)

• Time series analysis • descriptive statistics

• transformations • survey research • nonparametrics

• X-Y plots • ANOVA • random samples • data base

• data editor • search & sort • hypothesis tests

For ISM, MS-DOS. XENIX, CPM, TRS-DOS.

QUANT SYSTEMS toll-free

Box 628, Charleston, SC 29402 1-800-334-0B54803-571-2825 (Ext. 814)

Inquiry 735.

Inquiry 681.

SOFTWARE/SYSTEMS

TYPESETTING

CPM-80 LIVES on your PC

CP/Mulator puts a 4mhz 8 bit CP/M emulator in your IBM-PC (or $99. ($3 s + h).

- A great 8 bit development system

- Saves expensive CPM-80 applications

- Increases PC speed 10% for 8088 programs

- Priced less than most software only products

- Uses no valuable board slots

Source Information

P.O. Box 2974, Warminster, PA 18974VISA Phone (215) 441-8178 M/C

Inquiry 761.

418 BYTE- SEPTEMBER 1986

PRINTER CONTROL TOOLBOX

Library of 63 PROCEDURES with 39 WORKED OUTEXAMPLE PROGRAMS which show the correct per-formance of all toolbox procedures. All in PASCALsource code, unprotected, no royalties, not restrictedto single cpu. PRICE: $24.50.

Blue Hill Software Engineering

7016 Blue Hill Drive, San Jose, CA 95129(408) 725-8269

DESKTOP PUBLISHING

Laser Printer composition software to drive Cordata L300with 76 PS fnts $495. With add 14 PS Lndscp fonts $695For Canon LBP-8 A2. NCR, or HP LaserJet* with 41PS Prt or Lndscp fnts $695. H & J, merge graphics, mixface & pt. size anywhere on any line, mult tab & coljustification. Boxes & Rules.

Micro Print-X, Inc.

P.O. Box 581, Ballinger, TX 76821 (916) 365-2343

The Buyer's Mart

UTILITIES

UTILITIES

UTILITIES

STILL RIVER SHELL

Visual shell for PC/MS-DOS. Turnsyour directory into a menu. V1.33.Only $9 for shareware diskette. $35manual & diskette.

Bob Howard

PO Box 57, Still River, MA 01467617-456-3699

DEC RAINBOW USERS II

B.6.V. SOFTWARE ANNOUNCES DR. DISK ■ Ths latest inDEC RAINBOW utilities1

■ View Of modify any sector on the diskette

■ Restore deleted tiles

■ Alter lite attributes (HIDDEN. SYSTEM, etc.)

- Learn RAINBOW MS-DOS disk organization

- Determine the extent ot crashed disks

This tool has long been used by software developers in thefield and is finally being offered to the public at a fractionof its commercial cost. Send S29.95 to:

Bill Norton - B.E.V. SOFTWARE

P.O. Box 139. Schenectady. NY 12301

PAL FOR SIDEKICK!

Personal Appointment Locator automatically showscoming appointments, searches your file, maintainsto-do list, examines multiple files. Resident alarm too!Only $45. Cheap at twice the price!

PAL SOFTWARE

Ste. 12B 110 Green St., New York, NY 10012212-925-1843

UNLOCK YOUR PRINTER'S POWER WITH

"""President™

UNIVERSAL PRINTER INTERFACELels you use ALL the features built into ANY PRINTERthrough ANY PROQAM on IBM PC'S Of compal. Resi-dent program uses only 3k of memory Pop-up HelpRecommended by Epson, Okidata, MicroPro, etcCMB3 Technologies $99.00P.O. Box 3061. Walnut Creek, CA 94598 (415)930-0470

CONCURRENT DOS BACKUP

BackPack'" runs like BACKUP/RESTORE and sup-ports DOS and CP/M media as well as users. Backsup and restores up to 1000K/min, on an AT and360K/min. on an XT Supports release 4.1. Alsoavailable on CP/M-80 and CP/M plus. $150.

Bright Light, Inc.

520 Fellowship Rd. 0C3O1, Mt. Laurel, NJ 08054(609) 778-0772

MEDIA MASTER PLUS

READ, WRITE, and FORMAT over 150 CP/M disks andrun most CP/M-80 programs on your IBM PCI Two pro-gram package includes ZP/EM, a CP/M-80 emulator pro-gram that translorms your IBM PC into a 1 -2 MHZ CP/M2.2 computer. $59.95 + $3.00 S/H (CA 6%)

Intersecting Concepts, Inc.

4573 Heatherglen CI.. Ste 10

Moorpark, CA 93021

(805) 529-5073

Inquiry 667.

RAMbak or WARP-TEN - 9.95

RAMbak automates the saving of new or chang-ed RAM disk files to floppy disks and/or hard disksubdirectories. WARP-TEN is a programmabledisk cache. PC, XT, AT, compatibles with 256KDOS 2.0 + . Introductory price is only 9.95 each.(MN Res. + 6%).

Software Brewing Company

P.O. Box 12094, St. Paul, MN 55112612-636-2727

BTrees with C Source

These are powerful, portable, dependable file utilitylibraries Thousands of programmers worldwide re-ly on our quality code. All source code included, noroyalty fees, works with any K&R compatible Ccompiler.• Btree only $75.00 • ISAM only $40.00 additional.

SOFTFOCUS

1343 Stanbury Dr.. Oakvtlle, Ontario. Canada L6L 2J5(416) 825-0903

COPYWRITE

CopyWrite backs up hundreds of the most popular pro-grams for the IBM PC. CopyWrite is revised monthly tokeep up with the latest in copy proleclion, and comeswith a trade-in offer. It needs an IBM AT. XT. or PC, 128Kand one disk drive, but can use more memory or anotherdrive. $50 US. Check/Credit Cards.

QUAID SOFTWARE LIMITED45 Charles St. E. 3rd Fl.

Toronto, Ontario, Canada M4Y 1S2(416) 961-8243

SOURCE CODE LIBRARIAN &REVISION CONTROL SYSTEM

TUB'" keeps ALL versions of your program in ONEcompact library file, even with hundreds of revisions.

• 5 times faster than SCCS • LAN compatible

• Free public domain MAKE (with source) by L. DyerMS/PC-DOS 2.x & 3.x. $99.95 + $3S&H. VISA/MC

BURTON SYSTEMS SOFTWARE

POB 4156, Cary, NC 27511 (919) 469-3068

PADLOCK/PADLOCK II DISKS

PADLOCK furnishes the user with a method for providingprotection against unauthorized duplication from DOScommands $99. PADLOCK II disks come preformattedwith finger-print and serialization PADLOCK II disks of-fer superior protection. Ask about our HARD DISK pro-tection with unmstall capability. MC/VISA.

Glenco Engineering

3920 Ridge Ave., Arlington Hts., IL 60004(312) 392-2492

QUICKCACHE

Intelligent disk I/O mgmt. subsystem for PC/MC-DOS2.xx & 3.xx. Capable of making programs run upto 14 times faster. Alt parameters dynamicallyalterable. LIM memory supported. 40 KB min. re-quired. $49.95 + $5 s/h. VISA/MC. 30-dayguarantee.

P. R. GLASSEL and ASSOCIATES, INC,

30255 Fir Trail, Stacy, MN 55079612-462-1337

Inquiry 668

Inquiry 704.

Advertise your computer products

for as little as $375

in THE BUYER'S MART.

For more information

call Karen Burgess at

BYTE 603-924-3754,

SEPTEMBER 1986 • BYTE 419

Inquiry 108

DISK-KING

Premium Quality Diskettes

From the Kings of Magnetic Media.

Incredible Value

Direct from the main source—the leader and the inventor

of magnetic media, quality unlabeled diskettes with hubrings, tyvek sleeves, write-protect tabs, user ID labels anda lifetime warranty. New and individually certified 100%,factory sealed in lots of 25. Private labelling available.

Sp° Quantity Discounts Available J!^*

00 5.25748TPI Dl

$129 3.507135TPI $165

DS-H096TPIforthe-AT- .

It

from the leader of magneticI media FREE! Flip n' File with

each box of 3.5" SS orDS diskettes, while supply lasts!

Factory Sealed Box of Ten Qty. 5 BXSS-DD Lifetime Warranty DS-DD

I J 5.25748 TPI «J I

$139 3.507135TPI w/Flio 'n' File $197

DS-HD 96 TPI for the "AT' S219

'5.25* Pre-packaged in 3M's Flip 'n' File/15-$4/box extra8.00- SS-SD w/WP , $150

$184 8.00" W/WP 205

Call for our SUPER LOW PRICES on 3MData-Cartridges, tapes and storage boxes.

(3M Headcleaning Kits 695+ 2.00 shpg)

BASF

...the inventor ofmagnetic media!

SUPER SALE ON

SS-DO Factory Sealed Box of Ten DS-DD

I L 5.25V48 TPI 00

135 3.507135TPI 187

-HD 96 TPI for the "AT" 5195

5.25" SS-DD Factory Sealed Box of Ten $610

5.25' DS-DD Factory Sealed Box of Ten $660

5.25- DS-HD Factory Sealed Box of Ten s1950

3.50 DS-DD Factory Sealed Box of Ten $1870

COLOR Premium Quality U.S.A. made

£7 Nashua

DISKETTES

AT Affordable Prices!k» SUPER SPECIAL 4

SS-DD ■ Factory sealed in lots of 25 with: DS-DDCflC 'Tyvek sleeves, w/p tabs, CQ0OU user ID labels- Exceeds ANSI 00specs Certified 100%—70% clippinglevel "Lifetime warranty. Many color optionsDS-HD 96 TPI Color diskette for the "AT" s175RIBBONS STORAGE

Epson MX 70/80 .... '2" 3M's Storage Boxes .. '8'°Epson MX 100 . . '3M Amaray Media Mate . . '8MOkidata 80/82/83/92/93'13S Disk Minder II-75 . . . '6"Apple Image Writer . . '3M Micro Disk Minders-36'645

TERMS: No surcharge on VISA or MasterCard American Express also ac-cepted COD orders only add S3 00 Prepaid orders deduct 2% cash discount.POs accepted from corporations rated 3A2 or better, government and schoolson net 30 basis fPO. APO. AK. HI PR S CN add 5% No sales tax outsideUfa/?' Minimum order $30 00 TELEX" 75M85

SHIPPING: Add S3 00 lor 100 diskettes or lirsl 4 lbs. , . v y«pr,, r

"WE BEAT ANY PRICE! [APPLES TO APPLES) """"" "a" ■""»*Toil-Free UrrJir Line: Inquiries 5 Info Line:

1-800-523-9681 1-8D1-942-2273

n DISKCOTECH

DISKCOTECHNOLOGIES. INC.

2034 ESS! 7000 Soulh Sail l..the City Utah 641Hours; 7AM-6PM(Min Time)

420 BYTE • SEPTEMBER 1986

RAINBOWUSERS

Install IDRIVE on your DECRainbow and read or write IBM PCor XT format diskettes directly.

• No new commands to learn.

• No special disks or handling.

IDRIVE comes with 360K double - sidedfloppy disk drive, cables, software,documentation, and 90-day warranty.

Internal IDRIVE $349

External (w/case & power supply) $395

Suitable Solutions

467 Saratoga Ave., Suite 319

San Jose, CA 95129

1408) 725-8944

Inquiry 334

>rDDnf

EPROMPROGRAMMER

The EP-1 is a great value, here's why:

IBM PC Software included or RS-232 to any computer

ASCII Commend driven operation; All intelligence in unit

Reads, Programs, Copies over 150 types from 2716 to

27512

Optional Intel microcontroller programming head

Menu-driven Chip Selection; No Personality Modules

Fast, Slow. Quick-Pulse Programming Algorithms

• Intel [BOBO & B08B], Motorola, Tekhex, Straight Hex Files

• Splits Files By Base Address and Odd/Even [16 bit systems)Gold TBxtool ZIF IC Socket • Generate & Set Checksums

• Over-Current Protection • B Baud Rates 300 to 38.400Full One Year Warranty • 5. 12.5, 21. 25V

U.V. Erasers from $34.95 Programming

BP Microsystems

5325 Glenmont, Suite E, Houston, TX 77081[800] 225-2102 [713] 667-1636

Inquiry 51

SEAMLESS

File Transfer

Softerm PC provides a transparent

Micro-to Mainframe link using

Virtual disk drive specifiers

accessible from any DOS application

program. Memory resident.Transfers files in background using

customizable communicationsscripts. Includes 32 exact terminal

emulations.

For IBM PC/XT/AT, DG, NEC, HP,

Wang, TI, Gridcase, Tandy, Zenilh

$195- Visa, MC, CODCall 800-225-8590 orders/info.

7899 Lexington Dr., Ste 210

Colorado Springs, CO 80918

(303) 593-9540 Telex #450236

EPROM AND RAM DISKAND DRIVE EMULATORS

For the IBM PC* and CompatiblesAPPLICATIONS

• Diskless control and communications systems

• Dedicated workstations - customized smart terminals

• Industrial control and manufacturing test systems

FEATURES

• Solid state speed, reliability and performance

• Self contained EPROM programming circuitry [simplycopy a Master Disk to ROMDISKJ

• Emulates a 9 sector. 40 track SSDD or DSDDdiskette

• Compatible EPROM. Dynamic RAM and StaticRAM versions

• Two autoboot modes and a file mode

• RAMdisk versions are battery backed up

• I/O mapped - does not occupy system RAM space

EPROM version PCAI |IH0K) S495

EPROM version PCA-2 [360KI S59S

Dynamic RAM version PC DRAM-I (180KI S495

Dynamic RAM version PC DRAM-2 |360k| S595

Static RAM version PC SRAM-I |I80KJ ... S695

Sialic RAM version PC SRAM-2 I360KI . S995

CURTIS, INC. 22 Red Fox RoadSt. Paul, MN 55110 612/484-5064

Inquiry 96

BASIC TURBO SYSTEM

Includes:

• 1024K, 8 mhz motherboard W/256K installed • Clock &

game I/O • 150 watt power supply • IBM* AT-lookalikecase • MS-DOS S GW basic • IBM* style keyboard • FCCApproval

*43800

No. 99111

IBM. PC. XT. AT are registered trademarksol Inlemalional Business Machines

The Wholesale Outlet • Order Toll Free

1 Interstate Avenue 1-800344-4387 (NON-NYS)

Albany, NY. 12205 All other calls & NYS call

1518) 459.7883

MCrVISA OR COD CASHAll orders shipped FOB Albany • Prices subject to change

Inquiry 377

Wm «fflllWP" lilrari

iiillUlIP

The GRANDSTAND

PRINTER STAND AND TRAY

• Folds & Slacks Automatically

• Fits ALL Popular Micro Printers

• Space Saving Operation

• Routes Cables Neatly

Grand Union

Micro Systems

P.O. Box 1880

Fallbrook, CA 92028

(619)723-0882

Inquiry 314

Inquiry 147

est of BIX • Best of BIX • Best of BIX •

BIX

Best of BIX • Best of BIX • Best of BIX

terrupt chain [e.g., XyWrite, Samna Word III, Leading Edge Word Pro-cessor, Hayes Smartcom].

• Don't grab an interrupt vector more than once. Do not set a timertrap to re-grab an interrupt vector that your program initially installed. Itmust not be critical that vour Droaram be the last vector in the chain.You must trust that the chain will not be broken [e.g., SideKick].

• Changing video modes. Use the BIOS whenever possible, but if thereis some reason your program directly changes modes, it must also setall the CRT values in the BIOS data area, addresses 0040:0049through 0040:0066. See the CRT BIOS listing for more details [e.g.,Lotus 1-2-3 version 1A, switching from text to graphics],

• Don't jump from a DOS critical-error routine. Instead, set a globalerror flag that your disk routines check with the error code that thecritical-error handler gives you. Then issue an IGNORE response anddo an IRET back through DOS so that the DOS stacks are cleaned up[eg., Lotus 1-2-3 version 1A],

• Setting the high-order attribute bit to be used as background intensityrather than blinking. This is a value sent out port 3D8H (the mode con-trol register). Whenever a program sets this port, the value should alsobe stored in the BIOS data area at address 0040:0065 (CRT_MODE_SET) [eg., Framework version 1.1, Superwriter, and SuperCalc].

• Maintain the hardware cursor. If your program does not want to usethe hardware cursor but instead uses its own software cursor, the cur-sor position should still be reflected in the BIOS data area at addresses0040:0050-0040:005F depending on which video page you have inuse [eg., ThinkTank and Ready!].

• Changing the color palette by toggling the color burst bit. This is acommon way of obtaining different colors from a monitor. Whenever aprogram sends a value through port 3D8H (the mode control register),it should also set the value in the BIOS data area at port; the valueshould also be stored in the BIOS data area at address 0040:0065(CRT_MODE_SET).

• Changing the palette on an EGA board. If a program changes theEGA palette directly rather than using the BIOS function, it should copythe values modified to the save area defined by the EGA BIOS, thesecond double-word off the "save pointer" located at address0040:00A8. See the EGA BIOS listing for more details [e.g., MicrosoftWord],

Checking for Printer Status

pascal/turbo #696, from larryjudy [Lawrence Judy]

Printer, Are You There?

Jim, or Barry, or Joanne, earlier in about message 630 or so I had re-quested help with determining if the printer was turned on before myprogram tried to print. My main problem is unfamiliarity with 8086/8assembly and the complexity of MS-/PC-DOS, but I did jiggle yourvarious answers to come up with the subsequent short function (postedas a message), which worked great on my AT&T 6300. Unfortunately, itdid not work on the IBM PC at work. The short program below willwork on the IBM, but not on the AT&T without the additional line at theend of the function. I don't know if the last line will work on the IBM. Isthis a difference of MS- vs. PC-DOS, or of printers (Toshiba 1340 athome, Panasonic at work)? Could someone tell me if the program willwork on their IBM machine?

program Intr17n2_pas; var ch : char; Function PrinterlsReady :Boolean; Type

RegisterSet = record ax,bx,cx,dx,bp,di,se,ds,es,flags:integer;end; Var

Regs: RegisterSet; Begin

PrinterlsReady := false;

FillChar (Regs, sizeof(Regs), 00);

With Regs Do

Beginax := $0200; {request status}dx:= 0; {Ipt1 = 0, Ipt2 = 1}

End;

Intr ($17, Regs) lf((regs.ax and $4000 = 0)) then

begin

if regs.ax and $1000 <> 0 then PrinterlsReady:= trueend; if regs.ax and $8000 = 0 then PrinterlsReady := false end;beginrepeat

read(kbd,ch);if PrinterlsReady thenbeginclrscr;

writeln(The printer is ready.)endelsebeginclrscr;

writeln(The printer is not ready.)end;

until ch in [7'q','Q];end.

pascal/turbo #699, from jrobie [Jonathan Robie]a comment to message 696

Larry, scanning your PrinterlsReady function, I notice that structure issomething like this:

PrinterlsReady := false;

Inquire if printer is ready;

If (regs.ax and $4000) = 0 then { if printer does not acknowledge }

beginif (regs.ax and $1000) <> 0 then PrinterlsReady:=true {selected}

end;If (regs.ax and $8000) = 0 { if printer is busy }then PrinterlsReady := false;

If the printer does acknowledge, then the PrinterlsReady returns false.Not all printers send an acknowledge signal, so if you test for acknowl-edge then you can't assume that the acknowledge signal is present.

You also may want to check to see if you are out of paper. You areout of paper if (regs.ax and $2000) = 1. This test doesn't seem to workwith my Zenith Z-150 and a C. Itoh Prowriter printer, though.

pascal/turbo #707, from jimkeo [Jim Keohane]

Larry, mebbe what you should is write a little quick-and-dirty programthat issues INTR $17 repeatedly and writes out the value of r.ax untilkeypressed. Display the values bit by bit like:

repeat {set reg and issue INTR call} for i:=1 to 16 dobegin

if r.ax and $8000 = 0 then write('O) else write{T);r.ax:=r.ax shl 1;end; writeln; until keypressed;

This should show you all the status settings that are set as you turnprinter on/off, select/deselect, remove paper, unplug cable, etc.

You can now see if there is one test that will suffice for both the IBM PCand the AT&T 6300. Keep in mind there may be differences with otherprinters too, so try to keep your test to the minimum.

pascal/turbo #708, from wheelock [Bruce Wheelock]a comment to message 707

With a spooler?

I can't see a way to check printer status with a print spooler installed.Anyone else? I thought not. ■

SEPTEMBER I986 -BYTE

-The Buyer's Mart-

A Directory of Products and Services

THE BUYER'S MART is a monthly advertising section which enables readersto easily locate suppliers by product category. As a unique feature, eachBUYER'S MART ad includes a Reader Service number to assist interestedreaders in requesting information from participating advertisers.

RATES: 1x-$475 3x-$450 6x-$425 12x—$375Prepayment must accompany each insertion. VISA/MC Accepted.

AD FORMAT. Each ad will be designed and typeset by BYTE. Advertisers must

furnish typewritten copy. Ads can include headline (23 characters maximum),descriptive text (250 characters maximum), plus company name, address andtelephone number. Do not send logos or camera-ready artwork.

DEADLINE: Ad copy is due 2 months prior to issue date. For example: Octoberissue closes on August 1. Send your copy and payment to THE BUYER'S MART,BYTE magazine, 70 Main Street, Peterborough, NH 03458. For more informa-tion call Karen Burgess at BYTE 603-924-3754.

ACCESSORIES

ACCESSORIES

BAR CODE

FREE CATALOG

Outstanding prices on computer accessories foryour computer and workstation. Our catalogfeatures a wide selection of quality products tomeet all your accessory needs. Call or write todayto receive your free catalog.

LINTEK COMPUTER ACCESSORIES

POB 8056, Grand Rapids, Ml 49508

(616) 241-4040

SOFTWARE PACKAGING, DISKS

Cloth binders & slips like IBM's. Vinyl binders, boxes, and

folders—many sizes. Disk pages, envelopes, & labels. Low

qty. imprinting. Bulk & branded disks. Much More! Low

prices. Fast service. Call or write lor FREE CATALOG.

Anthropomorphic Systems Limited

376-B East St. Charles Road

Lombard, IL 60148

1-800-DEAL-NOW (312) 629-5160

PRINT BAR CODES ON PC

Print Bar Codes and Large Text Labels on PC with Ep-son/Okidata/IBM Printers - Code 39,1 2of5, UPC, MSI,DOD-LOGMARS, AIAG. Text up to 1" tall. File input.Menu driven $49-299. NEWI 8K Ram-Resident pro-gram prints bar codes from any user program or evenword processor — S179. ($239 with large text).

Worthington Data Solutions

130 Crespi Court, Santa Cruz, CA 95060(408) 458-9938

Inquiry 720.

Inquiry 775.

COMPUTER PROTECTION

• UPS • LINE CONDITIONERS • ISOLATORS

• MODEM PROTECTORS

• AC POWER INTERRUPTERS

— HUNDREDS OF HINTS & PRODUCTS —

FREE CATALOG 1-800-225-4876

ELECTRONIC SPECIAUSTS, INC.

171 So. Main St., POB 389, Natick, Mass 01760

1-800-225-4876

Inquiry 693.

Self-Inking Printer Ribbon

For users of Okidata and other open spool ribbonprinters. Controlled Printout Devices are a new kind ofprinting ribbon that re-ink themselves, and will last 15times longer than the ribbon you are now using. Forfurther information please call or write.

CONTROLLED PRINTOUT DEVICES, INC.

POB 869, Baldwin Rd., Arden, NC 28704(704) 684-9044

BAR CODE READERS

Program-transparent, Keyboard interface Bar CodeReaders for IBM PC, AT and compatibles-$485. Otherwedge readers for IBM 3180, 3178, 3278, 5251, 5291,and RS-232 terminals. Portable Bar Code Readers from$325. Programmable Hand-Held Por1ables-$1200.Free PC print program with reader purchase. 30 daymoney-back guarantee on all products.

Worthington Data Solutions

130 Crespi Court, Santa Cruz, CA 95060(408) 458-9938

BUSINESS OPPORTUNITIES

. . .SOFTWARE PUBLISHING. . .

GDS offers a wide variety ol services that will help get yoursoftware to the market Address your needs with GDS

• IBM style cloth/vinyl 3-ring binders/slips.

• Labels, sleeves, disk pages, bulk diskettes, .

• Disk duplication with 100% verificalion,

• Shrink wrapping and product assembly,

• Quick turn-around.

A well packaged product can make the difference in makinga sale. Call us now' VISA/MC.

Glenco Development Systems(312) 392-2492

3920 Ridge Ave, Arlington Hts., IL 60004

DATA CABLES <S PARTS

EIA RS232-C Data Cables • standard, extendeddistance, Teflon Assemblies. Also Centronics(parallel), Coaxial (RG59U, RG62A/U, Dual Wang,Twin-axial), Ethernet, Ribbon, IBM, DEC Compatiblecables, AB switches, connector parts, bulk cable;tools & hardware (wall plates) Send for Catalog.

Communication Cable Co.

POB 600-B, Wayne, PA 19087215-644-1900

VIDEO STORES

We need ambitious dealers in all U.S. statesand Canada to market a powerful system tocomputerize video tape rental stores.

WINCHESTER DATAPRODUCTS INC.

3301-Executive Drive., #204, Raleigh, N.C. 27609(919) 872-0995

Inquiry 702.

Inquiry 675.

Inquiry 774.

FREE CATALOG

Thousands of parts and new surplus electronic partsat super low prices. FAST ORDER PROCESSINGAND SHIPPING (95% of all orders shipped within48 hours).CALL OR WRITE FOR A FREE CATALOG. . .

ALL ELECTRONICS CORPORATION

POB 20406. Los Angeles. CA 90006-0406

1-800-826-5432

nquiry 654.

LOWEST PRICES ON DISKETTES

5'/." DSDD .39, High Density 1.65.3VS* SSHD 1 25. DSHD 1.45.

• Liielime warranty • includes tyvek sleeves

• 100% error tree • Reintcrced hub ring

• Finest quality • Labels & write protect tabs

Add 3.00 shipping per 100. Minimum 100 diskettes.

Send check or call. CA residents add 6'/2% sales tax.

Same day shipping.

Data Bureau Inc.

1633 Westwood Blvd.. Ste. 120, Los Angeles, CA 90024213-479-0345

REAL ESTATE SOFTWARE

LEADING SOFTWARE DEVELOPMENTCOMPANY SEEKS SUCCESSFUL DISTRI-BUTORS AND DEALERS TO MARKET SOFT-WARE DESIGNED FOR RESIDENTIAL REALESTATE BROKERAGE OFFICES. TER-RITORIES AVAILABLE THROUGHOUT THEU.S. INTERESTED COMPANIES PLEASECALL (516) 621-3363.

COMMUNICATIONS

PRINTER RIBBONS

Guaranteed First Duality — Colors Available

Price eacti ,n quanmy o! 3 6 12

C. Itoh Prowriter Nylon $5.25 $3.65 $3.35

Epson MX/FX/RX 70/80 5.25 3.65 3.35

IBM Propnnter Nylon 7.75 6.70 5.70

Okidata 182/192/193 Nylon 8.80 7.60 6.45Prices include delivery in Continental U.S.Printer Ribbon Supply

POB 920145 • Norcross, GA 30092800-438-7745 In GA. 404-446-1547

PRINTED MANUALS

Cornerstone Printing provides your choice of fullsoftware publishing services, including typesetting,printing, binder selection, disk duplication, andpackaging. Save 50% on typesetting. We cantypeset from your ASCII or Multimate w p file.

Cornerstone Printing

95 Little Tree Lane, Hilton, NY 14468716-392-2386 & 716-392-9500 (collect)

nquiry 6B0.

VT102/52 TEK4014 VT220

Our terminal emulators turn your PC/AT/jr into a fullfeatured terminal. Features include: local printing.ASCII 6. KERMIT tile transfer, softkeys, DOS key, AN-SI COLOR, 4014 graphics support. Guaranteedcompatibility. Call today for free info packet.

General Micro Systems

P.O. Box 5330, Hopkins, MN 55343-1553(612) 944-0593

412 BYTE • SEPTEMBER 1986

^ 10th ANNIVERSARY SALE ^

8MHz TURBO

SUN-ST COMPUTER

$530

(ASSEMBLED & TESTED)

Dealer & Computer Groups/_Call for Special Price EsJ

□ 4 LAYER MOTHER BOARDD 8 MHz CPU (Keyboard Switchable to 4.77 MHz)D 256K RAM (Expandable to 640K)

□ 360 KB DISK DRIVE

□ AT STYLE KEYBOARD

□ COMPUTER CABINET w/SPEAKER

□ 1 YEAR LIMITED WARRANTY

□ FCC APPROVED

Call for other configurations

SUN-ST UPGRADE ITEMS

RAM UPGRADE TO 640K

2ND DISK DRIVE (360 KB)

MONO G CARD w/PP (Hercules Compatible). . . .

COLOR GRAPHIC CARD

ENHANCED GRAPHIC CARD w/256K

(IBM EGA Compatible)

12" TTL GREEN MONITOR - $115 or AMBER

COLOR MONITOR (640x240)

MULTI-I/O PLUS CARD (Serial, Parallel, Game

Port, Clock, Calendar, Ram Disk, Spool)

8087-2

(IBM-AT Compatible)

COMPUTER SYSTEM

$1350

■ 6 MHz & 8 MHz DUAL SPEED MOTHERBOARD

■ 640K RAM ■ 8 EXPANSION SLOTS

- 1.2 MB FLOPPY DISK DRIVE ■ FDD/HDD CONTROLLER200W POWER SUPPLY ■ AT STYLE KEYBOARD

OPTIONS:

20 MB (40 ms). . . $590 ■ 30 MB HDD (40 ms). . .$690

MULTI FUNCTION CARD (Serial, Parallel,

RAM Expandable to 3 MB, OK) •... .$225

■ I/O CARD (Serial, Parallel Port) $69

eimirnnmiPe t*n iim/- 1-800-421-5775 store hours BWJfcWSBS

SUIUTRONICS CO., INC. lordersonly) 5*;™ .JJE-JXI r*."^""^""-""-'

12603 Crenshaw Bl.d, Hawthorne. CA 90S50 n-t o RAA 1 1 Af\ SA,U«UA¥ ""Wr" ,

Z I0-044-I I4U Dealer & OEM Inquiries Invited ism „',",„„,

J

- BYTE CONNECTION INC. =nm>77M4i6BOTTOM LINE PLQIOE COSTERS! - "Who ycu IM 1111,1 call?**

PERSONAL COMPUTERS

UBM * IV, (IBM AT Compatible), with 8 MHZ. 640 K. 1 2 M B Floppy. 20 MB HD, GraphicsCard. Monitor & Keyboard $2275

IBM PC XT, with 256K, 360 Floppy. 20 MB HD. KB.. Graphics Card, Monitor S23SO

IBM PC XT, with 640K. IBM 360 Floppy. IBM 20 MB HD. New Keyboard. Graphics Card.Monitor ... $2559 IBM PC AT#339, 512K. 1.2 Floppy, IBM 30MB HD ... $4385

IBM PC AT, with 512K, KB. 20 MB HD $2995

IBM PC Convertible 80 C SB Processor, with 512K, Two 720KB Floppies SCALL

IBM Proprinter $ 475 IBM Quietwriter $1200

IBM EGA, with 256K Memory.... $ 775 IBM EG Monitor $ 695

COMPAQ PORTABLE II with 512K, 80286 Processor, Two 360 Floppies $2795

COMPAQ DESK PRO, with 640K, Two 360 Floppies, Graphics Card & Monitor ... $1895

COMPAQ DESK PRO A PORTABLE 286, with 640K, 1.2 Floppy, 20 MB HD.

Monitor $3895 For 86 MB, instead ol 20 MB, add $ 995

AT & T 6300 PC, with 256K KB, Two 360 Floppies, AT & T Graphics Card & Monitor $1795

AT » T 6300 Plus, with 512 K, 12 Floppy, KB. Graphics Card & Monitor $3495

SPERRY PC-IT, with 640K, 12 MB Floppy. 40 MB HD, KB $3095

PLOTTERS A DIGITIZERS

CALCOMP 1043 $7359

1044 ... $11,195 GOULD 632011 x17 ... $1550 IO LINE 3700 ... $3895

HIDMP56 S4596 DMP40 $920 DMP51/52 $4145

HP 7475 $1659 HP 7580 $841 5

NICOLET ZETA824 $8995 ZETA836CS $13,295

GTCO 3648L $3095 111 7A $1195 2436TL $5995

KURTA12X12 $ 595 12x17 $ 695

SUMMAGRAPHICS 1 1 x 11 $495 18x12 $ 750

HITACHI 36x48... $4195 TIGER 11 X 11 ...$ 675 1 5 x 1 5 ... $1 295

GRAPHIC CONTROLLERS A MONITORS

HITACHI HM 3719 A BNW 15 $3290

MICROVITEC 905CNQ GRAPHPORT D $2795

Taxan 640 & Color 4001 $1099 Pereyst BOB 1 6 * NEC 1401 ...$1150

Galaxy 800 A Mitsubishi 6469.... $2995 Verticom CD-1 A M-16.... $2395

BNW Adapter $1 950 Artist-1T $2295

Conographics 4O0 A Mitsubishi 3479 LP S2295

Mitsubishi 1341 A Sigma 400 $1195

SPECIAL OF THE MONTH - CAD System, Sperry IT640K. 40 MB HD, 80287 M.C., BOB 16, NEC 1401,AutoCAD, Summa Graphics, HI DMP40 $6985

SOFTWARE

Accounting Package $ 495 AUTOCAD

TA WVERSACAD $2395 CADVANCE

ARMOR SYSTEM'S Excalibur A Plus Series

COMPUTER ASSOCIATE (IUS) A/R, A/P, G/L

UNIVAIR'S Dental Management A Medical Management-9000

CYMA Medical, Chiropractic, Orthodontic, Dental Package

Physician Micro Systems Package

Hotel Information Systems Package

MICROCRAFT, BALCONE, UNIVAIR

IBM Doctor Officer Managerll

PRINTERS

$1950

$1950

CALL

EACHS 350

CALL

$1625

$1850

$2450

CALL

$2950

$1250 INKJET.

CITOHLQ24 $ 875 F1O-40 $ 875

F10-55 $ 995 C-10 $ 475

CITIZENMSP15 $ 415 MSP 25 $ 525

CITIZEN PREMIER 35 $ 515

CORONA LAZER $2350

DIABL0635 $1250 INKJET $ 895

DIABLO 34LQ $1095

DIABLO LAZER/COPIER 4045 $4259

EPSON FX85 $ 379 EPSON 286 $ 550

HEWLETT-PACKARD LASER JET $2195 HP Plus $2995

HEWLETT-PACKARD 500 Plus $4150

NEC P560 $ 995 P760 $ 650

FUJITSU MAX 24 $11 75 MAX 24 COLOR $1 275

FUJITSU OL 2400 $959 DM2400 $859 2200 CALL

TOSHIBA P321 $ 550

OKIDATA192 .... $ 369 193....$ 479 OKIDATA 293 .... $ 665TOSHIBAP351 $1095 P341 $ 750

HARD DRIVES A BACK UP SYSTEMS

SEAGATE20MB $ 450 SEAGATE 1038 $ 695

SEAGATE 4051 $ 850 HARD CARD 20 MB $ 650

MAXTOR/MICROPOLIS 85MB $1 550

MAXTOR 105/140 $1850/S2195

TEAC 20 MB Tape B/U $ 595

ARCHIVE 60 MB Tape B/U $ 850

CALL FOR WHAT IS NOT LISTED, WE GUARANTEE THAT YOUR CALLWILL NOT BE A WASTE. LEASING AVAILABLE.

EPSON 286

...$2195 HPPIus.

$ 995 P760

$1175 MAX24COLOR

$ 959 DM2400 $ 859 2200.

f~W~t A "k TTfi.t i (11^ Nochargestortestmg

\M I 4-J? M M Sl"lJ'*tfO and availability sul

West Oerrltos Ave., Anaheim, OA 92805

No charges for testing and configuring equipment. Pricesand availability subject to change without notice.

Inquiry 55

SEPTEMBER 1986 • BYTE 421

Inquiry 402

P.C. Computer Brokers Inc..

The Place To Buy YourComputers, Printers, Software

And AccessoriesTeac—% Height Drive360K s8995

Samsung—TTL Monitor Greenor Amber STQ95

Ring King Printer Stands

10" Wide •H4,B

15" Wide »39"

Call Toll FREE

1-800-245-4122

QuickLink

High

Speed

Buffer

Sugg.

Retail

■179od

*124"

IBM PC CloneData Link—One Year Warranty

FCC Approved, B40K, 2 Drives.Monographics Card, Mono Monitor, Para.Port, Sen Port, 8 Expansion Slots,Keyboard, MS DOS. Leading Edge WordProcessor & Spread Sheet.

*89595 Complete

Also Available With 20 Meg

Drive TZ95 Complete

Word Perfect 4.1 •209*

Monochrome Graphics Card

FCC Approved a88a

Seagate 20 Meg

Hard Drive With Controller

544900

P.C. Computer For Repairs

Send P.C Your Computer Equipment, OurAuthorized Technicians Will Repair AndReturn It To You.For Repairs Call [303)450-6787

Modems

Packard Bell External 300/1200

bd M49"

Zoom Internal 300/1200 bd with

Software »B49"

Everex Internal 300/1200

bd «149"

Prices Subject to Change Without Notice

Add 2.9%

For Use of

Visa, M/C

& Choice.

These Prices Are Good For Mail Order Dept. Only

P.C. Computer Brokers Inc.3879 East 120th Ave.Thornton, CO 80233[303)450-6727

Call Toll FREE

1-800-245-4122

422 BYTE • SEPTEMBER 1986

NEC PRINTERS

(1 Year Factory Warranty)

Pinwriter P5 $ 930

Pinwriter P5XL $1075

Pinwriter P6 $ 450

Pinwriter P7 $ 615

Elf 350/360 $ 380

3510/15/30/50 $ 715

8810/15/30/50 $1040

Optional Forms HandlingDevices CALL

QUALITY PRINTERS8415 Cement City RoadBrooklyn, Michigan 49230Phone: 517-592-3749

Inquiry 289

Protect \burPrivate Parts.

Whether you're a softwaredeveloper or an end user,whether you work alone on aPC or you're part of a 24-person project team, keepingnew software or sensitivedata from prying eyes isserious business.

Short of compli-cated, wizard-likeproteclion schemes,or James Bond, youhaven't had too manyrealistic alternatives,Until now.

Because RainbowTechnologies has developedsimple, easy-to-use systemscalled Sentinels that say noto prying eyes. No matterhow hard they look.

The key to Sentinel is just

that— a smart piece of plasticsmaller than a best-sellingcassette that plugs into theparallel port of your IBMPC/XT/AT or compatible.

There are two ways to go.The Software Sentinel'", thatprevents anyone fromusing your licensedsoftware programunless you give thema key. And the DataSentinel™, RainbowTechnologies'newest prying eye-stopper, that automaticallyprotects sensitive personal orproject data as you enter it.The Sentinel Security Systemsfrom Rainbow Technologies.The only hard part isthe key.

VI RAINBOW- ItCMNOLOGKS INC

17971 Skypark Circle. Suite E, Irvine, CA 92714Phone (714) 261-0228 Telex: 386078

Inquiry 293

MEMORIES—DRIVES—PRINTERS

* B4K/128K/25BK D-RAMs at LOW PRICES

* H-P Vactra 1 28K Upgrade S39.95

* veo-s ai4.oo / veo-8 sib.oo

V30-B 818.00 * 80B7 8115.00

B087-2 ... 1155.00 / 80287-3.. 8180.00

* Memory Boards and Modules

JRAM-2 Parallel or Serial w/(SK 8188.80

JHAM-3 /JHAM-AT Par. or Ser. w/BK. . .8177.50JRAM AT-3 Par. or Sen w/0K 1229.50

Ser/Par or SerVSer Clock module 8138.00

Ser/Per or Ser/Ser module 885.00

Clock /Calendar module 855.00

JOISKETTE module 8135.00

JLASEH-1 8185.00

Cenon Printer-switch + cables 880.00

Corona cable 855.00

ABM Multi-Function Board W/3B4K (115.00

* TEAC FD5S-BV DS/DD Disk Drive . . . .895.00w/ one year factory warranty

* BROTHER Printer! fi Accessories

M-1509 Dot Matrix Printer 8385.00

HR-15XL Daisy Wheel Printer 8375.00

Twinwriten-5 Dot Mstrix/Dsisy 8885.00

Printer Accessories .....85% off LIST

■ WARRANTY: All I.C.s gua>dealer discounts availablecharges ' Maryland reside/:

nteed loi 180 diya ' Ol-.t.l untl' Prepaid oideis - No shippingmust add sales lax.

Advanced Technology Products, Corp.

P.0 Box 2205 /11141 Georgia Ave., Silver Spring, MO 20902Phone: 301-933-3523

Inquiry 9

«M^nAAA SINGLEM68000 BOARD

COMPUTER

On board 6-10 MHz CPU, 20K RAM, 32K EPROM.two RS-232,16-bit port, 5-counter/timersexpandable via Memory/FOC Board.

M68K CPU (bare board) $ 89.95

M68K CPU A&T (6MHz) $495.00

MD512K Memory/FDC (bare board) $ 89.95

MD512K Memory/FDC (128K) S495.00

FDC/Hard Disk interlace option si 50.00

M68KE Enclosure w/power supply 5249.00

M68K Monitor EPROM's $ 95.00

M68K Macro Cross Assembler 1195.00

4XF0RTH OSw/assembler, editor $295.00

CP/M 68K0Sw/"C" compiler $395.00

W-'Tk Jl* «~*» Educational P.O.Box 16115

■-' IVI *** Microcomputer Irvine.. CA 92713Lil'IVj Systems (714)854-8545

Inquiry 117

IBM PC ..„

A professional package enablingyou to design, edit, print & plotelectronic schematics. Supports "A"through "E" size sheets, over 2000Unique Library Parts, Part Rotation,Unlimited Hierarchy, Grids, AutoPanning, 5 Zoom Levels, Rubber-banding, Powerful Macros, Hi-ResColor & Monchrome Graphics, MuchMore! $495 Includes Everything.

Call To Receive Free Demo Disk.OrCAD Systems Corporation

1049 S.W. Baseline St.Hillsboro, OR 97123

(503) 640-5007

B

8051

PASCAL

CROSS

COMPILER

For MS-DOS Computers

SCIENTIFIC ENGINEERING LABORATORIES

104 Charles Street. Suite 143

Boston. MA 02114 Tel 617 262 3903

Inquiry 303

Inquiry 75

Oompu$ave

Call Toll Free: 1-800-624-8949

A DIVISION OF ADLANKO CORPORATION

MONITORS

Amdek310A ... 143 Amdek 725 . . 535NEC Multisynch . . 539 PGS HX12E . . 495Samsung m ...89 PGS MAX12 .. 158Samsung 1251 ... 72 Taxan640 ... 495Tatung 1360 ... 399 Tatung 1370. . 449Thorn 31311SI. . . 388 Wyse620 ... 385Thorn 36382SI . . 375 W»se700 .. .1125

Zenith 1360 515 Zenith 1230 . . 92

Roland/12 YHGB,640x240/.37 289

Sakata/137Compi RGB/6401200 ... 359Thomson/14" Color Comp/Apple .... 139Hitachi/Milsubishi/Nanao/Sperry . . . CALL

MODEMS

Anchor Volksmodem 12 132

Anchor Lightning 2400/Sottware .... 299

Hayes Smartmodem 1200 368

Incomm2400/Upgradeable4800+ .. 345

Novation 2400 Professional 499

Practical 1200 Half-Card/Software 139

Prometheus Promodem 1200G 189

Prometheus 300-C/Ap llC/Software 76

Racal-vadic2400PC/Software 389

Zoom 1200PC-XL/RAM/Software .... 229

US Robotics Courier 2400 378

Zoom HE Internal/Software/Apple 92

AST/Codex/Rixon/UDS/Ven-Tel CALL

COMPUTERS

AT&T 6300/640K/1 Drive

CordataPC400-XT/Portable/20M .Sharp PC7000 Portable/2 Drives .

Sperry IT/1 M/40M Hard Drive . . .ToshibaT3100-AT/Portable/10M . .Toshiba T1100+ Portable/2 DrivesWyse286-AT/640K/1.2M Drive .

Altos/Olivetti/Video Tech/Zenith . .

1499149911392899319914991795CALL

CTC SYSTEMS XT $548

640K / 4.77 MHz /1 Floppy Drive /135 W

Power Supply / XT-Style Keyboard / User

Documentation / 6 Months Warranty

TELEVIDEO TELECAT 286 $2349

512K / 8 MHz /1.2M Floppy Drive /LED AT

Keyboard / Clock Calendar / Hi-Res

Monitor 640 X 400 / Tilt-Swivel Stand

Parallel & Serial Ports

TERMINALS

IBM 3161-11 .... 489 Altos III . . .

. 555

KimtranKT7 ... 435 Altos IV . . .

. 355

Qume QVT-101G . 293 Ampex210 .

. 365

Televideo 905 .. . 289 Wyse 30Televideo955 . . 445 Wyse 50 ...

. 289. 415

Televideo9220 . . 459 Wyse60. . .

. 475

Visual 65 399 Wyse85 ...

. 438

Adds/CIE/Liberty/Link/Zenith

CALL

PRINTERS/PLOTTERS BOARDS

Citizen 1200 ... 179 Canon A40 . . 235

AST Rampage/PC-XT

. 239

Citizen MSP10 . . 275 Canon Laser 1935

AST Six Pack Premium/512K

. 349

Citizen MSP20 . . 319 NECCP7 ... 735

ATI Graphics Solution

. 199

Cordata Laser ..2175 NECP5XL ..1125

Orange Grappler + (Apple)

.69

Epson FX286 . . 539 NECP6 .... 445

Orchid Tiny Turbo 286

. 439

Okidata 2410 .. 1795 Okidata 293 .655

Orchid Turbo EGA

. 589

Panasonic 1091 .228 Okidata 292 . 511

PC 576K RAM Board (OK)

.59

Panasonic 1092 . 299 Ricoh 52LQ . 795

PC Color Graphics Card

. 79

Panasonic 1592 . 409 Star LV1210 . 180

PC Monochrome Graphics Card

.89

Toshiba 351 Col. 1199 Star NX10 . . 245

PC Multifunction Card/OK

. 85

Toshiba 321 .... 495 Tally MT86 . . 425

Hercules Monochrome Graphics...

188

Data Prod/Data So/Diablo/Fujitsu . . . CALL

STBEGACard

. 259

Genicom/Juki/Televideo/TI CALL

Paradise EGA/Auto-Switch

. 375

Buffers/Cables/Sheet Feeders CALL

Sigma 400 High Res Card

. 439

Stands/Switch Boxes/Tractors CALL

Tecmar EGA Master

. 265

Houston/lolirte/Roland Plotters .... SAVE

Intel/Microtek/Persyst/Quadram . . .

CALL

Houston/Kurta/Summa Digitizers ... SAVE

Practical/Taxan/Thesys/Vutek ....

CALL

DISK DRIVES

Gamma Drives/Apple Compatible .... 119 1IOMEGA Dual 10M Bernoulli W/IF ... 1945 1IOMEGA Dual 20M Bernoulli W/IF . . . 2495 1

ALL TYPES OF BUSINESS, CAND RECREATIONAL SOFTWAREVERY LOW PRICES CALL

Mountain 20M Hard Card 699 1

WE ALSO CARRY

Seagate 20M Hard Drive Kit 405 1

Epson JX-80 Color Ribbons

.12 1

Tallgrass25MDrive/60MBackup ... 2199 1

Microsoft BUS Mouse W/Paint

. 1091

OTHER FLOPPY AND HARD DRIVES 1

PTI-85 Surge Protector (#1 Rated) .

52 ■

Alloy Archive-CDC-Corvus- Irwin• Maxtor • Maynard • Mitsubishi •Sanyo • Panasonic • Priam • Shugart

Cables/Chips/Disks/Graphics TabletsJoysticks/Keyboards/ Power Supplies

• Tandon • Tulin • Teac • Tecmar •

Labels/Mice/Stands/Surge Protectors

Western Digital

| LOWPRICES

call|

HOURS: MON - FRI 7AM - 6PM/SAT 9AM - 2PMIN ARIZONA CALL (602) 437-4855

CompuSave: 4207 S. 37th St., Phoenix, AZ 85040/ For Customer

Service Call (602) 437-4856/Prices Relied Cash Discounts And Are

Subject To Change Without Notice/Minimum Shipping Charge $4

Purchase Orders & Major Credit Cards Welcome

THE UNBEATABLE PRICES!

2 SPEEDS TURBO SYSTEM

FULLY IBM PC/XT COMPATIBLE 4.77/8MHZ

• 640K on Board RAM

• 2 Floppy Disk Drives

• Disk Controller Card

• 150W Power Supply

• FCC Type Slide Case

• 'AT' Style Keyboard

• 8 IBM VO Slots

• 8088-2 Micro Processor. 8087 Co-Processor Socket

• 4.77 MHZ/8MHZ Clock Selectable

• Monitor and Display Card Not Included

Fully Assembled and Tested «£ PQ COO

(Other Options and Configurations Available, Please Call.) ^^MjM^M

PINECOM AT SYSTEMFULLY IBM AT COMPATIBLE

. 8/6 MHZ Clock Selectable

• 80286 CPU

. 1.2 MGB Floppy Drive

• 200 Watts Power Supply

• Hard Disk/Floppy Disk Controller

• 512K RAM Expandable to 1 MGB

• Clock Calender w/Battery Backup

• AT' Style Keyboard

Fully Assembled and Tested(Hard Disk Available, Please Call.)

$149qoo

pinecotn

SPECIAL SALE ITEMS

20 MGB Hard Disk w/Controller (ST-225) *39000

300/1200 Modem Card Hayes Compatible H3500

EGA Card With Printer Port and 256K *26000

Tape Back Up Irwin 10 MGB *3$000

3M 10 MGB Tape For Irwin *2500

Logitech Mouse System With Software $jj500

Samsung T.T.L. Monochrome Monitor (Amber) .. . $8500

Mitsubishi RGB Color Monitor (12") *26500

TVM 3 Way RGB Color Monitor (13") '. *34000

V-20 Ny NEC Turbo Speed Processor U600

8087 Co-Processor Chip H2000

Surge Protected Outlet Strips, Master On/Off Switch,

Power on Light, Circuit Breaker, 6 Outlets $\goo

Monochrome Graphic Card w/Printer Port $7500

Color Graphic Adapter w/2 Composite Ports $6500

Eprom Writer Card With Software Read, Write,

Copy Vertify Any Eprom 2716-27512 *9500

Joystick For IBM With 2 Firebuttons H600

Game I/O Card For 2 Joysticks $26°°

Send One Dollar For Our New Catalog

PINECOM COMPUTER INC.

9690 Telstar Ave., Suite 204El Monte, CA 91731

Inquiry 272

Phone: (818)575-1882

Telex: 5106017376 PINECOM

Fax: (818)575-1897

Inquiry 405

Discover TheDifference...

2 FOR 1 LIFETIME WARRANTY

* Performance exceeds ANSI specifications by 62.5%

* Eachdiskette 100% tested and certified errorJree

* 65% clipping level * Over 10 million passes per track

* Retn/orced Hubs * Tyvek * (not paper) sleevesSS-DD -W/P tabs and ID labels DS.DD

■ Of 5V4 48TPI .0*/

Simply top Brand-Name Quality, made inthe U.SA. to our specifications by a leadingmanufacturer. Factory polybagged in lotsof 25. Quantity discounts available.

■my iR, America's

IICenTecIi Premium QualityColor Diskettes

V TIMELESS WARRANTY

t* Performance exceeds AJV.SJ. specifications by88%

X" Each disk 100% tested and certified

e* 14 COLORSJor data organization

\S Pkgs. of 10. tyvek sleeves, w/p tabs, and ID labels

OTY. 10 BOXES OR n„ n

100 DISKETTESBW Color, BOXED, 48 TPI

3.5" Color, BOXED

5'/4" Color, BULK, 48 TPI

3.5" Color, BULKHigh Density, Color, 1.6mb,IBM AT Compatible

Includes Tyvek sleeves, w/p tabs, ID labelsI Call lor excellent prices on other CenTech products

SS-DD

.741.39.641.30

.981.99

.881.922.05

)S LIFETIME WARRANTY

v* High, quality and consistently reliable

i<* More rig id jackets than ever before

SS-DD QTY. 5 BOXES DS-DD

.74 5.25,48 TPI 99

1.35 3.5,135 TPI 1.95

DS-HD96TPIJBM ATCompatible 2.09

Call tor best 3M prices on head cleaning and data cartridges.

Affordable QualityNdSllUd Incredible Value

Best Prices Ever!

V LIFETIME WARRANTY

is Factory Fresh in BOXES of 10 withsleeues, w/p

tab. ID labelsSS-DD QTY. 10 BOXES DS-DD

.63 5.25.48 TPI, box of 10 .69

1.59 3.5M35TPI 2.19

High Density, IBM PC-AT Compatible 2.09

_^_-_ -_ SPECIAL OF3ULK. THE MONTH

Made in U.SA.

S LIFETIME WARRANTY

)S Exceeds ANSI specifications

is Includes Tyvek sleeves and w/p tab

5Va DS-DD

MULTIPLESOF 100

380

ORDERING INFORMATION

TERMS: Free use of VISA, Mastercard, and American Express. P.O

orders accepted from recognized corporations rated 3A2 or better.

government and schools on 2%-net 30. PAYMENT: Add $3,00 per

100 diskettes or fraction thereof, add $3.00 for head cleaning kit or

dozen ribbons, add $3.00 for COD orders.

PRICE PROMISE: We will better any lower delivered price on the

same products and quantities advertised nationally.

Toll Free Order Line: Information Line:

1-800-233-2477 1-801-561-0092

omputer s.itL.K.cit»ui.h8*o7o

, j_t_ = LL, Im*. Hours: 8am to 5pm

Iffairs, inc.

424 BYTE • SEPTEMBER 1986

6800/6809

Micro Modules

OEM 6800/6809 MICROCOMPUTERMODULES for dedicated control andmonitoring. Interfaces for sensors,transducers, analog signals,solenoids, relays, lamps, pumps,motors, keyboards, displays, IEEE-488,serial I/O, floppy disks.

WINTElUr50*'

Inquiry 381

^te

COMPLETE MONEYMANAGEMENT FORHOME AND BUSINESS.

• Checking, Savings and Credit CardMgmt. • Smart Account ReconcilerWith Automalic Error Detector

• Budgeting • CPA Designed •Financial Statements • Graphics

• On-Line Help Screens • HighSpeed Financial Data Base • InquiryReports • Pop-Up Calculator • Tutorial

• Not copy protected • SimplifiesTax Preparation • Much More.

Only $69.95

Visa • MC • C.O.D. Free Brochure319/373-0197

PARSONS fECHNOLOGY

6925 Surrey Drive NECedar Rapids, IA 52402

Inquiry 264

Vteawe

Solvate

lor hard *ste

• DOS partitions to1 GIGABYTE

• Spans two drives in onebootable partition

• Supports big drives onAT and XT

• Secures data

GOLDEN BOW SYSTEMSs120

$3 shipping/

handling

California orders AAm c-.ni

add 6% (< lr 619/298-9349

2870 Fifth Avenue

Suite 201

San Diego. CA 92103

! not only apiinter buffer !

THIS IS THB MOST SOPHISTICATED

PRINTER BUFFER - MULTIPLEXOR - SWITCH

WITH TWO SBPARATB INPUTS [SERIAL AND PARALL8L) ANDTWO SSPARATB OUTPUTS (SERIAL AND PARALLEL) CAN B8USED I.1KR STANDARD BUFFER WITH ANY INPUT TO ANY

OUTPUT BUT ALSO YOU CAN CONNECT 2 COMPUTBRS TO tPRINTER. Oil I COMPUTER TO 1 PRIHTBR5. OR I COMPUTERSAND 2 PRINTERS AND MORE = 1 COMPUTER TO 3 PRINTERSOR 3 COMPUTERS TO I PRINTER

MM)! CAPACITY - 64 KB TO Sf>(J KB AND - V* KB TO I MB(MODELS A AND B] PAUSE, COPY AND RESET FUNCTIONS

SBRIAL PORTS WITH T OR 6 BITS WORD LENQTH. . OR 7 STOPBIT, PARITY, XON/XOPF, DTR, RTS

DCB-A-64K J IQ^ DCB-B-SbOK t 955 '"'

[■] Power lupply ind p.i.ll.l tibUi ere included

ALSO. WB HAVE THB MOST COMPLETE DATA CONVERTERUNIT CONVERTS RS232 SERIAL TO CENTRONICS PARALLBLOR VICE VERSA. JUST BY MOVINO JUMPERS BAUD RATE AND

PROTOCOL FULLY PROORAMABLE PROM Iho TO 19200 BAUDSINOLUDES DTR, RTS, XON/XOPF. PARITY, tic

DCUl"|P°

1 80 i")

■ r iupplj end a

L-'dcu

bi

seiialOparallel-directional converter

INTECTRA lnc.-Depl.232

'*&*^mrtil5) 967-8818 TX 345545

FHL QT Plus

• Multi-user/Multi-Tasking

• 16/32-Bit 68000 CPU — 10 MHz

• 4 to 8 Users

• 512Kb RAM to 1024Kb RAM

• 2 to 3 8-Bit Parallel I/O Ports

• Hard Drive (20 Mb or 30 Mb)

• 720Kb Floppy Drive

• Software Included: OS9/68000; Basic; Word

Processing; Spreadsheet; Utilities

• Options: 512Kb RAM Board

4 Serial Port Board4 Port S30 I/O BoardPascal and CDealer Inquiries InvitedFrank Hogg Laboratory, Inc.315-474-7856 TELEX 646740

Inquiry I36

mericanSemiconductor

THE BARE

XT TURBO

SYSTEM

*399

"Looks, tastes, and acts like anISM, AND ifs 100% compatible.

8087 $119.00

80287 175.00

64K .99

41256K-150 2.39 V-20

41256K-200 .... 1.99 FLOPPY

XT & AT ADD ON CARDSFor AT, XT. Compaq, & Corona:«*w» — 30MB Hi-Speed20MB Hard Drive %JZ5 RLL KIT

TO ORDER TOLL FREE CALL

1-800-2374758, EXT. 815

Inside Florida Technical Line

813-961-9444 1-813461-5584

«> subject to dnnae. add 3.1% let VISA/MC purcho.es.

16520 N. Florida Ave., Lull, Florida 33549

Inquiry 144

Inquiry 20

FORTRON CORPORATION

3225 SELDON CT., FREMONT, CA 94538

IN CALIF: (415)490-8171

TLX: 559291 FORTRON

FAX: (415)490-9156

ORDER TOLL FREE: (800) 821-9771

U.L. Rated • High Reliability • Full Technical Support

140W (Typ.PC/XT

150W(lViax.S129.00

• U.L. recognized, yellow card available File it E-ioin5(S)

• Meet FCC class B, European safety spec.

• 115/230V AC convertible

• Low noise DC fan

• OVP, OCP, short circuit protection

• IBM® standard pin out or Faraday type pinout selectable

• 100% 24 hrs. burn-in 100% pre-shipment test.One full year warranty

Your PC represents a substantial Investment It does not make sense to risk costlydown limo due to bargain power supply, when lot a low dollars more you can havethe confidence ot FORTHON QUALITY.

IBM is a registered trademark ot International Businoss Machines.

FC 5192 200W (max)PC/AT $189.00

PROFITABLE DISCOUNT PRICES FOR SYSTEM INTEGRATORS & DEALERS - PLEASE CALL

FC520Color Graphic/

Mono/Printer

• TIL / composite level outputs

• 320 * 2C0 [color) 640 x 200 (B&W)1 • Centronics Primer Port

$99.00

FC 550 (CT-6040)

Monochrome / Graphic /

Printer

• 80 x 25 text mode

> 720 x 348 graphic mode

• Run Lotus 1-2-3- auto cad. etc

• IBM* compatible

FC 730 (CT-6050C)384K Multifunctions

■ Memory expansion [c

• Clock/calendar

• Serial, parallel pons

■ Game pod

iOKi S119.00

FC740

Multi-I/O $109.00

w/Floppy Controller

• 1 EIA-RS232C port (2nd oplio

• 1 Cenlronic port, game port

• Clock /calendar

• Control 2 lloppy drives■(FC 770) w/o Floppy

Controller .. $!

FC 1730

Multifunction Card

for PC AT

• 1 EIA-RS232 port (2nd optional)

• I28K lo 1.5 MB memory

• Expandable to 3 MB (optional) bypiggy back board

■ Game port S1 69.00

FC 1930

RS232/Printer Port

for PC AT

• 1 EIA RS232 port (2nd optional)

• Centronics parallel port

$99.00 |

SPECIAL

FC 830 512K

memory exp. card . .$69.00

FC 830S

576K memory

exp. card $69.00

FC 930 serial/parallel

adaptor for XT $49.00

FC530

monochrome controller

w/printer port $79.00

FC 940RS232/Real Time Clock

Hard DiskController

FC230Floppy Disk Controller

XT CPU Board

$59.00

(clock only) $49.00

Hard Disk Controller tor XT

• DTC 5150 BX

• WD WX-2 (Western Digital)

• Cable

F.D. & H.D. Controller (or AT

• DTC 5290

• Western Digital WA-2

• Cable Set

SI 49.00S14S.00S 9.50

$265.00$260.00$ 19.00

■ Drives up lo low 614"

• IBM compatible

• Wilh cables

$59.00

• Expandable to 640K omemory

• Optional 8087 co-processor

• Optional IBM" comp. BIOS

Modems $149.00

INTERNALHayes Compatible

1200 Baud $148.00

2400 Baud $425.00

Enhanced Graphic Adaptor

IBM® Compatible $239.00

Si

w/o printer port

w/printer port

EGA Monitor $459.00

• For PC/XT / AT and compaliblos

• 256K on board memory

• Full 16 colors in 640 X 350 on IBM' enhanced color display

• Support 640 x 350 IBM* compatible enhance color and monochromo monitors

• Parallel port • Light pen interface

FORTRON 200U.P.S. for PC

• 115V / 230V AC input convertible

• Input current 2.5 amp

• 200W continuous

• 1/2 cycle (typical) transfer time

• Hold-up time Irom 20 minutes (20OW) up to

.SSSWK&r $259.oo

FC447

PC/AT Keyboard

KteO

• IBM AT compatible keyboard

• Enlarge return key

• Light on num. lock key

$109.00

FC 427 (5150 Type) $79.00

FC 437 (5151 Type)

&mmm&m

• For PC XT

• Large return key »#,*» a**

• Light on num. lock keys $99.00

CABINETS & EXPANSION CHASSIS

FC 630 A-2XT CHASSIS

• f-or yu x i compatible side switch■ To use FC 135-40 power supply

• ftamnlmn mnnnijng hardware

• Complete (I

$79.00

FC 620AT CHASSIS

iiWn.i

• For PC AT compatible

• LED lamps, key. key lock, speakerand mounting hardware included

$139.00

FC610Drives Chassis

w

' Capable of holding 2 hall-height

■ Come vtl power supply, fan

1 LED power indicator $1 4

FC 640/5 Slots

PC Expansion Chassis

$388.00

■ W/6 slot bus board

• 100W power supply. Ian

• Capable ol holding 3 hall-h

• System interface adaptor included

FC 650/8 Slots

PC Expansion Chassis

$398.00

* PC XT identical size

* w / B slot Duf eoard

* 140W power supply

* 4 halt-height drives

* System interlace edeptor included

FC 660/12 Slots

PC Expansion Chassis

$438.00

'1

x ISVt

9 board, power supply.

■ Capable of holding 2 hall-height

drives• System interface adaptor included

MONITORS $89.00

1 Monochrome

DISK DRIVES

Tatung MM 1222 A/G . S109.00

Color Hi-Res (640 x 200)

1 2 MB 55GFV . .

S143.U0

• Hard (w / controller & cable)

Enhanced Graphic (640 x 350)

20 MB ST-225

J390.0O

• 20 MB ST-4026 (40 MS) drive only

1578.00

• 30 MB ST-4038 (40 MS) drive only

tesB.oo

Mitsubishi EGA S52B.00

• 31 MB CMI-6640 (40 MS) drive only

.1499.00

Quimax PX-22 I4SB.0O

Tape Back-Up

(w / controller, cable & tape)

INTERNAL

Sysgen 20 MB $575.00

Sysgen 60 MB $745.00

EXTERNAL

Sysgen 20 MB $749.00

Sysgen 60 MB $955.00

Printers $89.00

Admate DP-130

• 130 C.P.S.

• 60 columns

• 9 x 9 dot matrix field

• Parallel standard interfaco

TTX-80

• 50 C.P.S.

• SO columns

• Parallel standard Inlertece■ Thermo printer

Inquiry 132 for End-Users. Inquiry 133 for DEALERS ONLY.

RAM CHIPS

• 64K RAM $11.00 / 9 pc.

•256K 533.00/9 pc.

• 128K S44.00 / 9 pc.

(for PC AT)

Terms:

• Mm shipping & handling S6 00

• CA res add 6 5°o lax

• Restocking charge 15°o

• No rin goods w/o a RMA no

• Prices subjeel to change w/o nolice

SEPTEMBER 1986 -BYTE 425

MICROSUPPLY

ORGANIZATION INC.

MSO, the leader in cost effective computersystems, is offering the Sanyo MBC 1200at a giveaway price!

The MBC 1200 Accounting Software

-G/L, A/R, A/P, Inventory and Payrollmodules retail for $398 per module. Nowfrom MSO you pay only $99 permodule or all five for $299! Seconddisk drive with fan-option available.COMPAT disk utility available.

SPECIFICATIONS:

•Two Z-80A (main and subsidiary) CPUs with no-wait mode for fast execution, substantialmemory capacity (RAM 64KB, ROM 4KB).

•High-resolution full graphic function with 640 x400 dot matrix display.

•Choice of 33 or 40 line text mode.

• CP/M operating system complete withinterpreter, editor and all utilities.

•Easy-to-use Sanyo graphic BASIC.

•One (MBC 1200) or two (MBC 1250) internaldouble-sided, double-density, double-track, 514"slim-type 640KB formatted mini floppy diskdrives.

• Special design featuring detachable ergonomickeyboard with coiled cable.

•Interfaces for Centronics printer and one RS-232C port provided.

20 meg internal hard drive sub-system for Sanyo MBC 1100,1160 & 1200 (.QQ

ywvv (with purchase)

Printer specials with purchase

805/393-2247

All systems carry full 90 day warranty.

CASH PRICE ONLY

Check in advance. Add 3% for VISA/MC. Shipping& handling charges will be added to each order.

For our catalog with complete detailsand prices, send $2 to:

Micro Supply Organization, Inc. ,^^^^

4909 Stockdale Hwy. #180 VISA

Bakersfield. CA 93309 ammm

15% Restocking on Returned Orders

thegiveaway.

MBC 1200

FREE SOFTWARE

• Wordstar • Spellstar

• Calcstar • Mailmerge

• Infostar • Basic

426 BYTE • SEPTEMBER I986

Inquiry 233

P.C. MEMORY HOT LINE

LEADER IN WHOLESALE PRICING

(MAJOR AMERICAN/JAPANESE)

DRAM CHIPS

/4164 $1199

/ 41256 $2,30

/IBM PC-AT CMPTBL $999

/ XT CMPTBL. $555

y20MB HD/HH + CNTRLR $389

SEAGATE HARD DRIVES:

ST405V251 50MB FH/HH $699ST225 20MB HH $299

WSTRN DIG CNTRLR WX2 $ 9950MBHOIHH t CNTRLR $849TEAC 55BV F/D $ 99

PC-AT CMPTBLE M.'BOARD $575

■ PROCESSORS

8087-2 8mHz S160.008087-3 5mHz $120.0080287-3 8mHz $130.0080287-8 8mHz CALL

PC F/D HHPC-AT F/D HHMODEM 1200 XTRNLOSK HEAD CLNG KIT

$ 75

$149$129$

PRINTER « MONITORS CALLCONTROL BOARDS CALL

■ EPROMS:

27C256 250ns $8.00

37256 250ns $6.00

27128 250ns $3.25

2764 250ns $3.00

Many 8000 series in stock

Also we carry 7500, 74S, 74LS. 74ALS, 74HC, 74HCT. ECL.in stock. Also diskettes, floppies, drives, monitors, add-onstor PC, XT. AT, peripherals, PC, XT, AT compatibles.

PLEASE CALL FOR VOLUME DISCOUNT

Technical and Volume Discount Call (818) 376-1440

ORDER TOLL FREE-COD, Cash or Cashier's Check Only

1-800-423-5624/Callfornia residents 1-800-352-5689

(Min. order S150)

Inquiry 101

INI-10/AT

PC-AT EXPANSION CHASSIS

• Full 16-bit PC-AT bus

• 10 slots

• 250W power supply

• Two fans

• Direct extension of PC-AT bus

• No software changes needed

• Inexpensive, simple, attractive

Dealer inquires Invited.List Price $1,400.00

INI Computer Products

6915 Hightech DriveMidvale, UT 84047

(801)561-1100

Contact Mark Jenkins

Inquiry 170

MODULARDATA ACQUISITION

• For IBM & Compatibles

• Flexible and Inexpensive

• Money Back Guarantee

• Free Technical Support

Fast DeliveryQUA TECH, INC.

478 E. Exchange St. Akron OH 44304(216) 434-3154 TLX: 5101012726

O

Communications Board

For IBM-PC/XT/AT & comp.Dual RS-232C interfaceOptional software supportsCOM1, COM2, COM3, COM4Jumper selectable interruptsFast Delivery

<J>

QUA TECH, INC.

478 E. Exchange St. Akron OH 44304(216)434-3154 TLX: 5101012726

Inquiry 284

LOW COST UNIVERSALPROGRAMMER KITS

" NO PERSONALITY MODULES REQUIRED" ON LINE HELP AND MENU SELECTION" ON BOARD 110/220V POWER SUPPLY" FAST PROGRAMMING MODE AT 6V VCC" BUILT IN MONITOR FOR 1/0 DEBUG- CAD PCB. SILKSCREEN 8. SCHEMATIC" SOFTWARE DRIVERS FOR MOST PCs" SUPPORTS ALL 5V EPROMS. EEPROMSAND INTEL MICROCOMPUTERS

KITS FROM $125 ASSEMBLED $235DRIVERS $35 SHIPPING $1VISA & MASTER CARD ACCEPTED

B&C MICROSYSTEMS

6322 Mojave dr. San Jose CA 85120Phone (108)997-7695 Telex 4995363

UN IVERSALEPROM PROGRAMMER

" NO PERSONALITY MODULES REQUIRED" ON LINE HELP AND MENU SELECTION" ON BOARD 110/220V POWER SUPPLY" FAST PROGRAMMING MODE AT 6V VCC"BUILT IN EPROM ERASER W/TIMER" GANG PORT FOR FUTURE EXPANSION" SOFTWARE DRIVERS FOR MOST PCs" SUPPORTS ALL 5V EPROMS. EEPROMSAND INTEL MICROCOMPUTERS

1409C-33 $545 1409C-34 $695

DRIVERS $35 SHIPPING $6

VISA 8. MASTER CARD ACCEPTED

B&C Microsystems

6322 Mojave dr. San Jose CA 95120Phone (408)997-7685 Telex 4995363

Inquiry 285

Inquiry 3

NEW DEALER

SPECIAL

XT—COMPUTER

on

2

640K MOTHER BOARD W/OK

89

256K RAM

27

135 WATT POWER SUPPLY

53

FLOPPY DISK CONTROLLER

27

FLIP TOP BOX

38

XT/AT KEYBOARD

59

MONO/GRAPHICS/PRN (HERCj

54

TTL MONITOR W/SWIVEL

96

(1)4601 FLOPPYPARTS

92

$535

ASSEMBLY & TEST

64

$599

20 MEG HARD DISK W/CONTROLLER

425

AT COMPUTER

QTY2

80286 MOTHER BOABO

595

W512KRAM

200 W POWER SUPPLY

98

AT BOX W/KEY LOCK

79

SERIALS PARALLEL CARD

65

AD KEYBOARD

59

1.2 M FLOPPY

129

FDD & HDD CONTROLLER CARDPARTS

225

$1,250

ASSEMBLY & TEST

150

$1,400

30 ME6 40 MSEC HARD DRIVE

615

EGA CARD

295

EGA MONITOR

449

XT PORTABLE

$995

640K MOTHER BOARD

640K RAM

MULTI I/O CARD

■■rfrBa

CLOCK, CALENDAR,

PITS

'|W

SERIAL, y^^^1——PARALLEL *^U%ttitim:'tf lTW0 360K '■■'■:/

w

FLOPPY DRIVES

MONO/GRAPHICS/PRN (HERCj

DETACHED KEYBOARD

135 W POWER SUPPLY

PORTABLE CASE

9" MONITOR, GREEN or AMBER

ADD ON BOARDS — PARTIAL LIST

XT-640K TURBO 4.77/8 MHZ W/OK

99

LOCAL AREA NET CARD W/SOFTWARE

249

384K MULTI-FUNCTION (AST 6 COMP] OK

69

MODEM CARD 300/1200 (HAYES COMP)

149

DISK I/O 2FD CTRL, PRN, SER, CLOCK,

70

CAL, GAME

AB SWITCH BOX W/64K BUFFER (1:2 or 2:1)

94

AD SWITCH BOX (1:2 or 2:1)

29

COLOR/GRAPHICS/PRINTER CARD RGB

58

ACS IMPORTERS

5311 DERRYAVE., UNIT A

AGOURA HILLS, CA 91301

HOURS 9 AM-6 PM PST

(818) 889-1092

TELEX: 299353 POSTUR

SEPTEMBER 1986 -BYTE 427

Q li

c

r

s

twk

■

i

from

A SOFTWARE DEVELOPER'S DREAM

c t a i a _ -..

c a

: - ; : ..:•

THE BEAUTY AND THE BSD

c ■; s Y I t e

$4,995

We've Finally Tamed the Beast!

Full 4.2BSD UNIX™

Each 375 comes standard with a complete 4.2BSDUNIX system. We don't skimp on software. And wecan even sive you EMACS, INGRES, TEX and SPICE forthose special applications.

Loaded with Languages

Turn on your 375 and start developinsyour own appli-cations. It'sthateasy. C, FORTRAN, PASCAL, BASIC, APL,Assembler, LISP and PROLOG they all come standardon every 375.

A Portable Computer for the Serious User

At last, a powerful, portable (22lbs) scientific com puter for al I your serious work. The 375 combines the advantases of aVAX™ with the size, versatility, and price of a micro. All the software tools are there. It's even small enough to leave onyour desktop or take wherever you need it. And it's available direct to you right now !

Specifications:

Standard 375 Features:

Options:

Processor: Series 32000™, 10 MHz, virtual memory. FPU

Ethernet:

10 Mbit, TCP/IP.

Main Memory: 2 MB RAM, no wait states.

Main Memory:

8 MB RAM no wait states.

Disk Memory: 50 MB Winchester. 1 MB 5'/<-inch floppy.

Disk Memory:

up to 280 MB.

Serial Ports: Four RS-232, integral FIFO, up to 38.4 KBAUD

Expansion Interface: SCSI, with optional cartridge streaming tape.

Printer Port: Configurable Centronics parallel.

Spreadsheet:

Q-CALC™

Size: 14 x 12 x 6 inches, 22 lbs.

LEASE FOR $147/ month.

CALL US TODAY

svmmETRic

PUTER

s v s t e m

1620 Oakland Road, Suite D200San Jose, CA 95131-408/279-0700

* Prepaid. Sales tax and Shipping Costs not included. " Specifications subject to charge without notice.

UNIX is a registered trademark of AT&T Bell Labs Q-CALC is a trademark of Quahfty Software Products. VAX is a trademark of Digital Equipment Series 32000 is a trademark of National Semiconductor Corp

428 BYTE • SEPTEMBER 1986

Inquiry 337

DYNAMIC RAMS

41256 i°°"s s4.85

41256 120ns s2.95

1^41256 sons 4atfTT

4164 2ons si 40

^4164 150ns 4HSDX

4464 50ns «3.95

■ PROCESSORS

■ E. PROMS

8087-2 QrnH? S159.00

27C256 250ns S6.50

8067-3 Bmfe S115.00

27256 250ns S5.25

802B7-3 BmHl S179.00

27128 250ns S3.95

S0287-8 BmHl S CALL

27C64 200ns S4.50

V-20 8mH/ S 12.75

2764 250ns S3.25

V-30 8iTiH; S 14.00

2732A 250ns S3.75

■ STATIC RAMS

6264LP-15 150ns S2.95

■ 8000s

(Paris In slock)

I.C.EXPRESS

15358 Valley Blvd.. Cily ol Industry. CA 91746

Phone: B18-369-2688 (Mon-Fri • 8-5)

ORDER TOLL FREE

(800) 892-8889 • (800) 882-8181

OulSide California Inside California

| CALL FOR CURRENT PRICES & VOLUME DISCOUNTS.|rice Sno*n for Casn • MasterCard.' VISA add 3:<; morePrices are subjOCI to Change Minimum orclc $10 00

Caiiio'diii naaltfenta must add e.5: i sales lax

Shipping & Hardline; UPS Ground S5 00. UPS Air S7 00 tuniler 1

ALL MERCHANDISE IS 100% GUARANTEED

Inquiry 168

CROSS-16 META

ASSEMBLER

Table driven 8/16 bit cross-assembler

Tables & Example Source Files are included forALL of the following processor families:

1802 3870 64180 6602

6801 6806 6809 6811

68000 8048 8061 8085

8086 8096 Z8 ZBO

Manual contains full instructions for creatingnew tables for other (future) processors.

Produces 8/16 bit Intel and Motorola hexcode.

5" DSDD for PC MS-DOS 2.0 or greater

sgg95 us

$13g95 CDN

Worldwide shifipint; lAIRMAILl & handling included. CreditCard orders ($139.95 CONI please specify: Card number,name on card and expiry date.

l,,., .,} I Universal Crass-Assemblers

P.O. Box 384. Bedford. N.S.tads B4A 2X3

Inquiry 361

^y

PROFESSIONALHANDICAPPING SYSTEMS

PROFESSIONAL SERIES'" iTMoroughftrod/Greyhoundnroiier) - Trieall now Professional Sttrics'" ronresonis the mosl advanced hnndicanpmrj

GOLD EDITION'" (Tnorot«jht)rediGre»hOup:(infoiler

— The da

sic Gold Edi-

non'- Irom Prof Joici. one's UemO'lity resuils an

ease Ol u

e

Gold Edition'*

S159 95

Enhanced Gold Edition'"

SI9995

Limited Cold Edition'"

S29995

Ullra Edition'"

S39995

rjwer ralings SM995SS799S Lotio mm

dicapper 5 Bulletin Board and VHS Training Tapes n

>ng all soitwaie Add 5600 COD ' S6CO UPS) mutant! add m f 3 weefcs personal cnechsi.MC AMEX Prices suDjecl 10 change

FREE CATALOG

VANSI-CONSOLE""

The Integrated Console UtilityTMAll the tittle things IBM forgot!for IBM—PC, XT, AT & clones.

• 1.2 to 3.0 times faster DOS & BIOSscreen writing

• more escape sequences than ANS'.SYS

• usable in any language

• scroll recall facility

■ compatibility w/PC & AT software

• full EGA support

• 255 character typeahead Duffer

• increase key repeal rate

• no scroll blink for some adaptors

• VT 100/52 emulation

• auto dual screen disable

• keyboard induced breakpoints

• window support

• support for 50 line display

• many many more little features

400p Manual (u/slip case) & disk $75. or jus)

Shareware disk $25. As described in PC-U nrhi

February 86. pg. 282 and in lotus June 85. pg, 8.

HERSEY MICRO CONSULTING, INC.Box 8276J, Ann Arbor, Ml 48107(313)994-3259 x525 VISA/MC

Inquiry 160

"CPYAT2PC"

IS LIKE HAVING A

FREE

360K FLOPPY DRIVE

Allows copying of IBM AT file for use onIBM PC's & compatibles with no modifica-tion of existing hardware or software. A 360K(loppy drive is not required. CPYAT2PC mayreside on your IBM PC/AT hard disk andcopies l file or entire subdirectories in l step.

Also runs on other AT compatibles such asCOMPAQ 286, ZENITH Z-200, and KAYPRO2861. Dealer inquiries welcome. ONLY $79+ shipping.

M1CROBRIDGE COMPUTERS

Sky Way Building, Suite 125655 Sky Way. San Carlos, CA 9407(1(415) 593-8777 • (415) 595-2150CHECK, COD WELCOME r?=x(Prepayment Required) \^\£

Inquiry 235

IEEE 488Interfaces

for instruments, plotters,printers, digitizers, PCs,Macintosh, etc.

Call or send for,your FREETechnicalGuide

lOtech (216)439-4091

23400 Aurora RoadCleveland, Ohio 44146Telex via WUI 6502820864

Inquiry 278

Inquiry 424

Inquiry 38

ORDER TOLL FREE

24 HOURS EVERY DAY

800-662-2686

HARDWARE

COMPUTERS

IBM COMPATIBLES 640K Ram Keyboard, 1 yr. war.w/1 Floppy... 599 Plus 20MB Hard Disk .. 999

PANASONIC Business & Executive Partners CALL

ATARI ST COMPUTERS CALL

MODEMS, BOARDS, DRIVES

Evercom 1200 Internal.... 175 FlashpakTurbo Board .... 319

Hayes Modems CALL SixPakPlus 384K 209

Haba Modem 1200 119 SixPak Premium 512K 359

Practical Modem 1200 ... 135 Intel Above Board PC 225

AST-3G Model I EGA 339 Above Boord PS 289

Bob 16 469 Above Board AT 355

Genoa Spectra 319 Talltree J-Ram 2 135

Genoa Spectrum 249 J-Rom 3/3AT 179/239

Hercutes Graphics + 189 J-Laser 1 199

Mono Graphics Card 99 Tecmar Captain 384K.... 169

Sigma Turbo EGA! 589 Practical 1200 Mulliboord..269

STB EGA Plus 309 20MB Hard Disk Kit 419

Tecmar EGA Master 285 30MB Hard Disk Kit 509

Video 7 Vega 399 Filecord 20MB 609

AST Advantage 339 Hardcord 20MB 679

AST Rampage 239 Onboard 30MB 869

AST Rampage AT 439 Iomega 210H 1949

PRINTERS, PLOTTERS & MONITORS

EPS0N-AII Models CALL Amdek600/722. ... 429/519

Citizen 120D 199 NEC 1280 TTL Mono 129

Citizen Premiere 35 509 NEC 1401 Multi-Sync 549

Panasonic 1091 249 Samsung TTL 93

1092/1592 319/439 SonyKV1311 RGB/TV. .. .469

Panasonic P3131 239 Taxan620 399

Rolond DXY-101 Plotter .. 509 Taxan 630/640 .... 449/519

Houston Insf DMP-29 ... 1799 Thompson 36432 RGB.. 309

SOFTWARE

—ACCOUNTING DATABASE

BPI Accntng/Mod .. from 309 dBase III Plus 409

BPI Enterprise/Mod 429 Nutshell 2.0 85

Peachlree/Module 269 Paradox 449

DAC E2 Accounting 42 Reflex 83

Open Systems V3/Mod ... 449 Revelation 529

Paragon 569 PFS File 80

SBTAll Modules CALL Q&A 239

WORD PROCESSING — SPREADSHEETS—

Volkswrifer 3 149

Microsoft Word 3 259

Word Perfect 4.1 209

Leading Edge W.P 85

PFS Write & Proof 82

Mullimote 219

Multimate Advantage 309

Turbo Lightning 59

GRAPHICS

Chartmaster 215

Click Art Pers. Pub 109

Energrophics 2.0 299

Freelance 209

Graphwriter Combo 319

Harvard Pres. Graphics... 229

Generic Cad 75

In'A'Vision 255

Microsott Chart 2 179

ProDesign II 169

Dr. Halo II w/Mouse 109

Fonttix 91

Lotus/Symphony CALL

Framework II 419

Supercolc4 269

Ability 61

Multiplan 2.0 119

Mosaic Twin 57

- UTILITIES -

Macro Assembler. 90

Quick Basic 60

Turbo Pascal Ver 3 59

Turbo Prolog 59

Desqview 59

Windows 60

Carbon Copy 117

Foslbock 99

Inset 87

Norton Commander 44

Pop-Up Deskset. 45

SQ2 56

Xtree 31

Statgraphics 449

Call Toll Free 24 hrs Every Day800-662-2686 orders only

for Ca Orders, Tech Support, Price Quotes, info415-668-9350 9-5 pacific time, nrvf

Call or Write for Free Catalog

PAYMENT: (No Fee For Credit Cards.) Visa, MasterCard,Cashier's Checks. Personal Checks with 2 week hold,Qualified P.O.'s. California residents add sales taxSHIPPING: UPS ground-2% per order, $5 min. FREE for SWorders over $1000. UPS Blue-3% per order, $7 rnin FREE forSW orders over $1500, Printers, Monitors, Disk Drives,Computers — Call for charges.All Products New with full warranties.Price & availability subject to change without notice.

THE

BEST

PRICES

TH E BAY

COMPANY

THE

BEST

SERVICE

584 CASTRO ST., SUITE 487 SAN FRANCISCO, CA 94114a division of MCSS, Inc. Computer & Software specialists since 1981

SEPTEMBER

I Y T E 429

WHEN YOU CAN

BUY IBM COMPATIBLE

SOFTWARE FOR

ONLY $6 A DISK

OVER 500 DISKS FULL

OF PUBLIC DOMAIN AND

USER SUPPORTED PROGRAMS

S 0 I T W A R I-

Recently a Customer Wrote ...

"... I'm SICK! Friday afternoon I bought a$300.00 data base manager from my localcomputer dealer. When I got home I foundout my neighbor bought the same kind ofprogram from you last week for six dollars.What's worse, I like your program better!Please send me your disk directory and thefollowing disks..."

What can we say? Isn't it really about timeyou discovered that spending big bucks forall of those "glamorous-name" software pro-ducts doesn't necessarily guarantee youanything but a thin pocketbook and a fancycopy protection scheme?

No... Computerland won't tell you aboutus or our great software. But why make a$300.00 mistake? Many of our $6.00 pack-ages will actually do everything better andfaster than the great "Starword-dplus-4.5.6".and you can keep the difference.

Here is just a sample of our library bycategory.

WORD PROCESSORS

PC-Write 2.6 (#78) A full featured word pro-cessor that is faster than Wordstar.DICTIONARY (#378) Dictionary type spell-ing checker.

IV-ED (#415) Word processor - editor.LETTERWRITER (#415) controls letter pro-cessing.

PC TYPE (#455) Jim Button's contributionto a full fledged word processor.

SCREEN EDITORSFOIL EDIT (#347) Full screen editor. Top tobottom and left to right.

TEXT PROCESSING TOOLS

FOGFIND (#378) reverses writing complex-ity using the "Fog Index".WORDSTAR AIDS (#379) collection of themost useful utilities for the Wordstar user.PC OUTLINE (#414) Create and collapseand outline. Great for plans, essays, etc.

DATABASE PROGRAMS

PC FILE III (#5) most popular database pro-gram from Jim Button.U-MIND (#133) Fast hashing makes this adandy database. (Intelligent database)NEWBASE (#233) Menu driven database forthe beginner.

PC-DBMS (#383) A relational databasemanagement system that provides on-linehelp and screen editing functions.ELSIE EXPERT SYSTEM (#398) Artificialintelligence shell to build a customknowledge-base.

PDS'BASE (#396) Complete hierarchical

data base system master/detail or mother/

daughter type.

CREATOR (#339) create, report, and sort

makes this a super database management

system.

DATABASESBOBCAT (#247) Small business database.Excellent!

MFIND (#311) Database of over 2000 moviesthat can be searched in any category, or youcan add your own.

SPREADSHEETS

PC-CALC (#199) Fabulous 123 work-a-likefrom the author of PC-File.PC-PAD (#406) Spreadsheet and addressbook program written in basic.

SPREADSHEET TEMPLATES

LOTUS 1-2-3 TEMPLATES AND MACROS

(#140, 141, 165, 257, 289, 301-304, 406, 414)

Why spend hours of writing your macros

when these are ready made? Modify them

yourself.

SYMPHONY WORKSHEETS (#305. 306)

FINANCIAL PROGRAMSPC-CHECK MANAGER (#275) Keeps mul-tiple checkbooks in balance.TAX FILE DBS (#295) Tax record keepingsystem that saves you money on April 15.SAGE TRADER (#242) Analyzes commod-ity trades. Don't "short" this one!PORTSWORTH PACKAGE (#101) Evaluatesyour ever changing stock portfolios.FINANCE (#164, 227) Determine presentand compound values, interest rates, etc.HOME FINANCE (#406) Lotus 1-2-3 Macrosfor real life applications.PC-GENERAL LEDGER 1 2 (#237) An excep-tional accounting system. Used by someCPA's.

TIME AND MONEY (#251) Financial recordkeeping and analist system.LOAN AMORTIZATION (#399) For outputto screen or printer. Lots-of on-line help.BASIK CHECKBOOK (#271) Keep track ofcheckbook and personal finances.ACCU-TAX1985 (#479) You can't buy a bet-ter "commercial" program.MR. BILL (#469,470) Prepare invoices, cl ientreport, audit trail, etc.

ANALYTIC CALC (#430-432) 3 disk set.Complete spreadsheet, database, graphics,word processor - fassst!

COMMUNICATIONS

OMODEM (#310) The best and fastest com-

munications programs you can buy at anyprice, bar none!

PC-TALK (#16) The classic "Freeware"communication program.PC-VT (#286) VT-100 Emulation.SYSCOMM (#338) Menu driven system allow-ing unattended file transfer.RBBS 12.2 (#212) Become a SYSOP andstart a bulletin board.

FIDO NET (#333) Bulletin Board System.Perhaps the easiest to run.

MATH AND STATISTICS

EPISTAT 3.1 (#88) Statistical analysis ofsmall to medium-signed data samples.

LANGUAGES

CHASM 2.13 (#10) Cheap assembler withtutorial.

XLISP 1.4 (#148) Lisp language interpreter.MVP-FORTH (#31, 32) Two disk set of Moun-tain Valley Press Forth.3 FORTHS (#352) To modify or expand yourown forth language. MVPFORTH, FORTH-H and SEATTLE Computer's Forth.PROLOG & UNIFORTH (#417) Completewith editor and documentation.SNOCREST BASIC (#409,410) two disk set.Real basic interpreter with manual. Can beused with a multi-user system.ESIE (#398) Build and generate an expertsystem in a flash.

PASCAL COMPILER (#424) Written inTurbo Pascal.

P-BASIC (#381) BASICA work-a-like forclones, etc.

UTILITIESDISKCAT 4.0 (#106) Catalog all your diskfiles in a hurry.

GINACO (#66) 54 polished routines writtenin basic for any beginner or experts. We loveit!

ULTRA-UTILITIES 4.0 (#133, 245) Recoverlost files, modify sectors, etc. Like Nortons.SYSMENU (#250) Build a menu driven menusystem. Excellent for hard disks.LOAD-US (#284) Allows Lotus and Sym-phony to be used on a hard disk.PC-DESKMATES (#405) Better than Side-kick and all of the rest of the memory resi-dent desktop utilities.ALIGN 1.6 (#217) Disk alignment tool.TOP UTILITIES (#273) All of the most re-quested utilities on one disk.NUMZAP (#284) Removes line numbers fromBASIC programs.

HARD DISK UTILITIES (#478) A collectionof the best in the library.UNPROTECT (#414) Various routines todisconnect protection schemes.

ORDER FORM

LONE STAR SOFTWARE, INC.

2100 Hwy. 360, Suite 1204

Grand Prairie, Texas 75050

214/647-1010

x$6 =x$6 =

DISK DIRECTORY (Explanation ol all files & programs)

OTHER

SUBTOTALTEXAS RESIDENTS ADD 6W> TAX

SHIPPING & HANDLING

(1 @ $1.00 and 50 for each additional disk)

TOTAL□ MASTERCARD D VISACARD NO.

EXPIRATION DATESIGNATURE

PLEASE ENCLOSE CHECK WITH ORDER

I 22 23

1 42 43I 62 631 82 831 102 1031 122 1231 142 1431 162 1631 182 1831 202 2031 222 2231 242 2431 262 2631 282 2831 302 3031 322 3231 342 3431 362 3631 382 3831 402 4031 422 4231 442 4431 462 4631 482 483

CIRCLE DISK

4 5 6 7 8 924 25 26 27 28 2944 45 46 47 48 4964 65 66 67 68 6984 85 86 87 88 89104 105 106 107 108 109124 125 126 127 12B 129144 145 146 147 14a 149164 165 166 167 168 169164 185 186 187 18B 189204 205 206 207 20B 209224 225 226 227 228 229244 245 246 247 248 249264 265 266 267 268 269264 285 286 287 288 2B9304 305 306 307 308 309324 325 326 327 328 329344 345 346 347 348 349364 365 366 367 368 369384 385 386 387 388 389404 405 406 407 40B 409424 425 426 427 428 429444 445 446 447 448 449464 465 466 467 468 469484 485 486 487 488 489

NUMBER DESIRED:

10 11 12 13 14 15 1630 31 32 33 34 35 36SO 51 52 53 54 55 5670 71 72 73 74 75 7690 91 92 93 94 95 96110 111 112 113 114 115 116130 131 132 133 134 135 136150 151 152 153 154 155 156170 171 172 173 174 175 176190 191 192 193 194 195 196210 211 212 213 214 215 216230 231 232 233 234 235 236250 251 252 253 254 255 256270 271 272 273 274 275 276290 291 292 293 294 295 296310 311 312313 314 315316330 331 332 333 334 335 336350 351 352 353 354 355 356370 371 372 373 374 375 376390 391 392 393 394 395 396410 411 412 413 414 415416430 431 432 433 434 435 436450 451 452 453 454 455 456470 471 472 473 474 475 476490 491 492 493 494 495 496

17 18 19 20

37 38 39 4057 58 59 60

77 78 79 8097 98 99 100117 118 119 120137 138 139 140157 158 159 160177 178 179 180197 198 199 200217 218 219 220237 238 239 240257 258 259 260277 278 279 280297 298 299 300317 318 319320337 338 339 340357 358 359 360377 376 379 380397 39B 399 400417 418419 420437 438 439 440457 458 459 460477 478 479 480497 498 499 500

1986. Lone Star Software. Inc

430 BYTE • SEPTEMBER I986

PATCHES (#376) make back up copies ofsome of the most popular commercial pro-grams with this collection.

PRINTER UTILITIES

SP 3.4 (#186, 275) Printer buffer that parti-tions your data so you can use your compu-ter and print at the same time.SIDEWAYS (#265,411) Prints text sidewayson an Epson printer.

SETPRTR (#79) Sets up Epson printer froma menu.

SLIDE (#244) produce medium resolutionslides and overhead transparencies.PRINTER UTILITIES (#411) Sorgasboard ofutilities and tools.

EPSON PRINTER UTILITIES (#326) Spool,set up routines all designed for Epson codes.BANNER (#386) make long banners withlarge letters. Includes MS-FORTRAN sourcecodes.

EDUCATION

EQUATOR (#249) A teaching tool for math,science and finance.

PC-TUTORIAL (#403) A first course in com-puter usage covering various aspects of MS-DOS. Good!

PC-PROFESSOR (#105) Learn Basic theeasy way. One of the best tutorials onBASIC.

PC-DOS HELP (#254) type "help" for theDOS command you forgot.FLASH CARDS (#367-370) 4-disk set.Vocabulary builder, spelling teacher.TOUCH-TYPE (#320) Advanced type tutor.

GAMES

TOP GAMES (#274) The most requestedarcade type games.

ARCADE GAMES (#293) Another goodiebag of top Arcade games.TRIVIA GAMES (#327-329) Lots of files anddocumentation for hours of fun. Will notwork on PC JR.

PC JR GAMES (#354) Games that will workonly on PC JR. Combat, dungeons anddragons, Global Thermonuclear War.MISC. GAMES (#390) Good selection ofeducational, adventure, and arcade games.BIG FOUR GAMES (#272) Texas most pop-ular, STARGATE, ZAXXON, AIRTRAX. andDND

MUSIC

PC-MUSICIAN (#127) Compose music onyour PC, save and play again.PIANO MAN (#279) Play your PC keyboardlike a piano.

APPLICATIONS

GENEALOGY ON DISPLAY 3.0 (#90)GENEALOGY - FT 1.25 (#240) from PineCone software.

LABELMAKER (#146) Our favorite label fileand maker. Menu driven.PC-FLY"Fliteplan"2.1 (#261) Pilots prepareand file your flight plans.RECIPE 83 (#281) Recipe index for use withPC File III (#5)

FAMILY HISTORY (#361) Family history,ancestor and decendant charts. Sample pro-grams.

FORM LETTERS (#388) LOTS of samples ofthe most commonly used business letters.Modify!

HAM RADIO (#436, 437) Electronic good-ies, design antennas, great circle, etc.

GRAPHICS

PC-KEY DRAW (#344-345) A small CADsystem. Lots of demonstration files.PC-PICTURE GRAPHICS (#136) Drawingpackage allows you to zoom, color, andstore pictures.

PC-GRAPH (#418) Allows user to creategraphics from PC-File report files.ORIGAMI (#408) Japanese art of paper fold-ing. Graphics required.DRAFTSMAN (#400) Easy to use presenta-tion quality. Mouse or keys.

Inquiry 209

An ena to aisKette nes:

Super Star™ Diskettes

are of equal or higher quality

than 3M, Maxell, TDK

and many other "famous" brand names.They simply cost about half as much!

Super StarIM diskettes aremanufactured to equal or exceed the samespecifications as 3M, Maxell, TDK and manyother "famous" brand name products.

They are designed for 60% orhigher clippinglevels, not the 40% used inIBM and ANSI standards. Each isguaranteed for ten million read/writepasses. Every Super Star'M diskette is100% verified and carries a LIFETIMEWARRANTY!

Yet Super Starly diskettescost only about half as much...

How can we deliver Super Star1 Mdiskettes of such high quality at such a lowprice?

Simple...we don't make fools outof our customers.

We bargain hard with the samepeople who turn out many of the "famousname" brands. Their manufacturing capacityfar exceeds their capability to selleverything they make. So, as large scalepurchasers, we are able to obtainsignificantly lower prices than others forhigh-quality diskettes.

For example, we pay one of thebig name manufacturers 98c for their"famous name" diskette in a pretty box. Inan unequalled display of favoritism, thatsame manufacturer sells the same diskettein the same fancy box to a major corporationfor 42c each. Finally, a software duplicatorcan buy the same diskette without the boxfor 37c1

A 265% price difference:for what?

In the example above, that's adifference of 265% in price for the verysame diskette!

So you see, paying for a "famousname" on a diskette doesn't guaranty youthat you're getting any more for themoney.

You may be paying for some bigcorporation's fleet of aircraft and theirexecutive retreats in Minnesota andCanada, but you are not paying for any morequality.

You're simply getting rooked outof money you could have in your ownpocket.

There are four kinds

of diskettes:

And Super Star1M is right up

there with the best.

As you leaf through the pages ofthis magazine, you will see diskettesadvertised at prices as low as 33c. Everyone, of course, claims to be the "best".

It's simply not true.

Here are the only kinds ofdiskettes you can buy:High-Clip Product: this is what you getwhen you buy Super Star™,3MTSS, Maxell™,TDK' * or any number of other famous andnot so famous name diskettes. They haveclipping rates of 60% or more, are certifiedfor ten million read/write passes or more andare simply the best diskettes available. Youcan expect perhaps 1 out of 100,000 tofail...and that will usually be the result ofdirty or misaligned drives.ANSI Spec Product: These are "okay"diskettes. They have a clipping level of40%. Usually they are the fall-out from amanufacturer s Tligh-clip product line, youcan expect about f out 20 to fail in normal

(But that failure rate has more to do with thedisk drive rather than the diskette.) The pricedifference between an ANSI-spec disk and aHigh-Clip product is only a few cents. But thefailure rate of ANSI product is 50,000 timeshigher!

Duplicator Product: This is a catch-allcategory. Some of it may be High-ClipProduct, some ANSI spec, some cosmeticallyblemished, some garbage. Usually anyonewho buys product in this class justifiablyanticipates that 20 out of every 100 disketteswill not format properly.Floor Sweepings: This is justplain"garbage". For example, the 5.25" SSSDdiskettes that you see advertised for 39c areexactly that: garbage. No decentmanufacturer has sold any 5.25" SSSDdiskettes in several years. SSSD is theabsolute bottom of the line in terms of quality.Most of the discount diskettes you seeadvertised are "floor sweepings"...bought upby brokers and passed on to the unsuspectingpublic by unscrupulous merchants who aresimply out to make a fast buck.

When every bit counts,you can count on Super StarIM!Well, I wish we had more space, but

we don't,nutshell:

So. here's the message in a

1. SuperStar™ diskettes are high-clip product. 100% certified, tested to 60% orhigher clip levels and not less than ten millionread/write passes.

2. Super Star™ diskettes carry aLIFETIME WARRANTY.

3. Super Star1 M diskettes equal orexceed the published specifications of such"famous" brand names as 3M, Maxell, TDK,etc

4. Super Star'M diskettes give youthis quality at about half the price of the bignames!

Save your money:

buy Super StarIM diskettes!

That's the message:

Super Star'1 diskettes

mean the highest quality

at about half the price!

SUPER STAR SPECIAL!

Your choice of storage for $4.95!

Buy 50 Super Star1 M diskettes ofeither size and you can get a niceplastic storage case for only $ 4.95(shipping included!).

These are durable plastic cases withdividers.

The 5.25" unit holds 50 diskettes andthe 3.50" unit holds 40 diskettes.5.25" Storage Unit (P/N3100) $4.95ea.3.50" Storage Unit (P/N3102) $ 4.95ea.

Super Star™ 5.25'

.38ea..38ea..68ea..71 ea.$ 1.36ea.

SSDD (P/N3800)DSDD (P/N3801)SSDD96 (P/N3802)

DSDD96 (P/N3803)DSDDHD (P/N3804)

ORDER IN MULTIPLES OF 50 ONLY!

All Super Star 5.25" Diskettes are poly-bagged in -lots of 25 with Tyvec sleeves, write-protect tabsand user ID labels

QUANTITY DISCOUNTS: 350-500 diskettes,deduct 3%. 550-700 diskettes, deduct 6%. 750-1,000 diskettes, deduct 9%. 1.050+ diskettes,deduct 12%

Suoer Star™ 3.50"

SSDD (P/N3805)DSDD (P/N3806)

$ 1.39ea.$ 1.45ea.

ORDER IN MULTIPLES OF 50 ONLY!

Super Star 3.50" diskettes are packaged in boxesof 50 with user ID labels.QUANTITY DISCOUNTS: 350-500 diskettes,deduct 1.5%. 550-700 diskettes, deduct 3%. 750-1.000 diskettes, deduct 4.5%. 1.050+ diskettes,deduct 6%.

TAKE A CLOSE LOOKAT OUR DISCOUNTS!

Take a real close look atour discounts. They're someof the best around.

HOURS:

8AM-6PM Central Time

Monday - Friday

HOW TO ORDER:

ORDERS ONLY:

1-800-621-6827

(In Illinois: 1-312-256-7140)

INQUIRIES:1-312-256-7140

FOR FASTEST SERVICE. USE NO -COST MCIMAIL. Our address is DISKORDER. It's a FREE.MCI MAIL letter. No charge to you. (Situationpermitting, we'll ship these orders in 24 hours orless)

SHIPPING: 5.25" & 3.50" DISKETTES-Add $3.00 per each 100 or fewer diskettes. OTHERITEMS: Add shipping charges as shown inaddition to other shipping charges. PAYMENT:VISA, MASTERCARD and Prepaid ordersaccepted. COD ORDERS: Add $ 5.00 specialhandling charge. APO, FPO, AK, HI & PRORDERS: Include shipping charges as shownand additional 5% of total order amount to coverPAL and insurance. We ship only to United Stalesaddresses, except as shown above. TAXES:Illinois residents add 7% sales tax.

MINIMUM ORDER: $35.00

DISK WORLD!, Inc.

629 Green Bay RoadWilmette, Illinois 60091

Inquiry III

SEPTEMBER 1986 'BYTE 431

We pledge allegianceto low prices and superior technical service.

DISK DRIVES FLOPPYTeac

FD55 B-V (tall height 5'/<"

360K DSIOD lloppy) $99

FD55 F/GV (halt height 5V," 1.2 MB

black or grey laceplate) S145

Toshiba

ND 040 (halt height 5<A" 360K

Hack lace plate) $109

ND 04DEG thai! height 5J4" 360K

grey lace plate) $111

NO MDEG (hall height 5»" 12MB

grey face plate $149

Control DataHall height 5'/j " 360/f Wac*lace plate floppy $85

HARD DISK DRIVESSeagate

ST225 20MB hall height 65MLS

with controller card $429

ST225 20MB halt height 6SMLS

no conttoller card $345

■NEW ST238 30MB halt height

6SMLS with controller card $529

ST4026 20MB lull height 30MLS

no controller $545

ST4038 30MB lull height 30MLS

no controller $645

ST4051 40MB lull height 30MLS

no controller $745

Western Digital controller card $125

Control Data

9415-86 86MB lull height 30MLS

no controller $1495

Dish Manager Software lor formatting

past DOS 133MB) $100

TAPE BACKUPSIrwin Magnetics

10MB INTERNAL TAPE DRIVE haltheight unit uses floppy controller $499

20MB INTERNAL TAPE DRIVElor 286 COMPAQ and AT $599

Everex

20MB INTERNAL TAPE DRIVE

hall height with controller $573

60MB INTERNAL TAPE DRIVE

hall height with controller $724

Alloy

60MB EXTERNAL TAPE DRIVEsoftware, cables and controller $741

Tape Cartidges/Scotch 3M

DC-600A cartridge tape

(up to 60MB capacity) $26

DC-1000 cartridge tape tor Irwin

tape drive $19

MEMORY MULTIFUNCTION

BOARDS

AST

SIXPACK PREMIUM 5!? to 2MB $356

Advantage WII28K

(expandable 10 3MB. S2.0 lor AT) $356RAMPAGE PC 256 to 2MB (EMS board

wfdeskview windowing software) $234RAMPAGE AT 512 to 2MB(EMS board BMHll $445

PCA (XT COMPATIBLE)

640K, 4.77MHz, 2 floppies, mono-chrome graphics, P, TTL «___monitor, FCC app 5>775

ANI TURBO XT COMPATIBLE

640K, one floppy, 20MB, R

S,S,G,C, 4.77 or 8MHz *0OC

switchable, FCC app $99b

MULTITECH AT COMPATIBLE,

W/512K, keyboard, up to 5 half-heightinternal drives, 10 or 6 MHz Switchable,slots, 192 W supply, MS-DOS 3.1FCC Approved. 1.2MB 0Hr-f-nfloppy, one year warranty...$ 1550

Alloy network compatible

IBM PC

W/256K, one floppy, ,,,..„

4.77MHz $1150

IBM AT

W/512K, 1.2MB floppy *«oftc

6MKZ, 20MB 0O£»0

W/640K, 1.2MB floppy *AOnn

8MHZ, 30 MB $4ZU0

COMPAQ DESK PRO 286

Model 2 with 30MB hard drive,6 or 8 MHz swtichable, 512K, 1.2 MBfloppy, color/mono card, tf_ ___parallel/serial port $O,u50

JVM color monitor, «i»onn

Amb/Gn'640X200 5>Z99

Talllree

J RAM 2 wlOK

(Parallel 2MB capacity) $142

J RAM 3 WlOK (lor PC, EMS board.

up to 2MB capacity) $184

J RAM AT WlOK

(Parallel 2MB capacity) S190

JRAM3AT WlOK (EMS board.

up to 2MB capacity) $239

Clone

6 PACK compatible wis P. C. 0.wlOK (up to 384K) wlsoltware $99

MULTIFUNCTION I/O BOARDS

$95$95

$384

DISK I/O operates 2 floppies.

and G. S. P.CAT I/O, Parallel. Serial

MODEMS

Hayes

SMARTMOOEM 1200B INTERNAL

(12001300 baud w/Smarlcomll)SMARTMOOEM 1200 External

(12001300 baud) $479

SMARTMODEM 2400 External (2400) S630

Everex

EVEHCOM Modem (12001300 baudwlsoltware) $150

US Robotics

COURIER 2400 Baud Internalor External $491

NETWORKSMULTI-USER

Alloy

PC-SLAVE/16 16 BIT SLAVE BOARD8088-2 (8MHi Processor. 2 serialports. I Mb Ram) $895

12 Slot Expansion Chassis

225 Watt power supply $1135

20' RS 232 Slave Cable $39

ATNX ALLOY TERMINAL NETWORK

EXECUTIVE SOFTWARE $295

LINK RS-323 ASCII Terminal

IBM Keyboard $625

PRINTERS/DOT MATRIX

Citizen(Epson & IBM Compatible)

MSP-10 160/40 cps dot matrix

narrow carriage $307

MSP-15 160/40 cps

dot matrix-wtde carriage $414

MSP-20 200150 cps

dot matrix-narrow carnage $347

MPS 25 200150 cps dot

matrix-wide carriage $520

Epson

FX-85 160 cps. narrow carriage NLQ $434FX-286 200 cps. wide carriage NLQ $624LO 1000 24 Pin. 180 cps NLQ 60

wide carnage $830

LO BOO 24 Pin. 180 cps. NLO 60

narrow carriage

IBM

Proprlnter

Proprinter XL Wide Carriage

$630

$445$661

Okidata

ML1B2 120 cps narrow carriage $228ML 192 160 cps NLO

narrow carriage $327

ML 193 160 cps NLO wide carriage $529ML 292 200 cps 100 NLO

narrow carriage color $614ML 293 Dual 9 pin. 200 NLQ

wide carriage color $803

2410/P/1BM 350 cps I75l85lwide $1850

Toshiba

P-351 24 pin 288 cps

wide carriage $1025

P-341 24 pin 216 cps

wide carriage 180 NLQ $727

P-321 24 pin 216 cps

narrow carriage $442

P-351 C Color printer $1178

Panasonic

KXP1091 120 cps. NLQ 29 cps $270

KXP1092 WO cps. NLO 33 cps $348KX1592 Wide carriage. 180 CPS.

NLO 38 cps $480

N EC

P-5XL24 pin. 290 cps. 100 NLO

color $1071

P-6. P-7. 24 pin $477/667

LASER PRINTERSHewlett-Packard

USER JET PROFESSIONAL

8 pages per minute $2357

LASER JET PLUS DPI

graphicslSIP interlace $3053

PRINTERS/LETTER QUALITYBrother

HR-15 17 cps $36B

HR-25 23 cps S615TWINWRITER DOT MATRIX 140 CPS.

LO 36 cps $1063

M1509 180 cps/45 cps NLO $420

NEC

ELF (18 cps) $408

NEC 3550 (33 cps) $799

Panasonic

KXP-3131 (17 cps)KX-P3151 Wide (22 cps)

$286$448

MONOCHROME MONITORS

SAMSUNG TTL AMBER'or GREEN $9!

AMDEK 310A TTL AM8ER $15'.PRINCETON MAX 12

TTU800 PIXIES $15!

COLOR MONITORS

Mitsubishi

COLOR MONITOR 600/200 $26!

Princeton Graphics

HX-12 31mm dot pitch 640/240 $44;HX-12 1.28mm dot pitch.

6401350 EGASR-12 31mm dot pilch. 6401400

super high requires SIGMA 400 H $53!SIGMA 400 H $461

Taxan

640 7201400. 31 dot pitch $501

555 16 colot cardtext/graphics $14!

NECMULTISYNC /5 75Khi to 35KH!howonlal scan $56!

VIDEO DISPLAY BOARDS

$53!

Hercules

GRAPHICS CARD monochrome

wlparallelCOLOR CARD color wlparallelGRAPHIC CARD plus text

graphics

Clones

$19'SIS'

$23!

EVEREX color/mono 132 columnGRAPHICS CARD monochrome

wlparallel $9!

COLOR CARD color wlparallel W

STB EGA $301

BACK-UP POWER AND

SURGE PROTECTION

Data Shield

500 W Backup Power SupplyBOO W Backup Power Supply1500 W Backup Powei Supply

Clone

150 W POWER SUPPLY135 W POWER SUPPLY

Curtis

DIAMOND (SURGE PROTECTOR

6 OUTLET wall)EMERALD (SUflGf PROTECTOR

6 OUTLET cord)RUBY ISURGEIFILTERieicord)

KinsingtonMASTERPIECEMASTERPIECE - PLUS

$61!$69!

$1421

$9!$8!

CHIPS

256K SET

128K SET

64K SET

B0B7

8067-2

80287

80287-8

$45

$58

$97$131

$29$46$10$135$158$1B9$327

TERMS: WE ACCEPT C.O.D. CASHIER CHECK, VISA, MASTER CARD, AMERICAN EXPRESS(3% EXTRA) WIRE TRANSFERS, APPROVED PC'S. ALL EQUIPMENT CARRIES NEW FAC-TORY WARRANTY. PRICES ARE SUBJECT TO CHANGE. ANY RETURN ITEM MUST BE AC-COMPANIED BY A RETURN AUTHORIZATION NUMBER AND DESCRIPTION. IBM, COM-PAQ, SEAGATE IS A REGISTERED TRADEMARK OF THEIR RESPECTIVE COMPANIES.

pcAmencan

Marketing, Inc.

HOURS:

MONDAY - FRIDAY

8:30 - 5:30

SATURDAY

10:00 - 2:00

1714557-3903

CUSTOMER SERVICE

1-800-654-5385

SALES HOTLINE

B

1-714-557-390

TECHNICAL SUPPORT

TEMBER I986

TIMELINE INC.

CALL US FOR ALL YOUR NEEDS!

We have 10 Million I.C.'s in stock!

Minimum I.C. Order: $200.00

Continental U.S.A Inside California L.A. & Technical Info

(800)872-8878 (800)223-9977 (213)217-8912

OEMINQUIRIESWELCOME

JUST ADD A TERMINAL!

Multitech mic-soo/scw

CP/M SYSTEM S199-00

INCLUDES: 2 48 or 96 tpi drives Cto"cre

Z80A Microprocessor

Ports: Centronics parallel, Two serial

Comes with all software & manuals:

Magic Worksheet, Word Right, Analyst.QSORT,

NAD IName and Address System}

100 Systems available

MOTOROLA

7" DIAGONAL

SCREEN

HIGH RESOLUTION

s^In monitor

PERFECT FOR POWERING:|-HARD DISK DRIVES-FLOPPY DISK DRIVES-MINICOMPUTERS-CRTs

ASTEC 65 WATT SWITCHING

POWER SUPPLY

Dual input voltage 115/230 VAC • Overvoltaga protection -Short, circuit protection - Dual isolated + 12V - Built-in EMIfilter - Very compact size -.UL/CSA/VDE approved - 10O%thermal cycle & burn-in - High efficiency - Vsccum impreg-nated transformeri - Convection cooling - Open PCB "L"bracket or boxed construction. Condition No.2

OUTPUTS: + 5V °C@ 6.0A *BV DCi? 5.0A(wlth two + 12V output! in parallel)

TonditinnNn 1 +12v DCffil 1-5A +12V °C(whh two + 12V output! In parallel)' +12VDC@2.1A @3.5A (5.0A iurDe)-12V DC© 0.25A -12V DC@ 0.25A

Dimensions;8.0" - Length4.4" -Width ,2.4" - Height

ModelHH-612

:.<M

MICROSCIEIMCE

HARD DISK

special Q2 4* so it^n

L0WPR1CE:%JJ I CaaPVaiiaf alWaaf^af$289.00 With controller card & cables15 Mb System - $329.00

30 Mb Removeable System - $429.00 Includes:(2) % Height Drives & Controller card (with cables

22 MHZTYPICALBANDWIDTH4 for$99.00

-Flat Faceplate-900 lines at Center 650lines at corners.■Operates from 12VDC

at 1 Amp.■Vertical input is 47 to

63 Hz.

■Horizontal input: 15.7 Khz(18.7 Khz optionall

-Video input signal:Positive white,

input termination 470 ohms 45%, 2.5V to 5.0V P-PWeight: 6lbs.

MODEL MD1700

For split video {TTL Inputs) operation.Not composite video.

<*" 2BG SPEED PAK FOR IBM PC & XT

' C'.tSSIC TECHNOICOY CORP0MTI0H Jjp -|-0 7 TIMES PC SPEED

-Compatible with IBM Enhanced Graphic* AdaptsLotui/intet ibova board

5770.00

-Can run program! designad for the AT'* and alio PC/XT'i-No uhwiri patchas rwadad

-IncludM native mod*-Mada in U.S.A.

13 Year Warranty

TEC MODEL

jm y— ■—- fmi Thtiso very high quality printers| «a3«ajavlpBW were made for Phillips Information

□□T MATRIX/NEARLETTER QUALITYSERIAL irviPACT

PRINTER

Features: 15" Carriage-120 CPS-ParrallelInterface-Low power consumption-Highquality print-Bit image graphics-Graphicssymbols-Prints in six different languages-High reliability-And finally...Low Cost!

Systems. Original price was: $795.00

Liquidation Blow-out!

$279.00

Only 125 AvailaDle

IBM pc/xt

(or Jr.) REMOTE

KEYBOARD

COMPLETELY IBM COMPATIBLE

Control your computer from across the room ^ ■■vSa* ■«•■•* S3with this infrared keyboard or hook directly like a regular keyboard.

Tills high qua III v

keyboard was made

by Cherry whose

original cost wat

$279.00

BLOWOUTPRICE!

— MODEL NO. CT-AA1403

hiri

13" COMPOSITECOLOR

FOR: VIDEO IN/OUTand AUDIO IN/OUT

RESOLUTION: 260H bv 300VGREEN/COLOR SELECTOR

S109.00

For VCR-Atarl-Apple-Commodore

PROGRAMMABLE SYNTHETIC OCR A Dpi pSPEECH GENERATION BOARD «rruc

PLUG COMPATIBLE WITH APPLE IIMICROCOMPUTERS. Can bo easily con-trolled by BASIC. Umi TMS5220 for:Low-data-rate LPC encoding. + 5V & -5"supplies only - TTL CompatibleINCLUDES: Software and Speaker

S79.DQ

EPSON QX-10

MOTHERBOARD

WITHVIOEO CARD S

YOUR CHOICE OFASCII KEYBOARD

CEIMCLOSED]OR HASCII (BARE)

SI 69.95

ONLY 250 SYSTEMS AVAILABLE'Will work with any IBM compatible disk dnve • CPU,-PD780AC-i (Z80A compatible, 4 MHz| • Memory-RAM2b6K on board. Video RAM 128K on CRT board CMOSRAM 2K.EPROM-2/4/8K((orlPL) Clock CMOS real-timeclock Interlace Serial and Parallel DMA 7 channelsinlerrupl levels 15 Counter/timer 6 channels Card slots5 Compatible wilh any TTL monitor Weight 10 lbs withenclosed keyboard. 8 lbs with bare keyboard

Standard Data - Local Area

NETWORK BOARDWith Software $150.00

NASHUA DISKETTES5%" SOFT SECTOR

$8.00 BOX OF 10

.70c 5 BOXES OF 10.62c 10 BOXES OF 10

Nashua Diskettes werejudged to have the high-est polish & recordedamplitude of any disk-ettes tested. Accordingto "Comparing FloppyDisks" Byte

= 9/B4

RICOHPRINTERRP 1200N

Comrnmci

Interface

-Daisy Whwi

$400.00

4164-1589c

100 pc. mln. qty.

SERIAL PRINTER/MODEM CABLE -Pun ogJbi(Male to Female) ,n"

t7Q<i 1/2-, «£&£

V? ff >9w OFF! .Moi.i«ii)i

FOR USE IN SERIAL KJiTJi?,"

KEPCO/TDK

SWITCHINGPOWER SUPPLY

«?*W4

$39.95

ONLY 250 AVAILABLE'Model EFX IOOT-3 lOOW • • 5VB 8A • 5V & 1 5A • • 12V w120A • 12V 6 20A • Input Volt-age 100lo)30Va-cor 200to260Va-C 47-440HZ Singlephase •Brownojt Voltage 90Va-Cl80Va-c • Fused Input;Output protected against short circuit Dim 9VL xJ'\,'Wj"H. Weight 3 lbs . Spec Included

SIEMENS S"DISK DRIVE

$44.95

MlFM

$69.95

FDD100-8 ShuganSOlReqiSingle Sided Single/Double DensityFull Height Drive 48lpi Documents-lion included Specify 110 or 22GVolt Model • These drives are newand sold AS IS Weight 14 lbs

DISK DRIVE CABINET

$12.95

• Full Height Disk Drive case (orApple • Fits 2 hall height drives Canbe modilied lor other uses Dim9VL X 6 W x 3VH. Weighl 3 lbs

'Spy in the Sky" Fairchild CCD122. , 1,728 ELEMENT +

Epj J Linear Image Sensor$29.95

"Tha D aligned lor page vanning application*

Twilight including faciimilg, (Optical Character

2on«" recognition and other imaging application!

* i*i which require high resolution and high

□UME Sprint 9/35 KSR

APPLICATIONS

Such n Serial Print*':

■ nd Mod.rrn.

TERMINAL/PRINTER

35 CPS

■Serial Interlace

299.00

1490 W. ARTESIA BLVD., GARDENA, CA. 90247

Continental USA Inside California L.A. Arat 6a Technical Info

(800) 872 8878 (800) 223-9977 (213) 217-8912

Inquiry 349

^W^^^M

Minimum Order: $25.00. Shipping & handling chargesvia UPS Ground: $.50c/lb. UPS Air: $1.00/lb. MinimumCharge: $4.00. We accept cashiers checks, MC or VISA.No personal check COD's. Items reflect 5% cash or checkdiscount. California residents add 6%% sales tax. We arenot responsible for typographical errors. All merchandisesubject to prior sale. Phone orders welcome.Foreign Orders require special handling

Inquiry 261

P.C. Computer Brokers Inc.-

The Place To Buy YourEpson Printers

M991

Brand New Epson EX-800 Printer

300 CPS, Push Tractor. Suggested

Reteii .749- Call For Price

Epson Printers List SALE

SpectrumLX-BO ....$ 299°°....S 219"

HS-80 Ink Jet Printer.... S 449°°....$ 33900

Comrex High Speed

CR-420 Printer .... $2195°°... •129500

HI-80 Four Pen

Plotter ....S 599°°.... CALL

WJ/Jiimiimmiiiiiimn

r

JTTIQ

tpgj EPSON FX-286

il Lst se^iooo

Epson Printers List SALE

Homewnter Printer '249°° ..." 199"

AP-80 Printer '37900 .... CALL

LX-90 Printer '329M ... • 2290<

SO-2000 Ink Jet Printer .... '2995°° •1579™'

?

'Uil

s52goo

list $799

Call P.C. Computer Today For

Low Prices on Many Other

Computer Products—Call

1-B00-245-4122

LQ-

seqqoo****** list^oss00

Prices Subject to Change Without Notice

Add 2.9%JH For Use ofVisa, M/CS. Choice.These Prices Are Good For Mail Order Oept. Only

P.C. Computer Brokers Inc.3879 East 120th Ave.Thornton, CO 80233[3031450-6727

Call Toll FREE

1-800-245-4122

434 BYTE • SEPTEMBER I986

DATA SECURITY $595 (list)

Now there's communication for your computerand security for your peace of mind.CERMETEK manufactures 1200 and 2400bpsHayes™ compatible security modems with along list of features.For information call (408) 752-5055

1308 Borregas Ave.Sunnyvale, CA 94008-3565

Hayes is a trademark of Hayes Microcomputer Products, Inc.

Inquiry 62

TURBOLINK +

"TURBO Pascal hackerswill like this program."

Jerry PournelleByte Magazine

• Add 512K of TURBO Pascal' lo your code

• Call up to 8 memory resident TURBO Pascalmodules from programs written in:—BASIC. BASICA. Compiled BASIC—MS Pascal, C. MS FORTRAN—Standard, 8087 and BCD TURBO Pascal—TURBO Prolog

• Add TURBO Pascal's 8087. BCD and graphiccapabilities lo other languages

• Automatically generate TURBO Pascal com-patible inline machine code.

• Use all TURBO Pascal variants in a singleprogram

• Add Al capability to your Pascal programs

• For IBM PC and compatibleSRQ95 Foreign orders

°** add 110.00

S&H included

VISA/MC: 1-800-835-2246 X123KANSAS CALL: 1-800-362-2421 x123Inquiries and Technical Information (303) 971-0729

PATHFINDER SOFTWARE, INC.

P.O. Box 43. Littleton, CO 80160

• IURB0 P.iscii .mil TUR80 Prolog mo Iratfcmartts ol Botland Imotiwlffl

Inquiry 425

100% ERROR FREE

Emma

- MFR. LIFETIME WARRANTY

-^SP% Q|hM With Hub Rings, Write Protect Tabs.

^Bf^K^ Tyvec Envelopes. User ID Labels -

^ ^•" In Factory/Sealed Poly Packs

(YOU GET EVERYTHING BUT THE BOX)

PRICES ARE PER DISK

3Vi"

5V.

SSDD

DSDD

DSHD96TPI

.47

.52

1.69

ss

DS

1.39

1.60

SUPER DISCOUNTS ON ORDERSOF 500 OR MORE

IN STOCK ITEMS SHIPPED IN 24 HOURS

Minimum order: S25.0O. Shipping and Handling:

$4.00 per 100 diskettes. Continental U.S.A. APC7PFO, add $8.00 per 100 diskettes. Foreign order,please call. Reduced shipping charge for largerquantities. C.O.D. add $4.00. Cash/certified check.Ml residents add 4% sales tax. Prices subject tochange without notice HOURS: 8:30 AM-6:00PMEastern Time. ;«~H! c.o.0.

Precision Data Products

P.O. Box 8367, Grand Rapids, Ml 495I8(616)452-3457 • Michigan I-800-632-2468Outside Michigan 1-800-258-0028

t

d!

COLOR

VT220$150

•plus yourPC, XT, AT, or compatible

ZSTEMpc™-VT220 Smart Terminal Emulator

Double high/double wide characters

Full line graphics. Smooth Scrolling

2-way file transfers incl. XMODEM & KERMIT

Full keyboard softkeys/MACROS. DOS access

Dala rates lo 38.4 KB. High throughpul

CGA, Hercules, MDA, & EGA support

8-bit mode, downloadable fonts,

user defined keys, full national/multinational modes

ISO and attribute mapped color

ZSTEMpc-VT220 $150. 4010/4014 option $99.

ZSTEMpc-VT100 $99. - Choice of the U.S. A/F

30 day money back guarantee. MCA/ISA

KEA SYSTEMS LTD.

#412-2150 W. Broadway

Vancouver, B.C. CANADA V6K 4L9

Support (604) 732-7411

TELEX 04-352848 VCR

Order Toll Free (800) 663-8702

Inquiry 390

a message to oursubscribers

From time to time we make the BYTE subscriber list avail-able to other companies who wish to send our sub-scribers material about their products, We take great caieto screen these companies, choosing only those whoare reputable, and whose products, services, or infor-mation we feel would be of interest to you. Direct mailis an efficient medium for presenting the latest personalcomputer goods and services to our subscribers

Many BYTE subscribers appreciate this controlled useof our mailing list, and look forward to finding infor-mation of interest to them in the mail. Used are oursubscribers' names and addresses only |no other infor-mation we may have is ever given).

While we believe the distribution of this information isof benefit to our subscribers, we firmly respect thewishes of any subscriber who does not want to receivesuch promotional literature Should you wish to restrictthe use of your name, simply send your request to thefollowing address.

BYTE MagazineAttn: Circulation Department

One Phoenix Mill LanePeterborough NH 03458

■Si

linn

Enhance Your Turbo

Pascal™ Programming

with

TURBO-JET

• Ultra Fast Screen Read and Display

• Advanced String and Numeric Formatting•Advanced File and Keyboard Handling

• Subdirectory Utilities•OverlOOFileslncludedl

Pascal Source Code included with all RoutinesRoutines Crafted in Assembly LanguageNo Royalties for Program UseGive Programs a Professional LookDon't Pay More For LesslDealer Inquiries Invited

TURBO-JET, Only $39.95

Add S3.00 for Postage & Handling

NY Residents add sales tax

TOC Business Solutions, Inc.

P.O. Box 129

Old Westbury, IM.Y. 11568

MCA/ISA (516) 795-2800

Inquiry 273

Inquiry 423

21 MEGABYTE HARD DISK <m

A PLUG-IN

CARD

100

s449

MEGACARD!

MEGACARD! 21 megabyte hard disk drive on a plug-in board that instantlyconverts any PC or compatible to an XT.

And MEGACARD! enables PC and XT users with a hard drive to run twodrives on a single slot. You get an extra expansion slot!

MEGACARD! combines the NEC "zero defect" program with state-of-the-art technology. This "drive-on-a-card" installs in seconds.Just plug in and power up!

MEGACARD! delivers:

• NEC technology

• Fast, easy plug-in installation

"Zero defect" reliability

Two year parts and labor guarantee.

NEC MONITORS

JC1401P3A MULTISYNC

CALL FOR PRICEJC1216DFA RGB

269.00JB1280DA TTL GREEN

105.00JB1285DA TTL AMBER

105.00

From the legal beagles.

Prices and availability subject to

change without notice.

Prior authorization required on all

returns.

All returns subject to restocking

charge.

All normal manufacturers' warranties

NEC,'MultiSync, EGA Paint areregistered trademarks of theirrespective companies.

CALL NOW AND WE CAN SHIP TODAY!

CHIPS

64K DRAMS,

SET0F9 9.00

256K DRAMS,

SET0F9 27.00

128K PIGGYBACK,

SET0F18 72.00

C8087 725.00

C8087-2 179.00

C80287-3 225.00

V208MH 70.95

EGA

ATI MEGA GRAPH

PLUS 295.00

MYLEX EGA BOARD... 249.00

RIX EGA PAINT

SOFTWARE 52.00

PORTABLECOMPUTERS

NECPC8201A 360.00

(See listing of 8201A programs)

PC8201A ADD-ON PRODUCTS

PC8206A 32K RAM CARTRIDGE360.00PC8221A THERMAL PRINTER

125.00PC8231A FLOPPY DISK DRIVE560.00PC824IA CRT ADAPTER

149.00PC8281A PORTABLECASSETTE RECORDER

85.00PC8201A-068K RAM CHIP

52.00PC8201A-90 NI-CAD BATTERY16.00PC8271A-01 AC ADAPTER

16.00

CASSETTEPROGRAMS FOR8201A

PERSONAL PLAN 36.00

GENERAL STATISTICS. . 36.00BUSINESS GRAPHICS.. 36.00FINANCIAL ANALYSIS.. 36.00

TAX PLANNING 36.00

APPLICATION KIT 85.00

REAL ESTATE

ANALYSIS 36.00

PERSONAL FILER 36.00

TIME ACCOUNTING 36.00

MODEMS

INTERNAL 1200 BAUD 230.00EXTERNAL 1200 BAUD 230.00SECURITY 1200 BAUD 310.00INTERNAL 2400 BAUD 375.00EXTERNAL 2400 BAUD 395.00

FOR EXPERT TECHNICAL SUPPORTCALL 714/650-6700

800-22-LOGIC800-843-0426 (in Calif.)

HOURS: Mon.-Fri. 7a.m.-5p.m. PDT *

Inquiry 200 for End-Users. Inquiry 20! for DEALERS ONLY.

1986, LOGIC ARRAY

NEC DISK DRIVEKITS

All drives include controllerand cables.

5%'20MB D5126.. 389.00

5%'40MB 05146.. 649.00

(40MB includes Disk Manager)

3y2" 20MB D3126.. 389.00

IT'S EASY TO ORDER

• l/l/ie ship immediately whenyou pay by Visa, MasterCard, Cashier's Check orMoney Order. Allow 3 weeksfor personal or companycheck.

• No Surcharge on Visa orMasterCard.

• Minimum $5 shipping andhandling up to 3 lbs. in Con-tinental U. S. only. On otherorders, call for information.

• All orders insured.

• No Sales tax on orders outsideCalifornia (California residentsadd 6% sales tax.)

When you want the best periph-erals money can buy with experttechnical support you'll justhave to settle for paying less.That's logic. From Logic Array.

LOGIC ARRAY

P.O. Box 3799

Costa Mesa, CA 92628-3779

• Multi-user Database!

• Powerful!

• Multiple OperatingSystem Compatibility!

• Attractive DealerPricing!

• Full Dealer Support!

Dawflex is a trademark of Data Access

Dealer Inquiries Invited

24000 Telegraph Road

Southfield. Michigan 48034 USA

[3I3| 352-2345

PC Compatible

CASH DRAWERS

M-S CASH DRAWER

10711 Flower St., Stanton, CA 90680

(800) 544-1749

In California call:

(714) 821-1133

SPEED

IBM-PC/XT

TO

700%

m

• Uses 80286 Processor

• Installs in Minutes

• Fits Short Slot

• Optional 80287 Processor

$399

Computer-Age, Inc.

55 Fishfry Street

Hartford, CT 06120

203-724-5100

Inquiry 69

Inquiry 2I2

Inquiry 78

PROMPT DELIVERY!!!

iG SAME DAY SHIPPING (USUALLY)' 9 QUANTITY ONE PRICES SHOWN (or JULY 21, 1986

SUNDAYS 8 HQUDAYS: SHIPMENT OR DELIVERY. VIA U.S. EXPRESS MAIL

SAT DELIVERYINCLUDED ONFED-EX ORDERS

RECEIVED BY:Th:SUAlr tbU lbsFt: Puna 113/Z Ibi

MasterCard VISA or UPS CASH COD

Factory New, Prime Parts jjPqo

MICROPROCESSOR UNLIMITED, INC.

$£§££%£• (918) 267-4961

Ptonui call kx currorH prcoi because prces ,vo sutyect lo change Sbppirxj ftC.i'.li iWiajiit |*«..'r, g<wi OOofs recorvod by 6 PM CSTcan usually !«■ ii--:.-rtoit morning, via Federtl Eiprou Standard Air i« $6.00. or Priority One'"

68020

FHL 20x30

• Multi-user/Multi-Tasking

• 32-Bit MC68020 — 12.5 MHz

• 6 to 30 Users

• 2.5 MByte to 14.5 MByte

• 32-Bit Expansion Buss

• Built-in SCSI/SASI w/DMA

• DIP Switches select Baud Rate

• Hard Drive (20MB to 150MB)

• 720Kb Floppy Drive

• Real Time Clock w/Battery Backup

• Software included: OS9/68000; Basic; Word

Processing; Spreadsheet; Utilities

• Options: MC68881 Coprocessor

2MB/4 Serial Port BoardMemory ProtectionGraphics BoardPascal and C

Dealer Inquiries Invited

Frank Hogg Laboratory, Inc.

315-474-7856 TELEX 646740

ROBOTICS — SCIENTIFIC BUS

For IBM PC/XT/AT/compatibles, Apple II. ..

■ Host Adaplor: Modular approach to data acqulsilion and control. A -10 con-ductor ribbon cable bus la generated by a host adapter card. Up to 8 lowcost Modules can be located anywhere on a cable up to 100 It long. Busfeatures: DMA, interrupts, t6 data bits. Open 8 non-proprietary. Hosi adapiercard, utility software 1 manual $150

• Fast A/D Module: G50K samples/sec, 8 bit. lour differential channelsw/ptogrammabto gain 8 offset. $220. Complete package with Scope program,host adapter. Fast AfO Module 8 cable $500. FFT available.

■ 12 Bit A/D Modulo: four channels. 10K samples&ec. ins! amp . (235

■ Port/Relay Moduli: fit standard relay rack, 24 bits I/O. interrupts

• Clock Module: Real lime 8 periods, baitery. interrupts, software

• Four Axli Stepper Motor Driver Module: 15V <2 t.SA/phase/motor. Full step.hall step, brake, Iree wheel. Software S motor included $92

• Smart Dual Axla Motor Control Module: For DC. brushless or stepper motordrivers 8 encoders Processors (from HP) allow changes 8 monitoring on ihefly Optically Isolated. Call tor low cost.

• Unique to LAB 40 is its ability lo efficiently interface directly to chips, suchas co-processors 8 converters, wiih the lowest hardware 8 software warheadCall for more info Or order our Projoctbook.

• LAB 40 Projectbook: 10 hardware and software projects with IBM PC $25

Computer Continuum

75 Soglhgale Ave , Sulla 6 • Daly City, CA 94015(415) 755-1978

Inquiry 238

Inquiry 137

Serial 4 ■'''"' ■ ■ »► Parallel

Convert What You HaveTo What You Want I

* RS232 Serial * Centronics Parallel

* 8 Baud Rates * Handshake Signals

' Latched Outputs ' Compact 3;., x 4\ x

IX

No longer will your peripheral choices be limited by the typeof port you have available! Our new High Performance 700Series converters provide the missing link. Based on thelatest In CMOS technology these units feature full baudrate selection to 19.2K, with handshake signals to maximizetransler efficiency. Detailed documentation allowssimplified installation. Order the Model 770 (Ser/Par) orModel 775 (Par/Ser) Today!

only*89.95

Connector Option 110.00CA Residents B'/i IIIUPS Shipping (3.00

2734-C Johnson Dr.

Post Office Bon 3717

Ventura, California 93006

CALL (805) 658-7466 or 658-7467C& For FAST Delivery '.

MYSTIC PASCAL

Fastest Compiler on Earth

NOW ONLY $16!!!

• 640K code, data and stack

• incremental compiler runs in back-ground while you are editing

• produces linkable OBJ files

• color graphics with pan & zoom

• 8087 & software math

• true multi-tasking for up to 100Pascal procedures

• full screen editor

• complete Help windows

• We are open 8-5 Mtn. time, Mon-Satdisk with condensed manual to print out $16—printed manual $16—both $32—for IBM PC 320KVisa/MC/COD—add $2 shipping. COD $5,overseas $10

Mystic Canyon SoFtware

P.O.B. 1010

Pecos, NMB7SS2 505/757-6344

f PC/XT USERS!

# COGTREE Utilities by

Cogitate

S129.95

§ LYNC by Norton-Lamber...

$199.95

1 DATAFLEX by Data Access.

. Varies

# RM/COBOL by Ryan/

McFarland

.. Varies

# Universe by Omnitrend...

S 98.50

Jt Blue Macl by Cogitate....

S 599.00

§ CadPower + by Trilex

S995.00

M Softext Teaching Aids

S 95.00

# PrintSet by Cogitate

S 79.95

J CogiTAPE by Cogitate

. .CALLII

1 Anti-Static Products

. Varies

f Uninterruptible Power

Backups

.. Varies

_#" TeleVideo Software

. .CALLII

Elite

"A Higher Form of Softwa

re"

24000 Telegraph Road

Southfield, Ml 48034

|3I3| 352-2345/Telex 386581

VISAJMASTERCARD ACCEPTED

Dealer Inquiries Welcomed

Inquiry 348

Inquiry 245

Inquiry 70

602-991-7870 Customer Support

S-100 DIV./696 CORP.14455 NORTH 79TH ST.SCOTTSDALE AZ 85260

TELEX 9103B06778 SONE HUND

COMPUTER SYSTEMS

IBM-PC COMPATIBLES

WE CARRY A WIDE RANGE OF DESKTOP, LAPTOP &PORTABLES DESIGNED TO RUN THE SOFTWARE THATFUELS TODAYS BUSINESS.

SHARP PC-7000 8086 LAPTOP $1299

ZENITH 148. 158. 171. 200AT. UP TO 50% OFF

jmm m jg^ ^^_^^__^_^^^^^^^^__

ACS ET-286 1Mb, 3S&2P, CLK.8 SLOTS, 6/10/12.5MHz,

20Mb & 1.2Mb DISKS, MSDOS 3.2 Complete $2595

ACS-1000 SYSTEM B/4.77MHz, 2 FLPY DRVS, 1MbRAM, 20Mb H.D. DRV., COLOR/MONO CTRL.MSDOS 3.2,SASI, 2 S/P PORTS, CLOCK/CAL-BATT $1650

^p cordata

PC-400 512K, 2 FLPYS, 14" 640x400, 512K $1149

20Mb HARD DISK SYSTEM WITH 2 FLPYS ....$1499

ATD-B-Q 8MHz 80286, 640K, S, P, 1.2 FLPY $2039

ATP-8-Q PORTABLE $2189

EPSON

EQUITY II 8MHz V30, 640K, S, P, CLK, FLPY, MS-DOSA GWBASIC - RUNS 2.9 NORTON UTILITIESI CALL

^•SPERW

KEYBOARD IS EXTRA:

PC-STYLE...S139 PROFESSIONAL AT-STYLE ...$179MODEL 200 HT8088-2, 256K, S.P.CLK, 720x350 MONO

DISPLAY, MSDOS, GWBASIC $1635

MODEL 400 HT FLPY AND 20Mb $2119

PC / IT 8MHz 80286, 1.2 FLPY, 512K, 8 SLOTS ....$2149PC / IT ENHANCED WITH 1 Mb & 40Mb H.D. DRV..$2959

1086-50 1Mb RAM, 50Mb HARD DISK, 50Mb TAPE

DRIVE.XENIX $11399

1086-80 AS ABOVE W/ 80Mb HD&TAPE $12999

686-25 6USER, 25Mb H.D., XENIX $4099

686-50 AS ABOVE WITH 50Mb H.D $6199

NETWORKING

CALL FOR DEALER PRICING, INTEGRATION,AND/OR CONSULATION.

COMPUPRO NET 100 $369

mm

PC-SLAVE / 16 1Mb, 8MHz, V20 $595

RTNX MSDOS 2.1 ...$109 ATNX MSDOS 3.1 ...$189

ffpi"'""1'"*—-1

LAN-PC ARCNET FOR PC'S $349

WS-286 BMHz 80286, 5 SLOTS, ARCNET 1/F, 640K,SCSI, AT TYPE ENCLOSURE & P/S $1398

HNOV ELL

ADVANCED NETWARE STARTER KITS SOFTWARE,DEYCARD, 2 NICS, CABLES INCLUDED From $1795

^SPER^V

USER NET SOFTWARE / 86 & KEY-CARD $895

PC/XT/AT BOARDS

STB RIO GRANDE 128K-1.5Mb, P & S $195

STB CHAUFFER RUNS RGB IN MONO $189

STB ATTA-BYTE 0-384K FOR AT &T $159

TECMAR WAVE 64-256K $150 BOSUN S.P.CLK $150TECMAR MAESTRO 0-2.5Mb,S,P&TREAS.CHEST.$295TECMAR CAPTAIN 0K,S,P,CLK & TREAS. CHEST..$155TECMAR EXPANSION CHASSIS II SLOTS, ETC. ..$639

CAD

S-100 BOARDS

6 PACK PLUS $155

C PACK PREMIUM $325

RAMPAGE AT $429

ADVANTAGE $325

3G-EGA $275

inter

INTEL ABOVE BOARD PCMB 1010 64 TO 512K.ALLOWS LOTUS, SYMPHONY, OTHERS TO RUN ABOVE

640K $255

INTEL ABOVEBOARD-AT-\2B TO 4Mb $399

MACROTECH MSR-AT 0-3Mb RAM FOR IBM-AT @ 6, 8,10,* 12MHz. NO WAIT STATES $185 - $625

CORDATA FASTDRAFT 480x640, 256K, 16 CLR $949

HANZON LP-3000+ LASER HPGL PLOT. COM..CALLACS GRAPHAX20/20 2Xx2K GRAPHICS RESOLUTION2.5Mb BD., UP TO 32 COLORS, AUTOCAD CALL

GdoqqsGcddq

„..„ instrument

DMP 41/42. $2499

DMP 51/52. $3799

DMP 56 $4549

DMP29 $1749 DMP40 $899

TRUE GRID DIGITIZERS

TG1005 $299

TG1011 $539

TG1017. $655

POWER SYSTEMS&ACCES.

[nU COMPUIBI ACCESSORIESALL CABLES SOLD AT DEEP DISCOUNT.....CALL

S4 4 CIRCUT SURGE SUPPRESSOR $26

S10 6 CIRCUIT SURGE SUPPRESSOR $29

P15 5 CIRC. MONITOR BASE W/ MODEM PROT $98

U1000 POWER SAVER 1JJ00W U.P.S. (TOPAZ) $729

Kim)

iandiSP new Adv

(mf'im

SB-1000 WATT WITH BATTERY 30-60 MIN $659

BC-1O0O WATTW//SELF CONTAINED BATT.15-30Min889

SAFE (SAFT) SPS1000 WATT SINE WAVE $989

SOLA 750 WATT W/ 4500 WATTT HI-INRUSH $1495

MONITORS & TERMINALS

NEC MULTISYNC $515

TECMAR RGB HI-RES ZVM-1360 $498

ZENITH ZVM-1240 (IBM) FLAT SCREEN $149

PRINCETON GRAPHICS ALL MODELS CALL

0TATUNG

CM-1360 640x200 RGB, 13', G/A SWITCH $359

CM-1380 EGA 640x350 RES $479

1422A DUAL FREQ.JILT/SWIVEL, 14", G/A $139

A LINK

125 EMULATES WY-50 ETC., HIRES 14" GREEN/AMBER,6 SCROLL RATES, IBM SELEC, K.B., 1 YR WARR... $385PC-TERM EMUL WY-50, TVI 925, IBM-AT KB, FOR MULTI-USER PC-SLAVE BOARDS $419

WYSE60 $475

LIBERTY FREEDOM ONE $395

PRINTERS & BUFFERS

brother

M-1109 100-25 CPS P & S, TRACTOR $203

HR-35 36CPS DAISEY, WIDE CARR $729

HR-20 20 CPS $349

CITIZEN MSP-10 $250 MPS-15 $349

CITIZEN MSP-20. $315 MPS-25 $485

CORDATA LP-300 LASER W/WORDSTAR 2000..$2175

HANZON BUFFER 64K-256K S-S,S-P,P-S,P-P $265

HANZON LP-3000+ LASER CAN EXECUTE

HEWLETT-PACKARD GL PLOTTER COMMANDS....CALL

STAR MICRONICS SR-15 $595

TOSHIBA P321 PARA. & SERIAL $449

TOSHIBA P341 $769

TOSHIBA P351 PARA. & SERIAL $969

OKIDATA 292 COLOR PRINTER $459

OKIDATA 293 COLOR W/ TRAC, 132 COL $599

XEROX/Diablo

XERON D25 DIABLO ....$484 635 D1ABLO....$1049

DIABLO D80-IF $2049 DIABLO 34LO $989

4045 LASER WITH COPIER & 512K RAM $4795

PERSONAL SPEECH SYSTEM..

..$295

SCIENTIFIC / INDUST. BPS-

Industrial Computer Designs

YMMmmmuu

A/D 64-100 $315 AID 64-PC $396

D/A 64-100 $236 D/A 64-PC $468

1018-PC 96 TTL INPUT LINES $446

SCIENTIFIC SOLUTIONS (TECMAR)

IEEE-488 $239 LAB MASTER $659

ONE STOP SHOPPING FOR ALL OF YOUR INTEGRATIONAND POST SALE SUPPORT NEEDS. WE HANDLE CCS,COMPUPRO, DUAL, I.C.M., ILLUMIN. TECH., LOMAS,TELETEK, MULLEN, P&T, INDUST. COMP. DESIGNS,TARBELL, ETC. THIS MONTH'S SPECIALS ARE:

CONCURRENT DOS 4.1D . $495 CDOS 4.1E .$750

SPUZ 8MHz Z80, 256K, 4 USERS $269

INTERFACER-3 8 SERIAL PORTS $439

SYSTEM SUPPORT 1 WITH CLK, BATT, SERIAL.$289

DISK 1A 5" & 8" FLOPPY CONTROLLER $439

DISK 3 5" HARD DISK CONTROLLER $509

RAM 22 256K STATIC RAM $446

DUAL.

DUAL: AIM-12 D/A CONVERTER $545

DUAL: AOM-12 A/D CONVERTER $509

THUNDER + BMHz 80186, 512K, 2S, P, FLPY CTRL,CDOS 4.1 -- LITERALLY A SYSTEM ON A BOARD....$895LIGHTNING 286 8MHz W/ ON-BD DIAGNOSTICS$819COLOR MAGIC PC VIDEO FOR S-100 BUS $445

M MACROTECHINTEHNJATIONAL

MI-286 10MHz 80286&8MHZ Z80H $695

ST-//1Mb STATIC RAM $649

MSR-II 1Mb DYNAMIC RAM $799

HARD DISK & TAPE DRIVES

PC-INSIDER, PC-OUTSIDER & AT-INSIDER HARD DISKSFOR IBM AND COMPATIBLES SET-UP TO BOOT FROMHARD DISK WITH ALL NECESSARY HARDWARE ANDPC-STYLE CABINET FOR EXTERNAL DRIVES.

20Mb PC-INSIDER $379

30Mb PC-INSIDER (SEAGATE ST-238) $535

72Mb PC-IN/OUTSIDER 30mSEC $1798

COMPUPRO 40Mb INT. SUBSYS. W/ DISK 3. $1565

COMPUPRO 80Mb INT. SUBSYS. Wl DISK 3 $2049

ALLOY FT-60 60MB @ 1.8Mb/Min,For PC Compal.$795IRWIN 10Mb TAPE/PC or CPRO - Requires CDOS....$369

TECMAR QIC60-AT INT 60Mb TAPE $1079

TECMAR MACDRIVE 10Mb $1099

TECMAR MACDRIVE 10Mb & 5Mb REMOVABLE..$1850WANGTEK PC-3S 60Mb INT. TAPE, FAST & EASY.$785

BARE WINCHESTER DRIVES

TEAC SD520 26Mb HH 5 1/4" $299

SEAGATE ST-4051 51Mb. 40mSEC, FH 5 1/4" $795

QUANTUM Q540 43Mb, 45mSEC, FH 5 1/4" $995

MICROPOUS MC-1325 85Mb,30mSEC,FH 5 1/4"..1395

MAXTOR XT-1140 140Mb, 30mSEC, FH 5 1/4" $3289

MAXTOR XT-2190 190Mb, 30mSEC, FH 5 1/4" $3895

AMCODYNE ARAPAHOE 7110 25Mb FIXED & 25MbREMOVABLE CDC LARK PLUG COMPATIBLE $3495

FLOPPY DISK DRIVES

MITSUBISHI 2894 8"....$475 2896 1/2 HT,8"....$435MITSUBISHI MF50I 48TPI... $95 MF504 96TPI... $149TEAC FD55BV 48TPI $89

SOFTWARE

WE SELL ALL WELL KNOWN BRANDS. ORDERCORRECTLYI SOFTWARE IS NOT RETURNABLE!

NEWSTAR NEWWORD 2 WITH MERGE, SPELL CHEK.NEWSTAR NEWWORD 3 FOR PC'S. SPELL CHECKER,INDEXING, CONTENT TABLES, MACRO'S, SHORTHAND

KEYBOARD. MULTI-TASKING $269

BD SOFTWARE C COMPILER 8" SSDD 8 BIT $95

MICROSOFT ASHTON-TATE - 38%

MICROPRO MULTIMATE P.F.S - 41%

BORLAND INTL TURBO PASCAL, ETC - 41%

MOST OTHER PC PROGRAMS - 41%

MODEMS

P.R0ME,T,HEUS|

PROMODEM 1200 $259

PROMODEM 1200G ...$179 2400G $339

PROMODEM 300C - APPLE IIC PEGGY BACK $79

MT224EH MNP ERROR CORREC $529

MT224ER RACK MOUNT W/ EDC $495

CTS HAYES COMPAT. 212AHC $149 224ADH $295HAYES - ALL MODEMS CALL

"ODs (S5 min fee)

J only. PO's from qualified firms & AM. Express-addl Cashiers Check/MO & APO's accepted. Shipping:loo taX All returns subject to 20% restocking fee or

ESTABLISHED 1977

Inquiry 298 for End-Users. Inquiry 299 for DEALERS ONLY.

NO SHIPPING CHARGESORDER TOLL-FREE 800-824-3432

In California Call 18181 341-8833

DRIVES

"2 Ht. IBM'" Compatible 89.99

Tandon 100-2 99.99

Tandon 100-4 (96 tpi) 129.99

SYSTEMS

PC/XT Compatible 499.99

• 640K on Motherboard • Flip Top Case

• 1-v, HT. Floppy • 135 Watt Power Supply

• Mono Card w/Printer Port • 5150 Type Keyboard

We carry a complete line of electronic com-ponents. Call or write for our free catalog!

INICORN ELECTRONICS

lOOiOCanoga Ave UnitEM) Cnaiswonh CA911H

J§a!e§lanw

KEYBOARD PROTECTOR

Remains in place during keyboard use. Preventsdamage from liquid spills, dust, ashes, etc. Fitslike a second skin, excellent feel. Available for:IBM-PC, AT, Apple (all), Compaq, Model 100,NEC 8201, C64, Zenith 150, DEC, Kaypro,KB5151, AT&T 6300, WYSE 50 and manyothers. Send $29.95, check, M.O., Visa & MCinclude exp. date. Specify computer type. Dealerinquiries invited. Free brochure avail.

Merritt Computer Products, Inc.

2925 LBJ Fwy. #180 / Dallas, Texas 75234

(214) 339-0753

TURBO MASTERI Turbo Master is an integrated development system toriI Turbo Pascal programmers consisting of six floppy II disks and a manual. The components of this system II include the following: Turbo Screen master. Turbol■ ISAM Master. Turbo Menu Master. Turbo Toolkit II Master, and Resident ISAM Master. The Turbo Screen!I Master features Intelligent Cursor which allows you to II draw boxes and borders by simply moving the curserlI to the desired position, and Extended Variable Names!I which allows the use of arrays and structures in your II variable names. The Turbo ISAM Master generates II ready to run Turbo programs using Borland's Turbo II Pascal Database Toolbox; It automatically interfaces to II Turbo Screen Master. The Turbo Menu Master!I features a menu data base and an interactive menu II builder allowing for the automatic entry and reorder ol II selections and users choice of procedure, chain, ex-"I ecute or comment code generation for each selection. II The Turbo Toolkit Master includes procedures for full JI control over all screen attributes, advanced string II functions, automatic control of multiple help screens, 1Isaving and retrieving screens to RAM buffers.!I Caps/Num/Scroll/Lock control procedures, and report II procedures. The Resident ISAM Module Module uses II less code space, provides a key buffer data area out-1I side your program's data space. All of these programs II are available as a package for:| Money Back Guarantee $99.95 plus 7 50 S&H |

Hawaiian Village Computer Software1109 Pennsylvania Ave., St. Cloud. FL 32769Info: 1305) 892-5686 18001 821-9503

Inquiry 359

Inquiry 225

Inquiry 151

ifis insured?

SAFEWARE® Insurance provides fullreplacement of hardware, media and

purchased software. As little as $39/yr. covers:• Fire • Theft • Power Surges

• Earthquake • Water Damage • Auto Accident

For information or immediate coverage call:

1-800-848-3469

In Ohio call1-614-262-0559

SAFEWARE, The Insurance Agency Inc.

( Heritage Systems Corp. )

HSC-910080 By 24 Or 25 Line

Alpha-numericVideo Terminal Card

ANSI X3.64/Other Terminal Emulations50 To 38.4K Baud Serial PortRS-232 Or TTL/CMOS VersionsIBM PC Compatible Keyboard InputEEPROM Based On Screened

ConfigurationComposite or Separate Video100 By 100mm Card 5V Only @ 200mA$139TTL/CMOS $149 RS-232

PO Box 10588, 'Greensboro, NC 27404-0588 (919) 274-4818

LEARN C

THROUGH OUR NEW

VIDEO TRAINING COURSE

A PROGRAMMER'S INTRODUCTION

TO C—This three-hour video tape withtext that takes a programmer from anintroductory level thru to arrays andpointers. (Introductory Price $400.)

Also available: our courses onCOMPUTER LITERACY, BASIC TELECOM-MUNICATIONS and LOCAL AREA NET-WORKS.

Call us today fora15DAY FREE TRIAL(orrequest our complete course catalog).

408-374-1235

the

INFORMATION FACTORY

208 Charter Oaks CircleLos Gatos, CA 95030

Inquiry 300

Inquiry 153

Inquiry 169

ANNOUNCING .... a high performanceMC68000 based 32 bit APL interpreterexclusively for the IBM PC/XT/AT and

compatibles.... single or multi-user

total integration with DOS hardware andsoftware environment.

Mum APL

• 10-12-15 MHZ 68000 coprocessors

• Up to 6MB RAM per PC

• No object size limitation

• Full printer support

• Multi-user file system

• Local Area Network facilities

• 32081 floating point processor

• Other systems available for:Macintosh, Amiga, Atari ST, etc.

Single-user $995 • Multi-user $1495Coprocessor boards start at $1950

SPENCER ORGANIZATION. INC.PO BOX 248 / Westwood. NJ 07675 / |20l| 666-60II

VISA / Mastercard / American Express accepted

ONE COMPUTER &TWO PRINTERS?

Stop Plugging& Unplugging!

use your choice of TWOprinters from ONE |parallel cable with thesimple (lick of a switch.

*6595

Plus $3.25Shipping

30 Day

Money BackGuarantee

One Parallel Plug In.. .Two Parallel Plugs Out!

Connect any Standard Centronics Parallel Cable directly tothe switch.Two 3'^' cables (included) attach to each printer.

Simply Call 1-800-TO-ASK-US! 8am-5 pm PST

800-862-7587(CA 415/567-4067)

To Order Write or call Tipz Direct, Inc. VIsa/MC orMoney Orders please. Shipping within 48 hrs. via UPS.

Offering a FULL LINE ofSwitches, Cables, & Accessories

P.O. Box 690.

San Francisco, CA 94101-0690

4^

«

tar""**

VROSE data switches

'ELECTRONICS o-.oc

SHARE computers, printers,any parallel or serial deviceELIMINATE cable swappingINEXPENSIVE way to networkCOMPATIBLE withall computers.

Businesses. Schools, HomesWE ALSO OFFER:Data Bulfers, Line Drivers.Modems, Protocol Converters,Parallel - Serial Converters,Cables. Computers, Printers.Disk Drives, and more.AUTOMATIC ■ CAHETAKER is ideal (or a business orschool to share a printer or modem among many computers.Operation is fully automatic with no software required.Parallel or Serial 4 channels - $295 8 channels - $395MANUAL - HAROSWITCH is operated with the flip of aswitch, 2:2 and 2:4 models allow simultaneous commun-ication.

Serial 1:2 • $59 1:4 - $ 99 2:2 ■ $109 2:4 - $169

Parallel 1:2-$79 1:4 - $139 2:2-$119 2:4 ■ $199LED and spike protection on serial models add $20.CODE ACTIVATED ■ PORTER connects one computer tomultiple peripherals. A software code selects the peripheral.Parallel or Serial 4 channels - $295 8 channels - $395Bulfer option 64K-$tOO 256K - $250REMOTE - TELEPATH connects multiple computers tomultiple peripherals. A selector at each computer or terminalchooses up to 4 peripherals and displays busy status.4:4-$495 4:8 - $795 selector - $39.— (five « 7(M< At iftwt compute* ==^=^^

ROSE ELECTRONICS (713) 933-7673

P.O. BOX 742571 MC a VISA Accaptsd

HOUSTON, TX 77274 Dealor Inquiries Invited

CALL US FOR ALL YOUR INTERFACE NEEDS

Inquiry 326

Inquiry 350

Inquiry 295

Software Selectable for

,,._.. ,*__-_. 4f% It ill j^ ^^—.^ ._.^. bonware beiectaoie Tor

HIGH SPEED 12 MHZ OPERATION 6,8,10, andi2 MHZ!

FULL IBM PC-AT* COMPATIBILITY!

FOUR MEGA-BYTE RAM CAPACITY ON MOTHERBOARD!

USING 1 MEGA-BIT DRAMS.

QUANTITY DISCOUNTS AVAILABLE FORQUALIFIED DEALER, OEM, UNIVERSITYAND CORPORATE ACCOUNTS.

Eight Compatible I/OInterface Connectors

(Same as PC-AT)

Keyboard Interface

(Same as PC-AT)

HIGH SPEED INDUSTRIALGRADE COMPUTER FOR:

• Scientific

• Engineering

• Industrial

• Medical

• University/Education

• Artificial Intelligence

• Etc., Etc., Etc.

Extended ROM Capability

(Operates on all compatible BIOS ROMS)

Extended Memory Capacity!Full Four Mega-ByteCapacity on Motherboard!

(Uses 256k or NEW 1 Mega-Bit Drams)

rQftX&

NO^S

D ATTAK-286'" FULLY ASSEMBLED (LESS ICS) $499.95

□ AT CASE 100% COMPATIBLE $129.95

D AT POWER SUPPLY 192W $129.95

D ATTAK-286™ TECHNICAL REFERENCE MANUAL. .. .$ 29.95

□ TURBO-SCOPE™ A/D BOARD $ 99.95

100% SATISFACTION GUARANTEED.10 DAY MONEY BACK GUARANTEE IFNOT COMPLETELY SATISFIED!

Peripheral Support Circuits

(Same as PC-AT)

Board Size: Standard IBM-AT*Dimensions: 12 inch x 13.8 inchwith 6 mounting holes to fit allAT compatible cases.

ATTAK-286™ evaluation board kithighest quality multi-layer PCboard with full assemblyinstructions and parts lists!

CORPORATION

ADVANCED

INTELLIGENCE

TECHNOLOGY

4100 Spring Valley RoadSuite 400

Dallas, Texas 75244(214) 490-0344

'IBM and IBM PC-AT are trademarks of International Business Machines

TERMS: We accept cash, checks, money orders andcredit cards. Prices and availability subject to changewithout notice. Shipping and handling charges via UPSground 50C/lb UPS airS1.00/lb. Minimum charge S3.00.

© 1986 AIT CORP.

Inquiry 7

SEPTEMBER I986

IYTE 439

Get the whole

story on graphics

terminal emulation.

To find out more about softwarethat lets your PC emulateTEKTRONIX™ 4105/6/7/9 andDEC VT100™ terminals,call or write:

<| GRAFPOinT

4340 Stevens Creeks Blvd., Suite 280,San Jose, CA 95129 (408) 249-7951

An RS-232 Break-Out-Boxat a Fraction of the Cost.

RS-232 Multi-Adapter Board: 9 LED's for signalmonitoring. 24 switches to open any line (exceptline 1). 20 jumper wires allow re-wiring to anyconfiguration. 1 male and 1 female connector.Order direct! Only $59.95. All cash orderspostpaid. (IL res. add 6'A% sales tax). We Ac-cept MC, Visa. Free illustrated catalog of RS-232interface and testing equipment. Phone:815-434-0846. Make checks payable to:

&B electronics

WaM MANUFACTURING COMPANY

1500B BOYCE, OTTAWA, IL 61350

Kemostcomplete

IbIitreNCE GUIDE ONSSbLO PRINTERS.

—iiiniinffgggHEBfflC^^B hHi • ConiDleile ax-

Complete ex-ploded diagramsol Diablo printersand key compon-ents — 160 pes .'

• The most com-plete pails inven-tory outside ofDiablo — inclu-ding many hardto find parts.

»Detailed listingol new and re-manufacturedprinters.

• Plus new*puntingsystems

iasei

CALL TOLL FREE1/800/225-6116 1/800/235-6116 415/887-6116

(Inside California) {Outside California) (Local)OR WRITE TO:

THE PRINTER W#RKS I

inquiry 146

Inquiry 34

Inquiry 277

SERIAL ASCII VOLTMETER

SAV10 RS232 SERIAL ASCII VOLTMETER $169SAV11 RS422 SERIAL ASCII VOLTMETER $239MA15 RS232/RS485-RS422 INTERFACE $149

• 4 analog voltage inputs ol 0-2.55V,measured simultaneously at 8 bit resolution.

• Stand alone operation.

# Selectable data rate.

# Low power consumption.4 Rugged, compact package.

MARON PRODUCTION INC.

DISCOVERY PARK. 105-3700GILMORE WAY

BURNABY. B C . CANADA V5G 4M1

Phone: (604) 435-6211

RS-422

Communications Board

•For IBM-PC/AT/XT and Icompatibles

•Dual RS-422/RS-485 interface•Differential drivers to 4000 ft.

Fasf DeliveryQUA TECH, INC.

478 E. Exchange St. Akron OH 44304(216) 434-3154 TLX: 5101012726

0

PC DIADAC <-» TAKE CONTROLWITH YOUR IBM PC/CLONE

^CHANNEL -BHANALOG |NPUT

<P-£«rNEL ANALOG OUTPUT$375°° DIGITAL I/O!?,-«,

»^1

iliiiiiii

'l8ii>

DIADACS 1 «•• TAKE CONTROLWITH YOUR COMMODORE 64

I6CHANNEL 12 BIT

A/D CONVERTERD/A CONVERTER 12BITDIGITAL OUTPUT iolineDIGITAL INPUT rniNEREAL TIME CLOCK

Cornea complete with user's manual and software driver 32 /▼

CONTROL MODE lS@£SCS| 150

DEALERS/REPRESENTATIVES PLEASE CALL

Cmicrotech) ** ;^NQEH0RNE-w 19M7

Inquiry 220

Inquiry 286

Inquiry 58

Printer (Data) switch $39.00

Dealers & OEM Welcome

• Motai case, beige color • Dimension: 1

• Push button or rotary switch • All pin switched

• 2 layer PC board, fully shielded • 1 year warranty

Switch box DB25/Centronlc RS232 Miniature

2 way switch $39/$45 Gender changer M/M, RF $7

2 wey cross S85IS79 Null modem $10

4 way switch S5S/S7S Jumper box, surge-protector $10

Br«Bk-OUt box $59 Mini ,6,,Bf' Mini-patch box $15

Cable (Lifetime warranty) $10 up

• UL approved, molded, double shielded, beige color

• D type connector with thumb screw (screwless)

Printer Cable (For IBM) 679712' $10/$12/$14

Cenlronic Cable (mele to male) 6710' $14/118

RS232 Cable (male to male) 6710' S12/S14

RS232 Cable (male to fomaio) 376710' S10/S12VS14

125 line connected ones can be used as modem or extension cable)XT Floppy Cable/Hard Disk Cable S7/SS

30 Day Money Back Guarantee JACO Enterprises

Term: C.O.D. $1.90 1478 Poppy Way

Plus shipping & handling Cupertino, CA 95014California residents add sales tax (40B) 996-0675

IF YOU USE A COMPUTER

YOU CAN USE

UNIT CONVERSIONS1

$49.95

NOWONLY

IBM PC/XT/AT and Apple lle/ndii + CompatibleVirtually ALL the conversions you will ever need!UNIVERSAL UNCHANGING PRECISE

Feet to metres, kilowatts to horsepower,light years to angstroms and 3, S61 MORE.1

TO ORDER: see your local software dealer or

call toll free 24 hours a day

1-800-356-5324 (exl 132B)

Wl or outside USA: 608-257-6648

VISA, MasterCard, or C.O.D. Well ome

ALL ORDERS SHIPPED WITHIN 48 HRS. OF RECEIPT

SHIPPING PAID BY ICI FOR USA ORDERS

Outside USA: add $ 10.00 shipping and handling,

pay in U.S. dollars (No C.O.D.)

||f '"INTERNATIONALCOMPUTING, INC.

= =^= 1501 Monroe,Madison, Wl 53711 USA

The Quiet Star in Software

GET FREE SOFTWARE

FROM THE PUBLIC DOMAIN

The widest selection from the bestdistributor! Business utilities and more formost any computer for only the copy charge!Library Rent Buy

BEST DFIBMPC 320 Oisksilftis 250. 500.

IBMPC-BLUE 220 Disksirjes 225. 450.

AUTHORS SHOWCASE 35 Disks 35. 105.

CAPITOL PC-SIG 45 Disks 50. 105.

SIG/M-UG 270 Disksittns 175. 330.

KAYPRO OG 74 Disksirjes 80. 215.

AMIGA 25 Disks 25. 100.

ATARI-ST25 Disks 25. 100.

COMMODORE C-64 100 Oisksidus 105. 150.

Public Domain User Group Catalog Disk S5 pp.

Send your check & specify computer format.Rental is for 7 days after receipt, 3 days grace to

return Use credit card, no disk deposit

Shipping, handling S insurance S9 50 per library

(619) 941-0925 Orders & Technical (9 lo 5)

(619) 727-1015 24 Hr. 3 Min. Info Recording

Have your credit card ready1

National Public Domain Software

1533 Avohill Dr. HKBVista, CA 92084 VISA1-800-621-5640wait l—BBB for tone dial 782542 I AM Ex

Inquiry 176

Inquiry 174

Inquiry 249

DRIVES

20 MB Seagate drive $439

30 MB drive for AT $655

360 K Floppy for AT $110

Teac55B $109

20MB Hard Card CALL

IBM COMPATIBLE

HARDWARE

Multifunction card 384K, S, P. CLK $139

AT Multifunction card OK 3MB $169

MONOCROME graphics card $99

Color Graphics card $89

ComBo CARD ser, par. clock $69

EXPANSION CHASIS 7 slots $569

TAPE DRIVES

IO MB Irwin $379

20 MB Irwin $429

Everex Stream 20 $569

Everex Stream 60 $899

Peachtree CALL

COMPAQ 286, 20MB

Portable, 512K, DOS$3999

COMPAQ Deskpro 20MB

Seagate, 640K, Monitor, DDS$2349

SPERRYIT44MB CALL

LEADING EDGE CALL

SYSTEMS

IBM AT COMPATIBLE

8MHZ, 512K, 20meg

Monitor, graphics, ser, par

$2189

IBM XT COMPATIBLE

256K, 20 meg, Monitor

graphics, ser, par

$1099

IBMAT30MB $3769

6MHZ, 512K, Seagate 40MS

IBM XT 20MB $2399

Seagate, 256K, DOS, Monitor

LASER 128(llc Compatible) ...CALLLOCAL AREA NETWORK .......CALL

IBM SOFTWARE

LOTUS 123 CALL

Symohony CALL

ENABLE 359.00

VP Planner 59.00

ASHTON TATE Framework CALL

dBASEII Z79.00

dBASE III Plus CALL

POWERBASE CALL

CLIPPER dBASE III Compiler 355.00

LATTICE C COMPILER 249.00

MULTIMATE 225.00

MULTIMATE ADVANTAGE 269.00

SORCIM SUPERCALC III ■... 199.00

MICROSOFT Multiplan 119.00

Word 249.00

Windows 65.00

Project 239.00

FOX & GELLER Quickcode 149.00

BORELAND TURBO PASCAL 42.00

REFLEX 59.00

LIGHTENING 59.00

SUPERKEY 41.00

SIDEKICK {unprotected) 50.00

ASCII PRO Comm Software 55.00

CROSSTALK XVI 99.00

MIRROR Comm Software 49.00

PEACHTREE Back to Basics 199.00

BPI GENERAL ACCOUNTING 299.00

OPEN SYSTEMS CALL

REALWORLD CALL

ONE-WRITE PLUS 149.00

ACCOUNTING PARTNER 199.00

MONOGRAM DOLLARS & SENSE .... 99.00TOBIAS MANAGING YOUR MONEY .. 99.00

SATELLITE WORD PERFECT 225.00

MICROPRO WordStar PRO 249.00

WordStar 2000 PLUS 285.00

SAMNA WORD III 279.00

RBASE5000 359.00

PRINTMASTER 35.00

BREAKTHROUGH TIMELINE 255.00

DECISION RESOURCES CHRTMSTER219.00ENERGRAPHICS w/plotter opt. 207.00

FUNK SIDEWAYS 36.00

LIFETREE V0LKSWRITER DELUXE 149.00HARVARD TTL PROJECT MNGR . . . 285.00THINKTANK 110.00

IBM HARDWARE

AST6PackPlusw/384* ...... 215.00

6 Pack Premium CALL

RAMPAGE CALL

STB Companion PC 0-2 MB LIMS 189.00

Chauffeur [Tonographies 229.00

EGA - Plus Color Board 279.00

JRAM3 185.00

JRAMAT3 235.00

HERCULES Mono Graphics 199.00

Color Card 149.00

ORCHID Tiny Turbo CALL

Turbo 286EW/1 Meg 775.00

Turbo EGA CALL

QUADRAMEGA + 379.00

QuadPDrt lor AT ser & par 125.00

PARADISE Modular Graphics Card.... CALL

130WAT Power Supply 79.00

TALLGRASS W/Tape CALL

MOUNTAIN CALL

ALLOY CALL

Graphics Edge Card 239.00

MOUSE SYSTEMS Mouse 119.00

MICROSOFT Mousew/sftwr 117.00

KOALA KAT 137.00

MODEMS

ANCHOR Express 300/1200 199.00

Volksmodem1200(5yrwrnty) 118.00

EXPRESS I 300/1200 149.00

Lightning 2400 Baud CALL

HAYES 1200 369.00

1200B 349.00

2400 CALL

PROMETHEUS 1200 259.00

Promodem 1200B 205.00

Promodem 1200A 189.00

Promoden 300 lie 79.00

Promoden 2400 379.00

MONITORS

AMDEK300A 139.00

310A Hi-Res Amber 149.00

Color 600 389.00

Color 722 RGB 720X350 CALL

PRINCETON GRAPHICS HX-12 399.00

HX-12E RGB 720X350 4B9.00

SR-12 CALL

MAX-12 149.00

TAXAN: ALL MODELS CALL

PANASONIC

DT-H103 10" High Res RGB 359.00

IBM COMPATIBLE Monocrome 99.00

Color RGB Monitor (640X200) 279.00

PRINTERS

PANASONIC (2 yr warranty)

KX-P1080 199.00

KX-P1091 229.93

KX-P1092 305.00

KX-P1592 425.00

KX-P1595 240CPS CALL

KX-P3131 17cps Daisey 249.00

KX-P3151 22 cps Daisey 385.00

Citizen MSP-10 275.00

MSP-15 389.00

MSP-25 CALL

STAR MICRONICS CALL

EPSON LX-80 ...• Call

FX-286 (or

LQ-800 Best

LQ-1000 Prices

BROTHER-1509 369.00

OKIDATA- All Models Call

TOSHIBA All Models CALL

CANNON Laser Printer 1.999.00

HEWLETT PACKARD LASER 2,199.00

HOUSTON INSTRUMENTS Plotters CALLDigitizers CALL

APPLE PRODUCTS

APPLE Compatible Drive lie 99.00

lie compatible drive 99.00

MAC Compatible3'A drive CALL

MICROSOFT Sottcard II 259.00

ASCII XPRESS (Communications) 65.00

APPLEWORKS 215.00

SPELLWORKS 49.00

PRINT SHOP 35.00

Mach III Joystick 35.00

SYSTEM SAVER Fan 69.00

VIDEO 7 lie Enhancer CALL

VIDEX Ultraterm 159.00

APRICORN (Lifetime Warranty)

Super Serial Imager 75.00

Graphics Interface 65.00

80Column/64K 75.00

EXTEND IT 64K 55.00

KOALA SpeedKey 99.00

Call for catalog. Thousands of products available. Volume discounts.

B

COMPUTERBANC

16783 Beach Blvd., Huntington Beach, CR 98647

P®tr ©an§e®M®[? ©©frefe® ©aOD 1 H4=S4?=®^M©

Orders Only

800/332-BANC

OUTSID6 CALIFORNIA

714/841-6160

Cosh prices Indicated R" products ore In factory sealed packages. UJe guarantee all Items for 30 days. Within this period, defective merchandise returns must

be accompanied by RMA number. All other returns will be subject to a 10% restocking Fee. For prepaid orders, there uu* be a 3% shipping charge: 5% for UPS

Blue Label; tS.OO minimum: oil orders outside U.S.A. at IS*/, shipping. California residents add 6% sales tax. Prkes subject to change without notice.

©Copyright 1°S5 COMPUT€ABANC, All Rights Reserved.

Inquiry 86

SEPTEMBER 1986 -BYTE 441

Scan-tastic!

BARCODE READER

$477

Includes $99label printingD> program FREE!

Works with DBASE Il/lll

LOTUS 123 & others right

out of the box!! Reads UPC

3 of 9, 2 of 5 into PC.XT &

compatibles - no slots.

216-273-5039

DEVSOFT INC.21010 Center RidgeCleveland, Oh 44116

$99

HARD DISKCONTROLLER

New Shugart Model 16105 1/4" Hard Disk ControllersEMULATES ■■■—

• XEBEC S1410 (1610-3) Full;1610-1) 90 day

Guarantee

• DTC510 I

• SCSI (1610-4)WORKS WITH ■■■■■■■■■■■■■

• MicromintCOM 180, SB180

• Wavemat Bullet ^^"^^^™

• AMPRO All Boards Manual

• Macintosh and

• Apple lie Schematic

• ACS 1000 Only $8

• ISI5160 "i*™*^™

COMPUTER SURPLUS STORE

226 Phelan Avenue

San Jose, CA 95112

408-280-1740

COMFORT—

Productivity you can feel

"TheADJUSTable...adjusts tofit YOU"

INTROSPECIAL!

$149 +1

(reg. $229)

(«*

■ Clears off your desk

• Unrestrieied Legroom

• Adjustable Heighl, Depth, Tilt

■ Fils PC/AT/Portables/Mac's

• Exceptional mobility w/oplional Casters. $20

• Also: Adjustable Chairs. Printer Stands. CRT Swing Arms

Reward yourself now! Order by Oct. 31 andreceive FREE SET OF CASTERS (reg. $20 value)

SO- (713)783-3881

6776 Southwesi Freeway • Suite 150 • Houslon, Texas ■ 77074

Inquiry 106

Inquiry 83

Inquiry 426

9-TRACK MAG. TAPE SUBSYSTEMFOR THE IBM PC/XT/AT

For information interchange, backup and archival storage,IBEX offers a 9-track, IBM form at-compatible W magnelictape subsystem for Ihe IBM PC, featuring:

■ 42 M-Bytes on a singlereel.

■ IBM formal 1600 cpl.

■ Software for PC-DOS,MS-DOS.

mzi

IBEX COMPUTER CORP20741 Manila SlChaisworlh. CA 91311(flt6] 709-8100TWX 910-193-2071

:::: ibm pc/vt22o

EM220$149

EM4010$249

VT220. VT102 emulation

• File Transfer

• 132 Column modes

• Color Support

• Hot Key

TEK 4010/4014

Tektronix 4010 emulation

VT220. VT102 emulation

Picturefiles

High resolution hardeopy

Supports IBM, IBM Enhanced,

Hercules, Tecmar and AT&T.

Diversified ComputerSystems, Inc.

3775 Iris Ave., Suite IBBoulder, CO 80301(303) 447-9251Telex 9103800693 DCSINC

Tmdemtirh: VltOO - Digital Equipment; IBM PC. XT— IBM G>q>.

256K256K256K128K

64K

64K

6264LP-15

RAMS

(256K.X1)

(256KX1)

(64Kx4)

(128KX1)

(64KX1)

(64K x 1)

(8K x 8)

150 ns120 ns150 ns150 ns150 ns120 ns150 ns

EPROMS

2732A (4Kx8) 150 ns

2764 (8Kx8) 250 ns

2764 (BK x 8) 200 ns

27C64 (8Kx8) 200 ns

27128 (16Kx8) 250 ns

27256 (32Kx8) 250 ns

27256 (32K x 8) 200 ns

PROCESSORS

C8087-2 8m Hz

C8087 5m Hz

V-20 8m Hz

V-30 8mHz

2.753.254.254.40

1.201.353.15

4.053.353.755.053.655.255.65

150.00

125.00

14.00

16.00

MicroTech

(206) 364-2209, 8 - 6 Mon.-Sat.P.O.Box 27083, Seattle, WA 98125

Prices shown lor cash. Prices subject to change. Call lor curreniprices & volume discounts. Shipping & Handling: UPS groundS2.00, air $5.00 (under 1 lb.). Master Card/Visa add 3%.Wash.residents add 7.9% sales tax. Salislaclion guaranleed.

Inquiry 165

Inquiry 113

Inquiry 239

BULKDISKETTES

MAXELL

51A DS/DD 59$

Price based on quantity of 250Includes sleeves, labels and tabs

Quantities Limited Call Today!

800-222-0490

(In N.J. 201-462-7628)

Full service duplication facility24 Hour Shipment /•

MEM

P.O. Box 710 ^Freehold, N.J. 07728

Data Shade Lenses

Non-prescription Data-shadelenses reduce glare, sharpencontrast & screen out ultra-violet radiation. Choose colorfor maximum contrast withspecific CRT screen colors.Magenta for green screens,blue for amber or gray for B/Wscreens. In mens or ladiesstyles. $15.25 plus 75<p post-age and handling.

PRECISION OPTICAL

Dept. 121-X, Rochelle, IL 61068

CHANGING SYSTEMS?

What Happens to Your Data?

Does JUST Media Conversion

Solve Incompatibilities?

WHAT IF...

everything is changing, including your software,hardware, operating systems and media? Whathappens to your spreads heat data and formulas,database structures and/or word processingdocuments and codes?What do you do, and what is the cost?

We Make Incompatible Data Compatible!

The source can be mainframes, minis, micros,dedicated word processors or typesetters.ADAPS0 member.

CompuData Translators, Inc. 213-462-62226565 Sunset Bl, #301 Hollywood, CA 90028

Inquiry 223

Inquiry 274

Inquiry 73

NEW LOW PRICES

NEW LOW PRICES !

COMPUTERPRODUCTS.Inc.ORDER TOLL FREE

(800)538-8800

(CALIFORNIA RESIDENTS)

(800)848-8008

F3E

2114L

200ns

.99

4116

200ns

.35

2016

200ns

.99

4116

150ns

.45

2016

150ns

1.35

4164

200ns

1.05

HM6116 P

150ns

1.35

4164

150ns

1.20

HM6116LP

150ns

1.45

41128

150ns

4.95

Z-6132

300ns

19.89

41256

150ns

2.89

HM6164 P

150ns

3.35

41256

120ns

3.89

HM6164LP

150ns

3.45

4416

150ns

3.95

HM6164LP

100ns

12.45

4464

150ns

6.95

EPROMS

2516

450ns

2.95

2732 A

250ns

2.95

2532

350ns

3.75

2764

450ns

2.95

2708

450ns

2.95

2764

250ns

3.45

2716-5

490ns

1.95

27128

250ns

3.95

2716

450ns

2.45

27256

250ns

6.99

2716-1

350ns

-2.95

27512

250ns

29.99

2732

450ns

2.95

MC68764 450ns

15.99

2732 A-2

200ns

3.95

MC68766 350ns

16.99

8088 / 8086

UPGRADE11-20... 5 MHz... 10.95

¥-20... 8 MHz... 12.95— High Speed —

DP-25 Solder Cup

gfiBH?

^Wr?sr

i-'-jv'^y

Male, Female, Hoods 99C ea.

UV ERASERS

QUV-T8/1 $49.95

ECONOMY Model

74LS100

14

74LS125

.36

74LS260 .46

74LS01

14

74LS126

.36

74LS266 .36

74LS02

14

74LS132

.36

74LS273 .76

74LS03

14

74LS133

.46

7413275 1.96

74LS04

14

74LS136

.36

7413279 .36

74LS05

16

74LS137

.98

74LS280 1.18

74LS08

16

74LS138

.36

74LS283 .56

74LS09

16

74LS139

.36

74LS290 .86

74LS10

14

74LS145

.86

74LS293 .76

74LS11

III

74LS147

86

74LS295 .66

74LS12

18

74LS148

.86

74LS298 .66

74LS13

.36

74LS151

.36

74LS299 1.46

74LS14

M

74LS153

.36

74LS323 2.46

74LS15

?4

74LS154

1.46

74LS324 1.68

74LS20

1fi

74LS155

.46

74LS352 1.24

74LS21

?n

74LS156

.46

74LS353 1.18

74LS22

?o

74LS157

.34

7413363 1.28

74LS26

m

74LS158

.26

74LS364 1.88

74LS27

m

74LS160

.2B

74LS365 .36

74LS28

?4

74LS161

.36

74LS366 .36

74LS30

16

74LS162

.46

74LS367 .36

74LS32

,18

74LS163

.36

74LS368 .36

74LS33

n

74LS164

.46

74LS373 .76

74LS37

?4

74LS165

.64

74LS374 .76

74LS38

M

74LS166

.86

74LS377 .76

74LS40

10

74LS168

.94

74LS378 1.12

74LS42

3fi

74LS169

.94

74LS385 1.84

74LS47

Sfi

74LS170

.84

74LS386 .42

74LS48

M

74LS173

.46

74LS390 1.06

74LS49

m

74LS174

.36

74LS393 .76

74LS51

16

74LS175

.36

74LS395 1.06

74LS54

IB

74LS181

1.46

74LS399 1.06

74LS55

?n

74LS189

3.86

74LS424 2.B6

74LS63

M

74LS190

.46

74LS447 .92

74LS73

.28

74LS191

.46

74LS490 1.46

74LS74

7/

.66

74LS75

26

74LS193

.66

74LS640 .96

74LS76

?fi

74LS194

.56

74LS645 .96

74LS78

3D

74LS195

.56

74LS668 1.46

74LS83

4fi

74LS196

.56

74LS669 1.26

74LS85

4fi

74LS197

.56

74LS670 .86

74LS86

?n

74LS221

.56

74LS674 9.58

74LS90

36

74LS240

.66

74LS682 3.14

74LS91

86

74LS241

.66

74LS683 2.86

74LS92

4fi

74LS242

.66

74LS684 2.86

74LS93

M

74LS243

.66

74LS685 2.86

74LS95

4B

74LS244

.58

74LS688 1.86

741S96

4fi

74LS245

.68

74LS689 2.86

74LS107

32

74LS247

.68

74LS783 21.96

74LS109

M

74LS248

.66

81LS95 1.36

74LS112

tt

74LS249

.96

81LS96 1.36

74LS113

3?

74LS251

.46

BI13')7 1.36

74LS114

.32

74LS253

.46

81LS9B 1.36

74LS122

.44

74LS257

.36

74LS123

46

74LS258

.46

25LS2521 2.48

74LS124

2.60

74LS259

1.18

25LS2569 2.48

MEMORY

EXPANSION KIT

Erases 15 EPROMS In 20 minutesPlastic Enclosure

41256 150ns$2.89 each!

8000

8031 4.95

8035 1.45

8039 1.89

8080A 2.89

8085 2.35

8085A-2 4.89

8086 7.89

8087-3 124.95

8087-2 139.95

8088 5.95

8089 39.95

8100

8131 2.90

8155 2.35

8155-2 3.89

8156 2.89

8185 26.69

8185-2 26.89

8200

8202 8.98

8203 29.89

8205 2.98

8212 1.35

8214 3.59

8216 1.-35

8224 2.09

8226 1.59

8228 3.29

8237 4.79

8237-5 5.29

8238 3.99

8243 2.39

8250 5.95

6251 1.49

8251A 1.69

8253 1.69

8200 (continued)

8253-5 1.79

8255 1.59

8255-5 1.79

8257 1.99

8257-5 2.29

8259 1.89

8259-5 1.99

8271 48.95

8272 4.79

8274 4.79

8275 24.99

8279 2.29

8279-5 2.79

8282 3.79

8283 3.79

8284 2.79

8286 3.79

8287 3.79

8288 4.79

8289 19.89

8292 12.90

8300

8303 1.79

8304 1.79

8307 1.79

8306 1.79

8310 2.29

8311 2.29

8700

8741 8.89

8748 6.99

8749 9.69

8755 18.89

80000

80186-6 48.89

80188 4B.89

CRYSTALS

ALL STANDARD VALUES .... 1.00

CRYSTAL CLOCK OSC.

ALL STANDARD VALUES .... 4.89

DIP Switches 79$

mn»

ORBITAL SYSTEMS:

EXTENDED 80-Col. Card lor Apple lit

64K to 128K Upgrade; 2-Yr. Warranty {60.95

Z-B0(CP/M) CARD, for Apple II+, lie

Compatible with all Apple CP/M

Lifetime Warranty 69.95

IBM ACCESSORIES

8087-3 5 MHz 139.95

8087-2 8 MHz 159.95

80287 5 MHz 179.00

80286 99.00

Power Supply, 135W 89.00

Monochrome Graphic Card . 119.00

Memory Card 139.00

Multifunction Card 129.00

AT Crystal: 16,18,20 MHz.... 4.95

MACINTOSH UPGRADE

(PARTS ONLY) _ n

1Z8K to 51ZK 50.

Consists of: (16)41256, 150ns:(1) 74F253;

(17) 16-Pin SocketsResistors and Capacitors ALSO INCLUDED

APPLE ACCESSORIES

Parallel Printer Card 49.95

80-Col. card for Apple II+... 149.9580-Col. card for Apple He... 69.95

Cooling Fan 38.95

Power Supply 69.95

Joystick 29.95

RF Modulator 13.95

Disk Drive Full Height.... 159.95

Disk Drive'/! Height 129.95

Controller Card 49.95

16K Card 39.95

Z-80 Card 69.95

+ DISKETTES .

* BULK x

SS/DD 25/$17.25

DS/DD 25/$19.75

AT disks 25/$50.00

3V2" disks ... 25/$50.00

ALL DISKETTES HAVE AFULL 1-YEAR WARRANTY

6500 A

6500

6500 A

6502

.. 1.99

6502A 2.49

6504

.. 6.79

6520A 2.49

6505

.. 8.79

6522A 4.99

6507

.. 9.79

6532A 9.89

6520

.. 1.59

6545A 6.89

6522

.. 3.99

6551A 6.89

6532

.. 5.99

6545

.. 4.89

6500 B

6551

.. 5.89

6502B 5.89

6800

1 MHz

68B00

6800

.. 1.89

2 MHz

6802

6803

6808

4.89

9.89

.. 4.89

68B00 4.89

68B02 5.89

6809E

.. 5.89

68B09 6.89

6809

.. 5.89

68B09E 6.99

6810

.. 1.89

6820

.. 2.89

68B21 3.89

6821

6828

6840

1.89

13.89

.. 5.99

6BB40 14.89

68B45 6.89

6843

.. 18.89

68B50 2.89

6844

6845

10.89.. 4.89

68000

6847

.. 10.89

68000-8 9.89

6850

.. 1.89

68047 12.89

6852

.. 4.59

68488 14.89

6860

6862

6875

7.89

10.89

.. 6.89

68652 14.89

68661 8.89

6880

1.49.. 21.89

68764 15.89

68766 16.89

6883

Z-80

Z-80

Z-80A (continued)

Z80-CPU ....

.. .99

ZBOA-DMA 4.89

Z80-CTC ...

.. 1.49

Z80A-PI0 1.79

Z80-DART ..

.. 3.89

Z80A-SIO/0 .... 4.89

Z80-DMA...

.. 3.89

Z80A-SIO/1 .... 4.89

Z80-PI0

.. 1.59

Z80A-SIO/2 .... 4.89

Z80-SIO/0 ..

.. 3.89

Z80A-SI0/9 .... 4.89

Z80-SI0/1 ..

.. 3.89

Z80-SI0/2 ..

.. 3.89

Z-80 B

Z80-SI0/9

3.89

Z60B-CPU 3.59Z80B-CTC 3.59

Z-80 a

Z80B-PIO 3.59

Z80A-CPU ..

.. 1.49

Z60B-DART .... 10.89

Z80A-CTC ..

.. 1.69

Z80BS10/0 ... 10.89

ZB0A-0ART .

.. 4.89

Z80S10/2 .... 10.89

POWER SUPPLY

(Switching)

+ 1ZV

0.4 Amp

-12V+ 5V

0.3 Amp5.5 Amp

■■■fl

19.95

^^—■im

1986

- THE

IC

MASTER -

Your ticket to fast and easy

IC selections

$

119.00

MACINTOSH. APPLE II. apple Hi" and apple II+" are

Trademarks ol APPLE COMPUTED. INC.

AT is a Trademark ol ISM COIPOBATIOK

HOURS: Mon-Fri. 7:30 to 5:00

VISIT OUR RETAIL STORE

2100 De La Cruz Blvd.

Santa Clara, CA 95050

(408) 988-0697

ALL MERCHANDISE IS100% GUARANTEED

NEW LOW PRICES

Inquiry 114

NEW LOW PRICES !

SEPTEMBER 1986 • BYTE

443

/^\ I LIMITED EDITION

Beautiful 16" X 20"Limited Edition Prints,each signed and numberedby the Artist.

#B

Fascinating...And Unique!

The two 1985 Byte covers shown above are now availableas 16" X 20" limited edition prints. Each edition is strictlylimited to 1000 prints, which are individually inspected, signedand numbered by the artist. Robert Tinney. These excellentreproductions are made from the original paintinqs(not fromtransparencies or photos) to ensure accurate color fidelity.

Byte Limited Edition Classics are printed on select 100%cotton fiber stock. This is a museum grade acid free paper,highly resistant to yellowing and cracking; you will be assuredof a print which will retain its color and beauty for generations.Accompanying each print is a handsome Certificate of Au-thenticity, which is also personally signed and numbered bythe artist, and which certifies the quality and limited numberof the edition.

Price and Shipping

The price of each Byte Limited Edition Classic is $55; iftwo or more prints are ordered, the price of each is only $45.

STORAGE SPACE

Byte Limited Edition Classics are shipped flat, and are guaranteed to arriveundamaged or be immediately replaced. In fact, if for any reason you arenot satisfied with your order, you may return it within 30 days for a noquestions asked refund. Your prints will be shipped UPS Blue Label (twoday delivery), and will usually be shipped within one week of receipt of order.

Ordering

To order your Byte Limited Edition Classic(s), just clip out and mail thecoupon below. If you prefer, you may call in a MasterCard or Visa orderto Robert Tinney Graphics. 1-(504)272-7266.

Send me the following print for $55($45 each (or two or more).

Qty. # Title Amount

— . $

postage & handling $4($10 overseas) $__Total $_Bill my □ Visa or □ Mastercharge: Exp. Date:.Card No.

□ I have enclosed check or money order to Robert

Tinney Graphics

□ Please just send me your free color brochure.

Ship To:

Name;

Address:City:

State:_

-Zip:.

Mail this coupon to:Robert Tinney Graphics

1864 N. Pamela DriveBaton Rouge, Louisiana 70815

444 BYTE • SEPTEMBER 1986

II [ I I I 11 I I I II I 1 II

XX

XX

UNFAIRADVANTAGE

Advanced 286 $149500Advanced PC/XT $69900

Advanced PC/XT

• FCC/UL Approved

• IBM PC/XT™ Compatible

• (1) 360K Floppy

• 256K Expandable to 640K

• Serial, Parallel, LCD

• RGB Color Graphics

• Composite Video

• Mouse & Keyboard

• 10Mb Hard Disk (Add$200.00)

HARDWARE

Largest Selection!

A210 Color/Printer/Graphics $88.00

A220 Color/Graphics/Video/Mouse.... 95.00A230 Mono/Color/Graphics/132 Col. ..149.00A231 Color/Mono (Runs 2 Monitors). .149.00

A240 Mono/Printer Graphics 79JM

A250 Mono/Printer/Graphics/132 Col. .119.00

A260 Mono/Printer 75.00

A271 EGA/256K RAM - Short Can) .. .239.00A320 384 Multi-function Card - OK ... 99.00

A330 Multi-function - Short Card 99.00

A340 Multi-function/Floppy 119.00

A350 640K RAM Card - OK 59.00

A410 Floppy Card - 2 Drives 39.00

A420 Floppy Card - 4 Drives 49.00

A510 Parallel/Serial. Optional Serial... 69.00

A520 Parallel Card 35.00

A530 Serial Card 49.00

A610 AT 2Mb Multi-function - OK ... .139.00

A612 AT 2.5Mb RAM Card 139.00

A620 AT 3Mb RAM Card 159.00

A630 AT Parallel/Serial, Optional Ser.. 59.00

A640 AT Floppy/Hard Controller 249.00

A650 AT I/O Card - Ser/Par/Clk 95.00

A950 AT Motherboard - OK 529.00

A955 XT Motherboard - OK 119.00

A960 XT Turbo Motherboard - OK ... .139.00

AST - (1 to 2 Year Warranty)

AST5251-11 $575.00

AST5251-12 575.00

RAMpage Expandable to 2Mb Call

RAMpage AT Expandable to 2Mb Call

(Both boards support EMS & EEMS)

Advantage 128K 365.00

AST SPECIALS

REDUCED TO MOVE LIMITED SUPPLYSixPak Plus W/64K Only $166.00

Including Sidekick 1.5 & DESKview

SixPak Plus 384K Only 219.00

Combo Plus - OK Only 66.00

Combo Plus - 64K Only 79.00

(Makes superior I/O Device)

Reach Modem 1200 Baud 199.00

AST Colorgraphics Card 99.00

(Original Factory Box)

HAYES - (2 Year Warranty)

Smartmodem 1200 $385.00

HARDWARE

Smartmodem 1200B 349.00

Smartmodem 2400 (Int) 575.00

Smartmodem 2400B 535.00

Hayes Comp. 1200 (Ext) 169.95

Hayes Comp. 1200 (Int) w/SW 149.95

Hayes Comp. 2400 (Ext) 349.00

HERCULES

Hercules Color Card $166.00

Hercules Plus Graphics NEW 239.00

INTEL - (5 Year Warranty)

Above Board PC, AT, PS New Price

FREE OFFER Windows thru 12-31

8087 or 80287 thru 9-30KEYTRONICS

5150 Keyboard $159.95

5151 Deluxe Keyboard 169.95

5153 w/Touchpad 285.00

PC Jr Numeric Keypad 29.95

MICROSOFT

Microsoft Mouse $139.00

Microsoft Bus Version 155.00

MOUSE SYSTEMS - (3 Year War.)

PC Mouse w/Paint Plus $138.00

PC Mouse w/Ready & Paint 148.00

ACP Mouse w/Keyboard SALE 149.00

PROMETHEUS - (1 Yr Warranty)

ProModem 1200 w/Mite (Int) $299.00

ProModem 1200B 259.00

Alphanumeric/Options Processor 79.00

TECMAR CLOSEOUTS

List ACP

SpeechMaster $395 $195.00

1st Mate W/64K 389 169.00

Voice Recognition 995 169.00

3rd Mate 445 195.00

Powerlink 3270 1099 399.00

Phonegate 2400 695 295.00

Call for Complete List

PRINTERS

BROTHER

M1109 Dot Matrix $249.00

M1509 Dot Matrix 399.00

DIABLO/XEROX

620 Serial LQP was 1495 now $299.00

620 API LQP 349.00

620 D36 (36cps) 399.00

Tractor was 395 now $25.00

F-21 Sheet Feeder was 896 now 199.00

630 Sheet Feeder 219.00

Cable for 620 (to IBM) 29.00

Diablo P-11 or S-11 100cps 129.95

Diablo P-31 or S-31 Wide 199.95

EPSON - (1 Year Warranty)

FX85 160cps NLQ $375.00

FX286 160cps Wide 549.00

TOSHIBA

P321 "3 in 1" LQ Printer sale $515.00

.P351 24 Pin w/Serial 8, Parallel 1085.00

New Toshiba Color Printer Call

8 PEN PLOTTER - Limited SpecialRoland's DXY-800 Flatbed X-Y Plotter.Formerly sold for $995.00. While Supplylasts your price only $399.00

Inc. Parallel/Serial Interface. IBM Compatible.

MONITORS

Samsung TTL IBM Green $88.00

Samsung TTL IBM Amber 98.00

ACP 12" Softwhite TTL IBM 139.00

Mitsubishi RGB Color 259.00

TECA EGA Monitor 419.00

PRINCETON GRAPHICS

HX-12 RGB (640x240) $445.00

MAX-12E Amber TTL 175.00

SR-12 575.00

HX-12E (690x350) 545.00

Advanced 286

• FCC/UL Approved

• IBM AT™ Compatible

• 6/8 MHz SW Switchable

• 640K, 200 Watts

• 1.2 Mb Floppy Controller

• Hard/Floppy Controller

• Phoenix BIOS

• MS-DOS 3.2 (Add $85.00)

• GW Basic (Add $95.00)

• 30Mb 35mS HD (Add $700)

EGA SPECIALS!

EGA UPGRADE KITIncludes:

NEC Multisync <S7"inOOACP/EGA Card * I I »7WV

NEC Multisync $499.00

ACP RGB Color 399.00

RIX EGA Paint 59.00

Paradise Autoswitch 355.00

Genoa EGA 295.00

Orchid Turbo EGA 585JM

Quad EGA Plus 365.00

Advanced EGA, 256K, Short Card ... .365.00

EGA Mouse 119.00

PGA SPECIALS

IBM Professional. Limited Quatity

IBM PGA Card, Regular $2995. Sale 995.00

IBM PGA Monitor, Reg $995.. Sale 695.00

HARD DISK CARDS

20Mb MEGA Card $479.00

20Mb Mountain Card 599.00

Call for 30Mb Card

BEST BACK-UP

Use same back-up device we use at ACP.

AlphaMicro VCR Back-up Card $399.00

AlphaMicro VCR 699.00

NOTE: Works on any VCR.

DISK DRIVES

Toshiba FDD4403 3Vz"w/5V4" Bezel. .$129.00

Toshiba ND04D PC, XT 360K 105.00

Toshiba ND04E-G AT, 360K 115.00

Toshiba ND080E-G 1.2Mb 149.00

TEACFD-55B 105.00

DISKETTES (Box of 10)DS/DD for PC/XT (40tpi)

• ACP Generic $6.00

• Verbatim Datalife 15.00

• Maxell MD-2 19.00

• Fuji 16.00

DS/Hi-Density for AT (96tpi)

• Verbatim $32.00

• Maxell 35.00

• Fuji 26.00

SS/DD for Apple II etc.

• ACP Flippy (Use both sides) $6.00

• Verbatim 14.00

• Maxell MD-1 17.00

• Fuji 14.00

Macintosh/IBM Com. 3V2"

• Maxell MF-2DD $52.00

Fuji MF-2DD (135tpi) 52.00

Flip-Sort (75 Disks) $14.00

ACP5V4" Disk Holder 9.00

ACP3'/i" Disk Holder 12.00

Head Cleaner 5V<" or 8" 9.00

Perfect Computercare Kit 29.00

i\n j.mwiiBLimii 111111

W

20 Mb * A AQ 20 Mb * J7Q

Upgrade $449 Mega card $4/3

Package (1 Yr War) Plug-In 1 Yr War)

SEAGATE FOR AT

(Linear Voice Coil Activator)

20 Mb for AT $499.00

30Mb for AT $599.00

40Mb for AT $799.00

(Inc. Cable & Mounting Rails)

IRWIN TAPE BACK-UPfor at $399.00

PC UPGRADE SPECIAL

$-| 495 SET 0F (g) 64K RAMS

$3695 SET OF (9) 256K RAMS

$13995 8087 COPROCESSOR

$1 6995 8087-2 COPROCESSOR

$225°° 80287 - 6-8 Mhz

$269°° 80287-8 - 10 MHz

1200 Baud Hayes™ Comp. Modem

Short Card with Software.

List $299 ACP «14995

1200 XT/AT (Ext.) $169.95

10Mb HARD DISK$189.00

SYSGEN 20/20

20Mb Hard Disk20Mb TapeBack-up

New/Factory BoxPC/XT/AT Comp.External CompleteReg. Retail $3300

ACP Only

Grid Compass MS-DOS LapComputer Demo Sale Call for

Details. 100's In SQ>| AooStock as Low as Ot9

ACP SUPERLOW PRICE

$39500

MS-DOS LAPTOPSharp PC5000

Formerly sold for $1995.

2800 in stock new in

box w/factory warranty!

Vol. discounts available.

128K Bubble $79.00 Supercom 59.00Printer 150.00 Superwriter 68.00

Wordstar 129.00 Color Plotter 149.00

Modem 300 Baud 99.00

PFS File/Report 129.00

Soft Carry Case 10.00

Soft Key Plotter SW 35.00

SEAGATE ST4038-30MD

Hi-Speed, 40 mS, AT ftcnn flfl

Compatible Drive i?U99.UU

TOLL FREE

800-854-8230

CA Residents 71 4-558-881 3

OUR POLICY Inquiry 8

•No Surcharge for VISA or Mastercard.

•Volume purchasing agreements available.

•Orders subject to availablity. 'Supply limited on certain items.

•Pricing subject to change without notice.

•ACP Retail Store pricing may vary. Not responsible for typos.

Mall Order: P.O. Box 17329 Irvine, CA 92713Retail: 1310 B E. Edinger, Santa Ana, CA 92705

CORPORATE BUYERS • CALL

GILLES, L0UANE, MANDI, MIKE or DAVE

I II I II II I I II I I II I II II M M I I I I M II

Mill Order Electronics • Worldwide

ELECTRONICS

74QO

Pari No.

Price 19

Part No.

Price

SN740ON

SN7485N

55

SN7402N

19

SN7486N

35

SN7404N

25

SN7489N

.... 1.95

SN7405N

29

SN7490N

39

SN7406N

29

SN7493N

35

SN7407N

29

SN74121N

29

SN7408N.

25

SN74123N

.49

SN7410N

19

SN74125N

45

SN7414N

.45

SN74126N

.49

SN7420N

19

SN74154N

.... 1.25

SN7432N

29

SN74173N

75

SN7438N

59

SN74174N

59

SN7442N

.45

SN74175N

59

79

SN74181N

.... 1.95

SN7448N

.79

SN74193N

69

SN7472N

39

SN74198N

.... 1.35

SN7473N

35

SN74221N

.89

SN7474N

35

SN74273N

.... 1.95

SN7475N

39

SN74365N... .

59

SN7476N

35

SN74367N....

59

74LS

.. .79

74LS156

.. .89

25

.. .49

74LS05. .

25

74LS174

.. .39

74LS06. .

99

74LS175.

.. .39

74LS07. .

99

74LS189.

.. 3.95

74LS08. .

19

74LS191

... .49

74LS10. .

19

74LS193

. .. .69

74LS14. .

39

74LS221

.. .59

74LS27. .

25

74LS240

. .. .69

74LS30. .

19

74LS243

.. . .69

74LS32. .

25

74LS244

. . . .69

74LS42. .

39

74LS245

. .. .79

74LS47. .

89

74LS259

.. 1.19

74LS73. .

35

74LS273

... .79

74LS74. .

25

74LS279

... .39

74LS75. .

29

74LS322

. . 2.95

74LS76. .

29

74LS365.

... .39

74LS85. .

49

74LS366

. .. .39

74LS86. .

25

74LS367

...39

74LS90. .

39

74LS358

... .39

74LS93. .

39

74LS373

... .79

74LS123.

49

74LS374

... .79

74LS125.

39

74LS393

... .79

74LS138.

39

74LS590.

.. 5.95

74LS139.

39

74LS624

.. 1.95

74LS154.

1.49

74LS629

. . 2.49

74LS157.

35

74LS640.

... .99

74LS158.

35

74LS645

... .99

74LS670.

74LS588

... .99

74S/PI

ROMS*

74S00. . .

29

.. 1.75

74S04. . .

35

74S189

.. 1.95

74S08. . .

.35

.. 1.49

74S10. . .

29

74S240

.. 1.49

74S32. . .

35

74S244.

.. 1.49

74S74. . .

.49

74S253

... .79

74S85. . .

1.49

74S287*

.. 1.69

74S86. . .

35

74S288>.

... 1.69

74S124. .

2.75

74S373

. . 1.69

74S174. .

79

74S374.

... 1.69

74S175. .

79

74S472-

.. 3.49

74ALS

74ALS00

35

74ALS138

89

74ALS02

35

74ALS174

89

74ALS04

39

74ALS175.

89

74ALS08

35

74ALS240

1.79

74ALS10

.... 35

74ALS244

1.79

74ALS27

.... 39

74ALS245.....

.... 2.49

74ALS30

.... 35

74ALS373

.... 1.95

74ALS32

39

74ALS374

.... 1.95

74ALS74

55

74ALS573

1.95

74P

74F00....

59

74F139

... 1.29

74F08....

59

74F193

. . . 4.95

74F10....

59

74F240.

. . . 2.49

74F32....

65

74F244.

. .. 2.49

74F74....

69

74F253

... 1.79

74F86....

89

74F373.

... 2.95

74F374

CD-(

#MOS

CD4001..

19

CD4081

... .25

CD4082

CD4093

OD4013..

35

39

OD4016..

29

CD4094

. . . 1.49

CD4017..

49

CD40103

. . . 2.95

CD4018..

69

CD4503

49

CD4020..

59

CD4510

69

CD4024..

49

CD4511

69

CD4027..

39

CD4515

. .. 1.39

OD4030..

39

CD4518

.... .79

CD4040..

65

CD4520.

.79

CD4049..

29

CD4522

79

CD4050..

29

CD453&

89

CD4051..

65

CD4541

89

CD4052..

65

CD4543

99

CD4053..

65

CD4553

. . . 4.95

CD4059..

3.49

CD4555.

89

CD4060..

89

CD4566

... 1.95

CD4066..

29

CD4583

... 1.19

CD4069..

25

CD4584

59

CD4070..

29

CD4585.

75

CD4071..

25

MC14411

9.95

CD4076..

89

MC14572.

89

COMMODORE CHIPS

For VIC-20, C-64 and C-128 Personal Computers

Part No. Price

Part No.

Price

Part No. Price

6502MPUw/Clock 2.75

•6526CIA....

. . 14.95

•6572 19.95

•6507 8-Bit CPU.. 6.95

•6529SPI.. . .

.. 7.95

'6581 SID 19.95

'6508 w/RAM a I/O 14.95

6551ACIA...

.. 3.95

82S100PLA 19.95

•6510CPU 9.95

•6560VIC-I...

. . 14.95

'8701 Clock Chip... 9.95

•6525TPI 9.95

•6567VIC-II. .

. . 19.95

8721PLA 14.95

•Specs. Available @ $1.50 ea.

•6569 VIV. . .

. . 19.95

NOTE: 82S100 = U17 (C-64)

NECV20&V30 CHIPS

Replace the 8086 or 8088 in Your IBM-PC andPari no. Increase Its Speed by up to 40%! Price

UPD70108O-5 (5MHz) V20 Chip (Replaces the 8088) $11.95

UPD70108D-8 (8MHz) V20 Chip (Replaces the 8088-2) $13.95

UPD70116D-8 (8MHz) V30 Chip (Replaces the 8086 or 8086-2) $15.95

MICROPROCESSOR COMPONENTS

MICROPROCESSOR CHIPS 6500/6800/68000

Part No. Price Part No.

D765AC

CDP1802CE....

4.956.95

Z80, Z80A. Z80B, SERIES

Z80-DART

4.95

Z80A-CTC

Z80A-DART. . . .

1.895.25

Z80A-SIO/0

5.25

Z80B-CTC

4.95

6500/6800/68000 SER.

65C02 (CMOS)..

.10.95

6840

. . 6.75

Com.

Price

68000L8

9.95

8000 SERIES

80C31BH

19.95

8073N

aoeoA

29.953.95

8086-2

8087 <5MHz)80B7-2(8MHz).

10.95129.95. 159.95

8088-2

9.95

8228

. . . 3.49

8000 SERIES Cont.Part No. Price

8237-5

. . 6.95

8243

. . 2.49

8250A

. . 6.95

8250B (For IBM)

... 7.25

8254

. . 9.95

8254-2

. 11.95

8255A-5

.. 2.25

8257-5

. . 2.49

8259-5

.. 2.49

8272

.. 4.95

8279-5

. . 2.95

8748

. . 7.95

8749

. . 9.95

8751

. 38.95

8755

. 14.95

DATA ACQUISITION

ADC0804

.. 3.49

ADC0808

. . 8.95

ADC08O9

.. 3.95

ADC0816

. 14.95

ADC0817

. . B.95

DAC0808

.. 1.95

DAC1008

. . 7.95

AY-3-1015D

.. 4.95

AY-5-1013A....

. . 3.95

Part No.

Function

DYNAMIC RAMS-

4116N-15 16.384x1 (150ns)

4128 (Piggyback) 131.072x1 (200ns)

4164N-150 65,536x1 (150ns)

4164N-200 65.536x1 (200ns)

TMS4416-12 16,384x4 (120ns)

MM5280 4096 X 1 (200ns) 2107

8118 16.384x1 (120ns)

41256-150 262.144x1 (150ns)

50464-15 65.536 X 4 (150ns) (4464) (41464).STATIC RAMS -

Price

. .895.95. 1.25. 1.154.95. 1.95. .69.2.95. 4.95

TMM2016-12

2102

2102-2L

2114N

2114N-L

2114N-2

2114N-2L

21C14

2149

5101

HM6116P-3

HM6116LP-3

HM6264P-12

HM6264LP-12

HM6264P-15

HM6264LP-15

6514

2048 X 8

1024x1

1024x1

1024x4

1024x4

1024x4

1024x4

1024x4

1024x4

256x4

2048 X 8

2048 X 8

8192x8

8192x8

8192x8

8192x8

1024x4

1702A

TMS2516

TMS2532

TMS2564

2708

TMS2716

2716

2716-1

27C16

2732

2732A-20

2732A-25

2732A-45

27C32

2758

2764-20

2764-25

2764A-25

2764-45

27C64

27128-25

27128A-25

27256-25

27C256-25

27512-25

68764

68766

74S387

74S471

82S123

256x8

2048 X 8

4096 X 8

8192x8

1024x8

2048 X 8

2048 x 8

2048 X 8

2048 X 8

4096x8

4096x8

4096x8

4096x8

4096 X 8

1024x8

8192x8

8192x8

8192x8

8192x8

8192x8

16,384 x 8

16.384x8

32.768 X 8

32.768 X 8

65.536 X 8

8192x8

8192x8

256x4

256x8

32x8

(120ns)

(350ns)

(250ns) LP (91L02)

(450ns)

(450ns) LP.

(200ns)

(200ns) LP.

(200ns) (CMOS)

(45ns)

(450ns) CMOS

(150ns) CMOS

(150ns) LP CMOS

(120ns) CMOS

(120ns) LP CMOS

(150ns) CMOS

(150ns) LP CMOS

(350ns) CMOS (UPD444C).

PROMS/EPROMS

dia).

. 1.69. .89. 1.49. .99. 1.09. 1.05. 1.49. .49.4.95.3.95. 1.45. 1.49.3.49.3.95.3.29.3.49.4.49

(450ns) 25V

(450ns) 25V

(450ns) 25V

(450ns)

(450ns) 3 voltage

(450ns)

(350ns) 25V

CMOS

(450ns)

(200ns) 21V

(250ns) 21V

(450ns) 21V

CMOS

(450ns) Single +5V

(200ns) 21V

(250ns) 21V

(250ns) 12.5V.

(450ns) 21V

CMOS 21V

(250ns) 128K21V

(250ns) 12.5V

(250ns) 256K (12.5V)

(250ns) 256K (CMOS) (12.5V).

(250ns) 512K (12.5V)

(450ns) 25V

(350ns) 25V

PROM O.C

PROM T.S

PROM IS

.. 595. . 4.95.. 5.95. . 8.95. . 3.49. . 9.95. . 3.25. . 4.95. . 6.49.. 3.75. . 3.95.. 3.49. . 3.29. . 6.49. . 2.95.. 3.95. . 3.49. . 3.25.. 3.25. . 4.95. . 3.25.. 4.95. . 5.95.. 8.95. 24.95. 15.95. 16.95.. 1.69.. 4.95. . 2.95

Part No.

LOW PROFILE (TIN) SOCKETS

1-9 10-99 100-up

8 pin LP 13

14 pin LP 15

16 pin LP. 17

24 pin LP. 31

28 pin LP. 39

40 pin LP. 49

.37.46

WIRE WRAP SOCKETS [GOLD) LEVEL #3

Part No. 1-9 10-99 100-up

11

8 pin WW. . . .

.55

11

14 pin WW. . .

.69

13

16 pin WW. . . .

.75

29

24 pin WW. . . .

.. 1.19

35

28 pin WW. . . .

.. 1.39

43

40 pin WW. . .

.. 1.79

1.09

^29

1.69

.65.991.191.59

- SOLDERTAIl STANDARD (60LD 8 TIN) AND HEADER PLUG SOCKETS ALSO AVAILABLE -

The MM5321 is a TV camera sync generator designed losupply the basic sync functions for either color or mono-chrome 525 line/60Hz interfaced and camera video recorderapplications. COLOR BURST GATE & SYNC

ALLOW STABLE COLOR OPERATION

MM5321 $9.95

PIGITALKER"

U I 1 UOU ■" Applications: Teaching aids, appliances,clocks, automotive, telecommunications, language transla-tions, etc. The DT1050 is a standard DIG/TALKER kit encodedwith 137 separate and useful words, 2 tones, and 5 differentsilence durations. The words and tones have been assigneddiscrete addresses, making it possible to output single wordsor words concatenated into phrases or even sentences. The"voice" output of the DTI 050 is a highly intelligible male voice.The DT1050 consists of a Speech Processor Chip, MM54104(40-pin) and two (2) Speech ROMs MM52164SSR1 andMM52164SSR2 (24-pin) along with a Master Word list and arecommended schematic diagram on the application sheetPart No. Description Price

DT1050

Dlgttalker1" $24.95

DT 1 UOf "Expands the DT1050 vocabulary from 137words to over 250 words. Includes two (2) ROMs and specs.

DT1057. .

..$11.95

INTERSIL

Part No.

Price

12.95

. , 12.95

Part No.

Price

FE0203D

7211MIPL (Micro)

...8.49

7106EV/KH

46.95

7107CPL

7107EV/Kit

46.95

5.95

.... 8.49

7207 AIPD

7207AEV/KTL..

7224IPL

7226AEV/Kit_

10.95.99.95

74HC HI-SPEEP CMOS

.35 39

74HC02.

74HC221

1.95

74HC04.

39

74HC240.

139

74HC08.

39

74HC244

1.49

74HC10

39

74HC245

1.59

74HC14

59

74HC253

79

74HC30.

.39

74HC259.

1.19

74HC32.

45

74HC273

....1.79

74HC74

.45

74HC373

1.49

74HC75

.69

74HC374.

1.49

74HC76.

.69

74HC393

.... 1.19

74HC85

1.19

74HC595.

1.95

74HC86.

.... sa

74HC688.

.... 1.95

74HC4040

74HC132.

74HC154

74H0163

SB

74HC4538. . . .

74HC4543. . . .

74C-CMOS

29

29

25

74C04

74C221

1.19

74C08.

35

74C240

1.59

74C10

29

74C244

1.59

74C14

49

74C373

1.95

74C32

35

74C374

1.95

.49

1.19 29

74C85

74C86

74C920

9.95

74C89

3.95

74C921

9.95

74090

89

74C922

3.95

740154.

2.95

74C923

3.95

74C925

LINEAR

1.69.79

1.09.45

125

TL074CN

TL084CN

LM307CN.

LM309K..

TL497ACN

NE540H (C540H).

NE555V

XR-L555

LM556N

NE558N

LM565N

LM567V

NE592N

LM741CN

LM747N

2.19

.. 2.95

29

.69

LM320K-5

LM320T-5

LM323K.

1.35

. , .59

, 4.49

.39

... 3.95

.49

1.35

1.35

, 1.35

.49

.8929.59

LM340T-5.

LM1896N

. 1.59

ULN2003A.

XR2206

XR2207

. .99

LF347N

LM348N

LF351N

LF353N

LF355N

LF356N

LM358N

LM360N

LM361N

.99

.69

49

.59

89

89

.49

... 2.19

.. .. 1.59

1.09

.89

.99

45

3.95

3.952.49

LM2907N

LM2917N<8pin)..

CA3240E

LM3900N

LM3905CN

LM3909N

1.95

. 1.55

1.49

.591.19

.89

LM3B0CN.....

LM386N-3

LM387N

LM393N

LM399H

NE5532.

NE5534

75477

76477

.99

.89

1.19

.3.95

446 BYTE • SEPTEMBER 1986

Inquiry 178

Worldwide • Since 1974

• QUALITY COMPONENTS • COMPETITIVE PRICING• PROMPT DELIVERY

Mail Order Electronics ■ Worldwide

3DI3g

ELECTRONICS

COMMODORE COMPATIBLEACCESSORIES

Now CompatibleWith C-128!

RS232 Adapter

for VIC-20, C-64

and C-128

The JE232CM allows connection of standard serial RS232printers, modems, etc. to your VIC-20, C-64 (excluding theSX-64 Portable), and C-128. A 4-pole switch allows the in-version of the 4 control lines. Complete installation andoperation instructions included.

• Plugs into User Port • Provides Standard RS232 signal levels■ Uses 6 signals (Transmit. Receive, Clear lo Send, Request toSend. Data Terminal Ready. Data Set Ready).

JE232CM $39.95

Voice Synthesizer VIC-20 & C-64

Plug-In — Talking in Minutes!

I JE520CM $99.95

300 Baud Auto Modem

Mitey-Mo (For c-64) $54.95

Parallel Printer Interface

2K Buffer, Expandable lo 10K!MW350 (fV>rVIC-20,C-6«C-128) $54.95

TRS-80* COMPATIBLEACCESSORIES

E-X-P-A-N-D TRS-80 MEMORY

All kits come complete with documentation

TRS-80 MODEL I, III

TRS-16K3 200ns (Model III) $5.95

TRS-16K4 250ns (Model I) S5.49

TRS-80 COLOR AND COLOR II

TRS-64K-2 $11.95

New models only —TRS-CoCo-lncl. 2-50464's (41464's).. . . $12149

TRS-80 MODEL 4, 4P

TRS-64K-2 $11.95

Expands Model 4 Irom 16K-64K or Model 4P from 64K-128K

TRS-64K-2PAL $29.95

Expands Model 4 from 64K to 128K

TRS-80 Model 100 • NEC • Olivetti

M1008K. $24.95 ea. or 3 for $59.95

TRS-80 Model 100 Expansion

NEC8KR $24.95 ea. or 3 for $59.95

NEC Model PC-820IA Expansion

OM108K. $24.95 ea. or 3 for $59.95

Olivetti Model Mio Expansion

TANDY 200

M200R $74.95 ea. or 2 for $129.95

Tandy Model 200 Expansion

UV-EPROM ERASER

Erases all EPHOMs. Erases up to 8 chips within 21 minutes(1 chip in 15 minutes). Maintains constant exposure distanceof 1". Special conductive foam liner eliminates static build-up.Built-in safety lock to prevent UV exposure. Compact - 9.00Tx 3.70"W x 2.60"H. Complete with holding Iray for 8 chips.

DE-4 UV-EPROM Eraser. . . . $74.95

UVS-11EL Replacement Bulb. . . . $17.95

DATA BOOKS

30003 National Linear Data Book (82) $14.95

30009 Intersil Data Book (85) $ 9.95

30013 Zilog Data Book (85) $14.95

30032 National Linear Supplement (84) $ 6.95

210830 Intel Memory Handbook (86) $17.95

230843 Intel Microsystem Hndbk. Set (86) $24.95

MUFFIN/SPRITE-STYLE FANS

MUF60 (SPN3-15-2462) .... S9.95

Howard Industries (4.68" sq.. 60 cfm)

SU2C7 $9.95

EG&G Rotron (3.125" square, 20 cfm)

NEW PRODUCTS!

DISK DRIVE SALE!

MPI52S Double-sided 48TPI. . . IBM PC/XT Compatible!. . $89.95TM100-4 Double-sided 96TPI. ■ ■ QUAD Drive! $59.95

Expansion Memory Half-Card for

IBM-PC, XT, Portable, Tandy 1200

and Compatible Computers

Expand your computer to its tull capacity of 640K.It will accept either 6<1K memory chips (4164) or256K memory chips (45256).

EM-1 00 Expansion Memory Half ~-rt „-Card with OK RAM . . . JpDS.SO

EM-D RAM Disk and Printer „,-_

Spooler Software. . . . $o9.s5

ZUCKIsKI304RD

ZUCKI=M3c4l?D

Multifunction Board with Clock Calendar for the Tandy 1000

The Zuckerboard Multifunction Board allows you to expand the memory on your Tandy 1000to as much as 640K. The Multifunction Board comes complete with an RS232 port for your serialexpansion needs, a clock/calendar and RAM Disk Printer Spooler. The Zuckerboard Multi-function Board is made in the USA and comes with a standard 2 year warranty.

MTAN-256K Includes 256K RAM and Manual $199.95

MTAN-512K Includes 512K RAM and Manual $239.95

Expansion Memory Half-Card and Clock/Calendarfor the Tandy 1000 - DMA Controller Chip on board!

TAN-EM256K Includes 256K RAM and Manual $ 99.95

TAN-EM512K Includes 512K RAM and Manual $139.95

Options for TAN-EM256K/512K

TAN-C Includes Plug-in Clock Opfion Chip (only)

TAN-D Includes RAM Disk Spooler Software (only)

$39.95$39.95

3.5" Micro Roppy Disk Drive for

Tandy 100 & 200, NEC8201A,

IBM PC, XT, AT and

Compatible Computers

Now your IBM PC or compatible

can read and write the same

disks as your portable!

__ . no Includes 3.5" Disk Drive, Cable.

FD-lOJ AC Adapter, Blank Diskette and Documentation. . . . $179.95

Software for the FD-103 Disk Drive (Software needed for operation)

TS1 Tandy 100 TSDOS Disk Operating System Software $49.95

TS2 Tandy 200 TSDOS Disk Operating System Software $49.95

TSN NEC PC8201A Disk Operating System Software $49.95

LAPDOS IBM PC, XT, AT and Compatible

LAPDOS Disk Operating System Software $79.95

13" ColorComposite Monitor

for VIC-20 and C-64Also compatible with othercomputers with compositeoutput (i.e. Apple II, II+. lie*)

Ideal for color graphics and games

- Resolution: 260H x 300V ■ RecommendedDisplay Character Number: 960 Characters(40 Characters x 24 Rows on 5x7 Dot Matrix)■ CRT: 13" diagonal • Size: 14.6"W x 13.5"Hx 15.5"D • Weight: 25.3 lbs.

$129.95 each or 2/$219.95

RC A-3-DIN (Universal Computer to Monitor Cables for Atari, Commodore & Tl). . . . $3.49

CMON

IBM COMPATIBLEACCESSORIES

83-KEY KEYBOARD

• Identical layout as original IBM PC Keyboard ■ Highlydesirable case with palm resl • Complete wilh cable and dataJUST PLUG INI

KB83 SALE.

$29.95

Build an IBM PC/XT" Compatible!IBM-64K(2) 64K ram Chips (18) S 24.98

83-Key Keyboard $ 29.95

Roppy Controller Card. ... $ 49.95

Case $ 49.95

Monochrome Card $ 79.95

Power Supply $ 79.95

Disk Drive $119.95

Monochrome Monitor. ... $ 99.95Motherboard $139.95

KB-83

IBM-FCC

IBM-Case

IBM-MCC

IBM-PS

FD55B

IBM-MON

IBM-MB

Regular List $674.58

IBM" -Special (Incl. 9 items above) .. $599.95

Additional Add-Ons Available!

IBM-KB 83-Key Keyboard $ 69.95

IBM-ENH Enhanced Keyboard $ 99.95

IBM-ICB Integrated Color Board ... $ 99.95

IBM-EGA Enhd.Graphics256KRAM .. $299.95

IBM-20MBK 20MB Hard Disk Drive. . . . $499.95

IBM is a registered trademark ol IBM Computers

—.ifi Universal 7JT"

fjEW-1 64K/256K w£)ty

Printer Buffer

IQHNATHON FREEMAN DESIGN? ~[

s

The UBUFFER Universal Printer Buffer is a hi-speed databuffer that accepts data at a high rate, and then outputs thisdata to your printer. You save valuable computer time. TheUBUFFER can be connected to practically any computer orprinter. There are lour possible combinations: 1) Serial toSerial, 2) Serial to Parallel. 3) Parallel lo Parallel. 4) Parallelto Serial. Manual included. Size: 9-1/3"L x4ib"Wx 1VH

UBUFFER-64K..UBUFFER-256K

$199.95$229.95

-jmmm^ • IBM—

I Compatible!I, DISK DRIVES

FD55B Teac 5V. DS V,-Height $119.95

SA455 Shugart 5'/.' DS ft-Height $119.95

TM100-2 Tandon 5V.1 DS Full-Height. . . . $109.95

JMR 5V4" DISK DRIVE ENCLOSURES

Complete with power supply, switch,power cord, fuseholder and connectors.

DDE-1FH $69.95

Houses 1 Full-Height 5V Floppy Drive.

DDE-2HH $79.95

Houses 2 Halt-Height 5 V Floppy Drives - Vertical

HDDE-1FH $199.95

Houses 1 Hard Disk Drive

$20 Minimum Order - U.S. Funds OnlyShipping: Add 5% plus $1.50 Insurance

California Residents: Add 6% or 6 V'2% Sales Tax

Send stamped,

self-addressed envelope

to receive a Quarterly

Sales Flyer - FREE!

9/86

******

Spec. Sheets - 30C eachPrices Subject to Change

Send $1.00 Postage for a

FREE

1986 JAMECO

CATALOG

01986 Jameco Electronics

1355 SHOREWAY ROAD, BELMONT, CA 94002 • PHONE ORDERS WELCOME 415-592-8097 Telex: 176043

Inquiry 178

SEPTEMBER 1986 'BYTE 447

California Digital

17700Figueroa Street • Carson, California 90248

IBM Compatible Computer | 21 Megabyte Gold Card

\

DATAPRODUCTS-

i 256K Expandable to 640K on Motherboardi Double Sided Double Density Disk Drivei IBM Type Keyboard (with LED indicators)

• Floppy Controller Card

• Eight Expansion Slots

• 135 Watt Power Supply

The Eclipse 16 is an outstanding value in IBM Compatible Computers. After care-ful research and evaluation we found it to be the most reliable unit.Our computer includes some of the newest features available, such as the4.7MHz, multi-layer motherboard with 256K of RAM upgradable on board to 640K.A generous eight expansion slots and 135 Watt power supply give you ampleroom and power for add-on boards. The enclosure has an easy-access flip top lidmaking upgrades a breeze. And our floppy controller supports up to four drives, soas many as three additional drives can be used. Finally, each computer isconfigured and fully tested before sending it to you.

Satisfaction Guaranteed! We're really excited about this new unit, and so sureyou will be too... that you may return the Eclipse 16 for a full credit towards an IBMPC if you are not completely satisfied.

OPTIONS

RGB Color Monitor 199

TTL Monochrome Monitor 139

Microsoft Mouse 139

Upgrade from Floppy Controller to Disk I/O2 drive controller, clock/cal., software

20MB Hard Drive w/Controller $495

Additional Drive-Installed 99

Irwin 10 Meg. Tape Back up 489

Upgrade from 256K to 640K RAM 79

8087 Math Co Processor 119

Color Graphics Card 79

Monochrome Graphics Card 99

parallel, serial, and game ports 79

1200 Baud Internal Modem w/Software 179

The fastest, lowest powered, longest warrantied, most durable, highest

capacity, most reliable, lowest priced HARD-DISK-ON-A CARD

available in the world today.

• 65ms Access Time - Fastest Available • Automatic Head Unloading - Protects Heads andMedia ■ 2K Sector Bulfer - Increases System Throughput - High Reliability: 28,000 hr. MTBF ■Wo one else even close • 15.5 Watt Power Consumption - Lowest Available • 2 Year Warranty •Longest Available

WERE $695... GET 'EM WHILE THEY LAST FOR JUST $533^/°,

/»

NOW YOUR COMPUTERCAN READ!!

Omni-Reader... the first opticalcharacter reader designed andpriced for the small computer

COPY:

•Manuscripts •Contracts -Articles•Forms -Invoices

APPLICATIONS:•Mailing Lists -Editing -Data BaseManagement -Transfering informa-tion between incompatible systems

Uses a standard RS-232 serial port hookupto interface eaisily with your computer.

V

1200 BAUD MODEMS

AVATEX1200

99

This 300/1200 baud modem matches the design specsof the Bell 212 A, feature by feature, bringing you reliabil-ity, impeccable transmission and easy operation.Hayes Compatible, except for "S" register. Communi-cation software included.The AVATEX 1200, at $99, Is a steal!

SMARTEAM 1200

ECLIPSE 2400

BAUD MODEM

<299

The Team 212A offers all the features of the HayesSmart Modem 1200 for a fraction of the price. Now isyour opportunity to purchase a 1200 baud modem atthe price of a 300 baud modem.

s,'oGoN^SN MARK VI

The Anchor Automation Mark VI is a 300 baud directconnect modem that plugs into any slot of your IBM/PC.This modem supports auto answer and auto dial capa-bilities. Other features include telephone number stor-age, send / receive text files, single key-stroke dialingalong with many other functions provided on disk. TheMark VJ was originally priced at over $300.

. Hayes & Bell 212A/103 Compatible

• CC1TT V.22, V.22 bisThe ECLIPSE 2400 modem is a microprocessor-based full or hall-duplex modem incorporating the latest in high speed datacommunications capabilities. It also accomodates computers and ter-minals equipped with an RS-232 port allowing communication withother compulers or timeshar-ing systems either locally or remotely.Compatibility, Versitllity and Perlormance are yours In aconfiguration designed to provide years of reliable operation.

MODEMS

Eclipse 1200 100% Hayes, with status lamps. EDP-1200 149.00

Eclipse 1200B internal with software EDP-1200B 139.00

Eclipse 2400 External. Hayes Compaliple EDP-2400 299.00

Avatex 1200 baud external, Hayes AVA-1200 99.00

Hayes Smartmodem 2400 baud modem HYS-2400 599.00

Fujitsu 2400/1200 baud auto everything. FUJ-1935D 459.00

Team 1200 Hayes Compatible, 300/1200 baud. TEM-1200 159.00

Smarteam 1200B IBM 1200 baud card TEM-1200B 159.00

UltraLink 1200 data and voice on same line. UTL-1200A 99.00

CTS 212AH 1200 baud, auto dial CTS-212AH 179.00

Prometheus 1200 super features PRM-Pl 200 289.00

Prometheus 1200B internal PC PRM-P1200B 279.00

Signalman Mark VI. 300 baud internal PC SGL-MK6 49.00

Hayes Smart Modem 1200 baud, auto dial HYS-212AD 369.00

Hayes 1200B for use with the IBM/PC. 1200 baud. HYS-1200B 299.00

Hayes Smartmodem. 300 baud only, auto dial HYS-103AD 199.00

Hayes Chronograph, lime & date HYS-CHR232 199.00

Seagate $400

20 MEGABYTE ^ W WWINCHESTER •■ W W

HARD DISK DRIVE

Quantity Two

Five Inch Winchester Disk Drives

Bach two t

SEAGATE 225 20 Meg. V, HI. 329 299

SEAGATE 4026 26 M.35mS. 759 729

SEAGATE 4051 51 M.35mS. 995 959

FUJITSU 2242 55 M.35mS. 1599 1529

FUJITSU 2243 86 M.35mS. 2095 2019

R0DIME RO-202E 27 Meg. 659 629

RODIME RO-203E 40 Meg. 995 959

R0DIME R0-204E 53 Meg. 995 959

CONTROL DATA 94155-86 M.1829 1779

MAXTOR XT1140 140 Meg. 2995 2929

HONEYWELL 85M. 27 mS. 1795 1695

TOSHIBA MK5670M.30mS.1789 1729

TANDDN 502 10 Meg. 419 379

• Winchester Controllers for IBM/PC •XEBEC 1220 with floppy controller 229NATIONAL COMPUTER 5004 129DTC 5150BX 139OMTI 5510 hall card 139ADAPTEC 201OA software Install 189WESTERN DIGITAL WD/1002 139

• SCSI/SASI Winchester Controllers •XEBEC 1410A 5>/<" foot print 219OMTI 20L 119

• Winchester Accessories •

Installation Kit with manual 10

Winchester enclosure and supply 139

Dual 20/34 cable set 25

Switching power supply 49

TOLL FREE ORDER LINE

(800)421-5041

TECHNICAL & CALIFORNIA

(213)217-0500

California Digital

Carson, California 90248

Advanced 286 AT Compatible

'1495

Phoenix BIOS • 200 Watt Power SupplyMS-DOS 3.2 • GW Basic • 6/8 Mhz. Selectable

The Advanced AT is everything you ever wanted in

an IBM/ATCompatible. Complete with 640 k/byte ofmemory, (expandable to 1 Meg.) 1.2 M/Byte floppydrive, hard disk controller that will support upto 140Megabytes of Winchester storage and on board realtime clock.

The Advanced AT/286 compatible will run every pro-gram writter for the IBM/AT as well as the PC/XT. Highresolution (640 / 240) RGB color monitor $299 additional. 360K drive and 40 Meg. Winchester availble.Fully FCC commercial and consumer approved.

MASS STORAGE ALTERNATIVE

TAKE IT WITH YOU!

Bernoulli Box

was S3540 now only

i

The Bernoulli Box by Iomega, features 10 and 20 megabyte removable car-Iridges. and delivers reliability, expandability, transportability, security andspeed in one versatile subsystem. It lets you transfer megabytes of informationsafely and swiftly lor primary or backup storage. Or combine several softwareprograms onto a single cartridge for easy switching from one to another.Reliable... the Box has incredible resistance to shock and vibration completelyeliminating the possility of head crash.

Expandable... grow at your own pace by adding inexpensive cartridges. Whensecurity is essential, don't lock up your system... just lock up the cartridges.The Bernoulli Box delivers preformance that often exceeds the best of hard diskspeed and the convenience of floppy disks. At these prices don't be caughtwishing you had one after a loss of irreplacarjle data.

List Our Price

10+10 Meg. A2210H S3450 1595

20+20 Meg. A2220H 4540 2095

Bootable Controller 255 159

10 Meg. Cartridge 79 49

20 Meg. Cartridge 99 65

PRINTERS

MATRIX PRINTERS

NEC/P7 132 col. pari Interface NEC-760

SlarGeminiNL-l5,300cps, 136col 24wirehead STR-NB15

SlarGem>niNX-10,120cps'30cps NLQ. tractor STR-NX10

CilizenMSP/1CFT!60char/5oc CIT-MSP10

Panasonic KX1091 120 cps dfflfl. 29 NLQ tracl 8. friction P4N.KX109!

Toshiba 351P/S. 240 char/sec 24 wire bead TOS-351 PS

Toshiba 34 lPS.'E par! I80cps 24wirehead TOS-341PSE

Oktdata 182P/IBM parallel 9'. ?" paper OKI-1B2P

Okidaia 192A parallel interlace. 160 cliar/suc OKI-192A

Okidala 84P parallel 15" paper OKI-84P

Epson LX-80 10" 120Char/sec. EPS-LX80

Epson LQ800 near letter quality EPS-LO800

Epson FX85 1 GO cps draft32 cps NLQ. 340 dot/men EPS-FX85

Epson FX286 132 col. 200 cps 29 cps NLQ, graphics. EPS-FX286

Dataproducts B-600-3. band printer 600 LPM DPS-B6O0

Pnnl'onm P300 high speed prmloT 300 lines per minute PTX-P300

Piinlronn P600 ulira high speed 600 lines per minute PTX-P600

WORD PROCESSING PRINTERS

PRO-F10P

PTO-F55P

NEC-OB 10

NBC-8830

NEC-3550

SP.D-EXP600

SRD-EXP8O0

DBL-620

JUK-6100

JUK-6300

Stammer F10 (6400) parallel. 40 char/secSame as above but 55 ctiar/soc , 50 pin Diablo interlaceNECB810 55 char/second. scriaUntertaceNECBB30 55 char/sec. par I interfaceNEC3550 popular punier designed lor the IBM/PCSilver Rood EXP600, 25 cps 10/12/15 pilch. senal/parTSilver Reed EXP8O0 same as 600 but 40 char/secDiablo 620 proportional spacing. h<MZ.& Wfl lab 20 cps.Jukioioo. I8cr.ai./sec-Juki 6300.40 char. /sec.

659 0038900359.0025900259001099 00759.00239 00379 00695.00259.00629.00399.00599.006985 003995 00579500

429.00559 001179 001179 00819.00319.00729 00299 00359 00669 00

■

F/10 Daisy f

Wheel Printer

429

The TEC F-10 Daisy Wheel printer is the perfect answer to a reasonablypriced 40 character word processing printer. While this printer is identical toC.ltoh's F-10/40 Starwnter printer, it bears the name of a well known compu-ter manufacturer

This 40 character per second printer auto installs with Wordstar and PerfectWriter. Features extensive built-in word processing functions that allow easyadaptability and reduced software complexity. Industry standard Centronicsinterface provides instant compatibility with all computers equiped with aparallel printer port. The TEC F-10 accepts paper up to 15 inches in width.These printers were originally priced to sell at over $1400. Through a specialarrangment California Digital has purchase these units from the computermanufacturer and is olfering these printers at a traction of their original cost.Options available include sheetfeeder, tractor feed, buffered memory and anassortment of printer cables for a variety of computers.

PLOTTER

'179*

The Comrex ComscriDer I is the ideal solution to make short work ol translating financial and

numeric data into a graphic presentation Many ready lo run programs such as Loins 1

Visi-on and Apple business graphics already suppon this plotter

The Comscnber I leaiures programmable paper sizes up to 811 by 120 inches. 6 inch per

second plot speed and 0 004 slep size Easy to implemenl Centronics interface allows Ihi

Comscnber I immediale use tvnh the printer pon ol mosi personal compuiers

The Comscnber I is manufactured tor Comrex D< the Enter Computer Corporairon The

ploiier 15 marketed by Heath Kit and also sold under Enters own Sweet P Label This is

your Opportunity lo purchase a plotter wnich was originally priced at 5795 lor only $219

Also available is a support package which includes demonstration software, mierlace cable.

a multicolor pen assortment and a variety ol paper and transparency material

Link 300

The Quick-Link 300 gives you an instant link to any dial up data base. Such asDow Jones. Western Union or the Source. The Quick-Unk has four userprogrammable log-on keys, allowing the operator, with only one key stroke, todial the data base, log-in and give the password. All this information is perma-nently stored in non-volatile RAM.

Features include video output to television or monitor, auto dial, auto-log, fullsized keyboard. 300 baud modem and 1200 baud auxiliary printer port. All thisis available for only $59.

SONY

53W Floppy Disk Drive

3 1/2" New IBM portable compatible

'139 i

SV*" disk drive

SALE '89

Your Choice 48 or 96 TPI drive.QUME MODEL 142* 48 TPIMITSUBISHI 4853 • 96 TPI

Quantity Two

TEAC FD5SBV half heightTEAC FD55FV 96 TPI, half ht.TEACFD55GF for IBM ATPANASONIC 455 Half HeightPANASONIC 465 Vz Ht. 96TPITANDON 100-2 full heightMITSUBISHI new 501 half ht.MITSUBISHI 4853 96/TPIV2 Ht.MITSUBISHI 4854 8" elec.QUME 142 half heightSwitching power supplyInstallation Kit with manualDual enclosure for SVa" drives34 pin edge connectorsScotch head cleaning kitFlip & File Storage tubs

One Two Ten

109

99

89

119

109

105

169

159

155

109

99

B9

119

109

105

129

125

119

129

119

109

. 99

89

89

295

285

275

99

89

89491059

519

UME

*119

: Inch Single Sided DrivesQUME 841 single side 129 119 call

SHUGART801R 359 359 354

SIEMENS FDD 100-8 119 115 109

Eight Inch Double Sided DrivesQUME 842 "QUME TRACK 8" 189 179 callSHUGART SA851ROLIVETTI double sidedREMEX RFD-4000MITSUBISHI M2896-63 Vi Ht.Dual 8" enclosure with power and fanSwitching power supplyInstallation kit with manual

495 485 475189 179 159179 169 159459 449 40925989

KSemOT

Quantity „100 *

99

DYNAMIC MEMORY

4164 150ns. 128 refresh41256 150ns. 256K

ICM-4164150ICM-41256150

1-100 100+ 1000+

1.394.59

■ 4 \

VISA

Shipping: First five pounds $3.00, each additional pound $.50.Foreign orders: 10% shipping, excess will be refunded.California residents add 6'/?% sales tax. • COD's discouraged.Open accounts extended to state supported educational institu-tions and companies with a strong "Dun & Bradstreet" rating.

SEPTEMBER I986 • BY

0. .E CD= T3 'CD O '

■5 CO c= ■

•9 ai ~

co .£ 9>

Q)0

CO =1 Q)CD CD >

x ■£ co

X.^TCM

«Oi-

CD

00

= S CM

</»

0

X

CO

c

CD

CO

CD

CO

cs

a

isi

a.-** x o

CO CD u O

>_ o

- 3 S -5

O — T3 ■=

o 8 - R

„ co c °

O CD CD a)D- = 3^ X <D v.

Sxi2 52

CO

o

cd n

.D CD

3|

CD =5

5 8

CO >-> o

CD JSP

0)"D

c 5

O CD

z z

O (O <D Tt t i

< T- T" » "

S OOOIOIK)

>> -t

0too

E

i « c

: ca

& I

3 m ^

fe 1 -i2 § o

S to "o n co 0 t

<CO«O-^SfcD-C0*

^co^S^^B g <D co

° N N fflffl >->-B >«

mlIs5g:»Jo„ *+

222°CM Oh CD |- C ^" **

COCO

aa

CD

CD

8 J

s«

^co >

< en xi ° o -*

». i 3 c .2 ^ >-

cd

9 .9.

CO 0 t

r- CO CO

F, ra 5

o o >

a) io

X? c

>,?

x v e

CD O C

cD^fN^nU-incoiiO

COCO

_ O- H I

5* x w

Ogofii

o

co o 2o o. E

■d

* -D

z «2m

*d

OS

c rawO coO2 a. o_

x w

jo o c

CD

f- >*-c5

Z .*O !5

Fo

Q.- O

E CL^

01 "cD ^O = <DC CO "□

5i<

<oo

ciO)

0. T—

X 4A

0000

o *"o. ^

x <A

i i; co

CO 3 3

uj < Q

rj x x

m gioi

Z I X

o 5

co 00

CM «* I

mq£C

< x>P2S

UJ

z -I

450 BYTE • SEPTEMBER 1986

Inquiry 177

o Si

I- CT> Q>I/) ^f X-, CM •*

£ E5 °

ffi <

O

o

(0

o

a a

> CO

'ra c"D o

>■•-^5

0 CO

Si

to

Q. t

o aj

o E

"* as

i_ to

Si

-c o

0)

o o

HI 1/5

in

O)

•! SI G)

G>CO

to

eg

**■

Iin

o

o

asW

p

en

CN

T

^

*

«

.1

>» >»

■

a a.a. a.

3 3U) (0

1

J.

L. 1-

r

5 5

^

a. a.ran —

5

>3£

m a

CO 111

B

Sin en

O O O) o>

a) m cj) oi

en m CD CO

.TOO

.£ .2« 5 Q (5

0) a; w. l.■S « B «£ £xx

CD CD CD CD

ssss

• H I- I- Ki in in in in

E «

3 3

™T3 E

M fi 3

B*!

£ <C l/l

Sj>»

5 atn

DC c

s s

Inquiry 177

SEPTEMBER 1986 • BYTE 451

&s IC-EZ

W Ih-tL %,

IC DIP REMOVAL TOOL

saves TIME & MONEY

Safely Removes Costly IC DIP'S

Quickly and Easily from Sockets.

Dense Boards - No Problem. Doesn't

Bend Pins, Destroy IC'S or Sockets.

Qty. 1-100 100-250 250-500

Price Ea. 7.50 6.50 5.50

OMNITRON

INC.

P.O. Box 388, Saline, Ml 48176

Michigan Residents add Sales Tax

EVSAN

P.O. Bgx 211)3

(415) 991-1051

Daly City, CA 94017

Math Co-Processor;

DYNAMIC RAMS

142.00162.00

HEC 100ns 60.00 27512 250m, 17.00

41256412564164

120ns150ns120ns150ns120ns150ns150ns

4.652.982.651.101.004.253.954.00

27C256 200ns

27C256

27256

27128

2764

2764

2732A

2732A

STATIC RAMS

250ns250ns

250ns200ns250ns200ns250ns

7.006.505.203.603.753.203.903.50

43256L

6264L5564L

5565L6116

150ns150ns150ns

3.25

1.45

TERMS AND CONDITIONS

1} PRICES SUBJECT TO CHANCE. PLEASE CALL FORCURRENT & VOLUME PRICING.

2) MINIMUM ORDER - $10.00

3) SHIPPING & HANDLING: UPS GROUND - S3.00(One Pound} UPS AIR - $4.50California Residents add 6.5% sales tax.

4) 3*6 SURCHARGE ON CREDIT CARD CHARGES.

ALL MERCHANDISE 100% CUArtANTEED-PROMPT DELIVERY

CALL FOR PRICE LIST

FREE CATALOG

Outstanding prices on computeraccessories for your computer andworkstation. Our catalog features awide selection of quality productsto meet all your accessory needs.Call or write today to receive yourfree catalog.

LINTEK COMPUTER ACCESSORIES

POB 8056, Grand Rapids. Ml 49518(616) 241-4040

Inquiry 257

Inquiry 72

Inquiry 199

J& EPROMV PROGRAMMER

APROTEK 1000

ONLY

_-?i $265

oo

COMPLETE WITH

PERSONALITY

MODULE

117 AC POWER-RS-232 CONNECT

-6 BAUD RATES - HANDSHAKE TO HOST

ALLOWS READ, WRITE, VERIFY & COPY

Comes complete with IBM-PC, Apple, or CPM(Specify Computer) Driver Program on Disc.

Programs the following 5 Volt 24 or 28 pindevices: 2716 series through 27512, 25xx series,68764 plus others. Please Specify PersonalityModule desired with order. Additional PersonalityModules only $15.00 ea. Full 1 year warranty.

CALL 1 800962 5800 OR WRITE

Kin A AvF.NIDA ACAS0CAMARIUO CA 91010

Inquiry 25

i

XT/640K 2DR. MONITOR $849

XT/640K 1DR.10MEG HD $1099

XT/640K 1DR.20MEG HD $1299

AT/640K 1DR.20MEG HD $2299

COMPACT XT/640 2DR $1099

TURBO BOARD-ADD $25

CITIZEN 120D PRINTER $199

W/ MULTI I/O CK7CL GAME-ADD $75

W/COLOR MONITOR & CARD-ADD $250

W/5151-5251 KEYBOARD-ADD $29

ALL UNITS INCLUDE MONITORS, PRINTERPORTS, GRAPHICS CARDS & KEYBOARDSMICRO-TECH COMPUTER CO.

406-A MERCEDES ST.

FORT WORTH, TEXAS 76126

MasterCard/VlSA.. .Add 4%

Information & Orders Outside

Texas Calls of Texas

(817) 249-1951 800-826-1749

PC EXPANSIONS

AST SixpackPlus (384 K) S199

SixPakPremium (1 M) S429

Advantage (1.5 M) S519

Advantage (3M) S799

Rampage (2 M) S459

RampageAT(2M) S659

INTEL AbovePC/AT[2M) call

Quadboard (384K) $ 199

QuadportAT: 139 EGA+:S399

HERCULES graphics board S209

Color Card S159

HAYES Smartmodem1200B . .. S359

Smartmodeml 200 S389

Maynard OnBoard20 S669

Sandslar Series call

MaynStream Tape from S689

WD File Card (20M) S639

Seagate 20M Hard Disk .. S459

PiusDevelopment20MHDCard.. S699TandonTM102:i 19.TeacFD55Bv S109Toshiba lor AT: 109.. .. 12M:S159Set of 9 (64K) :10 l256k|S278087-3 SI 19

CALL

Monitors...NEC. Amdek. Princeton Gr

Printers...Citizen. Panasonic. Toshiba

LaserPrinters...Cannon, Qume. HP

All Popular Software

VLM Computer Electronics

10 Park Place • Mornstown. NJ 07960(201) 267-3268 • Visa, MC. Check or COD.

Inquiry I4I

MAGNAVOX MONITORSPROFESSIONAL mum' U"°

Monochrome Monitor

• TTL input • high resolution (1000 lines) • 25 lines x 80column • 12" non-glare screen • built-in tilt stand

No. 96710-green display S87°°

No. 96720 amber display S9700

Color Monitor

• Accepts RGB, TTL, RGB analog, & composite videoinputs • 25 lines x 80 column • 640 dots x 240 linesresolution • 13" etched screen

No. 97800 S298°°

The Wholesale Outlet • Order Toll Free

1 Interstate Avenue 1.6003444387 (NON-NYS)

Albany, NY. 12205 All other calls & NYS call

(St8| 459-7883MCA/ISA OH COD CASHAll orders shipped FOB Albany • Prices subject to change

Single Board Solutions

Introduces

SBS-52 Controller

8052 Basic Vl.l

32 Kx8 Ram

2 Real Time Clocks

32 I/O Lines

Programs Eproms

Small 3.00x5.00 Size1-10 $179.00

Single Board Solutions

P.O. Box 3788Salem, Oregon 97302Phone (503) 581-6570

Because <'s ongjnqJ objective was ic protect soit-3 from unauthorized use. It's ceiled the SOFI WARE St NTINElBut mayDe we'll change the name to REVENUE GENERATOR.since we've discovered its true value to ou< customers Bu'whatever we can it everyone ends up with numerous oenefifsIrom this hatdwote key with unlimited "lacks'

SOFTWARE DEVELOPER BENEFITS

• Piohibils unauthorized useof software

• No need 'or copyprotection

• Algorithm technique{never a fixed response)

• Virtually unbreakaole

Higher level languageinterfaces included

• 100 times taster (1ms)man fixea iesponse devices

• Minimal tmplementalion effort

• Runs under DOS and Xenix, onIBM PC. AT. XT & compatibles

SOFTWARE USER BENEFITS

• Unlimited backupcopies • Pockelsue

• No floppy required with • Transparenthard disk • TransportaDle

o

EVALUATION KIT AVAILABLE

tele. 386078

17971 SKYPARKCIBCIE5U1IEE. IRVINE. CA927U

(7U)26I022B

Inquiry 378

Inquiry 311

Inquiry 294

icroProducts

nternational

niemauonai 7i4/898-0840 " /

Telex: 887841 XORDATA HTBH Fax: 714/897-3363► 15392 Assembly Lane, Unit A*Huntington Beach, CA 92649 •<

LOOK

what's.Inside!

The XAT is out most versatile and powerlulsystem Using Intel's 80286 processor, thesystem runs at 6 and 8 MHz with a true

16-bil data bus Comes standard with a 3men Add-On board 2 parallel S one serialport monitor, keyboard. DOS 3 1 two1 /height DS DD 1 2 meg floppies

5 Complete Systems

ii •■

This standard System is as compatible withIBM as it can be. Featuring a 4-layer mother-board. 8-slot expansion, up to 640Kmemory on the motherboard, and the 6 67MHz TURBO mode. Also included DOS 3.1keyboard. 135 wait power supply, TTL 720348 resolution video card, green or ambermonitor, serial 8 parallel ports. Real TimeClock and software

Amsterdam ■ 020-45-26-50

2 MB Expansion Board

Our 1986 Catalog isHOT} off the press!

/ ' N Dealers! Check our9 * Profitable Discount

Pricing!

The perfect choice lor the system integratorwho needs the IBM compatibility, but not inthe standard PC cabinet Tins model featureshinged and removable sides up to 3 Mieighlperipherals out Iront front mounl AC switchand rear mount 135 watt power supply Alsomakes an ideal Host or File Server" unitin multi-user configurations1

The XTJr. is only junior in size' With up to640K memory on the motherboard and fourexpansion slots, this stand-alone system isalso great for workstations in a networkingenvironment. It can be upgraded to theTURBO two speed motherboard and youcan also add up to 2 serial & 2 parallel portsor any IBM compatible expansion card. Aperfect word processing data entry system.

>Irv Compact

Th s is truly the afloidable portable, and we II |build it to your Specifications. Need a 20meg hard disk and 20 meg tape with 640Kmemory in your portable'' No problem1 TheXPC Compact comes standard with a 9"amber TTL monitor, 135 watt P S. 256Kmemory, two 360K drives. Real TimeClock Calendar w battery Back-up. serial and |parallel ports, and our TURBO Motherboard

24 Add-On Cards

Germany

This board satisfies Ihe new approach suggested byINTEL and Lolus 1-2-3. Also may be used on ourXT-SBC TURBO boad for memory based at OK.

Hard Disk Controller

This Western Digital controller handles 1 or 2 drives. 5to 140 megabytes with minimum software conligura-hon Features DOS 2 1 & 3 1 compatibility and ST-506Interface

384K Multi-Function

A Mlllli'tunction board featuring Parallel Porl Serial PoilGame Poit. Real Time Clock Calendar with BatteryBackup. Expand to 384K all Cables. PnnlSpooler andRAM Disk Software, and Manuals.

4 Meg Token Ring

Connect your workstation to an existing 4 MegabyteIBM token ring system or build up your own IEEE 802 5standard system The lowest possible cost for100DDindustry standard compatibility

AT H.D. & Floppy

Mono & Color Graphics

7 PAK Multi-Function

PROM Laser

This new Western Digital comno boara with us ff-speedVLSI technology will give you a data transfer rate 50Jutaster than the existing combo board in Ihe AT Runsbolh 360K and 1 2 meg floppy disk drives

Supports Iwo levels of graphics and text in compositemonochrome or RGB coloi Low resolution 320 x 200pixel, high resolution 640 x 200 pixel

Fealures Floppy Controller, Parallel Port Sen:(optional 2nd Serial). Game Port. Real TimeClock Calendar with Battery Back-up, RAMdisk, Print-Spooler, all cables & manuals.

Hi-speed algorilhmes will burn 2716. 2732. 2732A.2764 (in 52 sec). 27128. 27 256 EPROMS under soft-ware control right in your PC Zero Force InsertionSockets, Software, and Manual.

35 Components

Bombay ■ 357172

Motherboards

XAT TURBO XT-SBC

RTC Calendar • 4 7 7 & 8 MHz clock

6 a 8 MHz deck • Serial S Parallel

8-slol expanson • 4-layer PCB design

Iniel 80286 • RTC Calendar

XPC TURBO XPC-XT

J 17 & 6 67 MHZ • Standard 4 77 MHz

4 layer PCB assign • up to 640K memory

6-slot expansion • 8-siol expansion

up lo 640K Memory • standard 8088 CPU

80882 processor ■ 8087 socket avail

Power Supplys

XT 135 watt XT 150 watt

• I35w switching ■ Whisper fan

• Whisper Fan • Hi-oulpul 150 wall

• Side AC swttcn • 4 DC conneciors

• -5V-15A -5V-5A • + 5V-15A -5V-5A

• -12V-4 2A -12V-5A* + 12V-5 5A - 12V-5A

AT 200 watt XTC 135

ml

■ 200 Watt power • Rear Mount

' Extenor AC switcn • Rear On OK switch1 4 DC power conn • extra AC outlets

i +5V-20A -5V-5A • +5V-15A -5V-5A' +12V-7 7A -12V-5A" +12V-4A -12V-5A

3 Sub-Systems

Cabinets

TheXT]r. rabmehsonly 3" * 16 5" x 15 ~ yet itwill hold a standard XT compatiule motherboardIncludes a switching power supply From panelcut-out lor a hall-neight floppy or hard disk

HHSiiiiiillil I

Our XPC-XT cabmel has an 8 slol back panelwith additional cul-ouls lor iwo RS-232 I 0 portsFeatures mounting lor up to lour halt heightperipherals

-!

Keyboards

AT

This Keyboar'd'ls standard equipment wiirrSlfof our XAT systems, Out Ihe layout is so well'iked, we're offering it here.

XT

1

Our volume purchases o( these IBM stylemils allows us lo lower the price once agai

The right choice for an external add-on cabinet1Add-on a lloppy. lape Dack-up or up lo 33 meg olhard disk |hall-heighl| Swilchmg power supply isincluded

5051

Now a fully selectnc unil at an affordableprice Features a 10-key numeric pad & aseparate cursor pad

I

IVMIM3WI IUC

I Panasonic ■_SeagateTEAC ■Tulin

Drives

Archive

Irwin

Maxtor

Memtek

Miniscribe

i Panasonic

Seagate

TEAC

Tulin

This full height cabinetwill hold a Tape B;ick-upwith lull or ' iheight HardDisk inside (or Iwo HardDisks)

A perfect cabinet forTape or Hard Disk aaddition to your

Choose from single 'jheight dual 'jhetghl or '^heightIh lull height base All Sub-systems include con-fers cables soltware, and manuals

Inquiry 212

3 Networks [ Cassette Training 1 Int/Ext Modems

m ■

One way to stay ahead ol the competition is by using a Multi-user or Network system configuration Irom Micro ProductsInternational Choose H>-speed RS-232 - XOR NETSDLC or Token Ring Data Iransler rales up lo 4 megadytessecond can be obtained

What is the Cassette Training concept' Using InleracliveAudio Training lo combine the advantage ol classroom andsell-leaching methods

The Method One audio track delivers a lecture explainingIhe piogram, while the second track emulates the keyboard,actually running the student's computer. At Ireguent intervalsthe tape pauses aulomatically to allow the student keyboardinput, which is monitored tor accuracy by the MITS COED

• FCC approved for direel • Runs Ihe popular

RJ-11 connection Hayes communications

• Phone Cable & Rawer Supply soltware

Finally a price breakthrough on a Hayes compatible external300 1200 baud modem Includes driver soltware

• Q-Modam software included • Runs Ihe popularAlso runs XCOM soltware Hayes communications

• All cables included software

We included every feature you would wan! in a modem cardIt's FCC registered lor direct connection to your modularphone jack with the cord included

.IHE- K NWi • BY

72 Digital I/O

PXB-721

Parallel Expansion Board

• For IBM-PC & Compatibles

• 72 Digital I/O Lines

• Simple Programming

• Uses One Expansion Slot

• Fast Delivery

$195

tj) QUA TECH, INC.

478 E. Exchange St. Akron OH 44304(216) 434-3154 TLX: 5101012726

WAVEFORM

SYNTHESIZER

• For IBM-PC/XT/AT andcompatibles

• Generates user-definable signal

• Up to 2000 points per envelope

$795.00QUA TECH, INC.

478 E. Exchange St. Akron OH 44304(216) 434-3154 TLX: 5101012726

0

TERMINALEMULATION

Softerm PC emulates over 3Qpopular terminals including the:•DECVT102, VT220

• Data General D200, D410•IBM 3101-20 (block mode)

• Hewlett-Packard 2622A

• Honeywell VIP7801, VIP7803Guaranteed Compatibility

Call for free product brief I

$195 MC-VISA-CODFor the IBM PC/XT/AT, DG, NEC,Wang, Tl, Gridcase, Tandy, Zenith

SDITRONICS

7899 Lexington Dr., Ste210

Colorado Springs, CO 80918

1-800-225-8590/(303) 593-9540

Inquiry 287

Inquiry 288

Inquiry 315

Advertise your

computer products

through

BYTE BITS

(2" x 3" ads)

For more information

call Dan Harper at

603-924-6830

BYTE

70 Main St.

Peterborough, NH 03458

HARD DISK ACCELERATOR

• Caching eliminates repetitive

disk accesses

• Use up to 15 Mb of extended/expanded or 500 Kb of standard memory

DISKETTE ACCELERATOR

SCREEN ACCELERATOR

FAST - FRIENDLY - SAFE

VCACHEGOLDEN DOW SYSTEMS

$65

Add $3 lorshipping/handlingCalifornia residents

add 6% sales lax

2870 Filth AvenueSuite 201San Diego. CA 92103

619/298-9349

COMPUTER PAPER

As low as £ A AA per pock

nP*i«T T of 500.

We hove rhe highest quality and rhelowest prices on compurer paper.

AND DISKETTES

As low as ^Olt

DROmERI^o

Call for prices on M1509 Twmwrirer andHR25. Trocrors, sheer feeders and oilorher various components oreavailable 'Certified Drorher dealer'Dealer prices available

rtwwSM 212-244-2960

450 7th Ave. N.Y.N.Y. 10120

Inquiry 145

Inquiry 102

PORTABLE ADDITIONS

PORTABLE DISK DRIVE $229

3Vi", batt. oper., TS-D0S, WOK storage

24K RAM CHIP lor Tandy 200 $75

8K RAM CHIP lor Model-100 $25and NEC 8201. . .3 for $79, 6 lor $U9

SIDESTAR lor NEC Starlet $199128K Ram Disk Cartridge

SIDECAR lor NEC PC-8201A $2594 banks ol 32K in one cartridge

CALL TOLL FREE 1-800-732-5012

Calif: 805-987-4788

Canada: 604-856-8858, Australia: 02-419-8899

tm9PURPI-E VISA MIC &

(£0 COMPUTING AMER.EXP.

420 Constitution Ave., Camarlllo, CA 93010

GAT-286COMPLETE SYSTEM—$2195°°

Includes one megabyte memory on board, 6 or 8MHz, zero wait state, Phoenix BIOS; Disk drive con-troller with 2 floppy disk drives (1.2 M.B. and 360 K)and one 20 M.B. hard disk; monochrome monitor withadapter, serial/parallel ports; 200 W. power supply,keyboard, case. IBM PC/AT compatible. Certified tocomply with FCC class B standards.

PC/XT/AT COMPATIBLE PARTS

Seagate 30 M.B., High Speed Hard Disk $645.0020 M.B. Hard Disk Kit for PC/XT $395.00

30 M.B. Hard Disk Kit for PX/XT $465.00

135 W. Power Supply $ 65.00

I/O Card for XT or AT $ 75.00

LOGIMOUSE $85.00

8087-3 Co-Processor $120.00

80287-3 Co-Processor $215.00

XT Compatible System w/640 K, all ports& clock, 2 drives, monochrome monitor $825.00

LUCKY COMPUTERS

(214) 690-6110

1701 Greenville, Suite 602, Richardson, TX 75081

IBM PC/XT/AT are Registered Trademarksof International Business Machines Corp.

BUY

UNITED

STATES

SAVINGS

BONDS

Inquiry 283

Inquiry 210

THE LATEST IN PG ENHANCEMENT PRODUCTS

ENHANCED GRAPHICS ADAPTOR

100°/o IBM COMPATIBLE—PASSES IBM EGA DIAGNOSTICS

* COMPATIBLE WITH IBM EGA, COLOR GRAPHICS ADAPTOR ANDMONOCHROME ADAPTOR

* DISPLAYS 16 COLORS OUT OF 64 COLORS unUf nu. u

* COMES WITH 256K OF VIDEO RAM NUW UNLY

* DUAL SCANNING FREQUENCIESWORKS WITH STANDARD OREGA TYPE RGB MONITORS

* LIGHT PEN INTERFACE

EGA MONITOR

FULL ONE YEAR WARRANTY

* EGA AND CGA COMPATIBLE

* SCANNING FREQUENCIES:15.75 KHz/21.85 KHz

* 14" BLACK MATRIX,NON-GLARE SCREEN

* RESOLUTION:640 x 200 / 640 x 350

* .31 DOT, 25MHz

* 16 COLORS OUT OF 64

* TEXT SWITCH-GREEN/AMBER

$499.95

0«-d9.9u

$699*

20 MB

HARD DISK

SYSTEM

INCLUDES HARD DISK CONTROLLER, CABLESAND INSTRUCTIONS. ALL DRIVES ARE PRE-TESTED AND COME WITH A 1 YEAR WARRANTY.

$38995

AT MULTIFUNCTION CARD $199.95

ADDS UP TO 3 MEGABYTES OF USER EXPANDABLE MEMORY

* SHIPPED WITH ZERO K RAM, USER EXPANDABLE TO 1.5MEGABYTES RAM ON BOARD, UP TO 3 MEGABYTES WITHOPTIONAL PIGGYBACK CARD

* USES 64K OR 256K DYNAMIC RAMS

* PARALLEL PORT & GAME PORT

* SERIAL PORT

* OPTIONAL SECOND SERIAL PORT

PIGGYBACK MEMORY CARD (NO memory installed) $49.95

EXPANDED MEMORY CARD $199.95

UP TO 2 MEGABYTES OF LOTUS/INTEL COMPATIBLE MEMORY

* CONFORMS TO LOTUS/INTEL EXPANDED MEMORYSPECIFICATIONS (EMS)

* SHIPPED WITH ZERO K RAM, USER EXPANDABLE TO 2MEGABYTES

* USES 64K OR 256K DYNAMIC RAMS

* USE AS EXPANDED (EMS) OR CONVENTIONAL MEMORY,RAMDISK OR SPOOLER

* SOFTWARE INCLUDES EMS DEVICE DRIVERS,PRINT SPOOLER AND RAMDISK

EPROM PROGRAMMER $129.95

FOR IBM PC/XT/AT AND COMPATIBLES

* PROGRAMS 27xxx SERIES EPROMS UP TO 27512

* MENU DRIVEN SOFTWARE PROVIDED ON DISKETTE

* AUTOMATICALLY SETS PROGRAMMING VOLTAGE

* LOADS AND SAVES EPROM BUFFER TO DISK „—

* READ, WRITE, COPY, VERIFY OR CHECK BLANK ]jj|

* DEBUG STYLE EDITOR FOR EASY MODIFICATION OF PROGRAM

* SPLITS OR COMBINES EPROMS OF DIFFERING SIZES

* INTERNAL CARD WITH EXTERNAL CABLE FOR A ZIF SOCKET

*JDR Microdevices

iflD l\/ll/^K/~\/"l£li%/l/^tlO 1224 S. Bascom Avenue, San Jose, CA 95128

JL^I 1 I VIILsl UUCV llrv2o Toll Free 800-538-5000 • (408) 995-5430 • FAX (408) 275-8415 • Telex 171-110

ln'1uiry IK2 © COPYRIGHT 1986 JDR MICRODEVICES

THE JDR MICRODEVICES LOGO IS A REGISTERED TRADEMARK OF JDR MICRODEVICES jnR INSTRUMENTS AND JDR MICRODEVICES ARE TRADEMARKS OF JDR MICRODEVICES.

IBM IS A TRADEMARK OF INTERNATIONAL BUSINESS MACHINES.

STATIC RAMS

2101

5101

2102L-4

2112

2114

2114L-4

2114L-2

2114L-15

TMS4044-4

TMM2016-150

TIWM2O16-1O0

HM6116-4

HM6116-3

HM6116LP-4

HM6116LP-3

HM6116LP-2

HM6264P-15

HM6264LP-15

HM6264LP-12

LP=Low power

256«4256<41024x1256x41024x41024x41024x41024x44096x12048x82048x82048x82048x82048x82048x82048x88192x88192x88192x8

(450ns)

(450ns)(CMOS)

(459ns)(LP)

(450ns)

(450ns)

(450ns)|LP)

|200ns)(LP|

(150ns)|LP|

(450ns)

1150ns)

(100ns)

|200ns)|CM0S)

(150ns)(CMOS|

|200ns)(CMOS)|LP|

|150ns)ICMOS)|LP)

|120ns)(CMOS)(LP)

(150ns)|CMOS)

|150ns)|CMOS)|LP)

|120ns)(CMOS)|LP|

DYNAMIC RAMS

4116-250

4116-200

4116-150

4116-120

MK4332

4164-200

4164-150

4164-120

MCM6665

TMS4164

4164-REFRESH

TMS4416

41128-150

TMS4464-15

41256200

41256-150

16384x116384x116384x116384x132768x165536x165536x165536x165536x165536x165536x116384x4131072x165536x4262144x1262144x1

1.953.95

.992.99

.991.091.491.951.951.491.951.891.951.952.052.953.893.954.49

Sv- Single 5 Volt Supply

(250,is} .49

(200ns) .89

(150ns) .99

(120ns) 1.49

(200ns) 6.95

|200nsl(5v) 1.19

|150ns)|5v) 1.29

(120ns||5v) 1.95

|200ns)|5v) 1.95

<150ns)|5v) 1.95|150ns)|5V)(REFRESH) 2.95

|150ns|(5v) 4.95

|150ns)(5v| 5.95

(150ns|(5»l 6.95

|200ns)(5v) 2.95

(150ns)|5v| 2.95REFRESH-Pin 1 Refrssh

• •••HIGH-TECH****NECV20 UPD70108 $11"

REPLACES BOBB TO SPEED UP IBM PC 10-40%

* HIGH-SPEED ADDRESS CALCULATIONIN HARDWARE

* PIN COMPATIBLE WITH 8088

* SUPERSET OF 8088 INSTRUCTION SET

* LOW POWER CMOS

BMHZ V20 UPD70108-8 $13.95BMHZ V30 UPD70116-8 $19.95

• •••SPOTLIGHT****

ORDER TOLL FREE

800-538-5000

EPROMS

2708

1024x8

(450ns|

4.95

2716

2048x8

|450ns)(5V)

3.49

2716-1

2048x8

(350ns)(5V)

3.95

TMS2532

4096x8

(450ns)|5V)

5.95

2732

4096x8

|450ns)(5V)

3.95

2732A

4096x8

(250ns|(5V|(21V PGM

3.95

2732A-2

4096x8

(200ns)(5V)(21VPGIV1

4.25

27C64

8192x8

(250ns)|5V)|CMOS)

5.95

2764

8192x8

|450ns|(5V)

3.49

2764-250

8192x8

|250ns|(5V|

3.95

2764-200

8192x8

|200ns)|5V)

4.25

MCM68766

8192x8

(350nsl(5VI|24 PIN)

17.95

27128

16384x8

(250nsl(5V)

4.25

27C256

32768x8

|250ns)(5V|(CMOS)

10.95

27256

32768x8

|250ns)|5V)

7.49

5V-Sin(jln

5 Volt Supply

21V PGM^Program at 21 Volts

DSSS^TiSS EPBOM ERASERS

/'IP m^mk( ■_—. 1

Model

Timer

Capacity

Chip

Intensity(uW Cm')

Unit

Price

PE-14

NO

9

8.000

S83.00

PE-14T

yES

9 8.000

S119.00

PE 24T

yes

12 9.600

S175.00

8000

80358039

I 808080858087-2808780888088-281558155-28748875580286

I 80287

1.49

1.95

2.95

2.49

169.95

129.00

6.95

9.95

2.49

3.95

7.95

14.95

129.95

199.95 ,

6500

1.0 MHZ

CRT1 CONTROLLERS [

CRYSTALS

74LS00

8200

8203820582128216822482378237-5825082518251A82538253-582558255-582598259-5827282798279-5828282848286.8288

24.953.291.491.492.254.955.496.951.691.891.891.951.691.891.952294.952.492.953.952.953.954.95 ,

Z-80

:BO-CPU2 5MHz1.69

4.0 MHZ

280A-CPU

1.79

Z80A-CTC

1.89

Z80A-DART

5.95

Z80A-DMA

5.95

Z80A-PIO

1.89

Z80ASIO/0

5.95

ZSOA-SIO/1

5.95

Z80A-SIO/2

5.95

6.0 MHZ

Z80B-CPU

3.75

Z80B-CTC

4.25

Z80B-PIO

4.25

Z80B-DART

14.95

Z80B-SIO/0

12.95

Z80B SIO/2

12.95

Z8671 ZILOG

19.95

6502

2.69

65C02ICMOS112.95

6507

9.95

6520

1.95

6522

4.95

6526

26.95

6532

6.95

6545

6.95

6551

595

6561

19.95

6581

34.95

2.0 MHZ

6502A

2.95

6520A

2.95

6522A

5.95

6532A

11.95

6545A

7.95

6551A

6.95

3.0 MHZ

i 6502B 6

6800

1.0 MHZ

6800

1.95

6802

4.95

6803

9.95

6809

5.95

6809E

5.95

6810

1.95

6820

2.95

6821

1.95

6840

6.95

6843

19.95

6844

12.95

6845

4.95

6847

11.95

6850

1.95

6883

22.95

2.0 MHZ

68B00

4.95

68B02

5.95

68B09E

6.95

68B09

6.95

68B21

3.95

68B45

6.95

68B50

2.95

68B54

7.95

CLOCKCIRCUITS

MM5369 1.95

MM5369-EST 1.95MM58167 12.95MM58174 11.951 MSM5832 2.95 .

6845| 68B45

6847

HD46505SP

MC1372

8275

7220

CRT5027

CRT5037, TMS9918A

4.95

8.95

11.95

6.95

2.95

26.95

19.95

12.95

9.95

19.95 ,

DISK

CONTROLLERS

1771

4.95

1791

9.95

1793

9.95

1795

12.95

1797

12.95

2791

19.95

2793

19.95

2797

29.95

6843

19.95

8272

4.95

UPD765

4.95

MB8876

12.95

MB8877

12.95

1691

6.95

2143

6.95

BIT RATEGENERATORS

MC14411BR19414702COM8116

. MIW5307

9.954.959.958.954.95 ,

UARTS

AV5-1013

3.95

AY3-1015

4.95

TR1602

3.95

2651

4.95

IM6402

6.95

IM6403

9.95

INS8250

6.95 ,

SOUND CHIPS

7647776489SSI 263AY3-8910AY3-8912. SP1000

5.958.9539.9512.9512.9539.00 .

32.768 KHz

.95

1.0 MHz

2.95

1.8432

2.95

2.0

1.95

2.097152

1.95

2.4576

1.95

3.2768

1.95

3.579545

1.95

4.0

1.95

4032

1.95

5.0

1.95

5.0688

1.95

6.0

1.95

6.144

1.95

6.5536

1.95

8.0

1.95

10.0

1.95

10.738635

1.95

12.0

1.95

14.31818

1.95

15.0

1.95

16.0

1.95

17.430

1.95

18.0

1.95

18.432

1.95

20.0

1.95

22.1184

1.95

24.0

1.95

CRYSTALOSCILLATORS

1.01MHz

1.8432

2.0

2.4576

2.5

4.0

5.0688

6.0

6.144

8.0

10.0

12.0

12480

15.0

16.0

18.432I 20.0I 24.0

5.955.955.955.954.954.954.954.954.954.954.954.954.954.954.954.954.954.95

MISC.

TMS99531TPVIS99532ULN200332423341MC3470MC3480MC348711C902513-001 UPAY5-2376. AY5-3600 PRO 11.95 ,

9.95

19.95

.79

7.95

4.95

1.95

8.95

2.95

19.95

6.95

11.95

74LS00

.16

74LS165

.65

74LS01

.18

74LS166

.95

74LS02

.17

74LS169

.95

74LS03

.18

74LS173

.49

74LS04

.16

74LS174

.39

74LS05

.18

74LS175

.39

74LS08

.18

74LS191

.49

74LS09

.18

74LS192

.69

74LS10

.16

74LS193

.69

74LS11

.22

74LS194

.69

74LS12

.22

74LS195

.69

74LS13

.26

74LS196

.59

74LS14

.39

74LS197

.59

74LS15

.26

74LS221

.59

74LS20

.17

74LS240

.69

74LS21

.22

74LS241

.69

74LS22

.22

74LS242

.69

74LS27

.23

74LS243

.69

74LS2B

.26

74LS244

.69

74LS30

17

74LS245

.79

74LS32

18

74LS251

.49

74LS33

.28

74LS253

.49

74LS37

.26

74LS256

1 79

74LS38

.26

74LS257

.39

74LS42

.39

74LS258

.49

74LS47

75

74LS259

1.29

74LS48

.85

74LS260

.49

74LS51

.17

74LS266

.39

74LS73

.29

74LS273

.79

74LS74

.24

74LS279

.39

74LS75

.29

74LS280

1.98

74LS76

.29

74LS283

.59

74LS83

.49

74LS290

.89

74LS85

.49

74LS293

.89

74LS86

.22

74LS299

1.49

74LS90

.39

74LS322

3.95

74LS92

.49

74LS323

2.49

74LS93

39

74LS364

1.95

74LS95

.49

74LS365

.39

74LS107

.34

74LS367

.39

74LS109

.36

74LS368

.39

74LS112

.29

74LS373

.79

74LS122

.45

74LS374

.79

74LS123

.49

74LS375

.95

74LS124

2.75

74LS377

.79

74LS125

.39

74LS378

1.18

74LS126

.39

74LS390

1.19

74LS132

.39

74LS393

.79

74LS133

.49

74LS541

1.49

74LS136

.39

74LS624

1.95

74LS138

.39

74LS640

.99

74LS139

.39

74LS645

.99

74LS145

.99

74LS669

1.29

74LS147

.99

74LS670

.89

74LS148

.99

74LS682

3.20

74LS151

.39

74LS683

3.20

74LS153

.39

74LS684

3.20

74LS154

1.49

74LS688

2.40

74LS155

.59

74LS783 22.95

74LS156

.49

81LS95

1.49

74LS157

.35

81LS96

1.49

74LS158

.29

81LS97

1.49

74LS160

.29

81LS98

1.49

74LS161

.39

25LS2521 2.80

74LS162

.49

25LS2569 2.80

74LS163

.39

26LS31

1.95

74LS164

.49

26LS32

1.95

HIGH SPEED CMOS

A new family o

high speed CMOS logic featuring

the speed of low

powe

Schottk-, :3ns typical gate

propagation delay), com

lined with the advantages of

CMOS: very low

sower

consumption. *=uperio

r noise

immunity, and irr

proved output drive.

74HC00

74HC: Operate

at CMOS logic levels and are ideal

for new. all-CMOS designs

74HC00

.59

74HC148

1.19

74HC02

.59

74HC151

.89

74HC04

59

74HC154

2.49

74HC08

.59

74HC157

.89

74HC10

.59

74HC158

.95

74HC14

.79

74HC163

1.15

74HC20

.59

74HC175

.99

74HC27

59

74HC240

1.89

74HC30

.59

74HC244

1.89

74HC32

.69

74HC245

1.89

74HC51

.59

74HC257

.85

74HC74

.75

74HC259

1.39

74HC85

1.35

74HC273

1.89

74HC86

.69

74HC299

4.99

74HC93

1.19

74HC368

.99

74HC107

.79

74HC373

2.29

74HC109

.79

74HC374

2.29

74HC112

.79

74HC390

1.39

74HC125

1.19

74HC393

1.39

74HC132

1.19

74HC4017

1.99

74HC133

.69

74HC4O20

1.39

74HC138

.99

74HC4049

.89

74HC139

.99

74HC4050

.89

74HCT00

74HCT: Direct drop

in replacements for LS TTL

and can be intermixed w

ith 74LS in the same circuit.

74HCT00

.69

74HCT166

3.05

74HCT02

.69

74HCT174

1.09

74HCT04

.69

74HCT193

1.39

74HCT08

.69

74HCT194

1.19

74HCT10

.69

74HCT240

2.19

74HCT11

69

74HCT241

2.19

74HCT27

.69

74HCT244

2.19

74HCT30

.69

74HCT245

2.19

74HCT32

.79

74HCT257

.99

74HCT74

.85

74HCT259

1.59

74HCT75

.95

74HCT273

2.09

74HCT138

1.15

74HCT367

1.09

74HCT139

1.15

74HCT373

249

74HCT154

2.99

74HCT374

2.49

74HCT157

.99

74HCT393

1.59

74HCT158

.99

74HCT4017

2.19

74HCT161

1.29

74HCT4040

1.59

74HCT164

1.39

74HCT4060

1.49 I

74F0074F0274F0474F0874F1074F32, 74F64

74F00

74F74 .7974F86 .9974F138 1.6974F139 1.6974F157 1.6974F240 3.2974F244 3.29

VISIT OUR RETAIL STORE LOCATED AT 1256 SOUTH BASCOM AVENUE IN SAN JOSE

JDR Microdevices

1224 S. Bascom Avenue, San Jose, CA 951283 Toll Free 800-538-5000 • (408) 995-5430FAX (408) 275-8415 • Telex 171-110

HOURS: M-W-F, 9-6

TU-TH, 9-9

PLEASE USE YOUR CUSTOMER NUMBER WHEN ORDERING

TERMS: Minimum order S10.00. For shipping and handling include S2.!Ground and $3.50 for UPS Air. Orders over 1 lb. and foreign orders may requireadditional shipping charges - please contact our sales department (or the amount. CA.residents must include applicable sales tax. All merchandise is warranted (or 90 daysunless otherwise slated. Prices are subject to change without notice. We are m "responsible lor typographical errors. We reserve the right to limit quantities and tosubstitute manufacturer. All merchandise subject to prior sale.

© COPYRIGHT 1986 JDR MICRODEVICES

THE JDR MICRODEVICES LOGO IS A REGISTERED TRADEMARK OF JDR MICRODEVICES. JDR INSTRUMENTS AND JDR MICRODEVICES ARE TRADEMARKS OF JDR MICRODEVICESIBM IS A TRADEMARK OF INTERNATIONAL BUSINESS MACHINES. APPLE IS A TRADEMARK OF APPLE COMPUTER.

4001

4011

4012

4013

4015

4016

4017

4018

4020

4021

4024

4025

4027

4028

4035

4040

4041

4042

4043

4044

4045

4046

4047

4049

4050

4051

4052

4053

4056

4060

4066

4069

4076

4077

4081

4085

4086

4093

4094

14411

14412

CMOS

.29.49.69.59.69.49.25.39

.75.59.85.69

1.98.69.69.29.29.69.69.69

2.19.69

.29

.22

.79

.89

.49

2.49

9.95

6.95

14419

4.95

7400

14433

14.95

7402

4503

.49

7404

4511

.69

7406

4516

.79

7407

4518

.85

7408

4522

.79

7410

4526

.79

7411

4527

1.95

7414

4528

.79

7416

4529

2.95

7417

4532

1.95

7420

4538

.95

7423

4541

1.29

7430

4553

5.79

7432

4585

.75

7438

4702

12.95

7442

74C00

.29

7445

74C14

.59

7447

74C74

.59

7470

74C83

1.95

7473

74C85

1.49

7474

74C95

.99

7475

74C150

5.75

7476

74C151

2.25

7483

74C161

.99

7485

74C163

.99

7486

74C164

1.39

7489

74C192

1.49

7490

74C193

1.49

7492

74C221

2.49

7493

74C240

1.89

7495

74C244

1.89

7497

74C374

1.99

74100

74C905 10.95

74121

74C911

8.95

74123

74C917 12.95

74125

74C922

4.49

74141

74C923

4.95

74143

74C926

7.95

74144

S0C97

.95

74145

fmf

7400/9000

EDGECARD CONNECTORS

100

PIN

ST

S-100

.125

3.95

100

PIN

WW

S-100

.125

4.95

6?

PIN

ST

IBM PC

.100

1.95

50

PIN

ST

APPLE

.100

2.95

44

PIN

ST

STD

.156

1.95

44

PIN

WW

STD

.156

4.95

.25.49.25.25.19.29

.49.69.89.35.34.33.45.35.50.59.352.15.39.50.35.552.752.29.29.49.45.655.952.95.60

7414774148741507415174153741547415574157741597416174163741647416574166741757417774178741817418274184741917419274194741967419774199. 742217424674247742487424974251742657427374278743677436893689602963796S02

2.49

1.20

1.35

.55

.55

1.49

.75

.55

1.65

.69

.69

.85

.85

1.00

.89

.75

1.15

2.25

.75

2.00

1.15

.79

.85

.79

.75

1.35

1.35

1.35

1.25

1.85

1.95

.75

1.35

1.95

3.11

.65

.65

3.95

1.50

295

1.95 ,

74S00

74S00

.29

74S163

1.29

74S02

.29

74S168

3.95

74S03

.29

74S174

.79

74S04

.29

74S175

.79

74S05

.29

74S188

1.95

74S08

.35

74S189

1.95

74S10

.29

74S195

1.49

74S15

.49

74S196

2.49

74S30

.29

74S197

2.95

74S32

.35

74S226

3.99

74S37

.69

74S240

1.49

74S38

.69

74S241

1.49

74S74

.49

74S244

1.49

74S85

.95

74S257

.79

74S86

.35

74S253

.79

74S112

.50

74S258

.95

74S124

2.75

74S280

1.95

74S138

.79

74S287

1.69

74S140

.55

74S288

1.69

74S151

.79

74S299

2.95

74S153

.79

74S373

1.69

74S157

.79

74S374

1.69

74S158

.95

74S471

4.95

74S161

1.29

74S571

2.95

DATA ACQ INTERFACE

ADC0800 15.55ADC0804 3.49ADC0809 4.49ADC0816 14.95ADC0817 9.95ADC0831 8.95DAC0800 4.49DAC0806 1.95DAC0808 2.35DAC1020 8.25DAC1022 5.95. MC1408L8 2.95

8T26

8T28

8T95

8T96

8T97

8T98

DM8131

DP8304

DS8833

DS8835

DS8836

DS8837

1.29

1.29

.89

.89

.59

89

2.95

2.29

2.25

1.99

.99

1.65

36 PIN CENTRONICS

INTERSIL

MALE

IDCEN36

RIBBON CABLE

CEN36

SOLDER CUP

FEMALE

IDCEN36/F

RIBBON CABLE

CEN36PC

RT ANGLE PC MOUNT

6.954.95

7.954.95 ,

1CL7106ICL7107ICL7660ICL8038ICM7207A. ICM7208

9.9512.952.954955.9515.95 .

VOLTAGEREGULATORS

TO-220 CASE

7805T .49 7905T .59

7808T .49 7908T .59

7812T .49 7912T .59

7815T .49 7915T .59

TO-3 CASE

7805K 1.59 7905K 1.697812K 1.39 7912K 1.49

TO-93 CASE78L05 .49 79L05 .6978L12 .49 79L12 1.49

OTHER VOLTAGE REGS

LM323K 5V 3A TO 3 4.79LM328K Adj. 5A TO-3 3.9578H05K 5V 5A TO 3 7.9578H12K 12V 5A TO 3 8.95. 78P05K 5V 10A TO-3 14.95 .

IC SOCKETS , „ ,M

1-99 100+

8 PIN ST .11 .10

14 PIN ST .11 .09

16 PIN ST .12 .10

18 PIN ST .15 .13

20 PIN ST .18 .15

22 PIN ST .15 .12

24 PIN ST .20 .15

28 PIN ST .22 .16

40 PIN ST .30 .22

64 PIN ST 1.95 1.49

ST=SOLDERTAIL

8 PIN WW14 PIN WW16 PIN WW18 PIN WW20 PIN WW22 PIN WW24 PIN WW28 PIN WW40 PIN WW

.59

.69.991.091.391.491.691.99

.69

.52

.58

.90

.98

1.28

1.35

1.49

1.80

WW=WIREWRAP16 PIN ZIF 4.95 CALL

24 PIN ZIF 5.95 CALL

28 PIN ZIF 6.95 CALL

40 PIN ZIF 9.95 CALL

ZIF=TEXTOOL(ZERO INSERTION FORCE)

LINEAR

TL066

.99

LM733

.98

TL071

.69

LM741

.29 I

TL072

1.09

LM747

.69

TL074

1.95

LM748

.59

TL081

.59

MC1330

1.69

TL082

.99

MCI 350

1.19

TL084

1.49

MCI 372

6.95

LM301

.34

LM1414

1.59

LM309K

1.7.5

LM1458

.49

LM311

.59

LM1488

.49

LM311H

.89

LM1489

.49

LM317K

3.49

LM1496

.85

LM317T

.95

LM1812

8.25

LM318

1.49

LM1889

1.95

LM319

1.25

ULN2003

.79

LM320 SOO7900

XR2206

3.95

LM322

1.95

XR2211

2.95

LM323K

4.79

XR2240

1.95

LM324

.49

MPQ2907

1.95

LM331

3.95

LM2917

1.95

LM334

1.19

CA3046

.89

LM335

1.79

CA3081

.99

LM336

1.75

CA3082

.99

LM337K

3.95

CA3086

.80

LM338K

6.95

CA3089

1.95

LM339

.59

CA3130E

.99

LM340 SOO7800

CA3146

1.29

LM350T

4.60

CA3160

1.19

LF353

.59

MC3470

1.95

LF356

.99

MC3480

8.95

LF357

.99

MC3487

2.95

LM358

.59

LM3900

.49

LM380

.89

LM3909

.98

LM383

1.95

LM3911

2.25

LM386

.89

LM3914

2.39

LM393

.45

MC4024

3.49

LM394H

5.95

MC4044

3.99

TL494

4.20

RC4136

1.25

TL497

3.25

RC4558

.69

NE555

.29

LM13600

1.49

NE556

.49

75107

1.49

NE558

1.29

75110

1.95

NE564

1.95

75150

1.95

LM565

.95

75154

1.95

LM566

1.49

75188

1.25

LM567

.79

75189

1.25

NE570

2.95

75451

.39

NE590

2.50

75452

.39

NE592

.98

75453

.39

LM710

.75

75477

1.29

LM723

.49

75492

■79

H=TO-5 CAN, K

TO-3. T=TO-220 J

m'«'

NNbUIUHS

DESCRIPTION

ORDER BY

CONTACTS

8

14

16

18

20

22

24

28

40

STr-rFh-rT* 11 (III l VW

HIGH RELIABILITY TOOLEDSTIC SOCKETS

AUGATxxST

.62

.79

.89

1.09

1.29

1.39

1.49

1.69

2.49

IDP14

HIGH RELIABILITY TOOLEDWW IC SOCKETS

AUGATxxWW

1.30

1.80

2.10

2.40

2.50

2.90

3.15

3.70

5.40

[QQ goo QQO OOP g>\

COMPONENT CARRIES(DIP HEADERS)

ICCxx

.49

.59

.69

.99

.99

.99

.99

1.09

1.49

/ j*^ '

/©IO SQQOSQQQOCi

RIBBON CABLE

DIP PLUGS (IDC)

IDPxx

.95

.95

1.75

2.95

1 /

FOR ORDE

RING INSTRUCT!

DNSS

EED-,

UBMI

VM TU

RE BE

„OW

AUGAT24ST

DIODES/OPTO/TRANSISTORS

D-S

UBMINIfl

TURI

E

DESCRIPTION

ORDER BY

CONTACTS

9

15

19

25

37

50^

SOLDER CUP

MALE

DBxxP

.82

.90

1.25

1.25

1.80

3

48

FEMALE

DBxxS

.95

1.15

1.50

1.50

2.35

4

32

RIGHT ANGLEPC SOLDER

MALE

DBxxPR

1.20

1.49

1.95

2.65

FEMALE

DBxxSR

1.25

1.55

2.00

2.79

WIRE WRAP

MALE

DBxxPWW

1.69

2.56

3.89

5.60

FEMALE

DBxxSWW

2.76

4.27

6.84

9.95

IDCRIBBON CABLE

MALE

IDBxxP

2.70

2.95

3.98

5.70

FEMALE

IDBxxS

2.92

320

4.33

6.76

HOODS

METAL

MHOODxx

1.25

1.25

1.30

1 30

GREY

HOODxx

65

.65

.65

.75

.95

ORDERING INSTRUCTIONS: INSERT THE NUMBER OF CONTACTS IN THE POSITION

MARKED "XX OF THE 'ORDER BY'PART NUMBER LISTED

EXAMPLE: A 15 PIN RIGHT ANGLE MALE PC SOLDER WOULD BE DB1SPR

MOUNTING HARDWARE $1.00

IDC CONNECTO

RS

DESCRIPTION

ORDER BY

CONTACTS

10

20

26

34

40

50

SOLDER HEADER

IDHxxS

.82

1.29

1.68

2.20

2.58

3.24

RIGHT ANGLE SOLDER HEADER

IDHxxSR

.85

1.35

1.76

2.31

2.72

3.39

WW HEADER

IDHxxW

1.86

2.98

3.84

4.50

5.28

6.63

RIGHT ANGLE WW HEADER

IDHxxWR

2.05

3.28

4.22

4.45

4.80

7.30

RIBBON HEADER SOCKET

IDSxx

.79

.99

1.39

1.59

1.99

2.25

RIBBON HEADER

IDMxx

5.50

6.25

7.00

7.50

8.50

RIBBON EDGE CARD

IDExx

1.75

2.25

2.65

275

3.80

3.95

FOR ORDERING INSTRUCTIONS SEE D-SUBMINIA TURE ABOVE

HARD TO FINDSNAPABLE" HEADERS

CAN BE SNAPPED APART TO

MAKE ANY SIZE HEADER,

ALL WITH .1" CENTERS

1x40 STRAIGHT LEAD .99

1x40 RIGHT ANGLE 1.49

2x40 STRAIGHT LEAD 2.49

[ 2x40 RIGHT ANGLE 2.99 .

SHORTINGBLOCKS

Dear Mr. Rose:

I feel compelled to commend you and your peoplefor the pleasant, polite, willingness to help andprofessional attitude you have displayed. Inthese times it is indeed refreshing to deal with any whose staff consists of people of thiscaliber. My friends and associates will mostcertainly be doing business with you again .

Sincerely, Nicholas Chabra

1N751

.25

4N26

.69

1N759

.25

4N27

.69

1N4148

25/1.00

4N28

.69

1N4004

10/1.00

4N33

.89

1N5402

.25

4N37

1.19

KBP04

.55

MCT-2

.59

KBU8A

.95

MCT-6

1.29

MDA990-2

.35

TIL-111

.99

N2222

.25

2N3906

.10

PN2222

.10

2N4401

.25

2N2905

.50

2N4402

.25

2N2907

.25

2N4403

.25

2N3055

.79

2N6045

1.75

2N3904

.10

TIP31

.49

LED DISPLAYS

COM CATHODE .362" 1.25

COM CATHODE .5" 1.49

COM ANODE .5" 1.49

COM ANODE .3" .99

COM CATHODE .3" .99

COM CATHODE .8" 1.99

COM CATHODE .3" .45

COM CATHODE .43" 1.29

4x7 HEX W/LOGIC .270" 9.95

4x7 HEX W/LOGIC .290" 7.95

FND-357(359)

FND-500(503)

FND-507(510)

MAN-72

MAN 74

MAN 8940

TIL-313

HP5082-7760

TIL-311

HP5082-7340

DIFFUSED LEDS

JUMBO RED T1-V:,

JUMBO GREEN T1V.

JUMBO YELLOW TTV.

MOUNTING HDW T1%

MINI RED T1

1-99.10.14.14.10.10

.12.09.09

SWITCHES

SPDT

MINI-TOGGLE ON-ON

1.25

DPDT

MINI-TOGGLE ON-ON

1.50

DPDT

MINI-TOGGLE ON-OFF-ON

1.75

SPST

MINI-PUSHBUTTON N.O.

.39

SPST

MINI-PUSHBUTTON N.C.

.39

SPST

TOGGLE ON-OFF

.49

BCD OUTPUT 10 POSITION 6 PIN DIP

1.95

DIP SWITCHES

4 POSITION .85 7 POSITION

.95

5 POSITION .90 8 POSITION

.95

6 POSITION .90 10 POSITION

1.29

RIBBON CAE

LE

CONTACTS

SINGLE COLOR

COLOR CODED

r

10'

V

10'

10

.18

1.60

.30

2.75

16

.28

2.50

.48

4.40

20

.36

320

.60

5.50

25

.45

4.00

.75

6.85

26

.46

4.10

.78

7.15

34

.61

5.40

1.07

9.35

40

.72

6.40

1.20

11.00

50

.89

7.50

1.50

13.25

CALL FOR VOLUME QUOTES © copyright 1986 jdr microdevices

Inquiry 183

11

JEEEIMEBE

±

ii

PAQE WIRE WRAP WIRE

PRECUT ASSORTMENT

IN ASSORTED COLORS $27.50

lOOea: 5.5". 6.0". 6.5", 7.0"250«a: 2.5". 4.5". 5.0"500ea: 3.0", 3.5". 4.0"

1

WIRE WRAP PROTOTYPE CARDS

FR-4 EPOXY GLASS LAMINATEWITH GOLD-PLATED EDGE-CARD FINGERS

10 Ml

WIRI

* MADE B*OPER4

* INFRARj

HURR1!

$349

SPOOLS

100 feet $4.30500 feet SI 3.25

250 feet S7.251000 feet 921.95

Please specify color:Blue, Black, Yellow or Red

is ACCESS

EMI FILTER

$4.95

$129

ERRY FdfTIBM PCI 40 FEET FFriVEB FORI

)MPUTER

JCLUDED

<E LIMITED!9730/86

■ MANUFACTUREDBY CORCOM

• LOW COST ■

• FITS LCHP BELOW

• 6 AMP 120/240 VOLT

6 FOOT LIKE CORDS

LC-2 2 CONDUCTOR .39

LC-3 3 CONDUCTOR .99LCHP 3 CONDUCTOR W/STD

FEMALE SOCKET 1.49

MUFFIN FANS

3.15" SQ

3.63" SO

. 3.18" SQ

ROTRON 14.95

ETRI 14.95

MASUSHITA 16.95

IBM-PR2 ._,_

IBM

BOTH CARDS HA VE SILK SCREENED LEGENDS

AND INCLUDES MOUNTING BRACKET

IBM-PR1 WITH • 5V AND GROUND PLANE .... S27.95

IBM-PR2 AS ABOVE WITH DECODING LAYOUT «29.95

S-100

P100-1 BARE - NO FOIL PADS S15.15

P100-2 HORIZONTAL BUS 521.80

P100-3 VERTICAL BUS S21.80

P100-4 SINGLE FOIL PADS PER HOLE 522.75

APPLE

P500-1 BARE - NO FOIL PADS S15.16

P500-3 HORIZONTAL BUS 522.75

PS00-4 SINGLE FOIL PADS PER HOLE 521.80

. 7060-45 FOR APPLE Mo AUX SLOT 530.00

SOCKET-WRAP I.D.™

' SLIPS OVER WIRE WRAP PINS

■ IDENTIFIES PIN NUMBERS ON WRAP

SIDE OF BOARD> CAN WRITE ON PLASTIC; SUCH AS IC «

1.951.951.951.951.951.951.951.951.95PLEASE ORDER BY NUMBER OFPACKAGES |PCK. OF|

FRAME STYLETRANSFORMERS

PINS

PART*

PCK. OF

a

IDWRAP 08

10

14

IDWRAP14

10

16

IDWRAP 16

10

18

IDWRAP 18

5

20

IDWRAP 20

5

22

IDWRAP 22

5

24

IDWRAP 24

5

28

IDWRAP 28

5

40

IDWRAP 40

5

2 AMP 5.95

4 AMP 7.95

8 AMP 10.95

2 AMP 7.95

SWITCHING POWER SUPPLIES

PS-IBM $69.95

- FOR IBM PC-XT COMPATIBLE

• 135 WATTS

• »5V@15A.*12V|S)4.2A PS-IBM-5V@.5A, -12V(5>.5A

• ONE YEAR WARRANTY

PS-IBM-150 $79.95

• FOR IBM PC-XT COMPATIBLE

• 150 WATTS

• *12V @ 5.2A. »5V @ 16A-12V <5> .5A, -5V <5> .5A ps 130

• ONE YEAR WARRANTY

CAPACITORS

TANTALUM

LOjyf

15V

.35

.47</f

35V

.45

6.8

15V

.70

1.0

35V

.4b

10

15V

80

2.2

35V

.65

22

15V

1.35

4.7

35V

.85

.22

35V

.40

10

35V

'00

DISC

lOpI

50V

.05

680

50V

.05

22

50V

.05

.001(/f

50V

.05

27

50V

.05

.0022

50V

.05

33

50V

.05

.005

50V

.05

47

50V

.05

.01

50V

.07

68

50V

.05

.02

50V

0/

100

50V

.05

.05

50V

.07

220

50V

.05

.1

12V

.10

560

50V

.05

.1

50V

.12

MONOLITHIC

■01//I

50V

.14

Alt

50V

.18

.047,/f

50V

.15

AlfA

50V

.2b

ELECTROLYTIC

RADIAL

AXIAL

W

25V

.14

tit

50V

.14

2.2

35V

.15

10

50V

.16

4.7

50V

.15

22

16V

.14

10

50V

.15

47

50V

.20

47

35V

.18

100

35V

.25

100

16V

.18

220

25V

.30

220

35V

.20

470

50V

.50

470

25V

.30

1000

16V

.60

2200

16V

.70

2200

16V

.70

.4700

25V

1.45

4700

16V

1.2b

DATARASE EPROM ERASER $34.95

• ERASES 2 IN 10 MINUTESI COMPACT-NO DRAWER. THIN METAL SHUTTER

PREVENTS UV LIGHT

FROM ESCAPING

V« WATT RESISTORS

5% CARBON FILM ALL STANDARD VALUES

FROM 1 OHM TO 10 MEG. OHM

10 PCS same value .05 100 PCS samevalue .02

. 50 PCS same value .025 1000 PCS samevalue .015

RESISTOR NETWORKS

PS 130

$99.95

SIP

10 PIN

9 RESISTOR

.69

SIP

8 PIN

7 RESISTOR

.59

DIP

16 PIN

8 RESISTOR

1.09

DIP

16 PIN

15 RESISTOR

1.09

DIP

14 PIN

7 RESISTOR

.99

DIP

14 PIN

13 RESISTOR

.99

SPECIALS ON BYPASS CAPACITORS

.01 /rf CERAMIC DISC 100 S5.00

.01 fji MONOLITHIC 100/S10.00

.1 /jf CERAMIC DISC 100/S6.50

.1 id MONOLITHIC 100/S12.50,

• 130 WATTS

• SWITCH ON REAR

• FOR USE IN OTHER IBMTYPE MACHINES

• 90 DAY WARRANTY I

PSA $49.95

- USE TO POWER APPLE TYPESYSTEMS. 79.5 WATTS

• *5V@>7A, +12V@3A-5V@.5A.-12V@.5A

• APPLE POWER CONNECTOR

PS-SPL200 $49.95

• +5V (<p 25A, +12V <a> 3.5A-5V @ 1A, -12V 0 1A

• ULAPPROVED

> ALUMINUM ENCLOSURE

BOOKSbySTEVECIARCIA

BIULD YOUR OWN

Z80 COMPUTER 519.95

CIRCUIT CELLAR VOL 1 S17.95

CIRCUIT CELLAR VOL 2 S18.95

CIRCUIT CELLAR VOL 3 $18.95

CIRCUIT CELLAR VOL 4 SI 8.35

.CIRCUIT CELLAR VOL 5 S19.95 J

MICROCOMPUTER

HARDWARE HANDBOOKFROM ELCOMP $14.95

OVER 800 PAGES OF DATASHEETSON THE MOST COMMONLY USEDICs. INCLUDES TTL. CMOS. 74LS00.MEMORY, CPUs, MPU SUPPORT..AND MUCH MOREI

WIS

ItSOLDERL

ESSB

READBOfl

RDS

PARTNUMBER

DIMENSIONS

DISTRIBUTIONSTRIP(S)

TIEPOINTS

TERMINALSTRIPISI

TIEPOINTS

BINDINGPOSTS

PRICE

WBU-D

.38 x 6.50"

1

100

2.95

Willi 1

1.38x6.50"

1

630

6.95

WBU-204-3

3.94 » 8.45"

1

100

2

1260

2

17.95

WBU-204

5.13x8.45"

4

400

2

1260

3

24.95

WBU-206

6.88 x 9.06"

5

500

3

1890

4

29.95

WBU-208

8.25 x 9.45"

7

700

4

2520

4

39.95

LITHIUM BATTERY

AS USED IN CLOCK CIRCUITS

3 VOLT BATTERY $3.95

.BATTERY HOLDER $1.49,

NEW EDITION!

1986IC MASTER

THE INDUSTRY STANDARD

$129.95

VISIT OUR RETAIL STORE LOCATED AT 1256 SOUTH BASCOM AVENUE IN SAN JOSE

Inquiry 1H<1

JDR Microdevices

1224 S. Bascom Avenue, San Jose, CA 951281 Toll Free 800-538-5000 • (408) 995-5430FAX (408) 275-8415 • Telex 171-110

HOURS: M-W-F. 9-6

TU-TH. 9-9

PLEASE USE YOUR CUSTOMER NUMBER WHEN ORDERING

TERMS Minimum ordet S1000 For shipping and handling u

Ground and S3 50 lor UPS Air Orders over 1 lb.

additional shipping charges - please contact our sales department I

residents must include applicable sales tax. All merchandise is warranted for 90 day

unless otherwise stated Pnces are subject to change without notice. We are nc

responsible lor typographical errors We reserve the right to limit quantities and lo

substitute manufacturer All merchandise subject to prior sale.

© COPYRIGHT 1986 JDR MICRODEVICES

THE JDR MICRODEVICES LOGO IS A REGISTERED TRADEMARK OF JDR MICRODEVICES JDR INSTRUMENTS AND JDR MICRODEVICES ARE TRADEMARKS OF JDR MICRODEVICESIBM IS A TRADEMARK OF INTERNATIONAL BUSINESS MACHINES APPLE IS A TRADEMARK OF APPLE COMPUTER

DISK DR

FOR APPLE COMPUTERS

AM 50$99.95

. | ffo;

> '/> HT, DIRECT DHIVE

• 100% APPLE COMPATIBLE

I SIX MONTH WARRANTY

BAL-500$129.95

. TEAC MECHANISM DIRECT DRIVE• 100% APPLE COMPATIBLE' FULL ONE VEAR WARRANTY

AM 35$129.95

s §11

• FULL HT SHUGART MECHANISM

■ DIRECT REPLACEMENT FOR APPLEDISK II

• SIX MONTH WARRANTY

9

A \

MAG535$249.95

• 3.5" ADD-ON DISK DRIVE

i 100% MACINTOSH COMPATABLE

• DOUBLE SIDED 800K BYTE STORAGE

• HIGH RELIABILITY DRIVE

HAS AUTO-EJECT MECHANISM

• FULL ONE YEAR WARRANTY

AD-3C$139.95

. 100% APPLE lie COMPATIBLE.READY TO PLUG IN, W/SHIELDEDCABLE & MOLDED 19 PINCONNECTOR

• FAST. RELIABLE SLIMLINE DIRECTDRIVE

• SIX MONTH WARRANTY

DISK DRIVE ACCESSORIES

FDD CONTROLLER CARD $49.95

lie ADAPTOR CABLE S19.95

ADAPTS STANDARD APPLE DRIVES

FOR USE WITH APPLE lie

KB-1000

CASE WITH KEYBOARDFOR APPLE TYPE MOTHERBOARD

• USER DEFINED FUNCTION KEYS

• NUMERIC KEYPAD WITHCURSOR CONTROL

• CAPS LOCK ■ AUTO REPEAT

KEYBOARD-AP $49.95

• REPLACEMENT FOR APPLE II

KEYBOARD. CAPS LOCK KEY. AUTO-REPEATI ONE KEY ENTRY OF BASIC

OR CP/M COMMANDS

1=

EXTENDER CARDS

IBM-PC

$45.00

IBM-AT

$68.00

APPLE II

$45.00

APPLE lie

$45.00

MULTIBUS

$86.00,,

APPLE COMPATIBLEINTERFACE CARDS

EPROM PROGRAMMER $59.95

MODELRP525

• DUPLICATE OR BURN ANYSTANDARD 27xx SERIES EPROM

• EASY TO USE MENU.DRIVENSOFTWARE IS INCLUDED

• MENU SELECTION FOR 2716.2732. 2732A. 2764 AND 27128

I HIGH SPEED WRITE ALGORITHM

• LED INDICATORS FOR ACTIVITY. NO EXTERNAL POWER SUPPLY

NEEDED> ONE YEAR WARRANTY

16KRAMCARD $39.95

. FULL TWO YEAR WARRANTY• EXPAND YOUR 48K APPLE TO

64K■ USE IN PLACE OF APPLE

LANGUAGE CARD

BARE PC CURD W/IHSTRUCTIOKS $9.95

IC TEST CARD

$99.95

■ QUICKLY TESTS MANY COMMONICs

' DISPLAYS PASS OR FAIL> ONE YEAR WARRANTY

■ TESTS; 4000 SERIES CMOS.74HC SERIES CMOS.7400.74LS. 74L. 74H 8. 74S

300B MODEM $49.95

FOR APPLE OR IBM

INCLUDES ASCII PRO-EZ SOFTWARE

■ FCC APPROVED

. BELL SYSTEMS 103 COMPATIBLE

■ INCLUDES AC ADAPTOR. AUTO-DIAL

• DIRECT CONNECT

. CABLE FOR APPLE lie S14.9S ,

JOYSTICK cr-401 $7.95

FOR ATARI 400. 800. 2600.VIC 20/64 AND APPLE lie

DISKFILE

HOLDS 70 5V<" DISKETTES

M. 3-WAY SWITCH BOXES

• SERIAL OR PARALLEL

• CONNECTS 3 PRINTERS TO ONECOMPUTER OR VICE VERSA

• ALL LINES SWITCHES

■ HIGHQUALITYROTARYSWITCHMOUNTEDON PCB

• GOLD CONTACTS

• STURDY METAL ENCLOSURE

SWITCH-3P CENTRONICS PARALLEL $98.95[SWITCH-3SRS232 SERIAL $99.95.

QH PRINTER BUFFERS

FREES COMPUTER FOR OTHER TASKSWHILE PRINTING LONG DOCUMENTSSTAND ALONE DESIGN. WORKS WITH ANYCOMPUTER OR PRINTERALL MODELS FEATURE PRINT PAUSEMEMORY CHECK. GRAPHICS CAPABILITY

SP120P PARALLEL $139.95

64K UPGRADABLE TO 25EK

LED INDICATOR SHOWS VOLUME OF DATA

IN BUFFER

SP120S RS232 SERIAL $159.95

64K UPGRADABLE TO 256K

6 SELECTBALE BAUD RATES, FROM

600B-19.200B

SP110P PARALLEL $249.95

64K UPGRADABLE TO S12K

SPOOLS OUTPUT OF UP TO 3 COMPUTERS

LED BARGRAPH DISPLAYS AMOUNT OF

DATA IN BUFFER

RESET FUNCTION CLEARS

DATA IN BUFFER

REPEAT FUNCTION CAN

PRODUCE MULTIPLE

COPIES OF A DOCUMENT j

i:'v ■'" '"■'• y .

NASHUA DISKETTES DEALS

5'/i" SOFT SECTORDS DD WITH HUB RINGS

$990 690ea 59Cea

BOX OF 10 BULK QTY 50 BULK QTY 250

NASHUA DISKETTES WERE JUDGED

TO HAVE THE HIGHEST POLISH

AND RECORDED AMPLITUDE OF ANY

DISKETTES TESTED ACCORDING TO

"COMPARING FLOPPY DISKS'. BYTE 9/84

DISKETTES

NASHUA 5V<"

N-MD2DNMD2FN-MD2H

OS DD SOFTDS'QUAD SOFTDS. HD FOR AT

NASHUA 8"

$9.90$34.95S49.95

N-FD1N-FD2D

SS/DD SOFTDS/DDSOFT

NASHUA 3.5"

S27.95

S34.95

N 3.5SS

3.5" SS/DD FOR MAC

VERBATIM 5V«"

S32.95

V-MD1DV-MD2DV-MD110D

SS. DD SOFTDS/DDSOFTSS/DD 10 SECTOR HARD

S23.95S29.95S23.95

MODEL 6ICQ OR

sp 1200 ip I 03.3U

i EPSON/IBM COMPATIBLE

■ 9-WIRE PRINTHEAD

, 120 CPS BIDIRECTIONAL. 80 COL.- FRICTION AND TRACTOR FEED

■ PROPORTIONAL SPACING

i CENTRONICS PARALLEL INTERFACE

■ 8 CHARACTER SETS AND GRAPHICS

6 FOOT IBM PRINTER CABLE $9.95 I

L REPLACEMENT RIBBON CARTRIDGE $11.95 J

5V«" FLOPPY DISK DRIVES

TEAC FD-66B ViHTDS/DO (FOR I8MI $109.95

TEACFD-55F VS HT OS/QUAD (FOR IBM) S124.96TEAC FD-55QFV W HT DS/HD (FOR IBM AT) 9154.95

TANDON TM100-2 DS/DO IFOR IBM) 8119.00

TANDON TM50-2 V, HT OS -DD (FOR IBM) $79.95

MP1-B52 DS/DO (FOR IBM: $79.95

QUME QT-142 V, HT DS/DO (FOR IBM) $79.95 |

8" FLOPPY DISK DRIVES

FD 100-8 SS/DD ISA/801 EOUMFD 200-8 DS/DO ISA/851 R EQUIV)

$119.00SI 59.00

DISK DRIVE ACCESSORIES

TEAC SPECIFICATION MANUAL $5.00 I

TEAC MAINTENANCE MANUAL $25.00'/> HT MOUNTING HARDWARE $2.95

MOUNTING RAILS FOR IBM AT $4.95

"Y" POWER CABLE FOR 5V." FDD$ $2.95

5V." FDD POWER CONNECTORS $1.19 |

TEAC FD 55

TANDON TM100-2

DISK DRIVE ENCLOSURES

CAB-APPLE $24.95

APPLE TYPE CABINET W/OUT POWER SUPPLY

GAB-1FH5 $69.95 |

FULL HT 5V." BEIGE CABINET W/POWER SUPPLY

CAB-2SV5

DUAL SLIMLINE 5V.

$49.95 |

CABINET W/POWER SUPPLY

CAB-2SVB vertical $299.95

DUAL SLIMLINE 8" CABINET W/POWER SUPPLY

CAB-2FH9 horizintal $219.95

DUAL FULL HT 8" CABINET W/POWER SUPPLY

I

>*

3.5" DISKFILE holds 40 $9»s _

POWER STRIP

$54.95

TEST EQUIPMENT FROM JDR INSTRUMENTSDIGITAL MULTIMETER PEN DPM-1000

AUTO RANGING. POLARITY AND DECIMAL!

* LARGE 3.5 DIGITDISPLAY

« DATA HOLD SWITCHFREEZES READING

* FAST, AUDIBLE CON-TINUITY TEST

* LOW BATTERYINDICATOR

* OVERLOAD PROTEC-TION

20MHZ DUAL TRACE OSCILLOSCOPE MODEL 2090 $389.0035MHz DUAL TRACE OSCILLOSCOPE MODEL 3580 $549.00 |

FOR MORE INFORMATION ON THE OSCILLOSCOPES, CALL US FOR FREE PRODUCT BRIEFS.

CALL FOR VOLUME QUOTES © COPYRIGHT 1986 JDR MICRODEVICES Inquiry .184

• UL APPROVED. 15A CIRCUITBREAKER

$12.95

%%%%%%%

WWMil.l.lH

T

ONLY $389.95!

SEAGATE ST-225 20 MB HARD DISK SYSTEM I CRT MONITORS FOR ALL APPLICATIONS

INCLUDES HARD DISK CONT-ROLLER, CABLES AND IN-STRUCTIONS. ALL DRIVES AREPRETESTED AND COME WITHA ONE YEAR WARRANTY.

XT COMPATIBLEMOTHERBOARD

$129.95

• 4.77 MHz 8088 CPU. OPTIONAL8087 CO-PROCESSOR

• 8 EXPANSION SLOTS

. OK RAM INSTALLED, EXPANDABLETO 640K ONBOARD MEMORY

• ALL IC> SOCKETED HIGHESTQUALITY PC BOARD

• ACCEPTS 2764 OR 27128 ROMS

PRO-BIOS $19.95

389.95

IBM COMPATIBLE INTERFACE CARDS

ALL WITH A ONE YEAR WARRANTY

MULTI I/O FLOPPY CARD $89.95

PERFECT FOR THE 640K MOTHERBOARD

. 2 DRIVE FLOPPY DISK CONTROLLER■ 1 RS232 SERIAL PORT; OPTIONAL 2ndSERIAL PORT

• PARALLEL PRINTER PORT

• GAME PORT

* CLOCK/CALENDAR

* SOFTWARE: CLOCK UTILITIES,RAMDISK. SPOOLER

OPTIONAL SERIAL PORT SI5.95

MULTIFUNCTION CARD

$84.95

ALL THE FEATURES OF ASTS 6 PACK PLUS AT HALF THE PRICE

• CLOCK/CALENDAR

• 0-3B4K RAM> SERIAL PORTI PARALLEL PORT

• GAME PORT

• SOFTWARE INCLUDEDPRINTER CABLE J9.9564K RAM UPGRADE 9/S11.61

COLOR QRAPHIGS ADAPTOR

$69.95

FULLY COMPATIBLE WITH IBM COLOR CARD

. 4 VIDEO INTERFACES: RGB,COMPOSITE COLOR, HI-RESCOMPOSITE MONOCHROME,CONNECTOR FOR RF MODULATOR

■ COLOR GRAPHICS MODE: 320 x 200

■ MONO GRAPHICS MODE: 640 X 200• UGHT PEN INTERFACE

MONOCHROME GRAPHICS CARD

$89.95

FULLY COMPATIBLE W/IBM MONOCHROME ADAPTOR & HERCULES GRAPHICS

- LOTUS COMPATIBLE• TEXT MODE: 80 x 25

■ GRAPHICS MODE: 720 X 348

■ PARALLEL PRINTER INTERFACE

■ OPTIONAL SERIAL PORT SI 9.95

MONOCHROME ADAPTOR

$49.95

ANOTHER FANTASTIC VALUE FROM JDR!• IBM COMPATIBLE TTL OUTPUT • 720 x 350 PIXEL DIPLAY

PLEASE NOTE: THIS CARD WILL NOT RUN LOTUS GRAPHICS AND DOES NOT INCLUDE APARALLEL PORT

FLOPPY DISK DRIVE ADAPTOR

$34.95

• INTERFACES UP TO 4 STANDARDFODj TO IBM PC OR COMPATIBLES

• INCLUDES CABLE FOR TWOINTERNAL DRIVES

• STANDARD DB37 FOR EXTERNALDRIVES

• RUNS QUAD DENSITY DRIVESWHEN USED WITH JFORMAT

1200 BAUD MODEMS

HAYES COMPATIBLE, AUTO-DIAL, AUTO-ANSWER, AUTO RE-DIAL ON BUSY,POWER-UP SELF TEST, FULL ONE YEAR WARRANTY

MODEL 1200B* MODEL 1200H* SMARTEAM

■ INTERNAL DESIGN • INTERNAL DESIGN • EXTERNAL DESIGN

> 10 INCH CARD . HALF LENGTH |5"l CARD . WITH POWER SUPPLY

> SERIAL PORT INCLUDED • INCLUDES SPEAKER • LED STATUS INDICATORS

$169.95 $149.95 $169.95

•FOR IBM, INCLUDES PC TALK III COMMUNICA TIONS SOFTWARE

#JDR Microdevices

mU

LUXOR

HI-RES RGB MONITOR

MODEL 190-9528' DIGITAL RGB IBM COMPATIBLE

• 14"SCREEN

• 16 TRUE COLORS

• 25 MHz BANDWIDTH

• RESOLUTION > 640 x 262

• .31mm DOT PITCH

• CABLE FOR IBM PC INCLUDED

SAKATA

COMPOSITE COLOR

MODEL SC-100

■ TOP RATED FOR APPLE• 13" COMPOSITE VIDEO

■ RESOLUTION: 2B0H x 300V

> INTERNAL AUDIO AMP

> ONE YEAR WARRANTY

CENTER SYSTEMS

MONOCHROME

MODEL KLM-1211

• IBM COMPATIBLE TTL INPUT- 12" NON-GLARE SCREEN

• P39 GREEN PHOSPHORUS

• VERY HIGH RESOLUTION:25 MHz BANDWIDTH1100 LINES (CENTER)

AMBER VERSION $108.95

$299.95 $169.95 $99.95

BUILD YOUR OWN 256KXT COMPATIBLE SYSTEM

XT MOTHERBOARD $129.95

PRO-BIOS $19.95

256K RAM $26.55

130 WATT POWER SUPPLY $69.95FLIP-TOP CASE $39.95

DKM-2000 KEYBOARD $59.951/2 HEIGHT OUME DRIVE $79.95FLOPPY DISK CONTROLLER $34.95MONOCHROME ADAPTOR $49.95MONOCHROME MONITOR $99.95

TOTAL $611.10

IBM STYLECOMPUTER CASE

AN ATTRACTIVE STEEL CASE

WITH A HINGED LID FITS THE

POPULAR PC/XT COMPATIBLE

MOTHERBOARDS

> SWITCH CUT-OUT ON SIDE FOR PC/XTSTYLE POWER SUPPLY

• CUT-OUT FOR S EXPANSION SLOTS

* ALL HARDWARE INCLUDED

MONITOR STAND

TILTS AND SWIVELS

ONLY $12.95

IBM PRINTER GABLE

^ ^M

I DB25 TOCENTRONICS (g <||-

k > SHIELDED CABLE 00.SO

$39.95

IBM COMPATIBLE KEYBOARDSDKM-2000 $59.95 IBM-5151 $79.95

..'5150'' STYLE KEYBOARD> FULLY IBM COMPATIBLE

• LED STATUS INDICATORS FOR CAPS &NUMBER LOCK

• 83 KEY - SAME LAYOUT ASIBM PC/XT KEYBOARD

POWER SUPPLY

NOW ONLY $69.95

* FOR IBM PC-XT COMPATIBLE

* 135 WATTS

* +5V @ 15A. +12V @ 4.2A-SV @ .5A, -12V (3> .5A

150 WATT MODEL $79.95,

I REPLACEMENT FOR KEYTRONICSKB-5151'"

• SEPARATE CURSOR & NUMERICKEYPAD

■ CAPS LOCK & NUMBER LOCKINDICATORS

• IMPROVED KEYBOARD LAYOUT

DISK DRIVESTANDON TM50-2

$79.95

* Vi HT DS/DD

* IBM COMPATIBLE

* EXTREMELY QUIET!

TUC FD-SSB DS/DD $109.95

TUC FD-55F DS/OUID $124.95

TUC FD-S5B DS/HD $154.95

OUME OT-142 DS/DD $79.95

MODNTINB HMDWME $2.95 I

w IT/MILS $4.95 J

1224 S. Bascom Avenue, San Jose, CA 95128Toll Free 800-538-5000 • (408) 995-5430 • FAX (408) 275-8415 • Telex 171-110

) COPYRIGHT 1986 JDR MICRODEVICES

Inquiry 185

BOMB

BYTE's Ongoing Monitor Box

ARTICLE* PAGE ARTICLE

1

9

2

31

3

50

4

65

5

84

6

97

7

114

8

127

9

137

10

145

II

163

12

179

13

205

14

223

AUTHOR(S)

Microbytes staff

What's New staff

Ask BYTE/Circuit Cellar Feedback . .Ciarcia

Book Reviews Williams. Crabb

Product Preview: LabVIEW:Laboratory Virtual Instrument

Engineering Workbench Vose,

WilliamsCiarcia's Circuit Cellar: Build a

Hardware Data Encryptor Ciarcia

Programming Project: Calculating

CRCs by Bits and Bytes Morse

Programming Insight:

Breaking Out Batutis

Keyed File Access in BASIC Perry

Real Time Under Real Pascal .68000 Tricks and Traps .UNIX and the MC68000

A Comparison of MC68000

Family Processors

Atari ST Software Development

. Feldman. Morton. Rood, Cline,Brewster

Johnson. Rothman

ARTICLE* PAGE ARTICLE

AUTHOR(S)

15 241 Amiga Animation Ditton, Ditton

16 249 Amiga vs. Macintosh Webber

17 263 The Franklin ACE 2200 Woodhull

18 269 The Leading Edge Model D PC . . . .Miastkowski

19 275 The Xerox 6060 Rash

20 283 The C. Itoh TriPrinter Swearengin

21 287 The Turner Hall Card Angel

22 293 Turbo Prolog Shammas

23 299 Software Carousel Haas

24 303 Paradox 1,1 DeMaria

25 311 WordPerfect 4.1 Birmele

26 321 Computing at Chaos Manor:

A Busy Day Pournelle

27 33 5 According to Webster:

Two Fine Products Webster

28 351 BYTE (apan: Perspectives on

Hardware and Software Raike

29 3 59 BYTE U.K.:

Turbocharging Mandelbrot Pountain

30 367 Applications Only:

Sing Ye MacPraises Shapiro

31 380 Best of BIX BlXen

BOMB Results

MUSIC IN THE AIR

Winner of S100 for placing first in June's BOMB is Robert A. Moog forhis "Digital Music Synthesis," an overview of the general attributes ofmusical sound and how to produce it. In second place, and the winner

of $50 is Eric lensen for his review of the Atari 520ST. The $50 awardfor quality also goes to Robert A. Moog for "Digital Music Synthesis."Congratulations.

NEXT MONTH IN BYTE

A Major New Product:

Our in-depth technical description—much more than just a "first look"—will help you decide ifthis new product is something truly important or just another yawn masquerading as a smile.

Theme:

Public domain software includes a version of the Prolog language, a database that can runbackward in time, a tutorial on icons, a software emulation of the Z80 microprocessor, and aspecial interview with Richard Stallman—proponent of the public domain and founder of theFree Solution Foundation.

Hardware Reviews:

An objective appraisal of the Amiga; the powerful, downsize Compaq II transportable; theUNIX-based, multiuser Tandy 6000; three 24-pin printers; and four magnetic-tape backup units.

Software Reviews:

Microsoft Word 3.0; Digital Research's Concurrent PC DOS; Soft Warehouse's muLISP-86; ITC'sModula-2; and a comparison of The Norton Utilities, Super Utility, and PC Tools.

Circuit Cellar:

A build-it-yourself intelligent EPROM programmer.

Special MC68000 Series:

"Sound and the Amiga"

PROGRAMMING INSIGHTS:

"Another Approach to Data Compression" and "A Useful Property of 2""

PLUS lively columns by Pournelle, Webster, Shapiro, Pountain, and Raike;more from the Best of BIX; book reviews, What's New, Microbytes, and more.

SEPTEMBER 1986 • BYTE 461

A COMPUTER

PROGRAM

DELIVERED VIA

SATELLITE!

The Computer Chronicles, a half-hour weeklytelevision series brings you news and informationfrom Silicon Valley and around the world.

Correspondent Stewart Cheifet and Gary Kildall,creator of CP/M cover today's headlines andthe stories behind them.

Find out what is, what was and what will be, withthe only computer program you're ever going toneed. The Computer Chronicles, every week ona public television station near you.

" Ill.'i'JL'.'Jl" imiM.iiiiHiiiimii'iiiii"

iiimiiriifiwiiiiiiiiiiHiMiiiiHiju'

lllir'

(Check local listings for time and channel.)

Produced by KCSM, San Mateo, CA and WITF, Harrisburg, PA with funding from McGraw-Hill's BYTE magazine

BYTE ADVERTISING SALES STAFF:

Dennis ]. Riley, Advertising Sales Manager, One Phoenix Mill Lane, Peterborough, NH 03458, tel. (603) 924-9281

NEW ENGLAND

ME. NH. VT. MA. Rl.

EASTERN CANADA

Paul McPherson Ir. 16171 262-1160

McGraw-Hill Publications

575 Boylston Street

Boston. MA 02116

ATLANTIC

NY. NYC. CT. N| (NORTHI

Leah G. Rabinowitz 12121 512-2096

McGraw-Hill Publications

1221 Avenue of the Americas—

39th Floor

New York. NY 10020

Dick McGurk (203) 968-7111McGraw-Hill PublicationsBuilding A-3rd Floor777 Long Ridge RoadStamford, CT 06902

EAST

PA (EAST). NJ ISOUTHI.MD, VA. W.VA. DE. D.C.Daniel Ferro [215) 496-3833McGraw-Hill PublicationsThree ParkwayPhiladelphia. PA 19102

SOUTHEAST

NC, SC. GA. FL. AL. TNMaggie M. Dorvee (4041 252-0626McGraw-Hill Publications4170 Ashford-Dunwoody Road-Suite 420Atlanta. GA 30319

MIDWEST

IL. MO. KS. IA. ND, SD. MN, Wl. NB. IN

Bob Denmead (3121 751-3740

McGraw-Hill Publications

Blair Building

645 North Michigan Ave.

Chicago. IL 60611

GREAT LAKES, OHIO REGION

Ml. OH. PA (ALLEGHENY). KY.ONTARIO. CANADARenee Navarro (313) 352-9760McGraw-Hill Publications4000 Town Center-Suite 770Southfield. Ml 48075

SOUTHWEST. ROCKY MOUNTAIN

UT, CO. WY. OK. TX, AR. MS. LAKevin Harold (214) 458-2400McGraw-Hill PublicationsPrestonwood Tower-Suite 9075151 BeltlineDallas. TX 75240

SOUTH PACIFIC

SOUTHERN CA. AZ. NM. LAS VEGASlack Anderson 1714) 557-6292McGraw-Hill Publications3001 Red Hill Ave.Building #1—Suite 222Costa Mesa, CA 92626

Karen Niles (213) 480-5243. 487-1 160McGraw-Hill Publications3333 Wiishire Boulevard #407Los Angeles. CA 90010

NORTH PACIFIC

HI. WA. OR. ID, MT. NORTHERN CA.

NV (except LAS VEGAS], W. CANADA

Mike Kisseberth (415) 362-4600

McGraw-Hill Publications

425 Battery Street

San Francisco. CA 94111

Bill McAfee (415) 349-4100McGraw-Hill Publications951 Mariners Island Blvd.-3rd FloorSan Mateo. CA 94404

WEST COAST SURPLUSAND RETAIL ACCOUNTS

Tom Harvey (805) 964-85773463 State Street-Suite 256Santa Barbara. CA 93105

The Buyer's Mart

Karen Burgess (603) 924-3754BYTE Publications70 Main StreetPeterborough. NH 03458

BYTE BITS (2x3)

Dan Harper (603) 924-6830BYTE Publications '70 Main StreetPeterborough. NH 03458

Post Card MailingsNational

Bradley Browne 16031 924-6166BYTE Publications70 Main StreetPeterborough. NH 03458

International Advertising Sales Staff:

Mr. Hans CsokorPublimediaReisnerstrasse 61A-1037 Vienna, Austria222 75 76 84

Mrs. Gurit GepnerMcGraw-Hill Publishing Co.PO Box 2156Bat Yam. 59121 Israel3 866 561 321 39

Mr. Fritz KrusebeckerMcGraw-Hill Publishing Co.Llebigstrasse 19D-6000 Frankfurt/Main IWest Germany69 72 01 81

Mrs. Maria SarmientoPedro Teixeira 8, Off. 320Iberia Mart IMadrid 4. Spain1 45 52 891

Mr. Andrew Karnig

Andrew Karnig & Associates

Finnbodavagen

S-131 31 Nacka. Sweden

8-44 0005

Mr. Alain Faure

McGraw-Hill Publishing Co.

128 Faubourg Saint Honore

75008 Paris

France

(1)47-20-33-42

Mr. Arthur SchefferMcGraw-Hill Publishing Co.34 Dover St.London W1X 3RAEngland 01 493 1451

Manueia CapuanoMcGraw-Hill Publishing Co.Via Flavio Baracchini 120123 Milan. Italy02 86 90 617

Seavex Ltd.

400 Orchard Road, #10-0!

Singapore 0923

Republic of Singapore

Tel: 734-9790

Telex: RS35539 SEAVEX

Seavex Ltd.

503 Wilson House

19-27 Wyndham St.

Central. Hong Kong

Tel: 5-260149

Telex: 60904 SEVEX HX

Hiro Morita

McGraw-Hill Publishing Co.

Overseas Corp.

Room 1528

Kasumigaseki Bldg.

3-2-5 Kasumigaseki,

Chiyoda-Ku

Tokyo 100, lapan

3 581 9811

Mr. Ernest McCraryEmpresa Internacional deComunicacoes Ltda.Rua da Consolacao, 222Conjunto 103

01302 Sao Paulo, S.P., BrasilTel: (II) 259-3811Telex: (100) 32122 EMBN

462 BYTE ■ SEPTEMBER 1986

READER SERVICE

Inquiry No.

Page No.

396 AW ABLE 279

2 ABSOFT 52

3 ACS IMPORTERS 427

407 ACTION SOFTWARE 396

415 ADDISON-WESLEY ED.MEDIA. .355426 ADIUSTABLE COMP. PROD 442

4 ADTEK TELECOMM CORP. 388

5 ADV DIGITAL CORP 30

6 ADV DIGITAL CORP 30

7 ADV INTELLIGENCE TECHN ... 439

8 ADVANCED COMP PROD 445

9 ADVANCED TECHNOLOGY PROD 422

10 AFTON COMPUTER 70

11 AFTON COMPUTER 70

409 ALPS AMERICA 56. 57

410 ALPS AMERICA 56, 57

14 ALPS AMERICA 392. 393

15 ALPS AMERICA 392, 393

• AMERICAN DESIGN COMPONENTS 211

17 AMERICAN COMP& PERIPH . ... 191

18 AMERICAN COMP.& PERIPH 191

20 AMERICAN SEMICONDUCTOR . . 424

21 AMERICAN SMALL BUSN. COMP.14I

22 AMPRO COMPUTERS INC 336

23 APPARAT. INC 396

24 APPLIED VISIONS 382

25 APROTEK 452

26 ARITY CORPORATION 356

• AST RESEARCH INC 19

27 ATARI 325

28 ATARI 327

29 ATARI 329

30 ATRON CORP. 26

31 AUTOCOMPUTER CO. LTD 369

32 AVOCET SYSTEMS INC 195

34 B&B ELECTRONICS 440

• B&C MICROSYSTEMS 427

• B&C MICROSYSTEMS 427

36 BARRINGTON SYSTEMS 27

38 BAY EXPRESS COMPANY, THE .. 429

39 BAY TECHNICAL ASSOC 255

• BEST WESTERN INTL 378

41 BIT SOFTWARE 214

42 BITTNER ELECTRONICS 366

450 BIX 357

44 BLAISE COMPUTING INC 151

45 BLAISE COMPUTING INC 151

49 BORLAND INTL CM, I

50 BORLAND INTL Cll, I

51 BP MICROSYSTEMS 420

52 BROWN BAG SOFTWARE 361

53 BROWN BAG SOFTWARE 363

54 BUSINESS TOOLS INC 77

• BUYER'S MART SECTION . . . 412-419

■ BYTE BACK ISSUES 397

• BYTE BITS MESSAGE 454

• BYTE BOOK CLUB 400, 401

• BYTE SUB. MESSAGE 405

• BYTE SUB. MESSAGE , . .434

• BYTE SUB. SERVICE 240

■ BYTE SUB. SERVICE 399

55 BYTE CONNECTION THE 421

57 BYTEK CORPORATION 170

• C WARE/DESMET C 340

58 C.G.R S.MICROTECH INC 440

• CALIFORNIA DIGITAL 448, 449

59 CAPITAL EQUIPMENT CORP .219

60 CASIO COMP. CO LTD 185

61 CAUZIN SYSTEMS 374. 375

62 CERMETEK MICROELECTRONICS 434

63 CHALCEDONY SOFTWARE 74

64 CHALCEDONY SOFTWARE 74

65 CITIZEN AMERICA 112, 113

66 CLEO SOFTWARE 268

67 CMA MICRO COMP DIV 142

97 CMH SOFTWARE 388

68 COEFFICIENT SYS. CORP 22

69 COGITATE 436

70 COGITATE 436

398 COMMODORE BUSN. MACHINES 162

• COMPAQ COMPUTER CORR280, 281

71 COMPETITIVE EDGE 381

73 COMPUDATA TRANSLATORS INC 442

74 COMPUPRO 247

Inquiry No.

Page No.

75 COMPUSAVE 423

76 COMPUSERVE 260

78 COMPUTER-AGE INC 436

79 COMPUTER BOOK CLUB THE . 385■ COMPUTER CHRONICLES 462

• COMPUTER CONTINUUM 436

81 COMPUTER FRIENDS 152

82 COMPUTER MAIL ORDER . 348. 349

83 COMPUTER SURPLUS STORE .442

84 COMPUTER WAREHOUSE 288

85 COMPUTER WAREHOUSE 288

86 COMPUTERBANC 441

87 COMPUTERS INTERNATIONAL 232

88 COMPUTRADE 394

89 COMSPEC COMMUNICATIONS. . 383

90 CONCORD TECHNOLOGY LTD 347

94 CORDATA 189

95 CUESTA SYSTEMS 256

96 CURTIS INC 420

428 CUSTOM SOFTWARE SOLUTIONS 394

102 DATANAMICS 454

103 DECISIONWARE INC 330

104 DECISIONWARE INC 330

105 DESIGN SOFTWARE 354

106 DEVSOFT INC 442

35 DIGIFIT INC 278

107 DIGITALK INC 231

108 DISKCOTECH 420

109 DISKETTE CONNECTION 405405 DISKMASTER 424

110 DISKS PLUS INC 342

111 DISK WORLD! INC 431

112 DISPLAY TELECOMMNCTNS ... 54

113 DIVERSIFIED COMPUTER SYS 442

114 DOKAY COMP PROD INC 443

115 DRESSELHAUS COMP PROD 267

116 ECOSOFT 350

117 EDUCATIONAL MICROCOMP. SYS 422

118 ELEXOR INC 366

119 ELLIS COMPUTINC INC 69

120 ENERTRONICS RESEARCH 153

121 ENHANCEMENT TECH 216

123 EVEREX SYSTEMS 94. 95

124 EVEREX SYSTEMS 94, 95

72 EVSAN 452

420 FACIT AB 377

• FASTCOMM DATA CORP. 89

125 FLAGSTAFF ENGINEERING 320

126 FLAGSTAFF ENGINEERING 320

128 FORESIGHT RESOURCES CORP 274

394 FORMAT SOFTWARE 289

395 FORMAT SOFTWARE 289

130 FORTRON CORPORATION 66

131 FORTRON CORPORATION 66

132 FORTRON CORPORATION 425

133 FORTRON CORPORATION 425

135 FOX SOFTWARE INC 20

136 FRANK HOGG LABORATORY .424

137 FRANK HOGG LABORATORY 436

138 FUJITSU AMERICA 193

139 GENERAL MICRO SYSTEMS 388

140 GENERAL TECHNOLOGIES INC 33411 GENICOM 389

142 GENOA SYSTEMS CORP 301

143 GMX. INC 190

144 GOLDEN BOW SYSTEMS 424

145 GOLDEN BOW SYSTEMS 454

146 GRAFPOINT 440

147 GRAND UNION MICROSYSTEMS 420

148 GRIDCOMM 218

149 GTEK INC 358

150 GTEK INC 358

• HARMONY COMPUTERS 341

151 HAWAIIAN VILLAGE COMPSFT 438

Inquiry No.

Page No.

152 HAYES MICROCOMP. PROD 227

• HERCULES COMPUTER TECH. . 173

154 HERCULES COMPUTER TECH. 174, 175

155 HERCULES COMPUTER TECH 174, 175

156 HERCULES COMPUTER TECH, 176, 177

157 HERCULES COMPUTER TECH. 176. 177

158 HERCULES COMPUTER TECH. 178

159 HERCULES COMPUTER TECH. 178

153 HERITAGE SYSTEMS CORP. 438

160 HERSEY MICRO CONSULTING . . 429

161 HEWLETT-PACKARD 314

162 HOOLEON CORP 346

163 HOOLEON CORP 346

164 HOUSTON INSTR/BAUSH&LOMB . .21

165 IBEX COMP CORP. 442

166 IBM CORP. 48 AD

• IBM/SMALL SYSTEMS DIV. 199

168 I.C. EXPRESS 429

169 INFORMATION FACTORY 438

170 INI COMPUTER PROD 427

171 INNOVATIVE SOFTWARE. .316,317

• INTECTRA INC 424

172 INTEGRAND RESEARCH CORP. . 140

173 INTEL CORPORATION 238, 239

174 INTERNATIONAL COMPUTING ,. 440424 10 TECH 429

175 IRWIN MAGNETICS 12, 13

176 IACO ENTERPRISES 440

177 1ADE COMP PROD 450, 451

178 IAMECO ELECTRONICS . . . 446, 447

179 IC INFORMATION SYSTEMS 23

180 IC INFORMATION SYSTEMS 23

181 IDR INSTRUMENTS 305

182 IDR MICRODEVICES 455

183 IDR MICRODEVICES 456, 457

184 IDR MICRODEVICES 458, 459

185 IDR MICRODEVICES 460

187 KADAK PRODUCTS LTD 347

390 KEA SYSTEMS LTD 434

188 KEITHLEY DAC 93

189 KIMTRON CORP. 248

190 KIMTRON CORP. 248

192 LABORATORY MICROSYS 78

416 LABORATORY TECHNOLOGY ... 18

193 LACHMAN ASSOCIATES INC ... 17

194 LAHEY COMPUTER SYSTEMS . 397

195 LASER ACTIVE '86 344

196 LATTICE, INC 24

197 LEADING EDGE PROD 55

199 LINTEK COMP. ACCESSORIES . .452

200 LOGIC ARRAY 435

201 LOGIC ARRAY 435

202 LOGICAL DEVICES 372

203 LOGICAL DEVICES 372

204 LOGICAL DEVICES 373

205 LOGICAL DEVICES 373

400 LOG1CSOFT 144, A-F

• LOGITECH INC 165

207 LOGITECH INC 167

208 LOGITECH INC 169

209 LONE STAR SOFTWARE INC ... 430

210 LUCKY COMPUTERS 454

211 LYCO COMPUTER 213

212 M-S CORPORATION 436

213 M.WRUTH COMPANY 382

214 MACMILLAN SOFTWARE 129

216 MANX SOFTWARE SYS 133

217 MANX SOFTWARE SYS 343

218 MARK WILLIAMS CO 59

219 MARK WILLIAMS CO 61

220 MARON PRODUCTION INC 440

221 MATHSOFT INC 117

■ MAXELL DATA PRODUCTS 7

• MCGRAW-HILL CEC 225

TO GET FURTHER information on the products advertised in BYTE, eitherpick up your touch-tone telephone and use TIPS (if you are a subscriber),or fill out the reader service card. Either way full instructions are pro-vided following this reader service index which is provided as an addi-tional service by the publisher, who assumes no liability for errors oromissions. 'Correspond directly with company.

Inquiry No.

Page No.

• MCGRAW-HILL INFO SER 386, 387

• MCGRAW-HILL NRI 353

223 MECASOFT 442

224 MEGATEL COMPUTER TECH ... 346

• MERCEDES-BENZ OF NA 235

225 MERRITT COMP PRODUCTS .... 438

226 METACOMCO 143

227 MICRO DATA BASE SYS 313

228 MICRO DESIGN INTL 391

229 MICRO INTERFACES CORP 181

230 MICRO INTERFACES CORP 181

231 MICRO MART INC 72, 73

232 MICRO PRODUCTS INTL 453

233 MICRO SUPPLY ORGANIZATION .426

234 MICRO-SYSTEMS SOFTWARE ... 383141 MICRO-TECH COMPUTERS 452

235 M1CROBRIDGE COMPUTERS. 429

236 MICROGRAFX 64

191 MICROILLUSIONS 381

• MICROMINT INC 337

237 MICROPORT SYSTEMS INC 331

238 MICROPROCESSORS UNLTD 436

• MICROSOFT CORP 51

• MICROSOFT CORP 155

■ MICROSOFT CORP 156, 157

• MICROSOFT CORP 158, 159

• MICROSOFT CORP 298

239 MICROTECH 442

240 MICROWARE SYSTEMS CORP.... 79

241 MICROWAY 25

242 MICROWAY 334

19 MITAC INC 262

12 MIX SOFTWARE 309

• MOTOROLA SEMICON. DV 134, 135

243 MOUNTAIN VIEW PRESS 243

244 MULTITECH ELECTRONICS INC . . 91

245 MYSTIC CANYON SOFTWARE. . .436

417 NANAO USA CORP 328

418 NANAO USA CORP. 328

247 NANTUCKET 37

248 NANTUCKET 37

249 NATL PUBLIC DOMAIN SFTW. . 440

250 NATIONAL INSTRUMENTS 58

251 NEC HOME ELECTR.USA 201

252 NEC INFORMATION SYS CHI

253 NEC INFORMATION SYS . 220, 221421 NEW GENERATION SYS 242

254 NiCOLET INSTRUMENTS 267

255 OHIO KACHE SYS. CORP. 282

256 OKIDATA 47

257 OMNITRON INC 452

• ORCAD SYS CORP 422

258 ORCHID TECHNOLOGY 233

259 ORION INSTRUMENTS 136

260 OSBORNE/MCGRAW-HILL 187

402 PC COMPUTER BROKERS INC.. .422

261 PC. COMPUTER BROKERS INC. .434

262 PC. HORIZONS INC 366

101 PC MEMORY 427

408 PANASONIC INDUSTRIAL 67

419 PANASONIC INDUSTRIAL 273

263 PARLOR SOFTWARE CO 402

264 PARSONS TECH 424

425 PATHFINDER SOFTWARE INC.. . .434

265 PC AMERICAN MARKETING INC 432

266 PC NETWORK 80, 80 A-B, 81

267 PC S1G 186

412 PC STAR 395

413 PC STAR 395

268 PC'S LIMITED 202. 203

269 PECAN SOFTWARE SYS. INC 16

270 PERSOFT INC 8

271 PERSONAL TEX INC 338

272 PINECOM COMPUTER INC 423

• POLYTEL COMP PROD. CORP . . 132

273 PRECISION DATA PRODUCTS ... 434

274 PRECISION OPriCAL 442

275 PRINCETON GRAPHIC SYS 39

276 PRINCETON GRAPHIC SYS. 296, 297

277 PRINTER WORKS THE 440

278 PROFESSOR IONES. INC 429

279 PROGRAMMER'S SHOP 323

281 PROSOFT 43

283 PURPLE COMPUTING 454

SEPTEMBER 1986 -BYTE 463

READER SERVICE

Inquiry No.

Page No.

406 QIC RESEARCH 407

284 QUA TECH. INC 427

285 QUA TECH. INC 427

286 QUA TECH, INC 440

287 QUA TECH. INC 454

288 QUA TECH. INC 454

• QUAID SOFTWARE LTD 326

289 QUALITY PRINTERS 422

290 QUANTUM SOFTWARE 310

291 OUELO. INC 383

292 RADIO SHACK CIV

293 RAINBOW TECHNOLOGIES 422

294 RAINBOW TECHNOLOGIES 452

295 ROSE ELECTRONICS 438

297 S'NW ELECT. & APPL 256

298 S-100 DIV. 696 CORP. 437

299 S-100 DIV. 696 CORP. 437

300 SAFEWARE 438

302 SBT CORPORATION 222

303 SCIENTIFIC ENCR.LABS 422

304 SCOTT. FORESMAN & CO 341

305 SEAGATE TECHNOLOGY 41

306 SEAGATE TECHNOLOGY 41

307 SEAGULL SCIENTIFIC SYS 340

309 SILICON SPECIALTIES 75

310 SILICON SPECIALTIES 75

311 SINGLE BOARD SOLUTIONS 452

312 SOFT CIRCUITS. INC 382

313 SOFTKLONE DISTRIBUTING 285

• SOFTLINE CORP. 71

401 SOFTLOGIC SOLUTIONS INC. ... 379

314 SOFTRONICS 420

Inquiry No.

Page No.

315 SOFTRONICS 454

• SOFTWARE DEVELOPMENT SYS 352317 SOFTWARE LINK. THE .... 306, 307

320 SOFTWARE PRODUCTS INT L ... 257

321 SOFTWARE PRODUCTS INTL 257

• SOFTWARE STUDIOS 171

322 SOLUTION SYSTEMS 325

323 SONY CORP. OF AMERICA 345

324 SOPHISTICATED SOFTWARE .... 339

391 SOURCE ELECTRONICS 342

392 SOURCE ELECTRONICS 342

325 SPECTRUM SOFTWARE 126

326 SPENCER ORGANIZATION 438

327 SPSS INC 35

328 STAR GATE TECHNOLOGIES. ... 396

329 STATSOFT 68

330 STSC INC 131

332 STSC INC 228, 229

333 SUBLOGIC CORP 207

334 SUITABLE SOLUTIONS 420

335 SUMMIT SOFTWARE TECHN. INC. 234

336 SUNTRONICS CO. INC 421

337 SYMMETRIC COMP SYS 428

338 SYSTAT INC 125

339 SYSTAT INC 125

340 TDT S.A.R.L 96

341 TECH PC 28. 29

342 TECH PC 28, 29

343 TECH PC 28, 29

344 TEKTRONIX INC 237

345 TELEVIDEO SYSTEMS 209

346 THOMSON CONSUMER PROD . .253

Inquiry No.

Page No.

347 THOMSON CONSUMER PROD . . 253

348 TIGERTRONICS 436

349 TIMELINE 433

■ TINNEY. ROBERT GRAPHICS. .444

350 TIPZ 438

423 TOC BUSINESS SOLUTIONS .434

351 TOPAZ. INC 292

352 TOPAZ. INC 292

353 TORRINGTON COMPANY. THE . . 286

354 TOSHIBA AMERICA INC 149

355 TOSHIBA AMERICA INC 271

• TOSHIBA AMERICA/ISD . . . 290, 291

• TRANSEC SYSTEMS, INC 45

356 TURBOPOWER SOFTWARE 332

357 U.S. ROBOTICS 371

358 U.S. ROBOTICS 371

359 UNICORN ELECTRONICS 438

360 UNIVATION 197

361 UNIVERSAL CROSS-ASSEMBLERS 429

362 VALUE LINE INC 183

363 VENTEL INC II

364 VIA WEST 285

365 VIA WEST 285

414 VICTORY ENT. TECHNOLOGY ... 355

• VLM COMPUTER ELECTR 452

366 VOTRAX INTERNATIONAL INC. . 90

367 WAREHOUSE DATA PRODUCTS . 53

368 WELLS AMERICAN 15

369 WESTECH 76

370 WESTECH 76

371 WESTERN COMPUTER 204

372 WESTERN COMPUTER 204

Inquiry No.

Page No.

373 WESTERN TELEMATIC 302

374 WESTERN TELEMATIC 302

375 WESTLAKE DATA CORP 60

376 WHITEWATER GROUP. THE ... 336

377 WHOLESALE OUTLET THE ... . 420

378 WHOLESALE OUTLET. THE . . . 452

380 WINTEK CORP. 5

381 WINTEK CORP. 424

382 WISETEK 384

383 WYSE TECHNOLOGY 121

384 ZEDCOR 62

385 ZEDCOR 62

386 ZEDCOR 63

387 ZEDCOR 63

388 ZI-TECH INSTRUMENT CORP .402

389 ZIMCO INTERNATIONAL. INC. . . 402

* Correspond direcllu wild wmpamjINTERNATIONAL ADVERTISING SECTION

500 ALGOL ENTERPRISE CO LTD. 256K

501 AMERICAN BUYING 6 EXPORT

SERVICES ... 2561

502 AVOCET SYSTEMS INC 256C

503 GREY MATTER 256E

504 MULTITECH IND CORP. 256A

505 PHILIPS 256B-C

• SOFTWARE PROD. INTL 256L

506 WINTECH DATA PROD CORP 256D

Nfl domestic Inquiries, please

SUBSCRIBERS ONLY!*

Use BYTE's Telephone Inquiry Processing System

Using TIPS can bring product information as much as 10 days earlier.

SEND FOR YOUR 1) If you are a new subscriber or have lost your I.D. card, circle #1 on the Reader Service

SUBSCRIBER I.D. CARD Card; attach mailer label. We will immediately send your personal TIPS subscriber card.

GET PREPARED

2) Write your Subscriber Number, as printed on your Subscriber I.D. Card, in boxes in Step 5 below.(Do not add O's to fill in blank boxes)

3) Write numbers for information desired in boxes in Step 7b below.(Do not add O's to fill in blank boxes.)

CALL TIPS

4) Now, on a Touch-Tone telephone dial: (413) 442-2668 and wait for voice commands.

ENTER YOURSUBSCRIBER AND

ISSUE NUMBERS

5) When TIPS says: "Enter Subscriber Number"

(Enter by pushing the numbers and symbols [# or * enclosed in the boxes] on telephone pad

ignoring blank boxes)

Enter DDDDnnDDIII

6) When TIPS says "Enter magazine code & issue code"Enter CD Lffl El IS H 11

ENTER YOURINQUIRIES

7a) When TIPS says "Enter (next) Inquiry Number"

Enter one inquiry selection from below (ignore blank boxes)

b) Repeat 7a as needed (maximum 17 inquiry numbers)

1.

DDD1I

6.

nana] Li

10.

DODBlffl

14.

DDDII

2.

D D D Lffl H

7.

□ □□mm

11.

DDnmm

15.

DDD11

3.

□ □ □ Lffl Lffl

8.

□ □□LULU

12.

DDDIMl

16.

DDDLIirji]

4.

□ □ □ Lffl Lffl

9.

□ □□LB Lffl

13.

DDDII

17.

nnnoBH

5.

□ □ D Lffl Lffl

END SESSION

8) End session by entering S 0 Lffl CD Lffl Lffl

9) Hang up after hearing final message

If you are a subscriber and need assistance, call (603) 924-9281.

If you are not a subscriber fill out the subscription card found in this issue or, cail BYTE Circulation 800-258-5485.*Domestic and Canadian Subscribers Only!464 BYTE • SEPTEMBER 1986

TODAY IS THE

BLACKEST DAY IN

DOT MATRIX PRINTER

HISTORY

It would pay You to mark it on your calendar.Because today is the day we introduceour new Pinwriter™ P5XL dot matrix printer.The only dot matrix printer available capableof producing the rich, black printing you asso-ciate with a letter-quality printer. Becauseit's the only one designed to use a multi-strike film ribbon—the same ribbon usedin typewriters and letter-quality printers.

Black letter-qualityprinting is only the be-ginning. The PinwriterP5XL printer can alsouse an optional ribbon toprint in seven other colors. And it hasthe finest graphics resolution jof any impact printer you /ncan buy Plus it's very fast Mand exceptionally quiet.It's only natural that

A LITTLEBLACK MAGIC.

Actual line printed with thePinwriter P5XL printer.

the first dot matrix printer with true letter-quality printing should be an NEC. Afterall we make Spinwriter® letter-qualityprinters, the most popular line today aswell as the Pinwriter P5 dot matrix printer,the most advanced 24-pin printer.

The Pinwriter P5XL printer is part ofthe most extensive line of 24-pin printersavailable. You'll find a model designed tofit every need and budget. See them atyour dealer or call 1-800-343-4418 (in MA617-264-8635). Or write: NEC InformationSystems, Dept. 1610,1414 MassachusettsAve., Boxborough, MA01719.

NEC PRINTERS.THEY0NLY STOPWHEN YOU WANTTHEM TO.

faeaffisscrae

W mUk — Computers and Communications©1986 NEC Corp

NEC

NEC Information Systems, Inc.

Inquiry 252

Next to your computer,

nothing beats a Tandy printer*

High-quality printers—for less!

Complete your system with the right printerfor your home or office. Tandy offers the fineprint quality, graphics and high performance youneed—at a price you can afford. Whatever yourprinting requirements, we've got what you needfor your business or home computer.

Versatility and compatibility for your business

The DMP 430 (26-1277, $699) gives you fan-tastic reproduction at a great price. The DMP430 is a 132-column dot-matrix printer with an18-wire print head that delivers superior corre-spondence characters in a single pass. You canchoose from micro, italic and double-high fonts,as well as bit-image graphics. Andin the draft mode, the DMP 430delivers a fast 180 characters persecond. IBM® PC compatible.

Radio Shacli

The Technology Store

A DIVISION OF TANDY CORPORATION

Low-cost, triple-mode personal printer

The DMP 130 (26-1280, $349.95) lets youchoose from word processing, data processingand dot-addressable graphics. The DMP 130prints in four character styles: standard or italiccursive, in draft or correspondence modes, at upto 100 characters per second. Features a bidirec-tional logic-seeking print head for maximum effi-ciency, plus a built-in tractor to prevent paperfrom slipping. IBM® PC compatible.

Tandy . . . Clearly Superior™

For the best value and selection in top-qualityprinters, shop your local Radio Shack ComputerCenter. We fully back what we sell with unbeat-able support and service. Come intoday and see our complete selec-tion of printers, computers, up-grades and accessories.

Prices apply at Radio Shack Computer Centers and at participating stores and dealers. The DMP 430 may require special order. IBM/Registered TM International Business Machine Corp.

Inquiry 292