Byte Magazine Volume 03 Number 04 - Optimization

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)

%

MOTQM

DIMMfflil)

by any other

micro-computersystem

-

COMPUTERSTERMINALSPRINTERSSOFTWARE

TAPE SYSTEMS

DISK SYSTEMS

GRAPHICS

PROM PROGRAMMER

MEMORY - 4K, 8K, 16K & 32KPROGRAMMABLE REAL TIME CLOCKCALCULATOR INTERFACEA - D CONVERTER

Write, or circle our reader reply number for a catalog describing our complete line of computer hardwareand software.

NOW AVAILABLE IN BOTH KIT AND ASSEMBLED FORM.

SOUTHWEST TECHNICAL PRODUCTS CORPORATION

219 W. RHAPSODY

SAN ANTONIO, TEXAS 78216

Circle 105 on inquiry card.

Now we can announce it-

the multi-disk driveSystem Three Computer

A fast Z80 microcomputer with up to 512 kilo-bytes of RAM, 4 disk drives arid 1 megabyteof disk storage—with CRT terminal and fastprinter. Even an optional PROM programmer.Strong software support, too, like FORTRANIV, Extended BASIC, and Macro Assembler.

PROFESSIONAL GRADE—FOR PROFESSIONALS

Chances are you've already heardthat there is a Cromemco SystemThree Computer, We've proudly pre-viewed it at WESCON on the WestCoast and NYPC on the East Coast.

But you also know Cromemco. Wedon't announce until we're ready toship.

Now we're ready.

And what a computer we've gotfor you.

It does it all.

It's a complete system—processor,CRT terminal, line printer.

First, it's fast—1 microsecond nom-inal execution time and 250 nano-second cycle time.

Its equally fast RAM memory islarge and enormously expandable—32 kilobytes expandable to 512 kilo-bytes. No danger ot obsolescencefrom inadequate RAM capacity.

THE ONLY MICROCOMPUTEROFFERING 4 DISK DRIVES

Further, the System Three comeswith two disk drives to give you 512kilobytes of disk storage. Soft-sectored IBM format. Optionally, youcan have four drives with 1 mega-byte of storage.

There's disk protection, too, sincein the LOCK position disks can't beejected while they are running.

21-SLOT MOTHERBOARD

This new CS-3 is a computer thatwon't be outdated soon. It has a 21-card-slot slide-out motherboard andan S-100 bus so that you can plug inall sorts of support circuitry. Theheavy-duty 30-amp power supply caneasily handle all this.

BROAD S-100 SUPPORT

The S-100 is the bus that Cro-memco so strongly supports withover a dozen plug-in circuits ranging

from analog I/O to high-speed RAMmemory with our bank-select feature.

TRULY POWERFUL SOFTWARE

You have to have software. AndCromemco is far in front there, too.Our FORTRAN IV, for example, isequal to the FORTRAN compilerson large mainframes. Further, it (andour other software) is low-priced.

Our 16K Z80 BASIC is one of thefastest and most capable. Full 14-digit precision.

There's also our Z80 Macro As-sembler and Linking Loader. UsesZ80 mnemonics. Allows referencingFORTRAN common blocks.

CRT TERMINAL AND PRINTER

The CS-3 terminal has 80-characterlines and a 24-line page with lineand page editing.

Note the separate numeric keypadand cursor keypad.

The printer is fast—180 charactersper second; 132-coiumn lines.

SEE AT YOUR DEALER

You have to see the CS-3 to fullyappreciate it and its low prices start-ing at $5990 in the rack mount ver-sion.

See it at your local dealer shownon the other side of this page. Hehas a demo to show you.

He also has brochures giving youdetails.

You know the CS-3 is going to bea sensation.

Better contact your dealer now.

Q

Cromemco

cle 35 on inquiry card.

see next j\page]/

BYTE April 1978

m

RE ABOUT THE SYSTEM THREE...

For office situations new SystemThree can be provided with walnutfloor cabinet. Metal bench cabinetalso available. Unit is normallyrack-mount style.

System Three front panel swingsopen and 21-slot motherboard/card cage slides forward for easyinsertion of extra circuit boards.

Retainer bar secures circuit cardsfirmly in sockets.

DO

Optional panel PROM program-mer has two sockets to facilitateduplicating PROM content.

SEE YOUR LOCALSYSTEM THREE DEALER

—

—

Phoenix, AZ 85013

BYTE SHOP OF ARIZONA

24 West Camelback(602) 265-0065

Little Rock, AR 72206

COMPUTER PRODUCTS UNLTD.

2412 So. Broadwav(501)666-2839

Carson, CA 90746

SUNSHINE COMPUTER CO.

207 10 S. Leap wood Avenue(213) 327-2118

Citrus Heights, CA 95610

BYTE SHOP OF SACRAMENTO

6041 Greenback Lane

(916)726-2557

Loomis, CA 95650

KINGMONT ENTERPRISES, INC.

9900 King Road(916) 9884189

Mt. View, CA 94040

BYTE SHOP OF MOUNTAIN VIEW

1063 ElCamlno Real(415) 969-5464

San Mateo, CA 94401COMPUTER TERMINAL

309 So. San Mateo Drive(415) 347-9894

Sunnyvale, CA 94086RECREATIONAL COMPUTERS

1324 South Mary(408) 735-7480

Van Nuys, CA 91411COMPUTER COMPONENTS

5848 Scpulveda Blvd.(404)455-0646

Atlanta. GA 30340

ATLANTA COMPUTER MART

5091-B Buford Hwy

(404)455-0647

Haiku, Maui, HI 96708CAPACITY, INC.

P.O. Box A(808) 575-2930

Honolulu, HI 48103COMPACT COMPUTERS

P.O. Box 10096(808) 261-3281

Schaumburg, IL60195DATA DOMAIN

1612 E. Algonquin Road(312) 397-8700

Bloomington, IN 47401DATA DOMAIN

406 So. College Avenue(812)224-3607

Fort Wayne, IN 46805DATA DOMAIN

2805 E. State Blvd.(219)484-7611•Pikesville, MD 21208MODULAR SYSTEMS, INC.

4005 Seven Mile Lane(301)484-6322

Rockville, MD 20852COMPUTER WORKSHOP

1776 East jefferwn(301)468-0463

Towson.MD 21204COMPUTERS, ETC.

13 A Allegheny Avenue(301)296-0520

Burlington, MA 01803

THE COMPUTER STORE

120 Cambridge Street(617) 272-8770

Edina, MN 55435COMPUTER DEPOT

3515 W. 70th Street(612)927-5601

Iselin, NJ 08830

COMPUTER MART OF NEW JERSEY

501 Route *27(201) 283-0600

Eggertsville, NY 14226

CORSON COMPUTER CORPORATION

3834 Main Street(716)832-0662

Hollis, NY 11423

SYNCHRO SOUND ENTERPRISES

193-25 {amaica Avenue(212)468-7067•Cincinnati, OH 45409DATA DOMAIN

7694 Camargo Road(513) 561-6733

Dayton, OH 45409DATA DOMAIN

1932 Brown Street(513) 223-2348

Columbia, SC 29205

BYTE SHOP OF COLUMBIA

2018 Green Street(803) 771-7824

Nashville, TN 37211SURYA CORPORATION

5755 Nolensville Road(615)834-5638

Corpus Christi.TX 78411

MICRO SYSTEMS SERVICES, INC.

5301 Everhart, Space H(512)855-4516

Dallas, TX 75243COMPUSHOP

211 Keystone Pk, 13922 North Central(214) 234-3412

Houston, TX 77057

COMPUTERLAND OF S. W. HOUSTON

6439 Westheimer(713) 977-0909

Houston, TX 77006ELECTROTEX

2300 Richmond Avenue(713) 526-6934

Houston, TX 77098THE MOS

185 3 Richmond Avenue(713)527-8008

Racine, WI 53405COLORTRON TV

2111 Lathrop Avenue

(414) 637-2003

Huntingdon, Cambs., England PE194NJCOMART LIMITED

39 Gordon Road, Little Paxton0480-74356

Munster, 4400 Hiltrup, West GermanyBASIS MICROCOMPUTER VERTRIEB

Von-Flotow-Strabe 502501-4800

Wedel 2000, (Holstein), West GermanyDIGITRONIC COMPUTERSYSTEME

Bei Der Ooppeleiche 3-504103-7393

•Mexico 18, D.F.MexicoINTELEX,S. A.

P. A. de los Santos 70(905)516-9970

Zurich, Switzerland 8003COMICRO AG

Badenerstrasse 281

a

Cromemeo

incorporatedSpecialists in computers and peripherals2400 CHARLESTON RD., MOUNTAIN VIEW, CA 94043 • (415) 964-7400

2 BYTE April 1978

Circle 35 on inquiry card.

In the Queue

BliTE

April 1978

Volume 3 Number 4

4090

114132

10

18

28

49

66

126

168

178

4

6

22

46

62

131,166

147

148

149

152

156159160188206208208

Foreground

OPTIMIZATION: A CASE STUDY

Software Techniques—NoyceA COLLEGE MICROCOMPUTER FACILITY

Lab Design—Foster-SouthernTUNE IN AND TURN ON: A Computerized Wireless AC Control System

Hardware—CiarciaROBOT SIMULATION ON MICROCOMPUTERS

Robotics—Webster

Background

THE TDL SYSTEM MONITOR BOARD: A Writer's View

Hardware—RehmAN INTRODUCTION TO TABLES

Programming Techniques —Bu tterfieldHOW TO MULTIPLY IN A WET CLIMATE: Use and Basis for a Design

Compu ta tion—Bryan t-S was deeTHE RADIO SHACK TRS-80: An Owner's Report

Revie w— Fyls traTHE BRAINS OF MEN AND MACHINES: Part 4

Robotics—KentUser's Report: THE SOL-20

Product Description—BarbourCIE NET: A Design for a Network of Community Information Exchanges

Personal Computing Networks—WilberSERENDIPITOUS CIRCLES EXPLORED

Graphics— Kellerman

Nucleus

SCIENTIFIC LIBRARY

APR 3 W8Ptf. & TJi OFFICE

In This BYTE

Personal Computing: New Prospects for Art and Science

Letters

Hand Assembling M6800 Relative Addresses

BYTE's Bugs

BYTE's Bits

Department of Robotics Hocum

Programming Quickies

Languages Forum: On Consumers' Languages and Human Interfaces

Concerning PASCAL: A Homebrew Compiler ProjectTechnical Forum: Problems of International Television Standards

Tick. . . Tick. . . Tick. . . Booooom

Avoid Self-Modifying CodeBook Reviews

Publisher's Note: Concerning Reprints from BYTEClubs, Newsletters

What's New? 0^10 *

Classified AdsBOMBReader Service

BYTE is published monthly by BYTE Publications Inc, 70 Main St. Peterborough NH 03458. Address all mail except sub-scriptions to above address: phone (603) 924-7217. Address all editorial correspondence to the editor at the above address.Unacceptable manuscripts will be returned if accompanied by sufficient first class postage. Not responsible for lost manu-scripts or photos. Opinions expressed by the authors are not necessarily those of BYTE. Address all subscriptions, change ofaddress. Form 3579, and fulfillment complaints to BYTE Subscriptions, PO Box 590, Martinsville NJ 08836. Second classpostage paid at Peterborough NH 03458 and at additional mailing offices-USPS Publication No. 102410. Canadian secondclass registration No. 9321. Subscriptions are $15 for one year, $27 for two years, and $39 for three years in the USA and itspossessions. In Canada and Mexico, $1 7.50 for one year, $32 for two years, and $46.50 for three years. $25 for a one yearsubscription by surface mail worldwide. Air delivery to selected areas at additional rates available upon request. $25 for a oneyear subscription by air delivery to Europe. Single copy price is $2.00 in the USA and its possessions, $2.40 in Canada andMexico, $3.50 in Europe, and $4.00 elsewhere. Foreign subscriptions and sales should be remitted in United States funds.Printed in United States of America. Each separate contribution to this issue and the issue as a collective work copyright ©1978 by BYTE Publication Inc. Ail rights reserved.

PUBLISHER

Virginia Peschke Lundner

EDITOR IN CHIEF

Carl T Helmers Jr

PRODUCTION MANAGER

Judith Havey

ADVERTISING DIRECTOR

Debra Boudricau

CIRCULATION MANAGER

Gregory Spitzfaden

COMPTROLLER

Michael Galan

EDITORS

Blaise W Liffick

Christopher P Morgan

CO-OP EDITORS

Raymond Cote

Scott Morrow

ASSISTANT PRODUCTION MANAGER

Karen Gregory

PRODUCTION EDITORS

David William Hay ward

Nancy Salmon

EDITORIAL ASSISTANT

Laura A Hanson

ADVERTISING

Noreen Bardsley

JillCallihan

Patricia Clark

PRODUCTION ASSISTANT

Cheryl Hurd

CIRCULATION ASSISTANTS

Sarah Bauhan

Pamela R Hcaslip

DEALER SALES

Ginnie F Boudricau

TRAFFIC MANAGERS

Thomas Harvey

EdmondC Kelly Jr

ART

Stephen Kruse

Wai Chiu Li

Dorothy Shamonsky

Ellen Shamonsky

RECEPTIONIST

Jacqueline Earnshaw

CLUBS AND NEWSLETTERS

David Wozmak

DRAFTING

Douglas Glen

Stephen Kruse

Lynn Malo

Bill Morello

TYPOGRAPHY

Goodway Graphics

PHOTOGRAPHY

Ed Crabtree

PRINTING

Rumford Press

NEW PRODUCTS EDITOR

Daniel Fyls tra

ASSOCIATES

Walter Banks

Steve Ciarcia

David Fylstra

Portia Isaacson

BITS INC

Dennis Bliem

Janice Dolan

FToyd W Rehling

Mcdellin Stephens

Jeremy Youst

ADVERTISING SALES REPRESENTATIVES:

EAST, MIDWEST

Hajar Associates Inc

17 Durant St

West Roxbury MA 02132

(617) 325-5380

100 W Chicago Ave

Chicago IL 60610

(312)337-8008

WEST, SOUTHWESTBuckley /Boris Associates Inc912 South Barrington, Suite 202Los Angeles CA 90049(213)826-4621DISTRIBUTORS:EASTERN CANADARS-232 Distribution Company186 Queen St W, Suite 232Toronto ONTARIOWESTERN CANADAKttronic Ltd26236 26th Av RR 5Aldergrove BC VOX 1A0

April 1978© BYTE Publications Inc

In This BITE

About the Cover...

This month's cover is the work ofEduardo Kellerman, computed witha simple APL implementation of the"Serendipitous Circles" algorithm withseveral modifications. The originalalgorithm was described by authorsD John Anderson and William FGal way in an article on page 70 of theAugust 1977 BYTE. Eduardo's com-ments upon the modifications to thealgorithm form the text of his articleSerendipitous Circles Explored, whichincludes reproduction of 13 originalexamples he has made. Four of theseexamples were used as a group to formthe cover of this issue.

An important point to mention isthat many of the intricacies of thisform of display can be realized by anypersonal computer owner who also haspoint plotting graphics capability; andfor those who have color graphics,further variations worthy of experi-mentation include assigning colorvalues to each point. page 7 78

The evolution of the TDL systemmonitor board and its documentationare the subjects of Bradford E Rehm'sarticle, The TDL System MonitorBoard: A Writer's View. Also includedis a complete description of thevarious features and applications ofthe system monitor board. page JO

Tables can help you to create moreefficient programs. In An Introductionto Tables, F James Butterfield des-cribes different types of tables andhelps you to decide which kind is bestfor your specific need. page 78

Number crunching is a subset of thecapabilities of the personal computingsystem. Most microprocessors havelimited capabilities built in, capa-bilities which make programmed high-er level arithmetic relatively slow.One way to get around the limita-tions of programmed arithmetic soft-ware for long operations such as

page 7 74

multiplication is to implement somespecialized hardware. Jack Bryant andManot Swasdee show How to Multiplyin a Wet Climate by adding a MILspec high speed multiplier to a 6800processor. This provides a high speedhardware basis for doing floatingpoint arithmetic quickly. page 28

What is the ultimate 8080 (6800,6502, PDP-8, ...?) multiplication rou-tine? While not promising an answer,William B Noyce provides a directionin which to look for such with hisarticle Optimization: A Case Study.He takes a routine by ChristopherGlaeser which appeared in July 1977BYTE, and proceeds to explore theways in which the multiplicationalgorithm can be optimized withrespect to execution time, giventhe limitations of the 8080 instructionset. page 40

What's inside the Radio ShackTRS-80 computer? Since the warrantyis voided if the case seal is broken,Dan Fylstra cannot take you inside,but he can and does give a func-tional description of what you getwith the TRS-80 in his article TheRadio Shack TRS-80: An Owner'sReport. page 49

With a final installment entitledThe Machinery of Emotion andChoice, Ernest W Kent concludeshis 4 part series on The Brains ofMen and Machines, essential back-ground information for all whowould design and implement roboticsystems. page 66

One of the computer experimenter'sdreams has always been to controllights and appliances around the homeby computer, but the thought ofinstalling all the necessary wiring hasdampened many spirits. Steve Ciarciashows you how to get around theproblem with a reasonably pricedwireless AC control system that letsyour computer talk to your house.Read Tune In and Turn On, Part 1:A Computerized Wireless AC ControlSystem. page 7 74

Colleges are at last recognizingmicrocomputers as very useful andversatile laboratory tools. At Algon-quin College, Bill Foster and BobSouthern have set up A CollegeMicrocomputer Facility. As an in-troduction to the setup of such alab, this article may help answersome basic questions other collegedepartments might have about thepracticality of a microcomputerlaboratory. page 90

What's it like to use the ProcessorTechnology SOL terminal computeras a personal system purchased fullyassembled and tested? Dennis Barbour,an owner of a SOL-20, reports on hisexperiences with SOL in his User'sReport: The SOL-20. page 726

Experimentation with problems ofrobotic mechanisms does not neces-sarily have to begin with the me-chanisms themselves. Much of the pro-blem of building a robot and makingit work lies in the determination ofstrategies of movement and searchingthrough the environment that therobot inhabits. John Webster's articleRobot Simulation on Microcomputersshows how any personal computerwith a video display can be used toimplement a simple simulation of arobot confined to a playpen, page 732

In this month's BYTE, Mike Wilbercompletes his 3 part series outliningCIE Net: A Design for a Network ofCommunity Information Exchanges

with a discussion of "other issues,"which help fill in the design, page 768

April 1978 © BYTE Publications Inc

presents

A new powerful, flexible

series - EX3000

Computer Systems.

This complete series of computer systems embody architecturalconcepts previously found only in costly large scale computers. Theprimary concepts used in the EX3000 computer systems are dis-tributed processing for hardware and multi-tasking for system soft-ware. The EX3000 systems distribute system processing functions tothose system components that are best suited to perform those tasks.This state-of-the-art technology was prohibitive until the recent intro-duction of cost effective computational and control microprocessors,along with programmable peripheral circuits to perform preassigneddedicated tasks. Coupling these cost effective components with the*• distributed processing techniques proven by many large mainframecomputer manufacturers, Extensys Corporation has been able to pro-vide exceptionally powerful and flexible systems. Through theefficient use of system components in a modular structure, the EX3000Computer Systems allow configurations that meet a wide variety ofspecific applications as well as offering expansion capability to sat-isify increasing usage demands.

The hardware of the EX3000 Computer Systems consist of sub-systems and boards. Three subsystems are provided:

• FOS100 Floppy Diskette Subsystem with 1to 4 Mega-bytes of on-line mass storage.■ MTS100 Multiple Terminal Subsystem with 8 or more

independent RS-232c serial interfaces.- TPS100 Terminal/Operator Processor Subsystem withkeyboard, CRT, RS-232c serial interface, andexpanded video attributes.

Circle 46 on inquiry card

Other p/c boards which are included in the EX3000 system are:

• RM64A Memory board with 16K to 64K bytes of

RAM storage.

• MM16 Memory Management board with bank switching

up to 1 megabyte of RAM memory and a priorityDMA mechanism for high speed DMA transfers.

• MPU805 8085 Central Processor with on-board PROM

space (16K), prioritorized vectored interrupts,and combination interval timers/event counters.■ MPU800 Optional Z-80 Central Processor with on-boardPROM, vectored interrupts and reset-jump.EMOS, Extensys Multiprocessor Operating System, furnishes fund-amental EX3000 system software. This multi-tasking operating systemprovides a high level interface between application programs andEX3000 hardware components. EMOS is a multi-process, multi-useroperating system which provides all file handling capabilities as well ascomplete program development tools. Multi-user EMOS providesmemory protection for each user. It also provides inter-system com-munication to allow multiple EX3000 systems to operate as a unit witha common data bank along with secured individual user data bases.

Higher level languages including EXTENDED BASIC, COBOL andANSI FORTRAN which are EMOS-compatible offer added flex-ibility to generate application programs & development systems.

The EX3000 systems offer both high performance and cost-effect-ive computer power to OEMs and end users. Join the Third Revolut-ion in computer design by investigating the distributed processing/multi-tasking capabilities of microprocessors built-into the ExtensysEX3000 Computer Systems.

For more information on the EX3000Computer Systems and how they cansatisfy your processing needs,give us a call.

extensys

'corporation

380 Bernardo AvenueMountain View, CA 94040(415) 969-6100

BYTE April 1978 5

Editorial

Personal Computing:

New Prospects for Art and Science

By Carl Helmers

Articles Policy

BYTE is continually seeking qualitymanuscripts written by individuals whoare applying personal computer systems,designing such systems, or who haveknowledge which will prove useful toour readers. For a more formal descrip-tion of procedures and requirements,potential authors should send a self-addressed, stamped envelope to BYTEAuthors' Guide, 70 Main St, Peter-borough NH 03458.

Articles which are accepted arepurchased with a rate of up to $50 permagazine page, based on technicalquality and suitability for BYTE'sreadership. Each month, the authorsof the two leading articles in the readerpoll (BYTE's Ongoing Monitor Box or"BOMB") are presented with bonuschecks of $100 and $50. Unsolicitedmaterials should be accompanied by fullname and address, as well as returnpostage."

Changes of State

I'll start by turning attention to thephenomenon of changes of state. In theabstract, the state of a system is the com-plete set of parameters needed to describethat system unambiguously at some pointof time. The dynamically changing universein which we live is such that changes of stateare prevalent in whatever we choose toexamine. Life seems fraught with changes ofstate by its very nature.

In elementary physics, for example, wefind the irreversible change of state whichoccurs when a warm body is placed in a coldchamber without any source of thermalenergy, or when an orbiting satellite isplaced in a decaying orbit where a slight butmeasurable atmospheric drag makes a fieryend inevitable. In chemistry, one sees thechange of state which is a chemical reactiongoing to completion after materials aremixed.

On a less directly observable, yet stillscientific, basic we find the theories ofgeophysics and the study of changes of statein the depths of our planet's past. We seeresidual traces of significant changes of statewhich must have occurred. We find, forexample, a well-defined mechanism ex-plaining the acretion of planets and starsfrom a proto-stellar nebula. One residualtrace of this change of state is the planetEarth and its Moon. A little later in thegeological record, we find the change ofstate which is the evolution of life and itsfundamental changes in the chemical com-position of the surface and atmosphere ofthe planet Earth.

The history of the human race on thisplanet is basically a history of similarchanges of state, where the "state" is muchmore nebulous but nonetheless observable.The state of civilization, as measured by itstechnologies, has been in a nearly con-tinuous process of change, occasionallymarked by landmark discoveries or inven-tions. Perhaps the first such social change ofstate was the invention of controlled fire forcooking and heating. Hardly far behind wasthe invention of the wheel, a basic

mechanism of some repute. Somewhere inthis sequence came the invention of writtenlanguage, a major turning point, as was thedevelopment of agriculture. In our recentcultural history, there have been a numberof similar profound changes of state: print-ing, controlled mechanical power, controlleduse of electricity. Lately we have reachedthe zenith of the arts of wheeled transpor-tation combined with controlled mechanicalpower which is the modern automobile.This probably irreversible change has spreadlike wildfire through the civilized world ofthe past 75 years or so.

My thesis is that the idea of the personalcomputer is the latest example of such achange of state in our technological civili-zation, a change of state which is still farfrom completion. It represents the harnes-sing of controlled mental powers, the abilityto automate thought processes and pro-cedures freeing the brain for work morecreative than rehashing the familiar. In thisessay, I'll concentrate upon the implicationsof the personal computer for art and science,the two areas of our culture which standto gain greatly from this new technology.We are at a point in time when the tech-nology of computing is within the range ofevery citizen who wants to use it.

Art, Science and Intellect

Art and science are both activities of theintellect. I make this statement knowing fullwell that 'intuitive" artists and scientistsmay protest this identification, but I believeit is obvious. By intellect, I mean the fullrange of mental activities, including thosenot fully understood such as creativity andjudgement. I'll offer two definitions whichwill serve to illustrate the close relationshipbetween art and science, as well as thedifferences.

One way to describe a work of art is as aselective representation of reality created bythe artist to produce an aesthetic effect Thenature of the selection process and theidentification of the aesthetic purposes

Continued on page 139

April 1978 ©BYTE Publications Inc

Subsystem B

Each board is a standout.Together, they're a powerhouse

In the beginning there were boards,thousands of them.

That s how we started in the business.Making memories and interfaces forother people's computers... and makingthem better.

Now that our own Sol has becomethe number one small computer, youmight think were putting less emphasison our board business.

Not so.

We're just doing more creative thingswith them.

One neat package gets yourcomputer on the air.

For example, we've built SubsystemB, which ties together five ProcessorTechnology modules into a completelyintegrated system that makes otherS-100 Bus computers work almost aswell as our Sol.

Circle 91 on inquiry card.

Subsystem B includes a memorymodule, three input/output modules,a general purpose memory, andappropriate software.

A specialized software programcalled CUTER knits togetheryour computer and its peripherals tocreate an integrated, smoothlyworking system.

It's the fastest, cleanest way to get online, and it costs less than ifyou bought each module separately.

You get your choice of two lowpower, reliable memory modules in 8Kor 16K capacity.

Our VDM-1 video display module(still $199 in kit) is the industry standarddisplay device with over 6,000 in use.

Our CUTS high speed, low cost($149 in kit) audio cassette interface isthe most reliable on the market and issupported by our broad line of cassette

software including Extended BASIC,FORTRANf PILOT* FOCAL andnumerous others.

And our 3P +S input/output moduleoffers a low cost way to handlevirtually all the I/O needs of any S-100Bus compatible computer system.There are close to 10,000 in the field.Price is just $149 in kit.

Yes, we may have become the makerof the Number 1 small computer —the Sol. But we haven't neglected thequality of our board business. Wecan't afford to... because we use manyof them in our own computers.

For our most recent literature andprice list see your dealer or writeProcessor Technology Corporation,Box B, 7100 Johnson Industrial Drive,Pleasanton, CA 94566. (415) 829-2600.

ProcessorTechnology

•Available soon.

U.S. prices only.BYTE April 1978 7

«

'"•vr.Tmxm.M'SJ'm

H

4i

II aiddv Supnpojjui

The home computer that s readyto work, play and grow with you.

Clear the kitchen table. Bring in the colorT.V. Plug in your new Apple II? and connectany standard cassette recorder/player. Nowyou're ready for an evening of discovery inthe new world of personal computers.

Only Apple II makes it that easy. It's acomplete, ready to use computer—not a kit.At $1298, it includes features you won't findon other personal computers costing twice as

much.

Features such as video graphics in 15 colors.^And a built-in memory capacity of 8K bytesROM and 4K bytes RAM—with room for lotsmore. But you don't even need to know aRAM from a ROM to use and enjoy Apple II.It's the first personal computer with a fastversion of BASIC—the English-like pro-gramming language—permanently built in.That means you can begin running yourApple II the first evening, entering your owninstructions and watching them work, even ifyou've had no previous computer experience.

The familiar typewriter-style keyboardmakes communication easy. And your pro-grams and data can be stored on (and re-trieved from) audio cassettes, using the built-in cassette interface, so you can swap withother Apple II users.This and other peri-pherals—optional equipment on most per-sonal computers, at hundreds of dollars extracost—are built into Apple II. And it'sdesigned to keep up with changing technol-ogy, to expand easily whenever you need it to.As an educational tool, Apple II is a soundinvestment. You can program it to tutor yourchildren in mostany subject, suchas spelling,

history or math. But the biggest benefit—nomatter how you use Apple II—is that you andyour family increase your familiarity with thecomputer itself. The more you experimentwith it, the more you discover about itspotential.

Start by playing PONG. Then invent yourown games using the input keyboard, gamepaddles and built-in speaker. As you experi-ment you'll acquire new programming skillswhich will open up new ways to use yourApple II. You'll learn to "paint" dazzling colordisplays using the unique color graphics com-mands in Apple BASIC, and write programsto create beautiful kaleidoscopic designs.As you master Apple BASIC, you'llbe able to organize, index andstore data on household fi-nances, income tax,recipes, and record col-lections. You can learn tochart your biorhythms,balance your checking ac-count, even control your homeenvironment. Apple II will go asfar as your imagination can take it.Best of all, Apple II is designed to growwith you. As your skill and experience withcomputing increase, you may want to addnew Apple peripherals. For example, a re-fined, more sophisticated BASIC language isbeing developed for advanced scientific and

mathematicalapplications.And in addi-tion to thebuilt-inaudio, videoand gameinterfaces,there'sroom foreight plug-inoptions such as a prototyping board for ex-perimenting with interfaces to other equip-ment; a serial board for connecting teletype,printer and other terminals; a parallel inter-face for communicating with a printer oranother computer; an EPROM board for stor-ing programs permanently; and a modemboard communications interface, or a floppydisk interface with software and completeoperating system. And there are many moreoptions to come, because Apple II wasdesigned from the beginning to accommo-date increased power and capability as yourrequirements change.

If you'd like to see for yourselfhow easy it is to use and enjoyApple II, visit your local dealer for ademonstration and a copy of ourdetailed brochure. Or write Apple

Apple II™ is a completely self-containedcomputer system with BASIC in ROM,color graphics, ASCII keyboard, light-weight, efficient switching power supplyand molded case. It is supplied withBASIC in ROM, up to 48K bytes ofRAM, and with cassette tape, video andgame I/O interfaces built-in. Also in-cluded are two game paddles and ademonstration cassette.

SPECIFICATIONS

• Microprocessor: 6502 (1 MHz).

• Video Display: Memory mapped, 5

modes—all Software-selectable:

• Text—40 characters/line, 24 linesupper case.

• Color graphics—40h x 48v, 15 colors

• High-resolution graphics—280h x192 v; black, white, violet, green(16K RAM minimum required)

• Both graphics modes can be selectedto include 4 lines of text at the bottomof the display area.

• Completely transparent memoryaccess. All color generation donedigitally.

• Memory: up to 48K bytes on- boardRAM (4K supplied)

• Uses either 4K or new 16K dynamicmemory chips

• Up to 12K ROM (8K supplied)

• Software

• Fast extended Integer BASIC inROM with color graphics commands

• Extensive monitor in ROM•I/O

• 1500 bps cassette interface

• 8-slot motherboard

• Apple game I/O connector

• ASCII keyboard pqrt

• Speaker

• Compositevideooutput

Apple II is also

available in board-only

form for the do-it-yourself hobbyist. Has

all of the features of the Apple II system,

but does not include case, keyboard,

power supply or game paddles. $798.

PONG is a trademark of Atari Inc.*Apple II plugs into any standard TV usingan inexpensive modulator (not supplied).

Computer Inc., 20863 Stevens Creek Blvd.,Cupertino, California 95014.

SEE OUR FULL PAGE DEALER AD ON PAGE 105.

apple computer inc.

■ ■ ■ Circle 4 on inquiry card.

The TDL System Monitor Board

A Writer's View

At nearly the witching hour of a wintryDecember evening, several of us, includingsome of the engineering and managementstaff from TDL, settled down for "lunch"at the Edison Diner in NJ. It was indeedlunch time for the TDL people, who hadtaken to working night owl shifts so thatthey could do engineering and softwarework without being distracted by telephonecalls and visiting salespeople. In the courseof a conversion which meandered fromcomputers, to memories of our spent youthsin New Jersey suburbia, to ham radio andback to computers, 1 learned that proto-type printed circuit boards for a newproduct were being ordered, but that thestaff was having trouble finding time towrite the documentation for it. In responseto this familiar story, I volunteered to writethe documentation.

When I offered to do the work 1 plannedto stop by at TDL, pick up a prototype, andtalk with both Mike Simmonds, the designengineer, and Roger Amidon, who is largelyresponsible for TDL's Zapple monitor. Iwould also get schematics, blueprints andwhatever else had fallen out of the creativemaelstrom that gave birth to the new prod-uct, the System Monitor Board (SMB).These I would remove to my Rhode Islandshore cottage, and after several days I wouldemerge with the finished user's manual.

Bradford E Rehm1004 Middle Cove DrPiano TX 75023

What actually happened was that on anominously cold afternoon several weekslater, Mike Simmonds and I decided thathe would fly up from New York, bringingmost of the hardware and a lot of the re-maining information I would need. Withinminutes of our conversation, though, webegan to receive the heaviest snowfall ofthe year. We decided there would be notrips that weekend and that Mike wouldsend a cassette of dictated information.

Now enter a second difficulty: the proto-type boards never arrived. And worse, themasked read only memories that held theZapple monitor were late. It didn't matterthat their delivery had been promised andeven guaranteed a few days before. Theydidn't arrive last week, or the week after,or the week after that. It did matter, how-ever, that full page ads were beginning toappear in the magazines, heralding thearrival of the SMB.

TDL patiently explained to customersand dealers that "the product will beavailable soon; there has been a productiondelay. We expect to be shipping soon,and. . .we'll do our best. . . ."

10

April 1978 ©BYTE Publications Inc

^bur experiencewith personal computers

is going to openan unlimited career at TI.

TI is into personal computersin a big way, and that means aground floor opportunity isgoing to be open for you, thepersonal computing innovator.You'll be joining the undis-puted world leader in creatingnew products and markets forconsumer electronics with thecompany that invented thecalculator on a chip. And it's allgoing to happen in TFs newManagement and TechnologyCenter for Consumer Productsin Lubbock, Texas. Located inthe high, dry, and cool plainsof West Texas, Lubbock isabout halfway between Dallasand Albuquerque. It is thehome of Texas Tech University.You are just a few hours' drivefrom skiing in Taos, or touringand shopping in Juarez,Mexico.

Make your career opportuni-ties in the following areas:

Personal ComputerProduct Marketing Manager

Responsible for establishingdistribution channels forpersonal computer products,developing advertising andsales promotion programs,training, quoting and providingmarket requirements for newproducts and software.Requires BS in EE, math,physics or Computer Science.MBA preferred. Minimum of5 years' experience in con-sumer sales or marketingrelated to desk programmablecalculators, minicomputer

systems, microcomputersystems, or small businesssystems.

Systems Programmers

Outstanding opportunities —design, code, integrate anddebug operating systemmodules, including deviceservice routines, self-testdiagnostics, and system utili-ties. Requires BSEE or Com-puter Science plus minimum of3 years in assembly program-ming with some high levellanguage experience.

Digital Design Engineers

Opportunity to design anddevelop digital subsystems formajor new products. Projectswill require design-to-costdiscipline with internal andexternal component vendors,vendors of peripheral devicesand making trade-offs of hard-ware and software. RequiresBSEE with 2 years' experience.Prefer experience in design ofbubble and/or flexible diskcomputer memory subsystems.

Product Design Engineer

Responsibility for mechani-cal design on major new per-sonal computer products.Interface with electrical designengineers, software develop-ment personnel, marketing,purchasing, planning and allareas involved in taking aproduct from concept throughinitial production. RequiresBSME with a minimum of

3 years' experience in designor closely related field.Knowledge of plastic toolingpreferred.

Application Software Specialist

Total responsibility fordevelopment of complete appli-cation packages for specificbusiness sectors and profes-sionals. Specifications, design,coding, program check-out anddocumentation for personalcomputer systems. RequiresBA or BS in math or ComputerScience or BBA with data pro-cessing major with 2-3 years'experience. Program in highlevel language on mini, micro,or business computer systems.

Marketing Support Engineers

Project responsibility forfuture product service directionconcerning existing as well asfuture products. Develop andmaintain total service programfor personal computer systemsand field testing/check-out.Requires BSEE or equivalentwith at least 3 years' experi-ence with programmable deskcalculators, minicomputer sys-tems, microcomputer systems,small business systems,or product servicemanagement. I

Send your resume inconfidence to: Bill Toomey/P. 0. Box 10508, M.S. 5807,Dept. B / Lubbock, TX 79408.

Texas Instruments

INCORPORATED

An equal opportunity employer M/F

Circle 113 on inquiry card.

BYTE ApriM978 11

About the Author:

Bradford E Rehm iscurrently employed as asystems analyst at TexasInstruments in Dallasworking with a distrib-uted computer systemthat uses 960 seriesminicomputers.

In the end, of course, the SMB made itto the marketplace. I had an interesting ifsomewhat frustrating experience in long-distance communication, but the boardsurvived its ordeal of creation. Now let'shave a look at what survived.

At a time when single chip computersboasting a processor, clock, volatile andread only memory, and 10 ports on one dieare being announced, a multifunctionboard may seem less than innovative. Thesingle chip computers are, of course, in-tended to be used in limited, dedicatedapplications. The SMB is designed to bethe basis for much larger and more ver-satile systems. It includes the followinghardware and software:

• 2 K bytes of masked read onlymemory containing the TDL Zapplemonitor with 26 commands.

• A parallel port terminating in eightswitches used to select default IOdevice assignments for the monitor.

• 2 K bytes of static programmablememory which can be used for pro-gram instructions or monitor ex-tensions.

• Two serial 10 ports (RS-232C or 20mA current loop).

• One bidirectional parallel port withstatus bits.

• A cassette port which is controllablethrough the Zapple monitor.

• A reset circuit which returns thesystem to Zapple either at power onor at manual reset.

Logical Device

Default Code

Physical Device

Console:

000110

11

Teletype

video

batch (reader=KBD)

(user defined)

Reader:

000110

11

Teletype (reader)tape (user defined)cassette(user defined)

Punch:

000110

11

Teletype (punch)tape (user defined)cassette(user defined)

List device:

000110

11

Teletypevideo

(user defined)(user defined)

Table 1: Physical devices serviced by the TDL Zapple monitor. The Zapplemonitor handles IO in terms of four logical devices: the system console,reader, punch and list devices. These are categorical terms, however, and apunch device, for instance, may in fact be the record function of a cassetterecorder.

The SMB board can be used as the basisfor a small familiarization system by solder-ing two Altair (S-100) bus connectors backto back, plugging the SMB into one and aZ-80 processor board such as TDL's "ZPU"into the other. The boards can later be un-plugged and inserted in the bus of a largersystem. With the addition of the Z-80processor, the SMB is capable of addressinga variety of peripherals.

Now, let's look more closely at the func-tions of the board. First, there is the Zapplemonitor. This is a descendant of a 2 K byte8080 monitor originally released by Intel,and whose command structure probablypredates the 8080 processor for which itwas written. Because of this, Zapple has anumber of commands familiar to manymicrocomputer users:

D = Display memory in hexa-

decimal.

F = Fill memory between two

locations with a hexadecimalvalue.

G = Go to a location in memory

and execute the programfound there. Two breakpointscan also be set.

H = Display the sum and dif-

ference of two hexadecimalnumbers.

J = Test memory between two

locations, indicate locationsof defective bits.

M = Move a program to another

location.

P, T = Put or type ASCII charac-ters in memory.

Ql, QO = Input from, output to a port.

S = Examine and, if necessary,

substitute a byte of data inmemory.

V = Verify that programs in dif-

ferent regions of memory areidentical, or display differ-ences and their locations.

Y = Search for and display the

locations of a byte or bytesof data in memory.

Other features of Zapple include variableIO device commands and device serviceroutine vectors. Zapple handles IO in termsof four logical devices: the system console,the reader, the punch, and the list device.One member of a group of four physicaldevices may be assigned for each logicaldevice; the assignments may be made bydefault or dynamically. The two serial ports,the parallel port and the cassette port on theSMB, handle five of the physical devices

12 April 1978 © BYTE Publications Inc

(the punch is assumed to be connected tothe Teletype). Six more devices are handledby user written routines accessed throughvectors located between hexadecimal F800and F823. Table 1 shows the relationshipsbetween the logical and physical deviceoptions.

The assignments of default IO devices toeach of the four logical devices are donewith a set of eight switches, grouped as pairs.The binary default code for each device isdetermined by the settings of each pair ofswitches. Thus for the console device to bedefaulted to a 300 bps video terminal, thebinary code 01 would be set in the pair ofswitches assigned to the system consoledevice. (The switches for all the defaultsare found in one dual in line (DIP) 8 polepencil switch located on the board.)

In addition to setting the sense switches,one must jumper the video serial port for300 bps, a simple matter of placing an Augatpin in a clearly labelled socket. The cassetteport on the SMB will be selected wheneverany of the READ, WRITE (in Intel hexa-decimal format), LOAD and UNLOAD (inbinary format) commands are used. Finally,when a list command (eg: in the TDL texteditor) is used to print a buffer of informa-tion, the list device will be called.

If the latter requires serial data, the serialIO port on the SMB ("video") could be usedhere. The list switches would be set at 00. Ifthe printer is a parallel input device, theparallel port on the SMB could be used. Thedata would be applied to lines PD0 thru PB7on [1, the multipin connector (visible inphoto 1) which is the IO connector for theSMB. The status line from the printer wouldgotoCBI on Jl.

But since we may want to save theparallel port for other purposes, which willbe discussed later, we can route the list out-put through a user vector to an external (toZapple) device service routine and port.The user defined list option sends theprocessor to hexadecimal address F815in the vector area of programmable memory,just above Zapple in memory address space.A J MP (C3) instruction must be insertedhere to tell the processor where to go nextto send characters to the printer. Thedevice service routine must end with aRET (C9) instruction to get back intoZapple.

The first thing one should be aware ofin using the parallel port on the SMB isthat it is bidirectional. Many processor chipsprovide data buses which are bidirectional:

they can output data to and receive datafrom the bus on the same eight lines. The8080 and Z-80 processors do this. But,curiously, the now widely used Altair(S-100) bus is not bidirectional and usesseparate sets of eight lines for sending andreceiving data to and from the processor.

There is something to be said for splittingthe in and out functions of the bus. If, forexample, the input lines are used to receivedata from an analog to digital converterbeing used for games, the output lines wouldstill be available for controlling up to 255other devices, such as tape recorders, airconditioners, lights, disks and coffee pots.But microprocessors do only one thing ata time (input or output) anyway, so no realadvantage is obtained at a price of extra andmore expensive hardware.

On the other hand, a bidirectional port isuseful for high-speed transmission of databetween the main processor and peripheraldevices. A floppy disk which, for example,lacks an interface for a particular bus will,chances are, be accessible through one ortwo bidirectional parallel ports. Lab instru-ments, additional memory and slave proces-sors are also normally designed around bi-directional parallel interfaces. So it appearsthat having such a port on the SMB opens upsome interesting possibilities.

The feature to which most readers willlook with a mixture of interest and skepti-cism is the cassette port. The interface iswell-serviced by the Zapple monitor. Any ofthe functions available to the paper tapereader and punch are available to the cas-sette port To save a program written in thetext editor, for example, simply type a U,and the entire text buffer will be dumped.To reload the text, a 50 line block can beretrieved with an A command. The As can,of course, be concatenated: typing three ofthem brings in 150 lines for editing.

User written programs can be saved inbinary or Intel hexadecimal format, andprograms written by the TDL relocatingmacroassembler (including all TDL suppliedsoftware) can be relocated using the Zapplecommands and the cassette interface. Ifind this a convenient system to use and canreport only one shortcoming which mightreasonably have been included (if there weremore room available in the 2 K byte moni-tor). It does not recognize files. One cannot,for example, type R(EAD) LIFE, start thecassette, and wait for the system to find andload the file named LIFE.

The reason we will probably never see

April 1978 ©BYTE Publications Inc

13

a file-oriented cassette system from TDL isthat the company is currently committed todesigning a disk software package.

How difficult is it to make the cassetteinterface work? Storing data on cassettescan be difficult with some interfaces andsome recorders, because it involves inter-facing digital systems with analog systems.The simplest problem to deal with involvesplayed back material in the wrong phase forproper decoding. Changing a jumper or aswitch setting on the board usually curesthis.

The level of the signal to be recorded maybe too high or too low for the input cir-cuitry of the recorder to record it properly.The output voltage of the recorder may notbe sufficient to properly drive the interfacereceiver (input) circuitry. The SMB interfaceprovides switch selected record levels and asensitive receiver interface.

+5VA

FROMRECORDER

R6IOK

"n

-)!-

Rl47 K

i R 5 > p ?

(OPTIONAL) <*'*

Figure la: The original design of the TDL system monitor board cassettereceiver interface circuit Both op amp inputs are biased with separate re-sistor networks.

FROMRECORDER

IOK

CI

:rs

MOOK

IOOK--VW-

-oT0

COMPUTER

Figure 1b: The new version of the cassette receiver interface circuit featuringa single resistor network that drives both op amp inputs and provides stabi-lized sensitivity, R3 provides isolation between the two inputs, in both thesecircuitSy software decoding of tape data is assumed; generation of data ismuch simpler and is done with software also.

The output levels available will satisfythe requirements of most recorders' micro-phone inputs. The RCA CA3130 op amp inthe front end of the receiver is the solutionto problems I have encountered in drivingsome other interfaces. My recorder, whichuses a single integrated circuit for all itsrecord and playback functions (and whichconsequently lacks the output power ofsome of the larger machines), can drive theSMB with volume control set near thebottom of its range. This adjustment is notcritical by the way. A nearly full scalesetting seems to work as well as a low one.

There was some initial difficulty in mak-ing the interface work, but those who buycurrent versions of the SMB should have notrouble. The original design, shown in figurela, biased each of the op amp's differentialinputs with separate resistor networks. Ifthe idle state offset between the inputs isnear 0, the output of the recorder will easilydrive its input to an offset condition, causingan output deviation to appear at pin 6. Ifa component in one of the bias networksshould change value, however, the perma-nent offset error this would introduce couldswamp the input signal.

My SMB, a prototype, worked perfectlyfor a few weeks after it was set up. Then itlost sensitivity to the extent that I couldbarely drive it with a 20 W amplifier. A callto TDL produced the modified circuitshown in figure 1b. The bias points for bothop amp inputs were now set by a singledivider network comprised of R1 and R2.The new R3 (1 K) provides isolation be-tween the two inputs, and the new R4(22 K) is set at approximately the parallelvalue of the old Rl and R2 (see figure1a). In this way, the time constant ofthe high pass filter formed by C1 and R5is maintained.

The sensitivity of the modified circuit issomewhat better than it had been originally.When good quality cassettes are used andnormal tape handling precautions taken,tape errors are extremely rare. 8 K bytesof data can be loaded in about 190 seconds.This seems a long time, considering that theinterface is supposed to operate at 1200bps. Another unit I have used can load thesame amount of data in less than 60 seconds.The reason is that the SMB is loading inhexadecimal rather than binary format. Theformer takes about three times as longbecause it includes the information neces-sary to make assembled programs relo-catable. If it is important to reduce the

14

April 1978 © BYTE Publications Inc

UNDERSTANDING MICRO-COMPUTERS answers theseand hundreds of other ques-tions clearly in this profusely il-lustrated, easy-reading "must"book. You'll find fundamentalconcepts behind the operation ofvirtually all microcomputers, writ-ten in simple English so that any-one can gain the extra knowledgeneeded to read and understandcomputer magazines, manufac-turers' literature, and feel "athome" around computers. Hereare just a few items discussed ...

— How a CPU is organized andhow it follows sequences of di-rectives to solve problems

— Illustrates basic instructionsfrom almost every class of mi-croprocessor

— Discusses common memoryaddressing modes—illustratestypical uses

W*3*M>

What you must know to tell acomputer what to do when us-ing machine language pro-gramming methods

- Explains use of flow charts,program worksheets, hand as-sembly of source codes intoobject codes, memory maps,purpose of an Editor, Assem-bler, Monitor

■Benefits of using a high levellanguage

■ Introduction to BASIC

■ How a computer communi-cates. Types of commonly usedinput/output devices and theiroperational conceptsPractical aspects of selectinga small computer systemPlus, hundreds of other practi-cal facts and information

If you are at all curious aboutsmall computers, you must ownthis 300 page no-nonsense textthat reads like a simple book! In-cludes an easy-to-use glossaryof key microcomputer orientedwords. UNDERSTANDING MICRO-COMPUTERS. The name says itall. Order your copy now!

$

ICELBICONSISTING

Dept. B

Post Office Box 133 PP STN

Milford, CT 06460

Price shown for North American customers. MasterCharge, Postal and Bank Money Orders preferred.Personal checks delay shipping up to 4 weeks.Pricing, specifications, availability subject tochange without notice. SCELBI Books are avail-able in many fine Computer Stores.

Now available in hardcover for only $14.95...and paperback for only $9.95. Order yours today!

IMPORTANT! Include 75$ postage/handlingfor each item delivered by U.S. Mail BookRate; or $2 for each item shipped FirstClass or via UPS.

Circle 94 on inquiry card.

BYTE April 1978 15

loading time to under 1 minute, users canload and locate a program (say BASIC)using the hexadecimal loader. Then, savingit in binary format, using the U command,would permit reloading it, using the L com-mand, in about 55 seconds.

There is an interesting trick some userswill appreciate if they set up systems withbus driven video displays such as the Proc-essor Technology VDM-1 or TDL's ownvideo board. Zapple allows one to assignthe system console to a "batch mode" con-figuration. This makes the reader logicaldevice the system keyboard and the listdevice the console output. Consider definingthe cassette port as the reader device andusing it to input a series of commands whichwould load extensions of Zapple intomemory and then return control of the sys-tem to the designated console. It works.And the 2 K bytes of programmablememory beginning at hexadecimal F800 isa convenient place to put the extensions.If the keyboard data is to be input throughthe parallel port, an external driver routine

will also be needed. This means that thesystem must be initialized in batch modeso that the extensions can be loaded onstartup. A program is available from TDL todo this. It assumes the system is startedin batch mode, and brings up a keyboardon the parallel port and a VDM-1 display.

I can't claim that the user's manual isa literary masterpiece, but as a means ofgetting across basic information about afairly complicated piece of equipment,it will do. The use of the parallel port isnot adequately explained; there is no partslayout drawing and there are no detailillustrations. In spite of these shortcomings,I believe a careful beginner could assemblethe SMB in two or three evenings withoutencountering any serious obstacles. I saythis because the assembly instructions areclear and make good use of the silk screenedparts layout on the board itself.

For those who are interested in gettinga microcomputer system up and runningwith a minimum of fuss and bother, theSMB is one option to consider."

sil|»lia-i

■*

aip*3.:

The Digital Cassette Storage Systemwith AUDIO CAPABILITY

Compatible with all S-100 bus microcomputer systems, alpha-1is the ideal storage system for use in any application. Your alpha-1 may beconfigured to utilize from one to four drives to provide limitless capabilities,Alpha-1 is a highly economical approach to mass storage for your home computer,your business system, or the classroom.

SEPARATE AUDIO RECORDING

This feature provides your system withcapabilities for:

Verbal student/computer interaction

Talking games

Audio burglar alarm

intelligent phone message system

SPEED AND CAPACITY

■ Stores over 500K bytes per C-60 side

■ Average access time for C-60 tape is 17seconds.

■ Load 8K in less than 11 seconds.

■ Data transfer rate at 6250 baud.

HARDWARE

■ Compatible with all popular S-100 busmicrocomputers.

■ Audio track under computer control.

■ Replaces ROM/PROM monitors.Independent motion control and read/write electronics.2-button cold start capability.

SOFTWARE

■ MCOS Operating System handles variablelength named files, updates, packs andcopies with a single command. IncludesEditor, Assembler and Debugger . , .all provided with alpha-1.

■ Extended BASIC (4.4) with MCOS forarray handling and concatenation.

■ PDS1—a sophisticated editor/assembler.

■ Dynamic Debugger provides programdisplay, execution control and moni-toring.

■ Games

■ ACR/Tarbell Load

SYSTEM INCLUDES

Mecadrive, case, controller, power supply,cabling, operating manual and software oncassette. The natural wood enclosurepictured here is optional.

FREE BUYERS GUIDE!

You don't have all the facts about tape anddisk systems until you have read ourBUYER'S GUIDE TO MASS STORAGE . . .Free for the asking!

Available kit or assembled from dealersnationwide. For the dealer nearest you,write or phone:

meca

7026 O.W.S. Road, Yucca Valley, CA 92284(714) 365-7686

16 April 1978 © BYTE Publications Inc

Circle 63 on inquiry card.

tomorrow's computer here today

only from the Digital Group

y$ssstm&. Ill

•mww

%////

s?:''?%:-jS^

tails write or call today.

Digital tape based starts at $1995 kit.Delivery within 60 days.

P.O.'Box'8588 CMsnver, CO 80206 1303) 777-7133

F James Butterf ield

14 Brooklyn Av

Toronto Ontario M4M 2X5

CANADA

An Introduction to Tables

The construction and use of programtables is the gateway to developing powerfulprograms. The new programmer may havetrouble getting to know the concept oftables, but time spent learning about tablesis well worth the effort.

The first few programs to go into yourhome computer are likely to be writtenusing a multitude of IF tests: If a valueequals 1, branch to a particular routine; ifequal to 2, another branch; if over 5, yetanother branch; and so on. After a whilethis gets to be a lot of work. Programmersquickly learn to use table structures tosimplify decision making.

Tables are called by many names, de-pending on the language and the application:arrays, vectors and matrices, to name three.Even the concept of a "file" is usually just alarge table which follows the same structuralrules but is stored on disk or tape.

Table Elements

Most of the tables we meet in books,forms and so on consist of data arrangedin rows and columns. Each row usuallycontains a record about something. Name,address, age, phone number might be therecord of a schoolmate. Each item of thisrecord, such as name, is called a field. Inmost cases, each record contains the samenumber of fields; this is called a rectangulartable because of its appearance whenprinted, and is by far the easiest type tohandle.

Rows and columns can be interchanged,of course, by laying the table on its side.Let's look at two ways to encode this smalltable:

Name

Joe

John

Pete

Age

141817

Phone

515-3838

216-3001414-3377

field 1

Joe

field 2

John

field 3

Pete

field 1

14

field 2

18

. . . etc

First we could encode each line this way:

record 1 field 1 Joefield 2 14field 3 5153838

This is the most common, and usually thehandiest way to set up the table. It's logical,easy to change or to add new items, and notdifficult to program a search routine for. Allthe data for a particular line of the originaltable is in one record. However, during thissearch, we must leap 12 bytes or so eachtime we wish to examine a new record. Thismay or may not be convenient to do, de-pending on hardware characteristics. Bylaying the table on its side, we could write:

record 1

record 2

This method is in some ways like de-voting a separate table to each kind of datain the big table: a table of names, a table ofages, etc. This type of organization mightmake it a little easier to search for a name,but it becomes tougher to add a new nameto the list, and harder to read. But eitherway works.

Order of Items

One of the most important decisions youmust make in designing a table is how toorder the records. For small tables itdoesn't matter very much. But as tables getbigger, it becomes important not to wastetime on lengthy searches.

At first glance, the simple answer is toput the most often used items at the top ofthe table where they'll be found first, a pro-cedure which frequently works well. Butyou must know roughly how often eachtable item is likely to be used. If the usagepattern changes, your table lookup becomesinefficient. Beware of elaborate schemes to

18 April 1978 © BYTE Publications Inc

TARBELL SETS STANDARDS

For Hobbyists and Systems Developers

Sales to thousands of hobbyists over the past two years have proven the Tarbell CassetteInterface to be a microcomputer industry standard. Tarbell Electronics continues research anddevelopment to produce new and efficient components to fill hobbyists' changing needs.

TARBELLCASSETTE INTERFACE

Plugs directly into your IMSAI or ALTAIR*

Fastest transfer rate: 187 (standard) to 540 bytes/second

Extremely Reliable—Phase encoded (self-clocking)

4 Extra Status Lines, 4 Extra Control Lines

37-page manual included

Device Code Selectable by DIP-switch

Capable of Generating Kansas City tapes also

No modification required on audio cassette recorder

Complete kit $120, Assembled $175, Manual $4

TARBELL FLOPPY DISC INTERFACE

Plugs directly into your IMSAI orALTAIR* and handles up to 4standard single drives in daisy-chain.

Operates at standard 250K bitsper second on normal disc formatcapacity of 243K bytes.Works with modified CP/MOperating System and BASIC-ECompiler.

Hardware includes 4 extra ICslots, built-in phantom bootstrapand on-board crystal clock. UsesWD 1771 LSI Chip.6-month warranty and extensivedocumentation.PRICE:Kit $190 Assembled $265

II ill, jiftliitii

-iijumniiiiti A-%

" rami

^aJ.. a —

Compatible Disc Drives

Ask about our disc drives priced as low as $525.

• Gold plated edge pins

TARBELL '"^^^-.v'-" • Takes 33 14-pin ICs or

DDriTHTVDF * - ^- n^lSHS ifega J • Mix 40-pin, 18-pin, 16-pin and

BOARD # Location for 5 volt regulator

Model 1010 r i ""*'~ —• - ~ mum I • Suitable for solder and wire wrap

^ ~^ • ALTAIR/IMSAI compatible

4 ^ * r ^mm Price: $28.00

For fast, off the shelf delivery, all Tarbell Electronics products may be purchased from computer store dealersacross the country. Or write Tarbell Electronics direct for complete information.

* ALTAIR is a trademark/tradename of MITS, Inc.

20620 South Leapwood Avenue, Suite PCarson, California 9Q746

(213) 538-4251

Circle 110 on inquiry card.

BYTE April 1978 19

rearrange the table order as usage changes:they can quickly use up more time than theysave.

An excellent method for ordering tablesis to use the table address itself as the itemto be matched. Let's clarify this with anexample. Suppose we have a character inBaudot (5 level) code that we want to trans-late, say, to ASCI I. The lowest value possibleis blank, or 00000 (decimal zero). Thehighest value is the letters shift, or binary11111 (decimal 31). If we add this char-acter, as a binary number, to the table baseaddress, we'll create an address ranging fromTABLE+0 to TABLE+31. In each of thesetable locations, the corresponding ASCIIcharacter will be stored. We'd have to makeprovision for both upper case and lower caseBaudot, of course. The important thingabout this kind of table is that we never haveto search it. We go straight to the addresswe want.

The most common way of ordering itemsin a table is sequential, ie: in ascending ordescending order, alphabetically or numeri-cally. Usually we must pick one particularfield for the sequence, the one we expectto search most often.

We get many advantages when we have asequential table. The program can detectright away if it has "gone past" the item it'slooking for, so that it won't waste timesearching through the rest of the records.With a little more programming effort, wecan write a binary search program thatpasses through a table very quickly. The bi-nary search routine works by examining themiddle of the table and deciding if the de-sired item is above or below this point. Fromthen on, the program concentrates exclu-sively on the remaining half of the table, andlooks at its midpoint in the same way. Eachstep cuts the remaining portion of the tablein half; eventually the desired location isfound or a conclusion of "no match" results.

A sequential table is the only type thatcan be used for a continuous value calcula-tion. You may recognize the following par-tial table:

Income

less than 2350less than 2375less than 2400

Tax

025

This table associates a continuous value,income, with unique tax amounts. If yourincome was $2378.54 you do not escape taxbecause there isn't an exact value of$2378.54 in the table. For your program to

find such an intermediate value, the tablemust be sequential.

There are several drawbacks to sequentialtables. The first is the problem of getting thetable in sequential order and keeping it thatway during deletions and additions. Thesecond is that only one field is in sequence.This means that the user may have to re-sortthe whole table to start searching on a newfield.

Advanced Techniques

When it is desired to arrange a table insome order, there may be some difficultymoving the items around, especially if theyare large and clumsy.

One way to get around this is to leave thedata in its original order and build a separatetable called an index which gives the orderin which the data should be read. This way,instead of moving the data around, the indexis simply changed as necessary.

Another way to achieve a similar effect isby chaining. This attaches an extra field toeach record which points to the record to belooked at next. The program must have astarting point that tells which record is tobe examined first. From then on, the pro-gram follows the chain to the last record.

Indexing and chaining are both relativelycomplex, but they have one important ad-vantage: the same file can have two indicesor two chains so that it is simultaneouslysorted two different ways. This feature cansometimes eliminate many time-consumingsorts.

Tables which are not rectangular are asource of difficulty. If we are recording,for example, names of parents and theirchildren, we soon face the problem ofsome parents having only one child, whileothers have seven or more. Should we allowseven slots for each set of parents and wasteprecious memory? We could build a complextable structure to allow for a variable num-ber of fields (children). This is practical, ofcourse, but sometimes we can eliminate theproblem by making the table into a list ofthe children rather than the parents.

Another special case which is oftenencountered is the triangular table, whichresembles a square split along the diagonal,with the two halves containing the samenumbers. For example, if you calculate atable of mileages between cities, you don'tneed to store both the Buffalo to Denverand the Denver to Buffalo mileages; theyare of course the same. But trying to storeonly half the table to save memory turnsout to be a difficult task. You'll need amedium sized program to get to the rightspot in the table.

20 April 1978 © BYTE Publications Inc

Access

Program Intercommunication

The addressing modes of your machinewarrant study to determine the best wayto scan tables. If you have a hardware indexregister, that's usually the best way both interms of speed and programming con-venience. Each microprocessor has its idio-syncrasies. An 8 bit index will only cover atable size of 256 locations. Sometimes,though, an index doesn't modify a fulladdress, but only an 8 bit offset. In this casethe index must hold a full address ratherthan a simple table position. How easy is theindex to modify as you step through thetable? An increment command that addsone to the index value is of limited valueif you want to jump 12 locations at a time.

If indexing isn't convenient for a givenjob, indirect addressing is the next best bet.Put the address of the start of your tableinto an indirect address location; then add toit as necessary until you reach the end of thetable.

Don't hestitate to search a table back-wards if it's convenient. This facilitatessearches when using certain types of in-dexing.

One program segment can communicatewith another by means of tables. In fact,processors which feature a common memoryuse this technique. When working with aninterrupt structure, the recommended pro-cedure is to have one program prepare atable of material for another to pick up.This becomes a good way to segment largeprojects into convenient modules. Eachmodule can be separately debugged bypreparing a set of test input tables andexamining the output tables it produces.On very large jobs, this kind of segmen-tation is an excellent way to divide workamong several people. Even on linedebugging becomes easier, since the tablescan be readily viewed at any time.

Conclusion

Tables are a good way to arrange datain a compact, visible and easy to modifyform. New programmers sometimes haveproblems getting used to designing andusing them, but they are well worth theeffort."

The MSDD-100 floppy disc system is amodern, low cost, high performance data stor-age system for your S100 bus computer system.A simple, well designed LSI controller board,combined with the industry standard ShugartSA-400 floppy drive gives you a very fast 80Kbytes per drive on line. At $499.00 kit (you buildonly the controller) or $599.00 ready to go, theMSDD-100 is a great buy, and comes completewith software. Two versions of MICROSOFTBASIC and a complete DOS are available.

If you have wanted 80 x 24 video display powerfor your S100 bus computer system, look nofurther. The MSDV-100 video display is a superflexible, easy to use, memory addressed videosystem that lets you: * underline any character *make any character blink * invert field * drawcontinuous vertical & horizontal lines * have 9levels of gray scale for graphs * scroll with ease *much more. The kit is $285.00, or get it ready togo for $385.00. Great software support, ofcourse. Dealer/OEM inquiries invited. To order,or for more information, write to or call MSD,inc., at:

2765 So. Colorado Blvd. Suite 110 Denver, CO 80222 (303) 758-7411

Circle 75 on inquiry card.

April 1978 ©BYTE Publications Inc

21

WHY IS THIS MAN SMILING?

ACKNOWLEDGE RECEIPT: PHICHITY COKKUN I CAT IONSCUHGEt SAT DIEGO* CA DATEi JW:. 9*197S

DESTIMATION; EDITOF1S OF BYTE MAGAZINE

70 i.AIN ST.

PETERBOROUGH, NH

03458TRANSMISSION AUTHORIZATION CODEi N38

MESSAGE FOLLOWS:

GENTLEMEN!

I HAVE BEEN AN AVID HEADER OF YOUR PUBLICATION SINCE

I ARRIVED IN THIS GALAXY AFTER KY RECENT AND RATHER

HASTY DEPARTURE FROK A ONCE FAMOUS EMPIRE.

I HAVE ENCLOSED A PHOTCGRAPH OF MYSELF ENJOYING

A RECENT ISSUE-WARMEST REGARDS*MR. D. VADERSAN DIEGO* CA

p. S- I WILL NOT SOUND ANYWHERE NEAR THIS NICEAFTER I GET MY ARMY TOGETHER.

END MESSAGE

22 April 1978 © BYTE Publications Inc

COMMENTS ON STAR TREKTECHNOLOGY

Concerning the speculative articletitled "The Computers of Star Trek" bySchmucker and Tarr in December 1977BYTE, it appears that they have over-looked several pertinent points.

Firstly, it should be noted that sincethe Star Fleet Technical Manual isderived from an unauthorized trans-mission it is at least possible that thecopy used as a source was not currentand/or did not contain or reflect allmodifications made during repairs, refit-tings, or in the field.

Secondly, cryogenic temperatures (aswell as weightlessness and hard vacuum)are available for free in space. By en-closing the memory banks in a pressurecylinder which communicated with theexterior of the ship, the Josephsonjunction memory would be feasible bytoday's technology. Indeed, this wouldappear to be the exact method usedin HAL's (of 2007; A Space Odyssey)memory banks, and that was set con-siderably closer to us in time. Sinceenergy fields are known to work throughfree space (tractor beams), the memorybanks could still be enclosed by theirprotective fields.

Thirdly, the subject of voice recogni-tion. It is assumed that English is thelanguage of the Enterprise. Since, how-ever, all members of the Star Fleet (whichis supposed to be multinational), StarBases, inhabited planets (known andnewly discovered), Klingon and RomulanEmpires, and most intelligent creaturesencountered also speak English, I proposethat this is artistic license. This opensthe possibility that the language of theEnterprise is some more universal,perhaps simpler language, possibly onthe nature of Esperanto.

Additionally, the development of"talking" computers would, over a periodof time, inevitably have an effect on thelanguage of the programmer. Thus,sentence structure, word choice andarrangement would begin to moreclosely match the computers' optimumrequirements to speed input and to

Tfour

Sol dealer

has it.

AL: Birmingham: ICP, Computerland, 1550-DMontgomery Hwy, (205)979-0707. AZ: Tempe:Byte Shop, 1425 W. 12th PI., (602)894-1129;Phoenix: Byte Shop. 12654 N. 28th, (602)942-7300; Tucson: Byte Shop, 2612 E. Broadway,(602)327-4579. CA: Berkeley: Byte Shop,1514 University, (415)845-6366; Costa Mesa:Computer Center, 1913 Harbor, (714)646-0221; Hayward: Byte Shop. 1122 "B" St.,(415)537-2983; Hayward: Computerland ofHayward, 22634 Foothill Blvd., (415)538-8080;Lawndale: Byte Shop, 16508 Hawthorne,(213)371-2421; Mt. View: Byte Shop, 1063 ElCamino, (415)969-5464; Mt. View: DigitalDeli, 80 W. El Camino, (415)961-2670; Orange;Computer Mart, 633-B W. Katella, (714)633-1222; Pasadena: Byte Shop, 496 S. Lake,(213)684-3311; Sacramento: Micro-ComputerApplication Systems, 2322 Capitol, (916)443-4944; San Francisco: Byte Shop, 321 Pacific,(415)421-8686; San Jose: Byte Shop, 2626Union. (408)377-4685; San Rafael: Byte Shop,509 Francisco, (415)457-9311; Tarzana: ByteShop. 18424 Ventura, (213)343-3919; WalnutCreek: Byte Shop, 2989 N. Main, (415)933-6252.CO: Boulder: Byte Shop, 3101 Walnut,(303)449-6233; Denver: Byte Shop, E. 1st Ave. &University, (304)399-8995. FL: Ft. Lauderdale:Byte Shop, 1044 E. Oakland Pk., (305)561-2983;Miami: Byte Shop, 7825 Bird, (305)264-2983;Tampa: Microcomputer Systems. 144 So. DaleMabry. (813)879-4301. GA: Atlanta: ComputerMart, 5091-B Buford, (404)455-0647. IL:Champaign: Computer Co., 318 N. Neil. (217)359-5883; Numbers Racket, 6231/2 S. Wright,(217)352-5435; Evanston: itty bitty machine co,1322 Chicago, (312)328-6800; Schaumburg:Data Domain, 1612E. Algonquin, (312)397-8700.IN: Bloomington: Data Domain, 406S. College,(812)334-3607; Indianapolis: Data Domain, 7027N. Michigan, (317)251-3139. IA: Davenport:Computer Store, 4128 Brady, (319)386-3330.KS: Overland Park: Personal Computer Center,3819 W 95th St., (913)649-5942. MA: Boston:Computer Warehouse Store, 584 Commonwealth,(617)261-2700. MD: Towson: Computer Etc.,13A Allegheny, (301)296-0520. Ml: Ann Arbor:Computer Store, 310 E. Washington, (313)995-7616; East Lansing: General Computer Store,1310 Michigan, (517)351-3260; Troy: GeneralComputer Store, 73 W. Long Lake Rd., (313)689-8321. MN: Minneapolis: ComputerDepot, 3515 W. 70th, {612)927-5601. NJ: CherryHill: Computer Emporium, 2438 Route 38,(609)667-7555; Hoboken: Computer Works, 20Hudson PI., (201)420-1644; Iselin: ComputerMart, 501 Rt. 27, (201)283-0600. NY: Endwell:The Computer Tree, 409 Hooper Rd.r (607)748-1223; New York: Computer Mart, 118 Madison,(212)686-7923; White Plains: ComputerCorner, 200 Hamilton, (914)949-3282. NC:Raleigh: ROMs N' RAMs, Crabtree ValleyMall, (919)781-0003. OH: Columbus: Byte Shop,2432 Chester, (614)486-7761; Dayton:Computer Mart. 2665 S. Dixie, (513)296-1248.OR: Beaverton: Byte Shop, 3482 SW CedarHills, (503)644-2686; Eugene: Real OregonComputer Co., 205 W. 10th, {503)484-1040;Portland: Byte Shop, 2033 SW 4th Ave., (503)223-3496. Rl: Warwick: Computer Power,M24 Airport Mall, 1800 Post Rd., (401)738-4477.SC: Columbia: Byte Shop, 2018 Green,(803)771-7824. TN: Kingsport: Microproducts& Systems, 2307 E. Center, (615)245-8081.TX: Arlington: Computer Port, 926 N. Collins,(817)469-1502; Arlington: Micro Store,312 W. Randol Mill Rd., (817)461-6081; Houston:Interactive Computers, 76461/2 Dashwood,(713)772-5257; Lubbock: NeighborhoodComputer Store, 4902-34th St., (806)797-1468;Richardson: Micro Store, 634 So. CentralExpwy., (214)231-1096. VA: McLean: ComputerSystems Store, 1984 Chain Bridge, (703)821-8333; Virginia Beach: Home ComputerCenter, 2927 Va. Beach Blvd., (804)340-1977.WA: Bellevue: Byte Shop. 14701 NE 20th,(206)746-0651; Seattle: Retail Computer Store,410 NE 72nd, (206)524-4101. Wl: Madison:Computer Store, 1863 Monroe, (608)255-5552;Milwaukee: Computer Store, 6916 W. North,(414)259-9140. D.C.: Georgetown ComputerStore, 3286 M St NW, (202)362-2127.CANADA: Toronto, Ont: Computer Mart, 1543Bayview, {416) 484-9708; First CanadianComputer Store, 44 Eglinton Ave. W., (416)482-8080; Vancouver, B.C.: Basic ComputerGroup, 1438W. 8th, (604)736-7474; PacificComputer Store, 4509 Rupert, (604)438-3282.

ProcessorTechnology

Circle 91 on inquiry card.

Seven points

to consider

before

you buy your

small computer.

In this magazine, alone, there are probably a dozenads for small computers. New companies are breakingground like spring flowers.

How, then, do you determine which computer offers thefeatures you need most... at the price you can afford?

We'd like to propose seven basic questions to help youmake an intelligent decision.

IHow complete is thecomputer system?w Many buyers of small computers are in for a rudeawakening when they have to spend additional moneyfor interfaces.

The Sol-20 Terminal Computer was the first completesmall computer system. Everything you need to makeit work is included in the basic package.

2 Is powerful systemsoftware available?9 It won't do if your system is "tongue-tied!'Processor Technology Corporation has devotedmore effort to the development of software than any othersmall computer maker. Our latest offering is the firstfully implemented disk operating system for a smallcomputer: PTDOS. It contains over 40 major commands,several languages and numerous utilities. Our highlevel languages include Extended BASIC, Assembler,FORTRAN? FOCAL and PILOT*

3 Is the system easyto expand?9 More and more computer owners areexpanding their small computers to handle business andother specialized requirements.

The largest Sol system can handle 64K bytes of RAMmemory and operate with a three megabyte on-linedisk memory. Sol systems use the S-100 Bus. So you canuse a wide variety of hardware.

4 Is the computerwell-engineered?9 Our Sol systems are the most conservativelyrated and ruggedly built in the industry, period. Inaddition we designed them with you, the user, in mind;Sols are easy to build and a joy to operate.

5 Does it have provenreliability?9 What is the track record? There are over5,000 Sol systems in the field. Our track record for reliableperformance is unparalleled in the small computer field.

6

Does it have goodfactory support?

A computer is a complex piece of hardware.So you want to be sure it is backed up with completemanuals, drawings and a factory Support team that cares.

Processor Technology offers the most extensivedocumentation of any small computer manufacturer. Andwe maintain a patient, competent telephone staff toanswer your questions.

ZAre maintenance andservice people accessible?Where are they located?Processor Technology has maintenance and servicepeople in over 50 cities around the U.S.

As you continue turning the pages, see how we stack upto the other computers in this magazine. If we'vesucceeded in whetting your appetite, see your Sol dealeror write for information on the complete family ofSol computers.

Processor Technology Corporation, Box B,7100 Johnson Industrial Drive, Pleasanton, CA 94566.(415) 829-2600.

♦Available soon.

Circle 91 on inquiry card.

ProcessorTechnology

BYTE April 1978 23

The LFD-400 is ready to plug in and run

the moment you receive it.

Nothing else to buy! Not even extra memory!

YOU GET:

O The popular Shugart SA 400 minifloppy™ drive. Drive alignment

is double checked by PerCom before shipment.0 The drive power supply—fully assembled and tested.© LFD-400 Controller/Interface—plugs into the SS-50 bus •

accommodates three 2708 EPROMs • fully assembled and tested.O MINIDOS™ —the remarkable LFD-400 disk operating system on

a 2708 EPROM • plugs into the LFD-400 Controller card • no

extra memory required ■ no "booting" needed.© Attractive metal enclosure.O Interconnecting cable—fully assembled and tested.Q Two diskettes—one blank, the other containing numerous

software routines including patches for SWTP 8K BASIC and the

TSC Editor/Assembler.O 70-page instruction manual—includes operating instructions,

schematics, service procedures, and the complete listing of

MINIDOS™.® Technical Memo updates—helpful hints which supplement the

manual instructions.® 90-day limited warranty.

Minifloppy is a trademark of Shugart Associates.MINIDOS is a trademark of PERCOM Data Company, Inc.

The LFD-400 is readily expanded to either two or three drives.Write for details. Send for our free brochure for more informa-tion about the LFD-400 Floppy Disk System and LFD-400software.

To save you money, the LFD-400 Floppy Disk System is availableonly from PerCom. Because of the special pricing, group anddealer discounts are not available.

MC and VISA welcome. COD orders require 30% deposit plus 5% handling charge. Allow threeextra weeks if payment is by personal check. The LFD-400 Floppy Disk System is availableimmediately. Allow three weeks for testing and transportation. Texas residents add 5%sales tax.

PEfiQCM

PERCOM DATA COMPANY, INC.

Dept B 318 BARNES*GARLAND, TX. 75042(214)276-1968

PERCOM™ 'peripherals for personal computing9

facilitate output. This would lead tosimpler, more concise speech in general,which would make programming taskssimpler. It would also probably have anegative impact on the society's literarycapabilities, but that is not pertinenthere.

Gary Wells

2622 NE 14th

Portland OR 97212

SOME QUESTIONS ABOUT THE

TECHNOLOGY OF EMOTIONS

IN THE ENTERPRISE

I would like to commend you all onthe excellent article by Schmucker andTarr, "The Computers of Star Trek," inDecember 1977 BYTE. It is always intri-guing to speculate on such things.

My favorite episode was missing. Irefer of course to the time that thecomputer, with an obviously femininevoice, fell in love with the captain.Such behavior from a purely logicalmachine seems a contradiction if we areto believe the authors' views as expressedin the character of Spock.

Spock seems capable of separatinghis emotions from the decision processbetter than most of the humans on thecrew and thus his decisions are respectedby the crew members. Such a situationimplies that the authors believe that thisseparation is good.

Questions:

1. How much memory is requiredfor emotions?

2. How do the emotions of themachine alter the decision pro-cess?

3. Do the emotions add to the valid-ity of the decisions?

4. What did the computer expect thecaptain to do once he knew shewas in love with him? Was itillegal? Could it be illegal?

Albert C Brunelli

RFD#1

Berlin NH 03570

Pi AYE'D

"The Computers of Star Trek"(December 1977 BYTE, page 12)interests me both as a computer pro-fessional and as a Star Trek fan. Sch-mucker and Tarr are to be congratulatedon combining the entertaining with theinformative. (It is unfortunate, however,that the only widely available hard copyversion of the Star Trek episodes is theJames Blish series. The late Mr Blish wasoften forced to oversimplify becausehis publisher insisted that he adapt six ormore hour long episodes into eachvolume. He also had a tendency tosimply make things up.)

Continued on page 162

24 April 1978 © BYTE Publications Inc

Circle 85 on inquiry card.

•

1 '

3

LookToThe North Star HORIZON Computer.

HORIZON™— a complete, high-performance microprocessorsystem with integrated floppy disk memory, HORIZON isattractive, professionally engineered, and ideal for business,educational and personal applications.

To begin programming in extended BASIC, merely add a CRTor hard-copy terminal. HORIZON-1 includes a Z80A processor,16K RAM, minifloppy™ disk and 12-slot S-100 motherboardwith serial terminal interface —all standard equipment.

WHAT ABOUT PERFORMANCE?

The Z80A processor operates at 4MHZ — double the power ofthe 8080. And our 16K RAM board lets the Z80A execute atfull speed. HORIZON can load or save a 10K byte disk programin less than 2 seconds. Each diskette can store 90K bytes.

AND SOFTWARE, TOO

HORIZON includes the North Star Disk Operating System andfull extended BASIC on diskette ready at power-on. Our BASIC,now in widespread use, has everything desired in a BASIC, in-cluding sequential and random disk files, formatted output, apowerful line editor, strings, machine language CALL and more.

EXPAND YOUR HORIZON

Also available—Hardware floating point board (FPB); addi-tional 16K memory boards with parity option. Add a seconddisk drive and you have HORIZON-2. Economical serial andparallel I/O ports may be installed on the motherboard. Manywidely available S-100 bus peripheral boards can be added toHORIZON.

QUALITY AT THE RIGHT PRICE

HORIZON processor board, RAM, FPB and MICRO DISK SYS-TEM can be bought separately for either Z80 or 8080 S-100 bussystems.

HORIZON-1 $1599 kit; $1899 assembled.

HORIZON-2 $1999 kit; $2349 assembled.

16K RAM-$399 kit; $459 assembled; Parity option $39 kit; $59assembled. FPB $259 kit; $359 assembled. Z80 board $199 kit;$259 assembled. Prices subject to change. HORIZON offeredin choice of wood or blue metal cover at no extra charge.

Write for free color catalogue or visit your local computer store.

North Star * Computers

2547 Ninth Street • Berkeley, California 94710 • (415) 549-0858

Circle 80 on inquiry card.

BYTE April 1978 25

When you get rightdown to it, nobodydoes it better.

; Bhwi ■*"•

imi-

I0BOARO

V0*****?****0$ ****

s. j;.

!®J '1

I,."-'

PROM RAM BOARDKltiiO*

A8*e»MedSS«n

i f**

m p #*tf*Ti'»<*<

*4*f-

^>*7/

t^

y#

^wi****1*

TT..

Ifoar?££n», ^W*msz

« .1

--^liiii

—* —f'.'. ^ *= ** ==■■ ^ s s 1— I_ rrr i- -- i

A

■ ■■• :| 1 l5:l:fc*|:jj|:h|:u:| h|:fc^ ^ "jt~ y] $~:i~-.-\|

A

1 § ' ' _. :i!|j!|:l!|:lll l!|:I|:I;| ;M=!i^* = ;i= ■■-?1'^; 1

k* «J?-*> *""*' ^ T'% ,t* S • ***; % • "■ ■■ s •—" % '•?*'%<""*'«i -^ S£? ■ yt — ^ ■ U ***"": \\ 1

L.

Ltfjta ^h_-</i_^ —^^^-•"> ^"V ■•"■■"'■■■■I H

" iiiimiiiiiiiiiiiiiiiiiiiiillilllliiiiiiTiiTiiiii ^

•

"12 persuasive reasons whyVector Graphic gives youmore microcomputer value

iUi jAllll IllClllCj* Bob Harp, Technical Director

1 Our products are designed by professionals with many years of experience* in industrial electronics.

C% Only prime components are used from vendors you will recognize as the** most reputable in the industry.

3 Our kits are designed to be easily assembled with a minimum of userinstalled jumpers — you don't have to spend hours figuring how toconfigure boards for your application.

£ Our cabinets quality is superior — designed with careful attention toairflow (a fan is standard) and mechanical rigidity.

GJ We offer a complete line of products designed to operate together — noneed to be concerned about compatibility.

(} You have a choice of CPU boards with either 8080 or Z-80 MPU.

7 We offer all of our products assembled and tested — for surprisingly littlemore than kit prices.

J\ Our management is genuinely interested in you as a satisfied customer.

9 You can purchase our products with confidence — they will not becomeobsolete with the next generation of microprocessors.

1ft ^e °^er complete technical support with engineers and techniciansavailable to answer your questions.

11 Our speedy shipment of orders is the envy of our competitors.

%€\ A network of over 150 dealers throughout the U.S., Canada and Europe*• has been carefully selected to service your needs.

No other company in the industry has grown as rapidly as Vector Graphic.

If you want to know why Vector Graphic has outstanding acceptance, purchase

one of our products.

Write or call for your nearest dealer. /gl

Vector g^aphc inc.

Vector Graphic, Inc., 790 Hampshire Rd., A + B

„. , „n . Westlake Village, CA 91361, Tel: (805)497-6853

Circle 119 on inquiry card.

Photo 1: If high speed multiplication is your objective, the MPY-8AJ-M (or its cousins) can pro-vide the large scale integrated circuitry needed. This photo shows the packaging of the 16 bitversion of the TR W product with its integral heat sink (it dissipates 5 W and sells for $255 in100 quantities as part number MPY-16AJ-M). Of more interest to the experimenter, due tolower cost, is the MPY-8AJ-M part which sells for $115 in 100 quantities, and is the subject ofthis article. TR W is located at One Space Park, Redondo Beach CA 90278.

How to Multiply in a Wet Climate

_

Jack BryantMathematics DeptTexas A&M UniversityCollege Station TX 77843

Manot Swasdee

EE Dept

Texas A&M University

College Station TX 77843

An 8 by 8 bit parallel two's complementmultiplier, forming sign and a 14 bit prod-uct, was recently introduced by TRW Elec-tronic Systems Division. Designated theMPY-8AJ, the multiplier is a low power highperformance bipolar TTL device, formingthe product in a typical 130 ns multiplytime. This time is an order of magnitudeshorter than usual microprocessor instruc-tion execution time. Photo 1 shows thebeauty contest photograph of this part, assupplied by TRW. Figure 1 is a block dia-gram of input, output and control for thedevice. The product is available in a 40 pinDIP ceramic package, 0.600 series. Singlepower supply of +5 V and under 2 W powerconsumption add to the attractiveness ofthe MPY-8AJ as an addition to microcom-puter hardware.

We can do two's complement multiplica-tion with software; what we gain using the

MPY-8AJ is speed. We think such a devicewill have wide interest among readers. Wedecided on the following goals to guidehardware design and software development:

• Multiple precision fixed point arith-metic with faster multiplication.

• Fast double subscripted array access(in a microprocessor with indexedaddressing).

• A complete floating point packagewith fast multiplication.

• Best use of hardware to do thingswhich are slow with software.

We decided to begin with the SouthwestTechnical Products Corporation 6800 sys-tem. The SwTPC product has on motherboard decoding for addresses 8000 to 801 F(in steps of four bytes). SwTPC documen-tation refers to an address in this range asa "port," with port 1 (having addresses 8004to 8007) being dedicated to MIKBUG oper-

28 April 1978 © BYTE Publications Inc

CLOCK X | >CLOCK Y | ^>

ROUND | >

CLOCK P | ^>

TRI M| ^

Figure 7; A block diagramof the MPY-8AJ part Themultiplier is fully bufferedby registers: CLOCK Xwrites the contents of theX inputs into the X re-gister) CLOCK Y writesthe contents of the Yinputs into the Y register,and CLOCK P writes theoutputs of the multipli-cation array into the pro-duct registers. Each half ofthe product register is inturn provided with a threestate buffer with outputenable control TRI-L andTRI-M. The ROUND inputadds 7 to the least signifi-cant bit of the most signi-ficant product during amultiplication,

Part 1: Use and Basis for a Design

ating system IO. The advantage to thissystem is the hardware need only decode 2bit wide addresses. The user might thusthink of the multiplier as an IO unit. Theproblem is to best return the 14 bit plussign product, and the answer to this dependson how the product is used. Here we start(from scratch) and discuss number systemsand how the MPY-8AJ can support ourdesign goals. Detailed construction infor-mation will be presented in the second partof this article.

Number Systems

A typical 8 bit microprocessor instructionrepertoire includes instructions that add,subtract and compare numbers in twoforms: as unsigned binary numbers and astwo's complement signed numbers. Thetwo's complement signed representation

allows the hardware to add in exactly thesame way for unsigned or signed numbers.The range of 8 bit unsigned binary numbersis 0 to 255, while two's complement num-bers (in the same order) range from 0 to127, -128 to-1.

Were one's complements used for nega-tives, a negative number would simply givesignificance to the zeros instead of ones. Atwo's complement negative number is onegreater than the one's complement of thepositive number of the same absolute value;this means zeros to the right of the right-most 1 have no significance in either repre-sentation. On the other hand, leading zerosin a positive number and leading ones in anegative number have no significance. Forexample, 00010010 represents the number18 and 11110010 the number -14. Later,when we consider numbers of more than

April 1978 © BYTE Publications Inc 29

Table 1: Comparison oftwo's complement and un-signed binary eight bitaddition. Although thebits are ail the same, theway we interpret anoverflow or carry condi-tion distinguishes the twosystems.

Example

Two's Complement

Overflow

Unsigned

Carry

a

127+(-1) = 126

Clear

127+255 = 126

Set

b

64 + 64 =-128

Set

64 + 64- 128

Clear

c

127+(-128) =-1

Clear

127+128 = 255

Clear

d

-128+(-128) =0

Set

128+128 = 0

Set

8 bit length, we will see (for instance) the15 bit two's complement 18 is representedby 0000000 00010010 whereas -14 isrepresented by 1111 111 11110010.

!n table 1, we give four examples of 8 bitaddition as two's complement and unsignednumbers and give the condition of carry andtwo's complement overflow flags after eachsum.

Instead of fixing a particular number ofbits, we might as well do them all at once.Take a bit pattern |3q|3i . . . /3n of lengthn + 1 (each j(3j is 0 or 1); we can connect anunsigned binary number Bu and a two'scomplement number Bt with this bit patternas follows: [Here we use the convention thatthe most significant bit is numbered 0 . . .CH]

Bu^02n + ^12n"1+---^n

The bit pattern j3qj3i . . . (5n may also beregarded as a proper fraction (mantissa) Bmbetween -1 and 1-2~n:

Bm = -W2 + "--+<V2n

This amounts to placing the binary point tothe left rather than the right. In this system,two's complement overflow means that the

Figure 2: A major use of fast multiplicationhardware is in the calculation of addressoffsets when randomly accessing elements ofan array. Here we show a simple memoryallocation layout of a 3 by 2 matrix of4 byte floating point numbers starting athexadecimal address 0100 in memoryaddress space. The expression:

Element A ddress = BASE + 4x (J + 2x1)

finds the address of the (IJ)th elementwhere I runs from 0 to 2, and J runs from 0to 7. In this example, BASE has the valueof hexadecimal 100. This calculation mustbe done whenever it is desired to referencea particular element of the array and thereis no constraint upon the subscripts whichcould possibly simplify the calculation.

sum is in an improper fraction. For example,the two's complement binary version ofdecimal 64 is 01000000 in this notation.This is the fraction 1/2, and 1/2 + 1/2 = 1(example b in table 1) which is not a properfraction, as indicated by overflow.

The simplest (next to 8 bit) number sys-tem is the addressing system: 16 bit (or nbit) unsigned integers specify each addressin address space. Sometimes we spend asmuch time figuring out where things are aswe do computing. One goal of using themultiplier was to calculate addresses quickly.

Matrices Anyone?

A matrix is a two-dimensional rectangulararray of quantities. In BASIC, for instance,the statement

10 DIM R(30,20),S(3,2)

establishes R to be a 30 row by 20 columnmatrix and S a 3 row by 2 column matrix. Ifeach floating point number in the matrixwere four bytes long, R would occupy30X20X4 = 2400 bytes (plus bookkeeping)and S would occupy 3X2X4 = 24 bytes(plus). The "plus" is necessary because onemust know at least the starting (base) ad-

HexadecimalAddress

Base-

0100010101020103

S<0,0)

0104010501060107

S<0,1)

01080109010A010B

S(1,0)

010C010D010E010F

S(1,1)

0110011101120113

<S(2,0)

0114011501160117

S(2,1)

Typical 4 bytefloating pointelement of S.

30

April 1978 ©BYTE Publications Inc

FOUR STARPERFORMERSIE S-100 BUS

man

Meet The North Star Family

THE NORTH STAR S-100 FAMILY—four high perform-ance products at attractive low prices. Our boards aredesigned for use in the North Star HORIZON computerand other S-100 bus computers using 8080 or Z80 proces-sors. Visit your computer store for a demonstration, orwrite for our free color catalog.

16K RAM BOARD

No other S-100 bus memory can match the performanceof the North Star 16K RAM at any price. This low-powerboard has been designed to work at full speed (no waitstates), even at 4MHz with both Z80 and 8080 systems.Memory refresh is invisible to the processor, bank switch-ing is provided and addressability is switch selectable intwo 8K sections. Best of all, a parity check option is avail-able. Kit: $399. Assembled: $459. Parity Option — kit:$39. Assembled: $59.

MICRO DISK SYSTEM

The North Star MDS is a complete floppy disk system withall hardware and software needed to add floppy diskmemory and a powerful disk BASIC to S-100 bus com-puters. The North Star MDS is widely considered one ofthe best designed and most complete S-100 bus products

available. The MDS includes the S-100 interface boardwith on-board PROM for system startup, Shugart mini-floppy disk drive, cabling and connectors, and DOS andBASIC software on diskette. Kit: $699. Assembled: $799.Additional drive — Kit: $400. Assembled: $450. SingleDrive Cabinet: $39. Optional Power Supply: $39.

Z80A PROCESSOR BOARD

The North Star ZPB brings the full speed, 4MHz Z80Amicroprocessor to the S-100 bus. Execution is more thantwice the speed of an 8080, and the ZPB operates in sys-tems both with and without front panels. The ZPB in-cludes vectored interrupts, auto-jump startup, and spacefor 1K of on-board EPROM. Kit: $199. Assembled: $259.EPROM Option — kit: $49. Assembled: $69.

HARDWARE FLOATING POINT BOARD

If you do number crunching, then this board is for you.The FPB performs high-speed floating point add, subtract,multiply and divide with selectable precision up to 14decimal digits. Arithmetic is up to 50 times faster than8080 software, and BASIC programs can execute up to10 times faster. A version of North Star BASIC is included.Kit: $259. Assembled: $359. Prices subject to change.

Circle 80 on inquiry card.

North Star * Computers

2547 Ninth Street • Berkeley, California 94710 • (415) 549-0858

BYTE April 1978

31

Figure 3; A full repre-sentation of the unsignedmuitipiication of twobinary integers. Note thathere we iabel the mostsign if/'can t bit with 0,the ieast significan t bitwith 7 (opposite of theusuai designations in manymicroprocessor functionaispecifications).

■■■■

Multiplier X

x

00

•■ 06

h

Intermediate Terms

<*o0o

aO06

Mo

a70O

"607■ • <*706

<*707

The product is a binary sum of the intermediate terms

0 00020000300004000050 0 006

0 0 007000080000900010

0001 1000120001 3000140001500016000170 0018000190002000021000220002300024000250002600027000283002900030000310 0 032000330003400035000360 0 037000380 0 039000410004200043000440004500046000470004800049000500005100052000530005400055000560005700 05 8C0059000600 0 0610 0 06200063000b400065000660 0 067CO 06 8

801C8C1D801E8C1F0000 0002

0002 0001

0003 00020100

FM ECU S801C

SM ECU FM + 1

URP hQU SM + 1

LRP ECU U*P+1

SCTH HMD 2

R0*L RMH 1

BASE HM8 2

ORG £100

*

* SUBROUTINE FETCH4*

* PURPOSE: FETCH4 LOADS THE INDEX REGISTER

* WITH THE ADDRESS OF T(I.J), WHERE:*

* BASE ROW INDEX IN ACCA

* I ROW INDEX IN ACCA

* J COLUMN INDEX IN ACCB

* ROWL ROW LENGTH IN BYTES

* SCTH SCRATCH AREA, TWO BYTES

#

* restrictions:

* acca hi is destroyed

h t must have 4 byte lcng elements

* 0 LE I LE 127

* 0 LE J LE 3 0

* ROwL LE 124

* USES SUBROUTINE FETHOW

0100 30 CF

0102 17

0 103 4fc!

0104 48

0105 98 010107 97 01

0109 2 4 C3

0 1 OB 7C COOO

OlOfc Ot 00

0110 3*

HTCH4 BSWTBAASLASLADDSTABCCINC

INFET LDXRTS

FETROto

SCTH«-1SCTH+1F INF E TSCTHSCTH

GET ROW ADDRESSMULTIPLY J

BY 4

ADD 4*J TO ROW ADDRESS

LOAD INDEX REGISTERAND RETURN

SUBROUTINE FETKU*

purpose: FETROw LOADS SCRATCH AREA SCThWITH THE ADDRESS OF T<I,0), WmLRL:

BASF Twfl BYTE ADDRESS OF T(0,0)

I — THF ROW IMDFX IN ACCA

rowl -- row length in bytfsscth two byte scratch area

restrictions:

ACCAtU IS DESTROYED

0 LE I LE 127

0 LE RCWL LE 12 7

USES HARDWARE MULTIPLIER

0111 87 fcOlC0114 96 020116 B7 601D0 119 06 fcOlFOUC 9G 040 1 IE 97 CI0120 Bfc eoiE0123 99 C30 12 5 9 7 0 00 127 3 9

iTROw ;>TALCASTALDAADDSTALCAADCSTARTS

F M

ROWL

SM

LRP

BAbL+1

SCTh+1

URP

BASE

SCTh

MLLTIPLY ACCA(CQNTAINiNti I )BY RUW LLNOTHTC FIND UFFSETADD TO aASEAND SAVE

ALL UCNL

Listing I: Calculation of address of an element of a matrix T of 4 bytewords with given base address and row length. Under 80 machine cycles(counting JSR FETCH4) are required per element. The program can be madeeven more efficient and general if T is assumed to be aligned on a boundarywhich is a multiple of 4; a 128 by 128 array can be handled.

dress of each matrix and one of the twodimensions in order to get around. Usuallya matrix is stored by rows. In figure 2, wedisplay in full the row-storage order of the3 by 2 matrix S with hexadecimal baseaddress 100.

If T is an N by M matrix (N rows and Mcolumns) of n byte long elements with baseaddresses B, then the address A of elementT(l J) is computed as follows:

A = B+ (I -1) X MX n + (J-1) X n.

The numbers M X n and B do not changeonce the dimension, word length and baselocation of T are known. The problem ofrandomly getting around in matrix T is tofind A, and this is mostly multiplication. Ifwe assume M X n < 127 and N < 128, theneach product involved in finding A is that oftwo positive 8 bit two's complement num-bers. For instance, if n = 4, this amounts torestricting the maximum dimension of a realmatrix to 128 by 31. (Of course, the ele-ments of T could be character strings orbank account numbers; n could even be 1,that is, a byte oriented array. Since ourfloating point arithmetic uses n = 4, we startwith this case.)

Our hardware multiplier forms a 15 bitsigned two's complement product after thefollowing, in which FM, SM, URP and LRPare the four successive port addresses of themultiplier:

1. Store the first number to be multipliedin FM.

2. Store the second number in SM.

Step 2 causes the multiplication to takeplace (and does not change the multiplierstored in step 1). We get back the 15 bitproduct in URP (the Upper Right-shiftedProduct: 0 plus the first seven bits) and LPR(the Least Right-shifted Product: the loworder eight bits).

Suppose T is an N by M matrix of 4 bytequantities with base address in BASE,BASE+1 and the number 4M in ROWL.SCTH is a 2 byte long scratch area. Listing 1,in M6800 assembly language, is a program to

32

April 1978 ©BYTE Publications Inc

load the index register with the address Awhere, on entry, the row index is in accumu-lator A and column index is in accumulatorB. (Should, for example, I be unchangedfrom one fetch to the next, the programcan be restructured with an entry point forchanging J only.) We think of T as startingat (0,0) instead of (.1,1); this replaces 1-1with I and J-1 by J. (This particular pro-gram supports the floating point package tobe introduced later and is not intended tobe yery general. For instance, the number 4could be made variable, allowing access in athree-dimensional array T with dimensionsMXNXL;here, L is 4.)

A slightly different approach is better forbyte arrays. In listing 2, an up to 128X127byte array B is accessed by modifying theoffset of indexed addressing. Once we findrow i we get B(I,J) in ten cycles with

ST A B PT+1PT LDA A 0,X

ENTRY: B BIT

TWOS COMPLEMENT

MULT I PL I CRT IDN

INITIALIZE:

CLERR TWO

BYTES FDR

PRODUCT/

EXTEND X RND

Y 5 I ENS LEFT

/FDR B "«V\l TD IS/

TD5

SHIFT XRIGHT

SET

RDD Y TDTWO BYTEPRRTIRLPRDDUCT

3Up

'CLE!-

SHIFTY LEFT

1

<(next b) 1

(ExTt)

Algorithm 7; 8 bit two's complementmultiplication produces a 14 bit productplus sign bit. This algorithm is coded as a6800 assembly language program in listing 3.

Listing 2: Subroutine FETCH!; the initialization and required subroutineFETROW are in listing 1. This routine allows byte structured fetch and storein at most 56 cycles. Because the program used modified indexed addressing,it cannot be implemented in ROM.

000700007100072000730007400075.000760 0 0 7 700078000790006000081000620008300084000850008600067000880008900090C00910 0 092000930009400095000960 0 09700098000990010000101001020010300104

0128 8D E7012A DE CO

SUBROUTINE FETCH1

PUHPQ5F: F-ETCH1 LOADS ACCA WITH THECONTENTS OF B(I,J),WHERE:

BASE — TWO OYTE ADDRESS OF 010,01

I ROW INDEX IN ACCA

J CCLUMN INDEX IN ACCB

RUML ROW LENGTH IN OYTES

SCTH SCRATCH AREA, TWO OYTES

RESTRICTIONS:

ACCA IS DESTROYED

OLE I LE 127

0 LL J LE 127

ROWL LE 128

THE INDEX REGISTER IS RETURNED

THE ADDRESS OF B(I,0)

USES SUBROUTINE FETROW

OSR FETRCW FIND ROW INDEX

LDX SCTH SAME I FOR SAME ROW

0 12CQ12F0131

0 132 F70135 A70 137 39

C13J00

0136

00

SAMEI STA

FETCHP LDA

RTS

STORE 1STUREP

STASTA

RTSEND

ENTRY FOR SAME ROWFETCHP+1 MODIFY INDEXEDO.X ADDRESS AND FETCH

ENTRY FOR STORE ACCA IN B(l,STQREP+l BE SURE FETROWO.X WAS CALLED FIRST

SINCE IT KILLS ACCA

Listing 3: A software implementation of what the MPY-8AJ hardware does.More efficient (and more complicated) implementations are possible.

00003000040000500 006

0 0 007

ooooa

0000900010

0001 1C00120001 30001400015000160 0 0 170001800019000200 0 0210002200023000240 0 02500026000270002800029000300 0 031000320003300034000350 0 036000370003800039000400 0 041000420 0 043000440 0 04500046

000 00004

0 100

01 000 1020104010501070 109010B010D

0 10E0110

01 13

0 1 16

01 1801 IB01 ID01200 123012501270 129012B0 1 2D0 12F01310 1340 1370 1380 13A0 13C0 13E0 140

OC C40002

97 01

D7 034F

97 CO

97 02

9 7 C 4

97 C55D

2C 03

73 0C02

70 0001

2C 03

73 0000

C6 OF

7 7 CO00

76 0001

2 4 OC

96 03

98 C5

97 Cb

96 02

99 C4

97 C4

78 0C03

79 00025A

26 E3

96 0484 7F

97 C439

SUBROUTINE MVP8S0

purpuse: TO MULTIPLY TWO 8 BIT SIGNED INTEGERSGIVING A 14 BIT PLUS SIGN PRODUCT.PRODUCT IS RETURNED RIGHT-SHIFTED IN TWOSUCCESSIVE BYTES P.P+1MULTIPLICANDS ARE IN A,B ON ENTRY,

STATSTBGECOM

BPOSMP TSTBGECOMCASRRORBCCLDAADDSTALDAACCSTA

ZEfiCMP ASLRCLDECONELDAANDSTARTSEND

APOSMPLOUPMP

2

S100Al+1Al+3

AlAl +2

BPUSMP

AH-2

Al + l

APOSMP

Al

#15

Al

Al + 1

ZEROMP

A 1+3

P+l

P+l

Al+2

Al+3Al + 2

INITIALIZE

SIGN EXTENDAREA ZEROS

CLEAR AREAFOR PRODUCT

ONES NOW

ONES NOWSET COUNTERSHIFT XRIGHT

ADD Y TO PRODUCT

SHIFTY LEFT

LOOPMPP

#127P

FIN ISHE07

YES. ZERO BIT 0

OF FIRST WORD

April 1978 ©BYTE Publications Inc

33

it's a good bet the company

you bought your computer from

doesn't even make peripherals!

It's no great surprise! Mostcomputer companies got theirstart in the digital logic end ofthe business. They were greatat building calculators andlater computers but when itcame right down to it, mostjust didn't have the experi-ence necessary to build theperipherals to support theircomputer products. And thatleft a vacuum!

At Heath we had the advan-tage. Our years of experiencein electronic kit design gaveus plenty of background withnot only digital logic butmec af -' a! an d ide i c U s gras well. And our assemblymanuals and documentationare world-famous for easy tounderstand instructions.

We built the worlds first digi-tal color television, a uniquefully synthesized FM tuner,digital frequency counters,clocks-even a digital bath-room scale.

So when we entered the per-sonal computing market wehad the "know-how" to buildnot only our outstanding H8and Hll, 8 and 16-bit comput-ers, but, in addition, a com-plete line of supportingperipheral kits!

Select the H9 Video Terminal,the H10 Papertape Reader/Punch, and very soon ourown, complete, Floppy Disksystem. Each was designedwith the systems approach inmind. Each was conceived tointegrally mesh with not onlyour own computers, but

through our set of sophisti-cated interfaces, most othersas well. And in that Way we'remaking every effort to fill thevacuum the others left!

So when you're ready tocommunicate with your com-puter turn to Heath. We've gotthe peripheral kits you'll needand at prices you can afford.

Maybe the company who soldyou your computer didn'tthink about peripherals — butwe sure did! And come tothink about it maybe that'swhy you should come toHeath... in the first place.

1fA»tlftlr2ft

-_ uvalllKII

Computers

Heathkit Catalog

Read about nearly400 money-saving,fun-to-b^

electronic kits.

p - ?" \ Use coupon to send for

w \ your mail order catalog

"'' "\ or bring coupon !o a

Sf Heathkit Electronic

Center for your catalog.

Schlumberger

Heath Company, Dept. 334-400Benton Harbor, Ml 49022

Please send me my FREE Catalog. I am not on your mailing list.Name

Address-City

_ State_

CP-146

Zip-

AVAILABLE LOCALLY ATHEATHKIT ELECTRONIC CENTERS

(Units of Schlumberger ProductsCorporation) Retail prices on someproducts may be -

ARIZONA: Phoenix, 85017, 272? W. Indian SchoolRd., Phone: 602-279-6247; CALIFORNIA: Anaheim,92805, 330 E.-Ball Rd., Phone: 714-776*9420; ElCerrito, 94530, 6000 Potrero Ave., Phone: 415-236-8870; Los Angeles, 90007, 2309 S. Flower St.,Phone: 213-749-0261; Pomona, 91767, 1555 OrangeCt v- *v~ N rr»,jis ?Kf,r>2o4? RedwoodCity, 94063, 2001 Middfefield Rd., Phone: 415-365-8155; Sacramento, 95825,1860 Fulton Ave.. Phone:916-486-1575; San Diego (La Mesa, 92041), 8363Center Dr., Phone: 714-461-0110; San Jose (Camp-bell, 95008), 2350 S. Bascom Ave., Phone: 408-. 377-8? : H todl nd HHIs, 913 >2$QA

Blvd., Phone: 213-883-0531; COLORADO: Denver,80212, 5940 W. 38th-'Ave., Phone: 303-422-34CONNECTICUT: Hartford (Avon, 08001), 395 W,Main St. (Rte, 44), Phone: 203-678-0323; FLORIDA:Miami (Hialeah, 33012), 4705 W. 16th Ave., Phone:305-823-2280; Tampa, 33614, 4019 West Hills-borough Ave,, Phone: 813-886-2541; GEORGIA:AHant i, 3834

4341; ILLINOIS: Chicago, 80645, 3462-66 W. De-von Ave., Phone: 312-583-3920; Chicago (DownersGrove, 60515), 224 Ogden Ave., Phone: 312-852-1304, INDIANA: Indianapolis, 46220, 2112 E. 62ndSt., Phone; 317-257-4321; KANSAS: Kansas City(Mission, 66202). 595Q Lamar Ave., Phone; 913-362-4486; KENTUCKY: Louisville, 40243, 12401Sheibyviile Rd., Phone:502-245-7811; LOUISIANA:New Cries s - * nnei ?O065 Vetei

Memorial Hwy., Phone: 504-722-6321; MARYLAND:Baltimore, 21234, 1713 E. Joppa Rd., Phone: 301-661-4446; Rockville, 20852, 5542 Nicholson Lane,Phone: 301-881-5420; MASSACHUSETTS: Boaton(Peabody, 01960), 242 Andover St., Phone: 617-531-S330; Boston (Wellealey, 02181), 165 Wor-cester Ave, (Rt, 9 just west of Rt 128), Phone:617-237-1510; MICHIGAN: Detroit, 48219, 18645W. Eight Mile Rd., Phone: 313-535-6480; E. De-troit, 43021, 18149 E. Eight M>«e Rd , Phone; 313-772-0416; MINNESOTA: Minneapolis (Hopkins,55343), 101 Shady Oak Rd., Phone ■ < J-6371;MISSOURI: St. Louis (Bridgeton), $3044, 3'Mcr\oi^v «-t . ph-v> 'J14-291-1^0' NEBRASKA;Omaha, 68134, 9207 Maple St., Phone: 402-391-2071; NEW JERSEY: Fair Lawn, 07410, 35-07Broadway (Rte. 4), Phone: 201-791-6935; Ocean,07712, 1013 State Hwy. 35, Phone: 201-775-1231^NEW YORK: Buffalo (Amherst, 14226), 3476 Sheri-dan Dr., Phone: 716-835-3090; Jericho, Long la-land, 11753, 15 Jericho Turnpike, Phone: 516-334-HiV- Rochester. 14623, 93/' Jefforson Rd . Phone;716-244-5470; White Plains (North White Plains,10603), 7 Reservoir Rd., Phone: 914-761-7690jOHIO: Cincinnati (Woodlawn, 45215), 10133Springfield Pike, Phone: 513-771-8850; Cleveland,44129, 5444 Pearl Rd., Phone: 216-886-2590; CoJ-umbus, 432: e: 614-475-

7200; Toledo, 43615, 48 S. Byrne Rd, Phone: 419537-1887; PENNSYLVANIA: Philadelphia, 19149,6318 Roc None: 215-288-0180; Fraze

(Chester Co.), 19355, 630 Lancaster Pike (Rt. 30),Phone: 215-647-5555; Pittsburgh, 15235, 3482 Wm.Penn Hwy., Phone: 412-824-3564; RHODE ISLAND:Providence (Warwick, 02886), 558 GreenwichAve., Phone: 401-738-5150; TEXAS: Dallas, 75201,2715 Ross Ave., Phone: 214-826-4053; Houston77027, 3705 Westheimer, Phone: 713-623-2090;VIRGINIA: Alexandria, 22303, 6201 RichmondHwy., Phone: 703-765-5515; Norfolk (VirginiaBeach, 23455), 1055 independence Blvd., Phone:804-460-0997; WASHINGTON: Seattle, 98121, 2221

■h »d av*, pi-.^* .'oo-P8;'v:r>j, wisconsmMilwaukee, 53216, 5215 W. Fond du Lac, Phone:414-873-8250.

34 BYTE April 1978

Circle 53 on inquiry card.

and 22 cycle access (allowing relocatablecode) with JSR SAMEL [This uses the well-known trick of seif-modifying code, andthus will not work if the program is inROM.}

The Time Has Come . . .

The preceding section was about ad-dresses, which are positive; the MPY-8AJdoes signed arithmetic. Before we show howto use it in multiple precision products

(fixed or floating), we need to see how two'scomplements bit multiplication goes.

Let A be the bit pattern aQGq . . . ajt Bthe pattern j3q . . . fij. Were A and B un-signed integers, we could represent the prod-uct as shown in figure 3. A few examplesshow this doesn't work for two's comple-ment numbers if one of A or B turn out tobe negative. Not even -1 X 2 is right: recall-1 = 11111111, 2 - 00000010; the abovescheme gives 000000111111110 (after all

10 11 12 13 14 15

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

f8

9

10

11

12

13 14 15

9

10

11

12

13

14 15/

10

11

12

13

14

\%yf

11

12

13

14

15

12

13

14

15y

B1*A2

13

14

15

14

15

Key

15

u

Subject to har

\ Software fixups required.

Definitions of Partial Product Inputs:

A1,A2 =

"0

<*1

a2

a3

<*4

<*5

<*6

a7

<*8

a9

a10

<*11

<*12

<*13

a14

a15

;

a2 =

0

<*9

a10

<*ii

a12

<*13

a14

a15 I

BVB2 =

0Q

*1

$2

^3

04

05

06

07

08

09

010

011

012

013

014

015

b2 =

0

09

010

0n

"12

013

014

015

Figure 4: Condensed representation of rightmost 16 bits of the product of two 16 bit two'scomplement numbers; this is also the same pattern we find in 16 bit unsigned numbers. Theheadings 0 to 15 along the top represent the bit positions of the sum. The headings 15 to 0along the side are the subscripts of the bits in B} while entries in the table are subscripts of A.Blocked off in this are parts of the product we can form with a hardware multiplier: a2b2 (a 14bit sum) and the least significant parts of A jB2 and BjA2- Left over are ag&2 and $8^2 (&utnote overlap in which ag$g is counted twice).

Continued on page 100

April 1978 © BYTE Publications Inc 35

ayaiema rur

m I

H'l i il 'Tuiiii

If you are just getting into personal computing and are looking for a starter system,you have two choices: a computer kit with RAM memory only or a fully assembled computerwith BASIC-in-ROM. From reading this magazine and talking to computer buffs it should beobvious that it is desirable to have a computer capable of communicating in the programminglanguage BASIC: This language allows you to instruct the computer in English like phrasesand to use any of the thousands of standard programs written in BASIC (there are probablyseveral in this magazine).

If you purchase a (RAM-only) computer kit you will have to buy additional RAM (4K to8K), a terminal, and cassette interface for a total cost of about $1000 to run BASIC after you getthe kit together and working. Your reward for this endeavor will be a wait of about 15 minutesevery time you turn the computer on just to load BASIC into the machine!

Your other alternative is a BASIC-in-ROM computer. These machines have BASICbuilt in so that it is there whenever the computer is turned on. BASIC-in-ROM computers arealso usually fully assembled and cost far less than the RAM-only kits because they are mass-produced by the thousands.

But, you must be careful when selecting a BASIC-in-ROM computer. Some modelsdo not have full-feature BASIC. Instead they have Tiny BASIC or 4K BASIC which cannot runmost of the standard BASIC programs available. Still others have other shortcomings such asa small calculator-style keyboard which makes program entry difficult, or most important,lack of expansion capability, preventing the computer from growing with you.

Ohio Scientific offers you a line of expandable computers with full-feature 8KBASIC-in-ROM. They all come fully assembled and tested, but give you the option ofeconomizing by supplying the simple things — power supply, keyboard and TV, if desired, sothat you get the most computer power for your dollar.

Compare Ohio Scientific's $298 BASIC-in-ROM Model 500 Board (1MHz clock),which has our Version 3.3 BASIC, against other small computers, as in the independent article"BASIC Timing Comparisons" (Kilobaud, Oct. 1977, p. 23). In this test, the Model 500 excelledover all our personal computing competitors, and was second in performance only to ourChallenger disk systems, compared against twenty-eight other computer systems. And theModel 500 is our lowest-cost machine! Our larger models are even more dramatic in a com-parison with any competitive models.

Having the fastest full-feature BASIC ROMs certainly isn't the only criterionnecessary for a superior computer system, but it sure helps. Ohio Scientific offers all the otherfeatures necessary, including a full line of computer accessories complete with 15 accessoryboards available in over 40 configurations. Many Ohio Scientific accessories are so innovativethat no one else in the industry has them — such as dual port memory boards, multi-processing CPU's and big disks.

Ohio Scientific has other unique features for the personal computerist. For in-stance, there is Ohio Scientific's Small Systems Journal, published bi-monthly, a fullmagazine aimed specifically at the owners of Ohio Scientific computers. If you are looking fora personal computer, be sure to look carefully at Ohio Scientific. We think you will find that wehave the system for you.

|g|Jtagg|

ijliijiiiili

-

Model 500 Board

A full 8K BASIC-in-ROM computer on a board. This unitcontains a 6502 microprocessor with our powerful 8KBASIC-in-ROM, 4K of RAM memory, and a serial portwhich can be jumpered for 20ma current loop or RS-232.The board can be plugged into any standard OSI-backplane and expanded by our full line of accessoryboards. The user must simply supply +5Vand -9V powerand the serial terminal to be up and running in BASIC.$298.00

Super Kit

An ideal starter computer system. The Super Kit includesa Model 500 CPU Board with 8K BASIC in ROM, CPU, and4K of RAM, full buffering for expansion, an eight-slot back-plane board, and a Model 440 Video I/O Board. Model 440provides full CRT functions when connected to a videomonitor or modified television set and a standard ASCIIkeyboard. The user must simply provide +5V and -9Vpower, an ASCII keyboard, and a modified television set ormonitor to have a full computer system with 8K BASIC-in-ROM, 4K user space and a CRT terminal with scrolling.$398.00

■ywMBPBBBf^m

Challenger H-P

Our very popular fully packaged BASIC-in-ROM computer.Challenger IIP contains the Model 500 CPU Board with 4Kof RAM, our new 540 32x64 character video display,keyboard and complete audio cassette interface. The unitalso has internal power supplies and a four-slot backplanewith two open slots for expansion. The user has only toconnect a monitor or modified television set to its output,and he is ready to program in BASIC. To store programsand data files, he needs only to connect a conventionalaudio cassette recorder to the built-in audio cassette in-terface. The unit is fully assembled and ready to go.$598.00

Challenger II Disk Systems

The ultimate in personal computing offered by OhioScientific is the Challenger II system with single- or dual-drive full-sized floppy disk. Each floppy stores 250,000characters. The Challenger II is available as a videosystem with keyboard so that all the user needs is a televi-sion or monitor for operation; or as a serial version wherethe user must supply his own terminal. Challenger II disksystems automatically load in BASIC and now have an ex-tensive library of high-performance programs. The pro-grams are ideal for the advanced hobbyist, educationalusers, industrial development and small business applica-tions. Challenger II disk systems are very economical. Forinstance, a 16K disk system with 250,000 bytes of diskstorage starts at under $2000.00

1333 S. Chillicothe Rd. • Aurora, OH 44202(216)562-3101

For more information contact an Ohio Scientificdealer or send $1 for our 64-page buyers' guide.

BYTE April 1978

37

The Challenger ID

System

When considering cost effective computers for small business applications, theprospective buyer really has only a few choices: Ohio Scientific's factory-assembled fully in-tegrated computer systems, or the multitude of "pot-luck" 100 systems.

First consider the 100 system. It is a computer system defined as a collection ofS-100 components. It is offered by computer stores and systems houses who mix CPU boards,memory boards, cases, mini-floppies, full-size floppies and numerous software packagesfrom many different vendors. In many cases the components even vary from system tosystem. Unfortunately, what is often used in<a computer system is simply what the computerdealer has on hand at the moment. This may include off-brand or obsolete boards, amongother things.

The end user of these pot-luck 100 systems may experience dissatisfaction with thesystem. First of all, all S-100 products are NOT compatible with each other, as is commonlyassumed. The same is true for hardware products, and most certainly for software products.So although the user may be able to get one or more software packages from the dealer alongwith the computer system, it can be a battle from there on converting software to run on hiscomputer.

The second problem is service. If the customer moves or the dealer goes out ofbusiness, the customer is out of luck because virtually no one will service computer systemsof mixed origin. The computer system might even have been built from kits since most S-100manufacturers offer their products in kit form. Several charge outrageous prices for assem-bled products. And then thete is future expansion — this can be difficult because all S-100products are not created equal or compatible!

We could go on with this horror story, but let us take a more positive approach andlook at the other alternative — the factory-integrated computer system. Ohio Scientificmanufactures a full line of computers and accessories which are not compatible with S-100equipment, but are fully compatible with our full line of expansion accessories. All of oursystems-level equipment has always been available only in fully assembled form. When youbuy an OSI small business system from a dealer, you are assured of buying a standard com-puter system that was factory assembled and tested. You can be assured of getting servicefrom any of Ohio Scientific's dealers and direct from the factory, now and in the future,whether you stay in your present location or move across the country.

A standardized system means standard software. You can order any of OhioScientific's library of diskettes, put them in your disk drive, and your system will performimmediately. And you can make use of our large dealer-generated software library which runson all Ohio Scientific disk systems. Finally, regardless of the possible pitfalls with other com-puter systems, Ohio Scientific's Challenger II and Challenger III business systems stand ontheir own, based on ultra-high performance and impressive performance/cost ratio. Lookcarefully at the specifications of the Challenger III system on the following page. Compare theadvantages of a factory-integrated and supported computer system with those of a computersystem of mixed origin. We think you will agree Ohio Scientific is the only sensible choice incost-effective small business computing.

• Designed for small business computing.

• Uses the 510 triple processor CPU Board, runs 6502,6800, 8080 and Z-80 programs.

• Available with up to 1 Megabyte of RAM memory; highreliability static RAM is standard; low-cost dynamic RAMis optional.

• Single- or dual-drive floppy disks store 250,000characters per surface — 3 to 4 times the storage of mini-floppies.

• Supports our ultra-fast 6-digit BASIC (see "BASIC Tim-ing Comparisons," Kilobaud, Oct. 1977, p. 23, where OhioScientific out-benchmarks all of our competitors) and ournew super-fast 9-digit business BASIC.

• Powerful operating systems support all standard I/Oports including multiple terminals, line printers, videodisplay and disk.

• Disk supports: sequential, random and index sequentialfiles.

• Applications software, including:

WP-1, a powerful disk-based Word Processor.

DMS, a unique data-base management system whichsupports continuous disk addressing of up to 250,000characters per file.

Complete business packages including AccountsReceivable, Accounts Payable, Ledger, Payroll, Inventoryand Taxes.

• Two factory-supported terminal options and two factory-supported line-printer options.

• Optional 74-Megabyte hard disk for $6000. Reel-to-reelmag tape coming soon.

• Optional 16-user operating system with time share anddistributed processing capabilities.

• Optional rack mounting and rack enclosures.

• Leasing programs and maintenance contracts availablethrough many dealers. Optional nationwide field servicecoming soon.

•Challenger III systems have extremely highperformance-to-cost ratios. For example, a system com-plete with triple processor CPU, 32K bytes of static RAM, aserial I/O port, dual drive floppy disks (500K bytes of on-line storage), fully assembled, plus DOS, BASIC and ademonstration program library costs $3481 fully assem-bled.

• The same system complete with a deluxe upper-lowercase x-y addressable CRT terminal, 65-line-a-minute trac-tor feed line printer and an applications software librarysells for about $6000, or rents for a little over $200 a monthon a three-year lease!

DEALERS

The Abacus

Niles Rd

Bernen Springs. Ml 49103

1616] 429-3034

American MicroprocessorsEquipment ft Supply Corp

20 N Milwaukee AvePraneview. IL 60069(31?) 6340076

Computer Mart of New York118 Madison AveNew York NY 10010(212) 686 7923

Joplm. M0 64801(417)781-1986

Computer PowerP 0 Box 28193San Diego. CA 92128(714) 746-0064

Computer Shop (Aircom)

?88 Mortclk St

Cambridge, ma 02139

(617)661-2670

REPRESENTATIVES

Delaware Microsystems

92 E. Main St #1Newark. OE 19711(302) 738-3700

Great Lakes Photo. Inc

5001 Eastman RrJMidland Ml 48640(517) 631-5461

H/B Computers217 East Main SiCharlottesville. VA 229031804) 295-1975

Microcomp

P 0 Box 1221Fonrj-Du-Lac. Wl 54935(414)922-2515

Microcomputer Workshop234 Tennyson Terr

Wiliiamsviile NY 14221(716)632-8270

Micro Computer World

313 Michigan N EGrand Rapids Ml 49503(616)451-8972

Small Computer Systems4450 Trinity AvenueSalt Lake Oly UT 84120(80D967-7635

Abacu* Data

P.O. I

x276

Oil City. PA 16301Associates Consultants

33 Ogden AveEast Wiiltston NY 11596(516) 746-1079BRAG Microcomputers

19 Cambridge St.

Rochester. NY 14607

(716) 442-5861

Byte Shop

2432 Chester Lane

Columbus. OH 43221

(614)486-7761

Computer Business

P.O Box 171

LaPorte. IN 46350

(219) 362-5812

Custom Computer Systems,

1823 Lowry Ave . North

Minneapolis. MN 55411

1612) 588-3944

P.O I

x523

Medina, OH 44256(216) 725-4560Omega Computing, LtdSox 220. Station PToronto. On! M5S 2S7(416) 425-9200

Pan Atlantic Computer Systems. GmbH

61 Darmstadt

Frankfurterstrasse 78

Wesl Germany

(0810?) 3206

Secom Systems

541-1 New Peach Tree Rd

Chamblee. GA 30341

(404)934-3272

Small Computer Systems

3140 Vteilalae Ave

Honolulu. HI 98816

18081 732-5246

Systems Engineering Enterprises

Suite 307

1749 Rockville Pike

Rockville. MD 2085?

(301) 468-1822

Tek-Aids, Inc.. 1513 Grain St" Evanston. IL 60202

(312)328-0110

Total Data Systems

125 Fairway Lane

Fort Collins, CO 80521

(303)482-6215

Tricomp, Inc.

18 Alameda Square

Denver, CO 80223

(303)935-1100

Yingco. inc

2 World Trade Cnlr

Penthouse 107th Floor

New York. NY 10048

(212) 775-1184

1333 S. Chillicothe Rd. • Aurora, OH 44202(216) 562-3101

For more information contact an Ohio Scientificdealer or the factory. Be sure to specify your interestin business systems.

BYTE April 1978 39

Optimization: A Case Study

Whatever size computer one works with,there is usually pressure to make it performa given task in less time or less memory."Optimization" techniques are methods foraccomplishing such speed or memory im-provements. Usually the most effectivechanges to a program are "algorithmicchanges," changes to the strategy the pro-gram uses to get its result An algorithmicchange can reduce the time a program takesto run by 50 to 90 percent. For example,using the well-known quicksort or heap-sort instead of a bubble sort to sort longlists can have this effect.

Sometimes, however, significant resultscan be achieved by "coding changes," inwhich the modified program does essentiallythe same thing as the previous version, butin a better way. Most compilers performoptimizations of this type, such as keepingin a register any expression whose value isused more than once, rather than recom-puting it whenever it is needed. Codingchanges often exploit simple mathematicalor logical identities.

This article follows through the step-by-step processes used to reduce by about 25percent the time and space taken by a smallsubroutine. The example subroutine is the"Novel 8 Bit Multiplication" by ChristopherD Glaeser (July 1977 BYTE, page 142),which is reproduced in listing 1.

Coding changes are not effective at re-ducing the time taken by a program unlessthey are applied to the most heavily usedparts of the program. If some part onlyaccounts for 2 percent of the time used bythe program, no optimizations applied onlyto this part can speed up the program by

William B Noyce31 Cathy StMerrimack NH 03054

more than 2 percent. Usually, the mostheavily used parts of a program are insidecommonly used subroutines or deeplynested loops.

The 8 instruction loop starting at LOOPin listing 1 accounts for about 80 percentof the time in the multiply subroutine. Theloop works by testing, from right to left,bits of the number passed in C, and addingthe number passed in D to the appropriateposition on the partial product. The numberwhose bits are tested is called the multiplier,and the number that is added is called themultiplicand. The partial product is keptin HL, because it accumulates a 16 bit sum.Since the multiplicand needs to shift left,it is kept in DE, and the XCHG instructionmoves it into HL to be shifted. If we caneliminate the need to shift the multiplicandwe can save the XCHG instructions and alittle setup code.

The original loop computes:

2°P(

>0 + 21 P-, + 22P2 + 23P3 + 24P4 + 25P5 + 26P6 + 27P7

where Pj = the multiplicand if bit i of themultiplier is 1, or 0 if the bit is 0. Thisexpression is equivalent, by the distributivelaw, to:

( ( ( ( ( (P7*2 + P6) '2 + P5) -2 + P4) -2 + P3) -2 + P2) -2 + P^ '2 + Pq.

About the Author

Author William B Noyce is 23 years old. For four and a half years he hasworked as a systems programmer for the Dartmouth Time Sharing System,and is currently a Software Engineer at Digital Equipment Corp. At homehe has an 8080 based microcomputer on which he hopes to develop a highlevel language compiler and a powerful graphics system.

40

April 1978 © BYTE Publications Inc

M + 4 •* - -

I1II1I

r •

1 System 8813

1

\

1 # D

■I

Hie Computer for the Professional

Whether you are a manager, scientist, educator, lawyer,

accountant or medical professional, the System 8813 will

make you more productive in your profession. It can keep

track of your receivables, project future sales, evaluate

investment opportunities, or collect data in the laboratory.

Use the System 8813 to develop reports, analyze and store

lists and schedules, or to teach others about computers.

It is easily used by novices and experts alike.

Reliable hardware and sophisticated software makethis system a useful tool. Several software packages areincluded with the machine: an advanced disk operatingsystem supporting a powerful BASIC language inter-preter, easy to use text editor, assembler and other systemutilities. Prices for complete systems start at $3250.

See it at your local computer store or contact us at460 Ward Dr., Santa Barbara, CA 93111, (805) 967-0468.

PolyMorphicSystems

BYTE April 1978

41

LOC 03J

SOURCE STATEMENT

MULTIPLE C ST D/ GIVING RC.PRESERVES D#E*H,L.

ORIGINAL PROGRAM 3Y CHRISTOPHER D GLAESERC-OPYRIGHT 1977 BY 8YTE PUBLICATIONS*. INC.

2 7 BYTES, A3 OUT 512 CYCLES.

00 00

05

9

MULT1 ;

PUSH D

; SAVE REGISTERS

0001

E5

10

PUSH H

0002

5A

11

MOV E,D

; MOVF MULTIPLICAND TO OE (LOWER)

0003

160J

12

MVI D,0

; AMO CLEAR OE (UPPER)

0005

6A

13

MOV L#0

,* CLEAR PRODUCT AREA

0006

6<!

14

MOV H,D

0007

06ua

15

MVI 3#8

; LOOP COUNTER

0009

7^

161718

MOV A,C

; PUT MULTIPLIER WHERE IT CAN SHIFT

OOOA

\f

LOO PI :

RAR

/* TEST NEXT MULTIPLIER BIT

0003

Dd jF J3

19

JNC S<IP!

OOOE

1*

20

DAD D

; ADD MULTIPLICAND

OOOF

Ed

21

SKI PI ;

XCHG

** SWAP OF WITH ML

0010

29

22

DAD H

; SHIFT MULTIPLICAND LEFT

0011

Ed

23

XCHG

,* SWAP BACK

0012

OS

24

DCR 3

0013

C2QAQ0

2526

J N Z L 0 0 P 1

; REPEAT 8 TIMES

0016

44

17

MOV 3,H

; MOVE PRODUCT TO OC

0017

4l>

28

MOV C*L

0018

El

29

POP H

,* RESTORE REGISTERS

0019

01

30

POP D

0Q1A

C9

313233

RET

; RETURN

% EJECT

Listing 1: The starting point for this case study in optimization is a routineby Christopher D Glaeser, which appeared in Juiy 1977 BYTE on page142. This listing reproduces Christopher's multiplication algorithm, whichtakes 27 bytes of memory and about 512 cycles of the processor clock.

LOC

OBJ

SEQ

SOURCE STATE

WENT

34

; MUL T I PL Y C BY

D,

GIVI

f\G BC.

35

; PRESERVES

DsEj

>H,L

.

36

;

37

; SHIFT

PRODJC T

INSTE.

OF MULTIPLICAND.

38

; SHIFT

MULTIPL1

:er

LEFT

INSTEAD OF RIGHT.

39

;

CO4142

,* 2 5 BYTES,

ABOUT 448 C

YCLFS.

0013

05

43

MULT2 :

PUSH 0

; SAVE REGISTERS

001C

E5

44

PUSH H

00 IB

5 A

45

MOV

E*D

; MOVE MULTIPLICAND TO

OE (LOWER)

001E

lo JU

46

MVI

D#0

; AND CLEAR OE (UPPER)

0020

6A

47

MOV

L,0

; CLEAR PRODUCT AREA

0021

62

48

MOV

H, D

0022

06 a a

49

MVI

9s8

; LOOP COUNTER

0024

7v

505152

MOV

A, C

; PUT MULTIPLIER WHERE

IT CAN SHIFT

0025

2V

L00P2:

DAD

H

; SHIFT PRODUCT LEFT

00 26

1 7

53

R AL

; TEST ME XT MULTIPLIER

BIT

0027

D22djJ

54

JNC

SK IP2

002A

19

55

DAD

D

; ADD MUL TIPLICAND

0023

05

56

SKIP2:

OCR

3

002C

C225JJ

57

JNZ

L00P2

; REPEAT 8 TIMES

58

00 2F

44

59

MOV

3/ H

; MOVE PRODUCT TO BC

00 30

4l>

60

MOV

C,L

00 31

E1

61

POP

H

; RESTORE REGISTERS

00 32

01

62

POP

D

00 33

C9

636465

I EJECT

RET

; RETURN

Listing 2: By rearranging the code of the inner loop so that an equivalentoperation is performed, some time can be saved. This (for an 8080) involveschanging the order of shifting of the multiplier, and using a double precisionaddition operation as the equivalent of a shift This modified routine takes25 bytes and executes in about 448 cycles.

This latter expression shows how we canshift the product left after every additionexcept the last, if we always add the multi-plicand into the lower byte. If we addedthe multiplicand into the upper byte, wecould shift the product to the right afterevery addition, but the 8080 has no 16 bitright shift instruction. The change to shiftthe product left requires that we examinethe leftmost multiplier bits first: the newinner loop appears in listing 2. Note thatthe product is shifted at the beginning ofthe loop; this is so it doesn't get shiftedafter the last time through.

Since the product is shifted left eighttimes, there is no need to clear its upperhalf initially with a MOV H, D instruction.Whatever garbage is in H will be shifted offand have no effect on the subroutine'sresult. But we can put these unused bitsto work instead of wasting them. Aftern times through the loop there are 8 - nbits remaining in the multiplier and 8 - nunused bits in H, since the partial productoccupies only 8 + n bits. The product andmultiplier can coexist peacefully in HL, andevery time the product is shifted, a bit of themultiplier falls out into the carry. We canthus eliminate the RAL instruction whichshifted multiplier bits into the carry. Thenew subroutine appears in listing 3.

Where else can we save time or space?The user of the original subroutine obviouslydidn't care whether the input values ofregisters A and C were preserved, but wedon't use them in the loop. We can savetime and space by using these registers.Instead, program 3 uses B, D and E,and saves input values of D and E on thestack. Register pair DE was used as themultiplicand because we needed to useXCHG; DAD H; XCHG to shift it, but weno longer shift the multiplicand. Becausewe want our multiplicand in the lowerbyte of a register pair, we should use thenumber passed in C as the multiplicandand the number passed in D as the multi-plier. This is legal because of the commuta-tive law. Effectively, we save the MOV E, Dwhich moves the multiplicand to the lowerhalf of its register pair, and other instruc-tions are changed. We can keep the loopcounter in A, which is no longer needed forthe multiplier. Now the subroutine nolonger modifies D or E, so the PUSH D andPOP D instructions may be deleted. Thesavings in stack space may or may not beimportant, depending on other parts of theprogram in which the subroutine appears,but there is a significant saving in time andprogram size. The final version of the sub-routine appears in listing 4. It is 20 bytes

42 April 1978 © BYTE Publications Inc

Fastest S-100 Dynamic Memory

i iBBI * Vfllfl

1 ■ '•—JBEp9 '"""ijHBPM

—■!■ IS. MlwCT . -! rrmmm.. r-w.MHB SHI *"

!C

B ■ ■ lB

^ -' "III'

:. * V .■

^^£^^

*■""■"

.«*!*?«* 1

i

EZQ3Q „

Htm

-1 1 -

,■ -.' y "

-. pip i |. v

MSB 068

wem ' ~

-4HBB —

JBTC

Mb

'"EL' "'"' m * £

LEI |'^^$|..J1 ?&

•

L

H

Itllllli

^SmwgtJ

w

JBT

■H W'ifcMlfM ■

"IMMMM ■■"■'

! i ■ --IB

1 ■«§

5E| ;'..■ w& H

iff *■ Ofui 1

11, HI WJDiOiPE

iiB^SL..__LiL-,

I"

•::■••"

5Mhz D-32 Dynamic Memory Board

The D-32 is thefastest S-100 memoryboard available.

Highest Speed

The D-32's high speed is basedupon precise control of timing andconservative design. It operates inS-100 bus systems with cycle timingindependent of the bus.

Memory cycle timing is derived from aprecision digital delay line, which isfour times more accurate than othertechniques. Power consumption isminimized by the performance ofdynamic refresh cycles only whenrequired and by timing them with a35khz oscillator. During normalprogram execution, refresh cyclesoccur following instruction fetch (Ml)cycles, and are fully transparent.

Maximum Reliability

The D-32 is as reliable as staticmemory boards, since close attentionhas been paid to the properengineering discipline to maximizereliability. These details include: theuse of molded ceramic bypasscapacitors for superior noiseimmunity, keeping trace lines to theedge connector to a minimum tosuppress noise spikes on the bus,precisely-controlled timing and amulti-layer PC board with internalpower and ground planes for superiornoise immunity.

Expandability

The D-32 has a fully-transparent,dynamic refresh. Each 4096 byteblock is addressable at any 4K pageboundary. Extended addressselection allows expandability to onemegabyte co-resident in the system.

«OSY READ

REFRESH CYCLES OCCUR TRANSPARENTLYFOLLOWING Ml CYCLE READ ONLY WHENREQUIRED 8Y INTERNAL REFRESH TIMING CIRCUIT.ACCESS TIME TA* 260 ns« FROM PSTNC{MAX)

MEMORY TIMING IS PRECISELY CONTROLLED US«*«A TAPPED

2 50 ft*DIGITAL DELAY LINE. TIMING SHOWN IS FOR TDL\

ZPU-2 RUNNING AT 4mt*Z { T-CYCLE * 230l»>

MEMORY WRITE CYCLES ARE INiTfATED BY THE LEADING

EDGE OF MWRITE PULSE.

MEMORY READ CYCLES BEGIN AT THE LEADING

EDGE OF PSYNC I OR PSYNC ■ 0 I ) WHEN SUEUR'I

Main Features

• immediately available, fully

assembled and tested

• static board reliability

• 32K byte memory

• fastest S-100 board available

• independently addressable

4-K blocks

• extended address selection for

expansion to one megabyte

• 5 megahertz typical performance,

4 megahertz worst-case

• cycle timing independent

of S-100 bus

• precision digital delay line

for highest speed

• fully-transparent dynamic refresh

• lowest power consumption

• internal ground plane to increase

noise immunity

• S-100 compatible

Immediate Availability

The D-32 is immediately availableat more than 125 TDL dealersnationwide. They will show you thisfully-assembled, tested and burned inD-32. If your dealer doesn't carry TDLhardware/software products, writeor call:

Sales Department • Technical Design Labs \ nc.

Building H* 1101 State Road • Princeton, N.J. 08540

609-921-0321

Cable Address: XITAN PRIN • TWX 510-685-9280

TECHNICAL

DESIGN

LABS

Circle 111 on inquiry card.

BYTE April 1978 43

SOURCE STATEMENT

Listing 3: Having made the modifications ofiisting 2, the upper haif of the HL registerpair can Initially contain arbitrary data. Byactually using the most significant bits ofHL, the product and multiplier can both bekept in this one register in a new version ofthe routine which takes 23 bytes and about411 clock cycles.

00 34

Da

0035

E5

00 36

5A

0037

1000

00 39

6A

00 3A

61

00 33

06 uo

0 0 3D

29

00 3E

D242J0

00 41

19

004?

05

0043

C2il>3U

0046

44

00 47

4D

00 48

E1

00 49

D1

00 4A

C9

66

67

68

69

70

71 ;

7?

7 3 MULT 3

74

75

76

77

73

79

80

SI L00P3

82

83

84 SKIP3

85

86

87

83

89

90

91

92

93 $ EJE

MULTIPLY C BY D,PRESERVES D,E,H

GIVING ac.

KEEP MULTIPLIER AND PRODUCT TOGETHER IN HL.23 BYTES, ABOUT 411 CYCLES.

PUSH

PUSH

MOV I

MVI

MOV

MOV I

MVI

3,8

DAD K

JNC SK IP3DAD D

3

.00P3

DCRJNZ

MOVMOVPOPPOPRET

SAVE REGISTERS

MOVE MULTIPLICAND TO D£ (LOWER)

AND CLEAR DE CUPPER)

CLEAR LOW PRODUCT AREA

MOVE MULTIPLIER TO HIGH PRODUCT AREA

LOOP COUNTER

SHIFT MULTIPLIER AND PRODUCT LEFTTEST A MULTIPLIER BITADD MULTIPLICAND

REPEAT 8 TI VIES

MOVE PRODUCT TO 8C

RESTORE REGISTERS

SOURCE STATEMENT

Listing 4: By doing (tthe great registershuffle," further improvement can beaccomplished by passing parameters in regis-ters. This version chips away at time require-ments and requires only 385 cycles, with 20bytes of code.

0043

E5

00 4C

06U0

004E

68

0C4F

62

0050

3EQa

00 52

29

0053

D257J0

0056

09

00 57

3D

00 58

C252jG

00 53

44

00 5C

4D

C0 5D

E1

00 5E

C9

95

969 798991001011021031041051061071081091101 111121 131 141151 161171 181 19120

MULTIPLY CPRESERVES :

BY D, GIVING BC.

THE GREAT REGISTER SNIFFLE. MULTIPLICAND IS IN RC#MULTIPLIER IN H, AND LOOP COUNTER IN A. DE IS NOT USED.

20 BYTES, ABOUT 385 CYCLES.

PUSH H

MVI 3,0

MOV L,B

MOV H,D

MVI A,8

DAD H

JNC SKIP4

DAD 3

DCR A

JNZ L00P4

MOV 3iMOV C*POP HRFT

SAVE REGISTERS

CLEAR MULTIPLICAND HIGH BYTE

CLEAR PRODUCT LOW BYTE

MOVE MULTIPLIER TO HIGH PRODUCT Aft

LOOP COUNTER

SHIFT MULTIPLIER AND PRODUCT LEFTTEST A MULTIPLIER BITADD MULTIPLICAND

REPEAT 8 TIMES

MOVE PRODUCT TO 6C

RESTORERETURN

REGISTERS

SEQ

SOURCE STATEMENT

Listing 5: After virtually exhausting straight-forward improvements of the loopingmethods, the only further improvementspossible come from unrolling the loop intolarger amounts of program memory, Thisversion partially unrolls the multiplicationloop, takes 28 bytes of memory and about325 cycles.

005F Ei

0060 0600

0062 68

0063 62

0064 3EU4

0066 29

0067 D26eOll006A 09

0068 2 9006C D27JJU006F 09

0070 3D

0071 C2660U

0074 44

C075 40

0076 El

0077 C9

121

122

1 23

1 24

125

126

127

128

129 MULT5:

130

131

1 32

1 53

134

135 LOOP5:

1 36

137

1 38

1 39

140

141

142

143

1 44

145

146

147

148

149

MULTIPLY C 3Y D,PRESERVES D,E,H,

GIVI \G BC.

LOOP IS PARTIALLY UNRCLLED.28 BYTES, ABOUT 325 CYCLFS.

SKIP5A :

SKIPS 8;

PUSH HMVI 3,0

MOV 1,8MOV H,DMVI 4,4

DAD H

JNC SKIPSA

DAD 3

DAD H

JNC SKIP5B

DAD 9

DCR A

JNZ LO0P5

MOV 3,HMOV C,LPOP HRET

SAVE REGISTERS

CLEAR MULTIPLICAND HIGH BYTE

CLEAR PRODUCT LOU BYTE

MOVE MULTIPLIER TO FilGH PRODUCT AREA

LOOP COUNTER (HALF NORMAL SIZE)

SHIFT MULTIPLIER AND PRODUCT LEFT

TEST A MULTIPLIER BIT

ADO MULTIPLICAND

-- REPEAT LOOP AGAIN --

; REPEAT 4 TIMES

MOVE PRODUCT TO BCRESTORE REGISTERS

44

April 1978 ©BYTE Publications Inc

LOC

OBJ

S£Q

SOURCE STATEMENT

1 50

;multiply c 9Y d, giving

8C.

151

; PRESERVES D»E#H,L.

152

155

; loop

IS FULLY UNROLLE C.

1 54

;

155

; 4 9 9T

TES# ABOUT ?58 CYCLES.

1 56

1 57

00 7?

E5

1 5S

KUL T6:

PUSH H t

SAVE REGISTERS

03 79

06^o

159

Mtfl 3*0 *

CLEAR MULTIPLICAND HIGH 9YTE

10 76

63

160

pov l*b

CLEAR PRODUCT AREA LOW 3YTE

^0 7C

6^

1611 62

MOV K#D *

MOVE MULTIPLIER TO PRODUCT AREA HIGH

BYTE

00 70

?*

1 63

OAO H

SHIFT MULTIPLIER AND PRODUCT LEFT

00 7E

»*d£j3

1 64

JNC SKIP6A

TEST A MULTIPLIER 31T

OO?1

19

165

DAD D

ADD MULTIPLICAND

008?

?*

1 66

SKIP6A:

D AD H

— REPEAT LOOP 7 MORE TIMES --

0083

C^i?jj

167

JNC SK IP69

00 86

T?

161

DAD 0

008?

?9

169

SKIP6B

DAD H

008"

0<!oC JJ

170

JNC SKIP6C

0089

19

1 71

DAO 0

1*5 tC

??

172

SKIP6C

DAD H

00 80

C2»1jj

1 73

JNC SK IP6D

0090

19

174

DAD D

0091

2*

175

SKIP6D

DAD H

00 9?

C29»3j

176

JNC SKIP6E

00 95

09

1 77

DAD 3

00 96

29

1 78

SKIP6E

DAD H

00^7

D2 9o30

1 79

JNC SKIP6F

0094

09

I8Q

DAD 3

0099

?9

i«i

S<IP6F

DAD H

009C

Od«j,J

132

JNC SKIP6G

009F

09

183

dad a

00*0

2V

134

SKIP6G

DAD H

00 AT

0?AS^3

185

JNC SKIP6H

00*4

0*

186187

SKIP6H

DAO 3

; -- END OF UNROLLED LOOP —

00*5

4 4

138

MOV 3*- H

; MOVE PRODUCT TO BC

n0*6

40

139

MOV C»L

00*7

El

190

POP H

; RESTORE REGISTERS

0^*3

Cv

19119?195

RET

END

Listing 6: Perhaps the ultimate 8 by 8 bit multiply short of a memory in ten-sive full table lookup of answers is this fully unrolled version which expandsthe memory requirements to 49 bytes, but cuts the time requirement to 258cycles for nearly 50 percent savings relative to the time requirement ofthe original program.

long, compared with 27 for the originalroutine, and takes about 393 cycles, com-pared with about 525 cycles for the originalroutine. A million multiplications with atypical 8080 processor's clock would takeabout four minutes, 20 seconds with the oldversion and about three minutes, 1 5 secondswith the new.

If this isn't fast enough, we can speed upthe routine still further, by "unrolling" theloop, replicating its instructions as shownin listings 5 and 6. This eliminates some orall of the time taken by the DCR A andJNZ LOOP instructions which controlthe looping. In listing 5 the loop controlis only executed four times instead ofeight, and in listing 6 there is no loopcontrol at all. These speedup techniquescost memory, however, and tend to makethe code more confusing. It is commonto have to trade memory for speed, andwhich is more important depends on theparticular program. With the long program,our million multiplications would takeonly about two minutes, 13 seconds, justover half as long as the original program."

Now...learn

computer programming

faster & easier with

HEATH'S BASIC

PROGRAMMING

COURSE!

This self-instruction courseuses proven programmed instructionmethods to teach you BASIC... the mostpopular and widely used higher level pro-gramming language. With the help of thiscourse, you'll learn all the formats, com-mands, statements and procedures...then go on to actually apply them with"hands on" experiments and programdemonstrations on your own or any avail-able computer. And unlike other coursesor books on BASIC, we teach you problemsolving as well as programming so youcan apply what you learn. Self-evaluationquizzes and exams guarantee that you un-derstand every detail and when you finish,you may take an optional examination toqualify for a Certificate of Achievementand 3.0 Continuing Education Units(CEU's), a widely recognized means ofparticipating in non-credit adult education.MONEY-BACK GUARANTEE: If for any reasonyou are dissatisfied, Heath Company will re-fund the full purchase price of the course.

HEATH

EBBS!

HEATH CO., Dept. 334-401Benton Harbor, Ml 49022

YES Please send me your EC-1100 BASICProgramming Self-Instructional Course.

My □ check Q Money order for $ is

enclosed. Or please charge to my Q VISA/BankAmericard Q Master Charge

Account #

Exp. Date M.C. Code #

Signature.

(necessary to send merchandise)

NAME_

(please print)

ADDRESS-

CITY-

STATE-

_ZIP_

ORDER TODAY - PRICE GUARANTEEDTHROUGH APRIL 25,1978 ONLY!

Price is mail order F.O.B. Benton Harbor, Ml.Price subject to change without notice.

Circle 53 on inquiry card. April 1978 © byte Pubiicati<

45

Hand Assembling M6800 Relative Addresses

Ray Boaz

1516 JarvisPI

San Jose CA 95118

M6800 BRANCH ADDRESS CALCULATOR TABLE

MSH -B

F

E

D

C

B

A

9

8

LSH -F

LSH ~B

_

— ■

16

32

48

64

80

96

112

0

F

1

17

33

49

65

81

97

113

1

';-'JE

2

18

34

50

66

82

98

114

2

D

3

19

35

51

67

83

99

115

3

c

4

20

36

52

68

84

100

116

4

B

5

21

37

53

69

85

101

117

5

A

6

22

38

54

70

86

102

118

6

9

7

23

39

55

71

87

103

119

7

8

8

24

40

56

72

88

104

120

8

7

9

25

41

57

73

89

105

121

9

6

TO

26

42

58

74

90

106

122

A

5

11

27

43

59

75

91

107

123

B

4

12

28

44

60

76

92

108

124

C

3

13

29

45

61

77

93

109

125

D

2

14

30

46

62

78

94

110

126

E

1

15

31

47

63

79

95

111

127

F

0

16

32

48

64

80

96

112

-

-

0

1

2

3

4

5

6

7

MSH-F

1. Count the number of bytes (in decimal) from the instruction following the branchto the branch target instruction.

2. Find this number inside the table.

3. Read the hexadecimal equivalent.

a. Top and left for branching backward.

b. Bottom and right for branching forward.

The "hand assembler" is the only resi-dent assembler many of us have, and as suchit is the means to an end in homebrew com-puting. However, this is really the way tolearn your computer's instruction set. InMarch 1976 BYTE Carl Helmers pointedout the big problem of calculating the rela-tive address for branching used in M6800microcomputer systems. This problem isreal and anyone using the M6800 runs intoit when hand assembling a program.

The range of branch instructions for theM6800 is 125 bytes before the value of theprogram counter (PC) to 127 bytes afterthe value of the program counter. Using theinstruction following the branch instructionas the starting point, count the number ofbytes, in decimal, forward or backward, tothe instruction being branched to. Find thisdecimal number inside the table. Read thehexadecimal equivalent at the top and leftside for branching backward, or at the bot-tom and right side for branching forward.This hexadecimal equivalent is the branchoperand, which in this case is the valueadded to the program counter.

This technique is much easier and fasterthan either adding and subtracting in hexa-decimal, or counting forward and backwardin hexadecimal. A few examples are back4-jq bytes = FC15, forward 42iq bytes =2A-| 6, and back 110] q bytes = 92-] 5."

ATTENTIONCOMMODORE PET USERS!Low Cost Financial Software on CompatibleCassette Tapes for your PET Computers. Samplesfrom our program library include:MORTGAGE $15.95

Calculates mortgage data, e.g., principal paid to date,outstanding principal, mortgage equity, interest paid todate, outstanding interest, and more.ANNUAL REPORT ANALYZER (Manual) $22-95

With annual report in hand, you input 5 yrs revenuesand income; program computes: Percentage growth insales, profits, earnings per share; PE ratio; Profitmargins; Current ratio; Book value; Return on equity;Payout ratio; Dividend yield; Theoretical value forstock & PE ratio; Implied yield & growth rate; more.STOCK ANALYZER (Automatic Data Entry) $34.95Same as Annual Report Analyzer except data is auto-

matically entered from Data Base tapes simply by en-tering ticker symbols.DATA BASE (Updated monthly) $1 50.00 Per Year

Statistical data on over 2,500 Industrial Stocks on theNew York, American and Over the Counter Exchanges.OPTIONS $24.95

For both option buyers and writers, program computesthe theoretical value of an option with graphics.Pursuant to Rule 206(4)-l(A)(3) of the Securities and Ex-change Commission, it should be noted that the above men-tioned programs should not in and of themselves be utilized inmaking investment decisions. The scope and usefulness of theabove programs are limited, with values in some cases beingpurely theoretical.

SEND FOR FREE BROCHURE

NATIONAL CORPORATE SCIENCES, INC.

(Registered Investment Advisors • Qur 10th Year)

790 MADISON AVENUE

NEW YORK, N.Y. 10021

46

April 1978 ©BYTE Publications Inc

Circle 130 on inquiry card.

>■■■<

i I

L

?

m

via vii

are finallyreleased!

V2tf>

1 v5kA

%

9/>

v

-

Volume VI

Yes and it still contains what was previouslyadvertised. A fully disk interactive businesspackage with A/R, Inv., A/P, ledgers, tax totals,payroll records, more.

As a bonus it also contains the Users Manual forour Firmware Ledger package. These 100 extrapages contain report formats, file creation rou-tines and our very powerful program ACBS1 usedto create the powerful file structured data base.

$49.95

Volume VII

Here is that Chess program you have beenwaiting for as well as a disk interactive MedicalBilling package with patient history file.

Also included is ourProcessing package(revision 0).

disk interactive Word

^L

$39.95

Add $1.50/Vol. for U.P.S. and handling except to APO and PO addresses.Foreign orders add $8/Vol. for air shipment — US dollars only. No purchaseorders over $50. v /-A Hi

Soon To Be Released—Vol. VIII-Homeowners Programs(Includes Federal Income Tax Program)

VOLUME

I

$24.95

VOLUME

II

—

24.95

VOLUME

III

—

39.95

VOLUME

IV

—

9.95

VOLUME

V

—

9.95

©

OUR SOFTWARE IS COPY-RIGHTED AND MAY NOT BEREPRODUCED OR SOLD.

Due to the numerous copyright violations onour earlier volumes — until further notice weare offering a REWARD leading to the arrestand conviction of anyone reproducing oursoftware in ANY way without our writtenpermission. This includes diskettes, paper andmagnetic tape, cassettes, records, paperCopies, etc.

SCIENTIFICRESEARCH

220-B KnollwoodKey Biscayne, FL 33149

Phone orders 800-327-6543Information 305-361-1153

AVAILABLE AT MOST COMPUTER STORES

10% discount on purchases of entire set. Offer expires December 30, 1977

master charge

THf iNTtnflAll* LiuD

honored

BYTE April 1978 47

Collector's

item

The first 16 issues of BYTE —

September, 1975 through December, 1976 —

in two gold embossed hard cover volumes.

$100

complete set —two volumes

00

These individually numbered sets are person-ally signed by Carl T. Helmers, Jr., Editor-in-Chief of BYTE.

As only 100 sets will be offered for sale, orders will be han-dled strictly on a first-come first-served basis. Send in thecoupon today! These early issues of BYTE are packed witharticles by your favorite writers:

Helmers, Fylstra, Ryland, Dittrich, Chamberlin, Lancaster,Maurer, and many more.

For your personalized set of BYTE's first 16 issues mail thiscoupon today!

Carl T. Helmers, Jr.,

Editor-irtpChief, BYTE Magazine

^M~t~

Yes, rush me my numbered and personalized 2-volume set of the first 16 issues of BYTE.

Card NumberSignature

Address

City

□ Check enclosed for $100.00

D Bill BankAmericard/Visa □ Bill Master Charge

Expiration Date

Name (please print)

State

Zip -

Mail to: BYTE Publications, Inc.70 Main Street * Peterborough

N.H. 03458

48

April 1978 ©BYTE Publications Inc

WSmSBSm

Photo I: A view of the complete TRS-80 computer with the Radio Shack supplied video monitor and audio cassette recorder,supplied courtesy of Radio Shack. Priced at $599.95 for a 4 K byte version, this personal computer includes a BASIC interpreterand cassette interface software in 4 K bytes of read only memory. This is a BASIC only machine. The user cannot gain access tothe machine language of the Z-80 processor which runs the BASIC interpreter.

The Radio Shack TRS-80: An owner's Report

On August 3 1977, the Radio Shackdivision of Tandy Corporation announced itsentry into the personal computing marketwith the TRS-80 microcomputer. The moveheld special significance for the personalcomputing industry, for with parent companysales of nearly a billion dollars and over 6000retail stores including 500 overseas, RadioShack is in a unique position to help bringpersonal computers to the average man orwoman.

The TRS-80 is an "appliance" computer,preassembled and warranted with a built-inBASIC language interpreter, and at a price ofunder $600 it will be affordable by manynew personal computing enthusiasts. But$600 still represents a major investment formost of us, and it's desirable to know asmuch as possible about the detailed specifi-

cations of a computer before buying one.If you're contemplating purchase of one ofthe "appliance" computers now on themarket, this review should be helpful toyou in making your evaluation.

I ordered a TRS-80 the day after RadioShack's press announcement, and hence Ireceived one of the early units without acomplete user's manual or any technicalinformation on the TRS-80's provisions forexpansion. Radio Shack has announcedplans to introduce several significant hard-ware and software extensions to the basicTRS-80, some of which may become avail-able before this article appears in print.As you read this, bear in mind that it waswritten in late October 1977, based on thesomewhat limited information available atthat time.

Dan Fylstra22 Weitz St #3Boston MA 02134

Photography by Dan Comly

April 1978 © BYTE Publications Inc 49

Photo 2: This back view ofthe TRS-80 processor unitshows the three 5 pinDiN type connectors usedto attach the power supply,video monitor and cassetterecorder. DiN connectorsare commoniy used in theaudio component field,and are avaiiabie at mostRadio Shack retaii outlets,if the complete system ofphoto I is purchased, aiinecessary cables are sup-piied.

General Specifications

Photo 1 illustrates the complete TRS-80package, consisting of the keyboard whichhouses the microcomputer and memory, avideo monitor, an audio cassette recorderand a power supply. The keyboard unitmeasures 16.5 by 8 by 3.5 inches (41.9 by20.3 by 8.9 cm) and is very portable. Theentire package including the video monitorand cassette recorder is a lot to carry, but Idid take the entire computer with me on onehalf mile walk from the Boston home ofRadio Shack to my apartment.

The components of the TRS-80 areeasily plugged together using standard 5 pinDIN type audio connectors and cords whichare supplied with the complete package.Jacks for the power supply, video monitorand cassette recorder are mounted on theback side of the keyboard unit, as illustratedin photo 2. For the experimenter, the DINtype plugs and jacks are available (youguessed it) as a stock item in most RadioShack stores.

The video monitor and cassette recorderare standard items, and if you already ownone or both of these you can probably usethem with the TRS-80 to save on your invest-ment. I actually bought only the keyboardunit for $400 and attached it to a RadioShack CTR-35 cassette recorder which Ialready owned, and a Hitachi TV set modifiedfor direct video entry using the Pickles &Trout kit. My home setup is shown in photo3. The cassette recorder you use should have"earphone" and "auxiliary input" jacks anda "remote" jack for starting and stoppingthe cassette drive motor. The connectioncords for the cassette recorder are suppliedwith the keyboard unit. The video monitoror TV set should accept a direct video signal

(EIA standard, 75 ohm input) rather than aradio frequency (RF) signal generated by amodulator in order to provide the bandwidthrequired for the TRS-80's display. For theprospective buyer who doesn't already ownthis sort of equipment or who doesn't possessthe special skills needed to modify a TV set,the complete TRS-80 package includes thevideo monitor and cassette recorder.

Inside the TRS-80's keyboard unit are4 K bytes of read only memory containingRadio Shack's Level I BASIC interpreter aswell as software to control the cassetterecorder and display screen, and 4 K bytesof programmable memory which holds theuser's BASIC program. The eight integratedcircuit chips inside the unit which providethe 4 K bytes of programmable memory canbe replaced by higher density memory chipsto provide 8 K or 16 K bytes of memoryinside the basic keyboard unit. Similarly,the two chips which provide 4 K bytes ofread only memory can be replaced byhigher density chips to provide 8 K or 12 Kbytes of read only memory, enough to holda much more powerful BASIC languageinterpreter and disk operating system whichare said to be planned for later introduction.

Radio Shack has priced separately everycomponent and memory option in theTRS-80 system. The microcomputer withkeyboard and 4 K bytes of user memory is$399.95; the video monitor is priced at$199.95; and the CTR-41 cassette recorderis $49.95. These components can be pur-chased as a complete package deal for$599.95, An additional 4 K bytes of pro-grammable memory for a total capacity of8 K is priced at $99.95, while an additional12 K bytes of memory for a total capacity

50

April 1978 © BYTE Publications Inc

of 16 K is priced at $289.95. For planningpurposes it is important to note that there isno "trade-in allowance" on the lower densitymemory chips if the user decides to expandto the higher density chips. Thus it wouldnot make sense to order the TRS-80 nowwith 8 K bytes of memory if the ownerlater intended to expand to 16 K bytes(which will probably be necessary to supportthe future disk operating system) since thetotal outlay for 16 K bytes of memory wouldthen be $389.90.

BASIC programs in memory are stored incharacter form rather than encoded form, butabbreviations for most of the BASIC key-words are provided to save space. Thus youcan write P. instead of PRINT and G. insteadof GOTO, and thereby save a considerableamount of memory space since these key-words occur so frequently in a large program.

The TRS-80 is based on the Z-80 micro-processor, but this fact is really only impor-tant from the standpoint of designing andimplementing the computer's read onlymemory software. At present the TRS-80user is "insulated" from the hazards (and

pleasures) of programming the Z-80 directly,since the BASIC interpreter is automaticallyactivated when power is turned on, and thereis no way at present to drop into machinelanguage.

Display Screen

The TRS-80 includes a 12 inch (30.5 cm)black and white, high resolution video moni-tor which presents 1024 characters, arrangedin 16 lines of 64 characters each. (The displayis said to be "software selectable" for 32 or64 characters per line, but no documentationis available at this writing on how the selec-tion is made.) The display is memory mapped(ie: continuously read out of a section ofprogrammable memory separate from theBASIC program and data memory), and iseasily controlled from BASIC for bothalphabetic and graphic displays.

Built-in software provides an underlinecursor and automatic scrolling from thebottom of the display. The keyboard includesfour keys to move the cursor in any direction,but present software supports only the"cursor left" key which deletes the character

Photo 3: The author's home setup showing the TRS-80 processor unit with its keyboard, con-nected to an ordinary Hitachi television set modified for direct video entry using a kit fromPickles & Trout, POB 2216, Goieta CA 93018. This setup permits conventional programreception on the television and saves about $100 over the price of the complete Radio Shacksystem; but It requires some electronics skill In order to modify the television set. Use of thistelevision set and modification kit is further described in the article "Convert Your TV Set toa Video Monitor" which will appear In a forthcoming issue of BYTE,

April 1978 © BYTE Publications Inc

51

Photo 4: An illustration ofthe use of the TRS-80'sgraphics capabilities. TheBASIC program shown onthe screen created thesquare and cutout by usingthe SET and RESET state-ments to turn points onand off. This illustrates thearbitrary way in whichtext and graphics can beinterspersed on the display.

mmmmmmmmnn

xttecrx

**m mm 1

wmimmwMwmwn

mm

or characters just entered on the current line.(The cursor can be moved to arbitrary posi-tions under BASIC program control, asdescribed below.) The "cursor up" keyis used to continue a line by line listingof a program which has already filled thedisplay screen. Another key is provided toclear the screen.

Character Set and Graphics

The TRS-80's character set consists of 58characters including upper case alphabeticand various numeric and special characters.In addition, each character position on thescreen is divided into six tiny squares, twoacross and three down, and each of thesesquares can be set on (white) or off (black)under program control. Thus graphic dis-plays with a resolution of 128 by 48 pointscan be created on the screen.

The BASIC language features for con-trolling the graphic display are especiallyconvenient. A point can be turned on witha statement of the form SET (X,Y), whereX ranges from 0 to 127 and Y ranges from0 to 47, or turned off with the statementRESET (X,Y). The function POINT (X,Y)can be used in an IF statement to determinewhether a particular point on the displayis currently on or off. Besides the graphicpoint addressing, the 1024 character posi-tions on the screen are numbered sequentiallyfrom left to right, line by line, and thecursor can be set to an arbitrary positionwith a statement such as PRINT AT Z,

"EXAMPLE MESSAGE", A+B, where Zvaries between 0 and 1023. Thus displayedmessages, which can be interspersed withgraphics, are easily placed at any positionon the screen. Finally, the CLS statement inBASIC can be used to clear the screen.

Photo 4 provides a simple illustration ofthe use of the TRS-80's graphics capabilities.The BASIC program shown on the screencreated the graphic display by first filling ina solid square with the SET statement, andthey blanking out the inner square cutoutwith the RESET statement. A variety ofsimple pictures could be drawn in thismanner. The TRS-80's graphics features areespecially convenient for plotting data ormathematical functions, due to the abilityto address single points on the display.

Keyboard

The TRS-80's keyboard includes 53 keyswith the standard spacing and arrangementused on a typewriter keyboard. It is well-suited for touch typing and will be quitefamiliar to the experienced user of the Tele-type terminals found on timesharing systemsand minicomputers. The keys are of themechanical contact type, and they have areasonably good "feel" and seem quitereliable in use. A BASIC program can readnumeric quantities and character stringsfrom the keyboard with the INPUT state-ment, which allows a message to be displayedat the same time, as in INPUT "ENTERSTARTING VALUE";X.

52

April 1978 ©BYTE Publications Inc

Finally, the macro maker of computerprinters has gone micro. With a high-speed,desk-top, non-impact printer complete withparallel interface (Model P-l) thaf s perfect forthe home, hobby and small business user. Acomplete 80-column printer for less than $600.

The new Centronics microprinter isbig on performance. It prints clean, clear dotmatrix characters at a rate of 150 lines perminute. Yet if s quiet, compact, comes fullywarranted and is backed by Centronics'worldwide service. If s even available in aserial interface version (Model S-l) forremote applications.

Of course, buying your small systemsprinter from the industry's leading producerof printers is simply a better buy. You get thesecurity, support and systems flexibility onlyCentronics can bring. Plus the targeted tech-nology that brings out the best in any computer.

So when you think small printers, thinkbig. Think Centronics. For more information,ust clip and mail the coupon below. ,

Centronics Data Computer Corp.Hudson, NH 03051

Gentlemen: Tell me more about your newmicroprinters.

Name

Address.

Town

State

_Zip_

B-4-78

CEnTROniCS PRinTER5Simply Better

Circle 21 on inquiry card.

BYTE April 1978

53

Table 1: A brief summaryof the features and per-formance of Radio ShackLevel I BASIC, as availablein the TRS-80.

Data Types

Real numbers (eg:

A)

and two string variables

(A$ and B$), each up to

16 characters long.

Arrays

One array variable,

A

(subscript), with one d

imension. The array is as

large as the entire

memory remaining, after allowing

for the program

and ordinary variabl

es.

Precision

Six significant digits for

real numbers.

Speed

Executes the loop 10 FOR 1=1 TO 10000, 20 NEXT I in

about 22 seconds.

Statements

LET

GOTO

REM

READ

IF ...THEN

RUN

DATA

FOR ...TO ...STEP

CONT

RESTORE

NEXT

NEW

PRINT

GOSUB

LIST

INPUT

RETURNON ... GOTOON ...GOSUBSTOPEND

Operators

+

*/

< >

< => =<>

Built-in

ABS

MEM

Functions

INTRND

TAB

Other

CLOAD

CLS

PRINT AT

Features

CSAVE

SET

RESET

POINT

INPUT#PRINT#

Cassette Drive

The cassette drive interface can be usedwith any reasonably good audio cassetterecorder, as outlined above. Data is recordedat a rate of about 250 bits per second. Therecording method is designed to be reliablebut does not employ any data redundancyor error correction capability. At first I hadsome trouble recording and playing backprograms, but my results improved con-siderably when I set the tone control tozero. Like most cassette interface systems,the TRS-80 can get hung up searching fora signal on the tape that it never finds. Areset button near the expansion connectorcan be used to halt the cassette loadingprocess, but afterwards memory may con-tain some "garbage" from the partiallyloaded program.

A problem frequently encountered whenusing audio cassette recorders with personalcomputers is that when a long programrecorded on cassette is being read into mem-ory, you don't know whether the computeris reading properly or has been unable tofind the recorded program. The TRS-80lets you know what's happening while acassette is being read by flashing two asteriskson the screen when a program is found, andalternating between one and two asteriskswhile the program is being read. The TRS-80

also starts and stops the cassette drive motorautomatically through the "remote" jack, butthis means that you must remove the"remote" plug in order to manually rewindor fast forward the tape. This inconvenienceis a necessary consequence of using aseparate, standard audio cassette recorderwithout a manual motor control overrideimplemented through operating systemsoftware.

Operating System

The TRS-80's operating system controlsthe cassette interface in response to com-mands and BASIC language statements.You simply type CSAVE to write theBASIC program currently in memoryonto a cassette, and CLOAD to reload itlater. The saved programs are not named andthe CLOAD command will always load thenext program it finds on the tape, but youcan save several programs on the samecassette and find them later by writing downthe settings of the tape index counter on apiece of paper. Also provided are PRINT#and INPUT* statements in BASIC which letyou write and reread the values of programvariables on cassette. Although Radio Shackplans to offer a second cassette interface,the syntax of the PRINT* and INPUT*

54

April 1978 ©BYTE Publications Inc

statements does not provide for referencesto different cassette units, so use of a secondcassette drive will probably depend on sup-port from "Level II" BASIC, which RadioShack is said to be readying for futurerelease.

Radio Shack Level I BASIC

Table 1 summarizes the features andperformance of the Level I BASIC inter-preter built into the TRS-80. The BASIClanguage features provided are somewhatlimited, as might be expected in view of thefact that the BASIC interpreter and operatingsystem fit in only 4 K bytes of read onlymemory. 26 possible variables can consistof one letter, but not a letter followed by adigit. Two string variables, A$ and B$, areprovided and can be used in INPUT, PRINTand assignment statements, but string valuescannot be compared. One singly dimensionedarray variable, A(subscript), is provided, andall memory space remaining after the BASICprogram and ordinary variables are allocatedto this array. Each element of the array, areal number of up to six significant digits,takes four bytes of memory. Users requiringmultiple arrays such as B(l) and C(J) mustsimulate by writing, for example, A(l) andA(10+J). Multiple dimensions may be simu-lated with expressions such as A(I+10*(J-1)),so having one array is obviously better thanhaving none at all. Addition, subtraction,multiplication and division are provided butexponentiation is omitted, since this wouldrequire the EXP and LOG functions forexponentiation of real numbers.

Presumably Radio Shack's Level IIBASIC, said to be due for release in early1978 according to current expectations,will include a much more comprehensiveset of BASIC language features. In the mean-time, Level I BASIC can be used effectivelyfor many computer games and for businessapplications with straightforward arithmeticcalculations such as payroll (see below). Butyou can't plot a sine wave unless you writeyour own sine calculation subroutine.

Expansion

Radio Shack has announced plans to offera variety of expansion options for theTRS-80, but very little detailed informationon them is available at the time of thiswriting. Photo 5 shows the expansion portbuilt into the TRS-80 which reaches theoutside world through a small flip-up openingin the case. This 40 pin card edge connectorno doubt includes the address and data bus,input, output, read, write, interrupt andinterrupt acknowledge signals from theZ-80 microprocessor. A cable can be run

Circle 131 on inquiry card.p»S*80 TR8*38 ^RS^I <^^m^ W^»^» T^^^^ T^&*m ^f^^

TRS-80

SOFTWARE EXCHANGE

SOLICITING:

User prepared software in RS Basic Level I or IIREADY to LOAD.

Topics-Any that you feel would be of interest toothers.

COMPENSATION:

in descending order of preference, and generosityand ascending order of quality standards applied -services, or comissions, or cash.

APPLICATIONS:

Accepted programs are catalogued and grouped inlogical categories into volumes (60 minute tapes) forloan.

MECHANIC OF SERVICE:

Volumes will be LENT for 3 week periods (includingtime in the mails).

Deposit $20 for each volume borrowed. Deposit re-funded, less any late charges when cassette is re-turned.

Usage Fee of $3 (not refunded) for each volumeborrowed.

Sample catalog of software upon request.

Catalog subscription $3 per year.

rite: TRS-80 SOFTWARE EXCHANGE17 Briar Cliff DriveMilford, N. H. 03055

16K RAM

FULLY STATICNTRODUCTORY

$450 K,TPR,CE

10 SLOT MAINFRAME

TT-10. . KIT $325

1 0 SLOT TABLE TOP

MICROCOMPUTERS

TT-8080. . KIT $440

SYSTEM WITH 1 6K & I/O

TT-8080-S. .KIT $1050

CARD CAGE &

MOTHER BOARD

ECT-100. . KIT $100

CCMB-10. . KIT $75

WITH CONNECTORS

& GUIDES

ECT-100-F. . KIT $200

CCMB-10-F. . KIT $125

CPU'S, MEMORY

MOTHER BOARDS

PROTOTYPING BOARDS

EXTENDER CARDS

POWER SUPPLIES

SHIPPING EXTRADEALER INQUIRIES INVITED

ELECTRONIC CONTROL TECHNOLOGY

FACTORY ADDRESS:763 RAMSEY AVENUEHILLSIDE, N. J. 07205

MAILING ADDRESS:

P. O. BOX 6

UNION, N. J. 07083

,1IIIIIIIIII

(201) 686-8080

Circle 43 on inquiry card.

April 1978 © BYTE Publications Inc 55

Photo 5: The TRS-80'sexpansion port, a 40 pincard edge connector whichIncludes the address, dataand control buses. Thisconnector reaches the out-side world through thisflip-up opening on theback of the processor'scase.

HtlBK?-

iii!

riil

^i^Wl^&M':iBfMS^^- "■: '■

■■*"- J^| H

^^^^^^^§

from this connector through various peri-pherals and a memory expansion unit. Inall probability Radio Shack will use a daisychaining arrangement which permits a singlecable to be run from device to device. (Eachdevice in the daisy chain would either acceptan 10 request or interrupt acknowledgesignal, or pass the signal on to the nextdevice.)

Peripherals for the TRS-80 currentlyforeseen by Radio Shack include a secondaudio cassette recorder interface, a printer

Photo 6: The display created by Radio Shack's backgammon game program,which is included free with every TRS-80 computer. This demonstrationprogram acts as the dice roller and scorekeeper for the game, but makes noattempt to replace the two human players.

reliable enough for business applications forabout $1500, a smaller printer for lessdemanding individual applications for about$700, and a floppy disk drive also for about$700. Other planned options include a mem-ory expansion unit and a modem to connectthe TRS-80 to a timesharing or data com-munications system. Perhaps most signifi-cantly, however, Radio Shack has announcedplans to offer an interface to the Altair(S-100) bus, which would provide accessto the many memory and peripheralcards offered at competitive prices by othermanufacturers.

Software

When the TRS-80 was announced, RadioShack also introduced five small applicationsoftware packages on cassette, all of whichare designed to run on the basic TRS-80with 4 K bytes of programmable memory.The first of these is a pair of game programsfor blackjack and backgammon, which isincluded free with every TRS-80 computer.The display produced by the backgammonprogram is shown in photo 6. The programrolls the dice and maintains the board fortwo players, but does not provide for a 1person game against the computer.

Other applications include a "kitchen"package which is said to provide menus,conversion tables, a directory and messagecenter for $4.95; a "personal finance"package, apparently for checkbookbalancing, for $14.95 including sevencassettes; an "education" package whichprovides drills in addition, subtractionand multiplication for $19.95 includingthree cassettes and a teacher's guide; and a"payroll" package for $19.95. The payrollpackage, which has been demonstrated to

56

April 1978 © BYTE Publications Inc

The Central Data 2650:Reliable and Affordable

The Central Data 2650 ComputerBoard system has been carefullydesigned and built with you in mind.We've also designed software andmemory to go with the 2650 so thatyou'll have a complete system. Youdeserve quality equipment, and we'vebuilt it for you. Take a look at the 2650board features and see for yourself.

• a 2650 microprocessor

• an 80 character by 16 line display

• a 300 Baud cassette interface

• a powerful IK Supervisor Program

• one parallel input port and one bitsettable output port

• 2048 bytes of read-write memory forthe video display and your programs

• expands to S-100 bus

• low price of $275

The 2650 board comes assembled,tested and ready to plug in and comeswith a full one year guarantee. Theprice includes a Signetics 2650Microprocessor Manual and a ComputerSystem Manual from Central Data.

We offer the Editor/Assembler and 8KBasic software packages for the 2650system, and our S-100 24K memoryboard allows full expansion of thesystem. (16K and 32K memory boardsare also available.) Each softwarepackage costs only $20. The 24Kmemory board is $395. All softwarecomes with a program listing.

With all these features you can't affordto pass up the Central Data 2650 system.

.uuuuuui niittinooii

,1. li H H it If IS !{«f( J! if!!' Itlk

'•HuniiuufHHfnnnrtfl

fbfc

TBI

mm *&* mm mm 1 1

■ TxTTTT ':

I

Centraldata

P.O. Box 2484, Station AChampaign, IL 61820(217) 359-8010

Please send me the following:

D 2650 computer system board ($275)

□ 16K RAM ($289)

□ 24K RAM ($395)

□ 32K RAM ($475)

□ Editor/Assembler ($20)

□ Basic ($20)

□ Additional information

I enclose $

111. residents add 5% sales tax.

Name

AddressCity

State

Zip

Central Data • P.O. Box 2484, Sta. A • Champaign, III. 61820

Circle 20 on inquiry card.

BYTE April 1978 57

many interested businesspeople at tradeshows, seems to require most of the 4 Kmemory for the program and handles just15 employees on the basic TRS-80, but willhandle 100 employees with 8 K of memory,and 300 employees with 16 K.

BASIC programs potentially useful withthe TRS-80 can also be found in a numberof books. Users will have to modify anysuch programs to fit the features of RadioShack's Level I BASIC. In particular, variablenames will have to be renamed and arrayreferences may have to be modified. Andof course the total number of variable namesused must be kept within Level I BASIC'Slimits. But this may still be easier than writingthe programs from scratch.

Additional application packages are saidto be planned for future release. The largerapplications will probably require extendedBASIC and a floppy disk. Also said to be inthe works are an assembler, text editor, diskoperating system and possibly compilers forother programming languages. It is not clearwhether all this software will be developedin-house or will be obtained from outsidesources. Some software undoubtedly will bedeveloped by Tandy Advanced Products,another division of Tandy Corporation;Radio Shack also is thought to be negotiatingwith other software developers. In any casean enormous amount of effort will have tobe invested in the development of thissoftware.

Overall it seems that Radio Shack isaiming its application software and peri-pheral support primarily at the small businessmarket, although applications for education,entertainment and home use are also clearlycontemplated. Many related services, such ascustom tailoring of application software andtraining of clerical staffs, will be requiredto meet the needs of small businesses, andperhaps knowledgeable hobbyists and smallsystems developers will be able to fill thisneed.

Availability and Delivery

When first announced, the TRS-80 wasdifficult to obtain like almost every personalcomputer. I ordered one on August 4 1977and picked it up at my local Radio Shackstore on October 11. The delay would havebeen even longer but for the special effortsof the store manager, Steve Lambert, whocalled me when another customer cancelledhis order for a unit that had arrived at thestore. In time, however, the TRS-80 shouldbe among the most widely available personalcomputers, due to Radio Shack's widespreadretail distribution and considerable manu-facturing capacity.

At present you can order the TRS-80 atany Radio Shack store by placing a depositof $100, which can be charged to a majorbank credit card. The units generally are notstocked at the stores, although this is plannedas the supply permits. When ordered theunit is delivered to the local store fromRadio Shack headquarters in Fort Worth TX,where the TRS-80 is produced, with aplanned order to delivery cycle of 30 days.Some stores have a demonstration unit ondisplay. [We recently saw one for example,at the Radio Shack store in Keene NH} notexactly America's biggest town .,. CH/

A major problem for Radio Shack is theeducation of store managers who will haveto answer questions from customers on theTRS-80. The managers of the first 100 storesto receive the computer were flown to FortWorth for a special training session, and thissort of training effort may well be necessaryin the future. But with Radio Shack's profitincentives for store managers, it is a safe betto predict that the TRS-80 will be effectivelymerchandised.

Warranty and Service

Service has always been a problem in thepersonal computer industry, and because ofthe complexity of the product and thepossibility that the user will misinterpretsome peculiar but correct action of thecomputer as a failure, service is likely to bea problem for Radio Shack as well. In antici-pation of possible servicing problems, RadioShack apparently has tried to make theTRS-80 as foolproof as possible. The inabilityof the user to drop into machine languageis a good example of this approach. Similarly,the plastic case of the keyboard unit issealed, and the warranty is voided if theuser opens the case.

The user can return the unit to a localRadio Shack store, which will ship the unitto a service center and receive it and notifythe user when the repairs are complete.Initially all servicing will be done in FortWorth, but it is planned that regional ser-vice centers will handle the TRS-80 even-tually. This servicing practice also appliesto the removal and insertion of memorychips when the user wants to upgrade to alarger (8 K or 16 K) memory.

Conclusion

Like other "appliance" computers nowon the market, the TRS-80 brings the per-sonal computer a good deal closer to theaverage consumer. It is as easy to plug inand turn on as a TV set or a stereo system,and should be usable for a wide variety ofinteresting games, calculations and educa-

58 April 1978 ©BYTE Publications Inc

FEATURES:

• ASCII code.

The AJ 841 I/O.

A completely

refurbished IBM Selectric

Terminal with built-in ASCII

interface. Just $995.

14.9 characters per second printout,

Special introductory price —$995(regularly $1195). 75% discount fromoriginal price of new unit,

Parallel Interface(requires parallelport for I/Otransmission)

Order direct from ;factory \

Documentationincluded.

30-day warrantyparts and labor,

High quality

Selectric

printing,

• Reliable, heavy duty Selectricmechanism,

• Off-line use as typewriter,

AJ 841 WARRANTY AND SERVICEIS AVAILABLE IN THEFOLLOWING CITIES:

Los Angeles/CincinnatiPhiladelphia / DetroitHackensack/ DallasColumbus / HoustonCleveland / AtlantaSanJose/ChicagoBoston/New YorkWashington, DC.

For furtherinformation call(408) 263-8520

JACOBSON

Anderson Jacobson, Inc., 521 Charcot AvenueSan Jose, California 95131

HOW TO ORDER ANAJ 841 I/O TERMINAL

1. Make cashier's check or money orderpayable to:

ANDERSON JACOBSON, INC.Address your request to:

Personal Computer Terminal

ANDERSON JACOBSON, INC

521 Charcot Avenue

San Jose, CA 951312 Upon written notification, pick up yourterminal at the AJ service officelocated in one of the above cities,Allow six to eight weeks for delivery.

3. A final check of your unit will be madeat the local AJ service office at time ofpickup.

4. For warranty or repair service, returnunit to designated service location.

5. Available in U.S. only.

CLIP AND MAIL WITH ORDER

SELECT EITHER: □ EBCD keyboard □ Correspondence keyboard

Number of units @ $995 each $

Sales tax at delivery location $

Shipping and handling $35

each (excluding San Jose] $

TOTAL $

NAME.

ADDRESS.CITY

-STATE .

-ZIP.

PHONE I

Circle 3 on inquiry card.

BYTE April 1978 59

tional drills. With a floppy disk and a printerit should be suitable for some businessapplications. Its BASIC language is somewhatlimited at present, but this should be reme-died when Radio Shack Level II BASIC isfinally available.

The TRS-80 is not the only alternativefor the aspiring personal computer user,but it is a strong contender. If you are

thinking about a purchase, compare itsfeatures against other offerings along alldimensions, including capabilities, software,warranty and service, and expansion possi-bilities. Talk to owners of the TRS-80 andother personal computers, and think aboutwhat you intend to do with your own com-puter. I hope that this review article willhelp you in your evaluation."

Chapter 4

Are There Mi

In this mathematical world we aof these and billionths of thosenotation", or "'standard scientifiThe number 5 million (5,000,00

Stars or Grains of Sand?

>lessed with very large and very small numbers. Millions:> cope with all this, your Computer uses "exponentialjtation" when the number sizes start to get out of hand,for example, can be written "5K+06". This means, "the

number 5 followed by six zeros."

If an an si

ich is

place:

it "5K-06", that means we must shift the decimal point, wrto the left, inserting zeroes as necessary. Technically, it means5 X 10 b, or 5 millionths. (.000,005). It's really pretty simple once you get the hang of it,and a lot easier to keep track of numbers without losing the decimal point. Since theComputer insists on using it with very large and very small numbers, we can just as wellget in the good habit, too.,

EXERCISE 4-1: If one million cars drove ten thousand miles in a certain year, how manymiles did they drive altogether that year? Write and run a simple program which will give theanswer.

EXERCISE 4-2: Changes lines 20 and 30 in the Car Miles Solution program (from Exercise4-1) to express the numbers written there in exponential notation, or SSN (Standard Scien-tific Notation). Then RUN it.

Or technically, 5*1Q6, which is 5 times ten to thesixth power:

5*10*10*10*19*10*10

Now you can see the value of scientific notation!

In our BASIC, that's 5/10/10/10/10/10/10

Didn't forget the Q^UlJ did you? Up till nowwe've been reminding you that you have to entereach line or command — but from now on, we'llassume you've got that little routine matter down

A Last Minute Note

As this article was being prepared, we

received a copy of the RvJio Shack Lisa *sManual For Level 1. The manual is 232pages long with a GBC binding and iswritten by Dr David A Lien of San Diego

CA. A note from the author states itspose as a tutorial:

v . ■>. This book is written specificallyfor people who don't know anythingabout coi rs> and who don't want

to be dazzled by fancy footwork fromsomeone who does, ft Is written toteach you how to use your RadioShack TRS-80 and start you on a fasttrack to becoming a pel f pro-

ler. To that end> every fair

and unfair, conventional and uncon-ventional, fla at and ridiculoustechnique I could think of was used.I want you to have fun with yourcomputer! i don *t want you to beafrakl of it, because there is nothingto fear....

The basic layout of the manual is illus-trated by the reproduction of page 23above. It features a wide page format withdetails on the lefthand side of the page, andpoints of emphasis (sometimes includingcartoons) represented as screened boxesof text on the righthand side of each page.On a basis of first impressions, Dr Lien hascompleted an excellent tutorial presentationto accompany the TRS-80 computer. . XH

60 April 1978 © BYTE Publications Inc

The PerSci generation of

Diskette Mass Storage Systems

Smarter, Faster, Smaller.

A new generation of advances in diskettedrive technology comes together in PerSci MassStorage Systems, the first diskette subsystemsto provide large storage capacity, intelligenceand high speed in as little as 4J4" of space.

Two Times The Capacity...

New PerSci developments in large disk voicecoil technology reduced tofloppy disk applicationsmake possible datadensities as high as% Mbyte perdiskette side —upto 2 Mbytes in a twodrive system. WhenIBM data format com-patibility is required,PerSci Systemswill store V2 Mbyteper drive.

MicroprocessorIntelligence...

PerSci's highly intelli-gent microprocessorbased controllers, eithersingle or double densityversions, include thePerSci File ManagementFirmware. Under controllerdirection, the PerSci MassStorage Systems are capableof performing many functionsnormally requiring CPU timeand memory, including format-ting, editing, reinitializing, auto-matic file and full diskette copy.

7 Times The Speed...

The unique voice coil positioning system ofPerSci diskette drives allows PerSci systems toaccess data as much as 7 times faster than com-petitive systems. A random average seek isonly 33 ms, as fast as many large disk systems.

In Half The Space.

PerSci Systems, one or twodrive models, can be configured_ for mounting in a 19" rack orfor table top operation. Whenmaximum capacity in mini-mum space is called for, PerScioffers the "Slimline" system,only 4>£" wide. A single ordouble density controller canbe mounted in the standardsystem chassis or in the hostInterfaces to major micro-computers are available andan RS232 serial interface isoptional.

Get all the most recentengineering advancesin one smarter, faster,smaller system at com-petitive prices fromPerSci, Inc., 12210Nebraska Avenue,W. Los Angeles, Calif.90025. (213) 820-3764.

PerSci

Peripherals aGeneration Ahead.

Circle 87 on inquiry card.

BYTE April 1978 61

A Bug in the Clockwork

The collection of articles dealingwith real time clocks published in theNovember 1977 BYTE was timely andinteresting. I found the approach ofM F Smith (page 50) appealing in itssimplicity. However there is an error inthe listing given for the interrupt han-dling routine. The offset between thetime values and the overflow values isstated incorrectly. Line 29 of the listingshould be:

00029 A068 Al 08 CMP A 8,X CARRY?

since the correct index register offset is8, not 7 as given. With this correction,the routine works well.

PAGE 001 RAMTIME

Your decision to publish a group ofarticles dealing with a single subject in aparticular issue of BYTE is commend-able, and I hope this practice will becontinued. I certainly find it more stimu-lating to encounter a collection ofrelated articles (even if they deal with asubject in which i am not particularlyinterested) than to read just a singleisolated article.

B W Bangerter, Research Associate

Dept of Chemistry

Harvard University

12 Oxford St

Cambridge MA 02138

Oops! You're right. Listing 7 isshown with the change in iine 29 here:

00001

NAM

RAMTIME

00002

A04A

ORG

SA04A

00003

A04A 00

FCB

0

DUMMY LOCATION

00004

A04B 00

DAY

FCB

0

TIME IN PACKED BCD FORMAT

00005

A04C 00

HOUR

FCB

0

00006

A04D 00

MIN

FCB

0

00007

A04E 00

SEC

FCB

0

00008

A04F 00

SEC1

FCB

0

00009

A050

00

FC8

0

DUMMY LOCATION

00010

A051

00

WATCH

FCB

0

BINARY 'STOPWATCH' LOCATION

00011

*

00012

A052

99

FCB

$99,$99,$24,$60

A053

99

A054

24

A055

60

A056

60

00013

*

00014

A057

10

RATE

FCB

$10

*CLOCK RATE

00015

*

00016

*FOR DIFFERENT CLOCK RATES, CHANGE RATE

00017

#E.G., FOR 60 HZ CLOCK CHANGE TO $60

00018

*1-99 HZ ALLOWABLE CLOCK RATES

00019

*

00020

A058

CE

A051

TIME

LDX

#WATCH

TIME PROGRAM BEGINS HERE

00021

A05B 6C

00

INC

0,X

INCREMENT THE STOPWATCH

00022

A05D 09

DEX

DECREMENT TIME ADDRESSES

00023

A05E 6F

00

DINC

CLR

0,X

CLEAR ON CARRY

00024

A060

09

DEX

NEXT ADDRESS

00025

A061

86

01

LDA A

#1

DECIMAL INCREMENTATION/CARRY

00026

A063

AB

00

ADD A

o,x

00027

A065

19

DAA

HALF CARRY

00028

A066

A7

00

STA A

o,x

COMPLETE DECIMAL INC

00029

A068

A1

08

CMP A

8,X

CARRY?

00030

A06A 27

F2

BEQ

DINC

YES, CARRY

00031

*

00032

***SCHEDULER(S) INSERTED HERE***

00033

*

00034

A06C

3B

RTI

RETURN TO PROGRAM

00035

*

00036

END

TOTAL ERRORS 00000

■

39 GREAT LOCATIONS

ComputerLand

A Bug in the EROM

In table 1 of last month's Ciarcia'sCircuit Cellar, "Program Your NextEROM in BASIC," (BYTE, March 1978,page 88), IC4 was incorrectly identifiedas a 7407; it should have been labeled

as 7406. Note 3 on the same pageshould read: "Note that IC4 is a 7406.A 7416 should not be used." Figure 1correctly shows IC4 as a 7406 hexinverter gate. Thanks go to Tim Waltersand the other readers who spotted thiserror."

NOW OPEN:

ALABAMA

HuntsvilleCALIFORNIA

Dublin

El Cerrito

Hayward

Inglewood

Mission Viejo

Mountain View

San Diego

San Francisco

San Jose

San Mateo

Santa Rosa

Thousand Oaks

Torrance

Tustin

Walnut CreekCOLORADO

DenverCONNECTICUT

FairfieldDELAWARE

NewarkGEORGIA

AtlantaILLINOIS

Arlington Heights

Niles

Oak LawnKENTUCKY

LouisvilleMARYLAND

RockvilleMICHIGAN

Kentwood

SouthfieldNEW HAMPSHIRE

NashuaNEW JERSEY

Cherry Hill

MorristownNEW YORK

Buffalo

IthacaOHIO

ClevelandOREGON

PortlandTEXAS

Austin

HoustonWASHINGTON

Bellevue

Federal WayWASHINGTON, D.C.INTERNATIONAL

Sydney, NSW Australia

(205) 539-1200

(415) 828-8090(415) 233-5010(415) 538-8080(213) 776-8080(714) 770-0131

Call Information(714) 560-9912(415) 546-1592

Call Information(415) 572-8080

Call Information(805) 495-3554

Call Information(714) 544-0542

Call Information

(303) 759-4685

(203) 374-2227

(302) 738-9656

(404)953-0406

(312) 255-6488(312) 967-1714

(312) 422-8080

(502) 425-8308(301) 948-7676

(616) 942-2931

(313) 356-8111

(603) 889-5238

Call Information(201) 539-4077

(716) 836-6511(607) 277-4888

(216)461-1200

Call Information

(512)452-5701(713)977-0909

Call Information

(206) 838-9363Call Information

29-3753

62

April 1978 ©BYTE Publications Inc

Circle 30 on inquiry card.

Rated EG

The Best Game in Town.

Welcome to ComputerLand,An incredible adventure intothe world of personalcomputers. A one-of-a-kindshopping experience.

Each ComputerLand storepresents everything you everwanted to know aboutcomputers. And then some.

Take our Game Room, forstarters. You'll find excitementfor the whole family in ourendless variety of challengingcomputer games. You can battle the Klingons in anout-of-this-world game of Star Trek. Create an elec-tronic work of art with a computer controlled TV. Testyour skill in a game of computerized hangman.

You can even plot your biorhythm,

But we're more than just fun and gamesEach ComputerLand store offers a

knowledgeable and person-able staff of professionals ^^

And if your system breaks down,our in-store service departmentwill get you back up andrunning,

Right now!

Great Selection.

Your first stop at ComputerLandmay well be your last stop.

ComputerLand offers the finestquality and

to serve you.Plus the greatest avail-able selection of micro components. Whether it's a dataprocessing system for your business or a computer controlledsprinkler system for your home, you'll find whatever you needat ComputerLand.

Read on.

Genuine Service.

We want to supplyyou with the onesystem that's right.Rather than a com-plete system that isn't.Or a limited systemthat is.

That's why, at Com-puterLand, you dealwith real professionalswho are also realpeople. People whospeak your language... in addition to BASIC, COBOL or FORTRAN.

People, in short, who can offer both the novice andthe old hand the same expert guidance in selectingthe optimum system he or she needs.

Yet, assisting in the purchase is only the beginning ofComputerLand's service. If the kit you bought requires alittle more do-it-yourself than you yourself can do, weprovide assembly assistance.

If that complex program proves to be just that, we provideprogramming assistance.

Pfargest selec-tion of all themajor brand names.Like Apple Computer,Cromemco, DEC, Diablo,Hazeltine, ICOM, IMSAI, Lear Siegler,National Semiconductor, North Star, TexasInstruments, Vector Graphics and more.

Plus a complete inventory of tools, books and accessories.

What's more, at ComputerLand, we deal in product. Notpromises. Our inventory is on our own shelves. Rather than themanufacturer's. So you can take delivery on tomorrow's com-ponents today. __M____«__^»««1W_11_-M_1«^^

Which means,simply put, that atComputerLand, youget exactly whatyou want.

Exactly when you

want it.

Be Our Guest.

Begin with thegrand tour of ourexhibit areas. "Test-drive" any of ourindividual systems.

Then tell us your needs. We'll sit down and talk about the systemthat's right for you. It's as easy as that at ComputerLand.

The great computer store. RATED G.

Call or write for the address of the ComputerLand store nearest you.Franchise opportunities available.

ComputerLand

14400 Catalina St., San Leandro, CA 94577 (415) 895-9363

Circle 30 on inquiry card.

BYTE April 1978 63

One Step at a Time

I was glad to see S P Smith's articleon simulation in November 1977 BYTE,page 18, That happens to be myspecialty and an area that I feel has beenneglected in persona! computing. I'mafraid Steve erred in his discussion of thenumerical integration, though. Overa given step, the average speed is equalto half the sum of the initial and finalspeeds. In the example, the averagespeed H%{ 100 + 99.16 ) = 99.58 metersper second. Thus the LEM will fall9.958 meters in 0.1 seconds, and thenew position will be 10000. "9.958 -9990.042. Admittedly, the differenceis small and if we take a small enoughstep size, it becomes negligible. However,steps of integration cost computer time,and if we're going to have a real timesimulation, we need to get the mostaccurate integration for a given stepsize that we can. Just for the record,there are many much more accuratealgorithms for numerical integration.At work we use a second-order methodfor all real time work. It's hardly morecomplicated than Steve's (requiringsaving only one back point) but abouttwo orders of magnitude more accurate.

Dr Jack W Crenshaw

2114 Cecille Dr SW

Huntsville AL 35803"

Improving an Improvement

In the November 1977 BYTE anarticle called "An Improved LunarLander Algorithm" by Stephen P Smith(page 18) has one small bug in it. If theuser is using an interactive terminal toinput the values for vertical and hori-zontal thrust, a situation can arise wherethe LEM can gain mass. This is how:if the value for USR(1.) is zero, simu-lating free fall, and the value for USR(2.) is negative; then the equationM=M-(A+B)*I*D results in M=M-(0+(-B))*l*D=M+B*l*D. In order toavoid this situation, we suggest that yourinteractive users change the mass equa-tion to M=M-(A+ABS(B))*I*D. Thisnew equation also prevents the casewhere the mass remains the same after aburn.

R Jovonovich

G Leenarmen

Sperry Univac

2276 Highcrest Dr

Roseville NM 55113"

NumbNIM

Re your November 1977 article,page 172, entitled "NIMBLE: TheUltimate NIM?": on page 177, in thelast paragraph there appears to be an ob-

vious mistake. Comparing the programlogic with the statements in this lastparagraph, there is a direct contra-diction. I believe the second sentence ofthe paragraph should read "If it is equalto 0 there is no optimal move. . ." Alsothe third sentence should read "If P fsnot equal to 0. . ." I believe this was justan inadvertent juxtaposition of the twobasic statements by the author.

Fletcher Thane Carson

1778 Ala MoanaBlvd #1004

Honolulu HI 96815"

Checking Checks

On page 129 of January 1978 BYTEthere are two errors in the BASIC listingof the checkbook balance report pro-gram. Line 1130 of the listing should besetting the FALSE flag to 0 instead of 1.The other problem is the transactionloop at lines 610 to 630. This loop willnot be exited until the ENDTR flag isset true. This state does not occur unlessan end of file is encountered. Line 985should read IF OLDDAY #DAY THENLET ENDTR = TRUE. This will succeedin terminating the loop.

Thanks to both Don Walker andJean-Yves Bernier for detecting thesebugs,"

moo mi

IES20O

iiiiiii:,

wc }mainpRAm£f20o

NOT A KIT

Jv<a15A, ±16v(a3A power

Rack mountable -

15 slot motherboard |

Card cage

Fan, line cord, fuse,

switch, EMI filter

Desk top version option

8v@30A, ±16v@10A option

SS-50 bus option

voltage monitor option

Rackmounted

xtel $200

Desk

top model

Write or call for a copy of our

detailed brochure which includes

our application note

BUILDING CHEAP COMPUTERS.

INrEGR4ND

8474 Ave 296 • Visalia, CA 93277 • (209] 733-9288We accept BankAmericard/Visa and Master Charge

The All New!

Personal & SmallBusiness Computer

Plan

To

Exhibit

ExpoSouth'

Plan

To

Attend

May 19-21,1978,Exposition ParkOrlando, Florida

For Details Call Or Write:

Felsburg Associates,lnc.<30l)262-0305

P.O.Box 735, Bowie.Md.. 20715

_

64 April 1978 ©BYTE Publications Inc

Circle 56 on inquiry card.

Circle 88 on inquiry card.

Now Dynabyte builds three Great Memories

New!l6&afc&3^typical access time ^Assembled. Tested. Burned in. Guaranteed.Like our UBk dynamic RAM. Built as solid as the 4,400 year-old pyramids.

Ancient Egyptians didn't stopwith just one pyramid. The GreatPyramid stands on the PlmtofGizeh with two other monumentserected for kings and queens.

Dynabyte didn't stop with one16k dynamic RAM, either, How ^you can get 16k and 32k fullystatic RAM's that are built with thesame unmatched engineeringability and manufacturing skillthat went into Egypt's wonders ofthe ancient world.

When we say built, we meancompletely built. Assembled,tested and burned in. We don'tleave anything undone. That way,you can buy any Dynabytememory and know that it is backedby a factory guarantee for one fullyear* Kits and semi-kits can'tsay that.

Our 16k static and our 32kstatic are available with either 250ns. or 450 ns. access time. Our250 ns. module is completelycompatible with the 4MHz Z-80Aprocessors. The 450 ns. modulesare compatible with the 8080 andthe faster 3MHz 8085 processors.

The Great 16k StaticMemory. 250 ns., $555.450ns., $525.

• 4k block addressing along 4kboundaries

• Bank Select

•? Write Protect with alarm for

each 4k block

• full Schmitt trigger buffering* • No DMA restrictions

• Complete S-100 bus com-patibility, including the AlphaMicro and Z-2.

The Great 32K StaticMemory. 250 ns., $995.450ns., $925.

• 4k boundary addressing

• FuU Schmitt trigger buffering

• No DMA restrictions

Why Dynabyte doesn'tbuild memory kits

Assembling a kit can be fun;almost anyone can do it.

But how about testing it?Do you have the test programsand equipment? Do you knowwhich memory test programuncovers pattern sensitivity?Or which finds shorted databits but won't find addressdecoder faults?

We do. It's our business. Wehave the 200 MHz oscillo-scopes, the logic analyzers, theburn-in chambers, and the testprograms. We find the bugs,even the subtle ones.^ Which lets you concentrateon computing.

* • Conservative thermal design

• Complete S-100 compati-bility, including the AlphaMicro and Z-2.

The Great 16k DynamicMemory. $399.

• Highly cost effective

• No wait states

• Transparent refresh

• 16k addressing boundaries

• Widest S-100 mainframe anddisk system compatibility

All of Dynabyte's memoriesmeet rigid industrial grade stand-ards. Design, components, con-struction, testing and perfor-mance. But if a module ever needsrepair, we provide factory servicewith 24 hour turnaround for bothwarranty and non-warranty work.

Ask for the Great Memories byDynabyte at your local computerstore. You can also pick up com-plete product information whileyou're there.

But if you haven't got a localcomputer store, write Dynabyte,Inc., 4020 Fabian, Palo Alto, CA94303. Or telephone (415)494-7817.

Builders of Great Memories

Circle 41 on inquiry card.

BYTE April 1978 65

The Brains of Men and Machines

Part 4: The Machinery of Emotion and Choice

N ote: The terminologyutilized in this articlewas covered in detail inthe first part of this 4part series, which appearedon page II, January 1978BYTE.

Ernest W Kent, Associate ProfessorDept of Psychology

The University of Illinois at Chicago CircleChicago IL 60680

In the preceding articles of this series(BYTE January, February and March1978), we have examined the general or-ganization of the brain, the nature of itscomponents, the methods by which itsgeneral output strategies are converted intoactual motions, and the ways in which itsinputs are recoded as high level perceptualconstructs. In this final article, we shallexamine the central process in which theinputs are employed in the generation ofoutput decisions.

There are two basic aspects to thisprocess. One is the cognitive or rationalaspect of brain operation, analogous to theordinary logical processes of the computerin function, if not in detailed operation.The other aspect is the motivational com-ponent, which defines the goals to beachieved. This term covers concepts suchas emotions, drives, desires and the like.In most standard computer situations,these goals are analogous to the purposeof a program, which is in turn implicitin its operation. They are rarely definedin terms of computer hardware. This meansthat one of the major differences betweenbrains and present day computers is thatbrains determine their own behavioraldirections or objectives, whether by pre-wired reflex or by learned processes, where-as computers are built to passively acceptwhatever purpose is inherent in the currentprogram. As we shall see in the followingdiscussion, there is no fundamental reasonwhy a robot brain could not be built to

operate somewhat like a natural brain inthis regard,

Taking the problem of motivation first,let us look at some of the terms that havebeen used to describe motivations, whatmotivations do for an organism, and whatkinds of them there are. If we start withthe notion that they are that general classof cerebral events which determines theobjectives of behavior, a wide variety ofthings immediately come to mind; almosteverything we do has some objective orpurpose. There are however certain broadcategories into which these many objectivescan be grouped, and these categories canbe further subdivided as well. This can bedone in such a way that there is a matchbetween the various categories, and some ofthe functional systems of the brain.

First of all, we might divide our motiva-tions into the two categories of "seekingpleasure" and "avoiding pain." I know youwill immediately think of many situationsin which our behavior seems to have as itsobject things that may bring us pain, out ofa sense of duty or altruism for example;but these are probably best considered asinstances where the avoidance of duty orthe failure to behave in a commendablemanner would bring the greater displeasure.These types of motivation can then be seenas the pursuit of less direct goals such asself-esteem, and the avoidance of pains suchas guilt, instead of the more obvious directresults of such behaviors. (This type ofmotivation involves learned processes, andwe shall concern ourselves here with simplertypes for purposes of illustrating the basicprinciples.) This division into pleasure seek-ing and pain avoiding motivational statesreflects one of the brain's fundamentaloperating decisions. Brains evolved from the

66

April 1978 © BYTE Publications Inc

smartware

TM

HHC

distributed

intelligence

system

Power; Multiply the power of your personal computer with distributed process-ing. Peripheral and real time control functions can be handled by dedicatedprocessors without tying up your central computer. Ideal for home control appli-cations such as timing, security and energy management.

Hardware. Each smartwareTMsystem includes cabinet, power sup-ply, real time clock/calendar withbattery backup, 20 key keyboard, 8digit LED display, smartwareTM bussupervisor, and motherboard to ac-commodate up to 8 smartwareTMmodules. ROM operating systemcontrols keyboard and display forentering and reading parameters,programs and data on the othermodules. $348.00

Central processor. General

purpose 6502 processor with 4KRAM, 1K PROM with bus I/O sub-routines, 2K empty PROM sockets.Memory is expandable to 62Kbytes. Use for your own dedicatedapplications or as general purposenumber cruncher. $248.00

Real time controller. Dedicated

processor with ROM software for an-alog and digital control of up to 1000channels with yearly, monthly, week-ly, daily, and hourly cycles. Minimumtiming interval is 6 seconds. Use withcontrol I/O modules. $298.00

AC communication proces-sor. Provides bi-directional transferof control and sensor information byimposing a modulated 50khz. carrieron the AC power line. Up to 255remote l/O's can be addressed bythis module. Software provideshandshaking and redundancy to as-sure error free operation. $248.00

Remote I/O module. Build

your home monitoring and controlsystem without the hassles of con-trol wiring. Just plug the remoteI/O module into an AC outlet nearestthe application. Each unit has four500 watt AC outlets, of which threecan be switched on and off by thecommunication processor. Thefourth outlet is an always on conven-ience outlet. The status of the threeswitchable outlets can be read fromthe central processor to verify oper-ation. $148.00Analog options: Temperature sensorinput, includes sensor. add $38.00Analog output, 0 to 5v. add $24.00

IEEE 488 interface. Controlyour house while your PET is sleep-ing. Includes complete instructionsand software for using PET com-puter as a smart terminal. This boardallows bi-directional communicationbetween external IEEE 488 devicesand internal smartwareTM modules.

$148.00

RS 232 serial interface. Con-nect a variety of terminals and mo-dems to your system. Software se-lectable baud rates of 110, 300,1200, and 2400. Double buffered formaximum throughput. $148.00

Temperature sensor mod-ule. Analog input for 16 IC temper-ature sensors, 255° F temperaturerange, 1°F accuracy and 1°F resolu-tion. $188.00IC temperature sensor with 10 ft.cable, each, $12.00

Software support. Includescomplete, accurate documentation,full time user applications consultantto answer your questions, continualdevelopment of new applicationsprograms, periodic software news-letter to keep you up to date onwhat we are doing, and customsoftware and system developmentservices. Our goal is to make thisthe most powerful, reliable, andusable system you can buy. Call orwrite if you have any questions.

Coming SOOn. Other smart-wareTM modules being developedinclude direct control and analogI/O, software development modulessuch as PROM programmer andsimulator, and controllers for floppydisks and printers. Write for informa-tion.

Quality. We realize that the com-fort and security of your home re-quire a reliable system designed tooperate 24 hours a day. Each mod-ule is burned in and thoroughly test-ted and includes built in self diag-nostic functions.

Guarantee. Your money will becheerfully refunded if within 90days you decide you are not sat-isfied with the performance of yoursystem. One year warranty, partsand labor, for defects in hardwareor software.

Prices include shipping.

Minnesota residents add 4% sales

tax.

automatic hardware co.

771 NE HARDING ST • MINNEAPOLIS, MN 55413 • (612) 378-3715

Circle 8 on inquiry card. byteapHM978 67

first as control systems for organisms withclearly defined biological needs to seeksome types of things and to avoid others.All organisms with brains, however simple,seek to eat and to avoid being eaten.

To this end, the brain has evolved twomajor functional systems, operating insynergy, which transform information onbodily needs and environmental events intolevels of activation and choices of behavioraloptions throughout the rest of the brain. Itis an oversimplification to describe thesestrictly as "pleasure and pain systems,"but such a description has considerablevalidity. In our laboratories at the Univer-sity of Illinois at Chicago Circle, we aredevoting most of our attention to studyingthe operation of these systems, in partic-ular their goal directing functions, in thebelief that this will reveal some of themost basic foundations of behavior, howeverfar removed the behavior may be from thesimple purposes around which these systemswere initially developed. These goal direct-ing systems are located largely in the regionsof the brain called limbic system, hypo-thalamus and mesencephalon. Most oftheir detailed connections are of onlymarginal interest here, since a robot systemwill probably have very different motiva-tional requirements than a biological or-ganism. We shall concentrate instead on theirfunctional roles and the details of theirinteractions with the other brain systems.

One of the further subdivisions of themotivational complement of all organismsis a rather loosely defined set of operatingstates called "drives." In general, this refersto states which we recognize by such namesas hunger, thirst, sex drive, suffocation,pain (in the more specific sense of a partic-ular bodily sensation) and a host of similarterms. These refer in most instances to needstates of the organism, and are the mostobvious sorts of goals which might directand energize behavior in the rest of thebrain. Two general classes of drives haveemerged which are differentiated by theirmodes of operation, and which have a gen-eral applicability to robot systems as well.These classes are the "homeostatic" and"nonhomeostatic" systems. Homeostaticsystems, of which hunger is the customaryexample, operate in such a way as to main-tain a proper level of some important quan-tity or state in the organism. In the case ofhunger, there is a system which monitors thelevel of energy reserves in the body's chemis-try and translates this into altered states ofactivity in the brain when these levels fallcritically low. The activation of this systemchanges the operational state of a variety of

other systems and thereby causes the or-ganism to engage in behaviors which resultin the acquisition and ingestion of food.Stimuli resulting from food intake in turncancel the inputs to the hunger system, andthe organism's behavior returns to othergoals. The whole process could be likenedto the operation of a thermostat in main-taining temperature. In its overall operation,it is basically a feedback mechanism.

Nonhomeostatic mechanisms do notoperate under the control of such cycli-cally recurring needs, and do not functionto maintain a particular control level of aquantity or process. In other ways, however,they are similar. An example is the responseto pain. Here the motivational systemoperates only when, and if, certain externalstimuli happen to occur. If the organism isunfortunate enough to encounter a painfulset of circumstances, such as blundering intoa patch of thorn bushes, systems which de-tect pain immediately assign the highestpriority to behaviors which will removethe organism from the painful situation.This motivational state will persist untilthe immediate environmental stimuli areescaped or eliminated. Both types of drivemechanisms serve to direct behavior towardssituations which will meet the organism'simmediate needs.

It is obvious that efficient operationrequires more than simply being pro-grammed to consume food if we blunderinto it when hungry. The organism mustalso respond, when hungry, to stimuli whichsignal the availability or direction and lo-cation of the food. Certainly when hungrywe find the smell of food or the sight offood or even the sight of the restaurantpleasurable. In fact, however, even thetaste of food is not the real object of thehunger drive. The joy produced by the tasteof food when hungry serves as a stimulus tocontinue eating, but the object of thehunger drive state is repletion of energylevels, not the joy of eating. Nonetheless,the pleasure associated with stimuli whichsignal food, or the fear associated withstimuli that signal pain, serve to both ener-gize and direct our behavior. Since we haveassigned this function to motivational states,we must consider these emotions to bepart of motivation too. Emotions of courseare recognized as powerful "motivations"in our daily experience, and they are inti-mately related to drive states in governingour behavior. It is important to distinguishbetween the operation of the brain's emo-tional systems with their effects on behavior,and the subjective experiences we usuallycall "emotion" which are, or are dependent

68

April 1978 ©BYTE Publications Inc

Trace Electronics

32K/16K STATICRAM

What could you do with this boardin your system?

Trace Electronics brings you a highly flexible, lowerpowered, fully STATIC 32k or 16k memory board for yourS-100 Bus computer (Altair, Imsai, Sol, Poly, Xitan, ect). Themodel 3200 has a capacity of 32768 Bytes with fully buf-fered address and data lines. All buffered inputs areschmidt triggered for excellent noise immunity and requireonly minimal bus loading (one low power load). The bufferedoutputs are rated for driving more than 130 low power loads.Since the board is fully static, there is no refresh or clockingrequired and is therefore compatible with DMA and otherdevices.

Low power and high reliability are key features of thedesign. The TI 4044's (or equivalents) provide storagecapacity at up to 65% less power than low power 21L02chips. The power required is 1.7A at 8V. for model 1600 and3.3A at 8V. for model 3200. A special thermal design whichplaces a separate regulator on each 4k x 8 section ofmemory affords a very efficient system of heat dissipation.

The most outstanding feature of the board is its versitileaddressing. Each 4k x 8 section is separately assignable toany 4k slot in the computer's address space. This featureallows the user to make use of the growing amount of soft-ware that requires this and avoids the problems associatedwith only being able to assign the board to a continuous 32kblock. In addition, the Megextend™ feature allows up to onemegabyte to be addressed providing there is a 4 bit outputport in the system. This allows up to 32 model 3200 boardsper system, as long as the power requirements are met

The model 1600 is the same as the 3200 except that itonly contains 16k of memory chips. The 1600 may be con-verted to a 32k board by merely installing the extra 16k ofmemory chips. The sockets for the additional 16k are in-stalled as a standard feature of the model 1600.

Both models are silk-screened and solder masked on FR4epoxy board with a gold plated bus connector. They are fullysocketed, assembled, tested and burned in.

To order, simply phone Trace Electronics at 215-779-3677or mail the attached coupon. So as to provide quick deliveryall orders will be shipped by the fastest practical means(e.g. Express Mail, Air Mail, UPS Blue Label, ect). Model3200 is priced at $999. and Model 1600 is $599. Expressshipping is pre-paid Call or write today.Trace Electronics, Inc.215-779-3677

P.O. Box 3247 Hampden StationReading, Pennsylvania 19604

I would like to order the following:

□ Model 3200 32k Static Memory Assembled and

tested $999D Model 1600 16k of memory on the above 32k board.Assembled with sockets for 32k andtested with 16k $599.

□ Model 1601 16k expansion kit for above $499

My address is:

Name

Address _City_

Phone

-Zip-

Enclosed is a check or money order order for:

Please charge the item(s) I've marked above to my creditcard.

□ Visa

□ Mastercharge

Card No

Exp date

4 digits above name(Mastercharge only)_Signature

Note: Address for credit card orders must be the same asthat on file with the credit card company

Mail this coupon to: Trace ElectronicsPO Box 3247 Hampden StationReading, Pennsylvania 19604

Circle 114 on inquiry card.

BYTE April 1978 69

upon, the operation of these systems. Letus first consider the relationship of emotionsto drive states and brain operation.

In general, the brain's emotional motiva-tional system deals with stimuli whichanticipate objectives of drive states. Thatis, there are systems in the brain whichrespond to stimuli which normally occurprior to contact with the actual goal object.These systems are among those activated bythe drive state operating at the time, so thata whole host of stimuli associated with theobject of the current drive state are selectedfor detection. When, in the case of pleasureseeking systems, these stimuli are detected,behavior patterns are initiated which leadthe organism nearer to the objective of thedrive state. The contrary holds true in thecase of the pain avoidance process. Stimuliwhich signal a situation which can lead topainful stimuli, but are not in themselvespainful, still lead to energizing and directingappropriate behavior. The sight of a longdrop, the edge of a tall building's roof, forexample, is not painful, but it signalspotential pain and it is a stimulus whichcan activate an emotional system (fear)which directs us away from the dangeroussituation.

In the case of homeostatic drive systems,the ability of the goal-relevant stimuli toactivate the emotional system is dependenton the operation of the drive state. Thesmell of food is not pleasurable when youare already stuffed. In the case of the non-homeostatic drives, detection of the goal-relevant stimuli usually leads to operationof the motivational system as readily as thedrive stimulus itself. Thus, it is not requiredthat we first feel pain in order for us to feelfear of the pain related situation and act onsuch fear. The actual goal related stimuliwhich serve to operate the emotional sys-tems may be simple and "hard wired," orthey may be complex and effective onlywhen learning processes associate them withthe object of the drive state. Through ex-perience we can thus expand the range ofstimuli which we can use to energize moti-vational systems. This serves to make ourgoal seeking behavior much more efficient.

When operating, the motivational systemnot only energizes and directs behavior, butalso appears in our subjective experience as"emotions" or "desires." The operation ofthe hunger drive state mechanism is per-ceived subjectively as the feeling of "beinghungry." The sight of food in these circum-stances activates emotional systems whoseoperation is subjectively experienced as the"feeling of joy." The activation of emotionsystems which detect danger signaling

stimuli is experienced as the feeling of"being afraid." It should be noted thatmaking this distinction eliminates a prob-lem posed by the old question of whetheror not a machine could have emotions. Ifby "having emotions," you mean havinga mechanism operating which detects cer-tain types of situations and calls for certaincategories of response, the answer is yes,clearly, and it could function just as usefullyand efficiently as yours. If on the otherhand, you mean can a machine have asubjective experience of fear when thismechanism is operating, the question isprobably unanswerable.

Strictly speaking, we cannot even saywhether or not another person has subjectiveemotional experiences; we can only knowthat he engages in emotional behaviors inappropriate circumstances, including be-haviors such as saying, "I am afraid." Withrespect to the construction of a robot de-vice, however, the question of subjectiveexperience is not the essential point. What isimportant is to recognize that the brainprocesses which give rise to subjectiveemotional experiences in us do not havethis experience as their purpose. Theirpurpose is to provide certain useful types ofinformation processing relevant to increasingthe power and efficiency of our behavioralresponses to our environment. These proc-esses remain as essential to efficient actionin a robot brain as they are in an organicbrain, irrespective of whether or not theyare associated with subjective experiences.

Heuristics and Control

Let us turn now to the actual mech-anisms of operation of the motivationalsystem. To a limited extent, motivationin the brain is analogous to an interruptsystem in a computer, and it has a prioritystructure too. Motivational systems of thebrain are more complex than an interruptstructure, however, because they do notsimply detect specified conditions and turncontrol over to specific programs of action.Instead, they enable classes of activity anddefine relevant goal stimuli. While the actualactivity undertaken within the operation ofa particular motivational state may varywidely, it is only the desired end resultwhich is determined. The behavior thatleads you to the food when hungry may beanything from reaching into the refrigeratorto looking for a job, or even going hunting.This is a heuristic rather than an algorithmicprocess, and that is one of the most im-portant distinctions between a brain andordinary computer operation. In an al-gorithmic process, the goal is assumed, and

70

April 1978 ©BYTE Publications Inc

Go tell it toyour computer for $189

Ifou can havelow costvoice entryto yourcomputer with

SpeechLab.

Heuristics' originalModel 50 SpeechLab™ at $299was a great success. So, notcontent to rest on our laurels,we went back to our designbench and came out with theModel 20. It sells for $189completely assembled and testedfor use with any S-100 Buscomputer such as Sol, IMSAI,Altair or Cromemco and asthe 20A, the Apple.

Now obviously, we had todo a few things to bring theprice down. The Model 20 has asomewhat shorter manual.Technically, it's not quite ascomplex. Don't kid yourselfthough, the Model 20 does a realjob. You can control yourcomputer to do such tasks asdata entry, quality controland everything else where youwant a "hands-off" operation.Elsewhere in the ad we've illus-trated some examples of thekinds of things you can do.

About the Model 20

Heuristics' new Model 20handles up to 32 words. Software

Circle 54 on inquiry card.

is ROM based. The Model 20uses 64 bytes per spoken wordwhich is callable from BASIC.

Hardware includes2 band pass filters with 2 bitamplitude, 2 zero crossingdetectors and a linear amplifier.

The combined hardware/software/lab manual includes10 experiments.

The ROM based speechrecognition program occupies2K bytes of ROM.

The Model 50, still a greatbuy at $299*

Here's an S-100compatible system (8080 or Z-80)capable of handling a 64 wordvocabulary using 64 bytes perspoken word. You'll get highspeech recognition.

Software includesSpeechBasic BASIC program-ming language in source andpaper tape, assembly languagespeech recognition programin source and paper tape, hard-ware and self-test programin source and paper tape.SpeechBasic plot, correlation,recognition and advancedrecognition programs areoffered in source.

The assembly languageprogram uses less than 4Kbytes for a 32 word vocabulary.It loads at 100H. A high core ■version is available. SpeechBasicBASIC interpreter loads at0 and requires 8K. A diagnosticprogram is included.

Documentation includesa 275 page lab manual with 35

experiments and a 100 pagehardware manual. All manualsare now available as separateitems. The big manual is idealfor schools and colleges asan introduction to speech andpattern recognition.

Hardware includes 3 band-pass filters (6 bits amplitude),1 zero crossing detector, a linearamplifier, compression ampli-fier, 6 bit A/D converter and abeeper. The raw waveformis available for advanced experi-ments. A new noise cancellingmicrophone is also offered.

Prices (f.o.b. Los Altos, CA)

Model 20A (Apple) $189

Model 20S (S-100 Bus) $189

Model 20 manual $ 15

Model 50 $299

Model 50 lab manual $ 25Model 50 hardware

manual $ 15

(both manuals $35)Model NC-1 noise

cancelling microphone $ 85

More information.

For more informationvisit your nearest computerstore. Most dealers now carrythe Heuristics line. Or if moreconvenient write for literature.Please address Heuristics,Inc., Box B, 900 N. San AntonioRoad, Los Altos, CA 94022.Phone (415) 948-2542.

Heuristics

INC,

BYTE April 1978

71

a sequence of steps is executed which, ifexecuted correctly, is known to lead tothe goal.

In a heuristic process, potential resultsof different paths of action are comparedwith the goal, and those that seem to lead tostates closer to the goal state are executed.The process is then continued, perhapseven with backtracking when it is discoveredthat a promising course led to a blind alley.This heuristic approach has been imple-mented occasionally in software; the chessplaying programs are good examples; andsimple heuristic systems were implementedin hardware even in the earliest robot sys-tems. In one of these systems, for example,the goal was recharging the battery. The"drive state" was initiated by a relay thatopened when the voltage fell below a pre-scribed level, and its action was to placethe forward motor drive under control ofa directional photocell. The goal relatedstimulus was a light mounted over thebattery charger. When the light was in linewith the device's forward direction ofmotion, the photocell was activated (emo-tional response) and the machine rolledforward (motivated behavior). When thedevice was not lined up, it turned at randombut did not move forward. It was neverguaranteed that the sequence of behaviorwas correct (consider the consequencesof a mirror for example), but within thebehavioral potential of the device, it was abest guess.

This type of heuristic system is verysimilar to that employed by simple brains,and by the simplest modes of operation ofmotivational systems in advanced brains. Tobegin with, recall our earlier discussion ofthe motor output system. We left off at thepoint where the highest levels of the systemreceived two types of input, one from thecortex and thalamus carrying informationon "suggested" behavior patterns encodedin spatial digital form, and another carryinginformation on the desirability of the cur-rent stimulus situation, encoded in temporalanalog format. The result of the interactionof these two inputs in the motor system wasthat the "suggestion" made by the cortical-thalamic inputs was interpreted into con-tinued motor output patterns by the basalganglia only so long as a continuing "ena-bling" action was maintained on the "re-ward detector" input. This will result in asystem which exhibits the sort of goaldirected behavior shown by the photocellguided robot mentioned above, providedthat the reward detector is activated by goal-relevant stimuli. Thus, when the behaviorpattern specified by the cortex is translatedinto temporal motor output patterns by the

basal ganglia and cerebellar systems, the be-havior only continues if its consequencesproduce an input from the "reward detector"system which sustains the current behavior.Otherwise, it dies out and other behaviorstake precedence. Just as in the simple robotsystem, this sort of action will often lead tothe goal, even if the various possible be-haviors are generated at random. It will nothowever be very efficient.

This defines one aspect of the operationof the motivational system in a heuristicdevice: it must gate the reward detector torespond to the class of stimuli which isrelevant to the goals of the drive state inquestion. If we wanted to give the simplerobot two motivational options, for exam-ple, we would need a system to switchbetween the photocell and something else,say a microphone, to activate the forwardlocomotion circuit. Then we could use aspeaker to define the location of some othergoal, and the goal which was approachedwould depend on whether the locomotioncircuit was driven by the photocell or themicrophone. The major difference in thebrain is that whole categories of complexstimuli are enabled into the reward circuitryby the drive state, rather than just a singlesimple stimulus. Moreover, these range fromthe most straightforward stimuli, which areprobably hard wired into the motivationalcircuit from birth (the taste of food forexample), to the most complex stimuliwhich are clearly learned in later life (a signoffering food for sale). Like most systemsof the brain, this one has a hierarchicalrepresentation at various levels, and morecomplex stimuli are dealt with in moreadvanced structures, while simpler ones arehandled at anatomically (and evolutionary)lower levels.

It is easy to see how a system whichdetects a need state and initiates a drive op-eration might gate some simple and specificstimuli into the reward system, but it is notso clear how complex learned stimuli are tobe dealt with by a system that must specifyclasses of events. Research has revealed thatthe structures of the limbic system arecentrally important to our emotional func-tions as well as to our reward system, andthese regions seem to be necessary foractivating the reward system when thegoal-relevant stimuli are complex andlearned. These limbic system structures arealso in close connection with the regions ofthe hypothalamus and other lower centerswhich function in the detection of needstates. Further, limbic system structures re-ceive a wealth of projections from corticalareas which are involved with the higherlevels of perceptual feature extraction of the"

72 April 1978 © BYTE Publications Inc

THE SSB *150FLOPPY DISCOUNT

ss&e&fe-

Affordable

The tribe at Smoke Signal Broadcasting took ourBFD-68 disk system and scalped the price, butnot the features to create the ABFD-68 (AffordableBasic Floppy Disk). We appreciate the fact thatthe computer hobbyist gave us our start and wehaven't forgotten you.

$649 Assembled

Compare Price. Our SS-50 bus compatible disksystem is $150 less than the assembled price of theleading S-100 disk system. And you can at leastdouble that savings when you buy one of thecomputers manufactured by MSI or SWTPC thatuse the superior 6800 microprocessor.

Programmable

The BFD-68 is well known for its fine software. Thesystem comes with the best disk operating systemavailable and we offer a multitude of other com-patible software products. These include a BASICinterpreterwith disk file handling capability. Bythe way, our DOS now easily handles true randomaccess files as well as sequential. Also, we have asuper fast BASIC compiler for business applica-tions. In addition, a Text Editor, 2 Assemblers, a

Trace Disassembler useful for program debuggingand an Object to Source Code Generator are allstock items available for immediate delivery.A word processor will be available very soon.

Reliable

We delivered our first mini-floppy disk system ayear ago — 6 months ahead of any other 6800based mini system. Thus, we've had twice theexperience in building reliability into the system.Our NEW disk controller was designed using allwe have learned in the past year about systemreliability.

The ABFD-68 contains all the built in reliabilityof our regular BFD-68 plus you save money bysupplying your own cabinet and power supplyfor the disk.

Available

We've shipped literally tons of our BFD-68 disksystem in the past year and have learned to keepour production up with demand. Give us a call andchances are we'll be able to ship you the newABFD-68 from stock and charge it to your MasterCharge or Visa card. Better yet, ask us for the nameof the computer store nearest you that carries ourcomplete line of computer products.

P.O. Box 2017, Hollywood, CA 90028 • {2 13 ) 462-5652

Circle 100 on inquiry card.

BYTE April 1978 73

Figure 1: General paths of information flow in goai directed behavior, infor-mation from the senses is analyzed both for generation of new action pat-terns, and for increase/decrease decisions about current actions. The latterdecision is based on the rate of increase of satisfactory stimuli of types rele-vant to the goal determined by the drive state generators.

sort described in the last article. If you recallthis process, you will remember that theessential ingredient is the definition of thefeature by selective convergence of a varietyof inputs from lower level feature extractors.There is no essential reason why the "fea-ture" in this process must be related to aperceptual construct of the type we weredealing with then. In other words, althoughthe process described was presented in termsof the elements of visual object recognition,it would be equally applicable to what mightbe termed "emotional perception." That is,the emotional relevance of a visualstimulus could be considered as much ofa feature to be extracted as its intellectualidentification.

We shall say more of this higher levelextraction process, but for now just con-sider how an emotional feature extractormight be wired up. Let us say that as a startwe already have a small number of linesencoding the identification of some objectin the visual field regardless of location,etc. Now suppose that the output of suchelements converges, among other places,on elements of the limbic system, and thatthe convergence is selected so that the"feature" which is extracted by the targetneuron in the limbic system is "relevance"to some drive state. (Exactly how theseconnections are determined is not important;it might be hard wired or establishedthrough a later process of learning.) Wewould then have a group of limbic systemneurons which would respond to many

stimuli relevant to a particular drive state.Such limbic system elements, each driven bya multitude of perceptual objects, wouldeasily be enabled by inputs from the systemresponsible for gating classes of drive-relevant stimuli onto the reward bus. Theessential element here is to see that theproblem of decoding stimuli for emotionalcontent is the same in terms of informationprocessing as the problem of decoding themfor logical purposes, and that much of thesame circuitry can serve both functions,since it is only after the level of objectidentification that the convergence patternsare different.

Exactly how this emotional perceptualapparatus is connected in detail is not yetwell-understood, but it appears that what-ever the precise nature of its operation, itwill not be very different in principle fromthe model I have just described. Its generalfunctional operation in terms of behavioris established. In terms of potential applica-tions to robotics, the present model willserve to adequately summarize these facts.The general scheme is presented in fig-ure 1. In this diagram we see that the dataflow from the receptors follows two mainroutes. After preliminary analysis in thesensory cortex, the data is available bothto the limbic system for motivation-relevantfeature extraction processes, and to theother areas of the cortex for logical anal-ysis. The information which is processedin the limbic system can activate the re-ward mechanism if (1) the informationdecodes to features relevant to a drivestate and (2) the limbic system elementswhich decode it are gated onto the rewardsystem bus by activity of the appropriatedrive state mechanism. When these condi-tions are met, the behavioral strategiesdeveloped by logical analysis of the sensorydata can continue to be translated intomotor patterns by the basal ganglia andother portions of the output system.

There seems to be a large component ofthe reward value of positive stimuli whichis due to the rate of increase, or derivative,of the decoded stimulus rather than itsabsolute value. The situation with nonhome-ostatic motivations and pain-escape behaviorsinvolves the same machinery, with somedifferences. In the case of escape and avoid-ance behaviors, it is of course the reductionof activation of certain stimulus elementswhich serves to activate the reward mech-anism, presumably through release ofinhibitory elements. In the case of non-homeostatic behavior, the situation isreminiscent of the difference between mask-able and nonmaskable interrupts. Stimulirelevant to nonhomeostatic drive states are

74

April 1978 ©BYTE Publications Inc

Everything you need inLEAR SIEGLER ADM 3A TERMINAL

Kit $759.95

Assembled *|>0O4a%/D

ENTERPRISES, INC.I

small computer systems!|JTJJB CENTRONICS 779 PRINTER

$1099.00

ADM 1A TERMINAL

Assembled

$1529.00

ADM 2A TERMINAL

Assembled $1995.00

HAZELTINE 1500VIDEO TERMINAL

Assembled $1149.00Kit also available

MODULAR 1

INTELLIGENT

TERMINAL

Assembled

$1659.00

IMSAI 8080 MICROCOMPUTER

With 22 slot

$649.95

SPECIAL BUYS

IMSAI Double Density Persci Drive $2295.00

Sorac IQ 120 Video Terminal 959.00

DEC LA 180 Printer 2769.00

Compucolor8001 Color Computer. 2595.00

ICOM Microfloppy System 989.00

North Star Microfloppy Disk Kit 599.00

Cromemco Z-2 Kit .. 565.25

Javelin 9" Video Monitor 159.95

Micropolis Model 1053MOD2 1799.00

IMSAI AP44-44 Col. PrinterKit 329.00

TDL Xitan Alpha 1 Computer Kit 699.00

ICOM Model FD 3712 2795.00

703SERIAL PRINTER

$2395.00

761 PRINTER

KSR with Keyboard $1695.00

OKIDATA MODEL 110 LINE PRINTER

/A

Friction Feed

$1149.00

V

Tractor Feed

$1279.00

RS 232C Serial Interface

$260.00

MODEL 22 LINE PRINTER

Tractor Feed $2249.00

TELETYPE MODEL /"I :ki.

43 PRINTER / /7

$1299.00 / J^^^ /

IMSAI PC S-80/15 8085COMPUTER

Kit

$749.00

Assembled

$929.00

We carry a full line of the following: TDL,Centronics, Seals, Hazeltine, Micropolis,Hayden, IMSAI, Cromemco,Compucolor, Icom, LearSiegler, Okidata,DEC, Javelin, North Star, Peripheral Vision.Same day delivery and shipping on mostitems. Full modern repair facilities onpremises for complete servicing ofeverything we sell.

SYNCHRO-SOUND ENTERPRSES INC

The Computer People

193-25 Jamaica Avenue,

Jamaica, New York 11423

212/468-7067 TWX: 710-582-5886

Hours 9-4 daily Visit our new showroom

and Saturday Working units on display

Dept bbb Bank A mericard • Master Charge

Circle 108 on inquiry card.

BYTE April 1978

75

"nonmaskable" in the sense that the drivestate does not have to be activated in orderfor them to have an effect. What seems tooccur here is that the decoding of thesestimuli serves to initiate the action of thedrive state, thus energizing the organism'sbehavior, and the subsequent reduction ofthese stimuli by successful behavior servesto activate the reward mechanism and directthe behavior.

What we have described accounts for themost basic function of motivational systems,their elementary goal directing functions.Several other important functions remainto be mentioned; among these are: theenergizing or activating properties, the cueor stimulus properties, and the propertyof reinforcement of learning. To take themin order, it is clear from the above discussionthat there will be an increase in generalactivity level resulting from an encounterwith stimuli associated with a goal object,for example, directed locomotion towardsthe goal which arises when the motor systemis gated open. This is referred to in psycho-logical jargon as "incentive activation."In addition, there is an increased activitylevel resulting from the operation of a drivestate generator in the absence of any rele-vant stimuli. This appears to be a generalincrease in levels of behavioral motor out-put, irrespective of any specific relation tothe drive state. Many different kinds ofdrives, for example, will produce increasedmeasures of general activity in devices suchas running wheels, jiggle cages and the likewhich measure such activity. The phe-nomenon is called "nonspecific" activation,and its utility to the organism seems ap-parent. If a drive state develops, the or-ganism has a statistically greater chance ofencountering relevant stimuli if it movesaround in the environment, even when suchmovement is random and undirected (noticehow people tend to pace when highly moti-vated). The same argument would of courseapply to a robot system.

The "cue" property of motivationalstates refers to the fact that the operationof motivational mechanisms generally givesrise to internal sensations which may them-selves be considered as sensory stimuli,capable of entering into the informationbase on which the logical functions operateto produce behavioral strategies. Thus, theorganism "knows" when it is hungry, andthis data can itself be employed in con-junction with information from memoryand sensory input to generate behaviors fortrial. These are much more likely to lead tosuccessful results than random behaviors.This makes the system much more efficientthan one which, like the simple robot,

simply gates the continuation of successfulbehaviors. This is because successful be-haviors (those that lead to encounters withgoal relevant stimuli) are much more likelyto occur. For example, if the informationabout operation of the hunger drive is "usedin conjunction with information aboutcurrent location to form a "memoryaddress," any information about knownencounters with food sources in the vicinitycan be accessed and used to generate be-haviors with greater heuristic value thanrandom exploration.

Finally, we must consider the role of themotivational systems in the reinforcementof learning. You will recall that in the firstarticle of this series, I mentioned two kindsof learning process; one was Pavlovian condi-tioning which depended only on thetemporal contiguity of a stimulus which wasinitially neutral, and a stimulus whichnaturally evoked some behavior. We sawthat repetitions of this pairing led to theability of the initially neutral precedingstimulus to evoke the behavior normallyevoked by the second stimulus. It appearsthat this type of conditioning may be afundamental property of neurons. A dis-tinguishing feature of this type of learningis that only the pairing is important, not theconsequences. The second type, however,called "operant conditioning," is entirelydependent on the consequences. Behaviorswhich the organism emits and which arefollowed by activation of the reward sys-tem tend to occur more frequently. Thosewhich fail to generate activation of the re-ward system tend to occur less frequentlyin the future. This type of learning is ofcourse enormously useful in improving therange and efficiency of the organism's be-havioral repertoire, since it can be used tomodify existing behavioral chains by the in-sertion or deletion of elements, or to buildup entirely new behavioral sequences out ofaccidental successes. This occurs even ifthe reward system is driven directly byelectrical brain stimulation, thus bypassingall the circuitry which normally decodes theenvironmental and drive state stimuli. Itappears that the reward system must beinvolved in this process, and there is mount-ing evidence that the basal ganglia partici-pate in important ways as well. It is possible,although not definitely established, that aprocess of classical conditioning operatingbetween the inputs to the basal gangliacould account for the phenomenon ofoperant conditioning. This theoretical modelwill be presented here as the easiest ap-proach to model in a robot brain.

From what we have said already, it isclear that a successful behavior involves two

76

April 1978 ©BYTE Publications Irtc

Computer Mainframe System

First in the TEI family... The MCS-112 and 122 Mainframe Systems.

NOW AVAILABLE WITH AN ACTIVELY TERMINATED ANDSHIELDED MOTHERBOARD AT NO INCREASE IN PRICE.

the cabinet

A heavy duty precision formed cabinet of finecraftsmanship. Completely machined and readyfor assembly Vented for most efficient thermalcharacteristics. Furnished with all neces-sary hardware.

The front panel

The front panel is blankexcept for an indicating ACswitch and a reset switch.However, the chassis and motherboard are designed so that you mayremove the front panel and insert an IMSAIor equivalent front panel.

Specifications

MCS-112

MCS-122

Dimensions 1VM W x 12 D x IVa H

Power + 8 volt DC 17 amps

Power ±16 volt DC 2 amps

17'/4Wx19Y2Dx7Y4H30 amps4 amps

Jhe motherboard

An S-100 Bus system high quality mother board with 100-pin edge connectors. Compatible with IMSAI, MITS,CROMEMCO, TDL and other S-100 bus configured circuit boards. Plug connections for reset switch. Voltage terminalsare screw type to power supply leads. All card guides are provided. 12 slots for MCS-112 model and 22 slots forMCS-122 model. The motherboard is shielded and actively terminated.

Edge connectors

High quality edge connectors factory mounted and wave soldered to eliminate this nuisance foryou. Completely checked out for shorts or open traces. ALL edge connectors furnished, 12 forthe MCS-112 and 22 for the MCS-122. No additional expense when you expand yoursystem.

The power supply

One of a kind ... using a constant voltage transformer (CVT) with a very

high immunity to input line noise .. . greater than 100 db rejection.

Line regulation better than ± 1% from an input of 95 to 140 Volt

AC at full load to 85 to 140 Volt AC at three quarter load.

Designed to meet UL-478 specifications (EDP SPECS).

Individual fusing on all input and output voltage

lines. See specifications below for power

ratings.

.The cooling system

A 115 CFM muffin fan with acommercial grade washable filterwill provide clean airflow over allcircuitry

The wiring

All wiring is color coded and ALL isprecut to length with connecting lugsfactory machine applied.

NOW .♦♦ TEI puts it alltogether for you. Mainframe

systems (12 and 22-slot) . . .Floppy and mini-floppy disc drivesystems (sinsle, double and triple) 16KRAM ... a CPU with addressable "jump to" andautostart capability ... 16 Channel A/D and D/Aconverter... 3 serial + 3 parallel multiple I/O... andother supporting boards ... and our newest item, thePROCESSOR TERMINAL — A CRT, keyboard, mini-floppy discand 12-sIot mainframe with a 8080A CPU — all housed in onequality aluminum case. All of these fine products at prices youwill like Watch for them all.

C"

D

MCS

SPECIAL SYSTEMS GROUP

MICROCOMPUTER SYSTEM

Contact your local TEI Dealer or if you are not near one of our dealers, write or call CMC MARKETING (LOW, the national distributors for TEI

products, for more information.

CMC MARKETING CORP 5601 Bintliff Suite 515 • Houston, Texas 77036 • Phone: (713) 783-8880

Circle 23 on inquiry card.

BYTE April 1978 77

events at the basal ganglia: first the activa-tion of a pattern of neural firing in the basalganglia by cortical and thalamic inputs, andthen a sustaining input from the rewardsystem if the resulting behavioral outputproduces a more favorable stimulus situa-tion with regard to goal related stimuli.Now any number of possible actions may besent to the basal ganglia by the corticalmechanisms which are analyzing currentevents and memories of similar situationsin the past. Some of these will be moresuccessful than others in sustaining firingpatterns in the basal ganglia. Remember the"self-quenching" action of the inhibitoryelements in that structure. One functionof this mechanism may be to insure thatonly one of the competing response patternswill emerge to direct the motor mech-anisms. That is, the strongest input willmost easily withstand the inhibitory action;and the inhibitory action which its ownsuccessful operation initiates will furtherundermine the attempts of competing firingpatterns to seize the upper hand. Think ofa bistable flip flop circuit when powercomes on. Only one transistor winds up inthe on state, and the other is completelyoff. In the same fashion, the mutuallyinhibitory actions of firing patterns in thebasal ganglia would tend to insure thatthere was only one winner.

Just as in the case of the flip flop cir-cuit, which one of the firing patterns winsmay be determined by very minute dif-ferences in the ability of the competingactivation patterns to fire their targetneurons first. Furthermore, a variety ofother factors (for example, how recentlya particular neuron has fired) will cause theusual "winner" to lose some of the time.Thus, the patterns that emerge as behaviorwill have a ranking of probability; but itwill never be guaranteed that one will al-ways be the winner, only that it is themost likely to win. This is very differentfrom most computer approaches, in whichit is assumed that you know the best way,and do it that way always. In developingnew behaviors to suit an unknown andchanging environment, however, it is im-portant to be able to experiment a little.Now if we could somehow alter the sensi-tivity of the target neurons a little bit infavor of one or another of the competingpatterns so that that pattern could get asmall jump on the competition, the proba-bility of that pattern of behavior emergingas the victor would be increased. If thiscould be done in a way contingent on thebehavior being "successful" (ie: activatingthe reward system), when by chance it was

the winner, we would have all the featuresof operant conditioning.

It appears that this happens, and that atleast with respect to complex, feedbackcontrolled, environmentally-oriented be-haviors, it does involve the basal ganglia.The process is called "reinforcement," andat the cellular level we don't know how itworks. A reasonable guess, however, wouldbe that it is essentially a process of classicalconditioning of the cells of the basal gangliaby sequential activation by first the corticaland then the reward system's inputs. Weknow from studies of simple nervous sys-tems that this classical conditioning mech-anism, based on simple temporal contiguityof inputs, can occur within a single neuronwhen two inputs are activated sequentially.The operant conditioning process thenmay be the result of classical conditioningof certain cells, such as those of the basalganglia, by inputs on the reward bus follow-ing firing by inputs from the cortical patterngenerators. The resulting small increase inthe ability of the cortical inputs to firethose particular target neurons would thenincrease the likelihood of that patternemerging as the dominant output.

In the case of a robot system modelingthis kind of action, it clearly would behandled differently in detail. One mighteasily envision a system in which the proc-essors which decoded the equivalent of thecortical inputs into the equivalent of thebasal ganglia outputs to the motor systemwould apply a numerical weighting to thevarious inputs received, and would incre-ment the weighting if the "reward" inputwere active within a short period thereafter.What would be important would be theprovision of some mechanism, perhaps apseudorandom number generator, formaking the predominance hierarchy proba-bilistic rather than absolute; and provisionfor changing the weighting according to thesuccess of the behavior when tried. Withthese two features, the robot would achieve,within the limits of its behavioral capa-bilities, the flexibility and adaptiveness thatcharacterize brains. It would also achievetheir ability to make mistakes, but thatseems to be a price that evolution has foundacceptable.

I have presented this model of operantconditioning as though it were occurringexclusively in the basal ganglia. While thisillustrates the general principle involved,it is clear that more is involved in the realbrain. The projections of the reward systemextend into large portions of the cortex,and it is clear that things other than theprobability of output patterns can be modi-

_

April 1978 ©BYTE Publications Inc

Peripheral Visionimpacts your computer!

-size, low-cost impact printer.

Until now, the hobbyist and small businessman have had one major problem in assembling a reasonably pricedmicroprocessor system with the capabilities found in the more costly computers. It was impossible to find ahigh-quality, high-output printer for hard copy needs at an affordable price.

Peripheral Vision has come up with a solution.

We are offering a full-size impact printer designed for microprocessors—and it comes with a mini price. Pricesstart as low as $540 for the printer, interface card kit, and the power supply. And that won't impact yourpocketbook.

Peripheral Vision's printer is loaded with capabilities. Take a look:

■ It's fast—120 characters per second

■ 96 characters per line, 12 characters per inch horizontal, 6 lines per inch

■ Makes up to 4 copies simultaneously

■ 5 x 7 character matrix

■ Ribbon has built-in re-inkers for a life of 10,000,000 characters

■ Paper can be either a standard SVHnch roll, fanfold or cut page

■ Interfaces to 8-bit parallel ports (one input & one output)

■ Compatible with the S-100 bus (use our optional parallel port card)

Just remember, Peripheral Vision is committed to helping you get along with your computer. As an example,the printer we are offering is high in quality, low in cost and will definitely impact your system. Other examplesinclude Floppy Disk Drive systems, Digital Cassette systems, Stand Alone Audio Cassette interfaces and ourinexpensive Keyboard.

□ Send me more information on how to impact my computer!

□ OK, here's my $540, send a printer kit.

□ Here's $695 for an assembled & tested printer. And thanks!

Name

Company

Address City State Zip

(BankAmericard/VISA, Master Charge or COD's also welcome.)

PQ Box 6267/Denver, Colorado 80206 303/777-4292

Circle 86 on inquiry card.

BYTE April 1978 79

fied by similar learned processes. For ex-ample, the weight attached to particularstimulus features in generating the outputpatterns in the first place, or the weightattached to particular items from memoryin generating these action patterns, can allbe altered by the reinforcement process.Such things more likely occur at corticallevels than in the basal ganglia, and theirdetails are obscure. However, there is noreason why the principles described herecould not be applied to such functionalprocesses in an advanced robot. Once theprinciple of operant conditioning is em-ployed, it is possible in theory to achieveany degree of fine tuning of any processin the machine. It should be noted, by theway, that the more the machine relies onoperant conditioning rather than hard wiringor unmodifiable software to generate itsresponses, the longer training period it willneed, and the longer "infancy" it will havein which it will need a "mother" to keepits major errors from being disasters. Inorganic brains, the period of helpless infancyis directly proportional to the flexibilityand adaptiveness of the adult brain, forjust this reason.

Another important brain function, re-lated to the concept of motivation in respectto energizing and directing behavior, is whatis loosely referred to as "arousal and atten-tion/' There are two general types of arousalsystems, and one depends on the other.The most fundamental is a general "tonic"arousal system. This term refers to the factthat the system sets the general level ofactivity in the nervous system over longperiods of time, ie: it sets the "tone" of thesystem. The most important part of thissystem is a group of diffuse nuclei form-ing a long column in the central partof the spinal cord, medulla, pons andmesencephalon. This area is collectivelyreferred to as the "reticular formation."One of the great early discoveries in brainfunction was the finding that the forebraindoes not simply run of its own accord. Itrequires constant drive from the reticularformation to keep it processing. In thissense, the reticular formation acts like thebrain's on/off switch. However, whereasmost computers are either on or off, thebrain is capable of operating at various levelsof activation. Intuitively, you know thedifference between feeling highly alert andexcited, and feeling awake but inattentiveand relaxed. This reflects different levelsof operation of the forebrain, under controlof the reticular formation. An imperfectanalogy could be made with a computer

having a variable clock speed, but even here,it is not strictly speed of processing that isaffected. The general modulating inputsfrom the reticular formation connect verywidely through the forebrain and serve tobias the cells there towards or away fromfiring level. As we saw earlier, this notonly has implication for the rate of activityin these cells, but also for the nature of theprocessing they perform, since the analogand digital factors in the cell's input arerelated. Recall for example that the bias-ing level of a feature extractor may deter-mine the degree to which the input mustresemble the optimal input in order to causean output. Thus, not only level of activityand speed of processing, but also nature ofprocessing is affected, usually in a generalway appropriate to dealing with situationsrequiring or not requiring attention.

At the two extremes of reticular forma-tion control, we have high excitement onthe one hand and unconsciousness onthe other. (Do not confuse unconsciousnesswith sleep. Sleep is a separate active processthat reflects a different type of organizationof forebrain activity. We shall not discusssleep, since I have yet to see any relevanceof sleep to design of robot brains, and no-body knows what it's good for in humanseither.) Part of the utility of such a systemin a robot would be to conserve powerwhen the environment was not demandingmuch attention. The power saving functionis not inconsiderable in your own caseeither; the brain draws about 25 W, which isa healthy fraction of your available energy.A more important point is that the raisedarousal levels provide a substrate out ofwhich particular patterns of forebrainactivity can be carved by selective inhibition.This is the process called "attention."

Let us first look at the sources of arousal.The reticular system is activated by threemajor types of input. One, which we havealready dealt with in part, is the input fromthe mechanisms which detect and regulatemotivational states. We mentioned there ageneral, nonspecific component to thearousal produced by motivational states.This appears to function through activationof the reticular formation by the moti-vational systems, or in some cases by theinternal stimuli that activate those systems.A second source of control over reticularactivation comes from the sensory systems.This occurs in a rather unique way. As theaxons carrying sensory information throughthe brain to areas which analyze itscontents pass by the reticular formation,they give off branches which contact cells

-

80 April 1978 © BYTE Publications Inc

in the lateral part of the reticular formation(see figure 2). These cells in turn activatecells in the central portion of the reticularformation which give off long axons thatcarry the activation regulating controlimpulses to the rest of the brain. What isinteresting here is that there is no attemptto keep the sensory input lines separate.Inputs from receptors for touch, sound,light and all other senses all synapse indis-criminately on the same neurons. There isthus no qualitative component to thereticular formation's input data, onlyquantitative. What it is responding to is thetotal amount of sensory activity in thereceptors, or in other words, the generallevel of environmental "noise." Like allsensory systems, this one responds moststrongly to things that change. Thus, abruptchanges in the level of activity at anysensory receptor will serve to activate thereticular formation and arouse the rest ofthe nervous system. Strange though it mayseem, therefore, it is not the consciousperception of the sensory input which isarousing. In fact, if the reticular formationis damaged and the rest of the sensoryapparatus is left intact, the organism willnot be aroused by the most intense stimula-tion, even though electrical recordingtechniques show that the sensory informa-tion is getting to the sensory areas of theforebrain in full strength.

The function of this mechanism isclear: if there is a lot of changing activityin the environment, the organism probablyneeds to be alert and attending to it. Thereticular formation is very old evolutionary,and this mechanism probably represents oneof the earliest types of response to theenvironment, one which is still useful evenin the most advanced brains. If the processwere to stop here, we would have an or-ganism that could respond, adequately toexternal events, but which would not bespontaneously alert in the absence of a needstate or an external stimulus which requiredattention. This is approximately the be-havior pattern of creatures such as amphib-ians and reptiles, which have little or nocortex. In the case of animals with a well-developed cortex, we see the developmentof a third set of inputs to the reticularformation, those from the cortex. Thisestablishes a positive feedback loop betweenthe reticular formation and the cortex whichenables the cortical-reticular system to'lock on" and sustain its own activity. Thisdevelopment allows for control over arousallevels by the results of internal processing,and the brain is freed from dependence onneed states or environmental input for acti-vation. This is clearly advantageous when a

e

TALTEX q.

"NON-SPECIFIC* NUCLEUSOF THALAMUS

Figure 2: The brain's arousal and attention system. The reticular formationprovides general arousal in response to several classes of input. The frontalcortex con focus the brain's processing by cutting selected systems out ofthe broad arousal provided by the reticular formation.

level of cerebral sophistication has beenreached which permits action on the basisof anticipated events. With this feedbackloop, the more advanced brains achieve thecapability for maintained conscious thoughtand regulation of their own operation.

The other aspect to the control of arousalis one which allows the organism to focusits operation specifically on certain fore-brain processes while shutting down others.That is, given a state of arousal or alertnessto begin with, it is possible to channel thisactivation into particular functions. Theoperation of this mechanism is what weexperience as "attention." In figure■ 2,notice that the projections of the reticularformation are shown having a facilitatoryeffect on a relay neuron in the thalamicnucleus (lateral geniculate) which is part ofthe pathway from the retina to the visualcortex. It does this by inhibiting a set ofneurons in the so-called "nonspecific"nucleus of the thalamus which in turnnormally inhibits the sensory relay neuron.Activity in the reticular formation thustends to promote transmission in the visualsystem, as it does in other brain systems,and lack of reticular bias tends to shut itdown. Now notice the input from thefrontal cortex to the cells of the "non-specific" thalamic nuclei. These have theopposite effect: they can counteract thereticular drive and shut down selected sys-tems. In a similar fashion, the frontal cortex

April 1978 ® BYTE Publications Inc 81

and the reticular formation jointly controlthe operation of most forebrain systems.The way the process is arranged, the cortexdoes not directly activate any of the sys-tems, but it can selectively oppose reticularactivation. This means that given a generalstate of arousal activating the forebrain, thefrontal cortex can manipulate the operationof various systems by cutting them out ofthe reticular activation, or permitting themto run. Thus, the frontal cortex can "carveout" a pattern of specific processing actionsby selectively inhibiting what is not wanted.It thus is capable of orchestrating the opera-tion of the higher processing centers, giventhe basic arousal by the reticular system.This process of attention has its origins ina hard wired reflex operation called the"orienting reflex" which shifts attention to,and has motor components which orientthe receptors to, any strong novel stimulus.You experience this primitive mode ofattention focusing when you reflexivelyspin around to face the source of an unex-pected sound. At a somewhat more ad-vanced level, the cortex can make use of theinformation from the motivational systemto decide what stimuli or systems are "rele-vant" at the moment and focus processingactivities accordingly. At the most advancedlevels of operation, focusing of attentionmay be directed by the results of logicaloperations. Whatever the source of thedecision, the process is the same.

The frontal cortex is the most advancedpart of the brain system, and one of theroles it apparently plays is the organizationof the activities of other systems to achievehigh level operations. Presumably, the reasonit operates by opposing reticular drive,rather than activating the forebrain directly,is because it is itself activated by the reticu-lar system under the control of the factorsjust discussed. There may be no reason otherthan evolutionary sequence for not com-bining the two functions, although theinitial general activation as well as the re-sponse speed of the reticular formation area safety feature.

There is a general inhibitory systemwhich can oppose reticular activation atall levels, and the frontal cortex initiatedattention control is actually best viewedas the highest level of this general inhibitorysystem. Other lower processing units cancontribute inhibitory control to this systemat appropriate levels, and the actual patternof activation of the brain at any instant isthe result of an ascending activating in-fluence from more primitive levels beingmodulated by a descending pattern ofselective inhibition from more advancedlevels. This is part of the general "fail safe"

pattern of control which was describedin the first article of this series. Loss of highcommand does not incapacitate lower cen-ters, it frees them to operate independent-ly as best they can. This is an idea thatmight be important in reliable robot braindesign.

Analysis and Logic

What remains to be discussed is thebrain's logical operation. This is of courseone of the areas in which our current com-puters do very well already, and one wherethe brain frequently comes in second best.It evolved after all around control systemsfor chasing visible targets, and that doesn'trequire too much advanced thought. It isjust as well, too, that our computers do wellhere because we really know very littleabout the brain's logical operations. Humansare best for that sort of investigation, andthere are few volunteers for experimentalbrain surgery. There are a few points ofinterest, however, that may be worth scruti-nizing. The first of these points emphasizesthe utility of the brain's combined analogand digital, two-dimensional "byte" oftemporal and spatial dimensions (Dare Icoin the term "gulp"?). One of the real usesof such an arrangement, in which the in-tensity associated with each bit (axon) ofthe digital information is carried in analogform in the temporal dimension of that bit,is that you can operate logically and mathe-matically on those two aspects of the bitindependently.

Consider what can be done if you have aset of lines which represent the output ofthe highest level feature extractors. Theselines are the result of processing in corticalareas where the outputs from the varioussensory modalities, already highly recoded,are brought together to generate informa-tion about the state of the external worldbased on a synthesis of the features ex-tracted from all the available sensory data.Studies of brain damage in humans havegiven us some insight into the operation ofthese areas and the strange phenomenawhich can occur when their function isimpaired. Things such as loss of the abilityto name objects by sight while retainingthe ability to draw them, or to name themby touch, are seen. A host of similartantalizing bits of information are beginningto paint a picture of the functions of theseareas. It appears that highly extracted in-formation can be operated on here in alogical way, used to access memory, andeven generate output. This, however, isactually prior to the operation of the high-est levels of function which are concernedwith extrapolation of the future course of

82 April 1978 © BYTE Publications Inc

Application Software!

You canbuy softwarefrom anybody -

but ours worksin your system.

We only sell one product,Quality.

We have been in business for over nine years building a reputationfor providing a quality product at nominal prices — NOT what thetraffic will bear. Our software is:

• Versatile — as most programs allow for multiple modes ofoperation.

• Tutorial — as each program is self prompting and leads youthrough the program (most have very detailed instructionscontained right in their source code).

• Comprehensive — as an example our PSD program not onlycomputes Power Spectral Densities but also includes FFT's,Inverse-transforms, Windowing, Sliding Windows, simul-taneous FFT's variable data sizes, etc. and as a last wordour software is:

• Readable — as all of our programs are reproduced full sizefor ease in reading.

• Virtually Machine Independent — these programs are writtenin a subset of Dartmouth Basic but are not oriented for anyone particular system. Just in case your Basic might notuse one of our functions we have included an appendix inVolume V which gives conversion algorithms for 19 differ-ent Basic's; thats right, just look it up and make the sub-stitution for your particular version. If you would like toconvert your favorite program in to Fortran or APL or anyother language, the appendix in Volume II will define thestatements and their parameters as used in our programs.

Over 85% of our programs in the first five volumes will execute inmost 8K Basic's with 16K of free user RAM. If you only have 4KBasic, because of its' lack of string functions only about 60% of ourprograms in Volumes I thru V would be useable, however theyshould execute in only 8K of user RAM.

All of our programs are available on machine readable media. Forthose that have specific needs, we can tailor any of our programs foryou or we can write one to fit your specific needs.

soiV^v

i BASIC

SOFTWARELIBRARY

VOLUME II

A^

Vol. 1 - $24.95

Bookkeeping

Games

Pictures

Vol. Ill — $39.95

Advanced BusinessBilling, InventoryInvestmentsPayroll

Vol. II — $24.95

Math/EngineeringPlotting/StatisticsBasic StatementDef.

Vol. IV - $9.95

General Purpose

Vol. V — $9.95

Experimenter'sProgram ~-

Soon To Be Released—Vol VIII-Homeowners Programs(Includes Federal Income Tax Program)

SCIENTIFIC RESEARCH

220-B Knollwood, Key Biscayne, FL 33149

Phone orders call 800-327-6543Information—(305) 361-1153

Add $1.50 per volume handling, all domestic shipments sent U.P.S. exceptAPO and P.O. Box which go parcel post. Foreign orders add $8.00/volumefor air shipment and make payable in U.S. dollars only.

AVAILABLE AT MOST COMPUTER STORES

Master Charge and Bank Americard accepted.

Our Software is copyrighted and may not be reproduced or sold

BYTE April 1978 83

Everyone's

getting personal

in Long Beach.

3 full days of technical sessions, exhibits,

home-brew displays and the latest on personal and

small business computing, all at PERCOMP 78.

April 28-29-30.

Jim Butterfield is on his wayfrom Toronto with the entire,unabridged truth about KIM.Jim co-authored The FirstBook of KIM.

Carol Anne Ogdin's keynoteaddress bares the facts on"How Personal Computers AreBeing Used Today.* Carolcomes to us from SoftwareTechnique, Inc. in Alexandria,Virginia.

Dr. Portia Isaacson, a con-tributing editor for Datamationand an assodate of Byte, bringscomputer enthusiasts the verylatest word on "ComputerStore Retailing."

Louis Field, president of theInternational Computer Society/SCCS, gives you everything he'sgot on "Getting Started inMicro-Computing*

From Creative ComputingMagazine comes David Ahlwith all you'll ever need toknow on "Marketing for theNew Manufacturer*

Attorney Kenneth Widelitz willbe on hand with some friendlyadvice on "Tax Aspects ofLemonaide Stand Computing*while his friend attorneyLeonard Tachner delivers thelow-down on "Patents,Copyrights and Computers*

Just for the fun of it, we havean entire home-brew section-robotics, games, computermusic, even every-day, sensiblestuff like checkbook balandngand preparing mailing lists.You're sure to take home somenew tricks to your computer.

And don't forget, PERCOMP 78has booth after booth of every-thing in personal and smallbusiness computing.

5 months before show time ourdynamite exhibit list includesfrom A to V:

The Astute:

Advanced Computer ProductsAlpha Supply Co.Apple Computer, Inc.A-Vidd Electronics

The Brilliant:

Byte Industries IncorporatedByte Shop LawndaleByte Publications, Inc.

The Captivating:

Calcomp

Computalker Consultants

Computerland

Computer Magazine

The Computer Mart of Orange

Computer Pathways Unlimited, Inc.

Computer Power & Light Inc.

Creative Computing

Ik *w

RIP THIS COUPON FROM THE

PAGE AND GET IT TO US BY

APRIL 10.

I want to save time and money.

Please send me

pre-registration forms.

PERCOMP78

1833 E Seventeenth St., Suite 108, Santa Ana, Ca. 92701PHONE # 714-973-0880

State.

.Zip.

(B-4)

The Tantalizing;

Tandy ComputersTarbell ElectronicsTech-MartTelpar, Inc.TLF, Corp.

The Ultra:

Uttra-Violet Products, Inc

The Valiant:

Vector Graphics, Inc.Vista Computer Co.

Since everybody's coming, better makeyour advanced reservations. Pre-registerand save (you won't have to wait in line)...but don't forget about your hotel room.Our staff has reserved rooms in hotelsand motels near the Convention Center.We've even arranged for a shuttle busservice. So call and we'll save a roomfor you.

Long Beach is close to Disneyland,Knott's Berry Farm, Universal Studios...everything, plus our staff will help youget wherever you want to go.

A big, sunny beach is minutes from theConvention Center, and April is a greatweather month in Long Beach, so plan tobring the family and have a good time.

Circle 128 on inquiry card.

BYTE April! 978 85

events. If the spatial (digital) byte of this"gulp" of information encodes the state ofthe external world in its millions of bits,the analog (temporal) byte of the same"gulp" represents the current strength ofactivation of the feature extractors generat-ing each of these bits. The rate of change ofeach feature with time can be obtained bydifferentiating the analog (temporal) byteon that line. This is easily done at theneural level by negative feedback from thecell's own axon, and does not affect thecontent of the associated digital word.Doing the process twice gives you thesecond derivative. If the whole collectionof bits represents the state of the externalworld coded in terms of its cognitive fea-tures, the process produces the first andsecond time derivatives of reality, so tospeak. These derivatives, added to theinitial value, give the predicted next valueof the analog (temporal) byte of the nextstate of the sensory world. It may be inerror, but it is the best prediction fromavailable data, at least without assistancefrom memory of past experiences. Thismeans that it is relatively easy to extrap-olate from moment to moment the futurecourse of incredibly complex patterns ofinformation. This extrapolation can be sentto the limbic system for analysis of thereward value of such a state of the world,and anticipatory action taken if necessary.The consequences of one's own actions cansimilarly be extrapolated by the sameprocess applied to the current outputcommands. Of course, this simple processcannot be extended too far. It will onlysuffice for moment to moment sorts ofoperations, but these are exactly the realtime applications that the more traditionalapproaches are too slow to handle. This isparticularly true in the case of a systemrequired to deal in real time with a gen-eralized environment. The details of theprocess as I have presented them are highlyspeculative, but it is clear that somethinglike this occurs, and the potential utilityof the analog aspect of the "gulp" is clearin this regard.

Our present experimental evidence indi-cates that this type of ability, the abilityto modify present behavior on the basis ofextrapolated future events, is the provinceof the most advanced parts of the brain,such as the frontal cortex. This is partic-ularly true of the ability to inhibit currentgratifying behavior in anticipation of greaterfuture good. The anatomy of the frontalcortex's connections suggests that it has allthe appropriate links for operating in theway just described, as does its prominantrole in inhibitory control of other regions.

It is easy to imagine that following thedevelopment of a primitive extrapolativesystem such as the one described here, andthe corresponding development of appro-priate control outputs to express the correc-tions behaviorally, further refinementswould include the development of logicaland memory functions in the service of theextrapolator to improve capability for longterm analysis. The development of suchcapability seems to be one of the advancedfeatures that sets the brains of men apartfrom those of most animals. The ability toencode complex situations in symbolicform (as in words and numbers) undoubt-edly aids enormously in this process. Interms of brain wiring, these processes arenot well understood. Fortunately, computertechnology is strong here.

The Importance of the "Almost" Gate

Two advantages derived from the natureof the brain's logic gates bear mentioning.What is noteworthy are some functions ofthe property I have nicknamed the "almostgate," that is, the production of an outputpulse when some percentage of the inputsare active. The result of this operation ofcourse is to allow the gate to fire in responseto a number of different input patternswhich only need be similar. For example,some but not all of the elements feeding afeature extractor may be fired by a similarfeature. If it is similar enough it may work.This sort of operation underlies one of theimportant differences between brainmemories and computer memories. Whenyou access a word in a computer memory,you get back the contents of that word,period. Although the physical nature ofthe brain's memory storage mechanism is amystery to us still, one thing that is clearabout its operation is that a stimulus whichmatches an item in memory accesses notonly that particular memory but also a hostof similar items. This is an important tool,since "similar" items are those most likelyto have important relationships to the prob-lem at hand. Materials so accessed can ofcourse be screened for relevance and in turnused to generate new memory calls. Thedevelopment of this type of "associative"memory call in electronic hardware wouldgo very far towards giving a robot brainmuch of the power of its organic counter-part. So long as the principle of selectiveconvergence is used appropriately to gener-ate the inputs for successive echelons of the"almost gates," it will be the case that the _assortment of input patterns which can firethe final gate will have similarity along someimportant conceptual dimension. The out-puts of such gates, when used to form

86 April 1978 © BYTE Publications Inc

Build a

whole new world

with The Blues.

a«

uSS "iSIwri

' •~wmt'' 3BHF

■■■■■-^stt* $ s&''"-;-

The future belongs to those with The Blues

from Cybercom.

Join the growing number of users worldwidewho are discovering the exceptional quality,plus prompt delivery and significant costsavings. And the new year holds even morepromise now with our MB6A 8K RAM board[450 NS) reduced to just $165, and ourMB7 16K RAM board now only $449. Also,you might want to check out our newI/0-4 board that offers two serial I/O ports(2-I and 2-0) and two parallel ports (2-I and

Circle 102 on inquiry card.

2-0], eliminating jumpers, priced at $149.50.Seek out Cybercom's full and versatile lineat your local computer hobbyist store, orcontact us directly, if you want to build aworld of the future today.

CLjbBTCDm

A Division of Solid State Music2102A Walsh AvenueSanta Clara, CA 95050Telephone [408] 246-2707

Ask for The True Blues.

BYTE April 1978 87

memory addresses, would therefore accessitems associated in that dimension, ie: thesame set of input lines would activatedetectors for several ''similar" input pat-terns. Of course with a conventional pro-cessor it would be difficult to handle theappearance of a number of memory wordssimultaneously on the bus, but there are avariety of ways to emulate brain archi-tecture, from fast sequential processing tomultiple processors handling memorycontrol.

Finally, the "almost gate" mode ofoperation is probably responsible for thatmost impressive of all organic brain func-tions: the ability to make intuitive leapsthat defy the constraints of formal logic.When a computer, as presently constructed,has insufficient data to arrive at a solutionusing acceptable logical procedures, that'sthat. But the brain's gates can get therewithout all the "proper" inputs. They canget there with some of the essential elementsmissing if the input pattern is similar enoughto the correct one to get by the "almostgate." Thus, partial pictures of the stateof the world can still suggest correct inter-pretations. Of course, they may be wrong;they have to be tested against reality. Wemake mistakes; computers don't. But thevery feature of our processing that permitsmistakes also enables us to go beyond thelimitations of the data and make generaliza-tions and intuitive leaps. In a machine withsufficient power to test its solutions againstthe real world, the ability to make mistakesis not so serious a price to pay for theadvantages.

If you have come with me this far, youhave seen what I know, or can guess, aboutsome of the interesting relationships be-tween the brain and the computer. WhatI would like to do in this closing section isto share with you some of the speculationsof a brain scientist on that most fascinatingof all questions that can be asked about acomputer: "Could a computer designed byhumans really think and feel emotions andbe conscious?" It is a question without ananswer of course; we can never know forcertain about one another's subjectivemental experiences, let alone those of amachine. The question belongs to philos-ophy, if anywhere, and I am not a philos-opher. Working daily with the machine-likefunctions of brains, however, gives a certainperspective on the problem.

By this point it should be clear to youthat, while we are far from understandingall of the workings of the brain, those thatwe do understand have turned out to bequite comprehensible in terms of machine-like functions. The fact that its gates are

made of compounds of carbon and hydrogeninstead of silicon and germanium is hardlyreason to draw important distinctions. Inmy opinion there is nothing yet visible inthe brain to suggest the presence, or neces-sity, of any nonmechanistic property in its ^operation. Yet there is the mind and theuniverse of subjective experience, whichcertainly seem to be nonphysical. On theother hand, the mind is certainly at leastthe "captive" of the physical brain. Byappropriate electrical stimulation of yourbrain, I could cause you to feel rage, fear,joy or other emotions; I could cause you toexperience hunger, or satiety, or any othermotivation; I could cause you to rememberforgotten events, to see or hear things thatwere not there just as realistically as if theywere. All these things can be done bymanipulation of the physical brain. Theycan be done by electrical methods, surgicalmethods or pharmacological methods, allof which are physical operations on a physi-cal mechanical device. Yet, they surely andunerringly affect, even determine, the con-tent of subjective conscious experience. Ican vouch for it since I've done it (some ofit) to my own brain.

Now if the mind is the "captive" of thebrain in this sense, it must mean either thatthe mind is a nonphysical something whosenature and content is determined somehowby the state of the physical mechanical ^brain, or that the mind and the brain are oneand the same thing. I prefer the latter notionsimply because it requires fewer assump-tions. It says that the subjective experienceof our mental activities is simply the brain'sperception of its own operations. Accordingto this view, the operation of the visualfeature extractors, for example, is the ex-perience of the subjective visual perception.Not that the neural activity somehow causesor gives rise to the mental event, but thatthey are one and the same thing. The opera-tion of the limbic system is the experienceof emotion. The operation of the basalganglia is the willing of an action.

The point of view incidentally is notnecessarily "mechanistic" in the sense ofproposing that the mind is physical innature. It simply says that the mind whichwe experience subjectively, and the brainwhich we experience objectively throughthe senses, are one and the same thing ex-perienced in two different ways. Whetherthat "thing" is a part of the physical world(which is a construction of our brain by in-ference about the subjective sensory ex- ^periences we have), or a part of the mentalworld which we experience directly, isindeterminate. They may even both besimply interpretations of something else.

April 1978©BYTE Publications Inc

All that is said is that the operation ofthe machine-like brain as we know itthrough the senses, and operation of themind, are two ways of experiencing the sameunderlying process.

Now what does this imply about acomputer? It certainly does not implythat anything that can produce behavioridentical to that of a human being musttherefore have a mind and subjective ex-perience. As I have noted at other pointsin this series, our emotional experiences,subjective sensory experiences and otheraspects of our minds are all paralleled byparticular brain operations which havenecessary and useful behavioral functions.A good robot needs an emotion circuit be-cause it is helpful in generating and con-trolling adaptive behavior. A circuit thatperforms this function in the case of therobot, however, need not necessarily beassociated with a subjective experience.Even if it caused an advanced robot withlinguistic capability to be able to discussits "feelings," it would only imply thatthe circuitry in question gave the device theability to adjust its verbal output appro-priately in accord with the conditions itencountered, in a way similar to our own.

On the other hand, if the brain's opera-tion is the source of mental experience, andif the brain /sa physical mechanical device,it follows that a computer of similar com-plexity might have subjective mental ex-periences. The question hinges on just howthe operation of the brain leads to theoccurrence of that set of subjective ex-

periences we call a mind. If there is some-thing unique about the particular operationof the particular sort of physical device weknow of as a brain, and if that is a pre-requisite for mental experience, then clearlyno very different machine can have it. Ifon the other hand, the sort of subjectiveexperience we know is simply a concomitantof certain kinds of self-sustaining informa-tion processing operations, regardless of thephysical substrates performing them, thenit would not matter how the device wasconstructed.

Thus, the fact that the brain is under-standable in all its operations as a physicalinformation processing device can only tellus that it may be possible for a computer tohave subjective experience. Whether oneever does or not is not really an answerablequestion, I think that what it will ultimatelycome down to is that if our machines havethe capability of interacting with us in arational manner, and making comments thatwould indicate emotional experiences ifmade by another human, then we will cometo feel that they have subjective experienceand treat them accordingly. That, after all,is in the final analysis all that we knowabout one another.■

BIBLIOGRAPHY

Trehub, A, "Neuronal Models for CognitiveProcesses: Networks for Learning, Perceptionand Imagination/' J Theor Biol (1977) 65, 141169.

Circle 64 on inquiry card.

MORE 6800 SOLUTIONS:

FOR SWTPC 6800

AS-1 ANALOG INTERFACE MODULE

• FAST, ACCURATE A/D, D/ACONVERSIONS

• EIGHT ANALOG INPUT CHANNELS

• ONE HIGH-SPEED ANALOG OUTPU"

• OCCUPIES ONE I/O SLOT

• $87.50 KIT $115.00 ASSM.

SC-1 SERIAL INTERFACE CARP

• RS-232 SERIAL INTERFACE

• FULL CONTROL SIGNALSIMPLEMENTED

• MOST VERSATILE SERIAL I/OAVAILABLE

• $30.00 KIT $40.00 ASSM.

FOR MOTOROLA "D2"

fDA-1 UPGRADE KIT

• CONVERTS D2 TO TERMINAL I/O

• RETAINS FULL CASSETTE I/OCAPABILITY

• INCLUDES RT/68MX ROM -MONITOR/O.S.

• ALLOWS USE OF BASIC, EDITORS,ASSEMBLERS, ETC.

• RS-232 SERIAL INTERFACE

• DA1 w/70 p. MANUAL $69.95

MOTOROLA MMS68104 16K RAM

• 16K BYTES DYNAMIC RAM

• ENGINEERED SPECIFICALLY FOR "D2"

• EXORCISOR — TYPE BUSSV $395.00 ASSEMBLED

M6800 SOFTWARE

/A/BASIC COMPILER

• 8K EXTENDED BASIC COMPILER

• CONVERTS BASIC PROGRAMS TOFAST, MEMORY EFFICIENTMACHINE LANGUAGE

• DESIGNED FOR RT/68 —SUPPORTSMULTIPROGRAMMING

• EXTREMELY VERSATILE I/O

• KC CASSETTE + MANUAL — $49.95

RT/68MX OPERATING SYSTEM

• EXPANDEDCONSOLEMONITORROM

• REAL TIME OPERATING SYSTEM

• DIRECT MIKBUG REPLACEMENT

• PIA OR MULTI-ACIA I/O

V RT/68MX ROM w/MANUAL $55.00 J

U.S. Orders Postpaid

ree & VISA Welcome

Write or cal

Free Catalog.

MICROWVRE SYSTEMS CORPORATION

P.O. BOX 954 • DES MOINES, IOWA 50304 • (515) 279-9856

Circle 69 on inquiry card.

April 1978© BYTE Publications Inc

MICROSTATJONNO. 3

MICROSTATJONNO. 4

Figure 7 The system block diagram of the multiple microprocessor laboratory. This design allows each student team to have aseparate dedicated computer with a shared set of peripherals controlled by the main system. The use of a common mass storage yprinting and card input facility avoids the expense of having equivalent facilities at each student station. The ftmicrostations"are smalt computers with limited (but still interactive) resources.

A College Microcomputer

Bill Foster

Bob Southern

Algonquin College

200 Lees Av

Ottawa K1S 0C5 CANADA

Facility

Photo I: A group of students using the microprocessor laboratory describedin this article.

If a student were asked to design a labfacility for a course in microprocessor hard-ware and software at the college level, theequipment list could be formidable. Fromthe student's viewpoint there should be onecomputer per student or pair of students,with quick and simple edit capability, fastassembly, instant hard copy and a sourcefile that nobody else can erase. Otherdesirable features could be serial, paralleland bus access to the computer for hard-ware projects, access to callable IO routines,and simple system operation that would notneed an operator. With a budget of less than$20,000, the system first planned by thefaculty at Algonquin College in OttawaCANADA lacked many of the above fea-tures. However, by use of fast, shared input-output equipment plus simple multipointnetwork communications, such a facilitywas designed and implemented in eightmonths within the $20,000 budget. Ap-proximately 100 students in seven separatelab groups used this facility at AlgonquinCollege during 1977. Photo 1 shows someof the students, each in front of one of themicrocomputer stations. Figure 1 showsthe system block diagram, including themain computer, a Dynalogic DMS/6800

90

April 1978©BYTE Publications Inc

system with dual diskettes, and the nine busconnected microstations, each a stand alonecollege-built Motorola 6800 microcomputer.

Student programs written in assemblylanguage are entered via data cards, eitherpunched or mark sensed, and are assembledat the Dynalogic main station, which alsoruns Algonquin's batch software program.Listing of programs is optional, controlledby the students. The assembled program canbe executed right in the main station ordown-line loaded over a common data busto one of nine microstations. Each micro-station is essentially a 6800 microcomputerwith keyboard and LED display, wherehardware projects can be interfaced anddebugged via software or lab test equipment.Details of the microstations are discussedlater. A typical 50 card program can be read,assembled and transferred to one of themicrostations in less than 20 seconds. Ifa listing is also needed, the time wouldbe about one minute; hence the system veryeasily supports lab sized groups of up to16 students.

One might wonder why the card readerapproach was taken in the design of thissystem. Aside from the much reduced costcompared to diskettes and low speed ter-minals at each station, the card readereliminates the time lost in learning thesystem operation details and the intricaciesof an editor, which is a high overhead fora new student in a 1 semester course.Card input permits errors to be correctedquickly and also permits the student to havefull control over the source file. The marksense option permits students to prepareprograms anywhere, an advantage to nightschool students who may not have accessto a card punch between weekly classes.On the output side both time and costs aresaved by using one medium speed printer(100 characters per second), rather thanmany low speed hard copy terminals, suchas Teletypes.

This facility was available on an openshop basis to all students from 8 AM to mid-night daily, except during scheduled labperiods. After the first week the studentsoperated the system without help, withonly a few hours lost during debugging ofnew system software and hardware. TheDynalogjc DMS system itself operatedwithout failure of any kind during 1977.

Program Format and Operation Details

Program format is one instruction percard using the Motorola 6800 assemblylanguage. One job card is required to control

the destination of the assembled program.On it the job terminator (&) is followed bya single digit, 0, for the main system, or1 to 9 for the appropriate microstation.After the card deck is read, the assembleroffers the student the option of listing orno listing, the only necessary response dur-ing batch operations.

If the program's object code is to betransferred to one of the microstations, thestation's number is then announced on theconsole video display. If the microstation'sreceive program is already running, the fileis transferred after handshaking between themain station and the appropriate microsta-tion. If the microstation's receive programis not yet running, the main station willcontinue handshaking attempts along with arepeated console announcement of thedestination until the microstation responds,after which down-line loading begins. At9600 bps, most files are transferred in lessthan 1 second. Striking K on the consolekeyboard during listing or while waiting todown-line load an object file will kill thestudent's job, automatically starting thenext job.

At a particular microstation, a fresh copyof the object code is sometimes desirable,particularly during debugging operations.Typing L5 on the main station's keyboardreloads microstation #5's most recent objectfile from the main station's diskette, elim-inating the necessity of reentering a carddeck. Programs executed in the main stationhave available to them an extensive set ofcallable routines, such as OUTMES, whichoutputs a user message on the console CRT,and INTERM which inputs a character fromthe console keyboard, plus a set of read andwrite routines for the diskette.

Hardware

Figure 1 shows the two serial ports onthe main computer station, the 600 bpsterminal port connected to the consoleterminal, and the 9600 bps line port. Underprogram control, the line port can be steeredby the line switcher to communicate withthe card reader and line printer or to the"microbus," an RS-232-C serial bus con-nected to all nine microstations. The lineswitcher box also contains hardware forparallel interfacing of the card reader andline printer, as well as code conversion hard-ware for the card reader's output, convertingeither mark sense code or 029 punch code toASCII. The microbus uses standard RS-232-C signals, but with secondary channelpin assignments at the microstations, per-

Acknowledgements

Our sincere thanks goto Sam Zemlak and AndyOueliette who constructedand tested the lineswitcher and the ninemicrostations.

April 1978©BYTE Publications Inc

91

IFFF

IDOO

IA80

■300 -

18001700160015001400

4

400

300200100

0

MONITOR-PERMANENT SECTION

BATCH-RESIDENT SECTION

(OVERLAYS EXPENDABLE PART OF MONITOR)

LOADER

BATCH-READEXPENDABLE SECTION#

I

SYMBOLTABLE

SOURCEPROGRAM

ASSEMBLER

PHASE ONE

PHASE TWO

PHASE THREE

Figure 2: The main station which controis the entire system has this memorymap in its 8 K byte region of programmable memory. The three phases ofa batch processing operation of a given student's job are shown as a hori-zontal dimension of the memory map.

Photo 2: A closeup of a typical microstation with a student busy using it

92 April 1978 © BYTE Publications Inc

mitting the use of normal RS-232-C pin

assignments by the microstations for theirown serial communication with otherdevices.

System Software

The batch software is essentiallyDYNAMO, the Dynalogic monitor, exten-sively overlaid to support batch operation.Figure 2 shows the 8 K memory map duringthree main phases of the batch cycle. Duringphase 1 we see the source program in mem-ory, as read from the card reader, before itis written out on the diskette. Phase 2 showsthe assembler now in memory as it readsthe source file and outputs the object tileto the diskette. The symbol table builds upfrom address 1640, the top of the assembler,and may overwrite batch's read routinewhich is expendable after phase 1 is com-pleted. Up to 90 symbols are permitted.During phase 3 the object code is transferredfrom the diskette to the appropriate station.A program executed in the main station canuse up to 6 K bytes of programmable mem-ory (hexadecimal addresses 0000 to 18FF)and is written as a subroutine which returnsto batch upon completion. Batch itself isautomatically refreshed from the diskettebefore the next job, ensuring clean codeeven if it was previously overwritten by thesymbol table or by a runaway studentprogram.

Figure 3 shows the diskette track alloca-tions. Batch itself is stored on track 76. Thelatest source file, up to 6 K bytes long, isstored on tracks 74 and 75. The object codeis stored on tracks 64 to 73, with one 4 Kbyte track being assigned to each micro-station. This permits the reloading of an ob-ject file, as mentioned previously.

Microstation Operation

Photo 2 shows a student working at oneof the microstations. Each of the nine micro-stations is essentially a stand alone micro-computer complete with 2 K bytes of pro-grammable memory and several levels ofhardware interfacing. Debugging of thehardware can be carried out via programsdown-line loaded from the main station orvia short routines entered on the 17 keykeypad (shown in figure 4). A 4 digit LEDdisplay provides visual feedback to the stu-dent in either case.

Receiving and running a program loadedby the main station is relatively simple.The designated microstation is set into thereceive mode by depressing the control(CTRL) key followed by the receive (RCV)

key on the keypad. (Throughout the rest ofthis article, a sequence such as this will bedenoted as CTRL RCV.) The microprocessorwill then receive the program only after thehandshaking sequence takes place. Whenloading is complete, the hexadecimal start-ing address of the program is announced onthe microstation LED display. CTRL GOwill start execution of the program.

Manual Program Entry

Students are encouraged to enter shortprograms via the keyboard directly in hexa-decimal to improve their skills in usingmachine code. The initial starting addressis set up by CTRL LA followed by a 4 digithexadecimal address. The program is auto-matically loaded into consecutive memorylocations by CTRL LD followed by a seriesof 2 digit hexadecimal numbers.

Program Debug

A large variety of hardware and softwaretools have been provided for debugging pro-grams. These debug aids allow the studentsto trace through a program, stopping wher-ever necessary to look at internal registersand external 10 conditions.

A program can be checked by reloadingthe starting address and pushing CTRL XD.Each time XD is pushed thereafter, the nextbyte of machine code is displayed and theprogram counter is incremented. If at anytime an error is discovered, CTRL CH decre-ments the program counter and allows thestudent to change a byte. Besides providinga quick means of loading and checkingmachine language programs, the abovementioned keyboard control also allowsthe student to do hardware checks. Sinceinput and output ports look like memorylocations in the 6800 system, a student canload and examine data at these locations anddetermine whether a hardware interface isfunctioning properly.

Each of the internal registers of themachine can be examined at any time bypushing CTRL ST (assuming that the pro-gram has stopped and the microstation isnow under keyboard control). The stackpointer, condition code register, accumula-tors A and B, index register, and programcounter are each displayed in turn as ST ispushed. Further flexibility is provided bythe single instruction (SI), go trap (GT),and software interrupt instructions whichpermit controlled return to the user atspecific points in the program. Some of thefeatures of these routines are describedbelow.

TRACK 76 -

- BATCH OBJ

7574

\ SOURCEJ FILE

73

OBJ FILE FOR NO. 9

72

" NO. 8

71

NO. 7

70

NO- 6

69

NO. 5

68

NO. 4

67

NO. 3

66

NO. 2

65

NO. 1

64

OBJ FILE -MAIN (0)

7 \

k SYSTEMSOFTWARE

Controlled Execution: SI and GT

Single Instruction Routine (SI)

CTRL SI executes a single instruction ofthe user's program and returns to keyboardcontrol. The address of the next instructionto be executed is displayed on the hexa-decimal LED display. Thereafter, each timeSI is pushed, an additional single instructionwill be executed. Two modes of single in-struction are available, each of which can beentered at any time by setting or resettinga flag via the keyboard. The first mode(default mode) returns to the user after eachexecuted instruction, except for subroutines,where return to the user occurs only uponsubroutine exit. The second mode, which isentered by depressing CTRL F on the key

XMT

: 7

RCV8

GO9

CHA

B

SI4

GT5

ST6

C

D

••

LA

1

XO2

XA

3

E

f ;

LO0

CTRL

Figure 3: Allocation of themass storage on a floppydisk. In order to allowquick reloading from themicrostations, the currentmicrostation object file iskept for each microsta-tion, dedicating one trackper microstation and onetrack to the main com-puter's object file. Thusif a program blows up ina student's system, it canbe reloaded (and patched)without reassembly.

Figure 4: Detail of amicrostation keypad. Thenormal mode of opera-tion is hexadecimal input;when the CTRL key isfollowed by any otherkey, one of the 7 7 specialfunctions (see text) isperformed.

April 1978 © BYTE Publications Inc 93

TWO 44 PIN

INTERFACE

SLOTS

II

9:5

3

l£

INTERFACESLOT

Sfc

7^7

I53.6KH2 CLOCKGENERATOR(9600 BAUD)

PIA FORSTUDENT USE

n

<^S

DATAIN

RS-232

RECEIVER

CLOCK

ACIA

7S

DATAOUT

THREE STATE

RS-232

DRIVER

RTS

J-

n

ADDRESS A '-TROL

.2.

CJI

31

n

BUFFERS

I

BUSTRANSCEIVERS

ADDRESS,VMA, R/W,02

6800 MPU

RESET 01 02

+ 5V

J3.3K

CLOCKGENERATOR

/tFU< »"■

REE STATEBUFFER

RESETCIRCUIT

+ 5V

SWITCH TO

ENTER NMI

ROGRAM

PIA

IRQB

-O OUT

ENABLE

<*L

PAOPA IPA 2PA 3PA 4PASPA 6PA7

PBOPBIPB2PB3PB4PBSPB6PB7

CBI

CB2

r^

SERIAL LINETO OTHERMICROSTATIONS

+ 5V

CTRLKEY

-k

KEYBOARDMATRIX

}

STROBES

DATA

HEXADECIMAL

DISPLAY

BOARD

Is

H>

CARRYP

LOAD

74163SINGLEINSTRUCTIONCOUNTER

CLK

A B C D

fSV

m

pad, executes each instruction separately,including those of the subroutine. Return tothe first mode is accomplished by CTRL E.

Go Trap Routine

This is a breakpoint setting routine whichcan be invoked at any time by CRTL GTplus a trap address. The program runs fromthe present program counter value and con-tinues until it reaches the trap address. Thisroutine permits the student to check out aspecific section of a program.

Software Interrupt Routine

This is a user subroutine which, whencalled, simply returns the program to key-board control. The student can insert thesesubroutine calls inside the program. A key-board control feature allows him or her toignore some or all of these breakpoints. Thisroutine is particularly useful for debugginginterrupt programs.

Hardware Interfacing

Serial data devices can be interfaced tothe microprocessor via a standard 25 pinconnector connected to an asynchronouscommunications interface adapter (ACIA).Parallel interfacing is provided via a 44 pinconnector and a peripheral interface adap-tor (PIA). Students who wish to design theirown interfaces can connect directly to themicroprocessor's bus via two 44 pinconnectors.

Implementation

A block diagram of the necessary hard-ware for the system is shown in figure 5.In actual fact more hardware was used be-cause the Motorola Evaluation module wasalso part of the system. The 2708 erasableprogrammable read only memory containsthe system software which is accessed viathe nonmaskable interrupt (NMI) instruc-tion. Initially the NMI is caused by the userpushing a button on the front panel of themicrostation. The beginning of the interruptroutine initializes peripherals, waits for thecontrol key to be pushed, and jumps to oneof the control programs based on the en-coded value of the next noncontrol key.These control programs are discussed sepa-rately below.

LA, XA, LD, XD and GO Programs

These programs involve the programcounter (PC) in some way. Setting up orexamining the program counter cannot be

STACKPOINTER

AFTERINTERRUPT

cc

X AFTERTSX

B

A

*H

XL

STACK

PCH

* (5,X)

POINTER

PCL

* (6,X)

BEFORE

INTERRUPT

achieved directly in the 6800 because noinstruction permits it. The user's programcounter can be set up only during an inter-rupt of the user program. At this time theuser's counter is stored on the stack (seefigure 6). It can be located without changingthe stack pointer by transferring the stackpointer to the index register using the TSXinstruction. Locations (5, X) and (6, X)now contain the counter value which can beexamined or changed at will. Once the pro-gram has been loaded, the student can runa program by doing a CTRL GO, whichcauses a return from interrupt to occur.

Debug Routines: ST, SI, GT andSoftware Interrupt

Stack Routine (ST)

When a program is interrupted, the con-tents of all the registers are stored on thestack. A CTRL ST permits the examinationof each of these registers. This is done bymoving up the stack and outputting thecontents of each register on the LED dis-play. Further movement up the stack allowsthe student to look at previous activity onthe stack. The stack pointer is displayed atthe beginning of the ST routine, permittingthe student to follow this activity.

Single Instruction Routine (SI)

Here the user program is started, butinterrupted after execution of the firstinstruction. This is done by loading thesingle instruction counter (see figure 5),allowing it to start counting, and then per-forming a return from interrupt (RTI) in-struction. The RTI instruction takes tencycles, after which time the user's programwill start running. The counter is designedto cause a nonmaskable interrupt (NMI)after 11 cycles, which will be exactly onecycle into the user's program. Thus the NMI

Figure 6: The stack frameafter an interrupt in aMotorola 6800. in orderto reference the stackframe, the content of thestack pointer is transferred(and incremented in theprocess) to the index reg-ister, which ends up point-ing to the stack frame'sfirst element.

April 1978 ©BYTE Publications Inc

95

IDS

INTERNATIONAL DATA SYSTEMS, INC.

400 North Washington Street, Suite 200, Falls Church, Virginia 22046 U.S.A.Telephone (703) 536-7373

88-MODEM: A complete serial I/O port and an Originate/Answer MODEM on anS100 bus compatible board, The 88-MODEM features automatic auto-dialer (notsoftware timed), operates at any software selected baud rate between 66 and 600baud, has separate 8-pole transmit and receive active filters, and all functions aresoftware selected. The 88-MODEM provides communication to -58 dbm and is intendedfor use with either a CBS (1001D) or CBT Data Access Arrangement for connectionto the telephone system. The kit price is $245.00.

88-UFC UNIVERSAL FREQUENCY COUNTER: The 88-UFC is an S100 compatiblefrequency and period measurement module. The 88-UFC has four software selectedinputs. Frequency measurement to above 600MHz and period measurement to 1 /10thmicrosecond are standard. The counter provides nine digits of readout and is pricedat $179.00 in kit form.

l^': ■ " ■--; L I ~Zj

88-SPM CLOCK MODULE: The 88-SPM provides a time of day clock and an inde-pendent realtime clock on one S100 compatible module. Provisions are included forbattery backup so the 88-SPM can maintain the time during power-off conditions.$96.00 kit

1001D (Type CBT) Data Access Arrangement $125.00

88-RCB 16 Channel Relay Control Board Kit $179.00

MCTK Morse Code Trainer/Keyer Kit 29.00

TSM Temperature Sensing Module Kit 24.00

DAC-8 8-Bit Digital to Analog Converter Kit 19.0088-TCXO Temperature Compensated Crystal

Oscillator for 88-UFC 145,00

88-XTAL Crystal Timebase option for 88-SPM 25.00

TERMS: Payment with order shipped prepaid, added for COD, Master Charge accepted

will return the microstation to keyboardcontrol as soon as the first instruction of theuser's program has been executed.

Go Trap Routine (GT)

This stores the trap address and executescontinuous single instructions until the pro-gram counter equals the trap address.

Software Interrupt Routine

Motorola's SWI instruction was notused to provide this function because theMIKBUG read only memory vectors thesoftware interrupt to its own breakpointroutine and thus makes it unavailable toany other firmware in the microstation.In order to provide the equivalent of theSWI instruction, a software interruptsubroutine is made available to the user.This subroutine uses the single instructioncounter to cause an interrupt.

RCV Program

Our receive program is similar toMotorola's MIKBUG Load routine with afew added features. One feature is the hand-shaking. The microstation must receive amicrostation identification number andreply with the same number before it canreceive data. Since all the microstations areon a common bus, a transistorized threestate RS-232-C output is provided for theline. Another feature of the RCV firmwareloads the address of the first data block intothe program counter (via the stack) and re-turns the microstation to keyboard controlso that CTRL GO causes immediate exe-cution of the program.

Future Plans

An Altair 8800 with a resident assemblerhas been acquired to act as one of the micro-stations. It will receive and assemble 8080source programs that have been sent fromthe card reader via the microbus and willthen provide a listing to the line printer ifso desired. Finally, it will either run the joblocally, inside the Altair computer, or willdown-line load the object file to one of eight8080 microstations that will be located ona second microbus.

Summary

The final acceptance test of any system isalways provided by the user, who in thiscase is the student. The students' reactionshave been very positive judging from theway they handle complex software and hard-ware projects on the system during thesemester."

96 April 1978 © BYTE Publications Inc

Circle 58 on inquiry card.

Workhorse orHorseplay?

Software systems from TSC are designed fortough business and industrial uses on the jobor just plain fun off the job. Whether you arelooking for a system to be used primarily ina working situation or a system for the home,look into TSC software.Assembly Language Programs (IncludesSource Listings)

SL68-29 680G Text Processing System* $32.00SL68-24 6800 Text Editing System* $23.50SL80-10 8080 Text Editing System $28.50

SL68-26 6800 Mnemonic Assembler* $23.50SL68-19 6800 Micro BASIC Plus* $15.95

SL80-9 8080 Space Voyage $12.00

SL68-5 6800 Space Voyage* $12.00

SL68-27 6800 Disassembler $ 9.00

SL68-28 6800 Program Relocator $ 8.00

SL80-8 8080 Blackjack $ 6.50

"Kansas City Standard object code cassettetape available for an additional $6.95.Paper tapes available for some programs.Send 250 for complete catalog.

Technical SystemsConsultants, Inc.

BOX 2574 W. Lafayette, Indiana 47906317-423-5465Specialists in Software & Hardware for Industry & the Hobbyist

Circle 11 2 on inquiry card.

Program-of-the-Month Club™

One year membership for $2.00. Discounts

offered with no obligations.

To Order: Include 3% postage, $1.00 handling

on orders under $10.00, and Indiana

residents add 4% sales tax. Check your

dealer!

TSC Monthly Feature:

8080 Text Processing System

Over 50 commands in the Text Processor allowtormatting capabilities such as multiple spacing,indenting, saving contiguous text, various formsot justification, titling, page numbering and linelength control. Macros are supported tor specialuser-defined formatting commands allowingfootnotes, form letters, etc. There are evennumber registers for variable storage, condi-tional commands, and terminal prompts.

The text file must be edited externally. The TSCText Editing System is recommended, as it andthe Text Processor give your computer the powerof the most complete text processing systems. Thecomplete assembler language source listingis included.

SL80-11 8080 Text Processing System $32.00With Paper Tape $41.00

BYTE April 1978 97

The disk system you want

at a price you didn't expect from a

company that understands systems.

98 BYTE April 1978

THE VISTA *50FLOPPY DISCOUNT

We know that one of the biggest problems inpersonal computing is that you're buying withyour own personal dollars.

That's precisely why you're going to likedoing business with us.

We're Vista Computer Company, the personalcomputer systems brainchild of the business com-puter systems people at Randal Data Systems.

And our V80 Floppy Disk System is a perfectexample of how we're prepared to help you get themost out of your personal computing dollars.

$649 buys you thewhole kit and kaboodle

The $649 you spend on a Vista V80 FloppyDisk System ($749 assembled) gets you every-thing you need:

An 80K byte minifloppy drive (assembled andtested) that can be powered directly by your8080 or Z-80 computer. (Case and powersupply optional.)An I/O cable and asingle card, S100 bus-compatible controller kitthat handles up to fourdrives and includes a PROMfor bootstrap loading (addi-tional drives just $399).VOS, the most advancedmicrocomputer disk operatingsystem available, and ourBASIC-E compiler, designedto work with VOS, all on a

single diskette. Software functions includeinstantaneous program loading, named dynamicfiles, program editing, assembling, debugging,batch processing, and file copying on back-updiskettes.

All backed by the Vista 90-day warranty, mem-bership in VUE (Vista Users' Exchange), andDataforce, our associated service company with115 locations throughout the country.

Test drive the V80at your local computer store

Drop by your nearest computer store and runthe V80 through its paces. Once you find out whatit can do for you, you'll see that our combinationof high performance and low price is hard to beatand easy to take.

We love to take orders

If you'd like us to ship you a Vista V80 FloppyDisk System, they're available now. Just send us acheck or money order for the amountof purchase, or your BankAmericard/VISA or Master Charge accountnumber with expiration date andauthorized signature. California resi-dents add 6% sales tax. Uncertifiedchecks require six weeks processing.

To place your order, or to obtainfurther information, call or write today.

Vista Computer Company, 2807Oregon Court, Torrance, CA 90503.(213)320-3880.

Vi/tci

We never forget it's your pocket

Circle 120 on inquiry card.

BYTE April 1978

99

Continued from page 35

Listing 4: 16 bit integer multiplication; only the rightmost bits are retained,making this multiplication also valid for 76 bit unsigned integers. If 11-13are in lower 255 bytes of memory, the product will be formed in about 140machine cycles. The stack, index register and operands are all unchanged.

00002

8C 1C

FM

EQU

S801C

0000.5

80 ID

SM

EOU

FM+1

00004

801t

URP

ECU

SM+1

oooos

80]

F

LRR

ECU

URP + 1

OOOOO

0000

0002

I 1

RMd

2

00007

0002

0C02

I 2

RMH

2

00008

0004

0002

I 3

RMd

2

00009

0100

ORG

il 00

00010

*

0001 1

*

SLdROUTINE MPYltoT

00012

*

0001 3

*

purpose: TO MULTIPLY TtfO 16 81 T

00014

*

TWOS COMPLEMENT INTEGERS GIVING

00015

*

A lb BIT T*OS

COI*PLFMENT RESULT

00016

*

00017

*

parameters:

00018

*

00019

*

I 1 —

TWO BYTE FOR CNE MO

00020

*

I 2

TWO BYTE AREA FOR Q

00021

*

13 —

TWO BYTE PRGDOCT

00022

*

00023

*

restrictions:

00024

*

00025

*

ACCA AND ACCB

ARE DESTROYED

00026

*

USES HARDWARE

MULTIPLIER

00027

*

00028

0100

86

Ct>

MPY16T

LDA

A

#6

SET MULTIPLIER TO

O0029

0 102

87

eoiF.

STA

A

URP

STRIP BOTH SIGNS

00030

0 105

96

01

LDA

A

I 1 + 1

FCRM PRODUCT CF

00031

0107

07

fcOlC

STA

A

FM

SIGN STRIPPED

00032

01 OA

DCs

C3

LCA

B

12+1

A2 AND d2

00033

010C

F7

801D

STA

B

SM

00034

010F

b6

eoiE

LDA

A

URP

STORE IN 13

00035

0 112

97

04

STA

A

I 3

00036

01 14

36

801F

LDA

A

LRP

00037

0117

9 7

C5

STA

A

13+ 1

00038

0119

7F

801E

CLR

URP

CLEAR STRIPPER

00039

o i tc

F7

eoic

STA

U

FM

REMEMBER B2 IS

00040

01 IF

96

00

LDA

A

1 1

IN ACCB

00041

0121

B7

801D

bTA

A

SM

FORM B2*A1

00042

0124

R6

801F

LDA

A

LRP

0 0 043

0127

93

C4

ADD

A

13

ADD TO PRODUCT

0 0 044

0 129

97

C4

STA

A

I 3

00045

0 12R

96

C2

LDA

A

12

FORM B1*A2

00046

0 1 2D

87

801C

STA

A

FM

00047

0 130

96

Gl

LDA

A

I 1 + 1

00048

0 132

87

801D

STA

A

SM

0 0 049

0 1 35

hJ6

801F

LDA

A

LKP

0 0 050

0138

98

04

ADD

A

13

ADD TO PRODUCT

0 0 051

0 13A

97

C4

STA

A

13

0 0 052

0 13C

96

01

LDA

A

I l + l

00053

0 13E

OC

CLC

PREPARE FOR ROR 3

00054

0 13F

5D

TST

B

BETA 8 SET?

00055

0 140

2D

C4

BLT

TRYA2

00056

0142

4D

T bT

A

ALPHA 8 SET?

00057

0143

2D

C5

BLT

ONLY A

0 0 058

0145

^9

NTS

WE GOT LUCKY

00059

0 146

40

TRYA2

TST

A

ALPHA 8 TOU7

OOOoO

0 147

2D

OF

BLT

BOTH

0006 1

0 149

16

TABMPY

TAB

O0062

0 14A

56

ONLY A

RCR

B

SHIFT RIGHT

0 0 063

0 14R

24

C6

BCC

ZOUT

CNE UUT7

00064

014O

at

eo

LDA

A

#*80

YLS - ADD IT

00065

0 14F

98

C5

ADD

A

13+1

TC LEFT PRODUCT

0 0 0fc6

0151

97

C5

STA

A

13+1

0 0 067

0153

D9

04

ZCUT

ADC

d

13

ADD REST TO

0 0 Ob 8

0 155

D7

04

STA

d

13

LEFT PRODUCT

00069

0 157

39

RTS

0 0 070

0 158

1 8

8QTH

A 8A

UNLUCKY CASE

0 0 071

0 159

88

80

ADD

A

*S80

ADJUST CARRY OUT

00072

0 1 50

20

EC

BRA

TAUMPY

00073

END

MULTIPLICAND

the adding), which is not even a negativenumber (considered as a 14 bit product plussign). Extending the most significant 1 tothe left seems to help at first until one con-siders the problem 30 X 17: as 8 bit num-bers, we have 30 = 00011110,17 = 00010001and their multiplication by the above schemegives the same 000000111111110; since noone would agree that 510 = -2, somethingmust be wrong. A clue was mentionedearlier, something about leading ones beinginsignificant for negative numbers. Sure;well, at least it's worth a try.

Let's create 16 bit numbers from A and Bby extending the sign bit of each to the lefteight bits, and carry out the usual unsignedbinary multiplication algorithm on these 16bit numbers (keeping only the rightmost 15bits). The product will be the correct (ex-cept for overflow, which results in -128X-128 "=" -16384) 14 bit two's comple-ment number plus sign. In algorithm 1, thisprocess is described; M6800 assembly codeis given in listing 3 to implement this logic.

Integer Arithmetic

The multiplier we used for fast address-ing performs the function just described,multiplication of two 8 bit two's comple-ment numbers giving a 14 bit product plussign. We now consider application to fixedpoint arithmetic. We start with 16 bit two'scomplement integers; the PDP-11 series ofminicomputers, for instance, and some ver-sions of BASIC have integers of this type.In an 8 bit computer, such an integer A isstored in two successive bytes, say Ai andA2; we must also speak of the bits in A, sayOiQa] . . . cq5 and the number a2 formedfrom A2 by replacing ag by 0 (ie: a2 = 0a9 • • ■ a15)- m figure 4, we display theproduct of two numbers A and B repre-sented this way without the as and |3s.

On the left, we display in a vertical col-umn the subscripts of the |3j, and next toeach j the subscripts of the cvj which j3; mul-tiplies. The product is formed by summingeach vertical column with carry. We can seemuch of this pattern is made up of parts ofan 8 bit two's complement multiplication:for example, the part in the upper right cor-ner is a2b2 (recall a2 is the positive two's

100 April 1978 ©BYTE Publications Inc

ARTEC CRAFTSMANSHIP HAS CREATED

The FirstTruly SilentMotherboard

Noise in your bus lines means errorsin your programs. The Artec shieldedMotherboard totally eliminates noise.

At 4MHz, the Artec shieldedMotherboard is free from spuriousnoise. No ringing in your bus lines.No errors in your programs.

This Motherboard offers youengineering and craftsmanshipnever before available in the smallcomputer field. Outstanding aseither a replacement for yourpresent Motherboard or as theheart of a new system. Con-sider these features:

■ Vsth inch thick—more than twice as thickas most Motherboards.

■ Totally shielded—all holes platedthrough; full bus terminations

■ Fits easily into any stan-dard chassis.

■ Masterite edgeconnectors—thefinest quality con-nectors available.

■ Reflowed solder circuitry

■ No soldering required.

■ Designed for the S-100 bus.

The Motherboard price

$190(ASSEMBLEDf

Five years of experience in every card

For five years, Artec has worked hard to de-velop a complete line of custom, prototype andoff-the-shelf printed circuit boards. And in fiveyears of tough industrial use, Artec boards haveproven themselves among the most reliableboards available anywhere.

NEWS DEC® and Heath Compatible LSIBoards

The new Artec WW11 lets you adapt or addonto your DEC LSI-11 .or Heathkit LSI mini-

computer. Can accom-modate 14 and 16 pin *DIPs plus all necessarypassive components.FULL CARD $75

(10.45" x 8.4")

HALF CARD $35

(5 225" x 8.4")Circle 6 on inquiry card.

® Trademark of Digital Equipment Corporation

Order today!

Put an Artec board to work for you. Use yourMastercharge or Visa. Or just send along amoney order. We can accept only U.S. currency.Please include $3 handling on all orders. Califor-nia residents add 6% sales tax.

„Mm„MmMMMWmm„^m~,m — ««-«-™»

Please send me: (include quantity)

Shielded _ FullWW11

Motherboard Card

HalfWWHCard

□ I've enclosed a money order for $

□ Mastercharge □ Visa

(number)

(exp. date)

Name

AdrirpRR .. J

City State 7ip

Calif. Res add 6% sales tax End. $3 handling. 10% discount for students and icomputer club members. (Please enclose name of club or school)

.... ,,,.„,

dRrecaecTioirajNc.

Artec Electronics, lnc.»605 Old County Rd.-San Carlos, CA 94070(415) 592-2740

BYTEAprilT978 101

WORD 1

Figure 5: Alignment of therightmost 16 bits of aproduct of two 16 bitintegers, relative to two8 bit words of memory.Note the overlap (*) ofthe otgfig term which ap-pears twice. This overlapis also seen in figure 4,which was used to de-rive this partial productrepresentation.

WORD 2

i 0

1

2 3 4 5 6 7

8

9 10 11 12 13 14 15 |

i

0

0

a2 ^2

i

\ i

A1 B2

1

■ i

A2B1

ii

i

1

*

<*8 B2

i

I

*

% A2

1i1

Source of Intermediate Term

8 bit two's complement multiply8 bit two's complement multiply8 bit two's complement multiply

program logic

A Note about theFlowcharts...

the flowcharts labelledalgorithm / to algorithm4 in this article weresupplied in camera readyform by the authors. Theywere produced at TexasA&M University usihgflowchart documentationpackages and plotter out-puts* They provide anekcellent illustration ofpractical applications ofcomputer technology Inthe field df illusttationand drafting.

Algorithm 2: A 16 bitsigned two's complementmultiplication, imple-

mented with 8 bit by 8bit signed two's comple-ment operations (productsA2*B2, A1*B2, A2*B1 asdefined in text). This iscoded in 6800 assemblylanguage in listing 4, usingthe MPY-8AJ hardware.

CLERR

(exTt)

c

ENTRY: |B BMULT I PL I CRT ION

i

FN

STRIP 5 1EN5DF R2 RNI> B2HND MULTIPLY

5T0RE PRODUCT

s

FDRM Rl*B21-

RDD RIGHT S BIT5TD LEFT PRODUCT

FORM R2*Blf

ROD RIBHT e BIT5TO LEFT PRODUCT

RDD I2BTO RIEHTPRODUCT

3lT B \ b 5ETOF R ^~^~ ^

fCLERR

RDD BlTD Rl

V

CORRECT FORCRRRY-DUTBY RDDINBI2B TO Rl

?

MDVE RlTD Bl

ZZ5

RDD WITH

CRRRY Bl

TD LEFT

PRODUCT

(exTT)

102 April 1978 ©BYTE Publications Inc

Prototype Boards...Adapters to S-100 Bus...

Heath H-8, Radio Shack TRS-80, SBC-80/10, Pet,Kim, SWTP 6800, Motorola Exorciser...

We supply adapters to permit using most S-100 boards for nearly all of the popular microprocessor systems; our HeathH-8 and SBC 80/10 adapters plug into their respective mainframes and piggyback one S-100 board. To use additional S-100boards, you simply go to an external S-100 backplane with a ribbon cable. The Radio Shack (Tandy) TRS-80 adapter is connected byribbon cable and is an S-100 size board that plugs into any S-100 backplane (a variety of backplanes are available from us). Similaradapters will be introduced shortly for 6502 and 6800-based systems such as the Pet, Kim, SWTP 6800, and the Motorola Exorciser.

The introductory price of the H-8, SBC 80/10 and TRS 80 adapters in kit form are $ 49.95

Price is subject to change without notice.

1115 S-100 GENERAL

flUos.)

WIREWRAP

IBfARDl

iiinu

$ 20.95

1190 HEATH H-8 G-PBOARD (mm.) ......$ 29.95

1191 HEATH H-8 WIREBOARD... . $34.95

1204 HEATH H-8 EXTENDERf llOARD $ 24.

■ 1 - ■■: 11

I 1111192 MOTOROLA

G-P BOARD |j|;|||

?ft93 MOTOROLA

$15.95$ 8.95

illinium

lllllllllllltlllllllllll

lllllllllllllllll

■...•■■ 1 1

■•■■■■i

111 ■• ■ : ,11! 1.

Hmuiuffiiin

jiui

mum

DEC PDP-8, PDP-11, LS1-11,HEATH H-11 - QUAD WIDTH

mm.} Special Price . $31.95

DUAL WIDTH $18.95

Excelfent value for any home brewaoDlication!

SBC 80/10 Prototype Boards —COMING SOON!!!

Memory and video boards available for Heath H-8 system. Send stamped, self-addressed envelope for details.

Heath and SWTP boards come with appropriate connectors. General Purpose (G-P) prototype boards can be used either for point-to-point wiring or with wire-wrap sockets; obviously, wire-wrap versions intended for wire-wrap sockets and wire wrapping only.

Add $1.50 per order for shipping, handling, and insurance.

Available from your favorite dealer.. .OR

Gs.LEt'ion

Circle 19 on inquiry card.

P.O. Box 6215, Syracuse, New York 13217 (315) 422-6666

BYTE April 1978 103

BYTE 1

BYTE 2

BYTE 3

i 0 1

2 3 4 5

6 7

is

i

15

i16

...

\2Z\

a-| b

1

0

1 11

s

i

f

a1 t>2

0

1

s

(a-j b3)R

s

1

E

2 t>1

0

s

(a2 62)R

s

(a3 b|)R

s

a8Bi

a8B2

I

s

a16B1

1

s

1

^8 At

J38 A2

s

^16 A1

••••

Figure 6: When performing floating point operations, a 24 bit mantissa isconvenient. Here is shown a partial product breakdown, with components ofthe products designated as in figures 4 and 5. The hardware multiplier is usedto form partial products marked with a star (it). The term R indicates partialproducts formed with the multiplier's rounding input active. This partialproducts sum assumes positive operands; the use of signed operands is ac-commodated by extending the sign bit (most significant bit) left as indi-cated by arrows. As in other illustrations of this article, bits are numberedfrom the most significant (0) to the least significant (23).

complement number Oag ... #|c b2 thenumber 0j39 ... £15). Also, the lower tri-angle is the least significant eight bits of theproduct B-|A2- In figure 5, the alignment ofthese partial sums is displayed relative totwo 8 bit words which contain the product.(A little calculation shows that the productA2B2, as an 8 bit two's complement prod-uct, is of little use; only the rightmost eightbits will be correct. The wedge left over inthe center would be the leftmost bits ofOao, . . . oq4 X 0j3g . . . j3i4 were it not forcarry from the right part of this product.)

While it is easy to change A2 into a2 (forexample, if A2 is in accumulator A, theinstructions LSR A; ROL A do the trick ina mere four cycles), it seems a good thing forhardware to be doing. Recall our "port" isfour bytes wide and we are only storingmultiplicands in two of them. A third canbe used for a "condition set." We might, forinstance, use bit 5 to strip the sign from thecontents of FM, bit 6 to strip the sign fromSM (the first and second multiplicands). Weuse URP for the address of "condition set."Algorithm 2 shows one order in which theparts of figure 5 can be formed and added.Note that most of the additions do notrequire carry out.

The program in listing 4 is at least threetimes faster than usual 16 bit multiplication

^^^^^4_C has introduced

packa6e -^JJSSe) and can M conf*» , dis„,c,

(single or double tn manufacturer, * tested

So8 system,At thj ume ^ s s of t ^ ^

and a <**na*jT* While thousands more vand proven package. ^ , the«£ d

Dealer ,„*«£ ^S 23* Jj-^TfiS 'repSrv-own company can be money ^ ^ ..^AVAILABLE

,5t. Your own — -

,QAMS NoW AVAILABLEPROGRAMS NU«

General Ledger , Lab0r Distnb^on

.Accounts Payable .. SaleS Analysis

i Accounts Receivable . purchaSing

» inventory

• order Entry

• Billing

6800 Application Software from

AVAILABLE SOON

Medical

P. 0. BOX 530MUNDELEIN, IL60060

104

April 1978 ©BYTE Publications Inc

Circle 48 on inquiry card.

Order your Apple II now.

from any one of the following authorized dealers:

Computerland3020 University Dr. N.W.Huntsville 539-1200The Computer Center303 B. Poplar PlaceBirmingham 942-8567

ALASKA

The Alpha Corporation100 W. Int'l Airport Rd.Anchorage 279-1316

Team Electronics

Anchorage 276-2923Anchorage 272-4823Fairbanks 456-4157ARIZONAByte ShopTempe 894-1129Phoenix 942-7300Tucson 327-4576CALIFORNIA

A-VIDD Electronics2210 Bellflower RoadLong Beach 598-0444Byte Shop

Citrus Heights 961-2983Palo Alto 327-8080Pasadena 684-3313San Jose 377-4685San Mateo 341-4200Santa Clara 249-4221Walnut Creek 933-6252ComputerlandElCerrito 233-5010Hayward 538-8080Inglewood 776-8080Mission Viejo 770-0131San Diego 560-9912San Francisco 546-1592Thousand Oaks 495-3554Tustin 544-0542

Computer Components

5848 Sepulveda Blvd.

VanNuys 786-7411

Computer Country

506 E. 1st. St.

Tustin 838-4770

Computer Playground

6789 Westminster Avenue

Westminster 898-8330

Computer Store

1093 Mission St,

San Francisco 431-0640

The Computer Store

820 Broadway

Santa Monica 451-0713

Electric Brain

3038 N. Cedar Ave.

Fresno 227-8479

Home Entertainment Emporium

2100 Sepulveda Blvd.

Manhattan Beach 546-2501

Rainbow Computing, Inc.

10723 White OakGranada Hills 360-2171

Strawberry Electronics

71 Glenn Way #9

Belmont 595-0231

COLORADO

Byte Shop

3464 S. Acoma St,

Englewood 761-6232

Team Electronics

Boulder 447-2368

Colorado Springs 596-5566

Fort Collins 484-7500

Grand Junction 245-4455

Greeley 356-3800

Longmont 772-7800

Pueblo 545-0703

CONNECTICUT

Computerland

2475 Black Rock Turnpike

Fairfield 374-2227

The Computer Store

63 S. Mam St,

Windsor Locks 627-0188

DELAWARE

ComputerlandKirkwood HighwayNewark 738-9656

Circle 4 on inquiry card.

FLORIDAByte Shop

Ft. Lauderdale 561-2983Miami 264-2983GEORGIADataMart, Inc.3001 N. Fulton DriveAtlanta 233-0532

HAWAII

Real Share

190 S. King Street #890

Honolulu 536-1041

ILLINOISComputerland

Arlington Heights 255-6488Niles 967-1714Oaklawn 422-8080

Data Domain1612 E.Algonquin Rd.Shaumburg 397-8700Itty Bitty Machine Company1316 Chicago AvenueEvanston 328-6800Team ElectronicsCarpentersville 428-6474Decatur 877-2774Galesburg 344-1300Moline 797-8261Peoria 692-2720Rock Island 788-9595Rockford 399-2577Schaumburg 882-5864Springfield 525-8637INDIANAThe Data DomainFort Wayne 484-7611Bloomington 334-3607West Lafayette 743-3951Indianapolis 251-3139The Home Computer Center2115 E. 62nd St.Indianapolis 251-6800

IOWA

The Computer Store4128 Brady St.Davenport 386-3330Team ElectronicsAmes 232-7705Bettendorf 355-7013Cedar Rapids 393-8956Davenport 386-2588Dubuque 583-9195Iowa City 338-3681Sioux City 252-4507Sioux City 277-2019Waterloo 235-6507Video Midwest, Inc.2212 Ingersoll Ave.Des Moines 244-1447

KANSAS

Barney & Associates425 N. BroadwayPittsburg 231-1970Team ElectronicsGarden City 276-2911Hutchinson 662-0632Lawrence 841-3775Manhattan 539-4636Salina 827-9361Topeka 267-2200Wichita 685-8826Wichita 942-1415Wichita 682-7559

KENTUCKY

Computerland813 6. Lyndon LaneLouisville 425-8308The Data DomainLexington 233-3346Louisville 456-5242MARYLANDComputerland16065 Frederick RoadRockville 948-7676Computers, etc.13A Allegheny Ave.Towson 674-4742

MASSACHUSETTS

The Computer Store, Inc.120 Cambridge StreetBurlington 272-8770

MICHIGANTeam Electronics

Escanaba 786-3911Menominee 864-2213

MINNESOTATeam Electronics

Minnetonka 544-7412Edina 920-4817Eden Prairie 941-8901Bemidji 751-7880Willmar 235-2120St. Cloud 253-8326Owatonna 451-7248Hibbing 263-8200Virginia 741-5919St. Anthony 789-4368West St. Paul 451-1765Minneapolis 377-9840St. Paul 227-7223St. Cloud 251-1335Minneapolis 869-3288Minneapolis 378-1185Maplewood 777-3737Mankato 387-7937Eveleth 749-8140St. Paul 636-5147MISSOURI

Electronic Components, Intl.1306-B South Hwy 63Columbia 443-5225Team ElectronicsBiscayne Mall301 Stadium Blvd.Columbia 445-4496

MONTANA

Computers Made Easy415 MorrowBozeman 586-3065Team ElectronicsGreat Falls 852-3281Missoula 549-4119NEBRASKATeam ElectronicsGrand Island 381-0559Lincoln 435-2959Omaha 397-1666Omaha 333-3100Norfolk 379-1161North Platte 534-4645NEW HAMPSHIREComputermart170 Main StreetNashua 883-2386

NEW JERSEY

Computerland2 De Hart StreetMorristown 539-4077Computermart501 Route 27Iselin 283-0600

NEW YORK

ComputerlandBuffalo 836-6511Ithaca 277-4888Computer Mart of N.Y.118 Madison Ave.New York 686-7923

Co-op Electronics9148 Main StreetClarence 634-2193

NORTH CAROLINA

Byte Shop

1213 Hillsborough St.Raleigh 833-0210Computer Room1729 Garden TerraceCharlotte 373-0875

Rom's & Ram'sCrabtree Valley MallRaleigh 781-0003

NORTH DAKOTATeam Electronics

Bismarck 223-4546Fargo 282-4562Grand Forks 746-4474Minot 852-3281Williston 572-7631

OHIO

Computerland1304 SOM Center RdMayfield Heights 461-1200The Data Domain

Dayton 223-2348Cincinnati 561-6733OKLAHOMA

Bits, Bytes & Micros1186 N. MacArthurBlvd.Oklahoma City 947-5646High Technology1020 W, Wilshire Blvd.Oklahoma City 843-9667

Team Electronics

Norman 329-3456

Oklahoma City 634-3357

Oklahoma City 848-5573

Stillwater 377-2050

Tulsa 633-4575

Tulsa 252-5751

Yokon 373-1994

OREGON

Team Electronics

Bend 389-8525

Canby 266-2539

Salem 364-3278

PENNSYLVANIA

Computer Mart of PA

Route 202

King of Prussia 265-2580

SOUTH DAKOTATeam Electronics

Pierre 224-1881Rapid City 343-8363Sioux Falls 336-3730Sioux Falls 339-1421Sioux Falls 339-2237Watertown 886-4725

TEXAS

Byte Shop3211 FondrenHouston 977-0664Computerland

Houston 997-0909Austin 452-5701Computer Shops, Inc.13933 North CentralDallas 234-3412The Computer Shop6812 San PedroSan Antonio 828-0553

Computer Terminal2101 Myrtle St.El Paso 532-1777The KA Computer Store1200 Majesty DriveDallas

VIRGINIA

The Computer Hardware Store818 Franklin St.Alexandria 548-8085Home Computer CenterVirginia Beach 340-1977Newport News 595-1955Timberville ElectronicsP.O. Box 202Timberville 896-8926

WASHINGTON

Team Electronics423 W. YakimaYakima 453-0313

WASHINGTON, D.C.

Gerogetown Computer Store3286 M.St. N.W.Washington, D.C, 362-2127

WISCONSINTeam Electronics

Eau Claire 834-0328Eau Claire 834-1288Madison 244-1339Milwaukee 461-7600Racine 554-8505Sheboygan 458-8791Greendale 421-4300Rhmelander 369-3900LaCrosse 788-2250Wausau 842-3364Milwaukee 672-7600Janesville 756-3150Manitowoc 684-3393Milwaukee 354-4880Oshkosh 233-7050WYOMINGTeam ElectronicsHilltop Shopping Center207 S. MontanaCasper 235-6691

CANADA

Future Byte2274 Rockland

Montreal, Que. 731-4638

AUSTRALIA

Computerland52-58 Clarence St.Sydney, NSW 29-3-153

apple computer inc.

10260 Bandley DriveCupertino, California 95014(408)996-1010SEE OUR PRODUCT AD ON PAGES 8 AND 9.EURAPPLE

European Operations of Apple Computer, Inc.2031 Byron StreetPalo Alto, CA 94301(415)964-7020

BYTE April 1978 105

due to use of the hardware multiplier.(Motorola program PGM7, for instance, usesabout 700 machine cycles.) No use is madeof the stack or index register, and the num-bers multiplied are left unchanged. (Manymultiplication routines gobble the operandsas they go.) Similar programs (with roughlythe same gain in speed) can be written forinteger multiplication of 3 or 4 byte length.Nothing new happens, however: our hard-ware multiplier still needs to return theproduct right justified in two bytes (withbit 0 off).

Well, we're in for a little surprise.

Number Crunching

Another application of our multiplier isto floating point multiplication. Floatingpoint arithmetic allows us to keep track ofnumbers with a vastly larger range than fixedpoint arithmetic would in the same amountof storage. The reasons for adding floatingpoint operations to a microsystem lie be-

yond the scope of this article, but we in-clude this because something curious hap-pens when an 8 bit two's complement multi-plier is used in floating point multiplication.

The system we decided on for floatingpoint representation allows a range of about± (10~38 to 1037) (plus the number 0) andhas an "accuracy" of about seven decimaldigits. Byte 0 holds the exponent e, thepower of 2 in two's complement form, andbytes 1 to 3 hold the two's complementnormalized mantissa m. {Normalized means- 1/2 < m<-l or 1/2 <m<1.) The num-ber represented is m X 2e.

This system was picked mainly for speed.Memory was also considered: greater accu-racy uses more time and space to store userdata. More complicated and lengthy rou-tines to compute transcendental functions,for instance, are required. Since we weredesigning a floating point package fromscratch, compatibility with establishedmethods did not seem to matter much.

YE5

«.

LDRD

X5WITH

0

HD&RE55 B

LORD XI-X7WITH DE-D0

CLDCK X

RDDKE55

RDDRE55 I

YES

LDRD Y5WITH D7

:e

3l^

LDRD

Y5WITH

0

LDRD YI-Y7WITH DE-D0

QEjT)

SET FF

TD ROUND

5ET FF

TD STRIP

5 I EN X

BET FF

TD 5TRIP

5 I EN Y

Algorithm 3: Hardware write cycle operations at the interface for the high speed multiplier.This algorithm shows the actions needed during a write cycle in which the computer sets upoperands. Address 0 writes the X operand from the data bus, optionally stripping the sign bit.Writing to address I also performs the multiplication by clocking the product latches after asuitable wait period of one half the microprocessors clock cycle. Writing to address 2 is used toset the state of three flip flops which control the multiplier's ROUND input, stripping of signfrom X inputs and stripping of sign from the Y input. Default values which are initialized onpower up, as well as a system reset, have ail three control flags cleared.

106 April 1978 © BYTE Publications Inc

inpeigoiu~" computing

books!

Hom %

Profit

First Bool: of KIM

;„«! 52J!

HOW TO PROFIT FROMYOUR PERSONALCOMPUTER:

Professional. Business, andHome ApplicationsBy T. G. Lewis. Describes how toput the computer to work for you.#5761-X, paper, 256 pp., $7.95

HOME COMPUTERSYSTEMS HANDBOOK

By Sol Libes. A technical look atpersonal computers.#5678-8, paper, AvailableApril, 1978

THE FIRST BOOKOF KIM

By Jim Butterfield, Stan Ockers,and Eric Rehnke. How to writeKIM programs, with illustrations.#5119-0, paper, 176 pp., $9.00

FORTRAN WITH STYLE:Programming Proverbs

By Henry F. Ledgard and Louis J.Chmura. Programming styleguide that conforms to the newdefinition of standard FORTRAN.*5682-6, paper, 176 pp.,Available May, 1978

BASIC BASIC,Second Edition

By James S. Coan. Fundamentalsof BASIC programming.#5106-9, paper, $8.95; #5107-7,cloth, 288 pp., $9.95

HOW TO BUILD ACOMPUTER-CONTROLLED ROBOT

By Tod Loofbourrow. Provides anapplication of a microprocessorand hands-on experience withrobotics. #5681-81 paper,Available May, 1978

These NEW books join our winning list of best sellers including:Advanced BASIC (Coan), The BASIC Workbook

(Schoman), Game Playing with BASIC (Spencer), Digital |TT| Hayden Book

Troubleshooting (Gasperini), Digital Experiments I |j I Company, Inc.

(Gasperini), Standard Dictionary of Computers and 50 Essex Street

Information Processing (Weik), Telephone Accessories Rocheile Park, NJ 07662

You Can Build (Gilder)

Available at your local computer store!

Circle 52 on inquiry card.

BYTE April 1978

107

10 I—s.

SELECT >

10

*2CL0CK| >

■I ^>CL0CK X

«—| ^CLOCK Y

\ ^>CL0CK C

CLOCK P

Figure 7: Clocking and input address decoding. 10 select, RW, 4>2 CLOCKand address Rrj, Rj are present on the SwTPC 10 port bus. Signals CLOCK X,CLOCK Y, and CLOCK P go to the MPY-8AJ. CLOCK C is used to set con-dition code for sign stripping and rounding (see figure 8), and ENABLE OUTis used to enable three state output buffers (figure 9). IC1 is an MSI device,a 2 to 4 decoder (half of a 74LS139); IC2 is half a 7474, a positive edgetriggered flip flop with preset and clear. Details of this circuit in relation tothe entire high speed multiplier subsystem will be found in the completeschematic to be presented in part 2 of this article.

Let A and B be two floating point num-bers in this representation. We consider theproblem of calculating A X B. First of all,the exponent is no problem — just add — sowe will forget that for now. Let the mantissaof A be A-j A2 A3 (each A\ is a 1 byte word)and that of B be B-j B2 B3. Suppose both Aand B are positive (so that Aj and B-j arepositive two's complement numbers).

Let the bits of A's mantissa be

a0a1 ■ • * a23 anc* tnose °f B's be (Sq^. . . 023- We need also the unsigned partsof the bytes Aj and Bj obtained by settingthe first bit zero; call these aj and bj. For

example, A2 is agao, ... a-15 and a2 isOag ... a-j5. We now think of each of theaj and bj as being a mantissa: thus

M

a1/2 + ft2/22 + . . . + a7/27,

and they satisfy 0 < aj < 1

0 < bj < 1.

With all this notation, the mantissa of A

a1 + H2

-8

+ a22-8 + a162"

16 + a32"16.

When we write out the product of this withB and align the parts (much like we didearlier), we find the products now need tobe left justified. For example, aibl (whichform the first few bits in the product) is14 digits plus sign (which is zero), and theright shifted product is simply in the wrongplace for adding into the product we areforming. (This is the little surprise: our hard-ware multiplier needs to return the productleft shifted for floating point arithmetic.)

One way out is to have the multiplierreturn sign plus first seven bits in FM, nextseven bits then 0 in SM: that way we don'thave to waste time shifting. (This neatlyuses all four bytes in the port, also.)

Figure 6 is the floating point analog offigure 5. In it we show how the parts of theproduct line up. (We forego the analog offigure 4, although one was pondered overto arrive at figure 5.)

One more thing: look at the productsalb3, a2b2 and a3b]. They're only the lefteight bits, right? What if we could add 2-8to the product: that would round (up, theright way since everything is positive), thatis, cause a value of 1 to be added in if thepart thrown away were more than 1/2 X2-7. The MPY-8AJ has precisely that input:

Figure 8: Sign stripping,rounding and overflow de-coding. RESET, D7 andD0-D2 are SwTPC bus sig-nals. Outputs ROUND,SIGN X and SIGN Y goto and signal SIGN Pcomes from the MPY-8AJ.CLOCK C, X and Y aregenerated by figure 7circuitry. All flip flops arehalf of a 7474 as in figure7.

RESET | > • m

DOO-

Dl[>

D7[>

D2 0

CLKPR 5

1

n CLR «

D Q

CLK „ QPR

+5V

4

0 CLR 0

CLKPR °

6

CLOCKC

+5V

1

CLOCK I

o

xy^>

CLRD 0

CLK Q

PR

+5V j

SIGN P

>SIGN X

xy<=>

CL?CKC>aKpR 9

cH )-o

OVERFLOW

i

108

April 1978 ©BYTE Publications Inc

SINGLE-BOARD or MULTI-BOARD Z-80 SYSTEM

NO SYSTEM COMPARES IN DOLLAR VALUE OR COMPACTNESS !!!

FEW CHALLENGE ITS CAPABILITY OR FLEXIBILITY

Our RM Z-80 CPU SYSTEM shown below, can be implemented as a stand-alone minicomputer system by merely addinga power supply and a Teletype or TV terminal as an I/O device (on-board interface included). ALONE, it stands as a fast,powerful minicomputer system. You can add memory or accessory boards at any time and when packaged in our RM Term-inal case (below right), it is one of the most powerful self-contained desk-top minicomputers on the market. In addition tothe CPU board, the case houses the power supply, keyboard, up to 64K of memory, a video display interface board, anoptional Teletype, and special-purpose boards such as audio and digital cassette interfaces and a scientific calculator interfaceboard. After all these, there is still room in the enclosure for your "home-brew" board built on one of several RM prototypeboards available from MINI MICRO MART.

Shown above is a fully loaded RM Z-80 CPU System. Actual size: 7"x lO1/*'

RM TERMINAL ENCLOSURE, illustrated at right (surplus like newcondition), is the ideal enclosure to house your system. It features a top-quality Microswitch keyboard, a multivoltage commercial power supply,Boxer fan, AC line noise filter, a card frame to hold nine RM boards;momentary contact switch panel, with illuminated switches for systemreset and other functions. In addition to a full RM computer system, itwill house a Teletype Model 32 or 33 Printer or, as an alternate, a fullS-100 Backplane. Worth many time our selling price of ONLY $149.95

TELETYPE MODEL 33 PRINTER, reconditioned, to fit in aboveenclosure ONLY $440.00

SPECIAL HOBBIEST PACKAGE NO. 1

RM Z-80 Board $ 164.95

4K Static RAM Board

RM VDI-512 video Display Interface .

Backplane

3 Connectors for above

Audio Cassette Interface ,

RM Programmable Serial Port

RM Programmable Parallel Port

Software Tapes: BASIC and Monitor 80IK Monitor PROM

99.9599.50

10.9517.85

24.9514.9514.9510.0024.95

LIMITED TIME OFFER: $399.95

Add $150 for assembled and tested version.

POWER SUPPLY KIT for above $24.95

$ 483.00

SPECIAL PACKAGE NO. 2

RM Z-80 Board $ 16495

16K Static RAM Board 479.95

RM VDI-2480 Video Interface* ■• • ■ 199.95

Backplane I-tal

3 Connectors for above • ] 7-85

RM Programmable Serial Port 14 95

RM Programmable Parallel Port 14 ;g

Software Tapes: BASIC and Monitor 80 1000

3K Monitor PROM 74 85

LIMITED TIME OFFER: $ 849.95* 988'40

Above system assembled and tested ADD $ 170.00

All boards fully socketed.

COMPLETE SYSTEM

Pkg. No. 2 (above) with Conversion Board to S-100

Bus and RM Terminal ONLY$999.95

Above assembled and tested $ 1,249.95

— LIMITED TIME OFFER —

Handling, shipping and insurance:

Add $2.50 for board sets. Add $10.00 for Terminal or Teletype

MiniMJCroMart, InC. 1618 James Street, Syracuse, New York 13203 (315)422-4467

Circle 72 on inquiry card.

BYTE April 1978 109

6A Q

snao

OUT

Figure 9: Output decoding. Four MSI devices, 74153 dual 4 to J data selec-tors, are used to decode outputs PS, PJ,... ,P14 of the MPY-8AJ as weli asthe OVERFLOW signai generated (on the condition in figure 8). Two threestate 74125 quad buffers decouple the iow impedance totem poie 74153outputs from data bus DO, 01,... ,D7. Since the X and Y inputs of themultiplier are high impedance, X1-X7 and Y1-Y7 are coupled directly to databus bits D6 to DO. ENABLE OUT signai comes from figure 7.

we decided to use the "condition code"(already used to strip signs) to set the roundcondition. Bit 7 on sets round, off clear,any time data is stored in URP.

Logical Design of Hardware

Algorithm 3 shows what happens whendata is stored in the port which contains thehardware multiplier. Address 0 is FM, 1 isSM and 2 is URP (where the condition codeis set). Figure 7 shows logical design of inputaddress decoding, clocking and outputenable signals.

One condition not dwelled on earlier isthe overflow condition of the product. Recallthere is no 15 bit two's complement repre-sentation of-1 X -1; the MPY-8AI returns-1 (as does its software equivalent MPY8S0in listing 3). Note also that URP always hasits first bit 0. Since some applications (notdiscussed here) need to check the overflowcondition quickly, we turn this bit on ondetecting-1 X -1. (Thus the test is simple:overflow if and only if URP is negative.) Weshow logic to strip signs, set the ROUNDinput (to MPY-8AJ) and detect overflow infigure 8.

Output decoding consists of performingthe function shown in algorithm 4, Figure 9shows our hardware solution using MSI 4to 1 line data selectors and three stateoutput buffers.

Next month's conclusion of this articlecontains detailed construction informationfor the SwTPC 6800 system. Also includedis test software."

0 PR 1f

f ENTRY'- WRITE A( PRODUCT DN )V DflTH BUS J

2 OR 32 4^iT>^ .

. 0

^"DECDDE^\<C REQUESTED ">*^\RDDRE55^^

, 3

*

^K^M"- \J>~v*

"^

*T

^"^5 J^-" \

*

LDHD SI5NHND M5PIN D7-D0

LDRD L5FIN D7-D1/

0 IN D0

LORD OVFLW

IN D7/ 51EN

HND BITS

l-E DF M5P

IN DE-D0

LORD BIT 7DF M5P IN

D7/ BITS1-7 DF L5P

IN DE-D0

i

^

r

T

_ J

(exit)

Algorithm 4: Hardware read cycle operations for the high speed multiplier provide two ways oflooking at the 15 bit (sign plus 14 bit product) outputs of the multiplier. When addresses 0 and1 are accessed, the 16 bit number in these two bytes represents a left aligned 15 bit two's com-plement product with a iow order 0 bit and high order sign bit. When addresses 2 and 3 are ac-cessed, the 16 bit number in these two bytes consists of a right aligned 15 bit product, with themost significant bit set by the overflow bit (see algorithm 3) which is 0 normally, set to 1 if aproduct of-1 * -1 is detected.

110

April 1978 ©BYTE Publications Inc

vito yam^l to v^a i^a&ajaa *£

MODEL CC-8$185.00 (4800$195.00 (9600 Baud and 220V/50 Hz)

Baud)

9600 BAUD CASSETTE RECORDER

An ASYNCHRONOUS NRZ type Recorder with remote motor start/stop. Error rate108 at 4800 BAUD. Can be used from 110 to 9600 BAUD into a UART - no clockingrequired. This is not an audio recorder. It takes RS232 or TTL signals from the terminal orcomputer and gives back the same signals. No audio interface is used. Motor start/stop ismanual or through TTL or RS232 signals.

Tape speeds are 1.6" / 3.0" and 6.0" per second. 110 volt, 60 Hz, 5 watts. (220 Volts onspecial order). Can use high quality audio cassettes (Philips Type) or certified data cassettes.Can be used in remote locations from a 12 Volt battery.

Recommended for DATA LOGGING, WORD PROCESSING, COMPUTER PROGRAMRELOADING and DATA STORAGE. Manual control except for motor start/stop. 6800,8080 or Z80 software for file or record searching available on request with order. Used bymajor computer manufacturers, Bell Telephone and U.S. Government for program reloadingand field servicing.

AVAILABILITY - Off the shelf.

PROVIDES MONITOR AND TAPE SOFTWARE in ROM TERMINAL and TAPE PORTSon SAME BOARD CONTROLS ONE or TWO TAPE UNITS (CC-8 or 3M3B)

This is a complete 8080, 8085, or Z80 system controller. It provides the terminal I/O(RS232, 20 mA or TTL) and the data cartridge I/O, plus the motor controlling parallel I/Olatches. Two kilobytes of on board ROM provide turn on and go control of your Altair orIMSAI..NO MORE BOOTSTRAPPING. Loads and Dumps memory in hex on the terminal,formats tape cartridge files, has word processing and paper tape routines. Best of all, it hasthe search routines to locate files and records by means of six, five, and four letter strings.Just type in the file name and the recorder and software do the rest. Can be used in theBiSync (IBM), BiPhase (Phase encoded) or NRZ modes with suitable recorders, interfacesand software.

This is Revision 8 of this controller. This version features 2708 type EPROM's so thatyou can write your own software or relocate it as desired. One 2708 preprogrammed issupplied with the board. A socket is available for the second ROM allowing up to a full 2Kof monitor programs.

Fits all SI00 bus computers using 8080 or Z80 MPU's. Requires 2 MHz clock from bus.Cannot be used with audio cassettes without an interface. Cassette or cartridge inputs areRS232 level.

AVAILABILITY - Off the shelf.

2SIO (R) CONTROLLER$190.00 ($160.00, Kit)

6800 CONTROLLER for SWTP$190.00, Tested & Assmb. ($160.00, Kit)

PROVIDES MONITOR AND TAPE SOFTWARE in EPROM. EXPANDS MIKBUG with IKof ADDITIONAL ROM PROGRAM

This is a complete tape controller for the SWTP 6800 system. Has 3K of EPROM spacefor your own programs. A 1 K ROM (2708) is provided with all tape and monitor functions.The ROM program is identical to our extensive 8080 ROM program.

Has one AC IA for one or two tape drives, one UART for an additional Serial port and a4 bit parallel port for motor control. Will control one or two CC-8 or 3M3B drives with thesoftware provided. Can be used with other tape drives controllable with 4 TTL bits ifappropriate software changes are made.

Extra serial port is provided for your use with a second terminal or printer (RS232, TTLor 20 ma).

The ROM program supplements the MIKbug program and is entered automatically onreset. SWTbug compatible ROM is also available.

AVAILABILITY - Off the shelf.

Z 80 BOARD for SWTP COMPUTER

Now you can use the 8080/Z80 software programs in your SWTP 6800 machine. Re-places your MPU board with a Z80 and ROM so that you are up and running with yourpresent SWTP memory and MPS card. 1 K ROM on board replaces MIKBUG.

AVAILABILITY - Off the shelf.

$190.00, Tested & Assmb. ($160.00, Kit)

For U.P.S. delivery, add $3.00 Overseas and air shipments charges collect. N.J. Residents add 5% Sales Tax. WRITE or CALL for furtherinformation. Phone Orders on Master Charge and BankAmericard accepted.

National Multiplex Corporation

„ 4 3474 Rand Avenue, South Plainfield NJ 07080 Box 288 Phone (201) 561-3600 TWX 710-997-9530 ^

Circle 77 on inquiry card.

BYTE April 1978 111

I Whet Your fJ Appetite |

Scelbi/BYTE Primer,

edited by Carl Helmersand Nat Wadsworth.

_Your Home Computer,

by James White.

Food for

The BITS Small

.How You Can Learn toLive With Computers, byHarry Kleinberg.

.Computer Lib/DreamMachines, by Ted Nelson.

.Computer Science, AFirst Course, by A I

Forsythe. Hardcover.

$10.95

$6.00

$8.95

^7.00

$18.25

^Getting Involved With YourOwn Computer—A Guidefor Beginners, by LeslieSolomon. $5.95

Homebrew andBeer Budget Specials

.Build Your Own Working Robot, by David Heiserman.

) Cookbooks (

Microcomputer Design, by Martin Research.

Modern Operational Circuit Design, by John Smith.

Introduction to Microcomputers, by Adam Osborne

Volume 0

Volume I

Volume II

«.

.Linear IC Principals, Experiments, and Projects, by M Noll..Microprocessors From Chips to Systems, by Rodnay Zaks..Microprocessor Interfacing Techniques, by Rodnay Zaks..Security Electronics, by John E Cunningham..Practical Solid State Circuit Design, by Jerome E Oleksy..Digital Logic Circuits, by Sol Libes.

.Digital Computer Fundamentals, Jefferson C Boyce. Hardcover..Introduction to Biomedical Electronics, by J Bukstein.

$5.95

Active Filter Cookbook,

by Don Lancaster. $14.95

$14.95

TV Typewriter Cookbook,

$23.25

by Don Lancaster. $9.95

TTL Cookbook, by

$7.50

Don Lancaster. $ 8.95

$7.50

$15.00

CMOS Cookbook, by

Don Lancaster. $9.95

$8.95

$9.95

J References (

$9.95

How to Buy and Use Mini

$5.95

and Microcomputers, by

William J Barden, Jr. $8.95

$6.50

Payroll with Cost

$7.95

Accounting, by Lon Poole. $12.50

$15.95

Problems for Computer

Solution, by Steve

$5.95

Rogowski. $9.95

112 BYTEAprill978

Thought

Systems Menu

Nybble on OurProgramming Delights

How to Program Microcomputers, by William Barden, Jr. $8.95

6800 Programming for Logic Design, by Adam Osborne. $7.50

8080 Programming for Logic Design, by Adam Osborne. $7.50

Scelbi 6800 Software Gourmet Guide & Cookbook, by

Robert Findlay. $9.95

Scelbi 8080 Software Gourmet Guide and Cookbook, by

Robert Findlay. $9.95

Practical Microcomputer Programming: The Intel 8080, by

W J Weller, A V Shatzel, and H Y Nice. Hardcover. $21.95

Basic Basic, by James S Coan. $8.95

Advanced Basic, by James S Coan. $7.95

Structured Programming in APL, by Dennis Geller and Daniel

Freedman. $9.95

APL, An Interactive Approach, by Leonard Gilman and

Allen J Rose. $11.95

W

For ReservationsCall Toll Free

WATS up? The BITS toll free hotline is now available forcustomer orders. Dial your bank card orders Monday throughFriday between 9:00 a.m. and 5:00 p.m. Eastern StandardTime. 1-800-258-5477. In New Hampshire, call 924-3355.Before you dial, please have ready your BankAmericard orMaster Charge credit card number and expiration date, thetitles of the books you wish, and your shipping address.To call about an order—please dial (603) 924-3355.

Take a BYTEof the BITS Catalog

At last! The BITS catalog is here! We've carefully screenedand evaluated scores upon scores of microcomputer booksand reference texts. Now we offer what we believe to bethe most authoritative, most comprehensive catalog ofpersonal computing publications available anywhere. It'sa reference work in itself. Catalog sent with every order.Or simply circle the BITS number on your BYTE readerservice card.

DIAL YOUR BANK CARD ORDERS ON THE BITS TOLL FREE HOT LINE: 1-800-258-5477.

In New Hampshire, call: 924-3355 Check Payment method:

Send to: 4A ^v check is enclosed

BITS, Inc. ^^^ *^^ Bill my MC No. / / / Exp. date.

70 Main Street ■££. £5 Bill my BAG No. J_ /_ J. Exp. date.

Peterborough NH 03458

Name

Address

Total for all books checkedPostage,75 cents per book for

City

State

Zip Code

Outside U.S. $1.00 per book for.Grand Total

.books S_

_books $_

$_

Signature

You may photocopy this page if you wish to leave your BYTE intact.

Prices shown are subject to change without notice.Billing charge $1.00 (Institutional orders only). /Cy

Circle 14 on inquiry card.

BYTE April 1978 113

Tune In and Turn On!

Steve CiarciaPOB 582Glastonbury CT 06033

"Hi, Steve, you look lost in thought."Ken seated himself beside me on the frontstep of my house. "Your computer finallygetting to you?"

I raised my head slightly and shook off thedaydream appearance. "Oh, don't mind me.I 'm just waiting for my neighbor Clarence tocome over the way he usually does when hesees me sitting out here. No doubt he's goingto tell me about the latest gadget he justbought or tantalize me with some new com-ponent in his kilowatt stereo system." Themore I thought about Clarence's one-upmanship, the madder I became. "I go outand buy a lawn mower and he buys a tractorfor his 1/4 acre lawn. I paint my trim andhe paints his house."

"Don't get so upset. I've got a neighborlike that down at my end of the street, too.It's not that unusual." Ken's presence wasbeneficial. I was less likely to commithomicide with witnesses around. Thatkind of stuff was too messy anyway. Ihad something better planned for Clarence.In fact the more I thought about it thebetter I felt.

"Clarence doesn't have a computer yet,does he?", Ken asked.

"No. But I'm sure he's looking. The lasttime he was here he told me how he hadfound out about mine. Apparently someoneshowed him a copy of BYTE. He's lookingfor a computer now, I'm sure." Ken lookedat me with a certain degree of skepticism.He also has a technical background andunderstands the uses and applications ofcomputers.

"What would Clarence do with a com-puter?", he asked. I was sure he wanted toown one but resolved that he couldn'tafford one in the foreseeable future. "Hedoesn't know the first thing about them."

"Knowing Clarence, he'd probably use itas a door stop. Use is unimportant to him.Ownership is the key. I really don't think Ican keep him from buying one but I'm goingto take advantage of the fact that Clarencealways has to have something better." I hadbeen scheming, devising and programming

at a feverish pace ever since Clarence put meon notice that he was going to buy a com-puter.

"What are you planning?" Ken wasbecoming increasingly curious.

"Oh, nothing special. I'm just going tomake Clarence think that my computer'scapabilities are greater than they actuallyare. If he wants to buy one that does whatI'm going to simulate, it'll cost him a hun-dred grand.

Ken smiled. He knows that deep down Iam soft and gentle but also knows that Ienjoy playing a practical joke.

"I know you have quite a system, but howare you going to make it appear like onecosting $100 K?"; he quizzed.

"Skulduggery and trickery, my friend."I was about to explain when Clarence sud-denly appeared on my walk. I gave Ken anudge and said, "Here he comes, right ontime. Just play along."

"Hi, Steve, Ken. I just happened tonotice you out here and thought I'd stopover for a chat. I've been giving that com-puter thing some thought. Dropped by thecomputer store today to ask them about. . .what did you call it. . .mass storage? Wellanyway, they said I should get four dualdensity — I think it was — floppy disks. Thatshould be adequate. You only have two,don't you, Steve? You must find yourselflimited," Clarence continued. First it wasthe best 8 bit unit he could find; then hesettled on a 16 bit system but was still tryingto decide whether 64 K of memory wouldbe adequate. "I looked at some printers, too.I think your DECwriter is adequate, butdoesn't Digital Equipment sell something alittle better? For more money, of course."

I was coming to a slow burn. Ken's expres-sion seemed to say, "Is this guy for real?"

"I really don't know, Clarence. Why don'twe go in and check with my computer."

Clarence's eyebrows rose a little as we gotup to enter the house. I made a point ofmentioning that he should check the mailboxbeside the door since he was closest. As heopened it I said, "Nevermind, I just remem-

114 April 1978 © BYTE Publications Inc

Part 1: A ComputerizedWireless AC Control System

In which a homebrewwireless AC control systemfoils Clarence's one-upmanship...

bered I gave the mail to the computer earliertoday."

Clarence's mouth opened a bit, but hewas not ready to argue the point. I gave Kenthe elbow again to keep him from sayinganything. "Just to be on the safe side,maybe I'd better check. Please close the doorand come into the den."

As Clarence turned to close the door, Istepped into the den, reached behind thecorner of one of the bookcases and pressed a

button. This was the signal for the computerin the basement to go into action. I startedcounting silently down from 20. By thecount of ten Clarence had entered the den.I motioned for Ken and Clarence to sit downand said, "We'll get the information youneed later, Clarence. I'd better check on thatmail first. It might be important." Six, five,four .... I stood up in the middle of theroom and said, "Computer?" . . . Kenand Clarence looked at me as if I were crazy. . . two . . . one . . . zero ....

At the next instant the table lamp next

DEN STEREO SYSTEM

I 11

O O o

oO

REMOTE

RECEIVERCHANNEL I

r\

DEN

TABLE

LAMP

REMOTERECEIVERCHANNEL 2

VACUUM CLEANERIN BEDROOM

BASEMENT COMPUTER SYSTEM

COMPUTERW/BASIC

rv

30 KHz

- MO KHz

AC REMOTE

CONTROL

TRANSMITTER

(FIGURE 3)

8 BIT \

PARALLEL^

output Jr.

PORT S

V

oo

o

DENTELEVISION

REMOTERECEIVERCHANNEL 3

PORTABLETV IN

LIVING ROOM

tt

DOG BISCUIT

EXISTING HOUSE WIRING

PLUG RECEPTACLES

Figure J: Block diagram of the author's wireless AC remote control system. An AC transmitter modulates the existing housewiring with high frequency signals. These signals are detected by special receivers (described next month) which plug into anyAC receptacle. Appliances or other electrical devices can be plugged into the receivers and controlled by the user's home com-puter. The setup shown is one application of a 4 receiver system. Applications include turning house lights on and off during theuser's absence, automatically taping off the air from a stereo, etc.

April 1978 © BYTE Publications Inc

115

Photo I: AC remote re-ceiver (shown in center ofph o to) en a ties au thor 'sScottish terrier, Brenda,to watch Lassie reruns.

to me seemed to turn on by itself. A secondlater the stereo turned on, though no musicwas heard. Presently, in a nonhuman voicethat a Star Trek fan would appreciate, thespeaker said, "Computer!" I started count-ing down mentally from 30 this time.

"WHAT!?", Clarence and Ken both saidin unison. I put my forefinger to my lipsand motioned to Ken to play along. Clarencewas too engrossed in the current situation tonotice. "How did you do that?", he saidexcitedly.

The 30 seconds were almost up as Istood and said, "Computer, did I give youthe morning mail to process?" Two . .. one. . . zero .... The voice responded with thesingle word, "Affirmative."

I started to count ten seconds this time.

Clarence's eyes were wide open as I said,"Computer, give me a listing of the maildelivery."

"Mail Delivery Recorded ... Date 3-20-78 ... File N472 ... Magazine - PopularScience ... March 1978 ... Bill — HomeHeating Inc ... $64.32 ... Due 30 days ...Bill . . . ." The somewhat metallic voicespoke in a monotone and at a constant rate.It was unmistakably synthetic and no onecould dispute it. I listened to the computerspeaking through the stereo system andwaited for the key word (my next cue)." . . Daily Newspaper.. . Hartford Courant. . . 3-20-78 . . . Major headlines as follows

"Enough!", I shouted, and the voicestopped. It was actually programmed to stopanyway, and I started mentally counting tothe next phase.

"What kind of computer is this? How biga system do you have?", Clarence exclaimed.I waved him back to his seat and decided tolay it on a little thicker.

At the right time I said, "Computer, haveyou finished the house work?"

"Negative ... Master Bedroom should bevacuumed ... it shall be done

A vacuum cleaner switched on upstairs andcould be clearly heard in the den. Clarencejerked his head around when he heard thenoise and nearly fell out of his chair. Iturned toward the stereo and said, "No! Doit later!" Within a couple of seconds thenoise of the vacuum cleaner stopped. Thistold me I had about two minutes.

Clarence and Ken were amazed. "WellClarence, what do you think? The house iscompletely under computer control. Itknows what I'm saying and does what Iwant."

"Will it respond to my voice?", Clarenceasked weakly.

"Oh I'm sure it understands you, but itonly responds to my voice ... obviouslyfor security reasons. We wouldn't wantsomeone telling it to do something bad,would we? I only use it for constructivepurposes, like my checking account." Thetwo minutes were up. I raised my arm andpointed to the TV set. It switched onapparently by itself.

A few seconds later a checking accountstatement appeared on the screen and startedscrolling slowly up the screen. Clarence gotup, walked over to the display and staredat it as though hypnotized. I grinned sadis-tically at Ken. He grabbed my arm andwhispered, "How are you doing all this?"

"Shhh. It's done in BASIC. I have oneof those new Votrax speech synthesizersfeeding into the auxiliary input of the stereo.The TV is really a video monitor. It's wiredto the computer system in the basement.Turning things on and off is simple with mynew AC remote control receivers spreadaround the house. I just used the speakcommand in Zapple BASIC the same wayother people use print commands. Whenthe program is triggered, it starts a prepro-grammed sequence. I know what it's goingto say and how much time there is betweenstatements."

"Oh, you're a nasty one, aren't you?"Ken smiled.

"So much for all this, Clarence; you musthave better things to do. I have to go outsoon. I hope you don't mind?" I glancedat my watch noticing it was nearing 7 PM,and motioned for him to follow me towardthe front door. As we were leaving the den,the video monitor, stereo and lights extin-guished as miraculously as they had comeon. Clarence just shook his head and fol-lowed, muttering something about needinga drink.

At exactly 7 PM as Clarence was about toleave, we passed through the living room

116 April 1978 ©BYTE Publications Inc

Let's Get Personalin Anaheim

June 6-8,1978

A rewarding personal experience is in store for youJune 6-8 at the NCC 78 Personal Computing Festival...the most comprehensive personal computing event everheld. The Festival, a separate feature of the NationalComputer Conference, will include approximately 30program sessions, commercial exhibits of consumercomputing products and services, plus a contest andexhibit of microprocessor systems and applications. AllFestival activities will take place in the Disneyland HotelComplex, just a few minutes from the Anaheim Con-vention Center, site of this year's NCC.

Plan now to attend the big, new NCC 78 PersonalComputing Festival. The program will include specialpaper, panel, and tutorial sessions on such topics asspeech synthesis and recognition, computerized musicsystems, hardware and software design, computergraphics, and small business systems. All papers will bepublished in a softbound volume, Festival Digest 78,which will be available during NCC.

Festival exhibits will provide an extensive display ofcommercial offerings by organizations serving the per-sonal computing field. More than 100 companies, occu-pying over 175 booths, will display systems, compo-nents, terminals, software, kits,disc and tape cassettes,relevant publications, and related hobby items.

Rounding out the Festival will be a contest featuringmicroprocessor systems, devices, and applicationsranging from home-brew DOS and graphics terminalsto educational applications and computer games. Prizeswill be awarded for thebest exhibits.

Don't miss the year's most exciting personal comput-ing event. For more information, return the coupon orcall AFIPS at 201/391-9810.

□ Please keep me up-to-date on Festival plans andactivities.

□ My company is interested in exhibiting at the Festival.

□ Please send me information on the special NCCTravel Service.

Name

CompanyStreet

.Division

City.

.State.

.Zip.

NCC 78Personal ComputingFestival

c/o AFIPS, 210 Summit AvenueMontvale, N.J. 07645telephone: 201/391 9810

Circle 127 on inquiry card.

BYTE April 1978 117

where he noticed a small TV sitting on thefloor next to the couch. He was about toask something when a bell sounded; myScottish terrier Brenda came tearing intothe room and sat in front of the TV. TheTV came on instantly and a program flashedonto the screen. I waved my hand to Clarenceand said, "Oh, don't worry about that. It'sjust a rerun of Lassie. The computer takescare of the dogs, too."

This last bit was obviously too much forClarence. He just kept muttering as heleft, saying something about maybe recon-sidering his 16 bit decision and going to 32bits. I never heard the rest as he left, stillshaking his head.

Ken waited until Clarence was gone andthen said, "I can understand how you stagedthe stuff in the den, but your dog?"

"Look Ken, if you're going to do some-thing, you might as well do it right. As far asBrenda is concerned, she just heard a belland came to sit and wait for a dog biscuitthe same way she's been doing every nightat 7 PJV1 for weeks."

AC Remote Control

I don't expect everyone to build remotecontrol devices like the ones presented herejust to get back at the Clarences of theworld, but I do see them as the next logicalextension of the house computer system.Many experimenters have graduated fromusing the computer strictly for games andare now writing more sophisticated pro-grams. They may be accounting, music,composition or straight number cruncherprograms, but the key is evolution. The con-cept of a home management system is fine,but it is bound by the system peripherals.

The basic logic flow of any computersystem is: input, process, output. The com-puter accepts data input, processes it basedupon a fixed routine called a program, andoutputs the results. This result can either bean alphanumeric response on a video displaythat allows the operator access to thisprocessed information, or a logical resultsuch as yes and no, or on and off. In thelatter case, the single logical on or off valuecan also be used to control some device. Atypical example is a furnace circulatorpump. Temperature information is enteredinto the computer, which decides whetherthe heat is too high, in which case the pumpshould be off, or too low, in which casethe pump should be on. This decision couldbe displayed at an operator console, in-structing the operator to physically turn thepump on or off, but it would be far moreefficient if the computer could perform theaction as well as calculate the decision.

The concept of computer control is asold as the computer itself. Process controland data acquisition are the major applica-tions of industrial computers. While thecomputer structure might be similar, thelogistics are quite different. When a factorywants to add a computer to control aprocess, they automatically add 30 percentto the control costs for wiring! In the homeapplication, even though the wiring costmight be less, the idea of stringing wires allover the house is abhorrent to most of us.No one wants to start punching holes inthe walls.

The easiest alternative is wireless control.Such an approach uses the existing 115 VAChouse wiring for both control power andsignal transmission. This method is mostcost effective in limited applications usingfewer than a dozen channels, or in the casewhere the operations being controlled arenot critical.

Carrier Current Systems

Simply stated, the carrier current methodtransmits a high frequency carrier (30 kHzto 500 kHz) similar to a standard radiotransmission into the house wiring. It issuperimposed on the 60 Hz, 120 VAC lineand is broadcast throughout the house.This transmitted carrier, often referred toas carrier current, can be modulated to send ^^music or digital information. In limited onand off control applications, though, themere presence or absence of the carrier fre-quency is used to provide the control logic.The use of a modulated or unmodulatedsystem depends ultimately on the number ofparameters to be transmitted. If only oneoutput is to be controlled, and it is going tobe on or off (such as a desk lamp), a singlefrequency can be used. Detection of thefrequency of transmission at the receiverturns the light on, and its absence turns thelight off. Controlling two outputs requirestwo separate frequencies, one for eachchannel, and additional logic must be addedin the receiver if the appearance of simul-taneous output control is required. In caseswhere more than 20 channels are to be con-trolled or multiple settings are required ateach controlled point, modulated trans-missions are best employed. An example ofthis would be a 256 position level switch insome remote location. Rather than attempt-ing to use 256 separate frequencies, a singlefrequency can be modulated and used totransmit an 8 bit code to the receiver.This is similar in format to the serial data **presently used on cassette interfaces. Theonly difference is that the serial data streamis transmitted on a high frequency carrier

118

April 1978 ©BYTE Publications Inc

OSBORNE & ASSOCIATES, INC.

The World Leaders In Microprocessor Books

If you want information on microprocessors, begin withthe Osborne books.

PROGRAM BOOKS WRITTEN IN BASIC

Payroll With Cost AccountingAccounts Payable And Accounts

ReceivableGeneral Ledger

These books may be used independently, orimplemented together as a complete ac-counting system. Each contains programlistings, user's manual and thorough docu-mentation. Written in an extended versionof BASIC.#22002 (400 pages), #23002*, #24002*

Some Common BASIC Programs

76 short practical programs, most of whichcan be used on any microcomputer with anyversion of BASIC. Complete with programdescriptions, listings, remarks and exam-ples.#21002 (200 pages)

ASSEMBLY LANGUAGE PROGRAMMING

8080A/8085 Assembly Language Programming6800 Assembly Language Programming

These books describe how to program amicrocomputer using assembly language.They discuss classical programming techni-ques, and contain simplified programmingexamples relevant to today's microcom-puter applications.#31003 (400 pages), 32003*

AN INTRODUCTION TO MICROCOMPUTERSVolume 0 - The Beginner's Book

If you know nothing about computers, thenthis is the book for you. It introduces com-puter logic and terminology in language abeginner can understand. Computer soft-ware, hardware and component parts aredescribed, and simple explanations are givenfor how they work. Text is supplementedwith creative illustrations and numerousphotographs. Volume 0 prepares the novicefor Volume I.#6001 (300 pages)

Volume I — Basic Concepts

This best selling text describes hardwareand programming concepts common to allmicroprocessors. These concepts are ex-plained clearly and thoroughly, beginning atan elementary level. Worldwide, Volume Ihas a greater yearly sales volume than anyother computer text.#2001 (350 pages)

Volume II —Some Real Products(revised June 1977)

Every common microprocessor and all sup-port devices are described. Only data sheetsare copied from manufacturers. Major chipslice products are also discussed.#3001A (1250 pages)

PROGRAMMING FOR LOGIC DESIGN

8080 Programming For Logic Design6800 Programming For Logic DesignZ80 Programming For Logic Design

These books describe the meeting groundof programmers and logic designers; writtenfor both, they provide detailed examples toillustrate effective usage of microprocessorsin traditional digital applications.#4001, #5001, #7001 (300 pages each)

OSBORNE & ASSOCIATES, INC. ♦ P.O. Box 2036 • DEPT. 17 .Berkeley, California 94702 • (415) 548'2805 9:00 a m 5:0° P m PST

Price applies to orders received by June 30. 1978* • PRICE

QTY

AMT

6001 Volume 0 — The Beginner's Book

$ 7.50

2001 Volume I — Basic Concepts

7.50

3001A Volume 11 — Some Real Products (1977 edition)

15.00

4001 8080 Programming For Logic Design

7.50

5001 6800 Programming For Logic Design

7.50

7001 Z80 Programming For Logic Design

7.50

31003 8080A/8O85 Assembly Language Programming

7.50

21002 Some Common BASIC Programs

7.50

22002 Payroll With Cost Accounting

12.50

• 6-1/2%, SF Bay Area residents only TOTAL

• 6%. California residents outside SF Bay Area

_ , . , , , „ . . Sales Tax (Calif, residents only)

• Payment must be enclosed for orders of

10 books or less. Shjppjng Charges

□ check □money order TOTAL AMOUNT OF PURCHASE

TWX 910-366-7277

CITY STATE ZIP PHONE

SHIPPING CHARGES Shipping charges for bulk orders to be arranged.

D 4th class (no charge, allow 3-4 weeks within USA, not applicable to discounted orders)

D $.50 per book, UPS (allow 10 days) in the U.S.

□ $1.50 per book, special rush shipment by air in the U.S.

D All foreign orders, $3.00 per book, for air shipment*These books are scheduled to be published during 1978.Please notify me when they are available:P 23002 Accounts Payable and Accounts Receivable

□ 24002 General Ledger

□ 32003 6800 Assembly Language Programming

Price increase scheduled for July 1, 1978

Please send information on:

□ pricing, ordering, and titlesavailable after 6/30/78

D initial dealer consignmentsD dealer and school discounts

□ foreign distributors po

Circle 82 on inquiry card.

BYTE April 1978 119

+ 163 VOLTS

Figure 2: Example ofcarrier curren t trans-mission. The standard 60Hz 115 VAC sine wave isshown being modulated bya 30 kHz carrier. Twodifferent frequencies 4kHz apart are used toturn devices on and off,respectively, in this design.(Note: drawing is not toscale.)

-163 VOLTS

and detected in a receiver before being con-verted for use. This method should only beconsidered for extensive communications,since it is relatively expensive and thereceivers are more complex.

The major consideration one shouldmake when looking at a carrier current con-trol system is the ultimate number ofdiscrete points to be controlled. An outputchannel is defined as a single bit, ie: a4 channel system would consist of four on/off control elements. In a single channel sys-tem, the simplest carrier/no carrier methodis normally employed. For systems with thecapability of two to ten channels, multiplefrequencies with latching logic are usuallyconsidered. In cases where the minimumnumber of channels is 16, modulated carriersand serial data transmission are advised.There exists a gray area between ten chan-nels and 20 channels. Both multiple fre-quency and serial data can be used in thisrange, but the cost difference must beconsidered.

Carrier Current Control Methods

There are four carrier current trans-mission methods that could be used on thestandard home computer system:

1. Single Channel On/Off. Usually a highfrequency carrier is transmitted through thehouse wiring. A tuned receiver turns onwhen the tone is transmitted, off when not.

Advantages: Cheap. Less than $10 forboth transmitter and receiver.

Disadvantages: One channel only.Tone transmitter must remain on foroutput to remain on.

2. Multiple Channel — Multiple Fre-quency. Generally speaking, two high fre-quency carrier current signals are usuallynot transmitted simultaneously if they arefrom separate channels. The AC line is quitenoisy and not exactly the best antenna. Toavoid harmonics which could trigger un-addressed channels, single unique frequen-cies are used for each channel. In a multiple

VWVM

APPROXIMATELY4V PEAK TO PEAK~~T (MEASURED AT1 SOURCE)

channel arrangement, no single channel iscontinually addressed, so some method mustbe incorporated to latch the logic output.The multichannel methods seen most oftenutilize pulsed transmission. A particularreceiver's frequency is pulsed once or twicewithin a timed window. One pulse means"on," two mean "off." The desired controloutput is latched into a flip flop in thereceiver.

Advantages: Relatively inexpensive.About 20 different channels can beaccommodated with a transmissionbandwidth of 100 kHz. Only a singlefrequency receiver is required for eachchannel.

Disadvantages: Pulsing the latch on oroff requires external gating logic inaddition to a tuned receiver. Multiplechannel arrangements require con-siderable interchannel decoupling andnarrow receiver bandwidths. Depend-ing on the particular logic design,this can be inconsistent with "pulsewindow" techniques. Control pulsesmust be accurately timed using eitherhardware or software techniques.This method, while conceptuallysimple, requires considerable addi-tional circuitry to make it glitch proof.

3. Multichannel — Multifrequency — DualReceivers. This method is essentially thesame as the previous one except that separatefrequencies are used to turn the controlledoutput on and off. Either method wouldutilize the same transmitter.

Advantages: Since separate frequenciesare used for the set and reset func-tions, special constraints on timingare eliminated. Long time-constantinput filtering techniques can be usedto reduce glitches. No special softwareis necessary to drive the transmissiondevice. This method combines the bestfeatures of methods 1 and 2.

Disadvantages: Decreases the total

120 April 1978 ©BYTE Publications Inc

Introduction To Microcomputers,

Volume 0, is written for the absolute be-ginner, the person who "knows nothing"and needs the elementary understandingnecessary to ask questions and decide wherehe wants to go. "The Beginner's Book" tellsyou what microcomputer systems are allabout: the component parts, options avail-able, and what they can do for you. Volume0 also gives an introduction to microcom-puter logic. $7.50.

Getting Involved With Your Own Com-puter by Leslie Solomon and Stanley Veitanswers the questions: "What can smallcomputers do? Which is best fo my pur-poses?" Whether your interest is businessapplications, word processing, education,security, etc., this lucid text will bring youin touch with an exciting new world des-tined to affect us all. $5.95.

Get Down

toBusiness

PAYROLL

WITH COSTACCOVlMM

- IH BASIC -

^^

Payroll With Cost Accounting in

BASIC is now available. The book includesprogram listings with remarks, descriptions,discussion of the principles of each program,file layouts, and a complete user's manualwith step-by-step instructions, flow chartsand sample reports with CRT displays. All35 programs are written in the widely usedcomputer language BASIC, and worktogether to produce a payroll, right down tothe printing of paychecks and maintainingof employee records. $12.50.

Microprocessors: From Chips to Sys-tems by Rodnay Zaks is a complete anddetailed introduction to microprocessorsand microcomputer systems. Some of thetopics presented are: a comparative evalu-ation of all major microprocessors, a jour-ney inside a microprocessor chip, how toassemble a system, applications, interfacing{including the new S-100 bus) and program-ming and system development. $9.95.

Microprocessor Interfacing Techniques

by Austin Lesea and Rodnay Zaks describesthe complete assembly of a microprocessorsystem: assembling a processor; IO tech-niques; interfacing to a keyboard, LEDdisplay, Teletype, printer, floppy disk, videodisplay, cassette-tape; industrial interfacing:analog to digital (and vice versa) techniques;communications; and standards, includingAltair (S-100), IEEE-488, CAMAC. Acomplete case study is presented for amulti-channel communication system and achapter is dedicated to troubleshootingtechniques. Actual interconnects are pre-sented for a number of microprocessorsincluding the 8080 and the 6800. $9.95.

MICROPROCESSOR

INTERFACING

TECHNIQUES

W>

DIAL YOUR BANK CARD ORDERS ON THE BITS TOLL FREE HOT LINE: 1-800-258-5477.

In New Hampshire, Call: 924-3355 Check Payment method:

Send to: ^A My cneck IS enclosed

BITS, Inc. ^^ mSL Bill my MC No / / / Exp. date.

70 Main Street mimm mmm Bill my BAC No 1 / / Exp. date.

Peterborough NH 03458

Name

Total for all books checked

Address

Co*.

State

Zip Code

Postage, $.75 per book for

books

$

Outside US $1.00 per book for

books

$

Grand Total

$

Signature

You may photocopy this page if you wish to leave your BYTE intact.

Prices shown are subject to change without notice.

All orders must be prepaid.

In unusual cases, processing may exceed 30 days.

Circle 14 on inquiry card.

BYTE April T 978 121

Number

Type

+5 Vpin

-12 Vpin

gndpin

+ 12 Vpin

IC1

MC1408

13

3

2

-

IC2

LM301A

-

4

-

7

IC3

MC4024

14

-

7

-

IC4

H11A1

no supply pins designated

IC5

MC1403

1

-

3

-

IC6

741

-

4

-

7

number of possible control outputs.Since two separate frequencies arerequired for each channel, only aboutten total channels can fit in a 100 kHzbandwidth.

4. Single Frequency — AsynchronousData Transmission. This type of carriercurrent transmission system can be used totransmit serial data rather than a discretecontrol signal which is on or off. Thisdata, when received and decoded, can beeffectively used to control a number ofdevices. The method is essentially an exten-sion of the pulse window transmission con-cept stated earlier. Finer filtering methodsare required though, since timing is morecritical.

Advantages: A single frequency sys-tem can allow as many as 128 con-trolled outputs on a single frequencyfor each 8 bit data word.

Disadvantages: Expensive. Transmitter

Figure 3a: Precision ± 2.50 V source for use with the transmitter in figure 3b.

-|> + VREF

\ ^> -VREF

Table I: Power wiring tabie for figures 3aand 3b.

is serial and each receiver must incor-porate logic for serial to parallel con-version, usually in the form of auniversal asynchronous receiver-trans-mitter (UART) or its equivalent.

A Design with Expansion in Mind

Most likely, any experimenter interestedin constructing a carrier current controlsystem will want to start with one or twochannels. In my own case I can see expan-sion to maybe eight channels. The most costeffective approach for me is to use eithersystem 2 or 3 described above. The multi-frequency pulse transmission method has inmy experience proven to be too unreliablein practice. Reliability is gained at the ex-pense of considerable extra circuitry. In asystem used to control the operation of115 VAC appliances and lights when I'mnot at home, I need as much reliability as Ican get. For this reason my design relieson the use of two frequencies for eachchannel: one to turn the device on and adifferent frequency to turn it off. Thesefrequencies will be grouped in pairs andreferred to as a single channel. The band-width of each channel is about 8 kHz.In practical terms this means that, if thetransmitter has a total frequency range of30 kHz to 110 kHz, or 80 kHz, then 80 kHzdivided by 8 kHz equals ten independentchannels. Within this 8 kHz band, twoseparate frequencies are allocated. Oneturns the device on while the other turns itoff. In the example illustrated in this article,channel 1 occupies 35 kHz to 43 kHz. Theon and off frequencies are 35 and 39 kHz,respectively. The next channel, channel 2,occupies 43 to 51 kHz and the on and offfrequencies are 43 and 47 kHz, respectively.There is no magic strategy for picking fre-quencies. Each remote receiver detects twofrequencies 4 kHz apart. The only con-sideration is that all receiver frequencies beseparated by at least 4 kHz. The fewer thechannels, the further apart these frequenciescan be. In a 2 channel system, choosingwidely separated frequencies is safest.

Figure 3b: AC remote control transmitter. The circuit consists of a digitally programmable frequency generator (/CI, IC2> IC3,IC5 and IC6). The output of /CI, a digital to analog converter, is converted from a current to a voltage by IC2 and sent to iC3, avoltage controlled oscillator, /n this design, the voltage controlled oscillator can produce frequencies in the 30 kHz range. Opto-Isolator IC4 keeps the computer circuitry from Interacting with the house wiring (see CAUTION note!). The transmitter sectionconsists of lC4f Ql, Q2, and Q3. The three transistors form a power amplifier which couples the signals through a capacitor ontothe A C line. The . 5 W output of the amplifier is sufficient to reach all areas of most home wiring systems.

122 April 1978 ©BYTE Publications Inc

COMPUTEROUTPUT (

B7 O-

B2|Z>-Bl O-

[«o—;

+ VREF *TEN TURN POT +VREF

t !i

MSB VREF

ICI

DAC

MCI408

LSB

33pF

IK*

GAINADJUST

■-H

2.2K-JWr-

IOK*

OFFSET

ADJUST

-VREF

2.2K

470X2 2—VW

15

33pF

< I.5K

/77

-I2V

T1

12.6 VAC

300 mA

filament

transformer

IC5

2 to 2.5 V reference chip,

MC1403u or

equivalent.

All resistors are

% W 5% unless oth

erwise noted.

All

capacitors are 100 V

ceramic

unless other-

wise

noted.

Transmitter Calibration

1. +VREF and -VREF should be + and- 2.50 ± 0.05 V respectively.

2. With a binary input of 00000000 to thedigital to analog converter, adjust the offsetadjustment pot to give an output voltage of2.000 Von IC2, pin 6.

3. With a binary input of 11111111 to thedigital to analog converter, adjust the gainadjustment pot to give an output voltage of5.000 Von IC2, pin 6.

4. +V and —V should be approximately 11 to13V.

5. The output frequency at pin 6 of IC3should range from approximately 30 kHz to110 kHz.

CAUTION

The computer ground is designated by ff? .The transmitter section ground is designated by^7. These two grounds are isolated by opto-isolator IC4 and are not to be connected to-gether. Also, when this unit is attached to theAC line, care should be taken in handling thecircuit board, since sections of it will be at ACline potential.

.005/25VPOLYCARBONATEOR POLYSTYRENE

m

220X1—-WS*—

VCO OUT30-IIOKHz

IN4002(2)

47X2I/2W

500V

Photo 2: Prototype boards of transmitter (at left) and one receiver board.Receiver unit is described next month.

Channel 1 could occupy 35 kHz to 43 kHz,and channel 2 could be between 83 kHzand 91 kHz (and transmit on 83 kHz and87 kHz). Apportioning bandwidth to maxi-mize the number of channels is a majorconsideration in a multifrequency system.(I will describe the receiver section nextmonth.)

Figure 3 is the schematic of the AC re-mote transmitter. It consists of a digitallyprogrammable frequency source and anoptically isolated house wiring driver.

The programmable frequency generator,IC1, IC2, IC3, IC5 and IC6, forms a pre-cision voltage controlled oscillator. 1C1 isan 8 bit digital to analog converter (ex-plained in greater detail in my article "Con-trol the World," September 1977 BYTE,page 30) whose output current is propor-tional to the 8 bit data word impressed onits input lines. The current output is con-verted to a voltage through IC2 andpresented to the input of IC3, voltagecontrolled oscillator (VCO). Its output

100 FOR X =0 to 255

110OUT2,X

120 REM PORT 2 IS THE OUTPUT PORT ATTACHED

TO THE DAC INPUT130 FOR D = 1 TO 500140 NEXT D150 REM THIS ISA DELAY ROUTINE SO THAT THE PROGRAM

DOESN'T SCAN TOO FAST TO SEE160 NEXTX170 GOTO 100180 REM CONTINUE TO CYCLE INDEFINITELY

Listing 7: A BASIC program to test the voltage controlled oscillator shown infigure 3. The program causes the output frequency of the oscillator to rampup in fairly linear fashion and reset

frequency is proportional to input voltage.

Analog frequency sources such as thisare usually avoided because of stabilityproblems. The alternative involves pro-grammable divided-by-N counters and acrystal frequency input, which would meanabout 25 integrated circuits to produce thesame range of selected frequencies. There-fore, it is important to overcome potentialstability problems. The major error-produc-ing components in such designs are usuallythe voltage references and oscillator timingelements. By using a precision voltagereference circuit, IC5 and ICG, and incor-porating polystyrene low drift capacitorsin the voltage controlled oscillator section,these problems are virtually eliminated.

The result is a digitally programmableoscillator. With the values chosen, the rangeis about 30 kHz to 110 kHz. Changing theoutput frequency is simply a matter ofchanging the code on the digital to analogconverter. Within the 80 kHz range of thevoltage controlled oscillator there will be256 discrete increments of frequency.Presuming that the input and output charac-teristics are linear, each increment wouldbe 80000/256 or approximately 300 Hz.This means that, if a digital input code ofbinary 0000000 produces an output of30,000 Hz, then octal 00000001 would be30,300 Hz. Further extrapolation gives anoutput frequency of 49.2 kHz for binary01000000 (decimal 64). In reality, thevoltage controlled oscillator is not perfectlylinear, but the output frequency can be setempirically by using a simple BASIC pro-gram. This setup procedure will be coveredin detail when I discuss the receiver calibra-tion section next month.

Once the oscillation frequency has beenproduced, the next problem is to transmitit through the house wiring. This trans-mitter section consists of IC4, Ql, Q2 andQ3. The oscillator output is optically iso-lated and coupled to the output driver stagethrough IC4. The three transistors form apower amplifier and pump about .5 wattsonto the AC line. This amount of power issufficient to reach all areas of your homeand probably a few of your neighbors, butthere should be no interference with anyhousehold appliances. [As in all carriercurrent systems, the range is any AC wiringsharing the same final step down trans-former. This might be two or three housesin suburbia, or one floor of an apartmenthouse or dormitory ... CH] Since theoutput driver is isolated from the computer,it cannot use the computer power supplyas its power source, so components D1,D2 and T1 form a voltage doubler circuit

124 April 1978 ©BYTE Publications Inc

to provide approximately + and ""13 Vto run the driver. It is important to note thatthere are two separate grounds in the circuit.One is the computer ground and the other isthe driver circuit ground. They are NOT tobe connected together (see CAUTION note).

Building and Testing the Transmitter

Photo 2 shows the transmitter on theleft and one of the receiver boards on theright. It is necessary to build the receiver tocompletely test the transmitter without theuse of an oscilloscope to make sure every-thing is all right. Certain shortcut methodscan be employed this month, though, togive you reasonable confidence about thecircuit's operabiiity.

Build the circuit as shown in figure 3with the exception of the driver circuit andIC4. Add a 0.1 juFcapacitor in parallel withthe 0.005 fif capacitor already betweenpins 3 and 4 on IC3. This will effectivelylower the output frequency range of thevoltage controlled oscillator into the audiorange. By putting a 100 £1 resistor betweenIC3 pin 6 and an earphone whose otherterminal is connected to ground, this audiotone can be heard. It is a simple matter tochange the tone. The astute experimenterwill realize that we have constructed aprogrammable tone generator, possibly suit-able for music applications.

Use BASIC to Run the Controller

As with most of my recent designs, thisone is driven by a latched parallel outputport, and update speed is of no particularimportance. This makes it a natural forBASIC, which sets 8 bit output ports. Thisinterface controller can be set to any fre-quency within its range under programcontrol. BASIC can also perform a simpletest to determine whether the voltagecontrolled oscillator works (see listing 1).This program causes the output frequencyof the voltage controlled oscillator to rampup in a roughly linear fashion and reset.With the capacitor values in the schematic,the range should be approximately 30 kHzto 110 kHz. Again, picking any largercapacitor value will allow this sawtooth tonegenerator to be heard in the audio range.

Actual control of a device comes afterthe receiver section has been built andmounted in an enclosure such as that shownin photo 3. While it is difficult to discussthe application without having discussedthe method, I don't want to leave everyonehanging till next month. The simple programin listing 2 controls two remote channels,designated channel 1 and channel 2, from

the computer keyboard. This is written inMicro Com Zapple BASIC.

Next month I'll describe the design andconstruction of the receiver section as wellas discuss more detailed applications. Anatural for this project is to use a quantityof these remote receivers to control lightand sound sources around the house tosimulate occupancy when no one is home.

If you have any questions about thisarticle or previous articles, please feel freeto write to me. Please enclose a stamped,self-addressed envelope and I will attempt topersonally answer all letters.

Next month: "Tune In and Turn On:Part 2.""

Photo 3: Complete receiv-er package. Remote con-trolled appliance plugs in-to rear of box. Set andreset buttons allow appli-ance to be controlledlocaliy as well as remotely.

Listing 2: A sample BASICprogram used to controlthe circuit in figure 3.

100 PRINT "INDICATE CHANNELTO BE CONTROLLED

-1 OR 2 -"110INPUTA120 IF A < 2 GOTO 150130 GOTO 100

150 PRINT "DO YOU WANT TO TURN CHANNEL"; A; "ON OR OFF?"160 INPUT B$

170 IF B$ = "ON" GOTO 300

180 REM THE REMOTE CONTROLLER IS ATTACHED TO OUTPUT PORT 2190 REM THIS ROUTINE TURNS A CHANNEL OFF200 IF A = 1 THEN OUT 2, 180210 REM 180 IS THE DECIMAL OFF CODE FOR THE CHANNEL 1

PROTOTYPE220 IF A = 2 THEN OUT 2, 118230 REM 118 IS THE DECIMAL OFF CODE FOR THE CHANNEL 2

PROTOTYPE240 GOTO 100

300 REM THIS ROUTINE TURNS A CHANNEL ON310 IF A = 1 THEN OUT 2,162320 REM 162 IS THE DECIMAL ON CODE FOR CHANNEL 1

PROTOTYPE330 IF A =2 THEN OUT 2, 96340 REM 96 IS THE DECIMAL ON CODE FOR CHANNEL 2

PROTOTYPE350 GOTO 100

April 1978 © BYTE Publications Inc 125

The SOL-20 in a New England par/or context, obviously enjoying life. The entire system fits onone table with a video monitor on top of the computer and an audio tape recorder for massstorage to the right.

User's Report The SOL-20

Dennis E Barbour2 Coliseum AvNashua NH 03060

John Kemmeny in his book, Man andthe Computer, reveals his thoughts con-cerning the future of computers. Kemmenybelieves that people will have access to largeregional computers in the future. This willallow people to do many jobs in the homeand provide entertainment and knowledge.A computer terminal in the home will betied to a large regional supercomputergiving people the ability to do many thingsat home not now possible, such as readingthe latest news stories, studying subjectsfor degree credit, storing recipes to allowthe input of a week's menu and productionof a grocery list of needed items, and therecording and computation of familyfinancial matters. The possible uses of thistype of computer are unlimited.

Processor Technology has taken thisconcept of the home computer terminalattached to a supercomputer one steptoward reality by providing the home userwith a terminal and microprocessor com-bination, the SOL, capable of functioning

with, or independent from, another com-puter. The operating systems provided byProcessor Technology allow the SOL systemto operate as a microprocessor independentof any outside processor with its ownperipherals until the terminal command isissued, which causes SOL to operate as acomputer terminal. This combination willallow the greater use of your home micro-computer today and in the future. Whatfollows is a brief description of a SOLsystem based on my personal experiences.

Hardware

My microprocessor, a SOL-20, uses an8080 processor chip. (The 8080A and the9080A are also available.) This system hasboth parallel and serial communicationinterfaces, a keyboard interface, audiocassette interface, a video display generator,1024 8 bit words of volatile system memory,and 1024 8 bit words of volatile displayrefresh memory. My system also has 8 K

126

April 1978 ©BYTE Publications Inc

bytes of volatile main user memory forprogramming and an operating systemin a "personality module" with prepro-grammed read only memories.

A feature of the hardware is a parallelinterface consisting of eight bits for eachinput and output plus control handshakingsignals. The output bus uses three stateTTL levels for bidirectional interfaces. Theserial interface circuit includes both asyn-chronous RS-232 and 20 mA current loopprovisions and operates at from 75 to 9600bits per second, switch selectable. (When Isay that something is switch selectable, Imean that there is a series of small switcheson the printed circuit board and an explan-ation in the hardware manual of what theswitch does and what your options are.)The keyboard interface handles a 7 levelASCII encoded TTL keyboard which re-quires a strobe pulse after the data is stable.

The audio cassette interface is programcontrollable and self-clocking with a phaselock loop. It operates at the dual rate of 300or 1200 bits per second. Included is anautomatic level control in both the recordand playback modes. Recording is theCUTS/BYTE standard compatible, an asyn-chronous Manchester code at 1200/2400 Hzor 600/1200 Hz.

The video display circuitry generates 16lines from data stored in its 1 K refreshmemory. Alphanumeric and control char-acters (the character set includes all upperand lower ASCII plus control characters)are displayed in either black on whiteor white on black (this feature is switchselectable). The solid video cursor with aswitch selectable blink is programmable.This circuitry can drive any video monitoror monochrome television converted tohandle video input.

The assembly of the SOL appears to berelatively easy. I bought my SOL fullyassembled, but I read the assembly instruc-tions, looked at the diagrams, and thorough-ly examined the hardware. I believe that Icould quite easily put a SOL together. Theinstructions are simple and straightforward.The assembly notes include parts lists,assembly tips and precautions, pictures anddrawings, and step-by-step instructions onassembly and testing. Also included areinstructions on handling integrated circuits,soldering techniques, and a list of the toolsthat will be needed. Processor Technologyprovides schematic and detailed assemblydrawings in a separate section of theirmanual.

Another important feature of the SOL isthe system's completeness and modularity.All of the hardware is in one package andlooks like a large electric typewriter. The

DUMP

ADDR,

ADDR

ENTER

ADDR

TLOAD

EXECUTE

ADDR

BASIC

TERMINAL

Dump memory locations to screen

Enter data to memory

Load to memory

Execute a program at a given address

Execute a program located at address zero

Return to terminal mode

Table 1: CONSOL operating system command summary.

DUMP

ADDR, ADDR

ENTER

ADDR

TLOAD

EXECUTE

ADDR

BASIC

TERMINAL

TSAVE (NAME)

ADDR, ADDR

TXEQ (NAME)

ADDR

TCAT

SET

SET Dl

SET IN

SET OUT

SET TAPE

SET CI

SET CO

SETTY

SETXE

Dump memory locations to screen

Enter data to memory

Load data from tape to memory

Execute a program at a given address

Execute a program located at address zero

Return to terminal mode

Save certain memory locations on tape

Load a certain program from tape and execute it

List tape header information

Allows the setting of the following things

Set display speed

Set input driver

Set output driver

Set tape speed

Set custom input driver address

Set custom output driver address

Set types into tape save header

Set execute address into tape save header

Table 2: SOLOS operating system command summary.

video monitor and cassette recorders areattached at the back panel with cables.The system does not have exposed boardsor parts to collect dust or be damaged. Thesystem can be easily transported.

Operating Systems

SOL, at present, has three operatingsystems. They are CONSOL, SOLED andSOLOS. CONSOL allows simple terminaloperations and computer functions. SOLEDallows more advanced terminal operationsthan CONSOL with additional screen, fileand cassette tape operations. SOLOS allowsuse of the full range of the microprocessorplus the full functions of an intelligentterminal. I cannot describe SOLED anyfurther, not having the information availableto me. However, CONSOL and SOLOS willbe described in detail.

CONSOL, the simplest of these operatingsystems, allows the SOL to function bothas a standard CRT terminal and as a micro-computer. This software system is not assophisticated as SOLOS which has manymore commands and greater abilities.

All the operating systems work in thefollowing fashion. The same switch to powerup the hardware serves to initialize theoperating system. The operating systeminitializes system memory, clears the screenand enters the terminal mode. Depressingthe mode key causes SOL to operate as amicrocomputer. The operating systemissues a prompt character and awaits furthercommands.

April 1978 ©BYTE Publications Inc

127

10 REM THIS PROGRAM IS FOR TEACH IMG YOUNGSTERS MULTIPLICATION.

20 PRINT **D0 YOU WANT TO TRY THE MULTIPLICATION PROGRAM?"

30 PRINT "ANSWER 1 FOR YES# AND £ FOR NO."

40 INPUT X

50 IF X-2 THEN 340

60 PRINT

70 PRINT "INPUT THE FIRST NUMBER."

80 INPUT A

90 PRINT AJ" TIMES"

100 PRINT

110 PRINT "INPUT THE SECOND NUMBER."

120 PRINT B

130. print a;" times";;b;m EQUALS"

140 PRINT

150 PRINT "INPUT WHAT YOU THINK THE ANSWER SHOULD BE."

160 J-A*B

170 INPUT C

180 PRINT A;" TIMES"JBJ" EQUALS"JC

190 IF C-J THEN 260

200 PRINT

210 PRINT "YOUR ANSWER WAS INCORRECT."

220 PRINT

230 PRINT A;" TIMES"!B;" EQUALS"!J

240 PRINT

250 GOTO 290

260 PRINT

270 PRINT "CONGRATULATIONS* YOUR ANSWER WAS CORRECT."

280 PRINT

290 PRINT

300 PRINT

310 INPUT X

320 IF X-2 THEN 340

330 GOTO 60

340 PRINT

350 PRINT "HAVE A NICE DAY I"

360 END

♦ RUN

DO YOU WANT TO TRY THE MULTIPLICATION PROGRAM?

ANSWER 1 FOR YES* AND 2 FOR NO.

?1

DO YOU WANT TO CONTINUE?"ANSWER 1 FOR YES* AND 2 FOR NO."

INPUT THE FIRST NUMBER.?2

2 TIMES

INPUT THE SECOND NUMBER.?2

2 TIMES 2 EQUALS

INPUT WHAT YOU THINK THE ANSWER SHOULD BE.?2

2 TIMES 2 EQUALS 2

YOUR ANSWER WAS INCORRECT*

2 TIMES 2 EQUALS 4

DO YOU WANT TO CONTINUE?ANSWER 1 FOR YES* AND 2 FOR NO.?l

INPUT THE FIRST NUMBER*?£

8 TIMES

INPUT THE SECOND NUMBER.?2

2 TIMES 2 EQUALS

INPUT WHAT YOU THINK THE ANSWER SHOULD BE.?4

2 TIMES 2 EQUALS 4

CONGRATULATIONS* YOUR ANSWER WAS CORRECT-

DO YOU WANT TO CONTINUE?ANSWER 1 FOR YES* AND 2 FOR NO*72

HAVE A NICE DAY1

Listing I: A tutorial BASIC program of the simplest variety} created oneevening to instruct a 6 year old in some of the complexities of arithmetic.

There are five commands for operatingSOL as a microcomputer under CONSOL,two for entering data, two for executingprograms, and one for displaying thecontents of memory on the monitor. (Seetable 1 for the complete list of CONSOLcommands.) A person can enter data eitherthrough the keyboard by means of theENTER command or through a cassette taperecorder by means of the TLOAD command.The ENTER command permits the alteringof any byte or series of bytes of storage witheither data or a machine language program.Program execution begins with the issuanceof either of two commands. EXECUTEallows the execution of a program beginningat any point that you name in memory,whereas the issuance of the BASIC com-mand starts program execution frommemory location zero. The fifth command,DUMP, allows the displaying of any byteor series of bytes on the video monitor.

The SOLOS operating system allowsfor more advanced operation of the SOL.(See table 2 for a complete list of SOLOScommands.) Besides the six basic commandsallowed under CONSOL, there are fouradditional commands, with one of theseadditional commands, SET, having eightdifferent options. To begin with, theTLOAD command is different under SOLOSthan under CONSOL. Under SOLOS, theTLOAD command allows the searching of atape with multiple files for a certain namedfile, skipping over all files before it. UnderCONSOL, you have to manually move thetape to the beginning of the tape file.

TSAVE allows the saving on tape of thecontents of the memory locations indicated.TXEC allows the loading of a named pro-gram from tape to memory and the im-mediate execution of that program. TCATallows the listing of the tape file headerinformation on the monitor. This infor-mation includes the file name, executionaddress, and the beginning and endingaddresses of the program when loaded tomemory.

The SET command has eight differentoptions. One can set the display speed,allowing the speeding up and slowing downof characters on the monitor to suit yourprogramming. Using this option of theBASIC language interpreter, I was able togenerate a very impressive lightning boltimage for my young son and his friends.The input and output driver speeds canbe controlled through the use of the SETcommand along with the tape speed, and

128

April 1978 ©BYTE Publications Inc

the input and output driver addresses. Thetape save headers can also be altered usingSET. The more useful of the two operatingsystems is obviously SOLOS since it allowsgreater flexibility.

Software

My system has a BASIC interpreter, theBASIC-5 package. This interpreter has manyof the usual BASIC commands and state-ments. It also allows use of system com-mands within programs. BASIC-5 allows theusage of single dimension arrays, manyBASIC functions, and the ability to read andwrite tapes. It also has 8 digit precision andthe ability to link to machine languagesubprograms.

I would advise the purchase of the 8 KBASIC for one important reason: theability to have several commands and fea-tures not available in the BASIC-5 inter-preter. These would be the RNUM commandwhich allows the renumbering of statements,and also the ability to utilize alphanumericsand matrices (instead of only single di-mension arrays) which would be particularlyuseful.

Uses

I have utilized my SOL for several things.First and foremost, I have introduced my 6year old son to computers through gamesand learning programs, such as the multi-plication program reproduced and describedin listing 1. I have also used it for entertain-ment especially through the use of the targetgame provided by Processor Technology,and a few games I have written. Lastly, Ihave used it to fool around with my firstlove, history. I have written several statis-tical analysis programs for the SOL using theBASIC-5 software to continue with myresearch on colonial New England. Alsoreproduced here, as listing 2, is a sampleof a simple program to do elementaryfertility figures.

I have reproduced and wholly writtena few programs to assist in the mathematicaleducation of my son. MULT and two otherprograms have been written as interactivequizzing programs to test and teach mathe-matics through praise when he is correctand by showing him the correct way whenhe is wrong. Thus the computer acts as ateacher and could be utilized in this fashionin every home and classroom for elementaryschool aged children. More sophisticatedprograms could be implemented on theSOL for older children. These programs,in the form of games, could serve twopurposes, entertainment and education.

Listing 2: A sampie of a statistical BASIC application typical of programsused by the author in his avocation of historical studies.

10 PRINT"THIS PROGRAM WILL PRODUCE FERTILITY FIGURES"

11 PRINT"F0R THE DATA INPUT- THE OUTPUT CONSISTS OF"IS PRINT"THE PROPORTION OF BIRTHS TO MARRIAGES OVER"

13 PRINT"A DECADE WITH FIVE YEAR INCREMENTS BETWEEN DATA."

14 PRINT"THESE FERTILITY FIGURES CTHE BIRTH RATE) CONSIST OF"

15 PRINT"THE NUMBER OF BIRTHS FOR A DECADE DIVIDED BY THE"

16 PRINT"NUMBER OF MARRIAGES FOR A DECADE WHICH BEGAN FIVE"

17 PRINT"YEARS EARLIER."

65 Dl-0

66 1-0

100 PRI NT"INPUT THE STARTING YEAR (BETWEEN 1650/1795) DESIRED

105 INPUT Y

106 PRINT"INPUT THE NUMBER OF SETS OF YEARS OF DATA

107 INPUT D

110 PRI NT"INPUT THE NUMBER OF FIVE YEAR INCREMENTS DESIRED

ISO INPUT N

128 DIM Yl (40)#M1 (40)*B1 (40)*F1 (<|0)*Y2(40>

129 DIM F2(40)*Y3(40)

130 FOR J-l TO D

140 READ Yl(J)*Ml(J)*Bl(J)

160 NEXT J

195 PRINT" MARRIAGE YEARS FERTILITY"

200 FOR J-l TO D

205 IF I-N THEN 340

210 IF YICJXY THEN 290

220 Y2(J)-YI(J*2)-l

230 Fl(J)-(SI(J*l>*BKJ*2))/(M1( J>*N1(J*1 >)

250 PRINT Y1(J)*Y2(J>*F1CJ)

260 S-S+FKJ)

270 D1-D1*1

280 1-1*1

285 F2(I)-FKJ>

286 Y3U )»Y1CJ)290 NEXT J

340 M-S/Dl

350 PRINTf'MEAN OF FERTILITY FIGURES **,H

395 PRINT

396 PRINT

398 PRINT " YEAR FERTILITY"

399 PR INT"*♦**♦ + ♦*♦♦♦♦♦♦♦♦♦♦ + ♦ + ♦* + ♦♦♦♦♦♦♦♦♦*♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦*♦"

400 FOR K-l TO I

420 L-INT((F2(K)*lO)/2)

430 PRINT Y3CK);"♦♦";TAB(L);"*"

490 NEXT K

500 PHI NT"*+♦♦♦*♦♦♦+♦♦+♦♦+♦+ ♦♦♦*♦♦+♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦■•

900 DATA 1650*5*28*1655*8*32*1660*14*43*1665*9*44

910 DATA 1670*20*78*1675*18*90*1680*26*125*1685*29*166

920 DATA 1690*24*163*1695*20*156*1700*24*179*1705*34*196

930 DATA 1710*54*239*1715*40*247*1720*64*287*1725*66*289

940 DATA 1730*84*333*1735*88*328*1740*88*371*1745*92*354

950 DATA 1750*87*372*1755*105*365*1760*88*388*1765*80*377

960 DATA 1770*65*342*1775*80*311*1780*108*298*1785*105*344

970 DATA 1790*118*228*1795*99*350

999 END

THIS PROGRAM WILL PRODUCE FERTILITY FIGURES

FOR THE DATA INPUT- THE OUTPUT CONSISTS OF

THE PROPORTION OF BIRTHS TO MARRIAGES OVER

A DECADE WITH FIVE YEAR INCREMENTS BETWEEN DATA.

THESE FERTILITY FIGURES (THE BIRTH RATE) CONSIST OF

THE NUMBER OF BIRTHS FOR A DECADE DIVIDED BY THE

NUMBER OF MARRIAGES FOR A DECADE WHICH BEGAN FIVE

YEARS EARLIER.

INPUT THE STARTING YEAR (BETWEEN 1650/1795) DESIREDi

71650

INPUT THE NUMBER OF SETS OF YEARS OF DATAl

?30

INPUT THE NUMBER OF FIVE YEAR INCREMENTS DESIREDi

720

MARRIAGE

YEARS

FERTILITY

1650

1659

5*769231

1655

1664

3*954545

1660

1669

5*304348

1665

1674

5.793100

1670

1679

5.657895

1675

1684

6*659091

1680

1689

6*018182

1685

1694

6*018868

1690

1699

7*613636

1695

1704

8*522727

I 700

1709

7*5

1705

1714

5.522727

1710

1719

5.680651

1715

1 724

5*538462

1720

1729

4.784615

1725

1734

4*406667

1730

1739

4*063953

1735

1744

4*119318

1740

1749

4*033333

1745

1754

4*117316

MEAN OF FERTILITY FIGURES!

5*553943

April 1978 ©BYTE Publications Inc

129

Circle 64 on inquiry card.

r

SEMINARS

Micro DiversionsContinuing Microcomputer Educationannounces

MICROCOMPUTINGHARDWARE AND SOFTWARE

An introduction to the design,

construction, and programming

of microprocessor-based computers.

These are companion "how-to-do-itT?

courses on the hardware and software

technologies of personal computing taught

by Micro Diversions product designers.

W- — SOFTWARE OUTLINE ■ ■*■ ■■ HARDWARE OUTLINE ■■ mm

.The Software Concept

1(A) The stored program - bits and bytes |

I IB) Algorithms in problem solving

_(CJ Assemblers and high level languages

■ introduction to Programming - BASIC II (A) Elementary programming conceptsI IB) BASIC language statements|(C) Simple data structures and examples |

1 Introduction to Assembly Language| (A) Registers, memory, input/output

■ (B) Data representation1(C) Data movement and exchange|ID) Arithmetic and logical operations

'The Z 80 Microprocessor Instruction Set

|(A) Registers and addressing modes

■ IB) Memory and register data transfers■(CI Arithmetic and logical operations|(D) Bit manipulationI'M Transfer of control, jumps■(F) I/O instructions

History and Culture of Microcomputingl:A) When, where, why|!B) Literature, reference books, journals

.C) Personal computing, applications ofI microcomputers

iDigital Electronics

■ Al Introduction to and survey of componentfamilies

|(B) Common components and how to use

■ them

"ICI Large scale integration components§(D) Basics of digital design

(Introduction to Microcomputer Architecture

■ :Ai Buss concept*(B) Addressing, input output|(C) User interface techniques

(How a Central Processing Unit Works

■(A) Introduction to the CPU concept(B) Intel 8080 CPU|(C) ZilogZSOCPU_(D) Interrupt architectures and uses■(E) Real time clocks

iHow a Microcomputer's Memory Works

■I A) Random access memory, its architecture

and design1(B) Readonly memory■ ICI Modular programming subroutines-^) Mass storage (disks and tape cassettes)(D) Using the instruction set B(D) Bubble memories

■ Assembly Language Techniques

(Al General conventions1(B) Data structures and types

■ Interrupt and I/O Programming

(A) Interrupt structures1(B) 10 handlers

■ (C) Data rates and trade-offs

I Software Architecture of a Monitor

■ (A) The monitor as procedure

(B) Functions of a monitor

1(C) The jump table - vectored entry

■ (D) Analysis of a monitor

I Loading and Debugging

■ (A) Getting the code in_(B) Relocation and linking

1(C) Breakpoints and snapshots

■ (D) Patching and polishing

How TV Interfaces Work

B(A) Character display principles and design■(B) Full graphics interfaces for plotting and

drawing|(C) Light pens and how to interface them

§How Microcomputer Peripherals Work

■(A) Keyboard scanners

■(B) Tape cassette interfaces

|(C) Telephone interfaces (UARTs and

- MODEMs)

'(D) A/D converters

'Hobbyist Construction Techniquesi(A> Layout and technical considerations—(B) Mounting techniques1(C) Wire wrapping tools and techniques■(D) How to get started (what to buy, where_^ to buy)

Eight Monday and WednesdayEvening Sessions

1 May through 24 MayEach course $110.00 or $190.00 for both.

<£ Micro Diversions, Inc.

7900 Westpark Drive, Suite 308McLean, Virginia 22101

(703)827-0888

Listing 2, continued:

YEAR

++♦+++++♦1650 ♦♦1655 +♦1660 ++1665 ++1670 ++1675 ♦♦1680 ♦ ♦1685 ♦♦1690 ♦+1695 ♦+1700 ♦♦1705 ♦+1710 ♦ +1715 ♦ +1780 ♦♦1725 ♦+1730 ♦♦1735 +♦1740 ♦♦17A5 ++

♦+♦♦++♦+♦♦

FERTILITY*> ++++ + + + ++++ + + ♦ + + ++++ +++++ + +++♦ + ♦

*+++4^++++++++++*+++++++++++++++++++++++++++

In closing, I find the SOL system easyto use, fun to program, and important inour home. It provides my family withentertainment in the form of games bothfrom Processor Technology and written byus. It also provides a mathematics tutor athome for my son. It has also given my sonan interest in and understanding of com-puters far beyond his years and education.I definitely recommend the SOL, based onmy experiences with it."

80 103A Serial I/O and FSK modem forprofessional and hobby communications.

• Completely compatible with your IMSAI, ALTAIRSOL** or other S-100 microcomputers.Trademarks of *MITS, **Processor Technology

• Designed for use on the dial telephone or TWXnetworks, or 2-wire dedicated lines, meets altFCC regulations when used with a CBT coupler.

• All digital modulation and demodulation with on

board cyrstal clock and precision filter mean thatNO ADJUSTMENTS ARE REQUIRED

• Bell 103 standard frequencies

• Automated dial (pulsed) and answer

• Originate and answer mode

• 110 or 300 BPS speed select

• Complete self test capability

• Character length, stop bit, and parity

• 90 day warranty and full documentationPRICES Bare Board and Manual

Assembled (48 hour burn in)

.95 ^mTi

95

Master Charge or Visa accepted.

DC Hayes Assoc,R^

P.O. Box 9884, Atlanta, Ga. 30319, 404/231-0574

130

April 1978 © BYTE Publications Inc

Circle 51 on inquiry card.

BYTE's Bits

Dallas to Host AAME Exposition

The International Microcomputer Ex-position will be held in the Dallas TXConvention Center, September 29through October 1 1978. The expo-sition, cosponsorecl by The AmericanAssociation of Microprocessor Engineers(AAME) and other groups, will bedirected toward all levels of technologyfrom the engineer to the novice. Semi-nars and panel discussions will be held,and over 250 exhibits are planned. Formore information, contact BeverlyTanner at (214) 271-9311."

A Conference in Texas

1978 Computer Users' Conferencewill be held on April 20 and 21 at EastTexas State University, Commerce TX.The theme will be "Reality in theComputer World" with the sessiontopics being "Using the Computer ASa Profession" and "Using the ComputerIN a Profession."

In addition to keynote speeches,

industrial and educational represen-tatives will hold panel discussions ofcurrent and future computer sciencecurricula for the respective computerusage areas.

Fees for the conference are $20($10 for students). For further infor-mation contact Donna Hutcheson, Com-puter Users' Conference Coordinator,East Texas State University, Departmentof Computer Science, Commerce TX75428, (214) 468-2954."

Cruise Interfacing. . .

Join a Seaborne Microcomputer

Workshop

An advanced Microcomputer Inter-facing and Programming Workshop tobe presented on a 7 day Caribbeancruise has been announced by theExtension Division of Virginia Poly-technic Institute and State University.The workshop is scheduled to be pre-sented aboard the TSS Carnivale fromJune 17 thru 24. It will consist of anintroductory session followed by five

daily sessions of six hours of lectureand laboratory work. The course contentis designed for scientists, engineers andexecutives who have prior knowledge ofbasic digital electronics and microcom-puter interfacing and programming tech-niques.

The course is being offered in cooper-ation with the departments of chemicalengineering, chemistry and extensionat Virginia Polytechnic Institute andState University. The instructors for thecourse will be Professors Peter Rony,David Larsen and Paul Field. It is thelatest in a series of over 30 seminarswhich have been presented by thisgroup. Text and laboratory workbookmaterial for the course includes severalnew books in the Bugbook series,authored by the instructors and theircolleagues. Participants will work inpairs on their laboratory experimentsusing a complete 8080a microcomputerand breadboarding station. The stationswill be assigned for the duration of thecourse so that additional work may bedone in the participants' staterooms.

Norris Bell, director of VPI's Con-tinuing Education Center, said thatthe cruise ship course is the result of asearch for new and interesting ways ofproviding continuing education. Addi-tional information on the course and onthe travel agency handling the arrange-ments are available from the Registrar,CEC, VPI & SU, Biacksburg VA 24061,(703) 951-5182."

SAVE THE WHALE

The world's best computer may be inside a Sperm Whale's head.

The Sperm Whale has the largest brain of any creature that has ever existedon our planet. The brain of this 18-meter marine mammal weighs up to 9 kilograms.It uses echo-location to find giant squid at ocean depths of over 1,000 meters.More than 13,000 sperm whales are scheduled to be slaughtered this yearby agreement of the International Whaling Commission.

The CONNECTICUT CETACEAN SOCIETY is a small, totally volunteer,non-profit education and conservation organization dedicatedto seeking the abolition of all whale killing. Anyconcerned citizen can help our efforts by sending ^

name and address and a $10 or more contribution toCCS, P.O. Box 145, Wethersfield, CT 06109.

There are two mountain peaksof evolution on planet earth:on the land, homo sapiens-human beings; in the sea,cetaceans- whales, dolphins,and porpoises.

Drawing byDon Smtti

Circle 143 on inquiry card.

April 1978 ©BYTE Publications Inc 131

Robot Simulation on Microcomputers

Why build a mechanism when a video display can be used to visualize logical problems of robots?

John Webster

Director, Audio Visual Services

University of New Brunswick

Fredericton NB E3B 5A3

CANADA

A short time ago I came across a program(Dr Dobb's journal, volume t, number 8,page 28) written by Marvin Winzenread,entitled "The Bouncing Beastie: A RandomWalker for Processor Tech's VDM-1." WhenI loaded the program, sure enough, thislittle thimble with feet appeared and beganstumbling around the screen leaving a trailof asterisks. That was it. No big deal, yousay? Marvin says the little character lookslike a turtle to him, but to me it looked likethe robot I'd tried to build when I was inhigh school, and I was entranced.

I'm one of those people who has alwayswanted to build a robot, but never quite didit for various reasons.

Part of the problem is that once youfigure out approximately how to build, say,a simple little robot that will wander aroundyour living room bouncing off furniture,then there isn't really much point in going toall the trouble and expense of actuallybuilding it. You already know what it'sgoing to do, and it wouldn't really be allthat useful.

Another factor is that the hardwarerobots will need already exists and isn'tlikely to change all that much in the foresee-able future. The thing that's lacking is thesoftware. If we had the proper programs wewould all have robots today.

Watching Marvin's surprisingly fascinatinglittle creature bounce around the screen, itoccurred to me that a very interesting,entertaining and hopefully useful alternativeto actually building robots might be tosimulate them on a microcomputer tele-vision display. Thus, my microbots wereborn. Microbots are simulated robots thatmove about a simulated room (the tele-vision screen) under software control. Withmicrobots you can spend your time thinkingup new things for them to do and testingrobot related software without worryingabout the hardware.

"Microbot" is a simple 8080 machinelanguage microbot driver program that

provides a starting point for robot relatedprogram development.

In its present form (see figure 1 andlisting 1) the program begins with a micro-bot creature starting in the center of anempty room. It then makes a move in oneof eight random directions for a randomlychosen distance (of one to four squares).The microbot will sense the perimeter walland reject any random moves that wouldmake it walk "into" the wall. It will alsoreject a move that is in the opposite direc-tion of the previous one. This prevents"bouncing" and produces a more realisticmovement pattern.

A call to a random number generator(RND) first selects the 180" sector for thenext move by setting bit 4 of the presentdirection status word (DSW) to either oneor zero. The subroutine REC stores thisinformation at hexadecimal location 14Dand moves the previous contents of 14D(the DSW for the previous move) to 14Efor later comparison.

A second call to the random numbergenerator provides one of the four possiblemoves within the chosen sector. This value(00, 01, 02, or 03 hexadecimal) is thenadded to the data in 14D to produce thefinal direction status word for the presentmove.

Figure 2 illustrates the eight possiblemoves and their associated status words.Notice that opposite directions are indicatedby the state of bit 4 of the direction statusword. This fact is used in the present pro-gram to disallow immediate reverse moves.It also makes it simple to reverse directionwhen desired by the programmer.

There are three status words used in thepresent program. Location 14D containsthe present direction status word; location14E contains the direction status word ofthe previous move; location 14F containsa distance status word (DIS) that determinesthe length of the present move.

The program segment CHEK then

132

April 1978 ©BYTE Publications Inc

Figure 1: Flowchart of theMic robot program. Theprogram is shown withnotations of hexadecimaladdress and labels shownto correlate the flowchartwith the 8080 assemblylanguage code of listing h

PICK NEWPATH WHENOLD ONE USESUP DISTANCE

| 1

f START J

START:0000

INITIALIZE SCREENWITH BORDERSAND OBSTACLES

PUT MICROBOTON SCREEN

GO:002D

CHEK:004D

WAIT:0057

LWAIT:006I

.0071

M0VL0073

NEXT:00E5

SAVE OLD DSW

CHOOSE NEW DSW:SECTORDISTANCEDIRECTION

YES

DELAY:=5FFF(LONG)

WAITDELAY

REPLACEMICROBOTWITH TRAILCHARACTER

DECODE ANDEXECUTE ONEOF 8 MOVECALCULATIONS

PUT MICROBOTON SCREEN

DISTANCEDDISTANCE-I

RANDOM

SELECTION

SWAIT:0067

YES

delay: = ifff

(SHORT)

CONTINUE SAMEI PATH UNTILI DISTANCE

USED UP

YES

SUBROUTINEBOUNDS

COMPLEMENT SECTORBIT

NO

April 1978©BYTE Publications Inc 133

SECTOR 0

SECTOR I

Figure 2: In the representation used for direction status words (DSWs) in theMicrobot program} the possibie directions break down into two sectors basedon the status of bit 4 of the DSW byte. The two iow order bits determine thedirection within each sector according to the diagram.

compares the present and previous direc-tion status words to see if they are inopposite directions. If they are, a newdirection status word is sought.

Next, wait routines are inserted to slowthe movement to a realistic speed. The speedof your microbot can be varied by changingthe constants at hexadecimal locations 63and 69. WAIT checks to see if the presentmove is horizontal or not. A longer wait isused for horizontal moves to compensatefor the fact that there are 64 horizontal andonly 16 vertical positions on the VDM-1display.

A "trail" character is then inserted onthe present square and the direction statusword is decoded with a resulting jump toone of eight move routines. Any noncursorcharacter may be inserted at location 72as a trail character. After completing theproper move, the subroutine BOUNDS iscalled to determine whether or not themicrobot is trying to move to an obstacleposition (ie: any square containing a cursor).If it is, bit 4 is complemented and theresulting move returns microbot to his pre-vious position, effectively cancelling thedisallowed move. Each move routine endswith a jump to NEXT which writes themicrobot character into the new positionsquare and checks the distance status word.Depending on the contents of DIS, eitherthe last move is repeated or the programjumps back to GO to initiate a new randommove.

Future Expansion

As the purpose of this article is to presenta basic concept and program for others to

DIRECTION

STATUS WORD (HEX)

_

SECTOR0

UP

UP RIGHT

RIGHT

DOWN RIGHT

03000102

>ECTOR1

DIRECTION STATUS WORD (BINARY)7 6 5 4 3 2 10

DIRECTIONCODE 0-3

SECTOR BIT' DON'T CARE, ZERO DEFAULT

expand, let's look at some possible areas ofdevelopment:

1. Search Efficiency: As many robotsystems will incorporate search orrandom search routines, the VDM dis-play allows an excellent theatre forstudy of the efficiency of variousapproaches. A measure of the averagetime it takes a microbot to fill allscreen squares with his trail wouldprovide indication of the efficiencyof his move pattern. Various changescould be made to microbot's moveroutines and the results analyzed.

If Microbot's "room" of 16 x 64squares proves too small for yourneeds, rooms of any size may beconstructed and stored away in 1 Kmemory sectors. A check to sense thatthe creature was moving off the side ofthe screen could be used to call upanother sector, move it to the screenand allow microbot to enter on theopposite side. Also, the same algo-rithm could be easily extended todisplays with a higher resolution.

2. Learning: Some of the most complexand interesting programming work tobe done is in the field of artificialintelligence and robot "learning."Microbot's use of direction statuswords should provide a capability forstoring, retaining and modifying (eg:retracing steps) move paths that mightbe kept for future reference if useful,or discarded by the program if in-appropriate or less efficient. Refer totexts on artificial intelligence for muchmore detailed discussions of what it

134

April 1978 © BYTE Publications Inc

Everything you've ever

wanted to know aboutmicrocomputers in

ONE complete book

foronry $10.95

Over 400 pages. Full 8V2" x 11 size.

The ultimate bookabout microcomputers.Written by experts. ; . SCELBI and BYTE. Over400 pages. A collector's item,featuring The Basics

from the first 16 issues of BYTE and SCELBI'sclassic library of books. Your microcomputerbookshelf is incomplete without this priceless edition

You can't buy informationorganized like this any-where. This is the bookthat everyone who is into micro-computers needs for reference,for ideas, for clues to problemsolving. It is a truly authorita-tive text, featuring easy-to-read,easy-to-understand articles bymore than 50 recognized pro-fessional authors, who know andlove microcomputers from theground up. Logical and com-plete, it features many glos-saries, and is illuminated withprofuse illustrations and photo-graphs.

The Scelbi/BYTE Primer isdivided into four logical sec-tions, that take you from point"0" through building and pro-gramming your own computer...step-by-step-by-step.

What can you do with a micro-computer? Checkbook balanc-ing. Recipe converting and foodinventory. Heating and air condi-tioning control. Home and busi-ness security and management.Playing the ponies. Analysis ofthe stock market. Maintainingmassive data banks. Self-instruc-tion. Toys and games. Smallbusiness accounting and inven-tory. And lots, lots more.

Circle 95 on inquiry card.

How does a microcomputer do

it? Lots of "how to" theory. In-troducing you to microcomputeroperation. 6800, 6502, Z80 CPUchip capabilities. RAM and ROMmemories. Addressing methods.

Hi

YHIIIIlIfIMIII'i

Over 400 pages. Selected articlesfrom BYTE and SCELBI books.Profusely illustrated. Manyphotographs. $10.95, plus 500shipping and handling.

How to control peripherals.Transmission of information toand from computers. Magneticrecording devices for bulk stor-age. Analog to digital conver-sion. How a computer can talk.Other I/O techniques. And more.

Order your copy today!

SCELBI COMPUTER

CONSULTING INC.

BITS

Post Office Box 133 PP STN

70 Main Street

Dept. B

Peterborough, NH

Milford, CT 06460

03458

1-800-258-5477

Prices shown for North American customers.Master Charge. Postal and bank MoneyOrders preferred. Personal checks delayshipping up to 4 weeks. Pricing, specifica-tions, availability subject to change withoutnotice.

***

All about building a micro-computer system. Over 12 com-plete construction articles. Flip-flops. LED devices. Recyclingused ICs. Modular construction.Making your own p.c. boards.Prototype board construction.Make your own logic probes.Construction plans for 6800 andZ80 computers. Building plansfor l/Os — TV and CRT displays,cassette interfaces, etc. Mathe-matics functions. ROM program-mer. Plus much, much more.

How to program a micro-computer. Programming for thebeginner. Assembling programsby hand. Monitoring programs.Number conversions. Game ofHexpawn. Design your own as-sembler. Lots more.

And that's only the beginning!Others have spent millions ac-quiring the typ§ of microcom-puter information found withinthe 400 pages of The Scelbi/BYTE Primer. But, it costs youonly $10.95, plus 500 for postageand handling, complete! Youknow the quality of Scelbi andBYTE. This is your assurance ofexcellence throughout this MUSTtext. Order your copy today! And,get one for a friend!

BYTE April 1978 135

0000

3 1

5 7

0 1

START

tx I

S P , 0 1 5 7 H

00A 1

1 9

DAD

D

0003

AK

XRA

A

0 0A2

CD

F6

0 0

CALL

BOUNDS

0004

D3

C8

OUT

0C8H

0 0A5

C3

t5

0 0

JMP

NtXT

0006

1 6

0 t

MV 1

D , 0 tH

00A8

2 3

RT

1 NX

H

000 8

2 1

00

cc

EX 1

H.OCC00H

00A9

CD

F6

0 0

CALL

BOUNDS .^r

000B

0 1

4 2

AO

txi

B , 0A042H

0 0 AC

C3

t 5

00

JMP

NtXT

0 0 0 t

CD

0 8

0 1

CALL

LOAD

OOAF

1 1

4 2

0 0

DR

LX I

D , 0 4 2 H

00 11

0 1

3C

20

SCRN

LX 1

B , 0203CH

00B2

1 9

DAD

D

00 14

CD

0 8

0 1

CALL

LOAD

00B3

CD

F6

00

CALL

BOUNDS

00 17

0 1

4 0

AO

LX I

B , 0A004H

00B6

C3

t5

0 0

JMP

NtXT

0 0 1 A

CD

0 8

0 1

CALL

LOAD

00B9

1 1

4 0

0 0

DN

LX 1

D , 0 4 0 H

00 1 D

1 5

DCRD

0 0 BC

I 9

DAD

D

00 1 t

BA

CMPD

0 0 B D

CD

F6

00

CALL

BOUNDS

0 0 1 F

C2

1 1

00

JNZ

SCRN

0 OCO

C3

t 5

00

JMP

NtXT

002 2

0 1

3 t

AO

LX 1

B,0A03EH

00C3

1 1

3 t

00

DL

LX 1

D , 0 3 t H

00 2 5

CD

08

0 1

CALL

LOAD

0 0C6

1 9

DAD

I)

00 2 8

2 1

20

CH

LXI

H,0CE20H

0 0C7

CD

F6

00

CALL

BOUNDS

002 B

36

07

MV I

M, 0 7H

OOCA

C3

t 5

00

JMP

NtXT

002D

CD

1 A

0 1

GO

CALL

RND

0 0 CD

2 B

LFT

DCX

H

00 3 0

L6

02

AN 1

02H

ooct

CD

F6

00

CALL

BOUNDS

00 3 2

CA

3 7

00

JZ

RC

00D 1

C3

t5

0 0

JMP

NtXT

003 5

3h

1 0

MV 1

A, 0 1 OH

0 0 D 4

1 1

Bt

FF

UL

LX I

D , 0 F F B t H

003 7

CD

1 0

0 1

RC

CALL

RtC

00D7

1 9

DAD

D

003 A

CD

1 A

0 I

D 1 S

CALL

RND

00D8

CD

F6

00

CALL

BOUNDS

00 3D

3 2

4 F

0 1

STA

0 1 4FH

OODB

C3

t 5

0 0

JMP

NtXT

0040

CD

1 A

0 1

Dl R

CALL

RND

OODt

1 1

CO

FF

UP

LX I

D, OFFCOH

004 3

4 7

MOV

B , A

00 t 1

1 9

DAD

D

0044

3 A

4D

0 1

LDA

0 1 4 DH

00 E2

CD

F6

00

CALL

BOUNDS

004 7

t6

1 0

AN 1

0 1 OH

00 t 5

3 6

0 7

NtXT

MV 1

M. 07H

004 9

8 0

ADD

B

00 t7

3 A

4 F

0 1

LDA

0 1 4 FH

004A

3 2

4D

0 1

STA

0 1 4DH

00 LA

3D

DCR

A

004D

4 7

CHEK

MOV

B , A

0 0 t B

3 2

4 F

0 1

STA

0 1 4 FH

004 h

3A

4 t

0 1

LDA

0 1 4EH

00 tt

FE

FF

CP I

OFFH

00 5 1

A8

XRA

B

0 0 FO

CA

2D

00

JZ GO

00 5 2

Ft

1 0

CP I

0 I OH

0 0 F 3

C3

5 7

00

JMP

WA I T

A , M ^

0054

CA

40

00

JZ

DI R

00F6

7 E

BOUNDS

MOV

005 7

3A

4D

0 1

WA 1 T

LDA

0 1 4DH

00 F7

E6

80

ANI

080H

00 5A

h6

0 F

ANI

OFH

0 0 F9

C8

RZ

0 0 5C

Ft

0 1

CP 1

0 1 H

0 0 FA

3 3

I NX

6

00 5 t

CA

6 7

00

JZ

SWA I T

0 0 FB

3 3

I NX

6

006 1

0 1

FF

5 F

tWA I T

LXI

B , 5 FFFH

0 0 FC

3 A

4D

0 1

LDA

0 1 4DH

0064

C3

6A

00

JMP

DEC

0 0 F F

OE

1 0

MV I

C . 0 1 OH

0067

0 I

FF

1 F

SWA I T

LXI

B,1FFFH

0 10 1

A9

XRA

C

006A

OB

DtC

DCXB

0 10 2

3 2

4D

0 1

STA

0 1 4DH

006B

78

MOV

A , B

0 105

C3

7 3

00

JMP

MOV 1

006C

Ft

00

CP I

00

0 10 8

70

LOAD

MOV

M, B

006E

C2

6A

00

JNZ

DEC

0 109

2 3

1 NX

H

007 1

3 6

20

MV I

M, 020H

0 1 OA

OD

DCRC

007 3

3A

4D

0 1

MOV I

LDA

0 1 4DH

0 1 OB

B9

CMPC

007 6

Ft

00

CP I

0

0 I OC

C8

RZ

007 8

CA

9E

00

JZ

UR

0 1 OD

C3

08

0 I

JMP

LOAD

007B

Ft

0 1

CP1

0 1H

0 110

E5

RtC

PUSH

H

007D

CA

A8

00

JZ

RT

0 111

2 1

4D

0 I

LX 1

H,014DH

0080

Ft

02

CP I

02H

0 114

4 t

MOV

C ,M

008 2

CA

AF

00

JZ

DR

0 115

7 7

MOV

M , A

0085

Ft

1 3

CP I

0 1 3H

0 116

23

1NX

H

008 7

CA

B9

00

JZ

DN

0 117

7 1

MOV

M, C

008A

Ft

1 0

CPI

0 1 OH

0 118

t 1

POP

H

008C

CA

C3

00

JZ

DL

0 119

C9

RET

008 F

FE

1 1

CP 1

0 1 1H

0 1 1 A

E3

RND

PUSH

H

009 1

CA

CD

00

JZ

LFT

0 1 1 B

2 1

44

0 I

LX I

H,SH+3

009 4

Ft

1 2

CP I

0 1 2H

0 1 1 E

06

08

MV I

B , 08H

009 6

CA

D4

00

JZ

UL

0 120

7 t

MOV

A ,M

009 9

Ft

0 3

CPI

03H

0 12 1

0 7

RTOP

RLC

009B

CA

DE

00

JZ

UP

0 12 2

07

RLC

_

0 0 9b

1 1

C2

FF

UR

LX I

D, 0 0 FFC2H

0 12 3

0 7

RLC

Listing J: The Microdot program, assembled for an 8080 system which has the Processor Technology VDM-l board located athexadecimal locations CCOO to CFFF In memory address space (1024 bytes).

136

April 1978 ©BYTE Publications Inc

0 12 4

0 12 5

0 12 6

0 12 7

0 I 2 8

0 12 9

0 1 2 A

0 1 2 B

0 1 2C

0 I 2 D

0 I 2 h

0 I 2 K

0 13 0

0 13 1

0 13 2

0 13 3

0 13 4

0 13 5

0 13 6

0 13 7

0 13 8

0 13 9

0 1 3 A

0 I 3D

0 I 3 F

0 14 0

0 14 1

0 14 5

At

I 7

1 7

2 1)2 1)2 D7 KI 77 72C7 h1 77 72C7 h1 77 72C7bI 77 70 5C2E6L 1C9

2 10 3

SHAR

XRA

M

RAL

RAL

DCRL

DCRL

DCRL

MOV

A ,M

RAL

MOV

M , A

1NRL

MOV

A . M

RAL

MOV

M. A

INRL

MOV

A .M

RAL

MOV

M , A

1 NRL

MOV

A ,M

RAL

MOV

M1, A

DCRB

JNZ

RTOP

AN I

0 3H

POP

H

RET

DS

4

DS

6

END

0 000000000000000 0 0 0 0 0 0 0 0 0 1 1 I 1 1012345678901234

0 000000000 0 000000000000001110134679ACDF0230A3C4C4C5D5D5C

means for a program to "learn."

3. Sensing the Environment: Simulationof optical, audio or tactile sensorswould be very easy with microbots.Remote squares could be examined bymicrobots' "eyes," for example,according to any rules or limitations(such as distance and direction) theprogrammer wishes to impose. Experi-ment with obstacles of differentshapes. Color or texture differen-tiation may be simulated by usingother obstacle characters in additionto cursors, eliciting different responsesfrom your creature. A starting pointmight be to have your microbotperiodically scan one wall, searchingfor an "object" partially obscured byobstacles.

Other interesting possibilities wouldarise with two microbots in the sameroom leaving different trails andsearching for each other. If you decideto explore this area, you might wantto give toes to your microbots, so one"microbot can tell which way theother's trail leads. Leaving a trail ofthree sequential numbers instead ofasterisks might be one way.

4. Work: If you had a little robot runningaround your house, what would youlike it to do? Vacuum the floor? Pickup small objects and put them away?How about a robot that checks your

Figure 3: The PAPERBYTES*™bar code representation of the ob-ject code for the Microbot 8080program by John Webster. Thestandard bar code frame formatis used, with its synchronizationbyte (hexadecimal 96) followedby checksum byte, line identifi-cation byte, line length byte anddata field. The data field of eachframe uses the "absolute" formatconsisting of a 2 byte addressfollowed by data to be stored atthat address. The assembly oflisting J was also typeset bymachine from the same datafile and contains the source codeas well as the object code foundin this bar code representation.

The documentation of barcode loader programs suitablefor loading this program with thedata in this figure is found in thebook Bar Code Loader by KenBudnlck, available for $2 at localcomputer stores and by mail fromBITS Inc, 70 Main St, Peterbor-ough NH 03458. To read thisdata will require a homebrew orcommercially manufactured barcode scanning wand, using pro-cedures outlined In Ken Budnlck'sbook.

0 0 0 0

0 0 0 0 0 0 0 0 0 0 0

0 0 0 0

0 0 0 0 0 0 1 1 1 1 1

0 12 3

45678901234

April 1978 ©BYTE Publications Inc

137

Circle 109 on inquiry card.

THE PROM SETTER

• WRITE and READ EPROMs 1702A, 2704/2708

• Can be arranged to do 1702A, 2716TI or 2708, 2716TIand with a few additional parts 2716INTEL, 5204, 6834

• Plugs directly into your ALTAIR/IMSAI Computer

• No External Supplies. Your Computer does it ALL

KIT - $210ASSEMBLED - $375

RAM XT

l>ROM

• Operates in S-100 BUS

• 16 EPROM* sockets with own address select and up to 4waite states

• Can be wired for any EPROM (in 8/16 unit operation)1702A, 2704, 2708, 2716INTEL, 2716TI, 5204, 6834

• IK RAM independently address, takes precedence overROM

• POWER ON JUMP & RUN (Computer With/WithoutFront Panels)

"EPROMs not included

KIT-$117ASSEMBLED - $168

Delivery Less Than 60 Days

SZERLIP ENTERPRISES

1414 W. 259th St. - Harbor City, California 90710

California resident* please add 6% sales tax

potted plants and waters them if theyneed it? Or why not all these thingsat once? The possibilities are reallylimitless. Microbots will allow you todevelop and test logical proceduresfor solving all of these problems.5. Feeding Time: Don't forget that youare simulating a real working robotand that certain internal housekeepingroutines should be built in.

Since any self-respecting real worldrobot will run on rechargeable bat-teries, a timer or move counter shouldbe one of the first things built intoyour program to simulate "low bat-teries'' and to initiate a search anddocking routine for recharge at one ormore "power stations" in the "room."Of course, you also have to rememberto empty the vacuum cleaner orwhatever.

Conclusion

Sound interesting? Why not run Microbotand see what ideas occur to you? Whatrobots really need right now is for lots ofcomputer hobbyists to start thinking andworking on their software. Oh yes, in caseI forgot to mention it in my enthusiasm,it's also a lot of fun."

am mm

A

TheHARDWARE

MATHBOARD

that performs:

# Logarithmic Functions

# Trigonometric Functions

# ex , y*, DTR, RTD

# Multiplication, Division, Addition

and Subtraction

# 8 Digit Mantissa, 2 Digit Exponent

# Fast execution time (comparable with

in-system Software Package)

# Compatible with M6800 Microprocessor

KIT #1: Printed Circuit Board,assembly & operating instructions,and Software Pkg. - $72.80

KIT #2: Kit #1 plus alt components,unassembled - $252.00

KIT #3: Fully assembled & ch<out board, instruction manualSoftware Pkg. - $555.00

WOODTRON LTD., P.O. Box 4067 — Station 'C, Calgary, Alberta, Canada T2T 5M9

138

April 1978 ©BYTE Publications Inc

Circle 121 on inquiry card.

Continued from page 6

varies from artist to artist. Sometimes themedium of the representation itself seemsto take on more importance for the artistthan the aesthetics and inputs from reality.But works of art do not grow by accident,they are created by the designs of theartist

One way to describe a theory of scienceis as a selective representation of realitycreated (and tested) by the scientist in anattempt to understand reality. By its nature,the selection criteria of science tend to bemore demanding of precision than those ofthe artist. These scientific selection criteriaare independent of any one scientist, and thenature of the representation is invariably thewritten word expressed in one or anothermathematical formalism. But theories ofscience do not grow by accident either; theyare created and tested by scientists.

The key concept in both these informaldefinitions is that of the selective represen-tation of some aspect of reality. In art thismay be transformed to such an extent thatthe input from reality is difficult to see. Inscience the representation may be so ab-stract that only those who are at the fron-tiers of research may yet understand thetheory. But both are selective represen-tations, with the selection activity per-formed by the creator of the work of art ortheory of science. The activities of the mindof the artist or scientist are what I refer to asthe "intellect." To see the impact of per-sonal computers on these two forms ofintellectual activity, we must examine thenature of the computer in its role of intellec-tual amplifier.

Enter the Intellectual Amplifier

The change of state represented by thecontemporary technology of the personalcomputer is characterized by the growinguse of these "intellectual amplifiers" bythe individual citizen. We are leaving thestate of the inaccessible computer in itscomputing center, and entering the stateof the self contained and inexpensivepersonal computer. The essences of thecomputer's contribution to the mentalprocesses of art and science are the same:automation of well understood processes,and speeds of real time operation impossiblefor unaided human beings.

A characteristic of the creative intellectis the tendency to compartmentalize anactivity, isolate its essentials. The wholeactivity may be too complex to handleat all if this is not done. We find the artistworking in oils dividing a complicated

SYSTEM Z Development Software

Requires 1 North Star Disk Drive

and J2KRAM

ASMB Z80 Disk Based Assembler for rapiddevelopment of moderately sized assemblylanguage programs. Requires 8.5K ofmemory. Price: $60

DASMZ A Disk Based Assembler for develop-ment of large assembly language4 programs.Requires 6K of memory. Price: $60.

ZEDIT A powerful text editor with fulltext manipulation operations. Requires1.5K of memory. Priee: $60.

ZEBUG A Debug Monitor/Disassembler thattranslates object eode into instruction men-monies. Requires 3.5k memory. Price $60.

BUSINESS PACKAGE

General Ledger

$60

Accounts Payable

$60

Accounts Receivable

$60

Payroll

$60

Inventory

$60

Amortization

$35

Mailing List

$60

Purehase complete Business Package for $395

Dealer inquiries are invited.

Write or call for full Software Package details:

Sunshine ComputerCompany

20710 S. LEAPWOOD AVE., CARSON, CA 90746

V (213)327-2118 A

Circle 1Q7 on inquiry card.

April 1978 © BYTE Publications Inc 139

Our MacroFloppy™goes twice the distance.

For $695.

Introducing the Micropenis MacroFloppy™;1041 and ;1042 disk drive sub-systems. For the S-100/8080/Z-80 bus. Packing 100% more capacity into a5%-inch floppy disk than anyone else. 143K bytes, to be exact. For as littleas $695.

The MacroFloppy:1041 comes with the Micropolis Mod I floppy packagedinside a protective enclosure (without power supply). And includes an S-100controller. Interconnect cable. Micropolis BASIC User's Manual. A diskette con-taining Micropolis BASIC, and a compatible DOS with assembler and editor.The :1041 is even designed to be used either on your desk top, or to be inte-grated right into your S-100 chassis.

The MacroFloppy:1042 comes with everything the :1041 has, and more.Such as d.c. regulators, its own line voltage power supply, and, to top it off,a striking cover Making it look right at home just about anywhere.

Both MacroFloppy systems are fully assembled, tested, burned-in, andtested again. For zero start-up pain, and long term reliability. They're alsobacked up by our famous Micropolis factory warranty.

And both systems are priced just right. 5695 for the MacroFloppy:1041and $795 for the MacroFioppy:1042.

You really couldn't ask for anything more.

At Micropolis, we have more bytes in store for you.

For a descriptive brochure, in the U.S. call or write MicropolisCorporation, 7959 Deering Avenue, Canoga Park, California 91304. Phone(213)703-1121.

Or better yet, see your local dealer.

Circle 66 on inquiry card

MICROPOLIS

More bytes in store for you.

picture into regions of detail accordingto his plan for the picture; we find thecomposer of music selecting a theme orset of themes which is then woven into afabric of variations and harmonic structurewhich might constitute a piece of music;the scientist, given a hypothesis and itsexperimental context, orchestrates themethods and instrumentation proceduresneeded to test the significance of the hypo-thesis; the science educator chooses a logicalstructure of presentation of information inthe field of a course. I call such activities"well understood" what to do: the processis unambiguously defined given the goals.The automation of such "well understood"processes is one of the major uses of thesmall computer systems we call personalcomputers. Once the process is known wellenough to be expressed as a computer pro-gram, detailed thought about the sequencingand operation of that process can be setaside while turning attention to less wellunderstood phenomena and processes. Theresult is an amplification of the mentalpowers of the individual who uses the smallcomputer effectively.

A second aspect of the inexpensivepersonal computer is that of speeding up

operations which can only be carried outslowly - if at all - by the human brain.The reaction times of the human nervoussystem are on the order of 10s of milli-seconds in reflex situations. The timeneeded to think about anything significantis typically much longer. Thus if the humanbeing is asked to respond to a phenomenonon the order of microseconds or millisecondsin duration, the task is impossible unaided.Just as the telescope with photographicemulsions or image intensifiers extends theresolution and light gathering power of thehuman eye, the computer can extend theresponse time and acuity of the humannervous system viewed as an instrument ofprocess control, sequencing and measure-ment. This is an obvious advantage of thesmall computer to the scientist in the labora-tory, but is just as useful to the artist incertain contexts.

Personal Computers:New Prospects for Science

With the basic principle of the "intellec-tual amplifier" characterized, what aboutsome specific implications for the scientificuser? In a sense, most practicing scientists

140

April 1978 ©BYTE Publications Inc

TM

MetaFloppy

The Micropolis MetaFloppy™ gives you more than four times the capacity ofanyone else's 5%-inch floppy. Because it uses 77 tracks instead of the usual 35.

The field-proven MetaFloppy with thousands of units delivered, comesin a complete family of models. And, like our Macro Floppy™ family of diskdrives, MetaFloppy is designed for the S-100/8080/Z-80 bus.

For maximum capacity, choose our new MetaFloppy; 1054 system. Whichactually provides you with more than a million bytes of reliable on-line stor-age. For less money than you'd believe possible.

The MetaFloppy:1054 comes complete with four drives in dual config-uration. A controller Power supply. Chassis. Enclosure. All cabling. A new BASICsoftware package. And a DOS with assembler and editor There's even a built-in Autoload ROM to eliminate tiresome button pushing.

If that's more storage than you need right now, try ourMetaFloppy:1053, with 630,000 bytes on-line. Or our Meta-Floppy; 1043, with 315,000 bytes on-line. Either way, you canexpand to over a million bytes on-line in easy stages, when youneed to. Or want to.

In other words, if your application keeps growing, we've gotyou covered. With MetaFloppy.

The system that goes beyond the floppy

For a descriptive brochure, in the U.S. call or write MicropolisCorporation, 7959 Deering Avenue, Canoga Park, California 91304Phone (213) 703-1121.

Or better yet, see your local dealer,

MICROPOLIS™

More bytes in store for you.

goesbeyond.

Circle 67 on inquiry card.

have in one way or another grown used tothe use of computers over the past decades.In a way, the new low cost computers arebut an extension of a trend that has seen agrowing use of computer simulations,instrumentation with minicomputers, etc.The real implications are an enhancementof computers' utility due to increasedaccessibility made possible by low cost.

One interesting way to view the personalcomputer is as a new form of "logical"blackboard and chalk, pencil and eraser.There have been a number of articles in theworld of traditional data processing coveringthe concept of "disposable" programs andlanguages in which to express such programs.In the same way that your standard black-board is a "disposable" writing system fornotation of theory being worked out, theaccessible personal computer can be viewedas an instrument for quickly and inter-actively performing numerical and logicaltests of the implications of a theory. Makeno mistake about the role of the thinker inthis: just as paper and pencil or blackboardand chalk are useless without thoughts to fillthem, the personal computer as an inter-active computational aid is similarly uselessunless there are thoughts distilled into short

disposable programs to keep it busy.

As an example of a simple use of thepersonal computer for a calculationalscratchpad, I offer a program written byone of our authors, Paul Lutus, which willbe published in the next few months inBYTE. The program is a numerical inte-gration algorithm, where the function isspecified explicitly in BASIC as, forexample:

10 Y = SIN (X)

I loaded Paul's tape for the program into myApple II and proceeded to explore some ofthe definite integrals of various functions.To do a course integration, this little pro-gram would be given a small number ofpoints within the integration limits; to do amuch finer integration (and possibly take aconsiderable amount of time) I would giveit a larger number of points within the rangeof the integration. But the key point wasthat with such a program I was able to inter-actively explore the behavior of a class ofproblems (definite integrals) with variationsof detail (the choice of function, integrationlimits, and number of iterations through therange of integration).

April 1978 ©BYTE Publications Inc

141

Circle 134 on inquiry card.

j W^^CTCT*^^>3p3ii3ii51>3S3S383»383S3>3HB

PRAMMER III

by xybek

The Ultimate EPROM Memory BoardFor Your S100-Bus Computer

* Accommodates from 1 k to 30k of the above EPROMS, in

any combination, each addressable on any 1k (2k for2716) boundary within the board's 32k address space.

* 1 k of scratch-pad RAM.

it On-board programming for all three EPROM types.

* Tri-state buffers on all address and data lines.

* Empty EPROM sockets do not require address space.

* Assembled, tested, ready to run — only $369.50

Xybek • P.O. Box4925 • Stanford, CA94305

Telephone: (408) 296-8188

■xsaoKssssxssxsxsxssogs^^

&

\

Are You Interested In

ELECTRONICS or

PROGRAMMING, &

TECHNICAL WRITING?

How would you like a challenging position as a technical writer withan exciting and progressive company that offers liberal fringebenefits and pleasant friendly atmosphere in which to work?

You'll research and write either service and/or operating andprogramming publications (depending on your background andinterest) for our computers and peripherals. You'll be workingclosely with Lab engineers, service engineers and marketingpersonnel.

The service writing position requires that you have an electronicsbackground, perferably practical microprocessor experience plusexperience with test equipment, troubleshooting and schematiclayout of analog and digital circuits.

The operating and programming writing position requires aprogramming background with proficiency in BASIC, algebraic orother computer languages.

Hewlett-Packard offers a progressive salary and liberal fringebenefits, including profit sharing, insurance, stock purchase,flexible hours and others.

For consideration both immediate and confidential, forward yourresume to Ms. Kathi Kline, CPD, Personnel Department, P.O. Box301, Loveland, Colorado 80537.

We are an equal opportunity j

employer dedicated toaffirmative action.

PACKARD

This interactive programming examplewas not done, mind you, with a timesharingBASIC on a minicomputer or larger system,but on a self-contained 16 K system withextended BASIC which sells currently for$1700 and which has been offered at saleprices as low as $1300. When such a personalcomputer is sitting on a scientist's desk, thenthe concept of an interactive computationalscratchpad becomes a reality.

But blackboards are used for more thanjust working out problems in isolation. Oneof the major functions of the traditionalblackboard and chalk (or its equivalents) iscommunication of ideas to colleagues andstudents: education. The interactive personalcomputer with graphic capability is poten-tially a powerful teaching tool. Graphicdemonstration of functions is often done ina handwaving sort of way by lecturers at ablackboard. I claim that the use of a smallcomputer with television display graphicsof moderate resolution and programs tocalculate functions would perhaps be a moredramatic presentation. When taking a coursein the theory of complex variables, forexample, experimentally performing inte-grations along various contours coulddramatize (and help the student internalize)the effects of the parameters of integration.When taking a course in quantum mechanics,wouldn't the computation and display ofcontours in a probability field help drama-tize the concept graphically? The personalcomputer with graphic capability providesthe teacher with the means to set up andillustrate mathematical behavior innumerous fields.

Of course, using the computer as an aidto the lecturer can be extended: there is asimilar advantage to be had in the use ofsuch experimenters as a part of interactivestudy outside of a lecture context. The newavailability of small computers makes theconcept of computer aided instruction takeon new emphasis. Rote drill as well asthought problems can be cast into an inter-active sequence which may be carried outby students using such a computer. Here the"well understood" process being automatedis the process of conveying knowledge to astudent and testing or reinforcing thatknowledge.

The theoretical and pedagogical aspectsof the personal computer used in a scientificcontext are largely in the category of "auto-mating well understood processes" describedearlier. Using the small computer system inan experimental or laboratory context repre-sents another significant use. Here, thepersonal computer's use is but an extensionof a trend which started with the first

142

April 1978 G BYTE Publications Inc

Circle 135 on inquiry card.

minicomputer ever sold to a research estab-lishment. The computer becomes the highspeed real time nervous system of theexperiment, collecting data, sequencingevents, and possibly doing limited formsof real time analysis and display. Many ofthe personal computers on the marketare sold with sufficient documentation sothat any competent laboratory techniciancan combine application software withseveral digital to analog or analog to digitalconverters, relays and miscellaneous sensorsin order to implement the instrumentationof an experiment design at much less costthan might have previously been possible.Of course the computational abilities of thesmall computer in a laboratory situationallow significant portions of an experiment'sanalysis to be done on the same machineafter the active portion of the experimentis completed.

In all this application of the smallpersonal computer system to the real worldof the scientist, there is one nontrivialdanger: it is a possibility that the user of acomputer will become intoxicated with theprogramming art, thus losing sight of theproblem for which the program was desired.It is hard to imagine significant use of acomputer without some form of program-ming, so the danger of getting lost in thedetails of the use of a computer is very real.Yet many experiments have been andcontinue to be done with computers, so thedanger must not be insurmountable.

Personal Computers: New Prospects for Art

As noted earlier, I view art as the artist'sselective representation of some aspects ofreality to create an aesthetic effect. One keyto any application of personal computers toart is the existence of specialized peripheralsupon which to realize the representationschosen. It turns out that two classes of peri-pherals are typically found: the graphicimage outputs useful as described for scienti-fic as well as artistic purposes, and the audiooutput peripherals essentially useful only ina musical context. Given either or both ofthese classes of peripherals as an externalrepresentation, and the "intellectual ampli-fier" characteristics of the computer systemdriving them, some interesting new possi-bilities are available to the artist.

For the moment, just ignore the abilityto calculate and sequence data to an artisticperipheral and consider the two classes ofperipherals alone. The existence of a graphicdisplay by itself allows traditional artisticfunctions to be done in a new medium.Similarly, the classic electronic music

16K RAM

Fully Assembled,Tested

Using the TMS 4044

250nsec. chips—$ 375

Z-80A 4 Mhz. Fast—This fully assembled and tested16K board was designed to operate without wait statesin a 4 Mhz. Z-80A system allowing over-generous timefor CPU board buffers. It "loafs along" iii slower 8080and 8085 systems.

450 nsec. chips—$325

For 2 Mhz. Systems — Same circuit as above butpriced lower because of less expensive memory chips.It is fully assembled, tested, guaranteed and is pricedlower than most kits.

Fully Static Is Best — Both boards use thestate-of-the-art Texas Instruments TMS 4044 whichrequires no complicated and critical clocks or refresh.The fully static memory chip allows a straight-forward,"clean" design for the board with a single 8 volt powersupply using 1.6 amps nominal.

Fully S-100 Bus Compatible — Each 4K addressa-ble to any 4K slot and separately protected by DIPswitches. Jumpers to customize board to any knownS-100 system.

Commercial Quality Components — First qualityfactory parts, fully socketed, buffered, board masked onboth sides, silk-screened, gold contacts, bus bars forlower noise.

Guaranteed — Parts and labor guaranteed for onefull year. You may return undamaged board within tendays of receipt for full refund.

See at your local computer store

Factory Orders — You may phone for MC, VISA.Cashier's check, M.O. speed shipment for mail orders.Personal check OK. Shipped prepaid with cross countryorders sent by air. Shipping — stock to two weeksnominal. All orders confirmed within 24 hours indicatingexpected shipping date. Washington residents add5.4% tax. Spec, sheet, schematic, warranty statementsent upon request.

A

l Seattle Computer Products. Inc.

^f-^ 16611 111th S.E., Renton, Washington 98055(206) 255-0750

Circle 97 on inquiry card.

April 1978 © BYTE Publications irtc 143

High PricesByte The Dust.

(Fayetteville, NY) Computer Enterprises haskept their prices low. If you order now, on topof reliability, lightning-fast delivery, you'llpay only the prices you see below. Othergreat products from the leaders in micro-computing are available from ComputerEnterprises.

Credit CashCard Price Price

Lear Siegler ADM-3A Kit $728 $700

IMSAI 8080 w/ ZZ slots Kit 614 S90

IMSAI PCS-80/30 Kit 1097 1055

IMSAI PCS-80/15 Kit ... 731 703Edge Connectors & Guides

for IMSAI 4 4

Heuristics Speechlab

Assmbld 265 254

Vector Graphic 250ns 8K

RAM Assmbld 187 180

TDL VDB Video Display

Board Assmbld. 338 325

TDL Software Package A

on North Star Disk 328 219

TDL Software Package on

Paper Tape 150 144

George Risk ASCII

Keyboard Kit 52 50

Cromemco Dazzler Kit 190 183Cromemco 16K PROM

Card Kit 128 123

Cromemco TU-ART Kit 173 166

Call or write for our

giant Spring Computerlogue

Catalogue Today.

IMSAI VIO-B KitIMSAI VIO-G KitTDL XITAN ALPHA 1.5Cromemco Z2 KitDynabyte 250ns 16KStatic RAM Assmbld.

252

242

297

286

795

764

557

536

577

555

Shipping charges: $10 per CPU on larger units; $1.50 per kit. $2.00 minper order.

Delivery is stock to 30 days on most items. Shipment is immediate for|payment by cashier's check, money order or charge card. Allow 3 weeksifor personal checks to clear. N.Y. State residents add approp. sales|tax. Availability, prices and specs may change without notice.

Operating Hours:

M-W 10-5E.S.T.

Th-F10-9E.S.T.Closed Sat. &Sun.

Write or Call

computerenterpri/e/M

P.O. Box 71Fayetteville, N.Y. 13066

Phone (315) 637-6208 Today!

synthesizer sans computer performs atraditional function (one instrumentalsound) on a new medium. But then considerthat an electronic medium is inherentlysubject to editing by a computer and todynamically changing its pattern undercontrol by a computer. Using a computer tocontrol an audio output or a display, withprogressions of displays varying in time, iswhat I call "algorithmic art" The essenceof this entirely new art form is that simplemathematical principles can be used tocreate aesthetically satisfying visual or auralrepresentations which can be classed as"art."

So let's turn first to the use of a personalcomputer to update a traditional technique.This is the technique of representing objectson a plane surface in multiple colors. Astandard personal computer product, withno modifications necessary other thanwriting a small program to use a homebrewjoystick, was used to create several visualrepresentations stored in film. The programand some examples of this use were foundin a review of the Apple II computer I wrotein the March 1978 BYTE. I employed thehomebrew joystick for control of positionin the limited resolution field of the display,an ordinary keyboard for setting of colors,and a button to allow colors to be extendedwhile the cursor is moved about the screen.This is a simple and not particularly revolu-tionary technique.

Using the computational power of thecomputer, in the August 1977 BYTE,authors D John Anderson and William FGalway presented a short article on thesubject of "Serendipitous Circles," a methodof filling a display field with points based onan extremely simple algorithm with an innerloop containing just two computationalsteps outside of housekeeping functions.Depending upon the initialization of theparameters of the computation, an amazingvariety of patterns is created, constantlychanging in real time. Then, taking thisalgorithm one step further, a reader ofBYTE, Kellerman, explored modifications ofthe algorithm and the principle of mergingseveral generations of the display. The resultwas a short article and the cover of the April1978 BYTE. The "Serendipitous Circles"algorithms are best calculated in real time,and with sufficiently fast displays theyresult in a dynamic form of art in whichthere is a pleasing visual progression withtime. Here we have an example of artcreated by the design of the computational

144

April 1978 © BYTL Publications Inc

Circle 28 on inquiry card.

algorithm. The graphic forms which resultare the representation in two dimensions ofthe results of a computation; the artistselects the computation and thus determineswhat the display looks like. I can only viewwith some wonder the fact that the viewercan find the result of this simple computa-tional technique so aesthetically pleasing.

As computers with good graphic capa-bilities come to market, algorithmic art isbound to become more important. Onesuch example is used by the Apple Com-puter Company, for example, as part ofa standard demonstration of what they callhigh resolution graphics. This example isthe algorithm which computes a constantlychanging colored pattern called the Spiro-graph. On a color television, it is like lookingat a succession of different "mandala" de-signs of the sort usually created with coloredstring and pegs.

Turning to a different field, that of musi-cal art, the use of the computer also createsexciting possibilities. With the appropriatesynthesizer output peripherals, any personalcomputer can be used to control a personalorchestra in real time. (Well, depending onthe number of channels, the orchestra mightbe more like a string quartet.) This is the"traditional" method of representing music,updated with the small computer acting asthe logical equivalent of a player piano's roll.

The use of a digital representation of amusical score enables people to play musicindependently of muscular coordination andskill. It also allows complexity approachingthe small orchestra to be managed by oneartist. But that is not necessarily all there isto computerized music.

Using the "intellectual amplifier" char-acteristics of a processor between keyboardand music synthesizers, for example, algo-rithms for the assignment of keys to timbresin real time can produce extensions of theconcept of the organ to a much fuller varietyand flexibility of tone color. A simpleexample: if I am pressing two keys, I'll havethe instrument sound timbres A and B, whileif I press three keys at once, I'll have theinstrument sound timbres B, C and D. Inthis way, the tone colors of the instrumentcan be made to vary during live performancein a way impossible on a conventional organ.And further, I change the character of myinstrument by changing the algorithm.

Or turn to a different problem altogether:that of analysis and composition of music.Statistical methods can be used to analyzethe probabilities of sequences of notes in

Circle 25 on inquiry card.

April 1978 © BYTE Publications Inc

145

some piece, capturing the composer's"style." These parameters can then beused to generate sequences of notes "inthe style of" that composer, yet constantlychanging with time. Here we have used analgorithm to select and play notes, anotherexample of one of the "algorithmic arts."

Some Parting Comments

We are all living in an exciting time oftransition, as the wealth of computers andcomputer aided technologies permeatescivilization. As I have noted, the effect ofthe growing availability of personal com-puting machines has the potential for signifi-cant influences upon art and science, influ-ences achieved by the computing machine's

action as an "intellectual amplifier" magni-fying the effectiveness of one's thoughtsthrough automation of well understoodprocesses and coordinating actions andmeasurements with time resolutionsimpossible for humans. The new prospectsfor art and science are inherent in use ofcomputers for what they are good for, on awider scale then ever before, now thatpersonal computing technology has becomewithin the means of so many people."

This editorial was prepared as the textof a talk delivered on March 13 J 978 duringa session entitled "Creating with Calculatorsin the Classroom"at the American ChemicalSociety's 1 75th annual meeting in AnaheimCA.

Your Microcomputercan be a Money-MakingMachine with SOFTWAREfrom SYNCHRO-SOUND

Here are two Software packages that enable you to profitably makefull use of the potential in your small computer system: Synchro-Sound's interactive business systems designed for use on an 8080-or Z80-based microcomputer with floppy disks and a hard-copyprinter. Written in Microsoft Basic (known as Altair Basic*), the soft-ware supports file maintenance, query and reporting functions. Thissupport includes creation, modification and deletion of customerrecords and processing of transactions to be posted against thefiles.

Ss*?""';*^''..,:^:

ACCOUNTS RECEIVABLE PACKAGE

The A/R module creates a history file of charges, credit and pay-ment records for audit purposes. Payments can be applied to aparticular invoice, or to the oldest open items.^Batch Mode formonthly statements, aged receivables schedule, and delin-quency notice as well as on-line inquiry mode for specific infor-mation are both fully implemented.

Operators Manual & Disk—Single Copy $500.00

INVENTORY PACKAGE

The inventory system maintains a current listing of stock itemsfeaturing on-line transaction processing. Reporting functionsinclude a master inventory listing with price and cost data,reorder alerts, vendor specification, and summary valuations.Year-to-date usage records are kept for each inventory item tofacilitate sales analysis.

Operators Manual & Disk—Single Copy $500.00

Operators Manual only— $35.00 refundable upon purchase of Software Package.Microsoft Disk Basic—Single Copy $350.00

WRITE OR CALLFOR FURTHERINFORMATION

Additional Software

Packages will be

available in the

near future

* Altair is a trademark of MITS, Inc.

SYNCHRO-SOUND Enterprises, Inc.

193-25 Jamaica AvenueJamaica, New York 11423212/468-7067 TWX 710-582-5886

Hours 9-4 Dailyand Saturday

Working Systemson display

Dept. BS

BankAmericard/Master Charge

146

April 1978(0 BYTE Publications Inc

Circle 108 on inquiry card.

Department of Robotics Hocum

Notes by Carl Helmers

We have been hearing numerous reportsof late concerning a reputed "robot" whichwould be sold for about $4000 and wouldbe capable of household tasks from washingdishes to greeting guests. This particular"robot" has been seen in numerous generalpublic media of late, including television andnewspapers. Two (possibly independent)sources have confirmed how this allegedlyartificially intelligent robot works. Thefirst source to come to my attention was anewsletter called Robot Builder No. 4 putout by Michael Westvig of 208 Via Colorin,Palos Verdes Estates CA 90274, which givesan account of the experiences of a group ofindividuals from the artificial intelligencelaboratory of Carnegie-Mellon University,reported by Mark Fox and Brian Reid.The second source of information, con-firming the reports of the newsletter, was arecent trip to the Massachusetts Institute ofTechnology Artificial Intelligence Labor-atory. During that trip, which was a one daywhirlwind tour arranged by Dan Hi 11 is of theLOGO project, I was told of an ARPA Netfile which has been accumulated on this"robot" by AI workers at laboratoriesaround the country. The story on "Quasar"found in the ARPA Net file confirms theinformation in Michael Westvig's newsletter.

As a gizmo, there really is a "robot"travelling here and there for public enter-tainment. It has no mechanisms remotelycapable of the grasping, sensing and manipu-lation needed to wash dishes or do other

household chores. It has various mechanicalsystems for moving around, and — here isthe hocum — a simple radio frequency linkto two controlling human beings. One of thegentlemen responsible for operating therobot is the "voice" of the machine, care-fully cupping the microphone in his handwhile acting as a remote ventriloquist forthe "robot's" voice. The second operator isa gentleman who, according to the RobotBuilder account, keeps his hand in an airlineflight bag which contains the controls formechanical motions of the "robot." Inshort, don't get your hopes up that this is areal implementation of the independentrobotic system concept of science fiction. Asan entertainment and diversion it may bemost acceptable, but an artificially intelli-gent robot it is not. The engineering techno-logy is on the level of remote controlledmodel airplanes.

There is some legitimate concern by thepeople in the artificial intelligence commu-nity that the widespread electronic andprinted media coverage of such a device mayraise false expectations with respect to robottechnology. I hope not. This "Quasar"carnival act may indeed have some positiveeffects by acting as a friendly publicist forthe concept of the intelligent mechanismwhich is a real robot. If nothing else thepublic fascination generated by the extra-vagant claims of this "robot" will helpdemonstrate that a market for real automataat consumer prices will be present whenengineering catches up with science fiction."

ALPHA Z-80* $ 495

ASSEMBLED

• 12 SLOT MOTHER BOARD

• 12 CONNECTORS (S-100 BUS)

• 17 AMP POWER SUPPLY

• HEAVY DUTY CABINET WITH FAN

• Z-80 CPU BOARD: All Sockets Included, Gold Con-tact Fingers, High Quality Glass Epoxy PC Board,Double-Sided, Plated Through Holes, Requires Only+ 8 VDC / 800 MA.

NOTE: 22 SLOTS/30 AMP POWER SUPPLY - $595.

ADS also sells IMSAI and NORTH STAR Assembled at Kit Prices + LEARSIEGLER ADM 3A Assembled at $888.00_ TERMS: Cash with Order.Prices include Freight. {N.C. Residents add 4% Sales Tax.)

• Z-80 is a registered trademark of Zilog Inc.

ALPHA DIGITAL SYSTEMS

Data Acquisition, Computation and Control

ROUTE 4 BOX 171ABOONE, NORTH CAROLINA 28607

ADS

Circle 2 on inquiry card.

April 1978 ©BYTE Publications Inc

147

Programming Quickies

BASIC Sorts

Rene E Pittet537 N GordonMarshall Ml 49068

The world of personal computers is fullof surprises at every turn for novices such asmyself. Like a child discovering the worldaround me, I want to share my discoverieseven with people who have already ex-perienced them. My latest discovery is theability of the 8 K BASIC supplied with mySwTPC-68 to perform sorts on numbers andwords.

Listing 1 is a program for arranging aseries of numbers into ascending order.Listing 2 is a similar program that arrangesa series of words in alphabetical order.

The underlying strategy is the same for

Listing 7.

00 100 PR I NT"NUMBER SORTING"

00110 PRINT

00120 PRINT"H0W MANY NUMBERS TO BE

SORTED

00130 INPUT N

00140 PR I NT"INPUT NUMBERS ONE AT A

TIME."

00150 FOR 1-1 TO N

0016 0 I NPUT X( I )

00110 NEXT I

00180 S = 0

00190 NI-N-l

00200 FOR 1=1 TO Nl

00210 IF XU> <* X(I+1) THEN 00260

00220 Z s X(I>

00230 X(I) s X(I+1)

002 40 X(I+1) = Z

00250 S=1

00260 NEXT I

00270 IF S=1 THEN 00180

00280 PRINT

00290 FOR 1 = ] TO N

00300 PR I NT X< I )

00310 NEXT I

00320 PRINT

003 30 END

READY.

RNH

NUMBER SORTING

HOW MANY NUMBERS TO BE SORTED?

? 5

INPUT NUMBERS ONE AT A TIME.

? 27 .8

? 1 1 .5

? 55

? .98

? 33

.98

1 1 .5

27 .8

33

55

SRU 0 .467 UNTS .

RUN COMPLETE.

both programs. The alphabetic sort programgives each letter in the word a number. Theindividual letters are ranked in ascendingorder from A to Z. The entire word is thentreated as one number.

In lines 110 to 170 of both programs thenumber of names or numbers to be sorted isread along with the data list which is storedin an array. Line 180 sets a flag to zero. AFOR. . .NEXT loop sorts through the listand determines which of the elements ofeach data pair is largest. If the secondelement is of lower rank than the first, theroutine sidetracks the lower rank datamomentarily into temporary storage place Zand the process is repeated until one passthrough the data is completed. The flag atS is then checked. If S is equal to 1 anotherpass is necessary. If S is equal to 0 the rou-tine will drop through to another FOR. . .NEXT loop in lines 290 to 310 where thelist of numbers or words is printed out inascending order.

Note that the order of the sort can bechanged from ascending to descending bymaking the "greater than" test in line210 a "less than" test. Also note that line200 says repeat the loop four times ratherthan five times. This is due to the fact thatline 210 looks ahead one step."

Listing 2.

00100 PRINT"NAME SORTING"

00110 PRINT

00120 PRINT"HOW MANY WORDS TO BE SORTED?"

00130 INPUT N

00140 PRINT"1NPUT THE WORDS ONF AT A TIME."

00 150 FOR 1=1 TO N

00160 I NPUT AS( I >

00170 NEXT I

00180 S=0

00190 N1=N-|

00200 F OR 1 = 1 TO Nl

00210 IF A$(I> <= ASCI+1) THEN 0026 0

00220 Zf= AS(I)

00230 A$( I ) s AS( I + 1 )

00240 AI(1+1) =Z$

00250 S*l

00260 NEXT I

00270 IF S = 1 THEN 00 180

00280 PRINT

0 0290 FOR I s ] TO N

00300 PRINT A$CI>;";"j

00310 NEXT I

00320 PRINT

00330 STOP

READY.

RNH

NAME SORTING

HOW MANY WORDS TO BE SORTED?

? 5

INPUT THE WORDS ONE AT A TIME.

? RAY

? GINNY

? ROY

? JEANNE

? ROBERT

GINNY;JEANNE;RAY?ROBERT J ROY;

SRU 0.462 UNTS.

RUN COMPLETE.

148 April 1978 © BYTE Publications Inc

LanguagesFopum

On Consumers' Languagesand Standardization

of Human Interfaces

The suggestion of G A Taylor that a newstandard is needed for the small appliancecomputers is timely. I do not share, how-ever, his fear that BASIC or APL will be-come the Appliance Computer Language(ACL) used by the mass population. Ibelieve that such a future ACL will be moresimple than BASIC, more powerful thanAPL, and that without such a new anduniversal language the mass market in homecomputers will never beome a reality. Iwould like to share with you the experienceon which I am basing that conclusion.

In the research and development divisionof a large corporation, I am handling appli-cation program designs which are toocomplex to be solved as a routine partof an engineer's work. Depending on thenature of the task, I implement the programwith timeshare FORTRAN or APL or ona Tektronix Graphic System 4051 with only16 K of memory in BASIC. These arespecial purpose interactive programs whichare used typically for half a year and areused by "normal people." A normal personis concerned about the mechanical vibrationsof a part which he designs. He is not con-cerned about dollar signs, differences be-tween D and CD and delimiters. When theprogram is verified I do sit down to theterminal with the future end user andwitness how the simplest and most explicitinstructions get misunderstood and con-fused by technically competent people.

The APL ranks highest in my experienceas a medium in which the programs withgood human interface can be writtenwithout generating an extra five pages ofthe code for each new command. APLaccepts and executes most commands(niladic functions without result) whenthey are entered as basic input or as aresponse to a numerical quad. I wouldlike to hear about another language whichis that foolproof.

The APL (or Forth) is recursive, BASICis as interpretative as APL but not recursive.The future ACL will be recursive and com-pilable by parts; it will respect the usualarithmetic priority and will have no largespecial character set. In particular, it will

not call sin X, 1 0 X and it will not say"syntax error" when you forget the rightargument

I don't think that such a language can bedeveloped by volunteers. The group sug-gested by G A Taylor should be formed forthe purpose of developing standards whichare not only hardware independent, but toa degree language independent as well.

To give a concrete example from my ownexperience, I am familiar with two very highlevel systems called DIALOG and SCEP-TRE: after the beginner learns that he musthit the return key to get any action, hecomes to the cases where the clever pro-grammer decided to save him that work by

Peter Mikes

5761 Greenbrier Dr

Dallas TX 75209

16K Static RAM

S-100 Systems

NEW

LOW PRICES

'330 Kit

365 Assembled

• Very Low Power-650MA+5V;90MA+12V;

16MA-5V

• Applications Notes-6800 and 6502 Sys.

• Low-profile sockets for all chips

• Solder mask; silk screen; plated through holes

• Each 4K addressable to any 4K boundary

• Fully buffered S-100 bus-gold-plated contacts

• NEC UPD 410 D memories

COD, Master Charge, B of A, Visa Accepted ....Orders shipped prepaid. California residentsadd 6% sales tax.

M

ANDENBERG DATA PRODUCTS

POBOX2507

SANTA MARIA CALIFORNIA 93454

8O5-037-7951

Circle 118 on inquiry card.

April 1978 © BYTE Publications Inc 149

Circle 18 on inquiry card.

■HHk

I

I

IIIIIIIIIII

I

II

V

ADM-3A 756

00*

IN KIT FORM

'80 CHARACTERS/LINE

• 24 LINES/SCREEN

• ADDRESSABLE CURSUR•9, 10, or 11 BIT WORDS

Plus Shippingand Handling

• 75-19,200 BAUD

• FULL & HALF DUPLEX

• ODD/EVEN/NO PARITY

• RS232 INTERFACE OR20 ma CURRENT LOOP

GET COMPLETE DETAILS WITH A DIRECT CALL:214 258-2414 TWX 910-860-5761 TELEX 73-0022

800 527-3248

m214 Z58-2aifl TWX 910-860-571capital

930 N. BELTLINE

equipment brokersIRVING, TEXAS 75061 #

pDR. D0BBSE

INTERFACE AGE - BYTE - POPULAR ELECTRONICS - ROM - KILOBAUD-

ARTICLE INDEX

PERIODICAL

GUIDE

FOR

COMPUTERISTS

1977

MAKE FULL

USE OF

MAGAZINES

s

INDEX OF PERSONAL COMPUTING ARTICLES

Letters from Readers * Book Reviews

Articles * Editorials* Indexed by Subject

1977 Jan Dec 25 Magazines Indexed

1975 1976 15 Magazines Indexed

$5 each Postpaid Money Back Guarantee

E.BERG PUBLICATIONS

1360 SW 199th Ct; Aloha, OR. 97005

SEND FOR BROCHURE

L ELECTRONICS - RADIO ELECTRONICS1 50 April 1978 © BYTE Publications Inc

requiring only Y or N answer. The return isthen interpreted as zero answer to the nextquestion.

There is no simple correlation built intothe present languages between the types ofprompts and types of legal answers. To theend user, such correspondence is all-important, particularly when applicable toall new computers."

Concerning PASCALA HomebrewCompiler Project

Stephen P Smith

POB841

Parksley VA 23421

(804) 665-5090

Your editorial in December 1977 BYTEwas commendable. It served to reinforcemy conviction that PASCAL is the nextstep up from BASIC for personal computing.As you and your readers know from thebiographical sketch that preceded my articlein November 1977 BYTE, a PASCALcompiler is my pet microcomputer project.Because that sketch prompted a numberof inquiries about the status of my work,I thought a letter to BYTE would be timelyfollowing your editorial.

My approach to the compiler is to startwith a small subset of PASCAL and addfeatures as my resources and talents permit.I've begun by determining the minimumsubset needed to describe its own compiler.Because statements written in the resultinglanguage will still be valid PASCAL, theinitial version can be debugged and run as across compiler on any computer whichsupports the full language. When opera-tional, my compiler will convert itself tomachine code to be loaded on the targetmicrocomputer. Further development willbe done on that machine. Each subsequentrevision will be written in the PASCAL sub-set of the previous one.

At this writing, I have completed theparsing procedures and am testing them on aDECsystem 10 with the guidance of DrRobert Mathis at Old Dominion University.The production of machine code is stillsome way off, because I feel I need moreexperience with the instruction set of thetarget machine, MOS Technology's 6502.I expected to get this experience with a

PERSONAL COMPUTING - CREATIVE COMPUTING J

Circle 12 on inquiry card.

6502 based Challenger I ordered from OhioScientific in August, but it has yet to bedelivered. Perhaps this spring I will have anoperating compiler to report.

As an alternative to my subset approach,there is another way to implement PASCAL.It reflects upon your editorial discussion ofthe compiler/interpreter alternative. I amdeveloping a pure compiler, but the standardPASCAL implementation is a hybrid. A pro-gram is available to convert source programsinto assembly code for a hypothetical stackcomputer (HSC code). The assembledhypothetical stack machine code is theninterpreted by the target machine. Thistechnique has speeded implementation ofPASCAL at several installations, and mightbe useful for personal computing since thehypothetical stack machine code is itselfportable. A club, for example, might main-tain the source to hypothetical stackmachine compiler on one member's com-puter which had the necessary resources.Other members need only support thehypothetical stack machine assembler andInterpreter for their machines. Althoughoperationally more cumbersome than directmachine language compilation, this approachmight speed up the availability of PASCALand reduce the hardware requirement forapplications users.

I know there are others around theworld who are interested in PASCAL fortheir personal computers. I hope you willcontinue to provide a forum through whichwe may communicate.

Shortly before going to press B YTE receivedthe foil owing note from Stephen Smith:

My computer arrived shortly after Imailed this letter, 109 days after OS Iconfirmed my order."

Languages Forum is afeature which is intended as aninteractive dialog about thedesign and implementation oflanguages for personal com-puting. Statements andopinions submitted to thisforum can be on any subjectrelevant to its purpose offostering discussion andcommunication among BYTEreaders on the subject oflanguages. We ask that allcorresponden ts supply theirfull names and addresses tobe printed with their com-mentaries. We also ask thatcorrespondents supply theirtelephone numbers, which willbe printed unless we are ex-plicitly ashed to omit them.

PERSONAL COMPUTER BREAKTHROUGH!

12K Home Computer System

$299.95 (POSTPAID)

BALLY PROFESSIONALARCADE"

THE ONLY VIDEO GAME THEHOME USER CAN PROGRAM.

The Professional Arcadeis a complete home com-puter system and in-cludes these excitingfeatures:

• 2-80 based processer unit (5times more powerful than theZ-80 alone)

• 24 key keyboard — adapts to avariety of programs viakeyboard overlays

• Instruction manual

• 4 remote hand controls (allfunctions can be addressedthrough Tiny Basic.)

Calculator — 5 function 10memory; problems can be scrol-led up and down on TV screenfrom keyboard

3 games — Gunfight,Checkmate, Scribbling, fun forthe family — more availablenow, many more on the way

Tiny Basic Is Mere NOW! Order Today And Get It FREE!

With Tiny Basic, the Professional Arcade is the only Video Game on themarket that the home user can program. Tiny Basic includes keyboardoverlay, ROM cassette, and instruction manual. Features: music, graphicsand color. Program storage of up to 1800 characters. "Token" featurespermits substitution of a single character for an instructional word orphrase. 68 alphanumeric and special characters accessible from thekeyboard. Displays 11 lines of 26 characters.

BUY TINY BASIC today for $49.95, and receive a full refund when youpurchase the expansion package. This limited time offer is available onlyfrom NCE/CompuMart.

Expand Your 12K System To 44K At An Unbelievably LowPrice!

Your Professional Arcade"*" can be expanded into a complete home informa-tion system through a 50 pin connector located at the back of the unit.Preliminary Specifications include:

• Full Basic with extended graphics and music.

• 16K additional ROM • Industry Compatible keyboard

• 16K additional RAM • IEEE port • Preliminary price: $300

Initial deliveries should begin during the third quarter of this year.Price, delivery, and specifications are preliminary, and are subject tochange without notice.

Additional future options include printers, acoustic couplers, temperatureand light controls, telephone dialers, disks, Selectric interface, digital tapedecks, and of course, extensive software.

Priority Delivery

As the value leader in mini and micro computers we placed a large orderearly and have the Arcade'"' in stock for immediate shipment while supplieslast. Orders will be strictly processed in the order received. Priority ofshipment of expansion packages will be based on the date of order of theArcade'"* so order now. Phone orders accepted.

Wo Risk. If after 10 days you're not 100% satisfied, for any reason,just return the computer with aft accessories for a full refund.

Name

Address

City, State, Zip.

<&

Quantity

Description

Bally Arcade

Tiny Basic option

TERMS AND CONDITIONS: All orders must be signed by

an authorized person Equipment may be purchased bycash or credit For net 30 days, approved open accountcustomers must fill out credit application below FOBshipprng point shipments will be insured tor tull value,customer reponsible tor settling transit damage claimsPrices and specifications subject to change withoutnotice. NCE makes no warranty (other than that stated incatalog) with respect to merchantability or titnessot saidmaterial tor any particular purpose NCE shall not beliable tor consequential damages

$299.95

49.95

Mich, residentsadd 4% Sales Tax

Total Amount

BELOW ton CHEOir CARD ORDERS

NCE/Compumart

1250 N. Main St., P.O. Box 861'Dept. BY48, Ann Arbor, Mi. 481C(313) 994-4445

Circle 65 on inquiry card.

April 1978 © BYTE Publications Inc 151

TechnicalFcpum

E John Dehaven

RCA/WACS

Cape Romanzof, AK

APO Seattle WA 98706

Technical Forum is a fea-ture Intended as an interactivedialog on the technology ofpersonal computing. The sub-"ject matter is open-ended, andthe Intent is to foster dis-cussion and communicationamong readers of BYTE. Weask that all correspondentssupply their full names andaddresses to be printed withtheir commentaries. We alsoask that correspondentssupply their telephone num-bers, which will be printedunless we are explicitly askedto omit them.

Solving the Problems ofInternational Television Standards

The following is a reply to Guy Burkhill'squestion in June 1977 BYTE, page 60,about use of 525 line video with English TVsets (presumably 625 line): I think I canhelp answer the question because I workedfor some years with TV in a city that hasboth standards: Bangkok. In Bangkok thereare three or four stations broadcasting withthe US and Japanese CIRR standard (525line, 60 fields per second, 2:1 interlace, 30frames per second) and three or four usingthe German PAL standard (625 line, 50fields per second, 2:1 interlace, 25 framesper second).

As you can imagine, there is a lot ofbusiness converting sets originally in oneform or the other to work on both! If youare satisfied to stick with black and white,there is no problem at all. Nothing needsto be done!

I have seen hundreds of different kindsof TVs from all over the world and theywould all receive both kinds of videotransmission, and in most cases, a compro-mise setting of the vertical hold wouldcause them to lock on either signal. In theworst cases, a slight tweak of the verticalhold is all that is necessary. This is becausethe horizontal and vertical oscillators in TVsets are phase lock types that synchronizeon sync signals that are part of the trans-mitted signal. Horizontal is no problembecause the frequencies are nearly the same

(625 x 25 = 15625, 525 x 30 = 15750) TVsets are never synchronized on the ACline because you might not be on the samegenerators as the TV station. The choice ismade to make the vertical frequency matchthe line frequency in a given country so thatany hum (line modulation) component thatmight creep into the video is stationary onthe screen.

The only thing necessary to convert ablack and white TV is to insert a ($2.00)1 MHz oscillator-mixer module on theoutput of the video detector to convert the4.5 MHz sound intermediate frequency (IF)to 5.5 MHz or vice versa, which would notbe a consideration for a monitor application.This module was often installed with aswitch so it could be turned on or off, but Ihave seen it installed without this switchmany times and there was no noticeabledeterioration of the picture caused by thepresence of the extra sound subcarrier.

Here are some additional tips. You willexperience 20% underscan. If this bugs you,adjust the vertical height control. Usuallythese controls (height and width) are set toohigh on a TV set anyway, since a customeris much more likely to be bugged by darkborders than he is by the loss of some of thepicture.

All TVs contain various traps in thevideo IF, depending on the quality of theset. Almost all will have a sound IF trap

-

152 April 1978 ©BYTE Publications Inc

Circle 124 on inquiry card.

to trap out the sound subcarrier. I wouldsuggest that these traps be removed (orswitched out) for optimum use of a TVset as a video monitor.

If you are contemplating the use of color,you may be in some trouble. You should bevery sure of just what you have in the wayof signal before proceeding (see below). Thetwo systems used in Bangkok have a coloroscillator (phase locked again) that differsby some 800 kHz in the two systems. Atthe very minimum another converter isneeded ahead of the color burst detectorto get this oscillator in sync. If it is PAL,the phase alternating flip flop must beswitched out ("red" signal). While successfulcolor conversions have been made, it is verydifficult to get everything right

If you are not prepared to do a lot oftinkering with a color set, and do not haveaccess to test equipment (good colorgenerator and wideband scope at a mini-mum) your best bet would be to bite thebullet of customs and import a set from theUS or Japan.

I do not presume to tell you what youhave in your own country (Great Britain),but my reference (ITT Handbook, 5thedition) says that your standard is 405 lines/50 fields, 2:1 interlace rather than 625 lines.The sound carrier is AM rather than FM,according to this reference. Make sure of thisbefore you buy a lot of expensive hardware!

It sounds like my remarks about blackand white video would apply pretty muchto your setup if it turns out to be this wayin fact, except that the horizontal frequencywould be 10,125 Hz which might be out ofthe range of adjustment of your horizontaloscillator without a little modification.These horizontal sync controls are typicallybuilt with a very wide range, though, so aTV set may be built to low standards of pre-cision.

Under the 405 line system the videobandwidth is down to 3 MHz from the US4.2 MHz. I don't know if this loss of resolu-tion is tolerable, and what could be doneabout it would depend on the TV set. Insome, it would be easy to take out trapsand tweak the video IF a bit wider; in othersit would be very difficult.

As to the other end of the conversion, Ionce converted a digital color generator(Heathkit) to generate both kinds of signalsin use in Bangkok, and it was not toodifficult at all, especially when you considerthat the sync signals are not at a critical fre-quency. Get a schematic (send a couple ofdollars and an explanation) from severalmanufacturers of TV interfaces and checkout the possibilities."

Circle 5 on inquiry card.

Art-"by-Computertm is here!

Fi ie 13

File 60

BIack-on-white, 9 3/4H by 12 3/4W reproductionsof computer generated designs. See Jan 78 Byteor circle reader service number for details.Set of 12: $20.00, singles $2.00 each. Minimumorder: 2 prints. Orders less then $10.00 andall orders from outside continental U.S. add$2.00 postage and handling. Payment must bein U.S. do I lars. Cal ifornia residents add 6%sales tax. Send check or money order to:

Lei and C. SheppardP0 Box 60951, Dept. BSunnyvaIe, CaI i forn i a 94086.

Also available at selected retail outlets.© Lei and C. Sheppard, 1978.

r

"\

v

The KIM to S-100 busInterface/Motherboard

• Combines the power of the 6502 with the flexibility of

the S-100 bus

• Attaches to any unmodified KIM

• Complete interface logic and fully buffered motherboard

in one unit

• On-board regulation of power for KIM

• Eight slots of S-100 compatibility for additional RAM,

Video and I/O boards, PROM Programmers, Speechprocessors. . .

• Includes all parts, sockets for ICs, one 100 pin connector,

and full Assembly/Operating documentation

♦ Kit $125, Assembled $165

♦ AH units shipped from stock

FORETHOUGHT PRODUCTS

P.O. Box 386-FCoburg, OR 97401

J

Circle 47 on inquiry card.

April 1978©BYTE Publications Inc

153

Circle 22 on inquiry card.

MATRIX PRINTER

•

S100 Bus Compatable • Inexpensive

•

40 Characters Par Line • Reliable

•

90 Lines Par Minute • Dependable

•

Crisp Clear Copy • Attractive Cabinet Included

•

Software Controlled • Complete with Software

Type Fonts - Script - Examples & Instructions

Justification - Generate • Uses Plain Paper

Any 7 Dot Matrix • Kit $375

Symbols or Characters

$426.80 COMPLETE (Assembled)

DISKETTE INTERFACE

S100 Bus Compatable •Uses FD1771 With •

On-Board Crystal •

Simple - easy to program •Handles up to 4 Drives •Just Plug in Interface,

$225 COMPLETEMinifloppy Drive $355 eachSA800 Drive $595 eachSA801 Drive $610 eachIK On-Board PROM andCP/M Software $100

Hook Up Drive and Run Your Program

VISA - MASTER CHARGE - CHECK - MONEY ORDERGEORGIA RESIDENTS ADD 4% SALES TAX

CENTURY DATA PRODUCTS, INC.

1758 TULLY CIRCLE NE / ATLANTA, GEORGIA 30329404/325-7878

Presenting a growing line ofprofessional quality

IMSAI/ALTAIR

5 uu BOARDS

COMPATIBLE

8K BLANK RAM BOARD * mm memory. $25.00

—with MEMORY PR0TECT/UNPR0TECT and SELECTABLE WAIT STATES

Z-80 CPU BOARD $35.00

—with PROVISIONS for ONBOARD 2708 and POWER ON JUMP

PR0T0B0ARD $25.00

(new) 2708/16 EPR0M BOARD $25.00

-accepts up to 16K of 2708 s or 32K of 2716s.ALL BOARDS FEATURE

FULL BUFFERING on ALL DATA and ADDRESS LINES1

SOLDER MASKS and SILK SCREEN1

DIP SWITCH ADDRESSING1

GOLD EDGE CONNECTORS

PLATED THROUGH HOLES

1exceottorPROTOBOARD

WATCH FOR OUR 16/64K DYNAMIC RAM BOARD ANDADDITIONAL BOARDS TO BE ANNOUNCED FORTHWITH.Q 9

IMSAI8080 Kit

—with 22 Slot M.B.

$560.oo

PLUS $10.00 SHIPPING

Z-80 cpu CHIP $22.00

Z-80Acpu CHIP $25.00

450 ns $12.00

PLEASE ADD $2.00 SHIPPING PER ORDER.

13

Mi oii

PO BOX 91ITHACA, N.Y. 14850

PLEASE CALL (607) 273-3271TO ORDER OR OBTAIN TECHNICAL ASSISTANCE.

OEM and quantity discounts available

Tick ... Tick ... Tick

... Booooom

W B JazembskiTexas Tech UniversitySchool of MedicinePOB 4569Lubbock TX 79409

Not all dangerous devices give nice littlewarning sounds. One such dangerous devicemay well be that small TV set that you areplanning to use as a video monitor. All toomany of the small TV sets being sold atbargain prices today are not line isolateddevices. To the uninitiated this meansthat when you plug it into the wall, theAC power line is connected directly tothe common reference or as you diehardscall it, the "ground." In other words, theelectrical reference connection within theTV set that you call the "ground" may beconnected to the power line neutral (withits remote ground). Or it may Just as easilybe connected to the "hot" side of the line,depending upon which way you plug it in.

Where does the danger come in? If youconnect your computer system to the TVset, the reference common on your systemmay well become lethally "hot" with 120VAC. You may say that your system hasworked for over a year with no trouble,so why worry. This is like carrying a smallscrewdriver in your pocket; it may takea year or more before it becomes wedgedin the wrong way and punctures your skinwhen you bend over. In like manner, the"hot" chassis syndrome may exist for manymoons before you acidentally find thatyou have one hand on a ground when youtouch the chassis of your computer systemwith your other hand. (The radio industryproduced "hot chassis" cheapies for monthsbefore a number of fatalities forced thechange to complete isolation. You will notethat the inexpensive TV sets do not havea conventional metal chassis except for thetuner and that there are no openings inthe case to poke a screwdriver into.)

Even if you are the only one who touchesyour homebrew computer, you may forgetsometime and touch metal and groundsimultaneously. Or, you may have a youngvisitor who has not yet learned the dangersof knob twirling and switch pushing. Oops,there goes a neighbor's kid, and he was oneof the nice ones.

For computer manufacturers: Rememberyou will be held responsible for such acci-

154

April 1978 O BYTE Publications Inc

Circle 59 on inquiry card.

Circle 93 on inquiry card.

dents unless you have made it quite clearthat only persons expert in the field shouldattempt to interface to a TV set withoutbeing absolutely certain of the type ofTV set they are dealing with. Check withyour lawyer and see just how responsibleyou are in light of the current wave ofproduct liability laws and litigation.

Oh yes, for you hardy homebrew soulswho still wish to proceed with the smallTV set, there are several solutions that maybe used to use that $79 set that you boughtfor your home computer. Probably theeasiest to understand and implement is topurchase a small line isolation transformerfrom your friendly electronics supplyhouse and install it between your TV setand the power line."

Avoid Self-Modifying Code

Don Kinzer

3885 NW Columbia

Portland OR 97229

Concerning the Programming Quickie inJuly 1977 BYTE, page 166, by GregoryWorth, I would like to make a comment.The timing subroutine as shown is similarto one I've been using for some time. How-ever, Mr Worth's version has a potentialproblem which is rooted in the fact thatthe routine employs what is commonlyreferred to as "self-modifying code."It is best to avoid such tactics, especiallywhen the task can be accomplished equallywell without self-modifying code. Theoffending instructions appear in the listingat hexadecimal address 0006 and 0009.These instructions actually change theinstruction at location 0003 from LDX# C350 to something else (depending onthe state of the carry) and back again. Ifthe user applies a reset at the right time(or, wrong time as the case may be) theinstruction at 0003 will be left in thegarbaged state. For the same reason thecode is not reentrant.

The fix is simple. All Mr Worth needs issix bytes of code that take 12 cycles totalto execute. This can be accomplished severalways including six 1 byte, 2 cycle instruc-tions such as NOP, CLV, SEV, CLC, or SEC;three 2 byte, 4 cycle instructions such asCPX LOOP2; or two 3 byte, 6 cycle instruc-tions such as TST LOOP2. All of the aboveinstruction sequences will have the sameeffect as the two offending instructions,except that they don't change any memorylocations."

COMPUTE YOUR SAVINGS...

IMSAI 8080

A VERY SPECIAL PACKAGE: IMSAI 8080 KIT (22-SL0TMOTHERBOARD, FRONT PANEL, 28-AMP POWER SUPPLY), WITHIMSAI 4K STATIC RAM MEMORY KIT...RETAIL VALUE: $838

SPECIAL CASH PRICE:8080 WITHOUT MEMORY:

$599.95$569.95

TDL XITAN 2

NO TIME TO BUILD: TECHNICAL DESIGN LABS, ASSEMBLEDAND TESTED XITAN ALPHA 2 (WITH Z-80 BOARD, SYSTEM MON-ITOR BOARD, AND 16K OF STATIC MEMORY) WITH 12K SUPERBASIC... TOTAL RETAIL VALUE.: $1749

SPECIAL CASH PRICE: $1399

WANT MORE MEMORY? ADD AN ADDITIONAL 16K TDL STATICRAM ASSEMBLED MEMORY... LIST PRICE: $699

CASH PRICE CW/PURCHASE OF XITAN 2): $559

QUANTITIES LIMITED. ALL PRICES PLUS SHIPPING. CHARGECARDS OR C.O.D., ADD 5%.

n□

n

BUS S-100, INC.

ADDRESS 7 WHITE PLACE

CLARK, NJ 0706BINTERFACE ..... 201 -382-1318

HOURS: M-F 10:00 A.M. - 6:00 P.M. ESTSAT, OR SUN. - BY APPT. ONLY

SHOD,inc

□□

n

THE ROBOTSARE

COMPLETE KITSSend for Brochure

G

Ri

P.O. Box 10767

WinstontSalem, NC

27108

(919)748-8761

Circle 49 on inquiry card.

April T978 © BYTE Publications Inc 155

Circle 36 on inquiry card.

21 START-AT-HOMECOMPUTER BUSINESSES

in the shoestring, start-at-home

computer business handbook

CONSULTING •PROGRAMMING •SOFTWARE PACKAGES ©COMFREELANCE WR!T I NG • SEM INARS • TAPE/D I SC CLEANINGFIELD SERVICE* SYSTEMS HOU S ES • L EAS I NG*SU PP L I E SPUBLISHING* TIME BROKERS • HARDWARE DISTRIBUTORSSALES AGENCIES • HEADHUNT ING • TEMPORARY SERVICESUSED COMPUTERS • FINDER'S FEES*SCRAP COMPONENTSCOMPUTER PRODUCTS AND SERVICES FOR THE HOME

• 8i

Plus - - hundreds of ideas onmoonlighting, going full-time,image building, revenue building,bidding, contracts, marketing,professionalism, and much more.No career planning tool like itever published. Order now and ifyou're not completely satisfied,send it back within 30 days fora full and immediate refund.

X 11 ringbound |113 pp. •$12.00Call 312-945-2940 or mail coupon

730 WAUKEGAN ROAD • SUITE 108DEERFIELD, ILLINOIS 60015

DRTRSERRCH

incorporated

Rush copies of "The Shoestring Start-At-Home

Computer Business Handbook to me right away -

NAME/COMPANY

ADDRESS

CITY/STATE/ZIP

□ check ENC LOS E DQB AN KAMER I CARDQM ASTER CHARGE

i

A PROFESSIONAL COMPUTERTERMINAL FOR THE NOBBIEST

SINGER

7100/7102

New & ReconditionedTerminals withASCII Code

FEATURES:7100

$650. to $1295.

• ASCII CODED without tape punch or reader

• 110 to 150 BAUD (11 to 15 CPS adjustable)

• Word Processing Quality • RS232 Serial orCurrent loop Interface • Nationwide Service

• Warranty • Off line use as Typewriter

• (Option) Special Interfaces available for HobbyComputers (state which when ordering)

7102

Same features as 7100 plus tape punch & reader

TERMS:

C.O.D. and

Cashier's CheckShipping and

Handling $35.00 ea.

HK

H&K COMPANY

COMPUTER CORPORATION

(816)561-1776

Beck Reviews

Scientific and Engineering Problem Solving

with the Computer

by William Ralph Bennett jr

Prentice-Hall, Englewood Cliffs Nj 07632

457 pages, 8V2 by 11 inches

$17.95

Reviewing this book is not unlike the taskC K Ogden set himself in the Saturday Re-view when he reviewed the EncyclopediaBritannica. William Ralph Bennett'sScientific and Engineering Problem Solvingwith the Computer will appeal at once tothe computer scientist, physicist, artist,electrical engineer, musician, and linguist,to name but a few of the disciplines covered.It is massive in size and scope.

The book grew out of Prof Bennett'shighly praised course, "The Computer as aResearch Tool," given at Yale University.Its structure, in the author's words, is basedon the belief that "the best way to teachstudents computational methods is to givethem, lots of interesting problems of grad-ually increasing difficulty." The BASIClanguage is used throughout the bookbecause the author feels it is easily learnedand is conversational in tone.

Rarely has such a diversity of materialbeen covered with this much rigor, elegance,and wit. Prof Bennett is a polymath with avengeance: here you'll find topics rangingfrom pattern recognition to Poe's crypto-grams; from falling bodies to Fourier series;from entropy to electric fields; not tomention rocket travel; the diffusion ofdisease; the Dolby system of noise reduc-tion; lasers; hieroglyphic decoding; thesailor-prostitute problem; cyclotrons;Taylor series; economics and matrix in-version; contour plots; nonlinear distortionin magnetic tape recording; Van Allenbelts; solar flares; the Roger Bacon cypher;and on and on (that's less than a fifth ofthe subjects listed in the table of contents).

Every subject is covered in depth, andreal, practical algorithms and example pro-grams are given (in some cases for the firsttime). For example, in chapter 4, whichdeals with language, the author states hisintent to lure humanity majors into theworld of computers. The chapter beginswith a description of the classic idea of themonkeys and the typewriters, in which anarmy of monkeys typing at random wouldeventually type out all of the world's greatliterature.

This leads naturally to a discussion of

156

April 1978 ©BYTE Publications Inc

Circle 50 on inquiry card.

Circle 38 on inquiry card.

random processes, EddingtorTs conjecturesabout the random motion of gas molecules,some first order monkeys, a few BASICcorrelation matrix programs — and theunsuspecting humanities student is hooked(along with the rest of us)! Nor does ProfBennett stop there, for next is a discussionof second and third order monkeys, theEddington baboon, Markov processesapplied to music, entropy in language,and this typical exercise:

Using the algorithm in the text withthe pair-correlation matrix fromHamlet, compute the most probablediagram path which starts with theletter T. Compare the result with thatgiven above for Poe's The Gold Bug.

I particularly enjoyed chapters 7 and 8,which cover Fourier series and electronics.Here you will find elegant programs designedto teach the theory of vibrating strings, thedesign of filters, and the fast Fourier trans-form. This is one of the exercises:

Write a program to generate fake datafor the plucked string example. Usethe method of least squares fit toextract "best fit" parameters for theamplitude, decay rate and fre-quency. . .

An intriguing feature of the book isthe wealth of excellent, unusual illustrations(page 346 depicts Michelson's incrediblespectrum analyzer machine built in 1903).Physicists will enjoy thumbing through itfor this feature and for the careful exposi-tion of physics in a computer sciencecontext.

The book contains a complete intro-duction to BASIC for readers new to thelanguage. Anyone with a good grounding

CP/M™

LOW-COST

MICROCOMPUTER

SOFTWARE

CP/M™ OPERATING SYSTEM:

• Includes Editor, Assembler, Debugger and Utilities.

• For 8080 or Z-80 systems.

• For IBM-compatible floppy discs.

• $100-Diskette and Documentation.

• $25-Documentation (Set of 6 manuals) only.

MAC™ MACRO ASSEMBLER:

• Compatible with new Intel macro standard.

• Macro library facilities.

• Complete guide to macro applications.

• $90-Diskette and Manual.

• $15-Manual only.

SID™ SYMBOLIC DEBUGGER:

• Runs with CP/M and MAC.

• Symbolic memory reference.

• Built-in assembler/disassembler.

• Real time breakpoints.

• $75-Diskette and Documentation.

d DIGJTflL RESEARCH

P.O. Box 579 • Pacific Grove, California 93950

(408) 649-3896

PUT YOUR FINGER ON SOFTWARE WITH

AN INDEX TO PUBLISHED

MICROCOMPUTER

SOFTWARE

$4.95

SSI lets you know where to find software, what software isavailable, what publications give you the most software for yourneeds, plus right where to go for specific programs. SSI indexesmany microcomputer magazines and books with, of course,complete publication documentation.

Order direct from the

Schreier Software Index4327 East Grove Street Phoenix, Arizona 85040

Circle 73 on inquiry card.

April 1978 © BYTE Publications Inc 157

Circle 81 on inquiry card.

iI

OAE'S new PP-2708/16PROM Programmer is theonly programmer with allthese features:

• Converts a PROM memorysocket to a table top pro-grammer: No complex inter-facing to wire —just plug itinto a 2708 memory socket*

• A short subroutine sendsdata over the address linesto program the PROM

• Programs 2 PROMS for lessthan the cost of a personal-ity module. (2708s and TMS2716s)

• Connect 2 or more in paral-lel — super for productionprogramming

• Complete with DC to DCswitching invertor and 10

v *Pat s Pending

turn cermet trimmers (forprecision pulse width andamplitude alignment)

• All packaged in a handsomealuminum case

PP-2708/16 . . A & T $295.KIT $245.

PP-2716 (Programs Intel's

2716) A & T $295.

KIT $245.

OAE

Oliver Advanced Engineering, Inc.

676 West Wilson Avenue

Glendale, Calif. 91203

(213) 240-0080

ED SMITH'S SOFTWARE WORKS

Announces A

M6800 SYSTEM RELOCATING ASSEMBLER

AND LINKING LOADER

for SwTPCo or Altair 680b

ATTENTION ALL NON DISC 6800 OWNERS: Now you can produce large object pro-grams without the restriction of requiring enough memory storage to contain the textneeded for large size object programs. By using our Relocating Assembler and LinkingLoader you create your programs in smaller, more easily handled segments which can beassembled separately and then linked together at load-time. This, in effect, allows as-sembly of programs whose object code alone would require most of your systemmemory. Load-time linking also provides the capability of setting up program librarieswhich can be called by any program without having to include the text in each assembly.This assembler has many features new to the personal computing market, such as relo-catable code, a full alphabetized cross reference listing, both local and global labels,listing of execution time, 8 character labels, use of a break character in labels, variablecolumn print and terminal listing formats, and for all those PR-40 forty column printersout there the ability to produce an 80 column professional looking assembly outputlisting. The assembler also includes a mini-editor to allow coresident correction of as-sembly errors, load and save source code, generate new source code, list source code,etc. The source code uses the TSC Text Editor format so that their program may be usedto compliment and expand the included editing functions.

The Relocating Assembler and the Linking Loader are furnished on cassette in relocat-able formatted code, so they may be placed anywhere in memory. A short mini-loaderprogram in standard Mikbug format is supplied to initially load the Linking Loader atany desired address. A comprehensive Instruction Manual and an extensively commentedassembly listing complete the M68AS assembler package,

M68AS $50.00

A disc oriented version of the Relocating Assembler and Linking Loader is also availablefrom Smoke Signal Broadcasting.

Other Programs (see Dec. Byte)M6800 Disassembler/Trace ....

M6800 Source Generator

M6800 Relocate

M6800 Binary Loader .

, M68DT $20.00

. M68SG 25.00

.M68RL 10.00

. M68BL 10.00

Package of above 4 programs M68PK .

55.00

Order direct by check. Specify system configuration if other than SwTPCo. Californiaresidents add 6% sales tax.

Note. We shortened our address:

Ed Smith's

SOFTWARE WDRH5

P. O. Box 339Redondo Beach, CA 90277

in algebra should be able to absorb most ofthe material here, but calculus is a definiteplus if you want to tackle the later chapters.Scientific and Engineering Problem Solvingwith the Computer is primarily an idea bookthat reads like a good novel, but satisfies likea good textbook. I intend to keep it nearbyin case I have to design a laser or analyze thesyntactic structure of the Greek Decree OfCanopus.

You never know.

Chris Morgan, Editor ■

Your Home Computer

by James White

DYMAX, Menlo Park CA 94025

235 pages, soft bound

$6

This book is a good introduction topersonal computing for the reader withlittle or no technical background or ex-perience with computers. It is particularlystrong in its hints for evaluating and buyinga personal computer and its suggestionsfor home applications.

The book begins with a brief introductionto the concepts underlying computers,including the semiconductor technologywhich has brought computer prices down toan affordable level. This is followed by anintroduction to microprocessors, types ofmemory, and microcomputer peripherals.Photos of some of the popular micro pro-ducts are included as examples. The bookconcentrates on the concepts and thefactors for evaluation which should beconsidered by the prospective microcom-puter buyer.

The most interesting section of the bookoffers advice on how to get started withpersonal computers, commenting on micro-computer manufacturers and mail ordervendors ("cash now, delivery later"), com-puter stores, the hazards of kit building,and the differences between single boardcomputer "trainers" and full-scale micro-

158

April 1978 ©BYTE. Publications Inc

Circle 99 on inquiry card.

Circle 123 on inquiry card.

computers. A very brief introduction toprogramming is included as well. The authorsuggests an evaluation scheme for "systemselection by weighted factors."

The final section of the book describes awide range of home computer applications.Cursory discussions are offered on educa-tional applications, amateur radio, electrictrains, robots, electronic music and art,games, financial record keeping, stockmarket analysis, a kitchen inventory system,word processing and home environmentcontrol. A chapter entitled "InventionsWanted" encourages the reader to try outhis or her own innovative ideas.

Appendices provide useful, thoughnecessarily incomplete, lists of names andaddresses of manufacturers, personal com-puting periodicals, computer clubs andcomputer stores, as well as a table for theASCII character set.

My only complaint is that the bookdoesn't devote much attention to softwareconcepts. I believe that these can be ap-proached on the same nontechnical level asthe book's discussion of hardware concepts,and that an understanding of a computer'ssoftware features (from the user's pointof view) is crucial to an intelligent purchasedecision. Nevertheless, the book shouldprove very useful to anyone wishing to getstarted in the field of personal computing.

Dan Fylstra

22 Weitz St #3

Boston MA 02134"

Publisher's Note. ..Concerning Reprints from BYTE

Readers are advised that through erroron our part in coordinating selections ofmaterial for outside reprints of pastmaterials from BYTE, there is a significantoverlap of content between The Best ofBYTE Volume 1 published by CreativeComputing Press, and The Seel b//BYTEPrimer published by Scelbi ComputerConsulting Inc.

We do not advise purchase of bothvolumes by readers without comparingtheir respective tables of contents side byside, among friends or in a local computerstore. After discovering this problem, wehave taken the only step possible for us:There will be no second printing of TheBest of BYTE Volume 1 now that thefirst press run is nearly exhausted.

Virginia P LondnerPublisher

VECSICAA4

16K X 8 BIT RAM MEMORY

STATIC OR DYNAMICHAVE IT YOUR WAY !!!!!!

DYNAMIC RAM

Sphere Plug Compatible270 NSEC Access Time470 NSEC Read/Write TimeFully SocketedLow Power

STATIC RAM

Sphere Plug CompatibleEasy Home Brew Interface150 NSEC Access Time300 NSEC Read/Write TimeFully Socketed

MODEL

WWW-16KA

DESCRIPTION

Fully Assembled

PRICE

$549.00

WWW 16KK

Kit

$449.00

1 MODEL

WWW-KAS

DESCRIPTIONFully Assembled

PRICE

$650.00

[WWW-KKS

Kit

$550 00

WWW ENTERPRISES

P. O. BOX 548

HARBOR CITY, CA. 90710

(213) 835-9417

NORTH STAR BASIC PROGRAM

EACH SYSTEM COMPLETE, ON DISKETTEREADY TO RUN

*ACCOUNTS RECEIVABLE ♦GENERAL LEDGER

♦ACCOUNTS PAYABLE ♦PAYROLL

♦SOFTWARE LOCATOR *N.S. BASIC TUTORIAL

♦BUSINESS STATISTICS ♦BIORHYTHM GENERATOR

♦WORD PROCESSING

♦RENTAL LOCATOR SERVICE ♦CHECK BOOK BALANCE

♦MEDICAL BILLING

♦INVENTORY ♦SALES ANALYSIS

♦BOWLING HANDICAPPER

♦COIN COLLECTOR

♦DIET PLANNER

♦IMPORTANT DOCUMENT LOCATOR

—ONLY $35.00 PER SYSTEM, POSTPAID—EQUIPMENT REQUIRED, SINGLE DRIVE,8-K FREE MEMORY, PRINTER OPTIONAL

AjA SOFTWARE

QO

SOFTWARE

DEPT. 11 P. O. BOX 2528ORANGE, CA 92669

Circle 125 on inquiry card.

April 1978 ©BYTE Publications Inc 159

Circle 101 on inquiry card.

Software

Games • CRAPS (Las Vegas style) $6.00

• MULTIPLE LUNAR LANDER $8.00

• SLOT MACHINE $6.00

• GAME PACKAGE: Russian Roulette, MadScientist, and ABM $8.00

Graphics • PICTURE MAKER with AMP'L AN NY $12.00

• GRAPHICS PACKAGE I: Laser Beam, SpaceShuttle, and Blast Off $10.00

• GRAPHICS PACKAGE II: Rain in Greece, Flea,Textwriter, Random Walk $10.00

Scientific • FOURIER FIT: Does curve fitting $15.00Systems • RANDOM NUMBER GENERATOR TEST $5.00

• HEX MEMORY LOADER $10.00

• MEMORY DUMP PROGRAM $10.00

• MEMORY SEARCH $5.00

All Programs Written in BASIC

Complete Easy to Read Documentation

Programs Completely Tested

SOFTWARE RECORDS

P.O. BOX 8401-B

UNIVERSAL CITY, CA 91608

(cal residents add 6% sales tax)

nanaria Boards DO Something

f III I • I

intiii

CL2400

Real Time Clock

$98—Kit

$135—Assembled

■ i-Kiii ■>■ i ■ . :.'•..-::■

If your system needs to know what time it is, our CL2400 isthe board for you. The present time in hours, minutes, andseconds is always available tor input, and is continuousfyupdated by the highly accurate 60 Hz power line trequency.Need periodic interrupts? The CL2400 can do that, too, at anyof 6 rates. Reference manual with BASIC and assemblylanguage software examples included.

PC3200

Power Control System

l^ym/Q.'

PC3232 $299—KitPC3216 $189—KitPC3202 $39.50—Kit

$360—Assm.

$240—Assm.

$52—Assm.

If your system needs on/off control of lights, motors,appliances, etc., our PC3200 System components are foryou. Control boards allow one I/O port to control 32 (PC3232)or 16 (PC3216) external Power Control Units, such as thePC3202 which controls 120 VAC loads to 400 Watts. Opticallyisolated, low voltage, current-limited control lines arestandard in this growing product line.

caharia

systemsj inc.

(formerly comptek)

P.O. Box 516

La Canada, CA 91011

(213) 790-7957

Blubs endNewsletters

North Florida Computer Society

The computer enthusiasts of PensacolaFL have formed an organization for all inter-ested people called the North Florida Com-puter Society. They meet on the secondThursday of the month. For more infor-mation write to Eugene Rhodes, 227 EdisonDr, Pensacola FL 32505.

For Computerized Hams. . .AMRAD

The Amateur Radio Research and Devel-opment Corporation is a Virginia basedgroup which has been operating for threeyears. AMRAD's membership has grownfrom 28 at the end of 1975 to 90 at the endof 1976, to 200 at the end of 1977.

For more information concerning theclub, write to the Amateur Radio Researchand Development Corporation, 1524 Spring-vale Av, McLean VA 22101.

Tennessee Computer Fair Scheduled for May

The Computer Club of Walters StateCommunity College, Morristown TN, issponsoring the First Annual ComputerFair of East Tennessee to be held May 31978 from 10 AM to 8 PM on the collegecampus. Admission will be free. A varietyof computer equipment will be on display,illustrating applications in education, busi-ness and the home.

There will be a charge of $15 for thosewishing to exhibit at the fair. The moneywill be used to establish a scholarship fundin computer science. For more information,contact William R Parks at Walters StateCommunity College, Morristown TN 37814,(615) 581-2121.

Space Coast Microcomputer Club

The Space Coast Microcomputer Clubnewsletter, the Enterprise, has a rathereye-catching cover design. Edited by MikeRodby (also club secretary), it containsstatements from club officials, articles frommembers, and a variety of computer relatedmaterial. Write to the Space Coast Micro-computer Club, 219A Fillmore, CapeCanaveral FL 32920.

160

April 1978 ©BYTE Publications Inc

Circle 17 on inquiry card.

Circle 84 on inquiry card.

Birmingham AL Amateur Radio Club

The Birmingham AL Amateur Radio Cluband the Birmingham Microprocessor Groupwill sponsor the ''BirmingHAMfest 78,"May 13 and 14, at the new air-conditionedBirmingham-Jefferson Civic Center. Therewill be numerous exhibits and forums onmicrocomputers, amateur radio and relatedareas, and a flea market. For more infor-mation, write BirmingHAMfest information,POB 603, Birmingham AL 35201.

On Line

On Line is a medium through whichcomputer experimenters can swap and sellequipment, programs and services relatedto the field of home and business computers.For information concerning advertising ratesor subscriptions, write to On Line, D HBeetle, Publisher, 24695 Santa Cruz Hwy,Los Gatos CA 95030.

Homebrew Computer Club

This organization's newsletter containsmany good articles covering the experi-menter's world. For a subscription or moreclub information, contact Homebrew Com-puter Club Newsletter, POB 626, MountainView CA 94042.

NECS

The New England Computer Societylocated in Bedford MA holds informalmeetings dedicated to the TRS-80 andCOSMAC VIP, as well as software demon-strations. For further information contactthe New England Computer Society, POB198, Bedford MA 01 730.

Long Island Computer Association (LICA)

LICA is now well into its third year ofexistence, and has two active special interestgroups: one for the 8080 (which has beenrunning up the phone bill with three com-puters now operating modems), and one forthe 6800. There is also a class on computerconstruction held monthly before theregular meetings and conducted by AlHarrison. For more information, contactLICA, 28 Splittrail PI, Commack NY 11725.

Houston Amateur Microcomputer Club(HAuCC)

For information concerning membership,meetings and the like, write to HAuCC,POB 37102, Houston TX 77036.-

8700

C6mpvifepr/Controllcr

mum aaB--HSss^k l\ sa ' W

he Answer For*.,StudentHobbyistManufacturer

8700 PrOCCSSOr. 6503 MPU, Wear free "Active Keyboard"

Micro-Diagnostic? Extensive documentation, Fu try Socketed.Pieblig Monitor: Relative address calculator. Pointer High-tow.

User Subroutines, Back-step key.Cassette Interface: Load S Dump by file *. Tape motioncontrol. Positive indication of operation.

Applications systems from $90 (10unit quantity)Development systems from $149 (single unit)TELL ME MORE j wan

S for myself that the m700 is The Answer.

] Please send documentationand price lists. $10 enclosed.

) I don't need documentationplease send price lists.

) Please send FREE CATALOG.

4 B • 1020 W Wilshire Olvd. •

Ctiy

73116 (4051 843-9626

5

1976/1977

bite

Cover Price *plus postageand handling

Back Issues for sale

= The following issues available:I '76

'77

3000 July100 August230 October330 November550 December

350 March

730 May1000 June1000 July1500 August2600 September

350 November

800 December

= *Cover price for all issues thru August 1977 is |

E $1.50 plus $.25 postage and handling. Sep- ~

E tember '77 thru December '77 issues are t

E $2.00 plus $.50 postage and handling. f

rniiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiE

Send requests to:

BYTE Magazine70 Main StPeterborough NH 03458

Attn: Back Issues

April 1978 '■:> BYTt Publications Inc

161

TOPROGRAM

MH'KOCOMITTI MS

And at an affordable price. TheModu-Learn™ home study coursefrom Logical Services.Now you can learn microcomputerprogramming in ten comprehensiblelessons. At home. In your own time. Atyour own pace.

You learn to solve complex problemsby breaking them down into easilyprogrammed modules. Prepared byprofessional design engineers, theModu-Learn™ course presents sys-tematic software design techniques,structured program design, and prac-tical examples from real 8080Amicro-computer applications. All in amodular sequence of 10 lessons . . .more than 500 pages, bound into onepractical notebook for easy reference.You get diverse examples, problems,and solutions. With thorough back-ground material on micro-computerarchitecture, hardware/software trade-offs, and useful reference tables. Allfor only $49.95.

For $49.95 you learn design tech-niques that make software work foryou. Modu-Learn™ starts with thebasics. Our problem-solution ap-proach enables you to "graduate" asa programmer.

Circle the reader service number be-low to receive our free descriptivebrochure and course outline.Use your Master Charge or VISAcard to order today. Call Pat at (415)965-8365.

Circle 62 on inquiry card.

P.O. Box 60968Sunnyvale, CA 94088408-245-8855

Continued from page 24

One out-of-context quote was seizedupon by editor Morgan as an error,thereby drawing my attention to apossibility not explored by the authors.The command "Compute to the lastdigit the value of pi*' was issued becauseit is impossible to fulfill. The computerhad been invaded by an evil disem-bodied entity which effectively becamethe consciousness of the computer.When Commander Spock's little tricktied up the entire system, the entityfled.

The fact that a conscious being couldinhabit a computer in so integral afashion may imply that the "computer"of Star Trek's time is based on anentirely new, indeed unfathomable,technology. (I say "may" because tothe best of my knowledge no one hasyet attempted to inhabit a Z-80.) Onepossibility which suggests itself isthat the device is at least partly organic.(Blish's adaption of the episode "Miri"features a portable cat-brain computernot mentioned in the television version.)Such a development would probablylend itself very nicely to speech recog-nition and natural language processing.

Carol J Pruitt

1134 Summit Av SW

Cedar Rapids IA 52404

GIZ-WIDGETS

I have just read the response toreader Salas's letter in January 1978BYTE, and must disagree with onestatement: "Where tracing or debuggingof read only memory software is in-volved, the simulator technique is theonly one which will work, since break-points cannot be set in read onlymemory." A very elegant hardware de-bugging method exists that is usefulfor code obtained from any source (readonly memory, programmable memory,fast cache, or whatever). In fact, one ofyour advertisers, Micronics, offers justsuch a device.

Conceptually, such a device is fairlysimple. Assuming that your processor(s)is (are) interruptible, connect the inter-rupt line to a logical comparator whoseinputs are from digit switches on oneside, and the address bus on the other.Whenever the address that you havedialed into the digit switches appearson the bus, an interrupt is generated,sending the processor to a routine thatyou have already placed in memory.This routine does whatever housekeepingis necessary, and does a register dumpfor the operator. This scheme hasnumerous capabilities: for example, ifyou are trying to find out why memorylocation XYZ keeps getting clobbered,you can dial in the address of XYZ.Then, when XYZ is accessed for write,the breakpoint system generates aninterrupt and flags the current PC foryou. Now you know where to go looking

in your program for the troublesomecode. Note that a little ingenuity willallow conditional breaks, where theconditions can be the contents of someregister, a switch controlled by theoperator, read status, write status, fetchstatus, or anything else you mightimagine can be used as a condition.Either the condition itself, or the com-bination of the condition and theaddress bus state, can be used as theinterrupt signal.

If you don't have an interruptiblesystem, there is still hope. Connect thecomparator's output to a latch, andconnect the latch to the system's HALTline. When the machine stops, thepertinent data can be read from the busdisplay.

It should be clear that my approachto solving computing problems is withhardware, not with cumbersome andpotentially very expensive software. Ifind that $10 worth of components willusually do the work of a routine thattook a week to code, debug and docu-ment. Of course my solutions tend to bepermanent in existence. I have a wholeshelf full of little giz-widgets that werebuilt on the spot to solve a particularproblem, performed their function, andfound their way onto the shelf as re-minders of times past. But the price isright, and I will keep on using themethod that gets results for me.

By the way, I can't say exactly whatthe capabilities of the Micronics systemare — I don't have one because it won'tplug into my 6800 based system. Butfrom the way their ad reads, it will doeverything you want for a debuggingtool.

As a closing note on a different sub-ject, I find your January 1978 featurearticle by Kent to be fantastic! I amlooking forward to more! Keep up thegood work.

Bob Hale

POB 616

Rancho Santa Fe CA 92067

It all depends on your point of view.The ordinary processor, without a hard-ware aid such as you propose, will stillprove impossible to trace through readonly memory using breakpoints. Manyof us find a logical shelf full of softwaregiz-widgets doing jobs similar to yourquick hardware tools.

MORE A! WANTED

I have read Michael Wimble's 2 partarticle on artificial intelligence in Mayand June 1977 BYTE and found itinteresting and informative. Pleaseinclude more articles on Al as the detailsof implementation are not widely knownor understood, and examples would goa long way to getting the hobbyiststarted in this fascinating field.

Robert Graves

21175 Goldsmith

Farmington Hills Ml 48024

162 April 1978 © BYTE Publications Inc

THANKS FOR CALCULATORARTICLES

RIBBONS FOR THE SwTPC PR-40PRINTER

BUBBLES HAVEN'T BURSTON THE SCENE?

As a member of the SR-52 Users'Club, 9459 Taylorsville Rd, DaytonOH 45424, I was very glad to read"How to Write an Application Program"by William B Jenkins (October 1977BYTE, page 18), featuring the TexasInstruments SR-52 programmable cal-culator. I hope that you have morearticles like this, as it seems to me thatthe programmable calculator does notget the publicity it deserves.

David W Johnston

POB 3781

Washington DC 20007

KIM NOTES

Hal Chamberlin's article "A Samplingof Techniques for Computer Perfor-mance of Music" in September 1977BYTE has provided a lot of good infor-mation to say nothing of good musicfrom KIM. Many people around herehave been surprised and pleased at thesound — an excellent article.

I would like to point out that thevoice pointers (V1PT thru V4PT) pointnot at the waveform tables as theyshould, but at location 0000, whichmeans that the program uses itself asthe waveform table . . . making a ratherhorrible sound indeed, and leading oneto believe that the filter is inoperative.

An interesting "song" can be heard ifone changes the song pointer (SONGA)to point to the program itself, or evento the KIM's built-in programs in readonly memory.

Hugh C Holland

500 W Main St

Endicott NY 13760

The comment statements in listing 2(page 72) and the main text both indi-cate that the four voice pointers pointto the waveform table, table 5, page 79.We should have stated this explicitly inthe caption for listing 2. We apologize toMr Ho/land and to other readers whomay have been confused by thispoint. . .CM

PC ARTWORK SERVICE NEEDED

I have invested considerable moneyin artwork and drafting aids for twiceactual size printed circuit layouts. I havebeen using this method for six yearsnow, but my contact in the photographybusiness can no longer do my photo-reduction or plastic masks.

I wonder if any of my fellow BYTEreaders know of a firm willing to dosmall jobs of this type? If someone does,please contact me.

Brian Beard

PSC Box 1 755

MacDill AFB

FL 33608

Some time ago the systems designdepartment of this university bought aPR-40 printer from SwTPC for use withthe several SOL-20s used in our controlsystems lab. Naturally a new ribbonbecame necessary after a time and,logically, it made sense to obtain itthrough our normal suppliers of suchbasic items. The problem, as I soonfound, lay in finding a manufacturer'spart number for the ribbon, a detailnot found in any of the documentation.

After some false starts 1 called themanufacturer of the print mechanism,LRC Inc in Riverton WY. About oneminute later 1 was in possession of chap-ter and verse. Efficient, fast and courte-ous service was a very refreshing change.

For the information of PR-40 users,the correct ribbon is Addressograph-Multigraph Graphics P/N 1 16-2395-326.

John G Wilson, Systems Analyst

Faculty of Engineering Systems Design

University of Waterloo

Waterloo, Ontario CANADA N2L 3G1

What happened to the TBM0103bubble memories you said would hitthe market last fall as subsystems ofmass storage? Your comments weremade in the July 1977 BYTE editorial,"This Elephant Never Forgets," byCarl Helmers.

John Herscher2105 Independence AvKansas City MO 64124

Texas instruments markets a wholeline of new terminal products whichincorporate this memory part. Thesehave been seen in the marketplace ofcommercial equipment since intro-duction at the NCC show last summer.Apparently most of the Tf productionis being used interna fly for their ownproducts, rather than being sold to othermanufacturers for incorporation intoend user equipment But this is no doubta temporary condition, for Ti is hardlyabout to ignore its traditional com-ponents markets for parts.

HOBBYISTS! ENGINEERS! TECHNICIANS! STUDENTS!

Write and run machine language programs at home, display video graphicson your TV set and design microprocessor circuits — the very first night— even if you've never used a computer before!

RCA COSMAC microprocessor/mini-computer

SPECIFICATIONS

ELF II features an RCA COSMACCOS/MOS 8-bit microprocessor ad-dressable to 64k bytes with DMA, in-terrupt, 16 registers, ALU, 256 byteRAM, full hex keyboard, two digit hexoutput display, S slot plug-in expansionbus, stable crystal clock for timing pur-poses and a double-sided plated-thro ughPC board plus RCA 1861 video 1C todisplay any segment of memory on avideo monitor or TV screen.

Use ELF II to ... play GAMES usingyour TV for a video display... CREATE ■GRAPHICS pictures, alphanumer-ics, animated effects ... learn how toDESIGN CIRCUITS using amicroprocessor ... the possibilitiesare infinite!

A THOUGHTFUL GIFT

FOR ANYONE WHO MUST

STAY UP TO DATE IN

COMPUTERS AND

ELECTRONICS1

ELF

ii

99

95

■ ■■■«■■ SEND TODAY — —iNETRONICS R&D LTD., Dept. BY3333 Litchfield Road, New Milford. CT 06776 Phone (203) 354-9375

ELF II explodes into a giant when you

Yes! / want to run programs athome and have enclosed:D $99.95 plus $3 p&h for RCACOSMAC ELF II kit. Featuredin POPULAR ELECTRONICS.Includes all components pluseverything you need to writeand run machine language pro-

be

tLi " CAFiuut3 «»■« ■ 5,ai" w,,w" J"u ■ ana run macnii

plug the GIANT BOARD into ELFs I grams plus the new pixie chip

that lets you display videographics on your TV screen. De-signed to give engineers practicein computer programming andmicroprocessor circuit design,ELF II is also perfect for collegeand college-bound students (whomust understand computers forany engineering, scientific orbusiness career). Easy instruc-tions get you started right away,even if you've never used a com-puter before!

As your need for computingpower grows, five card expan-sion bus (less connectors) allowsmemory expansion, program de-bugger/monitor, cassette I/O, Ato D and D to A converters,PROM, ASCII keyboard inputs,

expansion bus. This powerful board ineludes cassette I/O, RS 232-C/TTY, 8bit P I/O and system monitor/editor...meaning your ELF II is now theheart of a full-size system with unlimitedcomputing power! $39.95 kit. $2 p&h.

• 4k Static RAM addressable to any 4kpage to 64k. $89.95 kit. $3 p&h.

• Prototype (Kluge) Board accepts up to32 I.C's of various sizes. $17.00 kit. $1p&h.

• Expansion Power Supply. $34.95 kit.$2 p&h.

• Gold plated 86-pin connector. $5.70postpaid.Coming Soon! ^w^^^^^^y^^

Tiny Basic

ASCII KEYBOARD* CONTROLLERBOARD * D-A, A-D CONVERTER *CABINET

controllers, etc. (soon toavailable as kits). Manual in-cludes instructions for assembly,testing, programming, videographics and games plus howyou can get ELF II User's Clubbulletins. Kit can be assembledin a single evening and you'llstill have time to run programs,including games, video graphics,controllers, etc., before going tobed! D $4.95 for 1.5 amp 6.3VAC power supply, required forELF II kit. □ $5.00 for RCA1802 User's Manual.D I want mine wired and testedwith the power transformer andRCA 1802 User's Manual for$149.95 plus $3 p&h.Conn. res. add sales tax.

NAM E

ADDRESS i

CITY

STATE_

JZIP_

D Send info on other kits!« fKUM, Aseu Leypoard inputs, Dealer Inquiries Invited

Circle 78 on inquiry card.

April 1978 © BYTE Publications Inc 163

You simply will not believe how easy our Soft-Touch™dial is to install. If you own your own telephone, youneed only unscrew the mouthpiece and put on theContemporary Soft-Touch™. In almost no time at all,you can be sitting in your your easy chair, at cord'slength from your phone, dialing any number by justtouching the number buttons.

With all controls right in the hand set, it's easy. Con-venient. And best of all, it's so inexpensive. You payone low price and the Soft-Touch,M is yours. No in-stallation fee. No extra monthly charges - ever!Our Soft-Touch™ works on the very same tone dialprinciple used in all new telephones. It lets you dial anumber in one tenth of the time it takes with thoseolder spin back rotary dials.

Tone freguencies are crystal controlled, providing ac-curacy 6 times beyond actual requirements. The Built-in microphone is similar to those found in the finesttape recorders. Clarity is better than the old carbonmicrophones currently used in most telephones.Important: Soft-Touch™ is approved for you to puton your own phone. If you can unscrew a bottlecap,you can install your own Soft-Touch™ in less than aminute. But, if you lease your phone from the phonecompany, they may wish to install it. Regulations andtelephone company charges for this service differamong local telephone companies.It's A Portable Computer Terminal. The powerfultone generator is a perfect direct access com-municator with traditional computer systems. Severalbanks have already begun to introduce theircustomers to direct computer services.. .right from aphone. ..using the Soft Touch™ tone generating diaier.Use It For 10 Days...At Our Expense. If notsatisfied with the convenience of the extraordinarySoft-Touch™, return it within 10 days for a promptand courteous refund of the purchase price. Soft-Touch™ is a registered trademark of 2001 TelephoneSystems. Protected by U.S. Patent No. 4042793with Manufacturer's Full Year Guarantee.

Please send me Soft-Touch™ Tone Dials. My color choice is: ^

Black (Item 0036) - $29.95Colors below at 531.95 each:

Red (Item 0035} Green (Item 0037)

II Tan /Beige (Item 0038) I I White (Item 0039)

1 Yellow (Item 0040)Add $2.00 each for shipping and handling III. Res. add 5% sales tax

Check or MO. Enclosed Charge My Credit Card:

□ American Express Mastercharge i Carte

J Bank Amer./Visa 1 I Diners Club BlancheCredit Card Ho.

Mastercharge Bank No.

Eip. Date

Cit| _State .

-Zip-

Sigrtature

BYTB-091CREDIT CARD ORDERS

800-323-2272 SSSESSS

790 Maple Lane Bensenville, II. 60106

Contemporary

1 fTlarketina. Inc. **

A SUGGESTION FROM EREWHON. . .

Prof Kent's article "Biological Modelfor Robotics" in January 1978 BYTEwas interesting and the best presentationfor the layman I've seen.

I've been interested for a long timein trying to devise ways of imitating anykind of biological brain and while at theMichelson Labs in 1964, built a fewelectronic neurons from discrete com-ponents using the cordwood concept.The volume was still Vh cubic inches,which I calculated would require theentire 3 story lab building to house thebrain of a small bug. Since 1 had nofunding I gave up that idea.

Later in 1967, while head of theFluidics Lab at Genge, I built someneurons using fluidic logic and ampli-fiers, as well as matching power ampli-fiers and even solid state fluidic poweredmuscles. The neurons were reduced toabout a tenth of a cubic inch, but thepower supply problem was insurmoun-table, and the cost for a brain of anycomplexity came in at about $100million for components alone.

I have given up on the concept ofduplicating biological mechanisms withelectronics and fluidics primarily becauseI have discovered a neat way to duplicatebrains for about $10,000 each, and thebeauty of it is that almost any hobbyistcan do it providing (s)he gets the appro-priate state licenses.

My partner and I made two of them,which turned out pretty well except fora few minor aberrations which a friendat UC Santa Barbara assured me wouldclear up in a few more years.

This method has a very high yield;less than one serious malfunction in100,000 brains, which is a lot betterthan the silicon chip guys can do.

The only trouble with these brains isthat it is difficult to achieve specificcharacteristics in the finished product,and the housing they come in is notsuitable for harsh environments. Ofcourse the real problem is that afterabout 18 years, these androids run off,and since you can't tell them fromhumans at that age, the society grantsthem human status and you can't getthem back.

I feel that the best way to makebrains is to do a little genetic engi-neering on existing life forms and thenmaybe you could grow them faster withbetter control over parameters and atconsiderably lower cost. While you'reat it, you can redesign the housing andprogram them so they won't run off.

Right now I'm waiting for thefellows at the lab to get the geneticengineering down pat so a guy can foolaround in his home lab and make hisown brain. In the meantime, I'm stickingto my old PDP-8L for strictly digitalapplications.

John F Cogger, President

Cogent Inc

1605 Morse Av

Ventura CA 93003

marketing. Inc.

IN THIS READER'S OPINIONBOMB BOMBS?

Your BOMB questionnaire is impro-perly structured for a nonbiased samp-ling of the true feelings of your readerstowards the articles in question.

The causes of this bias are the resultof several specific problems, the first ofwhich is the physical layout of thequestionnaire. By giving the question-naire more answers in the good to WOWrange than in fair to poor rate, youhave biased your answer towards thegood to very good answers. You couldprobably give the questionnaire to 100people who have never heard of yourmagazine and get a preponderance ofgood to very good rather than thenormal distribution of answers aroundthe fair answer which would be thenormally expected result.

The second problem results from thevery nature of questionnaires, ie: whatrelationship does your sample (thereaders who returned the cards at theirown expense) have to your readershipas a whole. The answer is probably verylittle.

Let us examine the typical responder.First, he (or she) must be extremely self-motivated, merely because he (or she) isinterested in an unusual, expensive andtechnical hobby. The responder wouldbe of above average intelligence andmust be motivated enough to pay $.13to tell you how he (or she) feels aboutan article.

This last point bears further examin-ation. In response to prepaid question-naires, the response rate is at best 10%to 20%; the response to questionnairesthat are not prepaid is typically one totwo orders of magnitude less.

Thus by skewing the expecteddistribution of answers toward favorablereplies by questionnaire structure, by thenature of your sample universe (yourreadership would tend to be of aboveaverage intelligence, extremely self-motivated and as a result tend to veryopinionated) and by requiring positiveaction (putting the stamp on the card)to respond to the questionnaire, you willhave gotten an extremely small, biasedsample of an extremely large data base.

It's your survey to run, but youshould realize that in my opinion yourstatistical model has little resemblanceto reality.

John W Simpson Jr

Box 13062

Pittsburgh PA 15243

We have no pretension that theBOMB voting represents an unbiasedsample, its prime purpose is editorialfeedback from readers. If no one sent inthe cards, we would assume (beingoptimists) that everything was '"right"with an issue, in so far as readers areconcerned, a possibly dangerous assump-tion. But cards always come in. BOMBgives us a structured form of feedbackwith a monthly sampling of those

164 April i978©byte Publications inc Circle 34 on inquiry card.

readers who are "intelligent" and "seif-motivoted" enough to express an opin-ion by both the circled ratings and thecomments scrawled across the bottomof perhaps 20% to 50% of the cards.

From a functional point of view, thedesign of the form and the requirementof a thirteen cent stamp act as a filter tolimit the responses to the "opinionated."The analysis would be intractable on amonthly basis if this were not the design.The key items are that BOMB providesboth verbal commentary and an algo-rithm for numerically evaluating in somesense "what the readers think" of theauthors in an issue. The reality in ques-tion is in the responses themselves, notin some alleged statistical model. . .CH

COGNITION AND ROBOTS

I feel there is a tendency amongpeople in the field of artificial intelli-gence to give their work false prestigeby using the terminology of conscious-ness to talk about machines. The con-fusion that exists these days, even amongcomputer professionals, about the differ-ence between computation and thoughtis so great that the terms should not bethrown around this way.

To state that difference briefly: theconcept of computation is logicallydependent upon, and derives from, theconcept of thought. When you are facedwith a new problem, you explore variousways of solving it, possibly coming upwith new cognitive methods in theprocess. Once you have enough experi-ence with a certain class of problems,you can put a method of solving theminto words which are so explicit that nofurther thought is needed to followthem; you just carry out the procedure.But this is something you can only doafter having completely solved that classof problems, in pattern. For instance, tosolve an arithmetic problem, you canjust apply the appropriate rules. Theonly mental effort required is the effortof remembering the rules, and possiblysome of the intermediate results.

Computing became more significantwhen people realized they didn't haveto carry out this mechanical rule fol-lowing by themselves. They could designmachines which would perform compu-tations for them, given an appropriateencoding of the necessary data. Butthese machines could not solve anyproblem until someone had thoughtout the method of solving it and turnedit into an explicit procedure. This is arestriction on computation as such, andhasn't been relieved by any technicalimprovements; nor can it be. The key tocomputation is the elimination of allthinking from a procedure. This appliesto learning and heuristic programs asmuch as to any others; these programssimply perform computations to gener-ate other computational rules or trialresults.

I believe that robots do not have"senses" and do not "perceive." Sense

perception is the function of providingraw data about the world to a consciousbeing. If you remove this differentiatingcondition, then anything that affectssomething from without might as wellbe called a perception. The onlydifference between a robot's "percep-tion" of light by photodiodes and arubber ball's "perception" of a wallwhen it bounces is a difference ofmedium and of complexity. Treating theconcept this way renders it meaningless.

Nor is possessing a model of one'senvironment the same as having know-ledge. Knowledge is the sum of a con-scious being's identifications of realitythrough sense perception and throughthe development of concepts from theseperceptions. The idea that knowledgeisn't awareness of what's "out there" byfirsthand means, but rather a structure"in here" which (if you're lucky) hassome sort of correspondence to theoutside reality, is just a modernizedversion of Kant's phenomenal world."

If we are going to avoid givingpeople science fictionish fears of robotsthat have minds of their own, we shouldavoid misleading terminology.

Gary McGath7 Silver Dr, Apt 3Nashua NH 03060

COMMENTS: TRANSIENTS

I have just read the article entitled"Spikes: Pesky Voltage Transients andHow to Minimize Their Effects," aspublished in November 1977 BYTE.I would like to take this opportunityto update the readers of BYTE on thestate of the art concerning your solutionto the transient problem.

We have been involved in the researchand development of transient voltagesuppression devices for several years andnow feel obligated to alert everyone tothe potential hazard of varistors in theapplication you describe. As a manu-facturer of transient voltage suppressorswe discarded the varistor a number ofyears ago because it will age, and agingincreases the leakage current. The higherthe current, the faster the aging — arunaway condition. The higher theambient temperature, the sooner this canhappen. A runaway condition might be afire hazard. The varistor has its place inthe proper environment, but its appli-cation must be carefully chosen.

As a manufacturer of transient vol-tage suppressors, we have marketed a110 V "plug-in" unit that is extremelyeffective without the use of a varistor, ata cost that is comparable to the circuityou describe, if you would like addi-tional information concerning our pro-duct, please feel free to contact mepersonally.

Stephen J Sorger, Vice President

W N Phillips Inc

356 Bacon St

Lake City Ml 49651 ■

tBXSSDVaiMSS

AVAILABLE FORIMMEDIATE DELIVERY

An Advanced, Comprehensive,

Commercially oriented, Compiler/

InterpreterBASIClanguage facility

designed for use with the

CP/M OPERATING SYSTEM

CBASIC FACILITIES INCLUDE:

DISK ACCESS — Sequential andRandom Files. Fixed and Variablelength records,

PRINT USING allows sophisticatedformatting of output to both thePrinter and Disk Files.FOURTEEN DIGITS of numericprecision.

LIBRARY FACILITY supports"Canned" procedures which areincluded at compile time.LINE NUMBERS are not necessaryon every line. They are needed onlyto transfer control.VARIABLE NAMES can be up to31 characters long.STRING manipulation facilitiesinclude MATCH, LEFT$, RIGHTS,MID$, LEN, Concatenation, Arraysand More.

PEEK, POKE, CALL, WHILE ...WEND, TRACE, Printer Selection,Multiple lines per statement. Re-marks that don't take space, IF ...THEN ... ELSE, Logical Operations,INPUT LINE to enter text includingcommas and special characters,READ LINE to read text files and

SQQ95

99

MORE.FOR ONLY

Including Extensive User's Manual

Manual only $15.00

BUSINESS APPLICATIONSPROGRAMS ForCP/M Users:

QSORT — A Full-Diskette Sort/Merge (in 8080 code) withDocumentation $ 95

UTILITIES — Including a Full-DiskCopy and Memory Test $ 40

GENERAL LEDGER—A GeneralizedBusiness GL designed for Account-ants or Small Businesses. Includescomplete documentation.Written in CBASIC $995

NAME AND ADDRESS FILESYSTEM — Interactive Entryprogram Adds, Changes, Deletes,or Displays records. Prints labelsor reports of all or selected portionsof a file. Written in CBASIC $ 79

To Order or For More Information, Write:

Aructured /y/tem/ Group

5615 KALES AVENUEOAKLAND, CALIFORNIA94618

(415)547-1567

California residents add 6V2 % Sales Tax.Prepaid or COD only.

Dealer Inquires InvitedCP/M is a trademark of Digital Research.

Circle 106 on inquiry card. April 1978 ©BYTE Publications Inc 165

WARBLE ALARMCAR-VAN CLOCK

WITH HEADLIGHT ALARM

ELAPSED TIMER

SECONDS DISPLAY SWITCH

9 MINUTE SNOOZE ALARM

SIMPLE 4 WIRE HOOKUP

JUMBO »" LED DISPLAY

1 TO 59MINUTE COUNTDOWNTIME^'INS SIMULTANEOUSLYWITH CLOCK!

RUGGEDABSCASE

COMPLETE KIT $35.95ASSEMBLED $45.95

DIGITAL AUTO INSTRUMENTStachometer SEVEN MODELS!

*2 WATER TEMP,

#3 FUEL LEVEL

•4 SPEEDOMETER

#5 OIL PRESSURE

*6 OIL TEMP.

#7 6ATTERY MONITOR

i

KIT INCLUDES

CASES ALL HARDWAREPRESSURE & TEMP SENOEHSASSEMBLED MAIN PC BOARD

FEATURES:

r'ORANGE L

» ? ■ AHS IAS(

'ADD S10 FOR REQUIRED SPEED SENDER . S15 FOR SPEED SENDER ALONE

KIT: $49.95 ASSEMBLED: $59.95

ELECTRONIC 'PENDULUM' CLOCK

• SWING PENDULUM

• 7" HOURS AND MINUTES DISPLAY

• TIME SET PUSH BUTTONS

• ALARM FEATURE

KIT-UNFINISHED CASE $59.95

ASSEMBLED-STAINED CASE $69.95

QUARTZ DIGITAL AUTO CLOCKOR ELAPSED TIMER!

ELAPSED TIMER: HRS, MINS & SECSSIMPLE PUSHBUTTON RESETS.HOLD TOGGLE SWITCH

KlT INCLUDES EVER YTHtNG.NOTHING ELSE TO BUY! 4" LEDS!INTERNAL BATTERY BACKUP!NON POLAR INPUT!

120R24HRMODEDIMENSIONS 4' " x 4" K 2"

KIT: $27.95 ASSEMBLED: $37.95

NOW WITHELAPSED

TIME!

3T/2 DIGITAL CLOCK

• 4 DIGIT KIT $49.95 . 4 DIGIT ASSEMBLED $59.95. 6 DIGIT KIT $69.95 • 6DIGIT ASSEMBLED. J7gf95

117 VAC 120R 24 HR MODE .6 DIGIT VERSION 27" x 5" k 1",

KIT COMES COMPLETE'

. 4 DIGIT VERSION:ie,,xS',x IV,"

TV-WALL CLOCK

. 25'VIEWING DISTANCE

. .6" HOURS & MINUTES

• .3" SECONDS

- COMPLETE WITH WOOD CASE

KIT: $34.95 ASSEMBLED: $39.95

ECONOMY CAR CLOCK

. %" LED MODULE!

. COMPLETE WITH CASE,BRACKETS TIME SETPUSHBUTTONS

. ALARM OPTION

KIT: $19.95 ASSEMBLED: $26.95

PENDULUM

$14.95

5IVE YOUR DIGITAL CLOCK A PENDULUM SWING

9 TO 12V DC -60 HZ INPUT

SIMPLE HOOK UP TO ANY CLOCK

CASE WITH BRACKET $3.75

MARKFOSKETS'

SOLID STATE TIME

P.O. BOX 2159DUBLIN, CALIF. 94866

ORDERS (415) 828-1923

24 HRPHONE

CALIFORNIA RESIDENTS - ADD 6% SALES TAX

BYTE's Bits

National Computer ConferenceGets Personal

Anaheim CA is the site of the 1978National Computer Conference (NCC) tobe held June 6 thru 8 at the DisneylandHotel Convention Center. Featured atthe show will be a Persona! ComputingFestival, which quickly became one ofthe most popular attractions at lastyear's NCC.

Major events scheduled for theFestival include an exhibit of personalcomputing products and services, aprogram of papers and presentations,and a display of individually designedpersonal computing systems and appli-cations. Commercial organizations willdisplay microcomputer systems, kits,components, terminals, floppy disks,cassette tape systems, and software inthe Exhibition Hall.

A special program of papers andpresentations relevant to personal com-puting is to be presented; a softboundvolume, Festival '78, will contain thecollection of these presentations and willbe available during the Festival. Approx-imately 30 sessions are planned,covering such topics as graphics, musicsystems, speech synthesis, computergames, personal computers for the handi-capped, small business sytems, softwaredesign, microprogramming, optical scan-ning, floppy disk systems, seminars forclub leaders, hardware and softwarestandards, and many more.

Individuals will have a chance todisplay their own personal computingprojects and compete for prizes.

Main Show Activities

Not to be outdone, the main show atthe National Computer Conference willfeature over 330 organizations at 1,382booths showing everything from mini-computers to multimillion dollar sys-tems. Software systems, test equipment,peripherals, education, and trainingmaterials are just a few of the items tobe seen. More than 4,000 industryrepresentatives will be available atthe show to demonstrate products andanswer questions.

There will be over 100 technicalsessions dealing with systems, method-ology, applications, and managementissues. Time will be allocated for pre-sentations based on outstanding papersdelivered at recent specialized con-ferences and workshops, and-of parti-

cular interest to personal computerenthusiasts—a number of sessions willbe devoted to microcomputer appli-cations and design. Conservation ofenergy and allocation of resources aretwo of the topics to be discussed.Computer systems sessions will coverdata networks, distributed systems,programming and operating systems,plus computer architecture and theimpact of recent developments on hard-ware technology.

Conference Call

Conference registration for NCC 78includes corresponding admission to thePersonal Computing Festival. For stu-dents, experimenters, and others notplanning to attend the NCC main con-ference, separate one day and three dayregistrations will be available for $5 and$9, respectively.

Approximately 25,000 peopleattended last year's NCC PersonalComputing Festival; conference officialshope to surpass this figure by a comfort-able margin. Attending the NCC lastyear proved to be fruitful for us: thesheer variety as well as quality of theofferings was exciting and thought pro-voking. We look forward to the samehigh quality this year. . .CM»

Picking the Right Color Televisionfor an Apple, Continued

In the review of the Apple II pub-lished last month (page 18), I notedproblems with the display achievedusing a Panasonic color television. Inthat writing I stated that Apple Com-puter recommends use of Sony colortelevisions due to their superior shieldingfrom extraneous radio frequencies. Itested that recommendation by going toa local shopping mall and purchasing a19 inch diagonal Sony "portable"television which lists for about $600currently. When this television is usedwith the Apple II instead of the 13 inchPanasonic, all traces of instability andRF interference are gone when theApple II drives the television on channel3 using a modulator.

However, there is a problem whichstill remains: when the television islooking at channels 2, 4 and 5 broadcastfrom Boston MA (perhaps 75 miles lineof sight) through a rusty derelict of an

166 April 1978 © byte Publications inc Circle 104 on inquiry card.

outside antenna which came with myhouse, I pick up noticeable herringbonesfrom my homebrew computer systemin the basement-and when the Apple IIis on, the herringbone pattern pickedup by the antenna lead running next tothe Apple II is even stronger. So users ofpersonal computers who live in fringeareas with respect to television receptionare advised to sign up for the local cablecompany, or be careful to run antennaleads far away from the computer. Thisproblem is hardly confined to any onedesign, and I would expect that anypersonal computer delivered in un-shielded packaging would have sometelevision interference problems due tothe high frequency components presentin typical digital signals. . .CH"

Call for Abstracts

A call for abstracts has been issuedfor the Software Quality AssuranceWorkshop: Functional and PerformanceIssues, to be held in San Diego CA onNovember 15, 16 and 17 1978,

Cosponsored by the Los AngelesChapter and National ACM (SIG-METRICS and SIGSOFT), the workshopis concerned with current developmentsand experiences in assuring softwarequality. In this context quality meanssoftware meeting specifications andrequirements in both operation andperformance. Since software qualitycannot be tested into a software pro-duct after it has been completed, theeffort to assure quality must surroundthe product throughout its developmentcycle. As a result, software quality assur-ance issues include: procedures for func-tional and design reviews; tools and pro-cedures for controlling, testing, debug-ging, and assessing adherence to stan-dards and conventions; and final productacceptance testing. Abstracts on experi-ences (successes or failures) are welcome.

Topics may include: quality assurancetools, configuration management, per-formance measures, reporting systems,software library control systems, systemauditability, performance evaluation,technology tradeoffs, methodologies,standards development, and testing tech-niques and tools.

The computer system base for thesetools or procedures may include thefull range from microcomputer to largesystems. Interested parties are invited tosubmit ten copies of a detailed abstractto the program chairman, Clint Wood-worth, Clinton Woodworth Associates,150 Lagunita Dr, Soquel CA 95073.

All submissions will be read by theprogram committee and evaluated on thebasis of significance, relevance to theworkshop purpose, and overall quality.It is important that the abstract conveythe ideas and contain enough infor-mation to enable the program committeeto determine the scope of the work.Given the time constraints, the abstractshould be limited to no more than fivedouble spaced pages. The author's nameand affiliation should appear only on acover sheet attached to one copy of theabstract for use by the program com-mittee chairman.

The deadline for submission of ab-stracts is April 15 1978. Authors will benotified of acceptance or rejection byJune 10 1978. The authors of acceptedabstracts must submit their manuscriptsto the program chairman, typed accord-ing to specifications, by September 101978. In addition, these authors shouldprepare verbal presentations for part ofthe workshop program itself.

For additional information about thisworkshop, contact A C (Toni) Shetler,general chairman, Xerox CorporationA3-49, 701 S Aviation Blvd, El SegundoCA 90245. Proceedings for this work-shop will appear in a special issue of theSIG M ET RICS Performance EvaluationReview and will be distributed at theconference."

Cartoon by Kenneth R Lodding

"Does he want booze? Money? Girls? No, he wants a WOO lines oferror free code,"

SAVE 10-20%

ON LEADING LINES

FLOPPY DISKS

Best price & delivery onfloppy disk interfaces

North Star Micro Disk, kit u* $699 $ 599

Above, assembled List $799 699

Vista Micro Disk, kit List $649 549

Above, assembled List $749 649New Micropolis MacroFloppy

(143 kilobytes), assembled 695Dual Micropolis MetaFloppy

(630 kilobytes) 1895

(MICROMATION, TARBELL, & other interfaces and drivesalso available.)

Z-80S-100 CPU BOARDS

Digital Innovations reg. $169.95 $ 129.95North Star 4 MHz reg $19900 169.95

TDLZPU reg $269 00 229.00

Assembled and tested (any of above) -

LIMITED TIME SPECIAL ADD $ 40.00(CROMENCO, ITHACA AUDIO, and others available.)

S-100 ADAPTERS for Heath

H-8, Radio Shack TRS-80, or

Intel SBC —Introductoryoffer:

ONLY $49.95

S-100 MEMORY BOARDS

North Star 16K Dynamic RAM

Kit List $399 $329

Assembled List $459 379Dynabyte 16K Dynamic RAM,

Assembled & Tested List $399 319

SD 32K Dynamic w/8K, kit 149

SD 32K Dynamic w/16K, kit 249

SD 32K Dynamic w/32K, kit 449

Cybercom (SSM) 16K Static w/4K, kit 139

Assembly (for any of above items) ADD 50

MAINFRAMES

North Star Horizon 1, kit ust $1599 $1349

Above, Assembled & Tested List $1899 1599

North Star Horizon 2, kit List $1999 1699

Above, Assembled & Tested List $2349 1939

IMSAI 8080 w/22-slot, kit List $699 584

IMSAIPCS80/30 L.st$n99 1018

IMSAI PCS 80/15 699

IMSAI VDP 80/1000 List $5995 5094

TDL Xitan 1 List $769 654

(Also save on CROMENCO, POLYMORPHIC, & SOLIDSTATE MUSIC)

TERMINAL VALUES

Economy Terminal — part new,

part used, available as low as $ 349.95

Brand new 24 x 80 commercialterminal (upper and lower case,numeric key pad, etc., byIntertec — Introductory Price $ 749.95

Add $1.50 per board and/or $10 per system for handling,shipping, and insurance.

SEND FOR FREE 64-PAGE CATALOG.

MiniMicroMart, Inc.

1618 James Street

Syracuse, New York 13203

(315)422-4467

Circle 145 On inquiry Card. April 1978 ©BYTE Publications Inc 167

This is the third and final part of Mike Wiiber's series on the design for theCiE Net. Readers shouid refer to part 2, figures I to 5, for BNF expressionsof the protocois referenced in this last segment. In this article we continuethe figures and listing sequence numbers from the previous part

CIE Net: A Design for a Network

Mike WiJber920 Dennis DrPalo Alto CA 94303

Protocol Levels and Parameter Lines

The formats of interstation transmissionsand end-to-end messages include protocollevel numbers and parameter lines in orderto make the formats identify themselves.The intent is that these identificationschange whenever the format changes suf-ficiently to invalidate a program that wouldhave to understand the format. The protocollevel numbers are just that, but the end-to-end messages also contain parameter linesthat can more easily show fine shades ofmeaning. For example, the parameter linedescribing text compression might namethe compression algorithm being usedand also give some initial settings for itsstate variables.

The rest of this specification says nothingabout particular choices of values to be in-serted for protocol level numbers and param-eter lines, but some (arbitrary) choicesshould be taken. For the sake of definite-ness, we can arbitrarily pick the number oneto be used for the <protocol number> inboth the interstation and end-to-end proto-cols. The parameter lines used for the<compressed tail> and the <file tail> canbe arbitrarily picked (for example, with myinitials, giving "BMW 1") in order to leaveroom for expansion.

Flow Control and Congestion

One of the most embarrassing questionsyou could ask me now would be somethinglike, "How do we convince the poor peoplein Denver that they are interested when allthe traffic from one coast funnels through

them before spreading out to the othercoast?" I don't have any good answers toany such question. The whole problem ishelped somewhat by the voluntary natureof the network: a relay station can stop tak-ing traffic from a CIE when its bufferstorage gets filled up. (Note that that forcesthe CIE to (somehow) decide which of itstraffic is the most urgent.) It's also helpedsomewhat by the fact that transcontinentaltelephone calls get very cheap late at night,and so a single long hop becomes muchcheaper than many short hops.

Flow control is included at the inter-station level, but is absent at the end-to-end level. The reason for the omission issimply that the transmission is so highlybuffered that the source CIE is out of thepicture long before the destination CIE iscontacted. Any CIE or relay station alongthe route can simply refuse to accept moretraffic than it can handle (perhaps returninga negative acknowledgment), but the entireflow control question needs far more thoughtthan I've given it so far.

Legal Aspects

There are a couple of legal aspects thatdeserve mention, even though I am not in aposition to say anything very decisive aboutthem. The first is a big unknown to me:there may be states (or whole regions)where the telephone company has tariffspreventing private individuals from usingpersonal telephones for data transmission.(The same may also be true of whole coun-tries that might want to put up a network

168 April 1978 ©BYTE Publications Inc

of Community Information Exchanges

Part 3: Other Considerations

something iike a CIE Net.) I am unfamiliarwith the laws and regulations coveringprivate telephone usage in all locations, andsuch regulations could be a real impedimentto any sort of grass roots computer tele-communication network.

The other area is one on which I can beslightly more conclusive: regulatory hassles.At least in the US, coming under the regula-tory agencies can consume vast amounts oftime and money. Communication is a fieldof endeavor that is subject to regulation,but that only seems to be a real problemwhen money changes hands. Even whenmoney changes hands, though, the regula-tory agencies seem happy to let you gorelatively unperturbed if you can convincethem that nobody is making a profit.

A Universal Language

A CIE Net would need a universal lan-guage if messages are to be effectivelytransmitted throughout a large, diverse andonly loosely organized community of sta-tions providing transmission and bufferingservices. A universal language is especiallyimperative because of a very importantcharacteristic of the routing algorithm Ipropose: that a message headed for a distantstation need only be forwarded in the cor-rect general direction. For example, supposethat all states bordering Canada, Mexico andthe Pacific Ocean spoke one language, thatall other states spoke a different languageand that the only bilingual stations were inChicago. Then either a message from Denverto Los Angeles would get all the way to Las

Vegas before getting rerouted to Chicago,or else stations in Denver would have tokeep track of the regional languages and thelocations of polyglot stations. Of course,the situation becomes worse if the mixtureof relay stations changes rapidly with timeand with only loose local coordination, asI think it is important to allow.

Since a CIE Net should be widely acces-sible to a major portion of the personalcomputer community, and since a universallanguage hardly precludes the use of morehighly optimized languages, the most im-portant property of a universal language isthat it is most likely to be available to thehighest portion of people in the community.(Don't forget that stations are free to agreeon a more optimal language between them-selves; a universal language only serves thepurpose of assuring that they will be able toagree on some language at all.) Thus, eventhough I propose an asynchronous serialtransmission mode at a certain speed becausealmost all current hobbyist equipment canhandle it, there is no reason why stationscould not (or should not) agree to transmitfaster by a factor of three (or a hundred),or even use 16 parallel synchronous megabitlines, for example.

Before I give the details of the universallanguage, let me point out the light in whichI present the details. All the details alludeto standards that are widely accepted inthe established computer community. De-tails are given here to identify the standardsand to give you a quick summary of theircontents. They are not given to specify astandard; for example, I will make no at-

April 1978©BYTE Publications Inc

169

Circle 132 on inquiry card.

commodore Radio Shack

PET TRS-80

EITHER WAY... We've got software for you!

Put your computer to work at home or on the job with these programsand adaptable subroutines. For 8K PETs or 4K TRS-80s with Level IBASIC, on cassette to save you typing time. See BYTE March 1978 forfull descriptions of the last three programs listed.

PERSONAL FINANCE: INSURE finds your life insurance needsbased on ages of dependents, college plans, Social Security, etc.HOME compares buying a house to renting an apartment,considering inflation, mortgage rates and taxes. SPEND tracks yourmonthly bills, credit card purchases and checking account balance tosee if you're spending too fast. All 3 for $12.95

GRAPHICS PACKAGE: DOODLER by Les Logan quickly drawshorizontal, vertical and diagonal lines and saves the patterns for laterdisplay. PLOTTER by Peter Maggs creates adjustable bar charts andlinear or log scale graphs (80 by 50 points on PET, 128 by 48 on TRS-80) with automatic scaling and labeling of axes—perfect for dataanalysis. LETTER displays messages in large block letters from a fullcharacter set under program control. All for $12.95

INTRODUCTORY SPECIAL: $9 95 till March 31, then $14.95

STIMULATING SIMULATIONS by C W Engei, with book .. $14.956502 ASSEMBLER IN BASIC (for PET only) $24.95

ORDERS: Check, money order or VISA/Master Charge accepted. Weguarantee you functioning programs, readable cassettes and promptdelivery. Our catalog, $1 or free with any cassette, fully documentsthese and other programs and describes our royalty program forsoftware authors. For a FREE flyer, use reader service card, or send aself-addressed stamped envelope for faster service.

^SF Personal Software™

HMB P.O. Box 136-B4, Cambridge, MA 02138VISA/MC telephone orders welcome at (617) 783-0694

Need Hard Copy?

TRY OUR SOFT PRICES$425

Complete standalone 40 column impact dot matrix printer with a 64character ASCII set Includes power supply, casework and interfaceelectronics for connection to a mini'micro processor parallel portSerial interface versions for RS232'current loop applications start at$575 in single quantity

SEND FOR FREE LITERATURE

Box 22101

Salt Lake City, Utah 84122

(801) 364-2411

tempt to give tolerances on critical timings.

Since far more interfaces, terminals andprograms are compatible with the Model 33Teletype than are both incompatible with itand also compatible with any other singleconvention, part of the universal languageincorporates those conventions. That is, theuniversal language I propose includes sendingASCII at 10 cps asynchronously. Since theseprotocols only need the characters used inthe radix-41 representation plus the sixcharacters, comma, colon, space, slash,carriage return and line feed, there is noneed to take a stand on any other part ofASCII, such as the varying representationsof altmode or of the arrows. Since far morepeople have access to the regular privateparty telephone lines (usually dial-up) thanto any other telecommunication media,those phone lines are also included in theuniversal language that participants can al-ways use when no better means is mutuallyagreeable. Also, since most hobbyist mo-dems use the Belt 103A conventions, theyare a part of the universal language. That is,the station from which the phone call wasoriginated transmits binary data as the audiofrequencies 1070 Hz and 1270 Hz for zeroesand ones, respectively; and the stationanswering the phone call transmits on 2025Hz and 2225 Hz, respectively. That, then, isthe universal language.

There is no requirement that the hard-ware be implemented in hardware; the onlyrequirements imposed here define the waythe functional units behave. To fix ideas,though, we will define two functional unitsthat serve as modems. A modem that trans-mits on the frequencies used by the origina-tor of the phone call and receives on theother pair will be called an originate-modemodem; one that transmits on the pair usedby the answering station and receives on theother will be called an answer-mode modem.Note that there is no requirement that anystation be capable of automatically placingor answering a phone call, though eithercapability (especially the latter) may proveattractive and economically feasible tosome stations. Also, note that some popularstandards (such as Altair (S-100) bus orRS-232C) deal only with conventions in-ternal to a station and so are entirely ir-relevant to this set of protocols. Finally,since many extant computers that could behosts to stations in a CIE Net take un-yielding and conflicting stands on whethera line is to be full or half duplex andwhether transmissions are to be handled aline or a character at a time, these protocolscan handle all four cases rather than takingany stand on the issue.

170

April 1978 ©BYTE Publications Inc

Circle 133 on inquiry card.

The Radix-41 Representation

Certainly, the representation of binarydata in a radix-41 coding is one of the moreobscure features of my suggestions. Thereare several motivations, however. The mostimportant motivation is to allow stationsto transmit arbitrary binary data throughrelay stations and intermediate ClEs thatmay not be able to handle binary data,especially an intermediate CIE that isimplemented in string BASIC on a host thatdoes not give it access to machine language.Using radix-41, a station that cannot usebinary can instead fall back to the morebasic properties of arithmetic with smallintegers. The interstation protocol must alsoexhibit a high resistance to transmissionerrors, and it is easier to design a code basedon a prime number (such as 41) than other-wise. Since phone line noise typically comesin bursts rather than being isolated, thecode used here is optimized to detect burstsof errors (treating isolated errors as a specialcase), and it relies on retransmission tocorrect the errors.

I chose the particular prime number 41for a couple of reasons. I contemplated thecharacter sets representable in Baudot andavailable to a number of string BASICsand decided that their common ground in-cluded at least the capital letters, the digitsand not too many other characters. Forexample, it seemed that a radix-47 repre-sentation would be unduly awkward for anumber of implementations. The number 41also has the interesting property that itscube is just over 65,536, so a 16 bit num-ber can be represented by a 3 digit numberin radix-41. Thus, radix-41 can representbinary data with a data rate of 5.33 bitsper character, or 1.5 symbols per 8 bitcharacter. (Elsewhere you will find a textcompression scheme that compensates forthis inefficiency by representing text asbinary data, using an average of 5.24 bitsper character.) The radix-41 representationis oriented to stations that can representnumbers up to 65,535, but it can also behandled pretty well by stations that canonly gracefully handle numbers up to1,681.

The table of radix-41 representations(figure 6) shows how to represent the digitsof a radix-41 number as characters ofordinary text. The radix-41 representationof a 16 bit binary number can be found bydividing the 16 bit number by 41 and divid-ing the quotient by 41 again; the radix41digits are the two remainders and the secondquotient. (Dividing by a constant can beconsiderably faster than general division, asshown by listing 1. Since the digits become

Listing 1: A divide by 41 algorithm specified in symbolic notation for an8080 processor. This algorithm is used in the radix-41 computations used toencode data for the CIE Net as shown in figure 6. This listing representseach instruction as an 8080 operation code followed by symbols for registeroperands, terminated by a semicolon. One line is devoted to each major stepin the algorithm as highlighted in comments which begin with an asterisk (*).

DIV41: *DIVIDE BY 41 IN 8080 MACHINE CODE

*GETS: DE = DIVIDEND♦GIVES: ABC DESTROYED

DE = QUOTIENT

HL = REMAINDER

♦TAKES 354 CYCLES = 177 US I NO WAIT STATES), OCCUPIES 59 BYTES♦ASSUMES DIVIDEND OBEYS 0 =< X = < 65535

*USESTHE FACTS THAT 40 < 0.999*41 < 1024/25 < 41 AND THAT IF YOU FORM A

* TEST QUOTIENT Q2 = <25*X)/1024 (INSTEAD OF THE R EAL QUOTI ENT Q = X/41)

* AND A TEST PSEUDOR EMAINDER RBAR = X - 41*Q2, THEN YOU HAVE

* _2*41 = -82 < -66 < -0.001 *X < RBAR < 41, AND SO Q2-2 =< Q =< Q2

•ALSO USES THE FACT THAT 40*Q2 =< 65535 SO THAT YOU CAN AVOID OVERFLOW

* BY TAKING RBAR « (X - 40*Q2) - Q2

♦NOTE: THIS PROGRAM WAS CODED FOR SPEED, NOT CLARITY, COMPACTNESS OR

* ADAPTABILITY

♦ALSO NOTE: THIS PROGRAM WORKS ON AN INTEL 8080 AND IS SUSPECTED TO

* WORK ON A Z80 OR (WITH A MODIFICATION NOTED BELOW) ON AN NEC 8080♦ALSO NOTE: THIS HYPOTHETICAL ASSEMBLY LANGUAGE IS USED FOR COMPACTNESS

* OF THE LISTING

♦SETUP

SUB A; MOV B,A;

♦SET AHL = 3 ♦ DE

MOV H,D; MOV L,E; DAD D; ADC B; DAD D; ADC B;

♦SET AHL - (8 * AHL) + DE = 25 * DE

DAD H- ADC A; DAD H; ADC A; DAD H; ADC A; DAD D; ADC B;

♦CARRY NOW CLEAR BECAUSE AHL = 25*X < 25*65536 < 8388608 = 2 *

23

♦SET BC = -(AHL / 1024) = -(AHL/4) / 256

(= -(25 * X) / 1024 - -Q2)RAR; MOV B,A; MOV A,H; RAR; MOV C,A;

SUB A ADD BRAR;CMA;MOV B,A; MOV A,C; RAR; CMA; MOV C,A; INX B;♦THAT SUB CLEARS THE CARRY BIT SO YOU DON'T SHIFT GARBAGE INTO THE TOP

♦SET HL - DE - (40 * Q2) = (40 * -Q2) + DE

MOV H,B; MOV L,C; DAD H;DAD H;DAD B;DAD H;DAD H;DAD H; DAD D;

♦SAVE Q2 IN DE

XRA A; SUB C; MOV E,A;

MVI A;0;SBB B; MOV D,A;

♦SET HL = HL + BC = (X - 40*Q2) - Q2 = RBAR

* IF RBAR > = 0, THEN Q2 =< Q, AND SO Q2 = Q AND RBAR IS THE REMAINDER

DAD B;ORA H; RP;

♦THAT ORA TESTS THE SIGN OF HL BECAUSE 0 =< Q2 =< 1680, AND SO A >= 0

♦***FOR AN NEC 8080 TOO, THE ORA SHOULD BE REPLACED BY SUB A; ADD H

♦OTHERWISE Q2 > Q, SO SEE IF Q2-1 = Q

DCX D; LX! B;29;0;DAD B;RC;

♦29 IS HEX FOR 41, AND THE 8080 STORES THE LOW BYTE IN THE LOW ADDRESS

♦THE DAD SETS CARRY IFF IT MAKES HL GO POSITIVE

•FAILING ALL THAT, IT MUST BE THAT Q2-2 = QDCX D;DAD B;RET;

known and are used in opposite orders, theirorder of transmission is arbitrary; one canappeal to the intuitive notion that they betransmitted in the order of their significance,though, and say that the second quotient betransmitted first, then the second remainderand finally the first remainder. In this con-nection, note that the table of radix41representations in figure 6 specifies charac-ters, n'ot their ASCII representations; it isunderstood that a Baudot (or other non-ASCII channel) will use its own repre-sentations of the characters.

There is an issue of how to mosteconomically use 16 bit words to representdata of smaller natural sizes, such as 8 bitbytes or the smaller fields of my compressedtext. Clearly, they should be packed, several

April 1978 ©BYTE Publications Inc

171

Figure 6: Definition of a radix-41 character set for use in CIE Net protocols.This character set as expressed in ASCII is highly error tolerant, and is con-sistent with most more elaborate graphic coding schemes.

to a word, but in which order? People donot universally agree, and convincing argu-ments can be advanced for both sides. Allthe arguments have their merits, but the oneI found most persuasive is an appeal tointuition: we are used to writing the moresignificant digits of a number before the lesssignificant digits, and people generally tendto be confused at the notion of reversingtheir order. Therefore, my schemes allassume that, when several fields are packedinto a 16 bit word, the first fields willoccupy the more significant positions.

The error resistance of radix-41 derivespartly from the fact that, when the charac-ters representing the radix-41 digits aretransmitted in an 8 bit code, they only use1/6 of the representable combinations. Werethat fact not modified by another propertyof the ASCII representation of the radix-41code, more than 83% of the random errorscould be detected by rejecting any trans-mission not entirely composed of charactersin the radix-41 set. Unfortunately, theradix-41 characters are clustered quite closeto one another in ASCII (in terms of theirhamming distances), so radix-41 is actuallysomewhat less resistant to errors than anoptimally chosen ASCII set.

Text Compression

The whole point of this net is to transmitinformation, usually text, and one of itsmost limited resources is channel bandwidth.Now, text has a high degree of regularity,and we are used to capitalizing on theregularity by using such devices as alphabetsand the ASCII character code. ASCII usesseven bits to represent each character, but itstill leaves a large residue of regularity thatcan be used to further compress text. Forexample, if two people agree to confine theirconversations to a particular list of 65,000English words, they can represent each wordas a 16 bit binary number, using an averageof less than three bits to represent (theequivalent of) each character.

I propose a slightly different scheme forcompressing text for transmission through aCIE Net. It is used at the option of theperson sending a message, and so it repre-sents little impediment to applications towhich it is ill-adapted. It represents theentire ASCII character set, but the mostfrequently used characters have quite shortrepresentations. The representations vary inlength from three bits (for E and T) to

0

8

16

24

32

40

0

(

7

F

N

V

)

1

0

8

G

0

w

2

1

9

H

P

X

3

2

A

I

Q

Y

4

3

B

J

R

z

5

4

C

K

S

*

6

5

D

L

T

+

7

6

E

M

U

-

15 bits (for NAK and DC2), with a calcu-lated average of 5.24 bits. Note that, withmore computation or intermediate storage,text can be compressed much further. Forexample, the dictionary of 65,000 Englishwords just mentioned only uses 2.67 bits percharacter. The compression scheme Ipropose seems to be a reasonable compromisebetween the conceivable extremes.

The compression scheme is best describedfrom the point of view of a program thatdecompresses the text. The details are in thetables of compressed representations infigure 7, but the general scheme is as follows.The receiver reads the first three bits anduses their values to retrieve the proper entryof a decoding table. The entry may indicatethat the three bits represent a character, orthey may direct the receiver to use the nextfew bits with one of three additional decod-ing tables. This process is slightly complicatedby the fact that each of the four decodingtables is actually doubled, and the receivermust keep track of whether to use theupper case table or the lower case table.Initially, the receiver will use the upper casetable, and the compressed codes allow fortemporary or permanent case shift and forunconditional reset to a designated case.

For example, the word "fie" is repre-sented (in context) by the 15 bit string110,010,101,000000 (with byte boundariesemphasized by commas). Note that thecoding scheme also allows the encoder todetect and further compress repetitions ofa single character. Thus, a gap of five spacescan be represented by the 15 bit string111,11110,0010,100.

You may have noticed that the compres-sion tables give compressed notations forover half the ASCII codes, an escape to fullASCII, and no expression for any necessarycontrol functions outside the normal ASCIIrepertoire. There's a purpose to that. Theadditional control functions can be providedby using a notion of hidden characters: eachcharacter that has a compressed notation canbe thought of as hiding its ASCII representa-

172 April 1978 ©BYTE Publications Inc

tion, which is then available for other uses.I propose hiding four control functionsunder four letters of the upper case alpha-bet, as follows:

A Change to lower case perma-

nently;B ■- Change to upper case perma-nently;C — Change to another compressionscheme (The next eight bits givethe number of the new compres-sion scheme.);

Z - (Reserved for future expansionof the repertoire of controlfunctions).

Thus, a change to lower case permanentlyis represented by the 15 bit sequence111,11111,1000001.

Encryption Considerations

A CIE Net would differ from most otherinformation processing setups by trying toappear attractive to people for possibly

First Three Bits

(xxx)

First

Three Bits

xxx

UpperCase

LowerCase

000

E

e

001

T

t

010

O

o

011

A

a

100

<Space>

101

See*

110

111

See **<

*

Next Three Bits

• * ■(101 xxx)

Next

Three Bits

xxx

UpperCase

LowerCase

Next ;Three Binxxx

UpperCase

000

I

j

000

<iHf> I

001

N

n

001

C

010

S

s

010

F

011

H

h

011

P

p "I

100

R

r

100

M

m

101

D

d

101

Y

y 1

110

L

I

110

G

111

U

u

W

Next Five Bits*##

Notes:

(111 00 yyy)

(111 01 yyy)

(111 10 yyy)

{111 11 yyy)

<crlf>: Carriage return followed

by line feed.<xcase>: Change to the other

case for the next character

only,<pcase>: Change to the other

case permanently.<Repeat>: Take the next four

bits as a repeat count; repeat

the following character that

many times and three times

more.<ASCII>: Take the next seven

bits as an ASCII character

code {also see text).

yyy

UpperCase

LowerCase

UpperCase

LowerCase

UpperCase

LowerCase

UpperCase

LowerCase

000

V

V

0

8

.

001

B

b

1

9

<

-

010

X

X

2

#

$

>

?

011

Q

q

3

!

&

<£omma>

100

K

k

4

{

<xcase>

101

J

1

5

)

*

<pease >

110

Z

2

6

+

-

<Repeat>

111

<period>

7

"

/

<ASCH>

Figure 7: Definition of a compressed data encoding scheme which is optimized for the frequencies of ietters in typicai Engiishianguage texts, AH codes are either upper or iower case, depending on the iast case setting encountered. The first three bits of anatom of text contain a specification of a space, one of the four most common ietters, or a reference to one of three possibleextensions of the 3 bit word. For atoms with the first three bits containing 101 (marked by *) or 110 (marked by **), one oftwo alternate second level tables of eight possible characters is specified. For atoms which begin with 111 (marked by ***), thesecond part of the atom is a 5 bit field which has numbers, special characters and the lesser used alphabetic characters. The 5 bitextension form also has four special codes which provide for case change, permanent case change, character repeats, and escapeinto ASCII. If the ASCII escape is used, seven additional bits specify the ASCII code. Definition of an explicit upper or lowercase setting can be done by implication (upper case is in effect at the start of a text string), or by an escape into ASCII followedby the ASCII code (see text) which forces an explicit case setting.

April 1978 © BYTE Publications Inc 1 73

sensitive information but still providingalmost no restrictions on accessibility ofthe data containing that information. Forexample, an order for several hundred dol-lars worth of computer manuals might beplaced in a CIE's outgoing message files,relayed through some unpredictable collec-tion of relay stations and intermediate CIEsand finally placed in a supplier's incomingmessage files. If the source or destinationCIE, for example, is so small that it usesvolunteer relay stations and its host doesn'tprovide good file protection (eg: if all CIEsubscribers look like one person to the host),then that message is accessible to manypeople.

Encryption provides a partial answer tothe problem. The basic property of encryp-tion is that it makes data unintelligiblewithout making them inaccessible. That is,any encryption scheme worth its salt willprevent the "bad guys" from

forging or

perusing

your information. Without access restriction,however, an encryption scheme is powerlessto prevent "bad guys" from

deleting,

garbagingor

recording

your data. In the context of a CIE Net, thefirst two kinds of interference can be detectedby means of the reply mechanisms (ifgarbaging makes a message completelyunintelligible) or by including redundancyinformation (eg: a checksum) with theinformation being encrypted.

Also note that encryption and compres-sion interact in a peculiar way: an encryp-tion algorithm endeavors to destroy the veryregularity that allows a compression schemeto work. Since compression schemes areoptimized to give the most compact repre-sentations to information having someappropriate kind of predictability, they mustnecessarily give less compact representationsto less predictable information. If theencryption algorithm is very good, it willproduce a result that is almost completelyunpredictable; applying a compressionscheme to that result will produce a repre-sentation that has expanded to an extentroughly commensurate with the degree itwould normally have compressed it! In thecontext of a CIE Net, the wisdom to bedrawn from that observation is that, when amessage is encrypted and compressed, thecompression should be done first.

Comparison with the PCNET

Given the preceding detailed expositionof the CIE Net design, it could be construc-tive to compare it with the PCNET designand highlight the differences and similarities.The PCNET has the same major goal as theCIE Net: to bring computer telecommunica-tion to the individual. Since BASIC is thelingua franca of personal computers, thePCNET is also designed so that it can(largely) be programmed in BASIC. It alsohas a layered set of protocols, because thatapproach facilitates the formulation, com-prehension, implementation and modifica-tion of the protocol set. Finally, since it isdesigned to be accessible to BASIC, itresembles the CIE Net in having a radix-41representation of the interstation transmis-sion blocks. (In fact, the checksum calcula-tion described here is that of the PCNETbecause it is easier to implement than what Ihad originally specified.) More insight,however, can be gleaned from an examina-tion of the differences between the twodesigns.

The PCNET isn't as strongly oriented tohaving a set of CIEs (or any other servernodes) as is the CIE Net. (This difference isone of emphasis, not one of substance:either design can easily be adapted to theopposite stance.) That is, the normal modeof operation in the PCNET will be for theperson sending a message to place a directphone call to the ultimate destination andsend the message in a single hop. However,the PCNET is not committed to directtransmission: it permits the end-to-endmessage to arrive at its destination longafter it was sent, and it tolerates long delaysin the end-to-end acknowledgment. That is,the normal mode of operation in a PCNETis predicated on the ultimate destination (apersonal computer) being receptive to atransmission at the moment the sourcespontaneously sends it. This solution isdiametrically opposed to the notion of aCIE serving as a buffer: either the senderand receiver must schedule their activitiesappropriately, or the destination must beequipped for unattended operation, includ-ing answering the phone, running the properprograms and storing the message it receives.The price is hardware and software complex-ity at the destination node; the benefit isfreedom from the CIE and its own attendantsoftware complexity and need for explicitcost recovery procedures.

The PCNET may also capitalize on anoptional capability for personal computersto automatically place phone calls, if somesurprisingly thorny problems can be ironed

1 74 April 1978 © BYTE Publications Inc

TRENTON STATE COLLEGE

Trenton, New Jersey

The Third

Trenton Computer Festival

April E2 & 23,197B

Super Outdoor Flea Market

Surplus computer gear, bargains galore, over 5 acresof space ($2/spot, no electricity).

Indoor Commercial Exhibit Area

90 exhibitor booths showing newest products; specialdiscounts; funky games to play.

V*

RTJ3J5 f

TRENTON

STATECOLLEGE

/Ov col / ^y

*<fe

cell

^T^T TRENTON Jl

^5133

rmi 7A

PHILA 11

MEXIT 7

Forums, Talks & Seminars

Meet the leading experts and hear sessions onrobots, computer music, amateur radio, etc.

Hundreds of Door Prizes

* * *Banquet Saturday night

For more information call:

609-771-2487 or 201-277-2063

Admission $4 Students $2

Hours: 10AM-6PM Saturday; 10AM-4PM Sunday

• * •Banquet $9. Avoid disappointment — preregister for the

banquet! Send your check for $9 per person to: TCF-78, Tren-ton State College, Trenton, N.J. 08625.

Circle 11 5 on inquiry card.

Convenient To NY, PA, MD & DEL

Easy to get to; free parking for over 6,000 cars.

Sponsored By:

Amateur Computer Groupof New Jersey

Philadelphia AreaComputer Society

Trenton State CollegeDigital Computer Society

Dept. of Engineering TechnologyTrenton State College

I.E.E.E.Princeton Section

BYTE April 1978

175

Acknowledgments

This series of arti-cles owes much of itsstrength to the thought-ful comments and per-ceptive criticisms ofDave Caufkins, RonCrane, Peter Deutsch,Bernie Eispas, DavidFyistra, Marc Kaufman,Bill Kautz, Robert Maas,Dennis McGhie andJon Postei; it owesall of its weakness tome. . .MW

out. The worst problem is that errant (ormalicious) hardware or software can intoler-ably inconvenience innocent bystanders.(Discussion on this point also unearthed thefact that even malfunctioning, or carelesslydesigned, hardware to automatically answerthe telephone can be intolerably offensive.)Assuming those issues can be resolved, somePCNET nodes could increase their degree ofautomation at a cost in hardware andcomplexity of software.

The PCNET has an optional binary for-mat for interstation transmission blocks inaddition to the radix-41 format mentionedabove. That allows it to utilize the phoneline bandwidth more effectively than ispossible in radix-41, but it can, of course,only be used between nodes capable ofconversing in binary.

The PCNET has two layers of interstationprotocol, where the CIE Net has only one.The second interstation level is used tomultiplex several conversations in each direc-tion between a pair of stations. Even at thepresent level of personal software sophistica-tion, this facility can be used to transfer twofiles concurrently, say, with each file beingtransmitted during dead times in the othertransmission. The CIE Net lacks this facilitybut would probably not be handicapped atfirst by the lack. The PCNET has no analogto the <protocol number>s of the CIE Net.I suspect that lack will cause a certainamount of awkwardness in a maturingPCNET.

The PCNET uses a worldwide addressingscheme (based on latitude and longitude)that makes the CIE Net's zip codes seemparochial by comparison. (About the onlyadvantage of zip codes is that they are morecompact, and thus marginally easier toremember. A CIE Net would probablyvery quickly adopt the PCNET scheme,replacing the optional USA prefix with arequired "latlong" prefix.) The latitudeand longitude have an important advantageover zip codes: a glance will tell you thegeneral direction in which to forward themessage. Thus, the PCNET trades a smallamount of legibility for two importantadvantages.

The PCNET end-to-end message headersall look more like CIE Net <mail head>sthan like CIE Net <message head>s. Thatis, the end-to-end message header is morecompact on the CIE Net but more readableand more nearly self-describing on thePCNET.

In conclusion, then, these are the maindifferences between the CIE Net and thePCNET. In most cases, arguments can beadvanced for each side, and it can be instruc-

tive to consider them and see what advan-tages each gains and what sacrifices it makesto gain them."

BIBLIOGRAPHY

This list cites books, articles and other informa-tive graffiti to which the text alludes, by title orotherwise, or which you might find edifying sinceyou're interested enough in the subject to haveread this far. Two of them are available from theNTIS, the National Technical Information Service,Springfield VA 22161. Others are published byNIC, the ARPA Net Network Information Center,SRI International, Menlo Park CA 94025, or byANSI, the American National Standards Institute,1430 Broadway, New York NY 10018.

1. ANSI: "USA Standard Code for InformationInterchange," USAS X3.4-1968, October 101968.

2. ANSI: "American National Standard for BitSequencing of the American NationalStandard Code for Information Interchangein Serial-by-Bit Data Transmission," ANSIX3.15, August 19 1966.

3. ANSI: "American National Standard Charac-ter Structure and Character Parity Sense forSerial-by-Bit Data Communication in theAmerican National Standard Code forInformation Interchange," ANSI X3.16-1966,August 19 1966.

4. Elwyn R Berlekamp: Algebraic Coding Theory,McGraw-Hill, New York, 1968.

5. Bolt, Beranek and Newman: "Specificationsfor the Interconnection of a Host and anIMP" (BBN 1822), Bolt, Beranek and New-man, Cambridge MA, January 1976 (availablefrom NTIS: order number AD A019160).

6. Digital Equipment Corporation: "Specifica-tion for: DDCMP Digital Data CommunicationMessage Protocol," Digital EquipmentCorporation, Maynard MA, December 1974.

7. Digital Equipment Corporation: ' DECnetDigital Network Architecture Design Specifi-cation for: Data Access Protocol DAP,"Digital Equipment Corporation, Maynard MA,July 1975.

8. Elizabeth Feinler and Jon Postei: "ARPAnetProtocol Handbook" (NIC 7104), StanfordResearch Institute, Menlo Park CA, April1976 (available from NTIS: order numberAD A027964).

9. Leonard Kleinrock, William E Naylor andHolger Opderbeck: "A Study of Line Over-head in the Arpanet" (in Communications ofthe ACM), Association for ComputingMachinery, New York, January 1976.

10. Shu Lin: ^1/7 Introduction to Error-CorrectingCodes, Prentice-HaM Inc, Englewood CliffsNJ, 1970.

11. W Wesley Peterson: Error-Correcting Codes,The MIT Press, Cambridge MA, 1961.

12. Ken Pogran, John Vittal, Dave Crocker andAustin Henderson: "Proposed OfficialStandard for the Format of ARPA NetworkMessages" (NIC 37435, RFC 724), May 121977.

13. Mike Wilber: "A Network of CommunityInformation Exchanges: Issues and Problems"(in the proceedings of The First West CoastComputer Faire, April 1977), Palo Alto CA.

14. Mike Wilber and David Fyistra: "Homebreweryvs the Software Priesthood," BYTE, Peter-borough NH, October 1976.

176 April 1978 © BYTE Publications Inc

2 PLETE SATISFACTION IS OUR GUARANTEE YOUR COMPLETE SATISFACTION IS OUR GUARANTEE YOUR COMPLETE SATISFACTION^ *l^ J§L3^ SEND TODAY FOR CATALOG OF COMPLETE IC AND KIT LISTING O

HUGE DISCOUNTS!

Savings up to 70% on major brand IC parts and computer kits.

28.0028.00

Hs

KITS

|WAMECO S-100 PC Boards

8K RAM8080 CPU12-Slot Mother

Board 3300

|ITHACA AUDIO S 100 PC Boards

8K RAM 28.00

Z-80 CPU 28.00

|50LID STATE MUSIC S-100 Kits &Bare BoardsMB-3 2K/4K EPROM

Uses 1702A EPROMSKit w/oEPROMS 59.95

MB-4 4K STATIC RAM Kit 95.00

Bare Board 25.95

JMB6A8K Kit 129.95

STATIC RAM Bare Board 2595

MB7 16K STATIC RAM _. _ . . , c

Kit 43500 BOOKS

Bare Board 25.95

| MB8 8K/16K EPROMUses 2708sKit Less EPROMs 75.95

HJ^N

*"»

*% *

*%

*c„

°0 i/-s0 . **

Ufa,

c»0 %

Ca

V

Oo

«t

'*

S«6Z

Oo

74L$00 TTL

74L100

74LS02

74L504

74LS08

74L$10

74LS14

74L$20

74LS21

74LS22

74LS30

74LS32

74LS37

74L$38

74LS42

74LS47

74LS48

74LS73

74LS74

74LS75

74LS76

74LS86

74LS90

74LS92

74L$93

74LS109

74LS112

74LS113

74LS114

74LS125

74LS126

74LS132

70

66

82

75

9090

74LS13874LS139

74LS151

74LS153

74L1154 1 00

74LS157 62

74LSI60 82

74LS161

74LS162

74LS163

74LJ164

74L$174

/4LS17b

74LS190

74LS191

74LS192 90

74LS196 80

74LJ197 80

74LS221 1 06

74LS257 71

74LS258 70

74LS266 26

74LS283 72

74LS365 55

741*366

74LS367

74LS368

74LS386

81LS95

81LS96

81L$97

81LS98

The BASIC WorkbookProgramming ProverbsDiscovering BASICCOBOL with StyleAdvanced BASICBasic BASICStandard Dictionary ofComputers & InformationProcessingGame Playing with ComputersGame Playing with BASICIntroduction to BASICHome Computers; 210Questions

and Answers Volume 2: Software

Minicomputers

Microcomputer Dictionary

and GuideMicroprocessorsMicroprocessor BasicsModern Data CommunicationsHome Computers: 210 Questions

and Answers Volume 1: HardwareUnderstanding Integrated Circuits

$5.506.956.856.957.958.95

16.95

16.95

6.95

895

6.9513.95

19.95

10.95

10.95

8.95

7.954.95

BOOKS

Semiconductor Circuit

ElementsDigital ExperimentsDigital Signal AnalysisDigital Troubleshooting110 CMOS Digital IC ProjectsFundamentals and Applications

of Digital Logic Circuits400 Ideas for Design, Volume 2Analysis and Design of

Digital Circuits and

Computer SystemsFinite State FantasiesTelephone Accessories

You Can BuildBasic Electronic Switching

for Telephone SystemsBasic Carrier TelephonyHow to Get the Most Out of

Your Low-Cost Electronic

CalculatorCalculator Users Guide

and Dictionary

KITS

SOLID STATE MUSIC

MB9 STATIC PROM/RAM

Kit Less Memory 72.00

VB1A VIDEO INTERFACE

Kit 129.95

Bare Board 25.95

102 PARRELL I/OAnd Kludge

Kit 49.95

Bare Board 25.95

104 2 + 2 I/O Kit 139 95

SYNTHESIZER SB 1 MUSICKit with

Software 145.00

MT-1 15-Sfot Mother

Board 39.95

XB-1 EXTENDER BOARDBare Board 8.99

SSM 8080 MONITOR VION 2-2708 47.00

ON8-1702A 47.00

6.95

8.95

19.959.955.95

7.9513.75

22.501.25

6.956.85

12.95

74XX

7 40U740174027403740474057406740/740874090

55.5555

40

M

SUPPORT DEVICES

682068508212821482168224822882268238

8.008.003.458.003.753.506.253.857.95

N?

4> &

MEMORY

1702A 3.75

2708 12.50

2716 22.50

21L02 450ns 1.25

21L02 250ns 1.60

1101 .50

2114 8.50

MICROPROCESSOR8080 A 11.50

Z-80 24.95

Z-80A 34.95

6800 . 16.50

>*§2

7483

748 b

7486

7489

7490

749!

749?

7493

7494

749b

7496

74 11M1

74107

7412174122741?37413?7414174145.74 ISO741517415374 15474157741617416374 164741657417074173741 747417574176741 7774180741817419074191741927419374)95742217425]74365743667436774368

5716 W Manchester Ave.

Suite #5

Los Angeles. CA 90045

TELEPHONE ORDERS:Call (213) 641-4200

□ Send your complete catalog,quickly.

□ Please send me thefoltowingiitems I have listed below:

Qty Stock No Price

Postage/Handling

$1.50

Satisfaction 100%Guaranteed

California Residents Add 6%

Sales Tax

Minimum Order $10.00, 5% Discount over $100.00 on IC's only.

State-

_Zip_

NEW1978

!C MASTER

Over 40,000IC's listed.Over 2,000pages.

Updated every90 days.

Retail Value

$55.00

Your Price

$46.00

IS OUR GUARANTEE YOUR COMPLETE SATISFACTION IS OUR GUARANTEE YOUR COMPLETE SATISFACTION IS OUR GUARANTEE

Serendipitous Circles Explored

Figure I: This picture was created using the algorithm described in "Serendi-pitous Circles" (August 1977 BYTE, page 70) by overlapping the results ofusing 24 unique starting points. Reflections are used to obtain a kaleidoscopiceffect

Eduardo KellermanIBM CorporationSystem Products DivisionEndicottNY 13760

1 78 April 1978 © BYTE Publications Inc

In "Serendipitous Circles" by D JAnderson and W F Gal way (August 1977BYTE, page 70) a simple algorithm forgenerating computer art is described. Thealgorithm basically consists of computing aseries of (X, Y) pairs and displaying them ona graphics device. Each (X, Y) pair is com-puted from the preceding one using twoequations, one for X, and one for Y. Allone needs to do is to supply an initial(X, Y) pair.

In this article are shown the results ofexperiments with different equations forgenerating the (X, Y) pairs. A storage scopewas used as the graphics device, thus ■allpoints displayed are stored on the screenuntil a picture is "completed." Very inter-esting diagrams were obtained when theresults of using several (X, Y) startingpairs were overlapped. Further enhancementwas obtained by reflecting the patternsabout the X and Y axes. All the picturesshown in this paper include these reflections.They were generated on a Tektronix 4015storage display driven by an APL program.

Text continued on page 182

Figure 2: Here, the origi-nal equations were slightlymodified to be:

X:=X-(Y/2)

Y:=Y+(XI2.1)

Figure 3: The equationsused were:

X:=X-(Y/3)

Y:=Y+(X/1.5)

April 1978 ©BYTE Publications Inc 179

Figure 4: This Valentine's Day card was the result of using:X:=X- (2 x Y) Y:=Y+(Xp. I)

^

Mgk^*

4$

Figure 5: X:=X- Y Y:= Y+(X/2)

Figure 7: X:=X~ (Y/2) Y:= Y+(X/4)

►2* 4-v^. ^Jf/^ ».--..vJ- £5

h» „*-.-v-« »|*v*l« »^-v.. ^

Figure 6: X:=X- (2 x Y) Y:= Y+(Xf3)

Figure 8: The circles become lines when:X:=X-2x Y Y:=Y+2xX

CONVERT ANY TV

TO A HIGH QUALITY MONITOR

• Hot Chassis or Transformer sets

• 64-80 characters per line

• By-passes tuner & I.F.

• Normal viewing unaffected

• Safe—Easy installation

ACVM Hi-Resolution $24.95 ppd

RFVM Ch2-6 Modulator $9.95 ppd

VAMP INC. Box £9315

Los Angeles, Calif. 90029

Calif. Residents add 6% Sales Tax

fc, IT'S A GREAT BIG COMPUTER WORLD

IJJZ But You Only Need

>fTHE COMPUTER CORNER^

"**" *SOL - A New Dawn Is Here! -W"

+*~ •IMSAI8080 -W-

•*♦" •POLY-88 -+*"

+*- »TDL Z-80 -+•"

"**"" •Memories & I/O Boards -H-

-*- ; -+#-

-H- •Computer Book Service / ^

-»- •Magnetic Tapes & Disks 44

-X- •Pull Line of Magazines ^

_H_ • Brain Games & Puzzles uj

->t- ^Workshops & Club Information m|

~^~ Visit THE COMPUTER CORNER for ^JJ

^1 all vour computer needs. Stop in and IT___ browse — you'll like our personal service.

M THE COMPUTER CORNER M

White Plains Mall - Upper Level

"W- 200 Hamilton Avenue H<-

-f>f- White Plains, New York 10601 H

->+- Tel: (914) WHY -DATA -&-

-"♦*"" Ample Parking "~^-

JJC' 10-6 Daily & Saturday „ "^V

j( / 10-9 Thursday \ ^W

USR-310ORIGINATEACOUSTICCOUPLER

Also Available:

USR-320 Auto Answer ModemUSR-330 Originate/Auto Answer Modem

Interfaces:

• USR-310 - RS232C only

• USR-320 and USR-330 - RS 232C or 20mA(Specify with order. It both interfaces are re-quired, add $10 to unit price.)

All Units Feature:

• 0-300 Baud Data Rate

• Half/Full Duplex

• Fully AssembledAnd Tested

USR-310 operates with any standard telephone USR-320 andUSR-330 interface to phone lines via CBS-1Q01F DAA which can beleased from the phone company tor approximately $5 per month orpuiehased from US Robotics tor $165 00 Prices include shippingand handling in continental U S Illinois residents add S"o sales tax

U.S. ROBOTICS, INC.

BOX 5502/CHICAGO. IL 60680(312)528-9045

$160.00

$185.00

• Stand Alone Unit

• 90 Day Warranty

• Optional AnnualMaintenance Coverage

Circle 117 on inquiry card.

Circle 27 on inquiry card.

Circle 116 on inquiry card.

D.C. METRO AREA

TYSONS CORNER, VIRGINIATHE

COMPUTER SYSTEMSSTORE

MICROCOMPUTERS & PERIPHERALSHOME, SCHOOL & SMALL BUSINESS

FEATURING

Small Business Systems Complete with

Application Software Including

Word Processing

DEALERS FOR

Commodore PetProcessor TechnologyPolymorphicCromemcoSouthwest TechnicalMicro-ComputerBusiness Systems, Inc.

Lear SiegterDiabk)

Texas InstrumentsDEC

North StarAnderson JacobsonBooks & Magazines

1984 Cham Bridge Rd.

McLean. VA

703-821 -8333

Circle 33 on inquiry card.

2 7 2v v

1 01 1A O 1 O

B A

186

QUICK

What is 186...in Hex? ...in Octal?Wall size Conversion Chartgives you the answer fast!* Four colors

*Two orientations—octal or hex

*A11 four bases on each chart

INTRODUCTORY OFFER:

2 charts $8 (Regular $6 each)

Send check or money order to:

ZETA SYSTEMS CANADA

2547 Heather Street

Vancouver, B.C. V5Z 3J2

Charts will be sent first class

in a four (4) ply mailing tube

SURPLUS ELECTRONICS

IBMSELECTRIC^

BASED I/O TERMINAL

(USED) $695.00

• Tape Drives • Cable

• Cassette Drives • Wire

• Power Supplies 12V15A, 12V25A,5V35A Others, • Displays

• Cabinets • XFMRS • HeatSinks • Printers • ComponentsMany other items

Write for free catalogWORLDWIDE ELECT. INC.10 FLAGSTONE DRIVEHUDSON, N.H. 03051Phone orders accepted using VISAor MC. Toll Free 1-800-258-1036In N.H. 603-885-3705

Circle 122 on inquiry card-

Experimentersand Professionals

*TTL Hi-Lo Level DetectionM50K Z - Use with MOS-CMOS"Input overvoltage protection•Easy to hold .6" dia. x 5.2" long•pulses as short as 15n.s. stretched

to about 1/5 second•Assembled and tested - $15.95

postage paid

Send Check or Money Order to:

PHILECTRONIXCO.

Box 831 Dept. X

Los Alamos, N.M. 87544

!! FREE GIFTS !!

FREE Tl 57 with purchase of$1,000 of TECHNICO systems equipment

FREE Tl 58 with purchase of$1,500 of TECHNICO systems equipment

WRITE OR CALL FOR DETAILSTl 57 and 58 also available at LOW, LOW priceswith no other purchase required.TECHNICO 9900 SS 16 BIT COMPUTER

16 bit microP, 32 bit 1/0, hardware mult & divide, buffered bus, 20 ma loop,RS 232C, 8 interrupts, fully socketed. Expands up to B4 KB memoryLanguages: Assembler, BASIC, SUPER BASIC. (COBOL. FORTRAN IV

available soon.) Super Starter Kit $299

Assembled $399

TELETYPE TERMINAL MODEL 43

with TTL only $ 985 lowest prices

with RS 232, only $1195 anywhere.'

Other Teletype machines a/so available. Tell us your interests/needs.Abo: Boards for RS 232, Modem, UART with BAUD RATE generator.To order: Check, money order, major credit cards. $3shipping, NYC residents add 8% tax.

OWENS ASSOCIATES, DEPT. B147 NORWOOD AVENUESTATEN ISLAND, N.Y. 10304Day, evening and weekend calls welcome!(212) 448-6283 (212) 448-6298

Circle 83 on inquiry .card.

SUPPLIES

• FLOPPY DISKS, MINI ORSTANDARD MEM0REX OR 3M

• 3M DATA CARTRIDGESDC300A, DC100A

• 3M DIGITAL CASSETTES

• 3M OR MEMQREX AUDIOCASSETTES, C-60

• 3M DISK CARTRIDGES

WE OFFER:•COMPETITIVE PRICING•IMMEDIATE DELIVERIES

(Any Quantity I* UNCONDITIONAL GUARANTEE

BETA BUSINESS SYSTEMS

8369 VICKERSST., #G

SSAN DIEGO, CA 92(714) 565^505

I

Circle 126 on inquiry card.

Circle 89 On inquiry card.

Circfe 33 on inquiry card.

Figure 9: Want lots ofcircles? Then use:

X:=X-(Y/8)

Y:=Y+(X/8)

Text continued from page 179

In addition, all the pictures have thefollowing in common:

1. A random number (4 to 32) of pat-terns resulting from different starting(X, Y) pairs were overlapped.

2. The starting X and Y values for eachpattern were chosen randomly fromthe range 0 to 65536.

3. The number of points plotted fromeach initial (X, Y) pair was randomlychosen to be between 150 and 1050points (before reflecting about the Xand Y axes)."

Figure 10: X:=X+(Y/2) Y:=Y-(X/2)

182 April 1978©BYTE Publications Inc

Figure 11: An unexpectedresult is obtained with:

X:=X-(Y/8)

Y:=Y-(X/8)

Figure 13: Here an "old"value of X was used whencomputing Y:

Xold:=X

X:=X-(Y/2)

Y:=Y+(Xold/2)

Figure 12: X:=X- (Y/1.1) Y:=Y- (X/2)

April 1978 © BYTE Publications Inc 183

RADIO SHACK ANDCOMMODORE USERS

Low Cost BASIC Software on Com-patible Cassette Tape for your TRS-80 and PET computers.—Games—Small Business—Investment—Scientific and—Educational ProgramsTapes also available for OSI,SwTPC 6800, Processor Techno-logy, and D. G. Systems

SEND FOR FREE CATALOG

Silver State EnterprisesP.O. Box 27111Lakewood, CO 80227

Circle 98 on inqi

Diskettes • Mini-Diskettes• Cassettes • %" Cartridges

Overnight Delivery

Large In Stock Assortment

Send For Price List

Computer Resources Co.

1437 Gordon St.

Allentown, PA. 18102

Phone (215) 439-1717

DEALERS ONLY

MINICOMPUTERSupplies & Accessories

Fast Service-Name Brand Products

Send for NEW Catalog

• Books • Paper

• Cassettes • Ribbons

• Floppies • Tools

• Over 150 Items.Send $1.00 for Catalog -

(refundable on first order)

MiSCO INC.

The Minicomputer Supplies Co.

963 Holmdel Keyport Road

Box 399J, Holmdel, N.J. 07733

Satisfaction Guaranteed

PRINTED CIRCUITBOARDS

(BARS BOARDS ONLY)

29.95 EA.

YOUR CHOICE OF

S-100 BUS

8K WW EXT 4K ROM

OR

6800 BUS

«K WW EXT

We also stock componentsfor a/7 above boards.

Guaranteed, if not completelysatisfied return for refund.We back everything we sell.

SEND 5ASE FOR OUR CATALOG TO:BARNES ELECTRONICS

P.O. BOX 673OAK RIDGE, TN. $7830

PAYMENT URMS CASH WITH ORDERS,

ALL ORDERS FO,B OAK RIDGE, TN

TN, RBS. ADD 4Vi%,ADD $2,00 PER BOARD

FOR POSTAGE AND HANDLING.(WE ACCEPT MASTER CHARGE AND B.A.C.)

PEOPLES'CAPITALISM

ECONOMICS OF THEROBOT REVOLUTION

byJames S. Albus

Faces up to the central socio-economic issues of the next indus-trial revolution.

"Most Professional"

Sen. Mark Hatfield

Available from

ATRA

P. O. Box 456

Minnieapolis, MN 55440

$3.95paperback

Circle 79 on inquiry card.

BUSINESS PROGRAMS FOR SWTPC

Editor - Letter Writtr* $100

Math Package' <1tv.- digit accuracy with treeforma! and Fortran type formatting on read

and write $100

Payroll** $400

Inventory* $400

Utility Package (Hex Loader. MiHbug- for-matted dump with spaces) $ 10

Single Stap Debugging Program' (withmnemonics, register display, and user se-lectable RAM display Requires MPT) $ 29

Powar Supply Modification Kit tor SWTPCComputer (Fill mother board with as muchmemory as you wish without voltage drop) $ 20

SWTPC Otafc Conversion Kit (Connect yourSWTPC disk drives, cabinet, and powersupply to Smoke Signal Controller Board anduse Smoke Signal Operating System and oursoftware Pnce includes Smoke Signal con-troller board aM operating system) $269

208 Megabyte GIMIX Memory tor SWTPC

(Phone tor details)Software Addressable GIMIX 16K Memory

Board for SWTPC (Facilitates time sharing,

multi-tasking, large programming) $985

4K GIMIX Prom Board and Programmer $259

Dealer for SWTPC. Smoke Signal Broadcasting.

Percom. GIMIX. Motorola, Tt. GE. Teletype* DEC.

Centronics. Lear Siegler. Soroc etc

AAA Chicago Computer Center

3007^ W Waveland Ave , Chicago, It 60618(312) 539-5833 (3 PM - 5 PM only)

■Original purctusei has unlimited lifetime upgrade guarantee"Original purchaar has qualified lifetime upgrade guarantee

Circle 31 on Inquiry card;

Circle 10 on inquiry card-

Circle 1 on inquiry card.

rMICRO sale1

DISCOUNTS up to 20%SYSTEMS and PRODUCTS I

IMSAI

■

NORTH STAR

CROMEMCO

■

POLYMORPHIC

DEC

■

RCA

DYNABYTE

■

SEALS

EXTENSYS

■

S. W. TECHNICAL

FAIRCHILD

■

TEXAS INSTRUMENTS

ICOM

■

TECH. DES. LABS.

MICROTERM

■

VECTOR GRAPHIC

NAT'LMPLX.

■

ZILOG

Z80 COMPUTER kit $199.

S-100 system, P/C backplane,Z-80 CPU and power supplies,manuals. I/O & memory options.

COMPUTER SYSTEMS

l

313/779-8700 26401 HarperSt Clair Shores, Ml 48081

I-J

The "EXTERMINATOR"by VAMPAll New Dual Function Board:Serves as an extender card & alsoterminates S-100 bus. Eliminatescrosstalk, overshoots & noisewhich can scramble data. Occupiesonly a single slot. Fully fused.Assembled & Tested.VTE-100 •'Exterminator** .$49,95Extender Card only-with connector ..... $21.95Add $2 Shipping6% Calif. Sales Tax.

VAMP Inc.

Box 29315

Los Angeles, Calif. 90029

TH€

COMPUTGRHARDWARESTORE INC.

Circle 32 on inquiry car

Circfe 117 on inquiry card.

WithALPHA-1 CASSETTE SYSTEM

16 BitsALPHA MICROTECHNICO STARTER SYSTEM

Catalog Available

HMOND. VA804 780 0348

Circle 29 on inquiry card.

Circle 11 on inquiry card.

Beckian Enterprises All Prime Quality — New Parts Only — Satisfaction Guaranteed

EVGE CARV CONNECTORS: GOLV PLATEV.

BODY: Non brittle, solvent resistant, high temperature G. E. Velox. The finest elec-trical properties available. CONTACTS; Bifurcated Phosphor Bronze, Gold over

Nickel,

AITAIR TYPE: Contact Ctrs. .125: Row Spacing, .140

50/100 Dip Solder $4.25 ea. 5 pes. $4.00 ea.

I MSA I TYPE: Contact Ctrs. .125: Row Spacing, .250

50/10050/100

Dip Solder

Wire Wrap (1 Turn)

(3 Turn)

$4,25 ea.$4.25 ea,

5 pes.5 pes.

$4.00 ea.$4.00 ea.

I MSA I Card Guides ' " .25 per pair to IMSAI Prices

Note Also good for CROMEMCO.

OTHER CONNECTORS AVAILABLE

.100" Contact CVu: .140" Row Spacing.

15/30 Solder Eyelet

22/44 Dip Solder

22/44 Wire Wrap (3 Turn}

40/80 Wire Wrap (3 Turn)

Note: Wine. Wnnp Spacing 16 .200" [Row Spacing).156" Contact CtA*: ,140" Row Spacing.

$2.30 ea.

5 pes.

$2.10 ea

$2.75 ea.

5 pes.

$2.40 ea

$2.50 ea.

5 pes.

$2.20 ea

$4.00 ea.

5 pes.

$3.70 ea

18/36 Dip Solder

22/44 Dip Solder

15/30 Wire Wrap (3 Turn)

$2 25ea$2.50 ea.$2.00 ea.

5 pes.5 pes.5 pes.

.156" Contact CthJ>: .100" Row Sjxiclng.

22/44

Wire Wrap (3 Turns)

36/72

Wire Wrap (3 Turns)

15/30

Dip Solder

18/36

Dip Solder

36/72

Dip Solder

43/86

Dip Solder (6800)

$2.80 ea.$4.00 ea.$1.90 ea.$1.95 ea.$4.00 ea.$4.90 ea.

5 pes.5 pes.5 pes,5 pes.5 pes.5 pes.

$2.00 ea.$2.25 ea.$1.80 ea.

$2.50 ea.

$4.00 ea.

$1.65 ea.

$1.70 ea.

$3.65 ea.

$4.75 ea.

WE ARE VOUR CONNECTOR SPECIALISTS.

If YOU VO NOT SEE THE CONNECTOR HERE THAT

YOU NEEV, PLEASE WRITE US. IN MOST CIRCUMSTANCES,

WE CAN SUPPLY IT TO YOU.

15 PIN VB TYPE SUBMJN1ATURE CONNECTORS.

CANNON: Gold Plated. The Best You Can Buy.

DB25P Male Plug $2.60 ea.DB25S Female Socket $3.70 ea.DB 51212-1 Hood. (Grey) $1.00 ea.DB 51226-1A Hood. (Black) $1.10ea.D 20418-2 Hardware Set $0.80 ea.

5 pes.

5 pes.5 pes.

5 pes.5 pes.

$2.25$3.45

$0.95$1.00$0.75

eaeaeaeaea

SAVE'. BUY A COMPLETE SET.

Complete Set includes: 1 pc. DB25P: 1 pc. DB25S:

1 pc. Hood of your choice Grey or Black.

1 Set $6.50 ea. 5 Sets $6.25 ea.

Note: For D 20418-2 Hardware Set, add $0.75 ea.

170S - PRIME

(450 nS)

$14.00 ea.

SOSOA - PRIME

$10.00 ea.

I.C. SOCKETS: VIP SOLVER

Low Profile.14 pin.& 16 pin. $0.16 ea.

HEAT SHRINK TUBING

1/8" Shrinks to 1/16" 1.0. $0.35 per ft.

CABLE TIES

3%" and B% $0.03 ea.

WRITE FOR LARGER QUANTITY VISCOUNTS DEALERS WELCtWE

MINIMUM ORVER: $10.00: Add $1.00 %m6IvLpplng. On.dVth ovqa. $25.00, w& paythe Alilpplng. Colli. Rz&ldzntA add 6%Tax. NO C.O.V. SHIPMENTS.

OndoA F/Lom

Beckian EnterprisesP.O. Box 3089 Simi, Calif. 93063

DIGITAL I/O

ASSEMBLED

$59.95

. PO lines of I/O

. ft parallel ft bit ports. 16 interrupt lines.Configured for 8 or If bit-read or write. ?-50 pin l/O connectors

Board alone

■22.50

,Dual 4K banks,5volt only

.Computable with our buskit WITH 4K $99.95

,Yl<v WITH ft-K.Board alone

$149.95$22.50

BOARDS

PROGRAMMING

. ^urns up to 4-2?]^

. One snot for timing pulse

. Requires our digital T/0

board for bus interface. Plugs into cur mother board. Latched addresses no counters. Can operate remote from mother

board, With 2 ?ero insertion force

sockets

PRICE $49.94

KIM KIM

People keep asking if our boardsare compatable with KIM. Ourboards are compatable with mostmicroprocessors and were especiallydesigned for consultants, designersengineers, 0Er."s and others notwanting "hobby" type boards. Ourboards are professional!Now we even have an interfaceboard that plugs into the KB:expansion connector. It maintainsKill's integrity while giving theuser 13 other 4K memory blockscompatable with our mother board.All lines are fully buffered withpowerful drivers. It has circuitryto write protect 4 separate 4Kblocks of ram.

Inverting and non-inverting sparebuffers are provided for custom-izing as required.All memory slots are user relocatalbe.

HOW EASY CAN IT BE! I

PRICE $24.95(and no need for S-100 "hobby"board))

Send check or money order to:

KATHRYN ATWOOD ENTERPRISESP.O. Box 5203Orange, California 9266?We accept Bank Americard, VISA andrv'astercharge

California residents add 6% tax

For orders less than $25.00 add$1.25 for shipping

2102L1 RAKS

. High speed. Low power. 450ns

Sold in increments of 25 onlyPRICE $1.20 ea.

WITH EPROM (RK) OR PROGRAMINGBOARDS, EXTRA ZERO INSERTIONFORCE SOCKETS

$5.00 ea.

4K RAM BOARDAssembled and Tested $89.95In kit form $79.95

Our ram board is fully buffered.It is low power, static and 5 voltonly. We use 450ns access ramson the board. The board size is4f x 6 inches.

BUY 4 OF OUR RAIVr BOARDS ANDGET OUR MOTHER BOARD ASSEMBLYAT NO EXTRA CHARGE!I

ALL ATWOOD BOARDS HAVE:

..Plated thru holes. .

..5 Volts only. . . .

..Gold over nickle edge connector,

..Standard 44 pin connector. .

,.6Jx4|inch

...Professional not "hobby" . . .

Circle 7 on inquiry card.

BYTE April 1978 185

"">CATCHAPULSEII

^ ^ LOGIC PROBE M

^V ;— • 10 Nwc pulse rMpon«e iV

^^frfl^^ *0pen detecti0l, ^J

^ ^^^^^* BtplaceaWi tip 6 cord

10 Nsec SPEED AT 3.5 to15V LEVELS

ONLY

I Pulse stretching

• Multi-family

$39.95 S

Compatible withRTL, DTL, TTL, CMOS, MOS, and Microprocessorsusing a 3.5 to 15V power supply. Thresholds automati-cally programmed. Automatic resetting memory. Noadjustment required. Visual indication of logic levels,using LEDs to show high, low, bad level or open circuitlogic and pulses. Highly sophisticated, shirt-pocketportable (protective tip cap and removable coil cord).Eliminates need for heavy test equipment.Send $39.95 A definite savings in time and money

(Calif residents add for engineer and technician.

6% Sales tax] t0: "^p* Tp^ Pw ftnd Oealer irtqb.rres welcome

B^Telectronics

Box 19299, San Diego, CA 92119, (714) 447-1770

SOFTWARE

FOR CP/M

ANYONE RUNNING CP/M WITH BASIC-EOR C BASIC CANNOT AFFORD TO PASS UPTHIS FANTASTIC OFFER. ONE LOW PRICEAND FAST DELIVERY FOR A STANDARDDISKETTE LOADED WITH APPLICATIONSPROGRAMS:

• MEDICAL/DENTAL BILLING PRO-GRAM

• LETTER WRITING PROGRAM

• VALUABLE UTILITIES PROGRAMS

• 15 ADVANCED GAMES

• PLUS MUCH MORE

PLEASE INDICATE BASIC-E OR C BASIC.SEND CHECK OR MONEY ORDER FOR$50.00 TO:

#

Computer Systems Associates

J 2*315 W.lminoton Avenue - Newcastle. Pa. 16105

Also write for a quote tor the lowest price onany IMSAI product.

PA residents add 6%

COO

OCO

>

<

COQ

r-O

Orr

Q_

a < z < a <

oo

CMCM

<

00

Ho

D°

<*- CM

a**

o >

cc -Jo en

15

-J D< a

IS

a

o

HZO

52

DC OUJ o

h r

0- H

5 5

o >o <

o ?

U -I

a

CO

UJ

D

ao

-j<

<

CJ

UJUJ

cc

LL

CCDOcco

u_

UJ

CC

Circle 9 on inquiry card.

Circle 76 on inquiry card.

Circle 24 on inquiry card 1

Disc/3

DISC/3 COMPANY

COMPLETE MICROBUSINESS SYSTEMS

SOROC IQ 120 $ 899.95

Assembled

LEARSIEGLER

ADM-3A kit

IMSAI 8080 kit $ 599.95

CENTRONICS Business $1145.00Printer (132 columns)

Disc/3

DISC/3 COMPANY

1840 LINCOLN BLVD.

SANTA MONICA, CALIF. 90404

(213)451-8911

CALIFORNIA

APPLIEDTECHNOLOGY

32K MEMORY CARD-S410S-100 PSEUDO STATIC KIT

2708E-450-NANOSECOND-$14

2708 E PROM 650 NANOSECOND$10.95

80 MAJOR COMPUTER PRODUCTLINES AND AN EXHAUSTIVE LINEOF ELECTRONIC COMPONENTS

COMPUTERS

HARDWARE AND SOFTWARE

CUSTOM HARDWARE AND

SOFTWARE RESEARCH AND

DEVELOPMENT

P. O. Box 1239

TWENTYNINE PALMS, CA 92277

714-367-6996

FREE BASIC PROGRAM ANDCATALOG

'ALEX IS COMING'

SOLID CAREER OPENINGWITH HEATH

You know us for our quality Heathkits - and forour reputation for "doing things right." Our pro-grass Story goes far back, and prospects are veryfavorable for the years ahead.

SOFTWAREDOCUMENTATION WRITER

An effective, proven technical writer n«eded towritB Heathkit computer systems operations man-uals and applications procedures. A B.Sc. CS or e-quivalent is required. Candidates must be familiarwith LSI 11/PDP 11, software and applicationsprogramming, higher level languages, and operatingsystems, principles and techniques.

Salaries are competitive, with excellent benefits ad-ditional. Our ideal location is a pleasant, smaltcommunity on Lake Michigan, 90 minutes fromChicago.

Please send resume in confidence, or phone collectto Ken Smith, (616) 982 3673.

HEATH COMPANY

EEEEEa;

d Benton Harbor,Michigan 49022

An Equal Opportunity Employer M/F

) on inquiry card.

Circle 15 on inquiry card.

Circle 140 on inquiry card.

41

I

to

£

Explore Opportunities For Rapid

Advancement In New England

-CONFIDENTIALLY!

Our clients are state-of-the-artcompanies looking for promotablecreative software engineers, andsystems analysts/programmers.

Growth positions in the 15-40Krange are available.

Applications are in diverse areasincluding Graphic A rts. Text HandlingSystems, Micro-Based Controllers,Manufacturing, and Inventory Con-trol Systems.

We would like1 to tell you moreabout these growth positions. Allinquiries will be held in strictconfidence.

Call us collect 603-888-5500 or sendresume.

Touchstone Associates Inc.

Personnel Consultants104 D.W. Highway, Nashua, N.H. 03060

&

mroo^4MEGABYTE

\V P*C TAPE RECORDER!

V QUAD 5 CHANNEL 1/4" TAPE

TRANSPORT, ONE FURNISHED

o.*^ LOGIC FOR AUTO SELECT, REWIND, EOT,to"3' LOW LEVEL.S LAST CARTRIDGE-POWER

REQ'D 12 V 5AMPS DC-STD RACK PANEL 121/8"HIGH I9"WIDE 20"DEEP, WT85LBS, FREIGHT COL.USED-GOOD COND-LIMITED QTY. DATA BOOK $!0.a*

.025 SQUARE PJN PUSH-ON TERMINALS,

FOR JUMPERS-PATCH-POWER-PLUG REPAIR, ETC,HARD TO FIND! 10/30.50 I00/$4.50

PC LEAD CAPACITORS 20/$I.OO

70 PF NI500 I00V0LT 5% DISC N

120PF 100VOLT 5% DISC 6 PAX

.01 MFD 200VOLT TUBULAR CERAMIC L.005MFD 500V0LT DISC f *_ --

.005MFD 100V0LT DISC $0.00

.0068 MFD IO0VOLT SQ. DIPPED POLY^.01 MFD 50V0LT 5% POLY TUBULAR, LONG LEADS,IO/$I.OO IOO/$7.50

r-j—p BI-P1N BASE T-l 3/4 I2V40MA

^—* *— INCANDESENT I0/$LOO 100/$aQ0

CORE MATRIX STRIPPED FROM COMPUTERS-8 PLANES-NO DRIVERS-NO DATA-

AS IS-NO RETURN. 256+BYTES $19.95, IK BYTES$2795, 4K+ BYTES $39.95. 2 ONLY 1620 ASS'YGOOD COND EACH $125.00

CARD GUIDE a FRAME-I5PR-5 I/2H 5 I/4W 12 I/2L; OR15 SOCKETS ELCO NO. 7008-035-163-002 ON RAILS,YOU STRIP-CHOICE $9.95 EACH. OTHER SURPLUS-SEND $1.00 FOR LIST OR CALL 817-625-2961, MC,BAC.V1ZA ACCEPTED. $10.00 MINIMUM ORDER

J8E ELECTRONICS SALESPO BOX 4504, FT. WORTH,TEX,76106

Electronics Engineer

The Department of Chemistry ofHunter College seeks a person with abackground in Electronics (B.S. inE.E. or equivalent) to maintai7i andrepair a wide range of laboratoryscien tific ins trum e n ta tion, includingminicompu ters, associated peripherals,and radio frequency equipment. Thesuccessful applicant will also be ableto design and build interfaces andother needed electronic equip?nent,and interact collaboratively with re-search personnel. Salary competitive.Interested applicants should send acurriculum vita and at least twoletters of recommendation to Dr.Robert Lichter, Chairman, ChemistryDepartment, Hunter College, 695 ParkAvenue, New York, N.Y* 10021. Anequal opportunity employer.

<J

- ie 141 on mquiry card.

M2 O" i».,;_ii*v i ,?rU

■Circle" 148 on inquiry card,

Circle 45 on inquiry card.

***5S^

4525 T

The Programmable

Scientist

MODEL No. 4525 - 100 STEPS

100 STEP LEARN MODEKEYBOARD PROGRAMMING CAPABILITY

• RPN Logic • Rollable 4-leveI stack • 8-digit plus 2-digit exponentLED display • Scientific notation • Sine, cosine, tangent & inversetrignometrie functions • Common & natural logarithms & antiloga-rithms • Instant automatic calculation of powers and roots • Single-key square root calculations • Single-key PI entry • Separate storagememory • Square, square root and reciprocal calculations • Changesign & register exchange keys • Includes NiCad batteries.

Manufactured by National Semiconductor - 1 Year WarrantyA.C. Charger $4.95 Protective Case $2.95

Shipping and Handling - $3.50 California residents add 6% sales tax

ELECTRONICS WAREHOUSE Inc.

1603 AVIATION BLVD.REDONDO BEACH, CA. 90278

TEL (213) 376-8005

WRITE FOR FREE CATALOG

You are invited to visit our store at the above address

3RD GENERATION

ASCII KEYBOARD KIT

FURTHER IMPROVEMENTS-MORE FEATURES

TTL Logic CircuitsPower: +5V 275mAUpper and Lower CaseFull ASCII Set (AlphaNumeric, Symbols,Control)

7 or 8 Bits Parallel DataOptional Serial OutputSelectable Positive orNegative Strobe, andStrobe Pulse Width'NT Key Roll-OverFully DebouncedCarriage Return KeyRepeat Function KeyShift Lock, 2 Shift Keys4 User Defineable KeysP.C. Board Size:I7-3/16" x 5"

OPTIONS:

• Metal Enclosure (PaintedIBM Blue and White)

$25.00

• 18 Pin Edge Con. $2.00

• I.C. Sockets $4.00

• Serial Output (ShiftRegister) $ 2.00

• Upper Case Lock Switchfor Capital Letters andNumbers $ 2.00

KIT Includes: Keyboard,P.C, Board, all required com-ponents & assembly manual.

NOTE: If you have this 63Key Teletype Keyboard you

can buy the Kit-without itfor only $44.95

GRAND GIVEAWAYyvMf SALE//

/

S FREE \ ELECTRONIC POCKETZ+h/^ CALCULATOR

With Any $10.00 Purchase (WITH COUPON)

Memory Modules We Stock

SSM MB7 200ns 16K 525

Industrial m Systems 8K 229

SPACEBYTE16K Static 599

SSM MB7 450ns 8K 199

Vector Graphics 250ns 8K 269

Common DB SeriesConnector

Computers We Stock

Poly 88

Xitan I

Vector Graphics

Alpha Micro System

735.

769.

619

1495.

IMSAIS0L20Cromenco Z2

Apple II (16K)Compucolor

FULL ASCII UPPER/LOWER CASE

COMPUTER KEYBOARDS

Used Guaranteed Working

Single Supply + 5v @ 800 maSchematics IncludedBasic Keyboard $45.00Add: $5.00 for Upper Case Alpha$10.00 for Numeric Keypad$5.00 Misc. Function Switch$40.00 Metal Case w/bottom699. $45.00 Metal with Walnut Ends

1095. $1.50 Connector

595. $2.00 for 10 Extra Switches

1698.2750.

DB 9P

DB 9S0B15PDB15SDB25PDB25SDC37PDC37SDD50PDD50S

11.10

1.501.502.252 253.252.954.903.906 50

101.001.401.402.002.003.102.754.503.506.00

Surplus TRW Power Supply original cost $100.00 pius

• GONE GOOFY PRICE I ™

TEXAS INST Lo Profile Sockets

Pin

DIP Switches 8

We stock a com-plete line of 7400,74LS, 4000 CMOS

45678910

11 85

1.851.852.002.202.302.40

101.651.651.651.801.902.102.20

1416182022242840

1.3025.27.408050505050

102.502.002.20

3 206.004.00

4 004.004.00

WEST COASTS LARGEST SELECTION OFCOMPUTER RELATED HARDWARE

rM ■■ ■■ ■■ I coupon I ■■ ■■ M ICUT COUPON FOR COUPON ITEMS ■

COMPUTER COMPONENTS, INC.

I

L.

4705 Artesia Blvd., Lawndale, CA 90260 (213) 370-4842

Lawndale, CA Store Open Mondays 10 AM - 7 PM

5848 Sepulveda Blvd., Van Nuys, CA 91411 (213) 786-7411

I

J

Circle 26 on inquiry card.

BYTE April T978 187

What's New?

Inexpensive Impact Printer

PERIPHERALS

This Pussycat Is Fast and Inexpensive

The "Pussycat" Model 650 CRT PagePrinter is capable of printing full 1920character cathode ray tube screens inless than 20 seconds, with internalbuffering so that CRT dialog is inter-rupted for only 2 seconds (at 9600 bps).The thermal printer accepts data at themaximum transmission rate over anRS232 serial line, and prints the screenimage noiselessly at 100 characters persecond sideways on a standard sizesheet of paper, in a 24 line by 80 char-acter format using a full 96 characterASCII set. The 9 by 1 2 dot matrix pro-vides for descenders on lower case char-acters. The "Pussycat" uses thick filmthermal dot arrays fixed in position forits printing heads, and has no movingparts other than its platen. Heating ofthe dots is controlled by an internal6800 microprocessor. When printingblank lines the device's "slew rate"is five feet per second. The Model 650measures 4 by 12 by 12 inches, weighsonly 15 pounds, and is priced at $795in OEM lots of 75. More information isavailable from Perkin-Elmer TerminalsDivision, Rte 10 and Emery Av,Randolph NJ 07801, (201) 366-5550."

Circle 584 on inquiry card.

The Integral Impact printer can printmultiple copies on both fanfold and rollpaper. It uses a 5 by 7 dot matrix toprint the standard 64 character ASCIIset at speeds up to 120 characters persecond with up to 132 characters perline. Standard features include anRS232 and current loop serial interfaceat data rates from 110 to 1200 bps, anda parallel interface is also provided.Double width characters are provided,and switches select character sizes andline lengths from 80 to 132 charactersper line. A reinking mechanism gives theribbon an expected life of up to tenmillion characters. Housed in an attrac-tive tabletop console with operatorcontrols on the front panel, the IntegralImpact is available at a unit price of$745 with discounts for larger quantitiesfrom Integral Data Systems Inc, 5 BridgeSt, Watertown MA 02172, (617)926-1011."

Circle 585 on inquiry card.

CLjbBrcDrn boards

MB-1 MK-8 Computer RAM (not S-100), 4KX8, uses

2102 type RAMs, PCBD only $22.00

MB-3 1702A EROM Board, 4KX8, S-100 switchable

address and wait cycles, kit less PROMS $58 00

MB-4 Basic 4KX8 ram, uses 2102 type rams S-100

buss. PC board $27.00

MB-6A Basic 8KX8 ram uses 2102 type rams, S-100

buss. PCBD - $26.00

MB-7 16KX8, Static RAM uses UP410 Protection,

fully buffered. KIT $400,00

MB-8 2708 EROM board, S-100, 8KX8 or 16KX8 kit

without PROMS $65.00

MB-9 4KX8 RAM/PROM Board uses 2112 RAMS or82S129 PROM kit without RAMs or PROMs $72.0010-2 S-100 8 bit parallel I/O port, % of boards is for

kludging. Kit $46.00 PCBD $27.00

10-4 Two serial I/O ports with full handshaking20/60 ma current loop: Two parallel I/O ports.

Kit $130.00

VB-1B 64 x 16 video board, upper lower case Greek,composite and parallel video with software, S-100.

Kit $125.00 PCBD $27.00

Altair Compatible Mother Board, 11 x 11V2 x Vs". .Board only $40.00. With 15 connectors ....$90.00

Extended Board full size. Board only $ 9.00

With connector $13.00

Cosmetic Reject PCBDs

MB-6A $18.00, IO-2 $20.00

82S23

82S123

82S114

82S115

82S126

82S129

82S130

82S131

82S136

82S141

MMI6330

$1.50 PRIME DEVICES1.50

2.95 8080A $15.00

3.50 8212 3.75

1.95 8214 6.30

1.95 8216 3,95

1.95 8224 5.00

1.95 8228 6.95

3.95 8251 9.95

3.95 8255 9.951.50

wmc

inc.

WAMECO INC.

MEM-1 8KX8 fully buffered, S-100, uses 2102 type

rams. PCBD $26.00

Mother Board 12 slot, terminated, S-100, board

only $27.00

CPU-1 8080A Processor board S-100 with 8 level

vector interrupt PCBD $27.00

RTC-1 Realtime clock board. Two independent in-terrupts. Software programmable. PCBD $27.00

EPM-1 1702A 4K Eprom card PCBD $27.00

10% discount on 10 or more of WAMECO PCBDin any combination.

2102AL-2 Prime 250 NSEC $1.60

2102AL-4 Prime 450 NSEC $1.30

2708 Intel Prime (.5USEC) $15.00

2708 Sig Prime (.65 USEC) $12.95

1702A-6 AMD Prime , $3.50

1702A Intel Not Prime (2US) $2.00

TMS-6011 Prime $6.95

2501B

2502B

2504

2507V

2510A

2517V

2518B

2519B

2521

2522

2525

2527

2532V

2529

2533V

$2.502.502.002.502.502.502.502.502.502.502.502.502.502.752.95

1488N

1489N

4044

8038

5320

5554

5555

5556

5055

5312

MH0025

MH0026

MH0028

$1.501.252.253.905.951.902.502.501.254.001.501.751.90

msm

419 Portofino DriveSan Carlos, California 94070

Please send for IC, X is torand Computer parts list.

MIKOS PARTS ASSORTMENTS

All piece parts for assembly of Wameco and SSMPCBD's. All Factory Marketed Parts. Order PCBDsright.

Mikos #1 Parts for MEM-1 PCBD with prime

2102AL-4 450 nsec rams. Less PCBD $103.00

Mikos #2 Parts for CPU-1 PCBD with prime 8080A

8212's and 8214. Less PCBD $60.00

Mikos #3 Parts for MEM-1 PCBD with prime

2102AL-2 250 nsec rams. Less PCBD $113.00

Mikos #4 Parts for QM-1A with super low loss gold

plated connectors. Less PCBD. $52.00

Mikos #5 Parts for RTC-1. Less PCBD $43.00

Mikos #6 Parts for VB-1B less molex connectorsand PCBD $62.00

82S06

$1.00

8T26

$2.00

82S07

1.00

8T28

2.00

82S50

1.00

8T34

2.50

82S62

1.00

8T37

2.50

82S90

1.00

8T38

2.50

82S91

1.00

8T74

1.50

8T01

2.50

8T80

2.50

8T09

1.25

8T90

2.50

8T10

2.50

8T95

2.30

8T13

2.50

8T96

2.45

8T14

2.50

8T97

1.50

8T20

2.50

8T98

2.00

8T23

3.00

8T110

2.00

8T24

2.50

567

1.50

Check or money order only. If you are not a reg-ular customer and your order is large pleasesend either a cashier's check or a postal mon-ey order, otherwise there will be a delay of twoweeks for the check to clear. All items post paidin the U.S. Calif, residents add 6% tax. Moneyback 30 day guarantee. We cannot accept re-turned IC's that have been soldered to. Pricessubject to change without notice. $10 minimumorder. $1.00 service charge on orders lessthan $10.

188

April 1978 ©BYTE Publications Inc

Circle 71 on inquiry card.

f? Electrolabs 415-321 &m m

POB 6721, Stanford, CA 943Q5

ESAT-100A: REVISED DESIGN ! For Teletype, SC/MP, Jolt,Kim, SBC80, COSMAC. Electrolabs Stand Alone Terminal. Com-pletely assembled, burned in and tested. Very reliable. $ 299.00

NOW 80 Char. X 24 lmeS5X7 dot matrix ASCII, communicating with a, asynchronous 1 1 unit code, TTL compatible, 300 to 9600 Baud. Keyboardols are: BACK SPACE, FORWARD SPACE, LINE FEED, CLEAR PAGE.

Circle 42 on inquiry card.

CLEAR LINE, FULL HALF DUPLEXCURSOR ON OFF, ODD/EVEN NOPARITY. Output is comp video, 75Ohms. Keyboard required is parallelOut 7 unit ASCII with negative truestrobes. Keyboard may tap up to 200MA from the onboard 5V supply. Pow-er required: 1 10 VAC <™ 7 watts. Youdon't even need a computer, S-100 orotherwise. Mav be used with Modemfor tune-share terminal applications.MODFM : Bell 103 Std. Vadic Card withoriginate & answer S7L>.00

DAA KIT (for Above) , 9.95

LOCAL REMOTE,

— tlilllHfl

L.C. Option S39.00

EPROMS

27I6

2708

2708

5204AQ

5203AQ

1 702ARAMS21L0221L02-3F2I0ILIPC

2 11 1 AL-42114-32606-1C3107-BPD41 I DPROMS82S2708

$39,00

450ns 11.95

650 ns 8.95

7.95

3.95

3.95

250ns $ 1.59450ns 1.19

450 ns450ns300 ns500ns60 ns135ns

1.681.9910.951.751.493.99

50ns $22.95

MEMORY BOARDS

Ml Ml 00-8 KB $139

8K static for S100 bus, assembled, burned in andfully tested.

Ml Mil-24KB $679

for PDP11-03 or Heathkit LS1-11.24 KBy of RAMand 2KBy of 2708 ROM. Beautifully done board.Qualified through tests your CPU would flunk. Re-fresh CPU controlled. Includes 2708's.

OTHER NOTABLE ITEMS

280+XT A L $27.95 N3002 Bit Slice CPU $3.95

Z80A+XTAL 33.95 LS703I 8 decade CTR-v

8080A 10.95 display driver up to 500

2513 Char Gen 5.95 MHz w/external BCD

AY5-1013 4.95 CTRs $15.95

MM5320 4.95

\fcrbatim

MiniDiskettes

Removable Magnetic Storage Mediamanufactured byInformation Terminals Corp.

1-9 10-25 26-100

$4.79 $4.65 $4.45ntelligent Systems, Magnavox, Microkit and

MD525-01 (Soft Sector) for

Vector Graphics

MD525-10 (10 Sector) for: Digi-log, North Star, Polymorphic, Tei Inc., WangMD525-16 (16 Sector) for: Altair, Comtek, Micropolis, R2E, Realistic Con-trols and Teleray Research Inc.

Standard Size Diskettes

FD34-1000 (Soft Sector, IBM Std.FD32-10O0 (Hard Sector, Inner dia.)FD65-1000 (Hard Sector, Outer dia.)Cassettes

R-300 Digital Direct

1-9$5.99

1-9$5.25

10-25$5.33

26-100$4.79

10-25 26-100$4.99 $4.35

2 for 8.95

1-150 For digital recording on audio recordersRECERTIFIED DISKETTES fully guaranteed 3740 type 10/27,95

SYSTEM BUY OF THE YEAR! TEALTRONIC 2500

includes 165cps bidirectional matrixprinter, ASCII keyboard, wide bandvideo monitor, FOUR Shuqart 800floppy drives, high speed CPU struc-tured from 2900 bit slice chips toexecute in IBM's ACL business lan-guage and containing 32K of memory.Regulated, protected cool runningsupplies for all of these items.

NOTE: In Europe these fetch$19,000. One of these with aLSI-11 would be incomparable I

All New In Console

including softwareWith 2 Drives

$5775$3900

100% GUARANTEE ! We offer a money-back guarantee on the products thatwe sell. Full refund or replacement for any unsatisfactory products returnedwithin 15 days of purchase. Our magnetic media is certified 100% error-free,shipped fresh from refrigerated storage. FREE CATALOG I Free catalog ofIC's, components, word processing supplies, useful devices and equipment willbe sent in response to each inquiry and order. Call for information on quantityprices and special discounts.

ORDERS NOW BEING TAKEN FOR: THE NOT-SO-DUMB TERMINAL 80 char.XSO In. rolling full ASCII standalone communi-cating Z-80 based terminal. Smarter tban the "Owl," includes EBCD to ASCII translator. Options for 256X256graphics. W0 lines, full editing,etc. Requires KDB and a reasonable monitor such as a slightly modified TV. $489.00

LSI-11* COMPONENTS

Manufactured and tested by Digital Equipment Corporation. Compatible with DEC PDP-11/03 and HeathkitH-ll. Or build your own computer using the housing assembly. All cards 8.5 in. x 5 in.

KD11-HA LSI-11/2 Central Processor Unit Includes power

Includes power fail/auto restart, I/O DMA port, real time

clock input and vector interrupt handling $^ 695

MSV11-DA 4kxl6-bit RAM, on-board refresh $ 350

MSV11-DB 8kxl6-bit RAM, on-board refresh $ 675

MSV11-DC 16kxl6-bit RAM, on-board refresh $1095

H9281-BB 8-card housing assembly and backplane $ 155

imHiiw!!

Other components available,write for catalog. We reservethe right to limit quantities.

MICROPROGRAMMING INC.

12033 Riverwood DriveBurnsville, MN 55337Phone: (612)894-3510

Terms: Prepaid or COD (10%Deposit). Package Discount-Buy a CPU and memory, deduct5% of entire order.

*LSM1 is a trademark of Digital Equipment Corporation

Circle 68 on inquiry card.

BYTE April 1978 189

What's New?

SOFTWARE

6502 Assembly Language Programmers Take Note

mmhs^HHI

BJ^PB^ v^nl tiP ^ll^i^^B

i

|;- i

•

,i

£6 St is

-5

•

/ ■•"■' 4w -i*~ ■■ -^ < t < .■

Micro-ADE is a complete assembler,disassembler and text editor packagefor 6502 based computers, customizedespecially for the KIM-1 with at leasta 4 K memory expansion board. Thetwo pass assembler can be used toassemble small programs directly in

memory, or it can read source code

from one cassette recorder and writeobject code on another for large pro-grams. Program and symbol table listingsmay also be produced. The disassemblertranslates object code back into assem-bler source code, optionally using the

assembler's symbol table to producea fully symbolic listing. The text editorincludes automatic line numbering, aFIX command to edit parts of lines,and the ability to save, load, and copyprograms or data from one cassette toanother.

The entire package, including aset of high speed tape cassette inputoutput routines for the KIM-1, fits in4 K bytes, optionally in read onlymemory. Documentation of the sym-bol table allocation and source textformat makes it possible to use theassembler, disassembler and text editorwith other system software packages,and the entire set of input and outputroutines for the cassettes and terminalare provided in commented sourcecode form with a narrative descriptionto facilitate interfacing the packageto other IO devices and operatingsystems. The comprehensive 56 pageuser manual covers every aspect ofusing the package, even to the pointof adding motor control relays to thecassette recorders.

The Micro-ADE package includingthe user manual, hexadecimal programlisting, and paper tape or KIM-1 cassettecosts $25, while the complete com-mented source listing of the entirepackage is available for an additional$25, from Micro-Ware Ltd, 27 First-brooke Rd, Toronto Ontario CANADAM4E 2L2.«

Circle 628 on inquiry card.

P.O. Box 4430X Santa Clara, CA 95054.For will call only:(408)988-1640

T^^For will call only:(408) 9BB-1G40' ^^^^^k. 2996 Scott Blvd. ^

MICROPROCESSOR

2708 16 50

21F02

1 85

CRYSTALS

6600

24 50

DM8577 2 90

2104A-4

395

1 MHz 4 50

2.0100 MHz

1 95

808GA with data

11 50

8223 2 90

2107B

4 00

2 MHz 4 50

2 097152 MHz 7 75

zeo

29 95

2716 36 00

2111-1

7.00

4 MHi 4 25

2.4576 MHz

7 50

8212

3 50

2112-2

790

5 MHz 4 25

3.2768 MHz

7 50

8214

800

IC SOCKETS

MK4116

34 95

10 MHz 4 25

5 0688 MHz

4 50

8216

3 85

Solder Tin low Profile

25136

875.

18 MHz 3.90

5.185 MHz

4 50

8224

3 50

PIN 1 UP PIN 1UP

21L02-1

1 49

20 MHz 3 90

5 7143 MHz

450

8228

6 25

8 15 24 36

MM5262

40

32 MHz 3 90

6 5536 MHz

450

8251

11 50

14 18 28 43

MM5320

595

32768 Hz 4 00

14 31618 MHz 4 25

8255

10 75

16 20 36 56

MM5330

5.94

1 8432 MHz 4 50

18 432 MHz

4 50

CDP1802CD

19 95

18 27 40 51

P0411D-3

400

3 5795 MHz 1 20

22 1184 MHz 4

CDP18020

25 00

22 35

PD411D-4

500

CDP1B61

12 95

3 level wire wrap gold)A pin 35 t6 pin 39

P5101

1395

COMPUTER I0AR0 XII

6820

12 00

4200A

15.95

8K RAM Board Kit

1134 95

6850

1500

82S2S

2.90

4K EPROM Kit

11495

6502

24 50

91L02A

250

I 0 Board Kit

44 50

HD0165-5

6 95

Ertender Board w/

:onnector

12 50

CONNECTORS

MM57100

9 50

Video Interface board kit

125 00

PROM

44 pin edge 2 00

GIAY38500-1

13 95

16K EPROM board HI wo PROMS 74 50

1702A

4.95

100 pin edge 4 50

MCM6571A

15 00

16K Static RAM board kit

39500

N82S23

2.95

100 pin edge WW 5 25

9368

300

North Star Floppy Disk Kit

(665 00

N82S123

3 50

Additional Drive Kt

415 00

N82S126

3 75

N82S129

3 75

M0S MEMORY RAM

INTERFACE

Paratronict 100A Logic

N82S13T

3 75

2101-1 4 50

NBT26

2 00

Analyzer Kit

,199.00

NS2S136

8 75

2102-1 1 28

NBT28

2 75

Model 10 Trigger Expander Kit

1299 00

N82S137

8 75

2102AL-4 1 60

N8T97

1 35

Model 150 Bus Grabber Kit

1369 00

Cosmac Super 'ELF' Kit $106.95

RCA CMOS expandable microcomputer with HEXkeypad input and video output tor graphics In-cludes PC board and all parts with full socketsand power supply.

High address display option $8.95

Low address display option $9.95

Nicad Memory Saver Kit $4.95

4K 'ELF' Expansion Board Kit

with Cassette Interlace $79.95. On board op-tions available: 1K super ROM monitor $19.95.

Parallel I/O port: $7.95. RS232 Interface $3.50.TTY 20mA Interface $1.95. S-100 MemoryInterface $5.30.

Tiny Basic for ANY 1802 System

Kansas City Standard Cassette $10.00. On ROMMonitor $38.00. Super ELF' owners take 30%off.

Video Modulator Kit $9.95

Convert your TV set into a high quality monitorwithout affecting normal usage. Complete kitwith full instructions.

RCA CosmacVIP Kit $275.00

Video computer with games and graphics

78 IC Update Master Manual

1978 IC Update Master Manual $30.00

Complete IC data selector 2175 pg Master ref-erence guide. Over 42,000 cross references,Free update service through 1978. Domesticpostage $3.50. Foreign $6.00. Final 1977Master closeout $15.00

Auto Clock Kit $15.95

DC clock with 4-.50" displays. Uses NationalMA 1012 module with alarm option, includeslight dimmer, crystal timebase PC boards.Fully regulated, comp instructs. Add $3.95for beautiful dark gray case. Best value any-where.

Sinclair 3V? Digit Multimeter

Baft oper 1mV and 1NA resolution. Resis-tance to 20 meg. 1% accuracy. Small, portable,completely assem. in case. 1 yr guarantee.Best value ever! $59.95

Calif residents add 6% tax. BankAmencard and Master Charge accepted ShipN 1978 QUEST CATALOG. Include 24$ stamp

190

April 1978 © BYTE Publications Inc

Circle 92 on inquiry card.

CaUFornia IwduSTRiAl

Post Office Box 3097 B • Torrance, California 90503

Point Df SaleC.nrnPUTER

S|-7S?„°

Manufactured by TRW Data Systems for the fast food industry. Designed for error-free

data entry. The operator simply blackens the appropriate box on a mark sense card

and inserts it into the form reader. The CPU searches internal programable drum

memory for unit price and extends it by quantity, displaying the customer's grand

total on the LED module.

Memory system is capable of retaining over 40 register items. Accumulated data may

be pulled by a master computer.

This point of sale computer makes a super mark sense data terminal. The TRW 1336 is

shipped complete with cables and self-contained + 5 & * 12v. power supply.

Brand new in factory cartons. Original cost $7,000. Weight 100 lbs., shipped freight

collect. Operating instructions

CONNECTORS

p=> 35 L RS-2:

DB25P

I J male plug &

jULULUUUAUA.

-232

25P

plug & hood

*3?5

—\ DB25S female

EdgeConnectors

100 PIN

IMSAI/ALTAIR

S-100 • GOLD PLATED • .125" CENTERS

Altair .140 row, soldertail..... $5.96 3/S16.50

Imsai .250 row. soldertail $4.98 3/$13.00

3 Level Wire Wrap .250 row... $4.98 3/$13.00

SPECIALSWA/V same as above without ears$3.50 3/$ 1072 (dual 36) W/W .156" centers... $2.50 3/$6

Electronic Entertainment Center

Tennis-HandballHockey-Smash

Color *24.88

Acilon-packed color entertainment forthe whole family. Adjustable skill levelcontrols allow players of all ages to com-pete in tennis, hockey and handball.This four game entert3inmem centerturns your television into a video play-ground.

On screen scoring, live action sound andtrue component color makes th'is video

center an excellent buy at only $24.88.

Complete with antenna box and AC adapter.

HEXADECIMAL KEYBOARD

Maxi-Switch hexadecimal keyboards are designed for *«3^+?

microcomputer systems that require 4-btt outputin standard hex code.Each assembly copsists of 16 hermeti-cally sealed reed switches and TTL "on<shot" debounce circuitryReliable low friction acetal resinplungers are credited for the smoothoperation and long life of this premiumkeyboard.

ie + 5 volt supply.

TEIHYPE MODEL 43

New from Teletype, the Model43 Is capable of printing 132 ASCIIcharacters per line. Send and receivedata at 10 or 30 char, per second. Key-board generates all 126 ASCII code combina-tions. RS 232 interface, same as the popularModel 33. Data sheet sent upon request. Manufac-turer suggested price J1377.00.

IMMEDIATE DELIVERY *1219

TTL model with NOVATION brandAcoustic Modem. $1419

rED|

REGULATED

POWER SUPPLY

'24.88

.; :i ;w, v UNIVACKEYBOARD

Delivers 5 volts at 8 Amperesalong with three other regu-lated outputs.

This used supply is sold "asis," but we still feel that thisis the best buy you'll ever seein a regulated power supply.75 lbs.. Schematics included.

■5 *49.so

Shipped Freight Collect \

SI

Scotch

Certified Digital

CASSETTES

Diskettes *5.50

Won't drop a BIT!

Please specify

IBM 3740 seriesor 32 sector.alsoMINIDISKS

CALIFORNIA

INDUSTRIAL

is an

Authorized

Dealer of

Scotch Brand

Data Products

jo

VST

2U02

LOW POWER

45O iuS

lirUMJl

7400

13

7442

.59

7401

.19

7443

.79

7402

.19

7445

89

7403

.19

7446

99

7403

.19

7447

99

7404

.19

7448

.99

7405

.19

7450

25

7406

.19

7451

25

7407

25

7453

25

7408

.25

7454

.25

7409

.25

7460

25

7410

.19

7470

25

7411

25

7472

39

7412

35

7473

39

7413

49

7474

35

7414

79

7475

49

7416

39

7476

39

7417

.39

7479

3.99

7420

19

7480

.79

7422

49

7482

99

7423

39

7483

99

7425

39

7485

99

7426

.39

7486

49

7427

39

7486

340

7428

49

7489

279

7429

39

7490

49

7430

25

7491

.99

7433

39

7492

49

7437

.39

7493

49

7438

39

7494

.79

7439

.39

7495

,79

7440

39

7496749774100741077410974110741167-11207412174J22

74126 .!74128

74132 !

74136 .1

74141 .!

74145 j

74147 t<

74148 1.<

74150 1 '

74151 4

74153 I

74154 4

74155 .<

74156 1.;

74157 3

74159 2.i

74160 1 "

74161 4

74162 |J

74163 J

74166 1.'

74167 4474170 iA

74173 W

74174 f

74175 4

74176 <

74177 I

74192 |

74193 <CMOS

4001 ;

40024006400740084009401040114012401340144015401640174018401940204021402240234024402540274028402940304032

4033 199

4035 1.69

4040 199

4041 149

4042 1.49

4043 149

4044 1.49

4046 2.49

4047 2.49

4049 79

4050 .79

4051 1.99

CPU's

8080A 14.95

6800 24.95

Z80 3995

1702*

82s23

82s123

2102

2102-1 1.03

21L02 1.19

250nS 1.49

CLOCK'S

531453165375

S-100 MOTHER

The Quiet Buss from California Industrial isquality engineered. No short cuts have been takento produce this mother board. Active terminationcircuitry prevents noise and crosstalk. Manufac-tured from extra heavy FR-4 epoxy glass. Features2 ounce double thickness copper traces.

SLOT ZY,/j

mflnUflL GRflPHiTEDiSPLflV GEilERflTDR

Modern technology has pioneered 'he development olunique character printer Our Manual Graphite Dtspia* IGenerator has the capability ol producing the lull upper and Ilower case ASCII set Sell contained cursor assembly allows Ithe operator to eliminate erroneously entered informal ion rEach unit is manulactured lo strict tolerances as prescribed |by standards set forth by Calilorma industrial One free wevery order

5&I2VOU

REGULATORS

*lWe,. -ST^M

This joystick feature four I00K potentio-meters, mat vary resistance proportional tothe angle ot the stick Perfect forgames, quad stereo and radio controlledaircraft.

Negative

Positive

TO-3

LM320KO LM340KO

TO 220

LM320TO LM340TO

FROM ATARI

COLOR TELEVISIONR.E MODULATOR

M?41

.09

11

301H

301CN

302H 1

304H 1

305r1

307H

307CN

308H

30BCN

309H 1

309K

310H 1

310CN 1

311H

31 IN

312H 1

318H 1

318CN 1

319CN 1

320K-5 ^

320K-12 >

^119

350N351CN37QH370N373N377NMOM381H382NNE555vNE556 1NE565H 1NE565N 1.NE566N 1703CN709M709N710N711H711N723H723N

725H 3

733H 1

733N

739N 1.

741N747N748H748N

1414N 1.1458UART

$4.98

$.69

Conductor Ft.

[RIBBON WIRE]

SPECTRA-STRIP

factory prime

2114/4045 IK by 4 STATIC MEMORY

450nS Ul?5 650nS. *9?5

The Atari R.F. Modulatorallows computer data to bedisplayed directly upon yourexisting television system.This unit converts the sig-nal from the Apple II andother video sources intotelevision frequencies.Operates from single 5volt supply. Completewith metal case, matingR.F. connector and 15feet of coax cable. Schematicsand instructions included.

PowerAdapter

6vdc,140mAS1.397vdc,1.4 A. 5.509vdc, 15mA, 1.1910vAc,300mA12 vdc, 600mA 2.'

PEAKERS

$ 69 J300

Im MiniaturePerfect for TV games.alarmsystems,speech synthesizeror intercom. 8 ohms5"HiFldelity *298

S-100 PROTOTYPE BOARD I

Of 100-Moxlmum design ver- t4AQQMtlllty olong with standard A5?.*0

address decoding and buf-fering for S100 systems.Room tor 32 uncommitted 16pin IC s, 5 bus buffer & de-coding chips, i WP addressselect switch, a 5 voll regu-lator and more.WWIOO-WIre wrap Dreadboard, similar lo the GP100.Allows wire wrap of all sizesol sockets in any sires otsockets in any combinationAn extra regulator positionfor multiple voltage applica-tions

TRIMMER

POTENTIOMETERS

2K 5K 10K50K

5fo r*.98

50

20

100

16' 14' 12<

"#

Transistors

ea. 10 50 100

2N2222A 20 .18 .16 .152N3055 .69.65.55.55.79 .75 .69.651.59 149 1.39129.15 .11 .09.07.15 .11.09.07

odes

10 25 100IN4002 100v. .OS 06.051N4005 600v..10.08.071N4148 signal .07 05.04jumbo red ea. 10 25 100

LED's Hs.i3.ii.09

MJ 3055

2N37722N39042N3906

Di

U9

^98

Output:12v.ct. 175mA.TRANSFORMER

Binding Posts5-WAY

3tor*1.19

*£ 100*35 .29

RELAYS

SPOT MINIATURE

m<| ,*° ** 100*l«ea. $115 104 .89

Coil 12 Volt dc.7 Amp ContactsP. C. Board Mount

mbwheelswitch

en position

BCD

$139ea.

10 50

sTWTsT

CAPACITORS

ELECTRO LY TICS

ML 10 50

Miniature /Switches A

w

80,000/10*. 395 349 2.954500 50v.S149 135 U9

1000 15v 555 49 .45

aKiil

your choice

*.VO s.88 .81.73.66SPOT Miniature Toggles

7101 C&K ON NONE ON7107 jbt ON-OFF(mnt.ON) I710S CK ON (moment. ON)

Rocker JBT DPDT

Rotary 3P-4Pos.

Rotary 3P-6-Pos.

Push B (NO) S.39ea 3 SI

.1 disc 512 .09 .07.01 disc .06 .05 .04 $J7S

DIP Switch

DISCOUNT ' \

UJire Wrap Center

Heavydutf groundedpower cord and matingchassis connectors.

SOLDERLESSTERMINAI

INSULATED20 for,

$.98

Spec if y:2 248; 16-14^100 500 Ik4.50 26 35.

IC SOCKETS

pin

wire wrapea. 25 50

low profileta. 25 50

8

17< 16 15

14

37 36 35

18 17 16

16

38 37 36

19 18 17

24

99 93 85

36 35 34

40

169 155 139

63 60 58

$23.95

50ft.

'.98

KYNARSltt

500 1.000 11,00059. SIS. 5105.

What's New?

SOFTWARE

FUTUREDATA DOS ASSEMBLER

PACE

a. .3

0096 2100000099 22000*009C 21F9FF009F 22020400A2

00A2 2A0 00400A5 110404O0A8 29O0A9 1900AA ES0OAB El00AC C0E2D©08AF 92«0B0 2A90046983 2300B4 220004

* FOR I»l TO 7% READ M<I>J

LXI H»0

SHLD VI

LXI Hf-7

SHLD FT1LOA FGU x

LHLD MI

LXI DrW

DAD H

DAD D

PUSH H

POP H

CALL READ

DC 2

LHLD VI

INX H

SHLD MI

XCHG

LHLD FT1

09ED 21OAO0#9Ft 221294

00F3 21F23CG0F6 114F4800F9 1900FA 221601

O0FD 21FFFF010 0 22180401.03 2101000106 221A030109 212600010C COO00801OF 11787C

SHLD VOL015602+16463

LXI Hr15602

LXI 0*16463

DAD O

SHLD VCEX«-i: EY=lt D=RNO(38>+31864

LXI H#-l

SHLD VEX

LXI H,l

SHLD VEY

LXI Hr38

CALL f?AND

LXI 0*31864

A "Universal" BASIC Compiler

Futuredata Computer Corporationhas announced a Universal BASIC Com-piler; which can be used to generate codefor the 8080, 8085, 6800 and Z-80processors.

The product includes a high leveldebugger that allows program debuggingwithout dealing directly with assemblylanguage.

Programs written in BASIC *can becompiled for any of the processors. Thecompiler eliminates the need to rewriteprograms when switching from one pro-cessor to another. All standard BASICstatements are included plus stringvariables, array variables, bit functions,PEEK, POKE, INP and OUT functions.The user can intermix assembly languageinstructions directly in the BASIC pro-gram. The debugger allows the user toset and clear breakpoints with BASICstatement numbers and to displayvariables in memory using the BASICvariable name.

Futuredata BASIC has the option ofoutputting an assembly language sourcecode of the compiled program to aneditor file. Each BASIC statementbecomes a comment in the assemblylisting. The compiled assembly instruc-tions follow the BASIC statement. Thisallows the user to optimize sections ofthe program by directly editing theassembly language after compilation.

The compilers run in systems with atleast 32 K .bytes of programmablememory and *are available for any ofFuturedata's disk-based Microsystems:the Microsystem/20 with dual 5 inchminifloppy disks, the Microsystem/30with dual 8 inch floppy disks, or theMicrosystem/32 with dual 8 inch doublesided, double density floppy disk. EachMicrosystem comes complete with an8080, 8085, 6800 or Z-80 processor, a960 character video display, a 53 keyASCII keyboard, memory peripherals,software and manuals.

The price of the Universal BASICCompilers is $300 each. Contact Future-data Computer Corporation, 11205 SLa Cienega Blvd, Los Angeles CA 90045,(213)641-7700."

Circle 654 on inquiry card.

KIM-1 Software In ROM from Vienna

This KiM-1 accessory of Europeanorigin features a resident assembler andtext editor in read only memory. Theassembler is single pass and has 22different error messages, and fits in4 K bytes; the line oriented editorpermits user defined commands andoccupies 2 K bytes of read only memory(ROM). For input and output the KIM-1cassette or Teletype interface is used.The programs in ROM are delivered ona European card which plugs into aKIM-1 expansion bus with room for fourcards. The unit is available from ErnstSteiner, Geylinggasse 16, 1130 ViennaAUSTRIA."

Circle 653 on inquiry card.

Text Editor Offers Conditionalsand Macros

The Z-TEL text editor has, in addi-tion to the usual text editing features,the ability to move blocks of textaround in an edit buffer and the abilityto define macros, test conditions andtransfer control from one part of acommand string to another, with nestediteration and backward search capa-bilities for added convenience. Theeditor is a relocatable, reentrant pro-gram running in 7 K bytes of memoryand is priced at $50 on paper tape fromTechnical Design Labs, Research ParkBldg H, 1101 State Rd, Princeton NJ08540,(609) 921-0321."

Circle 652 on inquiry card.

192 April 1978 © BYTE Publications Inc

•At*

&

••••••••••

••••••••••

•••••

•••••

••••••

••••••

••••••

••••••

••••••

•••••<

••••••

••••••

••••••

••••••

••••••

•••••*

••••••

• ••••

• ••••

• •••*•••••

•••••

#••♦••••••••

••••••

••••••

••••••

••••••

••••••

••••••

••••••

••••••

••••••

••••••

••••••

••••••

:••••••••••

••••••

••••••

••••••

••••••

••••••

••••••

:••••■

• »•*«•••••••

••••••

{•••*••••••

••••••

•••••••■•>•

••••••

•••••

•••••

• ••«•-••••••

••••••

•••••

••••••

••••••

•••••

•••••

••••••

•••••••••••♦••••••••••••••••••••••••••••••••••••••••••••••••••••J

KIT FEATURES:

16K E-PROM CARD

IMAGINE HAVING 16K OF SOFTWARE ON LINE AT ALL TIME!S-100 llmsai/Altair) Buss Compatible!

1. Double sided PC board with soldermask and silk screen and gold platedcontact fingers.

2. Selectable wait states.

3. All address lines & data lines buf-fered!

4. All sockets included.

5. On card regulators.

KIT INCLUDES ALL PARTS ANDSOCKETS (except 2708*$). Add $25. forassembled and tested.

$69.95 kit

SPECIAL OFFER:

Our 2708's (450NS) are $12.95when purchased with above kit.

10k

Swm

8K LOW POWER RAM KIT $149.00

S-100 (Imsai/Altair) Buss Compatible!

KIT FEATURES:

,,

1. Doubled sided PC Board with soldermask and silk screen layout. Gold

Slated contact fingers..11 sockets included.

3. Fully buffered on all address anddata lines.

4. Phantom is jumper selectable topin 67.

5. FOUR 7805 regulators are providedon card.

iiiiiiiiiMiiil!!!i«iiiiiiiiii»rt!i

USES 2U.02 RAM'S!

Fully Assembled & Burned In

$179.00

Blank PC Board w/ Documentation

$29.95

Low Profile Socket Set 13.50

Support Id's (TTL & Regulators)

$9.75

Bypass CAP's (Disc & Tantalums)

$4.50

MOTOROLA QUAD OP - AMP

MC 3401. PIN FOR PIN SUB.

FOR POPULAR LM 3900.

3 FOR $1

RECTIFIER SPECIAL

1.5 AMP 100PIV

EPOXY CASE AXIAL LEADS

15 FOR $1

MOTOROLA 7805R VOLTAGE REGULATOR

Same as standard 7805 except 750 MA output.TO-220. 5VDC output.

44c each or 10 for $3.95

FULL WAVE BRIDGE

4 AMP 200 PIV69c EA. 10 FOR $5.75

NOT ASSOCIATED WITH DIGITALRESEARCH OF CALIFORNIA, THESUPPLIERS OF CPM SOFTWARE.

450 NS! 2708 EPROMS 450NS!

Now full speed! Prime new units from a major U.S. Mfg. 450 N.S.Access time. 1Kx8. Equiv. to 4-1702 A's in one package.Special Offer: $12.95 each when$15.75 ea. purchased with our 16K EPROM kit!

Z-80 PROGRAMMING MANUAL

By Mostek, The major Z-80 second source. The most detailedexplanation ever on the working of the Z-80 CPU CHIPS. Atleast one full page on each of the 158 Z-80 instructions. A MUSTreference manual for any user of the Z-80. 300 pages. Just off thepress! A D.R.C. exclusive! $12.95

POWER RECTIFIER #2 Motorola

Stud Mount. 1IM1187.

35 AMPS. 300 PIV.Military Quality! $1.19 ea. or 4/$3.50

4K STATIC RAM'S

2114. The new industrystandard. Arranged as 1Kx4. Equivalent to 4-21L02's in 1 package! 18pin DIP. 2 chiDs give 1Kx8.2/$24. 8/$85.

741 COP AMPSMini Dip. Prime newunits. Has computerMfg's house number.12/$2. 100/$15.

Jumbo Red LedsNew by G.E. LikeMV5024. Number

SSL-22.6/$1. 25/$3.75

OPCOA LED READOUT

SLA-1. Common Anode..33 inch character size.The original high efficiencyLED display. 75c ea.

or 4 for $2.50

Disc Capacitors

.1 MFD 16V. PC.

leads. Most popular

value. By Sprague.

20/$1.00

12VDC Relay byCDE. SPOT. Coil

is 280 ohm. SmallSize. $1 29

CMOS SPECIAL!

CD 4001 -5for$1.CD 4011 -5for$1.CD 4013-3 for $1.

CD4040 -Sl.eachCD4042-2for$1.CD 4049 -3for$1.

3 AMP RECTIFIER

1N4721. Axial Lead. 200 PIVHEAVY DUTY! _House numbered

MetalCase

4 forffY nn

* $1.00

EXPERIMENTER'S CRYSTAL

262.144KHZ. This frequency is2 to the 18th power. Easilydivided down to any power of 2,and even to 1 HZ. New by CTS-Knight. A $5. value!$1.25 each

HEAVY DUTY!

Full Wave Bridge

25AMP 50PIV

$1.25

GE (Mi-Cad Battery Pack

3 Cell pack, gives 4 voltsat 900MAH. Brand new,factory fresh. Each cell is2/3 "C" size. $4.50 /pack.Buy 3 packs (12 volts)for $10.95. Limited stock!

Tantalum Capacitors

1 MFD. .35V. ByKemet. Axial Lead.Best Value! 10/$1.

GE 10 AMP Triac

SC146D. House no.To-220 case. Rated

10amps400PIV.75cea. 3/$2.

Digital Research Corporation

< (OF TEXAS) "

P. O. BOX 401247 • GARLAND, TEXAS 75040 • (214) 271-2461

2N3904-House No.TO-92. ISIPN.

VCEO-45.

HFE'100to300

10 for $1.00

LS SERIES TTL

74LS00 — 33c 74LS74 — 49c

74LS02 — 35c 74LS90 — 69c

74LS04 — 35c 74LS138—89c

74LS08 —35c 74LS154—1.49

74LS10— 33c 74LS175—1.10

74LS20 — 33c 74LS367—75c

74LS73 — 49c 74LS368—85c

TERMS: Orders under $15, add 75c. No COD's. Weaccept VISA, MasterCharge and American ExpressCards. Money Back Guarantee on all items! TexasResidents add 5% Sales Tax. WE PAY POSTAGE!

•••••

••••••

••••••

••••••

• ••••

••••••

■•••••

••••••

••••••

••••••

••••••

••••••

.♦••#

••••••

••••••

••••••

••••••

••••••

••••••

••••••

••••

••••••

••••••

•♦••••

••••••

••••••

••••••

••••••

•••••

••••••

••••••••••••••••••••••••••••

•••••

•••••

• ••••••••••••••••••••••••

••••••

••••••

••••••

••••••

• ••••

••••••

••••••

••••••

••••••

••••••

••••••

••••••

••••••••••

•a •••

••••••••••••••••••••••••••••••••••••••••••••••••••■•••••••••••••••••••••••••

••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••

Circle 39 on inquiry card.

BYTE April 1978 193

What's New?

SOFTWARE

Leisure Program Library for New TI Calculators

Owners of the Texas InstrumentsProgrammable 58 and 59 calculators(see December 1977 BYTE, page 204)can now enjoy recreational applicationsof their pocket sized computers with theSolid State Software Leisure Librarymodule. This plug in read only memoryunit contains 20 different keystrokeprograms for golf handicaps, bowlingscores, chess ratings, results of deals induplicate or triplicate bridge, blackjack,acey deucy, craps, NIM, biorhythms, aspacecraft landing and a sea battle game,and other applications. Two programsuse the alphabetic and plotting capa-bilities of the PC-100A printing cradle.The module is $35 from Texas Instru-ments Inc, Inquiry Answering Service,POB 53 (attn: Leisure Library),Lubbock TX 79408"

Circle 574 on inquiry card.

FDOS III for iCOM Floppies

FDOS III is a new operating systemfor 8080 and Z-80 computers using anyof iCOM's family of floppy disk drivesand interfaces. It is compatible withprograms written under FDOS II and hasrelocatable driver modules for file access.The system includes a string orientedtext editor and a relocatable assemblerfor 8080 or Z-80 programs. Singlecommands provide for functions such asloading of files, editing and assembly,disk to disk, disk to punch and reader todisk IO. Files may be deleted, renamedor merged to create new files, and maybe tagged with attributes to preventdeletion, for example. FDOS 111 isavailable from Pertec Computer CorpMicrosystems Division, 21111 ErwinSt, Woodland Hills CA 91367, (213)999-2020."

Circle 575 on inquiry card.

Complete ANSI FORTRAN Compilerfor Z-80

This FORTRAN compiler imple-ments full American National StandardFORTRAN IV with a number of ex-tensions, including one and two byteintegers, double precision reals,complex, logical and string data types,named COMMON, sequential and directaccess IO, and hexadecimal constants.A full library of scientific and stringfunctions is provided, and a linkingloader with automatic library searchcapabilities can link FORTRAN withassembler programs. Generated code canbe placed in read only memory, and thepackage may be used optionally with aplanned hardware multiply and dividemodule for greater speeds of execution.The compiler runs in 24 K bytes ofmemory in both FDOS IV and CP/Mversions. It is available on floppy diskwith a user's manual for $349 fromTechnical Design Labs, Research Park,Bldg H, 1101 State Rd, Princeton NJ08540,(609) 921-0321."

Circle 576 on inquiry card.

A FORTRAN Compiler for 8080s

Microsoft, 300 San Mateo NE, Suite819, Albuquerque NM 87108, has justprepared a brochure on their FOR-TRAN-80 package, summarizing thefeatures of the compiler for 8080processors. User's guides for the FOR-TRAN-80 compiler, MACRO-80 as-sembler, LINK-80 loader and LIB-80library packages are available for aprice of $20 each. Single user price forthe FORTRAN-80 compiler is $500.Versions are said to be available forCP/M, ISIS-II, DTC Microfile and MITSDOS floppy disk operating systems.Write the company for complete detailsor phone Steve Wood, (505) 262-1486."

Circle 578 on inquiry card.

Where Do New Product ItemsCome From?

The information printed in thenew products pages of BYTE isobtained from "new product" or"press release" copy sent by thepromoters of new products. If inour judgment the neat new whiz-bang gizmo or save the worldsoftware package is of interestto the personal computing experi-menters and home brewers whoread BYTE, we print the informa-tion in some form. We openlysolicit such information frommanufacturers and suppliers tothis marketplace. The informationis printed more or less as a first infirst out queue, subject to oc-casional priority modifications.

TDL Version 3.0 "Super BASIC"

Technical Design Labs has introducedVersion 3.0 of "Super BASIC," a 12 KBASIC interpreter. Version 3.0 upgradesand supersedes Version 2.1 with im-provements in speed and error handlingfeatures. Included with the announce-ment of this improvement was The 12 KBASIC User's Manual of approximately70 pages in length.

Version 3.0 of Super BASIC providesprogrammable error handling that allowsthe user to specify special error handlingroutines processing any error occurringin the basic program without abortingthe program. In addition, the ERR andERL functions are available to providefurther flexibility in error processing.

Version 3.0 of Super BASIC allowsfor the serial input and output of datafrom the firm's Zapple Monitor definedreader and punch devices. This data maybe in ASCII (using INPUT and PRINTcommands), or in binary (READ andWRITE). For noncontrolled reader/punch devices, a high speed binary modeis provided (MLOAD and MSAVE).During data input, end of file detectionis provided through the ON EOF GO TOconstruct.

Version 3.0 provides the VARADRfunction which allows the address of aparticular variable to be passed to anassembly language routine through theCALL statement. This allows routinesto return data to the calling program.

Version 3.0 also has a provision toassociate arbitrary file name strings withLOAD, LOADGO, and SAVE com-mands.

Version 3.0 of Super BASIC is beingreleased for use with the CP/M diskoperating system and is expected to beavailable soon in a serial paper tapeversion.

As with all TDL software it is relo-catable and uses the monitor's operatingsystem Tor its IO handling. It comes withthe user's manual and occupies 12 Kof core. Although primarily designed torun on TDL's Z-80 microcomputer sys-tem, it is adaptable to other systemswhich use the Zilog Z-80 processor.Super BASIC Version 3.0 is on a disketteand is a part of TDL's Software PackageA which consists of Version 3.0, TheMacro Assembler 2.2, Z-TEL TextEditing Language and the Text OutputProcessor. This entire package is avail-able now for $249.

For further information contactTechnical Design Labs, Research Park,Bldg H, 1101 State Rd, Princeton NJ08540,(609) 921-0321."

Circle 577 on inquiry card.

Correction

The price of the

Equinox

100

computer system is $799,

not

$699 as we stated in

the new

pro-

duct release on page 172 of

thei

January 1978 issue

Our th

anks

to Linda Hall of Parasitic E

:ngi-

neerlng for calling

this to

our

attention.

194

April T978©BYTE Publications Inc

ELECTRONIC SYSTEMS

p.o. box 212 Burlingame CA 94010

(408)374-5984

UART&BAUDRATEGENERATOR

Part no. 101

• Converts serial to parallel andparallel to serial

• Low cost on board baud rategenerator

• Baud rates: 110, 150,300,600,1200, and 2400

• Low power drain +5 volts and-12 volts required

• TTL compatible

• All characters contain a startbit, 5 to 8 data bits, 1 or 2 stopbits, and either odd or evenparity.

• All connections go to a 44 pingold plated edge connector

• Board only $12.00; with parts$35.00

8K

STATIC

RAM

Part no. 300

• 8K Altair bus memory

• Uses 2102 Static memory chips

• Memory protect

• Gold contacts

• Wait states

• On board regulator

• S-100 bus compatible

• Vector input option

• TRI state buffered

• Board only $22.50; with parts$160.00

RS-232/TTLINTERFACE

Part no. 232

• Converts TTL to RS-232, andconverts RS-232 to TTL

• Two separate circuits

• Requires -12 and +12 volts

• All connections go to a 10 pingold plated edge connector

• Board only $4.50; with parts$7.00

DC

POWER

SUPPLY

Part no. 6085

• Board supplies a regulated +5volts at 3 amps., +12,-12, and -5volts at 1 amp.

• Board has filters, rectifiers, andregulators

• Power required is 8 volts AC at3 amps., and 24 volts AC C.T. at1.5 amps.

• Board only $12.50

TIDMA

Part no. 112

• Tape Interface Direct MemoryAccess

• Record and play programs with-out bootstrap loader (no prom)has FSK encoder/decoder fordirect connections to low costrecorder at 625 baud rate, anddirect connections for inputs andoutputs to a digital recorder atany baud rate.

• S-100 bus compatible

• Comes assembled and testedfor $160.00

TAPE Part no. Ill

INTERFACE

• Play and record Kansas CityStandard tapes

• Converts a low cost taperecorder to a digital recorder

• Works up to 1200 baud

• Digital in and out are TTL-serial

• Output of board connects tomic. in of recorder

• Earphone of recorder connectsto input on board

• Requires +5 volts, low powerdrain

• Board $7.60; with parts $27.50

• No coils

Partno. 107

RFMODULATOR

• Converts video to AM modu-lated RF, Channels 2 or 3

• Power required is 12 volts ACC.T., or +5 volts DC

• Board $4.50; with parts $13.50

APPLE 1

MOTHER

BOARD

Part no. 102

• 10 slots — 44 pin (.156) con-nectors spaced %" apart

• Connects to edge connector ofcomputer

• Pin 20 and 22 connects to X &Z for power and ground

• Board has provisions for by-pass capacitors

• Board cost $15.00

TELEVISIONTYPEWRITER

U$4§

Part no. 106

• Stand alone TVT

• 32 char/line, 16 lines, modifi-cations for 64 char/line included

• Parallel ASCII (TTL) input

• Video output

• IK on board memory

• Output for computer con-trolled curser

• Auto scroll

• Non-distructive curser

• Curser inputs: up, down, left,right, home, EOL, EOS

• Scroll up, down

• Requires +5 volts at 1.5 amps,and-12 volts at 30 mA

• Board only $39.00; with parts$145.00

MODEM

Part no. 109

• Type 103

• Full or half duplex

• Works up to 300 baud

• Originate or Answer

• No coils, only low cost com-ponents

• TTL input and output-serial

• Connect 8 ohm speaker andcrystal mic. directly to board

• Uses XR FSK demodulator

• Requires +5 volts

• Board $7.60; with parts $27.50

To Order:

Mention part number and description. For parts kits add "A" to part number. Shipping paid for ordersaccompanied by check, money order, or Master Charge, BankAmericard, or VISA number, expirationdate and signature. Shipping charges added to C.O.D. orders. California residents add 6.5% for tax.Parts kits include sockets for all ICs, components, and circuit board. Documentation is included withall products. Dealer inquiries invited. 24 Hour Order Line: (408) 374-5984. £21

Circle 44 on inquiry card.

BYTE April 1978 195

Whals New?

New Low Cost Terminal

PERIPHERALS

Hexadecimal Keyboard forMicro Designer

Two hexadecimal data entry anddisplay keyboards are now availablefor the Mini-Micro Designer (MMD-1)microcomputer trainer. 16 hexadecimaldigit keys and eight function keys areprovided, allowing the user to examineor modify memory or registers andcontrol program execution. Also in-cluded is an interconnection cable,a hexadecimal conversion ROM chipto replace the ROM on the MMD-1,and an instruction manual. The MMD/HEX-1 keyboard is $105 in kit formand $125 assembled, while the MMD/HEX-2, which includes two LED hexa-decimal digit displays with provisionfor four additional digit displays, is$165 in kit form or $185 assembled,from E & L Instruments Inc, 61 First St,Derby CT 06418, (203) 735-8774.*

Circle 646 on inquiry card.

Video Board Offers 80 CharacterDisplay and Graphics

This video display board providestwo pages of its own display buffer

memory, each with 25 rows of 80characters each. The character set in-cludes 96 upper and lower case ASCIIcharacters with descenders, and 64graphic display symbols which permita graphic resolution of 160 horizontalby 75 vertical points. The buffermemory can be loaded at a rate of400,000 characters per second. Ahardware blinking cursor is provided,and a mode register allows other char-acters to blink. The device consists oftwo boards, one piggybacked on theother, and occupies one card socketin an Altair (S-100) bus compatiblesystem, but takes up the space of twocards. The board is $349 in kit formor $449 assembled, from TechnicalDesign Labs, Research Park Bldg H,1101 State Rd, Princeton NJ 08540,(609)921-0321"

Circle 647 on inquiry card.

Printer Made in Switzerland

This alphanumeric printer shouldbe of special interest to our European

readers. It prints 21 characters per line(with options for 32 or 40 characters)at a rate of 2 lines per second from a setof 64 ASCII characters, in response to a6 bit parallel, CMOS or TTL compatibleinput signal. Printing is done on metal-lized, electrosensitive paper using amobile head with seven electrodes toform dot matrix characters. Busy,blank, data request and end of linesignals are also provided on the 32 pinDIN 41612 connector. Space on aprinted circuit board is provided* for upto 24 wire wrap sockets, for specialinterfaces. The MP 580 printer is offeredas a module for a 19 inch (48.3 cm)frame for 1380 Swiss francs (about$550), or in a case measuring 135 by155 by 195 mm for 1480 Swiss francs,from Gertsch & Brutch AG, Hertistrasse25, CH-8304 Wallisellen SWITZER-LAND, telephone 01-830-1255."

Circle 648 on inquiry card.

The LTL-1k terminal displays 80characters by 24 lines from a 64 char-acter (upper case only) ASCII characterset on a 9 inch diagonal screen with P4phosphor. A wraparound block see-through cursor is provided with variouscursor control functions operated bycontrol codes. The detached keyboardincludes 53 keys with 2 key rolloverand N key lockout. The terminalcommunicates over an RS232 interfaceat any of eight data rates ranging from110 to 19,200 bps. The LTL-lk is pricedat $695 from Cybernex Ltd, POB 9086,111-2595 Blackwell St, Ottawa, OntarioCANADA K1G 3T8,(613) 741-1540."

Circle 649 on inquiry card.

Computerize Your House withThis Remote Control System

The Introl system allows your com-puter to 'remotely control electricalappliances and other equipment bysending signals over the 110 VACpower lines. The system consists of anAltair (S-100) bus compatible ACcontroller board which can turn on andoff up to 64 remote units anywherein a building. The AC Remote unithas two independently controllable ACsockets which can each turn on and offa 500 W appliance. The computer canalso poll the remote unit to check itson or off status. Programs can easilybe written in BASIC or assembly lan-guage to control remote devices. Futurecompatible remote units include a dualtemperature sensor for solar heatingcontrol and other applications, and an8 input status monitor. In kit form theAC Controller is $149 and each ACRemote unit is $99, from MountainHardware Inc, POB 113:5, Ben LomondCA 95005, (408) 336-2495."

Circle 650 on inquiry card.

196 April 1978 © BYTE Publications Inc

DIODES/ZENERS

SOCKETS/BRIDGES

TRANSISTORS, LEDS, etc.

1N914

lOOv 10mA .05

8-pin pcb .25 ww .45

2N2222A

NPN (2N2222 Plastic. 10)

.15

1N40051N4007

600v1000v

1A .081A .15

14-pin pcb .25 ww .4016-pin pcb .25 ww .40

2N2907A

2N3906

2N3904

PNP

PNP (Plastic)

NPN (Plastic)

.15.10.10

1N4148

75v 10mA

18-pin pcb .25 ww .75

2N3054

NPN

.35

1N753A

6.2v

z .25

22-pin pcb .45 ww 1.25

2N3055

NPN 15A 60v

.50

1N758A

lOv

z .25

24-pin pcb .35 ww 1.10

T1P125

LED Green,

PNP DarlingtonRed, Clear, Yellow

.35.15

1N759A

12*/

z .25

28-pin pcb .35 ww 1.45

D.L.747

7 seg 5/8" High conn-anode

1.95

1N4733

5.1v

z .25

40-pin pcb .50 ww 1,25

XAN72

7 seg com-anode (Red)

1.25

1N52431N5244B

13v14v

z .25

z .25

Mo lex pins .01 To-3 Sockets .45

MAN71MAN3610

7 seg corn-anode (Red)7 seg com-anode (Orange)

1.25

1.25

1N5245B

15v

z ^25

2 Amp Bridge 100-prv 1.20

MAN82AMAN74A

7 seg com-anode (Yellow)7 seg corn-cat node (Red)

1.251.50

25 Amp Bridge 200-prv 1.95

FND359

7 seg com-eathode (Red)

1.25

CMOS

- T T L -

4000

.15

740C

I .15

7473 .25

74176 1.25

74H72

.45

74S133

.40

4001

.15

7401

.15

7474 .30

74180 .75

74H101

.75

74S140

.55

4002

.20

7402

► .20

7475 .35

74181 2.25

74H103

.75

74S151

.30

4004

3.95

7402

t .20

7476 .40

74182 .95

74H106

.95

74S153

.35

4006

.95

7404

.15

7480 .55

74190 1.75

74S157

.75

4007

.35

740E

» .25

7481 .75

74191 1.05

74 LOO

.25

74S158

.30

4008

.95

740€

► .35

7483 .95

74192 .75

74L02

.25

74S194

1.05

4009

.45

7407

.55

7485 .75

74193 .85

74L03

.30

74S257 (8123)

1.05

4010

.45

740£

\ .25

7486 .25

74194 1.25

74L04

.30

4011

.20

740G

► .15

7489 1.35

74195 .95

74L10

.30

74LS00

.25

4012

.20

741C

I .10

7490 .55

74196 1.25

74L20

.35

74LS01

.35

4013

.40

7411

.25

7491 .95

74197 1.25

74L30

.45

74LS02

.35

4014

.95

7412

! .30

7492 .95

74198 2.35

74L47

1.95

74LS04

.30

4015

.90

7412

I .35

7493 .35

74221 1.00

74L51

.45

74LS05

.45

4016

.35

7414

[ 1.10

7494 .75

74367 .85

74L55

.65

74LS08

.25

4017

1.10

741 e

t .25

7495 .60

74L72

.45

74LS09

.35

4018

1.10

7417

.40

7496 .80

75108A .35

74L73

.40

74LS10

.35

4019

.50

742C

I .15

74100 1.15

75110 .35

74L74

.45

74LS11

.35

4020

.85

7426

► .30

74107 .35

75491 .50

74L75

.55

74LS20

.25

4021

1.00

7427

.45

74121 .35

75492 .50

74L93

.55

74LS21

.25

4022

.85

743C

I .15

74122 -55

74L123

.85

74LS22

.25

4023

.25

7432

.30

74123 .55

74H00 .15

74LS32

.40

4024

.75

7437

.30

74125 .45

74H01 -25

74S00

.35

74LS37

.35

4025

.30

7436

t .35

74126 .35

74H04 .20

74S02

.35

74LS40

.45

4026

1.95

744C

I .25

74132 1-35

74H05 .20

74S03

.30

74LS42

1.10

4027

.50

7441

1.15

74141 .90

74H08 .35

74S04

.30

74LS51

.50

4028

.95

7442

► .45

74150 .85

74H10 .35

74S05

.35

74LS74

.65

4030

.35

7442

I .65

74151 .65

74H11 .35

74S08

.35

74LS86

.65

4033

1.50

7444

.45

74153 .75

74H15 .45

74S10

.35

74LS90

.95

4034

2.45

744 E

I .65

74154 .95

74H20 .30

74S11

.35

74LS93

- .95

4035

1.25

7446

► .95

74156 .95

74H21 .25

74S20

.35

74LS107

.85

4040

1.35

7447

.95

74157 .65

74H22 .40

74S40

.20

74LS123

1.00

4041

.69

744E

I .65

74161 .85

74H30 .20

74S50

.20

74LS151

.95

4042

.95

745C

I .25

74163 .85

74H40 .25

74S51

,25

74LS153

1.20

4043

.95

7451

.25

74164 .60

74H50 .25

74S64

.20

74LS157

.85

4044

.95

7452

t .20

74165 1.50

74H51 .25

74S74

.35

74LS164

1.90

4046

1.75

7454

.25

74166 1.35

74H52 .15

74S112

.60

74LS367

.75

4049

,45

746C

.40

74175 .80

74H53J .25

74S114

.65

74LS368

.75

4050

.45

747C

.45

74H55 .20

74C04

.25

40664069

.95.40

7472

.40

74C151

2.25

4071

.35

MCT2 .95 LINEARS, REGULATORS, etc.

4081

.70

8038 3.95

LM320T5 1.65

LM340K15

1.25

LM723

.50

4082

.45

LM201 .75

LM320T12 1.65

LM340K18

1.25

LM725N

2.50

MC14409

14.50

LM301 .45

LM320T15 1.65

LM340K24

.95

LM739

1.50

MC 14419

4.85

LM308 (Mini) .95

LM324N .95

78L05

.75

LM74K8-14J.25

LM309H .65LM309K (34ok-5>85

LM339 .957805 (340T5) .95

78L1278L15

.75.75

LM747LM1307

1.101.25

9000 SFR IPS

9301 .85

95 H 03 1.10

LM310 1.15

LM340T12 1.00

78M05

.75

LM1458

.95

9309 .35

9601 .45

LM311D(Mini) .75

LM340T15 1.00

LM373

2.95

LM3900

.50

9322 .75

9602 .45

LM318(Mmi) .95

LM340T18 1.00

LM 380 (S-i 4 pin).95

LM75451

.65

LM 320 K 5(7905)1.65

LM340T24 95

LM709 (8,14 D||NJ^ ^**

NE555

.50.95.95

MICRO'S, RAMS,CPU'S, ETC.

LM320K12 1.65

LM340K12 1.65

LM711

!45

NE556NE565

74S1881702A

MM5314MM5316

3.004.503.003.50

INTEGRATED CIRCUITS UNLIMITI

ED

NE566NE567

1.751.35

2102-1

2102L-1

TR1602B

1.451.754.50

7889 Clairemont Mesa Boulevard, San Diego, California 92111

(714) 278-4394 (Calif. Res.) DISCOUNTS

All orders shipped prepaid No minimum Total Order DeductOpen accounts invited COD orders accepted $**jj; |^Q y^

TMS4044-45NL 14.508080AD 12.008T13 1.508T23 1.508T24 2.00

Discounts available at OEM Quantities California Residents add 6% Sales Tax $301 - $1000 15%

8T97

1.00

All IC's Prime/Guaranteed. All orders shipped same day received.

$1000-Up

20%

2107B-4,2708

A 4.0011.50

24 Hour Toll Free Phone 1-800-854-2211 American Express / BankAmericard / Visa / Master Charge

Circle 57 on inquiry card.

BYTE April 1978 197

What's New?

Digital Pulser Delivers High Current

The DP-1 monitors the node beingprobed and sets itself to deliver a pulseat the other logic level of 50 mA inCMOS mode or 100 mA in TTL mode.The pufse pushbutton sends a singlepulse if pushed once, or trains of about100 pulses per second if held down.Pulses are monitored by an LED. TheDP-1 obtains its power from the systemunder test, and the power connector is astandard phono plug. The DP-1, whichis one member of a family of digitaltroubleshooting hardware which themanufacturer calls The Logical Force,is priced at $74.95 from ContinentalSpecialties Corp, 44 Kendall St, NewHaven CT 06509, (203) 624-3103."

New Pocket Calculator FeaturesBuilt-in Printer

Use These Cassettes for Reliable Tape iO

The Pilon-30 data cassette incor-porates several of the features of higherpriced digital cassettes to provide in-creased reliability for audio cassetterecording of digital information at areasonable price. A principal improve-

Circle 657 on inquiry card.

ment is a pilon coated pressure padwhich assures low friction tape move-ment across the head and eliminatesthe typical lint producing fiber pad.The pad leaf spring inordinary cassetteshas been replaced by an energy absor-bing foam spring, which dampensoscillations that are sometimes inducedin the spring of the tape drags acrossthe pad. The cassette incorporates 150feet of low noise, low dropout polyestertape in a 5 screw housing which elimi-nates the case deformation whichsometimes occurs when the case isthermo-compression sealed. Datastorage capacity is 50,000 bytes at300 bps or 200,000 bytes at 1200 bps.The Pilon-30 is priced at $2.49 and isavailable through computer stores ordirect (minimum order 5 cassettes) fromPerCom Data Company Inc, 318 Barnes,Garland TX 75042, (214) 276-1968."

Circle 656 on inquiry card.

Money Management Kit from Tl

Continuing its efforts to educateconsumers in the use of calculators andcomputers for everyday problem solving,Texas Instruments has introduced a newpersonal money management kit, con-sisting of a 100 page book, Doing Morewith Your Money, and a Tl MoneyManager calculator. The book is in-tended for people not highly skilled infinancial mathematics, and is organizedto give quick answers to common finan-cial problems. The book begins with achart giving the "answer you need,""information you have" and "page tosee." The calculator has several pre-programmed financial routines as wellas the common arithmetic, memory andpercent functions. The package is $21.95from Texas Instruments Inc, POB 5012,Dallas TX 75222,(214) 238-2011."

Circle 651 on inquiry card.

The Classic Kit for TV Set Conversion

Long available for video camera andtape recorder experimenters, the Pixe-Verter has become very popular withcomputer hobbyists and is now sold bymore than 100 computer stores across

The HP-19C, a printing version of theHP-29C introduced earlier, is the firstpocket calculator with a built-in thermalprinter. The calculator also features con-tinuous memory whose contents are notlost when power is turned off. The key-stroke programmable HP-19C includes98 fully merged program steps, 30 datastorage registers, and a full set of editingand programming functions such asinsertion and deletion of program steps,a total of ten decision tests, ten address-able labels, indirect addressing and threelevels of subroutines. The printer can beused to create a permanent record ofcomputed results, to make listings ofprograms in mnemonic form, and totrace execution during program de-bugging. The continuous memoryfeature makes it possible to retain theprogram, 16 of the 30 data storageregisters, and the display register whenpower is turned off. As many as fourkeystrokes can be merged into oneprogram step, so that programs of 175keystrokes can typically be entered. TheHP-19C is $345 from Hewlett-PackardCompany, 1507 Page Mill Rd, Palo AltoCA 94304, (415)493-1501."

Circle 655 on inquiry card.

the US. When modulated by a standardcomposite video signal between .25 and5 V, it generates a VHF television signalwhich can be fed into the antenna ter-minals of a TV set and used on anyblack channel between 2 and 6. Becauseof bandwidth limitations in the TV set,only a limited number of characters perline can be displayed. The device isassembled on a 1.25 by 2.1 inch printedcircuit board and requires less than 3 mAat 5 V. The Pfxe-Verter is $8.50 post-paid from ATV Research, 13th andBroadway, Dakota City NB 68731,(402)987-3771."

Circle 658 on inquiry card.

April 1978© BYTE Publications Inc

FOR ALL CUSTOMERS EXCEPT CALIF. CALL TOLL FREE 800-421-5809

00B00000008

410D

Static Rams,30 for S8 75ea

— P

6571AP

Chdiaclfi Gt'»iifor SlO.OOea.

4096Dynamic Rams100 for $3.50 ea

100 for $2.25 ea

TMS-4027Dynamic Raf100 for $3.5(

~r—

21L02 I450ni)

Sialic RamslOOteirSI TOea.

1702A

E-PROM

8 for $3.75 ea.

6502

Microprocessor5 for $11.00 ea.

2708 <450m)

E-PROM

8 for SllOOea,

21L02 <250ni»Static Rams

TOO lor $1.36 ea.

Z-BOA

Microprocessor5 for $25 00 ea

8212

8 Bit I/O Port

25 for $3 00ea

lb i'

4U6 (200ns)16K Dynamic Ramtoi Applf Usui16 tor $24 00ea

B2244

Ciotrk Geo. & Dvr

25 for $8.75ea

74?c->

He* SuMer TS

100 for 70* ea.

74368

Hex Inverter TS

100 for ,704 ea.

74LS367

He* Buffer100 for 7CW

2513 (Sv)Character Gen5 for $9.00 ea.

MICROCOMPUTER COMPONENTS

MICROPROCESSORS

(a

Z80

ZB0A

CDP180?CD

2650

AM2901

6502

6800

680?

8008 1

8035

8080 A

8085

TMS9900H

16 96*22 00 ,78 00 .19 95*

24 95 NFW22 9512?5»

18 95»

25 00 NfcW9 95»

72 00 NEW11 95 <

PROMS

1 702A A 00 •

7704 15 00 «

7708 1700 t

77)6 I5-12ITI 10 00 t7716 I5.HNTI 18 DO NfcW

DYNAMIC RAMS

8080A SUPPORT DEVICES

8216

82248224 482268228R73B

825982758279

350 t900 »3 75 i3 50 •

9 95 '

3 95 NFVV

■ ,'-. ,

7 50 .

9 95 .21 95 i21 96 .71 95 .

775H ti

D3GQ1

03604

5703AO

5704 A()

6834

6834 t

S7S73B

B2SI798

8223B

6800 SUPPORT

?Gt>0 NtW

4 50

13 00 WW

5 00 •

soo

1750*

mttdP

6881 OP6820P6871P

6852PG860P686 ?P

1H)1 A7101 17107710? I

2175L214/31L013106

/4C89

.'489

/4S701

P8101

P8155

P8156

8599

9102BPC

760395

3 959 9512 9511 008 303 752.2S

7 35

3 703 70

90011 9510 00

14 0018 001 751 45

2 60

1 00

t 10.

3 75*

2 699 25.

8 30 NFWNEW700

3 253 25

8 95 NEWU 00,

9 2b

7 75.

2 80 NEWNEWNFW

2I07B4

3 95

TMS4050

4 00

T MM 060

4 50

1-MS4070 7

j? no

4096

4 00

4116 416D

37 00

MM5270

4 50

MCM6605

'jW

USRT

S2350

in 75

UART'S

AYS 1013A

5 25

AYS 10I4A

8 25

TR1602B

5 75

TMS6011

5 95

(M6402

10 80

IM6403

10 80

CHARACTER GENERATORS

FLOPPY DISC CONTROLLER

TV GAME CHIPSTMS1955 ■■■>'■

KEYBOARD CHIPS

78170 16 95 •

F 8 SUPPORT DEVICES

Z80 SUPPORT DEVICES

SHIFT REGISTERS STATIC

7518B .mi,

2533V 1 ... iX)

TM53007 i 00

TW53113 w.,

MM505H ■) fK)

KIM

610?C50?C5?065?76530C530 (K)2(5530 0036&30WJ4fi5.«l OO'i

JS13

251375)375IBMCM8&71

MCMC57IA

MCM6574

Mt:M657f>

6 .'5

6 75

9 75 t10 95 .10 95 NFW10 9510 9513 7D ■13 25 t

WAVEFORM GENERATOR

CLOCK CHIPS

MM5311MM'j3HMM 51HMMSllhMMS375tT/Ogi

6 956 95

6 95

MISC OTHER COMPONENTS

NHT20 1 39 .

N8T76 7 10*

N8T95 I 3!.

NBT96 1 15

MBT97 \ 35

1488 I 75.

1489 I 75*

f 13205 4 00 NEW

'i3?07A 4 55 '

D3208A 14 70 NtW

03211 10 00 NEl\

H3??? 9 70 NEW

B3242 10 15 NFW

U3245 5 60 NEW

C3404 6 75 »

P3408A tJOQ*

P4701A b?0»

MM5320 l 50

MM5369 1 90

TMS5501 -M95 I

DM8130 ?90

0MB131 7 75*

DM8833 -j bi)

OM8835 ? 5()

OM8B37 ?5n

MK50240 TfiOO Nltt .

MK50750 lb00 NtiV

THE PROM SETTER

WRITE and READEPROM

1702A-2708-27165204-6834

• IMujjs Directly into ynur Al.TAIR IMSAI Cnmnutpr

• In. liMtrt; M*>ri Module Board and Externa) EPROMSr.rkri Wnil

• The F.PROM Rocket Unit is ronnecleri lo the Com-puter thrnugh .1 25 Pin Cr>rmec!nr

• I'rrttjntmming is accomplished by the Computer

• fusi KVa.l |n ihp Program to he Written on theFPKUM inln vnur Processor and let (he (Computer.In the resl

• It** Smk.i Urtil to Read EPROM s Contents into\mir Computer

• S"iiw*rr mr Unfed

• \n I \tirr.,tl Power Supplies. Ycmr Cnmpuler doesit nl!

• l)->nh|.-s ,(s m Kinht Bit Parallel 1 O

• M.inu.il mi ludpd

THE PROM SETTERKIT ASSEMBLED

$210.00 $375.00

TV-l

VIDEO INTERFACE

You will want to know about the TV-1 Video

to Televisior Interface Kit.

No need to buy a separate Video Monitor if

you already own a TV set. Just connect the

TV 1 between your system video output and

the TV set antenna terminals - that's all there

is to it - to convert your TV set to a Video

Monitor, and at a much lower cost! PRICE $8 95

8K STATIC RAM BOARD

ASSEMBLED AND TESTED

250ns.450ns.

$189195$14975

WILL WORK WITH NO FRONT PANEL

FULL DOCUMENTATION

FULLY BUFFERED

S100 DESIGN

ADEOUATELY BYPASSED

LOW POWER SCHOTTKY SUPPORT IC S

KIT

250ns. "" $169.95450ns. $129.95

BARE BOARD $25.00

W/SCHEMATIC g ,wv

ADAPT YOUR MOTOROLA , ....SYSTEM TO OUR S-100 8K RANBOARD. KIT PRICE $12.95

IMSAI/ ALTAIR*

COMPATIBLE

PERSCI DISK DRIVE FOR S-100

COMPLETEInfo 2000 S-100 DISK SYSTEM(includes dual drive, power supply, case,intelligent controller adapter, cables, anddisk monitor on EPROM) ^« RRH 00

COMPLETE TDL SOFTWARE'

PKG. FOR DISK $195.00

MOTHER BOARD

* 13 SLOT MOTHER BOARD w/front

panel slot

* S-100 DESIGN

* FULL GROUND PLANE ON ONE SIDE

* RC NETWORK TERMINATION ON

EVERY LINE EXCEPT PWR & GRD

* KLUGE AREA

* STRONG 1/8" THICK DOUBLE SIDED

BOARD

BARE BOARD $35.00 KIT $95.00

JADE 8080A KIT$100.00 KIT

BARE BOARD $35.00

JADE PARALLEL/SERIAL

INTERFACE KIT

s.,00 $124.95 KIT

2 Serial Interfaces with RS232

interfaces or 1 Kansas City cassette

interface.

Serial interfaces are crystal controlled.

Selectable baud rates.

Cassette works up to 1200 baud.

1 parallel port.

1

.S-100JADEZ80

-with PROVISIONS for KIT

ONBOARD 2701 and POWER ON JUMP

$135.00 EA. <2MHZ>$149.95 EA. ™«*

BARE BOARD $35.QQ

MICROBYTE

32K STATIC

YES we have the PHANTOM line if you need n

YES m have extra address lines if vou want toswitch ba.iKj for mote than 6SK memory

YES this board is fully static no compromisesit works with everything DMA, Disk curtrollers, you name it*

YES this board is low power

YES we distribute the power with mne i.ountem, nine) voltage regulators

us S100 bus compatible !of coursel

YES wh 4K block on the board can besapwataly addressed anywhere m memory

it s fully assembled with sockets for allchips

it s solder masked and wave soldered twemoved out of our garage long ago)

us fast enough do wail states (450nsstandard) h>gh*i speed on request

YES the pn« is right

32K ASSEMBLED AND TESTED16K KIT (450ns)

s tested, burned in and fully guaranteedONLY

$775EXPANDABLE TO 32K $335

JADE VIDEO INTERFACE KITFEATURES $99.95

32 or 64 Ch16 lines

100 Bus Compatible

"*'iaracters per line

Graphics (128 x 48 matrix)

'arallel & Compositive video

On board low-power memory

Powerful software included forcursor, home, EOLr Scroll Graphics/Character, etc. _ „ .

Upper case, lower case & GreekBfack-on-white & white-on-black

Computer Products

5351 WEST 144th STREET

LAWNDALE, CALIFORNIA 90760

1213) 679 3313

RETAIL STORE HOURS M-F 9-7 SAT 9 5Oiscounts available at OEM quantities Add $1 2bfor shipping California residents add 6% sales tax

Circle 60 on inquiry card.

BYTE April 1978 199

CWHHi

7400N TTL

SN74Q0NSN7401NSN7402NSN7403NSN7404NSN7405NSN7406NSN7407NSN7408NSN7409NSN7410NSN7411NSN7412NSN7413NSN7414NSN7416NSN7417NSN7420NSN7421NSN7422NSN7423NSN7425NSN7426NSN7427NSN7429NSN7430NSN7432NSN7437NSN7438NSN7439NSN7440NSN7441NSN7442NSN7443NSN7444NSN7445NSN7446NSN7447NSN7448NSN7450NSN7451NSN7453NSN7454NSN7459ASN7460NSN747QN

5N7472NSN7473NSN7474NSN7475N'SN7476N"SN7479NSN7480NSN7482NSN7483N

mmmmmm

SN7488N

SN7489N

SN7490N

SN7491N

SN7492N

SN7493N

SN7494N

SN7495N

SN7496N

SN7497N

SN74100N

SN74107N

SN74109N

SN74116N

SN74121N'

SN74122N

SN74123N

SN74125N

SN74126N

SN74132N

SN74136N

SH74141N

SN74142N

SN74143N

SN74144N

SN74145N

SN74147N

SN74148N 2.00

SN74150N 1,25

SN74151N .79

SN741S3N 89

SN74154N 1.25

SN74155N .89

SN74156N 89

SN74157N .89

5.00

393.502 49

,45

1.95

1.25

2953,253001.15235

*!K

SN7416GN 1,25

SN74161N .99

SN74162N 1.95

SN74163N .99

SN74164N .99

SN74165N .99

SN74166N 1.25

SN74167N 3.25

SN74170N 2.10

SN74172N 6.00

SN74173N 1.50

SN74174N 1.25

SN7417SN .99

SN74176N .79

SN74177N .79

SN74179N 2.49

SN74180N .99

SN74181N 2.49SN74182NSN74184NSN74165N

SN74186N 1500

mmm

SN74188NSN74190N

SN74191N 1.25

SN74192N .89

SN74193N 69

SN74194N 125

SN74195N .75

SN74196N 1.00

SN74197N 1.00

SN74198N 1-75

SN74199N 175

SN7420ON 5.59

SN742S1N 1.79SN74279NSN74283N

SN74284N 6 00

SN74285N 6.00

SN7436SN .75

SN74368N .75

SN74367N .75

SN74368N .75

SN74390N 2 25

SN74393N 2 25

1.95

395

2 25

20% Discount tor 100 Combined 7400 s

CD4000CD4001CD4002CD4006CD4007CD4009CO4010C04011CD4012CD4013CD4014C04015CD4016CD4017CO4018C04019C04020CD4021CD4022CD4023C04024C04025CD4026CD4027C04C28CD4029CD4030CD4035C04040CD4041CD4042

CMOS

C04044

.99

CD4046

1.79

CD4047

2.50

C04048

1.35

C04049

.49

C04050

.49

CD4051

1.19

CD4053

1.19

CD4056

1.49

CD4059

995

C04060

1.49

CO4066

.79

C04068

.39

CD4069

.45

CD4070

55

CD4071

.23

CO4072

.49

CD4076

1.39

C04081

.23

CD4Q82

.23

CD4098

2.49

MC14409

14.95

MC1441Q

14.95

MCI 4411

1495

MC14419

495

MCI 4506

.75

MC14507

.99

CD4508

3.95

CD4510

139

C04511

1.29

CD4515

2.95

CD4518

1.29

C04520

129

MC14562

14.50

C04566

2.25

MC14583

350

74CO0 Series

74C00

.39

74C02

,55

74C04

.75

74C10

.65

74C14

300

74C20

.85

74C30

65

74C42

2.15

74C73

1.50

74C74

1.15

74C89

4.00

74C90

3.00

74C93

2.00

74C95

2.00

74C107

1.25

74C151

2.90

74C154

3.00

74C157

2.15

74C160

3.25

74C161

3.25

74C163

3.00

74C164

3.25

74C173

2.60

74C193

2.75

74C195

2.75

80C95

1.50

80C97

1.50

75

650

LM3U0HLM301HLM301CNLM302HLM304HLM305HLM307CNLM308HLM308CNLM309HLM309KLM310CNLM311HLM311NLM317KLM318CNLM319N 1.30

LM320K-5 1 35LM32QK-52 135LM320K-12 135LM320K-15 135LM320T-5 1.25LM320T-5.2 1.25LM320T-8 125LM320T-12 125LM320T-15LM320T-1BLM320T-24LM323K-5LM324N 180

LM339N 99

LM340K-5 t-35LM340K-6 135IM340K-8 135LM340K-12 1-35LM340K-15 1-35LM340K-18 1-35LM340K-24 135LM340T-5LM340T-6

LINEAR

LM340T-6 125LM340T-12 1-25LM340MS 1.25LM340T-18 1.25LM340T-24 1.25LM350N 1.00

LM351CN .65

78MC 1.75

LM370NLM373NLM377NLM380NLM380CNLM381N

1.153.25

4.001.25

1.251.255.95

25

LM382N

NE501K

NE510A

NE529A

NE531H

NE536T

NE540L

NE550N

NE555V

NE5606

NE561B

NE562B

NE565H

NE565N

NE566CN

NE567H

NE567V

LM703CN

LM709H

LM7D9N

LM710N

LM711N

LM723H

LM723N

LM733N

1.79

8.006,004.953.006.006.00

5.005.005.00

LM739N 1.19

LM741CH .35

LM741CN .35

LM741-14N .39

LM747H .79

LM747N .79

LM748H .39

LM748N .39

LM1303N .90

LM1304N 1.19

LM1305N 1.40

LM13Q7N .85

LM1310N 2.95

LM1351N i.er

LM1414N 1-75

LM1458CN 59

LM1496N 95

LM1556V 1.75

LM2111N 1.95

LM2901N 2.95

LM3053 150

LM3065N .69LM3900N(3401).49

LM3905N 89

LM3909 1.25

LM5556N 1.85

MC5558V 1.00

LM7525N .90

LM7534N .75

LM7545075451CN75452CN75453CN75454CN75491CN75492CN75494CNRC4151RC4194RC4195

5955.95„3£.

74LS0074LS0274LS0374LS0474LS0574LS0874LS1074LS1374LS1474LS2074LS2674LS2774LS2874LS3074LS3274LS4074LS4274LS4774LS5174LS5574LS7374LS74

74LS00 TTL

74LS7674LS8374LS8574LS8674LS9074LS9274LS9374LS9574LS9674LS10774LS10974LS11274LS12374LS13274LS13674LS13874LS13974LS151

74LS15574LS15774LS16074LS16174LS16274LS16374LS16474LS17574IS18174LS19074LS19174IS19274LS19374LS19474LS19574LS25374LS25774LS26074LS27974LS36774LS36874LS670

BUGB00K®

Continuing Education Series

DUGBOOKSImdU $17.80 ptrnl

tlMifRKMy.DnMll.Um.WNHr;

Sokt H » 5* tritsi two tW*S CWOm. ovir 90 txrwrtnanR dtsanti) to tscfifDiwlMMIWrtiMltbwttMmiggKiMpiKmilwiinaiA-jundion m mtanproemof qMrm Twill i«m *Ml Ok tunc cwkwo (rt—*- tndwHnu gscra. nrHhp». Uterw. Buses. decwJen. -•WfS. LED (frsptirs. RAM's. flOMs, W* m«h, mucfi

8U6B00K 111

HN»l HMf. DM« C Linw. WUKTi

This votitme wrH trttroduce fOa to If* IiOuKws 1MRT crilp — Vm *• Hrtportml

THE 555 TTMEIt APPLICATIONSSOURCEBOOK WITH EXPERIMENTS

$6.95 iUGBOOKUl JiTi

bf Ptor H. KM), OnHid D. Unm. WMHTJ, iMtii A. TIM

Men Is ttN book M poll it all 'ogttfier Besides nwtng much vihiiWe tori

100 yinws design lecnmques eouitorn end ef»pr« to create fMdy-to ^' SOW cto pin 6y p*i vri ntjwt

ttmers. gfjtntofs pwwr supplies, measurement Md o»W *««s party untque ««•»/ MerhPM sysrtm

gimei, circuits lor the ton* end automobile, photograpfiy. music and ottjbiW on V* SUGBOOKS I & ti

An*teuf fla*°- »fli*.»-■... •■i\s

SUOBOOKVti

i».«iptf m

INSTflUCTOH'8 MANUAL ■ ■ ■ ¥"lii"lii»« Ita

Necessary •* immiction of Bugbook I and II, Answers quesBons regardmg 7™"" ""■• ™""- ""'■

erpenments. sugoasttons tor lurffier rtadmg. phHosophyot authors approacftto Ejtptnments n dtgftat aatctronies, 80WA iiiterocompuler pfog^Tming and

digital electronics A ™» to. seflteachmg .odwduats WW rntaecompetai rtertacmg An integrated appro** to sefl mstrocted

M .- basic digital etedromes, breedboardlitg and SOflOA imtrtaong/pfograminirig

W-OU Bugboo* VI -1—

Ow 25 «pen- "WA mtcf

> AMP MANUAL

rltnent guide to applicationn all nrapet el Op Ames.

wNhtachbi

g and interfacing Detail 1 laboratory

DBUtr

~8T56 CMOS-M - DESIGNERS PRIMER

8090 imetprattve debugget A program tar entifing, debugging and storing *•"* HANDBOOK

langseaaptaorims. Startsataasicflmctureo< CMOS

m

rttyjCTj ftrtcKiqti JmteflraB

COMPLETE MANUAL FOR DIGITAL CLOCKS by John Weiss and John Brooks

Familiarizes technician or hobbyist with basic theories behind digital docks. hTcfwJes trouble shooting guides, basic

eharactensnes pi docHs. soldering techniques, clock component data sheets and constiiieBofi tips. $3.95

125- die.

XC209 Red 5/tl

XC209 Green 4/J1

XC209 Orange 4/$1

XC209 Yellow 4/$1

.200" dia

XC22 Red 5/S1

XC22 Green 4/S1

XC22 YeHow 4^$1

XC22 Orange 4/$1

SSL-22 RT 4/11

DISCRETE LEOS

XC526XC526XC526XC526

XC111XC111XC111

XC111

m

100/$B4/$14/$14S)7*1

.190- m.

Red 10/51

Green 4/S1

Yellow 4/81

Orange 4/Sl

.085" «l.MV50 -Red - tm

wwm ii&

V,

WkWV

5/$1,«

SALE DISPLAY LEDS

SALE

MAN 72MAN 74MAN 81MAN 82MAN 64MAN 3620MAN 3630MAN 3640MAN 4610MAN 4640MAN 4710MAN 4730MAN 4740MAN 4810MAN 6610MAN 6630MAN 6640MAN 6650MAN 6660

fOLAMTT

ConitTKHi Anode-rod5 x 7 Dot Matru-reflCommon Cathode-redCommon Cathode-redCommon Anode -greenCommon Anode-redCommon Anode-redCommon Cathode-redCorrrmon Anode-yellowCommon Anode-yellowCommon Cathode-yellowCommon Anode-orangeCommon Anode-orange ±1Common Cathode-orangeCommon Anode-orangeCommon Cathode-orangeCommon Anode-red 11Common Anode-redCommon Cathode-red'Common Anode-yeNowCommon Anode-orange-O.D.Common ArK^-ofangeCommon Cathode-orange-DOOrmmon Cathode-orange »1Common Anode-orange

HT PRICE

270 2.95

300 495

125 Ml

1B7 195

300 1.00

,300 1 25.300 ,79

400 1.00

.400 .79

400 1,00

.560 .79

.560 79

560 .79

.560 .79

RCA LINEAR

CA3013CA3023CA3035CA3039CA3046CA3053CA3059CA3060CA3080CA3081

„ CA3082

,56 CA3083

.48 CA3086

35 CA3089

30 CA3091

50 CA3102

,25 CA3123

25 CA31M

85 CA3140

00 CA3401CA3600

3.753.502.952.151.391.25.491.75

Spin14 pin16 pin18 pm22 pm14 pin16 pin18 pin24 pin

Spin14 orn16 pin18 pin

6 pm10 pinM pm16 pin16 pin

IC

25-49

2L

.79

MAN 6680

MAN 6710

MAN 6730

MAN 6740

MAN 6750

MAN 6760

MAN 6780

OL701

OL702

DL704

OL707

OL741

DL746

OL747

DL749

DL750

0L33B

FND70

FNO503

FND507

5082-7300

5082-7302

5082-7304

5082-7340

POLARITY

Common Cathode-orangeCommon Anode-red-OOCommon Anode-red s 1Common Cathode-red-DO.Common Cathode-red *1Common Anode-redCommon Cathode-redCommon Anode-red z 1Common Cathode-redCommon Cathode-redCommon Anode-redCommon Anode-redCommon Anode-red ± 1Common Anode-redCommon Cathode-red siCommon Cathode-redCommon Cathode-redCommon Cathode (FND359)Common Caihode (FNO500)Common Anode (FND510)417 M, Diglt-RHOP4 x 7 Sgl. Dlg»-LHDP

560 79

560 .79

560 79

.300 1.00

600 1.49.630 1.95,600 1.49.110 3/1.00

K*r(*U

4 x 7 Sgi. Dip^-He»rJedma)

XR-2206KB Kit $19.95WAVEFORM

GENERATORSXR-205 S6 40

XR-2206CP 5.50

XR-2207CP 3 85

STEREO DECODERS

XR-1310CP S3.20

XR-1310EP 320

XR-1800P 3.20

XR-2567 2.99

EXAR

MISCELLANEOUSXB-2211CP $6.70

XR2206KAKit $14.95TIMERSXR-555CP $ .49

XR-320P 155

XR-556CP 185

XR-2556CP 3 20

XR-2240CP 4.80

PHASE LOCKED LOOPSXfl-210 5.20

XR-215 6 60

XR-567CP 1 95

XR-567CT 1 70

SOLDERTAIL— LOW PROFILE (TIN) SOCKETS

50-100 .. 1

24 pin S28 pirt36 pin40 pin

« SOLDERTAIL STANDARD (TIN)

26 pin J36 ptn 140 pin 1

SOLDERTAIL STANDARD (GOLD)

24 pin $

28 pin f

36 ptn 1

43 40 pin i

WIRE WRAP SOCKETS (GOLD) LEVEL #3

24 ptn

8

Spin36 pin40 pm

50 PCS, RESISTOR ASSORTMENTS $1.75 PER ASST

ASST. 1

ASST. 2ASST. 3ASST. 4ASST.5ASST. 6ASST. 7

ASST. 8R

10 OHM 12 OHM 15 OHM 18 OHM

27 OHM 33 OHM 39 OHM 47 OHM

66 OHM B2 OHM 100 OHM 120 OHM

180 OHM 220 OHM 270 OHM 330 OHM

470 OHM 560 OHM 680 OHM 820 OHM

1 2K 1 5K 1.8K 2 2K33K82K

3 9K10K

4 7K12K

5 6K15K

22 OHM

56 OHM

150 OHM

390 OHM

1K

2 7K

6.8K

18K

47K

5ea. 56K « 82K 10OK 120K

150K 160K 220K 270K 330K

5ea. 390K 470K 560K 680K 820K

1M 1 2M 1 5M 1 8M 2.2M

Sea 2 7M 3 3M 3 9M 4.7M 5 6M

Includes Resistor Assortments 1 -7(350 PCS.

1/4 WATT 5% > 50 PCS.1/4 WATT 5% ■ GO PCS.1/4 WATT 5% 50 PCS.174 WATT 5% - 50 PCS.1/4 WATT 5% 50 PCS.1/4 WATT 5% - 5SPC8,1/4 WATT 5% , 50PCS.

$9.95 ea.

$5 00 Minimum Order - U.S. Funth (MyCalllomta Resident* - Add 6% Saiei Tai

Spec Sheeti - 25c — Sand 35c Stamp for 1978 Catalog

Dealer Information Available

1978CATALOG

NOWAVAILABLE

1021-A HOWARD AVE., SAN CARLOS, CA. 94070PHONE ORDERS WELCOME — (415) 592-8097

Advertised Prices Good Thm* April

WIRE-WRAP KIT — WK-2-WWRAP • STRIP . UNWRAP '*Q

m Tool for 30 AWG Wire W£

• Roil of 50 Ft. White or Blue 30 AWG Wire^^

• 50 pes. each 1", 2", %" & 4" lengths —

pre-stripped wire.

$11.95

WIRE WRAP TOOL WSU-30WRAP • STRIP • UNWRAP -$5.95

WIRE WRAP WIRE — 30 AWG

25ft. min. $1.25 50ft. $1.95 100ft. $2.95 1000ft. $15.00SPECIFY COLOR —White - Yellow - Red - Green - Blue - Black

WIRE DISPENSER — WD-30

• 50 ft. roll 30 AWG KYNAR wire wrap wire $3.45 ea

• Cuts wire to desired length

• Strips 1" of insulation Specify — Bfue-Yellow-Whrte-Red

REPLACEMENT DISPENSER SPOOLS FOR WD 30

Specify blue, yellow, white or red $1 98/spool

SW74Q1SW7407SW7416SW7417

STEWART WARNER *£*

SW7423SW7425SW7427SW7430SW7432SW7437SW7438SW7440SW7443SW7444SW7445SW7446SW7450SW7453SW7454SW7460SW7472SW7475SW7480 .

Pre-tubed

19.0019.00

19.0011.0019.0014.0012.0012.0012.00120012.00

otSW7^

|J

$9.00/101 S80.00/WSW7482 W.90/W 44.00/lot 430.00/tot

4.001.201.20

2.20

160.00 SW7483 3.50

180.00 SW7486 220

190.00 SW7491 3.50

100,00 SW7494 3.50

180.00 SW7496 3.50

130.00 SW7496 3.50

110.00 SW74100 6.90

110.00 SW741W 2.20

110.00 SW74105 2.20

110.00 SW74107 2.20

110.00 SW74121 2.20

80.00 SW74123 2,50

300.00 SW74145 5,50

300.00 SW74150 6.90

300.00 SW74151 3.50

350.00 SW74153 4 00

80.00 SW74156 4 00

60,00 SW74180 4.50

31.0019.0031,0031.0031.00310066.0019,0019,0019.0019.0022.0051.0066.00310036.0036.0041,00

80.00 SW74181 9.90 96.00

6000 SW74182 4.50

180.00 SW9601 2 50

300.00 SW9602 490250,00

41.0022.0044.00

300.00180.00300.00300.00300.00300.00650.00180,00180.00180.00180.00200,00500.00650.00300.00350,00350.00400.00950.00400.00200.00430.00

• No mixing or combining prices

TV GAME CHIP SET — $7.95

Includes AY-3-8500-1 Chip and 2.010 mhz crystal(2.010 crystal — $.99 ea/AY-3-8500-1 Chip— $7.50 ea.)

1N7461N751A1N7521N7531N7541N9591N96581N52321N52341N523S1N52361N4561N4581N485A1M4O01TN40021N4003

ZENERS - DIODES — RECTIFIERS

VOLTS

500m500m500m500m

50PIV 1

100 P1V '■

200 P1V '

400 PIV 1

4/1.00 1N4005

4/1.00 1N4006

4/1.00 1N4007

4/1.00 1N3600

4/1,00 1N4148

8/1.00 1N4154

4/1,00 1N4305

28 1M4734

28 1N4735

28 1N4736

28 1N4738

8/100 1»M742

6/100 11*4744

6/1,00 1N1183

12/1.00 1N1184

12/1.00 INI IBS

12/1.00 IN1188

12/1.00 1N11B8

1000 PIV 1 AMP50 200m

12 1w

15 ti

50PIV 35 AMP

100 PIV 35 AMP

150 PIV 35 AMP

200 PW 35 AMP

400 PIV 35 AMP

10/1.006/1.0015/1,00

SCR AND FW BRIDGE RECTIFIERS

C360 ISA @ 400V SCR

C38M 35A @ 200V SCR

2N2328 1,6A @ 20OV SCR

MDA 980-1 12A @ 50V FW BRIDGE REC.

MDA 960-3 12A@20QV FW BRIDGE REC

TRANSISTORS

2N221M 341.00

ZttSZI 4/p 00

2H2Z22A 51100

2KZM9 511 00

JN23M* 4rT100

■Mi*a* 4,iioo

2N?906A 4/P 00

tl.JSIt 005.1100Ml 00

2N3704

?«OTOS

mm

ZN3711

5.11 005,11005*1005*100

t as

11 00R.»5*1004*1.004*1.00

2PM013 3*100

t

4*1004*1004*1.004*1004*1.00ZH440» 5*1004*1.004*1.004*1004*1.005*100

2NS12S

2N51342W138

2NK102H54322MS449

2H5451

S*1.00K.003*1.00S*10B

CAPACITOR

10 pf

22 pi

47 pt100 pJ220 pf470 pt

001ml0022O047mt.01 ml

1/35V15/35V22/35V.33/35V47/35V68/35V1CWJ5V

47/50V

1.0/50V

3.3/50V

4.7/25V

10/25V

10/5OV

22/25V

22/50V

47/25V

47/50V

100/25V

100/50V

220/25V

220/50V

470/25V

100W16V

220O/16V

SO VOLT CERAMICDISC CAPACITORS1-9 10-49 50-10005 .04 .03 .QOIaaF05 04 ,03 0047^F05 .04 .03 OImE.05 .04 ,03 022mF.05 .04 .03 .047^.05 .04 .035 .ImF100 VOLT MYLAR FILM12 .10 .07 022mt.12 .10 07 047rrr1.12 .10 .07 imf12 .10 07 ,22m»+20% MPPCD TANTAHIliS (SOLID)28 .23 .17 1.5/35V

28 23 .17 2.2/25V.28 .23 .17 3.3/25V

.28 .23 .17 4.7/25V.28 23 17 6.8/25V28 23 17 10/25V.28 .23 .17 15/25V

ELECTROLniCI.47/25V47/5QV1.0/16V1.0/25V10/SOV4.7/16V4.7/25V4.7/50V10/16V10725V10/5OV47/50V100/16V180/25V100/50V220/16V470/25V

CORNER

1-9 10-49 50-100

200 BYTE April 1978

Part No.

923863-R923873-R923865-R923875-R923866^R^323876-R

HQnri^cTMates with tw°rows °f °25"sq orOllulVCI dia. posts on patterns of .100"IIMDCDO centers and shielded receptaclesJUIVIr tnO Probe access holes in back. Choice

of 6" or 18" lengthPart No. No. ot Contacts924003-18R 26924003-06R 26924005-18R 40924005-06R 40 6'

924006-18R 50 18'924006-06R 50 8

Length

18"

.18"

Price

$ 5.38 ea.4.78 ea.8.27 ea.7.33 ea.10.31 ea.9.15 ea.

s

v MM PER So!der t0 pc boards for instant

HEADERS

plug-in access via socket-connectorjumpers. .025" sq. posts. Choiceof straight or right angle.No. of Posts Angle

262640405050

straightright anglestraightright anglestraightright angle

Price

$1.28 ea.1.52 ea.1.94 ea.2.30 ea.2.36 ea.2.82 ea.

il INTRA-CONNECTOR

Provides both straight and right angle tunctions. Mateswith standard .10" x .10" dual row connectors (i.e. 3m, Ainsley,etc.) Permits quick testing of inaccessible lines.Part No.: 922576-26 No. of contacts: 26 Price £6 90 ea.

il INTRA-SWITCH

Permits instant line-by-line switching for diagnostic or QAtesting. Switches actuated with pencil or probe tip. Mates withstandard .10" x .10" dual-row connectors. Low profile design.Switch buttons recessed to eliminate accidental switching.

No. of contacts: 26 Price $13.80 ea.

Part No.: IS-26

' cpTRYSTALS

Part #""

CY1ACY2A

THESE FREQUENCIES ONLYFrequency Caie/Style

1.000 MHz HC33'U

2 000 MHz HC33'U

ICY2.01

"2 010 MHz"

HC33/U

CV3ACY7ACY12ACYUACY19ACY22ACY30B

4.000 MHz5.000 MHz10.000 MHz14.31818 MHz18.000 MHz20 000 MHz32 000 MHz

HC18/UHC18/UHC18/UHC18UHC18/UHC18/UHC18/U

PFTca

$5.95S5 95$ .99!

S4.9554 95$4 95S4 95S4 9554.95$4 95

4* Si

CONNECTORS

PRINTED CIRCUIT EDGE-CARD

.156 Spacing-Tin-Double Read-OutBifurcated Contacts — Fits .054 to .070 P.C. Cards15/30 PINS (Solder Eyelet) $1.95

18/36 PINS (Solder Eyelet) $2.49

22/44 PINS (Solder Eyelet) $2.95

50/100A (.100 spacino) PINS (Wire Wrap), $6.95

25 PIN-D SUBMINATURE (RS232)

DB25P PLUG $3.25

IB25S SOCKET $4.95

'B51226-1 COVER FOR 25S/25P $1.75

MICROPROCESSOR COMMUNIS

8080A CPU

8212 8 Bit Input/Output

8214 Priority Interrupt Control

8216 Bi-Directional Bus Driver

8224 Clock Generator/Driver

8228 System Controller Bus Driver 5.95 Z80

$10.95 CDP1802 CPU $19.95

4.95 MC6800 8 Bit MPU 19.95

7.95 MC6820 Periph. Interface Adapter 7.95

4.95 MC6810AP1 128 x 8 Static RAM 5.95

5.95 MC6830L8 1024 x 8 Bit ROM 15.00

The Incredible"Pennywhistte 103'

CPU

24.95

2504251825192522252425252527252925322533

2513(2140)2513(3021)2516MM5230

CPU'S

Super B008

a at mpu

CPU

SH'S1024 Dynamic I

Hex 32 BITHe* 40 BITDual 132 Bit SSR512 Dynamic1024 DynamicDual 256 BITDual 512 BITQuad 80 BIT1024 StaticFifo16 x 4 Reg

UARTS30K Baud

ROM'SChar Gen.-upper caseChar Gen-lowercaseChar Gen.2048 BIT (552x4 on 256* 8}

$10 9526,502995

2102

2107/5280

2111

TMS4044-45NL

7489

S10I

Silt

8S99

21L02/91L02

74200

93421

UP0414(2104}

UPD416

1702A

StaticStaticStaticDynamicStaticStaticStaticStaticStaticStaticStaticStaticStatic

Dynamic 16 PinDynamicIMSFamosFamosOpen C

82S12374S287

3601

32x81024

256 * 4

TristateStaticFast

5.00

7953.95

|z7M

SK

Eprom

10.95|

2716

MK

Eprom

29.95

|MM5262 2K,»

Dynai

cRAM

3tor100j

Open Collector Bipolar

SPECIAL REQUESTED ITEMS

FCM3817

AY-3-6500-1

AY-5-91W

AY-5-9200

AY-5-9500

AY-5-2376

9374

B2S115

$5.007.50

17.50

jm.

11C90

4N33

8T2Q

8T97

HD0165

MCM6571

MCM6574

MCM6675

7205

ICM7045

ICM7207

ICM7208

)CM7209

MK5024O

DS0O26CH

TIL308

17.503.7510.50

9368

LD110/111 25.00/set95H90 11.95MC3061P 3.50MC4016 (74416) 7.50MC1408L7 8.95MC1408L8 9.9574C922 9.95

f-arAIAoNICS

Featured on February's Front Cover of Popular Electronics

Logic Analyzer Kit mom iooa m««\ »

Model 100A — -,,,-,, ,,,Si

$229.00/kit ».»«.«.. *§**m

. Analyzes any type of digital system» Checks data rates in excess of 8million words per second

• Trouble shoot TTL., CMOS, DTL, RTL,Schottky and M0S families

• Displays 16 logic states up to 8 digits wide

• See ones and zeros displayed on yourCRT, octal or hexadecimal format

• Tests circuits under actual operating conditions» Easy to assemble — comes with step-by-step construction

manual which includes 80 pages on logic analyzer operation.(Model 100A Manual - $4.95)

CLOCK CHIPS

MM5309 $9.95

MM5311 4.95

MM 531? 4.95

MM5314 4.95

MM5316 8.95

MM 5316 9.95

MM5369 2.95

MM5841 9.95

aaa 59s

$129.95 Kit Only

The Ponnywhltlle 103 is capable of recording data to and from audio taps withoutcritical speed requirements tor tile recorder and it is able to communicate rjlrecttywith another modem and terminal for telephone "hamming and communicationstor the deal. In addition, it is free of critical adjostments and is built with non-precision,readity available parts.

Data Trarwmlttlnn Method Frequency-Shift Keying, full-duplex (harl-duplex

selectable).300 Baud.

Asynchronous Serial (return to mark level requiredbetween each character)..2025 Hz for Space: 2225 Hz for mark.Transmit Channel Fnqameits . .Switch selectable: Low (normal) = 1070 space,1270 mark; High = 025 space, 2225 mark.. .-46 dbm accoustically coupled.,.-15 dbm nominal Adjustable-from -6 dbm

to -20 dbm...Frequency reference automatically adjusts toallow for operation between 1800 Hz and 2400 Hz.. ,E1A RS-232C or 20 mA current loop (receiver is

optoisofated and non-polar).. .120 VAC. single phase, 10 Watts.

Physical All components mount on a single 5" by 9"

printed circuit board, All components includedRequires a VOM, Audio Oscillate". Frequency Counter and,or Oscilloscope to align

S> the 3

rd

Hand

$9.95 each

•Leaves two hands free forworking

Clamps on edge of bench, tableor work bench

Position board on angle or flatposition for soldering or dippingSturdy, aluminum constructionfor hobbyist, manufacturer orschool rooms

Some applications are:

— Troubleshooting microprocessoraddress, instruction, and data flow

— Examine contents of ROMS

— Tracing operation of control logic

— Checking counter and shiftregister operation

—- Monitoring I/O sequences

— Verifying proper system operationsduring testing

LOTS OF POTS i£

_ Untested W square Spectral Trimpots'

"Single-turn Printed Circuit Potentiometers

GB134 3«. o,: ISSgg** 0„m - »p.. $2-95

GB135 •««SSiS& •»£•■*.«

GB136 »..-:i8S85S8jSS* -«r»*-«

(Values subject to substitution within each group.)EXTRA SAVINGS'say ■» 3 toum, m ■ m'« g» S7.49

y4" mounting holes

SWITCHES.

1-9

JMT121 SPOT on-off-on $1.95

..,.., JMT123 SPOT on-none-on 165

J°?GLE , JMT221 OPDT on-off-on 2.55

(sub-mmature) JMT223 0PDT on.none.Qn 2i15

l 5S

MPC121 SPOT on-off-on $2 05 $1.53

*$> TOGGLE MPC123 SPOT on-none-on 175 1.31

B-lrf (Printed Circuit) MPC221 OPDT on-off-on 2.65 1.97

'■■' MPC223 DPOT on-none-on 2.25 1.68

SPOT maintainedSPDT momentary

II

OPST

SPST momentary closed .35

mPSwirrH 206'4 8pind'p 49witCh 1'75

206-7 14 pin dip 7 switch

206-8 16 pin dip 8 switch

1/16 VECTOR BOARD

0 1 Hale SpacingPart No

64P44 062XXXP169P44 062XXXP64P44 062WE84P44 062WE169P44 062 WE169P84 062WE169P44 062WEC1

4.504.504.504.504.508.504.50

6 50

1.72

17.00 3.69

6.50 2.07

8.50 2.56

17.00 5.04

17 00 9 23

17.00 6.80

4.538.266.12

INSTRUMENT/CLOCK CASE

Injection molded unit.Complete'with red bezel.L4Vi" x 4* x 1-9/16*.

PARATRONICS TRIGGER EXPANDER - Model 10

Adds 16 additional bits. Provides digital delay and qualification of input clockand 24-bit trigger word. —Connects direct to Model 100A for integrated unit).

Model 10 Kit - $229.00

Model 2800$99.95

Comes with testleads, operating manualand spare fuse

3/2-Digit Portable OMM

• Overload Protected

• .3" high LED Display

• Battery or AC operation

• Auto Zeroing

• imv. iVa. 0 1 ohm resolution

• Overange reading

• 10 meg input impendence

• DC Accuracy 1% typicalRanges: DC Voltage -Q-1000V/AC Voltage: 0-1000V

Freq. Response: 50-400 HZDC/AC Current: 0-100mAReststance 0-10 meg ohmSize: 6.4" x 4*4" * 2"

Accessories:AC Adapter BC-28 $9.00Rechargeable

Batteries BP-26 20.00Carrying Case LC-28 7.50

:sr=

100 MHz 8-Digit Counter

• 20 Hz-100 MHz Range .Four -power souces, i.e.

• .6" LED Display batteries. 110 or 220V with

• Crystal-controlled timebase charger 12V with auto

• Fully Automatic Ngbter adapter and external

• Portable — comptetely 7 2-10V power supplyself-contained

i Size -

x 5.63"

1.75" x 7.38"

MAX-100 $134.95

TEfll PJij rtP

ACCESSORIES FOR MAX 100:Mobile Charger Eliminator

use power from car battery Model

Charger/Eliminator

use 110 VAC

Model 100 - CLA $3.95Model 100 — BM $9.95

CONTINENTAL SPECIALTIES

PR0T0 BOARD 6 0*« CS Proto Boards

PB100 -4.5"x6" $ 19.95

PB101 - 5.8" x 4.5" 29.95

PB102-7"x4.5" 39,95

PB103 -9"x6" 59.95

PB104-9.5"x8" 79.95

PB203 - 9.75 x 6Vz x 2% 80.00PB203A - 9.75 x 6Vz x 2% 129.95[includes power supply)

LOGIC MONITOR

for DTL, HTL, TTL or CMOS Devices

$84.95

PROTO CLIPS

14 PIN16 PIN24 PIN40 PIN

$4.504.758.50

13.75

DESIGN MATES

DM1 - Circuit Designer

$69.95DM2 - Function Generator

$74.95DM3 - RC Bridge

$74.95 •

DIGITAL STOPWATCH

• Bright 6 Digit LED Display

• Times to 59 minutes 59 59 seconds

• Crystal Controlled Time Base

• Three Stopwatches in One

Times Single Event — Split & Taylor

• Size4.5' x 2.15 x .90" (4Vi ounces)

• Uses 3 Pentite Ceils

Kit — $39.95

Assembled — $49.95

Heavy Duty Carry Case $5 95

Stop Watch Chip Only (7205) $19.95

3V2D!GIT DPM KIT

New Bipolar Unit • Auto Polarity

• Auto Zeroing • Low Power

• .5" LED • Single IC UnitModel KB500 DPM Kit $49.00Model 311P-5C-5V Power Kit $17.50

JE700 CLOCK

The JE 700 is a low cost digital dock outis a very htgh quality untt The urtrt tea-lures a simulated walnut case with dimansions of 6 x ? V x 1 It uWtfes aMAN72 high brightness readoul.MM5314 clock c(

115 VAC

KIT ONLY

$16.95

HEXADECIMALENCODER 19-KEY PAD

• 1-0

• ABCDEF

• Shift Key

• 2 Optional Keys

$10.95 each

QT PROTO STRIPS

UTtype

QT-59S0T-59B

QT-47S 470

QT-47B Pus strip

QT-35S 350

QT-35B bus Strip

QT-18S 180

OT-12S 120

Experimenter 300ExperimentOf 600

$ 9.95$10.95

$5.00 Minimum Ordar — U.S. Fundi OnlyCalifornia Residents — Add 6% Sales Tai

Spac Sheets - 25e — Sand 35« Stamp tor 1978 CatalogDealer Information Available

1978CATALOG

NOWAVAILABLE

1021-A HOWARD AVE., SAN CARLOS, CA. 94070

PHONE ORDERS WELCOME — (415) 592-8097

Advertised Prices Good Thru April

New 63 KEY KEYBOARD $29.95

-HfloTB—

AY-5-237B

tr Chip (encodes 16 Keys)tr Ctiip (encodes OS Keys)

coded SPST Keys, unattached toany kind ot P C B A very solidmolded plastic 13" x 4'suits most apohcation5

JE803 PROBE

The Logic Probe is a unit which is (or the most pan

indespensible in trouble shooting logic families

rtt. DTL. RTL CMOS It dewes the power '1

needs to operate directly oft ot the circuil under

test drawing a scam 10 mA mm It uses a MAN3

readout to indicate any of the following stales by

these symbols (H) 1 |LOW| - of PULSE) PThe a. q— Q__ |#J*

Probe can detect high frequency pulses to 45 MH; $5f.5lD iCI MI

tt can t be used at MOS levels or ctrcjit damage

II result

printed circuit board

PL 5V 1A Supply

Ttiis is a standard TTL power supply using the well kiLM309K regulator IC to provide a solid 1 AMP of current at 5volts We try to made things easy for you by providingevetything you need in one package, including the hardwaremtor only $9,95 Per KH ^/

Circle 61 on inquiry card.

BYTE April 1978

201

Whals New?

Static Programmable Memories from Dynabyte

■■

V ^ J:..U ^W ** -"^J

^llllllll

1

3

fiiiiiiiiin

^;iiiiiiii

g§H .Mi Ml .Ml Ml ^Mi Ml Mi Mi ?/%%

1

m ' .^. > u ^ } ^ Www

SS8 .—- ^^^^-w^^af^l

—-

w

c^illlilllili

i

eif'lIIIHIl

1

^VlIII IIII j

■IIIllll

Two fully static programmablememory modules for the Altair (S-100)bus are now available from DynabyteInc with access times of either 450 or250 ns. The 250 ns mode is compatiblewith 4 MHz Z-80 processors.

Like the company's 16 K dynamicprogrammable memory module, bothmodules are completely assembled,tested, burned in and guaranteed for oneyear. They feature bank select, whichallows up to eight separate banks (of upto 64 K each) to reside in the samesystem. The module may be addressed infour separate 4 K blocks along 4 K boun-daries. Each of these 4 K blocks may beindividually write protected. If an at-tempt is made to write into a protectedblock, an audible alarm will be activatedand a visual indicator will be displayedfor several seconds. The 32 K staticmodule offers 4 K boundary addressing,complete buffering and conservativethermal design.

Suggested retail prices for the newmodules are: Model 1645 (16 K, 450ns): $525; Model 1625 (16 K, 250ns): $555; Model 3245 (32 K, 450 ns):$925; Model 3225 (32 K, 250 ns): $995.Dynabyte products are available in retailcomputer stores. For more productinformation, contact Mike Watts or RickMehrlich, Dynabyte Inc, 4020 Fabian,Palo Alto CA 94303, (415) 494-7817.■

Circle 571 on inquiry card.

Intelligent Disk System

This dual floppy disk drive, intelli-gent controller and bus adapter packagefeatures an integral 8080 microprocessorand a complete repertoire of file manage-ment commands. The adapters interfacethe PerSci Model 277 disk drive andModel 1070 controller to either an Altair(S-100) compatible bus or a DigitalGroup bus. The adapter boards includesockets for 3 K of EROM and 1 K ofprogrammable memory, which are de-signed to hold a disk operating system(DOS). Two versions of the DOS, one

for Z-80 based Altair (S-100) bus com-puters and one for Z-80 based DigitalGroup computers, are available onappropriate memory chips (2708s and2114s). The DOS permits the use ofTechnical Design Labs Z-80 softwarewith the PerSci disk. TDL softwaredistributed under license includes 8 Kand 12 K BASICS, FORTRAN, and atext editor and word processor. Theentire package including dual diskdrive, controller, adapter and DOS foreither bus, and all cables and connectorsis priced at $2485. The DOS on memorychips alone is $180, and the Altair(S-100) adapter is $120 in kit formand $195 assembled and tested fromInfo 2000, 4901 Tara Ter, Culver CityCA 90230,(213) 559-7121."

Circle 573 on inquiry card.

Artec Electronics Introduces 32 K Byte Expandable Memory Board

Artec Electronics Inc has introduceda 32 K byte static programmablememory board in modular form designedfor the Altair (S-100) bus.

Designated the 32K-100, the board isspeed compatible with Zilog Z-80 basedsystems. The basic board with allsupport circuits, power regulator, 8 Kbytes of memory parts and assemblymanual sells for $290. An additional 8 Kbytes of static memory chips cost $255each, and a full 32 K memory board sellsfor $1055.

The 32K-100 requires a single +8 V3 A power supply; access time of thedirect memory accessible (DMA) com-patible board is 250 ns. DMA com-patibility allows users to access memorydirectly without going through thecentral processing unit (CPU) on themicroprocessor board.

The 32 K board, fully buffered on alladdress and data lines, also featuresbattery backup to allow operation atreduced power consumption, and a"bank select" provision so users canselect the blocks, or banks, of memorythey want to address. Contact ArtecElectronics at 605 Old County Rd, SanCarlos CA 94070, (415) 592-2740."

Circle 572 on inquiry card.

202 April 1978 © BYTE Publications Inc

NLS MS-15 MINISCOPE $ 289.00 NLS MS-15

3677 9 6"x4.5'

$10.90

3677-2 6.5" x 4.5'

$9.74

I Gen. Purpose O.I.P.Boards with Bus Pattern(or Solder or Wire Wrap.Epoxy Glass 1/16" 4*pin con spaced .156

JOG31W WoodteyA^oSepdvectaCAo 91343

Terms: VISA. MC, BAC, check, Money Order. C.O.D.. U.S. Funds Only. CA residents add 6% sales tax Mini-mum order $10 00 Orders less than $75.00 include 10% shipping and handling; excess refunded. Just in case. . please include your phone no. "Sorry, no over Hie counter idles" ^^ **'" Jun* 197*

S«nd tor our latest brochure ptlORB O'dfifS Welcome (213) 893-8202 OEM and Institutional inquiries invited

MG 10A

List $72.00

BdOOSINIW 9LSIAI

BdOOSINIW QLSW

What's New?

RAM-N-RGM from Szerlip

Szerlip Enterprises has introducedthe RAM-N-ROM board, which operateson the Altair (S-100) bus and can bewired to accept several kinds of erasableread only memory (EROM). There aresockets for 16 EROMs and 1 K ofvolatile memory on this board. Accord-ing to Szerlip, the new memory board iscompatible with the following EROMparts: 1702A, 2704, 2708, 2716, 5204,and 6834. The EROM segment has itsown switch for address select and con-trol of up to four 8080 wait states. Thevolatile memory scratchpad also has itsown switch for address select indepen-dent of the EROM.

The board has seven voltage regu-lators. Three regulators are dedicatedfor each group of eight EROMs. Oneseparate 5 V regulator is used for allother logic including the volatilememory.

The RAM-N-ROM board has circuitsthat permit a power on jump if desired.The kit comes complete with sockets forall the integrated circuits and all thematerials required including a manual(EROMs are not included). The RNR-100 sells for $117 in kit form and $168assembled from Szerlip Enterprises,1414 W 259 St, Harbor City CA 90710."

Circle 586 on inquiry card.

Wire Wrapping Boards for LSI-11

The CIP4 and CIP4/11 universal wirewrapping boards plug into the DigitalEquipment Corp standard "Omnibus"and "Q-Bus" backplanes, and provide32 columns of 60 low profile socketterminals per column with alternaterows of ground and power terminals.The boards will accommodate up to110 16 pin sockets or an equivalent inother sizes and are priced from $1.50to $2 per chip position, from GarryManufacturing Co, 1010 Jersey Av,New Brunswick NJ 08902, (201)545-2424."

Circle 587 on inquiry card.

You'll Have A Devil of a Good Time

A booklet entitled The Devil'sDungeon, and subtitled An Adult Fan-tasy In BASIC written by Dr C WilliamEngel is now being marketed by EngelEnterprises, POB 16612, Tampa FL33687. The Devil's Dungeon is a memberof a class of games which involve variousactivities in a simulated labyrinth. In thiscase, the object is to retrieve simulatedgold from a maze in an occasionallyactive volcano complete with monsters,demons and poisonous gas. The coverletter accompanying the copy we re-ceived credits inspiration for the pro-gram to simulation games such as "Dun-geons and Dragons" which are typicallydone without computers.

The program is about 120 lines long,and is written in a fairly typical ex-tended BASIC with multiple statementsper line. The documentation includes acomplete flowchart of the game withline numbers referencing the programlisting, several pages of instructions inthe use of the game, a list of the prin-ciple variables of the program andtheir uses in the program, and two listsof suggested modifications which theuser may wish to consider.

The Devil's Dungeon is a 14 pagebooklet in a GBC binding, available fromEngel Enterprises for $3.50."

Circle 588 on inquiry card.

Accounting System in BASIC

A Comprehensive Accounting Systemin BASIC by Dr John Edwards containsa BASIC source program listing whichincludes sections on accounts receivable,accounts payable, merchandise inven-tory, fixed assets inventory, payroll,financial reporting, and check registers.A special section of the book andprogram listing is provided to helpgenerate the initial database required bythe other programs. The programs aredisk file interactive and are said tocomprise an entire business accountingsystem. Floppy disks containing versionsof the programs for the Alpha Micro-systems, Altair, and Poly 88 computersare planned for later release. The book ispriced at $149.95, COD orders only,from Microcomputer Business SystemsInc, 1776 Plaza, 1776 E Jefferson St,Rockville MD 20852, (301) 468-0455."

Circle 589 on inquiry card.

Full Scale Database Management System

Micro-SEED, a rich implementationof the April 1971 report from the DataBase Task Group of CODASYL, is saidto be the first full scale database manage-ment system to operate on a micro-computer. It is compatible with SEED, asystem available on the IBM 370, DEC-system 10 and 20 and other large com-puters. The package includes a DataDefinition Language (DDL) whichchecks and compiles the data definitioninto a schema table, Data ManipulationLanguage (DML) subroutines which canbe called from FORTRAN or assemblylanguage programs to retrieve and updatethe database, and a database initiali-zation program (DBINIT). Micro-SEEDruns on the TDL Xitan Z-80 computersand requires the standard disk systemconfiguration plus an additional 48 Kbytes of memory. A user's manual issupplied with the package, along withthree months of maintenance. Developedby International Data Base Systems Inc,Micro-SEED is sold for $1250 by Tech-nical Design Labs Inc, Research Park,Bldg, H, 1101 State Rd, Princeton NJ08540,(609) 921-0321 ■

Circle 590 on inquiry card.

Word Processor in BASIC

IDSWORD1 is a word processingpackage designed to run under MITSDisk Extended BASIC. Some of itsfunctions include line and global editing,merging files, moving words or blocksof text, printing with right justification,and production of form letters ormailing labels. The package consists ofseveral programs loaded from disk underthe control of a "menu" program,enabling the system to run on a com-puter with 28 K bytes of memory. Thesystem is offered with documentation ona diskette for $250, from InteractiveData Systems, POB 290, Owings MillsMD21117, (301)486-6945."

Circle 592 on inquiry card.

204

April 1978 ©BYTE Publications Inc

S.D. COMPUTER PRODUCTS

AN EMPIRE IND CO.

P.O. BOX 28810B

DALLAS, TEXAS 75228

64K FOR. $995.00

At last! The popular Expandoram isavailable in a 16k multiple version.Similar to our 32k Expandoram, thenew Super Expandoram is offered in16k, 32k; 48k and 64k. Low powerdevices mean the very lowest powerconsumption. Allow 3-4 weeks fordelivery.

16K — $281.00 48K — $757.00

32K — $519,00 64K — $995.00

32K FOR $475 EXPANDORAM KIT 24K FOR $367.00

MEMOflY CAPACITYMEMORY ADDRESSINGMEMORY WRITEPROTECTION8K. 16K. 24K, 32K using Mos-tek MK4115 with 8K Bound-aries and protection. UtilizesDIP switches. PC board comeswith sockets (or 32K operation.Orders now being acceptedAllow 6 to 8 weeks Tor delivery.

Buy an S100 compatible 8K Ram Board and upgrade the same board to a maximum of32K in steps of 8K at your option by merely purchasing more ram chips from S.D.Sales! At a guaranteed price — Look at the features we have built into the board.

16K FOR $259.00

INTERFACE CAPABILITYControl, data and address in-puts utilizes low powerSchottky devices.POWER REQUIREMENTS+ 8VDC 400MA DC+ 18VDC400MAOC-18VDC30MADCon board regulation is provid-ed On board (invisible) refreshis provided with no watt statesor cycle stealing required.MEMORY ACCESS TIMEIS 375ns.Memory Cycle Time is 500ns.

8K FOR $151.00

Z-80 CPU BOARD KIT — $139.

CHECK THE ADVANCED FEATURES OF OUR Z-80CPU BOARD: Expanded set of 158 instructions, 8080Asoftware capability, operation from a single 5VDC powersupply, always stops on an M1 state, true sync generatedon card (a coal plus feature1), dynamic refresh and NMIavailable, either 2MHZ or 4MHZ operation, quality doublesided plated through PC board, parts plus sockets pricedfor all IC'S *Add $10 extra for Z—80A chip which allows4MHZ operation 2 — 80 chip with Manual — 29 95

S.D. SALES NEWEXPANDABLE EPROM BOARD16K or 32K EPROM $49.95 w/out EPROMAtlows you to use either 2708's for 16K ofEprom or 2716's for 32K of Eprom.KIT FEATURES:

1. All address lines & data lines buffered.

2. Quality plated through P.C. Board, in-cluding solder mask and silk screen.

3. Selectable wait states.

4. On board regulation provided.

5. All sockets provided w/board.

WE CAN SUPPLY 450ns 2708's AT $11.95WHEN PURCHASED WITH BOARD.

4K LOW POWER RAM KIT

Fully Buffered — on board regulated —reduced power consumption utilizinglow power 21L02 — 1 500ns RAMS —Sockets provided for all IC'S Qualityplated through PC board 'Add $10 for250ns PAM operation

The Whole Works - $79.95

8KLOW POWER RAM — $159.95

Fully assembled and tested.Not a kit, Imsai — Altair —S-100 Buss compatible, useslow power static 21L02-500nsfully buffered on board regulat-ed, quality plated through PCboard, including solder mask. 8 250 OS Op©r3tlOnpos. dip switches for addressselect.^ $189.95

6 DIGIT ALARM CLOCK KIT

Features: Litrontx dual 1/2" displays, Mostek50250 super dock chip, sTngle I.C. segmentdriver, SCR digit drivers. Kit includes all ne-cessary parts (except case). Xfmr optional.Eliminate the hassle. ei O OR

AC XFMR — $1.50 Case $3.50 #*4.SP9

Bowmar4Digit LED Readout ArrayFull V2" Litronix Jumbo DualDigit LED Displays

4 JUMBO 50" DIGITS ON ONE STICK!WITH COLONS & AM/PM INDICATOR

DL722-C C.DL7218C.A.

NEW FROM S.D.

"VERSAFLOPPY"™ KIT

THE VERSATILE FLOPPY DISK CONTROLLER

ONLY $149.00

Features IBM 3740 Soft Socio red Compatible S-100 BNS Compatibl* (or 2-80 or 8080. Controls up to 4 Dhva* (ainglfl ordouble ddtd). Directly controls the following drive*

1. SMugart SA400/450 Mini Floppy.

2. Shugart SA800/85Q Standard Floppy.

3. PERSCI 70 and 277.

4. MFC 700/750.

8. CDC 9404/9406.34 Pin Connector for Mini Floppy. 50 Pin Connector for StandardFloppy. Ope rat ps with modified CP/M operating system andC-Basic Compiler.

The new "Versafloppy" from S.D. Computer Products providescomplete control for many of the available Floppy Disk Drives,Both Mini and Full Size. At the heart of "Versatloppy" is thepowerful Western Digital FD1771B-1 Single Density ControllerChip. This allows a great flexibility via Control Software, listingsfor Control Software are nciudad >n the price.

FD 1771B-1 CHIP ALONE $39.95

Low Cost CassetteInterface Kit

lii'GT*

Features- Play and record K.C. Standard 2400/1200 Hzlapev 300 Baud. TTL I/O Compatible. Phase Lech Loop,Both 22 Pin Connector and 8 Pin Melex Connector.Comet partial^ assembled. Oscillator and abase lociloop pre tuned to K.C. Standard. Selector switch sendscasstrtt data or auxiliary input data to microprocessor.LEO indicates logic 1 level.

$19.95

Jumbo LED Car Clock Kit

FEATURES:

A. Bowmar Jumbo .5 inch LED array

B. MOSTEK — 50250 — Super clock chipC On board precision crystal time base.

D. 12 or 24 hour Real Time format

E. Perfect for cars, boats, vans, etc,

F PC board and all parts {less case) inc.Alarm option — $1.50AC XFMR — $1.50

$16.95

* * * *SUPER FLOPPY SPECIAL* * * *|

S. D. SALES,' VERSAFLOPPY S-100 CONTROLLER BOARD PLUSSHUGART SA 400 FLOPPY DISK DRIVE INCLUDING CABLE FOR ONLY

$479.00

MICRO-DIP $1.95

• New — Series 2300The World's SmallestCoded BCD Dual-In-LineSwitch! PC Mount2300 02G BCD 1-2-4-82300 12G BCD 1-2-4-8Compliment

• •JOYSTICKS* •

FOUR 100 K-OHMS

POTSIdeal for £2electronicgames ^~^$3.95

1702A - IK - 1.5us . .3.95 or 10/35.

2708 - 8K - 450ns 14.95

5204-4K 7.95

82S129 — IK 2.50

| 2708U 8K signetics 650ns 9.95

I MK50397 6 Digit elapsed timer . 8.95

MK50250 Alarm clock 4.99

MK50380 Alarm chip 2.95

MK50395 6 digit up/dn. count. 12.95

MK5002 4 digit counter 8.95

MK5021-Cal. chip sq. root .2.50

Thermistors 1.5K ohm . . . .5/11.00Tantalum Caps 1 mfd. 20VOC

P.C. Leads 15/S1.00

Flat Pack IC Assort 207$ 1 00

Electrical Coil

13T Type C • 10T Type C 12/$1.00

2 Transistor Audio 8/$ 1.00

Trimmer Pots

10K, 20K, 25K, Mini 10/$1.00

Disc Caps For Bypass.01 mfg - 100 WUDC

PC Leads 40/$ 1.00

New Cambion JacksPart #450-4352

Gold Plated 50/$1.00

CHOOSE $1. FREE MERCHANDISE FROM

Z-80

Programming Manual

IN DEPTH DETAIL OF

THE Z-80 CPU

MICRO-COMPUTER

S. D. SALES SPECIAL

$9.95

^Silicon Rectifier Special 1N4007. W

1 amp 1000 PN 10/$1.00

Photocell Assortrrent .... 12/$ 1.00Plastic Readout litters

Amber 6/$ 1.00

Disc Cap Assortment 60/$1.00

P.C. Lead Diodes

1N4148 IN 914 100/$2.00

1N4002-1A-100 PN 40/$1.00

MICA Trimmer

PC402 Miniature

1.5-20 P.C. P.C. Mount. .4/$ 1.00Resistor Special 22 ohm

Carbon Comp 25/$ 1.00

Resistor Assortment 1/4 W 5% &

10% PC leads 200/$ 1.50

ASTERISK ITEMS ON EACH $15 ORDER

MICROPROCESSORCHIPS

8212 - 1/0 port 3.50

8214 — P.IX ..12.95

8216 — Non Invert Bus 4.95

8224 —Clock Gen 4.95

8226 — Invert Bus 3.95

PI0 for I—80 14.95

CTC for Z—80 14.95

8228 Sys. Controller 8.20

8251 Prog. comm. interfect. . 10.958255 prog. prep, interface . 13.50

8820 Dual line Recr 1.75

8830 Dual Line Dr 1.75

2513 Char. Gen 7.50

8838 Quad Bus. Recvr 2.00

74LS138N — 1/8 decoder 99

8T97-Hex Tri-State Buffer . .. .1.25

1488/1489 RS232 1.50

TR 1602B Uart 3.95

TR 1863 Uart 8.50

FD 1771B-1 39.95

4001

19

4029

99

4002

19

4042

69

4011

19

4047

1-50

4013

32

4049

35

4016

32

4069

23

4017

95

4071

19

4020

97

4076

97

4022

97

14518

1.10

4024

75

14528

85

4027

39

14529

85

CALL IN YOUR BANKAMERICARD(VISA) OR MASTER CHARGE OR-DER IN ON OUR CONTINENTALTOLL FREE WATTS LINE:

i-800-527-3460

Texas Residents Call Collect:

214/271-0022

DEALER INQUIRIES INVITED)

NO COD's. TEXAS RESIDENTS ADD5% SALES TAX. ADD 5% OF ORDERFOR POSTAGE & HANDLING . ORDERS UNDER $10. ADD 75c HAND-LING.FOREIGN ORDERS - U. S.FUNDS ONLY! a

Circle 96 on inquiry card.

BYTE April 1978

205

Classified Ads

FOR SALE: DEC PDP-8-E. 8 K memory manage-ment, three 10 boards, programmer's panel,72 inch rack, many manuals and diagrams, tapes,all excellent, DEC original in 1974, $2000, ASR-33Teletype printer paper tape read-punch, 20 mAand 232 cables, $100 of supplies, manuals, allexcellent, $700. Two Xybek disk controllers,three Memorex 651 floppy drives, 50 disks,manuals, running, but needs work, $700. Take itall, $3000. Harry Bellmar, 77 Elizabeth Ln,S Dennis MA 02660, (617) 394-8876 after 5 PM.

WANTED: I am interested in microprocessorinstruction set simulators to run on a PDP-11 orLSI-11. Send brief description, media and cost toW Lloyd Milligan, 8604 Maywood Dr, ColumbiaSC 29209.

FOR SALE OR TRADE: Burroughs E-4000system: complete with CPU, 10 console, and magstripe card reader, with schematics and manuals.Cost $24,000 in 1970; make offer or trade forterminal (like ASR-33). Ray Vander Bok, 7121Wrenbury, Portage Ml 49081, (616) 323-2662.

FOR SALE: Most of the memory and CPU parts,blueprints and description for the IMP-16 systemby Hal Chamberlin, as described in The ComputerHobbyist. Send SASE for list and prices. LarryNeville, Rt 2, Box 65E, Talbott TN 37877.

FOR SALE: SwTPC 6800 computer with 12 Kmemory. Serial control interface, parallel inter-'face, burned-in and debugged. Also has coolingfan. With manual, in excellent shape and condi-tion, $600. James K Wendel, 2 2nd St NE, EastGrand Forks MN 56721.

FOR SALE: 50 memory chips type 21021, 25wire wrap sockets (16 pin), 23 of 14 pin wire wrapsockets, all never used, $75. Logic elements:(ten) 74LS02, (ten) LS08, (ten) LS10, (ten)LS20, (nine) LS21, (ten) LS32, (ten) LS112,six buffers 8T97. All never used, logic elementsfor $12. Gerald W Edgar, 440 Princeton SE,#6, Albuquerque NM 87106, (505) 265-8671before 7:30 AM MST.

FOR SALE: 8 K 8080a System, six parallel 10ports (add two chips for three more PIO and oneserial), 3 K PROM board (without 2708 PROM),two 4 K 450 ns low power static programmablememory, TVT-III terminal with cursor controlboard, UART board, 2 K programmable memoryboard, Half effect ASCII keyboard, HITS audiocassette interface (sockets for all chips). All boardsnew, unused, most assembled, 5 A power supply,edge connectors, card guides, case, documentation,two 60 chip wire wrap proto boards with 96wire wrap sockets. $695 ($1200 originally), needmoney for school; write for more information.David Krivoshik, 18 Newcomb, Elizabeth NJ07202.

IMSAl 8080: With 20 K memory, 2 K EROM,MIO board, works well, uses cassette mass storage,ASR 33 Teletype. Everything new condition. Costas kit, $2900. Has 22 slot mother board andsockets. Best offer. Roy Ware, 351 N Marion,Ottumwa IA 52501.

BYTES WANTED: Will buy a set containing issues1 thru 16, or more. J M Smith, 21505 Evalyn Av,Torrance CA 90503, (213) 540-0205.

FOR SALE: Pitney-Bowes embosser. Electric-keyboard, embosses plastic cards, ie: credit cards,'address cards, etc. Has optical character recogni-tion (OCR) font that can be "read" by computer'soptical scanner. Replacement cost, $7000, 1972,Model 7953. Needs repairs. $100, FOB. Holt,(517) 694-5987, days; (517) 882-5212, evenings.

WANTED: A Diablo, Qume, or any daisy wheelprinter. All leads would be appreciated. PhilipZimmermann, 490 NW 20th St, Apt 308, BocaRaton FL 33431, (305) 395-2907, home; (305)974-1700 ext 203, work, noon to 8 PM.

FOR SALE: Altair 8800a computer, assembledand tested. Hardly used, excellent condition.Includes 1024 bytes static memory and manuals.$625 or best offer. Frank Guidi. 11097 Av, 424,Dinuba CA 92618, (209) 591-3763.

WANTED: May 1977 BYTE. If you have a sparecopy or would like to sell yours, contact me.Chuck Warren, Box 147, Western Springs IL60558.

FOR SALE: Sanyo VM4155 solid state videomonitor, new, $200. J Williams, 2415 Ansdel Ct,Reston VA 22091.

FOR SALE: TDL 16 K memory board with NEC410D 4 K by 1 static programmable memories.Typical power consumption is 200 mA @ +5 Vand 200 ns access time (TDL specs). Perfectcondition, used four months, $580 and I will paypostage. Ronald Zawistoski, 12307 S 31st St,Omaha NE 68123, (402) 292-2674.

FOR SALE: Heath H8-2 parallel interface for H8or 8080 computer. New, unassembled, in originalshipping carton. Chuck Sadoian, POB 112, DinubaCA 93618, (209) 528-2284.

FOR SALE: Altair 8800a, 24 K static, expanderboard, two serial 10 lines, 88 ACR, ASR-33 withauto tape drive, iCOM microfloppy, disk BASIC,assembler, editor, monitor, all manuals — all upand running. Best offer. Harris G Bruch, POB1155, Plattsburgh NY 12901, (518) 561-1532 or561-4680.

FOR SALE: Microdata 810 minicomputer with16 K of core memory. Also, Mohawk card readerwith interface card. Serial interface to Teletype.ASR 33 Teletype. Documentation. Make offer.Bill Fujitsubo, 1506 Sandcastle Dr, Corona del MarCA 92625.

FOR SALE: IMSAl 8080 processor card, or SSMusic PROM card for 1702s, with two 3/4 K ofmemory. Both cards in A-1 shape, fully socketedwith full documentation. First $50 each takesthem. J B EHmers, 841 Kinderkamack Rd, OradeltNJ 07649, (201) 265-7065 after 6 PM.

WANTED: Small real estate investor desires topurchase the cheapest in-house system availablethat can compare previous sales and all the otherinformation usually found on Board of Realtorsmultilist cards. No financial analysis or othercomparisons are required other than that usuallyfound on the multilist book cards. It is essentialthat the system be able to compare any items, usually found on multilist cards for all propertiespresently in the multilist system and those thatsold in the last two years. Printer essential.R Broxton, POB 2337, Gaithersburg MD 20760.

FOR SALE. Morrow cassette interface board withthree tape ports, serial and parallel IO ports.Altair (S-100) bus compatible, KC standard.Assembled and checked out, asking $90. TomHamilton, 1405 Washington, Birmingham Ml48009, (313) 647-5420.

FOR SALE: Brand new COSMAC Elf-ll Micro-computer with 1 A power supply, audio ampli-fier, graphics chip, hexadecimal keyboard anddisplay. Fully assembled and burned in with RCAmanual, $100 or best offer. Joe DeRosa, 734N Greenbriar, Orange CT 06477, (203) 795-3656. ■

PROJECT STEAM 77: We are running a littlebehind schedule, but some members of The SteamAutomobile Club of America have a group-developed, low cost, VW based steam car in theadvanced stages of development. We need knowl-edgeable computer tinkers, interested in helpingdevelop a microprocessor-based automatic controlsystem *for the monotube boiler of our car. Wehave an analog system in operation, but wouldlike some digital thoughts on the problem. DougGarner, 2 Sir Francis Wyatt PI, Newport NewsVA 23606.

FOR SALE: Altair 8800b, 16 K Altair memorycard, 88-2 S*D serial IO (one port). ProcessorTech 3PplusS, 8 K BASIC, fully burned in, storechecked and tested. List $2333, asking $1960 forall. Dr John Hotchin, 18 Paxwood Rd, Delmar NY12054,(518)439-4122.

FOR SALE: Processor Technology VDM-1 videodisplay module with driver software, 4 K staticmemory board, two MITS 4 K dynamic memoryboards, and mother board with 16 sockets. Allare assembled with sockets and loving care. Allare untested and will sell cheap. Call or write:Bob Stodola, 1910 Beech wood Av, St Paul MN55116, (319) 698-2731.

FOR SALE: Assembled Altair (S-100) compatibleIMSAl UCR1 cassette interface, $39. AssembledSwTPC TVT CT-L board, $15. 8 K EMPL 1.0(a micro APL for the Z-80/8080) with user'smanual, $10 on Tarbetl cassette, $20 on papertape, North Star disk, CUTS or MITS cassette.Erik T Mueller, 36 Homestead Ln, RooseveltNJ 08555, (609) 448-2605.

FOR SALE OR TRADE: Game programs in RadioShack Level I BASIC for use in 16 K version ofTRS-80 microcomputer. Already loaded on cassettetape and ready to run. Wilt trade for other gameprograms or will sell for $10 each. Games available:Lunar Lander, Enterprise, Hunt the Wumpusand Space Attack. Alvin D Files, POB 1882, AdaOK 74820.

Readers who have equipment, software or otheritems to buy, set/ or swap shoutd send in a clearlytyped notice to that effect. To be considered forpublication, an advertisement should be clearlynoncommercial, typed double spaced on plainwhite paper, and include complete name andaddress information. These notices are free ofcharge and will be printed one time only on a spaceavailable basis. Insertions should be limited to 100words or less. Notices can be accepted fromindividuals or bona fide computer users clubs only.We can engage in no correspondence on these andyour confirmation of placement is appearance inan issue of B YTE.

Please note that it may take three or fourmonths for an ad to appear in the magazine. ■

FOR SALE: 20 Burroughs Model N7200 7 trackmagnetic tape encoders (key-to-tape units). Theseunits are new. They were purchased from themanufacturer. Data Trends Inc, a Burroughssubcontractor. They can be purchased as is (com-plete unit) for $225 or fully operational for $350(they retailed for $7500). Drawings, operatingmanuals and spare parts are available. Photographof unit will be sent on request. R Gorman, 207Colfax Av, Pompton Lakes NJ, (201) 334-5660days; (201) 835-5961 evenings.

FOR SALE: Singer 52 line printer. 100 lines perminute, 132 characters per line maximum. Con-nect via IO channel. Standard paper. Power:115 V, 60 Hz; 6 A. 30 inches wide by 27 inchesdeep by 38 inches high. Working and going,shipped "as is," put on line with minimum work.Price including manual, $650. Shipped FOB.Cinderella Boot Shop, 104 E 2nd Av, WilliamsonWV 25661, (304) 235-1995.

FOR SALE: Altair 680b microcomputer, assembledby MITS and in perfect operating order. Consistsof the 680b in case with full front panel. Mainboard has TTY port, monitor PROM and highspeed reader PROM (paper tape reader), 1 K pro-grammable memory. Extender card has three con-nectors. 16 K static programmable memory cardassembled by MITS. Universal IO card implementsone RS232C port (for CRT) and one parallel port(used with a Remex paper tape reader, not in-cluded). Runs 8K BASIC; have but . never ranassembler and text editor (both on paper tape).Kit prices alone would be $1400, best offer over$1000. B Yarkon, 1457 Broadway, Suite 305,New York NY 10036, (212) 221-6093.

FOR SALE: Assembled and working OP-80A highspeed paper tape reader, $75. Also I'm looking forBYTE issues 3, 8, 9, 10 (November 1975, Aprilthru June 1976). Holden Caine, 1 Windsor PI,Melville NY 11746, (516) 692-9512 after 5 PM.

206

April 1978 ©BYTE Publications Inc

VISIBLE

OR

INFRA RED

USED FOR CHARACTER

RECOGNITION FOR

COMPUTERS WITH

EXTERNAL CIRCUITS

MAY BE USED IN

A VACUUM,UNDER WATER,HIGH ALTITUDE

IN MAGNETIC ENVIRONMENTBECAUSE THERE IS NO

HIGH VOLTAGE ORMAGNETIC DEFLECTION

MINATURE SOLID STATE

202 VIDEO CAMERA KIT

FEATURING A. . .100 x 100 BIT SELF SCANNING CHARGED COUPLED DEVICE

THIS UNIQUE UPDATED CAMERA KIT

FEATURES THE FAIRCHILD CCD 202C IMAGE SENSOR

ADVANTAGES

• IN THE FUTUREWE WILL SUPPLY A

COMPUTER VIDEO INTERFACE CARD

• All clock voltages operate at 6Vregutring no adjustments

• Higher video output signal

• We supply the power board, so onlya 5V 1 Amp power source is needed

• The circuitry has been simplified foreasier assembly

• Two level TTL output is supplied forinterfacing

FEATURES

• Sensitive to infra redas well as visible light

• May be used for IR surveillancewith an IR light source

• Excellent for standardsurveillance work, becauseof light weight and small size

• All components mounted onparallel 33/4*x61/2" singlesided boards

• Total weight under 1 lb.

We supply all semiconductors, boards, data sheets,diagrams, resistors and capacitors, and 8MM lens.Sorry we do not supply the case, batteries and 5V supply.

$

349

00

Add $2.00 Postage and Handling

UNIVERSAL 4Kx8 MEMORY BOARD KIT$68.95

32-2102 1 fully buffered, 16 address Imes, onboard decoding for any 4 of 64 pages, standard44 pin buss, may be used with F-8 & KIM

EXPANDABLE F8 CPU BOARD KIT$99.00

featuring Fairbug PSU.1 K-of static ram, RS 232interface, documentation. 64 BYTE register

4K BASIC FOR FAIRBUG F8

on paper tape $25,00

C/MOS (DIODE CLAMPED)

4047-1.50 4012- 16 4023- .16 4046-1-45

4518- .89 4013- .29 4024- .66 4049- .34

4001- .16 4016- .74 4025- .16 4050- .34

4002- .16 4016- .29 4027- .37 4055-1.25

4006- .96 4017- .78 4028- .73 4066- .58

4007- .16 4018- 7B 4029- .77 4071- .24

4009- ,37 4019- .37 4030- .33 4076- .97

4010- .37 4020- .84 4035- .97 74C10- .22

4011- .16 4022- .85 4042- .58 74C193 1.50

2708-8K EPROM (450 nsl $10.95

2522 STATIC SHIFT RES $ 1.95

2513 CHARACTER GEN $ 6.75

2518-HEX 32 BIT SR $ 3.50

5203-2K EPROM * 4.50

21L02-1 (450 ns) * 1.35

2IQ7B $ 3-50

MK 4008P * 1.95

5280 4H DYNAMIC RAM $ -4.75

1702A UV PROM $ 4.95

5204-4K PROM $10.95

82S23 $ 1.95

AY-S-1013 UART $ 6.95

8703C TELEDYNE 3 STAGE

BINARY 8 BIT A/D CONVERTER $13.50

8O80A $11.95

™"^—■

SOLDERLESS 8 RE ADBOAHOI NG264L — 128 FIVE-TIE POINT

TERMINALS $12.75

212R —POWER BOARD $ 2.50

2248L—96 FIVE-TIE POINT

TERMINALS $ 9.75

209R — POWER BOARD $ 2.25

IC TEST CLIPSTC-14 —$4.50 TC-16 — S4.75

CTS 206-8 eight position dip switch .... $1.90CTS-206-4 four position dip switch . . , .$1.45LIGHT ACTIVATED SCR'iTQ 18. 200V 1A $ 1.10

SI LICON SOLAR CELLS2%" diamter ,4V at 500 m» $4.00

RS232 D8 25P male $2.95

CONNECTORS 0-B 25S female $3.50

FND 357 C.C. 4" $ so LED READOUTSFCS 8024 4 digit MAN 7.3" C.A, $ .85

C.C. 8" display $5.95 DL 747 C.A. .6" $1.65FND S03 C.C. .5" $ .85 FND 800 C.C. .8" $1,95FND 510 C.A. .5" $ .85 FND 807 C A. .8" $1,95DL 704 .3" C.C, $ 85

PRINTED CIRCUIT BOARD

7WATTLD 65 LASER DIODE tR SR95

2N3820PFET $ 45

2N 5457 M FET $ .45

2N2646. $ ,45

ER 900 TRIGGER DIODES 4/ $1 002N 6028 PROG UJT S 65

MINIATURE MULTI-TURN TRIM POTS100, 500, 1K,2K,5K,TOK,25K,50K.100K,200K,500K 1Meg.$75each 3/S2.00

WSU-30 Hand wire wrap tool used

to wrap, unwrap & strip 0 30 wire $5.30

VERIPAX PC BOARDThis board is a 1/16" single sided paper epoxyboard, 4"?"x6VT DRILLED and ETCHEDwhich will hold up to 21 single 14 pin IC'sor 8, 16, or LSI DIP IC's with busses forpower supply connector. ....... S4.00

MV 5691 YELLOW-GREEN

BIPOLAR LED S .90

FP 100 PHOTO TRANS S .50

RED, YELLOW, GREEN or AMBER

LARGE LEDV.2" 6/S1.00

1L-5<MCT-2)OPTO-ISOLATOR . . . S .75

MOLEX PINS 100/S1.00

lOOO/SS.OO10 WATT ZENERS 3.9, 4,7, 5.6, 8.2,

18.22.100,150 or 200V. ea. $ .60

1 WATT ZENERS 4.7, 5.6,10, 12, 15

18 or 22V ea. $ .25

MC6860 MODEM CHIP $9.95

MCM 6571A 7 x ^character qen ... $10.75

TRANSISTOR SPECIALS

2N6233-NPN SWITCHING POWER $1.95MRF-8004 « CB RF Tr*n«itor NPN $ 1-50

2N3772 NPN S. TO 3 $ 1-00

2N1546 PNP GE TO-3 $ .75

2N4908 PNP St TO 3 S 1 00

2N6056 NPN Si TO-3 Dailmctton S 1.702N5086 PNP St TO-92 . . . . . 4/S 1.00

2N404 PNP GE TO-5 5/S 1.00

2N3919 NPN Si TO-3 RF S 1.50

MPS A 13 NPN Si TO-92 3'S 1.00

2N3767 NPN Si TO-66 S .70

2N2222 NPN Si TO-18 5/S 1.00

2N3055 NPN Si TO-3 S .60

2N3904 NPN Si TO-92 \ .5/S 1.00

2N3906 PNP Si TO 92 5/S 1,00

2N5296 NPN Si TO-220 S .50

2N6109PNPS. TO 220. . S .55

2N3638 PNP Si TO-5 ....... 5/S 1.00

mmmrn

6A [ 25 A

.75 | 1.25| 2.00

■ 95M,50T 3.00

1.20 | 1.75] 4.00

DIP SOCKETS

8 PIN .22 24 PIN .4014 PIN .25 28 PIN .5016 PIN .28 40 PIN .6018 PIN .30

SANKEN AUDIO POWER AMPS

Si 1010 G 10 WATTS $ 6.80

Si 1020 G 20 WATTS. . . S13.70

St 1050 G 50 WATTS $25.90

TANTULUM CAPACITORS

TTL IC SERIES

Silicon Power Rectifiers

PRV 1A 3A 12A 50A 125A 24QA100 06 .14 .30 .80 3.70 5.00200 07 .20 .35 1.15 4.25 6.50400 09 .25 50 140 6.50 9.50600 11 ,30 .70 1.80 8.50 12.50800 15 .35 90 2.30 10.50 16.501000 .20 .45 1.10 275 12.50 20.00SAD 1024-a REOICON 1024 stage analog "BucketBrigade" ihift rtQitfr, $16.95

IN 4148 (IN914) 15/S1-00

MCA 81 OPTICAL LIMIT SWITCH $150

REGULATORS

309K $ .95 340K-12,15

723 $ .50 or 24V. .... $ 95

LM 376 .... $ -60 34QT-5, 6. 8, 12

320K-5or 15V $1.20 15,18 or 24V $ .95

320T-5. 15- 78 MG $1.35

or 24V . . $ .95 79 MG $1.35

7400- .13

7401- .13

7402- .13

7403- ,13

7404- .187406- .13

7406- .16

7407- ,20

7408- .18

7409- .18

7410- .13

7411- .18

7412- .13

7413- .38

7414- .607418- .227417- .257420- .13

7425- ;25

7426- .22

7427- .197430- ,13T432- .22

7437- .21

7438- .21

7440- .13

7441- .70

7442- .37

7445-7446-7447-7448-7450-7472-7473-7474-7475-7476-7480-7483-7486-7486-7490-7491-7492-7493-7494-7495-7496-74107-74121-74122- ,74123-74125-74128-74160-

74161- .8174153- .8174164- .9474156- .6674167- .6674161- .56

74183- .55

74184- .9674188- .9574170- 1.68

74173- 1.20

74174- .96

74175- .8574178- .7674177- 75

74180- ,65

74181- 1.90

74190- 1.00

74191- 1.00

74192- .79

74193- .79

74194- .80

74195- .85

74196- .8674279- .6574367- .6575491- .5076492- .50

1/2 Hr. DATA CASSETTES

$1.25

44 Pin Solder Tail .15.6" Connector $2.20

MM 5387AA new clock chip which will directlydrive LED's 12/24 hrs., 1 supply & alarm $5.95NO. 24 8 CONDUCTOR SPECTRA FLATCABLE 10'$1.50 100'$13.50

NO. 30 WIRE WRAP WIRE SINGLESTRAND 100/$1.40

22UF 35V 5/S1.0047UF 35V 5/S 1.0068UF 35V 5/S 1.001UF 35V 5/S 1.002.2 UF 20V5/S1 0033UF 35V 4/S 1 004.7UF 15V 5/S1.00

74LS SERIES

74LS00 - .21

74L502 - .21

74L3Q3 - .21

74LS04 - .28

74LS05 - .26

74LS08 - ,21

74LS09 - 28

74LS10 - .21

74LS11 - ,Z1

74LS13 - .44

74LS1* - .26

74LS20 - .24

74LS21 - .26

74LS22 - .28

74LS26 - .32

74LS27 - .32

74 (.530 - .26

74LS32 - .32

74LS37 - .32

74LS38 - .32

74LS40 - 26

74LS42 - .65

74LS47 - .79

74LS61 - 28

74LM4 - .28

74LS90 - 95

74LS74 - .35

74LS76 - .3674LS85 - 1.30

74LS90 - 5S

74LS82 - 55

74LSB3 - .55

74LS109 - .38

74 LS112 - .38

74LS113 - .38

74 LSI 14 - .38

74LS126 - .47

68UF 35V 4/S1.00

10UF 10V $ .25

22UF„25V S .40

15UF 35V 3/$ 1.00

30UF 6V 5/$1.00

47UF 20V $ .35

68UF15V $.50

nvnni tiricuiTs'

74 LSI 2874 LSI3274 LSI 3874LS13B74LS13974L815174LS16374LS1S674L515674LSI5774LS16074LS16174LS16274LS16374LS16874LSI6974LS17074 LSI 7374LS17474LS17G74LSI9074L519174L518274LS18374L810674 LSI 9674LS19774LS22174LS25774LS2S874LS27S74LS3SS74LS36674LS36774LS36874LS390

LM306LM311LM318LM319UM324LM339

-1.00 LM 5S6

-1.10-1.40-1.16

- .70 747

- .70 LM 1310

Circle 103 on inquiry card.

BYTE April 1978 207

fiesdep Service

To get further information on the products advertised in BYTE, fill out the reader service card with yourname and address. Then circle the appropriate numbers for the advertisers you select from the list.Add a 13cent stamp to the card, then drop it in the mail. Not only do you gain information, but our advertisers areencouraged to use the marketplace provided by BYTE. This helps us bring you a bigger B YTE.

Inquiry No.

Page No.

Inquiry No.

Page No.

Inquiry No.

Page No.

I

«

\

1125

2

3

4

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

76

33

34

35

36

37

38

39

40

41

42

43

44

45

46

AAA Chicago Computer 184

AJA Software 159

Alpha Digital 147

Anderson Jacobson 59

Apple Computer 8, 9, 105

Artec 101

Atwood Enterprises 185

Automatic Hardware Co 67

AVR Electronics 186

Barnes Electronic 184

Beckian Enterprises 185

Berg Publications 150

Beta Business Systems 181"

BITS, Inc 112, 113, 121

BYTE Back Issues 161

BYTE Bound-Volumes 48

California Applied Technology 186

California Industrial 191

Canada Systems 160

Capital Equipment Brokers 150

Celetron 103

Central Data 57

Centronics 53

Century Data Systems 154

CMC Marketing 77

Compacount Computer Sales 186

Component Sales 145

Computer Components 187

Computer Corner 181

Computer Enterprises 144

Computer Hardware Store 184

Computerland 62, 63

Computer Resources 184

Computer Systems 1 84

Computer Systems Associates 186

Computer Systems Store 181

Contemporary Marketing 164

Cromemco 1, 2

Data Search 156

Digital Group 17

Digital Research (CA) 157

DRC (TX) 193

Disc 3 186

Dynabyte 65

Electrolabs 189

Electronic Control Tech 55

Electronic Systems 195

Electronics Warehouse 187

Extensys 5

60MG-

BYTE's Ongoing Monitop ttox

47 Forethought Products 153

48 4C 104

49 Gallagher Research Inc (GRI) 155

50 H & K Components 1 56

51 DC Hayes 130

52 Hayden Books 107

53 Heath CIV, 34, 45140 Heath 186

54 Heuristics 71

135 Hewlett-Packard 142

55 Hobby World 177146 Hunter College 186

56 Integrand 64

57 Integrated Circuits Unltd 197

58 International Data Systems 96

59 Ithaca Audio 154

60 Jade 199

61 James Electronics 200, 201142 J & E Electronics Sales 186

129 JimPakCIII

5 Leland Sheppard Inc 153

62 Logical Services 162

63 Meca 16

64 Micro Diversion 130

66 Micropolis 140

67 Micropolis 141

68 Microprogramming Inc 189

69 Microware 89

71 Mikos188

72 Mini Micro Mart 109145 Mini Micro Mart 167

* MISCO, Inc 184133 mpi 170

75 MSD 21

130 National Corporate Sciences 46

77 National Multiplex 111

127 NCC78 117

78 Netronics 163

65 Newman Computer Exchange 151

80 North Star Computer 25, 31

* Ohio Scientific 36, 37, 38, 39

81 Oliver Advanced Engineering 158

82 Osborne & Associates 119

83 Owens Associates 181

84 PAIA 161

79 People's Capitalism 184

128 Per-Comp '78 84, 85

85 Per Com Data 24

86 Peripheral Vision 79

87 PerSci61

132 Personal Software 170

88 Personal & Small Business Cmptr Expo-South 64

89 Philectronix Company 181

* PolyMorphic Systems 41

90 Priority I 203

91 Processor Tech 7, 22, 23'92 Quest Electronics 190

93 S-100 155

94 Scelbi15

95 Scelbi/BYTE Primer 135

* Scientific Research 47, 83

96 SD Computer Co 205

97 Seattle Computer Products 143

98 Silver State Ent 184

99 Ed Smith's Software 1 58

100 Smoke Signal Broadcasting 73131 TRS-80 Software Exchange 55

101 Software Records 160

102 Solid State Music 87

103 Solid State Sales 207

104 Solid State Time 166

105 Southwest Tech Products Corp CI I73 SSI 157

106 Structured Systems Group 165

107 Sunshine Computers 139

108 Synchro Sound 75, 146

109 Szerlip138

110 Tarbell Electronics 19

111 Technical Design Labs 43

112 Technical Systems Consultants 9723 TEI77

113 Texas Instruments 11141 Touchstone 186

114 Trace Electronics 69

115 Trenton Computer Festival 175

116 US Robotics 181

117 Vamp 181, 184

118 Vandenberg Data Products 149

119 Vector Graphic 26, 27

120 Vista Computer 98,99143 Whales 131

121 Woodtron Ltd 138

122 Worldwide Electronics 181

123 WWW Enterprises 159

124 Xitex 152134 Xybek142126 Zeta Systems Canada Ltd 181

* Correspond directly with company.

ARTICLE

Article No.

1 Rehm: The TDL System Monitor Board: A Writer's View

2 Butterfield: An Introduction to Tables

3 Bryant-Swasdee: How to Multiply in a Wet Climate: Part 1

4 Noyce: Optimization: A Case Study

' 5 Fylstra: The Radio Shack TRS-80: An Owner's Report

6 Kent: The Brains of Men and Machines: Part 4

7 Foster-Southern: A College Microcomputer Facility

8 Ciarcia: Tune in and Turn On! Part 1

9 Barbour: User's Report: The SOL-20

10 Webster: Robot Simulation on Microcomputers

11 Wilber: CIE Net: Part 3: Other Considerations

12 Kellerman: Serendipitous Circles Explored

PAGE

10

18

28

40

49

66

90

114

126

132

168

178

208

April 1978 © BYTE Publications Inc

"Brains" Top January BOMB

The results of the January 1978 BOMBtally were about as certain biased observersmight have expected: Part 1 of Ernie Kent's'The Brains of Men and Machines" (page11) was first place in the reader poll, with atotal score 2.8 standard deviations abovethe mean of 13 articles. Prof Kent willreceive a $100 bonus. Second place and a$50 bonu#s go to Peter Jennings' 'TheSecond World Computer Chess Champion-ships" (page 108) which had a score 0.6standard deviations above the mean. TheJanuary poll standard deviation was 21%of the mean. ■

\

EITI

READERSERVICE

April 1978

4148

For fastest service transfer mailer label from wrapperto coupon provided at the right. Requests cannot behonored unless zip code is given. This card valid for90 days only.

NOTE—If label is missing or defaced fill out coupon carefully—PLEASE PRINT—this is only way to get requested materialto you.

Name

(Title)

(Company)

Address

City

_State _

.Zip.

1 21 41 61 81 101 121 141 161 1

2 22 42 62 82 102 122 142 162 1

3 23 43 63 83 103 123 143 163 1

4 24 44 64 84 104 124 144 164 1

5 25 45 65 85 105 125 145 165 1

6 26 46 66 86 106 126 146 166 1

7 27 47 67 87 107 127 147 167 1

8 28 48 68 88 108 128 148 168 1

9 29 49 69 89 109 129 149 169 1

10 30 50 70 90 110 130 150 170 1

11 31 51 71 91 111 131 151 171 1

12 32 52 72 92 112 132 152 172 1

13 33 53 73 93 113 133 153 173 1

14 34 54 74 94 114 134 154 174 1

15 35 55 75 95 115 135 155 175 1

16 36 56 76 96 116 136 156 176 1

17 37 57 77 97 117 137 157 177 1

18 38 58 78 98 118 138 158 178 1

19 39 59 79 99 119 139 159 179 1

20 40 60 80 100 120 140 160 180

MENTION

81 201 221 241 261 281 301 321 341 361 381 401 421 441 461 481 501 521 541 561 581 601 621 641

82 202 222 242 262 282 302 322 342 362 382 402 422 442 462 482 502 522 542 562 582 602 622 642

83 203 223 243 263 283 303 323 343 363 383 403 423 443 463 483 503 523 543 563 583 603 623 643

84 204 224 244 264 284 304 324 344 364 384 404 424 444 464 484 504 524 544 564 584 604 624 644

85 205 225 245 265 285 305 325 345 365 385 405 425 445 465 485 505 525 545 565 585 605 625 645

86 206 226 246 266 286 306 326 346 366 386 406 426 446 466 486 506 526 546 566 586 606 626 646

87 207 227 247 267 287 307 327 347 367 387 407 427 447 467 487 507 527 547 567 587 607 627 647

88 208 228 248 268 288 308 328 348 368 388 408 428 448 468 488 508 528 548 568 588 608 628 648

89 209 229 249 269 289 309 329 349 369 389 409 429 449 469 489 509 529 549 569 589 609 629 649

90 210 230 250 270 290 310 330 350 370 390 410 430 450 470 490 510 530 550 570 590 610 630 650

91 211 231 251 271 291 311 331 351 371 391 411 431 451 471 491 511 531 551 571 591 611 631 651

92 212 232 252 272 292 312 332 352 372 392 412 432 452 472 492 512 532 552 572 592 612 632 652

93 213 233 253 273 293 313 333 353 373 393 413 433 453 473 493 513 533 553 573 593 613 633 653

94 214 234 254 274 294 314 334 354 374 394 414 434 454 474 494 514 534 554 574 594 614 634 654

95 215 235 255 275 295 315 335 355 375 395 415 435 455 475 495 515 535 555 575 595 615 635 655

96 216 236 256 276 296 316 336 356 376 396 416 436 456 476 496 516 536 556 576 596 616 636 656

97 217 237 257 277 297 317 337 357 377 397 417 437 557 577 497 517 537 557 577 597 617 637 657

98 218 238 258 278 298 318 338 358 378 398 418 438 458 478 498 518 538 558 578 598 618 638 658

99 219 239 259 279 299 319 339 359 379 399 419 439 459 479 499 519 539 559 579 599 619 639 659200 220 240 260 280 300 320 340 360 380 400 420 440 460 480 500 520 540 560 580 600 620 640 660

EITE

WHEN WRITING TO ADVERTISERS

QOIVIE3: BYTE's Ongoing Monitor Box

BYTE's BOMB is your direct line to the editor's desk. Each month,the two top rated authors receive bonuses based on your votes. Touse this card, refer to the list of authors, titles, and correspondingBOMB article numbers on the opposite page. Then rate each article ona scale from 0 to 10 below by circling the appropriate rating numberto the right of each BOMB article number. Your feedback helps usproduce the best possible magazine each month.

4148

BOMBArticleNumber Poor

Rating

Fair

Good Very Good Excellent Wow!

1

0

I 2

3

4

5

6

7

8

9

10

2

0

1 2

3

4

5

6

7

8

9

10

3

0

1 2

3

4

5

6

7

8

9

10

4

0

1 2

3

4

5

6

7

8

9

10

5

0

2

3

4

5

6

7

8

9

10

6

0

1 2

3

4

5

6

7

8

9

10

7

0

1 2

3

4

5

6

7

8

9

10

8

0

1 2

3

4

5

6

7

8

9

10

9

0

1 2

3

4

5

6

7

8

9

10

10

0

1 2

3

4

5

6

7

8

9

10

11

0

1 2

3

4

5

6

7

8

9

10

12

0

1 2

3

4

5

6

7

8

9

10

13

0

2

3

4

5

6

7

8

9

10

14

0

1 2

3

4

5

6

7

8

9

10

15

0

2

3

4

5

6

7

8

9

10

16

0

1 2

3

4

5

6

7

8

9

10

17

0

2

3

4

5

6

7

8

9

10

18

0

I 2

3

4

5

6

7

8

9

10

19

0

2

3

4

5

6

7

8

9

10

20

0

1 2

3

4

5

6

7

8

9

10

Comr

nents

BITE

SUBSCRIPTIONS

4148

For a subscription to BYTE, please complete this card.

Name.

Address

City

State

Zip

Country

USA

CanadaMexico

□ 1 year

□ $15

□ $17.50

D 2 years

□ $27

D $32.00

□ 3 years

□ $39

□ $46.50

D $25 Europe (air freight) payment enclosed□ $25 Elsewhere (surface mail) payment enclosed(Air mail rates available upon request)

Please remit in US funds- Thank you.

D Check enclosed (Bonus: one EXTRA issue

— receive 13 issues for the price of 1 2)

DCard No.

Q

D Bill me (US only)

Expiration date.

Four digits above name — Master Charge only

Signature Date_

Please allow eight weeks for processing.

Thank you

PLACE

STAMPHERE

CITE

READER SERVICE

PO Box 319Dover NJ 07801USA

c 2 ^

> a od

D o«g x

=1 VI

z

o

0000UJ

C

CD

n

H

o

z

en

> #

o

o

CO

O ui

zo

-occr

o'

CDCJV

O

D

t/i

5"n

PLACESTAMPHERE

J5J"™"™g One-Stop

SZKSfg Component CenterNEW!.'EXPANDED PRODUCT LINE.

'.1nti

■4(1.'

,'.il)8

>4<I0

•483

M'Ct

H25IDM8093I

LM301V LM567V

LM307V LM723N

LM309K LM739N

LM3HV LM741V

LM320K 5 (7905) LM747N

LM320T 5 (7905) LM1458V (5558V

LM320T 12(79121 LM14B8N

LM320T 15(79151 LM1489N

CAPACITORSAluminum Electrolytic

Imld 50V lOOmfd 50V

P.C. POTENTIOMETERS

220m<d 50V470mfd 50V10Q0m*d 26V

SmgloTurn

15-Turn

840P1K

B30P1K

B40P5K

830P5K

840P10K

830P10K

830P5QK

B40P100K

830P100K

840P1meg

830P1me9

Low Power TTL Schottky

LM340T 5 (7805) XP.22Q6LM340T 12(7812) CA3O80LM340T 15(7815) CA3130LM556V CA3140

LM390ON (CA3401)

MICROPROCESSOR

74LS0074LS02Ml [,0474LS0874LS1074LS20

'4LS30 74LS90

4020

.1I'I.':(■lll.M

.1;.,.!«,.104'I

4L5 73 74LS109

'4LS74 74LS123

'4LS75 74LS136

'4LSB3 74LS138

'4LS85 74LS151

'4LS86 74 LSI 75

(LS367

Z80

8080A

8212

8224

8228

6800

6810

6830L8

AV 5 1013

2513/2140

2102

21L027489

MM !,-.■(>.'

1702A

82S23

2708

DM8835'

N8T97

Display LEDS Discrete

MAN2 XC556 Bed

DL704 XC556 Green

DL707 XC556 Vollow

Ceramic Disc

lOOpf 50V 01mfd 50V

220pf 50V 022mfd 50V

330pl 50V 047mtd 50V

470pt 50V .Imfd 50V

Dipped Tantalum

Polyester Mylar

0Q15mld TOOV 047mrd 100V0O22mfd 100V Imld 100V

,0047mtd 100V .22mtd 100VOlmfd 100V

CRYSTALS

A CV2A CV12A

FUSE HOLDERS

IN4148MIN4001IM4004IW4007

TRANSISTORS

C106B1 2N3055

2N2222A 2N3904

2N2907A 2N3906

MJE2955 2N5129

CONNECTORS

DB25P Plug DB25S Sock

DATA BOOKS*

7400/74LS Data BookCMOS/Linear Dala BookMicfOO'ocBswr'LED Data Book•JIM PAK Product* ornv

HEAT SINKS'/,W RESISTOR ASST.

A new component product line of over 260 items developed for the independent dealer. Guaranteed, nationally advertisedproducts. Complete JIM-PAK program includes national advertising, direct mail programs, store display racks, stockrotation plan and return policy. For dealer information, write or call JIM-PAK, 1021 Howard Avenue, San Carlos, CA94070 (415) 592-8097.

SEE JIM-PAK AT IMEWCOM '78-MAY 2, 3 and 4, 1978 AT THE LAS VEGAS HILTON•••••••••••••••••••••••••••••••

SEE YOUR LOCAL JLS DEALER TODAY...

ALABAMA

Mobile Lata

yette Radio Electronics

ARIZONA

Fountain Hi/is

P & C Communications

Tempe

Computerworld Inc.

Yuma

Yuma Electronics

CALIFORNIA

Bellflower

Earl's Hobby Shop

Berkeley

Al Lasher Electronics

F on tana

Fon tana Electronics

Fullerton

Orvac Electronics Inc.

Long Beach

Scott Radio Supply

L os Angeles

Electra Imports Inc.

Mission Viejo

rower Electronics Corp.

Monterey

Zackit

Oceanside

Electronic Center

Palo Alto

Zack Electronics

Pasadena

Dow Radio Inc.

Sacramen to

The Radio Place

Sac ram en to

Zackit

San Carlos

J& H Outlet Store

San Diego Radio

Shack A.S.C. Mira Mesa

San Francisco

Zack Electronics

San Jose

Quemen r Electronics

San Luis Obispo

Mid-State Electronics

Sunnyvale

Sunnyvale Electronics

Valle/o

Zackit

Walnut Creek By

e Shop Computer Store

CANADA

Alberta (Calgary}

The Computer Shop

Ontario (Witlowdale)

Home Computer Cen tre

COLORADO

Aurora

Com Co Electronics

Steamboat Springs A

orm's TV & Electronics

CONNECTICUT

Bridgeport

Computer World

FLORIDA

Lakeland Lakela.

nd Specialty Electronics

Orlando Altair Com

outer Center of Orlando

Tampa

AMF Electronics

Tampa

Microcomputer Systems

FRANCE

Paris

Computer Boutique

GEORGIA

Atlanta

Atlanta Computer Mart

HAWAII

Aiea

Delcoms Hawaii

Honolulu i

itegrated Circuit Supply

IDAHO

Idaho Falls

Audiotronics

ILLINOIS

Evanston

Tri-State Electronics

Evanston

Itty Bitty Machine Co.

Groveland

Moyer Electronics

ILLINOIS (Cont

d)

Mount Prospect

. Tn-State Electronics

Oak Park

Spec Ironies

Schaumburg

Data Domain

INDIANA

East Chicago

Aero Electronics

Hammond

Quantum Computer Works

IOWA

Indian oia

Electron!* Limited

KENTUCKY

Lexington

Radio-Electronic Equipment Co.

LOUISIANA

Baton Rouge

Davis Electronics Supply

MARYLAND

Baltimore

Computer Workshop of Baltimore

Baltimore

Everything Electronic

Lava/e

J & M Electronics

Rock vtHe

Computer Workshop

Towson

Computers, Etc.

MASSACHUSETTS

Medford

Tufts Electronics

North Adams

Electronics Supply Center

Waltham

Computer Mart Inc.

MICHIGAN

Grand Rapids

Micro Computer World

Lansing

Fulton Radio Supply

Mt. Clemens

The Computer Store

MINNESOTA

Duluth

Northwest Radio of Duluth

Eagan

Computer Room Inc.

MISSOURI

El Dorado Springs Beck man Electronics

Parkville Computer Workshop of Kansas City

MONTANA

Billings

Conley Radio Supply

NEBRASKA

L incoln

Altair Computer Center

Omaha

Omaha Computer Store

NEVADA

Las Vegas

Century 23

NEW JERSEY

Bayville

A. R. S. Communications Services

Cherry Hill

Computer Systems Unlimited

Hoboken

Hoboken Computer Works

Pompton Lakes

Computer Corner

of New Jersey

Ramsey

Typetronic Computer Store

NEW YORK

Albany

Fort Orange Electronics

New York

The Computer Stores Inc.

New York

Computer Mart of New York

Troy

Trojan Electronics

White Plains

The Computer Corner

NORTH CAROLINA

Durham

Futureworld

Greensboro

Byte Shop

Raleigh

Byte Shop of Raleigh

OHIO

Bucyrus

Mead Electronics

Cincinnati

Digital Design

Dayton

Altair Computer Center

Reynoldsburg

Universal Amateur Radio

Steubenville

Hosfelt Electronics

OKLAHOMA

Guymon

Sound Service

Oklahoma City

Bits, Bytes & Micros

OREGON

Beaver ton

Altair Computer Center

Coos Bay

Herrick Electronix

Ontario

Miller Electronics

PANAMA

Panama City

Sonitel. S.A.

PENNSYLVANIA

Hershey

Microcomputer Systems Inc.

Murraysville

Computer Workshop

of Pittsburgh

RHODE ISLAND

Cranston

Jabbour Electronics City

Pawtucket

Jabbour Electronics City

SINGAPORE

Inter Trade (PTE) Ltd.

SOUTH CAROLINA

No. Charleston

Technical Services Inc.

TENNESSEE

Knoxville

Byte Shop

Memphis Sere-Rose & Spencer Electronics

Oak Ridge

Computer Denn

TEXAS

Dallas

Computer Shops Inc.

Houston

Altair Computer Center

Houston

Interactive Computers

San Antonio

Sherman Electronics Supply

VIRGINIA

Alexandria

Computer Hardware Store

Alexandria

Computers Plus

Charlottesville

Lafayette Electronics

Richmond

Computers- To-Go

Springfield

Computer Workshop

of North Virginia

Virginia Beach

Heathkit Electronics Center

WASHINGTON

Bellevue

Altair Computer Center

Longview

Progress Electronics

Pasco

Riverview Electronics

Seattle

Empire Electronics

Spokane

Personal Computers

WEST VIRGINIA

Morgan town

The Computer Corner

Morgan town

Electro Distributing Co,

Circle 129 on inquiry card.

'

a computer

can get awfully

bored when it cant

communicate!

Be sure to use couponon page 34 of this

magazine to order your

FREE

Heathkit Catalog!

!».,—<^!fa . ,

£

wHPwl

FREE

!

iy us? Becausewe make peripheralkits.

some of the bearound. Our H9 isan excellent eample. It's a com-plete ASCII key-board/12" CRT

terminal that was designed forhobbyists just like you. It has alot of really great features andresolution that's just beautiful.Right on out to 80 characters perline. (Something most outboardTV monitors won't match!) Andwith built-in selectable inter-facing options, the H9 will"converse" with just about anycomputer going!

The H10 is another of our "univer-sal" peripheral kits. Completelyself-contained (it even has itsown power supply), this ruggedpaper tape reader/punch givesyou quick, convenient mass stor-age and internal tape duplicationcapability. It's easy to build and,with its heavy-duty steppermotor, sensitive Darlington phototransistors and precisionpunches, the H10 is a source of re-liable data loading andstorage - time after time.

Best of all, priced at $530 and$350 respectively; the H9 andH10 kits cost less than mostother comparable peripheralthe market today!

computer can get awfullybored when it can't comnncate. Start commuiiyour igh an e.

al from Heath!

System Engineeredfor Personal Computing

HoHlO

Circle 53 on inquiry card.