Byte Magazine Volume 03 Number 02 - Hardware Projects

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)

6800/2 IS HERE

The 6800/2 uses our new A2 processor board with socketspace for 8K bytes of ROM/PROM. This makes it possibleto use the 6800 in applications where ROM programs areuseful without purchasing an expensive PROM accessoryboard. The A2 board has a DIP switch selector that allowsyou to replace any 8K block of memory above the RAMmemory that extends to 32K with memory external to theprocessor board itself. This lets you develop special pro-grams that will later be put in PROM in a normal RAMmemory card where it can be modified and debugged. TheA2 board has a crystal controlled baud rate oscillator and aseparate clock driver oscillator whose frequency may bechanged with a programming resistor. The A2processor board gives you the maximum possible flexibilityin setting up a computer system.

SWTBUG® Monitor-

The 6800/2 is supplied with our new SWTBUG® monitor.This new monitor is software compatible with the earlierMikbug® monitor used in the 6800. All major subroutineentry points are identical. SWTBUG® features a residentMF-68 Minifloppy disk boot, single level breakpoints,vectored software interrupt, generation of punch end oftape formatting and automatic interface configuring foreither theMP-C control interface or MP-S serial interface.

AC IA Type Interface-

The 6800/2 uses our MP-S serial interface. This RS-232 and

20 Ma. TTY compatible interface may be configured to op-erate serially at the following baud rates: 110, 150,300,600, 1200, 2400, 4800 and 9600. Complete interrupt con-trol is available through the user's software.

4K Static MEMORY-

The 6800/2 comes wth 4K of static RAM memory on ourMP-8M board. The memory may be expanded to 8K by theaddition of eight more memory chips. No additional partsare needed. Full buffering of all data, address and controllines is a standard feature. Memory expansion to 32K ofcontinuous RAM memory and up to a 48K mixture ofROM/RAM is possible with this system.

accessory boards-do you have a special job? Our accessory boards make itpossible to use the 6800/2 for almost any type of computerapplication. We have our MPT interrupt timer with soft-ware interrupt selectable output. Our MP-N calculator inter-face that allows you to do arithmetic functions in hard-ware. Our MP-R EPROM programmer that programs andverifies EPROMs right in the machine—and more coming.

6800/2 Kit $439.00 ppd Cont. U.S.

6800/2 Assembled $495.00 ppd Cont. U.S.

®

SWTBUG is a registered trademark of Southwest Tech. Prod. Corp.Mikbug®is a registered trademark of Motorola, Inc.

SOUTHWEST TECHNICAL PRODUCTS CORPORATION

219 W. RHAPSODY

SAN ANTONIO, TEXAS 78216

Circle 110 on inquiry card.

You can now have the industry's

finest microcomputerwith that all-importantdisk drive

YOU CAN GET THAT

ALL-IMPORTANT SOFTWARE,

TOO

Loading your programs and fileswill take you only a few seconds withthe new Cromemco Z-2D computer.

You can load fast because theZ-2D comes equipped with a 5"floppy disk drive and controller. Eachdiskette will store up to 92 kilobytes.

Diskettes will also store your pro-grams inexpensively—much more sothan with ROMs. And ever so muchmore conveniently than with cas-settes or paper tape.

The Z-2D itself is our fast, rugged,professional-grade Z-2 computerequipped with disk drive and con-troller. You can get the Z-2D witheither single or dual drives (dualshown in photo).

CROMEMCO HAS THESOFTWARE

You can rely on this: Cromemcois committed to supplying qualitysoftware support.

For example, here's what's nowavailable for our Z-2D users:CROMEMCO FORTRAN IV COM-PILER: a well-developed and power-ful FORTRAN that's ideal for scien-tific use. Produces optimized, relo-catable Z-80 object code.CROMEMCO 16K DISK BASIC: apowerful pre-compiling interpreterwith 14-digit precision and powerfulI/O handling capabilities. Particularlysuited to business applications.CROMEMCO Z-80 ASSEMBLER: amacro-assembler that produces relo-catable object code. Uses standardZ-80 mnemonics.

The professional-grade microcomputerfor professionals

ADVANCED CONTROLLER CARD

The new Z-2D is a professionalsystem that gives you professionalperformance.

In the Z-2D you get our well-known 4-MHz CPU card, the provenZ-2 chassis with 21-slot motherboardand 30-amp power supply that canhandle 21 cards and dual floppydrives with ease.

Then there's our new disk con-troller card with special features:

• Capability to handle up to 4disk drives

• A disk bootstrap Monitor in a1K 2708 PROM

• An RS-232 serial interface forinterfacing your CRT terminalor teletype

• LSI disk controller circuitry

Z-2 USERS:

Your Z-2 was designed with the futurein mind. It can be easily retrofittedwith everything needed to convert toa Z-2D. Only $935 kit; or $1135 forassembled retrofit package.

ra

Cromemco

Shown with optionalbench cabinet

We're able to put all of this in-cluding a UART for the CRT interfaceon just one card because we've takenthe forward step of using LSI con-troller circuitry.

STORE/FACTORY

Contact your computer store orCromemco factory now about theZ-2D. It's a real workhorse that youcan put to professional or OEM usenow.Kit: Z-2D with 1 disk drive

(Model Z2D-K) $1495.

Assembled: Z-2D fully assembled

and tested (Model Z2D-W) $2095.

Additional disk drive

(Model Z2D-FDD) $495.

SOFTWARE

(On standard IBM-formatsoft-sectored mini diskettes)

16K BASIC (Model FDB-S) $95

FORTRAN IV (Model FDF-S) $95

Z-80 Assembler (Model FDA-S) $95

Circle 34 on inquiry card.

^^__^B Specialists in computers and peripherals

2400 CHARLESTON RD., MOUNTAIN VIEW, CA 94043 • (415) 964-7400

BYTE February 1978 1

The easy way to get disk storage,FORTRAN IV, and other programming power

Control up tofour 8" drives

Control up tothree 5" drives

CRT terminalinterface

Functionswitches

LSI circuitry

1 kilobytePROM

Here's a new disk controller anddisk drive combination that will setyou up for truly powerful disk storage.

The new controller is extremelyversatile. You can use it with eitherour new 5" single disk drive or our8" dual disk drive. In fact, the con-troller will interface up to three 5" orfour 8" drives.

That means you can have enor-mous disk storage since the new con-troller puts 92 kilobytes on each sideof a 5" diskette and 256 kilobytes onan 8" diskette. Recording is in soft-sectored IBM format.

FORTRAN IV AND MORE

You can get still more Cromemcodisk operation aids. For example, wealso offer FORTRAN IV for our com-puter users.

And as in so many things, we arethe first manufacturer in the field tooffer this advanced program for theZ-80 /i.P.

Besides FORTRAN IV we also offerour special BASIC (14-digit precision),our Z-80 Assembler, and now an en-tertainment diskette with over a doz-en of our Dazzler® games.

KEYBOARD CONTROL

The new Model 4FDC disk con-troller (supplied in our Z-2D) is forour Z-2 computer or any S-100 buscomputer using our Z-80 CPU card.

You should also know about theseother capabilities of the new con-troller:• Its PROM-resident Disk Operating

System (RDOS) gives you key-

! BYTE February 1978

Single 5"disk drive

Dual 8"disk drive

board control of your disk driveand also includes a bootstrap toload our powerful CDOS diskoperating system supplied on allCromemco diskettes.

• The controller will interface yourCRT terminal through its RS-232serial port. May save you an I/O.

• It has 5 programmable intervaltimers.

• It has vectored interrupts.

• And it has an 8-bit parallel inputport and an 8-bit parallel outputport.

LOOK TO THE FUTURE

This new disk controller equipsyou for the future as well as for now.Not only can you now have verylarge storage, but the features of thecontroller and the standard IBM for-mat protect you from early obso-lescence.

STORES/FACTORY

This new card and the disk drivesare in production and available.

So contact your computer storeor the factory today and you can havethe power of FORTRAN IV and alarge memory right away.

PRICES

Model 4FDC-K Disk Controller kit $ 395

Model 4FDC-W Disk Controller assembled .. .$ 595Model WFD 5" single disk drive assembled . .$ 495

Model PFD-K 8" dual disk drive kit $1995

Model PFD-W 8" dual disk drive assembled . .$2495Disk drives are complete withpower supply, case and cables.

SOFTWARE

Purchasers of Cromemco computersor drives may purchase software on 5"or 8" diskettes as follows:

5" 8"

Diskette DisketteModel Model Price

FORTRAN IV FDF-S FDF-L $95

Z-80 Assembler FDA-S FDA-L $95

16K BASIC FDB-S FDB-L $95

Dazzler® games FDG-S FDC-L $95

ra

Cromemco

^^_^^B Specialists in computers and peripherals

2400 CHARLESTON RD., MOUNTAIN VIEW, CA 94043 • (415) 964-7400

Circle 34 on inquiry card.

r*

1

m m m #■«

k

EITi February 1978

"\

In the Queue

Volume 3 Number 2

Foreground

PUBLISHER

Virginia lYsihkc Londner

EDITOR IN CHIEF

6

A PENNY PINCHING ADDRESS STATE ANALYZERHardware—Ciarcia

Carl T Hclmcrs lrPRODUCTION MANAGERJudith Havc>

35

TAKING THE FIRST STEPHardware—Bober

ADVLRTISINC, DIRLCTORDt-hrj BoudrleauCIRCULATION MANAGER

42

SIMULATION OF MOTION: Extended Objects, Applications for BoatingSoftware—Smith

Gregory Spil/faclenEDITORSChristopher P Morgan

52

ADD A $3 LIGHT PEN VIDEO DISPLAYHardware—Webster- Young

Blaise W LiffickCO-OP EDITORScull Morrow

62

SWEETS FOR KIM

So ftware—Fyls tra

PRODUCTION EDITORSKaren GregoryNancy Salmon

114

A MINIFLOPPY INTERFACE

ADVERTISINGNorccn BardslcyPRODUCTION ASSISTANT

Mass Storage Subsystems—Allen

Background

Cheryl Hurd

CIRCULATION ASSISTANTPamela R Heaslip

14

CIE NET: Part 1, The Beginnings

Personal Computing Networks—Wilber

DEALER SALESGinnic F BoudricauTRAFFIC MANAGER

25

SOME MUSINGS ON BOOLEAN ALGEBRATutorial—Bunce-Schwartz

Edmund D Kelly |r

ART

Wai Chiu Li

80

PERSONAL COMPUTERS IN A COMMUNICATIONS NETWORKSys terns —S tein wedel

Dorothy Sh.umjnskyEllen ShamonskyBOOK PUBLISHER

84

THE BRAINS OF MEN & MACHINES: How the Brain Controls OutputsRobotics—Kent

Christopher E SmithEXLCUTIVE SECRETARIESI Ml Calllhan

162

PROGRAMMING ENTOMOLOGYSoftware—McGath

Patricia ClarkLaura A HansonRECEPTIONIST

168

ASIMPLE DIGITAL FILTERHardware—Grappel

Nucleus

Jacqueline Earnshaw

CLUBS AND NEWSLETTERSDavid Wo/mjkDRAFTINGDouglas GlenStephen Krusc

4

In This BYTE

Lynn MaloBill Morcllo

5

About the Cover

Dorothy Shamonsky

19

Complete ASCII

TYPOGRAPHY

Custom Marketing Resources Inc

20

Letters

Goodway Graphics

30

Languages Forum: The Case for a "Compiler Interpreter"APL Character Representations

PHOTOGRAPHYEd CrabtreePRINTING

60

Letter from the Publisher

Runiford Press

NEW PRODUCTS EDITOR

93

BYTE's Bugs

Daniel Flystra

126

Ask BYTE

ASSOCIATESWalter Banks

127

BYTE's Bits

Steve Ciarcia

129

Clubs, Newsletters

David FylstraPortia Isaacson

134

Languages Forum: Comments on APL Character GeneratorsBaking Baker

BITS INCDennis BliemFloyd W RchliiiR

159

Languages Forum: Reactions to Previous Comments

Jim TfavisanoRonald Witzke

167

Technical Forum: Measuring Program Size

Jeremy Youst

172

Technical Forum: Some Plotting Comments

A Standard for Writing Standards

ADVERTISING SALESEAST COAST, MIDWEST

178

New York Notes

Haiar Associates Inc

182, 200

What's New? ,v;' ° «

17 Durant St

West Roxbury MA 02132

206

Classified Ads ''//jiDPVi'0BOMB ZyMiff?

(617)325-5380

208

100 W Chicago Ave

208

Reader Service '>'>'

Chicago IL 60610(321) 337-8008

CALIFORNIA

BYTE is published monthly by BYTE Publications Inc, 70 Main St. Peterborough NH 03458. Address all mail except sub-

Buckley/Boris Associates Inc

scriptions to above a

Jdress: phone I603) 924-7217. Address all editorial correspondence to the editor at the above address.

912 South Barrington, Suite 202

Unacceptable manusc

ripts will be returned if accompanied by sufficient first class postage. Not responsible for lost manu-

Los Angeles CA 90049(213)826-4621

scripts or photos. Op

nions expressed by the authors are not necessarily those of BYTE. Address all subscriptions, change of

address. Form 3579,

and fulfillment complaints to BYTE Subscriptions, PO Box 590, Martinsville NJ 08836. Second class

postage paid at Pete

borough NH 03458 and at additional mailing offices-USPS Publication No. 102410. Canadian second

class registration No.

9321. Subscriptions are $15 for one year, S27 for two years, and S39 for three years in the USA and its

possessions. In Canada and Mexico, S17.50 for one year, S32 for two years, and $46.50 for three years. $25 for a one year

subscription by surface mail worldwide. Air delivery to selected areas at additional rates available upon request. $25 for a one

year subscription by

air delivery to Europe. Single copy price is $2.00 in the USA and its possessions, $2.40 in Canada and

Mexico, S3.50 in Eu

rope, and S4.00 elsewhere. Foreign subscriptions and sales should be remitted in United States funds.

Printed in United Sta

tes of America. Each separate contribution to this issue and the issue as a collective work copyright©

1978 by BYTE Publications Inc. All rights reserved.

s-

'

'

>

BYTE February 1978

Page 162

Page 6

With good reason, many computersthese days have no front panel for lowlevel data entry and display. But some-times a real time pattern "signature"of an executing program can be useful.This month, Steve Ciarcia shows howto build A Penny Pinching AddressState Analyzer which can be usedwith an X-Y oscilloscope to monitorthe address bus of your computer inreal time. If you build this stateanalyzer, you'll see a unique patterncorresponding to each "steady state"loop of an executing program.

When is a personal computer morethan a personal computer? When it isplugged into a network of personalcomputers for purposes of messagetransfer via phone lines, sharing ofprograms, and perhaps even executionof multiple player logical games. Inthis issue, Mike Wilber begins a threepart series of articles on the conceptof CIE Net: A Design for a Networkof Community Information Exchanges.

Page 14

Are you looking for a driver foryour model railroad's roundhouseturntable? Perhaps you need somemotive power for a robot. For genera-tion of controlled rotary motion,stepper motors as described in RobertE Bober's article Taking the First Stepare essential. He provides readerswith valuable background informationon these fascinating mechanical out-puts for personal computers.

Page 35 +~

In This BITE

When is a boat like a raft of bottles?When it is conceptually chopped intomany individual buoyancy elementsfor the purpose of simulating its per-formance on a choppy water surface?

In this issue Stephen P Smith con-tinues his series of articles on thesimulation of motion in personal com-puters with a discussion of motion ofextended objects in Simulation ofMotion, Part 4: Extended Objects,Applications for Boating. Turn toStephen's article for more details anda BASIC program which simulatesrolling or pitching motions of an arbi-trary boat hull cross section. Page 42

Interactive editing is enhancedwhen a light pen can be used to zeroin on a text location. See how toAdd a $3 Light Pen to Your VideoDisplay using the combination ofhardware and software techniquesprovided by John Webster and John

Young in this issue. Page 52

If you own a K1M-1 computer,here's an answer to the perpetualproblem of entering and debugginglarge programs. Dan Fylstra's articleSWEETS for KIM shows you how toadd a mini text editor and assemblerthat fits in the KIM's 1 K bytes ofprogrammable memory and still leavesroom for your programs. Page 62

In past BYTEs Mike Wilber andDave Fylstra have suggested the con-cept of a "Community InformationExchange." Read Jeff's Personal Com-puters in a Distributed Communi-cations Network for a discussion ofsome of the technological (and poli-tical) aspects of such a concept, whichis well within reach of our presentpersonal computing hardware andsoftware. Page SO

Last month, we began Ernest WKent's series of articles on The Brainsof Men and Machines. The discussioncontinues this month with the nextinstallment, How the Brain ControlsOutput. Aspiring robotics hackers willfind this to be an invaluable back-ground input on the information sys-tems found in nature, which can serveas a source for ideas on new infor-mation systems designed by humans.

Page 84

The minifloppy has arrived, asmany readers probably know, and itspopularity is increasing with time.If you'd like to take advantage of itslow cost, then read David Allen'sMinifloppy Interface and try yourhand at adding a minifloppy to yoursystem. Page 114

Entomology is the study of bugs.Gary McGath provides some introduc-tory insight into various species ofprogramming bugs, and some generaldesign guidelines to prevent theiroccurrence in his background articleon Programming Entomology. Page 162

Have you ever needed to experi-ment with a circuit and ended uprewiring it again and again? Wouldn'tit be nice to have a program thatsimulated the circuit and could beeasily modified to change the para-meters? Read Robert Grappel's ASimple Digital Filter and find out allabout filter simulation on your owncomputer. Page 168

BYTE February 1978

About the Cover. . .

The February issue contains two articleson the subject of communications networksfor the personal computer user. The ideahere is to create a number of noncommercialnetworking applications based on individualexperimenters talking to individual experi-menters. One of those articles, by MikeWilbur (who spends his professional time atStanford Research Institute), is a hypotheti-cal design specification in several parts for a"Community Information Exchange" net-work. Mike's article was written as a preludeto work of the PC Net committee headedby Dave Caulkins and including a numberof the Homebrew Computer Club membersin and around Palo Alto CA.

Using Mike's preliminary design as amodel, we asked Robert Tinney to createthis fantasy on a theme of CommunityInformation Exchanges. The "CommunityInformation Exchanges" are processingnodes of the CIE network, talking locallywith telephone lines and globally via suchlong distance media as amateur radio(including perhaps satellite links viaAMSAT). The "walls" of CIEIand representthe boundaries of the protocol of thenetwork: through an appropriate interfacethe users of the CIE NET protocol cantalk to the PC NET protocol through aPC NET "gate," to an ARPA net protocolthrough an appropriate gate arranged bysome friendly local university's computerscience department or artificial intelligencelaboratory, or to the "X" network whereX in the picture is "MUSIC" but couldbe arbitrary. The CIE as originally en-visioned is an amateur and noncommercialgroup growing out of a common interestin compuer to computer communications. Itwould in some sense serve as a prototypeand innovative test bed for what might laterbecome low cost commercial networks inmuch the same way that numerous amateurradio innovations are now part of the tech-nology of radio communications. . .CH"

Articles Policy

BYTE is continually seeking quality manu-scripts written by individuals who are applyingpersonal computer systems, designing such sys-tems, or who have knowledge which will proveuseful to our readers. For a more formal descrip-tion of procedures and requirements, potentialauthors should send a selfaddressed, stampedenvelope to BYTE Author's Guide, 70 Main St,Peterborough NH 03458.

Articles which are accepted are purchased witha rate of up to $50 per magazine page, based ontechnical quality and suitability for BYTE'sreadership. Each month, the authors of the twoleading articles in the reader poll (BYTE's OngoingMonitor Box or "BOMB") are presented withbonus checks of $100 and $50. Unsolicitedmaterials should be accompanied by full name andaddress, as well as return postage.■

stop

Jitte

SHHP.SrSaft

sssm

M S567R SSEfffl■ S5E.?fl. BS&7J3

SS&7H S5E.7ASS67A SStYPR

MHWsWii^nWil

Snow

YOURSFOR ONLY

s149.9||

Now, the first complete softwareoriented video system (theVB-1B) iseven more versatile. The newly improvedVB-1B Video Interface Board gives you 128 possiblecharacters to play with. Graphics galore. Horizontal andvertical oscillators that operate within 1.6% of actual TVstandards to get rid of wiggle, rolling and jitters. TheVB-1B cuts snow by up to 50% and provides 8% left andright margins. And we'll give you a "Doodle" program soyou can play around with graphic shapes on your ownscreen. Easy connection and adjustments . . . with thenew VB-1B. Available—along with all our other S-100bus compatible products—either from your localcomputer store or from us directly.

CUbBTCDm

A Division of Solid State Music

2102A Walsh AvenueSanta Clara, CA 95050Circle 107 on inquiry card.

Telephone (408) 246-2707

Gispcis's

Circuit

Cellar

HIGHORDERADDRESSLINES

LOWORDERADDRESSLINES

SCOPE INPUT

330I/2W^W—<G +I2V

r—^, X OR Y

1 SCOPE INPUT

NOTE: The incoming addresslines can be connected in anyorder to the two MC1408s.

ALL RESISTORS ARE I/4W 5% UNLESS OTHERWISE SPECIFIED.

ALL CAPACITORS ARE IOOV CERAMIC UNLESS OTHERWISE SPECIFIED.

Figure 7.' A 256 by 256 point address state analyzer that displays dynamic fluctuations of a computer's 16 bit memory addressbus. Two 8 bit digital to analog converters drive the horizontal and vertical inputs of an oscilloscope with the analog equivalentof the eight high order and eight low order address lines. The display gives a visual "signature " of the computer in action. Acces-sing of unexpected memory locations which distort this "signature" becomes instantly visible for troubleshooting purposes.

A Penny Pinching Address State Analyzer

Steve CiarciaPOB 582Glastonbury CT 06033

Three years ago I got my first homemicrocomputer, a Scelbi 8H. This wasbefore the advent of widespread interest inpersonal computers and it was naturallybased upon the Intel 8008 processor. Backthen I was satisfied with the tedious task ofhand toggling a program into the computerand watching the front panel memoryaddress and data buffer lights twinkle,signifying that the program was executingsomething. After that I bought morememory which consisted of 2102s. Thatgave me enough space to write only thesimplest of monitor programs, again usingthe front panel as the display medium. Atthe end of its evolution, my 8008 did have

a rudimentary video display and 300 bpscassette interface; but, if there was onemajor physical characteristic of the firstgeneration home computers, it was thepredominance of the front panel displayand data entry switches. The concept ofthe integrated home computer "system"was yet to be seen. A computer requireddisplay and data entry switches if it wasto be powered up and exercised. AdditionalIO devices such as video displays and key-boards were luxuries.

Well, it was inevitable. The prices ofcomponents have dropped drastically inthe past few years and the experimenternow thinks in terms of a home computer

BYTE February 1978

Introducing Micro-2from Digital Systems

You might find or put togetheranother computer system with thesame capability as Digital Systems'new Micro-2. But it would probablycost you a lot more than $5,000.At $4,995 the Micro-2 is a com-pletely assembled, compact, high-performance microcomputersystem with Shugart dual-drive,double density floppy disks. Itssingle computer board includes aZ-80CPU,32KofRAM,fourRS-232serial interfaces, 16 bits of parallelI/O, and a real-time clock. And onthe same board you have theoption of 64K of RAM.

The single disk controller board

uses either the standard IBM 3740format or a double density formatof 571K bytes per diskette. Optionaldouble-sided drives increase stor-age to 2.3 Megabytes. And sincethe controller can support anothertwo drives, the storage capacityof the Micro-2 can be increasedeven more.

The simple bus and two-boarddesign of the Micro-2 means greaterinherent system reliability. A shortcable interconnects the computerand controller boards, providing ahigh-speed DMA interface. On thecomputer board there's access tothe internal bus connector and awire-wrap area for custom logic.

With the Micro-2, you get thecomprehensive CP/M disk oper-

ating system, disk BASIC, andcomplete hardware diagnostics.(For the past three years CP/M hasbeen field-proven in other DigitalSystems' hardware.) What's more,extensive accounting softwarepackages and high-level languages,such as CBASIC and FORTRAN,are available.

So if you're interested in alow-cost, high performance micro-computer system, you can beginand end with the Micro-2. Writeor call us today about the newMicro-2 or our other disk-basedsystems.OEM and dealerdiscountsare available.

Digital Systems, 6017 MargaridoDrive, Oakland, California 94618;(415) 428-0950.

The

Compu

/SystemiFI

Begins Where

Others End,

Photo 1: The author'scomputer system, showingthe address state analyzerin operation with a BASICprogram (see oscilloscopein center of picture). Theprogram is printing aninteger sequence of ASCIIcharacters on the displayto the right using the func-tion CHR$(X). On the leftis a 50 K byte DigitalGroup Z-80 system.

system incorporating a processor, cassetteinterface, read only memory systemssoftware, keyboard and video display.Fewer and fewer microcomputers have frontpanels that display memory lines or databuffers. The memory address in addition tothe contents of all other pertinent processorregisters is now usually available through amonitor program command. The costeffectiveness of the front panel lights andtoggle switches has diminished to thevanishing point.

1 would never advocate a return to front

Photo 2: A close-up of the penny pinching address state analyzer displayshowing the result of a power on reset in the computer. Execution begins inthe 256 byte EROM bootstrap program; the program continually vectorsto the cassette input port 001 (thin excursion line to the upper left in thephoto) to see if data is present.

panels, by any means. But recall how manytimes you have checked the rhythmic pul-sations of particular lights to assure yourselfthat your program was executing correctly.Or, how many times have you recognizedthat the program had obviously vectored offinto the unknown by the graphical represen-tation of the 16 address bus lights? Adding16 lamps on the memory address lines canbe done on any microcomputer, and thiswould give us some indication of what theprogram is doing. But the LEDs are trulyreadable only when the processor is in a holdstate, halted, or otherwise not changing thememory address. The chances of obtaininga recognizable visual pattern on the LEDsare small when running programs writtenin languages like BASIC that jump aroundin memory as they interpret each statement.And with LEDs there are only 16 graphicalelements; this gives poor resolution.

A $15 Video Analyzer

There is another way to watch the inter-nal program sequence that far exceeds a 16bit lamp display: a 256 by 256 point ana-lyzer that displays the dynamic fluctuationsof the 16 bit memory address bus. Thisgadget can be added using only two inte-grated circuits and any X-Y oscilloscopewith sufficient bandwidth. The result is agraphical presentation of the computer inaction. It is not graphics in the classicsense: no pictures can be drawn, and alpha-numeric capability is nonexistent. It isinstead a point plot of the memory addressstates, dynamically changing during theexecution of a program.

The 6800, 8080, Z-80, 6502 and otherprocessors all have 16 bit address buses.They directly address 64 K bytes of memory(ie: there are 65,536 possible address com-binations). The address bus can be dividedinto eight bits of high order address andeight bits of low order address.

If either of these address portions isattached to the eight input lines of a pairof digital to analog converters, twounique analog voltage values are producedfor each address location. The two voltageoutputs, one for high address and one forlow address, can then be attached to the ver-tical and horizontal inputs of an oscillo-scope. The result is a fascinating animateddisplay of a computer in action.

Constructing the State Analyzer

It isn't often that I can outline a design inwhich layout, physical components, absolutevoltages, input and output polarities, orinput attachments are so flexible. This 2chip circuit can be hooked up any way you

BYTE February l')78

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 (IncludeSource Listings)

SL68-29 6800 Text Processing System* $32.00

SL68-24 6800 Text Editing System* $23.50

SL68-26 6800 Mnemonic Assembler* $23.50

SL68-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

PD80-2 8080 Game Package II $14.00

SL80-8 8080 Blackjack $ 6.50MUB-68 Multi-User System-Write for details

'Kansas City Standard object code cassettetape available for an additional $6.95.Paper tapes available for some programs.Send 25c for complete catalog.

f£1 H TECHNICAL SYSTEMS

CONSULTANTS, INC.

BOX 2574 W. LAFAYETTE INDIANA 47906317 742 7509

SPECIALISTS IN SOFTWARE A HARDWARE FOR INDUSTRY A THE HOBBYIST

Circle 116 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 Editing System

At Last! An 8080 version of the famousTSC 6800 Text Editing System.

Written in assembly language, approx-imately 5k is required allowing local,global, content, character and line opera-tions. For example, with one command youcan change the second occurrence of thestring "12345" in the next 35 lines to thestring "XYZ".

Included are Tabs, Overlay, block Moveand Copy, Header, Append and Zones.This Editor is actually better than manylarge scale computer Editors! Sourcelisting included.

SL80-10 8080 Text Editing System $28.50PT80-3 Optional Paper Tape $ 9.00

BYTE February 1978 9

Photo 3: Effect of a car-riage return while exe-cuting TDL 12 K BASIC.The long streamer showsthe program's reference tothe input port of the key-board.

want it. You can mix the address bitsbetween the two digital to analog converters.If you separate the address bytes as I haveand attach one byte to each converter, thedisplay tends to dwell in a narrow regionalong a vertical line.

The 8 bit digital to analog converter Ihave chosen is the Motorola MC1408. TheL6, L7 or L8 version can be used sinceabsolute accuracy is not important. What isbeing produced is a system signature uniqueto your system and your programming.Figure 1 illustrates the schematic of thecircuit as I attached it to my computeraddress lines. For a more complete de-scription of how the MC1408 works, see myprevious article "Control the World" inSeptember 1977 BYTE, page 30.

Evaluating the Results

The oscilloscope traces in photos 1, 2,3 and 4 are particular to my system andsoftware only; but similar, though notexact versions, should be produced onother systems. As diagrammed in the

schematic, I have used the high order addresslines to drive the X axis and the low orderaddress lines to drive the Y axis. Anotherpeculiarity of my system is a logically in-verted address bus. The result is that thedisplay moves in the opposite directionfrom what one might expect. The higherthe address, the lower the output voltage.Again, as I stated earlier, human patternrecognition, not methodology, is important.

After attaching this video drive to anoscilloscope, turn on the power. In my casethe pattern displayed (as in photo 2) illus-trates that the computer is operating in theregion of memory occupied by the monitorsoftware; it regularly vectors to anotheraddress, that of the cassette input (the 8 bitlow order memory address lines of the Z-80or 8080 are also used to address input andoutput ports) at port 001. Later, whenrunning BASIC, repeated addressing ofkeyboard input port 000 can be recognizedas in photo 3 taken after TDL 12 K BASICwas loaded.

One of the programs which best illus-trates this new visual dimension of the

10 BYTE February 1978

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 extensive

documentation. *-> ,.i i «-». n ,

• PRICE Compatible Disc Drives

Kit $190 Assembled $265 Ask about our disc drives priced as low as $525.

TARBELL

PROTOTYPE

BOARD

Model 1010

..l.lllll.llll...

III!

Gold plated edge pins

Takes 33 14-pin ICs or

Mix 40-pin, 18-pin, 16-pin and

14-pin ICs

Location for 5 volt regulator

Suitable for solder and wire wrap

ALTAIR/IMSA1 compatible

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 90746

(213) 538-4251

Circle 114 on inquiry card.

BYTE Fcbm.iry I978

11

Photo 4: A complex bus addressing pattern during the execution of a BASIC program.

computer is a basic memory test programas it scans through memory. Dynamicallyvarying displays such as these are verydifficult to photograph and would appearas blurs. The photos I have included arethose of programs with addressing suffi-ciently repetitive so that the pattern appearsstable (see photo 4).

There is one particular instance thatproved the worth of the address stateanalyzer on my system. I had received andwas in the process of checking out the TDL12 l< Super BASIC software package distri-buted by Micro COM for the Digital GroupZ-80 system, and was having trouble gettingthe software to execute in 26 K of memory.Rather than call the company and complainof a possible bad tape, I turned on theaddress state analyzer and loaded the tape.I could see the computer cycling throughthe cassette input section of the monitor anddepositing it in increasingly higher portionsof memory. At its conclusion, the words"Highest Memory" appeared on the screen.I promptly typed in 26000 and hit a carriage

return. The computer took off and starteddoing a scan across memory in a patternsimilar to that of a memory test program.Following this, the computer went intovisible convulsions (or the electronic equi-valent) on the ocilloscope and never re-turned to the display. I loaded the programonce again and this time answered the ques-tion with 20000. The result was an intro-ductory blurb indicating that BASIC wasfully operational. A quick scan of the 2 Kbytes of memory on the processor boardverified that they were wired for somethingother than 24 K to 26 K. The address stateanalyzer (in which I now had considerablymore faith) told the complete story. Afterreplying to the "Highest Memory," theprogram apparently scanned memory andtried to verify that the typed input wasindeed plausible. In a false case it got hungup. Resetting the memory bank decodingcircuit for 24 K to 26 K, of course, solvedthe problem.

Next month: "Programming EROMswith BASIC.""

12 BYTE February 1978

feat itc J

INTRODUCING

SCELBI'S

OPTIONAL HARDWARE

Additional memory beyond 2Kallows expanded text buffer storagearea. Recommend 4K-8K forpractical applications. Bulk storageI/O devices allow text to be saved forfuture use/modlficatlon.

SOFTWARE REQUIRED

User provided I/O driver routines forwhatever I/O devices will be utilized.Each I/O device is linked to theprogram by a single vector for easein adapting the program to individualsystems.

MEMORY UTILIZED

The assembled listing provided inthe manual resides in pages Olthrough 05 (hexadecimal which isOOl through 005 octal). Pages OO,part of 05, and all of 06(hexadecimal-OOO, part of 005and all of 006 octal) are leftavailable for user provided I/Oroutines. Pages 07 (hexadec-imal-007 octal) through availablememory used for text buffer.

OPTIONAL PAPER TAPENOW AVAILABLE

An optional object code on punch-ed paper tape is available. Specify8O8OED-OPT, $6.00. And you canorder optional commented sourcelisting on paper tape too. Specify8O8OED-SPT, $20.00.

Circle 102 on inquiry card.

Here, at last, is an efficient way to edit text whenpreparing program source listings or other textmaterial. You'll need an 8O8O computer, with aminimum of 2K memory (of which at least IKshould be RAM); a text input device, like akeyboard; and a display/text output device.

MNEMONICS UTILIZED

This program is written in 8O8Omachine language standard industryaccepted mnemonics for the 8O8OCPU (such as MOV A, B; INX H; CALL;etc.) (Note: SCELBI is discontinuing itsuse of special 8O8O compatiblemnemonics which have character-ized its 8O8O programs in the past.)

PROGRAM OPERATION

This is a standard line-oriented textediting program intended for use Inthe creation of source listings andsimilar text manipulations. The pro-gram operates in two modes; the TextEntry mode for entering text into thetext buffer and the Command modeused to specify operator directives.Information in the text buffer may bemanipulated using the Commanddirectives and the contents of thetext buffer transferred to an externalstorage device or filled from an exter-nal storage device.

PROGRAM COMMANDS

APPEND (A) text to the text buffer;CHANGE (C) text; DELETE (D) text; IN-SERT (I) text; LIST (L) text; characterSEARCH (S); READ (R) from or WRITE (W)to an external storage device; CLEARtext buffer; plus single characterdeletion, tab (spacing), and variouscharacter search directives.

DOCUMENTATION

In the famous SCELBI tradition. Theprogram manual describes the

$

operation of the editor, presentsdetailed discussions of all majorroutines with flow charts, contains twocompletely assembled listings (onewith addresses and object code inhexadecimal notation and one in oc-tal notation), and of course includesoperating Instructions and tips onenhancing the program if desired.

SPECIAL FEATURES

Because the program has beencarefully organized and written withall memory references assignedlabels, it may be readily reassembledto reside in any general area inmemory. This program may even beassembled to reside in just IK of ROMprovided that some RAM area isavailable for scratch pad and textbuffer usel

OPTIONS

A punched paper tape of the ob-ject code for this editor (as describedin the documentation) is available.The object code tape is provided inthe widely accepted "hexadecimalformat." Also, the complete, com-mented source listing of the programas presented in the documentation isavailable in straight ASCII format onpunched paper tape. Fan-fold papertapes are provided for ease in nandling. Additionally, opaque papertape is supplied to facilitate the useof low cost optical paper tapereaders now in widespread use. NOTE:Paper tapes are sold only as optionalsupplements to the documentation.

ORDER YOUR COPY TODAY...$1 4) 95

12

ICIITI tOMIIIfinCON 11 If INC INC.

Post Office Box 133 PPSTNMilford, CT 06460

Price shown lor North American customers. MasterCharge, Postal and Bank Money Orders preferred.

Personal checks delay shipping up to 4 weeks,specifications, availability sub|ect tochange without notice. SCELBI Books are available

In many line Computer Stores. IMPORTANT! In-clude 75C postage/handling for each Itemdelivered by U.S. Mall Book Rate; or S2 for eachItem shipped First Class or via UPS.

BYTE February 1978 13

About the Author:

Mike Wither isa mem-ber of the technical staffat SRI International inMenlo Park LA. He hasbeen actively working onthe concept and defini-tion of the CommunityInformation Exchange formore than two years,and has a history of workat the frontiers of comrputer science in areasIncluding network designand artificial intelligence.

CIE Net:

Mike Wilber920 Dennis DrPalo Alto CA 94303

A Design for a Networkof CommunityInformation Exchanges

Part 1: The Beginnings

The need for a personalcomputer telecommuni-cations network is rapidlybecoming inescapable.

Motivation and Background:Why Build a Network?

A good, cheap and practical telecom-munication network can be extremely usefulto the personal information processingcommunity. It can provide a means bywhich people exchange programs and filesof data. For example, a respectable dictio-nary can be built by 1000 people who eachcontribute 20 words. Just as important, agood telecommunication facility can helppeople talk to one another, for instance, toadvertise the presence of a good data file, orto explain just when one technique is supe-rior to another. These considerations andothers are explored in more detail in anearlier BYTE article. (See "Homebreweryvs the Software Priesthood," by Wilber andFylstra, October 1976 BYTE, page 90.)

The need for a personal computer tele-communication network is rapidly becominginescapable. Now that personal computersare economically feasible, manufacturers areselling cheap reliable systems in astoundingquantities to personal users of informationprocessing, each of whom stands to gainfrom freely shared interactive experience.Already, hobbyist clubs and other, moreprimitive, information exchanges havesprung up to fill the void. Telecommunica-

tion can greatly facilitate the free exchangeof ideas and data that currently take placeon a limited but increasing scale.

How This Effort Got Started

In response to this need, I designed a net-work for presentation at the First WestCoast Computer Faire in April of 1977.That work was unfinished as the Faireproceedings press deadline loomed, so Iwrote up the design considerations forpublication there. Since then, I have finishedthe design, of which the main part of thisseries of articles is a detailed exposition.

I was not alone in feeling this need andresponding to it with action. After the Faire,Dave Caulkins organized a group to designand implement a personal computer net-work; this group has thus taken PCNET asits name. The PCNET committee startedfrom many of the premises I feel are im-portant, but it has identified a slightly dif-ferent set of problems, and it has solvedalmost every one of them differently, andso it is developing a design that differsconsiderably from mine in its details.

The PCNET design was rapidly develop-ing at the press deadline for this article andis thus not detailed here. Its broader aspects

Continued on page 138

14

BYTE February 7978

The UMmate Turn-on

On/off control everywhere-by computer over the AC wiring

Now it's simple and economicalto control AC devices remotely froman S-100 or Apple II computer.Mountain Hardware's new Introl™system delivers on/off commandsover the existing AC lines — so youdon't have to string a foot of wire!

Control at any AC outlet. The

Introl system impresses a code-modulated 50 KHz control signalon the house wiring. Then decodesthe signal at any outlet to switchAC devices on and off. You cancontrol lights, refrigerators, TVs,solenoid valves, sprinklers, burglaralarms—and many other things weleave to your fertile imagination.With the addition of input sensorsto your computer system, you canautomatically control variables suchas temperature and soil moisture.Here's how it works. You plugin a single AC Controller board atthe computer bus and connect theAC Interface Adapter to any con-venient 115 VAC outlet. The ACController is now connected toaddress as many as 64 channelsremotely. But it's completely isolated

from the 115v power, so there's nochance of short or shock.

At any outlet where you seekcontrol, plug in a Dual Channel ACRemote. Then plug one or twodevices to be controlled into thebox. Every AC remote has twoindependent 500 watt channels.When commanded by the computer,the Dual Channel AC Remote turnsthe devices on and off independ-ently. When polled by the compu-ter, the Dual Channel AC Remotesends a signal back, telling thecomputer the status of each device.Bidirectional communication pro-vides error free operation.

Simple programming. You writeyour control program in BASIC orAssembler language. Software sub-routines for the control programscome with the equipment — alongwith complete documentation. Ifyou have an S-100 computer, youcan program on/off commands atany day and time using our option-al 100,000 day Calendar/ClockBoard. A self contained powersource assures fail safe operation.

Modest prices. The AC Con-troller, for both the S-100 and AppleII computers, costs $149 in kit formor $189 completely assembled andtested. Each Dual Channel ACRemote costs $99 as a kit or $149assembled and tested. Thus, a fullyoperative system in kit form can beyours for as little as $248.

The Calendar/Clock Board forS-100's costs $179 in kit form, $219assembled and tested.

All prices are f .o.b. Ben Lomond,CA. Prices are USA Domestic. Cal-ifornia residents add 6% sales tax.

Where to find it. The Introlsystem can now be found at compu-ter shops throughout the U.S. andCanada. Drop by and ask for a dem-onstration. Mountain Hardware,Inc., may be reached at Box 1133,Ben Lomond, CA 95005. Phone(408) 336-2495

AC Controller (Apple)

Dual Channel AC Remote

i& Mountain Hardware

Circle 78 on inquiry card.

AC Controller (S-100)

BYTE February 1978 15

Introducing Apple II.

%

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—40hx48v, 15 colors

• High-resolution graphics—280hx192v; 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 port_

■ 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.

apple computer inc.

Order your Apple II now.

from any one of the following authorized dealers:

ALABAMA

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-1316Team ElectronicsAnchorage 276-2923Anchorage 272-4823Fairbanks 456-4157ARIZONAByte ShopTempe 894-1129Phoenix 942-7300Tucson 327-4576CALIFORNIA

A-VIDD Electronics2210 Bellllower 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-0542Computer Components5848 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 Oak

Granada 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. Main St.

Windsor Locks 627-0188

DELAWARE

ComputerlandKirkwood HighwayNewark 738-9656

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-9595Rocktord 399-2577Schaumburg 882-5864Springfield 525-8637INDIANAThe Data DomainFort Wayne 484-7611Bloomington 334-3607West Latayette 743-3951Indianapolis 251-3139The Home Computer Center2115 E. 62nd St.Indianapolis 251-6800

IOWA

The Computer Store4128 Brady St.Davenport 386-3330Team ElectronicsAmes 232-7705Bettendort 355-7013Cedar Rapids 393-8956Davenport 386-2588Dubuque 583-9195Iowa City 338-3681Sioux City 252-4507Sioux City 277-2019Waterloo 235-6507Video Midwest, Inc.2212 IngersollAve.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-7559KENTUCKYComputerland813 B. 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 Hwy63Columbia 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 NY.118 Madison Ave.New York 686-7923

Co-op Electronics9148 Main StreetClarence 634-2193

NORTH CAROLINA

Byle Shop

1213 Hillsborough St.Raleigh 833-0210Computer Room1729 Garden TerraceCharlotte 373-0875Rom's & Ram'sCrabtree Valley MallRaleigh 781-0003

NORTH DAKOTATeam Electronics

Bismarck 223-4546Fargo 282-4562Grand Forks 746-4474Minot 852-3281Williston 572-7631OHIO

Computerland1304 SOM Center Rd.Mayfield Heights 461-1200The Data DomainDayton 223-2348Cincinnati 561-6733OKLAHOMABits. Bytes & Micros1186 N. MacArthurBlvd.Oklahoma City 947-5646High Technology1020 W. Wilshire Blvd.Oklahoma City 843-9667

Team Electronics

Norman 329-3456Oklahoma City 634-3357Oklahoma City 848-5573Stillwater 377-2050Tulsa 633-4575Tulsa 252-5751Yokon 373-1994OREGONTeam ElectronicsBend 389-8525Canby 266-2539Salem 364-3278PENNSYLVANIAComputer Mart of PARoute 202King 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-0664ComputerlandHouston 997-0909Austin 452-5701Computer Shops. Inc.13933 North CentralDallas 234-3412The Computer Shop6812 San PedroSan Antonio 828-0553

Computer Terminal2101 Myrtle SI.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-4300Rhinelander 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 Byte

2274 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-1010

EURAPPLE

European Operations of Apple Computer, Inc.2031 Byron StreetPalo Alto, CA 94301(415)964-7020

18

BYTE February 1978

Circle 5 on inquiry card.

Complete ASCII

128 CHARACTER ASCII TABLE

David M Ciemiewicz533 N Holly StElizabethtown PA 17022

Most of the time when you see a maga-zine article that requires an ASCII table,the table accompanying the article is eitherincomplete or is in a numeric system thatyou cannot use without converting it.

The table I have devised is complete 128character ASCII. Each character is ac-companied by its binary, octal, decimaland hexadecimal equivalent.

This table has proven invaluable to me,as I am sure it will to you."

U

TO

£

£O

Binary

Bit 7 toBitO

u

o

E'u

V

Q

reE

'o9

•are

X

0>

I

a

ure

V-

re

£

Binary

Bit 7 toBitO

reu

o

reE'oa>O

re

E

ua>

13

re

X

0)

I

1

01100000

140

096

60

p

01110000

160

112

70

a

01100001

141

097

61

q

01110001

161

113

71

b

01100010

142

098

62

r

01110010

162

114

72

c

01100011

143

099

63

s

01110011

163

115

73

d

01100100

144

100

64

t

01110100

164

116

74

e

01100101

145

101

65

u

01110101

165

117

75

f

01100110

146

102

66

V

01110110

166

118

76

9

01100111

147

103

67

w

01110111

167

119

77

h

01101000

150

104

68

X

01111000

170

120

78

i

01101001

151

105

69

V

01111001

171

121

79

i

01101010

152

106

6A

z

01111010

172

122

7A

k

01101011

153

107

6B

{

01111011

173

123

7B

1

01101100

154

108

6C

I

01111100

174

124

7C

m

01101101

155

109

6D

}

01111101

175

125

7D

n

01101110

156

110

6E

01111110

176

126

7E

0

01101111

157

111

6F

DEL

01111111

177

127

7F

Note: The bit 7 in the binary column is sometimes a 1 or is some-times used as a parity bit.

a

re

re

o

Binary

Bit 7 toBitO

reo

o

reE

0)

a

o

9

■oreXV

I

«5ore

reO

Binary

Bit 7 toBitO

reu

o

re

.E*o

Q

u

0>■D

re

X

OSI

NUL

00000000

000

000

00

0

00110000

060

048

30

SOH

00000001

001

001

01

1

00110001

061

049

31

STX

00000Q10

002

002

02

2

00110010

062

050

32

ETX

00000011

003

003

03

3

00110011

063

051

33

EOT

00000100

004

004

04

4

00110100

064

052

34

ENQ

00000101

005

005

05

5

0011Q101

065

053

35

ACK

00000110

006

006

06

6

00110110

066

054

36

BEL

00000111

007

007

07

7

00110111

067

055

37

BS

00001000

010

008

08

8

00111000

070

056

38

HT

00001001

011

009

09

9

00111001

071

057

39

LF

00001010

012

010

0A

00111010

072

058

3A

VT

00001011

013

011

0B

)

00111011

073

059

3B

FF

0Q001100

014

012

0C

<

00111100

074

060

3C

CR

00Q01101

015

013

0D

=

00111101

075

061

3D

SO

00001110

016

014

0E

>

00111110

076

062

3E

SI

00001111

017

015

OF

?

00111111

077

063

3F

DLE

00010000

020

016

10

@

01000000

100 064 40

DC1

00010001

021

017

11

A

01000001

101

065

41

DC2

00010010

022

018

12

B

01000010

102

066

42

DC3

00010011

023

019

13

C

01000011

103

067

43

DC4

00010100

024

020

14

D

01000100

104

068

44

NAK

00010101

025

021

15

E

01000101

105

069

45

SYN

00010110

026

022

16

F

01000110

106

070

46

ETB

00010111

027

023

17

G

01000111

107

071

47

CAN

00011000

030

024

18

H

01001000

110

072

48

EM

00011001

031

025

19

I

01001001

111

073

49

SUB

00011010

032

026

1A

J

01001010

112

074

4A

ESC

00011011

033

027

1B

K

01001011

113

075

4B

FS

00011100

034

028

1C

L

01001100

114

076

4C

GS

00011101

035

029

1D

M

01001101

115

077

4D

RS

00011110

036

030

IE

N

01001110

116

078

4E

US

00011111

037

031

1F

O

01001111

117

079

4F

SP

00100000

040

032

20

P

01010000

120

080

50

!

00100001

041

033

21

Q

01010001

121

081

51

"

00100010

042

034

22

R

01010010

122

082

52

#

00100011

043

035

23

S

01010011

123

083

53

$

00100100

044

036

24

T

01010100

124

084

54

%

00100101

045

037

25

U

01010101

125

085

55

&

00100110

046

038

26

V

01010110

126

086

56

'

00100111

047

039

27

w

01010111

127

087

57

(

00101000

050

040

28

X

01011000

130

088

58

)

00101001

051

041

29

Y

01011001

131

089

59

*

00101010

052

042

2A

z

01011010

132

090

5A

+

00101011

053

043

2B

[

01011011

133

091

5B

00101100

054

044

2C

\

01011100

134

092

5C

—

00101101

055

045

2D

]

01011101

135

093

5D

00101110

056

046

2E

A

01011110

136

094

5E

/

00101111

057

047

2F

-

01011111

137

095

5F

Abbreviations for Control Characters:

NUL

— null, or all zeros

DC1

— device control 1

SOH

— start of heading

DC2

— device control 2

STX

— start of text

DC3

— device control 3

ETX

— end of text

DC4

— device control 4

EOT

— end of transmission

NAK

— negative acknowledge

ENQ

— enquiry

SYN

— synchronous idle

ACK

— acknowledge

ETB

— end of transmission block

BEL

- bell

CAN

— cancel

BS

— backspace

EM

— end of medium

HT

— horizontal tabulation

SUB

— substitute

LF

— line feed

ESC

— escape

VT

— vertical tabulation

FS

— file separator

FF

— form feed

GS

— group separator

CR

— carriage return

RS

— record separator

SO

— shift out

US

— unit separator

SI

— shift in

SP

— space

DLE

— data link escape

DEL

— delete

BYTE February 1978

19

COMPLETE

>k iwgi^Ei?

MAN/PAK HORIZON-2COMPUTER

Z80 CPU

32K Memory with

Parity Option

12 Slot Motherboard

Parallel & Serial Interfaces

6 100 Pin Edge Connectors

Dual Floppy (1B0.000 Bytes)

Enhanced DOS/Basic

COMPU1-2-3 SYSTEM

k HAZELTINE 1500I VIDEO TERMINAL

Programmable Brightness LevelsAutomatic Repeat on all Keys24x80 Display on 12" screenNon-Glare/High LegibilityUpper/Lower CaseReversible VideoAudible Alarm

vl -J

READY-TO-GO!

PLU

3 CENTRONICS 779SERIAL PRINTER

■ Excellent Print Quality

■ Tractor Feed

■ Print Speed: 21-130 Ipm

■ Max. Print Width 8"

■ 80 or 132 char/line

)S with I/O Drivers forHAZELTINE & CENTRONICS■ All Cables

10 Diskettes

OPERATIONAL IN SECONDS:

® Connect fli\Cables \^J

Insert DOSDiskette

©!

HitReset

SAVE TIME, ENERGY & MONEY!

Components purchased separately cost $5693.Now for a limited time only — send $5145 to:

120 Bethpage Rd. ■ Hicksville, N.Y. 11801or CALL COLLECT: (516) 433-0613

Gentlemen:

Please rush me my Complete Computer System.Enclosed is $5145 □ Check □ M.O. D Master Charge□ BankAmericard # Exp. Date:

N.Y. Residents Add 8% Sales Tax.Shipped F.O.B. Hicksville, N.Y. - Collect.

Name.

Address.City

.Phone.

.State.

-Zip.

□ Please send more informationDealer Inquiries Invited

Letters

CELTIC PIANO NOTES

I was very interested in the article,"Notes on Interfacing Player Pianos"(September 1977 BYTE, page 112),especially since this was the subject of astudent project here in 1973-74 byStephen Cowles. The piano, which Ibought for the university laboratory, wasa simple MORS 88 note nonreproducingmodel, and we found the electronic/pneumatic interface to be the mostdifficult part. I was delighted thereforeto hear about the Reisner relay.

The original system was a dual trackcassette for serial clock and data pluscircuitry which looks very much likefigure 4 of your article, and in myopinion having constructed the specialTTL electronics and got it to work, thereis a better solution.

This year we are building a generalinterface which can be connected up toany player piano having rubber tubing,and strongly believe that the cheapestsolution, bearing in mind building timeand fault finding, etc, is to use a micro-computer with about 98 parallel outputlines (say Motorola PIAs) driven by amicroprocessor which receives the serialdata in any of the standard ways.

Our original system only played"Three Blind Mice" rather shakily froma PDP-11/45, but we did write a PDP-11interactive compiler which constructedkeyboard images directly from typed-insheet music, and we shall keep that sys-tem for making the magtapes.

We will let you know how the newsystem comes along.

Prof F G Heath

Gavin Weir

Heriot-Watt University

31-35 Grassmarket

Edinburgh SCOTLAND EH1 2HT

ORGANS, MUSIC ANDPROGRAMMING

Chances are, it's occurred to you longago: there's an amusing philosophicalsimilarity between organ stop lists andcomputer machine language instructionlists.

Nicholas Bodley

300 W 108

New York NY 10025

One might consider the organ stoplist as being equivalent to initializationdata for a complicated program. Con-sider the score to be the equivalent of amusic program. The parallels are very,very strong and tend to drive a numberof people into music as well as program-ming. We've heard it said by some people

Circle 66 or

responsible for hiring programmers thatmusicians make excellent programmers.

BARCODE ON A BALL

Regarding the letter on page 12 ofthe October 1977 BYTE concerning anIBM ball that will print bar code andletters together: Datatype Corporation,1050 NW 163rd Dr, Miami FL 33169,(305) 625-8451, had such a system. Barcode was ASCII. I don't know if they'restill in business.

Joe Fisher

Computer Consultant

1120 E 52nd, Room 203

Austin TX 78723

NEWT POINTS

I have some corrections on your partand on mine regarding my article about"Newt: A Mobile, Cognitive Robot"(June 1977 BYTE, page 30). First (mymistake), on page 38, the stepping motordrive circuit motor cable color desig-nations are wrong. The single colorlabels "red" and "green" should beinterchanged or the motor will just sitthere and quiver.

In several places the shading of Newtin figure 1 is incorrectly done, makinga single surface appear broken into twosurfaces, etc.

On page 30, the caption on figure 1should have also mentioned that theturret is capable of panning left andright as well as tilting up and down.

On page 44, it is not true that anymobile robot must incorporate programsfor seeking electrical outlets. Forexample, a robot on Mars might have ahard time finding an outlet!

On page 45, paragraph 1, the phrase"such as already demonstrated by theViking robots" is unfortunate, since theViking landers do not qualify as cog-nitive robots in the context of thisarticle. They are sophisticated tele-operators. A Mars "rover" robot project,however, is in progress at Jet PropulsionLaboratories.

I am looking forward to writing moreabout Newt as things progress over thenext few years. One possibility is a seriesof four articles. The published articlewas an overview of the system withemphasis on the motive subsystem.Three more articles would cover in somedetail the manipulator, the sensoryturret vision system, and finally thesoftware experiments with Newt. Allthis depends, of course, on how muchwe can get done in the next severalyears.

I have been able to resume work onNewt almost immediately upon return-ing from France. The hand wired step-ping motor drivers have been replacedby compact printed circuit versionsand next week an order will go outfor about $400 worth of gears andbearings for the manipulator assembly.With luck, the manipulator should beworking within six months. Other lowerpriority items being worked on at

DATALYZER ... a 24 channelLogic Analyzer for your S100 Bus

24 Channel LOGIC ANALYZER, complete with 2 cards and 3 sets of probes.

Features

— 24 channels with 256 samples each.

— Display of disassembled program flow.

— Dual mode operation — external mode analyses any external logicsystem. Internal mode monitors users data and address bus.

— Selectable trigger point anywhere in the 256 samples.

— 0-16 bit trigger word format or external qualifier.

— 8MHz sample rate

— Synchronous clock sample with coincident or delayed clock mode.

— User defined reference memory.

— Displays and system control through keyboard entry.

— TTL Logic level compatible (15 pf and 15 ua typical input loading.)

Displays in Binary

Displays in Hex

Display of disassembledprogram flow.

The DATALYZER

Designed to plug easily into your S-100 Bus, the DATALYZER is acomplete system — for only $495. Display of disassembled programflow is a standard feature, not an extra. And the low price includes 30logic probes, so you can hook up immediately, without additionalexpense.

The DATALYZER is available in kit form ($495), and as a fullyassembled device on two PCB's ($595). Operators' manual $7.50. Asubstantial warranty, and the Databyte, Inc. commitment to servicemake the DATALYZER a worthwhile investment.

Databyte, Inc.

7433 Hubbard AvenueMiddleton, Wisconsin 53562Tel: (608) 831-7666

Circle 36 on inquiry card.

BYTE February 1978 21

WARBLE ALARMCAR-VAN CLOCK

WITH HEADLIGHT ALARM

ELAPSED TIMER

SECONDS DISPLAY SWITCH

9 MINUTE SNOOZE ALARM

SIMPLE4WIRE HOOK-UP

JUMBO//'LEO DISPLAY

1 TO 59 MINUTE COUNTDOWNTIMEn "'INSSIMULTANEOUSLYWITHULOCK!

RUGGED ABS CASE

COMPLETE KIT $35.95ASSEMBLED $45.95

DIGITAL AUTO INSTRUMENTS»i tachometer SEVEN MODELS!

»2 WATER TEMP.

#3 FUEL LEVEL

*4 SPEEDOMETER*

#5 OIL PRESSURE

«6 OIL TEMP.

«7 BATTERY MONITOR

Kll

INCLUDES

CASE A ALL

(AfiDWA

E

PRESSURES

FEMP.SE

[DERS

ASSEMBLED

MAIN PC

OAK II

4'ORANGE

ED'SABS CAS

■ADD $10 FOR REQUIRED SPEED SENDER . S15 FOR SPEED SENDER ALONE

KIT: $49.95 ASSEMBLED: $59.95

ELECTRONIC 'PENDULUM' CLOCK

SWING PENDULUM7" HOURS AND MINUTES DISPLAYTIME SET PUSH BUTTONSALARM FEATURE

KIT-UNFINISHED CASE $59.95

ASSEMBLED-STAINED CASE $69.95

QUARTZ DIGITAL AUTO CLOCKOR ELAPSED TIMER!

ELAPSED TIMER: HRS, WINS & SECSSIMPLE PUSHBUTTON RESET &HOLDTOGGLESWITCH

KIT If/ClUDES £ VERYTHINGNOTHING £LS€ TO BUY! 4- LEDSIIN TEPNA L BATTERY BACK UP!NONPOLAR INPUT!

12 OR 24 HR MODE

KIT: $27.95. ASSEMBLED: $37.95

WOW WITH

ELAPSED

TIME!

3Vz DIGITAL CLOCK

4 DIGIT KIT. $49.956 DIGIT KIT $69.95

<1 DIGIT ASSEMBLED. $59.956 DIGIT ASSEMBLED. §"]§ Q§

117 VAC 12 OR 24 HR MODE KIT COMES COMPLETE!

5 DIGIT VERSION 27"* 5" x T1-". . . 4 DIGIT VERSION: IB" x 5" x Hi"

i*:h <m*

TV-WALL CLOCK

• 25'VIEWING DISTANCE■ .6" HOURS 8, MINUTES

• .3" SECONDS

• COMPLETE WITH WOOD CASE

KIT: $34.95 ASSEMBLED: $39.95

ECONOMY CAR CLOCK

. '/."LED MODULE! M;k

• COMPLETE WITH CASE,BRACKETS TIME SET ifPUSHBUTTONS %

• ALARM OPTION

KIT: $19.95 ASSEMBLED: $26.95

PENDULUM

$14.95

GIVE YOUR DIGITAL CLOCK A PENDULUM SWING

9 TO 12V DC -GO HZ'INPUT

SIMPLE HOOK UP TO. ANY CLOCK

CASE WITH BRACKET

$3.75

MARK FOSKETS'

SOLID STATE TIME

P.O. BOX 2159DUBLIN, CALIF. 94866

ORDERS (415)828-1923

master charge

24 HRPHONE

CALIFORNIA RESIDENTS ADD 6% SALES TAX

present by myself and other personsin the group are the power conversionelectronics, ADC system, and the radiotelemetry link.

Ralph L Hollisjr

University of Colorado

Boulder CO 80309

Our thanks to Ralph Mollis forcalling these errors to our attention.We eagerly await the further adventuresof Newt. . .CM

MORE ON TV SHIMMY

I am moved to write this because ofthe unsatisfactory answer given in "AskBYTE," page 145 of the November 1977BYTE, with regard to cathode ray tube(CRT) image "shimmy."

The root cause of this is almostalways 60 Hz power line interferencewith the CRT scanning waveforms asseen by the electron beam. Ripple in theinternal power supplies of cheap moni-tors or TV sets can easily amplitudemodulate the scanning waveforms, parti-cularly the horizontal waveform. ACmagnetic fields emanating from themonitor's own power transformer canalso deflect the beam. Sometimes thefield from a nearby computer powersupply can affect the display, parti-cularly if a "constant voltage" trans-former is used. These generally emitseveral times more field than a standardtransformer does.

Commercial TV uses a vertical scanrate which, for practical purposes, isexactly 60 Hz. This was done so that theinterference pattern on the screen wouldbe static and therefore less objection-able. The fact that a video display imageshimmies (swims, crawls, waves) is proofthat the vertical rate of the video sourceis not dead-on 60 Hz because of a designcompromise, drifting oscillator, or otherdefect.

The problem may be corrected or atleast reduced by attenuating the inter-ference in the monitor. Ripple in themonitor's power supply may be reducedby increasing the main filter capacitor bya factor of five to ten. If a voltage doub-ling supply is used, two capacitors mustbe increased. Shield the power trans-former with a metal box from an oldmilitary type transformer. Find a biglamination from an old transformer, cutand shape it into a cylinder, and slip itover the picture tube neck behind thedeflection yoke. These measures shouldcut the interference by a factor of fouror more and at least make the systemliveable.

Hal Chamberlin

29 Mead St

Manchester NH 03104

IS VIRTUAL A VIRTUE?

Mark Dahmke suggests, in an articletitled "Virtual Memory and VSAM forMicros," November 1977, page 224, thatvirtual memory techniques be considered

for new APL interpreters. Indeed, itmight be a cure for the problem oflimited primary memory. However, onemust ask what price must be paid forthe vast increase in memory spaceavailable to the user. I submit the priceis either increased cost for specializedaddressing hardware to support virtualmemory or a slower running machineif the virtual memory techniques areimplemented in software.

No matter how one chooses toimplement a virtual memory scheme, thesecondary memory must still be ac-cessed. This process takes time andeffort by the machine to execute, justlike the more traditional file accessmethods.

While the concept of virtual memorymay be practical for large machines likethe IBM 370 or Univac 90/80, I believevirtual memory on a microcomputer isnot a practical option, given the currentstate of technology available.

Clayton A Dane III

423 Roberts Av

Conshohocken PA 19428

COMMENTS ON THE MCM/70FROM A USER

I recently came across your Augustissue in which the desirability of imple-menting APL on a microprocessor isdiscussed with the inference that it hasnot yet been accomplished. I would liketo inform you that an APL interpreterwas written for an Intel 8008 micro-processor in 1972 by a company calledMicro Computer Machines of KingstonCANADA. The resulting computer,which was called the MCM/70, was firstsold commercially late in 1974.

The interpreter uses 32 K bytes ofROM and about 7 K bytes for IO andspecial functions. In this space, a fairlycomplete subset of the APL language isimplemented. Functions not imple-mented are matrix divide, factorial/bi-nomial coefficient for nonintegral valuesand lamination.

My company purchased an MCM/70in August 1975 and it has been usedextensively since then. The version weown has 8 K bytes of user availablememory, two cassette drives and aDiablo Hi-type printer which can alsobe used as a plotter (with a horizontaland vertical resolution of 1 /48th and1 /60th of an inch respectively).

One of the most interesting anduseful features of the MCM/70 is avirtual operating system which allows acassette (or floppy disk) to be used asan extension to memory. In this wayjobs that would take up to 110 Kbytes on a timesharing computer canbe run on the MCM/70, provided noindividual program is larger than about4 K bytes. (110 K bytes is the maximumcapacity of the cassette; use of a floppydisk increases this capacity to 256 Kbytes.)

We have used the MCM/70 for manyroutine engineering problems, and esti-mate that it has already earned its

22 BYTE February 1978

Circle 109 on inquiry card.

THE COMPLETE COMPUTER

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; $1899assembled.

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 *k Computers

2465 Fourth Street • Berkeley, California 94710 • (415] 549-0858

Circle 86 on inquiry card.

BYTE February 1978

23

purchase price in savings on timesharingcomputer costs. In particular, theMCM/70 was used to simulate the ther-mal performance of a cooling pond. Thisinvolved a finite difference solution ofthe time dependent advcclion-dispersionequation of fluid mechanics.

Because of the analysis involved, thecalculation required several months ofeffort. Most people with whom I havediscussed the problem found it hard tobelieve that it could be handled on sucha small machine. It would not have beenpossible if it weren't for the' storageeconomy and power of APL in con-junction with the capability of themachine to run in the virtual mode.

The program was set up to plot theresults of calculations (ccnterline tem-peratures) as they were produced. Inthis way the effect on the temperatures,of changes in thermal input and/orclimatic conditions, could be monitoredwith the option to change either the dataor the program without restarting therun.

We have also used the machine formany other projects and find it a veryuseful tool for the type of throwawayprogramming that is typical of muchengineering work.

The MCM/70 has since been up-graded to the MCM/800 through theuse of a specially designed micropro-cessor that has a similar instruction setto the 8008 but performs APL oper-ations about ten times faster.

R V Elliott PhD

Ontario Hydro

700 University Av

Toronto, Ontario

CANADA M5G 1X6

See page 216 of December 1977BYTE for a current report on theMCM/70.

COPYRIGHTS: US VERSUSCANADIAN?

The long letter from the Canadianpatent attorney Daniel A Mersich doeslittle to clarify the situation, since itreveals ignorance of American law. Infact, software is protected under theAmerican copyright law, just as newhardware is protected under patent law.Enforcement of copyright is similar toenforcement of patent: the owner takesthe violator to court.

American law seems clear to me(although I am assuming that the copy-right office regulations which implementthe law will remain the same) in that acopyright of software must be presentedin a printed form readable by a (know-ledgeable) human; it cannot be just amagnetic tape or a binary listing.

Since the philosophy of the patentlaw is that it will provide protectionwhile providing public access to newtechnology, a person attempting topatent a little black box would haveto describe the new technology insideto get a patent (like bubble memory).If the function was in fact carried out byprogrammable sequential steps, the de-scription would have to be carried to thecopyright office.

The US copyright office has a flierdescribing procedures and limits forsoftware programming.

Mike Firth

104 N St Mary

Dallas TX 75214

CLARIFYING PERSONAL USEOF PATENTED INVENTIONS

I must take issue with DanielMersich's comments on patents in theNovember 1977 "BYTE's Bits." Thoughhis information is, for the most part,correct, he leaves readers with an impres-sion which is quite mistaken.

It is quite true that a commercialproducer infringes a patent even byinadvertent "reinvention." The PatentCode gives the owner of a patent anabsolute commercial monopoly, goodagainst anyone who seeks to profit fromthe same knowledge. The fact thatanother inventor develops the samedevice without knowledge of the patentis of no effect.

However, a patent does not, despitethe impression left by Mr Mersich, pre-vent every person from developing andusing a given device. In general, a non-commercial user may create and use anidentical device, even by directly copy-ing the patent, and regardless of lack ofpermission from the patent owner. Suchusers are free to create and operate thedevice so long as use is restricted topurely personal experimentation, amuse-ment, instruction, education, or curio-sity.

I'm afraid that Mr Mersich may haveconvinced some readers that even suchrestricted personal use infringes, so thata patent search would be required forevery new development. The PatentCode is often a pain in the lower bits,but it isn't that restrictive.

C Kevin McCabeThe Lawyer's Club, Room B-14551 S State StAnn Arbor Ml 481041

MORE 6800 SOLUTIONS:

FOR SWTPC 6800

fAS-1 ANALOG INTERFACE MODULE >

• FAST, ACCURATE A/D, D/ACONVERSIONS

• EIGHT ANALOG INPUT CHANNELS

• ONE HIGH-SPEED ANALOG OUTPUT

• OCCUPIES ONE I/O SLOT

• $87.50 KIT $115.00 ASSM.

SC-1 SERIAL INTERFACE CARD

• RS-232 SERIAL INTERFACE

• FULL CONTROL SIGNALSIMPLEMENTED

• MOST VERSATILE SERIAL I/OAVAILABLE

{• $30.00 KIT $40.00 ASSM.

FOR MOTOROLA "D2"

/DA-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

• EXPANDEDCONSOLE MONITOR ROM

• 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 Master Charge & VISA Welcome Write or call for Free Catalog.

MICROWVRE SYSTEMS CORPORATION

P.O. BOX 954 • DES MOINES, IOWA 50304 • (515) 279-9856

24 BYTE February 1978

Circle 74 on inquiry card.

Figure 7: The Venn dia-gram universe is the collec-tion of all points in therectangle; the points insidethe circle (p) are pointscorresponding to terminalp being H. Those outside(p) refer to p=L

Some Musings on Boolean Algebra

The purpose of this article is to unify theconcepts of digital electronics, the graphicalrepresentation of set theory and proposi-tional calculus, using Boolean algebra. Ourmotivation for the background work repre-sented in this article was the design of anencoder for a surplus keyboard. That wasas much a problem in set theory and propo-sitional calculus as it was in digital design.

First a note about the subject matter ofthis article. The availability of MSI and LSImakes the systematic reduction of manylogic functions a waste of both time andmoney. For example you can buy an 8 bitaddressable latch for about $1.50. Synthe-sizing it out of small scale integration cantake some 75 gates or 30 integrated circuits.No money or time savings here! The fol-lowing techniques are quite general, though,and you can certainly find design problemsthat don't have off-the-shelf solutions. Inthis particular case (keyboard encoding),off-the-shelf solutions exist. But learningabout logic design techniques requiresillustrative examples. Encoding a large setof inputs serves well as such an example.

In the various systems, digital, graphicaland logical, analogous concepts are expresseddifferently. We're going to show the equiv-alences which exist. Digitally and logicallywe have a "system," where graphicallywe have a "universe." Universe and systemwill mean the same thing to us. Our systemis composed of "states," while our universeconsists of "points." The meaning of pointwill be clearer after we've explained state.Physically we picture a device with severalterminals, some input and output, the othersinternal, perhaps not even accessible. Sup-pose there are N terminals, each of whichcan have its signal level high (H) or low (L).

H and L are the two possible states of anyterminal. We want to know how many statesthe system has. There are two states for thefirst terminal, times two states for the sec-ond, times two for the third, . . . times twofor the Ntn, giving a total of 2N states forthe system. Another way to express this isto consider each terminal of the device tobe represented by some bit in a binary word.For N terminals we need an N bit binaryword, the ptn bit representing the state ofthe ptn terminal. Since an N bit binary wordcan take 2^ different values, our systemmust have 2^ different states. Each possiblearrangement of Hs and Ls on the variousterminals defines a unique system state,which corresponds to a point in our equiva-lent Venn diagram universe. The logicalanalogy to the digital terminal is the proposi-tion, merely a statement, which is true(T) =1 or false (F) = 0.

Think of any device terminal, call it p anddefine the proposition which is T whenp = H and F when p = L. Of course we callthis proposition p also. Graphically we col-lect all the points of our universe whichcorrespond to system states with terminalp = H and enclose them in a curve as infigure 1. It is the interior of this region thatcorresponds to p. In summary we equatepropositions with regions and label themp, q, r, etc. If a device has two inputs, twooutputs and four internal terminals then theuniverse has 2& = 256 possible states orpoints. The aforementioned keyboard en-coder is a 64 input, 7 output and n internalterminal device where minimizing the un-known, n, is one way of stating the logicdesign problem.

Venn diagrams are an easy way to demon-strate the laws of logic. For example it's an

Dan Bunce

139 Morewood Av

Pittsburgh PA 15213

Art Schwartz740 Broughton StPittsburgh PA 15213

BYTE rebruary 1978 25

Figure 2: The output ofthe inverter is the com-plement of the input. Asmall circle means invertthe signal. The trianglesymbolizes an amplifier or"buffer" of the digitalsignal.

Figure 4: A degeneratecase of figure 3a. Specifi-cally, the empty set:pAq=0. Said differently,there are no states for thissystem with p=H and q=L.

Figure 5: A 2 input ANDgate is shown in (a) and a2 input OR gate is shownin (b). Equivalences forthe "inverted" forms ofthese gates are shown at(c), NAND; and at (d),NOR.

Figure 3a: The most gen-eral example of two vari-ables. Apparently differentexamples are degeneratecases of this figure.

axiom of logic that (p) = p. (An axiom issomething that you can't prove; you simplymust assume it is true in order to build asystem of thought.) Figure 1 makes thisvery plausible because p partitions theuniverse into the regions p and p (read asnot p or complement of p). p lies outsideof p. Now what lies outside of p? It can'tbe p and it must be inside the universe. Allthat's left is p. It seems reasonable to accept(p) = p. The inverter or inverter gate (fig-ure 2) is the digital device that generates thecomplement of its input.

The excitement begins when we labelsome other terminal q and associate with itthe proposition which is true when terminalq = H. Then p and q together partition ouruniverse as shown in figure 3a.

For even two variables there are manypossibilities, one of which is shown infigure 4. This relation is written p = > q;another common form is p<=q (read as pimplies q or p is contained in q). In thisexample look at the areas p and q. Area qis smaller than and wholly containedwithin p. This illustrates another of theaxioms of logic,

(p = >q)=>(q=>p).

Of course we might have the other case,q = > p. If we have p = > q and also haveq = > p we then have the definition p = q.Implication and equation are distinctconcepts.

;:£>"< :Z>

pvq

) L^°~~ saME AS JP

I y \s°~ same as —j J°—

Figure 3b: The regionpyq is shaded. The region rof the text is unshaded.

There are many other possibilities for twovariables but they're all special cases offigure 3a. In general some points will lie inboth p and q. Call this set of states s andwrite s = pAq, read s = p and q. This is oftenwritten s = pq symbolic of ordinary multi-plication, since associating the possible binaryvalues of 0 or 1 with the variables p and qgives numerically correct results for s.Digitally we realize this set with the ANDgate as shown in figure 5a. We'll call it theset of states for which p = T and q = F. Wesee that we can write t = pAq. A thirdregion is u = pAq. What about the fourthregion, that for which p and q are both L?Certainly this set r = pAq. But we candescribe it differently. First we form the setfor which either p or q = 1. This is the regionof both circles and is shown in figure 3b. Itis the set pvq (p or q) which, since we'readding areas, is sometimes written p + q. Itcomes as no great surprise that the OR gateexists for just this purpose (see figure 5b).When we form the complement of pvq, weagain get the set r!

Our diagrams have given us one of De-Morgan's laws: pAq = (pvq)- We can get anequivalent form of the law by taking thecomplement of both sides of the equation,(pAq) = pvq- Figure 3a also gives us theother law, pvq = (pvq), which is equivalentto (pvq) = PAq.

Now you begin to see where we're going.If we want our system to generate pAq fromp and q we have options. We could use eithera NOR gate (NOR = > not OR), or aninverter each for p and q followed by a 2input NAND gate. In a NOR gate the inver-ter follows the OR gate. Use figure 3a toconvince yourself that pvq is different from(p vq). There are NAND gates as well andyou've probably guessed what they do.It's worth noting that in the usual mode ofoperation a transistor inverts the signal.Consequently NANDs and NORs are moreeasily fabricated than ANDs and ORs, andmore often used.

Now a reminder about what all this

26 BYTE Fcbnwy 1978

Figure 6: Diagram used toshow operations are associ-ative and distributive.

\>

means. The ps and qs are terminals, regionsor propositions. But most of all they're 0or 1. pAq is also 0 or 1. If p = 1 at the sametime that q = 1 then pAq = 1, if either (orboth) is 0 then pAq = 0. What aboutpVq? If both are 0, pvq is 0, but if eitheris 1 then pVq = 1. One objection to thenotation + for OR is that 1+1=1.

We can consider three variables byreferring to figure 6. Convince yourself ofthe following:

(pvq)vs=pv(qvs)=pvqvs(p Aq)AS = p A(q As) = p Aq As.

In words, the operation v and A areassociative. The next two examples are onlya little harder to see:

p v(qAs) = (pvq) a(pvs)p A (qvs) = (pAq)V(PAs).

In mathematical parlance, the operationsare distributive. The formulas show thatwithin a set of parentheses order doesn'tcount; that is pAq = qAP or pVq = qVP-This means the operators are commutative.

We want to write equations in more thanthree variables but shading the subregions offive circles creates eye strain faster than un-derstanding. Our diagrams have been mosthelpful, though, for we can go on symbol-ically, by repeated application of what we'vealready learned.

Let's work out an example. Jo reducex = [(pvq) vs] At we define a new vari-able, and continue to define new variablesas often as necessary: u = (pvq) Vs, so theoriginal expression takes the simplified formx = uAt = (UVT). What's u? lust plug inu = (p v q) V s, sou = (pvq vs). Substitute

back and write: x = [(p v q V s) V t]. Onecircuit that generates x is shown in figure 7.We emphasize again, x is a number, either 0or 1, and its value depends on the values ofp, q, sand t.

For many variables, we'll run out of let-ters to designate propositions. There's aneasy way around this. If we have a proposi-

tion a, and later in the problem we find we'dlike to call a different proposition a also, wetack on subscripts. The first propositionbecomes a(1), read a-one or a-sub-one, thesecond a(2). We never run out of subscriptedletters, but more important subscriptingallows a more compact notation. When wehave a(1) v a(2) v a(3) V . . . v a(n) wewrite this as

nV

i=1

0).

Similarly we can formb(1)Ab(2)A...A b(m)

m: A (b(j)).

The first time you encounter this notationit appears awkward. In fact it's very effi-cient, but like any unfamiliar concept itrequires some mental accommodation. When-ever you feel uncomfortable with it just goback to the definition and expand it. It soonbecomes second nature.

We'll pose and solve a final problem. TheTeletypewriter keyboard which started thisarticle has 64 switches. We wanted a circuitwhich shows when any of the switches havebeen pressed. The goal is, in effect, a 64input OR gate. Nobody makes such a thing(if they did they'd need a 68 pin packageto put it in), but we can synthesize it. Justfollow the expansion:

V ai =

where

b(1,j)=a(j),b(2,j)= a(16+j)...b(8,j)

b(i,i

= a(8+j), b(3,a(56+j).

Once you understand how to break OR intoNOR then NAND (reading from inside theparentheses since that's the way the signalflows), you can nest successively, generating:

Figure 7: Circuit repre-senting the equation:x=l(p\/q) vs/ f\t.

BYlt Fcbruan l'J78

27

a(i

T>

€>

X>i

^€^

fO

va (i)I" 1

F/gwre 5: A 64 input OR gate. Dotted lines indicate repetition of the relevantelement. For example, there are 32 2 input NOR gates at the leftmost level.

4A1

[2/4

V A1 \1

"2

V d(i,1

,k,l)

)l

NORs. Four of these come in one integratedcircuit package which means we need eightpackages at the input level. The second levelrequires four packages since there are twoof these gates in each integrated circuit, thethird two packages and the fourth one halfpackage. The circuit uses approximately 15integrated circuits.

We achieve the same result more directlyif we begin with the complemented signalfrom each switch. In practice this meansthe switch is wired H rather than L. It isneither more nor less difficult. We write thefollowing:

V(a(i))

4 /4 T4A [ V A

1 \i Li

(c(j, k, I))

beginning with complemented signals weneed 4 input NANDs, NORs, and NANDs,as shown in figure 9a.

An even more direct means to our end isthe following formula which is illustratedin figure 9b:

V(a(i))

A1

V (b(j, k))1

Working from the inside out we need NORgates, NAND gates, NOR gates, NAND gates.2 input NORs are common, as are 4 inputNANDs. If we feed the 64 input signals into32 2 input NORs, their outputs into eight4 input NANDs then on into four 2 inputNORs and finally into a 4 input NAND, wehave a 64 input OR. Using a logic circuitrepresentation, figure 8 shows how thisexpression might be wired.

At the first level we've used 32 2 input

where all NAND and NORs are 8 input. Thisrequires only nine packages. The only thingwrong with the last method is 8 input NORsare unusual. They are available in newerCMOS, but not in low numbered (7400)TTL. Since there are other nearly as simpleand certainly less expensive ways of doingthe job it hardly pays to look for the specialintegrated circuits.

Having established (or more correctly,justified) the laws of logic and worked a few

a(i ){

Figure 9: Two differentways of building a 64 in-put OR gate.

a(i)(

=3 y°—Va(

28

BYTE February 1<J78

problems, we're ready to take on a multitudeof simple reductions.

A more formal and complete treatmentof logic (at the introductory level) ispresented in the monograph PropositionalCalculus by P H Nidditch, Dover Publica-tions, New York. It sells for about $1, isclearly written and aimed at the general rea-der. Armed with this basic knowledge ofcombinatorial logic, we were able to imple-ment a keyboard encoder."

ments not contained within one set are the com-plement of the set.

DeMorgan theorem: Inversion of a series of ANDimplications is equal to the same series of invertedOR implications. The inversion of a series of ORimplications is equal to the same series of invertedAND implications. AAB = AVB and AVB = AAB.

Empty set: A set containing no elements.

Gate: A circuit having two or more inputs and oneoutput. The output depends on the combination oflogic inputs.

GLOSSARY

AND gate: A binary circuit with two or moreinputs and a single output. The output is logic 1only when all inputs are logic 1. The output is logic0 if any of the inputs are logic 0 (A A B).

Associative: When the result of an equation isindependent of the groupings of the elements,provided the elements are kept in the same order,the operation performed on the equation isassociative.

Axiom: A proposition regarded (with good reasons)as self-evident truth.

Commutative: When the result of an equation isindependent of the ordering of the elements withinthe equation, the operation performed on the equa-tion is commutative.

Complement: In a given universe, all of the ele-

I triplication:propositions.

Logical relation between two

Inverter: An operation or device which outputs thelogical complement of the input. Inverting logical 1gives logical 0; Inverting logical 0 gives logical 1.

NAND gate: Combination of a NOT circuit and anAND circuit (A A B).

NOR gate: Combination of a NOT circuit and anOR circuit (A V B).

OR gate: Binary circuit with two or more inputsand a single output. The output is logic 0 when allthe inputs are logic 0. The output is logic 1 if oneor more of the inputs is logic 1 (A V B).

Universe: Set containing all elements relevant to aspecific problem.

Venn diagram: Graph employingcircles to representlogical relations between and operations on sets.

The Best of BYTE, Volume 1

Send now to:

BITS, Inc70 Main StPeterborough NH 03458

The volume we have all been waiting for! The answer to those unavailable early issues ofBYTE. Best of BYTE, edited by Carl Helmers Jr and David Ahl. This 384 page book ispacked with a majority of material from the first 12 issues. Included are 146 pagesdevoted to "Hardware" and how-to articles ranging from TV displays to joysticks tocassette interfaces, along with a section devoted to kit building which describes sevenmajor kits. "Software and Applications" is the other side of the coin: on-line debuggersto games to a complete small business accounting system is included in this 125 pagesection. A section on "Theory" examines the how and why behind the circuits andprograms. "Opinion" closes the book with a look ahead, as to where this new hobby isheading. It is now available through BITS Inc for only $11.95 and 50 cents postage.

| Name

I Address

1 City

State

Zip

St (

D□

□

sua

jf BYTE, Volume 1

Check enclosedBill MC #Bill BA #Signature

Price of BookPostage, 50 cenTotal

Exp.Exp.

$

The Be

s $

$

DateDate

| let;

| lUllNUIWl

j —

In unu

[ cases, processing may exceed 30 days

All orders

must be prepaid

LI

You may photocopy this page if you wish to leave your BYTE intact.

Circle 9 on inquiry card.

BYTE February 1978 29

51

he

Jofdf

connoting

Addison-Wesley's Joy of Computing Series —dedicated to worthwhile personal computing.Books that show you what to do and how to doit well.

Programming a Microcomputer: 6502

by Caxton G. Foster,University of Massachusetts, AmherstTeaches microcomputer programming inmachine language. Emphasizes KIM-1.

BASIC and the Personal Computer

by Thomas A. Dwyer and Margot Critchfield,University of PittsburghAn outstanding presentation of BASIC andextended BASIC showing a great diversityof applications.

The Little Book of BASIC Style

by John M. Nevison,John M. Nevison AssociatesEmphasizes style in BASIC. To be read,reread, and referred to often.

*

Put a little joy in your computing experience —order books or get more information by writingto Ann Whitworth, Business & ProfessionalDivision, Addison-Wesley Publishing Company,Reading, Massachusetts. Or, ask at yournearest computer book store.

TT

Business & Professional Division

ADDISON-WESLEY

PUBLISHING COMPANY

Reading, Massachusetts 01867

LanguagesFonum

The Case for a"Compiler Interpreter"

Richard A Rodman

3041 Patrick Henry #202

Falls Church VA 22044

Your "Technical Forum," May 1977issue, presents a higher level language ap-proach which, although based on idealsachievable on larger systems, is unrealizableon microprocessor devices within any realmof practicality. The character set alone ofPL-SKYE is unavailable on displays toanyone save ECD Micromind or Noval 760users, and hard copy would be a foregoneconclusion.

I have been working on high level lan-guage ideas myself and have already dis-carded the use of a direct compiler systemof home computers because of its stringentdemands on mass storage peripherals. Yet,as Mr Skye realizes, the resplendent luxuryof the source code in memory used by aninterpreter is also far too costly for anythingbut the smallest programs.

However, there is middle ground in theform of a semi-compiler or "compilinginterpreter." This is a program, or set ofprograms, which reads the source code fromtape, translates it into compact symboliccode, and then interprets this code. As asingle program, this is of course too large forthe amount of memory space in a homecomputer. However, it may be broken downby task into three segments: the translator,which creates the symbol table as well; theresolver, which resolves label references,allocates memory for variables and soforth; and the interpreter. These three seg-ments, would, each upon completion, loadin the next segment. There would be anoptional fourth segment, the "recon-structer," which would be able to recon-struct the source code if desired.

I feel that this arrangement would allowthe use of slow speed devices, such as theaudio cassette recorder, without sacrificingan enormous amount of speed. Translationwould of course have to be done in a singlepass, reading from one tape onto another.

As far as specifying the particular ele-ments of the language, it would be best tostart simple. I, as well as many others, share

30 BYTE February 1978

Circle 1 on inquiry card.

The 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 February 1978 31

UP AND RUNNING

TDL EQUIPMENT USED BY NEW JERSEY PUBLIC TELEVISIONTO PROCESS NEW JERSEY GUBERNATORIAL PRIMARY ELECTION RETURNS

John Montagna, computer engineer (above left),lead this successful network team in generatingelection results speedily, efficiently and reliablyusing predominantly TDL hardware and soft-ware. Montagna created three programs to getthe job done. The text for a SWAPPER pro-gram was written and assembled using the TDLTEXT EDITOR and Z80 RELOCATING MACROASSEMBLER. The SWAPPER text and alldebugging was run through TDL's ZAPPLEMONITOR. The relocatable object code waspunched onto paper tape. A MAIN USERSprogram updated votes and controlled air dis-play. An ALTERNATE USERS program gothard copy out and votes in. The latter twoprograms were written in BASIC. Montagnamodified the ZAPPLE BASIC to permit time-sharing between the two USERS programs.

Four screens were incorporated, two terminalsentered votes as they came in and were usedto call back votes to check accuracy. Mon-tagna called on the power and flexibilityoffered by TDL's ZPU board and three Z-16Memory boards.

Montagna's setup worked constantly for overfour hours updating and displaying state-wideand county-wide- results without flaw.

"I chose TDL because they have all the soft-ware to support their hardware, and it's good;it has the flexibility to do the job."

John Montagna

We salute John Montagna and NEW JERSEYPUBLIC BROADCASTING for spearheadingthe micro-computer revolution.

TDL's XITAN SYSTEMS have the capacity to dosimilar tasks for you. Write to us for XITANinformation and the name of your nearest TDLdealer.

32 BYTL February 1978

TECHNICAL

DESIGN

LABS

RESEARCH PARK BLDG. H 1101 STATE ROADPRINCETON, NEW JERSEY 08540 (609) 921 -0321

Circle 11 5 on inquiry card.

the visions of Mr Skye, but it is best to startwith the humble and glorify it, rather thanto start with the glorious and humble it.

BYTE is to be commended for the publi-cation of the Tiny Assembler in bar codes.However, the dearth of bar code hardware iscertain to lead to its gracing far more book-shelves than memory chips. Furthermore,even with suitable hardware, the reliabilityof bar code loading remains to be demon-strated for most of us. Audio disks are moreeasily read but obviously more expensiveand quite subject to physical damage. (Onecan imagine the record skipping and loadingall of memory with "disposable interrupts.")[This has not been a problem with InterfaceAge's "Floppy ROMs," according to BobJones. . .CM/ Surely there must be otherpossibilities for the publication of largeprograms.

There is a very fine line between stan-dardization and ossification. Technologicalsuperiority must always come before stan-dardization, although the primary things tokeep in mind are specific needs and availableresources. I feel that too often these factorshave been ignored in this field. I hope thiswill not be the case in the future."

APL Character Representations

David Sloan

628-555 Keenleyside St

Winnipeg Manitoba R2K 3PG

CANADA

For those readers with a problem ofrepresenting APL characters, I have found atemporary solution. For those who have avideo display with reverse video selectablefor each character, the functions can be veryeasily displayed as reverse polarity char-acters. This is easily accomplished by de-fining one of the keys as a special functionkey through software control. This willproduce the reverse polarity required.

Since most of the APL characters are aclose representation of the present keyboardcharacters, this will be sufficient for mostapplications. It also means that the lowercase and special characters can still berepresented.

In the APL interpreter, a special char-acter can then be easily detected, by lookingto see if the cursor bit is turned on."

DAJEN Electronics

7214 Springleaf Ct.

Citrus Heights, Ca. 95610

(916) 723-1050

Easy to use! Everything you needfor I/O, mass storage, and a monitor.

3 complete parallel parts with theirown handshaking, latched outputs, bi-directional.

Serial port with 20 ma, 60 ma,RS-232, speeds from 75 to 19,200. 256bytes of RAM for stack and bufferstorage.

2708 PROGRAMMER

3K of ROM, 2-2708's provided withmonitor: complete video, software, cassette routines, 16 com-mands total.

High-speed cassette system with 2 relays, simultaneousread and write, speeds from 500 to 40,000.

Yes, please rush my SCI to:

Name

Address -

City State Zip.

Mastercharge Exp. .

Visa/B.A Exp. .

Signature

Altair, Poly,IMSAI, Z-80,Tarbell Com-patibleKit$285Assembled$345

OUR NEWEST BABY!

The System Central InterfaceSCI

Circle 35 on inquiry card.

BYTE February 1978 33

why the last busis the best bus

If you want to be better, youhave to be willing to makechanges. So, when we starteddesigning our H8 Computerback in 1975, we put aside a lotof pre-conceptions to design abetter computer. For instance,instead of slavishly adoptingan inferior bus as a "standard,"we designed our own. Weused fifty fully-buffered linesbecause that's all we reallyneeded with the H8's built-insystems controller. The result?Clean signals, minimumnoise and great expansioncapabilities.

Next, we picked a male/fe-male connector. Not only is itless expensive than edge con-nectors, our tests show it'salso more reliable! And be-cause it costs less, every H8motherboard includes all theconnectors you need for ex-pansion. There's nothing extrato buy.

The connectors are mountedon the right side of the cabinetat an angle so the boards tiltback. That gives us a couple ofsignificant advantages. First,it allows the boards to belarger without requiring ataller cabinet. So our circuitboard layout is more open,which makes the boardseasier to build - even if you'venever built a kit before. Sec-ond, the angled mountingprovides easy accessibility toall the components on the faceof the boards without an ex-tender. (Many times an exten-

der alters the transmissionCharacteristics of the bus,which masks the problemyou're trying to solve or evencauses new ones.)

And we plan to support the H8bus. In the future you can ex-pect to see many new andexciting accessories for the H8bus like higher density, lowerpower memories and a varietyof unique I/O interfaces.

We're very happy with our bus,and we think you will be, too.

Who minds being different...as long as you're better.

HeathkitCompute

Heathkit Catalog

Read about nearly

400 money-saving,

fun-to-build

electronic kits.

Use coupon to send for

your mail order catalog

or bring coupon to a

. Heathkit Electronic

Center for your catalog.

Schlumberger

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

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

Name-

Address.

City_

_State_Zip-

AVAILABLE LOCALLY ATHEATHKIT ELECTRONIC CENTERS

(Units of Schlumberger ProductsCorporation) Retail prices on someproducts may be slightly higher.

ARIZONA: Phoenix, 85017, 2727 W. Indian SchoolRd„ Phone:602-279-6247; CALIFORNIA: Anaheim,92805, 330 E. Ball Rd., Phone: 714-776-9420; EICerrito, 94530, 6000 Potrero Ave., Phone: 415-236-8870; Los Angeles, 90007, 2309 S. Flower St.,Phone: 213-749-0261; Pomona, 91767, 1555 OrangeGrove Ave. N., Phone: 714-623-3543; RedwoodCity, 94063,,2001 Middlefield 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-8920; Woodland Hills, 91364, 22504 VenturaBlvd., Phone: 213-883-0531; COLORADO: Denver,80212, 594C W. 38th Ave., Phone: 303-422-3408;CONNECTICUT: Hartford (Avon, 06001), 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:Atlanta, 30342, 5285 Roswell Rd., Phone: 404-252-4341; ILLINOIS: Chicago, 60645, 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), 5960 Lamar Ave., Phone: 913-362-4486; KENTUCKY: Louisville, 40243, 12401Shelbyville Rd., Phone: 502-245-7811; LOUISIANA:New Orleans (Kenner, 70062), 1900 VeteransMemorial Hwy., Phone: 504-722-6321; MARYLAND:Baltimore, 21234, 1713 E. Joppa Rd., Phone: 301-661-4446; Rockvllle, 20852, 5542 Nicholson Lane,Phone: 301-881-5420; MASSACHUSETTS: Boston(Peabody, 01960), 242 Andover St., Phone: 617-531-9330; Boston (Wellesley, 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, 48021, 18149 E. Eight Mile Rd., Phone: 313-772-0416; MINNESOTA: Minneapolis (Hopkins,55343), 101 Shady Oak Rd., Phone: 612-938-6371;MISSOURI: St. Louis (Bridgeton), 63044, 3794McKelvey Rd., Phone: 314-291-1850; 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-635-3090; Jericho, Long Is-land, 11753, 15 Jericho Turnpike, Phone: 516-334-8181; Rochester, 14623, 937 Jefferson Rd., Phone:716-244-5470; White Plains (North White Plains,10603), 7 Reservoir Rd., Phone: 914-761-7690;OHIO: Cincinnati (Woodlawn, 45215), 10133Springfield Pike, Phone: 513-771-8850; Cleveland,44129, 5444 Pearl Rd„ Phone: 216-886-2590; Col-umbus, 43229, 2500 Morse Rd., Phone: 614-475-7200; Toledo, 43615, 48 S. Byrne Rd., Phone: 419-537-1887; PENNSYLVANIA: Philadelphia, 19149,6318 Roosevelt Blvd., Phone: 215-288-0180; Frazer(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; Houston,77027, 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, 2221Third Ave., Phone: 206-682-2172; WISCONSIN:Milwaukee, 53216, 5215 W. Fond du Lac, Phone:414-873-8250.

34 BYTE February 1978

Circle 54 on inquiry card.

Photo 1: Several typical stepper motors. In order of physical size from smallest to largest, the motors are rated as follows inregard to power consumption and torque: 2 W at 0.5 oz-in, 3 W at 2.0 oz-in, 6.5 Wat 9.0 oz-in, and 12 W at 16.0 oz-in.

Taking the First Step

Stepper motors are coming down in costnow to the point where they can be designedinto home projects. They are a natural forvariable speed or precise angular movementcontrolled by a microprocessor.

All stepper motors convert electricalpulses into mechanical movements. In thisarticle I will be referring to permanentmagnet stepper motors such as those shownin photo 1. This type of motor is classifiedas either a pulse stepper or a logic stepper.Pulse steppers usually are unidirectional andhave one center tapped coil. Logic steppersare multicoil and bidirectional. I will confinemy drive controls to the bidirectional logicstepper.

Stepper motors have typical step anglesfrom 3.75° up to 90°. The step angle isdetermined by the number of coil phases inthe motor. For any motor design this is

fixed and very accurate. Stepper motors canbe readily obtained with operating voltagefrom 5 V to 48 V, with 1 2 V and 24 V themost common. The construction of themotor consists of a rotating multipole per-manent magnet and stationary multipoleelectromagnet coils. The rotating magnet isformed by taking a cylinder of ferromag-netic material and magnetizing alternatenorth and south poles. 24 pole pairs give 7°30' steps.

The 4 phase stepper has two centertapped windings. Each winding surroundsone half of the rotor. Soft iron fingersarranged into pairs concentrate the magneticflux from each winding near the rotor. As awinding is energized, the rotor moves toalign its magnetic poles with the poles of thestator. The next coil in line will again shiftthe stator field and cause another rotor step.

Robert E Bober449 Pleasant StFramingham MA 01701

BYTE February 1978 35

MAGNETICFLUX

Figure 1: Illustration ofthe magnetic fields sur-rounding a current carry-ing coil. A simple methodfor determining the direc-tion of the magnetic fluxand the north pole of thesystem is shown in figurelb. If the fingers of yourright hand are wrappedaround the coil in the di-rection of the current,your thumb will be point-ing in the direction of themagnetic flux. This iscalled the right hand rule.

(a)

Thus with each pulse, one precise step ismade. The trick is to energize the coils in theproper sequence.

Theory of Operation

The basis for all motor rotation lies inmagnetics. Like poles repel while unlikepoles attract. The tricky part is in creatingthe magnetic poles and directing the mag-netic flux. The magnetic poles can be eitherpermanent magnets or electromagnets. Per-manent magnets are made of a variety ofmaterials, and once magnetized by a strongmagnetic field will retain their strength.Electromagnets consist of a coil of wiresurrounding a soft iron structure. Whencurrent flows in the coil, a magnetic fieldexists. When the current ceases, the field

CURRENT

(b)

ceases. Figure 1a shows a typical electro-magnet. When current flows as indicated, themagnetic flux creates north and south polesas shown. The magnetic flux is related to thedirection of current in the coil using theright hand rule illustrated in figure lb. If thefingers point in the direction of coil currentflow, then the thumb points in the directionof magnetic flux and the north pole. If twomagnetic systems exist in close proximity,their net magnetic flux is the vector sum ofthe two individual magnetic contributions ateach point in space.

A motor consists of a stationary partcalled a stator and a rotating part called arotor. In a stepper motor the stator is anelectromagnetic coil and a ferrous magneticpath. The rotor is a permanent magnet,

Figure 2: Movement of a rotor in a motor using only two poles. In figure 2a the rotor does not have any outside forces acting onit. In figure 2b one set of coils is energized and the rotor swings to line up opposite poles. When the current in the coils isreversed the rotor poles will switch. However, we cannot tell in which direction they will turn to get there.

36 BYTE February 1978

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.

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.

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

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.

North Star * Computers

2465 Fourth Street • Berkeley, California 94710 • (415) 549-0858

Circle 86 on inquiry card.

BYTE February 1978

37

Figure 3: When an additional pair of stator coils is added to the system it is possible to turn the rotor in a definite direction bya predetermined amount. The net magnetic flux is indicated by the heavy arrow in each case.

Figure 4: An explodedview of a typical steppermotor showing internalconstruction.

usually a hollow cylinder to reduce inertia.

Figure 2a shows a 4 pole motor withnone of its poles energized. When power isapplied it will snap clockwise to position 2bif the direction of current is as shown. Thisis because the opposite poles are attractingand the like poles are repelling. However,when the direction of current is reversed it isnot possible to predict the direction therotor will turn in going from 2b to 2c. Wemust energize another pair of poles as infigure 3 before we gain control of rotation.

In figure 3a the rotor is shown at restaligned with the net magnetic flux field fromthe stator coils. All four coils now havecurrent flowing. In figures 3b and 3c thecurrent has been reversed through statorcoils A and C. Therefore, the net magneticflux now adds up as shown. In figure 3b therotor has started to turn clockwise. This

rotation is caused by the repulsion of thelike poles as well as the attraction of theopposite poles. When the rotor poles againalign with the magnetic flux of the stator, asin figure 3c, the rotor is again at rest. Thismotor requires four steps per revolution.

In a realizable motor there are more thanfour poles and they are folded up around therotor. More poles will result in smootherrotation. The windings, two in these smallmotors, contribute magnetic flux to a num-ber of poles. These coils may be centertapped to allow reversal of current in thewindings with a single polarity power sup-ply. This is illustrated more fully later on.Figure 4 shows an exploded view of a typicalsmall stepper motor. The two coils areenclosed by steel cups which complete theouter magnetic path. The inner magneticpath of the stator is a series of small

Continued on page 102

STATOR COILS

REAR OUTSIDEFRAME ANDMOUNTING BRACKET

ROTOR

(CYLINDRICALPERMANENT MAONETI

FRONTOUTSIDE FRAME

FRAMEEND CAP

38 BYTE February 1978

Ohio Scientific advancesthe state-of-the-artof small computers.

From our inexpensive 8K BASIC in ROM Challenger IIP to our powerful triple processorChallenger III, Ohio Scientific offers a full range of products that are technologicallysuperior to anything available on the market today.

Challenger IIP

Challenger IIP from Ohio Scientific is our uniquepersonal computer with BASIC in ROM and 4K RAMfor programs in BASIC.

Complete with audio cassette interface and a fulicomputer keyboard, Challenger IIP can be connectedto a home TV via an RF converter and it's ready to go.

Challenger IIP comes fully assembled and testedfor only $598.00.

Challenger II

Challenger IIfrom Ohio Scien-tific is a diskbased computercapable of stor-ing up to 500,000bytes of informa-3 tion on an Ohio^ Scientific dual« drive floppy disk.Challenger II comes with 16K of RAM (the diskBASIC is automatically loaded into the computer sothere is no need for ROM's) and our powerful DiskOperating System (DOS) which allows the computerto perform big computer functions like random ac-cess, sequential and index sequential files in BASIC,and I/O distributors which support multiple terminalsand industry standard line printers.

And best of all a 16K Challenger II with serial inter-face, single drive floppy disk, (250,000 bytes) BASICand DOS costs only $1,964.00 fully assembled.

Challenger ID

Challenger III from Ohio Scientific is the revolutionary, new triple processorcomputer that allows you to run programs written for the 6502A, 6800 and Z-80processors.

Incredible as this is, a disk based Challenger III costs

only about 10% more than conventional single processor

microcomputers. A 32K Challenger III with a

serial interface and a dual drive floppy disk

assembled and tested costs $3,481.00.

!

11679 Hayden • Hiram, Ohio 44234

For more information send for ourFree, short form catalog, or send $1 forour 64 pg. Small Computing Buyers Guide.

BYTE February 1978 39

Introducing three boards onlyOhio Scientific could build.

Ohio Scientific provides 15 system boards offered in over 40 different versions for Ohio Scientific Com-puter users. All of the boards are compatible with Ohio Scientific systems and many of them are by fartechnologically superior to any other microcomputer products on the market. And Ohio Scientific has thetechnology that made them possible.

500 CPU Board

This board gives you our ultra-fast 8K BASIC in ROMwith plenty of user workspace (4K RAM) for as little as$298.00. Use it as a standalone or as the CPU in a largesystem. BASIC is there the instant you turn it on. Andin the October issue of Kilobaud Magazine, our versionof 8K BASIC came out the winner in a BASIC timingcomparison test of all of our competitors. The 500 is thefastest around!

510 Systems CPU Board

This is our unbelievable triple processor board! Com-plete with the 6502A, 6800, and Z-80 processors, thisboard allows you to run virtually all programs publishedfor small computers. Available in the Challenger III, the510 board is ideal for industrial development and re-search applications. There isn't another triple proces-sor board like the 510 anywhere, except at OhioScientific!

560Z CPU Expander Board

The 560Z board is our multiprocessing board with aZ-80 and 6100 chip. This board allows you to runseveral processors simultaneously and the 6100 chiplets you run powerful PDP8 software with the 560Z. The560Z board is the only multiprocessing board availablefor small computers, and Ohio Scientific makes it!

These three state-of-the-art CPUs are only a small part of the picture. Ohio Scientific's advanced-tech-nology offers you other unique features such as Multiport Memories, Distributed Processing, Big Disks withup to 300 megabytes on line, and Advanced Software.

11679 Hayden • Hiram, Ohio 44234

40

BYTE February 1978

Announcing the mostadvanced diskanywhere for s6,000

The 74 megabyte diskfrom Ohio Scientific

C-D74 from OhioScientific is the ultimatestorage device for smallcomputers.

The C-D74 is the firstWinchester technology diskfor small computers makingbig system technology af-fordable and reliable for thesmall system not undermaintenance contract.

The disk uses a non-re-movable sealed chamberdrive with a unique rotarypositioner to provide thehighest performance diskavailable today.

The Ohio ScientificC-D74 can store all therecords of a medium sizecompany for instant access.And the Winchester tech-nology of the C-D74 meansthat the drive can run 24hours a day without worryof disk wear.

There are other importantC-D74 applications in businesscomputing and research in computingitself. The disk makes small computerspractical for much larger jobs thanformerly thought feasible, particularly since most business computing isdisk bound and not computer bound.

C-D74 provides an unbelievable 35 millisecond average access timeto any of 74 million bytes of information. With a 10 millisecond singletrack seek, the drive has an incredible data transfer rate of 7.3 megabitsper second.

Recommended minimum hardware for the C-D74 is a Challengerwith 32K RAM and at least 8K on a Dual Port 525 board, and a singleor dual-drive floppydisk.

The drive, cableTTnterface for an Ohio Scientific Challenger andOS-74 operating system software is $6,000 FOB Hiram, OH.Equipment rack shown not included.

OHIO SCIENTIFICDEALERS

American MicroprocessorsEquipment s Supply Corp

20 N Milwaukee AvePrarievlew, IL 60069(312) 634-0076Century 23

4566 Spring Mountain Rd.Las Vegas, NV 89102Computer BuslnettRR#4Box 910

Joplin, M0 64801Computer Hobby Shop4450 Trinity AvenueSalt Lake City, UT 84120Computer Mart ot New York118 Madison Ave.New York, NY 10010(212) 686-7923Computer PowerP.O. Box 28193San Diego, CA 92128(714) 746-0064Delawere Mlcroiyitems92 E. Main St. #1Newark, DE 19711(302) 738-3700Deiert DataMicrocomputer SalesP.O. Box 1334Tucson, AZ 85702(602) 623-6502H/B Computers217 East Main St.Charlottesville, VA 22903(804) 295-1975MicrocompP.O. Box 1221Fcnd-Du-Lac, Wl 54935(414) 922-2515Microcomputer Workshop234 Tennyson Terr.Williamsville, NY 14221(716) 634-6844

Omaba Computer Stare

4540 S. 84th St.Omaha, NE 68127(402) 592-3590

REPRESENTATIVES

Abacuz Data

P.O. Box 276

Oil City, PA 16301

Associates Consultants

33 Ogden Ave.

East Williston, NY 11596

(516) 746-1079

BRAG Microcomputers

19 Cambridge St.

Rochester, NY 14607

(716) 442-5861

Computer Business

P.O. Box 171

LaPorte, IN 46350

(219) 362-5812

Johnson Computer

P.O. Box 523

Medina, OH 44256

(216) 725-4560

Omega Computing, Ltd.

Box 220. Station P

Toronto, Ont. M5S 2S7

(416) 424-2174

Pan Atlantic Computer Systems, GmbH

61 Darmstadt

Frankfurterstrasse 78

West Germany

(08102) 3206

Secom Systems

541-1 New Peach Tree Rd.

Chamblee, GA 30341

(404) 934-3272

Spectrum Technology Services

P.O. Box 942

Palos Verdes Estates, CA 90274

Systems Engineering Enterprises

Suite 307

1749 Rockville Pike

Rockville, MD 20852

(301) 468-1823

Tek-Aids. Inc.1513 Crain St.Evanston. IL 60202(312) 328-0110Yingco, Inc.2 World Trade Cntr.Penthouse 107th FloorNew York, NY 10048(212) 775-1184

The state of the art in small computers.

caM-216-569-3241

BYTE February 1978 41

Simulation of Motion

Part 4: Extended Objects, Applications for Boating

Stephen P Smith

POB 841

Parksley VA 23421

Have you ever wondered why the shapesof boat hulls differ so widely? Boatingenthusiasts know that certain designs will bebest in lakes and rivers, and certain others inopen seas. Some boats are much roomierthan others; some are safer in rough water;but what penalties in stability and ridingcomfort might you pay for the extra roomor seaworthiness? The motion of a boatdepends on its response to the variety ofwaves it encounters. These motions can besimulated on your personal computer. Youcan determine how a given design will re-spond to any sea condition. The basic equa-tions for stepping speed and position intothe future will still apply, as they werediscussed in the earlier articles of this series;but you'll also need some new techniques.As you implement this simulation, you'lldiscover that forces in a linear degree offreedom can also produce moments andtheir resulting motion in an angular degreeof freedom. In this article, I'll show howthat interaction is handled. I'll also intro-duce the concept of distributed forces, anda numerical technique to handle them.Although developed for a boating applica-tion, these new ways of calculating forcesshould find use in updating many of ourprevious simulations.

We have already seen quite a variety ofways to calculate forces. Gravity, a forcepresent in every simulation in the last threearticles, simply made a constant change inthe vertical speed at each step. Thrust, usedin rocket and aircraft simulations, cameeither from a user input or from a tableinterpolation. Forces in an automobile

suspension were found to depend directlyon the vertical position (spring force) andthe vertical speed (damping force). Aero-dynamic forces were computed by multi-plying a coefficient (ie: constant) by thesum of the squares of the speeds in eachlinear degree of freedom. While these ex-amples cover most of the situations you arelikely to encounter in simple models, anynew simulation might present some uniquerequirement.

For example, in all the calculations, theforces have had one thing in common. Theyacted at a single point. We call such forcesdiscrete. In reality, some are not discrete,but act at many points on a body simultane-ously. These are referred to as distributedforces. Aerodynamic drag is a typical distri-buted force. Although we used the drag co-efficient to calculate a single force, theretarding action of the air acts all over thebody. A coefficient is just one tool used toconvert distributed forces into discrete ones.Not all distributed forces can be convertedusing coefficients, so I'll introduce a moregeneral technique using the boating simula-tion as an example.

The principle forces on a boat are gravityand buoyancy, the floating power of thehull. Because buoyancy is an upward pushprovided by the water, it is not difficult tosee that it is a distributed force covering theentire area of the boat below the water line.Converting this distributed force to a dis-crete one will allow us to simulate the verti-cal motion of the boat.

Perhaps more important to the boat de-signer or buyer will be the angular, rolling

42

BYTE February 1978

Price/Performanceno one else has put together.

IMSAI Introduces the PCS-80/30Integrated Video Computer

]] 3 mHz microcomputerQ 3K ROM monitor

□ 2K RAM

3 8 expansion slots

~| 14 mHz integrated intelligent

CRT (24 x 80)~2 Intelligent Keyboard

□ Parallel interface~j 2 serial interfaces

□ Graphic and edit CRTfunctions

Q 28 amp power supply

□ All for $1499* assembledand tested.

Software:

ASSEMBLER, DOS, TTY and ACRBASIC, Commercial/Scientific BASIC,FORTRAN IV and more.

Memory Options:

4,16, 32 and 64K RAM memory boards.

Circle 57 on inquiry card.

Peripherals:

Printers, floppies—mix and match;standard, mini and high performancedouble density floppy disks on the samesystem (an industry first), W magnetictape drive, CRT and TV monitors.

Send today for your copy of the 250-pageIMSAI PCS-80/30 User Manual. Price$5.00. The cost of the manual may beapplied towards your purchase of a PCS-80/30 Integrated Video Computer. Usethe coupon provided.

Gentlemen:

Send me Ihe IMSAI PCS-80/30 User Manual, price$5.fXt I understand that the $5.00 may be appliedtowards the purchase of a PCS-80/30 Videocomputer System.

Check/Money Order enclosed. Ami. $

Charge my □ BAC □ M/C

. Exp. Date:.

Sig..

City.

State/Zip

IMSAI 14860 Wicks Blvd. San Leandro, CA 94577

®

The Standard of Excellencein Microcomputer Systems

IMSAI Manufacturing Corporation

14860 Wicks Blvd. San Leandro, CA 94577

(415)483-2093 TWX 910-366 7287

•U.S. domestic price only. PCS-80/30 kit available. Other PCS-80 kits startat $699. Prices and specifications subject to change without notice.

Typical Bodies of Water

Wind Speed

Rivers

Lakes

Inlets

Bays

Open Sea

2 m/sec

period (sec)

0.6

1.0

1.5

2.0

3.5

length (m)

0.56

1.5

2.3

3.1

20.0

height (m)

0.02

0.06

0.12

0.15

0.5

5 m/sec

period (sec)

0.8

1.2

2.0

2.4

4.5

length (m)

0.1

2.25

5.0

9.0

30.0

height (m)

0.05

0.08

0.2

0.25

0.75

10 m/sec

period (sec)

1.25

2.0

3.0

4.25

7.0

length (m)

2.4

6.25

14.0

28.0

80.0

height (m)

0.08

0.15

0.35

0.7

2.0

20 m/sec

period (sec)

2.5

4.0

6.0

8.5

14.0

length (m)

10.0

25.0

56.0

110.0

300.0

height (m)

0.25

0.65

1.4

2.8

7.5

Table 1: Characteristics of waves. The height, period and length of waves all vary, but forcertain conditions, average values have been established. The wave length and period are affec-ted by the depth of the water. The height depends on the wind speed, how long it has beenblowing, and the width of the body of water. Readers who want to model real sea conditionsshould find a good oceanography text, but the above summary should prove adequate forcasual use.

and pitching motion of the boat. Angularmotion was introduced in a rocket flightsimulation (see January 1977 BYTE, page144). In that case, it was entirely indepen-dent of the linear motion. At the end of thesame article I suggested that the motion ofan automobile body should also be simula-ted using an angular degree of freedom, butthat the angular and linear motions could nolonger be considered separately. This is alsotrue in the boating example. The momentsused to compute the angular motions will becalculated directly from the linear motions.Because the forces in the automotive exampleare discrete, we'll develop the technique tohandle combined angular and linear motionusing the distributed forces of the boatexample. In that way, one simulation willserve to demonstrate both of the newconcepts. I'll leave the development of a twoor four wheel automobile suspension simula-tion to interested readers.

The motion of a boat is similar in manyways to that of the automobile body. Whenit is launched, a boat settles into the water inresponse to gravity. As the hull displacesmore water, the buoyant force becomeslarger, until at some point, it balances gravityand the boat stops sinking. This point iscalled equilibrium and is analogous to theequilibrium of an automobile suspension.Unless there is a disturbance, the boat willremain at equilibrium. In the automotiveexample, disturbances came in the form ofa rising or falling road. With boats, we en-

counter a rising and falling sea, in otherwords, waves.

Sea waves occur in a variety of shapes.Their length (distance peak to peak), theirheight (distance peak to trough), and theirperiod (time to rise and fail), all vary appar-ently at random. In fact, these parametershave fairly well defined relationships.Readers with an interest in modeling seastates should refer to a good marine sciencetext. For this simulation, we'll representwaves with a sine function, and use the datain table 1 to compute their size.

Dealing just with forces for a moment,let's see how a small object is affected bywave motions. Figure 1 shows a bottle, float-ing in a body of water. We know from ourprevious simulations that every second,gravity subtracts 9.8 meters per second fromthe bottle's vertical speed. If the bottle is toremain stationary, the effect of buoyancy(force divided by mass) must be equal andopposite (ie: 9.8 meters per second persecond upward). The mass of the bottleshould be known. Let it be 0.1 kilograms.The buoyant force is equal to the weight ofthe water displaced by the bottle. Remem-ber that weight is a force, the effect ofgravity acting on a mass. The weight of thewater, in newtons, is equal to its mass, inkilograms, times the effect of gravity,9.8 meters per second per second. Each1000 cubic centimeters (cc) of water has amass of 1 kilogram, and thus a weight of9.8 newtons. Knowing this, and the mass of

44 BYTE February 1978

High performance,

cost effective products

for your microcomputer*

The Extensys FOS100 Floppy Disk System provides a highperformance floppy disk system based upon multiprocessorsin a multiuser environment. The FOS100 accomplishes thisthrough a completely integrated hardware and software system.The hardware consists of a File I/O board, a PerSci controllerboard and one or two dual PerSci Model 277 floppy disk drives.The File I/O board has an 8080A microprocessor, 1 K of PROMand 8K of RAM on-board to provide a separate I/O processorwhich will handle all disk I/O functions of the system. ThePerSci controller board is encased in an attractive cabinetwith either one or two dual PerSci drives.

The software, Extensys Multiprocessor Operating System,EMOS, provides many large computer capabilities, such asmultiprocessor,multiuser operation, individual file security basedupon user supplied passwords, system security and IBMcompatible format. Additionally,the FOS100 has optional DirectMemory Access (DMA)capabilities when usedin conjunction withe ExtensysMM 16 MemoryManager board.

The Extensys RM64 Memory Board provides up to 64 K onone board. Designed for S-100 based computers, the RM64occupies only one bus slot. Four versions of the same boardare available: 16K, 32K, 48K and 64K bytes with the less-than-64K versions easily expandable by inserting memory chips intoexisting sockets. The Board uses dynamic RAMs with 300 nsaccess time and "invisible" on-board refresh. Other featuresinclude bank select logic for PROM/ROM coexistence plusexpansion beyond 64K, write protect circuitry, and multilayerground plane construction for noise immunity.

The RM64 comes completely assembled and tested witha one year warranty. Delivery is STOCK to 15 days uponreceipt of order, with shipping and handling prepaid in thecontinental United States.

FOS100

Circle 49 on inquiry card.

Are you planning to produce a high performance,cost effective computer system or expanding thecapabilities of your current line? If so contact US,the people who can make it happen for you NOW.

corporation

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

BYTE February 1978 45

the bottle, we can calculate the amount ofwater that the bottle displaces. In otherwords, we can find the volume, V, of thebottle below the water line at equilibrium.Force divided by mass must equal 9.8 tobalance gravity, so the equation 9.8 = 9.8/

Figure I: A bottle sinks until it displaces an amount of water equal to its ownweight.

1000 * V / 0.1 can be solved for V to findthat 100 cc of the bottle is under water. Ifthe bottle is 4 centimeters in diameter, wewill find (from the formula for the volumeof a cylinder) about 8 centimeters of itslength must be below the surface.

Now suppose that the surface of thewater rises suddenly. More than 8 cm of thebottle will be underwater, and the buoyantforce will exceed gravity. The vertical speedof the bottle will increase and it will risewith the water. When the bottle reachesequilibrium again it will still have a positivevertical speed, so it will pass through thatpoint and continue to rise. Now, however,it is gravity which is the larger force, and thevertical speed will be reduced until thebottle begins to descend. Eventually, thesemotions will disappear (due to the drag forceapplied by the water) and the bottle willcome to rest at equilibrium. This happens soquickly that the bottle appears to be mov-ing up and down exactly with the waves.

For larger objects, boats for example, theactual motion may be more apparent. Wecould treat a boat exactly like the bottleand simulate its up and down motion. As Isuggested earlier, however, it is the angularrolling and pitching motion of the boat thatis of real interest. To simulate these motions,

OUTSTANDINGTERMINALEQUIPMENT

IBM 2741 - compatible orstandard ASCII (with Break andControl code features). RS232-Cinterface.

RECONDITIONED SELECTRICTERMINALS

CONTACT KEN PAYNE

Dai-Data Inc. • 1111 W. Mockingbird LoneSuite 1400 • Dallas, Texas 75247 • 214-630-9711

IBM Correspondence

or BCD Code $795.00

• IBM 2741 Compatible

• RS232C Interface

ASCII Code $995.00

• 300 Baud 200 CharacterPrint Buffer

• RS232C Interface

• Break and Control Code features

30 DAY WARRANTY

aaiEMEiimimiEni

46 BYTE February 1978

Circle 16 on inquiry card.

SCREENSPLITTER

A COMPLETE TV TEXT DISPLAY SYSTEMfrom

ivycpo Divei^ior|s5 Iqc.

-GENERAL-

SCREENSPLITTER is a self-contained TV text display systemfor your microcomputer. It comes on a single, high-qualityS-100 compatible board, complete with its unique WindowPackage software module. With the Window Package, you canlogically segment SCREENSPLITTER's huge 40 x 86 disolay ofupper-lower case characters into up to 50 independent"windows" of various sizes. (You get the idea from our ad!)Each window has its own optional frame, cursor, figure-ground, and optional label, and each window scrolls andautomatically formats its text independently of all theothers. QUICK! There's some interesting information flash-ing by in WINDOW 1. Go read it'.

WINDOW 1

■LJ^3~C<1a1I

A A A A A A

Whoops I Our output routine seems to behaving problems. Oh well, at least youget to see some of SCREENSPLITTER'Sscientific symbols, (You can order agraphics character set optionally.)

And any character may be user-definedas a winking character. How? you ask.Simple: SCREENSPLITTER uses a 2708reprogrammable memory as its charactergenerator. Turn on the character'swink" bit in the 2708, and presto!

Frills, you say? No, thrillsl Just take a look in thewindow up there y to see how SCREENSPLITTER puts theseraw materials to work in the onboard IK Window Package^(that back there—*- is the cursor character),

The Wind

ow Packa

ge's aut

o-format

ter does

n't care

how ski

nny your

windows

are (it

'11 hack

your te

xt down

to one c

olumn if

you can

stand i

PARTIAL

-- FUNCTION- -

SUMMARY

INITO

OPEN(W,X,Y,DX,DY)CLOSE(W)FLASH (W)FRAME(W)UNFRAME(W)LABEL(W,STRING)SCROLL(W.N)CURSORCHAR(W.CHAR)CURSORPOS(W,X,Y)PRINT(W, STRING)PRINTCH (W, CHAR)BACKSPACE(W)CLEARLINE (U)CLEAR(W)

BLANKLINE(W,COUNT)COMPLEMENT(W)PLOT(W,X,Y,CHAR)MOVEWINDOW(W,X,Y)

■ POINTS OF INTEREST

Entire hardware/software system on asingle, high-quality S-100 buss com-patible board.

Drives a lOrahz or better TV monitorvia standard 75 onm coaxial cable(supplied).

4K static RAM -2114's- display bufferis memory-mapped into your CPU'saddress space for fast, convenientaccess if you ever need to bypass theWindow Package software.

User-selectable wait state for opera-tion with 4mhz CPU's.

IK onboard 2708 is jumper changeableto a 2K 2716 for user extensions tothe Window Package.

Board presents one TTL load to host,yet drives up to 20 TTL loads via74367 buffers.

Provisions for jumpering TV data, sync,blanking off board for external mixing(via 16 pin socket).

WHAT YOU GET-

• Complete SCREENSPLITTER Kit, with all IC's, low profilesockets, preprogrammed Window Package EPROM, assemblyinstructions

• Comprehensive Theory of Operation Manual

•Complete source-code listing, and User's Manual for theWindow Package

• 90 day warranty on parts and labor

-ORDERING INFORMATION-

1. Tell us for which 8K boundary you would like your Win-dow Package assembled.

2. Tell us whether you want the scientific symbols, orthe graphics characters in ASCII codes 0-31 Of yourcharacter generator.

3. Send us a personal check, Master Charge or BAC/VISAnumber and expiration date. Kit price is §295. Assem-bled, $385. (Virginia residents please add sales tax.)

4. We will send you the SCREENSPLITTER, postpaid (in thecontinental U.S.) from stock to 60 days.

the

PL0T(W,X,Y."+")thickens

40 LINES

86 CHARACTERS/LINE

ONBOARD WINDOW SOFTWAREFOR CONTROLLING UP TO 50LOGICALLY INDEPENDENT WINDOWS

■ --THE CARE AND FEEDING OF WINDOWS--'

OK. You have just powered on. Initialize the Window Pack-age and turn on your first window:

INIT()

0PEN(1,10,15,20,30)

Now, just to flex your bits, givethe user a wal-.e-uD flash (a brieffigure-ground reversal inside thewindow):

FLASH(1)

Now that you have his attention, go ahead and frame thewindow (you don't have to, of course):

FRAME(l)and, while you're at it, label It, and set the scroll linecount:

LABEL(1,"General I/O")

SCR0LL(1,5) (i.e., when the window

fills up, pop it ud 5blank lines)Just to keep hio interested, switch the cursor characterfrom the default caret to the winking caret:

CURS0RCHAR(1,A )

How that he's all excited, eyes bulging from the initialflash, transfixed by the hypnotic winking cursor, hit himwith some text through window 1:

PRINT(1,"I hate to tell you this, William, butlast night the kids wired that chairyou're sitting in with 110 volts AC")

Now (this'11 really kill him), open a second window tothe right:

OPEN(2,10,50,5,20)

FRAME(2)

LABEL(2,"Will's Will")and print out a second message through this new window:

PRINT(2,"Please type your last will and testament.")

Now, of course, you echo his input through window 2,relying on the default scrolling of 1-line "pop-up" whenthe window fills up.

And on, and on...

SOME APPLICATIONS-

1. You have a BASIC program. Open a number of windows,giving each important subroutine in the program itsown window. When your program runs, you get a two-dimensional feel of the flow of the execution - flur-ries of activity here, brief flashes there. You canhave the feeling of being able to converse with eachsubroutine individually!

2. You have a page-oriented text editor. Pick up a para-graph here, a paragraph there, isolating each in itsown window while you rummage through the main text inits own large window. Using the MOVEWINDOW function,you can move blocks of text around to produce a finallayout.

3. You have an assembly language debugger. Allocate onewindow to the real-time clock, another to the run-timeclock, and several more to display various registersin your 8080 or Z80. Then, you can keep the debugginginformation separate from your program's I/O, with thedebugging information continually present.

4. You have some fancy games. Give each player his ownwindow and define some "community windows." Let yourimagination take over!

PS: Watch for our full graphics board, also with its on-board software... Coming soon!

Micro Diversions, Inc.

7900 Westpark Drive, Suite 308McLean, Virginia 22101(703)827-0888

DEALER INQUIRIES INVITEDEVALUATION KITS AVAILABLE

■ -TIME--

■ i

1 06:01:46 I

Circle 70 on inquiry card.

BYTE February 1978

47

Figure 2: The distribution of the buoyant force determines the angularmotion about the center of gravity.

we will need to know not just the totalbuoyant force, but also how it is distributedover the hull. The device shown in figure 2will illustrate a general technique for findingthe distribution.

You can think of this device as two bottlesjoined together with a stick or as the twohulls of a catamaran. Just as we calculatedthe buoyant force on the bottle in figure 1,we can calculate separate forces on each ofthese two bottles. The sum of the forcescan be used to compute the vertical motionof one point on the device. This point iscalled the center of gravity (CG). The loca-tion of the center of gravity is critical. Ifyou were to place the stick on a knife edgeand find the point at which it balanced,this would be the center of gravity. It is thepoint on a body where the effect of gravityappears to be concentrated. Because themass of an object is distributed throughoutits volume, weight is a distributed force.By locating the center of gravity, however,we have a tool that transforms it into a dis-crete one.

We could also define a center of buoy-ancy, the point at which the total buoyantforce appears to act. Unfortunately, thelocation of this point can move significantlyas the boat rises and sinks in the water. Thecenter of gravity is also subject to somemovement, such as when a passenger movesfrom the back to the front of the boat. Un-like the movement of the center of buoy-ancy, however, changes in the location ofthe center of gravity are not tied directly tothe results of our simulation, the linear andangular motion of the boat. For this simula-tion, we will treat the center of gravity asstationary, and try to avoid dealing withthe moving center of buoyancy.

Since we cannot deal with buoyancy assimply as we do gravity, we will have to deal

with the individual parts of a body moredirectly to find a general method of handlingthe distribution. In the case of the "cata-maran" in figure 2, this is fairly easy. First,we assume that the bottles are small whencompared to the length of the stick. Next,we assume that the center of buoyancy ofeach bottle is at its center, no matter howit sits in the water. Now, as far as our simu-lation is concerned, the entire buoyant forceon the bottle acts at a point which is at aknown distance from the center of gravity.This makes no difference to the verticaldegree of freedom, but it is the key whichallows us to simulate the angular motion.

Remember from the last article that amoment is the product of a force timesa distance. In the current example, eachbottle creates a moment equal to the buoy-ant force times the distance of the bottlefrom the center of gravity. Note that wedefine distances to the right as positive, andto the left as negative. Thus an upward forceon the righthand bottle creates a positive(counterclockwise) moment. An upwardforce on the lefthand bottle creates anegative moment. In each simulation step,the moments are summed and then dividedby the moment of inertia to find the changein angular speed each second. With this value,we can step the angular degree of freedominto the future, and return to compute newforces and moments.

Now we must determine how the com-bined angular and linear motion can be usedto compute the new buoyant force. The forceis proportional to the volume of the bottlebelow the waterline. For a single bottle, itwas computed from the position in thevertical degree of freedom, and the locationof the water surface. With the two bottledevice, the vertical degree of freedom tellsus only the position of the center of gravity.We must use the angular degree to find therelative position of other points on thedevice. If there is a positive angular position,the device will be turned counterclockwisearound the center of gravity. Consequently,the lefthand bottle will be lower than thecenter of gravity and the right one will behigher. The exact difference is calculatedby multiplying the sine of the angular posi-tion by the distance of the bottle from thecenter of gravity. Again, note that points tothe left have a negative distance from thecenter of gravity. Positive angular positionsmove them down.

Let's illustrate this with an example.Suppose the vertical position of the centerof gravity is 0.01 meters, and the angularposition is 2 degrees (0.035 radians). Abottle 1.2 meters to the left would be at

48 BYTE February 1978

0.01 +SIN (0.035) * (-1.2) = -0.32 meters

in other words, about 3 centimeters belowits equilibrium position. A bottle 1.2 metersto the right would be

0.01 +SIN (0.035)* 1.2 = 0.052 meters high.

The vertical position of any other point canbe found similarly.

Having found the positions of the bottles,we must now find the positions of the watersurface at each bottle. These will come froma sine function modified by a representativewave height, period and length. The argu-ment of the function will be the sum of thecurrent time divided by the period, and thebottle location (distance from the centerof gravity) divided by the wave length, allmultiplied by two t (to convert to radians).Once evaluated, the function is multipliedby one half the wave height (amplitude) toarrive at a final surface position. Using thisscheme the surface varies with both time andlocation in a good approximation of seawaves.

The data in table 1 can be used to con-tinue the example we began above. Let'splace our two bottle catamaran in an inletwith 5 meter per second winds. We havedetermined that the water surface is givenby the following formula.

S = HEIGHT/2 * SIN (6.28318*(TIME/PERIOD + LOCATION/LENGTH) )

At TIME = 1.8 seconds, we would find thatthe water surface at the left bottle is 0.2/2*SlN(6.28318*(1.8/2+(1.2/5))=0.084 meters,just below the equilibrium position. At theright bottle, the surface is at 0.2/2*SIN(6.28318*(1.8/2+1.2/5))=0.077 meters. Ifwe subtract the positions of the bottles fromthese values and add the 8 centimeter lengthof the bottles underwater at equilibrium, wewill have calculated the length of each bottlebelow the surface at TIME = 1.8 seconds.For the left bottle this will be (-0.084) -(-0.032) + 0.08 = 0.28 meters. For the rightbottle this will be 0.077 - 0.052 + 0.08 =0.105 meters. If the bottles are 4 centi-meters in diameter, then the left one dis-places 0.04**2 * 3.14159/4 * 0.028 = 3.45* 10 -5 cubic meters and has a buoyantforce of 9800 * 3.45 * 10 -5 = 0.345 new-tons. The moment it produces is 0.345 *(-1.2) = -0.414 newton meters. Similarly,the right bottle displaces 9.67 * 10 -5 cubicmeters and produces a force of 0.948 new-tons and a moment of 1.14 newton meters.The sum of the forces, 1.293 newtons, isused to update the vertical degree of free-

Figure 3: The continuous hull of a boat can tcrete segments or "bottles. " X is the distancethe center of the bottle. Y is the length of theequilibrium. Note that the symmetry about thehull while only segmenting half of it.

dom. The sum of the moments, 0.534 new-ton meters, is used to update the angulardegree of freedom. Now we can computenew positions, forces, moments, etc, andbegin the cycle again.

Simulating the motion of a two bottlecatamaran may not be very useful, but thetechnique is easily extended to real boats.Instead of thinking of the hull of your boatas a continuous surface, think of it as acollection of "bottles." Figure 3 shows aboat hull that has been divided in this

<e divided into a series of dis-from the center of gravity tobottle below the water line atCG enables us to describe the

X(m)

8700

>mp|%r/Controller

he Answer For...StudentHobbyistManufacturer

8700 Processor: 6503 MPU. Wear free "ActiveKeyboard",

Micro-Diagnostic? Extensive documentation. FullySocketed.

Pieblig Monitor: Relative address calculator. Pointer High-low.User Subroutines, Back-step key.

CaSSCtte Interface: Load & Dump by file ». Tape motioncontrol. Positive indication of operation.

Applications systems from $90 (lOunit quantity)Development systems from $149 (single unit)

tell me more ,;„;;,

see for myself thtit the s70f> is The Answer.

( ) Please send documentation

;uid price lists. ?ii> enclosed.( 1 I don' t need documentation

nunc

( ) Please send FREE CATALOG.

:.,ldr<'SS-

ma

"if V* vt:itr.- 7lp-

ELECTRONICS DEPT2-B . 1Q20 W

Wilshire Blvd. • Oklahoma City. OK 73116 (4051 843-9626

Y(m)

0.05

0.50

0.15

0.49

0.25

0.47

0.35

0.45

0.45

0.42

0.55

0.39

0.65

0.36

0.75

0.31

0.85

0.37

0.95

0.22

49

Listing 1: This program simulates the vertical and angular motion of a boat Inresponse to sea waves. Because it involves a lengthy summation, it is inherentlyslow. I have, therefore, used only the second order predictor corrector formu-las, and have employed a large step size. Readers who want more accuracyand who can afford to wait for results should implement the fourth orderequations presented in my previous article on automotive applications(December 1977 BYTE, page 112). They should also increase the number of"bottles" used to describe the hull, and decrease the step size.

It should also be noted that the program does not simulate the viscousdamping action of the water. As a result, if you are unfortunate enough tospecify a resonant frequency of the hull as the wave period, the boat willappear to leap out of the water. While this result is obviously erroneous,it will highlight a design to be avoided.

100

liein

112120148150160170180190200209210211212214216218220230240250260270280290

300310315320

32133634(3345346356360376375376386396460410428436440445450460470475480490500508510520530540550560570571666636640668665666667668669

REM SHIP MOTION SIMULATION

REM DESCIBE HULL CROSS SECTION

REM X IS DISTANCE FROM CG TO CENTER OF BOTTLE

REM Y IS LENGTH OF BOTTLE BELOW WATER AT EQUILIBRIUM

DIM xae>,Y<ie>

DATA 0.05,0.5,0.15.0.49,0.25,0.47,0.35,0.45,0.45,0.42

DATA 0.55,0.39,0.65,0.36,0.75,0.31,8.85,0.27,0.95,0.22

FOR J=l TO 10

READ XU>,Y<J>

NEXT J

REM SET BUOYANCY FACTOR; "BOTTLE AREA"*DENSITY*9. 8

6=6.01*1.03*9.8

REM COMPUTE MASS<M) «, MOMENT OF INERTIA OF CROSS SECTION

M=8

1=8

FOR J=l TO 18

M1=B/-9.8*Y(J)

H=M+MU2

I = I+MUX<J>*2

NEXT J

REM SET SEA STATE: HEIGHT(H),LENGTHCL).PERIOD(P)

H=8.2

L=5

P-2

REM INITIALIZE INTEGRATION VARIABLES

DATA 0,0,0,0,0,0,0,8,8,8,0,6,8,0

READ Z,Z1,V,V1,A,A1,R,R1,Q,Q1,C,C1,T

REM INITIALIZE STEP SIZE AND PRINT INTERVAL

D=0.1

K>0

K1-0.1/D

PRINT "TIME.SEC) VERTICAL POSITION(M) ANGULAR POSITION(DEG)'

REM SUM FORCES AND MOMENTS ON THE "BOTTLES"

G0SU8 666

REM PREDICT VERTICAL MOTION

REM A.U.Z ARE ACCELERATION.SPEED, AND POSITION

A1=F "M-9.8

V=V1+D*A1

Z=Z1+D*V1

REM PREDICT ANGULAR MOTION

REM C,0,P ARE ACCELERATION,SPEED, AND POSITION

C1=G-'I

Q=fll+D+Cl

R=R1+D*Q1

REM SUM NEW FORCES AND MOMENTS FOR CORRECTOR FORMULAS

K=K+1

T=T+D

GOSUB 660

REM CORRECT VERTICAL MOTION

A=F/M-9.8

V=V1+D/2*<A+A1>

Z=Z1+D^2*(V+V1>

REM CORRECT ANGULAR MOTION

C=G.-'I

Q=Q1+D/2*<C+C1>

R=Rl+D--2*(Q+en

REM PREPARE FOR NEXT STEP

V1=V

Z1=Z

Q1=Q

R1=R

IF K<K1 THEN 348

PRINT T,Z,R*57.296

IF T<10 THEN 340

STOP

REM CALCULATE AND SUM FORCES AND MOMENTS ON "BOTTLES"

F=0

G=6

FOR J=l TO 10

REM POSITIVE HALF OF HULL IS GIVEN

REM W IS VERTICAL POSITION OF WATER SURFACE AT BOTTLE J

REM Wl IS LENGTH OF BOTTLE BELOW WATER SURFACE

W=H'2*SIH(6.28318*<:T.'P + X<J>.'L> >

Wl=Y<J)-Z-SIN(R)*XvJ>+W

manner. The hull can now be described bya table of Xs and Ys. The Xs represent thedistances from the center of gravity to thecenter of each bottle. The Ys represent thelengths of each bottle below the waterlineat equilibrium. Now, instead of making aseries of calculations for one or two bottles,we make them for many. Just as before, thesum of the forces influences the verticalmotion of the center of gravity, and thesum of the moments influences the angularmotion around the center of gravity.

We now have an effective method fordealing with distributed forces. We simplydivide the area over which the force actsinto small segments. Within each segment,we neglect the distribution and calculate adiscrete force and moment. Finally, wesum the force and moments to find theeffects on the linear and angular speeds.

I have included a BASIC program withthis article to illustrate the technique asapplied to our boating example. With thedata supplied, it computes the rollingmotion of the hull cross section picturedin figure 3. Boating enthusiasts will be ableto insert some other hull cross sections (deepvee, trihull, etc) in the data statements andcompare the response to the sample seastates. If lateral (side to side) sections areused, the program will simulate rollingmotion. If longitudinal (fore and aft) sec-tions are used, the program will computepitching motions. Interested readers shouldbe able to extend the program to includethree dimensional boat models and simulateboth angular motions simultaneously.

With the inclusion of techniques forhandling distributed forc.es and combinedangular and linear motion, your collectionof software tools for simulating motion isfairly complete. When using these tools on apersonal computer, you should try above allto limit the scope of your simulations.Determine which motions really interest youand neglect or restrict the others. Divide thesimulation into degrees of freedom, pref-erably three or less if your program is toexecute with reasonable speed. Computeeach force and moment individually, thenapportion and sum them within the degreesof freedom. Finally, step the velocity andthe position into the future. Use a smallstep size in your early runs, 0.01 seconds orless. Increase it to save run time only as longas your results do not change significantly.Following this procedure, and using theBASIC programming examples I have pro-vided as a guide, you should be able to findsome interesting new applications for yourpersonal computer.

50

BYTE February 1978

Circle 89 on inquiry card.

Listing 1, continued:

676 IF M1>0

THEN 672

671 Hl=8

672 F1=B*I41

673 G1=X(J>

*F1

675 REM MIRROR IMAGE GUJES NEGATIVE

HALF

678 H»H/2*SIN<£. 28318*< T/p-XCJ>/L>>

679 W1=Y(J>

-Z+SIH(R)*X<J)+W

688 IF Ml>6

THEN 682

681 Wl=8

682 F2=B*W1

789 G2=-X<J)*F2

718 F=F+F1+

F2

720 G=G+G1+G2

738 NEXT J

748 RETURN

758 END

TIME(SEC)

VERTICAL POSITIONS) H

tGULAR POSITI0I-KDEG)

0.1

0.30147774275297

6.579343661886

0.2

0.60834856669538

2.1484430172

0.3

0.0246789135748

4.23893821533

6.4

0.0488239037315

6. 19033468235

0.5

6.0789839977127

7.30318099994

6.6

0.10789765357

7.01051374777

0.?

0.127464693145

5.02510841752

6.8

0.130129340759

1.41142156817

6. 9

0. 118974303806

-3.40279261698

1

0.669556O412445

-8.66151908825

1.1

0.0185695497413

-13.4108553239

1.2

-0.0568528427892

-16.6916991863

1.3

-0.120SS364889

-17.7238637349

1.4

-0.169473381978

-16.0583471104

1.5

-0.193013619278

-11.6821229305

1.6

-0.18645821109

-5.96270420258

1.7

-0.150554633294

2.89082493065

1.8

-0.0917208520104

10.9686349622

1.9

-0.0206887363075

17.8818895739

2

0.0503241234733

22.5634234899 ■

yOU DIDNT KNOW!

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

f "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

THE CO/MPUTER >1GE FOR THES/VIALL BUSINESS HAS ARRIVED!

The Computer Mart is offering the first complete line of off-the-shelf professional business software!

APPLICATIONS INCLUDE:

• General Ledger—Daily Journal. Balance Sheet. Income State-ment, G/L Report.

• Accounts Receivable —Daily Journal, Aged Receivables, SalesJournal, Statements, Customer Listing. Cash Receipts

• Accounts Payable—Daily Journal. Open Payable. VendorChecks. Check Register, Cash Disbursements

• Payroll —Payroll Register. Quarter/Year-to-Date. Checks,941's, W-2's.

• Solar Energy Analysis—analysis of feasibility of solar energy

• Mail-Label—add. delete and change functions, full sorting andletter writing capability

CO/VIING SOON!

• Project Control Accounting —provides logistic control andfinancial accounting of projects undertaken by the organization

• Educational Performance Evaluation—a system to store andanalyze student performance for any course which utilizes tests,quizzes and homework for grades

• Medical Billing & Scheduling—clinical accounts receivablepackage.

• Point of Sale Inventory Control—full inventory control from pointof sale.

• Micro Information Retrieval—sophisticated system for recordaccess and manipulation

• Time Input Processor—stand-alone system for processingtime cards.

• Word Processor—full function, CRT display, editing

We will not be undersold by any company with nationally ad-vertised prices on any of the following hardware:

IMSAI

DIGITAL GROUP

CROMEMCO

PROCESSOR TECH

NORTH STAR

VECTOR

TDL

LEARSIEGLER

ICOM

SWTP

SEALS

IMS

SOLID STATE MUSIC

SD SALES

HEURISTICS

DATA GENERAL

NATIONAL MULTIPLEX

TELETYPE

DECWRITERS

GRI

ALPHA MICRO

MICRO-TERM

INTEGRAL DATA

Call for the lowest quote!(TDL Software interfaced to North Star Disk.)

RICK INATOME —

[■ETi[]iJt3i Hart

1800 W. 14 Mile - Royal Oak, Michigan 48073 - (313) 576-0900

Dearborn Hgts.,Michigan

OPENING SOON

420 Park Ave. W.

Chatham, Ontario

(519) 354-2840

Windsor, OntarioCanada

Circle 28 on inquiry card.

BYTE February I978 51

Photo I: A general view of the authors' light pen and interface circuit. Thepen itself was made from a fairly standard marking pen with a photo diodemounted at the tip. A length of shielded cable runs from the diode throughthe pen body to the miniature phone connector which plugs into the jack onthe circuit board.

Add a $3 Light Pen to Your Video Display

John Webster and John YoungUniversity of New BrunswickAudio Visual ServicesKierstead HallFredricton, New BrunswickCANADA E3B 5A3

The use of a light pen can greatly facili-tate entry of display characters on yourvideo display. The layout of complex gameboards, charts and graphs, or characterediting can be accomplished more quicklyand easily if you have the ability to add ordelete characters anywhere on the screenwithout first having to position the cursor.This article describes the design and con-struction of a very inexpensive light pen anddriver program to accomplish this functionwith a Processor Technology VDIM-1.

The Circuit

Figure 1 shows the light pen circuitthat can be constructed for well under threedollars. When used with a VDM-1 it requiresno additional 10 ports. Component layoutof the circuit is noncritical. The authors'prototype was assembled on a small pieceof perforated board and attached to theVDM-1 board. It could be mounted any-where in the computer or keyboard en-closure. A four foot shielded cable con-nects the photo diode to the othercomponents through an optional jack.

Any discarded ball point or felt tip penmay be used to house the diode. Alter-natively it may be attached to the end of thecable with heat shrink tubing. The smallerthe diameter of your light pen body, theeasier it will be to use.

Any surplus quality photo diode may beused as a pickup. If the diode is of the type

52 BYTE February 1978

ALL

TOGETHERNOW!

The acclaimed Equinox 100® mainframe kit ($799) is nowa complete S-100 system.

Because now there is an Equinox 100® I/O interface kit($120) that handles the hard work of interfacing all yourperipherals.

And Equinox 100® 4K memory kits ($109). Assembled 8Kmemory boards ($188). EQU/ATE® editor/assembler andBASIC-EQ® software on cassettes.

It all goes together. It all works together. It's all togethernow at special system prices.

See The Equinox System® at your local computer shop.Call toll-free to 800-648-5311. BAC/MC accepted. Or writeEquinox Division, Parasitic Engineering, P.O. Box 6314,Albany California 94706.THE EQUINOX SYSTEM® When you put it together, it's really together.

Circle 93 on inquiry card.

BYTE February 1978 53

-I I-31

ImS. APPROX.

PHOTO SHIELDED

DIODE / ^g^JACK +SVIFROM VOM-I)

U—l6.7mS-»j

l-^ TO SINGLE BIT<—* COMPUTER INPUT

GND (FROM VDM-1 )

Figure I: This fairly simple circuit transforms light from the video monitoroutput into a TTL signal which can be monitored by a program such as thatshown in figure 2 and listing I. A typical oscilloscope waveform of the out-put is shown in the figure.

mounted in a plastic lens, a fine file andemery cloth may be used to flatten the endand provide a narrower angle of acceptance.

When you have constructed the circuit,use an oscilloscope to monitor the outputas you pass the pen across a televisionscreen. A white area should produce an out-put as shown in figure one. A dark areashould produce a 5 VDC level. Sensitivitycan be adjusted by using the brightness andcontrast controls on your television.

Once you have a satisfactory output, thecircuit may be wired to the VDM-1. Theoutput of the circuit is connected to pin 14of IC39 on the VDM-1 board. This is aninput to a spare three state buffer on thestatus port.

Then connect pin 13 of IC39 to pin 9 ofIC39. This hooks the output of the threestate buffer to data bit DI7. The outputsignal from the light pen will now appearon DI7 when an input from status port C8is performed.

Program Design

The light pen circuit will produce a nega-tive output whenever a white screen area issensed. This condition may be used byappropriate software to locate the pen'sposition on the 16 by 64 grid of the VDM-1 's display.

First, the top line of screen information isstored away and white cursors are written

into all 64 positions of this line. The displayis then scrolled so that this first line appearsat the bottom of the screen and the rest ofthe screen is blanked. This is done by out-putting hexadecimal FO to the VDM-1'sstatus port (hexadecimal C8).

The display is then scrolled upward oneline at a time until an output from the penis sensed indicating the proper line. Eachtime the value output to the status port ismodified to scroll up one line, the statusport value is also saved on the stack. As soonas the proper line is located, this status wordis retrieved and decoded to find the actualunscrolled beginning of line address of theline the light pen is on. This decoding isachieved through a puzzling series of leftrotations and additions in the BINGOsection of the program. The resultant be-ginning of line address is then stored atlocations hexadecimal ED and EH for futurereference.

Black is now written over the whiteline, position by position, until the outputfrom the light pen disappears indicating thelocation of the pen. The value in register Lnow indicates the displacement from thebeginning of the line. The values in hexa-decimal ED and EE are then recalled and Lis added to the low order byte to producethe final H and L values for the light penposition. The information stored from thefirst line is returned to the screen and data

54

BYTE February 1978

Nowf Artec hasan expandable elephant

for everyone!

8K- 32K of static RAM memory. Fully assembled or in kit form.

No matter what your needs, Artec has amemory board for you. You can start with 8Kof Tl 4044 memory on a 5.3" x 10" card andwork your way up to a full 32K in 8Kincrements. The access time is only 250ns.The memory is addressable in 4K blocksand is perfect for S100 and battery aug-mented systems. The Artec 32K Expand-able Memory has four regulator positions,bank select and plenty of room for allnecessary support hardware. It uses lessthan 1 amp per 8K of memory (3.9 for 32K),and only +8 volts.

For five years Artec craftsmanship andreliability has been proven in tough industrialuse. Now, you too can enjoy breadboardsand memories that will work time after time.Send for an Artec board, your order will besent the same day as received.

■ ^ : ■■■;■■■■■:

«;£*

Kit: Board &

8K of memory—$ 290.008K add on kits—$ 255.00Full 32K board—$1,055.00

Circle 6 on inquiry card.

Fully Assembled Board:

8K—$ 440.00

16K—$ 695.00

24K—$1,100.00

32K—$1,205.00

GP100—$20.00

Maximum designversatility along withstandard addressdecoding and buffer-ing for S100 sys-tems. Room for 32uncommitted 16 pinIC's, 5 bus buffer &decoding chips, 1DIP address selectswitch, a 5 volt reg-ulator and more. Highquality FR4 epoxy.All holes platedthrough. Reflowedsolder circuitry.

WW100—$20.00

A wire wrap bread-board, similar to theGP100. Allows wirewrap of all sizes ofsockets in any sizesof sockets in any com-bination. An extra

regulator position for multiple voltage appli-cations. Contact finger pads arrangedfor easy pin insertion.

Buffering Kit—$12.65

All the necessary components to bootstrapany Artec board into your system. BufferingI/O, DIP switch heat sinks and every supportchip you need.

TO ORDER: Use your Mastercharge orBankAmericard. Or just send along a moneyorder. We can accept only U.S. currency.Please include $3 handling on all orders.California residents add 6.0% sales tax.

FOR MORE INFORMATION: For more in-formation about these or any of Artec's com-plete line of circuit boards or for either indus-trial or personal use, please call or write. Acatalog will gladly be sent.

Please send me: (Include Quantity)

32K GP100 WW100

□ I've enclosed a money order.

n RankAmprirarrt bin

Exp. Date

Exp. Date

City State

Zip

Calif. Res.add 6% Sales Tax $3.00 Handling End.

10% discount for students & computer club members.

dRTGCaeCTRONOJNC

605 Old County Rd.,San Carlos, CA 94070(415) 592-2740

BYTE February 1978

55

I 1

I CHEK CHECK iPEN STATUSFOR

I 1/60 SEC.

I I

f START J

move:

STORE a WRITEWHITE ONFIRST LINE

out: scroll

SCREEN

DEC:SUBTRACTI0H FROMSCROLLINGSTATUS WORD

BINGO.-DECODETO FINDBEGINNINGADDRESS OFLINE PEN IS ON

WRITE BLACKONE SQUARE

RESTOREFIRST LINE

( EX'T )

INCREMENTTO NEXTPOSITION

RESTOREFIRST LINE

INPUT

CHARACTERTO SCREEN

Figure 2: The general design of a cursor control algorithm for use with thelight pen. The authors' version was used with the Processor TechnologyVDM-I, but a similar procedure should be achievable with other videogenerators.

Photo 2: Detail of the light pen interface,as constructed on Vero perforated board(a product which contains pre-etched copperruns to which components can be soldered).The three wires leaving at right go to theprocessor input, power and ground; the lightpen input is through a miniature phoneconnector at left.

from the keyboard is moved to the lightpen position on the screen. The programthen returns to the initialization sectionand waits for a new character.

If speed of operation is more importantthan program length a more sophisticatedbinary search procedure may be used oncethe proper line is found. If half the line iswritten over with black before the outputof the pen is checked then half the line maybe eliminated with only one check. Sixsuch checks will cover all 64 possible posi-tions on the line.

Delay loops of at least 1/60 second mustbe incorporated into each check to insurethat the scan lines at the pen location areactually being written to during the check.

Using the Light Pen

With the LIGHT program running, thecomputer waits for a keyboard entry andthen scrolls the screen and begins its search.If it finds that the pen is not on the screenit. exits to the location stored at hexadecimaladdresses 35 and 36.

If the pen is on the screen its location isfound and the data from the original key-board entry is entered at that location. Theprogram then returns to INIT, restores thescreen to its unscrolled format, and waitsfor another keyboard entry.

In addition to facilitating the arrange-ment of complex displays or pictures, thelight pen may be incorporated into anynumber of games (like tic-tac-toe) or utilityprograms. Editing of memory dumps, forexample, can easily be accomplished bymoving a block of memory to the screen,modifying it with the light pen, and thenmoving it back.

56

BYTE February 1978

Is your career growingas fast as ours?

NET SALES 254 7

(Millions of Dollars)

EARNINGS PER SHARE

(In Dollars) 2.88

■2.11-

1.53

1.21

I II

MM

1973 1974 1975 1976 1977

(1977 Fiscal Year)

1973 1974 1975 1976 1977

"Adjusted to reflect a 3-for-1 stock split effected in theform of a 200% stock dividend declared in February 1973.

New Products Engineers(Analog and Digital)

Your responsibilities will in-clude new product introductionof state-of-the-art processors,peripherals and controllers toour Systems Integration Divi-sion. A BSEE degree or theequivalent is required with aminimum of 3 or more years ofrelated experience.

Diagnostic Programmers

You will design, code anddebug assembler languageprograms for fault isolation, tothe chip level, in digital sys-tems. You will also write func-tional level system exercisersfor stand-alone and disc-basedreal-time operating systems.Atechnical degreeortheequiv-alent experience is needed,together with a thorough under-standing of digital systemhardware. Hardware trouble-shooting experience and 3 ormore years' programmingexperience, preferably indiagnostics is very desirable,especially with strong assemblylanguage skills.

Test Engineers

You will be responsible forPCB test engineering supportfor digital products such asCPU's, memories and options.Experience is required insolving engineering problemsas they relate to test equipment,diagnostics, test philosophyand component fault isolation.You will also initiate and imple-ment improvements to thetesting process and equipment,and provide coordination forthe introduction of new prod-ucts into production. A BSEEdegree and two or more years'experience in PCB test orTest Equipment Design.

ManufacturingEngineers

You will be responsible forproviding floor support in thePCB assembly area. A BSME,BSIE or the equivalent with3 years' experience in Manufac-turing Engineering is required.A knowledge of auto-insertionequipment assembly techniqueand soldering equipment ishelpful.

Senior SystemsTechnicians

This position requires atleast 3 years' experience, mini-mum, and an ASEE degree orits equivalent. Your backgroundshould include familiarity withCPU memory, moving headdisks and related peripherals.

Special SystemsTechnicians

You will be working closelywith the Special Systems Engi-neering Department in thedesign of non-standard com-puter products. A minimum of3 years' experience and anASEE degree or its equivalentis necessary.

To apply for one of theabove positions mail yourresume to John Prendergast

To apply for one of theabove positions mail yourresume to Tom Aldrich.

To apply for one of theabove positions mail yourresume to Rene Santini.

Data General Corporation,Route 9, Southboro, MA01772. Data General is anequal opportunity employer,M/F.

IrDataGeneral

BYTE February 1978 57

Address

Hex Code

0000

31

F6 00

0003

21

00 CC

0006

01

40 AO

0009

11

AD 00

OOOC

AF

OOOD

D3

C8

OOOF

DB

00

0011

E6

40

0013

CA

OF 00

0016

CD

37 00

0019

3E

FO

001B

4F

001C

D3

C8

001E

C3

42 00

0021

D6

10

0023

B9

0024

C2

1C 00

0027

DB

01

0029

11

00 CC

002C

21

AD 00

002F

OE

ED

0031

CD 37 00

0034

C3

YY XX

0037

7E

0038

70

0039

12

O03A

23

003B

13

003C

79

003D

BD

003E

C2

37 00

0041

C9

0042

C5

0043

01

FF 04

0046

F5

0047

DB CS

0049

07

004A

D2

58 00

0O4D

AF

004E

OB

0O4F

B8

0050

C2

47 00

0053

Fl

0054

CI

0055

C3

21 0"

0058

21

00 C

005B

Fl

005C

E6 CO

005E

07

005F

07

0060

84

0061

67

0062

3B

0063

3B

0064

Fl

0065

E6

30

0067

07

0068

07

0069

85

006A

6F

OOGB

22

ED 00

OOGE

21

00 CC

0071

CI

0072

3E

20

0074

77

0075

06

AO

0077

AF

0078

05

0079

B8

0074

C2

78 00

007D

01

FF 04

0080

DB

C8

0082

07

0083

D2

A9 00

0086

AF

0087

OB

0088

B8

0089

C2

80 00

008C

7D

008D

2A

ED 00

0090

85

0091

6F

0092

22

ED 00

0095

11

00 CC

0098

21

AD 00

009B

OE

ED

009D

CD

37 00

OOAO

2A

ED 00

00A3

DB

01

00A5

77

O0A6

C3

00 00

00A9

23

OOAA

C3

72 00

0001 INIT LXI 3P,0F6II

0002 LXI H.OCCOOH

0003 LXI B,OA040H

0004000500060007000800090010001100120013001400150016001700180019002000210022002300240025002600270028002900300031003200330034003500360037003800390040004100420043004400450046004700480049005000510052005300540055005600570058005900600061006200630064006500660067006800690070007100720073007400750076007700780079008000810082008300S4008500860087008800890090009100920093

END

LXI D.OADH

XEA A

OCT 0C8HSTATIN IN 00

AMI 01011

JZ STATIN

CALL MOVE

MVI A.OFOH

MOV C,AOUT OUT 0C8H

JMP CHECKDEC SUI 010H

CMP C

JNZ OUT

IN 01H

LXI D, OCCOOII

LXI H.OADH

MVI C.OEDH

CALL HOVE

JMP XX YYMOVE >,£>V A,M

MOV M,B

STAX D

INX II

INX D

MOV A,C

CMP L

JNZ MOVE

RETCHECK PUSH B

LXI B,04EFH

PUSH PSWINPUT IN 0C8H

RLC

JNC BINGO

XRA A

DCX B

CMP B

JNZ INPUT

POP PSW

POP B

JMP DECBINGO LXI H, OCCOOII

POP PSW

ANI OCOH

RLC

RLC

ADD H

MOV H,A

DCX SP

DCX SP

POP PSW

ANI 030H

RLC

RLC

ADD L

MOV L,A

SHLD OEDH

LXI H.OCCOOH

POP BCHEK MVI A.020II

MOV M,A

MVI B.OAOH

XHA ADCL DCR B

CMP B

JNZ DCL

LXI B.04FFHDECL IN 0C8H

RLC

JNC HERE

XHA A

DCX B

CMP B

JNZ DECLDIDO MOV A,L

LHLD OEDH

ADD L

MOV L,A

SHLD OEDH

LXI D,OCCOOII

LXI H.OADH

MVI C.OEDH

CALL MOVE

LHLD OEDH

IN 01H

MOV M,A

JMP INITHERE INX H

JMP QffiK

Commentary

H.L to first screen position

load B with white cursor,

load C with length of line to be stored

first 'store to1 address

zero accumulator

init screen to unscrolled format

[ wait for key pressed

store and write white

value for scrolling and blanking

scroll up line by line

pen not on screen, reset status port

1 getting ready to restore line one

to restore first line

exit from LIGHT if line not found

store and write white routine

delay value

test output from light-pen

found line

S keep checking for 1/60 sec.

try next line

decoding routine to find actual

line starting address

store beginning or line address

to balance stackblack squareto screendelay value

1 check delay' valuecheck for output from light pen

not this square, try next

decode to find actual value of L

restore information to first line

input data

move data to screen

Listing 7: An 8080 program, hand assembled, to implement the flow chartof figure 2. Address constants and 10 port assignments are given for theauthors' system. ■

Rated G

Great LocationsComputerLand

Now Open:

3020 University Drive N.W.Huntsvilie, AL 35805

6743 Dublin Blvd.Dublin, CA 94566

11074 San Pablo AvenueEl Cernto.CA 94530

22634 Foothill Blvd.Hayward, CA 94542

6840 La Cienega Blvd.Inglewood. CA 90302

24001 Via Fabncante,*904Mission Viejo.CA 92630

4233 Convoy StreetSan Diego, CA 92111

117 Fremont Street

San Francisco, CA 94105

42-42nd AvenueSan Mateo, CA 94403

171 E. Thousand Oaks BlvdThousand Oaks, CA 91360

104 W. First StreetTustin, CA 92680

2422 So Colorado Blvd.Denver, CO 80222

2475 Block Rock TurnpikeFairfield, CT 06430

Astro Shopping CenterKirkwood HighwayNewark, DE 19711

Cumberland Square NorthCobb Parkway (Route 41)Atlanta, GA

50 East Rand RoadArlington Heights, IL 60004

9511 No Milwaukee AvenueMiles, IL 60648

10935 S. Cicero AvenueOak Lawn, IL 60453

813-B Lyndon LaneLouisville, KY 40222

16065 Frederick Road (Rt. 355)Rockville, MD 20855

2927-28th Street S.E.Kentwood, Ml 49508

29673 Northwestern HwySouthfield, Ml 48034

419 Amherst Street (Rt. 101-A)Nashua, NH 03060

2 De Hart StreetMornstown, NJ 07960

1612 Niagara Falls Blvd.Buffalo, NY 14150

225 Elmira RoadIthaca, NY 14850

1288 SOM Center RoadCleveland, OH 44124

3300 Anderson LaneAustin, TX 78757

6439 Westheimer

Houston, TX 77057 (713)

1500 South 336th StreetParkway Center, Suite 12Federal Way, WA 98003

52-58 Clarence Street

Sydney, NSW Australia NSW 2000

Franchises Available:Computerland Corp.

1922 Republic Ave.San Leandro.CA 94577(415) 895-9363

(205)539-1200(415) 828-8090(415) 233-5010(415)538-8080(213) 776-8080(714) 770-0131(714) 560-9912(415)546-1592(415) 572-8080(805)495-3554(714)544-0542(303) 759-4685(203) 374-2227

(302)738-9656

(312)255-6438

(312) 967-1714(312)422-8080(502)425-8308

(301)948-7676(616)942-2931

(313) 356-8111(603)889-5238

(201) 539-4077(716) 836-6511

(607) 277-4888(216) 461-1200(512) 452-5701

977-0909/0910

(206) 838-936329-3753

58

BYTE February 1978

Circle 24 on inquiry card.

Rated 15

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 StarTrek. 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 games.Each ComputerLand store offers aknowledgeable 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.

Circle 24 on inquiry card.

'largest selec-tion of all themajor brand names.Like Apple Computer,Cromemco, DEC, Diablo.Hazeltine, ICOM, IMSAI, LearSiegler,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. ,

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

Exactly when youwant 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.

Thegreat computer store. RATED G.

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

ComputerLand

1922 Republic Avenue, San Leandro, CA 94577 (415) 895-9363

BYTE February 1978 59

Our MacroFloppy™goes twice the distance.

For$695.

Circle 72

Introducing the Micropolis MacroFloppv"":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 S695.

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, bumecl-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. $695 for the MacroFloppy:1041and $795 for the MacroFloppy: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

MICROPOLIS

More bytes in store for you.

Letter from the Publisher

We would like to thank our readers for the essential part they have played in the growth ofBYTE. From its inception in September of 1975, BYTE has experienced colossal growth to acirculation of over 110,000.

And we are still growing. We have been doing everything we could to provide good serviceto the subscriber and have been suceeding, we believe, quite well. With such rapid growth andexpansion, however, there is always the chance that not all things will move as efficiently asthey should, and to some degree this has been the case with service to our subscribers.

BYTE first handled its own subscription fulfillment, and it became apparent rather quicklythat, with all the other procedures and duties performed to bring the reader a fine monthlypublication, to continue handling subscription service in-house exceeded the bounds of practi-cality. As soon as was possible we employed a fulfillment service bureau to handle the bur-geoning roster of subscribers. In retrospect, it seems that no sooner did the new service takeover our file than we outgrew them. As the size of the list and volume of orders became toogreat for us to handle in-house, so did the same happen with our newly adopted service bureau.

Solution?

60 BYTE February 1978

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 55.

The field-proven MetaFloppy, with thousands of units delivered, comesin a complete family of models. And, like our MacroFloppy'" 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:1055, with 650,000 bytes on-line. Or our Meta-Floppy: 1045, with 515,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 91504Phone (215) 705-1121.

Or better yet, see your local dealer.

MICROPOLIS"

More bytes in store for you.

goesbeyond

Circle 73 on inquiry card.

Yes. BYTE went looking for a fulfillment agency big enough to suit our present needs withthe capacity to service efficiently the many more subscribers we project we will have in thefuture,. .and we found one.

If you are one of the people who have found our service a little less than satisfactory, weoffer with this explanation our profound apologies, and feel that we can promise even betterservice to our subscribers in the future.

Again, we offer our gratitude to our readers for helping to make BYTE what it is.

Z^^^-X^w^^

Virginia Peschke LondnerPublisher

BYTE February 1978 61

SWEETS for KIM

A Low Calorie Text Editor

ENERG

LDY

#10

JSR

WAIT

LDY

#0

STY

PORT

RTS

WAIT

LDX

#200

LOOP

DEX

BNE

LOOP

DEY

BNE

WAIT

RTS

SET UP FOR 10 MSEC DELAY

LOOP FOR THAT LONG

SEND 0'S TO OUTPUT PORT

TO TURN OFF MAGNET CURRENT

RETURN TO CALLER

NO. TIMES THRU INNER LOOP

DECREMENT INNER LOOP COUNT

LOOP UNTIL COUNT ISO

DECREMENT OUTER LOOP COUNT

LOOP UNTIL COUNT ISO

RETURN TO CALLER

Listing la: A segment of6502 assembly language code used to demonstrateSWEETS, a Simple Way to Enter, Edit and Test Software. SWEETS is asmall text editor and assembler which operates on hexadecimal code andwhich is designed to fit in the KIM-1 's I K byte small memory while leavingroom for the user's programs. The key sequence for editing is shown in tablelb.

Dan Fylstra22 Weitz St #3Boston MA 02134

(ad) f f

0

1

0 0

© (AD) A

0

0

A

O © 2

0

0

2 0 0

© (AD) A

0

0

0

O © 8

c

0

0 1 7

© © 6

0

© © P

F

0

2 0 0

Q © A

2

C

8

0 0 F

F

0

3 0 0

0 0 C

A

0 0 D

0

0

3

0 © 8

8

© 0 D

0

0

2

0 0 6

0

F

F

0

1

0

0

A

0

0

A

2

0

0

2

0

0

A

0

0

0

8

c

0

0

1

7

6

0

F

F

0

2

0

0

A

2

c

8

F

F

0

3

0

0

C

A

D

0

0

3

8

8

D

0

0

2

6

0

Table la: The sequence of keys used to enter the program in listing la whenusing the SWEETS editor and assembler. The right side of the table showsthe resulting LED readout seen at each step. Notice that an entire instructionis entered and displayed at one time.

If you would like to experiment withmicrocomputers on a limited budget, theMOS Technology KIM-1 is an excellentchoice. For $245, it comes preassembledwith, among other things, a 6502 micro-processor, a read only memory monitor,an audio cassette interface, 1 K bytes ofprogrammable memory, and its own specialperipheral: a 23 key keyboard plus a 6 digitLED display. The monitor lets you load amachine language program byte by bytefrom the keyboard, and once loaded theprogram can be saved on tape via the audiocassette interface. The KIM-1 manual showshow you can "hand-translate" an assemblylanguage program into the absolute hexa-decimal form required for keyboard entry.

This is fine for very small programs, butthe process of hand translation gets rathertedious after you've assembled a few hun-dred bytes of code. And, worse, once you'vepainstakingly worked out all the subroutinecall addresses and branch displacementsand keyed the whole program in, you in-variably find that you've forgotten some-thing. Often, instructions must be insertedor deleted in the middle of the program,which throws everything off by a few bytes.

The obvious solution to this problem isto obtain a text editor and assembler pro-gram for the 6502. But, alas, such a programprobably needs more than the 1 K bytes ofmemory provided on the KIM-1, and, moreseriously, it requires an alphabetic charac-ter terminal device such as a Teletype. Whatif you can't afford the extra peripheralsand memory? Are you doomed to spendmost of your microcomputing hours keyingin the same program over and over again?

Maybe not. Perhaps we can avoid most

62 BYTE February 1978

LOADED WITH EXTRASAT NO EXTRA COST

Microprocessor controller

Serial RS232C interface

Parallel TTL level interface

Full upper and lowercase

ASCII character set (96

characters)

Full 8V2 inch wide paper

Line length of 80 columns at

10 characters per inch

Impact printing

7 x 7 dot matrix

Ordinary paper— roll, fanfold,

or sheet

Serial baud rate to 1200 bits

per second

Multiple line buffer of 256

characters

Built-in self test mode

Instantaneous print rate to

100 characters per second

Sustained throughput to 50

characters per second

Multiple copies without

adjustment

Reinking ribbon mechanism

Expected ribbon life of 10

million characters

Front panel operator controls

Attractive table top console

Checktheimpressivefeatures onintegral'snewlP-125Impact Printer

onlyJj>/33

Complete, ready-to-operate..the first impact printer to offerbig printer performance at amini-printer cost.

Write for complete informationor call (617) 926-1011

<•

IntegralData Systems

* -■ INC

5 BRIDGE STREETWATER-TOWN,:-MASS. 02172

... AND FOR VERY LITTLE MORE

• Line lengths to 132 columns

• Instantaneous print rate to165 characters per second

• Sustained throughput to 80characters per second

• Print densities of 8.3,10,12and 16.5 characters per inch

• Options program selectableby control codes

• Full CRT screen size multilinebuffer (2048 characters)

• Special set of graphic symbols

• Graphics mode dot plotting

• Form feed control

• Eight switch selectable formsizes

• Automatic page boundaryskip

• Remote printer selection/deselection

• Automatic line feed oncarriage return

IP-225

"The Tractor Impact"

only $"49the pin feed version of the IP-125 withtractor drive forms control plus all thestandard features of the IP-125.

SWft '

...::-

■^■iB|B^Mi||jj|

«M8 F££D t»«R

<f.s>

mm®

p^*P^^^T*

^^

mgsajmm

ifilll

>" —§^=r=r^

F "IF ""—=

f, :

=?===;

===s§

Circle 58 on inquiry card.

BYTE February 1978

63

of the tedium by concentrating on thosefeatures of a text editor and assemblerwhich we really need. Although we'll belimited by the KIM-1 keyboard to hexa-decimal instruction entry, perhaps we canprovide an automatic way. to insert anddelete instructions and to fix up all thosesubroutine call addresses and branch dis-placements. And perhaps by limiting our-selves to these features, we'll be able to cramthe "editor and assembler" into somefraction of the KIM's 1 l< of memory.

This is the purpose of SWEETS. SWEETSis an example of a program invented to fitan acronym: It stands for Simple Way toEnter, Edit and Test Software. If you owna KIM-1 and have grown tired of absolutemachine language programming, now youcan step up to "symbolic hex"! While it'snot as convenient as a real text editor andassembler, SWEETS can save you a lot oftime and index finger soreness.

SWEETS Functions

Under the control of the KIM-1 monitor,the 6 digit LED display normally shows youthe address and data of a single byte ofmemory. You can enter data using thehexadecimal keys, but this causes the data

(GO) A(DA)

0 0

A

0

0

0

8

C

0

0

1

7

Table lb: The procedure used in SWEETS to locate and delete an instruction,in this case the superfluous instruction LDY #0 (A000 in hexadecimal code).The rest of the program is moved up in memory and the next instruction isthen displayed, as shown.

0200

A0

0A

ENERG

LDY

#10

0202

20

09

02

JSR

WAIT

0205

8C

00

17

STY

PORT

0208

60

RTS

0209

A2

C8

WAIT

LDX

#200

020B

CA

LOOP

DEX

020C

DO

FD

BNE

LOOP

020 E

88

DEY

020 F

DO

F8

BNE

WAIT

0211

60

RTS

Listing lb: The absolute hexadecimal form of the program segment shownin listing la after removal of the LDY #0 instruction (see table lb) andexecution of the S WEETS assembler (shown for purposes of comparisonin the format of an ordinary assembler output listing).

previously in the displayed byte of memoryto be destroyed.

Under the control of SWEETS, however,an entire instruction of one, two or threebytes in length is displayed on the LEDs atany given time. An instruction can beinserted just before the displayed instruc-tion by pressing the AD key followed byfrom 2 to 6 hexadecimal keys. When this isdone, the instruction just entered appears onthe display; the old instruction and every-thing following it in the program area havebeen moved down to make room. Similarly,pressing the DA key causes the currentlydisplayed instruction to be deleted, andeverything following this instruction in theprogram area is moved up to eliminate theslack space.

Successive instructions can be examinedby pressing the + key, which advances toand displays the next complete instruction.And to go back to a previous point, or tofind an arbitrary point in the instructionsequence, you can press the GO key fol-lowed by a two byte (four hexadecimaldigit) search pattern. SWEETS will searchfor the first instruction(s) whose initial twobytes match the search pattern, and thenwill display this as the current instruction.

This much of SWEETS can be used byitself; but so far we're still burdened by theneed to calculate and adjust subroutine calladdresses and branch displacements. Tolift this burden, we can use hexadecimal"labels." A label is a 3 byte "pseudo-instruction" with an opcode of hexadecimalFF. The second byte is the "label number,"any hexadecimal value, and the third byteis ignored. A label is inserted in the hexa-decimal instruction sequence at each pointwhere an alphabetic label appears in anormal assembly listing. When we key in asubroutine call, jump, or relative branch in-struction, we enter the destination labelnumber as the second byte of the instruc-tion, in place of a branch displacement orabsolute address. As we insert and deleteinstructions, the "label" pseudo-instructionsmove up and down in memory along withthe rest of the code.

When we're ready for a test run of theedited program, we can use the KIM-1monitor to execute the SWEETS "assem-bler." This program removes the label

64 BYTE February 1978

The difference is value.Take a look at our low-costmicrocomputer's heavy dutycabinet. Even with the coverremoved, it maintains its rigidstructural integrity. But wedon't stop there. Quality builtVector Graphic products, fromboards and kits to completesystems — such as ourMemorite turn-key text editorshown below — beat allcompetitors in mechanical,thermal and electrical design.

Based on an 8080Amicroprocessor and the S-100bus structure, Vector Graphicmicrocomputers are compatible(with the exception of minor I/Opatches) with all of the current8080A software.

If you're designing smallbusiness systems, text editors,control equipment, games oreven microprocessordevelopment, it will pay you tolook into our low costmicrocomputers and interfaceboards, kits or assembled.

Rush me details today.

Yes, I'm interested in:

□ Systems □ Boards, kits orassembled □ Microcomputers

Name

Firm

Phone

Address

City/State/Zip

Vector Graphic Inc.,790 Hampshire Rd., WestlakeVillage, C A 91361 (805) 497-6853

cO=? G=*APHC inc.

"i

Sold and serviced nationally.

Vector Graphic's microcomputer:What's in it for you?

Word processing systems for $7,950 — features normally found in systems costing twice as much.Circle 123 on inquiry card.

BYTE Tebruary 1978 65

CUD

DAKEY

ADKEY

SCAN

GOKEY

STPKEY

1

MOVEUP

REOEND

DETLEN

ADVANC

MVDOWN

ADVEND

RDBYTE

DETLEN

ADVANC

RDBYTE

DETLEN

SCAN

SCAN

DETLEN

DETLEN

Figure 1: The subroutine calling tree structure of SWEETS. CMD, the control routine, maintains the LED display and scansthe keyboard for a command key (by means of SCA N) and transfers to one of the four command processing subroutines,ADKEY, DAKEY, GOKEY or STPKEY. These routines perform the editing functions with the aid of three other subroutines:DETLEN (which determines instruction lengths), MVDOWN, and MOVEUP (which move portions of edited program downand up in memory, respectively).

pseudo-instructions from the instructionsequence, and replaces label references inbranch, jump and subroutine call instruc-tions with the proper branch displacementsor absolute addresses. Then the edited pro-gram is ready for a test execution. (Sincethe test is likely to fail, leading to furtherchanges in the edited program, we shouldalways dump the program on the audiocassette in "symbolic hexadecimal" formbefore executing the SWEETS assembler.Then we can reload it later, replacing theprogram in memory which has been con-verted to absolute machine language.)

As an example, suppose that you wishedto enter the program segment shown inlisting 1a, which is taken from an earlierBYTE article of mine (see "Selectric Key-board Printer Interface," June 1977 BYTE,page 46). Table 1a shows the keys youwould press and the resulting instructionsdisplayed on the LEDs by SWEETS. Youmight then notice that the instructionLDY #0 is superfluous after the call tosubroutine WAIT, so you would search forand delete this instruction as shown intable 1b. Finally you would execute theSWEETS assembler, leaving the contentsof the program area as shown in listing lb.

Of course, we will pay some penalty foruse of these features of SWEETS, since wewill have less memory available for theprogram to be debugged while SWEETSitself is loaded and running. But larger

programs usually can be divided into seg-ments, and loaded, "assembled," and de-bugged that way. Also, since the SWEETShexadecimal editor and assembler runseparately, we can conserve memory spaceby loading the assembler from tape when-ever we want to use it, overlaying theeditor in memory and reloading it fromtape in a similar way when we need it again.Although SWEETS is a useful tool inits present form, you will undoubtedly wantto customize it for your own purposes. Butto customize SWEETS you've got to under-stand exactly how it works, so let's take alook at the overall design of SWEETSbefore puzzling over its realization in 6502assembly language.

The SWEETS Editor

The subroutine calling tree in figure 1gives you a quick, "top-down" overall lookat the SWEETS editor. CMD, the controlroutine, maintains the LED display andscans the keyboard for a command key(using SCAN) and then transfers to one ofthe command processing routines: ADKEY,DAKEY, GOKEY and STPKEY. Theseroutines perform the editing functions withthe aid of three critical subroutines: DET-LEN, which determines the length of aninstruction in bytes based on its opcode;MVDOWN, which moves a portion ofthe edited program down in memory tomake room for an inserted instruction;

66

BYTE February 1978

FEATURES:

• ASCII code.

The A J 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 $1,195). 75% discount fromoriginal price of new unit.

Choice of RS 232 SerialInterface or ParallelInterface

Order direct fromfactory.

Documentationincluded.

30-day warranty-parts and labor.

High quality

Selectric

printing.

HOW TO ORDER ANAJ 841 I/O TERMINAL

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

ANDERSON JACOBSON, INC.

Address your reauest to:Personal Computer TerminalANDERSON JACOBSON, INC,521 Charcot AvenueSan Jose, CA 95131

2. 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.

\J*

Reliable, heavy duty Selectricmechanism.

Off-line use as typewriter.

AJ 841 WARRANTY AND SERVICEIS AVAILABLE IN THEFOLLOWING CITIES:

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

For furtherinformation call(408) 263-8520

ANDERSONJACOBSON

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

CLIP AND MAIL WITHORDER

SELECT EITHER:

□ RS 232 Serial Interface (available June, 1978)

□ Parallel Interface (connector to 3P + S included)

Number of units.

$995 each

Sales fax at delivery location

Shipping and handling $35each (excluding San Jose)

TOTAL

NAME.

ADDRESS.CITY

-STATE.

-ZIP

PHONE I

Circle 3 on inquiry card.

BYTE February 1978 67

Figure 2: Three 16 bitpointers are used to man-age the edited programarea. BEG A D points to thebeginning of the programarea; EN DAD points tothe location immediatelybeyond the end of theprogram area, and CUR A Dpoints to the currentlydisplayed instruction.

BEGAD

/*

EDITED

PROGRAM

AREA

1

1

^y

1

1

CURAD

11

11

ENDAD

11

11

; SET CURAD = BEGAD

1780

A5

EO

BEGIN

LDA

BEGAD

LOW-ORDER BYTE

1782

85

E4

STA

CURAD

1784

A5

E1

LDA

BEGAD+1

HIGH-ORDER BYTE

1786

85

E5

STA

CURAD+1

1788

60

RTS

RETURN TO CALLER

;CURAD =

CURAD + BYTES,

COMPARE TO ENDAD

1789

18

ADVANC

CLC

CLEAR CARRY

178A

A5

E4

LDA

CURAD

LOW-ORDER BYTE

178C

65

E8

ADC

BYTES

178E

85

E4

STA

CURAD

1790

A5

E5

LDA

CURAD+1

HIGH-ORDER BYTE

1792

69

00

ADC

#0

1794

85

E5

STA

CURAD+1

1796

C5

E3

CMP

ENDAD+1

COMPARE HI-ORDER

1798

30

04

BMI

ADRET

179A

A5

E4

LDA

CURAD

179C

C5

E2

CMP

ENDAD

COMPARE LO-ORDER

179E

60

ADRET

RTS

RETURN TO CALLER

; ENDAD =

ENDAD + BYTES

179F

18

ADVEND

CLC

CLEAR CARRY

17A0

A5

E2

LDA

ENDAD

LOW-ORDER BYTE

17A2

65

E8

ADC

BYTES

17A4

85

E2

STA

ENDAD

17A6

90

02

BCC

ADRET1

CHECK CARRY

17A8

E6

E3

INC

ENDAD+1

INCREMENT HI-ORDER

17AA

60

ADRET1

RTS

RETURN TO CALLER

; ENDAD =

■ ENDAD - BYTES

17AB

38

REDEND

SEC

SET CARRY

17AC

A5

E2

LDA

ENDAD

LOW-ORDER BYTE

17AE

E5

E8

SBC

BYTES

17B0

85

E2

STA

ENDAD

17B2

BO

02

BCS

REDRET

CHECK CARRY

17B4

C6

E3

DEC

ENDAD+1

DECREMENT HI-ORDER

17B6

60

REDRET

RTS

RETURN TO CALLER

Listing 2: Four utility subroutines used by SWEETS to manipulate three16 bit pointers which point to the beginning of the program area, the loca-tion just beyond the end of the program area, and the currently displayedinstruction.

and MOVEUP, which moves a portion ofthe program up in memory to eliminate theempty space created when an instructionis deleted.

The edited program area is managed withthe aid of three 16 bit pointers: BEGAD,which points to the beginning of the pro-gram area; ENDAD, which points justbeyond the end of the program area; andCURAD, which points to the currentlydisplayed instruction. This layout is shownin figure 2. Whenever a new instructionbecomes the "current" one, subroutineDETLEN is called to determine its lengthin bytes, and this value is saved in thevariable BYTES.

The most basic functions we need inSWEETS are some utility routines tomanipulate these 16 bit pointers on an 8bit machine such as the 6502. The rou-tines we need are shown in listing 2. Themost important one is ADVANC, whichadvances the current instruction pointerCURAD to the next instruction, and teststo see if the end of the program area hasbeen reached. As we shall see later, STPKEY,the command processing routine for the+ key, is basically just a call to ADVANC.

Another basic function is the subroutineDETLEN, which we've already mentioned.It is shown in listing 3. The logic of thisroutine clearly depends on the system ofencoding opcodes on the 6502: in mostcases (DETLEN tests for the exceptions),the low order hexadecimal digit of theopcode tells us the instruction length. Forexample, all opcodes of the form x5 rep-resent two byte instructions, while allopcodes of the form xC represent threebyte instructions.

The heart of the SWEETS editor liesin the subroutines MOVEUP and MVDOWN,which are shown in listings 4a and 4b. Themain concern in these routines is that wemust be careful not to move a byte up ordown to a location which contains anotherbyte that will be moved later. For MOVE-UP, we must move bytes starting at CURADand proceeding down to ENDAD, whilefor MVDOWN, we must move bytes in theopposite direction, as shown in figure 3.

So far we haven't faced the issue of howto control our one and only peripheral,the KIM-1 keyboard and LED display.

68

BYTE February 1978

CHEAPER BY THE BYTE

The Dual Digital Cassette Storage SystemOnly $585. Only from Peripheral Vision

For the first time ever there's an inexpensive,reliable system for mass data storage. PeripheralVision introduces the Phi-Deck Cassette StorageSystem for the S-100 Bus. For only $585.

That's right. $585. That gets you two Phi-Decks,controller card kit and power supply. Whichmeans you get more bytes per buck. Take a look.

The features:

• Controller card supporting mutiple drives

• Computer-controlled operating system —an 8080 version of PhiMon

• Large data capacity:

254,000 8-bit bytes on C-30 cassettes508,000 8-bit bytes on C-60 cassettes

• Software error rate less than 1 bit in 10s

What our system allows you:

• Indexed software controlled program file

• Indexed random retrieval

• Multipass compilers

• Duplication and backup of important data

• Large data files — lists, names, businessaccounts

• System residence

What our software operating system offers:

• 8080-based design

• Cyclic redundancy check (CRC) errordetection

• System retries after soft errors

• Automatically bypasses hard errors

• Block size from 1 to 256 bytes

• Phi Deck Monitor Operating System

How to get connected:

With Peripheral Vision's new four-port I/O board.It's another one of our bargains. Only $85. To saveyou bucks.

We've only given you a glimpse of our excitingnew cassette storage system and the four-port I/Oboard. For more details, just fill in the couponbelow. For cheap little bytes.

PQ Box 6267'Denver. Colorado80206 303 777-4292

O.K., I'll byte! Send me details on your cheaperway to store data and get it connected!

Name

Address.

City/State/Zip.

Circle 94 on inquiry card.

BYTE February 1978

69

Listing 3: DETLEN, asubroutine which deter-mines instruction lengthbased on op code.

0080

AO

00

0082

B1

E4

0084

AO

01

0086

C9

00

0088

FO

19

008A

C9

40

008C

FO

15

008 E

C9

60

0090

FO

11

0092

AO

03

0094

C9

20

0096

FO

OB

0098

29

1F

009A

C9

19

009C

FO

05

009 E

29

OF

00A0

AA

00 A1

B4

A6

0OA3

84

E8

00A5

60

00A6

02

02 02

00A9

01

02 02

OOAC

02

01

OOAE

01

02 01

00B1

01

03 03

00 B4

03

03

DETLEN

LDY

#0

LDA

(CURAD),Y

PICK UP OPCODE

DETLN1

LDY

#1

ASSUME LENGTH IS 1

CMP

#0

TEST FOR 'BRIO

BEQ

DETERM

CMP

#$40

TEST FOR 'RTI'

BEQ

DETERM

CMP

#$60

TEST FOR 'RTS'

BEQ

DETERM

LDY

#3

ASSUME LENGTH IS 3

CMP

#$20

TEST FOR 'JSR'

BEQ

DETERM

AND

#$1F

STRIP TO 5 BITS

CMP

#$19

TEST FOR ABS, Y

BEQ

DETERM

AND

#$0F

STRIPT04 BITS

TAX

TO TABLE INDEX

LDY

LENTB,X

LENGTH FROM TABLE

DETERM

STY

BYTES

SAVE IN 'BYTES'

RTS

RETURN TO CALLER

LENTB

.BYTE 2,2,2,1,2,2,2,1

.BYTE 1,2,1,1,3,3,3,3

17B7

A5

E4

MOVEUP

LDA

CURAD

START MOVE FROM

17B9

85

E6

STA

MOVAD

BEGIN OF PROGRAM

17BB

A5

E5

LDA

CURAD+1

SEGMENT (CURAD)

17BD

85

E7

STA

MOVAD+1

17BF

A4

E8

UPLOOP

LDY

BYTES

AMOUNT TO MOVE

17C1

B1

E6

LDA

(MOVAD),Y

FETCH BYTE

17C3

AO

00

LDY

#0

17C5

91

E6

STA

(MOVAD).Y

STORE BYTE

17C7

A5

E6

LDA

MOVAD

CHECK FOR

17C9

A6

E7

LDX

MOVAD+1

END OF MOVE

17CB

C5

E2

CMP

ENDAD

LOW-ORDER BYTE

17CD

DO

04

BNE

INCMOV

17CF

E4

E3

CPX

ENDAD+1

HIGH-ORDER BYTE

17D1

FO

09

BEQ

MVURET

17D3

E6

E6

INCMOV

INC

MOVAD

INCREMENT LO-ORDER

17D5

DO

E8

BNE

UPLOOP

17D7

E6

E7

INC

MOVAD+1

INCREMENT HI-ORDER

17D9

B8

CLV

17DA

50

E3

BVC

UPLOOP

BACK TO MOVE MORE

17DC

60

MVURET

RTS

RETURN TO CALLER

00B6

A5

E2

MVDOWN

LDA

ENDAD

START MOVE FROM

00 B8

85

E6

STA

MOVAD

END OF PROGRAM

OOBA

A5

E3

LDA

ENDAD+1

SEGMENT (ENDAD)

OOBC

85

E7

STA

MOVAD+1

OOBE

AO

00

MVLOOP

LDY

#0

00C0

B1

E6

LDA

(MOVAD).Y

FETCH BYTE

00C2

A4

E8

LDY

BYTES

AMOUNT TO MOVE

00C4

91

E6

STA

(MOVAD),Y

STORE BYTE

00C6

A5

E6

LDA

MOVAD

CHECK FOR

00C8

A6

E7

LDX

MOVAD+1

END OF MOVE

OOCA

C5

E4

CMP

CURAD

LOW-ORDER BYTE

OOCC

DO

04

BNE

DECMOV

OOCE

E4

E5

CPX

CURAD+1

HIGH-ORDER BYTE

00D0

FO

OD

BEQ

MVDRET

00D2

38

DECMOV

SEC

SET CARRY

00D3

E9

01

SBC

#1

DECREMENT LO-ORDER

00D5

85

E6

STA

MOVAD

00D7

8A

TXA

00 D8

E9

00

SBC

#0

DECREMENT HI-ORDER

OODA

85

E7

STA

MOVAD+1

OODC

B8

CLV

OODD

50

DF

BVC

MVLOOP

BACK TO MOVE MORE

OODF

60

MVDRET

RTS

RETURN TO CALLER

Listings 4a and4b: Subroutines MOVEUPand MVDOWN, which form the

heart of the SWEETS editor. MOVEUP moves

7 given program segment

starting at address CURAD and ending at address EN DA D upward in mem-

ory (toward decreasing addresses) by the amoun

t stored in BYTES. MV-

DOWN perf

orms

the same

operation downward by the amount stored in

BYTES.

Fortunately, several routines are providedfor this purpose in the KIM-1 monitor; thesource listings for these routines are availableon request from MOS Technology. In theSWEETS assembly code listings, we haveunderlined references to KIM-1 monitorsubroutines and variables for easy identi-fication. We will use the KIM-1 subroutineSCAND1, which lights up the LEDs momen-tarily and checks to see if a key is pressed,and the subroutine GETKEY, which returnsa numeric value in the accumulator tellingus which particular key has been pressed.

The six LED digits display the contentsof three successive bytes in memory, de-noted POINTH, POINTL and INH in theKIM-1 monitor. Unfortunately, the orderof these bytes is the opposite of the normalorder of the bytes in an instruction inmemory, so we must reverse the order asthe first step of our subroutine SCAN(listing 5). The main additional complica-tion in this routine is the need to "debounce"the keyboard's bare contact switches insoftware. Since SWEETS performs itsoperations so quickly relative to a mechani-cal event, the key from the last operationinvariably is still pressed when we comeback to the keyboard looking for the nextcommand. Also shown in listing 5 is sub-routine RDBYTE, which calls SCAN to readtwo successive hexadecimal digits from thekeyboard.

With all of this machinery in place, thetop level logic is straightforward. The con-trol routine, CMD routine, and the com-mand processing routines are shown inlistings 6a, 6b and 6c. The most complicatedof the processing routines is ADKEY. Itdetermines how many bytes to read for theinserted instruction, and displays each byteas it is entered; then it copies (in reverse

70 BYTE February 1978

THE FIRST

AFFORDABLE

MINICOMPUTER

$895

ASSEMBLED

READY TO COMPUTE,CALCULATE, CONTROL,OR ? ? . . .

STANDARD FEATURES:

Word Length

12 Bits

Instruction Set

PDP-8E Compatible

Memory Size

8K, Expandable to 32K

Extended Memory Control

DEC Compatible

Serial I/O Port

DEC Compatible, current loop

Parallel I/O Port

Compatible with DEC DR-8 - EA

Programmable Real Time Clock

Compatible with DEC DK8 - EP

Full Function Programmer's

Front Panel

Binary Load and Punch Routines in

ROM

T

LE CORPORATION

P.O. Box 2298, Littleton, Colorado 80161303-922-6241 Telex 454541

Circle 119 on inquiry card.

BYTE February 1978 71

Figure 3: Correct pro-cedures for moving pro-grams in SWEETS. Figure3a shows that the upper-most location must bemoved first when trans-ferring a section of pro-gram upward. Otherwise,some locations could beinadvertently destroyed.Figure 3b shows the anal-ogous situation for a down-ward movement of code.

CURAD

11

^^^ i

11

2 —

(a!

3

ENDAD

4

1I

11

—^3

0100

20

80

00

0103

AO

00

0105

A6

E8

0107

B1

E4

0109

95

F8

01 OB

C8

01 OC

CA

010D

DO

F8

010F

20

22

01

0112

DO

FB

0114

20

22

01

0117

FO

FB

0119

20

22

01

011C

FO

F6

011E

20

6A

1F

0121

60

0122

A4

E8

0124

A2

09

0126

A9

7F

0128

8D

41

17

012B

20

28

1F

012E

60

SCAN JSR DETLEN DETERMINE LENGTH

; COPY INSTRUCTION TO DISPLAY AREA,; REVERSING ORDER OF INSTRUC. BYTES

LDY

»Q

LDX

BYTES

SCOPY

LDA

(CURAD),Y

INSTRUCTION BYTE

STA

INH-1.X

TO DISPLAY AREA

INY

DEX

BNE

SCOPY

; LOGIC TO

'DEBOUNCE' KEYBOARD CONTACT

SCAN1

JSR

SCAN3

WAIT UNTIL LAST

BNE

SCAN1

KEY IS RELEASED

SCAN2

JSR

SCAN3

BEQ

SCAN2

WAIT FOR NEW KEY

JSR

SCAN3

BEQ

SCAN2

BUT REJECT JITTER

JSR

GETKEY

GET CODE FOR KEY

RTS

RETURN TO CALLER

; SET UP PARMS AND CALL KIM-1

DISPLAY SCAN

SCAN3

LDY

BYTES

LDX

= 9

LDA

= $7F

STA

PADD

SET UP DATA DIRECT

JSR

SCAND1

CALL KIM-1 ROUTINE

RTS

RETURN TO CALLER

RDBYTE READS TWO HEX DIGITS, RETURNS BYTEVALUE IN ACCUMULATOR. IF A NON-HEX DIGITKEY IS PRESSED, IT RETURNS THE KEY CODEIN THE ACCUMULATOR AND N FLAG = 0

012F

20

OF

01

RDBYTE

JSR

SCAN1

GET FIRST KEY

0132

C9

10

CMP

t$10

IS IT A HEX DIGIT?

0134

10

11

BPL

RDRET

NO, RETURN

0136

OA

ASL

A

SHIFT OVER 4 BITS

0137

OA

ASL

A

0138

OA

ASL

A

0139

OA

ASL

A

01 3A

85

E9

STA

TEMP

SAVE FIRST DIGIT

01 3C

20

OF

01

JSR

SCAN1

GET SECOND KEY

013F

C9

10

CMP

= $10

IS IT A HEX DIGIT?

0141

10

04

BPL

RDRET

NO, RETURN

0143

05

E9

ORA

TEMP

0145

A2

FF

LDX

= $FF

SET N FLAG = 1

0147

60

RDRET

RTS

RETURN TO CALLER

Listing 5: Subroutines SCAN and RDBYTE. SCAN displays the instructionat location CURA D, scans the keyboard for a depressed key, and places thecode for that key in the accumulator. RDBYTE calls SCAN to read twosuccessive hexadecimal digits from the keyboard.

order) the new instruction bytes from thedisplay to the program area. If you've under-stood everything so far, you should havelittle trouble following the code for thesetop level functions. More important, onceyou're familiar with the basic SWEETSdesign, you can easily add customized toplevel routines of your own.

The SWEETS Assembler

None of the editor routines just dis-cussed were concerned with the processingof the hexadecimal "labels" describedearlier as one of the features of SWEETS.This is because, as far as the editor is con-cerned, a label is just another 3 byte instruc-tion. Labels take on a special meaning onlywhen the SWEETS assembler is invoked.

The assembler operates in two passes overthe program area. On the first pass, theassembler searches for "instructions" withan opcode of hexadecimal FF (the labels).When one is found, the second byte of theinstruction (the label number) is movedto the end of the program area, and thecurrent instruction address is also depositedthere (figure 4a). The label instruction isthen deleted using MOVEUP to take up theslack space. This process continues untilall of the labels have been removed andstored in the "symbol table" at the end ofthe program area (figure 4b). Since thelabels are (by design) three bytes long, wegain the space for the symbol table when

72 BYTE February 1978

Computer Mainframe System

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

'The Base on Which to Build'

The cabinet

A heavy duty precision formed cabinet of finecraftsmanship. Completely machined andready for assembly The exterior is finished in TEI blue. Vented for mostefficient thermal character-istics. Furnished with allnecessary 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 17ViWx12Dx7t4H

Power+8 volt DC 17 amps

Power ±16 volt DC 2 amps

17'/4Wx19y2Dx7'/.H30 amps4 amps

/The 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.

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 CCVT) 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. Mainframesystems ( 12 and 22-slot) ...Floppy and mini-floppy disc drivesystems (single, double and triple ) 16KRAM ... a Z-80 CPU with addressable'jump to" and autostart capability ... 16Channel A/D and D/A converter ... 3 serial + 3parallel multiple I/O ... and other supporting boards... and our newest item, the PROCESSOR TERMINAL — ACRT, keyboard, mini-floppy disc and 12-slot mainframe with a8080A CPU - all housed in one quality aluminum case. All ofthese fine products at prices you will like. Watch for them all.

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 Corp direct for more information.

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

Circle 18 on inquiry card.

BYTE February 1978 73

(a)

0148

20

2F

01

014B

10

28

014D

85

FB

014F

20

2F

01

0152

10

21

0154

85

FA

0156

20

80

17

0159

A0

00

015B

B1

E4

015D

C5

FB

01 5F

DO

07

0161

C8

0162

B1

E4

0164

C5

FA

0166

FO

OA

0168

20

80

00

016B

20

89

17

016E

FO

15

0170

DO

E7

0172

20

00

01

0175

C9

10

0177

FO

2B

0179

C9

11

01 7B

FO

IE

017D

C9

12

017F

FO

13

0181

C9

13

0183

FO

C3

0185

A9

EE

0187

85

F9

0189

85

FA

018B

85

FB

01 8D

20

1F

1F

0190

DO

FB

0192

FO

DE

0194

20

89

17

0197

10

EC

0199

30

D7

019B

20

B7

17

019E

20

AB

17

01A1

B8

01 A2

50

CE

01 A4

20

2F

01

01A7

10

CC

01 A9

85

FB

01AB

20

84

00

01AE

84

EA

01 BO

C6

EA

01 B2

FO

12

01 B4

20

2F

01

01 B7

10

BC

01 B9

85

FA

01 BB

C6

EA

01BD

FO

07

01 BF

20

2F

01

01 C2

10

B1

01 C4

85

F9

01 C6

20

B6

00

01 C9

20

9F

17

01 cc

AO

00

01 CE

A2

02

0100

B5

F9

01 D2

91

E4

01 D4

CA

01 D5

C8

01 D6

C4

E8

01 D8

DO

F6

01 DA

FO

96

GOKEY

JSR

RDBYTE

GET FIRST BYTE

BPL

GCMD

OF SEARCH PATTERN

STA

POINTH

SAVE IN DISPLAY

JSR

RDBYTE

GET SECOND BYTE

BPL

GCMD

OF SEARCH PATTERN

STA

POINTL

SAVE IN DISPLAY

JSR

BEGIN

CURAD :- BEGAD

; LOOP SEARCHING FOR 2-BYTE MATCH

GOLOOP

LDY

«0

LDA

(CURADI.Y

COMPARE 1ST BYTE

CMP

POINTH

AGAINST PATTERN

BNE

GONEXT

INY

LDA

(CURADI.Y

COMPARE 2ND BYTE

CMP

POINTL

AGAINST PATTERN

BEQ

CMD

MATCH, NEXT CMD

GONEXT

JSR

DETLEN

DETERMINE LENGTH

JSR

ADVANC

ADVANCE TO NEXT

BEQ

ERROR

MATCH NOT FOUND?

BNE

GOLOOP

CONTINUE SEARCH

(b)

CMD

JSR

SCAN

WAIT FOR A KEY

GCMD

CMP

- $10

TEST FOR VARIOUS

BEQ

ADKEY

COMMAND KEY CODES

CMP

--$11

BEQ

DAKEY

CMP

■--- $1 2

BEQ

STPKEY

CMP

= $13

BEQ

GOKEY

ERROR

LDA

= $EE

OPERATOR ERROR:

STA

INH

SET UP HEX 'EE'

STA

POINTL

IN DISPLAY AREA

STA

POINTH

ERR1

JSR

SCANDS

CALL KIM-1 ROUTINE

BNE

ERR1

UNTIL KEY RELEASED

BEQ

CMD

; STPKEY ADVANCES TO THE NEXT INSTRUCTION

STPKEY

JSR

ADVANC

ADVANCE TO NEXT

BPL

ERROR

CHECK FOR ADVANCING

BMI

CMD

PAST END OF PROGRAM

; DAKEY DELETES THE CURRENT INSTRUCTION

DAKEY

JSR

MOVEUP

MOVE UP REST OF PROG

JSR

REDEND

ADJUST ENDAD UPWARD

CLV

BVC

CMD

(c)

READ OPCODE, DETERMINE INSTRUCTION LENGTH

ACCEPT OPCODE UNLESSNON-HEX KEY PRESSEDSAVE IN DISPLAYDETERMINE LENGTHINTO DISPLAY

SAVE LENGTH

1-BYTE INSTRUCTIONREAD SECOND BYTENON-HEX KEY PRESSED

2-BYTE INSTRUCTIONREAD THIRD BYTENON-HEX KEY PRESSED

; MOVE CODE DOWN TO MAKE ROOM

ADSET JSR MVDOWN MOVE CODE DOWNWARD

JSR ADVEND ADJUST ENDAD DOWN

; INSERT INSTRUCTION INTO NEW SPACE

ADKEY JSR

RDBYTE

BPL

GCMD

STA

POINTH

JSR

DETLN1

; READ REST OF INSTRUCTION

STY

COUNT

DEC

COUNT

BEQ

ADSET

JSR

RDBYTE

BPL

GCMD

STA

POINTL

DEC

COUNT

BEQ

ADSET

JSR

RDBYTE

BPL

GCMO

STA

INH

LDY

= 0

LDX

= 2

INSERT

LDA

INH.X

FETCH FROM DISPLAY

STA

(CURADI.Y

STORE INTO PROGRAM

DEX

INY

CPY

BYTES

UNTIL ENTIRE INSTRUCTION

BNE

INSERT

IS INSERTED

BEQ

CMD

Listing 6: Processing routines used in the SWEETS editor. Listing 6a showsGOKEY, which searches the program for a given 2 byte pattern and makesthis the current instruction. It can also search for labels. The CMD (for"command") routine, listing 6b, waits for a command key to be pressedand transfers to the processing routine for that key. If an invalid key ispressed, "EEEEEE" is displayed. ADKEY (listing 6c) accepts a new instruc-tion, inserts it, and shifts the code following it downward to make room.

we delete the labels from the instructionsequence.

On its second pass through the programarea, the assembler searches for subroutinecall, jump and relative branch instructions.When one of these instructions is found, itssecond byte, normally a label number, isused to search for a matching label in thesymbol table. Assuming that the label isfound in the table, the corresponding actualaddress is inserted into the second and thirdinstruction bytes for jump or subroutinecall instructions, or a branch displacement iscalculated and inserted for relative branchinstructions (figure 4c). Since at times wemay wish to enter instructions with anactual address or displacement rather than alabel number, no substitution is made if thelabel is not found in the symbol table.

The assembly source code for the SWEETSassembler is presented in listings 7a, 7b and7c. The subroutine FINDLB is used by pass2 of the assembler to look up labels in thesymbol table. Note, too, that the assembleruses some of the editor's subroutines:DETLEN, ADVANC, REDEND, and MOVE-UP. The addresses shown in the assemblycode listing are designed to allow the as-sembler to overlay the main part of theeditor without destroying those editorsubroutines which the assembler must use.

Some Operating Hints

Except for subroutine call addresses,each SWEETS routine is relocatable: it willexecute properly no matter where it is loadedin memory. The assembled code shown hereis designed to provide the largest possiblecontiguous area (512 bytes at hexadecimaladdresses 200 to 3FF) for editing andassembling programs. This has the disad-vantage of breaking up SWEETS into fourpieces: one in page zero, two in page one,and one starting at address 1780 (whichmakes it a bit cumbersome to load piece bypiece from audio cassette). The SWEETSroutines could be consolidated, however,to provide two or more noncontiguous areasfor program editing.

In general, when starting up SWEETS,or after reloading a "symbolic hexadecimal"program from tape, you must store theproper values in BEGAD, CURAD andENDAD. Then, of course, you merely keyin the CMD routine starting address andpress GO. The assembler, which can bestarted up in the same way, automaticallyreturns control to the KIM-1 monitor;the editor can be interrupted at any point bypressing RS (reset). Avoid using the ST

74 BYTE February 1978

with the Real-World Interface from The Digital Group

A computer should have a purpose. Or as manypurposes as you can imagine. Because a computerbelongs in the real world.

And now, the Digital Group introduces the Real-World Interface. A system component that's actually asystem in itself, and specifically designed to help youget your computer to control all those tasks youknow a computer can control so well.

Automate your sprinkler system. Heat and cool yourhome. Guard against burglars. Shut off lights . . . It'sall a part of the Real World, easily controlled with theDigital Group Real-World Interface.

Our Real-World Interface is initially made up of threebasic components — motherboard and power supply,parallel CPU interface and cabinet — plus three typesof plug-ins: AC controller, DC controller andprototyping card. The recommended softwarepackages are Convers, Assembler or Maxi-Basic, inthat order.

Some of the features include:

Motherboard & Power Supply

• 12 slots — 11 control cards, one for the interfacecard

• +5V DC±5% @ 1A, +12V DC ±5% @ 1A, -12V DC±5% @ 1A contained on board

• May be free-standing (with care)

Parallel CPU Interface

• All buffering for Data Out (25 TTL loads),(25 TTL loads) and Data In (10 TTL loads)

Circle 39 on inquiry card.

Addr

• Includes cable and paddlecard for connection to dual22 on Digital Group CPU back panel. Two 22-pinedge connectors included

• Requires two output ports and one input port

AC Controller

• Eight output devices (2N6342A-2N6343A, -12 ampTriacs); Each output 240V AC max, 12A max RMS

• Control AC motors, lamps, switches, etc.

• Opto-isolated (MCS-2400 or equivalent)

DC Controller

• Eight output devices (2N6055) each output up to50V and up to 5A

• Control DC motors, switches, solenoids, etc.

• May use internal +12V DC for load or external DCup to 50V DC

Price

• For the motherboard and power supply, parallelCPU interface and cabinet, our kit price is only$199.50, or $260 assembled. Now r/inf's down toearth.

We've only just begun our Real-World InterfaceSystem. There are many more plug-ins andapplications coming along soon. So write or call TheDigital Group now for complete details.

And welcome to our world.

to(o

DgjLM

]p®QflH>

P.O. BOX 6528 DENVER, CO 80206 (303) 777-7133

BYTE February 1978 75

(a)

Figure 4: Mechanics of pass

1 of the SWEETS assemblerare shown in figure 4a. Theassembler first searches for"instructions" having an opcode of hexadecimal FF(the labels). When one isfound, the second byte ofthe instruction, which isthe label number, is movedto the end of the programarea and the current instruc-tion address is also de-posited there. The labelinstruction is then deletedusing subroutine MOVE UP.Figure 4b is a continuationof the process shown infigure 4a, showing thatall of the labels have beenarranged in a symbol tableat the end of the programarea. A typical result ofpass 2 of the SWEETS as-asembler is shown in figure4c. Here a jump instructionhas been modified so thatthe actual address of thedestination appears in bytes

2 and 3 of the instruction,and the actual branchdisplacement has beencalculated and inserted fora relative branch instruc-tion. In general, this passtakes care of all jump,subroutine call, and re-lative branch instructions.

FF 01 00

JMP 01 00

BEQ 02

FF 02 00

(b)

0238

0240

JMP

01

00

BEQ

02

40

02

02

06

02

01

M

0230

0240

JMP 06 02

BEQ | 06

BEGAD

00E0,

00E1

ENDAD

00E2,

00E3

CURAD

00E4,

00E5

CMD

0172

ASSEM

011C

Table 2: Locations ofthe variables BEGAD,ENDAD, CURAD, CMDand ASSEM. BEGAD,CURAD and ENDADmust be set up by theuser to point to thearea of memory whichwill hold the edited pro-gram. CMD is the entrypoint to the SWEETSeditor, and ASSEM isthe entry point to theSWEETS assembler.

(stop) key repeatedly, since this may causethe stack to grow in length to the pointwhere it could destroy one of the SWEETSroutines. The special address informationyou need is summarized in table 2.

Once you have SWEETS up and running,you can use it to develop improvements toSWEETS itself. In order to do this, you willhave to edit code in the program area whichis designed to run in anotherareaof memory.One way to facilitate this is to add a 16 bitoffset to jump and subroutine call addressesas they are resolved in pass 2 of the assem-bler. Another addition to SWEETS would bea small routine to save ENDAD at the endof the program area, set up the starting andending addresses for the KIIVI-1 audiocassette dump routine, and then transfercontrol directly to this read only memoryroutine to carry out the tape dumpoperation.

One of the peculiarities of SWEETS isthat it tends to make itself obsolete. This isbecause of our insatiable desire to do morewith our personal computers. As soon asyou find that writing a 512 byte programisn't so tedious anymore, you'll immedi-ately want to write a 1024 byte program(at least), and then you'll be stretching thecapabilities of SWEETS and the KIM-1.In a sense, SWEETS, as its name suggests,is an enticement: It helps develop themarket for assemblers. But why not giveit a try? It's a lot sweeter than absolutehex.

76 BYTE February 1978

(a)

0100

B1

E4

FINDLB

LDA

(CURAD),Y

0102

AO

FF

LDY

#$FF

0104

C4

EB

FDLOOP

CPY

LABELS

0106

FO

OD

BEQ

FDRET

0108

D1

EC

CMP

(TABLE),Y

010A

DO

OA

BNE

FDNEXT

01OC

88

DEY

010D

B1

EC

LDA

(TABLE).Y

010F

AA

TAX

0110

88

DEY

0111

B1

EC

LDA

(TABLE),Y

0113

AO

01

LDY

#1

0115

60

FDRET

RTS

0116

88

FDNEXT

DEY

0117

88

DEY

0118

88

DEY

0119

DO

E9

BNE

FDLOOP

011B

60

RTS

(b)

(c)

01 5B

20

80

17

015E

20

80

00

0161

AO

00

0163

B1

E4

0165

C9

20

0167

FO

04

0169

C9

4C

016B

DO

OE

016D

C8

016E

20

00

01

0171

FO

1C

0173

91

E4

0175

8A

0176

C8

0177

91

E4

0179

DO

14

017B

29

1F

017D

C9

10

017F

DO

OE

0181

C8

0182

20

00

01

0185

FO

08

0187

38

0188

E5

E4

018A

38

018B

E9

02

018D

91

E4

018F

20

89

17

0192

30

CA

0194

4C

4F

1C

PICK UP LABELSYMBOLTABLE INDEX

NO LABELS IN TABLEDOES LABEL MATCH?

WE HAVE A MATCHGET HI-ORDER ADDRINTOX REGISTER

GET LO-ORDER ADDRINTO A REG., Y=1RETURN TO CALLER

ADVANCE TO NEXTSYMBOLTABLE ENTRY

UNLESS END OF TBL

011C

20

80

17

ASSEM

JSR

BEGIN

011F

18

CLC

0120

A5

E2

LDA

ENDAD

0122

69

06

ADC

#6

0124

85

EC

STA

TABLE

0126

A9

FF

LDA

#$FF

0128

85

EB

STA

LABELS

012A

65

E3

ADC

ENDAD+1

012C

85

ED

STA

TABLE+1

012E

20

80

00

ASLOOP

JSR

DETLEN

0131

AO

00

LDY

#0

0133

B1

E4

LDA

(CURAD).Y

0135

C9

FF

CMP

#$FF

0137

DO

1D

BNE

ASNEXT

0139

C8

INY

013A

B1

E4

LDA

(CURAD).Y

013C

A4

EB

LDY

LABELS

013E

91

EC

STA

(TABLE),Y

0140

88

DEY

0141

A5

E5

LDA

CURAD+1

0143

91

EC

STA

(TABLE),Y

0145

88

DEY

0146

A5

E4

LDA

CURAD

0148

91

EC

STA

(TABLE),Y

014A

88

DEY

014B

84

EB

STY

LABELS

014D

20

B7

17

JSR

MOVEUP

0150

20

AB

17

JSR

REDEND

0153

B8

CLV

0154

50

D8

BVC

ASLOOP

0156

20

89

17

ASNEXT

JSR

ADVANC

0159

30

D3

BMI

ASLOOP

JSR

BEGIN

RSLOOP

JSR

DETLEN

LDY

#0

LDA

(CURAD),Y

CMP

#$20

BEQ

JMPJSR

CMP

#$4C

BNE

CHKBR

JMPJSR

INY

JSR

FINDLB

BEQ

RSNEXT

STA

(CURAD),Y

TXA

INY

STA

(CURAD),Y

BNE

RSNEXT

CHKBR

AND

#$1F

CMP

#$10

BNE

RSNEXT

INY

JSR

FINDLB

BEQ

RSNEXT

SEC

SBC

CURAD

SEC

SBC

#2

STA

(CURAD),Y

RSNEXT

JSR

ADVANC

BMI

RSLOOP

JMP

START

CURAD := BEGAD

ENDAD + 6 IS JUSTBEYOND UPPERMOSTLABEL IN TABLE

BEGINNING TBL INDEXADJUST TABLE DOWN BY256 FOR INDEX BASEDETERMINE LENGTH

PICK UPOPCODEIS IT A LABEL?

YES, GET LABEL NOGET TABLE INDEXDEPOSIT LABEL IN TBL

HI-ORDER ADDRESSDEPOSIT IN TABLE

LO-ORDER ADDRESSDEPOSIT IN TABLE

SAVE NEW TBL INDEXMOVE UP PROGRAMADJUST ENDAD UPWARD

BACK FOR NEW LABELTO NEXT INSTRUCTIONUNTIL ENDAD REACHED

CURAD : = BEGADDETERMINE LENGTH

PICK UPOPCODEJSR INSTRUCTION?

JMP INSTRUCTION?

ADVANCE TO LABELLOOKUP IN TABLELABEL NOT FOUNDLO-ORDER ADDRESS

HI-ORDER ADDRESSTO NEXT INSTRUC

BRANCH INSTRUC?

ADVANCE TO LABELLOOKUP IN TABLELABEL NOT FOUND

DEST. -SOURCE

DEST. -SOURCE-2= DISPLACEMENTTO NEXT INSTRUCBACK TO EXAMINE ITTO KIM-1 MONITOR ■

Listing 7: The assemblysource code for SWEETS.Subroutine FINDLB (list-ing 7a) is used duringpass 2 of the assemblerto look up labels in thesymbol table. FINDLBlooks up the label atCURAD, Y and returnswith Y=l, X=the highorder part of the address,A = the lower part of theaddress, and Z=0. Z isset equal to I if the labelis not found. Listing 7bshows pass I of theassembler during whichlabels are collected andstored with their addressesat the end of the program.Listing 7c is pass 2. Dur-ing this pass, the operandsof the branch, jump andJSR instructions are con-verted from label refer-ences to displacements oractual addresses. Note thatjump indirect operands arenot converted.

BYTE February 1978 77

The disk system you want

at a price you didn't expect from a

company that understands systems.

78 BYTE February 1978

THEVISTA'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.

BYTE February 1978 79

Personal Computers in a Distributed

Jeff Steinwedel W3FY715 Reseda Dr, Apt 2Sunnyvale CA 94087

The combination of manysmall processors with someway to communicate fromone to another clearly hasmuch potential.

Since the first microprocessors becameavailable I have been convinced that theirmost dramatic applications would be inconnection with a large-scale communi-cations network. The economics of a dis-tributed network would suit the individ-ualized structure of personal computing.The combination of many small processorswith some way to communicate fromone to another clearly has much potential.Already, the processor technology hasarrived; but it seems that a simple, inex-pensive communications system is notforthcoming. Both the telephone systemand cable TV could be technically work-able, but require centralized expendituresof large amounts of capital, as well as apolitical commitment to the application.My argument is that there is an economicand technological short cut to a distributednetwork through use of the radio spectrumfor communications.

This article is speculative, in that newradio spectrum rules would have to comeinto effect for this network to exist. How-ever, I think the idea is technically feasible,and the political aspects perhaps providea raison d'etre for a national personal com-puting organization. Further, the FCC hasalready validated some of the principlesinvolved.

If participating individuals were to con-struct computer controlled VHF trans-ceivers around a common set of guidelines,and if these radio stations were designed

to transmit and receive data over a numberof predefined channels for extended periodswithout operator intervention, such acommunications network could be achieved.In many ways this type of system wouldparallel the 2 meter FM amateur radiorepeater system, except that data andcontrol would be computer oriented.

Standardization would necessarily bedefined in a number of areas: frequencyselection, routing algorithms, communica-tion mode encoding, data and communi-cation types, character codes and data rates,etc. One of the very desirable features(for the FCC) would be that the systemcould easily be made to be self-loggingand self-monitoring. Ideally, the systemcould also be self-policing so that any"Citizens' Computer Radio Service" couldbe a model for efficient spectrum usagewith minimum government interaction.

Why Build a Network?

What would be the characteristics andadvantages of such a system? The actualmechanics of radio transmission shouldbe transparent to the user. The most com-mon type of communications would bestation-to-station relayed data transfers. Forexample, if I were to initiate a data transfer(message) from my station, I would justcreate the message, define the destination,and let the operating system take over.My computer would then find a similarstation suitable for relaying the message,

80

BYTE February 1978

Communications Network

r

"

\ 1 / OMNIDIRECTIONAL\ / ANTENNA

PERSONALCOMPUTER

TRANSMIT/RECEIVE SWITCH

♦

RFt

SYSTEM

TRANSMITTER

X

p

RECEIVER

RF-»

RF-»

t

I

4

L

1

TUNING INFORMATION

T

SYNTHESIZER

MEMORY

t

(^TERMINAL

LOCAL CO

NTRO

L AND DATA

1

LOCAL

MASS

STORAGE

PROCESSOR

C0

NTR0

L

PERIPHERALINTERFACE

«~*

'

INTERRUPT

COMMUNICATIONSUBSYSTEM

i

(LINK TO RF NETWORK)

J

Figure 1: Conceptual outline of the communications subsystem as a peripheral of the typical personal computer system. Thesystem components assumed of the computer are some memory, mass storage which is completely computer controlled (this ex-cludes manually manipulated audio cassettes), a terminal and of course, a typical microprocessor. The communications sub-system consists of a frequency synthesizer which sets the communications channel used, a transmitter, receiver, antenna switchand control logic to interact with the computer. The control logic design can be simple or complex, depending upon how muchof the "smartness" of the network terminal is incorporated into the personal computing system's programs as opposed to thelogic of the communication subsystem's controller. The details of the software protocols are well understood in the computingfield, and examples of radio data communications networks funded by ARPA have been demonstrated quite successfully andcan be used as inspiration for this endeavor.

BYTE February 1978 81

Hopefully, any "CitizensRadio Service" could be-come a model for efficientspectrum usage and asynergistic interaction ofindividuals across thecountry via computer con-trolled relays.

and (optionally) return the data path infor-mation to me. Full redundant error check-ing could be employed to insure data relia-bility, a necessity for exchanging softwarethrough a number of relays.

Hopefully, regulations affecting thesecommunications would not have the restric-tions of the amateur radio service regardingcommercial interest and entertainment con-tent. Thus, the network could become atruly democratic marketplace with widedistribution of a large range of intellec-tual products. Some data categories wouldrequire special transmission techniques. Forexample, data could be defined in such away to make it easily segmentable as a func-tion of dynamically available buffers, opti-mum transmission rates, or communicationtime windows.

Another possible use of such a com-munications network would be that indi-vidual stations could maintain data to beaccessible by the network. For example,suppose an individual has a floppy disk orvideo disk with a library of Star Trek gamesthat are public information. Standardizedfile access software would allow any net-work user to access these programs directlyor make his or her own contributions tothe library. Obviously, such data is notnecessarily limited to computer programs.

Essentially, a communications networkof this sort, if defined with maximumgenerality, would be a multiprocessor sys-tem of a unique sort. Advanced individualswould undoubtedly give the network arti-ficial intelligence attributes, and the systemmight even become evolutionary like Con-way's LIFE. What is necessary now isdiscussion of the viability of the idea and thecreation of any optimal functional speci-fication. This is an opportunity for smallprocessor hackers to cooperatively producea new and unique entity that would cer-tainly have long-term cultural ramifications,considering the acceleration of technology.

Hardware Requirements

A reasonable first step towards imple-menting this scheme would be to developa useful subset within the present structureof radio frequency allocations. It wouldbe difficult to have a totally new communi-cations service gain regulatory approval anduser acceptance from a zero start. Probablythe easiest way to begin would be by usingamateur radio as an initial vehicle of experi-mentation. Obtaining an amateur licensefor VHF privileges is not difficult; Morsecode proficiency of only five words perminute is required along with a basic theorytest. For the sake of demonstrating the max-imum potential for the idea, let's assume

a fairly elaborate structure for this feasibilitymodel. However, it is probably more realisticto assume that local groups will put togethersmall networks that would suit specificneeds, later expanding into something closerto what will be explored here.

The hardware could be structured as fol-lows: Some spectrum should be dedicatedto this application. Within amateur radio,this amounts to a gentleman's agreement,which in the amateur environment hasgenerally been a very successful mechanism.A portion of the 144 to 148 MHz or 220 to225 MHz band would be a good choice.Because the higher frequencies presentlyenjoy less use, let's postulate that 224 to225 MHz be set aside for personal com-puting. This band could easily be split into99 channels at 10 kHz separation, from224.005 to 224.995. This channel spacingshould allow data rates up to at least 1200bps. A good modulation scheme would beaudio modulated FM. FM is easy to syn-thesize and detect, and audio modulationwould allow compatibility with conventionalmodems. Frequency shift keying, whilepotentially narrower than FM, would requiregreater frequency precision to receiveaccurately.

Frequency determination should be bydigital frequency synthesis so that the com-puter would have direct control over channelselection. Because of advances in phaselocked loops and other integrated circuittechnology, synthesizers are becoming thepreferred method of discrete frequencygeneration, even in radios with manualcontrol. The next few years will see theintroduction of complete LSI synthesizersystems, many intended for the Citizens'Band market.

The modem and synthesizer are twoelements of the communications subsys-tem that would perform as a peripheraldevice of the personal computer system.This device, while basically a VHF trans-ceiver, must be organized to interact directlywith the controlling software. For example,it could be structured in a way very similarto a UART (universal asynchronous receivertransmitter) device, with control and dataregisters accessible to the system bus. Afirst in first out data file would be usefulto relieve some of the data load from theprocessor, although this certainly would notbe a necessity. The simplicity of a characteroriented system would have large appeal.

The communications subsystem probablyshould operate in an interrupt driven modewith the processor, again, in much the sameway as a conventional UART can be wired.

Continued on page 94

82 BYTE February 1978

Application Software!

bNMC oV

voi""*

I BASK

SOFTWARE.«

— - UBRAKY

VOLUME II

.••"

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.

Vol. 1 — $24.95

Vol. Ill — $39.95

Bookkeeping

Advanced Business

Games

Billing, Inventory

Pictures

Investments

Payroll

Vol. II — $24.95

Vol. IV — $9.95

Math/Engineering

General Purpose

Plotting/Statistics

Basic Statement

Vol. V — $9.95

Def.

Experimenter's

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 February 1978 83

The Brains of Men and Machines

With this second article on the brain'soutput control system, we begin a moredetailed look at the mechanisms by whichthe brain accomplishes some of the func-tions which robot systems will also be calledupon to perform. (A number of the termswhich are used in this article were definedand discussed in the first part which beganon page 11 last month.) As we reach amore concrete level of description of thebrain's operation, we will encounter manypoints which are not yet entirely resolved,and many questions which are subjects ofdispute between competing theories. Sinceit would seem that the present reader ismore likely interested in potential applica-tions of brain architecture than in the exactnature of the debate on fine points ofphysiology, I will simply present the posi-tion which seems to me to be most stronglysupported at the present time. I will alsomake some simplifications where they seemwarranted by the intended purpose of thesearticles. (To atone for these sins, I will alsooffer a list of references for the reader whois interested in pursuing the subject ingreater depth.)

It seems likely that any robotics systemwill require some kind of output controllerconcerned with the generation and execu-tion of patterns of movement in space, andthe required control systems may be ex-pected to range from very simple to verycomplex. The evolution of the biologicalbrain of course has also had to solve thisproblem, and it has accomplished it with aset of capabilities for control which areprobably as complex as any that we will belikely to encounter for a long time to come.The jointed limb scheme which has beenemployed as the chief means of locomotionand manipulation in terrestrial animalsrequires a very complex control system. Itis true that a robot, which is free of such re-strictions as an uninterrupted blood flow

to all of its parts, has other options; wheelsand treads for example. These devices mightpermit simpler control systems, but I wouldlike to suggest that for a system capable ofoperation in a generalized environment,the jointed limb scheme may be superior.Try to picture a wheeled or treaded robotscaling a cliff or climbing a tree, or evenusing a stool to dust the bookshelves. Sincea motion control system which can handlethe jointed limb scheme can also handlesimpler systems, it may be most appropriateto plan for the future by starting with thisbasic scheme in early designs.

The Motor Control System

With regard to the actual mechanismswhich are to be controlled, it is interestingto note that they are of only two basictypes. The only two things that you arecapable of doing are contracting a muscleand releasing glandular secretions, period.Everything else is only some combinationof these two. Muscles and glands are theonly devices to which the brain interfaces.In the present discussions we will concernourselves exclusively with the muscles andthe system which controls them, usuallycalled the "motor control system."

There are two fundamental principlesemployed in the brain's motor control sys-tem. The first is to buffer each level of com-mand with subprocessors which interpretthe commands from higher levels as objec-tives; and compute appropriate outputs forachieving the objectives, while taking intoaccount local feedback inputs and environ-mental information. A whole series of suchsteps is employed, with the "objectives"becoming more concrete at each stage. Inthis fashion, a pyramid of processors isdefined which can accept very generaldirectives and execute them in a reflexfashion with quite considerable flexibilityin the face of varying loads, stresses and

84

BYTE February 1978

Part 2: How the Brain Controls Outputs

Ernest W Kent, Associate ProfessorDept of Psychology

The University of Illinois at Chicago CircleChicago IL 60680

other perturbations. This system by itselfis quite capable of things such as bipedallocomotion with maintenance of balanceon uneven terrain. It cannot, however,operate in a goal directed fashion.

The second principle of the motor con-trol system involves the operation of higherlevel systems which generate outputstrategies in relation to behavioral goals.This principle is the division of output taskson the basis of their relation to input infor-mation rather than type of motion required.We shall examine some specific exampleswhich illustrate each of these ideas.

Kinesthesis

The operation of the motor controlcommand chain depends heavily on certainsensory inputs which provide feedback andstatus information for moment to momentoperations, and it is appropriate to beginour investigation of output with a look atthese inputs. Perform this small experi-ment. Close your eyes and put one handsomewhere out in front of you, then touchit with your other hand. Most people haveno difficulty doing this quite accurately.The question is how, with your eyes closed,could you guide your hands to the rightspatial locations? The answer is that we havea number of special sensory systems ofwhich most of us are not even aware. Thesesenses have the primary purpose of inform-ing the brain's output control processorsof things such as the relative positions ofthe limbs, the tensions of the muscles, theacceleration of the body in different direc-tions, etc. Most people are unaware of thesesenses because they do not have a consciouscontent or "experience" associated withthem, as do senses such as vision and smell.Nonetheless, they are among the mostextensive and intricate sensory systems ofthe brain, and when they are damaged, theresults are immediately apparent. With

damage to the systems which report limbposition, some people are unable to carryout the small experiment you just per-formed. In fact, such people are generallyunable to execute any muscular actioncorrectly without constantly watching whatthey are doing.

The sensory system which reports on thestatus of the limbs is called kinesthetic sense,or kinesthesis, and it handles three sortsof information. These are joint angle,degree of load on a muscle, and degree ofstretch or extension of the muscle. Thesethree types of input information are used atvarious levels of the motor system to controlsequencing and provide feedback infor-mation. This is another instance where placecoding specifies the particular unit and typeof quantity in question, and frequencycoding carries the intensity information. Thetransducers which translate these quantitiesinto neural impulse streams need not bediscussed in detail since adequate mechanicalcounterparts are readily available.

Vestibular Sensory Inputs

The other sensory system which is strong-ly related to the brain's output control isthe vestibular sensory system. This is thesystem responsible for the "sense ofbalance" among other things. Specifically,it provides continuous readout of the in-clination of the head with respect to gravity,and the acceleration of the head in threeperpendicular planes. This sensory systemis located in a single set of transducers oneither side of the head near the middle ear,rather than a multitude of transducersdistributed through the body as is the casewith the kinesthetic sense. Although theoutput therefore only refers to the head, theposition of the head with regard to allother parts of the body can be computedfrom the information provided bykinesthetic inputs. Accordingly, the output

BYTE February 1978

85

0

LOWER

MOTOR NEURONS

M ±

(^qsLJ—<>-f ¥

-o

-o

EXTENSORMUSCLE

EXTENSION

Figure I: Some important parts of the lower motor neuron (LMN) circuitrywhich has final control over muscle contractions. See text for an extendeddiscussion of this low level closed loop feedback system.

of the vestibular transducers is made widelyavailable throughout the system as input tomost of the high and low level motor proc-essors. In this case too, the existence ofeasily available transducers for such quanti-ties makes it unnecessary to discuss them indetail. Any device capable of reading outinclinations and accelerations will do whendesigning our robots.

The Typical Joint: a Control System

In most cases, muscles work in opposingpairs, one to open or extend a joint and oneto flex or close it. This is necessitated bythe fact that muscles can only exert forcein one direction (contraction). Figure 1demonstrates the arrangement for a typicaljoint. This diagram also shows some of theneural elements which control the con-traction of these muscles. The principalneuron of this system, the one which pro-vides input to most muscle fibers, is calleda lower motor neuron, and is labeled L infigure 1. This type of neuron (and the otherneurons associated with it) is located in the

spinal cord, and is the final processing stagebefore output to the actuator. This littlesystem is a good place to illustrate some ofthe principles of the brain's motor organi-zation. We shall refer to the lower motorneuron and its associated elements as an"LMN system." Basically, LMN systemsmust accept commands from a multitude ofother systems which desire access to themuscle in question, attend to them accord-ing to their priority, modify them accordingto inputs from kinesthetic and vestibularsystems as well as status information fromrelated LMN systems, provide an appropriateoutput to the muscle, and make their ownstatus information available to other sys-tems. There are a great many LMN systemsin the spinal cord. Every muscle is composedof thousands to millions of fibers, and inthe case of muscles used for precise opera-tions, there may be an LMN system for eachindividual fiber. In other cases, a single LMNsystem may control many fibers of a muscle.

In a practical robotics application, Isee no reason why a single servo actuatorand "LMN" processor for each joint wouldnot suffice. There are reasons why a singleprocessor for many joints is less practical,but before addressing this issue, let us ex-amine the LMN system to see what sorts ofthings it does.

In figure 1, for clarity, we show only asingle LMN driving each muscle. The degreeof contraction of the muscle is proportionalto the output pulse frequency of the LMN;the higher the frequency, the stronger thecontraction. The circuit shown on the rightillustrates the simplest type of protectivespinal reflex; a pain receptor in the skin(P) fires a neuron in the LMN system whichfires the LMN driving the flexor muscle.This simple high priority operation quicklyremoves the limb from danger. Inhibitorycross connections of the LMNs driving thetwo muscles insure that they do not actantagonistically; one relaxes as the othercontracts. This reciprocal circuitry isgenerally active in all LMN operations unlessspecifically overridden. Not shown are out-puts which inform higher centers of thisaction to allow for the necessary correctiveaction of other muscles and limbs whichmust take up the redistribution of weight,counteract shifts in center of gravity, etc.

Inputs to the LMN system from highercenters may request a variety of actions,such as holding a particular position, movingto a specified position, moving with a par-ticular velocity, etc. The LMN attached tothe extensor muscle on the left in figure 1 isshown with some of the associated neuronswhich are involved in the process of carryingout these instructions while compensating

86 BYTE February 1978

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 we're 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 98 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 S199 in kit) is the industry standarddisplay device with over 6,000 in use.

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

software including Extended BASIC,FORTRAN? PILOTf 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.

for external loads. Note that there is aspecial muscle fiber (S) which receives itsinput from the small motor neuron (G)rather than from the LMN driving the otherfibers in the surrounding extensor muscle.This special fiber is part of the transducersystem for a kinesthetic monitor of musclestretch. There is a sensory neuron (I) whichhas an input attached to the S fiber, and thisneuron is fired when the S fiber is subjectedto stretch, at a rate proportional to the de-gree of stretch. Since the S fiber is mechan-ically attached to the rest of the muscle,it is stretched or relaxed by inputs or forceswhich extend or contract the main muscle,as well as by its own private input signalsfrom neuron G. The axon of the I neuronmakes an excitatory synapse on the LMN,thus increasing its drive when the S fiberis stretched. Since increased output by theLMN tends to contract the main muscle andrelieve the stress on fiber S, we have a nega-tive feedback loop.

Suppose that the higher centers in thesystem wish the LMN system to maintaina particular angle on the joint. This is speci-fied by a set of constant inputs from above(X) to the LMN, and to neuron G. Nowsuppose that a stress such as increased loadin the hand is suddenly applied to the joint.This will tend to flex the joint further,causing the extensor muscle to be stretchedbeyond the specified degree of contraction.This in turn stretches the S fiber and in-creases the output of neuron I, and thereby,the output of the LMN. The resulting in-crease in contractile force of the musclecompensates for the increased load. Thisallows the system which requested themaintenance of joint angle to remain ig-norant of loading conditions andfluctuations.

On the other hand, a new input toneuron G can cause the S fiber to contractindependently of the drive to the main ex-tensor muscle, thereby increasing the outputof the I fiber for the same degree of ex-tension of the main muscle. This defines anew "set point" for the system. (Hence theneed for a separate joint angle kinestheticsystem for output to higher systems whichdon't want to untangle the effects of inputsto G on outputs from I.)

From this point, it is clear that the nor-mal considerations of control theory areapplicable, and it does not matter whetherthe system is neural or electronic. For ex-ample, in this system the mechanical re-sponse time of the muscle and joint, whichare in the feedback loop, may be slow com-pared to the response time of the neuralelements. In this as in any other system,that means that instability and oscillation

may result if the system gain does not rolloff at higher frequencies. This roll off isaccomplished by the small neuron R whichproduces a fast self-inhibitory action on theLMN with each LMN output pulse. At lowinput pulse rates from higher systems,the weightings of the synaptic contacts (asdescribed in last month's article) is such thatthe pull down from firing threshold in theL cell produced by the R cell's input hassubstantially decayed away before the nextpositive input arrives, and thus has no effecton it. At higher input frequencies however,the positive input pulse will encounterincreasingly greater antagonism from therecurrent negative input produced via R bythe preceding output pulse, and will thusbe less effective in bringing the axon hillockabove threshold. This effectively reducesthe gain of the system progressively ashigher frequencies are approached.

Fitting Lower Motor Neurons into a LargerContext

Looking at the LMN system in the con-text of the whole hierarchical motor out-put system, it is apparent that the brain isusing a "temporal byte" of frequency codedanalog information to specify informationabout degree or quantity of action. In addi-tion, the set of all of the input lines to thenumerous LMN systems constitutes a"spatial byte," or place code, which isessentially digital in character, and in whichthe selected lines (bits) select the set of LMNsystems which are addressed and therebydetermine the nature of the movement to beperformed, but not its speed, force, etc.

At first glance, it would seem reasonableto try to model the behavior of the LMNsystem with an analog device such as an opamp with a feedback loop. In practice, suchan analog device might be quite tricky sincethe LMN system must integrate inputs froma wide variety of sources with differentpriorities. A real LMN has about 10,000synaptic inputs. There is also the difficultyof encoding the analog information fromother systems. Given that we will have manyfewer LMN type units to worry about, itmay be more practical to do both addressingand value transfer with digital techniques.This would suggest a digital processor ofsome simple type to replace the LMN unitrather than the op amp, and it may be thatthis would in the long run be the easiestway of dealing with the interactions of thevarious inputs to the system.

The next question that arises is, why notuse one processor at high speed to run allthe joints? There are several considerations.One that is immediately obvious is relia-bility. If one LMN system is lost, the others

88

BYTE February 1978

The end of Kit-Kits

The end of bad solder joints, heat damaged

components and sick IC's. Introducing the

Semikit. Item 1, a 16KRA Memory Board, $369.

Let's face it. Loading andsoldering PC Boards is not much funfor the kit builder. Even moreimportant, its the place where mostof the trouble gets introduced. Thereal fun and education comes inrunning and testing boards.

Now the Semikit with fullytested IC's.

At the price of a kit, ProcessorTechnology Corporation introducesthe Semikit. It's a fully stuffed,assembled and wave soldered PCBoard loaded with IC's that havegone through Q.C. and final check-out (a first in the industry).

We leave you the fun of testingwith our fully documented set ofinstructions. We do the productiontasks of loading, wave soldering andinspecting the boards. You do themore interesting and timeconsuming chore of testing andburning-in the boards.

The result is one sweet deal forboth of us. You get a board where

Circle 98 on inquiry card.

the primary causes of damage (poorsolder joints, excess solder and badIC's) are virtually eliminated. Youget a board of highest professionalquality. And we get the business!

The 16KRA Memory Board'sat your dealer now.

Your Processor Technologydealer has the first Semikit, a16KRA Memory Board, in stock andready to go right now. You cantake it home tonight for $369 as aSemikit or for S399 fully assembled,tested and burned-in.

You'll have a 16,384 byte memorywith a better price performanceratio than anything on the markettoday. Now you can afford to addquality, high density memory to yoursystem for remarkably little. Andyou can add enough to solve com-plex computing problems right inthe main frame.

The memory features invisiblerefresh. There's no waiting while theCPU is running. Worst case access

time is 400 nsec. Each 4,096 wordblock is independently addressablefor maximum system flexibility.Power is typically 5 watts, thesame as most single 4K memorymodules. Back-up power connectionis built-in.

Other Semi's are comingyour way.

The 16KRA Memory isProcessor's first step in adding morefun, capability and reliability toyour computer system at lower cost.Other modules are on the way toyour dealer now. Come ondown today.

Or you may contact us directly.Please address ProcessorTechnology Corporation, Box B,7100 Johnson Industrial Drive,Pleasanton, California 94566.Phone (415) 829-2600.

ProcessorTechnology

BYTE February 1978 89

Figure 2: Principal ele-ments of the cerebellarcortex. The output cells(P) are fired in sequenceby pulses traveling downthe parallel fiber axonsof the input cells (G).Each input axon selects aset of output cells foractivation, and time delaysin the parallel fiber axonshelp establish sequencesof outputs. Other cells(O) handle interactions be-tween elements of thiscortex.

Gn AXON FIBER

KEY;

GP AXON FIBER

AXON FIBER

G= INPUT NEURON

P= OUTPUT NEURON

0= AUXILIARY ELEMENTS

can take compensatory measures almostautomatically. Second, since the output ofeach LMN system is a factor in the outputof each of the others, and since the LMNsystem is a part of several otherwise distinctfeedback loops, a single central processorsystem would have to be quite complex.Essentially it would face the solution of anumber of simultaneous differential equa-tions, or else have to deal with each com-ponent motion in sequence. This sort ofsequential operation would produce a slow,jerky "movie robot," because each actionwould have to be completed to obtain theresults as input data for computing the nextaction. A processor with sufficient speed,sophistication and core to handle the differ-ential equations might well be more complexand costly than the multiple simple parallelprocessor approach. At the other extreme,which the brain has apparently found tobe the best approach, programming wouldbe a very simple test-operate-test-exitsequence, in which the actions of otherunits performing other actions simultaneous-ly are entered as data each time around theloop. The moment we break out of thissequence to handle several "simultaneous"operations with a serial set of such se-quences, things get more complex. However,at processor speeds it should certainly bepossible to do some of this without doingmuch more than adding a little scratch padmemory to the simplest robot system'sROM. The best compromise for a robotremains to be demonstrated. Finally, a hier-archical system with interactive parallel unitsat the bottom frees the upper levels of thesystem to engage in coordinating the actions

INPUT AXON

of the lower parts into complex actions ofthe entire organism or device. This functionby itself may require substantial processingpower and time without the added burdenof those jobs which the brain delegates tothe LMN systems and their immediatesuperiors.

Reflex Automatons

This organization of LMN units and their"supervisors" forms a reflex machinecapable of quite elaborate motion controland generation (although it does not initiatemotion except in response to high levelcommands, or as a predetermined responseto specified sensory inputs). It is essentiallyan automaton, but a very complex one. Theorganization of the hierarchy is quite con-ventional, and similar to a military commandchain. The processing elements which havethe responsibility for coordinating the move-ments of different limbs, for example, out-put control commands to the LMN units atthe local level, rather than to the musclesdirectly, and leave the LMN units to handlethe details. They in turn receive orders from,and report to, processing units that are con-cerned with coordination of whole bodyactions, the maintenance of posture andbalance, and so on. Its major departurefrom a "command chain" model is the exis-tence of elaborate lateral information trans-fer between processing elements at the samelevel in the hierarchy. The operationalprinciples at each level are quite similar tothose we have examined in detail in theLMN units which form the lowest rank inthe system.

In the brain, this hierarchical system isContinued on page 146

90 BYTE February 1978

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?9 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?

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.

7 Are 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 98 on inquiry card.

ProcessorTechr gy

BYTE February 1978 91

Collector'sitem

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-in-Chief, BYTE Magazine

^kL^.

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

□ Check enclosed for $100.00□ Bill BankAmericard/Visa □ Bill Master Charge Expiration Date

Card Number

Signature

Address

City

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

Name (please print)

State

Zip •

N.H. 03458

92

BYTE February 1978

Entomological Archives

We like to set the record straightabout bugs whenever we can, even theold variety. With this in mind, we pointout that there is a bug in figure 3 of theJune 1976 article, "Building an M6800Microcomputer" (see page 45). TheMikbug PIA (IC11) is shown with pins2 and 9 reversed; pin 2 (PAO) should bethe output to pin 2 of IC16; and pin 9(PA7) should be the input from pin 8of ICI5. Our thanks to author BobAbbott for this information. Bob sentit to us over a year ago, but it got lostin the limbo of our files."

Random Errors

John D Leasia PE2005 N Wilson AvRoyal Oak Ml 48073

Unfortunately, the pseudorandromnumber generator shown in page 218of the November 1977 BYTE will notgenerate a complete set of numbers from00 to FF as stated. The error lies in theprogramming, not in the method. Num-bers ending in 2, 3, 6, 7, A, B, E and Fcannot be obtained.

As programmed, the seed is multi-plied by 11, not by 13. In the 6800program, if the opcodes at addresses0005 and 0006 are interchanged, theprogram will correctly compute all256 numbers without a repeat. Inter-estingly enough, as programmed, exactlyhalf of the possible numbers are gener-ated with no repeats. The missing Is endin the digits shown above, which groupin 2s.

I found it necessary, on my KIM-1,to clear the carry before each add oper-ation. Otherwise the program wouldrepeat before all 256 numbers weregenerated.

My program requires additional bytesdue to the addition restrictions of the6502:

Address

Hexadecimal Code

0000

D8

0001

A5 12

0003

0A 18

0005

65 12

0007

0A 0A

0009

18

000A

65 12

oooc

18

000D

69 01

000F

85 12

0011

60

0012

XX

Bugged Tidbit

In your October 1977 issue, the pro-gramming tidbit on page 174 to sub-stitute for the absolute value functionwill not detect the condition when(A-B) is negative and within the intervalspecified by a positive delta. To correctyour instruction you will need anotherconstant: NDELTA = - DELTA to test(A-B) when it is negative. A shorteralternative for the whole instructionwould be:

If ((A-B)<DELTAand (B-A)<DELTA|then

If you look long and hard at your in-struction, you will notice two missingright-hand parentheses. I'm sure youknow only too well how such slipsinspire an old-maidish compiler to nag,nitpick and fuss.

Victor Kincannon

720Coolidge St

Fennimore Wl 53809"

A Slightly Sour SWEET 16.

John Feagans from CommodoreBusiness Machines Inc has detected aslight bug in the program listing of theSWEET16 interpreter (see "SWEET16:The 6502 Dream Machine" by StephenWozniak, BYTE November 1977, page151). The program, which normallystarts at location F700 in hexadecimalon the Apple computer, was reassembledto start at location 0800 for the listingin the article. But the symbol S16PAG,which defines the high order byte ofthe address pushed on the stack for theRTS instruction as described on page152 of the article, should have beenchanged from hexadecimal F7 to 08.

Ed Voightman, Dept of Chemistyat the University of Florida, also spottedthe bug."

Op Code

CLD

LDA RND

ASL CLC

ADC RND

ASL ASL

CLC

ADC RND

CLC

ADC# 01

STA RND

RTS

RND

Commentary

Clear decimalLoad NMultiply by 2Add NMultiply by 4

Add N = 13N

Add 1 = 13N+1Store in RNDReturnSeed location"

Your

Sol dealer

has it.

AZ: Tempe: Byte Shop, 813 N. Scottsdale,(602)894-1129; Phoenix: Byte Shop, 12654 N,28th, (602)942-7300; Tucson: Byte Shop, 2612E. Broadway, (602)327-4579. CA: Berkeley:Byte Shop, 1514 University, (415)845-6366; CitrusHeights: Byte Shop, 6041 Greenback, (916)961-2983; Costa Mesa: Computer Center, 1913Harbor, (714)646-0221; Hayward: ByteShop, 1122 "B" St., (415)537-2983; Lawndale:Byte Shop, 16508 Hawthorne, (213)371-2421;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: ByteShop, 2626Union, (408)377-4685; San Rafael: Byte Shop,509 Francisco, (415)457-9311; Tarzana: ByteShop, 18423 Ventura, (213)343-3919; WalnutCreek: Byte Shop, 2989 N. Main, (415)933-6252.CO: Boulder: Byte Shop, 3101 Walnut, (303)449-6233. FL: Ft. Lauderdale: Byte Shop, 1044E. Oakland Pk., (305)561-2983; Miami: ByteShop, 7825 Bird, (305)264-2983; Tampa:Microcomputer Systems, 144 So. Dale Mabry,(813)879-4301. GA: Atlanta: Computer Mart,5091-B Buford, (404)455-0647. IL: Champaign:Computer Co., 318 N. Neil. (217)359-5883;Numbers Racket, 623'/2 S. Wright, (217)352-5435;Evanston: itty bitty machine co, 1322 Chicago,(312)328-6800; Lombard: itty bitty machine co,42 W. Roosevelt, (312)620-5808. IN:Bloomington: Data Domain, 406 S. College, (812)334-3607; Indianapolis: Data Domain, 7027N. Michigan, (317)251-3139. IA: Davenport:Computer Store, 4128 Brady, (319)386-3330.KY: Louisville: Data Domain, 3028 Hunsinger,(502)456-5242. Ml: Ann Arbor: ComputerStore, 310 E. Washington, (313)995-7616; Troy:General Computer Store, 2011 Livernois, (313)362-0022. MN: Minneapolis: Computer Depot,3515 W 70th, (612)927-5601. NJ: Hoboken:Computer Works, 20 Hudson PI., (201)420-1644;Iselin: Computer Mart, 501 Rt. 27, (201)283-0600.NY: New York: Computer Mart, 118 Madison,(212)686-7923; White Plains: Computer Corner,200 Hamilton, (914)949-3282. NC: Raleigh:ROMs 'N' RAMs. Crabtree Valley Mall, (919)781-0003. OH: Columbus: Byte Shop, 2432Chester, (614)486-7761; Dayton: ComputerMart, 2665 S. Dixie, (513)296-1248. OR:Beaverton: Byte Shop, 3482 SW Cedar Hills,(503)644-2686; Eugene: Real Oregon ComputerCo., 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;Houston: Computertex, 2300 Richmond,(713)526-3456; Interactive Computers, 764654Dashwood, (713)772-5257; Lubbock:Neighborhood Computer Store, 4902-34th St.,(806)797-1468; Richardson: Microstore,634 So. Central Expwy., (214)231-1096. VA:McLean: Computer Systems Store, 1984Chain Bridge, (703)821-8333; Virginia Beach:Home Computer Center, 2927 Va. BeachBlvd., (804)340-1977. WA: Bellevue: ByteShop,14701 NE 20th, (206)746-0651; Seattle: RetailComputer 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 Computer Store, 3286 M St. NW,(203)362-2127. CANADA: Ottawa, Ont:Trintronics, 160 Elgin, (613)236-7767; Toronto,Ont: Computer Mart, 1543 Bayview, (416)484-9708; First Canadian Computer Store, 44Eglinton Ave. W. (416)482-8080; ComputerPlace. 186 Queen St. W, (416)598-0262;Vancouver, B.C.: Basic Computer Group, 1438E. 8th, (604)736-7474; Pacific ComputerStore, 4509 Rupert, (604)438-3282.

ProcessorTechrsology

Circle 98 on inquiry card.

BYTE February 1978 93

Continued from page 82

A reasonable first steptowards implementing thisscheme would be to de-velop a useful subsetwithin the present struc-ture of radio frequencyallocations. It would bedifficult to have a totallynew communicationsservice gain regulatorapproval and user accept-ance from a zero start.

Also, there should be some hard wired func-tions implicit in the communications sub-system to ease the burden on the processor.Indeed, control of the subsystem might bea function to be delegated to a dedicatedsubprocessor. The communications subsys-tem controller must: operate the transmitterand receiver, communicate with the mainpersonal system processor, direct data tothe synthesizer, recognize special signals,send control signals to the modem, detectbusy channels, respond to "home" and"scan" modes, allow manual interaction,derive status information, and maintaindata and control registers or buffers. Thereare probably many other functions thatcould be allocated to the subsystem de-pending on the intelligence and complexitythe designer desires or can afford. Using adedicated microprocessor in the subsystemdesign would have the traditional advantageof easy expansion of functional capability.However, most of these functions could alsobe carried out in main processor's soft-ware, which would make the communica-tions subsystem a simpler peripheral.

Software Considerations

So much for the basic hardware. Even ifthe communication subsystem has its owndedicated microprocessor, most of the net-work intelligence will be communicationsoperating system software. It is this softwarethat will determine what to do when theoperator creates a communications module.Without resorting to complicated notationaldevices, a communications module is simplya command or a message; and the messageis command(s) and data together. Com-mands could be oriented toward data trans-fer, such as, "Send the following data

to ." or "Do you have data named

?". Commands could control the

current operating status; eg: "Do not acceptdata for relay; monitor broadcast dataonly." or could reflect manual control,"Go to channel 22." Commands would besegregated into two types: internal andexternal. Internal commands would beintended for one's own system only, al-though standardization would certainlyoccur and be useful. External commands,on the other hand, would require standard-ization because they would be transmittedas part of a message and would controlthe handling of the data by other stations.

Besides handling explicit commands, theoperating system must have other intelli-gence. A primary consideration is thateach system should know its physicaland logical location in the network so thatappropriate relays can be worked out.If the initial experiments are carried out

over a limited area so that everyone candirectly communicate with everyone else,the physical map can be ignored. But even-tually the participants will become spreadout enough to require the software to deter-mine the best direction in which to initiatea relay. One aspect of having logical andphysical maps imbedded in the operatingsystem is that each system will have somesort of address associated with it so thatit can be accessed through the network.The address could be an encoding of theactual location (physical or logical) withinthe system, analogous to a phone numberor mailing address; or it could be an entrypoint to a table of relevant data, such as anamateur radio call sign. Since the logicalstructure of the network would be somesort of tree, an explicit address code couldbe a sequential list of tree branches for-matted into a numerical code.

The software will define how the chan-nels in the allocated spectrum are used.One technique that could be very success-ful is that of defining a special frequencyfor establishing initial contact betweentwo stations. After this communication hasbeen completed, the stations involved inthe particular transfer can use other fre-quencies. Having such a standardly defined"monitor channel" greatly simplifies thelogical structure of the network becauseit allows for open-ended participation byinterested systems. If such a channel wasnot used, the continuity of the networkmight very well depend on stations meet-ing on particular channels by prearrange-ment or assignment. Thus, all systems notactively using the network would configurethe communications subsystem to monitora single channel and interrupt the centralprocessor when the channel became active.Response delays could be assigned or de-termined dynamically so that not all moni-toring systems would simultaneously replyto a network request signal.

Once contact has been established asoftware algorithm must determine thenext action. Although present law requiresthe presence and control of a person operat-ing this radio station, the ultimate useful-ness of this sort of distributed networkwill depend on demonstrating the feasibilityof a completely computer controlled sys-tem. At this point in the control flow itwould be useful to discuss filtering, a typeof algorithm in which information abouta message is used to control the transferof the message. One type of filtering hasalready been discussed, ie: routing infor-mation. If there were other alternatives,a message would not be relayed through astation in the opposite direction from the

94

BYTE February 1978

'">... °%>».

■•v.

•^

'o,

7

VI & VII

1L '°>--

arereleased!

Volume VI

Yes and it still contains what was previouslyadvertised. A fully disk interactive businesspackage with A/Ft, 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

r

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 our disk interactive WordProcessing package(revision 0).

IjBgC $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.

VOLUME

I

$24.95

VOLUME

II

—

24.95

VOLUME

III

—

39.95

VOLUME

IV

—

9.95

VOLUME

V

—

9.95

G>

jr.. ,•"

R

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.

LL

SCIENTIFICRESEARCH

220-B KnollwoodKey Biscayne, FL 33149

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

AVAILABLE AT MOST COMPUTER STORES

^M

tftth. ^■fak

BankAmericaro

[master charge]

w»

honored

BYTE February 1978 95

Figure 2: Control flow ofa basic relayed transfer.This is an oversimplifica-tion of a two party trans-action. Station A wants tosend a packet of data tostation B. A more complexsituation exists in the casewhere A is sending data tosome s-ation Z which hasno direct contact pos-rible; then B might be thefirst link in a multiplestation relay of the data.

Station A initiates a network request on themonitor channel.

Available stations reply after a responsedelay. A valid response from station B locksthe monitor channel.

Stations A and B move to a suitable workchannel and transfer data from A to B.

I i

Data is processed and both stations returnto monitor mode.

destination. There are many other "filter-able" parameters that are dependent onmessage content. A specification of theuniverse of possible destinations would allowsome transfers to be designed as data for aspecific addressee, and thus of interestonly to that individual or to relaying sys-tems. On the other hand, data could also bedeclared to be of general interest, whichwould be an invitation for all those inter-ested to monitor the data transfer even ifit was necessary for only one system toassume responsibility for relaying theinformation.

Such "addressed" and "broadcast" mes-sage types are at the extremes of the filter-ing spectrum. As more and more datais transferred on the network, it will becomemore desirable to be selective about howthe information is handled. At first, it willbe very attractive to accomplish the filter-ing on the monitor channel, but this wouldbe very sensitive to the mean wait of timeof this frequency. Thus, as network useincreases, a hierarchy of filtering will de-velop. The monitor channel would supportfiltering based on the ability and desireof answering stations to handle the type

and quantity of the transfer involved, aswell as selectivity based on the priorityof the network request. This latter param-eter would allow emergency messages andcertain types of technical diagnostics (ashutdown command from the FCC, forexample) to receive maximum attention.Conversely, distribution and interest codeswould probably be best filtered off themonitor channel.

Interference Problems

Another problem that will develop ascommunications density increases is inter-ference between stations. This is not a trivialproblem because the control algorithms willnot be nearly as flexible in working aroundinterference or interpreting garbled data ashuman operators. However, several ap-proaches do seem feasible. The most basicmethod is simply to search and wait, witha very sensitive channel busy detector thatwould eliminate any possibility of inter-ference once a clear channel is located. An-other scheme would involve time multiplex-ing so that stations being inadvertentlyjammed would have a specific time to com-plain to their neighbors. A third possibility isto employ split frequency modes where eachstation transmits on a channel that seems tobe clear to it.

Thus far, aspects of the operating systemhave been described that enable systems toestablish contact and operate in a one-to-oneor one-to-many transfer mode. For a basicarchitecture this capability is adequate, withall systems involved in the transfer returningto a monitor mode when a particular inter-action has been completed. It is possible thatthis methodology would give good perform-ance, even with a very busy network, be-cause of the potentially low overhead ofchanging modes and reinitializing communi-cations through programmed control. How-ever, it may also be found to be very desirableto integrate and concatenate network opera-tions so that many data transfers can beachieved when stations establish contact.This is an area where empirical results wouldbe helpful in evaluating alternate approaches.

Limitations of Amateur Radio

All of what has been described thus farcan be done within the constraints ofamateur radio; however, such an implemen-tation would impose limitations that wouldonly be eliminated by a broad redefinitionof the regulations. The most desirable situa-tion would involve spectrum dedicated tothe network with a set of rules appropriateto the application. One of the most basicrequirements of this scheme is that multiplededicated frequencies beavailable exclusively

96

BYTE February 1978

Go tell it toyour computer for $189«

'*' *'ff,*J.,U f.

\ox\ 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 55 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 coreversion 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

$ 25

Model 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 February 1978 97

Even if the communica-tions subsystem (the net-work node of your homecomputer) has its owndedicated microprocessor,most of the network in-telligence will be in thecommunications operatingsystem software.

for network use. As has been demonstratedby 2 meter FM repeater usage, this is adefinite possibility if many enthusiasticindividuals seek to dedicate an underusedspectrum segment to a specific activity. Toassume that this can happen again may betoo optimistic, Portions of the 220 MHzband have already been proposed for a newhobbyist type application, sort of midwaybetween present Citizens' Band and amateurtypes of communication.

Another difficulty with amateur radioconstraints is the requirement that trans-missions be under the direct control of theoperator. One of the reasons that VHF wassuggested is because the propagation charac-teristics are relatively constant and couldallow 24 hour operation. An optimumscenario would involve minimum interactionby the system operator. There would be ashort period of operator activity in the eve-ning (or morning or whenever) to see whatdata had been transferred during the pre-vious day or two, evaluate new data acquisi-tions, and initiate messages. Since the systemwould be designed to support data withoutan explicit address, full-time operationwould allow individual systems to interactwith the network to find new data accordingto program. I would not expect that most ofthe data transfers would be initiated manuallywhen the network reached maturity. Thiswould be the major unique characteristic ofthe entire system. In a nondistributed net-work, costs would accrue on a per transferbasis, so it would be unlikely that individualswould pay to have their computers talk toeach other all day and all night. In this distri-buted system, the ongoing costs would bethose required to run the computer systemand a small radio, and would not be large,even if run intermittently 24 hours a day.System use with the constraint of manualoperation would probably not result in asynergistic multiprocessor environmenteither; watching a computer can becomeboring quickly. Compared to a timesharingsystem or other conventional data networks,the response time of this distributed systemwill be very slow, which would justify alonger time to get results. The slow speed ofthis network is not really a disadvantagebecause the application is quite differentthan timesharing, for example. The existenceof the distributed network assumes eachnode includes a local computer to handlereal time applications. It is the extent of thislocal processing capability that will give thenetwork its unique characteristics. Therefore,it is essential that the network be organizedso as to maximize these characteristics.

The hardware and software that has

already been described would not have to besubstantially modified to supporta dedicatedspectrum version of this network outsideamateur radio's province. The major changeswould be organizational and political withtechnical enhancements. The hardware modelthat has been designated the communica-tions subsystem would remain relativelyfixed although there would be greater func-tional standardization, and more installationswould include more highly evolved hardware.The commercial manufacture of peripheralcommunications hardware could certainly beexpected at this point. The software wouldundergo more changes, although it should bea clear objective from the beginning todesign the system, and particularly the soft-ware, so that it is modular and easily ex-pandable. New software features must beimplemented and shown to be reliable toallow the individual systems to do usefulwork without operator intervention. Auto-matic logging and remote control would betwo of these features. More effort than isnow obvious would probably have to be putinto completing decision trees, that is, ensur-ing a reasonable machine solution given anypossible set of input conditions. The initialforms of many algorithms in the amateurradio context would probably have anescape, such as, "After N operations, or afterT seconds, ring bell and wait for operatorcommand." Obviously, structures like thiswill have to be different outside amateurradio in another band. Hopefully, the evolu-tion of the software will happen within thenetwork itself, much more so than the hard-ware. The communications network is theideal medium for individuals to defineproblems, and develop and distribute thesolutions.

Regulatory Aspects

To distribute the solutions involves aregulatory change that would have significanteffect. While I am hopeful that individualswould freely distribute some software that iscreated within this network, particularlysoftware designed to enhance the operationof the network, I also hope that there willbe a way to allow economics. Because theresource of radio spectrum time is limited,the economic characteristics must be regu-lated to preserve the values of distributedcommunications. On the other hand, a com-mercial influence could have beneficialaspects if it were properly applied. The goalof introducing economics is positive: Indi-viduals working at home, using their ownequipment, could create and distributeproducts within a free market. The market,like the network, would have as its primary

98

BYTE February 1978

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

6800 Assembly Language

Programming8080A/8085 Assembly Language

Programming

Assembly language primers in the classicalsense, these books treat assembly languageas a means of programming a microcom-puter. Full of simple programming examples.#31003 (400 pages), 32003*

«*— -

8080R/8085

RSsemBiv ifinGUflGE PROGRflmmma

Lance R. Lcventhal

AN INTRODUCTION TO MICROCOMPUTERS

Volume 0 - The Beginner's Book

If you know nothing about computers, thenthis is the book with which to start. It tellswhat computers are all about and describestheir component parts. When you've readthis, you'll be ready for Volume I.#6001 (300 pages)

Volume I — Basic Concepts

The world's best selling computer text de-scribes those characteristics common to allmicroprocessors yet specific to none. Allhardware and programming concepts youwill ever need to know are explained at anelementary level.#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 effctive usage of microprocessorsin traditional digital applications.#4001, #5001, #7001 (300 pages each)

OSBORNE & ASSOCIATES, INC. • P.O. Box 2036 • Berkeley, California 94702 • DEPT. 15

6001 Volume 0 — The Beginner's Book

2001 Volume I — Basic Concepts

3001A Volume II — Some Real Products

4001 8080 Programming For Logic Design

5001 6800 Programming For Logic Design

7001 Z80 Programming For Logic Design

31003 8080A/8085 Assembly Language Programming

21002 Some Common BASIC Programs

22002 Payroll With Cost Accounting

PRICE

12.50

QTY

» 6-1/2%. SF Bay Area residents only

i 6%. California residents outside SF Bay Area

» Payment must be enclosed for orders of

10 books or less,i I have enclosed:

Qcheck fjmoney order TOTAL AMOUNT OF PURCHASE

TOTAL

Sales Tax (Calif, residents only)Shipping Charges

AMT

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)

□ $.50 per book, UPS (allow 10 days) in the U.S.

□ $1.50 per book, special rush shipment by air in the U.S.

Q $3.00 per book, foreign air mail

•This book is not yet available.

Please notify me when it is published:

D 23002 Accounts Payable and Accounts Receivable

□ 24002 General Ledger

D 32003 6800 Assembly Language Programming

Please send information on:D consignmentQ dealer discount□ foreign distributors

_F3j

Circle 90 on inquiry card.

BYTE February 1978

99

All of what is describedhere can be accomplishedwithin the constraints ofamateur radio; however,such an implementationwould impose limitationswhich could only beeliminated by a broad re-definition of the regu-lations and operatingpractices.

attribute its distributed characteristics. Cen-tralized capital would be minimized, andindividual creativity maximized.

A subsidiary regulatory characteristic thatwould necessarily be modified to allow theimplementation of economics is data secur-ity. Presently, there is no allowance forsecret communications on frequencies ac-cessible to the public, presumably to preventspies from using walkie-talkies for "cloakand dagger" schemes. The desirability ofsecure communications and the impossibilityof enforcing nonencoded computer conver-sations will force a change in this rule.

It should be pointed out that the FederalCommunications Commission has not beendogmatic about maintaining the regulatorystatus quo. Significant changes have occurredwhen it could be clearly demonstrated thatthe largest public interest would be servedby modifying the administration of the radiospectrum. The potential utility and benefitof distributed communications make thechanges much more plausible than theywould otherwise seem. Also, the networkcan only be considered a potential realityin conjunction with very recent technicalinnovations. Such a network was not a viablepossibility in 1970; now is the proper timeto begin its implementation.

What sort of applications for the networkmight occur if it achieved special regulatorystatus? While there are many possibilities, ageneral application I call "library building"provides a useful illustration. The goal ofthis mode of operation is that systems withmass storage capability would interact sothat each participant would share a subset ofthe file structure with the other participants.Because of the relatively large amounts ofdata involved, such exchanges would prob-ably not occur on a relayed basis; rather,individual files could be relayed later byspecific command. In order to participate inlibrary building, systems would maintaindirectories of several types of files, eg: thosemaintained and available, those files desired,keys to file types (for example, "games" or"8080 code"), both desired and not desired,and specific files that are not desired. Thisactivity would most frequently be dyadic(that is to say, they would be initializedwhen a pair of stations determined mutualinterest in the activity). Library work repre-sents a network activity that could best becarried on with little operator intervention.A typical command would be the equivalentof "get everything new and share anythingexcept files A, B and C." In fact, this couldbe a standard background command to beexecuted when operator initialized transfersbecome null. The operator would interactwith this function by requesting a regular

summary of files acquired and dispersed. Aprerequisite for this sort of file orientedactivity is that standards be developed forfile management within personal computing,so that transfers can be made with bothprocessor independence and device inde-pendence.

The unique characteristic of any com-puter is the ease with which it is given newcapability by feeding it new software. Thus,the distribution of software through thisinteractive network could rapidly result inan explosion of new functions. Once thesystem has been bootstrapped, growth couldbe faster and more meaningful in terms oflegitimate achievement than that exper-ienced in any other medium. Possible futurescenarios may give more perspective to theimplications of the network.

The system should be interfaced to othernetworks. Common carriers and cable tele-vision are present possibilities, and local laserlinks and direct communications throughsatellites are likely to occur in the future.Nondistributed data networks will be amajor feature of the cultural technology ofthe 1990s, providing many of the servicesalready discussed on the scale of televisiontoday. Amateur computing in distributednetworks could set trends and establishprecedents for the revolution to follow.

The hardware definitions for the networkcould evolve to allow the establishment ofnew categories of node stations with specialfunctions. One such function could be thedata concentrator, a large, fast processorwith several wide channels assigned to it.Large amounts of data could be burst trans-mitted over longer distances to condensemuch relay work. Other specialties, such ascomputational batch processor, game play-ing adversary, etc, will evolve as the applica-tions do.

Blue Sky

New hardware should have a profoundimpact on the network, especially when thatnew hardware is a data oriented version ofthe video disk. Since the video disk is ahighly cost effective way to reliably transferlarge amounts of data (on the order of 10' ®bits), it would be impractical to replicatethis sort of transfer over a communicationslink. Further, nondigital data would requireextra hardware, long transfer times andprohibitive bandwidths for even VHF radio.However, if we can assume the existence ofanother commercially oriented system forthe economical creation and distribution ofphysical disks, even at very low volumes,then there is a definite place for a communi-cations network to interact with these disks.To assume such a support system is not un-

100

BYTE February 1978

reasonable because of the extreme potentialfor commercial application. However, thegrowth of such a support system probablywould be accelerated by demand from thecomputer enthusiast market. The interactionof video disks with the network would occuras an interface to digitally controlled videodisk drives and disk program material withimbedded software. If two communicatingsystems were using identical or similar disks,control information could be exchangedthrough the network to access the commondata. With the huge amount of analogstorageavailable, organized as video, video stills oraudio, the imbedded software and transferredcontrol would provide much flexibilityapplied, for example, as educational or crea-tive utilities.

This aspect of video technology used inconjunction with the network would behelpful in supporting various sorts of syner-gistic multiple processor functions. In thismode, a number of systems would share achannel or channels via time multiplexing.A useful application, which has alreadyundergone experimentation via timesharing,is the computerized conversation, an on-going round table discussion that occurs out-side the constraints of real time and space.Eventually, as the systems become moresophisticated, this mode could supportmultiprocessor creative activities, such asmusic or video synthesis, as well as thecreation and use of educational materials.Each communicating processor would usesimilar creative software, and the individualswould supply data to produce a sort ofcomputer symphony.

One of the most interesting applicationsof the network capabilities under discussionwill be computer gaming on a very largescale. Games could be highly complex, in-volve months of real time, and have teams ofdozens or hundreds of systems. The networkwill be interfaced to the specialized largesystems that will be the amusements of thenext decades, a development made moreplausible by the many predictions of greaterleisure time in the future. The games willevolve to the level where individuals may bemore concerned with the construction of anoptimum game playing system, rather thanplaying the games directly. This level ofsophistication approaches practical artificialintelligence.

So What?

What I have attempted in this article is todemonstrate the implications of using existingtechnology to construct a new type of com-munications network that would radicallyeffect much within personal computing.

There are two difficulties: Radio spectrummust be allocated to the activity, andstandardization of the technical details mustbe achieved. I realize that this article has notgone too far with specific technicalities, andthat is partially because I felt that the intelli-gence of a distributed system should bedetermined by a number of individuals andnot predefined. Also, many aspects havebeen characterized that will involve a sub-stantial amount of technical detail, and I feltit would be more useful at this point todescribe alternatives, possibilities and generalapproaches rather than specific algorithms.

Always in the past, new technology hasbeen greeted with a "so what" attitude. Theultimate implication of the proposals in thisarticle is that the home computer can bepart of a dynamic ongoing process ratherthan an expensive toy that plays the latesttapes. This is not a negative comment about"play" applications; rather, it is a statementthat no technology is appropriate in thewrong environment. It is my contention thatas a tool the computer is pretty interesting,but no tool is of ultimate interest withoutreal wonk. It. is my hope that others will addto these ideas to make the personal computera necessary component of a useful system."

wire wrapping

fc5 center (ok)

-,cUJ HOBBY WRAPNE**' MODEL BW630

P/UNWRAP

wrapping

tool

Batteriesnot includedCOMPLETE WITH BITAND SLEEVE

DIP IC INSERTIONTOOL WITH PINSTRAIGHTENER,

MODELINS1416

$3.49'

•MIN. ORDER $25.. SHIPPING CHARGE $1. , N.Y. CITY-STATE RESIDENTS ADD TAX

OK MACHINE & TOOL CORPORATION

3455 CONNER ST., BRONX, N.Y. 10475(212) 994-6600 Telex 125091

Circle 88 on inquiry card.

BYTE February 1978 101

Continued from page 38

interlaced parallel fingers. The magnetic fieldstrength is concentrated in the tiny air gapbetween these fingers, near the surface ofthe rotor. The rotor itself is a permanentmagnet which has a series of poles mag-netized around its periphery. The number ofrotor poles equals the number of stator airgaps. It is the attraction and repulsionbetween these poles of the rotor and thestepping magnetic field of the stator thatcause the motor to rotate.

12VA

I

I

o ■

I

I

IIIII

o »

II

I

IIII

O '

I1

DRIVE SOURCE, FOR EXAMPLEAN 8255 WITH SOFTWARESETTING UP TIMING OF FIGURE 5b

W4W2

Wl W3

Figure 5a: Simple method for driving 4 phase stepper motors utilizing NPNtransistors and a positive power supply. For larger motors two transistorsconnected in parallel, a Darlington amplifier, may be required as shown forwinding 3 in this drawing. The values of the resistors and diodes will dependon the stepper motor being used and the drive source for each phase.

ON(I)

Wl OFF (0)—iON (I)

W2 OFF

(0)

ON (1)

W3 OFF

(0)

ON(I)

W4 OFF

(0)

CLOCKWISE MOTION

COUNTERCLOCKWISE MOTION

Figure 5b: Timing diagram for a 4 phase stepper motor has one winding beingenergized and one being de-energized at a time. One side of each winding isconducting current at any time. The energizing pattern is reversed to reversethe motor rotation.

Hardware Solution

An easy way to drive the coils is withNPN transistors as shown in figure 5. Twotransistors at a time are switched to groundto cause current to flow in the required di-rection. Note that windings 2 and 4 (w2 andw4) cause current to flow in opposite direc-tions of the same coil. A high power motormay require a Darlington drive, as shown inwinding 3. This is just two low power tran-sistors driving a high power unit to insurethat your 10 port will be able to drive themotor coil safely. A 1.0 mA output from an8255 10 port drives 20 mA with a singletransistor and 400 mA with a Darlington.Each transistor multiplies the current by afactor of 20. Two is the limit though, be-cause the guaranteed output voltage of the10 port is 1.5 V. Each transistor requires0.7 V, so two of them require a total of1.4 V. The windings must be energized inthe sequence shown in figure 5b. Notice thatat any given time one half of each coil isenergized.

Let's take a quick look at a circuit to pro-duce this coil driving sequence. The circuitshown in figure 6 provides the proper se-quence for a reversible drive. Speed is con-trolled by the frequency of the clock input.For coarse control the clock can be gener-ated by a 555 type oscillator. For veryaccurate control this clock can be generatedby a crystal oscillator. Switch SI, whichcould be an 10 line, controls the direction ofrotation. The frequency is more difficult toobtain directly. A digitally controlled oscilla-tor whose setting is controlled by a digital toanalog converter would provide very preciseand accurate speed control. No processortiming would be required. A typical exampleof such an oscillator is shown in figure 7.The number of input bits used (in this caseeight) determines the number of speedselections.

If the number of steps is more importantthan precise speed, the circuit of figure 8 canbe added to control the clock. The thumbswitch inputs could be 10 port lines. TheLOAD line transfers the selected count intothe counter. The START line sets the gate toa transmission mode. When the counterscount back down to zero, a pulse is emittedfrom the borrow line and resets the gate to ablocking condition. The selected number ofpulses has been counted out to the motordrive. The motor speed is still controlled bythe oscillator frequency.

Software Solution

If your only chore is to drive a singlemotor, then a microprocessor is probablynot necessary. But if several motions are

102 BYTE February 1978

We'd Like To Ask You A Question.

Have you considered the Central Data 16K RAMboard? If you haven't, you should. We've combinedquality engineering and low prices to come up with amemory board you'll like. Take a look at ourfeatures and find out for yourself.

• completely assembled, tested and burned in

• expandable to 32K

• S-100 compatible

• access time of 450ns

• invisible refresh—absolutely no wait states

• power dissipation one-half that of static RAM

• one-year warranty.

You can purchase a 16K RAM board with all thesefeatures for only $289. The cost of adding 16K toyour present Central Data 16K board is $200.A 32K RAM board, assembled, tested andburned-in, is only $475.

With all those features, don't you think youshould be considering ours?

Centraldata

PO Box 2484, Station AChampaign, IL 61820

Please send me the following:

□ 16K RAM board ($289)

□ 32K RAM board ($475)D additional information

1 enclose $ .

111. residents add sales tax.

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

Name

Address.

City

State

Zip_

Circle 17 on inquiry card.

BYTE February 1978 103

CLOCK

POWER CONNECTIONS

NUMBER

+ 5V

GND

ICIIC2

1413

75

W3

Figure 6: A pair of flip flops provide the memory and exclusive OR gates provide the steering to generate the drive patternsin a hardware solution to the stepper motor drive problem.

aoG>

VREF+ 5V

IOK fVA 1

POWER CONNECTIONS

NUMBER

TYPE

+ 5V

GND

+ I2V

-I2V

ICI

1408

ICZ

741

7

4

IC3

741

7

4

IC4

741

7

4

IC5

741

7

4

IC6

7476

5

13

Figure 7: This digitally controlled oscillator generates a frequency proportional to the integer output to the digital to analogconverter. The frequency can be used as the clock input of figure 6, providing a variable motor speed from a hardware driver.

104 BYTE February 1978

Monthly Magazines are great for in-depth articles anddetailed technical information -and we're not suggestingyou stop reading this one. What we are suggesting is thatwe can give you a lot that a magazine can't.

First, we're a newspaper - which means we cover a lot ofthings briefly, instead of a few things deeply.

Second, we're weekly - so you won't be saying "I wish Ihad known about that" when you hear someone talkingabout new micro hardware and software.

Third, we have a low-cost Microcomputing ClassifiedExchange, where you can find (or advertise) bargains on

equipment or softwareyou need.

• or look for people or information

Fourth, we're into all aspects of computers; so you don'thave to limit your information to micros. We cover everything from industry news to data processing to ethicalissues, as only a newspaper can.

Fifth, we'll send you 52 issues for about .«,i»™ — .

35(2 a week with a one-year sub-scription (less than half the news-stand price). Just use the form belowto start your subscription coming.It's a fast way to stay ahead.

N<« IBM Pnxewvi

F[u*li Out I'tl AS/o.Hut Amdahl SUml* I

Please send me COMPUTERWORLD for 1 year RATES: U.S. $18 Canada and PUAS $28 Europe & Middle East - $50 All Other Foreign $65

JJ

Check EnclosedAm Ex □ BA/V

isa

DMC

(MC Only List four digits above your name)

If charge we must havecardholder's signature .

Expiration.Date:

FirstInitial

MiddleInitial

S

rnane

1 1 1 1 1 1

i 1 1 1 1

YourTiiU-

1 l 1 1 1 1 1 l l 1 1 l

Company

Name

1 1 l 1

1 1 1 1

St'nd lc>Addrt'ss

1 1 l 1 1 l 1 1 1 1 1 1 1 1 1

1

1

1

1 1

("ilv

1 1 l 1 1 1 1 I 1 I 1 1 l 1 l

s««

1

ZipCode

1 1

1

Address shown is

Business

J Home

\ ] Check here if you do not wish to receivepromotional mail from Computerworld

CIRCULATION DEPT. H, 797 Washington Street. Newton. Mass. 02160

COMPUTERWORLD

THE NEWSWEEKLY FOR THE COMPUTER COMMUNITY

PLEASE CIRCLE 1 NUMBER IN EACH CATEGORY

BUSINESS/INDUSTRY

10 Manufacturer of Computer or DP Hardware/Peripherals

20 Manufacturer (other)

30 DP Service Bureau 'Software/Planning/Consulting

40 Public Utility/Communication Systems) Transportation50 Wnolesale'Retail Trade

60 Finance/Insurance/Real Estate

70 Mining 'Construction ' Petroleum / Refining

75 Business Service (except DP)

80 Eoucalion/ Medicine /Law

85 Government - Federal/State/Local

90 Printing/Publishing/ Other Communication Service

95 Other

TITLE'OCCUPATION/FUNCTION

11 President'Owner /Partner/General Manager

12 vP/Assistant VP

13 Treasuier /Controller/ Finance Officer

21 Director/Manager of Operation/Planning /

Administrative Service

22 Director/Manager/Supervisor DP

23 Systems Manager/Syslems Analyst

31 Manager/Supervisor Programming

32 Programmer' Methods Analyst

41 Application Engineer

42 Other Engineering

Mlg Sales RepreseniaiiveO'her Sales/MarketingConsultantLawyer/ AccountantLibrarian/Educator/StudentOlher

Circle 31 on inquiry card.

BYTE February 1978 105

Generated Pattern

(one

me per

clock state

W1

W2

W3 W4

1

0

0 1

Clockwise

1

0

1 0

1

, o

1

1 0

1 0

1

0 1

Counterclockwise

Table I: The pattern generated by the circuit of figure 6. The number I re-presents current flowing in a winding. Reversing the drive pattern will reversethe motor direction.

Clockwise

W3 W4 W1 W20 110

0 0 11

10 0 1

110 0

Counterclockwise

Table 2: If the drive patterns of table I are rearranged as shown, a pair ofrotating Is becomes apparent. This simplifies the generation of these patternsthrough software.

POWER CONNECTIONS

NUMBER

TYPE

+5V

GND

IC I

7400

14

7

IC 2

7474

4

I I

IC3

74I92

16

8

IC4

74I92

16

8

0

IC27474 S

+ 5V

J

-/ START

■ 5. IK

: (4)

GATEDCLOCK

-o

IC3A QA

74I92B QB

QC

QD

LOAD

BCD

THUMB

SWITCHES

+ 5V

5.1 K(4) ■

TO/ DISPLAY

DOWN UPLOADIC4A QA

74192B QB

QCQD

1

TODISPLAY

X

Figure 8: This circuit will generate a selected number of pulses when the startbutton is pushed. The thumb switches and the two push buttons could bereplaced with signals from an 10 port. If desired, a display may be added tothe circuit to indicate the number of counts left.

required and the speed and position of eachmust be controlled, then the microprocessorsaves considerable hardware. The entire jobcan be done inside the processor, with onlythe Darlington power drive transistors out-side. The problem of generating and keepingtrack of the pulse trains becomes a softwaretask. Let's first look at a routine to drive asingle motor.

If the winding drive pattern of table 1 isrearranged as in table 2, a rotating pattern of1s becomes apparent. Now direction ofrotation is controlled by the direction thatthe 1s are shifted (left or right). Speed iscontrolled by the rate at which these 1s areshifted and transferred to the motor. In-ternal counting can be used or externalinterrupt driven timing can be used. Since Ineeded other time events, I chose to use theTexas Instruments TMS 5501 for my experi-ments. This versatile chip provides five sepa-rate timers, eight input and eight outputlines, an external sense line and a bidirec-tional serial link. All these priorities aretaken care of, too. I will deal only with onetimer and merely assume its interrupt hasbeen vectored to my subroutine properly.

The basic scheme is to set the timer foran interval of from 64 /is to 16.32 ms andcount off the desired number of intervals.When the desired total time has elapsed, themotor drive pattern is rotated and output.The timing begins again. For higher speeds,above 60 steps per second, only one timerinterval is required between each step. Bychoosing the time interval and the numberof intervals, a wide range of motor speedsmay be selected. A flowchart is shown infigure 9, and the code is in listing 1. Themotor outputs are the four low order bits ofone port on an 8255 output port. Now let'slook at some of the details of the code.

First, of course, the status must be savedand the interrupt re-enabled. Next check thenumber of elapsed intervals. If it's down tozero then look at the number of stepsrequested. If there's more to go then decre-ment the steps counter and update memorylocation STEPS. Next update the number oftimer intervals (CONTR) because you'll haveto count them off again.

The timer is started and set by writing aword, in the range of decimal 0 to 255, tomemory.

In the hardware motor drive, each coildrive pattern is determined from the previ-ous pattern by the feedback from twooutputs. In this software version it is notpossible to read the latched output so the

706 BYTE February 1978

ifuTcnFflLC «5c magazine presents

Micro Business 78

CONSUMERISM

SHOWLwJ

MICRO BUSINESS 78™ will provide a series of marketingforums and exhibits to introduce the small independent busi-nessman to the new low-cost, high-power business microcom-puter that will reduce his company's costs, place him in a moreflexible marketplace and provide timely data information.

Emphasis will be on the small budget requirements for pur-chase of an in-house computer. The show will demonstrate thelatest systems, exhibiting complete hardware and softwarefrom small hand-held programmable calculators to full turn-keycomputers.

• Latest in Word Processors

• Newly-Released Business Software

• Low-Cost Text Editing Typewriters

• Modularized Computers

THE LOW COST, dependability, simplicity of operation, andcost savings advantages of microcomputers will be discussedin a series of lectures to remove the many misconceptions theaverage businessman may have about the microcomputertechnology. Lectures by such companies as IBM, CommodoreBusiness Machines and Radio Shack will present the

DATE: MARCH 17,18, 19, 1978

PLACE: PASADENA

CONFERENCECENTER

PASADENA, CALIFORNIA

businessman with the latest information about application,service and investment.

Author Adam Osborne will discuss business software.

OTHER LECTURES on the program include:

• Small Business Computing Systems

• Evaluating Your Business Computer Needs

• Software Companies

• The Mainframe Companies & The Small Computer

• The Small Business Computer Company

• Computer Stores and the Small Business System

• Retail Mass Marketing of Microcomputers

Sponsored by: INTERFACE AGE Magazine

EXHIBITORS: PLACE YOUR RESERVATION NOW!

Produced & Managed by:

Show Company International

8687 Melrose Avenue

Los Angeles, California 90069

(213)659-2050

Ed Tavetian

Circle 69 on inquiry card.

BYTE February 1978 107

f MOTOR J

SAVE STATUS

ENABLEINTERRUPT

GET MOTOR SPEED

ITERATIONS AND

DECREMENT

Figure 9: Flowchart forthe single motor drive rou-tine of listing 7.

RELOAD MOTOR TIMER

GET NUMBER OF

STEPS LEFT TO

BE STEPPED

STEPS:=STEPS-I

LOAD NEW MOTOR

TIMER, MOTOR DIRECTION

AND PATTERN ADDRESS

ROTATE PATTERN LEFT

ROTATE PATTERN RIGHT

PATTERN:=PATTERN+ 01 H

PATTERNS PATTERN + BOH

RETURN MOTOR DRIVEPATTERN TO MEMORY

MASK OUT 4 HIGHORDER BITS

OUTPUT PATTERN

RESTORE STATUS

( RETURN J

108 BYTE February l'J78

last pattern is maintained in memory loca-tion PHASE. I chose to use a full eight bitsto store the 4 bit drive pattern and repeatedthe four bits in the high nybble. Then theoverflow on rotate could be sensed in thecarry bit. I used RAL and RAR for rotating,sensed overflow in the carry bit, and added acorrection of either 01 H 80H respectively. Ilearned later that if I used RRC and RLC,rotate right or left with carry, then this wastaken care of by the processor. After rota-tion the new drive pattern must be storedback in memory to be available during thenext cycle. The high nybble is then maskedout. After the four high order bits aremasked out the motor drive pattern can beoutput via the 8255 output port. All thatremains is to return the status and registersto their former condition and then return tothe main line program to await anotherinterrupt. Four of the TMS 5501 output

lines could have been used, eliminating theneed for another output chip.

A word about stepper motor speed is inorder here. With a light load, the motor willrespond and follow commands at speeds ofup to 250 to 300 steps per second. With africtional load this maximum speed willreduce linearly in proportion to the friction.An inertial load, such as a flywheel, will notreduce the maximum speed. However, withan inertial load the speed must be pro-grammed over several steps from slow tofast. If the maximum speed is not ap-proached gradually, the electrical steppingmoves faster than the load can. The motorwill just sit and stutter. A check with anoscilloscope would show the proper patternsequence occurring. Use of a more complexprogram with actual motor speed feedingback into it via hardware could help solvethis problem.

J MOTOR COIL

DRIVE. INTERRUPT DRIVEN. INTERV

MOTOR 1

PUSH PSWPUSH BPUSH H

I SAVE STACK

EI

LXI

H.CONTR

MOV

A.M

I GET COUNT REMAINING

DCR

A

1 DECREMENT COUNT

MOV

M.A

JZ MDCR

;CHECK STEPS IF CONTR ZERO

LXI

H.INTVL

J IF NOT

MOV

A.M

IGET INTERVAL

STA

TIMER

1AND RESET INTERVAL

JMP

MDO.NE

MDCRI

LXI

H.STEPS

MOV

A.M

)GET STEPS

AHA

A

1SET FLAGS

JZ MDONE

IEXIT IF DONE

DCR

A

I DECREMENT STEPS

MOV

M.A

1 STORE NEW STEPS

LXI

H.COUNT

MOV

A.M

LXI

H.CONTR

MOV

M.A

IRESTORE ORIGINAL CONTR

LXI

H.INTVL

MOV

A.M

LXI

H.TIMR

1 RESET INTERVAL TIMER

MOV

M.A

LXI

H.DIR

MOV

A.M

IGET DIRECTION

LXI

H.PHASE

STC

CMC

(CLEAR CARRY

AMA

A

ISET FLAGS

JP ecu

CWt

MOVRALJNC

A.MHDR

IGET MOTOR DRIVE PATTERN

ORI

00000001a

JCORRECT FOR OVERFLOW

JMP

MDR

ccvi

MOVRAR

JNC

A.MMDR

ORI

I0000OO0B

J CORRECT FOR OVERFLOW

MDRt

MOV

M.A

AMI

OOOOl11 IB

OUT

OUTMDR

;OUTPUT SIGNAL TO MOTOR

HDONEl

POPPOPPOPRET

H

BPSW

COUNT

NUMBER OF

TIMER INTERVALS TOTAL

CONTR

NUMBER OF

TIMER INTERVALS REMAINING

INTVL

TIMER INTERVALS 0-855

STEPS

NUMBER OF

STEPS TO BE MOVED

DIB

MOTOR DIRECTION

PHASE

MOTOR DRIVE PATTERN

TIMR

TIMER ADDRESS

IN MEMORY SPACE

OUTMDR

MOTOR OUTPUT

ADDRESS IN 10 SPACE

MOTOR I

SAME CIRCUIT AS/ MOTOR I.

Listing 7: An 8080 assembly language pro-gram for driving a single motor.

Figure 10: By adding a pair of inverters to each motor drive, four motors canbe driven from one 8 bit output port.

UYTF. February l'(78

109

Table 3. A mismatch exists between the desired pattern of table 3b and thegenerated binary count of table 3a.

LXI H.0UT1MOV CMMVI B.OBOHLXI H.PHAS1CALL MOTORSJZ LOAD1MV! A.OFFHSTA TIMRSLXI H.HSTRTJMP LOOP I

I GET OUTPUT

;LOAD CU> 100 STEPS

;SELECT MOTOR Ml

)motor step subroutine;exit if dome stepping

JELSE

IRESTART motor timer

;VAIT FOR MOTOR

Listing 2: An 8080 assembly language mainline program for driving severalstepper motors.

After getting a motor to turn on com-mand, the next challenge is addressing sev-eral motors while trying to conserve 10 lines.I did this by changing the method ofgenerating the drive pattern. In the firstprogram the entire pattern was stored,rotated and output to the motor. In thesecond program a different pattern wasstored, one that would allow two outputwires to control each motor. It was neces-sary to add a pair of 7404 inverters outsidethe processor as in figure 10. At first itappeared that two bits could be incrementedinside the processor to generate the outputsignals, but the sequence was wrong asillustrated in table 3b. The problem wassolved by storing the four pairs of bits in aregister.

Two memory locations are reserved foreach motor. The first, PHAS1, stores therotating bit pattern required to drive themotor. Each time a motor is to be stepped,its pattern will be rotated and output. Thisregister always indicates the last pattern

FUNDAMENTALS OF ROBOTS AND MECHANISMS

What is Torque?

Torque is the force which produces, ortends to produce, motion about an axisof rotation in a mechanical system. It is ameasure of the power of a mechanical out-put device such as a stepper motor or otherdevice. A specification of the available tor-que from such an actuator under variouscircumstances is an essential part of de-signing it Into a mechanical system, just as

ROTATION

current ratings are crucial to power semi-conductor drive design. A torque isspecified in units which reflect its originas a magnitude of force available at somedistance from an axis of rotation. In theEnglish system of measurement, a typicalunit is "ounce-inch;" I oz-in of torquemeans that at a distance I inch from theaxis, a force of 1 ounce would be exerted.In the metric system, a typical unit mightbe dyne-centimeter (CGS) or newton-meter(MKS) where the metric units of force(dyne or newton) and distance (centimeteror meter) are used. . .CH

If force F is measured at point A (a distance xfrom center of rotation B), the torque is given by

T = F.x

Similarly, if a stepper motor has a rated torque ofT, it can exert a force of

F = T/xat distance x from its center of rotation.

110 BYTE February 1978

output. The second register, MASK1, con-tains a mask. For example: mask OC hexa-decimal (00001100 binary) is for the motorattached to output wires 2 and 3, motor 2 infigure 10.

The subroutine must be entered withcertain preliminaries taken care of. The HLregister pair points to the drive pattern ofthe motor to be driven. Register B containsthe direction of rotation. If the most signifi-cant bit is 0 the rotation is counterclock-wise; if the most significant bit is 1 therotation is clockwise. Register B also con-tains the number of steps to be made. TheTIMS 5501 was again used as a timer. Onemotor must complete its steps before an-other starts.

The flowchart for this second motor driveroutine (listing 3) is shown in figure 11. Theregisters and two memory locations areshown in figure 12 as they look before andafter a pass through the subroutine. Remem-ber that bits 0 and 1 of register C are drivingthe motor of interest. Register D is atemporary storage location and bits 0 and 1of register D reflect the change in drivepattern. The most significant bit of registerB is a 1 indicating clockwise rotation. Thelower order bits are the steps count, and aredecremented by 1 each pass. The mostsignificant bit is masked out in the lastoperation. This sets up a zero test and jumpupon return to the mainline program, if thecount has been completed.

Now let's look at how the subroutine iscalled. Mainline program HOME1, shown in

Figure 11: The flowchart for the motor drive routine of listing 3.

GET PHASE

ROTATE RIGHT TWICE

1 STEPPER MOTOR DRIVE ROUTINE■CALLED FROM MAIN LINE PROGRAM HOME1

MOTORS

MOV

A>B

ANA

A

I SET FLAGS

JM

CW

DETERMINE DIRECTION

MOV

A.M

IGET PHASE

RRC

RRC

J ROTATE

JMP

MTRJP

CVI

MOVRLC

A.M

)GET PHASE

RLC

1 ROTATE

MTRJPl

MOV

M,ft

iPUT BACK

I NX

H

IPOINT TO MOTOR MASK

ANA

M

JMASK OFF MOTOR

MOV

D.A

)TEMPORARY STORAGE

MOV

A.M

IGET MASK

CMA

1 COMPLEMENT MASK

ANA

C

JGET OUTPUT

ORA

D

1 COMBINE NEV AND OLD

MOV

C.A

J REPLACE IN MEMORY

LXI

H.OUTI

MOV

N.A

STA

MTROT

>START MOTOR

DCR

B

1 DECREMENT COUNTER

MOV

A.B

ANI

7FH

JMASK OUT DIRECTION

RET

)RETURN TO MAIN PROGRAM

( MOTOR 2 J

GET STEPS REMAININGFROM B REGISTER

SET FLAGS

YES

RETURN PHASE TOMEMORY

POINT HL REGISTERSTO MASK

GET MASK AND SAVE

SELECTED BITS IN

D REGISTER

COMPLEMENT THEMASK

C:=XOR C.MASK

UPDATE C REGISTERWITH NEW MOTOR DRIVE

OUTPUT TO MOTOR

STEPS COUNT: =STEPS COUNT-I

MASK MOST

SIGNIFICANT BIT

DIRECTION INDICATOR

( RETURN )

GET PHASE

ROTATE LEFT TWICE

Listing 3: This is the 8080 assembly listing of a second motor routine. Thisone is called by mainline routine HOME!. Note that the zero flag is carriedback to mainline program to indicate steps done.

BYTE February 1978 111

Before

After

Figure 12: The status ofthe HL, DE and BC regis-ter pairs before and after acall to the MOTORroutine.

Phase 1Mask 1

Phase 100 00 00 1110 00 01 11

Address01 01 10 11

L

H

E

D

C

B

10 00 01 1100 00 00 11

listing 2, addresses OUT1, the motor drivestorage, and puts it in register C. Literalvalue 0B0 hexadecimal is moved to registerB indicating 100 steps clockwise. The HLregister pair is pointed to PHAS'I whichselects motor 1, and then MOTOR2 is called.When the MOTOR2 routine returns a jumpon zero test, J2 jumps over the looping tocontinue the next part of the main program.If 100 steps have not occurred, the zero flagwill not be set in MOTOR2, and the programfalls through the test. The motor timer isthen restarted. The HL register pair is set toHSTRT and the program loops, waiting fortime-out. When time-out occurs, a PCHLinstruction vectors the program to HSTRTand another MOTOR2 call.

If you had the time, some extra bytes andseveral stepper motors, what might youaccomplish? The first rotation on commandis pretty exciting, but not to anyone butyou. There are some useful applications rightnext to your computer. An XY plottermight be useful in your graphics work. Ifyou aren't handy with mechanics you mightmodify the paper drive of an analog recorderto provide bidirectional stepper control. Ananalog to digital converter to drive the penand a relay to lift the pen between pointswill give you a reasonable alternative to anexpensive plotter.

Other hobbies just cry out with applica-tions. The model railroad buff can controlthe neatest turntable. A stepper motor in ayard engine would give ultra low speed. Amachinist might combine a couple of beefystepper motors and a lathe to create a simplenumerically controlled machine tool. One ofthe most interesting applications, robots,takes on added dimensions with precisecontrol possible. A variation of this might beto program the strings of a puppet. (Thatone is going to need lots of program stor-age.) The radio amateur can automate his orher existing receiver by coupling to theturning knob. Any place where severalmotions have to be synchronized, steppermotors can be the solution."

Out 1oo oo oo 10

10 00 01 10

Address

01 01 10 10

Phase 1Mask 1

00 01 11 1000 00 00 11

BIBLIOGRAPHY

1. Intel Corporation, 8080 Microcomputer Sys-tems User's Manual, 1975.

2. Bober, Robert E, "Stepperdrive Circuit Simpli-fies Printer Control," EDN, April 5 1976,page 114.

3. Helfrick, Albert, "8 bit Frequency SourceSuited for Microprocessor Control," EDN, Sep-tember 20 1976, page 116.

4. Webster, John and Simpson, William, SoftwareDesign for Microprocessors, Texas InstrumentsLearning Center, 1976.

5. Baker, Robert, "Put the 'Do Everything' Chipin Your Next Design," BYTE, July 1976, page40.

6. Shogren, Carl, "The AC/PM Motor: A DriveWhose Time Has Come," Machine Design, June27 1974, page 83.

7. Hollis, Ralph, "Newt: A Mobile CognitiveRobot," BYTE, June 1977, page 36 (steppermotor discussion).

8. Guilder, J, "Focus on Stepping Motors," Elect-ronic Design, October 25 1977, page 48 (anexcellent tutorial).

Where the little guy can get a stepper motor:

Sigma Instruments IncBraintree MA 0218418-1408 $22

18-2013 $23

Minimum billing is $35.

North American Philips Controls Corporation

Cheshire Industrial Park

Cheshire CT 06410

Empire Electrical Company

54 Mystic Av

Medford MA 02155

K82201 $17

K82401 $17.85

American Design Components39 Lispenard StNew York NY 10013Berger-Lahr CorporationPeterborough RdJaffrey NH 03452

112

BYTE February 1978

SYNCHRO-SOUND

ENTERPRISES, INC.I

Everything you need inLEAR SIEGLER ADM 3A TERMINAL

Kit $739.95

Assembled

849.95

small computer systems!rjT^jB CENTRONICS 779 PRINTER

$1099.00

ADM 1A TERMINAL

Assembled

$1398.00

ADM 2A TERMINAL

Assembled $1895.00

HAZELTINE 1500VIDEO TERMINAL

Assembled $1149.00 jKit also available

MODULAR 1

INTELLIGENT

TERMINAL

703SERIAL PRINTER

$2395.00

761 PRINTER

KSR with Keyboard $1695.00

Assembled

$1659.00

IMSAI 8080 MICROCOMPUTER

IMSAI 8080

•> j

as IBHfe

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 1053MOD 2 1799.00

IMSAI AP44-44 Col. Printer Kit 329.00

TDL Xitan Alpha 1 Computer Kit 699.00

ICOM Model FD 3712 2795.00

OKIDATA MODEL 110 LINE PRINTER

Friction Feed

$1149.00

Tractor Feed

$1279.00

RS232C Serial Interface

$260.00

MODEL 22 LINE PRINTER

Tractor Feed $2249.00

TELETYPE MODEL43 PRINTER

$1299.00

IMSAI PC S-80/15 8085COMPUTER

$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 ENTERPRISES 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 BankAmericard • MasterCharge

Circle 95 on inquiry card.

BYTE February 1978 113

A Minifloppy Interface

David AllenElectronics Consultant1317 Central AvKansas City KS 66102

Floppy disk drives have been around forsome years now; the basic technology ofsuch drives is well proven and the drivedesigns seem reliable as mass storage forsmall systems. Having used the standardsize floppy for some time, my first reactionto the introduction of the "minifloppy"was to view it as a cute gimmick, since theminifloppy's price had not then dropped inproportion to its performance.

However, after using the minifloppy fora while and having seen the inevitabledropping in price as production expands, Iam becoming much more enthusiastic. Thereduction in bit rate will make it easier tointerface, and the reduction in bit densityshould make it slightly more reliable insmall user environments. Its performance,while reduced, is quite adequate for manyapplications, especially when its price istaken into account. [One personal comput-ing manufacturer, for instance, markets adual drive peripheral for their systems ata total of $1000, which is hard to find ina dual drive standard size floppy disk. . .CH] Its small size and relaxed specificationsallow room for more cost cutting than thefull-size design. Competitive technologieslike bubble memories are perhaps severalyears away from equivalent costs per bit.It is thus quite appropriate to give seriousconsideration to the small floppy.

Shugart was first to arrive on the marketwith a small floppy, but is no longer alonethere. Wangco has a competing drive inproduction. BASF has a drive which wasdisplayed at the 1977 NCC show in Dallas;it is reportedly just entering production asof fourth quarter 1977. Micro PeripheralsInc has a minifloppy drive scheduled forproduction at this time. A notable featureof the drive is its use of a band driven headpositioning mechanism designed to improvetrack-to-track access time by a factor of fiveor six. Pertec has also announced a drive,and Radio Shack is reported to be workingon a low cost version for use with theirZ-80 based microcomputer system.

Fortunately, Shugart's interface con-figuration has been copied in the Wangco

and BASF drives right down to the use ofthe same connectors and pin assignments.This makes Shugart's interface a defactostandard, as well as a great improvementover the diversity experienced in full-sizefloppies. I hope the present plug compati-bility will continue.

Wangco and others are advocating anANSI (American National Standards Insti-tute) standard specification that includes40 tracks (as opposed to Shugart's current35 track maximum). Both the Wangco andBASF drives write on 40 tracks. The first35 tracks are positioned in the same wayas the tracks in Shugart's drive; the lastfive tracks were located closer to the centerof the diskette than Shugart apparentlythought safe. If the 40 track approach doesget ANSI acceptance, though, it is reason-able to expect Shugart to make a 40 trackversion.

How Small Floppies Differfrom Full-size Units

Several significant differences exist in theinterfacing required for the small floppiesversus the large floppies. One profounddifference is that the former are all poweredby DC motors. (AC motors are being investi-gated as an option by one manufacturer.)This allows the motor to be powered downduring long periods of nonusage. The powersaving is such that battery powered opera-tion is realistic; the fully powered Shugartdrive uses only 15 W total (18 in Wangco's),and a sector can be read in less than twoseconds of motor operation. This suggestsusage in data logging applications, tradi-tionally the province of cassette drives. Morenoticeable to a large floppy user is the factthat the Shugart minifloppy stays almoststone cold during operation. (My Memorex651 got so hot recently due to the combinedheating of the step motor and hysteresissynchronous drive motor that the pressurepad adhesive decomposed into a stickygoo, allowing the pressure pad to slide offcenter and causing the first hard errors sincethe 651 large floppy was interfaced to my

114

BYTE February 1978

THE SSB HSOFLOPPY DISCOUNT

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 BASICinterpreter with diskfile handling capability. Bythe way, our DOS now easily handles true randomaccess files as well as sequential. Also, we have asuperfast BASIC compilerfor 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. Betteryet, askusforthe nameof the computer store nearest you that carries ourcomplete line of computer products.

P.O. Box 2017, Hollywood, CA 90028 • (2 1 3 ) 462-5652

Circle 105 on inquiry card.

BYTE February 1978 115

Figure 1: The author's minifloppy interface circuit. This circuit uses a 4 K bit buffer memory, IC10, as a key element of itsoperation. For output, this memory is addressed one bit at a time by writing to addresses 9000 to 9FFF of memory addressspace thru counters IC1, IC5 and IC11. Bit 0 (low order) of the word written to memory is stored in the appropriate bit. For

tft Ul D

lo'l

sA

L

At As

LU3 1-

o<

t— - u ="

' uj O

too

&

I

q o m < w

o O O O -1

?«-)

^

CO Iro |<j-

■£<-^/w-<i ^<—«M—ii 'Jo-^vw-li

1

0 0000

0000 00 00 0 0

A2

0 0

0

10 tol

— W <*■ ^

I 4)

=>*

Sl

o°°l

0 0

c^

-©

•a- in

5<V

rS

0

CO

-©-©

-©

-©

000000 000

-©

-0

00

KirSo-

_ — t\J< < ,Q,

116

BYTE February 1978

input, data from the disk drive is serially stored into the memory with the clock derived from the input signal advancing theaddress counter. Then after a physical read operation has defined the contents of the 4 K memory part, it can be read by load-ing and testing bit I of each location from address 9000 to 9FFF.

AAAA

AAAA

AAAA

< l-Q0

a. q < o

CSi — CM tO

BYTE February 1978 117

6800 developmental system.) The Wangco82 warms noticeably during continuousoperation (probably due to its slightlylarger step motor), but this is not objection-able. The lack of heat should contributesignificantly to long-term reliability in thesmall floppies.

Fortunately, the DC motor chosen foruse by both Shugart and Wangco is not acheap cassette recorder motor. A tachom-eter, integral to the motor, provides feed-back to hold the speed constant. Increasingthe motor's load (eg: thumb on flywheel)causes no appreciable change in motor speedas perceived on a strobe disk, and no dataerrors. The service life of the motor isquoted as 8000 hours, an order of magni-tude better than most cassette recordertypes. At two seconds or less per datatransfer, the motor should last almostindefinitely.

The motor is turned on by introducinga TTL zero (low) logic level on one of theinterface lines. Shugart and Wangco bothrecommend a one second delay for themotor to come up to speed followingturn on, and Shugart suggests a one secondoneshot to signal readiness for data move-ment. I provide this delay in software wherenecessary. Since many of my operations aremanual (ie: keyboard entered disk operatingsystem commands), inherent delay in usagemasks the motor's startup latency.

Power for the unit is simplified by thelack of any negative voltage. Only +12 VDCat approximately 1 A and +5 VDC at ap-proximately 0.5 A are required.

Spiral Steps

The Shugart and BASF drives differ fromfull-size floppy units by not using a leadscrew to drive the head carriage assembly.Shugart uses a disk with a spiral groove,rotated by a step motor; the head carriagerides in the groove on a single ball bearing.This can be the source of confusing prob-lems during improper operation, since nostops are provided at the track 00 and track35 points. The head carriage is free to runout of the groove somewhat like the needleon an old record player when the song isover. Once the groove is lost, numerousstep pulses must be issued until the grooveis again found and track 00 accessed. Duringproper operation, however, this confusionshould never arise.

The small floppies use a track 00 switchto indicate head position over the outermosttrack, as do the full-size floppies. Exceptfor the "lost groove" problem describedabove and timing of the step pulses, hard-ware and software techniques used on full-

size floppies are directly applicable to thesmall floppies.

Recognition of Sectors

In the Memorex units, the INDEX pulseis already separated from the SECTORpulse. This is not the case with small floppies.It is a simple matter to add a oneshot andlogic gates to extract the INDEX pulse fromthe combined pulse train, but this circuitmust be provided by the user.

The number of sectors for hard sectoredsystems may be either ten per track or 18per track and is solely a function of thediskette used.

Speed

The minifloppy data transfer rate is halfthat of most large floppies. This is due tothe reduced bit density recorded on themedia, and to the reduced diskette rotationspeed (300 rpm). The extra delay due toincreased rotational latency is quite notice-able to the user.

Extracing the Data

Similar to the SECTOR and INDEXpulse situation above, the user of the smallfloppy must also separate the data which isread from the clock pulses. The Memorexand other full-size drives provide these twosignals individually, but the small floppiesdon't.

The circuit which the user must provideto accomplish this separation may be elegantor simple, depending on the user's needsand tastes. Shugart complicates the dataseparation problem by discussing bit posi-tion shifts (in time) due to adjacent onesor zeros. They recommend different timewindows depending on whether the previousbit cell was 1 or 0. This technique is in-tended to provide greater reliability. I didnot use either of Shugart's recommendedcircuits; I also ignored the bit shift problem.The circuit used (see figure 2) has a single6 /is oneshot and defines the data windowsomewhat differently. (More on this later.)The reliability of this circuit is such that thedrive never makes hard errors and rarely(less than one per day) makes soft errors.In double density operation the moreelegant approach to the problem of dataseparation would undoubtedly be needed.Fortunately, the low bit density of the smallfloppy allows me to take a relatively laxapproach.

Shugart versus Wangco

Both the Shugart and Wangco mini-floppies pass data with excellent reliability.

118

BYTE February 1978

* «

32K/16K StaticMemory

S-100 BUS COMPATIBLESuch as ALTAIR™, IMSAI, SOL,POLY, XITAN, etc.

Featuring:

1. Capacity: 32768 Bytes for model 3200

16384 Bytes for model 1600

2. Addressing: Each 4k block separately addressableon any 4k boundary. Allows memory to be placed at thetop, bottom, and anywhere in between.

This feature overcomes the problem of working withsoftware that requires memory in different places.

3. Wait states: none

4. Speed: under 500 ns.

5. FULLY STATIC: no clocking, no refreshing.

6. Memory chips: High quality/reliability 4kx1, 18 pinstatic manufactured by Texas Instruments and secondsourced by others.

7. Fully socketed: even the 16k board contains sock-ets for all 32k of memory.

8. Fully assembled, tested, and burned in.

9. Lower power than equivalent capacity of low power2102 type memory. And only one slot!

10. DMA Compatible

11. Fully Buffered: All address and data lines bufferedwith powerful state of the art buffers equipped withSchmitt triggers on their inputs.

12. Special Thermal Design: Each 4k of memory has aseparate regulator thereby distributing the heatdissipation over 8 separate regulators. They are placedat the top of board to allow the most efficient heatdissipation possible.

Call:(215) 779-3677 orUse the coupon to order

Assembled, Tested Model 3200: 32k $999.

and Burned in: Model 1600*: 16k $599.

•assembled with sockets for 32k but tested and soldwith only 16k.

16k Expansion Kit: Model 1601: 16k of memory to up-date the Model 1600 to a model 3200. $499.

Circle 121 on inquiry card.

Trace Electronics new, flexibly featured, state of theart, 32k STATIC RAM comes fully assembled, thor-oughly tested, burned in and warranted for only $999.For further information and fastest service call 215-

779-3677.

v_________________——————___————————-^

I would like to order the following:

O Model 3200 32k Static Memory. Assembled andtested S999.

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

G Model 1601 16k expansion kit for above. $499.

My address is:Name

Address

City

Phone _

-Zip.

I

Enclosed is a check or money order for:

Please charge the item(s) I've marked above to mycredit card.

I I Visa Card No. __

I Mastercharge Exp. date .

4 digits above name(Mastercharge only) _Signature

TRACE

Note: Address for credit card orders must be the sameas that on file with the credit card company.

Mail this coupon to: Trace Electronics IncorporatedP.O. Box 3247 Hampden Station,Reading, Pennsylvania 19604

BYTE February 1978 119

Note: Since this articlewas written, author Allennotes that both Shugartand Wangco have re-designed portions of theprinted circuit boards andmounting hardware. Thedescriptions on this pageare based on early modelsof the designs.

Significant differences do exist between theunits, but they are largely mechanical; itis difficult to fault either unit for its electri-cal performance, in single density operationat least.

The most obvious difference is Wangco'suse of a conventional lead screw for headpositioning, as noted earlier. This makesthe Wangco drive look like a miniaturizedversion of a standard drive.

On Wangco's drive, all parts, including themotor controller, are mounted on a singleprinted circuit board. Wangco uses theFairchild 7391 motor controller integratedcircuit, while Shugart employs its ownmotor controller using a 741 op amp plusdiscrete components on a separate printedcircuit board. Both Wangco and Shugartuse the same Buehler DC motor andtachometer.

Wangco has a second set of index andwrite protect LEDs already installed in thedrive that allow recording on the flip side ofstandard diskettes. Shugart uses a micro-switch to sense write protection, and thereappears to be no provision for addition ofeither a second switch or second sector LED.

Wangco's printed circuit board is an-chored by four standard 4-40 machinescrews. The body of Wangco's power con-nector is mounted parallel to the plane ofthe printed circuit board facing rearwardand anchored to the board with a nylontie wrap. On the Shugart drive, the mainboard is gripped loosely at the edges by fourspring clips which are held in place byTinnerman style nuts over plastic posts.The board is susceptible to being pulledloose from the frame. Shugart's powerconnector is mounted at right angles to theboard with the lower rear corner facinginward. If the power cable is given a good

IC257404

H

200pF5%

h

DATA/CLOC(FROM DRIVE

KO-^>>i

DATA LATCHOUTPUT

CLOCK

EXTRACTOR

CIRCUIT

DATA BIT

LATCH

CIRCUIT

CR/C

u

IC27CJ7474

-f~> SEPCLOCK

'-pX-^x

IC27b7474

-Q> DATA

Figure 2: A circuit for separating data pulses from clock pulses In the author's system. Data and clock pulses arrive mixed to-gether at the input to IC25a. IC26, a oneshot, provides an output pulse to the data bit latch, IC27a, in such a manner that onlyclock pulses are outputted at SEPCLOCK. The timing diagram shows the effect of intentional propagation delays (exaggeratedhere for purposes of illustration). The delayed DATA/CLOCK signal clocks data flip flop IC27b off during clock pulses becausethe clocking occurs during the time of the delayed SEPCLOCK low level.

120 BYTE February 1978

Everything you've ever

wanted to know aboutmicrocomputers in

ONE complete book

for only $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.

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.

TS '

vain 11 ii

IHITIEnl

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 COMPUTERCONSULTING INC.

Post Office Box 133 PP STNDept. B

Milford, CT 06460

BITS

70 Main StreetPeterborough, NH03458

•*"*»

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 type 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!

Circle 102 on inquiry card.

BYTE February 1978 121

Table 1: Power wiringtable for figures I and 2.

IC

Number

Type

+5 VPin

GndPin

IC1

74177

14

7

IC2

7474

14

7

IC3

7474

14

7

1C4

74125

14

7

IC5

74177

14

7

IC6

74125

14

7

IC7

74125

14

7

IC8

74221

16

8

IC9

7404

14

7

IC10

TMS-4044-45

18

9

IC11

74177

14

7

IC12

7442

16

8

IC13

7430

14

7

IC14

7474

14

7

IC15

7408

14

7

IC16

7408

14

7

IC17

74175

16

8

IC18

7400

14

7

IC19

7404

14

7

IC20

74177

14

7

IC21

7420

14

7

IC22

7404

14

7

IC23

7400

14

7

IC24

74177

14

7

IC25

7404

14

7

IC26

74122

14

7

IC27

7474

14

7

jerk, the board could be dismounted andthe corner of the board possibly brokenoff at the power connector.

The two units are indeed plug com-patible. The controller described below,initially designed for the Shugart drive,passed data to and from the Wangco unitwith no errors and no wiring changes. Oneminor difference in interfacing is thatWangco uses pin 2 of the.interface connectoras a fourth drive-select line; pin 2 is unusedon the Shugart unit and only three Shugartunits can be paralleled without makingcabling changes.

The Wangco unit's head would not loadwhen first powered up in my demo unit.It moved freely with finger pressure whenpower was off, and even pulled in with

power on when given a little assistance.Minor adjustment might have been in order,but I thought that perhaps gravity couldprovide the needed assistance. This wasverified when the unit was turned 180°on its side and it began loading and workingflawlessly, hhad load solenoids have been aweak point of floppy disk drives at leastsince the Memorex 651.

The Prototype Controller

In order to get the minifloppy workingwith the least fuss, I adapted the originalcontroller designed for the Memorex 651 tothe minifloppy (see figure 1). This per-mitted use of all existing disk-based softwarewith very few changes (see "A Floppy DiskInterface," page 58, January 1977 BYTE).

The controller uses the same 256 bytehard sectors, buffered in the interface card,as before. Today, 256 bytes is unnecessarilysmall. Programmable memory prices havedropped sufficiently to warrant the use ofa 512 or 1024 byte buffer, which couldsignificantly increase the apparent speed ofthe disk. Logistics, not economics, dictatedthe continued use of the 256 byte sector.The hardware and software can be easilychanged to incorporate a larger buffer.

The similarity of the small floppy con-troller to its parent will be readily apparentif the schematics are compared. A reductionin chip count results from the smaller num-ber of sectors which saves a counter andbus driver, and from the use of a single 4 Kstatic programmable memory in place ofthe separate 2102s of the parent design.

Two separator circuits are built around a74221 dual oneshot: one for sector andindex pulses and the other for the receiveddata and clock pulses. The data and clockpulse separator circuit is really just a varia-tion of the sector and index circuit. In each,a missing pulse (either an index or datapulse, depending on which circuit) is beingsought.

Sector and Index Separator

Sector pulses are consistently present,occurring at regular intervals in time. Sincethe anticipated index pulse will occurapproximately midway between adjacentsector pulses, the sector pulses are used todefine the position of a sampling window.The oneshot is used as a gating signal to stripthe index pulses out of the sector pulsetrain.

In the sector and index pulse separator,the window begins at the trailing edge ofeach input pulse. The presence of the win-dow (ie: oneshot fired but not yet run out)enables a gate which will then pass any

122 BYTE February 1978

ymtm

No, It Doesn't Costa Million Bucks,It Just Works LikeIt Did!

iir

The MSDD-100 Floppv Disc System offersyou an inexpensive, modern way to get realdata processing power from your S-100 BusComputer System. Disc storage is a must inevery microcomputer. With the MSDD-100system, this power doesn't cost much morethan cassette, and is far faster.

For business applications, disc storage isan absolute must. The MSDD-100 has enoughbulk storage capacity to handle hundreds ofinventory entries, yet has enough speed to getyou to any of these records in just a second orso. That's power!

Computer programmers know theadvantage gained with disc storage. Programdevelopment is speeded up greatly. With a discsystem, you spend your time writing software,not waiting for slow peripherals such as papertape. For example, paper tape can be handledat about ten characters per second. Cassettetape runs at maybe thirty characters persecond or so. By comparison, the transfer ratewith the MSDD-100 Disc System is 15,000characters per second. That's fast!

You can easily put over 90,000 charactersof data on a single diskette, about 5" indiameter. The MSDD-100 controller will allowyou to hook up to three separate drives ontoyour system. That's over a quarter of amegabyte on line and accessable in a secondor two. That's storage.

For $599, you get the unique, modernMSDD-100 Disc Controller Card, the industrystandard Shugart SA-400 Floppy Disc Drive, acomprehensive manual, system utilitiessoftware and patches into altair basic, and apreassembled cable. We offer fully integrated8K and extended basic languages at nominalextra cost. That's MSD!

Circle 80 on inquiry card.

MSD Gets Down to Basics.

Microsoft, the company that created thepopular, widely used altair basic, wrote MSDDisc Basic, 8K and extended versions.Microsoft basic is well know for its power andspeed. MSD bings you this language for theMSDD-100 Floppy Disc Svstem. MSD offers thefirst really compact disc basic, our 8K version,and extended basic, with powerful featuressuch as double precision number processing,formatted data output, multiple dataterminals, and most efficient memory usage.This fine software is now available to everyMSDD-100 user. MSD basic is also fullycompatible with the MSDV-100 video system.

repertoire. The upper and lower casealphanumeric characters are of the highestquality. The MSDV-100 is a memory mapped,two board device that can be fed into astandard video monitor. Thoroughlydeveloped software is included, with a wideselection of drivers supplied in both basic andassembly language. With MSDV-100 drivingsoftware, the MSDV-100 becomes an elegant,sophisticated video terminal with scrollingand cursor control. Full compatability withMSD basic, of course!

2765 So.Colorado Blvd. Suite 110 Denver.CO 80222 (303)758-741P

The MSDV-100 video display system is apowerful, S-100 compatible video outputdevice. With a high resolution 80 x 24 format.The small system user can now have asophisticated video display systemcomparable to the most expensive of videoterminals. You don't have to settle for lessanymore!

The MSDV-100 Video Display System isdesigned around a custom ACSII characterset. Vertical lines, horizontal lines, and lineintersections are part of its well thought-out

Sanyo Monitor (VM4209)

Micro-Floppy Disc System

Video Display System

Additional Drivers

$150 |$499*$599*$285$385$350 ea.$4.25 ea.

$599*$699

)rder or BAsignature.s process-

AMOUNT

*Power Supply not included.Micro-Floppy Disc System

Price Increases Effective Feb. 1

To place Order, send check, money cor MC Card # with exp. date andUncertified checks require 6 weeking. Phone orders accepted.Please Send me the following:

TOTAL:

City, State, 7ip

D Send me more information

BYTE February 1978

123

pulse so long as the window is still open.The window closes before the next inputpulse, so only an index pulse, if present,can pass through to the index output. The

Double Density Operation

Much of the interest surroundingfloppy disks, large or small, centerson double density operation. Variousschemes exist for recording twice theusual amount of data on each sector.This possibility stems from the factthat the FM encoding used on the orig-inal floppies is inefficient in the numberof flux changes used per data bit. Byswitching to a more efficient encodingtechnique (eg: MFM, M2FM, Modified-Miller, GCR; see IEEE Spectrum, July1977) twice the amount of data can berecorded on each sector with littleor no increase in the number of fluxchanges. The new encoding techniquesare a mixed blessing, however, sincetheir bandwidth requirements are dif-ferent from FM, their tolerance of the"bit-shift" phenomenon is different, andthey require a more complex data sepa-rator and decoder. FM encoding is stillthe easiest, cheapest, and most reliabletechnique.

Of the alternative codes used toachieve double density, GCR (Group-Coded Recording) looks quite attractive.Micro Peripherals Inc has implementeddouble density using GCR in a full sizefloppy disk and controller system cur-rently being marketed. (For an alluring,albeit incomplete synopsis of GCR,see Computer Design, December 1976or Perkin-Elmer Data Systems News,June 14 1977.) GCR is nothing morethan the old standby NRZ with itsattendant advantages, but, since or-dinary NRZ has no clocking informationand a potentially high DC content duringlong strings of ones or zeros, the data isreformatted to eliminate the long strings.The reformatting converts each four bitgroup of original data into five bits ofgroup coded data; the five bits in theencoded version will always have a mixof ones and zeros, even if the real data isall in one state. Reformatting in GCRcan be accomplished in software, asopposed to MFM, etc, which almostunavoidably must be encoded and de-coded in hardware. Thus, GCR has goodpossibilities as a low cost, high relia-bility scheme for achieving doubledensity.

complement output of the oneshot is alsoused: if the window is open for index pulsesit is thus closed to sector pulses, and viceversa. Thus, the same window which keepssector pulses out of the index pulse linealso keeps index pulses out of the sectorpulse line.

Data and Clock Separator:

The FM data and clock separator usedin this controller is considerably simplerthan Shugart's recommended circuit. Itevolved from an understanding of two basicfunctions which must be provided by anysuch separator:

1. extraction of clocking information

2. latching data and holding it longenough for transmission to the usingsystem

Shugart's use of the oneshot mixed thesetwo functions together, and complicateda simple task. The oneshot should be usedonly for the purpose of clock extraction;use of the oneshot to provide a window fordata taking will result in reduced toleranceto bit shifts. The circuit of figure 1 showsthe clock extractor and data bit latchseparately.

The clock extractor uses the oneshot tostrip any data pulses out of the data andclock pulse train. The oneshot's time intervalextends from the leading edge of the clockpulse past the trailing edge of any data pulsewhich might appear within the bit cell. Theoneshot will then be triggered only by clockpulses, and will likewise set the clock flipflop at each clock pulse's leading edge. Theclock flip flop will be reset promptly at thetrailing edge of the incoming pulse. Theinverter, IC25b, provides propagation delayto help insure that the clock flip flop can beset by the oneshot. The output of the clockflip flop is a train of clock pulses (no datapulses) which are synchronous with andslightly delayed (by a few nanoseconds)from the incoming clock pulses.

These derived clock pulses are subse-quently used in the data bit recovery process.The window during which a data bit mightappear is ideally described as the intervalbetween the trailing edge of one clock pulseand the leading edge of the following clockpulse. The data bit latch, IC27a, is thereforeset by the trailing edge of any pulse otherthan the clock pulse. Although both dataand clock pulses are present at the clockinginput to the data flip flop, it discriminatesagainst clock pulses because the derivedclock pulses are present at its data input.The dual inverters, IC25c and IC25d, pro-vide propagation delay which facilitates dis-

124

BYTE February 1978

crimination against clock pulses. Thus, anypulse that is not a clock pulse will set thedata bit latch flip flop and be held until thetrailing edge of the next clock pulse.

Other Functions

Since the derived clock pulses are ap-proximately 1 fxs wide, they can be useddirectly as write pulses to store the data bitsinto the programmable memory. The prop-agation delay mentioned above also providesa slight data hold time which insures thatthe data will be stable at the programmablememory's input throughout the duration ofthe write pulse.

ICs 3a and 3b serve, as in the previousdesign, to synchronize the reading and writ-ing operations with the leading edge of thesector pulses. As before, it is up to the hostprocessor to request a read or write trans-action one sector in advance to allowthe controller to take control at the ap-propriate time; ie: if the host processorwants to write to sector 3, it must requestthis sometime during the reading of sector 2so that the controller will be set up andready when sector 3 rolls around.

Software

I have modified the software, which was

previously developed for use with theMemorex 651 large floppy, for use with thesmall floppies. The most notable change isin the number of sectors per track, whichis now ten for the small floppy with theSA-107 type media. Since the sector size of256 bytes is unchanged, no radical changeswere necessary in the original software.The software still fits into a 1 K byte readonly memory when used in conjunction witha Motorola MIKBUG system. When used onnonMIKBUG systems, an overhead of 100or so bytes will be incurred to support thecharacter printing and receiving routines.

Summary

A small floppy in conjunction with thecontroller of figure 1 represents perhaps thecheapest and easiest way to add a floppydisk to a small system. 22 common TTLintegrated circuits and one MOS integratedcircuit memory (which is second sourcedand should be readily available) are used.The controller requires no adjustmentsproviding that suitable quality componentsare used. Sector buffering on board is againused to facilitate independence of anyparticular processor or system configurationand permit concurrent interrupt handlingwhere desired."

Copies of the softwarefor the interface are avail-able from the author (com-plete assembly listing only,no object tapes) for $10.Persons interested in aprinted circuit board orcomplete kit, single ordouble density, are in-vited to inquire aboutAltair (S-100) and SwTPCbus compatible versions ofthis controller. Please ad-dress all correspondence tome at the address shownat the beginning of thisarticle.

At last...DIP Jumpersfor Faster & Easierconnections.

AP DIP Jumpers are the low cost highquality solution to bussing between PCboards, mother boards, backplanes and more.Available in 14, 16, 24 and 40 pin single ended ordouble ended assemblies, in standard lengths of6, 12, 24 and 36 inches. Each assembly hasmolded-on strain relief and line-by-lineprobeability. Contact material is non-corro-sive nickel silver.Dielectric is 94 V-0 rated.Cable options include stranded electricpink, rainbow or with ground plane.

Order from your A P distributor today.Our distributor list is growing daily. For thename of the distributor nearest you call Toll Free800-321-9668.

Send for our complete AP catalog The Faster & Easier Book.

Faster & Easier is what we're all about.

5UJ AP PRODUCTS INCORPORATED

Box 110 • 72Corwin Drive, Painesville OH 44077(216)354-2101 TWX: 810-425-2250

Circle 4 on inquiry card.

KYTE February 1978 125

LEARN TOPROGRAM

MICROCOMPUTERS

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.

«H

LOGICAL

Circle 65 on inquiry card.

711 Stierlin RoadMountain View, CA 94043(415) 965-8365

Ask BYTE

TTL TO DRIVE LEDs?

Are TTL integrated circuit devicesable to drive LED display devices withjust a current limiting resistor?

M V Amiot

3R Marcel Doret

92140 Clamart FRANCE

Yes, it is done quite frequently bothin production and in homebrewers' cir-cuits. The following is a typical con-figuration using a 7404.

7404

o>

~220flTO

330J1 w^

►5V

/>

Note that the critical specification toconsider is the low level output current,noted in the Texas Instruments TTLData Book for Design Engineers as

Of

Most TTL integrated circuits can

SERVICES INCORPORATED

126 BYTE February 1978

sink a current of 16 mA, correspondingto a fanout of 10 unit loads at the inputsof other TTL gates. Using one LED withdropping resistor and a 16 mA currentwould be within nominal specificationsover the entire temperature range of thepart; in fact, however, ratings are con-servative and an upper bound on theactual LED drive current possible isthe short circuit output current of theTTL gate, typically about 50 mA.(Manufacturers do not recommendshorting more than one output of apackage at a single time.) What thismeans is that by using something lessthan a short circuit level of currentit is possible to drive perhaps 20 to 30mA and get a brighter display thanthat provided by the nominal 16 mA.*

WHAT DOES REFRESHING FROMMEMORY MEAN?

Since APL uses scads of memory,and the most drastic reduction inmemory price ($1495 for 64 K fromExtensys Corporation) is for a dynamicmemory, a crucial problem for APLwould be its use with a nonstaticmemory.

Allen Atwood's article in August1977 BYTE (page 108) says "One wouldnot want to refresh a display frommemory using APL." Why wouldn't I?At these new low prices, I am very muchinterested. Is this memory refreshingdifficulty just for the 8080, whichMr Atwood's article is about, or forother microprocessors also?

Zilog's technical manual for the Z-80states that the Z-80's Memory RefreshRegister "enables dynamic memories to

be used with the same ease as staticmemories." Extensys says that itsmemory board has "complete dynamicrefresh logic." My question is, can APLbe properly implemented on the Z-80,using the much cheaper dynamicmemory?

Henry Williams

4323 Gleneste-Withamsville Rd

Cincinnati OH 45245

Your question is due to two differentuses of the concept of "refreshing"something. In the context of dynamicmemory systems, refreshing refers to thetechnique of assuring that every memoryregion of the chips is referenced re-peatedly with a certain minimum fre-quency of reference. This dynamicmemory refreshing requirement is in-variably satisfied in hardware, whetheron the memory board itself as in manyof the available memory boards or bylogic built into the processor designsuch as the refresh algorithm of theZ-80.

Allen Atwood was referring to adifferent concept, namely refresh ofvisual displays, and in particular theclasses of displays which require ex-plicit programming to generate theirdata on a continuing basis. Typicalclasses of displays which require con-tinual programmed refresh includevector displays and point displays.(For an example of vector displayssee Steve Ciarcia's article on page 78of November 1976 BYTE; anotherexample is provided by "The BeerBudget Graphics Interface" of PeterNelson, seen on page 26 of November1976 BYTE, and used for the outputof Dave Kruglinski's program describedin "How To Implement Space War"in October 1977 BYTE, page 86.) In allsuch programmed display refresh tech-niques, assembly language on the typicalprocessor is barely fast enough forflicker free images of reasonably com-plex pictures. Use of any high levellanguage interpreter (including APL,BASIC, etc) is more than likely to betoo slow. But as in the case of dynamicmemories, many display techniquesinvolve hardware refresh, in which casethe speed of programmed refresh is nota question-In short, since dynamic memoryrefreshing is a hardware task, there isno memory refreshing difficulty withrespect to APL, or any other language.An important point related to this isthe fact that as far as APL or any otherhigh level language is concerned, there isnot one bit of difference between astatic and a dynamic volatile program-mable memory technology: both formsof memory lose all data when power isremoved; both forms act as a mainmemory resource to the computer, it istrue thai dynamic memory must use"hidden refresh" schemes to be trulyequivalent to static memory in all as-pects including access time and wait

states; but this difference only hassignificance if you are trying to useprogrammed timing loops and the pro-cessor's crystal clock to make measure-ments of time. It is true that staticmemory has a higher parts count (32chips for 16 K bytes static versus 8chips for 16 K bytes excluding refreshlogic for 16 K bytes dynamic). It is alsotrue that static memory consumesperhaps twice as much power as theequivalent dynamic memory. But thesefactors are not major ones in many useroriented situations: it is memory capa-city which counts most in the choice ofthe product, not how the memory isimplemented.

In choosing a personal computer sys-tem, the choice between static anddynamic has all the functional distinc-tions for the user of the choice betweensquare headlights and round headlightsin a car: both work, both perform theirfunctions. . .CH"

BYTE's Gits

The Future of Personal ComputingatCOMPCON 78

The personal computer industry isjust about three years old; in fact, thefirst personal computer was introducedin (anuary 1975, by MITS Inc, Albu-querque NM. Subsequently, an entirelynew industry has appeared, includinghardware manufacturers, softwarespecialists, retail stores, trade publi-cations and computer trade shows.Personal computers have already hada profound impact on hobbyists andindustrial users. With the developmentof new application software, micro-computers are rapidly being adaptedfor business, professional and educa-tional uses. In just three years, personalcomputing has been placed within thereach of every consumer with as yetundetermined and possibly far reachingconsequences.

With these points in mind, COMP-CON 78, Jack Tar Hotel, San Francisco,February 28 thru March 2 1978, willpresent a look at the phenomenon ofpersonal computing. Four panel sessionshave been arranged with experts whowill be discussing various aspects of thecomputer revolution. These panel ses-sions start at 7 PM and cover topics suchas "Women's Contributions in InnovativeComputer Applications" on Monday,"Robotics and Bionics" on Tuesday,"Editors of Computer Magazines" onWednesday, and "Computer Art andMusic" on Thursday. Each session isarranged to provide a broad spectrumof end users with the opportunity tohear about and discuss the latest ad-vances in each of these areas. Panelistsinclude experts in computer based

IntroducingBit Pad.

The new,

low-cost digitizer for

small computer systems.

Bit Pad is the newest product from Summagraphics the leadingproducer of professional digitizers. 11 has a small 11-inch active area anda small $555 price tag. But the list of applications is as big as yourimagination.

Better than a joystick or keyboard for entering graphic information,it converts any point on a page, any vector any distance into its digitalequivalents. It's also a menu for data entry. You assign a value, or aninstruction to any location on the pad. At the touch of a stylus, it'sentered into your system.

Who can use it? Anyone from the educator and the engineer to thehobbyist and the computer games enthusiast. The data structure isbyte oriented for easy compatibility with small computers, so you canadd a power supply stand-alone display, cross-hair cursor and manyother options.

$1,000.00 creativity prize. You can also add $1,000.00 to yourbank account as a reward for your inventiveness. Just write an articleon an original Bit Pad application and submit it to any nationalsmall-computer periodical. I f the editors publish it — and the decisionis solely theirs — Summagraphics will pay you $1,000.00. ContactSummagraphics for rules concerning this offer.

M

^ummadiaphiai

** ' corporation

35 Brentwood Ave., Box 781, Fairfield, CT 06430Phone(203) 384-1344. TELEX 96-4348

Circle 112 on inquiry card.

BYTE February 1978 127

bio-feedback, members of the USRobotics Society, individuals involvedin educational representatives fromseveral of the major manufacturers ofmicrocomputer equipment, and expertsin computer art and music.

Hopefully these discussions couldhelp shape the future of personal com-puting. Special exhibits will also beavailable for hands-on learning: from 5

PM to 10 PM Monday thru Wednesday,attendees will be able to get firsthandexperience with a broad range ofequipment including speech synthesizers,video terminals, disk systems, codegraphics, and a wide range of micro-computer main frames and peripherals.The conference registration fee coversattendance at all personal computingsessions and exhibits. There is a regis-

tration fee of $5 for individuals wishingto only attend the personal computingsessions and exhibits.

Organizers Alice Ahlgren, marketingmanager, Cromemco Inc, MountainView CA 94040, (415) 964-7400; andRobert Albrecht, Author, Dragon, andFriend of Children, Menlo Park CA94025, (415) 323-6117, will be glad tosupply more information."

Circle 84 on inquiry card.

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 C0SMAC microprocessor/mini-computer

SPECIFICATIONS

ELF II features an RCACOSMAC COS MOS 8-bitmicroprocessor address-able to 64k bytes withDMA. interrupt, 16 regis-ters. ALU. 256 byte RAM.full hex keyboard, twodigit hex output display,5 slot plug-in expansionbus, stable crystal clockfor timing purposes and adouble-sided plated-through PC board plusRCA 1861 video IC to dis-play any segment of mem-ory on a video monitor orTV screen.

USE ELF II FOR...GAMES

Play interactive keyboard games,games with analog inputs, gamesutilizing your TV set for a videodisplay!GRAPHICS

Create pictures, designs, alpha-numerics and fabulous animatedeffects on your TV screen forhour after hour of family fun!CIRCUIT DESIGNDesign circuits using a micro-processor, Use ELF II as acounter, alarm system, lock,controller, thermostat, timer,telephone dialer, etc. The pos-sibilities are infinite!Coming Soon!Exclusive Netronics Plug-InProgram Debugger and monitorallows visual display of anyprogram on a clock pulse byclock pulse basis to help youlearn programming f-a-s-tl • 4kmemory • Cassette 1/0 • D toA, A to D • Controller plug-ins.

A THOUGHTFUL GIFT

FOR ANYONE WHO MUST

STAY UP TO DATE IN

COMPUTERS AND

ELECTRONICS'

ELF

ii

99

95

SEND TODAY —NETRONICS R&D LTD., Dept. BY 2333 Litchfield Road, New Mill'ord, CT 00776 Phone (203) 354-9375

Yes! / want to ran programs at

home and have enclosed:0 $99.95 plus S3 p&h for RCACOSMAC ELF II kit. Featuredin POPULAR ELECTRONICS.

Includes all components pluseverything you need to writeand run machine language pro-grams plus the new Pixie chipthat 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.j>ROM, ASCII keyboard inputs,

controllers, etc. (soon to beavailable 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 J4.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 powt transformer andRCA 1802 User's Manual for$149.95 plus $3 p&h.Conn. res. add sales tax.

NAME

ADDRESS^CITY

D Send info on other kits!

LPKUM, ASCII keyboard inputs, Dealer Inquiries Invited

immmmm^m wmm mtm Hi mb hh ■» wm «■ mi mm av aH MM I

A Course

A 2 week course in the fundamentalsof digital electronics and microcomputerinterfacing will be held at VirginiaMilitary Institute from July 17 thruJuly 29 1978.

For information and registrationforms write to Dr Philip B Peters, Deptof Physics, Virginia Military Institute,Lexington VA 24450."

A Note for Robot Experimenters

The September 1977 issue of DrDobb's Journal, volume 2, number 8,arrived here recently. In it readers willfind a contribution entitled "An Inter-active Programming Language for Con-trol of Robots" by Lichen Wang. Theitem includes a description of the lan-guage, as well as 8080 code for the inter-pretive language, assembled beginning atlocation 0 in address space and assumingperipherals in the form of a ProcessorTechnology VDM-1 at locations CC00to CFFF and an ASCII keyboard inputport. The robots envisioned by thissoftware are represented as simulationson a graphic display, a useful first steptowards debugging and implementationof motion programs and strategies. DrDobb's journal can be reached at POBE, Menlo Park CA 9402S. Back issuesare available while they last at $1.50."

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.)

ADS

ALPHA DIGITAL SYSTEMS

Data Acquisition, Computation an<J Control

ROUTE 4 BOX 171ABOONE, NORTH CAROLINA 28607

128 BYTE February 1978

Circle 2 on inquiry card.

Circle 79 on inquiry card.

Glubs andNewsletters

Conducted by David Wozmak

Apple I Library

A software and hardware library forApple I users has been started, and allmaterial will be available to interestedpeople at cost. If you wish more infor-mation, write to Joe Torzewski, 51625Chestnut Rd, Granger IN 46530.

Hobby Computer Club

Located in Belgium and the Netherlands,the Hobby Computer Club is a Dutch-speaking club with more than 230 members.

Their first central meeting, held onOctober 31 1977, was a big success, withmore than 140 members attending. Tendifferent types of computers were present,and the spirit of the members was high.

At the present time about one third ofthe club's members have computers up and

MP I

QUALITY CONTROL TEST

KEYBOhRO TEST lm ErtJO RS232 SERIAL PORT

KEYBOARD TEST 380 BAUD CURRENT LOOP

OH LINE TEST 963t< BAUD RS232 SERIAL PORT

BUFFER

Need Hard Copy?

TRY OUR SOFT PRICES$425

Complete standalone 40 column impact riot 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 RS?3?'current loop applications start at$575 in single quantity

SEND FOR FREE LITERATURE

Box 22101

Salt Lake City, Utah 84122

(801) 364-2411

THE SCELBI/BYTE PRIMER

The problem solver is here! The Scelbi/BYTE Primer is more than a reference book,more than an idea book. It is a truly authoritative wide ranging text, featuring articlesby more than 50 recognized professional authors who know and love microcomputers.Whether you're just learning the basics of programming, a business person looking forefficient methods of inventory control and stock market analysis, or an old hand in needof information on designing your own assembler, the information you need is here.Many glossaries, profusely illustrated, over 400 pages. You won't want to be without thismust text from the leaders in the field. Only $10.95 plus 50 cents for postage and hand-ling. Send coupon today or dial your order on the BITS toll free hot line: 800-258-5477(book orders only). In New Hampshire, call: 924-3355, 9 to 5 EST.

Please note: The BITS hot line operatorsare equipped to handle Bank Americard andMastercharge customer orders only. Pleasehave your credit card number ready beforeyou call.

We invite dealer inquiries on the Scelbi/BYTE Primer.

Send today to:

BITS, Inc70 Main StPeterborough NH 03458

Dealer inquiries invited.

All orders must be prepaid.

Name

Address

City

State

Zip

SCELBI/BYTE PRIMER

Book(s) @ $10.95 $.Postage, 50 cents $Total $

O Check enclosed

□ Bill MC #

□ Bill BA #

J. / L

J- / L

Exp. DateExp. Date

Signature

In unusual cases, processing may exceed 30 days.

You may photocopy this page if you wish to leave your BYTE intact.

J

Circle 9 on inquiry card.

BYTE February 1978 129

Circle 71 on inquiry card.

THE BETTER BUG TRAP

ANDCONQUER

Altair/IMSAI compatible board catches program bugs andprovides timing for real-time applications.

Four hardware breakpoint addresses. Software breakpointsonly possible at instructions in RAM. Better Bug Trapbreakpoints can be in ROM or RAM, and at data orinstructions in memory, input/output channels, or stacklocations.

Board can stop CPU or interrupt CPU at a breakpoint.

Real-time functions: watchdog timer, real-time clock (fortime of day clock), interval timer.

Sophisticated timesharing made possible!

Unique interrupt structure: generates a CALL instruction toyour subroutine anywhere in memory, not a RST!

Addressed as memory. All parameters set easily by software.

All this and more for about the price of a real-time clockboard, but nothing else does the job of the Better Bug Trap.

$180, assembled and tested. 2 manuals plus software. 90 daywarranty. Shipped UPS. Delivery from stock.

U|ttronic0,

BOX 3514, 123 WEST 3RD ST.,GREENVILLE, NC 27834

SUITE 8

CL2400

Real Time Clock

$135—Assembled

£?-"5»ia/ %J

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.

Canada

systems, inc.

(formerly comptek)

ariR Boards DO Something

systems, inc. **

"#. rpbf iii

It If Ijfl $9a—Kit

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 for input, and is continuouslyupdated by the highly accurate 60 Hz power line frequency.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

P.O. Box 516

La Canada, CA 91011

(213) 790-7957

running, and another 60 percent are goingto be using the 6800 processor for theirplanned systems.

For more information, write to HCC,Delftsekade 12, 2266 AJ LeidschendamNETHERLANDS.

Cosmac Elf Club

A user group for the Cosmac Elf has beenstarted in Houston TX. The group sendsout a monthly newsletter with interestingarticles pertinent to the Cosmac Elf, such asan ASCII keyboard interface for the Elf.

For more information and a compli-mentary copy of the newsletter, write toCharles E Manry, 2012 Williamsburg Ct S,League City TX 77573.

TI-59 Newsletter

The main emphasis of this newsletter ison the exchange of TI-59 calculator pro-grams related to gambling (especially horse-racing). It also deals with business andpractical applications of the calculator.

The club, masterminded by Hal Davis, hasover 1000 members. The membership fee is$24 per year, which includes the newsletter,a program catalog, toll-free informationnumbers, a marketplace, and more.

The money goes toward paying forarticles and programs published in thenewsletter. To find out more about thisorganization, write to Hal Davis, Mathe-matical Applications Service, POB 149,New York NY 10956.

Boston Computer Society

The Boston Computer Society (BCS) isan association of computer hobbyists, pro-fessionals and people interested in the com-puter field. Because BCS serves the con-stantly changing needs of its members, theprogram varies at each meeting. In general,the group functions as a resource center andinformation exchange for those involved orinterested in the computer field.

The monthly gatherings are divided intothree parts: a guest speaker, an "Answers toQuestions" session and an open period. Theguest speaker is generally a professionalwho presents an interesting computerapplication or related skill. An attemptis made to appeal to nearly all levels ofinterest. The "Answers to Questions" periodallows attendees to use the combinedknowledge of the society to solve problemssuch as product searches, computer access,technical problems, etc. The open periodallows members to meet one another, readthe current computer magazines, try out one

130 BYTE February 1978

Circle 14 on inquiry card.

Circle 27 on inquiry card.

or more of the available computers, orparticipate in various activities.

At the present time, meetings are held at7:30 PM on the fourth Wednesday of eachmonth, except July, at the CommonwealthSchool, 151 Commonwealth Av, Boston.The school is located on the corner ofDartmouth St in Boston's Back Bay, oneblock from the Boston Public Library andthe Copley MBTA stop.

Admission to the first meeting is free.Dues are $5 per year. Membership includesadmission to all Boston Computer Societysponsored activities, and notification of eachmeeting by mail. Write to the Boston Com-puter Society, 17 Chestnut St, Boston MA02108.

BASIC

Bridgeport Area Computer Club will nowbe known as BASIC (Bridgeport AreaSociety for Involved Computerists). Thesociety meets on the first Wednesday of eachmonth at Trumbull Town Library, locatedabout four miles north of exit 48 of theMerrit Parkway. The Society publishes amonthly newsletter called MicroFlash.Membership is open to all interested incomputers. Annual dues are $8 for regularmembership and $6 for student membership.For further information, write to BASIC,12 Wildwood Dr, Trumbull CT 06611, attn:Al Song.

Sci-Fi Letter Network

A science fact and science fiction letternetwork, called A EC Transfer, is beingformed. Its purpose is to allow people inter-ested in computers and science fiction tofind other people in their fields with whomto share this interest through correspon-dence. Send a SASE to Bill Callahan, AECTransfer, Computer Division, 8 Gedney Way,Newburgh NY 12550.

PACC

Pittsburgh Area Computer Club is part ofthe Midwest Affiliation of Computer Clubs,and holds meetings at different times andplaces every month. The February meetingwill be on the 19th; contact PACC, 400Smithfield St, Pittsburgh PA 15222, forlocation and time. The club also publishesa monthly newsletter containing news oflocal events and articles by members.

TCHG-NT

The Computer Hobbyist Group ofNorthern Texas is one of the oldest andlargest computer clubs in the US.

We speak yourlanguage

And we're giving you what you want.

• a comprehensive product line. Hardware, assembled orkits, and software from major manufacturers. Plus books andcurrent literature. Financing available.

• a trained, enthusiastic staff. We'll help you choose ordesign the system that's right for you. No high pressure here.

• service when you need it. We won't sell you somethingwe can't keep running.^r,

• a brand new facilityin Pennsylvania.

We'll be able toserve our South Jersey-Pennsylvania customersmore efficiently now.

• a bigger, better NewJersey store. We'veenlarged our showroomin Iselin. Now there aremore displays you cantry out. There's moreroom to stock theproducts you need.

Ik*

The Microcomputer People.a

Computer Mart of New JerseyComputer Mart of Pennsylvania

New Jersey Store

501 Route 27Iselin, NJ 08830201-283-0600Tue.-Sat. 10:00-6:00Tue. & Thur. til 9:00

Pennsylvania Store

550 DeKalb Pike

King of Prussia, PA 19406

215-265-2580

Tue.-Thur. 11:00-9:00

Fri. & Sat. 10:00-6:00

(our only locations)

Theoriginal,

people

Hands on microprocessor short course

with FREE take home microcomputer

included in the $499 tuition.

Feb.

20-24

Tucson, AZ

Mar.

6-10

Huntsville, AL

Apr.

3-7

Washington, DC

Apr.

17-21

Lafayette, IN

May

8-12

Los Angeles, CA

Jun.

5-9

Boston, MA

Jun.

19-23

New York, NY

Learn microprocessors first handfrom the original hands on people.

For more information call Jerilyn Williams,

(317) 742-6802 or write Wintek Corp.,

902 North 9th Street, Lafayette, Indiana 47904.

WINITK

6800 Hardware/SoftwareCustom Hardware/SoftwareIn-house short courses

Circle 125 on inquiry card.

BYTE February 1978 131

Circle 38 on inquiry card.

21 START-AT-HOMECOMPUTER BUSINESSES

in the shoestring, start-at-home

computer business handbook

CONSULTING ^PROGRAMMING •SOFTWARE PACKAGES #COMFREELANCE WRITING • SEM INARS • TAPE/DISC CLEANINGFIELD SERVICE • SYSTEMS HOUSES • LEAS ING#S UPPLIESPUBLISHING • TlME BROKERS • HARDWARE DISTRIBUTORSSALES AGENCI ES • HEADHUNT ING • TEMPORARY SERVICESUSED COMPUTERS • FINDER1 S FEES#SCRAP COMPONENTSCOMPUTER PRODUCTS AND SERVICES FOR THE HOME

Plus - - hundreds of ideas onmoonlighting, going full-time,image building, revenue buildingbidding, 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 II ringbound #113 pp. #$12.00Call 312-945-2940 or mail coupon

DRTHSERRCH

730 WAUKEGAN ROAD • SUITE 108DEERFIELD. ILLINOIS 60015

Rush copies of "The Shoestring Start-At-Home

Computer Business Handbook to me right away -

NAME/COMPANY

ADDRESS

CITY/STATE/ZIP __

□ CHECK ENCLOSEDfJBANKAMERI CARDQMASTERCHARGE

16K RAM

FULLY STATIC

INTRODUCTORY$450 KIT PRICE

10SLOTTABLETOP

MICROCOMPUTERS

TT-8080.,. KIT $475

SYSTEM WITH 16K&I/0TT-8080-S... KIT $1125

CARD CAGE

& MOTHER BOARD

EGT-100... KIT $100

WITH CONNECTORS

&GUIDES

ECT-100-F... KIT $200

CPU'S , MEMORY

MOTHER BOARDS

PROTOTYPING BOARDS

EXTENDER CARDS

POWER SUPPLIES

DEALER INQUIRIES INVITED SHIPPING EXTRA

ELECTRMC CDNTBQL TECHNOLOGY

FACTORY ADDRESS: MAI LING ADDRESS:

763 RAMSEY AVENUE P.O. BOX 6

HILLSIDE, NEW JERSEY 07205 UNION, NEW JERSEY 07083

IIIIIIIIIIJ

They currently run two meetings permonth, one in Arlington, at the UTAUniversity Hall, in room 108 on the thirdSaturday of every month at 1 PM, and theother in Richardson at the UTD GreenCenter, room 2.530 at 1 PM on the firstSaturday of each month.

Their newsletter, The Printed Circuit, is aworthwhile source of comment. Each issueincludes extensive meeting summaries fromboth Arlington and Richardson, product andpublication reviews, the "It's Obvious"column of the not necessarily obvious,technical articles, and so on.

The mailing address is TCHG-NT, POB1344, Grand Prairie TX 75051. Their infor-mation number, which is toll-free fromeither Dallas or Ft Worth, is (817) 265-9054or (214) 265-9054.

Amateur Computer Group of New Jersey

The ACGNJ is an excellent club led bySol Libes, Marty Nichols and a host ofothers. Club activities include users' groupsfor the 6800, 650X, 8080, Z-80, Cosmac,and SOL. Extensive 8080, Z-80, 6800, 650Xsoftware libraries are also available.

Meetings feature presentations by variouscomputer manufacturers and knowledgeableguest speakers. Locations and times vary.

The ACGNJ News, edited by Russel Gorr,is one of the best monthly newsletters I'veseen. It has club information, technicaldata, a "Rumor Page" written by Sol Libes,bits of information from members, classi-fied ads, software, and the "System of theMonth." Membership, which includes thenewsletter, is $6 per year.

Prospective new members can get infor-mation by writing to Amateur ComputerGroup of New Jersey, UCTI, 1776 RaritanRd, Scotch Plains NJ 07076.

Minnesota Computer Society

The Minnesota Computer Society meetsthe first Monday of each month at 7:30 PMat Brown Institute, 3123 E Lake St,Minneapolis MN (unless announced other-wise).

The December 7 1977 meeting featuredDick Finstad and John Ballenthin describingand demonstrating the system they designedand assembled.

Earl Joseph, staff scientist with UN I VAC,will present his talk "Future Smart Com-puters and Other Future Things" at theFebruary 6th meeting. For further infor-mation contact Minnesota ComputerSociety, c/o Jean Rice, POB 35317, Minnea-polis MN 55435.

132 BYTE February 1978

Circle 46 on inquiry card.

Circle 15 on inquiry card.

Microcomputer Investors Association

An association has been formed for thepurpose of facilitating the exchange of dataand information relating to microcomputersand investing, in the areas of stocks, bonds,warrants, stock options and commodities.The Microcomputer Investors Associationis professional and nonprofit in nature.

In order to benefit from the experienceof others, there is a basic requirement that,at least once each year, each member submitan article for publication in the association'sjournal. The initial issue of the journal,The Microcomputer Investor, has beenmailed to members. Article titles included"A Proposed Format for InformationExchange," "Market Prediction UsingFourier Analysis and Synthesis," "Pointand Figure Analysis (A Computer Pro-gram)," "Evaluation of Stock Options,""Investment Strategies: A Linear Program-ming Analysis." For more information, senda SASE to Jack Williams, The Microcom-puter Investors Association, 2415 Ansdel Ct,Reston VA 22091, or send $30 and anarticle for publication (ten pages or less,original, typewritten, double-spaced copy,on a subject in some way related to utilizingmicrocomputers for investment purposes).

Toronto Region Association ofComputer Enthusiasts

TRACE began in February 1976 as aninformal meeting of ten people interestedin personal computing and quickly attractedfollowers. Since that time it has grown toapproximately 100 active members andabout as many casual followers. Approx-imately half of the members have personalsystems of some form.

The ideas behind TRACE are numerous.The main purpose is to foster communi-cation and resource sharing among people,both hobbyists and professionals, interestedin personal computing. The meeting formatusually includes a system demonstration andone or two talks on topics related to micro-computers. In addition to the meetings, theclub has a monthly newsletter, group pur-chasing, and a library of product literature,books and periodicals in the field of smallcomputers. Other activities include fleamarkets, exhibitions and a software library.

The club meets at the north campus ofHumber College at 8 PM on the fourthFriday of the month, and at the OntarioScience Centre at 2 PM on the secondSunday of the month. For more infor-mation contact TRACE, POB 545, Streets-ville, Ontario CANADA L5M 2C1."

ADM-3A695

M^^^M ^"^ ™ Dine Qhinninn

00*

IN KIT FORM

'80 CHARACTERS/LINE

> 24 LINES/SCREEN

> ADDRESSABLE CURSUR• 9, 10, or 11 BIT WORDS

Plus Shippingand Handling

II\

• 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

m^14 ^58-2414 IWA y lU-SOU-5/tcapital

930 N. BELTLINE

equipment brokersIRVING, TEXAS 75061 I

G

I

Ri

INTRODUCES THE NEW

COMPUTER IN A

NOTEBOOK BASED

ON THE M6800 MPU

COMPLETE WITH BATTERIES

FOR IN-HAND OPERATION

INCLUDES INSTRUCTION BOOK

AND SAMPLE PROGRAMS

BASIC UNIT... $299

P.O. Box 10767

Salem Station

Winston-Salem, N.C. 27108

(919) 748-8761

Circle 52 on inquiry card.

BYTE February 1978 133

Circle 50 on inquiry card.

Dr. C. William Engel's

A 64-page papertack book of ten programs 1n BASIC for the computer hobbyist. Each programcontains a scenario, sample run, flowchart, variables listing, program listing, andsuqgested modifications. $5 each. Send check or money order to:

Engel Enterprises, P.O. Box 16612, Tampa, FL 33687

Also availableTHE DEVIL'S DUNGEON

Unpackaged program listing, instructions, flowchart, sample iBook ~ $3.50.

and suggested modifications ■

Presenting a growing line ofprofessional quality

IMSAI/ALTAIR

S-lOO

COMPATIBLE

BOARDS

8K BLANK RAM BOARD i.,™^™™, $25.00

—with MEMORY PROTECT/UNPROTECT and SELECTABLE WAIT STATES

Z-80 CPU BOARD $35.00

-with PROVISIONS lor ONBOARD 2708 and POWER ON JUMP

PR0T0B0ARD

$25.00

(new) 2708/16 EPROM BOARD $25.00

—accBpts up to 16K of 2708's or 32K ol 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

'except lor PR0T0B0ARD

WATCH FOR OUR 16/64K DYNAMIC RAM BOARD ANDADDITIONAL BOARDS TO BE ANNOUNCED FORTHWITH.Q 9

IMSAI 8080 Kit

—with 22 Slot M.B.

$560.oo

PLUS STOOD SHIPPING

Z-80 cpu CHIP $22.00

Z-80AcpuCHIP $25.00

2708CHIP. $12.00

PLEASE ADD $2.00 SHIPPING PER ORDER.

iihuCu aui

PO BOX 91ITHACA, N.Y. 14850

134 BYTE February 1978

PLEASE CALL (607) 273-3271TO ORDER OR OBTAIN TECHNICAL ASSISTANCE.

OEM and quantity discounts available

Circle 61 on inquiry card.

LanguagesFcpum

Comments onAPL CharacterGenerators

Olav Naess

Welhavensgt 65

Bergen NORWAY

Some writers of letters to BYTE haveasked for character generator read onlymemories with APL symbols for video dis-plays.

I don't think a read only memory is agood solution. I have counted 33 APL sym-bols which don't belong to the ASCII set.If they replace the lower case letters, thecomputer is rather useless for text pro-cessing. Then comes the problem with super-imposing symbols. A video scan cannotbackspace or rewrite a line like a typewriter,so each composite symbol would have to berepresented in the read only memory asanother symbol. (Displays with randomaccess could indicate the composite symbolsby changing the constituent symbols be-tween each frame scan, but I don't thinkthis is a good and practical procedure.) Thatwould mean 17 characters extra, and still26 in addition if underlined letters are to bewritten. So a 256 character read onlymemory would be required, which 1 thinkis rather impractical, particularly if orderedby hobbyists. Besides, future APL versionsmight introduce new symbol combinations.

The solution to the problem should beto use a video system with programmablecharacters, as used in "The Detailer,"an Altair (S-100) card made by Micro-Graphics. (I think the same principle is usedby the Micromind and Noval computers.)The Detailer, which displays 16 64 char-acter lines, has a 1 K byte directly accessiblememory whose contents in the usual waydetermine which symbols are to be dis-played. But it also has another 1 K byteprogrammable memory block whose con-tents determine the appearance of the

symbols. By inverting a bit in the symbolselecting byte one gets the symbol descrip-tion information from the programmablememory instead of from an ordinary char-acter generator. Each symbol position isthen described as a dot matrix, 8 dots wideand 12 dots high, which extends out to allthe neighboring matrices. Each of the 64software determined symbol patterns whichare simultaneously available is described by a12 byte vector in the on card memory, and50 of them are required for the APL sym-bols. (Underlined letters may be replaced bybrightness inverted letters through invertinga bit in their symbol selection bytes.)Replacing the APL symbol set (to obtainlower case letters or graphics) involves justmoving 64 x 12 = 768 bytes in the com-puter's memory.

It's nice to have the computer really pro-grammable."

Baking Baker

We received the following letter in replyto Roxton Baker's letter (July 1977 BYTE,page 11) which referred to P M Lashley 's"use/ess, self-serving, supercilious, unneces-sary attack on another man's efforts." Thisis a reference to Mr Lash ley's original letter(February 1977 BYTE, page 77) advocatingstructured programming.

Shal FarleyCaltech 1-53Pasadena CA 91126

This being my first letter to the editor,I at first hesitated to get involved. But theutter idiocy of "Lashing Lashley," was theproverbial last straw. Let me address MrBaker's adjectives individually:

1. Useless. The only thing that couldmake Mr Lashley's efforts useless are thetruly ignorant who refuse to learn.

2. Self-serving. I doubt that Lashleyhas any economic interest in whateverform of slow torture hobbyists choosefor themselves. If he does, I don't.

3. Supercilious. [Webster's SecondEdition: "adjective: lofty with pride; haugh-tily contemptous.") In his efforts to beemphatic, Mr Lashley has apparently comeacross as snobbish to the likes of Mr Baker.Rather, I found his letter refreshing amidstthe Pong-Trek-Toe morass. Choosing

Circle 101 on inquiry card.

Let us program you to

SAVE

10% DISCOUNT

ON MOST MAJOR LINES

5 % ADDITIONAL FOR CASH

SUPER SPECIALS

TDL XITAN ALPHA 1.5 KIT $ 73500

[includes 1 2K Super BASIC Package A Software]

IMSAI FABULOUS PCS BO/30 KIT. $ 1 ,01 5D0

[includes 5" CRT, Intelligent Keyboard80B5 MPU-B board]

PERCOM CI-81 2 KIT $ 750D

[multiple I/O cassette and RS-232]

PERCOM CI-81 2 ASSEMBLED S. TESTED $ 1 0000

■ These prices exceed normal discount schedule. No further discount applies.

BUS S-100, INC.

ADDRESS 7 WHITE PLACE

CLARK, NJ 07066INTERFACE 201-3B2-131B

FULL MINICOMPUTERBUSINESS SYSTEM

Ready to use ... for only

$ 3,995°°

• CRT

• Printer

• Keyboard

• Memory

• Z-80 Processor

• Dual Mini-Floppies

• BASIC and Full Set of Business

Programs: A/R, A/P, Inventory, Payrolland General Ledger

— ALSO AVAILABLE —

WORD PROCESSING SYSTEMS

Dealer and Sales Agent inquiries invited

MiniMicroMart, Inc.

1618 James St., Syracuse, NY 13203(315) 422-4467

Circle 77 on inquiry card.

BYTE February 1978

135

Circle 128 on inquiry card.

^%it%%%i»i»%%^^%xxxi»»xx%%«pi^it%%i^%%ioa

PRAMMER III

by xybek

The Ultimate EPROM Memory BoardFor Your SIOO-Bus Computer

* Accommodates from 1 k to 30k of the above EPROMS, in

any combination, each addressable on any 1 k boundarywithin the board's 32k address space.

* 1 k of scratch-pad RAM.

■*• 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.

* Available February 1978 for$369.50, assembled, tested,

ready to run.

Xybek • P.O. Box4925 • Stanford,CA94305

Telephone: (408) 296-8188

3«aoo«Bg80BooaaoBaBaooapa^^

"\

16K STATIC RAM

THE WAY YOU LIKE IT

Assembled and tested $595

Guaranteed for one full year

16K kit $525

8K kit $295

Kitwith all but2114 memories $88

BIANK BOARD $35

COMPARE THESE FEATURES:

• S-100 BUS COMPATABLE

• COMPLETELY STATIC WITH NO CLOCKED CHIP-SELECT OR REFRESH

• WILL RUN ON Z-80 SYSTEMS AT 4 Mhz WITH NO WAIT STATES

• WILL RUN ON ALPHA MICROSYSTEMS AM-100 AND ON DMA SYSTEMS

• USES 2114 MEMORIES—AN INDUSTRY STANOARD

• HAS INDIVIDUALLY ADDRESSABLE 4K BLOCKS Of MEMORY

• SOFTWARE WRITE PROTECTION IN 4K BLOCKS

• PACING OR BANK SELECT FEATURE FOR MEMORY EXPANSION AND LOWSOFTWARE OVERHEAD TIMESHARING SYSTEMS

• COMPLETELY BUFFERED ADDRESS AND DATA LINES

• SINGLE 8 VOLT POWER SUPPLY

• HIGH QUALITY, LOW PROFILE SOCKETS FOR ALL IC'S

• SOLDER MASKED P.C. BOARD AND SCREENED PARTS PLACEMENT LEGENDFOR EASE Of CONSTRUCTION AND DEPENDABILITY

S-100 BUS TERMINATING BOARD $25

Absorbs noise, overshoot, ringing, reflection.

S-100 EXTENDER BOARD $16

With jumpers in power supply lines for current measurements, Low profileso card can remain in the machine with cover on. Wide edge connector

PRICES SHOWN INCLUDE U.S. SHIPPING. WE ACCEPT VISA, MASTER CHARGE,CASHIERS CHECK, MO. ALLOW TIME FOR PERSONAL CHECKS TO CLEAR. CODORDERS ADD SI. UTAH RESIDENTS ADD 4*4* TAX

Digital Mjcrq Systems

BOX 1212. OREM, UTAH 84057(801)224-2102

ALGOL or PASCAL over FORTRASH isnot a matter of reinventing the wheel. Allthree languages have been implemented forwell over a decade. Rather it is a matter ofchoosing radial ply or steel belted tires overwagon wheels.

4. Unnecessary. In view of the currentstate of micro software, Mr Lashley's com-ments were among the most useful thingsI'd read. The thrust of his article was thathistory need not repeat itself. Start with themore usable languages.

5. Is Mr Baker going to throw away thedecade of work put into structured pro-gramming just to conform to the noun?

Structured programming languages arenot the toys of wild eyed dreamers, nor arethey an intellectual curiosity. To put it inperspective, they are the natural outgrowthof progress in computer science. Program-mers' frustrations with machine code ledto the first assemblers. Frustration with thelimitations of assembly language, the needfor defined control and data structures (eg:IF - THEN - ELSE, DO, COMPLEX declara-tions, ARRAY declarations), led to thedevelopment of FORTRAN. Then the ex-perience gained with FORTRAN'S limitedcontrol structures, and the knowledge of themost common programming errors madewhile using FORTRAN led to the develop-ment of structured programming languages.FORTRAN is painful in part because ofnumeric labels that lead to confusion andmisguided GO TO's. The lack of block struc-ture leads to fragmented code with GO TOsweaving thru the text. When writing pro-grams of great length, block structure helpsto divide and conquer as a strong ally ofsubroutines. By coding and testing the lowlevel blocks and routines first, one may besure of their operation when testing thehigher levels. Thus the location of bugs is cir-cumscribed to as small a portion of code aspossible. While it is perfectly possible towrite well structured code in FORTRAN, itis a big pain to do so. Also there are severaltypes of data structures that cannot be im-plemented in FORTRAN that turn out to bequite useful (for example, dynamic arraybounds at run time).

By starting with a structured languagemicrocomputer software could leapfrogahead and save all that effort. If onlyhobbyists will learn from the past. I learnedto program in FORTRAN on an IBM370/158, and the number of sleepless nightsI spent resubmitting my prog after gettingrid of yet another bug. . . well, it's justpainful to think about. Since then I've beenrunning on a DECsystem 10. TheirFORTRAN is much better, but I still found

136 BYTE February 1978

Circle 40 on inquiry card.

myself tracking down GO TO wrong num-bers and correcting random syntax errors. Afriend suggested structured languages andthe difference is dramatic, from days of de-bugging FORTRAN, to hours of debuggingALGOL-60. The coding time is also reducedas the language is more "natural" to programin. PASCAL is a derivative of ALGOL-68and although I've not used it the reportsfrom those who have are very favorable.

Lest you have any fear, it is not a blackart. It is in fact much less so than assemblylanguage or FORTRAN. It is part of thecontinuing process of learning to controlthe computer in the most convenientmanner possible. That's what higher levellanguages are for. That's the way of thefuture. As programmers' time becomesmore valuable it becomes economic toshape the software and hardware to theneeds of the programmer. This is alreadytrue of the hobby computer; each useradds the memory and the peripherals of hisor her choice. It would be advantageous forthe software to be equally facile.

I didn't mean this to be a tutorial, but Ifeel we stand at a crossroads. The hobbyistscan jump for the manufacturers' first andeasiest product and be stuck on the samecompatibility treadmill as the mainframes,or you may start with a better product andgo from there. There are some historic paral-lels: The Europeans didn't adopt a televisionstandard until many years after the US.As a result they now have a much better pro-duct. I would strongly recommend thathobbyists demand, thru their purchasingpower, that structured languages be imple-mented as cross or resident compilers fortheir systems. The time, effort and frustra-tion saved while developing software will beworth it."

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 allcorrespondents 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 asked to omit them.

Circle 60 on inquiry card.

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 soltware 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 compatiblefreguency and period measurement module The 88-UFC has four software selectedinputs. Freguency 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.

88-SPM CLOCK MODULE: The 88-SPM provides a lime of day clock and an inde-pendent realtime clock on one S100 compatible module. Provisions are included for

battery backup so the 88-SPM can maintain the time during power-off conditions,$96.00 kit

1001D (Type CBT) Data Access Atrangement $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 lor 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

BYTE February 1978

137

Continued from page 12

This design is a plausi-bility argument. . .it iscomplete (though skele-tal) and provides a basisfor discussion.

You can speculate allyou wish and design ascarefully as you wish, butit remains speculative un-til you try it out. . .

are pretty well settled, though, and so thisseries closes with a comparison of the twodesigns, to the extent that they can be com-pared. That comparison should illustratethe wide range of solutions that the prob-lems admit and thus the importance ofidentifying the problems in a design effortlike this.

Why You Want to Read This Article

Since another network design will followthis one very soon, you could rightly wonderwhy this one should be published at all.There are several reasons. At the very least,this design is a plausibility argument in-tended to counter the skepticism with whichsome people view the prospect of a networkfor personal users of information processing.It is also a learning experience: it is a com-plete (though skeletal) design that can becompared with the PCNET (and other per-sonal computer net designs when they arepublished) in order to learn about the designissues involved and the stances one can takeon them. It can also be implemented; thatwould get people into communication quitesoon, learning from the experience as well asfilling the immediate communication needs.

In an age of throwaway material goods,a throwaway design or a throwaway imple-mentation should not seem altogetherinappropriate. In fact, they are especiallyappropriate where the problem at hand isa novel one or has novel constraints, as isthe case here. You can speculate all you wishand design as carefully as you wish, but itremains speculative until you try it out.The motivation for building a throwawaynet is not entirely intellectual: even if youconsume it in the very act of building it,you will leave behind a very valuable thing:a useful communication facility. It is morelikely, though, that the first few personalcomputer nets will persist for a while andthat they will serve as media for sharing theexperience and insights needed for buildingtheir successors. This very persistence willalso force people to face an importantproblem often ignored in fledgling nets,that of interfacing to other nets.

What Is a Net?

Let us pause, before plunging into de-tailed considerations, to gain a broad per-spective on the task at hand. A computernetwork typically consists of some hard-ware and some software. The hardwareincludes all the physical facilities used bythe net: phone lines, radio links, computers,etc. Since hardware costs money and mustbe maintained, the design should minimizethe required hardware and distribute it so

that its cost can be recovered gracefully. Thesoftware includes the necessary agreementsgoverning the use of the hardware, togetherwith the procedures and computer programsimplementing the agreements. The agree-ments include the rendezvous conventionsby which conversations are established, thelanguage in which conversations take place,and the rules of behavior under which con-versations are conducted. Under the linguis-tic heading, I mean to include everythingfrom message formats to the representationsof characters and bits, etc.

Network specialists have come to use theterm "protocol" to refer to these agree-ments, ranging from all of them down tojust the rules of conduct; in this series ofarticles, I will take "protocol" to mean theextreme of all agreements. Protocols aremost easily formulated in layers, with eachlayer using the one just below it and other-wise almost completely independent of theothers. (In this regard, the PCNET and mineresemble one another quite strongly. Forexample, each has a protocol to transmitbits from one network node to the next andto detect erroneous transmissions; each thenuses that layer to provide an errorless,correctly sequenced stream of bits (thencecharacters) to the higher layers.)

This design exercise concentrates almostexclusively on protocols. Since hardware isrelatively expensive, the design requiresonly a modest amount of hardware, andthat of quite readily available kinds. ThePCNET, however, looks as if it will trade amodest amount of inconvenience to reducethe hardware requirement even further, butit may also optionally reduce the incon-venience with some highly specialized hard-ware if some thorny problems can be solved.Actually, though, the distinction betweenmy design and the PCNET alternative withminimum hardware is more one of emphasisthan one of substance; either design can beeasily adapted to the hardware require-ments of the other.

The Experience of the ARPA Net

The ARPA Net embodies an enormousbody of experience that can be brought tobear on the design of a personal computernetwork. However, the ARPA Net ex-perience should be used with caution: bothdesigns have a lot in common but haveseveral important differences. The mostimportant difference is that, while theARPA Net is heavily subsidized (The ARPANet is a research tool developed for the USDepartment of Defense under the auspicesof the Advanced Research Projects Agency.It ties together a multitude of large proces-

138 BYTE February 1978

tffoQ ^UMM^f to l^pe &?0$mm

&

MODEL CC-8 $175.00

4800 BAUD CASSETTE RECORDER

An ASYNCHRONOUS NRZ type Recorder with remote motor start/stop. Errorrate 108 at 4800 BAUD. Can be used from 110 to 4800 BAUD into a UART or "BitBanger PIA" -no clocking required. This is not an audio recorder. It takes RS232orTTL signals from the terminal or computer and gives back the same signals. No audiointerface is used. Motor start/stop is manual or through TTL or RS232 signals.

Tape speed is 3.2"/second nominal; 1.6"/sec. optional. 110 volt, 60 Hz, 5 watts.(220 Volts on special order). Can use high quality audio cassettes (Philips Type) orcertified data cassettes. Can be used in remote locations from a 12 Volt battery.

Recommended for DATA LOGGING, WORD PROCESSING, COMPUTER PRO-GRAM RELOADING and DATA STORAGE. Especially recommended for 6800systems, 6502 systems, 1800 systems and beginners with the 8080 systems. Manualcontrol except for motor start/stop. 6800 or 8080 software for file or record searchingavailable on request with order. Used by major computer manufacturers, Bell Tele-phone and U.S. Government for program reloading and field servicing.

AVAILABILITY - Off the shelf.

expands 6800 CONTROLLER for SWTP

piS||i,i|iifiiii;

PROVIDES MONITOR AND TAPE SOFTWARE in EPROM.MIKBUG with 1 K of ADDITIONAL ROM PROGRAM.

This is a complete tape controller for the SWTP 6800 system. Has 3 K of EPROMspace for your own programs. A 1 K ROM (2708) is provided with all tape and moni-tor functions. The ROM program is identical to our extensive 8080 ROM program.

Has one ACIA for one or two tape drives, one USART for an additional Serial portand a 4 bit parallel port for motor control. Will control one or two CC-8 or 3M3Adrives with the software provided. Can be used with other tape drives controllable with4 TTL bits if appropriate software changes are made.

Extra serial port is provided for your use with a second terminal or printer. (RS232,TTL or 20 ma)

The ROM program supplements the MIKBUG program and is entered automaticallyon reset.

AVAiLABiLiTY-off the shelf. $190.00, Tested & Assmb. ($160.00, Kit)

2SIO (R) CONTROLLER$190.00 ($160.00 Kit)

PROVIDES MONITOR AND TAPE SOFTWARE in ROM TERMINAL andTAPE PORTS on SAME BOARD CONTROLS ONE or TWO TAPE UNITS(CC-8 or 3M3A)

This is a complete 8080, 8085, or Z80 system controller. It provides the terminalI/O (RS232, 20 mA, or TTL) and the data cartridge I/O, plus the motor controllingparallel I/O latches. Two kilobytes of on board ROM provide turn on and go controlof your Altair or Imsai. NO MORE BOOTSTRAPPING. Loads and Dumps memoryin hex on the terminal, formats tape cartridge files, has word processing and papertape routines. Best of all, it has the search routines to locate files and records bymeans of six, five, and four letter strings. Just type in the file name and the recorderand software do the rest. Can be used in the BiSync (IBM), BiPhase (Phase encoded)or NRZ modes with suitable recorders and interfaces.

This is Revision 7 of this controller. This version features 2708 type EPROM's sothat you can write your own software or relocate it as desired. One 2708 prepro-grammed is supplied with the board. A socket is available for the second ROMallowing up to a full 2K of monitor programs.

Fits all S100 bus computers using 8080 or Z80 MPU's. Requires 2 MHz clockfrom bus. Cannot be used with audio cassettes without an interface. Cassette orcartridge inputs are RS232 level.

AVAILABILITY - Off the shelf.

Z 80 BOARD for SWTP COMPUTER: Now you can use the 8080/Z80 software programs in your SWTP 6800machine. Replaces your MPU board with a Z80 and ROM so that you are up and running with your presentSWTP memory and MPC card. $200 assembled and tested. ($160 kit)

AVAILABLE-November '77.

OVERSEAS: Export Version 220 volt 50 hz. Write factory or: Megatron-Datameg, 8011 Putzbrunn, Munchen, Germany; Nippon Automation5-16-7 Shiba, Minato-Ku, Tokyo, Japan; Hobbydata, PACK 20012, Malmo, Sweden; G. Ashbee, 172 /field Road, London SW 10-9ag: Trin-tronics, Ltd., 186 Queen Street W., Toronto, Ontario, Canada; EBASA, Enrique Barges 17, Barcelona 14, Spain; ARIES, 7, rue Saint Phillipe duRoute, 75008 Paris; Micro/em 20131, Milano, Italy; Eagle Electric, Capetown, S. Africa.

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.

Naticnal Multiplex Ccrporaticn

j 3474 Rand Avenue, South Plainfield NJ 07080 Box 288 Phone (201) 561-3600 TWX 710-997-9530 t--- . .._.

Circle 82 on inquiry card.

139

WarehouseOverstock

SALE!

Buy These ItemsFrom ComputerEnterprises^

Before 4/15/78And Save Save

Save!

Lear Siegler

ADM-3A KitPolymorphic

VTI/ 64 KitVector Graphic 8K

SRAMNetronicsElf II

AssembledGeorge Risk ASC II

Credit Cash

Card Discount

Price Price

$728. $700

177. 170.

187. 180

133. 128.

52. 50.

keyboard kit

More Popular Products

At OurExtremely Low Prices.

Credit

Cash

Card Discount

Price

Price

North Star Micro

$ 623.

$ 599

Disk System Kit

Cromemco Z2 Kit

557.

556

Cromemco

136.

131

Bytesaver

Cromemco 16K

464.

446

RAM 250ns

IMSAIPCS-80/30

1122.

1079

Kit

IMSAIPCS-80/15

748.

719

Kit

IMSAI 8080 Kit

614.

590

w/ 22 slots

IMSAI 16K RAM

411.

395

IMSAI 32K RAM

685.

659

Shipping charges: $10 per CPU on larger units; $1.50 per kit. $2.00 mill.per order.

Delivery is stock to 30 days on most items. Shipment is immediate forpayment by cashier's check, money order or charge card. Allow 3 weeksfor personal checks to clear. N.Y. State residents add approp. salestax. Availability, prices and specs may change without notice.

Operating Hours:

M-W10-5E.S.T.Th-F 10-9E.S.T.Closed Sat. & Sun.

Write or Call

computercmerpfl/es™

P.O. Box 71Fayetteville, N.Y. 13066

Phone (315) 637-6808 Today!

sors nationwide at universities and aroundthe world using satellite links.), a networkfor individuals should (and can I believe)support itself right from the start. Thatconsideration has a most important ramifi-cation in my design: the inclusion of "Com-munity Information Exchanges" (CIEs) thatserve as focal points and buffers betweenthe other nodes of the network. Further, theARPA Net design includes the notion (in-applicable to a personal computing network)that most network nodes will be connectedto the net most of the time. Thus, its proto-cols provide a general interprocess communi-cation facility and include useful servicesas special cases of it. A personally orientednetwork by contrast should be optimizedtoward the two facilities that are most im-mediately applicable to the personal com-puter community (and that have, inciden-tally, proved most useful in the ARPA Net):sending mail and sending files of programs.Finally, I think a personal computer net-work should be oriented to an overall archi-tecture in which internode connections aresporadic, fleeting and relatively infrequent.

An Overview of The CIE Net: The Basic Idea

A Community Information Exchange(CIE) Net should be designed from the startto gracefully accommodate any foreseeablecircumstances to which it might eventuallyneed to adapt. Thus, the suggestions pre-sented here allow for a large number ofnodes to eventually become attached to thenetwork. The protocols have room to ex-pand into, and they identify themselves sothat several incompatible sets of protocolscan be accommodated at a given time.Addressing is defined for the United States,but the addresses can be expanded to coverother countries as well. A separate mech-anism is included to let this net gracefullyinterface to other networks serving the sameterritory.

The suggestions included here amount toa partial design. They are quite definiteso as to form a firm basis for discussion.Some suggestions were arbitrarily chosenjust to make the design more definite, whileother suggestions embody principles that areimportant to the overall concept.

The overall design is formulated in sucha way as to enable it to be implementedcheaply and at maximum convenience tothe implementers. Its backbone is a networkof Community Information Exchanges (CIEs)that serve as buffers for network traffic.The overall network is designed to workeven when the exchanges are connectedonly fleetingly and at only loosely scheduledintervals. One party to each connection must

140

BYTE February 1978

Circle 22 on inquiry card.

Circle 11 on inquiry card.

be capable of timing out the other partyand taking corrective action when necessary;otherwise the protocols are designed so thatthey can be implemented in string BASICon computers that do not allow access tolower levels of programming, such as directbinary manipulations or input and output.The required hardware support is minimizedto equipment that is readily available tohomebrewers.

The Four Kinds of Stations

A CIE Net would be composed of fourkinds of nodes, with communication linesbetween them. By default, they will com-municate by telephone lines in a universallanguage discussed in another section, butany two nodes are free to use any othermutually agreeable medium when they talkto one another. The four kinds of nodes arethe Community Information Exchange (CIE)that buffers network traffic; the subscriber,a person wishing to take part in a CIE Net;the relay station that moves messages fromone CIE to another; and the gateway con-necting a CIE Net to other networks. Inthe rest of this series, I will use the term"station" for these four kinds of nodes inorder to avoid confusion with anything thatis of no interest here but might be called anode in more general network terminology.The various stations can be thought to in-habit different computers, and the designuses that model. However, any particularcomputer can be host to several stations ofpossibly different types, and the designspecifically allows them to optimize theirown intercommunication using any facili-ties provided by their host.

A CIE serves as a communication bufferamong subscribers and relay stations. Thatis, it must have file storage that a programcan access fairly expeditiously, and it shouldhave some complement of answer-modemodems which subscribers and relay stationscan call at their convenience during thenight when phone rates are lowest. Whiledifferent realizations of file storage havedifferent requirements and capabilities intheir technological, financial and opera-tional aspects, there are a few functions thata CIE will require of its file storage facili-ties. It must be able to read or allocate andwrite multiple thousands of charactersworth of buffers which it may need to holdfor several hours or several days. It shouldbe able to gain access to almost any partof this storage within a few seconds, and itshould be able to read or write succeedingcharacter positions at very nearly the trans-mission rate of the lines on which it willreceive calls from subscribers or relay

nnnoununc

0RM1GE COIMTV'S

most Convenient& most Affordable

Computer Store

WE OFFER A COMPLETE LINE OF MICROCOMPUTERS,PERIPHERALS AND ACCESSORIES

IMSAI SEALS PRINTERS

CROMEMCO HAZELTINE BOOKS

BYTE 8 SOROC MAGAZINES

VISIT OUR STORE AND SEE THELATEST IN AFFORDABLE COMPUTERS

BYTE

SHOP

674 EL CAMINO REALEL CAMINO PLAZATUSTIN, CA 92680

PHONE (7{<t)73l-l6%6

X

'*oTEF, *<°

MON -THUR 11

7

IRI 11

9

SAI 10

6

Software

Games • CRAPS (Las Vegas style) $6.00MULTIPLE LUNAR LANDER $8.00SLOT MACHINE $6.00GAME PACKAGE: Russian Roulette, MadScientist, and ABM $8.00

Graphics • PICTURE MAKER with AMP'L ANNY $12.00GRAPHICS PACKAGE I: Laser Beam, SpaceShuttle, and Blast Off $10.00GRAPHICS PACKAGE II: Rain in Greece, Flea,Textwriter, Random Walk $10.00

Scientific • FOURIER FIT: Dees curve fitting $15.00

Systems • RANDOM NUMBER GENERATOR TEST $5.00HEX MEMORY LOADER $10.00MEMORY DUMP PROGRAM $10.00MEMORY 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)

Circle 106 on inquiry card.

BYTE February 1978

141

The CIE Net is designedwith four classes of nodesin mind: the communityinformation exchangeswith mass storage re-sources, individual sub-scriber nodes, relay nodes,and gateways to othernetworks. . .

A network is a systematiccombination of hardwareand software. . .hardwareof computers, phone lines,etc, and software of proto-col agreements and com-puter programs imple-menting the agreements.. .

stations. The CIE can encrypt or compressdata as it sees fit; the protocols are struc-tured in such a way that no interveningstations need give any special treatment toan encrypted or compressed message trans-mitted from one CIE to another. Finally,its subscribers may wish it to provide themwith long-term storage, but it should also beprepared to gracefully recover temporarystorage that is no longer needed by thenetwork.

A subscriber is thought of as a stationpossessing an originate-mode modem, somelocal processing power and file storage anda terminal or other interface to a humanbeing. (Of course, the subscriber may berealized as a set of programs cohabiting ahost computer with a CIE and reachableby a person having only a terminal and anoriginate-mode modem; the implementationdetails are irrelevant, and the functionaldistinction is still useful.) The subscriberstation need not be able to rapidly positionits file storage because the person operatinga subscriber can easily anticipate the require-ments and because subscribers are involvedonly at the end points of a message's transitthrough the net. The subscriber, not theCIE, has charge of all programs that handlefiles of messages, selective display and rapidretrieval of messages and whatever negotia-tions with its human are necessary to gen-erate a message in the format described inthese protocols. Although the subscriber isextremely important to the CIE Net, theprotocols by which a CIE and its subscribersmight communicate are idiosyncratic to thestations' realizations, the subject of a largebody of literature, and irrelevant to theprocess of transmitting messages betweenendpoint CIEs; therefore this article makesno attempt to enlarge the current stock ofsuch suggestions.

A relay station; like a subscriber, can bemodeled as havingan originate-mode modem,a terminal, some processing power and somefile storage. A relay station, however, needhave no file storage, but can instead have asecond originate-mode modem and thusconnect two CIEs quite directly with onlyfleeting use of buffer storage. A relaystation can be thought of as providing acommunication link between two CIEs:it would first phone one and collect mes-sages headed in the general direction of theother; then it would phone the second andboth unload those messages and collectmessages headed in the general direction ofthe first, which it would then call back.

Finally, a gateway is conceptually ananswer-mode modem and a connection tosome other network, along with whatever

processing power or file storage is requiredto connect the CIE Net to the other net.Depending on the desires and resources ofthe people connecting the gateway to theCIE Net, it could be capable of transmittingtraffic in either direction or both directionsbetween the two nets, or it could be con-nected to any arbitrary number of networks.These protocols provide a frame to holdmessages headed through a CIE Net to anoutward facing gateway; the content of amessage inside the frame is completelyunspecified and can reflect any idio-syncrasies of the gateway and the other net.An inward facing gateway is treated exactlylike a CIE by its neighboring relay stations,but it does not serve subscribers the way areal CIE does. These protocols completelyignore the content of a message headed intoa gateway and require messages coming outof a gateway to conform to the same rulesas any other CIE Net messages. The motiva-tion is that the network on the other side ofa gateway might cover territory that doesn'toverlap that served by the CIE Net, or itmight thinly cover the same territory, sayby providing high speed links between majorcities. This opacity also frees the CIE Netfrom any necessity to commit itself to anyof the possible internetwork message for-mats currently under discussion in theInternational Network Working Group.These protocols make no attempt to handlethe problem of choosing a gateway throughwhich to route messages that should berouted through some gateway; instead, theypresume that the source CIE can choose theproper gateway or can send the message tosome other CIE that agrees to make such adecision and then forward the messageappropriately.

These comments describe functionalnuclei of the conceptual CIE network; theymake only mild commitments to the imple-mentation details by which the four kindsof stations are realized. For example, it iseasy to imagine a gateway cohabiting a hostcomputer with a CIE or a relay station.Also, a computer on the ARPA Net typi-cally contains a CIE, a relay station and alarge number of subscriber stations sharingprograms among themselves and each sharingfile storage with the CIE and relay station.These cohabitation possibilities serve toemphasize the freedom with which stationscan agree to speak any language other thanthe universal language specified here. Finally,don't forget that the commitments in thisproposed design are structured in thisway to specifically allow a CIE to be putonto any dial-in time sharing computerwithout its operators needing to cooperate

142 BYTE February 1978

More Than Just Hardware.

When you put the MSI 6800 ComputerSystem together with our FD-8 Floppy DiskMemory, you have the best 6800 hardwarepackage available today.

But to make a computer system work,you need more than just powerful hardware,you need powerful software . . . and MSI haswhat you need.

MSI Disk Extended BASIC Available inBoth Compiler and Interpreter Versions

The new Software Dynamics BASICCompiler is now available from MSI in an FD-8Disk Version. The Compiler, with random andequential disk data files, runs 50 times faster

business applications.

The Excellent TSC Editor In An FD-8Disk Version

TSC's new text editing system is clearlythe most powerful editor available for anymicrocomputer system. The FD-8 disk versionallows you to edit and assemble long sourcefiles from disk and to place object code on diskas well.

MSI Reverse Assembler

Our Reverse Assembler for the FD-8 allowsdisassembly of object code programs, completewith creation of symbol tables, labels, and equatestatements. The source code is placed on diskwhere it can be edited and reassembled.

Interpretive Debugger

An Interpretive Debugger is now availablefor MSI and SWTP 6800 systems. IDB is themost complete debugging package ever releasedfor 6800 systems.

Hardware and software . . . MSI offers acomplete computer system for the hobbyist,professional, and businessman. Send for our

these and many other fine MSI products.

WticUvett Scientific

220 West Cedar

Olathe, Kansas 66061

(913) 764-3273

TWX 910 749 6403 (MSI OLAT)

TELEX 42525 (MSI A OLAT)

E thi-iiAisgnEF-

Circle 75 on inquiry card.

The US Postal Servicehas provided an invaluableservice in the form of theZIP code of mailing ad-dresses, which is highlycorrelated with the geo-graphic location of theindividual mailing address.By incorporating the ZIPcode into each individ-ual's CIE Net address,message routing informa-tion is inherently made apart of the address...

Simulation Games and Networks

In the realm of possibility, but hardly areal world phenomenon until a network suchas PCNET or CIE Net is implemented, is theidea of multiple player simulation games. Asimulation game Is a game of considerableflexibility and considerable complexitywhich forms a model of some aspect of thereal world and explores the parametersof the model. Crude examples^ of suchgames are the familiar Star Trek, Kingdom,Wumpus, etc: games of personal computingas it stands today. The extension of gameideas which can happen over a network isthe multiple user game, for example, a trad-ing game involving 100 or so active players,a battle simulation game involving severalhundred active members of various teams,or wild fantasy games in mythical worldswith mythical creatures and dangers. Thenetwork concept provides a vehicle forinterpersonal computer aided intellectualsports whose players could grow into avigorous subset of the users of this com-munication channel.

with (or even suspect) the effort; presum-ably, a CIE handling any moderate volumeof traffic could be connected to a relaystation operated by the staff of its hostcomputer to their mutual benefit.

Addresses

The addressing scheme proposed here hasseveral interesting properties. It refers to ageographic location in a transparent enoughfashion that messages can be routed to anyplace in the US by stations having a mini-mum amount of specific routing information.Conversely, when a new station must choosean address, the range of choice is limitedin such a way that only local negotiationsare necessary. On the other hand, the limitsare so generous that those local negotiationsshould quickly terminate in universal satis-faction. This scheme also ensures that, ina direct interstation conversation, eachstation can easily mark transmissions to dis-tinguish echoes of its own transmissionsfrom those sent by the other station.

The basis of this addressing scheme isthe US Postal Service ZIP code. As a perusalof the first few pages of the ZIP codedirectory will show, the first digit designatesone of ten major areas of the country, thenext two digits designate a sectional centerwithin the national area, and the last twodigits specify a nearby post office (orbranch). Thus, any network making a rout-

ing decision for a message can compare theintended destination address with its ownaddress. If they differ in the first digit,the routing station can consult a table ofnine entries to decide the appropriategeneral direction. If they agree in the firstdigit position but differ in the next two,then the right direction can be found in asecond table of 99 entries. Otherwise, athird table of no more than 99 entries willshow the proper direction in which to for-ward the message. Thus, routing to theproper ZIP code area can be accomplishedby using tables with no more than 207entries in a given computer; actual programswill probably use far fewer table entries andcapitalize on the high degree of regularitywith which ZIP codes have been assigned.

The power of the addressing schemeproposed here is extended in two directionsfrom the ZIP code basis just outlined. Inthe upward direction, this scheme antici-pates a possible future requirement fornetwork addresses outside the US by speci-fying the optional prefix USA for addressesthat the ZIP code can reach. Thus addressesbecome partially self-identifying: an addressthat doesn't start with a digit or the lettersUSA cannot possibly be mistaken for anaddress specified by these protocols. In thedownward direction, the precision of theZIP code is refined by the addition of asuffix bojh for the sake of the interstationprotocol and in anticipation that severalalternative (or competing CIEs) might beset up in a given ZIP code area, perhapseven on the same host computer. Thesuffixes are three digit numbers; blocks ofsuffix values are preassigned, and assignmentof a specific suffix within a block is a matterof local negotiation. The preassigned blocksare:

0-9: (reserved for testing interstationprotocol)

10-99: forwarding centers (see below)

100-899: CIEs and gateways

900-999: relay stations.

Since any one ZIP code seems to serve amaximum of about 20,000 people, the blockpreassigned to CIEs is big enough to allowa CIE for each 25 people; that ought to begenerous enough for almost any eventuality.The block assigned to relay stations hasa deceptive appearance that merits furtherelaboration. The interstation transmissionblocks need to be marked with the identityof their sender. Since a transmission blockis quite short and since any interstationtransmission has only two parties, the send-er's identity can be reduced to a single bitderived from a comparison of the two net-

144

BYTE February 1978

Circle 127 on inquiry card.

work addresses. That comparison is possibleif a CIE also serves as the relay station, butthe relay station needs its own address ifit is not also a CIE. If the relay stations inan area come from a large, highly variable,loosely organized pool of volunteers, it maynot be practical to permanently assign net-work addresses to them. The problem canbe neatly solved, however, by allowing relaystations to arbitrarily pick network addressesas the need arises. Since the block fromwhich they pick an address cannot include aCIE address, then there is no danger of theaddresses coinciding, and so a short addresscan always be found.

This scheme has the disadvantages, be-cause it is entirely numeric, of being proneto human error and of being somewhatopaque to people. The situation can bepartially alleviated by the addition ofsymbolic addresses (eg: San Francisco) andforwarding centers. The general idea is thatpeople might be willing to set up forwardingcenters (probably in conjunction withCIEs)that would be willing to interpret symbolicaddresses, reformat the messages with propernetwork addresses, and forward them in theproper direction. The details are less thanclear to me at the moment. Forwarding cen-ters could also solve the problem of mobilesubscribers: a subscriber, before leaving aCIE, could tell a nearby forwarding centerwhere messages should be redirected. Whenmessages are subsequently routed throughthe forwarding center, it can send them on(or discard them) appropriately. When aforwarding center is not acting as a blindmail drop, it should also tell the sender ofthe message where future messages shouldbe sent.

An additional disadvantage of this schemeis that, since the address space can poten-tially name 80 million CIEs, there is nopractical way to broadcast a message to allCIEs. Should that prove desirable, a fewsuffixes (eg: 890-899) could be given specialmeanings, such as, "Deliver copies of thismessage to yourself and to all CIEs withhigher addresses.""

This completes an introduction to theconcept of the Community InformationExchange Network (CIE Net). In thesecond part of this three part series, thediscussion next month turns to the de-scription of the CIE Net protocol details.In the final installment of this series,several issues of a technical and legalpoint of view will be considered in moredetail, as well as comparison of CIE Netwith the PCNET design in more detail.

DUILD YOUR OWN

VID€0 T€RMINAL FOR

$85 "PLUS"*

• Serial ASCII or BAUDOT

• Full X-Y Cursor control

• 128 Characters, includingupper and lower case

• 16 lines X 64 characters

• S100 Compatability

• No Supporting Softwarerequired

* The SCT-100 Single Card Terminal interfaces directly to anycomputer or modem having serial ASCII or BAUDOT capability.It requires only the addition of a standard ASCII keyboard, and aTV monitor. It is available as a partial kit for $95.00 includingthe PC board, character generator ROM, and the 3870 micro-computer. The complete SCT-100 kit is $155.00 ($185.00prewired & tested).To order, call or write todav. MC, BAC Accepted.

XTTEX CORP. P.O. Box #20887, Dallas, Texas, 75220Phone(214)620-2993

/T

"\

<L

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-F i^bm

Coburg, OR 97401

J

Circle 51 on inquiry card.

BYTE February 1<>78 145

Continued from page 90

capable of receiving and executing com-mands to perform such high level reflexactions as running, carrying, etc, withoutfurther attention. Beyond this point, we findseveral more specialized systems which mayissue commands to this "motor automaton,"or reach around it and access the LMN sys-tems directly, or enter the automaton atany level. To understand the division oflabor among these systems, we need to focuson the way in which the execution of theoutput is related to the data which directsit. There are basically two systems whichcan be used, and both have been used inrobot systems. The first is the "dead reckon-ing" approach, in which the details of therequired action are computed in advance,and then executed without regard to theirresults. (An interesting example of this ina robot system is described in Ralph Hollis'article on NEWT in the June 1977 BYTE,page 30). The other approach of course isto continually monitor the results of themovement and apply corrections as required.Both of these systems have their uses, ad-vantages, and weaknesses, and the brainemploys both systems, usually cooperativelyin the same actions, although "pure" ex-amples of each can be found.

One of these systems is associated withthe part of the brain called the cerebellum.The cerebellum is not an instigator of action,nor is any conscious experience associatedwith its activities. It plays an importantrole however in the expression of actions,of both reflexive and voluntary types,which are generated elsewhere. Among thefunctions which the cerebellum performs are

the translation of parallel to serial output,and the control of feedforward correction inopen loop control circuits.

Before describing these functions further,it will help to examine the circuitry of thecerebellum. This structure, which lies abovethe pons, consists of two parts, an overlyingcortex and a set of nuclei. The neurons ofthe cerebellar cortex are arranged in a dis-tinctive pattern which is endlessly repeatedover the surface of the structure. A fewelements from this pattern are shown infigure 2. Simplified to the bare essentials,this consists of an input element (G) whichhas an axon that runs for some distance,spatially parallel to the axons of all of theother input elements, and which in thecourse of its passage activates a row of out-put elements (P). Firing an input elementthus selects a particular set of outputs. Sincepulses may travel rather slowly in smalldiameter axons such as those of the inputelements, the time of arrival of the selectpulse at successive output elements may belong compared to the duration (or transmis-sion time) of their outputs. Thus the cere-bellar cortex may act as a tapped delay line,as well as a decoder. If the final output ele-ments are switched to other input elements,elemental sequences may be serially cas-caded to form larger patterns. There are anumber of auxiliary elements associatedwith the G and P types, and these arelumped as O elements in our diagram. Theyare capable of performing such functions asselectively inhibiting individual output ele-ments, and controlling interactions betweenadjacent parallel row systems. Thus, these

Figure 3: A functionallyequivalent logic circuit forone row of a cerebellarcortex fiber system. Thetapped delay line is thelogical equivalent of theparallel fiber axon's prop-agation characteristics.

INTERACTION BETWEENMOTIONS OR SYSTEMS

TAPPED DELAY LINE

Ch NZh fch \Ch

MOTION SELECTINPUT

FEEDFORWARD-CORRECTIONS

ACKNOWLEDGEOR SELECTNEXT LINE

CEREBELLARCORTEX

HOLD POSITIONCOMMAND LINE

■CEREBELLAR NUCLEUS

146 BYTE February 1978

SURPLUS ELECTRONICS

IBM SELECTRIC^

BASED I/O TERMINAL

(USED) $695.00

• Tape Drives • Cable

• Cassette Drives • Wire

• Power Supplies 12V15A, 12V25A,5V35A Others, • Displays

• Cabinets • XFMRS • HeatSinks a 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

RADIO SHACK ANDCOMMODORE USERS

Low Cost Software on CompatibleCassette Tapes for your TRS-80and PET computers.

— Games

— Small Business

— Investment and

— Scientific Programs.

Tapes also available for OSI,APPLE II, SWTP 6800, and Pro-cessor Technology.

SEND FOR FREE CATALOG

Silver State EnterprisesP.O. Box 27111Lakewood, CO 80227

Circle 126 on inquiry card.

Circle 104 on inquiry card.

jeNseN

FREE CATALOG OF

HARD-TO-FINDPRECISION TOOLS

Jensen's new 152-page catalog is your singlesource for hard-to-find precision tools used byelectronic technicians, scientists, engineers,instrument mechanics. Also contains 10pages of useful "Tool Tips" to aid in toolselection. Send for your free copy today!

jgnsgn tooLs & Alloys

1230 souTti prciesr drivg ■ Tempe. az. 85281

Circle 64 on inquiry card.

WHAT ISa really good way toprotect all your valu-able back issues ofBYTE that will keepthem handy, clean, and

organized?

Send to: BYTE, POB 5120,

Philadelphia PA 19141

for information on binders and files.

CP

V)

3

SoftwareProfessionals

Can You Qualify?!

One of our clients is staffing a soft-ware group to maintain their leadingedge in state-of-the-art technology.

Growth positions in the 15-40Krange are available.

Some of the areas include: Compi-ler Design (string handling, charactermanipulation, syntax processing}Data Base Design — DOS (index se-quential file structure, etc) and RealTime Operating Systems (async &bysync, interrupt processor, resourceallocation}.

We would like to tell you moreabout these and other New Englandopportunities. All inquiries will be heldin strict confidence.

Call us collect 603-888-5500 or sendresume.

Touchstone Associates

Personnel Consultants

104 D.W. Highway

Nashua, N.H. 03060

BITE

Article Index

Complete listing of all featurearticles appearing in Volume Iof BYTE — September 1975 thruDecember 1976. Indexed for easyreference. Includes all errata.

REET

V,

To get yours, send a $.24 stamped self-addressedenvelope to:

BYTE Index

70 Main Street

Peterborough NH 034E8

J

Circle 120 on inquiry card.

STILL A FEW LEFT.

The limited edition full colorcomputer engineering poster, $3.50.

BITS

70 Main St

Peterborough NH 03458

HP 9825A COMPUTER

/ am selling my personal HP9825A Desktop Computer. Hereis a chance to own a professionalquality computer for little morethan a hobby-grade system.

FEATURES:

• 6MHz, 16 bitCPU

• High speed, 250 K byte tape cartridge

• Upper/lower case display and keyboard

• 8 K bytes RAM

• Operating system and drivers in ROM

• Interactive editor in ROM

• HPL language in ROM

• Built-in 16 column printer

ROM's for I/O, MATRIX, 5TRINGVARIABLES, ADVANCED PROGRAMMINGare also included as well as [EEE-488 interfacecard. Full documentation. Price: $4700.

Roger Cox

4327 N Chestnut St

Apt 18

Colorado Springs CO 80907

(303) 599-9274

CALIFORNIA

APPLIEDTECHNOLOGY

32K-MEM0RY CARD-S410S-100 STATIC KIT

2708E-PR0M-S14

2708 PR0GRAMHED-S20

WITH 8080 SYSTEMS MONITOR

80 MAJOR COMPUTER PRODUCT LINESAND AN EXHAUSTIVE LINE OFELECTRONIC COMPONENTS

COMPUTERS

HARDWARE AND SOFTWARECUSTOM HARDWARE AND SOFTWARERESEARCH AND DEVELOPMENT

P.O. BOX 1239

TWENTYNINE PALMS, CA. 92277

714-367-6998

FREE BASIC PROGRAM AND CATALOG

'ALEX IS COMING'

Circle 9 on inquiry card.

Circle 32 on inquiry card.

Circle 12 on inquiry card.

OTHERSYSTEMS

"

FEEDFORWARD

CORRECTION

COMPUTATION

"

1st STAGE OF

SYSTEM

OUTPUT

2nd STAGE OF

SYSTEM

OUTPUT

Figure 4: Feedforward as ameans of correction in sys-tems where feedback istoo slow. This techniqueinvolves an open loopcorrection based on othersystems' input data.

elements may impose modifications onoutput sequences, or call on adjacent sys-tems (which control similar muscle func-tions) for assistance. Some of these func-tions have actually been simulated on largedigital machines in experimental motioncontrol systems. A schematic of a circuitmodeling the essential features is shown infigure 3.

The outputs of the cerebellar cortex fallon the neurons of the cerebellar nuclei,which relay them widely throughout thebrain. Inputs to the cerebellum likewiseoriginate in many portions of the system.There is evidence in fact that differentmotor system functions may time-sharethe device! A major function of the cere-bellum however is to allow for interactionbetween different command systems.

Feedforward Controls: Coordination

To illustrate this point, let us see how itis applied to feedforward modification ofoutput. In any system which is not amenableto feedback control, such as one involvingactions that are more rapid than the looptime that would be required to controlthem, or ones that would require very ex-tensive processing of feedback input, it isnonetheless possible to achieve considerablecorrection for moment to moment condi-tions by passing the basic output commandto both the next level of the output systemand to a controller which computes thenecessary deviations from the basic com-mand and forwards these to the lowerechelons of the output system. The conceptis diagrammed in figure 4. Thus, a reflexmotor loop which performs some functionsuch as walking sequences may need to bemodified from its basic pattern by infor-mation about head tilt from the vestibularsystem, while at the same time the reflexvestibular motor systems which keep thehead level may require information aboutwhat the stepping generator is about to do,in order to allow for impending body tilt.

The whole sequence needs to take placebefore any muscle action occurs which couldgenerate feedback information if we wish tomove swiftly and still avoid a fall.

The process is popularly called "coordina-tion," and the quality of yours is dependenton the excellence of your cerebellum. Whathappens in this process is as follows: se-quences of motor actions generated at anylevel of the hierarchical reflex "automaton"system, or at any high level system whichinputs to it, are also sent to the cerebellum,either as inputs to the parallel fiber decodingsystems or as inputs to the "other" elementswhich control interactions across parallelsystems and gate individual output elements.Thus, the waves of parallel fiber activitygenerated by different command systemscan interact in the cerebellum and modifyone another in predetermined fashions. Theresulting modified command is sent forwardas a set of corrections to the basic command,and the two interact at lower echelons toproduce a corrected action. (Yes, they canget there at the same time. We've got controlof transmission speed, remember.) One clearadvantage is the provision of a common siteof interaction for systems which are func-tionally related, but do not possess physicalelements in common.

Now that we've got it taking care ofinteractions and corrections, how do we get"dead reckoning" of movement parameters?This process relies on a parallel to serialconversion which uses time as an analog ofposition. A basic function of the cerebellarnuclei is holding or maintaining positions byappropriate outputs to the biasing elementsin systems such as the LMN system. Theoutput elements of the cerebellar cortexhowever act to inhibit the cerebellar nuclei.Thus, damage to the cerebellar nuclei resultsin tremor, oscillation, and similar signs ofexcess activity. Damage to the cerebellarcortex on the other hand results in deficitsrelated to underactivity, motions that fallshort of the target or fail to initiate. In thecase of a pure example of the "dead reckon-ing" type of motion (frequently referred toas saccadic motion), such as the motion ofthe eyes in fixing on a new point of focus,the motion itself is of constant velocity.(More accurately, it is driven by a constantinput, it clearly can't accelerate and deceler-ate instantaneously.) Given this, it followsthat the extent of the motion is determinedsolely by the duration of the driving signal.If the motion generating "automaton"circuits are held in check by the cerebellarnuclei, then action of the cerebellar cortexwhich inhibits the cerebellar nuclei dis-inhibits the motion generators and the move-ment begins. If the outputs of a group of

148

BYTE February 1978

Every computer

needs a ROM ,

- soloo you!

8 »»«»fMS«S«HSf«

Computers Challenge America's Cup by Eben Ostby □ A Beginner'sGuide to Peripherals: Input/Output Devices Your Mother Never ToldYou About by Leslie Solomon and Stanley Veit D Computer Country:An Electronic Jungle Gym for Kids by Lee Felsenstein □ The Best SlotMachine Game Ever by Tom Digate D The Micro Diet: Better Healththrough Electronics by Karen E. Brothers and Louise L. Silver □ ComeCloserandWe Won't Even Have to Talk by Avery Johnson □ TheKitandl,Part Four: Testing, Testing by Richard W. Langer □ Computer Modelsin Psychology by Joseph Weizenbaum □ Micro, Micro on the Wall, HowWilli Look When I Am Tall? by Stuart Dambrot □ Copycat Computer byTom Digate □ Talk Is Cheap by Hesh Wiener D Project Prometheus:Going Solar with Your Micro by Lee Felsenstein □ BASIC from the WordGOTO by Eben Ostby □ Chipmaker, Chipmaker, How Does Your CrystalGrow? by Sandra Faye □ The Kit and I, Part Three: Personality Plus byRichard W. Langer □ Make Me More Music, Maestro Micro by DorothySiegel □ Wings in Wind Tunnels: Computer Models and Theories byJoseph Weizenbaum □ What Is a Microcomputer System? by LeslieSolomon and Stanley Veit □ Maintaining Your Micro by O.S. (The OldSoldier) □ Time Sharing on the Family Micro by Barry Yarkon D TheWordslinger: 2200 Characters per Second by Stuart Dambrot D LightFantastic: The Kinetic Sculpture of Michael Mayock by Tom Moldvayand Lawrence Schick □ From Bombs to ROMs by Lavinia Dimond DGuard against Crib Death with Your Micro by Jon Glick □ HomeComputers: The Products America May Never Know It Needs by MartinHimmelfarb D Putting Two and Two Together by Tom Pittman □ TheWonderful Dreams of Dr. K by Hesh Wiener □ The Kilobyte Card:Memories for Pennies by Thorn Veblen □ The Unlikely Birth of aComputer Artist by Richard Helmick D Scott Joplin on Your Sci-Fi Hi-Fiby Dorothy Siegel □ Building a Basic Music Board by Eben F. Ostby DThe Compulsive Programmer by Joseph Weizenbaum □ The Very BestDefense (a short story) by Laurence M, Janifer □ Chart Up and FlowRight by Eben F. Ostby □ Computer Wrestling: The Program ofChampions by Lee Felsenstein □ Forget Me, Forget Me Not by AveryJohnson D PLATO Makes Learning Mickey Mouse by Elisabeth R.Lyman □ Charged Couples by Sandra Faye Carroll D Xeroxes andOther Hard Copy off Your CRT by Bill Etra □ TheKitandl, Part Two:or Power to the Computer by Richard W. Langer □ How ComputersWork by Joseph Weizenbaum □ Personally Yours from IBM by Eben F.Ostby □ A Payroll Program for Your Small Business by Robert G. Forbes□ Memories Are Made of This by Lee Felsenstein □ Memory, Memory,How Much Memory? by Stan Veit □ Software— The Genie in the Bottleby Tom Pittman □ Your Computer or Your Wife by Susan Gilpatrick □

Thecomputermagazinefor the curious

Every monthly issue keeps yon abreast of the latest microcomputerapplications for home, school, and office. Written by professionalswho know how to present microcomputing in a lively, readable,and understandable fashion, ROM is fun. ROM is instructive.ROM is everything you ever wanted in a computer magazine.

^ ~ : Z

<T Look what you've been missing without your monthly R0M1

Plus columns by Ted Nelson, Andrew Singer, Bill Etra, and A.I.Karshmer, on Artificial Intelligence, The Future, The HumanFactor in Computing.... Plus practical software, listings,

documentation, new peripherals, interfaces, games,more, much more.

And

COMPUTER APPLICATIONS FOR LIVING

ROM Publications Corp.Route 97, Box BHampton, CT 06247

Name

Address

City

State

Zip

U.S.A.: DOne year $15 DTwo years $28 □ Three years $39Canada ft Mexico: Please add $2/yr. additional postageEurope ft South America: Please add $12/yr. additional postageAll other continents: Please add $24/yr. additional postageD Check/money order end. □ Master Charge □ BankAmericardExp. date Card#

Please allow 4-6 weeks for delivery.

LI1

J

Circle 99 on inquiry card.

BYTE February 1978 149

output elements from the cerebellar cortexwhich are fired in sequence by the sameparallel input fiber fall on the same group ofneurons in a cerebellar nucleus, they willkeep that group inhibited, and the associatedmotion in progress, for as long as thesequential firing of output elements is main-tained in the cerebellar cortex. This will thendetermine the extent of the motion. Thecerebellar nuclear cells are OR gating theoutput sequence of the cerebellar cortex.

It follows then that if some high levelcommand system computes the type, direc-tion and extent of a required motion, it canpass this information to the cerebellum in aparallel form as a select request for aparticular set of input elements, and perhapsa set of gating and switching elements aswell. This request will set in motion a timesequence of activity in the cerebellum,which will be appropriately modified byinteraction with other current activity in thecerebellum, and output as a motion in spacewith a particular duration of action andspatial extent. Meanwhile, the requestingdevice is free to go about its business.

There are many kinds of activity whichrely heavily on this type of control, andmany of them are learned activities. A goodexample is playing the piano. This is clearlya learned sequence of movements, but oncelearned, the action is too rapid for guidanceby feedback from ear or eye. It has beensuggested that the learning of such motorsequences may proceed through the forma-tion of new functional connections in thecerebellum, so that the end elements of onesequence become select inputs for the nextsequence. In any event, we certainly coulddo it this way.

The action of the cerebellum involves alarge analog component, and although thiscould be, indeed has been, modeled with afast processor and an array of digital wordsto represent the states of output elements,this may not be the best approach. A devicewhich offers great promise for a very closeanalog to cerebellar operation is the surfaceacoustic wave (SAW) device which trans-forms electrical signals into surface waves ona piezoelectric medium, manipulates them inunique ways related to their travel time, andregenerates electrical signals at the outputs.A similar result can be achieved with chargetransfer devices. Tapped delay lines areeasily made, and many such in parallel on achip have been used for such tasks aselectronic focusing of imaging systems. Thistechnology would seem to offer a splendidopportunity for developing a "cerebellarchip." An excellent review of these devicescan be found in Brodersen and White's ar-ticle in the March 18 1977 issue of Science.

Higher Motor Systems

Turning now to the motor structures ofthe higher brain regions, we find two whichstand out as particularly important, the basalganglia and the motor cortex. These struc-tures operate in an interactive fashion in asupersystem which also involves parts of thethalamus, and which has important inputsfrom systems whose principle functions arebest regarded as cognitive and emotionalrather than motor. At this level of motororganization, the distinction between con-cept, desire, and action begins to blur, andthese "motor" systems may also be involvedin at least certain motor oriented aspects ofother functions. It is somewhat misleading,but probably necessary, to discuss separatefunctions for the higher motor systems. Thefact that they are parts of a functionalsupersystem should be borne in mind.

The motor cortex, more accurately calledthe somato-motor portion of the cortex, wasonce thought to be the highest level ofmotor integration in the brain because of thelate evolutionary development of the cortex.It now appears however that it is moreproperly viewed as a specialized parallelprocessor system which has been developedto refine and increase the resolution andprocessing speed of functions which aredirected from older structures. A notablefeature of the somato-motor cortex is amassive projection of large fast axons whichrun all the way down the spinal cord andend directly on the LMNs. Along the way,these axons give off many branches to higherlevel motor centers of the medulla, pons,cerebellum, etc. It appears that this directcommunication from highest to lowest levelsof the system allows high level commandsystems to reach around the motor auto-maton hierarchy for direct intervention. It isobvious that this type of control must beavailable to a system which is to have abehavioral repertoire that is not built solelyof stereotyped action patterns. This is partic-ularly true if the system is to have thecapability of constructing novel behaviorpatterns, either to meet a particular prob-lem, or to serve as a basis for learning newbehavioral repertoire items.

A Sense of Touch

Although systems such as the cerebellumand the basal ganglia have direct communica-tion with the hierarchical motor system tocontrol the many motor stereotypies whichit automatically generates and regulates,they also both access the somato-motor cor-tex, and apparently provide most of itsdirection and control. The somato-motorcortex then may be viewed largely as an ex-tensive decoder for cerebellar and basal gang-

150 BYTE February 1978

NCC 78

has what it takes.Everything.

The 1978 National Computer Conference has what ittakes to keep you up-to-date on the latest developmentsin computing and information processing. NCC '78 bringsit all together in a conference of unparalleled breadth anddiversity.. .the largest exhibit of computer products andservices ever held, a major technical and professionalprogram, a professional development series of seminars, alandmark Personal Computing Festival, featured addressesby leading industry authorities, and much more.

Mark down the time and place, June 5-8 in Anaheim,and plan now to explore new frontiers in informationprocessing at NCC '78.

At NCC '78 you'll get a closeup look at the latest com-puter hardware, software, systems, and services.. .allunder one roof at the biggest computer show on earth.More than 350 organizations, occupying over 1,300booths, will be on hand to demonstrate their latestofferings and to discuss cost-effective solutions to yourdata processing problems.

And this is just one part of the picture. »

To meet your information needs, a ^^technical and professional program ofapproximately 100 sessions will cover

25 topic areas dealing with computer methodology, appli-cations, systems, and societal concerns. Supplementingthis program will be a professional development series of12 tutorial seminars... each available for a separate nominalfee. In addition, a special Personal Computing Festivalwill be held in the nearby Disneyland Hotel complex.Included will be commercial exhibits of consumer com-puting products; a program of papers, presentations, andtutorial sessions; and a competition featuring individually-designed microprocessor systems and applications.

Act now to make sure you're part of the year's one com-puter conference that has what it takes to keep you up-to-date on new frontiers in computer technology, applications,and management techniques. Return this coupon toobtain your complimentary subscription to NCC Preview—a fact-filled newsletter covering all NCC activities andevents. Or, preregister now r «lfor the full conference and \"receive special discounts andQ other benefits.

kiffQ

□ I wish to preregister for NCC '78, and_have enclosed $60 covering conferencesessions, exhibits, other activities, pluspreregistration benefits.

□ Please send me all the facts about NCC78, including future issues of NCC Preview.

□ My company is interested in exhibiting atNCC 78.

Nc

Company.Street

City.BYT

.State.

.Zip.

NCC '78...

New Frontiers inInformation Processing

c/o AFIPS. 210 Summit AvenueMontvale. N.J. 07645telephone; 201/391 9810

Circle 83 on inquiry card.

BYTE February 1978 151

lia initiated actions. There is one situation,however, in which the somato-motor cortexis itself the originating device for motorfunction. That situation is the control ofaction based on feedback information fromthe sense of touch. The reason we refer to itas the "somato-motor" cortex is that thisregion not only contains the neurons whichgive rise to the axons controlling the lowermotor systems, but also the neurons whichreceive the input from the touch receptors inthe skin. The sense of touch is technicallyreferred to as "somesthesis." The specialrelation of the sense of touch to this systemis explained by the fact that a great deal offine motor control is under feedback controlderived from the various transducers forpressure and other sensations which com-prise the sense of touch. This is especiallytrue of organisms such as human beingswhich place so much behavioral emphasis onthe control of precise manipulative move-ments. While a great many movements whichare under feedback control may initially beunder visual guidance in reaching the generalarea, the fine control of the later stages isgenerally under the control of feedbackfrom touch receptors. When you pick up anobject with your hand, it is not your eyeswhich tell you how hard to squeeze, or justhow to grasp. (Have you ever used a key-board that didn't provide tactile feedback?)The somato-sensory function of thesomato-motor cortex involves elaborateencoding schemes which are similar to thosewhich we will consider later with the othercortical sensory systems. For now, suffice itto say that this information may act directlyon the motor output aspects of this regionto initiate motor activity in those caseswhere touch information is the appropriatecontrolling input. In other cases, this inform-ation may be used to provide correction tooutputs of the somato-motor region whichare being initiated and controlled from otherstructures.

The somato-motor cortex receives itsprincipal control inputs from a group ofnuclei in the thalamus, which in turn receivethe major share of their input from thecerebellum and the basal ganglia. Thesethalamic nuclei thus serve as preprocessorswhich synthesize directives for the sensori-motor cortex out of requests from severalsystems.

Homing in on a Stimulus

The final portion of the higher motorsystem which we shall consider in detail isthe collection of nuclei known as the basal

ganglia. I shall use this term to include somenuclei of the mesencephalon and dicnce-phalon as well which function largely inconjunction with the basal ganglia.

Just as the cerebellum is heavily involvedin the operation of feedforward and deadreckoning kinds of control, the basal gangliaare primarily involved in graded, feedbackcontrolled movements, particularly those ofa learned nature, or those under directconscious control. It can probably beregarded as the highest level in the commandsystem which has a primarily motor orientedfunction.

The structure of the basal ganglia at theneuronal level is entirely different from thatof the cerebellum. There is no obviouspattern of spatial arrangement to itsneurons, although both local and outputelements can be identified. The local ele-ments are much more numerous than theoutput elements, and form an extensivelybranched system within the basal ganglia. Itappears that most of these have an inhibi-tory action, so that neighboring elements arequickly turned off by any activity. Some ofthese connections are recurrent, so thatinput driven elements, too, tend not toremain active beyond an initial response toinput. This is in sharp contrast to thesituation in the cerebellum where the entireprinciple of operation is based on a propa-gated response in a neuronal network,initiated by a single input. The action of thebasal ganglia is of a sort called "self-quench-ing." That is, an input will initiate a burst ofactivity, but unless the input is maintained,or augmented by another input, it willrapidly inhibit itself. This is true not onlybecause of the local recurrent inhibitoryneurons of the basal ganglia, but alsobecause of negative feedback loops from thebasal ganglia to its inputs which tend todamp their initial activity. Notice the sim-ilarity of basal ganglia action to that of adifferentiator. If one could consider thespace coded byte of the active input ele-ments to the basal ganglia as encoding somestatic scheme of output for motor behavior,the temporal output byte of the basalganglia might be thought of as havingproperties similar to the first time derivativeof the behavior specified. This output wouldthen be decoded into commands to themotor cortex, cerebellum, and reflex motorsystem. By outputting this time decayingcommand, it is ensured that the behaviorwill not continue unless (1) the command issustained by some other means, or (2) a newcommand set is tried, producing a new set of

152

BYTE February 1978

Get Your FREE Subscription *

Find out all the LA TEST details about the

SECOND

^*COMIIST ON STRONG**

• A Major Conference Program(published Faire Proceedings to be available, on-site)

• Banquets with Fascinating Speakers• A MASS of Exhibits

Months Before the Second Faire,

the following 61 companies had already formally requested exhibit space:

Administrative Systems, Inc. Digital Group Paratronics, Inc.

Alexander Computers Digital Research People's Computer Co.

Anderson Jacobson, Inc. Dymax Phonics, Inc.

Apple Computer, Inc. Electronics Emporium International Processor Technology

Automated Business Systems Godbout Electronics Promedics Data Corp.

Berg Publications Heuristics, Inc. Quay Corp.

BITS Ibex RCA Laboratories

Business Solutions, Inc. Integrand Research Corp. SD Sales Co.

Byte Publications Interface Age Magazine Smoke Signal Broadcasting

Byte Shops of Arizona/Micro Age International Data Systems, Inc. Solid State Music

California Business Machines Ithaca Audio Southwest Technical Products Corp.

Camelot Publishing Co. Jade Co. Standard Engineering Corp.

Cherry Electrical Products Corp. Logical Machine Corp. Sybex, Inc.

CMC Marketing Corp. Micromation, Inc. Technical Publishing Co.

Compucolor Corp. Motorola, Inc. Technico, Inc.

Computer Kits Mountain Hardware, Inc. Tri-Tek, Inc.

Computer Room Neutronics United Technical Publications

Computer Warehouse Store Newman Computer Exchange, Inc. Vector Graphic, Inc.

Creative Computing North Star Computers, Inc. Ximedia Corp.

Cromemco, Inc. Osborne & Assoc, Inc. Xybek

Page Digital Electronics

FIRST West Coast Computer Faire

had • almost 13,000 people

• around 180 exhibitors

• almost 100 conference sessions

• four banquet speakers

all in just TWO days

SECOND West Coast Computer Faire

is THREE days long

March 3 - 4 - 5, 1978

9urn-6fnn 9atn-6f>7tl N<n>u-5}nn

San Jose Convention Center, San Jose, California

— in the middle of Silicon Valley

Get the FREE Silicon Gulch Gazette

for all the latest details:

• Send us your name & mailing address

• The Gazette -- a tantalizing tabloid touting the Faire

& offering

"hot news" and "raging rumor" regarding home & hobby computing.

COMPUTER FAIRE BOX 1 579, PALO ALTO CA 94302 D(415j

Circle 124 on inquiry card. byte February 1978 153

self-quenching output pulses. This feature isessential if the continuation of a behavior isto be made contingent on its consequences.The basal ganglia in fact have sets of inputswhich are precisely configured to achievethis contingency.

The outputs of the basal ganglia runprincipally to: the thalamus and thence tothe motor cortex; to the motor nuclei of themesencephalon and thence to the sub-systems of the reflex motor apparatus; andto the motor nuclei of the pons and thenceto the cerebellum. The basal ganglia are thusin a position to transmit information andcommands to all aspects of the motorsystem. There is little here that is notunderstandable in terms of principles wehave already dealt with, and it requires noelaboration.

The inputs to the basal ganglia, on theother hand, are the key to understanding itsfunction. There are three major componentsof the input. First, the entire cortex projectsfibers into these nuclei. These fibers, andthose of the second component which arisesfrom the thalamus (a structure which organ-izes the activity of the cortex, and processes10 for it), tend to make contact with a fewspecific neural elements in the basal ganglia.These two input groups may be thought ofas specifying discrete patterns of activationwhich are encoded by an action like a seriesof cascaded AND gates into a pattern ofactivity, or potential activity, on the outputlines of the basal ganglia. If output contin-uously, these outputs could be decoded bylower motor structures into specific move-ments. It appears however that these inputsalone are insufficient to sustain muchactivity in the face of the strong localinhibition generated by their own action.

The third input component to the basalganglia arises from a group of nuclei whichare related to other brain systems that detectthe rewarding or punishing quality of thestimulus pattern being decoded by thesensory systems. This input component has avery different distribution; it brancheswidely within the basal ganglia, each axonmaking synapses with tens of thousands ofneurons. As a result, it cannot specify anyvery specific pattern of activation in thebasal ganglia. Its action is diffuse, andprincipally temporarily coded. On the otherhand, it can exert a widespread gating actionon all ongoing basal ganglia activity. Thus,an input containing information about theintensity of the organism's emotionalresponse to the results of ongoing behavior iscapable of sustaining or inhibiting the nextphase of the behavior. Given the self-quench-ing nature of activity in the basal ganglia, itis easy to envision a process by which a

behavior "suggested" by the cortical andthalamic inputs is only sustained if the initialinput results produce a sustaining inputwhich strengthens the initial activationpattern, perhaps by summing with it toovercome the self-inhibition. The third inputcomponent is of course ideally situated forsuch a function.

In its most primitive form, this schemeresults in a sort of "homing device" whichwill cause an organism to follow an increas-ingly intense stimulus, such as odor, to itssource, such as food. That is, as the search-ing and locomotor patterns generated by theanimal result in increases or decreases in theintensity of the pleasurable stimulus, theyare appropriately facilitated or eliminated.Out of this simple feedback guidance mecha-nism, a host of more elaborate behaviors aredeveloped, by evolution and learning, withthe aid of the immense processing power ofthe cortex to provide detailed analysis of theenvironment and to generate more complexpatterns of behavior for trial.

At the present time, we cannot preciselyspecify the pattern of detailed connectionsin the basal ganglia which results in theseactions. The nature of its operation isinferred indirectly from evidence derived bystimulating its inputs or disabling itsoutputs. This evidence seems to establishthat normal operation of the basal ganglia isessential to orientation and approach tostimuli, and initiation of voluntary behaviorand complex learned behavior, particularlythat involving anticipatory actions. The con-vergence in the basal ganglia of processedsensory information from many areas of thecortex provides a source of feedback infor-mation which can interact with and modifybasic action plans generated by othercortical areas. Damage to the basal gangliacauses a loss of the ability to modifycomplex actions and judgements on the basisof sensory feedback. (This sort of feedbackmodification is distinct from the nonspecificsustaining action of feedback from thereward detector circuitry.) Finally, as predic-ted by the model outlined above, damage tothe diffusely connected third input com-ponent results in failure to initiate behavioror orient to and approach stimuli, whilestimulation of this component results incontinuation of the immediately precedingbehavior.

There is also a growing body of evidenceto indicate that the type of learning called"operant conditioning" (see the precedingarticle in this series) may depend on, or evenoccur in the basal ganglia. This type oflearning essentially involves an increase inthe future ability of a behavior pattern tocompete with other potential behaviors if it

154 BYTE February 1978

^*nenoeoM«JTEM4

CONFERENCE PROCEEDINGS

of the largest convention ever held

Exclusively Devoted to Home & Hobby Computingover 300 pages of conference papers, including:

(Topic headings with approximate count of 7"xl0" pages)

Friday & Saturday Banquet Speeches (16)

Tutorials for the Computer Novice (16)

People & Computers (13)

Human Aspects of System Design (9)

Computers for Physically Disabled (7)

Legal Aspects of Personal Computing (6)

Heretical Proposals (11)

Computer Art Systems (2)

Music & Computers (43)

Electronic Mail (8)

Computer Networking for Everyone (14)

Personal Computers for Education (38)

Residential Energy & Computers (2)

Systems for Very Small Businesses (5)

Entrepreneurs (6)Speech Recognition &

Speech Synthesis by Computer (14)Tutorials on Software Systems Design (11)Implementation of

Software Systems and Modules (10)High-Level Languages for Home Computers (15)Multi-Tasking on Home Computers (10)Homebrew Hardware (8)Bus & Interface Standards (17)Microprogrammable Microprocessors

for Hobbyists (18)Amateur Radio & Computers (11)Commercial Hardware (8)

plus

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

Order now from:

Computer Faire

Box 1579

Palo Alto CA 94302

(415)851-7664

Proceedings:Shipping & Handling:rtside Califomi^^—

Jifornians AdInside California:

$12.00 ($11.95, plus a nickel, if you prefer)

.68 (Write for shipping charges ouside U.S.A.)Payment must accompany the

.£££

.72 6% Sales Tax

jjHJSt

$13.40 Payment must accompany the order.

»x»ll, 1977 • sanf ranclsco

©77-1-10 by Computer FaireCircle 124 on inquiry card.

BOX 1579, PALO ALTO CA 94302 oOo (415)851-7664

BYTE February 1978 155

Figure 5: An equivalentblock diagram approximat-ing some of the basicrelations of the brain'sbasal ganglia (striatum).

is followed by activation of the rewardsystem. To achieve this, all that would berequired in addition to the basal gangliamodel we have described here would beprovision for activity in the diffuse inputfrom the reward system to lower the firingthreshold of neurons which were active atthe time of this input. No such mechanism ispresently known, although it is suspected,but in our robots it would be easilycontrived.

An electronic analog of the model ofbasal ganglia action described here is shownin figure 5. (This model does not include thelearning function just described.) Theessential features are: the provision of a setof gates to encode the simultaneous inputsfrom the many cortical regions which con-tribute to the design of the behavior; acircuit which shuts off the encoded outputafter a brief delay; and an enabling busrepresenting the input from the rewardsystem which inhibits the shut off circuit onactive gates. This model is only illustrative,and better ones could be designed to mimicbasal ganglia function. For example, theintensity of activity in the enabling busshould be employed to modulate theintensity of the output.

In practice, considering the very largenumber of gates required, and the fact thatoperation of the system is slow since itrequires direction from physical results ofactions, it will probably be best to simulatemuch of the gating and modulation insoftware on a fast processor. A few relevantprinciples are worth noting here. The ratioof input to output lines in the basal gangliais very high. It receives input fibers from theentire cerebral cortex, which is by far thelargest structure in the human brain. Outputneurons on the other hand comprise lessthan five percent of the neural complementof the basal ganglia. Clearly a great deal of

CORTICAL AND THALAMIC INPUT

II

N TO IDECODER

II

N TO IDECODER

REWARD BUS

II

N TO IDECODER

—| DELAY^-g>f- —I DELAY j-frf- —| DELAY [~W~

TO LOWER MOTOR SYSTEM

encoding takes place here; output line per-mutations are selected by gating an enor-mous number of inputs. Consistent withthis, the outputs undergo an equally enor-mous decoding and fan out into the entiredownstream motor system, ultimately speci-fying the actions of billions of LMN units.The basal ganglia outputs thus represent a"narrow spot" in the system, through whichmost of the organism's complex goal direc-ted behavior passes. Similarly, the rewardsystem which provides the gating or modu-lating input to this information flow repre-sents the ultimate distillation of analysis ofthe entire sensory world of the organism asit pertains to reward. The amount ofprocessing going on at higher levels togenerate behavior patterns, and the amountrequired to evaluate their effectiveness isawe inspiring. Yet, the closing of this mostcomplex feedback loop of all time is carriedout relatively easily thanks to interaction atthe "narrow points" of the two systems in asimple decision to keep going or quit doingwhat you're doing. The need for specificfeedback to the behavior generating ele-ments is thus eliminated. They simply trysomething else which they derive from estab-lished hierarchies or generate from similar-ities with past situations.

If we are to provide the capacity forrobot behavioral systems to modify largescale behavioral strategies on the basis ofevaluation of their effects, or if we wish toprovide an operant conditioning capability,it will be necessary to gate or modifymassive amounts of information. The mosthardware conservative approach may well beto emulate the basal ganglia system byallowing a simple statement of the evaluativesystem's reaction to perform a "more orless" modulation of the output of thebehavior generators at a highly encoded"narrow spot," and leave the behavior gen-erators to try again according to trial anderror algorithms, rather than trying tocorrect them directly. Specific feedbackinformation of a nonevaluative sort, such ascorrections to intended position from visualobservation of the limb, become part of thecommand pattern prior to modulation bythe evaluative system, simply by being partof the input pattern to be processed ingenerating the next attempted outputpatterns. These inputs could be handled by asoftware gating system, given processorspeed, and the intensity of the evaluativefunction could be digitally coded andapplied by software arithmetic rather thanby mimicking the brain's analog system.

Having looked at the detailed operationof some of the important components of thebrain's motor output system, let us finish

156 BYTE February 197S

CONVERT ANY TV

TO A HIGH QUALITY MONITOR

- NE* "

*■

MICH QUALITY

TTTTTTT ¥ V

T V V ■.*T V ¥ 1 '

t v

MOO — KITS

s

'/>

• 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 29315

Los Angeles, Calif. 90029

Calif. Residents add 6% Sales Tax

a

a

re you in the process of de-signing a turn-key computersystem?

o you have problems inter-facing the hardware?

Then you need the hardware specialistCOMPUTER MACHINE SERVICE.

CMS is in the business of assembling and repairingof microcomputers and equipment.

CMS is not in the business to sell computer equip-ment.

Our primary objective is to provide assembly serviceof the highest quality as well as prime quality repairservice on microcomputers and data communicationsequipment.

For information call: 213-328-9740or 213-328-9760

Or write: Computer Machine Service2909 Oregon CourtTorrance, CA 90503

FOR ALL YOUR HARDWARE PROBLEMSCMS IS THE ONE TO CALL.

IT'S A GREAT BIG COMPUTER WORLD

Z But You Only Need

*-THE COMPUTER CORNER:

"*~~ «SOL - A New Dawn Is Here!

~+*~ 'IMSAI 8080

~*~ •POLY-88

~+*~ »TDLZ-80

~w_ •Memories & I/O Boards

-*-

->f- •Computer Book Service

-►I— "Magnetic Tapes & Disks _

-►I- • Full Line of Magazines _

p\ • Brain Games & Puzzles _

H 'Workshops & Club Information

~y~ Visit THE COMPUTER CORNER for "

., all your computer needs. Stop in and

browse — you'll like our personal service.PI

wi THE COMPUTER CORNER

While Plains Mall - Upper Level-*r- 200 Hamilton Avenue

-^— White Plains, New York 10601

*

Tel: (914) WHY - DATA

Ample Parking10-6 Daily & Saturday

V , 10-9 Thursday v >

^T^TTTTTTTTT^

-f*.

^

Circle 122 on inquiry card.

Circle 25 on inquiry card.

Circle 21 on inquiry card.

DATA ACQUISITIONSYSTEM ON A CHIP

Nat. ADC 0816. 8-bit

A/D converter, 16 channel

multiplexer, latched address

inputs and TRI-STATE

latched outputs. Interface

up to 4 joysticks.

Microprocessor compatible.

Easy interface to 8080,

6800, 6502, 1802.

S26.00ea., pp. W/SPECS

•s SPECS, only .50 each S

Send check or money order to:

YESTRONICS

P.O. Box 1892South HackensackNew Jersey 07606

New Jersey residents add 5% sales tax.

Convert your micro into a powerful BUSINESSsystem by adding a DISYSTEM multiprocessingsatellite lor word processing and file management.

• Super smart floppy controller with powerfulresident DOS such as CPM or ISIS

• Expanded memory capability through 24-bitmemory addressing

• Dual main processor architecture with sev-eral I/O ports for expanded peripheralservice

Delivered assembled and tested. Now availablein kit also, with all PC boards, passive devicesand TTL gates $310.00

Specify S-100, Intel MDS/SBC or other bus op-tion. Send S2.00 for detailed 20 page report withschematics (refund if report is returned by returnmail) to:

SYSTEMATHICA

CONSULTING GROUP Ltd

P. O. BOX 10154 PITTSBURGH, PA. 15232

(412) 621-8362

61 AV. DE CHAMPEL

CH-1206, GENEVA

P. O. BOX 488

PICKERING, ONT. L1V 2R7

SERVICE!!!

TIRED OF WAITING 2 MONTHS?

NationalDigitalDiagnostics... can helphi

Your equipment is ordinarily on its wayhome within 5 days of its arrival.

SPECIALISTS IN SERVICING OF:

All S-100 Bus Micro Processors & Peri-pherals, TTL Circuits, "Home BrewProjects", other Micro Processors.

- Estimates Given Before Work is Done

- Equipment Returned C.O.D.

WHEN SENDING EQUIPMENT:-Ship via UPS Insured,

- Include hardware documentation & Sche-matics, if available,

- Include flat rate diagnostic fee of $10 in checkor money order. (Will be applied against costof any repair work done.)

FOR MORE INFORMATION CALL:N.Y.C. (212)929-1694L.I. (516)334-3998NATIONAL DIGITAL DIAGNOSTICP.O. BOX 728-NEW YORK, N.Y. 10011

Circle 129 on inquiry card.

Circle 113 on inquiry card.

Circle 81 on inquiry card.

COMPUTER MARTOF

NEW HAMPSHIRE

» •

DEALERS FOR:

wM AND MANY MORE

• •

170 MAIN STREETNASHUA (603) 883-2386

THE

i COMPUTER^^ HARDWARE

STORE ML

Dealers for:

APPLE II, IMSAI

VECTOR GRAPHIC, KIM-1

TECHNICO, OAE

CYBERNEX, JIM-PAK

TERMINALS, PRINTERS

BUSINESS SYSTEMS, BOOKS

SOFTWARE AND MUCH MORE

CATALOGUE AVAILABLE

81 8 Franklin Street 9 West Cary StreetAlexandria, Virginia Richmond, Virginia(703)548-8085 (804)780-0348

TYSON'S CORNER, VIRGINIA(WASHINGTON, DC. AREA)

THE

COMPUTER SYSTEMSSTORE

"Specializing in Systems"

FEATURING:

Processor Technology

Lear Siegler

Poly Morphic

DEC

Diablo

SWTPC

E & L

Seals

Vector Graphics

Digital Group

Apple

TDL

CROMEMCO

Books — Magazines

COMPUTERS FOR HOME. SCHOOL, & SMALL BUSINESSOur staff will help you select from the best of each manufac-turer lo complete the syslem best suited to your needs

SPECIAL: LEAR-SIEGLER ADM 3A

CSS

CDmPUTER SYSTEFTIS STORE

1984 CHAIN BRIDGE ROAD, McLEAN, VA. 22101TELEPHONE (703) 821 -8333

OPENING SOONALEXANDRIA, VA ■ NORFOLK, VA • BALTIMORE WD • ORLANDO ELA

Circle 26 on inquiry card.

Circle 23 on inquiry card.

Circle 30 on inquiry card.

REWARDSYSTEM

HIERARCHICALREFLEXMOTORSYSTEM

LMN SYSTEMS

Figure 6: Overall patternof information flow in thebrain's motor output sys-tem. A "top down " hier-archy of control Is modi-fied by inputs at multiplelevels.

with it by looking at a schematic summarywhich emphasizes the interactions of thedifferent parts of the system. Figure 6 showsthe main routes of information flow in thesystem, together with the major controllinginputs. Some of the "black boxes" such as"reward system" will be covered in futurearticles.

One of the outstanding features of thesystem taken as a whole is that it doesfunction in an organized and integrated way,despite the fact that its parts are in manyways autonomous, and certainly notsynchronized in their operation. A key tothis capability is the provision of statusinformation to each unit of the system byeach of its neighors, and the ability of eachto employ this information in an intelligentway in formulating its own output. Afurther refinement is the provision of astructure such as the cerebellum wherestatus information from diverse systems caninteract to generate correction informationwhich returns into the main line of therelevant systems. Wide scale availability ofinformation from special movement relevantsensory input systems is another unifyingfeature.

If we leave out the "behavior generatingsystem," which is properly a decisionmaking system to be considered later, not asystem for execution, we can discern fourmajor portions of the motor system(although some structures service more thanone portion). The first is a system whichhandles most of the routine traffic according

to established rules, and provides automaticelaboration according to established ruleswhen given high level commands. Thesecond is a system which converts parallelstatements of action patterns into seriallyexecuted instructions to the first system.The third system provides a highly intel-ligent output terminal which can access thefinal output elements directly in the serviceof any of the higher systems on request. Theessential feature here is that it is a parallelcontrol for refined special purpose control,and is not necessary for most routines.Finally, a fourth system provides for inter-action of the high level decision makingsystems with elaborately processed feedbackinformation to generate complex instruc-tions to the other systems, after screeningthem for effectiveness.

In this constellation of functions, we findthe capability to deal with rapid emergencymovements, automatic compensation forexternally imposed deviations, fine gradedcontrol under the direction of any sensoryinput, and the execution of arbitrary novelpatterns. The organizing principle whichseems to best define the system is itsemphasis on successively more abstract com-mand functions at higher levels in thesystem, and a corresponding increase in"situation free" statements. That is, a highlevel element can issue a "walk" commandwithout being concerned about the nature ofthe terrain. It has distinct analogies to highlevel programming languages. We shall see asimilar organization in reverse in the sensorysystems, where detailed information at thereceptor level is gradually reduced topowerful statements of object recognition,independent of details of the sensation asthe information ascends in the system.

Even with all of this elaborate apparatusto direct and coordinate body motion, theproblem of movement in the generalizedenvironment remains a challenging one.Despite the massive investment in processingpower that the brain has devoted to theproblem, we still fall down sometimes.Producing a robot system that evenapproaches the brain's abilities will be agreat challenge."

BIBLIOGRAPHY

Elementary

Llinas, R, "The Cortex of the Cerebellum,"Scientific American, January 1975.

Advanced

Kornhuber, H, "Cerebral Cortex, Cerebellum,and Basal Ganglia: an Introduction to TheirMotor Functions," Neurosciences, Third StudyProgram, Schmitt, F, and Worden, F, eds,MIT Press, Cambridge, 1974.

158 BYTE February 1978

Reactions to

Previous

Comments

Leigh Janes23B Robbins LnRocky Hill CT 06067

I'd like to comment on some of the itemsin your November 1977 Languages Forum,page 190.

I think Glen Taylor's idea for a "personalcomputer language development society" isgreat! I only hope he gets people whoseminds are open enough to be able to borrowthe strengths of any existing language. Alas,I am not experienced in microcomputers norlanguage design; the only thing I could offeris enthusiasm and a little experience in usingsome of the current languages (although Inever did discover how to actually useLISP).

If Jeffrey Kenton can't offer Peter Skyeanything other than a prophecy of failure,he should have saved his time and stamp.("The proposed PL/Skye will make no onehappy." You never know, Jeff, it might beecstatic.) RPG on a micro? Super idea! (Thepremise is that anything which helps makeany computer easier to use is a good idea.)Terrible early experiences with PL/I? That'sno reason to quit; surely we can learn fromthat and do better in the next attempt.

My only contact with PASCAL has beenvia A Primer on PASCAL by Conway, Griesand Zimmerman which leaves out a lot ofstuff (because it is really a primer on pro-gramming which merely uses PASCAL forits examples). My objections to what I'veseen of PASCAL are: the apparent necessityof "declaring" every symbol in the programbefore using any of them; the apparent re-quirement of numbering a statement to goto (I want to name it); and the clumsiness ofcharacter string handling."

BC5SDK1ISSS

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, LEFTS, RIGHT$,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

MORE.FOR ONLY

Including Extensive User's Manual

Manual only $15.00

99

BUSINESS APPLICATIONSPROGRAMS For CP/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 GLdesigned 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 al I or selected portionsof a file. Written in CBASIC $79

To Order or ForMore Information, Write:

/tructurecl /y/tem/ Group

5615 KALES AVENUE

OAKLAND, CALIFORNIA 94618

(415)547-1567

California residents add 6Vz % Sales Tax.Prepaid or COD only.

Dealerinquires InvitedCP/M is a trademark of Digital Research.

Circle 111 on inquiry card.

BYTE February 1978 159

r

A BIT Of The Best

Build Your Own Working Robot by

David L Heiserman, published by TabBooks. This book will not tell you how tobuild Robbie, the robot of ForbiddenPlanet, or a classical android of sciencefiction. What it will introduce you to is theproblems of making a robot mobile devicecalled Buster III, using pre-microprocessorTTL integrated circuits for all logic func-tions. It is a must book for backgroundreading, but much of the logic can beextremely simplified using today's micro-processor technology. Use this book as afirst look at these problems from which youcan build further and more elaborate solu-tions. Softbound, $5.95.

Getting Involved With Your Own Com-puter by Leslie Solomon and Stanley Veitanswers the questions: "What can smallcomputers do? Which is best for 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.

The Texas Instrument Reference Library

.Fingertip Math, $2.95

.Software Design for Microprocessors, $1 2.95

_The Great International Math on Keys Book, $4.95

.TTL Data Book, $4.95

.Semiconductor Memory Data Book for Design Engineers, $2.95

.Transistor and Diode Data Book, $4.95

.Power Semiconductor Handbook for Design Engineers, $3.95

.The Optoelectronics Data Book for Design Engineers, $2.95

.Understanding Solid State Electronics, $2.95

.Designing With TTL Integrated Circuits, $28.50

.Bipolar Microcomputer Components Data Book, $2.95

NEW!

L

Computational Analysis on the Pocket

Calculator contains some 35 programswritten for a specific programmable pocketcalculator, the HP-25. These programsimplement algorithms in number theory,equation solving, algebraic stability theory,calculus of power series, numerical integra-tion as well as algorithms for the evaluationof special higher transcendental functions,such as the Gamma function, various Besselfunctions, the error integral, and theRiemann zeta function.

A unified format has been chosen forthe preparation of the programs. By meansof the flow diagrams and the detailed de-scriptions that are provided, the programsare easily adapted to run on any calculatorof comparable capacity. $11.50.

_The First West Coast Computer Faire

Conference Proceedings. Here's a big pack-age of fascinating information and practicalguidelines from the symposia held at the1977 West Coast Computer Faire. The FirstWest Coast Computer Faire ConferenceProceedings contain 336 pages covering:tutorials for the computer novice; humanaspects of system design; robots (includingthe text of a talk by science fiction writerFred Pohl); computers for the physicallydisabled; legal aspects of personal com-puters; education; electronic mail; musicwith computers; hardware; software— thelist goes on. This compendium will make auseful addition to your reference shelf, sinceit contains many hard-to-get items. Youcan't miss for $12!

William Ralph Bennett Jr's Scientific

and Engineering Problem Solving With TheComputer is one of the most excitingbooks we've seen in years. Besides teachingBASIC (which it does admirably), thislively, lucid book presents a wealth ofimaginative and unusual applications pro-grams taken from many disciplines (Asample exercise: "Using the algorithmin the text with the pair-correlation matrixfrom Hamlet, compute the most probablediagram path which starts with the letterT"). The exercises run the gamut fromrandom processes to the dynamics ofmotion, from entropy in language to theWatergate problem. You'll discover BASICapplications in lasers and in the Fourierseries and the law (I). In its diversity andelegant style, it ranks with Donald Knuth'sworks as a milestone in the art of com-puting. Hardcover, $13.95.

160 BYTE February 1978

Scelbi "6800"

Guide & Cookbook

Software Gourmet

Scelbi "8080" Software Gourmet

Guide & Cookbook, both by Robert Find-ley. Have you tried cooking up a programlately on your 6800 or 8080 processor?Have you needed a dash of ideas on how toadd spice to a program? Then the Scelbi"6800" Software Gourmet Guide & Cook-book and the Scelbi "8080" SoftwareGourmet Guide & Cookbook may prove tobe quite useful additions to your library.

Both books contain a wealth of infor-mation on the 6800 and 8080 instructionsets, plus general programming techniquesapplied to the 8080 and 6800, conversionroutines, floating point routines, decimalarithmetic routines, and much more. Orderyours today and get a taste of what yourprocessor can do. Both books are priced at$9.95 each.

^

Old Favorites

Basic BASIC by James S Coan. If

you're not already familiar with BASIC,James Coan's Basic BASIC is one of thebest ways to learn about this popularcomputer language. BASIC (which standsfor Beginner's All-purpose Symbolic Instruc-tion Code) is easy to learn and easy to applyto many problems. Basic BASIC gives youstep-by-step instructions for using a ter-minal, writing programs, using loops andlists, solving mathematical problems, under-standing matrices and more. The book con-tains a wealth of illustrations and exampleprograms, and is suitable for beginners atmany different levels. It makes a fine refer-ence for the experienced programmer, too.$7.95.

Advanced BASIC by James S Coan.

Advanced BASIC is the companion volumeto James Coan's Basic BASIC. In this bookyou'll learn about some of the more ad-vanced techniques for programming inBASIC, including string manipulation, theuse of files, plotting on a terminal, simula-tion and games, advanced mathematicalapplications and more. Many useful algor-ithms are covered, including some cleversorting techniques designed to reduceprogram execution time. As with BasicBASIC, there are many illustrative exampleprograms included. BASIC doesn't have tobe basic with Advanced BASIC! $6.95.

The Art of ComputerProgramming

Praised by many critics as the best books in their field, The Art of Computer Pro-gramming, Volumes I, II and III, are part of a projected seven volume omnibus survey ofcomputer science now being completed by Donald E Knuth.

Volume I, Fundamental Algorithms, begins with a thorough discussion of the

mathematics used in computer programming, followed by a treatment of informationstructures, stacks, arrays, linked lists, dynamic storage allocation, and trees. 634 pp;$20.95.

Volume II, Seminumerical Algorithms, is concerned with random numbers, statisti-cal tests, random sequences, as well as arithmetic (floating point and multiple precision),polynomials, and rational arithmetic. 624 pp; $20.95.

Volume III, deals with Searching and Sorting, and as the name implies, the em-phasis is on algorithms for sorting, including combinatorial properties of permutations,internal sorting, optimum sorting, and external sorting. Also included is a section onsequential searching, hashing, digital searching, and more. 722 pp; $20.95.

A hypothetical assembly language called MIX has been developed by the author toillustrate programming examples throughout the series. MIX is easily convertible to otherassembly languages.

Prof Knuth writes with style and wit (among many memorable quotes is one fromMcCall's Cookbook\). This classic work belongs on the reference shelf of everyoneseriously interested in computer science.

Order By Telephone

WATS up? The BITS toll free hotline is now available for customer orders. Dial your bank card ordersMonday through Friday between 9:00 a.m. and 5:00 p.m. Eastern Standard Time. 1-800-258-5477. InNew Hampshire, call 924-3355. Before you dial, please have ready your BankAmericard or Master Chargecredit card number and expiration date, the titles of the books you wish, and your shipping address.To call about an order—Please dial (603) 924-3355.

DIAL YOUR ORDERS ON THE BITS TOLL FREE HOT LINE: 1-800-258-5477.

In New Hampshire, call collect: 924-3355 Check Payment method:

Send to: ^Mt ^"v cnec'< 's enclosed

BITS, Inc. _— ' Bill my MC No

70 Main Street mliSim mrnH .Bill my BAC No

Peterborough NH 03458

Name

Address

Total for all books checkedPostage, 50 cents per book for_

QiVL.

Slate

Zip Code

Overseas, 75 cents per book for.

Grand Total

Signature

. Exp. date .Exp. date .

.books S__books $_

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.

J

Circle 9 on inquiry card.

BYTE February 1978

161

Programming Entomology

Gary McGath

7 Silver Dr

Nashua NH 03060

Clobbered Value Bug:Your program changes thevalue of a variable at atime and place which isunintended. The detectiondifficulty ranges from theobvious (after if is found)to the subtle (before it isfound).

An entomologist is a bug expert. When hesees an insect, it isn't just a bug to him (infact, he will vociferously protest that not allinsects are bugs); it has a particular habitat,lifespan, favorite food, and breeding pattern.Nor is his knowledge just academic; he cantell you how to protect yourself from aharmful one by killing it or keeping it away.

The same sort of knowledge is necessaryfor programming. The skilled programmerknows what kinds of bugs may attack aprogram, how to track them down, and howto keep them from getting there in the firstplace. He knows the ways to get at particularbugs, as well as the general treatments whichare effective against all of them.

The first thing to realize about bugsis that they don't appear by spontaneousgeneration. They have a creator, and theircreator is the programmer. (Throughoutthis article, I am speaking only of userprogram bugs; hardware bugs are an entirelydifferent breed, subject to different laws,and systems software may be beyond yourcontrol. No matter how outrageously theprogram is acting, it's only following orders.So what you have to ask about a bug inyour program is: how did you put it there?What kinds of mistakes are you prone tomake? If you caught a certain bug in onepart of the program, might you have putthe same kind of bug elsewhere as well?"Thou art God" . . .and thou must takecare of thy creation.

But the fact that each programmercreates his own bugs doesn't mean therearen't species of bugs found in everyone'sprograms. Knowing about these species canbe a great timesaver, especially when thespecies can be identified by the effects.

One of the most common bugs is theClobbered Value, found where the pro-grammer assumes the content of a register

or the value of a variable is the same asbefore, but it isn't. Take this attempt toexchange the values of two variables:

10LETX = Y20LETY=X

This fails because when statement 20 isexecuted, the value of X has already beenclobbered by the previous statement, withthe result that Y never gets changed at all.

Clobbered Values are frequently foundon subroutine exits. It's easy to write aharmless looking CALL or GOSUB (possiblyto a routine you haven't written yet) andassume everything will remain the same. Butstrange things can happen if the subroutineunexpectedly changes some values.

A not too distant relative of the Clob-bered Value is the Zapped Stack, found onlyin machine and assembly code. It appearsmost often by pushing items onto the pro-gram's stack at the start of a subroutine,then failing to pop them, or popping toomany things at the end. Another way toinvite this bug is to use the stack pointerfor some other purpose during the courseof a subroutine.

Subroutines are also the habitat of theBotched Call. A certain protocol is neededto call any particular subroutine. If, whenyou write a call to a subroutine, you expecta value to be returned in the wrong place,or you assume the subroutine will do some-thing which it actually won't (or vice versa),this bug will have gained a foothold. Thedifference between a Clobbered Value anda Botched Call is that when you have thelatter, the subroutine is doing the rightthing; the calling program is just mistakenin its expectations.

Another species of bug lurks in jumps,branches, and GOTOs. The Branch Bug

162

BYTE February 1978

Zapped Stack Bug:

Stack oriented machines

and software are both

very egalitarian with

respect to pushes

and pops. They like

to have the same

number of items pushed

as are later popped, or

else they'll transform

themselves from tranquil

and placid programs into

memory zapping monsters.

.\ ' /,

nmr\

is so difficult to fight that serious attemptshave been made to wipe out its habitat;languages and programming styles (struc-tured programming) have been developedthat use no jumps. The Branch Bug comesin two varieties: jumping to the wrongplace, and jumping to the right place withinadequate preparation. The first of theseis easy to produce in languages wherestatement labels have to be numbers (eg:BASIC and FORTRAN, especially BASIC,where every statement has to be numberedwhether it's ever going to be a jump destina-tion or not). The jump with inadequatepreparation is similar to the Botched Call,but it can often be harder to figure out if theprogram has a complex flow pattern.

A few special methods are applicableto fighting the Branch Bug. One of theseis program flow analysis. A look at thepossible paths a program can take willoften reveal some of these bugs. Is therea part of the program that can never bereached? Are there traps in the program,loops that can never terminate? Are therejumps which will result in variables beingused without having been set to a value?

In languages like BASIC, where everystatement is labeled, it's helpful to set offstatements that can be reached by jumpseither by using special statement numbersor by pointing them out in comment state-ments. In any language, the statementsthat can be reached by jumps should belogical breaking points in some sense,places where a new unit of work begins.Except in desperate situations whereeconomy is all-important, jumps shouldbe used to satisfy the logic of the program,not to save a few instructions.

If a subroutine call can be used insteadof a jump, it probably should be used. Asubroutine will send you back where you

came from, so figuring out the flow of theprogram is easier. For many purposes,you can treat a subroutine as a unit whenstudying the program; as a single instructionthat happens to do complicated things.You can't do this with the instructionsreached by a jump.

The next bug in our survey feeds onapples and oranges. More generally speaking,the Mismatched Unit is found where theunits or dimensions of the quantities beingused in a program aren't the ones actuallyneeded. Take the program statement LETV = D * T, where D is a distance in miles,T is the time traveled in hours, and V isintended to be the traveler's average velocityin miles per hour. By using simple algebraon the units, you can see that the resultobtained will be units of miles times hours,not miles per (ie: divided by) hour.

Bugs of this type are harder to spot whenthe mismatched variables are further apartin the program, but consistency will keepthem from occurring. Simply be sure youknow in advance what units each variablehas to come in.

Assembly and machine language program-ming allow an especially messy type ofMismatched Unit to show up: mismatchesbetween addresses and data, or betweenabsolute addresses and relative addresses(values to be added to a base address). Toavoid this bug, watch out for the differentaddressing modes of different instructions.

Another bug with a specialized habitatis the Fencepost Bug, named for its ten-dency to rest in problems like this one:"If you are putting up a wire fence 100feet long, supported by posts every 10 feet,how many posts do you need?" Anothername for this bug is the Boundary ConditionBug; it's always found in connection withthe start or end of some sequence, where

Botched Call Bug: The

Botched Call Bug is like

the proverbial square peg

in a round hole: Unless

the peg or the edge of the

hole yields, sparks will fly.

BYTE February 1978

163

Branch Bug: Jumpingblindly about in memory,the Branch Bug is alwayson a collision course withvalid execution of aprogram.

special treatment is needed. One formmanifests itself in confusion over whetherthe first element of a group is number 0 ornumber 1. Another is found in the attemptto relate each element of an array to thenext, as in this statement:

IFT(l)<T(l+'l)GOTO 100

Try this one setting I equal to the dimensionofT.

Finally, we come to the most insidiousof all bugs, the Timing Bug. The character-istic that makes this bug so fearsome is thata program infested by one may run correctlyonce but not the next time; it may even runcorrectly 99 times but fail on the hundredth,using exactly the same data each time. Tomake matters worse, running programs insingle step mode will usually drive TimingBugs into undetectable hiding.

As the name suggests, the Timing Bug isone that shows up depending on the orderin which asynchronous events (events thathave an unpredictable relationship in time)occur. Systems that have interrupt facilitiesare especially prone to being attacked byTiming Bugs, since an interrupt routine maybe executed at a different point in the pro-gram each time it's run. An interrupt routinemay, for instance, set up certain variablesto be used by the main program. If anotherinterrupt of the same kind can occur beforethe variables have been processed by themain program, and if that interrupt changesthose variables, unpredictable results canoccur. Yet most of the time, interruptsmay not occur that close together, so thebad result is said to be nonrepeatable. Thismeans that repeated runs of the programcan't be used to systematically close in onthe bug.

A Timing Bug can also live on directmemory access (DMA). Some massstorage devices can read or write data inbulk without the intervention of theprocessor, using those memory accesscycles which the processor doesn't use.

Mismatched Unit Bug: A

result of inadequate

analysis of a calculation,

the Mismatched Unit Bug

results in strange elixirs.

When both apples and

oranges are thrown into

the analytical engine,

what is the nature of the

juice which flows out?

The length of time a DMA transfer willtake is, at best, very difficult to predict;so a Timing Bug can strike if memorywhich is accessed by DMA can be accessedor modified by the processor.

Since Timing Bugs are so hard to huntdown, extra efforts should be made to avoidgiving them a foothold. Be extra careful inwriting interrupt handlers or DMA com-mands. Watch for places where interruptsneed to be disabled. As for the indentifica-tion of Timing Bugs, the following rule isuseful: if you can prove, in a precise instruc-tion by instruction study, that whathappened couldn't possibly have happened

The Timing Bug: Thismost subtle of all bugs

spends most of its timerelaxing, and suddenly

taking a swipe at appar-ently random times.

164

BYTE February 1978

from the execution of those instructions,suspect a Timing Bug; something else washappening during the execution of thoseinstructions.

Incidentally, it's possible to encounterbugs much like Timing Bugs even withoutinterrupts or DMA. An input or outputdevice, such as a keyboard, is asynchronouswith the program; the exact behavior of theprogram will depend on the behavior ofthese devices. For instance, a programwhich accepts keyboard input and accu-mulates it in a buffer may work fine foryou, yet a faster typist may make it failbecause no provision was made for thechance of exceeding the buffer's capacity.But in a situation like this, it's at leastpossible to look at every call to an inputroutine and tell what its effects might be.

This completes our survey of importantspecies of bugs (I have nothing useful to sayabout the Common Typo, though it doeshave to be fought). Others will no doubtdiscover voracious breeds which I haveoverlooked, and perhaps they will improveon some of the classifications I have men-tioned. But knowing about the specieswhich are listed here will hopefully bea help in identifying and killing the bugsin your own programs.

This doesn't mean that classifyingbugs is all there is to entomology, neitherthe biological kind nor the kind beingdiscussed here. Entomology wouldn'tbe a science if it couldn't say things thatare true of all bugs, regardless of species.What I have discussed so far is differentia-tion; but integration is equally important.

The basic fact that unifies all bugs is theone which I mentioned at the beginning ofthis article: they're all creations of the pro-grammer. And this fact allows the use of abroad-spectrum killer against all bugs:DDT, standing for Design, Documentation,and Testing. Let's take them in order:

• Design. The best way to stay bug-freeis to write programs without bugs. This maysound like superfluous advice, but pro-grammers (myself included) are oftentempted into writing programs quickly,rather than writing them well. The attemptusually fails, since such programs willusually cost more in debugging time thanthe time saved in writing them.

An error born of pragmatism is tosuppose that it doesn't matter how youdesign a program, as long as it works.There are two problems with this idea.

The first is that if you use any methodthat appears to do the job, withoutregard for well organized design, it willbe a lot harder to ever make the programwork. The second problem is that even ifthe program works for its immediate pur-pose, it will be harder to make changes tomeet new needs, since a particular ad hocsolution may not be generalizable.

The first step in designing a program -isto lay out a complete plan of attack beforewriting it. Decide what data structures youwill need, and what method you will use.Data structures are often the key to thewhole program. First plan the program in afew large steps; then decide what each stepwill consist of in more specific terms; thenrepeat the procedure until you're down tothe level of your chosen programming lan-guage. This is the principle of structured pro-gramming, and also of mental unit-economy:avoid having to think about more things atonce than your mind can handle. If you cankeep everything relevant to a particularoperation in your head, you're not likely toput bugs into its implementation.

Flowcharting is often recommended forprogram design, but it's cumbersome anddoesn't lend itself to representing a hierar-chical design. Another approach is to use awell designed programming language, such asALGOL or APL, to write the design. Sinceyou aren't actually going to run the programin that language, you can assume any fea-tures that would make the job easier. Thepoint of this is to have a representation ofthe program that you can understand with-out strain, so that you don't lose sight ofyour overall plan while chasing down detailsof implementation. If you do have bugsafter doing this, at least they won't be partof the whole design of the program.

• Documentation. The main reason forwriting up the way a program works isn't toexplain it to someone else; it's to make sureyou understand it yourself. Documentationshouldn't be an afterthought; it should beginwith the design of the program (when youwrite what it is going to do), and continuewith comments written along with theinstructions.

Good documentation isn't found in sheernumber of comments (though there shouldbe a lot); it's found in comments that ex-plain the operation of the program. Com-ments are especially needed for data, sub-routines, and points reachable by jumps.Variables and constants should be explained

BYTE February 1978

165

so that the reader will see how they can beused; this allows us to spot threats tothem, such as Mismatched Units and Clob-bered Values. If the language allows, giveconstants names rather than using theirnumeric values throughout the program;this makes updating easier and rendersthe Common Typo's attacks more con-spicuous. Subroutines should be prefacedwith a description of how they are called,what inputs are needed, what values arereturned, and what information may bedestroyed in the process. Jump pointsshould have an explanation of the con-ditions under which they are reached.

To make a program at least partly self-documenting, the name of a routine orvariable should indicate its use. One of themajor weaknesses of BASIC is that it doesn'tallow this to be done very much; this is areason for having a lot of comment state-ments to explain what BASIC variablesand subroutines are used for.

Just as a sample, here's a preface to ahypothetical 8080 assembly language sub-routine (see box). The comments explicitlydefine linkage conventions.

COMPUTE PROBABILITY OF WIDGET BREAKAGE

INPUT - MASS OF WIDGET (GRAMS) IN REGISTER PAIR BC

AGE OF WIDGET (DAYS) IN REGISTER PAIR DEOUTPUT - PROBABILITY OF BREAKAGE (PERCENT) IN REGISTER PAIR BCALL OTHER REGISTERS ARE CLOBBERED

The protection provided against BotchedCalls should be obvious.

• Testing. If you follow the approachoutlined so far, you'll have a better chanceof getting your program to work, but youmay still have planted a few bugs inadver-tently. So you have to test the programbefore declaring it bug-free. Testingshould begin with a simple version of theprogram, if possible; but it should beginonly after the program has been writtenwith enough care so that there's a chanceof not finding any bugs.

Use whatever debugging tools are avail-able. High-level languages will usually pro-vide useful information when the programgoes wrong. Versions of BASIC that allowsingle statements to be executed make itpossible to find something about theconditions under which an error occurred.

When working in machine language, adebugging program will ease discovery ofbugs. Such a program allows the user toput breakpoints into the program beingtested (returning control to the debugger

when the program counter reaches a certainaddress) and to examine and modify regis-ters and memory. These programs rangefrom simple 1 K monitors to powerfulsymbolic debuggers like Digital EquipmentCorporation's DDT (Dynamic DebuggingTool, no relation to the name as used here).Having one of these in ROM can be atremendous help.

If the program works the first time, try itagain with different data to make sure.Check out simple cases. Sometimes a pro-gram will work in complicated cases, but bebitten by the Fencepost Bug in simple ones.Check out more complicated cases. Ifpossible, use a random number table as asource of test data, along with handpickedcases.

If the program doesn't work the firsttime, try it again with different data. Aimfor the simplest case possible. If you canget the program to do something right,that will cut down the number of placeswhere bugs may be lurking.

When a program is being tested, the workis easiest if execution comes to a screechinghalt as soon as something goes wrong. Aprogram may be able to run a while aftercrucial damage has occurred, only toclobber all of memory before stopping.If this happens, it can be almost impossibleto localize the source of the disaster. Butif the program makes periodic checks forerror conditions (such as impossible valuesor invalid relationships) and reports them,there's a better chance of discovering justwhere things went wrong. For instance,a routine that fills a block of memorybetween two addresses might check to makesure that the low address is really lowerthan the high address. Redundant testsmay slow down the program, but theycan be taken out when all the bugs areknown to be dead.

The overriding consideration to remem-ber in the use of this Design, Document andTest technique is that it's open-ended. Itwill, in principle, kill any kind of bug; buta new approach to design, a better schemeof documentation, or a novel test may beneeded for subtle species. Approachingbugs scientifically means thinking aboutthem. It means recognizing that any bugwill have important similarities to pre-viously encountered bugs; and that it mayhave equally important differences. Sowhen you find yourself struggling to dis-cover what's wrong with a program whosebehavior is incomprehensible, you canconsole yourself with the thought that youmay be about to make an exciting entomo-logical discovery that you can use repeat-edly."

166

BYTE February 1978

TechnicalFwum

Measuring Program Size

In March 1977 BYTE (page 106) DavidPrice presents a Star Trek program which isapparently written in Hewlett-Packard'sBASIC, and he states that the program is9382 bytes long. This figure can be mis-leading in that, unlike many computers, HPdoes not store programs in source code, butrather in an internally coded form. Thus thelength of a program is dependent on factorsdifferent from ones which would be relevanton another system.

For example, a constant uses two wordsof memory any time it occurs in the pro-gram, but a variable uses no more memoryif it occurs 50 times than if it occurs onlyonce. Hence a program can often be signi-ficantly shortened by setting variablesequal to commonly used constants at thebeginning of the program, and thereafterusing these variables instead of the corres-ponding constants.

On the other hand, while eliminatingnonessential spaces from a program candecrease its length in many other BASICs(eg: Honeywell's), it will have no effecton an HP BASIC program. When a lineof source code is entered on an HP, thecomputer translates it into the above men-

tioned internal code, ignoring irrelevantspaces, leading zeros in line numbers, etc.Then if the line is listed, the computer"uncompiles" this code and prints the linein a standard format. This is why thereare always two blanks after the line number,and a blank preceding and following anykeyword (except REM and implied LET)or multicharacter operator.

It is natural for any computer language,even if initially standardized, to evolve intoa collection of dialects. Every system hasdifferent requirements and resources. Un-fortunately the hobbyist can run acrossprograms written in many different dialects,often without having any easy way of judg-ing how they need to be modified to run onhis or her system. A possible (partial) solu-tion might be to have an article or seriesof articles in BYTE comparing the betterknown versions of BASIC, both those usedon microcomputers and the ones found onthe more popular timesharing systems. Inaddition to providing hobbyists with infor-mation to help them convert programswritten in foreign BASICs, it would alsoprovide some insight on how different sys-tems handle the execution of programs."

Stefan T Dobrowolski

4419 N Pershing Dr, #1

Arlington VA 22203

"

First Come

ELCOM CRYSTAL-CONTROLLED COUPLERS ^

SWTPC Buiinoii Programs

First. Served

OUT PERFORM «\ ^^ADIRECT ■ A^^VCONNECTED -T- _^Wfc>.

Math Packaga. 5 byle mantissa. 1 byte exponent

MODEMS! sr ^^^^r

■

11V, digit accuracy. Fortran-type formatting (Integer,Floating Point and Free Formatting on both

Back Issues of BYTE

read and write] S100.00

Letter Writing Editor. No line numbers needed. Subsetot Honeywell's 1648 Timesharing Editor S100.00

About 300 July, 200 Aug.,

Payroll. S400.00

and 500 Sept. 1976 issues ofBYTE. Orders will be filled on a

The ELCOM 30 Originate-Only andELCOM 32 Originate/Answer acoustic

Accounts Receivable. Phone for details.

first come first served basis until

coupled modems provide reliable Bell

Power Supply Modification Kit for SWTPC

the supply is exhausted; we will

System 103/113 compatible. Duplex orHalf-Duplex, 300 bps data communi-

Computer. Fill motherboard with as much

partial ship and return any monies

cation over conventional dial telephones.

memory bs you wish without brown out S20.00

in excess.

Advanced crystal-controlled digital tech-

Disk Based SWTPC Business Systems. Phone for details.

Readers please send $2.00 for

niques and high-order linearphaseactivefilters provide error-free operation over

Dealer for SWTPC. Smoke Signal Broadcasting, Percom.

each issue; this includes postage

the most marginal telephone circuits.

Teletype®. GE. Tl. Centronics. Motorola,

and handling.

Transmit Frequency Accuracy 0 1% Crystal-

GIMIX.etc.

Controlled. Transmit Level: -16 dBm, adjustable, mReceiver Sensitivity; -55 dBm or lower. Received r-

To Order: Include 3% postage. Illinois residents add5% sales tax.

The Computer Place186 Queen Street West

Data Distortion: 3% typical. Crystal-Controlled

ALL PRICES FOB CONCORD. TN.BankAmericard/Visa and Mastercharge welcome <o

AAA Chicago Computer Center

3007V; W. Waveland Avenue

Toronto M5V 1Z1

HP* 1 ElCom ENTERPRISES, INC

Chicago. IL 60618

416-598-0262

^^ I 10728 DUTCHTOWN RD.^V I CONCORD, TN. 37720

(3121539-5833 13 PM - 5 PMI

Dealers please inquire.

I (615) 966-3352

^^M 1 (615) 689-5559 - Call 24 hours.

DEALERS INQUIRES INVTTED

Circle 87 on inquiry card.

Circle 29 on inquiry card.

Circle 44 on inquiry card.

BYTE February 1978 167

I > vw-

o

vOUT

^>

Figure 1: Simple resistor-capacitor (RC) low pass filter.

A Simple Digital Filter

Robert Grappel148 Wood StLexington MA 02173

At first glance, using a computer to buildan analog filter seems like the height ofoverkill. Imagine an analog to digital con-verter, a microprocessor with memory andperipheral interfaces, a digital to analog con-verter, and more, just to do the job of acapacitor, a resistor and a coil of wire!People have been building analog filters foryears without computers. How can an analogfilter be constructed with a digital devicelike a microcomputer? Digital filtering maybe the answer.

All right, you say, we must have someanalog to digital conversion stage in there.True enough. A digital filter uses periodicsamples of an analog waveform as input.These samples are digitally manipulated in acomputer of some sort and then convertedback to analog form by a digital to analogconverter. One input sample is converted toone output voltage. By integrating thisoutput sequence, the digital process appearsto have a continuous analog output.

The rest of this article describes the mani-pulations we must perform on the digitalsamples in order to simulate the perfor-mance of simple filters. The mathematicsis quite complex and is available in manytexts. We will try to concentrate here on thepractical implementation of such a filter.

Let us take for example the simple RC(resistor-capacitor) low pass filter shown in

figure 1. This circuit passes frequenciesin the input voltage that are lower thansome critical frequency (called the cutofffrequency) determined by the resistor andcapacitor values, while severely attenuatingany higher frequencies.

The output voltage Vout, then, is simplya selectively reduced version of Vjn (inputvoltage). The resistor drops the outputvoltage, as does the voltage that goes intocharging C. At first, Vout = a x Vjn (wherethe constant a is the amount of attenuationcaused by R and C). It can be shown thata=1/RC (where R is in ohms and C is infarads).

The voltage change with time across acapacitor is an exponential function. If thevoltage at time zero is V, then the voltageat time t is given by Ve~at (a is the same con-stant as above).

Now, let us consider that the input is aseries of samples, where samples occurevery t seconds. The output voltage at anygiven time is just the algebraic sum of theattenuated input voltage and the voltage onthe capacitor at that time. In other words:

t=0 output=aV

t=1 output=aV+aVe"at

t=2 output=aV+aVe"at + aVe"2at

After a number of samples, the outputvoltage becomes the sum of a number of

VinO

ATTENUATORat

A + B

.

! r

)

B

e-°'

DELAYt

Figure 2: Filtering process performed by the circuit of figure I in block form.

168

BYTE February I978

( START J

INITIALIZE B = 0, o, t

1

A=NEXT SAMPLE INPUT

NEW A = A*a*t

NEW B = B*EXP(-a*t)

C=A+B

C IS FILTER OUTPUT

NEW B=C

Figure 3: Flowchart forperforming a low passfilter function.

such terms. Since the terms are similar, ande ~nat = (e~at)n, we need to compute theexponential term only once, and multiplyit by itself repeatedly to get the extra termsof the series. Figure 2 shows the equivalentcircuit of the RC low pass filter in figure 1,shown in block diagram form. It consistsof an attenuator (factor a), an exponentialand time delay (the capacitor), and a sum-mer. We them jump to figure 3, which showsa flowchart of this process. The only changeis that the attenuation factor is given as at,where t is the period between samples. Muchof the input to the filter is lost because itsfrequency is outside the filter range. Thisdoes not change the shape of the output(the important factor), but only the magni-tude of the output (like adding gain to thefilter). If you have accepted that last bit ofsleight of hand, you can see that figure 3is a block diagram of a program to performlow pass filtering.

Figure 4 shows the output of such adigital filter program when the input is asquare wave with maximum and minimumvalues of +10 V and -10V, respectively, anda frequency of 50 Hz. The sampling rateis 20 samples per cycle, thus t=1 ms. The RCconstanta is arbitrarily set equal to 360. Theremoval of the high frequency components

NPUT VOLTAGE-

Figure 4: Result of passing a 50 Hz square wave through the digital low passfilter program.

OUTPUTVOLTAGE

Figure 5: Result of passing a 50 Hz triangular wave through the low passdigital filter program.

BYTE February l'J7S 169

Figure 6: Simple resistor-capacitor (RC) high passfilter.

\Z>-

VlN

o-

c

VoUT

-O

V|n[~>-

ATTENUATORat

\

A-B

J

B>

lr L

B-at

DELAYt

D>v,

OUT

Figure 8: Result of passing the 50 Hz square wave used in figure 4 through ahigh pass digital filter program.

Figure 9: Result of passing the 50 Hz triangular wave used in figure 5 througha high pass digital filter.

Figure 7: Filtering processperformed by the circuitof figure 6 in block form.By changing a sum to adifference we convert theblock diagram from a lowto a high pass filter.

of the square wave is evident. Figure 5 showsthe filter response to a triangular wave at thesame frequency. The output is nearly all atthe fundamental frequency of the input, asone would expect of a low pass filter.

Now, how do we simulate high pass filterslike the one in figure 6? Here the outputvoltage is the difference of the attenuatedinput and the capacitor voltage (since thecapacitor resists rapid changes in its charge).Thus, figure 7 is a simulation of a high passfilter. It is identical to the low pass filterexcept that A+B becomes A- B.

Figures 8 and 9 show the response of ahigh pass filter program to the same inputsas those in figures 4 and 5. The constantsare the same, but the change in output isstriking.

One of the main features of softwareinstead of hardware implementation is theease with which software can be modified.A low pass filter changes to a high pass filterby changing an add to a subtract! Filterconstants can be easily modifed, amplifica-tion added, etc. More complicated filters,such as band pass types, can be simulatedby combining appropriate high and low passfeedback loops with adders and subtracters.The filters can be dynamic, adapting to theinput. They can be programmed. This wouldseem to suggest uses in computer generatedmusic systems, audio processing, removingnoise from signals, etc. If one has to convertanalog signals to digital form at some point

170 BYTE February I978

in a design, then it may be useful to domuch of the filtering at the digital level.

How can you perform digital filtering inreal time without an exponential routinein your computer? The answer is that theexponential function is a constant. It can beprogrammed in, or provided by a table. Thecritical points are the two multiplications:one by at and the other by e~at. Both ofthese values are usually less than 1 for a realfilter. (In the examples, at=.360 ande~at=.697.) What we can use is a routinecalled a fractional multiply. This is a routinethat multiplies two values, one treated as aninteger, and the other treated as a binaryfraction.

One such routine, reproduced in listing 1,was written by Ira Chayut. For a detaileddiscussion of how it works see ProgrammingQuickies, page 124, September 1976 BYTE.This 16 byte subroutine forms the heart ofa digital filter program for the 6800. In theprogram of listing 2 this subroutine is giventhe name FRACMUL. An analog to digitalconverter and sampler is assumed to pro-vide 7 bit samples available at the locationSAMPLE. The routine FILTER (see listing2) is set up as an interrupt handler. Aperiodic interrupt is provided which initiatesthe sampling and causes a branch to theroutine. Since the Motorola processor takesa minimum of 1 2 jus to respond to an inter-rupt, a fast analog to digital converter shouldbe ready with a new sample by the time theprogram needs it. Thus, no delay loops ortests are performed.

FILTER assumes that the analog to digi-tal converter is ready when it is. It is alsoassumed that the location BVAL is zeroedinitially. BVAL is the output of the filter.The constants in the listing are those ofthe examples (92=.360 x 256, and179S.697 x 256). FILTER should executein about 300 to 400 cycles on each inter-rupt. Assuming a 1 ms sampling period,FILTER will consume about 33% of thetime of a I MHz 6800 processor. Thememory occupied is negligible. FILTER is apractical program for use with audio fre-quencies. Listing 3 shows how easy it is tomake FILTER either a high or low passfilter.

Of course, more complex filters willbe harder to design and will take moreprocessing time. For really interestingfilter applications, an external hardwaremultiplier will probably be needed, butsuch circuits are available reasonably, andthey can be used for other applicationsin the computer system when not filtering.

Now, get in there and attack the math!It really isn't ajl that hard."

FRACMUL

STAACLRA

ARG1

MLOOP

LSHASLB

ARG1

BCC

NONADD

ADDA

ARG1

NONADD

BNERTS

MLOOP

ARG]

RMB

1

!ARG|1=A

JA:*0

JARG1:»ARGl/2

>CY1-MSB<B>! Bt»ASL<B,l>

MF CY=0 THEN SKIP THE ADDITION

;ELSE At°A*ARGl

;IF ARG2 NE O THEN REITERATE

;ELSE RETURN WITH RESULT IN A

;SINGLE BYTE TEMPORARY DATA AREA

Listing I: The fractional multiplication routine,the main program in the accumulator.

The result is returned to

CLR

BVAL

; INITIALIZATION

FILTER

LDA

A SAMPLE

;AI= A/D SAMPLE (7-BITS)

LDA

B »92

>BI = 'AT'

JSR

FRACMUL

J MULT I PLY

STA

A TEMP

J TEMPI* ANSWER

LDA

A BVAL

JAI- BVAL

LDA

B »179

;Bl- E (LN BASE) RAISED TO THE C-AT> POWER

JSR

FRACMUL

;multiply

ADD

A TEMP

I SUMMATION FOR LOW PASS FILTER

STA

A BVAL

)RETURN ANSWER

RTI

BVAL

RMB

1

TEMP

RMB

1

Listing 2: Low pass filter routine. This routine can be followed using theflowchart of figure 3 or the block diagram of figure 4.

SUBNEG

;CHANGE TO HIGH PASS

Listing 3: To convert the low pass filter routine of listing 2 to a high passfilter routine, replace the ADD instruction with the above two lines. It can beseen that this is the only difference between the block diagrams of figures2 and 7.

PCC'S

Reference Book

of Personal

and Home Computing

Ever try to find the addresses of some manufacturers of, say,tape cassette or floppy disk interfaces for micros? Frustrat-ing, isn't it? Well PCC has done something about it. Thisbook lists hundreds of companies and stores selling hardware,software, and services. Survey articles on software, hardware,kits, applications and the future for the experienced and thenot-so-experienced user of micros. Also included in this edi-tion are bibliographies for further reference, book reviews,and an index of the articles from the major hobbyist maga-zines. All for the low price of $4.95, plus 50 cents postage.

Available through:

BITS, Inc.

70 Main Street

Peterborough l\IH 03458

Master Charge and

BankAmericard Welcome.

In unusual cases, processing may exceed 30 days.

Circle 9 on inquiry card.

BYTE February 1978 171

TechnicalFopum

Some Plotting Comments

T P Roberts

Kern Instruments Inc

111 Bowman Av

Port Chester NY 10573

Figure 1: Layout for the articulated plotting method. The primary ser-vomotor is stationary with a secondary servomotor on the far side of itslever arm. The secondary servomotor moves a second lever arm which con-tains a pen on its far end.

(a)

(b)

Figure 2: The intersection plotting approach uses two stationary servomotors.The pen is held precisely under the intersection of the two lever arms. Figure2a is a graphical view of the plotter on the plotting surface. Figure 2b is aclose-up view of the slide mechanism and the pen holder.

Y-AXIS

Figure 3: The polar plotting method uses a primary servo to swing the entireassembly across the plotting surface. A second servomechanism moves thepen along the lever arm.

The Servo Plotter

There are several ways to tackle the prob-lem of building a plotter using the hobbyservomechanism described briefly on pages 9and 10 of March 1977 BYTE. As might beexpected, the designs span the range be-tween hardware and software intensiveoperation, the latter being less stable mech-anically. The simplest to build, for example,requires by far the most software, is mech-anically the least precise, and has the leasttheoretical accuracy.

This "articulated" design proposed inthe earlier article is in the form of a chainas seen figure 1. A base mounted servo(primary) controls an arm with the secon-dary servo mounted on the far end. Thesecond servo in turn controls an armcarrying the drawing pen.

The next simplest design is the intersec-tion plotting method, where the x, y penposition is a function of two angles, deter-mined by the servomotors, and the base line(distance between servos). Figure 2a showsthe plane view of such a plotter. Figure 2bshows a close-up view of the two arms, slidemechanism and pen holder. Notice that thepen must fit within the slide mechanism toeliminate offset errors. This design does notutilize the full 180° sweep of the motors;thus accuracy is reduced over the plottingsurface.

Figure 3 shows the polar method ofplotting which uses the familiar polarcoordinate system. Standard Cartesian-to-polar conversion can be used to producethe control data. The analog angular-to-linear conversion is accomplished by thesimple pulley arrangement.

The servo portion of this device may, ofcourse, be located anywhere along the radialarm of the plotter. A small offset correctionis required if the pen travel is not alignedwith the primary servo axis.

The final design shown in figure 4 usestwo of the linear devices shown in figure 3.The primary device is rigidly attached to theplotting table, but the pen holder has beenreplaced with the secondary device mountedat right angles to the first. This, then, is anXY plotter. The only software required tooperate this type of plotter with the servosbeing discussed is to scale the coordinatesinto timing data.

172 BYTE February 1978

Figure 4: The XY plotteruses two of the polarplotting devices. Themoving pen is replaced byanother servomechanism.with the moving pen con-tained on its lever arm.

Accuracy

Let's now take a look at two importantaspects of each system: ease of constructionand accuracy.

As these servomechanisms are to beoperated by computer in discrete steps,positioning is possible only to the nearestgrid intersection corresponding to thesesteps. The theorectical plotting accuracy islimited to one half the grid spacing.

The tangential distance between radiallines 25 cm long and 0.04°apart is 0.17 mm.An XY plotter would give a square grid withspacing of 0.054 mm over a 25 cm squarearea. Repeatability or precision of pen place-ment depend largely on mechanical designand construction.

Due to the compounding of errors andlarge moment arms in its design, the articu-lated plotter has poor precision relative tothe other designs. The polar plotter suffersfrom the same problem to a lesser extent.The problem with the polar design, as withthe XY plotter, is the mounting of onedevice upon another without causing undueinstability. The intersection plotter suffersfrom theorectical, rather than mechanical,instability. As with the articulated plotter,its full range of 180° cannot practicallybe used. Also, the area near the base linedoes not have frequent grid intersections.

Plotting with Servomechanisms

The servomechanisms considered hererespond only to positioning commands. TheXY plotter, for example, is restricted todrawing straight lines parallel to each axisand at a 45° angle. Other plotter designshave similar limitations. All lines not sosituated must be composed of small incre-ments of these lines, giving the final pro-duct a sawtooth appearance. Computer

time required to compute these smallincrements will be significant, except inthe case of the XY plotter where servomotions for small line segments are pro-portional to motions for the entire line.This property, in addition to the conver-sion formulas, makes the XY plotter by farthe most attractive from a calculation pointof view.

CONVERSION FORMULAS

Articulated Plotter

In order to position the primary andsecondary servos at their proper angles (61and 82 respectively) to provide the requiredx, y pen position, it is convenient to firstconvert these values to the polar coordinatesystem. Equation I, below, shows the con-version by which the radial distance, R, fromthe origin (the primary servo axis), and theangle 8 (the slope from the origin to x, y)(see figure 5) are found.

Equation 1 :

R = SQRT(X*»2 + Y**2)8 = ARCTAN(Y/ABS(X))or 8 = 180 - ARCTAN(Y/ABS(X)), when Xis negative.

Figure 5: Coordinate plot-ting scheme for the articu-lated plotter. The leverarms are indicated by LIand L2. 61 is the ang/egenerated by the positionof the lever arm with re-spect to the primary leverarm.

BYTE February 1978 173

Figure 6: Arrangement forthe intersection plotter.The distance B is the dis-tance between the twoservomotors. The twolever arms intersect atpoint x, y.

Figure 7: The plottingarrangement for the polarcoordinates. Length L isthe total length of theplotter's arm. The value Ris the distance of the penfrom the plotter arm'sorigin. C is the closest thearm can approach theorigin. 0 is the angle ofthe primary servomech-anism at the origin withrespect to the horizontalaxis.

The values of 01 and 02 are then found fromequation 2 where L1 and L2 are the lengthsof the primary and secondary arms respec-tively:

Equation 2:

02 = ARCCOS((R**2- L1 **2 - L2**2)/(2*L1*L2))

01=0- ARCTAN(L2*SII\I(02)/(L1+L2*COS(02»)or 01 = 0- 02/2, when L1 = L2.

Note that using this formula the angle pro-duced at the origin by the pen position andprimary arm is exactly one half the angle atthe secondary servo, when the arms are ofequal length. [The formulas needed forplotting with this arrangement are funda-mentally similar to positioning a singlyjointed robot arm. . . RC/ This conversionwould no doubt be difficult to handle in alow level language.

Intersection Plotter

The formulas required by the intersectionmethod (see figure 6) are considerably lesscomplex.

Equation 3:

01 = ARCTAN(Y/X)

02 = 180- ARCTAN(Y/(B-X))

B is the distance along the X axis betweenservos.

Polar Plotter

The polar plotter (figure 7) also usesequation 1 to convert Cartesian coordinatesto polar form. In addition, the value of Rmust be scaled into angular form as follows:

Equation 4:

0 = (R - C)*180/L

L is the radial distance produced by rotatingthe secondary servo 180°, and C is theminimum radial plotting distance.

XY Plotter

Equation 5 gives the angular values re-quired by the XY plotter.

Equation 5:

01 = X*180/L1

02 = Y*1807L2

L1 and L2 are the linear motions producedby 180° rotation of the primary and secon-dary servos, respectively.

Converting Angle Requirements toTiming Data

Assuming required pulse widths from1.3 to 3.6 ms, as noted in March 1977BYTE, equal steps of about 0.04° through-out the 180° range of the mechanism wouldbe provided with counts from 2600 to 7200,assuming a 2 MHz clock rate. The number ofcounts needed to produce a given angle isthen given by equation 6.

Equation 6:

N = 2600 + 0*230/9.

The count value, N, is simply truncated, orrounded off, for better precision.

This high precision timing would requireexternal hardware to receive the data, countdown at the proper rate, and interrupt theprocessor at completion. The alternative isa software loop with steps of 0.0075 ms,based on an 8080 chip requiring 15 cyclesfor decrement and branch on zero. With theXY plotter this would give a grid spacing,over a 25 cm square area, of 0.81 mm.

Conclusions

From the information presented so far,it appears that the more easily constructedplotter designs have inherently less precision,use a larger grid spacing, and require morecomplex, time consuming software. Themost easily programmed device, the XY

174 BYTE February 1978

Circle 53 on inquiry card.

plotter, requires more exacting construction.As a compromise, the intersection plotter isa good choice, being simple of constructionwithout requiring too much computation.

Those hackers who plan to do any greatamount of plotting, though, will do well toconsider the XY plotter. For many uses too,software timing should prove sufficient.

Further Refinements

To fully automate plotting, a solenoidcould be attached to the pen holder to liftand drop the pen under program control.A small servo should be able to be activateddirectly from the output latch, at leastthrough a transistor.

Servo speed control would be anothernicety, allowing fast, processor efficientstraight-line drawing, and producing ahigher quality line. For example, if theX axis servo were to move at a speed twicethat of the Y axis servo, a straight line atan angle of 25° would be produced. Simi-larly, lines could be drawn at any angle."

A Standard for Writing

Standards

David A Wallace146 WestfordStChelmsford MA 01824

I'm sick to death of save the world arti-cles proposing standards for software datastructures and object code formats whichstart by assuming that the author's petdescriptor is the ultimate and final wordto be said about the subject. I am thereforeproposing the following as a standard forsoftware standards:

• Be humble: Don't make grandiose claimsabout the universal applicability of yourstructure. Instead, define the limits ofthe range of applications to the best ofyour ability. Often it is as useful toknow where something cannot applyas to know where it can.

• Plan for change: Everything in thisuniverse either evolves or becomes de-funct, including software. For example,set up the structure of your construct sothat the first byte (word, field, whatever)represents the revision number of thespecification which describes this struc-ture. That way, if you have a data basewhich corresponds to revision 3 of thespecification for random files and you'vejust recompiled the program which up-dates the data using a compiler whoserandom file operators correspond to re-

80-103A Serial I/O and FSK modem forprofessional and hobby communications.

MtmM

mm

nil

• Completely compatible with your IMSAI, ALTAIR*SOL** 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 allFCC 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 documentation

PRICES Bare Board and Manual

Assembled (48 hour burn in)

DC Hayes Assoc.^

P.O. Box 9884, Atlanta, Ga. 30319, 404/231-0574

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

49.95 ^^279.95

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 3% " x 6V2" singlesided boards

• Total weight under 2 lbs.

wit: 3* m

. -v. ;.;■■. / ■.■■.. .. . :

..■■■. :. ■■ ■■ ■ :■■ . ■ :

ADVANTAGES

• All clock voltages operate at 6Vreguiring no adjustments

• Higher video output signal

• We supply the power board, so onlya 5V 1 Amp power source is needed

• The circuitry has been supplied foreasier assembly

• Two level TTL output is supplied forinterfacing

• In the future we will supply a computervideo interface card

We supply all semiconductors, boards, data sheets,

diagrams, resistors and capacitors.Sorry we do not supply the case, batteries and 5V supply.

$349°°

Add $2.00 Postageand Handling

SOLID STATE SALES

SOMERVILLE.

Circle 108 on inquiry card.

BYTE February 1978 175

SELECTRICTERMINALS

Offer good while supplies last.

Loaded with features

• Typewriter print quality

• RS232 Interface levels

• 14.8 cps

• 13 inch line length

• 10 characters/inch

• Ideal for text editing & word pro-cessing

• Software & documentationavailable for easy interfacing tomost popular mini & microcom-puters

fr

□ Now a heavy duty Se/ecfr/c® ter-minal for less than the cost of aSe/ecfr/c® typewriter!

These recently manufactured (1 to 4 years old) Terminal Communica-tions, Inc. terminals originally cost over $3,800. They are PTTC/EBCO terminals running at 134.8 BAUD. Intended tor the demandingcommercial environment, they are designed to be computer driven.Such key components as clutches and bearings are heavier duty thanthe office typewriter mechanism.By purchasing an enormous inventory of these terminals NCE was able to buy them at a verylow price. We have added a minimum markup in order to sell them in large quantities quickly.These terminals have been cleaned, adjusted, checked for completeness and operated in localmode. Although they are not tested in terminal mode, a check is made to see that there areno oDvious problems. For a period of 30 days after shipment any detective parts may be returnedfor repair or replacement at no charge. Includes ribbon & typeball.

□ $339 AS IS

A great buy for those willing to do somerefurbishing, these machines are believed tobe complete, but did not work when pluggedin. Typical problems include sticky cams, badsolenoids or broken springs. We recommendyour seeing them at our giant Ann Arborwarehouse store before you purchase. In-cludes used ribbon & typeball. At this pricethere is no warranty. However, they may bereturned within 3 days of receipt for a fullrefund. Applies to prepaid orders only.Purchaser is responsible for freight bothways.

□ $695 Refurbished

Refurbished machines have been chemicallycleaned, lubricated and tested. Worn metalparts were replaced. Platens, as well as plasticand rubber parts are always replaced. Ourwarranty is limited to replacing any defectiveparts for a period of 90 days following receiptof equipment. Includes a new ribbon andtypeball.

□ Optional documentation package $30.

Includes schematics, operators andfunctional specifications manuals.

"Selectric is a trademark of the IBM Corporation

D Please send me all items checked above. Add4% for tax if Mich, resident. F.O.B. Ann

Arbor, Mich.* Total enclosed $ .

Send check, money order or Bank charge cardnumber {include all raised letters & numbers.)

D Please send me more information.

Name

Address

City, State, Zip

Signature

"You will be notified of freight charges prior toshipment.

&

NCE/CompuMart

1250 North Main Street, Department BY28P.O. Box 8610 Ann Arbor, Michigan 48107

994-4445

vision 7, the revision 7 processor canfigure out that it has been passed anobsolete structure and call the revision 3processor to sort out the mess.

• Don't begrudge the space used by anobsoleted field: Far too often a pro-grammer will remove a data field whichwas made obsolete, thus moving allsubsequent fields out of their previouspositions. This misguided attempt toconserve space has the effect that thepositions of fields whose meanings didnot change are constantly shuffled fromrevision to revision, resulting in confusionto programmers and needless complexityin programming.

If instead of removing the obsoletefield, the field is merely ignored, thecurrent revision program would finddata in expected places and perhapsprocess nearly all of the structure beforehaving to invoke some sort of routine toprocess the obsolete fields. This tech-nique involves less execution space thanhaving to roll in an entire program toprocess the obsolete data when the cur-rent revision finds all fields misplaced.Additionally, this technique implies thatthe newer format specification is alwaysat least as long as the older format. Thismeans that when an earlier revision mustbe invoked by the current one, all datawhich the older revision program needshas already been fetched by the newerrevision program, which simplifies para-meter passing.

• Wait at least one major revision of yoursystem before redefining an obsoletedfield for another purpose. This givesyou time to change your mind if itturns out that the field in questionreally is necessary after all.

If all of the above rules are followedrigorously, you should never again haveto translate or reformat files and recompileprograms when you make a change to theoperating system of your machine. If allof the above sounds suspiciously likeanother of those save the world softwarestandards, I'm sorry; I guess the disease mustbe contagious!"

Technical Forum is a feature intendedas an interactive dialog on the technology ofpersonal computing. The subject matter isopen-ended, and the intent is to foster dis-cussion and communication among readersof BYTE. We ask that all correspondentssupply their full names and addresses to beprinted with their commentaries. We alsoask that correspondents supply their tele-phone numbers, which will be printed unlesswe are explicitly asked to omit them.

176 BYTE February 1978

Circle 85 on inquiry card.

I THIS SPECIAL ONE CENT SALE IS FOR MAGAZINE ADS ONLY I

POLY PARS BIGGEST14 GIVEAWAY SALE!

IT MAKES "CENTS" TO GIVE OUR CUSTOMERS THE BEST BARGAINS!

TTL'S,BCIYONEAT SALE PRICE,GET 2ND FOR

ONLY 1CMORE

Honest AbePenny Sale!

Type

SN7400

SN7401

SN7402

SN7403

SN7404

_ SN7405

3 SN7406

~ SN7408

SN7410

SN7413

SN7414

SN7416

_ SN7417

□ SN7420

" SN7423

SN7426

SN7427

SN7430

SN7432

SN7437

SN7438

SN7440

SN7442

SN7443

Each 2 for$.19 $.20

Type

SN7444SN744SSN744S5N7447SN744BSN7450SN7451SN74S3SN7454SN74S5SN7460SN7462SN7464SN746SSN7470SN747ISN7472SN7473SN7474SN747SSN747SSN7478SN74S0SN74B2

.991.3S1.2S1.35

1.001.361.261.36

Typa

□ SN74833 SN748S3 SN74B61 SN74883 SN74903 SN74913 SN74923 SN7493~ SN7494~ SN749S_ 5N7496C SN7498~\ SN74100i SN741073 SN741123 5N74113

— SN74114SN74121SN74123SN741255N74126SN74132SN74140SN74141SN74145SN74148SN741S0SN741S1SN74153SN741545N741S5SN74156SN74157SN74158SN74160SN741615N74163SN74164SN74165SN74166

□ SN74173~ SN74174

5N74175SN74177SN74179SN741805N74182_ SN741903 SN74191SN74192SN74193SN74194SN74195SN74197SN74199SN74200SN74251SN742B4SN742B5

Each.991.49

2 for1.001.S0

.49.69.59.391.25.991.491.251.75.99

1.19.991.251.251.251.49.99.79

.751.755.501.75

4.504.25

1.261.001.501.261.761.001.001.001.76.80.701.O01.001.261.261.201.O01.2C1.261.261.501.00.80

.50.761.765.511.764.514.26

POP-AMPS AT "CENT-CIBLE" PRICES

Buy ONE At Sale Price, Get 2ND For Only 1C More - Order By Type No.

TypaC LM300HC LM301H-VC LM307V-NC LM308V-HL LM309K

BLM311H-VLM318V0 LM320H-5, 12, 15r LM320K-12, 18r LM320T-G, IS, 24G LM322NH LM324N

□ LM339N

□ LM340K-5, 6, 8,12,15, 18, 24V

H LM340T-S, 6, 8,

12, 15, 18, 24H LM350NQ LM370N.M

2 for

$.50

.46

1.79.791.291.191.191.191.191.751.09

.801.301.201.201.201.201.761.10

TypeG LM374H

□ LM376VD LM377ND LM379G LM381N

□ LM387VD LM531H

C LM532H-N0 LM55SVD LMS58VD LM561NQ LM565N

□ LM5G7Va LM703HQ LM704M

D LM709N-H

□ LM710N

□ LM733ND LM739N

Each

1.79

.29

2.25

7.95

1.69

1.19

1.49

.29

.75

.79

1.00

.99

1.95

.302.267.961.701.201.50.30.76.601.011.001.96.50.30.26.40

Typ»

LM741V-N-

LM1304

LM1310

„ LM1312

Q LM1414V

Q LM145BV

Q LMIBOON

a LM302BH

□ LM3900Nn LM3909VD LM4195

□ LM4250

□ LM75451H LM7 5453D LM75491

□ LM7S492H LM75494a PA239

D PA263

Each 2 for.29 .30

.79 .80

.69

.70

.99 1.00

.65 .66

.49 .50

1.75 1.76

1.95 1.96

1.19 1.20

.39

.40

.39 .40

PENNY SALE PRICES LISTED ARE GOOD TILL MAR. 15, 1978WE RESERVE THE RIGHT TO LIMIT QUANTITIES!!!!!!

\ \ \ \ I ///>

WOW! = MORE 'PENNY SALE' ITEMS!!

TRANSFORMERPENNY SALE!

BUY ONE AT SALE PRICE,2ND FOR ONLY lc MORE■ hovac Primaries

Cat. No.

] 2S3399

i 25.3814

] 2S3412

j 2SJ4029

] 254028

] 2S3323

} 2SJ3937

) 2S2773

] 2 $'3 87 5

Output V.G.SV

o.av

12V

12V

12V

2-1VCT

24V

4SVCT

110V

Metal encasedOpen frameOpen frameOpen frameMetnl one usedOpen frameOpen frame

teased $2.95

XN4000 Epoxy Rectifiers

PENNY

SALE!

• Miniature

• 1.5 Ampl

Cat. No.

D 2S2377

□ 2S2378

a 25*2379

H 2S2380

G 2SI2381

D 2S2382

Order by Cat. No. and Typo No.

Typo No. PIV

1N4001 50

1N4002 100

1N4003 200

1N4004 400

1N4005 600

1N4006 600

Sale

10 for $.6510 for .7510 for .6510 for .9910 for 1.2910 for 1.39

K Salt20 for $.6620 for .7620 tor .662 0 for 1.0020 tor 1.3020 for 1.40

DIP SWITCHES

BUY ONE AT SALE PRICE,2ND FOR ONLY 1C MORE!Sal*Cat. No. Switches Each 2 f<D 2S3666 2 $.77 $.7

D 2S 3669 3 .88 .8

O 25 3021 4 .99 1-01

D 2S3670 5 1.19 1.2.

a 253671 6 1.29 1.3.

D 2S2677 7 1.79 1.8r

2-Amp Epoxy Bridge Rectifiers

PIV Sale Each

PENNY SALE! BUY ONEAT SALE PRICE, OET □

2ND FOR ONLY 1C MORE □

• Full Waval * TO-5 casallQ

Order by Cat. No. 2S1346

y

1002004006008001000

2 foi$.60

1.001.20l.SO

m. i;; MICROPROCESSORS!!ii MEMORIES diSSUSUPPORT! 9 88*

: ; Ord.r ar Cat No. 5 Hoi

3/8"$q. POTENTIOMETERS

n 2S38S3 IS Turn upright, typo 64 PENNY SALE!O 2S3BM 1» Turn flat, lyp. «* CBrpTBni

D 3S3BSS SlnBt. turn tlat.typa 63 SPECTKUL

%- mm. s," " <SK|nny-TRIIVIS

•haft, 20 ft tolerance, Va ~™ «_„

wntt. Cermet conatruotlon, Crioose any OHMS

POleada. Order by Cat. No. 9 Mnr ffkn nand Y.lue. * »«»■ "i y

• Available In all typaa S.69

..Available In Cat. Wo. 2S3663 only. ..en

OHMS

n ioo •a 3oo •a boo •

D IK •

a 2K •a »k •,a iok •

'□ 20K •

a sok ••a iook *•

a 200K •*□ 20 •* D 500K •«D 90 *• □ 1 M06**

D 2102-U

a 2ui

D 2112D 2701a MK4200P11O IW5202O MMS203D BM5260D MK5262a 8212D 8216D 8224a 8228D 8251,D S2SS

S.le ,

124.95 !

14.95 '

9.55

.68

1.29 i;

5.95 i

1.69

5.952.4919.953.956.95 .8.95 I

.99 i I

.99

^rnrttt*t*»tmtt^

1st Time Offered! It's Different!It's Inflation Fighting! New!

KITS BY POLY PAKS®

SUPER ECOIVO KITS

.\I I I I III/////

AMI V C1 Qfi' BUY10KITS&

UI1LI 4>la*/0- CHOOSE 1 1TH FREE!"/Ill I IT III**

* MONEY BACK GUARANTEE * AVG WT. 6 OZS.

Quantity Description (Order by Cat Ne„s«eparanthaat«) Sale

Q 10 CALCULATOR KEYBOARDS, up to 20 key* (251524) $1.98

Q 8 LINE CORDS, K-ft. Ik, twin tf 1 * wire, plug ( 2S3643 ) 1.98

D 30 NEON LAMPS, NK-2 style, reil glow, lends (2S2S13) 1.98

D 3—1702A ROMS, factory fallouts, hobby, useublo (2S3729) 1.96

Q 40-FT SHIELD CABLE, I -c*.ml.-ji-sliit-Id. Jf22 wire, vinyl jack (2S3577) 1.96

D 50 TRANSISTOR ELECTRO'S, nsstd values, uprltes, nxinln (252747) 1.96

G 3—SOUND TRIGGERS, hnndchip triRRerH scr, w/ump (2S362S) 1.98

□ 8—1C SOCKETS, inpl. -1-1-l's Oltd -1-IH'h, low prof (2S3621) 1.98

D 15 6V TEST INDICATORS, w/lcnds, Kn.in-o-wlieat (2S1526) 1.98

D 3—CLOWN PANELS, .ixl", llfliw, Rlow-n-(lnrk, (treen ( 2S3650) 1.96

a 400 PARTS ON A BOARD, Rrealesl tust nn p.c. hiiiird.-i (253401) 1.98

D ISO METAL FILM RESISTORS, V-t wutLs, color-coded, leads (2S3413) 1.9S

G 15—JUMBO "LEDS" RED, prime, leads, like M V:h>.",.| (2S3369) 1-98

D 30 MINI TRIM POTS, to 1 til Off, 1 turn, V4W (2S3345) 1.98

□ 10 VOLTAGE REGULATORS, TO-:, case, :)00K etc. hobby (2S3330) 1.98

□ .30 PANEL SWITCHES, roUries, slide, mod. llQvnc, etc. (2S3268) 1.98

D 200-PC. RESISTOR SPECIAL, V-i to 2\V, metal, carbon (2S3054) 1.98

□ 40 AXIAL ELECTRO'S, nsstd values lo 100 mf, volts (2S3227) 1.98

□ 40 UPRIGHT ELECTRO'S, asstd volts, values to UOmf (2S3226) 1-98

□ 150^—MOLEX SOCKETS, pins fll all ic's, most pup'tr (2S3144) 1.98

□ 100—TERMINAL STRIPS, lie, lo K lugs, for solder (2S3136) 1.98

D IS SLIDE CONTROLS, assl values, vol, trble, bass, etc. (2S3057) 1.98

D 10—PHOTO ELECTRIC CELLS, CDS pancake styles, nsst (2S3052) 1.98

D 200—HALF WATTERS, color coded, carbon, pre*-, metal (2S3046) 1.98

; j 100—NATIONAL IC BONANZA, linear it, 7-11)0'*, roms, clocks, untested (252860) . . 1.96

□ 40—HOBBY LEDS, M8t shapes, red. untested mostly usenhle (2S28S9) 1.98

O 15 LM340T VOLTAGE REGS hobby, useable S to 2-lV, TO-220 (2S2635) 1.96

D 100 CAPACITOR SPECIAL, poly's. dips, molded, mica, discs (252735) ........ 1.98

D 100—TWO WATTERS, carbon, metal, prcc. etc, marked, lends (2S2735) 1.98

0 100 POLYSTYRENE CAPS, nsst values, voltaRes. hi-Q (2S2729) 1.86

□ 3CJ—SLIDE SWITCHES, spst lo rfpdt. many types (252726) 1.96

□ 15 NPN POWER TRANSISTORS, TO-:i 2N30SB rejects, useable (252617) 1.98

Q 200 PRE-FORMED RESISTORS, color-coded, p.c. work, nsst vnlues (2S2609) . . . 1.96

□ 100 PLASTIC TRANSISTORS, TO-02, nsst vnlues, mostly useable (2S2604) . . 1.96

□ 100 DISC CAPS, npo's, N'Tr.O, lonir leads (2S2598) 1-98

□ 60 DIPPED MYLAR CAPS, asst values &. voltntces, finest (2S2597) 1.98

Q 200 PRECISION RESISTORS. 1 ff , V-i lo 2. marked, leads (2S2428) 1.98

PI 30—VOLUME CONTROLS, sinjrle, rinuhles. asst shnfts values (2S2421 1.98

D 150 SWITCHING DIODES, 1N-11-IR, most pop'lr, mostlv good (2S2416) 1.98

Q 75 SN7400 IC'a, marked, mostly useahle, wide nsst of BNjj'a (2S2415) 1.98

G 100-1N4000 RECTIFIERS, 1 nmp, sil, mosi pop, asst. mostly Rood (2S2417) . . . 1.98

"■UT KINTG" $1.19 KITS - "The EeoaoV

BUY 5 KITS — CHOOSE THE 6TH FREE! MONEY BACK GUARANTEE!Quantity Description (Ordwr by Cat No., •«• parenthesis) Sale

D 30—RADIO.N-TV KN0B5, asst sizes, colors, shupuH (2S217) $1.19

Q 10—PRS PHONO PLUGS-N-JACKS, RCA style, 10 plugs, 11) jacks (2535-402) . , . 1.19

□ 35 DIPPED SILVER MICA CAPS, includes reel lypca loo. nasi (2S455) 1.19

13 75 PREFORMED DISC CAPS, for p.c. use, asst values, up lo 2KV (2S1219) .... 1.19

O 10 NE-2's WITH RESISTOR, for UQVBC use, neon, leads (2S1222) 1.19

D 12—TO-5 HEAT SINKS, for TO-5 metal & plastic transistors, fin type (2S1832) . . 1.19

O 12—TRANSISTOR SOCKETS, asst styles for NPN n PNP types (2S1905) 1.19

U 20—THERMISTORS, n resistor that changes with temp, protects! (2S2048) 1.19

D ■«—INSULATED RF CHOKES, resistor n so., styles, coded (2S3203) 1.19

G 30—WIRE NUTS, lies. 2 hare ended wires together (2S3724) 1.19

D 3 BLANK PC BOARDS, -Ixf.'s, double sided, 0-10 (2S3833) 1.19

0 2 BLANK PC BOARDS, Gxil's, double sided, Q-10 (2S3824) 1.19

O 10—OPEN FACE READOUTS, singles, doubles, some missing segs (2S39S2) 1.19

G 3—"PIGGY-BACK" IC SOCKETS, will hold 2-1-1 pin IC's-on-a-slab (2S3486) . . . 1.19

G FIBER OPTIC LIGHT PIPE, 12" long highly polished ends, vinyl jack (2S2693) . . . 1.19

G 4 FERRITE "STICK" ANTENNA, 7"x>/2". III! Scott. Fisher hi-fi eqpt (2S3400) . . 1.19

G 60 TUBULAR CAPS, asst molded, plastic, mylar, values, volts (2S219) 1.19

G 55—LOW NOISE RESISTORS, for hi-fi, metal films 5 % K'a lo 2W (2S220) 1.19

fj 50 POWER RESISTORS, wiruwound, vit, so,, up 25 w. asst (2S22B) 1.19

G 60 COILS AND CHOKES, r-f, ant, parasitic, i-f. etc. (2S297) 1.19

G 75—HALF WATTERS, resistors, color-coded, carbo-film, most pop (2S454) 1.19

Q 10—SOLAR CHIPS, silicon, 'broken energy", each chip Q.Bv. asst mils (2S5083) . . 1.19

Low Power ICs I

"- 2S3667 ». Type No. N

Typo Sale I

74LS132 1.19 t

74LS138 1.24 ?

74LS139 1.24 ■

74LS151 1.25 "

74LS153 1.25 N

_ 74LS1S5 1.25 b

G 74LS160 1.47 1

~ 74LS16I 1.47 \

_ 74LS162 1.47 w

G 74LS163 1.47 I

□ 74LS168 1.68 v

C 74LS169 1.68 ?

G 74LS173 1.68 I

a 74LS174 1.05 J

G 74LS190 1.77 \

G 74LS191 1.75 ■

G 74L5192 1.75 J

a 74LS193 1.75 \

G 74L5195 1.25 fc

D 74LS197 1.25 I

D 74LS257 1.35 J

G 74LS266 .54 ?

B74LS366 .86 1

74LS368 .69 "•a 74LS390

JT* mTafatfi Order By Cat. No.^""iTm^jf 9{2S2320 «k Type No.

Typa

Sale

Type

Sale

r

CD4000

$.29

CD4022

1.19

1

CD4001

.29

~ CD4023

.29

\

CD4002

.29

CD4024

.79 ,

CD4006

1.19

_ CD4025

.34 !

i

CD4007

.29

Z CD4027

.69

!-

CD4008

.79

L CD4028

.89

CD4009

.69

CD4029

1.19

CD401O

.59

" CD4030

.49

r

CD4011

, CD4033

1.60

CD4012

.29

CD4035

.99

i

CD4013

.69

CD4040

1.19

\

CD401S

1.19

CD4041

1.25

CD4016

.49

" CD4042

.88

i

CD4017

1.19

CD4046

1.79

CD1018

1.19

CD4049

.49

CD4019

.49

CD4066

.79

1

CD4020

.90

CD4071

.29

L

CO4021

1.29

Send for your FREE

POLY PAKS CATALOG

FEATURING THE WORLD'S

BEST BARGAINS

IN ELECTRONICS

Tart-nw: Add postaKe Rated: net 30Phone : Wakefield, Mass. (617) 245-3829Retail: 16-18 Del Carmine St.. Wakefield,MINIMUM ORDER — $6.00

POLY PAKS4

[c33^--n P.O.BOX942S[ggPHcmpp IVNNFIELP, MA.

) COPYRIGHT 1978 - POLY PAKS INC.

Circle 96 on inquiry card.

BYTE February 1978 177

all IcB" \

Mfc\

iff

•««k»i i

/'Aofo 7: Entrance to the New York Coliseum Persona/ Computer ExpoShow. Gulf and Western building is to the right.

Photo 2: A young computer fan attempts to hit the enemy ship in AppleComputer's Star Wars game at the Computer Mart of NY booth.

Photo 3: Some of the 14,000people who saw the show.

New York's Coliseum, the location ofmany IEEE, AFIPS (NCC) and other tech-nical shows over the years, played host tothe first annual Personal Computer Expo lastOctober 28, 29 and 30. Over 80 exhibitorswere on hand at 150 booths, selling every-thing from resistors to complete computersystems with floppy disks and colorgraphics.

The exhibition floor filled rapidly onFriday morning. Many of the people I spoketo said the show was their first exposure topersonal computing. Visitors flocked to themore spectacular exhibits like the DigitalGroup's talking computer and Heathkit'sStar Wars game, or tried their skill at pro-gramming the new appliance computers,such as the Commodore PET and the RadioShack TRS-80.

At the MITS booth, the emphasis was onbusiness software. The business men andwomen who attended the show were able tochoose from a number of sophisticatedsystems on view at MITS and other booths.

Some of the Highlights

Summagraphics featured an interestingdevice called the Bit Pad, apparently the firstof its kind in the personal computingmarket. The Bit Pad is a digitizing tabletcomplete with stylus that allows you toquickly enter drawings or writing into acomputer. For the floppy disk enthusiasts,Alpha Micro Systems displayed theirAM-400 hard surface disk; more floppieswere on hand at Per Sci and Realistic Con-trols. Ohio Scientific showed their Chal-lenger III, a most unusual computer thatcontains three processors: the 6502A, 6800and Z-80.

A nonprofit organization called Com-puters for the Handicapped was representedby Warren Dunning (5939 Woodbine Av,Philadelphia PA 19131) and Richard Moberg(404 South Quince St, Philadelphia PA19147). The purpose of the group is to be aclearinghouse of information regarding theuse of computers to help the handicapped.The goal is to get the people with theideas and needs together with the peoplewith the computer know-how so thatdevelopment of these systems can begin.

A Record Crowd

By Sunday evening, over 14,000 peoplehad attended the Expo, making it thebiggest personal computing show ever, andgiving added impetus to this young andgrowing field."

New YorkNotes

by Chris Morgan, EditorPhotos by Fritz Wetherbee

Photo 4: A happy group plays Space War at the Heathkit booth.

Photo 5: Alpha Micro Sys-tem's hard surface disk,one of the most sophis-ticated devices at theshow.

Photo 6: An array of newand used equipmentoffered by the ComputerWarehouse Store (ofBoston).

BYTE February 1978 179

CAlifoRNiA IncJustriaI

Post Office Box 3097 B • Torrance, California 90503

Point Df SaleCnqiPUJER

*I79=P

e *:«

a

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 & t 12v. power supply.

Brand new in factory cartons. Original cost $7,000. Weight 100 lbs., shipped freight

collect. Complete documentation not secured at press time.

CONNECTORS

C3 "O00

"£

g*

RS-232

DB25P

male plug&hood

*3?5

DB25S female

*395

EdgeConnectors

100 PIN

IMSAI/ALTAIR

S-100 • GOLD PLATED • .125" CENTERS

Altaif .140 row, soldertail $5.98 3/S16.50

Imsai .250 row, soldertail $4.98 3/$13.00

3 Level Wire Wrap .250 row... $4.98 3/$13.00

SPECIALSW/W same as above without ears$3.50 3/$1072 (dual 36) W/W .156" centers.. . $2.50 3/$6

■1 ,i_l£ Certified Digital

SCOtCn CASSETTES

Diskettes

Please specifyIBM 3740 seriesor 32 sector.

also

MINIDISKS

Won't drop a BIT!

Electronic Entertainment Center

Tennis-Handball

Hockey-Smash

Action-packed color entertainment lorthe whole lamlly Adjustable skill levelcontrols allow players ol all ages to com-j pete in [ennls. hockey and handball.This lour game entertainment centerturns your television into a video play-ground.

On screen scoring, live action sound and-.^ _ _ rt true component color makes this video

Color >9il8o center an e»cellenl buy at only S2J.S8.

*™^T, Complete with antenna bo* and AC adaptor.

BARREL STOCK

Test 'Em Yourself 'N Save

15 NE555 Timers, 100% functional V %*1

15 TRW Power Darlingtons. TO:3 \ V*

15 2N3055 & 2N3772 NPN power trans.

50 General Purpose TO:92 Transistors

100 Silicon Signal Diodes

SPECIAL |' 4JU^

GENERAL INSTRUMENT ASCII Keyboard Encoder vWw)

AY 5-3600 Prime but house marked only $4.95

TELETYPE MODEL 43

New from Tgletype, the Model43 is capable of priming 132 ASCIIcharacters per line. Send and receivedata a! 10 or 30 char, pet second. Keyboard generates all 123 ASCII code cortions. RS-232 interlace, same as the popularModel 33. Data sheet sent upon request. Manufac-turer suggested price S1377.00,

IMMEDIATE DELIVERY $1199

We also have (Of sale a limited quantity of used Model 35'sPriced at only $449.50

rM^\

REGULATED

POWER SUPPLY

Delivers 5 volts at 8 Amperesalong with three other regu-lated outputs.

This used supply is sold "asis," but we still feei that thisis the best buy you'll ever seein a regulated power supply.75 lbs., Schematics included-

Used H9.50

Shipped Freight Collect

S24.B8

_.>r u.i^\.

ivft-UNIVACKEYBOARD

j* available from Californiaideal eompulcr inpul rleVl.mnliCiar.E The numeric *e,

JOYSTICK *4Jt0

V" PB> for510 00

Quiet Buss \ EH

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 doubte thickness copper traces. Purchasethis board along with tfie power supply kit belowand you have the start of a super Micro-System.

18

SLOT

29.95

mflnUfiL GRAPHiTE

display GEnEPiPrrnn

This loysiick loaiure

the angle ol the stickgames, quad siereo

ioji 100K polentio-lance p.'oportirjnsl loPftriOO) lor te-'eviS'On

Converts signal from APPLE IIand other vidio sources into TVfrequency. Complete with direc-tions and metal case. Assembled

2U02

LOW POWER

45D MS

faitei th.ni 450nS Minimum

purchase 32 pieces.

Sorry, credit cards can not be

740074017402740374037404740574067407740874097410741174127413741474 IS7417742074227423742574267427742874297430743374377438

744274437445

74467447744874507451745374547460747074727473747474757476747974807482748374857486

749074917492749374947495

74967497741007410774109741107411674120741217412274123741257412674128741327413674141741457414774148741507415174153741547415574156741577415974160741617416274163 .1

74166 1.

74167 4.!74170 2.-

74173 h

74174 1.74175

74176 .!

74177 .!

74192 .!

74193 JCMOS

400140024006400740084009401040114012401340144015401640174018401940204021402240234024402540274028402940304032

1702 A 4,95

B2s23 2.95

82s 123 2 95

2102 1.79

2102-1 1.89

21L02 1.19

250nS. 1.49

l.ff

30014

301H

301CN

302H

304 H

305H

307H

307CN

308 H

308CN

309H

309K

310H

310CN

311H

31 IN

312H

318H

318CN

319CN

320K-5

320K-12

320KM5

320T-5

320T-8

320T-12

320MB

320 -24

324N

339N

340K-5

340K-8

340K-12

34QK-15

340K-18

340K-24

340T-5

340T-12

340T-15

340T-24 1.79

350N ,99

351CN .65

370H 1.29

370N 1.29

373N 3.19

377N 3.99

380N 1.39

381N 1.79

382N 1.79

NE555V .49

NE556 1.29

NE565H 1.49

NE565N 1.79

NE566N 125

703CN ,45

709H .39

709N .39

710N .79

711H .39

711N .39

723H .55

723N .55

725H 3.49

733H 1.49

733N 99

739N 1.19

741N .09

747 N .79

748H .39

748N .39

1414N 1.75

1458 .69UARTAY 5 - 1013 A

*4.98

factory prime

2114/4045 IK by 4 STATIC MEMORY

450nS. «11?5 6SO.1S. *9?5

MicrocomputerPower Supply Kit

Ideal supply lor 5-100 systems. Con-tains all the necessary componentsto produce 5 volts ® 10 A.T ± t2 ®2.5 A. (voltage actually higher). Newsurplus Irom Memorex Corporation.Kit Includes 117 ac. transformer,diodes, six computer grade electro-lytic:;, chassis, circuit breaker andgrounded power cord. Transformerhas 5output windings.Include $9.00 shipping East ol theMississippi; S4.00 lor Calif.; al! otherStates $7.00.

^SPEAKERS

IS

$2488

Plus Shipping

Perfect for TV games,alarmsystems,speech synthesizeror intercom. 8 ohms

5"HtFidelity *2.98

TjiumbwheelsM. switch

Ten position

BCD

$139ea.

Miniature /Switches A

TRIMMER

POTENTIOMETERS

your choice

10 50 100 111

2K 5K10KS0K5lor*.98

20

SO 100

16' 14< 12<

Conductor Ft.

[RIBBON WIRE]

SPECTRA-STRIP

$.59

Transistors

ea. 10 50 100

2N22224 .20 .18 .16.152N3055 .69 .65.59.55.79 .75 .69.651.59 149 1,39129.15 .11 .09.07.15 .11 .09.07

odes

10 25 100

MI 30552N37722N39042N3906

Di

1N4002 lOOv. .08 06.051N4005 GOOv.10.08,071N4148 signal .07.05.04jumbo red ea. 10 25 100LED's '15.13.11.09

PowerAdapter

6 vdc,140mA 51.33

7 dc, 1.4 A. 5.509vdc, 15mA. 1.199vdc,175mA. 1.95

12 vdc,600mA 2.95

Output:12v.ct. 175mA.TRANSFORMER

Solar Cells

$1.19

10 100

S.98 J.85

125mA. at .43V. Ideal lor poweringradio receivers of charging bat-teries.

(213)772-0800

RELAYS

SPDT MINIATURE

10 25 100$13"ea. S115 104 .89

Coil 12 Volt dc.7 Amp Contacts

PC. Board Mount

CAPACITORS

ELECTR

80,000/lOv4500/50V

1000/15v

axial

0LYTICS

ea. 10

50

3.95 349 2.95Sl»9 135 1(9

555 49 .45

.1 disc.01 disc

J.12.06

.09.05

.07.04

$■98 yg* .81.73.66SPDT Miniature Toggles

7101 C&K 0N-N0NE-0N

7107 jlit ON-OFF(mnt.ON)

7108 CK ON(moment.ON)

Rocker 1BT DPOT

Rotary 3P-4-Pos.

Rotary 3P-6-POS.

PiishB (N.0.) S.39ea.3/Sl

DIP Switch

JJ75

DISCOUNT

10 25 100 I

Heavyduty groundedpower cord and matingchassis connectors.

IC SOCKETS

wire wrap

low profile

ea. 25 50

ea. 25 50

s

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

50ft.

$.98

KYNARW^

500 1,000 11,000»9. S15. J105.

$23.95 '

$5.45

I

Circle 13 on inquiry card.

In unusual cases, processing may exceed 30 days.

COMPUTER ENGINEERING

THE MIDNIGHT SPECIAL . . .

... a full color limited edition poster for your Casey

Jones fantasies.

The poster is \6lA by 21% inches (41.9 by 54.6 cm) witha white border. The colors are the same as the originalby Robert Tinney, which graces our July cover, minusthe BYTE logo. The price is $3.00, plus 50<t postage. Itis shipped unfolded, in a mailing tube.

ORDER NOW. SUPPLIES ARELIMITED.

BITS Inc

70 Main StreetPeterborough NH 03458

□ Bill BankAmericard

□ Bill Master ChargeNo

Posters $3.00 eachplus $ .50 mailing

D Check Enclosed

$Exp. Date

Name.

Address.City

.State Zip_

I —»_ —_—. —„_.__„„____„_„U.„J

ESAT-100

Economical Stand Alone Terminal

Assembled, Tested, Burned-ln $239.00

For Teletype. SCMP. Jolt. Ktm SBC 80 Users A reliable, mexpemive. self coniametf Communicating Terminal, completelyassemoted, bumed-in, and tested S239.00

SPECS 32 character x 16 lines x 2 pages of 5 x 7 dot matrix 64character ASCII communicating with a Sena', asynchronous 11unit code. TTL compatible from 300 to 9600 baud. KeyboardControls are back and forward space. line feed, clear page, or toem] nf line, select page 1 or 2. fullrtialf o>."Jex, local/remote,cursor on/off. odd/even/no parity Output to TV Monitor isComposiie Video. 75 Ohms Keyboard required is parallel output 7 unit ASCII with negative true strobes Keyboard may tapup to 200 Mo from the ESAT 100 onboard 5V power supply.Power required is 1 I0VAC @ 7 walls

COMMENTARY A^ this writing HOI 771, the ESAT 100 is theonly Stand Alone Terminal board requiring only black andwhite TV set and ASCII Keyboard You do not have to havea S-100 Bus Machine, or even a computet May be used in con-junction with a Modem and your home TV set to provide a timeshare type terminal at any Baud rate you desire.

Note, commercial terminals use an 80 character x 24 line format However, we have chosen 32 character x 16 lines (or tele-vision set applications because of the limited resolution availableon most TV sets

Nonetheless, for those of you who are the owners of eitherhigh quality video monitors, or the best of Japan's TV receivers.we offw the

Scrollhoard Adapter K,t (designed to fit On ESAT 1001 vCharacters x 16 lines and Automatic Scrolling foi S29.95M & R Suparmod R F Modulator for antenna COntiecWyour TV set Runs off of ESAT 100 power supply coleblackS. wh.te tor S24 95

1 R.iifililwM

*EE f ! i 11

ill in

RS> IS IE K (1 |J

Bill i'l i

LINEAR

LM380N 1.39

LM340T 5,12,15.99

ith 64

Full Color TV Game Kit:

Includes MM57100 Game Chip, MM53104 Clock Gen., LM1889N ColorModulator, 3.58 MHz color burst oscillator crystal, variable cap for crystaladj. and PC board. Very impressive on color sets. All data sheets andschematics included...$25.95

Direct Reading Capacitance Meter Kit:

Here is a handy shop item incorporating a reliable and accurate mea-surement method which works from 01 pico + d to 1 0 micro + d. Includeslarge 6" scale analog meter movement, all electronic parts and full docu-mentation and theory of operation. Requires 5V and + -12V power. Makesaccurate readings directly and instantly! No tuning, fiddling or interpolation required. Full documentation and theory....339.95

5V Regulated Power Supply Kit:

Provides regulated 5V (<0 approx. 250 ma for benchwork, breadboards andsmall projects. Includes LM340T-5 regulator, rectifiers, filter caps, andwall-plug transformer. Full notes...56.95

Nicad Batteries and Charger:

2 ea 2AH 'C size Nicads (great for memory power fail CKTS, cold wea-ther flashlights, etc. and charger...$1 3.95

VERBATIM Removable Magnetic Storage Media

PRICE REDUCTION!

Minidiskettes

NE560

NE561

NE565

NE566

NE567

LM1812

LM1889

2.952.951.951.491.494.954.95

1-94.79

10-254.65

26-1004.45

CAP. SPECIAL:

The Highest Quality,

Bypass anywhere:

VK06 0.1/100V for SO.29

CPU SPECIALS

8080A 10.95

Z80 (2mHz) incl.IBmHz Xtal 33.95Z80A (4mHz) incl.36mHz Xtal 39.95

OPTOCOUPLERS

4N26 1.00

PROMS

8223 Special 10/9

82S115 8 x 512 15.9

EPROMS

27082708C1702A

650nS

450nS

lOOOnS

MD525-01MD525-10MD525-16

Standard Size

Diskettes

FD34-1000

FD32-1000

FD65-1000

Cassettes

R-300

Digital Direct

RAMS

21 L02-121 L0221 1 1 AL 4C3107BPD41 1D-4

(Soft Sector) for: Intelligent Systems,

Magnovox, Microkit, and Vector Graphics

(10 Sector, Hard) for: Digi-log, North Star,

Polymorphic, Tei Inc., and Wang

(16 Sector, Hard) for: Altair, Comtek,

Micropolis, R2E, Realistic Controls,

and Teleray- Research Inc.

1-9 10-25 26-100

5.99 5.33 4.79

(Soft Sector, IBM Std.)

(Hard Sector, Inner dia.)

(Hard Sector, Outer dia.)

1-9

5.25

10-25

4.99

955

12.95

16.95

4.95

450nS250nS45 0nS60nS135nS

1.251.502.301.993.99

26-100

4.35and OTHERS

AY5-1013 4.95

MM5203Q 4.95

MM5204Q 9.95

8K Static Memory Boards

Tested, Burned-ln, Complete$179.00 for 450nS$239.00 for 250nS$ 19.00 for Bare Board

Electrolabs

POB6721,

MM5369MM53202513 Up.2513 Lo,IN4005IN4148

1.696.00

5.956.9511/1.0015/1.00

A$&\ <MiS0W&\ %

Stanford, CA94305

415-321-5601

SATISFACTION

TO ORDER: 100% guaranteed!

Send check or money order and include $1.00 for shipping, 1.00 (op-tional) for insurance, and please include &Vi% sales tax .if you are aCalifornia state resident. COD orders add .85 Thank you.

Circle 45 on inquiry card.

BYTE February 1978 181

What's New?

PERIPHERALS

Cassette Recorder Meets ANSI,ECMA Standards

Text Handling Terminal FeaturesAutomatic Justification

Time and Date Board for LSI-11

m (J [in

>-* mm

; (J) tsm

•can (O)tan is»

on

Ji_ *

•can gum mil

gw 9f* S?w

a|| ^b^ g_^

■

The Delta 4300E, a new videodisplay terminal designed for textprocessing applications, features auto-matic word wrap, automatic ragged rightsentence and paragraph justification, andautomatic justification of new insertions.

Editing features include searching fora specific word or word string, and op-tionally deleting or replacing the stringfound with a new word or word string.Text is stored in a 4 K charactermemory, expandable to 8.5 K. Thedisplay presents a full 128 upper andlower case character set in 25 lines of80 characters each. Automatic scrollingis provided, and a "paging" featurepermits recall of information that hasbeen scrolled off the screen. Communi-cation speeds up to 9600 bps are avail-able, and a serial printer port can beadded as an option. The 4300E isoffered by Delta Data Systems Corp,Woodhaven Industrial Park, CornwellsHeights PA 19020, (215) 639-9400."

Circle 615 on inquiry card.

1

brbh

3

... .

This battery operated accessoryboard provides calendar and real timeclock functions for the LSI-11 orPDP-11 computer. The TCU-50 boardfor the LSI-11 provides the month andday, and the time in hours, minutesand seconds in response to a readinstruction. The TCU-100, for thePDP-11, also includes an interruptfeature which can be set to interruptthe system at a specific time or atregular intervals. The rechargeablebatteries are good for three monthsof use. The units are shipped runningand preset to the correct date and localtime at the customer's location. TheTCU-50 is $325, and the TCU-100 is$495 in single quantites, from DigitalPathways Inc, 4151 Middlefield Rd,Palo Alto CA 94306, (415) 493-5544."

Circle 61 7 on inquiry card.

Daisy wheel Printer TakesByte Sized Commands

Interfacing a daisywheel printer to amicrocomputer is simplified with thisnew OEM model, which takes itscommands in serial or parallel byteformat instead of the 13 bit formatof prior mechanisms. The Sprint Micro 5

includes a built-in microprocessor with aset of 58 commands, which can be usedto define format and character spacing,hammer intensity, ribbon color, verticaland horizontal tabs, and select normal,program or graphics modes. The optionalRS232C interface, which includes a224 character buffer, allows the printerto receive parallel and serial data fromtwo sources simultaneously. For ter-minal builders, a send receive cover andplug-in facilities for a keyboard areoffered. The control panel includes11 switch selectable functions, such asfull or half duplex, data rate, formlength, and 10 or 12 pitch spacing.The Sprint Micro 5 is available in twomodels, with printing speeds of 45 or55 characters per second. The 45 cpsmodel is priced at $1675 in quantitiesof 50, and the optional RS232C inter-face is $100 from Qume Corporation,2323 Industrial Pky W, Hayward CA94545,(415) 783-6100."

Circle 616 on inquiry card.

^Illfeptoiy

■L * 1

V

1 f

Y

i

This new compact, lightweight digitalcassette recorder can be used with anyECMA-34 compatible reader, minicom-puter or terminal as well as ANSI com-patible devices such as the Texas Instru-ments Silent 700. The Model 819-34measures 4.5 by 4 by 7 inches (11.4by 10.2 by 17.8 cm), weighs 3 pounds(1.4 kg) and requires 500 mW whilerunning or 20 /iW in standby mode.The unit features parallel input of upto 32 bits, a data rate of 50 bits persecond and a formatted capacity of1 million bits. Analog to digital and16 channel multiplexer cards may beadded to the unit's card cage. TheModel 819-34 is $995 from MemodyneCorporation, 385 Elliot St, NewtonUpper Falls MA 02164, (617) 527-6600."

Circle 618 on inquiry card.

Credit Card Magnetic Stripe Reader

This device reads or writes infor-mation on the magnetic stripes ofcredit cards conforming to the Inter-national Standards Organization (ISO)and American National StandardsInstitute (ANSI) conventions. Themagnetic head travels along a precisionlead screw running in ball bearings toread or write on the stripe, and a springloaded design minimizes card wearand provides optimum signal output.The ANSI standard provides for re-cording of up to 600 bits per track, butan improved design,, for which patentsare being sought, is capable of readingand writing up to 1024 8 bit bytes onthe stripe. Interfacing options includeTTL clock and data levels, bufferedRS232 signals and a direct micropro-cessor bidirectional bus interface. Pricesstart at $296 for the reader mechanismwith TTL interface in single quantities,from Vertel Industries, 167 WorcesterSt, Wellesley Hills MA 02181, (617)235-2330."

Circle 61 9 on inquiry card.

182 BYTE February 1978

Circle 76 on inquiry card.

[g] qjbercDm boards

c

MB-1 MK-8 Computer RAM, (not S-100), 4KX8, uses 2102

type RAMs, PCBD only $22

MB-3 1702A EROM Board, 4KX8, S-100, switchable ad-dress' and wait cycles, kit less PROMS $65

MB-4 Basic 4KX8 ram, uses 2102 type rams, may be ex-panded to 8KX8 with piggybacking, S-100 buss PC

board $30

MB-6 Basic 8KX8 ram uses 2102 type rams, memory pro-tect in 256 to 8K switchable S-100 buss. PCBD .. .$35MB-7 16KX8. Static RAM uses/jP410 Protection, fully buf-fered.

PCBD .... $30.00 KIT ... .$525.00

MB-8 2708 EROM board, S-100, BKX8or 16KX8 kit without

PROMS $85

MB-9 4KX8 RAM/PROM Board uses 2112 RAMS or

82S1 29 PROM kit without RAMs or PROMs $80

IO-2 S-100,8 bit parallel l/Oport, %of board is for kludging.

Kit $55 PCBD $30

KM Two serial I/O ports with lull handshaking 20/60 macurrent loop. Two parallel I/O ports.

Kit $150

VB-1 64X 16 video board, upper lower case Greek, com-posite and parallel video with software, S-100.Kit.. . $150 PCBD. . ..$30

SP-1 Music synthesizer board, S-100, computer controllerwave forms, 9 octaves, 1V rms '/2% distortion, includes

software kit $200

Altair Compatible Mother Board, 11 x 11VS x 54".

Board only ... $45 With 15 connectors $105,

Extender Board full size. Board only $9

With connector $13.50

Solid state music Cybercom boards are high quality glassboard with gold finger contacts. All boards are check forshorts. Kits only have solder mask. 90 day guarantee onCybercom kits.

Non-electrical cosmetic rejected PCBD from Cybercom.IO-2....S21 MB-6.. .$21 VB-1 000 . . . . $25

W777C

/nc.

WAMECO INC.

MEM-1 8KX8 fully buffered, S-100. uses 2102 type rams.

PCBC $30

Mother Board 12 slot, terminated, S-100. board only$35CPU-1 8080A Processor board S-100 with 8 level vector

interrupt PCBD $30

10% discount on 10 or more of WAMECO PCBD in anycombination.

NEWI All IC's Sockets & hardware for WAMECO CPU-1include all prime Eowa, 8214. 8224, 8212. PCBD not in-cluded $65

All ICs, sockets & hardware lor WAMECO MEM-1 includesprime 2102AL-4's. PCBD not included Order PCBD sepa-rately $135

Special 2102AL-4 1K x 1 ram Vi less power than 21L02type rams, with power down, prime from NEC. Ea. 2 00; 32ea. 1.80; 64 ea. 1.70; 128 ea. 1.60; 256 ea. 1.50.

9080A AMD 8080A (Prime)

8212/74S412 Prime

8214 Prime

8216 Prime

8224 Prime

8228 Prime

8251 Prime

8255 Prime

1702A-6 AMD 402A Prime

TMS-6011 UART Prime

2513 Char Gen Upper Prime

2513 Char Gen Lower Prime

1702A Intel Not Prime

20004.008.304.955.008.9014.5014.505006.9511.0011.004.00

m

419 Portofino DriveSan Carlos, California 94070

Please send for IC, Xistorand Computer parts list.

74 LOO

74L01

74L02

74L03

74L04

74L05

74L06

74L08

74L09

74L10

74L20

74L26

74L30

74L32

74L42

74L51

74L54

74L55

74L71

74L73

74L74

74L75

74L78

74L85

74L86

74L89

74L90

74L91

74L93

74L95

74L98

74L123

74L164

74L165

74L192

74L193

MH0026

MC1488

.25

.25

.25

.25

.30

40

.30

40

.40

.30

.35

.40

.40

.45

1.50

.35

.45

.35

.30

.55

.55

1.20

90

1.40

.75

3.50

1.50

1.50

1.70

1.70

2.80

1 50

2.50

2.50

1.25

1.20

2.95

1,50

74LS00

74LS01

74LS02

74LS03

74LS04

74LS05

74LS08

74LS10

74LS12

74LS20

74LS22

74LS27

74LS30

74LS37

74LS38

74LS42

74LS51

74LS54

74LS55

74LS73

74LS74

74LS76

74LS151

74LS174

74LS175

74LS192

2501B

2502B

2507V

2510A

2517V

2519B

2532B

2533V

DM8131

N8263

MC1489

DM8837

.40

.50

.40

.40

.45

.45

.40

40

.55

.40

45

45

.40

.60

.60

1.50

.40

45

40

.65

.65

65

1.55

2.20

1.95

2.85

1.25

3.00

1.25

2.00

1.25

2.80

2.80

2.80

2.50

3.50

1.50

1.50

1101

1103

2101

2111-1

2112

2602

4002-1

4002-2

MM5262

7489

74200

74C89

82S06

82S07

82S17

8223

82S23

82S123

82S126

82S129

B2S130

82S131

IM5600

IM5610

IM5603

IM5604

IM5623

IM5624

MMI6330

DM8573

DMB574

DM8575

DM8576

DM8577

DM8578

2.4576 MHZ

XTAL 7 20

1.251.254.503.754.501 607.507.501.002.004.953.002.002.002.002.503.003.003.503.503.953.952.502.503.003.503.003.502.504.505.504.504.503.50400

Check or money order only. If irau ere not a regular customer and yourorder is large please send either a cashier's cteck or a postal moneyorder, otherwise there will be a delay of two weeks for the check toclear. All items post paid in Ihe U.S. Calif residents add 6% tax.Money back 30 day guarantee. We cannot accept returned tC's thathave been soldered to. Prices subject to change without notice. $10minimum order. $1.00 sen/ice charge on orders leM than S10.

THE ALPHA-1 SYSTEM

CRATED A BEST BUY

IN MASS STORAGE

SYSTEMS

•applications

• BUSINESS applications include mailing lists, payroll,billing, and inventory.

• CASSETTE BACKUP for disk-based Systems notonly provides large amounts of storage at low cost,but also provides for convenient storage of histori-cal records.

• DEVELOPMENT SYSTEM features include a power-ful operating System with an Editor, Assembler, andDebugger, plus a variety of System utilities whichspeed development.

• OEM applications include P.O.S. data capture, wordprocessing systems, audio-visual presentation sys-tems, telephone call transfer systems.

• hardware

• Stores greater than 500K bytes per side of a C-60tape.

• Access a file in 17 seconds average on a C-60 tape.

• Load 8K of data in less than 11 seconds (6250 baud).

• 100% interchangeability of cassettes with no adjust-ments required orallowed.

• Compatible with all popular S-100 Bus Microcom-puters.

• Audio track under computer control.

• Eliminates the need for ROM/PROM monitors.

• SOFTWARE

• MCOS, a powerful stand-alone cassette operatingsystem, is operationally much simpler than a D.O.S.,handles variable length named files, will update afile in place, packs or copies tapes with a singlecommand.

• EXTENDED BASIC with MCOS permits array hand-ling and concatenation of files, plus all capabilitiesof MCOS.

• PRICES START AT $240

• FREE BUYERS GUIDE

If you are shopping for a tape or disk system for yourS-100 Bus Computer System, you do not have all thefacts until you have the MECA "BUYERS GUIDE TOMASS STORAGE." This 10 page guide book provides aframework for evaluating cassette, cartridge, and disk-based systems. Write for your copy today.

For complete information including the Dealer nearestyou, write or phone:

mecsi

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

Circle 67 on inquiry card.

BYTE February 1978 183

Whal's New?

Peripheral Boards for Z-80

PERIPHERALS

Zoom and Pan withThis Graphics Terminal

This raster scan graphics terminalwith a built-in microprocessor performsa variety of graphics operations inde-pendently of the computer to whichit may be connected. The terminalfeatures separate alphanumeric andgraphics memories, with 8 K bytes ofmemory (expandable to 12 K) allottedto a 24 line by 80 character alpha-numeric display with 9 by 15 dotcharacter cells, and 256 K bits ofmemory for graphics with a 360 by720 dot resolution. Graphics capa-bilities include "rubber band" linedrawing, zoom magnification of anyportion of the graphics memory up to16 times, and panning through anyportion of the magnified display whichis not in the viewing window. An auto-matic plotting feature for tabular dataguides the operator through a simplemenu of questions about plottingparameters, and then generates afully labeled plot with as few as threekeystrokes. Optional built-in cartridgetape drives provide up to 220 K bytesof local data storage. The Hewlett-Packard 2648A graphics display terminalis $5500 in single quantities, or $7100with cartridge tape drives, from Hewlett-Packard Company, 1501 Page Mill Rd,Palo Alto CA 94304, (415) 493-1501 .■

Circle 620 on inquiry card.

This new family of peripheral andaccessory boards for the Z-80 basedMCB series includes the MAD-ONEmultiple channel analog interface cardwith software programmable gains($595), the Model 606 programmablegain amplifier and filter card with dualchannel inputs ($395), the Model 602prototyping board with or withoutwire wrap pins ($75), the Model 605extender card ($95), and the Model604 card cage with eight card slots($210). The boards are available fromSignal Laboratories Inc, 202 N StateCollege Blvd, Orange CA 92668, (714)634-1533."

Circle 623 on inquiry card.

Low Cost Hobbyist Keyboard

Analog Boards from Zilog

Smart Terminal

This inexpensive keyboard featuresa versatile interface which allows userselection of data and strobe polarity,parity sense, upper case alpha lock,and access to three user definablekeys for custom code or functionassignment. The Model 753 keyboardprovides ASCII encoding for 53 keysin the standard Teletype format,employs KBM keyswitches for relia-bility and is said to be guaranteed.When built from a kit, estimated con-struction time is two hours. The Model753 is $59.95 in kit form or $71.25assembled and tested. Also availableis a custom plastic enclosure, Model701 ($14.95), which is precut forthe Model 753 keyboard. Deliveryis from stock, from George RiskIndustries Inc, GRI Plaza, KimballNB 69145, (308) 235-4645."

Circle 621 on inquiry card.

Two new analog boards have beenadded to Zilog's MCB family of Z-80microcomputer boards. The Z80-AIBboard features 32 analog input channels,analog to digital converter gain rangesup to 0 to 10 V, amplifier gain rangesof 1 to 1000, and 12 bits of conversionresolution. The Z80-AIB is $575, or$675 with an optional DC to DC con-verter. The Z80-AIO board features32 input channels and two analogoutput channels. Output resolutionis also 12 bits. The Z80-AIO is $775,or $875 with the DC to DC converter,from Zilog, 10460 Bubb Rd, CupertinoCA 95014, (408) 446-4666."

Circle 622 on inquiry card.

This "smart" editing terminal fea-tures an option for use with theBurroughs TD-800 series polling pro-tocol. The detachable keyboard gener-ates the full ASCII character set and has16 or 32 special function keys. Editingfeatures include tab, back tab andcolumnar tab operations, protectedfields, absolute cursor addressing andcursor position reading. The Burroughspolling features include specific, broad-cast and fast selection and multipointcontention mode. The D300 Teletypecompatible version is $1645, and theD400 with Burroughs polling featuresis $1895, both in quantities of 25 with45 day delivery, from EECO, 1441 EChestnut Av, Santa Ana CA 92701,(714) 835-6000."

Circle 624 on inquiry card.

184

BYTE February 1978

Circle 92 on inquiry card.

* YOUR BEST BUY IN WIRE WRAP SUPPLIES *

PRECUT WIRE

WHY BUY WIRE ON ROLLS?PRECUT & STRIPPED WIRE 15:

FmI - No more cutting & stripping by handReliable - Good, clean, uniform stripEconomical - Cheaper than using bulk wire

100 pes 013'1 al$.B2 » aVtC/tt. 50 ft. roll at SI.99 = «/lt100 pes of 6" a! 1.06 ■ 2*/tL 100 ft roll at 2.95 = 3*/tt.

Wire Kit 1 at S6.95 ■ 2 1/3C/H.

» 30 Kynar stripped 1" on each end. Lengths

500

2.402.602.803.00

1000

4.30/K4.71/K5.12/K5.52/K

5000

3.89/K4.22/K4.55/K4.68/K

3.213.423-653.B5

5.93/K6.34/K8.75/K7.16/K

5.21/K

5.52/K5.86/K6.19/K

4.05

4.254.454.65

7.57/K7.98/KB.39/K8.80/K

6.52/K6.85/K7.167K7.53/K

4.655.055.255.51

9.21/K9.62/K10.03/K10.44/K

7.64/K

8,17/K8.50/K8.83/K

Addi. inches .10 .41 ,82/K .66/K

*-

f

WIRE KITS

* 1

$6.95 # 2

119.9 5

250 3"250 iW

100 4"

100 4W" 250 2VT 250

100 5" 500 3" 250

100 6" 500 3»" 100

500 4" 1

Choose One Coloror Assortment

AW 250 6"

5" 100 BW

5'A" 100 7"

250 It. Roll Bulk

WIRE WRAP SOCKETS

1-9 10-24 25-99 100-249 250-999 1K-5K

IBpin" .63 .58 .54 .47 .44 ,41

20 pin .84 .78 .71 .63 .59 .54

22pln' 1.30 1.20 1.10 .95 .90 .84

24 pin .91 .84 .78 .68 .64 .58

28 pin 1.25 1.15 1.08 .95 B9 .82

40pin 165 1.55 1.42 1.25 1.15 1.09

Gold 3-level Closed Entry Sockets

' End & Side Stackable All prices Include gold

Tin sockets and 2-ievel sockaia available

INTERCONNECT CABLES

SINGLE ENDED

DOUBLE ENDED

14 pin

16 oin 24 pin

14 pin

16 pin

24 Pin

1.241.33

1.521.91

1.34 2.051.44 2.241.65 2.632.06 3.40

2.242.332.52

2.91

2.452.552.76

3.17

3.373.924.315.08

WIRE WRAP TOOLS

$34.95

HOBBY WRAPModel BW 630With Free Wire Kit 1($6.95 Value)

Batteries & Charger $11.00

WSU 30 Hand Wrap-Unwrap Strip Tool 5.95

WSU 30M, lor Modified Wrap 6.95

BT 30 Extra Bit 2.95

WIRE WRAP BOARDS

1^1 5-9

WW10-24 Connector

H-PCB-1 4x4% 44 Buses on both sides 4.75 4.50 4.00 3.00

3662 4x6 44 Blank 6.25 5.85 5.50 3.00

3682 4x10 44 Buses on one side 10.50 10.00 9.50 3.00

3682-2 4x6 44 Buses on one side 9.50 9.00 8.25 3.00

4066-4 4x6 72 Buses on both sides 13.50 13.00 12.50 4.00

3719-1 4x6 72 Blank 9.00 8.50 8.00 4.00

3719-4 4x10 72 Blank 11.00 10.50 10.00 4.00

4350 7x9« 80 Buses on both sides 17.50 16.50 16.00 7.00

8800V 10x5.3 100 Buses on both sides 19.50 17.96 16.95 5.00

169P84 8Kx17 - Blank 6.25 5.75 ,5.26

IS

SOCKET 14 pin Gold WW .34

— -. _. 16 pin Gold WW .36

SALE! 24 pin Gold WW .75

Prices good through

3/1/78when purchased withWire Kit #1 or #2

10-49.32.35

50 up.30.33

Ordering Information:

Orders under $25 and COD'S, add $2AH others, shipped Ppd in U.S. via UPSFor Blue Label (Air) or 1st Class, add $1We accept Visa & MasterchargeMost orders shipped same day

Dealer Inquiries Invited

PAGE DIGITALELECTRONICS

135 E. Chestnut Street 4A

Monrovia, California 91016

Phone (213) 357-5005

APPLE II I/O BOARD KIT

Plugs Into Slot of Apple 11 Mother BoardKIT INCLUDES:

FEATURES:

1 8 Bit Parallel Output Port(Expandable to 3 Ports)

I Input Port

15mA Output Current Sinkor Source

TTL or CMOS Compatible

Addressable anywhere in mem-ory output area

Can be used for peripheralequipment such as printers,floppy discs, cassettes, papertapes, etc.

P.C. Board. EC's Sockets andAssembly Manual.

PRICE:

I Input and I

r?' S49.00

Output Port

1 Input and 3 Output Ports

i f<» S64.00

DEALER INQUIRIES INVITED

INSTRUCTION MANUAL with SOFTWAREfor Interfacing to SWTPC PR-40 Printer, $10.00

LD 130

3 DigitsA/D Conv.

$11.95

6800 mpu 15-956820 pia 13.°°6850 acia I2P°

2708

E Prom

IKx8 450ns

$14.95

SHIPPING AND HANDLING KEYBOARD S3.50. OTHERS - SI .00. California residents add 6% sales tax

ELECTRONICS WAREHOUSE Inc.

1603 AVIATION BLVD.REDONDO BEACH, CA. 90278

TEL. (213)376-8005WRITE FOR FREE CATALOG

You are invited to visit our store at the above address

3RD GENERATION ONLY $63.00

ASCII KEYBOARD KIT

FURTHER IMPROVEMENTS. MORE FEATURES

. TTL Logic Circuits OPTIONS:

• Power- +5V ">75mA • Metal Enclosure (Paint-

' .'" „ ed IBM Blue and White

• Upper and Lower Case 525 fjO

• Full ASCII Set (Alpha ,OD. .-. „ c, nnNumeric, Symbols, • l» Pm Edge Con. S2.00

Control) • I.C. Sockets . . . S4.00

. 7 ot 8 Bits Parallel Data . Serial Output (Shift

. Optional Serial Output Register) S2.00

• Selectable Positive or • Upper Case LockNegative Strobe, and Switch (for CapitalStrobe Pulse Width Letters and Numbers)

• 'N' Key Roll-Over S2 °°

. Fully Debounced K,T Includes; Key

„ . n . v board, P.C. Board, all re-

• Carnage Return Key • 1 ' .

6 ' quired components and as-

. Repeat Function Key sembly manual.

. Shift Lock, 2 Shift Keys NQTE. ,f yQU haye thjs

• 4 User Defineable Keys 53 Key Teletype Key-

• P.C. Board Size: board you can buy the17-3/16" x 5" Kit without it for S44.95.

Circle 48 on inquiry card.

BYTE February 1978 185

What's New?

Million Byte Floppy Disk System

MASS STORAGE

Intelligent Floppy Availablein Several Styles

New 74 Megabyte Hard Disk

These floppy disk drives featurevoice coil positioning for faster accessand a microprocessor based intelligentcontroller. The Model 277 Dual DisketteDrives can be packaged in a variety ofconfigurations: 1) a system with one ortwo dual drives, controller, power supplyand cabling enclosed in a 19 inch rackmountable chassis; 2) a one or two drivesystem with power supply and cabinetbut without the controller, and 3) a"slimline" system which incorporatesone dual drive and power supply in atabletop chassis. The intelligent con-troller has its own 8080 microprocessorand internal disk operating system infirmware. On command, the 1070 con-troller can perform all file managementfunctions including disk formatting andinitializing. Voice coil positioning is saidto be seven to ten times faster than othermethods, with an average seek time of36 ms. Interfaces are available for mostof the popular microcomputers. Thesystems range in price from $740 for thecontroller only to $3995 for the twodrive (four spindle) system with con-troller, from PerSci Inc, 12210 NebraskaAv, W Los Angeles CA 9002S, (213)820-3764."

Circle 625 on inquiry card.

Priced at $6000, the C-D74 disk driveprovides a 35 millisecond average accesstime to any of 74 million bytes ofinformation. With 12 tracks on a cy-linder, the device can access any of220,000 bytes in 5 ms. Single trackseek time is 10 ms, and the disk's datatransfer rate is 7.3 million bits persecond. With its large storage capacityand fast access time, the device is saidto be adequate to store all the recordsof a medium size company. The C-D74uses "Winchester" technology in anonremovable sealed chamber drivewith a rotary arm positioner, and canrun 24 hours a day without worry ofdisk wear. The C-D74 disk drive, cable,interface for an OSI Challenger andOS-74 operating system software is$6000 FOB the shipper's plant, fromOhio Scientific Instruments, Hiram OH44234, (216) 569-7905."

Circle 627 on inquiry card.

Minifloppy with FORTRAN IV

W&

■SttPgHI

This Altair (S-100) bus compatiblefloppy disk kit allows you to runFORTRAN programs on an 8080 basedsystem with at least 20 K bytes of

programmable memory. The kit includesa Shugart SA400 minifloppy disk drive,cables and cabinet, a floppy disk inter-face board kit, a disk operating systemwith file management, a text editor,and FORT//80, a FORTRAN IV systemfor the 8080 from Unified Technologiesof Canada. The interface board cancontrol two minifloppy drives andincludes a bootstrap and diagnosticprogram in ROM. Also included are 8 bitparallel input and output ports. Thedisk operating system (FDOS) managesnamed files and includes a "sysgen"program for custom tailoring of theoperating system IO routines. TheFORTRAN system includes doubleprecision arithmetic, in line machinecode, FORTRAN control over inter-rupts, and direct interface of custom IOdrivers to FORTRAN READ andWRITE statements. A 90 day warrantyand a 2 year software and documen-tation update service are provided. The

This floppy disk system comprisesfour drives in a "dual dual" configur-ation, a controller, power supply andchassis, enclosure, cabling, and a newBASIC software package." The Meta-Floppy 1054 Mod II will plug into any8080 or Z-80 based computer using theAltair (S-100) bus and features an allsteel head positioner system, electronicscapable of reading disks whose signalstrength is weak, file protect circuitryand a disk insertion interlock, andlighted numerals to show the logicaladdress of each drive. Track to trackaccess time is about 30 ms, and thedata transfer rate is 250,000 bytes persecond. The BASIC language systemsupports line printer spooling andchaining of program segments. The 1054is $3220 in single quantities, from Micro-polis Corp, 7959 Deering Av, CanogaPark CA 91304, (213) 703-1121."

Circle 633 on inquiry card.

AC Capstan Motor forCassette Transport

The Phi-Deck cassette tape transportis now available with a fixed speed ACcapstan motor. Features of the newmodel include four motor control,remote control capabilities, fast startand stop, less than 30 seconds rewindtime, and speeds from 1 to 10 inchesper second. TTL compatible controlboards are available for the transport,as are options such as beginning and endof tape sensing, cassette in place sensing,etc. The transport is $149 in singlequantities and less than $100 in quan-tities of 500, from Triple I Inc, POB18209, Oklahoma City OK 73118,(405) 521-9000."

Circle 634 on inquiry card.

package costs $1095 as a kit, or $1220assembled and tested. A second mini-floppy drive is available as a kit for$449, or $495 assembled and tested,from Realistic Controls Corporation,3530 Warrensville Center Rd, ClevelandOH 44122,(216) 751-3158."

Circle 626 on inquiry card.

186

BYTE February 1978

Circle 8 on inquiry card.

All Prime Quality — New Parts Only

Lowest Prices — Satisfaction Guaranteed

EDGE CARD CONNECTORS: 25 PIN SUBMINIATURE CONNECTORS:

Bifurcated Contacts. Not tin. Gold over nickel. 50/100 Pin (.100, Gold Plated Contacts.1.25, + .156 Pin spacing). Double Readout.

DB25P Plug $2.60 ea 5 pes $2.25

50/100 Altair Type-Dip Solder Pins $4.25 ea 5 pes $4.00 ea DB25S Socket $3.75 ea 5 pes $3.5050/100 Imsai Type - Dip Solder Pins $4,25 ea 5 pes $4.00 ea DB51212-1 Hood (grey) $1.00 ea 5 pes $.9550/100 Imsai Type with Guides $4.50 ea 5 pes $4.25 ea DB51226-1A Hood (black) $1.10ea 5 pes $1.00Imsai Guides only $ .30/pr 5 pr $ .25/pr

All other contacts available: Solder Eyelet, Wire Wrap, etc. All gold. Buy a complete set:Many other types available: 10/20, 15/30, 18/36, etc. 1 Plug, 1 Socket, 1 Hood (any) $6.50/setWhen ordering: specif/ type of contact. 5 Sets $6.25/set

eaeaea

ea

2708 1KX8 PROM 450 NS

$16.75 ea

5 pes or more $1 5.70 ea

8080A - PRIME

$12.00ea5 pes $11.50 ea

Write for larger quantity discounts.Dealers welcome.

Minimum order $10.00: Add $1.00 for shipping and handling.Orders over $25.00: We pay the shipping: Calif, residents add 6% tax.No COD's: For immediate shipment send money order or cashier's check.

When ordering:

State method of shipment:

Mail or UPS.

ORDER FROM:

Beckian Enterprises

P.O. Box 3089 Simi, Calif. 93063

4K RAM BOARD

Assembled and tested. AAA AP

See kit below.4K RAM BOARD KIT

450ns Access RAMs

Fully Buffered

Low Power 579.95

Static

5V only

414 x 6 inch board

Buy 4 RAM Board kits at$79.95 each and an 8 slotMother Board is yours

Includes 8 connectors and card guides. FREE.

KIM INTERFACE

Board plugs into Kim expansion connector

Connector for our Mother Board

Full memory decoding

Write protect for (4) 4K bytes

Address and data Bus buffers

^ffrmiwi

MOTHER BOARD

8 SLOT 44 PIN BUS

50 Pin Edge Connector

Mother Board $20.00 eaConnectors 2.50 ea

Card guides for above $10.00 per set.

2102 — $1.20 Multiples of 25 only.Low power, 450 n.s. Access and cycle.

8K EPROM BOARD

5 Volt only For our bus

MAKE CHECK OR MONEY ORDER PAYABLE TO:

Kathryn At wood EnterprisesP.O. Box 5203, Orange, CA 92667

Discounts available at OEM quantities. For orders less than$25.00 total, add $1.25 for shipping. California residentsadd 6% sales tax. Estimated shipping time 2 days ARO withmoney order. For checks allows 7 days for check to clear.

Circle 7 on inquiry card.

BYTE February 1978 187

What's New?

MEMORY

Semibuild This Semikit

A semikit is a fully assembled andwave soldered printed circuit board withpretested integrated circuits, which theuser need only test and burn in on hisor her own computer. It is designed toeliminate common kit building problemssuch as bad solder joints, heat damagedcomponents and faulty integrated cir-cuits. Documentation is included withthe semikit for the test and burn in pro-cedures. The first semikit is the 16KRAmemory board, which includes 16 Kbytes of programmable memory in 4 Kindependently addressable blocks, withan invisible refresh and a worst caseaccess time of 400 ns. The 16KRA is$369 in semikit form and $399 testedand burned in, from Processor Tech-nology Corp, 6200 Hollis St, EmeryvilleCA 98608, (415) 652-8080."

Circle 628 on inquiry card.

Add-on Memory for LSI-11and PDP-11/03

CompuTime Offers Clock, Calendar andCalculator on One Board

CompuTime has announced an Altair(S-100) bus compatible PC board whichcombines a real time clock, calendar and40 function scientific calculator in onepackage.

Applications for the clock andcalendar include stamping output listingswith time and date, plus alarm andtiming operations which can be imple-mented by means of two coincidencecounters provided on the board. Ifpower is shut down, a battery backupsystem is provided.

The 40 function calculator enablesthe computer to handle floating point,trigonometric and algebraic problems aswell as basic math functions.

The package is available in three con-figurations: time, date and calculator, kitprice $199; time and date only, kit price$165; and calculator only, kit price$149. The boards are also availableassembled and tested. Contact Compu-Time, POB 417, Huntington Beach CA92648,(714) 638-2094."

Circle 631 on inquiry card.

Memory Board for EXORciserand MEK6800

An 8 K static memory board nowavailable is pin and signal compatiblewith the bus used in the MotorolaEXORciser, Micromodules, and theMEK6800D1 and MEK6800D2 Evalua-tion Kits. The 9626 board features full16 bit address decoding and bufferedaddress, data and control lines. The9626 is $350 in single quantities and$210 in lots of 100 from CreativeMicro Systems, 6773 Westminster Av,Westminster CA 92683, (714) 892-2859."

Circle 629 on inquiry card.

A new high density memory card forthe LSI-11 and PDP-11/03 is availablefrom Fabri-tek Inc, 5901 S County Rd18, Minneapolis MN 55436, (612)935-8811. The LS-IN-11 provides 8,16, 24 or 32 K bytes of memory on asingle card with a 2 slot connector,using 8 K or 16 K dynamic MOSn-channel memory chips. A typicallow quantity price for the 16 K versionof the card is $1085 with a 12 monthwarranty."

Circle 632 on inquiry card.

Attention Readers andVendors. . .

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 homebrewers 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.

188 BYTE February 1978

LOW PROFILE IC SOCKETS

14 PIN-$.18 22 PIN-$.33

1(> PIN - $.20 28 PIN-$.48

18 PIN -$.25

AUGAT WIRE WRAP SOCKETS

16 PIN Cold Plated$.49 ea. 10 FOR $3.95

LIMITED STOCK

TRIMMER CAP

- 20 PF. CER. 4/$1Mil. Quality

P. C. MOUNT VOLUME CONTROL

Nylon Shaft. IK or100K.YOUR CHOICE 4/$1

16K E-PROM CARD

S-l 00 (l MSAl/ALTAIR) BUSS COMPATIBLE

WO^' DEALER INQUIRES INVITED

SPECIAL OFFER: Our 2708's (450 NS) are $12.95 when purchased with above kit

$69.95 (kit)

IMAGINE HAVING 16K

OF SOFTWARE ON LINE AT ALL TIME!

KIT FEATURES:

1. Double sided PC Board with solder mask and silk screen andGold plated contact fingers.

2. Selectable wait states. f USES

3. AH address lines and data lines buffered!

4. All sockets included.

5. On card regulators.KIT INCLUDES ALL PARTS AND SOCKETS! (EXCEPT 2708's)

ADD $25 FORASSEMBLED AND TESTED

FULLY STATIC! $149.00 KIT

KIT FEATURES:

1. Double sided PC Board with solder mask and silk screen layout.Gold plated contact fingers.

2. All sockets included! S"' 00 (IMSAI/ALTAIR)

3. Fully buffered on all address and data lines. BUSS COMPATIBLE

4. Phantom is jumper selectable to pin 67.

5. FOUR 7805 regulators are provided on card.

¥ *

8K LOW POWER RAM KIT!

™f

. . ...

yy|j

%s)->'"^r ('-.«.' i , .

...i

: *• i |

.

^T| 1

• ■ ■■■■■-•'.■

1

ir^rJj '■¥

:■■■ r:*"l ' ■ ■

■ A ». J?

■;ty ■■ j »'"»

"" • ■ ■ ■ " f

JTSfllS

fjfin "■ R ....?.

Wl

fit'

IttSHMUMUUiHffiMBSiSUU

PRICE WAR!

For a limited time only:Buy two 8K Kits for $129 ea.

Fully Assembled and Burned In —Blank PC Board With Documentation —

Low Profile Socket Set —

Support IC's (TTL and Regulators) —

Bypass CAP's (Disc and Tantalums) —

USES21L02-1RAM'S.

$179.00

29.95

13.509.754.50

3W AUDIO AMPMODULE

Fully assembled and tested.With schematic. 4, 8 or 16OHMS.

$3.95 NEW!

JUMBO RED LED'S

NewbyG.E. Like MV5024

//SSL-22

6 FOR $1

25 FOR $3.75

RCA HOUSE #2N3772

NPN Power Transistor. 30 AMP.

150 W. VCEO-60. TO-3. Vastly out

performs 2N3055. Reg. List $3.04

2 FOR $1

tfS^ 4K STATIC RAM'S ^Efyf

2114. The industry standard. 18 PIN DIP. Arranged as IK X 4. Equivalent toFOUR 21L02's in ONE package! TWO chips give IK X 8, with data.

2 FOR $24 450N.S.! 8 FOR $85

MOTOROLA 7805RVOLTAGE REGULATOR

Same as standard 7805 except 750 MA

OUTPUT. TO-220. 5VDC OUTPUT.

$ .44 each 10 FOR $3.95

450 NS! 2708 EPROMS 450 NS!

Now Full Speed! Prime new units from a major U.S. Mfg. 450 N.S. Accesstime. IK x 8. Equiv. to 4 1702 A's in one package!

Special Offer: $12.95 ea. when purchased with our

16K EPROM Kit.

$15.75 ea.

Z - 80 PROGRAMMING MANUAL

By MOSTEK, the major Z - 80 second source. The most detailed explanationever on the workings of the Z - 80 CPU CHIPS. At least one full page on eachof the 158 Z - 80 instructions. A MUST reference manual for any user of theZ - 80. 300 pages. Just off the press! A D.R.C. exclusive! $12.95

^ PRICE WAR! +

21L02-1 LOW POWER RAM! Prime.500 N.S. FAST! 8 FOR $9.95

8 POSITION DLP SWITCH

By CTS.Fits 16 Pin Socket. $1.95

TERMS: ORDERS UNDER $15 ADD $ .75. NO C.O.D. WE ACCEPT VISA, MASTER CHARGE AND AMERICANEXPRESS CARDS. MONEY BACK GUARANTEE ON ALL ITEMS. TEXAS RESIDENTS ADD 5% SALES TAX.

Digital Research Corporation

V P. O. BOX 401247 • GARLAND, TEXAS 75040 • (214) 271-2461

CALL FOR OUR CATALOG!

WE PAY POSTAGE! J

Circle 41 on inquiry card.

BYTE February 1978 189

What's New?

LSI-11 Based Floppy Disk System

SYSTEMS

6800 Based System for OEMs

i-j

Designed especially for originalequipment manufacturers, the MBCMicrocomputer System comes completewith a keyboard and 6 digit hexadecimaldisplay, a system monitor, general pur-pose board, four slot motherboard andflexible mounting system. The mountingframe, which will accept three peripheralboards, is provided with brackets toallow for front, back, side or 19 inchrack panel mounting. The main com-puter board has room for up to 768bytes of programmable memory, 2.5 Kbytes of read only memory, and a cur-rent loop, RS232 and cassette interface.The M68-MBC is $695 from ElectronicProduct Associates Inc, 1157 Vega St,San Diego CA 92110, (714) 276-8911."

Circle 641 on inquiry card.

Integrated Package Based on LSI-11

The LSI based system includes a largebackplane, dual drive floppy disk andand power supply all in one package.The SS-11/15 is available in a single10.5 inch rack or a tabletop mount-ing enclosure, and includes a 15 quadslot backplane, console interface andswitch register, diagnostic and boot-strap ROM bus terminator, and dis-tributed refresh controller. The systemis compatible with Digital EquipmentCorp software such as the RT-11 andRSX-11/S operating systems and multi-user BASIC, FORTRAN, and MACRO-11. The SS-11/15 is backed by a oneyear warranty and is delivered with allunused card slots occupied by busgrant continuity boards to simplifytesting of custom interfaces, fromUnicomp lnc, 8950 Westpark, Suite312, Houston TX 77063, (713) 782-1750."

Circle 640 on inquiry card.

A New Single BoardZ-80 Computer

Monolithic Systems Corporation hasintroduced the SBC-80 Multibus com-patible computer featuring 8 K bytes ofstatic programmable memory and 8 Kof erasable programmable read onlymemory sockets with serial and parallelIO ports. Designated the MSC 8001,the single board computer uses the Z-80processor and has up to 4 MHz clockspeed. It is electrically and mechanicallycompatible with the SBC 80 systems,operating as a master module in theMultibus scheme.

The two parallel IO ports consist ofparallel peripheral interface circuitswith buffers and terminators to protectall internal MOS circuitry. A total of 48lines are available. They can be con-figured for either positive or negativelogic signals.

The serial IO port of the MSC 8001supports RS232C, TTL or current loopcompatible serial IO devices with pro-grammable data transfer rate. Asyn-chronous and synchronous data formatscan be programmed. The current loopinterface is optically isolated to protectthe MSC 8001 from transients or groundloops caused by peripheral equipment.

Real time processing is provided withthe 8253 interval timer. The timer con-tains three 16 bit counters which operateindependently. One is dedicated to theserial IO port and the other two areavailable for general use. The unit pro-vides eight levels of fully vectoredpriority interrupts. The memory isavailable with either 4 K or 8 K of stan-dard 18 pin, 4 K x 1 static program-mable memory.

The MSC 8001 single board com-puter is $845, including all interfaceelements and 8 K bytes of programmablememory.

Contact Dick Lorimor, MonolithicSystems Corporation, 14 Inverness Dr E,Englewood CO 8011 0, (303) 770-7400."

Circle 637 on inquiry card.

This dual drive floppy disk systemis available with or without an integralLSI-1 I processor and is said to beidentical in function to the PDP-11 V03.The Micro-Flop 11 uses the ShugartSA800 disk drive with the SA850double sided disk available as an option.The disk controller features a dedicated8080 microprocessor which implementsa disk self-test feature independentlyof the LSI-11. A front panel console,10.5 inch (26.7 cm) enclosure, and theDigital Equipment Corporation H9270backplane are included. The Micro-Flop11 is $3,350 without the LSI-11 and$4,290 with the LSI-11 included, fromCharles River Data Systems, 235 BearHill Rd, Waltham MA 02154, (617)890-1700."

Circle 638 on inquiry card.

Commodore Ships First PET Computers

The PET computer made its debutrecently as the first 100 units wereshipped to- waiting customers in midOctober 1977. Here CommodoreSystems Division Director Chuck Peddleis pictured with the PETs undergoingfinal checkout. Shipments were madeabout six weeks later than expected,according to Peddle. The delay was duein part to time consuming quality con-trol measures and the material flowproblem in starting up the productionlines. "In this business," Peddle argued,"six weeks is actually pretty good."Many of the first units were delivered tocustomers who intend to develop soft-ware for the PET. Commodore plans tocreate a publishing house for programsdeveloped by users as well as employees.The company plans to increase pro-duction of the PET computers to severalthousand per month by early 1978. Thebasic PET with 4 K memory is priced at$595, while the 8 K memory version is$795, from Commodore BusinessMachines Inc, 901 California Av, PaloAlto CA 94304, (415) 326-4000."

Circle 639 on inquiry card.

190 BYTE February 1978

Hobby Computer Kits • • •

1 MODEM

Part no. 109

Type 103

Full of half duplex

Works up to 300 baud

Originate or Answer

No coils, only low cost components

TTL input and output

Connect 8 ohm speaker and crystal mic. directly to board

Uses XR FSK demodulator

Requires +5 volts

Board only $7.60, with parts $27.50

2 RS-232/TTL INTERFACE Part no. 232

Converts TTL to RS-232, and converts RS-232 to TTL

Two separate circuits

Requires +12 and -12 volts

All connections go to a 10 pin gold plated edge connector

Board only $4.50, with parts $7.00

3 TAPE INTERFACE Part no. 111

Play and record Kansas City Standard tapes

Converts a low cost tape recorder to a digital recorder

Works up to 1200 baud

Digital in and out are TTL

Output of board connects to mic. input of recorder

Earphone of recorder connects to input on board

Requires +5 volts, low power drain

No coils

Board only $7.60, with parts $27.50

4 TELEVISION TYPEWRITER Part no. 106

Standalone TVT

32 char/line, 16 lines, modifications for 64 char/line included

Parallel ASCII (TTL) input

Video output

IK on board memory

Output for computer controlled curser

Auto scroll

Non destructive curser

Curser inputs: up, down, left, right, home, EOL, EOS

Scroll up, do wn

Requires +5 volts at 1.5 amps, and -12 volts at 30mA

Board only $39.00, with parts $145.00

5 UART and BAUD RATE GENERATOR Part no. 101

Converts serial to parallel and parallel to serial

Low cost on board baud rate generator

Baud rates: 110, 150,300, 600, 1200, and 2400

Low power drain +5 volts and -12 volts required

TTL compatible

All characters contain a start bit, 5 to 8 data bits, 1 or 2 stop

bits and either odd or even parityAll connections go to a 44 pin gold plated edge connectorBoard only $12.00, with parts $35.00

6 RF MODULATOR Part no. 107

Converts video to AM modulated RF, Channels 2 or 3Power required is 12 volts AC C. T., or +5 volts DCBoard only $4.50, with parts $13.50

4K/8K STATIC RAM Part no. 300

8K Altair bus memory

Uses 2102 Static memory chips

2-4K Blocks

Blocks can be addressed to any of 16 4K sections

Vector input option

TRI state buffered

Board only $22.50, with parts $160.00

TIDMA Part no. 112

Tape Interface Direct Memory Access

Record and play programs without bootstrap loader (no prom)

Has FSK encoder/decoder for direct connections to low costrecoder at 625 baud rate, and direct connections for inputsand outputs to a digital recorder at any baud rate

S-100 buss compatible

Comes assembled and tested for $160.00

APPLE 1 MOTHER BOARD Part no. 102

10 slots ~44 pin (. 156) connectors spaced % inch apart

Connects to edge connector of computer

Pin 20 and 22 connects to X & Z for power and ground

Board has provisions for by-pass capacitors

Board costs $15.00

7 D.C.POWER SUPPLY Part no. 6085

Board supplies a regulated +5 volts at 3 amps., +12, ~ 12, and ~5

volts at 1 ampBoard has filters, rectifiers, and regulators'Power required is 8 volts AC at 3 amps., and 24 volts AC C. T.

at 1.5 ampsBoard only $12.50

TO ORDER

Mention part number and description. For parts kits add "A" topart number. Shipping paid for orders accompanied by check,money order, or Master Charge, BankAmericard, or VISAnumber and signature. Shipping charges added to C.O.D. orders,Calif, res. add 6.5% for tax. Parts kits include sockets for all ICs,components, and circuit board. Documentation is included withall products. Dealer inquiries invited.

ELECTRONIC SYSTEMS

P.O. Box 212, Burlingame, CA 94010(408) 374-5984

Circle 47 on inquiry card.

BYTE February 1978 191

What's New?

SYSTEMS etc

Low Cost 16 Bit MicroprocessorDevelopment System

This low cost development system(LCDS) lets the user gain experiencewith and develop programs for the 16 bitPACE microprocessor for a basic cost ofonly $585. Fully assembled on a printedcircuit card, the LCDS includes themicroprocessor, 1 K 1 6 bit words of pro-grammable memory, sockets for 1 Kwords of programmable read onlymemory, a 20 key dual function key-board, a six digit light emitting diode dis-

play, a timer, input output buffers andbidirectional transceivers. On boardROM contains a system monitor for thekeyboard, display, and control of inputoutput subroutines. Both a 20 mA cur-rent loop interface and an RS232 portare provided. Three prewired, 72 pinsockets allow for additional memory orfor expansion of the LCDS interface bus.Expansion boards may be plugged di-rectly into these sockets, or a prewiredcable assembly can be used to connectthe unit to an expansion chassis. Maxi-mum system memory is 60 K words. TheLCDS microprocessor can be isolatedfrom the system bus, allowing an exter-nal PACE to use LCDS memory andperipherals. This feature makes it easierto check out prototyping hardware as itis developed. Documentation includes an80 page Microprocessor System DesignManual, a 96 page LCDS User's Manual,a 11 2 page Assembly Language Program-mer's Manual, data sheets and schematicdrawings. The unit requires a 5 V powersupply delivering 2.8 A plus additionalcurrent for any memory expansioncards, and a 12 V supply for the RS232interface. The LCDS is priced at $585;expansion options include the IPC-16C/011 card including 1 K words of pro-grammable memory for $170, the IPC-16C/01 2B card providing sockets for 2 Kwords of read only memory for $139,and the IPC-16P/802 expansion cableassembly for $145, from National Semi-conductor Corp, 2900 SemiconductorDr, Santa Clara CA 95051, (408)737-5000.-

Circle 642 on inquiry card.

Correction

On page 208 of the December 1977BYTE we gave the incorrect address forordering Hewlett-Packard's HP-01 wrist-watch calculator. The unit is presentlybeing marketed only through jewelrystores. To obtain the name of the storenearest you, call toll free (800)648-7111; in Nevada, call 329-2700. Ourthanks to HP's Mike Rosenthal for thisinformation.•

For Z-80 Users

The Z80-PDS program developmentsystem includes a floppy disk drive withup to 300 K bytes of online storage, 3Kbytes of read only memory and 16 Kbytes of programmable memory, andserial IO with RS232 or strappablecurrent loop interface. Software for thesystem includes a disk resident oper-ating system, editor, assembler, debuggerand file handling utilities. The Z80-PDScan be used with any standard CRT orhard copy terminal at data rates from110 to 19,200 bps. The system mayalso connect directly to a soon to beavailable optional keyboard and videomonitor by means of the Z80-VDBvideo display board. Other optionalmodules are the Z80-PPB programmerboard, Z80-IOB input output board,and the Z80-SIB serial IO board. Thecard enclosure measures 15 by 10 by4 inches and weighs only 5 pounds,while the disk unit, 16 by 4.75 by 9inches, weighs 10 pounds. The programdevelopment system is priced at $2850in single quantities from Zilog, 10460Bubb Rd, Cupertino CA 95014, (408)446-4666.«

Circle 643 on inquiry card.

COSMAC Based Kit Aimed at Hobbyist

. This low cost hobby computer kitfeatures video display and audio cassetterecorder IO as well as a low level inter-pretive programming language especiallydesigned for the creation of compactgames and graphics. The COSMAC VIPis based on theCDP1802 microprocessorand uses the CDP1861 video chip to con-trol the video display. The VIP is builton a single 8.5 by 11 inch printed circuitcard and provides 2 K bytes of program-mable memory using 4 K bit staticmemory chips, and 512 bytes of readonly memory containing a monitorprogram which permits the user toexamine and alter memory, save andload programs on cassette tape, andexamine the processor registers. Thecassette interface operates at 100 bytesper second using any reasonably goodaudio cassette recorder. The CHIP-8programming language simplifies thetask of programming video games inhexadecimal code. CHIP-8 has 31instructions in a 2 byte format forfunctions such as displaying a patternon the video display, generating a

random number, sounding a tone, etc,and provides 16 one byte variablesand subroutine nesting capability. Mem-ory expansion to 4 K bytes and parallelIO expansion to 19 lines can be achievedby inserting additional integrated cir-cuits on the printed circuit board, andadditional memory and peripherals canbe added through the 44 pin memoryand input output expansion connectorsockets on the board. The VIP user'smanual, said to be written by a hobbyistfor hobbyists, contains detailed informa-tion on kit assembly, operating proce-dures, CHIP-8 programming techniques,test programs and trouble shootinghints, and system expansion instruc-tions. The manual also includes programlistings for 20 video games which can beimmediately entered and played by theuser without having to learn program-ming.

Priced at $275, the COSMAC VIPis available from RCA Solid State Divi-sion, POB 3200, Somerville N| 08876,(201) 685-6423.•

Circle 644 on inquiry card.

192 BYTE February 1978

E PLETE SAJT

3

N IS OUR GUARANTEE YOUR COMPLETE SATISFACTION IS OUR GUARANTEE YOUR COMPLETE SATISFACTION

™- HUGE DISCOUNTS! S

ii

Savings up to 70% on major brand IC parts and computer kits.

741400 TTL

74LJ00 $

.21

74L$93

.52

74LS02

.21

74L$109

.35

74LS04

.24

74LS112

.36

74L$08 $

.21

74LS113

.36

74LS10

.21

74LI114

.36

74LS14

.85

74LS125

.46

74LI20

.23

74LS126

.46

74L$21

.23

74LS132

.75

74L$22

.23

74LS138

.70

74LS30

.23

74LS139

.70

74LS32

.30

74LJ151

.65

74LS37

.31

74L$153

.66

74LS38

.31

74L$154

1.00

74L$42

.60

74LI157

$.62

74L$47

.75

74LS160

.82

74LJ48

.72

74LS161

82

74L$73

.35

74LS162

.82

74LS74

.3b

74L$163

»?

74L$75

.53

74L$164

.98

74LS76

.3/

74UI174

.75

74L$86

.36

74LS175

.79

74LS90

.52

74LS190

90

74L$92

.52

74LS191

.90

74LS192 .90

74LS196 .80

74LS197 .80

74LS221 1.06

74LS257 .71

74LS258

74LS266

74L$283

74L$365

74L$366

74L$367

74L$368

74LS386

81L$95

81L$96

81L$97

81L$98

KITS

28.0028.00

WAMECO

S-100 P.C. Boards8K RAMI Z-80 CPU12-Slot Mother

BoardITHACA AUDIOS-100 P.C. Boards8K RAMZ-80 CPUSOLID STATE MUSICS-100 Kits & Bare BoardsMB-3 2K/4K EPROMUses 1702A EPROMS

Kit w/oEPROMS 59.95MB-4 4K STATIC RAM

Kit 95.00

Bare Board 25.95

i MB6A 8K STATIC RAM

Kit $179.95

Bare Board 25.95

| MB7 16K STATIC RAM

Kit 435.00

Bare Board 25.95

MB8 8K/16K EPROM

Uses 2708's

Kit Less EPROMs 75.95

LM 301HLM 301AHLM 301AMLM 304HLM 305HLM307MLM 308HLM 308AHLM 308NLM311MLM311NLM 311HLM312HLM 317HLM317KLM 318MLM 319HLM 321HLM 322HLM 324NLM325HLM 339NLM 343H

.35.38.30

1.00$ .60

.301.00

.951.00

.90

.85

.901.253.453.701.151.252.022.02

.722.25

.992.99

LM 358M

-99

LM379M

3.99

LM 380M

.99

LM 380N

.75

LM 381N

1.79

LM 386N

.99

LM 387N

.69

LM 3900N

.40

LM 555M

39

LM 556N

.88

LM 567M

1.25

LM 723N

.49

LM 741H

$ .35

LM 741M

.19

LM 747H

.79

LM 747N

.79

LM 1458M

.59

LM 14558H

.55

LM 4250CH

.89

LM 309HLM 309KLM 320H-5LM 320H-6LM 320H-8LM 320H-12LM 320H-15LM 320H-18LM 320H-24LM 320K-5LM 320K-6LM 320K-8LM 320K-12LM 320K-15

1.10.991.191.191.191.191.191.191.191.35 LM340T-8$1.75 LM340T-121.75 LM340T-151.35 LM340T-181.35 LM340T-24

5716 W. Manchester Ave.

Suite #5

Los Angeles, CA 90045

TELEPHONE ORDERS:Call (213) 641-4200

□ Send your complete catalog,quickly.

□ Please send me the followingitems I have listed below:Stock No.

Qty.

Price

Postage/Handling

$1.50

State-

_Zip_

Satisfaction 100% Guaranteed

California Residents Add 6%Sales Tax

Note: Minimum Order $10.00, 5% Discount over $100.00

NEW1978

IC MASTER

Over 40,000IC's listed.Over 2,000pages.

Updated every90 days.

Retail Value

$55.00

Your Price

$48.50

IS OUR GUARANTEE YOUR COMPLETE SATISFACTION IS OUR GUARANTEE YOUR COMPLETE SATISFACTION IS OUR GUARANTEE

What's New?

Brochure Describes Analog Peripherals

PUBLICATIONS

Guide Cross Indexes Personal ComputingMagazines

The January to June Periodical Guidefor Computerists indexes 1080 articlesfrom 23 hobby and professional com-puter publications. Articles, editorials,book reviews, and letters from readerswhich have relevance to the personalcomputing field are indexed by subjectunder 90 categories. The 32 page book isavailable postpaid for $3 from E BergPublications, 1360 SW 199th Ct, AlohaOR 97005, (503) 649-7495, or fromlocal computer stores.*

Circle 645 on inquiry card.

Guide to Small Business Computers

TheBeginner*! Guidelb Small Business Computers

This free brochure, said to unravelthe mysteries of small business com-puting systems, details a step-by-stepapproach to matching computer capa-bilities with business needs. Copiesare available from Digital EquipmentCorporation, Communications Services,Brochure EA 07430, 444 Whitney St,Northboro MA 01532, (617) 897-5111."

Circle 646 on inquiry card.

Computerlogue Stardated Fall 1977

StardateFALL 1977

This 22 page microcomputer catalogincludes products from all the majormanufacturers. Separate prices are givenfor credit card purchases and for cashpurchases, which receive a discount.Computerlogue is available from Com-puter Enterprises, POB 71, FayettevilleNY 13066, (315) 637-6208."

Circle 647 on inquiry card.

Signature Analysis: A New ApplicationsNote from Hewlett-Packard

Signature analysis is a new techniquefor debugging microcomputer circuitryand other circuitry designed around busarchitecture. Data bit streams, whichare common in this type of architecture,present special problems when faultanalysis is required. Hewlett-Packarddetails some of the new techniques usedin signature analysis in its free 50 pageApplications Note 222, available fromthe Inquiries Manager, Hewlett-PackardCompany, 1501 Page Mill Rd, PaloAlto CA 94304, (415) 493-1501."

Circle 648 on inquiry card.

Bubble Memory Report

This report analyzes the impactof bubble memory technology on enduser products such as point of sale ter-minals and word processors, program-mable calculators and home computersand the implications for competitivememory systems such as cassettes anddisks, charge coupled devices and MOSmemory. A complete facilities plan forproduction of bubble memories isincluded. Other reports such as "SmallBusiness Systems Industry Report"and "Data and Word Processing Oppor-tunities in the Automation of LegalWork" are also available. The bubblememory report is $995 from SmallBusiness Systems, 4320 Stevens CreekBlvd, Suite 230, San Jose CA 95129(408) 243-8121.■

Circle 649 on inquiry card.

''"■'•'-nniYnW

i '.r ynana.

This 16 page brochure provides thespecifications for the SineTrac 800 seriesof data acquisition cards for the IntelMDS-800 and SBC-80/20/10 microcom-puters. Accepting 32 or more analogchannels, the high speed SineTrac 800communicates over the processor bus asan addressable 10 device. The brochureis available from Datel Systems Inc,1020 Turnpike St, Canton MA 02021,(617) 828-8000."

Circle 650 on inquiry card.

At Last, a MicrocomputerTroubleshooting Manual

What do you do when your newlyassembled microcomputer kit doesn'twork? Thousands of hobbyists un-doubtedly have been in this predica-ment, and most learn the art of trouble-shooting digital circuits the hard way.This manual, written by a test engineerand technical writer, may provide ashort cut. It offers general hints andspecific procedures for finding andcuring common problems arising withthe components of microcomputer sys-tems. Separate sections treat generalproblem solving approaches, trouble-shooting newly assembled equipment,and fixing a system which has workedproperly prior to the latest failure.Typical problems with processor boards,memory boards and television interfaceboards are treated in some detail. Aglossary of terms and a list of recom-mended component suppliers is in-cluded. $5 from Micro-Info Associates,POB 849, Castroville CA 9501 2."Circle 651 on inquiry card.

Notes for Altair Computer Users

Computer Notes is a monthly publi-cation for owners of Altair computers,providing tutorial articles, hints andproject ideas. The September 1977 issueincludes articles on building your ownvideo display and on robot mechanics.Computer Notes is free to Altair com-puter owners; 50 cents per issue or $5per year from MITS Inc, 2450 AlamoSE, Albuquerque NM 87106."

Circle 652 on inquiry card.

194 BYTE February 1978

DIODES/ZENERS

SOCKETS/BRIDGES

TRANSISTORS, LEDS, etc.

1N914

100v 10mA .05

8-pin pcb .25 ww .45

2N2222

NPN (Plastic .10) .15

1N4005

600v 1A

.08

14-pin pcb .25 ww .40

2N2907

PNP

.15

1N4007

1OOOv 1A

.15

16-pin pcb .25 ww .40

2N3906

PNP

.10

1N4148

75v 10mA .05

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

10v z

.25

24-pin pcb .35 ww 1.10

T1P125

PNP Darlington

.35

1N759A

12v z

.25

28-pin pcb .35 ww 1.45

LED Greer

, Red, Clear

.15

1N4733

5.1v z

.25

40-pin pcb .50 ww 1.25

D.L.747

7 seg 5/8" high com-anode 1.95

1N5243

13v z

.25

Molex pins .01 To-3 Sockets .45

XAN72

7 seg com-anode

1.50

IN5244B1N5245B

14v z15v z

.25.25

2 Amp Bridge 100-prv 1.2025 Amp Bridge 200-prv 1.95

FN D 359

Red 7 seg com-cathode

1.25

CMOS

- T T L -

4000

.15

7400

.15

7473 .25

74176 1.25

74H72

.55

74S133

.45

4001

.20

7401

.15

7474 .35

74180 .85

74H101

.75

74S140

.75

4002

.20

7402

.20

7475 .35

74181 2.25

74H103

.75

74S151

.35

4004

3.95

7403

.20

7476 .30

74182 .95

74H106

.95

74S153

.35

4006

1.20

7404

.15

7480 .55

74190 1.75

74S157

.80

4007

.35

7405

.25

7481 .75

74191 1.35

74 LOO

.35

74S158

.35

4008

.95

7406

.35

7483 .95

74192 1.65

74L02

.35

74S194

1.05

4009

.30

7407

.55

7485 .95

74193 .85

74L03

.30

74S257I8123)

.25

4010

.45

7408

.25

7486 .30

74194 1.25

74L04

.35

4011

.20

7409

.15

7489 1.35

74195 .95

74L10

.35

74LS00

.35

4012

.20

7410

.10

7490 .55

74196 1.25

74L20

.35

74LS01

.35

4013

.40

7411

.25

7491 .95

74197 1.25

74L30

.45

74LS02

.35

4014

1.10

7412

.30

7492 .95

74198 2.35

74L47

1.95

74LS04

.35

4015

.95

7413

.45

7493 .40

74221 1.00

74L51

.45

74LS05

.45

4016

.35

7414

1.10

7494 1.25

74367 .85

74L55

.65

74LS08

.35

4017

1.10

7416

.25

7495 .60

74L72

.45

74LS09

.35

4018

1.10

7417

.40

7496 .80

75108A .35

74L73

.40

74LS10

.35

4019

.60

7420

.15

74100 1.85

75110 .35

74L74

.45

74LS11

.35

4020

.85

7426

.30

74107 .35

75491 .50

74L75

.55

74LS20

.35

4021

1.35

7427

.45

74121 .35

75492 .50

74L93

.55

74LS21

.25

4022

.95

7430

.15

74122 .55

74L123

.55

74LS22

.25

4023

.25

7432

.30

74123 .55

74H00 .25

74LS32

.40

4024

.75

7437

.35

74125 .45

74H01 .25

74S00

.55

74LS37

.35

4025

.35

7438

.35

74126 .35

74H04 .25

74S02

.55

74LS40

.45

4026

1.95

7440

.25

74132 1.35

74H05 .25

74S03

.30

74LS42

1.10

4027

.50

7441

■ 1.15

74141 1.00

74H08 .35

74S04

.35

74LS51

.50

4028

.95

7442

.45

74150 .85

74H10 .35

74S05

.35

74LS74

.65

4030

.35

7443

.85

74151 .75

74H11 .25

74S08

.35

74LS86

.65

4033

1.50

7444

.45

74153 .95

74H15 .30

74S10

.35

74LS90

.95

4034

2.45

7445

.65

74154 1.05

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

.25

74LS123

1.00

4041

.69

7448

.70

74161 .85

74H30 .25

74S50

.25

74LS151

.95

4042

.95

7450

.25

74163 .95

74H40 .25

74S51

.45

74LS153

1.20

4043

.95

7451

.25

74164 .60

74H50 .25

74S64

.25

74LS157

.85

4044

.95

7453

.20

74165 1.50

74H51 .25

74S74

.40

74LS164

1.90

4046

1.75

7454

.25

74166 1.35

74H52 .15

74S112

.90

74LS367

.85

4049

.70

7460

.40

74175 .80

74H53J .25

74S114

1.30

74LS368

.85

4050

.50

7470

.45

74H55 .25

40664069

.95.40

7472

.40

4071

.35

LINEARS, REGULATORS, etc.

4081

.70

8266 .35

LM320K5 17905) 1.65

LM340T24

.95

LM723

.50

4082

.45

MCT2 .95

LM320K12 1.65

LM340K12

2.15

LM725

1.75

8038 3.95LM201 .75

LM320T5 1.65

LM340K15

1.25

LM739

1 Rn

9000 SERIES

LM320T12 1.65

LM340K18

1^25

LM74K8-141.25

9301

.85

LM301 .25

LM320T15 1.65

LM340K24

.95

LM747

1.10

9309

.35

LM308(Mini) .75

LM339 .95

LM373

2.95

LM1307

1.25

9322

.85

LM309H .65

7805 (340T5) .95

LM380

.95

LM1458

.95

95H03

.55

LM309K (340K-5) .85

LM340T12 1.00

LM709 (8,14 PIN) .25

LM3900

.50

9601

.75

LM310 1.15

LM340T15 1.00

LM711

.45

LM75451

.65

9602

.50

LM311D (Mini) .75LM318 (Mini) .65

LM340T18 1.00

NE555NE556NE565

.50.95.95

MEMORY CLOCKS

74S188(8223) 3.001702A 6.95MM5314 3.00MM5316 3.50

INTEGRATED CIRCUITS UNLIMIT

ED

NE566NE567

1.751.35

2102-1

1.75

7889 Clairemont Mesa Boulevard, San Diego, California 9211

2102L-1 1.95TR 1602B/

(714) 278-4394 (Calif. Res.)

SPECIALDISCOUNTS

TMS 6011 6.958080AD 15.008T13 1.508T23 1 Rfl

All orders shipped prepaid No minimum Total Order DeductOpen accounts invited COD orders accepted sioo $300 10%Discounts available at OEM Quantities California Residents add 6% Sales Tax $301 $1000 15%

8T24

2.00

All IC's Prime/Guaranteed. All orders shipped same day received.

$1000-Up

20%

2107B-4

4.95

24 Hour Toll Free Phone 1 800-854 2211 MasterCharge / BankAmericard / AE

Circle 59 on inquiry card.

BYTE February 1978 195

COMPU TIMECT lOO

COMPU/TIME offersA

Real Darn CleverEnhancement to users ofIMSAI/ALTAIRMicroprocessors

S100 BUS COMPATIBLE

TIME & CALENDAR

COMPU/TIME CT100 $199 KitCOMPU only C101 $149 KitTIME only T102 $165 Kit

COMPU/TIME PC Board only

MM16EPROM

$245 Assembled$189 Assembled$205 Assembled$ 80

• Utilizing up lo 16 2708 EPROMS

• S 100 Bus Computer Systems

• Memory capacity ol 8K or !6K bytes by DIP

• 8K boundary addressing by DIP Switch

• 0 to 4 wait cycles by DIP Switch

• Data output address input nnes fully bullered

• Hi-giade giass-epoxy with ptated-thru holes■ Epony solder masked

$99.00

FCS 8000A - 3W Oign

Nl* lb Cm «r\ion witn colon A

IMS'

e Display

ifiONl vifW ISL8000

SPECIAL$4.95 EA.

. MAXIMUM i :.HW*nr,

cuhkehi » mA

8mA ciCCpt colon IQ n

SLIT N-WRAP WIRE WRAP TOOL

• Slits and opens insulation exposingDate wire

• No pre cutting ... p'e stripping

• Comes .;oTioieie with tv,o 100 ft spoois

*?B AWG wire

Modsl P180

124 50

Plugboards 8600V

Universal Microcomputer/Processoi plug boa if) use with5 100 Du& complete *»tn "eal Sink &laiowaie 53 t 10« 1 16

$19.95

channel: F

y

$129.95

mmo0U> y*xo t*/rx/mm*rr tn/at

• Freeze Action . Speed Opiion

• Automatic: time and storekMpmg

• Battery tree AL operationDual controls with 8-way actionBuilt in Pio Hockey and Tennis gamesfcasy hook-up on any BW or Color TVFactory warranty

Channel F - idrjlllonal cartridges -$17.95 ea. ■» ~g*{, „,, „,„„,

Spawwii il waytn. 0819 - Drag strip |1 or 2 playflrsMjflic Numo«rv 0820 Mil* (.- pUytrsl

08)2 OtMrt lot Shooting Gjliiry icompiilfl' logici 0822 - Bawtwll (2 ptjyai

I<c lac Tot'Shoonng CUHary Q816Oman -doodle DoodKDtwn •<■■• Shooting Gjlliry

D-SUB CONNECTORS

MO. PINS

PART NO.

PRICE

COVER PRICE

9

DE-9P

1 49

1 25

9

DE-9S

2.15

15

DA-15P

2.11

1.50

15

DA-15S

3.10

25

DB-25P

3.00

1.50

25

DB25S

4.00

37

DE-37P

4.14

2 00

37

DE-37S

6.00

50

DD-50P

5.40

2.25

50

DD 50S

8.00

EDGE CONNECTORS

?0

DUAL

10

PIN

in

DUAL

15

PIN

44

DUAL

22

P]N

44

DUAL

21

PIN

80

DUAL

40

PIN

86

DUAL

43

PIN

100

DUAL

SO

PIN

100

DUAL

SO

PIN

ion

DUAL

50

PIN

100

DUAL

50

PIN

ALTAlfi/IMSAI CARD GUIDES

GOLD

S .50

GOLD

.75

GOLD

1.95

GOLD

2.50

GOLD

4.. 95

GOLD(6800)

5.00

G0LD(IMSA1/ALTAIP)

4.25

G0LD(IMSfl!/ALTAlR)

4.95

GOL0(NO EARS- I MS A I

3.50

TIN ( . 1" SPACING)

3.25

25i EACH

CLOCK CHIPS

MVS309 6 Digit. BCD Outputs. R«41 PIN 19 «

MMS311 SOigrt BCD Outputs 12 or 24 Hour 4 9S

WMS31? 4 Dior BCO Outputs t PPS Output 4 95

MM53S* 6 Digit 12 oi 2* Hour 50 or GO Hi 4 95

VH45316 * Dipfl AJirm I PPS Output 6 95

JUUU v«Jto Clock Ciup for Use Wrtn |MM5841 (9 95l 9 «

CT7001 6 Dtgil Cj-Mwtt' AUrm 12 or 24 Hour i«

24 25 99 100 999

14

34

33

31

?1

li

36

34

i?

TO

II

70

60

54

40

71)

at

75

67

Sf>

»

95

ao

7?

■»

i*

9b

to

11

ft

/%

95

•4

ao

71

M,

140

I 25

l ot

in

m

t St

1 40

I2YJ

89

I C SOCKETS

Lo Protil*-Sold»f Tin

124

25-99

100 999

IKS. U

i hi

IS

14

13

12

114]

<"l

?0

16

14

nai

?S

20

18

16

I1BI

?t

?r

76

?0

1201

T»

31

30

719

1721

V,

.15

34

it

(Ml

36

)5

JJ

299

1311

44

13

4"

367

1401

60

59

57

493

7400 TTL Series

740274037404740574067407740874097410741 17412741374 10741774207422742574267427742874 29743074 3274337437743874397440

74LSOO74LS0174LS02ILS0374LS0474LSO'_>74LS0B74LSI074LS1I74LS1274LS1374 LSI 474 LSI5

74LS20

74LS2174LS2274LS2674LS2774LS2874LS3074LS3?74LS3774LS3374LS4074LS4274LS4774LS4874LS5I74LS5274LS5474LS5S

34001 40

4000 25

4001 25

4002 254004 3 504006 1 404007

20 7442 50

20 7443 1.20

20 7445 1.05

20 7446 105

25 7447 .85

.35 7448 95

35 7450 20

25 7451 .20

■ 25 7453 .20

20 7454 20

25 7460 20

40 7470 .40

.75 7472 .35

35 7473 40

.40 7474 .40

.20 7475 .70

.75 7476 . .40

.35 7479 2.00

.30 7480 .69

.35 7482 1.50

.40 7483 .85

.40 7485 1.10

.25 7486 40

.30 7489 2.25

.40 7490 55

.30 7491 1.10

35 7492 60

36 7493 .6020 7494 .85

7495 90

7496

7497

74100

74107

74109

74110

74116

74120

74121

74122

74123

74125

74126

74128

74132

74136

74141

74142

74144

74145

74147

74148

74150

74151

74153

74154

74155

74156

74157

74158

74159

74160741617416274163" 64

241Ml

657416674167741707417274173741747417574176741777418074181

1.30

1.301.90

1.503.002.009.751.501.101.201.50

4.00

1.102.50

741B5

74LS00

74LS6Q 29

74LS73 49

74LS74 49

74LS75 59

74LS76 49

74LS78 65

74LS83AN 1 75

74LS8S 2.25

74LS8G74LS9074LS9274LS9374LS9574LS9674LSI0774 LSI 0374LS1I274LS11.174LSI1474LS12274L512374LS12474LS12574LSI 2674LSI3274LS136

.69

74LS13874LSt39

74LSI5I74LS153'4LS15474LSI 5bJ4LS15674LSI5774LSI 5874 LSI 6074LS16174L5K,?MLS1G374 LSI 0474LSIG5MLSI 6674 LSI 6874LSIG974LSI 70741.517374LS17474LSI 7574LS18I74LS18974LSI9074LS191

741L_74190741917419274193741947419574196741977419874199

MLS192

74LS19374L5194?4LSt9574LS19674LS19774LS22174LS24074LS241

1415242

74LS243

74LS244

MLS247

/4LS24H74LS251MLS2S3

74LS25.7mi. :.;?;-,»

MLSl'50/-ILS'^IjO74LS26674LS27',!74LS27974LS283MLS2H974LS290MLS293?4LS29574LS798/■1LS35?J4LS3G774LS390/4LS670

2.002.0012.00

CMOS

40094010401140124013

4018401940204021402240234024402540264027402640294030403240334034403540384040

40424043404440454046404 7

1 25

4051

1.10

4518

1 65

4052

1 10

4519

90

4053

1.10

4520

1 65

4060

3.25

4521

.126

4061

700

4522

1.76

4063

7.50

4527

3.00

4066

85

4528

1 7S

4067

600

4583

1.45

MM74CW4M

40724073407540764077■1078

4089 3 00

4093 1 75

4098 2 50

4160 I 75

4162

1.75

4163

I 7S

4174

1 75

4175

1 60

4194

I HO

4501

:w

4502

1.75

4503

I 16

4506

70

mmtaloon ja

mmmco:n Me

MMJ4C04M IB

MM74Coa<N }8

MMT4C14N ?iB

MM74C70M 38

MM 74C30M 38

MM74C32N 33

UM74C47N 1 42

MM74C4BN 113

MM74C73N 84

MM74C74N 87

MM74C76N B4

MM74C83N ;oo

MMMCBbN 2 00

MM74C8GN 99

MM74CB9N G 7S

MM74C90N 1 33

MM74C93N 1 33

MM74C95N 161

MMMCI07N 1 B9

UM74CI50M S67

MM74C151N 3B0

MM74C906N 3 80

MMJ4C309N 2.57

MM74C9I0N 10.45

M^^74C9I4^ 3 tB

MM7flC91Sr4 1 71

MM74C918NMM74C977NMMHC933NMM74C925N

4 19565

5 7512.00

MM 74C926N

12.00

MM74C97 7N

1700

MM 74C97BN

12.00

MMBOC97NMMB0CS8N

84-84

M74C15

5 67

MM74CIR3N 757MM74CI63N 1 71MM74Cir,4N 1 Bl

LM301AN

u

INh

A

P« 1M2900N

?50 *

LM307NLM308AHLM308AN1 M308HLM30BN

353 25

3001 001.00

LM7Q2H

LM703LNLM/03CML M 709CHLM710CH

79

45

60

LM2904NIM29I/NI. M3040NI.M3053N

1 M:mr.4N

1 607 001 25I 50

LM30G5N

1 no

39

2.60

LM30 7-..N

LM723CH

LM30H9N

LM723CN

LM314GN

2 00

LM726CH

2 00

1 50

LM725CN

IM3401N

80

LM318NLM319NLM32IH

1 253 00

LM733CN1.M739NL M74 1 CM

1 001 19

1 M.'.OObN1 MJ909NIM391IN

8990

LM324N

LM339AN

LM339NLM34BNLM350NLM358NLM370HLM37QN

1.65

100

99

185

1 001 00

1 15

2 75

LM74ICJLM741CN

39

LM4024N

LM4044N

2.75

3.00

LM/4/CHLM74 7CNLM748CHLM74BCNLW/COCM

79>939

300

LM4750CN1.M4250CNLM4558N

LM555GNIM5558N

200

200

75

1 751 00

LM375N

300

90

LM377NLM3B0N

2.00

1 05

LMI30SN

140

RCA LINEAR SERIES

LM380N

LM380N

LM38IN

LM382N

LM386H

LM387AN

LM3B7N

LM388N

1 05

1 05I 75

95

LMI310M

L M135BNLMI414NLMI45BMLMI4S8NLMI468NLM14B8N

2 751 00 ■

1 75

1.3059

2 90

CA30I3C A 3023CA3035C A 3039CAJ046CA3069CA30C0

256

2 481 351.30

3 253.25

LMt489N

1.05

2.00

LM1550N

2.00

LM159SJ

1.60

LM1B00N

LM1B08N

200

NE566T/V

1.75

200

3 SO

NE567V

1.59

LM1B4BN

MICROPROCESSOR CRYSTALS

price

FREQUENCY

1 0 MH;

5.95

1 8432 MH;

9.80

?0 MHz

5.95

2.097152 MH;

8.50

2.45/6 MH:

8.50

2 667 MH7

8.50

3.00 MHz

8.50

3.20 MHz

8.50

3 7768 MHz

8.50

3 579545 MH;

1.25

4 0 MHz

4.95

4 0 MHz

4.95

4 i94304 MHz

4.95

4 91520 MHz

4.95

FOR PROCESSOR TECH

14.318 $4.95

DIP SWITCHES

4 POSITION $1.50

5 POSITION 1.60

6 POSITION 1.70

1

FKCQUCNCT

5 0 MHz

4 95

5 0688 MhJ

4.95

5 185 MHz

495

5 7143 MH;

4.95

6 30 MHz

4.95

6 144 MH;

4.95

6 40 MH;

4.95

6 5536 MHz

495

8 0 MHz

495

10 0 MHz

4,95

1800 MHz

4.95

18 432 MHz

4.95

.'0 0 MHz

4.95

-.' 1184 MH;

4 95

■7 0MH;

495

i6 n l.'H;

4.9b'

4- 3 MH;

4 95

POSITIONPOSITIONPOSITIONPOSITION

1.802.002.252.50

WIRE WRAP CENTER

HOBBY-WRAP TOOL-BW-630

Battery Operated (Size C)Weighs ONLY II OuncesWraps 30 AWG Wire ontoStanflard DIP Sockets I 025 inch)Complete with Duiil-m bit and sleeve

$34.95

WIRE-WRAP KIT — WK-2-WWRAP . STRIP . UNWRAP

• Tool lor 30 AWG Wire

• Roll ol 50 Ft While or Blue 30 AWG Wire

• 50 pes each I 2 3 & 4 lengthspre stripped wire

$11.95

^

WIRE WRAP TOOL WSUWRAP . STRIP . UNWIUP

30SSM

WIRE WRAP WIRE — 30 AWG

50lt SI 95 lOOOtt $15.00

SPECIFY COLOR — While - Yellow ■ Red Green ■ Blue ■ Black

WIRE DISPENSER — WD-30

50 II roll 30 AWG KYNAR wire wrap wire $3.45 ga.

Cuts wins to desired lengthSlnps 1" ol insulation Saeclty

- Blue-Yellow -White-Red

LIQUID CRYSTAL DIGITAL CLOCK CALENDAR

For Auto, Home. Ottice

Small in size (2x2V4xVii

Pusn buiton lor seconds lelease lor date

C'ocki "iouni anywhere *.tr> etihei 3M douDie-

si3eo laoeo-VELCRO .nciuded

2 MODELS AVAILABLE

LCD 101 ponable model -uns on sell contained

Daltenes lor bellei man a year

LCD ic; 'uns on iz Vo.i System and is Da

LCD-101 or LCD-102your choice.

Clear desk stand lor .

$33.95 ea$2.00

MA1003, 12V DC CLOCK MODULE

It in X'TAL controlledtima base. Protected eoujinnautomotive volt transients.Automatic brightness con-trol with 0.3" green colordisplay- Display turnoffwvith ignition "OFF"

$17.95

Computer Products

5351 WEST 144th STREET

LAWNDALE. CALIFORNIA 90260

12131 679 3313

RETAIL STORE HOURS M-F 9-7 SAT 9-5Discounts available at OEM quantities. Add $1 25tor shipping. California residents add 6% sales tax

1978 CATALOG NOW AVAILABLE

196 BYTE February 1978

FOR ALL CUSTOMERS EXCEPT CALIF. CALL TOLL FREE 800-421-5809

iooooocoocooooooooooooooooooocoooooooooecooooosooooi

MICROPROCESSOR'!

F 8Z80Z-80A

CDP1802CDAM 2901650268008008 18080 ATMS-9900TL

6100 SUPPORT

681 OP6820P6828P6834P6850P6852P6860P6862P68B0P

19.9525.0035.0024 95229512.9519 958.7515.958995

4 958.00

11 25

16 95995

11.9514.95

17 952 70

Z80 SUPPORT DEVICES

3881 1295

3882 12 95

f 8SUPP0RT DEVICES

38513853

14.951495

MICROCOMPUTER

IOI0A SUPPORT DEVICES

821282148216822482288238■82518253825582578259

3.959.95

4.504.958.758.00

12.0028.0012.0025.0025 00

CHARACTER

GENERATORS2513 UP2513 DOWN251 3 UP I5v>2513 D0WN(5vlMCM6571MCM6571AMCM6572MCM6574MCM65#5

6 756.75

9.9510.9510.80

10.8014.7514 75

STATIC RAMS 12421L02 (450)

1L0221 LI 11101A2101-121022102 12111 12112-1

5101CE

1.954 251.49'2.95

1.251 504.003.00

11.95

4 10

1 29

2 751 151 303.50

3.25269

12.50 11.95

WAVEFORM GENERATOR

8038 4.00MC4024 2 50566 1.75

LATE ADD

TMS 4044TMS 5501

itions

14.0024.95

KEYBOARD CHIPSAY52376 13.95AY5 3600 13 95

FLOPPY DISC CONTROLLER

17718 55.95

1771B01 59.95

1702A

5 00

2704

15.0C

2708

13. OC

2716

38 00

3601

4.5C

5203AQ

4.0C

5204AQ

6.0C

6834

16.95

6834-1

14.95

82S23B

4 OC

82238

2 70

DYNAMIC RAMS

1103

2104

2107A

2107B

2107B-4

TMS405O

TMS4060

4096

4116

MM5270

MM5280

MCM6605

UART'S

AY51013A

AY5-1014A

TR 1602A

rMS-6011

IM6402

IM--6403

1 504 50

3 754.50400

4 50

4 504,50

42.00

5 00600

6 00

5.5C8.955.50695

MISC.OTHER COMPONENTS

NH0025CN

NH0026CN

N8T2D

N8T26

74367

DM8098

1488

1489

D 3207A

C 3404

P 3408A

P4201

MM-5320

MM 5369

DM-8130

DM8131

DM-8831

DM-8833

DM-8835

SN74LS367

SN74LS368

2.503.502.45

.90.

.901.951.952.003.955.004.957.501.902.902.752.502.502.5090

.90

KIM

KIM 1650265206522

6530002653000365300046530-005

245.0012.959.00

9.25,15.9615.95'15.9515 95

JADE VIDEO INTERFACE KIT

FEATURES $gg Q5

S-100 Bus Compatible

32 or 64 Characters per line

16 lines ,

Graphics, (128 x 48 matrix)

Parallel & Compositive video

On board low-power memory

e included forL. Scroll Graphics/

Powerful softwarecursor, home, EOCharacter, etc.

Upper case, lower case & GreekBlack-on-white & white-on-black

MOTHER BOARD

.* 13 SLOT MOTHER BOARD w/frontpanel 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 $85.00

PERSCI DISK DRIVE FOR S-100

Info 2000 S-100 DISK SYSTEM IMPCOMPLETEInfo 2000 S-100 DISK SYSTEM(includes dual drive, power supply, case,intelligent controller, adapter, cables, anddisk monitor on EPROM) *» RKQ nn

COMPLETE TDL SOFTWARE

PKG. FOR DISK $195.00

REAL TIME CLOCK FOR S-100 BUS

BARE BOARD $30.00 KIT $124.95

USRT

S 2350 1095

JADE PARALLEL/SERIALINTERFACE KITs.,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.

EDGE CONNECTORS

S-100S-100

Altair SpacingImsai Spacing

$4.45$4.45

[THE PROM SETTER

WRITE and READEPROM

1702A-2708-27165204-6834

• Plugs Dirt'rlly into your ALT AIR IMSAI Computer

• Inrlutlp.s Mam Module Board and External f-JPROMSr.rkel Unit

• The EPROM Sorket Unil is conneclerf lo the Com-nulrr through .i 25 Pin Connector

• ProRramoimR is accomplished hy the Computer

• Just Read in (he Program to he Written on theEPROM into your Processor and lei the Computerdo Iheresl

• Use SnckH Unit to Read EPROM"s Contents in!oyour Computer

• SnfM

'• included

rn.il Power Supplies. Your Computer does

No E\

it all

> DrmblPS .is .in E.Rhl Bit Parallel I/Oi Manual included Driiwry J.ess thnil <I0 day

THE PROM SETTERKIT ASSEMBLED

$210.00 $375.00

SOROC 10120

A CAPABLE LOWCOST. APPROACH TOREMOTE VIDEODISPLAY TERMINALS.

• Cur»or Co-ilro' Key* Standard

• Numeric Kay Pad Standard

• Line and Page E»M Slandaid

• Addraasabl* Cuiioi Standaid

• Swlith SHetKJj* Tr«fiimli»i<v.iiom 75 to 19.200 Dpi Slandard

• Communkralion ModeHDX.'FOX Block

• Interlace Printer InlvrlactRS232 E>ian»iun

• R5232C InlarUc*

• Non-Glare Head Qui Scraan

• Pioiaci Mod* Standard

• Tab Standard

$975 00

AssembledPrice Includes

• Block Mode

• ■Lower Case

• 24 Line Option

• and shippingcharge is on us.

ooeooooaooooceoooacosesecaocoa

8K STATIC RAM BOARD

ASSEMBLED & TESTED

250ns.450ns.

$199.95$150.00

* WILL WORK WITH NO FRONT PANEL

* FULL DOCUMENTATION

* FULLY BUFFERED

* S100 DESIGN

* ADEOUATELY BYPASSED

* LOW POWER SCHOTTKY SUPPORT IC S

250ns. KIT $169.95450ns. $129.95

BARE BOARD $25 00

W/SCHEMATIC N*fcw aW

ADAPT YOUR MOTOROLA 6800SYSTEM TO OUR S-100 8K RAMBOARD. KIT PRICE $12.95

IMSAI/AL

COMPATIBLE

ALTAIR W_i^JiJ

JADEZ80

-with PROVISIONS for Kl

ONBOARD 2706 and POWER ON JUMP

(2MHZ)

$135.00 EA.$149.95 EA.

BARE BOARD $35.00

(4MHZ)

JADE 8080A KIT$100.00 KIT

BARE BOARD $35.00

TU-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! PRIPF t»R PR

Computer Products

5351 WEST 144th STREET

LAWNDALE. CALIFORNIA 90260

213) 679-3313

RETAIL STORE HOURS M-F 9-7 SAT 9-5Discounts available at OEM quantities. Add $1.25tor shipping. California residents add 6% sales tax

Circle 62 on inquiry card.

BYTE February 1978 197

7400NTTL

IBUGBOOK

SN74O0NSN74Q1NSN7402NSN7403N

SN7404NSN740SNSN7406NSN7407NSN7408NSN7409NSN7410NSN7411NSN7412NSN7413N5N7414NSN7416NSN7417NSN7420NSN7421NSN7422NSN7423NSN7425NSN7426NSN7427NSN7429NSN7430NSN7432NSN7437NSN743BNSN7439NSN7440NSN7441NSN7442NSN7443NSN7444NSN7445NSN7446NSN7447NSN7448NSN7450NSN7451NSN7453NSN7454NSN7459ASN7460NSN7470N

SN7472N

.39

SN7473N

.39

SN7474N

.35

SN7475N1

.SO

SN7476N"

.35

SN7479N

5W

SN7480N

■SO

SN7482N

.99

SN7483N

.70

SN7485N

.89

SN74B6N

.39

SN74B8N

3.50

SN7489N

2.49

SN7490N

.45

SN7491N

.75

SN7492N

.49

SN7493N

.49

SN7494N

.79

SN7495N

.79

SN7496N

.79

SN7497N

3.00

SN741Q0N

1.2S

SN74107N

.39

SN74I09N

95

SN741I6N

1.95

SN74I21N

.39

SN74122N

.39

SN74123N

.50

SN74125N

.60

SN74126N

.60

SN74132N

1?5

SN74136N

.95

SN74141N

1 15

SN74M2N

?B5

SN74I43N

3.25

SN74144N

3.00

SN74145N

1.15

SN74147N

2.35

SN74148N

2.00

SN74150N

1.25

SN74151N

79

SN74153N

.89

SN741S4N

1.25

SN74155N

.69

SN74156N

.69

SN74157N

.99

SN741 SONSN74161NSN74162NSN74163NSN74164NSN74165NSN74156NSN74167NSN74170NSN74172NSN74173NSN74174NSN74175NSN74176NSN74I77NSN74179MSN74180NSN74181NSN74182NSN74184NSN741B5NSN741B6NSN74I87NSN74186NSN74190NSN74I9INSN74192NSN74193NSN74194NSN74195NSN74196NSN74197NSN74198NSN74199NSN742QONSN74251NSN74279NSN742BJNSN74284NSN742B5NSN74365NSN7436BNSN743B7NSN74368NSN74399NSN74393N

20% Discount lor 100 Combined 740O's

CO400OCD4001

CD4002CD4006CD40O7C04009C04010CD4011CD4012C040I3CD40I4CD4015CD4016CD4017CD40IBCO4019CO4O20CD4021C04022CD4023C04024C04C25CD4026CO4027CD4028C04029C04030CO403SCD4040CD4041CD4042

CMOS

.491.19

CD4044

CD4046

CD4047

CD4048

CD4049

CD4050

CD4051

CD4053

CD4056

CD4059

CD4060

CD406B

CD4068

CD4069

CD4070

CO4071

CD4072

CD4076

CD4081

CD4082

CD4098

MC14409

MC14410

MC1441!

MC14419

MCI 4506

MC14507

CD4508

CD4S10

C04511

CD4515

CD4518

14.9514.954.95

CD452Q

1.29

MCI 4562

1-1.50

CD4566

2.25

MC145B3

3.50

74C00 Sarin

74C0O

.39

74C02

.55

74C04

.75

74C10

.65

74C14

3.00

74C20

.65

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

74CI61

3.25

74C163

3.00

74CI64

3 25

74CI73

260

74C193

2.75

74C195

2.75

80C95

1.50

BOC97

1.50

iM3uOH

LM301HLM301CNLM302HLM304HLM305HLM307CNLM308HLM308CNLM309HLM309K. LM310CNLM311HLM311NLM317KLM31BCNLM319NLM320K-5LM320K-5 2LM320K-12LM320K-15LM320T5LM3201-5.2LM320T-8LM320T-12LM320T-15IM320T-18LM320T-24LM323K-5LM324NLM339NLM340K-5LM340K-6LM340K-8LM340K-12IM340K-15LM340K-18LM34QK-24LM340T-SLM340T-6

LINEAR

LM340T-8 1-25

LM340T-12 1-25

LM340T-15 1.25

LM340T-18 125

LM340I-24 1.25

LM350N 1.00

LM351CN .65

78MG 1.75

LM370N

LM373N

LM377N

LM380N

LM380CN

LM361N

LM3B2N

NE501K

NE510A

NE529A

NE531H

NE536T

NE540L

NE550N

NE555V

NE560B

NE561Q

NE562B

NE565H

NE565N

NE566CN

NE567H

NE567V

LM703CN

LH709H

LM709N

LM710N

LM711N

LM723H

LM723N

LM733N

LIS

3.25

6.004.953.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

LM1307N .85

LM1310N 2.95

LM1351N 1.65

LM1414M 1.75

LM1458CN -59

LM1496N .95

LM1556V 1.75

LM2111N 1.95

LM2901N 2.95

LM3053 1.50

LM3065N .69LM39O0N(3401).49

LM3905N .89

LM3909 1.25

LM5556N 1.B5

MC5558V 1.00

LM7S25N .90

LH7534N .75

B03BB 4.95

LM75450 .49

75451CN .39

75452CN ,39

75453CN .39

75454CN .39

75491CN .79

75492CN .89

75494CN .89

RC4194 5,95

RC4195 3.25

74LSO074LS0274LS0374LS0474LS0574LS0874LS1074LS1374 LSI 474LS2074LS2674LS2774LS2874LS3074LS3274LS4074LS4274LS4774LS5174L.S55741S7374LS74

74LS00 TTL

74LS7574LS7674LSB374LS8574LS8674LS9074LS9274LS9374LS9574LS9674LSI0774LS10974LS1I274LS12374LS13274LS13674LS13874LS13974LS15174LS153

74LS15574LS15774LS16074LS16174LS16274LS16374LS1B474LS17574LS18174LS19074LS19174LS19274LS19374LS19474 LSI 9574LS25374LS25774LS26074LS27974LS36774LS36874LS670

BUQBOOKS I ind II 117.00 pir lot

b, PUk R Rmt. Ontd 0. Linn. W*IHYJSow is I til inm r» Imoii duiIiw our 90 iicfxnmmij deugimt to Iwctimt ruder iD N vHI ma to know about TTL logic chipj [o uu men «\uneaon Mill m<CJDp(iK«ttoi ■ysltms Von P Itirn isoul lh« bttic conapts atotgnil Msan nduaino ones. (kp-Nopt. Uidies, buses. OKodtri. mirili.pMun, OemuRipltiHt. Lip dispitri. RAW s, flOM's. md mucn. muchnwri

BU0BD0K 111 S5.00

Hi PMv R. Kmt. DiHI G. Unu. WIWYJ

Tnti volumt »m •ntriyluci you 10 l(w tjbutoia UAflT cnp — irjt ill HnpoiunmttrtKt bWMwi dill Wrminils. ttc.. md your miciotompiilei II ilia covercumnt lowu. lid int ns 232C ifttlrljot iUndJrt PirtlcuLirt) ncommtndaitor my RTTY «n[husiiiT

THE 555 TIMER APPLICATIONS S6.95

SOURCEBOOK WITH EXPERIMENTS

br Herd M- Berlin

Ihisbuok'.hiwr. ynn nii.ntho 555 timtri', .viniiow Id ost i' Included a<l Ove I100 vinous design lecriniquej. crjullions ind griplrs lo emit 'nadflo-gotimers, gentmois, powei supplies, nieasurtrrwil inn control circuits. iarijaitiMl. clrculls lor Iht Nome ind lulomoBile, plioldgnphy. music ind

BUGBO0K III JiTol

ky Ptitr R. RORT, 0«l(l " l«r>". WHtfYJ. Jonilflin A. Tltui

Here is the knot that puis II ill together Besides rumng much viltaDle

B080 chip pin By pin md int induces you 10 the Mart 80 microcomputerunique easily mltrliceil system It is recommended Hut you hive the Daground on the BUaBOOKS I I II belote proceeding with BUGB00K III

INSTRUCTOR'S MANUAL S3.D0

tttcesury lor instruction pl Bugocoii I ind II Answers questions regjidmgwpenments. suggestions lor lurtne'reading, phuosopnygi MBM ipoioachlodiflilil elfctronicj * must lot setl-teschmrj indrvxlirani

OP AMP MANUAL

BU0B00K V md Vfl ST9.00 par sul

ky D*D' 0 Lmon, PsUr R Roey. Jeaadun K. TltnEipenmenu m dnj-tii eteclroma. SOrJOA micnKompuicr programminq and80804 rmoceomiHittr irtiertadng An mtegraltd aporoedt to self-rnitruclMbasic digital ekctiomci. breidUoirOiig and 6OB0A mterfaongrpragimnWDBugboot VI integrates the digUI concepts ol Suctwok V mto a treatment ofB0S0A micrpcompuler programming ind interlaang Detnl S laoo

CM0S-M - DESIGNERS PRIMERAND HANDBOOK

Slim n pttic tltucturi pl CMOS devices throuflfi integralten into MSI.

S5.00

COMPLETE MANUAL FOR DIGITAL CLOCKS by John Willi and John Brooks

famtliauzes lechnrctan or hobbyist with basic theories behind digital clocks. Includes trouble shoaling guides, basiccnatacienslics ol clocks, SOlHenng tecrtntquc^. clort coiTipnr.er,! aai; ;,!;■'.■•:■ .ii,.1 kl-ir ■.l'...:i;:;i 1^5 S3.96

XC209XC209XC209XC209

XCZ2XC22KC22XC22S5L2?

125- tit.RedGreen

OrangeYellow.200" dliRedGreenYellowOfange

DISCRETE LEDS

XC526XC52GXC526XC526

XC556XC556XC55GXC556XC556

GreenYellowOrangeClear

.190" dii.Red 10:51

Green 4.S1

Yellow 4,S1

Orange 4ril

.085" dli,MV50 - Red - B/$1

7/S1

INFRA-RED LRU

TYPE

MAN 1MAN 2MAN 3

MAN 4MAN 7MAN 7GMAN 7YMAN 52MAN 71MAN 72MAN 74MANB1MANB2MAN 84MAN 3620MAN 3630MAN 3640MAN 4610MAN 4040MAN 4710MAN 4730MAN 4740MAN 4810MAN 6610

270

2.95

son

495

125

39

in/

1.95

270

175

270

1.95

?ro

195

300

100

300

1.2b

DISPLAY LEDS

POLARITY

Common Anode-red5 x 7 Dot Matrix-redCommon Cathode-redCommon Cathode-redCommon Anode-redCommon Anode-greenCommon Anode-yellowCommon Anode-greenCommon An ode-redCommon Anode-redCommon Ca mode-redCommon AnarJe-yeiiowCommon Anode-yellowCommon Cathode-yellowCommon Anode-orangeCommon Anode-oranoe :1Common Cathode-orangeCommon Anode-orange.Common CalhodB-orangoCommon Anode-md =1Common Anode-redCommon Cathode-redCommon Anode-yellowCommon Anode-orange-D □

TYPE

MAN 6630

MAN 6640

MAN 6650

MAN 6660

MAN 6630

MAN 6710

MAN 6730

MAN 6740

MAN 6750

MAN 6760

MAN 6780

DL701

DL702

DL704

OL707

DL74I

DL746

OL747

DL749

DL750

DL33B

FND70

FND503

FND507

5DB2-730O

5082-7302

5082-7304

5082-7340

POLARITY HT

Common Anode-orange 560

Common Cathode-orange-D.D. .560

Common CaihoOe -orange ~1 .560

Common Anode-orange 560

Common Cathode -orange .560

Common Anode-red -D.D. .560

Common AnoOe-red -1 .560

Common Cathode-red-D.D. .560

Common Cathode-red e1 .560

Common Anode-red .560

Common Cathode-red .560

Common Anode-red -1 30O

Common Cathode-red 300

Common Cathode-red 300

Common Anode-red .300

Common Anode-red 600

Common Anode-red t1 630

Common Anode-red .600

Common Cathode-red S1 .630

Common Cathode-red .600

Common Calhode-red 11D

Common Calhodo (FND359) .250

Common Caihode (FND500) 500

Common Annde [FND510I .500

4 x 7 Sgl. Dirjil-RHOP 6D0

4x7 Sol Dtgil-LHDP .600

Oveirange character J—1) .600

4 x 7 SQl Digit-Hexadecimal 600

199515.0022 50

RCA LINEAR

CA3013CA3023CA3035CA3039CA3046CA30r>3CA3059CA3060CA30BDCA3081

CA308256 CA30B348 CA308635 CA308930 CA309150 CA310225 CA312335 CA3130

CA3140

.85

XR-220GK8 Kit $19.95

WAVEFORMGENERATOR'S

XH-205 58 40

XR-2206CP 5.50

XR-2207CP 3 85

STEREO DECODERS

XR-1310CP S3.20

XH-1310EP 3.20

XR-1B00P 3.20

XR-2567 2 99

XR-2206KA Kit $14.95

EXAR

MISCELLANEOUS

XR-2211CP S6 7XR-4136 2.0

KR-146B 3 8

XR-1488 5 8

XR-1489 4 8

XR-2208 5 2

3.20

TIMERSXR-555CPXR-320PXR-5S6CPXR-2556CPXR-2240CPPHASE LOCKED LOOPSXR 210 5.20

XR-2I5 6 60

XR-567CP 1.95

XR-567CT 1 70

IC SOLDERTAIL — LOW PROFILE (TIN) SOCKETS

18 pin22 nut

16 pin

* SOLDERTAIL STANDARD (TIN)

?B pin38 pin

SOLDERTAIL STANDARD (GOLD)

24 pm28 pm36 pm43 40 pm

WIRE WRAP SOCKETS (GOLD) LEVEL #322 pin

24 pin

37

16 pin

;s

28 pi35 pm40 pm

50 PCS

ASST. 1ASST. 2ASST. 3ASST. 4ASST. 5ASST. 6ASST. 7

ASST. 8R

RESISTOR ASSORTMENTS $1.75 PER ASST.

10 OHM 12 OHM IS OHM IB OHM 22 OHM

27 OHM 33 OHM 39 OHM 47 OHM 56 OHM68 OHM 82 OHM 100 OHM 120 OHM' 150 OHM180 OHM 720 OHM 270 OHM 330 OHM 390 OHM

I20K330KB20K2?M

470 OHM

560 OHM

680 OHM

B20 OHM

1 SK

1 5K

1 8K

2 2K

3.3K

3 9K

.1 7K

5 6K

8.2K

I0K

J2K

I5K

22K

27K

33K

39K

56K

6BK

B2K

100K

150K

18CK

220K

270K

390K

470K

560K

680K

1/4 WAn 5% 50 PCS

t/4 WAH 5% 50 PCS.

1/4 WAn 5% 50 PCS.

t/4 WAn 5% - 50 PCS.

1/4 WAH 5% 50 PCS.

1/4 WAn 5% 50 PCS,

Su. 2 7M 3 3M 3 9M 4 7M 5 6M 1/4 WAn 5% -- 50PCS.

Includes ResistorAssortments 1-7(350 PCS.) S9.95 ea.

I5.D0 Minimum Order — U.S. Fundi OnlyClIlfOfTlla ReildentJ — Add 6% SiIbi Tli

Spec ShBBis - 2Sp — Send 35c Stamp lor 1978 Catalog

Dealer Information Available

1021-A HOWARD AVE.. SAN CARLOS. CA. 94070PHONE ORDERS WELCOME — (415) 592-8097

AdvfHllseKJ Prices Good Thru February

HOBBY-WRAP TOOL-BW-630

Battery Operated (Size C)Weighs ONLY 11 Ounces• Wraps 30 AWG Wne pnloStandard DIP Sockets (.025 inch)Complete with built-in bit and sleeve

WIRE-WRAP KIT — WK-2-WWRAP . STRIP . UNWRAP

. Tool tor 30 AWG Wile

• Roll ol 50 Ft. White or Blue 30 AWG Wire

• 50 pes. each 1", 2". 3" 8 4" lengthspre-stripped wire.

$11.95

WIRE WRAP TOOL WSU-30WRAP . STRIP . UNWRAP-S5.95

WIRE WRAP WIRE — 30 AWG

25ft.min.S1.25 50tt.S1.95 1Q0ft.S2.95 1000ft $15.00SPECIFY COLOR — White - Yellow ■ Red - Green ■ Slue - 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 — Blue-Yellow-White-Red

REPLACEMENT DISPENSER SPOOLS FOR WD 30

Specify blue, yellow, white or red

$1.98/spool

DIP/IC INSERTION TOOL WITH PIN STRAIGHTEN

Inserts both 14 and 16 pin packages. Pin Straightener

built into Handle.

Model INS-1416 S3.49/ea.

HP 5082-7400 SERIES — MULTI-DIGIT

1 10+

S.49 .39

.59 .49

.69 .59

.79 .69

• 'A" ht. • Common Cathode Red 2 Digit

• 3-5 volts (it- 5 mils/second 3 Digit

• 7 segment Monolithic 4 Digit

• Dip Package 5 Digit

TV GAME CHIP SET — $9.95

Includes AY-3-8500-1 Chip and 2.010 mhz crystal(2.010 crystal — S1.95 ea/AY-3-8500-1 Chip — S8.95 ea.)

TYPE

1N746IN751A1N752IN 7531N7541N9591N96581N52321N52341N52351N5236IN4S6IN4581N4BSA1N40011N40021N40031N40O4

ZENERS -

VOLTS W

3.3 400m

5.1 400m5,6 400m

6.2 400m6.8 400m8,2 400m15 400m5.6 500m6.2 500m6 8 500m7.5 500m

50 PW 1 AMP

100 PIV 1 AMP

200 PIV 1 AMP

400 PIV 1 AMP

DIODES -

PRICE TYPE

4/1 00 1N4005

4/1 00 1N40O6

4/1.00 IN40Q7

•1/1.00 1N3600

4/1.00 1N4148

8/1.00 1N4154

4/1 00 1N4305

28 1N4734

26 1N4735

28 1N4736

2B IN4738

6/100 IN4742

6/1 00 1N4744

6/1.00 1N1183

12/1.00 1N11B4

12/100 1N1185

12/1.00 1N1186

12/100 1N1188

RECTIFIERS

VOLTS W

600 PIV 1 AMP800 PIV I AMP1000 PIV 1 AMP50 200m

10m10m

PRICE

10/1.0010/1.0010/1.006/1,0015/1.0012/1.0020/t 002828

1w

12

15 Iw

50 PIV 35 AMP

100 PIV 35 AMP

150 PIV 35 AMP

200 PIV 35 AMP

400 PIV 35 AMP

C36DC3BM2N2328MOA 960

SCR AND FW BRIDGE RECTIFIERS

15A@400V SCR

35A @ 200V SCR

1 6A @ 200V SCR12A@50V

12A<5>200V

fW BRIDGE RECFW BRIDGE REC

MPSAOi Srll.00

MPS «6 Srll 00

7H91B 4/I1.D0

2HS319A 3/1100.

Beat, 4/ji.M

! N22UA 5/11 DO

:'KM,i :,'si m

!W36M 4/11.00

2K2*M 4/tl 00

JN2906A 4/Jt.OO

2N290JA 9(1109

2WK5 5/tl 00

2K303S Vtl 00

TRANSISTORS 5

MJEIS5SMJE30SS1M33H

PK3M7PH3S68PWJ5E9

t 89

S/tlOO5/tl 003/1100

7H3702IHVOt7N37Q5;W70G1(070??W711

:«37722H3M3

9

f 1*440!JN4403;rl4400

4(1100 '4/11 DO4,1100

7NU09 51100ZMS2ID 5,11 00

;hi4k i2oo

2NSM9 3/11 002M5B1I 5.1100

C10CS1SCR 341 00

4040S ti n

40410 11 71

CAPACITOR

50 VOLT CERAMIC

CORNER

10 pl22 pl47 pl

100 pl220 pl470 pl

.001ml0022.0047ml,01 ml

1/35V.15/35V.22/35V.33/35V47/35V68/35V1.0/35V

.05 04 .03 .00 VF

05 04 .03 .0047MF .05

05 .04 .03 .OVf OS

05 04 .03 022fiF .06

.05 04 03 .047*iF .06

.05 .04 .035 1MF 12

1M VOLT MYLAR FILM CAPACITORS

.12 .10 .07 ,022ml 13

.12 ,10 .07 .047ml .21

12 .10 ,07 ,1ml .27

.12 .10 ,07 .22ml .33

+20% DIPPED TANTALUMS (SOLID) CAPACITORS

.2B .23 .17 1.5/35V

.28 23

1-9 10-49 50-100

26

47/50V1.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

1000/16 V

2200/16V

2.2/25V

3.3/25V .31 .274.7/25V .32 ,266.B/25V .36 .3110/25V 40 35

15/2SV .63 .50

MINUTURE ALUMINUM ELECTROLYTIC CAPACITORSRidlil Load

Ailil Laid.13

.10

.47/25V47/50V1.0/16V1.0/25V1.0/50V4.7/16V4.7/25V4.7/50V10/16VI0/25V10/50V47/50V100/16V1O0/25V100/50V220/16V47Q/25V

.15

.13

198 BYTE February 1978

m

RRFAD BOARD Each ^Ft contains 350 wites

ur11-"1^ uwn" cut to 14 different lengths

JUMPER WIRE KIT •ffijft. „

Ihe leads are benl 90' loreasy Insertion.

Wire length is classifiedby color coding.

All wire is solid linned 22gauge wiln Pvc insolalicn.

The wires come packed inJK1 $10.00/ kit '«""""«' P|1!'« '""

HCflPIACT MateS W'tfl tW0 r0WS 0f ,025' Sq' orOUUrvtl Uia. posts on patterns of .100"

III AADrTriC centers an<i shielded receptacles.JUIVIr tnO Probe access ^o'es in back. Choice

ot 6" or 18" length.Part No. No. of Contacts Length Price924003-18R 26 18" $ 5.38 ea.924003-06R 26 6" 4.78 ea.

924005-18R 40 18" 8.27 ea.

924005-06R 40 6" 7.33 ea.

924006-1SR 50 18" 10.31 ea.924006-08R 50 6" 9.15 ea.

IIMPFR So|der l0 Pc boards for instant

Hjf uUIVIr Cn plug-in access via socket-connector

UPAnCDO jumpers. .025" sq. posts. Choice

Part No.

923863923873923865923875923865923876

of 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.

H INTRA-C0NNECT0R

Provides both straight and right angle functions. Mateswith standard .10" x .10" dual row connectors (i.e. 3m, Ainsley,etc.) Permits quick testing of inaccessible lines.Part No.: 932576-26 No. ot contacts: 26 Price $6.90 ea.

II 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 designSwitch buttons recessed to eliminate accidental switching.Part No.: IS-26 No. ol contacts: 28 Price $13.BO ea.

T

cf1 CRYSTALS

— /it*-'*- THESE FREQUENCIES ONLY

Part*'" ' Frequency Case/Style

CY1A 1 000 MHz HC33'U

CY2A 2 000 MHi HC33.-U

mz

-pTIc!0S5.95S5.95

ICY2 01

2 010 MHz

HC33ili

-CY3ACY7ACY12ACY14ACYI9ACY22ACY30B

S1.95I

4000 MHz5 000 MHz10.000 MHz14 31018 MHz18 000 MHz20 0DO MHz32.000 MHz

HC1B/UHC18/UHC18.UHC18UHCI8.UHC18.UHC16VU

S4.95S4 95S4 95S4 9554.95S4 95S4.95

CONNECTORS

PRINTED CIRCUIT EDGE-CARD

.156 Spacing-Tin-Double Read-OotBifurcated Contacts — Fits .054 to .070 PC. Cards

15/30 PINS (Solder Eyelet) $1.95

18/36 PINS (Solder Eyelet) S2.49

22/44 PINS (Solder Eyelet) $2.95

50/100 PINS (Wire Wrap) $6.95

50/10OA i.ioo Srjacinqi PINS (Wire Wrap) $6.95

25 PIN-D SUBMINATURE (RS232)

DB25P PLUG $3.25

DB25S SOCKET $4.95

I-.75A

l&JHEAT SINKS#205

Beryllium Copper w-biack finish for TO-5 $ .

205-CB

291- 36H Alominum lor TO-220 Transistors 8,

Regulators680-.75A Black Anodized Aluminum for TO-3Dude 4 Black Anodized Aluminum — predrilled

mounting holes for T0-3 — 4% x 1V* x 2"

S .26$1.60

$1.75

Etching Kits (cannot be shipMrt via air]

32 X A-1 PC Erch Materials Kit

enough (or 5 circuit boards27 X A-1 tlcried Circnii Kit

Plugboards

3662

22/44

8800V

© pern

Crmi'/eie kit — only add water6 5 *. 4 5 X 1.16 Epoxy glassP-P.iltern-44 P C Tabs-spaced 156Mating connects for plugooard —22 pin double readoutUniversal Microcomputer 'Processorplugboard — Epoxy Glass —completewild heatsmk and mounting hardware5 313 X 10 X 1/16 copper clad

$29.95 eaS 9.95 ea.$ 6.95 ea.$ 2.95 ea.S19.95 ea.

1/16 VECTOR BOARD

Part No64P44 062XXXP169P44 062XXXP64P44 062WE84P44 Q62WE1B9P44 062WE169P84 062WE169P44 062WEC1

Price

1-g 10 up

INSTRUMENT/CLOCK CASE

Injection molded unit.Completewim red bejel.4W » 4" X 1-9/16".

$3.95 ea,

MICROPROCESSOR COMPONENTS

8080A

8212

8214

8216

8224

8228

2504251825192522252425252527252925322533

CPU

8 Bit Input/OutputPriority Interrupt ControlBi-Directional Bus DriverClock Generator/Driver

System Controller Bus Driver 10-95 280

$16.00 CDP1802 CPU

4.95 MC6800 8 Bit MPU

15.95 MC6820 Periph. Interlace Adapter

6.95 MC6810AP1 128 x 8 Static RAM

9.95 MC6830L8 1024 x 8 Bit ROM

CPU

S19.9524.9515.006.0015.0029.95

CPU

SR'S1024 OynimieHe> 32 BITHex 40 BITDjat 132 Btt SSR512 Dynamic1024 DynamicDual 255 BITDual 512 BITQuad BO BIT102J Static

Dynamic

Static

Static

8593 16 K I21LG2/9ILQ2 1Q24 « 174200 256 « I93421 256 . '

SialicStaticSialicSialic

3492.25

6 95

225

JMM52G2 2K.1

Dynamic

2 tor 1 00.

UPO414(2104)4K

Dynamic

18 Pin

5.95

UARTSAY-5-1013 30K Baud

ROM'SChar Gen -upper caseChar Gen -lower caseChar Gen

1702A 2048

5203 2048

82S23 32 > 8

82S123 32 i B

74S26: 1024

2513(2140)2513(3021)2516

MM5230

3601

UMZ

256 x t

PROMS

Famos

Fast

2048 Bn (512 x 4 on 256 x

2716 16K

6301-1 1024

6330-1 256

Eprom

Tn-Slate BipolarOpen Collector Bipolar

Z3BS

34.95

349

SPECIAL REQUESTED ITEMS

AY-3-B500-1

8.95

AY-5-9100

1750

AY-5-9200

T4.95

AY-5-9500

4.95

AY-5-2376

14.95

9374 '

1.95

11C904N38

8T20

8T97

HD0165

MCM6571

MCM6574

MCM6575 13.50 TIL308

19.95 7205

3.95 ICM7045

7.50 ICM7207

2.00 ICH7208

7.95 ICM7209

13.50 MK50240DSO026CH

ITEMS

CLOCK CHIPS

MM5309 S9.95

19 95 9368

3.95

MM5311

4.06

24.95 LD110/111

25.00/set

7.50 95H90

11.95

22.00 MC3061P

3.50

UM5316

6.05

7.50 MC4016 (74416) 7.50

MM5318-

9.95

17.50 MC1408L7

B.95

MM5369

2.B5

3.75 MC1408L8

9.95

10.50

CT7001

5.85

PARATRONICS

Featured on February's Front Cover of Popular Electronics

Logic Analyzer Kit mohmom momio

Model 100A

S229.00/kit

• I I I IMllllll

100A assembler! S295.00

Analyzes any type of digital systemChecks data rates in excess of 8million words per secondTrouble shoot TTL. CMOS, DTL. RTLSchottky and MOS familiesDisplays 16 logic states up to 8 digits wideSee ones and zeros displayed on yourCRT, octal or hexadecimal formatTests circuits under actual operating conditionsEasy to assemble — comes with step-by-step constructionmanual which includes 80 pages on logic analyzer operation.

(Model 100A Manual -$4.95)

1MB

Some applications are;

— Troubleshooting microprocessoraddress, instruction, and data flow

— Examine contents ot ROMS

— Tracing operation of control logic

— Checking counter and shiftregister operation

— Monitoring I/O sequences

— Verifying propersystem operationsduring testing

PARATRONICS TRIGGER EXPANDER - Model 10

Adds 16 additional bits. Provides digital delay and qualification ot Input clockand 24-bit trigger word. — Connects direct to Modal 100A tor integrated unit).

BS3B Wl

3V2-Dlg.lt Portable DMM

• Overload Protected

• .3" high LED Display

■ Battery or AC operation

• Auio Zeroing

■ 1mv. IVa. 0 1 ohm resolution

• Overange reading

• 10 meg input impendence

• DC Accuracy 1% typicalRanges: DC Voltage -0-1000WAC Votlarje 0-I00OV

Freq Response. 50-400 HZ

dc/ac Current o-ioomA

Resistance 0-10 meg ohmSize. 6 4~ x 4.4" x 2""

Accessories:AC Adapter BC-28 S9.00Rechargeable

Batteries BP-26 20.00Carrying Case LC-28 7.50

CONTINENTAL SPECIALTIES

PROTO BOARD 6

Model 10 Kit — $229.00

Modal 10.Assembled — S295.0DBaseplate — 19.95Model 10 Manual—$4,fl5

100 MHz 8-Digit Counter

• 20 Hi-100 MffI Range . Four power souces. I.e.. .6" LED Display batteries. 110 or220V with

• Crystal-controlled limeoase charger 12V wJth aula

• fully Automatic iinntcr adapter and eilemal. Portable — completely 7 2-10V power supply

."v?,™ M*X-1M $134.95

ACCESSORIES FOR MAX 100:

Mobile Charger Eliminator

use power from car battery Model 100— CLASS.SB

Chargflr/EilmlniiDT

use 110 VAC Model 100 — CAI S0.9S

S15.95

(6" long X 4" wide)

Other CS Proto Boards

PB100 -4.5" x 6" $ 19,95

PB101 -5.8" x 4.5" 29.95

PB102 -7"x4.5" 39.95

PB103 - 9" x 6" 59.95

PB104 - 9.5" x 8" 79.95

PB203 - 9.75 x 6V4 x 2« 80.00PB203A.9.75x6'/!X2:H 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

PROTO STRIPS

m,

OT-S9S 590

0T-59D bus strip

OT-47S 470

QT-178 bus strip

0T-35S 350

OT-35B bus Strip

OT-1BS 180

OT-12S 120

OT-8S 80

OT-75 70

price12.50

2.5010.00

2.25

Experimenter 300Experimenter 600

S 9.95

$10.95

$5.00 Minimum Order — U.S. Fundi OnlyCalifornia Reildonls —Add 6% Sain Tn

Spac Shorts - 25*? — Send 35* Stamp tor 197B CatalogDealer Informitlon Available

1978

CATALOG

NOWAVAILABLE

1021 -A HOWARD AVE., SAN CARLOS, CA. 94070

PHONE ORDERS WELCOME — (415) 592-8097

Advertised Prlcai Good Thru February

The Incredible"Pennywhlstle 103'

$129.95 Kit Only

The Pannywltittle 103 Is capable c< recording data to and from audio tape withoutcritical speed requirements lor the recorder and it is able lo communicate directlywith another modem and terminal for telephone "hamming" and communicationsfor the deaf. In addition, it is free ol critical adjustments and is built with nan-precision,readily available parts.Data Transmission Method Frequency-Shift Keying, full-duplex (half-duplex

selectable).

Maximum Oali Rita 300 Baud.

Dili Format Asynchronous Serial (return to mark level required

between each character J.Receive Channel Frequencies .. .2025 Hz lor space: 2225 Hz for mark.Trinimll Channel Frequencies ..Switch selectable: Low (normal) • 1070 space.

1270 mark; High » 025 space, 2225 mark.

Receive Sensitivity -46 dbm accoustically coupled.

Transmit Level -15 dbm nominal. Adjustable from -6 dbm

lo -20 dbm.Receive Frequency Tolerance ...Frequency reference automatically adjusts to

allow lor operation between 1 BOO Hz and 2400 Hz.Digital Dale Interlace EIA RS-232C or 20 mA current loop (receiver is

optoisolated and non-polar).

Power Requirements 120 VAC, single phase, 10 Watts.

Physical All components mount on a single 5" by 9"

printed circuit board. All components Included.Requires a VOM. Audio Oscillator, frequency Counter and/or Oscilloscope to align.

NEW! BULB-ENERGY SAVER

BULB-ENERGY SAVERS usad for years bymajor Industrial users — now available forhome or office use. Bulb Savers can cutelectrical bills by as much as 3%.BULB-SAVERS lengthens light life by:t. Acting as an electrical "shock absorber", turns the bulb on slowly, eliminat-ing the "thermal shock". Bulb lite increases300 percent.

2. Banishes Current "Surges". Cushionsline voltage surges when other loads cutpower line.

BES-1

Bulb lasts 3 ormore limes longer.Fits Standard Socket6 watts to 200 watts10+

$1.50 ea. 1.25 ea. 3. Reduces Energy Consumption

DIGITAL STOPWATCH

• Bright 6 Digit LEO Display

• Times to 59 minutes 59.59 seconds

• Crystal Controlled Time Base

• Three Stopwatches in One

Times Single Event — Split & Taylor

• Size 4.5" x 2.15" x .90" (4ft ounces)

• Uses 3 Penhte Cells.

Kit — $39.95

Assembled — $49.95Heavy Duty Cany Case $5.95

Slop Watch Chip Only ,7205) $19.95

3V2DIGIT DPM KIT

■ New Bipolar Unit• Auto Zeroing. .5" LEDModel KB500 DPM Kit

Auto PolarityLow PowerSingle IC Unit

$49.00

Model 311D-5C-5V Power Kit $17.50

JE700 CLOCK

The JE700 is a low cost digital clock, bu!is a very high quality unit The unit lea-lures a simulated walnul case with di-mensions ol 6 <2'i x1 ItuliliiesaMAN72 high brightness readout, and ihelt.r»H.„ MMIBMCBa.N,

KIT ONLY $16.95

HEXADECIMALENCODER 19-KEY PAD

. t -o

. ABCDEF

• Shift Key

• 2 Optional Keys

$10.95 each

63 KEY KEYBOARD

RBSTQ Encoder Chip (encodes 16 Keys)

AY-5-2376 Encoder Chip lencodes 88 Kevsl

$29.95

This keyboard features 63 unencoded SPST keys, unattached loany kind ot P C.B A very solidmolded piastre 13" x 4' batesuits most apolications

STB t

JE803 PROBE

The Logic Probe is a unit which is lor the most part.mdespensiDie m trouDle shoonng togrc 'amitiesTTL. DTL RTL. CMOS It derives Ihe power Uneeds lo operale directly oil ol ihe circuit undertest, drawing a scant 10 mA max (t uses a MAN3readout to indicate any ol the following stales byIhe5e symbols IH1 - I |LOW) ■ o (PULSE) ■ P TheProde can detect high Irequency pulses to 45 MHiII can i be used ai MOS levels o> circi*l damagewill result

$9.95 Per Kit

printed circuit board

VI 5V 1A Supply

This is a standard TTL power supply using the welt knownLM309K regulator IC to provide a sohd 1 AMP ol current it 5volts We try to make things easy lor you by providingeverything you need in one package, including the hardware

$9.95 Per Kit J

Circle 63 on inquiry card.

BYTE February 1978 199

What's New?

BUGBOOK Writers Write Debug Book

SOFTWARE

Chess Program for SOL and KIM-1

This remarkable chess program runsin about 1 K bytes of memory on theKIM-1 microcomputer, yet plays anacceptable level of chess. No extramemory or peripherals are needed forthe KIM-1 version; the built in hexa-decimal keyboard and display are usedto enter the player's moves and displaythe computer's replies. Another versionof the program is tailored to the SOLcomputer, and enough documentationis provided to enable the user to adaptthe appropriate version to other 6502and 8080 based computers. The com-puter can be set up to play white orblack, and can also play against itself.The program will follow a book openingwhich can be changed by the user, and

data is provided for the French Defense,Giuoco Piano, Ruy Lopez, Queen'sIndian and Four Knights openings. Thelevel of the computer's play can be ad-justed so that moves on the KIM-1 take3 seconds ("super blitz"), 10 seconds("blitz") or 100 seconds ("normal").Because of size constraints the programdoesn't handle castling, en passantcaptures and queening of pawns, butprovision has been made for the userto manually execute these moves foreither side. The program documentationincludes a complete player's manual, aprogrammer's manual with a discussionof the playing strategy and method ofanalysis, basic flowcharts and statevariable definitions, instructions formodifying the input and output rou-tines, and suggestions for implementingstrategy improvements. A commentedassembly source code listing with symboltable and cross references is included,as well as a hexadecimal object codedump. The MICROCHESS program isavailable on a KIM-1 cassette for $13,on a SOLOS CUTS cassette for $18, andon paper tape for other 8080 basedcomputers for $15, from Micro-WareLtd, 27 Firstbrooke Rd, TorontoOntario CANADA M4E 2L2."

Circle 653 on inquiry card.

Data File Program

Practical Programming Company,POB 3069, North Brunswick NJ 08902,has introduced a program product calledthe "Data File Program," designed forthe 8080 or Z-80 processors and as-sembled to start at either address 0 oraddress 2000. This program is a formof editor which uses memory to createnamed files of data, with each fileconsisting of a number of records. Theprogram includes a search feature, aswell as facilities for editing data. This1024 byte program is available for $10(specify which origin, hexadecimal 0 or2000, with your order)."

Circle 656 on inquiry card.

Assembly Language Aids forNorth Star Disk Users

The XEK package includes anassembler, autoline editor and disas-sembler, all using the North Star DiskOperating System for disk and terminalIO. Source and object programs can alsobe loaded from Tarbell format cassettetapes or from Intel hexadecimal formatpaper tapes. As many as six source orobject files may be simultaneously resi-dent in programmable memory. XEKcomes with a user manual for $48 fromthe Byte Shop of Westminster, 14300Beach' Blvd, Westminster CA 92683,(714) 894-9131."

Circle 658 on inquiry card.

Word Processing System foriCOM Floppy Users

This word processing system featurestext filling and justifications line cen-tering and underlining, page numberingand top and bottom page titles, andvariable line spacing. It comes in hexa-decimal ASCII format on a data disketteready to run under iCOM's FDOS II orIII. Input to the word processor iscreated using the FDOS text editor, andformatted output is written back to adiskette. A driver for the Andersonjacobson AJ 841 Selectronic terminalis also available. The package is $235from Ortronics, 4753 Irvine Av, NHollywood CA 91602, (21 3) 763-0404."

Circle 657 on inquiry card.

Get Your Editor and OperatingSystem in a Poly Bag

Here's 8080 software offered oncassette and paper tape media, packagedin polyethylene bags. Offerings includethe EDIT 3.0 text editor ($22.50), theCOS 1.0 cassette operating system ($15),and the SOS 1.0 small operating system($15) which includes utilities for theTarbell cassette interface and Oliverpaper tape reader. The SOS 1.0 andEDIT 3.0 user manuals contain 4.8 and56 pages respectively. Dealers may placesingle quantity orders at the dealer dis-count to try the software and look overthe documentation. Contact LSM Engi-neering, POB 3243, Orange CA 92665."

Circle 571 on inquiry card.

DBUG An 8080Interpretive

Debugger

STORING ASSEMBLE LAW

This 100 page paperback, first inthe BUGBOOK Application Series onassembly language programming, de-scribes an interpretive debugger pro-gram for the 8080 which enables theuser to enter and modify a programin memory and single step throughprogram execution. The DBUG pro-gram was written for reading andpunching paper tape on a Teletype-writer, but the IO routines can be easilychanged to accommodate other peri-pherals. DBUG resides in 1 K bytes ofmemory, and a bootstrap loader for theDBUG: An 8080 Interpretive Debuggerand hexadecimal listings of the DBUGprogram are given in the appendices.DBUG: An 8080 Interpretive Debuggersells for $5 from E&L Instruments Inc,61 First St, Derby CT 06418, (203)735-8774."

Circle 654 on inquiry card.

A Personal Data BaseManagement System

This data base management systemshould be useful in many applicationswhere information must be stored,retrieved and modified. Commands areprovided to create files, add, delete orlist records in sequence or selectively,change fields within existing records, orsearch fields for a string or for integervalues. The current system is designedfor an Altair 8800b computer with oneor two floppy disks and a minimum of32 K bytes of memory. The PDMSsystem is supplied on an 8 inch floppydisk for $795, including a 40 pagemanual which contains a source listing ofthe program. The manual, which illus-trates typical applications of the system,is available separately (without thesource listing) for $20, from the Micro-ware Division of Physical BiologicalSciences Ltd, POB 47, BlacksburgVA 24060, (703) 951-9469."

Circle 655 on inquiry card.

200 BYTE February 1978

TOUCH TONE ENCODER KIT

Simplicity itself to complete. No other parts required, nocrystal required. The back of the touch pad has etched &drilled PC board and you solder the encoder chip to it. Addyour own small speaker & 9 volt battery and you are done.A touch of the pad produces the proper tone signal fromthe speaker. We furnish schematic and instructions.

SP-149-B $12.95

WIRE WRAP WIRE

TEFZEL blue #30 Reg. price$13.28/100 ft. Our price 100 ft $2.00;500 ft $7.50.

MULT1 COLORED SPECTRA WIRE

Footage 10' 50' 100'

8 Cond.

#24 $2.50 9.00 15.00

12 "

22 3.00 11.00 18.00

14 "

22 3.50 13.00 21.00

24 "

24 5.00 20.00 30.00

29 "

22 7.50 28.00 45.00

Great savir

gs as these are about 1/4

book prices. All fresh & new.

TOUCHTONE ENCODER CHIP

Compatible with Bell system, no cry-stal required. Ideal for repeaters &w/specs. S6.00

LAMBDA POWER SUPPLIES

LM-D-12-OVP 12 volts DC 10 amp$60, LV-EE 5-OVP 5 VDC 74 Amp$75.00

VIATRON CASSETTEDECKS

The computer cassette deck alone$35. Set of Control boards forabove $40.

VIDEO DISPLAY from Viatron systems. Acceptscomposite video signals. 9 inch transistorizedCCTV black & white CRT monitor. Ready to go,checked out. 115 volt AC 60 cycle. With circuitdiagram.

$75.00

FAST CHARGE AA NICADS $1.25 each

f—>

IR NIGHT VIEWER $199.00

Custom made, complete with light source & viewer in onepiece. Comes with carrying strap. Ready to operate with 6volt lantern battery. Guaranteed by the manufacturer. See intotal darkness. Great for scientists, viewing nocturnal animals& birds, criminal investigation . . . observe without being ob-served, and a ball for just plain snooping!!!! Sorry to say butno shipments to Calif, (lens may vary slightly from pic)

SPL-21 $199.00

^ie&nMa.

Please add shipping cost on abo ve. Minimum order $10

FREE CATALOG NOW READY # SP-10P.O. Box 62, E. Lynn, Massachusetts 01904

Circle 68 on inquiry card.

BYTE February 1978 201

What's New?

Low Cost Logic State Analyzer

MISCELLANEOUS

Backgammon, Anyone?

Low Cost Power Surge Protection

This backgammon board comes withsomething extra: a built-in opponent inthe form of an Intel microprocessor con-trolled by a program in read onlymemory. The program generates randomdice rolls, interacts with the playing keysand is said to base its moves on an ana-lysis of the current board position usinggame theory and probabilistic methods.The backgammon game should beavailable in many retail outlets, and hasbeen selected for inclusion in theHorschow's Collections and AmericanExpress gift catalogs. Priced at about$200 retail, the game is produced byTexas Micro Games Inc, 6230 EvergreenE, Houston TX 77081, (713)778-9S47.f

Circle 572 on inquiry card.

Has your computer ever lost its mindand memory during an electrical storm?This line cord transient suppressor willabsorb repeated power surges from light-ning or heavy duty electrical equipment,protecting delicate electronic circuits.Available in two prong ($11.50) or threeprong ($14.50) plug form, these unitscan also be obtained with integral powerline hash filtering, from ElectronicSpecialists Inc, POB 122, Natick MA10760, (617) 655-1532.■

Circle 573 on inquiry card.

6800 Based MicrocomputerTrainer from Heath

Paper Feeder for Word ProcessingPrinter

****■*'■»

***

*Sa

r

The EE-3401 self-instructional courseprovides tutorial material and hardwareand software experiments in micro-processor operation, interfacing and pro-gramming. The course is designed to beused with the ET-3400 microprocessortrainer, which features the 6800 micro-processor, 256 bytes of programmablememory, 1 K byte read only memorymonitor, and a 6 digit hexadecimaldisplay and keyboard. Breadboardingsockets permit fast construction ofexperiments and special prototype cir-cuits. The EE-3401 course and ET-3400microprocessor trainer, priced at $89.95and $189.95 respectively, are describedin a free catalog available from HeathCompany, Dept 350-460, Benton HarborMl 49022, (616) 982-3236.-

Circle 578 on inquiry card.

This device eliminates the manualtask of inserting fresh paper and re-moving typed documents from a printerin high volume word processing appli-cations. The SpeedFeed interfaces to aQume daisywheel printer, inserts sheetsinto the printer's platen, removes com-pleted sheets and stacks them in aninternal hopper. The hopper can holdup to 180 sheets of paper in sizes upto 12 by 14 inches (30.5 by 35.6 cm).Sensors automatically detect an end ofpaper condition. The SpeedFeed is$1390 in single quantities with 90 daydelivery; substantial quantity discountsare available, from Qume Corporation,2323 Industrial Pky W, Hay ward CA94545, (415) 783-6100..

Circle 579 on inquiry card.

The Model 10OA logic state analyzeris said to be the lowest priced datadomain instrument available. The basicunit operates as an 8 channel stand aloneanalyzer, offering a 16 word truth tabledisplay of ones and zeros on an ordinaryoscilloscope, post-trigger and pre-triggerdata collection, hexadecimal and octalformats, and both snapshot and repeti-tive display presentations. The Model100A can be mated with the Model 10expansion unit on an optional baseplateto provide a 24 bit logic analyzer capableof monitoring a microprocessor's fulladdress and data bus. The expandedpackage also provides a user program-mable digital delay for paging throughprograms up to 1000 steps long anda pass counter for monitoring loops.Selected bus operations can be capturedand displayed with the clock and triggerqualifiers on the combined package.The units can be used with a variety oflogic families and are capable of handlingdata rates in excess of 8 megabytes persecond. The Model 100A basic unitand Model 10 expansion unit are eachpriced at $295 assembled or $229 asa kit. The optional baseplate is $9.95,and a separate owner's manual is avail-able for $4.95, from Paratronics Inc,800 Charcot Av, San Jose CA 95131,(408) 263-2252.«

Circle 576 on inquiry card.

Upgrade Kit for PolyMorphicSystems Users

The Poly 88 Disk Kit contains allmechanical parts and electronic assem-blies needed to convert a Poly 88 micro-computer into a new System 8813 diskbased system. The kit includes a chassis,walnut cabinet with brushed aluminumfront panel, a 10 slot backplane, powersupply and fan, floppy disk controller,2 K bytes of read only memory, onefloppy disk drive and two system disk-ettes. The conversion kit costs $1450and is said to take only a few hours toinstall. Up to two more disk drives maybe added at a cost of $590 each. The kitis available from PolyMorphic SystemsInc, 460 Ward Dr, Santa Barbara CA93111, (805) 967-0468 or from Poly-Morphic Systems dealers. ■

Circle 577 on inquiry card.

202 BYTE February 1978

Fantastic $avings

on Terminal Components

We have obtained a fairly large supply of professional CRT video monitors, encased in attractivemetal cabinets with a simulated mahogany finish. We do not know the bandwidth capabilities of these12" (diagonal) units; we have used them, however, to test our 24 x 80 video display board and havefound them perfectly satisfactory. These units were manufactured for one of the largest data com-munications firms in the country. We are not allowed to use the name, and the nameplates had to beremoved. Many of you have probably seen these units functioning. They are equipped with a standardvideo connector and have all the normal controls. They operate at 110 V, 60 cycles.

The units are in reasonably good condition cosmetically, although nearly all of them have a defect\n the plastic anti-glare screen in front of the CRT tube. This screen could be readily removed orreplaced.

We estimate that these units would sell new for between $150 and $200. We are offering themfor sale in both functional and non-functional condition.

12CRT Used, operable*

$59

95

12CRTNF Used, complete,known non-functioning $ 39

"Units have been tested but are sold as-is. They are not rep-resented as reconditioned units and may require minorrepairs or adjustments.

Add the following charges for handling-shipping-insurance:

S2.50 Eastern Time Zone $3 Central $4 Mountain $5 Pacific

MiniMicroMart, Inc. also stocks a completeline of kits for building video display units.

Write for information

MDACP (acoustical) $ 59.95

MDHW (hard wire) 44.95

MDACP-NF (used, suspectnon-functional) 39.95

MDHW-NF (used, suspectnon-functional 24.95

Add $2 for handling-shipping-insurance.

COMMERCIAL MODEMS - LimitedSupply — Acoustical coupler type and directhard wire variety. Both operate at standard BellTelephone frequencies, at up to 300 baud; theyare Bell 103 compatible. They appear to be innew or equal-to-new condition. They are in-tended for communicating from a terminal to atime-share computer. Standard RS232C typeconnectors are supplied.

KEYBOARDS- Limited Supply

Attractive communications style keyboards;some in cases which match the monitor shownabove. They are not ASCII encoded but thecoding could be changed in software withPROMs or by replacing the circuitry with an en-coding I.C. They key switch modules are ofCherry manufacture with an excellent feel. Aschematic and limited modification informationis supplied.

KBN brand new, in case $ 37.95

KBU used, in case 27.95

KBUD used, in case, minorcosmetic defects 22.95

KBUNC used, no case 19.95

Add $2.50 for handling-shipping-insurance.

Write for free 64-page catalog featuring hundreds of items for minicomputer systems.

MiniMicroMart, inc. 1618 James Street, Syracuse, N.Y. 13203 (315)422-4467

Circle 77 on inquiry card.

BYTE February 1978 203

bJnl

no

I

0

Z

m

z

■

(0

>

r□ m

nOJ

to ^

fiZ

on

3!'

Ul

000)

_»I

_i

u(II

so

*4

oo

§ >

S"

03

a.

3'ton

3"0

cS

C/5

m

DOrp n

I O

I >

* 2I o

I ^a Pfl

§: 05

I H

I 0

2>en

H

m

30O

50

6)

m

o

a.n

-i

(ft

O

o

o

"8

°£

of

m 3x o

£i

81

z ~

m<o

90

am

30

Jj-X}-^^- £}> £j>2$- Xj-^>4-^>

O * m r

3zz35ddpgesra

Er h>"I oESn — -n h

05 r 3

^zgO m en"0 O I

O z -i

> E o

S. m

m

r

z>

H

men

r>

>

en

m

cz

n

m

30H>

m h m

-nO30

30 30 is

2 en <

m ffl £E H ffl

o> *H H ftO *- >>n I- CO

O 03O >

03 C

>DC (B

DC

ffl>

enr■<

>Oc-Cen

H

m

a

00

<

cenm

30

-)

o>z■<

03>CD

C 33

en mm i3so m

^5m "2r 3*m m

ft ■<

I-

C H13 en

S3

s>

Z H

r m

"< 33

-a 30

>en30

COCO

30

m

13

r>ftm2mz

o

33

30 V> >

m m z

13 O en

m 3 -«>m lzn

3*3.

ffl m

S|■2

f£ en

r2o-^

ffl 5°

> enen r

HB

2£cE

3 z

3 m

5 -J

r I

ffl 33

§ >3 O

c 2

-*2o

eg

" +

>o

li

33 ©

°2

M>

ffl z

-SO

302

2z

p>£oc

S^5Q

ffl

znoa

m to en as

33 > o ffl

^>0 ^ 30w -0 S fflM H ffl n

■ ffl »

en > SOZH

m <; ,

On"

C H

ffl

33

enC

33 r•<

3030fflZ

H

r*O

oy

•ao

>

30

za

13fflZ

arnz

ra

r>

H

OI

>30>

r

r"fflr

o

c

H"0

c

H

is

HI<

>

r5

a

>

en

en -ffl 230 C

>^l~>

3 fflr°

3^m O

He

H13C

en>

<

>

P

>

03

r

ffl

H

Xffl

oz

ffl•<oz

rn

Oz

HIffl

2>

rn

?5

0

&)a

o

0

s

What's New?

MISCELLANEOUS

Arabic and Farsi Character Sets

i rruivAi*

» u» «• «*

»*i 1-J-i* ,t f

The Intecolor 8001 data terminal isnow available with an Arabic and Farsicharacter set option which allows text inthese languages to be entered from thekeyboard and manipulated in BASIC.The shapes of certain characters areautomatically changed depending ontheir position in a word as is the customin these languages. Prices for the Inte-color systems with the Arabic and Farsioption start below $5000 from Intelli-gent Systems Corporation, 5965 Peach-tree Cors E, Norcross GA 30071, (404)449-5961."

Circle 574 on inquiry card.

Universal Wire Wrap Panels

These wire wrap packaging panelsconsist of 30 columns, with 64 terminalsper column, on 0.001 inch centers. Thelow profile IC socket contacts have0.025 inch square terminations. Avail-able with or without 108 pin connectors,the panels are priced at $1 to $2.50 perIC position from Garry ManufacturingCompany, 1010 jersey Av, New Bruns-wick NJ 08902, (201) S45-2424."

Circle 575 on inquiry card.

204 BYTE February 1978

Circle 19 on inquiry'card.

ifeo?

flti* ^

rftf

•l*8!

i4» «t\«

*%><

i C*

«ft

L*»

!*

«£>'""

>., 5S 71Sa

s^*C*«*,» V«« ««?°.

I^Uf

a**

*tf>'1 *\

$1>

\fc

,1>

690-12

Card Extender has 100 contacts — 50per side on .125 centers — Attachedconnector — is compatible with S-100

Bus Systems $25.00

3690 6.5" 22/44 pin .156 clrs. Ex-lenders $12.00

J»S-»5 MINISCOPE

S289

15n

8803

MOTHER

BOM I) FORS100 BUSMICRO-COMPUTERS

to mcluoes 12Unlilum capacitoll* *5. +12.-l?BuiewMinsu-UlMnuuntmg ipiceri

ponenl ods W/( >cniy

wmwntnt WcjlcniGlOepor, glass txu'fl witcopp«r SPlPer plilid ana"

Mounls n rtcepucus win lOOcotilaPls 12

^

C**^

^

%:*

X*.

/

sailing, . j 3-i' ™«°»c. io 0,5 sec/a/,. 2,

P&,

f

iSasri

of

Price:

529.50

*<

%

to o o =? >

■****

>^

■><t*04

'*4

<C.

JV

7.5

74

SC-5

fe^SB^

I* »>!JJ8, «

50

0/

?°0 fal3*00

iS»a<as""'

UI-1 p»9

1000

m piN

,11.00\oo.

ms » V.. .n «""."!.,■« «» M. . mm""5

t caiin'^8*1

1"«/fec?

3 l-EV61- -.QOLD WIREWRAP SOCK.ETSI25.M SOM|

Phenolic

^A«T NO.

•4P4*08J)(XP169P«.MjxxptPOxy Qlaii

'*"TNO.

64P44052

8<P44-062169P44-062169P84.Q62

BOARD

•042dia holes on0'spacing f0r |C.S

r"9 7"« ,3y .Pansi^1^ ¥

4.6*6.6"

4.5x6.5"4.5 « |7-8.5x17"

PRICE

4 1.70J 2.10J 4.30« 8.39

"*&*■

8-24

p\itionl

^/fe>

.4.5

36823681-2

9.6''

SA0.9T6.5"

l4.5"

,A.5'

4.5"

' S9-*nua\-w-une

Bass

^Lsoaoeo

A/16''

pin

con-SP'

A56

7 96'

510.90

$9.1*

^7.

rp>

*»a,,.M

''""Oh!

%,

X*

' ' ' ■ : L' F* tn IT M ,0 ,or '3"

PRIORITY IONE I ELECTRONICS

10031 Woodley A^e^ Sepulveda CA0 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. Good thru M=r,t,i5.i»78

phOne Orders WelCOme (213) 893-8202 OEM and Institutional inquiries

Send for our lalesl brochure.

D>P PLUGS

3/$1.00JO'$10 on

cWA006« B'l"0.

S'0OB« .8/100

^4011^ 5/1.00

cS«017« ...10°„

Sm«018« .4/100

Si«019« 3/Z0°

r«4020AE .1.00

CCM«022« 8/100

CNI4023« ■•■'.3/100

r«4024« 5/1 00„

K«tt .1/100

CcW4030r.E 3/2.00

C«»035« ... 2.00

CW4031« ■ • ■ " ' .2/100

rM4041« ...100

CM4047W- ■■■".4/100CCM4049« " 4/100

w«o»« ...»'100

CM4116« ■

Circle 97 on inquiry card.

BYTE February 1978 205

Classified Ads

FOR SALE: 2708 programmer with prepro-grammed PROM. Plugs into KIM-1 expansionconnector and uses K-1 and K-2. Includes 6530PIA, S95. -5, 12, 26 V power supply, $45. JamesGrina, 1284 Fifield PI. St Paul MN 55108.

WANTED: Manual or timing information (or aBurroughs A560 punch. R Six, 30725 Tennessee,Roseville Ml 48066.

FOR SALE; Minicomputer, Digital EquipmentPDP8-L, 4 K x 12 memory, Teletype IO, withcomplete original documentation, spare parts andmuch software $500. Hewlett-Packard 120Aoscilloscope excellent condition with manual$100. Viatron cassette drive $15. Gary Hansen,POB 1337, Ft Davis TX 79734. (9151 426-3331.

WANTED: Datapoint 2200 processor version 2,used, for reasonable price. Send details by airmail to Carl DuBois, 69 Nasuli, Malay balay,Bukidnon8201 PHILIPPINES.

FOR SALE: BYTE number 1 for $10, BYTEnumbers 2, 3, 4 and 5 for $5 each. These BYTESare now classics. All magazines in mint condition.Will sell any combination. Please send moneyorder to D Mathews, POB 469, Lynden WA98264.

WANTED: BYTE issues, June 1976 to March1977. Evan H Foreman, POB F, Mobile AL 36601.

FOR SALE: Two running bit 483 - 16 K corememory minicomputers and an extra 4 K x 10 corememory (with all drivers and ps). Over 150 com-puter programs, including FORTRAN, timesharingon paper tape (source and object tapes) for the bit483, all LBDs, wire list, some PCB negatives,almost complete set of tested spare PCB for bit,all above only $2500 FOB Phoenix. RalphGreenthal, 5009 E Windsor Av, Phoenix AZ85008.

SWAP: For computer of equal value: Heath kitHW-100 5 band radio, 10 thru 80 meter 180 WSSB/CW transceiver, converted to cover 11 meterCB in addition. AC power supply, speaker consoleand 4 BTV HUSTLER antenna. Perfect condi-tion. Ron Dudeck, 1504 W I St, Ontario CA91762.

FOR SALE: Honeywell 200 computer, tapedrives, line printer, card reader; Dura Mach 10;Bendix G-15; Royal LGP-30. For details sendstamped self-addressed envelope to S Lang, 730Bridge, Apt 7, Davenport IA 52803.

ASSEMBLED SHERE BOARDS FOR SALE:CRT/1, CPU/2, 16 K memory. Contact RichardLikwartz (307) 362-5316.

Readers who have equipment, software or otheritems to buy, sell or swap should 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 BYTE.

Please note that it may take three or fourmonths for an ad to appear in the magazine. ■

WANTED: Issue number 3, BYTE, November1975, in good condition. Vincent M J Sumoski,A6-10 Lehigh Av, Gloucester Hts NJ 08030(609) 456-4298.

WANTED: Back issues of BYTE. Issues 1 thru 10,12 thru 13, Volume 2, Number 2. Good condition.John Berry, 1520 Aberdeen Av, Baton Rouge LA70808.

FOR SALE: IMSAl 4 K EROM board withEROMS. Never used, $350. Associated ElectronicsPROM burner (burns 1702 and 8702 EROMS)with power supply, S260. J Williams, 2415 AnsdelCt, Reston VA 22091.

FOR SALE: TVT-3 Terminal, never used. S95 orbest offer takes. Also, I'm selling an ASCII key-board with MOS encoder, adjustable parity, etc,for $20 "like new." David Tucker, 23681 Marlow,Oak Park Ml 48237. Or call after 4:00 (313)967-3130.

TELEPRINTERS FOR SALE: Model 15 (Baudot)with table, S65; Model 28ASRs. KSRs or ROs(Write); Model 33ASR wilh modem, S675. SomeModel 35 (ASCII) equipment. Parts and supplies(paper, tape, ribbons). Model 33ASR wiringdiagram packet, $5.75; Model 33 copyholders,S14; Model 33 readers and parts (write). SendSASE for complete list. Lawrence R Pfleger,2141 N 52nd St, Milwaukee Wl 53208.

USED COMPUTER TAPE FOR SALE: StandardV:- inch tape, 9 level 1600 bpi on 2400, 1200 and600 foot reels. Came from a large data centerwhich just switched computers. Also have about100 old 2 foot by 2 foot programming boardsplus several boxes of jumper wires. Also four boxesof hardware for raised computer room flooring.Call (904) 575-2183 or write Loren Moltedo,2636-273 Mission Rd, Tallahassee FL 32304.

FOR SALE: ASR-33 Teletype with stand, paperpunch and reader, for data 1610 modem, anddocumentation for all, $775. Russ Tremain, 1324Mission St, Santa Cruz CA 95060. (408) 427-3656.

FOR SALE: Brand new 4 K EROMS, type MM-5204AQ 512 x 8 bit uV erasable, 750 ns, withrubber carriers and data sheets. $6.50 each, or all12 (6144 bytes) for $75. Steven Hain, 40WiishireDr. Sharon MA 02067. (61 7) 784-3374 weeknights.

FOR SALE Tektronix RM15 oscilloscope withinstruction and maintenance manual and newprobe. Asking 160; I am willing to trade for aterminal (any type) or memory. Philip Kaaret,1113 E State St, Ithaca NY 14850. (607) 272-9119.

WANTED: Any or all of the following issues ofHP-65 KEY NOTE, volume 1, numbers 1 thru 5and volume 2, number 1. Also interested in EEPacs 1 and 2 and MATH Pacs 1 and 2 (softwarefor discontinued HP-65). Will pay any reasonableprice. James Damon, 1619 King St, AlexandriaVA 22314.

FOR SALE: First four issues of BYTE (Septemberthru December 1975) in new condition. Best offerover S20. Only highest bidder notified. RobertKindt, 26 Russett Dr, RD =3, Allentown PA18104.

FOR SALE: IMSAl MPU-A board with docu-mentation and Intel 8080 User's Guide, all ICsaresocketed, brand new, carefully assembled andtested, $130. Also four memory boards; twoVector 8 K static, $225 each, two MITS 4 Kdynamic, $100 each and MITS 2 SfO board, $135.For more information call (518) 456-871 7 or sendSASE to Michael Favitta, 4 Sherwood Forest Rd,Albany NY 12203.

FOR SALE OR TRADE: Digital Group PHt-Fassembled interface for cassette storage system.Purchased at $195, never opened or used, guar-anteed brand new. 6400 bps rate, search speed100 inches per second, recording density. 1600FCPI. Test program tape, instruction manual,and board connectors included. First cashier'scheck or money order for $135 takes it. Also,will take best cash offer or trade for scope, DVM,or camera of equal value if not purchased out-right. Let's make a deal! Mark Anglin, 929 MillsRd, Wadsworth OH 44281. Phone: (216) 336-5769.

FOR SALE: Complete IMSAl 8080 System, 22slot motherboard with ten connectors and fan;-TDL 16 K memory board (250 ns); MIO boardwith cables; Processor Technology VDM board;Honeywell keyboard, XAM 100% solid state TVwith video hookup; 2708 PROM Board with soft-ware for loading operating system from cassette.All manuals provided, plus instruction manual onoperation of the complete system. Ready to beplugged in and run. S2500. Programming servicealso available. T Tai, 115 Bonny Ln, CollegevillePA 19426.

FOR SALE; New factory assembled Altair 8800bwith 20 K static programmable memory (1 4 Kboard, 1 16 K board), 88 ACR casseite interface,serial interface, ADM-3A complete cursor controlCRT, Extended BASIC software and all manuals;everything for only $2500 or best offer. Will con-sider selling units separately for best offer. Goingaway to college and must sell system. Please con-tact B Roberts, 505 E 82 St, New York NY 10028.(212) 734-5703.

FOR SALE: Okidata CP 110 printer (prints upto 110 characters per second) with RS-232 tractorfeed, bidirectional printing and onboard self-testelectronics. Less than one year old. New unit costsover $1700. Will sacrifice for S850. You payshipping. Send SASE lor sample oi printout.Write to P Grivas, POB 3153, Walnut Creek CA94598.

FOR SALE: Oliver papertape reader, S75, Poly-morphics VTI 64 video board, S190, IMSAlaudio cassette interface board, S50. Practicallyunused. J Williams, 2415 Ansdel Ct, Reston VA22091.

FOR SALE: MITS 8080a mainframe. Never used,works, and is in good condition. Will sell for$400. Contact Tyrone Throop at 713 ErskineNW, Huntsville AL 35805, or call (205) 837 9246.

FOR SALE: DEC PDP 11/05 runs perfectly, has8 K x 16 core memory. Extra boards, cables,service information, test tapes and documentationincluded. First certified check for $1,500 plusshipping. Gerard C Plasse, 53 Main St, OxfordMA 01540. (617) 987-5588.

FOR SALE: New TEC-9900-SS-U super startersystem kit 16 bit Tl microprocessor, 32 bit IO,hardware multiply and divide, buffered bus, 20 mAor RS232, eight interrupt and sockets. Won atHartford Ham Convention. List S299, first $175takes it. Bunker Ramo keyboard -2200 and videodisplay Model 2217 with self contained PS,schematics and manuals $95. John Keslo, 5 BelvinaCir, Pelham NH 03076. (603) 635-2508.

FOR SALE: SwTPC 6800 Computer with 4 Kprogrammable memory. New and well constructed,100% guaranteed, $250. A Cunningham, 1151Seneca PI, Charlotte NC 2821 0.

TRADE: Amateur radio equipment and testingequipment for an Altair 8800 or Imsai. Send forinformation to Dale Hutchinson, 10818 BremwayDr, Houston TX 77070.

FOR SALE: Altair 8800a with 20 K program-mable memory and ASR 33 Teletype (almostnew), reader, punch, interfaces, fan, manuals,etc, 8 K MITS BASIC on paper tape. Cost almost$4000 new. Works perfectly but want to buildmy own now. Sacrifice this whole quality systemfor $2495, or just $1895 without the Teletype.First cashier's check or money order reserves thispowerful computer and Teletype. Brian J Dowd,DDS, 1770 Century Cir NE, Atlanta GA 30345.

206

BYTE February 1978

S. D. SALES CO

■ AN EMPIRE IND. CO.

P.O. BOX 28810 DALLAS. TEXAS 75228

B ORDER BY PHONE CALL TOLL FREE 1-BOO—527-3460

EXPANDO RAM KIT

8K FOR $151.00

INTERFACE CAPABILITYControl, data and address in-puts utilizes low powerSchottky devices.POWER REOUIREMENTS+ 8VDC 400MA DC+ 18VDC400MADC—18VDC30MADCon board regulation is provid-ed. On board (invisible) refreshis provided with no wait statesor cycle stealing required.MEMORY ACCESS TIMEIS 375ns.Memory Cycle Time is 500ns.

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.PRICES START AT $151. FOR 8K RAM KIT

Add $108.00 for each additional 8K Ram

32K FOR $475.00

MEMORY CAPACITYMEMORY ADDRESSINGMEMORY WRITEPROTECTION8K. 16K, 24K. 32K using Mca-lek MK4115 wilh 8K bound-aries and protection. UtilizesDIP switches. PC board comeswith sockets lor 32K operation.Orders now being accepted.Aliow 6 to 8 weeks tor delivery.

S.D. SALES NEW ^

EXPANDABLE EPROM BOARD

16K or 32K EPROM $49.95 w/out EPROM

Allows 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.

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 real plus feature!), dynamic refresh and NMIavailable, either 2MHZ or 4MHZ operation, quality doublesided plated through PC board; parts plus sockets pricedlor all IC's. *Add $10 extra for Z—80A chip which allows4MHZ operation Z—80 chip with Manual — $39.95

8K LOW 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. 8pos. dip switches for addressselect.

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 RAM operation.

The Whole Works - $79.95

MUSICAL HORN

One tune supplied with each kit. Additional tunes — $6.95each. Special tunes available. Standard tunes now available: —Dixie — Eyes of Texas — On Wisconsin — Yankee DoodleDandy — Notre Dame — Pink Panther — Aggie War Song —Anchors Away — Never on Sunday — Yellow Rose of Texas —Deep in the Heart of Texas — Boomer Sooner — Bridge overRiver Kwal.

CAR & BOAT KIT HOME KIT Special Design

$34.95 $26.90 Case $3.50

Jumbo LED Car Clock Kit

FEATURES:

A. Bowmar Jumbo .5 inch LED array.

B. MOSTEK — 50250 — Super clock chip.

C. 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.50

AC XFMR — $1.50

DIGITAL LED READOUTTHERMOMETER — $29.95

$16.95

Features: Lltronlx dual 1/2" displays.UsesSilicoaix LD131 single chip CMOSA/D converter. Kit includes all neces-sary parts (except case); AC line cordand power supply included. 0-149° F.

6 DIGIT ALARM CLOCK KIT

Features: Litronix dual 1/2" displays, Mostek50250 super clock chip, single I.C. segmentdriver, SCR digit drivers. Kit includes all ne-cessary parts (except case). Xfmr optional.Eliminate the hassle.AC XFMR — S1.50 Case $3.50

5 Digit Countdown UtilityDarkroom Timer Kit

Features: Large LED 1/2" displaysoper. from 0.1 sec. to 59 mln.59.99 sec. 5A-115V. Relay included tocontrol appliances. Operates on 115VAC. Displays can be turned off for totaldarkness while counting. All necessaryparts Included.Special design case $3.75.

6 Digit General Purpose orComputer Timer Kit — $29.95

Features: Large LED1/2" displays, Mostek50397 counter display/driver, counts up to59 minutes, 59.99 seconds with crystal con-trolled 1/100 second accuracy, operates on115V AC or 12V DC supply. All necessaryparts Included. Special design case $3.75.

Bowmar 4 Digit LED Readout ArrayFull V2" Litronix Jumbo DualDigit LED Displays

4 JUMBO .50" DIGITS ON ONE STICK!

WITH COLONS & AM/PM INDICATOR

$3 95

DL722-C.C. DL728-C.C.

DL7218C.A. DL727-C.A.

99c $1.29

NEW COMPETITION CHESS TIME KIT

WITH TWO INDEPENDENTFIVE DIGIT

1/2" LED DISPLAYS

The timers can be used in-dependently or coupled.The timer can be set to 59minutes 59.9 seconds at 0,1intervals. Kit includes allnecessary parts and an at-tractive woodgrain case.

Low Cost Cassette

Interface Kit

$14.95

L.llllllllllllllllllllllr-

$79.95Complete Kit

Features: K.C. standard 2400/1200 Hz, 300 Baud, TTL, I/Ocompatible, phase lock loop. 22 pin connector. Feeds serial datavia microprocessors I/O ports and from cassette tape recorder.$14.95

RAM'S

21L02-5O0NS 6/11.50

21L02-250N5 8/15.95

2114 —4K 14.95

1101A —256 8/S4.00

1103—1K 35

MK4115-8K IS.45

74S200-256 3.95

CPU'S

Z—80 includes manual 29.95

Z—80A includes manual 34.95

8080ACPU6BIT 11.95

8008 CPU 8 BIT 6.95

PROMS

1702A- IK- 1.5us 3.95or 10/35.

2708 - 8K Intel ■ 450ns 14.95

5204 -4K 795

82SI29— 1K 2.50

2708S 8 8K siflnotics 650ns 9.95

COUNTER CHIPS

MK50397 6 Digil elapsed timer 8.95

MK50250 Alarm clock 4.99

MK50380 Alarm chip 2.95

MK50396 6 digit up/down counter 12.95

MK5002 4 digit counter B.95

MK5021 - Cal. chip sq. root 2.50

THERMISTORS

MEPCO — NEW!1.SKOHM

5/n.oo

DISC CAPSFOR BYPASS.01 MFD- 100

VWDC. PC leads.40/S1.

Photocell Asst.We bought almost200K Irom a big USmlg. Three productfamilies:" smallfmedium and dualprioiocells. Perfecifor all light sensi-tive applications.

* 12/51.00

MICA TRIMMER

PC 402 Miniature

1.5 —20P.F.

P.C. Mount

4/S1

TANTALUM CAPS

1 MFD. 20VDC.

P.C. LEADS

16 lor SI.00

BALUM

Used In TV Tuners

Can be rewound

lor Ham Iraq.

6/S1

Originally used indesk lop calcula-tors. Perfect (or usewith LEDandolhertype readouls.AMBER-flforSI.

FLAT PACKIC ASSORT.

FLAT PACK 5400SERIES. SPECIAL

BUY FROM ITT.20 Assorted

Devices lor SI,00

STANDARDCOILSUse in TV Sets. 1.2

uh 5% and 1.5 uh

10%. Your choice

12/S1

TTL ASSORTMENT

Coniainsafilgh

yield of usableparts.

50/S1.50

MICRO-DIP $1.95

New — Series 2300The World's SmallestCoded BCD Dual-ln-LineSwitch! PC Mount2300 02G BCD 1-2-4-82300 12G BCD 1-2-4-8Compliment

ELECTRICALCOIL13TTYPECIDT TYPEC

YOUR CHOICE12/J1

Ideal lor thsexper.12IS1

RESISTORSpeclall

22 Ohm, 1 Walt.Carbon Comp. 10%.Handy value. Paral-lel to make law ohm-age power resistors.Heip! We bought100,000 pieces!% 25 lor II.

2 TRANSISTORAUDIO

ami. W/Specs.6/S1

NEWCAMBION

JACKS

PART * 450-4352

Gold Plated

50/Si

DISC CAP ASST.PC leads. At least10 different values:includes .001, .01,.05 plus Other stan-dard values,no/J 1.00

JOYSTICKS

FOUR 100 K-OHMS

POTSIdeal for pen

electronicgames

$3.95

TRIMMER POTS10K, 20K, 25KOHM. Mini for PCboards.YOUR CHOICE10/S1.

SILICONRECTIFIER

Spadill1N4O07. 1 AMP1000 PIV.

PRIME UNITS107S1.

P.C. LEAD DIODES

1N4l4a/1N914-100/52,00IN4002- IA— 100P1V

40/11.00

STANDARDANT. TER.Used for Anl. Hook-up on all TV Sets.1211

MICROPROCESSORCHIPS

8212-l/Oport 3.50

8214 —P.I.C 12.95

8216 — Non Invert Bus 4.95

8224 — Clock Gsn....! 4.95

8226 — Invert Bus 3.95

PIO tor Z-80 14.95

CTC tor Z-B0 14.95

8228 Sys. Controller 8.20

8251 Prog. comm. Interface 10.95

8255 Prog. perp. Interface 13.50

8820 Dual Line Hecr 1.75

8830 Dual Line Dr 1.75

2513 Char. Gen 7.50

8838 Ouad 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

Z-80 PROGRAMMINGMANUAL

IN DEPTH DETAIL OF

THE Z-80 CPUMICRO-COMPUTER

S.D. Sales Special$9.95

'Choose $1. Free Merchandise From Asterisk Items on each $15 order!

CALL IN YOUR BANKAMER-ICARD (VISAI OR MASTERCHARGE ORDER IN ON OURCONTINENTAL TOLL FREEWATTS LINE:

Texas Residents Call Collect:

214/271-00221-800-527-3460

DEALER INQUIRIES INVITEDI

Zetms - 60 DayMoney Mack Guarantee!

NO COD'S. TEXAS RESIDENTS ADD5% SALES TAX. ADD 5% OF ORDERFOR POSTAGE & HANDLING . OR-DERS UNDER $10. ADD 75c HAND-LING.FOREIGN ORDERS - U. S.FUNDS ONLYI ^

Circle 103 on inquiry card.

BYTE February 1978 207

fleadep Service

To get further information on the products advertised in BYTE, fill out the readerservice card with your name and address. Then circle the appropriate numbers for theadvertisers you select from this list. Add a 13 cent stamp to the card, then drop it in themail. Not only do you gain information, but our advertisers are encouraged to use themarketplace provided by B YTE, bringing you a bigger B YTE.

Inquiry No.

Page No.

Inquiry No.

Page No.

Inquiry No.

Page No.

87 AAA Chicago Computer Center 167

1 Addison-Wesley Publishing 30

2 Alpha Digital 128

3 Anderson Jacobson 67

4 AP Products 125

5 Apple Computer 16, 17, 18

6 Artec Electronics 55

7 Atwood Enterprises 187

8 Beckian Enterprises 187

9 BITS 29, 129, 147, 160, 161, 171

* BYTE Binders 147

* BYTE Bound Volumes 92

* BYTE Index 147

11 Byte Shop, Tustin 141

12 California Applied Technology 147

13 California Industrial 180

14 Canada Systems 130

15 Capital Equipment Brokers 133

16 Carterfone 46

17 Central Data 103

18 CMC Marketing 73

19 Component Sales 204

21 Computer Corner 157

22 Computer Enterprises 140

23 Computer Hardware Store 1 57

24 Computerland 58, 59

25 Computer Machine Service 157

26 Computer Mart of NH 157

27 Computer Mart of NJ 131

28 Computer Mart of Royal Oak Ml 51

29 Computer Place 167

30 Computer Systems Store 157

31 Computer World 105

32 Cox, Roger 147

34 Cromemco 1, 2

35 DaJen 33

16 Dal Data Inc 46

36 Databyte 21

* Data General 57

38 Data Search 132

39 Digital Group 75

40 Digital Micro Systems 136

41 Digital Research 189

42 Digital Systems 7

44 Elcom Enterprises 167

45 Electrolabs 181

46 Electronic Control Technology 132

47 Electronic Systems 191

48 Electronic Warehouse 185

49 Extensys 45

50 CWEngel 134

51 Forethought Products 145

52 Gallagher Research (GRI) 133

53 DC Hayes 1 75

54 Heath CIV, 34

55 Heuristics 97

56 Hobby World 193

57 IMSAI 43

58 Integral Data Systems 63

59 Integrated Circuits Unlimited 195

60 International Data Systems 137

61 Ithaca Audio 134

62 Jade 196,197

63 James 198, 199, CM I

64 Jensen Tools & Alloys 147

65 Logical Services 126

66 Manchester Equipment 20

67 Meca 183

68 Meshna 201

69 Micro Business 78 107

70 Micro Diversions 47

71 Micronics 130

72 Micropolis 60

73 Micropolis 61

74 Microware 24

75 Midwestern Scientific Instruments 143

76 Mikos183

77 Mini Micro Mart 135, 203

78 Mountain Hardware 1 5

79 mpi 129

80 MSD123

81 National Digital Diagnostics 157

82 National Multiplex 139

83 NCC78 151

84 Netronics128

85 Newman Computer Exchange 176

86 North Star Computer 23, 37

* Ohio Scientific Instruments 39, 40, 41

88 OK Machines TooM01

89 Oliver Audio Engineering 51

90 Osborne & Associates 99

91 PAIA49

92 Page Digital 185

93 Parasitic Engineering 53

94 Peripheral Vision 69

* PolyMorphic Systems 31

96 Poly Paks 177

97 Priority I 205

98 Processor Technology 87, 89, 91, 93

99 ROM 149

101 S-100 135

102 Scelbi 13, 121

* Scientific Research 83, 95

103 SD Sales 207

104 Silver State Enterprises 147

105 Smoke Signal Broadcasting 115

106 Software Records 141

107 Solid State Music 5

108 Solid State Sales 175

109 Solid State Time 22

110 Southwest Technical Products CI I

111 Structured Systems 159

112 Summagraphics 127

95 Synchro Sound 113

113 Systemathica 157

114 Tarbell Electronics 11

115 Technical Design Labs 32

116 Technical Systems Consultants 918 TEI 73

119 TLF 71

120 Touchstone 147

121 Trace Electronics 119

122 Vamp 157

123 Vector Graphic 65

* Vista Computing 78, 79

124 West Coast Computer Faire 153, 155

125 Wintek131

126 Worldwide Electronics 147

127 Xitex 145

128 Xybek136

129 Yestronics 157

* Reader Service inquiries not solicited. Correspond directly with company.

PYIE'c Liftiof Mtniitr- fctx

Article No.

ARTICLE

1 Ciarcia: A Penny Pinching Address State Analyzer

2 Wilber: CIE Net: A Network of Community Information Exchanges

3 Bunce-Schwartz: Some Musings on Boolean Algebra

4 Bober: Taking the First Step

5 Smith: Simulation of Motion: Extended Objects, Applications for Boating

6 Webster-Young: Add a $3 Light Pen to Your Video Display

7 Fylstra: SWEETS for KIM

8 Steinwedel: Personal Computers in a Distributed Communications Network

9 Kent: The Brains of Men and Machines: How the Brain Controls Output

10 Allen: A Minifloppy Interface

11 McGath: Programming Entomology

12 Grappel: A Simple Digital Filter

PAGE

6

14

25

35

42

52

62

80

84

114

162

168

Tightly Clustered

November's BOMB analysis provided two tight"clusters" of ratings in readers' reactions. The firstcluster was a tie for first place between SteveCiarcia's "Memory Mapped 10," page 10, andBurt Hashizume's tutorial on "Floating PointArithmetic," page 76. Each will receive a $100bonus check for placing 1.6 standard deviationsabove the mean. The- second place cluster con-sisted of two complete computer plans: "Kom-puutar" by David Brader, page 94, and "Buildinga Computer From Scratch" by Hilary Jones, page80. Each will receive a $50 bonus check for placing0.7 standard deviations above the mean in readers'preferences. For November's voting, the standarddeviation (a) was 17% of the mean of 14 articles.Fill out your BOMB card with ratings from 0 to 10for each article, plus any uncensored commentsyou have for this direct line to the editor's desk.*

208 BYTE February 1978

im-pak

One-Stop

electronic components

Component Center

QUALITY PRODUCTS

TTL

LINEAR

RESISTORS

SWITCHES

LM301V

LM340T 15

7B15I

ASST 1

ASST 5

SPST 4 Mi Hid SPOT puih button

'•c

LM307V

LM555V

ASST 2

ASST 6

SPST 8 IU dip SPDT nus» buiiii"

LM309K

LM556N

ASST 3

ASST 1

SPOT ,.,i oil 0" SPST puih button

LM311V

LM567V

ASST 4

loiiiK- SPST nmh butiun

74 !Q

LM320K 5

79051 LM723N

7420

74122

LM320T5

79051 LM739N

7430

/432

74123

MI2S 'DVR093.

LM32QT12I7912I LMM1VLM320T 15(79151 LM/4JN

CAPACITORS

DPOT ™>nll on DPDT minowiin

m«7

741GT 'DM9316)

LM34UT S

Aluminum tlectrolytic

7*76

74 192

MICROPROCESSOR

4 7 m til 50V10—l<1 50V

220mi,i 50V

■WOmM 50V

SOCKETS

h«W

.' so

22ml.1 50V

IQQ&mfti 25V

Mmn lawpx.i.ie 16pm wife neap

lGp.Mlowpiiil.lt' 24 pm wire wrnn

Low

Power TTL Schottky

U212

210221L02

40p.Mlowp.ol.il' TO-3Socket

A¥ 5-1UK

DMBB35N

'4LS30

MLS136

291372140

NBT97

1 OOP* 50'.

01 ml, 150V

Display LEDS Discrete

74LS32

74LS138

6.7,1ol matt,. GOO com aModc

74LS74'4|_S'5

'4LS1 7574LS367

C/MOS

1N7SIIN4733

1N4734

DIODES

IN4148MN9IN4001IN4004IN40O7MDA 980 3

,4,

330pl 50V

4 70nl 50V

04 7mi<i 50VImtd 50V

3C0cnm calMotlc 200LEO Lamp ,vd

CONNECTORS

40014010

Dipped

Tantalum

06 25P Plun DB26S Socket

4011

4049

TRANSISTORS

22mtu35V

3 3mlo 25V

4016

4051

C106B1

2N3055

33mM 35V47mli)35V

4 7mlf[ 25VG Smt.l ?5V

DATA BOOKS"

.'M290/*

L'N.i'JOl.

GSml.i 35V

4023

4081

'.'..jf ro'.'j

7N5129

Imtil 35V

I5ml.i 25V

4024

4511

MJE30&8

2NS139

i 5-"t,t 35V

33ml,i 25V

'JIM PAK PfOdUmt only

A component product line developed for the independent dealer. Guaranteed, nationally advertised products. CompleteJIM-PAK program includes national advertising, direct mail programs, store display racks, stock rotation plan and returnpolicy. For dealer information, write or call JIM-PAK, 1021 Howard Avenue, San Carlos, CA 94070 (415) 592-8097.

•••••••••••••••••••••••••••••••••••

SEE YOUR LOCAL J^ DEALER TODAY...

ALABAMA

Mobile

ARIZONA

Fountain Hills

CALIFORNIA

BellflowerBerkeleyFon tan aL ong BeachMon tereyPalo AltoPasadenaSacramentoSac ram en toSan CarlosSan FranciscoSan JoseSunnyvaleVailejoWalnut Creek

CANADA

Alberta (Calgary)COLORADO

Aurora

Steamboat SpringsCONNECTICUT

BridgeportFLORIDA

Lakeland

Orlando

Tampa

TampaFRANCE

ParisGEORGIA

A tlan taHAWAII

Aiea

HonoluluIDAHO

Idaho FallsILLINOIS

Evanston

Groveland

Lafayette Radio ElectronicsP& C Communications

Earl's Hobby Shop

Al Lasher Electronics

Fontana Electronics

Scott Radio Supply

Zackit

Zack Electronics

Dow Radio Inc.

The Radio Place

Zackit

J&H Outlet Store

Zack Electronics

Quement Electronics

Sunnyvale Electronics

Zackit

Byte Shop Computer Store

The Computer Shop

Com Co ElectronicsNorm's TV & Electronics

Computer World

Lakeland Specialty Electronics

Altair Computer Center of Orlando

AMF Electronics

Microcomputer Systems

Computer Boutique

Atlanta Computer Mart

Delcoms Hawaiiintegrated Circuit Supply

Audiotronics

Itty Bitty Machine Co.Moyer Electronics

ILLINOIS (Cont'd)

Mount Prospect

Oak ParkINDIANA

East Chicago

HammondKENTUCKY

LexingtonLOUISIANA

Baton RougeMARYLAND

Baltimore

Baltimore

Rock ville

Tows onMASSACHUSETTS

Medford

North Adams

WalthamMICHIGAN

Grand Rapids

LansingMINNESOTA

Duluth

EaganMISSOURI

Park villeMONTANA

BillingsNEBRASKA

L incoln

OmahaNEVADA

Las VegasNEW JERSEY

Cherry Hill

Hoboken

Pompion Lakes

RamseyNEW YORK

Albany

New York

New York

Troy

White PlainsNORTH CAROLINA

Raleigh

TriState ElectronicsSpectronics

Aero ElectronicsQuantum Computer Works

Radio-Electronic Equipment Co.

Davis Electronics Supply

Computer Workshop ol Baltimore

Everything Electronic

Computer Workshop

Computers, Etc.

Tufts Electronics

Electronics Supply Center

Computer Mart Inc.

Micro Computer WorldFulton Radio Supply

Northwest Radio of DuluthDacom Amateur Radio Center

Computer Workshop of Kansas City

Con ley Radio Supply

Altair Computer CenterOmaha Computer Store

Century 23

Computer Systems Unlimited

Hoboken Computer Works

Computer Corner

of New Jersey

Typetronic Computer Store

Fort Orange Electronics

The Computer Stores Inc.

Computer Mart of New York

Trojan Electronics

The Computer Corner

Byte Shop of Raleigh

OHIO

BucyrusCincinnatiDaytonReynoldsburgSteubenvilleOKLAHOMA

Guy mon

Oklahoma CityOREGON

Beaver ton

Coos Bay

On tarioPANAMA

Panama CityPENNSYLVANIA

Hersbey

Murraysvilte

RHODE ISLAND

Cranston

PawtucketSOUTH CAROLINA

No. CharlestonTENNESSEE

Knox ville

Memphis

Oak RidgeTEXAS

Dallas

Houston

Houston

San AntonioVIRGINIA

Alexandria

Alexandria

Richmond

Springfield

Virginia BeachWASHINGTONBeilevueLongview

PascoSpokaneWEST VIRGINIA

Morgan townMorgan town

Mead Electronics

Digital Design

Altair Computer Center

Universal Amateur Radio

Hosfell Electronics

Sound ServiceBits, Bytes & Micros

Altair Computer CenterHerrick ElectronixMiller Electronics

Microcomputer Systems Inc.Computer Workshop

of Pittsburgh

Jabbour Electronics CityJabbour Electronics City

Technical Services Inc.

Byte Shop

Sere-Rose & Spencer Electronics

Computer Denn

Computer Shops Inc.

Altair Computer Center

Interactive Computers

Sherman Electronics Supply

Computer Hardware Store

Computers Plus

Computers- To-Go

Computer Workshop

of North Virginia

Heatbkit Electronics Center

Altair Computer Center

Progress Electronics

Riverview Electronics

Personal Computers

The Computer CornerElectro Distributing Co.

Circle 63 on inquiry card.

the world's

most powerful

microcomputer

comes home

11 ?■ iiiiiiii

Be sure to use coupon

on page 34 of thismagazine to order yourFREE Heathkit Catalog!

FREE

Computer hobbyists have always

wanted the pow

sional machines

But they've had

to settle tor less.

Professional

machines were

too expensive.

Not anymore.

Now there's the

Heathkit HI 1.

Professional performance, kit price.

The HU uses Digital Equipment Cor-poration's 16-bit LSI-11 CPU. Exactly thesame CPU found in the famous DECPDP-11-probably the most popularcommercial and industrial computer inthe world. So now a low-cost kit givesyou the speed, power and throughput■rf. the world's most popular professionalcomputer.

Software and support. As an Hllowner, you have access to an incrediblerange of software — editor, relocatableassembler, linker, absolute loader, debugprogram, I/O executive program, dumproutines, BASIC and FOCAL. And, byjoining the DEC user's group (DECUS).you can have access to one of the largestsoftware libraries in the world. Andthere's more to come. Much more.Of course, the Hll executes the power-ful PDP 11/40 instruction set which in-cludes over 400 commands. And the fullyassembled KD-11F CPU board includes4K x 16 bits of memory. The backplaneaccepts up to six additional modules(memory, serial and parallel I/O, etc.)Heath will soon introduce a dual floppywith a disk operating system to take

full advantage of 'he Hll's power. Andthe Hll is fully compatible with all DECLSI-11 accessories.Heath documentation is second to none.

You get illustrated step-by-step instruc-tions on how to build the kit, thoroughexplanations of the software and compre-hensive operating instructions. If youwant to see for yourself, we'll send youthe entire manual set (#HM-1100) forjust $25. And you can apply the cost tothe price of the computer.With the Heathkit Hll, you can enjoypower, speed, versatility and potentialno 8-bit machine can match. And theHll costs little more than lessercomputers —just $1295*

Don't settle for less than the best. Aclose look in the latest Heathkit catalogwill convince you that the Hll is thebest home computer you can buy.

DEC. DECUS. ^l)Pand FOCAL aieregistered trade-marks of DigitalEquipment Corp.•M-Jl order. FOB.iioutor. Harbor,Michigan. Retailprice slightlyhigher.

Prices andspecificationssubject to changevithout no'lce.

System Engineeredfor Personal Computing

Circle 54 on inquiry card.