Byte Magazine Volume 00 Number 12 - Speech Synthesis

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)

NEED HARDCOPY?

* SHTPC PR-48 ALPHANUMERIC PRINTER *

If you are one of the many computer users who wants hardcopy printouts, but can't afford any of the available machines, your troubles are over. Our PR-40 is a universal printer that gives you clear easy to read hardcopy like the sample on the right with almost any computer. Our printer operates from any eight bit parallel I/O port. The printer has it's own character generator and memory buffer. This means that the computers only job is to feed data when the printer is ready. No special program is needed in the computer to convert the data to a form that the printer can use as each character is printed. The PR-40 is easy to use, easy to interface and easy to afford.

46 CHARACTERS / LINE

* 5 X 7 DDT MATRIX IMPACT PRINT

+■ USES STANDARD 3 7,-"3" CALCULATOR PAPER

* 75 LINE ,-' MINUTE PRINT RATE

* AUTOMATIC RIBBON REVERSE 64 CHARACTER ASCII CHARACTER SET 40 CHARACTER LINE MEMORV TTL, SWTPC 6888, NITS COMPATIBLE

PR-40 LINE PRINTER KIT $250.00 PPd

HOW ABOUT PICTURES?

Games are more fun with pictures. Now you can add graphics displays to your game programs and on any type computer. Our GT6144 operates from any eight bit parallel I/O port. It has it's own self contained memory, so memory space for the display is not robbed from your computer. The 91/2 x 13 circuit board contains all you need to produce a graphic display like the one of the starship "Enterprise" shown on the left. Kit is less power supply, or chassis.

GT-6144 GRAPHICS TERMINAL KIT . .$ 98.50 PPd

ffiffii 6800 SVST.M

I know a bargain when I see it. Send the following:

□ 6800 Computer $395.00 □ PR-40 Printer $250.00

D GT-6144 Graphics Terminal $98.50 □ Just data (free)

ADDRESS

CITY

Southwest Technical Products Corp. Box 32040, San Antonio, Texas 78284

Cromemco's popular BYTESAVER™ memory board gives you two of the most-wanted features in microcomputer work:

(1) a simple, easy way to store your computer programs in programmable read only memory (PROM).

(2) a PROM memory board with the capacity for a full 8K bytes of PROM memory storage.

ECONOMICAL

The BYTESAVER™ is both a place and a way to store programs economically. It transfers programs from the non-permanent computer RAM memory to the permanent PROM memory in the BYTESAVER™ . Once your program is in the BYTESAVER™ , it's protected from power turn-offs, intentional or accidental. The PROMs used with BYTESAVER™ are UV erasable and can be used again and again.

The BYTESAVER™ itself plugs directly into your Altair 8800 or I MSA I 8080.

PROM PROGRAMMER

Many people are surprised to learn that in the BYTESAVER™ you also have your own PROM programmer. But

n

it's so. And it saves you up to hundreds of dollars, since you no longer need to buy one separately.

The built-in programmer is designed for the 2704 and 2708 PROMs. The 2708 holds IK bytes, four times the capacity of the well-known older 1702 PROM (yet cost-per-byte is about the same). The 2708 is also fast — it lets your computer work at its speed without a wait state. And it's low-powered. With 2708's in all 8 sockets, the BYTESAVER™ is still within MITS bus specifications, drawing only about 500 mA from the +8V bus. A complement of 2708 PROMs gives the BYTESAVER™ its full 8K capacity.

HOLDS LARGE PROGRAMS

The BYTESAVER's™ 8K-byte capacity lets you store the larger and more powerful programs. 8K BASIC, for example, easily fits in the BYTESAVER™ capacity of 8 PROMs. One 1K PROM will hold many games such as Cromemco's DAZZLER-LIFE or DAZZLE-WRITER.

NO KEYBOARD NEEDED

The BYTESAVER™ comes with special software programmed into a 2704 PROM. This software controls transfer of the computer RAM content to the BYTESAVER™ PROM.

So you are ready to go. You don't

Cromemco

even need a keyboard. Just set the computer sense switches as instructed in the BYTESAVER™ documentation.

Transfer of memory content to PROM ("burning") takes less than a minute. The BYTESAVER™ software controls computer lights to verify complete and accurate transfer of memory content.

The software also programs any of the other 7 PROM positions in the BYTESAVER™ as readily as the first.

And when used to transfer information from the BYTESAVER™ PROMs to RAM, the special design of the software allows loading a large program such as 8K BASIC in one second.

AVAILABLE NOW - STORE/MAIL

The BYTESAVER™ is sold at computer stores from coast to coast. Or order by mail from Cromemco. Cromemco ships promptly. You can have the BYTESAVER™ in your computer within a week after your order is received. BYTESAVERTM kit $195

(Model 8KBS-K) BYTESAVER™ assembled .... $295

(Model 8KBS-W) Shipped prepaid if fully paid with order. California users add 6% sales tax. Mastercharge and BankAmericard accepted

with signed order.

Specialists in computer peripherals ^^^^^J 2432 Charleston Rd., Mountain View. CA 94043 i

(415) 964-7400

In This CITE

ARD PALATE

NASAL TRACT SOFT PALATE

TONGUE TIP

page 16

What's good for about four billion bytes on line capacity, 10 to 50 ms access time, and a system cost in the personal computing category? Find out by reading Martin Buchanan's article on What Do You Do With a Video Disk?

"Friends, Humans, and Countryrobots. Lend Me Your Ears." When you've reached a point in your audio output micro-experimentation where the computer can talk, you'll have quite an accomplishment. D Lloyd Rice describes some of the background information needed to create a human vocal tract model with computer control in his excellent tutorial on the subject. Imagine, Star Trek implemented with a real ship's computer output!

What plugs into one Altair or IMSAI compatible bus slot, eats serial phoneme snacks, talks back and won't shut up till you pull the plug? Find out by reading Wirt Atmar's historical background and description of a new Altair compatible plug-in voice synthesizer, a commercial version of the prototype which was demonstrated as a prize winning entry in the recent MITS World Altair Computer Convention. Once you get the hang of its accent, your talking computer will add a new dimension to conversational software.

What's wrong with the 8080 processor architecture? Ask a programmer for "features" and you'll get some answers. An analysis followed by definition of improvements resulted in the new Zilog Z80 microprocessor which is the ultimate in 8 bit microprocessors at this point in time. Find out what the Z80 is all about by reading Burt Hashizume's Microprocessor Update: Zilog Z80.

The act of programming, like any act of creation, requires a bit of organization and discipline on the part of the thinker. In the second reprint from Nat Wadsworth's Machine Language Programming for the "8008" (and similar microcomputers) you'll find some thoughts on the design and planning of programs.

In May BYTE, we had A Date With KIM. Here is the next chapter in the continuing story of True Confessions: How I Relate to KIM. Turn to Yogesh M Gupta's account of modifications to the KIM-1 system which achieve compatibility with slower memories, bus expansion, and a priority interrupt capability.

A sub theme of this BYTE is the idea of the talking personal computer system. Well, Jack Hemenway and Robert Grappel got together recently to concoct an allegorical tale of Jack's assembler. In Jack and the Machine Talk you'll see a dialogue with a computer personified. Which leads to the next step: Who'll be the first reader to create a program to implement the computer side of the dialogue, using one of the new voice output devices which are coming to market?

Want to experiment with high level languages (like APL) that require an extended character set? Want to simply build and utilize a convenient text display output device? Need upper and lower case displays for a text editor? If so, and if you can get by with a 32 character line on a standard TV set or monitor, then Dr Robert Suding's latest article will be of interest. Build a TV Readout Device for Your Microprocessor using his detailed design.

What's an |2L? Terry Steeden has written a short background summary of this relatively new logic family, one which has important manufacturing and power consumption advantages which assure its place in the stable of semiconductor fabrication methods.

Many readers have found real bargains in older Baudot Teletype machines such as the Model 1 5 and the Model 19. The main problem, though, is Interfacing the 60 mA Current Loop to the normal TTL level signals of a typical microcomputer. One solution to this problem is provided by Walter S King's short article in this issue.

And for the cover, Robert Tinney portrays a scene from the near future.

In the Queue

BITI #12

AUGUST 1976

staff

Foreground

44 66 96

TRUE CONFESSIONS: HOW I RELATE TO KIM

Hardware — Gupta BUILD A TV READOUT DEVICE FOR YOUR MICROPROCESSOR

Hardware — Sliding INTERFACING THE 60 mA CURRENT LOOP

Hardware — King

Background

6 16 26 34 40 52 84

WHAT DO YOU DO WITH A VIDEO DISK?

Speculation — Buchanan FRIENDS, HUMANS, COUNTRYROBOTS: LEND ME YOUR EARS

Hardware — Rice THE TIME HAS COME TO TALK

Voice Systems — Atmar MICROPROCESSOR UPDATE: ZILOG Z80

Hardware — Hashizume MACHINE LANGUAGE PROGRAMMING FOR THE "8008"-Chapter 2

Software — Wadsworth JACK AND THE MACHINE TALK (or, The Making of an Assembler)

Software — Grappel-Hemenway WHAT'S AN |2l (I squared L)?

Hardware — Steeden

Nucleus

2

In This BYTE

4

Some Notes on Clubs

12

Letters

50,

78,

83,

86,

90,

98,

105,

122

i

What's New?

74

Book Review

76

BYTE's Bugs

77

Classified Ads

81

Software Bug of the Month 3

88

Systems of Note

95

Functional Specifications

100

Clubs, Newsletters

126

Tool Box Answers

128

BOMB

128

Reader's Service

PUBLISHERS

Virginia Peschke

Manfred Peschke

EDITOR

Carl T Helmers, Jr

GENERAL MANAGER

Manfred Peschke

PRODUCTION MANAGER

Judith Havey

CIRCULATION

Deborah R Luhrs

DEALER CIRCULATION

Deena Zealy

PUBLISHERS ASSISTANTS

Cheryl Hurd

Caro Kandel

Carol Nyland

ADVERTISING

Elizabeth Alpaugh

Virginia Peschke

TYPOGRAPHY

Custom Marketing Resources, Inc

Goodway Graphics

Mary Lavoie

Taimi Woodward

PHOTOGRAPHY

Ed Crabtree

Custom Marketing Resources, Inc

ART

Mary Jane Frohlich

Bill Morello

PRINTING

The George Banta Company

Custom Marketing Resources, Inc

ASSOCIATES

Bob Baker

Dan Fylstra

Harold A Mauch

Chris Ryland

CONTEST EDITOR

Janice D Black

BYTE magazine is published monthly by BYTE Publications, Inc, 70 Main St, Peterborough, New Hampshire 03458. Subscription rates are $12 for one year worldwide. Two years, $22. Three years, $30. Second class postage paid at Peterborough New Hampshire 03458 and at additional mailing offices. Phone 603-924-7217. Entire contents copyright 1976 BYTE Publications, Inc, Peterborough NH 03458. Address editorial correspondence to Editor, BYTE, 70 Main St, Peterborough NH 03458.

Some Notes on Clubs

Editorial by Carl Helmers

Mapping Sessions

On April 28 1976 I attended one of the biweekly meetings of the Homebrew Computer Club in Palo Alto CA with Dave Fylstra and Mike Wilbur of Stanford Research Institute as my guides. The meeting was most interesting from several points of view. One of the best features was the session of "mappings" which occupied the first portion of the evening's activity. This activity is one which would be well worth instituting by clubs elsewhere, so I'll describe my impressions.

The mapping session provides a mechanism for various members to advertise what they personally have to offer or what they are personally looking for. It is a way for the persons attending the meeting to find other persons with similar (or complementary) interests so that they can get together for exchanges of software, surplus components, expertise in fixing bugs, etc.

The key to the mapping session is a large set of people (in the Homebrew Computer Club, n=^400) and an efficient "moderator" to coordinate the session (in the Homebrew Computer Club meeting of April 28, this was

TOWARD SPEECH INPUT?

Speech by computers is now quite possible and reduced to the form of output peripherals which can be commercially purchased. The problem of "pattern recognition" as applied to human speech inputs is a more difficult problem. For an excellent background tutorial on the subject of speech recognition, see an article by George M White of the Xerox Palo Alto Research Center, page 40 of the May 1976 IEEE Computer magazine. (Any good engineering library should have a subscription to this publication as well as the other technical journals of the IEEE).

Lee Felsenstein). The moderator selects individuals who have raised hands to indicate they have an announcement. (The mechanism would obviously not work if everyone yelled at once.) Once recognized, the individual selected stands up, states his or her name, gives a short description of interests for the evening, then sits down. The purpose of standing up is to allow others in the audience to get a visual fix on the person so that he or she can be located during a "random access" session at the end of the meeting. After each announcement, the moderator selects another person from those with pending announcements.

The moderator also serves to smooth out the process in several ways. Since various people do not speak clearly enough to be heard throughout the assemblage, the moderator will often summarize and repeat the person's request through the PA system if quizzical looks are perceived at various places in the gallery. Sometimes, if the topic of the person's announcement is exciting or generates extreme interest in the audience, the moderator can decide to obtain an informal poll of interested persons by asking for a show of hands. Also, if a long winded person gets the floor, the moderator has the crucial function of cutting off the speaker if necessary, using a polite but firm approach. Detail discussions are the province of small groups of interested persons getting together later in the evening, and are to be avoided during the mapping session.

The announcements people offer include fixes of hardware problems, special interest applications areas, personal surplus hardware or parts, copies of personal software, etc. For example, at the April 28 meeting, Tom Pittman, author of a Tiny BASIC for the 6800 processor, stood up and described the fact that he had it available with paper tape code and documentation in a package costing a nominal $5. [See page 76 of July

Continued on page 126

SUPER CHPi

TheZ-80CPUbyZilog

From The Digital Group, of course.

If you are considering the purchase of an 8080-based system, look no further. The Z-80 has arrived. A new generation 8080 by the same individuals who helped design the original 8080 — combining all the advantages of the 6800, 6500 and 8080 into one fantastic little chip! And, the Z-80 maintains complete compatibility with 8080 software.

What's even better . . . the Z-80 is being brought to you by The Digital Group — people who understand quality and realize you expect the ultimate for your expenditure. With the Z-80, combined with the Digital Group System's videobased operation, you're at state of the art. There's no place better.

Take a look at some specifications:

Z-80 FEATURES

• Complete compatibility with 8080A object code

• 80 new instructions for a total of 158

• 696 Op codes

• Extensive 16-bit arithmetic

• 3 Interrupt modes (incl 8080), mode 2 provides 128 interrupt vectors

• Built-in automatic dynamic memory refresh

• Eleven addressing modes including:

Immediate

Immediate extended

Page Zero

Relative

Extended

Indexed

Register

Implied

Register Indirect

Bit

Combination of above

• New Instructions (highlights):

Block move up to 64k bytes memory to memory Block I/O up to 256 bytes to/from memory directly String Search Direct bit manipulation

• 22 Registers — 16 general purpose

• 1, 4, 8 and 16 bit operations

DIGITAL GROUP Z-80 CPU CARD

• 2k bytes 500ns static RAM

• 256 bytes EPROM bootstrap loader (1702A)

• 2 Direct Memory Access (DMA) channels

• Hardware Interrupt controller

Supports all 3 modes of interrupt Mode 2 supports 128 interrupt vectors

• Data and Address bus lines drive 30 TTL loads

• Z-80 runs at maximum rated speed

• Single step or single instruction step

• EPROM de-selectable for full 64k RAM availability (programs may start at location 0)

• Complete interchangeability with Digital Group 8080A, 6800 and 6500 CPUs

The Z-80 is here. And affordable. Prices for complete Digital Group systems with the Z-80 CPU start at $475. For more information, please call us or write. Now.

THE DIGITAL GROUP INC.

PO. BOX 6528 DENVER.CO 80206 (303)861-1686

What Do You Do With a Video Disk?

Martin Buchanan 2040 Lord Fairfax Rd Vienna VA 22180

The new video disk technology will probably be "write only once" memory. But that won't matter much, for with essentially infinite storage (50^ per billion bytes) you can store each new version of a program at a new physical location until the disk is full. Then you start a new disk.

In one to three years, for less than $1,000, you should be able to buy a mass storage system with the following characteristics:

Directly accessible in 10-50 ms.

Data transmission rate of 15,000,000 bits per second.

On line capacity of 4,000,000,000 bytes.

Storage units costing $2 each.

The only limitation on the first such systems may be a "write once" limitation. Once something is recorded, it is recorded permanently. A California engineering consultant has told me that this limitation can be overcome, but I haven't researched the suggested techniques. The limitation isn't particularly serious because essentially infinite storage (50^ per billion bytes!) will allow you to store each new version of a file or program in a new location. Not writing over old versions of files and programs will certainly aid documentation.

Table la: Systems.

The key to this technology is "videodisks." Several companies, here and abroad, have developed home videoplayers, all using disks as their recording medium. Two main types are in competition. RCA uses variations in capacitance to record information with an arm and head which track the grooves and pick up the signal. The RCA disks can only be accessed serially (sequentially); like a magnetic tape or audio cassette, to access a record you must pass over all the records between the desired record and your present position. Philips and MCA Discovision have developed optical players which use a laser to scan the disk. Information is stored in "micropits" less than a micron in diameter which produce changes in the beam detected by photodiodes. These optical systems are direct access. The user can address any frame and access it quickly, regardless of the present position of the mechanism. Both systems are scheduled for

low speed audio cassette interface

system access on line data rate access

cost type capacity (bits/sec) time (Kbytes)

<$100 serial 25-540 110-600 seconds to minutes

Processor Technology CDS-VIM last cassette system

serial 128 1200 seconds to minutes

Altair 88 DCDD disk kit (incl. disk controller, disk drive, one floppy disk and software controller)

$1480 direct 300 250,000 400 msec average

digidisk system

-$1000 direct 4,000,000 15,000,000 30 msec average

marketing in late 1976. The RCA system has a projected price of $400 and the Discovision system, $500. Both systems are players only, for use with existing color television receivers.

The Discovision system will store 36,000 color video frames on a 12 inch floppy plastic disk. At roughly a million bits per frame, such disks can be expected to hold over four billion bytes if adapted for digital storage. The disk will rotate at 1500-1800 rpm. This implies an average latency time of less than 20 ms. Assuming an average seek time and transfer time of 10 ms yields an average access time of 30 ms. 15 mbps is a very high data transmission rate and is best handled by conversion to 8 bit or 16 bit words read in parallel to interface via direct memory access to semiconductor main memories. A digital system for personal computing will also require a write capability, a laser precise enough and powerful enough to burn new information into the disk. Possibly, the same laser can be used both to read and write, at different power levels. I make a projection that the added write capability, software for controlling the system and smaller production runs will result in a system cost of $1000. Estimates of the cost of videodisk production run as low as 504 per disk. I've projected an end user cost of $2 each for blank disks for the digital system. A nice amount of information to store on the "digidisk" is 232 bytes, the number addressable by 32 bits, just over four billion.

Table 1 compares this hypothetical system with systems presently available for home computers. There are three main classes of computer memory. Main memory is fast, expensive and directly addressable by the CPU. RAM and ROM memories are accessible in several hundred nanoseconds and cost 2-64 per byte. Secondary storage is less expensive and directly accessible in less

Table lb: Media.

Table 2: Information Formats in Omnidisk System.

1. Color video.

2. Black and white video (can use color format but is wasteful).

3. Digital storage (232 bytes).

4. Music or voice (one or several channels).

5. High resolution black and white frames to replace microfilm and fiche in libraries and homes.

than a second. Magnetic drums and disks are secondary storage devices. Their speed allows use in virtual memory systems where the operating system software moves programs and program storage in and out of main memory as needed, freeing the user from having to program around severe memory restrictions. External storage is least expensive, but is accessed serially, making it unsuitable for use in virtual systems. Magnetic tape, paper tape, punched cards, and audio cassette are all serially accessed external storage media. External storage is used for storing programs and data when not in use. Optical storage of the type projected here will be directly accessible for use in virtual systems, will be faster than floppy disks, will be 10,000 times cheaper per byte of storage, and nearly 1,000 times cheaper per byte of on line capacity.

A more useful but more expensive system will be capable of accessing all or several of the five types of information in table 2. Several types of information can be stored on a single disk. For example, a book or music library could come with the software

storage unit and cost

approximate cost (4/byte of storage)

approximate

cost (tf/byte of

on line capacity)

low speed interface

audio cassette $1-2

4-40 x 10"4

2 x 10"2

Processor Technology fast system

C30 cassette ~$1

5 x 10"4

more than a low sp interface, but fasti

Altair 88 DCDD

floppy disk $15

5x 10"3

5x 10"1

digidisk system

optical disk ~$2

~5x 10"8

-2.5 x 10"5

The most likely video disk technology to be applicable in mass storage areas will be the Discovision laser system of Philips and MCA, since it has direct access capability and a potential adaptation to allow writing of information in a personal system.

One problem of optical disks is their sheer abundance of data storage capacity.

The overhead per unit of information will decline, though. It does not take 10,000 times as much software to access 10,000 times as much data.

to access it. Input and output will be possible in all formats under microcomputer control. Interesting esthetic effects will be possible. You will be able to program your system so your TV interprets music as a color pattern, or displays complex and flickering hypnotic bit patterns as your computer operates.

Some Long Range Speculations

Cheap storage implies that wasteful but marginally more useful data structures will be used. Hash codes and bit manipulation may be unknown to most users of the next generation of home computer systems. One problem with optical disks is their sheer abundance of capacity. It would be clumsy to send a 15 minute tape to a friend on a disk which can hold hundreds of hours of music or voice. What you will do instead is tape simultaneously into your correspondence disk and a cassette, mail the cassette to a friend who plays it into his correspondence disk as he listens and who can then reuse the cassette.

Larger storage implies more complex data structures. A small conventional disk system that I use now has the following hierarchy of structures:

(magnetic disk) group library file

record word

Cataloging, indexing, and writing the software to access the wealth of information in existence will be an important profession. The overhead per unit of information will decline, though. It does not take 10,000 times as much software to access 10,000 times as much data.

Electro Optical Libraries

I believe this new storage medium will be so convenient that it will replace conventional libraries. The first generation library system will be photographic, each page the equivalent of one or more video frames depending on the desired resolution. Black and white images will satisfy most demands and higher resolution than TV will be desirable. 10 — 40,000 pages will be stored on each disk, the equivalent of 50 — 200 books. This kind of system will resemble microfiche in its storage capacity but will be directly accessible in milliseconds. The first file on the disk will be the software for reading the disk and a lookup table which tells the computer where each title begins. This is an application of the omnidisk

system. Lawyers, doctors, architects and engineers will be among the first users as their professional libraries become available on optical disk. Converting existing fiche and film to the new medium will be done by machine. Putting the Library of Congress onto optical disk will be tedious and expensive if photographed by hand. A robot camera with demand feed conveyer, waldos for turning pages and automatic focussing and alignment would be useful for converting large libraries. Such a library could require 10,000 disks, and will require a more complex system to make the system fast and economical. At least one prototype disk system has been develop d with an automatic feeding mechanism. The principle can be applied to constructing a college or university system with the following elements:

1. 100 high resolution CRTs for accessing material,

2. A read only multiple player which can play up to 100 disks simultaneously,

3. A disk store accessed by the multiple player under computer control.

If a user requests material on a disk other than the one he is currently using, his current demand is deleted, a disk that is not being used is returned to the store if drive space is needed, and the disk with the requested material is brought on line. If a user requests a disk being used by another user, they can both read from it in a timesharing arrangement. The system will be virtual. The user accesses material in the same way whether or not it is on line (though it may take several seconds to bring new disks on line). Bigger optical storage records can make the system faster and cheaper.

The average book can be ASCII coded in about 5 million bits. In this form, one optical disk could hold 6400 books. Each book will cost less than a tenth of a cent to produce (compare with present photocopying costs of several cents per page, and with skyrocketing book prices). It will take less than a second for the system to read or write an entire book. ASCII text and high resolution photos (for illustrations, graphs and diagrams) can be interleaved on the same disk along with the software for controlling access. The Library of Congress will fit in a filing cabinet, but to economically convert it to ASCII records, you need advances in optical character recognition so a robot can scan a printed page and read the characters.

Continued on page 15

8

If you thought a rugged, professional yet affordable computer didn't exist,

think IMSAI

8080.

Sure there are other commercial, high-quality computers that can perform like the 8080. But their prices are 5 times as high. There is a rugged, reliable, industrial computer, with high commercial-type performance. And prices that are competitive with Altair's hobbyist kit. The IMSAI 8080. Fully assembled, it's $931. Unassembled, it's $599. And ours is available now.

In our case, you can tell a computer by its cabinet. The IMSAI 8080 is made for commercial users. And it looks it. Inside and out! The cabinet is attractive, heavy-gauge aluminum. The heavy-duty lucite front panel has an extra 8 program controlled LED's. It plugs directly into the Mother Board without a wire harness. And rugged commercial grade paddle switches that are backed up by reliable debouncing circuits. But higher aesthetics on the outside is only the beginning. The guts of the IMSAI 8080 is where its true beauty lies.

The 8080 is optionally expandable to a substantial system with 22 card slots in a single printed circuit board. And the durable card cage is made of commercial-grade anodized aluminum. The Altair kit only provides 16 slots maximum in four separate sections, each section

requiring 200 solder connections.

The IMSAI 8080 power supply produces a true 28 amp current, enough to power a full system. The Altair produces only 8 amps.

You can expand to a powerful system with 64K of memory, plus a floppy disk controller, with its own on board 8080-and a DOS. An audio tape cassette input device, a printer, plus a video terminal and a teleprinter. These peripherals will function with an 8-level priority interrupt system. IMSAI BASIC software is available in 4K,

that you can get in PROM. And a new $139 4K RAM board with software memory protect.

Find out more about the computer you thought didn't exist. Get a complete illustrated brochure describing the IMSAI 8080, options, peripherals, software, prices and specifications. Send one dollar to cover handling.

Call us for the name of the IMSAI dealer nearest you.

Dealer inquiries invited.

wba

IMS Associates, Inc.

14860 Wicks Boulevard San Leandro, CA 94577 (415) 483-2093

^B

Imagine a microcomputer

Imagine a microcomputer with all the design savvy, ruggedness, and sophistication of the best minicomputers.

Imagine a microcomputer supported by dozens of interface, memory, and processor option boards. One that can be interfaced to an indefinite number of peripheral devices including dual floppy discs, CRT's, line printers, cassette recorders, video displays, paper tape readers, teleprinters, plotters, and custom devices.

Imagine a microcomputer supported by extensive software including Extended BASIC. Disk BASIC, DOS and a complete library of business, developmental, and industrial programs.

Imagine a microcomputer that will do everything a mini will do, only at a fraction of the cost.

You are imagining the Altair1" 8800b. The Altair 8800b is here today, and it may very well be the mainframe of the 70's.

The Altair 8800b is a second generation design of the most popular microcomputer in the field, the Altair 8800. Built around the 8080A microprocessor, the Altair 8800b is an open ended machine that is compatible with all Altair 8800 hardware and software. It can be configured to match most any system need.

NOTE: Altair is a trademark ot MITS. Inc.

SCQSttP SEDEEItb

Redesigned front panel. Totally synchronous logic design. Same switch and LED arrangement as original Altair 8800. New back-lit Duralith (laminated plastic and mylar, bonded to aluminum) dress panel with multi-color graphics. New longer, flat toggle switches. Five new functions stored on front panel PROM including: DISPLAY ACCUMULATOR (displays contents of accumulator), LOAD ACCUMULATOR (loads contents of the 8 data switches (A7-AO) into accumulator) OUTPUT ACCUMULATOR (Outputs contents of accumulator to I/O device addressed by the upper 8 address switches), INPUT ACCUMULATOR (inputs to the accumulator from the I/O device), and SLOW (causes program execution at a rate of about 5 cycles per second —for program debugging).

Full 18 slot motherboard.

Rugged, commercial grade Optima cabinet.

- New front panel interface board buffers all lines to and from 8800b bus.

-Two, 34 conductor ribbon cable assemblies. Connects front panel board to front panel interface board. Eliminates need for complicated front panel/bus wiring.

New, heavy duty power supply +8 volts at 18 amps, + 18 volts at 2 amps, 18 volts at 2 amps. 110 volt or 220 volt operation (50/60 Hz). Primary tapped for either high or low line operation.

■New CPU board with 8080A microprocessor and Intel 8224 clock generator and 8216 bus drivers. Clock pulse widths and phasing as well as frequency are crystal controlled. Compatible with all current Altair 8800 software and hardware.

altair 8800-b

MITS, Inc. 1976/2450 Alamo S.E./Albuquerque, New Mexico 87106

Letters

Very soon the interest is going to shift from "what to buy" and "how to get it going" over to "what to do with it."

COMPILER INPUTS NEEDED

Do you have space at the front of your Letters column for this request? [Yes.]

I'm writing a compiler for 8080 systems, and I'd like to know what everybody would like to have in it. I'm personally leaning towards PL/I, which is my favorite language, but the compiler will be able to accept FORTRAN as well. =

Would everybody take a moment to write me and tell me what they'd like to see in a new compiler? I'll try to put in all the routines you can think of.

And please, don't be afraid to write simply because you think somebody else might, or you're too "new at the game." Although I've been an IBM systems engineer, I also spent several years as a disc jockey in St Louis and Kansas City. No matter who you are, your ideas need to be put into this compiler.

Peter Skye

Chief Engineer

Watermark Inc

10700 Ventura Blvd

No Hollywood CA 91604

(213)980-9490

Let us know when it's ready.

EMULATION, ANYONE?

I just finished reading the literature on the new PCM-12 microcomputer which uses the Intersil IM6100 MPU that recognizes the Digital Equipment Corporation PDP-8 instruction set. It occurs to me that a very worthwhile software development project for the home microcomputer system would be an interpretive translator/emulator program that would allow the microcomputer to run DEC's PDP-8 software (ie: program would input a single 12 bit PDP-8 instruc

tion and then output one or more microcomputer 8 bit instructions which would be immediately executed and accomplish the same task). This would allow the hobbyist to take advantage of the huge mountain of software developed for this very popular minicomputer, which includes such high level languages as BASIC, FORTRAN, ALGOL, FOCAL, etc. Most of the software is available over the counter from DEC for a very nominal charge.

Because the architecture of the PDP-8 is based on a 12 bit word, the 8 bit microcomputer would have to operate on each word as two 6 bit half words stored in consecutive locations. The main disadvantage with this emulator method would lie in the increased memory length and execution time required.

I would like to see some dialogue started in the pages of BYTE on the desirability and feasibility of a program such as this. Some prime candidates for translators would be microcomputer systems based on the 8080, M6800, and MCS6500 (especially the latter since no high level languages exist for this unit, but a number of very low cost systems are available).

Don B Keek J r

Senior Engineer, Loudspeakers

ElectroVoice Inc

600 Cecil St

Buchanan Ml 49107

Is anyone doing such an emulation? Rumor has it that at least one or two PDP-11 emulators are around running on 8080s and the like, and the technical challenges of a PDP-8 version cannot be any worse.

CRITIQUE AND SUGGESTIONS

Your article in the March BYTE "Assembling Programs by Hand" [page 52] was very pertinent and timely. It's probably the method most of your readers will be using.

The actual "how to do it" part was well done and allowed rather complete comprehension by most of your readers. But the first part of the article setting up the example to work on was probably beyond most of your readers, at least those who did not come up through programming. Either a simpler example or more explanation of the example used would have made the article even more valuable.

We see much written on interfacing to peripherals such as TTY, TV keyboards, tape cassettes, etc, which, of course, is needed. But isn't it time to start going into some of the other functions a growing number of

12

The intecolor 8001 Kit

A Complete 8 COLOR intelligent CRT Terminal Kit

$1,395

"Complete" Means:

• 8080 CPU • 25 Line x 80 Characters/Line • 4Kx8 RAM • PROM Software • Space for UV Erasable PROM • 19" Shadow Mask Color CR Tube • RS232 I/O • Selectable Baud Rates to 9600 Baud • Single Package • 8 Color Monitor • ASCII Set* Keyboard

• Bell • Manual

And you also get the Intecolor" 8001 9 Sector Convergence System for ease of set up (3-5 minutes) and stability.

Additional Options Available:

• Roll • Additional RAM to 32K • 48 Line x 80 Characters/Line

• Light Pen • Limited Graphics Mode • Background Color

• Special Graphics Characters • Games

Delivery 30-60 days ARO. •Domestic USA price

ISC WILL MAKE A BELIEVER OUT OF YOU.

Send me.

_ (No.) intecolor™ 8001 kits at $1,395 plus $15.00 shipping charges each. Enclosed is my □ cashier's check, □ money order, □ personal check*

Shipment for $

NAME .

ADDRESS

CITY

STATE

(£9

.ZIP

*Allow 8 weeks clearance on personal checks.

intelligent Systems Corp.

4376 Ridgegate Drive, Duluth, Georgia 30136 Telephone (404) 449-5961

®

Should I do it in hardware or software?

Nothing compares with the satisfaction of exercising complete control over a small universe which can be tailored and operated to suit one's needs.

your readers will become interested in? For example, I would think a number of readers will be wanting to control some interrelated physical quantities which are measured with digital and analog sensors/transducers (digital tachometers, digital flowmeters, temperature sensing, etc). Hence a detailed article on processing input pulse trains might be well received. The reverse, an in depth article on outputting pulse trains to move something via a stepping motor (now relatively inexpensive) should be equally popular. Many readers might be interested in inexpensive AD inputs. Although Motorola covered this subject well in their AN-757 note for the 6800, it could still be "interpreted" to your readers.

All of this could pave the way for some articles on dedicated digital control systems which should be intriguing to your readers as they grow in sophistication. I say all this because it would seem that very soon the interest is going to shift from "what to buy" and "how to get it going" over to "WHAT TO DO WITH IT."

Gordon March Cedar Rapids IA

Potential authors take note. Gordon March has some good suggestions to make, concerning both implementation and choice of subject matter of articles.

ANOTHER ARTICLE IDEA

I think BYTE is fantastic. I have been thinking about writing a little algebraic expression processor for several years now but could never figure out how to exactly.

When I got February and March issues of BYTE and read the articles on Processing Algebraic Expressions [page 26, February; page 62, March], things started clicking into place. Now all I have to do is test it on the college's Univac 1106 and see if it works.

I don't have a micro yet and probably won't get one for a few years. When I do, it will probably be based on Intel's 3000 series because I want to be able to define my own instruction set. It would be very helpful if you had an article on this family of chips.

R Tim Coslet Phoenix AZ

YE OLDE HARDWARE - SOFTWARE TRADEOFF

I was very impressed with Mr Frank's novel approach to the design of analog to digital convenors. For those who missed the May 1976 issue, he suggested [page 70]

using a microprocessor for the feedback element of an ADC. This technique has the advantages of being inexpensive, and very simple to put together. However my applications for ADC require higher speeds (20 kHz) and complex data reduction. In light of these requirements, CPU control of the ADC loop is too slow, and wasteful of processor time. Essentially all the processor is doing is acting as an Up/Down Counter, at least in the "Tracking" configuration. Therefore, at a slight increase in cost, I would replace the processor as control element, with the appropriate MSI TTL packages (ie: 74193). This has the effect of greatly speeding up the conversion time, and unburdening the processor so it can do its thing in between sample times. The question boils down to the old one: "Should I do it in hardware or software?" The answer is not usually an obvious or easy one; but my experience tells me to try hardware first, if the costs are almost the same. Microcomputers can have a hard time keeping up with real time, and my impulse is to try to ease their minds by doing some of the work outside in supporting circuitry. The difficult part is making sure the total system gets the maximum effectiveness from each component part.

Ira Rampil

University of Wisconsin

Dept. of EE and CE

Madison Wl 53706

PS: The Motorola Linear IC Data Book, 3rd edition, has a nice section on applications of their data conversion chips.

YOUOLDTSOANDTSO!

I don't think that anyone has thus far mentioned in BYTE the single greatest impetus for DP professionals like myself to take up personal computing. That impetus is frustration. The amateur cannot appreciate how frustrating it can be, even irr a multiCPU shop. There is slow batch turn-around time, slow TSO response time, missing printouts, lost decks, and of course the inevitable system down time .... not to mention the restraints of system standards, rules, and regulations.

It is so satisfying to turn on one's own system, input through its console, and enjoy instantaneous response. There is nothing to compare with the satisfaction of exercising complete control over a small universe which can be tailored and operated to suit one's needs. And there is the sense of freedom in

Continued on page 108

14

Continued from page 8

When your children get good grades, you won't get them a Brittanica, but a Universal Data Base, a compendium of human knowledge made up of several thousand selected books.

What about music? One optical disk will be able to record hundreds of albums. Around 1980 you may see and hear this ad on your TV:

"Discomania! The complete works of the Beatles, Cat Stevens, Beethoven, Johnny Cash, the Mormon Tabernacle Choir, and many many more! Just send your name and address, check or money order for $9.95 to ... or call ... toll free to order your copy now. Hurry, hurry. Our supply is limited."

Problems of Copyright

Works in the public domain like classical, religious, and ethnic music will be quickly offered once the technology is widely available. Pirates could have a field day with easily copied disks. Duplicating a rock and roll collection costing hundreds of dollars, putting it on one disk and making a killing could become quite enticing to unethical individuals. Copyright conventions will have to evolve and adapt to this medium as it becomes available.

Education via Disk

With versatile inexpensive mass storage media, correspondence schools might evolve into a new form. You might receive one or more disks containing:

text,

pictures and film clips where needed, voice for language lessons, all the software necessary for immediate interactive examinations and correction of mistakes, including a diagnostic exam at the start of the course, and a final at the end.

For language courses you may be able to buy a voice analyzer that digitizes your voice response so the software can check your pronunciation.

Present schools will be obsolete as the free market provides the tools for a superior form of education. The home computer will teach better and faster, providing individual attention.

The average book text can be ASCII coded in about five million bits. In this form, one optical disk could hold 6400 books.

The compulsory education laws will probably be reduced to the requirement of a yearly examination covering basic subjects. For poorer families, there will be neighborhood computer centers (lots of space and low rents in those deserted former schools) with perhaps ten children using each terminal during the week, each with his or her own software library and keyword.

Long Distance Communications

With millions of computers in homes and small businesses, the market for cheap long distance communications will open up. My computer in DC will talk to your computer in California via phone hookups to DC and Los Angeles data transmission centers which send information across the country. There is one present bottleneck: Phone lines can't handle high data rates. They are for audio signals, and signals at 1 kHz or so are extremely slow compared to a potential 15 MHz video disk. With 10^ gigahertz of bandwidth via laser networks you could reserve 20 MHz for every computer in the country. That requires optical circuitry now being developed. Eventually the present hard wired phone technology will be supplemented and then superseded by a fiber optic network.

With large cheap optical storage, new levels of reliability will be cheap and desirable. Parity bits and error checking codes will be in vogue.

The postal service may go the way of the pony express. The network made economical by computer traffic will also carry the daily paper, BYTE, and first class mail. Why physically transport data if an energy saving electronic communication does the same thing? Data privacy will be easy to secure. With cheap storage you can generate your own "one time pad," a cipher which cannot be broken because it uses an infinite cipher alphabet. Ciphering and deciphering will be computerized.

With cheap processors and unlimited cheap fast memory, what can't we do? The effects on individuals and society will be major and sometimes unexpected. Today's personal computer is but a first step in this trend toward sophisticated applications.

Why physically transport data such as letters and books if an energy saving electronic communications medium can accomplish the same thing?

15

HARD PALATE

NASAL TR SOFT PALATE

VELUM ORAL TRACT TONGUE BODY

NOSTRILS

TONGUE TIP

Figure I: The Human Vocal Tract. The human vocal tract is roughly described as a tube approximately 17.4 cm long with varying resonance characteristics as muscles control the shape. The tract splits into two parts, nasal and oral, at the top, with a valve called the velum providing flexible control of the nasal resonances in given utterance. An electronic model of this natural organ roughly parallels the function of the tract.

DESIRED

y

CURVE

~"">d

w "B!^

A

,-*i

ACTUAL DAC OUTPUT

Figure 2: DA C Quantization Errors. The actual output of a computer to the analog world is a step function (in the absence of any filtering). This leads to the problem of quantization errors, depicted conceptually here by the shaded areas in between the smooth analog function and its closest step function approximation. Low precision digital to analog conversions accentuate this problem.

Friends, Humans,

D Lloyd Rice Computalker Consultants 821 Pacific St #4 Santa Monica CA 90405

You've got your microcomputer running and you invite your friends in to show off the new toy. You ask Charlie to sit down and type in his name. When he does, a loudspeaker on the shelf booms out a hearty "Hello, Charlie!" Charlie then starts a game of Star Trek and as he warps around thru the galaxy searching for invaders, each alarming new development is announced by the ship's computer in a warning voice, "Shield power low!", "Torpedo damage on lower decks!"

The device that makes this possible is a peripheral with truly unlimited applications, the speech synthesizer. This article describes what a speech synthesizer is like, how it works and a general outline of how to control it with a microcomputer. We will look at the structure of human speech and see how that structure can be generated by a computer controlled device.

How can you generate speech sounds artificially, under computer control? Let's look at some of the alternatives. Simplest of all, with a fast enough digital to analog converter (DAC) you can generate any sound you like. A 7 or 8 bit DAC can produce good quality sound, while somewhere around 4 or 5 bits the quantization noise starts to be bothersome. This noise is produced because with a 5 bit data value it is possible to represent only 32 discrete steps or voltage levels at the converted analog output. Instead of a smoothly rising voltage slope, you would get a series of steps as in figure 2. As for the speed of the DAC, a conversion rate of 8,000 to 10,000 conversions per second [The sample rate in conversions per second or samples per second is often quoted in units of Hertz. We will use that terminology here, although conversions

16

and Countryrobots: Lend me your Ears

per second is a generalization of the concept of cycles per second] is sufficient for fairly good quality speech. With sample rates below about 6 kHz the speech quality begins to deteriorate badly because of inadequate frequency response.

Almost any microprocessor can easily handle the data rates described above to keep the DAC going. The next question is, where do the samples come from? One way to get them would be by sampling a real speech signal with a matching analog to digital converter (ADC) running at the same sample rate. You then have a complicated and expensive, but very flexible, recording system. Each second of speech requires 8 K to 10 K bytes of storage. If you want only a few words or short phrases, you could store the samples on a ROM or two and dump then sequentially to the DAC. Such a system appears in figure 3.

If you want more than a second or two of speech output, however, the amount of ROM storage required quickly becomes impractical. What can be done to minimize storage? Many words appear to have parts that could be recombined in different ways to make other words. Could a lot of memory be saved this way? A given vowel sound normally consists of several repetitions of nearly identical waveform segments with the period of repetition corresponding to the speech fundamental frequency or pitch. Figure 4 shows such a waveform. Within limits, an acceptable sound is produced if we store only one such cycle and construct the vowel sound by repeating this waveform cycle for the duration of the desired vowel. Of course, the pitch will be precisely constant over that entire interval. This will sound rather unnatural, especially for longer vowel durations, because the period of repetition in a naturally spoken vowel is never precisely constant, but fluctuates slightly. In natural speech the pitch is nearly always changing, whether drifting slowly or

MICROPHONE

ADC

AN

LOW-PASS FILTER

PROGRAMMABLE MEMORY

ROM

y *

+

SPE

DAC

ROM

LOW-PASS FILTER

kr

*L

*\z

Figure 3: Waveform Playback from ROM Storage. One way to achieve a digitally controlled vocal output is to first digitize a passage of human speech, then store the digital pattern in memory. For a commercial product, such as a talking calculator, the limited vocabulary required makes this a feasible avenue of design, especially when a single mass produced ROM can be used in the final product. In an experimenter's system, the ROM is not needed, and programmable memory can be substituted during experiments. This is probably the least expensive way to augment an existing computer's capability with vocal output, but the memory requirements limit its use to small vocabularies. The quality of the result varies with the ADC (and DAC) sampling rate and precision.

Figure 4: Typical Vowel Waveform. In principle, a vowel is a fairly long sustained passage of sound with repetitive characteristics. The vo wel sounds are produced physiologically by the resonances of the vocal tract, and are controlled electronically by the formant filters which produce the equivalent of vocal tract resonances.

17

ACOUSTIC RESONATOR (ONE END CLOSED) (ONE END OPEN)

■ i- 17.4cm

VELOCITY OF SOUND, c ■ 34800cm/sec Xn. WAVELENGTH OF nTH MODE FREQUENCY OF nTH MODE , Fn ■ c/ Xn

FORMANT I AIR PRESSURE DISTRIBUTION

Fl ■ '/4J -500Hz

FORMANT 2 AIR PRESSURE DISTRIBUTION

I- 3X2/4 F2 ■ 3c/4J( . 1500Hz

FORMANT 3 AIR PRESSURE DISTRIBUTION

•t-5X3/4 F3- 5C/41- 2500 Hz

Figure 5: Tube Resonances. Temporarily ignore the complicated shape of the vocal tract and simplify it to a tube 17.4 cm long. Applying the equations of physics to acoustic waves in air gives resonances at several modes or natural frequencies. The standing waves along the tube at each frequency are shown, and identified as formant 1, formant 2 and formant 3. In the actual vocal tract, a more complicated and time varying geometry changes the resonances as a sound is created.

sweeping rapidly to a new level. It is of interest that this jitter and movement of the pitch rate has a direct effect on the perception of speech because of the harmonic structure of the speech signal. In fact, accurate and realistic modelling of the natural pitch structure is probably the one most important ingredient of good quality synthetic speech. In order to have smooth pitch changes across whole sentences, the number of separate stored waveform cycles still gets unreasonable very quickly. From these observations of the cyclic nature of vowels, let us move in for a closer look at the structure of the speech signal and explore more sophisticated possibilities for generating synthetic speech.

How Do We Talk?

The human vocal tract consists of an air filled tube about 16 to 18 cm long, together with several connected structures which make the air in the tube respond in different ways (see figure 1). The tube begins at the vocal cords, or glottis, where the flow of air up from the lungs is broken up into a series of sharp pulses of air by the vibration of the

Figure 6: "ah" as in "father." In figure 1, the vocal tract was shown in schematic form. Here is a similar figure showing how the tract has been modified to produce the vowel sound "ah." The human typically closes off the nasal cavity and widens out the oral cavity by opening the mouth during this sound.

vocal cords. Each time the glottis snaps shut, ending the driving pulse with a rapidly falling edge, the air in the tube above vibrates or rings for a few thousandths of a second. The glottis then opens and the airflow starts again, setting up conditions for the next cycle.

The length of this vibrating air column is the distance from the closed glottis up along the length of the tongue and ending at the lips, where the air vibrations are coupled to the surrounding air. If we now consider the frequency response of such a column of air, we see that it vibrates in several modes or resonant frequencies corresponding to different multiples of the acoustic quarter wavelength. There is a strong resonance or energy peak at a frequency such that the length of the tube is one quarter wavelength, another energy peak where the tube is three quarter wavelengths, and so on at every odd multiple of the quarter wavelength. If a tube 17.4 cm long had a constant diameter from bottom to top, these resonant energy peaks would have frequencies of 500 Hz, 1500 Hz, 2500 Hz and so on. These resonant energy peaks are known as the formant frequencies. Figure 5 illustrates the simple acoustic resonator and related physical equations.

The vocal tract tube, however, does not have a constant diameter from one end to the other. Since the tube does not have constant shape, the resonances are not fixed at 1000 Hz intervals as described above, but can be swept higher or lower according to the shape. When you move your tongue down to say "ah," as in figure 6, the back part is pushed back toward the walls of the

18

throat and in the front part of the mouth the size of the opening is increased. The effect of changing the shape of the tube in this way is to raise the frequency of the first resonance or formant 1 (F1) by several hundred Hz, while the frequency of formant 2 (F2) is lowered slightly. On the other hand, if you move your tongue forward and upward to say "ee," as in figure 7, the size of the tube at the front, just behind the teeth, is much smaller, while at the back the tongue has been pulled away from the walls of the throat, leaving a large resonant cavity in that region. This results in a sharp drop in Fl down to as low as 200 or 250 Hz, with F2 being increased to as much as 2200 or 2300 Hz.

We now have enough information to put together the circuit for the oral tract branch of a basic formant frequency synthesizer. After discussing that circuit, we will continue on in this way, describing additional properties of the speech mechanism and building up the remaining branches of the synthesizer circuit.

A Speech Synthesizer Circuit

To start with, we must have a train of driving pulses, known as the voicing source, which represents the pulses of air flowing up thru the vibrating glottis. This could be simply a rectified sine wave as in figure 8. To get different voice qualities, the circuit may be modified to generate different waveform shapes.

This glottal pulse is then fed to a sequence of resonators which represent the formant frequency resonances of the vocal tract. These could be simple operational amplifier bandpass filters which are tunable over the range of each respective formant. Figure 9 shows the concept of a typical resonator circuit which meets our requirements. IC1, IC2 and IC4 form the actual bandpass filter, while IC3 acts as a digitally controlled resistance element serving to vary

Figure 7: "ee" as in "heed." In contrast to figure 6, when the "ee" vowel sound is created, the mouth opening tends to be narrowed; and the upper end of the vocal tract is restricted. This lowers the frequency of the first resonant mode and raises the frequencies of the second and third. Referring to table 1, the "ee" vowel sound has some of the highest resonances for formants F2 and F3 and the lowest for FJ.

DATA BUS

Figure 8: Voiced Sounds from the Glottis. Sounds which have definite pitch are called voiced sounds. In the natural larynx, these sounds are generated by the vocal chords and drive the vocal tract at the glottis. In an electronic analog, the voiced sounds can be generated by a programmable counter (to set the frequency) which in turn creates a sine wave of the same frequency. A rectified sine wave is a good source for the glottal pulses used in the electronic model of a larynx used in the author's approach to speech generation.

the resonant frequency of the filter. Several such resonator circuits are then combined as in figure 10 to form the vocal tract simulator. The voicing amplitude control, AV, is another digitally controlled resistance similar to IC3 of figure 9.

This gain controlled amplifier configuration is the means by which the digital computer achieves its control of speech signal elements. The data of one byte drives the switches to set the gain level of the amplifier in question. In figures 10, 13 and 15 of this article, this same variable resistance under digital control is shown symbolically as a resistor with a parameter name, Figure 9: Typical Formant

Resonator Circuit. A digitally controlled band pass filter can be built from four operational amplifiers and 8 digitally controlled analog switches. The filter characteristics are set by the choice of the resistance and capacitance elements as well as the digital control word. The operational amplifier IC3 serves as a gain controlled amplifier in the feedback loop, which alters the filter resonance.

^h

1^VNS , FILTERED

AyS~~ OUTPUT

19

AC

SOURCE WITH DIGITAL FREQUENCY CONTROL

f

AV = 8 BITAMPLITUDE CONTROL

F3

Fl 8 BITS

F2 8 BITS

F3 8 BITS

Figure 10: A first approximation of the voice synthesizer can be constructed by using three formant filters in series with differing resonance settings all controlled by 8 bit digital words. The resistance indicated as AV is an operational amplifier circuit (see IC3 of figure 9) with a digital gain control input. It is thus a programmable element of gain less than unity, in other words the electronically controlled equivalent of a variable resistance. This notation of a controlled resistance is used in figures 13 and 15 as well.

heed

hid

head

had

hod

paw

hood

who

Table 1: Steady State English Vowels. The vowel sounds are made by adjusting the formant resonances of the human vocal tract to the frequencies listed in this table. These figures are approximate, and actual formant resonances vary from individual to individual. In a speech synthesizer based upon an electronic model of the vocal tract, the formant frequencies are set digitally using operational amplifier filters with adjustable resonant peaks.

F1

F2

F3

250

2300

3000

375

2150

2800

550

1950

2600

700

1800

2550

775

1100

2500

575

900

2450

425

1000

2400

275

850

2400

rather than as an operational amplifier with analog switches.

Generating Vowel Sounds

The vocal tract circuit as shown thus far is sufficient to generate any vowel sound in any human language (no porpoise talk, yet). Most of the vowels of American English can be produced by fixed, steady state formant frequencies as given in table 1. A common word is given to clearly identify each vowel. The formant frequency values shown here may occasionally be modified by adjacent consonants.

An alternative way to describe the formant relationships among the vowels is by plotting formant frequencies F1 vs F2 as in figure 11. F3 is not shown here because it varies only slightly for all vowels (except those with very high F2, where it is somewhat higher).

The F1-F2 plot provides a convenient space in which to study the effects of different dialects and different languages. For example, in some sections of the United States, the vowels in "hod" and "paw" are pronounced the same, just above and to the right of "paw" on the graph. Also, many people from the western states pronounce the sounds in "head" and "hid" alike, about halfway between the two points plotted for these vowels on the graph.

A few English vowels are characterized by rapid sweeps across the formant frequency

24 00 2 2 00 2000 I 800 <M I600

< I400 9 1200

1000 800

2200 2000 I 800

N 1600

H

Z

< 1400

a.

° 1200

1000

800

■

■. B«r

\N.BUY

\ boy y.

;

y>iow

"•""hoe

I 1 1 1 1 1 1

o

o

o

O

o

O

o

o

o

o

o

O

o

O

o

o

C\J

IO

*■

in

<£

r-

eo

0t

FORMANT

1

Figure 11: The Steady State English Vowels. The distinctions between various vowel sounds can be illustrated by plotting them on a two dimensional graph. The horizontal axis is the formant 1 frequency, the vertical axis is the formant 2 frequency. A location for each vowel utterance can be determined experimentally by locating the resonance peaks with an audio spectrum analyzer.

Figure 12: English Diphthongs. A diphthong is a sound which represents a smooth transition from one vowel sound to another during an utterance. The time duration of the swap from one point to another in formant space is typically 150 to 250 ms. This graph shows typical starting and ending points for several common diphthong sounds.

20

New from Texas Instruments: An authoritative guide to understanding microprocessor software...from the beginning. Only $12.95.

—

8 i

^ as

Software Design for Microprocessors

Pf

A working knowledge of microprocessor software is essential to mastery of microprocessors. And acquiring such knowledge is now simplified with TI's new text, Software Design for Microprocessors.

This new book is designed to help you to fully understand the basics of microprocessor machine code and assembly language. It is equally suitable for the nontechnical professional as for the technically trained.

Complete, stand-alone guide:

Having more than 350 pages, the book contains the information you need to learn the language, special terms, and underlying concepts of microprocessors that lead to an understanding of the complex facets of software. Here are clear, readable discussions as well as references, graphs, tables, data sheets, examples and appendices. It's a convenient, single source to show you how to pro

gram microprocessors to do what you want.

Comprehensive text: In the first chapter, you learn basic terms, study basic machine architecture and look in detail at instructions as well as addressing. In succeeding chapters, you progress on to investigating the process of generating software... defining the support and documentation required.. .designing a simple machine to demonstrate how to program a problem. In conclusion, you gain experience by examining four sample problems.

This book is an ideal companion to TI's series of /xP Learning Modules —learning systems to help you become familiar with fundamental hardware/software relationships. Software Design for Microprocessors is I""'}0,— economically priced at <r^ Qj? \ only $12.95. Use the ^~J coupon to order your LCARflinG copy today. C€flT€R

TI Learning Center B-7

P.O. Box 5012, M/S 54 Dallas, Texas 75222

Please send me copies of

(LCB 1891) Software Design for Microprocessors at $ 12.95* per copy.

I enclose □ check □ money order for

□ I would also like a brochure on TI's Microprocessor Learning Modules.

Mail checks and money orders to: P.O. Box 3640, M/S 84, Dallas, Texas 75285. Postage paid. Add state and local taxes where applicable.!

Mail company purchase orders to: P.O. Box 5012, M/S 84, Dallas, Texas 75222. Postage and taxes will be added to your

TITLE

FIRM

ADDRESS

CITY STATE ZI

*Subject to change without notice

) AL, AZ, CA, CO. CT. FL, GA, IA, IL, IN, KY, MA, MD, Ml, MN, MO, NC, NJ, NM, NY, OH, PA, TN, TX, UT, VA, WA, Wl.

((■) 1976 Texas Instruments Incorporated 1350 North Central Expressway Dallas. Texas

Texas Instruments

NCORPORATED

VOICING SOURCE

ASPIRATION SOURCE

= 8BIT AMPLITUDE CONTROL

/77 /77 AH=8 BIT AMPLITU

rfj CONTROL

Fl F2

BITS 8 BITS

Figure 13: Synthesizer with Aspiration Noise Generator. Not all utterances are vowels. By adding a digitally controlled noise generator to the circuit of figure 10, it is possible to synthesize the consonant sounds known as "stops." In this circuit,.the amplitude versus time characteristics of the noise pulse are determined by an 8 bit programmable gain control AH (shown symbolically as a resistor). The output of the noise source is mixed with the voicing source with the analog sum being routed to the for man t filters. The noise generator is a zener diode.

REL, VO

T

. F2 Fl

100 200 mSEC

space rather than the relatively stable positions of those given in table 1. These sweeps are produced by moving the tongue rapidly from one position to another during the production of that vowel sound. Approximate traces of the frequency sweeps of formants Fl and F2 are shown in figure 12 for the vowels in "bay," "boy," "buy," "hoe" and "how." These sweeps occur in 150 to 250 ms roughly depending on the speaking rate.

REL.VO 1

REL,V0

r

j i i_

r

J I L

"GA"

RE

■

L VO

1

REL VO

-it

REL

V

1

0

\ ^

V

r ~ i i

i i i

1 1

"PA"

"TA"

Figure 14: Stop Consonant Patterns. This figure illustrates 6 different stop consonant patterns. The release of the stop closure (start of noise pulse) is at the point marked by "Rel" and the beginning of the voicing sounds is marked by "VO". Note the typical transition of the vowel formants as the steady state is reached.

Consonant Sounds

Consonant sounds consist mostly of various pops, hisses and interruptions imposed on the vibrating column of air by the actions of several components of the vocal tract shown in figure 1. We will divide them into four classes: 1) stops, 2) liquids, 3) nasals, and 4) fricatives and affricates. Considering first the basic 'stop consonants,' "p," "t," "k," "b," "d" and "g," the air stream is closed off, or stopped, momentarily at some point along its length, either at the lips, by the tongue tip just behind the teeth or by the tongue body touching the soft palate near the velum. Stopping the air flow briefly has the effect of producing a short period of silence or near silence, followed by a pulse of noise as the burst of air rushes out of the narrow opening.

The shape of the vocal tract with the narrow opening at different points determines the spectral shape of the noise pulse as well as the formant locations when voicing is started. Both the noise burst spectrum and the rapid sweeps of formant frequency as the F1-F2 point moves into position for the following vowel are perceived as characteristic cues to the location of the tongue as the stop closure is released. We need only add a digitally controlled noise generator to the vocal tract circuit of figure 10 to simulate the noise of the burst of air at the closure release and we can then generate all the stop consonants as well as the vowels. Figure 13 shows the speech synthesizer with such a noise generator added. The breakdown noise of a zener diode is amplified by IC1 and amplitude is set by the digitally controlled resistor AH. IC2 is a mixer amplifier which combines the glottal source and aspiration

22

VOICING SOURCE

J "h

AN >• Wr

T

NASAL RESONATOR

Figure 15: The Complete Synthesizer. This diagram shows the organization of a complete synthesizer which includes a wide variety of parameters. The voicing frequency and amplitude are set by parameters FV and A V. The noise pulses of stop consonants are generated with the programmable gain element AH. The fricative resonator with amplitude AF and frequency resonance FF are used to generate fricatives like "s " and "sh. " The normal vowel sounds are generated by control of the formant frequencies Fl, F2 and F3, and a nasal resonator with amplitude AN and fixed frequency characteristics is used to add varying amounts of nasal sounds. The result of signals processed through the nasal, formant and fricative paths is summed by a final operational amplifier and used to drive the output speaker.

noise at the input to the formant resonators.

It is important to notice at this point the range of different sounds that can be generated by small changes in the relative timing of the control parameters. The most useful of these timing details is the relationship between the pulse of aspiration noise and a sharp increase in the amplitude of voicing (see figure 14). For example, if we set the noise generator to come on for a noise pulse about 40 ms long and immediately after this pulse, F1 sweeps rapidly from 300 up to 775 Hz and F2 moves from 2000 down to 1100 Hz, the sound generated will correspond to moving the tip of the tongue down rapidly from the roof of the mouth. Observe, however, that the formant output is silent after the noise pulse until the voicing amplitude is turned up. If voicing is turned on before or during a short noise burst, the circuit generates the sound "da," whereas if the voicing comes on later, after a longer burst and during the formant frequency sweeps, the output sounds like "ta." This same timing distinction characterizes the sounds "ba" vs "pa" and "ga" vs "ka," as well as several other pairs which we will explore later. Figure 14 gives the formant frequency patterns needed to produce all the stop consonants when followed by the vowel "ah." When the consonant is followed by a different vowel, the formants must move to different positions corresponding to that vowel.

The important thing to note about a stop transition is that the starting points of the frequency sweeps correspond to the point of

closure in the vocal tract, even though these sweeps may be partially silent for the unvoiced stops "p," "t" and "k," where the voicing amplitude comes on after the sweep has begun.

The second consonant group comprises the liquids, "w," "y," "r" and "I." These sounds are actually more like vowels than any of the other consonants except that the timing of formant movements is crucial to the liquid quality. "W" and "y" can be associated with the vowels "oo" and "ee," respectively. The difference is one of timing. If the vowel "oo" is immediately followed by the vowel "ah," and then the rate of F1 and F2 transitions is increased, the result will sound like "wa." A comparison of the resulting traces of F1 and F2 vs time in "wa" with the transition pattern for "ba" in figure 14 points out a further similarity. The

Resonator

Frequency

(FF)

Fricative

Amplitude

(AF)

sh, zh

2500

.9

s, z

5000

.7

f, v

6500

.4

th

8000

.2

Table 2: Fricative Spectra. A fricative sound typically consists of a pulse of high frequency noise. The various types of fricatives are classified according to the spectral profile of the pulse. For the electronic model described here, the fricative amplitude and resonator frequency for several sounds are listed in this table.

23

Product Information

At the time this article goes to press, a synthesizer module incorporating several detail refinements and improvements over the circuits of this article is being developed by the author and associates. A detailed user's guide will be supplied with the Computalker module which illustrates the timing relationships needed to produce all the consonant-vowel and vowel-consonant combinations which occur in natural speech. This can serve as a reference guide for creating your speech output software which generates the proper control patterns from text inputs. Write to Computalker, 821 Pacific St No. 4, Santa Monica CA 90405 for the latest information on this module.

direction of movement is basically the same, only the rate of transition of "ba" is still faster than for "wa." Thus we see the parallelism in the acoustic signal due to the common factor of lip closeness in the three sounds "ua," "wa" and "ba." "Y" can be compared with the vowel "ee" in the same way, so the difference between "ia" and "ya" is only a matter of transition rates. Generally, "I" is marked by a brief increase of F3, while "r" is indicated by a sharp drop in F3, in many cases, almost to the level of F2.

The third group of consonants consists of the nasals, "m," "n" and "ng." These are very similar to the related voiced stops "b," "d" and "g," respectively, except for the addition of a fixed "nasal formant." This extra formant is most easily generated by an additional resonator tuned to approximately 1400 Hz and having a fairly wide bandwidth. It is only necessary to control the amplitude of this extra resonator during the "closure" period to achieve the nasal quality in the synthesizer output.

The fourth series of consonants to be described are the fricatives, "s," "sh," "z," "zh," "f," "v" and "th" and the related affricates "ch" and "j." The affricates "ch" and "j" consist of the patterns for "t" and "d" followed immediately by the fricative "sh" or "zh," respectively, that is, "ch" = "t+sh" and "j" = "d+zh." The sound "zh" is otherwise rare in English. An example occurs in the word "azure." With the letters "th," two different sounds are represented, as contained in the words "then" and "thin." All the fricatives are characterized by a pulse of high frequency noise lasting from 50 to 150 msec. The first subclassification of fricatives is according to voicing amplitude during the noise pulse, just as previously described for the stop consonants. Thus, "s," "sh," "f," "ch" and "th" as in "thin" have no voicing during the noise pulse, while "z," "zh," "v," "j" and "th" as in "then" have high voice amplitude. When a voiceless fricative is followed by a vowel, the voicing comes on during the formant sweeps to the vowel position, just as in the case of the voiceless stops. The different fricatives within each voice group are distinguished by the spectral characteristics of the fricative noise pulse. This noise signal differs from that previously described for the stop bursts in that it does not go thru the formant resonators, but is mixed directly into the output after spectral shaping by a single.pole filter. Table 2 gives the fricative resonator settings needed to produce the various fricative and affricate consonants. Fricative noise amplitude settings are shown on a scale of 0 to 1.

The Complete Synthesizer

The system level diagram of a complete synthesizer for voice outputs is summarized in figure 15. The information contained in. this article should be sufficiently complete for individual readers to begin experimenting with the circuitry needed to produce speech outputs. In constructing a synthesizer on this model, the result will be a device which is controlled in real time by the following parameters:

AV = amplitude of the voicing source,

8 bits FV = frequency of the voicing source,

8 bits AH = amplitude of the aspiration noise

component, 8 bits AN = amplitude of the nasal resonator

component, 8 bits AF = amplitude of the fricative noise

component, 8 bits F1 = frequency of the formant 1 filter, 8 bit setting. F2 = frequency of the formant 2 filter, 8 bit setting. F3 = frequency of the formant 3 filter, 8 bit setting. FF = frequency of fricative resonator filter, 8 bit setting.

This is the basic hardware of a system to synthesize sound; in order to complete the system, a set of detailed time series for settings for these parameters must be determined (by a combination of the theory in this article and references, plus experiment with the hardware). Then, software must be written for your own computer to present the right time series of settings for each sound you want to produce. Commercial synthesizers often come with a predefined set of "phonemes" which are accessed by an appropriate binary code. The problem of creating and documenting such a set of phonemes is beyond the scope of this introductory article, but is well within the dollar and time budgets of an experimenter."

BIBLIOGRAPHY

1. Erman, Lee, ed, IEEE Symposium on Speech Recognition, April, 1974, Contributed Papers, IEEE Catalog No. 74CH0878-9 AE.

2. Flanagan, J L, and Rabiner, L R, eds. Speech Synthesis, Benchmark Papers in Acoustics, Dowden, Hutchinson & Ross, Inc. 1973.

3. Lehiste, Use, ed. Readings in Acoustic Phonetics, MIT Press, 1967.

4. Moschytz, George S, Linear Integrated Networks Design, Van Nostrand, New York, 1975.

24

Now, you can buy an Altair 8800 or Altair 680 computer kit right off the shelf. Most ail Altair options, software and manuals are also available. The MITS Dealer List below is just the beginning:

off the shelf

RETAIL COMPUTER STORE, 410 N. E. 72nd Seattle, WA 98115

(206)524-4101

COMPUTER KITS 1044 University Ave. Berkeley, CA 94710 (415)845-5300

ARROWHEAD COMPUTER (THE COMPUTER STORE) 820 Broadway Santa Monica, CA. 90401

INC.

CTI DATA SYSTEMS 3450 East Spring St. Long Beach, CA 90806

(213)426-7375

GATEWAY ELECTRONICS 2839 W. 44th Ave. Denver, CO 80211 (303)458-5444

BYTETRONICS 5604 Kingston Pike Knoxville, TN 37919

(615)588-8971

the COMPUTER STORE, INC. 120 Cambridge Burlington, Mass. 01803

(617)272-8770

THE COMPUTER SYSTEMCENTER

3330 Piedmont Road Atlanta, GA 30305

(404)231-1691

CO.

GATEWAY ELECTRONICS 8123-25 Page Blvd. St. Louis, MO 63130

(314)427-6116

MICROSYSTEMS 6605A Backlick Rd. Springfield, VA 22150 (Washington DC area) (703)569-1110

MARSH DATA SYSTEMS

5405-B Southern Comfort Blvd.

Tampa, FL 33614 THE COMPUTER ROOM

««3) 886"9890 39381 Beau D'Rue Drive

Eagan, Minn. 55122 (612)452-2567 COMPUTER PRODUCTS UNLIMITED

4216 West 12th St.

Little Rock, Arkansas 72204

(501)666-2839

NOTE: Altair is a trademark of MITS, Inc.

The Time Has Come to Talk

Wirt Atmar

Ai Cybernetic Systems

PO Box 4691

University Park NM 88003

The extent to which art and literature, particularly science fiction, affect the future course of civilization remains a persistent and perplexing question. Must a dream, by necessity, occur decades before its realization? Or does the presence of the dream itself generate its own reality? Mankind's trip to the Moon in 1969 was the dream dreamt by Cyrano de Bergerac and Johannes Kepler 300 years prior to its enactment.

And now, we, nurtured by the thousand different dreams of the future as portrayed in novels and movies, all expect computers

to be able to talk in the near future. Whether we see the computer becoming the benign and obedient servant of man or wildly out of control, we all tend to see the computer becoming more anthropomorphic, more humanlike in behavior and form.

In science fiction two great dreams of the future predominate. One is the seemingly inevitable first contact with intelligent beings of an extra terrestrial origin. The second is the construction, by our own hands, of an alternate embodiment of intelligence in machine form. The first dream may well not

26

"The time has come, " the Walrus said,

"To talk of many things: Of shoes — and ships — and sealing wax

Of cabbages — and kings — And why the sea is boiling hot —

And whether pigs have wings. "

- Lewis Carroll, 1871, in Through the Looking-Glass.

occur within the lifetime of our civilization; the second would seem to be almost guaranteed within the next 100 years.

The addition of speech to the computer's behavioral repertoire makes the computer no more intelligent nor aware than it was before. It remains a simple machine. But it undeniably takes on a human characteristic that it never possessed before. An observer finds it impossible not to personify the machine with an identity and a distinct personality. While the addition of speech is only a minor step toward achievement of a truly self-organizing, artifically intelligent machine, it is a psychologically important one. The computer, once it speaks, seems to be intelligent. But again, the dream of machine produced speech is much older than its reality. The ancient Greco-Roman civilization was fascinated with the idea of deus ex machina. Stone gods were often hollowed to allow a priest to speak from within, a practice that persisted well into the Christian

era.

The first known practical realization of

machine generated speech was accomplished in 1791 by a most ingenious engineer, Wolfgang von Kempelen, of the Hungarian government. Von Kempelen's machine was based on a surprisingly detailed understanding of the mechanisms of human speech production, but he was not taken seriously by his peers due to a previous well publicized deception in which he built a nearly unbeatable chess playing automaton. The "automaton" was unfortunately later discovered to actually conceal a legless Polish army ex-commander who was a master chess player.

By 1820, a machine was constructed which could carry on a normal conversation when operated by an exceptionally skilled person. Built by Joseph Faber, a Viennese professor, the machine was demonstrated in London where it sang "God Save the Queen." Both the Von Kempelen and Faber machines were mechanical analogs of the human vocal tract. A bellows was provided to simulate the action of lungs; reeds were

used to simulate the vocal cords, and variable resonant cavities served to simulate the mouth and nasal passages.

The basic method, modelling the human vocal tract, remains to this time the only practical method of actually synthesizing speech. In the 20th century, such modelling is done electronically. The approach was first put in electrical analog form by Bell Laboratories in the late 1930s. The Bell Telephone VODER (Voice Operation DEmonstratoR) was initially shown at the 1939 New York's World Fair where it drew large crowds and considerable attention. The VODER consisted of a buzz source (similar to human vocal cords or mechanical synthesizers), a hiss source to simulate the rush of aspirated air, and a series of frequency filters to imitate the three, four, five or six preferred frequencies (called formant frequencies) passed by the resonant cavities formed by the mouth, tongue and nose.

The original VODER was played by highly trained operators using a keyboard, wrist switches, and pedals at an organ-like console. Twenty four telephone operators were trained six hours a day over a 12 month period for the 1939 World's Fair. The VODER itself was a full rack in height.

With the advent of digital computers, however, the synthesis of speech has been made much easier. All the information necessary to repeatedly and reliably generate any one speech sound (a "phoneme") can now be programmed into the machine. Through the proper connection of phonemes, a digital computer could be made to say words and sentences.

General American English, the dialect spoken in the midwest and southwestern parts of the United States, contains 38 distinct phonemes. These speech sounds can be divided into the following classes:

Pure vowels: produced by a constant

excitation of the larynx and the

mouth held in a steady position; eg:

"e".

Diphthongs: a transition from one

27

(PITCH PERIOD)

VARIABLE-FILTER SYSTEM

SPECTRAL COMPENSATION

SPEECH

"output

DIGITAL (TWO LEVEL) GAIN CONTROLLED AMPLIFIER

WHITE NOISE GENERATOR

FP FZ

VARIABLE POLE/ZERO NETWORK

. I y \ SUMMING

' V_y AMPLIFIER

PROGRAMMABLE FILTER

Figure 1: The serial analog speech synthesizer in block diagram form.

pure vowel to another, thus are not always considered as separate phonemes; "i", "u".

Fricatives: consonants produced by a rush of aspirated air through the vocal passages: "f", "s".

Plosives: explosive bursts of air: "p", "k","t".

Semi-vowels: Laterals: "1" Nasals: "n", '

w "r"

m".

y

To produce speech, a separate circuit, or combination of circuits, must be provided to generate each of the above classes of phonemes.

AFI

(PITCH PERIOD) 1

SPECTRAL COMPENSATION

Among possible realizations of such a synthesizer, there are the serial analog and parallel analog forms. Figure 1 illustrates a block diagram of a serial analog design, and figure 2 shows the general organization of a parallel analog synthesizer.

The parallel analog method was the realization chosen by Ai Cybernetic Systems for its synthesizer module. The parallel realization was chosen because of the low digital information transfer rate and the smaller number of bits required to control the filters which simulate the resonant cavity of the vocal tract.

In the Ai Cybernetic Systems design, the rush of aspirated air is generated by the noise of a zener diode operated at its knee, amplified many times, as shown in figure 3. The action of the larynx is simulated by an integrated circuit function generator. One or both of these circuits is selected to produce the excitation necessary to generate any one class of phonemes. The actual phoneme perceived is determined by the duration of the excitation and the selected formant filters. Figure 4 shows the typical formant filter circuits which are digitally activated by analog switches.

The control of the several analog switches is provided by a read only memory which is addressed by the ASCII bit patterns identified in table 1.

No hard and fast rules exist in the design of the circuitry to generate a phoneme. In fact, small changes in component values can often make large differences in the phoneme which is actually heard. Because no set rules exist, a steady stream of listeners must parade before the machine while it is being designed in order to determine which phoneme the synthesizer is really saying. The phenomenon of "tired ears" rapidly sets in; and a person will begin, after a bit, hearing any one speech sound as a whole array of possible phonemes. Suggestion, on the other hand, is an ever obtuse enemy to the designer. Surprisingly, almost any speech sound can be suggested to sound like a great

.SPEECH ' OUTPUT

WHITENOISE GENERATOR

Figure 2: The parallel analog speech synthesizer in block diagram form.

28

+ 12

WHITE-NOISE GENERATOR

WHITE NOISE AMPLITUDE AN

RESISTANCE DETERMINED BY FACTORY

VOICE GENERATOR

PITCH PERIOD CONTROL

I I

I I

DIGITALLY CONTROLLED ANALOG SWITCH

number of alternate phonemes, especially after 20 to 30 minutes of intense listening.

Once the design is experimentally determined, careful procedures must be followed to insure that when the circuit is duplicated, it produces each phoneme properly. This means precision components must be used, as small changes in values can make the difference between moderately distinct speech and a fairly mushy speech.

Analog simulation of the vocal tract is the only method of true speech synthesis

known. A popular alternate method of speech production (actually, reproduction) is the storage of digitized speech in a ROM. When the stored information is clocked out of the ROM at the proper rate and smoothed by a low pass filter, the generated speech can be quite clear and distinct. But it is important to note that this is not synthesized speech. In effect, this method is no different than any other method of recording speech. Yet, the method does have the advantage of producing readily understood words by a

Figure 3: The excitation sources of the Ai Cybernetic Systems Model 1000 Speech Synthesizer. The rush of air through the vocal passages is simulated in the upper branch while the action of the larynx is simulated in the lower branch.

Figure 4: The parallel filter network of the Model WOO. The filter frequencies and quality factors chosen depend on the number of filters used to divide the voice frequency spectrum. Ideally, the center frequencies of the filters should lie somewhere near the commonly occurring formant frequencies.

FROM

EXCITATION

SOURCES

AF FORMANT I AMPLITUDE

AF2 FORMANT 2 AMPLITUDE

FORMANT FILTER NO. I

*Ht

-)h

1 r

, FORMANT FILTER NO. 2

IK -vw

0.5 fj. F

^h

¥

SPEECH OUTPUT

I I

DIGITALLY CONTROLLED ANALOG SWITCH

29

Photo 1: The Ai Cybernetic Systems Model 1000 Speech Synthesizer. The synthesizer is primarily an analog circuit controlled digitally. Ten active filters composed of 15 operational amplifiers are mounted in the upper left corner of the board. Directly beneath these resonant-cavity simulating filters are the vocal excitation circuits. The right half of the board is composed of the ASCII character decoding circuits and phoneme memories. Four 32 x 8 ROMs control the 16 analog switches to select the proper combination of circuits to generate any one phoneme. A device-busy flag is returned for the duration of the phoneme.

computer or calculator. However, the vocabulary is totally predefined and must remain small due to the high cost of storing this kind of generated speech. Moreover, the repertoire of this kind of speech is limited to the person who initially spoke the recorded words.

Synthetic speech, on the other hand, is generally not as clear and distinct. The proper transitions from phoneme to phoneme, the automatic emphasis given to leading or terminating consonants, and the intonation of a rhythm in speech which is associated with a word's importance or placement, are all facets of human speech which are difficult to properly recreate in machine produced speech. The determination of accurate rules to account for these factors has been the subject of active and intense research at centers here, and in Europe and Japan, including Bell Telephone Laboratories, the Haskins Laboratories of New York, the Royal Institute of Technology in Sweden, and the Musashino Electrical Communication Laboratory in Tokyo. On the whole, totally satisfactory rules have not yet been worked out although a great deal of progress has been made in the last 20 years. Machines which do incorporate the known rules quickly become elaborate and expensive (in the tens of thousands of dollars).

Simplified speech rules can be incorporated in a much smaller machine, but the burden of intelligibility now falls upon the listener. The produced speech is not natural speech. It sounds for all the world like the speech produced by the robots of 1950s grade B science fiction movies. But it is intelligible and it is quickly learned. Because the machine pronounces every phoneme in the same fashion each time it occurs, a listener quickly gains a feeling for the speech. The process is not unlike learning to listen to a newly-arrived foreigner who possesses a strong accent. The fashion by which he mispronounces the English phonemes is quickly learned and intelligibility increases rapidly. The difference with synthetic speech is that the speech is truly an alien form of speech, not often heard before by many of us.

As to the naturalness of synthetic speech, M D Mcllroy of Bell Telephone Labs wrote this in 1974 [in "Synthetic English Speech by Rule," Computer Science Technical Report No. 14, Bell Telephone Laboratories]:

The Computer Science Center at this laboratory has experimented with an inexpensive speech synthesizer [presumed to be the Votrax] as a regular output device in a general purpose computing system. Our intention was not to do speech research or to create artificial speech as an end in itself. In the present state of the art, those goals require much more elaborate facilities than we have at our disposal.

We wished to see what uses might evolve when speech became available more or less on a par with printed output. For this goal, "naturalness" was not a prerequisite, any more than it is for printed output. Most computers still print mainly in upper case, are incapable of printing mathematical notation, and normally produce cryptic codes or tabular stuff that require considerable indulgence to be understood. Since printed gobbledygook is so widely accepted from computers — and fed into them, witness any manufacturer's operating system manual — we suspected that spoken gobbledygook might be quite passable, too, except for one severe difficulty: Being ephemeral, sounds must be understood at first hearing. As it turns out, long speeches are hard to understand, as are extremely short utterances of very simple words out of context. But given a little familiarity

30

r

"\

MICROPROCESSOR

VOLUME 2

If you liked Volume 1, you'll love Volume 2. This second volume of the popular EDN jjlP DESIGN SERIES is the one and only authoritative source for designers interested in fiP's.

At a cost less than other similar publications, it provides more, useful, objective (UP information. Here's what you get in the EDN iiP DESIGN SERIES that you don't get elsewhere:

• Microprocessor Directory: A complete file-card type listing of all juP's now on the market that includes detailed information on performance, architecture, software, price and availability.

• Microcomputer Systems Directory: A fold-out wall chart, this directory describes features, capabilities, size, options, peripherals, prices and software support for all available juC's on the pc board level.

• Microprocessor Market Report: A summary report of EDN's annual study of microprocessor applications and market needs.

• Microprocessor Benchmarks: Sample benchmark studies of most popular juP's.

• Plus — design and applications articles including: "How To Get Started In Microprocessors On A Shoestring" by EDN's Bob Cushman.

At $7.95/copy, USA only ($8.95, non-USA), this is a genuine bargain. So order now. Check or money order must accompany order. Make checks payable to: EDN fiP Reprints.

Call Roy Forsberg (617) 536-7780 for quantity discounts.

Send to /uP Reprints, Vol. 2 EDN Magazine 221 Columbus Ave. Boston, MA 0211 6

Please send me

Enclosed is $

EDN Microprocessor Design Series

ORDER BLANK

copies of EDN's ;;P Design Series. (Cost is $7.95/copy, USA only; $8.95/copy, non-USA)

Check or money order must accompany each order. No COD. MA residents add 5% Sales Tax.

Send my series to:

Name

Title

V

Company Address — City

State

-ZIP Code

Vowels:

with the machine's "accent", one finds short sentences to be quite intelligible.

The phonemes generated by the Model 1000 synthesizer appear in table 1. Each phoneme has been assigned an ASCII character to represent its particular sound. The assignment was done in the most intuitive manner possible; the consonants are generally the consonants as they appear on the keyboard, but there are many more vowels than a, e, i, o and u. Non-alphanumeric characters were chosen to represent the remaining vowels and consonants in such a manner that they could be easily associated with their sound. As examples of this, the number symbol, "#" is used to signify the vowel er as in number, "&" for the vowel ae as in and "(" for ah and ")" for aw

Table 1: List of Phonemes. Phoneme ASCII Symbol

Usage

a

A

pace, bay

ae

&

and, Altair

ah

(

father, all

aw

)

bought, robot

e

E

see, harmony

eh

'

excessive, ten

er i

# I

number, bird hit, six

o

0

Mexico, over

oo

U

too, sue

uh

!

the, computer

A

t

putt, up

Semi-Vowels:

w

W

water, wind

y

Y

yaw, yacht

Plosives:

p

P

pop, deep

k

K

computer, Atlantic

t

T

top, pot

b

B

boy, bird

d

D

dog, died

g

G

go, great

Fricatives:

f

F

puff, food

h

H

how, had

s

S

saw, miss

V

V

David, vow

sh

/

slash, shoot

th

+

thaw. Earth

z

z

zero, is

Liquids:

1

L

low, all

r

R

row, round

Nasals:

m

M

miss, am

n

N

now, nine

Others:

Glottal Stop

The pause associated with aspiration

Draw Bar

An extended vowel with decay

Pause

(space)

Normal word spacing

representing the position of the tongue when these vowels are spoken, "!" for the sharp sound of uh, "+" for the fricative consonant th as in thaw, and "/" for the sh in s\ash.

The Model 1000 accepts a string of ASCI I characters as if it were a normal printing device. Read only memories on the board convert the incoming ASCII symbol into specific control information which in turn determines the vocal source, duration and frequency content of the spoken phoneme. Less than 50 bytes of machine code or 8 lines of the typical BASIC are all that is required to generate a subroutine to accept a string of characters and output it characterby-character to the synthesizer.

For example, to write the phrase "I am a talking robot" on a printer or display peripheral, an ASCII character string is set up and sent to the output device. In BASIC, if C$ is the argument of the output subroutine, the setup would be:

C$ = "I AM A TALKING ROBOT."

To have the synthesizer say the same phrase, the setup for the phonetic output routine with argument P$ might be:

P$ = "&IE AM AET). .KEN- RO.B). .T"

(The ASCII symbols are taken from table 1.) The long vowels I and A occur in this passage. As a rule, most of the long vowels are not really vowels at all but rather diphthongs composed of a sequence of pure vowels. Pronounce out loud each of the phonemes in the phrase above, referring to table 1 as necessary. Remember that each phoneme has only one specific sound. Playing the part of a synthesizer yourself, you will find that you can say any English word with the phonemes of table 1.

Programming the Model 1000 synthesizer is easy once you actually begin to listen to what you say and learn to rely less on how a word is written. English is a hodge podge of languages and carries with it all the alternate symbolisms of the pronunciations of its root languages. Purely phonetic languages such as the Polynesian languages of Samoa or Tonga could be made to be spoken almost as they are written. This is unfortunately not true of English; homonyms such as "won" and "one" and "two", "too" and "to" abound.

Generally, only one phonetic spelling exists for any one word regardless of the number of alternate written spellings. It becomes important to identify the sounds that you actually are saying when a word is pronounced. The word "one" is phoneticized using the phonemes of table 1 as WIN in similarity to the word "won"; "two" is programmed as TOU- more as if it were the

32

written word "too". For most Americans, there is no difference in the way these words are pronounced.

Proceeding in the same fashion, the remaining numbers up to ten are typed in as:

T+#E- FO#- F&IE..V SI..KZ S'-VIN AE..T N&IEN T'N

Again, pronounce these phonetic spellings to yourself. As you will discover, phonetic spellings are quickly deduced and learned.

In a very short period of time, it becomes possible to make the machine say anything. At that point, conversational computing takes on a whole new meaning. Interactive computing will never again be the same once your computer has actually spoken to you."

BIBLIOGRAPHY

Speech Synthesis, Benchmark Papers In Acoustics, 1973. J L Flanagan and L R Rabiner, eds. Dowden, Hutchinson and Ross, Stroudsburg PA. A collection of the best papers on speech synthesis over the past 35 years. "Synthetic Voices for Computers," 1970. J L Flanagan, C H Coker, L R Rabiner, R W Schater, N Umeda in IEEE Spectrum 7:22-45. An authoritative overview of the speech synthesis procedure.

"The Synthesis of Speech," 1972. J L Flanagan, Scientific American 226:48-58. A simplified rework of the IEEE Spectrum article above.

IEEE 1974 Speech Recognition, Proceedings, 1974. L Erman, ed. IEEE, NY. A bit too technical for a first introduction but a good measure of where things are going.

COMMERCIAL PRODUCTS

At the present time, two speech synthesizers are both commercially available and affordable by the hobbyist. One is the Votrax produced by:

Vocal Interface Division

Federal Screw Works

500 Stephenson Dr

Troy Ml 48084

Price, approximately $2,000

Interfacing: Parallel or Serial (RS-232)

The second is the Model 1000 manufactured by:

Ai Cybernetic Systems

PO Box 4691

University Park NM 88003

Price, $425

Interfacing: Electrically and mechanically compatible with Altair/IMSAI/ Poly-88 bus structure.

Either company will be pleased to provide literature free of charge. A demonstration tape is available from Ai Cybernetic Systems for $5 and a complete programming guide, theory of operation manual and phonetic glossary is available for $2.50.

33 '

Video Terminal Interface: This is one almost every owner of an Altaircompatible computer needs. There have been problems getting parts for this one (the people with the other Video board have had the same problem, since they use the same hard-to-get chip), but deliveries are improving. By the way, our video board has GRAPHICS as well as an 8 bit parallel key board input port, so compare before you buy. $185.00 - $210.00 kit depending on whether 32 or 64 characters per line.

Poly I/O: With this one you will save a lot of time in making prototype circuits. I/O port address is selectable with dip switch and fully buffered inputs and outputs. $55 kit.

Analog Interface: Good for interfacing your computer to an analog world. Ten bits of resolution in and out. $145.00 for one channel and $195.00 for two channels (kit).

Ask about how to get a free POLY I/O or ANALOG Board.

Watch for our new products. Next time they will be on the shelf before we advertise.

Have you heard about the POLY-88? We don't have the space here to describe all the features.See it at your local computer store (except (or MITS dealers, though some do carry our other products). This might be the system you're looking for.

Support your local computer store.

All prices and specifications subject to change without notice. Prices are U.S.A. only. Calif, residents add 6% sales tax. Add 5% shipping, handling, and insurance. Bank Americard and Mastercharge accepted.

PoIyMorphic Systems

737 S. Kellogg, Goleta, Calif. 93017 (805) 967-2351

Photo J: The Z80 microprocessor evaluation board.

Microprocessor Update: ZllOg Z80

Burt Hashizume PO Box 172 Placentia CA 92670

One feature of the Z80 not found in other 8 bit microprocessors is a built in dynamic MOS memory refresh algorithm which employs unused memory cycles to do hidden (from software timing) refresh operations.

Zilog, a fairly new company in Los Altos CA, has been sampling an 8 bit microprocessor, the Z80, since early this year. The Z80 is a "third generation," single chip, NMOS microprocessor, which is completely software compatible with Intel's 8080A. Its 158 instructions include the 8080A's 78 instructions as a subset. Because the 8080A is probably the most widely used 8 bit microprocessor on the market today and because of the Z80's upward software compatibility, this article evaluates the Z80 in comparison to the 8080A.

Physical and Electrical Characteristics

The Z80 processor is packaged in the standard 40 pin dual in line package; how

ever, even though the Z80 is software compatible with the 8080A, it is most definitely not pin compatible. (See figure 1 and table 1 for pinout definitions.) There are numerous differences between the two processors as far as electrical characteristics are concerned.

The 8080A requires three voltage levels, +12, +5, and —5 V. A high voltage two phase clock is also required. Maximum speed is a 480 ns clock period. Finally, some sort of system controller is needed to separate the system control signals from the data bus. This all makes for a fairly complex system design around the 8080A.

On the other hand, it is very easy to design a system around the Z80. It requires only a single +5 V power supply because the

34

technology used is of the same type used by Motorola in its 6800 microprocessor, which also requires a single 5 V power supply. The Z80 requires a single phase 5 V clock. Maximum frequency is 2.5 MHz for a 400 ns clock period. System control signals, such as memory read and write, have separate pins from the processor and are not time shared with the data bus. An additional feature not found on any other microprocessor at the time of this writing is the capability to refresh dynamic memory.

Because the Z80 is upward software compatible with the 8080A, the internal architectures are similar. (See the register configuration in figure 2.) Both have 16 bit program counters and stack pointers as well as a register array of six general purpose registers, (B, C, D, E, H and L), an accumulator (A), and a flag register (F).

The Z80 has numerous additional characteristics. It has an additional duplicate register array consisting of 8 registers (A', F', B', C, D', E', H' and L'). These can be switched with the primary register array for fast interrupt processing. There are also two 16 bit index registers (IX and IY) for increased addressing capability and easier data manipulation. An 8 bit interrupt vector register (I) expands the capability and increases the power and speed of interrupt handling by the processor. Finally, an 8 bit memory refresh register (R) automatically increments after every instruction fetch and refreshes memory while the processor is not using the bus. Thus the execution time of the system is not increased due to refresh overhead.

Software

Now that we have seen the hardware aspects of the Z80 and how it compares to the 8080A, let's take a look at its instruction set. The fact that the Z80 has 158 instructions versus the 8080A's 78 gives only a small indication of its technological superiority in this area. The instruction set can be broken up into two aspects, addressing modes and instruction groups.

Since the Z80 is software compatible with 8080A, it necessarily has the same addressing modes as the 8080A. The modes in common are register addressing, register indirect addressing, direct addressing, and immediate addressing.

SYSTEM CONTROL <

CPU CONTROL <

"I

MREQ IORQ RD

WR

RFSH

Halt wait IFf

NMl

CPU BUS CONTROL

J BUSRO 1 BUSAK

+ 5V GND

27

Z-80CPU

30 ,

31 .

. I9

32 .

20

33 ,

21

34 .

22

35

36 ,

j 28

37 r

38 t

18

39 r

40 r

24 .

1 r

2 t

16

3 r

17

4 .

5

26

25

. I4 ■

23

. '5 .

. I2 .

. e ,

6

, 7 ,

1 1

, 9 .

29

. I0 »

. I3 .

*0

*l

*3

*6 *7 A8

A|4 A|5

DO °l °2 °3 °4 °5 °6 °7

> ADDRESS BUS

>DATA BUS

Figure I: Pin configuration of the 180 processor. Of particular note to custom hardware hackers is the "M] "line which gives users the possibility of identifying instruction cycles.

Table 1: Signal list for the 180 processor. This table lists each active pin of the Z80 with a short explanation of its purpose.

A0-A-|5 (Address Bus)

D0-D7 (Data Bus)

M1

(Machine Cycle one)

MREQ

(Memory Request)

IORQ

(Input/Output Request)

Tri-state output, active high. An—A15 constitute a 16 bit address bus. The address bus provides the address for memory (up to 64 K bytes) data exchanges and for IO device data exchanges. IO addressing uses Xhe 8 lower address bits to allow the user to directly select up to 256 input or 256 output ports. An. is the least significant address bit. During refresh time, the lower 7 bits contain a valid refresh address.

Tri-state input and output, active high. Do—D7 constitute an 8 bit bidirectional data bus. The data bus is used for data exchanges with memory and IO devices.

Output, active low. Mi indicates that the current machine cycle is the OP code fetch cycle of an instruction execution.

Tri-state output, active low. The memory request signal indicates that the address bus holds a valid address for a memory read or memory write operation.

Tri-state output, active low. The IORQ signal indicates that the lower half of the address bus holds a valid 10 address for a IO read or write operation. An IORQ signal

35

Table 1 (continued).

RD

(Memory Read)

WR

(Memory Write)

RFSH (Refresh)

HALT (Halt state)

WAIT (Wait)

INT

(Interrupt Request)

NMI

(Non Maskable

Interrupt)

RESET

BUSRQ (Bus Request)

BUSAK

(Bus Acknowledge

is also generated when an interrupt is being acknowledged to indicate that an interrupt response vector can be placed on the data bus. Interrupt Acknowledge operations occur during M-| time while 10 operations never occur during M-] time.

Tri-state output, active low. RD indicates that the processor wants to read data from memory or an 10 device. The addressed IO device or memory should use this signal to gate data onto the processor data bus.

Tri-state output, active low. WR indicates that the processor data bus holds valid data to be stored in the addressed memory or 10 device.

Output, active low. RFSH indicates that the lower 7 bits of the address bus contain a refresh address for dynamic memories and the current MREQ signal should be used to do a refresh read to all dynamic memories.

Output, active low. HALT indicates that the processor has executed a HALT software instruction and is awaiting either a non maskable or a maskable interrupt (with the mask enabled) before operation can resume. While halted, the processor executes NOPs to maintain memory refresh activity.

Input, active low. WAIT indicates to the Z80 processor that the addressed memory or 10 devices are not ready for a data transfer. The processor -continues to enter wait states for as long as this signal is active. This signal allows memory or 10 devices of any speed to be synchronized to the processor.

Input, active low. The Interrupt Request signal is generated by 10 devices. A request will be honored at the end of the current instruction if the internal software controlled interrupt enable flip flop (IFF) is enabled and if the BUSRQ signal is not active. When the processor accepts the interrupt, an acknowledge signal (IORQ during Mi time) is sent out at the beginning of the next instruction cycle. The processor can respond to an interrupt in three different modes that are described in detail in the Zilog documentation.

Input, active low. The non maskable interrupt request line has a higher priority than INT and is always recognized at the end of the current instruction, independent of the status of the interrupt enable flip flop. NMI automatically forces the Z80 processor to restart to location 0066 hexadecimal. The program counter is automatically saved in the external stack so that the user can return to the program that was interrupted.

Input, active low. RESET forces the program counter to zero and initializes the processor. The processor initialization includes:

1) Disable the interrupt enable flip flop

2) Set Register 1 = 00

3) Set Register R = 00

During reset time, the address bus and data bus go to a high impedance state and all control output signals go to the inactive state.

Input, active low. The bus request signal is used to request the processor address bus, data bus and tri-state output control signals to go to a high impedance state so that other devices can control these buses. When BUSRQ is activated, the processor will set these buses to a high impedance state as soon as the current processor machine cycle is terminated.

Output, active low. Bus acknowledge is used to indicate to the requesting device that the processor address bus, data bus and tri-state control bus signals have been set to their high impedance state and the external device can now control these signals.

• Register addressing. The opcode itself specifies a register or register pair in which the data is contained. An example would be to load the data in register B into register D.

• Register indirect addressing. The opcode specifies a register pair which contains a 16 bit address. This address points to the data in memory or is an address to be loaded into the program counter (PC). An example would be to load the accumulator with data in memory pointed to by the HL register pair.

• Direct addressing. The opcode is followed by two bytes of operand. These two bytes are either a 16 bit address pointing to data in memory or a 16 bit address to be loaded into the PC. For example, in a jump instruction, the two bytes indicate an address to which program control is transferred.

• Immediate addressing. The opcode is followed by one or two bytes of operand. This operand is the data itself to be used. An example is load accumulator immediate which moves an 8 bit operand into the accumulator.

To these addressing modes, the Z80 has added three more powerful modes. These are indexed addressing, relative addressing, and bit addressing. The first two are somewhat similar to index and relative addressing in the Motorola 6800 microprocessor.

• Indexed addressing. The opcode is followed by an 8 bit displacement. This displacement is a signed two's complement number to be added to the contents of one of the two index registers. The result is a 16 bit effective address. The contents of the index register are unchanged.

• Relative addressing. The opcode is followed by an 8 bit signed two's complement number. The number is added to the contents of the program counter and the result placed back in the PC. This results in being able to execute program jumps within a range of +129 to -126 bytes using only a two byte instruction. Since most programs have a lot of jumps to locations relatively close to current locations, using relative addressing will significantly reduce program size. Another advantage is the ability to write relocatable code using relative addressing.

• Bit addressing. Three bits in the opcode itself specify one of eight bits in a byte to be addressed. This byte

could be the contents of a register or of a memory location. An example would be to set bit 6 in memory pointed to by index register, IX, displaced by —20.

The Z80 instruction set's increase of 80 instructions over the 8080A's didn't come from just increasing the number of addressing modes. There are instructions which don't exist in any other microprocessor. The instruction set will be broken up into groups by their function.

Load and Exchange Instructions

This group includes all the instructions that move data to and from registers, such as load B from D, load C from memory, store HL into memory, push IX into stack, and exchange AF with A'F'. The 8080A has most of the same instructions.

Block Transfer and Search Instructions

This group has several useful and unique instructions. The load and increment instruction moves one byte of data from memory pointed to by HL to another memory location pointed to by DE. Both register pairs are automatically incremented and the byte counter, BC, is decremented. This instruction is extremely valuable in moving blocks of data around.

Another instruction repeats the load and increment instruction automatically until the byte counter reaches zero. Thus, in one instruction, a block of data, up to 64 K bytes in length, can be moved anywhere in memory. Each byte of data transferred requires only 8.4 jus.

In the compare and increment instruction, the contents of the accumulator are compared with that of memory pointed to by HL. The appropriate flag bits are set, HL is automatically incremented, and the byte counter is decremented.

The instruction compare, increment, and repeat repeats the above instruction until either a match is found or the counter reaches zero.

The 8080A has no analogy to these instructions. It would have to execute three to ten separate instructions to achieve the same result. The number of bytes would be several times larger and the execution time would be several times longer.

Arithmetic and Logical Instructions

These instructions include all the adds and subtracts, increments, compares, exclusive-ors, etc. What the Z80 has added to

MAIN REG SET A

ALTERNATE REG SET A

ACCUMULATOR A

FLAGS

F

ACCUMULATOR A'

FLAGS F'

B

C

B'

C

D

E

D'

E'

H

L

H'

L'

the 8080A instructions is the indexed addressing mode and double precision add with carry and subtract with carry.

Rotate and Shift Instructions

Here the Z80 has taken the four 8080A rotate accumulator instructions and increased the possible addressing modes as well as included logical shifts and arithmetic shifts. On top of this there are a couple of rotate digit instructions. With these a digit (4 bits) can be rotated with two digits in a memory location, which is great for BCD arithmetic.

Bit Manipulation Instructions

There are three basic operations, test bit, set bit, and reset bit. With the various addressing modes, a powerful group of instructions is generated. For instance, if several memory locations are used for 10 devices, status bits can be individually tested and control bits individually set or reset. The 8080A (nor any other 8 bit microprocessor) has no such capability to manipulate bits.

Jump, Call, and Return

Both the 8080A and Z80 have numerous conditional and unconditional jumps, calls, and returns. In addition, the Z80 has several jump relative instructions using relative addressing. One of special interest decrements the B register, and jumps relative if B is not zero. This is especially useful in program loop control; it would take the 8080A two instructions to perform the same task.

Input/Output Instructions

The 8080A has two 10 instructions, input and output to and from the accumulator. The device address is in the second byte of the instruction, which means that each

GENERAL >PURPOSE REGISTERS

INTERRUPT

VECTOR

1

MEMORY REFRESH R

INDEX REGISTER IX

INDEX REGISTER IY

STACK POINTER SP

PROGRAM COUNTER PC

SPECIAL >PURPOSE REGISTERS

Figure 2: Programmable registers of the Z80. Considerable improvement over the 8080 design is found in the alternate register set, and the addition of two index registers, interrupt vector and memory refresh registers.

The Z80 should be a natural for string manipulation software with its pair of full 16 bit index registers and powerful multi-byte operations such as block move, memory search and block 10 instructions.

37

In addition to expanding operations upward to the level of blocks, the Z80 refines its addressing downward to the bit level with a group of bit manipulation instructions which are quite unique.

The Z80 simplifies the hardware required to implement a system as compared to the original 8080 design. Aside from the instruction enhancements, here is a way to get an 8080 instruction set with the ease of interfacing until now only available (in 8 bits) with processors like the 6800 and 6502.

For more information on the Z80 CPU and other Z80 parts contact Zilog Inc. 170 State St, Ste 260A, Los Altos CA 94022, (415) 941-5055."

device must have its own IO routine. One standard routine can't be used in common because each device has a different address and therefore different instruction. The Z80 has resolved this by including IO instructions that use the C register to contain the IO device address. Therefore one IO routine can be used with the device address placed in register C before entering the routine. Also instead of being restricted in inputting or outputting to and from the accumulator only, any register can be used.

If this isn't enough, the Z80 has eight block transfer IO instructions which are similar to the memory block transfer instructions. HL is the only memory pointer, C is the device pointer, and B is the byte counter. Therefore, an IO block transfer can handle up to 256 bytes. Essentially these commands are a processor implementation of direct memory access (DMA), invoked by a software sequence.

Miscellaneous Features

These instructions include no-operation, halt, enable and disable interrupts, decimal adjust accumulator, set carry, and complement carry. The Z80 can also select one of three interrupt modes.

Interrupts on the Z80

The 8080A has one input for interrupts; the Z80 has two. One is a nonmaskable interrupt (similar to the Motorola 6800 or MOS Technology 6502) which cannot be disabled by the software. The other is a maskable interrupt which can be selectively enabled or disabled by the program. The maskable interrupt is analogous to the single 8080A interrupt.

A nonmaskable interrupt will be accepted at all times by the Z80 processor. When one occurs, the processor will execute a restart to hexadecimal location 0066. The nonmaskable interrupt is used for very important functions that must be serviced immediately, such as a power failure routine.

The Z80 has three programmable modes for processor response to a maskable interrupt. There are three instructions that will select these three modes.

Mode 0 is identical to the 8080A single interrupt response mode. The interrupting device places an instruction on the data bus, and the processor executes it. The instruction will often be a restart. This mode is also the default mode for the Z80 upon a reset.

In mode 1, the processor will respond to an interrupt by executing a restart to location 0056. The response in this mode is similar to the response to a nonmaskable interrupt except for the restart location.

In mode 2, a table of 16 bit starting addresses for every interrupt routine must be maintained. This table can be anywhere in memory. When an interrupt is accepted, a 16 bit address is formed from the contents of the 8 bit I register and the 8 bits on the data bus. The I register contains the upper 8 bits of the address and the 8 bit data on the data bus from the peripheral device constitutes the lower 8 bits of the address. This 16 bit address points to a location in the interrupt vector table. The processor fetches the 16 bit address found at the selected table location (in two bytes) and loads the program counter with its value. This whole process takes 19 clock periods, or just 7.6 us.

The peripheral devices in the Z80 microcomputer family all have daisy chain interrupt structures. They automatically supply a programmed vector to the processor during interrupt acknowledge. Only the highest priority device interrupting the processor sees the interrupt acknowledge because of the daisy chain structure. With these devices, IO interfacing becomes quite a simple task, and is as powerful as the IO techniques used in many minicomputers.

Conclusion

What does the Z80 have going for it? It's easy to interface; one chip does the job of several 8080A family chips. It's as easy, if not easier, to design an entire system around than any other microprocessor on the market today, and the Z80 is software compatible with the 8080A, the most widely used and known 8 bit microprocessor. Its instruction set is much more powerful than the 8080A's or any other 8 bit microprocessor's instruction set.

Is there anything negative about the Z80? As of this writing (March), it is not yet in production and therefore not readily available to the personal computing experimenter. The price tag for unit samples is $200, but there are numerous price breaks with larger quantities. For instance, the price is $80 for quantities of 25 - 99. This is still more expensive, however, than either the 8080A, 6800 or 6502, and is about the same as 16 bit microprocessors.

The result is a tradeoff of cost versus performance. Much of the cost difference relative to other 8 bit processors is made up by the Z80's better memory utilization and (with respect to the 8080A) by the fact that fewer parts are needed to get a minimum system going. Although the Z80 processor is priced higher than the 8080A, when the cost of all the support devices the 8080A requires are included, the costs are comparable."

38

TDL IS PROUD TO ANNOUNCE THE REVOLUTIONARY Z-80 CPU CARD, AN ALTAIR/IMSAI COMPATIBLE CPU CARD FEATURING THE POWERFUL Z-80 uP PRODUCED BY ZILOG INCORPORATED. WHAT'S SO REVOLUTIONARY ABOUT THE Z-80? A LOOK AT THE FOLLOWING COMPARISONS WILL SHOW YOU:

As you can see, the Z-80 is a very powerful and fast uP - in fact its a NEXT generation microprocessor. And its available to you in a totally compatible format, NOW. Just unplug your current CPU card, plug in the Z-80 CPU, load a program, and you're up and running with a NEXT generation uP. The power and versatility of the Z-80 is unequalled in the uP field, and it opens the door to tremendous developments in the state of the art. More powerful, faster, and less memory consuming versions of your current 8080 software are just a part of the possibilities the Z-80 provides. (TDL's own 8-K BASIC for the Z-80 will be available in September.)

Each Z-80 CPU kit comes complete with:

• Prime commercial quality boards, IC sockets etc.

• easy to follow instructions

• Zilog's Z-80 Manual

• Schematics

• An easy to understand and apply user's guide

• TDL's Z-MONITOR on paper tape (soon to be available in deluxe PROM version)

• And membership in the Z-80 user's group.

Move up to the Z-80. Only $269.

THE FASTEST RAM? The high speed capability of the Z-80 demands an extrafast RAM to back it up, and TDL's new Z8K RAM board fills the bill. The Z8K is an 8K by 8 static RAM with the fastest access time in personal computing-215ns. Its the only RAM in personal computing fast enough to let the Z-80 run at full speed with no wait states. If that isn't enough, it also happens to be one of the lowest powered RAMs around as well. Only 150 ma typical current load on the 5V supply. That makes the Z8K run cool -and perfect for battery standby operation as well. Other so-called "low power" 4K RAM boards can't compete with these specs. Its the perfect match for the Z-80, and its features and low cost make it a perfect match for ANY uP. (It's fully Altair bus compatible of course...) Price: Only $295

WHAT ABOUT QUALITY? All TDL

products share one thing in common exceptionally high quality. The quality starts with engineering that is dedicated to keep your system state of the art at the lowest possible cost. Consider also the "Qual Division" whose ONLY purpose is

Comparison of the Zilog Z-80, Intel 8080

and Motorola 6800CPU chips

Z80

8080

6800

NUMBER OF:

Instructions

158*

78

72

Internal Registers

17

7

6

Addressing Modes

10

7

8

Voltage Required

+5

+5,-5,+12

+5

Standard Clock Rate

DC-3MHz

0.5-2MHZ

0.1-IMHz

Clock Phases

1

2

2

Clock Voltage

4.2

8.4

4.8

DynamicRAM refresh and timing signals

without slowing down CPU or

requiring additional circuitry

Yes

No

No

Single instruction memory to memory and

memory to I/O BLOCK TRANSFERS

Yes

No

No

Single instruction SET, RESET, or TEST

of any bit in accumulator, any

general purpose register, or any

external memory location

Yes

No

No

Single instruction BLOCK SEARCH of

any desired length of external

memory for any 8-bit character

Yes

No

No

Non-Maskable Interrupt and TTL

compatible inputs

Yes

No

Yes

Internal sync of inputs and direct

strobe of outputs

Yes

No

No

* Includes all 78 machine code instructions of th

e 8080A

and is therefore

capable

of running any standard 8080A software

without modification.

ADDITIONAL FEATURES OF THE Z-80:

• Up to 500% more throughput than the 8080A

• Requires 25% to 50% less memory

space

than the 8080A nrii

• Three modes of fast interrupt response

plus a

non-maskable

interrupt

• Outperforms any other microcomputer

n 4-,

8-, 16-bit applications

to keep TDL's products the best in the industry. And our products use only the finest boards available, prime components, sockets for all ICs, gold plated edge contacts and other earmarks of a commercial grade product. And its backed by a solid 90 day guarantee on parts and materials.

SAVE MONEY NOW Order both a Z-80 CPU card, and one or more Z8K RAM boards before September 1st, 1976, and you can deduct 10% on the total cost. Act now while this special offer lasts. (Does

not apply to COD orders.) HOW TO ORDER Just send check or money order, or use your BankAmericard or Mastercharge, and your orders will be shipped to you postpaid within 30 days. COD orders must be accompanied by a 25% deposit. Your credit card order must include the serial # of the card, expiration date, and your order must be signed. New Jersey residents add 5% state sales tax. For more information, send for our free catalog.

Dealer Inquiries Invited

TDL

(609) 392-7070 39

/TECHNICAL DESIGN LABS INC. 342 COLUMBUS AVENUE TRENTON, NEW JERSEY 08629

BYTE Reprint

Chapter 2

MACHINE LANGUAGE PROGRAMMING FOR THE "8008" and similar microcomputers

Reprinted from MACHINE LANGUAGE PROGRAMMING FOR THE "8008" (and similar microcomputers).

Author: Nat Wadsworth Copyright 1975 Copyright 1976 - Revised Scelbi Computer Consulting Inc With the permission of the copyright owner.

INITIAL STEPS FOR DEVELOPING PROGRAMS

The first task that should be done prior to starting to write the individual instructions for a computer program is to decide exactly what it is that the computer is to perform and to write the goal(s) down on paper! This statement might seem unnecessary to some because it is such an obvious one. It is stated because the majority of people learning to develop programs will realize its significance when they discover, halfway through the writing of a large machine language program, that they left out a vital step. Such an error can typically result in the programmer having to start back at the beginning and rewrite the entire program. The practice of writing down just what tasks a particular program is to perform and the steps in which they are to be done, will save a lot of work in the long run. The written description should be as complete and detailed as necessary to ensure that exactly each step of the program will be clear when actually writing the program in machine language. It is generally wise for the novice programmer to take pains to be quite detailed in the initial description.

The act of actually writing down the proposed operation of the program desired serves several valuable purposes. First, it forces one to carefully review what is planned. In doing so, it often vividly reveals flaws in original mental ideas. Secondly, it serves as a guide and a check list as the machine language program is developed. Remember, it will often take a number of hours to write a fair sized program. These hours might be spread over several days or weeks. In this period of time the human mind can easily forget original intentions and plans if the human memory is not refreshed by written notes. A program that is not kept carefully organized

as it is developed can become a real mess. This is especially so if one keeps forgetting key concepts or has to constantly add in forgotten routines. The time wasted by such sloppy procedures can be avoided if proper work habits are developed from the beginning.

Once one has written a description of the general task(s) to be performed, and has ascertained that there are no flaws to the overall concepts or ideas, it is a good idea to draw up a set of FLOW CHARTS for the proposed program. FLOW CHARTS are detailed written and symbolic descriptive diagrams of the flow of operations that are to occur as the program is executed. They also show the interrelationships between different portions of a program.

Over the years a variety of symbols and methods have been developed for creating flow charts. All of the varieties have the same basic purpose and most of the differences are the result of individuals pushing their own preferences. Most people can do admirably well using just a few basic symbols to denote fundamental types of operations in a computer program. The small group to be presented here will enable most microcomputer programmers to develop flow charts rapidly, with little confusion, and without having to learn a host of special symbols.

A CIRCLE may be used as a general purpose symbol to specify an entry or exit point in a routine or subroutine. Information may be printed inside the circle. This information might denote where the routine is coming from or going to (such as the page number and location on a page for a program that requires several sheets of paper to be flow charted). It might contain transfer

40

information. Or, it could denote the starting and stopping points within a program. Some typical examples of the CIRCLE symbol are illustrated next.

(START j

| FM \ I TTY J

Lines with arrows may be used to interconnect the three types of symbols presented. In this way, the. symbols may be connected to form readily understood FLOW CHARTS of operations that are to occur in a program and to show how various operations relate to each other. Flow charts are extremely valuable references when developing programs as well as when one wants to update or expand a program and needs to quickly review the operation of the program of specific interest.

An example of a flow chart for a relatively simple program will be shown next. The program illustrated by the flow chart is to accept characters from an ASCII encoded electric typewriter and send out the equivalent character to a BAUDOT coded device. In this illustration it is assumed that the I/O interfaces to the machines are parallel interfaces (versus the possibility of being bitserial interfaces). Thus, complex timing operations do not have to be discussed in the example. A written description of the example program could be stated as follows.

The computer is to monitor bit B7 of INPUT PORT 01, which is the control port

for an interface to an ASCII encoded electric typewriter. Whenever bit B7 on INPUT PORT 01 goes low (logic '0') it indicates a new character is waiting in parallel format from the typewriter at INPUT PORT 00. The computer is to immediately obtain the character that is waiting at INPUT PORT 00 and as soon as it has obtained the data it is to send a logic '1' (high) signal to bit B0 of OUTPUT PORT 11 to signal the ASCII interface that the character has been accepted by the computer. (The receipt of this signal by the ASCII interface will then cause the ASCII interface to restore the control signal on bit B7 of INPUT PORT 01 to a high (logic '1') condition.)

Whenever a character has been received from the ASCII typewriter on INPUT PORT 00, the computer is to compare the character just received against an ASCII to BAUDOT look-up table which is stored in the computer's memory until it finds a match. It will then obtain the equivalent BAUDOT character from the conversion table. It will then send the BAUDOT code for the character in bit positions B5 through B0 of OUTPUT PORT 10. Bit B5 will serve to indicate to the BAUDOT interface whether

A square or rectangel may be used to denote a general or specific operation. The type of operation may be described inside the box such as illustrated in the following examples.

|CLEAR THE ACCUMULATOR!

STORE THE INCOMING MESSAGE

SET

I/O

FLAGS

A diamond form may be used to symbolize a decision or branching point in a program. The determining factor(s) for the decision or branching operation may be indicated inside the symbol. The two side points of the diamond are used to illustrate the path taken when a decision has been made. The diamond symbol is illustrated next.

GET ASCII

CHARACTER

FROM INPUT

PORT 00

SEND A LOGIC TON B0

OF OUTPUT PORT 11 TO

CLEAR THE ASCII

INTERFACE

GO TO LOOK-UP TABLE ROUTINE AND FIND THE EQUIVALENT BAUDOT CHARACTER

SEND THE BAUDOT CODE

TO OUTPUT PORT 10 IN

BITS B5 THROUGH B0

41

the code in bits B4 through BO is to be processed by the BAUDOT device when it is in the LETTERS or FIGURES mode. It is assumed that the character rate (but not necessarily the baud rate) is the same for both machines so that the example may be simplified by eliminating the requirement for character buffering or stacking in the memory of the computer. However, in practical applications such capability might be required. The feature could be added to the program. However, for this case, as soon as the BAUDOT code has been transmitted (in parallel format) to the BAUDOT device, the computer will simply go back to waiting for the next character to come in from the ASCII machine. The written description of the program just presented is succinctly summarized in the flow chart shown on the previous page!

The flow chart of the program shown on the previous page could be considered an outline of the program. Portions of that flow chart could be expanded into more detailed flow charts to present a detailed view of special operations. For instance, the rectangle labeled GO TO LOOK-UP TABLE ROUTINE AND FIND THE EQUIVALENT BAUDOT CHARACTER really refers to a portion of the program that consists of a number of operations. Those operations could be described in a separate flow chart such as the one just presented.

The reader can see that the expanded flow chart illustrates the operation of the table look-up routine portion of the program. With a little study one can discern that the look-up table consist of an area in memory that has an ASCII encoded character in one word, followed in the next word by the same character in BAUDOT code. This sequence continues for all the possible characters as illustrated below. The flow chart illustrates how the data in the look-up table is scanned by skipping over every other memory location (which contains the BAUDOT codes) until the proper ASCII character is located. When that is located, the routine simply extracts the proper BAUDOT code from the next memory locaction in the table. The flow chart makes the sequence easier to understand than a purely verbal explanation of the routine.

INITIALIZE POINTERS TO START OF LOOK-UP TABLE

COMPARE THE CONTENTS OF THE

CURRENT LOCATION IN THE LOOK-UP

TABLE AGAINST THE CHARACTER

PRESENTLY IN THE ACCUMULATOR

NO

YES

ADVANCE THE TABLE POINTER BY TWO WORDS.

HAVE FOUND THE DESIRED

CHARACTER. ADVANCE THE

POINTER TO THE NEXT WORD

IN THE TABLE AND FETCH

THE BAUDOT EQUIVALENT.

( EXIT J

ADDRESS

PAGE

XX LOC

z

PAGE

XX LOC

Z+l

PAGE

XX LOC

Z+2

PAGE

XX LOC

Z+3

PAGE: XX LOC: Z+2(N-1) PAGE: XX LOC: Z+2(N-1)+1

MEMORY CONTENTS

ASCII code for letter A BAUDOT code for letter A ASCII code for letter B BAUDOT code for letter B

ASCII code for N'th letter BAUDOT code for N'th letter

ILLUSTRATION OF LOOK-UP TABLE ORGANIZATION FOR THE EXAMPLE PROGRAM

It is strongly recommended that beginning programmers develop the habit of first writing down the function(s) of the desired program they intend to create. Next, one should draw up flow charts as detailed as one feels is necessary to clearly show the operation of the program that is to be developed. A novice programmer will be wise to prepare quite detailed flow charts. More experienced programmers may prefer to leave out details of operations that they thoroughly understand. Flow charts should serve as ready references when the programmer goes on to actually develop the stepby-step machine language instruction sequences for the computer.

Flow charts are also an excellent method

for communicating programming concepts to fellow computer technologists. Remember that general flow charts do not have to be machine specific!) Learning how to prepare and read flow charts is an important (yet easy) skill for all computer programmers to acquire. It can also be fun and a highly creative process. Using the technique, one may review the overall operation of a program under development and gain new insights into where to interconnect routines, where common loops exist (which can save valuable memory room if they are subroutined), and find other ways in which to enhance a program's capabilities.

Chapter 3 of MACHINE LANGUAGE PROGRAMMING FOR THE "8008" (and similar microcomputers) will appear in the September BYTE.

42

scam

fOPTUJl

Introducing SCELBAL, the new microcomputer language that's simpler than machine language.

ISssfc

A complete language for "8008"/"8080" systems including source listings, routines, flow charts and more!

SCELBAL. scientific ELementary BAsic Language for "8008"/"8080" systems. A complete, illustrated program book. Routines. Techniques. Source Listings. Flow Charts. And more. Took several years to develop. Now yours for many years to come. First time that intimate details of higher level language has been offered for such a low price. Only $49! You get 5 Commands: SCR, LIST, RUN, SAVE, LOAD. 14 Statements: REM, LET, IF . . . THEN, GOTO, FOR with STEP, END, INPUT, PRINT, NEXT, GOSUB, RETURN and optional DIM. 7 Functions: INT, SGN, ABS, SQ"R, RND, CHR, TAB. And, it runs in 8K and more. Here's all the data needed to customize a high level language for your system ... at a fraction of the cost!

Order your copy today! Get $^ Q started advancing your system! ^frw ppd.

"8080" SOFTWARE MANUALS

I 6BMES ■..-.

ftK*e

fewA-oS'!-"

Here's SCELBI's First Book of Computer Games for the 8008/8080. Action-packed. And fun.

I Try to beat the computer at its own game. I Here's the first complete machine language \ computer manual for computer games to I include source listings, flow charts, I routines and more. Space Capture — You I against the computer using "search and \ destroy" strategy to shoot down roaming I alien spaceships in outerspace. Hexpawn I —a mini-chess game that lets the Kr\ computer make mistakes ... but only ! once. Hangman — an updated version I of the great kid game. Computer selects \ words at random from long, expandable list. Try to beat it in 8 moves or less. ' j Illustrated. Fun extras to put your J computer to challenging, competitive,

"="* fun use. 1A95

Order yours today! |*fr ppcj.

SCELBI's new microcomputer Game Book of Outer Space...

Captain your own crusading starship against the logic of your "8008" or "8080". You must destroy a random number of alien ships without running out of stardates, out of fuel, out of ammunition or out of the galaxy. Plan your mission. How much fuel is used for your warp factor? Don't run into roaming stars that can damage your ship. Suddenly! Condition Red! Alien In sight! How big is he? Fire a phasor or torpedo! He's damaged or destroyed. But, you've used valuable fuel. That's Just the beginning. A new game every time. Complete program book in machine language for 4K memory, including source listings, flow charts, routines, etc. Great intergalactic adventure and fun.

Order "GALAXY" today! 1495 PP«J

G4IAXY

MOlv

Three new basic, complete "MUST" manuals! "8080" Assembler Program operates easily In 4K bytes of RAM (including symbol table). Unique feature: How to accept mnemonics related to "8008" based machines on "8080". Includes all major routines, pertinent flow charts, highly com

mented assembled listing and more. $17.95. "8080" Editor Program identical to "8008" Editor, with machine codes for "8080". $14.95. "8080" Monitor Routines same functions as "8008" specifically developed to utilize expanded capabilities of "8080". $11.95.

'TOI,

*'<**«

1795

ppd.

SAVE $5.35! BUY ALL 3 FOR ONLY $39.50!

MACHINE LANGUAGE

PROGRAMMING

FOR THE "8008"

(and similar microcomputers)

fere's the detailed, Daslc manual you need to develop today's machine anguage programs. 170 pages. Illustrated. Easyto-read, understand. Most techniques applicable to other micro-computers, Including "8080". Floating-point arithmetic package Is worth the price alone! Order todayl

ppd.

Detailed presentation of "8008" codes • Flow Charts Mapping • Floating-point Package • Debugging Basic programs: loops, counters, masks Organizing Tables • Editing/Assembling Math operations • I/O, Real Time Programming Maximizing memories • And lots more.

Master Charge, Postal and Bank Money Orders preferred. Personal checks delay shipping up to 4 weeks. Pricing, specifications, availability subject to change without notice. Prices for U.S. and Canadian delivery at book mailing rate. Add $2.50 for each publication If Priority Air Service (U.S.) desired. Foreign orders add $6.00 for each publication.

fCELEI COHWUfEn CONfULlING IMC.

1322 Rear Boston Post Rd., Telephone: 203/874-1573

Milford, CT 06460

True Confessions: How I Relate to KIM

I recently purchased a KIM-1 microcomputer card from MOS Technology (See "KIM-O-Sabee?" in the April BYTE, page 14 and "A Date With KIM" in the May issue, page 8). In my opinion, KIM-1 offers one of the best bargains to a computer experimenter for the price ($245 for the card + $4.50 for shipping and handling). However, the hobbyist may be faced with a few problems, as I was. The intent of this article is to solve some of these problems.

Yogesh M Gupta 118 E Main St New Concord OH

43762

ICI

7404

560 n

560fl

■►MtffrMS*

.02fLF

AH

2.0MHz CRYSTAL

+ 5V

ICI

740 4

14

IC2

7474

14

IC3

7400

14

IC4

74103

4

SPEED SELECT

R W (FROM 6502)

Clock Stretch and Random Access Memories

The cheapest random access memory in experimenters' markets today is the standard 2102 static memory which averages approximately 0.15</ per bit. During a write cycle, the inexpensive slow versions of this device require the data to be stable for 800 ns before the trailing edge and data hold time of 100 ns after the trailing edge of the write pulse. Even if the MOS Technology 6502 processor is slowed down to 250 kHz to obtain the data stability, there is still not enough data hold time for the slow chips.

I solved this problem by implementing the circuit shown in figure 1. This circuit allows the 6502 processor to use a mixture of fast and slow 2102 memory devices in the same system. The processor cycle is main

I—^o-O

—* y (TO SL

Figure 1: A circuit which creates an alternative slow clock cycle for the 6502 processor on the KIM-1 board under control of a "SPEED SELECT" line generated by slow memories. SPEED SELECT =0 for fast cycles, SPEED SELECT = I for slow cycles. This circuit requires a 2.0 MHz crystal.

SLOW 2102's)

44

U—12-J

Uti-rt I

I I L

*0 (IN)

■A

» I (6502)

ADDRESS BUS (6502)

SPEED SELECT

"L

FAST CYCLE

zm

SLOW CYCLE

tl = 500nS

t2 = lOOOnS

13 = 75 nS - MAX.

14 = 300nS-MAX.

t5 = TIME FOR ADDRESS DECODER

Figure 2: Method 1 SPEED SELECT Discipline. In this method, fast cycles are' the rule, slow cycles are the exception. Refer to figure I for points B and C. Invalid data on the address bus is indicated by the crosshatched areas.

tained at 1.0 /is for the fast memory access, while for the slower 2102s, the cycle is automatically stretched to 2.0 jus.

Sometimes integrated circuits behave in ways that are not predicted by, or are overlooked by, their manufacturers. This modification of KIM-1 to enable the clock stretching function is accomplished by removing the usual KIM-1 6502 clock generation circuitry, and simply driving the 0fj pin of the 6502 directly from a TTL clock source which is external to the chip. This mode of operation is not documented in the 6502 Hardware Manual of MOS Technology, but it worked quite satisfactorily in my system . The intention of the designers of the 6502 was that the clock generation logic on the chip would be used with external components setting the frequency of the oscillator.

The SPEED SELECT signal to stretch the

POINT B POINTC

*0(IN) 6502 PIN37

*l(6502)

ADDRESS BUS (6502)

- (2

♦ tl-H

SPEED SELECT

am, m

SLOW CYCLE

FAST CYCLE

tl - 500nS

t2 « lOOOnS

(3 ■ 75 nS MAX

t 4 = 300nS MAX

15 ■ TIME ALLOWED FOR ADDRESS DECODER

Figure 3: Method 2 SPEED SELECT Discipline. In this method, slow cycles are the rule, fast cycles are the exception. Refer to figure 1 for points B and C of the timing diagram. Invalid data on the address bus is indicated by the crosshatched areas.

h- i2 -H

r*ti-H

r

r

L L

ii =

12 =

13 ■ t4 •

15

16 ■

250 nS

POINT A

i—\_r

i I

500nS

90nS MAX 200nS MAX

POINT B

i i

—L

I

950 nS

*0 (IN)

350 nS

i i

#j h<3

4>2(6502)

"i r~

•114

K

1

DATA BUS (6502) j

JZ

R

h—

«-16

■H

RW FOR SLOW 2102 S

Figure 4: Write Cycle for Slow 2102 Memories. The timing requirement is that valid data be present on the bus when the RW signal to the memory changes from 0 (write state) to I (read state). The crosshatched areas indicate when data is invalid on the data bus.

45

ICI

560 a 74°4

.02/iF

560ft

1.0 M

I.0MH2

| CRYSTAL

POWER CONNECTIONS

+5V GND

ICI 7404

14 7

IC2 7474

14 7

IC3 7400

14 7

IC4 74123

16 8

»2 r-v^

FROM KIM-I I ^

+ 5 t R

US

+ 5

IC2 CLK 7474

I IOK

RW FROM i—^ KIM-I LJ>~

+ 5

CL

B Q

IC4 A 74123

CX RX

400pF

T

15

V

POINT C

ICI

9!>8

IC3o^3 2|7400

IC3b V

517400

-<2]SPEED SELECT

-O»o

TO 6502 PIN 37

<3

RW TO SLOW 2102 S

Figure 5: Alternate Slow Clock Generation Circuit. In this circuit, the original KIM-I crystal can be used, since a digitally controlled timing cycle is replaced by the 74123 oneshot.

cycle is generated by address bus decoding logic using one of the following two methods.

Method 1: Normally the SPEED SELECT signal is kept low so the processor cycle is 1.0 /is. However, this signal goes high when the processor addresses the slow memory region causing the cycle to stretch to 2.0 /is. See figure 2 for the timing relationships.

Method 2: Normally the SPEED SELECT signal is kept high so that the processor cycle time is 2.0/is to access slow memory. However, this signal goes low when the processor addresses the fast memory devices causing the cycle time to

42(6502)

DATA BUS

2/xS

«-500nS-»|

•J K

200nS

(6502) ^

WWWVW^i

M

RW FOR " 2102

l.0MS »\ j

-»)300nsU

Figure 6: Write Cycle for Slow 2102 Memories using the circuit of figure 5. The output pulse width of RW is adjusted to 1.2 lis nominally. (Check the results on your scope even if you use other than precision parts of the values shown for Ri and CI in figure 5.)

be only 1.0 /us. See figure 3 for the timing

relationships.

The circuit shown in figure 1 will allow a data stability of 950 ns before the trailing edge and data hold time of 350 ns after the trailing edge of the Write Pulse for the slow 2102s. See figure 4 for the timing relationships.

However, the KIM-1 board comes with a 1.0 MHz crystal. Figure 5 shows an alternative circuit using a 1.0 MHz crystal. The timing relationships to control SPEED SELECT signal are the same as shown in figures 2 and 3. The RW signal for the slow memory is generated in this case by using a 74123 oneshot. The value of the RC constant for the 741 23 is chosen to provide a nominal output pulse width of 1.2 /is. This allows a data stability of 1.0 /is before the trailing edge and data hold time of 300 ns after the trailing edge of the write pulse for the slow memories. Figure 6 shows the resultant timing relationships. It should be noted that the output pulse width of the 74123 can only tolerate a ±16.66% variation, and still permit successful operation of the 2102 memory devices. This tolerance may require selection of precision parts for the external resistor and capacitor of the oneshot.

Bus Expansion

The 6502 bus is only capable of driving one standard TTL load. If more drive capability is needed, the tristate drivers such as the 8T97 or DM8833 parts may be used.

46

I—

6502

DATA LI

"mCLp.

R W (6502) d>

~<a

i—<Hf

BUS EXTENSION INTEGRATED CIRCUIT. TYPICAL PARTS:

DM8833

8 T97

-<^) HIGH DRIVE CAPABILITY TRISTATE

Figure 7: Use of a Bus Extension Integrated Circuit. In order to tie in extra memory or peripherals, a bus extension is required. The typical logic diagram of a simple attempt which will not always work is shown here. (Conflicts can arise.)

However, you must be very careful when using an extended data bus. If you enable the drivers by RW signal as shown in figure 7, then during read mode, the drivers for the existing KIM-1 memory (eg: 74125s) can be turned on simultaneously. The low level output current of 74125s is only 16 mA and is not sufficient to pull down a turned on 8T97 type driver to logic 0 level. Therefore, during read mode the bus extension tristate drivers should be turned off when the existing on board KIM-1 memory (RAM, 6530-002 and 6530-003) is being accessed as shown in figure 8. In actual implementation the DECODE ENABLE signal may be the same as the one needed on the application connector of the KIM board (when more than 8 K memory is needed).

Interrupt Prioritizing Logic

The KIM-1 Hardware Manual (Section 2.3.3) describes a few approaches to implement interrupt priority logic; but I found them either inefficient (software time) or expensive (use of ROM). The circuit shown in figure 9 provides a cost effective compromise. The interrupts from the peripheral devices are latched in by the 02 signal. This

inhibits the priority encoder from generating a false vector (if the interrupts from the peripherals are changing while the 6502 is fetching the vector). In response to IRQ, the 6502 fetches the vector from hexadecimal locations FFFE and FFFF. During these fetch cycles, the 6530-002 is disabled by letting the decode enable signal go high on the application connector. Therefore, the vector generated by this circuit is fetched by the 6502 instead, and the program goes to one of the locations from 0200 to 021C. This segment of memory serves as a vector table with pointers to the individual interrupt service routines as follows:

0200 J MP VEC0

0204 J MP VEC1

0208 JMP VEC2

020C JMP VEC3

0210 JMP VEC4

0214 JMP VEC5

0218 JMP VEC6

021C JMP VEC7

The actual service routines will reside in locations VEC0 through VEC7 for the respective interrupts. It should be noted that each vector in the table requires 4 locations. (Only 3 locations are needed for a jump but

6502 i—^_

DATA LINE I—->~

ihl

i>

I __

RW(650Z>O-i ^1

DECODE i—>J 7°

ENABLE I >—t y

• BUS EXTENSION INTEGRATED CIRCUIT. TYPICAL PARTS: DM8833 8T97

-< | HIGH ORIVE CAPABILITY TRISTATE

Figure 8: Adding a gate to the bus extension control resolves a potential conflict through the use of a decode enable signal which is high if external memory is referenced, low if mem ory on the KIM-1 board is referenced.

47

INTERRUPTS

FROM

PERIPHERALS

BUFFERED/ ADDRESS \ LINES

SYSTEM DATA )BUS EXTENSION

HIGH DRIVE CAPABILITY BUS INTERFACE EG:DM8833 8T97

IC9 7400

ADDRESS FFFE/FFFF ARBITRARY ADDRESS

^j 9° y~~<3

DISABLE

POWER PINS

+5V GND

ICI

74175 16 8

IC2

74175 16 8

IC3

74158 16 B

IC4

7408 14 7

IC5

7404 14 7

IC6

7430 14 7

IC7

7430 14 7

IC8

7432 14 7

IC9

7400 14 7

DECODE ENABLE TO KIM

APPLICATIONS CONNECTOR

BUFFERS-PER CHOICE

Figure 9: By disabling normal address decode through the DECODE ENABLE pin for the KIM-1 applications connector, an alternate source of the interrupt vector at locations FFFF and FFFE can be created which accomplishes interrupt prioritizing functions.

the extra location is a requirement of a simple hardware design.) J MP instruction takes only three locations, so your software might use the fourth location to save the accumulator, eg:

0200 PHA

0201 J MP

0202 VECO (LOW)

0203 VECO (HIGH)

This architecture will re-map the 1 K resident RAM on the KIM board as follows: 0000 through OOFF Page 0 0100 through 01 FF Stack 0200 through 021 F Vector Table 0220 through 03FF Applications The disable signal in figure 9 will deselect existing KIM-1 memory when low. This is implemented for memory expansion as described earlier. However, if memory expansion is not desired the signal may be fixed to a logic 1 level.

Halt?

Another problem-one faces is how to debug the software when the processor does not have a HLT instruction. You can single step the program instructions on KIM-1, but this feature does not help the programs which involve multiple levels of loops or critical peripheral timing controls. The obvious solution is to use the BRK (software interrupt) instruction. However, this would require software overhead in every interrupt service routine to determine whether it was a hardware or a software interrupt. On the KIM-1 system, I found the sequence JSR05 1C (Jump to subroutine at location 1C05) more useful for this purpose instead. The execution of JSR causes the program to jump to an input monitor loop and display of the address (PC+ 2) on the KIM board. PC is the location where the JSR was executed."

48

iCOM's Frugal Floppy.

At $995, your microprocessor's best friend.

I 1

iCOM dish drive

iCOM, the microperipheral™ people have done it again! This time with a ready-to-go Floppy Disk Subsystem foryour low budget microprocessor-based project.

You get everything from iCOM

Our Frugal Floppy includes:

• Interface cable to your microprocessor

• Proven IBM compatible controller

• Disk drive with daisy chain capability

• Controller-to-disk drive cable If you need a power supply and software, we've got that too!

iCOM's famous FDOS-II software

iCOM's FDOS-II software package is now available forthe OEM orthe hobbyist. Its super features, such as named variable length files, autofile create open and close, multiple merge and delete, help make your project a winner right away. Versions to run on any 8080 or

6800 based system are ready to ship. Use FDOS-II either in your development system or integrate it into your applications package. In either case, it's easy to do. And low cost too.

Easy interface

Real easy. Three 8 bit latches and you've got it. Just one ribbon cable (which we provide) handles the hook-up. What could be simpler?

Powerful controller

The dependable iCOM controller is already used in hundreds of different systems. It takes the load off your software, letting your microprocessor do its job

MICROPERIPHERALS

Cable to your Microprocessor

without getting bogged down. Auto track/sector seek and verify, full sector I/O buffers, auto CRC generation and checking, are just a few of the controller features. Handles from 1 to 4 drives with no changes in software or hardware. IBM compatible, too.

The clincher

iCOM's Frugal Floppy™ sells for only $995 in small OEM quantities. If you need just one it's still only $1195.

Call us today. When it comes to microperipherals™ iCOM has the answers.

6741 Variel Avenue • Canoga Park California 91303 • (213) 348-1391

Ask about our completely packaged systems too. We have complete development systems for:

• lntellecMDS-800

• Intellec 8

• Motorola M6800

• PCSMicropac™80

Intellec is a trademark of Intel Corp.

What's

New?

New Products Policy

Insertions in this section of BYTE are chosen at our discretion from unsolicited "press release" materials sent by vendors. New companies inexperienced in the game of publicity seeking are advised that a press release on a hardware product should contain a descriptive text plus glossy black and white photograph (or photographs) of the item. Software products should include ample descriptive text to convey an idea of what is being marketed; if there are any characteristic graphic materials associated with the software product, pictures or camera ready copy should also be supplied.

Appearance of descriptive information on a product in these columns does not constitute an endorsement of that product."

Don't Waste Time Loading from Tape ... Put a Chunk of EROM into Memory Address Space

The Cromemco BYTESAVER is a novel and quite useful idea for the person who wants to have his or her software instantly available without wasting the power needed to keep volatile memory alive: This product is a combination EROM memory board and programmer, designed for the Intel 2704 (512 byte) and 2708 (1024 byte) erasable read only memories. It plugs directly into one slot of the Altair 8800 or IMSAI 8080 bus structure, and has a maximum capacity of 8 K bytes if all 8 sockets are loaded with 2708s.

The basic price of the unit is $295, which includes one 2704 memory and the board shown in the photograph. The 2704 which

comes with the board contains software customized for the Altair and IMSAI hardware which uses front panel sense switches to control loading of selected EROM chips from a block of volatile memory. The BYTESAVER is shipped FOB Los Altos CA and delivery is quoted as being from zero to 30 days."

Parallel Interfaced Audio Cassette Driver

Custom Design Services, 4021 Windsor, Garland TX 75042, sent along this picture of the CI-810 tape interface board. The circuit

|^^*'-^H

±

^r»d

8^^k^Sh0@S0I&E^ * J

of this design, by Harold Mauch, appeared in BYTE's March [page 43] and April [page 10] issues. The design uses the modified Manchester encoding scheme of the audio interface standards conference organized by BYTE in November 1975, and runs at 27.27 bytes per second (300 Baud).

The modulator and demodulator can be modified to run at much higher data rates with a fairly simple circuit modification which creates a full Manchester encoded AC coupled signal. The board uses a standard 22 pin double sided edge connector, has room for custom modifications with wire wrap or hand wired connections, and uses two 16 pin DIP sockets for the parallel data connection to your computer. Audio and power connections are through the edge connector. Power requirements are 5 V at 100 mA, —12 V at 15 mA, 5% regulation on both supplies.

The price for this single channel interface is $59.95, and the unit is supplied with complete documentation of its interface requirements and operation. ■

Make Hard Copies With This Printer

The mp-40 is a low cost impact printer designed for the small microsystem market. The number of moving parts has been minimized to increase the reliability and reduce any maintenance time. Itgenerates 5 x 7 dot matrix characters at a rate of 75 lines per minute with a maximum print line width of 40 characters. A standard width (12 characters per inch) character or an ex

50

tended width (6 characters per inch) character can be printed under software control. It prints a 64 character ASCII set with 6 lines per inch on ordinary roll paper and has multiple copy capability. The paper guides can be adjusted to accept paper widths from 2 3/4 inches (7.0 cm) to a maximum of 4 inches (10.2 cm). The molded plastic case measures 13 by 13 by 6.5 inches (33.0 cm by 33.0 cm by 16.5 cm) and encloses the printer and paper roll. It also includes an AC interlock to remove any shock hazard when the case is opened. The printer comes with a TTL 8 bit parallel "handshake" interface which is compatible with most microprocessor parallel IO ports and provides for optional line termination resistors which may be required when long cables are used. A self test feature is included in the interface design to aid in system debug operations. The completely assembled and tested mp-40 is priced at $425 in quantities of one and is available from mpi, PO Box 22101, Salt Lake City UT 84122, (801)566-0201. Delivery is 60 days after receipt of order. ■

IO Board With ROM Software

The National Multiplex Corporation, 3474 Rand Av, Box 288, So Plainfield NJ, has introduced a new 8080 IO board with ROM. This is an Altair 8800 and IMSAI compatible board which plugs into the bus and has routines for bootstrapping, loading software, dumping software, editing and control of either a UART interface or a USART. The board can drive one terminal through the UART and one or two tape cassettes through the USART. For the complete details of the software in this monitor, contact National Multiplex, which sells the kit version for $140 and an assembled and tested version for $170."

If you want a microcomputer with all of these standard features •. •

• 8080 MPU (The one with growing software support)

• 1024 Byte ROM (With maximum capacity of 4K Bytes) •1024 Byte RAM (With maximum capacity of 2K Bytes)

•TTY Serial I/O •EIA Serial I/O

• 3 parallel l/O's •ASCII/Baudot terminal compatibility with TTY machines or video units

• Monitor having load, dump, display, insert and go functions

• Complete with card connectors ■ Comprehensive User's Manual, plus Intel 8080 User's Manual • Completely factory assembled and tested —not a kit

• Optional accessories: Keyboard/video display, audio cassette modem interface, power supply, ROM programmer and attractive cabinetry... plus more options to follow. The HAL MCEM-8080. $375

.. .then let us send you our card.

HAL Communications Corp. has been a leader in digital communications for over half a decade. The MCEM-8080 microcomputer shows just how far this leadership has taken us... and how far it can take you in your applications. That's why we'd like to send you our card—one PC board that we feel is the best-valued, most complete

m

microcomputer you can buy. For details on the MCEM-8080, write today. We'll also include comprehensive information on the HAL DS-3000 KSR microprocessorbased terminal, the terminal that gives you multi-code compatibility, flexibility for future changes, editing, and a convenient, large video display format.

HAL Communications Corp.

Box 365,807 E. Green Street, Urbana, Illinois 61801

Telephone (217) 367-7373

51

One day in 1975, Jack had finally had it with machine language.

Jack and the Machine Talk

(or, the Making of an Assembler)

Robert D Grappel 148 Wood St Lexington MA 02173

Jack Hemenway 151 Tremont St Boston MA 02111

One day in 1975, Jack Hemenway had finally had it with machine language. "I'm tired of address calculations in hexadecimal! I'm tired of looking up every opcode! My Motorola manuals are falling apart! I'm tired of midnight debugging from memory dumps! My eyes ache from reading page after page of hexadecimal! I need a good bookkeeper to help me write programs, someone who knows Motorola opcodes by heart, can compute in hexadecimal, is infallible! A bookkeeper I can really talk to!"

Jack thought about this problem for some time. Finally, he decided to make his new microcomputer become his bookkeeper. The processor was aghast.

"I've never written a program myself! I'd never know where to begin!"

Jack calmed his agitated MPU and assured it that he'd never leave it completely alone, and besides, he was going to teach it to program for him. "You'll see how easy it is, really."

"First of all, I want you to memorize this list of Motorola opcodes and their mnemonics. Then, you can tell me the

hexadecimal opcode for any instruction, and I won't have to remember which is which.

Computer cycled for a while, its lights flashing. Then, it halted.

"OK," said Jack to his 6800, "Now, what is an RTS instruction?"

The computer began leafing through its copy of Motorola opcodes and after several milliseconds of thought responded, "That's a return from subroutine... hexadecimal 39."

"Fine," said Jack, "How about CLR?"

The computer hesitated only a moment before responding, "That's a clear instruction ... hex 7F."

"That's fine, computer, but you take too long to look up mnemonics. You do a lot of searches before you come to the item I ask for; and if I slip up and ask for an invalid mnemonic, you've got to search through all the valid ones in your dictionary before you know about my error. I'm going to show you a better way."

Jack then taught his computer the binary search method. "You see, the mnemonics are ordered in alphabetic order."

"What's an alphabet?"

52

"Oh, I forgot how finicky you are about new terms," said Jack. "Let's just say that they are ordered in ascending sequence."

"That's better," sighed computer. "Numbers I understand!"

Jack continued, "You presently start searching at the first entry in your table. I suggest that you start with the middle entry. Since I am going to provide you with a program that can test the ordering of entries, you will then be able to tell whether the mnemonic you want lies in the first or second half of the table. As you see, now you need search only half the table."

"Great," interrupted computer, immediately trying out its new program.

"Wait!," said Jack, "I'm not finished yet, and neither are you!"

"All right, Jack," replied the computer, sheepishly executing wait states.

Jack continued, "You can use my new program over and over again. Each time you use it, you'll reduce the length of table you need to search by a factor of two. Finally, you'll either have the desired mnemonic or you'll know that it isn't in the table. For a table like the one I gave you, this process will take about one sixth the number of searches you have been requiring.

"Computer... what's an STA instruction?"

"You know I can't tolerate ambiguity! How do I figure out which definition to use ... ?" said the computer petulantly. "I 'm going to provide a grammar for you too ..." replied Jack unambiguously.

"That's a store accumulator instruction," replied the computer almost instantly, "but there is more than one possible opcode for it. Do you want accumulator A or B? What kind of addressing do you want?"

"I see that we have much more to learn. Right now, just remember that it is a store accumulator instruction. I'm going to have to specify a language with which to answer your questions. I'll teach it to you soon." Jack reached over and turned off the power supply. The fan slowly whirred to a stop.

"Wakeup, you lazy machine," called Jack from his fancy CRT terminal.

"Who, what, where?????", mumbled the computer as its power rose to its accustomed level.

"It's time for your next lesson in programming." Jack began to type in a list of characters. He typed in the alphabet, the digits, add, subtract, multiply and divide symbols, punctuation, and some special

Jack walked down the hall and turned off the room lights. Only computer's red panel lights could be seen, flickering seductively.

53

"You mean I have to take up my valuable memory with your comments?" interrupted computer indignantly. "Now don't get warm. All you need do with my comments is print them ..." replied Jack soothingly.

symbols. With each character he added a defining hexadecimal byte. "Computer," Jack said as he turned from the keyboard, "you now know all the characters I'll ever use in talking with you. The definition byte will tell you what uses can be made of the character. If bit 7 of the character definition byte is set, you'll know that the character is a letter. If bit 6 is set, you'll know that the character is a digit. Bit 5 defines an arithmetic operator. Bit 4 defines a location separator. Bit 3 defines a mnemonic separator. Bit 2 indicates an operand separator. Bit 1 defines a hexadecimal character. And, not least, bit 0 indicates a special symbol .. . namely A, B, or X. These will be the names I'll use to tell you about your registers and accumulators in my programs. You already know where these are."

"Anything you say, Jack, but a lot of that last stuff was gibberish to me. Besides, I look at those character definition bytes of yours and it looks like some characters are more than one thing. You know I can't tolerate ambiguity! How do I figure out which definition to use? You haven't helped me much."

"I'm going to provide a grammar for you too," answered Jack. "Anyway, you should be able to figure out a lot of the ambiguities yourself... especially if you're as smart as you tell me you are. Just remember that blanks separate every word I will say."

"Sometimes your words are pretty blank, too!"

"Very funny," said Jack, a bit peeved at his joking computerized bookkeeper. "But if I say '2,' you know that's the digit 'two,' right? And if I say '22,' it isn't hard to figure that I mean the number '22.' "

"That's '16,' Jack. Remember, I work best in hexadecimal."

"Ah yes, I remember," said Jack as he began to enter subroutines to convert strings of digits and the letters A through F to hexadecimal numbers. "Now, you can convert my numbers into your favorite form. I've taken the liberty of defining the dollar sign character as the signal for you to note that I've already converted to hexadecimal for you. Sometimes I like to work in hexadecimal myself . . . although I wish that I had 16 fingers to work with."

"You could use your toes," suggested computer as it tried out its new software. "Let me see ... 128 is the digit '1' and the digit '2' and the digit '8.' It doesn't start with a dollar sign, so 1 have to convert to hex. That's 80 hex, right, Jack?"

"Very good, you overgrown calculator!"

"I don't mind the comparison. That reminds me, when are you going to give me programs to add and subtract. Multiple byte routines would be nice. My instruction set is a bit limited, you know."

"Computer, brace yourself!" Jack sat back at the terminal, and he entered routines that did 16 bit addition, subtraction, multiplication, and division.

"Gee, Jack, you really outdid yourself. Are you sure I'll need all this stuff?" asked computer, while checking that 1225/5 really was 245. "Jack," said computer after becoming satisfied with Jack's latest programs, "I could use some programs to convert my hex back to your decimal stuff. It'll help us communicate."

"Sometimes I think we communicate too much already; but you're right, it would be nice if we did all our talking in one language. I'll have those programs for you tomorrow. Then, I'll start to teach you grammar."

"Lovely, Jack, but could you leave my power on tonight? I'd like to exercise my new software some more. Don't want any bugs, you know."

Jack walked down the hall and turned off the room lights. Only computer's red panel lights could be seen, flickering slowly.

"Have a nice night of computing?" asked Jack as he ambled into the computer room next morning. "It's about time for your first lesson in my new language. We'll call it 'assembler,' because it will help you assemble programs for me."

"But Jack, I can barely understand you now! How do you expect another language to help either of us?"

"Computer, I recognize how you hate ambiguity. My new language will force me to always be precise with you. Whenever I fail to cover all possibilities, you'll be able to point out my error. How about that?"

"If you really think you're up to it, I'm all ears! My Teletype interface is itching for the touch of your fingers on my keyboard!"

"First of all, computer, we'll state that each line of assembler is going to define one machine instruction. Even though I may write a many character line in assembler language, you'll be*able to find a single instruction that does what I want."

54

"Sounds good so far," said computer. "I always was more efficient in storing stuff than you are."

"That's why I'm making you my bookkeeper. Now — you'll read my stuff from left to right. Each line can have up to five parts. I'll guarantee that there will be at least one blank between each part of a line, and there will be no blanks between elements of the same part. You probably remember the 'My Dear Aunt Sally' article in February BYTE; this is a simplification of its tokening process."

"Fine. Then I can always skip blanks, right?"

"Not quite, computer. The first character in each line is special. If it's an asterisk — remember your special symbols in the character table I gave you? — then the line is a comment of mine, and ..."

"You mean I have to take up my valuable memory with your comments?" interrupted computer indignantly.

"Now don't get warm. All you need do with my comments is print them. You don't have to remember them. That is, if your Teletype isn't too tired."

"Boy, that's a load off my mind. I've got better things to remember."

"You're certainly right there, computer of mine! But, as I was saying, if the first character of a line is an asterisk, then print it and be done with the line. If the first character is not a blank or asterisk, then I am labelling the line for some purpose. Labels are one of the parts of assembler statements that I want you to remember, since I'll likely want to refer to labels later. A label can be any combination of up to six characters, but all you need do is scan from left to right until you find a blank. If you can't find one, then you'll remind me with one of your wise guy error comments. I'll give you a program to scan lines just as soon as I finish describing the language."

"Let me see, Jack. I've got to store away these labels of yours, and I should remember where I put them. They're really just addresses, right?"

"First prize, you animated TV set! I always knew you could handle this task once I converted everything into numbers for you."

"Just as long as they're hexadecimal numbers, Jack. I need 16 bit addresses."

"Two byte addresses you shall have," said Jack as he rose from his seat 'by the keyboard. "And you can probably guess what the second part of each assembler line is, since I've already told you that each line is equivalent to a single machine instruction."

Meet the "low cost"

Bowmar TP-3120

Thermal Printer

Available off-the-shelf, the new Bowmar TP-3120 thermal printer does a lot more than many of the others for a lot less. With a speed of 1.07 lines per second, this quiet printer continues to maintain its economical advantage by using low-cost, high contrast, non-smear paper. Small in size and cost, yet big in capabilities, it's equipped with such Bowmar quality features as 12 position, dual read-out standard connector, right or left justification and ■ 5x5 matrix design. Other highlights of the new Bowmar TP-3120 include:

• 18-Column Alpha/Numeric Printout

• 29.4 Characters Per Second

• Low Power Consumption

• MOS Compatible

• Immediate Delivery

So if you're looking for a better and less expensive way to meet your thermal printout needs, just send us the completed coupon and we'll send you full and detailed information on Bowmar's new "low cost" TP-3120 thermal printer by

□ Please send me full information on Bowmar TP-3120 Thermal Printer.

□ Please send me (1) Bowmar TP-3120 Thermal Printer. Enclosed is my check (or) money order in the amount of $149.00 to cover all costs.

Name

Company .

Street

City

State_

. Zip_

Mail to: Bowmar Instrument Corp.

8000 Bluffton Road; Fort Wayne, IN 46809

Bouifmar

"Look, Jack, don't insult my intelligence! I never forget, so long as you keep paying the power bill!"

"I'll bet that you're going to tell me it's one of those mnemonics you made me memorize when we talked about opcodes."

"Gee, your intuition is better than I expected from a microprocessor. The second item in each line will be a mnemonic. You already know how to handle them, remember Binary search algorithm ..."

"Look, Jack, don't insult my intelligence! I never forget, so long as you keep paying the power bill!"

"No offense meant, old buddy. Now, you do remember the ambiguities we found in using the mnemonics. So, the third part of each assembler line will be called the operand field. There may be several operands or perhaps none, depending on the particular instruction format you're working on. The operands will tell you which accumulator to use, what kind of addressing I want to use, where the data to use is, and so on. I'll write subroutines to describe the form of each instruction in your repertoire so that you can figure out my operands. Actually, there will be only a few of these routines, since many instructions share equivalent formats. I'll use blanks and commas to separate things. You can use your label scanner program to pick things apart."

"Now those mnemonics make some sense, Jack. Thanks for all the new code. I see that you expect me to tell you about your 'dumb dumbs' as usual."

"Just because you're too simple to make mistakes is no reason to get uppity! You should be able to figure out what instruction I want you to execute from the mnemonic and operands. There's another thing I want you to do for me. If I put a number sign in front of something, I want you to use that exact value in your instruction, not some address calculation or other of your weirdities. We'll call it 'immediate operand,' because I'll expect you to process it immediately, with no computation."

"I'm always eager to save myself computation, Jack. Let me see if I've got this right. I look at the mnemonic, find it in my mnemonic table by binary search, jump to the processing routine for that mnemonic type, break up the operands with the programs you've so nicely supplied, and figure out which form of the instruction to use. This gives me an opcode to satisfy you. If I

see a number sign in an operand, then I use that exact value, no matter how absurd it may appear at the time. Right?"

"Right! One last thing though. You know how much I like to document things. My memory isn't as good as yours... I sometimes forget why I did a certain thing when I look it up later. I've made the last part of an assembler line a comment field. Just type it out just as you found it and we'll get along fine."

"I'll do fine anyway, Jack. Just leave Teletype on. He could use the exercise."

Computer cast a bleary red eye toward Jack as he entered the room. "This language stuff is hard. I've been studying all night, and I'm still not sure I've got it right yet."

"OK. We'll review for a while. Suppose I tell you:

LINE1 LDA A #11 THIS IS AN ♦EXAMPLE OF AN ASSEMBLER LINE

"If I understand this right, Jack, you have a load accumulator instruction there. You want me to put the value '11' decimal (or 'B' in my hexadecimal) into accumulator A. You also want me to remember the address of this instruction with the label name LINE1. It will take two bytes of memory to store the instruction; one for the store instruction into accumulator A with immediate addressing, and a second for the value of the operand."

"Very good, computer. Now try this one."

LINE2 CLRB ANOTHER EXAMPLE

"Your labels aren't particularly inspired, Jack. That's a clear accumulator B instruction. One byte, with a new label. So far, your assembler programs don't do much for all my time in learning your language."

"I leave you alone enough each night, now you do what I want. This is my test, not yours."

INCB

"OK, so I increment accumulator B. Big deal!"

ERROR CRL

*THIS IS NOT A VALID INSTRUCTION

56

"You aren't kidding there, Jack. That's an invalid mnemonic, or maybe you meant to have some operands? Did you really mean 'CLR' instead? I could try to correct your mistake."

"That won't be necessary; just flagging the error you find first is quite enough. I do the thinking in this association, remember that!"

BGT LINE 2

"Let me see about this, Jack. It's a branch on the condition that the last calculation was greater than zero. Branches always use relative addressing, so I've got to figure out how many bytes I have to branch. I remember your label 'LINE2' in my memory; it was the instruction to clear my B accumulator. Now what?"

"I'll help you. The instruction at LINE2 was how long?"

"One byte."

"What came next?"

"An increment accumulator instruction ... another byte."

"And next?"

"A bad instruction that I couldn't understand, so I didn't generate any code for it. Is that all right with you?"

"Fine. If I make a mistake, you just tell me about it and go on. It's my responsibility to use good assembly grammar. Now, the

next instruction is the conditional branch you're working on now, right? How long is a branch?"

"Two bytes. I still don't see what you're getting at, Jack."

"Well, if you back up two bytes you're at the end of the increment code. Another byte back is the beginning of the increment. Another byte back is the beginning of the clear. This is the point I labelled LINE2."

"I get it, Jack! I just count up the number of instruction bytes I have generated. You're simply asking me to do some simple counting for you, you lazy person. I want to branch backwards four bytes, which gives me a relative branch of minus four, or FC in hex. That's easy .. . even a human could do it. But, Jack, what do I do if you ask me to branch farther than 128 bytes? I can't count higher than that in a signed byte."

"Just flag it as an error and go on." "Then it looks like I've got it figured! Test again, my brainy boss."

LINE3 JMP LINE4

*LET'S SEE WHAT IT DOES WITH THIS

"Label is LINE3, it's a jump instruction, and you want me to transfer to an address symbolized by LINE4." The computer sat

Stamp Out Cybercrud

COMPUTER

Have you every been victimized by one of a myriad computer based interpersonal putdowns? In Ted Nelson's book, Computer Lib/Dream Machines, you'll find an excellent essay on the nature of this "cybercrud."

Have you ever wondered where to go for a basic starting point in your quest for information about computer applications and uses? Ted Nelson's book. Computer Lib/Dream Machines, is the place for you to begin.

Computer Lib/Dream Machines is for the layman — the person who is intelligent and inquisitive about computers. It is written and self published by a philosopher who is also a self confessed computer fan and an excellent teacher of basic concepts. (For those who have not yet heard, ivory towers are constructed out of real and substantial white bricks.) The most important aspect of this book

is its inspirational data content. The machines we're all busy working on are deep personal expressions, and not the cold and inhuman monsters of the traditional stereotype. The book defines many of the terms and explains many of the techniques which can be used in the personal computer systems we're all busy constructing and programming. It performs this sen/ice in a way which adds color and excitement to this newest of art forms, the computer application.

Computer Lib/Dream Machines is must reading for the beginner, and is also a refreshing self examination for the old hand at programming and systems work.

You can order your copy of Computer Lib/Dream Machines from BYTE's Books for $7. Send your order today to BYTE's Books, 70 Main St, Peterborough NH 03458. Help stamp out cybercrud.

Please add 50 cents for postage and handling. Please allow six weeks for delivery. Send copies of Computer Lib/Dream Machines to:

Name

KITE

PETERBOROUGH, NH 03458

Address

City

State

Zip

ii Check enclosed

iJRill MC#

Fvp riatp

LJ Rill RA ii

Fvp Datp

Signature

57

"I'm going to ask you to read my programs twice before you run them." said Jack. "But Jack, your programs usually aren't worth reading once!" replied computer testily.

for a time, its lights flickering wildly. "TILT!!!! I can't do that, Jack! Your label isn't in my memory, and I never forget. I'm just going to have to skip this instruction."

"Oops! Sorry, old buddy, but I'm going to have to ask you to handle stuff like that. I will want to be able to branch and jump around a program in any direction. I guess I'll have to make more use of your memory and patience. I'm going to ask you to read my programs twice before you run them."

"Jack, your programs usually aren't worth reading once! Besides, how can that help? If I can't figure it out once, then I can't figure it out twice! We computers are like that, you know . . . consistent!"

"Ah, but computer, you miss my point. You'll be doing different things in your two passes through the program. Your problem is that you may not see a label until after I want to use it as an address. So... in pass one, you'll just look for labels. You'll locate every label in the program and compute its proper address in pass one. You'll need to decode each instruction in pass one to decide how many bytes it will take, but you'll generate no code until pass two. You can also call out most of the errors as you read pass one; then, I won't waste your time with pass two until I've corrected all the pass one errors. By the time you begin pass two, there should be no ambiguities left to trouble you. You can just go through and generate code without problems."

"I've still got a big problem, Jack. My memory is big, but you like to write all those comments and mnemonics and stuff in your programs. If I've got to remember it all, then I've got to have help. Lots of help! You aren't particularly efficient in this new assembler language."

"Computer, remember that article I wrote for BYTE a while back? The one about using a cassette tape recorder to store data and other digital stuff? How about using a recorder to ease your memory burden?"

"You're a real friend, Jack. I can keep all but one line of your stuff on tape. You'll give me programming to read from tape. Then I can read each line as I come to it, process it, and go ahead. I'll still need space for a table of labels, and tape buffers, but that won't be nearly as much trouble. I am a pretty good sized machine, after all."

"I soldered every one of your connections." There was a certain weariness in Jack's voice. "I'll give you all the programs you can use, and then some! You'll be running two tape recorders, you lucky machine! You'll read in my stuff from cassette drive one in two passes. I'll do the rewinding

for you; you just tell me when you want the tape rewound. In pass two, you'll put your generated code out to cassette drive two. Just be careful not to write over my tapes of Irish folk songs."

"That I'll do, Jack, just as long as you keep your bagpipe music tapes off my input. Though they'd probably make interesting programs, I'd like to be on the safe side."

"If you want to be safe, then forget the wisecracks and restrict your comments to assembler language." Jack rose and walked to the kitchen to begin dinner. The power supply pilot light watched him turn the hall corner. Silently, the cassettes began to move.

"I've been assembling everything on your tape library," said computer as Jack returned to the shop. "This assembler language isn't half bad."

"OK, sharp stuff. Let's see you try this." Jack placed a cassette into recorder one. "There's about 200 lines of assembler code on this tape, exercising all your instructions. I want to see how fast you can get through it. Ready...? GO!"

The cassette in drive one turned as computer read in the first record. Jack started his stopwatch. A short time later, computer read record two. Time passed, and the time between reads grew and grew. Many minutes later, Jack began pacing the floor. Still later, he went out to make some coffee; his ears were straining to hear the clatter of the Teletype that would indicate the end of pass one. At last, Jack could wait no longer. He strode back to the computer and pressed the interrupt button.

"But, Jack, I was almost done! Just a few more labels to find and I'd have finished it. What's your rush, anyway? I never saw so many labels before! I barely had enough memory for all that alphanumeric

gobbledygook!"

"Computer, your label searching method is abysmal! I could read an entire issue of BYTE in the time you waste hunting around in your symbol table. What can we do about it?"

"Sorry, Jack, but I'm searching as fast as I can. I have to look entry by entry, so when the table fills I have a lot of looking to do. I can't use your binary search stuff here, since I don't have the symbol table ordered. Now, if you could guarantee that your labels would appear in alphabetic order, then ..."

"No such luck, old buddy. That's a task you'll have to perform."

"Jack, do you have any idea how long it would take me to insert new labels if I had

58

to resort the whole list every time? You think I'm slow now!"

"Don't blow your fuses! I don't intend for you to spend your life sorting symbol tables. I've just read about this new technique, and it sounds perfect for you. It's called 'hash coding.' "

"If you had designed it, they'd probably call it the 'Irish stew' algorithm. Besides, you make enough of a hash of my programs already."

"Hold on, you animated son of a sand pile! This is serious business. Will you just listen for a while?"

"Why the slur on my silicate origins, Jack? I reserve the right to protest, but I'll hear you out."

"Now ... the basis of hash coding is to generate a random number based upon each label."

"Jack, please! I am a computer, remember! The only times I produce random output is when I'm broken. You're the one who sometimes behaves randomly!"

"I really don't expect you to be random. I really mean 'pseudorandom.' I'll write an algorithm which takes the characters of a label and makes them into a number that

"I've just read about this new technique, and it sounds perfect for you. It's called 'hash coding.' " said Jack enlightenedly. "If you designed it, they'd probably call it the 'Irish stew' algorithm," replied computer rebelliously.

will be an address that could be anywhere in your symbol table space. It has a uniform probability of forming any address. Each label will have a unique place, and you'll be able to find it by hashing its name, instead of searching the whole table. The process only looks random. Actually, it's a fairly simple mapping from label to address in symbol table. Do you follow me, computer?"

"Yes, but I see problems ahead. You can generate lots of labels, millions in fact. You can't expect me to have space for each one."

"No, you'll have a limited symbol table space. We'll let it be as big as the memory left over after your assembler translating programs have been loaded."

"But, Jack... if that's true, then you'll have to let many different labels hash, as

MODEL CC-7 SPECIFICATIONS:

A. Recording Mode: Tape saturation binary. This is not an FSK or Home type recorder. No voice capability. No Modem. (NRZ)

B. Two channels (1) Clock, (2) Data. OR, Two data channels providing four (4) tracks on the cassette. Can also be used for Bi-Phase, Manchester codes etc.

C. Inputs: Two (2). Will accept TTY, TTL or RS 232 digital.

D. Outputs: Two (2). Board changeable from RS 232 to TTY or TTL digital.

E. Runs at 2400 baud or less. Synchronous or Asynchronous. Runs at 4800 baud or less. Synchronous or Asynchronous. Runs at 3.1 "/sec. Speed regulation ± .5%

F. Compatability: Will interface any computer or terminal with a serial I/O. (Altair, Sphere, M6800, PDP8. LSI 11, IMSAI.etc.

G. Other Data: (110-220 V), (50-60 Hz); 3 Watts total; UL listed 955D; three wire line cord; on/off switch; audio, meter and light operation monitors. Remote control of motor optional. Four foot, seven conductor remoting cable provided. Uses high grade audio cassettes.

H. Warrantee: 90 days. All units tested at 300 and 2400 baud before shipment. Test cassette with 8080 software program included. This cassette was recorded and played back during quality control.

ALSO AVAILABLE: MODEL CC-7A with variable speed motor. Uses electronic speed control at 4"/sec. or less. Regulation ±.2% Runs at 4800 baud Synchronous or Asynchronous without external circuitry. Recommended for quantity users who exchange tapes. Comes with speed adjusting tape to set exact speed.

DIGITAL DATA RECORDER $149.95 FOR COMPUTER or TELETYPE USE

Any baud rate up to 4800

Uses the industry standard tape saturation method to beat all FSK systems ten to one. No modems or FSK decoders required. Loads 8K of memory in 17 seconds. This recorder, using high grade audio cassettes, enables you to back up your computer by loading and dumping programs and data fast as you go, thus enabling you to get by with less memory. Can be software controlled.

Model CC7. Model CC7A.

.$149.95 ..$169.95

MEW - 8080 I/O BOARD with ROM. Permanent Relief from "Bootstrap Chafing"

This is our new "turnkey" board. Turn on your Altair or Imsai and go (No Bootstrapping). Controls one terminal (CRT or TTY) and one or two cassettes with all programs in ROM. Enables you to turn on and just type in what you want done. Loads, Dumps, Examines, Modifies from the keyboard in Hex. Loads Octal. For the cassettes, it is a fully software controlled Load and Dump at the touch of a key. Even loads MITS Basic. Ends "Bootstrap Chafe" forever. Uses 512 bytes of ROM, one UART for the terminal and one USART for the Cassettes. Our orders are backing up on this one. No. 2SI0 (R)

Kit form $140. tested $170.00

NATIONAL multiplex

Fully assembled and

CORPORATION

Send Two Dollars for Cassette Operating

and Maintenance Manual with Schematics

and Software control data for 8080 and

6800. Includes Manual on

I/O board above. Postpaid

Master Charge & BankAmericard accepted.

On orders for Recorders and Kits please add $2.00 for Shipping & Handling. (N.J. Residents add 5% Sales Tax)

3474 Rand Avenue, Box 288 South Plainfield, New Jersey 07080 (201) 561-3600

"Yeh, and I'll put a fried egg on top! Hashing and rehashing doesn't seem at all obvious! I go running around memory chasing a plate of hash. When I find it, I have to see if the hash is done. If it isn't, I branch to a half baked program and loop until done."

you call it, into the same symbol table address. I can't tolerate that."

"Never fear! You'll know whether an address in the table is occupied or not. If it isn't, then the first label to hash to it will occupy it. If another label hashes to that occupied address, then you'll rehash the label to get a new address. Sooner or later you'll find an empty symbol table address to put that label in. The only time you'll need to search the whole table is if it is entirely full... an unlikely occurrence. Remind me later to write you a rehash program. I've got a linear rehash algorithm in a book around here somewhere. At any rate, you can find your label in fewer hashes than you'd need searches. You store the whole label in the symbol table, so you can check the label you just hashed against the label you found at the hash address. You can use the compare routine I gave you for checking mnemonics. That way you'll be able to tell when you need to rehash. It really isn't very hard."

"Yeh, and I'll put a fried egg on top! This doesn't seem at all obvious! I go running around memory chasing a plate of hash. When I find it, I have to see if the hash is done. If it isn't, I branch to a half baked program and loop until done."

"Enough of that, computer. When you have the code, you'll find it rather a thrill to assemble programs in minutes instead of hours. I'll leave that long program in the reader. Try it again this evening. You'll like it!"

"That's not very funny!" mumbled computer as Jack walked toward the kitchen. "I'll bet he's not cooking hash tonight!"

"Bring on the big programs ... Give me enough core and I'll assemble the Earth!"

"You know, Jack, you're pretty smart for a human. That hash coding trick really works! I finally got it figured out, I think. Let me tell you how I do it."

"After a compliment like that, how could I refuse you?"

"Well, suppose I have to keep track of three character names, for instance. You tell me that I'll only need to store a maximum of 26 names, not the thousands that could be formed. I must invent a transformation that converts three character names into

numbers in the range one to 26. For simplicity, I choose to take the first letter of the name as my first hash. Subsequent rehashes, if necessary, will use the second and third character. So, if you give me the names MEL, MOE, and MOA, I perform as follows: All three names hash first to address 14. I put MEL into that slot, since it is processed first. When I hash MOE, I find that its hash address of 14 is already occupied. I rehash MOE based on the second character and place it into slot 16. Similarly, I will rehash MOA twice and eventually put it into slot 1."

"Computer, you've got the right instincts, but your hashing algorithm isn't the best one to use. We humans have a tendency to use similar names, often a series of similarly spelled names. Remember my example... LINE1, LINE2, etc.? Your system would take too many hashes to work with names like those. You ought to use a hash that uses all of the characters in the name each time. Then it will appear more random, and will be less likely to hash similar names to the same address. If you read cassette one, you'll find such an algorithm. It's not very simple to describe, but you'll find it quite efficient to use."

The room was silent, except for an occasional sound from the tape drives. Computer's lights blinked furiously for several minutes and then suddenly stopped. "OK, Jack, I've got it all memorized. Shall we try your test assembly again?"

"Right away, old buddy. Your tapes all set? Fine ... on your mark, get set, GO!"

A scant moment later, computer's Teletype began typing its message at the end of pass one. Jack rewound the input tape and started pass two. "NO ERRORS" chortled the computer. "I'll bet that was fast enough even for you!"

"It's a new world's record for Motorola assemblers! Take a rest, hero! You sound a bit winded."

"No, Jack, just excited by all this speed. You can get me more memory now ... I'm ready for it. Bring on the big programs . . . give me enough core and I'll assemble the Earth!"

"If I let you go on like this, you'll be giving out Tarzan yells and probably pop all your fuses. Good night, computer."

"Good night, Jack" said computer, its voice trailing off as Jack flipped the power switch. The gleaming red eyes dimmed.

"Don't get too upset, computer, but I've got more for you to learn."

60

"Computers don't have hearts, remember that. Don't confuse your clock with a pulse."

"That's a good point. For now, let's just print the representation of the first character and I'll trust you to get the rest of the character string correctly."

"I am heartened by your trust."

"Computers don't have hearts, remember that. Don't confuse your clock with a pulse."

"I'm duly chastised. Now let me guess your next request. You want to be able to name your programs. You always did like naming things."

"That wasn't my next thought, but it's a good idea. Let's say that a NAM pseudo operation can assign a name to a program, and you'll label the listing with this name."

"That was an easy one, Jack. Give me another simple one."

"OK. How about a pseudo operation to skip to the top of the next page of the listing?"

"No sooner said than done. Call it PAG?"

"Fine. Now another easy one. I don't always need a complete assembly. Sometimes I would rather you skip the listing, or the output object file, or pass two. I'll tell you what steps I want done in a pseudo operation called OPT. If I don't specifically specify an option, you'll assume I want it. Understand?"

"I think so, Jack. Unless you tell me otherwise in an OPT command, I give you the works."

"Fine. Just one more pseudo operation and we'll have it. I will want to be able to define constants in terms of other values. This is like the form constant operations, but the resulting value won't be in memory. You'll just keep the value in your symbol table ... on hand when I ask for it. Whenever you see the symbol, you'll insert the value I've defined it to have."

"Your wish is my command! I will reserve the right to flag you if haven't defined all your symbols when I need them in pass two."

"I wouldn't have it any other way. We can call this operation EQU, because it works like an "equals" sign. The operand may contain arithmetic and maybe other symbols and constants that will have defined values in pass two. The final result is the value of the pseudo operation. You'll store the value in your symbol table as though it were an address... as two bytes. If the

value works out to a single byte, then zero out the high order byte."

"Fine, fine, Jack, now Jet me go back to running through my hash tables. I just love to run through a field of operation codes. It makes me feel warm all over."

"If you feel warm, I'd better check things out."

"No, Jack. Don't turn off the power! Please! NOOOooo ..."

Note: Readers interested in using the Assembler Jack Built should contact Jack Hemenway at 151 Tremont St, Boston MA 02111.

"You know, computer," said Jack as he strode into the shop from the kitchen, "the gang at the computer club was very interested in the assembly language that you and I have worked out. They'd like me to sell copies of it. How do you like that?"

"I like it fine, so long as you copy the listings yourself and don't expect me to type them out hour after hour. Your wife will appreciate our making some money, especially after all you've invested in me. And . .. then, maybe you'll bring me to a club meeting. I don't encounter much variety here on your desk."

"You're a little hard to travel with, you know. You aren't exactly a neat, tidy package."

"And whose fault is that, Jack? I didn't build myself."

"OK, OK... I'll tal<;e you out soon. Meanwhile, you've got to help me solve a slight problem. Most people who have small computers at home don't install much over four to eight kilobytes."

"So what's the problem? My assembler programs fit easily into 8 K."

"I know that, computer, but the problem is where the slice of memory is located in address space. If I'm going to sell our program, we've got to make it possible to load it into any sufficiently large memory slice. In a word, we've got to make our assembler relocatable. At the same time, we can make the output of the assembly process relocatable too. This will allow the assembled code to be loaded anywhere in memory. This will be a big help to people building up large programs from smaller segments. They can assemble a program one piece at a time."

"So, I still don't see much problem. You, Jack, will just have to write a loader program that puts my assembler into the right place in memory. I'll do the rest. That loader should also work with my output code."

"It is nearly that easy. I would like you to do one other thing, though."

"I knew there would be a kicker to it! So what do you want now?"

62

"You never quit, do you Jack? OK, what is it this time?"

"I'm going to teach you some new operations that I'd like to have."

"Hold it, buddy. I've already got all the operations I can use. Besides, operations are part of my hardware, and I like my internal arrangements the way they are! No new operations, Jack!"

"I'm not about to touch your little body, so don't worry. I plan to implement these new operations in your assembly language translation programs. They'll actually be 'pseudo operations.' They'll be added to your mnemonic table, and they'll help us communicate. For instance, you need to know where the end of a program is, right? How else can you know when to start pass two?"

"That's pretty obvious, Jack. So you're going to define some operation that really means 'stop pass one and start pass two.' Probably call it END."

"Well, that's one pseudo operation done. Now ... I often want to set aside areas of memory for certain purposes. I'll be storing stuff into those areas sometime during a program; but right now, I just want to tell you that space is to be reserved. I want you to recognize the pseudo operation RMB as a note to reserve the number of bytes that appear in the operand."

"I assume you're going to provide subroutines for all this, Jack."

"Of course, computerized bookkeeper. Where was I? Oh, yes, I'll want to be able to form constants in memory. Let's let FCB indicate the formation of a byte of data initialized to the value of the operand. Similarly, FDB will indicate a double byte of data to be initialized to the value of the operand. These pseudo operations will have labels, so that I can refer to the value I've had you form in these locations."

"They're like immediate operands, right?"

"Right, computer. You'll perform all the steps necessary to evaluate the operand field, and that is the immediate value to store in that location. I also want a pseudo operation to form character strings in ASCII code. We'll call it FCC. It works like the other form constant operations, except that the operand will be enclosed in single quotation marks and will be converted into its ASCII representation in memory."

"One problem with that, Jack. I don't have room to print out long character strings in the assembly listing. Do you want me to use extra lines, or will that be too confusing?"

wra -TECH

Info-Tech Model 66c Terminal

A commercial Quality, self contained Video Terminal for the Experimenter & Light Industrial user Specifications: Keyboard: 53 Key ASR33 Format generates

102 ASCII characters

2 Key Rollover

Made by "Cherry" Video Display 32 characters x 16 lines (model 66c)

64 character x 16 lines (model 66d)

5x7 Dot Matrix

64 Character Repertoire

Scrolling

I/O Data

Serial ASCII RS232c levels 1 start bit, 8 data bits, 2 stop bits Data Rate: Factory adjustable to either 110 or 300 Baud Enclosure 14" wide x 12" deep x 3%" high. HD Aluminum Weight 4 lbs. — 7 lbs. shipping

Warranty Six Months Warranty On Parts And

Workmanship Price Model 66c (32 x 16) $400.00

Model 66d (64 x 16) $475.00

All prices F.O.B. St. Louis wired and

tested. Commercial Quality Video Monitors (9" & 15") are available as an accessory — price & specification upon request.

All prices and specifications subject to change without notice.

INFO-Tech, Inc.

20 Worthington Drive, St. Louis, Missouri

63043, (314) 576-5489

61

Give Us a 4

A Discriminating Inspection of Our 80B0H

Processor Technology Off:

Focus on Our Fine Memory.

Battery-standby power connector

built onto the card. Our low-power

RAM's will retain data when powered

by two MD" flashlight cells. Thus;>

memory storage can be protected

against power failure.

Exclusive KSET™ switch lets you set the starting address of your 8KRA to any 1K boundary such asatO, 1, 2, 3K.. .

Low-power static RAM's typically

require one-third less power than

those used by our competitors.

Ours are manufactured to milifar

specification MIL STD-883C to

insure reliability.

iiiililllllllllllliliTirilllll

'Tffffff

Iill.,

You know best what the addition of 8192 bytes of memory in a single slot will mean to your own 8080 system. So, we've pinpointed those extra features that distinguish our 8KRA Static Memory from others now on the market. We feel they are noteworthy differences. Once you've made your own comparisons, you'll think so, too.

Extensive use of low-power Schottky and Schmitt hysteresis technologies provide maximum noise immunity

A premium grade, low- profile socket for every IC (76 of them) to facilitate assembly and repair.

Kit Prices: 8KRA Static Memory Module $295

(8192-words; all sockets included)

4KRA Static Memory Module $154

(4096-words; all sockets included) 4KRA (without sockets) $139

"Well, computer, as you can probably recognize, some addresses in a program can be relocated and others can't. If an address is defined relative only to the start of the program, then it can be relocated with the rest of the program. If it is defined absolutely, like by equating a label to a hex constant, then it isn't relocatable. Some computations involving addresses will give relocatable results, others won't. I want you to label all relocatable addresses when you print a listing. There's enough space in the listing format for a letter R after the operand field of each instruction containing a relocatable address."

"I have some questions, Jack. First, I have an addressing mode which requires addresses to be in the first 256 bytes of memory. How do I know when to use this mode? Second, how do I figure out whether the result of a computation is relocatable?"

"We'll make the following rules. If the address of the operand is relocatable, then use extended addressing mode rather than direct mode, regardless of the relative address of the operand. In other words, if the program writer wants you to use direct addressing, he's going to have to specifically ask for it. As another general rule, a computation will be relocatable if it contains an odd number of relocatable terms. A computation with a single relocatable term and constants is clearly still relocatable. The difference between two relocatable terms is not relocatable. One relocatable term divided by another is not relocatable. There are cases where this simple algorithm gives rather meaningless results, but works properly in most useful applications I can think of. Again, we'll let the programmer force the issue if he wants to do so."

"As you like. That does it, Jack? Assembler is finished? I can get some sleep now?"

"Sure, computer. I've got some desk work to do before we start selling the assembler. Unfortunately, you can't help me do this work. I've got to write documentation on the program, flow charts and instruction manuals. Yech! The thought of writing all that stuff is disgusting."

"Why don't you have one of your friends from the computer club do a write-up for BYTE?"

"That's a good idea. I'll get on it."

Jack shifted his chair and began to sketch flow charts of the assembler routines. Computer settled down to read about a new BASIC interpreter it had found in the program library. Jack was so busy, he left the power on for days."

IMSAI

announces

a unique

4KRAM

board

for just

$139.

Nobody has a 4K RAM board that gives you so much for your money. It's fully compatible with the Altair 8800.

Through the front panel or under software control, you can write protect or unprotect any IK group of RAM's. Also under software control you can check the status of any 4K RAM board in IK blocks to determine whether it's protected or not. The board has LED's that clearly show you the memory protect status of eaqh IK block and which block is active. And there's a circuit provided that will let you prevent the loss of data in the memory if there's a power failure. This low power board has a guaranteed 450 ns cycle timeno wait cycle required. There's nothing like the IMSAI 4K RAM board around.

Dealer inquiries invited.

M

IMS Associates, Inc.

r.

IMS Associates, Inc. Dept B-8 1922 Republic Ave. San Leandro, CA 94577 (415) 483-2093

Order Your IMSAI 4K RAM Board For Only $139. Use BankAmericard, Master Charge, personal check or money order.

~l

□ Send .

□ Charge to my credit card D BAC No .

□ MCNo_

. 4K RAM boards today

Signature

Name.

Address

Citv/Statf//ip_

l_

^J

63

Compatible Products Should Convince you. fers Something Different.

TheTnith About Our Software

We admit it. Our software offers are a come-on. They're great deals. And it's all because we want you to get to Know us, along with our growing line of products designed for the computer enthusiast.

Doth these software packages use the memory capacity of our 8KRA module very nicely. We're practically giving the software away at these prices. And we're happy to do so, even if it's just to make friends. You don't have to buy a thing from us to take advantage of our software - but we bet it won't be long before you'll want our hardware, too.

Software4!

We call this package our Resident Assembler/Editor/Monitor. It's a cumbersome name, but that's because it has so many functions. For starters, it enables you to:

(1) label points in the source code,

(2) write and edit programs, using line numbers as in BASIC,

(0) perform relative arithmetic with iabels,

(4) equate values to labels,

(5) have your own powerful Resident Assembler right on the memory bus,

(6) add a custom command of your own design,

(7) and, now you con afford a source listing!

Source Listing: $5.00 Punched Paper Tape: $9.50

Write Us Now,

for our free brochure of 8080-compatible plug-in modules, and for the dealer nearest you.

Software^

Originally, we started working on a standard 4K version of BASIC. However, we finally ended up expanding our package to 5K as we realized its greater potential. Just a few of the unusual things our 5K BASIC can do:

(1) Multiple Programs: Keep two or more programs in memory at the same time —and switch back and forth between them.

(2) Formatted Output: Financial printouts line up the decimal points, and dollars and cents, directly over each other.

(3) Machine Language Interface: Easily pass parameters to and from assembly language routines using "CALL" statements.

Take a look at our source listing. You'll see how our software people have handled data in some unusual, nifty ways. Source Listing: $5.00 Punched Paper Tape: $9.50

Technology

6200-SHollis Streetw* Emeryville, CA 94606

Build a TV Readout Device for Your Microprocessor

Dr Robert Suding

Research Director, The Digital Group Inc

PO Box 6528

Denver CO 80206

A television set readout for your microprocessor has many attractive advantages. The TV readout is vastly faster, quieter, and even lighter, than the usual Teletype based design. Since it is an electronic rather than mechanical device, less service and maintenance are required. Much more data may be contained on a television screen than on front panel readouts.

The precise design of the television driving circuitry (interface) can take on a considerable number of forms. Some considerations are:

• Number of horizontal characters.

• Number of vertical characters.

• Upper case only, or upper and lower case text.

• Character generation format:

row or column scan.

5x7 dot matrix, 7x9 dot matrix

or?

• Alphanumeric only, or alphanumeric and graphic formats?

• Converted home TV set or commercial TV monitor?

• Separate TV buffer memory or TV buffer shared with main memory?

• Shift registers for memory, or programmable RAM?

• Multiple video pages or single display?

• Interlaced scan or non interlaced?

• Hardware or software cursor, or no cursor?

Rather extensive list, isn't it? Understandably, a large number of designs have appeared recently, and many more will be seen. Every design has some advantages, some disadvantages.

The 5x7 dot television display circuit in

the June 1976 BYTE [page 16] is an example of a number of the above design alternatives. The 5x7 dot 2513 is a rugged, low cost character generator. The MM5320 is a fairly easy way to generate an interlaced signal. Programmable random access memory provides a random and faster screen update capability compared to the shift register "TV typewriters" of a few years ago.

Major Features

The television display design shown in this article has several major departures from previously published designs. The June 1976 BYTE article on "A Systems Approach to a Personal Microprocessor" [page 32] stresses the need to keep various system elements independent in order to avoid unnecessary obsolescence. By using a simple parallel interface and making refresh memory part of the design, this television display achieves independence from a particular computer and bus design. This same display is also useful in such items as terminals, TV typewriters, and large computers.

A Motorola MCM6571L character generator is used as the heart of the Digital Group as well as several other video display systems. This character generator provides a 7x9 dot matrix character with automatic character shift for lower case characters such as g,j,y, etc, which extend below the base line, making an effective 7x13 dot matrix.

Thirty-two characters per line by 16 lines give a total of 512 characters on the screen. Endless arguments can result when screen formats arise. The 32x16 format was chosen to achieve the clearest and simplest (hence lowest cost) system. The more characters per line, the more television bandwidth is required. This system requires a TV monitor with better than 6 MHz bandwidth. A system with 64 characters per line would require a 12 MHz monitor, etc. Since the system was designed to minimize costs, a

66

Figure 1: Memory and write address counter logic for the TV readout design. The inputs to this circuit are at the left, labelled DO to D7corresponding to the data lines of a typical latched output data port. The connections to figure 2 include DO and D7, memory outputs CO to C6, and video timing chain address lines AO to A8.

+5 POWER SUPPLY PINS

Number

Type

+5V

GND

IC1

2102

10

9

IC2

2102

10

9

IC3

2102

10

9

IC4

2102

10

9

IC5

2102

10

9

IC6

2102

10

9

IC7

2102

10

9

IC8

74157

16

8

IC9

74193

16

8

IC10

74193

16

8

IC11

7404

14

7

IC12

74193

16

8

IC13

7400

14

7

IC14

7400

14

7

IC15

74157

16

8

IC16

74193

16

8

IC17

74193

H6

8

IC18

7410

14

7

IC19

7404

14

7

IC20

7420

14

7

IC21

74193

16

8

IC22

7430

14

7

IC23

74123

16

8

IC24

74193

16

8

IC25

7430

14

7

IC26

7401

14

7

IC27

74L00

14

7

IC28

74157

16

8

IC29

74193

16

8

IC30

MCM6571L

2

13

IC31

74165

16

8

IC32

74193

16

8

67

Figure 2: Character generation, composite video output and video timing chain logic for the TV readout design. The output of the TV readout is the composite video signal which drives a monitor or modified standard television set through a coaxial cable. The character generation logic consists of a read only memory, IC30, to translate character patterns into horizontal rows of dots, and the shift register, IC31, which sequences the bit by bit output of the row of dots. The video timing chain is a series of counters driven by the 5.990 MHz crystal, which cycles through the memory section of figure 1 and controls operation of the display.

A Note About Construction

The circuit shown in figures 1 and 2 is complete, and can be constructed in any well equipped home hardware laboratory using point to point soldering, home brew printed circuits. Vector wiring pencils, or wire wrap as an interconnection technique.

For those who wish to take advantage of construction using a circuit board and a complete set of electronic parts, Dr Suding'sTV readout and the cassette interface described in his article on page 46 of July BYTE are available in a combined kit form for $130, postpaid in the USA. Contact the Digital Group Inc, PO Box 6528, Denver CO 80206, for information on this product.

For home brewers, the only part which might be difficult to find in surplus markets is the Motorola MCM6517L character generator chip. This package is available over the counter at many major electronics trade distributors. If you are unable to locate the MCM6517L from such a source, the part can be purchased for $20 postpaid in the USA from the Digital Group.

POWER CONDITIONING

5V

+ I2V A

luF ftl

Zl

5V

ZENER

01

DWN LOAD CLR

lp IC32 s

74193

LOAD CLR DWN |C|7

UP 74193

0A 08 0C 0D

LOAD CLR

DWN |(;2|

74I93

IC24 74 193

DWN LOAD CLR

ICIO up 74193

0A QB OC 0D

LOAD CLR

DWN |C|2

74 193

68

home black and white television set can be easily modified [page 20, October 1975 BYTE] and will satisfactorily meet the 6 MHz requirement. Sixteen rows of characters allow use of a non-interlaced sync system for lower cost. My own preferred TV display formats are either a 32 x 16 character system or the 80 x 24 character format. However, the 80 horizontal characters will require an expensive monitor to achieve the 15 MHz TV bandwidth and critical corner focus requirements.

The character memory can be of several formats, but this system uses a self contained programmable memory buffer which is loaded sequentially from the driving 8 bit output port of the microprocessor, or an ASCII keyboard. Some systems permit data readback from the TV readout system, but a greater cost is involved, and a mirror image buffer in the computer's programmable memory will produce the same result. Use of programmable random access memory in the TV readout permits very fast loadings, as fast as the system can output data. The typical update time for a total of 512 characters is under 5 ms. How far under 5 ms depends on the driving software and microprocessor used.

Cursors and cursor control may be performed in hardware or software. The approach of this system is to use software for the most part, which results in lower cost hardware. Cursor inserting subroutines are then used as needed.

So much for system design alternatives.

TV Readout Description

This TV readout consists of five interacting sections. They are memory, character generation, composite video output, video timing chain, and write address counter. The memory section (figure 1) consists of seven 2102A-2 or faster 1 K memories. Only one half of each memory is used, giving a possible storage of 512 seven bit ASCII characters. The microprocessor, keyboard, or some attached circuit writes the characters one by one into the 2102s, and then the TV readout continuously displays these characters until either more characters are entered, or the circuit is turned off.

The character generation circuit (see figure 2) consists of two integrated circuits, the MCM6571L character generator, IC30, and the 74165 shift register used to convert from parallel to serial. The 6571 takes the seven bit ASCII character coming from the memories and outputs 7 dots making up a character row for each of 13 potential rows making up each character. The 74165 loads

all 7 dots into its internal memory, and then outputs these dots one at a time for serial transmission to a TV set. For more information on TV character generators, I would suggest reading an excellent article by Don Lancaster in June 1974 Radio Electronics [pages 48-52], or the June 1976 BYTE magazine article by C W Gantt [page 16].

The video output section uses a 7401 open collector NAND gate and a driver transistor to produce a low impedance composite video signal. The output is around 3 V peak to peak with about a 1/2 V horizontal and vertical sync and blanking pedestal.

The read clock (see figure 2) is the source of master control for the various sections. Starting from an initial frequency of 5.990 MHz, a countdown chain of three 74193s (ICs32, 17, and 21) produce an 8 ms horizontal sync when gated by IC11a, IC20a, IC18b, IC13c and IC13d. A 41ms horizontal blanking circuit prevents loss of characters at the edges of the screen, and is produced by the gating action of IC14, IC11c, ICIIf and IC13a. The resultant horizontal frequency is 15,598 Hz, somewhat lower than the standard 15,750 Hz, but usually only requires trimming horizontal hold slightly, if at all.

The vertical countdown chain uses three more 74193s (ICs24, 10 and 12) to obtain a final vertical frequency of 60 Hz, the same frequency as the AC line to avoid hum roll and wobble problems on low cost televisions. IC19b, IC19c, IC19d and IC25 produce an 820 jus vertical sync pulse, IC18a and IC19e detect state 20 of IC10 and IC12, counting lines 0 to 19 and giving four line periods for vertical retrace. The inverter IC19f produces a 3.5 ms vertical blanking

Photo 1: A test demonstration of Dr Suding's TV readout, shown in schematic form as figures 1 and 2. The test pattern consists of the four lines in the center which cycle through the possible binary combinations of characters. The differences in line width between the top line and the other lines are caused by non-linearities in the monitor used for this photograph.

69

pulse during states 16 to 19 of the counter ICIOand IC12.

As if these operations weren't enough, part of the video timing chain, counter IC24, tells which of the 13 lines in a character is being currently accessed. The counter IC32 keeps track of shifting and loads the 74165 when the row of 7 dots is available from the 6571. The 5.990 MHz signal then shifts out 8 dot periods (the 8th one is a horizontal space between characters) before the next dot load command occurs. All of these

timings are very critical during the design phase; but since the circuit is digital, the builder should have no problems, since no adjustments are needed. The video timing chain counters develop a 9 bit address that controls which of 512 characters is currently being presented to the 6571 for dot encoding. This is routed to memory through 74157 multiplexors IC15, IC28 and IC8 except during write clock time.

I thought you'd never ask about the write clock. Well, it controls the entry of the

Figure 3:

Check Out Notes

The TV readout should be assembled according to your preferences (see "A Note About Construction") using sockets for all integrated circuits. These notes suggest a procedure for orderly testing of the new TV readout.

1. Power supply. Start checkout after all wiring has been completed, but before any integrated circuits have been inserted into sockets. Measure the resistance between ground and the other voltage supply pins. A very low resistance indicates a bad bypass capacitor, a solder bridge, or some other forn of short circuit between the supply voltage and ground.

2. TTL integrated circuits. Insert all the integrated circuits of the TV readout except the memories (2102s, IC1 to IC7) and the character generator (MCM6517, IC30). Measure the resistance between the ground and the +5 V supply pin, noting its value; reverse the ohmmeter leads and remeasure. A shorted reading in either direction indicates a bad integrated circuit, and nearly equal readings in both directions indicates that at least one integrated circuit has been plugged in in reverse.

3. Initial power up. Temporarily ground the most significant bit input pin (D7 in figure 1), and connect the video output to a commercial TV monitor, or a TV set which has been modified to act as a monitor. Turn on the +5 V power. You should see 32 white vertical columns on the screen. (Refer to the "Diagnosis of Ailing Readouts", section 2, if this does not happen.) Turn off +5 V power.

Connect up the +12V and -12 V power supplies, then turn on all power again. Verify the proper voltages on the MCM6517L socket, IC30: Pin 1 should have -5 V, pin 2 should have +5 V and pin 3 should have +12 V. Turn off power again.

4. Now plug in the MOS parts: The seven 2102 memory integrated circuits and the MCM6517 character generator read only memory. (The temporary ground jumper for the D7 input, and the video monitor output are still attached.) This time, when power is turned on, you should see a random display of 512 characters on the screen. The actual character at each location is determined by the chance power on initialization of each bit location, and cannot be predicted in advance.

5. Testing: Complete testing is now possible under computer control or by using a breadboard input device. If you use microprocessor control.

TO D7 STROBE INPUT

7413 SCHMITT TRIGGER PIN 7-GND PIN I4-+5V

/77

A test setup for manual verification of the display. The Schmitt trigger integrated circuit, a 7413 NAND function, has an RC feedback network to cause oscillations. This logic oscillator is used to drive the strobe input continuously, so that memory will be filled with a constant character pattern if that pattern's ASCII code is presented on input pins DO to D6.

simply wire the inputs to the TV readout to an 8 bit output port, load the software of listing 1 (if you have an 8080 or Z-80; write equivalent programs for other processors if necessary), and write some simple programs to generate known data and load that data into the display.

If it is desired to test the TV display without a microprocessor, the oscillator of figure 3 can be used to drive the input strobe pin, D7. Then temporarily tie all the other data pins to the +5 V supply through a 1 k resistor. Verification of the operation of the display can be obtained by grounding bits DO through D6 of the input (the 1 k pullup resistors protect the power supply). The following table gives the characters which should fill the screen for each case:

Pin to

Octal

Ground

Character

Code

DO

'V

376

D1

}

375

D2

{ w

373

D3

367

D4

0

357

D5

337 (underscore)

D6

?

277

70

characters from your external source into the 2102 memory bank. Several alternatives in character entry are possible, yet give the user a very capable unit, particularly when using a microprocessor, or even mini, midi, or maxi processors.

A sequential entry system is utilized. A home reset control signal (denoted "■") is de

veloped by IC22 when it detects all of the 8 input lines high ("1"). The write address counter of IC16, IC29 and IC9 is then preset so that the next character to be entered will result in its being displayed as the top leftmost character on the screen. The second character will be viewed to the right of the first,. . . until on the 33rd character a new

Table 1: Character graphics, octal codes and binary codes for the TV readout.

Char

X

t z

blank I

# $ % &

(

)

+

>

Octal

Binary*

Char

Octal

Binary*

200

10 000 000

@

201

10 000 001

A

202

10 000 010

B

203

10 000 011

c

204

10 000 100

D

205

10 000 101

E

206

10 000 110

F

207

10 000 111

G

210

10 001 000

H

211

10 001 001

I

212

10 001 010

J

213

10 001 011

K

214

10 001 100

L

215

10 001 101

M

216

10 001 110

N

217

10001 111

0

220

10 010 000

p

221

10 010 001

Q

222

10010010

R

223

10010011

s

224

10010 100

T

225

10010 101

u

226

10010 110

V

227

10010 111

w

230

10 011 000

X

231

10 011 001

Y

232

10011 010

z

233

10011 011

[

234

10 011 100

\

235

10011 101

]

236

10011 110

1—1

237

10011 111

—

240

10 100 000

1

241

10 1 00 001

a

242

10 100 010

b

243

10 100 011

c

244

10 100 100

d

245

10 100 101

e

246

1 0 100 110

f

247

10 100 111

9

250

10 101 000

h

251

10 101 001

i

252

10101 010

i

253

10 101 011

k

254

10 101 100

1

255

10 101 101

m

256

10 101 110

n

257

10 101 111

0

260

10 110000

P

261

10 110 001

q

262

10 110010

r

263

10 110011

s

264

10110 100

t

265

10 110 101

u

266

10 110 110

V

267

10110 111

w

270

10 111 000

X

271

10 111 001

V

272

10111 010

z

273

10 111 011

{ }

274

10 111 100

275

10 111 101

276

10 111 110

~

277

10 111 111

"Hor

300

11 000 000

301

11 000 001

302

11 000 010

303

11 000 011

304

11 000 100

305

11 000 101

306

11 000 110

307

11 000 111

310

11 001 000

311

11 001 001

312

11 001 010

313

11 001 011

314

11 00.1 100

315

11 001 101

316

11 001 110

317

11 001 111

320

11 010 000

321

11 010 001

322

11 010010

323

11 010 011

324

11 010 100

325

11 010 101

326

11 010 110

327

11 010 111

330

11 011 000

331

11 011 001

332

11 011 010

333

11 011 011

334

11 011 100

335

11 011 101

336

11 011 110

337

11 011 111

340

11 100 000

341

11 100 001

342

11 100 010

343

11 100 011

344

11 100100

345

11 100 101

346

11 100 110

347

11 100 111

350

11 101 000

351

11 101 001

352

11 101 010

353

11 101 011

354

11 101 100

355

11 101 101

356

11 101 110

357

11 101 111

360

11 110 000

361

11 110 001

362

11 110010

363

11 110011

364

11 110 100

365

11 110101

366

11 110 110

367

11 110 111

370

11 111 000

371

11 111 001

372

11 111 010

373

11 111 011

374

11 111 100

375

11 111 101

376

11 111 110

377

11 111 111

*The low order 7 bits of the binary representation map into the ASCI I graphics where such graphics are defined. The high order bit is always a "1" value to act as a strobe in the software of TVOUT shown in listing 1.

71

Diagnosis of Ailing Readouts

1. Troubles — General

• One of the more difficult troubles to find is an IC pin which was bent under the integrated circuit when it was inserted. Any unusual pressure when inserting an integrated circuit should be investigated.

• Check continuity. Your wiring should be correct. If soldering is used, as in printed circuit assembly, check to make sure all joints are in good shape.

• When troubleshooting with an oscilloscope probe, measure from the fop side of the integrated circuit, not the bottom, to eliminate the possibility of being misled by a pin which is bent under or a defective socket.

• Before ever plugging in any integrated circuits, always measure the voltages at the terminals of the display board and at the power pins of the more expensive integrated circuits, like the MCM6571.

• When handling integrated circuits, avoid static charges. Run your house humidity high, and ground yourself by touching a grounded chassis before touching the integrated circuits.

2. When initially checking out, if no white columns appear on the screen at step 3, the following may be a cause of the problem.

• Bad connection between TV output connector pin and TV.

• Temporary jumper from input D7 pin to ground not connected.

• Crystal not oscillating. Check for pulses at pin 1 of IC27.

• Horizontal countdown chain defective. Successively measure output at pin 3 of IC32, IC17 and IC21. Each should be progressively lower in frequency.

• Vertical countdown chain defective. As above, but measure pin 3 of IC24, IC10 and IC12.

• Defective video mixer. Look for pulses at pinsl and 13 or IC26.

3. Initial checkout pattern (step 3) is poorly defined or lacking synchronization. In this case the following comments might apply.

• TV could be overloaded by the = 3 V of video. Cut the level by adding a series resistor of 10 ohms to see if sync and video stabilize.

• Check for horizontal and vertical sync and blanking pulse at connector pin 16. A 75 ohm load should be attached. The pattern should look like this:

If horizontal sync is defective, check

IC11, IC20, IC18and IC13.

If vertical sync is defective, check IC19

and IC25.

If horizontal blanking is defective, check

IC11, IC13and IC14.

If vertical blanking is defective, check

IC19.

4. No characters at step 4 of the checkout procedure. Look for:

• Missing voltages at the MCM6571 (IC30).

• Defective character generator.

• Defective 74165 (IC31).

• Defective logic signals to and from IC30 and IC31. All inputs and outputs should be pulsing at valid TTL levels (0 to 0.8 V = low; 2 to 5 V = high).

5. Wrong character(s) in display when driving from computer or manual testing of step 5 in checkout.

• Miswired or misjumpered input.

• Defective memory IC. Note the bit difference between the intended character. IC1 is the memory for the Least Significant Bit (LSB) of the character . . .and IC7 is the Most Significant Bit's (MSB) memory.

• Defective 74157(s), IC8, IC15and IC28.

6. "Twinkling" characters on TV. The source of this problem could be:

• Slow memories. 650 ns or faster 2102s must be used.

• Overheated memories. Access times increase with heat.

• Wrong pulse levels at pin 1 of 74165 (IC31). A base level of about 2.5 V with short positive and negative going spikes should be seen.

• Defective character generator, IC30.

• Incorrect timing components on 74123, IC23.

7. Won't write characters into memory of TV readout. Look for:

• Missing strobe pulse, or continuous level on D7 input.

• No write pulse from 74123. Measure at pin 12 of IC23, looking for an = 600 ns negative going pulse. Connecting the D7 input to a s 50 kHz TTL clock will permit viewing on lower cost oscilloscopes.

• Write clock not toggling. With above temporary oscillator inputting to D7, look for pulses at pin 3 of IC16, IC29 and IC9.

• Defective memory address multiplexers, IC15, IC28and IC8.

8. Extraneous characters can be caused by:

• Noise on the input lines to the memory, particularly on the D7 line. A 220 pF condenser (C4) is used on D7 to suppress most noise sources. More or larger condensers may be required in extreme cases. This trouble often shows up as an a appearing on the screen when another port is addressed.

• Data sent to the TV character generator faster than it can handle. Data must be valid for 1.5 us following the rise of D7 strobe. Faster data rates can be handled by reducing the value of the condensers in the 74123 write strobe singleshot. Alternatively, a data hold loop in your program, consisting of NOP instructions, can slow the data output to the readout.

• Defective or slow memories. Look at the bit pattern of the extraneous character to determine if a single memory is bad in a single or several data locations.

• More bypassing required. Power supply conditioning is shown in figure 2. Look at the power supply with a high speed scope — if excessive voltage glitches are present, add capacitance.

72

line appears, displaying the 33rd character. Up to 512 characters are thus sequentially entered and displayed. If a 513th and following characters are entered, the address wraps around so that an overwrite condition results: New characters start appearing at the top left corner of the screen. The display address may be reset to the home position at any time. Screen erase is accomplished either by loading 512 or more ASCII "spaces" (octal 240) followed by the home reset (octal 377), or by issuing the home reset followed by exactly 512 ASCII spaces, the latter being preferable.

Memory writing occurs when the MSB goes high. The memory address multiplexors (IC15, IC28, and IC8) then use the write address counter to control the memory address lines, interrupting normal display activity. 600 ns later, a 600 ns strobe pulse writes the new character into memory.

An excellent idea was suggested by Phil Mork in the Digital Group Clearinghouse to utilize a parallel logic path to step the write address counter without writing a character. Using a cycle of 511 write address steps, a blank, 511 write address steps and a nonblank character, a blinking "pseudo cursor" effect is obtained without the usual expense of a number of comparators. This software "blink" may be easily implemented with a final result indistinguishable from a hardware cursor. The write address stepping logic consists of IC19a and IC27d which detect the presence of a "1" in the least significant bit while the most significant bit is held low. This toggles the write address counter without firing the 74123 write strobe (IC23b). Disable the "pseudo cursor" when using a direct keyboard input. Do this by disconnecting pin 12 of IC27 from IC19, and tying pin 12 to +5 V (logical 1).

8080/Z80 Driving Software

This television display can be driven by a microprocessor's 8 bit output port. In the Digital Group systems, we use port 0 for this function. Listing 1 shows code for the routines CLEARTV, SPACE, and TVOUT to show how the software drivers are designed.

The main subroutine is labeled TVOUT and is located at <0> 372. The programmer merely loads the A register with one of the characters from the list in table 1 and calls the TVOUT subroutine. The codes in table 1 include all the standard upper and lower case ASCII codes, but have the high order bit of an 8 bit word set to "1". For those characters in table 1 which have ASCII graphics, subtracting 2 from the leftmost digit will give the equivalent 7 bit ASCII

Split

Octal

Address

Octal Coda

Label

Op.

Operand

<0> 343

076

377

CLEARTV

MVI

A.377

<0> 345

315

372

<0>

CALL

TVOUT

<0> 350

006

000

MVI

B.O

<0> 352

016

002

MVI

C.2

<0> 354

315

370

<0>

CLEAR

CALL

SPACE

<0> 357

015

DCR

c

<0> 360

302

354

<0>

JNZ

CLEAR

<0> 363

005

DCR

B

<0> 364

302

354

<0>

JNZ

CLEAR

<0> 367

311

,

■RET

<0> 370

076

240

SPACE

MVI

A.240

<0> 372

323

000

TVOUT

OUT

0

<0> 374

257

XRA

A

<0> 375

323

000

OUT

0

<0> 377

311

RET

Entry points

Listing I: Utility software for driving the TV readout with an 8080 or Z80 system. This listing gives the CLEARTV, SPACE and TVOUT functions, a total of 28 bytes. The CLEARTV operation simply homes the display, then writes 512 spaces leaving a blank screen and the write address counter pointing to the upper left corner of the screen. The SPACE subroutine simply loads a space code into the accumulator (see table I) then falls through into TVOUT. TVOUT simply outputs the value in the accumulator, then clears the accumulator and outputs all zeros so that the write strobe (D7) is turned off completing the write operation. This routine assumes a latched output port.

Commentary

A := ' ■' [set up home reset character]; write character [resets write address] ;

)BC : = 2000 (set loop count to split octal equivalent of 512];

write one space on screen; C := C—1 [low order count]; if not C = 0 then reiterate the loop; B '.- B — 1 [high order count]; if not B = 0 then reiterate the loop; return with screen clear, write address counter pointing to home position; A := ' ' [load one blank character code]; (port 01 := A;

A :■ 0 [turns off strobe pulse in bit 7]; (port 0) := A; return from SPACE or TVOUT;

CLEARTV: Called with no parameters when TV display screen is to be cleared completely and left in

the "home" (upper left) position. Uses registers A, B and C SPACE: Called when a space (ASCII 040, 240 from table 11 is to be sent to the TV display.

Uses register A. TVOUT: Utility output routine to transfer contents of A (high order bit assumed "1") to the TV display

and increment the write address counter. Uses register A as input parameter, destroys its value

leaving 0.

code (with the high order eighth bit assumed to be zero).

The instruction at <0> 370 will load the "space" character for you, so to get a space on the screen, merely call SPACE at address <0> 370.

Before attempting to write any character on the screen, the user must know where on the screen the character will appear. A third included subroutine starting at <0> 343 called CLEARTV will reset the write address counter to the home position and clear the 512 character screen. The next character entered after this subroutine will appear at the top leftmost position on the screen.

Conclusion

This television display design provides a versatile and essentially self contained circuit to provide the key output device of a small and inexpensive computer system. It can be built from scratch in the typical experimenter's laboratory or from a kit provided by Digital Group. Due to its use of an extended character set with 127 symbols including upper and lower case, special characters and Greek, the display will prove quite useful in a variety of applications."

73

BOOK REVIEW

Scelbi's Galaxy Game for the 8008/8080 by Robert Findley. Published by Scelbi Computer Consulting Inc, 1322 Rear — Boston Post Rd, Milford CT 06460, 1976. $14.95.

At last, one of the most enjoyable and widely played computer games — Space War - becomes available to the 8008/8080 microprocessor user with the publication of Scelbi's Galaxy Game for the 8008/8080.

Running in 4 K programmable memory, the Galaxy program presented in the book embodies all of the major commands and principles of the familar BASIC or FORTRAN game "Star Trek." Through an ASCII keyboard, the operator commands the Federation starship to move throughout the galaxy and destroy a certain number of alien ships. Available at the captain's disposal are control of the starship's course and speed, both short and long range scanner displays, photon torpedoes, phasors, and protective shields. Scattered throughout the 64 quadrants, each composed of 64 sectors, are stars, friendly space stations, and alien ships. Through the use of a random number generator, each Galaxy game is different and, I must say, challenging.

The 169 page book is divided into seven chapters plus a brief introduction. Chapter 1 details the operation of the game and explains the various commands along with their related warning and prompting messages printed on the operator's Teletype video display. Chapter 2 assists the user in developing specific input and output routines to tailor the software to a particular system. Chapter 3 explains how data is stored within the program. Chapter 4 contains a well documented explanation of the source code of the various subroutines and main program with frequent flow charts. Chapters 5 and 6, respectively, present the 8008 and 8080 assembled object code.

Finally, Chapter 7 presents a sample run of the program with helpful comments.

After studying the source code for some time and admiring the efficient means chosen for storing a large amount of data, such as the location of the starship, the stars, alien ships, and space stations within the current quadrant, I entered without modification the object code of Chapter 5 into my 8008 based machine, added my own input and output routines for keyboard and TVT-I, and proceeded to run the program. After correcting several of my own entry errors, Galaxy appeared to run properly, offering much enjoyment to an experienced Space War enthusiast as well as to complete novices. Though Galaxy does lack some of the bells and whistles of the FORTRAN versions, it is excellent for a 4 K microcomputer version. What surprised me was that even on the 8008, its speed of execution was quite good.

So far, I have only a few critical comments, all relating to initial loading of the program. First, all programs written for public distribution should leave undisturbed locations 000-010 of RAM memory page 0 for the user's own system restarts. Secondly, Galaxy appears to have been written for use on a standard, full width Teletype. Many hobby systems, however, make use of a 32 column television display. Fortunately, the source code documentation is sufficient for most programmers to reformat the output to fit their own system. It also would have helped if ASCII text messages had been actually listed alongside the octal dumps in the object code.

So, if you've always wanted to command your own starship and if you have an 8008/8080 system with at least 4 K memory, then Scelbi's Galaxy Game for the 8008/8080 is a worthwhile addition to your

Software library." William E Severance Jr

Center Lovell ME 04016

74

ALTAIR OWNERS!... WANT TO COMMUNICATE WITH THE ANALOG WORLD??

Available now is an analog to digital converter, (ADC) and a digital to analog converter, (DACJ; both on the same card which plugs directly into your 8800 and is low power!

Features DAC

ADC

Res. 8 Bits, Binary 8 Bits, Binary

Lin. .2% Fullscale .2% Fullscale

Temp. Co. 50 ppm 50 ppm

Rang. 0-10V, + 10V, ± 5V O-10V, 110V, + 5V

Set. Tim. 5 Micro-Sec N/A

Con. Tim. N/A 15 micro-sec

Ext. In. N/A Start*, Analog in

E xt. Out, Analog out Serial Out, Strobe for serial data. Status

- Both ADC and DAC have full software and interrupt capabilities

* NOTE: Convert start input may be either software or hardware initiated, or both

KIT: $250.00 Assembled and tested: $300.00

BankAmericard, Master Charge accepted Write of call for more information:

1 RATA '

MICRO DATA

3199 Trinity PI San Jose, CA 95124 (408) 377-8025

Keyboard/Display Module

Ideal for communicating with your microprocessor!

RS-232 interface x 32 characters S400

TV/TTY kbdJdlsplay (16 lines x 64 characters) $500

Keyboard/CRT Monitor (24 lines x 80 characters) $700

ORDER NOW! SEND YOUR CHECK OR BANKAMERICARD NUMBER TODAY!

CO

MICON

4

2520akStreet Oakland. California 94607 (415) 763-6033

LEARN

UCOMPUTER

SOFTWARE

$49.95 BUYS A

COMPLETE COURSE IN

PROGRAMMING FOR THE

SMALL SYSTEM ENGINEER

• PRINCIPLES

• TECHNIQUES

• EXAMPLES

• APPLICATIONS

SERVICES INCDBPOPATED

Creative Computer Division

711 Stierlin Road

Mtn View, CA 94043

(415) 965-8365

FREE BROCHURE

NOW!

A Computer Store in New York, NY

Offering the complete line of *Altair mainframes and peripherals as well as boards & boxes, tools & instruments, books & manuals, supplies & media.

The Computer Store Inc.

55 West 39th St.

New York, NY 10018

212-221-1404

*Altair is a registered tradename of MITS.Inc.

For more information circle

A 104

HARD COPY

■j&

SOFT PRICE

mp-40

Completely Assembled 64 Character ASCII 40 Column Capacity 5x7 Impact Dot Matrix Ordinary Roll Paper Parallel Interface Includes Power Supply and Case Work Utah Residents add 5% Sales Tax Allow 60 days for delivery

mpi

P. O. Box 22101 Salt Lake City / Ut. 84112

NOW!

A Computer Store in Burlington, MA

Offering the complete line of * Altair mainframes and peripherals as well as boards & boxes, tools & instruments, books & manuals, supplies & media.

The Computer Store Inc.

120 Cambridge St.

Burlington, MA 01803

617-272-8770

♦Altair is a registered tradename of MITS, Inc.

For more information circle

75

Here lies documentation of known bugs detected in previous editions of BYTE. ..

Author Roger L Smith sends in the following update on his article which appeared in the May BYTE:

(a) Two minor errors appear in the schematic for the PROM programmer (see page 31, May 1976 BYTE). Those elusive little dots showing connections should show the junction of the 10 k and 27 k resistors connected to +80 V (near the 5 ohm resistor on MJE1102 collector).

(b) The second connection should show the cathode of the 1N270 and the 200 pF capacitor connected to the line to pin 15 of the PROM.

If anyone is having trouble finding the 1N270 diodes (germanium), I have an alternate circuit that does not use these diodes. I'll send a copy of the schematic to anyone sending a SASE.

[Roger L Smith, 4502 E Nancy Ln, Phoenix AZ 85040.]

The following figures illustrate the fixes (a) and (b) to the diagram as originally published:

02(4)

ADD DOT HERE

(a)

ADD DOT HERE ■

(b)

Author Phillip L Hansford reports the following glitch in the commentary of the MATCH program listing, page 49, June 1976 BYTE: The instruction at 002/007 points the DE register pair to the output, not HL. All the other information on that line is correct."

Argyle W Bridgett, an independent communications engineering consultant (39 Chaske Av, Auburndale MA 02166) reports the following error in Don Lancaster's "Build the BIT BOFFER," page 30 in the March 1976 BYTE. The circuit originally published as part of figure 6 as a zero crossing detector would not be a good zero crossing detector according to Mr Bridgett, since it would tend to provide an oscillatory race condition. However, checking the printed circuit layout, Mr Bridgett found that the correct non oscillatory connections had been implemented. He states that the correct connections for IC4C and IC4D are as follows:

The dotted lines indicate connections to the remainder of figure 6's diagram. Several other individuals have mentioned this error as well."

In a label of the cabling diagram for the serial chassis connector, figure 4, page 46, June 1976 BYTE, the phrase "110 BAND" should read "110 BAUD"."

JITTER

Bob Van Valzah, 1140 Hickory Trail, Downers Grove IL, reports a problem on page 94 of the June BYTE, in the RND routine shown. The proper code for the DCR C instruction at 000/136 is octal 015. Bob Baker, 15 Windsor Blvd, Atco NJ 08004, suggests that Gordon Speer's RND routine will not really provide pseudo random numbers as it stands. The results of the exclusive OR and rotate bit manipulations are lost unless the accumulator is saved in memory. Bob suggests inserting MOV M,A between the instructions shown at locations 000/113 and 000/114. Reassembly is not required if the program is just shifted down one byte to make room for the octal 167 code required."

76

Classified Ads for Individuals and Clubs

WANTED: I am looking for a used or nonfunctional minicomputer, Altair, IMSAI, home brew, etc. I also need parts, boards, keyboard, tape drive or ? (you name it). Price is open. Write Steve Kelley, 9506 Peach St, Oakland CA 94603.

TRADE OR SELL: One Processor Technology Company 2 K EROM board with 16 1702As (total 4 K) for $150 or best offer. MM5320 video timing chip, $15. XR-210s $3.50, Intel 8214 PICU, $17. WANTED: Paper tape reader. Need information on acoustic coupler sold by SSM. Glenn Nelson, Box 1846, Brown University, Providence Rl 02912, (401 (274-5794.

WANTED: Back issue of BYTE: I want to complete my collection. If you have a BYTE #4 you can do without, send your asking price to me: Keith Petersen, 1418 Genessee Av, Royal Oak Ml 48073, (313)588-0184.

FOR SALE: (2) Altair 8800s, with 1 K of memory. Processor Technology full width mother boards, and custom card cages. Processor Technology: 4 K RAM board, 3P+S IO module, VDM-1 display module, SWPT TVT-II with extras, Godbout 4 K RAM board, plus more. Eric Bjornsen, WB9HBP, 1615 East St, Baraboo Wl 53913. Phone: (608)356-5309.

FOR SALE: Surplus, but new, never used HIT (Hobbyist Interchange Tape) system cassette interface unit. Allows user to store digital data on a cassette recorder. Assembled unit with information manual, $10.95. Matthew Smith, POB 373, Englewood CO 80110.

WANTED: Manual, schematic, and service data for Burroughs Model 9350-2 communications terminal-printer. M D Cassetti, 1011 Devonport Ln, Seabrook TX 77586.

FOR SALE: SWTPC CT-1024 TV terminal with chassis, power supplies, and parallel interface board. Completely operational; all for $150. Richard Coates, 4610 Allan Rd, Milwaukie OR 97222.

FOR SALE: Several items in the following categories: 35 Tee Dee, stand alone and ASR, 35 reperf, 35 page printer and keyboard, 35 reperf's, 32 and 33 keyboards, other 5 and 8 level TTY gear, SASE for listing and prices. CC Armstrong, 3109 E Roma Av, Phoenix AZ 85016.

FOR SALE or SWAP: Prentice Electronics type P-LLA leased line adapter (modem) at 600 baud max. Three plug-in units with rack mount enclosure and plug-in power supply: list price $800, asking $225 or swap for audio equipment. R Omegna; 130 New Rd Apt F9; Parsippany NJ 07054.

Bidirectional tape deck, model KP345 Pioneer. Brand new, factory warranty. Playback only, but may be modified by user to record. Direction controlled electrically. Only $60 plus UPS. Write Dale Freye, PO Box 703, Muskegon Ml 49443.

FOR SALE: Altair 8800 power supply, transformers and extra 5 V/4 A output, $60; SWTP TV Typewriter II with PS, cursor control and serial IO in chassis with extra 5 V supply, switches and connectors, $225; SWTP parallel IO and screen read, $30 for both; Motorola video monitor and ASCII keyboard in molded cases, $110; Telex Termicorder cassette with digital R/W and PS electronics, $85; Model 33 KSR TTY with manuals, pedestal, copyholder, dust cover, paper and ribbons $660. M J Hnetynka, 2043 Farmsville Dr, San Antonio TX 78245.

8008 Users: I have written an 8008 self assembler, which is available to you. Send 25£ for a flier describing this assembler to Robert Heller, PO Box 281, Wendell MA 01379.

Before sending your classified ad to BYTE, read it over. Did you include your name, address, phone number (with area code) in the text of the ad? B YTE has received several ads with incomplete phone numbers or missing addresses.

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 non-commercial, 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.*

The Data Domain is a computer store serving the Central U.S. Many of you have already contributed to our success, and we wish to thank you. If you have not yet entered The Data Domain, we'd like to hear from you. We are here to serve your needs with a full line of products and services, and to offer assistance in solving both hardware and software problems.

The retail computer store is more than a business to us. The Data Domain is a personal commitment of over 18 years of computer experience toward the growth of this new facet of our industry, which we are convinced will be of major significance to our nation's future in science, education and business.

ATA

O

OMA/N

111 S. College Ave.

Bloomington, Indiana 47401

Phone (812) 334-3607

Offering IMSAI Processors and all major brands of accessories

77

What's

New?

Photo J: The HP-91 shown in a working setting which emphasizes its portability.

Calculator of the Month Club?

Sometimes, one gets the impression that all the manufacturers of programmable (and non programmable) calculators have gotten together and agreed to have a calculator a month hit the market. The latest item to pass BYTE's desk in this area is the new

Photo 2: The HP-91 anatomy following dissassembly of its case and removal of the processor/printer/battery subassembly from its mountings.

HP-91 portable scientific printing calculator. As a portable calculator, this item looks like a first in the field with its printing capability and power supply. It is not a programmable calculator, however, being based upon the widely used HP-45 scientific calculator. Its primary added feature is the small alphanumeric printer which has several modes of operation ranging from a complete printed log of operations to an on demand printing of register contents.

Photo 1 is the beauty contest photo showing how the HP-91 fits into a typical briefcase of the businessman, engineer, statistician or scientist (any of whom would find its $500 price quite attractive considering the printing functions). Photo 2 is the one which BYTE readers will find most interesting: the anatomy of an HP-91. No detailed analysis of this picture was supplied with the press release, but from the photographic evidence some future technological archeologist might conclude that it was composed of a keyboard scanning subassembly, proccssor/printer/battery subassembly, case and AC power supply module.

ROM programming for the HP-91 is a more powerful version of the HP-45 pocket calculator, with the added capability of creating a printed log of all calculations. It has all of the functions of the HP-45, plus expanded memory and additional functions like linear regressions.

The HP-91's new, built in printer can be operated in a "manual" mode which prints only when "Print x" or a list function is pressed, "normal" mode which prints all entries and functions, or the "all" mode which prints digit entries, functions, and results. It will print a display in fixed decimal, scientific notation and engineering notation (values with exponents that are multiples of three).

A 220 page owner's handbook is included with the calculator. It contains user instructions and a comprehensive application section that gives the most efficient keystroke sequences for solving problems in the fields of mathematics, statistics, finance, navigation and surveying. An AC adapter/recharger and a carrying case also come with the new calculator.

The HP-91 scientific printing calculator is manufactured and marketed by HewlettPackard's Advanced Products Division, 1501 Page Mill Rd, Palo Alto CA 94304.

Will the calculator a month trend continue? Read the next BYTE and find out. Maybe HP will take the HP-55, put it into a case with a printer and batteries, and call the result a portable desk top programmable machine."

78

PHILADELPHIA COMPUTER STORE

features

The Personal

Computer System

IMSAI ® the digital group

P

Personal

Computer

Corporation

phone:

215-647-8460

Frazer Mall

Frazer, PA. 19355

WANTED

Microprocessors Kit or Assembled

ALTAIR • SPHERE • MOTOROLA INTEL & OTHERS

Memories, I/O boards, chassis, power supplies, modems, peripherals, specials, prom programmers, ADCS, DACS, GPIOS, RS232 faces, and any associated software

FORWARD INFORMATION AND/OR INQUIRIES TO:

AMERICAN USED MICROPROCESSORS,

EQUIPMENT &SUPPLY CORP.

AT THE CHICAGOLAND AIRPORT

BOX515

PRAIRIEVIEW, ILLINOIS 60069

TELEPHONE (312) 6344076

For complete monthly catalog of items available and in stock Enclose $10. for six issues. Many new unused items. Amazing values for everyone. A-70

TIRED OF LOADING YOUR COMPUTER BY HAND?

TURN AN AUDIO CASSETTE RECORDER INTO A FAST RELIABLE PROGRAM LOADER AND MASS DATA STORAGE UNIT WITH THE PerCom CASSETTE INTERFACE FOR S59.95

• Fully assembled and lested

• BYTE Standard (see Feb 76 BYTE)

• Load a IK program in 40 seconds

• May be upgraded to 218 bytes/sec

• Store tOOK bytes on C 60 cassette

• Standard 8-bit parallel interlace

• Easily connected io any computer

• Little ot no software required

• Provision for custom interfaces

• Signal level sensor

• Sidetone circuit

• Operate 2 tape units simultaneously

• Standard sued circuit card |4V." * 6V."I

• Described in BYTE (March April '76)

• Comprehensive Instruction Manual

TO ORDER: Send

rt'Chaiq*. BinkAme'"

r Io. $6995. Ti.as r Tit, include ill numb (V. P*rson»l chick!

PerCom - 'peripherals for personal computing' Custom Design Services • 4021 Windsor Garland, Texas 75042 . (214) 276-1968

Pictured above is the new OP-80A High Speed Paper Tape Reader from OAE. This unit has no moving parts, will read punched tape as fast as you can pull it through (0-5,000 cp.s.), and costs only $74.50 KIT, $95.00 ASSEMBLED & TESTED. It includes a precision optical sensor array, high speed data buffers, and all required handshake logic to interface with any uP parallel I/O port.

To order, send check or money order (include $2.50 shipping/handling) to Oliver Audio Engineering, 7330 Laurel Canyon Blvd., No. Hollywood. CA 91605, or call our 24 hr. M/C-B/A order line: (213) 874-6463.

La

ompuier

%p

Wad

of r jew L4ork .Jrnc.

Authorized dealer for:

Sphere • IMSAI

Processor Technology

SWTPC 6800 & CT 1024

Featuring a complete line of technical publications and books and a full line of chips and parts at MAIL ORDER PRICES. Repair service for all 8080 and 6800 microprocessors

Friendly Service Advice Problem Solving

Open Monday through Saturday 10-6, Thursday until 9:30

314 Fifth Avenue

Mew York NY 10001

212 279-1048

NOW!

A Computer Store in Windsor Locks, CT

Offering the complete line of *Altair mainframes and peripherals as well as boards & boxes, tools &- instruments, books & manuals, supplies & media.

The Computer Store

63 S. Main St.

Windsor Locks, CT 06096

203-871-1783

*Altair is a registered tradename of MITS.Inc.

For more information circle^

A 103

79

You'll Want to Nybble at these Byte Books

• The TTL Cookbook by Don Lancaster, published by Howard W Sams, Indianapolis, Indiana. Start your quest for data here with Don's tutorial explanations of what makes a TTL logic design tick. 335 pages, $8.95.

• The TTL Data Book for Design Engineers, by Texas Instruments Incorporated. How does an engineer find out about the TTL circuits? He reads the manufacturer's literature. This 640 page beauty covers the detailed specs of most of the 7400 series TTL logic devices. No experimenter working with TTL has a complete library without The TTL Data Book for Design Engineers. Order yours today, only $3.95.

• The Supplement to The TTL Data Book for Design Engineers, by Texas Instruments Incorporated. What happens when you can't find a 7400 series device listed in The Data Book for Design Engineers? Before you start screaming and tearing your hair out in frustration, turn to the Supplement. The Supplement has 400 pages of additional information including a comprehensive index to both TTL Data Book volumes. To be complete (and keep your hair in place and vocal cords intact) you'd best order the supplement at $1.95 to accompany the main volume.

• The Linear and Interface Circuits Data Book for Design Engineers, by Texas Instruments Incorporated. When you run across one of those weird numbers like 75365 the immediate frustration problem occurs again. What kind of gate could that be? We won't tell in this ad, but you can find out by reading the specifications in The Linear and Interface Circuits Data Book for Design Engineers. You can interface your brain to the 72xxx (linear) and 75xxx (interface) series of functions by ordering your copy of this 688 page manual at only $3.95.

• The Semiconductor Memory Data Book for Design Engineers, by Texas Instruments Incorporated. Don't forget the importance of memories to your systems. Refer to this 272 page manual to find out about the Tl versions of many of the popular random access memories and read only memories. Order your personal copy today, only $2.95.

Where does the editor of a computer magazine turn when he must verify some author's hardware design? Information on a 75450 interface gate, or a 74147 priority encoder circuit does not spring forth by magic. Checking the information supplied by authors is part of BYTE's quality control program.

When you build a project, you need this same sort of information. All you find in the advertisements for parts are mysterious numbers identifying the little beasties... hardly the sort of information which can be used to design a custom logic circuit. You can find out about many of the numbers by using the information found in these books. No laboratory bench is complete without an accompanying library shelf filled with references and this set of Texas Instruments engineering manuals plus Don Lancaster's TTL Cookbook will provide an excellent starting point or addition to your personal library.

• The Transistor and Diode Data Book for Design Engineers, by Texas Instruments Incorporated. You'd expect a big fat data book and a wide line of diodes and transistors from a company which has been around from the start of semiconductors. Well, it's available in the form of this 1248 page manual from Tl which describes the characteristics of over 800 types of transistors and over 500 types of silicon diodes. This book covers the Tl line of low power semiconductors (1 Watt or less). You won't find every type of transistor or diode in existence here, but you'll find most of the numbers used in switching and amplifying circuits. Order your copy today, only $4.95.

• The Power Semiconductor Handbook for Design Engineers by Texas Instruments Incorporated. To complement the low power transistor handbook, Tl supplies this 800 page tome on high power transistors and related switching devices. Here is where you find data on the brute force monsters which are used to control many Watts electronically. Fill out your library with this book, available for only $3.95.

• Understanding Solid State Electronics by Texas Intruments Incorporated. This is an excellent tutorial introduction to the subject of transistor and diode circuitry. The book was created for the reader who wants or needs to understand electronics, but can't devote years to the study. This 242 page softbound book is a must addition to the beginner's library at only $2.95.

• The Optoelectronics Data Book for Design Engineers by Texas Instruments Incorporated. This 366 page book is a compendium of information on Tl phototransistors, LEDs and related devices. Order yours at $2.95.

_TTL Cookbook @ $8.95 _TTL Data Book @> $3.95

.Supplement to TTL Data Book <s> $1.95 .Linear and Interface Circuits @ $3.95 .Semiconductor Memory Data <s> $2.95 .Transistor and Diode Data Book @ $4.95 .Power Semiconductor Handbook <s> $3.95 .Understanding Solid State Electronics @ $2.95 .Optoelectronics Data Book @ $2.95

Please add 75 cents for postage and handling.

Send to: Name

Please allow six weeks for delivery.

Address

City

State

Zip

EITt

Check enclosed

Bill MC #

Bill BA#

.Exp. Date. .Exp. Date.

PETERBOROUGH, ISIH 03458

Signature

80

Software Bug of the Month 3

Backus Normal Form, or Backus-Naur Form, or BNF, is often used to define the syntax of a programming language. Suppose we want to define a GO TO statement. We can write

<GO TO statement) ;

'GO TO'(label)

(read "A GO TO statement is defined as the words GO TO followed by a label").

If you are writing a compiler, and the compiler reads a statement in the program it is compiling, it can find out whether that statement is a GO TO statement by looking first for the words GO TO, and then looking for a label. The order in which this is done is directly related to the BNF definition above. This suggests the following general procedure: Suppose we have a BNF rule of the form

<A> :: = <B> I <C> <D>

(for example), or "An A is either a B, or else a C followed by a D." Now suppose we want to write a program to read a string and tell whether it is an A. Such a program is called a recognizer, and we can write it as follows. Suppose that we already have recognizers for B, C, and D (we are going to write the simpler recognizers first). Then our recognizer for A calls the recognizer for B. If it finds B, it stops. If it doesn't find B, it goes back and calls the recognizers for C and D. The recognizer for C leaves its pointer to the string at the beginning of what is presumably a string which is a D.

A programmer tried this out on the standard BNF definition of an unsigned integer: (unsigned integer) :: = (digit) ||(unsigned integer) (digit)

and ran into no end of difficulties. First his program gave the wrong answer; he found the problem, fixed it, and got an endless loop. He thought he found that problem, too, and fixed it again, but he still got an endless loop, in a different place. See if you can reconstruct his plight.

Answer in Next Month's BYTE

SOLUTION TO BUG OF THE MONTH #2

Never mind that the program is written in a very awkward way, and that you can probably find lots of ways to write it better. The puzzle last month was to find the bug in the program as it stood. If you didn't do that, you haven't solved the problem.

Ready for the solution?

This bug may or may not occur, depending on the computer system you're using. The trouble is that it looks like a bug in iteration, when in fact it isn't that at all: It's a bug in floating point arithmetic. The quantity DEGREE is one degree in radians, approximately. One degree in radians doesn't come out even as a binary fraction, which is the way real numbers are represented in computers. The result is that, when you add this number to itself, as we did in this program, the answer is still an approximate number. When you get up to PI/2+DEGREE, which amounts to 91°,the answer apparently was just a hair too small. If X had been equal to PI/ 2+DEGREE, it would not have been less than this, and we could not have done the 91st case. But as it is, the 91st case was done."

W Douglas Maurer University Library Room 634 George Washington University Washington DC 20052

BROWN-OUT PROOF your ALTAIR 8800

With the unique Parasitic Engineering constant voltage power supply kit. A custom engineered power supply for your Altair. It has performance features that no simple replacement transformer can offer:

•BROWN-OUT PROOF: Full output with line voltage as

low as 90 volts. "OVER-VOLTAGE PROTECTION: Less than 2% increase

for 130 volt input. *HIGH OUTPUT: 12 amps @ 8 volts; 0.5 amps @ ±16

volts. Enough power for an 8800 full of boards. •STABLE: Output varies less than 10% for any load.

Regulators don't overheat, even with just a few

boards installed. "CURRENT LIMITED: Overloads can't damage it. •EASY TO INSTALL: All necessary parts included.

Only vp I O postpaid in the USA. calif, residents add $4.50 sales tax.

Don't let power supply problems sabotage your Altair 8800.

PARASITIC ENGINEERING

PO BOX 6314

ALBANY CA 94706

81

Still More

BYTE's

Books

•DESIGNING WITH TTL INTEGRATED CIRCUITS by the Components Group, Texas Instruments Inc. Edited by Robert L Morris and John R Miller.

People often ask questions like "Where do I get basic information on hardware design?" One answer is in "Designing With TTL Integrated Circuits."

This book, published by McGraw Hill in 1971, is a fundamental starting point for any person designing peripherals and custom logic employing TTL integrated circuits. While its publication date precludes any reference to the later additions to the TTL 7400 series of components found in the Data Books, it is nevertheless the source of a wealth of ideas on TTL integrated circuits and design of logic with this family of circuits.

What is fanout? You may have heard this term mentioned at computer club meetings or in advertisements for circuitry, or in articles in BYTE. You can find out background information on the calculation of fanouts by reading the chapter on Circuit Analysis and Characteristics of Series 54/74.

Worried about noise, shielding, grounding, decoupling, cross talk and transmission line effect? (Or, more properly, did you know you should worry about these effects in certain circumstances?) Find out about general precautions and background information by reading the chapter on Noise Considerations.

The chapter on Combinatorial Logic

Design gives 53 pages of background information on Boolean algebra and practical representations of logic in the form of SSI gates. The chapter includes a description of Karnaugh mapping techniques and the minimization of logic. From combinatorial design, the book progresses into Flip Flops, including background information on the workings of these devices, and fairly detailed descriptions of the uses and applications of these devices including synchronization of asynchronous signals, shift registers, flip flop one shots, etc. Then the book returns to static combinatorial logic with its description of the Decoders available in the 7400 line as it stood in 1970-1971.

A chapter on Arithmetic Elements gives fundamental descriptions of binary arithmetic, diagrams of the basic gate configurations for combinatorial logic adders, and a section on number representations for use in computers. Much of the material in this section is dated, due to the fact that the later 74181 series of multiple function arithmetic units had not yet appeared when the book was written. But for a background on arithmetic operations implemented with the simpler 7483 circuits, this chapter is ideal. A chapter on Counters and a chapter on Shift Registers complete the detail logic sections. The book is closed out by a chapter on miscellaneous Other Applications including a simple binary multipliers 12 hour digital clock and a modulo-360 adder.

BIT!

PETERBOROUGH, NH 03458

"1

Designing With TTL Integrated Circuits $24

Microcomputer Design $25

Send to: Name

Address

City

State

Zip

D Check enclosed

□ Bill MC No.

□ Bill BANo.

Signature

Exp. Date Exp. Date .

L_.

Please allow six weeks for delivery.

The most important use of this book is its value as an introduction to TTL logic. By reading and studying it, you will begin to understand the ways in which SSI and MSI TTL gates can be utilized in your own experimental logic designs. After studying this text, you should be able to make much more sense out of the technical information summaries typically published as specifications sheets and data catalogs.

Order your copy today from BYTE's Books, $24 postpaid.

•MICROCOMPUTER DESIGN by Donald P Martin, Martin Research. Edited and Published by Kerry S Berland, Martin Research.

Purchase your copy of the definitive source for circuitry and hardware design information on the 8008 and 8080 computers today.

Even Intel, the originator of the microprocessor revolution, is hard put to compete with the wealth of information found in Martin Research's new second edition of Microcomputer Design. This is the book which was originally published as an expensive (but quite practical) engineering report in loose leaf form, at about the time the microprocessor technology was first catching on in the form of the 8008. This 388 page second edition of the manual is loaded with detailed information on how to build and use computers based on the 8008 and 8080.

But even if you do not intend to use the 8008 or 8080, the practical pointers on digital logic design, peripherals and applications of hardware techniques will more than justify the new low price of $25 for this handbook. Microcomputer Design is a must for 8008 owners and 8080 owners who want to truly understand how their processors process.

Microcomputer Design is complete with numerous illustrations, tables and diagrams, plus reprints of the specifications sheets for the Intel processors. There are numerous practical examples of circuitry and many complete computer designs ranging from "minimal microcomputers" to a full blown 8080 processor.

Order your copy today, $25 postpaid from BYTE's Books.

82

What's New?

Sphere Graduates and Goes to Work for Businesses

Sphere Corporation, 940 North, 400 East, North Salt Lake UT 84054, has just announced a new series of products designed for the small business environment. The Sphere Series 500 is a desk top computer based on the Motorola 6800 processor, complete with a video display of 80 character per line, upper and lower case. The system comes with executive programs in read only memory. A version of BASIC is provided with the hardware. In its minimum form, the Model 520 is described as a 4 K byte serial interface intelligent terminal. Data can be selected from cassette tape or modem, RS-232 communications line, Teletype, or direct TTL interfacing at rates up to 9600 Baud. A resident 4 K BASIC option gives this programmable unit independent intelligence.

Next in the line is the Model 530, which features 20 K bytes of memory and a dual cassette operating system with extended BASIC. This version is intended as a means for the small business to do tape oriented batch processing of data. The Model 540 is billed as a 20 K byte system with a floppy disk operating system, extended BASIC and a 110 line per minute 80 character wide printer. The floppy disk operating system speeds up systems functions by a factor of about 20 relative to the cassette tape version, and provides the ability to have significant on line random access files within the capacity of a floppy disk. Finally, at the top end of the line is the Model 550, which is a 540 with 54 K of memory on line and a 1 32 character wide printer.

These units are intended for business applications and are sold completely assembled. For detailed information contact Sphere Corporation at the address above."

MIKRA-D 16K STATIC RAM

ALTAIR/IMSAI Plug-in Compatible

— 16K BYTES of static 500ns. memory for your ALTAIR/IMSAI Microcomputer.

— YOUR processor runs at full speed.

— PLUGS directly into ALTAIR/IMSAI machine.

— START with 4K — expand to 16K IN ONE SLOT using our expansion kit.

— ALLOWS maximum possible 8080 memory (64K bytes) in 4 slots.

— MIL-SPEC tested memory chips use low-power technology.

— MEMORY protect feature. Buffered inputs.

— SOLVES DMA problem caused by Dynamic memories.

PRICES

MD-2046-4 $175.00 MD-2046-12 $455.00

M D-2046-8 $315. 00 M D-2046-16 $595. 00

Expansion Kit $140.00

AUTOMATIC 1702A PROM PROGRAMMER

MD-2044

RS 232 compatible interface. Use with any computer serial output. Programs 1702A in 2 minutes. Complete self-contained unit. Simple software routine allows you to read or program 1702A completely under software control.

I""^™"™^""""! Kit—$149.50

MIKRA-D | Assembled—$169.50

INCORPORATED

Mikra-D«P.O. Box 403*Holllston, Mass. 01746-Tel. 617-881-3111

OOP- K U O"

O 3 ID 0*<

^fe

00 ^ o

oacr h

•BajL

- to o cr ct\

H

^H| "'H>1

a) *a pi D)

ID

^HP

- ID 1 C 1— >

a a. a. h- n

3

^H ^H

OO O. • 3 >-3

H

'■^^^

go o oi mi

3

o cr 3 (DM

01

F

O F- O. H - !-• 3* C F

(-■

S>

01 H- H- ID K* CD

O

ID

- rt CO rt

3

MS n ?fli

hrj . t-fi O

MS

> Hi

O

oo c B to n

• ■

Hi

^^H

t-"<3 C O

o

01 (0 KPrt B

- w< to o -a 1 1) 1 H

o

I-l

a. 01

R

CD M rt to CD to

o

cr

3 u> to h- O rt

r-»

O. N> CO *< r| ID

O rt O 01 to 01 M rr I-1 n cl oo h-1 id

H

ID

ID

o

I/O

1 1

(-• O 0) H-H

3

H

B o- n> 3 to

O T3 C 0 oo rr

H

H

T

rt 01 i-l 3" - VJ

3

ID

3* rt (-*• H 13

01

H

to P- 3 to o to

}-i

a

i croo ac

H

u

P* t| fl ■d H 01 > 01 It

3 01

M H- nou

ft

H"

O rt *- H H H

3"

<•

R

n vrj or I » pi

re m n

3"

>

01 01 3' 01 to

H*

o

CO h-- 0 o 3 s

00

H

o m c o a. re n O I 3 3

3*

M

N

i

CO € rt CO rt

H

w

co cr oi to

ID

C SfHI

CO

cr

h. a. i 3 ro 3"

O

■-<!

T

rt H- 3 CO o K

(-*

3" 1 1 rt n

c

X

(0 t* 01 01 tf

ft

M

co o 3 3 a

H

n

O

10 rt H Hi H rt to to to

h- n o X oi

0

3

i

oi o o a. rt

B

H

CO

M

m 3 01 ro oi c

3 CO T3 ft i-l

o

3

PI

■

LO

rt

M to CD rt 01 ID

H

2

—a

. *

d o

■— n e h- co O ft *i O H ••

p. ID 3 01

It O

H

h-l Z

■

c cr. f

3 !»

O O 01 It o

n

o

woe

i • ^r

01 3 It (-< (D -fc

•a 3* M en oi rt id ^s n

■

H- C C

3 H lj"'-i

harac Of 11 reli ulti o 680 bilit

to

1/1

Mp

I

ON

-J CO

<• VJ L

36 c

J

O M

"< O B 01 O n

- oi cr id

n rt h o H

W0

CTv

. *

■i SS O

- to A 11 CO

*

83

What's an l2L (I squared L)?

Terry Steeden 40 Waseca Av Tonka Bay MN 55331

Figure I: Logic Gates. The conceptual schematic of a typical TTL logic gate, with its logic diagram, is shown in (a). The equivalent logic function as an fiL gate is shown in (b). Note that the TTL gate utilizes several resistors as part of its structure, whereas the fiL gate uses transistors exclusively. This results in a much lower power dissipation for the chip since there is no IR2 resistive loss involved in the l?L gate.

■OVCC

o

Everyone likes transistor-transistor logic, TTL. It is fast, cheap, widely available — and it consumes power. Not much power, compared to a vacuum tube, but a lot for integrated circuits, especially when compared to metal oxide semiconductors. And everyone likes MOS because of its low power consumption. But, it is typically not as fast as, and it is not as cheap as, the older TTL logic. This means that Large Scale Integration (LSI) chips either draw a lot of power (TTL) or are not as fast as they could be (MOS). But what would happen if the best of the two could be joined together? A fast, low power, cheap gate . . . Behold, |2l or "integrated injection logic." Let's see how low power and speed are combined cheaply. We can begin by looking at power consumption, cost, and speed, briefly, and then see what other observations we can make about |2L.

Conventional TTL Gates

What is it that draws power in the conventional TTL logic gate? Mainly, the necessity of resistors. Power consumed will obviously be reduced if these resistors can be removed. Figure 1a is a conceptual schematic of a conventional TTL logic gate, and figure 1 b is an |2l logic gate. Note that both perform the same function and |2l does it with no resistors. The transistors have been merged (|2l is also called merged transistor logic). This lack of resistors results in a tremendous power savings. (Also note that the |2l gate has an extra pin marked Vjj — we will refer back to this when talking about speed.)

Cost is the second factor to consider. Figure 2a is a possible configuration using a

84

A

vcc

n

UNU

C B E

W

5

VCC

n

1 P J N P

P 1 N+ J P

•—

A

N +

Figure 2: Junction Fabrication Economies. The /2L gate could be fabricated using a chip layout similar to TTL as is shown in (a). However, the physics of the I^L design allows the manufacturer to merge the two transistors as shown in (b), a trick which simplifies the processing of the silicon and reduces the cost of fiL gates.

conventional layout of |2l, with a laterial PNP and diffused isolation (note the jumper). All together, seven masks must be used by the manufacturer to produce the circuit, which in this configuration is similar to TTL. Figure 2b is the same circuit with the transistors merged. The base of the PNP has been placed at ground and the NPN inverted (collector and emitter roles reversed). No jumper is required because the two P junctions are now on one strata. Most important, only four masks are required for manufacturing. We now have three reasons for cost reduction. One, less complicated masks and less processing because of merging. Two, existing TTL and CMOS technology and manufacturing processes can be used to produce the |2l circuits, thus keeping research and development costs minimal. Three, merging saves space allowing more gates per unit area, keeping cost per circuit down.

Now, about that pin marked Vjj, and what about speed? Pin Vjj is a new power pin. This means |2l has two power pins, Vcc and Vjj. Vcc is the conventional 5 Vdc, and Vjj is the voltage input which determines the speed of the chip (see figure 3). Observe that the less power presented to a theoretical |2l gate, the lower the obtainable speed of the gate. Take note also how |2l compares with CMOS and LS gates. Basically, more speed can be obtained at the expense of more power, all controlled at pin Vjj. This speed is adjusted by picking a resistor to limit power to Vjj. In general, the voltage to be limited is known (usually 5 Vdc) and the current to be supplied Vjj is picked depending on the speed required. Knowing voltage and current, ohms law will supply a ballpark value

for the resistor. It is possible that in the future this external resistor may be made internal to the package. Hopefully, at this point, the reader can see the obvious relation between speed and power. The power is always less than CMOS or TTL operated at the same frequency. By slowing down the speed of the |2l gates, even more power can be conserved.

Now what other observations and data can be added to our basic knowledge of |2l? According to Signetics, a major producer and developer of |2l, |2l will be manufactured for the next couple of years to be compatible with TTL logic levels. TTL logic levels are conventionally determined to be 0 to 0.8 Vdc (logic 0) and 2.4 to 5 Vdc (logic 1), a voltage difference of as much as 5 V. |2l logic will use only a 0.6 Vdc difference between logic 0 and logic 1. This means that for |2l to be compatible with TTL, input and output interface logic must be added to shift the l2L levels to TTL levels. After a couple of years this interface logic will be dropped and pure |2l systems will be available.

Signetics would also make us aware that |2l is not to replace TTL or CMOS, but has been introduced to fill the void that now exists in the 2 to 20 MHz operating region. Higher voltage |2|_ is also being produced to be compatible with CMOS. Thicker masks will handle the higher voltage, 15 Vdc, but slows the gate time. 30 V logic is not likely at this time because of the extreme slowing due to the thicker layers.

REAL Practical Terms

Finally, then, what does all this mean in real practical terms for us the users? Let's

85

POWER/GATE IOMW

100/iW

IG>W

l(jW

LS

5V CMOS

/l2L

lOKHz lOOKHz

look at Signetics |2l Deskew FIFO chip as a real practical example. We will notice first of all that a single gate size is 1.5 mi|2 (968 mm2). The pads for wire attachments are huge by comparison, 16 mi|2 (10,322 mm2). [1 mil = 1 inch/1000]. Smaller gate size means more logic per unit area. (This is to imply that |2|_ is most practical for LSI and not for small or medium scale integration, SSI or MSI). The entire Deskew chip measures 125 mi|2 (0.081 mm2). The |2l

Figure 3: Speed Versus Power. This graph indicates the typical relationship of power requirements versus operating frequency for three families of logic. The LS designation stands for low power Shottky TTL gates. The 5 V CMOS curve is typical of CMOS gates run at a Vcc of 5 V. The &L curve dips under the other two in all cases, thus indicating superior efficiency.

portion of the chip measures 90 mi|2 (0.058 mm2). The remainder of the chip is TTL interface circuitry. The |2l portion of the chip, 90 mi|2, draws 200 mW at 10 MHz. The TTL interface circuitry, a much smaller 35 mi|2, draws 220 mW at the same speed. It can be seen that the chip saves considerable power when compared to TTL Deskew chips. And once the TTL interface circuits are dropped so pure |2l logic is used, even more power will be saved. Complete systems using several amps of power in TTL will require only milliamps in |2l.

Basically then, what can be said of the |2l logic? It is a high density logic, which can be made with existing technology and processing. It draws little power and produces high speed. It can be speed adjusted to match TTL, 10 device, or RAM, ROM, or PROM speeds. And at this point in time, all matching TTL interfaces are typically contained on the |2l chip. One last thing: |2l outputs are always open collectors useful for "wired OR" or data bus circuitry. The new |2l logic is an exciting and most advanced technology that will be more and more a significant addition to the field of electronics."

What's

New?

The I MSA I 8080

The IMSAI 8080 is a microcomputer designed for a wide variety of applications, including commercial OEM, laboratory prototype, as well as a central processor for small stand alone systems. Contrary to some popular misconceptions, the IMSAI 8080 is not a Japanese import computer, but is a product of IMS Associates Inc, 1922 Republic Av, San Leandro CA 94577. It is ruggedly constructed around an anodized aluminum card cage and printed circuit Mother Board which accommodates the front panel and up to 22 plug in cards for

memory and IO interface devices. The heavy duty lucite front panel has an extra 8 program controlled LEDs as well as rugged commercial grade paddle switches backed up by reliable debouncing circuits. The IMSAI 8080 power supply has a steady state 20 Amp current capacity, enough to power a full system.

The 8080 can be expanded to a powerful system with 64 K bytes of memory plus a floppy disk controller with its own on board 8080 microprocessor and a disk operating system.

A wide variety of IO devices including an audio tape cassette interface, printer, video terminal and teletypewriter can be used with the 8080. These peripherals will function with an 8 level priority interrupt system. BASIC software is available in 4 K, 8 K and 12 K, obtainable in PROM.

The IMSAI 8080 can be ordered directly from the factory in either kit ($599) or assembled ($931) form. For dedicated OEMs that don't require a front panel, $729 assembled, $529 unassembled. Both the kit and the assembled IMSAI 8080 come with documentation, including an Intel Data Book, IMSAI 460 page Introduction to Microcomputers and IMSAI 8080 User's Manual. ■

Literature Available

OK Machine & Tool Corporation, 3455 Conner St, Bronx NY 10475, distributes a complete line of wire wrapping tools and accessories. Write to them and ask for catalog 36D (March 1976) and price schedule List No. 76-37A to find out about the details of their line."

Don't Let This One SC/MPer Away

Courtesy Stanley Veit, proprietor of The Computer Mart of New York Inc, we borrowed one of these National Semiconductor prototyping kits so that Ed Crabtree could take this picture. Stanley is retailing this complete "evaluation kit" from National Semiconductor through his store to many of the experimenters in the New York area. At a price less than that of a good quality high fidelity ti'rn table, you can try out microcomputer technology using a 20 mA current loop Teletype interface. The kit includes a ROM monitor program to drive the Teletype, 256 bytes of programmable memory, processor, clocking and related circuitry. It comes with a voluminous pile of documenta

tion weighing 13.4 times the weight of the bubble packed processor and circuit card — all neatly contained in a loose leaf binder. Power requirements are +5 V at 350 mA, and -12 V at 200 mA. You should be able to "get on the air" with a standard Model 33 or Model 35 Teletype after about one weekend of study and assembly using this kit. For retail purchase of this item, contact Stanley Veit at The Computer Mart of New York Inc, 314 Fifth Av, New York NY 10001."

Get a

mouthful to

talk about,

Subscribe to

mm

QUALITY

USED TEST EQUIPMT

TEKTRONIX

Oscilloscopes

Plug-ins

Sig. gen.s

Carts HEWLETT-PACKARD

Meters

Probes

Carts For a complete list of available items, write:

PTI

r I I Div. 12 P.O. Box 8699 White Bear Lake, Mn 55110

N. Y.'s Newest Store for Micro and Mini Computer Hardware and Software.

We will be featuring a large selection of: I MSA I (kits and assembled) Processor Technology's full line. Also a selection of choice modules from Cromemco, Solid State Music and others. Plus: full line of TTL logic, discrete components, memory and MPU chips.

Audio Design Electronics

487 Broadway Suite 512 New York NY 10013

87

:

\ / v /I ' Siol^^l

\

l^^^^

_ _ — ^ ,','■'<

j») /I /|

1

mm

Jfr

1 -•: A j ^^^^L*l

^^^

<*-,

»f*S^M

s* /S*S

r1d%r»';

tbdjGBtitH*^^

W ~~

ffc mm, i -*-0-*<J

ri ■f 1

TaK

* v-t»o

"s /^jtafc'i^^^*^^?" *

i 1

i

. 11 -•-^r^*

■■-»j«v--5,r

■\\ / ^^^W^jfm

/

.tv, ■

hK

■

i

X a 'i '#r

,

1 .# •

y

£

s ^5^S|^3*>ia^

S

***

,

< -'

- \

\

*

,/''

f < \

v * - . ■ / ' *

m ■

e. •..

Photo 1: The Spider. Roger Amidon's Spider is depicted in this photograph taken by Sol Libes, president of the Amateur Conjputer Group of NJ, during an informal tour of people's computers May I 1976. Believe it or not, the Spider works and is used by Roger as an element of his radioteletype station. Roger can work on Spider in a comfortable prone position on the floor.

Systems of Note

by Carl Helmers Photos by Sol Libes

Here Is a second example of BYTE's Systems of Note feature. The purpose of Systems of Note Is to document what kinds of systems are being developed and utilized by our readers, and how they are viewing the computer systems field as reflected in their choices of hardware and software components. As an example of another system, here are my impressions of Roger Amidon's rather advanced shop.

Each reader whose system description is submitted and published for this feature will receive an honorarium of $25 as BYTE's contribution to help further the state of the art. . . CH

Roger Amidon's Spider (and Altair)

Roger Amidon, a member of the Amateur Computer Group of New Jersey, was one stop on a tour of personal computers which Sol Libes arranged for several of the people visiting the ACGNJ Trenton Computer Festival May 2. Several years ago, Roger began work on his first personal computer, a 12 bit machine which he and all his acquaintances call "the Spider." Before microprocessors, the only way to make a computer was to do the entire design from scratch using DTL and TTL integrated circuits. Combine that with an amateur's pinched pocketbook, and some innovative (professional technicians please don't shudder too much) assembly methods will be required. Roger's Spider is built using one perforated board vaguely visible in photo 1 (below table level at the corner between two tables) and a lot of little printed circuits which mount one IC and bring the leads out to solder pads. The interconnections are

88

made permanently, using recycled interconnection wire soldered to these pads. A fair number of alligator clip interconnections are also a permanent part of the system for selecting options.

When I viewed the Spider on May 1, it was in operation (as it had been for some time, unbelievably) serving as a control element of Roger's amateur radio radioteletype station, K2SMN. Roger demonstrated its operation using the Model 15 Teletype barely visible at the right of the picture. The physical arrangement spilling off the table onto the floor is due to a cat. According to Roger, he found his cat one day playing on the table in the middle of the Spider. Upon being discovered (and startled) the cat left rather quickly, but unfortunately was tangled in the web. A good portion of the web was dragged off the table. Not daring to move it (for fear of making any damage worse), Roger tried the machine out and found no damage. The serendipity which resulted is that Roger found it quite convenient to work on Spider while lying down on the nice soft rug.

Would Roger build a computer again using the Spider method? Yes and no. His current system, an Altair home brewed from boards purchased from MITS, was largely built using printed circuit and wire wrap. But elements of spiderism are found throughout the peripherals, and a small spider web was quite evident. However, there are some rather obvious disadvantages to the method. It lacks portability, it is prone to noise and RF pickup (a big part of Roger's component count is ceramic bypass capacitors), it has a certain lack of esthetic charm when viewed by some people, and so on. But it works.

His present main system, seen in photo 2, consists of the home brewed Altair with 40 K of home brewed memory, a 9 track surplus tape drive, a tape operating system with fairly advanced file management software for the tape drive, a video terminal borrowed from his employer, a model 35 Teletype borrowed from his employer, etc. He has an excellent assembler and text editor in operation, and the system is partially used for software development in connection with his employment."

Photo 2: Roger's "real" computer in operation. This photo, also by Sol Libes, shows Roger Amidon (seated) at the Teletype terminal of his system, with his main CRT display above. Looking over his shoulder (left to right) are Gary Coleman (president of the Midwest Affiliation of Computer Clubs), Carl Helmers (BYTE) and Hal Chamber/in (of the Computer Hobbyist/ The actual computer and 9 track tape drive are hidden by the onlookers. Elements of the Spider can also be seen between Roger and the terminals.

ALTAIR 8800 OWNERS*

We recently received the following letter:

APRIL 26,1976

GENTLEMEN*

I JUST WANTED TO TELL YOU THAT I THINK YOUR CLOCK FIX-IT KIT 15 REALLY GREAT! I WAS HAVING TROUoLE RUNNING BASIC AND AFTER INSTALLING YOUR KIT FOUR OF »Y HITS BOARDS THAT WEREN'T RUi.MNG CAKE BACK TO LIFE AND NOW ARE HELPING ME TO WRITE THIS LETTER ON THE COMPUTER. ENCLOSED IS ANOTHER ORDER FOR A CLOCK KIT. THIS IS FOR THE SECOND ALTAIR THAT I 'AM NOW I;-.' THE PP.0Cc.SS OF BUILDING. AGAIN MANY THANKS FOR SUCH A FINE PRODUCT.

SINCERELY LLOYL L. S

How well does your Altair run?

A Clock Fix Kit is only $15 postpaid.

PARASITIC ENGINEERING

PO BOX 6314

ALBANY CA 94706

What's

New?

Use This for the "Ship's Console" of Your ENTERPRISE

\"w.

ADS has introduced the Univue keyboard and instrumentation enclosure designed for low profile instrumentation and computer data entry console applications. Special de

sign features include a welded 0.062 inch (1.6 mm) steel body of two piece construction for strength and an outside removable, flush mounted aluminum panel. The 23 x 8 inch (58.4 x 20.3 cm) front panel is removed via six mounting screws to give access to the enclosure interior. Over 200 cubic inches (3277 cc) of interior space is available for housing support electronics. The Univue body is coated with light gray lacquer type primer/surfacer to allow virtually any type paint to be used for the final finish. Overall size is 24 by 12 by 3 inches (61.0 by 30.5 by 7.6 cm). The Univue is shipped with aluminum panel, heavy duty nonskid rubber feet, hardware, and finishing tips. Shipping weight is 17 pounds, with delivery from stock. 1-24 price is $32.95 from Advanced Data Sciences, PO Drawer 1147, Marion OH 43302."

Burn 2708 EROMs with This Programmer

Intel Corporation's version of a microprocessor evaluation product is called the System Design Kit (SDK) and is based on

the 8080 processor. But according to a press release from Microcomputer Techniques Inc, 1120 Reston International Center, Reston VA 22091, there is no facility to program 2708 EROMs with the SDK system.

As a result, Microcomputer Techniques and Cramer Electronics have teamed up to supply a EROM programming board called the 2708 EROM Programmer Cramerkit which at a price of $129.95 adds the 2708 programming capability to Intel's product. An 11 page application note on interfacing this programmer to the Intel SDK is available, giving definitions of all the interface pins, board layout map, operating instructions and a listing of the 8080 program which drives the interface in the context of the Intel SDK. Generalized software for the programmer is provided in the Cramerkit reference manual, which is available for $5. The software can easily be adapted to the Altair 8800 and other 8080 kits."

Attention Retailers: Here is One Way to Sell Computers

A relatively new retail computer operation is the Personal Computer Corporation, located at Frazer Mall, Routes 30 and 352, Frazer PA 19355. The company has been in operation at the mall since March 9 1976, and features a full service computer store operation with the IMSAI and Digital Group products, a full time sales staff of three plus several part time people, and a full time programmer on the premises. The interesting

retailing point is this: The company acts as a systems house by assembling a completely integrated system package called the "Personal Computer System." The standard sizes are 6 K memory and 10 K memory, selling at $1495 and $1655, respectively — over the counter. These systems, according to the sales literature, come in an "attractive wooden cabinet with gold buffed and anodized covers and remote keyboard box with anti-glare top surface." The standard system includes video and tape interfaces with all hookup cables, power supply module with

90

NEW FROM MARTIN RESEARCH. .

MODULAR MICROS . . .

The modular micros from Martin Research provide all the advantages of microprocessor technology. These versatile printed circuit modules communicate via a bus structure, compatible with:

• The MIKE 3 series, based on the industry standard 8080

. The MIKE2, based on the 8008for small industrial controllers

• The new MIKE 8, based on the Z80 from Zilog/Mostek-combining the best features of the 8080 and 6800

THE MIKE 3. . .

The MIKE 3 typifies the modular micro approach. An optimal small system, yet fully expandable. The AT813 is a three-board system, based on the Model 471 CPU board, with an 8080A microprocessor. The system comes with a Model 420 Console board, featuring a calculator-style key board and six fully-decoded LED digits. The third board is a Model 423 PROM/RAM board, with 512 bytes P/4K) of RAM and a versatile MONITOR program in a PROM. The MONITOR allows the user to program the computer with the keyboard, visualizing the results on the LED digits. (The 423 board has capacity for up to 1K of RAM and 2K of PROM.) An ideal small system for prototyping and for educational use, the AT813 lists for only S395.00, fully assembled and tested.

A similar MIKE 8 system, for the Z80, is available. Contact us for prices.

NEW DEBUG SYSTEM!

Martin Research takes pride in announcing the AT814, a MIKE 3 computer featuring a powerful but low-cost diagnostic package. Designed for use in development, trouble-shooting, and educational applications, the 814 is one of the most powerful basic development systems available today.

DEBUG PROM . . .

This software package supplements the MIKE 3 MONITOR by allowing the user to step through programs one instruction at a time, using the console keyboard. Unlike the step/ run switch on other computers, however - which simply deactivates the CPU between instructions—the DEBUG PROM maintains full processor activity. After executing each instruction, the user can inspect the status of every data register in the computer— any desired memory location (including the program stack) and the 8080's internal registers and flags! Or, the user can set a breakpoint at any desired location, even a point in PROM or ROM memory.

32-Channel Scope Display

The 32-Channel Microprocessor Data Display allows the user to inspect all important computer signals on an external single-trace, triggered sweep oscilloscope, 16 channels at a time. When a switch on the Model 472 Debug Board is pressed, the 16 address lines are displayed; otherwise, the data bus and selected control signals appear on the scope. Two probes on the 472 board may be used to trace any desired signals in the computer.

The AT814 comes with the 472 Debug board (with space for custom interface circuitry), 471 CPU board (with 8080A), console board, and 423 PROM/RAM board (MONITOR and DEBUG PROMs, and %K of RAM). Fully assembled and tested, the AT814 lists for $495.00.

microcor

esign

Thousands of copies of our innovative book on microprocessors, published in 1974, were purchased by engineers and designers around the world. . . .for $75 each. Now, MICROCOMPUTER DESIGN - revised, expanded, and reprinted in paperback -is available for $25.00! Over 400 pages on quality white text paper, including:

• 8080 circuits, theory o f opera t/on

• Vectored interrupts, for all 8-bit central processing units

• Efficient bus structure design

• Interfacing to timers, A/D converters, keyboards, digits, and other I/O devices

• Plus much more!

SPECIAL: The MIKE 2 Manual is a complete guide to our 8008-based micro, with schematics, theory, and software listings for the MONITOR 8 operating system. Over 1 50 pages long, the Manual normally costs $15. Now, MICROCOMPUTER DESIGN, plus this Manual, only $29.00! Applies to prepaid orders received before October 1, 1976.

BankAmericard, Master Charge accepted. U.S. prices-foreign delivery extra. Stocked by Semiconductor Specialists!

3336 Commercial Avenue, Northbrook, IL 60062 USA • (312)498-5060

modular micros

martin research

ample reserves for expansion, cooling fan, 6 K of memory, operating system software on cassette tape and documentation. With expansion to 10 K using one 4K memory increment, the system comes with a 10 K BASIC package on cassette tape. Since the "Personal Computer System" package is sold

as a complete unit over the counter, demonstrated at the store, the need to become a hardware hacker is minimized. Thus the number of potential customers is maximized and this product should sell quite well since it provides its buyer with a "minimum hassles" system. ■

Photo 1.

Here's a Pair of Hardware Debugging Tools of Note

Continental Specialties Corp has announced two new debugging tools which will help you analyze hardware faults in circuitry

Photo 2.

of microcomputers. One is the $44.95 LP-1 logic probe shown in photo 1. This is a hand held unit which uses system power supplies accessed via clip leads (with reverse polarity and over voltage protection). The input to the probe is high impedance (100 k ohms) so there is no loading problem in analyzing active digital circuitry. The input network includes a mode switch to select CMOS or TTL/DTL logic levels.

The second product is billed as a "second generation logic monitor" and is the $125 LM-2 instrument shown in photo 2. This is a 16 pin parallel logic level indicator which clamps over the circuit under test, plus a separate power supply base with a logic family threshold selection including RTL, DTL, TTL, HTL and CMOS families. Since all power is derived from a separate power supply, there is no problem of overloading a system power supply during a test. Readout is at the top of the clip which interfaces to the integrated circuit under test."

Attention: ALTAIR/IMSAI/MicroALTAIR Hardware Hackers

A new universal microprocessor board, from Vector Electronic Company, lets Altair, IMSAI and other microcomputer users add circuits in a convenient and inexpensive manner. One universal board, identical in size to those used in the Altair, serves for RAM, ROM, or PROM memory expansion, for peripheral interface hardware requirements, or for IO circuits such as A-to-D, D-to-A converters, multiplexers and relays.

The Vector model 8800 V board is prepunched with 0.042 inch (1.1 mm) diameter

holes on 0.1 inch (0.254 cm) centers so that the user can place dual in line packages or sockets in any location. Typically, the board holds two 40 pin DIPs, eight 24 pin DIPs and 36 14 or 16 pin DIPs. Alternatively, it can hold 52 14 or 16 pin DIPs, or ten 40 pin DIPs and eight 24 pin DIPs — or any combination in between. This flexibility is especially important with the 1 K or larger memory devices which may have 18, 20, 22, or 28 pin packages.

The designer may use any dual in line packaged device without modifying the board. The boards also have space for discrete devices and for ribbon-wire connectors. Column and row zone coordinates as well as column and row hole designators are etched into the laminate.

Power is distributed to each potential device location by the power and ground planes on opposite sides of the board. These also give distributed decoupling capacitance. Additional capacitors can be located adjacent to the DIPs.

The board has two copper heat-sink positions on the component side for on

92

board regulators. One position is pre-wired and pre-drilled for 7800 series regulators in a TO-220 type case. Unregulated power input from connector pin one is connected to the appropriate regulator lead; regulated power is distributed via the power plane on the component side. Ground potential is routed from connector pin 100 to the plane on the wiring side. The second regulator position is uncommitted. Provisions are made to cut power conductors for special applications. One low profile, finned heat-sink is supplied with each board.

The 5.313 inch by 10 inch (13.5 cm by 25.4 cm) boards are manufactured of blue 0.06 inch (1.52 mm) FR-4 epoxy glass material. Two ounce 0.0028 inch (0.07 mm) thick copper foil pattern has solder plating for conductors and gold-flashed nickel plating for connector contacts. The card has 100 (50 each side) connector fingers spaced on 0.125 inch (0.318 cm) centers. Holes are provided for card ejectors.

The 8800 V boards, priced at $19.95 (1-4), are available off the shelf from Vector Electronic Company Inc, 12460 Gladstone Av, Sylmar CA 91342, or through 92 distributors in the United States and Canada. Full size layout sheets showing hole and bus location are provided with each board."

Introducing

A New and Unique

Computer Graphics Terminal

To Fit Your Altair

* B+W Matrix of 128 Horizontal x 192 Vertical Dots

* 3K x 8 No Wait, Static RAM, ON BOARD

* Light Pen And Control Panel Included

* Bandwidth is Compatible with standard TV Set

* Output is 2.25V PP Video

GDT-1 is a 2 slot Altair plug-in graphics terminal that generates 24K dots on a standard B+W TV set. Unit displays data stored in on board 3K x 8 memory, which is fully computer accessible. Control panel allows data to be entered by light pen or computer.

Kit $185., Assembled $235

Computer graphics, Associates

56 Sicker Road Latham, N.Y. 12110

N.Y. Res. add Sales Tax - Add $2.00 Shipping Send $1.00 for Data Pkg.

S.T.M. SYSTEMS Not a Kit Presents Fully Tested

BABY!

A complete microcomputer in an attache case.

The unit uses the MCS 6502 8 Bit Microprocessor.

Up to 4K RAM fully buffered * Slot for 4K ROM

(2708 type)

DMA, Video Interface (composite video) sixteen 32

character lines.

Audio cassette Interface (data rate approximately 1200

BPS load 8t dump).

I/O ports with 1 PI A 6820, 6520 type.

Typewriter type 63 key keyboard, (upper and lower

case plus Greek with control key).

Power supply 120 VAC to 5 volt 3 amp fully regulated.

Speaker, two (2) LEDs, DMA, 60 Hz real time clock,

video on and off keyboard and audio cassette dump

and load format all under program control.

The first 200 systems sold will have a frosted Plexiglas

case! Standard unit will have molded plastic case,

Plexiglas case will become an option.

Audio cassette tape supplied with dump program, text

editor, games of Shooting Stars, Life and Ticktack Toe,

Music Program (self generated computer music and

user generated from keyboard).

* Basic unit with 2K RAM and 512 Byte bootstrap loader and monitor in firmware (PROM) ... $ 850.00

Unit with 4K RAM $1000.00

Remember it's not a kit, it's fully tested and ready to go. Just plug BABY! in hook up your video monitor, load your auto cassette with the programs we supply and you're off and running. Option Video Monitor $150.00

Be the first person on your block to have this unique, completely portable system.

ORDER TODAY: S. T. M. SYSTEMS

P.O. Box 248 Mont Vernon, N.H. 03057

D BankAmericard Exp. IZI Master Charge No.

DCashier's Check

D Money Order

Personal Check (allow 6—8 weeks for personal check to clear.) Delivery 60 to 90 days after Receipt Of Order

Name

Address City

State

Zip

Ask for our OEM discounts on customized version. See write-up on page 122 of this issue.

93

PRIZES

Grand prize winner will receive, in addition to the fame of having his entry appear on the cover of the December 1976 issue of BYTE,

• $100

• A lifetime subscription to BYTE

• A bound volume of BYTE Volume 1.

Two runners up will receive $100 and a five year subscription to BYTE. Five honorable mention winners will receive a tee shirt wardrobe (one from Creative Computing, one from Computer Lib, and one from BYTE) and a one year subscription to BYTE.

COMPUTER ART CONTEST

BYTE announces a contest for artwork suitable for use on the cover of BYTE Magazine. Entries can either be artwork created by a computer or human produced artwork on a computer theme.

All entries become the property of BYTE Publications but will be returned if accompanied by a self addressed stamped envelope. Though only one grand prize winner will be chosen to appear on the cover of the

December 1976 issue of BYTE, any entries

which the BYTE staff like well enough to

use as covers will be purchased at our usual

rates.

All entries must be received by August 31

1976.

Mail to:

Ms Janice Black

Contest Editor

BYTE Publications Incorporated

70 Main Street

Peterborough NH 03458

94

Functional Specifications:

An electronic device or computer program is defined by a "functional specification" detailing what it is to do. In a similar vein, here are functional specifications of two articles which should appear in future issues of BYTE — the rewards to the writers of the articles selected will be publication in BYTE (fame) and our top payment rate at the time of publication (fortune).

Direct Digital Recording — Theory and Practice

An individual with experience in design and implementation of magnetic recording interfaces is sought to supply an article on the design and practical implementation of electronics to drive a digital magnetic recording head in an output mode and decode the input from that head in a read mode. Background material might include definitions of the various industry standard recording methods, and selection of one such method for a detailed circuit which can be used by the individual experimenter. The circuit designed should include generation and decoding of the data format from a parallel data word read or written by a microprocessor following an interrupt signal. The article should be accompanied by photographs of the prototype, photographs of oscilloscope traces indicating circuit timing, and rudimentary software for an existing microprocessor to illustrate testing and alignment as well as normal data read and write operations. The rationale for this function is that it will enable readers to use surplus tape drives or disk drives by the strategy of ripping out the old (undocumented) electronics and installing new interfaces from the head outward. It will also allow use of

new equipment purchased without head interface electronics.

Serial File Systems — Theory and Practices

An individual with experience in the design and implementation of file management systems for serial recording media with electronic control is sought to supply an article or articles on the subject. The goal is to define what is meant by a "file," concepts such as naming, directories, search strategies, record formats, etc. The goal is a functional specification of utility software which can be implemented for any microprocessor with appropriate detailed code. The program specifications should be made either in the form of flow charts or structured "pseudo code" (see Ronald T Herman's article on page 22 of June 1976 BYTE). The article should be accompanied by illustrations to document data formats and other details. The rationale for this function is that given an electronically controlled tape drive, the individual experimenter will be able to take this software specification and implement a system to create, update and delete named files.

The purpose of stating these specifications is to encourage work in these areas, work which will be of great utility to our readers. Our intention is to publish at least one high quality article on each subject as soon as possible. Remember that with few exceptions, BYTE authors are not professional writers, but are instead experimenters (professional or amateur) in the computing field who record the results of their efforts in the form of manuscripts submitted to BYTE. ■

SOLID STATES MUSIC PRODUCTS

Static Memory Boards (4Kx8) MB-1 Mk-8 Board Kit $103 PC Board $22

MB-2 Altair 8800 board with on board address & wait switching.

Kit(2102's 1us) $112

Kit(91 L02A's) $139 PC Board $25

Erom Board

MB-3 EROM Board with on board address and wait switching. 2Kx8 may be expanded to 4Kx8

2K Kit $145 4K Kit $225

Kit Less EROMs $65

I/O Boards

1/0-1 8 bit parallel in & out ports Common address decoding jumper selected, Altair 8800 Plug compatible. Kit $42 PC Board $25

I/0-2 I/O for 8800, 2 ports committed pads for 3 more, other pads for EROMs, UART, etc. Kit ... $47.50 PC Board $25

Misc.

Altair compatible mother board . . . .$45

32x32 Video Board $35

Altair extended board (less con.) . . . .$8

2102's

1usec

.65usec

.5usec

ea. 32

$1.95 $59

$2.25 $68

$2.50 $76

8212

$5.00

1702A*

$10.00

MM5320

$5.95

2101

$ 4.50

AY5-1013 UART

2111-1

$ 4.50

$7.95

2112

$ 4.50

74200

$5.90

8223

$ 3.00

74L200

$5.90

91L02A

$ 2.55

MH0025

$2.50

32 ea.

$ 2.40

MH0026

$2.95

'Programing send

8T97

$2.10

Hex List

$ 5.00

Please sen

d for com

plete listing of IC's and

Xistors at competitive prices.

MIKOS

419 Portofino Dr. San Carlos, Calif. 94070

Check or money order only. Calif, residents 6% tax. All orders postpaid in US. All devices tested prior to sale. Money back 30 day Guarantee. $10 min. order. Prices subject to change without notice.

95

Interfacing the

60 mA Current Loop

Walter S King

451 -145th Place NE

Bellevue HA 98007

TT~~f

32

KEYBOARD

/77

Generally the older Teletype units such as model 15s, 19s and 28s require a 60 mA loop to operate the printer. These older machines are not as attractive looking as the newer model 32s and 33s, but for the Altair computer hobbyist, looks are probably second to costs. The 60 mA interface cir

I2VDC

T4.BV TzENER

D>^

■RSI TO UART

Figure 1: Input Circuit. The Teletype generates Baudot codes mechanically by activating switch contacts according to the code being generated. To condition the inputs for the UART, this circuit will debounce the signal and convert it to a TTL level.

cuits shown below are simple, straightforward, and do an effective job.

Circuit Notes

The loop keying transistor, 2N5655, is a 250 V power tab purchased at two for $1 at a surplus house. In the mark state, this transistor is fully saturated. The collector dissipation is 0.7 V x 0.060 A or 0.042 W. In the space state, with no collector current, the dissipation is zero. Heat sinking is not required. The 0.1 /iF and the 470 ohm resistor protects the keying transistor from voltage spikes generated by the inductance of the printer magnet. The 10 K ohm resistor in base circuit limits the current supplied by the UART TSO output gate to a safe value when in the mark state. The variable resistor in the loop should be adjusted with a milliampere in the circuit. Set the loop current to 60 mA. A pull up resistor, 1 k ohm, is connected to the keyboard and +5 V to generate a TTL level keying signal. The 1 juF capacitor in parallel with the keyboard is used to smooth out any contact bounce. The 4.8 V zener diode clamps the space signal to 4.8 V (logic I). Also, hopefully, it will act as a crowbar

Figure 2: Printer Drive Circuit. The 60 mA current loop is a circuit which normally passes 60 mA through all the printer magnets and keyboard contacts of Teletypes which are "in the loop." This circuit drives the printer mechanism only by using a TTL level signal from the UART to control a transistor switch.

I

45 >>

PRINTER MAGNET

>F

400VDC 470 /2W

PHYSICAL LAYOUT OF 2N5655

-METAL FACE

I

Rl 2K OW

I30VDC LOOP POWER SUPPLY

T

96

120 VAC 60 Hz

2A

Sh

circuit (short to ground) if high voltage were to appear in the keying circuit by accident.

External Connections

It is a good idea to mount the keying transistor on a perforated board separated from the serial 10 board. An inadvertent short circuit to the high voltage loop could wipe out the serial 10 board integrated circuits. The keyboard contacts on a Model 15 or 19 are usually terminals number 32 and 34. The printer magnet terminals are numbers 46 and 45. If there is a line relay in the machine, remove it and discard it.

UART Connections

If you are using a Model 15 or Model 19, the Baud rate is 45. The UART clock preset count for 45 Baud is 2454 in octal. The Model 28 with 100 word per minute gears runs at 74.2 Baud. The preset count for 74.2

Figure 3: To complete the adaptation of a 60 mA TTY to your UART, this simple power supply will provide the necessary voltages. The transformer should have a secondary with at least 90 volts AC input to the bridge rectifier. The actual value could be 90 to 120 volts or so depending upon what you can find in the junk box of your home laboratory. The capacitor value of 1750 pF is also not critical. The voltage rating should be higher than the output peak of the bridge rectifier and the value should be greater than 500 fiF.

Baud is 4553 in octal. Since these older Teletypewriter machines use only five data bits, the UART jumpers NDBI and NDB2 must be wired to GND. The NSB jumper is connected to logic 1 which selects 1-1/2 stop bits when NDB1 and NDB2 are grounded.

If read errors begin to occur on the keyboard, it is probably due to an oil film on the keyboard switch contancts. Use a little carbon tetrachloride solvent on them or carefully pull a piece of paper between the contacts to clean them."

0 0

p

101 BASIC Computer Games is the most popular book of computer games in the world. Every program in the book has been thoroughly tested and appears with a complete listing, sample run, and descriptive write-up. All you need add is a BASICspeaking computer and you're set to go.

101 BASIC Computer Games. Edited by David H. Ahl. 248 pages. 8V2x11 paperbound. $7.50 plus 75d postage and handling ($8.25 total) from Creative Computing, P.O. Box 789-M, Morristown, NJ 07960.

j2 Gmw

Mil Description

C ACEYQU <D AMAZlN

mo

Try lo hit ihe mystery jackpot

Playaceyducey wildIhecompute'

HI 4

Try to remove all (he pegs Irom a board

Computet construct a maze

HMRABI

Govern the ancienl city-stale ol Sumer ia

"£= ANIMAL

Computer guesses animals and learns new

HOCKEY

IceHrxkeyvs Cornell

o

ones From you

HORSES

OH-ttack belting on a horse race

V AWARI

Ancienl game ol totaling beans in pus

HURKLE

Find the Hurkle hiding on a 10110 grid

U BAGLES

Guess a mysiery 3-digil number tiy logic

KINEMA

Drill in simple kinematics

. BANNER

Pi mis any message on a large banner

KING

Govern a modern island kingdom wisely

i. BASBAL

Baseball game

LETTER

Guess a mystery tetter - computer

■L BASKET

Basketball game

gives you clues

V BATNUM

Match wits in a bailie ol numbers vs

lift

John Conway's Game ol Lite

m

the computet

UFE-2

Compeiiiive game ol lite 12 or more

mm BATTLE

Decode a matr ii to locate enemy

playttsl

battleship

LITQ2

Children's literature qui/

BINGO

Computet prints yout card and calls

MATH01

Children's arithmetic drill using

the numbers

pictures ol dice

BLKJAC

Blackiack Ivery comprehensivel. Las

MNOPLY

Monopoly Itx2players

Vegas rules

MUGWMP

Locate 1 Mugwumps hiding on a 10 i 10

BLKJAK

Blackiack | standard game)

grid

BOAT

Destroy a gunboat Irom your submarine

NICOMA

Computer guesses number you Hunk ol

BOMBER

F ly World War 11 bombing missions

HIM

Chinese game oINim

BOUNCE

Plot a bouncing ball

NUMBER

Silly numbet matching game

BOWL BOXING

Bowling al Ihe neighborhood lanes 3-tound Olympic boxing match

1CHECK

Challenging game lo remove checkers Irom i board

BUG

6ULC0W

Roll dice vs the computer to draw a bug Guess a mystery 5-digil number vs

ORBIT

Destroy an orbiting germlaiden enemy spaceship

BULEYE BULL

Ihe computet Throw dans You're the matador in a championship

PIZZA

POFTRY

Deliver pmas successfully Computer composes poetry in 4-part harmony

BUNNY

bull light

Computer drawing of the Playboy bunny

POET POKER

Computet composes random poetry Poker game 3-dimensional liciac toe

BUZZWD

Compose your speeches with the latest

OUBIC

CALNOR

buz Avoids Calendar loi any year

QUEEN

Move a single chess queen vs Ihe

computet Order a series ot numbers by reversing

CAN-AM

Dnve a Group 7 car in a Can Am load race

REVHSE

CHANGE

Computer imitates a cashier

ROCKET

Land an Apollo capsule on the moon

CHECKR

Game ol checkers

R0CKT1

Lunar landing horn 500 leet 1 with plot)

CHEMST

Dilute kryplocyanic acid lo make n

R0CKT2

Very comprehensive lunar landing

harmless

ROCKSP

Game ol rock, scissors, paper

CHIEF

Silty arithmetic drill

ROULET

European roulette table

CHOMP

Eal a cookie avoiding Ihe poison niece

RUSROU

Russian roulette

12 or moreplayersl

SALVO

Destroy an enemy Heel at ships

CIVILW

Fight ihe Civil Wat

SALVOi

Destroy 4 enemy outposts

CRAPS

Play craps Idicel. Las Vegas style

SLOTS

Slot machine lone aim bandit 1

CUBE

Negotiate a 3-0 cube avoiding hidden

SNOOPY

Pictures ol Snoopy

landmines

SPACWR

Comprehensive game ol space war

OtAMND

Prints 1 page diamond patterns

SPLAT

Open a parachute at the last possible

DICE

Summaries dice rolls

moment

DIGITS

Computer tries lo guess digits you

STARS

Guess a mystery number - stars give

select at random

you clues

DOGS

Penny arcade dog tace

STOCK

Stock market simulation

EVEN

Take objects f torn a pile - try lo end with

SYffONM

Word synonym drill

an even number

TARHT

Destroy i targel in 3-0 space

IVENI

Same as EVEN - computer improves

very tricky

its play

30 PLOT

Plots families ol curves- looks 3

FIFTOP

Solitaire logic game - change a row

dimensional

olXsloOs

TICTAC

Ticlac'loe

FOCTBL

Professional tootball 1 very comprehensivel

TOWER

Towers ol Hanoi punle

FOTBAl

High School football

TRAIN

Time-speed distance quti

FURS

Trade luts wilh the while man

TRAP

Trap a mystery rumbei -computer gives

GOLF

GdII game-choose your clubs and swing

you clues

G0M0KO

Ancenl board game at logic and strategy

23MTCH

Game at 23 maiches - try not to take

GUESS

Guess a mystery number - computer

the last one

gives you clues

UGLV

Silly pralile plot ol an ugly woman

GUNNER

Fire a cannon al a stationary targel

WAR

Card game of war

GUNERI

F ue a cannon a! a moving target

WAR-2

Trooptaclrcsmwar

HANG

Hangman word guessing game

WEKDAY

Facts about your birthday

HELLO

Cempuler becomes your friendly

WORD

Woid guessing game

psych i at n si

YAHTZE

Dice game olYahtiee

HEX

He«apawngame

ZOOP

BASIC programmer's nightmare

oc

(f oc oc

0

oc

0 CL

97

What's

New?

Build This Printer Kit

Southwest Technical Products has just announced a new printer kit which provides an economical hard copy option for personal

systems users. The kit, shown assembled in the photograph, contains a mechanism and drive electronics. The mechanism of this product is an OEM printer of a type widely used in "point of sale" terminals and electronic cash registers. Since it was designed for mass production and rugged commercial use, the mechanism is inexpensive and will probably prove to be quite reliable in the home environment.

The printer produces a 5 by 7 dot matrix character with 40 characters per line. The maximum rate is quoted as 75 lines per minute (multiplying out gives a character data rate of 3000 characters per second). The drive electronics includes a 40 character line buffer; printing begins automatically if the buffer is full, or whenever a carriage return character is sent. The character set is a six bit ASCII subset with 64 characters.

The printer is only available in kit form, and includes the assembled print mechanism, chassis, circuit boards, components, 120/240 VAC 50 or 60 Hz power supply, assembly instructions, one ribbon, and one roll of paper. It sells for $250 postpaid in the USA, and delivery is quoted as 30 days after receipt of order. Contact Southwest Technical Products Corporation, 219 W Rhapsody, San Antonio TX 78216."

OEM Floppy System Kit

One of the major subsystems which the complete small system must have is an electronically addressable mass storage device. One solution to this requirement which will be within reach of many amateurs is a

floppy disk subsystem. For those who do their own interfacing and are not afraid to wire up a parallel port, this "OEM Floppy System Kit" from Sykes Datatronics Inc should prove to be an excellent subsystem assembly. It is designed to be sold to electronic engineers in the same way that the various OEM oriented microprocessor evaluation boards are sold, which is why there is a package available in quantities of one which the advanced amateur can use.

Here is what you get: The kit consists of a smart disk controller for either IBM compatible or dual density formats, capacity for one, two, three or four daisy chained disk drives (one comes with the kit), interconnecting cables from the controller board to the disk drives, and a hardware interface for connecting the floppy system to microcomputers.

The controller itself is packaged on a single printed circuit board which mounts directly on the disk drive. The controller provides hardware versions of functions which are often done in software, including: hardware address search, automatic sector

98

and track sequencing, an asynchronous first in first out (FIFO) buffer, and automatic cyclic redundancy check generation and detection. In the dual density format mode, the controller writes 630 K bytes per diskette, and in the IBM compatible format mode, the controller writes 256 K bytes per diskette.

The microcomputer 10 interface of this controller is an 8 bit bidirectional bus whose logical configuration is similar to a microcomputer memory element. Only 13 parallel lines are required for the complete interface to transmit data, disk commands and disk status information. The typical interface will require only 6 to 8 integrated circuits in the microprocessor to generate the control signals.

As an example, one PIA port on the typical 8 bit microcomputer has 16 bidirectional data lines plus programmable control lines, which should be more than adequate to drive this interface through relatively short cables. The price for a single drive kit in single quantity is $1398. OEM quantity discounts are also available, so full service computer stores might find this an attractive package as well. Sykes Datatronics Inc is located at 375 Orchard St, Rochester NY 14606 (716)458-8000."

8,192 x 8 BIT STATIC MEMORY EXCEPTIONALLY LOW POWER

KIT $325.00 SPECIAL THIS MONTH ONLY $295.00

* ALTAIR 8800/ IMSAI 8080 BUS COMPATIBLE

* FAST 215 nS- FULL SPEED- FOR Z80 ALSO

* EXCEPTIONALLY LOW POWER - LESS HEAT

* LESS THAN OTHER "LOW POWER" MEMORY

* BATTERY STAND-BY CAPABILITY

* ALL SIGNALS TO MOS DEVICES BUFFERED

PROTOTYPING BOARD EXTENDER CARD HEX/OCTAL ENCODER

LOW PROFILE IC SOCKETS

EDGE CONNECTORS

DB25CONNECTORS

NJ RES. ADD 5% SALES TAX. SHIPPING EXTRA, ADD $2.00

ALL PRICES & SPECIFICATIONS ARE SUBJECT TO CHANGE WITHOUT NOTICE. PRICES ARE USA ONLY.

ELECTRONIC CONTROL TECHNOLOGY P.O. BOX 6 UNION, NJ 07083

'iStf'T It TTNVE YJJJ OHDERXP SotKfl

CREATIVE

CaMPLITJNG STUFF!!

Creative Computing Magazine

A bi-monthly 88-page magazine for students, hobbyists, and anyone curious about computers. Fiction, articles, humor about computers, cybernetics, careers, building info., etc. Emphasis on games, puzzles, and projects. Contemporary, non-technical approach. Subscription. $8.00 pp.

Games & Puzzles Issue of Creative Computing

88 pages of games and puzzles for pocket calculators, computers, and humans. "Beating the Game," "Computer Chess," "Hunting a Wumpus in a Cave," building your own computer, reviews of 24 games, books, and much more! $1.50 pp.

Futures Issue of Creative Computing

Artificial Intelligence (Bertram Raphael, Herbert Dryfus, etc.), Extraterrestrial Intelligence (Isaac Asimov, Martin Harwit, etc.), microprocessors, videodiscs as an ultimate computer input device, 4 new games, and more. 88 big pages! $1.50 pp.

Artist and Computer

A high-quality, 4-color book edited by Ruth Leavitt which displays the work of 35 internationallyknown computer artists. Each artist describes his or her work in non-technical terms. 140 illustrations. $4.95.

tOVKC !

The Best of Creative Computing

A 328-page book featuring stories by Isaac Asimov and others; articles on cybernetics, robots, computer crime, privacy; computer games such as Star Trek, Rabbit Chase, Magic Square, Madlib, and 14 more; super computer graphics; cartoons, reviews; poetry; and more! $8.95.

Creative Computing T-Shirt

Albert Einstein portrait produced by Blocpix™ process. Scarlet trim, black design. Available in adult sizes: S, M, L, XL. $4.00 pp.

Mr. Spock Computer Image

Big 17x22" computer scanner image. Heavy stock. Comes in strong mailing tube. $1.50 pp.

Star Trek People Computer Images

Six 8'/zx11 computer images on heavy stock of Kirk. Spock, McCoy, Scott, Chekov, and Uhura. $1.50 pp.

101 BASIC Computer Games

A collection of 101 games in BASIC, each one with a complete listing, sample run, and write -up. 256 pages. $7.50.

Please send me the following: Item

Price

Shipping (books only) $1.00

All orders outside U.S.A. add $1.00

New Jersey residents add 5% sales tax

Total ^____ DCash, check, M.O. enclosed

DCharge my Bankcard (minimum charge $15)

DBankAmericard DMaster Charge

Acct. No.

Expiration date. Mo..

.Yr.

Name.

Address

City

State

.Zip.

Creative Computing, P.O. Box 789-M, Morristown, N.J. 07960, U.S.A.

99

Clubs and Newsletters

Word Processing, Anyone?

Robert H Edmonds, PO Box 464, Estudillo Station, San Leandro CA 94577, is interested in applications of personal microprocessor systems to word processing. He writes:

/ am interested in microcomputers in order to get a word or text processing device. I want to be able to write articles or letters, type them once, revise and then retype them without inputting the whole text again. I do not know of any special interest group or club that pursues this application for the home hobbyist or writer. The major economic obstacle is the cost of a good output typewriter (Diablo or Qume). The audio cassette interface makes it feasible for a group of people (writers, etc) to get an output device with each having his own input and editing facilities. Commercial word processing equipment is just too expensive for home use.

Robert requests that anyone interested in this application communicate with him.

Oregon Computer Club

An as yet unnamed computer club has been formed in Oregon, according to John R Lynch Sr, secretary. A naming process is currently in progress, and an official constitution is in the works. Membership as of

May 4 1976 was 49, with approximately 40% of the members owning some form of computer. The club meets on the last Saturday of the month. For information on time and place, contact one of the officers elected on March 20 of this year:

Chairman: Bill Marsh, 2814 NE 40th,

Portland OR 97212. Secretary: John R Lynch Sr, 2105 SW Wembley Pk Rd, Lake Oswego OR 97034, phone (503) 636-8598. Treasurer: Joseph Bartel, Portland OR. Program Director: Mike Boyd, Milwaukie OR.

Midwest Alliance of Computer Clubs

The Midwest Alliance of Computer Clubs is an association of different clubs in the midwest. President is Gary Coleman, 14058 Superior Apt #8, Cleveland OH 44116, (216) 371-9304. Purpose of the alliance is to coordinate activities which are beyond the scope of any one club. The first major activity was a Computerfest held June 11, 12 and 13 in the Cleveland suburb of Shaker Heights.

Ventura County Computer Society

A copy of the Volume 1, #1 issue of the VCCS Newsletter came this way recently. The president of the society is William B Cowley, 4240 Harbor Blvd #208, Oxnard CA 93030, 985-2631 or 982-4783. The newsletter reported a hardware buildup group working, on a bit slice version of an Altair/IMSAI CPU board and a business group discussing applications to commercial activities of members, among other activities. And of course there is the ever present group purchase operation.

NASA-JSC Computer Hobbyist Club (Houston TX)

The NASA-JSC CHC was formed on November 5 1975. Circa April 16 1976, the club consists of some 30 members and is sanctioned by the NASA Employees Activity Association. The group ranges from interested novices to computer experts. Many of the members, according to Marlowe

100

BE:

:,;..,«:*>>'"'

.

1 .■-' . ■■■■; v

-?%''

v , •

1 $ 1! I

K^^?,s^j'^-*

,....*,;*»

ife*

«P^*^*PM

li H H

Personal

^ Computing

76

Consumer Trade Fair

Atlantic City, N.J. August 28th-29th

HlBferiMm1

&«' ';:v ..."

wr;*

u*-*>

v& S if *

r What its all about!

Software Development

Micro Computers

Hardware Development

Disc Memories

Computer Comparisons

Interfacing

Program Implementation

AMSAT

Computerized Music

I ■■■

Video Terminals

Kit Construction

Printers

Computer Games

Digital Tapes

i;*s ::':ii-.iefTi'maWafra Technical talks by leading electronic equipment manufacturers

• Major Exhibits from all over the country

• Demonstrations in many areas including Home and Personal Computing

• Door Prizes, Free Literature and Free Mementos

• All this plus Sun and Surf - Fun and Excitement - Relaxation and Leisure

Weekend Fair admission $5.00 advanced. $7.50 at door !: Admission includes Exhibits, Seminars

Write for FREE TRIP-KIT to Personal Computing 76 Fair Headquarters Shelburne Hotel-Motel Box 1138 Boardwalk and Michigan Ave. Atlantic City, New Jersey 08404 EXHIBITION BOOTHS STILL AVAILABLE - CALL (609) 927-6950

Jtotf)

m

J

Cassetti [1011 Devonport Ln, Seabrook TX 77586, (713) 474-2923] have either a microcomputer or plans to acquire one. Meetings are twice a month at the JSC recreation center, and feature a lecture or demonstration after a short business meeting. The meetings also promote information exchange and advice for beginners. Although membership is limited to NASA employees and contractors' employees, guests that share this common interest are welcome. For more information contact Marlowe.

Canadian Computer Club

The needs of Canadian personal computing hackers have been addressed by the new Canadian Computer Club, which has published Volume I #1 of a newsletter late in March. The newsletter looks like an excellent start. For further information contact:

Canadian Computer Club

c/o G Pearen

861 -11th St

Brandon, Manitoba CANADA R7A 4L1

Phone: (204)725-1079

Clubs and Newsletters Directory

As a summary of the current state of local, regional, and national organizations, special interest groups, and periodicals of interest to personal computing people, BYTE will publish a directory in a forthcoming issue. We would appreciate it if each such organization would provide a summary of applicable information in the following list:

• Name of organization [eg: Silicon Hollow Computer Coven].

• Mailing address [eg: PO Box 31, Silicon Hollow, Transylvania 00000].

• Meeting location [eg: Third stump past the 11th sinkhole on the old Silicon Hollow game trail].

• Meeting algorithm [eg: "First Tuesday after the second Wednesday before the first full moon of leap years"].

• Name of newsletter or publication [eg: Silicon Boule].

• Contact person [eg: Witch Hazel].

• Contact phone number.

• Dues or subscription fees.

• Special interests [eg: Computer applications: the automated swamp].

• Other comments.

The deadline for the directory information is September 15 1976. If you wish to be certain that the latest information about your club, newsletter or organization is available, be sure to send this information to

BYTE

Clubs & Newsletters Directory

70 Main St

Peterborough NH 03458

Amateur Radio ASCII Petition

Bruce J Brown, WB4YTU, 4801 Kenmore Av #1022, Alexandria VA 22304, (703)370-1431 home, (202)697-9654 work, sent BYTE a copy of a "Petition for Rulemaking" recently submitted to the FCC. It is highly desirable to have ASCII radio transmission allowed on amateur bands in order to continue the exploration of radio data communications between hackers. Individuals who are interested in pushing through FCC rule changes for that purpose might contact Bruce to get a copy of his petition, and possibly help out in the effort.

Beverly Hills High School Club

The Beverly Hills High School Computer Club invites guest speakers to come and give talks on computers and the computer industry. Anyone willing to volunteer a talk to this group of eager students is urged to contact Kwok-Fung Yen, vice president, Beverly Hills High School Computer Club, 241 Moreno Dr, Beverly Hills CA 90212.

University of Florida Club

The first meeting of the University of Florida's Amateur Computer Society was held April 14 in the J Wayne Reitz Student Union on the campus. Aside from organizational trivia, the first session featured an Altair 8800 system demonstrating the AM radio peripheral, and a talk by a member of the Human-Dolphin Foundation on the use of computers in man-dolphin communications work. A permanent mailing address has not yet been established. For the time being, the contacts are:

University of Florida Amateur Computer

Society c/o Steve Ackerman or Ken Massey Electrical Engineering Department Room 234, Larsen Hall Gainesville FL 32611

ACM Seventh US Computer Chess Championship

Entries are being solicited for the Seventh US Computer Chess Championship to be held October 19 to 21 1976 in conjunction with the ACM Annual Conference in the Hyatt Regency Hotel, Houston TX. A four round Swiss style tournament is planned with the first round on Tuesday, October 19, beginning at 8 PM, and the final round on Thursday, October 21, at 8 PM. The field will be limited to 12 teams. David Levy, International Master from England, will serve as tournament director.

For further information and for an application form, write to Dr Monroe Newborn,

102

BYTE UNDER GLASS

Paul Terrell, founder of the BYTE Shop, the world's first computer store franchise, puts lock and key to "the family jewels." Each BYTE Shop Computer Store has on display, as a distinguishing mark of its identity, BYTE magazines under glass. The BYTEs were placed under glass as a result of an unfortunate rip off of issue number one after a BYTE subscription ad entitled "A Lesson in Economics" mentioned that number ones were selling for $15.

Though current issues of BYTE are not yet as rare as the first few, they soon will be, as we do not print a large overrun. Don't miss any. Subscribe today. Use the pull out card in this issue or the coupon below.

****** SPECIAL ******

Subscribe to BYTE and Creative Computing and save $2.

Since we feel that you really need both magazines to be fully informed in the small systems field, the publishers are offering a special package. Receive one year of both BYTE and Creative Computing, normally $20, for only $18. A ten percent saving. Please enter my subscription to:

□ BYTE 1 year $12, 2 years $22, 3 years $30 (circle one)

□ BYTE and Creative Computing 1 year $18, 3 years $46 d Check enclosed

□ Bill me

□ Charge to MC# BAC# .

Exp. date

Name.

Address . City

. State .

Zip

BYTE Publications Inc

Please allow six weeks for processing.

70 Main St

Peterborough NH 03458

103

School of Computer Science, McGill University, Montreal, Quebec H3C 3G1, CANADA.

A Newborn Newsletter

A newborn self published newsletter has been announced in a letter to BYTE. It's called The Circular File and volume 0 number 0 is a flier discussing its purpose. The planned length is 10 pages, and information will be from user submissions of camera ready copy. The price is $5 for 12 issues, for a total of 120 pages at the 10 pages per issue size. User cost, delivered, is thus 4.17 cents per page.

Planned topical areas will be letters, editors commentary, programmable calculators, microprocessor systems, and notices of swaps or surplus items for sale.

For information, and to submit materials, contact:

The Circular File Marc Cobert 2013 East 12 St Brooklyn NY 11229

Westchester-Fairfield Amateur Computer Society

BYTE received an existence proof of the Westchester-Fairfield Amateur Computer Society in the form of an announcement for the May 6 1976 meeting which was held at the Greenburgh Public Library, Elmsford NY. Contact people are: Hal (914)967-7853, Carl (914)686-1318, and Don (203)348-1627.

New England Computer Society

The Volume 1 #6 issue of the NECS Newsletter included a continuation of Jeff Millar's comments on local (eastern Massachusetts and southern New Hampshire) surplus stores, an article on MIKBUG by John Watson, a cassette interface by Holger Denk and a listing of local suppliers' names and addresses. The mailing address of the NECS is

New England Computer Society PO Box 198 Bedford MA 01730

Meetings are held on the first Wednesday of each month, at 8 PM at the MITRE Corporation plant in Burlington MA. The meetings are in the cafeteria, Building C.

At the May meeting of NECS, the main topic of the evening's talk was a presentation by some Innovex engineering people on the workings of floppy disk drives. Also tried for the first time was a version of the Homebrew Computer Club's "mapping/random accesss" method of meeting organization which made

quite an impression on a certain magazine editor in a recent trip to the west coast.

New Hampshire Computer Club

Meeting the second week after the NECS get togethers each month (ie: third Wednesday of each month) is a totally informal club called the New Hampshire Computer Club. Membership is instant and permanent upon coming to the first meeting. No dues. No newsletter. Lots of interesting talk in a round table on technical subjects. The meetings are at approximately 7:30 - 8:00 PM gathering time in the auditorium of Sanders Associates main building, off Route 3 near the Massachusetts border in Nashua NH. The May 19 meeting was a long session which split two main topics: high level languages and tape recording of data.

New York Computer Club

The May 1976 issue of the New York Amateur Computer Club publication came BYTE's way recently. This issue contains the bylaws and formal matters as well as information on planned meetings and workshops for members. The club's address is listed as:

New York Amateur Computer Club 1E

375 Riverside Dr New York NY 10025 AMRAD

Amateur Radio Research and Development Corporation is the name of an organization with a mailing address of 1524 Springvale Av, McLean VA 22101, according to information forwarded to us by its president, Paul L Rinaldo, K4YKB, (703)356-9818 evenings. The club attracts computer oriented radio amateurs from the Washington DC area. More than half of the club meetings are devoted to amateur computer topics, according to Paul's May 9 1976 letter. Meetings are held on the first Monday of each month, beginning at 8 PM, at the Patrick Henry Branch Library, Maple Av at Center St, Vienna VA. Visitors and new members are always welcome. Contact Paul by radio, phone or mail.

Eastern Iowa Computer Club

In phone conversation, Michael Wimble of Cedar Rapids IA mentioned the Eastern Iowa Computer Club. According to Michael, the club has about 50 members, circa May 19 1976. For further information, contact him at:

6026 Underwood Avenue SW Cedar Rapids IA 52404 Phone:(319)396-5641 .

104

Another MITS Store

Lou Van Eperen, president of the Chicago Computer Store, sent BYTE a notice about the opening of his retail MITS Altair outlet on May 15. The location is 517 Talcott Rd, Hwy 62, Park Ridge IL 60068."

Creative Computing Catalog

David Ahl, publisher of Creative Computing, has just released the latest Creative Computing catalog. This is "a zany 12 page tabloid newspaper in the style of the Old Farmer's Almanac [incidentally, published just up Route 101 from BYTE in Dub/in NHj called, appropriately enough, the New Creative Computing Catalog." The catalog describes various products which Creative Computing markets, including:

• Eighteen books, among them 707 BASIC Computer Games and Artist and Computer.

• AT shirt with computerized picture of Albert Einstein.

• A variety of computer art prints including Mr Spock and abstract art.

• Descriptions of Creative Computing and BYTE magazines.

What's

New?

For a limited time, the bargain price of 10$ plus 21 <t postage (31 <t total) will be waived. Request your free copy today."

"SC/MP" stands for Simple Cost-effective Micro Proces- ^u^mm m ^ -whb wmamm ■■■ "^"^ |

Stir This ft M* TPTT 1Q CIMOC: nnmna M F>1 *= wrcarilo mI «

Isor. This 8 bit CPU is CMOS compatible, versatile, and designed for ease of use. Single supply. Address capability to 65K bytes of memory.

We also have a documentation package available for the SC/MP at $3.50 a copy.

Wf

L

1-8080A* 8 Bit CPU C1 J*** 8080AJ

ELECTRICAL SPECS

1 - 8221 Clock Driver

1-18 MHz Crystal ^tCf I

1-8212 I/O Buss Receiver/Latch ^#^J"+

1^ 6 - 8T97 Hex Tri-State Buss Drivers f%

We have a flyer that lists our other products . . . like an 8080 micro-monitor, a variety of interface parts, a JOLT compatible memory board, data books on the 8080, PACE, SC/MP, software, and more. To obtain a copy

WWTTOl KNOW !

Lsend us your name and address. ^^. _^^ .

A stamp is appreciated but not |L^|^f ^ll_ % j essential. ■▼Iv/I%l_ i I

NON-VOLATILE, MASS STORAGE FOR YOUR ALTAIR 8800/IMSAI... This is a complete, well thought out complement to your microcomputer. With on board RAM, regulators, various options (see below), and most of all...a 4K ER0M which contains the software required to make the board SMART.

FREE: Ask for Product Bulletin #1, which describes the unique virtues of this board. Or send $4.95 for the documentation (instructions, logic print, applications, annotated listing, more). If you just can't wait, here are the prices:

BASIC BOARD (talks to 2 machines) $96.00

EXTRA CASSETTE CHANNEL (talk to 3 machines) add $6.00

GENERAL PURPOSE, 8 BIT I/O PORT add $6.00

TTY/RS-232 INTERFACE add $12.00

(These are kit prices; write for prices on wired units.)

BOX 6194 ALBANY, CA 94706

NO CODs CAVE

WE PAY POSTAGE

CALIF0RNIANS ADD| STATE SALES TAX

105

What's

New?

It's About Time!

We were beginning to think nobody would pick up on the Signetics 2650 processor, a design which has been "announced" since late 1974 but only in the past six months or so available off the shelf. The 2650 is an 8 bit central processor which has 7 on chip registers organized as two banks of three registers with the odd remaining register shared between both banks. Also on the chip are the stack pointer and the program counter, both with 15 bits, for a total memory address space of 32 K bytes, divided into four pages of 8 K bytes. Most direct addressing is done using 13 bits for an address within the "current page." The use of only 13 bits for direct addressing allows the instruction set to have a fairly wide range of addressing modes expressed in its multiple byte instructions: Register addressing (1 byte); immediate addressing (2 bytes); relative addressing, optionally indirect (2 bytes); absolute addressing for data in the current page (3 bytes) with optional modes including indexing, indirection, indirect auto increment, indirect auto decrement; absolute addressing for branching anywhere in address space with optional indirection (3 bytes), and single byte operations with inherent addressing. [BYTE has an article in the works on details of the 2650.]

The AMT 2650

Briefly, what Applied Microtechnology, 100 N Winchester Blvd, Suite 260, Santa Clara CA 95050, has done is to take the

• •••°T^»#a

«KRfei

• OOO T

m*

-.WAP .m i

.&■&•»>

2650 processor and package it as a single board computer system as shown here. The result is called the AMT 2650. The single card computer system comes assembled and tested at $195, with an optional power supply in a desk top package running $39.95. The following is a quotation from the product announcement received at BYTE:

Applied Microtechnology of Santa Clara has announced the AMT 2650, a low cost completely self-contained microcomputer card system employing the Signetics 2650 Microprocessor. The unit allows the circuit and system designer to hand load and debug programs using the powerful 2650 instruction set; additionally a 62 pin edge connector on the card outputs all microprocessor functions plus two fully buffered TTL compatible output data ports for interfacing with the user's hardware application.

The system includes a panel mounted on the card that includes data/address LED displays, data port LEDs and reset. Programs can be single stepped instruction-by-instruction for program debug. Addresses can be independently incremented by hand and are automatically incremented after each data load.

The AMT 2650 contains 256 bytes of RAM (additional RAM, PROM, and ROM can be interfaced directly via the edge connector). The system requires 5 VDC/2A (optional power supply available from the vendor).

This processor card from AMT looks like an excellent starting point for a computer system which can be used to illustrate principles of programming and for beginning experimentation in computer systems. With buffering and expansion of memory capability, it should be possible to start with this seed and grow a full blown general purpose system with one of the best 8 bit instruction sets on the market today."

Sherlock Ohms Department

How do you deduce what major companies are about to enter the personal computing field in a big way? Why, scan the help wanted pages of your friendly local metropolitan newspaper and see who's hiring whom in terms of qualifications and experience. It's a reliable way to bypass the grapevine."

106

LBOX 2355, OAKLAND AIRPORT, CA 91614 |

3*

WHILE LAST!

SPECIAI

ia00 uF at 10V' t!^Xl^S^^^(^

to*

Variable m and h ' ^

This kit provides dual tracking, regulated voltages from ±1V to over ±18V, at up to 200 ma per side. Short circuit protected, thermal limiting. Kit (less case & hardware) $10.95 + 2 lbs shipping.

,©

<^1

'READOUTS

The expertise used to develop such games as Life or Star Trek can be enlisted in the development of improved medical technologies.

Continued from page 14

knowing that the only real limitation to its use is imagination. It can be bliss.

It might seem that going home to a computer (!) after having to put up with one all day would be unbearable, but it is not at all the same. There cannot be in a formal and regulated atmosphere the same excitement and individual challenge that exists for the personal computer. It is said that the greatest challenge to a writer is a blank sheet of paper. Well, to the personal computer it has to be a blank system memory, plus the flexibility of configuring that system to do anything that individual desires.

Personal computing has to be one of the most satisfying outlets of the creative impulse.

Richard Sims Boston MA

You're not the only one ever to be frustrated by TSO, batch processing and OS jCL. The difference between personal computing and traditional systems is like the difference between depending on a railroad and having one's own personal transporter.

PROGRAMS AVAILABLE

I wanted to write and let you know I'm enjoying your magazine; albeit some of the articles are too specific and technical. I know your job is not an easy one.

My purpose in writing is this: I live in a small town here and (as far as I know) there aren't any other computernuts with whom I can converse. Anyway, I've built up a pretty good library of simple games such as Hi Lo, Towers of Hanoi, Button-Button, Nimber, Life, Nim, and a few others any of which I would gladly share for nothing to anyone who asks. (If you write and want to enclose a dollar for copy costs it would be appreciated - if not, I'll still send the programs). All my programs are written in 8080 machine language for computer and TV Typewriter, although they'd probably work through a Teletype without any modification.

Keep up the good work.

Ron Santore

1957HuasnaDr

San Luis Obispo CA 93401

MEDICAL MICRO IMPLANTS?

I am a diabetic of 24 years, on insulin from the onset of my condition at age 4. My 21 month old daughter is also diabetic. I

have an idea that could well benefit her and all other diabetics, provided that it gets the developmental support that it deserves. My theory is that the new electronic marvel, the microprocessor, provides us with the extremely accurate basis needed for an artificial pancreas.

Although slow by the standards of the huge electronic brains, the microprocessor is quite fast enough to take the digitally coded output from an analog device that would test constantly blood glucose levels. This would be compared by the processor against a preestablished glucose level for the individual patient. The digital result would then be used to establish the need for insulin, as well as determining the dosage required. This digital figure would then be used to control the analog amount of insulin administered.

This would have been impossible six months ago, but the state of the art in microprocessor technology has advanced so rapidly that such a device, with all of its speed and accuracy, should be available to the diabetic for a reasonable price.

I will be working on such a theory, developing whatever portions of such a unit that I can, with the hopes of presenting this theory at Personal Computing '76 in August, so that its development can be forwarded by the experts of the microprocessor field who will be in attendance at this show. The expertise used to develop such games as Life or Star Trek, can be enlisted in the development of improved medical technologies.

John David Jones Jr Co-Chairman, Personal Computing '76

Microcomputer controlled prostheses are an excellent application of this technology, an engineering challenge well worth pursuing.

ON HARD COPY AND IBMSELECTRICS

BYTE magazine is getting rave reviews and I certainly feel they are well deserved. Do keep up the good work. In fact, I have two suggestions about how you might further advance your good works.

I have just obtained a copy of the new book by Don Lancaster, TV Typewriter Cookbook. It seems to be up to his usual high standards for down-to-earth practical writing. But, in a book with the letters TV in the title, one would hardly expect to find much of a section on methods for obtaining hard copy. But there is a section which may be worth many times the cost of the book.

On page 218 Lancaster states that "One of the best-kept secrets in the computer

108

S. D. SALES CO.

P. O. BOX 28810 DALLAS, TEXAS 75228

ALARM CLOCK KIT SIX DIGIT LED

Thousands of hobbyists have bought and built our original clock kit and were completely satisfied. But we have received many requests for an alarm clock kit with the same value and quality that you have come to expect from S.D. So, here it is!

THE KIT INCLUDES:

1 Mostek 50252 Alarm Clock Chip

6 Hewlett Packard .30 in. common cathode readouts. I5 NPN Driver Transistors

2 Switches for time set

2 Slide Switches for alarm set and enable 1 Filter Cap 4 IN4002 Rectifiers 1 IN914Diode 1 .01 Disc Cap

15 Resistors PCB -3.00

1 Speaker for alarm XFMR - 1.50

1 LED lamp for PM indicator.

$9.95

95

MOS 4 DIGIT COUNTER I C

All in one 28 PIN DIP. 4 Decade counters, latches, MUX circuits, display decoders, etc. Features: 5VDC operation, 25 MW power consumption, BOTH 7 segment and BCD outputs. Perfect for DVM's, frequency meters, tach's, etc. Can be cascaded for more digits. #5002 $8.95.

8008-1 MICRO PROCESSOR

New Units. High speed 8008. Almost twice as fast as units sold by others. Still a very versatile and widely used MPU. No data book, only pinout data included at this price. $12.50 LIMITED QTY.

1101 A RAM IC

256 X 1 BITS. Perfect for 8008 or small systems such as telephone dials that do not require a lot of memory. Special 59c. 8 FOR $4.

C& K MINI TOGGLE SWITCH

#7103 SUB MINI SPDT Center OFF. Special - 99c.

TTL INTEGRATED CIRCUITS

7400 - 19c

7402 - 19c

74L04- 29c

74S04 - 44c

7430 - 19c 7432 - 34c 7437 - 39c

7404

- 19c

7406

29c

7408

- 19c

7410

19c

7411

29c

7413

- 50c

7420

- 19c

7438 7440 7447 7448 7451 7453 7473 7474 7475

39c 19c 85c 85c 19c 19c 39c 35c 69c

7476 - 35c

7480 - 49c

7483 - 95c

7485 - 95c

7486 - 45c 7490 - 65c 7492 - 75c

7495 - 75c

7496 - 89c 74121 - 38c 74123- 65c 74141 - 75c

74153- 75c 74154- 1.00 74157- 75c

74161 74164741657417474181 74191 741927419374195

95c 1.10 1.10 95c 2.50 1.25 1.25 1.00 69c

60 Hz. Crystal Time Base

FOR DIGITAL CLOCKS djc

S. D. SALES EXCLUSIVE! * "

KIT FEATURES:

A. 60 Hz output with accuracy comparable to a digital watch.

B. Directly interfaces with all MOS clock,chips.

C. Super low power consumption (1.5 Ma typ.) ^O

D. Uses latest MOS 17 stage divider IC. IjS^^

E. Eliminates forever the problem of AC line glitches.

F. Perfect for cars, boats, campers, or even for portable

clocks at ham field days.

G. Small size, can be used in existing enclosures.

Kit includes crystal, divider IC, P.C. Board plus all other necessary parts and specs.

MOTOROLA POWER DARLINGTON - S1.99

BACK IN STOCK! Like MJ3001. NPN 80 V., 10A., HFE 6000 TYP. TO-3 case. Wc include a free 723C voh. reg. w/iih schematic for a power supply. SPECIAL - $1.99

MOTOROLA RTL IC'S

Brand new, factory prime. Hard to find, but still used in a variety of projects. (See the RTL Cookbook by Howard W. Sams.)

MC724P-59C MC725P-59C MC764P-49C MC767P-69C MC771P-49C MC775P-89C

MC780P-89C MC785P-49C MC787P-89C MC788P-49C MC789P-59C MC790P-89C

MC791P-69C

MC792P-59C

MC799P-59C

MC9704P-89C

MC9709P-69C

MC9760P-69C

MV-50TYPELED'!

byUTRONIX

10 for$1

Factory Prima!

3 DIGIT LED ARRAY - 7Se ^lilj

by LITRONIX ' :

0L33MMB. 3 MAN-3 Size Readouts In one package. These are factory prime, not retested rejects as sold by others, compare this price! 75c 3 for $2.

SALE ON CUT LEAD SEMICONDUCTORS

Leads were cut for PCB insertion. Still very useable.

1N914/1N4148 100/S2

1N4002 1 Amp100PIV 40/$1

1N4745A16V1WZener 20/S1

EN2222 NPN Transistor 25/S1

EN2907PNP Transistor 25/S1

2N3904 NPN Driver Xstr 25/S1

2N3392 GE Pre-amp Xstr 25IS1

C103YSCR.800MA.60V 10/S1

ALL NEW.

UNUSED.

SOME ARE

HOUSE*

SLIDE SWITCH ASSORTMENT

Our best seller Includes miniature and standard sizes, single and multi-position units. Ail new. first quality, name brand switches. Try one package and you'll reorder more. Special — 12 lot IT (Assort menl)

DISC CAP ASSORTMENT

PC leads. At least 10 different

values. Includes .001. .01, .05,

plus other standard values.

60 FOR $1

UPRIGHT ELECTROLYTIC CAPS

47 mfd 35 V-10/S1 68 mfd 25V-8/S1 Brand new by Sprague. PC leads.

RESISTOR ASSORTMENT

1/4W5% and 10%. PC leads. A good mix of values. 200;$2

pom-!

#

1000 MFD FILTER CAPS

Rated 35 WVDC Upright style with P.C. leads. Most popular value for hobbyists. Compare at up to S1 19 each from franchise type electronic parts stores. S.D. Special * tot $f

FAIRCHILD BIQ LED READOUTS

A big .50 inch easy to read character. Now available In eitrw common anode or common cathode. Take your pick. Super low current drain, only 5 MA par segment typical y0)JR

FND - 510 Common Anode CHOICE

FND - 503 Common Cathode $t.50ea. 6for$7.50

DUAL 741C (5558) OP AMPS

Mini dip. New house numbered units

by RAYTHEON.

4FORS1

FET'S BY TEXAS INSTRUMENTS — SPECIAL 5 for $1

tmS-75 but with an internal house number. TO-92 plastic case. N. Channel, Junction type PET.

We do not sell junk. Money back guarantee on every item. No C.O.D. Texas Res. add 5% tax. Postage rates went up 30%! Please add 5% of your total order to help cover shipping.

ORDERS UNDER$10 ADD 75c HANDLING.

S. D. SALES CO.

P.O. BOX 28810 DALLAS. TEXAS 75228

ORDERS OVER $15 CHOOSE $1 FREE MERCHANDISE

FOREIGN ORDERS MUST BE PAID IN U.S. FUNDS

industry is that all it takes to convert an ordinary Selectric I office typewriter into a superb hard copy printer is a small handful of cheap solenoids (about $30 worth) and some simple modifications that in no way impair the use of the machine as an ordinary typewriter."

Now I ask you, which would you rather be reading this minute, the Teletype 33-ASR type font or most any one of the type fonts available for the IBM Selectric? Sure, the Selectric isn't really cheap. But, I'll bet most people would much prefer to spend approximately one grand on a Selectric they could modify than on an ASR by Teletype. Sure, the Teletype also has reader punch but the computer hobbyist could settle for cassette until he decided if he really needed a reader punch and, if he did, that could be added without bringing the total cost much above that of the 33-ASR. And what would he have for his money? Well, he would have BOTH a superb typewriter and a superb terminal.

Unfortunately, Lancaster's instructions for making the conversion are no more than minimally detailed. I suspect I could do it except that I have the Selectric II and no mention is made of how that might differ

from the Selectric I he writes about. And, Lancaster tells only how to make a printer (not an input device) from a Selectric. He concludes with the obvious statement that "... low-cost hobbyist conversion kits are not yet available, although they are an obvious and desirable product."

My point here is that such a kit would quickly appear if a publication such as BYTE arroused interest in it. How about it?

Dr James K Lang

5 Beech Ln

Edison NJ 08817

Let's put it this way: Such a kit would sell like hotcakes, due to the ubiquitous presence of IBM typewriters. When some reader comes up with a practical article on how to do it, the article will get the red carpet treatment.

DECEIVED?

I feel that in some of your articles you have deceived your reader. In most cases where the 6800 and 8080 are compared, the fact that the 6800 addresses 10 devices like memory is stated as an advantage. Of course, this type addressing of 10 is an advantage in

THIS IS DJR CDPYDflT CDPYCflT

HER NAME IS TCHEBYCHEU _._

This month we are offering a I IllZit to the first to correctly guess what our Copydat Copycat is doing. The prize: your choice of one of our PC cards listed below. (Hint: it's related to our newest product line, the COPYDAT blueprint copiers.) Next month we print the answer and the prizewinner. Send in your guess today!

The "old standby" line of Hardware Assemblers:

CDA 1.1

CDA2.1 CDA 3.1

CONNECTOR

4KX8 Memory Matrix Prototyping Card for 2102 - 2602 -9102 Static RAMS. 7" x 9", predrilled wire wrap custom decoding area and plated-through holes in RAM area. $34.95.

General Purpose Prototyping Card, predrilled for wire-wrap, pictured in BYTE Dec. '75, 7" x 9", $34.95. Digital Graphic Display for Oscilloscopes designed by Jim Hogenson and featured in BYTE Oct. '75, double-sided card with plated-through holes. $29.95. ^

-For CDA 1.1,2.1 - 70-pin wire wrap. Viking NORSMANw -$5.00. (Postage and packaging per card: $2.00.)

Our newest line - the COPYDATS, starting at $149.95 FOB Amherst, N.H.

COPYDAT I - for copies up to 12" x 18"

COPYDAT II - for copies up to 24" x 36"

Copies for less than 3i each (Copydat I) - without sacrificing quality.

Send for a brochure and sample print today!

CELDflT DESIGN ASSDCIflTES

BDX 752 AMHERST,N.H. CQCBL

110

r

A COMPLETE

IK RAM SYSTEM

With CPU card, buffered mother card, power supply and cabinet. The VERAS System is developed around the popular F-8 Series of chips which in our estimation is the finest and most versatile Micro processor now available.

INTRODUCING THE VERAS F8 COMPUTER

THE SYSTEM DESIGNED WITH THE USER IN MIND THE CPU FEATURES:

• Two I/O ports on the CPU and ROM chip make 32 bidirectional TTL lines,

• The Fairbug* programmed storage unit provides the programmer with all I/O subroutines, allows the programmer to alter or display memory, and register its contents via teletype.

• Programmable internal timer is built into the RUM chip.

• Built in clock generator and power on reset are built into the CPU chip.

• There is a local interrupt with automatic address vector.

• It is expandable to 65K bytes of memory.

• 20 mil loop and/or RS232 interface included.

• 1K of on board 2102 RAM.

• Serial interface built into PSU chip.

OUR 4K RAM BOARD FEATURES: (OPTIONAL)

• Outputs buffered.

• On board decoding for any four of 64 pages.

• Address and data lines are fully buffered.

• 32 2102-1 static RAM's, 500 ns. or less, requiring no relreshing.

• No onboard regulators to cause heat problems.

• 4K memory boards with connector, buffers and static RAM's are available in kit form for $149.00 The fully buffered mother board will accept (4} 4K RAM boards for a total of 16K bytes of memory. Individual power terminals for each 4K RAM board are provided. Memory expansion beyond 16K bytes can be accomplished by the addition of more mother boards. Extra buffered mother boards with connector are available in kit form for $45.00 Our regulated power supply is rated at 10 amps ±5V and ±12V, with local regulators which is more than adequate to power our basic computer kit and extra RAM boards.

All boards are high quality G-1 0, double sided, solder plated with gold plated edge connector.

MECHANICAL FEATURES ARE:

• AlComplete modular plug in construction.

• B}Specifically designed rugged aluminum card rack with provisions for voltage regulators (TO-220

supplied) to keep heat off the boards.

• C) Designed for convection or optional forced cooling.

• D)AM I/O ports brought out to the rear panel connectors for easy accessibility.

• E) Auxilary DC power available at the rear panel to power peripherals. Veras Systems is currently developing the following:

UV PROM board, DMI and DMA board. Cassette, modem, video board and more. All these boards will have innovative design, something you will come to expect from VERAS SYSTEMS,

SPECIAL INTRODUCTORY PRICE FOR THE VERAS F8

Computer kit is $429.00 or S679.00 assembled. The price will be $459.00 after Sept. 15. 1976. The kit includes everything you need to build the VERAS F-8 Computer as described. All boards, connectors, switches and discrete components are supplied. Programming manual, data book and support documentation supplied. 8K Assembler and Editor (paper tape) available on request with minimum order of 8K RAM. Computer dealers and hobbyist club inquires are invited. Expocted delivery time 30 days or less. -Fairbug is a registered trademark of Fairchild Corp.

The More Flexible and Expandible I Computer at a Comparative Price.

VERAS SYSTEMS

Warranty: 90 days on parts and labor for assembled units. 90 days on parts for kits.

Prices, specifications and delivery subject to change without notice.

>

l~"

VERASSYSTEMS A Div. of Solid State Sales, Inc. Box 74B, Somerville, MA 02143 (617) 547-7053

O Enclosed is check for $

or d Master Charge H

D VERAS F-8 Computer Kit □ Assembled Include $8.00 to cover postage and handling

Name

City, State .

-Zip.

INTEL 8080 CPU S29.50

2518 HEX 32 BIT SR S6.00

2102-1 1024 ST RAM $ 2.60

5202A UV PROM $12.50

MM5203 UV PROM S12.50

1702A UV PROM S12.50

5204-4K PROM $24.95

MINIATURE MULTI TURN TRIM POTS 100. 500, 5K, 10K. 25K. bOK. 100K 200K

S7Su;n:h 3/S2.00

MULTI TUHN TRIM POTSSimilai to Bourns 3010 nyle 3/16"x5/8"x1 J/4"; 50. 100, IK. 10K, 50K ohms

$1.50 tin 3/S4.0Q

LIGHT ACTIVATED SCR's

TO-18.200V 1A S 1.75

TRANSISTOR SPECIALS

2N3585 NPN Si TO-66 S .95

2N3772NPN SiTO-3 S 1.60

2N4908 PNP Si TO-3 . S 1.00

2N6055 NPN Si TO-3 Darlington , $ 1.30

2N5086 PNP Si TO-92 4/5 1.00

2N4898 PNP TO-66 $ .60

2N404 PNP GE TO-5 5/S 1.00

2N3919 NPN Si TO-3 RF S 1.50

MPSA 13 NPN Si TO-92 3/S 1.00

2N3767 NPN Si TO-66 $ .70

2N2222 NPN Si TO-18 5/$ 1.00

2N3055 NPN Si TO-3 $ .80

2N3904 NPN Si TO-92 ....... 5/S 1.00

2N3906 PNP Si TO-92 5/S 1.00

2N5296 NPN Si TO-220 S .50

2N6109 PNP Si TO 220 S .55

2N386G NPN Si TO-5 RF S .75

2N3638 PNP Si TO-5 5/$ 1.00

2N6517 NPN TO-92 Si 3/$ 1.00

C/MOS (DIODE CLAMPED)

74C02- 25 4016 .40 4035- 1.18 74C10 .25 401/ 1.10 4042- .68

4001 .19 4018 1.20 4046- 2.20

4002 19 4019 .45 4047- 2.20 4006-1.20 4022-1.00 4049- .43 4007- .19 4023 19 4050- .43

4009 .47 4024- .85 4055 - 1.45

4010 .4 7 4025 .19 4066- .70

4011 .19 4027- .48 4071- .25 4012- .19 4028- .85 4077-- .25 4013 .35 4029- .95 4081- .25 4015 1.10 4030 .95 4076-1.20

LED READOUTS

FND 500-.5" C.C $1.75

HP 7740-.3" C.C $1.40

MAN-4 .25"C.C $1.20

MAN 7 .3" C.A SI .25

NS 33-3 rliii. array S1.35

25t lor out catalog (ealurini ranslstorsand Rectifiers mpshireSt,, Cambridge, Ma;

PRINTED CIRCUIT BOARD

4-1/2"x6 1/2"SINGLE SIDED EPOXY BOARD 1/16" thick, unetched

$.50 en 5/S2.20

VECTOR BOARD 1" SPACING

4.5" x 6*' SHEET SI .50

4 WATT IR LASER DIODE $7.95

2N 5460 P FET S .45

2N 5457 N FET $ 45

2N 4891 UJT $ .45

TIS 43 UJT S .35

ER900 TRIGGER DIODES 4/S1.00

2N6028 PROG. UJT $ .65

VERIPAX PC BOARD This board is u 1/16" Single sided papei epoxy board. 4V/'x6V DRILLED and ETCHED which will hold up to 21 single 14 pin IC's or 8, 16, or LSI DIP IC's with bussas for power supply connccioi . . $4.00

MT-2 PHOTO TRANS RED, YELLOW, GREEN OR

AMBER LARGE LED's 14 PIN DIP SOCKETS .... 16 PIN DIP SOCKETS ....

.... $ .60

.... $ .35 $ 35

8 PIN MINI DIP SOCKETS .

1000/S8.00 . . . .$ .30

10 WATT ZENERS 3.9, 4.7.

1 WATT 2ENERS 4.7, 5.6. 10, 18 OR 22V . .

12. 15.

Silicon Power Rectifiers

SILICON SOLAR CELLS

2Vt" diameter 5V at 500 ma $5.00 ea., 6/S27.50

REGULATED MODULAR POWER SUPPLIES

*- 15 VDC AT lOOma

115VAC INPUT . . . 5VDC AT 1 A. 11SVAC INPUT . . . $24.95 12 VDC AT .54 $24.95

TANTULUM CAPACITORS

.22UF 35V 5/S1.00 6.8UF 35V 3/51.00

.47UF 3GV 5/S1.00 33UF 25V $.40

.68UF 35V 5/S1.00 30UF 6V 5/S1.00

1UF35V 5/S1.00 150UF20V $.50 1.7UF 3GV 4/S1.

CT7001 ALARM CLOCK CHIP .

J-,'.7!i

NATIONAL MOS DEVICES

MM1402 3.20 MM50B7 4.00

MM14Q3-3.20 MM5058 4.95

MM1404-2.50 MM5060 -4.95

MM5013 7.75 MM5061 4.30

MM5016 3.50 MM5555- 6.25

MM5017-4.75 MM56S6 6.25

MM5055 -4.00 MM5210 1.95

MM5056 4.00 MM5260 2.95

PRV

1A

3A 12A

BOA

125A

100

200 400

.06 .07

.09

.14 .30 .20 .35

.25 .50

.80

1.15 1.40

3.70

4.25 6.50

600

11

.30 .70

1.80

8.50

800

.15

.35 .90

2.30

10.50

1000

20

.45 1.10

2.75

12.50

74 LOO 740074017402 74037404740574067407740874097410741174127413741474167417742074267427743074327437743874407441

LIC SERIES

7442

74126

.48

7445

.79

74150

1.0U

.64

74153

.69

74154

1.0b

.79

74157

,6b

,yy

I.Ub

74165

1.0b

.42

74173

1.30

74174

1.00

.95

74175

.90

.33

2.00

74180

.n

,47

74181

2.1 0

.69

74190

.47

74191

1.10

7493

74192

.76

74193

1.00

.70

74194

.73

74195

.30

74196

.37

74283

1.b0

.65

75324

.49

75491

7549?

MINIATURE DIP

SWITCHES

CTS-206-4

Four SPST

witches

In one

ninidip pack

K|C.

$1.50

CTS. 206-8

Eight SPST

swiiclies

n .i

16

pin uii

package

S2

bb

Full Wave Bridges

SANKEN AUDIO POWER AMPS

Si 1010 G 10 WATTS $ 6.90

Si 1020 G 20 WATTS SI 3.95

Si 1050 G 50 WATTS S24.95

PRV 2A ~ " _6A~ ~ 25A~

200 .95 1.25 2.00

400" .. .MS . ._, 1-50 _ 3 00

600 " 1.3b 1.75 ' 4.00 CD 1 10 LINEAR 256 XI BIT S"ELF SCANNING CHARGED COUPLED

DEVISE S99.00

LINEAR CIRCUITS

LM309K 5V 1A REGULATOR . . . S1.00

723 - 40 i 40VV REGULATOR $ .80

301 '748-Hi Per. Op. Amp S .28

320Tb. 12, 15, OR 24V

NEGATIVE REG $1.35

741A or 741 C OP AMP S .28

710 COMPARATOR S .32

307 OP AMP $ .25

CA 3047 Hi Pel Op. Amp S .95

340T5, 6, 8, 12, 15, 18.24V POS

REG. TO-220 $1.20

101 OPER. AMP. HI PERFORM. . . , $ .75 LM 308 Opar. Amp., Low Power . . -SI .05

747 -- DUAL 741 S .65

556 - DUAL TIMER . . _ S .95

537 - PRECISION OP. AMP SI.70

540-70W POWER DRIVE S2.7b

LM3900 OUADOP. AMP S 49

LM 324 - OUAD 741 $1.05

b60 - PHASE LOCK LOOP $2.00

561 - PHASE LOCK LOOP $2.00

565 - PHASE LOCK LOOP SI.50

566 FUNCTION GEN SI 65

567 - TONE DECODER $1 75

LM 1310N FM STEREO DEMOD. . . $2.7b 8038 IC VOLTAGE CONT. OSC. . . $3.90 LM370 - AGC SQUELCH AMP. , . SI. 15

bb5 - 2jis - 2 HR. TIMER S .47

bb3 OUAD TIMER $2.50

FCD 810 OPTO-ISOLATOR S .80

1488 DUAL OP AMP S .5b

LM 380 - 2W AUDIO AMP $ .9b

LM 377 - 2W Stereo Audio Amp. . . S2.b0

LM 381 - STEREO PREAMP SI .25

LM 382 - DUAL AUDIO PREAMP . S1.25 LM 311 - HI PER. COMPARATOR . S ,9b LM 319 - Dual Hi Speed Camp. . . . $1.10 LM339 - OUAD COMPARATOR .$1.15

some cases, but it can be done with any processor including the 8080.

I think that the real advantage here lies with the 8080 for it can address 10 as memory and also address 10 via its IN/OUT commands and not limit the memory address by using them for 10. The 6800 does have advantages. It has two accumulators which simplifies some programs, but unfortunately it has no additional user registers on the chip, its interrupt system also is an advantage.

Each of these systems have advantages and disadvantages and each user must determine which suits his need best. The one criteria that needs to be considered before choosing a processor for non-professional use is the software available for it, and the cost of this software. I feel that for this market the choice must almost be made solely on the basis of the software.

John W Cochran

820 Orwell Av

Orlando FL 32809

ACHTUNG!

If there's one thing a home computerist enjoys more than his "calculatin engine," it's showing off his pride and joy to his girlfriend, neighbor, or some unsuspecting stranger who happens by his front door. Nothing, however, can ruin this joyous occasion more than having a curious onlooker flip the wrong switch and successfully erase your favorite version of Star Trek that you just spent so long setting up for a demonstration. In order to keep these situations to a minimum, I offer the following announcement which I have attached to my Altair 8800.

ACHTUNG!

DAS MACHINE 1ST NICHT FUR GERFINGERPOKEN UND MITTENGRABEN. IS EASY SCHNAPPEN DER SPRINGENWERK, BLOWENFUSEN UND POPENCORKEN MIT SPITZERNSPARKEN. 1ST NICHT FER GEWERKEN BY DAS DUMMKOPFEN. DAS RUBBER-NECKEN SIGHTSEEREN KEEPEN HANDS IN DAS POCKETS UND WATCH DAS BLINKENLIGHTS.

Glen Brickey Jr

3166 Santiago Dr

Florissant MO 63033

This little frivolity is derived by the omission of one word from an earlier version which has graced amateur radio shacks and

laboratories for several decades. . . it's just as applicable to computer rooms.

MORE ARTICLES FOR HOUSEWIVES NEEDED

As a computer hobbit's wife who just completed the Evelyn Woods course [in speed reading] and accomplished exactly what the advertisement states [namely, reading JAWS in 56 minutes], I was really disappointed in the April issue of BYTE.

It took me exactly 12 minutes to read all 96 pages. Come on, guys, how about a few hundred more pages for us housewifes?

Dorothy Dundon Bolton MA

PS: Fortunately, the course doesn't guarantee that you'll understand what you are reading.

HERE'S WHAT I'D LIKE TO SEE

I have been very pleased with your magazine and am glad I subscribed. I have some suggestions for articles I would like to see. I would like some articles on bit slice micros, and the electronic considerations of building your own system from scratch such as power supplies, bus terminations, etc.

Also I would like to see some articles on how to write routines for floating point conversion, arithmetic and scientific functions such as. sine, log, etc.

This information would be very helpful for those of us who want to design and build our own hardware and software systems. Keep up the good work.

Mark Mickelsen Draper UT

Potential authors, take note.

GAMES AREN'T FAIR GAME!

Paul Kanciruk in a letter printed in the February 1976 BYTE states that he would like to see less software on games and that many do not want to play "super space electronic hangman life-war pong."

I believe that Mr Kanciruk has missed the point of games completely. Indeed, many do not want to play every game that they see in print, and certainly I don't either, but I do read them all, as a rule.

A game program serves as a common ground for passing along programming techniques. Paul Kanciruk uses computers for statistical analysis. Fine. Except, if he wanted to show me a clever programming trick, I doubt if I could appreciate it, or even

112

World's Lowest IC Prices

TTL

LOW POWER SCHOTTKY

7400 14

74151

60

74LS00

25

74LS164

1 50

7402 14

74157

60

74LS02

25

74LS174

1.50

7404 16

74160

75

74LS10

25

74LS175

1 50

7410 14

74161

75 .

74LS73

40

74LS193

1.50

7420 14

74163

75

74LS75

50

74LS251

1.50

7427 25

74165

80

74LS151

85

74LS253

1.50

7438 25

74173

1 25

74LS153

95

74LS257

1.50

7440 14

74174

75

74LS157 1

50

74LS258

1 50

7445 45

74175

75

74LS163 1

50

7447 65

74177

70

CMOS

7450 14

74180

80

4001

16

4027

40

7451 14

74181

1 50

4002

16

4028

60

7473 22

74191

1 00

4006

90

4030

35

7474 23

74192

70

4007

16

4040

95

7493 50

74193

70

4008

70

4042

60

7495 49

74198

1 00

4011

16

4043

.75

74107 29

9602

50

4012

16

4044

70

74116 1 00

9300

75

4013

35

4049

38

74123 50

9312

70

4015

80

4050

38

74150 60

4016

35

4066

65

SCHOTTKY

4019

70

4068

35

74S02 25

74S172

3 50

4020

90

4069

16

74S37 40

74S175

1 50

4021

95

4071

16

74S85 2 00

74S181

3 50

4023

16

4073

16

74S139 1 50

74S197

1 50

4024

75

4075

16

74S140 50

74S257

1 50

4025

20

4516

85

74S153 2 50

LINEARS

4585

85

HIGH SPEED

NE555V

43

RAMS

74H00 20

74H51

20

NE556A

90

2102

1.50

74H01 20

74H52

20

741V

30

PROMS

74H04 20

74H74

40

1458V

52

82S23S123

1 95

74H10 20

74H103

50

566V 1

25

74H11 20

74H106

50

567V 1 35

74H40 20

540L 2 00

Order Minimum $10 00 i

\dd $1 00 shipping and handling charge per order California residents add 6°°

sales tax All orders shipt

led promptly

Order the famous las

is 6 volume

Programmed Learning Course "Microcomputer Design

is a Snap' for $99.50

and receive a special $10.00 credit on

any group of IC s

Satisfaction 100° guaranteed.

€LTRON

(C.O.D. Orders: Phone (day or night) 408/354-1448

PO Box 2542 B Sunnyvale, CA 94087

113

understand it. The reason: I don't know anything about statistical analysis.

The same holds true for an astronomer showing a program to a marine biologist. There is no real way one can visualize how clever or intricate some technique can be if the problem is not understood.

On the other hand, everyone can understand Pong or Life or some other game. In them, every programming trick can be covered. Anyone reading the program can see what does what, because what is lo be accomplished can be understood.

It's not so much a matter of wanting to play games or not, but a matter of learning. Next time, when Mr Kanciruk sees a game, maybe he will read through it this time. He may find it pretty enlightening.

Craig A Pearce Berwyn IL

A LITTLE PLUG FOR ACM

Understand that you can always use some copy. Tell you what - here's a little plug:

The Association for Computing Machinery has been the major society for computing professionals. For better than 25

years, the ACM has published papers of interest, held annual conferences and aided the advancement of computer science. Most of the real work of the Association is done in its local chapters and special interest groups. The local chapters are located throughout the nation, and provide a forum for interested people. They also bring in speakers of prominence on many topics. Although there are many special interest groups, the one that may be of most interest is the Special Interest Group on Minicomputers (SIGMINI). This group is interested in mini- and microcomputers, their hardware, software and firmware. They are also interested in problems and experiences pertaining to the use of small systems. They publish a bimonthly newsletter that is always of interest. One need not be a member of the ACM to join SIGMINI. Dues are only $7 per year — a very reasonable price.

SIGMINI's address is:

ACM-SIGMINI

PO Box 12105

Church St Station

New York NY 10249

I have been interested in computing on the smaller and less formidable levels for

At Last!

BYTE T-shirts are here!

At last! No more wardrobe crises! BYTE T-shirts are here! Now you have the perfect garb for computer club meetings, Altair Conventions, playing Shooting Stars and computer chess. (A pair of trousers from your own closet is suggested as an addition to the BYTE T-shirt. The Bytique can't do everything for you.)

Each BYTE T-shirt is silk screened by hand on top quality Fruit of the Loom cotton-polyester or 100% cotton T-shirts. The original design, by artist Judy Lee Rehling, is available in blue heather shirts, or in red on white shirts with blue trim on collars and sleeves. Each shirt is mailed first class for safe, rapid delivery to you.

The $5 price includes handling and first class postage.

Send to: In unusual cases, processing may exceed 30 days.

The Bytique

PO Box 274

Jaffrey Center NH 03454

Please send me extra large

large

medium

small

Total enclosed $

blue heather

white with blue trim and

red letters

T-shirts @ $5 each (includes handling and first class postage)

Bill MasterCharge No

Bill BankAmericard No..

Name

Address

City

Exp. Date_ Exp. Date_

_State_

_Zip_

Signature

Other colors, styles I'd like to see_

114

MC14412 UNIVERSAL MODEM CHIP MC14412 contains a complete FSK modulator and de-modulator compatible with foreign and USA communications. (0-600 BPS) FEATURES:

.On chip crystal oscillator

.Echo suppressor disable tone generator

.Originate and answer modes

.Simplex, half-duplex, and full duplex operation

.On chip sine wave

.Modem self test mode

.Selectable data rates: 0-200

0-300 0-600 .Single supply VDD=4.75 to 15VDC - FL suffix VDD=4.75 to 6 VDC - VL suffix TYPICAL APPLICATIONS:

.Stand alone - low speed modems .Built - in low speed modems .Remote terminals, accoustic couplers

MC14412FL $28,99

MC14412VL $21.74

6 pages of data .60

Crystal for the above $4.95

, 11

T» Daia

T* E T* Car

Echo

12

9

' 13

10

' 1-1

Tvn»

TTLO ST

Rx Car R. Date Raie

15

7

To

T

Nalwork

6

—U.

MC14411 BIT RATE GENERATOR. Single chip for generating selectable frequencies for equipment in data communications such as TTY, printers, CRT s or microprocessors. Generates 14 different standard bit rates which are multiplied under external control to IX, 8X, 16X or 64X initial value. Operates from single +5

volt supply. MC14411 $11.98

4 pages of data 40

Crystal for the above $4.95

7 WATT AUDIO AMP Fairchild TBA 810S Monolithic I.C. Class B audio Amp works over wide range of power supply voltages. 1 watt at 6V, 7 watts at 16V.

TBA - 810S $2-75

Data for the above 60

4 DIGIT COUNTER. MM74C926 is a 4 digit counter with 7 segment output. Carry output for cascading and intermal display select allows outputting of counter or set of internal latches. 3 to 6Voperation. Great for clocks, event and frequency counters. MM74C926- with spec sheet SI2.00

FOUR QUADRANT MULTIPLIER. MC1495L provides output as a linear product of two analog input. Use for frequency doubler, balanced modutar/demodulator, electronics gains control.

MC1495 L $5.50

6 pages of specs 60

9 pages of applications 90

TELETYPE CODE CONVERSION CHIP

MM5220BL converts 5 level Baudot into 8 level ASCII. Use

this chip to make your old TTY talk to your new computer.

MM5220BL $18.00

Specs for the above .30

MOS TIME BASE KIT,

Only 1" X 1.5". Input 5 to 15 VDC, output is 60HZ square wave for portable or mobile clocks. PC board is drilled! MTBK-60HZ $5.88

78H05 Voltage regulator. Fairchild 5V, 5A, TO-3 regulator. Take care of those heavy current requirments without separate regulator/pass transistor combinations. Use it with the same ease of instalation as the 309K(same pin arrangement.) with specs $11.25.

-T

LM317 Voltage Regulator. 1.5A, 3 terminal adjustable regulator in TO-3 case. Adjusts from +1.2V to +37V. Complete overload protection. .1% load regulation, ,01%/V line regulation. No need to stock assorted regulators - just stock resistors $4.99

Specs for the above 70

DATA BOOKS BY NATIONAL SEMICONDUCTOR

DIGITAL. Covers TTL, DTL, Tri-State, etc $3.95

LIN EAR, Covers amplifiers, pre-amps, op-amps, .. $3.95 LINEAR APPLICATIONS. Dozens of application notes and technical briefs covering the use of op-amps, regulators,

phase locked loops and audio amps $3.25

CMOS Gates, Flip Flops, registers, functional blocks $3 VOLTAGE REGULATORS. A must for anyone making a power supply. Complete theory including transformers,

filters, heat sinks, regulators, etc $3.00

MEMORY. Information on MOS and Bipolar memories':

RAMS, ROMS, PROMS and decoders/encoders $3.95

INTERFACE. Covers peripheral drivers, level translators, line driver/receivers, memory and clock drivers, sense amps

display driver and opto-couplers $3.95

(Outside U.S., add postage for l,5lbs)

DATA BOOKS FROM FAIRCHILD.

uA Linear. 776 pages of data and applications for Fairchild linear ICs. Great value $4.25

MOS/CMOS/nMOS/pMOS/CCD. Data and applications on MOS and charge coupled devices including preliminary data on new and future offerings. Want to know about 16K charge coupled line addressable memories? $3.95

ffiCtffflCB

Soys

Project got some bare spots? Don't burn, cover your parts requirements at Tri-Tek.

GOLD CHIP

Linear Integrated Circuits

Brand new process by RCA in which the aluminum metalization has been replaced by gold. The chip is then hermetically sealed. What this means to you is unprecedented reliability and uniformity. Plastic parts that meet mil specs I! Tri-Tek is proud to be the first to bring this new level of performance to you at SURPLUS PRICES. Why buy regrades??

CA301 A. .Improved,general purpose op-amp,8 pin dip..59$

CA307.. .Super 74] op-amp. 8 pin dip 52$

CA324.. .Compensated quad op-amp, 14 pin dip $1.80

CA339A.. Low offset quad comparator. 14 pin dip...$1.59 CA741 C.. Famous general purpose op-amp, 8 pin dip.. 45$ CA747C. .General purpose dual op-amp, 14 pin dip... 82$

CA748C. .Externally compensated 741, 8 pin dip 49$

CA1458. .General purpose dual op-amp. 8 pin dip 69$

CA340T. .Quad single supply (5-18V) op amp. 14 pin.. 89$

Another super buy from RCA. CA555 timer. 8 pin dip. 59$

NEW NATIONAL BOOKS!

AUDIO HANDBOOK contains detailed discussions, including complete design particulars, covering many areas of audio with real world design examples... $3.25

SPECIAL FUNCTIONS DATA BOOK contains detailed information for specifying and applying special amplifiers, buffers, clock drivers, analog switches and D/A-A/D converter products $3. 25

CD4059 IS BACK ■ Now, again in stock is the popular CMOS divide by "N" down counter. Programm able to divide by any number from 3 to 15,999.

CD4059 AE $6.50

Specs for the above 50

DC to DC CONVERTER MODULE. Tiny potted module is a complete regulated output up-converter. 4.5V D. C. input provides approximately 14V @ 12 mA. Will operate down to 2.5V with reduced output. Size only 1" X £" X {". With connection diagram $1 . 25

NSL4944 LED. Current regulated, universal diffused-lens red LED lamp. A GaAsP solid-state high intensity LED encapsulated in a plastic package containing a current regulating IC that provides constant intensity over a wide voltage range. 2 to 18V, AC or DC. Use for indicator lamps, optical coupling, battery charging circuits, logic probes, almost any place you need a lamp. Long life, wide angle. No series resistor needed. Typical 13mA forward current, NSL4944 with panel mounting clip 89$

D-A CONVERTER BY ZELTEX

8 bit precision hybrid circuit for use in controllers, timers, volt meters, etc. Molded plastic package with P.C. pins. Super buy on this better than usual subsystem. ZELTEX model ZD430. DAC-430 $4.95

NEW BOOK!!! "An Introduction to Microcomputers" This is the book which Fairchild Semiconductor Company

called " the best darned introduction to the industry

to dote." Covers everything from basic concepts to a review of real microcomputers. IMC-001 $8.00

W

tm-tek, inc.

65i2 noRth 43RO avenue.

QLendAle, ARIZOnA 85301

phone 602 - 931-6949

We pay shipping on all orders over $10 US, $15 foreign in US funds. Orders under $10, please add $1 handling. Please add insurance. Master Charge and Bank America cards welcome, ($20 minimum) Telephone orders may be placed 11AM to 5PM daily, Mon thru Fri. Call 602-931-4528. Check reader service card or send stamp for our latest flyers packed with new and surplus electronic components.

some years. My first experience came wherl I was introduced to the PDP-11 that Portland State University bought. I found it hard to believe that such computing power came in a desktop package. Since then I have started a minicomputer interest group in Portland, worked with an Interdata mini system, and joined the SIGMINI. I really feel that there will be many systems going in at this level in the future. IBM has even endorsed (blessed?) the concept with its 5100.

In conclusion, I feel that you at BYTE are doing a good job in an area that hasn't been touched by the biggies. Lots of luck.

Percy G Wood Woodburn OR

SOME WIRE WRAP POINTERS

I would like to compliment you on your article on wirewrapping in the January issue. Based on considerable experience in the Bell system's new switcher, I offer the following items:

1. Wire Strippers: Nicked wire, especially when it's 30 gauge, will usually break when a wrap is attempted. The only consistent, reliable strippers I have found are made by the Clauss Cutlery Co, Freemont OH. They are sold under the NO-NIK trade name. While

3. Wire Slack (or more specifically, lack of it): Interesting thing about running a wire making a 90° bend around a square, sharp wrap pin, is that sufficient tension with time causes the insulation to part, allowing an unintentional connection (short). Heat or vibration will accelerate the process. The problem is sometimes called cold flow, cut thru, and several unmentionable names. Sometimes this problem will manifest itself as a trouble which disappears as soon as you touch the wiring. The best cure for this problem is when you wrap, be sure there's a little slack in the wire after both ends are wrapped. The time and money it costs you is cheaper in the long run, unless you like spending time to find this problem and money to replace the chip(s) the cold flow destroyed.

4. Color Coding: If you can get colored wire, use several colors. It makes debugging and later modifications much easier.

Alan Andrews Chicago IL

NO-NIK wire strippers are the only ones I ever use .. . CH

not cheap (about $14), they have worked for me, every time. Inasmuch as they are precision, one pair is needed for 30 gauge, and another for 28 gauge. Maybe one of BYTE's advertisers will pick up on them. Presently they are only available through distributors. 2. Tweezers: A good pair of fine point tweezers are very good for picking out snivels and broken pieces after an unwrap operation. The alternative of leaving wire pieces in a back plane usually results in a good application of Murphy's Law at worst, and some very frustrating intermittent problems at best. I hate to tell you how many hours have been spent digging wire pieces and snivels out of backplanes, which seemed to fix "impossible" problems.

COMMENTS ON THE INFORMATION REVOLUTION

I've been in large scale digital computer maintenance for eight years and am now with my second computer company. In that electronics and computers put bread and butter on the table, it's my belief I have a responsibility to be aware of the history, technology and future of my chosen profession. Textbooks and organizational literature are a great place to start, but to stay abreast of the times one must turn to current periodicals. Electronics in general is amply represented by many fine publications, but until recently the best computer literature in these lines was aimed at computer software and management. Why the gap for computer hardware and experimenters? Simple; they were locked away in laboratories of major companies, and engineering journals sufficed. Outside, in the general market, cost prohibited all but cursory investigations into computer applications.

After reading the January 1975 Popular Electronics article on the ALTAIR 8800, I was struck with a thought — this was the beginning of a revolution not only in computer technology but in something larger by far. A few years back I came upon a book by

116

Affmrrr 7400N TTU

SN740Urj SN7401N

stmam

SN7403N

SN7404fJ* SN74QSN SN7406N SN7407N SfJ7J08\ SN7409fi S'J74.0N* SN7411N 5N74I2N SN74J3N SN74UN SN7416N SN74I7N SU7420fJ SN7421N SN7422N* SN7423N SN7475N SN7426N SH74J7N SN7429N SN7430N SN7J32N SN7437N SN7J38N

SN7439N

SK7440N

SN7441N SN7442N SN7443N SN7444N SN7445H SN744SN SN7447N' SN7448N SN 74 sort SN74: N

5N7453N SN7454N

st,7459A

SN7460N

SN747QN

SN7471V

SN7472N

SN7473N'

SN7474N'

SN7475'J*

SN7476N*

SN7479N*

SrJ74B0N

SN7482N

SN7483N

SN7485N

BH7J86N

Sr,7488U

SN74B9N

SN7-190N*

SN7491N

SN7J92N

SN7493H

SfJ7494N

SN7495N

SN7J96N

SN7J97N'

SN7JIO0N*

SN741Q7N

SN74121N*

SN74122N

SN7-J123N

SN74125N

SN74126N

SN74132N

SN74136N

SN7414IN

SN74142N'

SN74143N*

SN741J4N

SN74145N

SN74147N

SN74148N

SN74150N SN74151N SN74 ■ 53N

SN74154N*

SN74iherj

SN74:57N SN74160N SN74161N

SN74163N* SN74I64N SN7J165N SN74166N SN74167N SN74170N SN74172N SN74173N SN74174N SN7-1175N SN74176N SN74177N SN74iaON SN74H1N SN74182N SN74134N SN74I85N SN74186N* SN74I87N SN74190N SN74191N SN74192N* SN74193N* SN74194N SN74HSN SfJ741%N SN741S7N SM741S8N S'J741S9N SN742C0N SN74279N* SN742E1N SN 74284 N SfJ74?85N

CD4000 C04001 CD4002 CD4006 CD4007 CC-4QQ9 CD40I0 CD40U CD401P CD4013 CD4U16 CD4017 0)4019 CD4020 CD4022 CD4D23 CD4Q24 CD4025 CD4027 CD4028 TD4029 CD4030

CMOS

C04035 1 85

CU4040 2 45

CD4D4? I 90

CD4044 1 50

CD4046 2 51

CU4047 2 75

C04049 79

CD4050 79

CD405I 2 95

CD4053 2 95

CD4060 3 25

C04066 1.75

CD4069 4S

CO4071 45

CD4072* 45

CD40S1 45

CD4511 2

CD4518 2

74 COON 39

74C02N 55

74C04N

74CI0N

74C20N

74C30N

74C42N

74C73N

MC74

74C90N

74C95N.

74C107N

74C151

74C154

74C157

74C160

74C161

74C163

74CI64

74C173

74C193

74C195

MC4044*

MCI 4016*

LM30QH

IM301H

I \13QlCN.

LM302H

IM304H

LM305H

LM307CN

LM308M

LMJ08CN

LM309H

LM309K

LM310CN

LM3I1H

LM311N

LM318CN

LM319N

LM319D

LM320K5

LM320K 5 ?

LM320K.1?

LBHfJK 15

LM320T-5*

LM320J 8

LM320M2*

i.M320M8*

LM323K-5*

LM324N

LM339N

LM34QK5

LM340K-12

IM340K-15

LM340K-24

IM340T-5

IM340I 6

LM340T-8*

LM340M8*

LM340I '?

IM340M5

LM34QI 24

L.M350H

LM351CN

IM370N

LM370H

LM373N

LINEAR

LM377N

LM380N

LM380CN

IM381N

!M382fJ

HE501K

NE510A

NE531H

NE536T

NE540L

NE55QN

NE553

NE555V*

NES60B*

NE561B*

NE562R*

NE565H*

NE565U*

NE566CN*

NE567H*

NE567V*

LM703CN

LM7Q9H

LM7Q9N

LM710fi

LM7UN

LM723N

LM723H

LM733N

IM739TJ

LM741.GH

LM741CJJ

4N

LM741

LM747H

LM747N

LM748H

LM748N

LM1303N

LM1304N

LMI305N

LM1307N

IM1310N

LM1351 It

LM1414N

LMI458C

LM1496N

LM1556V

LM2111N

LM2901I.

LM3065N

LM3900^

LM3905N

LM3909*

LM5556N

MC5558V

LM7525N

LM7535N

80360"

LM75450

75451CN

75452CH

75453CN

75454CN

75491 CfJ

75492CN

75494CN

HCfl LINEAR

Cf.3013

CA3023

CA3035

CA3039

CA3046

CA3059

CA3060

CA3080

CA308'

CA30B2

CA30B3

CA3085

CA30B9

CA3091

CA3123

CA3130*

CA3600

RC4194

WC4195

KITS

EXAR

ics

XR-2206KA

SPECIAL

$17.95

ncliidc; monolttliu: lunclion qeneraia

IC. PC board, and assembly instiuciion

manual

XR-2Z06KB

SPECIAL S27.95

Sjitie ji 'R L'.'iih-A it

ve and includes external componcits for PC

oard

nMERS

5TERE0 OECOOERS

XH-555CP

5 69

XR-1310P

S3 20

XA-320P

1 55

XR1310EP

320

XR-556CP

1 85

XR1800P

3 20

XR-2556CP

3 20

XR 2240CC

3 25

WAVEFORM GENERATORS

XR-205

8.40

PHASE LOCKEO LOOPS

XR-2206CP

3 85

Xfl-210

5 20

XR-2207CP

XR-215

6 60

MISCELLANEOUS

XH-5B7CP

1 95

XR-2211CP

670

XR-2567CP

299

XR2261

3 79

DATA HANDBOOKS

7400 Pin-cut & Descriplion ot 5400/7400 ICS S2.95

CMOS Pin-out & Description ot 4000 Series ICS $2.95

LINEAR Pm-oul & Functional Description $2.95

ALL THREE HANDBOOKS $6.95

CONSUMER ELECTRONICS

exelar

DIGITAL WATCH

This walcn is manulactLiied Dy National Semiconducloi It provides 5 functions, fiours. minutes, seconds, dale. AM indicator dot Accuracy is assured to 5 "seconds per month Dy precision Quam crystal I' something should go wrong with the watch, repair is as-' sured within 48 hours afler it is received Complete with si eel black leather band

ES4-YS

3 MICRON GOLD PLATE BEZEL

$29.95

NOT A KIT

Hovus

DIGITAL ALARM CLOCK

This 4 dicit Novus Alarm Clock is a very reliable and smaily styled unil 11 provides such features as an alarm sellable to any minule ol ihe day, a 7 minutes snooze alarm, a power faiLre indicator, and even an A.M.. P.M indicator.

NOT A KIT

$19.95

xciton OPTO ELECTRONICS

LITRONIX DISCRETE LEDS

MONSANTO

125'

dia.

XC2Q9R XC209G XC209Y XC2090

SSI

J SI 4/$1

4fSl

mi—

.200'

dia.

XC22R XC22G XC22Y XC220

SSI

4S'

4 St

.185" dia.

.190" dia.

XC526P XC526G XC526Y XC5260

Ml

«r

4fTt1

4 SI

^H

^^^

.200'

dia.

XC556R XC556G XC556Y XC5560

5S1 4.SI 4S1 4.S1

DISPLAY LEDS

ATJ2 MAN 4 MAN 7

XC111R XC111G XC111Y XC1I10

.085" dia.

MV50 D85 dia Mh>

red led

DL707 DISPLAY LEDS

EMJ503 FN070 ^^ M«j 2 MAN 4 MAN 7

■ ill IB ■

MAN 2 MAN 3 MAN 4 MAN 7 MAN 7G MAN 7Y MAN 72

POLARITY COMMON ANODE 5 x 7 DOT MATRU COMMON CATHODE COMMON CATHODE COMMON ANODE COMMON ANODE-GREEN COMMON ANODE-YELLOW COMMON ANODE

TYPE

MAN 74

DL707

DL7J7

DL750

DL33B

f-N07Q

FND503

FND507

POLARITY

COMMON CATHODE COMMON ANODE COMMON ANODE COMMON CATHODE COMMON CATHODE COMMON CATHODE COMMON CATHODE f.OMMON ANODE

IC SOLDERTAIL — LOW PROFILE (TIN) SOCKETS

16 pin 18 pin 22 pin

16 pin IB pin

10 pin 14 pin 16 pin

18 pin

^^T^^

35 SOLDERTAIL STANDARD (TIN)

24 pin 28 pin 36 pin 40 pin

28 pin 36 pin

40 pin

SOLDERTAIL STANDARD (GOLD)

24 pin 28 pin 36 pin

43 40 pin

WIRE WRAP SOCKETS (GOLD) LEVEL #3

24 pin 28 pin 36 pin

50 PCS. RESISTOR ASSORTMENTS $1.25 PER ASST.

ASST. 1 ASST. 2 ASST. 3 ASST. 4 ASST. 5 ASST. E

ASST. 7

ALL OTHER 5-25 PCS

10 OHM 12 OHM 15 OHM 18 OHM 22 OHM

27 OHM 33 OHM 39 OHM 47 OHM 56 OHM

6BOHM 8? OHM 100 OHM 120 OHM I5COHM

180 OHM 220 OHM 270 OHM 330 OHM 390 OHM

470 OHM 560 OHM 680 OHM 820 OHM IK

1 2K 1 5K 1 8K 2 2K ? 7K

3.3K 8 2K

3 9K I OK

180K J70K 1 2M 3 3M

RESISTORS FROM 2 2 05 ea 30-95 PCS

220K 560K 1 5M 3.9M OHMS 04 M

5 6K 15*

39K 100K 270K G80K

1 HM

820K 2 2M 5.6M

5 6M AVAILABLE 100-495

il!

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% 50 PCS.

1/4 WATT 5°.o 50 PCS.

1/4 WATT 5% 50PCS.

MULTIPLES OF a ea

;a 500-995. 0275 ea

14 PCS. POTENTIOMETER ASSORTMENTS ASST A2ea 10 OHM-20 OHM-50 OHM-100 OHM-200 OHM-250 OHM-5Q0 OHM ASST B 2 ea: IK, 2K, 5K. iok. 20k ,'Hk 50K ASST C2ea 50K. 10OK. 20OK. 250K. 5O0K. IM.2M $9.95 Per ASSt.

Each assortment contains 14 pes ol 10 li

II pots are available in single umi guanines S.9

'Astrisk Denotes Items On Special For This Month* SatisfactioR Guaranteed. $5.00 Min. Order. U.S. Funds. California Residents — Add 6% Sales Tax — Data Sheets 25c each Send a 13c Stamp (postage) for a FREE 1976 Catalog

MWSS

1021 HOWARD AVE., SAN CARLOS, CA. 94070 PHONE ORDERS — (415) 592-8097

74LS00 74LS02 7JLS03 74LS04 7-US05 /4LS08 74LS10 74LS13 74LS14 74LS2D 74LS26 74LS27 74LS28 74LS30 74LS32 74LS40 74LS51

74LS00 TTL

74LS55 74LS73 74LS74 74LS75 74LS76 74LSB3 74LSB6 74LS90 74LS92 74LS93 74LS95 74LS96 74LS107 74LS112 74LS132 74LS136 741S138

74LSI5I 7-1LS153 74LS157 74LS162 74 LSI 63 74LSI64 74LS1B1 74LSI90 74LS19' 74LSI92 74LS193 74LS194 74 LSI 95 74LS257 74LS260 74LS279 74LS670

THIS MONTH ONLY!!! DL728

Trie DL728 is t dual 0.5' common :aitiode red display II is ideal for use wilh clack chips, as segments are already multiplexed. £1 Qij

oral

M

i

>«,

H

3oeg

DM

*».,

«

333

,»

3«

,„

,3.

1

5;

'»

33S

IBS

'"

i !

0»

™

ON

11]

3.

'"

1.43

1 30

MINATURE TOGGLE

PUSH BUTTON

Model 1 Ouamly net prices Number FJ.nct. 2-9 10-29 30-99 PB-123 S235 SI 95 $1.47 S1.30

3-126 S235 11.95 SI 47 SI 30

T7T '

THUMBWHEEL SWITCHES

ACCESSORIES OtlCflplion End PIjIeiPjui Dry.flti Puie iMcr Bun" Bm» itim

ACCESSOfllES

a POs'mDTmjTAFPr' SWITCH tnese smile" an; a 7 posilion. one /r**"\ 2 iiositiori open, inlary swUcfienclDsed

^WS* (* .*) FOR

^■iS S1.00

a TO-5 can Ttiey have a itandard 8 pin conliguration and will mount perfectly

ZENERS— DIODES— RECTIFIERS

TTPE

IN746

1N751A

1N752

IN 753

1N754

1N9E5B

1N5232

IN5234

IN5235

1N5236

IN456

IN458

IN485A

IN4001

1N4002

1N4QQ3

1N4U04

400m 400m 400m 400m 400m 400m 500m 500m 500m

50PIV 100 PIV

200 PIV

■100 PIV

I AMP I AMP 1 AMP

TYPE VOLTS IB4005* 600 PIV

1N4006* 800 PIV 1IU0Q7' 1000 PIV 1(8600 50

1N4I48 75 1N4154 35 1N4734 5.6 1N473S 6.2 1N4736 6 8 1M473B 8 2 1N4742 12 1NJ744 15 1N11B3 50 PIV IN1184 100 PIV IN'186 200 PIV H11188 40OPIV

1 AMP 1 AMP 1 AMP 200m

PRICE 10/1.00 10 1 00

IQ'1.00 61 00 15/1.00

12'1 00

35 AMP 35 AMP 35 AMP 35 AMP

WPS -105

MPSA06

;'N2,>I9A

2N3221

2f«!22A

2N2369

FN2415 2N24B" I'f.'P'jOtlA ?N?TO7A 2N2925 2H3053 2N3055 M.IE3055

MJE299S

2N.1392 2N339B

TRANSISTORS

5:11 00

3'S? 00

43100

!

PN35G?

W1.00

PN356B

4 SI 00"

PN3S69

"SI CO

2N3704

5 SI 00

2N3705

5SVOO

2H3706

mi oo

2N3707

5S1 K)

2N37I1

5 SI 00

2N372J

S E5

2N372S

S' 00

2N3903

5 SI 00

2H390"

4-S100

2M390S

J'SI 00

ZN3906

1*11 00

2N4013

3;S! 00

2N-0I4

3 Si OO

PN4249 PN42S0 2N4400 2H-110I 2N4JQ2 2rM'03 2H4-09 2NS0B6 2r.5087 2N5D88 2N5089 2NSI29 2N513S 2NS13S 2N5209 2N5951

4S1 00 Ml oo

5 SI 00

100 pt 220 pi 470 pi

.0022

0047ml

01ml

1 35V .15 35V 22 35V 3335V .4735V .6835V 1.035V

4 7 50V 1 0 50V 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 1000 16V 2200 16V

CAPACITOR CORNER

50 VOLT CERAMIC DISC CAPACITOflS 10-49 50-100 1-9 10

04 03 001|iF .05 .0

.04 .03' 0047/-F 05 0

04 .03 OVF 05 0

04 .03 022«F 06 0

04 .03 047uF 06 0

04 .035 1,iF ,12 0

100 VOLT MYLAP, FILM CAPACITORS 10 07 .022-111 .13 1

.10 .07 047mf .21 .1

lrrl 22n.1

i 20% DIPPED TANTALUMS (SOLID) CAPACITORS 28 .23 .17 1 5 35V .30 .26

28 .23 .17 2225V .31 .27

28 .23 17 3.3 25V .31 27

28 .23 .17 4.7 25V .32 ,28

28 .23 .17 6.8 25V .36 .31

28 .23 .17 10 25V JO 35

28 .23 .17 15 25V 63 -50

MINIATURE ALUMINUM ELECTROLYTIC CAPACITORS

Axial Lead

.15

.10

47 25V 15

47 50V 16

1.0 16V IS

10 25V 16

1 0 50V 16

4 7 16V 15

4.7 25V 15

4.7 50V 16

10 16V .14

10 25V 15

10 50V 16

47 50V .24

tOO 16V 19

100 25V 24

100 50V .35

220 -6V 23

470 25V 31

Radial Lead 13

Robert M Hayes and Joseph Becker, publishers and authors in their own right and now associated with John Wiley and Sons, Inc. They presented a concept I have held to since first reading. Their book was part of a series, which in their words ". . . is designed to include books that are concerned with various aspects of communicating, utilizing, and storing digital and graphic information. It will embrace a broad spectrum of topics, such as information system theory and design, man-machine relationships, language data processing, artificial intelligence, mechanization of library processes, nonnumerical applications of digital computers, storage and retrieval, automatic publishing, command and control, information display, and so on." Their reason for the series I considered most important. "Information is the essential ingredient in decision making. The need for improved information systems in recent years has been made critical by the steady growth in size and complexity of organizations and data. Information science may someday be a profession in its own right."

This was the answer to a question I didn't know how to phrase. Computers are not the desired end; they are but tools used in

working toward an end. Manipulation of data is not the goal, but availability of data for use. Developing control systems is not our prime function, but freeing ourselves from the task of controlling so we can advance toward our selected end is. Computer science is a technology that is a part of the larger field of data processing. DP in turn resides as a part of this thing called Information Science.

What has this got to do with BYTE and an ALTAI R 8800? Progress is retarded when ideas and technology are cloaked within institutions and discussed in esoteric terms. Progress isn't made with black boxes and magic. Progress begins with understanding, understanding the problem, the desired ends, and the tools at hand. With the advent of the "affordable" computer, people from many disciplines, backgrounds, experience and with many problems and solutions, are getting into data processing. It will be this broad background of "scientists" that will produce new, innovative, and productive directions to Information Science. Similarities may be drawn from mechanics, Watt and the steam engine, electronics, Baird (no relation to the writer) and television, armaments, Williams and the carbine. True, insti

Computing 1776 Poster

Robert Tinney painted a beautiful oil painting on a bicentennial theme bridging two centuries of America's development. This painting has been reproduced on the cover of this issue, and a full-sized poster in color without the BYTE logo has been printed for you. It will make a perfect wall decoration in your office, home or computer room.

The poster is 20" by 24" (51 cm by 61 cm) large with a white border of 2 inches (5 cm) at all four sides. The image size is 16" by 20" (41 cm by 51 cm), and it is the original size. The price is $2.95 postpaid, and the poster is shipped in a mailing tube to avoid folding. Only 2,000 copies have been printed on the first run wtiich will be sold on a first come first served basis. So hurry if you want to be among the first to show this beautiful poster to your friends.

BYTE Posters

PO Box 274

Jaffrey Center NH 03454

603-924-7217

Name

Allow 6-8 weeks for processing.

Posters $2.95 each

Address .

City.

-State .

-Zip

□ Bill BankAmericard

□ Bill Master Charge No

□ Check Enclosed $

. Exp. Date .

118

S. D. SALES CO.

P. O. BOX 28810 DALLAS, TEXAS 75228

UP YOUR COMPUTER!

21L02-1 1K LOW POWER 500NS STATIC RAM

TIME IS OF THE ESSENCE

And so is power. Not only are our RAM's faster than a speeding bullet but they are now very low power. We are pleased to offer prime, new 21L02— 1 low power and super fast RAM's. Allows you to STRETCH your power supply farther and at the same time keep the WAIT light off.

8 for $17.50

TOUCHTONE KEYBOARD SWITCH SET

By Controls Research. High quality long life switches with keytops. For encoders, combination locks, etc.

12 switches and tops, including 0 thru 9. Switch contacts are independent, allows hook-up to any matrix. Keytops easily removed.

$2.95 Set 2 for $5.00

4K LOW POWER RAM BOARD KIT

Imsai and Altair 8080 plug in compatible. Uses low power static 21L02-1 500 ns. RAM's. Fully buffered, drastically reduced power consumption, on board regulated, all sockets and parts included. Premium quality plated thru PC Board.

THE WHOLE WORKS

$89.95

Call your BANK AMERICARD or MASTER CHARGE

order in on our

CONTINENTAL UNITED STATES TOLL FREE WATTS:

1-800-527-3460

TEXAS RESIDENTS CALL COLLECT:

1 MORE TIME

214/271-0022

Please call between 8:30 AM and 6:00 PM C.S.T. - Monday through Friday. You may also call to check stock or just ask a question. However, only B.A.C. and M.C. orders will be accepted. We do not ship C.O.D. (See terms of sale on other page.)

tuitions do make dramatic advances. They are not the evil creatures many would believe them to be; but an involved, interested general public can work wonders to dwarf the efforts of our mightiest conglomerates.

However, let us pause before we plunge headlong into our new race for advancement and consider the problem of rediscovering the wheel. For example, the German printer Gutenberg invented the printing press with moveable type. This was unfortunate, because this "invention" had been in use since well before Gutenberg was born. That this man, with his skill and ambition, was removed from information on the advance of other societies is understandable due to the lack of communication between societies. For the ambitious craftsman of today to suffer the same situation because of a lack of communications among individuals is a travesty. The answer to this problem is easier stated than the problem. COMMUNICATE. How? Through the media. Which? Publications — and thus we arrive, delightfully, at BYTE.

BYTE must be, and so far has been, a link that provides for information, education, discussion, development and debate. A two way link between the editor, authors and companies and an increasing rank and file of the informed and to-be-informed information-using public. BYTE is in the forefront of this revolution in computers, data processing and information science. If you and I choose not to face our responsibilities in making the communications aspects of BYTE work, we only hinder the dawn of a new age of discovery. If, however, we involve ourselves in making the media work to its designed ends, BYTE, those associated with it, and the information society will benefit from our efforts.

Thanks for your time. Keep up the good work. Your efforts with BYTE so far are deeply appreciated.

John T Baird

Sperry Univac

Okinawa JAPAN

SOME IDEAS

I was one of those who were intrigued enough by your prospectus to see what your magazine would be like, and I am pleased. I have learned a great deal about computers from your pages, enough that I want to have a system of my own to play with. BYTE is described by some as being "hardware oriented" and that's not bad; but it seems that most of its articles assume considerable knowledge of computers, leaving the

interested-but-ignorant scrabbling around wondering where to start to learn. I have questions like these:

How difficult would it be to get a simple 8008 based system going from "scratch" (buying chips and parts and going from there)?

What kind of test equipment would I need? An oscilloscope? How good?

Has anyone ever published the schematic for such a system? With tips and pitfalls?

Has anyone ever described how to order PROMs programmed with basic programs such as loading, monitoring and debugging routines? Are these copyrighted? How about assemblers?

I have noticed that you have been running articles for the uninitiated. Keep it up, and remember that there are some of us out here who need explanations at a very basic level. Also please get review articles about kits published as soon as possible after introduction. Those who go this route will need to be aware of what they are getting into.

Thanks for the good work.

Robert H Irwin Berkeley CA

HARD UP FOR HARD COPY?

One of the major problems encountered in building one's own computer — either from scratch or from a kit — is the 10 situation. I think it's fair to say that if you want hard copy, it's going to cost you about a thousand bucks. This problem has been mentioned by several of the authors in your magazine, but none of them has suggested the obvious remedy.

There must be tens of thousands of five level teleprinters floating about in the US and Canada. Unlike the Model 33 most of them were built to last, and they can give many more years of reliable service. Their most important qualification is their cost. They can be had for less than $ 100 for the most part. This particular machine that I am using to type this letter had less than 300 hours on it and cost me $25.

It may appear to be a backward step to go to the Baudot code and they are somewhat slower than the Model 33s, but they are just about the only game in town. Even a TV typewriter of some sort will end up costing about $500 and you still haven't solved the problem of hard copy.

I feel that if some microprocessor kit maker offered a PROM monitor and an

120

-4

•4

< -4 •4 •4 < <4 ■4

4 <4

< ■4 -4 4

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

COMPLETE ALARM CLOCK

"4 Digits 0.5" LED with brightness control '12 Hour display with AM/PM indication 'True 24 hour alarm with repeatable snooze ' Power failure indication for power interrupt

MODEL EC 400

(Not A Kit) Only $22.50

NEW CLOCK KITS!

MODEL OC1032

JUMBO DIGITS

ALARM CLOCK

1.2" Bright Yellow

Color Readouts

Features: 12/24 Hour Display, 24 Hour

Alarm Set, 10 Min Snooze Switch, AM/PM Indicator Kit I ndudes:Woodlike Color Plastic Case, 4 Digit 1.2" Neon Display with AM/PM. TMS 3834 Alarm Chip, 2 pes. double sided PC Boards, 16 transistors, all other components, Transformer and speaker

SPECIAL $35.90

MODEL OC1030

4 DIGIT ALARM CLOCK KIT i 0.5" Green Color Readouts

Features: 12/24 Hour Displays, 24 Hour Alarm Set, 10 Min Snooze Switch, AM/PM Display.

Kit Includes: Orange Color Plastic Case, 0.5" LD8132 Green Color Readouts PC boards with transformer, all electronic parts with

speaker Only S28.50

THE MOST POPULAR

WM

MM5314 KIT

WITH A NEW CASE!! Features: 12/24 Hour Display 50/60 H2 Input 6 Digits Readout Kit Includes: Grey Color Plastic Case MM5314 Clock Chip PC Boards and Transformer, 6 Green Color 0.3" Tube Readouts, All other transistor Drivers and other Com

pones Special Only S 19.95 eo.

MODEL CT7001

Drive 6

Fairchild FND

0.5" Red LED

with MONTH & DATE

50/60HZ and ALARM

Only $28.50 eo.

COMPUTER KEYBOARDS

Standard Teletype Keyboards with gold plated contact switches. All switches are independent and allow you to connect into any form of output. Only $22.50

MODEL B SPECIAL ONLY $16.50 ea.

Fully ASCII decoded with electronic parts TTL logic. Used but all in good condition.

CLOCK CHIPS

MM 5311 24 pin

MUX and BCD output MM 5313 28 pin

MUX output MM 5314 24 pin

MUX output CT7001 28 pin

Alarm Time & Date MM 5316IF3817) 40 pin

Alarm. Direct Drive Led

6 digits

$.4.50 each 6 digit

$4.00 each 6 digits

$3.50 each

$.6.50 each $4.50 each

COLD WIRE WRAP IC SOCKETS

14 pin 16 pin 24 pin 28 pin

14 pin 16 pin 18 pin 24 pin 28 pin 40 pin

.36 each

.50 each

1.25 each

1.25 each

10 for $3.00

10 for 4.00

10 for 10.00

10 for 10.00

SOLDER TAIL SOCKETS

.35 each 10 for 2.80

.36 each 10 for 3.00

.40 each 10 for 3.50

1.00 each 10 for 8.00

1.10 each 10 for 9.00

1.25 10 for 10.00

Standard Xtal Socket

.35 each

pi

12 VDC Relay

SPDT 4 amp $1.25ea.

HBB>

6V6AMPH YUASA Wet Rechargeable Battery

lYu.sJi^^^

f>

AC ADAPTERS

110V AC Inpul

4 5V 100MA. GV I00MA

9V 100MA. 12V I00MA

S2 85 each 12V 150MA ACouipu:

S2 00ea

TRANSFORMERS

110V input

12 0 12V lamp $2 25 ea

12V CT500MA

with one group 165VSI 50 im

0 3 12 24V 500MA S2 75 ea

NI-CD FAST CHARGE

Rechargeable AA S./>

BATTERIES

BY SANYO

ALL BRAND NEW SI.60 each 4 fo, S6.00

AUTO ALARM KIT

Cnmefigbter Auio

i is an electronic, controlled auio uron system, normally ted within the glove bo* of an automobile. Two minutes after turning olf the ignition. Ihe alarm automatically turns itsell "on." When the auto is re-entered, the horn win. sound alter a 10-45 second entry delay The automobile owner, by inserting the ujnition key. will activate the alarm. Once activated, the alarm will sound foi two minutes before automatically turning oil. The alarm then resets and is ready 10 again protect the vehicle from unwanted entrV

FEATURES Simple installation 5 wires. Automatically nuns on when auto is parked, Adjustable entry time, Extended exit time to allow lor unruslieri exit from vehicle. Numerous applications include protection of boats, campers, trailers, motorcycles, trucks. Cannot be deactivated by "hot wiring" an auto. Cannot be turned off without ignition key, Negative ground only. ONLY $10.00 per kit Completed Unit $16.00

ELECTRONIC SWITCH KIT

CONDENSER TYPE

Touch on Touch Off use 7473 I.C. and 6V relay $5.50 each

FM WIRELESS MIC KIT

Transmit range up to 500ft. Easy to assemble $4.50 each

Sub-Mini Size

Condenser Microphone

$2.50 each

ELECTRONIC ORGAN

KEYBOARD

3 Octaves Full Size

Limited Quantity

$33.00 each

LED READOUTS

Fairchild f SC 8000

O.S" Red LfcDT, Drgit

with AM'PM

)cve hy MM "3316 or Fai

S10.50ea. JUMBO LED

ONLY $3.50 ea.

MAN 74 MAN 84 HP 0 3" DL 747 DL 727 DL 707 FND 70 FND 503

FLV 50 Submmi Red SO FLV-209 Mm. Red SO Jumbo Red $0 Jumbo Green SO — jumbo OrangeSO

Red

Yellow

Red

RZD

Double Digit

0 3" Reel

0 25" Red

0.5- Red

SI .00 SI.50 SI 20 $2.50

S2.50 SI.30 SO. 60 SI 60 15 ea. 15e 15e

50 UA PANEL METER

Finder Scaled from 0 10

Only $3.80 ea.

MEMORIES

1702A Erasable Prom S13.50ea.

2102 1 1024 BIT Static RAM $2.25 ea. Over 10 pes. $1.99 ea.

Too*

2107A4K RAM in 22 pin DIP 4096 BIT Dynamic Memory, Intel Prime Units

$16.50 each or 4 lor $60.00 TTL AND CMOS PRICE LIST WILL BE MAILED OUT ON REQUEST.

COMPUTER GRADE CAPACITOR

15500 MFD 75 V DC S4.95ea

5600 MFD 60V DC SI.25 fa.

SAE DIP SWITCHES

^^frr;

► ►

4 Toqi|leSPST Switches on a Mini DIP

18 pinsl Only SI.50 ea 8 Toggle SPST 5-v.iches on a DIP (16 pins) Only S2.60 e.i

SUBMINIATURES TOCCLE SWITCHES

A A

SPDT On None-On $t.30e< DPDT On None-On S1.50e;

m

EECO BCD THUMBWHEEL SWITCHES

8 positions SI .25 ea.

10 positions $2.15 ea.

'JIA 12 positions S2.50ea.

QUARTZ CRYSTALS

1 MHZ Computer Crystals S4 25 ea 3 58 MHZ Color TV Crystals SI .25 ea.

Use with Nation MM 5369 lo make ;i fieilect nnie base for clock.

NATIONAL MM 5369 17 STAGE PROGRAMMABLE OSC/DIVIDER generate A 60 H/ reference Frequency with a 3-58 MHZ Color TV XTAL in Mini DIP Package

ONLY S2.25 each

NEW ALARM CLOCK CHIPS

ONLY $3.50 ea.

Da

a .261

«■

PRUDRAMMAIUf. OPTIONS

PART =

FEATURE

OPTION

AA

AH

AC

au

.11

frmuinty

1.0 HI S0M7

1

1

x

x

"

Ti'ilt

QiialiV

II Horn ?<i Main

X

X

x

X

„

OmttHH

Aljrm Counlti Bill Counter Minute Iimti

»

*

Signil

DC Level

8

X

x

„

x

Alum

Dawn

MwtehUdVUlHi

•■■■: M..I -,',■,i

x

x

x

*

I

(■■..■..■i Fulurr

OFT

*

*

x

x

x

Stgnitnl Dul put PdIii.iv

V.lloi Dllpliy Vdd lor Diipliy

x

*

„

x

„

AM ... PM

Dupllytd julllimti

X

X

X

x

X

► ► ►

MINIMUM ORDER $10.00. California residents add 6% sales and 1.50 to cover postage and handling. Out-of-state and overseas countries add $2.50. .<ff>. SEND CHECK OR MONEY ORDER TO:

i§ FORMULA INTERNATIONAL INC.

YmYmVC* 12603 CRENSHAW BOULEVARD • HAWTHORNE, CAL.I FORNIA 90250 ^.

** For more information please call 12131 679-5162 p>

STORE HOURS 10-7 Monday - Saturday 8/76 p»

YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY

interface for these machines, he would be doing the hobby a great service.

Finally, I would like to commend you on the fine magazine. I personally would like to see more detailed construction articles and more emphasis on hardware but have found the present mix pretty good.

J A Koehler Saskatoon, Saskatchewan

Mr Koehler's letter was sent to BYTE on pin feed paper with excellent copy. The following is a reduced sample from the letter's original copy:

THERE MUST BE TENS OF THOUSANDS OF FIVE LEVEL TELEPRINTERS FLOATING ABOUT IN THE U.S. AND CANADA. UNLIKE THE MODEL 55 MOST OF

THEM were built to last and they can give many more years of

RELIABLE SERVICE. THEIR MOST IMPORTANT QUALIFICATION IS THEIR COST THEY can be had for less than ioo DOLLARS FOR The MOST PART. THIS

PARTICULAR MACHINE THAT I AM USINC TO TYPE THIS LETTER HAO LESS THAN 500 HOURS ON IT AND COST ME 25 DOLLARS.

GOTCHA

Dear Nameless BYTE Employee:

Enclosed is a check for $12 for a year's subscription to BYTE magazine. I got tired of stealing others' issues and copying them at the office.

Thomas J Kaminski Greenbelt MD

PS: Excuse my writing. My hand is in a cast after some wretched BYTE issue No. 1 owner caught me reaching into her desk drawer for the copy.

There are no nameless B YTE employees. The staff section of the contents page names every person who is connected with the magazine.

INSURMOUNTABLE?

Everyone has problems. Mine are insurmountable. After sitting around for a month, snapping at every creature and/or machine that has crossed my path, I have discovered the prime cause of my difficulties: I haven't seen an issue of BYTE since Christmas. Since I am a Navy officer stationed in Guam, I could not find a copy to mooch (or steal, etc). Maybe I am the only subscriber on Guam?

Second class mail (for me) goes from New Hampshire to the FPO in San Francisco. After the FPO reads my BYTE, they (must) send it to their friends at the post office in Hawaii. Maybe someone there has a friend in Midway? It seems as if the issue(s) enroute are passed through (and read by) every post office between us. They have high mileage when I get them.

Anyway, is it possible to have my very own personal copy of BYTE sent by first class mail? This will reduce the month and a half handling (reading) period and maybe encourage those in the FPO, Hawaii, etc, to purchase their own personal copies since it is hard to read all of each issue when they go through as fast (?) as first class.

Thomas D Dean FPO San Francisco CA

Here's mud in our eye (for now). Computer programs don't spring forth by magic, even for computer magazines. Many people have asked for the privilege of paying extra postage and getting B YTE by first class mail or AO book rate air mail overseas. We have not yet implemented any features in BYTE's circulation management system to handle special cases. When and if such provisions are available at a future date, we'll put a note into the magazine.

What's

New?

A First Briefcase Computer?

A new company, STM Systems of Mont Vernon NH, has come out with a unique self contained computer system which is shipped in a briefcase and requires only a standard television monitor and audio cassette recorder to serve as peripherals. The BABY! computer is a complete 8 bit system with an MOS Technology 6502 processor, 2 K of programmable memory, an ROM monitor, video display generator, audio cassette interface, keyboard and power supply and attache case. The computer itself is the lucite plastic case sitting inside the attache case in photo 1. It measures 14.5 inches

(36.8 cm) wide by 10 inches (25.4 cm) deep by 4.5 inches (11.4 cm) high. The total mass of the computer itself is approximately 10 pounds (4.54 kg), and can easily be toted under one arm along with a typical small TV monitor.

Microprocessor Board

The BABY! computer comes with a single board microprocessor which is mounted underneath the keyboard along the bottom of the case. The board comes with 2 K bytes of static programmable memory, and can be expanded to 4 K using sockets on the board and additional 2102 memory parts of the

122

DELTA ELECTRONICS^

POST OFFICE BOX 2, AMESBURY, MASSACHUSETTS 01913 Phone (617) 3884705

Laboratory Regulated Power Supply

(VIATROIM System 21)

This power supply was designed for use in a small computer system where performance and reliability were an absolute must. 5 output voltages are available:

1. 12 volts DC<a 1.0 amp

2. 14 volts DC @ 2.9 amps

3. 18 volts DC @ 6.6 amps

4. 26.5 volts DC © 3.25 amps

5. 24 volts DC@ 1.6 amp All voltages are semiconductor rectified and highly filtered, and may be run at full load at the same time. Each output is fused seperately, and the entire supply is circuit breaker protected. A switched AC outlet is available on the front panel. This would be an ideal supply for a small system; each board could have its own on-board voltage regulators. Also good as a general purpose laboratory power supply. Use it stand-alone or rack mounted. 17>2" wide x 5" deep x 6%" high. Shipping weight 35 lbs.

STOCK NO. B5025 $27.50 each, 2 for $50

t i

*.» «

*. s

* 4

Power Transformer for 13.5v DC @ 10 amps

This versatile ferro-resonant (voltage regulating) transformer has many uses. With the dual primaries in parallel as shown, the DC outputs (after rectification & filtering) are 24v @ 6 amps, 18v (s> 5 amps, and 13.5v (a> 10 amps. The last is useful for powering CB sets, ham transceivers, and other mobile equipment, as well as a computer power supply. By using the 50 Hz taps, voltages are raised about 20%. By using the primaries in series, the outputs become 12v DC (g> 6 amps, 9v (s> 5 amps, & 7v @ 10 amps. Either of the last 2 could be regulated to +5 volts, making this an ideal computer power supply transformer. 5%" x 5%" x 514". Shipping weight 24 lbs. With resonating capacitor and data.

STOCK NO. B9973 $17.95 each, 2/35.00

G.E. Illuminated Pushbutton Switches

G.E. illuminated pushbutton switches, with positive action momentary contacts. Snap into panels from front

without tools, and may be ganged horizontally. Legend inserts can be printed or engraved; they are illuminated

from the rear with 2 bulbs independent of switch action. Ideal for Reset switches & other control functions, and

as sense switch inputs. Size: VA" x 7/8", 2J4" behind panel. Takes miniature flange base lamps, up to 28v. Contacts

rated at 125v max. AC or DC.

STOCK NO. B6316 SPDT switch Red lens Distributor price $14.60 $4.50 each, 3/12.

STOCK NO. B6317 DPDT switch Yellow lens Distributor price $17.60 $4.95 each, 3/14.00

Grab Bags

Unlike most places, our grab bags are not "floor sweepings." Rather, we offer the same high quality merchandise as in our catalog. We attempt to provide a good variety in each bag.

®zr

$ffi

DISC CAPACITOR GRAB BAG. Values from a few pf to .2 mfd and voltages from 12v to 1 Kv. Marked, most with long leads. STOCK NO. B2547 % lb., 100 to 250 pieces $2.00 ea, 3/5.00

TERMINAL STRIP GRAB BAG. An assortment of 25 pieces,

from 1 to 6 terminals, with and without ground lugs.

STOCK NO. B6143 Package of 25 $1.00 ea, 6/5.00

*4 WATT RESISTOR GRAB BAG. An assortment of H watt resistors on rolls, mostly 10%. Also a few 5% resistors, small diodes, rectifier diodes, zeners, & tantalum caps. 250 to 350 parts. STOCK NO. B8361 % lb., 250 parts min. $2.00 ea, 3/5.00

POWER RESISTOR GRAB BAG. An assortment of 4 & 5 watt power resistors. STOCK NO. B8765 10 for $1.00, 50 for $3.50

ELECTROLYTIC CAPACITOR GRAB BAG. 12 assorted electrolytics, from 5 mfd to 2500 mfd. Voltages from 5v to 450v. STOCK NO. B2457 8 lbs. 12 for $3.00, 36 for 7.50

Plexiglass

Quite useful for putting the professional finishing touch on your home brew projects. All 3 pieces are 1/8" thick, smoked, and have protective paper attached. New.

STOCK NO. B7295 one end.

3" x 17'/4"

With 54" hole over VA" from $2.50 ea, 5/10.00

STOCK NO. B7325 1 7/8" x 16y2". With %" hole over 1%", and small hole over %" on other end. $2.00ea, 5/8.00

STOCK NO. B7326 from one end.

2%'

x 17 3/8". With %" hole over VA" $2.50 ea, 5/10.00

5 vert, 15 amp Transformer

A compact, high current transformer, giving 5.0 volts out at 15 amps. Use 2 in series for 10v, 15A, which is ideal for the unregulated side of a high current, 5v DC logic supply. TA" x 2%" x 3 3/8", 4 lbs.

STOCK NO. B9979 $4.95 ea., 2/9.00

RCA End View NUMITR0NS

The RCA end view NUMITRON is a 7 segment incandescent readout tube, with a character height of 5/8". It requires a 9 pin Novar socket, which we furnish with each tube. The tube operates at a nominal voltage of 4.5v, and draws 24 ma. per segment. It can be filtered to any color. With data.

STOCK NO. B5207 with sockets $2.75 ea, 4/10.00, 8/18.00

Send for our latest free catalog. Minimum order $5, phone orders welcome. Include sufficient postage (2 lbs min.), excess will be refunded. BANKAMERICARD & MASTERCHARGE welcome, ALL numbers needed for processing. Minimum charge $15.

Photo 1.

high speed low power variety. The processor board has logic for direct memory access and expansion plugs. The system comes with a 512 byte bootstrap loader and firmware package in ROM, and has room on the board for 4 K oytes of 2708 erasable ROM.

The processor board features a built-in character generator and video interface with 512 characters organized as 16 lines of 32 characters. The video interface uses a 7 by 9 dot matrix character generator with upper and lower case plus Greek characters. The

Photo 2.

video output is a standard composite video signal which can be used to drive a monitor. The image is non-interlaced and has low flicker.

Also on the processor board is an audio cassette interface which has an effective data rate of approximately 1200 bits per second.

Other details

The keyboard supplied with the BABY! is an upper and lower case commercial alphanumeric keyboard, with 63 keys. Using the shift key, standard upper and lower case text can be entered. Using the control key, the "alternate upper case" of Greek letters can be entered and displayed on the video monitor output. The standard power supply for the unit is 5 V at 3 A, with a 110 VAC nominal input, fully regulated. A loudspeaker is built in the case to monitor audio outputs and allow simple square wave tone generation capabilities under program control.

Software

Don Gunter of STM recently walked into the BYTE offices carrying BABY! and a TV monitor under his arm as in photo 2, which was taken at STM facilities. He opened up the brief case, plugged in BABY! and the monitor, ran a coax cable from the monitor to BABY! and proceeded to load the system software on cassette tape using the miniature cassette recorder shown in photo 1. Don then demonstrated the system. A text mode allowed him to type messages up on the display ala TV typewriter. An example with an advertising message is shown in photo 1 on the monitor. Then he activated the 6502 version of Shooting Stars {page 42, May 1976 BYTE] which is supplied with the system. After the frustrated Shooting Stars addicts at BYTE had had it out for a while, he demonstrated systems software and some simple music programs which drive the audio output speaker with either random numbers or tones selected by a keystroke.

This neat package will be available in only one standard form: a completely assembled and tested unit which uses the attache case as a key part of its shipping package. It will make an excellent teaching system for software concepts in secondary schools and colleges, and looks like an excellent system for personal use without assembly and construction hassles.

You can acquire BABY! by contacting STM Systems, Mont Vernon NH 03057. The price of the 2 K byte version of BABY! is $850, and the same unit with 4 K bytes of memory is $1000. STM quotes 60 to 90 day delivery after receipt of orders."

124

-^CRYSTALS

, l**^*-' THESE FREQUENCIES ONLY

Part* CY1A CY2A CY3A CY7A CY12A CY14A CY19A CY22A CY308

THESE FREQUENCIES ONLY Frequency Case/Style

1.000 MHz 2.000 MHz 4.000 MHz 5.000 MHz 10.000 MHz 14.31818 MHz 18.000 MHz 20.000 MHz 32.000 MHz

HC33/U HC33/U HC18'U HC18/U HC18/U HC18U HC18/U HC18/U HC18/U

Frice S4.95

S4.es

S4.95 $4.95 S4.95 S4.95 S4.95 S4.95 S4.95

CLOCK CHIPS — CALCULATOR CHIPS

MM5309 MM5311 MM5312 MM5313 MM531-1 MMS316 MM5318

cnooi

MM5725 MM5738 MM 5759 CT5001 CT5005 CT5030

MM5320

MM5330

MM5369

MM5B41

MCH08-L7

MK50Q7

LDI 10.1011

95H90

(i Digil. BCD Outputs, Resei PIN. 6 Digit. BCD Outputs. 12 01 24 Hour 4 Digit. BCD Outputs. 1 PPS Oulput fi Dfflit, BCD Outputs, 1PPS Output 6 Digit 12 or 24 Hour. 50 or 60 Hz 4 Digit Alarm. 1PPS Output Video Clock Chip. For Use Wilh MM58-11 6 Dirji!. Calander. Alarm, 12 or 24 Hour CALCULATOR CHIPS

6 Digit, Four Function, Lrss Decimal 0 Digit. 5 Function; +, =, x. -, % 8 Digit. 4 Function Floating Decimal 12 Digit 4 Function

12 Digit. 4 Function with Memory 12 Digit. 4 Function and *.

MISC. Ml):; IV Camera Sync. Generator 4'; Digit DVM Chip

60 Hi Iimehase Circuil From 3 58 MHz VttH Generator For MM531B

7 On Digital to Analog Convener 4 Decade Counter with Lalches 3V; Digit DVM Chip Set

100 MHz - 10 Counter Far Prescalers

S2.95 2.95 2.95 3 95 5.95

10 95 25 00 13.95

FILAMENT TRANSFORMERS

F-7X F-13X * M4X>

F-25X F40X F-45X

VECTOR WIRING PENCIL

Vector Wiring Pencil P173 consuls of a hand field featherweight ii.nder one ounce) tool wnich is used tn guide arid wrap insulated wire, led off a self-contained replaceable bobbin, onto comjonent leads or terminals installed an pre-punched "P" Pattern Vectorbord' Connections between the wrapped wire and component leads, pads or terminals are made by soldering Complete with 250 F ol

S9.50

REPLACEMENT WIRE — BOBBINS FOR WIRING PENCIL W36-3-A-Pkll 3 250 ft 36 AWG GREEN $2.40

W36-3-B-Pkg 3 250 It 36 AWG RED S2.40

W36-3-C-Pko 3 250 II 36 AWG CLEAR S2.40

W36-3-D-Pkq 3 250 II 36 AWG BLUE S2 40

*Sv>». 1/16 VECTOR BOARD

6SIM4Q52XXXP 169P1J 02XXXP 64PJ4 062 84P44 052 I69P-14 062 I69P84 062 I69P44 0H2C1

VECTOR TER IINALS

25 pes 50 pes

Gold Tin Gald Tin

1 50 foi 1 00 lol 2 75 lot 1 75 lot

1 75 lot 1 25 lot 3 00 lol 2 25 lot

1 75 lot l 25 lol 3 10 lot 2 25 Int

Terminals S3 50 C S13 00M

DIP SWITCH

These switches feature seven SPST slide swdcfies in a molded dip They are ideally suited lot microprocessor applications r. «c

SCR AND FW BRIDGE RECTIFIERS

C36D C38M 2N2328 MDA 980-1 MDA 980-3

15Aca400V 35A @ 200V 1 6A (§i 200V

FW BRIDGE REC. FW BRIDGE REC

1 95

64 KEY KEYBOARD

Tins keylioaid features 64 une coded SPST kevs. unattached any kind of PC.B A very solid molded plaslic 13" x 4" base suits most ao cheat ions

$19.95

HDD165 16 LINE TO FOUR BIT PARALLEL KEYBOARD ENCODER

JOYSTICK

These joysticks feature four 100K potentiometers, that vary resistance proportional to Ihe angle of the stick. Sturdy metal construction wilh plastics components only at the movable joint. Perfect lor electronic games and instrumentation.

$9.95 ea.

MICROPROCESSOR COMPONENTS

8080 SUPPORT DEVICES

8080A 8212 8 BIT INPUT/OUTPUT PORT FOR 8080 S37 95 8224 CL0CK GENERATOR AND DRIVER FOR 8080

8228 SYSTEM CONTROLLER AND BUS DRIVER FOR 8080

CPU'S RAM'S

8 BIT CPU S19 95 ?60l ?56xi FAST

Super S008 24 95 HOI !66x 1 Sialic A Super BOOB

2504 2518 2519 2524 2525 2527 2529 2532 2533 3341 74LS670

2513 2516 74S387

SR'S

1024 Dynamic He> 32 BTT Hen 40 BIT 512 Dynamc 1024 Dynamic Dual 256 BIT Dual 512 BIT Quad 80 BIT 1024 Static Filo 16 > 4 Reg

UARTS 3DK Baud

ROM'S Char Gen Char. Gen 1024-Bit Programmanle

21D1 2102 2107 211! 7010

91L02 74200 93410

t rTEA

5203 B2S23 82S123

Static

Dynamic

Sialic

MNOS Static Sialic Static Sialic Sialic Static Sialic PROMS

Famos Open C

S 5 95 8080 1295 $24.95

12.95

S 2 25 2.95 6 95

2K RAM SPECIAL

MM5262 Fully decoded 2K.nl dynamic RAM All inputs except docks a lime, and requires, a +a. +8 5. and —15V power supply Low powe

riL compatible Provides a 535 ns minimum access non volatile memory using battery back up

SO.99 ea. (0.05 cents per bit)

fflff

"Special Requested Items*

Wfi

RC4194

RC4195

F9368

LD110/111

CA3I30

MC1408L7

F3341

MM5841

AY5-9100

Dual Track V Reg

-15V Track Reg

Decoder

DVM Chip Set

Super CMOS Op Amp

O/A

FIFO

S 5.95 NBT97 S 2.00 MK5007

3.25 4024P 2 25 8263

3.95 DM8130 3.25 8267

25.00 9322 1.30 8288

1.49 MC14016 .56 B826

9.95 2525

2.75

1.15 3.00

2527

4511AE XR4136 4566AE

v.l ll e; k.'-tf-i m uii- ::. ■ '!. yd-;: ■■■■.i-i.-.i. ■--r;-:

MC4044

LM3909

MM5320

4072AE

7422

7497

74186

74279

82S90

MCT-2E

Continental Specialties

PROTO -— POWER!

POWER

FOR THE

PROFESSIONAL

For the economy-minded eipcilmcnlei

NEW

Proto Board 100

utbudkriMiHiiDlhcquil.tvD. -4 f\ ft C

u>i«h»i« in yn ihemihi

.„.,,, .www BREADBOARD

r , BUDGET KIT

W

A Q O A,

l ( y.

ii —■■* ■

>-.. . ■ —: : ■:■■,. ■■■ ■■- ■ ' rW««a*SSW,1Mllfll-,,i ':' . -■ .-■ ■.-:-, ■ ■ ■ , . [»».,■•« tBIMndlUdl 10 uwloi

AUTOTEL ® WARNING LIGHTS ARE NOT ENOUGH

AN AUDIBLE ALARM INDICATING POTENTIAL ENGINE DAMAGE

AUTOTEL is an etfecient [ 15 ma current Standby) device by which every owner ol an

.liitoiiioliile, truck or vehicle equipped wilfi indicator lights lor temperature and oil pressure can be assured ol a reliable warning belnre an impending failure AUTOTEL. by means ol an audible signal 70 dli pulsing) immediately forewarns Ihe vehicle operator ol a malfunction or (ailue allowing time to correct and prevent maior engine failures, ft is progiammed so there is no sound during normal operating con dd ions

AUIOTEL iealures CMOS circuilry. packaged in n 2W" sq. x W case The kit comes complete with all components, hardware and case lo hook directly into your car's warning light system.

$14.95 Assembled $9.95 Per Kit

3% DIGIT DVM KIT

This 0-2 VDC .05 per cent digital voltmeter features the Motorola 3',i digit DVM chip set. It has a 4" LED display and operates from a single + 5V power supply. The unit is provided complete with an injection molded black plastic case complete with Bezel. An optional power supply is available which fits into the same case as the 0-2V DVM allowing 117 VAC operation,

A. 0-2V DVM with Case $49.95

B. 5V Power Supply $14.95

115 VAC

JE700 CLOCK

The JE7O0 is a low cost digital clock. Qui is a very high quality unit The unit features a simulated wa'nul case with dimensions ot 6 « 2V*x 1 ll unities a MAN72 high brightness readout, and the MM5314 clock chip.

$17.95

Liquid Crystal Temperature Display

Six Digit Light q|_ 33

Emitting Diode Display

Display

This clock makes an attractive addition to any desk. II has an extruded, black anodized aluminum case. It displays hours, minutes, and seconds with .11 inch displays, and comes complete with a liquid crystal thermometer. II operates off 115 VAC at 50 or 60 Hz. $24.95

•' a: V 9 3»

This large digit clock (.6" hours & minutes. .3" seconds) features the MM5314 clock chip. It operates from 117 --C. and will operate in either a tfc or 24 hour mode. The clock is complete with a walnut grain case, and has fast set, slow set. and hold time set features,

KIT - ALL COMPONENTS & CASE S34.95 WIRED & ASSEMBLED S39.95

SPECIAL!

H

LOGIC MONITOR

Simultaneously displays static and

dynamic logic States of DTL. TTL,

_ HTL or CMOS DIP ICs

S^ Pocket sue SBa.95.

QT Prolo SI dps

;qt-ibs

OT-12S

OTIype

QT-59S

QT-599

OT-47S

OT-47B

QT-355

OT-35B

OT IBS

QT-125

QT-8S

QT-7S

DIGITAL CLOCK KIT — 31/2 INCH DIGITS

4 DIGIT KIT $49.95 6 DIGIT KIT S69.95

4 DIGIT ASSEMBLED S59.95 6 DIGIT ASSEMBLED S79.95

clock Iealures Dig 3l>' high digits lor viewing in olfices. auditoriums, elc Each digit is farmed oy 31 bright 0 2' LED's. The dock operates trom 117 VAC has eilher 12 or ?A fir operation The G digit version is 27 rx3'-i "xlVj '.and the ■1 digit is 18" x3V?" x \Vt". Kits come cornplele willi till components, case and transformer Specify 12 Or 24 Hr. When Ordering

Satisfaction Guaranteed. $5.00 Min. Order. U.S. Funds.

California Residents — Add 6% Sales Tax — Data Sheets 25c each

Send a 13c Stamp (postage) for a FREE 1976 Catalog

1021 HOWARD AVE., SAN CARLOS, CA. 94070 PHONE ORDERS — (415) 592-8097

JE803 PROBE

the Logic Probe is a unit winch is tor the most part mdespflnabte in trouble stiounnq logic lamilies TTI OIL RTL. CMOS It derives the power ft< needs to operate directly ott of ihe circuil unoer lest, drawing a scant 10 mA man ll uses t MAN3 readout lo indicate any ot the following states hy these symbols: |H) -1 <lowi ■ o tPULSE) ■ p Flu Prohe can deiecl tiigtl frequency pulses to 43 MM; It canl be used jl MtJS lewis oi circuit damage

$9.95 Per Kit

printed circuit board

T2L 5V 1A Supply

This is a standa'd TIL power supply using the well known LM309K regulator |(; to provide a solid 1 AMP ul current al 5 volls We try lo make things easy lor you hy providing everyirungyrju need m one package, including the hardware

„,,om, $9.95 Per Kit

NIBBLING TOOL DIAGONAL CUTTER

■ W Semi-Flush Cul Fine Diagonal

/] A

Nibbling Tool SS.95 Llohl Blue Handle

Replacement Punch S3.75 Each A97MS SB.50 ea.

THIS MONTH ONLY!!!

C & K Rocker Switch SPOT

6POT Push Button Switch

MAN 7G Common Anode-Green .3" DISPLAY LED

6' Black 3 Conductor Power Supply Cords

LM309KC

2N2222NPNto 18 Package

JE100 W x Itt" PC Mount XFHER

Primary: 120 VAC @ 50 Hz-60 Hz. Secondary: 10 VAC @ 50 MA and 50 VAC @ 30 MA

Miniature Aluminum Electrolytic Axial Caps 47MF/25V S/S1.00 470/iF/16V

100^F/25V 7/51.00 470 MF/50V

220/iF/16V 7/J1.00 10,000 (iF/10V

2/S1.0 2/S1.C

Bfft.fi

2/si.a

2/51.5

Articles Policy

BYTE is continually seeking quality manuscripts written by individuals who are applying personal systems, or who have knowledge which will prove useful to our readers. Manuscripts should have double spaced typewritten texts with wide margins. Numbering sequences should be maintained separately for figures, tables, photos and listings. Figures and tables should be provided on separate sheets of paper. Photos of technical subjects should be taken with uniform lighting, sharp focus and should be supplied in the form of clear glossy black and white prints (if you do not have access to quality photography, items to be photographed can be shipped to us in many cases). Computer listings should be supplied using the darkest ribbons possible on new (not recycled) blank white computer forms or bond paper0 Where possible, we would like authors to supply a short statement about their background and experience.

Articles which are accepted are typically acknowledged with a binder check 4 to 8 weeks after receipt. Honorariums for articles are based upon the technical quality and suitability for BYTE's readership and are typically $15 to $30 per typeset magazine page. We recommend that authors record their name and address information redundantly on materials submitted, and that a return envelope with postage be supplied in the event the article is not accepted. •

Continued from page 4

BYTE for details.] He then asked interested people to see him during the random access session later.

The reason for describing this dynamic process is to emphasize that it works, that it breeds great enthusiasm in its participants, and that it provides a valuable service. Based on my experience in observing one such session, I highly recommend a mapping session for any club so large that meeting people and finding out their current interests is not an instantaneous process — say, a session with more than 20 to 30 persons.

One or many?

In an editorial in the January issue, I suggested that the Southern California Computer Society was looking upon itself as a possible national organization for computer people. Well, that conclusion was based upon evidence of their publication, Interface (far too grandiose for a merely regional operation) and attempts to sign up chapters everywhere. I have since that time gotten feedback of "Who needs a national organization?" from other individuals and sources. The following points of view were in part elucidated by Sol Libes of the Amateur Computer Group of New Jersey and Gary Coleman of the Midwest Affiliation of Computer Clubs in conversations May 1 and May 2 at the Trenton Computer Festival this year.

There is a counter argument to the idea that computer users need a national organization like the Amateur Radio Relay League. The ARRL has a definite need for

Tool Box Answers

Here are the tools and fasteners hidden in

Bob Baker's "Tool

Box" [page 39, July

BYTE]. Watch for

more "Baker Street

Irregulars" in future BYTEs.

ALIGNMENT

PLIER

AWL

PUNCH

BRUSH

REAMER

CENTERPUNCH

RIVET

CUTTER

RULER

DIE

SAW

DIKES

SCISSORS

DRILL

SCRIBER

FILE

SHEAR

FORCEPS

SOLDER

HAMMER

SQUARE

KNIFE

TAP

LATHE

TWEEZERS

MICROMETER

VISE

MOTOTOOL

WIRECRIMPER

NEEDLENOSE

WIRESTRIPPER

NIBBLER

WJREWRAP

NUT DRIVERS

WRENCH

its existence in amateur radio because a central bureaucratic entity, the FCC, exists in the US government; and its regulations vitally affect amateur radio. There is no parallel to the FCC in amateur computing, because computers are fundamentally self contained and cannot block other users from access in the same way that a radio station can jam another station on the same frequency. It is not likely that there will be any such regulatory agency for computers, so there is no central need as there is in amateur radio. (Of course, the computer hackers who are also radio amateurs and want to develop various radio data exchange techniques must deal with the FCC; but here established amateur radio organizations such as the ARRL already exist.)

An argument against the very concept of a nationwide organization is not only "Who needs it?", but "Why should our nice local club become a cog in someone else's bureaucratic empire?" This is perhaps the most powerful argument, for unless there is a specific goal to be accomplished at a national level, the real purposes of computer clubs are best served by the local groups which are springing up across the nation. Gary Coleman and Sol Libes both argued that the highest level of organization they could see as a useful concept might be regional affiliations of clubs for organizing computer fests and other cooperative events. About the only nationwide extension of this concept might be the idea of holding a national conference of small computer users and manufacturers. Such affiliations are proposed as fairly informal affairs carried out by correspondence and telephone, with representatives travelling back and forth as business and travel plans permit.

This all leads back to the "real purposes" of computer clubs. These are perhaps best served by small, informal clubs of a local nature whose goals are enjoyment and socialization on computer themes. Examples are the friendly and informal atmosphere of the Homebrew Computer Club meeting cited above, as well as the inevitable conversations which occur at local meetings. In some of the smaller computer clubs, for example the Nashua NH group, the meetings are devoted exclusively to informal "bull sessions" on one or two topics of technological interest.

I'm not going to draw any conclusions one way or the other on this issue, but would like to see some inputs from readers by way of the letters section of BYTE. What positive reasons are there for a national computer group? What are the negative reasons? What are the arguments for keeping the whole idea of computer clubs a local affair?"

126

POWER SUPPLY MODULE

New, plug-in module. Plugs into AC outlet provides 12 volts AC at Vz amp by two screw terminals. Great for various clocks, chargers, adding machines, etc. New

$2.50 ea. 5/$11.00

POWER SUPPLY

LAMBDA 5VDC 74 AMP

LV-EE-5-OV $125.00

NJE 5/OUP-D5 5 VDC 32 AMP $75.00

3 Power supplies, transistorized & regulated. Made by TRANSISTOR DEVICES

15 volts DC 5 amps $25.00

30 volts DC 2 amps 25.00

15 volts DC 4.5 amps 25.00

CLOCK KIT $14.00

Includes all parts with MM5316 chip, etched & drilled PC board, transformer, everything except case.

SP-284 $14.00 each 2/$25.00

VIDEO DISPLAY, Spares from VIATRON system. 9 inch transistorized CC TV black & white CRT monitor. Ready to go on 115 volt AC 60 cycles. With circuit diagrams.

$70.00

COMPUTER GRADE LOGIC SUPPLY CAPS, BRAND NEW

$2.00 1.75 2.00

47,000 Uf

32,000

160,000

66,000

1,000

2,000

25V

25

10

10

60

55

2.00 .90

ST ST ST ST AL

1,000 3,300 1,600 8,000 500

50 35 20 16 6

.90 1.25

.60 1.25

.35

AL AL AL AL AL

1.00 AL "ST" screw top

'AL" axial

5 VOLT 1 AMP REGULATED power supply kit for logic work. All parts including LM-309K $7.50

DUMMY LOAD RESISTOR, non inductive, 50 ohm 5 watt "AA" NICAD CELLS brand new, fine biz for handy talkies

$1.00 $1.25 ea. 9/$9.00

MEMORY SYSTEM $125.00

New memory system by Honeywell, small . . . measures only 9x4x1 inches. 1024 core memory, 1024 words with 8,9,10 bits/word. Random access, with all logic, register, timing, control, core select and sense functions in one package. New, booklet of schematics and data. Looks like a good beginning for a mini-computer. Limited supply on hand. Ship wgt 3 lbs. #SP-79 $125.00

CORE MEMORY

Another brand new memory, ultra small. Measures only 4x4 inches with format on one plane of 32 x 32 x 16 (16,384). Only about 35 units of this on hand.

LINEAR by RCA, brand new,

gold bond process

301 $ .60 747

$

.82 MM5314

$3.00

307 .52 748

.50 MM5316

3.00

324 1.80 1458

.96 7001

8.00

339A 1.60 3401

.80

741 .50 555 timer

.60

yffeshMci

FREE CATALOG SP-8 NOW READY

Please add shipping cost on above.

MESHNA P0 Bx 62 E. Lynn Mass. 01904

127

EWE

reader 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 9 cent 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 BYTE. This helps us bring you a bigger BYTE.

A70

American Microprocessors 79

A38

Intelligent Systems 13

A107

Audio Design Electronics 87

A15

James 117, 125

A108

Bowmar 55

A90

Logical Services 75

BYTE's Books 57, 80, 82

A16

Martin Research 91

BYTE's Computer Art 94

A18

Meshna 127

BYTE's Poster 118

A93

Micon 75

BYTE's Subscriptions 87, 103

A95

Micro Data 75

BYTE's T-Shirts 114

A71

Micro Peripheral 75

A37

Celdat 110

A77

Micro-Term 83

A92

Computer Graphics 93

A57

Mi kos 95

A83

Computer Mart of NY 79

A20

Mi kra-D 83

A76

Computer Store (MA) 75

*

MITSCIV, 10,11,25

A103

Computer Store (CT) 79

A62

Morrow 105

A104

Computer Store (NY) 75

A22

National Multiplex 59

A87

Creative Computing 97, 99

A64

Oliver Audio Eng 79

A41

Cromemco 1

A63

Parasitic 81, 89

A85

Custom Design Services 79

A105

Personal Computing Corp 79

A97

Data Domain 77

A23

Polymorphic Systems 33

A7

Delta 123

A24

Processor Tech 64, 65

A78

Digital Group 5

A105

PTI 87

A72

EDN 31

A26

Scelbi 43

A47

Electronic Control Tech 99

A27

S D Sales 109,119

A102

Eltron 113

A59

Solid States Sales 111

A100

Formula International 121

A29

Southwest Tech CM

A9

Godbout107

A30

Sphere CI 11

A69

HAL Communications 51

A99

STM93

A109

ICOM 49

A82

Technical Design Labs 39

*

IMS 9, 63

#

Texas Instruments 21

A86

Info-Tech 61

A32

Tri Tek115

'Reader service inquiries not solicited. Correspond directly with company.

BOMB:

May's BOMB Winner

Winner of the $50 prize for the most popular article in the May 1976 issue of BYTE is Roger Frank's "Microprocessor

Based Analog/Digital Conversion Techniques." Runners-up in the voting were "More Information on PROMs" by Roger Smith, and "Simplify Your Homemade Assembler" by Gregory C Jewell.

BYTE's Ongoing Monitor Box

Feedback is what keeps a linear amplifier in line. Like a linear amplifier, B YTE can use a bit of feedback. The BOMB analysis is done once a month to provide encouragement to authors and some formal feedback on how readers appreciate articles. BYTE pays the winning author a $50 bonus, so you can encourage the authors you like by voting your preferences. Remember that with few exceptions BYTE authors are just readers who have sat down at their typewriters to tell a story about what they've done or what they know about some aspect of this technology.

LIKED

PAGE ARTICLE

6 Buchanan: What Do You Do With a Video Disk? 16 Rice: Friends, Humans, Country robots: Lend me your Ears 26 At mar: The Time Has Come to Talk 34 Hashizume: Microprocessor Update: Zilog Z80 40 Wadsworth: "8008" Programming-Chapter 2 44 Gupta: True Confessions: How I Relate to KIM 52 Grappel-Hemenway: Jack and the Machine Talk 66 Suding: Build a TV Readout Device for Your Microprocessor 84 Steeden: What's an l2L (I squared L)7 96 King: Interfacing the 60 mA Current Loop

LEAST

BEST

0 1

2

3

4

5

6

7

8 9 10

0 1

2

3

4

5

6

7

8 9 10

0 1

2

3

4

5

6

7

8 9 10

0 1

2

3

4

5

6

7

8 9 10

0 1

2

3

4

5

6

7

8 9 10

0 1

2

3

4

5

6

7

8 9 10

0 1

2

3

4

5

6

7

8 9 10

0 1

2

3

4

5

6

7

8 9 10

0 1

2

3

4

5

6

7

8 9 10

0 1

2

3

4

5

6

7

8 9 10

128

we started at the top and worked our way up!

■ (

HVj

m

! I

■ I I

And we're still working. We were first in the microprocessor computer field to offer a CPU in a complete system. A microprocessor with a . method of inputing information, processing data and providing meaningful output.

But we didn't stop there. We had the best product on the market... but we didn't have the best product possible. So our engineers went to work. Through research and development a good machine got better. We've added more memory and versatility in a rapid succession of advancements. And everything is compatible with the basic product without extensive internal changes.

We're still on top in the microprocessor field...and through research and development we'll stay on top. At Sphere we're committed to engineering leadership, because in the microprocessor field, you're only on top as long as you're working your way up.

Write for complete information:

Sphere Corporation Dept. 102 P.O. Box 213 Bountiful, Utah 84010

■■

SPHERE

CORPORATION

■

Measuring just 11" wide x 11" deep x 5" high, and weighing a mere 7 pounds, the Altair ™ 680b is a complete, general-purpose computer.

The secret to this revolutionary, small computer is its CPU board. This double-sided board fits along the bottom of the Altair case and plugs directly into the front panel board. It contains the new 6800 microprocessor, 1,024 bytes of RAM memory, a 256 byte PROM monitor, provisions for 768 bytes of additional PROM or ROM, and a single Interface port with a Motorola ACIA serial interface adapter which can be configured either RS-232 or TTY. A five level Baudot interface option is also available.

The Altair 680b can be programmed from front panel switches, or it can be interfaced to a video display terminal, or teletypewriter. Three additional circuit boards can be plugged inside the Altair 680b for further memory and interface expansion. The first of these boards is a 16K static RAM memory board.

Software already developed includes Altair 680 BASIC with all the features of the 8K BASIC previously developed for the Altair 8800. These include Boolean operators, the ability to read or write a byte from any I/O port or memory location, multiple statements per line, and the ability to interrupt program execution and then continue after the examination of variable values. This software takes only 6.8K bytes of memory space and a copy is included free with the purchase of the Altair 680 1(>K memory board.

Other software includes a resident two pass assembler. The Altair 680b is also compatible with Motorola 6800 software.

The Altair 680b is ideal tor hobbyists who want a powerful computer system at an economic price. Altair 680b owners qualify

for membership in the Altair Users Group, and like other Altair owners, they receive a complimentary subscription to Computer Notes and complete factory support.

PRICES:

Altair 680b kit with complete, easy-to-understand assembly manual, operator's manual, and programming manual $466

Assembled Altair 680b $625

Altair 680b Turnkey model kit 395

Expander Card 680MB (required to expand 680) $ 24

Altair 680BSM 16K static RAM board kit with 680 BASIC $685 Altair 680 BASIC when purchased separately $200

Baudot option $ 42

MAIt THIS COUPON TODAY

□ Enclosed is a (heck for $_

□ BanltAmericard =

or Master Charge ~

□ Altair &80b □ Kit D Assembled □ Other (specifv) enclose $8 for postage and handling

□ Please send tree information package.

ADDRESSCITY

-STATE & ZIP_

G§ DlDDl^

2450 Alamo SE/Albuquerque, NM 87106, 50S-243-7821

NOTE: Altair is a trademark of MITS, Inc.

Price, specifications subject to change. Please allow up to foO days for delivery.

.