Byte Magazine Volume 03 Number 01 - The Brains of Men and Machines

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

Your computer system needn't cost a fortune.

Some computer kits include little more than a mother board and a front panel, and you pay extra for everything else you need to ■ make an operating computer.

SWTPC doesn't do it that way, so you can get your Southwest Technical 6800 Computer up and running at a bargain cost compared with most other systems. It comes complete at $395 with features that cost you extra with many other systems.

The Extras You Get

These extras include 4K of random-access memory, a mini-operating system in read-only memory, and a serial control interface. They give you 1) a considerable amount of working memory for your programs, 2) capability through the minioperating system to simply turn on power and enter programs without having to first load in a bootstrap loader, and 3) an interface for connecting a terminal and beginning to talk with your computer immediately.

Low-Cost Add-Ons

Now that you have a working computer, you'll probably want to add at least two features soon, more memory and interfaces for needed accessory equipment. Memory for our 6800 is another bargain. You can get 4K memory boards for just $100 and 8K boards for only $250.

Our interfaces cost little compared with many other systems.

For just $35 you can add either a serial or parallel interface board. (And you won't have to buy several interfaces on a costly board to get just the one you want.)

Peripheral Bargains

Your computer is no good without at least a terminal for entering data and viewing computer output, and you will probably want a good method of storing programs and data.

We offer you a line of high-quality peripherals at low prices. (You can prove this by just comparing prices.)

Buy our CT-64 Video Terminal for only $325 and our CT-VM Monitor with matching cover for $175. Our MF-68 Dual Minifloppy costs just $995, complete with Disk BASIC and a disk operating system. For cassette storage our AC-30 Cassette Interface gives simple control for one or two cassette recorders.

You can get inexpensive hard copy with our PR-40 Alphanumeric Line Printer.

We back up the 6800 system with low-cost software, including 4K and 8K BASIC.

Compare the value you get with our computer and peripherals before you buy. We think you'll find that SWTPC gives you more for your money in every way.

Enclosed is:

$995 for the Dual Minifloppy

$325 for the CT-64 Terminal

$175 for the CT-VM Monitor

$395 for the 4K 6800 Computer

Name

City ,

$250 for the PR-40 Line Printer $79.50 for AC-30 Cassette Interface

Or BAC # Exp. Date_

_ Or MC # Exp. Date.

. Address .State

-Zip.

EttTttS

Southwest Technical Products Corp.

219 W. Rhapsody, San Antonio, Texas 78216 London: Southwest Technical Products Co., Ltd. Tokyo: Southwest Technical Products Corp/Japan

. -f.irclp 102 on inquiry card.

You can now have the industry's

finest microcomputer with that all-important disk drive

YOU CAN GET THAT

ALL-IMPORTANT SOFTWARE,

TOO

Loading your programs and files will take you only a few seconds with the new Cromemco Z-2D computer.

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

Diskettes will also store your programs inexpensively—much more so than with ROMs. And ever so much more conveniently than with cassettes or paper tape.

The Z-2D itself is our fast, rugged, professional-grade Z-2 computer equipped with disk drive and controller. You can get the Z-2D with either single or dual drives (dual shown in photo).

CROMEMCO HAS THE SOFTWARE

You can rely on this: Cromemco is committed to supplying quality software support.

For example, here's what's now available for our Z-2D users: CROMEMCO FORTRAN IV COMPILER: a well-developed and powerful FORTRAN that's ideal for scientific use. Produces optimized, relocatable Z-80 object code. CROMEMCO 16K DISK BASIC: a powerful pre-compiling interpreter with 14-digit precision and powerful I/O handling capabilities. Particularly suited to business applications. CROMEMCO Z-80 ASSEMBLER: a macro-assembler that produces relocatable object code. Uses standard Z-80 mnemonics.

The professionalgrade microcomputer for professionals

ADVANCED CONTROLLER CARD

The new Z-2D is a professional system that gives you professional performance.

In the Z-2D you get our wellknown 4-MHz CPU card, the proven Z-2 chassis with 21-slot motherboard and 30-amp power supply that can handle 21 cards and dual floppy drives with ease.

Then there's our new disk controller card with special features:

• Capability to handle up to 4 disk drives

• A disk bootstrap Monitor in a 1K 2708 PROM

• An RS-232 serial interface for interfacing your CRT terminal or teletype

• LSI disk controller circuitry

Z-2 USERS:

Your Z-2 was designed with the future in mind. It can be easily retrofitted with everything needed to convert to a Z-2D. Only $935 kit; or $1135 for assembled retrofit package.

Circle 30 on inquiry card

Q

Cromemco

incorporated Specialists in computers and peripherals 2400 CHARLESTON RD., MOUNTAIN VIEW, CA 94043

Shown with optional bench cabinet

We're able to put all of this including a UART for the CRT interface on just one card because we've taken the forward step of using LSI controller circuitry.

STORE/FACTORY

Contact your computer store or Cromemco factory now about the Z-2D. It's a real workhorse that you can put to professional or OEM use now. 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-format soft-sectored mini diskettes)

16K BASIC (Model FDB-S) $95

FORTRAN IV (Model FDF-S) $95

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

(415) 964-7400

BYTE January 1978

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

Control up to four 8" drives

Control up to three 5" drives

CRT terminal interface

Function switches

LSI circuitry

1 kilobyte PROM

IJ1IJI1IIIIJ1U1I11UX1" ilium"

Here's a new disk controller and disk drive combination that will set you up for truly powerful disk storage.

The new controller is extremely versatile. You can use it with either our new 5" single disk drive or our 8" dual disk drive. In fact, the controller will interface up to three 5" or four 8" drives.

That means you can have enormous disk storage since the new controller puts 92 kilobytes on each side of a 5" diskette and 256 kilobytes on an 8" diskette. Recording is in softsectored IBM format.

FORTRAN IV AND MORE

You can get still more Cromemco disk operation aids. For example, we also offer FORTRAN IV for our computer users.

And as in so many things, we are the first manufacturer in the field to offer this advanced program for the Z-80 hP.

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

KEYBOARD CONTROL

The new Model 4FDC disk controller (supplied in our Z-2D) is for our Z-2 computer or any S-100 bus computer using our Z-80 CPU card.

You should also know about these other capabilities of the new controller: • Its PROM-resident Disk Operating

System (RDOS) gives you key

2 BYTE January 1978

Single 5" disk drive

Dual 8" disk drive

board control of your disk drive and also includes a bootstrap to load our powerful CDOS disk operating system supplied on all Cromemco diskettes.

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

• It has 5 programmable interval timers.

• It has vectored interrupts.

• And it has an 8-bit parallel input port and an 8-bit parallel output port.

LOOK TO THE FUTURE

This new disk controller equips you for the future as well as for now. Not only can you now have very large storage, but the features of the controller and the standard IBM format protect you from early obsolescence.

STORES/FACTORY

This new card and the disk drives are in production and available.

So contact your computer store or the factory today and you can have the power of FORTRAN IV and a large memory right away.

PRICES

Model 4FDC-K Disk Controller kit $ 395

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

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

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

SOFTWARE

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

5" 8"

Diskette Diskette Model 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 FDC-S FDC-L $95

r"3 Cromemco

I ^ incorporated

a t Specialists in computers and peripherals

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

Circle 30 on inquiry card.

In the Queue

EUI January 1978 Volume 3 Number 1

:\

37

58

94

161

11

27

84

86

108

122

144

150

162

4

6

36

120

136, 160 139 165 168 190 192 192

Foreground

ADD MORE ZING TO THE COCKTAIL

Hardware—Ciarcia A FLOPPY DISK INTERFACE

Hardware—Allen THE WATERLOO RF MODULATOR

Hacks—Banks MOUNTING A PAPER TAPE READER

Hardware—Bryan t

Background

THE BRAINS OF MEN AND MACHINES: Biological Models for Robotics

Robotics—Kent THE IRS AND THE COMPUTER ENTREPRENEUR

Taxes and Business—Hughes THE MOTOROLA 6800 INSTRUCTION SET

Software—Jessop A USER'S REACTION TO THE SOL-10 COMPUTER

Product Review—Bumpous THE SECOND WORLD COMPUTER CHESS CHAMPIONSHIPS

Perfect Information Games—Jennings STRUCTURED PROGRAMMING WITH WARNIER-ORR DIAGRAMS: Part 2

Software—Higgins SIMULATION OF MOTION: Model Rockets and Other Flying Objects

Modelling—Sm ith A NOVICE'S EYE ON COMPUTER ARITHMETIC

Numbers—Ledder NOTES ON BRINGING UP A MICROCOMPUTER

Hardware—L ibes

Nucleus

In This BYTE

What Is This Phenomenon Personal Computing?

Letters

BYTE's Bits

Book Reviews

Clubs, Newsletters

Technical Forum: A Note on Advances in Technology

What's New?

Classified Ads

BOMB

Reader Service

BYTE is published monthly by BYTE Publications Inc. 70 Main St, Peterborough NH 03458 Address all mail except subscriptions to above address: phore I603I 924-7217 Address all editorial correspondence to the editor at the above address Unacceptable manuscripts will be returned if accompanied bv sufficient first class postage Not responsible for lost manuscripts or photos Opinions expressed bv 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 Peterborough NH 03458 and at additional mailing offices-USPS Publication No. 102410. Canadian second class registration No. 9321. Subscriptions are S15 for one year. S27 for two years, and S39 for three years in the USA and its possessions. In Canada and Mexico, SI 7.50 lor one year. S32 for two vears, and S46.50 for three years. S25 for a one year subscription bv surface mail worldwide. Air delivery to selected areas at additional rates available upon request. S25 for a one yea- subscription bv air delivery to Eutope. Single copy price is S2 00 in the USA and its possessions, S2.40 in Canada and Mexico. S3.50 in Europe, and S4 00 elsewhere. Foreign subscriptions and sales should be remitted in United States funds, d in United States of America. Entire contents copyright '..'1977 bv BYTE Publications Inc All rights reserved.

PUBLISHER

Virginia Peschke

EDITOR IN CHIEF

Carl T Helmcrs |r

PRODUCTION MANAGER

Judith Havcy

ADVERTISING DIRECTOR

Debra Buudrieau

CIRCULATION MANAGER

Gregory Spit/fadcn

EDITORS

Christopher P Morgan

Blaise tt Liffick

ASSISTANT PUBLISHER

Elizabeth Alpaugh

COOP EDITOR

Scott Murrow

PRODUCTION EDITORS

Karen Gregory

Nancy Salmon

ADVERTISING

Noieen Bardslcy

PRODUCTION ASSISTANT

Cheryl Hurd

CIRCULATION ASSISTANT

Pamela R Heaslip

DEALER SALES

Ginnie F Boudrieau

TRAFFIC MANAGER

Edmund D Kelly |r

ART

Wai Chin Li

Dorothy Shamonsky

Ellen Shamonsky

BOOK PUBLISHER

Christopher E Smith

CONVENTION SUPERVISOR

Elizabeth Alpaugh

EXECUTIVE SECRETARIES

JillCallilian

Patricia Clark

Laura A Hanson

RECEPTIONIST

Jacqueline Earnshaw

CLUBS AND NEWSLETTERS

David Wo/mak

DRAFTING

Douglas Glen

Stephen Kruse

Lynn Malo

Bill Morello

Dorothy Shamonsky

TYPOGRAPHY

Custom Marketing Resources Inc

Goodway Graphics

PHOTOGRAPHY

Ed Crabtree

PRINTING

Rumford Press

NEW PRODUCTS EDITOR

Daniel Fyistra

ASSOCIATES

Walter Banks

Steve Ciarcia

David Fslslra

Portia Isaacson

BITS INC

Floyd W Rehlins

Medellin Stephens

Jim Travisano Ronald Wiuke

ADVERTISING SALES

SOUTHERN CALIFORNIA:

Buckley/Boris Associates Inc

912 South Barringlon

Suite 202

Los Angeles CA 900-19

(213)826-4621

NORTHERN CALIFORNIA:

Jules E Thompson Inc

Hearst Building

Suite I 1 II

San Francisco CA 94103

(415) 362-8547

BYTE January 1978

In This

E1TE

Page 144

o

TJ

The compleat robotics experimenter must have a thorough background in biological models of behavior and control, as noted in November's editorial. With this issue, Ernest W Kent begins the first installment of a four part series with The Brains of Men and Machines, Part 1: Biological Models for Robotics. Dr Kent has provided readers with a thoroughly understandable introduction to a number of concepts essential to an understanding of the human brain and its simulation in robotic mechanisms. (Page 11)

Can the experimenter who runs a small computer business deduct the price of additional memory for the computer? What kind of tax records should the small business keep? If you've been thinking of opening your own small computer business, read Elizabeth M Hughes' The IRS and the Computer Entrepreneur for the answers to these and many more tax questions. (Page 27)

Last month, Steve Ciarcia described an inexpensive 8 channel digital voltmeter driven by a microcomputer. Read Add More Zing to the Cocktail in this month's Ciarcia's Circuit Cellar and find out how to add multiple ranges, AC and DC input capability and overvoltage protection to the basic circuit. (Page 37)

When designing a floppy disk interface, the experimenter is faced with the continuous battle of hardware

36 87° = &AMA

40M/SEC

.f=l i=l

o o

o

U TJ

u

versus software tradeoffs. David M Allen's A Floppy Disk Interface balances the two extremes and shows you how to get a floppy disk system up and running. (Page 58)

Paul M Jessop explores the functional organization of The Motorola 6800 Instruction Set showing Two Programming Points of View. (Page 84)

Robert Bumpous provides A User's Reaction to the SOL-10 Computer

in this issue. Learn a bit more about the Processor Technology computer's design and assembly procedures in Robert's article. (Page 86)

In what is probably the world's simplest such design, Walter Banks describes a neat hack, The Waterloo RF Modulator, used to convey digitally generated video information from a computer to a standard television set. (Page 94)

llhifc'ill Hi $ H 11 ■11 «2^

l§ ±. HP Hi

#

"H

if

Page 108

On a battlefield for (intellectual) titans, the forces of black versus white met recently in Toronto. Who won? It was the artificial intelligence experimenters, who demonstrated their nonartificial intelligence in constructing the programs entered in the Second World Computer Chess Championships, held last August during the IFIPS show. 16 programs met in logical conflict, with CHESS 4.6 conquering all to win the current title. Turn to Peter Jennings' article for a summary of the action. (Page 108)

In Structured Programming with Warnier-Orr Diagrams, Part 2: Coding the Program, David A Higgins uses the program design completed in part 1 and demonstrates how to efficiently turn a diagram into a working BASIC program. (Page 122)

Continuing the discussion of motion calculated with a personal computer, Stephen Smith's article Simulation of Motion: Model Rockets and Other Flying Objects turns to the need for simulating angular degrees of freedom and components of force along different directions. (Page 144)

Are you uncertain as to how basic arithmetic operations such as multiplication and division are performed on your computer? If so, Wayne H Ledder's article A Novice's Eye on Computer Arithmetic may help you out. (Page 150)

Using the RAECO paper tape reader requires a mounting. See Jack Bryant's article on Mounting a Paper Tape Reader to see how this unit can be installed in an SwTPC 6800's cabinet. (Page 161)

Building a homebrew system based on one of the many microprocessor chips available today is an interesting challenge. In Notes on Bringing up a Microcomputer, Sol Libes provides some general background information on the process of wiring and checking out a microcomputer based system.

(Page 162)

BYTE January 1978

TARBELL SETS STANDARDS

For Hobbyists and Systems Developers

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

TARBELL CASSETTE INTERFACE

• Plugs directly into your IMSAI or ALT AIR *

• 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 or ALT AIR* and handles up to 4 standard single drives in daisychain.

• Operates at standard 250K bits per second on normal disc format capacity of 243K bytes.

• Works with modified CP/M Operating System and BASIC-E Compiler.

• Hardware includes 4 extra IC slots, built-in phantom bootstrap and on-board crystal clock. Uses WD 1771 LSI Chip.

• 6-month warranty and extensive documentation.

• PRICE: Kit $190 Assembled $265

my* if in M„ i

«^i*jrfiiftaanj, l£>-*4 ^'

Compatible Disc Drives

Ask about our disc drives priced as low as

$525.

1 i I

.-■ '

KBIflMHIKIHt'l+MULl

■ Mint—wi

0 ■

L—U

I'liiiiiiiiiiiiiiiiS

U«M**f«ttttffM

IHtf*«tfftf*M»t«tf«*»***tJ m

■■ill

iiiilllfflr

- Gold plated edge pins 1 AKtSfcLL 1 • Takes 33 14-pin ICs or

DROTOTYPF I PPl • Mix 40-pin, 18-pin, 16-pin and

™W1W1 i**-- |iiimiiiwiiiiiiiiiiyiiiiiinTWiBiiimniBiiiiiiiiiiiiii'iiiiiiiiiiiiiiiiiiiiiiiid 14-pin io

BOARD ll[lllllllllllllllllllllllllll[lllllltlIllllllllllininillllllllllllllllllllllllllltllllllllB * Location for 5 volt regulator

Model 1010 gllllllllllllllllillllllllllllltlllllllllltlMIMIIlitllllllltllM^Bffl * Suitable for solder and wire wrap

ALTAIR/IMSAI compatible Price: $28.00

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

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

20620 South Leapwood Avenue, Suite P Carson, California 90746

(213) 538-4251

Circle 105 on inquiry card.

BYTE January 1978

Editorial

What Is This Phenomenon Personal Computing?

By Carl Helmers

Articles Policy

BYTL is continually seeking quality manuscripts written by individuals who are applying personal computer systems, designing such systems, ar who have knowledge which will prove useful 10 our readers. For a more formal description of procedures and requirements, potential authors should send a selfaddressed, stamped envelope to BYTE Authors' Guide, 70 Main St, Peterborough NH 03458.

Articles which are accepted are purchased with a rate of up to $50 per magazine page, based on technical quality and suitability for BYTE's readership. Each month, the authors of the two leading articles in the reader poll {BYTE's Ongoing Monitor Box or "BOMB") are presented with bonus checks of $100 and $50. Unsolicited materials should be accompanied by full name and address, as well as return postage.*

People newly acquainted with the personal computer concept often are baffled by the idea. What does it mean to have and use a personal computer? Why are such computers all of a sudden becoming a prominent technological feature of our culture? In posing these questions and writing a short essay on the subject, a key purpose is to provide a brief overview and summary of personal computing for our newer readers, an exercise which it is necessary to perform from time to time. But the same exercise helps me to review and get a perspective on what is happening, and will, I hope, serve readers familiar with the field as an opportunity for reflection upon the marketplace as it is seen today.

The very fact that I even have to take into account the existence of new readers is a revealing statement about the nature of the growth which has occurred in this field: when BYTE magazine was started by me, my partner Virginia Peschke and several associates in mid-1975, the starting point was essentially zero—the 250-odd subscribers to a newsletter technical publication I had been publishing for about a year. Now, as the 29th monthly issue of BYTE magazine goes to press, the November 1977 issue has just been delivered to over 105,000 people by subscription or sales in over 600 computer stores. As nearly as we can tell, we are still in the exponential growth stage of our circulation and have by no means saturated the prospects for interested readers. But this is only a reflection upon the industry as a whole. We could not support such a large circulation if it weren't for the fact that there is a large and active group of manufacturers who are producing and selling the products which our readers need and use as personal computing oriented people. Why?

Ours is a culture of the mind. Western

So What Is the Current Personal Computer User Like?

Scheduled for mailing January 15 1978 is a new BYTE reader survey. Approximately 5000 readers selected at random from our subscription mailing list in December will receive a detailed questionnaire concerning numerous aspects of personal computer use and enjoyment, as well as normal demographic data. A summary of the statistics from this survery will be published in B YTE after the analysis is completed (as was done last year). If your name is picked, we'd appreciate your response to the survey, in the interest of creating an accurate statistical record of what is happening and has happened in this field.

civilization's most prominent characteristic is that it salutes the individual thinking being (and indeed its generalizations to any sentient beings which may exist in the universe). The individual human mind is the temple from which all the appurtenances of modern civilization spring. Our market oriented civilization, more than any other, tends to recognize and promote the products of the individual thinker, whether engineer, novelist, scientist, manager, student, capitalist, lawyer or a host of other specializations. To think is the standard human mode of operation, a part of the built-in equipment which has evolved in the species Homo sapiens.

The fact that humans have personal values and resultant emotions and feelings is in no way inconsistent with this description of humanity. If I know joy at some aspect of living, the fact that I can perceive such is often enhanced, if not made possible, by the operation of my mind. If I know sorrow at some other aspect of living, the act of knowing is made possible by the operation of my mind. And of course, I generalize this: I am not the only active being on this planet. Every one of the readers of this essay is a unique variation on a similar theme. Into this milieu of a culture which celebrates and promotes individual achievement as a way of life springs an achievement of numerous individuals working in concert, the modern large scale integrated circuit, the computer on a chip. The result is today's real life version of what might have been a science fiction scenario in past decades.

The human mind from which this achievement springs is a portable, fairly efficient, and quite remarkable thinking machine, a product of countless millennia of evolution where the guiding standard has been success as an organism in a complicated environment. The human mind is intricately involved with the phenomenon which is the computer as we know it in this culture: the computer is a genuine manifestation of a hard to define science fiction concept, the "thought amplifier." As a practical reality, it involves no technological extensions of biology, no mystical force fields, not one iota of built-in enmity for humans. The computer in all its uses is nothing more than an extension of the mind of its user. The programs which we all put into our computers are crystallizations of our own thought processes in a form which can be

Continued on page 142

BYTE lanuary 1978

HORIZQ

THE COMPLETE CO

A '4

LookToThe North Star HORIZON Computer.

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

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

WHAT ABOUT PERFORMANCE?

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

AND SOFTWARE, TOO

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

EXPAND YOUR HORIZON

Also available—Hardware floating point board (FPB); additional 16K memory boards with parity option. Add a second disk drive and you have HORIZON-2. Economical serial and parallel I/O ports may be installed on the motherboard. Many widely available S-100 bus peripheral boards can be added to HORIZON.

QUALITY AT THE RIGHT PRICE

HORIZON processor board, RAM, FPB and MICRO DISK SYSTEM can be bought separately for either Z80 or 8080 S-100 bus systems.

HORIZON-1 $1599 kit; $1899 assembled.

HORIZON-2 $1999 kit; $2349 assembled.

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

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

Circle 78 on inquiry card.

North Star * Computers

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

BYTL January 1978

Introducing Apple II.

■

■

w^sSl«»«^lJa»?^rf,U£,

Circle 4 on inquir

You've just run out of excuses for not owning a personal computer.

Clear the kitchen table. Bring in the color TV. Plug in your new Apple Ilf and connect any standard cassette recorder/player. Now you're ready for an evening of discovery in the new world of personal computers.

Only Apple II makes it that

easy. It's a

complete, ready to use computer, not a kit. At $1298, it includes video graphics in 15 colors. It includes 8K bytes ROM and 4K bytes RAM-easily expandable to 48K bytes using 16K RAMs (see box). But you don't even need to know a RAM from a ROM to use and enjoy Apple II. For example, it's the first personal computer with a fast version of BASIC permanently stored in ROM. That means you can begin writing your own programs the first evening, even if you've had no previous computer experience.

The familiar typewriter-style keyboard makes it easy to enter your instructions. And your programs can be stored on—and retrieved from— audio cassettes, using the built-in

cassette interface, so you can swap with other Apple II users.

You can create dazzling color displays using the unique color graphics commands in Apple BASIC. Write simple programs to display beautiful kaleidoscopic designs. Or invent your own games. Games like PONG—using the game paddlea supplied. You can even add the dimension of sound through Apple II's built-in speaker.

But Apple II is more than an advanced, infinitely flexible game machine. Use it to teach your children arithmetic, or spelling for instance. Apple II makes learning fun. Apple II can also manage household finances, chart the stock market or index recipes, record collections, even control your home environment.

Right now, we're finalizing a peripheral board that will slide into one of the eight available motherboard slots and enable you to compose

music electronically. And there will be other peripherals announced soon to allow your Apple II to talk with another Apple II, or to interface to a printer or teletype.

Apple II is designed to grow with you as your skill and experience with computers grows. It is the state of the art in personal computing today, and compatible upgrades and peripherals will keep Apple II in the forefront for years to come.

Write us today for our detailed brochure and order form. Or call us for the name and address of the Apple II dealer nearest you. (408) 996-1010. Apple Computer Inc., 20863 Stevens Creek Boulevard, Bldg. B3-C, Cupertino, California 95014.

Apple II™ is a completely self-contained computer system with BASIC in ROM, color graphics, ASCII keyboard, lightweight, efficient switching power supply and molded case. It is supplied with BASIC in ROM, up to 48K bytes of RAM, and with cassette tape, video and game I/O interfaces built-in. Also included are two game paddles and a demonstration cassette.

SPECIFICATIONS

• Microprocessor: 6502 (1 MHz).

• Video Display: Memory mapped, 5

modes—all Software-selectable:

• Text—40 characters/line, 24 lines upper case.

• Color graphics—40hx48v, 15 colors

• High-resolution graphics—280hx 192v; black, white, violet, green (12K RAM minimum required)

• Both graphics modes can be selected to include 4 lines of text at the bottom of the display area.

• Completely transparent memory access. All color generation done digitally.

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

■ Uses either 4K or new 16K dynamic memory chips

• Up to 12K ROM (8K supplied)

• Software

• Fast extended integer BASIC in ROM 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

■ Composite video output

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.

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

apple computer inc.

Order your Apple II now.

from any one of the following authorized dealers:

ALABAMA

Computerland 3020 University Dr. N.W. Huntsville 539-1200 The Computer Center 303 B. Poplar Place Birmingham 942-8567

ALASKA

The Alpha Corporation 100 W. Int'l Airport Rd. Anchorage 279-1316

Team Electronics Anchorage 276-2923 Anchorage 272-4823 Fairbanks 456-4157 ARIZONA Byte Shop Tempe 894-1129 Phoenix 942-7300 Tucson 327-4576 CALIFORNIA

A-VIDD Electronics 2210 Belltlower Road Long Beach 598-0444 Byte Shop

Citrus Heights 961-2983 Palo Alto 327-8080 Pasadena 684-3313 San Jose 377-4685 San Mateo 341-4200 Santa Clara 249-4221 Walnut Creek 933-6252 Computerland ElCerrito 233-5010 Hayward 538-8080 Inglewood 776-8080 Mission Viejo 770-0131 San Diego 560-9912 San Francisco 546-1592 Thousand Oaks 495-3554 Tustin 544-0542 Computer Components 5848 Sepulveda Blvd. Van Nuys 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

3038N. 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

Computerland Kirkwood Highway Newark 738-9656

FLORIDA Byte Shop

Ft. Lauderdale 561-2983 Miami 264-2983 GEORGIA DataMart, Inc. 3001 N. Fulton Drive Atlanta 233-0532

HAWAII

Real Share

190 S. King Street #890

Honolulu 536-1041

ILLINOIS Computerland

Arlington Heights 255-6488 Niles 967-1714 Oaklawn 422-8080 Data Domain 1612 E.Algonquin Rd. Shaumburg 397-8700 Itty Bitty Machine Company 1316 Chicago Avenue Evanston 328-6800 Team Electronics Carpentersville 428-6474 Decatur 877-2774 Galesburg 344-1300 Moline 797-8261 Peoria 692-2720 Rock Island 788-9595 Rockford 399-2577 Schaumburg 882-5864 Springfield 525-8637 INDIANA The Data Domain Fort Wayne 484-7611 Bloomington 334-3607 West Lafayette 743-3951 Indianapolis 251-3139 The Home Computer Center 2115 E. 62nd St. Indianapolis 251-6800

IOWA

The Computer Store 4128 Brady St. Davenport 386-3330 Team Electronics Ames 232-7705 Bettendorf 355-7013 Cedar Rapids 393-8956 Davenport 386-2588 Dubuque 583-9195 Iowa City 338-3681 Sioux City 252-4507 Sioux City 277-2019 Waterloo 235-6507 Video Midwest, Inc. 2212 Ingersoll Ave. Des Moines 244-1447

KANSAS

Barney & Associates 425 N. Broadway Pittsburg 231-1970 Team Electronics Garden City 276-2911 Hutchinson 662-0632 Lawrence 841-3775 Manhattan 539-4636 Salina 827-9361 Topeka 267-2200 Wichita 685-8826 Wichita 942-1415 Wichita 682-7559 KENTUCKY Computerland 813 B. Lyndon Lane Louisville 425-8308 The Data Domain Lexington 233-3346 Louisville 456-5242 MARYLAND Computerland 16065 Frederick Road Rockville 948-7676 Computers, etc. 13A Allegheny Ave. Towson 674-4742

MASSACHUSETTS

The Computer Store, Inc. 120 Cambridge Street Burlington 272-8770

MICHIGAN Team Electronics

Escanaba 786-3911 Menominee 864-2213 MINNESOTA Team Electronics

Minnetonka 544-7412 Edina 920-4817 Eden Prairie 941-8901 Bemidji 751-7880 Willmar 235-2120 St. Cloud 253-8326 Owatonna 451-7248 Hibbing 263-8200 Virginia 741-5919 St. Anthony 789-4368 West St. Paul 451-1765 Minneapolis 377-9840 St. Paul 227-7223 St. Cloud 251-1335 Minneapolis 869-3288 Minneapolis 378-1185 Maplewood 777-3737 Mankato 387-7937 Eveleth 749-8140 St. Paul 636-5147 MISSOURI

Electronic Components, Intl. 1306-B South Hwy63 Columbia 443-5225 Team Electronics Biscayne Mall 301 Stadium Blvd. Columbia 445-4496

MONTANA

Computers Made Easy 415 Morrow Bozeman 586-3065 Team Electronics Great Falls 852-3281 Missoula 549-4119 NEBRASKA Team Electronics Grand Island 381-0559 Lincoln 435-2959 Omaha 397-1666 Omaha 333-3100 Norfolk 379-1161 North Platte 534-4645 NEW HAMPSHIRE Compulermart 170 Main Street Nashua 883-2386

NEW JERSEY

Computerland 2 De Hart Street Morristown 539-4077

Computermart 501 Route 27 Iselin 283-0600

NEW YORK

Computerland Buffalo 836-6511 Ithaca 277-4888 Computer Mart of N.Y. 118 Madison Ave. New York 686-7923

Co-op Electronics 9148 Main Street Clarence 634-2193

NORTH CAROLINA

Byte Shop

1213 Hillsborough St. Raleigh 833-0210 Computer Room 1729 Garden Terrace Charlotte 373-0875

Rom's & Ram's Crabtree Valley Mall Raleigh 781-0003

NORTH DAKOTA Team Electronics

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

OHIO

Computerland 1304 SOM Center Rd. Mayfield Heights 461-1200 The Data Domain Dayton 223-2348 Cincinnati 561-6733 OKLAHOMA Bits, Bytes 4 Micros 1186 N. MacArthurBlvd. Oklahoma City 947-5646 High Technology 1020 W.Wilshire Blvd. Oklahoma City 843-9667

Team Electronics

Norman 329-3456 Oklahoma City 634-3357 Oklahoma City 848-5573 Stillwater 377-2050 Tulsa 633-4575 Tulsa 252-5751 Yokon 373-1994 OREGON Team Electronics Bend 389-8525 Canby 266-2539 Salem 364-3278 PENNSYLVANIA

Computer Mart of PA

Route 202

King of Prussia 265-2580

SOUTH DAKOTA Team Electronics

Pierre 224-1881 Rapid City 343-8363 Sioux Falls 336-3730 Sioux Falls 339-1421 Sioux Falls 339-2237 Watertown 886-4725

TEXAS

Byte Shop 3211 Fondren Houston 977-0664 Computerland Houston 997-0909 Austin 452-5701 Computer Shops. Inc. 13933 North Central Dallas 234-3412 The Computer Shop 6812 San Pedro San Antonio 828-0553

Computer Terminal 2101 Myrtle St El Paso 532-1777 The KA Computer Store 1200 Majesty Drive Dallas

VIRGINIA

The Computer Hardware Store 818 Franklin St. Alexandria 548-8085 Home Computer Center Virginia Beach 340-1977 Newport News 595-1955 Timberville Electronics P.O. Box 202 Timberville 896-8926

WASHINGTON

Team Electronics 423 W. Yakima Yakima 453-0313

WASHINGTON, D.C.

Gerogetown Computer Store 3286 M. St. N.W. Washington. D.C. 362-2127

WISCONSIN Team Electronics

Eau Claire 834-0328 Eau Claire 834-1288 Madison 244-1339 Milwaukee 461-7600 Racine 554-8505 Sheboygan 458-8791 Greendale 421-4300 Rhinelander 369-3900 LaCrosse 788-2250 Wausau 842-3364 Milwaukee 672-7600 Janesville 756-3150 Manitowoc 684-3393 Milwaukee 354-4880 Oshkosh 233-7050 WYOMING Team Electronics Hilltop Shopping Center 207 S. Montana Casper 235-6691

CANADA

Future Byte

2274 Rockland

Montreal, Que. 731-4638

AUSTRALIA

Computerland 52-58 Clarence St. Sydney, NSW 29-3-153

cippkz computer inc.

10260 Bandley Drive Cupertino, California 95014 (408)996-1010

EURAPPLE

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

10

BYTE January 1978

Circle 4 on inquiry card.

The Brains of Men and Machines

Part 1: Biological Models for Robotics

Ernest W Kent, Associate Professor Dept of Psychology

The University of Illinois at Chicago Circle Chicago IL 60680

The idea of a machine that thinks like a man has always fascinated us. If we talk about substantial improvements in processor design, it is relegated to a few technical journals, but if we talk about robots, or write stories about computers with personalities, or make movies about HAL, everyone gets interested, and computer buffs stay up all night trying to figure out how to make their machines behave like that. An artificial "intelligence," in the sense in which we apply that term to our own thought processes, has been a recurring theme dating back to antiquity, despite the fact that no such machine has ever existed. I don't know why this is so, perhaps it springs from a desire to understand our own thoughts, or perhaps the human race is just lonely. We keep hoping for dolphins and Martians to start talking to us too. Whatever the reason, the idea is a potent one, and an enduring source of interest.

Why then don't we build computers that think like men? Well, people have certainly tried, and some very elegant software has been created towards that end, but the results have always been frustratingly limited. You have all heard the old adage that a computer to equal the human brain would require a machine the size of the Empire State Building with the electrical output of Niagara Falls to power it, but that was always just an excuse. Aside from the fact that whoever coined that notion didn't have any idea of what a brain-like computer would require, the fact is that we would have built it anyway, if we'd known how.

Moreover, when that guess was made, we were making computers out of 12AX7s, and it's a long way from the 12AX7 to the Z-80. We would certainly build that machine today, if we knew how. What then is the problem? Our big fast machines can do elegant and complex mathematics, even proofs, far beyond our own powers, yet we have the greatest difficulty making them display even the slightest degree of common sense. The System 370 can do amazing things with numbers, but it wouldn't have the intelligence to duck if you swung a club at it. A frog could do better at dealing with its environment.

I assure you that the problem has nothing to do with any mysterious properties of the brain. If we have learned anything about the brain, it is that it is a machine. A complex machine to be sure, but a machine nonetheless. This notion frequently upsets people; they are bothered by the suggestion that they might be "only a machine." I think that this is the wrong interpretation. The statement that the brain is a machine does not mean that it is "only" a machine in the sense of the simple machines of limited ability that we have produced. Rather, it is a statement that extends our concept of what a machine can do. It does not denigrate what the brain can do. Of course, it raises the possibility that we can design a machine that thinks like a man, with all of the attendant problems of philosophy and theology that that raises.

One could take refuge in the notion that brain and mind may somehow be different, but the evidence is that when the brain is manipulated experimentally, all of our mental processes, our sensations and perceptions, our feelings and emotions, our intellectual processes, our memories, even our states of consciousness are manipulated too. The evidence suggests that this manipulation

BYTE January 1978

11

is predictable and occurs in the same fashion in all individuals.

Why are we having so much trouble making our computers behave in brain-like fashions if both are machines and both information processing machines at that? I think the answer is that we are trying to make a wrench do a screwdriver's job. What I mean is that while all information processing machines may theoretically be capable of imitating all others, Turing didn't say that all had to be built to handle all problems with equal ease. In point of fact, the brain's architecture is quite different from that of computers as we customarily build them, and different in ways that are very instructive with regard to the problem of building a "thinking machine."

The brain and the computer have both developed in an evolutionary manner, with "survival of the fittest" determining what features were retained and what were discarded. The differences in their designs arise from the fact that nature and computer engineers have different notions of what constitutes "fittest." There are two aspects to this difference: the nature of the problems the machine is required to solve, and the nature of the hardware available to build the machine. The successful brains, the ones whose genes contributed to the next generation, were the ones that had good designs for solving problems like recognizing and avoiding dinosaurs, and recognizing and catching frogs. Ability at higher mathematics was never a very important criterion in determining successful brain design, and our poor brains get quickly strained when they're required to do much of it. Computer design was judged from the beginning in terms of its success at mathematical function, and as a result they are very good at it, but very bad at catching frogs.

The kind of hardware available to computer engineers and to organic evolution was also different, and in part determined the differences in architecture of successful brains and computers. Although the logic gate and the neuron have a great deal in common as we shall see, some of their differences turned out to have far-reaching consequences. The brain never had speed on its side, neurons operate in milliseconds not nanoseconds, but it never lacked for quantity. (You want million bit bytes and ten thousand legged gates? Sure, how many trillion?) The computer engineers on the other hand were limited in quantity by the expense and difficulty of assembly of their components, which dictated designs that were hardware conservative. This was compensated by using the speed of electronic

components to substitute for quantity. Thus, our computers emphasize small bytes and few registers, but achieve high data thruput with iterative reuse of these components at great speeds. Bus oriented design and other hardware conservative adaptations arise from these same considerations.

In contrast, parallel multiprocessor designs with hierarchical organization, which the brain uses with wild abandon, are only seen in the most primitive form in our current computers and computer networks. The brain also has no compunctions about freely mixing digital and analog computing elements, using each to best advantage where needed. Thus, the brain and the computer have each found a design best suited to the problems they are required to solve and the hardware available, albeit big brains can do some computer-like functions, poorly; and big computers can do some brain-like functions, poorly.

Curiously enough, both the brain and the computer seem to have settled on a single basic organization whether the device is large or small. We all know how a computer works in principle, although different machines differ in detail. The processor, the bus, the clock, memory, the 10 interface, all are arranged according to the same basic plan in large machines and small. Similarly, the brain of the white rat in my laboratory is of the same design, basically, as the brain reading this page. All the same parts are included in both, and hooked up in the same way. The differences are in capacity and relative development of the parts. Brains are even more similar to one another than computers.

What I am suggesting is that the computer has developed an architecture that is optimized for logical and mathematical problems, but that that is not an optimal architecture if the problem is to display basic common sense, whether it can do Fourier transforms or not. Thus, our machines as presently configured are terribly inefficient at the kinds of problems brains solve easily, and prodigious feats of programming, vast amounts of memory and all the speed that can be mustered give us only the most trivial results.

I am not going to suggest that we try to build a hardware replica of the brain. We don't have the hardware or the knowledge yet. I would like to suggest however that if we are interested in approaches to a science of robotics, it would be very instructive to examine the only model of an intelligent machine that is available to us, and to try to identify principles of operation that could

12 BYTE January 1978

Is your career growing as fast as ours?

NET SALES 254 7

(Millions of Dollars)

EARNINGS PER SHARE

(In Dollars) 2.88

I II

INI

1973 1974 1975 1976 1977

(1977 Fiscal Year)

1973 1974 1975 1976 1977

'Adjusted to reflecta3-for-1 stock split effected in the form of a 200% stock dividend declared in February 1973.

New Products Engineers (Analog and Digital)

Your responsibilities will include new product introduction of state-of-the-art processors, peripherals and controllers to our Systems Integration Division. A BSEE degree or the equivalent is required with a minimum of 3 or more years of related experience.

Diagnostic Programmers

You will design, code and debug assembler language programs for fault isolation, to the chip level, in digital systems. You will also write functional level system exercisers for stand-alone and disc-based real-time operating systems. Atechnical degreeortheequivalent experience is needed, together with a thorough understanding of digital system hardware. Hardware troubleshooting experience and 3 or more years' programming experience, preferably in diagnostics is very desirable, especially with strong assembly language skills.

Test Engineers

You will be responsible for PCB test engineering support for digital products such as CPU's, memories and options. Experience is required in solving engineering problems as they relate to test equipment, diagnostics, test philosophy and component fault isolation. You will also initiate and implement improvements to the testing process and equipment, and provide coordination for the introduction of new products into production. A BSEE degree and two or more years' experience in PCB test or Test Equipment Design.

Manufacturing Engineers

You will be responsible for providing floor support in the PCB assembly area. A BSME, BSIE or the equivalent with 3years' experience in Manufacturing Engineering is required. A knowledge of auto-insertion equipment assembly technique and soldering equipment is helpful.

Senior Systems Technicians

This position requires at least 3 years' experience, minimum, and an ASEE degree or its equivalent. Your background should include familiarity with CPU memory, moving head disks and related peripherals.

Special Systems Technicians

You will be working closely with the Special Systems Engineering Department in the design of non-standard computer products. A minimum of 3 years' experience and an ASEE degree or its equivalent is necessary.

To apply for one of the above positions mail your resume to John Prendergast

To apply for one of the above positions mail your resume to Tom Aldrich.

To apply for one of the above positions mail your resume to Rene Santini.

Data General Corporation, Route 9, Southboro, MA 01772. Data General is an equal opportunity employer, M/F.

IrDalaGeneral

Circle 31 on inquiry card.

BYTE January 1978 13

-DENDRITES

INPUTS

Figure I; The parts of the neuron, the brain's basic "gate." Flow of information through this gate is roughly from left to right. Outputs are digital pulse streams transmitted through the axon and its branches to inputs of other neurons. Inputs are signals from other axons, which are summed by an analog process which weights various sources and fires an output pulse when a threshold is reached.

be put to good use with the kinds of hardware that we do have. This is a particularly appropriate time for such an exercise, since the hardware revolution has freed us to a degree from some of the original constraints upon computer design, and the growth of the computer hobby community has provided us with a group of eager experimenters who don't have a large investment in standard approaches, or a requirement to produce commercially useful business machines. Finally, our understanding of the operation of the brain has undergone something of a revolution in the last ten years, and we are in a much better position to discern the outlines of its architecture than we were when the computer was born. The time is right, the means are at hand, all we need are the geniuses in the basement workshops.

I am not going to tell you how to build a machine to work like a brain, because I don't know how. What I propose to do is to tell you, in terms of computer concepts, how a brain works. You supply the ideas from there. It is generally very difficult to explain brain operation to the layman, because he doesn't have the necessary concepts readily available. I have found, however, that

it is very easy to explain brain operation to computer people because it can be translated into terms and concepts with which they are already familiar. If you can understand digital and analog electronics, you can understand in principle, if not in detail, how your brain works. You don't have to understand neurophysiology, neuroanatomy, neuropharmacology, and physiological psychology. (Well, maybe a little bit, but I'll try to keep it painless.)

First, you have to get a picture of the basic unit of brain structure. This is called a neuron. It is a cell like all the others in your body, but it is specialized for information processing. You can think of it as performing much the same function as a logical gate in a digital machine, or an operational amplifier in an analog machine. In fact, it is a very versatile device and can do either or both jobs. The brain uses neurons, billions and billions of them, to do everything it does. Let's look at the diagram of a neuron in figure 1. The output of the neuron appears on the long thin part labeled axon. Think of the axon as a wire. The brain uses them for transmitting information over distance. The difference is that this wire transmits only pulse streams, not DC levels. It's a

14

BYTE January 1978

■I

Meet The North Star Family

THE NORTH STAR S-100 FAMILY—four high performance products at attractive low prices. Our boards are designed for use in the North Star HORIZON computer and other S-100 bus computers using 8080 or Z80 processors. Visit your computer store for a demonstration, or write for our free color catalog.

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

16K RAM BOARD

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

MICRO DISK SYSTEM

The North Star MDS is a complete floppy disk system with all hardware and software needed to add floppy disk memory and a powerful disk BASIC to S-100 bus computers. The North Star MDS is widely considered one of the best designed and most complete S-100 bus products

Z80A PROCESSOR BOARD

The North Star ZPB brings the full speed, 4MHz Z80A microprocessor to the S-100 bus. Execution is more than twice the speed of an 8080, and the ZPB operates in systems both with and without front panels. The ZPB includes vectored interrupts, auto-jump startup, and space for 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 14 decimal digits. Arithmetic is up to 50 times faster than 8080 software, and BASIC programs can execute up to 10 times faster. A version of North Star BASIC is included. Kit: $259. Assembled: $359. Prices subject to change.

Circle 78 on inquiry card.

North Star -k Computers

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

BYTE January 1978 15

EXCITATORY / INPUTS »

v INHIBITORY / INPUTS

Figure 2: An equivalent circuit for the neuron, illustrating some of its important properties as an analog and digital device. This model should be compared to the information in figure 7.

digital wire. All the pulses are always the same height and duration, and can be thought of as binary bits. Only ones and zeros are allowed. Now look at the part labeled axon hillock. That's like a Schmitt trigger. It puts a pulse on the axon whenever the analog voltage in the part labeled cell body crosses a preset threshold value. Whenever this occurs, the voltage in the cell body is reset to the baseline or initial value. This cell body voltage is raised toward the Schmitt trigger's threshold, or dropped away from it, by the action of pulses impinging on the cell body from the axons of other neurons. The place where an axon meets a cell body is called a synapse, and it only transmits in one direction. Think of it as a diode. Now a synapse may be positive or negative. That is, a pulse at a given synapse may either add to or subtract from the cell body voltage. This is a function of which synapse receives the input, not the nature of the pulse (just like the little inversion circles on logic gate inputs). Remember however that the voltage in the cell body is an analog voltage and is performing an algebraic sum of the inputs. Moreover, the inputs may have different weights. The ones furthest from the axon hillock have the least effect, the

ones nearest to it have the greatest effect. Weighting may be reduced greatly by placing the input far out on an extension of the cell body called a dendrite. The effect of an input outlasts the pulse that produces it, so that inputs which do not arrive synchronously in time may still sum within brief time limits. Think of it as a pulse stretcher at each input coupled with a time constant in the cell body. The effect of the finite time constant is to give each input pulse a temporal weighting (ie: the more recently arrived pulses have a greater weight in the sum).

When the inputs to the cell body have summed past threshold at the axon hillock, and a pulse has been placed on the axon as a result, we say that the neuron has "fired." An equivalent circuit (for our purposes) of the basic neuron is shown in figure 2. If you study figures 1 and 2 for a moment, you will see that the neuron has digital inputs, which are converted to analog values and operated on algebraically in an analog fashion. The result is then converted back to digital form for transmission. Now this is a very powerful tool. It can act as an AND gate (coincidence of several equally weighted inputs required to reach firing threshold), an OR gate (any

16 BYTE January 1978

QJ

3

O

CO CD

I

00

CO

a

00

5s

CD

=3

CO

en

o

CD

o

Q>

G

CD

S

a

*i

co

CD

cu

CD

CD

C3

CD

CO

31

G

CO

a

O

CD

o

CD

^

•H '

O

■ei

CD

00

=3 O

CD

O0

£

CD

5^

<=*

•+->

-S3

<3

O

-e:

e

THALAMUS

DIENCEPHALON

HYPOTHALAMUS

(b)

MESENCEPHALON

CEREBELLUM

PONS MEDULLA

Figure 3: The brain as it appears anatomically. Above: a view of the brain from the left side. Below: A view from the left of the inside of the brain shown cut in half down the center line. The basal ganglia (striatum) which do not show here would be on either side of the thalamus.

V,. ■01 <««!|T>r '-.■•: ■ . .t | > • .; :

Frontal ynj

lob* '"H

Temporal

lob*

irfebwMuf

M»dwllfl

Specifications: The Human Biocomputer

Cell Count: 1 5 billion (all present at birth)

Structural Completeness: 50% at birth, 100% at age 15 years

Energy Requirements: 20 watts, biochemically fueled

Sugar Consumption: 1 teaspoon per hour

Blood Flow: 1.5 pints per minute (20% of total body requirement)

Oxygen Consumption: 45 cc per minute (STP) (25% of total body requirement)

This illustration was supplied by the author.

of several inputs can drive the cell past firing threshold), or any of a variety of other functions (NAND and NOR can be achieved by cells with a resting potential above firing threshold, and inhibitory inputs). When you consider that one or more of the inputs to the cell can be feedback from its own axon, and that an average neuron may have ten thousand inputs, you begin to appreciate the possibilities. It can integrate and differentiate and do other useful functions by virtue of feedback and analog operation.

No one would try to design a very large system out of gates this complex unless someone finds a way to make them in quantity on a chip. Consideration of their operation however reveals some important considerations of brain architecture. First, although neurons can be synchronized by simultaneously driving them with an overriding input, they are normally asynchronous devices. The system can use local "clocks" where they are useful, but it doesn't have a system clock.

This permits an interesting development. In synchronous systems, information can only be coded in terms of which lines are active. If you want to indicate on or off status of some condition, you put a zero or one on the appropriate line. But if you want to indicate a numerical value greater than one, you have to do it by coding it as the activity, or lack of it, simultaneously on several lines. For example, we represent numbers by the bit pattern in a byte on the data bus. Now the brain can, and in several instances does, function in this mode. We refer to it as "place coding" because the information is contained in the location of the incoming signal. However, because it does not have to maintain synchronization, the brain can also encode information in terms of the frequency of arrival of pulses on the axon. We refer to this, obviously enough, as "frequency coding." Examination of the model circuit (figure 2) for the neuron reveals that the greater the positive input drive to the cell body, the more quickly the analog voltage will reach threshold, and the more quickly a new pulse will be placed on the axon after the reset following the preceding pulse. This means that it is very easy to use frequency coding to indicate the magnitude of the summed input activity. Due to the "pulse stretchers" at the inputs to the neuron, and the time constant of the cell body, pulses that are sequential on the axon can sum with one another to produce a greater analog voltage. This voltage is proportional to the frequency of the incoming pulses, and this achieves decoding of frequency coded input back to the analog mode.

18 BYTE January 1978

corporation

High performance/

cost effective products

for your microcomputer

The Extensys FOS100 Floppy Disk System provides a high performance floppy disk system based upon multiprocessors in a multiuser environment. The FOS100 accomplishes this through a completely integrated hardware and software system. The hardware consists of a File I/O board, a PerSci controller board and one or two dual PerSci Model 277 floppy disk drives. The File I/O board has an 8080 A microprocessor, 1 K of PROM and 8K of RAM on-board to provide a separate I/O processor which will handle all disk I/O functions of the system. The PerSci controller board is encased in an attractive cabinet with either one or two dual PerSci drives.

The software, Extensys Multiprocessor Operating System, EMOS, provides many large computer capabilities, such as multiprocessor,multiuser operation, individual file security based upon user supplied passwords, system security and IBM compatible format. Additionally the FOS100 has optional Direct Memory Access (DMA capabilities when used in conjunction with the Extensys MM 16 Memory Manager board.

The Extensys RM64 Memory Board provides up to 64 K on one board. Designed for S-100 based computers, the RM64 occupies only one bus slot. Four versions of the same board are available: 16K, 32K, 48K and 64K bytes with the less-than64K versions easily expandable by inserting memory chips into existing sockets. The Board uses dynamic RAM s with 300 ns access time and '"invisible" on-board refresh. Other features include bank select logic for PROM/ROM coexistence plus expansion beyond 64K, write protect circuitry, and multilayer ground plane construction for noise immunity.

The RM64 comes completely assembled and tested with a one year warranty. Delivery is STOCK to 15 days upon receipt of order, with shipping and handling prepaid in the continental United States.

FOS100

corporation

Circle 43 on inquiry card.

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

Extensys Corporation 380 Bernardo Avenue Mountain View, CA 94040 (415) 969-6100

Interaction of inputs from different axons is termed "spatial summation," and interaction of sequential pulses on the same axon is termed "temporal summation." One of the interesting things the brain can do with this capability is to use both place and frequency coding simultaneously on the same line. Another advantage is the ability to represent very large numerical quantities with what might be called a "temporal byte," or integration over a brief time period, of a single input line. As an example, consider the way the brain encodes sensory information from your skin. The type of sensation (ie: heat, cold, pressure, etc) as well as the location of the sensation is place coded. That is, what you feel is a function of which line is active. The magnitude of the sensation, how much you feel, is frequency coded on the same line. Thus, the brain structure receiving the information can determine the type and location of the stimulation with a "spatial byte," (place code) which determines the set of active lines, and the intensity of the stimulation with a "temporal byte" of frequency code.

The brain's basic "byte," therefore, has two dimensions, a spatial dimension and a temporal dimension. Two independent sets of information may be encoded in these two dimensions, and they may then interact in the receiving structure in a way determined by that structure. Notice that the spatial aspect of the byte is essentially digital information, and that the temporal aspect of the byte is essentially analog information, although it is encoded in the frequency of digital pulses.

The mathematical treatment of this is an information theorist's nightmare, although it can be done, but from a practical standpoint there are some clear advantages. Digital information output from a structure which determines the type of action to be taken and analog information output from another structure which determines intensity of action required may "gate" one another in a third location to produce an output stream which simultaneously defines the nature and magnitude of the action taken. One could think of it as specifying the enabling of a set of switches with an appropriately coded digital byte while presenting a set of analog values to the switched lines. We do see this sort of thing of course in some electronic IO applications, but the brain makes use of this, and much more complicated interactions, in its internal processing. It may use the information from one aspect of the byte to determine the nature or extent of the operation to be performed on the information in the other aspect of the byte.

Two additional properties of the neuron need to be mentioned to complete our understanding of the basic gate. The first is a different type of inhibitory input. The "negative synapse" described earlier puts an inhibitory input into the cell body to act on the analog sum there and retard the achievement of firing threshold at the axon hillock. This action of course simply antagonizes (with a specified weight) the action of all the positive inputs. Clearly, it does this without regard to which input it is antagonizing. It is also possible to have a "negative synapse" which antagonizes only a specific synaptic input. This is called "presynaptic inhibition," because it may be thought of as a disable input to one of the input one shots.

The final desirable property of the neuron as a computer element is that speed of transmission of pulses down the axon may vary over a wide range (although it is always the same in any given axon). This means that we may use high speed axons to move data quickly, but low speed axons may be employed as delay lines. Since axons can have branches coming off at any point, we may have tapped delay lines. We shall see some stunning examples of the utility of this feature.

It should be apparent by now that the basic neuron is an enormously powerful tool. In practice, few situations call for all of the complexity of this device, and it is frequently seen acting as simply a switch or AND gate or other very domestic sort of creature. Indeed, in many situations, neurons take on a variety of specialized shapes and connections which optimize them for one or another function, to the exclusion of others. In all cases however, their operation may be understood in terms of the basic design we have discussed.

Now that we have some terms for the basic elements, let us take a leap to the other end of the size spectrum and examine the overall structure of the brain. The exact anatomy is actually of little relevance for our purposes, but it may help to have a visual image of the device as we discuss the features of its parts. Figure 3 shows the general appearance of the human brain, together with some of its internal structure. Figure 4 shows the general organization of the parts as they would appear if the brain were taken out of the body, unfolded, and flattened out in a neat plan view.

The functional structures of the brain may be generally divided into two categories, fiber tracts and nuclei (plural of nucleus). Fiber tracts are simply bundles of axons going from somewhere to somewhere else, the cabling and wiring of the brain. The nuclei are groups of cell bodies. Each

20 BYTE January 1978

Ar t-by-Computerlm - an unusual gift idea

Fil

i le

File 3

lid

^

Fi

le

13

4

V

File 19

yfc

Fi

le

20

^•^L

File 27 File 41

File 45 File 46 File 60 File 61

Reproductions of graphic designs generated on a Tektronix 405 Graphics Computer/4662 Digital Plotter these black-on-white prints are 9 3/4H by 12 3/4W and are suitable for framing or mounting. Price: $2.00 ea./$20.00 for the set of 12, postage paid. Specify File #s or Set #1. Send check or money order to: Lei and C. Sheppard, Dept B, PO Box 60051, Sunnyvale, California 94086. California residents add 6% sales tax. Allow 2 weeks for personal checks to clear. ©Lei and C. Sheppard, 1977.

Circle 57 on inquiry card.

BYTE January 1978

21

BASAL GANGLIA (STRIATUM)

CEREBELLUM

Figure 4: A "plan view" of the brain showing the relationship of the major parts as it would appear if it could be unfolded.

ESENCEPHALON

SPINAL CORD

nucleus may be thought of as analogous to a central processor with a dedicated function, and (in most cases) a hardwired or ROM program. Most of the nuclei are irregular blobs of cell bodies, but in some cases the cell bodies are arranged in layers and the layers form a folded sheet of cells. In this case it is called a cortex rather than a nucleus, but the idea is the same. (The most famous of course is the cerebral cortex, of which humans are very proud because it is better developed in man than in most species.) The cells in the nuclei may be divided into two types: local neurons, whose function is in the data processing internal to the nucleus, and whose axons do not leave the nucleus, and output neurons which give rise to the axons that make up the fiber tracts and communicate with other nuclei. There are thousands of nuclei, of all levels of size and sophistication. Unfortunately, there is very little system to their names, and the names are either in Latin, or unpronouncable (Nucleus of Darkeschwitz, etc). The fiber tracts are bad too (Habenulointerpeduncular tract).

The only rational thing to do with the names of neuroanatomy is to endure them or ignore them. We shall try to ignore them. It will help however if you will take the time to learn the names of a few of the major divisions of the brain which are shown in figure 4 and to remember their basic relation to one another. The most important items, from bottom to top, are: the spinal cord, the medulla, the pons, the cerebellum, the mesencephalon, the diencephalon (and its

two major subdivisions, the thalamus and the hypothalamus), the limbic system, the striatum, and the cerebral cortex.

This bottom to top sequence corresponds in a general way to a sequence of increasingly more global levels of control, from most detailed and specific, to most general and abstract. It also corresponds roughly to the evolutionary sequence from oldest and most primitive to most recent and advanced. All of the apparatus shown here is present by the time the evolutionary level of the mammals is reached.

The basic architecture of the system is hierarchical. Each of the major functions of the system is partially organized at each level of the system, rather than particular structures being devoted to particular major functions. At the lowest levels, there are a multitude of relatively simple processing elements doing similar jobs, and at the higher levels there are a few very complex and powerful processing elements defining system goals and priorities, and organizing the activities of the lower levels to achieve them.

On the input side, the lowest levels gather raw data which is then progressively abstracted, sorted and refined at each stage according to general guidelines which may be hardwired or provided by higher levels. The highest levels then receive abstract symbolic information about the general state of the environment rather than details. ("There is a black cat there" as opposed to "The following points of the visual field are dark.") Similarly, output functions begin at the highest levels, which determine general goals and strategies and transmit these in the form of statements about more limited momentary objectives to lower levels, which in turn send information about desired actions and timing to the lowest levels for execution.

Thus, at each level there are a number of relatively independent processing elements pursuing their own jobs in parallel real time, while trading information with echelons above and below, and laterally with one another. It follows that it doesn't make sense to ask where in the brain any large scale function is processed. Different aspects of it will be handled in different portions of functional subsystems which are represented at all major levels of the physical system. It might sound hopeless to try to follow the operation of such a device, but in practice there is order, not chaos. At the lower levels where semi-independent processors are most numerous, there is least diversity among them. The organization is in many ways like a military command chain, and one doesn't

Continued on page 96

22 BYTE January 1978

UP AND RUNNING

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

John Montagna, computer engineer (above left), lead this successful network team in generating election results speedily, efficiently and reliably using predominantly TDL hardware and software. Montagna created three programs to get the job done. The text for a SWAPPER program was written and assembled using the TDL TEXT EDITOR and Z80 RELOCATING MACRO ASSEMBLER. The SWAPPER text and all debugging was run through TDL's ZAPPLE MONITOR. The relocatable object code was punched onto paper tape. A MAIN USERS program updated votes and controlled air display. An ALTERNATE USERS program got hard copy out and votes in. The latter two programs were written in BASIC. Montagna modified the ZAPPLE BASIC to permit timesharing between the two USERS programs.

Four screens were incorporated, two terminals entered votes as they came in and were used to call back votes to check accuracy. Montagna called on the power and flexibility offered by TDL's ZPU board and three Z-16 Memory boards.

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

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

John Montagna

We salute John Montagna and NEW JERSEY PUBLIC BROADCASTING for spearheading the micro-computer revolution.

TDL's XITAN SYSTEMS have the capacity to do similar tasks for you. Write to us for XITAN information and the name of your nearest TDL dealer.

Circle 107 on inquiry card.

TECHNICAL

DESIGN

LABS

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

BYTE January 1978 23

Seven points

to consider

before

you buy your

small computer.

In this magazine, alone, there are probably a dozen ads for small computers. New companies are breaking ground like spring flowers.

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

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

IHow complete is the computer system? W Many buyers of small computers are in for a rude awakening when they have to spend additional money for interfaces.

The Sol-20 Terminal Computer was the first complete small computer system. Everything you need to make it work is included in the basic package.

2

Is powerful system software available?

It won't do if your system is "tongue-tied'.' Processor Technology Corporation has devoted more effort to the development of software than any other small computer maker. Our latest offering is the first fully implemented disk operating system for a small computer: PTDOS. It contains over 40 major commands, several languages and numerous utilities. Our high level languages include Extended BASIC, Assembler, FORTRANf FOCAL and PILOT*

3 Is the system easy to expand? W More and more computer owners are expanding their small computers to handle business and other specialized requirements.

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

4 Is the computer well-engineered? 9 Our Sol systems are the most conservatively rated and ruggedly built in the industry, period. In addition we designed them with you, the user, in mind; Sols are easy to build and a joy to operate.

5 Does it have proven reliability? W What is the track record? There are over 5,000 Sol systems in the field. Our track record for reliable performance is unparalleled in the small computer field.

6

Does it have good factory support?

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

Processor Technology offers the most extensive documentation of any small computer manufacturer. And we maintain a patient, competent telephone staff to answer your questions.

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

As you continue turning the pages, see how we stack up to the other computers in this magazine. If we've succeeded in whetting your appetite, see your Sol dealer or write for information on the complete family of Sol computers.

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

•Available soon.

24 BYTE January 1978

ProcessorTechnology

Circle 89 on inquiry card.

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 for other people's computers... and making them better.

Now that our own Sol has become the number one small computer, you might think we're putting less emphasis on our board business.

Not so.

We're just doing more creative things with them.

One neat package gets your computer on the air.

For example, we've built Subsystem B. which ties together five Processor Technology modules into a completely integrated system that makes other S-100 Bus computers work almost as well as our Sol.

Subsystem B includes a memory module, three input/output modules, a general purpose memory, and appropriate software.

A specialized software program called CUTER knits together your computer and its peripherals to create an integrated, smoothly working system.

It's the fastest, cleanest way to get on line, and it costs less than if you bought each module separately.

You get your choice of two low power, reliable memory modules in 8K or 16K capacity.

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

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

software including Extended BASIC, FORTRAN? PILOTf FOCAL and numerous others.

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

Yes, we may have become the maker of the Number 1 small computer — the Sol. But we haven't neglected the quality of our board business. We can't afford to... because we use many of them in our own computers.

For our most recent literature and price list see your dealer or write Processor Technology Corporation, Box B, 7100 lohnson Industrial Drive, Pleasanton, CA 94566. (415) 829-2600.

Processor Technology

*Availablc soon.

See it at your Sol dealer...

ARIZONA

Byte Shop Tempe 813 N. Scottsdale Rd. Tempe, AZ 85281 (602) 894-1129

Byte Shop Phoenix 12654 N. 28th Dr. Phoenix, AZ 85029 (602) 942-7300

Byte Shop Tucson 2612 E. Broadway Tucson, AZ 85716 (602) 327-4579

CALIFORNIA

The Byte Shop 1514 University Ave. Berkeley, CA 94703 (415) 845-6366

The Byte Shop 6041 Greenback Lane Citrus Heights, CA 95610 (916) 961-2983

Computer Center 1913 Harbor Blvd. Costa Mesa, CA 92627 (714)646-0221

The Byte Shop 1122 "B" Street Hayward, CA 94541 (415)537-2983

The Byte Shop 16508 Hawthorne Blvd. Lawndale, CA 90260 (213)371-2421

The Computer Mart 633-B West Katella Orange, CA 92667 (714)633-1222

Byte Shop 496 South Lake Ave. Pasadena, CA 91101 (213) 684-3311

Micro-Computer Application Systems 2322 Capitol Avenue Sacramento, CA 95816 (916)443-4944

Byte Shop

321 Pacific Ave.

San Francisco, CA 94111

(415)421-8686

The Byte Shop 2626 Union Avenue San Jose, CA 95124 (408) 377-4685

The Byte Shop 509 Francisco Blvd. San Rafael, CA 94901 (415) 457-9311

Byte Shop of Tarzana 18423 Ventura Blvd. Tarzana, CA 91356 (213)343-3919

The Byte Shop 2989 North Main St. Walnut Creek, CA 94596 (415)933-6252

COLORADO

Byte Shop 3101 Walnut St. Boulder, CO 80301 (303) 449-6233

FLORIDA

Byte Shop of

Fort Lauderdale

1044 East Oakland Park

Blvd.

Ft. Lauderdale, FL 33334

(305)561-2983

Byte Shop of Miami 7825 Bird Road Miami, FL 33155 (305) 264-2983

Microcomputer

Systems Inc.

144 So. Dale Mabry Hwy.

Tampa, FL 33609

(813)879-4301

GEORGIA

Atlanta Computer Mart 5091-B Buford Hwy. Atlanta, GA 30340 (404) 455-0647

ILLINOIS

Champaign Computer

Company

318 N.Neil Street

Champaign, IL 61820

(217)359-5883

The Numbers Racket 623V2 South Wright St. Champaign, IL 61820 (217)352-5435

itty bitty machine co. 1322 Chicago Ave. Evanston, IL 60201 (312)328-6800

itty bitty machine co. 42 West Roosevelt Lombard, IL 60148 (312)620-5808

INDIANA

The Data Domain 406 So. College Ave. Bioomington, IN 47401 (812) 334-3607

The Data Domain 7027 N. Michigan Rd. Indianapolis, IN 46268 (317)251-3139

IOWA

The Computer Store of Davenport 4128 Brady Street Davenport, IA 52806 (319)386-3330

KENTUCKY

The Data Domain 3028 Hunsinger Lane Louisville, KY 40220 (502) 456-5242

MICHIGAN

The Computer Store

of Ann Arbor

310 East Washington

Ann Arbor, Ml 48104

(313)995-7616

General Computer Store 2011 Livernois Troy, Ml 48084 (313)362-0022

MINNESOTA Computer Depot, Inc. 3515 W. 70th St. Minneapolis, MN 55435 (612)927-5601

NEW JERSEY Hoboken Computer Works No. 20 Hudson Place Hoboken, NJ 07030 (201)420-1644

The Computer Mart of New Jersey 501 Route 27 Iselin, NJ 08830 (201)283-0600

NEW YORK

The Computer Mart of New York 118 Madison Ave. New York, NY 10001 (212)686-7923

The Computer Corner 200 Hamilton Ave. White Plains, NY 10601 (914)949-3282

NORTH CAROLINA

ROMs 'N' RAMs Crabtree Valley Mall Raleigh, NC 27604 (919) 781-0003

OHIO

Byte Shop 2432 Chester Lane Columbus, OH 43321 (614) 486-7761

Computer Mart of Dayton 2665 S. Dixie Ave. Dayton, OH 45409 (513) 296-1248

OREGON

Byte Shop Computer Store 3482 SW Cedar Hills Blvd. Beaverton, OR 97005 (503) 644-2686

The Real Oregon Computer Co. 205 West 10th Ave. Eugene, OR 97401 (503)484-1040

Byte Shop Computer Store 2033 SW 4th Ave. Portland, OR 97201 (503) 223-3496

RHODE ISLAND Computer Power, Inc. M24 Airport Mall 1800 Post Rd. Warwick, Rl 02886 (401) 738-4477

SOUTH CAROLINA

Byte Shop 2018 Green St. Columbia, SC 29205 (803)771-7824

TENNESSEE

Microproducts & Systems 2307 E. Center Street Kingsport, TN 37664 (615)245-8081

TEXAS

Computer Port 926 N. Collins Arlington, TX 76011 (817) 469-1502

Computertex 2300 Richmond Ave. Houston, TX 77006 (713)526-3456

Interactive Computers 7646V2 Dashwood Rd. Houston, TX 77036 (713) 772-5257

Neighborhood Computer

Store

#20 Terrace

Shopping Center

4902 - 34th Street

Lubbock, TX 79410

(806)797-1468

The Micro Store 634 So. Central Expressway Richardson, TX 75080 (214)231-1096

VIRGINIA

The Computer Systems

Store

1984 Chain Bridge Rd.

McLean, VA 22101

(703)821-8333

The Home Computer Center 2927 Virginia Beach Blvd. Virginia Beach, VA 23452 (804)340-1977

WASHINGTON

Byte Shop Computer Store 14701 N.E. 20th Ave. Bellevue, WA 98007 (206)746-0651

The Retail Computer Store 410 N.E. 72nd Seattle, WA 98115 (206)524-4101

WISCONSIN

The Madison Computer

Store

1863 Monroe Street

Madison, Wl 53711

(608) 255-5552

The Milwaukee Computer Store 6916 W. North Ave. Milwaukee, Wl 53213 (414)259-9140

WASHINGTON D.C.

Georgetown Computer Store 3286 M Street NW Washington, D.C. 20004 (203) 362-2127

CANADA

Trintronics 160 Elgin St. Place Bell Canada Ottawa, Ontario K2P 2C4 (613)236-7767

Computer Mart Ltd. 1543 Bayview Ave. Toronto, Ontario M1K 4K4 (416)484-9708

First Canadian Computer Store Ltd. 44 Eglinton Ave. West Toronto, Ontario M4R 1A1 (416)482-8080

The Computer Place 186 Queen St. West Toronto, Ontario M5V 1Z1 (416)598-0262

Basic Computer Group Ltd. 1548 East 8th Ave. Vancouver, B.C. V6J 4R8 (604) 736-7474

Pacific Computer Store 4509 Rupert St. Vancouver, B.C. V5R 2J4 (604) 438-3282

Circle 89 on inquiry card.

26 BYTE January 1978

Processor ech

The IRS

and the

Elizabeth M Hughes 5831 Hillside Dr Doraville GA 30340

Computer Entrepreneur

Few computer hobbyists ever have enough money to put into expanding, upgrading or otherwise improving their systems. New products for the home computer are appearing almost daily and new needs ("If I only had another 4 K of memory. . .") become visible as the computer receives increased use. It's hardly surprising, then, that many small-systems owners are thinking of ways to make their computers pay for themselves. Many succeed in penetrating the chinks in the armor of the local business community (or whatever) and begin to earn some money from the enterprise.

The ecstasy of turning a dollar from a hobby activity is hard to beat, but after that first burst of excitement, it's necessary to remember the cloud on the horizon: the Internal Revenue Service (IRS), which is interested in all earnings. The purpose of this article is to acquaint you with the additional tax schedules you must prepare and records you must maintain if you start earning money with your computer. On the brighter side, it will also give you an idea of the deductions you can take on the strength of your new status as a small business.

Tax law is complex, however, and an article of this length can only offer a thorough overview of the situation. Anyone starting a small business would be welladvised to augment the information presented here by getting the free IRS publications on the subject which are listed at the end of this article.

Are You a Small Business?

In deciding whether or not you are a "small business" for federal income tax purposes, the main considerations are (a) did you earn any money from the enter

prise in question during the past year?; and (b) do you want to take deductions based on your status as a small business? If you take business-based deductions, your business can be a comfortable tax loss, but only for a short time. If you do not produce a taxable profit during at least two of every five consecutive years, you do not qualify as a business, in which case you may find yourself in the uncomfortable position of having claimed deductions in previous years from a nonexistent business. Therefore, unless you seriously intend to expand your money earning computer activities to the point of making a net profit, it's wise to simply report computer income under miscellaneous income on your regular tax form and leave it at that.

Other considerations arise on a state or local level. Before you decide to become a small business, be sure to find out what's involved in your area. Zoning ordinances in some cities render even in-the-home businesses illegal in certain areas. Some cities and states require an annual licensing fee from all small businesses, and state law varies radically regarding which goods or services are subject to sales tax. Inquiring into these matters at the outset will prevent problems later. In most areas, small businesses are not required to incorporate or to register their trademarks, if any (although they are permitted to do so); but all states and some municipalities have laws regarding small businesses which must be taken into consideration. Telephone calls to state and local government offices will usually answer these questions efficiently.

Satisfying the IRS

New small businesses, especially if they are responsible for tax losses in their first

The ecstasy of turning a dollar from a hobby activity is hard to beat, but after that first burst of excitement, it's necessary to remember a cloud on the horizon: the IRS.

BYTE January 1978 27

New small businesses,

especially if they are

responsible for tax losses

in their first year or two,

are prime targets for IRS

audits.

One successful business I

know keeps records in

paper bags, one marked

"expense" and the other

"income."

year or two, are prime targets for IRS audits. The thought of being audited by the IRS strikes terror into even the most innocent hearts, but if you keep complete and accurate records you can face even that contingency with unruffled calm.

The general rule is keep everything. In detail, this translates into keeping all receipts for business expense, paying as many business expenses by check as possible to provide the additional documentation of a cancelled check, and keeping thorough records of all income from your business. Remember that the IRS is always looking for falsified records of all sorts and has no reason to suppose that you haven't been doing the same, so don't rely on your computer printout or handwritten records to satisfy them. All those odd sized receipts may be a pain to keep, but if you're audited, they'll save the day.

Records needed fall into three categories: income, outlay and miscellaneous. Income records serve as the basis for calculating your total business income at tax time. For example, if you bill someone for a computer service, keep a copy of the invoice you send out and note on it such particulars as date, service, customer's name and address, and postage required to send the bill. When payment is received, mark the invoice with the date of payment and file a photocopy of the check with it. A record of the date of payment is especially desirable if you are paid in cash, and for this reason an inexpensive receipt book can be a worthwhile investment.

Records of outlay serve to document expenditures made for the business. They are especially important because they support any business deductions you claim at the end of the year. Anything purchased exclusively for business use is a safe deduction. Thus, if you buy a cassette which is used solely for business data (as opposed to programs for your private amusement), it counts as a business expense; but if you buy a sheet of stamps, you can only count as business expense those stamps used for business purposes, such as mailing bills or advertising.

Miscellaneous records document your claim to be a business. They include copies of any advertising you do, business correspondence, and announcements (or newsclips) of activities you participated in which mention that you are the proprietor of your business.

The central fact to remember is that the IRS takes nobody's word for anything and looks at any record with a critical eye. Fraud and conspiracy to defraud are ever

present, and the IRS is continually on guard against them. Therefore, any record which involves a business other than your own (eg: the company you bought x from), a bank, or another individual (a customer, a news reporter, whatever) helps your cause by providing someone who can attest to your business activities. All of this inevitably sounds paranoid, but a little well-placed forethought and paranoia can save trouble later.

Getting Organized

Naturally, all these documents amount to a lot of paper, usually in odd sized scraps that have the knack of vanishing at inconvenient moments. There are several approaches to making life easier at tax time. One successful "small business" I know uses paper bags. The entrepreneur of this enterprise keeps one marked expense and one marked income by the desk and pitches all documents into one or the other. When preparing tax forms, he sorts the bags, combining related documents into rubberbanded bundles, and, after the forms are mailed, puts all the documents plus a copy of the tax forms into one large paper bag. Stapled shut and labelled with the year, it then takes its place among previous years' bags on a shelf as insurance against the day the IRS decides to audit.

I personally prefer a somewhat more complicated system employing file folders. Each client or type of expense has its own file folder which I can use not only for tax purposes but as a basis for estimating anticipated needs. If the money can be available before the expense arises, life is made easier; and if a service can be offered to a client just as he/she is about to request it, business flows more smoothly.

Regardless of system, however, the principle is the same: keep hard copy proving the legitimacy of every deduction and every bit of claimed income. Try different approaches until you find the one that suits you best, and then stick with it. It's your best defense against allegations of tax fraud.

The Silver Lining

If all this sounds like a lot of trouble, you're right. But it has advantages. And in the language of income tax, "advantage" is spelled deduction. Small business expenses are deductible. What counts as a business expense? Schedule C, the main tax form businesses must fill out (more about this later), lists several categories. Let's consider them one by one.

28 BYTE January 1978

/^fr/ffyrrrr7

Now Dynabyte builds three Great Memories

* typical access tiiiie^Assembled. Tested. Burned in. Guaranteed. ,

Like our 16k dynamic RAM. Built as solid as the 4,400 year-old pyramids. •

Ancient Egyptians didn't stop with just pne pyramid. The Great Pyramid stands on the Plain of « Qizeh with two other monuments erected for kings and queens.

Dynabyte didn't stop with one 16k dynamic RAM, either, flow ' „ you can get 16k and 32k fully static RAM's that are built with the same unmatched engineering ability and manufacturing skill that went into Egypt's wonders of the ancient world.

When we say built, we mean completely built. Assembled, tested and burned in. We don't leave anything undone. That way, you can buy any Dynabyte memory and know that it is backed by a factory guarantee for one full year. Kits and semi-kits can't say that.

Our 16k static and our 32k static are available with either 250 ns. or 450 ns. access time. Our 250 ns. module is completely compatible with the 4MHz Z-80A processors. The 450 ns. modules are compatible with the 8080 and the faster 3MHz 8085 processors.

The Great 16k Static Memory. 250 ns., $555.450 ns., $525.

• 4k block addressing along 4k boundaries

• Bank Select

•i Write Protect with alarm for

• each 4k block

• full Schmitt trigger buffering * • No DMA restrictions

-| • Completes-100buscdm• patibility, including the Alpha Micro and Z-2. The Great 32K Static Memory. 250 ns., $995.450 ns., $925.

• 4k boundary addressing

• Full Schmitt trigger buffering

• No DMA restrictions

Why Dynabyte doesn't build memory kits

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

But how about testing it? Do you have the test programs and equipment? Do you know which memory test program uncovers pattern sensitivity? Or which finds shorted data bits but won't find address decoder faults?

We do. It's our business. We have the 200 MHz oscilloscopes, the logic analyzers, the burn-in chambers, and the test programs. We find the bugs, even the subtle ones.

Which lets you concentrate on computing.

i • Conservative thermal design N Completes-100compatibility, including the Alpha „.. Micro and Z-2. . — The Great 16k Dynamic Memory. $399.

• Highly cost effective i • No wait states'

• Transparent refresh

• 16k addressing boundaries

• Widest S-100 mainframe and disk system compatibility

All of Dynabyte's memories meet rigid industrial grade standards. Design, components, construction, testing and performance. But if a module ever needs repair, we provide factory service with 24 hour turnaround for both wananty and non-wananty work.

Ask for the Great Memories by Dynabyte at your local computer store. You can also pick up complete product information while you're there.

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

DUIiaiUITK

Builders of Great Memories

Circle 37 on inquiry card.

BYTE January 1978 29

The cost of replacing a

2102 programmable

memory which gave up the

ghost is deductible as a

repair cost, but upgrading

it to a 2102-1 or adding

another 4 K bytes of

memory to the system is

an improvement and must

be treated differently.

Depreciation

If you buy any income producing property or property used in your business which has a limited useful life that can be reasonably estimated, you may, during the years of its useful life, recover some of its cost in the form of depreciation. If, for example, you buy an item to use in your business that will wear out or need replacement in time, you can deduct a certain percentage of its cost every year of its estimated life. If you are using the item for nonbusiness as well as business purposes, you may only deduct the depreciation for the period of business use. Thus, if you buy a computer which will be used one third of the time for business and the other two thirds of the time for nonbusiness uses, only one third of its annual depreciation can be deducted as a business expense.

There are many ways of calculating depreciation. Tax law surrounding it is too complicated for thorough discussion in an article of this length, but since much of the expense of a small computer business arises from purchases of depreciable property, it is well worth a detailed study if you start your own computer-oriented business.

Taxes on Business and Business Property

This includes tax on business property (if you conduct your business on land you own and on which you must pay property tax); personal property tax, sales tax, gasoline tax, and the like if they were incurred in the ordinary course of business; state imposed corporate franchise tax; and, if you have employees, employment taxes. Of these, only sales tax (in applicable states) and gasoline tax are apt to be worth the computer entrepreneur's time as deductions, but be sure to deduct all that apply and are documented.

Other Business Property Deductions

If you rent an office from which you conduct your business, the rent is deductible. If you operate from your home, however, you get no such deduction except under very special circumstances which are discussed in greater detail below. Unless you are engaged in your business full time, however, attempting to get this deduction will almost certainly be more trouble than it's worth.

Routine repairs and maintenance of business property (the office, if any, the computer, etc) are deductible only if they do not increase the value, utility or life expectancy of the repaired item. Thus, the cost of replacing a 2102 programmable

memory which gave up the ghost unexpectedly is deductible as a repair cost, but upgrading it to a 2102-1 or adding another 4 K of memory to the system is an improvement and must be treated differently. If you carry business insurance, the premiums are deductible.

Salaries, Wages, and the Like

If you have employees, there are deductions for salaries, wages, commissions and numerous forms of employee benefits, but you may not deduct any salary, wage or compensation paid to yourself. If you claim deductions in these categories, be prepared to prove that the service paid for (eg: date entry) actually was rendered, that the payment for the service actually was made, and that the rate of pay was reasonable.

You may also deduct the fees of lawyers, accountants and the like whose services your business uses.

Financial Business Deductions

You may claim deductions for bad debts arising from sales or services, for interest on loans made for or by the business, and for a number of other more complex financial matters which arise from certain business tax breaks. Unfortunately, computer entrepreneurs are not likely to qualify for the tax breaks, so I merely mention their existence in passing.

Other Business Expenses

Most of your deductions are apt to fit into this category. If you're renting an office, you can deduct the costs of heat, light, telephone and trash removal. These are also deductible if you qualify for a deduction for conducting business in your home, but in any event you can safely deduct business long distance telephone calls. The cost of postage is deductible for all business correspondence including mailed advertisements and bills, as is any paper and printing expense which you incur for your business. Similarly, your investment in receipt books, file folders and other supplies used to maintain tax records is deductible.

One of the largest deductions of the computer entrepreneur will probably be for reference and research materials. If you purchase books or magazines which give you information which contributes to the success of your business (eg: an issue of a magazine containing a program for a service you subsequently sell), the cost of the publication is a deductible expense. Memberships in professional societies, subscriptions

30 BYTE lanuary 1978

Price/Performance no one else has put together.

r~

-^^

\r ■

M1KU

MSN

r

i

J

WB.1M. 1

••nasi 1

Sim f

^/f

->... .v'-1.-*

■

ft

HP^5r^

^.: -V,-.;;.,,

IMSAI Introduces the PCS-80/30 Integrated Video Computer

\H2 3 mHz microcomputer ^]3K ROM monitor

□ 2K RAM

~J 8 expansion slots

"2 14 mHz integrated intelligent

CRT (24 x 80) ] Intelligent Keyboard ]] Parallel interface 3] 2 serial interfaces

□ Graphic and edit CRT functions

3] 28 amp power supply

□ All for $1499* assembled and tested.

Software:

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

Memory Options:

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

Circle 51 on inquiry card.

Peripherals:

Printers, floppies—mix and match; standard, mini and high performance double density floppy disks on the same system (an industry first), Vi" magnetic tape drive, CRT and TV monitors.

Send today for your copy of the 250-page IMSAI PCS-80730 User Manual. Price $5.00. The cost of the manual may be applied towards your purchase of a PCS80/30 Integrated Video Computer. Use the coupon provided.

Gentlemen:

Send me the IMSAI PCS-80/30 User Manual, price $5.00. I understand that the $5.00 may be applied towards the purchase of a PCS-80/30 Video computer System.

Check/Money Order enclosed. Ami. $

Charge my Q BAC Q M/C

. Exp. Date:

SIR.

Address^

City

State/Zip

IMSAI 14860 Wicks Blvd.

San Lenndro. CA 94577

The Standard of Excellence in 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. Olher PCS-80 kits stun al 5699. Prices and specifications subject to change without notice.

to technical journals, the automotive expense incurred by your business, and books and business equipment having a useful life of less than one year can also be deducted.

A lot of things suddenly become deductible when you're a small business, with the result that care and good judgement are even more necessary than usual in filling out your tax forms. If you have any doubt about the legitimacy of a deduction or your ability to substantiate it, don't take it. In fact, the first year you file as a small business it's wise to go easy on everything while you become accustomed to the forms and laws. Then, as you grow more familiar with the ins and outs of tax for small businesses, you'll be able to claim more of your deductions with the certainty that, should you be audited, you'll be able to

support them adequately. Let's look at the additional tax schedules you'll need to fill out.

Schedule C (Form 1040)

This is the main schedule you'll have to worry about. Figures 1 and 2 show the front and back of the 1976 Schedule C, respectively. They have been filled out with the tax information on a fictitious computer entreneur. You can follow them through the discussion below.

At the top of figure 1 is a place for your name and social security number. This provides cross-indexing to your Form 1040, filed simultaneously. Below, in A through H, you indicate the general shape of your business: (A) what you do and produce, (B)

Figure J: Schedule C, "Profit (or Loss) From Business or Profession."

SCHEDULE C (Form 1040)

Profit or (Loss) From Business or Profession

(Sole Proprietorship)

Partnerships, Joint Ventures, etc., Must File Form 1065.

^ Attach to Form 1040. *■ See Instructions for Schedule C (Form 1040).

m

F. 3~. cO/AJSTWo

Social security number

A Principal business aetivitv (see Schedule C Instructions) ► WftyWBi SC2l«Ce5 praduct ^. f^6efl*lS, P£/.«JTpursGeSI

B Business name f ^J.^ilMk.MfS£k]SL .*!*!***£ C Employer idenlilicatien number ►_4*S**S

D Business address (number and slreet) llilit MlM ^?">'° . ,T"*/>(?.f . HuiLOlM* M

City. Slate and ZIP code ^.jMUttSSSSBiiM, US * ***** U

E Indicate method ol accounting: (1) ^ Cash (2( P] Accrual (3) Q Other *■

F Wete you required to tile Fotm W-3 or Form 1096 tor 1976 (see Schedule C Instructions)?

II "Yes," where tiled *■

G Was an Employer's Quarterly Federal Tax Return, Form 9J I, filed tor this business for any quarter in 1976?

H Method of inventory valuation *-, ..A^.P....JAJ l/wVTrfr.r Was there any substantial change in

the manner nt determining quantities, costs, or valu.ihons between the opening and closing inventories? (If "Yes," attach explanation) ■ . ■

No

f<

II

iii

m - 51

IS]

33° ?£$

is? Pi

1 Gross receipts or sales $..*7»T r.T.7... Less: returns and allowances $ rT.'.f-.P Balance ►■

2 Less: Cost of goods sold and/or operations (Schedule C-l, line 8)

3 Gross profit

4 Other income (attach schedule}

5 Total income (add lines 3 and 4) ■ . . . . . . ■ .

6 Depreciation (explain in Schedule C-3)

7 Taxes on business and business property (explain in Schedule C-2)

8 Rent on business property

9 Repairs (explain in Schedule C-2)

10 Salaries and wages not included on line 3, Schedule C-l (exclude any paid to yourself)

11 Insurance

12 Legal and professional fees

13 Commissions

14 Amortization (attach statement)

15 (a) Pension and profit-sharing plans (see Schedule C Instructions)

(b) Employee benefit programs (see Schedule C Instructions)

16 Interest on business indebtedness

17 Bad debts arising from sales or services

IS Depletion

19 Other business expenses (specify):

M^mLAfiLjiStHt

ib)7kLfPH^££u(!MP£f..&MiM£&..&*.fr.Pj*r,}.

(c)j?ft«aft£

wTMSH HermcvAL •,'R'c't"

(f) fli's/nQtZSMifif- PiUfessieML 'iaciifi'rs

mi^f/^e^iiun^ofil/£j^/VM£,

(k) Total other business expenses (add lines 19(a) through 19{j)) 20 Total deductions (add lines 6 through 19(k))

en

'4'o

Zj±

is i in &o is

"1*1

t 7#

K M

oo

ii

20

21 Net profit or (loss) (subtract line 20 from line 5). Enter here and c enter on Schedule SE, line 5(a)

Form 1040, line 29. ALSO

1

15(a)

9>)

Sfi

ASH

a.o

JZJl.fk o

A^f

O

is

6

<?.

O.

p

O

o ........g

"."..&. .Z...9.

6 6

*1

etfi

na

SO

53

oo to

m

oo so 66

CO

00

to so bo oo

(30

to

3.S

a*

— joiiig

SCHEDULE C-l.—Cost of Goods Sold and/or Operations (See Schedule C Instructions for Line 2)

1 Inventory at beginning of year (if different Ircm last year's closing inventory, attach explanation) . . .

1

0

oo

2

9

to

3 Cost of labor (do not include salary paid to yourself) . . . ,. . j

4 Materials and supplieslB*<VT4.«T ^^^.M&O^t.p 3. it ttf<™i?«:*l.

3 4 5 G 7 8

O

Ab

'ii

CO OO

6 Total of lines 1 through 5

_ ft.o.

o

OO

SUB

rW

Did you claim a deduction for expenses of an office in your home? Q Yes □ No

,«« a"a tase pot 7tte.it u/*etmvo*>, «« t>&ee.c,tmt>u /& mhmm *eee

OU 4*J

i rem 45 A

32 BYTE January 1978

the name under which you do it, (C and D) address, (E) accounting method, (H) inventory evaluation method, and (F and G) two bits of information you don't have to worry about unless you have employees. If you're selling a hardware item, you'll need to evaluate your inventory, if any, but as most computer entrepreneurs sell computer services, we'll leave that question for those who sell hardware to examine. The computer entrepreneur with paid employees is rare, so we can assume that in most cases both F and G can be marked "No."

The accounting method you choose in the beginning is the one you'll be stuck with forever, unless you file a request to change it with the IRS. If you choose a method other than "cash" or "accrual," that also must be cleared with the IRS, so most people select one or the other of the more commonplace

methods. The difference between the two methods hinges on when you can claim deductions, etc. In the accrual method, payments and bills are taken into account when they are due, not necessarily when the money changes hands. Thus, you can claim a deduction for a business expense which fell due in December on that year's taxes even if you don't get around to paying it until January. At the same time, if someone owes you money in December, you must pay your tax as if it had been received then, even if he/she doesn't get around to paying you until January (or June, for that matter). Using the cash method, bills and payments are taken into account when they are paid. Each method has its advantages and disadvantages, but I would recommend starting with the cash method because of its simplicity. When you can afford an accountant

Schedule C (Form 1040) 1976 Pa((0 *>

SCHEDULE C-2.—Explanation of Lines 7 and 9 '

Line No.

Explanation

Amount

Line No.

Explanation

Amount

$

$

SCHEDULE C-3.—Depreciation (See Schedule C Instructions for Line 6)

If you need more space, use Form 4562.

i. Description of property

b. Dito

c. Cost diother basil

d. Depreciation

■Mowed or allowable

in-prior years

e. Method of comiwlinii depreciation

f. Ufa

g. Depreciation (or

1 Total additional first-year depreciation (do not include in items below) . >

2 Other depreciation:

St*

U6Tf At r&erftAi

Afi >'f-*.i

L_

SCHEDULE C-4.—Expense Account Information (See Schedule C Instructions for Schedule C-4)

Enter information with regard to yourself and your five highest paid employees. In determining the five highest i' •■■■', employees, expense account allowances must be added to their salaries and wages. However, the informat-ort need not be submitted for any employee lor whom the combined amount is less than $25,000, or for yourself if your expense account allowance plus line 21, page l.is less than $25,000.

Name

Expense account

Salaries and Wages

Owner

1

mmm

m

2 _

3

4

5

(1) Entertainment facility (boat, resort, ranch, etc.)? .

(2) Living accommodations (except employees on business

. [1 Yes □ Ho (3) Employees' families at conventions or meetings? . . □ Yes Q No ? D Yes pi Ho (4) Employee or family vacations not reported on Form W-2? O Yes □ Ho

■ft u.s. mwjinmw ppimtinc office: im 0-Bl*-a7S --sa-o-'P-ino

Figure 2: back view.

Schedule C,

BYTE January 1978 33

Take an

even BIGGER

Byte!...

Fully assembled DEC

Writer II Keyboard

Printing Terminal at the

sensational low price

of only $1495!

with the Heathkit H1116-Bit Personal Computing System

Based on the world-famous DEC LSI-11, the Heathkit H11 and it's peripherals are designed to give you all the power and speed you need for total computing versatility. It's one of the few FULL 16-bit personal computers available to hobbyists today, and equivalent commercial versions would cost literally thousands of dollars more! As with the H8 system, complete "program-ready" software is supplied: the Heath/DEC PDP-11 software includes ED-11 editor; PAL-11S relocatable assembler; LINK-11S link editor; Absolute Loader; ODT-11X debug; IOX LP I/O executive program; DUMP-AB-PO and DUMP-AB-PB; plus BASIC and FOCAL; and it executes the PDP-11 /

40 instruction set! The software is supplied in easy-to-use paper tape format, perfect for the H10 paper tape reader/punch. And with Heath's complete assembly manuals and software documentation, you have the most solidly supported computer system you'll find anywhere. Sink your teeth into it today!

H11 LSI-11 16-Bit Computer $1295

H11-1 4K Memory 275

H11-2 Parallel Interface 95

H11-5 Serial Interface 95

H10 Paper Tape/Reader/Punch . .350 H36 LA36 DEC Writer II 1495

If purchased separately, *360500 Heath System Price $335000

Prices are mail order net F.O.B., Benton Harbor, Michigan. Prices and specifications subject to change without notice.

FREE

Heathkit Catalog

Read about computers and nearly 400 other easy-to-build kits.

Schlumberger

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

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

Name

Address

City

_ State.

CP-135

Zip

I

i

I J

Use coupon for

mail-order

catalog or bring

to store for

retail catalog.

AVAILABLE LOCALLY

Visit the Heathkit Electronic Center nearest you (Units of Schlumberger Products Corporation) and see our Complete Computer Line. Parts and service available. All kits displayed, and sold at slightly higher prices. ARIZONA-Phoenix, 65017

2727 W. Indian School Rd. 602-279-6247 CALIFORNIA

Anaheim, 92805

330 E. Ball Rd. 714-776-9420

El Cerrito, 94530

6000 Potrero Ave. 415-236-8870

Los Angeles, 90007

2309 S. Flower St. 213-749-0261

Pomona, 91767

1555 Orange Grove Ave. N. 714-623-3543

Redwood City, 94063

2001 Middlefield Rd. 415-365-8155

Sacramento, 95825

1860 Fulton Ave. 916-486-1575

San Diego (La Mesa, 92041)

8363 Center Dr. 714-461-0110

San Jose (Campbell, 95008)

2350 S. Bascom Ave. 408-377-8920

Woodland Hills, 91364

22504 Ventura Blvd. 213-883-0531 COLORADO - Denver, 80212

5940 W. 38th Ave. 303-422-3408 CONNECTICUT- Hartlord (Avon, 06001)

395 W. Main St. (Rte. 44) 203-678-0323 FLORIDA

Miami (Hlaleah, 33012)

4705 W. 16th Ave. 305-823-2280

Tampa, 33614

4019 West Hillsborough Ave. 813-886-2541 GEORGIA-Atlanta, 30342

5285 Roswell Rd. 404-252-4341 ILLINOIS

Chicago, 60645

3462-66 W. Devon Ave. 312-583-3920

Chicago (Downers Grove, 60515)

224 Ogden Ave. 312-852-1304 INDIANA - Indianapolis, 46220

2112 E. 62nd St. 317-257-4321 KANSAS - Kansas City (Mission, 66202)

5960 Lamar Ave. 913-362-4486 KENTUCKY - Louisville, 40243

12401 Shelbyville Rd. 502-245-7811 LOUISIANA - New Orleans (Kenner, 70062)

1900 Veterans Memorial Hwy. 504-722-6321 MARYLAND

Baltimore, 21234

1713 E. Joppa Rd. 301-661-4446

Rockville, 20852

5542 Nicholson Lane 301-881-5420 MASSACHUSETTS

Boston (Peabody, 01960)

242 Andover St. 617-531-9330

Boston (Wollesley, 02181)

165 Worcester Ave.

(Rt. 9 just west ot Rt. 128) 617-237-1510 MICHIGAN

Detroit, 48219

18645 W. Eight Mile Rd. 313-535-6480

E. Detroit, 48021

18149 E. Eight Mile Rd. 313-772-0416 MINNESOTA- Minneapolis (Hopkins, 55343)

101 Shady Oak Rd. 612-938-6371 MISSOURI - St. Louis (Brldgeton) 63044

3794 McKelvey Rd. 314-291-1850 NEBRASKA - Omaha, 68134

9207 Maple St. 402-391-2071 NEW JERSEY

Fair Lawn, 07410

35-07 Broadway (Rte. 4) 201-791-6935

Ocean, 07712

1013 State Hwy. 35. 201-775-1231 NEW YORK

Buffalo (Amherst, 14226)

3476 Sheridan Dr. 716-835-3090

Jericho, Long Island, 11753

15 Jericho Turnpike 516-334-8181

Rochester, 14623

937 Jefferson Rd. 716-244-5470

White Plains

(North White Plains, 10603)

7 Reservoir Rd. 914-761-7690 OHIO

Cincinnati (Woodlawn, 45215)

10133 Springfield Pike 513-771-8850

Cleveland, 44129

5444 Pearl Rd. 216-886-2590

Columbus, 43229

2500 Morse Rd. 614-475-7200

Toledo, 43615

48 S. Byrne Rd. 419-537-1887 PENNSYLVANIA

Philadelphia, 19149

6318 Roosevelt Blvd. 215-288-0180

Frazer (Chester Co.) 19355

630 Lancaster Pike (Rt. 30) 215-647-5555

Pittsburgh, 15235

3482 Wm. Penn Hwy. 412-824-3564 RHODE ISLAND

Providence (Warwick, 02886)

558 Greenwich Ave. 401-738-5150 TEXAS

Dallas, 75201

2715 Ross Ave. 214-826-4053

Houston, 77027

3705 Westhelmer 713-623-2090 VIRGINIA

Alexandria, 22303

6201 Richmond Hwy. 703-765-5515

Norfolk (Virginia Beach, 23455)

1055 Independence Blvd. 804-460-0997 WASHINGTON-Seattle, 98121

2221 Third Ave. 206-682-2172 WISCONSIN - Milwaukee, 53216

5215 W. Fond du Lac 414-873-8250

34

BYTE January 1978

Circle 48 on inquiry card.

to handle such matters, he/she can arrange to change methods if it becomes desirable.

The section labelled income comes next. The total received by your business for sales of products and/or. services goes on line 1. You may subtract from it any money lost through returned items, rebates and the like, but these aren't apt to arise in this business. Before completing the rest of this section, look at Schedule C-1 at the bottom.

Line 1 of Schedule C-1 lists beginning of year inventory. If you're dealing in services, this should be 0, and H (at the top) should be "no inventory." Line 2, similarly, will be 0, since you haven't bought any items to add to a nonexistent inventory. Cost of labor (line 3) will also probably be 0, since you can't include your own salary or wage and you probably don't have any other employees. Only lines 4 and 5 are likely to contain anything. Materials and supplies are the costs of the tapes, etc, on which you store a customer's data; the paper on which you write programs; the printout paper you use to output hard copy either during a run or to give the customer; the ribbon on your hard copy output device; and anything else in the way of purchased materials that is required for producing the service and/or hard copy you provide the customer. To play it safe, I always include here only documentable purchases of supplies made during the tax year and spell out the items and their prices so the total will make sense. On line 5 [other costs), show such costs as overhead expenses (eg: the cost of running the computer) and shipping costs (if you have to mail someone a printout, for example). I routinely leave line 5 blank, since it's easier to figure these costs with the other expenses of the same type under other business expenses (line 19). Total lines 1 through 5 to get line 6. Since you have no year-end inventory, line 8 should equal line 6.

Now enter the total shown on line 8 of Schedule C-1 on line 2 and subtract. Line 3 in the income section is then gross profit. Miscellaneous income if any (recovered bad debts, interest on business investment, etc) is line 4, and line 5 shows the total business income for the year.

The section marked deductions (lines 6 through 20) comes next. Depreciation (line 6) is calculated and explained in Schedule C-3 on the other side of Schedule C. Deductions for repairs (line 9) and tax on business property (line 7) are similarly itemized in Schedule C-2. Both depreciation and the other deductions mentioned in lines 6 through 19 have been discussed above, but an examination of the deductions shown in

lines 19a through 19j in figure 1 might be instructive. Line 19k, of course, is simply the total of these "other" expenses, and line 20 is the total of all business deductions.

You can always deduct the postage and telephone expenses your business involves. If you mail out a bill, an advertisement or a prospectus for your business, keep a record of the actual postage amount it requires. The IRS isn't interested in how many stamps you bought or an approximate figure. You must show dollars and cents actually spent for the business and nothing else. Unless you mail all business correspondence from a post office, getting a receipt for your stamps every time, this is a very hard deduction to document, but it can prove worth the effort since, with continually increasing postage costs, a business can involve a sizable postage expense. Similarly, if you make long distance telephone calls for your business, they are deductible and your phone bill and cancelled check can provide some of the necessary documentation. Keep a record of the business phone calls you make, showing the date, the number called, what person or company was reached at that number for business purposes, and a rough note of the purpose of the call and the length of time it involved. This is particularly important if you're doing business by long distance telephone with a friend or a member of your family, since the IRS will inevitably wonder how much of the call was business related.

Another item you can always deduct is any book, magazine or other work which you use as reference or research material. If the publication's business related information has a useful life of less than a year, then its price is fully deductible; if its usefulness exceeds a year it becomes a depreciable investment. For all practical purposes, it's rarely worth depreciating these references. In this field, information is apt to be outdated in a short time, so you might as well deduct the whole price the year you buy the publication. Be careful, though, to only deduct publications which contribute to your business, and keep the publication as evidence both that you bought it (along with the sales receipt) and that it is business related.

Advertising costs are also deducted here. This includes any expenses involved in preparing, printing and distributing advertising for your business. As usual, document the expenses as thoroughly as you can.

To keep all these records, record books, file folders and the like will be needed. These can be listed as supplies and their cost deducted here. Other supplies include any staples of your trade (tape cassettes, print

Routine repairs and maintenance of business property are deductible only if they do not increase the value, utility, or life expectancy of the repaired item.

Continued on page 80 BYTE January 1978 35

Letters

WANTED: MEDICAL APPLICATIONS

I have been reading your magazine with great interest. I would like contact with any of your readers who are interested in medical applications of computer technology, especially information on:

(1) Electrocardiogram interpretation and details on conversion, A/D, D/A, with appropriate interfacing for Z-80 processor.

(2) Software on any medical item especially diagnosis of endocrine, ovulation disturbances.

(3) Medicaid, Medicare, third party billing software.

(4) Business software.

Jonathan C Gibbs Jr MD

Catholine A Gibbs

Memorial Health Center

75 Harrison Av

lersey City NJ 07304

NEEDED:PROSTHESIS CONTROLLED BY COMPUTER

I would like to pose a problem to my fellow readers. Recently someone I know suffered a broken neck. He will be paralyzed from the neck down for the rest of his life. All he can do at present is to breathe, talk, see, hear, and nod his head. Someone is supposed to have on the market a microcomputer controlled wheel chair that is run by a breath or voice actuated terminal. It is not hard to imagine a keyboard that can be played like a harmonica, with optical switches set with reeds mounted on diaphragms to act as SPDT momentary contact switches.

The problem is this: Given the current technology in motorized wheelchairs and electromechanical devices (such as articulated arms, spoon holders and page turners), develop a microcomputer operating system that can be entirely controlled from a breath activated terminal. The operating system should not only control the chair, it should allow the operator to call up all of the usual microcomputer operating systems, such as BASIC and assembler. If the operator chooses to become his own programmer, then he should be able to teach his chair new tricks as well as using the system for entertainment.

Remember also the limitations. A

wheelchair can only carry so many batteries. The operator cannot afford to be stuck with an expensive, ope of a kind, poorly documented and inflexible system; if he has a programming or hardware problem, he shouldn't have to go to a highly paid engineering consultant for a fix. If the wheelchair runs away, the operator can't get off; the system for operating the wheelchair should have enough checks and balances to prevent inadvertent injury.

With the advent of the hobby computer, the time is ripe for victims of amputation and paralysis to take more control of their lives.

Don Baker Gloucester Pt VA 23062

You point out one of the most encouraging and heartening effects of research in robotics: application of this technology to improve the lives of severely handicapped people.

IBM 5100 PLUG INS, ANYONE?

We have an IBM 5100 32 K installed at our office. I have noticed many ads in your magazine for add on memory for other small systems, and wonder if anyone "out there" may have plug in memory cards to fit the 5100. I sure would like to hear from anyone who does.

NEW!

\ A mighty big

catalog about some mighty small switches.

This 44 page catalog consolidates the complete line of C&K small switches into a single, fact-filled, easy-to-read volume. It includes everything you need to know about toggles, rocker and lever handles, printed circuit mountings, snap-acting pushbuttons, 6 AMP alternate action and momentary pushbuttons, subminiature and microminiature pushbuttons, illuminated rockers, miniature power, slide, and thumbwheel switches— plus how-to-order information and a complete list of worldwide C&K distributors. Ask for your free copy and we'll show you a million and one ways to turn on the juice. C&K Components. Inc. 103 Morse Street. Watertown. MA 02172 TEL: (617) 926-0800 TWX: 710 327-0460 TELEX: 92 2546 Free Engineering Samples on Request

AD Phelps

Hood River Distillers Inc

POB 240

Hood River OR 97031

NEEDED: INFORMATION ON

COMPUTER CONTROLLED

HYDRAULICS

I am an amateur computer hobbyist interested in computer controlled applications. I would like to know if you have any information on sources of miniature or small scale hydraulic components.

Peter Woodall

1645 DeMaisonneuve Blvd #609

Montreal, Quebec

CANADA H3H 2N3

We do not have any information on this subject, but perhaps a reader might care to provided a tutorial on the control of hydraulic systems from computer outputs. As a component of practical robdtlc systems, hydraulic technology might well be worth exploring.

TOWARD SMARTER MACHINES

Forgive me, but I feel a strong urge to comment on the statement made by Mike Rivers in the September 1977 BYTE [Letters, page ISO}.

When people take a particularly strong interest in a subject, they genContinued on page 130

36 BYTE January 1978

Circle 11 on inquiry card.

Oispcis's

Circuit

Qellsp

Photo I: The prototype board for the expanded digital voltmeter.

Add More Zing to the Cocktail

Last month (page 76) brought you a design for an 8 channel 3 1/2 digit 0 to 2 V digital voltmeter (DVM) interface. The article introduced multiplexed analog data acquisition by means of a construction project.

I'm sure that the majority of the readers who have built the DVM will be satisfied with the results. There is of course that small group of problem makers who don't believe the whole world exists in the range from 0 to 2 VDC: a point well taken.

Actually, I planned to expand the capabilities of the basic DVM all along. I'll elaborate in detail; the end result will be a DVM interface with these additional specifications:

Super Cocktail DVM

8 programmable input channels

AC or DC capability

programmable gain of 1, 10, or 100

ranges of 0 to 200 mV, 0 to 2 V, 0 to 20 V,

or 0 to 200 V

input overvoltage protection

I had hoped that by presenting the basic 0 to 2 V interface first, more readers would attempt to build it due to its low cost. The extra capabilities presented this month can

be added directly to the previously described hardware interface.

A Quick Review of the Interface Hardware

This DVM is designed around the Motorola MC14433 3 1/2 digit low power complimentary MOS analog to digital converter. The MC14433 is a modified dual ramp integrating analog to digital converter with multiplexed binary boded decimal (BCD) output. With the resistor values chosen it will perform approximately 25 conversions per second.

The full scale voltage value (ie: the value represented by the 3 1/2 digits after any input voltage division) is set by an MC1403 voltage reference integrated circuit. With 2.000 V applied to the Vp>ef input of the MC14433, full scale is ±1.999 V. If 0.200 V is applied, full scale would be ±0.1999 V or ±199.9 mV.

The MC14433 can directly drive one LS TTL load. Since not all parallel input ports are LS TTL compatible, 74LS04s act as buffers and drivers on all digital voltmeter integrated circuit output pins. Data output is of course inverted and must be complemented before use.

Steve Ciarcia

POB 582

Glastonbury CT 06033

BYTE January 1978

37

I9ITEIA2-5S

RELAY OR EQUIVALENT "

(TYPICAL FOR 81

000000000 00 00 00 000

87 B6 B5 B4 B3 B2 Bl BO Bl BO B7

B2 Bl BO

PORT 003 INPUT

PORT 002 INPUT

PORT 003 OUTPUT

^CI|N0 5

^HN0 6

^C>0 7

-w

Vj

-</<*

—ON0 8

T I «sv

! U

Figure la: The modified digital voltmeter, an expansion of last month's basic design. Changes include the addition of an input multiplexer, made up of eight dual in line package relays, and IC9, a J of 10 decoder. The modification allows the voltmeter to handle a wider variety of Input voltages, both AC and DC. All resistors are 5% 114 W, and all capacitors are TOO V ceramic, unless otherwise indicated.

38 BYTE January 197S

Number

Type

+5 V

GND

-5 V

IC1

MC14433

24

12

13

IC2

1403

1

3

IC3

74LS04

14

7

IC4

74LS04

14

7

IC5

7474

14

7

IC6

CD4053

16

8

7

IC7

CD4053

16

8

7

IC8

CD4051

16

8

7

IC9

7445

16

8

Table I: Power wiring table for figure 1.

The data from the digital voltmeter to the computer is serial and parallel. There arc four digit select lines and four binary coded decimal (BCD) data lines:

pin 23 Q3 (Most significant bit)

pin 22 Q2

pin 21 Q1 BCD, digit value outputs

pin 20 Qo

pin 19 DS1 (Most significant digit)

pin 18 DS2

pin 17 DS3 Digit select outputs

pin 16 DS4

With respect to what the computer sees through the 74LS04 buffers, the digit select output is low when the respective digit is selected. The most significant digit (1/2 digit DS1) goes low immediately after an end of conversion pulse followed by the remaining digits sequencing from the most significant to the least significant digit. An interdigit blanking time of two clock periods is included internally to ensure that the BCD data has settled.

During the 1/2 digit (DS1), the polarity and certain status bits are available. Polarity is on Q9 and a 1 will indicate negative. The 1/2 digit will appear on Q3 and a 1 will indicate high.

Enhancements to the Basic DVM Interface

Photo I and figure 1 illustrate the fully modified DVM interface. It retains the basic interface structure outlined last month, but with some additional goodies. The interface is designed for attachment to decoded 8 bit parallel input and output ports and can be

+ 5V

+ 5V T

+

-IOOuF -L.i

IOV ^vIOOV

1—,.

I 1 J> ^klN752A -7^25v O^IOOV 330S1 IW

2 TO-I7V

* -5V

Figure lb: A circuit enabling the experimenter to derive —5 VDC from an existing power supply having any output from —12 to —17 VDC. —5 VDC is needed to power the various CMOS switches used in this design (see figure 1c).

I

4

(

i

I

, -/

+ I

soon

1

l_

W

Figure Ic: Pin diagram of a Sigma relay, type 191TE1A2-5S 14 pin dual in line package.

AX OR AY ^ 1

OUT < T

CTRL | Ns_

INPUT I ^~

14

"1

112

SPDT

^C I AX INPUT

13

-< I AY INPUT

CTRL

OUTPUT

AX AY

Figure Id: Functional description of one switching section of a CD 4053 CMOS switch. The device acts like a remote controlled single pole double

throw switch. Continued on page 44

BYTE January 1978 39

Ohio Scientific advances the state-of-the-art

of small computers.

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

Challenger IIP

Challenger IIP from Ohio Scientific is our unique personal computer with BASIC in ROM and 4K RAM for programs in BASIC.

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

Challenger IIP comes fully assembled and tested for only $598.00.

Challenger II

Challenger II ! from Ohio Scientific is a disk based computer capable of storing up to 500,000 : bytes of information on an Ohio Scientific dual drive floppy disk. Challenger II comes with 16K of RAM (the disk BASIC is automatically loaded into the computer so there is no need for ROM's) and our powerful Disk Operating System (DOS) which allows the computer to perform big computer functions like random access, sequential and index sequential files in BASIC, and I/O distributors which support multiple terminals and industry standard line printers.

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

Challenger III

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

Incredible as this is, a disk based Challenger III costs

only about 10% more than conventional single processor

microcomputers. A32K Challenger III with a

serial interface and a dual drive floppy disk

1 assembled and tested costs $3,481.00.

11679 Hayden • Hiram, Ohio 44234

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

40 BYTE January 1978

Meet Challenger IIP from Ohio Scientific.

Unlike any other personal computer available today

Complete with BASIC in ROM and 4K RAM, Challenger IIP is the ideal computer for programs in BASIC.

BASIC is there the instant you turn the computer on with a full 32 x 64 character video display. Challenger IIP also comes with an Audio Cassette Interface for program storage. The user simply connects a Video Monitor or a TV via an RF Converter (not supplied) and the machine is ready to use.

Challenger IIP is ideal for both the home user who is new to computing or the experienced user who wants expansion capabilities. Challenger IIP comes with a four slot backplane and is expandable via the full Ohio Scientific product line, which includes 15 system boards offered in over 40 different versions.

Ohio Scientific has always maintained upward

expandability from old models to new models, which is nice to know considering the rate at which technology is constantly improving. For example, Ohio Scientific's original 400 series products can be plugged right into the new Challenger IIP. And Ohio Scientific has 2 years of experience in building personal computers, so we're not new to this business unlike some of our competitors.

Complete with a full computer keyboard Challenger IIP comes fully assembled for $598 from Ohio Scientific.

Check the chart below and compare Challenger IIP with other BASIC in ROM computers. Unlike other personal computers, Challenger IIP has a much greater capacity for expansion and the capability to perform big computer functions with all of its big computer features.

Ohio Scientific

Other BASIC in ROM

Processor

Challenger IIP

Computers

6502A

6502 or Z-80

Clock

1 or 2 MHz

slower

Display (Lines/Characters)

32/64

25/40 or 16/64

Keyboard

Full Computer

4 Function

(Capacitive Contact)

Calculator Type or Full Computer (Mechanical Contact)

Display Characters

256

128 or 64

Lower Case

Yes

No

Plotting

Yes

Yes

Audio Cassette Interface

Yes

Yes

BASIC

8K By Microsoft

some have only 4K BASIC

String Functions PEEK, POKE, User

Yes

Not Always

Machine Language Accessible

Yes

Not Always

Optional Assembler/Editor

Yes

No

Disk Option Available Now

Yes

No

In Case Memory Expansion Ability

36K

Less

Expansion Boards Available Now

15

None

BYTE January 1978

41

Introducing three boards only Ohio Scientific could build.

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

500 CPU Board

This board gives you our ultra-fast 8K BASIC in ROM with plenty of user workspace (4K RAM) for as little as $298.00. Use it as a standalone or as the CPU in a large system. BASIC is there the instant you turn it on. And in the October issue of Kilobaud Magazine, our version of 8K BASIC came out the winner in a BASIC timing comparison test of all of our competitors. The 500 is the fastest around!

510 Systems CPU Board

This is our unbelievable triple processor board! Complete with the 6502A, 6800, and Z-80 processors, this board allows you to run virtually all programs published for small computers. Available in the Challenger III, the 510 board is ideal for industrial development and research applications. There isn't another triple processor board like the 510 anywhere, except at Ohio Scientific!

560Z CPU Expander Board

The 560Z board is our multiprocessing board with a Z-80 and 6100 chip. This board allows you to run several processors simultaneously and the 6100 chip lets you run powerful PDP8 software with the 560Z. The 560Z board is the only multiprocessing board available for 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 technology offers you other unique features such as Multiport Memories, Distributed Processing, Big Disks with up to 300 megabytes on line, and Advanced Software.

11679 Hayden • Hiram, Ohio 44234

42 BYTE January 1978

Announcing the most advanced disk anywhere for $6,000

The 74 megabyte disk from Ohio Scientific

C-D74 from Ohio Scientific is the ultimate storage device for small computers.

The C-D74 is the first Winchester technology disk for small computers making big system technology affordable and reliable for the small system not under maintenance contract.

The disk uses a non-removable sealed chamber drive with a unique rotary positionerto provide the highest performance disk available today.

The Ohio Scientific C-D74 can store all the records of a medium size company for instant access. And the Winchester technology of the C-D74 means that the drive can run 24 hours a day without worry of disk wear.

There are other important C-D74 applications in business computing and research in computing itself. The disk makes small computers practical for much larger jobs than formerly thought feasible, particularly since most business computing is disk bound and not computer bound.

C-D74 provides an unbelievable 35 millisecond average access time to any of 74 million bytes of information. With a 10 millisecond single track seek, the drive has an incredible data transfer rate of 7.3 megabits per second.

Recommended minimum hardware for the C-D74 is a Challenger with 32K RAM and at least 8K on a Dual Port 525 board, and a single or dual-drive floppy disk.

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

OHIO SCIENTIFIC DEALERS

American Microprocessors Equipment & Supply Corp.

20 N. Milwaukee Ave Prarieview, IL 60069 (312) 634-0076 Century 23

4566 Spring Mountain Rcl. Las Vegas. NV B9102 Computer Business RR #4 Box 910

Joplin, MO 64801 Computer Hobby Shop 4450 Trinity Avenue Salt Lake City, UT 84120

Computer Mart ot New York 118 Madison Ave. New York. NY 10010 (212) 686-7923 Computer Power P.O. Box 28193 San Diego, CA 92128 (714) 746-0064 Delaware Microsystems 92 E. Main St. #1 Newark, DE 19711 (302) 738-3700 Desert Data Microcomputer Sales P 0. Box 1334 Tucson, AZ 85702 (602) 623-6502 ll/B Computers 217 East Main St. Charlottesville, VA 22903 (804) 295-1975 Microcomp P.O. Box 1221 Fcnd-Du-Lac, Wl 54935 (414) 922-2515 Microcomputer Workshop 234 Tennyson Terr. Williamsville, NY 14221 (716) 634-6844

Omaha Computer Stert

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

REPRESENTATIVES

Abacuz Dita

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-0110 Yingco, Inc.

2 World Trade Cntr. Penthouse 107th Floor New York, NY 10048 (212) 775-1184

The state of the art in small computers.

call 1-216-569-3241

BYTE January 1978

43

Continued from page 39

polled by a machine language subroutine. More on this later.

The following is a summary of the interface by port allocations. (Note: I have assigned particular octal port numbers to each byte. These designations will run directly with the software driver provided. If the reader wishes to assign some other port numbers, this is fine, but remember to modify the driver software to reflect the changes.)

Command Output Byte (Port 003 Out)

B7

B6:

B5:

B4

B3 B2 B1 BO

= EOC enable or disable AC or DCselect 2.0 V or 0.2 V VRef select

= Gain Code

= Channel select, 0 to 7

(Disable = 0 Enable = 1) (AC = 0; DC = 1) (2.0 V = 0; 0.2 V = 1)

B4 B3

Gain

X1

X10

X100

N/A (will result in X1)

Status Input Byte (Port 002 In)

Photo 2: The Sigma dual in line package relay, type I9ITEIC2-5S, similiar to that used in the design of the expanded digital voltmeter's Input multiplexer.

Not used

Out of range (-1.999 V > V|N > 1.999 V

sion (—1f

= End of conversii

B7 = 1st digit

B6 = 2nd digit

B5 = 3rd digit

B4 = 4th digit

B3 j

B2 l BCD digit value

B1 i

B0 1

199.9 mV > V|N > 199.9 mV I

Data Input Byte (Port 003 In)

Most significant digit: when low true

B7 ,=

0

B6

B5 >

N/A

B4

B3 =

1/2 digit value

B2 =

Polarity

B1

N/A

B0 =

Ranging status bit

The most obvious change to the newly modified DVM board is the input multiplexer. Up to this point all the inputs were multiplexed through a CMOS CD4051 integrated circuit. This device performs quite satisfactorily for inputs in the range of 0 to 2 V. The maximum input voltage range it can handle is limited by its supply voltage (in this case ±5 V). Even if the supplies were increased to ±9 V (18 V absolute, which is the maximum supply for a CD4051B) a separate voltage divider would still be required at each input channel to keep the applied voltages within safe limits. To have a 0 to 200 V range selectable unit incorporating a CD4051 input maximum would require having eight separate programmable dividers and an overvoltage protection circuit on each channel in case the wrong divider values are chosen.

The preferred approach is to have only one divider network and one overvoltage circuit, but such an alternative requires that the input multiplexer be capable of handling all input voltage levels from 0 to 200 V! The answer is to use relays. Not the big 10 A clunkers you see in surplus catalogs, but the

new generation of (dual in line package) reed relays such as the Series 191 by SIGMA (see photo 2). These particular relays can be driven directly by TTL logic, exhibit maximum 1 ms bounce, and have a rated life of 100 million operations.

The new input multiplexer section consists of dual in line package relays RL1 thru RL8 and a 1 of 10 decoder, IC9. When a latched output port 3 bit channel address is impressed on the input lines of IC9, it puts a 0 voltage level on the output pin corresponding to that address and pulls in the proper channel select relay. The outputs of all eight relays are wired together and are next directed to the overvoltage and gain divider circuitry.

The input impedance of the DVM chip is very high (on the order of 1000 MO). Placing a 1 MO resistor in series with the relay outputs facilitates the addition of protection circuitry without compromising the interface's capabilities. This current limiting 1 MO resistor and two back-to-back zener diodes limit the absolute voltage seen by the MCI4433 to about ±4 V (The MC14433's absolute limit is its power supply range, even though its usable input range is ±2 V.). If the correct gains are chosen and programmed to the interface, this protection should never be required. But, no one is perfect.

In addition to this function, the 1 MO resistor is one leg of a programmable divider network. Figure 2 shows the input subsystem in simplified terms. An AC to DC converter is also included and will be explained later. SW1 and SW2, parts of IC8, represent the gain selection section. The

44

BYTE lanuary 1978

DYNAMIC RAMS

• Bank Selectable via Software

• Addressable in 4K increments

• On Board Refresh

ROM phantom line to inhibit RAM for ROM

Addressing Switch Selectable * Solder Mask Both Sides 'Top Quality FR-4 fire resistant

glass board material

. $395.0

.. 750.01

1,850.01

STATIC RAMS

M_ *W -yHT '4H_ •'* \ ' '

""" iim\iimMitmiimmuiiffltffl{fflQl£&

B

KSC-Z«16KSC-A

• Access times to 250 nsec.

• Address selectable by DIP Switc

• All Address, Control, and Data outlines fully buffered

• Low Power Consumption

• Meets all DMA requirements

• Solder Mask both sides of PC. boards

• Top Quality FR-4 fire resistant glass board material

(250 nsec). . 6KSC-A (250 nsec.;

.... $229.00

269.00

579.00

ALL BOARDS S-100 BUS COMPATIBLE

RIPHERAL UNIVERSAL PROCESSOR - PUP

Have you seen the Seals Peripheral Universal Processor-PUP-1 ? It is the newest member of the Seals family of performance products. The PUP-1 is designed to meet

jmands placed on a continuous-duty micro-computer by OEM applications. Write or call Seals factory direct for more information.

ORDER DELIVERY: FROM STOCK TO 30 DAYS

SEALS ELECTRONICS, INC.

10728 DUTCHTOWN RD. ■ CONCORD, TN. 37922

PHONE 615-966-8771

TELEX NO. 55-7444

Circle 96 on inquiry card.

BYTE January 1978 45

RLI

Figure 2: A simplified representation of the input section of the expanded digital voltmeter. The amount of gain and the AC to DC conversion option are selectable by means of CMOS switches.

to<D-*v

DVM >

INPUT

INPUTS •OCHANNEL I

<0 CHANNEL 2

<^ CHANNEL 3

•OCHANNEL 4

■O CHANNEL 5

OCHANNEL 6

"OCHANNEL 7

■OCHANNEL 8

GAIN INPUT

SELECTION OVER VOLTAGE PROTECTION

RELAY INPUT MULTIPLEXER

switches are illustrated in a unit gain DC input mode. When an input relay is closed, its applied voltage is sent directly to the DVM integrated circuit input through the 1 M£2 resistor. The AC to DC converter is switched out of the system and with both SW1 and SW2 open, no dividers are in the circuit. If 1.400 V is applied through a closed relay, the DVM will read 1.400 V for that channel. If, on the other hand, 150 V is suddenly switched in on another relay with this SW1 and SW2 setting, the chips would be fried were it not for Z1 and Z2. At voltages of less than 4 absolute (±4 V) the diodes do nothing. When inputs exceed this absolute value, Z1 and Z2 clamp them to 4 V. The' data acquired by the computer will indicate an out of range condition, since it is over 2 V, but at least it will not have evaporated.

How Do We Read 0 to 200 V Inputs?

Closing switch 2 forms a 10:1 divider network. If 8 V is applied and switch 1 is closed, the result is:

VA =

VR1 + R2j

\l.111 MQ,)

0.799 V 0.800 V

X R2

X 111 K

As you can see, the result of closing SW1 and applying the 111 K resistor is to divide the 8 V by 10 to get 0.799 V. Proper trim

ming of this 111 K resistor will give an output of 0.800 V. This value is compatible with the DVM integrated circuit input range, and when read by the computer, will be equal to 0.800 V. The programmer should keep in mind that a divider is used on this channel and should multiply the result by 10 to obtain 8.00 V.

Closing switch 2 forms a 100:1 divider. The mathematics is the same except that the divider resistor is 11.11 K instead of 111 K. An 8 V input appears at the DVM input as 0.080 V, while 150 V becomes 1.500 V.

AC to DC Converter

An additional bonus of this interface is AC to DC conversion on any input channel. Figure 3 shows the schematic of the AC to DC converter section of the interface. Bit 6 of output port 003 controls the application of this function. When it is high, SW3 and SW4 are in the positions shown in figure 2. In this state the AC to DC converter is switched out of the circuit and the DVM gets its input directly from the divider section. When bit 6 is programmed to be a low level, switches 3 and 4 switch to their alternate positions and route the input Signal from the divider network through the AC to DC converter. The resulting signal is equal to the average RMS value of the applied input signal. This is basically the same type of circuit as the kind included in many single channel digital meters.

The AC to DC converter consists of three sections of an LM324, IC10. IC10A is a high impedance input buffer with variable offset adjustment. When the converter is switched into play, it must have a high input im

46 feYTE January 1978

Ss

£

*T>

VI & VII

are finally released!

Volume VI

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

As a bonus it also contains the Users Manual for our Firmware Ledger package. These 100 extra pages contain report formats, file creation routines and our very powerful program ACBS1 used to create the powerful file structured data base.

$49.95

Volume VII

Here is that Chess program you have been waiting for as well as a disk interactive Medical Billing package with patient history file.

Also included is our Processing package (revision 0).

disk interactive Word

$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 purchase orders over $50.

VOLUME

I —

$24.95

VOLUME

II —

24.95

VOLUME

III —

39.95

VOLUME

IV —

9.95

VOLUME

V —

9.95

OUR SOFTWARE IS COPYRIGHTED AND MAY NOT BE REPRODUCED OR SOLD.

Due to the numerous copyright violations on our earlier volumes — until further notice we are offering a REWARD leading to the arrest and conviction of anyone reproducing our software in ANY way without our written permission. This includes diskettes, paper and magnetic tape, cassettes, records, paper copies, etc.

©

SCIENTIFIC RESEARCH

220-B Knollwood Key Biscayne, FL 33149

Phone orders (800) 638-9194 Information 305-361-1153

AVAILABLE AT MOST COMPUTER STORES

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

■

urn .^^k.

BankAmericard

[master charge]

WW

honored

BYTE January 1978 47

INPUT BUFFER

AC TO DC CONVERTER

RIPPLE FILTER

Figure 3: Circuitry of the AC to DC converter used by the digital voltmeter. All resistors are I % except where shown.

27K -w\,—

SW5

443K

*-^\A, 1 I

DUAL RAMP INTEGRATION TIME CONSTANT NETWORK

(NOT ALL PINS ARE SHOWN)

ICI MC14433 VREF

20K wv—

IOK

15V

IOK

,'2.!* .»/_lGAIN TRIM

IN9I4,hvw y^-c. ADJUS

AC O INPUT

RESISTORS ARE PREFERABLY 1% FOR MAXIMUM ACCURACY

JST

OUTPUT

pedance to avoid loading down the divider network. ICI OB is the actual AC to DC conversion section. Its output is a current proportional to the AC input voltage. ICIOC converts this current to a voltage and provides ripple filtering. One consideration to keep in mind is that, since this is a multiplexing analog to digital converter, the usual DC blocking capacitor at the input of the AC to DC converter has been removed. Given the particular circuit impedances and desired frequency range the converter should cover, the input capacitor had to be removed because it couldn't respond quickly enough. The result is an AC to DC converter that will pass both AC and DC signals; only the AC converted signals should be used, however.

When a 1.0 V peak AC signal (60 Hz) is applied to the converter, the output should be +0.707 VDC. If by accident the AC converter is switched into a DC signal, the output of the converter will be 1.414 times the true DC input. Keep a close watch on your program command byte to the interface.

2.500V

2.000V

MCI403 REFERENCE

■6.8K

jo — »§I0K

SW6 200V

f

Figure 4: A simplified detail of figure I, showing the Vref and integration time constant circuitry.

POWER

WIRING

TABLE

NUMBER

TYPE

+ 5V

-5V

ICIO

LM324

4

II

Adding a 199.9 mV Range

Up to this point we have discussed additions to the basic circuit that allow range selections of 0 to 2 V, 0 to 20 V, and 0 to 200 V. Circuit changes can be incorporated to extend the DVM range in the opposite direction. Figure 4 illustrates the voltage reference and range selection setup of this interface. The MCI4433 can also be configured to cover a range of 0 to ±199.9 mV. When bit 5 of port 003 is low, switches 5 and 6 are in the positions shown. A ratiometric converter has a range determined by the applied VRef, which would be 2.000 V in this instance. With SW5 open, the integrating time constant is set by using a 470 K resistor (formed by the series combination of 443 K and 27 K). With bit 5 set to a 1, the converter changes its Vf^ef level to 0.200 V and its integration resistor to 27 K. These changes are the only ones necessary for 0 to 0.2 V range selection.

A Less Complicated Driver

The driver was explained last month in .detail. It was designed to be as fast as possible. The relay multiplexer added this month unfortunately cannot operate at that speed without modification. I have included anew driver subroutine written especially for this application (see listing 1).

The interface driver is a relocatable subroutine which is polled by a call instruction. The driver is written for page 140 (octal) but is easily relocatable. It occupies less than one 256 byte page of memory and is written for the Z-80 processor. It is especially designed

48

BYTE January 1978

WE BUILD QUALITY AND USER VERSATILITY INTO EVERY "BLUE BOARD"...

MB3 2K/4K EPROM Board Kit less EPROM $ 64.95

Kit with 8-1702A (1 us) 104.95 Kit with 16-1702A (1 us) 144.95

ry Board

ns 100 mw RAM 5109.95 29.95

MB6 8K Memory Board

Kit with 8K 450 ns 100 mw RAM Bare RC. Board

MB7 16K Memory Board Kitwith4KRAM S187.95 KitwithSK RAM 295.00

Kit with 16K RAM 525.00 Bare RC. Board 29.95

MBS 8K/16K EPROM Board

MB9 Static PROM/RAM Board

nput/Oulput, PROM and Universal Board Kit S 54.95

Bare RC. Board 29.95

uslc Synthesizer Board

i paper tape of MUS-X1

104 2-Parallo Input/Output

and 2-Sorttil Board

S149.95

And, we build just

about any board you'll

want for S-100 bus expansion.

When you're thinking about expansion look to the Solid State Music "blue boards:' You'll find quality and user versatility built into every one allowing you to expand your system in whatever direction you choose . .. and, we've been doing it for years.

Right from the start we design our boards with our customers in mind. Extra features are added that will aid in expansion, not hinder program design and development. All first class parts are used and they're checked to make sure you have years of trouble free operation. Plus, every kit comes complete with assembly instructions and user information to make assembly a snap and operation a pleasure.

Talk to your dealer today to get more facts about the "blue boards"

or write direct. Compare prices, quality and features. You'll find out

why more and more people are using Solid State Music "blue boards"

for their S-100 bus expansion.

SPECIAL BONUS OFFER An 8080 Monitor for 1/2 price!!!

vssembled boards also a t slightly higher prices

If you buy any of the Solid State Music kits or assembled boards you'll receive a SSM8080 Monitor complete with either eight 1702's or two 2708's and over 50 pages of software information. A $49.95 retail value. .. just$25.00. Hurry!

cybercDnn

2786 S

8 7726

nog s

$7727

(D1

Circle 101 on inquiry card.

Solid State Music 2102A Walsh Avenue Santa Clara, CA 95050 (408) 246-2707

We're the blue boards

Listing 1: An assembly language program for driving the MC14433 3 1/2 digit analog to digital converter, written for the Z-80.

140000

140000

3 40000

140000

1.40000

14CO00

140000

140000

:l 40000

140000

OOQ

000

140002

000

000

140004

000

000

140006

000

000

140010

000

000

140012

OOQ

000

140014

000

000

14001(f)

000

000

140020

000

000

140022

000

000

140024

000

000

140026

000

000

140030

000

000

140032

000

000

140034

000

000

140036

000

000

140040

140040

140040

140040

000

140041

000

000

140043

140043

140043

140043

140043

140043

173

140044

062

041

140

140047

346

007

140051

062

040

140

140054

335

041

000 140

1.40060

026

000

140062

137

140063

313

043

140065

313

043

140067

335

031

140071

140071

140071

140071

006

003

140073

072

041

140

140076

323

003

140100

315

24 3

140

140103

366

200

140105

323

003

140107

140107

140107

140107

333

002

140111

313

107

140113

050

372

140115

020

354

140117

313

117

140121

040

066

140123

140123

140123

140123

006

200

140125

315

232

140

140130

057

140131

017

140132

017

140133

017

140134

346

001

140136

036

000

140.140

313'

122

140142

04 0

002

140144

036

200

140146

140146

140146

140146

263

140147

335

167

000

140152

140152

140152

140152

313

010

140154

315

232

140

140157

346

017

140161

335

167

001

140164

140164

140164

140164

313

010

140166

315

232

140

140171

346

017

140173

33S

167

002

140176

0140 01 HO 0160 0170 0.180 0.190 0200 0210 0220 0230 0240 0250 0260 0270 0280 0290 0300 031.0 0320 0330 0340 0350 0360 0370 0380 0390 0400 0410 0430 04 4 0 0460 0470 0480 0490 0550 0560 0570 0580 0590 0600 0910 0920 0930 0940 0950 0960 0970 0980 0985 0990 1000 1005 1.010 1020 1030 1040 1050 1060 1070 1080 108S 1090 1100 11.10 1120 1130 1140 1150 1160 1170 1180 1190 1200 1210 1220 1230 1240 1440 1450 1460 1470 1480 1500 1510 1520 1530 1540 1550 1560 1570 1580 1590 1600 1610 1620 1630 1640

DIP EOU 3

SIP EQU 2

COP EQU 3

EEOC EQU 200

be or: EQU ooo

*

*

* CONVERTED CHANNEL DATA BUFFERS *

000000

000000

000000

000000

000000

000000

000000

000000

000000

000000

000000

000000

000000

000000

000000

oooooo

DATA INPUT PORT NUMBER STATUS INPUT PORT NUMBER COMMAND OUTPUT PORT NUMBER ENABLE EOC INPUT DISABLE EUC INPUT

CHANC

CHAN! CHAN'.'

CHAN4 CHANS CHAN6 CHAN7

Did

DW DW

DW DW DW CHAN3 DW DW DW DW DW DW DW DW DW DW

*'INTERMEDIATE DATA BUFFERS

*

CHAN DB 000 CURRENT CHANNEL NUMBER

CCP DW OOOOOO COMMAND CHANNEL PARAMETER

*** START A/D CONVERTER

*

START

LD

A.E

LB

(CCP)rA

AND

LD LD

007

(CHAN).A

IXrCHANO

1... D LD

D t 0 E , A

SLA

E CALCULATE

BUFFER OFFSET

SLA

E

ADD

IXrDE

* SELECT CHANNEL AND START CONVERSION *

LD Br 3 SET CYCLE COUNT SCSC LD A.(CCP)

OUT COP CALL DELAY OR EEOC OUT COR

SELECT CHANNEL

ENABLE EOC OUTPUT COMMAND A/D CONVERTER

* WAIT FOR EOC

*

UEOC IN SIP

BIT 0,A

READ CONVERTER STATUS

TEST FOR EOC JR ZrUEOC JUMP IF NOT READY DJNZ SCSC

BIT 1>A TEST FOR OVERANGE JR NZrOVER JUMP IF TRUE

* CONVERSION DONESPROCESS FIRST (MSD) DIGIT

*

SELECT DIGIT 1

WAIT AND READ DIGIT 1

MSDO

LD Br 200

CALL RDIG

CPL

RRCA RIGHT

RRCA

RRCA

AND 1

LD E»0

BIT 2rD

JUSTIFY DIGIT VALUE

ISOLATE

INITIALIZE STATUS BYTE

TEST POLARITY JR NZrMSD3 JUMP IF POSITIVE LD Er200 LOAD POLARITY SIGN

* SAVE MSD AND CURRENT POLARITY *

MSD3 OR E ADD POLARITY SIGN TO MSD LD ;iX+0)rA SAVE IN DATA BUFFER

* PROCESS 2ND DIGIT *

RRC B SELECT DIGIT 2 CALL RDIG WAIT AND READ DIGIT AND 017 ISOLATE LD (IXTl)rA STORE SECOND DIGIT *

* PROCESS 3RD DIGIT *

RRC B SELECT 3RD DIGIT

CALL RDIG WAIT AND READ DIGIT

AND 017 ISOLATE

LD (IX+2).A STORE *

50

BYTE January 1978

Listing 1, continued:

14017(4

1650

*

'ROCESS 4TH DIGIT

140176

1660

*

140176

313

010

1670

RRC

B

SELECT 4TH DIGIT

140200

315

232

140

1680

CALL

RIlIG

WAIT AND READ DIGIT

140203

346

017

1690

AND

017

ISOLATE

140205

33S

167

003

1700

LD

(IX+3)

iA STORE

140210

311

1710

RAPUP

RET

140211

1720

*

140211

1730

* L

-OAD

2.000 OVERRANGE VALUE INTO Bi'HA

BUFFER

140211

1740

*

140211

076

002

1750

OVER

LD

A. 2

LOAD MSD VALUE

140213

335

167

000

1760

LD

(IX+O)

iA

140216

257

1770

XOR

A

140217

335

167

001

1780

LD

(IX-H )

ni LOAD LSD VALUES

140222

335

167

002

1790

LD

(IX+2)

A

140??S

335

167

003

1800

LD

(IX+3)

A

140230

030

356

1810

JR

RAP UP

140232

1870

*

140232

1880

*

140232

1890

* r

<EAD

DIGIT ROUTINE

140232

1900

*

140232

333

003

1910

Rin a

IN

DIP

READ DATA BYTE

140234

057

1920

CPL

CONVERT TO HIGH TRUE

LOGIC

140235

127

1930

LD

D r A

SAVE COPY

140236

240

1940

AND

B

TEST FOR GIVEN DIGIT

READY

140237

050

371

1950

JR

ZrRBIG

JUMP IF NOT

140241

172

1960

LD

Ail)

RESTORE A REGISTER

140242

311

1970

RET

RETURN TO CALLER

140243

016

377

1980

DELAY

LD

C.377

140245

015

1990

DEI

.1

DEC

C

140246

310

2000

RET

Z

140247

030

374

2010

JR

DELI

to run with an Extended BASIC which has instructions to access memory and 10 ports, and can call a machine language program.

The driver is exercised by a call instruction. In Digital Group Maxi BASIC, the call instruction looks like this: LET X=CALL (24611,64). The BASIC interpreter goes to decimal location 24611 to execute the call and decimal 64 is put in the DE register pair. To the driver, this call is a signal to perform an analog to digital conversion. The contents of the DE register tell it which channel to convert, whether it should be AC or DC, and which Vp^gf and gain to use. One channel is converted every time the driver is called. The information sent in the DE register at the time of the call is the command output byte (port 003), and each bit has the designations previously listed. The only difference is that bit 7 (the enable disable bit to the analog to digital converter) is sent out as a 0 when doing a call. The driver will set it to an enable condition after it has pulled in the proper relay and allowed a 1.3 ms bounce delay.

When the driver concludes its operation, it has acquired a 3 1/2 digit voltage reading from the DVM which is represented by four bytes. These four bytes are placed in a table in memory. The eight channels of data constitute a 32 byte table. The location of a particular channel's data can be found by a simple expression:

4 byte data location

starts at L+ [4(N-1)]

where L = starting address of table N = channel number (1 to 8)

OP-BOA quality en

■ eade i|tpfifi punched tape . iasf>; ,,.ii.i ( an pull ii through (0 5 000 Each unit includes a custom..optical.: sensor at ray, high speed data buffers and all required handshake logic to interface with .any microprocessor parallel I/O port. Check our specs. AT OAE WE MAKE QUALITY AFFORDABLE!

Available at quality computer stores everywhere. (Or, add $2.50 for domestic shipping and handling — CA res. add 6%.)

SQCOO

!*?** AST

OAE

Oliver Audio Engineering, Inc.

676 West Wilson Ave Glendale, CA91203 (213) 240-0080

Circle 80 on inquiry card.

BYTE January 1978

51

Listing 2: A supervisory program for controlling the expanded digital voltmeter written in extended BASIC.

120 REM S CHANNEL 3 1/2 DIGIT AC/DC PROGRAMABLE RANGE DVM ■S.CtARCIA

1.30 REM REV, 1.9

1.40 REM BOARD CHECK OUT PROGRAM

150 REM

160 REM

1/0 I ET MKM576

180 REM THIS IS PAGE 1-10 (OCTAL)

190 LET M2=24611

200 REM [HIS IS THE CALL ADDRESS

2L0 REM

220 PRINT

2.50 PRINT

240 PRINT"DO YOU WANT ID SCAN PREVIOUSLY CHOSEN CHANNELS OR"

250 PRINT"SELECT NEW ONES ? SCAN OR SELECT OR STOP"

260 INPUT St

265 (E 3*="STOP" THEN GOTO 2000

270 IF S*="SCAN" THEN GOTO 830

280 PRINT"SELECT ALL VALUES OR CHANGE ONE CHANNEL"

290 PRINT "AM.. OR ONE" 5 I INPUT S*

300 IF S'IK>"ONE" THEN GOTO -120

310 PRINT

320 print"which channel do you wish to change "» !input c

330 print'presently chosen values are "

340 ie i:iu;:> = i then ri=.2 else r1=2.0

350 print"uref. -"irl!" volts divider bain is x'sfcoj" conditioning is for

360 if c<c)='l then print"dc" else print"ac"

370 let a<c> = 1 sgosub 590

380 QOSUB 750

390 PRINT"ANOTHER CHANNEL TO CHANGE ? Y OR N"i :INPUT R*

400 IF RtO'N" THEN GOTO 320

410 GOTO 830

420 PRINT

425 PRIN r"INP U T CHANNEL P A R A M E T E R S "

430 PRINT'GAIN MULTIPLIER IS 1,10 OR,100'

440 PRINT "ENTER CHANNEL. PARAMETERS AS REQUIRED ■

450 PRINT (PRINT! PRINT

460 FOR C'=l TO a

470 PRINT'BO YOU WANT TO READ CHANNEL " i C; ■ Y OR N OR EXIT'*

■480 INPUT A$

490 IE A*="EXIT" THEN GOTO 240

500 LET A(C)=()

510 IF A$="N" THEN GOTO 710

S20 IF A*="Y" THEN LET A<C)=1

530 IF A*<>"Y" THEN GOTO 470

540 GOSUB 590

550 GOTO 700

560 REM

570 REM

580 REM THIS IS THE PARAMETER SETTING SUBROUTINE

590 PRINT"GAIN ",

600 INPUT B(C)

610 LET F(C)=-B<C)

620 LET E<C)==0

630 IF B<C)==10 THEN LET E<C)=8 (GOTO 650

640 IF B(C)=100 THEN LET E(C>=16 SGQTO 650

650 PRINVENTER 1 FOR DC OR 0 FOR AC",

660 INPUT C(C)

670 PRINT"ENTER 1 FOR .2 VOLT, OR 0 FOR 2.0 VOLT DVM VREF.'i

680 INPUT D<C)

690 RETURN

700 PRINT

710 NEXT C

720 REM XI TO X8 ARE THE CALL SETPOINTS

730 GOSUB 750

740 GOTO 810

750 FOR J=l TO 8

760 LET X< J)=64*C( J)+32*D< J)+E( J)+J-l

770 REM X<J) IS LOADED WITH THE BIT PATTERN WHICH IS

730 REM PUT IN THE DE REG. PAIR DURING THE CALL INSTRUCTION

790 NEXT J

800 RETURN

810 PRINT

820 PRINT

830 REM THIS ROUTINE DETERMINES WHICH CHANNELS ARE TO BE CONVERTED"

840 FOR C=l TO 8

850 IF A(C)==0 THEN GOTO 870

860 LET H=CALL(M2rX(C))

870 NEXT C

880 REM THIS ROUTINE PRINTS THE VALUES IN THE MEMORY TABLE

890 LET Z=A(1)+A(2)+A(3)IA(4)+A(5)+A(6)+A(7)+A(8)

900 IF Z=0 THEN PRINT"NO CHANNEL PARAMETERS HAVE BEEN CHOSEN" IGOTO 450

910 LET D=M1

920 FOR L==l TO 8

930 GOSUB 1030

940 IF A(L)=0 THEN 990

950 IF 0(1... >==<> THEN GOTO 970

960 IF Yl>=,2 THEN PRINT"CHANNEL ■SL>" IS OUT OF RANGE" ! GOTO 990

52 BYTE January 1978

FIRST EASY WAY TO BUY A MINICOMPUTER

MINI 12 SPECIFICATIONS

Word Length

12 Bits

CPU

IM 6100fullystaticCMOS

device

Instruction Set

Identical to the Digital

Equipment Corporation

PDP-8E

Clock Rate

4MHZ

Major State Time

500NS

Serial interface

20 MA current loop

standard, RS-232

Optional

Baud Rate

110 Standard, Others

optional

Memory

8192 words standard,

expandable to 32 K words

Control Panel

PDP-8E compatible, with

additional functions

Parallel Interface

12 input and 12 output

lines

Real Time Clock

Programmable, from 10

MS to 40,95 seconds

Counter

Counts External Events

Expansion Bus

50 line, TTL compatible

terminated bus structure

Binary Loader

ROM resident.

Monitor Bootstrap

ROM resident.

Power Requirements

100/120/200/240 VAC,

50/60 HZ

Dimensions

2" high x 13" wide x 14"

deep

BUT

HOW'M I GONNA PAY FOR IT?

TLF offers 3 purchase plans:

1) CASH with order - and receive a BONUS CERTIFICATE worth $100 on selected MINI 12 accessories.

2) Send $350 with order and pay balance of $545 when ready to ship or COD to postman.

3) NO INTEREST EASY PAYMENT PLAN

HERE'S HOW IT WORKS:

STEP 1

Fill in coupon below and mail TODAY with your check for $195 to:

TLF

P.O. Box 2298

Littleton

Colorado 80161

Ox

And your wife will be happy too! In fact she might just buy it herself (for you of course) for Christmas.

Circle 109 on inquiry card.

You can use your BAC/ VISA, Master Charge or American Express too!

Make all cheques payable to TLF Corporation.

STEP 2

When your MINI 12 is ready to be shipped you send us $200 or pay postman COD.

STEP 3

The balance of $500 is paid in 4 equal monthly installments of $125 each.

TOTAL PRICE ONLY $895

WHAT COULD BE SIMPLER?

«TLF 1977

MINI 12 Computers @ $895 each as per the plan checked below:

Please enter my order for

1 □ Enclosed is $895 - I want the Bonus certificate. □ Send more information please.

2 □ Enclosed is $350 - I will pay $545 when you're ready to ship or COD when delivered.

3 □ Enclosed is $195 I will pay $200 when you're ready to ship and 4 monthly payments of $125 ea.

Check Money

Order„

BAC/VISA

Master Charge American Express

CardW

Intprhank U

FxpDatp

Namp

Phnnp

AHHrpss

City

TLF Corporation Telephone

P.O. 303

State

Box 2298 922 6241

Zip Littleton Colorado 80161 Telex 454541

BYTE January 1978

53

Listing 2, continued:

;l;- is out of range- sgqto 9?o

970 IF Yl>=2 THEN PRINT"CHANNEI

980 GOSUB 1230

990 NEXT L

1000 GOTO 170

1010 REM

1020 REM

1030 REM THIS ROUTINE EXAMINES THE MEMORY TABLE

1040 REM AND CONVERTS THE 4 BYTES TO A 3 1/2 DIGIT VOLTAGE

1050 LET Q1=EXAM(D)

1060 LET Q=01

1070 IF Ql>=128 THEN LET Q=CU-12B

1080 D=D+1

1090 LET W=EXAM<B)

1100 D=D+1

111.0 LET E>EXAM(D>

I 120 D = D+L

1130 LET R==EXAM(D>

1140 LET I Ml

11.50 LET Y=Q+(.1#U) + C.01*E) + (.001*R)

11A0 LET Y1--Y

1 1.70 LET Y=D(L)*Y

1180 IE D(L)==1 THEN LET Y1==Y/10

1190 RETURN

1200 REM

1210 REM

1220 REM

1230 REM THIS SUBROUTINE PRINTS OUT THE VOLTAGE VALUES

1240 PRINT'CHANNEL "»L$" IS •}

1250 IF QK128 THEN PRINT" "i ! GOTO 1270

1260 IF Ql>=128 THEN PRINT"-"!

1270 IF D'.L)sl THEN PRINT X7F4!Yi;" VOLTS ") SGOTO 1310

1280 IF B(L)=100 THEN PRINT ZSF1SY!" VOLTS ")

1290 IF B<L>=*10 THEN PRINT Z5F2(Yi" VOLTS "t

1300 IF B(L)=1 THEN PRINT X6F3ttf VOLTS ■)

1310 IF CCL)=0 THEN PRINT"AC"P

1320 PRINT

1330 RETURN

2000 END

READY

Listing 3: A sample of the program in listing 2 being used to read five different inputs.

DO YOU HANI TO SCAN PREVIOUSLY CHOSEN C SELECT NEW ONES ? SCAN OR SELECT OR S

''SELECT

SELECT All. VALUES OR CHANGE ONE CHANNEL

ALL OR ONFTAU...

INPUT CHANNEL PARAMETERS

GAIN MULTIPLIER IS IrlO OR.100

ENTER CHANNEL PARAMETERS AS REQUIRED

HANNELS TOP

DO YOU WANT TO READ CHANNEL 1

GAIN Tl

ENTER 1 FOR DC OR 0 FOR AC ?1

ENTER 1 FOR .2 VOLT, OR 0 FOR 2.0 VOLT

Y OR N OR EXITTY

DVM VRET CIR N OR

DO YOU WANT TO READ CHANNEL 2

GAIN ?1

ENTER 1 FOR DC OR 0 FOR AC ?1

ENTER 1 FOR .2 VOLT. OR 0 FOR 2.0 VOLT DVM VRE

DO YOU WANT TO RE:AH CHANNEL. 3 Y

DO YOU WANT TO READ CHANNEL 4 Y

DO YOU WANV TO READ CHANNEL 5 Y

1)0 YOU WANT TO READ CHANNEL 6 Y GAIN 710

ENTER 1 FOR DC OR 0 FOR AC ?1

ENTER 1 FOR .:>. VOLT, OR 0 FOR 2.0 VOLT

DO YOU WANT TO READ CHANNEL 7 Y

GAIN T10

ENTER 1 FOR DC OR 0 FOR AC '?0 ENTER 1 FOR .2 VOLTv OR 0 FOR 2.0 VOLT

OR N OR

OR N OR

OR N OR

CTR N OR

DVM VREF

OR N OR

DVM VREF OR N OR

DO YOU WANT TO READ CHANNEL 8

GAIN 7100

ENTER 1 FOR DC OR 0 FOR AC ?1

ENTER 1 FOR .2 VOLT; OR 0 FOR 2.0 VOLT DVM VREF.TO

CHANNEL 1 IS. 1.515 VOLTS

CHANNEL 2 IS .114 VOLTS

CHANNEL A IS - 9.48 VOLTS

CHANNEL 7 IS 9.40 VOLTS AC

CHANNEL 8 IS 118.2 VOLTS

.•?o

EXIP'Y

.?0

EXTTTN EXIT7N EXITTN EXIT7Y

.?0 EXITTY

.TO EXITTY

To use the converter with BASIC, the program merely calls for a particular channel conversion and then extracts the appropriate data from the table. Listing 2 is a BASIC program which details the entire procedure.

CAUTION:

One caution should be kept in mind when using this interface to measure AC signals: the ground on the interface board is the same ground as the computer. If vou use the interface board to read 115 VAC line voltage, a potential short circuit exists unless either the computer or the measured voltage is isolated. Since isolating the computer equipment would constitute a violation of many electrical codes, only isolated AC signals should be read. A common measurement case which meets this criterion is the AC secondary section of a low voltage power supply such as the unit which runs your computer.

Conclusion

I often see construction projects which are beyond the means of some experimenters. With these two articles I've attempted to reverse the trend by giving the complete design of a low cost DVM interface. By adding more components, such as relays, this interface can become a full fledged data acquisition system.

I'm sure by now, after seeing designs from me for a serial 10 interface, parallel IO, digital to analog converter, and now an analog to digital converter, most readers will realize that I'm constructing a complete computer front end for measurement and control applications in the home and lab. We still need 115 VAC IO interfacing, a real time and time of day clock, and a few other items. When we're finished we'll investigate closed loop control and interrupt drivers.

I am always interested in readers' comments on the ideas for applications. I work interactively, so don't hesitate to write me (and include a self-addressed stamped envelope for replies).

Next month: a memory jump detector!"

The following interface components are available postpaid in the continental US from: General Digital Corporation 700 Burnside Av East Hartford CT 06108 Kit 1: ICs 1, 2, 3, 4, 5 and 8 to build the 0 to 2 V 8 channel unit described in the first part of this 2 part series presented last month. S29.95 Kit 2: Printed circuit board with 44 pin edge connector which supports the circuitry for this month's expanded DVM interface as well as the basic unit and the components of kit 1. $64.95. Kit 3: Assembled and tested unit consisting of kits 1 and 2. $79.95

54

BYTE January 1978

the Processor

Terminal.

A logical forward step in Microcomputer design

the Processor Terminal. A new design by TEI and look at what you set... a complete, self contained microcomputer system with display and mass storase, a full keyboard and plenty of slot space for additional boards. And that famous TEI CVT power supply that makes brownouts a thing of the past.

Display — A15" high-resolution black and white video display with an optical filter face plate to reduce glare and improve type visability . .. Keyboard — Full upper and lower case ASCII detached keyboard with 8 programmable special function keys. Keyboard status indicators show

computer BUSY or READY And a 16-key numeric cluster pad set up calculator style .. . Disk Drive & Controller —

A Shugart SA-400 mini-floppy disk drive. Soft sectored with a capacity of about 150 KB. IBM compatible format. Controller will handle 4 drives .. . CPU -8080A based with a flexible design that allows you to implement a start up "jump to" operation to any dip switch selected byte address you choose. Merely turn on power or press RESET and you are off and running. Excellent for power failure automatic restart... Memory — 16K of static RAM memory Low power chips. Selectable address assignment and memory protect features ... I/O — 3P+3S input/output board. 3 parallel ports and 3 serial ports with selectable baud rates of 75 to 19,200. RS-232C and TTL outputs ... Video — A video board provides the support for the video display functions ... Mainframe — A 12 slot mainframe with a 17-amp CVT power supply motherboard assembly heavy duty aluminum cabinet, fan and washable filter. All edge connectors and card guides provided ... Software — CP/M disk operating system and BASIC provided on disk.

the Processor Terminal (Model MCS-PT 112) is fully assembled and tested.

n

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 CORP 5601 Bintliff Suite 515 • Houston, Texas 77036 • Phone: (713) 774-9526

Circle 17 on inquiry card.

BYTE January 1978 55

The disk system you want

at a price you didn't expect from a

company that understands systems.

56 BYTE January 1978

THE VISTA *50 FLOPPY DISCOUNT

We know that one of the biggest problems in personal computing is that you're buying with your own personal dollars.

That's precisely why you're going to like doing business with us.

We're Vista Computer Company, the personal computer systems brainchild of the business computer systems people at Randal Data Systems.

And our V80 Floppy Disk System is a perfect example of how were prepared to help you get the most out of your personal computing dollars.

$649 buys you the whole kit and kaboodle

The $649 you spend on a Vista V80 Floppy Disk System ($749 assembled) gets you everything you need:

An 80K byte minifloppy drive (assembled and tested) that can be powered directly by your 8080 or Z-80 computer. (Case and power supply optional.) An I/O cable and a single card, S100 buscompatible controller kit that handles up to four drives and includes a PROM for bootstrap loading (additional drives just $399). VOS, the most advanced microcomputer disk operating system available, and our BASIC-E compiler, designed to work with VOS, all on a

single diskette. Software functions include instantaneous program loading, named dynamic files, program editing, assembling, debugging, batch processing, and file copying on back-up diskettes.

All backed by the Vista 90-day warranty, membership in VUE (Vista Users' Exchange), and Dataforce, our associated service company with 115 locations throughout the country.

Test drive the V80 at your local computer store

Drop by your nearest computer store and run the V80 through its paces. Once you find out what it can do for you, you'll see that our combination of high performance and low price is hard to beat and easy to take.

We love to take orders

If you'd like us to ship you a Vista V80 Floppy Disk System, they're available now. Just send us a check or money order for the amount of purchase, or your BankAmericard/ VISA or Master Charge account number with expiration date and authorized signature. California residents add 6% sales tax. Uncertified checks require six weeks processing.

To place your order, or to obtain further information, call or write today.

Vista Computer Company, 2807 Oregon Court, Torrance, CA 90503. (213)320-3880.

Vi/tci

We never forget it's your pocket.

BYTE January 1978

57

A Floppy Disk Interface

David M Allen Electronics Consultant 1317 Central Av Kansas City KS 66102

Table I: Power wiring table for the integrated circuits used in figure I.

Once it would have been appropriate to begin this article with a paragraph justifying the use of a floppy disk in a hobbyist system. Today that paragraph is unnecessary for two reasons: First, most of the more ambitious microprocessor users have already convinced themselves of the need for fast programmable memory; second, a growing number of users have begun to discover that the hardware required to interface a floppy disk to a microprocessor doesn't

Number

Type

+5 V

GND

IC1

7400

14

7

IC2

74175

16

8

IC3

7400

14

7

IC4

2102A6

10

9

IC5

74177

14

7

IC6

74125

14

7

IC7

74125

14

7

IC8

7404

14

7

IC9

7416

14

7

IC10

7416

14

7

IC11

7404

14

7

IC12

7404

14

7

IC13

7408

14

7

IC14

2102A6

10

9

IC15

74177

14

7

IC16

74125

14

7

IC17

7430

14

7

IC18

7411

14

7

IC19

7410

14

7

IC20

74175

16

8

IC21

74177

14

7

IC22

74121

14

7

IC23

74177

14

7

IC24

2102A6

10

9

IC25

74177

14

7

IC26

74177

14

7

IC27

7474

14

7

IC28

7420

14

7

IC29

7430

14

7

IC30

7474

14

7

IC31

7474

14

7

IC32

7404

14

7

need to be very complex, and certainly not as expensive as some of the purveyors of professional equipment would have us believe. This article presents a straightforward way to control a floppy disk drive with a microprocessor.

While definitely not a project for a beginner, the interface itself is relatively simple and well within the grasp of anyone who has built other computer equipment. It is conceivable that people without an oscilloscope might be able to build the interface blindly and get it working successfully, but I strongly discourage them from doing so. A good oscilloscope, particularly one with dual trace and variable delay features, is highly recommended for testing the interface and drive during construction. Once built and working, the unit should not need any adjustments.

I do not attempt to provide all of the cookbook information necessary to thoroughly educate the novice in the ways of floppy disks. Rather, I provide an overview of one system, cover all the basic features and functions, and draw examples from a working system. I hope to encourage people to build their own systems as an alternative to buying someone else's.

This interface is intended for hardware sectored disks and disk drives, although the basic technique could be extended by the use of more on board buffer memory to permit the use of a software sectored format. This interface is specifically designed for the Memorex 651 drive, but the use of an on board buffer makes the interface independent of the associated processor's speed, and allows it to be used with virtually any processor. At least one person has used a similar interface with a 4004 for three years. The use of an on board buffer did not add to the chip count of the interface; if anything, it reduced it. The chip count is 31, and all chips are small or medium scale integration TTL with the exception of the buffer memory.

Circuit Description

Several basic functions must be provided

58

BYTE January 1978

The Dumb Terminal lets you put it all together.

With the new, lower-priced Dumb Terminal™ Kit, that is. Pick one up and escape, once and for all, the headaches of scavenged teletypes and jury-rigged TV sets. With just a little time and aptitude, you can have a live and working Dumb Terminal right in your own home, garage, or business. One that lets you get it all out of your system — or into it.

Forget the cheap imitations, with their overblown price tags and interminable lists of options. With the Kit, you can build yourself the same, old basic Dumb Terminal that's been selling over 1500 units a month. With basic, sensible features like a bright 12" diagonal screen. Fifty-nine data entry keys. 1920 characters displayed in 24 rows of 80 letters. Plus 33 positive action switches that let you activate functions like 1 of 11 different baud rates, an RS232C interface, or a 20mA current-loop. And more. Not bad for Dumb

All you need, besides the Kit, is some initiative, and a few basic tools — a good soldering iron, wire cutters, needle-nose pliers, and one or two trusty screwdrivers. The Dumb Terminal Kit provides you with everything else. Including an attractive cabinet, CRT screen, keyboard, PC board, and all essential

electronic components. Naturally, you also get illustrated, step-by-step assembly instructions, not to mention an easy-to-understand operator's manual.

So, if you'd like more input on the Dumb Terminal Kit, just fill out the coupon and we'll send you complete, free information.

Oh, and by the way, just by sending in the coupon, you will be made a charter member of the Dumb Terminal Fan Club. A select organization that will send you your own nifty Dumb Terminal Fan Club Kit, containing: an official certificate of membership; an autographed photo of the Dumb Terminal himself; and a bona fide membership card to prove irrefutably you're "One of Us'.' (Sorry, limit one kit per person.) And, if you include a trifling $6.00, you can have your very own Dumb Terminal T-shirt. (No limit at all on these.]

Simply mail the coupon and get the whole assortment. And find out why members of the Dumb Terminal Fan Club are some of the smartest people around.

Dumb Terminal. Fun Club.

Yes, I would: like more inforabout the incredible Kit. And don't ■oil me as-a Charter in the Dumb Terminal

"Dumb Terminal" is a trademark of Lear Siegler, Inc., /.. E.I.D./Data Products, 714 N. Brookhurst St, Anaheim, CA 92803, (800) 854-3805. In California (714) 774-1010. Circle 56 on inquiry card.

for an official Dumb Terminal T-shirtts).

Please make all checks and money orders payable to Le Ance & Reiser, OK?

Quantity and size(s) of shirt(s) required:. _S M L _XL

Rush this application to. Dumb Terminal Fan Club Headquartersc/o LeAnce & Reiser, EO. Box 17123, Irvine.-CA 92714.

Figure la: Schematic diagram for the floppy disk interface board. All inputs and outputs are designed and buffered for use with a Motorola 6800 processor and a Memorex 651 floppy disk drive.

H

z

3 O

UJ

Q.

0.

tr

UJ

u

<

1

t

Q.

(/)

if)

01

O

o

ui

O

X

UlUI

v

UJ

l->

wS

u

Q

-o

_lm

<

it

IT

So.

u. ID

1

Or 0 0 0

0 0 0 0

DO-0 DO-I DO-2 DO-3

0 0 0 0 0

DO-4 DO-5 DO-6 DO-7 £

0 0 0 0

DI-0

DI-I

Dl-2 DI-3

0 0 0 0

DI-4 DI-5

DI-6 Dl-7

VMA AI5 AI2 AI4

60 BYTE lanuary 1978

-B>

IC3D 7400

ICI2C 7404

^Cr1—1^>

PRE CLR

A0 Al A2 A3 A4 A5 A6 A7 AB A9

DATA OUT

DATA IN

AO Al A2 A3 A4 A5 A6 A7 A8 A9

READ

DATA OUT

DATA IN

AO Al

A2 I

A3 4

A4 2

A5 A

A6 A7 A8 A9

DATA OUT

DATA IN

IC3A 7400

K3

13 &/■ p 1

3/—Y

IC3C 7400

SEP CL0CK[3>

+5V

>Mi

+5V > 180

IC3I B ISO 7474

ICIID 7404

SEP DATA[3>

10

B

CEXT

RINT

CEXT A2 5

Al

<LT

300/iF

PR Q CLK D

9 9 ^N^

IC7

8

■ C7C ,IZ 74125

/77

TO > FIGURE lb

t-E>

ICI2A 7404

Kh

IC7B 74125

IC22 74121

<\

" in? n

£ HA /ICTD

74125

"ICI2D I'

7404

DI-2

W

IC7A 74125

DI-0

BYTE January 1978 61

in a floppy disk interface, regardless of the actual data transmission method. Outputting step pulses, receiving sector and index pulses, loading the data head, sensing and resetting the file unsafe error bit, and sensing the write protect tab on the diskette are functions which are largely universal to all disk drives. They are handled by the 74175 latches (IC2 and IC20) and 74125 bus drivers (IC6 and IC16) in figure 1. Software takes care of all necessary interlocking and timing relationships between these signals.

One minor exception is in the use of the sector pulses from the drive. I felt that the

IC8A 7404

•^7404 rV

4MHz CRYSTAL

Figure lb: Continuation of figure la.

r

|"°» ^ IOO.F

incorporation of a hardware counter (to convert the individual sector pulses into an address and relieve the processor of the necessity of providing this function in software) was too simple to be left out. The equivalent function in software would yield an excessive and unnecessary overhead in time and software. As such, the two counter packages, which provide the processor with a complete sector address rather than a series of sector pulses, were a welcome expense.

Data passage between the buffer memory and the disk drive is processor independent. The processor simply requests the desired transaction (read or write). Actual data movement is carried out solely by the interface circuits.

Movement of data in this system takes place in two phases, regardless of whether the transaction is a write or read. When writing, the processor loads the data destined to be recorded onto a sector of the diskette into the onboard buffer memory. When the entire sector's data has been assembled in this buffer, complete with necessary preambles, data separators, track and sector identifiers, postambles, and whatever else is needed by the chosen format, this block of sector data can be moved to the disk drive in a single operation. The actual operation does not occur until the processor commands the interface board to write.

After receipt of the write command the interface waits until it sees the leading edge of a sector pulse. This sector pulse sets a flip flop, IC30B, which remains set throughout the operation and resets on the leading edge of the next sector pulse. The entire transaction is therefore synchronous with the sector pulses. This same synchronization is present during a read operation as well. For example, reading of disk data into the on board buffer is started and stopped by sector pulses. In this way, format independence is accomplished because the entire sector is read into the buffer in a single operation. The processor is completely uninvolved with this transfer of data. It does not re-enter the picture until the read operation is complete, at which time it begins dissecting the received information. During this dissection process, the processor must search through the on board buffer looking for the beginning of data markers (and other landmarks of the particular recording format involved) to locate the desired data in the buffer and transform it from serial to 8 bit parallel form.

62 BYTE lanuary 1978

INDUSTRIAL"

WIRE WRAPPING TOOL

Model BW 520 is a battery operated wire-wrapping tool, also available in reversible models for wrapping and unwrapping operations. The rechargeable nickel cadmium battery is self contained in the handle of the tool. Also available with "Backforce" device to prevent overwrapping.

Uses any 24AWG thru 32AWG wrapping bits and sleeves.

Model BW520

jSjl

BATTERY

WIREWRAPPING

TOOL

,NLv*108.™

BATTERIES INCLUDED

m

OK MACHINE & TOOL CORPORATION

3455 Conner St., Bronx. NY 10475 / (212) 994-6600 / Telex 125091

BIT & SLEEVE NOT INCLUDED

Model BW928

NEW

r.

*

?v

BATTERY WIREWRAPPING TOOL

ONLY ^*W^m

BATTERIES NOT

I INCLUDED

BIT & SLEEVE NOT INCLUDED

INSTALLATION AND FIELD SERVICE"

WIRE WRAPPING TOOL

Model BW 928 is a battery operated wire wrapping tool, also available in reversible models for wrapping and unwrapping operations. Exceptionally useful for installation and field service work, or small production jobs. Available with "Backforce" device to prevent overwrapping.

Uses any 24AWG thru 32AWG wrapping bits and sleeves.

OK MACHINE & TOOL CORPORATION

3455 Conner St., Bronx, NY.10475 / (212) 994-6600 / Telex 125091

Model BW630

NEW

HOBBY"

WIRE WRAPPING TOOL

For AWG 30, .025" (0.63mm) sq. post, "MODIFIED" wrap, positive indexing, anti-overwrapping device.

OK MACHINE & TOOL CORPORATION

3455 Conner St.. Bronx. N Y 10475/ (212) 994-6600 / Telex 125091

BATTERY WIREWRAPPING TOOL

$34.95

BATTERIES NOT INCLUDED

COMPLETE WITH BIT & SLEEVE

Circle 79 on inquiry card.

BYTE January 1978 63

Note that, in this system, the actual SECTOR pulses from the disk drive are not used to start and stop the transactions; rather, they are divided by 2 in the first stage of the sector address counters. This means that although 32 physical sectors could be recorded per track on the diskette, this system will record only 16.

Each sector contains 256 bytes of data instead of 128. I did this to facilitate future double-density operation. The size of the buffer is 256 bytes of data plus some extra for preambles, checksums, and so on, for both single or double density operation. Only the number of sectors per track will be charged: they will increase from 16 for single density to 32 for double-density. For purposes of this article, single density operation is assumed.

The interface board knows nothing about the particular recording format involved, but merely collects a sector's worth of information (ie: everything appearing between two successive sector pulses) from the disk drive and gives it to the processor. The processor must know all about the organization of the data in the sector. The

software completely controls the organizing and formatting of this data.

Although it is feasible to configure the buffer memory as an 8 bit wide parallel buffer, the serial configuration has several advantages including the lowest cost and chip count. It also permits efficient utilization of low cost memory chips such as the 2102A. Although it would seem logical to use serial shift registers for the buffer, doing so destroys the processor's ability to randomly access the buffer. Another reason for using serial data transmission is that conversion to parallel format, when receiving data from the disk, would necessitate some form of data synchronization information so that the packing of the serial data into the parallel buffer can be coordinated. Without this information, bit 1 might end up in bit 8's location. This synchronization function must be provided in any case. Postponing the problem until a time when the processor is processing the data, instead of the time when the disk drive and interface are exchanging data, allows the interface hardware to be format independent. This means that, with little

Figure 2: Sequence of main events when reading from or writing to the floppy disk.

0-1.5 s seek time

Read:

step in or out

load

30 ms heac

0-.16 s wait for presector

issue read

head

settling time

command

\

^

)

same subr both re

V

outine used by ad and write

5-10 ms wait as

10 ms transfer

move data from buffer

check for

presecto

r pas

ses

of data

to mam mem

ory

e

Tors

:Return from routine

Write:

move data from

main

step in

load head

30

ms head

0-.16 s wait for presector

memory to buffer

or out

settling time

V

;

Y

same subroutine used by both read and write

issue write command

5-10 ms wait as

10 ms transfer

check for

prese

:tor f

>asses

of data

errors

:Return from routine

64

BYTE January 1978

Since 1972 we've been a place where people and computers get together.

Do you know anyone who wants to learn how computers work? Or how to program? Without masses of technical jargon? Then send them to People's Computers'. We're a bimonthly magazine devoted to demystifying computers. Our pages aren't padded with ads—they're packed with articles, tutorials, interviews, listings, games, reviews and letters. People's Computers covers: Computerese - basic principles about how computers

work; tutorials on how to program. Education - ready-to-use programs; tips on how to write

computer-assisted educational materials; reports on

educational uses of computers. Blue Sky - Tiny BASIC and Tiny PILOT were born in our

pages; there's now talk of robots and . . . People & Computers - examination of the growing impact

of computers on our lives and society. Fun & Fantasy - computer games; whimsical odds and

ends; and our swashbuckling hero—FORTRAN Man!

Some Comments about People's Computers:

"One of the first, if not the first, of the people-oriented computer publications ... At $8 a year, it is a good bargain. You'll like it." Kilobaud

"The editorial flavor is . . . intended to be readable and enjoyable for the neophyte. Our resident non-computer people at Byte grabbed the first issue so quickly that it became difficult to find a copy . . . Should be sampled to be believed." ' Byte

"People's Computers has been plugging away for years as a force for good in the community". Personal Computing

"For the novice as well as the experienced computer user ... an informal style, many useful annotations ... a sounding board for novel ideas." Computer Notes

"Here's a first rate magazine for people who want to know about minicomputers and microcomputers . . . Powerful, low-cost technology is taking off - keep up with it by reading People's Computers". Tlie Workbook

people's computers

Please start my one-year subscription (six issues) to People's Computers and bill me for just $8.

NAME

ADDRESS

.ZIP.

CITY/STATE

Outside the U.S., add $4 for surface postage. Airmail rates on request.

Unconditional Guarantee: If you ever wish to discontinue your subscription for any reason, we will refund the complete amount for the remainder of your subscription.

□ Visa Card Number

□ Mastercharge Expiration Date

Send this form or a facsimile to: People's Computers, Dept 53, 1263 El Camino Real, Box E, Menlo Park CA 94025

Circle 86 on inquiry card.

BYTE January 1978 65

or no change to the interface board, any hardware sectored format can be accommodated by the use of appropriate software. With the present amorphous state of the home computing industry, format independence has to be a significant advantage.

In figure 1, the three 2102As (ICs 4, 14 and 24) form a 3072 by 1 bit buffer memory. The three 74177 counters (ICs 5, 15 and 25), which are associated with the three 2102As, allow storage of the serially accessed disk data in the randomly accessed memories. These counters are incremented for each bit of disk data passed, and provide addresses for the 2102As during both the read and write operations. During reading, the disk provides clocking information in the form of SEP CLOCK on the Memorex disk drive. SEP CLOCK is used to clock the counters and address the memory. During writing, the interface card must provide clocking information to the disk. The crystal oscillator provides this write clock information for the disk drive as well as for the counters which address the memory.

The preceding has explained the functioning of the counters and the addressing of the 2102A buffer during data exchanges between the disk drive and the interface card. Movement of data between the interface card and the processor takes place before or after the interface's dialogue with the disk drive, as shown by the sequence of operations for read and write commands in figure 2. During this processor activity, the address counters take on a completely different function. The processor can randomly access any bit in the memory buffer. Therefore, the address for the buffer comes from the processor rather than from the address counters.

During this time, the addresses on the processor's bus, which are present at the preset inputs of the 74177s (ICs 5, 15, 25), are gated through to the 2102As. When the processor attempts to read from or write to the buffer it will be accessing only one bit at a time, since the buffer is only one bit wide. The 6800's read and write line is gated directly to the read and write line of the 2102As. Write data from the processor will be fed to the data input lines of the 2102As via a three state device enabled by the proper address decoding from the processor bus (IC1). When the processor reads from the buffer memory, address decoding (IC1B) enables a three state bus driver and places one bit of data from the buffer on the processor bus.

During a diskette read operation, it is desirable to use the received clock to strobe

the received data into memory. In order to satisfy the minimum write pulse width requirements of some 2102 type programmable memories, it is necessary to use a oneshot (IC22) triggered by the trailing edge of the receive clock to generate the actual write strobe. The received data is latched in a 7474 (IC31B) and maintained until the end of the write strobe. Note that while it would normally be poor practice to use the write strobe to change both address and data, the architecture of this interface and of most 2102 type programmable memories permits this. The actual value of the address present at the edges of the write strobe appears to be irrelevant, provided that the address is stable. In this design, the address and the data change after the trailing edge. This arrangement has been tested with several types of programmable memories, from fast new ones to slow obsolete ones. There were no problems in any instance.

During a write operation, a 4 MHz crystal provides clock pulses to the disk drive and address counters for the 2102As. A 4 MHz crystal is used to facilitate the future double density option. A 2 MHz crystal could be used for standard density operation with the proper circuit modifications. The write clock and write data signals (outputs of IC17 and IC28B) are combined into a composite clock and data signal and fed to the disk drive via three paralleled sections of a 7416 high power inverter (ICs 10A, B, and C). Three sections are used to provide adequate signal current into the low impedance line receiver within the disk drive. Although line receivers are recommended by Memorex for the received clock and received data signals at the interface, standard TTL inputs (with the addition of the pull up resistors shown in the schematic) have proven to be adequate.

Software

The schematic of figure 1 does not represent a floppy disk controller, but only an interface. The processor intelligence is needed to make the system a controller. The bulk of the effort in establishing a system of this type occurs in the writing of the necessary software. This approach keeps the hardware costs low and allows the frugal experimenter to substitute his or her own software writing ability for the out of pocket hardware expenses.

Two phases in any read or write operation of the system were previously mentioned. A third phase is necessary prior to any actual reading or writing. The disk drive's data transfer head must be stepped

66

BYTE lanuary 1978

f STEPIO j

I I

| REQUESTED | | TRACK U-.

| >64 |

I 1

i 1

REQUESTED | TRACK l_.

OUTPUT

ERROR

MESSAGE

-f RETURN J

l_

_l

J

NO

N YES

( RETURN

C ? ^N

|no

STEP IN PULSE

NO

,

[yes

STEP OUT

PULS

^REQUESTED J

TRACK= I

—I CURRENT I

i TRACK I

I I

| ■—■ — 1

I REQUESTED I ! TRACK > I —I CURRENT | I TRACK I 1

-( RETURN J

STEP IN PULSE

to the proper track. Then the system must interrogate the hardware's sector address counters in order to know when it is permissible to issue a read or write command.

Stepping to the Proper Track

There are either 64 or 77 tracks on floppy disk systems (the Memorex 651 uses 64). When power is first applied to the system, the position of the data transfer head is unknown. It is necessary to find over which track the head is positioned. Unfortunately the disk drive tells us nothing about the location of the head unless it is sitting at the very first track of the system (track 0). Some disk drives have an additional sensor at the very last track. Consequently, during initialization of these systems it is necessary to step the data transfer head in toward track 0 until the track 0 sensor is tripped. If track 0 is requested (as shown in the flowchart of figure 3 for the stepping routine), the program will step the data transfer head in, while searching for a TRACK 00 signal. An 8 bit register remembers where the head is located. Once the head is stepped away from track 0, the software has no way of determining what track is currently accessed unless it knows how many step pulses have been issued. Every time a step pulse is issued, this counter will be incremented or decremented appropriately unless the track 0 signal appears, in which case the counter is cleared. This step

routine is written as a subroutine, shown in listing 1, such that it can be called with the desired track parameter passed as a value in another register.

Stepping takes place in response to individual pulses from the interface. The pulses are formed in software by turning a hardware bit on, and then off. The width of the pulse will be determined by the processor's execution speed. Since two or more instructions are involved, the width will be several microseconds. Several NOPs can be inserted in the software as a safety measure.

Figure 3: The stepping routine, which moves to any track that is requested.

Listing i: Stepping in or out routine written for the Motorola 6800 processor.

FA3D

B6

A055

STEPIO

LIlA

A

REQTRK

FA40

81

3F

CMP

A.

#63

FA42

2F

03

BLE

* + 5

FA44

7E

FB8F

JMP

ADRERR

FA47

81

00

CMP

A

*0

FA49

26

OF

BNE

BTP2

FA4B

C6

80

EiTPl

L.flA

B

#$80

TEST TRACK ZERO

FA4D

F5

9C00

BIT

B

*9C00

FA50

27

04

BEH

* + 6

FA52

8D

ID

BSR

STEPIN

FA54

20

F5

BRA

STP1

FA56

7F

A054

CLR

ACTTRK

TRACK ZERO FOUND

FA59

39

RTS

FA5A

Bl

A0S4

STP2

CMP

A

ACTTRK

FA5D

26

01

BNE

*+3

FA5F

39

RTS

FA60

2B

04

BMI

* + 6

FA62

8D

06

BSR

STPOUT

FA64

20

F4

BRA

STP2

LOOP TILL TRACK

FA66

BD

09

BSR

STEPIN

FA6S

20

FO

BRA

STP2

FA6A

7C

A054

STPOUT

INC

ACTTRK

FA6D

C6

01

I. D A

B

#1

STEP OUT PULSE

FA6F

20

05

BRA

STP4

FA71

7A

A054

STEPIN

DEC

ACTTRK

FA74

C6

02

LI) A

B

#2

STEP IN PULSE

FA76

F7

9C00

STP4

STA

B

C.9C00

BEGIN STEP PULSE

FA79

SF

CLR

B

FA7A

01

NOP

DELAY

FA7B

01

NOP

FA7C

F7

9C00

STA

B

*9C00

END STEP PULSE

FA7F

CE

OCOO

DELAY

LDX

#*C00

FA 132

09

STP3

hex

FA83

26

F I.l

BNE

STP3

FAS 5

39

RTS

BYTE January 1978 67

f WAITS J

DELAY 30 mS

| SETTLING TIME | FOR HEAD LOAD I j MECHANISM |

I 1

I 1

I REQUESTED I j SECTOR |—

I >I6 |

I I

I 1

I REQUESTED | I SECTOR |—

I -0 !

I I

YES

OUTPUT ERROR MESSAGE

CURRENT SECTOR" DESIRED SECTOR

Tno

fES

PRESECTOR

PRESECTOR:= REQUESTED SECTOR-1

1

'«

DESIRED SECTOR:" PRESECTOR * 2

, CONVERTS j 1 PRESECTOR 1 INTO

1 PHYSICAL I SECTOR i

1

'„

READ SECTOR

ADDRESS

COUNTERS

3 'v

NO

YES

[ RETURN )

-( RETURN J

I I

| 0-1-16-1 = 15 |

I I

I I

Figure 4: A routine which searches a single track until it finds the required presector.

FAA4

8D

D9

WAITS

BSR

DELAY

FAAA

B6

A051

LBA

A

REBSEC

FAA9

81

10

CMP

A

**10

IS REH'D SECT. LEGIT.?

FAAB

2D

03

BLT

WS1

FAAU

7E

FB8F

JMP

ADRERR

FABO

81

00

WS1

CMP

A

*0

SECTOR 0 REQ'D

FAB2

26

02

BNE

WS2

FAB 4

86

10

LDA

A

**10

DUMMY SECTOR *

FAB6

4A

US2

DEC

A

SET UP PRESECTOR

FAB7

48

ASL

A

SET UP HARD SECTOR NUMBER

FAB8

F6

9C00

WS3

LDA

B

*9C00

GET SECTOR FROM INTFC

FABB

C4

IF

AND

B

**1F

FABD

11

CBA

req:actual

FABE

26

F8

BNE

US3

FACO

39

P.TS

Listing 2: Interrogation routine written for Motorola 6800. This routine checks each of the sector headings on a track until it finds the requested presector of the desired sector.

Since a stepping motor is involved (some of the newer drives incorporate linear actuators which are faster), a considerable time delay between step pulses must be allowed to prevent the stepper motor from overshooting the wrong track. The software stepping routine incorporates a 30 ms delay. Memorex specifies a 20 ms delay, and some other manufacturers call for 10 ms delays or less. The builder should adjust the delay parameter to generate the necessary delay.

Waiting for the Proper Sector

Since counters are built into the hardware, the sector address will be accurately known within one diskette revolution after application of power. Anytime the software reads the state of the sector counters, it will receive the binary number of the physical sector currently passing under the data transfer head. The use of this information now becomes somewhat involved.

At some time in the future, a read or write command will be issued. Where that occurs is a function of the time when the command is issued relative to the position of the diskette at the moment of issuance. If the user wants to write at logical sector 4 of the current track, for instance, the write command is issued prior to the appearance of physical sector 4 beneath the data transfer head. In other words, the command should take place while the data head is over sector 3 because the actual writing must begin at the leading edge of the sector pulse that introduces physical sector 4.

Things are actually more complex than this. The counters which address the on board buffer memory must be reset prior to the beginning of the actual read or write operation. Otherwise, the buffer addresses would begin in the middle of the buffer. In order to guarantee sufficient time for resetting the counters, some finite time interval must occur during the preceding physical sector. The only way to insure this is to locate the end of second preceding physical sector and issue the read or write command at the beginning of the immediately preceding physical sector.

The flowchart in figure 4 shows a subroutine which, when given the desired sector to be read from or written to, will loop while interrogating the sector counters until the presector is found. Although the software of listing 2 appears to ignore the need to guarantee some resetting time for the buffer address counters, this is not the case. Since there are two physical sectors for each logical sector (32 physical sectors per track versus 16 logical sectors) the software is sensing

68 BYTE January 1978

OUR OWN SOFTWARE OUR OWN HARDWARE A perfect team from the Digital Group

Something new has been added to our great line of Digital Group hardware: DIGITAL GROUP SOFTWARE!

With all new languages, enhancements to existing languages and new sophistication designed to give the Digital Group system user the greatest capabilities yet available in a microprocessor.

Most importantly, you can rest assured that the same painstaking attention we devote to quality in our hardware has gone into Digital Group Software. Our software works — as simply as that.

Here are just a few of the Digital Group Software packages:

WOPROC

This simple-to-learn, user-oriented Word Processing System is text-editing and a whole lot more. WOPROC automatically takes care of the menial tasks of typing, easily corrects errors and prints exactly as you desire. In short, WOPROC doesn't stop at merely editing text: it also processes this text in a variety of ways. Use it to prepare and print anything that could be prepared with a typewriter.

CONVERS

Through incorporation of a variety of software

concepts, CONVERS, a unique, highly-flexible

package, has evolved. It offers a combination of easy

programming, high memory efficiency and fast

operating speed ideally suited for many types of

applications.

Circle 32 on inquiry card.

The potential capabilities of this type of language are breathtaking, but for now the Digital Group recommends our preliminary version to those users already familiar with computers.

BUSINESS-BASIC

By adding a significant number of extensions, our standard Digital Group Maxi-BASIC has been converted to Business-BASIC — an extremely productive and powerful language for businessoriented microcomputer users.

OPUS/ONE and /TWO

These software packages are major extensions of

BASIC-type languages. This language's major emphasis

has been to maximize function and capability and is

particularly well-suited to personal/business type

applications.

Z80 ASSEMBLER II

An updated version of Z80 Assembler I with added

capabilities.

We've tried to give you a glimpse of what Digital Group Software has in store for you. If you have one of our systems already, you know our quality. And if you're just looking around, take a look at our hardware.

Then you'll know how well our software works, too.

po box 6528 denver, Colorado 80206 (303) 777-7133

BYTE |jnuary 1978

69

F9BB F9BE F9C1 F9C3 F9C6 F9C9 F9CC F9CF F9H2 F9D5 F9D7 F9DA F9DD F9E0 F9E2 F9ES F9EB F9EB F9EE F9EF F9F2 F9F4 F9F7 F9F9 F9FC F9FF FA02 FA05 FA08 FAOB FAOE FA11 FA14

FA17 FA1A FA1C FA1F FA22 FA25

FF A05E READSV

BD FA86

86 03

B7 9C01

BD FA95

BEI FBOB

BB FB66

FE A05A

BC 5100

27 03

7E FB87

FE A056

BC 5102

27 03

7E FB99

CE 5000

FF A05C

BD FA26

39

FF A05C WRITSV

C6 20

F5 9C00

26 03

7E FB9E

5000

A05E BD FA26 BD FB&6

A05A

CE FF

FE

FF 5100

A056 5102

BD FAC1

BD FA86 86 02 B7 9C01 BD FA95 BD FB3D 39

STX JSR LDA STA JSR JSR JSR L.DX CF'X BEG JMP LDX CPX BEG! JMP LUX STX JSR RTS STX LDA BIT BNE JMP LDX STX JSR JSR LDX STX LDX STX JSR

JSR LDA STA JSR JSR RTS

SAME MOVE

DATA DESTINATION ADDR HEAD TO TRACK/SECTOR

REOHEST READ

WAIT FDR 'FINISHED' FLAG CONVERT DATA TO 8-BIT BYTES COMPUTE NEW CHECKSUM

COMPARE NEW WITH RECORDED

DBUFF

MBETUP

#3

«9C01

WAITFL

ENPACK

CHKSUM

CKSM

RBUFF+256

*+5

CKSMER

REHADR ADDR REQ'D BY CONTROLLER

RBUFF+258 COMPARE W/RECORDES ADDR

*+5

TBIDERR

*RBUFF

SB OFF

COPY

X-REG DESIGNATES SOURCE DATA TEST WRITE PROTECT

COMPUTE CHECKSUM

SBUFF

#*20

*9C00

*+5

WPROT

♦RBUFF

DBUFF

COPY

CHKSUM

CKSM

RBUFF+256

REOADR

RBUFF+258

UNPACK STORE ASSEMBLED FILE

INTO SERIAL BUFFER

MSETUP POSITION HEADr ETC.

*2 WRITE TRANSACTION

»9C01

WAITFL

CHKFIL

WAIT TILL DONE CHECK FILE UNSAFE

Listing 3: The WRITSV routine allows writing to the disk, and the READSV routine is used to read data from the disk. When either of these two routines is entered, the correct track and sector have been found and the data transfer head is already loaded and allowed to settle.

physical sectors and dividing the sensed addresses by 2. This will allow at least 5 ms (the time for one physical sector) for resetting the address counters.

Read and Write Commands

One bit of a status word is used to identify a read or write command. In the schematics, logical 1 means read and logic 0 means write. Another bit is used as the transaction request bit. Setting this byte to logical 1 enables the hardware to execute a data transaction when the next sector pulse occurs. During this period of time the processor must not read from or write to the on board buffer, since this will immediately set the address counters to the value present on the processor's address bus. The processor needs to know if the disk drive is talking to the buffer memory. Therefore, a busy or ready bit is incorporated into the hardware. Proponents of interrupt driven systems should note that a separate flip flop is set at the end of a read or write transaction. This should be reset in software prior to issuing a new command. Hardware will reset the flip flop automatically at the beginning of each transaction in the event that software does not do this. This flip flop can be used as a flag for a testing loop, or it

can be tied to an interrupt line to generate an interrupt upon completion of the read or write transaction. The software examples used here incorporate a flag testing loop routine.

Operating Sequence

Sometime prior to the passing of the data to or from the disk drive, the head load bail must be energized to permit the data transfer head to come into contact with the diskette. The mechanical properties of this mechanism dictate that some time must be allowed for settling prior to the commencement of any data movement. Various philosophies exist on the subject of how long and how often the head should remain loaded. Some feel that the head should be loaded continuously during periods of usage, and that frequent loading and unloading of the head causes aggravation of the head as well as a media wear problem. The software I use assumes just the opposite: The less time the head and media are in contact, the less wear will occur. Memorex drives are particularly vulnerable to wear, since they use metal heads instead of newer ferrite and ceramic heads. A Memorex drive using this software and operating in a suitably clean environment for several months has had no detectable wear to either the data head or the diskette. I feel that this is due to the fact that the data head is never in contact with the media for more than a fraction of a second at a time. The accumulated contact time is kept very low.

In the software of listing 3, the data head is loaded just after the stepping routine, immediately following the arrival at the proper track. Recall that the system will begin its search for the pre-presector after the proper track has been accessed. The sector wait algorithm contains a 30 ms delay during which the head load mechanism can settle. An extra delay loop should be inserted at the entry of the sector wait routine if additional settling time is necessary. The accumulated system delay, including the sector wait routine, will probably be adequate.

Figure 5 shows the sequence of operations for read and write commands and includes the movements of data relative to the mechanical operations. For a clearer description, see photo 1. If a wire operation is to take place, the first step in the process should be setting up the data in the interface's onboard memory buffer. Some sort of structure must be chosen for the various

70

BYTE lanuary 1978

FULLY ASSEMBLED PRODUCTS FOR THE TRULY COMPATIBLE SS-50 6800 BUS.

Our Basic Floppy Disc System (BFD-68) must, in all modesty, be called superb. It comes completely assembled with a disc controller that is plug compatible with the SWTPC 6800. The cabinet and power supply are capable of handling up to 3 Shugart MiniFloppy Drives. One drive is included in the price of the BFD-68 and others may be added easily at any time. Or you may save money by ordering the dual-drive BFD-68-2 or triple drive BFD68-3 (pictured). Price: BFD-68 $795, BFD-68-2 $1139, BFD-68-3 $1479, SA-400 Drive $360.

The BFD-68 includes our Disc Operating System Software. The software provides direct commands to name and rename files, transfer memory to disc and disc to memory and to automatically jump to the starting location of any program loaded from disc to memory. The direct command names are: RUN, GET, GETHEX,

CLOSE, SAVE, DELETE, APPEND, RENAME, COPY, LIST, LINK and PRINT. In addition, the Disc File Management subroutines are

available to create files under your program control.

A bootstrap PROM is included on the controller board to initiate the Disc Operating System which loads into a 4K memory board

located at 7000 or optionally at D000. Thus, you can be up and running from a cold start in just a few seconds.

SUPER SOFTWARE: Free patches are provided for SWTPC BASIC version 2.0 and Co-Resident Editor/Assembler. These patches allow the SAVE and LOAD commands to work with the disc or the cassette at your option.

M-16-A: The M-16-A is a single power supply fully STATIC 16K memory system. It is fully buffered and requires only half the power of a similar size system using low power 2102's. With the M-16-A, you can expand your system to 48K, add one of our EPROM boards, our BFD-68 disk controller board and still have room to spare. The M-16-A is switch selectable to any 4K starting address and hardware write protect is included. Price $529.

P-38: The P-38 series modules are available in 3 configurations. The basic P-38 is an 8K EPROM board containing room for 8 2708's. Like all our products, it is completely assembled. As a bonus, one 2708 is included which contains SMARTBUG, our IK Mikbug compatible monitor program. The P-38 is switch selectable to any 8K location. Price $179.

The P-38-1 contains all the features of the basic P-38 plus a built in interface to the POP-1 and the Oliver Paper Tape Reader. Price $229.

The P-38-FF is a plug-in interface card for the ICOM Frugal Floppy and the other ICOM full size floppy disks. It contains all the features of the P-38-1 plus an additional 2708 with the ICOM bootstrap software. ICOM's 6800 FDOS-II is included on diskette. Price $299.

The PS-1 power supply kit provides plus and minus 16 volts required for the P-38 series boards. Also, it allows a wiring modification to be made to the 8 volt supply that will increase its output by one volt. Price $24.95.

NEW PRODUCT: The POP-1 is a 2708 EPROM programmer that is contained in a separate cabinet outside the 6800 and connected by ribbon cable. The POP-1 uses a separate self-contained power supply for the programming voltage. There is plenty of power to program 2708's from any manufacturer — no need to choose only the most expensive 2708's. The POP-1 interfaces to the SMOKE SIGNAL BROADCASTING P-38-1 EPROM board and complete software is provided on cassette. The software allows you to duplicate an existing 2708 (making changes if you wish) or to transfer a block of RAM to EPROM. An adaptive programming technique is used that allows most 2708's to be programmed within 15 seconds. Instructions are also provided showing how to modify the POP-1 to program the TMS 2716. Price $129.

ALL OUR PRODUCTS EXCEPT THE PS-1 ARE COMPLETELY ASSEMBLED. MASTERCHARGE AND VISA CARDS WELCOME.

P.O. Box 2017, Hollywood, CA 90028* (213) 462-5652

Circle 99 on inquiry card.

BYTE January 1978

71

zones which must be recorded onto each sector. Memorex recommends that a preamble of 128 logical Os be written to the disk starting at the beginning of the sector. What goes onto the disk after that is dependent on the whims and opinions of the programmer. In the prototype system, a single logical 1 follows the preamble and serves to indicate that the next following bit is the first bit of the first word of data. 256 8 bit words are then written with the least significant bit first. This is followed by a 16 bit checksum, a 16 bit binary number to indicate the sector and track numbers, and zeroes for a postamble, which will end when the hardware encounters the sector pulse for the next sector. I make no claims for the elegance or efficiency of this format. It was expedient and has worked for months in a small developmental system. To set up the on board buffer with this information, a routine converts the source data from 8 bit parallel to serial (1 bit per address) in the buffer. After the buffer is set up, the mechanical movements and commands can be issued.

Operating

If the interface is wired correctly with properly working parts and the software is bug free, the system should work without any adjustments. However, if you build the hardware and write the software from scratch, there are many chances for error. I highly recommend that you build and test one section at a time. When testing the data circuits, a good quality oscilloscope, preferably dual trace with delayed sweep, is desirable. The read and write operations

are conducted independent of the processor. This simplifies troubleshooting because bad software will not complicate the situation.

I suggest that you start by wiring the sector counters and verifying their proper operation by reading sector addresses into the processor. Once the sector counters are working, the sector wait software can be written and tested by observing the varying time that the software is tied up (by looking for the desired sector). This varying time is formally known as the rotational latency, and will be between 5 and 160 ms.

Next, wire the step in, step out, and track 00 signals. The stepper motor can be manually tested by shorting the stepping lines to ground. It is much more dramatic to write some simple software to exercise this function. At this time the stepping speed can be set and the malfunctioning of the stepper motor can be observed at excessively high step rates.

The first step in testing the operation of the on board buffer memory is to transmit data back and forth between the interface and the processor. Doing so will bypass the oneshot, address counters, etc, and make testing much simpler. Once the memory is found to be functional, communication with the disk can be tested. Grounding pin 11 of IC30B will force the hardware to execute a continuous string of read or write commands depending on the state of flip flop 31 A. Flip flop 31A can be used to choose either read or write commands. When writing, the normally present reset signal at the timer counter (pin 13 of IC26) will be lifted. This allows the counter to count pulses from the oscillator. Pulses from the clock gate, pin 6

Figure 5: Timing diagram for read and write operations. Also shown is the physical and logical layout of the data on the floppy disk.

DATA 2048 BITS

OF 16 RECORDS PER TRACK

SEP CLOCK [J

LOGICAL SECTORS

u! u

ui u! u

i

—Iff

LI

lU !U

i i o | i | i

0 |

E I 2 3 4 5 e 7 8 9 IO II 12 13 14 15 16

PHYSICAL SECTORS ADDRESSES

30

31

0

1

2

3

4

5

6

7

8

9

10

"

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

0

'

SECTOR PULSES

INDEX PULSE

-ONE COMPLETE REVOLUTION OF DISKETTE

72 BYTE January 1978

?%i.

A 16K RAM board for only $289? Central Data's got it!

Central Data's 16K RAM board comes completely assembled, tested and burned in for only $289. Our competitors find that hard to beat. But, the low price is not all we offer.

The Central Data 16K RAM board is complete when you buy it from us, but we offer the added feature of expandability to 32K. Someday you'll need more than 16K, and when that day comes, you'll be ready. The cost of adding 16K to your present Central Data 16K RAM board is $250. A 32K RAM board, assembled, tested and burned in, is $525.

The invisible refresh feature of our board means that the performance of your system can never be degraded by wait cycles. Some of our competitors find that hard to beat too.

Our RAM board is S-100 compatible, and it has an access time of 450ns.

Each Central Data board comes with a one-year warranty.

With a price that low and features that good, how can you afford to pass up our board?

To order your 16K RAM board or to receive more information, write to us at Central Data today.

Central data

PO Box 2484, Station A Champaign, IL 61820

Circle 16 on inquiry card.

BYTE January 1978 73

Photo la: Data as it appears when first received from the disk drive for eventual storage in the buffer memory.

^^1

jL...»X. %* ■

Received clock

t

!

• <

» «

Received data latch

Photo lb: An example of data which has been received from the disk drive and rearranged for storage in the buffer memory.

SEP CLOCK

1 , " 1

-_"_

»

"

SEP DATA

of IC28A, will be a continuous stream of pulses separated by 4 ids. Pulses from the data gate, pin 8 of IC17, will be dependent on the raw data coming from the 2102As. If the raw data is a steady high, the signal from the data gate will be similar to that from the the clock gate with the exception that the two signals will be displaced in time. When the two signals are combined at pin 8 of IC28B, they are interleaved. While the interface is in forced write mode, the clock pulses from the clock gate are applied to the address counters, pin 8 of IC25. These counters should be counting properly. Whatever data is stored in the 2102As should be coming out serially on the raw data line.

To test the read function, you will need a working disk drive and a prerecorded

diskette. With the head loaded, a stream of data and clock pulses similar to those observed in the write circuits should be present at SEP CLOCK and SEP DATA. The oneshot should fire (pin 1 of IC22) on the trailing edge of each clock pulse. The oneshot's output should appear at the address counter's input and at the read and write line of the 2102As, pin 3 of ICs 4, 14 and 24. The 1 bit SEP DATA latch IC is set at the leading edge of any SEP DATA pulse and reset by the trailing edge of the oneshot's output.

The only other circuit of any complexity is that of the interrupt flag. If a read or write operation is terminated normally by the occurrence of the second sector pulse at the "busy" flip flop (pin 11 of IC30B), then resetting the flip flop will clock the interrupt flip flop on (pin 9 of IC27B) and either generate an interrupt or be used as a flag. This interrupt flip flop will remain on until software clears it by setting the interrupt clear flip flop, or until hardware clears it as soon as the transaction request flip flop, pin 6 of IC30A, is set in preparation for another read or write operation.

All other circuits are address decoding, latching, or bus driving functions and do not bear explanation here.

Drive Power

The lowly power supply is usually the least considered element in a system until it has to be paid for or fixed. Most floppy disk drives are extremely inefficient, due principally to the stepper motor. In the Memorex design the stepper motor consumes 24 V at 2 A. I have had only one troublesome power supply problem. It turned out to be due to an induced transient caused by a snapping action in the rectifier diodes during recovery and turn off. The resultant noise caused problems everywhere. I solved this by simply shunting the diodes with .05 or .1 [if- capacitors.

Intercabling

Memorex offers a version of its drive for use with twisted pair signal lines and a printed circuit edge connector in place of the 93 £2 coaxial cable and captive pin connector of the original. This newer version should definitely be specified when buying from Memorex. For intercabling of six to eight feet between the interface card and the drive, twisted pairs will be adequate and virtually any connector will suffice. Each twisted pair should consist of a signal wire paired with a ground wire and have one or two twists per inch. If you have a high

74

BYTE January 1978

CHEAPER BY THE BYTE

The Dual Digital Cassette Storage System Only $450 Only from Pheripheral Vision

For the first time ever there's an inexpensive, reliable system for mass data storage. Peripheral Vision introduces the Phi-Deck Cassette Storage System for the S-100 Bus. For only $450.

That's right. $450. That gets you two Phi-Decks, controller card kit and power supply. Which means 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 cassettes 508,000 8-bit bytes on C-60 cassettes

• Software error rate less than 1 bit in 10»

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, business accounts

• System residence

What our software operating system offers:

• 8080-based design

• Cyclic redundancy check (CRC) error detection

• System retries after soft errors

• Automatically bypasses hard errors

• Block size from 1 to 256 bytes or 256-byte increments

• 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 save you bucks.

iiiinii

We've only given you a glimpse of our exciting new cassette storage system and the four-port I/O board. For more details, just fill in the coupon below. For cheap little bytes.

jAuLr l_n. •

U

PQ Box 6267'Denver, Colorado80206 303 777-4292

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

Name

Address

City/State/Zip.

Circle 87 on inquiry card.

BYTE January 1978 75

density application you should consult the manufacturer of the drive for recommended cabling, since comparatively high speed signals are involved.

Error Conditions

Three fundamental types of errors should be allowed for in the system:

• Desired data not accessible due to improper recording, dirt, or noise during reading.

• Wrong data accessed due to wrong track or sector.

• FILE UNSAFE error flagged by disk drive.

All three types of errors must be discovered by the software in order to establish reliable operation.

The FILE UNSAFE error is probably the most common type encountered. It typically results from attempting to write to a write protected diskette or attempting to write while the door of the drive is open. Malfunctions of the electronics within the disk drive will also cause a FILE UNSAFE error. These are quite rare, at least in Memorex drives. Since this type of error is typically due to the operator, Memorex recommends that manual intervention be required to reset the error condition.

Accessing wrong data because of being on the wrong track or sector will occur if the step rate of the pulses formed by the stepping software is too fast for the stepper motor or if electrical noise causes the sector counters to miscount. This type of error can only be detected during a read operation, and only if the sectors being read are formatted with information describing their intended physical location on the diskette. This is the purpose of the track sector identification (TSID) word included with each record written to the disk. When the record is read, the track sector identification is checked to see if it agrees with what was supposed to have been read. If it does not, an error has occurred. In practice this type of error should never occur unless there is some serious malfunction due to faulty design, improper operation, or bad software. In my prototype software, all operations halt when this type of error occurs and the operator is required to restart it.

The first of the three errors listed above is supposedly the most common. In my experience, though, it is quite rare if the drives and diskettes are kept clean and operated properly. The error is detectable by virtue of the checksum, a binary sum of all bytes of

recorded data which is recorded at the end of the data field in the record. When the operating software reads a sector, it computes its own checksum and compares it to the recorded checksum. If the two sums disagree, an error has occurred.

Improvements

Since one step has already been taken in making the interface useful in an interrupt driven system, it might be sensible to make the interface more completely interrupt driven. In other words, eliminate the requirement that the processor wait during the rotational latency. This could be accomplished by simply adding latches and comparators to the sector counters' circuitry such that the processor could issue a desired sector number and a read or write command, then go about its business while the comparators search for the proper sector and initialize the read or write operation. This feature would probably only increase the chip count slightly and might be a worthwhile addition to units used with sophisticated disk operating systems.

The design I've discussed has been furnished to Midwest Scientific Instruments Inc for manufacture under license. The addressing structure of the Midwest Scientific version differs from that shown in the schematic of figures 1 and 2 in that they added peripheral interface adapter (PIA) chips, through which all communication between the processor and the interface must pass. This does not change the fundamental operation of the system, but it does increase the chip count. Budget minded users with the ability to build their own hardware are advised to build their own system, since it is basically not very complicated.

As an aid to persons building their own systems, the complete software, excerpts of which are used in this article, consisting of a 7 K byte microdisk operating system, is available for $10 in source form for the 6800 processor. Send to David M Alien, 1317 Central Av, Kansas City KS 66102. This software is written to utilize the routines of MIKBUG™ and provides named files of assignable length. Persons interested in hardware and software systems based on the interface discussed here should contact Midwest Scientific Instruments Inc, 220 W Cedar, O/athe KS 66061, (913) 764-3273. ■

76

BYTE January 1978

.pROHSSIONfi

HOBBYIST

THE AJ 8411/O-A COMPLETELY REFURBISHED IBM SELECTRIC TERMINAL WITH BUILT IN ASCII INTERFACE-JUST $995

Features:

■ ASCII code

■ 14.9 characters per second printout

■ Special introductory price —$995 (regularly $1195). 75% discount over original price of new unit.

■ Choice of RS 232 Serial Interface*or Parallel Interface (requires 3P + S)

■ Order direct from factory

■ 30 day warranty—parts and labor

■ Nationwide service locations

High quality selectric printing

Reliable; heavy duty selectric mechanism

Off line use as typewriter

'Available March 1978

AJ 841 WARRANTY AND SERVICE IS AVAILABLE IN THE FOLLOWING CITIES

Los Angeles Philadelphia Hackensack Columbus Cleveland San Jose Boston Washington, D.C

Cincinnati

Detroit

Dallas

Houston

Atlanta

Chicago

New York

ANDERSON JACOBSON

Anderson Jacobson, Inc., 521 Charcot Avenue San Jose, California 95131, (408) 263-8520

HOW TO ORDER AN AJ 841 I/O TERMINAL

1. Make cashier's check or money order payable to: ANDERSON JACOBSON, INC. Address your request to:

Personal Computer Terminal ANDERSON JACOBSON, INC. 521 Charcot Avenue San Jose, CA 95131

2. Upon written notification, pick up your terminal at the AJ service office located in one of the above cities. Allow six to eight weeks for delivery.

3. Afinal check of your unit will be made at the local AJ service office at time of pick up.

4. For warranty or repair service, return unit to designated service location.

CLIP AND MAIL WITH ORDER

SELECT EITHER:

□ RS 232 Serial Interface (Available March 1978)

□ Parallel Interface (requires 3P + S)

Number of units

Local Sales Tax

Shipping and handling $35.00 each (excluding San Jose)

TOTAL

NAME

M $995.each $.

$_

ADDRESS CITY

-STATE.

.ZIP

PHONE (.

Circle 3 on inquiry card.

BYTE January 1978 77

Some people build personal computers for the love oi building. And the systems they buy are usually more fun to build than to operate.

The Equinox System , on the other hand, is designed for people who build for the love of computing. When you put it together, it's really together. Ready to work for, and with, you in the development of your own professional, intellectual, business and even social interests.

The Equinox System ™ goes together easily with construction aids like parts legends and solder masks. The Equinox System1M fits together perfectly, and will continue to be a perfect fit with future hardware and software. And it's all S-100 compatible, so you'll be able to work together with the largest group of peripherals, software, suppliers and system users in personal computing.

Mainframes, interfacing, memory, software—The Equinox System has it all together now.

Really together.

THE MAINFRAMES

The Equinox System offers an important choice in mainframes.

The Equinox 100 mainframe integrates the popular 8080A CPU into a powerful front panel programming center. For users who prefer another CPU, however, we also offer the Equibox —a fully engineered cabinet, power supply and S-100 busboard system ready for installation of your choice of CPU ■

It would be difficult to forego the speed and convenience of the Eguinox 100 front panel, however. It allows you to work in concise octal digits on a 12-key keyboard and digital LED display. It allows you to monitor and/or alter the contents of any CPU register or register pair, I/O device or memory location. And the Equinox 100 front panel will perform these operations while fully halted, single-stepping, or SlowStepping 1M at a programmable rate!

It is, quite simply, one of the most powerful, intelligent and wonderfully convenient front panels in the world. And comparisons of The Equinox System™ mainframes don't stop at the front panel.

Both Equinox 100 and Equibox compare directly to full-scale and mini computers in reliability of operation. Both Equinox 100 and Equibox are equipped with massive 26-amp Constant Voltage (ferroresonant) power supplies to protect your programs from in-home appli

ance loads, system loads, and even area-wide line voltage drops as low as 90 VAC.

And the exclusive Noiseguard system on our 20-slot busboard produces signals that are "textbook clean," eliminating a major source of data errors and interfacing problems that plague most other personal computer systems. Plus, there are dozens of other features to make your mainframe more convenient: carrying handle and tilt-up stand, keyoperated power switch for system security, spare power regulators for your small peripherals, and more.

It's no wonder that Equinox mainframes have been acclaimed as a major advance in personal computers. Equinox 100 or Equibox —each has the features you want all together in one elegant package.

THE INTERFACING

A]

TOGE NC

Interfacing your input/output devices to your mainframe can be a frustrating, expensive and time-consuming process.

That's why The Equinox System offers all the interfacing you're likely to need in one low-cost kit. TM

The Equinox I/O Interface is a single board that plugs right into your Equinox 100 bus. And you're ready to plug in 3 audio cassette units with individual motion control, a Teletype * or RS-232 terminal, and any 8-bit parallel device. . . including graphics display, line printer or paper tape reader.

The Equinox I/O Interface has 1K bytes of RAM and ROM on board, preprogrammed with powerful Cassette Operating Executive (COPE) software. COPE handles dozens of interfacing and data handling tasks to increase the efficiency of your software. Your programs can store and retrieve cassette data with a simple CALL COPE instruction. Data is formatted, checked and transferred in blocks up to 64K bytes with a single READ or WRITE instruction. COPE can even bootstrap your programs.

3YTE January 1978

.L

W!

All Equinox software is designed to make full use of COPE capabilities. So loading your Equinox software is as simple as selecting an address and pressing RUN. Cassette data storage has never been more convenient.

The Equinox I/O Interface is programmed for the highly-reliable 300 baud Kansas City Standard for cassette data transfers. . .but can

be reprogrammed for faster rates in the future. Your TTY/ RS-232 channel also features user-programmable rates up to 4800 baud. And you have access to all COPE routines.

There is no more costeffective way to handle your system interfacing. And the Equinox I/O Interface is even more attractively priced when purchased with a complete system.

THE MEMORY

You can get your Equinox System low-cost memory.

together with more

The Equinox System is the first system to offer the ECONORAM III™ 8K x 8 memory board with the advanced SynchroFresh natural-timing refreshing system.

Configured as two individually addressable 4K blocks, the ECONORAM III comes assembled, tested and guaranteed to work perfectly in your Equinox System for one full year. It is also available as a lower-cost kit.

For tight budgets, the K-Ration 4K X 8 static memory kit is also available for your Equinox System . This high-efficiency design is one of the most widely used, lowest power and lowest

cost memories available for S-100 systems.

And the memory savings are even greater when you purchase your Equinox System all together!

THE SOFTWARE

The Equinox System now includes two primary software packages: EQU/ATE for text-oriented programming, editing and assembly, ar.d BASIC-EQ language for number-oriented programming.

Both of these powerful programming languages have been greatly enhanced by full integration with our COPE interfacing software.

EQU/ATE gives you the power of a fully programmable text language. Using EQU/ATE, you can create programs to edit copy, keep inventory, manipulate your files of addresses or recipes, and more.

EQU/ATE is also one of the most powerful editor/assemblers available. EQU/ATE writes, assembles and executes your programs. It is fully symbolic, accepts global symbols and assembles programs larger than available memory.

EQU/ATE is also an extraordinary text editor which works interactively with you to edit by character, string or line. It also offers full number editing of memory contents in octal, hex or decimal.

■Yet, EQU/ATE is extremely compact, occupying only 4K of memory with 8K total memory required.

BASIC-EQ is a powerful, interactive, high-level programming language developed for math and science applications. Its primary use is in the manipulation of numbers, although it is capable of string oriented operation. Our version, BASIC-EQ occupies 5K of memory.

Both BASIC-EQ and EQU/ATE are supplied on cassette, ready to load themselves into your Equinox System . They are competitively priced. . .and are even more attractive when purchased together with your Equinox System

GET IT TOGETHER!

For more information and ordering:

BY MAIL Send check or money order to Equinox

Division, Parasitic Engineering. P.O.

Box 6314. Albany. Caliiornia 94706

800-648-5311. BankAmericard/Visa and

Master Charge accepted.

See The Equinox System™ at your local

computer shop.

*A trademark of Teletype Corporation.

BY PHONE

IN PERSON

Continued from page 35

out paper, purchased programs, etc) which have limited life spans and were not included under cost of goods sold and/or operations in Schedule C-1.

Taxing Situations at Home

If you're working out of your home you may only claim deductions if some part of your home is used regularly and exclusively "(a) as your principal place of business, (b) as a place of business used by your patients, clients and customers in meeting or dealing with you in the normal course of your trade or business, or (c) in connection with your business if it is a separate structure that is not attached to your dwelling unit." [Page 23 of the 7976 Federal Income Tax Forms package containing Form 1040, Schedules A and B, Schedule C, Schedule D, Schedule E, Schedules R and RP, Schedule SE, Form 2441. Dept of the Treasury, Internal Revenue Service.] This means that if some portion of your home is used solely for business purposes on a regular basis, you can deduct a percentage of your light, heat, telephone, trash removal, and rent or house payment for it. Thus, if you use 15% of your house in this way, you can deduct 15% of each of the expenses listed. Some people figure their percentage on the basis of the number of rooms in the house (thus, if one room of a 5 room house is so used, 20% is deducted); but I prefer the floor space method, whereby 200 square feet out of 1000 total square feet of floor space must be used for business purposes to justify a 20% deduction. This method reduces the risk of challenge. Be wary of taking this deduction, however, since using the area in question for any nonbusiness purpose can make a deduction illegitimate. Also, since computer entrepreneurs are most likely to work on their businesses at irregular intervals, it may be impossible to claim that the area is used on a regular basis for business. If you can legitimately claim these deductions, however, they increase the total deductible business expense considerably.

Line 20, which is the result of all these entries and computations, shows the sum of all deductions (lines 6 through 19k). If this is larger than the sum on line 5 [total income), enter the difference, preceded by a minus sign on line 21 as net business loss. If it is smaller, again enter the difference on line 21, preceded this time by a plus sign, as your net business profit. In either case, enter the figure that appears on line 21, with its appropriate sign, on line 29, business income or (loss) (attach Schedule C), of form 1040.

Schedule C-4, expense account information, probably won't apply to computer entrepreneurs. Only expense account allowances which, added to salary, exceed $25,000 need be entered.

Schedule SE

Schedule SE is for computing your social security self-employment tax. If you aren't making a profit above a certain amount (currently $400, subject to change by law) you don't have to pay social security tax; but it's advisable to fill out the form anyway, because it proves that you owe no social security tax.

As usual, there is a place at the top for your name, social security number and type of business. (See figure 3; Schedule SE has no printing on back.) Part I is for those engaged in farm self-employment. It doesn't apply to nonfarm people and can be ignored. Part II, for nonfarm self-employment, however, does apply. Fill in line 5a with the net profit or loss figure calculated for line 21 of Schedule C. Lines 5b, c, d and e probably will not apply. Line 6, the total of lines 5a through 5e, represents total nonfarm selfemployment income. Some adjustments t6 your business income permitted in the figuring of Schedule C are not allowable in figuring your income for the purpose of Schedule SE; the latter are covered on line 7. These adjustments include, for example, net operating losses from a previous year, income of public officials, rentals received from certain kinds of real estate, and the like. They are not likely to affect computer entrepreneurs, so I only note their existence here and refer you to the IRS instructions for Schedule SE. Business income (or loss) plus these adjustments is shown on line 8.

The nonfarm optional method, lines 9 through 11, may be used by those who did make a net profit and whose profit is both less than $1600 and less than two thirds of their gross profit. It involves comparing two thirds of your gross nonfarm profit (or $1600, whichever is smaller) with $1600 and calculating your social security tax on the smaller amount. For most computer entreneurs, this won't apply, at least during the first few years.

Social security self-employment tax is calculated in part III. Enter your business profit or loss (from line 8 or line 11) on line 12b. Add to it (on line 12a) any farm earnings (probably 0 in this case) and add them on line 13. If the resulting amount is less than $400, you owe no tax and can-stop filling in the schedule right there; if it is greater than $400, you must total your wages and tips, etc, subject to FICA (the

80

BYTE January 1978

Federal Insurance Contributions Act) on lines 15a through 15c and subtract the total from the maximum amount subject to social security tax, which is shown on line 14. The result of this subtraction goes on line 16 and whichever amount is smaller, line 13 or line 16, goes on line 17 as the basis of your social security tax. In 1976, the maximum amount of earnings subject to social security was $15,300, and whoever had this much or more was required to pay $1208.70. The tax on any amount less than the maximum was computed by multiplying the amount by 0.079. These figures are subject to change, however, and should be used only as a general gauge of tax amounts.

Being Prepared

Most people begin their computer enter

prises in the hope of picking up a little cash to help improve their home systems. They rarely bother to account for expenses, assuming that they would have "spent the money anyway," and they usually pay little heed to profits apart from spending them quickly for more or better computing equipment. But hobby income is taxable, and if one suddenly finds him/herself with a product or service that is selling like the proverbial hotcakes, he/she can also build up a hefty tax bill without realizing it. Similarly, if one doesn't record the expenses that the enterprise entails, a thousand dollars could easily be spent to attain an income of only $227. Either way, it can get uncomfortable.

Keeping even the most simplified records from the start will help solve these problems.

SCHEDULE SE (Form 1040)

Computation of Social Security Self-Employment Tax

p> Each self-employed person must tile a Schedule SE. )». Attach to Form 1040.

^ See Instructions for Schedule SE (Form 1040).

• If you had wages, including tips, of $15,300 or more that were subject to social security or railroad retirement taxes, da not fill i this schedule (unless you are eligible for the Earned Income Credit). See Instructions.

• If you had more than one business, combine profits and losses from a" your businesses and farms on this Schedule SE.

Important.—The self-employment incc

reported below will be credited to your social security record and used in figuring s

NAME OF SELF-EMPLOYED PERSON (AS SHOWN ON SOCIAL SECURITY CARD)

| Social security number of

self-employed person )>- &+-1k\ 1&lk |*i*$Hr

Business activities subject to self-employment tax (Grocery store, restaurant, farm, etc.) p. PGAVibC dpfflAiTEg. Sggy/qg.3

• If you have only farm income complete Parts I and III. © If you have only nonfarm income complete Parts II and III.

• If you have both farm and nonfarm income complete Parts I, II, and III.

EMI Computation of Net Earnings from FARM Self-Employment

You may elect to compute your net farm earnings using the OPTlONAL~iv.ETHOD, line 3, instead of 2, if your gross profits are: (1) $2,400 or less, or (2) more than $2,400 and net profits are less tha 2 must be completed even if you elect to use the FARM OPTIONAL METHOD.

USing the Regular Method, line n $1,600. However, lines 1 and

REGULAR METHOD I a Schedule F, line 54 (cash method), or line 72 (accrual method)

1 Net profit or (loss) from: | b Farm partnerships

2 Net earnings from farm self-employment (add lines la and b)

""TgfcS'profits METH0D J a Not more than $2,400, enter two-thirds of the gross profits . .

from farming1 are: ] b More than $2,400 and the net farm profit is less than $1,600. Enter $1.60}

I Ihe folal gross profits share of gross profits f. r Schedule SE.

4 Enter here and on line 12a, the amount on line 2, or

: K-l (Forr 2 3 if you elect the farm optional r

Computation of Net Earnings from NONFAfTlM Self-Employment

REGULAR METHOD 5 Net profit or (loss) from:

a Schedule C, line 21. (Enter combined amount if more than one business.)

b Partnerships, joint ventures, etc. (other than farming)

c Service as a minister, member of a religious order, or a Christian Science practitioner. (Include rental value of parsonage or rental allowance furnished.) If you filed Form 4361, check here *+ f] and enter zero on this line

d Service with a foreign government or international organization ....

[Sm Form 1010 in- „

e Other sim-eiio-nt for ime 36.j Specify I*

6 Total (add lines 5a through e)

7 Enter adjustments if any (attach statement)

8 Adjusted net earnings or (loss) from nonfarm self-employment (line 6, as adjusted by line 7) . . If line 8 is $1,600 or more OR if you do not elect to use the Nonfarm Optional Method, omit lines 9 through 11 and enter amount from line 8 on line 12b, Part III.

Note: You may use (he nonfarm optional method I lino 9 through line II; only it line 8 is less than 11.600 anrf less than two-thirds ol your gross nonfarm pro/its,' ;ind you had SCfOdJ net earnings from self employment of $400 or more for at least 2 of Ihe 3 following years: 1973, 1974, and i975. Trie nonfarm optional mrtnoJ can only be used for 5 taiaole years,

NONFARM OPTIONAL METHOD

9 a Maximum amount reportable, under both optional methods combined (farm and nonfarm) . . b Enter amount from line 3. (If you did not elect to use the farm optional method, enter 2ero) . c Balance (subtract line 9b from line 9a)

30 Enter two-thirds of gross nonfarm profits3 or $1,600, whichever is smaller

31 Enter here and on line 12b, the amount on line 9c or line 10, whichever is smaller

c of gross profit: - Schedule SE.

, Include gro

s pro/its from Schedule 'e K-l (Form 1065). line

■JT.JIIH Computation of Social Security Self-Employment Tax

^£3009

— SI**

$1,600

CO

£>Q

go

CO

HI

m

00

M.'

12a

12b

13 14

15c

e

£>0

b From nonfarm (from line 8, or tine 11 if you elect to use the Nonfarm Optional Method) . . . 13 Total net earninns or (loss) from self-employment reported on line 12. (If line 13 is less than $400,

- $1*1

W

-S29

q<7>

14 The largest amount of combined wages and self-employment earnings subject to social security or

$15,300

00

%

b Unreported tips subject to FICA tax from Form 4137, line 9 or to RRTA . . | 15b [

16 17

18

38 Self-employment tax. (If line 17 is $15,300.00, enter $1,208.70; if less, multiply the amount on line

5. GOVtllHMEIir PRINTING OPTICE : laW-O-i: 18-363

Figure 3: Schedule SE, "Computation of Social Security Self-Employment Tax."

BYTE January 1978 81

Then when the point is reached at which taxable income is emerging, it is possible to convert fairly painlessly to the more detailed documentation that is desirable to support tax forms. It is important, however, to start keeping records of some sort immediately. Paper bags work well for some people, a simple spiral notebook for others (there are perhaps as many systems as there are people), but without records, no tax losses can be claimed, no business expenses can be substantiated, and no firm idea of the enterprises^ success or failure can be developed.

Auditory Nerves

Any tax form is regarded as potentially fraudulent and, if it comes up for review, it is winnowed for any defect. (I have been reviewed in the past and it resulted in my receiving a larger refund.) New small businesses are especially subject to review, so extreme care is necessary when documenting expenses; but that care can pay off as a handsome tax loss or a watertight set of forms with which even the most eagle eyed taxman can find no fault. If you operate on the principle that you must be able to prove

the legitimacy of anything you claim, you need have no fear.

Conclusion

If you're trying to make some money with your home system, why not start recording what the enterprise is costing you and what you're earning from it? You may be a small business already and you may be able to derive tax benefits from that status. Almost more important, wouldn't it be nice to know whether or not your enterprise is profitable? Give it a try, and before long you'll find that the additional tax forms hold no terrors for you."

USEFUL GOVERNMENT PUBLICATIONS Available from the Internal Revenue Service (free, on request)

Tax Guide for Small Business — publication 334

Recordkeeping for a Small Business — publication 583

Tax Information on Depreciation — publication 534

Tax Withholding and Declaration of Estimated Tax —publication 505

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 not only provides large amounts of storage at low cost, but also provides for convenient storage of historical records.

• DEVELOPMENT SYSTEM features include a powerful operating System with an Editor, Assembler, and Debugger, plus a variety of System utilities which speed development.

• OEM applications include P.O.S. data capture, word processing systems, audio-visual presentation systems, telephone call transfer systems.

• HARDWARE

• Stores greater than 500K bytes per side of a C-60 tape.

• 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 adjustments required orallowed.

• Compatible with all popular S-100 Bus Microcomputers.

• Audio track under computer control.

• Eliminates the need for ROM/PROM monitors.

• SOFTWARE

• MCOS, a powerful stand-alone cassette operating system, is operationally much simpler than a D.O.S., handles variable length named files, will update a file in place, packs or copies tapes with a single command.

• EXTENDED BASIC with MCOS permits array handling and concatenation of files, plus all capabilities of MCOS.

(^PRICES START AT $240

• FREE BUYERS GUIDE

If you are shopping for a tape or disk system for your S-100 Bus Computer System, you do not have all the facts until you have the MECA "BUYERS GUIDE TO MASS STORAGE." This 10 page guide book provides a framework for evaluating cassette, cartridge, and diskbased systems. Write for your copy today.

For complete information including the Dealer nearest you, write or phone:

uicca

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

82 BYTE January 1978

Circle 59 on inquiry card.

Now you can gain all the speed and flexibility of a disk-based PolyMorphic microcomputer system without scrapping your POLY 88.

Our POLY 88 Upgrade-to-Disk Kit enables you to quickly and easily convert your POLY 88 into a complete System 8813, a very versatile disk system with one, two or three floppy disk drives.

You retain all the essential parts of your POLY 88 system (includingthe powerful BASIC software library) and gain the increased access speed and programmingflexibility of PolyMorphic's remarkable new System 8813.

Our POLY 88 Upgrade-to-Disk Kit contains everything you need to perform a quick "disk transplant" on your POLY 88 at home, using a few simple tools. Each upgrade kit contains a brushed aluminum

front panel and walnut cabinet with one, two or three floppy disk drives, controller, power supply, fan and 2K of ROM. You also receive two copies of our system disk, containing our powerful disk operating system, fully extended BASIC and versatile text editor and assembler. The single-drive POLY 88 Upgrade-to-Disk Kit costs $1,450.

Why wait? Drop by your nearest PolyMorphic Systems dealer today and have him demonstrate the speedy and flexible new System 8813 for you. Then, ask him to show you just how quickly and easily you can perform a disk transplant on your POLY 88.

If you can't drop by your dealer, please call us at (805) 967-0458. Or write PolyMorphic Systems Inc., 460 Ward Drive, Santa Barbara, CA 93111.

Perform a disk transplant

The Poly 88 Disk Kit.

BYTE January 1978 83

The Motorola 6800 Instruction Set

Two Programming Points of View

Paul M Jessop

1157 Warwick Rd

Solihull

West Midlands B91 3HQ

ENGLAND

Instruction Field Encoding.

1

X

X

X

Group 1: Dual operand instructions

/

0 = A, S 00 = I

1 = B,X 01 = D

10 = X

11 = E

OP

0

1

X

X

Group 2: Single operand instructions

00 = I

01 = D

10 = X

11 = E

OP

0 0 0 0 0

OP

0

0

0

0

1

OP

0 0 0

Group 3: TPA, TAP and NOP

Group 4: Condition code instructions

Group 5: Accumulator instructions

OP

0

0

1

0

Condition

0

0

1

1

0

OP

0

0

1

1

1

Group 6: Branches

Group 7: Stack and index register control

Group 8: Interrupt and subroutine control

OP

Figure I: One way to organize one's viewpoint of the Motorola 6800 instruction set is to view it as a number of instruction groupings, broken down by internal binary fields for selection of instructions within the group. This viewpoint is most appropriate for those working directly in binary, or organizing the code generation parts of an assembler or compiler.

When faced with the problem of trying to hand assemble a machine language program, the task of looking up each of the op codes in the manufacturer's data can be quite daunting. Admittedly, some become familiar before very long but the less common instructions still cause problems (do you 6800 users remember the hexadecimal op code for TPA?). Two solutions to this dilemma are suggested here. The first is suitable for "switch flippers" and the second for users of MIKBUG and other systems with hexadecimal dump and load functions.

The First Solution: Use Instruction Fields

Anyone who has seen the programming books for the DEC PDP 8 will be familiar with the principles involved. In the PDP 8 instruction set, the first three bits of the 12 bit word define the type of instruction and the remaining bits each have a separate function. This is of course a gross simplification and is not true for memory reference and IO instructions but it underlines the basic ideas. Now, study of the 6800 op codes reveals some interesting facts at the bit level. These are outlined in figure 1.

These patterns are naturally related to the instruction decoding which goes on inside the chip, but they are a godsend to the programmer who must work in binary. A couple of words of explanation are needed. Branch to subroutine occurs in an unexpected place but it is easy to remember if thought of as Jump, mode immediate. The generalization in group 1 bit 6 that a zero implies accumulator or stack pointer addressing does not hold true for compare index register (CPX), where it implies index register addressing. Naturally, the store instructions (STA, STS and STX) do not exist in immediate mode in the published definition of the 6800 instruction set.

The Second Solution: The Ordered Manual Lookup Table

The appropriate information is contained in figure 2. This should be a great boon to anyone who, for lack of memory or IO

84 BYTE January 1978

devices, has no assembler. The table is arranged in such a way that the first hexadecimal digit is the horizontal coordinate, just as the x component comes first in a pair of Cartesian coordinates. The credit for inspiring this technique must go to Mr Fugitt (March 77 BYTE, page 36) for his 6502 table, but this table for the 6800 is somewhat more useful for both assembling and disassembling because of the way the codes

fall into groups and the addressing modes fall into neat vertical lines.

By way of a final word, the table can, if reduced small enough, make a very handy reference card. Mine has, on the front, tables to convert between hexadecimal, octal and decimal, and, on the reverse, the conditions required for branches, the restart vectors, details of the control code register and the stack register. ■

The Ordered Manual Lookup Table

5 8

Z _ 7

<2 6

i

□ □ □

Accumulator A as one operand

Accumulator B as one operand

Miscellaneous instructions

Unimplemented

Undocumented instruction:

NBA = And accumulators HCF = Halt and catch fire STS, STX, STA, STB - store immediates

See "Undocumented 6800 Instructions" by Gerry Wheeler, page 46, December 1977 BYTE.

ACCA

ACCB

X

E

1

D

X

E

1

D

X

E

SEI

•

BLE

SWI

CLR

CLR

CLR

CLR

^

STS

STS

STS

m

STX

STX

STX

CLI

•

BGT

WAI

•

•

JMP

JMP

LDS

LDS

LDS

LDS

LDX

LDX

LDX

LDX

SEC

•

BLT

•

TST

TST

TST

TST

BSR

\J{^\

JSR

JSR

•

^

•

•

CLC

•

BGE

•

INC

INC

INC

INC

CPX

CPX

CPX

CPX

•

•

•

•

SEV

ABA ■

BMI

RTI

•

•

•

•

ADD

ADD

ADD

ADD

ADD

ADD

ADD

ADD

CLV

•

BPL

•

DEC

DEC

DEC

DEC

ORA

ORA

ORA

ORA

ORA

ORA

ORA

ORA

DEX

DAA

BVS

RTS

ROL

ROL

ROL

ROL

ADC

ADC

ADC

ADC

ADC

ADC

ADC

ADC

INX

•

BVC

•

ASL

ASL

ASL

ASL

EOR

EOR

EOR

EOR

EOR

EOR

EOR

EOR

TPA

TBA

BEQ

PSH B

ASR

ASR

ASR

ASR

STA

STA

STA

STA

STA

STA

STA

TAP

TAB

BNE

PSH A

ROR

ROR

ROR

ROR

LDA

LDA

LDA

LDA

, LDA

LDA

LDA

LDA

•

•

BCS

TXS

•

•

•

•

BIT

BIT

BIT

BIT

BIT

BIT

BIT

BIT

•

BCC

DES

LSR

LSR

LSR

LSR

AND

AND

AND

AND

AND

-. AND

AND,

AND

•

•

BLS

. PUL B

COM

COM

COM

COM

•

•

•

•

•

•

•

•

•

•

BHI

PUL A

•

•

•

•

SBC

SBC

SBC

SBC

SBC

; sbc

SBC :

SBC

NOP

CM ,

•

INS

•

•

•

•

CMP

CMP

CMP

CMP

CMP

CMP

CMP

CMP

•

SB A '

BRA

TSX

NEG

NEG

NEG

NEG

SUB

SUB

SUB

SUB

SUB

SUB

SUB

SUB

High (First) Nybble

Figure 2: A second way of viewing the 6800 instruction set is from the viewpoint of a hexadecimal matrix. Here a map of the 6800 instruction set has been broken up into several overall regions, with color coding indicating references to accumulators A and B. Unimplemented and undocumented instructions are shown with a black dot; undocumented, but implemented instructions are shown with cross hatching to indicate "use at own risk. "

BYTE January 1978 85

Product Description

About the Author

Bob Bumpous is a machine controls design engineer with Adolph Coors Company and has been doing discrete and computerized machine control design for the past four years. He previously worked for Bendix Navigation & Control Division on documentation of SKYLAB experiments. He is a 1969 graduate of Texas Technological College with a BS in engineering physics, and has an avocational interest in personal computing.

A User's Reaction to the SOL-10 Computer

Robert Bumpous 212 N Ford Golden CO 80401

Figure I: Memory allocations of the SOL design. Within the 10 area at D000 to FFFF, the SOL-10 has a UART dedicated to the tape interface, a UART dedicated to the serial communications interface, a parallel keyboard interface, one 8 bit input port and one 8 bit output port.

When I first saw the Processor Technology SOL it was love at first sight. After acquiring the SOL system, I found that it has everything (almost) a hobbyist needs in one package.

The SOL-10 system which I purchased

MEMORY MAP

PROGRAMMABLE MEMORY OR PROM MEMORY (USER SUPPLIED) 0000 - BFFF

ROM OR PROM OPERATING SYSTEM

IK USER MEMORY C800-CBFF (PROGRAMMABLE)

I K RAM VIDEO DISPLAY CCOO-CFFF

USER SUPPLIED DOOO-FFFF MEMORY OR 10

C800 CCOO CFFF

consists of a single 10 inch by 16 inch board computer, a keyboard, a power supply and cabinet. Figure 1 shows a memory map of the system which gives an idea of its overall structure. Processor Technology also makes the SOL-20 which has a heavier duty power supply and backplane for five extra S-100 cards.

The SOL single board computer is a complete beginning system. The board contains an 8080A processor with fully buffered data and-address buses which are brought to a connector at the center of the board where an S-100 compatible backplane daughter board can be plugged in. It also has a complement of IO ports. The board and operating system are oriented around the parallel keyboard input port and video display output port. 1 K of the 2 K of programmable memory on the board is used to store the 64 character by 16 line video display contents. The output of the display driver is an El A composite video signal (1.0 to 2.5 V peak to peak) which will drive any standard monitor or even a modified TV set. The full 128 upper and lower case ASCII character set is available for display. With the addition of a video monitor the system becomes a smart video terminal with either full or half duplex communications modes selectable from the keyboard.

The SOL design has an asychronous serial interface port with switch selectable data rates from 70 to 9600 bps. This serial IO port has both an RS-232 and 20 mA current loop output. Also included is an 8 bit

86

BYTE January 1978

Go tell it to your computer for $189.

Ifou can have low cost voice entry to your computer with

SpeechLab.

Heuristics' original Model 50 SpeechLab™ at $299 was a great success. So, not content to rest on our laurels, we went back to our design bench and came out with the Model 20. It sells for $189 completely assembled and tested for use with any S-100 Bus computer such as Sol, IMSAI, Altair or Cromemco and as the 20A, the Apple.

Now obviously, we had to do a few things to bring the price down. The Model 20 has a somewhat shorter manual. Technically, it's not quite as complex. Don't kid yourself though, the Model 20 does a real job. You can control your computer to do such tasks as data entry, quality control and everything else where you want a "hands-off" operation. Elsewhere in the ad we've illustrated some examples of the kinds of things you can do.

About the Model 20

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

Circle 49 on inquiry card.

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

Hardware includes 2 band pass filters with 2 bit amplitude, 2 zero crossing detectors and a linear amplifier.

The combined hardware/ software/lab manual includes 10 experiments.

The ROM based speech recognition program occupies 2K bytes of ROM.

The Model 50, still a great buy at $299.

Here's an S-100 compatible system (8080 or Z-80) capable of handling a 64 word vocabulary using 64 bytes per spoken word. You'll get high speech recognition.

Software includes SpeechBasic BASIC programming language in source and paper tape, assembly language speech recognition program in source and paper tape, hardware and self-test program in source and paper tape. SpeechBasic plot, correlation, recognition and advanced recognition programs are offered in source.

The assembly language program uses less than 4K bytes for a 32 word vocabulary. It loads at 100H. A high core version is available. SpeechBasic BASIC interpreter loads at 0 and requires 8K. A diagnostic program is included.

Documentation includes a 275 page lab manual with 35

experiments and a 100 page hardware manual. All manuals are now available as separate items. The big manual is ideal for schools and colleges as an introduction to speech and pattern recognition.

Hardware includes 3 bandpass filters (6 bits amplitude), 1 zero crossing detector, a linear amplifier, compression amplifier, 6 bit A/D converter and a beeper. The raw waveform is available for advanced experiments. A new noise cancelling microphone 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 information visit your nearest computer store. Most dealers now carry the Heuristics line. Or if more convenient write for literature. Please address Heuristics, Inc., Box B, 900 N. San Antonio Road, Los Altos, CA 94022. Phone (415) 948-2542.

Heuristics

INC.

BYTE January 1978

87

h5V

U34 74LS04

6

rl>

' R93 : I.5K

+ 5V

L

U84 4029

U86 4024

CK

Q6

Q5 Q4 Q3 Q2

Ql

Q0

TO RCVR OF TAPE UART

19200 Hz <

o

38400Hz <3153.6 KHz

u t

-»^<

< 75 B PS

S3-3 •;

S3-5

L-2400M -° *?

U58 8T94

150

<t 300

( 600

li 1200

l 2400/4800 i 9600

BREAK THIS RUN TO ALLOW 4800 BP'S JUMPER

Figure 2: One minor printed circuit bug found by the author in testing out the SOL computer was the run from point L to point M from U86 to the data rate selection switch. If 4800 bps operation is desired as an option, the run in question has to be broken and a jumper wire from point K to point M on the board has to be substituted.

parallel 10 port which allows a user to drive any external peripheral.

An option which I think is important to any system is the cassette interface. This option, used with the SOL, allows the user to read or write programs or data to a cassette tape at a software selectable rate of 300 bps or 1200 bps using standard asychronous Manchester coded signal at 1200/2400 Hz or 600/1200 Hz.

The SOL-PC board itself is a high quality double sided G-10 type material with plated thru holes. There is an excellent solder mask on the board with all component locations clearly labeled. The unit I received, which was Revision D of the board, had two defects which Processor Technology asked the assembler to change: two lines crossed on the same side of the board and two lines to the S-100 bus were reversed. Both were easy to correct and I'm sure these defects will have been corrected on the next revision of the board.

I also discovered what I think is another error on the board. In the circuit that

selects the serial data rate there is a jumper that enables either 2400 or 4800 bps to be switch selectable. The board had the switch permanently connected to the 2400 bps position. This caused the serial 10 to work improperly when 4800 bps was selected. Because there are lines feeding from this circuit to the cassette interface circuit, the cassette interface would not work properly. The problem is easily corrected by breaking the lines between the L and M jumper contacts (see figure 2).

There is a moderate amount of large scale integration on the board. The 8080A processor, the ASCII 7 by 9 dot matrix encoder, the two UARTs used for the serial and cassette tape interfaces and the 5204 (512 by 8) EROMs in the personality module are the LSI chips used. The programmable memory for the computer and display is made up of 2102 parts. All of the IO select switches and the IO connectors are located at the rear of the board for easy access. The personality module is located along the back edge to allow an easy change of the operating system.

The system timing is derived from a 14.31818 MHz crystal controlled oscillator that feeds the video character generator, UARTs, and 8080 clock divider circuits, MSI and SSI TTL along with an AH 0026 dual MOS clock driver supply the 8080 clock signals. There is an RC charge-up circuit that provides an automatic reset signal when power is turned on and a controlled "wait" period immediately after the reset signal.

The keyboard supplied as part of the SOL-10 system is a custom unit from Key Tronics which connects to the SOL-PC board through a ribbon cable connector which plugs into a header on the board. The keyboard uses no LSI encoder and no mechanical contacts and can easily be disassembled for cleaning.

The keyboard is easy to assemble and check out. All of the data bits are latched so that they can be examined at leisure. The strobe bit is only on for a very short time, two to ten /is. There is only one tricky part of the keyboard assembly procedure. This is the installation of the four SIP resistor networks. Extra care must be used in installing these since they are not as clearly marked as most of the other items, and the two different sets of values will not allow the keyboard to work properly if interchanged.

The power supply for the SOL-10 consists of a power transformer, an external filter capacitor for the 5 V supply and a regulator card to supply the required vol

88 BYTE January 1978

Workhorse or Horseplay?

5c*H

Software systems from TSC are designed for tough business and industrial uses on the job or just plain fun off the job. Whether you are looking for a system to be used primarily in a working situation or a system for the home, look into TSC software. Assembly Language Programs (Include Source 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.50

MUB-68 Multi-User System-Write for details

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

CHNICAL SYSTEMS

CONSULTANTS, INC.

BOX 2574 W. LAFAYETTE INDIANA 47906 317 742-7509

SPECIALISTS IN SOFTWARE A HARDWARE FOR INDUSTRY A THE HOBBYIST

Circle 108 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 famous TSC 6800 Text Editing System.

Written in assembly language, approximately 5k is required allowing local, global, content, character ana line operations. For example, with one command you can change the second occurrence of the string "12345" in the next 35 lines to the string "XYZ".

Included are Tabs, Overlay, block Move and Copy, Header, Append and Zones. This Editor is actually better than many large scale computer Editors! Source listing included.

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

BYTE January 197K 89

Photo J: Processor Technology SOL, with cabinet cover removed to reveal its inner secrets.

tages (12 VDC at 150 mA, 5 VDC at 2.5 A, -12 VDC at 200 mA) to the SOL-PC and keyboard. The SOL-20 system power supply, in addition to these voltages, provides 16 VDC at 1 A unregulated, -16 VDC at 1 A unregulated, and 8 VDC at 6 A unregulated for the backplane Altair (S-100) bus daughter board. The regulated 5 V to the SOL-PC board has an over voltage crowbar on its output which, on my original version, had an overly sensitive turn on characteristic. Processor Technology has since sent a revision which corrected this problem.

The SOL system cabinet is sheet metal with solid walnut sides. It is designed to house the SOL-PC, the keyboard, power supply, backplane and five additional S-100 cards in a fan cooled card cage. The cabinet is constructed so that the power supply is isolated from any radio frequency interference (RFI) switching transients in the memory or processor cards. The whole system looks well shielded, which is an important consideration in this age of CBers. The walnut sides come sanded but unfinished; they look nice but take a lot of time to finish properly.

The assembly manual that came with the system describes the assembly procedure very well. It features the kind of complete, step by step format that kit builders have come to expect. It seems very complete, including pictures and drawings of how to assemble the components and subassemblies

into a useful computer and terminal. However, there were no flowcharts, block diagrams or explanations of how the different sections of the computer are supposed to work, or how they interact with each other. As of this writing (spring 1977) I have still not received two sections of my manual, operating procedures, and theory of operation. Most of the information that I have on the operation of the machine has come from an article in the February Digital Design by Lee Felsenstein of LGC Engineering and Robert Marsh (vice president of Processor Technology), who are the codevelopers of the SOL terminal system. This article gives a fairly complete though not detailed description of the operation and interactions of the SOL system components. The CONSOL operating system, which is the minimal operating system, is stored in 1024 K bytes of EROM starting at C000. This operating system has seven commands that can be executed from the keyboard, sufficient to allow the operator to enter his or her own programs or prerecorded programs and execute them. The following are the commands available through CONSOL:

1. DUmp ADDR1 ADDR2 dumps the contents of memory between address 1 and address 2 onto the CRT terminal in a hexadecimal format.

2. ENter ADDR1 enters hexadecimal format data into memory starting at address 1.

90 BYTE January 1978

What is an accumulator?.

What is paging? A stack?

What's an I/O port?

What's the difference between a dot and vector CRT display?

What are EPROMS?

Does a program counter

count programs?'

«»«••»- COWUgB

How do you copy programs using an ordinary tape recorder?

'What can a microcomputer really do?

How do you use relative addressing? > Indexed addressing?^ Boolean logic operations? \

UNDERSTANDING MICROCOMPUTERS answers these and hundreds of other questions clearly in this profusely illustrated, easy-reading "must" book. You'll find fundamental concepts behind the operation of virtually all microcomputers, written in simple English so that anyone can gain the extra knowledge needed to read and understand computer magazines, manufacturers' literature, and feel "at home" around computers. Here are just a few items discussed ...

— How a CPU is organized and how it follows sequences of directives to solve problems

— Illustrates basic instructions from almost every class of microprocessor

— Discusses common memory addressing modes—illustrates typical uses

i What kind of personal computer should I buy?

What you must know to tell a computer what to do when using machine language programming methods ■ Explains use of flow charts, program worksheets, hand assembly of source codes into object codes, memory maps, purpose of an Editor, Assembler, Monitor

Benefits of using a high level language

Introduction to BASIC How a computer communicates. Types of commonly used input/output devices and their operational concepts Practical aspects of selecting a small computer system Plus, hundreds of other practical facts and information

If you are at all curious about small computers, you must own this 300 page no-nonsense text that reads like a simple book! Includes an easy-to-use glossary of key microcomputer oriented words. UNDERSTANDING MICROCOMPUTERS. The name says it all. Order your copy now!

AT ICELBI COMHIIII CONIUL1ING INC.

m^ Dept. 000

Post Office Box 133 PP STN Milford, CT 06460

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

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

IMPORTANT! Include 75iJ postage/handling for each item delivered by U.S. Mail Book Rate; or $2 for each item shipped First Class or via UPS.

Circle 94 on inquiry card.

BYTE lanuary 1978 91

Photo 2: The SOL's display generator produced this video character graphics pattern on the author's television monitor.

3. EXecute ADDR1 executes a program in memory starting at address 1.

4. TErminal is a program designed to allow the SOL system to be used like a standard CRT terminal with serial 20 mA or RS232 interface. This ability could make the SOL system very attractive to a small business user who needs an inexpensive terminal.

5. TL (tape load) loads a prerecorded cassette tape into memory at an address specified by the tape. The information supplied with the software doesn't give a very good definition of how the TL command looks at the tape header data. Because of this, it is very difficult for the user to configure a tapeheader for any data he or she would like to store on a cassette.

6. BAsic executes a program located at address 0000, typically BASIC.

7. The final command is the MODE command which calls a program that allows all the other commands to be entered on the keyboard and recognized by the computer system.

The early version of CONSOL which I received does not have a command to dump data from memory into a cassette tape. This

is a great disadvantage when trying to develop a program. Whether the program being developed bombs out or is successful, it is nice to have a copy so it doesn't all have to be typed in again.

The purchaser of a SOL system is also supposed to receive a 5 K BASIC operating system with the purchase of the on board audio cassette interface. This 5 K BASIC includes two computer video games. I had not yet received this when this article was written in the spring of 1977.

I ordered my SOL system on September 4 1976 and anxiously awaited its arrival. Only a portion, the SOL-PC, arrived on November 18 1976 along with part of the manual. When I opened the box I was confronted with what appeared to be a rather large, random accumulation of parts. However, all of the parts called out in the parts list were there. The assembly would have gone faster if the components had been sorted, placed in small bags, and marked as to the section of the assembly procedure they were for.

The procedure given in the manual calls for construction and checkout to proceed together. To follow the manual you must have a power supply and keyboard to properly assemble the complete SOL system. Because I didn't have either of these items, I was only able to proceed with the assembly until I came to the first step, which required the power supply; there I stalled. I spent all of Christmas 1976 lurking around the mail box, awaiting the delivery of the rest of my system. Finally, on January 4, it arrived and off to my basement "laboratory" I scurried, not to emerge "til the beaste was up and running."

After much soldering, bending and clipping, I reached the point of the first operations test. I plugged in my TV monitor, turned on the SOL system power, hit the MODE key, and typed in the DUMP command. Nothing! All I could get was the CURSOR in the upper left hand corner of the screen. This is when the lack of block diagrams and explanations of the system really hit me. After what seemed an extremely long time, I managed to solve the problem. The display uses the first several words of user memory to store the line and character positions for the video display, and somehow, in my haste to complete the assembly, I had bent a pin under on one of the memory chips. Dumb, but almost impossible to locate. Once this problem was solved, the rest of the system went together very smoothly.

The total assembly time, excluding the

92

BYTE lanuary 1978

time I spent looking for my own error, was about 36 hours. The sanding and coating of the walnut cabinet sides took about five more hours. I used clear satin polyurelhane finish of the type found in most hardware stores. This is a very hard, clear, fast drying resin that puts a tough, mar resistant sealer on the side panels.

Overall, I feel that the Processor Technology entry in the microprocessor race is a good buy. I have had what seems to me excessive delays but I believe that now that the production of these units is in full swing, there should be a minimal amount of lead time on the system hardware. Processor Technology says that they have sold almost 1,000 of these systems. The software development, however, seems to be lagging well behind the hardware as might be expected from the history of computer science in general.

If you are planning to develop your own software or plan on buying it somewhere other than Processor Technology, the SOL system will serve you nicely. The CONSOL routine provides a step up from the front panel toggle switch design philosophy of most of the other microcomputer manufacturers and I feel it warrants the purchase of this system."

Editors' Note:

At the time this article was edited (August 15 7977) a SOL-20 with 16 K memory and CONSOL was resident in our office at BYTE. 5 K BASIC is now being delivered, according to Terry Holmes of Processor Technology.

The Following Comments Were Received from Bob Bumpous with His Author's Proofs on October 7 1977.

Since completing my SOL-10 I have written a couple of short programs to test the various hardware options of my system.

I have also purchased the SOL upgrade kit which adds the larger power supply fan and backplane and an IMS 8 K memory.

I have received the two missing sections of my manual and my BASIC tape. I have not yet been able to run BASIC due to a problem I'm having getting my cassette tape interface to operate properly.

I have also received my SOLOS operating system; all of the functions except the tape interface seem to work well.

Circle 38 on inquiry card.

BYTE January 1978 93

Walter Banks

Computer Communications Network Group

University of Waterloo

Waterloo, Ontario CANADA

The Waterloo RF Modulator

In recent months a number of projects have taken advantage of the special input characteristics of Schmitt trigger TTL parts. They have been used as oscillators, monostable multivibrators and signal conditioning elements. This reminds me of a simple circuit I used as a video radio frequency generator when I worked on a low cost terminal development project.

As can be seen from the schematic, IC1A is a conventional free running Schmitt trigger oscillator running at one third of the desired television channel carrier frequency. For example, channel 3 would require it to osciljate at about 20 MHz. IC1B acts as a buffer whose output is a square wave at the

fundamental frequency of the oscillator. A square wave has odd order harmonics, the second of which is at three times the fundamental, the third at five times, and so on.

Q1 modulates the generated radio frequency output by varying the effective power supply voltage to IC1. Since standard video is one volt peak to peak, the modulation depth is about 20 percent in this circuit when using a standard 5 V supply.

Most low cost television sets have a hot chassis, therefore a simple capacitive connection is provided by connecting a 6 inch piece of 300 ohm twin lead to the output of IC1B and the computer's ground, and taping a second piece of 300 ohm twin lead to the top of the first making physical contact but not direct electrical contact. The second piece of twin lead is then connected to the set's antenna terminals.

As with all radio frequency devices, normal caution should be exercised with this device in preventing unwanted interference. (For example, don't leave your antenna connected to the set if you want to keep peace with your neighbors.)"

Figure 1: The Waterloo RF Video Modulator. This circuit works by modulating the power supply voltage of a digital integrated circuit. The frequency of oscillation is set by resistor RI and should be adjusted for best reception on the chosen channel. Capacitive coupling between two DC isolated sections of ordinary twin lead gets the signal into the television set without any worries about AC ground problems.

Rl

lOOfl -*p&—

41

51

•22pF

T

VIDEO

75il

IV PEAK TO PEAK

rJ>

ioon

-W\<

y

ICI 7413 POWER GROJJND

7

€

Q 2N4402

17511

+ 5V

1,

POWER SUPPLY

>

m

6 OF TWIN LEAD FROM MODULATOR, TAPED OR GLUED NEXT TO TWIN LEAD FROM TV SET WITHOUT DIRECT ELECTRICAL CONNECTION

94 BYTE January 1978

MSD

WhatYou See is What YouGet!

Now, A Video System You Can Afford!

MSDV-100

Video Display System:

The Video Display System is a high quality 80 character, 24 hue video output device for the S-100 bus. Many advanced features have been incorporated which are not normally found on units costing many times the price.

The character set includes upper and lower case characters as well as full punctuation. Any character can be underlined, a feature useful in word processing. A character can also be made to blink at a user selectable rate, often used for alarm or warning situations. Additionally a character can appear in reverse field (black on white) or, if composite video is used, individual characters can be intensified.

Also included in the MSDV-100 is the ability to generate high quality continuous forms overlays. Charts, graphs, or order entry forms are easy to produce on the video screen.

CIS33E ' "■ «-i

.'::■'

=^: =

A third significant feature of the Video Display System is the ability to display grey scale elements in any of nine levels in any of 1920 positions on the screen. This is especially useful for bar graphs and for grey scale graphics or animations.

Internally, the MSDV-100 is a two-board S-100 based system which occupies 2K of RAM address space and two I/O ports, user selectable. The microcomputer can write to the screen directly with horizontal retrace synchronization if desired for a flicker free, very high speed display.

Software support for the MSDV-100 is complete with both machine language code, including fully commented source listings, and a comprehensive Basic software package implementing all MSDV-100 features. Assembly language drivers allow the sophisticated user to easily customize the system for specilized applications.

Programs are provided that permit the user to link the video system to high level programming languages such as Basic. A link program, provided in Basic, permits the user with no knowledge of assembly language programming to immediately obtain video output. The link fully implements the forms capability of the MSDV-100, including direct cursor addressing, as well as the other advanced features of the Video Display System.

MSDD-100

Floppy Disc System:

The MSDD-100 Floppy Disc System is a significant advance in low cost, high density mass storage systems. Using the industry standard Shugart SA400 minifloppy™ drive and a highly reliable LSI controller, the single card MSDD-100 Floppy Disc System represents a major cost/performance breakthrough for the hobbyist and businessman.

Many features not provided on larger disc systems are standard on the MSDD-100 Disc system. The controller will support up to three drives and provides all of the disc timing functions, therefore no software timing loops are required. A very flexible onboard vectored interrupt structure is provided, a valuable feature for use in modern multi-tasking applications.

The disc controller design is totally synchronous, requiring no "one shots". Ease of maintenance is evidenced by the fact that there are no adjustments required for operation.

Circle 71 on inquiry card.

r

' 4^

1

Also included are disc driver routines for Altair Basic, which allow program and data storeage on disc, and permit sector level I/O through Basic. Many programs and files may be kept on a single disc, and cassette I/O is retained. These drivers work with 8K, 3.2, 8K 4.0, Extended 3.2 and 4.1 versions of Basic.

The Altair/SlOO compatible disc controller is a single board design, and features very low power consumption.

Included free with each MSDD-100 Floppy Disc System is a software package, provided on diskette, for formatting, certifying, and copying discs, as well as programs for creating fully customized memory-to-disc and disc-to-memory routines which may be put in read-only memory. In addition, assembly language I/O driver listings are provided to facilitate custom applications programming.

2765 So.Colorado Blvd.Suite 110 DenvGr.CO80222 (303)758-741l\

Sanyo Monitor (VM4209) $150

Micro-Floppy Disc System $499*

(Assembled) $599*

Video Display System $285

(Assembled) $385

Additional Drivers $350 ea.

Diskettes $4.25 ea.

*Power Supply not included. To place Order, send check, money order or BA or MC Card # with exp. date and signature. Uncertified checks require 6 weeks processing. Phone orders accepted. Please Send me the following: AMOUNT

TOTAL:

Name

Address

City. State, Zip

□ Send me more information

sense organs, and the design and execution of movements in space, lend themselves perfectly to parallel processing in small subunits. Here the brain can vastly outperform our typical current computers which have only one, or at most a few, processing units capable of simultaneous operation. For example, all of the data in the visual field is available simultaneously on the surface of the retina. Rather than dealing with it point by point, the brain sucks it all in at once in one enormous byte and sets to work on the analysis of many small areas of the visual field simultaneously. (We shall examine its algorithms in detail later.)

Even with the small cheap processors available to us now, we could obviously never afford to match the brain in quantity. However, we don't have to go to the other extreme and try to do it point by point serially with a single very fast processor as has been typically attempted. The job is just too large for even the fastest machine to do this way, and there are certain advantages as well in terms of the feature extraction process to having a basically parallel system. On the other hand, we do have a speed advantage and it certainly should be possible to simulate the operation of a number of the brain's processors with only one of ours in the same time frame. (There will be some increase in complexity where the results of neighboring units are interactive.) Just how to optimize this sort of tradeoff is, of course, a matter for much study. A first step which we shall take here will be to examine some of the tricks and shortcuts in the feature extraction process that the brain itself uses to save time.

The third system characteristic which results from the brain's hierarchical organization is high survival value. We will learn nothing about Asimov's first two "laws" of robotics (the protection of human beings) by studying the brain. The third law, ensuring the survival of the robot, has always been a major concern of brain architecture. It is annoying, but not usually fatal when the big machine in the computer center develops a fault. When it happens to a brain, or in the situations we will send them into, a robot, the whole device may be destroyed. The redundancy inherent in the brain's basic structure is, of course, valuable in this regard, but there is more to it than that. Recall two facts about the brain: There is an evolutionary order of development to its structure, and the major functions have representation at all levels. These two facts are related. Whereas our computers have never been expected to incorporate pieces of earlier models, the brain in the present form contains most of the parts of its earlier

forms. The simplest early brains obviously had to be capable, in their own inelegant way, of getting the organism around in the environment and surviving. During the course of evolution, more complex structures capable of more sophisticated handling of the same basic functions became available. Rather than eliminating the older structures and duplicating their functions, the newer ones simply took control of the older and used them as subprocessors. A fairly general principle of organization evolved in which the higher level structures control the lower not by turning them on when needed, but by inhibiting their actions except as desired. The beauty of this system is that if a higher center is suddenly damaged, the older, more primitive units which it normally holds in inhibition are released to function on their own. Thus, damage tends not to eliminate vital functions, but only to downgrade the complexity with which the job can be performed. This is especially true of functions such as defense. The typical result of damage to higher brain centers is a "nasty" animal, ie: one which can adequately fight, but which fails to make fine discriminations about the appropriate stimulus conditions for doing so, and which defaults in the safe direction by attacking any strong stimulus source. Of course this kind of thing has its limits, and this is particularly true of the most highly developed brains where some of this type of organization is sacrificed in order to give the highest centers direct access to the lowest for feedforward in the control of complex operations.

In the case of damage to lower centers, the multitude of processing elements available allows some of the higher levels to be reprogrammed to take over the functions of lower level systems by simulating their operation. The process takes a little time to organize, but it can be quite effective if the organism can survive for a few weeks while reorganization takes place.

While it is apparent that it is not possible to give a definite answer to the question of where a function of any complexity is performed in the brain, it may be useful (for orientation to the device) to identify some of the anatomical divisions of the brain shown in figures 3 and 4 with some of the functions which have important representation at those levels.

The lowest level of the central nervous system, the spinal cord, is a major route of input and output to the rest of the brain. With the exception of a few special cases, most of the sensory input from the body and most of the output to the muscles passes through this structure. Although it contains

98

BYTE January 1978

FREE SOFTWARE in DR. DORB'S JOURNAL

>* rnMPi ptf WCTFyQ x, Xf

COMPLETE SYSTEMS & APPLICATIONS SOFTWARE

User documentation, internal specifications, annotated source code. In the two years of publication, DDJ has carried a large variety of interpreters, editors, debuggers, monitors, graphics games software, floating point routines and software design articles.

xv x> xv xv

INDEPENDENT CONSUMER EVALUATIONS

* * * * *

*

*

PRODUCT REVIEWS & CONSUMER COMMENTS Dr. Dobb's Journal publishes independent evaluations—good or bad- of products being marketed to hobbyists. It is a subscribersupported journal. Dr. Dobb's carries no paid advertising; it is responsible only to its readers. It regularly publishes joyful praise and raging complaints about vendor's products and services.

po box 6528 denver, Colorado 80206 (303)777-7133

«r

NUMBER 8

It is not very often that there is a journal/newsletter that the Digital Croup is able to recommend without some hesitation (and we get them all). However, Dr. Dobb's Journal of Computer Calisthenics & Orthodontia is one pleasant exception. Jim Warren, the editor, has put together a good concept and is managing to follow through very well indeed. There is no advertising in the Journal. It is supported solely on subscriptions. That also means that manufacturers have zero leverage over the content of the magazine. The Journal'■ primary purpose is to place significant software into the public domain and to provide a communications medium for interested hobbyists. The approach is professional and they are growing quickly.

(In case it might appear otherwise to some people, there is no official link whatsoever between the Digital Group and Dr. Dobb's Journal - we've taken our lumps as appropriate just like everyone else when Jim felt they were? justified.)

We think Dr. Dobb's Journal is here to stay and for everyone in the hobbyist world of computers.

publication that is a must Don't miss it!

Xr * X^ X^ XV XV

"THE software source for microcomputers. Highly recommended."

Philadelphia Area Computer Soc. The Data Bus.

"It looks as if it's going to be THE forum of public domain hobbyist software development.

Rating - ft ft ft ft" Toronto Region Association of Computer Enthusiasts ( TRA CE), Newsletter

"The best source for Tiny BASIC and other good things. Should be on your shelf."

The Computer Hobbyist,

North Texas (Dallas) Newsletter

&LHTS MORE I I Dr. Dobb's Journal LUIU IWIUIIk ■ ! of Computer Calisthenics ¥& Orthodontia

Circle 86 on inquiry card.

♦Hot News& Raging Rumor

♦Systems Projects

of Computer Calisthenics

Please start my one-year subscription (ten issues) to Dr. Dobb's Journal of Computer Calisthenics & Orthodontia and bill me for just $12.

NAME

ADDRESS

CITY/STATE ZIP

Unconditional Guarantee: If you ever wish to discontinue your subscription for any reason, we will refund the complete amount for the remainder of your subscription.

□ Visa

□ Mastercharge

Card Number

Expiration Date. Signature

Outside the U.S., add $4 for surface postage. Airmail rates on request.

Mail this coupon or a facsimile to: Dr. Dobb's Journal, Dept 53, El Camino Real, Box E, Menlo Park CA 94025

UYTE January 1978 99

immense fiber tracts, it should not be considered merely a cable. The nuclei of the spinal cord perform many important functions as intelligent terminals on both the input and output sides. Moreover, some simple actions are processed entirely at the level of the spinal cord from input to output. Everyone has seen an example of such a "spinal reflex" in the knee jerk produced by their doctor's rubber hammer.

The medulla and pons are also importantly involved in "intelligent terminal" types of 10 activities, but at the so-called suprasegmental level of control. That is, these structures are frequently concerned with coordinating the activities of the 10 routines in the cord so as to direct activities that involve the entire body rather than individual segments such as a single limb. For example, the pattern of motor activity involved in walking requires the coordination of the whole body to maintain balance as the center of gravity shifts, etc (such things as the decision to walk, and the choice of direction are in the province of higher centers). The medulla and pons also have important relations to a number of the special senses such as hearing and balance which are not represented throughout the body. Some of this sensory information is utilized immediately as input to supra-segmental reflexes, and some is processed for output to higher centers.

A complex physiological organism requires a great deal of regulation of its internal environment; the temperature must be exact, the heart rate must be regulated, inhalation must be controlled. These "housekeeping" routines also have representation at this level of the brain.

The mesencephalon is in many ways similar to the pons and medulla in its functions. In general, there is a transition from higher to lower degrees of abstraction in these 10 systems as one progresses from the mesencephalon down to the medulla. The mesencephalon is in addition one end of a system, originating in the limbic system of the forebrain, which is important in regulating the type and intensity of the high level processing performed by the more advanced structures of the forebrain. There are two systems of the brainstem (medulla, pons, and mesencephalon) which may be mentioned in this context. The first is a system known as the reticular formation which has important functions in the brain analogous to the vectored interrupt system of the computer. It continually monitors the input of all the sensory systems, more for quantity of activity than for detailed analysis, and controls the degree of activation of various portions of the higher centers on this basis.

Thus, it can immediately arouse the brain when a novel or intense stimulus is encountered, and jump the whole system to a stage of attention to, and analysis of, the important event. It also seems to exercise similar functions on the output side of operations.

The second "system" of the brainstem might be called the "amine" system, because it consists of a set of interacting nuclei which use various compounds of the chemical class known as "amines" in their operation. This system has a great deal to do with the mode of operation of the rest of the brain. Like the reticular formation, with which its activities are integrated, it sends its axons into all parts of the brain to make synaptic contacts with large groups of neurons in the forebrain and the brainstem and cord. Since the axons of these few neurons make millions of synaptic connections with vast numbers of neurons, we might expect that their function was a regulatory bias rather than the transmission of very specific information, and this appears to be the case. These nuclei are involved in such functions as regulation of waking, sleeping, and dreaming states, and apparently other "altered states of consciousness" since the hallucinatory drugs such as LSD are thought to exert their major effects here. Problems in some of these amine systems appear to underlie such abnormal operational modes as schizophrenia. Some portions of the amine system also regulate the intensity and selection of the various detailed patterns of activity generated by higher structures. Thus, in Parkinson's disease, which involves a disorder of part of this system, the ability to execute voluntary activities is impaired, although the conception of them is not. The systems of the brainstem thus exert a very major control over the general types of activity in which the higher levels of the device engage. A very interesting development here is the closing of this loop by return projections from the highest levels of the brain, the cortex, which allows the machine to gain control over its own status. This loop is fundamental to the phenomenon of consciousness.

Lying above the pons is the structure known as the cerebellum. This device is a subprocessor for some types of motor output. It is basically involved in the parallel to serial conversion of output that is not to be continuously modified by feedback control to the higher levels which specify its input. It can accept a parallel byte which defines an action to be undertaken, modify it to incorporate the current status of many variables of limb position, loading, etc, and

100

BYTE January I978

OSBORNE #> ASSOCIATES, INC.

C^

The World Leaders In Microprocessor Books

eft

Many books on microprocessors and their use are now on the market, and most of them have names that sound alike. But Osborne & Associates' books have dominated this market since 1975, when our first book appeared. With rave reviews from all over the world, with more than three hundred university text adoptions, our books are all best sellers. In fact, "An Introduction To Microcomputers: Volume I — Basic Concepts" now holds the world's record in sales volume for any computer textbook sold for a profit.

If you want information on microprocessors, begin with the Osborne books.

"An Introduction To Microcomputers: Volume 0 — The Beginner's Book" By Adam Osborne.

This is the book for the absolute beginner. Assuming that you know nothing about computers, math or science of any kind, this book explains what computers are all about — and it takes you to the point where you can read Volume I. 300 pages. Book No: 6001 $7.50

For the microcomputer user, a series of books provide complete programs, written in BASIC. All these books are by Lon Poole and Mary Borchers. "Some Common Basic Programs" 200 pages. Book No: 21002 $7.50

"Payroll With Cost Accounting pages

Book No.: 22002 $12.50

"Accounts Payable and Accounts Receivable"

Book No.: 23002 $12.50 Available early 1978

"General Ledger "

Book No.: 24002 $12.50

In Basic". 400

Available mid 1978

"An Introduction To Microcomputers: Volume I — Basic Concepts" By

Adam Osborne.

The world's best selling computer textbook.

This book explains, clearly, concepts common

to all microcomputers, yet specific to none. 350

pages.

Book No.: 2001 $7.50

8080A/8085

ASSEMBLY LANGUAGE PROGRAMMING

Lance Leventhal

"8080A and 8085 Assembly Language Programming" By Lance Leventhal.

This book is for the assembly language programmer or student; it explains assembly language programming for the 8080A and 8085 microcomputers. The book contains numerous examples. 400 pages. Book No.: 31003 $7.50

"An Introduction To Microcomputers: Volume II — Some Real Products"

(Revised June 1977) By Adam Osborne, Susanna Jacobson and Jerry Kane.

This book describes every common microprocessor and all of their support devices. Information is new and clearly written. Only data sheets are copied from manufacturers. 1200 pages. Book No.: 3001 $15.00

The "Programming For Logic Design" series of books show how to use microprocessors in a digital logic environment.

"8080 Programming For Logic Design" By Adam Osborne. 300 pages. Book No.: 4001 $7.50

"6800 Programming For Logic Design" By

Adam Osborne. 300 pages. Book No.: 5001 $7.50

"Z80 Programming For Logic Design" By Adam Osborne, Susanna Jacobson and Jerry Kane. Book No: 7001 $7.50

/*

OSBORNE & ASSOCIATES, INC.

P.O

. Box 2036

Berkeley, California 94702 DEPT.

1

;

PRICE

QTY

AMT ]

6001 Volume 0 — The Beginner's Book

$7.50

NAME

2001 Volume 1 — Basic Concepts

7.50

3001A Volume II — Some Real Products

15.00

4001 8080 Programming For Logic Design

7.50

ADDRESS

5001 6800 Programming For Logic Design

7.50

CITY STATE ZIP PHONE

SHIPPING CHARGES

rj4ih class (no charge, allow 3-4 weeks within USA, not applicable to discounted orders)

ED $.50 per book. UPS (allow 10 days) Q$1.50 per book, special rush shipment by air Lj$.50 per book, foreign surface mail EJ$3.00 per book, foreign air mail

Shipping charges for bulk orders to be arranged.

Please send information on: I [consignment I ) dealer discounts 1 1 foreign distributors

F1

7001 Z80 Programming For Logic Design

7.50

31003 8080A/8085 Assembly Language Programming

7.50

21002 Some Common BASIC Programs

7.50

22002 Payroll With Cost Accounting

12.50

5-1/2%, SF Bay Area residents only

TOTAL

6%, California residents outside SF Bay Area sa|es jax (Ca

lifornia residents only)

looks or less.

Shipping Charges

have enclosed: \ (check ( (money order TOTAL AMO

JNT OF PURCHASE

V

V.

Circle 81 on inquiry card.

BYTE January 1978 101

convert the instruction to a series of sequenced operations with specified durations. Damage to the cerebellum has no effect on conscious processes, but seriously impairs the performance of muscular actions.

Above the mesencephalon, we encounter the diencephalon. The two major subdivisions, thalamus and hypothalamus, are quite different. The hypothalamus is heavily involved in the sort of housekeeping functions mentioned earlier. It controls the secretions of the endocrine system, for example, and is involved in a wide range of functions such as temperature regulation. In its role as chief executive of internal operations it, of course, must continually monitor internal conditions. These internal conditions in turn are frequently the ultimate sources of the whole brain's functional orientation. Thus, if the hypothalamus detects a low level of sugar in the blood, it initiates a state which we experience as hunger. This state represents a reorganization of the brain's systems for the control of goal directed behavior which causes the organism to engage in food seeking behavior. The hypothalamus thus contains part of the brain's analog of a computer's priority interrupt system. On the output side, the hypothalamus is important in changing the state of the internal body functions to correlate with higher priority interrupts. For example, if the limbic system initiates a "danger encountered" state, which we experience as fear, the hypothalamus must see to it that the body is mobilized for action with regard to blood flow, adrenaline levels, etc. The hypothalamus is also an important link in the limbic system-mesencephalon organization that in general specifies goals based on drives and emotional states for use in selection of overt behavioral activity.

The thalamus, the other major component of the diencephalon, functions as a very high level 10 processor which prepares information for, and in part organizes the activity of, the cerebral cortex. Arrival of sensory input in the thalamus is sufficient for some rudimentary conscious experience of sensation, at least in some sensory modalities, but any very detailed resolution of the experience requires the enormous digital processing power of the cerebral cortex. In many respects, the various cortical areas act as subprocessors doing detail work for the various nuclei of the thalamus which route the information to and from them. Some thalamic-cortical systems are concerned with simple feature extraction of the input data, others with extrapolation of current events, and yet others with transmission of these extractions and extrapolations to other parts of the brain which, for

example, evaluate them for relevance to current drive states or return sets of similar data from memory.

In this activity, the limbic system functions in the analysis of current and extrapolated data for relevance to the organism's needs. Thus, when we are hungry and see food, the limbic system in conjunction with the other structures mentioned earlier initiates a state which enables the sensory signal of food to initiate appropriate behavior, which is generated in detail by the cortex-thalamus-striatum apparatus. We experience the operation of this state of the limbic system as pleasure. If on the other hand, the limbic system recognized unfavorable situations, other states are generated (experienced as fear or anger) which cause other sorts of detailed actions to be generated.

The striatum, like the cerebellum, is importantly involved in the organization of motor output. It generates patterns of movement on the basis of input from analytic cortical areas, which are regulated in intensity by inputs from the amine systems under the direction of the limbic system, and it outputs these patterns both to the movement controlling areas of the cortex, and more directly to lower motor mechanisms. Unlike the cerebellum, the movements generated in the striatum are under continuous control of the cortex, and since the cortex is continually receiving and processing sensory information from the environment, a closed loop system is formed. This system is importantly involved in "voluntary" and learned movements.

We have already mentioned most of the functions of the cortex since it is of necessity involved in almost all the higher functions of the other brain structures. Its operation is essentially that of a vast decoding and encoding network which gives analytic and synthetic power to the operation of the other systems. Without it, their operation would be the same in type, but would be much reduced in capability due to the loss of capacity for fine distinctions and discriminations on the one hand, and large scale generalizations and synthesis on the other. The cortex first appears in other than rudimentary form with the evolutionary appearance of the mammals. Their behavioral diversity and plasticity as compared with the stereotyped, reflexive, instinctive behavior of the reptiles is probably associated with this structure.

This brings me to the final general point I want to make about the brain before we consider the detailed operation of some of its functions. One of the most important features of the brain is that it learns. Our

102

UYTE January 1978

SYNCHROSOUND

^■ENTERPRISES, INC.HM

Everything you need in small computer systems!

LEAR SIEGLER ADM 3A TERMINAL

$739.95 849.95

Kit

Assembled

ADM 1A TERMINAL

Assembled

$1398.00

ADM 2A TERMINAL Assembled $1895.00

HAZELTINE1500 VIDEO TERMINAL

Assembled $1149.00 Kit also available

MODULAR 1

INTELLIGENT

TERMINAL

rjT^jB CENTRONICS 779 PRINTER

$1099.00

703 SERIAL PRINTER

$2395.00

761 PRINTER

KSR with Keyboard $1695.00

Assembled

$1659.00

IMSAI 8080 MICROCOMPUTER

With 22 slot

$649.95

SPECIAL BUYS

IMSAI Double Density Persci Drive $2295.00

Sorac IQ 120 Video Terminal 959.00

DEC LA 180 Printer 2769.00

Compucolor 8001 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

IS232C Serial Interface

$260.00

MODEL 22 LINE PRINTER

Tractor Feed $2249.00

TELETYPE MODEL 43 PRINTER

$1299.00

%«...,

IMSAI PCS-80/15 8085 COMPUTER

$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 most items. Full modern repair facilities on premises for complete servicing of everything we sell.

SYNCHRO-SOUND r nterprises, imc 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 • Master Charge

Circle 104 on inquiry card.

computers learn in a limited sense during programming, and some programs can learn to improve their performance on the basis of experience. This latter type of learning is characteristic of the way the brain operates, and it applies the process to almost everything it does.

You will notice that when I described some of the general functions of the different regions of the brain, I made no mention of memory. This is because we have no idea where it is. Indeed, the evidence suggests that the brain's memory is incorporated into its structure at whatever point the stored information is to act. Its memory then may be thought of as being distributed throughout its structure. At present, we can offer only speculation as to the physical nature and detailed processes of the brain's memory storage. Fortunately, we know a great deal about the operation of the brain's memory as a "black box" so that we can understand how it enters into the brain's algorithms, and we do not really need to understand its detailed physical nature to effectively use its principles of operation. Our current memory chips are a little inferior to the brain's memory in terms of capacity, but they are superior in speed and accuracy. Some programmable scratch memory and ROM chips associated with each of a robot's processing elements would do nicely, especially if supplemented by a disk for slow mass storage.

Researchers identify at least two types of learning that the brain permits, both very pragmatic. It has found that things that have occurred sequentially several times are likely to do so again, so it learns to associate them and act in anticipation. Thus, if the reflexive response of the nervous system to a painful stimulus applied to the foot is to quickly flex the leg, and if such a painful stimulus is repeatedly preceded by a "neutral" stimulus such as a bell sound, the brain will quickly learn to flex the leg whenever the bell sounds. This is the so-called "Pavlovian conditioned reflex." The potential utility of this scheme is obvious. Assuming the natural reaction to the painful stimulus is of use to the organism, then performing the reaction in response to the antecedent neutral stimulus allows the organism to get a jump on the world and perform more efficiently. This kind of action, although not the capacity to learn it, is employed in some computer memory systems which anticipate the next address call. Two limitations of this type of learning should be noted. The first is that the only thing that can be learned is the early performance of the natural response to the second stimulus. Thus, the organism's

behavioral repertoire is not expanded, just made more efficient. The other is that all that is necessary for this type of learning is temporal contiguity of the events; it does not matter whether or not the anticipation is successful in improving the results. If you tape an electrode to the foot so that a shock following a bell occurs whether or not the leg flexes, the flexion of the leg still gets conditioned to the bell.

A second type of learning in which the brain engages is called "operant conditioning." This is the type of learning that permits us to expand our behavioral repertoire and base such expansions on the quality of the results. Simply stated, this type of learning is based on the principle that behaviors immediately preceding a reward are increased in future probability of occurrence. "Reward" here refers either to some pleasing event occurring, or some unpleasant state being terminated. Thus, behaviors that lead to good results will tend to recur. If we now add to this the second principle, that the behaviors immediately preceding the reward are the most strongly affected, it follows that more efficient behavioral routes to the reward are more strongly affected than less efficient ones. In this fashion, whole new behavioral patterns are built up out of successful components of more or less random exploratory behavior, and these quickly become welded together into tight and effective behavioral sequences.

The more developed brains rely very heavily on learning to produce most of their behavioral patterns. Less developed ones rely most heavily on prewired inflexible behaviors. Thus, evolutionary primitive brains, such as those offish, amphibians and reptiles, while capable of limited learning, generally rely on wired in behavior patterns that are available at birth. The advantage is early ability of the immature organism to fend for itself. The disadvantage is inflexible behavior that cannot easily adapt to an environment that differs from that in which the species evolved. Advanced mammals on the other hand, particularly man, are characterized by heavy reliance on learned behavior, which results in a protracted state of infantile helplessness followed by enormous behavioral flexibility and adaptiveness.

The parallel with our current attempts at robots is obvious. The major hurdle is designing a system that can operate in a generalized environment rather than being restricted to a specialized one with which it is preprogrammed to deal. The answer is also obvious. A successful robot must be capable of operant conditioning including the ability to be rewarded for successful at

104

BYTL January 1<J7S

The difference is value. Take a look at our low-cost microcomputer's heavy duty cabinet. Even with the cover removed, it maintains its rigid structural integrity. But we don't stop there. Quality built Vector Graphic products, from boards and kits to complete systems — such as our Memorite turn-key text editor shown below — beat all competitors in mechanical, thermal and electrical design.

Based on an 8080A microprocessor and the S-100 bus structure, Vector Graphic microcomputers are compatible (with the exception of minor I/O patches) with all of the current 8080A software.

If you're designing small business systems, text editors, control equipment, games or even microprocessor development, it will pay you to look into our low cost microcomputers and interface boards, kits or assembled.

Rush me details today.

Yes, I'm interested in:

□ Systems □ Boards, kits or assembled □ Microcomputers

Name

Firm

Phone

Address

City/State/Zip

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

CO^ G3APHC inc.

1

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

BYTE January 1978 105

Control your Premises! with INTROL

the Intelligent Remote Control System

Mountain Hardware's new IntroT" system is a sophisticated remote control system that communicates over the standard 110 VflC power lines. The AC Controller'" board is an S-100 compatible board that is capable of controlling up to 64 remote units onywhere in your building. The AC Remote™ unit has two independently controllable AC sockets that can turn two 500 watt appliances on or off. The computer can also "poll" the remote to check its status (on or off). Programs can easily be written in Basic or assembly language to monitor and control remote devices, fill future remotes (temperature indicator, remote terminal, and status sensor) will be compatible with the AC Controller board. An Apple II version is also available.

A functional Introl system requires one AC Controller board and at least one remote unit. Complete documentation is provided with each component of the Introl system along with software subroutines for your own controller programs.

PROROM

Advanced 8K Memory System

PROROM is a 7.5K CPROM + 512 RAM board that is S-100 compatible. It has a built in programmer which allows you to program the AMI-6834 CPROMs one byte at a time without special software. The kit is complete with sockets, manual, 256 bytes of RAM and one 512 byte PROM, preprogrammed with an 8080 system monitor.

KIT ASS6MSLCD

AC Controller $149 $ 189

AC Remote $99 $ 149

PROROM $164 $ 214

6834 CPROMs $10 ea.

Available now at most computer stores or directly from Mountain Hardware, Inc. Visa and Master Charge accepted. Calif, res. add 6% sales tax. (408) 336-2495.

M Mountain Hardware, Inc.

S Box 1133 Ben Lomond, CA 95005

tempts and to feel punished otherwise. This device is carried to such an extreme in advanced brains that even our basic ability to see, our perceptual structure, is learned in infancy. A newborn child has only the most rudimentary ability to interpret its visual environment; the relation between movement of the limbs and the result in visual space, the relation between certain output commands and the result on auditory input, all this and much more is painfully learned by trial and error in advanced brains. The result is the ability to modify behavior towards desired ends rather than react to stimuli in a preprogrammed fashion. The apparently random play of infants is in fact a deadly serious matter. Its emulation in our machines will be of the utmost importance to their handling of the generalized environment.

From this overview of the brain and its functional organization, it is apparent that we must now select a limited set of brain functions to discuss in detail. I think that those of most practical interest to robot designers at the present time are:

1. The brain's mechanisms of output control, including coordination and timing, and the use of feedback in the design and execution of movements in space.

2. The brain's mechanisms of sensory perception, including its principles of feature extraction, and the tricks and shortcuts that it employs in pattern recognition.

3. The brain's mechanisms for achieving goal-directed behavior, including mechanisms of emotion and motivation and their control of behavior patterns.

4. The brain's mechanisms of consciousness, intelligence and learning.

I will attempt to cover each of these subjects in some detail in this series of articles. Next month the series continues with a discussion of the output generations of biological computing devices."

BIBLIOGRAPHY

Elementary

Carlson, N, Physiology of Behavior, Allyn and Bacon, NY 1977.

Gardner, E, Fundamentals of Neurology, Sixth Edition, Saunders, Philadelphia 1975.

Advanced

Shepard, G, The Synaptic Organization of the Brain, Oxford University Press, NY 1974.

Rakic, P, Local Circuit Neurons, The MIT Press, Cambridge MA 1976.

106

BYTE January 1978

Circle 69 on inquiry card.

More Than Just Hardware.

When you put the MSI 6800 Computer System together with our FD-8 Floppy Disk Memory, you have the best 6800 hardware package available today.

But to make a computer system work, you need more than just powerful hardware, you need powerful software . . . and MSI has what you need.

MSI Disk Extended BASIC Available in Both Compiler and Interpreter Versions

The new Software Dynamics BASIC Compiler is now available from MSI in an FD-8 Disk Version. The Compiler, with random and sequential disk data files, runs 50 times faster than the interpreter version making it ideal for business applications.

The Excellent TSC Editor In An FD-8 Disk Version

TSC's new text editing system is clearly the most powerful editor available for any microcomputer system. The FD-8 disk version allows you to edit and assemble long source files from disk and to place object code on disk as well.

MSI Reverse Assembler

Our Reverse Assembler for the FD-8 allows disassembly of object code programs, complete with creation of symbol tables, labels, and equate statements. The source code is placed on disk where it can be edited and reassembled.

Interpretive Debugger

An Interpretive Debugger is now available for MSI and SWTP 6800 systems. IDB is the most complete debugging package ever released for 6800 systems.

Hardware and software .. . MSI offers a complete computer system for the hobbyist, professional, and businessman. Send for our new 1978 Catalog and get all the details about these and many other fine MSI products.

2%aW Scientific

220 West Cedar

Olathe, Kansas 66061

(913) 764-3273

TWX 910 749 6403 (MSI OLAT)

TELEX 42525 (MSI A OLAT)

Circle 65 on inquiry card.

BYTE January 1978 107

Where KAISSA Founders on a Bug and CHESS 4.6 Conquers All

The Second World Computer Chess Championships

About the Author

Peter Jennings is author of MICROCHESS, a 6502 chess playing program developed for the K/M-1, and seen in operation at the PC 77 show in A tlantic City NJ. MICROCHESS 1.5 versus DARK HORSE is a match that Peter expects to report upon in the near future to give personal computer users an idea about the prospects of entering small systems in international chess competition.

Peter R Jennings 27 Firstbrooke Rd Toronto, Ontario CANADA

The Second World Computer Chess Championships were held on August 7, 8, and 9 1977 at the Hotel Toronto in downtown Toronto Canada under the sponsorship of the International Federation for Information Processing (IFIP). 16 programs from the United States, Canada, USSR, United Kingdom, Switzerland, Netherlands, West Germany and Sweden competed in a 4 round Swiss style tournament for the world title.

The event drew large audiences of spectators including computer and chess experts from around the world. In attendance was Mikhail Botvinnik from the Soviet Union, world human chess champion during the period from 1948 to 1963. Also attending the event was Hans Berliner, former world correspondence chess champion and author of J Biit, an earlier chess playing program. Lively expert commentary was provided by international master and com

puter chess author, David Levy, who is watching computer chess developments very closely these days because his wager of 1968 that no computer chess program will beat him in a tournament before August 1978 is about to run out.

The trend evidenced by the competing programs seems to be toward larger programs running on faster machines. Three of the programs ran on Amdahl 470/V6 computers, and CHESS 4.6 was running on CDC's Cyber 176. At the other end of the spectrum, OSTRICH was the only program running on a computer at the tournament site. A Data General Supernova was used. Communications were provided to remote data centers as distant as England, Germany, and California for the nonportable programs.

The 16 entrants were initially ranked on the basis of previous play before the tournament. In the first round, the eight superior programs were played against the

108

BYTL |anuary 197S

CHESS 4.6

For the next three years CHESS 4.6 will be the reigning world champion computer chess program. CHESS 4.6 was written in the CDC assembly language by David Slate and Larry At kin at Northwestern University in Illinois, and runs on the CDC Cyber 176 located at Arden Hills MN. Initial work on the program began in the spring of 1968 and revisions have followed almost continuously since that time. Different versions of the program have held the US Computer Chess Championship title in 1970, 1971, 1972, 1973 and 1975. The program placed second in 1974, and second at the First World Computer Chess Championships, also that year.

CHESS 4.6, like almost all chess programs, plays chess by generating the possible legal moves for each side and evaluating the resultant position. The evaluation of this resultant position usually requires the generation of subsequent moves until a value can be ascertained, or until the time allotted to the evaluation has expired. Because of the number of moves normally available in a chess position (average 42), the number of terminal positions which must be evaluated grows exponentially with the depth of the search. Many programs restrict the number of moves they examine as a means to extend the depth of search. CHESS 4.6, on the other hand, conducts a full width search but is consequently restricted in the maximum depth to which it can evaluate a position. It must also evaluate each terminal position as rapidly as possible.

The evaluation of each position is based upon the material and positional factors. The material factor is considered to be the most important as most chess players will

agree. The positional factor is limited in importance to less than the value of VA pawns in material difference. The value of any given position is based on the material difference between the sides and on penalty and bonus points allocated for positional factors such as: the pieces under attack, the pawn structure (doubled, isolated, passed or backward pawns), the rock positions (squares controlled, enemy king tropism, doubling, file control and seventh rank), the bishop position (square control and development), the knights (king and center tropism, and development), the queen position (square control and king tropism) and the king position (safety, center and pawn tropism). Two different algorithms are used: one for positions involving an even material position, and a "mop up " algorithm for positions in which one side has a clear material advantage.

For further discussion of the evaluation routines the reader is directed to a chapter in reference I by David Slate and Larry A tkin in which they describe their program in some detail.

The CHESS 4.6 program plays extremely good chess. It is capable of beating 99.5 percent of all USCF rated players in the United States under tournament conditions. Perhaps even more remarkable is its play in blitz games. With restrictions of a five minute time limit for 60 moves, the program has already beaten many master players including David Levy, Hans Berliner and Lawrence Day. If any program has a chance to beat David Levy before next August, it will be CHESS 4.6. The authors will be working hard to improve the program between now and next summer. ■

BYTE January 1978

109

Game 1: White: DUCHESS. Black: KAISSA. For the record, here is the full listing of the victory of DUCHESS over KAISSA. In the first round of play, KAISSA was unexpectedly defeated by DUCHESS In an upset which will long be remembered. Post game analysis fingered a bug in KAISSA introduced by a last minute "improvement" of the program.

Note: At the last minute, we discovered that BYTE's "automatic" chessboard drawing algorithm had used inverted logic, so please note that the chessboard diagrams in this article are all drawn with Black's home squares at the bottom (Sometimes we think we could use a little artificial intelligence)...CM

White

: DUCHESS

Black: KAISSA

1.

P-K4

P-Q4

2.

PxP

N-KB3

3.

P-Q4

NxP

4.

N-KB3

P-KN3

5.

B-K2

B-N2

6.

P-QB4

N-N3

7.

N-B3

0-0

8.

B-K3

B-N5

9.

P-B5

N-Q4

10.

0-0

P-K3

11.

Q-N3

P-N3

12.

NxN

PxN

13.

B-KN5

Q-Q2

14.

P-KR3

B-B4

15.

Q-B3

R-K1

16.

R-K1

B-K5

17.

N-Q2

Q-B4

18.

B-K3

Q-K3

19.

NxB

PxN

20.

PxP

BPxP

21.

RIKD-QB1

Better is R(R1)-QB1. White has a positional advantage due to the control of the open file and the weak placement of Black's knight.

N-Q2

Q-Q4

N-B3

R(R1)-Q1

R-K2

Q-KB4

21.

22.

B-N4

23.

Q-B6

24.

B-K2

25.

Q-R4

26.

B-N5

Position after 26. . . Q-KB4.

This is the move which was apparently caused by a bug in the KAISSA program.

27.

R-B2

N-Q4

28.

R(1)-QB1

B-B3

29.

Q-N3

P-QR4

30.

P-KN4

Q-K3

Black's queen is terribly restricted.

31. R-B6 P-R5

KAISSA sacrifices the rook pawn in order to draw DUCHESS' queen away from the long diagonal.

32.

QxP

R-Q3

The KAISSA program rejected Q-R8 as an important threat, and had consequently not fully analyzed the continuation which follows.

35.

QxRch

36.

P-N5

37.

B-QB4

38.

QxQ

39.

B-B4

40.

B-Q5

41.

R-B8

42.

R-B4

43.

BxP

44.

B-K3

45.

P-Q5

46.

B-B3

47.

P-QR4

48.

R-B6

49.

BxP

33. 34.

RxR Q-R8ch

QxR R-K1

If 34. . . . K-N2, then 35. Q-B8ch KxQ, 36. B-R6ch B-N2, 37. R-B8, and mate follows.

K-N2 B-Q1 Q-K2 NxQ N-B4 K-B1 K-K2 N-N2 N-K3 N-B2 N-N4 K-Q2 N-Q3 N-B4 Resigns.

weaker or untried programs. The previous world champion, KAISSA, from the Institute for System Studies in Moscow, was paired with ninth ranked DUCHESS from Duke University in Durham NC. It was expected that KAISSA would have an easy win.

Both KAISSA and DUCHESS utilize an "opening book" computer chess strategy. KAISSA's book contains 10,000 possible opening positions, whereas DUCHESS' book contains only 3,000. The use of an opening book allows the programs to play rapidly for the first few moves of each game while maintaining a line of play previously determined to be the best by human chess masters. Only two of the programs entered in the tournament played without opening books.

After 25 moves, the DUCHESS program, playing white, was judged by David Levy to have only a marginal positional advantage over black. To this point, KAISSA had used only 14 minutes of its available time while DUCHESS had used 59 minutes.

Under the rules of the tournament, each side must complete 40 moves in the first two hours, and at least ten moves in each succeeding half hour. Several programs, including KAISSA, made use of their opponents' time by preparing replies to the most probable move expected. Very often, the expected move would be played, and the program could respond instantly.

On move 26, KAISSA unexpectedly moved its queen from Q4 to B4. Although this move appeared to be of little significance, four moves later it became apparent that black was in trouble. KAISSA's black queen was dangerously restricted and DUCHESS was threatening checkmate. A rook sacrifice was necessary to prevent the immediate loss, but a win for black was almost impossible from that point onward. After move 48, DUCHESS was declared the winner, and the previous world champion

110 BYTE lanuary 1978

IN THE L.A. AREA

TECH-MART

w 19590 VENTURA BOULEVARD •

TARZANA, CALIFORNIA 91356

(213) 344-0153

IMSAI COMPUTER

MODEL 8080 MICROPROCESSOR SYSTEM

$875

ASSEMBLED AND TESTED

INCLUDES CPU, MAINFRAME WITH 22 CARD SLOTS, FRONT PANEL, AND POWER SUPPLY. COMES ASSEMBLED AND READY TO PLUG IN AND ENJOY!

8K RAM BOARD

250 nS ACCESS

LOW POWER

NOT A KIT

$225

ASSEMBLED ANDTESTED

• S100BUS: PLUGS RIGHT INTO ALTAIR/IMSAI, OR ANY COMPUTER USING THE "ALTAIR"BUS

• CONVENIENT DIP SWITCH SELECTION OF ADDRESS ASSIGNMENT AND WAIT CYCLES

• MEMORY PROTECTION DIP SWITCH SELECTABLE IN INCREMENTS OF 256, 512 1K, 2K, 4K, or 8K BYTES

• FULLY BUFFERED ADDRESS LINES ALLOW USE IN LARGE COMPUTER SYSTEMS

16K 2708 EPROM BOARD

INCLUDESALLSUPPORT CIRCUITRY AND SOCKETS READYTO PLUG-IN 16 2708 IC'S

$99

2708'S NOT INCLUDED

• ALLOWS CONVENIENT STORAGE AND ALTERATION OF YOUR OWN CUSTOMIZED COMPUTER PROGRAMS

• S100 BUS: PLUGS RIGHT INTO ALTAIR/IMSAI, OR ANY COMPUTER USING THE "ALTAIR" BUS

• DIP SWITCH SELECTION OF MEMORY ADDRESS ASSIGNMENT

• DIP SWITCH SELECTION OF MEMORY WAIT CYCLES

• ASSEMBLED AND TESTED, NOT A KIT

8K 2708 EPROM PROGRAMMER BOARD

$145

COMPLETE SYSTEM FOR "BURNING IN" PROGRAMS INTO THE ELECTRICALLY ALTERABLE 2708 MEMORY

2708'S NOT INCLUDED

• S100BUS ALTAIR/IMSAI COMPATIBLE

• COMPLETE 2708 PROGRAMMING SYSTEM

• DOUBLES AS 8K NON VOLATILE PROGRAM STORAGE

• ASSEMBLED ANDTESTED, NOT A KIT

2708 EPROMS $1850 21L02 250 nS $175

TOP QUALITY PARTS - NOT SECONDS

74 SERIES IC's 74LS SERIES IC's LINEARS

COMPLETE LISTINGS IN OUR CATALOG

SOROC IQ-120 TERMINAL

$995

• RS-232 COMPATIBLE 24 LINES X 80 CHARACTERS INCLUDING BLOCK MODE OPTION

8080 A $14 POWER SUPPLY 12 VOLT $995

PER SCI DUAL DRIVE

$1400

• 8-INCH FLOPPY WITH IMS CABINET AND POWER SUPPLY

Many other parts available—Just call or write for free catalog

NEW PRODUCTS COMING - WATCH FOR OUR ADS - INFORMATION AVAILABLE

WE WELCOME INQUIRIES

Circle 106 on inquiry card.

BYTE January 1978

111

Figure I: An interesting foible of the "opening book" strategy is revealed when a nonstandard opening occurs. In the game of DARK HORSE versus CHAOS, CHAOS was unable to recognize the transposed standard opening taken by DARK HORSE, and as a result it was thrown immediately into its middle game mode of operation. Here is the situation in DARK HORSE versus CHAOS after move 3, P-K4.

had been upset in the first round by a previously unknown program.

It was learned the following day that the disastrous move had been the result of a bug in the program introduced when the programmers made last minute changes the evening before the tournament. The complete score of this game is printed in game 1, along with commentary.

The tournament favorite, CHESS 4.6, met Don Beal's BCP in the first round of play. Due to a system failure, the CDC Cyber 176 used by CHESS 4.6 was not available at the scheduled start of play. Tournament rules allow each team up to 30 minutes of down time during which the chess clock may be stopped. When this period has expired, the clock must run and the time used is deducted from the two hours available for the first 40 moves.

CHESS 4.6 had almost an hour on their clock when service was restored. However, they wasted no time in defeating the English program in a rapid 27 move game which was the first game to end in the first round, despite the delays.

At the end of round one, CHESS 4.6, DUCHESS, CHAOS, MASTER, DARK HORSE, and OSTRICH had one point, BELLE, BLACK KNIGHT, ELSA, and BLITZ V had one half point, and the others had no points. For the second round, the programs all played against opponents with the same number of points from the first round.

KAISSA showed the strength it had not displayed in the first round, defeating TELL,

Results of the Second World Computer Chess Championships

n

Program

Round 1

Round 2

Round 3

Round 4

Total

Rank

1.

CHESS 4.6

1 (W,13)

1 (B,6)

1 (W,3)

1 (B,5)

4

1

2. 3.

KAISSA DUCHESS

0(B,3) 1 (W,2)

1 (W,16) 1 (B,11)

1 (B,4) 0 (B,1)

1 (B,7) 1 (B,6)

3

3

2 2

4. 5.

CHAOS BELLE

1 (W.15)

a (w,7)

% (B,10) 1 (B,12)

0 (W,2)

1 (W,10)

1 (B,12) 0 (W.1)

2% 2'/2

4 4

6.

7.

8.

9.

10.

MASTER

BLACK KNIGHT

WITA

ELSA

DARK HORSE

1 (W,14) 54 (B,5)

0 (B,11) Vz (W,12)

1 (B,16)

0 (W,1) Vi (W,9)

1 (B,13) 54 (B,7) 54 (W,4)

1 (B,9) 1 (B,11) V2 (W,15) 0 (W,6) 0 (B,5)

0 (W,3)

0 (W,2) 54 (W,10)

1 (B,15) 54 (B,8)

2 2 2 2 2

6 6 6 6 6

11.

12. 13. 14.

OSTRICH BLITZ V BCP CHUTE 1.2

1 (W,8) 54 (B,9) 0 (B,1)

0 (W,6)

0 (W,3) 0 (W,5) 0 (W,8) V2 (B,15)

0 (W,7)

1 (B,14) 1 (B,16) 0 (W,12)

*/2 (B,13)

0 (W,4)

54 (w,n)

1 (B,16)

154 VA 154 114

11 11 11 11

15. 16.

BS'66'76 TELL

0 (B,4) 0 (W,10)

54 (W,14) 0 (B,2)

'/2 (B,8) 0 (W,13)

0 (W,9) 0 (W,14)

1 0

15 16

Table I: The Second World Computer Chess Championships' results at a glance. In this table, each program's results in the four rounds of the tournament are summarized. A point (I) is awarded for each win, a half point (1/2) for each draw, and zero for each loss. In the notation of each round, the score color and opponent are given in the notation $ (c,n) where ,s as the score for the round (1, 7/2 or 0), c is the color which the program played (B or W for black or white) and n is the number of the opponent in this list of programs.

112 BYTE January 1978

^[^ ILfifinHEf to ^pa §^3O0yJS %

MODEL CC-8 $175.00

4800 BAUD CASSETTE RECORDER

An ASYNCHRONOUS NRZ type Recorder with remote motor start/stop. Error rate 10° at 4800 BAUD. Can be used from 110 to 4800 BAUD into a UART or "Bit Banger PIA" -no clocking required. This is not an audio recorder. It takes RS232 or TTL signals from the terminal or computer and gives back the same signals. No audio interface is used. Motor start/stop is manual or through TTL or RS232 signals.

Tape speed is 3.2"/second nominal; 1.6'7seo. optional. 110 volt, 60 Hz, 5 watts. (220 Volts on special order). Can use high quality audio cassettes (Philips Type) or certified data cassettes. Can be used in remote locations from a 12 Volt battery.

Recommended for DATA LOGGING, WORD PROCESSING, COMPUTER PROGRAM RELOADING and DATA STORAGE. Especially recommended for 6800 systems, 6502 systems, 1800 systems and beginners with the 8080 systems. Manual control except for motor start/stop. 6800 or 8080 software for file or record searching available on request with order. Used by major computer manufacturers, Bell Telephone and U.S. Government for program reloading and field servicing.

AVAILABILITY - Off the shelf.

PROVIDES MONITOR AND TAPE SOFTWARE in EPROM. EXPANDS MIKBUG with 1 K of ADDITIONAL ROM PROGRAM.

This is a complete tape controller for the SWTP 6800 system. Has 3 K of EPROM space for your own programs. A 1 K ROM (2708) is provided with all tape and monitor functions. The ROM program is identical to our extensive 8080 ROM program.

Has one ACIA for one or two tape drives, one US ART for an additional Serial port and a 4 bit parallel port for motor control. Will control one or two CC-8 or 3M3A drives with the software provided. Can be used with other tape drives controllable with 4 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 automatically

6800 CONTROLLER for SWTP

on reset.

AVAILABILITY-Off the Shelf.

$190.00, Tested & Assmb. ($160.00, Kit)

clilUlJI ILLLIillllIllLilt II If f II t Illll tlllllfllll

2SIO (R) CONTROLLER $190.00 ($160.00 Kit)

PROVIDES MONITOR AND TAPE SOFTWARE in ROM TERMINAL and TAPE 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 terminal I/O (RS232, 20 mA, or TTL) and the data cartridge I/O, plus the motor controlling parallel I/O latches. Two kilobytes of on board ROM provide turn on and go control of your Altair or Imsai. NO MORE BOOTSTRAPPING. Loads and Dumps memory in hex on the terminal, formats tape cartridge files, has word processing and paper tape routines. Best of all, it has the search routines to locate files and records by means of six, five, and four letter strings. Just type in the file name and the recorder and software do the rest. Can be used in 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 so that you can write your own software or relocate it as desired. One 2708 preprogrammed is supplied with the board. A socket is available for the second ROM allowing up to a full 2K of monitor programs.

Fits all S100 bus computers using 8080 or Z80 MPU's. Requires 2 MHz clock from bus. Cannot be used with audio cassettes without an interface. Cassette or cartridge inputs 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 6800 machine. Replaces your MPU board with a Z80 and ROM so that you are up and running with your present SWTP 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 Automation 5-16-7 Shiba, Minato-Ku, Tokyo, Japan; Hobbydata, FACK 20012, Malmo, Sweden; G. Ashbee, 172 /field Road, London SW 10-9ag: Trintronics, Ltd., 186 Queen Street W., Toronto, Ontario, Canada; EBASA, Enrique Barges 17, Barcelona 14, Spain; ARIES, 7, rue Saint Phillipe du Roule, 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 further information. Phone Orders on Master Charge and BankAmericard accepted.

Naticnal Multiplex Corporaticn

„ .,, . - - - j 3474 Rand Avenue, South Plainfield NJ 07080 Box 288 Phone (201) 561-3600 TWX 710-997-9530 t - -,-,

Circle 73 on inquiry card.

BYTE January 1978

113

from Switzerland, in a remarkable 16 moves, the shortest game of the tournament. TELL, written by Johann Joss, was European champion in 1975, and placed third in 1976. In an interesting game, DARK HORSE, playing without the aid of an opening book, used a nonstandard opening against CHAOS, a program with an opening book of 7,500 positions. Since none of the book openings had prepared CHAOS for the very unusual N-QB3 move, it had to revert to its middle game analysis rather than responding instantly with a table lookup result. After three moves:

1. N-QB3 P-K4

2. N-B3

3. P-K4,\

N-QB3

the position was transposed to a standard Four Knight's game usually obtained by:

1.

P-K4

P-K4

2.

N-KB3

N-QB3

3.

N-B3.

CHAOS, having discarded its opening table, was now unable to recognize that this was a standard position, and wasted precious time analyzing the position to determine the correct response (see figure 1).

At the end of the first two rounds of

Techn

ical Comparisons

Author Information

Rank

Program

Computer

Language

Program Size

Word Length

Opening Book

Average Number

of Positions

Examined per

Move

Author(s)

Affiliation

Location of Computer

1

CHESS 4.6

CDC Cyber 176

Assembly

7 6 K I external core

60

5,600 positions

400,000

David Slate Larry Atkin

Northwestern Univeisity Evanston I L

Arden Hills MN

2

KAISSA

IBM 370/ 168

Assembly

250 K

32

10,000 positions

90,000

Dr M V Donskoy Dr V Arlazarov

Institute for System Studies Moscow USSR

Canada Systems Group Toronto, Ontario CANADA

2

DUCHESS

IBM 370/ 165

PL/I and Assembly

300 K

32

3,000 positions

1,200

Tom Truscott Bruce Wright Eric Jensen

Duke University Durham NC

Triangle Universities C C Triangle Park NC

4

BELLE

PDP-11 with chess hardware

"C"

8 K

16

10,000 positions

30,000

Ken Thompson Joe Condon

Bell Telephone Labs Murray Hill NJ

Bell Telephone Labs Murray Hill NJ

4

CHAOS

AMDAHL 470 V/6

FORTRAM

3 megabytes

32

7,500 positions

30,000

Mike Alexander T McBride Fred Swartz Bill Toikka Vic Berman Joe Winograd

University of Michigan Ann Arbor Ml

Amdahl Corporation Sunnyvale CA

6

BLACK KNIGHT

UNIVAC 1110

FORTRAN

30 K

36

70,000 positions

7,500

Ken Sogge F red Prouse Gary Maltzen Lonny Lebahn Elliot Adams

Sperry Univac St Paul MN

Sperry Univac Roseville St Paul MN

6

DARK HORSE

CDC 6600

FORTRAN

24 K

60

NO BOOK

1 2,000

Ulf Rathsman

Telefon AB LM Ericsson Stockholm SWEDEN

Multiple Access Computer Group Toronto, Ontario CANADA

6

ELS A

Tele

funken

TR440

Assembly

100 K

48

500 positions

Ludwig Zagler

Technischen Universitat Munchen WEST GERMANY

Technischen Universitat Munchen Munich WEST GERMANY

6

MASTER

IBM 370/ 168

PL/I

170 K

32

450 variations

100,000

J A Birmingham Peter Kent

Rutherford Lab and AERE Harwell, Oxfordshire UK

AERE Harwell UK

6

W1TA

AMDAHL 470 V/6

ALGOLW

350 K

32

9,000 positions

250

Tony Marsland

University of Alberta Edmonton, Alberta CANADA

University of Alberta Edmonton, Alberta CANADA

11

BCP

CDC 6400

FORTRAN

and

Assembly

24 K

60

1,000 positions

1,000 per second

Don Beal

Queen Mary College London ENGLAND

McMaster University Hamilton, Ontario CANADA

11

BLITZ V

XEROX SIGMA 9

FORTRAN

24 K

32

5,000 positions

500

Robert Hyatt

University of Southern Mississippi Hattiesburg MS

University of Southern Mississippi Hattiesburg MS

11

CHUTE 1.2

AMDAHL 470 V/6

BPL (Extended XPLI

250 K

32

45

variations

900

Mike Valenti Zvonko Vranesic

University of Toronto Toronto, Ontario CANADA

Industrial Life Technical

Services (1ST)

Montreal, Quebec CANADA

11

OSTRICH

Data

General

Supernova

Assembly

20 K

16

NO BOOK

10,000

Monroe Newborn George Arnold

McGill University Montreal, Quebec CANADA

At tournament site.

15

BS'66'76

IBM 370/ 168

FORTRAN

200 K

32

1,000 positions

150

Baiend Swets

Private entry

Tilborg NETHERLANDS

Datacrown Limited Toronto, Ontario CANADA

16

TELL

DEC Kl 10

ALGOL 60

15 K

36

Johann Joss

Eidgenossische Technische

Hochschule

Zurich SWITZERLAND

Dalaline Systems Toronto, Ontario CANADA

Table 2: Technical characteristics of contestants. This table lists the major characteristics and source of each program entered into the Second World Computer Chess Championships. A total of 33 people were actively involved in the design and programming of the 16 programs entered in the contest; while no personally owned microcomputers were entered in the 1977 championships, we expect some future editions of the contest to include contestants from the world of personal computers.

114 BYTE January 1978

A BIT OF Everything

The Best of Creative Computing

Volume I

The Best of Creative Computing

Volume II. Culled from pages of Creative Computing Magazine, these two volumes provide fiction, fun, foolishness, and plenty of nuts and bolts commentary and programming information for anyone curious or serious about the wonderful world of personal computing. 38.95 per volume.

How to Program Microcomputers by

William Barden, Jr. Here is a guide to assembly language programming of the Intel 8080, Motorola MC6800, and MOS Technology MCS6502 microprocessors. It is written especially for beginning programmers with hobbyist microcomputers based on one of these three chips. The topics covered range from data manipulations at the bit level up to handling of tables and lists and from simple adds and subtracts up to floating point operations. 38.95.

APL—An Interactive Approach Second

Edition, Revised, by Gilman and Rose. Here's an excellent way to introduce yourself to the APL language. APL is rapidly becoming one of the most popular high level languages in the computer field because of its clarity and conciseness. Gilman and Rose have extensively updated their popular book to include the latest information about the language and the various forms of it which are now in use. Since the examples are all carefully spelled out, APL—An Interactive Approach is particularly recommended for those who do not have access to an APL terminal. Answers to all problems are included. 311.95.

Structured Programming in APL

Structured Programming in APL by

Dennis P Geller and Daniel P Freedman ". . . .Our approach is to present the fundamentals of structured programming in APL. Students may go on from here to learn to write faster programs or more compact programs, or more aesthetic programs; this we hope is where they learn to write working programs." From the Preface. 38.95.

mi

IEEE.

rrrfZ

inn

rrrlZ

Bar Code Loader by Ken Budnick is

the key that unlocks the door to PaperbyteTM Software Books. Included in this publication is a brief history of bar codes, a look at the PaperbyteTM Bar Code format including flowcharts, and a general bar code loader algorithm. Well documented programs with complete implementation and checkout procedures are included for 6800, 6502 and 8080/Z-80 based systems. Individuals with computers based on these processors can use the software directly. Individuals with other processors can use the provided functional specifications and detail examples to create equivalent programs. $2.00.

DIAL YOUR BANK CARD ORDERS ON THE BITS TOLL FREE HOT LINE: 1-800-258-5477.

In New Hampshire, call: 924-3355 Check Payment method:

Send to- i#K»-. ^"y check is enclosed

BITS, Inc. ' Bill my MC No / / / Exp. date.

70 Main Street JSlm mmm Bill my BAC No L L / Exp. date.

Peterborough IMH 03458

Name

Address

Total for all books checked Postage, 50 cents per book for_

3

Citv

State

Zip Code

Overseas, 75 cents per book for.

Grand Total

. books S_

_books S_

3

Signature

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

Prices shown are subject to change without notice.

All orders must be prepaid.

In unusual cases, processing may exceed 30 days.

Circle 8 on inquiry card.

BYTt January 1978 115

White: KAISSA

Game 2: The shortest game of the tournament was KAISSA's defeat of TELL in the second round.

P-K4 N-KB3

B-N5

Black: TELL

P-K4

N-QB3

N-B3

The Berlin defense. As Fred Reinfeld pointed out, "The drawback of this once popular defense is that it leads to a weak pawn position for Black."

NxP

NxP

PxN

N-B4

N-K3

P-QB4

P-KR4?

B-K2

4.

O-O

5.

P-Q4

6.

NxN

7.

QxP

8.

R-K1ch

9.

N-QB3

10.

Q-K5

11.

N-Q5

12.

B-N5?

Position after 12. B-N5.

12.

Q-R4

13.

BxB

P-QN3?

14.

QxNP

R-R3

15.

Q-N8ch

N-B1

16.

QxN mate

play, only two programs, CHESS 4.6 and DUCHESS, had two wins to their credit. These two programs played each other in the third round. After a hard fought 50 move game, CHESS 4.6 extended its winning streak to three games.

Throughout the tournament, the moves of the OSTRICH program were punctuated by the familiar clatter of Monroe Newborn's ASR 33 Teletype, audible to the entire audience. On the sixteenth move of his game against BLACK KNIGHT, the Teletype began to clatter madly. It was obviously in an open loop. The cover was removed, and an urgent call was made for any ASR 33 experts in the audience. Unable to continue play, OSTRICH was forced to resign from the game. Later it was learned that, although the Teletype was making the noise, the fault lay with the serial IO interface of the minicomputer, and not with the terminal.

Problems were not confined to the on

site minicomputer. In the final round of play, CHESS 4.6 was matched with BELLE, running on a PDP-11 located at the Bell Telephone Laboratories in Murray Hill NJ. The game was interrupted for several minutes because BELLE was experiencing communications difficulties.

An interesting aspect of the BELLE system was the use, for the first time, of a microprogrammed hardware move generator added to the PDP-11. This feature allowed a much faster generation of positions for analysis and is thought by many to be the route to better chess playing computers. In this case, it was not enough. After 52 moves, CHESS 4.6 mated BELLE to win the game, and the tournament.

The final results, shown in table 2, show that CHESS 4.6 was the undisputed champion with four wins, KAISSA and DUCHESS tied for second with three wins each, and CHAOS and BELLE tied for third with two wins and a draw each.

Prizes of another sort went to the following programmers and their programs:

1. One programmer inserted (just for fun) a message into his program to print "POSSIBLE MATE IN x MOVES" each time a mate threat was discovered in the analysis. When the position became dangerous during round 1, the number of possible mate threats became enormous. The programmer was unable to interrupt the program as it listed page after page of possible mate combinations in 2, 3, 4, ... 16 moves. As a result, the opponent's move could not be entered and the game was lost due to a time forfeit. None of the mate threats were irrefutable. By round

2, the message had been removed. 2. A bug in another program was not a new one. It had been in the program for nearly ten years. Unable to locate the exact cause of a fatal run time error which occurred sporadically during the program execution, the programmer devised a subtle solution to prevent the program from abending during a game by trapping the error code before the operating system could react to it and initiating an error recovery routine which would restart the program and skip the error prone analysis. A message was directed to the line printer to inform the programmer that the recovery routine had been called. This procedure had allowed the program to compete successfully in several tournaments without a single fatal abend. During

116

BYTE January 1978

Introduction To Microcomputers,

Volume 0, is written for the absolute beginner, the person who "knows nothing" and needs the elementary understanding necessary to ask questions and decide where he wants to go. "The Beginner's Book" tells you what microcomputer systems are all about: the component parts, options available, and what they can do for you. Volume 0 also gives an introduction to microcomputer logic. S7.50.

Getting Involved With Your Own Computer by Leslie Solomon and Stanley Veit answers the questions: "What can small computers do? Which is best fo my purposes?" Whether your interest is business applications, word processing, education, security, etc., this lucid text will bring you in touch with an exciting new world destined to affect us all. $5.95.

fGetting *«£?

! Compaq AGuiste-

Get Down

to Business

Payroll With Cost Accounting in

BASIC is now available. The book includes program listings with remarks, descriptions, discussion of the principles of each program, file layouts, and a complete user's manual with step-by-step instructions, flow charts and sample reports with CRT displays. All 35 programs are written in the widely used computer language BASIC, and work together to produce a payroll, right down to the printing of paychecks and maintaining of employee records. $12.50.

Microprocessors: From Chips to Systems by Rodnay Zaks is a complete and detailed introduction to microprocessors and microcomputer systems. Some of the topics presented are: a comparative evaluation of all major microprocessors, a journey inside a microprocessor chip, how to assemble a system, applications, interfacing (including the new S-100 bus) and programming and system development. $9.95.

Microprocessor Interfacing Techniques

by Austin Lesea and Rodnay Zaks describes the complete assembly of a microprocessor system: assembling a processor; IO techniques; interfacing to a keyboard, LED display, Teletype, printer, floppy disk, video display, cassette-tape; industrial interfacing: analog to digital (and vice versa) techniques; communications; and standards, including Altair (S-100), IEEE-488, CAMAC. A complete case study is presented for a multi-channel communication system and a chapter is dedicated to troubleshooting techniques. Actual interconnects are presented for a number of microprocessors including the 8080 and the 6800. $9.95.

MICROPROCESSOR

INTERFACING

TECHNIQUES

t

SSH^'

DIAL YOUR BANK CARD ORDERS ON THE BITS TOLL FREE HOT LINE: 1-800-258-5477

In New Hampshire, call: 924-3355

Send to:

BITS, Inc. ^mm

70 Main Street JSmm

Peterborough NH 03458

Check Payment method:

My check is enclosed

Bill my MC No L

.Bill my BAC No._

J_

_L

Exp. date . Exp. date .

Name

Address

&t*_

State

Zip Code

Total for all books checked Postage, 50 cents per book for_ Overseas, 75 cents per book for Grand Total

$_ , books S_ _books $_

S

Signature

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

Prices shown are subject to change without notice.

All orders must be prepaid.

In unusual cases, processing may exceed 30 days.

Circle 8 on inquiry card.

BYTL January 1978 117

Game 3: The final game of the tournament was BELLE versus CHESS 4.6, listed here.

White

:BELLE

1.

P-K4

2.

N-KB3

3.

P-Q4

4.

N-B3

5.

P-K5

6.

P-QR3

7.

PxB

8.

B-N5ch

9.

B-Q3

10.

N-N5

11.

N-B3

12.

PxP

13.

B-K3?

14.

BxQRP

15.

O-O

16.

RxR

17.

B-QB5

18.

B-Q6

19.

Q-R1

20.

QxQ

21.

R-R1

22.

P-B3

23.

R-R4

24.

PxN

25.

R-KN4

26.

B-B2

27.

R-QR4

28.

R-R1

29.

PxP

30.

B-N1

31.

K-R1?

32.

N-Q4

33.

N-K2?

34.

N-N1

35.

R-R5

36.

P-B3?

37.

P-R4?

38.

PxP

39.

K-R2

40.

R-R4?

41.

K-N3

42.

K-R3?

43.

R-R8

44.

K-N4

45.

K-R3

46.

K-R2

47.

R-Q8ch?

48.

R-KN8?

49.

R-N7?

50.

R-KR7

51.

R-R3?

Black: CHESS 4.6

N-QB3

P-K3

P-Q4

B-N5

N/1-K2

BxNch

N-R4

B-Q2

R-QB1

P-KR3

P-QB4

RxP

RxP

N-B5

RxRP

NxR

Q-R4

N-B5

N-B3

N/3xQ

B-B1

N-B3

NxB

K-Q2

P-KN4

KxP

P-N4

P-QN5

NxP

B-Q2

P-B4

R-QB1

B-N4

R-B8

RxB

B-B8

R-N7

BxPch

PxP

BxPch

B-R4

P-B5

B-N3

R-N7ch

RxN

R-N5

K-K4

B-K5

B-B6

N-Q6

Position after 51. R-R3?

51.

52. K-R1

R-N7ch N-B7mate

round 1, the error recovery routine was called three times. In round 2, it was called ten times; in the third round, 20 times. But in round 4, the position of the game somehow triggered a tight loop around the patched code. The run time error was triggered 800,000 times. The error recovery routine was called 800,000 times, and 800,000 lines of printed output awaited the programmer at the data center the next day. The program did not abend, but it also did not win. It probably spent most of its time in the error recovery routines.

The standard of play evidenced by the programs competing in this tournament shows considerable improvement over that demonstrated three years ago in Stockholm at the First World Computer Chess Championships. Still, no program available at this time is capable of defeating a master ranked player in regular play. Room for improvement still lies in the need for the incorporation of long range plans into the computer chess algorithms. This is an aspect of chess play which is vital to good human strategy and yet completely lacking from all conventional computer chess programs.

Also needed are some fundamental improvements in the end game play of the programs. Most of the current algorithms suffer the consequences of the "horizon effect," a term coined to describe the blunders made when a program fails to see threats or opportunities one or more levels below the maximum number of plies it has searched. This is a particular problem in end game strategy, where short term heuristics are not necessarily relevant to the winning combination.

Current advances in artificial intelligence, pattern recognition and multiprocessors are likely to enable significant improvements in the chess ability of future computer systems over the next few years. It is now quite conceivable that master level play will be achieved within this decade, and yet it is still entirely possible (if not probable) that grand master play will not be achieved in this century."

BIBLIOGRAPHY

1. Peter W Frey, editor, Chess Skill in Man and Machine, Springer-Verlag, New York, 1977.

2. Monroe Newborn, Computer Chess, Academic Press, New York, 1975.

3. M Botvinnik, Computers, Chess, and Long Range Planning, Springer-Verlag, NY, 1970.

118 BYTE January 1978

We Speak Your Language...

Practical Microcomputer Programming:

The Intel 8080 by W J Weller, A V Shatzel, and H Y Nice. Here is a comprehensive source of programming information for the present or prospective user of the 8080 microcomputer, including moving data, binary arithmetic operations, multiplication and division, use of the stack pointer, subroutines, arrays and tables, conversions, decimal arithmetic, various 10 options, real time clocks and interrupt driven processes, and debugging techniques.

This 306 page hardcover book is well worth its $21.95 price and should be in every 8080 or Z-80 user's library.

COLLECTION

OF

PROGRAMMING

PROBLEMS

AND

TECHNIQUES

A Collection of Programming Problems

and Techniques by H A Maurer and M R Williams. Here is a book that presents you with problems—nearly 400 of them: problems and games like chess, bridge, NIM; practical problems such as applications of the law of science, Kramer's rule for solving simultaneous equations, and applications of Latin squares to problems of probability; and more advanced computer science topics such as the use of Backus Naur form. One quarter of the book is devoted to an appendix that gives stymied readers hints on how to proceed with solutions of the problems. The most valuable feature of the book is its careful and thorough explanation of the use of algorithms to solve problems. No dyed-in-the-wool programmer or experimenter will be able to read this book for very long before trying to solve the tantalizing and well presented problems. $13.50.

$9.00

THE FIRST

BOOK

OF

KIM

ORB

Top Down Structured Programming

Techniques by Daniel McCracken who has called structured programming "a major intellectual invention." What is structured programming? Clement McGowan and John Kelly answer this question in their lively, well written book, Top Down Structured Programming Techniques. Discover the three basic types of flowcharts and how to optimize them. One section deals with the best ways to manage programs being written by a team of programmers. An important feature of this book is its universality: practically any program in any language can be improved by using the ideas described in it. $15.95.

The First Book of KIM. Attention KIM

users! Here is the book you've been waiting for. In it you'll find a beginner's guide to the MOS Technology KIM-1 microcomputer as well as an assortment of games including Card Dealer, Chess Clock, Horse Race, Lunar Lander and Music Box. Also featured are diagnostic and utility programs for testing both the computer and external equipment (such as cassette recorders), and chapters on expanding memory and controlling analog devices. This 176 page volume should prove an essential addition to any KIM user's library. $9.00.

6800 Programming for Logic Design

8080 Programming for Logic Design by

Adam Osborne. These books are sequels to Adam Osborne's previous books. An Introduction to Microcomputers, volumes 1 and 2. They explain how an assembly language in a microcomputer system can replace combinatorial logic such as TTL logic and the like. If you're a logic designer, you'll discover how to do your job in a new way. If you're a programmer, you'll find many new and valuable techniques including the use of macros, high level languages, peripheral interface adapters (PIAs), and so on. Also included are complete chapters on assembler language, direct digital logic simulation, and large sections devoted to the implementation of all these ideas using the Motorola 6800 processor and the 8080 processor. $7.50 each.

DIAL YOUR ORDERS ON THE BITS TOLL FREE HOT LINE: 1-800-258-5477. In New Hampshire, call collect: 924-3355

Send to: j

BITS, Inc. ^mm

70 Main Street —~. mmim .Bill my BAC No.

Peterborough NH 03458

Check Payment method:

My check is enclosed

Bill my MC No

. Exp. date . Exp. date .

Name

Address

Total for all books checked Postage, 50 cents per book for

CUiL

State

Zip Code

Overseas, 75 cents per book for.

Grand Total

. books S_ _books $_

Signature

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

Prices shown are subject to change without notice.

All orders must be prepaid.

In unusual cases, processing may exceed 30 days.

Circle 8 on inquiry card.

BYTE January 1978 119

IJEARNTO PROGRAM

M1CROC OMPl "TERS

And at an affordable price. The Modu-Learn™ home study course from Logical Services. Now you can learn microcomputer programming in ten comprehensible lessons. At home. In your own time. At your own pace.

You learn to solve complex problems by breaking them down into easily programmed modules. Prepared by professional design engineers, the Modu-Learn™ course presents systematic software design techniques, structured program design, and practical examples from real 8080A micro-computer applications. All in a modular sequence of 10 lessons . . . more than 500 pages, bound into one practical notebook for easy reference. You get diverse examples, problems, and solutions. With thorough background material on micro-computer architecture, hardware/software tradeoffs, and useful reference tables. All for only $49.95.

For $49.95 you learn design techniques that make software work for you. Modu-Learn™ starts with the basics. Our problem-solution approach enables you to "graduate" as a programmer.

Circle the reader service number below to receive our free descriptive brochure and course outline. Use your Master Charge or VISA card to order today. Call Pat at (415) 965-8365.

Circle 58 on inquiry card.

711 Stierlin Road Mountain View, CA 94043 (415) 965-8365

BYTE's Bits

SERVICES INCORPORATED

NCC Personal Computing Festival

A Personal Computing Festival will share the public spotlight in conjunction with the 1978 National Computer Conference to be held June 5-8 in Anaheim CA. A call lor papers has been issued for the Festival program to be held |une 6-8 at the Disneyland Hotel adjacent to the Anaheim Convention Center. Included as part of the 3 day program will be presentations of invited papers, contributed papers, and tutorials, as well as panel discussions relevant to personal computing. Letters of intent to participate as either an author, panelist or session chairperson must be submitted by February I 1978. Authors who have received notification of acceptance must submit final papers by March 15 1978 in a specified camera ready format.

Chairperson of the Festival program is )im C Warren |r, editor, Dr Dobb's Journal of Calisthenics and Orthodontia, Woodside CA. According to Warren, approximately 30 sessions are planned with emphasis on the following areas, although papers and session proposals on other topics are encouraged:

Tutorials for computer novices. Speech synthesis and speech recognition.

Computer driven and computer assisted music systems. Computer graphics and video art. Personal computers for the physically disabled.

Personal computers for education. Business systems using "home" computers.

Hardware and software design and implementation.

Standards for hardware, interfaces and software.

Papers presented during the Festival program will be published in a softbound book, Festival Digest 78, which will be available during the NCC.

Potential authors should immediately send a "letter of intent" including an abstract of their proposed talk to: Jim C Warren Jr, Star Route POB 111, Redwood City CA 94062; (415) 851-7664. Festival author kits, which will be mailed to authors, contain instructions and the necessary materials for preparing the camera ready copy.

Session chairpersons must submit two copies of a 250 word abstract describing the scope of the proposed sessions and tentative title of presentations by February 1 1 978. In the case of panel

sessions, the prospective organizer should list proposed panelists, their titles and affiliations, and a brief biography of each speaker. Prospective session chairmen will be notified as to the disposition of suggested sessions by February 10 1978.

In addition to the Festival program, there will be an exhibit of personal computing products and services and an exhibition of individually designed home and hobby computers and applications.

Information on NCC 78 may be obtained from AFIPS, 210 Summit Av, Montvale NJ 07645 or by calling (201) 391-9810.■

When Is ASCII Not ASCII?

One reader recently wrote in complaining that a product advertised as an ASCII keyboard was in his opinion not an ASCII keyboard at all. ASCII is the American Standard Code for Information Interchange, a 7 bit definition of data and command codes maintained by ANSI, the American National Standards Institute. The crux of this reader's comment about the product in question is that:

• First, the keyboard in question only defined an ASCII subset.

• Second, the control sequences generated by this keyboard were not what he wanted.

To the first point, one might comment that rare is the keyboard which can generate all 128 possible codes of an ASCII set; it is sometimes hard enough finding one which gives both upper and lower case. But just because the full ASCII set is not generated does not mean that we don't have an ASCII keyboard. If the keyboard generated EBCDIC (Extended Binary Coded Decimal Information Code, IBM's nonASCII code) or other codes, then it could validly be said not to be an ASCII keyboard; but this reader's keyboard did indeed put out ASCII codes for ASCII graphics. To the second point, one might comment that the ASCII definition says nothing about how the codes are generated in a particular piece of hardware. In many instances, the CTRL key does indeed act as a shift key of sorts, but this is not the only possible way to generate control character values in hardware given human inputs. ■

120 BYTE January 1978

Circle 64 on inquiry card.

MORE 6800 SOLUTIONS:

FOR SWTPC 6800

FOR MOTOROLA "D2'

M6800 SOFTWARE

f AS-1 ANALOG INTERFACE MODULE \

• FAST, ACCURATE A/D, D/A CONVERSIONS

• 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 SIGNALS IMPLEMENTED

• MOST VERSATILE SERIAL I/O AVAILABLE

.• $30.00 KIT $40.00 ASSM.

/DA-1 UPGRADE KIT

• CONVERTS D2 TO TERMINAL I/O

• RETAINS FULL CASSETTE I/O CAPABILITY

• INCLUDES RT/68MX ROM MONITOR/O.S.

• ALLOWS USE OF BASIC, EDITORS, ASSEMBLERS, ETC.

• RS-232 SERIAL INTERFACE

• DAI w/70 p. MANUAL $69.95

MOTOROLA MMS68104 16K RAM

• 16K BYTES DYNAMIC RAM

• ENGINEERED SPECIFICALLY FOR "D2"

• EXORCISOR — TYPE BUSS V $395.00 ASSEMBLED

A/BASIC COMPILER \

• 8K EXTENDED BASIC COMPILER

• CONVERTS BASIC PROGRAMS TO FAST, MEMORY EFFICIENT MACHINE LANGUAGE

• DESIGNED'FORRT/68 —SUPPORTS MULTIPROGRAMMING

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

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

An Interesting Point About the State of Computer Technology

In a recent conversation, Stephen M Hicks of FORTH Inc made an interesting point about personal computers and the present state of public awareness of technology: the personal computer viewed as a toy is to present day technology what the "erector set" was to mechanism and structural technology in an earlier era. When mechanical construction toys first caught on, the public was aware of numerous examples of existing structure in transportation and general industry that could be modeled and emulated through the learning device of the construction toy. Viewing the personal computer as an educational toy, the present day consumer has a means of learning about and

ACM's New Special Interest Group on Personal Computing

The Association for Computing Machinery has chartered a new Special Interest Group on Personal Computing called SIGPC. SIGPC will be operated exclusively for educational and scientific purposes in the design and applications of computer systems for home, clerical, small business, management and recreational uses. It also includes the technology of such systems in software and hardware, and emphasizes techniques appropriate to the integration ol such tools as graphics, speech, data management and music systems. Dr Portia Isaacson, who chaired the 1977 National Computer Conference, has been appointed chairperson of SIGPC. To join SIGPC, write to the Association for Computing Machinery, FOB 12105, Church Street Sta, New York NY 10249."

understanding what goes on in computer systems (which are seen throughout industry and commerce today) via working examples of programs and appli

cations. This general awareness of computer systems and their extensive effects is perhaps part of the widening public fascination with computers. . ,CH»

HOBBYISTS! ENGINEERS! TECHNICIANS! STUDENTS!

Write and run machine language programs at home, display video graphics on your TV set and design microprocessor circuits - the very first night — even if you've never used a computer before!

RCA C0SMAC microprocessor/minicomputer

SPECIFICATIONS

ELF II features an RCA COSMAC COS MOS 8-bit microprocessor addressable to 64k bytes with DMA. interrupt. 16 registers. ALU. 256 byte RAM. full hex keyboard, two digit hex output display. 5 slot plug-in expansion bus. stable crystal clock for timing purposes and a double-sided platedthrough PC board plus RCA 1861 video IC to display any segment of memory on a video monitor or TV screen.

USE ELF II FOR... GAMES

Play interactive keyboard games, games with analog inputs, games utilizing your TV set for a video display! GRAPHICS

Create pictures, designs, alphanumerics and fabulous animated effects on your TV screen for hour after hour of family fun! CIRCUIT DESIGN Design circuits using a microprocessor. Use ELF II as a counter, alarm system, lock, controller, thermostat, timer, telephone dialer, etc. The possibilities are infinite! Coming Soon! Exclusive Netronics Plug-In Program Debugger and monitor allows visual display of any program on a clock pulse by clock pulse basis to help you learn programming f-a-s-tl • 4k memory • Cassette I/O • D to A, A to D • Controller plug-ins.

A THOUGHTFUL GIFT

FOR ANYONE WHO MUST

STAY UP TO DATE IN |

COMPUTERS AND

ELECTRONICS1

ELF

ii

$0095

■ mmmm SENDTODAYi NETRONICS R&D LTD., Dept. BY11

99

333 Litchfield Road. New Milford Yes! / want to run programs at h o in e a n d h a ve enclosed: D $99.95 plus $3 p&h for RCA COSMAC ELF II kit. Featured in POPULAR ELECTRONICS. Includes all components plus everything you need to write and run machine language programs plus the new Pixie chip that lets you display video graphics on your TV screen. Designed to give engineers practice in computer programming and microprocessor circuit design, ELF II is also perfect for college and college-bound students (who must understand computers for any engineering, scientific or business career). Easy instructions get you started right away, even if you've never used a computer before!

As your need for computing power grows, five card expansion bus (less connectors) allows memory expansion, program debugger/monitor, cassette I/O, A to D and D to A converters, PROM, ASCII keyboard inputs

CT 06776 Phone (203) 354-9375 controllers, etc. (soon to be available as kits). Manual includes instructions for assembly, testing, programming, video graphics and games plus how you can get ELF II User's Club bulletins. Kit can be assembled in a single evening and you'll still have time to run programs, including games, video graphics, controllers, etc., before going to bed! D $4.95 for 1.5 amp 6.3 VAC power supply, required for ELF II kit. D $5.00 for RCA 1802 User's Manual. □ I want mine wired and tested with the power transformer and RCA 1802 User's Manual for $149.95 plus $3 p&h. Conn. res. add sales tax.

NAME— .

ADDRESS .

CITY .

STATE

_ZIP_

□ Send info on other kits! i'kum, AaLi iceyooarci inputs, Dealer Inquiries Invited

Circle 74 on inquiry card.

BYTL January 1978

121

Structured Programming with Warnier-Orr Diagrams

Part 2: Coding the Program

David A Higgins

Langston Kitch and Associates

715 E 8th St

Topeka KS 66607

In part 1 we carefully constructed a design structure. In order to make the most of that structure a few words about programming style are in order. While it is true to a certain extent that any method of coding the structure will produce a logically correct program, matters of syntactical

errors resulting from shoddy coding techniques as well as problems with maintainability seem to indicate that a great deal of care should be exercised in the construction of the actual program code.

For this particular example, I'll use a fairly standard version of BASIC that

REPORT PROGRAM

BEGIN PROGRAM

OPEN PILES

SET INITIAL VALUES

READ FIRST RECORD

BEGIN YEAR

f SKII

r

BEGIN MONTH

MONTH II,ml

PRINT HEADINGS

PRINT STARTING BALANCE

INITIALIZE RUNNING BALANCE

BEGIN DAY

DEBIT 10,11

TRANSACTIONS II.il

CREDIT (0.11

MOVE CHECK NUMBER, CHECK -TO". AND CHECK AMOUNT TO PRINT LINE

SUBTRACT CHECK AMOUNT FROM RUNNING BALANCE

MOVE RUNNING BALANCE TO PRINT LINE

PRINT A LINE

PRINT SECOND LINE (0,11

SPACE ONE LINE

MOVE DEPOSIT AMOUNT. DEPOSIT DESCRIPTION TO PRINT LINE

ADD DEPOSIT AMOUNT TO RUNNING BALANCE

MOVE RUNNING BALANCE TO PRINT LINE

PRINT A LINE

SPACE ONE LINE

END TRANSACTION f GET NEXT RECORD

0

END MONTH

PRINT CURRENT BALANCE

END PROGRAM

CLOSE FILES

Figure 1': Final Warnier-Orr diagram description of the checkbook balance report program (reproduced from part I).

122 BYTC January 1978

runs on a J100 Jacquard Systems computer. The concepts and construction rules arc just as applicable to Tiny BASIC, assembly language, and especially APL. Obeying the following five coding conventions will help you write a program that will execute on the first time.

Coding Convention 1: Names Should Be Indicative of Function

For versions of BASIC that only allow one letter names, this is often a little hard, but for most other languages with multiple character symbols, it is a must. For instance, a field that contains an amount should be labeled AMOUNT, an address field should probably be called ADRESS, and so forth. Cutesy names: SNEEZY, DOPEY, GRUMPY, HELL (a perennial favorite label for adolescent COBOL programmers) are to be strictly avoided.

Coding Convention 2: Comments Should Be Used Freely

Comment lines in programs written in obscure languages, APL for instance, should probably outnumber actual lines of code. Comment lines are especially useful for explaining unclear methods of calculation, complex decisions, etc.

Coding Convention 3: Every Bracket of a Warnier-Orr Diagram Should Represent a New Subroutine

Languages that do not permit subroutines or languages that limit the levels of nesting of subroutines are very tricky to use and should be avoided if at all possible. Save your spare change for three or four weeks and go buy a better version of BASIC; there are plenty of good ones on the market. In BASIC, each subroutine should be clearly labeled with REMark statements.

Coding Convention 4: Subroutines Should Be as Short as Possible

If a subroutine contains too many statements it is difficult to understand and maintain. It also means you are probably doing something in this subroutine that should be put in another subsequent subroutine. In most high level languages a practical limit of 10 to 20 statements is appropriate.

( MATCH )

SUBTRACT SUBJECT V FROM OBJECT V

COMPLEMENT DIFFERENCE

GET

IDENTIFICATION

CODE

LAUNCH \^YES

-/ RETURN )

T"

"1

! DIFFERENCE I >3 !

GET VERTICAL EXTENT OF OBJECT

-*!'

USE HMATCH TO DETERMINE SIGHTING FLAG STATUS

USE VSIGHT TO DETERMINE SIGHTING FLAG STATUS

( RETURN )

Figure 2: This a a flowchart chosen at random for comparison to a WarnierOrr representation.

BYTE January 1978 123

This rule is standard structured programming practice.

Coding Convention 5: GO TOs Should Be Avoided

In higher level languages, GO TOs can often and should be eliminated entirely. However, in versions of BASIC that do not have a DO verb and in assembler, GO TOs are often necessary. Utmost care is urged whenever a GO TO is used; it should only be used as a last resort. In assembly language, use of arbitrary jumps or branches should be avoided.

When coding the program, the order of the subroutines is not crucial. The only piece of code that must be fixed in any certain location is the highest level bracket which must be the first executable line, or lines, of code. One possible way of coding the first section is to omit the first bracket and consider the code as the main program. For BASIC, subroutine calls are left unnumbered until the subroutine is actually written. In this case, we use nnn to indicate an unknown number.

100 REM CHECKBOOK BALANCE REPORT PROGRAM

110

REM

BEGIN PROGRAM

120

GOSUB nnn

130

REM

YEAR (1,Y)

140

LET ENDYR = FALSE

150

GOSUB nnn

160

IF ENDYR = FALSE THEN GOTO 150

170

REM

END PROGRAM

180

GOSUB nnn

190

END

Another way to program this section would be to have the above piece of code as a subroutine to an even higher level procedure as follows.

8 0 REM CHECKBOOK BALANCE REPORT PROGRAM 90 GOSUB 110

9 5 END

. 100 through 180 as above 200 RETURN

Either way of coding is acceptable. Note that the GO TO in statement 160 is used to create the structure of a DO UNTIL, a feature that is not available with this particular BASIC.

The center path of the Warnier-Orr diagram is the easiest to begin to code at this point. So the code for the YEAR, the MONTH, and the DAY routines is shown next; for the subroutine YEAR:

250 REM YEARLY PROCEDURE

260 REM BEGIN YEAR 270 GOSUB nnn

280 REM MONTHS (1,M)

124 BYTE January 1978

Circle 18 on inquiry card.

290

LET ENDMO = FALSE

300

GOSUB nnn

310

IF ENDMO = FALSE THEN GOTO 300

320

REM

END YEAR

330

GOSUB nnn

340

RETURN

For the subroutine MONTH:

3 50 REM MONTHLY PROCEDURE

360

REM

BEGIN MONTH

370

GOSUB nnn

380

REM

DAYS (1, D)

380

REM

DAYS (1,0)

390

LET ENDAY = FALSE

400

GOSUB nnn

410

IF ENDAY = FALSE THEN GOTO 4 00

420

REM

END MONTH

430

GOSUB nnn

440

RETURN

For the subroutine DAY:

450

REM

DAILY

PRO

460

REM

BEGIN

DAY

470

GOSUB

nnn

480 REM TRANSACTIONS (1,T)

490 LET ENDTRN = FALSE

500 GOSUB nnn

510 IF ENDTRN = FALSE THEN GOTO 500

520 REM

END DAY

530

GOSUB nnn

540

RETURN

The TRANSACTIONS process breaks down as follows:

550 REM TRANSACTIONS ROUTINE

560 REM CREDIT (0,1) OR DEBIT (0,1)

570 IF CDFLAG = CREDIT THEN GOSUB nnn ELSE GOSUB nnn

580 REM END TRANSACTION 590 GOSUB nnn 600 RETURN

Subroutine DEBIT is coded a bit differently from the way it was designed for one simple reason. BASIC will let you output from the same fields that were read in as input; many languages do not. Therefore, the only code remaining in the subroutine is the subtraction of the amount from the running balance and the print commands.

610 REM DEBIT PROCEDURE

620 LET RUNBAL = RUNBAL - AMOUNT

650 PRINT ON PRINTR: DAY, CHKNUM, DESC1, DRAMT, CRAMT, RUNBAL

660 IF DESC2 t SPACES THEN PRINT ON PRINTER: DESC2

670 PRINT ON PRINTR: SPACES

68 0 RETURN

The symbol # is the not equal to operator. Note that this code makes no attempt to format the output line. Although the facility is available with this version of BASIC, it differs greatly from other line formatting BASICs around, and would serve only to confuse the immediate issue.

Grab your

bus...

8?8 8 I ?

i o o Too i l o i o T

o o n I

...with our Model 150

S-100 bus

Logic Analyzer.

D PLUGS INTO ANY S-100 SLOT

D MONITORS ADDRESS, DATA, STATUS, INTERRUPTS AND CONTROL SIGNALS

D CAN ANALYZE EXTERNAL EQUIPMENT

□ OPERATES WITH ANY OSCILLOSCOPE

How does this grab you?

The Model 150 plugs into one slot of an S-100, computer and "grabs" fifty-six major signals. Fifty-six. That's more troubleshooting and training visibility than any other logic analyzer can offer you. Need to look at signals external to the bus? No problem. The Model 150 even incorporates a fully-independent 8-channel analyzer identical to the popular Model 100A. (See Popular Electronics. Feb. 1977.)

A remote-control plug-in pod provides fingertip control over all triggering, data collection and display functions. So plug the Model 150 into your computer — you may never unplug it again.

Complete kit and manual $369.00*

Assembled unit and manual $449.00*

Data probes for external analyzer . $10.95 ppd Separate 100-page owner's manual . $7.95 ppd

'Add $5.00 lor AIR shipping in U.S.; $15.00 foreign. Calif, residents please add appropriate sales tax.

PARATRONICS, INC.

UE »SA.N JOSE »CA

TEL I40B)263-2252

If possible, please use business address in place of home address on reader service card.

Circle 84 on inquiry card. byte January 1978 125

o

tr

li a

c

CO

c

•yV/

©

Ml

v"

•^

o IE

o

a <

i o

<

I >

3>

L8

13 <

■gP

z

cr

D

El

c o

c o

•2 a:

El

•o o

I o

2

Figure 3: The original flowchart converted into Warnier-Orr diagram. This is a much simpler looking diagram and is easier to follow and explain to someone. Since it is broken down into sections it can be programmed as a series of subroutines that can be easily maintained and modified.

126

BYTE January I978

iiu \cr\waLca\3C magazine presents

Micro Business 78

CONSUMER

SHOW

MICRO BUSINESS 78™ will provide a series of marketing forums and exhibits to introduce the small independent businessman to the new low-cost, high-power business microcomputer that will reduce his company's costs, place him in a more flexible marketplace and provide timely data information.

Emphasis will be on the small budget requirements for purchase of an in-house computer. The show will demonstrate the latest systems, exhibiting complete hardware and software from small hand-held programmable calculators to full turn-key computers.

• Latest in Word Processors

• Newly-Released Business Software

• Low-Cost Text Editing Typewriters

• Modularized Computers

THE LOW COST, dependability, simplicity of operation, and cost savings advantages of microcomputers will be discussed in a series of lectures to remove the many misconceptions the average businessman may have about the microcomputer technology. Lectures by such companies as IBM, Commodore Business Machines and Radio Shack will present the

DATE: MARCH 17, 18, 19, 1978

PLACE: PASADENA

CONFERENCE CENTER

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

BYTE January 1978 127

The CREDIT process is very similar to the DEBIT process.

69 0 REM

700

730

740

750

76 0 REM

763

770

775 778 780

790 REM

800 810

820 REM

830 840 850 860 870 880

890 REM

900

920

CREDIT PROCEDURE

LET RUNBAL » RUNBAL + AMOUNT

PRINT ON PRINTR: DAY, DESC1, CRAMT,

PRINT ON PRINTR: SPACES

RETURN

DRAMT, RUNBAL

The only remaining subroutines to be coded appear below:

END TRANSACTION LET OLDDAY = DAY

INPUT FROM CHECK!: DAY, CDFLAG, DESC1, DESC2,

CI1KNUM, i. AMOUNT ON ENDFILE GOSUB nnn

IF OLDDAY If DAY THEN LET ENDAT = TRUE RETURN

END OF CHECK FILE DEFAULT SUBROUTINE LET ENDAY, ENDTR, ENDMO, ENDYR » TRUE RETURN

BEGIN MONTH PROCEDURE PRINT ON PRINTR: !IDR1$ LET RUNBAL = BALANC

PRINT ON PRINTR

PRINT ON PRINTR

PRINT ON PRINTR RETURN

RUNBAL

HDR2$

SPACES

END MONTH PROCEDURE PRINT ON PRINTR: RUNBAL RETURN

The program is finished with the BEGIN PROGRAM and the END PROGRAM subroutines, which are not developed here, and the replacing of the untagged GOSUBs coded before. The modules for which a GOSUB was generated should probably remain a part of the program even though they contain no code. They make maintenance much easier. The entire working program with formatting and other embellishments appears in listing 1.

Conclusion

The art of programming has become a process which can be taught to anyone

Listing 1: BASIC source listing for the checkbook balance report program. Each of the subroutines can be matched with one of the brackets in the diagram of figure 7. The individual modules that do not contain any code should be left as they are to facilitate easy maintenance in the future.

128

100

REM

CHECKBOOK BALANCE REPORT PROGRAM

110

120

REM

BEGIN PROGRAM

130

GOSUB 1090

140

150

REM

YEAR (1,Y)

160

LET ENDYR = FALSE

170

GOSUB 280

180

IF ENDYR = FALSE THEN GOTO 17 0

190

200

REM

END PROGRAM

210

GOSUB 1290

220

END

230

240

REM

*********************************

250

REM

YEARLY PROCEDURE

260

270

REM

BEGIN YEAR

280

GOSUB 1470

290

300

REM

MONTH (1,M)

310

LET ENDMO = FALSE

320

GOSUB 430

UYTE January 1978

who needs to use it, which is something that wc have not been able to accomplish until very recently. Admittedly, the technique for developing programs presented here is sometimes tedious and not very creative, but it will get the job done. In the personal computer field a lot of enthusiasts probably enjoy programming on the fly and spending all night debugging. But for those who don't, including myself, and who aren't satisfied with just running someone else's canned programs, there is an alternative. As the pioneer in this methodology, Jean-Dominique Warnier, puts it: "If you don't have time to do it right, do you have time to do it over?" Realistically, one cannot say that this methodology is the ultimate in software process design or that it is completely right. It is not. Something is sure to come along in the future that is better. But, for now, it is certainly a large step in the right direction.

Once I finished reading about the ease with which Wamier-Orr diagrams could be used I decided to take a sample flowchart and convert it into the Warnier-Orr form to see how much of a difference there actually was. I happened to be working on an article by Geoffrey Gass (entitled "Starfleet") which contained a large number of flow-, charts. Choosing one at random I converted it. Figure 2 is the original flowchart. Figure 3 is the converted diagram. I think the Warnier-Orr form is much easier to read and understand.

When designing with flowcharts it is sometimes difficult not to cross lines or have a great deal of redundancy in the program which makes it difficult to follow. All the arrows going across the paper are very distracting and hard to follow. The Wamier-Orr diagram does not have this disturbing problem. It is very easy to follow the program through the various subroutines.

The Warnier-Orr diagram lends itself to structured program writing. If you consider each of the separate brackets another subroutine it is very easy to write the program just as it stands from top to bottom. When we use conventional flowchart techniques we end up leaping about the program to perform statements that are at various parts of the same routine. In my opinion the Warnier-Orr diagram is a quantum leap in the direction of aid for structured program designeis.

Ray Cote Coop Editor

Listing J, continued:

IF ENDMO = FALSE THEN GOTO 320

330 340

3 50 REM END YEAR 360 GOSUB 1390 37 0 RETURN

380

39 0 REM *****************

400 REM MONTHLY PROCEDURE

410

4 20 REM BEGIN MONTH 430 GOSUB 1210 440

450 REM DAYS (1,D)

4 60 LET ENDAY = FA

470 GOSUB 580

480 IF ENDAY

490

500 REM END MONTH

510 GOSUB 1340

520 RETURN

530

540 REM ***************

550 REM DAILY PROCEDURE

560

BEGIN DAY GOSUB 1500

*********

FALSE THEN GOTO 47 0

************************

57 0 REM

580

590

600 REM

610

620

630

640

6 50 REM 660 665 670

680 REM

690 REM TRANSACTIONS PROCEDURE 700

710 REM

720

730

7 40 REM 750

TRANSACTIONS (1,T LET ENDTR = FALSE GOSUB 7 20 IF ENDTR

END DAY GOSUB 1430 RETURN

FALSE THEN GOTO 620

1210

1220

1230

1235

1240

1250

1260

12 65 REM

1270 REM

1280

1290

1300

1310

1315 REM

1320 REM

1330

1340

1350

1360

1365 REM

1370 REM

1380

1390

1400

1405 REM

1410 REM

1420

1430

1440

14 4 5 REM

1450 REM

1460

1470

1480

1485 REM

1490 REM

1495

1500

PRINT :' CHECKBALANCE REPORT'

PRINT :' FOR THE MONTH OF ':MONTH;YEAR PRINT :SPACES,'BALANCE FORWARD OF ';BALANC LET RUNBAL = BALANC PRINT :'DAY CHECKS FOR RETURN

DEBIT CREDIT BALANCE'

************ END PROGRAM

CLOSE CHECKS RETURN

*************** END MONTH

**************

**************

PRINT :'CURRENT BALANCE RETURN

***************************** END YEAR

**************************** END DAY

*********************** BEGIN YEAR

*********************** BEGIN DAY

c***************

*************

************

CREDIT (0, IF CDFLAG

1) OR DEBIT (0, 1) = DEBIT THEN GOSUB 800 ELSE GOSUB

END TRANSACTION GOSUB 965 RETURN

********

LET RUNBAL = RUNBAL - AMOUNT

PRINT :DAY;CHKNUM;DESC1;' ';AMOUNT;RUNBAL

IF DESC2 # ' ' THEN PRINT :SPACES;DESC2

PRINT :SPACES

RETURN

IRUNBAL

760

770

77 5 REM

780 REM DEBIT PROCEDURE

790

800

810

820

830

840

850

8 60 REM ********************************** 870 REM CREDIT PROCEDURE 880

89 0 LET RUNBAL = RUNBAL + AMOUNT 900 PRINT :DAY' ';DESC1;AMOUNT;' 910 PRINT :SPACES

920 RETURN

930

940 REM ****************************************

9 50 REM END TRANSACTION 960

965 LET OLDDAY = DAY

970 INPUT FROM CHECKS:DAY,CHKNUM,CDFLAG,DESC1,DESC2,AMOUNT

980 ON ENDFILE CHECKS GOSUB 1030

98 5 IF OLDDAY # DAY THEN LET ENDAY = TRUE

990 RETURN

1000

1010 REM ***************************************

1020 REM END OF FILE

1025

1030 LET ENDAY, ENDMO, ENDTR, ENDYR = TRUE

1040 RETURN

1050

10 6 0 REM *************************************** 1070 REM BEGIN PROGRAM PROCEDURE

1080

OPEN 'CHECKS',SYMBOLIC,INPUT:CHECKS STRING SPACES, CDFLAG, DESC1, DESC2, MONTH

1090 1100 1110 1120 1130 1140 1150

1160

1170

1180 REM ***********

1190 REM BEGIN MONTH

1200

DECIMAL AMOUNT, BALANC,

LET TRUE = 1

LET FALSE = 1

LET SPACES = '

INPUT FROM CHECKS: DAY,

AMOUNT, BALANC, & MONTH,

RETURN

RUNBAL

CHKNUM, CDFLAG, DESC1, DESC2, YEAR

Happy New Yca\

o

MAKE YOUR COMPUTER PRODUCTIVE

WITH SOFTWARE WRITTEN

IN NORTHSTAR BASIC

REM General Ledger

and Statements $ 75

REM Mailing Labels $50

REM Federal Income Tax $200, Schedule A and B And More to Come. . .

REM System Descriptions $2 each

REM System supplied on Diskette with Program Documentation and Operating Manual

RUN Benson & Costello 29-02 23 A venue Astoria, New York 11105 212-932-3316

O

o

Additional programs now in progress please write for further information.

Circle 7 on inquiry card.

BYTE January 1978 129

Circle 2 on inquiry card.

ALPHA Z-80 $ 4?5

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 Contact 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 + LEAR SIEGLER 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 anci Control

ROUTE 4 BOX 171A BOONE, NORTH CAROLINA 28607

Continued from page 36

erally seek to learn all they can concerning the field. They might look for news of the latest accomplishments, so that they may avoid pointless repetition of discoveries and innovations already made.

I too would like to make a robot move, and recognize patterns, and play with blocks. With the knowledge that 1 am not equipped for such an endeavor, I am highly pleased to learn of the accomplishments of others.

In another light, many people seem to be missing the true meaning of artificial intelligence. Richard Rosenbaum, in the April 1977 BYTE, declares that artificial intelligence is simply "the

substitution of a computer (artificial mechanism) for what are ordinarily human tasks (generally assumed to require intelligence)." I must disagree.

The problem comes in defining intelligence.

In having the computer perform simple operations, such as the four operations of arithmetic, are we not substituting a computer for a human task? Is this artificial intelligence? It is rather simulated intelligence. The computer appears to be operating like a human mind. However, the computer employs a sequence of "mechanical" operations to arrive at a solution to the arithmetic problem. The human mind makes use of previously compiled knowledge, reorganizing it. The computer generates

new data.

With consideration, one realizes that most human mental functions are based upon the manipulation of stored information. As data is received through the sensory systems, it is placed in the mind in the order perceived. As comparisons are made the information is copied into other areas of the brain. Associated images are stored together. Collections of data are called out again when the senses receive a piece of information common to the group. Mental structures grow and are enhanced constantly; so grows the mind from the moment of birth to the instant of death.

Obviously, present day experimenters' computers do not have the capacity to handle information on the same scale

PROGRAMMING THE 6800 MICROPROCESSOR

— Bob Southern —

A self-instructional workbook

for assembly language and machine code

programming of the 6800 family

of microprocessors and peripherals.

- Binary and Hex Numbers

- Accumulator Operations

- Index Register

- Branching - Symbolic and Machine Code -ACIA

-PIA

- Subroutines

- Interrupt and Stack Operations

— More than a text, this self-instructional workbook is like a personal tutor, available anytime, anywhere.

— Starts right at the beginning, with binary numbers, and works up to interrupt, with lots of programmed input/ouput in between.

— Already tested with class-sized groups.

— Includes complete listings of running programs.

SEND ONLY $6.75 — U.S. Funds for U.S. delivery — Canadian Funds for delivery in Canada. Postage is included in the above price.

DISTRIBUTED BY

ALGONQUIN COLLEGE BOOKSTORES 1385 Woodroffe Ave. Ottawa, Ontario Canada K2G 1V8

130

BYTE January I978

Circle 1 on inquiry card.

as the human mind. However, all animal minds seem to function in essentially the same manner. As a matter of observation, emotional capacity and intelligence seem to have a direct relationship to the physical size of a particular species' brain. It may be possible to synthesize the mental functions of less intelligent animals; insects, rodents, primates. One might even consider synthesizing the infant human mind. While we may not actually create complete minds, it is possible to develop the basic foundations of self evolving intelligence.

Innovations in cybernetics are making it possible to give the computer necessary perceptual input. Vocal input and output devices and digital "eyes" are making it possible for the computer to hear, see, and stimulate its environment in order to obtain new information.

I would like very much to communicate with anyone interested in the study of artificial intelligence. Perhaps by coordination of efforts we can make more rapid progress.

Scott Jarol

3401 E Shaw Butte Dr

Phoenix AZ 85028

MORE MUSINGS ON AI'S WHYS

I have been reading with some interest the ongoing discussion in "Ask BYTE" of the relative merits of artificial intelligence and robots. I feel however that all sides have missed the central question which is: what effect can we reasonably expect the microcomputer or, for that matter, any new tool or technique to have on the quality of human life?

On one extreme is the possibility that the great increase in productivity for the average worker which will result from use of microcomputers will allow us to enjoy a significantly better standard of living than would be otherwise possible. At the other extreme is the probability that this same increase in productivity will enable us to support the ever increasing masses of humanity, which are already almost beyond imagining, without measurable benefit to ourselves.

The central question, stated in its simplest form, is an old one. Who do you feed first, your family or someone else's?

As for artificial intelligence, the raw materials (a monolithic central processor and monolithic mass memory) are already available and the incentives become stronger daily as human workers price themselves out of the market. My only hope is that the robots we develop will be offspring we can be proud of.

Mark Williamsen

607 Barton Av

Evanston IL 60202

GETTING UV BULBS

The article on the "Coffee Can Special" (January 1977 BYTE, page 91) by Lawrence Burbey Jr failed to men

tion the type of lamp to use.

We built a similar device months ago and after much difficulty we found the GE#G 4S11 lamp was cheap, worked well and was relatively easy to obtain.

Stephen Pumple

The Computer Place

186 Queen St W

Toronto CANADA M5V 1Z1

D1 or D2?

Your response to Paul E Pennington in the September 1977 BYTE [page 178] contains an error. The Motorola MEK6800D1 does contain the MIKBUG monitor. The Motorola MEK6800D2 contains the J BUG monitor. I am sure of this since I possess both units.

) C Hausler

67 Fisher Rd

Rochester NY 14624

A NORTH GERMAN COMPUTER CLUB?

Call for interested individuals in (northern) Germany to form a hobbyist computer club. Please contact llja Burkoff, Parkallee 105, D-28 Bremen. Tel: (0421) 347179.

Since your magazine is being read internationally, could you coax your advertisers into leaking the names and addresses of foreign dealers and distributors in their ads?

llja Burkoff

Management Consultant

Parkellee 105

D-28 Bremen W GERMANY

TYPEBALLS

In the October 1977 BYTE (page 12) you seem to be answering a question that reader Rob Loring really wasn't asking. If I read his letter correctly, he was asking where he could buy a Selectric typeball with both human readable characters and also machine readable bar codes. Nowhere did he say he wanted to design one, he just wanted to buy one. IBM sells at least two such typeballs for the quite reasonable price of $24 each. Both have upper and lower case plus numerals and special characters. If neither of these will do the job, there are at least three others available, at $32 each, from the Datatype Corporation, 1050, N W 163rd Dr, Miami FL 33169, (305) 625-8451. There is certainly no need whatever to reinvent Ihe wheel, or the typeball.

J im Day

17042 GuntherSt

Granada Hills CA 91344

777e balls IBM and Datatype sell are optically encoded, yes, but not in the format of the bar codes used in our PaperbyteTM software representations. The availability of the IBM optically scannable fonts was brought home to

Your

indispensible reference for selecting, designing, testing...

MICROPROCESSORS AND MICROCOMPUTER SYSTEMS

By G. V. Rao

AMECOM Division, Litton Systems Inc.

Now you can have a thoroughly up-to-date guide to the state of the art in microprocessors and microcomputers—written by one of the nation's leading experts. Turn to this compact, explicit volume for expert coverage of presently available hardware and software. Subjects of special interest include the use of silicon in microcomputer technology . . . organization of low-cost microcomputer systems .. . MNOS memory . . . charge-coupled devices . . . and an extensive treatment of data communications. Time-saving reference tables enable you to quickly choose a specific chip for a desired application. Scores of illustration make every subject easy to understand and apply by novice and specialist alike. $24.95, 288 pages, 120 Mills.

-FREE EXAMINATION ■

Van Nostrand Reinhold

VNR 7625 Empire Drive

1 Florence, Kentucky 41042 Send me a free-trial copy of Microprocessors and Microcomputer Systems. After 15 days I will remit $24.95 plus postage and handling, or return the book and owe nothing. Offer good in U.S. only, and subject to credit department approval. Payment must accompany orders to P.O. box addresses.

Address.

City

State

-Zip_

□ SAVE! Check here if enclosing payment with order and publisher pays postage and handling. Same 15-day return-refund guaranteed. Be sure to add local sales tax. 0-442-22000-6 B 7301

Circle 111 on inquiry card.

BYTE January 1978 131

Discover New Ways To Solve Problems And Play Games...

COMPUTING

Learn more about personal computing at a full-day Saturday IEEE Computer Society Instructional Workshop in a city near you:

Jan. 7 Denver Mar. 25 Toronto

Jan. 14 Seattle Apr. 1 Boston

Jan. 21 Albuquerque Apr. 8 New York

Jan. 28 Salt Lake City Apr. 15 Atlanta

Feb. 4 New Orleans Apr. 22 Cincinnati

Feb. 11 Detroit Apr. 29 Los Angeles

Feb. 18 San Juan May 6 Kansas City

Feb. 25 Pittsburgh May 13 Dallas

Mar. 4 Milwaukee May 20 Toledo

Mar. 11 Vancouver May 27 San Francisco

Mar. 18 Philadelphia

The Instructional Workshop features an indepth, comprehensive survey and analysis by one or more IEEE Computer Society lecturers, a manufacturer-independent experienced practitioner in microcomputer design:

* lectures on microcomputer

hardware and software

* comparisons and evaluations of

microprocessors, and systems such as ALTAIR, IMSAI, Heath Sol, etc.

* discussions on reliability, avail

ability, serviceability

* "hands on" experience with

class microcomputers

* "how to" applications workshop

- designing a TV game

- design of a music synthesizer

- design of a home control system (lights, TV, etc.)

- how to profit from your microcomputer designs

1978 Spring Workshop Registration Form

* IEEE COMPUTER SOCIETY

To register, till out and return the coupon below with a stamped, self-addressed envelope and the tuition fee at least two weeks before the meeting. The tuition fee includes course text, manuals and other hand-out materials.

Students with ID $25

IEEE Members $60

Non-members $85

IEEE or IEEE Computer Society

Membership Number

Name

Address

City/State/Zip

My payment for S is enclosed

I am registering for Workshop Date

on at

Mail To:

IEEE Computer Society 71 North Moger Avenue Mount Kisco. New York 10549

For further information:

Call Cary Ringel (201)488-1200

me when I ordered a couple of new balls for my 5electric from the IBM office products sales brochure. Aside from optical character recognition (OCR) compatible fonts, IBM offers a font with a unit bar code printed below each letter. . .CH.

MORE ABOUT-ILLION

The origin of billion, according to the Concise Oxford Dictionary, is "French, coined In the 16th century out of bi- & million to denote the second power of a million; meaning afterwards changed in France (so US) but not in England."

Great Britain and Germany know a "thousand million" as a "milliard." But why stop there? Both the UK and the US have a simple scheme for higher powers of 1000 using Latin Numeral Prefixes (LNP) as follows:

UK

us

LNP-illion = (million>LNlp

LNP-illion - Ithousandl x (thousand!LNP

106

109

1012

1015

1018

1021

102"

UK

million milliard billion thousand billion

trillion

thousand trillion

quadrillion

and so on

US

million

billion .trillion quadrillion quintillion sextillion septillion

Mega Giga Tera

The decimal point is written raised (■79) in England, rather than as a period, and is pronounced point seven nine, not point seven T nine. Where the UK and the US use a comma, most of Europe uses a space. No doubt a literal translation of our "floating point" is as amusing to the Germans as the literal translation of their "showing comma" is to us.

Michael J Cook

1658 S Stelling

Cupertino CA 95014

TWO TIPS FROM TEXAS

To answer part of fan Kok's question in the September 1977 BYTE (page 179). According fo the Oxford English Dictionary, billion was created in the 16th century as the second power of million:

10g2= 1012

Similarly trillion was the third power and quadrillion the fourth. (May I speculate that the need arose from inflation and expansion?) The OED also stated that French arithmeticians changed the usage of the words (presumably in the development of the metric system) to indicate the number of thousands rather than millions. American usage probably arose when we adopted the metric system for money, though we never got around to adopting (until now) the rest of the system.

I can not find a specific reference to the European usage of the comma where we use the point, but I wouldn't be sur

prised to learn it was adopted by the French with the metric system, partly to be different and partly based on different use of punctuation in French.

I would also like to suggest an answer to Ira Rampil's request for an alternative cutting device for Slit-N-Wrap. I use a pair of small blunt nosed scissors (Revlon 2051) which are sold for clipping hairs from ears and noses without damage. The broadened ends mean the tips are stiff, and do not twist around the wire and will not scrape the circuit board.

Mike Firth

104 N St Mary

Dallas TX 75214

SR-52 AND PR-100 EXPERIMENTS

Webb Simmons in September 1977 BYTE (page 176) discovered that the Texas Instruments SR-S1 calculator can be coupled to a PR-100A to provide printout capability. I have obtained similar results when I used my SR-51A. Unhappily, a more recent version of the SR-51, (the SR-51-11), cannot be connected to the PC-100A because of a redesign of the battery compartment. Although the SR-50A has a print cradle connector similar to the SR-51, and fits on the printer, apparently it is not preprogrammed for printout.

Incidentally, the "other" position of the PC-100A 3-position switch is for the new TI-58 and TI-59 programmable calculators.

Ralph Mednick

6 Hopkins Rd

Peabody MA 01960

SR-52 AND PR-100 EXPERIMENTS, CONTINUED

I read with interest the letter from Webb Simmons in the September 1977 BYTE (page 176) concerning use of the Texas Instruments SR-51 with the PC100A printer. I connected my SR-51 to the printer after selecting the SR-52 mode as Webb indicated. The print mode worked fine but I never could get the trace mode to work. Every time I selected the trace mode 1 got a "1" and a "?" on my printout. The trace mode works fine with my Tl 59 calculator so I know there is nothing wrong with the printer. Perhaps all SR-51s are not the same. I would be interested to hear what luck other readers have had with this experiment.

Carl Oehmann

9048 Posada Way

Sacramento CA 95826

MORE ON SR-51 AND PC-100A COMBOS

I wish to thank you and Webb Simmons (September 1977 BYTE, page 176) for the note, "More Hidden Gold: PC-100A Operates with SR-51."

132 byte January 1978 Circle 50 on inquiry card.

In fact, the Texas Instruments' PC-100A also works perfectly well with the SR-51A hand calculator in exactly the same way as does the SR-51.

However, the SR-51-II does not have the 12 pad connector strip, so that it is not possible to obtain hard copy from a PC-100A and SR-51-II combination. This development seems to make used (but in good condition) SR-51 and SR-51A model calculators desirable items.

One must also note that the new Hewlett-Packard HP-10 seems to be designed to fill the same needs as an SR-51 and PC-100A combination.

Around our laboratory there are four SR-51 As and one SR-51; the proud owners of these calculators now want some PC-1 OOAs. (They will probably pool resources to get one.)

I wonder, however, if the SR-50 and SR-40 were also designed to fit a PC-100A?

Philips Barker

59 Acadia Bay

Winnipeg, Manitoba R3T 3J1

CANADA

SIMULATING ONESELF?

I just received the October 1977 issue of BYTE, and I was reading an article by Mr Chung entitled "An 8080 Simulator" (page 70). It is on this article that I wish to comment.

While there are clearly useful applications for simulators that allow the execution (or interpretation) of assembly (or even machine) language programs of some machine on a different machine, it escapes me why one would want to emulate one machine's instruction set on itself. An apparent exception is the tester and debugger presented in the article. It appears that by interpreting each instruction individually it is possible to discontinue execution of the program at any point, called a breakpoint. A break may occur because the user wished to discontinue execution when certain conditions were satisfied, or even each time execution passed some address in the program. Both are obviously extremely useful when debugging. Upon detecting a break, the debugger presumably could enter a command mode where the user could examine and change memory locations and registers. Eventually execution could be resumed through some command, at which point the debugger would start interpreting the instructions again, watching for breakpoints. All very useful, but very slow. Each instruction is interpreted by the debugger, and consequently the debugged program's execution time might well be increased by several orders of magnitude.

I would like to propose a much more efficient method for implementing the same facility. Readers familiar with the DECsystem-10 debugger DDT will recognize the technique I am about to present. It hinges on the following

Circle 14 on inquiry card.

canaria

systems, inc.

■ ™* ■ § f II IIII

1 1 1 1 1 1 I

Boards DO Something

CL2400

Real Time Clock

S98—Kit

$135—Assembled

If your system needs to know what time it is, our CL2400 is the board for you. The present time in hours, minutes, and seconds is always available for input, and is continuously updated by the highly accurate 60 Hz power line frequency. Need periodic interrupts? The CL2400 can do that, too, at any of 6 rates. Reference manual with BASIC and assembly language software examples included.

PC3200

Power Control System

PC3232 $299—Kit $360—Assm.

PC3216 $189—Kit $240—Assm.

PC3202 $39.50—Kit $52—Assm.

If your system needs on/off control of lights, motors, appliances, etc., our PC3200 System components are for you. Control boards allow one I/O port to control 32 (PC3232) or 16 (PC3216) external Power Control Units, such as the PC3202 which controls 120 VAC loads to 400 Watts. Optically isolated, low voltage, current-limited control lines are standard in this growing product line.

caharia

systems, inc.

(formerly comptek)

P.O. Box 516

La Canada, CA 91011

(213) 790-7957

Need Hard Copy?

OUR SOFT PRI

SSP-40

Contains its own microprocessor tor easy connection to your FJS232 serial port or fTY current loop:

MP-40 i

interfaces to your micro computer parallel output port for ASCII data transfer

KP-40KIT

Contains mechanism. PC board, all components, transformer and complete assembly instructions for parallel data transfer.

SEND FOR FREE LITERATURE

*575 5425 *179

Box 22101

Salt Lake City, Utah 84122

(801)566-0201

Circle 70 on inquiry card.

BYTE January 1978 133

Circle 27 on inquiry card.

Get the best in

Business Data

Processing Systems

Accounting, Inventory, General Ledger, Timesharing Applications

Also a complete line of personal computers and peripherals, including:

• IMSAI • Polymorphic

• Digital Group • DTC

• Compucolor • North Star

• Books/Magazines

HARDWARE/SOFTWARE SUPPORT

Our experienced staff is ready to help you

configure the best system to suit your needs

I the ra/npuTEfl moa

A company of Business Solutions, Inc.

124 H Blossom Hill Road • San Jose, CA 95123 (408) 226-8383

f

nnnoununG

0RRI1CE COUnTV'5

most (anuenient & most Affordable

Computer Store

WE OFFER A COMPLETE LINE OF MICROCOMPUTERS, PERIPHERALS AND ACCESSORIES

IMSAI SEALS PRINTERS CROMEMCO HAZELTINE BOOKS BYTE 8 SOROC MAGAZINES

—N

\

VISM OUR STORE AND SEE THE -,A LATEST IN AFFORDABLE COMPUTERS ;\

E

f

I

L.g„n.

n 1 !■■ 674 EL CAMINO REAL UV 1 ■" EL CAMINO PI AZA ■J I I L TUSTIN, CA 92680

CLjU^JP PHONE (7t4)T3/-I6S6

*. a. MON THUR 11 7

\, ^4r iri n-9

^TEP S SAI ,0,>

*y '

simple concept: Replace the instruction in the breakpoint address with a subroutine call instruction. (I am not familiar with the 8080 instruction set so I am not able to give a particular instruction, although I do not doubt that one exists.) This call would be to a routine in the debugger! The rest is easy. The routine saves the program registers, restores debugger registers (saved earlier) and dispatches to the command interpreter routine. This routine must be clever in two respects: first, if the user attempts to examine a breakpointed location, this must be detected. This is so that the original instruction may be displayed. Of course the breakpointed location will still contain the "call" instruction, which is not what the user wants to see. (By the same token, if he wants to modify the breakpointed location, we must modify the saved breakpoint instruction [in a breakpoint instruction table somewhere], not the actual instruction in the breakpointed location, which of course will hold the "call" that caused the breakpoint to begin with.) Secondly, when the user resumes the execution of the program, the debugger must first (individually) execute the saved breakpoint instruction (remember to first restore registers) before returning to the main code.

If my presentation was lucid, it should be clear that this technique is quite a lot more efficient than Mr Chung's method of interpreting each instruction. It will execute the program it processor speed, up to the breakpoint.

I read your journal with great interest and enjoy it immensely. I hope that this contribution will be of use to your readers and add to the excellence of BYTE.

Ralph Salas

29C Wycoma Way

Waltham MA 02154

Use of the 8080 simulator is an excellent way to trace the operations of a program, in a mode which depends on human responses rather than on absolute speed. It is thus not clear that the floating breakpoint technique would be the best method to employ. (I coin the term "floating breakpoint" to describe the act of setting a breakpoint, then restoring original code at the breakpoint while inserting a new breakpoint after the next instruction in sequence. An article by Robert Grappel and Jack Hemenway in the December 7977 BYTE (see "Jack And The Machine Debug" page 91) goes into the general design of such a floating breakpoint method of single step execution and tracing. Where tracing or debugging of read only memory software is involved, the simulator technique is the only one which will work, since breakpoints can not be set in read only memory.

134 BYTE January 1978

Circle 10 on inquiry card.

Circle 98 on inquiry card.

In a recent phone call, Chuck Adams at Texas A & M University reported that the 8080 simulator by Kin-man Chung proved an excellent tool in the understanding of some otherwise undocumented software he was looking at.

COMMENTS ON WALSH FUNCTIONS

It was interesting to see the article on Walsh functions by B F Jacoby appearing in your September 1977 issue (page 190). The application of Walsh functions was a very active field about five years ago, but interest has dropped off since then mainly because advances in digital circuits have made it possible to use digital circuits in the Fourier domain. However, it is still very useful for designers to know about Walsh functions because they offer excellent solutions to many design problems. In the past couple of years we have seen several waveshaping circuits that actually used Walsh functions although the designers apparently had developed the circuits by trial and error. The material in your article would have led them quickly to the solution.

The mention of my own work applying Walsh functions to electronic music synthesis has brought in several inquiries. The use of Walsh functions for this purpose was first suggested to me by Dr Carl Frederick in 1972. A summary of my work can be found in Journal of the Audio Engineering Society, volume 21, number 8 (October 1973), and in volume 23, number 7 (September 1975), as well as in our own Electronotes publications. At about the same time, Hal Chamberlin was doing a comparative study of Walsh and Fourier synthesis and we published this report. To my knowledge, there are probably only a few music synthesis projects using Walsh functions still under investigation, although quite a few are still in use.

Any reader looking for more information on Walsh functions can find additional references listed in my papers mentioned above, or they may write to us for any special needs since we have lists containing hundreds of references.

Bernie Hutchins, editor

Electronotes

1 Pleasant Ln

Ithaca NY 14850

Walsh functions are far from dead, however. For example, the IEEE Transactions on Computers has a table of contents category "Walsh Transforms" which is represented by one paper in the August 1977 issue (volume C-26, number 8). For electronic music, however, the need of weighted resistors makes them more complicated as a design element than a number of simpler techniques. ■

BUY, SELL OR TRADE

YOUR NEW OR USED HARDWARE, SOFTWARE

OR LITERATURE THROUGH OUR NATIONWIDE

SMALL COMPUTER SYSTEMS DATA BASE

Enter any item you wish to buy, sell or trade in our Small Computer Systems Data Base. We will process your entry against all others in our data base and mail you a printout of all matching entries. You then contact the correspondents listed in those entries to effect your buy, sell or trade. Your entry will remain active in our data base for three months. All incoming entries will be processed against your item and your entry will be mailed to all those that match. Thus you are assured of a wide coverage for your buy, sell or trade.

The cost of your first entry is $4.00, each additional item submitted at the same time is $2.00. Send the entry form below together with your check to:

THE SMALL COMPUTER SYSTEMS CO.

P.O. Box 4344, Warren, New Jersey 07060

□ BUY

□ HARDWARE

□ SELL

D SOFTWARE

□ TRADE

□ LITERATURE

Name_ Street. City

State_

-Zip

Telephone (Include Area Code) .

Attach description of item (approximately 50 words).

L4I

-MICRODESIC3IM

I microcomputer products

2708

TMS2716

EPROM/RAM

VERSATILITY • Individual Addressing • Shadow alternates ROM with RAM • External RAM disable • Optional IK on-board RAM • S100 compatible • Power-on jump or bootstrap capability • All sockets included

MR 8 KIT For 2708 . . .

MR 16 T KIT FOR TMS 2716 . .

EPROM (shown) not included

99.50 99.50

FIRMWARE • 2K Monitor/Utility • Supports Tarbell cassette, paper tape • Now available for SI0, MI0, 3P + S, SI0 2

MM 2K (two 2708 type EPROMS) 79.50

MM 2T (one TMS 2716 EPROM) 74.50

EPROMS • Prime, lull specification • programming available

2708 type 1024x8

TMS 2716 2048x8

30.00 55.00

MICRODESIGN

679-1 S. State College Blvd., Fullerton CA 92631 714-738-8080

Circle 62 on inquiry card.

BYTE January 1978 135

Circle 9 on inquiry card.

BYTE SHOP EAST

GRAND OPEJMNq

Come to the Grand Opening of our new Byte Shop East, Inc. at:

130 East 40th St. (Corner of Lexington Ave.) New York, NY 10016 (212) 889-4204

Hours: 11-7 Tuesday through Friday 10-5 Saturday Closed Sunday, Monday

We specialize in Small Business applications and Educational Packages that use personal computers. Come and see our complete linel

NOTE: Our store in Levittown is still going strong. Come visit us at:

27-21 Hempstead Turnpike

Levittown, Long Island

(516) 731-8116

Two blocks east of Wantagh Pkwy.

Hours: 12-9 Tuesday through Friday

10-5 Saturday Closed Sunday, Monday

16K Stotic RAM

250 nsec fast

State of the art TMS 4044-25

Fully static • No clocks • No refresh • No wait

• IMSAI/ALTAIR/POLY88/SOL20 S-100 bus compatible, requires 8V only.

• COMMERCIAL QUALITY COMPONENTS First quality factory parts, fully socketed, buffered.

i VERSATILE Each 4k addressable to any 4k slot, on-board memory protect, RAM disable.

FULLY ASSEMBLED, TESTED $375

KITS AVAILABLE AT $355

Delivery: Stockto4 weeks. Phone orders welcome. Postpaid. Washington residents add 5.4% sales tax.

Enter my order for □ Assembled and Tested $375 □ Kit $355

(Add 4% for charge cards.)

Name

Address

City

State.

Phone. Zip

Payment Enclosed: □ Check □ Money Order

□ VISA □ Master Charge Exp. Date

Card Number 4-Digit No. Over Name

Signature

Seattle Computer Products, Inc.

16611-111th S.E., Renton, WA 98055 (206) 255-0750

Beck Feviews

Practical Microcomputer Programming: the Intel 8080 by W J Welter, A V Shatzel and H Y Nice, Northern Technology Books, 1976, $23.95.

This is the first text on 8080 assembler programming which I have run across, and as such is a welcome supplement to (or replacement for) previous books on the subject. The new book is an introduction to 8080 assembler written for beginners; beginners here meaning those who do not know any assembler language. The book would be very hard going for someone who did not know BASIC, FORTRAN, or some other higher level language; the authors assume familiarity with loops, subroutines and programming in general. Most of the sample programs in the book could be used on any 8080 machine; some of the 10 and interrupt sections are machine dependent. The authors use an Altair and a minicomputer based cross assembler.

The first three chapters introduce binary arithmetic, logical operations and the basic structure of the computer. This section concludes with an introduction to the concept of programming and what an assembler does. The next few chapters concentrate on the most common tasks faced by the programmer: moving data, memory addressing modes, binary arithmetic and logical operations. The third logical segment (CSECT?) concerns the use of the stack, of subroutines, and of tables and arrays. Next the authors describe and illustrate simple and complex 10, conversion between binary and other ways of representing data (decimal, BCD, hexadecimal, ASCII), and graphical representation. The latter is contained in the complex 10 chapter where a dot matrix printer is made to print in the Russian alphabet using "RUSKII" (Russian Unified Standard Key for Information Interchange, an invention of the authors). Decimal arithmetic and digital to analog conversions are then taken up, and the final two chapters proper are devoted to interrupts. There is a final chapter on debugging, and then appendices which give source and object code for the debugger, a loader, the cross assembler, and a table used to produce the Russian alphabet.

Generally I found the book excellent. I was only able to find a couple of relatively trivial typos (on page 153 RAR should be RAL, and on page 182 OSVCE should be

136 BYTE January 1978

Circle 97 on inquiry card.

Circle 103 on inquiry card.

" ■ , ■

Ml

. ■

PRACTICAL

THE INTEL 8080

W.J.WELLER

AV.SHATZEL H.YN1CE

CSVCE), and the illustrations were very good. I would have liked to have seen a section on floating point arithmetic, and it would have helped to give a table of the instruction set somewhere, but the authors must presume this is available elsewhere.

John A Lehman

716 Hutchinsife

Ann Arbor Ml 48103"

APL An Interactive Approach, second edition, by Leonard Gilman and Allen Rose, John Wiley & Sons, Inc, New York, 1974, 384 pp, $17,95 (paperback).

An important element in the title of this book is "interactive." APL, A Programming Language, is indeed interactive. Throughout the book this feature is not only accented; it is capitalized upon. One does not merely read the book. A budding APL programmer can either interact with an APL workspace that has been preprogrammed to track the book or, when this is not practical, he or she can interact with the computer surrogate found interwoven into the text in the form of a listing which includes both human input and computer response.

APL An Interactive Approach gives an understandable presentation of APL operators (also called APL functions), user programs (called defined functions), workspace management, and information which can best be described as "advanced topics." Although these "advanced topics" might not be implemented on home microcomputer APL systems of the near future, the

SPEECH CREATED

M188 voice generator

i

for S-100 bus computers

93 Hi

innnrnnlnlnM

VOICE RESPONSE ENHANCES GROWING APPLICATIONS OF S-100 BUS COMPUTERS to SMALL BUSINESS SYSTEMS, PROCESS CONTROL. AND AUTOMATIC TEST

• M188 is a low data rate voice generator — 120 bytes per second of speech from computer memory or on-board EPROMs

• M188 comes with 64-word cassette vocabulary. Load it into memory and a simple program lets you speak words and phrases

• Large available vocabularies are derived from computer analysis of real speech, preserving outstanding clarity and naturalness compared to other methods of low data rate synthesis

• With vectored interrupt many Mi88's share common vocabulary data, and there is negligible slowing of computer operationsor interference with high-speed peripherals

OTHER MODELS / PRICES / TECHNICAL INFORMATION — CONTACT:

SPEECH TECHNOLOGY CORPORATION

631 WILSHIRE BLVD., SANTA MONICA, CA 90401 (213) 393-0101

HEAR IT AT MIDWEST DIGITAL EQUIPMENT EXHIBIT MINNEAPOLIS. FEBRUARY 15TH & 16TH

DUILD YOUR OWN

VID€0 TCRMINAL FOR

$85 "PLUS"*

J 1 V \

• Serial ASCII or BAUDOT

• Full X-Y Cursor control

• 128 Characters, including upper and lower case

r

• 16 lines X 64 characters

• S100 Compatability

• No Supporting Software required

* The SCT-100 Single Card Terminal interfaces directly to any computer or modem having serial ASCII or BAUDOT capability. It requires only the addition of a standard ASCII keyboard, and a TV monitor. It is available as a partial kit for $95.00 including the PC board, character generator ROM, and the 3870 microcomputer. The complete SCT-100 kit is $155.00 ($185.00 prewired & tested). To order, call or write todav. MC, BAC Accepted.

XTTEX CORP. P.O. Box #20887, Dallas, Texas, 75220 Phone (214)620-2993

Circle 116 on inquiry card.

BYTE lanuary 1978 137

Circle 40 on inquiry card.

FULLY STATIC

INTRODUCTORY $450 KIT PRICE

10SLOTTABLETOP

MICROCOMPUTERS

TT-8080... KIT $475

SYSTEM WITH 16K&I/0 TT-8080-S... KIT $1125

CARD CAGE

& MOTHER BOARD

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

ELECTRIC CONTROL TECHNOLOGY

P.O. BOX 6, UNION, NEW JERSEY 07083 (201)686-8080

I I I I I I I I I I J

<^V

Don Lancaster's ingenius design provides software controllable options including:

• Scrolling • Full performance cursor

• Over 2K on-screen characters with only

3MHz bandwidth

• Variety of line/character formats including 16/32, 16/64 ....even 32/64

• User selectable line lengths

TELL ME MORE! ( ]

( ) SEND FREE CATALOG

Name:

City: .

Send instruction manual tor the TVT-6 Kit with full operational details. $1 enclosed.

Zip:

ELECTRONICS. INC.

DEPT. 1-B, 1020 W.WILSHIRE BLVD., OKLAHOMA CITY, OK 73116 j

adage that too much is better than too little seems pertinent.

The general tone of the book is technique and, as could be expected, the type of technique emphasized is the use of APL functions. (Branching is not discussed until halfway through the book. However, the authors have chosen to stress the alternatives to branching which APL provides in order to combat what must be a natural tendency to branch.) Technique is but one course and, "One course neither a meal nor a graduate makes!" I believe that additional emphasis is needed on program (function) organization, the use of functions as subroutines, debugging, and error correction. An additional appendix on "error messages, their causes and corrections" and an expanded appendix on "APL functions," both comprehensive enough to be used as stand alone work aids, would have been helpful.

A revised printing of the second edition has been released recently, the major change being an easier to read type style. Information relating to the use of the IBM 5100 portable computer was also included.

Is this book for you? Assuming you have a strong desire for information concerning APL, I would say, "Yes." If your interest is casual and you expect programming languages to be more conversational than

->BOOKSTOBEx x (DESIRE>NIL) vNEED= rYES: then my answer would not be so unequivocal. (Note: ■> can be read as "GOTO" and xi as "IF;" I leave the rest to you!)

Thomas E Hoge

41 Fern St

Rocky Hill CT 06067"

138 BYTE January I978

Circle 82 on inquiry card.

Circle 100 on inquiry card.

Glubs and Newsletters

Conducted by David Wozmak

SOL User's Society

On a hot Sunday afternoon, about 30 owners of Processor Technology SOL computers gathered in a Stanford University auditorium to organize the SOL Users' Society (SOLUS). The meeting was arranged by Bill Burns, Ron Findlay, Dave Fylstra, and Ben Milander, who had been conducting preliminary SOL users' meetings at the Homebrew Computer Club. As the SOLUS steering committee, these four men discussed the goals, structure, and functions of SOLUS.

It was decided that SOLUS will have a cooperative but independent relationship with Processor Technology. The goals of the society are: to facilitate communication among SOL users and to provide a mechansim for exchange of SOL compatible hardware and software products by independent sources. Membership is open to owners of SOL computers or of other computers configured like the SOL. The Society is primarily a personal computer users' group, although a commercial interest group may be formed within SOLUS.

The item above is from Stan Sokolow, the editor of SOLUS News. To get in touch with SOLUS, write to Stan Sokolow, 1690 Woodside Rd #219, Redwood City CA 94061.

The International Classified Advertiser for Computer Hobbyists (Bitbucket)

Bitbucket is published twice a month and sent via first class mail. Computerfest announcements, club meeting schedules, interclub requests, and news articles (flea markets, special events, etc) are published free of charge. Bitbucket is mailed free to all clubs. To send for more information, write Bitbucket, M C Corporation, publisher, POB 314, Libertyville IL 60048.

SR-52 Users'Club

Here's a club for owners and users of Texas Instruments programmable calcu

Software

Games • CRAPS (Las Vegas style) $6.00 MULTIPLE LUNAR LANDER $8.00 SLOT MACHINE $6.00 GAME PACKAGE: Russian Roulette, Mad Scientist, and ABM $8.00

Graphics • PICTURE MAKER with AMP-L ANNY $12.00 GRAPHICS PACKAGE I: Laser Beam, Space Shuttle, and Blast Off $10.00 GRAPHICS PACKAGE II: Rain in Greece, Flea, Textwriter, Random Walk $10.00

Scientific • FOURIER FIT: Does curve fitting $15.00

Systems • RANDOM NUMBER GENERATOR TEST $5.00 HEX MEMORY LOADER $10.00 MEMORY DUMP PROGRAM $10.00 MEMORY SEARCH $5.00

All Programs Written in BASIC

Complete Easy to Read Documentation

Programs Completely Tested

SOFTWARE RECORDS

P.O. BOX 8401-B

UNIVERSAL CITY, CA 91608

(cal residents add 6% sales tax)

r

v.

The KIM to S-100 bus Interface/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, Speech processors...

• 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 m,

Coburg, OR 97401

J

Circle 45 on inquiry card.

BYTE January 1978 139

Circle 63 on inquiry card.

THE BETTER BUG TRAP

AND

Altair/IMSAI compatible board catches program bugs and provides timing for real-time applications.

Four hardware breakpoint addresses. Software breakpoints only possible at instructions in RAM. Better Bug Trap breakpoints can be in ROM or RAM, and at data or instructions in memory, input/output channels, or stack locations.

Board can stop CPU or interrupt CPU at a breakpoint.

Real-time functions: watchdog timer, real-time clock (for time of day clock), interval timer.

Sophisticated timesharing made possible!

Unique interrupt structure: generates a CALL instruction to your 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 clock board, but nothing else does the job of the Better Bug Trap.

$180, assembled and tested. 2 manuals plus software. 90 day warranty. Shipped UPS. Delivery from stock.

lUicrfltucH

int.

BOX 3514, 123 WEST 3RD ST., SUITE 8 GREENVILLE, NC 27834 • (919)758-7757

Prototype boards for SWTP 6800 and other systems —

The larger board (SWT-2) is the same size as the system memory board and plugs into a memory location. The smaller board (SWT-1) is the same size as an I/O board and plugs into and inputyoutput connector location. The proper Molex connectors are provided. Please add $1,50 per order for shipping, handling and insurance.

Prototype boards for S-100, Heath H-8 and others available.

SWT-2

SWT-1

$15.95 $ 8.95

iimmiimiimimthWW/Mmtiimiimii

mTfTmnuTMiiliiiiiM

Adapter boards available to interface Heath H-8, Radio Shack Z-80, and Intel SBC 80/10 computers to the S-100 bus. Permits use of North Star and other floppy disk interfaces with these systems.

Order from your nearest dealer or —

GzLEtion

P.O. Box 6215, Syracuse, New York 13217 (315) 422-6666

lators. Membership is open to anyone. The club is neither sponsored by nor officially sanctioned by Texas Instruments. To date there are over 700 members. The club publishes a newsletter, 52 Notes, which contains programs, routines, and various other information. Write to R C Vanderburgh, 9459 Taylorsville Rd, Dayton OH 45424.

RICH

The Rhode Island Computer Hobbyists hold meetings on the third Tuesday of every month. Upcoming meetings will feature presentations of solar energy projects, the new Heath line, and terminals for the deaf, to mention a few. The new NET message service allows anyone with a terminal and a modem to dial a club computer to get news and receive or leave messages. Contact the Rhode Island Computer Hobbyists, POB 599, Bristol Rl 02809.

Lincoln NE Computer Club

Computer hobbyists in the Lincoln NE area are invited to join the Lincoln Computer Club. The club was formed in early 1977, and has been meeting monthly ever since. Meetings are held the first Wednesday of each month at 7 PM at the South Branch Library at 27th Av and South St. For further information contact Hubert O Paulson Jr, 422 Dale Dr, Lincoln NE 68510.

Computer Amateurs of South Jersey

A new club, the Computer Amateurs of South Jersey, invite the participation of all interested parties, both novices and professionals. User groups have been formed for the 6800, 6502 and the 8080 processors. Meetings are held at 7:30 PM on the last Tuesday of each month at the National Park Municipal Building, 7 S Grove Av, National Park NJ. For additional information please call (609) 541-8296 or write Charles Knott, 3088 Congress Rd, Camden NJ 08104.

Tidewater VA Computer Club

This club, located in the tidewater area of Virginia (Norfolk, Virginia Beach, Chesapeake, Portsmouth) has a membership of about 100. Club meetings are held in the Electronics Computer Programming Institute, Janaf Office Building, Janaf Shopping Center in Norfolk at 7:30 PM on the first and third Tuesdays of each month. Contact C Dawson Yeomans, 677 Lord Dunmore Dr, Virginia Beach VA 23462.

140 BYTE January 1978

Circle 15 on inquiry card.

Electronotes

This is the newsletter of the Musical Engineering Group. Bernie Hutchins has been publishing this unique and valuable newsletter since the early 1970s. It contains technical material pertaining to electronic music and related subjects. There are 20 to 25 pages in every issue, all of them informative. To submit articles or to subscribe, write to B A Hutchins, 1 Pleasant Ln, Ithaca NY 14850.

Calculator Lib

There exists in Oxnard CA a man named Gene Hegedux who edits a newsletter called Calculator Lib, This publication is devoted to the spreading of information and ideas about calculators. In it are various tricks, hidden secrets and humorous items about calculators (not just programmable calculators, either). To subscribe contact Gene Hegedus, POB 2151, Oxnard CA 93034.

Alamo Computer Enthusiasts

ACE is a group of microcomputer enthusiasts in the San Antonio TX area who have gotten together to publish a newsletter. The club meets on the fourth Friday of each month at 7:30 PM in room 104, Chapman Graduate Center, Trinity University. Contact John Stanton, 7517 Jonquill, San Antonio TX 78233.

Southern Illinois Computing Association

The Southern Illinois Computing Association (SICA) draws its members from the academic, business, professional and hobbyist fields. The organization meets the first Monday of the month at Southern Illinois University, Carbondale IL. For further information and a current copy of the organization's newsletter, contact James E Honey, SIU General Stores, Carbondale IL 62901.

Computer Hobbyist Group of North Texas

This group, led by Neil Ferguson, president, and Bill Lewis, vice president, is located in the Dallas area. It is an informal club in which people display their systems, exchange information, and so on. Their newsletter, The Printed Circuit, looks good and contains vital club information, classifieds, and coming events. If you want to become a member, or get more information, contact Neil Ferguson, POB 1344, Grand Prairie TX 75051."

Circle 114 on inquiry card.

U

We've Got It!!"

OTHER SURPLUS STOCK

• KEYBOARDS - ASCI ENCODED S40.00-S60.00

• CRT TERMINALS

■ TAPE DRIVES $650.00

■ EQUIPMENT CABINETS

■ POWER SUPPLIES

A NEW ADDITION TO OUR STOCK OF SURPLUS ELECTRONIC EQUIPMENT

The IBM Selectric® Based 1/0 Terminal $695.00

• INTEGRAL MODEM

• BCD OR CORRESPONDENCE CODE

• TABLETOP MOUNTING

• 22"W, 22"D X 8"H, 58 LBS

• ASCII CONVERSION AVAILABLE

• DOCUMENTATION INCLUDED

PRINTERS

TRANSFORMERS

WIRE-CABLE

/g^\ Send for a free catalog or call Bill Blaney \5B/ toll 'ree 800-258-1036. In N.H. 603-885-3705

WQFLtJWIQE tLELTPUrilLli, »1L.

10 Flagstone Drive, Hudson, New Hampshire 03051

Many Other Items

Visit Our Store

SPEAK "KAAMPYUTAOLKER"

MODEL CT-1 SYNTHESIZER CSR1 SOFTWARE SYSTEM DEMONSTRATION CASSETTE

395.00

35.00

2.95

CALIF RESIDENTS ADD 6% SALES TAX

WRITE FOR INFORMATIVE LITERATURE

COMPUTALKER CONSULTANTS

P.O. BOX 1951, DEPT. B, SANTA MONICA, CA 90406

Circle 19 on inquiry card.

BYTE January 1978 141

Circle 115 on inquiry card.

r

aotaocKxaotxatatxacsatatKataataooaooocKxaotaocaotso

2708 pPD458 Si tms 2716

PRAMMER III

by xybek

The Ultimate EPROM Memory Board For Your S100-Bus Computer

* Accommodates from 1 k to 30k of the above EPROMS, in any combination, each addressable on any 1 k boundary within the board's 32k address space.

+ 1k of scratch-pad RAM.

■*■ On-board programming for all three EPROM types.

~k Tri-state buffers on all address and data lines.

~k Empty EPROM sockets do not require address space.

Xybek • P.O. Box4925 • Stanford, CA94305

Telephone: (408) 296-8188

D-2 BINDER ADAPTERS

G

$36.00

Ri

P.O. Box 10767 Salem Station Winston-Salem, N.C. 27108

(919) 748-8761

Continued from page 6

executed (or shall I say, "understood"?) by the computer system. When we figure out what it is that we want to get done, then the process of automating that intention reduces to a purely mechanical procedure.

The amplification of our thoughts represented by a computer's operation comes in several ways. The computer can automate and execute procedures orders of magnitude faster than a human brain can operate; a computer can record procedures in some form of storage, for recall at the direction of its user; by requiring explicit and consistent instructions, a computer acts as a tireless crusader for consistency and accuracy in our knowledge of innumerable subjects. Ralph Waldo Emerson commented that ". . .a foolish consistency is the hobgoblin of little minds, adored by little statesmen and philosophers and divines." With the aid of these new mental amplifiers, we might add computers to the list of "little minds."

As a mental amplifier, the computer is perhaps the "ultimate tool" of our tool making species. Recognizing the nature of the computer as such a tool helps one to understand the multiple facets of personal computing. The general-purpose computer system is not confined by design to any particular application; its generality is the secret of its enthusiasm with users. Computers are indeed used in dedicated applications, and with great success, as evidenced by the newest crop of complicated video game machines, computer controlled sewing machines, and computer controlled automotive systems. But in such dedicated applications, we merely use the results of the amplified thoughts of the designer of the application system, and if those thoughts disagree with our own thoughts on the way the system should work, then there is little prospect for improvement or customization of the application. The general-purpose computer in contrast is oriented toward an interactive user who needs the mental amplification process in an individualized context. The key to such computers' enthusiastic reception as "personal computers" is this flexibility which is present in the user who knows how to program with the tools available and can proceed to create an application or modify a canned application to fit a custom situation.

Think of an analogy to the piano or any other musical instrument which requires some skill to play. As an avocational pianist, I buy a "stock" program for an "appli

142 BYTE January 1978

Circle 46 on inquiry card.

Circle 13 on inquiry card.

cation" of the piano, for example a Scott Joplin piano rag, a Waldteufel salon style Viennese waltz, or a piano sonata by Beethoven. I do not pretend to be an original "programmer" of the music, so I purchase the printed form of these works and proceed to play them in my own imperfect style, customized as it were to my own characteristics as a piano player. (I can buy completely canned music, too, in the form of mass produced record albums of famous artists which are musically the equivalent of game programs purchased for specific games machines and written by the games' artists.) The piano is my generalpurpose musical instrument which can be adapted to any one of a wide diversity of musical styles and emotional states. In a like manner, the personal computer as a generalpurpose computer is not confined to any one mode of operation — it merely provides a mechanism for implementation.

The users of the personal computer in the past have tended to be those individuals who have most to gain from this personal thought amplifier, namely individuals involved in personal endeavors which can benefit from the automation of thoughts. Since everyone thinks to a greater or lesser degree, the market for personal computer equipment may in principle be limited only by the size of the human population; but for the near term it is those individuals who are involved with intellectual processes from art to business who benefit most from the small computer. The art of computer programming is a skill which I view as essential, in the same way that the art of driving is required to take advantage of the mobility of the automobile. Not everyone need be the programming equivalent of a skilled race or rally driver, but for people now growing up with programmable computers readily available, a programming skill analogous to the ordinary person's automobile driving skills is required. Anyone who would think otherwise is ignoring the essence of what makes the personal computer personal.

So, then, what does it really mean to have a personal computer? At an emotional level, it enhances one's understanding and thought processes through the ability to perform simulations and experiments; it gives one the opportunity to experience a joy of creation and practical benefits at whatever level programming is done. It gives its user a tool for understanding and interacting with the world which was not previously available and which enhances the human thought processes by allowing simple automation of well-defined operations. The total feedback in both spiritual and material benefits can be enormous."

Industrial Quality CAMBIONXQ Components for Hobbyists.

Famous CAMBION components are now available for hobbyists, personal computing enthusiasts, and home experimenters. Get them at your local retail electronics store, or by mail. The same high quality XQ components that Original Equipment Manufacturers depend on for profit around the world, are now yours for pleasure, at home. 1C sockets, component adapters, breadboards, wrap tools, wire, patch cords, plugs, jacks, sub-mini connectors, test points, clips, basic hardware—and you name it.

For your FREE new, enlarged XQ Components Catalog, write Cambridge Thermionic Corporation, 445 Concord Avenue, Cambridge, MA 02138. Or pick up a copy at your local retail store.

Cjuubiom

Guaranteed to be the right connection.

Winter shut-in blues???

Do what you Ve been wanting to do at prices you can't afford to pass by...

PRICES IN EFFECT UNTIL FEBRUARY 15,1977

LIST

OUR CASH PRICE

IMSAI8080

69900

$56995

Solid State Music VB1 Kit

14995

11995

PercomCI-812Kit

8995

7595

Tarbell Cassette Interface Kit

120°°

9995

TDLZPU Board

26900

22995

Other Z-80 CPU boards as well as 8K, 16K, 32K memory boards available at sensational savings.

All prices plus shipping. Add $1.50 per board or $10 for IMSAI. Send for free catalog.

S-100, Inc.

7 White Place

Clark, N.J. 07066

201-382-1318

Circle 93 on inquiry card.

BYTE January 1978 143

Simulation of Motion

Part 3:

Model Rockets and Other Flying Objects

Stephen P Smith

POB 841

Parksley VA 23421

Since becoming involved in personal computing, I've only met a few real applications oriented users. Most microcomputer owners are either hardware oriented, eg: hams or other electronics hobbyists, or they are software hackers. Both groups tend to love their machines for their own sake and not necessarily because they are useful. The users I've met who are more interested in the answers they get than in how they got them have all been running financial programs. Despite this thin showing, I believe that the next large group to "discover" personal computing is going to be applications oriented. They will be the business people and hobbyists who need more computing power than is available in a pocket calculator, but who can't justify access to a large computer.

Among this group will be the model rocket and aircraft builders. Those people delight in creating miniature NASAs, but they have always lacked one important

Body

flat plate (1 square meter) sphere (0.1 meter diameter) airplane body (2 square meters) wing or fin edgewise (1 square meter) model rocket (2 cm diameter) automobile (2 square meters) motorcycle and rider (2/3 square meters)

0.7

0.003

0.08

0.012

0.0001

0.6

0.25

Table 1: Drag coefficients for various bodies. These coefficients include the body area and air density term (1/2 x 1.192 kg/m3). They are intended to be used in an equation of the form:

DRA G = SPEED2 x Cd

If larger or smaller bodies are used, a simple ratio of areas will convert the coefficient.

resource, computing power. The government and the aerospace industry invest a great deal of effort in simulating flights long before any hardware is put together. Few hobbyists could do this until now. In this article, I'll show how a microcomputer can be used to simulate the flights of model or amateur rockets and aircraft. The simulations can be used as aids in design and "mission" planning. I also hope to demonstrate the desirability of personal computing as an adjunct to other pastimes.

As in my previous articles, these simulations are intended to serve as examples. The techniques involved can be applied in almost any real world application. The lunar lander game, for example, served to illustrate how simulations are separated into degrees of freedom, and how speed and position are predicted for steps into the future. Those concepts were also applied when we simulated the motion of an automobile suspension system. That simulation illustrated how forces could depend directly on the motion being simulated. It also served to introduce some powerful numerical techniques. All of these concepts will apply to the flight simulations. In addition, I'll show how to calculate the effects of a force which acts in two degrees of freedom at the same time. I'll also introduce angular motion and demonstrate the way in which a simulation keeps track of how fast a body is turning and where it is pointing. While developing a flight simulation in detail, I'll try to point out specific areas where these new techniques can be applied to the earlier applications.

Let's begin, in fact, by outlining a game

144

BYTE January 1978

simulation you can program. In the lunar lander game, aerodynamic forces were neglected, but these forces must be considered for atmospheric flight. They also present a good example of forces which act in more than one degree of freedom. We will investigate them through the use of a simple game I'll call EVEL. The object of the game is to select the ramp angle and speed with which to leap a motorcycle over a given number of cards and land successfully on the downward ramp. The motion will be in two degrees of freedom, vertical and horizontal. The forces will be gravity and aerodynamic drag.

We have seen in the previous articles how gravity affects speed, and most people have an intuitive understanding of drag. Drag is the force you feel when you hold your hand out the window of a moving car. It is the resistance of air to a body moving through it and it acts directly opposite the motion. Drag is calculated in much the same way as the force created by an automobile shock absorber. In that example the force was equal to the speed multiplied by a damping coefficient. To calculate drag, we will multiply the speed squared by a constant called the drag coefficient (symbolically Cd). Drag coefficients for some common bodies are given in table 1. Cd takes into account the size, shape and surface texture of the body. In our simulations, it will also include a factor for the density of the air (1.19 kg per cubic meter). More detailed simulations will take into account the changes in air density and temperature which occur at higher altitudes and adjust the aerodynamic forces accordingly. To avoid this complication, we will restrict our simulations to altitudes within a few thousand meters of sea level. The formula we will use for calculating drag is DRAG = SPEED2 x Cd.

If the only motion is upward, the drag acts only in the vertical degree of freedom. There are also cases in which it acts only horizontally; but in general, there will be motion in both directions, and the drag, which acts directly opposite the motion, will be felt in both degrees of freedom. Because of its dependence on the square of the speed, we cannot calculate separate vertical and horizontal drags. We must calculate one force and apportion it between the two degrees of freedom.

36.87° = GAMA

40M/SEC

1 I

o

o o

o

"ur

it rr

u

Figure I: The total speed and flight elevation angle can be calculated from the horizontal and vertical speed components.

Figure 1 shows a typical case. Here a daredevil motorcyclist has just left his takeoff ramp. Suppose we know from a previous simulation step that his vertical speed is 30 meters per second (m/sec) and his horizontal speed is 40 m/sec. To calculate drag, we must first find the total speed. Our fortunate selection of degrees of freedom now becomes apparent, because the vertical and horizontal velocities can be seen to form two sides of a right triangle. We can compute the third side, or hypotenuse, by applying the theorem of Pythagoras (C2 = A2 + B2). The total velocity will be equal to the square root of the sum of the squares of the speeds in each degree of freedom. In this case, the daredevil is moving at V 302 + 402 = 50 m/sec. Using Cd from table 1, we calculate a drag of 0.25 x 502 = 625 newtons, acting at some angle between horizontal and vertical. This angle is called the flight elevation (symbolically GAMA in some computer programs). It can be found using a little trigonometry. If we let horizontal be 0 degrees, and let vertical be 90 degrees, then GAMA is equal to the arc tangent of the vertical divided by horizontal velocity. In this case, GAMA = arc tan (30/40) = 36.87 degrees. Knowing the angle, it is easy to apportion the drag. The forces which result are called components of drag. The vertical component (symbolically Dv is given by Dv = DRAG x SIN (GAMA). The horizontal component, D^, is given by Dn = DRAG x COS (GAMA). In

BYTE January 1978 145

Figure 2: The direction of flight is called the flight elevation (GAMA). The direction the rocket is pointing is called the body elevation (THETA). The difference between them is called the angle of attack (ALPHA= THETA -GAMA).

the current example, Dv = 625 x SIN (36.87) = 375 newtons, and Dh = 625 x COS (36.87) = 500 newtons. You can check these calculations by noting that V 3752 + 5002 = 625. Readers familiar with trigonometry will be able to confirm that

Part I of this series, "An Improved Lunar Lander Algorithm," began on page 18 of November 1977 BYTE, while part 2, "An Automobile Suspension," appeared on page 112 of December 1977.

DRAG = V Dv2 + Dh2

in every case. This is the same formula we used to find the total speed, so it should not be surprising to find that the vertical and horizontal speeds are also referred to as components.

The effect that the components of drag have on the components of speed depends, of course, on the mass. If our daredevil is fairly small, and rides a light motorcycle, the total mass in flight might be 150 kg. During a step of 0.1 seconds, the horizontal speed will decrease by 500/150x0.1 = 0.333 m/sec. A similar change occurs in the vertical speed, but there we must also include gravity. Remember from the previous simulations that each second, gravity subtracts 9.8 m/sec from the vertical speed. In 0.1 seconds it will change from 30 m/sec to 30-(375/150 + 9.8)x0.1 = 28.77 m/sec. Knowing the new speeds, you can compute the new position, the new drag and the new flight elevation. The simulation can be stepped forward again and again until the daredevil returns to earth.

Because the drag components depend on the square of the speed, it will probably be necessary to use the predictor-corrector formulas from my previous article to obtain realistic results. The initial conditions of

total speed and ramp angle must be chosen. For the first simulation step set GAMA equal to the ramp angle and let the vertical speed component equal SPEEDxSIN (GAMA) and the horizontal component equal SPEEDxCOS (GAMA). Figure that a car is about 6 meters long, a bus about 15 meters, and the Snake River Canyon is 1451 meters wide. Good luck.

In many respects, a rocket or aircraft in flight is much like our daredevil. It will be moving horizontally and vertically and will be acted upon by gravity and drag. There are some other forces to be considered, however. For example, early in a rocket's flight, its engine will be producing thrust. Unless the rocket is pointing directly upward or directly parallel to the ground, we will also have to apportion this force between horizontal and vertical directions.

One way to do this is to assume that the rocket always points in exactly the direction it is moving. The flight elevation angle, GAMA, can then be used to apportion thrust just as it was used for drag. At each simulation step, the program can interpolate a table to find the value of thrust corresponding to the current time. It then computes the components and applies them to predict new speeds and position. In this manner we can build a two degree of freedom rocket trajectory simulation. This simulation might also be used for a game. Set up a duel between two artillery battalions, or better still, program a real time simulation like the lunar lander game of my first article and try to hit a moving target.

For most flight vehicles, the tendency to point in the direction of movement is a desirable characteristic. Unfortunately, this is not generally the case. Vehicle imperfections, the effect of wind, and just the fact that it takes a finite amount of time to turn the vehicle, all affect the pointing of a rocket. In order to indicate where the rocket is pointing, we define another angle, the body elevation angle (symbolically THETA). THETA tells us where the vehicle is pointed and is used to apportion thrust. The difference between THETA and GAMA is called the angle of attack (symbolically ALPHA). It is illustrated in figure 2.

Unlike GAMA, there are no components which may be used to compute THETA. We must keep track of it with a third degree of freedom. Just as altitude is calculated as the position in the vertical degree of freedom, THETA may be calculated as the position in this third, or angular, degree of freedom.

146 BYTE January 1978

Angular motion is handled in exactly the same way as the linear motions we have already been simulating. Just as position has its angular equivalent, so do speed, force and mass. It is as easy to calculate the speed with which a body turns as it is to find the speed with which it falls.

First we must calculate the angular equivalent of a force. These are called moments (also called "torque"), and have metric units of newton meters. As the units imply, each moment has a force as part of its definition, but it also depends on how much leverage the force has. For example, suppose you apply a force of 10 newtons to the end of a 15 cm (0.15 meter) wrench. A moment of 10 x 0.15 = 1.5 newton meters will be transferred to the bolt. If a 25 cm wrench were used, a moment of 10 x 0.25 = 2.5 newton meters would result, and the bolt would be proportionately tighter. In rocket flights a moment results as an aerodynamic effect whenever THETA is not equal to GAMA. It has its own coefficient, Cm. For small angles of attack, this coefficient is multiplied first by the square of the speed (linear speed, not angular) and then by the angle of attack (ALPHA=THETA

GAMA). The aerodynamic moment is therefore caused because the rocket is trying to point itself in the direction it is moving.

The next element to be considered in the angular equation is the equivalent of mass. This is called moment of inertia, and the leverage concept applies to it also. The moment of inertia (usually shown symbolically as an upper case I) depends on the mass of the body, and also how widely spaced the mass is. For example, a 50 kg set of bar bells would have a much larger moment of inertia than a single 50 kg weight. The units of I are kilogram meters. Like mass, moment of inertia is a property of matter. In our rocket simulation, both may change as fuel is burned, but their values can be determined at any given time. It is general practice to construct tables of mass and moment of inertia which parallel the thrust table we have already introduced. In each simulation step, our program will interpolate the table to find the current value of moment of inertia and use it to find the effect of the moments. The value of the metric units will now become apparent.

Just as the force in newtons was divided by the mass in kilograms to find exactly the

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 articles by more than 50 recognized professional authors who know and love microcomputers. Whether you're just learning the basics of programming, a business person looking for efficient methods of inventory control and stock market analysis, or an old hand in need of 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 this must text from the leaders in the field. Only $10.95 plus 50 cents for postage and handling. 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 operators are equipped to handle Bank Americard and Mastercharge customer orders only. Please have your credit card number ready before you call.

We invite dealer inquiries on the Scelbi/ BYTE Primer.

Send today to:

BYTE Interface Technical Services, Inc.

70 Main St

Peterborough 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 $

D Check enclosed

□ Bill MC #

□ Bill BA #

J. / L

M

J

Exp. Date Exp. Date

In unusual cases, processing may exceed 30 days.

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

.J

Circle 8 on inquiry card.

BYTE January 1978 147

188 REM PITCH PLANE TRAJECTOTY SIMULATION

118 REM INITIALIZE VARIABLES

128 DATA 8.8,8,8,8,8,8,8,8,8,8,8,8

138 READ U,H,U,U1,W1,U2,X1,Z1,Q1,F1,M1,II,K

148 REM INITIALIZE TIME(T),STEP SIZE(H>, PRINT IHTERUAL(K1)

158 H=8.81

168 LET T=8

178 LET T1=T

171 LET Kl*8.1/H

188 REM SET INITIAL ALTITUDE (Z1>0)

198 LET Zl-1

288 REM SET DRAG(D) AND MOMENT(P) COEFFICIENTS

218 LET D—1.8E-4

228 LET P—3.8E-5

238 REM SET LAUNCHER LENGTH(R) AND ELEUATIOH(L)

248 L=98

258 PRINT "LAUNCH ELEUATION =";Li" DEGREES"

268 LET L=L*0.01745

278 LET L1=L

272 LET G«L

288 LET R»Z1+1

388 REM SET HIND SPEED

318 N»5

328 PRINT "HIND SPEED «*!Ni" METERS/SECOND"

338 LET Ul-H

348 REM END INITIALIZATION, BEGIN TRAJECTORY

358 PRINT "TIME ALTITUDE RANGE SPEED"

368 PRIHT "(SEC) (METERS) (METERS) (M/SEC)"

378 REM GET THRUST(F), MASS(M), I MOMENT OF INERTIA (I)"

388 GOSUB 958

398 LET T«T+H

488 LET K-K+l

418 REM PREDICTOR FORMULAS

415 REM B,H,Z,ARE UERTICAL ACCELERATION,SPEED 8. POSITION

428 LET Bl-(SIN(G)*D*U2+SIN(L>*FVM-9.8

438 LET U=W1+H*B1

448 LET Z»Z1+H*W1

468 REM A,U,X ARE HORIZONTAL ACCELERATION, SPEED i, POSITION

478 LET Al-(COS(G)*D*U2+C0S(L)*FVM

488 LET U-U1+H*A1

498 LET X=X1+H*(U1-N)

588 LET U2=(U+N)t2+HT2

518 LET V=SQR(U2)

511 REM HO ANGULAR MOTION ON LAUNCHER

512 IF Z<R THEH 598

513 LET G=ATN(H'(U+N))

514 IF U+H>8 THEN 538

515 LET G=G+3.14159

520 REM HEGLCT ANGULAR MOTION AFTER BURNOUT

538 IF F=8 THEH 618

535 REM C,Q,L ARE AMGULAR ACCELERATION, SPEED t POSITION

548 LET C1=P*(L-G)*U2/I

558 LET Q*Q1+H*C1

568 LET L»L1+H*G1

598 GOSUB 958

688 REM CORRECTOR FORMULAS

618 LET B=(SIN(G)*D*U2+SIN(L)*F)/M-9.8

628 LET H=H1+H/2*(B+Bn

638 LET Z»Z1+H/2*(H+H1)

648 LET Ul-H

668 Z1«Z

688 LET A«(C0S(G)*D*M2+C0S(L)*LVM

698 LET U=U1+H'2*(A+A1>

788 LET X="X1+H'2*(U+U1)

718 LET U1»U

728 LET Xl-X

739 LET U2-(U+N)t2+Mt2

748 LET U"SQR(Y2>

758 REM NO ANGULAR MOTION OH LAUNCHER

751 IF Z(R THEN 888

752 G»ATN<MV(U+N>>

753 IF U+N)8 THEN 770

754 G-G+3.14159

768 REM HEGLECT ANGULAR MOTION AFTER BURNOUT

778 IF F=8 THEN 888

788 LET C=P*(L-G)*U2/I

798 LET Q=Ql+H'2t(C+Cl)

888 LET L-L1+H^2*(Q+Q1)

810 LET Q1=Q

828 LET L1=L

888 IF K<K1 THEN 398

898 PRINT T,Z,X,U

988 LET K=8

928 IF Z>8 THEN 398

930 REM STOP HHEH ALTITUDE RETURHS TO ZERO

948 STOP

958 REM INTERPOLATE TIME TABLE FOR F,M,8, I

960 DAT 8,5.6,8.8458,l.lE-4,8.1,13.3,e.e446,l.lE-4,e.2,5.6,e.8434,l.lE-4

978 DATA 1.6,5.6,8.8337,1.9E-4,1.7,5.6,8.0333,1.8E-4,188,8,8.8333,1.8E-4

988 IF T<T1 THEN 1858

998 LET T2=T1

1888 LET F2=F1

1810 LET M2-M1

1828 LET 12=11

1838 READ T1,F1,H1,I1

1040 GO TO 980

1050 LET H4«(T-T2)/(T1-T2)

1060 LET F-F2+(F1-F2)*H4

1078 LET H-M2+(M1-M2)»H4

1880 LET I-I2+(I1-I2)*H4

1898 RETURN

1108 END

A Model Rocket Simulator

Listing J: This BASIC program illustrates the use of an angular degree of freedom to apportion a force between two linear degrees. It simulates the flight of a model rocket that might be built from widely available kits. During the early part of the flight (approximately I meter), the rocket rides on a guiding rod. The rod prevents the body from turning, so angular motion must be suppressed in the simulation. After leaving the launcher, the vertical, horizontal and angular pitching motions are all considered. A short time later, however, the fuel will be exhausted and the thrust will drop to zero. Because the only reason for computing THETA was to apportion the thrust, angular motion may be neglected from this point until the vertical position becomes zero (rocket returns to earth) and the simulation ends.

This type of simulation is particularly useful for determining the effect of wind on a rocket. The tendency a rocket has to point in the direction it is moving also causes it to turn into the wind. The highest altitude may not, therefore, be achieved with a vertical launch. By running a series of simulations on his/her personal computer, a model rocket builder can determine in advance the ideal launch angle for various steady state wind speeds. The plots shown in figure 3 illustrate this type of study. Note that in each case the horizontal degree of freedom is aligned with the wind.

Because the forces and moments in this simulation depend on the motion, the predictor-corrector method has been applied. To conserve space, however, it is not the fourth order method used in the automotive simulation of last month's article, but a shorter second order version. Improved accuracy would result if you were to implement the longer formulas. You may also want to customize the output. For example, a plot of angle of attack versus time might be interesting. To print out ALPHA in degrees, use (L-G) x 57.295 to convert from units of radians. Special output exactly at apogee (maximum altitude), impact, or motor burnout might also be helpful in evaluating performance. The code is wellcommented, so feel free to dig in and adapt this program to your own needs.

148

BYTE January 1978

change in speed each second, so the moment in newton meters can be divided by the moment of inertia in kilogram meters to find exactly the change in angular speed. In angular degrees of freedom the units of speed are radians per second and the position will be computed in radians. There are In radians in a full circle, so 1 radian equals 57.296 degrees. Because most BASIC interpreters perform trignometric calculations in radians, these units are to be preferred. Conversion to degrees is easily made for input and output.

Once the effect of each moment is known, it is multiplied by the time step size and added to the speed in exactly the same technique used for linear motion. Similarly the angular speed is multiplied by step size to update the angular position. The predictorcorrector method may be applied by saving moments, and speeds from previous steps. I have included a BASIC program with this article which involves both the predictorcorrector formula and angular motion in a three degree of freedom (pitch plane) trajectory simulation. Noting the similarity between the angular and linear equations used there should make this technique easier to understand.

The concept of angular motion is easily transferred to other applications, but to make best use of it you really need some familiarity with the forces and moments which may appear. For example, an automotive enthusiast will already understand how the road surface induces motion in the body of a car. We saw last month how to simulate that motion for one wheel. If you include two wheels, the front and back on one side, a second degree of freedom in body motion is introduced. Most people would recognize that, but only someone familiar with automobiles might realize immediately that the two ends of the body will not move up and down entirely independently. The second degree of freedom must be an angular one. It will measure the pitching motion of the car while the original degree measures its overall up and down motion. The forces created by each set of suspension parts will contribute to the linear motion, and will be multiplied by their leverage (perhaps their distance from the driver's seat) to determine their affect on the angular motion. At each step, the angular motion will be combined with the linear motion to compute new forces, moments, etc, and the procedure will begin again. Just how those angular motions are combined with the linear ones, and how the leverage of a force is determined, will be the subjects of the fourth and last article in this series."

Figure 3: The program of listing I can be used to determine the best launcher elevation for any given wind.

LAUNCH ELEVATION (DEGREES)

ALTITUDE (METERS)

-300 -200 -I00 O I00 200 300 400 500

RANGE (METERS)

Figure 3a: Trajectories with no wind.

WIND SPEED ( M/SEC)

ALTITUDE (METERS) 300

WIND DIRECTION

-300 -200 -I00 0 I00 200. 300 400 500

RANGE (METERS)

Figure 3b: 90 ° launch with wind.

LAUNCH ELEVATION (DEGREES)

ALTITUDE (METERS)

400 300

200 IO0

no

100

90

Il

i i

/ V i

WIND

DIRECTION

-300 -200 -100 0 100 200

RANGE(METERS)

Figure 3c: Trajectories with 10 m/sec wind.

BYTE January 1978 149

A Novice's Eye

on Computer Arithmetic

Wayne H Ledder 8 Overlook Dr Medway MA 02053

Now that you have your shiny new microcomputer you want to use it for something. No matter what the application, someplace in it you have to use numbers: to count, do arithmetic, input from a keyboard, or output to a terminal of some sort. If you are operating with a higher level language such as BASIC or FORTRAN there is no problem since all the number manipulation programs are already included. Most of us, however, must work in assembly language or even machine language, and if you have never been there before it can be a discouraging situation when you don't get the expected results.

The purpose of this article is to explain how simple numbers are often represented in a computer and how to do the four basic arithmetic operations. Since the real world of people is decimal, not binary oriented, we have to convert from one to the other. Since most computer peripherals talk in a language called ASCII, I will also show how to translate that into binary and vice versa.

Binary Number System

All the computers you are liable to run into operate on the binary number system, where each element has two possible states, usually designated as 1 and 0. Let's consider an arbitrary 8 bit computer, meaning that the internal arithmetic and logic of the computer handles data that consists of eight bits at a time.

When counting in either the binary or decimal number system the first number is designated by 0 and the second number by 1. We run into difficulties when we try to express the number 2. In the decimal

number system it is easy, 2. In the binary number system we have already used up the two allowable states with the first two numbers. What we need is an additional bit of information. When this bit is added we can now designate the number 2 by 10. This extra digit on the left represents a weight of 21 = 2. (The rightmost digit has a weight of 2° =1.)

Each digit position in a number is assigned a weight dependent on where in the number it occurs. To obtain these weights take the base number and raise it to a power equal to the position of the digit in the number. The rightmost digit is the least significant digit and has the position index of zero. Following these two rules the weights for the decimal number system are: 100 = 1, io1 = io; 10.2 = 100, etc. In the binary number system the base number is 2 instead of 10. Substituting, we have the following weights: 20 = 1, 21 = 2, 22 = 4, etc.

To translate a binary number into a decimal number just add up the weights of the digits which are 1s. Table 1 shows how the decimal numbers from 0 through 16 are written in binary and two other forms of numbering common in computers: hexadecimal, which uses a base of 16, and octal, which uses a base of 8.

The octal and hexadecimal forms are used to save you from writing out long strings of 1s and 0s which are hard to read and give plenty of opportunity for mistakes. For hexadecimal notation six new digit value graphics are needed to allow a total of 16 different digits, representing four bits. To fill this need the letters of the

150

BYTE January 1978

Decimal

Number

Bir

ary

Mumber

Hexadecimal

Octal

Weights =

16

8

4

2

1

Weights ■

16

1

Weights = 8

1

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

1

0

1

0

1

2

0

0

0

1

0

0

2

0

2

3

0

0

0

1

1

0

3

0

3

4

0

0

1

0

0

0

4

0

4

5

0

0

1

0

1

0

5

0

5

6

0

0

1

1

0

0

6

0

6

7

0

0

1

1

1

0

7

0

7

8

0

1

0

0

0

0

8

0

9

0

1

0

0

1

0

9

1

10

0

1

0

1

0

0

A

2

11

0

1

0

1

1

0

B

3

12

0

1

1

0

0

0

C

4

13

0

1

1

0

1

0

D

5

14

0

1

1

1

0

0

E

6

15

0

1

1

1

1

0

F

7

16

1

0

0

0

0

1

0

2

0

Table I: Binary, octal, decimal and hexadecimal equivalents of the decimal numbers 0 through 16.

alphabet A through F are used to represent the numbers 10 through 15. To convert a binary number to hexadecimal start at the least significant end and count off binary digits in groups of four. If the last group does not contain four digits visualize additional 0s to make four binary digits. Consider each 4 digit group as a separate number and write its hexadecimal equivalent (refer to table 1). For example:

binary 11010111001000111

separated 0001 1010 1110 0100 0111 hexadecimal 1 A E 4 7

To convert from hexadecimal to binary notation just reverse the procedure. Replace each hexadecimal digit with its binary equivalent, remembering to add leading 0s so that each of the hexadecimal digits forms a 4 digit binary number.

Octal conversion is the same except the binary number is broken into groups of three. For the previous example:

binary 11010111001000111

separated 011 010 111 001 000 111 octal 3 2 7 10 7

Conversion from octal back to binary is done by replacing each octal digit with its 3 digit binary equivalent.

Let's return to our 8 bit computer. If table 1 is expanded to eight binary digits (bits) the largest number that can be formed would be decimal 255 (binary 11111111). Counting 0, this gives 256 different numbers that can be expressed with eight bits. In some applications 256 numbers are enough, but if you were going to balance your checkbook a maximum balance of $2.55 would be rather useless. I will return to this limitation shortly and show you how to get around it; but first, in the context of balancing checkbooks, what happens when a number is negative? If we accept 0 as a positive number then we can assign one bit of the number to be the sign, a 1 for negative and a 0 for positive. Notice that we have lost a bit from the numerical value and now can only have 128 different values each with two signs for a total of 256 different numbers. However, —0 is not considered a valid number, so there are only 255 usable numbers. This type of notation is called a sign-magnitude representation of a number. Using this notation, —1 is written as:

sign bi

,7'

10000001

magnitude

If you were going to add two signed numbers (say +3 and —1) your program

BYTE January 1978

151

would have to take into account several things first. First, if you simply added the two numbers, the result would be wrong:

+3

sum

00000011 10000001

10000100

Wouldn't it be nice if there were a number notation that would allow identification of positive and negative and give a correct answer when added together? Consider adding +1 to —1 to get 0. What 8 bit binary number added to 1 gives 0?

8 bit binary number +1

11111111 00000001

sum

L.

100000000

overflow to ninth bit

The binary number which is all 1s can be called —1, What would —2 be?

11111110 00000010

-2 +2

sum 100000000

We can take any positive number up to 127 decimal (01111111 binary) and subtract it from 0 (assume there was a ninth bit equal to 1 so 0 is really 100000000). The resultant binary number is called the 2's complement. The most significant (leftmost) bit is a true sign bit in the 2's complement notation, but negative numbers have an altered magnitude value. When two such 2's complement notation numbers are added the answer is correct. Consider the previous example of adding +3 and —1:

+3 00000011

-1 11111111

sum 100000010 = +2 (in 2's complement notation)

Now consider adding+1 and —3:

+1 00000001 -3 11111101

sum 11111110

-2 (in 2's complement notation)

One method of finding the 2's complement of a number has been mentioned which required subtraction from binary 0.

A simple method that can easily be done on paper, especially if you are prone to making errors in binary subtraction like me, is to first rewrite the number substituting Is for 0s and 0s for 1s, then add binary 1 to the result. For example, the 2's complement of +5 is:

+5 00000101 substitute 11111010 add 1 1

~5 11111011

To check, we should be able to take the 2's complement of —5 and end up with +5:

substitute add 1

+5

11111011 00000100

1

00000101

Substituting 1s for 0s and 0s for 1s is called complementing and is usually found as an instruction in the computer instruction set. Adding 1 is usually available as an instruction also. Sometimes both instructions can be combined into one step. In summary, to make a number negative (if you have no negate instruction):

• Clear the accumulator.

• Add the number to the accumulator.

• Complement the accumulator.

• Add 1 to the accumulator.

The accumulator now contains the negative of the original number in 2's complement notation. One interesting property which comes along with this 2's complement form is the fact that all states of the 8 (or n) bits are valid and there is only one zero state. The largest negative number, however, has no positive value equivalent.

Let's return to the problem of not having enough bits to make a big enough number. If we use two successive byte size memory locations to represent a number we have 2^6 (65,536) possible numbers. Using 2's complement notation we can have any number from -32,768 to +32,767. If that is not enough you can expand in increments of eight bits until your needs are satisfied. There is a problem now, since the computer only operates on eight bits at a time. When a number is spread over more than one memory location it is called a multiple precision or extended precision number. If two locations are used for each number it is

152

BYTE January 1978

Get Your FREE Subscription*

Find out all the LA TEST details about the

SECOND

&

COMIN' ON STRONG*35

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

Alexander Computers

Anderson Jacobson, Inc.

Apple Computer, Inc.

Automated Business Systems

Berg Publications

BITS

Business Solutions, Inc.

Byte Publications

Byte Shops of Arizona/Micro Age

California Business Machines

Camelot Publishing Co.

Cherry Electrical Products Corp.

CMC Marketing Corp.

Compucolor Corp.

Computer Kits

Computer Room

Computer Warehouse Store

Creative Computing

Cromemco, Inc.

Digital Group

Digital Research

Dymax

Electronics Emporium International

Godbout Electronics

Heuristics, Inc.

Ibex

Integrand Research Corp.

Interface Age Magazine

International Data Systems, Inc.

Ithaca Audio

Jade Co.

Logical Machine Corp.

Micromation, Inc.

Motorola, Inc.

Mountain Hardware, Inc.

Neutronics

Newman Computer Exchange, Inc.

North Star Computers, Inc.

Osborne & Assoc, Inc.

Page Digital Electronics

Paratronics, Inc. People's Computer Co.

Phonics, Inc.

Processor Technology

Promedics Data Corp.

Quay Corp.

RCA Laboratories

SD Sales Co.

Smoke Signal Broadcasting

Solid State Music

Southwest Technical Products Corp.

Standard Engineering Corp.

Sybex, Inc.

Technical Publishing Co.

Technico, Inc.

Tri-Tek, Inc.

United Technical Publications

Vector Graphic, Inc.

Ximedia Corp.

Xybek

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

9ani-6fim 9am~6pm Noon-5pm

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.

=? FAIRE BOX 1 579, PALO ALTO CA 94302 D (415) 851-7664 C

*

Circle 113 on inquiry card.

BYTE January 1978 153

called double precision; if three are used it is called triple precision, etc. (However, it remains a binary number. In large machine floating point representations this terminology has a different meaning.)

One more item needs to be mentioned before I describe multiple precision arithmetic. All computers have some sort of means to detect an accumulator overflow (or underflow). In our 8 bit example this is a ninth bit at the extreme left of the number. The status of this bit can be controlled and tested. It increases by 1 when the addition

An Example of Double Precision Addition

Step Number

Procedure

Resulting Values

Carry Bit Accumulator

1&2

Clear carry bit and accumulator.

0

00000000

3

Add A2 to the accumulator.

0

1110 10 0 0

4

Add B2 to the accumulator (gives £2 in accumulator).

1

1 10 0 0 10 0

5

Store contents of accumulator in the memory location assigned for C2. Set accumulator to 0; preserve status of carry bit.

1

00000000

6

Rotate accumulator left one bit.

0

0 0 0 0 0 0 0 1

7

Add A1 to the accumulator. 0

110 0 1110

8

Add B-| to the accumulator (gives C-\ in accumulator).

0

1110 0 111

9

Store contents of accumulator in the memory location assigned for Cj< Set accumulator to 0.

0

000000 Or 0

To check, write out ail 16 bits and add:

A= 1100110111101000 B =+0 001100111011100

C = 1110011111000100

!A1 = 1 1 0 0 1 1 0 1 A2 - 1 110 10 0 0

B, = 0 0 0 1 10 0 1 B2 = 1 1 0 1 1 1 0 0

The simple addition of two double precision positive numbers, A and B, to obtain an answer C. In this example the subscript 1 denotes the most significant part of the number and the subscript 2 denotes the least significant part. To add two double precision numbers:

1. Clear the accumulator to all 0s.

2. Set the overflow, carry (or whatever the extreme leftmost bit is called) to 0. Often these two steps can be combined into one.

3. Add A2, the least significant part of A, to the accumulator.

4. Add B2 to the accumulator. At this point the accumulator contains the sum of the least significant parts of A and B. If any carry has occurred due to this addition the carry bit will be a 1. If no carry has occurred, it will be 0.

5. Store the contents of the accumulator in the memory location assigned for C2- Set the accumulator to 0, but preserve the state of the carry bit.

6. Rotate the accumulator left one position. This will load the carry bit from the previous addition into the least significant bit of the accumulator.

7. Add A1 to the accumulator.

8. Add B-| to the accumulator. At this point the accumulator contains the sum of the most significant parts of A and B plus any carry from the least significant parts.

9. Store the contents of the accumulator in the memory location assigned for Cf.

of the eight bits causes a carry and decreases by 1 when the subtraction of the eight bits causes a borrow. When a rotate instruction is executed this bit receives the most significant bit and loads the least significant bit on a rotate left. It receives the least significant bit and loads the most significant bit on a rotate right. This extra bit is known by different names, such as overflow, carry, and (in the PDP-8) the link.

The steps shown in the box will vary from machine to machine, depending upon how the instruction set is organized. For example, the 6800 instruction set has ADC for add with carry input, and the 8080 instruction set has a similar variation. In these cases, there is no need to rotate the accumulator from the carry flag prior to the second addition, since the ADC instruction type takes into account the old value of the carry.

How do you do a 2's complement of a double precision number? Start with the accumulator and carry set to Os. Add the least significant part of the number. Complement and add 1 as before. The accumulator now contains the 2's complement of the least significant part, so store it. Rotate left to load any carry into the least significant bit. Store the contents of the accumulator (the carry) in any convenient location. Add the most significant part of the number to the accumulator. Complement it only. Now add the previously stored carry. The contents of the accumulator are now the most significant part of the 2's complement. As in the simple addition case, machines with an ADC instruction can often use the previous setting of the carry flag as part of the addition.

Addition

All computers can add. They typically add some specified memory location to the contents of an accumulator (a built-in memory location in the processor). When adding two or more numbers together you must be careful not to allow the resulting sum to get so large that you get an incorrect answer. For instance, when using 2's complement notation you can add together two numbers which are positive and get a negative answer if a carry into the sign bit occurs. Also be sure the accumulator and carry are initialized to 0.

Subtraction

Some computers do subtraction directly, but be careful. They may only subtract magnitudes. You have to do

154

BYTt January I978

^ k

JS^

^ ,6/

SPEAK!

AT THE

SECOND

%>'

'^

*<?

• Tutorially Talk about our Tantalizing Thinkertoys • Comprehensively Comment on your Complex Computer Calisthenics • Describe Daring Digital Deeds

CHOOSE YOUR OWN TOPIC(S)

^

Topics at the FIRST West t Tutorials for the Computer Novice t People & Computers t Human Aspects of System Design t Personal Computers for the Physically Disabled t Legal Aspects of Personal Computing t Amateur Artificial Intelligence t Computer Art Systems t Music & Computers t Electronic Mail

t Computer Networking for Everyone t Personal Computers for Education t Amateur Radio & Computers

Coast Computer Faire included:

t Residential Energy & Computers

t Computers & Systems for Very Small Businesses

t Entrepreneurs

t Speech Recognition & Speech Synthesis by Home Computer

t Tutorials on Software Systems Design

t Implementation of Software Systems & Modules

t High-Level Languages for Home Computers

t Multi-Tasking on Home Computers

t Homebrew Hardware

t Bus & Interface Standards

t Microprogrammable Microprocessors for Hobbyists

t Commercial Hardware

NOTE: The Conference Proceedings of the First West Coast Computer Faire carries over 320 pages of these tutorials & technical presentations, many discussing the state-of-the-art in home & hobby computing. The Proceedings is immediately available from Computer Faire (within California, $13.40; outside California, $12.68; foreign, please write for rates-payment must accompany order), or from your local computer store (a dastardly dis-service to you if it's not!).

FOR YOUR TALK TO RE PURLISHED

in the Proceedings of the SECOND West Coast Computer Faire, which will be available at the Faire,

abstracts & camera-ready papers

will be needed.

^ CALL or WRITE:

^<jp£&*L$£ ^ f Tell us your topic

V** <vpV^ ^™^^^" f Request Speakers' Instructions "^^P^™

^)v>*^w^ Phone instantly to request Author's Kit! ^t

^^ Deadline for submitting camera-ready, full-text paper in specified format/1978 Jan 16 "^H

^COMPUTER FAIRE BOX 1 579, PALO ALTO CA 94302 □ (41 5) 851-7664 D

Circle 113 on inquiry card.

BYTE January 1978 155

checking of each number to see which is larger and in what order the subtraction takes place in order to determine ahead of time what the sign should be. Sign bits must be set to 0 so they don't give false indication of magnitude. The sign bits must be put back into the answer if you are using signed number notation. All of this takes a lot of extra software and time. If you are using 2's complement notation you can subtract directly and the sign will automatically come out correct. Most of the common microprocessors use 2's complement notation and have no problems subtracting directly.

If direct subtraction is not possible in your computer, all is not lost. Consider subtraction by addition of a negative number. If you want to perform A—B=C, for example, use 2's complement notation and first make B negative by taking its 2's complement and then add A to get the answer C. Notice that even if A or B is negative to begin with, the answer will still be correct in 2's complement notation without any extra software to keep track of the sign. This will also work for multiple precision numbers. You still have to be careful not to use numbers which are large enough to cause inadvertent sign bit changes.

Multiplication

Two problems immediately confront us when we consider multiplication. First, if you multiply two 8 bit numbers together, the result is 16 bits long; and second, you simply can't add up 2's complement numbers and always get the correct answer. For instance, if you add —3 three times the answer would be —9 (equivalent to 3 times —3) which is correct, but what would you do with a negative multiplicand as in —3 times —3? To solve this problem and use successive addition to do multiplication the first step is to convert all numbers to a positive absolute value without sign. If you have been using 2's complement notation it is an easy procedure to convert. Rotate left to load the sign bit into the carry bit. Test the carry bit. If it is 0, the number is positive; if it is 1, the number is negative. If the number is positive, just rotate right to restore it to its original value and set all 0s into a location assigned to be the sign of the number. If the number is negative, first rotate right to restore the original, then take the 2's complement of it to get the number positive and finally, with an all zero

accumulator, set the carry bit to 1 and rotate right. Store this in the sign location. What we have done is separate the number into its sign and magnitude. Now if the signs are added we get the correct sign for the answer directly which should be stored in a location assigned to the sign of the answer. Two generalized techniques may be used to find the magnitude of the answer.

Successive addition may be used by adding A to itself B times. If the instruction set allows decrementing a number, use that instruction to decrease B by 1 each time you add A to the accumulator until B reaches 0. At that point you have the magnitude of the answer. If the instruction set allows incrementing but not decrementing, first take the 2's complement of B and use incrementing of the now negative number until it reaches 0. The disadvantage of using successive addition is that you have to do a potentially large number of additions which can take a lot of time.

A second technique that requires only a few operations is a direct copy of how you do binary multiplication by hand. For example, let's multiply two 4 bit binary numbers by hand:

1101

= A

X 1010

= B

0000

1101

0000

1101

10000010

= c

Notice that all we have to do is add A, a shifted version of A or 0, depending on which digit of B is used and whether it is a 1 or 0. Notice also that two 4 bit numbers produce an 8 bit answer, so if you don't restrict the number size, you have to use multiple precision shifting and addition. A technique that is sometimes useful when you want to multiply by a constant is to recognize that shifting a number left one position is equivalent to multiplying by 2. Shifting left two positions is equivalent to multiplying by 4, three positions is multiplying by 8, etc. By shifting and adding the various shifted numbers in a fixed format you can do the equivalent of multiplying very quickly by a constant. For example, to multiply by 5, shift left twice and add it to the original:

5 A = (4+ 1) A = 4A + A

156

BYTE January 1978

FOUR TRACER

"4 Tracer" TTL Adapter Kit for your oscilloscope. Chop or alternate display of up to 4 TTL signals. Trigger input for alternate mode sync. Scope must provide a trigger for alternate mode use. Output 1u p-p.. Built-in 110v pwr supply. S70.00

SEND TO: NITTANY DIGITAL DEVICES

Box 56 (A)

Penna. Furnace, Pa. 16865

Please send me: "4 Tracerisl"

Pa. residents add 6% sales rax.

I enclose check or money order for S

Name (print)

Address

City

State

_Zip_

□ INSTRUMENT CASES | AND CABINETS WM

Excellent for small systems Testing & Breadboarding Finished in durable Grey-Blue

Wrinkle Various sizes available — Some

examples:

8/2x101/8x8- $15.00 Ea. 8/»x121/8x8- 16.00 Ea. 10x201/8x9- 20.00 Ea.

To order send check payable to PAR-METAL PRODUCTS, INC.

Shipment will be made prepaid.

PAR-METAL PRODUCTS, INC.

1260 ATLANTIC AVENUE ■ BROOKLYN, N.Y. 11216 □

MOTOROLA CRT'S (Used)

Mod. #XM 351-19 P4

EXCELLENT CONDITION $60.

Ready for a composite

video signal Send money orders for

same day shipment

Documentation available

from Motorola

NORCOM SERVICES

BOX 98

SOUTH BERLIN, MA.

01549

Circle 76 on inquiry card.

Circle 85 on inquiry card.

Circle 77 on inquiry card.

► "LSI-11 vs. 8080 & 6800: *

► is the HI 1 worth <

► twice as much?" <

f A

This special report will be sent free to all subscribers to

BUSS

the independent newsletter for users of Heathkit® computers. For the next 12 issues send $6.60 to:

Charles Floto 267 Willow St. 'B' New Haven, CT 06511 V J

CANADIANS!

Introducing our kit-by-the-month plan available for only $500.00 down and $150.00 per month.

(Write tor more information)

IMSAI 8080 KIT: $897.50

ASSM: $1245.20

Canadian Duty and Federal Tax Included

Hobby systems from $999.00 (Kit). Business/engineering systems from $11,900.00. (Assembled and Installed*). Educational discounts available. We will develop custom application packages. Contact us for further information. Send $1.50 for catalogue.

VISA • CHARGEX ACCEPTED

Rotundra WML Cybernetics Ma

Box 1448, Calgary, Alta. T2P 2H9 Phone (403) 283-8076

(Installation outside Western Canada extra)

IT'S A GREAT BIG COMPUTER WORLD

But You Only Need

it-THE COMPUTER CORNEFL

"**" «SOL - A New Dawn Is Herel

~**~ • IMSAI 8080

"*t_ »POLY-8B

"**" »TDLZ-80

>t_ 'Memories & I/O Boards

N

-»>f- •Computer Book Service _

X— 'Magnetic Tapes & Disks _

-X— •Full Line of Magazines _

l>|— • Brain Games & Puzzles _

■>f- ^Workshops & Club Information _

^~ Visit THE COMPUTER CORNER for "

~, all your computer needs. Stop in and p. browse — you'll like our personal service.

»| THE COMPUTER CORNER

White Plains Mall - Upper Level "^1 200 Hamilton Avenue —

-f>t— White Plains, New York 10601

->f- Tel: [914) WHY-DATA

jK

Ample Parking 10*6 Daily & Saturday

^ f 10-9 Thursday \ ">

^^i-TTTTTTT^

-**^

Circle 44 on inquiry card.

Circle 92 on inquiry card.

Circle 20 on inquiry card.

r

Disc/3

1

DISC con

BUSI

SOROC IC

Assem

LEAR SIE ADM-C

IMSAI 80

CENTRO Printer

/3 COMF IPLETEMI MESS SYS

1 120 Died

GLER A kit

30 kit

\IICS Business (132 column

>ANY

CRO TEMS

$ 899.95 $ 799.95

$ 599.95

$1145.00

)

Disc/3

DIS 1841

SANTA IN

3/3COMP 5 LINCOLN B /lONICA, CAL 213)451-891

ANY

LVD.

IF. 90404

1_>

Circle 35 on inquiry card.

• computer . , depot me. .

CCredit Cards Accepted)

• 3515 W. 70th St., Mpls., MINI 55435 •

(612) 927-5601

□ Motorola DII 6800 *

• Evaluation Kit $235.00 •

□ National SCMP Kit with Keyboard $190.00

• □ E&L Digi-Designer Kit— •

Design Your Own,

Circuits. , . $ 77.75

• □ Speech Lab Kit-Talk To •

Your Computer .... $249.00

□ 2708 Eproms Full Spec

• 450NS From Tl 8t • Fairchild $ 16.95

□ IMSAI 8080 Complete 22

• Slots All IC's with Sockets— •

• Assem. & Tested . . . $850.00 #

□ TTL Catalog and Remember,

• We Pay The Shipping. •

R'arne

• Address *

• Part No. Qty., Amt. Enclosed •

Circle 21 on inquiry card.

Z-80

COMPUTER

S-100 SYSTEM KIT ® Z-80 CPU P/C BACKPLANE - 10 SLOTS POWER SUP PLIES & MANUALS OPTIONS FOR MEMORY <frOQQ & I/O. ■$£.&&.

S-100 MODULES & SYSTEMS

2-80 CPU 2/4 MHz 1 35./1 75.

6800/8080 CPU 135.

RAM & PROM or I/O option . . 85.

16K/32K RAM 460./860.

ALTAIR/IMSAI COMPATIBLE SYSTEMS

N. Star H-1 Z-80 & disc 1,499.

N. Stat Udisc drive 599.

Vector-1 8080 system 495.

Poly 88 /Jdisc & video 2,599.

Seals 8k RAM B/B 269.

Rack mounting chassis 199.

Commodore PET 2001 595.

Compucolor 8001 system. . . 2,699.

COMPUTER SYSTEMS

313/779-8700 26401 Harper St. Clair Shores, Mich. 48081

Circle 28 on inquiry card.

Division

Division is the most difficult operation to do. First, handle the separation of magnitude and sign as under multiplication and use the same technique of adding signs to get the correct answer sign. The problem with division is that seldom does the answer come out exactly even. Usually there is a remainder. You have to decide how far you want to carry out the answer and what rules you are going to use for rounding off. You may also have the binary equivalent of a decimal point to consider.

One method of dividing is by successive subtractions. For example, to divide A by B, count how many times you can subtract B from A before the remainder is 0 or negative. If the remainder goes to 0, the value of the count is the exact answer. If the remainder becomes negative that means you went one step too far. Reduce the count by 1, add B back to A, and test the remainder to see how to round off. This will give you a whole number answer. It will also locate the binary equivalent of a decimal point if you want to carry the answer further.

Alternatively, you can add B successively, counting the number of times, until the sum equals or exceeds A. Equal to A means the answer is exact, and exceeds A means you went one step too far.

One very limited type of division is very easily done. If you are dividing by 2,4,8,16, etc, all you have to do is rotate the number to the right the appropriate number of times. However, you must be careful of rotating a 1 through the carry bit and having it appear in the most significant bit of the number. To avoid this be sure the carry bit is cleared to 0 before each rotate. A check of the carry bit after the last rotate can be used for round off determination. If it is a 1, round off the answer to the next higher number.

Interfacing to a Nonbinary World

As mentioned earlier, the world is decimal oriented and we should be able to talk to the computer with decimal digits, and indeed our terminals have decimal keys and decimal outputs. Our terminals, however, talk to our computers in yet another language, usually ASCII.

Notice the codes for the decimal ASCII digits 0 through 9 as seen in any table of ASCII codes. If you consider only the least significant four bits you have the binary

value of the associated decimal digit. There are two ways of extracting the binary value from the ASCII code. You can first load the ASCII character into the accumulator and then subtract 0110000 or mask it by "anding" the accumulator with 1111. So now you have converted one decimal digit into its binary equivalent. Unfortunately, very often you need more than one decimal digit to make the number. The simplest way to handle this is to use a fixed format. This means you have to enter leading 0s so a number will always have the same number of digits and the order in which they are entered defines their decimal rank (units, tens, hundreds, etc). Since each digit is now known it may be placed in a location assigned to its rank after it has been converted to binary. You now have a fragmented number which is not usable for arithmetic. It must first be made into a single binary number.

As an example, let's assume we are using a 3 digit fixed format and the decimal number we are entering is 27. First we type a 0 for the hundreds digit which is stored in a location, HUNS, as a binary 0, using one of the ASCII to binary conversion techniques. Then we type a 2 and a 7 which are converted to binary and stored in locations TENS and UNITS, respectively. Now to make it all one big binary number.

First test the hundreds digit. It is 0 in this case, so jump to testing the tens digit. It is not 0, so multiply the binary equivalent of 10 (1010) by the contents of the TENS location, in this case 2, and the contents of the UNITS location, and store it in the answer location. In the more general case what you do is multiply each decimal digit by the binary equivalent of its rank and add up all the partial products. Finally, you have to convert the binary number into whatever notation you are using for doing arithmetic.

After the arithmetic, or whatever, is completed, the next step is to output it in recognizable form (ie: ASCII to the output device). The procedure is essentially a reverse of the input steps.

First convert the binary number into its fragmented equivalent. Using the above example, first subtract the binary equivalent of decimal 100 (1100100). In this case, the first attempt produces a negative answer, which means there are zero hundreds in the number and the HUNS location should be set to 0. Next try subtracting binary 10s until the result goes negative, then add one

158

BYTE January 1978

back. The number of times you can subtract 10s before it goes negative is equal to the value of the 10's digit. The remainder is the value of the units digit. These digits may now be converted to ASCII by simply adding 0110000 to each digit location. The final step is to transfer each digit (now in ASCII) to the output device (TTY or CRT terminal, etc) in the proper order.

It is possible to write a program that will work under a variable format for input and output to eliminate the need for leading 0s. This is more complicated since you have to count how many individual entries of digits are made and then arrange them in reverse order knowing the last entry is the units digit regardless of how many digits there are.

One last point: always verify each arithmetic program you write, either in the computer (best way) or write it out step by step by hand. Use extreme values for numbers, like 0, 1, and the maximum number your program is supposed to work with. Finally, select a number at random and try it. If they all work correctly, chances are very good your program is totally correct."

(Simiii

9

V Whether for troubleshooting or analysis W at_ some point you will need our EX

S- TENDER BOARD W/LOGIC PROBE ($35). Ours offers a built-in logic probe (hi, lo, & and pulse), special edge connector that J allows clip lead probing, jumper links in all supply lines, a non-skid needlepoint probe . .. plus quality parts and a realistic price.

ilied Servicing!

S\\MmMMtmm1tMWm\mt ther control purposes.

Simplified ContiFoT;

The OPTO-ISOLATOR/RELAY BOARD ($117) is |k a natural for controlling audio systems, model S trains, robot devices . . . more uses are dis- fc covered daily, as described in our applications k^ notes. 8 reed relays respond to an 8 bit word J| from your computer; 8 opto-isolators accept fc an 8 bit word from the outside world and send J^ il back to your machine for handshaking or fur

X?

8COMING---Heath H-8& Incompatible versions I ^

MULLEN COMPUTER R(->APn<T\

!

BOX 6214, HAYWARD, CA 94545

"Products that make your computer useful"

CAVi J

•a 8

All kits ore S-100 Altair/IMSAI compatible. Avoilobie by moil (shipped postpaid in the USA from slock; Californians add soles tox) or ot many fine computet stores. Deolet inquires invited.

J

SELECTRIC TERMINAL

SUPER SALE

JUST

$675

• 14.8 cps print speed

• 13 inch line length

• 10 or 12 characters/inch

• 6 or 8 lines/inch

• IBM 2740-1, 2 line control

• IBM 2740 keyboard/printer

This deal can't be beat. Nol only do you gel a quality terminal for a fraction of the cost of anything else on the market, but yoj also gel typewriter quality Can be interfaced to a mini- or microcomputer or used with IBM computers These terminals are worth the price ol a typewriter alone Our warranty is limited to replacing any defective parts loi a period of 90 days following receipt of equipment interchangeable print element, of course Includes attractive desk Optional documentation package S25 00

CALL (313) 994-3200 TO RESERVE

MATROX VIDEO RAMS

NCE/Compumart offers you the leader in CRT display controllers. Matrox Video Rams are complete with memory and require no processor time for screen refresh. Whether your application is alphanumeric, graphic or both, Matrox can provide a system to meet your needs.

MTX 816 Module (Upper Case only) Composite video output in 8 lines of 16 chars. MTX 1632 Module (Upper and Lower Case) 16x32 display includes blink option MTX 1632SL Module (Great with 256**2) Slave sync allows text superposition MTX 2480 Circuit Board 24 x 80 requires high-persistence phosphor (P39) MTX 256"*2 Circuit Board 256 x 256 array graphic (multiples provide color) Matrox ALT-2480 Alpha-Numeric VRAM S-1DD, 24 lines ot 80 char, (needs P39) Matrox ALT-256**2 S-100, Video Graphics Board Displays 256 x 256 array

.._HI 131 I

Wlir l |l I

"Tffrin Will •Mini

SORENSEN POWER SUPPLY

$31 .50 SINGLE PS. D $60.00 DOUBLE RS. D

• precise dc output • 12v dc (nominal), 2 amp, 25 watt ■ 9-18 extended range • highly regulated-1.2mv • accepts (ram 105-125V • accepts from 50-400 Hz, single phase ■ very low output ripple

This super quality power supply, from Raytheon, uses silicon transistors which give the unit a wide ambient-temperature operating range. Also, as a maintenance feature, they reduce the number ot components. An excellent instruction manual is provided which includes schematics, parts list and troubleshooting information.

Name

Address.

City State Zip

Charge my BAC/VIS/

Card #

Signature

M/C_

Interbank #_ Exp. Date

□ Please send me info on the new Commodore PET 2001 computer

Total for goods checked above

Please add 4% for Shipping/Handling + 4% tax if Mich, resident.

Total Amount

Limited 90-day Warranty

Return non-working merchandise within 90 days for replacement or refund. Kits are warranted to be complete with working components. All items subject to prior sale.

NCE/CompuMart

1250 North Main Street, Department BY18

P.O. Box 8610 Ann Arbor, Michigan 48107

994-4445

Circle 72 on inquiry card.

Circle 75 on inquiry card.

BYTE January 1978 159

The Prices? Low!

The Stock? On Hand!

The Deadline For

Orders?

The Company? Computer Enterprises!

Lear Siegler ADM-3A Kit IMSAI 8080 with 22 Slots Kit North Star Micro Disk

System Kit Polymorphic VII / 64 Kit Comp. Enterp. Extender

Board with connector Comp. Enterp. Cable A

for IMSAI Seals 8K 250ns RAM

Assmbld. Vector Graphic 8K 450ns

RAM Assmbld. Vector Graphic PROM/

RAM Kit George Risk ASC II

Keyboard Kit Netronic's ELF II RCA

COSMAC Microcomputer

wired & tested

Credit

Card Price

$764

$614

Cash Price $738 $590

$623 $182

$599 $175

$ 13

$ 12

$ 14

$ 13

$238

$229

$234

$225

$ 83

$ 80

$ 52

$ 50

$146 $140

ORDER NOW FOR THESE EXCITING NEW PRODUCTS!

North Star Horizon 1 Computer System $1497 $1439

North Star Horizon 2

Computer System IMSAI VIO-B Kit IMSAI VIO-C Kit

$1871 $1799 $ 234 $ 225 $ 297 $ 286

Ask For Your FREE Computer Enterprises Catalog Today!

Shipping charges: $10 per CPU on larger units; 81.50 per kit. $2.00 min. per order.

Delivery is stock to 30 days on most items. Shipment is immediate for payment by cashier's check, money order or charge card. Allow 3 weeks for personal checks to clear. N.Y. State residents add approp. sales tax. Availability, prices and specs may change without notice.

Operating Hours;

M-W10-5E.S.T.

Th-F10-9E.S.T. Closed Sat. &Sun.

Write or Call

computer emerpri/es™

P.O. Box 71 Fayetteville, N.Y. 13066 Phone (315) 637-6208 Today!

Gccfc Reviews

Standard Dictionary of Computers and Information Processing, revised 2nd edition by Martin H Weik, Hayden Book Company Inc, Rochelle Park NJ, 7977, 400 pp, 6 by 9 inch, hardbound, $16.95.

Reviewing a dictionary is usually a simple straightforward task. How much can one really say about a book of definitions? Aside from stating whether or not the dictionary gets the job done, how else does one discuss its attributes? Normally, I would agree to let the matter drop with a few quick sentences. This time, however, I don't feel that that kind of treatment is really adequate.

In Weik's dictionary we have the most comprehensive collection of computer software and hardware terms I have seen to date in one volume. While not as detailed as some books have tried to be, Weik's book still manages to give clear, concise explanations of the items included. This is accomplished by liberal use of cross-indexing and by the supportive use of excellent illustrations and examples. Particularly impressive are the electronic diagrams which even a novice could understand.

In addition to the over 10,000 terms included from the first edition of the dictionary, some 2500 terms from areas such as microprocessors, minicomputers, computer networks, modems, coding schemes, data base theory, and information theory have been added. All of the original definitions have been reviewed to ensure that they are up to date as well.

This book is not without its flaws. The indexing is quite often confusing, eg: for "bus driver" one is told to look under "driver, bus." But at least the user is directed by the text, which is more than can be said for a lot of dictionaries which never give a clue as to where to look for the definitions of a phrase. There are some dubious inclusions, such as the definition of "machine," as well as many omissions, particularly in the area of microcomputer hardware.

However, this book is good for quick, simple, accurate definitions of a lot of useful terms. No reference shelf would be complete without it.

Blaise Liffick, Editor"

160

BYTE January 1978

Circle 23 on inquiry card.

Mounting a Paper Tape Reader

Jack Bryant

Mathematics Department Texas A&M University College Station TX 77843

Several months ago I ordered a RAECO paper tape reader. It arrived (a near record) 12 days later. Its very complete documentation, seven mimeographed pages, included a mounting template and circuit diagram. For $32.50 postpaid, it has to be a "best buy" among paper tape readers. But where could I mount it? Some unused panel space on my SwTPC 6800 processor's box seemed ideal.

The RAECO documentation suggests a 100 W light bulb 1 foot above the reader for illumination. This seemed a little extreme, and while looking around the junk box for something less blinding, I ran across a metal snuff box and a brass cable clamp. I could vaguely recall having seen some automobile lights with a linear filament. Sure enough, the Eveready #211 (two bulbs for $.79 at an auto parts outlet) fit exactly. Photo 1 should tell most of the story.

I removed the front panel from the computer (this is for a SwTPC 6800 system) and used the template furnished by RAECO and a sabre saw to cut a hole for the reader. I soldered the brass clamp to the lid of the snuff box and drilled three holes through the lid and panel. I then used 1/8 inch aluminum pop rivets in two of the holes to fasten the lid to the panel. My cable clamp was tight enough to mount the light bulb so I didn't have to use any other fasteners. I soldered a wire to the light bulb end sticking out and ran it through the one remaining hole. (The tip of the bulb base is the only place which will take ordinary solder.) Figure 1 shows two possible alternatives for a lamp power source; I used alternative a. Chassis ground furnishes the return. Since the light bulb is being run on (at most) 4 V, it should last forever.

For the cover, I drilled a few 1/4 inch holes in the snuff box top with a broom handle used to back up the top during drilling. (Mind your fingers, it tends to slip away easily.) I used a file to smooth out the rough spots, and then finished everything off with a coat of black paint.

The RAECO optical paper tape reader Model TPR-1 is available from RAECO, POB 14, Readville MA 02137."

1

3

X

3>

(^

-x

CHASSIS GROUND

a: Plain.

<s

'%■

CHASSIS GROUND

Photo 1: The RAECO tape reader, installed in an SwTPC 6800 system with an automobile lamp and homebrew enclosure above the sensors.

b: Fancy; Di and D2 can be JN400I, R 20 ohms, 10 W.

Figure 7: Lamp (L) is an Eveready #211 12 V automobile dome lamp. Tl is the SwTPC 6800 power transformer. I used the 7.25 V winding.

BYTE January 1978

161

Notes on Bringing up a Microcomputer

Sol Libes

995 Chimney Ridge

Springfield NJ 07081

About the Author

Sol Libes is an enthusiastic microcomputer user, president of the Amateur Computer Group of New Jersey, a teacher at Union County Technical institute in New Jersey, and author of several books on digital logic and microcomputers.

The following is my recommended procedure to follow when building a microcomputer from a chip set. This procedure makes the assumption that you've already acquired or drawn up a complete set of plans from which to wire your computer. Many people follow this route, as opposed to the kit route, particularly since manufacturers, such as Intel, have sold chip sets to schools and students at special reduced prices. Designing then building a computer is a great way to learn about the hardware required in microprocessor systems. However, these tips can also be used in troubleshooting kits. Getting a homebrew computer up and running and debugged requires this sort of step by step technique, so that elimination of errors is made as easy as possible through checkout as each new element is introduced.

Start by wiring up the microprocessor chip itself. Connect the power supply lines to the integrated circuit socket. Without the microprocessor chip in the socket, turn on power, check the voltages at the proper terminals of the socket and verify that they are correct. This is important since microprocessors (and other integrated circuits) are not very tolerant of incorrect supply voltages.

Next, connect up the clock circuit and install the microprocessor itself. Turn on power and check the clock signal at the pins of the microprocessor socket with an oscilloscope. The scope should be a DC coupled unit with good frequency response; 20 MHz

or better is desirable but in a pinch a 10 MHz scope can be used. Check that the correct phase relationships exist between the clock pulses. For example, with the 8080 microprocessor the pulse widths and spacing are quite critical, and must be within the specifications on the manufacturer's data sheet or strange things can happen. Be sure the clock frequency is correct. An oscilloscope can typically measure this to about 5% accuracy, with higher accuracy possible if you calibrate against a reference frequency or use a good frequency meter instead. In systems utilizing programmable timers, incorrect clock frequency can cause interface problems.

If everything checks out so far, then it is time to let the microprocessor chip execute an instruction. Still without any memory connected, the microprocessor can execute an instruction.

For example, on the 8080, we can tie the data lines low causing the execution of a NOP (00) instruction. An even better procedure is to let the data and memory address lines float (nothing connected). This will cause the RST7 (FF) instruction to be found on the data lines. This restart instruction will execute a call to a subroutine, an operation which pushes information onto the stack (which does not exist at this time). Since no memory is present, and the instruction does not. change, an "infinite loop" of RST7 instructions results. The net result is that the address lines of the processor will scan

162

BYTE lanuary 1978

through all the addresses in memory as return addresses are continually pushed onto the stack. The 8080 processor will continue cycling through all the memory address locations, even though no memory is connected. Similar test conditions can be established with other microprocessors as well.

Now, with the memory still disconnected, connect an oscilloscope to each address line and check that it is cycling through the 64 K addresses of a 16 bit address space. You should see a count in binary fashion as shown in figure 1.

If any of the adjacent memory lines are shorted together, a very common problem, you will see the lines changing together. In this case, check carefully for solder bridges (if your processor was built from a kit) or shorts (if hand wired) between adjacent memory address lines. If there is no signal on any line, check for disconnections. Be sure that the addressing is sequencing in the correct binary order before proceeding further, for the processor must produce a valid address sequence under dummy instruction conditions if it is to do useful processing later.

If you use the NOP (no operation) instruction the same pattern should be observed; the use of a NOP instruction is required in most processors for this test.

In many processor designs, a set of buffer integrated circuits is used to isolate the external address and data buses from the processor in order to provide a higher power drive capability. If your processor design employs such buffering circuits, the next step is to wire up the sockets for these buffers and associated control logic. Then you should install the buffering integrated circuits after checking all power wiring. Then the tests performed for the processor alone can be repeated, looking this time at the outputs of the address buffers, and using the data bus buffers' system side to present the RST7 (8080) or NOP instruction to the processor side of the data bus buffers.

If everything is correct to this point, then connect up the memory. Wiring up a memory board is done in a manner quite similar to that used in getting the processor itself going. The first step is to complete all wiring and check out power voltages at the memory integrated circuit sockets. Then plug the board into the system and repeat the proc

essor address test described previously to verify that the address lines at the typical memory socket and at inputs to decoding logic are functional. The low order lines of a memory address typically go directly to memory integrated circuits.

After the directly connected address lines are verified in the system, turn off power and plug in the integrated circuits for address decoding of the high order address lines to the memory board. With the system powered up again, repeating the NOP loop test should show decoding of the memory board select for some percentage of the time it takes to cycle through all addresses, and decoding of various chip selects for a smaller percentage of time. Thus if the memory board is an 8 K byte board with 4 K bit static chips, board select should be decoded 1/8 of the time (12.5 percent duty cycle) and chip select for each 4 K byte segment should be decoded 1/16 of the time (6.25 percent duty cycle) as the processor cycles through all possible addresses.

Once decoding of the memory board has been verified, remove power again, and install all the memory integrated circuits of

1_

l_

Figure I: Much of the behavior of a system can be checked out simply by looking at the address bus: the lines which contain the processor's current requests to memory address space. The simplest initial test of a processor is some form of null operation loop which continuously scans all possible addresses in memory address space. When observed with an oscilloscope, such a loop (see text) will produce a regular set of square waves with the lowest frequency on the high order address bit and the highest frequency on the low order address bit. Here we see the expected scope display as the probe is applied (top to bottom) to address bits A q thru A4.

BYTE January 1978

163

the system as well as memory board output bus drivers.

At this point, we make the assumption that your processor design includes some method of setting the contents of memory. This might be a set of toggle switches which can take over the address and data bus from the processor in order to load memory. It might also be use of a read only memory monitor program which you write, thoroughly desk debug, and program into read only memory circuits. Whatever the method is, the details necessary for loading memory manually must be wired up and tested next. Now try entering a very short program which will put the processor in a tight loop. The shortest and simplest loop possible is a single jump instruction, repeatedly jumping to itself. For example, on the 8080, if the program should be located at hexadecimal memory address 0000 it would be as follows:

0000 C3 00 00 JMPO0O0

When this program is executing, check the memory address lines and data lines with the scope. You will observe the memory address lines counting only the three addresses and at the first address time hexadecimal C3 should be observed on the data bus lines. At all other times the data bus should be hexadecimal 00.

If things look good so far, then wire up an output port (00 is a good one for an 8080). As with the other segments of the design, the wiring of the output port sockets comes first, then power pins are tested thoroughly. Finally, the appropriate integrated circuits are inserted into the sockets of the 10 port logic and we can proceed to check it out. In this example, a simple latched 8 bit output port is used for purposes of illustration. Write a minimum program to check its operation. The following little program can be used on the 8080:

OUT 00 JMPO0 0O

This very tight loop will cause a pulse to be generated on the "out" control line. Check for the presence of this pulse. Check the memory address lines for the correct counting pattern and the data lines for the proper data patterns. This should be done with the scope synchronized by the out pulse which occurs once each time around the loop. With the scope synchronized in this manner, it is possible to check the memory address lines and data lines to be sure that the correct logic levels are occurring at the proper times in the execution loop.

0000 D3 00 0002 C3 00 00

If operation is not correct check the data lines for shorts or opens. Shorts usually occur between adjacent lines which means that identical bit patterns will be observed on adjacent lines. Opens lead to missing bit patterns on the open lines.

Now check the operation of the output port with the following 8080 program loop:

0000 3C

0001 D3 00 0003 C3 00 00

INRA OUT 00 IMP 0000

This will cause a binary count bit pattern to appear on the data lines of 8080 output port 00. These lines should be checked with the scope. Again check for shorts between adjacent lines and opens.

If operation of longer programs is not correct, but the previous short loops operated correctly, then check for swapped high order memory address lines. This will usually cause unexpected jumps in the execution of the program. Or if the processor seems to be executing every other instruction, check for an open address line.

A final thing that you should do after you get the system running is to look at the response times on the bus. Check to see that the data coming back to the memory is within the proper timing relationships as found in the manufacturer's specifications. Check to be sure that the data is stable before the microprocessor strobe occurs. Problems may be caused by slow memory chips and can lead to unexpected random errors in execution of a program. Such specifications should be checked under "worse case" conditions (such as at elevated temperatures) so that when normally running the system timing errors' do not occur with any significant probability.

These steps are typical of the methodical process of checking out (and building) a new computer system. The considerations discussed here are typical, but by no means cover all the possible systems and all possible conditions to check out. Once you get to the point of executing programs, most of the crucial steps have been successfully accomplished.

A key point to remember is that digital hardware only does what you tell it to do by way of design and wiring. Finding bugs in new hardware, like finding bugs in programs, is a process of setting up key conditions of the system then checking actual responses against those to be expected if the system were working perfectly. It requires a willingness to learn to understand the expected modes of operation, plus a bit of ingenuity."

164

BYTE January 1978

Technical Fcpum

A Note on Advances in Technology

Paul Robinson 932 Olive Av Coronado CA 92118

A Note on Advances in Technology

Since it seems that megaword computers are of high interest, readers might be interested an article in the May Scientific American, page 36, about "Amorphous Semiconductors" for memory applications. This development offers higher density, lower complexity, lower costs (because of manufacturing method) and higher reliability than any of the recently marketed magnetic bubble memory systems, plus the cycle times are far below anything in common use, 50 to 100 ns and even lower times anticipated in the near future. After reading about "Amorphous Semiconductors" it is very apparent that they are going to play a major roll in changing the world of computing on a scale matched only by that of the innovation of LSI chips a few years ago. I'll be watching BYTE for further developments in this line.

See also a recent Scientific American article on the physics of synchrotron radiation, and the possible effect of small X-ray synchrotron technology on the fabrication of ordinary crystalline integrated circuits with X-ray lithography. The article "Uses of Synchrotron Radiation" was in June 1977 Scientific American, written by Ednor M Rowe and John H Weaver. The reference to X-ray lithography is found on page 41 and begins "Further afield, synchrotron radiation promises to transform the technology employed in making integrated circuits. . ."■

DATALYZER ... a 24 channel Logic Analyzer for yourSlOO 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 logic system. 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 Ma typical input loading.)

M^l

lllliip

Displays in Binary

Displays in Hex

Display of disassembled program flow.

The DATALYZER

Designed to plug easily into your S-100 Bus, the DATALYZER is a complete system — for only S495. Display of disassembled program flow is a standard feature, not an extra. And the low price includes 30 logic probes, so you can hook up immediately, without additional expense.

The DATALYZER is available in kit form ($495), and as a fully assembled device on two PCB's ($595). Operators' manual $7.50. A substantial warranty, and the Databyte, Inc. commitment to service make the DATALYZER a worthwhile investment.

Databyte, Inc.

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

Circle 88 on inquiry card.

BYTE January 1978 165

TOUCH TONE ENCODER KIT

Simplicity itself to complete. No other parts required, no crystal rjjmired. The back of the touch pad has etched & drilled P»||oard and you solder the encoder chip to it. Add your ovwlpnall speaker & 9 volt battery and you are done. A touch of the pad produces the proper tone signal from the speaker. We furnish schematic and instructions.

SP-149-B $12.9.5

WIRE WRAP WIRE

TEFZEL blue #30 Reg. price $13.28/100 ft. Our price 100 ft $2.00; 500 ft $7.50.

MULTI COLORED SPECTRA WIRE

Footage 8Cond. #24

22 22 24 22

savings as

12

14 24 29

Great

book prices. All fresh & new

10'

$2.50 3.00 3.50 5.00 7.50

these

50' 9.00 11.00 13.00 20.00 28.00

100' 15.00 18.00 21.00 30.00 45.00

are about 1 /4

TOUCHTONE ENCODER CHIP

Compatible with Bell system, no crystal required. Ideal for repeaters & w/specs. $6.00

LAMBDA POWER SUPPLIES

LM-D-12-OVP 12 volts DC 10 amp S60, LV-EE 5-OVP 5 VDC 74 Amp S75.00

VIATRON CASSETTE DECKS

The computer cassette deck alone $35. Set of Control boards for above $40.

VIDEO DISPLAY from Viatron systems. Accepts composite video signals. 9 inch transistorized CCTV black & white CRT monitor. Ready to go, checked out. 115 volt AC 60 cycle. With circuit diagram.

$75.00

FAST CHARGE AA NICADS $1.25 each

IB

IR NIGHT VIEWER $199.00

Custom made, complete with light source & viewer in one piece. Comes with carrying strap. Ready to operate with 6 volt lantern battery. Guaranteed by the manufacturer. See in total darkness. Great for scientists, viewing nocturnal animals & birds, criminal investigation . . . observe without being observed, and a ball for just plain snooping!!!! Sorry to say but no shipments to Calif, (lens may vary slightly from pic)

SPL-21 $199.00

^yfieMmo,

Please add shipping cost on above. Minimum order $ 10

FREE CATALOG NOW READY # SP-10 P.O. Box 62, E. Lynn, Massachusetts 01904

166 BYTE January 1978

Circle 60 on inquiry card.

Career Opportunities with vigorous New Firm

Join this "start-up" operation on the SAN FRANCISCO PENINSULA manufacturing low cost computer equipment...

I SENIOR TECH WRITER

Lead responsibility for hardware and software publications for a small business.

i APPLICATIONS PROGRAMMERS

Familiar with Basic and COBOL. Exp. programming business-oriented packages.

Attractive salary structure, complete benefits. Contact DURANGO SYSTEMS, 10101 Bubb Road, Cupertino, CA 95104. (4081 996-1001.

REMEMBER THE NAME

DURANGO SYSTEMS INC.

WE'REWORTH YOURTIME... WECOULDBE YOUR FUTURE!

computer • depot inc.

^ (Credit Cards Accepted)

3515W.70th St., Mpls., MN 55435

• (612)927-5601

• SOFTWARE GOT YOU STOPPED?

• If you have a single Northstar Disk, we can offer you fully-tested and documented packages for the fol

• lowing:

• General Ledger with

Payroll $75.00

Mailing List with Coded

• Sort, Zip Code Sort, and

Last Name Sort $75.00

Inventory Control $75.00

Other packages soon 11 Write or call

• for details. Dealer inquiries encouraged.

• Name

• Address

• Part No. Qty. Amt. Enclosed

Computer Headquarters for

Houston & Austin

Get honest help from our experienced expert personnel in selecting kit or assembled equipment and applications programs.

See us for Cromemco, Vector Graphics, TEI, TDL, IMSAI, PerSci, Soroc, LearSiegler, Poly 88, Diablo, TI-810,andAJ-841.

Hours: 12-8:30 p.m., Mon.-Sat.

MOS

Microcomputer Origin Store Div. of CPU Corporation Houston: 1853 Richmond. 527-8008 Austin: (512) 476-8040

Circle 36 on inquiry card.

Circle 22 on inquiry card.

Circle.61 on inquiry card.

TYSON'S CORNER. VIRGINIA (WASHINGTON. DC AREA)

THE

COMPUTER SYSTEMS

STORE "Specializing in Systems"

FEATURING:

Lear Siegler

DEC

SWTPC

Seals

Digital Group

TDL

Books — Magazines

COMPUTERS FOR HOME. SCHOOL. & SMALL BUSINESS Our staff will help you select from the best of each manufacturer to complete ihe system best suited loyour needs.

SPECIAL: LEAR-SIEGLER ADM 3A

Processor Technology

Poly Morphic

Diablo

E& L

Veclc Graphics

Apple

CROMEMCO

CSS

CDfTlPUTEP SVSTEmS STORE

1984 CHAIN BRIDGE ROAD. McLEAN, VA. 22101 TELEPHONE (703) 821-8333

OPENING SOON ALEXANDRIA,VA •NORFOLK.VA • BALTIMORE.MD • ORLANDO FLA

8K EPROM CARD

16 MM5204Q EPROM (512 x 8) SS50 BUS compatible (SWTPC) Double sided PC board ALL ADDRESS & DATA lines are

BUFFERED Jumper or switch selectable to

any 8K location BOARD AND EDGE CONNECTOR

$26.00 Kits not available

IN DESIGN

COSMAC 1802 Cards for SS50 BUS Mother boards for COSMAC 1802 5204 EPROM Programmer Cards (SWTPC Compatible)

DIGITAL SERVICE & DESIGN

P. O. Box 741

Newark, Ohio 43055

Order direct by check, VISA or MASTER CHARGE. Ohio residents add 472% sales tax.

COMPUTER MART OF

NEW HAMPSHIRE

• •

DEALERS FOR:

aim 13^ W®$\

\f J] AND MANY MORE

170 MAIN STREET NASHUA (603) 883-2386

Circle 29 on inquiry card.

Circle 34 on inquiry card.

Circle 26 on inquiry card.

a

%

re you in the process of designing a turn-key computer system?

o you have problems interfacing the hardware?

Then you need the hardware specialist COMPUTER MACHINE SERVICE.

CMS is in the business of assembling and repairing of microcomputers and equipment.

CMS is not in the business to self computer equip

Our primary objective is to provide assembly service of the highest quality as well as prime quality repair service on microcomputers and data communications equipment.

For information call: 213-328-9740 or 213-328-9760

Or write: Computer Machine Service 2909 Oregon Court Torrance, CA 90503

FOR ALL YOUR HARDWARE PROBLEMS CMS IS THE ONE TO CALL.

ThE

i COMPUTER

HARDWARE

STORE JMC.

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 Street Alexandria, Virginia Richmond, Virginia (703)548-8085 (804)780-0348

CALIFORNIA

APPLIED TECHNOLOGY

32K-MEM0RY CARD-S410 S-100 STATIC KIT

2708E-PR0M-S14

2706 PR0GRAMHED-S20

WITH 8080 SYSTEMS MONITOR

80 MAJOR COMPUTER PRODUCT LINES AND AN EXHAUSTIVE LINE OF ELECTRONIC COMPONENTS

COMPUTERS

HARDWARE AND SOFTWARE CUSTOM HARDWARE AND SOFTWARE RESEARCH AND DEVELOPMENT

P.O. BOX 1239 TWENTYNINE PALMS, CA. 714-367-6996

92277

FREE BASIC PROGRAM AND CATALOG 'ALEX IS COMING'

Circle 25 on inquiry card.

Circle 24 on inquiry card.

Circle 12 on inquiry card.

What's New?

MICROPROCESSORS

The Motorola 6809: Some Rumors from Austin

Nates by Carl Helmers

For some time' now, it has been general knowledge that Motorola is working on a new design for a microprocessor to be made available at some unspecified time in 1978. Recently, I elicited some advance information that suggests some of the major features of the new Motorola 6809 design: information well worth sharing with readers.

The new Motorola 6809 is going to be an evolutionary design improvement creating a major new processor architecture that will be a joy for both low level programmers and designers of systems programming. One of the major enhancements is the increased ability to do 16 bit arithmetic and indexed addressing relative to the older 6800 design. A rundown of the new architecture reveals the following features:

• The A and B registers of the 6809 act like the separate accumulators of the 6800, but can also be concatenated A:B to become the 16 bit "D" accumulator (double accumulator). This D accumulator can be used for the usual 16 bit arithmetic operations of addition, subtraction, load, store, and comparison.

• Expansion of the indexing capabilities with the inclusion of a second "Y" index register 16 bits wide, thus allowing the processor to maintain two 16 bit index registers. As anyone using the 6800 can attest, a major portion of the code often boils down to loads and stores of the index register in order to use memory to emulate existence of two index registers. This technique will not be needed with the 6809.

• Addition of one more 16 bit stack pointer, the "user stack," which can be used together with the existing systems stack to enhance data management techniques.

• And of course, with a wealth of 16 bit pointers in the processor, the 6809 design implements all the register to register transfer operations and register to memory (memory to register) transfers one might expect, including stack operations.

• With all this machine state data sitting around in the processor, what happens when an interrupt occurs? People have occasionally complained about the time taken by the complete state save done by the 6800 in response to an interrupt; the wealth of data on the 6809 compounds this timing

problem. Motorola's answer with the 6809 is to create a new additional hardware interrupt input line, the "fast interrupt" line, which accomplishes the vectoring of the interrupt while saving only the return address and the condition codes. (When such fast interrupts are used, it is of course the programmer's responsibility to take care of preservation of any registers or machine state information used in the interrupt handling routine.)

Care and Attention to Addressing

With all the 16 bit pointers present in the 6809 design, one might ask: "Why?" The basic reason for incorporating such pointers in the design is to achieve a number of benefits in the process of calculating addresses. Since in any large system, a good portion of the tricky problems of software design concern allocating and managing memory address space resources, this makes the 6809 a very attractive high level language machine. Features concerned with address calculation include:

• Extension of program counter relative references beyond the concept of relative branches (and long relative branches) to include data references using the program counter as an index or base register.

• Addition of a fast multiplication (8 bit operands, 16 bit unsigned product) operation to enhance calculation of array offsets in high level language code.

• Existence of the user stack concept for data management independent of program flow management at run time.

• A full complement of indexed addressing modes, with 0, 5, 8, or 16 bit offsets, allowing indirecting, "auto increment" or "auto decrement" indexed references with increments of 1 or 2, from either index register or either stack pointer.

Miscellaneous Hardware Features

All this attention to the software orientation of the 6809 architecture by the engineers at Motorola is not without equivalent attention to the hardware details. Useful new hardware features include an on chip clock design which requires simply an external crystal to set frequency, a slow memory wait line which allows for long memory access cycles (or contention in multiprocessor systems), and the introduction of an

instruction fetch synchronization signal that can be used to advantage by hardware hackers who want to know when instruction is begun for reasons as varied as the number of systems applications for such a machine.

Anticipations. . .

This information on the Motorola 6809 is a substantial rumor about current information on the design; further details must await final design, which is currently in progress. But from what I've heard to date, it looks like the 6809 is well on its way to becoming a software oriented "dream machine" among microprocessors. Readers can expect more definitive information on this processor toward the middle or end of 1978 when Motorola releases more official information. Perhaps we'll see some personal computer products with the 6809 as their central processors toward the first part of 1979. Designers of new products in that time frame would be well advised to take a look at whatever preliminary information Motorola can be cajoled to release about this new product. ■

MB /W4NUAL

EB1

Electronic Product Associates, Inc.

6800 Based Self-Study Course

Designed for use with the Micro-68a microcomputer trainer, this 90 page microprocessor self-study course teaches concepts through simple exercises involving actual use of the computer. The Micro-68 Lab Manual includes 13 chapters, each one a complete lesson on topics such as input output, interrupts and-the basic instruction set. The manual is $5, and the Micro-68a computer is $544.50 complete with keyboard, power supply and cabinet, from Electronic Product Associates Inc, 1157 Vega St, San Diego CA 921 10, (714) 276-891 \.m

Circle 614 on inquiry card.

168

BYTE January 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

Stand alone 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, down

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 parity All connections go to a 44 pin gold plated edge connector Board only $12.00, with parts $35.00

6 RF MODULATOR Part no. 107

Converts video to AM modulated RF, Channels 2 or 3 Power required is 12 volts AC C. T., or +5 volts DC Board 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 cost recoder at 625 baud rate, and direct connections for inputs and outputs to a digital recorder at any baud rate

S-100 buss compa tible

Conies 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 S

volts at 1 amp Board has filters, rectifiers, and regulators Power required is 8 volts AC at 3 amps., and 24 volts AC C.T.

at 1.5 amps Board only $12.50

TO ORDER

Mention part number and description. For parts kits add "A" to part number. Shipping paid for orders accompanied by check, money order, or Master Charge, BankAmericard, or VISA number 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 with all products. Dealer inquiries invited.

ELECTRONIC SYSTEMS

P.O. Box 212, Burlingame, CA 94010

(408) 374-5984

Circle 41 on inquiry card.

BYTE January 1978

169

What's New?

SYSTEMS

16 Bit Computer Features National PACE

A Personal Computer from Olivetti

Complete Disk Based System for $2599

The Olivetti P6060 Personal Minicomputer features built-in extended BASIC, a printer with plotting capability and a wide variety of interfacing options for peripherals. The system includes up to 80 K bytes of programmable memory accommodating both the operating system and a user working file (8 K to 48 K bytes), single or dual drive floppy disk, 32 character upper and lower case ASCII display, 80 column, 80 character per second thermal printer, and a keyboard with special function keys and 1 key abbreviations for most BASIC keywords. The printer features graphics supported by system software for scaling, framing, offsetting, axis drawing and alphanumeric labeling. The extended BASIC features random file handling and matrix operations. Two standard character serial IO ports, an RS232 interface, and a direct memory access (DMA) channel are available for interfacing the P6060 to a wide variety of devices. A basic configuration with 8 K user memory and a single floppy disk is priced at $7950, while a system with 16 K user memory and dual drive floppy costs $10,000. For more information contact Olivetti Corporaton of America, Personal Minicomputers, 500 Park Av, New York NY 10022, (212) 371-5500."

Circle 570 on inciuiry card.

The complete OSI Challenger system includes a 6502 processor, 16 K of programmable memory, a system monitor and disk bootstrap in ROM, a floppy disk based on the GS1 110 drive, and a stand alone CRT terminal with a Sanyo video monitor. Software includes a disk operating system, a disk based assembler and editor, a debugger with breakpoint, high speed dump and disassembly capabilities, and an 8 K disk based BASIC with multidimensional arrays, strings, a full complement of mathematical functions, and machine language access features. The complete system is priced at $2,599, or $2,099 without the CRT terminal and monitor. Options include a dual drive floppy disk for $1,590, and 13 accessory boards which provide up to 192 K bytes of programmable memory, 16 K bytes of EROM, digital to analog and analog to digital conversion, parallel and serial IO, cassette interface, video graphics display, and multiprocessing capabilities. Also offered are two dot matrix printers by OKI Data, the CP110 which prints 80 character lines at 65 lines per minute for $1,500, and the Model 22 which prints 132 character lines at 125 lines per minute with upper and lower case and form size control for $2,900. The Challenger is available from Ohio Scientific Instruments, 11681 Hayden St, Hiram OH 44234, (216) 569-7905.

Circle 572 on inquiry card.

Intelligent Terminal with Floppy Disk

The Omron 8035 combines an 8080 based programmable intelligent terminal with a floppy disk subsystem to create a complete program development facility. The system includes 20 K to 65 K bytes of programmable memory, 500,000 bytes of space on a dual drive floppy disk, an RS232 interface operable at rates up to 9600 bps, and an FDOS operating system with editor, assembler and debugger. Priced from $7,200 in single quantities depending on the configuration, the 8035 is available from Omron Electronics Inc, 432 Toyama Dr, Sunnyvale CA 94086, (408) 734-8400."

Circle 571 on inquiry card.

This fully assembled unit offers an expandable system built around the National PACE 16 bit microprocessor. The Micro M16 comes with an EROM bootloader, low and high speed current loop and RS232 serial ports, and two 1200 bps audio cassette ports. A mother board accommodates up to four memory cards, each with 16 K 16 bit words of programmable memory, four IO cards, and an optional front panel card. A parallel IO port card includes two 16 bit input and two output ports as well as EROM sockets for IO device handler software. System software includes an 8 K macroassembler, a linking and relocating loader, a conversational editor and a debugger with spanshot and breakpoint capabilities. The M16 provides 8 K PACE BASIC which features direct IO and. memory access, waits for input or timer, built-in hexadecimal conversion and program tracing for debugging purposes, as well as the usual BASIC language features. Enclosed in a gunstock walnut veneer cabinet, the M16 is available from Micromega Corporation, 11311 Stemmons Fwy, Suite 12, Dallas TX 75229,(214) 231-4777."

Circle 573 on inquiry card.

OSI's Model 500 Computer

Ohio Scientific has announced the new Model 500 processor board can be used as a stand alone computer or as the processor in a larger system. The board accepts 8 K or read only memory, 4 K of programmable memory, 750 bytes of programmable read only memory, an ACIA-based serial port, a 6502 processor, and full buffering for expansion. It is available completely assembled with an 8 K BASIC package for $298.

The Model 500 is software and hardware compatible with Ohio Scientific's 400 kits and Challenger products. The board is available enclosed with power supply as the Model 500-1 for $429, and in an 8 slot Challenger case as the Model 500-8 for $629. For further information, contact Ohio Scientific, Hiram OH 44234."

Circle 574 on inquiry card.

170

BYTE January 1978

Circle 6 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 Read out.

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

50/100 Imsai Type - Dip Solder Pins $4.25 ea 5 pes $4.00 ea DB51212-1 Hood (grey) $1.00ea 5 pes $.95

50/100 Imsai Type with Guides $4.50 ea 5 pes $4.25 ea DB51226-1A Hood (black) $1.10ea 5 pes $1.00

Imsai Guides only $ .30/pr 5 pr $ .25/pr

o/\v t: 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/set When ordering: specify type of contact. 5 Sets $6.25/set

ea ea ea ea

2708 1KX8 PROM 450 NS

$16.75 ea

5 pes or more $1 5.70 ea

8080A -PRIME

$12.00ea 5 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

$89.95

Assembled and tested.

See kit below. 4K RAM BOARD KIT

450ns Access RAMs

Fully Buffered

Low Power *#9.95

Static

5V only

41/2 x 6 inch board

Buy 4 RAM Board kits at $79.95 each and an 8 slot Mother Board is yours

Includes 8 connectors and card guides. FREE.

MOTHER BOARD

8 SLOT 44 PIN BUS

50 Pin Edge Connector

Mother Board $20.00 ea Connectors 2.50 ea

Card guides for above $10.00 per set.

4K PROM

—Low Power %m^J r^ Iml^

-5 V Only

—Industry Standard Bipolar PROM —Compatible With Our Bus

KIT WITH 2K OF PROM $79.95

Additional 2 K of PROM $40.00

2102 — $1.20 Multiples of 25 only. Low power, 450 n.s. Access and cycle.

DANA 2000A Multimeter Regularly $199.50 Our Price $165.00

MAKE CHECK OR MONEY ORDER PAYABLE TO:

Kathryn Atwood Enterprises

P.O. Box 5203, Orange. CA 92667

Discounts available at OEM quantities. For orders less than $25.00 total, add $1.25 for shipping. California residents add 6% sales tax. Estimated shipping time 2 days ARO with money order. For checks allows 7 days for check to clear.

Circle 5 on inquiry card.

BYTE January 1978 171

What's New?

SYSTEMS

An F8 Based System

A 6800 Based Integrated System

A Minifloppy Based Desk Top Personal Computer

^Ss*

This 6800 based system features a keyboard, 20 character alphanumeric display, 40 character per line impact printer, single or dual tape cassette drives, minifloppy disk, RS232C ports, and 9 slot card cage integrated into one case. Programmable memory expansion to 65 K bytes and 16 K byte EROM cards are also available as options. Software for the system includes a powerful 6 K byte operating and debugging system optionally available in ROM, a BASIC interpreter, FORTRAN compiler and linking loader. The ROM debugger features interactive translation of assembly language mnemonics, tape, disk and printer commands, multiple breakpoints and other functions. The system is available in two configurations: the DE68DT which includes a minifloppy disk drive, and the DE68C which fits into a smaller case without the minifloppy. Prices start at $2200 in single quantities, from Digital Electronics Corporation, 415 Peterson St, Oakland CA 94601, (415) 532-2920.

Circle 575 on inquiry card.

The System 8813 is a compact complete disk based microcomputer. The central unit, no larger than a stereo component, includes 16 K bytes of programmable memory and room for three minifloppy disk drives, in a walnut case with a brushed aluminum front panel. Included in the package is a video monitor, keyboard with cable, and complete system software on diskette.

System software allows you to put the system to work immediately, running applications in either assembly language or in fully extended BASIC. The small separate keyboard permits convenient use of the system at desk or table. The high speed video display exhibits results in graphics and alphanumerics. Because it uses minifloppy disks, the 8813 allows convenient storage and fast access to programs and data by means of simple user commands. Prices for the 8813 start at $3250, from PolyMorphic Systems, 460 Ward Dr, Santa Barbara CA 93111, (805) 967-0468. ■

Turnkey Business System Offers Security

The Mesa Two small business computer comes complete with packaged programs for accounts receivable, accounts payable, inventory, payroll and general ledger. Designed to be operated by clerical personnel, the system features on line source data validation, passwords, and audit trails from financial statements back to source documents, providing security and management control "without the need for data processing technicians." The Mesa Two can also communicate with the manufacturer's central IBM 370 computer for larger scale applications. The system includes a processor with 64 K bytes of memory, 10 million bytes of mass storage, a keyboard and display, and a 165 character per second printer. The Mesa Two is available from A O Smith Corporation, 3533 N 27th St, Milwaukee Wl 53216, (414) 447-4470."

Circle 577 on inquiry card.

This system features the Mostek F8 microprocessor with a 128 byte scratch pad memory, a 1 K byte system monitor in ROM, and a memory interface with 65 K byte addressing range. The system is housed in an attractive commercial grade cabinet with a 12 slot mother board, a heavy duty 15 A power supply, 8 K bytes of programmable memory, a 20 A current loop or RS232 serial interface, and three 8 bit parallel IO ports. ASK BASIC interpreter is included and an 8 K BASIC and resident assembler and editor are planned. The F800 system costs $499 as a kit or $699 assembled and tested. Additional 4 K memory boards are $129 in kil form or $199 assembled and tested. Other accessory boards are planned. The F800 is available from Microdata Systems, 2 Mack Rd, #101, Woburn MA 01801,(617) 935-9870. ■

Circle 576 on inquiry card.

8080 Based System Features Front Panel Firmware

FQ1UINOXJOO

This Altair (S-100) bus compatible system uses a 12 button keyboard and a 10 digit LED display controlled by a monitor program in ROM to implement "front panel" functions such as examining and altering the contents of any register, memory location or IO device. Single step, slow step, halt, run and reset functions are also provided. The 8080A based Equinox 100 comes with a constant voltage 20 A power supply and a shielded, actively terminated 20 slot bus board. An attractive aluminum case with a smoked Plexiglas front and a key operated power switch are included in the basic system, with a swing open top, tilt up stand and carrying handle available as options. The Equinox 100, a joint venture of Parasitic Engineering and Morrow's MicroStuff, is available for $699 in kit form from Parasitic Engineering, POB 6314, Albany CA 94706,(415) 547-6612."

Circle 578 on inquiry card.

172

BYTE January 1978

N€W 8080 and 8085 REF€R€NCG GUIDG

A TOTALLY NEW CONCEPT!

SAVES TIME AND MONEY!

MAKES YOUR JOB EASIER!

I I

I

A powerful new tool for every serious 8080 user — professional and novice alike.

Priceless tlmesaver for engineers, technicians, and programmers. Saves time and

money in the lab, on the production line, or in the field.

Convenient pocket size — 3% by 7% inches — gives quick and easy access to all vital

reference data. No more searching here and there for codes, instructions, or definitions.

It's all there — at your finger tips — everything you need to successfully use the 8080A

and —Intel's new 8085 microprocessor.

Features cross listing, for rapid assembly and disassembly, of MACHINE CODES and

MNEMONICS • Concise description of 8080 and 8085 OPERATIONS, SIGNALS,

PINOUTS, and INSTRUCTIONS • Convenient cross conversion of OCTAL,

HEXIDECIMAL, DECIMAL, ASCII, and EBCDIC codes • Easy-to-read tables of powers

of two, eight, and sixteen ... and much more...

Sturdy • Handsome • Easy-to-use • Data Packed

Your tlmesaver will give many years of professional service.

$12.95 each (plus postage & California sales tax) — 25% discount for 4 or more. MoneyBack Guarantee: You must be fully satisfied or simply return the guide within 15 days forfull and prompt refund.

URBAN INSTRUMENTS

4014 CODY ROAD • DEPARTMENT C1 • SHERMAN OAKS • CALIFORNIA 91403

master charge

BANKAMERICARD

PLEASE SEND.

NAME

STREET

CITY

. 8080 timesavers to:

STATE ..." ZIP.

CHECK/M.O. ENCLOSED Q BANKAMERICARD □ MASTER CHARGE □

CARD NUMBER

GOOD THRU 4 DIGITS ABOVE NAME

SIGNATURE

(MASTER CHARGE)

Circle 110 on inquiry card.

HI

ESAT-100

Economical Stand Alone Terminal

Assembled, Tested, Burned-ln $239.00

For Teletype. SCMP. Joll. Kim SBC 80 Users A reliable, inexpensive, ielf contained Communicating Terminal, completely assembled, burned in, and tested S239 00

SPECS 32 character x 16 lines * 2 pages of 5 x 7 dot mainx 64 character ASCII communicating with a serial, asynchronous II unit code. TTL compatible from 300 to 9600 baud. Keyboard Controls are back and forward space. Ime reed, dear page, or to end of Ime, leleci page I or 2. fullAiatf duplex, local/remote, cursor onfoff, odd/even/no parity Output to TV Vendor is Composite Video. 75 Ohms Keyboard required is parallel out put 7 unit ASCII with negative true strobes. Keyboard may tap up lo 200 Ma from the ESAT-100 on board 5V power supply Power required is 110VAC & 1 watts.

COMMENTARY At thrs writing (101 77). the ESAT-100 is the only Stand Alone Terminal board requiring only black and white TV set and ASCII Keyboard You do not have lo have a S100 Bus Machine, or even a computer May or; used in con junction with a Modem and your home TV set to provide a time share type terminal al any Baud rate you desire.

Note, commercial terminals use an 80 character x 21 line for mat However, we have chosen 32 character x 16 lines for tele vision set applications because of the limited resolution available on most TV sets

Nonetheless, for those of you who are the owners of either high quality video monitors, or the best of Japan's TVreceiveis. we offer the

Scroliboard Adapter Kit (designed to fit on ESAT-100) wdh 64 characters x 16 hues and Automatic Scrolling for S29.95 M & R Supermod R F Modulator for antenna connection with your TV set. Runs off rjl ESAT 100 power supply color and black& white for $24.95

Sfiff ijii

ffiiiii

gieiii

gfilli

Sii'iii

CAP. SPECIAL:

The Highest Quality,

By pass anywhere:

VK06 0.1/100V for $0.29

LINEAR

LM380N 1.39

LM340T-5.12.15 .99

NE560

NE561

NE565

NE566

NE567

LM1812

LM1889

Full Color TV Game Kit:

Includes MM57100 Game Chip, MM53104 Clock Gen., LM1889N Color Modulator, 3.58 MHz color burst oscillator crystal, variable cap for crystal adj. and PC board. Very impressive on color sets. All data sheets and schematics included...$25.95

Direct Reading Capacitance Meter Kit:

Here is a handy shop item incorporating a reliable and accurate measurement method which works from 01 pico + d to 10 micro + d. Includes large 6" scale analog meter movement, all electronic parts and full documentation and theory of operation. Requires 5V and +-12V power. Makes accurate readings directly and instantly! No tuning, fiddling or tnterpola tion required. Full documentation and theory...$39.95

5V Regulated Power Supply Kit:

Provides regulated 5V @ approx. 250 ma for benchwork, breadboards and small projects, includes LM340T-5 regulator, rectifiers, filter caps, and wall plug transformer. Full notes...$6.95

Nicad Batteries and Charger:

2 ea 2AH 'C size Nicads (great for memory power-fail CKTS, cold weather flashlights, etc. and charger...$1 3.95

2.95 2.95 1.95 1.49 1.49 4.95 4.95

VERBATIM Removable Magnetic Storage Media PRICE REDUCTION! Minidiskettes 1-9 10-25 26-100

4.79

4.65

4.45

CPU SPECIALS

8080A 10.95

Z80 (2mHz) incl. 18mHz Xtal 33.95 Z80A (4mHz) incl. 36mHz Xtal 39.95

OPTOCOUPLERS

4N26 1.00

PROMS

8223 Special 10/9.95

82S115 8 x 512 15.95

EPROMS

2708 650nS

2708 450nS

C1702A 1000nS

MM5203Q MM5204Q

MD525-01 MD525-10 MD525-16

Standard Size

Diskettes

FD34-1000

FD32-1000

FD65-1000

Cassettes

R-300

Digital Direct

(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

12.95

16.95

4.95

4.95

9.95

RAMS

21L02-1 21 L02 2111AL-4 C3107B PD41 1D-4

26-100

4.35 and OTHERS

450nS 250nS 450nS 60nS 135nS

1.25

1.50 2.30 1.99 3.99

nory

In Co

AY5-1013

MM5369

MM5320

2513 Up.

2513 Lo.

IN4005

IN4148

Tested, Burned-ln, Complete $179.00 for 450nS $239.00 for 250nS S 19.00 for Bare Board

Electrolabs

POB6721, Stanford, CA94305

415-321-5601

4.95

1.69

6.00

5.95

6.95

11/1.00

15/1.00

SATISFACTION 100% GUARANTEED!

TO ORDER:

Send check or money order and include $1.00 for shipping, 1.00 (op tional) for insurance, and please include 6'/a% sales tax .if you are a California state resident. COD orders add .85 Thank you.

Circle 39 on inquiry card.

BYTE January 1978 173

What's New?

SYSTEMS

New DECstation Employs Single Chip PDP-8

Terminal Features Minifloppy and 12 Slot Mother Board

The Model MCS-PT processor terminal is a self-contained computer system with display and disk storage, a full keyboard and a 12 slot mother board. It may be used either as a stand alone processor or as a processor terminal in a larger system. Features of the MCS-PT include a 15 inch (38.0 cm) high resolution monitor, a full upper and lower case ASCII keyboard with eight user designated special function keys and a 16 key numeric cluster pad. One Shugart

SA-400 Minifloppy disk drive is standard.

The 12 slot mainframe contains a CPU board that features an 8080 processor and a special circuit that implements a start up "jump to" routine to any user selected byte address. 16 K bytes of memory are provided with additional memory as an optional item. A disk controller which will handle four drives and a video board are also standard items. The 10 board provides three parallel and three serial ports with selectable data rates of 75 to 19,200 bps.

The whole unit is housed in a heavy duty aluminum cabinet with power provided by a constant voltage transformer power supply. A fan, washable filter and all edge connectors and card guides are furnished. Software provided includes CP/M DOS and BASIC on disk. The MCS-PT fully assembled and tested is priced at $3495, or $2995 in kit form. The unit is also available without the disk drive and controller at $2495 assembled or $2195 in kit form. For more information contact CMC Marketing Corporation, 7231 Foridren Rd, Houston TX 77036, (713) 774-9526."

Circle 601 on inquiry card.

New 3 Processor System Can Run Most Published Software

Transmitter Controller for Broadcast Stations

The Challenger III comes equipped with three of the most popular microprocessors, the 6800, 6502 and Z-80, and hence is capable of running most published microprocessor software with appropriate modifications for memory use and input output. Optional features provide automatic switching between processors under software control and addressing of up to 1 million bytes of programmable memory. A floppy disk with the OS-65D operating system comes standard with the Challenger III, and a 74 million byte hard disk is available as an option. The Challenger III and the Model 510 board with all three microprocessors are fully compatible with other Challenger hardware and software products. The entire product line is described in a new catalog available for $1 from Ohio Scientific, 11681 Hayden St, Hiram OH 44234, (216) 569-7905."

Circle 602 on inquiry card.

The problem of radio or TV broadcast station automation was discussed in Letters in the February 1977 (page 81) and May 1977 (page 105) issues of BYTE. One step is this direction is the Automatic Transmitter Operator from Widget Works Inc. This microprocessor based unit monitors and controls power, modulation, and transmitter hours of operation, eliminating the need for 3rd class licensed operators and transmitter readings. A single unit handles up to four AM or FM transmitters with proper options, and is guaranteed to meet FCC specifications for ATS control for one year from date of delivery. All hours of operation for the entire year are programmed into the unit at the time of manufacture. Calibration is performed with a calculator keyooard. Pricing varies with configuration and options, starting at $4500. For more information, contact Widget Works Inc, POB 79, Medina OH 44256, (216) 336-7500."

Circle 603 on inquiry card.

The venerable PDP-8 lives on in Digital Equipment Corporation's new DECstation, which incorporates a single chip version of the 12 bit processor. The central element of the new system is an integrated processor and display unit, the VT78, which includes a video terminal with upper and lower case ASCII characters, 16 K 12 bit words or programmable memory, a real time clock and a floppy disk interface. Five 10 ports on the back of the VT78 are designed to be connected to peripherals with simple cables like those used in a component stereo system. The ports include two serial interfaces with data rates from 50 to 19,200 bps, a parallel interface for units such as printers, a floppy disk interface, and one to facilitate local input of programs. The DECstation runs under OS/78, an extended version of the PDP-8's operating system OS/8 Version 111, and offers FORTRAN and BASIC compilers, the PAL-8 assembler, and various utilities. The standard DECstation configuration, which includes the VT78 and a dual drive floppy disk, is priced at $7,995. More information is available from Digital Equipment Corporation, Maynard MA 01754, (617) 897-5111, ext 3300."

Circle 604 on inquiry card.

System, Not Peripheral

On page 252 of November 1977 BYTE, the Apple II press release was incorrectly categorized as a "peripheral." This complete computer system should have been placed in the "systems" category.

. Our apologies to Steve Jobs and Steve Wozniak."

174 BYTE lanuary 1978

LOW PROFILE IC SOCKETS

14 PIN-$.18 22 PIN $.33

16 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

2- 20 PF. CER. 4/$1 Mil Quality

C. MOUNT VOLUME CONTROL

Nylon Shaft. 1K or 100K. YOUR CHOICE 4/$1

16K E-PROM CARD

S-100(lMSAl/ALTAlR) BUSS COMPATIBLE

$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 and Gold plated contact .fingers.

2. Selectable wait states. / 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 FOR SPECIAL OFFER: Our 2708's (450 NS) are $12.95 when purchased with above kit. ASSEMBLED AND TESTED

\VO^' DEALER INQUIRES INVITED

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-100 (1MSAI/ALTA1R)

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!

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) —

USES 21L02-1 RAM'S.

$179.00

29.95

13.50 9.75 4.50

3W AUDIO AMP MODULE

Fully assembled and tested. With schematic. 4, 8 or 16 OHMS.

$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

^E^'• 4K STATIC RAM'S ^W>

2114. The industry standard. 18 PIN DIP. Arranged as IK X 4. Equivalent to FOUR 21L02's in ONE package! TWO chips give IK X 8, with data.

2 FOR $24

450 N.S.!

8 FOR $85

MOTOROLA 7805R VOLTAGE 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. Access time. 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 explanation ever on the workings of the Z - 80 CPU CHIPS. At least one full page on each of the 158 Z - 80 instructions. A MUST reference manual for any user of the Z - 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 DD? 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 AMERICAN EXPRESS CARDS. MONEY BACK GUARANTEE ON ALL ITEMS. TEXAS RESIDENTS ADD 5% SALES TAX.

c

Digital Research Corporation

P. O. BOX 401247 • GARLAND, TEXAS 75040 • (214) 271-2461

CALL FOR OUR CATALOG!

WE PAY POSTAGE!

Circle 33 on inquiry card.

BYTE laniury 1978 175

What's New?

SOFTWARE

Multitasking Operating System Rivals IBM 360/91

This multiuser, multitasking operating system for 8080 and Z-80 based computers is modeled after the IBM System/360 Model 91 operating system used at the University of California, Los Angeles. It supports more than 25 user terminals with 64 K bytes of memory, and permits one user terminal to control many concurrently running tasks. Functions include block and line editing, file merging and transfer, interterminal communication, passwords and user accounting, task status reports and a system log, disk map display and print queue support. The system includes a disk based 8 K BASIC compiler which generates reentrant code. The developers claim that the system provides highly efficient resource management by maintaining dynamic, noncontiguous files, dynamically allocated memory and extensive disk buffering. The FAMOS™ system costs $1750 and must be used with a special interrupt board ($300) for the Altair (S-100) bus. The system is available from MVT Microcomputer Systems Inc, 21822 Sherman Way, Canoga Park CA 91303, (213) 348-2030."

Circle 592 on inquiry card.

An Interactive Word Processing System

This word processing system displays your text on a video screen in the form in which it will be printed, as you enter new text or make modifications. Each line is continuously formatted and justified, and surrounding text is moved up or down as strings are inserted or replaced. Text can be reviewed by variable speed scrolling in the forward or reverse directions. Encoded strings may be used to create selective mailing lists. Line and page length and spacing can be modified as desired, and titling and page numbering is included. A version designed for the Diablo Hy-Type printer includes character spacing and bidirectional printing. "The Electric Pencil" runs on an 8080 or Z-80 based computer with 8 K bytes of memory, a Processor Technology VDM-I or PolyMorphic Systems video interface and video monitor, a Tarbell cassette interface and cassette recorder, and a printer. The package is priced at $100 or $150 for the Diablo version, and is available at computer stores or from the author, Michael Shrayer, 3901 Los Feliz Blvd #210, Los Angeles CA 90027, (213) 665-7756.■

Circle 593 on inquiry card.

Want Z-80 Software?

Here's software for Altair (S-100) bus compatible Z-80 based systems, designed with Cromemco's ZPU processor board especially in mind. A Z-80 monitor ($25) fits in 1 K bytes of memory and allows the user to examine and modify registers and memory locations, set up to five breakpoints, program 2708 type EROMs using the Cromemco Bytesaver board, and perform other functions. The ROS Resident Operating System ($40) provides most of the monitor functions and also includes a Zilog compatible assembler and a text editor, all designed to run in 8 K bytes of memory. Control BASIC ($40), available for both 8080 and Z-80 based systems, is an extended version of Dr Wang's Palo Alto Tiny BASIC which includes input and output commands for direct IO control, ability to call user subroutines with any number of arguments, string input and output, numeric field widths an,d other features, yet it fits in just over 3 K bytes of memory. Included with Control BASIC is an exciting version of Star Trek "that's almost impossible to win." Wish you could run Z-80 software on your Processor Technology SOL-20? You can with the ZOL modification kit ($29.95), which lets you install a Cromemco ZPU board into the SOL's mainframe. All these goodies are available from HUH Electronic Music Productions, POB 259, Fairfax CA 94930, (415) 457-7598.»

Circle 595 on inquiry card.

APPLE II I/O BOARD KIT

Plugs Into Slot of Apple II Mother Board

FEATURES:

I 8 Bit Parallel Output Port (Expandable to 3 Ports)

I Input Port

15mA Output Current Sink or Source

TTL or CMOS Compatible

Addressable anywhere in memory output area

Can be used for peripheral equipment such as printers, floppy discs, cassettes, paper tapes, etc.

KIT INCLUDES:

P.C. Board, I.C.'s Sockets and

Assembly Manual,

PRICE:

I Input and I Output Port

lor S49.00

I Input and 3 Oulpul Ports

i ,<>r S64.00

DEALER INQUIRIES INVITED

LD-130

3 digits A/D CONV.

811.95

2708

E PROM 1Kx8 450ns

$14.95

EMM 4200

"static" 4K RAM

$13.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-8005 WRITE FOR FREE CATALOG

You are invited to visit our store at the above address

3RD GENERATION ONLY $63.00

ASCII KEYBOARD KIT

r* « w v w

P v it x m v r a t * **"

■ 9|lCP!HSiJPI '

FURTHER IMPROVEMENTS. MORE FEATURES

• TTL Logic Circuits

Power: +5V, 275mA Upper ;md Lower Case

Full ASCII Set (Alpha

Numeric, Symbols,

Control)

7 ot 8 Bits Parallel Data

Optional Serial Output

Selectable Positive or Negative Strobe, and Strobe Pulse Width

'N' Key Roll-Over Fully Debounced Carriage Return Key Repeat Function Key Shift Lock.2 Shift Keys 4 User Defineable Keys PC. Board Size: 17-3/16" x 5"

OPTIONS:

• Metal Enclosure (Painted IBM Blue and White S25.00

18 Pin Edge Con. l.C. Sockets . . .

S2.00 $4.00

• Serial Output (Shift Register) S2.00

• Upper Case Lock Switch (for Capital Letters and Numbers)

S2.00

KIT Includes: Keyboard, P.C. Board, all required components and assembly manual.

NOTE: If you have this 63 Key Teletype Keyboard you can buy the Kit without it for S44.95.

176 BYTE January 1978

Circle 42 on inquiry card.

New! ECONORAM VT is here

12Kx8 memory kit for the Heath H8

$235.00

We proudly welcome our newest memory board family member, designed from the ground up for full compatibility with the Heath Company H8. Organized as two independent blocks for flexibility: one 8K block (locatable on any 8K boundary) and one 4K block beatable on any 4K boundary. Has the same basic features of our ECONORAM II™— all static design, dipswitch address selection, switch selected write protect and phantom, sockets for all ICs, full buffering—plus the required hardware and edge connector to mate

mechanically with the H8. Now you can have our 12K board for the price of the Heath Company's 8K ... with the performance you've come to expect from products carrying the ECONORAM™ name.

Also available: H8 4K to 8K conversion kit ($90). If you have a Heath Company 4K memory, plug in these ICs and you'll have a full 8K. Kit includes eight TI4044 memories and matching sockets.

ECONORAM II

TM

This 8K x 8 static memory is a consistent winner, whether you plug into an Altair, IMSAI, or any other S-100 buss computer. Configured as two independent 4K blocks, with separate protect for each block and vector interrupt provision if you try to write into protected memory. Handles DMA devices. All address and data lines fully buffered. Tri-state outputs for use with bi-directional busses. Selectable write strobe (writes on either PWR or MWRITE). and dipswitch selectable address. We guarantee 450 ns speed, although many users report running this board in conjunction with 4 MHz Z-80s without using the on board wait state provison. The mechanical quality matches the design, with gold-plated edge fingers, legended and solder masked board, sockets for all ICs, and industrial grade or better components. Join the thousands who have made this our most popular computer board!

Kit form S130

Assembled, tested, 1 year warranty $ 150

Speciall Four ECONORAM II™ kits 4/S475

new and dynamic:

ECONORAM III

Here is the first 8K x 8 dynamic RAM that performs well enough to merit the ECONORAM™ name. Thanks to the SynchroFresh* timing process, refresh fits naturally into the timing of the S-100 buss ... now you can have half the power of statics, but without the traditional timing hassles you've come to associate with dynamic memories.

In addition to low power, this board runs at zero wait states with an 8080 CPU, and is configured as two separate blocks for maximum versatility. Not a kit: shipped assembled, tested and ready to plug into any S-100 buss computer (Altair, IMSAI, etc.). 1 year warranty.

Assembled 8K x 8 ECONORAM HI™ $ 149.00

* SynchroFresh is a trade mark of Thinker Toys

CPU POWER SUPPLY ($50)

<*zfi

Gives a full 5V at 4A with crowbar overvoltage protection. along with + 12V at V2A, -12V at V2A, and adjustable bias supply (5 to 10V at 10 mA). Although intended for use with small computer systems, this is also an excellent supply for bench and development work.

10 SLOT MOTHERBOARD ($90; 18 SLOTS $124)

Add one of these on to an existing S-100 system, or use as the nucleus of a stand-alone system. Both kits come with all edge connectors and include on-board active, regulated terminations to minimize crosstalk, overshoot, ringing, and other glitches that can occur with unterminated lines. Includes lots of bypass caps and heavy power traces.

ACTIVE TERMINATOR ($29.50)

Plug this board into any S-100 motherboard to clean up the problems associated with unterminated lines. Uses the same circuitry as our Motherboards.

TERMS: Please allow up to 5% for shipping; excess refunded. Californians add tax. COD orders accepted with street address for UPS. For VISA® /Mastercharge® orders call our 24 hour order desk at (415) 562-0636. Prices good through cover month of magazine.

BILL GODBOUT ELECTRONICS BOX 2355, OAKLAND AIRPORT, CA 94614

FREE FLYER: These are just a few of the items we carry for the computer enthusiast. We also stock a broad line of semiconductors, passive components, and hobbyist items. We will gladly send you a flyer describing pur products upon receipt of your name and address.

Circle 47 on inquiry card.

BYTE January 1978 177

What's New?

SOFTWARE

Extended Monitor for the KIM-1

"XIM" (Extended IO Monitor) is a programming and debugging package for the KIM-1 computer. It provides commands to move, compare or search blocks of memory, set break points, calculate branch displacements, load ASCII characters and dump hexadecimal data, and display the processor registers. "XIM" occupies just under 1 K bytes of memory and is easily relocated. A 45 page user's manual with source listing is included, with object code on paper tape for $10 or on KIM-1 cassette for $12, from Pyramid Data Systems, 6 Terrace Av, New Egypt NJ 08533."

Circle 594 on inquiry card.

A New 8080 Assembly Language Debugger

The Dynamic Debugger is a diagnostic program for 8080 assembly language which has been announced by Computer Mart of New Jersey. The program features an automatic breakpoint mode to facilitate debugging. The price is $30 on paper tape or cassette, or $35 on diskette from the Computer Mart of New Jersey, 501 Route 27, Iselin NJ 08830, (201)283-0600."

Circle 596 on inquiry card.

A New BASIC Compiler

Software Dynamics is offering a new BASIC compiler said to feature floating point arithmetic, subscripting, formatted output and character string manipulation. The compiler requires 16 K bytes of programmable memory space. The price of the compiler is $150, and the manual sells for $10. For more information, contact Software Dynamics, 17914 Laurelbrook PI, Cerritos CA 90701, (213)962-6492.■

Circle 598 on inquiry card.

Extensions to Processor Technology Software Package #1

Software Package 0.5 is a set of extensions to Processor Technology's Software Package #1 (a basic assembler, editor and operating system for the 8080). New features include automatic insertion and reordering of line numbers, commands to find and change or insert strings, and an efficient tape driver for Tarbell or Dajen cassette interfaces. Complete source code is supplied for $14.95, with object code on paper tape for $19.95 or on Tarbell tape for $24.95, from Objective Design Inc, POB 20325, Tallahassee FL 32304."

Circle 597 on inquiry card.

Real Time Warfare Game

Encounter! is a game that exploits the real time response capabilities of a computer. Unlike most board games, there is no taking turns between two players; each player attacks and defends as many places on the field as he is mentally able to maintain. Parameters such as the speed of play, configuration of the playing field, location of "home" and "blocked" districts, "birthrate" of new men, and the game time limit can be altered at will. Encounter! is designed for an Altair (S-1 00) 8080 or Z-80 based system with a Processor Technology VDM-1 and two ASCII keyboards. Complete source code is provided, with paper tape for $16.95 or with Tarbell tape for $19.95, from Objective Design Inc, POB 20325, Tallahassee FL 32304."

Circle 599 on inquiry card.

An IBM 11 30 Simulator for Nova Computers

Icon Corporation has announced its new ELLIPSE 1130 processing system designed to simulate the IBM 1130 on a Data General Nova computer. This makes available a wide variety of COBOL, APL, RPG, FORTRAN IV and other types of programs to the Nova user with no modifications needed. Contact Icon Corporation, 11300 Rockville Pike, Suite 10 NE, Rockville MD 20852, (301) 770-1885."

Circle 600 on inquiry card.

[g CLjberccrn boards

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 address and wait cycles, kit less PROMS $65

MB-4 Basic 4KX8 ram, uses 2102 type rams, may be expanded to 8KX8 with piggybacking, S-100 buss. PC

board $30

MB-6 Basic 8KX8 ram uses 2102 type rams, memory protect in 256 to 8K switchable S-100 buss PCBD $35

MB-7 16KX8, Static RAM uses/jP410 Protection, fully buttered.

PCBD . . $30.00 KIT. $525.00

MB-8 2708 EROM board. S-100, 8KX8 or 16KX8 kit without

PROMS $85

MB-9 4KX8 RAM/PROM Board uses 2112 RAMS or

82S129 PROM kit without RAMs or PROMs $80

IO-2 S-100.8 bit parallel l/Oport, %ol board is tor kludging.

Kit $55 PCBD $30

IO-4 Two serial I/O ports with lull handshaking 20/60 ma current loop. Two parallel I/O ports.

Kit $150

VB-1 64X 16 video board, upper lower case Greek, composite and parallel video with software, S-100. Kit... $150 PCBD... $30

SP-1 Music synthesizer board. S-100. computer controller wave forms. 9 octaves, 1V rms Vz% distortion, includes

software kit $200

Altair Compatible Mother Board, 11 xM11£ x Vfe".

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 glass board with gold finger contacts. All boards are check for shorts. Kits only have solder mask. 90 day guarantee on Cybercom kits.

Non-electrical cosmetic rejected PCBD from Cybercom. IO-2 $21 MB-6 $21 VB-1000 $25

W7T7C

/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$35 CPU-1 8080A Processor board S-100 with 8 level vector

interrupt PCBD $30

10% discount on 10 or more of WAMECO PCBD in any combination.

NEW! All IC's Sockets & hardware for WAMECO CPU-1 include all prime Eowa. 8214. 8224, 8212. PCBD not included $65

All ICs, sockets & hardware for WAMECO MEM-1 includes prime 2102AL-4's. PCBD not included Order PCBD separately $135

Special 2102AL-4 1K x 1 ram V) less power than 21L02 type rams, with power down, prime from NEC. Ea. 2.00; 32 ea, 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

20.00 4,00 8.30 4.95 5.00 8.90 14.50 14.50 5.00 6.95 11.00 11.00 4.00

m

419 Portofino Drive San Carlos, California 94070

Please send lor IC, Xistor and Computer parts list.

74LO0

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

74LS0O

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

2501 B

2502 B 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

82S130

82S131

IM5600

IM5610

IM5603

IM5604

IM5623

IM5624

MMI6330 2.50

DM8573 4.50

DM8574

DM8575

DM8576

DM8577

DM8578

2.4576 MHZ

XTAL 7.20

1.25 1.25 4.50 3.75 4.50 1.60 7.50 7.50 1.00 2.00 4.95 3.00 2.00 2.00 2.00 2.50 3.00 3.00 350 3.50 3.95 3.95 2.50 2.50 3.00 3.50 300 3.50

5.50 4.50 4.50 3.50 4,00

Check or money order only. If you are not a regular customer and your order is large please send either a cashier's check or a postal money order, otherwise there will be a delay of two weeks for the check to clear. All items post paid in the U.S. Calif, residents add 6% tax. Money back 30 day guarantee. We cannot accept returned IC's that have been soldered to. Prices subject to change without notice. $10 minimum order. $1.00 servic* charge on orders less than $10.

178

BYTE lanuary 1978

Circle 66 on inquiry card.

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

1000v

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

l, 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

1N5244B

14v

z .25

FND 359

Red 7 seg com-cathode

1.25

1N5245B

15v

z .25

2 Amp Bridge 100-prv 1.20 25 Amp Bridge 200-prv 1.95

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

4066

.95 .40

7472

.40

4069

4071

.35

LINEARS, REGULATORS, etc.

4081

.70

8266 .35

LM320K5 (7905) 1.65

LM340T24

.95

LM723

.50

4082

.45

MCT2 .95

LM320K12 1.65

LM340K12

2.15

LM725

1.75

8038 3.95 LM201 .75

LM320T5 1.65 LM320T12 1.65

LM340K15 LM340K18

1.25 1.25

LM739 1.50 LM741(8-14).25

9000 SERIES

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) .75 LM318 (Mini) .65

LM340T18 1.00

NE555 NE556 NE565

.50 .95 .95

Y CLOCKS

MEMOF

74S188(8223) 3.00 1702A 6.95 MM5314 3.00 MM5316 3.50

INTEGRATED CIRCUITS UNLIMITI

ED

NE566 NE567

1.75 1.35

2102-1

1.75

7889 Clairemont Mesa Boulevard, San Diego, California 92111

2102L-1 1.95 TR 1602B/

(714) 278-4394 (Calif. Res.)

SPECIAL DISCOUNTS

TMS6011 6.95

All orders shipped prepaid No minimum

Total Order

Deduct

8080AD 8T13

15.00 1.50

Open accounts invited COD orders accepted $H)0-$30C

5% 10%

8T23

1.50

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 52 on inqi

iry card.

What's New?

New Catalog from Wintek

PUBLICATIONS

New Micro Store Catalog

GRAND OPENING

Micro Store

312 W.Randol Mill Rood Artinflton, roxot

*ugusi20,1?77

me

. .nmMtogm moll. MW SI™ (WJ1 «"» «

raSoo.ai.W9. Moor Brand Opening

IMonlyeondMi.o,. »»''"',;',;;,

ourenoieo ono poid Br » »»

3oieontn»2<»

so nwl yom sciential ono

slop In mo! ioiuioov '^«'-»

« s% oil lite P'M »! »'»'

unit you've boertsov

jl.jj. lnB lot Oi ol loo"

^8pF s!op oy lot oolite

onO Q Ulllo

- \ & | iiianaiy gel

acquainted

iflliM -'"^:' talk.

This 36 page catalog describes the offerings of the two Micro Stores in Richardson and Arlington TX. Like a few other recent computer store catalogs and shopping guides, this one helps educate the customer by including a section on "How to Buy a Microcomputer" and by providing extensive product descriptions (as many as five pages on one manufacturer's product line). The catalog is available from the Micro Store, 634 S Central Expy, Richardson TX 75080, (214) 231-1096."

Circle 609 on inquiry card.

A Marketing Resources Catalog

A free catalog listing publications and services related to the techniques of marketing electronic products is being offered by Mainly Marketing. The manuals and services listed are aimed at engineers, manufacturers' representatives, marketing and sales people, and advertising people. A monthly newsletter is also described which deals with this field. To receive the catalog, send a large stamped (24r/) self-addressed envelope to Schoonmaker Associates, Drawer M, Coram NY 11727.*

Circle 610 on inquiry card.

The Story of Magnetic Media

Want to know more about the future potential of removable magnetic storage devices and media? A new six page brochure reviews the history of removable media and discusses current and future applications. Copies are free from Information Terminals Corp, 323 Soquel Way, Sunnyvale CA 94086."

Circle 606 on inquiry card.

Want to Build Your Own Altair (S-100) Card Frame?

The Crate Information Packet is a complete set of plans for constructing an Altair (S-100) compatible card frame and power supply. The design can be adapted to any of the available Altair (S-100) mother boards, and can be built from commonly available materials for about $150. The plans include information on sources of materials, tools, parts for the power supply, and front panel options. Either a full size or a twelve slot card frame can be built. The information packet is $19.95; also available are prepunched and drilled front and rear panels for $11.95 each or $20 per set, from Objective Design Inc, POB 20325, Tallahassee FL 32304."

Circle 611 on inquiry card.

User Manual Available for BASIC-E

Users of the BASIC-E compiler on the CP/M operating system for 8080 based computers will profit from this excellent, 200 page reference manual and user's guide. It goes far beyond most BASIC manuals and indeed beyond most textbooks on BASIC programming. Besides its comprehensive coverage of BASIC language features, including character string handling and disk file definition and access, the manual provides information on interaction with the user's terminal in BASIC, compiler options and error codes, a guide for beginners, and hints on problem solving and programming techniques. 16 appendices offer examples of BASIC-E programs and treat topics such as how a program works, compilers versus interpreters and structured programming techniques. The manual itself is priced at only $15, while a floppy disk containing the latest BASIC-E compiler and runtime monitor, a formatting procedure, letter writer and name file manager, a file transfer facility for object files, and miscellaneous other programs sells for $60, from John K Jacobs, JEM Company, 2555 Leavenworth St, Suite 301, San Francisco CA 94133,(415) 673-8962."

Circle 612 on inquiry card.

ittianu

•iVJXW

e

WINTEK

ILVMVAl

This catalog describes the hardware, software and custom services available from Wintek Corporation, including the WINCE 6800 series micromodules, software such as the PL/W high level language, relocating linker and BASIC, consulting, and in-house courses on microprocessors. The catalog is available from Wintek Corporation, 902 N 9th St, Lafayette IN 47904, (317) 742-6802."

Circle 605 on inquiry card.

Datapro Report on Microcomputers

This new 36 page report provides detailed specifications on 144 models of microcomputers, and comments on their potential applications. The report distinguishes between original equipment manufacturer (OEM) microcomputers, micro development systems and hobbyist microcomputers, and evaluates products in each category. Offerings from 57 vendors are covered, and names and addresses of vendors are included. Reprinted from the June supplement to Datapro Reports on Minicomputers, the new report is available for $12 per copy from Datapro Research Corp, 1805 Underwood Blvd, Delran NJ 08075,(609) 764-0100.

Circle 608 on inquiry card.

Manuals for Floppy Disk Controller Chip

These two manuals describe how to use the NEC uPD372 floppy disk controller chip, which provides most of the functions needed to control up to four full size or minifloppy disk drives (see "What's New?" March 1977 BYTE, page 105). Complete assembly language listings, schematics for host processor connections, timing diagrams and narrative text are included. The 70 page manual for the full size floppy drive and the 44 page manual for the minifloppy drive are $10 each from NEC Microcomputers Inc, 5 Militia Dr, Lexington MA 02173, (617) 862-6410.

Circle 607 on inquiry card.

180

BYTE January 1978

MICROCOMPUTER

MICROPROCESSOR'S

F-8

Z-80

Z-80A

CDP1802CD

AM2901

6502

6800

8008-1

8080A

TMS-9900TL

6800 SUPPORT

19.95 25.00 35.00 24.95 22.95 12.95 19.95 8.75 15.95 89.95

6810P 6820P 6828P 6834P 6850P 6852P 6860P 6862P 6880P

4.95

8.00 11.25 16.95

9.95 11.95 14.95 17.95

2.70

Z80 SUPPORT DEVICES

3881 12.95

3882 12.95

F-8 SUPPORT DEVICES

3851 3853

14.95 14.95

DYNAMIC RAMS

1103

2104

2107A

2107B

2107B-4

TMS4050

TMS4060

4096

4116

MM5270

MM5280

MCM6605

1.50 4.50 3.75 4.50 4.00 4.50 4.50 4.50 42.00 5.00 6.00 6.00

CHARACTER

GENERATORS

2513 UP

2513 DOWN

2513 UP (5v)

2513DOWN(5v)

MCM6571

MCM6571A

MCM6572

MCM6574

MCM6575

6.75 6.75 9.95 10.95 10.80 10.80 10.80 14.75 14.75

PROM'S

1702A

2704

2708

2716

3601

5203AQ

5204AQ

6834

6834-1

82S23B

82S129B

8223B

5.00

15.00

20.00

38.00

4.50

4.00

6.00

16.95

14.95

4.00

4.25

2.70

8080A SUPPORT DEVICES

8212 8214 8216 8224 8228 8238 8251 8253 8255 8257 8259

3.95

9.95

4.50

4.95

8.75

8.00

12.00

28.00

12.00

25.00

25.00

STATIC RAMS 1-24

21L02

21L02

21L11

1101A

2101-1

2102

2102-1

2111-1

2112-1

2114

31L01

3107

4200A

4804/2114

5101C-E

74C89

74S201

7489

8599

9102BPC

(450I (250}

1.50 1.95 4.25 1.49 2.95 1.25 1.50 4.00 3.00 17.95 2.50 3.95 12.95 17.95 11.95 3.25 4.50 2.25 1.88 1.65

25-99

1.40 1.80 4.10 1.29 2.75 1.15 1.30 3.50 2.80 16.95 2.35 3.70 12.50 16.95 11.25 3.05 4.30 2.10 1.75 1.45

100 1.25 1.50 3.95 1.10 2.60 1.00 1.15 3.25 2.69 16.50 2.00 3.25 11.95 16.50 10.25 2.85 4.25 1.90 1.60 1.30

KEYBOARD CHIPS

AY5-2376 AY5-3600

13.95 13.95

UART'S

AY5-1013A

5.50

AY5-1014A

8.95

TR-1602A

5.50

TMS-6011

6.95

IM-6402

10.80

IM--6403

10.80

FLOPPY DISC CONTROLLER

1771B 55.95

1771B-01 59.95

SHIFT REGISTERS STATIC

2518B

2533V

TMS3002

TMS3112

MM5058

3.95 2.00 1.00 3.95 2.00

MISC. OTHER COMPONENTS

NH0025CN

NH0026CN

N8T20

N8T26

74367

DM8098

1488

1489

D-3207A

C-3404

1.70 2.50 3.50 2.45 .90 .90 1.95 1.95 2.00 3.95

P-3408A

5.00

P-4201

4.95

MM-5320

7.50

MM-5369

1.90

DM-8I30

2.90

DM8131

2.75

DM-8831

2.50

DM-8833

2.50

DM-8835

2.50

SN74LS367

.90

SN74LS368

.90

KIM

KIM-1

6502

6520

6522

6530-002

6530-003

6530-004

6530-005

USRT

S-2350 WD1671B

245.00 12.95 9.00 9.25 15.95 15.95 15.95 15.95

10.95 29.95

WAVEFORM GENERATOR

8038 4.00

MC4024 2.50

566 1.75

TV Game Chip

TMS1955NL

Now Only $10.95

PerSci DISK AND CONTROLLER

Use the PerSci Disk and Controller now with the Info 2000 Adapter for the S-100 Bus.

INFO 2000 "SPECIAL"

(includes Model 277 Dual Drive, Model 1070

Controller, Case with power supply and fan,

and cable) $2,150

Model 277 Dual Diskette Drive $1,130

Model 1070 Controller $740

Slimline case with power supply and fan $280

Adapter for the S-100 Bus (Kit) $120

JADE PARALLEL/SERIAL INTERFACE KIT

$124.95 KIT

JADE

VIDEO INTERFACE KIT

$89.95 KIT

8K STATIC RAM BOARD

ASSEMBLED & TESTED

250ns. 350ns. 450ns.

199.95 189.95 $169.95

* WILL WORK WITH NO FRONT PANEL

* FULL DOCUMENTATION

* FULLY BUFFERED

* SIOO DESIGN

* ADEQUATELY BYPASSED

* LOW POWER SCHOTTKY SUPPORT IC'S

KIT

250ns. 350ns. 450ns.

169.95

1139.95

$129.95

IMSAI/ALTAIR

S-100

COMPATIBLE

JADEZ80

KIT

-with PROVISIONS for

ONBOARD 2708 and POWER ON JUMP

(2MHZ)

$135.00 EA. $149.95 EA,

BARE BOARD $35.00

(4MHZ)

IMSAI/ALTAIR

S-100

COMPATIBLE

JADE 8080A KIT

- WITH EIGHT LEVEL VECTOR INTERRUPT

$110.00 KIT

BARE BOARD $35.00

Computer Products

5351 WEST 144th STREET

LAWNDALE, CALIFORNIA 90260

(2131 679-3313

RETAIL STORE HOURS M-F 9-7 SAT. 9-5 Discounts available at OEM quantities. Add $1.25 for shipping. California residents add 6% sales tax.

CATALOG FREE WITH $10.00 ORDER

Circle 54 on inquiry card.

BYTE lanuarv 1978 181

What's New?

PERIPHERALS

Experiment with This Keyboard

Print 9 Part Forms

Multiple forms of up to nine parts, such as airline tickets, invoices and warehousing slips, can be handled by this terminal. The Terminet Multi-Form Printer (MFP) prints 80 or 132 characters per line on 8.5 by 11 inch (21.6 by 27.9 cm) paper at 30 characters per second. Other options include magnetic or paper tape and TWX Direct Distance Dial (DDD) capability. The MFP is $1675 with 30 to 60 days delivery, or $3220 with a single magnetic cassette drive, from General Electric Data Communications Dept, AS&P, Waynesboro VA 22980, (703) 942-8161.

Circle 581 on inquiry card.

Selectric Terminal Features Microprocessor

This device uses a built-in microprocessor to make a Selectric typewriter behave like a standard ASCII terminal. It offers an RS232 interface and is fully buffered, with switch selectable data rates of 110, 134.5, 150 and 300 bps. When off line the terminal can be used as a standard office typewriter. Since the terminal employs a microprocessor it can be modified to meet special

Cassette Interface for Altair 680b

.&&-*

'.'■■■

'' : ' ■;:;-'■

This board provides an audio cassette interface using the Kansas City recording standard for the MITS Altair 680b computer. The board includes a digital demodulator and a motor control circuit for starting and stopping tape motion. Complete documentation including test point waveforms is provided. Altair 680b BASIC Version 1.2 provides facilities for saving and loading software using the cassette interface, and is available on an audio cassette. The 680b KCACR is available from MITS, 2450 Alamo SE, Albuquerque NM 87106."

Circle 585 on inquiry card.

Cassette Storage for Terminals

This tape cassette drive is designed to operate with terminals and data collection devices. It offers an RS232C interface running at 110 or 300 bps. The Model 815 Datacassettc weighs only 6 pounds (2.7 kg) and is priced at $950. A battery operated model, weighing 10 pounds, (4.5 kg) is priced at $1095. Delivery time is 45 days, from Techtran Industries Inc, 200 Commerce Dr, Rochester NY 14623, (716) 334-9640."

Circle 586.0H inquiry card.

interfacing requirements, and is available with two empty card slots for user supplied interface circuits. The unit is priced at $2125 in single quantities with 60 day delivery; attractive OEM discount schedules are also available, from CPT Corporation, 1001 S 2nd St, Hopkins MN 55343, (612) 935-0381. ■

Circle 582 on inquiry card.

This user definable keyboard is ideal for the experimenter who wants to use the full APL character set, a special notation for music, or something more exotic. 100 keys are included with hot stamped letters, and 90 keys may be encoded by the user into any configuration of eight bits. Or, some keys may be used as separate switch closures to control external circuitry. Ten keys are used to directly control the eight encoding bits. Facilities are included for shifting character codes (as between upper and lower case), an electronic shift lock, and positive and negative strobe signals. Eight LEDs are provided for display of the encoding bits, and 12 additional LEDs can be used for status display. The keyboard can be configured to transmit the full 128 character ASCII set with 25 keys left over for special functions. All decoding is done with a diode matrix. The keyboard is available from Computer Electronics Inc, Box 4386, 37 Joseph Ct, San Rafael CA 94903, (415) 472-2425."

Circle 583 on inquiry card.

Versatile Video Memory Board

The Solid State Music VB1 video interface board for the Altair (S-100) bus offers 16 lines of 32 or 64 characters, upper case, lower case and Greek letters, video inversion (black on white or white on black), and 128 by 48 graphics. Software is included for cursor control, scrolling and graphics display. Output of the board can be parallel or composite video, suitable for a video monitor. The VB1 is $189.95 as a kit or $264.95 assembled and tested from Solid State Music, 2102A Walsh Av, Santa Clara CA 95050, (408) 246-2707."

Circle 534 on inquiry card.

182

BYTE January 197S

SN7400N

SN7401N SN7402N SN74G3N SN74Q4N SN74Q5N SN7406N SN7407N SN7408N SN7409N SN741QN SN7411N SN7412N SN7413N SN7414N SN7416N SN7417N SN7420N SN7421N SN7422N SN7423N SN7425N SN7426N SN7427N SN7429N SH7430N SN7432N SN7437N SN7438N SN7439N SN744QN SN7441N SN7442N SN7443N SN7444N SN7445N SN7446N SN7447N SN7446N SN745QN SN7451N SN7453N SN7454N SN7459A SN7460N SN7470N

CD4000

CD4Q01

C04002 ■

CD4006

CD4007

C040Q9

CD40IO

CD40I1

CD4012

CD4013

CD4014

CD40I5

CD4016

CO4017

CD4018

CD4019

CD402Q

CD4021

C04D22

CD4023

CD4024

CD4D25

C04026

CD4027

CD4028

CD4029

CD403O

CD4035

CD4040

CO4041

CD4042

CD4043

7400N TTL

SN7472N

.39

SN7473N

.39

SN7474N

.35

SN7475N'

.50

SN7476N

,35

SN7479N

5.00

SN7480N

.50

SN74S2N

.99

SN74B3N

.70

SN7485N

.89

SN74B6N

.39

SN7488N

350

SN7489N

2.49

SN7490N

.45

SN7491N

.75

SN7492N

.49

SN7493N

.49

SN7494N

.79

SN7495N

.79

SN7496N

.79

SN7497N

3.00

SN74100N

1.25

5N74107N

.39

SN74109N

.95

SN74116N

1.95

SN74121N

,39

SN74122N

.39

SN74123N

.50

SN74125N

.60

SN74126N

.50

SN74132N

1.25

SN74136N

.95

SN74141N

1.15

SN74142N

2.95

SN74143N

3.25

SN74144N

3.00

SN74145N

1.15

SN74147N

2.35

SN74148N

2.00

SN74150N

1.25

SN74151N

.79

SN74153N

Rfl

SN74154N

1.25

SN74155N

.89

SN74156N

.69

SN74157N

.89

SN74160N SN74161N SN74162N SN74163N SN74164N SN74165N SN74166N SN74167N SN74170N SN74172N SN74173N SN74174N SN74175N SN74176N SN74177N SN74179N SN 741 BON SN74181N SN74182N SN74184N SN74185N SN741B6N SN741B7N SN74188N SN74190N SN74191N SN74192N SN74193N SN74194N SN74195N SN74196N SN74197N SN74198N SN74199N SN7420QN SN74251N SN74279N SN74283N SN742B4N SN74285N SN74365N SN74366N SN74367N SN74368N SN74390N SN74393N

20% Discount (or 100 Combined 7400's

CMOS

CD4044

,89

C04046

1.79

CD4047

2,50

CD4048

1.35

CD4049

.49

CD4050

.49

CD4051

1 19

C04053

1.19

CD4056

1.49

CD4059

9.95

CD4060

1.49

CD4066

79

CD4068

.39

C04069

.45

CD4070

.55

CD4071

.23

CD4072

.49

CO4078

1.39

C04081

.23

CO4082

.23

CD4098

2.49

MC14409

14,95

MC14410

14.95

MC14411

14.95

MC14419

4.95

MC14506

.75

MC14507

.99

CD4508

3,95

CD4510

1.39

CD4511

1.29

CD4515

2.95

CD4518

1.29

CD4520 1.29

MC14562 14.50 CD4566 2.25

MC14583 3.50

74CD0 Sariat 74C00 .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

74CT07 1.25

74C151 2,90

74C154 3.00

74C157 74C1G0 74C161 74C163 74C1B4 74C173 74C193 74C195 80C95 80C97

3.25 3.25

3.00 3.25

LM3U0H

LM301H

LM301CN

LM302H

LM304H

LW305H

LM307CN

LM308H

LM308CV

LM309H

IM309K

LM310CN

LM311H

LM311N

LM317K

LM318CN

LM319N

LM320K-5

LM320K.5.2

LM320K-12

LM320K-15

I.M32QT-5

LM320T-5.2

LM320T-8

LM320T-12

LM320M5

LM320T-18

LM320T-24

LM323K.5

LM324N

LM339N

LM340K-5

LM34CK-6

LM340KB

LM340K-12

LM340K-15

LM340K-18

LM340K-24

LM340T-5

LM340T-6

1.15 3.25

LINEAR

LM340T-8 125

LM340T-12 125

LM340T-15 125

LM340T-18 1.25

LM340T-24 1.25

LM350N 1.00

LM351CN 65

78MG 1.75

LM370N

LM373N

LM377N

LM3B0H

LM380CN

LM381N

LM382N

NE5Q1K

NE51GA

NE529A

NE531H

NE536T

WE540L

NE550N

NE555V

NE560B

NE561B

NE562B

NE565H

NE565N

NE566CN

NE567H

NE567V

LM703CN

LM709H

LM709N

LM710N

LM711N

LM723H

LM723N

LM733N

2.95

LM739N LM741CH LM741CN LM741-14N LM747H LM747N LM748H LM74BN LM1303N LM1304N LM1305N LM1307N LM1310N LM1351N 1.65 LMI414N 1.75 LMH5BCN .59 LM1496N .95

LM1556V 1.75 LM2111N 1.95 LM2901N 2.95 LM3053 1.50

LM3065N .69

LM3900N(3401).49 LM3905N ,89

LM3909 1.25

LM5556N 1,85 MC5558V 1.00 LM7525N .90

LM7534N ,75

LM75450 75451CN 75452CN 75453CN 75454CN 75491CN 75492CN 75494CN RC4194 RC4195

74LS0O 74LS02 74LS03 74LS04 74LS05 74LS0B 74L510 74LSI3 74LS14 74LS20 741S26 74LS27 74LS28 74LS30 74LS32 74LS40 74LS42 74LS47 74LS51 74LS55 74LS73 74LS74

■- 74LS00 TTL

74LS75 74LS76 74LS83 74LS85 74LS86 74LS90 74LS92 74LS93 74LS95 74LS96 74LS107 74LS109 74LS112 74LS123 74LS132 74LSI36 74LS138 74LSI39 74LS151 74LS153

74LS155 74LS157 74LS160 74LS161 74LS162 74LS163 74LS164 74LS175 74LS181 74LS190 74LS191 74LS192 74LS193 74LS194 74LS195 741.S253 74LS257 74LS260 74LS279 74LS367 74LS36B 74LS670

BUGBOOK

i, wmhtj if go

117.00 per ibi

Sold u i mi ir.tss two books oullme ovtf 90 eiptnmgnls aitignid i

tie nsotf ill lu will nscj la know iooui TTL logic cnipt to um ih»m In cor I unci on with miaopracessor syitimi You'll lum iDoi'i me basic conresis £ digital slsdmnlcs IncJudiiig giiai, (lip.hops. Iiicfies. tiuwi dioadirt. multi p!e«f5.tftmultipleim, LED displays. RAM'j, HOM'i, jnd much muohmoit

BUUBO0K III S5.00

b| Pltlf n. Bony. Dulfl 0. Iirnn. WMHTJ This volumi ttill lotroduce you la Itie taaulous UART chip — thai «ll Importjn! Irldiic* tMtwNn dill urnilnils. etc . and yout mlcfocomputtr. Il ilso covers curfsrtl loops, and Ifta US ?32C Iniirijco ttandlfd. Particularly recommended lor any HTTV enthusiast.

THE 555 TIMER APPLICATIONS

SOURCEBOOK WITH EXPERIMENTS

by Howaid M. Berlin

This book shows you whil the 555 timet Is and how to uie H I

100 various design Itchnlques, equations and graphs la crtat

timers, generators, power supplies, measuremeni and contn

games, clrcuils tar the name and auiompdilE. pnologra;

BUGBOOK III SiTSfl

by Peter II. ftonv, David 0. Lifiin. WB4HYJ. Jonathan A. THm Here Is the book trial puis 11 all laoethor. Besides hiving much valuable toil there are a senes ol experiments In which the readef completely explores the B030 chip pin by pin and introduces you lb iht Mark BO mlcpcampt" unirjue easily interlaced system. II It recommended thai you have the ground on Hie BUGQOOKS 1111 before proceeding with BUQBOOK III.

BUGBOOK V aBd VI

OP AMP MANUAL

519.00 per tat

by David □. Unm. Piter ft Rony. Jonilhin A. Tltui i Eipenmenu In digital electronics, SOMA microcomputer procfimmlng and SOMA microcomputer interfacing An integrated approach to wit-Instructed basic digital electronics, breadboards and UOBCA interfaong.'piogiamn Bugbook VI Integrates the digilil concepts ol Bugbook V Into a Ireatmer BOSOA microcomputer pfogrammmg and interfacing Detail & laboratory eipenments Incltided with each book

A program tor entering, debugging ai

CM08-M — DESIGNERS PRIMER ANO HANDBOOK

SHrli ai basic structure ol CMOS devices through integration ir

$6.00

COMPLETE MANUAL FOR DIGITAL CLOCKS by John Weill and John Brooks

Familiarizes technician or tiobbyisl wild basic iritrones behind digital clocks. Includes trouble shooing guides, basic

characteristics ot clocks, soldering techniques, clock component da:a sheeis and conslruclion lips. S3.95

XC209 XC209 XC209 XC209

XC22 XC22 XC22 XC22 SSL-22

Green Orange

Green Vellaw Orange

DISCRETE LEDS

XC526 XC526 XC526 XC526

Green Yellow Clear

XC55G XC556 XC556

Green Yellow

Orange Clear

Yellow . Orange

S/S1 MV50 ■ Red - 6/S1

7/S1

TYPE MAN 1 MAN 2 MAN 3 MAN * MAN 7 MAN 7G MAN 7Y MAN 52 MAN 71 MAN 72 MAN 74 MAN 81 MAN 62 MAN 64 MAN 3620 MAN 3630 MAN 3640 MAN 4610 MAN 4540 MAN 4710 MAN 4730 MAN 4740 MAN 4810 MAN'6610

DISPLAY LEDS

POLARITY Common Anode-ied 5 17 Dot Matrix-red Common Cathode-red Common Cathode-rad Common Anode-red Corrmon Anode-green Common Anode-yellow Corrmon Anode-green Common Anode-red Common Annde-red Common Cathode-red Common Anode-yellow Common Anode-yellow Common Cathode-yellow Common Anode-orange Common Anode-orange *1 Common Cathode-orange Common Anode-orange Common Calnode -orange Common Anode-red :1 Common Anode-red Common Cathode-fed Common Anode-yellow Common Anode-orange-0 D

?70

1,95

100

1 00

300

1 25

300

1.25

300

i SO

TYPE

MAN 6630

MAN 6640

MAN 6650

MAN 6660

MAN 6680

MAN 6710

MAN 6730

MAN 6740

MAN 6750

MAN 6760

MAN 6780

DL701

DL702

OL704

DL707

DL741

DL746

DL747

DL749

DL750

DL33B

FIJD70

FUD503

FND507

5062-7300

5002-7302

5082-7304

5082-7340

CA3013 CA3023 CA3035 CA3039 CA3046 CA3053 CA3059 CA3060 CA3080 CA3081

2 15 CA3082 2.56 CA3083 2.48 CA3086 1.35 CA3089 ] 30 CA3091 I 50 CA3102

3 25 CA3123 325 CA3130

85 CA3140

200 CA3401

CA3600

POLARITY

Common Anode-orange Common Cathode-orange-D.O. Common Cathode-orange * 1 Common Anode-orange Common Cathode-orange Common Anode-ted-O.D. Common Anode-red -1 Common Cathode-red-D.D Common Cathode-red -! Common Anode-red Common Cathode-red Common Anode-red ^1 Common Cathode-red Common Cathode-red Common Anode-red Common A node-red Common Anode-red ±1 Common Anode-red Common Cathode-red s 1 Common Calhode-red Common CalhDde-red Common Cathode (FND359) Common Cathode (FND500) Common Anode CFND510) 4 x 7 Sgl. Diojt-RHDP 4 x 7 Sgl. Digit-LHDP Oerrange character (*1) 4 x 7 Sgl Digit-Hexadecimal

19.95 19.95 15.00 22.50

XR-2206KB Kit $19.95

WAVEFORM GENERATORS

XR-205 £8.40

XR-2206CP 5.50

XH-2207CP 3 05

STEREO DECODERS XR-1310CP S3.20

XR-1310EP 3 20

XR-1800P 3.20

XR-2567 2 99

XR-2206KA Kit $14.95

EXAR

S .49

320

TIMERS XR-555CP XR-320P XR-556CP XI1-3556CP XR-2240CP PHASE LOCKED LOOPS XR-210 5 20

XR-215 660

XR-5C7CP 1.95

XR-567CT 1 70

IC SOLDERTAIL — LOW PROFILE (TIN) SOCKETS

16 pm 18 pin 22 pm

14 Din

16 pin

10 nin

16 pin IB pin

35 SOLDERTAIL STANDARD (TIN)

24 pin 28 pin 36 pin 40 pm

32

36 pin 40 pin

SOLDERTAIL STANDARD (GOLD)

24 pin

28 pin 36 pin 40 pin

WIRE WRAP SOCKETS (GOLD) LEVEL #3

22 pin 24 pin 28 pin 36 pin 40 pin

50 PCS. RESISTOR ASSORTMENTS $1.75 PER ASST.

10 OHM 12 OHM 15 OHM 1BDHM 22 OHM ASST. 1

ASST. 2

27 OHM 33 OHM 39 OHM -17 OHM 56 OHM

68 OHM 82 OHM 100 OHM 120 OHM 150 OHM

180 OHM 220 OHM 270 OHM 330 OHM 390 OHM

470 OHM 560 OHM 680 OHM 820 OHM ■ IK

1 2K 1 5K 1 BK 2.2K 2 7K

3 3K

S2K

3 9K

»7K

220K 560K 1 5M 3 9M

5 6K

330K B20K 2 2M 5 6M

1/4 WATT 5% SO PCS.

1/4 WATT 5% 50 PCS

1/4 WATT 5% 50 PCS.

1/4 WATT 5% 50 PCS.

1/4 WATT 5% SO PCS.

1/4 WATT 5% SO PCS.

1/4 WATT 5% 50 PCS.

ASST. 8R Includes Resistor Assortments 1-7 (350 PCS.) $9.95 ea.

S5.00 Minimum Order — U.S. Funds Only California Reildenti — Add 6% Sales Tax

Spec StiBols - 25c — Sand 35c Stamp (or 1978 Catalog Dealer Information Available

1021-A HOWARD AVE., SAN CARLOS. CA. 94070

PHONE ORDERS WELCOME — (415) 592-8097

AH AdVfrtlMd Prlotm Good Thru January

HOBBY-WRAP TOOL-BW-630

Battery Operated (Size C) Weighs ONLY 11 Ounces Wraps 30 AWG Wire onto Standard DIP Sockets (.025 inch) Complete with built-in bit and sleeve

WIRE-WRAP KIT — WK-2-W WRAP . STRIP . UNWRAP

• Tool for 30 AWG Wire

• Roll ot 50 Ft. White or Blue 30 AWG Wire

• 50 pes. each 1", 2". 3" & A" lengths — pre-stripped wire.

$11.95

WIRE WRAP TOOL WSU-30 WRAP . STRIP . UNWRAP $5.95

WIRE WRAP WIRE — 30 AWG

25ft. min. $1.25 50ft. $1.95 100ft. J2.95 1000ft. S15.00 SPECIFY COLOR — White - Yellow • Red - Green - Blue - Black

WIRE DISPENSER — WD-30

■ 50 ft. roll 30 AWG KYNAR wire wrap wire $3.45 ea. . Cuts wire to desired length

■ Strips 1" of insulation Specify — Blue-Yellow-White-Red

REPLACEMENT DISPENSER SPOOLS FOR WD 30

Specify blue, yellow, white or red

S1.9D/spool

DIP/IC INSERTION TOOL WITH PIN STRAIGHTEN

Inserts both 14 and 16 pin packages. Pin Straightener

built into Handle.

Model INS-1416 $3.49/ea

HP 5082-7400 SERIES — MULTI-DIGIT

• W lit. • Common Cathode Red 2 Digit

• 3-5 volts (a 5 mils/second 3 Digit

• 7 segment Monolithic 4 Digit

• Dip Package 5 Digit

1D or more

S .79 .69 .89 .79

.99 .89 1.19 .99

TV GAME CHIP SET — $9.95

Includes AY-3-8500-1 Chip and 2.010 mhz crystal (2.010 crystal — $1.95 ea/AY-3-8500-1 Chip — $8.95 ea.)

TYPE

1N746 1N751A 1N752 1N753 1N754 1N959 1N965B 1N5232 1N5234 1N5235 IN5236 IN456 1N45B 1N485A 1N4O01 1N4002 1N40O3 1N4004

ZENERS

VOLTS W

3.3 400mm

5.1 400m 5.6 400m

6.2 400m 6.8 400m 8.2 400m 15 400m 5.6 500m 6.2 500m 6.8 500m 7.5 500m 25 40m 150 7m 180 10m

50 PIV 1 AMP

100 PIV 1 AMP

200 PIV 1 AMP

400 PIV 1 AMP

DIODES —

PRICE TYPE

4/1.00 1N4005 1N4006

4/1 00 4/1.00

m. oo

4/1.00

RECTIFIERS

VOLTS W

600 PIV 1 AMP BOO PIV 1 AMP 00 1N4007 1000 PIV 1 AMP 200m

1N36O0

1N4148

1N4154

1N4305

1N4734

28 1N4735

28 1N4736

28 1N4738

6/1.00 1N4742

6/1.00 1N4744

6/1.00 IN1183

12/1.00 IN1184

12/1.00 1N1185

12/1.00 1N11B6

12/1.00 1N1188

10m 10m

PRICE

10/1 00 10/1.00 10/1.00 6/1.00 15/1.00 12/1.00

1w

12

15 Iw

50 PIV 35 AMP

100 PIV 35 AMP

ISO PIV 35 AMP

200 PIV 35 AMP

400 PIV 35 AMP

SCR AND FW BRIDGE RECTIFIERS

C36D

C38M

2N2328

MDA 980-1 12A@50V

MDA 980-3 12A@200V

400V 20CV 6A @ 200V

MPSMK 5fH.M

MPS AM 5.-S1 «

2N91B 41100

ZN2219A 3/1100

2NZ2J1 ttttM

2NI222A 511.00

2N2369 5/11.00

2N23GM 4/11.00

2N24S4 4A1.00

2N2906A 4/J1.00

2N2907A S/I1 00

2M2925 5/J1.0Q

2NM35 2/J1.00

3N3Q5S t M

MIC 2955 II .2$ MJ£3055 2N3392 2NJ39B PHJ567 PN3588

TRANSISTORS

5/11 00 5/11 00 3/JI.00

4/11.00

4fti.oo

2N3702 2N37W 2tW05 2N3/06 2N37U7 2K3711 2M372* 2N3725 2N3772 2N3903 2N3904

2N40I3 3ft! 00

f

2NU02 2M403 2N4409

2N»37 2MS088 2N50IM 2N5129 2H5I38 2N5I39

5,11.00

Mi oo

12 00

2N52I0

2N5432

2NS449

2NS95I 5/S1.00

CIMBISCn 2/J1.00

40409 1175

40410 $1.76

CAPACITOR

10 pi

22 pt

47 pt 100 pt 220 pt 470 pi

OOlmt.

.0022

,0047ml

01ml

.1/35V .15/35V .22/35V .33/35V .47/35V .68/35V 1.0/35V

50 VOLT CERAMIC DISC CAPACITORS

1-9 10-49 50-100 1-9 10-4

.05 .04 .03 .00 VF .05 .04

.05 .04 .03 0047^F .05 .04

.05 .04 .03 OVF .05 .04

.05 .04 .03 022^F 06 .05

.05 .04 .03 .047^F .06 .05

.05 .04 .035 VF .12 .09

1D0 VOLT MYLAR FILM CAPACITORS

.12 10 07 022ml .13 .11

.12 .10 .07 ,047m) .21 .17

.12 10 .07 .imf .27 23

.12 .10 .07 .22ml .33 .27

+20% DIPPED TANTALUMS (SOLID) CAPACITORS

.28 .23 .17 1.5/35V .30 ,26

.28 .23 .17 2.2/25V .31 .27

28 .23 .17 3.3/25V .31 .27

.28 .23 17 4.7/25V 32 .28

.26 .23 .17 6.B/25V .36 .31

.28 .23 .17 10/25V .40 .35

.28 .23 .17 15/2SV .63 .50 MINIATURE ALUMINUM ELECTROLYTIC CAPACITORS

CORNER

Axial Lead .47/50V .15 1.0/50V

13

.10

3.3/50V

4.7/25V

10/25V

10/50V

22/25V

22/50V

47/25V

47/50V

100/25V

100/50V

220/25V

220/50V

470/25V

10O0/16V

2200/16V

.47/25V .47/50V 1.0/16V I.0/25V 1.0/50V 4.7/16V 4.7/25V 4.7/50V 10/16V 10/25V IO/50V 47/50V 100/16V 1O0/25V 1O0/50V 220/16V 470/25V

Radial Lean .15

Circle 55 on inquiry card.

BYTC January 1978 183

What's New?

PERIPHERALS

Control 128 Devices from One Port

EROM Programmer for Micro Designer

New Plasma Display Xerminal

This accessory for the Mini-Micro Designer (MMD-1) microcomputer trainer makes it possible to program a 256 byte 1702A erasable read only memory (EROM) in about 4 minutes. Programming data can be obtained from any block of memory in the MMD-1 or from a master EROM which is to be copied. After programming, the contents of the EROM can be verified against the source data. The programmer is attached to the MMD-1 through an included 40 pin connector and ribbon cable assembly. The MMD-PP programmer is $166 in kit form or $222 assembled, from E & L Instruments Inc, 61 First St, Derby CT 06418, (203) 735-8774."

Circle 588 on inquiry card.

Instrumentation Printer Offers Serial Interface

This unit prints up to 21 columns of numeric and limited alphabetic data at a rate of 3 lines per second. The printing mechanism has a 5 million line life and uses a cassette loaded ink ribbon. Options include a date and time clock, event counter and paper low indicator. RS232 and 20 mA current loop interfaces simplify connection to a microprocessor. The MDC 300 printer starts at $595 in single quantities from Master Digital Corporation, 1308-F Logan Av, Costa Mesa CA 92626, (714) 751-8271.

Circle 589 on inquiry card.

This new plasma display terminal is designed to compete with ruggedized alphanumeric and graphic cathode ray tube (CRT) terminals in the $8,000 to $15,000 price range. The plasma display features a neon orange color twice as bright as a CRT screen, with a 20 to 1 contrast ratio. The flat display plate eliminates distortion and allows a wide viewing angle, while the 50,000 Hz "refresh" sustaining voltage produces a flicker free display fixed in place by the matrix of lines "printed" on the glass plates, with a resolution equivalent to that of a 60 mesh halftone screen. The display panel itself is only a half inch deep, and it can be combined with back projection techniques to produce a display partly from film and partly from the computer, or "drawn" by the operator.

The plasma display panel consists of two glass plates printed with parallel conductor lines at right angles to each other. The space between the plates is filled with neon gas, and an oscillating voltage is applied across the gap, just below the threshold required to ionize the gas. When voltages are applied across two intersecting lines, a glowing plasma path is established at the point of intersection and thereafter sustained by the oscillating voltage. The neon "dot" can be selectively erased by dropping the voltage across the intersecting lines below the sustaining level. This selective erasing capability makes the plasma display especially suitable for real time animation.

Developed at the University of Illinois as part of the PLATO computer aided instruction system, plasma display panels are now produced by several manufacturers in the US and abroad. The Model PD 2000 terminal (pictured) incorporates the plasma panel in a commercial terminal design. Also offered are the PD 1000 and the PD 3000, the latter designed for airborne or shipboard environments. The terminals are available from Interstate Electronics Corporation, 707 E Vermont Av, POB 3117, Anaheim CA 92803, (714) 772-2811."

Circle 587 on inquiry card.

This interface system allows you to control up to 128 separate devices or circuits through one 8 bit port or an ASCII serial interface. Devices controlled may include room lights, sprinkler systems or laboratory experiments. The system consists of a mother board and a series of interface boards, with LEDs to display the status of each board and the 8 bit bus. An enclosure is available which allows all of the LEDs to show through a red Plexiglas front panel. The XPRES interface system Is available from CRC Engineering Inc, POB 6263, Bellcvue WA 98007, (206) 885-7038."

Circle 590 on inquiry card.

Add a Cassette or Plotter to Your Teletype

This adapter provides an auxiliary input output port on a Model 33 Teletype, making it possible to add a tape cassette, XY plotter, or other device to the Teleprinter system. The adapter also works with the Teletype in local mode. The unit mounts in the pedestal of the Teletype and provides an RS232 interface terminating in a DB25S receptacle for the auxiliary equipment. Priced at $110, the adapter is available as catalog number 312 A 0566-10 from United Data Services Company Inc, 3024 N 33rd Dr, Phoenix AZ 85017, (602) 269-2449."

Circle 591 on inquiry card.

184

BYTE January 1978

/H

RRFAD ROARD Eayi kil contains 350 wires

t»r,t-«L' uw*-»iiw cu( ,e u dj((ere1| leng,hs

JUMPER WIRE KIT,f0-G"o5Q

Each v

; skipped and

JK1 ....$10.00/kit

the leads are bent 90° loi easy insertion.

Wire lengih is classified by color coding.

All wire is solid tinned 22 gauge with PVC insulation

The wires come Backed in it plastic box.

MICROPROCESSOR COMPONENTS

Hcnoi/cT Ma,es w'lh !w0 rows Df -^'s(''or OUUIttl dia. posts on patterns of .100"

lliniinrnp centers and shielded receptacles.

JUIVIrCno Probe access holes in back. Choice

ol 6" or 18" length. Pari No. No. of Contacts Length Price

924003-18R 26 18" S 5.38 ea.

924003-06R 26 6" 4.78 ea.

924005-1SH 40 18" 8.27 ea.

924005-06R 40 6" 7.33 ea.

924006-18R 50 18" 10.31 ea.

924006-06R 50 6" 9.15 ea.

HJUMPER

Solder to PC boards for instant

plug-in access via socket-connector

CAT1CDC jumpers. .025" sq. posts. Choice

ntMUtnO of straight or right angle.

Pan No. No. ol Posts Angle

923863-R 923873-R 923865-R 923875-R 923866-R 923876-R

26 26 40 40 50 50

straight right angle straight right angle straight right angle

Price

S1.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. Mates with standard .10" x .10" dual row connectors (i.e. 3m, Ainsley, etc.) Permits quick testing of inaccessible lines. Pant No.: 922576-26 No. of contacts; 26 Price S6.90 ea

H INTRA-SWITCH

Permits instant line-by-line switching for diagnostic or QA testing. Switches actuated with pencil Dr probe tip. Mates with standard .10" x .10" dual-row connectors. Low profile design Switch buttons recessed to eliminate accidental switching. Part No.: IS-26 No. ol contacts: 26 Price S13.80 ea.

~^~y

^CRYSTALS ir~

,_■?*_ THESE FREQUENCIES ONLY """%'

Plrt # Frequency Case/Style Price

CY1A 1000 MHz HC33/U S5.95

CY2A 2 000 MHz HC33U S5.95

ICY2 01

j 010 MHz

HC33/U

CY3A CY7A CY12A CY14A CY19A CY22A CY30B

1 000 MHz 5 000 MHz 10 000 MHz 14 31618 MHz 18 000 MHz 20.000 MHz 32 000 MHz

HC18'U HC1S.-U HC18U HC18U HC18iU HCIB'U HC1B/U

$1 95!

S4.95

54.95 S4.95 54 95 $4.85 54.95 S4.95

CONNECTORS

PRINTED CIRCUIT EDGE-CARD

156 Spacing-Tin-Double Read-Out Bilurcaled Contacts — Fits 054 to .070 P.C 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/100A uoo sracirai PINS (Wire Wrap) $6.95

25 PIN-D SUBMINATURE (RS232)

0B25P PLUG $3.25

DB25S SOCKET $4.95

205-CB

HEAT SINKS#*'

205-CB Beryllium Copper w-black finish for T0-5 291-.36H Aluminum forT0-220 Transistors 8

Regulators 680-.75A Black Anodized Aluminum for T0-3 Dude 4 Black Anodized Aluminum — predrilled

mounting holes for TO-3 — A% x 1'A x 2"

$ .25

$ .25

S1.6D

S1.75

Etching KilS (cannot be shipped via a

32 X A-1 P C Etch Materials KH

enough for 5 circui! boards 27 X A-1 Etched Circuit Kit

Plugboards 3662

22/44

8800V

Complete k:

-65X

5X

- only add » i*16 Epoxy glass

© P§m

p.Pafietn-44PC Tabs-spaced 156 Mating connector lor plugboard — 22 pin double readout Universal Microcomputer/Processo.' plugboard — Epoxy Glass — complete with fieatsmk and mounting hardware 10 X 1/16 cooper clad

$29.95 ea. S 9.95 ea. S 6.95 ea. S 2.95 ea. $19.95 ea.

5 313 X

1/16 VECTOR BOARD

Part No 64P44 062XXXP 169P44G62XXXP 64P44 062WE B4P44 062WE 169P44 062WE 169P84 062WE 169P44 062WEC1

63 KEY KEYBOARD

HDD1S5 Encoder Chip (encodes 16 Keys)

_ AY-5-2376 Encoder Chip lencodes B6 Kevsl

$29.95

This keyboard features 63 unen coiled SPST keys unattached ti any kind ol P C B A very solii molded plastic 13" x 4" bas most applications

8212 8214 8216 8224 8228

8080A 2650 PBOBS

250 J 2518 2519 2522 2524 2525 2527 2529 2532 2533

CPU

8 Bit Input/Outpul Priority Interrupt Control Bi-Direct*onal Bus Driver Clock Generator/Driver

$16.00 CDP1802 CPU

4.95 MC6800 8 Bit MPU

15.95 MC6820 Periph. Interface Adapter

6.95 MC6810AP1 128 x 8 Static RAM

9.95 MC6830L8 1024x8 Bit ROM

System Controller Bus Driver 10-95 Z80

CPU

RAM'S

$19.95 24.95 15.00 6.00 15.00 29.95

2513(2140)

251313021)

2516

MM5230

CPU

SRS

i02J Dynamic He. 32 BIT He> 40 BIT Dual 132 Bi!SSR 512 Dynamic 1024 O/r.amic Dual 256 BIT Dual 512 HIT Quad SO BIT 102J S'anc Fito

16 n 4 Reg UMTS

30K Baud

RDM'S Char Gen -upper case Char Gen -lower case Char Gen 2048 SIT {515 X 4 on 256 K

16.00 26 50 29.95

8599 16 . 4

Sialic

3 49

21L02'91L02 1024 »

Static

2 25

7-1200 256 x 1

Sialic

6 95

93421 256 * 1

Sialic

295

Dynamic

2 tor t 00

UPD414(21D4)4K

1 ffl?A 204 B

5203 20-18

82S23 3? 1 8

B2S123 32 < B 74S2B7

3601

rCTia

."■p ■

Dynamic 16 Pin PROMS fames

Open C Instate Stein

2716 6301-1 6330 1

Eorom

Tri -Stale Bipolar

Open Collector Bipolar

3495

SPECIAL REQUESTED ITEMS

FCM3817

AY-3-8500-1

AY-5-9100

AY-5-9200

AY-5-9500

AY-5-2376

9374

testis

11C90

4N33

8T20

8T97

HDD 165

MCM6571

MCM5574

7205

ICM7045

1CM7207

ICM7208

ICM7209

MK50240

DS0O26CH

25.00 MCM6575 13 50 TIL30B

ITEMS

CLOCK CHIPS MM5309 S9.95

19.95 9368

3.95

MM5311

4.95

24.95 LOT 10/111

25.00/sel

MM5312

4.95

7.50 95HB0

11.95

MM5314

4.95

22.00 MC30B1P

3.50

MM5316

6.95

7.50 MC4016 (74416) 7.50

MM5318

9.95

17.50 MC1408L7

8.95

3 75 MC1408L8

9.95

MM5B4I

9.9S

CT7001

5 95

PARATRONICS

Featured on February's Front Cover of Popular Electronics

Logic Analyzer Kit mom no* mdumd

Model 100A

$229.00/kit

I I I I 1

Model lfjrjA assembled 5295.00

Analyzes any type ol digital system Checks data rates in excess of 8 million words per second Trouble Shoot TTL, CMOS, DTL, RTL, Schottky and MOS families Displays 16 logic states up to 8 digits wide See ones and zeros displayed on your CRT, octal or hexadecimal format Tests circuits under actual operating conditions Easy to assemble — comes with step-by-step construction manual which includes 80 pages on logic analyzer operation,

(Model 100A Manual -$4.95)

in vs

!^y.

Some applications are: Troubleshooting microprocessor address, instruction, and data flow Examine contents ol ROMS Tracing operation of control logic Checking counter and shift register operation Monitoring I/O sequences Verifying proper system operations during testing

PARATRONICS TRIGGER EXPANDER - Model 10 Model 10 Kit - $229.00

Adds 16 additional bits. Provides digital delay and qualification of Input clock tS£St!Sw" ~ SZ95"° and 24-bit trigger word. — Connects direct to Model 100A forlntegrated unit). Model 10 Manual — $4.95

RRIUTi . 2E7

Model 2800 S99.95

Comes wiin lest lends. o|icr;i|iii(l manual and spare 'use

3'A-Digii Portable DMM

• Overload Protected

• 3" high LED Display

• Battery or AC operation

• Aulo Zeroing

■ tnw, Wa. 0 1 ohm resolution

• Oveiange reading

• 10 meg input impendence

■ DC Accuracy 1% typical Ranges: DC Voltage zO-lOOOV/

ac Voltage o-ioonv

Freq Response 50-400 HZ DC/AC Current: 0-lOOmA Resistance 0-10 meg ohm Sire: 6.4- x 4 4" x 2'

Accessories: AC Adapter BC-28 $9.00 Rechargeable

Batteries BP-26 20.00 Carrying Case LC-28 7.50

CONTINENTAL SPECIALTIES

PR0TO BOARD 6 Other CS Proto Boards

100 MHz 8-Digit Counter

. 20 Hz-100 MHz Range . Four power souces, i.e.

. .6_ LED Display Patlerics. 110 or 220V with

• Crystal-controlled limebase charger 12V with auio . Fully Automatic lighter a(japlel and external

• Portable —completely 7.2-IOV power supply self-contained MAX-100 (M*M HC

. Size-1.75" x 7.38* mHA IUU $104.95 x 5.63"

mm jp

ACCESSORIES FOR MAX 100: Mobile Chargor Eliminator

use power from car battery Model 100 — CLA S3.9

Charger/Eliminator

use 110 VAC Model 100 — CAI $9.9

S15.95

(6" long X 4" wide)

-4.5" x 6" S 19.95

- 5.8" x 4.5" 29.95

- 7" x 4.5" 39.95

- 9" x 6" 59.95 -9.5"x8" 79.95

- 9.75 x 614 x 2% 80.00 9.75 x 6ft x 2% 129.95

includes power supply)

LOGIC MONITOR

for DTL. HTL. TTL or CMOS Devices

$84.95

PROTO CLIPS 14 PIN $4.50

16 PIN 24 PIN 40 PIN

4.75 8.50 13.75

DESIGN MATES

DM1 - Circuit Designer

$69.95 Function Generator

$74.95 RC Bridge

$74.95

DM2 ■

DM3

CSQT PROTO STRIPS

■Km

:;«: or«

LIT type 0T-59S QT-598 OT-47S OT-47B 0T-35S OT-35B OT-1BS DT-12S 0T-8S OT-7S

590

12 50

Experimenter 300 Experimenter 600

S 9.95 S10.95

$5.00 Minimum Order — U.S. Funds Only California Ratldgnts — Add 6% Salet Tax

Spec Sheets - 25c -~ Send 35« Stamp for 1978 Catalog Dtalsr Information Available

1978

CATALOG

NOW AVAILABLE

1021-A HOWARD AVE., SAN CARLOS, CA. 94070

PHONE ORDERS WELCOME — (415) 592-8097

All Advflrttsad Prlcei Goad Thru January

The Incredible "Pennywhistle 103"

$129.95 Kit Only

The Pennywhlslle 103 is capable ot recording data id and 'rom aurUo iape wilhou! critical speed requirements lor the recorder and il is able ta conni,:iic3ie directly wilh another modem and terminal lor telephone "hamming and communications lor ihe deal In addition, il is free ol critical adjustments and is built wiin non-precision, readily available parts. Data Transmission Metnod Frequency-Shift Keyinrj, t'jli-dopiex (nail-duplex

selectable).

Maximum Data Rate 300 Baud.

Data Formal Asynchronous Serial (return :u mart leva1 reQuireo

between each character). Receive Channel Frequencies .. .2025 Hz lor space; 2225 Hz tor mart*. Transmit Channel Frequencies . .Switch selectable: Low (normal) - 1070 suace.

•270 mark. High = 025 space. 2225 mark.

Receive Sensitivity -46 dbm accouslically coupled.

Transmit LbvbI -15 dbm nominal Ad|iistable from -6 dbm

to -20 dbm Receive Frequency Tolerance ...Frequency relercnce automatically adjusts to

allow for operation between 1800 Hz and 2-100 Hz Digital Data Interlace EIA RS-232C or 20 mA current loop (receiver is

DptOiSOtaied and non-polar).

Power Requirement 120 VAC, smnjc phase. 10 Watts.

Physical All components mount on a single 5" by 9"

printed circuit board All components included. Requires a VOM. Audio Oscillaioi. Fieriunr,- C".in:pr .iiiivor Oscilloscope to aliqn

(tor AM/FM 8-Track Stereo Receiver With BSR Changer

PLL System

• BSR Record Changer

• Slide Controls

• Automatic AFC Control

• 4 Speaker Output

• Walnut finish vinyl covered wood veneer with smoke dust cover

Size: 20"W x 9%"H x 15%"D Model 8365 $149.95

DIGITAL STOPWATCH

• Drighl 6 Digil LEO Display

• Times to 59 minutes 59 59 secends

• Crystal Controlled Time Base ■ Three Stopwalches m One

Times Single Event — Split & Taylor

• Sized 5x2 15 x 90' [4fe ounces]

• Uses 3 Penlite Cells

Kit — $39.95

Assembled — $49.95

Heavy Duty Carry Case $5.95

Slop Watch Chip Only (7205) S19.95

3%DIGIT DPM KIT

9i

Jf

New Bipolar Unit • Auto Polarity

• Auto Zeroing • Low Power

• .5" LED . Single IC Unit Model KB500 DPM Kit $49.00 Model 311D-5C-5V Power Kit $17.50

JE700 clock

The Jt 700 is a low crjsi digital ctock iiu is a vety fitgn quality unit The umt lea a siniuialeo walnut case wiin di iDnsot 6 x2\> i 1 li utilizes; MAN/? high brightness leadnul and th MM53M clock chip

" ' iff* Mi /* ■"■ll™

KIT ONLY $10.95

HEXADECIMAL ENCODER 19-KEY PAD

.1-0 . ABCDEF

• Shrlt Key

• 2 Optional Keys

$10.95 each

INSTRUMENT/CLOCK CASE

Injection molded unit. Complete with red bezeUfc" x 4" x 1-9/16"

$3.95 ea

JE803 PROBE

The Logic P'obe is a umi wnicn is lo' the mosi part indesoensiOle in trouble Shooting logic Families TTL DTL RTL CMOS It detiVet me oower ,i needs to operjle direeily oil ot ine circuit uorle; test drawinq a scant 10 mA mai II uses a MAN3 reaOoul 10 indicate any ol the lollnwing states by these symbols (Hi i (LOW} ■ o (PULSE) ■ P Ihe Probe can delect high Ireguency pulsei. 10 J5 MM; I) Oe used at MOS levels or circuit damage

S9.95 Per Kit

printed circuit board

PL 5V 1A Supply

This is J standard TTL ponsi supply usrtrg Ihe well kriowr LM309S regulator IC in provide a SOhd 1 AMP ol current al 5 volts We try lo make things easy tor you by providing everything you need in one package including the hardware i

$9.95 Per Kit _S

Circle 55 on inquiry card.

BYTE January 1978 185

w$®*w

i_ ——

What's New?

PERIPHERALS

Video Board Features Dedicated Microcomputer

1

_ ,./. '!_ ,

1 :*'if

1 *»i |a i

i/ltll

■ fill

a F iiunir 11

This new video interface board, designed around the Mostek 3870 chip, illustrates how a dedicated microcomputer can be used to reduce costs and implement additional features not easily realized with conventional logic. Operating under the control of the program in its built-in memory, the 3870 helps provide ASCII and Baudot serial interfaces, multiple data rates up to 300 bps, full XY cursor control, screen clear, clear to end of line, page mode and autoscroll. Though the same size as an Altair (S-100) bus, the board uses only the power connections, and includes a rectifier and filter for stand alone use with a 6.3 VAC, 1 A transformer. Designated the SCT-100, the board is available from Vectron, POB 20887, Dallas TX 75220, (214) 350-5291, in three forms: an assembled and tested unit for $185, a complete kit for $155, and a printed circuit board, 3870, and character generator ROM for $85."

Circle 551 on inquiry card.

Video Output for Scope or Monitor

The VDS2K video interface board includes all address decoding necessary for direct display of characters from memory, or for display of characters received one at a time from an IO port, with automatic cursor updating. Video output can be either in the form of a composite video signal, appropriate for a video monitor, or a set of "XYZ" TTL level signals appropriate for the horizontal, vertical and intensity inputs of many oscilloscopes. This Altair (S-100) bus interface displays 30 lines of 64 characters, and also has a 1 28 byte nondisplayable buffer memory. Upper case, lower case and Greek characters are provided in a 7 by 9 dot matrix. The VDS2K kit is $399 from IOR, Box 28823, Dallas TX 75228, (214) 358-2671."

Circle 553 on inquiry card.

A Synthesizer and Music Language

The Solid State Music Synthesizer Board (SB-1) is a waveform synthesizer card designed to interface with the S-100 bus. With this card, a microcomputer may be programmed to play a monophonic solo in an instrumental "voice" that is controlled by software. Polyphonic capability is provided for in the MUX language for multiple cards. The music is written by the user by means of high level language interpreter called MUX which is entered into the system via an ASCII keyboard, paper tape, floppy or other input medium.

The MUX language contains the operational routines and lookup tables to generate the following:

a. the musical note

b. the voicing envelope (attack and decay)

c. loudness or volume commands

d. octave selection (9 octave range)

e. memory retention of two waveforms

f. waveforms selection (voicing change) 8 in memory

g. repetition effects

h. 1 /64th note through whole note

i. dotted note, double dotted note

j. time signature

k. repeat measure

I. key signature

Any 256 byte increment from 8000 hexadecimal to FF00 hexadecimal can be used for this board by presetting a switch on the card. The kit costs $250, and an assembled and tested version is $350. Contact Solid State Music at 2102A Walsh Av, Santa Clara CA 95050, (408) 246-2707."

Circle 552 on inquiry card.

Wire Wrappable Prototyping Board

This Altair (S-100) bus prototyping board features an all wire wrappable format, a dedicated regulator and three additional etched TO-220 locations, prenumbered integrated circuit locations, and provisions for filter capacitors and flat cable connectors for interfacing purposes. The board will accommodate all sizes of integrated circuits, from as many as 81 14 or 16 pin sockets to as many as 12 36 or 40 pin sockets. An instruction manual is included. The board is $39.95 from Orange Digital Electronics, POB 2311, Mission Viejo CA 92675."

Circle 554 on inquiry card.

186

BYTE January 1978

Fantastic $avings

on Terminal Components

We have obtained a fairly large supply of professional CRT video monitors, encased in attractive metal cabinets with a simulated mahogany finish. We do not know the bandwidth capabilities of these 12" (diagonal) units; we have used them, however, to test our 24 x 80 video display board and have found them perfectly satisfactory. These units were manufactured by or for one of the largest data communications firms in the country. We are not allowed to use the name, and the nameplates had to be removed. Many of you have probably seen these units functioning. They are equipped with a standard video 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 in the plastic anti-glare screen in front of the CRT tube. This screen could be readily removed or replaced.

We estimate that these units would sell new for between $150 and $200. We are offering them for sale in both functional and in 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 represented as reconditioned units and may require minor repairs or adjustments. Add the following charges for handling-shipping-insurance:

$2.50 Eastern Time Zone $3 Central $4 Mountain $5 Pacific

MiniMicroMart, Inc. also stocks a complete

line of kits for building video display units.

Write for information

MDACP (acoustical) $ 59.95

MDHW (hard wire) 44.95

MDACP-NF (used, suspect non-functional) 39.95

MDHW-NF (used, suspect non-functional 24.95

Add $2 for handling-shipping-insurance.

COMMERCIAL MODEMS - Limited Supply — Acoustical coupler type and direct hard wire variety. Both operate at standard Bell Telephone frequencies, at up to 300 baud; they are Bell 103 compatible. They appear to be in new or equal-to-new condition. They are intended for communicating from a terminal to a time-share computer. Standard RS232C type connectors are supplied.

KEYBOARDS- Limited Supply

Attractive communications style keyboards;, some in cases which match the monitor shown above. They are not ASCII encoded but the coding could be changed in software with PROMs or by replacing the circuitry with an encoding I.C. They key switch modules are of Cherry manufacture with an excellent feel. A schematic and limited modification information is supplied.

KBN brand new, in case $ 37.95

KBU used, in case 27.95

KBUD used, in case, minor cosmetic 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 67 on inquiry card.

BYTE January 1978 187

What's New?

3M Cartridge Drive Interface

MASS STORAGE

New Drive for Miniature Data Cartridges

Utilizing the 3M DC100A miniature data cartridge, this new tape transport measures only 3 by 4 by 4.125 inches (7.6 by 10.2 by 10.5 cm) and costs as little as $250 in single quantities, including "intimate" electronics. The Model 200 Minidrive can record up to 772,000 bytes of data on a single cartridge, at a recording density of 1600 bits per inch and a data rate of 48,000 bits per second. The "intimate" electronics include the motor drive and read head amplifiers, the write head driver, optical tachometer for

tape speed control, track selection logic, solid state beginning and end of tape detectors, and file protect and cartridge in place detectors. A servo and data card, peripheral interface adapter card, control logic card, and card cage with printed circuit backplane can be added to form a complete controller and interface. The manufacturer supplies direct interfacing for the Intel 8080 and Motorola 6800 microprocessors, as well as interfaces tailored to the LSI-11, Nova, Interdata and Altair computers. One controller can "daisy chain" up to four Minidrives, providing access to as much as 1.3 million bytes of storage with an average access time of 9 seconds.

In single quantities, the I track low density (168,000 byte capacity) version of the Model 200 sells for $250, while the 2 track high density (772,000 byte capacity) version is priced at $350. A complete 1 track drive and controller costs about $485 in single quantities. Substantial quantity discounts are available to OEM buyers. The Model 200 is made by the Quantex division of North Atlantic Industries Inc, 200 Terminal Dr, Plainvicw NY 11803, (516) 681-8350."

Circle 564 on inquiry card.

This Altair (S-100) bus compatible interface board controls up to eight Quantex Model 600 3M cartridge tape drives. The board includes software in ROM to dump and load named files from anywhere in memory, search for a file name or list all files on a cartridge, rewind, unload, erase, skip blocks, and other functions. Data is recorded with phase encoding using a cyclic redundancy character check for error detection and correction. The Quantex Model 600 drive uses the DC-300A tape cartridge, containing 300 feet of V* inch tape. Data is recorded at 48,000 bits per second, 1600 bits per inch serially on 1, 2 or 4 tracks. With proper formatting more than 2 million bytes can be stored on a cartridge. The AQ-86 interface board is priced at $425, and a single Quantex Model 600 cartridge drive at $825, from Gait Electronics, 9924 Lanham Severn Rd, Seabrook MD 20801, (301) 459-1496."

Circle 568 on inquiry card.

Floppy Controller Includes Status Panel

At Last, a Solid State Disk

The EPA Micro-68b floppy disk system now includes a disk status monitoring panel and write protect switches. Available in either single ($2495) or dual ($3295) configurations, the Micro-68b disk includes the interlace necessary to plug into either the 6800 exorciser or the Altair (S-100) bus. The status panel contains indicators for drive selection, write protection, CRC error and disk status. Housed in a ruggedized, light blue aluminum cabinet to match the Micro-68b computer, the unit is available from Electronic Product Associates Inc, 1157 Vega St, San Diego CA 92110, (714) 276-8911."

Circle 567 on inquiry card.

40 times fasler than the fastest electromechanical rotating disk memory, the CCDISC contains a solid state charge coupled device memory with a capacity of up to 1 million byles in 128 K byte increments. Capacities up to lour megabytes can be achieved by daisy chaining these solid state "disks." Average access time is 250 Ms, making the CCDISC ideal for paging, program swapping, timesharing and distributed network applications. The unit is plug compatible with the rotating magnetic head-pertrack disk memory interfaces made by the manufacturer, Alpha Data Inc, 20750 Marilla St, Chatsworth CA 91 31 1, (213) 882-6500. CCDISC memories are available eight weeks after receipt of order and cost $3195 in OEM quantities. ■

Attention IBM 5100 Users: An Intelligent Floppy Disk

This floppy disk storage system includes its own microprocessor and plugs directly into the IBM 5100 serial 10 port, requiring no changes to the 5100 hardware or software. The CommStor/5100 has its own file managemenl system controlled by simple commands and is compatible with both BASIC and APL (files created under BASIC can be read under APL and vice versa). The floppy disk format is compatible with the IBM 3740. The system comes with a 5100 tape cartridge containing ten BASIC key files and 14 APL functions. A single drive system is priced under $3000, and a dual drive system under $4000, from Sykes Datatronics Inc, 375 Orchard St, Rochester NY 14606, (716) 458-8000."

Circle 569 on inquiry card.

188

BYTE January 1978

Now low-cost memory stacks uo^f jiJn reliability!

Introducing a new generation of ECONORAM dynamics with SynchroFresh reliability

Meet ECONORAM* III with SynchroFresh™, the 8Kx8 dynamic memory for S-lOO bus computers that really works. And uses less than half the power of static designs. And costs just $149 for an assembled 8K.

Unlike previous attempts at building a low-cost dynamic memory, ECONORAM* III is entirely reliable ... because of SynchroFresh™, a new approach to memory refresh that is simple, elegant and totally effective.

SynchroFresh™was invented by George Morrow, designer of the original ECONORAM*. Instead of arbitrarily interrupting your CPU to perform memory refresh cycles, Morrow designed SynchroFresh™ to weave refresh invisibly into the natural timing of the S-100 bus. SynchroFresh™ circuitry simply monitors your computer's machine states, utilizing all of the normal opportunities for memory refresh. It's that simple.

And simplicity means reliability and dramatically lower cost. That's why a SynchroFresh™ design was chosen for the first ECONORAM* dynamic, to follow in the footsteps of the largest-selling static memories for personal computers.

ECONORAM* III with SynchroFresh™is an 8Kx8 dynamic board, configured as two individually addressable 4K blocks for flexibility. It is available assembled, tested and warranteed for one full year for just $149. This unprecedented warrantee offers a full refund of purchase price if ECONORAM* III does not run reliably with your S-100 CPU—evidence of our confidence in its performance.

It is also available as a kit with complete assembly instructions and documentation for $159.

ECONORAM* III with SynchroFresh™, in assembled or kit form, may be ordered directly from ThinkerToys™. Write 1201 10th Street, Berkeley CA 94710 or call (415) 527-7548. Call BAC/MC orders toll-free to 800-648-5311. Or ask your computer store to order it for you.

NEW

$149

8K assembled,.tested, warranteed lyear

A product of Morrow's Micro-Stuff for

Thinker Toys

'ECONORAM is a trademark ntRndhnut Fln-irnnii-t ■■

Circle 68 on inquiry card.

Classified Ads

FOR SALE: Dura 941 data terminal, includes IBM Selectric typewriter with BCD coding, paper tape punch and reader. Unit is in good working order except for punch which has an electrical problem. For sale as is at S300, prints and instructions included. Freight collect. Will make an ideal hard copy printer even without the punch, and where else can you get a Selectric typewriter for $300? Write Jim Parsly, Apt 305, 401 W Johnson St, Philadelphia PA 19144.

FOR SALE: completely assembled and tested Solid State Music 16 K true static memory board; fast, 200 ns; low power, .55 A @ + 8 V; fully buffered with memory protect in 4 K blocks and automatic unprotect on power up. $500 or best offer. Tim Wedlake, POB 3074, San Leandro CA 94578.

FOR SALE: One M1TS serial IO board. Morrow's cassette interface board with all options. Will accept best offer for each or both. Victor CHnn, 1618 Milvia, Berkeley CA 94709.

WILL TRADE: A working SC/MP (kit built) and working keyboard as sold by NS for $200 for a good frequency counter. Also for sale: A 8223 PROM programmer, complete except for 12 VDC, 300 mA furnished by user, price: $20. James Upchurch,3407 Dauphine Dr, Sebring FL 33870.

WANTED: Qume or Diablo IO printer to run with a Cromemco Z-80 system. Also, does anyone have any information on how to interface an old Friden Flexowriter SPD to a microsystem? William Brady, 156 Drakes Ln, Summertown TN 38483.

FOR SALE: Altair 680B assembled and tested, also high speed paper tape reader and high speed paper tape punch. The whole works for $450. Dave Woodhouse, 172 Hickory Creek Dr, Frankfort I L 60423. After 7 PM call (815) 469-9316.

FOR SALE: IMSAI 8080 microcomputer, 22 slot mother board, 8 K programmable memory, MtO board (serial, parallel and cassette interface board), professionally assembled and tested in excellent condition. Complete with input and output cables and all manuals. Call (215) 643-2467 after 5 PM. William Schmidt, 1426 Jonathan Way, Ambler PA 19002.

FOR SALE: OSI 400 System with: 400 CPU board, 440 video graphics board, 430 cassette IO board, 11 K RAM, keyboard, power supply, cases, and extras. Fully socketed. $750 or offer. B Fabry, Rt 2, Box 22A, Morgantown WV 26505. (304) 296-2485.

Readers who have equipment, software or other items to buy, sell or swap should send in a clearly typed notice to that effect. To be considered for publication, an advertisement should be clearly noncommercial, typed double spaced on plain white paper, and include complete name and address information. These notices are free of charge and will be printed one time only on a space available basis. Insertions should be limited to 100 words or less. Notices can be accepted from individuals or bona fide computer users clubs only. We can engage in no correspondence on these and your confirmation of placement is appearance in an issue of BYTE.

Please note that it may take three or four months for an ad to appear in the magazine. ■

FOR SALE: Unfinished computer project worth much more than $800 of RM 8080, 4 K programmable memory, TV terminal. Philips cassette 60 tape deck, edge connectors, TTL, CMOS and Intel ICs, designing and specification books, capacitors, keyboard, more. Goes for $550 or best offer. T P Douglas, POB 1012-V, La Junta CO 81050. (303) 384-9594.

BACK ISSUES WANTED: BYTE numbers 7 thru 10 (March thru June 1976). Prefer undamaged originals, but will accept Xerox or microfiche copies with publisher's permission. Send your asking price and description to Cart S Zimmerman, POB 53, APO NY 09378.

FOR SALE: National's Novus 4520 Scientist: RPN 4 level stack, power and root functions, all trig functions, all log functions, etc. Operations Guide, AC charger, carrying case, $20. Edwin A Zaratkiewicz, 3708 Hampton Way, Kent WA 98031.

JOB WANTED: I am looking for interesting and challenging work in the computer field. I have worked with computers for over six years, know most common assembler and compiler languages, and will be graduating from the University of Pennsylvania in May with a degree in computer engineering. If you are trying to find a person to handle a tough but interesting job, please write to me for mv complete resume. Steve Masticola, POB 951, 3901 Locust Walk, Philadelphia PA 191 74. All offers carefully considered.

FOR SALE: Miniterm MERLIN graphics display board, S-100, new, assembled, $269. Mark Dahmke, 1393 8th St, David City NB 68632. (402) 367-4367 after 6 PM.

FOR SALE: 6800 system with processor board, 20 K programmable memory, video interface, and four serial ACIA ports for KC standard, RS232, TTY. One 8 bit parallel port. 1.25 K EPROM with debugger, assembler, editor, load and dump. Manuals, schematics, software. Factory assembled. $1250. David Demorest, 12697 Graton Rd, Sebastopol CA 95472. (707) 823-1698.

FOR SALE: Digital Equipment Corporation DK8EP programmable real time clocks $395. Other PDP8e modules for sale or trade. Free list. Want 8 K core or any other DEC peripherals or components. K2DCY. 11 Squire Hill Rd, North Caldwell NJ 07006.

FOR SALE: Altair 8800a, 8 K dynamic memory, cassette interface card, all mother boards, edge connectors, and card guides. Unit is completely functional, all cards are standard MITS items. A bargain at $750. Bill Shappley, 6395 Forest Grv, Memphis TN 38138. (901) 682-1 897 after 7 PM.

FOR SALE: Issues 1, 2, 3 and 4 of BYTE, perfect

condition, to the highest bidder. Also June 1976 to May 1977 inclusive of BYTE. Specify your bid and the issues you desire. Doug Dierdorf, 103 N Park Dr, Wilmington DE 19809.

WANTED: An inexpensive secondhand DecWriter II for use on a time sharing system. Any condition except broken is acceptable. I'm willing to pay up to $1,100. Send all offers to Scott Johnson, 18 Coraway Rd, Setauket NY 11733.

TTY DONATION? Elementary school needs remote terminal for kindergarten through sixth grade computer math course. Any donation in working (or fixable) shape will be appreciated by Maria Hastings Public School, Lexington MA 02173. Call collect to Richard E Zapolin, (617) 271-2534.

FOR SALE: Altair 8800 with one 4 K static ram implemented, and one 1 K static ram board loose, $400; I pay postage. James Jones, 220 N Blvd #17, Gunnison CO 81230.

FOR SALE: BYTE Issues 2 thru 9 (October 75 thru May 76), fine condition. Best offer. Mel Raab, Rm 4731 Boelter Hall, UCLA, Los Angeles CA 90024.

FOR SALE: Godbout 8 K EconoROM, populated with 4 K of 5204 PROMS now containing Editor/ Assembler/Monitor, a steal at $200 (current cost $265). OAE paper tape reader fully assembled and operational, $60. Call Mitchell (after 3:00 PM, weekdays) at (617) 963-5578.

FOR SALE: ASCIISCOPE 12 by 80 CRT with built in acoustic coupler $550 with documentation, SS Music MB3 with 4 K 1702A $115, MITS 4 K dynamic $100, Processor Technology VDM $155, 3 P+S $115, OAE Tape Reader $60, IMSAI 4 K Static $100. All assembled fully socketed and factory checked out. K R Roberts, 10560 Main St, Suite 515, Fairfax VA 22030.

FOR SALE: Cromemco Cyclops TV camera with sophisticated controller interface to S-100 bus, assembled $300, save 50%. G Lyons, 280 Henderson, Jersey City NJ 07302. (201) 451-2905.

FOR SALE: Five 4 K S-100 static memory boards.

Factory assembled and still on warranty, one never out of box. I am switching to 16 K boards. $100 each. No personal checks or cash please. Al Marshall, 408 Oakwood, Angola IN 46703.

SELL OR SWAP: I'm cleaning out Teletype Models 33 and 38, converted Selectric IO typewriter. Telewriter portable terminal (SCM electric portable adapted as RS232 IO), all in top condition, also 10 years of OST and American Journal of Physics (teacher's) magazines, foreign language learning tapes, telephone and radio equipment. Send SASE for list with pictures and specifications. M Boltzman, POB 2525, Plainfield NJ 07060.

FOR SALE: Make offer for complete set of BYTEs, September 1975 thru July 1977, all issues in like new condition; package deal only. C Reece, 4924 Brandenburg, POB 80712, Lewisville TX 75056. (214) 370-0973.

FOR SALE: Altair 8800A with IMSAI 28 A power supply installed in original cabinet. Comes with serial IO board, four 4 slot expander boards, 12 edge connectors, fan, 4 K and 8 K BASIC, assembly language package, and many games. With 12 K memory, $1100 or 32 K memory and Tarbell cassette interface, $2000. Everything carefully assembled and working perfectly. Michael Favitta, 4 Sherwood Forest Rd, Albany NY 12203. (518)456-8717.

4 K MEMORY BOARDS: Solid State Music (MB-2) assembled, socketed, tested, with full speed 2102s. Two available. $75 each. TTY paper tape. 1 inch wide, 8 inch diameter roll, lightly oiled buff. Perfect for ASR-33. $10 per 28 roll case + UPS on 48 lbs, Dan S Parker, 1007 3rd St #3, Davis CA 95616. (916) 758-2341 after 6:00 PM. Orders shipped within 24 hours.

FOR SALE: Data modems. One new, acoustically coupled, never used, cost $270. Sacrifice at $195. One used, tested, and in perfect working order. $75. Call evenings. C Lopez (714) 2724381.

WANTED: First seven BYTEs. Will consider additional issues in order to get first seven. Good copies acceptable also. Send quotes to: Joseph Heck, 101 Wachusetts St, Jamaica Plain MA 02130.

FOR SALE: Texas Instruments Silent 700 Terminal, Model KSR733 with modem cable, maintenance manual (worth $25) and four rolls of paper. Original price $2000. Will sell for S900 or best offer. Terry Higbee, 5071 Scott Cir, LaPalma CA 90623. (714) 523-2548.

FOR SALE: HP 9830A programmable calculator with memory option 275, 9866A line printer. Data Comm interface, and the following ROMs: String Variables, Advanced Prog II, Data Comm I and Data Comm Ml. Perry B Fink, 82 S Deere Park Dr, Highland Park IL 60035. (312) 432-2998.

190

BYTE January 1978

S. D. SALES CO.

AN EMPIRE IND. CO.

P.O. BOX 2B810 DALLAS, TEXAS 75228

B ORDER BY PHONE CALL TOLL FREE 1—800—527-3460

EXPANDO RAM KIT

32K FOR $475.00

MEMORY CAPACITY MEMORY ADDRESSING MEMORY WRITE PROTECTION 8K, 16K, 24K, 32K using Moslek MK4115 with 8K boundaries and protection. Utilizes DIP switches. PC board comes with sockets for 32K operation. Orders now being accepted. Allow 6 to 8 weeks Tor delivery.

8K FOR $151.00

INTERFACE CAPABILITY Control, data and address inputs utilizes low power Schotlky devices. POWER REQUIREMENTS + 8VDC400MADC + 18VDC400MADC — 18VDC30MADC on board regulation is provided. On board (invisible) refresh is provided with no wait states or cycle stealing required. MEMORY ACCESS TIME IS 375ns. Memory Cycle Time is 500ns.

Buy an S100 compatible 8K Ram Board and upgrade the same board to a maximum ol 32K 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

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 of Eprom or 2716's for 32K of Eprom. KIT FEATURES:

1. All address lines & data lines buffered.

2. Quality plated through P.C. Board, including 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.95 WHEN PURCHASED WITH BOARD.

Z-80 CPU BOARD KIT — $139.

CHECK THE ADVANCED FEATURES OF OUR Z—80 CPU BOARD: Expanded set of 158 instructions, 8080A software capability, operation from a single 5VDC power supply; always stops on an M1 state, true sync generated on card (a real plus feature!), dynamic refresh and NMI available, either 2MHZ or 4MHZ operation, quality double sided plated through PC board; parts plus sockets priced for all IC's. 'Add $10 extra for Z—80A chip which allows 4MHZ operation. Z—80 chip with Manual — $39.95

8K LOW POWER RAM — $159.95

Fully assembled and tested. Not a kit. Imsal — Altair — S-100 Buss compatible, uses low power static 21L02-50Ons fully buffered on board regulated, quality plated through PC board, including solder mask. 8 pos. dip switches for address select.

4K LOW POWER RAM KIT

Fully Buffered — on board regulated — reduced power consumption utilizing low power 21L02 — 1 500ns RAMS — Sockets provided for all IC's. Quality plated through PC board. 'Add $10. for 250ns RAM operation.

The Whole Works - $79.95

MUSICAL HORN

One tune supplied with each kit. Additional tunes — $6.95 each. Special tunes available. Standard tunes now available: — Dixie — Eyes of Texas — On Wisconsin — Yankee Doodle Dandy — 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 over River Kwai.

Special Design Case $3.50

CARS BOAT KIT $34.95

HOME KIT $26.90

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

E. Perfect for cars, boats, vans, elc.

F. PC board and all parts (less case) inc. Alarm option — $1.50

AC XFMR - $1.50

DIGITAL LED READOUT THERMOMETER - $29.95

$16.95

Features: Lilronix dual 1/2" displays

Uses Silicoaix LD131 single chip CMOS A/D converter. Kit includes ail necessary parts (except case); AC line cord and power supply included. 0-149° F.

6 DIGIT ALARM CLOCK KIT

Features: Litronix dual 1/2" displays, Mostek 50250 super clock chip, single I.C. segment driver, SCR digit drivers. Kit includes all necessary parts (except case). Xfmr optional. Eliminate the hassle. AC XFMR - $1.50 Case $3.50

5 Digit Countdown Utility Darkroom Timer Kit

Features: Large LED 1/2" displays oper. from 0.1 sec. to 59 mln. 59.99 sec. 5A-115V. Relay Included to control appliances. Operates on 115V AC. Displays can be turned oft for total darkness while counting. All necessary parts included. Special design case S3.75.

6 Digit General Purpose or Computer Timer Kit — $29.95

Features: Large LED 1/2" displays, Mostek 50397 counter display/driver, counts up to 59 minutes, 59.99 seconds with crystal controlled 1/100 second accuracy, operates on 115V AC or 12V DC supply. All necessary parts Included. Special design-'-ese $3.75.

Bowmar 4 Digit LED Readout Array Full V2" Litronix Jumbo Dual Digit 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 INDEPENDENT FIVE DIGIT

1/2" LED DISPLAYS

The timers can be used independently or coupled. The timer can be set to 59 minutes 59.9 seconds at 0.1 intervals. Kit includes all necessary parts and an attractive woodgrain case.

Low Cost Cassette

Interface Kit

$14.95

,',l!y:H*

■'BL"HL

—UUilOllUIIIlllllU.

$79.95 Complete Kit

Features: K.C. standard 2400/1200 Hz, 300 Baud, TTL, I/O compatible, phase lock loop, 22 pin connector. Feeds serial data via microprocessors I/O ports and from cassette tape recorder. S14.95

RAM'S

21L02-500NS 8/11.50

21L02-250NS 8(15.95

2114 — 4K 14.95

1101A — 256 8/S4.00

1103 —1K 35

MK4115-8K 1E.45

74S 200 - 256 3.95

CPU'S

Z—80 includes manual 29.95

Z—80A includes manual 34.95

8080A CPU 8 BIT 11.95

8008 CPU 8 BIT 6.95

PROMS

l702A-1K-1.5us 3.95 or 10/35.

2708 - 8K intel - 450ns 14.95

5204-4K 7.95

82S129 — 1K 2.50

2708S8 8Ksigneiics650ns 9.95

COUNTER CHIPS

MK50397 6 Digit 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 8.95

MK5021-Cal. chip sq. root 2.50

THERMISTORS

MEPCO-NEW! 1.5KOHM

5/S1.00

DISC CAPS FOR BYPASS

.01 MFD-100

WVDC. PC leads.

40/S1.

Photocell Atil.

We bought almost 200K from a big US mlg. Three product families:' small; medium and dual photocells. Perfect lor all light sensitive applications.

* 12/S1.00

MICA TRIMMER

PC 402 Miniature

1.5 —20P.F.

P.C. Mount

4/S1

TANTALUM CAPS

1 MFD. 20VDC. P.C. LEADS 15 for$1.00

BAIUM

Used in TV Tuners

Can be rewound

lor Ham Ireq.

6/S1

PLASTIC READOUT FILTERS

Originally used in desk top calculators. Perfect for use with LEDand other type readouts. AMBER-6f0fS1.

FLAT PACK IC ASSORT.

FLAT PACK 5400 SERIES SPECIAL BUY FROM ITT.

20 Assorted Devices tor 31.00

STANDARD COILS

Use in TV Sets. 1.2

uh 5% and 1,5 uh

10%. Your choice

IB/11

TTL ASSORTMENT

Contains a high

yield of usatiiiipiirls

50/51.50

MICRO-DIP $1.95

New — Series 2300 The World's Smallest Coded BCD Dua!-ln-Line Switch! PC Mount 2300 02G BCD 1-2-4-8 2300 12G BCD 1-2-4-8 Compliment

ELECTRICALCOIL

13TTYPEC

10TTYPEC

YOUR CHOICE

12/S1

AUTO COIL TRANF.

leal lor ineexper.

RESISTOR Special!

22 Onm. t Walt. Carbon Comp. 10%. Handy value. Parallel tomakolowolimage power reslslora. Help! We boughi 100.000 pieces! ' %L 25 for $1.

ami. W/Specs. 8/S1

NEWCAMBION JACKS

PART H 450-4352

Gold Plated

50/S1

DISC CAP ASST.

PC leads. Al least 10 different values; Includes .001, .01, .05 plus other standard values.

60/S1.00

*

JOYSTICKS

FOUR 100K-OHMS

POTS *

Ideal for electronic games ^$3.95

TRIMMER POTS

10K, 20K, 25K

OHM. Mini lor PC

boards.

YOUR CHOICE

10/(1.

SILICON RECTIFIER

Special! 1N4007. 1 AMP 1000 PIV.

PRIME UNITS 10/tl.

P.C. LEAD DIOOES

1N4I48MN914

—100/52.00

1N4002- 1A

-100 PIV

40/SI.00

STANDARD ANT. TER. Used for Ant. Hookup on all TV Sets. 1211

MICROPROCESSOR CHIPS

8212-I/O port 3.50

8214-P.I.C 12.95

8216 — Non Invert Bus 4.95

8224 — Clock Gen 4.95

8226 — Invert Bus 3.95

PlOlorZ—80 14.95

CTC lor Z—80 14.95

8228 Sys. Controller 8.20

8251 Prog. comm. interlace 10.95

8255 Prog. perp. interlace 13.50

8820 Dual Line Recr 1.75

8830 Dual Line Dr 1.75

2513 Char. Gen 7.50

8838 Quad Bus. Recvr 2.00

74LS138N — 1/8 decoder 99

8T97-Hex Tri-State Bulfer 1 25

1488/1489 RS232 1.50

TB 1602B Uart 3 95

Z-80 PROGRAMMING MANUAL

IN DEPTH DETAIL OF

THE Z-80 CPU MICRO-COMPUTER

S.D. Sales Special $9.95

CALL IN YOUR BANKAMERICARD (VISA) OR MASTER CHARGE ORDER IN ON OUR CONTINENTAL TOLL FREE WATTS LINE:

Choose $1. Free Merchandise From Asterisk Items on each $15 order

Texas Residents Call Collect:

214/271-0022 1-800—527-3460

DEALER INQUIRIES INVITEDI

Zerms - 60 Day Money Mack Guarantee!

j

NO COD'S. TEXAS RESIDENTS ADD 5% SALES TAX. ADD 5% OF ORDER FOR POSTAGE & HANDLING . ORDERS UNDER $10. ADD 75c HANDLING.FOREIGN ORDERS - U. S. FUNDS ONLY!

Circle 95 on inquiry card.

BYTE January 1978 191

Festfep Service

To get further information on the products advertised in BYTE, fill out the reader service card with your name and address. Then circle the appropriate numbers for the advertisers you select from this list. Add a 13cent stamp to the card, then drop it in the mail. Not only do you gain information, but our advertisers are encouraged to use the marketplace provided by B YTE. This helps us bring you a bigger B YTE.

Inquiry No.

Page No.

Inquiry No.

Page No.

Inquiry No.

Page No.

1 Algonquin College Book Store 130

2 Alpha Digital 130

3 Anderson Jacobson 77

4 Apple Computer 8,9,10

5 Atwood Enterprises 171

6 Beckian Enterprises 171

7 Benson & Costello 129

8 BITS 115, 117, 119, 147

9 Byte Shop East 136

10 Byte Shop, Tustin 134

11 C & K Components 36

12 California Applied Technology 167

13 Cambridge Thermionic 143

14 Canada Systems 133

38 Carterphone 93

15 Celetron 140

16 Central Data 73

17 CMC Marketing 55

18 Component Sales 124

19 Computalker 141

20 Computer Corner 157

21 Computer Depot 157

22 Computer Depot Distributing 167

23 Computer Enterprises 160

24 Computer Hardware Store 167

25 Computer Machine Service 167

26 Computer Mart of NH 167

27 Computer Room, San Jose 134

28 Computer Systems 157

29 Computer Systems Store 167

30 Cromemco 1, 2 88 Databyte 165

31 Data General 13

32 Digital Group 69

33 Digital Research Corp 175

34 Digital Service & Design 167

35 Disc 3 157

36 Durango Systems 167

37 Dynabyte 29

39 Electrolabs 173

6CME

BYTE's Ongoing Monitor Box

40 Electronic Control Technology 138 79

41 Electronic Systems 169 80

42 Electronic Warehouse 176 81

43 Extensys 19 82

44 Charles Floto 157 83

45 Forethought Products 139 84

46 Gallagher Research Inc (GRI) 142 85

47 Godbout177 86

48 Heath CIV, 34 87

49 Heuristics 87 *

50 IEEE Computer Society 132 89

51 IMSAI31 90

52 Integrated Circuits Unlimited 179 92

54 Jade 181 93

55 James Electronics CI 11, 183, 185 94

56 Lear Siegler 59 *

57 Leland Shepard 21 95

58 Logical Services 120 96

59 Meca 82 97

60 Meshna 166 98 91 Microbusiness 78 127 99

61 Microcomputer Origin Store 167 100

62 Microdesign 135 101

63 Micronics 140 102

64 Microware121 103

65 Midwest Scientific 107 104

66 Mikos178 105

67 Mini Micro Mart 187 106

68 Morrow's Micro Stuff 189 107

69 Mountain Hardware 106 108

70 mpi 133 17

71 MSD97 109

72 Mullen Computer Boards 159 110

73 National Multiplex 113 111

74 Netronics121 112

75 Newman Computer Exchange 159

76 Nittany Digital Devices 157 113

77 Norcom Services 157 114

78 North Star Computer 7, 15 116 * Ohio Scientific 40, 41,42, 43 115

OK Machine & Tool 63

Oliver Audio Engineering 51

Osborne & Associates 101

PAIA 138

Parasitic Engineering 78, 79

Paratronics 125

Par Metal Products 157

People's Computer Co 65, 99

Peripheral Vision 75

PolyMorphic Systems 83

Processor Technology 24, 25, 26

Quantronics 17

Rotundra Cybernetics 157

S-100 143

Scelbi 91

Scientific Research 47, 95

SD Sales 191

Seals 45

Seattle Computer Products 136

Small Computer Systems 135

Smoke Signal Broadcasting 71

Software Records 139

Solid State Music 49

Southwest Technical Products CI I

Speech Technology 137

Synchro Sound 103

Tarbell Electronics 5

Tech Mart 111

Technical Design Labs 23

Technical Systems Consultant 89

TEI 55

TLF 53

Urban Instruments 173

Van Nostrand Reinhold 131

Vector Graphic 105

Vista Computer 56, 57

West Coast Computer Faire 153, 155

Worldwide Electronics 141

Xitex (formerly Vectron) 137

Xybek 142

On BOMB Card, Article No.

ARTICLE

1 Kent: The Brains of Men and Machines: Part 1

2 Hughes: The IRS and the Computer Entrepreneur

3 Ciarcia: Add More Zing to the Cocktail

4 Allen: A Floppy Disk Interface

5 Jessop: The Motorola 6800 Instruction Set

6 Bumpous: A User's Reaction to the SOL-10 Computer

7 Banks: The Waterloo RF Modulator

8 Jennings: The Second World Computer Chess Championships

9 Higgins: Structured Programming with Warnier-Orr Diagrams: Part 2

10 Smith: Simulation of Motion: Part 3

11 Ledder: A Novice's Eye on Computer Arithmetic

12 Bryant: Mounting a Paper Tape Reader

13 Libes: Notes on Bringing up a Microcomputer

* Reader Service inquiries not solicited. Correspond directly with company.

BOMB Analysis for the October 1977 Issue

First place (and a $100 bonus) went to David A Higgins' article on "Structured PAGE Program Design" using Warnier-Orr dia

grams, page 146. His article had a rank of 11 1.37 standard deviations above the mean

27 of 13 articles. Second place and a $50

37 bonus went to David Kruglinski's "How

58 to Implement Space War," page 86. His

84 article ranked 1.26 standard deviations

86 above the mean. The standard deviation

94 in October's analysis was 24% of the mean,

108 indicating a relatively wide spread of evalu

122 ations. Be sure to indicate your reactions

144 to this month's issue by rating each article

150 on the BOMB evaluation card and for

161 warding it to our office. The BOMB card

162 is your direct line to the editors' desks."

192 BYTE January 1978

im

electronic components

One-Stop Component Center

QUALITY PRODUCTS

TTL

LINEAR

RESISTORS

SWITCHES

7400

7490

LM301V

LM340T 15178151

ASST 1 ASST 5

SPST4sla d-i SPOT Pulh Iwnon

7402

7492

LM307V

LM555V

ASST 2 ASST 6

SPST 8 na d.o SPOT pulh button

7404

7493

LM309K

LM556N

ASST 3 ASST 7

7408

74107

LM311V

LM567V

tougle SPST puih button

741Q

7412)

LM320K 5

79051 LM723N

SPDTonnoneon SPST puih button

7420

74122

LM320T 5

79051 LM739N

toqqlp DPOT il.df

7432

74123

74125 (DMB0931

LM320T1217912) LM741V LM320T 1517915) LM747N

CAPACITORS

DPDT oo-oH-on DPDT onnowon

7442

74154

74161 IDM93I6I

LM339N LM340T 5

LM14S8VI555BVI 78051 LU1556V

Aluminum Electrolytic

IAI3

74176 IDM82S0I

74 75 74 76

74192 74193

MICROPROCESSOR

Z 80 2101

10m1d50V 470mldS0V 22mto50V lOOOmin 25V

SOCKETS

BoaoA

2102

Low

3ower TTL Schottky

8212

2: L02

24 pin low profile 40 pin Win WTBP

40 prn low profile TO 3 Socket

Mole. P.m TOSSockci

AY 5 101:

OM8S35N

74LS30 74LS32

MLSI 36 >4LS13S

2513/2140

N8T97

lOOr" 50V 01 mid 50V

Display LEDS Discrete

DIODES

74LS75

74LS367

IN751 IN4733

IN414SIIN914) IN4001

470rd 50V tmtd 50V

C/MOS

IN4734

IN40O4

CONNECTORS

4001 4010

4046

Dipped Tantalum

DB 25P Ptuq DB25S Socktl

4011 4013

4049 40S0

TRANSISTORS

lmf,)35V 2 2mtd2*>V 22mld3SV 3.3mM2SV

4016 4017

4051 4069

CI0601

2N2222A

2N3055 2N3904

33mld35V 4 Jmtd 25V 47m1,|35V 6. Bmld 25V

DATA BOOKS'

4020

4071

2N290 7A

2N3906

68mt«3SV 10mlo25V

4023

4081

MJE295I

2N5129

4024

4S11

MJE3055

2N5139

1 5mld35V 33mld25V

■JIM-PAK Pioductionlv

A component product line developed for the independent dealer. Guaranteed, nationally advertised products. Complete JIM-PAK program includes national advertising, direct mail programs, store display racks, stock rotation plan and return policy. 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 CALIFORNIA

Berkeley

Mon terey

Palo Alto

Pasadena

Sacramen to

Sacramen to

San Carlos

San Francisco

San Jose

Val/e/o

Walnut Creek CANADA

Alberta (Calgary) CONNECTICUT

Bridgeport FLORIDA

Orlando Altair

Tampa

Tampa FRANCE

Paris GEORGIA

A tlan ta HAWAII

Aiea

Honolulu IDAHO

Idaho Falls ILLINOIS

Evanston

Grovel and

Mount Prospect

Oak Park INDIANA

East Chicago

Hammond

Lafayette Radio Electronics

Al Lasher Electronics

Zackit

Zack Electronics

Dow Radio Inc.

The Radio Place

Zackit

J&H Outlet Store

Zack Electronics

Sunnyvale Electronics

Zackit

Byte Shop Computer Store

The Computer Shop

Computer World

Computer Center of Orlando

AMF Electronics

Microcomputer Systems

Computer Boutique

Atlanta Computer Mart

Delcoms Hawaii

Integrated Circuit Supply

Audiotronics

Itty Bitty Machine Co.

Moyer Electronics

Tri-State Electronics

Spectronics Inc.

Aero Electronics Quantum Computer Works

LOUISIANA

Baton Rouge MARYLAND

Baltimore

Baltimore

Rockvil/e

Tow son MASSACHUSETTS

Medford

North Adams

Walt ham MICHIGAN

Lansing MINNESOTA

Duluth

Eagan MISSOURI

Parkville MONTANA

Billings NEBRASKA

Lincoln

Omaha NEVADA

Las Vegas NEW JERSEY

Hoboken

Ramsey NEW YORK

Albany

New York

New York

Troy

White Plains NORTH CAROLINA

Raleigh OHIO

Bucyrus

Cincinnati

Steubenville

Davis Electronics Supply

Computer Workshop of Baltimore

Everything Electronics

Computer Workshop

Computers. Etc.

Tufts Electronics Electronics Service Center

Computer Mart Inc.

Fulton Radio Supply

Northwest Radio of Duluth Dacom Amateur Radio Center

Computer Workshop of Kansas City

Con/ey Radio Supply

Altair Computer Center Omaha Computer Store

Hoboken Computer Works Typetronic Computer Store

Fort Orange Electronics

The Computer Stores Inc.

Computer Mart of New York

Trojan Electronics

The Computer Corner

Byte Shop of Raleigh

Mead Electronics

Digital Design

Hosfelt Electronics

OKLAHOMA

Guym on

Oklahoma City OREGON

Beaverton

Coos Bay

On tario PENNSYLVANIA

Hershey

Murraysville

RHODE ISLAND

Cranston

Pawtucket SOUTH CAROLINA

No. Charleston TENNESSEE

Memphis

Oak Ridge TEXAS

Dallas

Houston

Houston

San Antonio VIRGINIA

Alexandria

Alexandria

Richmond

Springfield

WASHINGTON

Bellevue Longview Pasco Spokane WEST VIRGINIA Morgantown Morgan town

Sound Service . Bits, Bytes & Micros

Altair Computer Center Herrick Electronix Miller Electronics

Microcomputer Systems Inc.

Computer Workshop

of Pittsburgh

Jabbour Electronics City Jabbour Electronics City

Technical Services Inc.

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

Altair Computer Center

Progress Electronics

Riverview Electronics

Personal Computers

The Computer Corner Electro Distributing Co.

J

Circle 55 on inquiry card.

H

mm

Get up and running right!...

with the Heathkit H8 8080 Personal Computing System!

H8 8080A 8-Bit

Computer $375

H8-1 4K Memory 140

H8-3 4K Chip Set 95

H8-5 Serial I/O and

Cassette Interface .... 110

H9 Video Terminal 530

ECP-3801 Cassette

Recorder/Player 60

If purchased separately, *131000

Heath System Price $|2/|/|50

NEW! Microprocessor Course AND TRAINER

Learn the operation and programming

of microprocessors with our effective

self-study course and trainer!

When you invest in a personal computing system, you want it to perform. So you need software. But putting a complete hardware-software system together can be difficult. Especially if all of the components are not designed to work together. The H8 computer, software and peripherals were developed as a total system. And we include the software (at NO extra cost) so you can start programming right away. Benton Harbor BASIC with unique statements and commands and efficient compression techniques lets you put more program in less space. The HASL-8 2-pass assembler generates efficient machine language code. The TED-8 line-oriented text editor and BUG-8 terminal console debugging program permit fast entry, editing and debugging of programs. The H8's intelligent front panel provides efficient one-button program loading,

and lets you "see" what's going on in the machine — in memory, in registers and at I/O ports.

While the H8 and its software gets you up and running, our peripherals complete the "system". The H9 12" CRT video terminal is complete with ASCII 67-key keyboard, long and short-form displays, auto-scrolling, plot mode, cursor and .more. And our ECP-3801 cassette rec'order/player provides convenientmass storage for all your programs on easy-to-handle cassettes.

All this, plus complete documentation, service support through the Heathkit factory or Heathkit Electronic Centers nationwide*, and self-instructional programming courses make Heath your BEST choice for a truly practical and versatile computer system that's ready and waiting for your commands.

Schlumberger

Send for your Heathkit Catalog or visit your Heathkit Electronic Center.

"See listing page 34

Circle 48 on inquiry card.