Byte Magazine Volume 00 Number 05 - Build a Light Pen

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

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

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

Created with abbyy2epub (v.1.7.0)

Introducing

.. .the world'slowest costcomputer system

All kits are delivered with a complete instruction manual and packaged tor easy visual identifica-tion of parts to aid you in assembly.

JOLT® is the new, fully-tested microcomputer with the exclusive on-board DEMON® debugmonitor. You can build it, plug it in and talk to it in three hours or less ... for a price of just $249!

The basic JOLT® card includes an 8-bitMOS Technology Model 6502 CPU, whichrequires no clock, can directly address65k of memory, has two index registers,58 instructions with 11 addressingmodes, two interrupts and includes bothsingle step and address halt capability.And that's only a part of it.JOLT's1- CPU card is availableIMMEDIATELY* in either kit form or as-sembled ($249 for the kit in single quantityand $348 assembled). Either way, theJOLT® CPU is completely tested prior todelivery. It comes complete with a termi-nal interface (TTY or EIA) and a uniquesoftware DEbugger/MONitor calledDEMON®, for which full documentation isprovided. It is very easy to program, andany JOLT- delivery includes an easy-to-follow assembly instruction manual, show-ing you exactly how to put everythingtogether. . . correctly. Complete assem-bly should take you no more than threehours if you choose the CPU in kit form.Besides the JOLT® CPU — the 6502 fromMOS Technology —the basic JOLT™card has a fully static memory accom-modating 512 bytes of the user RAM. TheJOLT® CPU memory also has 64 bytes ofinterrupt vector RAM. ROM Programmemory on the basic card consists of 1kbytes of monitor/debugger with an au-tomatic Power-On bootstrap program— so you can start talking to JOLT® and itto you as soon as you plug it in to yourterminal. On-board Input/Output deviceson the JOLT® CPU card include TTY 20milliamp current loop and an EIA inter-face, both full duplex. The card has highspeed reader interface lines and 16 fullyprogrammable user I/O lines with full TTLdrive.

Nobody, but nobody, except MAI canoffer you an on-board debugger/monitorlike DEMON®. It's fully documented,too.

The exclusive DEMON® Debug Monitorreally makes JOLT® one of the most out-standing computer systems offered at anytime, at any price. Even without DEMON'®and its superior software features, JOLT®is the lowest cost computer system in exis-tence. And DEMON® is a bonus you'llhave to use to believe. First, it self-adapts

to any terminal speed from 10-30 CPS.With it. you can display and alter your CPUregister and memory locations, plus youcan read, write and punch Hex formatteddata . . . with Write/Punch BNPF formatdata for PROM programmers. It has unli-mited breakpoint capability along withseparate non-maskable interrupt entryand identification. External device inter-rupts can be directed lo any location youchoose, or they can be defaulted toDEMON® recognition. DEMON® alsogives you (1) a completely protected ROMresident debug/monitor; (2) the capabilityto begin execution at any location in mem-ory; (3) the capability to bypass DEMON-entirely to permit full control by you overyour system; (4) a high-speed 8-bit parallelinput option; and (5) it includes user calla-ble DEMON™' I/O subroutines. MOST IM-PORTANT, DEMON™ IS INCLUDED ASSTANDARD WITH ANY JOLT®' CPU KITOR ASSEMBLED BOARD!

Obviously, the JOLT® basic card is acomputer in and of itself. But you can addsignificantly to its capacity and versatil-ity by adding 4k RAM JOLT® memories— in one card or a whole bunch. A RAMcard kit is only $265 ($320 assembled).

NOW. 4096 Bit RAM 4K BYTE

The JOLT® memory card is a fully static4,096-bit Random Access Memory (RAM)with 1 microsecond access time and on-board decoding. It is also available now.*

And the quantity of one price is what youmight expect to pay in quantities of100 .. . very inexpensive!

There's also a JOLT® I/O card for you,our Peripheral Interface Adapter. Youcan't beat the price — single kit 96bucks — or the function.

Pictured above is the assembled JOLT"" CPUcard with DEMON'", just plug it in and you'reready to go.

The JOLT® PIA (Peripheral InterfaceAdapter) I/O card includes two PIA LSchips, 32 input/output lines, two interruptlines, on-board decoding and standardTTL drive. It is also fully programmableand available IMMEDIATELY* in either kitor assembled form ... at a very attractivesingle unit price ($140 assembled).

Considering the function and capacity ofthe JOLT® Power Supply Card, youprobably think the quantity of one price— $145 — is a misprint. It isn't.

The JOLT® family also includes a powersupply card, which operates at any of

three voltages — +5, +12 and -10. Thepower supply supports the basic JOLT®CPU card, plus 4,096 bytes of RAM andI/O. The only two words for the price are"dirt cheap." It is available for deliveryimmediately with a single unit kit price of$145 ($190 assembled).

The assembled power supply card shownabove powers the JOLT® CPU, I/O, and RAMMemory cards.

You can also choose a blank JOLT® uni-versal card. Or several.

The JOLT® Universal card is completelynude. It's a blank you can use any wayyou wish, for control panels, T.V. inter-faces, keyboards, LED's, or any other in-terface logic, because the card's holesare drilled to accept 14, 16, 24, or 40 pinsockets and has the same form factor asthe other JOLT® cards. The single unitprice is just $25.

If you think you need extra cables, wiresand the like, choose a Super ValueJOLT® Accessory Bag. A $55 Value forjust $40.

The JOLT® Accessory Bag includes 25separate parts, enough hardware to con-nect one JOLT® card to another. Order anAccessory Bag for each additional JOLT®card. The Bag contains such necessaryitems as flat cable, connectors, cordspacers, hardware, wire, etc.

THE JOLT PLAIN ENGLISH WARRANTY

All components in the JOLT® family arenew and fully tested prior to shipment, kitcomponents are fully warranted during thefirst 60 days of ownership. Assembledparts are fully warranted during the first 6months of ownership. If your properly as-sembled kit does not work, just ship yourorder back to Microcomputer AssociatesInc. and we'll repair, replace, or refundyour money.

20% BONUS

NOW! Special ONE TIME BONUS DISCOUNT.Order one CPU before November 10,1975 and

deduct 20% off of all additional cards and ac-cessories. (Note: Discount does not apply toCPU cards, assembled or unassembled.)

We told you JOLT® was the world's lowest priced computer system. These prices prove it.

JOLT KITS

(ALL PAYMENTS MUST BE IN U.S. DOLLARS)

QUANTITY PRICING

1-4 5-19 20-49 50-99 100 up

JOLT® CPU

$249

$235 $230 $225 $215

JOLT® RAM 265

JOLT® I/O 96

JOLT® POWER

SUPPLY 145

JOLT® UNIVERSAL

CARD 25

JOLT® ACCESSORY

BAG 40

ALL JOLT® KITS ARE DELIVERED COMPLETE WITH A DETAILEDAND ILLUSTRATED ASSEMBLY MANUAL

* Order will be shipped within 75 days.

255

250

245

235

90

88

82

75

135

130

128

115

20

18

16

14

36

34

32

30

JOLT® CPUJOLT® RAMJOLT® I/OJOLT® POWERSUPPLY

JOLT® ASSEMBLED PRICES

(ALL PAYMENTS MUST BE IN U.S. DOLLARS)

QUANTITY PRICING

1-4 5-19 20-49 50-99 100 up

$348 $325 $320 $315 $305

320 305 300 295 280

140 125 120 115 105

190

175

170

165

150

THE NEW JOLT® FROM MAI IS AVAILABLE ONLY ON A DIRECT BASIS.USE THIS COUPON TODAY TO ORDER FROM

Microcomputer Associates Inc.

111 Main St., Department GLos Altos, Calif. 94022Phone (415) 941-1977

M975 Pehaco Corporation

I

This coupon will bring you a JOLT®! Complete

and return it.

Here is my check, money order or credit card payment for thefollowing JOLT® products. If a U.S. or Canadian order, please add$4.86 for shipping, handling and insurance. (Orders to all othercountries are priced F.O.B. Los Altos and will be shipped FREIGHTCOLLECT.)

Send me immediately:

QUANTITY

PRODUCT

PRICE

. JOLT® CPU KIT

.JOLT®RAM MEMORY KIT

. JOLT® I/O KIT

.JOLT® POWER SUPPLY KIT

.JOLT® UNIVERSAL CARD

. JOLT® ACCESSORY BAG

.JOLT® CPU ASSEMBLED

.JOLT® RAM MEMORY ASSEMBLED

.JOLT® I/O ASSEMBLED

.JOLT® POWER SUPPLY ASSEMBLED

TOTAL

+ U.S./CANADA SHIPPING/HANDLING/INSURANCENOTE: CALIFORNIA RESIDENTS, +6% SALES TAXTOTAL REMITTANCE (U.S. DOLLARS ONLY)

20%

NOW! Special ONE TIME BONUS DISCOUNT.Order one CPU before November 10,1975 and 20%j deduct 20% off of all additional cards and ac- DfiMIIQDUIMUO Cessories. (Note: Discount does not apply to OUNUoCPU cards, assembled or unassembled.)

PLEASE CHARGE THE TOTAL TO MY CREDIT CARD:BANKAMERICARD #

MASTER CHARGE #

My credit card expires onSIGNATURE

(include 4-digit #)

All credit card orders must be signed!)

I UNDERSTAND THAT ALL U.S. ORDERS WILL BE SHIPPED VIA U.P.S. AND ALLINTERNATIONAL ORDERS WILL BE SHIPPED BY AIR. SEND MY ORDER TO:

NAME

ORGANIZATIONCITY

STATE _PHONE

I

MAILYOURORDERTO:

(Include Area Code)

'Make your check payable to: Microcomputer Associates Inc.

International Orders: Payment should be cabled to Account\li #00417-06355 Bank of America, 215So. Murphy

All orders subject to the prior approval of the manufacturer. Avenue, Sunnyvale, California, USA, 94086

Pehaco Corporation, JOLT® Sales AgentsMicrocomputer Associates Inc. Dept. G

111 Main St., Los Altos, Ca 94022

J

SOFTWARE -

■ ■■■■■■ is the best thing to feed your computer! Makes it healthy! Gets rid of that dull, aimless, blinkinglights expression so many small systems exhibit these days. Feed your machine SOFTWARE! Make it feel good.Machine will then perform services. That will make YOU feel good. Put your machine on a good SOFTWARE dietlike some of the following CHOW!

ASSEMBLER PROGRAMS FOR THE '8 0 0 8'Discusses a "minimum length" Assembler program that can reside in 2K of memory, plus a more sophisticatedversion for those who have additional memory and desire a more powerful version. Included in this manual is athorough explanation of the fundamental concepts of an assembler's operation, details on how to format the"source listing," step-by-step analysis and presentation of subroutines, program flow charts, and assembled listings ofthe programs! Price? Avery reasonable $17.95.

AN '8 0 0 8' EDITOR PROGRAMDescribes variations of an "Editor" program that can reside in 2I< of memory. Additional memory may be used toincrease the size of the text buffer. The program enables one to manipulate "text" in order to create "sourcelistings" or perform other kinds of text preparation. Includes discussion of routines, flow charts, and assembledlisting. Priced at just $14.95.

'8 0 0 8' MONITOR ROUTINESDescribes a "Monitor Control" package that allows you to control the operation of your computer from an external"keyboard" device. Various routines enable you to examine and modify memory locations and CPU registers, set"breakpoints" and execute programs for "debugging" purposes, control bulk storage I/O devices, and perform otheruseful functions. This manual comes complete with subroutine explanations, flow charts, and an assembled, highlycommented program listing. Low priced at just $11.95.

NEW! - FOR HUNGRY 8080 MACHINES!AN'8 0 8 0' ASSEMBLER PROGRAM

This assembler program utilizes some of the unique routines we utilized in our popular '8008' assembler whichenables us to provide an '8080' assembler that operates comfortably in 4K bytes of RAM (including the symboltable). An unusual feature of this assembler program is that it has been designed to accept mnemonics closely relatedto those used by SCELBI for our'8008'based machines. What this means is that programs originally written for an'8008' unit can be directly processed by this assembler to produce object code for an '8080' machine! NEAT! Ofcourse, it also handles the extended instruction set of the '8080' as well. This program is provided in our popularstyle of a manual that discusses the major routines, presents pertinent flow charts, and includes a highly commentedassembled listing. $17.95.

AN '8 0 8 0' EDITOR PROGRAMThis is essentially a "carbon copy" of the material in our earlier manual describing a '8008' Editor, except theassembled listing is provided with the machine code for an '8080.' It is a good deal at $14.95.

'8 0 8 0' MONITOR ROUTINESThese routines perform the same types of functions as described above for the '8008' version except routines werespecifically developed to utilize the extended capabilities of the '8080' instruction set. Great price at just $11.95.

WANT TO "SPOON FEED" YOUR MACHINE?

You CAN learn how to develop your own machine language programs. And, if you are really serious about utilizing asmall system effectively, you had better plan on learning something about it sooner or later! Here is a good way toget started.

MACHINE LANGUAGE PROGRAMMING FOR THE'8 0 0 8' (AND SIMILAR MICROCOMPUTERS)THIS manual was written to provide the reader with the detailed knowledge one needs to know in order tosuccessfully develop machine language programs. This information packed publication discusses and providesnumerous examples of algorithms and routines that can be immediately applied to practical problems. Virtually allthe techniques and routines illustrated in the manual can also be applied to other similar microcomputers such as"8080" systems (by applicable machine code conversion). The price of this exciting new manual is a low $19.95.(The floating-point arithmetic package presented in the publication is worth that price alone!)

Prices given are for domestic delivery at book mailing rate. Add $2.50 for eachpublication if PRIORITY air service desired (U.S.) Overseas - include $6.00 for eachpublication for airmail service.

(Pricing, specifications, availability subject to change without notice.)

Order direct from: 1322 REAR BOSTON POST ROAD

ICEIll COIHPUIER DEPTDJ

Z^HmmL-mm^ ZLTT" MILFORD CONNECTICUT 06460

CONIUI.I IIMj INC. _^^_^_____

In the Queue

Foreground

LET THERE BE LIGHT PENS 26

Hardware — Loom isLI FE Line 4 32

Applications — HelmersGOLF HANDICAPPING 46

Applications — HallerPHOTOGRAPHIC NOTES ON WIRE WRAPPING 56

Techniques — Helmers

Background

NEW MINI-MICROCOMPUTER SYSTEM 12

Processors — BakerHORROR STORY 31

Problems — WarrenTOTAL KITCHEN INFORMATION SYSTEM 42

Systems — LauINTEL 8080 OP CODE TABLE 50

Reference — DittrichMORETO BLINKING LIGHTS THAN MEETSTHE EYE . .52

Applications — HelmersTAKING ADVANTAGE OF MEMORY ADDRESS SPACE . .60

System Design — LuscherKOR k? 64

Style - PeshkaTHE CT-1024 KIT 92

Review — Hogenson

Nucleus

In This BYTE 4

Beach Ball Software 9

BOMB 10

For the Joules, It's a Steal 67

Clubs, Newsletters 68

MITS Computer Caravan 73

That Didn't Take Long at All 74

Classified Ads 74

BYTE's Bugs 77

Answers to December Word Hunt 77

Sphere Rolls Into Town 80

Letters 82

Book Reviews 88

The BYTE Questionnaire 96

Reader's Service 96

BYTE magazine is publishedmonthly by Green Publishing,Inc., 70 Main St, Peter-borough, New Hampshire03458. Subscription rates are$12 for one year worldwide.Two years, $22. Three years,$30. Second class postageapplication pending at Peter-borough, New Hampshire03458 and at additional mail-i n g offices. Phone603-92-1-7217. Entire contentscopyright 1975 by Green Pub-lishing, Inc, Peterborough NH03458. Address editorialcorrespondence to Editor,BYTE, 70 Main St, Peter-borough NH 03458.

New BYTE phone: 603-924-7217

biti #5

JANUARY 1976

p. 12

■Ml • '' ■ .1 I*

■ S ',i f 'ii:.„.

imm I

FREE-HAW WRITING

p. 32

In This KITE

On the cover, artist Robert Tinney has provided a scenedepicting the combination of computers and golf handicappingdescribed by Dr. George Haller in his article.

How would you like a PDP-11/40 in your basementcomputer room? The price would probably be too high for thetypical amateur. But Digital Equipment Corporation alsomakes the LSI-11, a microcomputer which implements thePDP-11/40 instruction set and inherits a wealth of existingPDP-11 software. Turn to Bob Baker's article on the LSI-11for a summary.

How do you draw a picture on an oscilloscope display? Adda Light Pen as described by Sumner Loomis, and you will beable to add and delete points of light.

When the LIFE program can't figure out a key code, it callsDEFAULT, as described in LIFE Line 3. This issue's LIFELine 4 specifies the DEFAULT routine used to enter cursormotion control data and numeric data for the KEY-BOARD_INTERPRETER. As a combined hardware andsoftware system, the LIFE application enters the realm ofhardware for the first time with a simple circuit to interfacethe cursor motion control keyboard and an ASCII keyboardvia the same input port.

Wire wrapping is a technique often used to assemblecircuits. Turn to Photographic Notes on Wire Wrapping forsome pointers for your own custom computer interfaces.

According to tradition, no computer is ever completewithout blinking lights. But There's More to Blinking LightsThan Meets the Eye, or the control panel designer's utilitarianmotives. This issue provides a few ideas for using simple andinexpensive LED indicators in ways far removed from thetraditional control panel application.

In the October BYTE, Richard Gardner commented on theapplication of personal computers in household situations. Inthis issue, Ted Lau continues on that theme with an article of"structured speculation" on the Total Kitchen InformationSystem (TKIS).

Computers solve problems, right? One problem whichgolfers have is calculating handicaps so that duffers can playagainst pros in the same tournament. In Golf Handicapping(or: Buy a New Peripheral with Money Earned from YourLocal Duffers), Dr. George Haller describes a program heconcocted to serve as the basis for a part time businesscalculating golf handicaps at his country club. For readers withteenage children, this might make a great opportunity for thekids to make some money to help pay for college expenseswhile learning how to run a business.

Computer systems have many resources which can be usedby the person who assembles or modifies the design. Oneresource which is very important is the memory address spaceinherent in the design of the computer. Taking Advantage ofMemory Address Spaces by James Luscher can provideimportant improvements in speed and function of yoursystem.

What is style? In his article K or k?, Manfred Peshkadescribes some notational conventions which apply to BYTE'sunique combination of hardware and software information.While the change of these standards is incomplete in this issue,future BYTEs will employ the standard abbreviations andunits throughout.

What is one of the most useful peripherals? Why, thetelevision set of course. To use the TV you need an interface.One such interface is the CT-1024 product by SWTPCreviewed by Jim Hogenson.

Lowest Price in the World!

In January of 1975, MITS stunned the computer world withthe announcement of the Altair 8800 Computer that sells for$439 in kit form.

Today MITS is announcing the Altair 680.

The Altair 680, built around the revolutionary new 6800microprocessor chip, is the lowest priced complete computer on

the market. It is now being offered at the special,low price of $345!

The Altair 680 comes with powersupply, front panel control board,and CPU board inclosed in an11" wide x 11" deep x 4 11/16" case.In addition to the 6800 processor,the CPU board contains the following:

1. 1024 words of memory (RAM2102 type 1024 x 1-bit chips).

2. Built-in Interface that canbe configured forRS232 or 20 mATeletype loopor 60 mATeletype.

3. Provisions for1024 words ofROM or PROM.

The Altair 680 can beprogrammed from the frontpanel switches or it can be

connected to a computer terminal (RS232) or a Teletype such asan ASR-33 or surplus five-level Baudott Teletype (under $100).

The Altair 680 can be utilized for many home, commercial orindustrial applications or it can be used as a development systemfor Altair 680 CPU boards. With a cycle time of 4 microseconds,16-bit addressing, and the capability of directly addressing65,000 words of memory and a virtually unlimited number ofI/O devices, the Altair 680 is a very versatile computer!

Altair 680 Software

Software for the Altair 680 includes a monitor on PROM,assembler, debug, and editor. This software will beavailable to Altair 680 owners at a nominal cost.

Future software development will be influenced bycustomer demand. MITS will sponsor lucrative softwarecontests to encourage the rapid growth of the Altair 680software library. Programs in this library will be madeavailable to all Altair 680 owners at the cost ofprinting and mailing.

Altair Users Group

All Altair 680 purchasers will receive a free one yearmembership to the Altair Users Group. This group is the largestof its kind in the world and includes thousands of Altair 8800 and680 users.

Members of the Altair Users Group are kept abreast of Altairdevelopments through the monthly publication, ComputerNotes.

Altair 680 Documentation

The Altair 680 kit comes with complete documentationincluding assembly manual, assembly hints manual, operationmanual, and theory manual. Assembled units come withoperation and theory manuals. Turnkey model and CPU boardsalso include documentation.

NOTE: A complete set of Altair 680 manuals ina 3-ring Altair binder is now available for $14.50(regularly $25). Offer expires January 30, 1976.

Delivery

Personal checks take 2-3 weeks toprocess while moneyorders and credit cardpurchases can beprocessed in 1-3 days.Delivery should be30-60 days but thiscan vary according toorder backlog. Allorders are handledon a first come, firstserved basis.

Altair 680 Prices

Altair 680 complete computer kit $345

Altair 680 assembled and tested $420

Altair 680T turnkey model (complete Altair 680 except

front panel control board) Kit Only $280

Altair 680 CPU board (including pc board, 6800 micro-processor chip, 1024 word memory, 3 way interfaceand all remaining components except power supply) . .$195

Altair 680 CPU board assembled and tested $275

Option IC socket kit (contains 40 IC sockets. CPU,

memory and PROM sockets come with 680 kit) $ 29

Option cooling fan (required when expanding 680

internally) $ 22

Option cooling fan installed $ 26

PROM kit (256 x 8-bit ultraviolet, erasable 1702 devices) $ 25Connectors (Two sets of 25-pin connectors. Requiredwhen interfacing 680 to external devices) $ 22

Prices, delivery and specifications subject to change.

___

"Creative Electronics"

M1TS/6328 Linn N.E., Albuquerque, NM 87108 505/262-1951

MAIL THIS COUPON TODAY!

D Enclosed is check for $ , , , ____.

□ BankAmericard # □ or Master Charge #

□ Altair 680 D Kit D Assembled D Altair 680T _ Altair 680CPU

□ Socket Kit □ Fan D PROM kit □ Documentation Special

□ Please send literature

NAMF. , ,

ADDRESS

CITY

. STATE & ZIP_

1ITS/6328 Linn N.E., Albuquerque, NM 87108 505/262-1951

CALL FOR PAPERSACM '76OCTOBER 20-22,1976...

HOUSTON

Our 1976 Annual Conference will be held October20 - 22 in Houston. We feel that it will be one ofthe most relevant ACM conferences ever held, bothfor the practicing professional and the researcher. Theconference facilities in downtown Houston's RegencyHyatt House will be outstanding. You will find thatACM '76 will be a place where you can enjoy your-self, renew old acquaintances, make some new ones,and participate in a serious technical discussion of theproblems and potential of our industry. Plan to attend.

Olin Johnson

General Chairman, ACM '76

about the conference

You are invited to submit a paper on any aspect ofcomputer research, development, or implementation.High quality papers of a theoretical, state-of-the-art ortutorial nature are welcome. The technical program forACM '76 will again be organized around the ACMSpecial Interest Groups, although additional sessionswill be provided for papers of general interest or thosenot related to any SIG.

Papers must not have been previously presented orpublished; they should not exceed 10 published pages,including a 100-word abstract, bibliography, and illus-trations; and they must be received in four copies byMarch 1, 1976. All papers will be refereed either by theSIG's or by reviewers selected by the Technical Pro-gram Committee. Notification of acceptance will bemade by May 1. If you intend to submit a paper, andwe sincerely hope that you do, please send in thecoupon below. If you have an idea for a good sessionor some other technical program idea, please do the

same or start promoting your idea in your SIG

but do it now! Be a part of the spirit of ACM '76!

about the technical program

ACM

Be a part of the "Spirit of ACM '76"

ASSOCIATION for COMPUTING MACHINERY1976 ANNUAL CONFERENCE

Roger W. Elliott

Technical Program Chairman, ACM '76

Department of Industrial Engineering

Texas A & M University

College Station, Texas 77843 (713) 845-5531

Name

Address.City

, State.

I I I intend to submit a technical paper.

Tentative title .

. SIG (optional)

I I I am enclosing a technical program suggestion.

I I Please call me. I would like to discuss an idea for the technical program

.Phone

8Kby8 BOARD.,4Kby8 BOARD,,2Kby8 BOARD.,

Ill

EE

ERON BOARDkill

,$352 (add $48&we program).$200 (add $25&we program),$125 (add $15&we program)

Now you can stuff up to 8K of your favorite soft-ware editor/assembler or what have you on a

board. Program it yourself or have us do the pro-gramming. Just 1 ike the RAH kit, DIRECT ALTAIRPLUG-IN COMPATIBLE. Includes sockets, bypas-sing, industrial - quality plated - through board,buffered addresses and outputs, on board regula-tion. LOW POWER: Full 8K requires *A @ 5V, 150ma @ -12V. File protect feature includes line re-ceiver with real hysteresis to prevent false trig-gering on noise. EXPANDABLE: If you buy our 2Kboard and want to move on to bigger and betterthings (like 8K), all you add is more sockets andEROMS. Your board doesn't become obsolete.

4i< BY 8 RAMBOARD $109.22

ONE-THIRD OF A CENT PER BIT--- Our most popu-lar memorv kit. You get sockets for all ICs,industrial-quality plated-through board, lotsof bypassing, 5 voltage regulators to sharethe power load (less thermal problems, morereliability), typical 500 ns access time at25°C, and buffered addresses and outputs (noinput presents more than 1 LPTTL load; out-puts can drive 20 standard TTL loads). Maybe powered with 8 volts unregulated; or by_bypassing the on board regulators, with+5V. Complete with assembly instructionsand logic print of the RAM board.

altair 8800 owners, please noteiThis memory board kit, like ourother memory kits, is directlyPLUG-IN COMPATIBLE WITH THE 8800.

SPECIAL CffIfi

We've got 4K by 8 boards pre-programmed with 8080 assembler, editor, and monitor rou-tines. $200 buys you the same quality and ALTAIR PLUG-IN COMPATIBILITY as our othermemory kits. Another advantage: because this is EROM rather than mask programming,you can make changes if desired. Speaking of changes, although these routines workour really well, we are including 2 free updates to purchasers should bugs or modifi-cations develop. Any additional changes are available for a very nominal charge.SEND $2.95 CPPD) FOR OUR SOFTWARE INFO PACKET IF YOU WANT MORE INFO OR WANT TO LOADYOUR OWN ROM BOARD. INCLUDES INSTRUCTION LISTING, SCHEMATIC, ASSEMBLY DATA, ETC.

CAVI

gragx

LOWPOWER

ScHOHKY

COMPARED TO STANDARD TTL, LOWPOWER SCHOTTKY OFFERS 1/5 THEPOWER CONSUMPTION-BUT WITH NOSPEED PENALTY. CONSIDERED BYMANY AS THE LOGICAL SUCCESSORTO STANDARD TTL.

74LSOO74LS047^LS0874LS10

74LS2074LS42

Quad 2 input NAND gateHex inverterQuad 2 input AND gateTriple 3 in NAND gateDual 4 input NAND gateBCD to decimal decode7'iLS I 38 1 of 8 decoder74LSI68 Dec Syn Up/Down cntr74LS169 Bin Syn Up/Down cntr74LS175 Quad latch

Hard tofind TIL

74273 8 bit latch (20 pin) 1.89

7^365 Noninv 3 St buf NOR en .63

7^366 Inv 3 state buf NOR en .63

7^367 Noninv 4-2 buf w/ sep en .63

74368 Inv 4-2 buf w/ sep en .63

74390 16 pin dual decade cnt 1.50

743S3 14 pin dual binary cntr 1.50

^TATiMAVAV.VA%M.TiTiV

CHIP SET $195

1« PACE CPU

4*DS3608

1 • DS0026

1» DM883732 • 2102 (4k bytes RAM)2 • MM5204 (1k byte ROM)AND OUR PACE

DATA PACKET!

A POWERFUL 16 BIT PROCESSOR. 4 0 PIN DIP; CAPABILITY FOR 45CLASSES OF INSTRUCTIONS AND UP TO 337 INSTRUCTIONS. INTERFACECHIPS PROVIDE TTL COMPATIBILITY--RAMS AND ROMS PROVIDE MEMORY,AND THE PACE DATA PACKET TELLS YOU HOW TO APPLY EVERYTHING.

PACE DATA PACKET AVAILABLE SEPARATELY FOR $2.50 (COVERS PRINT-ING AND POSTAGE). 80 PAGES OF INFORMATION ON THE CHIP ITSELF,SOFTWARE, SYSTEM ORGANIZATION, AND MORE. ALSO INCLUDES AN 11"BY 17" INCH FOLD0UT LOGIC PRINT OF PACE IMPLEMENTATION.

IF YOUR INTEREST IS MICROCOMPUTERS, AND PARTICULARLY PACE, YOUWILL WELCOME THIS DATA PACKET. PURCHASE PRICE REFUNDABLE WITH

PACE ORDER.

I.

BILL GODBOUT ELECTRONICSBOX 2355, OAKLAND AIRPORT, CA 94614

TERMS: Add poitage. whete indicated; add 50$ to ondeJU undeA $10. No C0Vondvu>; iVi a lot o& papeAWotik ^cl ua. Calico tiniani add tax. To place.RankameAicaAd® on McwieAcdaAge® oideAi, colt (4/5) 357-7007, U houAi aday. VIzoac .tcmcmbe*. thlt> i& an an6wzju.no 4eAu.cce, and i& not &zt up tohandle. to.ahntc.al queAtionA.Want to know about all the. otheA itu&& we ieJUl Send (,01 ouA FREE FL/ER.'

TINY

Rotary

Switch

Single pole, seven position +off. in td-5 can; tiny forcircuit board mounting. goodfor programming £ much more.

$1.25 EA OR 3/$2.95

@®M ®LF /h©ILJSXgK

This is the successor to our'cheap clock' kit. it is aneasy to assemble kit that in-cludes everything you need tomake a working clock, exceptcase and hardware,it features 3/10 in. readoutsfor hours, minutes, and sec-onds. 50/60 hz operation, 12or 2* hour display format.Sockets for IC and readouts

PROVIDED.

THE READOUTSREMOTEDi THE

CAN BE EASILYCLOCK, IN CON-JUNCTION WITH OUR 60 HZ TIMEBASE ($10.95) IS AN EXCELLENT

AUTOMOBILE CLOCK.

ADD SHIPPING FOR 1 POUND.

BOTTOM-OF-THE-PAGE-ITEMS:LM340T: 1A regulator, TO-220 plas-tic package. 6 or 8 volts: 95<: ea.

TITLE: Microcomputer Dictionary & GuideAUTHOR: Char/es J. Sippi

This new microcomputer dictionary fills the urgent need for all computer people,engineers, scientists, industrialists, communications people — as professionals,amateurs, teachers, or students — to become quickly acquainted with theterminology and nomenclature of a new revolution in computer control capa-bilities in areas that pervade most of man's daily activities.

Over 3500 definitions and explanations of terms and concepts (approx. 350pages) relating to microprocessors, microcomputers and microcontrollers.There are also separate appendices on: programmable calculators; math andstatistics definitions; flowchart symbols and techniques; binary number systemsand switching theory; symbol charts and tables; summaries of BASIC FORTRANand APL. In addition there is a comprehensive electronics/computer abbrevia-tions and acronyms section. Price: $14.95

MATRIX PUBLISHERS, INC.

Dept. BM, 207 Kenyon Road, Champaign, IL 61820

Please send me the new MICROCOMPUTER DICTIONARY under your15 day no risk trial guarantee. If payment accompanies order we payall shipping and handling charges. (III. customers add 5% sales tax)

Name.

Address-City

. State.

Zip

Beach BallSoftware

Editorial

by

Carl Helmers

What a predicament. You've bought thisbox full of printed circuit boards, trans-former iron and integrated circuit silicon.After long hours paying attention to thedetails of an intricate assembly process it is"done." To the best of your abilities you'veverified that the box does what it issupposed to do. Now it's sitting over thereon the bench (or living room table (or officedesk)) plugged into the AC wall outlet andgrinning like a Cheshire cat with a mouthfull of LED or TVT teeth. So, now what doyou do with it? Like many objects of somebulk and substance, it seems so useless — butis it? There are lots of human designedobjects which at first sight appear to beuseless. But most turn out to have greatpotential value which can be released by theactive and creative human mind. The secretof use and enjoyment is the application ofthat most characteristically human capacityto think. The hobby created about theseartificial "brains" is an excellent trainingground for the human brain — one of thesecrets of its appeal.

But Then, What Good is a Beach Ball Either?

As an example of a simple object whichrequires creativity to realize its potential,consider a child's beach ball. Imagine for amoment that your newly constructed com-puter kit is sitting on its pedestal and beginsslowly to change into a beach ball throughsome advanced technological "magic." Itscorners begin to round, the edges smoothout, and after some moments of transforma-tion it is a jolly round beach ball having thesame general properties the computer had: itsits there looking useless to the skeptic.

As an intelligent and active being,curiosity is one of your most admirabletraits. So you walk over to the pedestal, pickup that beach ball and begin a thoroughexamination of its characteristics. What doyou find? As you pick it up you verify thatit is a solid object which has the expectedweight of a beach ball. You rotate it aboutseveral axes and verify that it is indeed a

sphere within the limits of your perception.Using an appropriate measuring tool youfind that its diameter is 30 cm. The surfaceis resilient but hard. The ball slips out ofyour hands and drops to the floor where itsresilience is confirmed by a healthy rebound.After the examination, you put it back onthe pedestal. Again, the thought: what goodis a beach ball? It sits there with no life of itsown, not even condescending to wink anLED at you. How could anyone possiblyshell out hard earned cash for such anobject?

Beach Ball Software

But people do shell out lots of hardearned money for beach balls. And peoplesuch as you and I are not fools when we buya quality beach ball. We know beach ballsare useful through our appreciation of funand advertising of the products. The beachball is the basic "hardware" required to playnumerous games; beach balls are even usedon occasion for more practical tasks. Thebeach ball is a widely distributed standardproduct with a simple design. Very little userdocumentation is supplied by the manufac-turers and distributors of beach balls. Thewide acceptance of the beach ball is due tothe numerous applications inherent in itsdesign. These applications await the creativeminds of human beings who decide what todo with the ball and how to do it. Any gameor recreation which uses the beach ball as aprop is an example of the "beach ballsoftware." Such games may have been madeup generations ago and stored in the form ofword of mouth learning, printed books ormagazines on the subject. Or, they may bemade up or reinvented spontaneously andnever recorded at all. Whatever the source,the game and its rules form a method ofusing the beach ball which takes advantageof its properties, but is not in any way builtinto the device.

So having temporarily approached theproblem from the point of view of a beachball, let's invert the transformation and turnthe object back into a computer. We still

EITI

staff

PUBLISHERS

Virginia Green, President

Manfred Peshka, General Manager

EDITOR

Carl T. Helmers, Jr.

PRODUCTION EDITORS

Beth Alpaugh

Judith Havey

ASSOCIATES

Hal Chamberlin

Dan Fylstra

Don Lancaster

Chris Ryland

PRODUCTION DEPARTMENT

Lynn Panciera-Fraser, Manager

Nancy Estle

Neal Kandel

Peri Mahoney

Bob Sawyer

PHOTOGRAPHY

Ed Crabtree

Bill Heydolph

DRAFTING

Bill Morello

TYPESETTING

Barbara Latti, Manager

Marge McCarthy

PRINTING

Biff Mahoney

INVENTORY CONTROL

Marshall Raymond, Manager

Kim Johansson

CIRCULATION

Judy Waterman, Manager

Pat Geilenberg

Dorothy Gibson

Pearl Lahey

Deborah Luhrs

COMPTROLLER

Knud E. M. Keller

A manufacturer whosupplies a series ofinteresting sample pro-grams to illustrate the useof his processor andsystem is providing youwith a valuable service . . .

have not solved the problem of where to getthe specific creativity required for the com-puter software, but the beach ball analogyprovides a useful model.

A computer system, like a beach ball, isan incomplete system no matter how fullysupported by manufacturers' software. Nomanufacturer can tell you what you want todo with the machine in complete detail. Themanufacturer can supply suggested uses andbuild in features which make certain usesinherently easy to program, but ultimatelythe user of the computer must decide whatto program or when to use the programsavailable. The beach ball system is com-pleted when the beach ball user decidesupon a particular game or practical applica-tion in which the beach ball is a keyelement. It might be that the beach ballsimply makes the application easier to per-form, or it might be that the beach ball is socrucial that the application would not evenhave been possible without that ball. Thecomputer system is also completed whenyou — the user — decide how you want to

BOIN/1B; BYTE's Ongoing Monitor Box

BYTE would like to know how readers evaluate the efforts ofthe authors whose blood, sweat, twisted typewriter keys, smokingICs and esoteric software abstractions are reflected in these pages.BYTE will pay a $50 bonus to the author who receives the mostpoints in this survey each month. (Editor Helmers is not eligible forthe bonus.) The following rules apply:

1. Articles you like most get JO points, articles you like Jeast get0 (or negative) points — with intermediate values according toyour personal scale of preferences.

2. Use the numbers 0 to 10 for your ratings, integers only.

3. Be honest. Can all the articles really be 0 or 10? Try to give apreference scale with different values for each author.

4. No ballot box stuffing: Only one entry per reader!

Fill out your ratings, and return it as promptly as possible alongwith your reader service requests and survey answers. Do you like anauthor's approach to writing in BYTE? Let him know by giving hima crack at the bonus through your vote.

Page

No. Article

12 Baker: Mini-Microcomputer

26 Loomis: Light Pens

31 Warren: Horror Story

32 Helmers: LIFE Line 4

42 Lau: Kitchen Information System

46 Haller: Golf Handicapping

50 Dittrich: Op Code Table

52 Helmers: Blinking Lights

56 Helmers: Wire Wrapping

60 Luscher: Memory Address Space

64 Peshka: K or k?

92 Hogenson: CT-1024 Kit Review

LIKED

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

0 1 2

3

4

5

6

7

8

9 10

0 1 2

3

4

5

6

7

8

9 10

employ the computer. It might be that youuse the computer simply to improve theefficiency of some menial task, or you mightuse the computer in an application — such ascomplex interactive games — which wouldhave been impossible to perform minus thecomputer's intelligence. Like any activity,you get out of a computer rewards which arcin proportion to the effort applied to under-stand and "get into" the activity.

With computers — as with beach balls — itis often possible to find a starting point inthis area of applications and software.Creativity of the individuals who have pre-viously thought about the subjects involvedcan often be useful as a starting point. Byseeing concrete examples of the uses of thecomputer systems, you can acquire avaluable basic understanding of what can bedone. One obvious source of such informa-tion is in the form of BYTE articles.

Another form is in the user supportpackages provided by manufacturers. A man-ufacturer who supplies a series of interestingsample programs to illustrate use of hisprocessor and system is providing you with avaluable service — you find out how thingsarc done with his computer in specific anddetailed examples. One excellent example ofsuch a service is the documentation whichcan be purchased for the assembler and texteditor programs of the SCELBl computers -complete listings of the programs withdetailed explanations and design informationare provided in the manuals for theseSCELBl program products. When evaluatinga computer system, look for such examplesin the documentation and compare theofferings on this point. There are othersources of information about the creativeuses of the computers of the world. Directinformation can often be acquired in thecontext of the computer club, an associationof users for the purpose of solving problems,exchanging ideas, filling in gaps inknowledge, etc. When you talk to yourtechnological neighbor about what he or sheis doing, you can get valuable informationon the possible applications of yourmachine; and of course your neighborreceives similar benefits in return.

It is this kind of exchange of creativityand ideas among interested individuals whichwill make the personal computing field intoa well developed facet of our civilization,growing out of the scattered and isolatedefforts of individuals who pioneered theactivity. One of the main reasons for BYTEmagazine's very existence is to help fosterthis transfer of information, to give ourreaders the knowledge and ideas useful ascreative starting points for personal applica-tions of computers. ■

10

JSolder less.Design more.

The soldering ironAs a design tool,it s obsolete.

Whether you're

a full-time engineeror spare-timehobbyist, there areonly so many hoursa day you canspend designingand buildingcircuits. So whynot make the mostof your time9Design circuits literally asfast as you can think. I nstead ofstarting your next project with asoldering iron, save time bystarting with our Design Mate'M 1.lnacompact(7'?"Wx63/4"Dx3X"H) case with a convenientsloping top. it offers solderlessbreadboarding at its best: 790terminals: a continuously-adjust-able regulated 5-15 VDC 600 mAsupply: and a DC voltmeter tomonitor the internal supply or

we can fill them. Forlarger capacity, save time withour Proto-Board" series—660 to3060 terminal points, with orwithout built-in regulated powersupplies. For smaller applica-tions, use 1 or moreof our handy QTSockets and BusStrips, lockingthem together forinfinite expand-ability, as you needit. Starting at $2.00.

Other ways tosave time andmoney. Proto-Boards. QT Sockets and BusStrips are just the beginning ofthe many ways we can help makeyour life more enjoyable: howabout a foolproof, shortproofway to test Dl P IC's—even inoperating circuits—for just$4.50*? A full-featured, preci-sion function generator for$64.95*? A professional R/Cbridge for $49.95*? A way toinstantly see and monitor logic levels in anoperating IC, without expensive scopes or j&jtev-.

test your operating circuit.

With Design Mate 1, hookingup (or changing) a circuit is assimple as pushing leads intoholes on the breadboard. Rugged5-pomt contacts insure reliable.low-resistance connectionsbetween resistors, capacitors,transistors... even IC's in TO-5or DIP packages. And shortlengths of solid *22 AWG wiremake interconnections easywherever you need them.

At $49.95* complete, it's notonly a time-saver, it's a money-saver too.

Larger capacity? Smallercapacity? Have it your way.Whatever yourbreadboardingneeds,

Proto-Board 103.2250 solderlessterminals saveyou time on everycircuit you design.

Test DIP s withpower on andhands off —evenon the mostcrowded circuitboard with ourProto-Clip ' series

9*A

Design Mate 2versatile functiongenerator, only S64.95

elaborate procedures. And more, to save youtime, money andaggravation.Time is money:Start saving it. Askyour CSC dealerto show you how to solderess. design more and take thedrudgery out of your electronic life.Or send for our free catalog and dealer list

"Manufacturers recommended retail.

CONTINENTAL SPECIALTIES CORPORATION

■•:

Design Mate 3Precision R/Cbridge.justS49.95-

44 Kendall Street. Box 1942

New Haven. CT 06509 • 203-624-3103 TWX: 710-465-1227

West Coast office: Box 7809. San Francisco. CA

94119 •415-421-8872TWX: 910-372-7992

Canada: Len Finkler Ltd., Ontario

c 1975 Continental Specialties Corp.

11

A New

Mini - Microcomputer

System

The Digital EquipmentCorporation LSI-11

Robert W, Baker34 White Pine Dr.Littleton MA 01460

Digital Equipment Corporation has a newaddition to the microcomputer market.Designated the LSI-11, it is a complete 16bit microcomputer system on a single 8.5inch by 10 inch (21.6 cm by 25.4 cm)printed circuit board, combining the instruc-tion set of a PDP-11/40 with an under$1000 price.

A 3.5 inch H by 19 inch W by 13.5 inchD (8.9 cm by 48.3 cm by 34.3 cm) boxedversion of the LSI-11 is designed as anoff-the-shelf microcomputer system. Desig-nated the PDP-11/03, it consists of anLSI-11 microcomputer, serial line interface,power supply, and a mounting box designedto mount in a standard 19 inch cabinet.Removing the front panel exposes the LSImodules and cables allowing replacement orinstallation of a module from the front ofthe PDP-11/03. The power supply has threefront panel switches and indicatorsaccessible through a cutout in the frontpanel. The lights and switches are stillattached to the power supply and functionalwhen the front panel is removed. Inputpower of the PDP-11/03 is typically 190Watts at full load.

LSI-11 Evolution

The processor, memory, device interfaces,backplane and interconnecting hardware ofthe LSI-11 are all modular in design to allowcustom tailoring necessary for specific appli-cation requirements. It was not intended tobe a low end minicomputer, but to provideminicomputer capability to the new micro-computer applications.

12

To accomplish this goal, the LSI-11 wasdesigned to optimize system costs ratherthan component costs. A four-chip micro-programmed central processor was selectedto emulate the PDP-11 instruction set,allowing the inclusion of automatic dynamicmemory refresh without additional cost. Themicroprogrammed processor also makesfeasible user microcode and an ASCII con-sole which will be discussed later.

Central Processor

The central processor module consists ofthe microprogrammed processor and 4096words of memory, together with the bustransceivers and control logic. The four chipmicrocomputer controls the time allocationof the LSI-11 bus for peripherals and per-forms all arithmetic and logic operations aswell as instruction decoding. Eight 16 bit,general-pupose registers can be used asaccumulators, address pointers, indexregisters, stack pointers, or other desiredfunctions. Arithmetic operations can befrom one register to another, from onememory location or device register toanother, or between a memory location or adevice register and a general register. Datatransfers between IO devices and memory onthe bus occur without disturbing theprocessor registers.

Bus

The bus, which is implemented on theH9270 card guide backplane assembly, is thedata path which enables a complete systemto be configured. This bus was designed toallow low cost peripheral interfaces formicrocomputer applications, rather than tosupport the wide range of peripheral config-urations common to large minicomputersystems. The processor module is capable ofdriving six device slots along the bus withoutadditional termination, as provided with theH9720 backplane. Devices or memory canbe installed in any location along the bus, asmost bus control and data signals are bidirec-tional, open-collector lines that are assertedwhen low. The bus signals include 16 multi-plexed data/address lines, 6 data transfercontrol lines, 6 system control lines, and 5interrupt and direct memory access (DMA)control lines.

Any communication between two deviceson the bus is in the form of a master-slaverelationship. Only one device, the busmaster, can have control of the bus at anypoint in time. The master device controls thebus while communicating with anotherdevice on the bus, the slave. Since theLSI-11 bus is used by the processor and all10 devices, there is a priority structure todetermine which device gets control of the

bus. Every device on the bus capable ofbecoming bus master has a specific priorityassociated with its position along the bus.When two devices request use of the bussimultaneously, the higher priority devicewill receive control. All data transfers on thebus are interlocked so that communication isindependent of the physical length of thebus and the response time of the slave solong as a bus timeout does not occur.Asynchronous operation allows each deviceto operate at the maximum possible speed.

Interrupt System

Interrupt and DMA handling incorporatestwo daisy-chained grant signals. This methodeliminates device polling to service interruptrequests and establishes an interruptpriority. The highest priority device is themodule located electrically closest to themicrocomputer module. Only when a deviceis not asserting a request does it pass grantsignals to lower priority devices. When aninterrupting device receives a grant, thedevice passes to the processor an interruptvector which points to a new processorstatus word (PSW) and the starting addressof an interrupt service routine for the device.The current value of the PSW and programcounter (PC) are stored on the stack.

The processor operates with the interruptmask (PSW bit 7) set (1) or cleared (0).When PSW bit 7 is equal to 1, no externaldevice can interrupt the processor with arequest for service. The processor must beoperating at PSW bit 7 equal to 0 for thedevice's request to be effective. Interruptscan occur only between processor instruc-tions since they change the state of theprocessor. DMA operations, on the otherhand, may occur between individual buscycles since these operations do not changethe processor state.

One signal line on the bus functions as anexternal event interrupt line to theprocessor module. When connected to a 60Hertz line frequency source, this signal linecan be used as a real-time clock interrupt.When automatic interrupt dispatch (vec-toring) is not needed, this line may be usedas a common interrupt signal. Although thisnecessitates device polling (as in earliercomputers, such as the PDP-8), device inter-faces may now be slightly less complicated.A single connection on the processor moduleenables or inhibits the external eventinterrupt. When enabled, the device con-nected to this line has a higher interruptpriority than any device connected to thedaisy-chained grant signals.

Power Fail/Restart

To further increase the system flexibility,several power fail/restart options are avail-

13

able. The power fail sequence is initiatedupon sensing a warning signal from thepower supply signaling an impending ACpower loss. The current PSW and PC arepushed on the processor stack and a new PCand PSW are taken from a vector at location24. Normally, with non-volatile memory,this routine would save processor registers,set up a restart routine, and halt. When onlyvolatile memory is used, the registers cannotbe saved but the power fail trap does allowan orderly system shutdown to occur.

When AC power is restored, one of thefour jumper selectable power-up options isinitiated. The first option is loading a pro-grammed PSW and PC from the vector atlocation 24. This would be used with non-volatile memory to continue execution ofthe program at the point where the powerfail occurred or to restart the program at anarbitrary address with ROM programstorage. If the BHALT line on the bus (thehalt switch) is asserted during this power-upsequence, the ASCII console microcode willbe entered immediately after loading thePSW and PC. The second power-up optioncauses an unconditional entry to the ASCIIconsole routines. The processor can then bestarted by an ASCII console commandallowing remote system starting withoutcontrolling the bus halt line. (More on theASCII console later.) Alternately, the lasttwo options allow program execution tobegin at a specified address in either macro-code or microcode.

Memory

The 4096 word memory on the basicCPU module consists of sixteen 4096 bitdynamic RAMs. This memory logicallyappears on the external bus while beingphysically on the CPU module. Beingaccessible to the bus allows external DMAtransfers to take place to and from the basic4096 word memory. Also, an optionaljumper allows the CPU module memory tooccupy either the first or second 4096 wordblock of the bus address space.

Various memory modules are availablefor applications requiring more storage thanthe standard 4096 word MOS memory onthe processor board. Those offered include anon-volatile 4096 word core memory, a1024 word static RAM, read-only memory(PROM/ROM) with a maximum capacity of4096 words per board in 512 word incre-ments or 2048 words in 256 word incre-ments, and a 4096 word dynamic MOSRAM.

A common disadvantage of usingdynamic MOS memory is the necessity ofrefreshing the contents of memory atspecific intervals. The refresh operation isrequired to replace the stored charge in each

14

The MODULAR MICROSfrom MARTIN RESEARCH

Here's why the new MIKE 2 and MIKE 3are the best values in microcomputers to-day!

8008 OR 8080

Martin Research has solved the problembothering many potential micro users.... whether to go with the economical8008 microprocessor, or step up to thepowerful 8080. Our carefully designedbus structure allows either processor tobe used in the same system!

The MIKE 3 comes with an 8080 CPUboard, complete with crystal-controlledsystem timing. The MIKE 2 is based onthe 8008. To upgrade from an 8008 toan 8080, the user unplugs the 8008 CPUboard and plugs in the 8080 CPU. Thenhe unplugs the 8008 MONITOR PROM,and plugs in the 8080 MONITORPROM, so that the system recognizes the8080 instruction set. That's about it!

If the user has invested in slow memorychips, compatible with the 8008 but tooslow for the 8080 running at full speed,he will have to make the 8080 wait formemory access—an optional feature onour boards. Better still, a 4K RAM boardcan be purchased from Martin Researchwith fast RAM chips, capable of 8080speeds, at a cost no more that you mightexpect to pay for much slower devices.

In short, the MIKE 2 user can feel confi-dent in developing his 8008 system withexpanded memory and other features,knowing that his MIKE 2 can be up-graded to a MIKE 3—an 8080 system—inthe future.

EASE OF PROGRAMMING

Instructions and data are entered simplyby punching the 20-pad keyboard. Infor-mation, in convenient octal format, ap-pears automatically on the seven-segment display. This is a pleasant con-trast to the cumbersome microcom-puters which require the user to handleall information bit-by-bit, with a confus-ing array of twenty-odd toggle switchesand over thirty red lights!

A powerful MONITOR program is in-cluded with each microcomputer, storedpermanently in PROM memory. TheMONITOR continuously scans the key-board, programming the computer askeys are depressed.

Say the user wishes to enter the number135 (octal for an 8008 OUTPUT 16 in-struction). He types I, and the right-hand three digits read 007. Then hepresses 3, and the digits say 013. Finallyhe punches the 5, and the display reads735. Notice how the MONITOR program(Continued in column 3.)

QUICK....

what number is this?

o o# o

o

If you have to read your microcomputerlike this—bit by bit, from rows of lights—thecomputer's making you do its work. And ifyou have to use rows of toggle switches toprogram it. you might wonder why theycall the computer a labor-saving device!

Contrast the layout of a typical pocketcalculator. A key for each number andfunction; six easy-to-read digits. Why notdesign microcomputers like that?

Here they are! The modular micros fromMartin Research. The keyboard programsthe computer, and the bright, fully-decoded digits display data and memoryaddresses. A Monitor program in a PROMmakes program entry easy. And, even thesmallest system comes with enough RAMmemory to get started!

Both the MIKE2 system, with the popular8008 processor, and the 8080-based MIKE3 rely on the same universal bus structure.This means that accessories—like our 450ns 4K RAM—are compatible with theseand other 8-bit CPUs. And, systems startat under $300! For details, write for your...

FREE CATALOG!

MIKE 2

MANUAL...

This looseleaf

book includes

full information

on the MIKE 2

system, with

schematics.

Price for orders received

by November 15, 1975...

Includes a certificate worth

a modular micro system, good 90 days.

(Offer valid, USA only.) After 11/15: $25.

$19

>10 towards

^ modular micros ^ martin research ;T

Martin Research / 3336 Commercial Ave.Northbrook, IL 60062 / (312) 498-5060

shifts each digit left automatically as anew digit is entered! The value on thedisplay is also entered into an internalCPU register, ready for the next opera-tion. Simply by pressing the write key,for example, the user loads 135 intomemory.

The MONITOR program also allows theuser to step through memory, one loca-tion at a time (starting anywhere), tocheck his programming. Plus, the SwapRegister Option allows use of the inter-rupt capabilities of the microprocessor:the MONITOR saves internal registerstatus upon receipt of an interrupt re-quest; when the interrupt routine ends,the main program continues right whereit left off.

We invite the reader to compare the pro-grammability of the MIKE family ofmicrocomputers to others on the mar-ket. Notice that some are sold, as basicunits, without any memory capacity atall. This means they simply cannot beprogrammed, until you purchase a mem-ory board as an "accessory." Even then,adding RAM falls far short of a conve-nient, permanent MONITOR programstored in PROM. Instead, you have toenter your frequently-used subroutinesby hand, each and every time you turnthe power on.

EASY I/O INTERFACE

The MIKE family bus structure has beendesigned to permit easy addition of in-put and output ports. A hardware inter-face to the system generally needs onlytwo chips—one strobe decoder, and onelatching device (for output ports) orthree-state driving device (for inputs). Anew I/O board can be plugged in any-where on the bus; in fact, all the boardsin the micro could be swapped around inany position, without affecting opera-tion. I/O addresses are easy to modify byreconnecting the leads to the strobe de-coder (full instructions are provided);this is in marked contrast to the clumsyinput multiplexer approach sometimesused.

POWER & HOUSING

The micros described to the left are com-plete except for a cabinet of your owndesign, and a power supply. The basicmicros require +5 V, 1.4 A, and —9 V,100 MA. The 4K RAM board requires5 V, 1 A. A supply providing these volt-ages, and ±12 V also, will be ready soon.

OPTIONS

A number of useful micro accessories arescheduled for announcement. In addi-tion, the MIKE 3 and MIKE 2 may bepurchased in configurations ranging fromunpopulated cards to complete systems.For details, phone, write, or check thereader service card.

15

memory cell which has been lost throughleakage currents. To eliminate most of thecontrol circuitry normally necessary to per-form this memory refresh, the LSI-11 CPUmicrocode features automatic refresh con-trol.

When enabled by an optional jumper, theCPU refresh control causes execution of amicrocode subroutine approximately every1.6 milliseconds; this operation refreshes alldynamic MOS memory in the system, notjust the memory contained on the CPUmodule. While asserting a bus signal causingall dynamic memories to cycle at the sametime, the CPU performs 64 memoryreferences to refresh their contents. Duringthe burst refresh time, external interruptsare locked out while DMA requests are stillpossible.

Maximum memory size of the 16 bitLSI-11 is 65,536 bytes or 32,768 words.Usually the top 4096 words of memory onmembers of the PDP-11 family are reservedfor peripheral device control and databuffers, so the nominal maximum mainmemory size is 28,672 sixteen bit words.However, the user is not required to dedicatethe entire upper 4096 word space to IO, butmay implement only what is needed. Octal

addresses 000 to 376 are usually reserved fortrap and device interrupt vector locations.Several of these are reserved in particular forsoftware generated interrupts (TRAPS) asshown in Appendix A.

Instruction Set

All operations are accomplished with oneset of instructions rather than the conven-tional collection of memory reference in-structions, operate/accumulator controlinstructions, and IO instructions. Single anddouble operand address instructions forwords or bytes are used with a wide range ofaddressing modes, providing efficiency andflexibility in programming. The variousaddressing modes include sequential forwardor reverse addressing, 8-bit byte addressing,1 6-bit word addressing, and stack addressing.Using variable-length instruction formattingallows a minimum number of words to beused for each addressing mode.

Each processor instruction requires oneor more bus cycles. The first operationfetches an instruction from the locationspecified by the program counter (PC). If nofurther operands are required for executingthe instruction, no further bus cycles areused. If memory or an IO device is

16

RlGS ELECTRQIMflCS

DISCOUNTS: 10% OFF ORDERS OVER $25.00; 20% OFF ORDERS OVER $250.00.

SPECIAL

1-8008 $50

8-2102

ANOTHER POWER SUPPLY . . .

PS 25—1 0 to 25v 1a lab type power supply with adjustable currentlimiting; remote sensing & remote programming for voltage & current.Insturctions included. All parts except chassis, meter(s), p.c. board.Kit of parts with schematics. S14.95

P.C. boards available, No. 007 $3.00 ea.

2K RAM BOARD KIT. ALLPARTSINCL. SOCKETS

$84. 50

ICs

8008 MICROCOMP. CHIP$30.952102 1K STATIC RAM 3.00

5203 256x8 PROM 15.00

5204 512x8 PROM 25.00

INFO ON ABOVE CHIPS IFASKED FOR.

ORDERS OF $50 ORMORE GET FREE BYTESUBSCRIPTION IF ASKEDFOR (CONTINENTAL U.S.ONL Y).

008A MICROCOMPUTER KIT

8008 CPU, 1024 x 8 memory; memory is expand-able. Kit includes manual with schematic, program-ming instructions and suggestions; all ICs and partssupplied except cabinet, fuses & hardware. Includesp. c. boards. $375.00

MANUAL ONLY, $25.00(no discount on manual)

008A-K ASCII keyboard input kit. $135.00

008A-C Audio cassette adapter kit. $100.00

Details on computer, peripheral kits in our flyer.

RGS ELECTRONICS3650 Charles St., Suite K ■ Santa Clara, CA 95050 ■ (408) 247-0158

We sell many ICs and components not listed in this ad. Send a stamp for our free flyer. TERMS OF SALE:All orders prepaid; we pay postage. $1.00 handling charge on orders under $70.00. California residents pleaseinclude sales tax. Please include name, address and zip code on all orders and flyer requests. Prices subject tochange without notice.

17

referenced, however, one or more additionalbus cycles are required.

A special maintenance instruction isincluded in the LSI-11 instruction set to aidin hardware checkout. This instructionstores the contents of five internal registersin a specified block in main memory. Adiagnostic program may then be used toexamine the information and determine theinternal operation of the micro-levelprocessor.

The basic instruction set is that of thefamiliar DEC PDP-11/40 without memorymapping. Included are several operationsnormally not found even in other smallPDP-11 processors, such as exclusive-or(XOR), sign extend (SXT), or subtract oneand branch (SOB). There are also two newinstructions used to explicitly access theprocessor status word (PSW). With theoptional extended arithmetic chip, fullinteger multiply/divide and floating pointarithmetic are also available. The instructionset is more comprehensive than that of thePDP-11/05 while the execution times are alittle slower. Refer to Appendix B for acomplete list of the LSI-11 instruction setand Appendix C for typical timings.

The branch instructions make use of thecondition codes (PSW bits 0 to 3) which areset after execution of every arithmetic orlogical instruction. This allows moreefficient use of memory by eliminating extrainstructions and temporary storage locationstypically used to check results of variousoperations. The result of every operation isdirectly accessible and can be modifiedunder software control by using any of theCondition Code Operator instructions. A listof the four condition codes along with abrief definition of each is listed in AppendixD.

Software

Since the LSI-11 uses standard PDP-11software, there is an extensive library ofprograms available from DEC includingdiagnostic programs to check out yoursystem after it is built. There is also a DECUsers Society (DECUS) which makes avail-able a complete library of various PDP-11programs at reasonable prices. Every LSI-11owner automatically becomes a member ofthis organization.

ASCII Console

The conventional front panel lights andswitches are replaced by an ASCII console/ODT package that operates with any stan-dard terminal device communicating througha serial interface at a specific device addressat any available baud rate. The functionsavailable are very similar to those used bythe familiar PDP-11 Octal Debugging Tech-

nique and are shown in detail in AppendixE. These include examining and changing thecontents of memory and registers, calcula-tion of effective addresses for relative andindirect addressing, and the functions ofhalt, single-step, continue and restart. Byexamining the contents of an internal CPUregister, it is possible to determine which ofthe five methods of entering the consoleroutines was used.

Upon entering the console routine, thelocation of the next instruction to be exe-cuted will be printed followed by @. Theconsole routine will then wait for one of the14 legal command characters. Thus, the userretains all the direct hardware control of aconventional lights and switches front paneland gains the ability to boot load from aspecified device in byte transfer mode.

Interfaces

The LSI-11 system includes severalstandard interface modules to handle avariety of applications. Currently both aserial and a parallel IO interface is available,each as a single 8.5 inch by 5 inch (21.6 cmby 12.7 cm) PC board. The DLV-11 handlesa single asynchronous serial line between 50and 9600 baud, while the DRV-11 providesa full 16-bit parallel interface complete withtwo interrupt control units. The use of thetwo standard interface modules makes itvery simple to connect any desired device tothe LSI-11 bus. Standard devices such asteletypes, line printers, analog to digitalconverters, etc., can be connected directly tothe interface modules with no additionalcircuitry. A simple cassette recorder inter-face can be made using the DRV-11 parallelinterface, a UART chip, and a simple speedindependent recorder interface circuit suchas that shown in Don Lancaster's articleSerial Interface, page 30, in the Septemberissue of BYTE. ■

Are you interested in buying one?

This article has described the details ofthe LSI-11 computer by Digital EquipmentCorporation. For those interested in pur-chasing the board version of this computer,the Southern California Computer Society isorganizing a group purchase for amateurs.This purchase will involve an original equip-ment manufacturer (OEM) quantity of 50 ormore machines, on a basis of cost plus 2%minimum contribution to SCCS. For furtherinformation contact Hal Lashlee of TheSouthern California Computer Society, at213-682-3108. SCCS is organizing Quantitypurchases of other computer equipment, andis interested in making such offerings avail-able through other computer clubs.

18

Branches:

APPENDIX A: TRAP VECTORS

BR

BNE

BEQ

BPL

BMI

BVC

BVS

BCC

BCS

Unconditional branchBranch if not equal to 0Branch if equal to 0Branch if plusBranch if minusBranch if overflow is clearBranch if overflow is setBranch if carry is clearBranch if carry is set

Signed Conditional Branches:

004010014020024030034060064100244

Vector

(Reserved)

Time out S other errors

Illegal & reserved instructions

BPT instructions

IOT instructions

Power Fail

EMT instructions

TRAP instructions

Console Input Device

Console Output Device

External event line interrupt

FIS option

BGEBLTBGT

BLE

Branch if greater or equal toBranch if less than 0Branch if greater than 0Branch if less or equal to 0

Unsigned Conditional Branches:

BHIBLOSBHISBLO

Branch if higherBranch if lower or sameBranch if higher or sameBranch if lower

Condition Code Operators:

APPENDIX B:

LSI-11 INSTRUCTION SET

MNEMONIC

INSTRUCTION

ingle

Operand -

General:

CLR

Clear word

CLRB

Clear byte

COM(B)

Complement (l's)

INC(B)

Increment

DEC(B)

Decrement

NEG(B)

Negate (2's complement

TST(B)

Test

lotate

& Shift:

ROR(B)

Rotate right

ROL(B)

Rotate left

ASR(B)

Arithmetic shift right

ASL(B)

Arithmetic shift left

SWAB

Swap bytes

Multiple Precision:

ADC(B)SBC(B)SXT

Add carrySubtract carrySign extend

CLC

CLVCLZCLN

ccc

SEC

SEVSEZSEN

secJump s Subroutines:

JMP

JSRRTSMARKSOB

Trap s Interrupts:

EMT Emulator trap

TRAP Trap

BPT Breakpoint trap

IOT Input/Output trap

RTI Return from interrupt

RTT Return from interrupt

Miscellaneous Instructions:

Clear C Condition Code Bit

Clear V

Clear Z

Clear N

Clear all condition code bits

Set C Condition Code Bit

Set V

Set Z

Set N

Set all condition code bits

Jump

Jump to subroutine

Return from subroutine

Mark (aid in subroutine return)

Subtract 1 & branch if not 0

Processor Status (PSW) Operators:

MFPSMTPS

Move byte from PSWMove byte to PSW

Double Operand - General:

MOV(B)CMP(B)ADDSUB

Logical:

BIT(B)BIC(B)BIS(B)XOR

MoveCompareAddSubtract

Bit test (logical AND)Bit clear

Bit set (logical OR)Exclusive OR

HALTWAITRESETNOP

Optional EIS:

MULDIVASHASHC

Optional FIS:

FADDFSUBFMULFDIV

Halt

Wait for interruptReset external bus(no operation)

Multiply

Divide

Shift arithmetically

Arithmetic shift combined

Floating addFloating subtractFloating multiplyFloating divide

Continued on page 22

19

:\Y! ...YIIAVI

features~

mm ultra high speed intelligent display

— generates 16, 64 character linesof alpha-numeric data

mm displays upper and lower casecharacters

mm full 128 ascii characters

mm single printed circuit card

mm standard video output

SPECIAL FREE OFFER!

Scientific Notation Software Package with Formatted Output

The floating point math package features 12 decimal digits with exponents from +127 to —127;handles assigned and unassigned humbers. With it is a 5 function calculator package: + — X "^ &sq. root. It includes 3 storage and 3 operating memories and will handle chain and columncalculations.

With the purchase of (1) VDM-1 and (1) 4KRA-4 Memory:

Just $299.00 (Offer expires 2-1-76)

from-

Processor Technology

vim:o

DISPLAYAMHHIM

I

' ..: '^M

Corporation 0

2465 Fourth StreetBerkeley, Ca. 94 710

Continued from page 19

APPENDIX C:

TYPICAL INSTRUCTION TIMING

INSTRUCTION

TIME (usee)

ADD R1,R2

3.5

MOV R3,R0

3.5

MOV TAG1,10

(R2)

11.55

TSTB (R3)+

5.25

BMI TAG 2

3.5

JSR PC,2(R2)

8.05

JMP (R4)

4.2

RTI

10.5

Optional EIS S FIS Instructions:MUL 24 - 64

FADD 42.1

FMUL 52.2 - 93.7

FDIV 151 - 232

APPENDIX E:

ASCII CONSOLE/ODT COMMANDS

COMMENTS

Register addressing

Relative & index addressing

Auto-indexed

Conditional branch

Subroutine call

Jump indirect

Return from interrupt

APPENDIX D:

PSW CONDITION CODES

Multiply

Floating add

Floating mult

CODE

PSW BIT

Floating divide

N

3

Z

2

V

1

Command

Function

CONDITION WHEN SET = 1

If result were negative

If result were zero

If operation resulted inan arithmetic overflow

If operation resulted ina carry from the msb (mostsignificant bit) or a 1was shifted from the lsb(least significant bit)

<CR >

< LF>

Up-arrowBack-arrow

r/

/

?n/

or

Rn/

r;G

or

rG

nL

;P or

P

RUBOUT <DEL>

Close opened location and accept next command.

Close current location; open next sequentiallocation.

Open previous location.

Take contents of opened location as arelative address, and open that location.

Take contents of opened location asabsolute address and open that location.

Open word at location r.

Reopen the last location.

Open general register n(0-7) or S (PSW).

Go to location r and start program

Execute bootstrap loader using n as deviceCSR. Console device is 177560.

Proceed with program execution.

Erases previous numeric character. Responseis a backslash (N).

Continued on page 24

22

Go Computer Now!

Why not ?

FROM $860 TO $11,300 SPHERE CAN'T BE BEAT!

SPHERE starts with a CPU using a Motorola 6800 microprocessor, a Real-Time Clock, 4K of dynamic memory, IK ofPROM software. The CRT Board generates 16 lines by 32 characters of ASCII on a television or video monitor. Keyboard iscomplete with numeric and cursor editing keypads. From here, hardware can be expanded to your hearts desire with extramemory boards (up to 64K), serial communications interface, cassette interface, Modem, digital I/O (as many as you need).Floppy Disk memory (up to 4 disks), 8 computer terminals, line printer etc...all from one M6800 chip.

With a SPHERE Computer, stand-alone development is just the beginning, you can configure your system to handleyour problem solving/record keeping needs. All SPHERE Computer Systems come complete with useable software languages.Available are "PDS" IK Basic, or extended Basic Compiler. When computer is turned on, it immediately goes into a comm-and mode, so that you can instantly start programming. "PDS" contains a mini-assembler, editor, debugger, and utility comm-and set in IK of PROM. Also available is a IK subset of Basic. Our extended Basic compiler is complete with string, matrix,and file functions, and requires 12K of memory. With this software you can perform your applications whether it be account-ing, home management, education, security monitoring, research, business, etc. Why not invent your own application? Forplay or for work your biggest problem is no problem at all. S860 is the start for an operating Computer System Kit. Yourcomputer is ready and comes complete with operator manuals sufficient for first-time computer users. Contact us today formore information.

KIT

Si50

ASM

$520

ONE-CARD COMPUTER: Motorola bHOO microprocessor, 4K RAM,512 bytes EPROM (containing a Program Development System!, aREAL-TIME CLOCK. 16 LINES OF DIGITAL I/O. hard wired ROMMonitor, and a serial type interface. This is the 100-quantity price,extended to the hobby user for a limited time on a single unit.

62, CPU BOARD: Motorola MOO microprocessor, 4K RAM, IK EPROM(containing an EDITOR, ASSEMBLER, DEBUGGER. COMMANDLANGUAGE, CASSETTE LOADER, DUMPER, UTILITIES!, and a REAL-TIME CLOCK.

1400. SPHERE 1: Includes the CPU BOARD described above, plus 512character video with full ASCII keyboard and numeric'cursorkeypad, power supplv, chassis, manuals and associated parts.

KIT

S999

ASM

$1499'

fa100 7995'

SPHERE 2: Includes all features of SPHERE 1, plus serial communica-tions and audio cassette or MODEM interface.

'250" spHERE 3: Includes all the features of SPHERE 2, plus memorytotaling 20K which is sufficient to run full extended BASIC Language.

SPHERE 4: Includes all of the features of SPHERE 3, except thecassette has been replaced by an IBM-compatable Dual Floppy DiskSystem. This system includes a Disk-operating System and BASICLanguage and a fa5 LPM line printer.

OTHER SPHERE PRODUCTS: Light pen option; full color and B/Wvideo graphics system: low cost Dual Floppy Disk System; and fullline of low cost peripherals.

'This ASSEMBLED SPHERE System includes the complete chassis, and video monitor as pictured below.

SPHEFE

CORPORATION

791 South 500 West Dept. 129 (801) 292-8466

Bountiful, Utah 84010

23

Continued from page 22

BUS

BUSTIMEOUT

DMA

JUMPER

SELECTABLE

OPTIONS

A collection of parallel data pathsand power lines used tointerconnect the various elementsof the system, including thecentral processor, memory, andall peripherals.

Bus timeouts or bus errors occurwhenever the controlling deviceon the bus (the bus Master) doesnot receive a response from theaddressed device (the Slave)within a certain length of time. Ingeneral, these are caused byattempts to referencenon-existent memory orperipheral devices. Bus error trapscause processor traps through thetrap vector address 4.

Direct Memory Access. For highspeed devices, memory may beaccessed directly through the buswithout the use of programcontrolled data transfers.

The CPU module containslocations for six wire jumpers tocontrol the various operatingoptions as follows:

1. Two wires select which of thefour possible power-up options isdesired. These are normally set torestart through vector location 24(so the LS1-11 acts as a standardPDP-11).

2. One wire jumper enables theexternal event (or real-time clock)interrupt feature when inserted.

3. One wire jumper enables theautomatic dynamic memoryrefresh feature when inserted.

4. Two wire jumpers determinethe addressing of the 4K RAMmemory located physically on theCPU module.

PC

POWER-UPSEQUENCE

OPTION0123

PSW

STACK

TRAP

Program Counter. A registerwhich contains the address of thenext instruction to be executed.

Two wire jumpers on the CPUmodule select one of the fourpossible power-up modes:

POWER-UPPC at 24, PSW at 26, or HALTODT- ASCII ConsolePC= 173000, or HALTSpecial processor microcode

The power-up sequence isinitiated upon supplying power tothe processor module or onrestoration of power after atemporary power fail hasoccurred.

Processor Status Word. Containsinformation on the current statusof the processor including thepriority mask (bit 7) and thecondition codes (bits 0 to 3).

An area of memory set aside bythe programmer for temporarystorage or subroutine/interruptsevice linkage. The stack uses the"Last In — First Out" concept;thus various items may be addedto a stack in sequential order andretrieved or deleted from thestack in reverse order. Stack startsat the highest location reservedfor it and expands linearlydownward. In the LSI-11, register6 is reserved as the hardware stackpointer and must be initialized bythe software. However, registers 0to 5 may be used for variousprogram defined stacks as needed.

Software generated interrupt.

MACROCODE

Each wire jumper consists of ashort length of bare copper wiresoldered between two designatedholes in the PC board.

The instruction set which theprogrammer sees and actually usesto implement his program, such asthe PDP-11 instruction set in thiscase.

VECTOR A unique address which points to

a reserved set of locations (2words) for interrupt or errorhandling. The first word containsthe starting address of a serviceroutine (a new PC) while thesecond holds the new PSW to beused by the service routine.

MICROCODE The low level instruction set usedin a microprogrammed processorto "emulate," or execute, themacrocode. Microcode is moreprimitive in function, butexecutes at a higher speed thanthe macrocode.

VOLATILE Volatile memory, such as RAM,

MEMORY will not retain useful information

without power appliedcontinuously. Non-volatilememory, such as core or ROM,will always retain its informationwith or without power applied.

24

Memory Hania!

4K -

IIK16 K

$115!$401!$561!$696!

THE MORE THE MEMORY THE MERRIER!

The SPHERE Memory board. Is designed to hold 16K of memory on one board.2107A-8 memory chips are used on this board and are designed in 4K increments toallow choice of 4, 8, 12, or 16K. Each memory chip is socketed and is delivered to youcompletely assembled and tested. The PC memory board connects to the CPU boardtri-state buffered bus cables. The memory locations are strap selectable as to order ofaddressing. Those memory mania purchasers of 12 or 16K who have, or who buy, anySPHERE Computer System will get absolutely free the SPHERE extended BASIC com-piler. All documentations will be included.

ITS ALL DYNAMIC MEMORY!

SPHERE CORPORATIONDept. 130

791 South 500 WestBountiful, Utah 84010

Dear SPHERE:

Yes! The facts I've read have convinced me!

□ Please rush me more details on your memory board.

□ Please rush me more details on your low-cost computersystem and peripherals. (Specific questions, if any, areattached.)

Print Name: .

Address:

City and State:Zip Code:

SPHERE

CORPORATION

791 South 500 West Dept. 130 (801) 292-8466

Bountiful, Utah 84010

25

KITTEN ON 8" VSMt

KITTEN ON 4' WSfW

Photo I: The ease of removing just one dot from afuii field display depends upon the display size.The author's X-Y display has an adjustable sizecontrol which was used in preparing this picture.

Let There Be

Light Pens

Sumner S. LoomisLoomis LaboratoriesRoute 1 Box 131APrairie Point MS 39353

:::: 11

t •

t a

• •» ■ «

• * •

• • • »

• • • •

• • • •t • * •» • • •

• • • •

• • * • •

• « • • •

• • • • a

• • ■ • •

• • • • a

• ■ • • •

• ■ • • a

■•■•••

••••••

■ • • • • f

• •••••**» Si! lit! S»il !•

• ••■•* • ' i a a a i i m Mi! M

•••''", *•*«*(•**•*•***

•••'••• #l**fil»*#***t*i

::::::' ::::::•••:::•::::

•!••■ .1::: :i:iii: ill!<"" 1 :::::::: i •::t s•is: : ::: ::::!i::i:i::: i: s s 1 i J ••: i s t: t t J i::::::::::::::

«i* I'SIIIIIIIaa ••*»»•

s s s!: i:: :! * . i • • SI • • • • • s s ;i 51 s ! » !: i : I: ii: S s t!.. i»* 11 •»• • *: i • •: 11

•! ; •

::::ii::::::: ;

• ■ • • • * *

t • • • • J ■it*! ! !■ • • • . S i

s:: • • • •::: . •i tiii

I 1 • • • • •,

• • • » i •

• • • • •

• • • • i■ ■it*ill**

§ i 1 i i

• •til

4 • ■ • •

list'*

• • • • •

iiit i

• • • • •

• • • • •i f |1 •

• * * !

i • • • •

*t • • •

■ • * •

• • i

11 i i

• • •'I t fe <

: it:: H

• \\\

: :

1 !:! 1

• • • it •• •

• • • ;

a * a a a • • itfflff'*

ilillfli

•••••aaa

• •••***

• • a a I a •

:; iijij■ ■ «t • • #

: :::::

SI • i • • aI • • • • • •

I • a • ♦ • •X • a • a • ;

• • a a • a •I • I • • • •

w

i I

t f:

5

■•••••••••••

IStfi«***lS!!!SSa

• ••a* ISSSSIS

• •*•••*•• •♦;•♦;!;

••••••••■••itssitl

!•• ••(•*»«•*'*•I:;

••••••••••••••••if

Hill 1

::':: i:::

11 * 1 I a S 1

• •••••••

• :i•i: i i

illiilill

iiiliiiiii

if) FPti

iif i

•tit: .:: :::ill ! ill

•'ill i

• ••if I I a a ♦ • 1

iiiil ill 1 "

■ Mt'iiliStiSiltiliiHiiiiitiii

H ~ UPITTEN

iiiiiiit

UlSirat-J^B

L "= URITTEN AT 10 FRAMES/SEC.

Photo 2: The light pen can be used in an "erase" mode by filling the screen with "on"dots then selectively removing dots with the light pen. The titles added to this picture(and all the pictures in this article) were created with a separate character generatorwhich is not described.

26

With only a few components and a fewhours of construction you can add a versatilelight pen to the oscilloscope graphics inter-face which has been described in theOctober 1975 issue of BYTE, page 70 ff.

By holding the light pen to the face ofthe cathode ray tube (CRT), a point may beadded or removed. This eliminates theawkward and time consuming effortrequired when using a program or manualswitches to change the dots on the screen.

The resolution and capability of the lightpen are dependent on two characteristics ofthe CRT. The brightness and the size of thedisplay tube will determine how easily youmay add or remove one dot. An idea of theeffect of display size may be had from photo1. The word Test was written twice on a 12inch (30.5 cm) black and white TV picturetube configured as an XY display like anoscilloscope. The top word was written withthe display adjusted to an 8 inch (20.3 cm)size, and the lower word was written with a4 inch (10.2 cm) display. Each letter waswritten with only one stroke of the light penwithout touch up or corrections. With somepractice, and possibly several passes, one dotmay be added or removed if the displaymeasures 8 inches (20.3 cm) or more.Further improvements to the pen arerequired with smaller display tubes. Anadvanced circuit that greatly improves thecapability of the pen with small displays isalso described in this article.

The light pen can erase or drawdepending on the setting of a switch.Examples of the two actions may be seen inphotos 2 and 3. If the oscilloscope interfaceis adjusted for a high repetition rate, somesmearing or carry over into the neighboringdot positions occurs. The author's systemhas a front panel control permitting tenrepetition rates. A small improvement inresolution can be noted at the lower writingrates, as shown in photo 2. A frame consistsof 64 by 64 dots.

Theory of Operation

The light pen operates on the principlethat brightness is quite intense during theactual interval that a particular dot is beingwritten by the CRT's electron beam.Although phosphor will continue to emitlight for some time, the brightness decays inan exponential manner after the writingbeam has moved on to the next dot.

Figure 1 illustrates the simple light pencircuit. With proper adjustment of the sensi-tivity control (and possibly the brightnesscontrol), the photocell in the tip of the lightpen will sense the moment in time when adot is written at the particular location ofthe light pen. At this instant, the photocellwill conduct, biasing the PNP transistorwhich causes a short pulse to be conductedthrough capacitor C1 to the base of the NPNtransistor Q2. If the pulse is greater than .6V, this transistor will be driven into satura-tion, and the light pen output will fall to .3V. This output line is the connected to pin 5of the oscilloscope graphics unit whichwrites a 1 or a 0 bit (dot or no dot) atprecisely the instant that the dot positiontouched by the pen was addressed.

The above procedure works quite well ifthe dot to be changed is illuminated at thetime. With proper adjustment of the sensi-tivity control, we can usually use an illum-inated dot just above the point of action (itmust precede the dot in scan sequence) tocreate a new dot in the next space. Thisaction of extending a line can be quite usefulfor drawing bar graphs on the CRT. Thismode of entry is possible because screenpersistence allows the light pulse to becarried over into two or three subsequentdot positions depending on the frame speed.

How can the photocell sense the dot'sposition if there is not any illumination totrigger it? This is accomplished by the floodcircuit which is shown in figure 2. Thiscircuit overrides the normal Z-axis controland floods the screen with light by feeding alogical one signal to the Z axis of the displayuvvrt.. With this arrangement the pen is placedat the required dot position, the footswitchis actuated to flood the screen with light,and the photocell is energized when the

.It .jl- j!i| it'., '.! •.!'"',. ,.

. , in IIIi**Sii

> »,! «H '• ,iil v .1*,

t i,; A \ <ii *ii »• *"■

FREE-HAND WRITING

Photo 3: The light pen can be used in an "enhance"mode by using a footswitch controlto flood the screen momentarily when the light pen is in position.

PC-I

R-l

MFG

PHOTOCELL

CONTROL

Tl

H-35

IM

Tl

H-38

2M

Tl

L-63

5K

CLAIRE

903

20K

LIGHT-PENOUTPUT |0

?""*■ PIN 5

h

LIGHT PEN PC-I

SI

DDU

DEPOSITSPST

Figure J: The simple version of the light pen can be constructed according to thisschematic. All resistors 'A W.

FROM DDU CARDZ OUTPUT

_ TO OSCILLOSCOPEZ INPUT

FOOT SWITCH S

Figure 2: The foot switch control used to flood the screen for "enhance" modeoperation is given in this circuit which modifies the Z-axis signal to the oscilloscopedriver.

27

CHAR GEN10 PIN5 WRITE S3

DDU

Figure 3.- By adding a pair of oneshots to the circuit, the ability to draw pictures is improved through a shortdata lockout period which avoids smearing.

writing beam reaches that particular dotposition. Releasing the footswitch removesthe flood and allows the data to beexamined.

The circuits just described will probablysuffice if you wish to use the light pen onlyfor occasional correction of data. If you planextensive and detailed work, such ascartooning or statistical data entry, a modifi-cation of the circuit will allow you to tailorthe light pen's response to your own particu-lar needs and system speed. The circuitshown in figure 3 is similar to the one shownin figure 1. However, it includes two oneshotmultivibrators (contained in one CMOSDIP). The first one produces a constantamplitude pulse of approximately 200 nsecduration which is sufficient to bring aboutthe storage of a 1 or 0 bit in most versions ofthe 2102 memory (ICs 11 to 14 in theoscilloscope graphics interface). The secondone delays the generation of another writecommand for .25 sec, giving the operatorsufficient time to withdraw the pen from thescreen or move to a new location, before adouble or multiple dot can be drawn. Oncethe two pulses have been timed in accor-dance with a given system speed and theoperator's writing speed, it becomes veryeasy to draw detailed images with the lightpen.

In figure 3 resistor R4 and capacitor C1control the length of the write pulse, andresistor R5 and capacitor C2 control thewait time. For the 4528 CMOS oneshot, thetime of the pulse (T) measured in micro-seconds is a function of resistance (R) andcapacitance (C) measured in ohms andmicrofarads, respectively, as follows:

T = 2.5 * R*C** .85;

where a single asterisk denotes multiplica-tion, and a double asterisk exponentiation.The circuit shown in figure 3 alsoincludes a switch and connections for usingthe light pen with the author's text displayand editing system. Exact details for thisconnection are not given here, as they willdiffer with the type and construction of thetext display system. I found, however, thatthe shift register type memories commonlyused in these systems require a much longerwrite pulse than is necessary for the 2102memories. It was also desired to eliminatethe holdoff circuit (second oneshot) for tW\sapplication. These changes are accomplishedwith switch S1 and resistors R9 and R5. Ifthese features are not desired, it is recom-mended that R9 be replaced by a wire, R4changed to 4.7 kfi and CI to 20 pF.

28

Construction

As is shown in the table accompanyingfigure 1, several different types of photocellsare suitable for use in the light pen. TheTexas Instrument (Tl) type H-35 or H-38 isa very small device with a built in lens. Thesewere originally designed for use in punchedtape and card readers, thus the small size.Their size, sensitivity, and restricted field ofview make them ideal for this application.The high impedance of these devices, how-ever, makes them somewhat slow for thisapplication, particularly at low brightnesslevels. The slow response time limits theiruse at the faster scan rates, and complicatesthe smearing mentioned earlier. Anotherdevice, the L-63 type which is available fromRadio Shack (276-140 infared detector), wasfound to be considerably faster. Being amuch larger device, however, it has a largerfield of view, and much of its speed advan-tage is lost to optical smearing. Models ofboth photocell types were built and testedby me, with only slight preference for theH-35. With some careful masking, andpossibly the addition of a small, short focallength lens (e.g., Edmund Scientific number12050 cylinder lens, or a small drop of clearepoxy), this photocell will probably performbetter than the H-35 for this application.The Claire types 903 and 903-L were triedwith only fair results.

Any ball-point pen or felt-tipped markercan be reworked to make a housing for yourlight pen. Take a tour of the local stationerystore to find likely candidates. The L-63photocell was found to fit nicely into theend of a Graphi-100 marker pen which caneasily be disassembled with diagonal cutters.An example of the construction with theL-63 is shown in photo 4, and the H-35assembly is shown in photo 5.

Secure the photocell in place with epoxyadhesive after attaching the shielded cable.The cable can also be secured against damagefrom pulling by filling the entire pen withsilicone rubber adhesive or ordinary house-hold bathtub caulk. It is wise to keep thecable short, especially with the H-35 or H-38photocells, to obtain maximum possibleresponse speed. I used an 18 inch (45.7 cm)long miniature coaxial cable leading to aminiature phone plug.

If you are using the simple circuit offigure 1, the parts can be assembled on asmall turret terminal board available at mostelectronic supply houses. This assembly isshown in photo 6. The circuit of figure 3 canbe assembled in the same manner with theaddition of a 16 pin DIP socket. R4, R5, CIand C2 should be mounted in such a mannerthat they can be changed easily (Cambion601-1512 component clips are useful here).

Photo 4: This shows a pen based on the 11 type L-63 photocell, built using a markingpen case.

"mm w«*2

Photo 5: This picture shows an assembled light pen using a Tl type H-35 (or H-38)photocell with a standard ballpoint pen housing.

■ '

Photo 6: This photo illustrates how the circuit of figure 1 can be assembled using a smallturret terminal board. The transistors and R5 are mounted out of sight on the rear sideof the board.

29

. .1 .

IMPROVED FREE-HAND WRITING

The sensitivity control may be convenientlymounted on the front panel.

The operation of the light pen requirescontrol of the inputs to the oscilloscopegraphics unit. I have found that one of themost convenient ways in my system isthrough a set of manual data switches. Thistype of input was illustrated as a test fixturefor the oscilloscope graphics interface infigure 5 on page 75 of the October 1975issue of BYTE. In my system, these datainput switches are shared with a Mark-8minicomputer front panel by means of an 8pole double throw toggle switch. It is alsopossible to set up input codes to theoscilloscope graphics unit using software inthe microcomputer system which drives it.

In order to enter data with the light pen,a deposit switch is pressed whenever the penis in the proper position for data entry. Thedeposit switch should be mounted in aconvenient location near the display tubeand light pen. In my system the light pendeposit switch was mounted next to theoriginal deposit switch of the Mark-8 com-puter.

Photo 7: Using the improved circuit of figure 3 reduces much of the over-writing ofmultiple dots which occurred using the original circuit of figure 1. This is an enhancemode picture.

Photo 8: This illustrates a cartoon drawn using the erase mode of operation with theimproved circuit of figure 3.

Using The Light Pen

To illustrate the use of the light pen, wewill cover the procedure necessary to draw asimple figure on the screen in the erase modeusing manual controls. Set the switchregister to 1000 0110 binary (turn scan on)and depress the deposit switch. This shouldproduce random dots on the screen. Set theswitch register for 1000 0010 binary (set Zon) and depress the deposit switch again.The screen will show a full field of dots. (Ifthe Z axis polarity of your display tube isreversed, you will have to use the "set Z off"command (1000 0011 binary) to illuminatethe screen.) Set the switch register for 10000010 (set Z on), but do not activate thedeposit switch. Now bring the light pen incontact with the display CRT, and note thatthe dot or dots within its field of view areerased. To erase the entire screen and startover, simply press the deposit switch andrepeat the above procedure.

To write in the enhance mode (screendark, writing illuminated dots), reverse theabove procedure by wiping the screen cleanwith the "set Z off" command (while thescan is on), and after setting the switchregister to "set Z on" without the depositswitch, proceed to write dots with the lightpen. In this mode, the flood foot switchmust be periodically activated to provide therequired illumination. Examples of the lightpen's drawing capability can be seen inphotos 7 and 8. ■

30

Horror Story

Not too long ago, researchers at StanfordMedical Center in California were horrifiedto discover that several years of data thatwere stored on magnetic tape haddisappeared. The tapes hadn't disappeared,just the data. The discovery was made whenthey attempted to retrieve some of the datafor analysis, but found only "garbage"recorded on the tapes. Even more disturbingwas the fact that these tapes were supposedto be ultra reliable. They had been especiallydeveloped for storage of important researchdata and used a fully redundant recordingtechnique for improved reliability.

Fully redundant recording is a storagetechnique in which each data bit is recordedin two different locations. In this case,DECtapeTM Was being used. This is tapethat is 3/4ths of an inch wide and has sixparallel data recording channels or paths.The data recorded in the three channels onone side of the tape is duplicated in thethree channels on the other side. Thus, thetapes have half the data capacity that theycould have, but their reliability is signifi-cantly improved.

It should be noted that there are anumber of other possible redundant storagetechniques in use for improving reliability.For instance, "triply redundant recording"replicates each bit three times in threeseparate locations. Alternatively, dependingon the allowable bit-patterns that may beused to store data, "partial redundancy"may be used. In this technique, acomputation is performed on the explicitbit-pattern of each datum. The computationresult requires fewer bits than the originaldatum, but may be used to either replicatethe original datum (thereby recovering it, ifnecessary) or to at least verify theauthenticity of the original datum. These arereferred to as "error-correcting codes" and

"error-checking codes," and form anon-going area of applied-mathematicsresearch. In either case, partial redundancy isimportant in that it improves reliability, butrequires less additional storage thanfull- or triple-redundancy.

First, the researchers thought (prayed)that their tape decks were malfunctioning.Not so. Diagnostic checks were made and thetape equipment was working properly. Next,the tapes were examined. Nothing waswrong with them, physically, and in fact,new data could be recorded on them andretrieved without difficulty. They askedothers around the Medical Center if they hadencountered similar problems (there areabout 50 computers at the Stanford MedicalCenter). None had. Then they looked forenvironmental causes, but there appeared tobe none. The temperature and humidityrecorders, common to biomedical researchfacilities, indicated no significantfluctuations. There had been no fires, nochemical accidents, and there was no x-rayor high power electronics gear in use nearby.The tapes had been in their individual boxes,just like the tapes for all of the othercomputer facilities in the Medical Center,and these boxes had been neatly stored onthe bottom shelves of a cabinet, well out ofthe way of possible harm. It was a mostfrustrating puzzle.

Finally, however, the mystery was solved.It seems that the janitor had made hisbiannual floor polishing rounds, using aheavy duty rotary floor polisher. Themagnetic radiation from its massive motor,in proximity to the low shelved tapes, hadraised havoc with the bit patterns that hadbeen recorded on the tapes.

The researchers now store their tapes onthe top shelves. ■

Jim C. Warren Jr.Star Route Box 111Redwood City CA 94062

31

LIFE Line

Integrating graphics control commands

Carl Helmers

In LIFE Line 3, the design of theDECODE routine of the LIFE program waspresented. DECODE is designed as a tabledriven mechanism for selecting one ofseveral subroutines which carry out thefunctions of the LIFE program's KEY-BOARD_JNTERPRETER. However if youexamine table 1 of LIFE Line 3 (see p. 51 ofBYTE #4), you will note one conspicuousand intentional lack: There are no routineswhich process the interactive graphics com-mands required to set up LIFE patterns onthe scope display. Yet in LIFE Line 1,several special purpose keys were introducedas manual inputs for cursor motion controland data definition purposes. Where is themissing part of the program which interfacesthese keys? What are the hardware implica-tions of requiring a special keyboard?Answers to these questions are the majorconcern of LIFE Line 4. Integrating thegraphics control commands is a combinedhardware and software topic. The software isthat of the DEFAULT routine that inter-prets several keyboard inputs not handled byDECODE; the hardware consists of thedesign of a special keyboard interface toautomatically switch between an ASCII key-board's 7-bit parallel output code and theLIFE graphics control keypad.

The main requirement for LIFE cursormotion and data control is that one, two orthree of the input keys can be depressed atthe same time. This capability is needed inorder to specify all the possible combina-tions of motion control and optional cellbirth or death data inputs. The individualmotion control possibilities (one key at atime) are the movements in four principaldirections: up, down, left or right. When twomotion control keys for perpendicular direc-tions are selected at the same time, diagonalmotion is the desired result. With eitherform of motion control, entry of data can

optionally be performed by depressing eitherthe birth key or the death key at the sametime. Thus as many as three keys may besensibly pressed simultaneously whenentering data.

The large number of combinationspossible for the six bits which will be neededfor six switches strongly argues againstmaking the software use a table drivenalgorithm such as DECODE. This is thereason why no cursor motion and data entrycommands are found in table 1 of LIFELine 3. Since each bit of the parallelinformation from the motion controlswitches can have an independent meaning, aspecially programmed determination ofmotion control actions uses less memorythan the huge table which would be requiredfor all the combinations. Thus handling ofmotion control is left to the DEFAULTroutine which is called by DECODE when itfails to decode one of the commands in table1 of LIFE Line 3. (DEFAULT also handlesASCII numeric inputs, as you'll see a bitlater in LIFE Line 4.)

Graphics Control Hardware ConsiderationsFor the hardware of LIFE, how can theneed of this special set of input codes bereconciled with the need to input ASCII viathe same eight-bit input port? One answerlies in the choice of an eight-bit format inwhich the most significant bit determineswhat lies in the low order seven bits. Withthis format, one state of the most significantbit indicates when an ASCII code is presentin the low order; the other state of the mostsignificant bit indicates when graphic controlkeyboard information is in the low order.This choice of format is supported in hard-ware by the addition of a simple interfacemodule which uses seven integrated circuitsto switch between data sources anddebounce the motion control keyboard.

32

Graphics Control Commands

Format: 7

1

I

♦ t

ASCII Keyboard Input

Format: 7

0

right movement if one

left movement if one

down movement if one

up movement if one

birth/death (one/zero)

change enable, if one,move only if zero

unused

one to indicate a graphicscommand

ASCII character (7 bit)zero to indicate ASCII

Figure 1: Data formats for graphic control commands and ASCII keyboard input.

The combined ASCII and control dataformat is illustrated in figure 1. When thevalue of bit seven of the interface is read asone, the programming of the DEFAULTroutine will always be entered and the loworder bits will be analyzed as graphic controlinformation as shown by the upper diagramin figure 1. The low order bits zero throughthree represent the individual key states ofthe motion control switches and the nexttwo bits, four and five, are encoded withinformation on data entry from the birthand death switches. If the value of bit sevenis read as a logical zero, the program willinterpret the ASCII value of the low orderbits through the DECODE routine of LIFELine 3, or through the DEFAULT routine ifthe command is not in the table which drivesDECODE.

The hardware needed to implement thisspecial interface is shown in figure 2. Theinterface consists of a two way data selector(IC6 and IC7) which determines whether theeight bit pattern presented to the system businterface comes from the cursor motioncontrol keyboard or from the ASCII key-board. The ASCII data is routed straight tothe data selectors from a jack (J1) whichreceives a cable which connects to thekeyboard unit. (The LIFE Line system

prototype is currently using one of thesurplus Sanders 720 keyboards described inBYTE #1.) The graphic control informationis derived through jack J2 from the specialkeyboard via the 7474 flip flops IC1, IC2and IC3. These D flip flops are being used asset reset flip flops by grounding the clockline and employing the preset (PRES) andclear (CLR) inputs for data and keyboardacknowledge functions respectively. The flipflop outputs for bits zero to three godirectly to the data selector to define cursormotion inputs. The flip flop output for bitfour (birth switch) also is directly connectedto the selector. However, bit five of theselector's cursor motion inputs is taken fromNAND gate IC4D which encodes a CHANGEENABLE signal when either birth or deathdata input is indicated. (Note that the userof the LIFE cursor motion control keyboardis on his honor not to push both birth anddeath keys simultaneously — with thisencoding logic, birth always locks outdeath.) One item derived from the cursorcontrol keyboard is a key pressed signalproduced by 7430 NAND gate IC5. Thissignal is inverted by IC4C and used tocontrol the data selector: If any key on thecursor motion control keyboard is pressed,the ASCII keyboard will be locked out;

A flip flop with preset andclear inputs can be used inplace of a hand-wired setreset flip flop.

33

LIFE INPUT KEYBOARDJACK J2

PULSE TO 2KEYBOARDDEVICE FORSYSTEM INTERFACE

__A__A__(j_.(j A__A__A__Ij__

DO Dl D2 03 D4 D5 D6 D7

TO SYSTEM BUS INTERFACE

0 I 2 3 4 3 6 7

(IDLE STATE: 0 0 0 0 0 0 00)

Figure 2: The logic diagram of a keyboard interface which implements the formats of figure J. Resistors Rl to R7 are TTL pull up resistors. Thevalue are not critical, and may range from 1 KO to 10 KO, '4 W.

otherwise the ASCII keyboard is connectedand the cursor motion control keyboard isignored. Note that the cursor motion inputhas priority over the ASCII keyboard since itcontrols the data selector.

Finally, to complete the interface logicsections A and B of IC4 are used to bufferthe computer-generated keyboard WRITE-signal which occurs when the computerwrites data into the keyboard location. Thissignal is used to reset the graphics controlflip flops. The buffered version of the signal(pin 6 of IC4) is used to drive the acknow-ledge line of the ASCII keyboard unit. Aseparate buffer is recommended due to theunknown loading of the ASCII keyboarddevice. In LIFE Line's design of a program,the logic of the KEYBOARD_INTER-PRETER procedure is used to manipulatethe interface.

What is not shown in figure 2 is the actualsystem bus interface. The design of such aninterface must be done consistent with agiven computer's data bus. In the prototypesystem for LIFE Line, a Motorola 6800

computer's data bus, buffered by NationalDM8833 Tri State bus transceivers is used.The interface thus consists of two DM8833'sused to drive the bus, plus the addressselection logic needed to detect the addressof the keyboard and produce the bus enablesignal as well as the WRITE- signal. For acomputer based upon a kit, the input portlogic will be in a standard form designed bythe kit manufacturer. What is needed is aparallel input port, which might alreadyexist if your computer kit comes with akeyboard and parallel interface.

Notes on Assembly

The prototype version of the graphiccontrol keyboard is illustrated in photo 1.The keys were made from conventionalmagnetic reed switches obtained from key-board units found at a computer auction.Any single pole single throw keyswitch canbe used; options on mounting are left to theingenuity of the builder. The arrangement ofkeys shown in photo 1 is designed so thatthe cursor motion controls are at the top in

34

'■i>ao<>o-os>9o6oo0o-...'

. ■ ..

-.:<; "■ l: . ., ■ i .: 0-J00000060O00O00C.^CiOQOOap'OO-OQOOOOC

.•*'/ oo-oo**O0o5&

/ocioooooo<}oaoouvv>

GOOSO'COpOOOOtJO■..•'.MOCMOOO:

■..,.r:-;.K oOOoocov, - :■,■;:OOOOpOoOO

ottacooooo600000000

QOOOOOOOO

S^OOCOOOOOOOOOOOO

oaowgocoo

::, ■ -..■■:..:. ■ {1 !'■

:0ooogoo*><>oooooooo

DOOOGOOGOCQOOOOvCO

-"vOOO&opoi

Photo 2: The graphics control keyboard ofthe LIFE Line prototype system. The groupof four switches with arrows are cursormotion control keys. The two switches withcaptions "B" and "D" are the birth anddeath data keys, respectively.

a group of four. The arrows were appliedusing small pieces of self-sticking addresslabels of the type often used by computercenters. The two isolated switches at thebottom of this arrangement are the birth (B)and death (D) keys. The wiring of thekeyswitches to the computer is accom-plished through a multi-conductor bundle ofwires trailing away at the bottom. This cableterminates in a dual-inline header plug whichfits into a socket on the wire wrap boardcontaining the computer and interface.Photo 2 illustrates the wire wrap wiring ofthe interface logic in the LIFE Line proto-type system.

Using The Control Information

The purpose of the interface hardware isto combine two keyboards into a singleinput port with software distinguishing"who called" on the basis of the formatshown in figure 1. How does the LIFEsoftware handle this data format? Recallingthe presentation in LIFE Line 3, theDEFAULT routine is called by the DECODE

811

tinW mil T 1111 r '■

Photo 2: Detail illustrating wire wrapped assembly of figure 2 using a generalpurpose prototyping board.

routine whenever DECODE cannot match aninput from this port to an entry in theCOMMAND table. Decoding of the graphicscontrol format and ASCII numericcharacters is left to the DEFAULT routinebecause of the systematic nature of theseinputs.

How is this decoding done? One answerof course lies in the design of the DEFAULTroutine. DEFAULT is specified in a pro-cedure-oriented language in figure 3.Basically the DEFAULT processing followsone of two paths of execution according tothe high order format identifier bit, bit sevenof the formats illustrated in figure 1. Theinput data from the interface is passed toDEFAULT in the variable KEY which is setat line 11 of KEYBOARD^INTERPRETER(see LIFE Line 3, figure 3). The high orderbit of KEY is tested by the AND operationof line 3. The masking bit string 10000000B

35

1 DEFAULT:

2 PROCEDURE;

3 IF (KEY AND 10000000B) NOT = 0 THEN

4 DO; /* GRAPHICS CONTROL INPUT CASE */

5 CALLMOVECURS; /* MOVE CURSOR PER INPUT */

6 IF (KEY AND00100000B) NOT = 0 THEN

7 DO; /* CHANGE IS INDICATED */

8 IF (KEY AND00010000B) =0THEN

9 CALL LPUTIXCOL, YROW,0);/* TURN OFF POINT */

10 ELSE

11 CALL LPUT(XCOL,YROW,1);/* TURN ON POINT */

12 CALL DISPLAY;/* SEND UPDATED LIFEBITS OUT »/

13 END;

14 END;

15 ELSE

16 DO; /* ASCII NUMERIC DEFAULT CASE */

17 NUM = KEY-30H;

18 IF NUM>9THENNUM = 9;

19 ZUM = 0;

20 DO FOR I = 1 TO 10; I* MULTIPLY = REPEATED ADD */

21 ZUM = ZUM+ ENTRY;

22 END;

23 ENTRY = ZUM +NUM;

24 /• ENTRY NOW HAS NEXT DECIMAL DIGIT ADDED IN WITH */

25 /* A BCDSHIFT BY ONE PLACE

26 END;

27 CLOSE DEFAULT;

selects only the high order bit of KEY sothat the result of the masked test will bezero if bit seven is zero, non zero if bit sevenis one. If the result of the AND is not equalto zero, the graphics control case will beexecuted: the DO . . . END group extendingfrom line 4 to line 14. If the result of theAND is zero, ASCII input is present so thecharacter is forced into a numeric entryinterpretation. The ELSE DO . . . ENDclause of lines 15 to 26 handles this alterna-tive.

Graphics Control Processing

The processing of the graphics controlformat is not at all complicated. A pro-cedure, called MOVECURS is executed firstto decode the four low order bits of thegraphics control format and adjust thecursor position.

MOVECURS is specified in a procedure-oriented language in figure 4. This routinecontains four IF statements which test thefour motion control bits. Motion is achievedfor each logical one bit by simply adding orsubtracting one from the correspondingcursor position variable XCOL or YROW.Note that this software takes care of aninvalid combination of up and down (or leftand right) in a unique way; nothing happens.If contradictory commands are input, the

Data (8-bit bytes) used by DEFA UL T at this level:

NUM = temporary data byte used to hold a BCD digit for conversion tobinary.

ZUM = temporary data byte used to form the product when ENTRY isshifted left 1 BCD digit by multiplication with 10, lines 20 to 22.

Data (8-bit bytes) used by DEFAULT but shared with thewhole program.

KEY, XCOL, YROW, ENTRYSubroutines Referenced by DEFAULT:

LPUT . . . Routine (used also by FACTS _OF_ LIFE) which places thebit value of the third argument at a location specified by the first twoarguments. Thus lines 9 and 11 define a new value for the bit at XCOLand YROW in the LIFEBITS matrix.

MOVECURS . . . The routine (see Fig. 11) which moves the cursor up,down, left or right depending upon the motion control switches whichare read into the low order bits of KEY.

DISPLAY . . . The routine which copies LIFEBITS to the graphicsoutput device for viewing.

Figure 3: The DEFAULT routine specified in a procedure-orientedlanguage.

ALTAIR 4K's

$195!

The price of the ALTAIR 4K memory boards from WITS wasincorrectly listed at $264 in the "MITS-MAS" Christmas Catalogprinted in December's Popular Electronics. Unfortunately, theprice change came after the catalog was printed.

The ALTAIR 4K board provides 4,09b words (bytes) of dynamicRAM (Random Access Memory) for the ALTAIR 8800. Eachindividual board contains memory protect circuitry and addressselection circuitry tor any one of 16 starting address locations inincrements of 4K. The maximum access time of the ALTAIR 4Kboard was recently reduced from 300 nanoseconds to200 nanoseconds.

Dynamic memory was chosen for the ALTAIR 4K board becauseit is generally faster and requires less current than static memory(a 4K static card that meets ALTAIR bus drive specificationsrequires close to three times the 5 volt current of dynamicmemory).

Other ALTAIK B800memory options include a 1K (1.024 words)and a 2K (2,048 words) static memory card. These low powerstatic memory cards contain memory protect features and havea maximum access time of 850 nanoseconds.

ALTAIR 8800 Memory Prices:

4K Dynamic $195 kit and $275 assembled

2K Static $145 kit and $195 assembled

1K Static $ 97 kit and $139 assembled

Prices, deliwrv and specifications subject to change.

M

NEW ALTAIRI/O CARDS

Creative Electronics

MITS/6328 Linn N.E., Albuquerque, NM 87108 505/262-1951

Two new ALTAIR 8800 I/O boards are now in production.These include a serial interface (88-2SIO) that can be orderedwith one or two ports, and a parallel interface (88-PIO) that canbe ordered with Lip to four ports.

Each port of the new Serial interface hoard is user-selectablefor RS232, TTL, or 20 milliamp current loop (Teletype). The88-2SIO with two ports can interface two serial I/O devices, eachrunning at a different baud rate and each using a different elec-trical interconnect. For example, the 88-2SIO could be interfacedto an RS232 CRT terminal running at 9600 baud and a Teletyperunning at 110 baud.

An on-board, crystal-controlled clock allows each port to beset for one of 12 baud rates: 37.5, 75, 110, 150, 300, 450, 600,1200, 1800, 2400. 4800, or 9600. Baud rates are the speed at whichdata is transfered between the computer and the I/O device.

Each porl oi the new Parallel interlace provides 16 data linesand lour controllable interrupt lines. Each of the data lines canbe used as an input or output so that a single port can interfacea terminal requiring 8 lines in and 8 lines out —or it can interfacetwo input devices such as a paper tape reader and a keyboard —or two output devices such as a paper tape punch and printer —or any combination for custom applications. All data lines arefully TTL compatible.

ALTAIR 8800 Interface Prices:

88-2SIO Serial Interface $115 kit and $144 assembled

88-SP additional 88-2SIO port $ 24 kit and $ 35 assembled

88-4PIO Parallel Interface with one

port $ 86 kit and $112 assembled

88-PP additional 88-4PIO port $ 30 kit and $ 39 assembled

23456789

101112131415

MOVECURS:PROCEDURE;/* MOVE THE CURSOR BASED UPON THE FOUR LOW ORDER BITS */

I* OF THE GRAPHICS CONTROL CHARACTER INPUTIF (KEY AND 1000B) NOT = 0 THEN

YROW = YROW+ 1;IF (KEY AND0100B) NOT = 0THEN

YROW = YROW- 1;IF (KEY AND 0010B) NOT = 0 THEN

XCOL= XCOL- 1;IF (KEY AND 0001 B) NOT = 0 THEN

XCOL = XCOL+ 1;/* NOW, IF THE SELECTED KEY WAS ON, THE APPROPRIATE */I* CURSOR POSITION REGISTER HAS BEEN CHANGED */CLOSE MOVECURS;

*/

Data (8-bit bytes) used by DEFAULT but shared with thewhole program. See Table 2 of LIFE Line 3, BYTE #4, pg.55, for details.

KEY, XCOL, YROW

Figure 4: The MOVECURS routine specified in a procedure-orientedlanguage.

Decoding "who called" isdone in software by theDEFAULT routine.

cursor position variable in question is bothincremented and decremented with a netresult of no change. Remember also thattime delays are built into KEYBOARD_INTERPRETER to govern the speed ofchanges when keys are held down contin-uously.

Upon return from MOVECURS with thenewly updated position, the remainingportion of the graphics control processingconsists of program logic to test for dataentry. If the change enable bit (bit five) hasa value of one, a change is indicated. Then ifthe data bit (bit four) is zero, the currentposition in LIFEBITS is turned off, indi-cating a death; if the data bit is one, thecurrent position in LIFEBITS is turned on,indicating a birth. Graphics control changeprocessing is completed at line 12 whenDISPLAY is called to put the new data outon the display screen.

Numeric Default Processing

In the alternative DEFAULT processingcase of an ASCII character which is notrecognized by the DECODE routine, theprogram will assume numeric entry. In effectwhat this means is that any unrecognizednon-numeric ASCII character will causeinvalid data to be placed in the ENTRYregister of the software since this littleroutine uses brute force to extract a numeric

meaning. At line 17, a value of hexadecimal30, denoted 30H, is subtracted from the keycode. Since valid numeric ASCII charactersrun from hexadecimal 30 to 39, this willresult in data running from 0 to 9 for validnumeric codes. The test of line 1 8 excludesinvalid codes by forcing a 9 value. (Unsignedarithmetic is assumed here so that all 8-bitinteger values not in the range 0 to 9 will belarger than 9.) Then the previous ENTRYvalue is multiplied by 10 using a repeatedaddition loop at lines 20 to 22. The newentry digit value is then added in to the loworder at line 23. Note that ENTRY is abinary number, but that the digit beingdefaulted is entered with a decimalweighting. (For multiplication.an alternativeto repeated addition in this case would be toobserve that 10 x = 8 x + 2 x. Thus usingthree arithmetic left shifts both twice andeight times the original ENTRY could beobtained and summed producing the 10 xproduct.)

After execution of one or the other ofthe two paths determined by the format bitof the data in KEY, DEFAULT reaches itsCLOSE statement and returns to DECODE.

Where Does LIFE Stand?

In the course of LIFE Line through thisinstallment, the structure of the LIFE pro-gram has been the major topic. LIFE Line 4

38

COMPUTER EXPERIMENTER SUPPLIES

FACTORY FRESH—PRIME QUALITYPERFORMANCE GUARANTEED

MICROPROCESSORS AND MEMORY

Commercial Grade—up to 35°C.

8008 $ 35.00

8080 135.00

2102 3.50

2102-2 4.50

These units are factoryfresh, full spec devices.

COMPUTER GRADE REGULATED POWER SUPPLIES

All units are short-circuit proof, fold back current limited and withover-voltage crowbar protection.

MD-15

+ 15 Volt at 200MADual Tracking$30.00

MD-5-1

+5 Volt at 1 Amp$24.50

MD-5-3

+5 Volt at 3 Amp$34.50

MD-5-6

+5 Volt at 6 Amp$44.50

MICRO COMPUTER SUPPLYCOMBINATIONS

For the 8008

MD-08—+5 volt at 6 amp, -12, -9 at 200

ma $75.00

Forthe8080

MD-80—+5voltat6amp,±12vat200ma . . .$75.00

FortheFairchild F-8

MD-8—+5voltat6amp,+12vat200ma .. .$65.00

For the M6800

MD-5—+5 volt at 6 amp $44.50

All units are short circuit proof, fold-back currentlimited and with over voltage crowbar protection.

All Prices Subject to Change Without Notice

Minimum Order $10.00

Add $1.00 to Cover Postage and Handling

Send Check or Money Order (No C.O.D.) To:

N. J. Residents Add 5% Sales Tax

TTL INTEGRATED CIRCUITS

All devices are factory fresh, full spec units.

7400 23

7404 25

7442 60

7447 95

7448 95

7475 60

7490 60

7493 60

74125 55

74126 55

74192 1.10

74193 1.10

MICRO DIGITAL CORP.

BOX 413, EDISON, NJ 08817 • (201) 549-2699

: ■ ■ ■ :

A POWERFUL COMMERCIAL GRADE 8080 BASED MICROCOMPUTER SYSTEM REASONABLY PRICED

STANDARD FEATURES INCLUDE:

o A commercial grade cabinet, made of heavy gauge aluminum, custom designed for this specific product. Rack mounting is available as aspecial option.

o Lucite display panel with a photographically reproduced legend and LED display mask. In addition to standard lights and switches, theheavy duty front panel has an extra 8 program controlled LED's.

o Rugged commercial grade paddle switches backed up by reliable debouncing circuits.

o Gold plated contacts on board edge connectors to assure corrosion free contact at all locations.

o A heavy duty power supply to handle lots of extra cards, the power supply delivers up to 24 amperes at 8 volts, and 3 amps each at +16and -16 volts.

A sturdy card cage to properly support up to 22 printed circuit boards.

Plug removable front panel board that eliminates the normal wiring harness between front panel and back plane. For special dedicateduses, the front panel board may be removed from the unit altogether and used only when program changes are desired.

A full line of peripheral devices to build truly powerful and complete systems.

An exclusive shared memory facility from the company that pioneered shared memory microprocessing. Shared memory facilities allowmultiple microprocessors in the same cabinet to share the same memory, yet run different programs in parallel with each other.

o A full compliment of board options.

BASIC COMPUTER INCLUDES: 8080A Processor Board. Front Panel Control Board, lights and switches, power supply, ExpanderBoard, Cabinet, ... and ... 256 BYTES OF RAM (on a 4K Board).

PRICES: KIT... $439

ASSEMBLED.

$621

OPTIONS: Rack mount, RAM & PROM Boards, Parallel & Serial I/O Boards, an 8 level Priority Interrupt/Clock Board, Shared MemoryBoards, Interface Boards.

PERIPHERALS: Floppy Disk Drives, 32 Column/125 LPM Printer, 80 Column/300 LPM Printer, 50 Megabyte Disk Drive, 30 characterper second Printer with Plotting Mode.

I t, IS. I V I 3 . . . ' Ml VJ WIULI, IJUII I-.11 I I lis J I l.ll I U. IT I i.l. .1 L<

California residents add 6% tax.SEND FOR FREE CATALOG OF IMSAI PRODUCTS

Check or Money Order, Bankamericard, Master Charge, 25% deposit on COD orders. On all orders under $1000, add 5% postageand handling. CaT*

Contact:

IMS ASSOCIATES, INC.1922 REPUBLIC AVENUESAN LEANDRO, CA 94577(415)483-2093

SPECIAL NOTICE TO ALTAIR 8800 OWNERS:

If you would like to step-up to the commercial quality of an IMSAI 8080, you will be pleased to know that your ALTAI R 8800 boards are"plug-in" usable—without modification—in the IMSAI 8080 cabinet. Furthermore, by acquiring IMSAI's unique Memory Sharing Facility,your ALTAIR MPU board and IMSAI MPU board can co-exist in the same cabinet, operate in parallel with each other, and share all mein common. This is the technology that laid the foundation for I MSAl's powerful HYPERCUBE Computer and Intelligent Disk system

(recently featured in Computerworld, Datamation and Electronics magazines).40

morys

has introduced the first hardware considera-tions — the special keyboard — as arequirement in the specification of graphicscontrol processing. LIFE Line 5 will con-tinue the software theme by completing theinitial specification of the LIFE programdesign exclusive of the RESTORELIFE,SAVELIFE and INITIALIZATION pro-cedures which together form a major soft-ware subject in their own right. LIFE Line 5will cover the DISPLAY, RUN, SETXLOC,SETYLOC, LIFEDONE, and SETNGENprocedures as its main theme. Then thescries will turn to the hardware of the LIFEsystem prototype in more detail, to providea basis for the generation of actualexecutable programs which will run on theprototype system. The first major phase ofthe LIFE Line project will be completedwhen it is possible to draw a LIFE patternon an oscilloscope output device using thecursor motion control keyboard, theninitiate the pattern evolution according tothe facts of LIFE as presented in LIFE Line1.

The second major phase of the projectwill be the addition of the data managementhardware and softwave facilities of theSAVELIFE, RESTORELIFE andINITIALIZE procedures. These facilities willenable the construction of initial patternsfrom "standard parts" saved on a massstorage device. As always, the aim of theentire series of LIFE Line articles is to showhow the bits and pieces of hardware andsoftware design fit together to produce aworking application system. ■

A bibliography of Scientific American infor-mation on LIFE (all references are to MartinGardner's "Mathematical Games" column).

October 1970: page 120. This is theoriginal LIFE article, including thedefinition of the Facts of LIFE, andillustration of numerous fundamentalpatterns.

November 1970: page 118. Answers toseveral questions posed in the firstarticle on the subject, includingdefinition of the several varieties of"spaceships."

January 1971: pages 105, 106 and 108.Continued progress on the LIFEfront including answers to severalunsolved questions and results of aHurry of computer LIFE activity.

February 1 971: Special "MathematicalGames" article on "cellular automatatheory."

March 1971: pages 108 and 109. Shortnote about progress made by JohnConway and R. William Gospers, plusillustration of a large scale flip floppattern which is delicately balancedand easily destroyed by minor distur-bances such as impact of a glider.

April 1971: pages 116 and 117.Examples of fuses, the five cell crossseries, and announcement of RobertT. Wainright's LIFELINE newsletter.

November 1971: page 120. Short noteon continued progress at the MIT AILaboratory.

January 1972: page 107. The discoveryof the "eater" by Bill Gospers atMIT.

This is an essential list of readily availableinformation on the LIFE game which interestedreaders can research in any complete public oruniversity library.

An Aside Regarding the Ultimate LIFE

LIFE on a 64 x 64 grid is an achievableproject for the home brew computerenthusiast. But it is far from the ultimate.My thanks to Bob Clements of Lexington,Massachusetts for arranging a demonstrationby R. William Gospers, Jr., at the MITArtificial Intelligence Laboratory one recentSaturday evening. When LIFE was firstwidely publicized by Martin Gardner in hisOctober 1970 Mathematical Games columnin Scientific American, it helped set up aflurry of research work on the subject.

Bill Gospers and his associates at the MITAI Lab took the definition of JohnConway's game and began constructing ahighly efficient LIFE system running on aDigital Equipment Corporation PDP-6 com-puter with a high resolution 1024 x 1024position oscilloscope display. This researchtool was used by the MIT people to generatenumerous mathematically interesting LIFEpatterns. These include such fundamentaldiscoveries as glider guns, space shipfactories, a binary transcendental number

calculator, and a Turing machine pattern.The ultimate climax of the evening's demon-stration was Bill's demonstration of adisproof — by example — of John Conway'sconjecture that no LIFE pattern could growwithout limit. The particular example heused is a colossal moving glider gun factory

— a pattern which leaves a trail of activeglider guns behind it as it travels slowly tothe right on the display screen. This patternfills the plane of the LIFE matrix with cells,and the number of active cells increases inproportion to the square of the number ofgenerations the pattern has lived. After anarbitrary length of time, an arbitrary regionof the plane will be filled with gliderpatterns emanating from the residue ofglider guns produced by this LIFE machine.

The programs which form the MIT LIFEsystem arc run on equipment far beyond therange of price a home brewer could consider

— but with the advances in technology it isnow possible to make a LIFE system whichdemonstrates many principles withoutbreaking budgets.

41

Total KitchenInformation System

Ted M Lau

7740 P Chalmette Dr

Hazelwood MO 63042

I have become a hatefulperson just because mygrocery list is unsorted.

I want to outline a plan for a totalkitchen information system (TKIS) suitablefor implementing on a home computer. Thisoutline is the first step in the developmentof TKISs of arbitrary complexity from thesimplest inventory modules to artificialintelligence modules (such as those suggestedby Richard Gardner in the October 1975issue of BYTE). The functional approachused here should allow the reader to plan acomplex system using small and manageable,"byte-sized" pieces, or to interface indepen-dently developed modules.

This project began as a gripe list my wifeand I compiled after many frustratingexperiences in the kitchen; throwing outspoiled food we'd forgotten in the refriger-ator, abandoning a recipe for lack of a keyingredient, reeling with confusion after read-ing pages of grocery specials, neither beingable to remember an appealing recipe nor tofind it among all our cookbooks, and so on.

Hierarchy Chart

Figure I shows the functions to beperformed by a TKIS, structured inhierarchic fashion — meaning that everyfunction is made up of several sublunctions,each function box performs one general taskwhich can be divided into several specifictasks, and so on. This chart differs from aflowchart in that the function boxes are notnecessarily performed in left to right order,nor are the conditions for execution given.The hierarchy (H) chart attempts to outlinewhat a system must do, but not how, when,or if.

Each rectangle in the chart represents atransformation of some inputs into some

outputs. For example, box 1.0 takes groceryprices from several markets and spits out alist of bargains to be scheduled into meals.Box 2.0 accepts a list of on-hand perishables,in addition to the output from 1.0, andyields a schedule of meals. Box 3.0 trans-forms the meal schedule into the foodneeded. Box 4.0 transforms raw, separatefoodstuffs into cooked fare. Box 5.0 turns ameal into leftovers and garbage, and 6.0turns garbage into cleanliness.

Notice that I've ignored inputs thatappear unchanged as outputs, such as therecipes consulted to plan the meal (2.0):They are brought in at the beginning andreturned unchanged at the end of the task.These unchanged or rarely changed inputsare the tables and files referenced by thefunction boxes. These tables and files appearto be internal to the boxes, and thereforecan be ignored for the time being, thusallowing me to concentrate on TKIS func-tions. Though file design itself can be putoff, provision must be made for the creationand maintenance of this data (7.0).Examples are the writing of recipes ontoblank recipe cards, or the (presumed) struc-turing of a previously unstructured humanbrain nerve net to respond to a low price inhamburger.

Notice that action boxes (3.5, 4.5, 5.0)are mixed in with thought boxes. The Hchart attempts to completely describe all thefunctions involved in operating a kitchen,whether primarily physical or primavWyinformational. While no one can seriouslyattempt to computerize these physical tasksat the present time, we must remember thatall physical processes have informational

42

SEARCHON HANDPERISHABLES

HEVIEWGROCERPHICES

[3ECIDE

TO

PURCHASE

PLANMEALSCHEDULE

GENERATE

TEMP

PURCHASE

LIST

7.0 |

'

MAINTAIN

FILES

.

6.2 j 6.3

DISPOSE

OF

GARBAGE

4_3 i 4.4 [

Id

DECIDEMARKETSTO VISIT

GENERATEGROCERYLISTS

COMPARE

TO

INVENTORIES

t

\

ESTI

'A IE

STOL

■; ITEMS

NEEL

:D

\

i

2.4

SEARCH TOBE PURCHASEDPERISHABLES

CHOOSEAODED ITEMSTO PLAN

CHOOSEA

RECIPE

PLAN MENU

SCHEDULE

DISPOSE OFJWSCHEUULEDERISHAIJLES

I

,

Figure 1: Functions of Total Kitchen Information System.

components (and arc thus fair game forcomputer enhancement), and that anydistinction between physical and informa-tional is strictly provisional (and is subject toerosion as computers expand their capa-bilities to manipulate objects, as in roboticsand automation). So the H chart incor-porates into its comprehensive structureboth modules that are subject to presentdata processing solutions and modules thatmust wait for future technology. (Readerswill identify box 4.0 as the voice responsivevending machine in the rec room of the StarShip Enterprise.)

Notice that the H chart says nothingabout computers. It describes my concep-tion of a very rigorous manual system thatcould be performed with paper and pencil. Itpurposely steers clear of computer conceptsto allow you to be flexible in makingsoftware and hardware design decisions. Toparaphrase: "Hardware and software maypass away, but functions endure." The tasksto be performed by the TKIS remainunchanged from one system configuration toanother.

The H chart functionally describes myview of what must be done to get meals onthe table. It is triggered by specials andpev.shables in that it tries to cut costs byplanning meals using bargains, and to reducewastage by scheduling perishables in timely

fashion. Specifically, TKIS plans to review alarge number of grocery item prices and tocall attention to those that meet a specialscriterion specified by the developer (1.1). Itplans to call attention to items in inventorywhose perishable date falls within the nextmeal scheduling period (2.1). It plans toretrieve recipes based on key ingredients andother characteristics such as casserole, quick-meal, Chinese, price-per-serving, nutritionalvalues, etc., (2.4), and to reveal the recipeingredients not on hand, or to reveal onlythose recipes whose ingredients are all onhand. It plans to help the kitchen operatordecide which markets to visit by simulatingthe expenses of buying at various markets,including labor time and gasoline costs (3.2).It plans to calculate the quantities of ingre-dients needed for recipes with adjustedservings (3.1.1,4.1). It plans to collect menuand recipe evaluations (yum, good orechch)(6.4), along with keeping past mealschedules and market receipts, for futureanalysis in planning menus, purchasingfoods, budgeting, and dietetics. It even plansto sort the items on each grocery list intostore location order, so that by walkingthrough the store in a prescribed way theitems will be encountered in order (3.3.3).This is big on my gripe list: I hate carrying apencil to mark the groceries I buy, and I alsohate chasing all over the store to find the last

43

SEARCH

FOR

RECIPES

J

2.4.1

2.4.2

'

DISPLAY

INITIATE

SEARCH

FUNCTION

ARGUMENTLIST

2.4.3

2.4.4

2.4.5

*>

GET VALIDSEARCH

AlltJUM! Nl

SEARCHRECIPES

DISPLAYRESULTS

SELECTIONS

FILE

j

^ J

^

Figure 2: Recipe Subsystem.

4.2

GET ITEM

SEARCH

REQUEST

DISPLAV

LOCATIONS!AND ID NUMBER

GET

ITEM USEREPORT

ADD LEFT-OVER RECORDTO INVENTORY

Figure 3: Inventory Subsystem.

few unmarked items. I have become ahateful person just because my grocery list isunsorted.

Beyond The Hierarchy Chart

The H chart tells us what to do but nothow, so where do we go from here? I wouldhope that some of the readers will comeforward with data base and file designs,hardware specifications, and programdescriptions. This is a massive project andcertainly in need of special talents anddiverse opinions. There are many wellknown techniques for designing computersystems, and I think it is sufficient for me tomention some of the potential problems thatmay be encountered.

1. Is the proposed TKIS technically andeconomically feasible in a home? If not now,will it become so in a time frame approxi-

mately equal to the development time? Toanswer these questions, someone mustexpand the effort to prepare detailed hard-ware, software, and manpower estimates.

For example, a recipe retrieval subsystemmight use a CRT with keyboard to initiate asearch of the recipe file, and to display theresults on the cathode ray tube (CRT) (seefigure 2 for a schematic of the hardware andan H chart of the software functions).Assuming a file contains 2000 recipes aver-aging 500 B each, what are the cost andperformance tradeoffs between a tapesystem versus disk system? In order to makethis estimate we must know, first, whatresponse time is acceptable to the kitchenoperator. If the program reads recordssequentially, what tape speed is required?What bandwidth is needed for data path A infigure 2 and how fast must programs exe-cute? And so on ...

2. How can the human labor required fordata entry be kept below that required forthe manual system? Data entry is the processby which humans, through the sweat of theirbrows, convert data into machine readableform so that the computer can do marvelousthings with it and look like a genius. Dataentry is probably one of the most costlyitems in the operating budget of the TKIS,and certainly one of the most boring.

Table 1 lists the tables and files needed toimplement a basic version of the TKIS. Ofthe tables, recipes and prices represent largedata entry tasks at initial system startup andat periodic intervals. It would be very nice ifthe kitchen operator could acquire data inmachine readable form (on cassettes or viathe phone line). The book and magazinepublishers could supply a periodic update ofrecipes and the markets an update of prices.Standard formats would have to bedeveloped for these interfaces, and acustomer base must be developed to providean economic incentive.

The files, on the other hand, originatewithin TKIS and change continually withuse, making it difficult to solve the dataentry problem in the same way. Forexample, figure 3 describes a test design foran inventory module. The functions of thissubsystem are to add a record (or a count)of each purchased item to the inventory filecorresponding to the storage location, toallow retrievals by item, and to decrementthe inventories as items are used. The majordata entry requirements are to tell thecomputer what was used and what wasbought.

An efficient way to do the former is tosignify what was used, instead of specifyingin detail what was used. By entering therecipe name (say, recipe B), the operator

44

Table I: Functional Storage Requirements.File Name Contents

A. Tables

1. Prices

2. Recipes

3. Menus

4. Calendar

5. Markets

B. Files

1. Inventories

grocery item prices by brand for each market

ingredients, instructions, recipe characteristics,nutritional data, number of servings

groups of recipes, menu characteristics

dates, meal times, number of guests, otherrequirements

market name, address, distance

number and quantity of ingredients by locationfreezer j_ g|sQ perjsnab|e items by |D No

refngerator -Ishelfstock items - number and quantity of items, rate of use (salt, soy

2. Meal Schedule menu or recipes for each meal

past schedules and evaluations, market receipts,etc.

3. History

4. Working Storage purchase list, grocery lists, etc

Possible Source

Grocers

Book and MagazinePublishers

Book and MagazinePublishers

TKIS User

TKISUserTKIS User

sauce)

TKIS UserTKISUser

TKIS User

says in effect that "the ingredients for recipeB were used." This requires that the com-puter have a recipe file for translating"recipe B = ingredients D, E, F." If thecomputer lacks this file, the operator mustenter the specific ingredients used. Thus astand alone inventory subsystem is less dataentry efficient than one integrated into a fullTKIS (a truism about systems in general).

On the other hand, telling the computerwhat was bought can be handled ratherneatly, by adhering to the rule that once thedata is in machine readable form it shouldnot be degraded out of same. Instead of apaper receipt, the bag person at the marketwill plop a cassette in your bag containing allthe items you purchased and their prices.This cassette will have been produced by themarket's point-of-sale terminal which sograciously performed the data entry chorefor you by optically scanning your groceries.(In fact — or rather in fantasy — the marketwon't even have to provide the cassette: youwill bring the purchase list created by TKISon cassette to the store, insert it into thecomputer at the front door which sorts andprints your grocery list in location order(3.3.3 and 3.3.4), and carry the cassette to thecheckout counter for recording of yourreceipt.)

3. What does the kitchen operator dowhen the system goes down because a diskcrashes, or the bus turns flaky, or a programblows up! (This picturesque lingo seems to

less accurately describe the condition of thecomputer than it does our emotional stateafter the unthinkable has happened.) Backupmanual procedures or alternate computerservices must be provided to allow thekitchen operator who has become dependenton the TKIS to function while the system isdown. Adequate system recovery and restartprocedures must be designed, and a tech-nique developed for catching the computerup on what transpired while it was uncon-scious. The importance of these considera-tions will depend upon the complexity andreliability of the hardware and software, butmust be conceived and designed as anintegral part of the total system.

4. Finally, assuming a TKIS wasdeveloped, would a kitchen operator use it?Besides being more efficient, less costly, andall the other good reasons for which wedeveloped it, the TKIS must be flexibleenough to allow for human inefficiency andtaste preferences. What if the TKIS userdoesn't want to prepare the scheduled mealfor the evening? TKIS must be able to takeaccount of human inconsistency.

Summary

I have briefly outlined the functions Ithink a kitchen information system shouldperform, and mentioned some considera-tions affecting its design. I hope this articlewill help catalyze development efforts inwhat appears to be a fruitful home computerapplications area. ■

45

Golf

DUFFER Program SymbolTable: In order of appearance,

Handicapping

DUFFER

002/000

ONCHO

002/217

NEXTIN

002/005

SUBRATE

002/221

INTEN

002/036

NOBRRW

002/230

INUNIT

002/056

INCRD

002/327

GOAHEAD

002/071

ADD200

002/331

DROUTN

002/114

GODIVI

002/334

RSTRT

002/126

DIV1

002/341

CALCULA

002/134

ENDIVI

002/363

BUBBLE1

002/141

SCORE

003/000

BUBBLE2

002/146

INCRC

003/040

SWITCH

002/164

RNDLOOP

003/042

ADDSCOR

002/175

FRSTRND

003/050

ADDLOOP

002/203

ENDRNDT

003/062

Dr. George Haller1500 GaJJeon Dr.Naples FL 33940

Almost every golf club keeps a roster ofits members with up-to-date golf handi-caps. By using these handicaps, the memberswith varying degrees of skill in the game canplay competitively against each other. Manylarge clubs have gone to semiautomaticcomputer services with terminals in theclubhouse but most clubs still appoint ahandicap committee of members whichmeets periodically, usually monthly, tocalculate each member's handicap.

Basically, a golf handicap is calculated bytaking the average of the best ten of thetwenty most recent scores for a regulation18 hole game, subtracting the course ratingfrom this average, and multiplying thisdifference by a factor of 0.85. This result isrounded off to the nearest whole number tobecome the handicap. As an example, if theaverage of the player's best ten of his mostrecent scores is 95.2 and the course rating is68.6, then the difference of 26.6 is multi-plied by 0.85 giving 22.6. Rounding givesthis player a handicap of 23.

The calculating of these handicaps offersa small business opportunity to the owner ofa small computer. Sheets can be made upwith spaces for the members' names andcolumns for the most recent twenty scores,the old and new handicaps. The handicap

OUTPUTLATCH

AN 4 ORDATAUT 704

STROBE CODE I33 1st DIGITCODE 135 2nd DIGITCODE 137 3rd DIGIT

Figure 7: Each one of the three digits of thespecial display for this program is wiredaccording to this schematic. One output portis required for each digit.

46

Table I: The absolute and symbolic assembly listing of theDUFFER program written for an 8008 computer.

address

oct

al c

ode

label

op.

operand

commentary

002/000

056

003

DUFFER

LHI

H (SCORE)

set up address of the

002/002

066

000

LLI

L(SCORE)

score data;

002/004

125

OUT

12

SCELBI keyboard handshake;

002/005

111

NEXTIN

IN

2

read SCELBI keyboard;

002/006

240

NDA

test status in bit 7;

002/007

120

005

002

JFS

NEXTIN

loop til ready;

002/012

125

OUT

12

SCELBI keyboard handshake;

002/013

074

320

CPI

"P"

is it a "P"?

002/015

150

134

002

JTZ

CALCULA

if so then go process scores;

002/020

016

000

LB I

0

clear input register B;

002/022

074

261

CPI

"1"

is it a "1" digit?

002/024

110

044

002

JFZ

OUTTEN

if not then skip next digit;

002/027

133

OUT

15

send to special display;

002/030

016

144

LBI

100D

initialize 100 decimal;

002/032

300

NOP

002/033

300

NOP

several NOPs here and there

002/034

300

NOP

give room for mistakes;

002/035

300

NOP

002/036

111

INTEN

IN

2

read SCELBI keyboard again;

002/037

240

NDA

test status in bit 7;

002/040

120

036

002

JFS

INTEN

loop for tens digit;

002/043

125

OUT

12

SCELBI keyboard handshake;

002/044

135

OUT

16

tens to special display;

002/045

044

017

NDI

00001111B

mask BCD digit in low order;

002/047

022

RAL

2 times tens digit;

002/050

320

LCA

save in C register;

002/051

022

RAL

2 x 2 x tens digit;

002/052

022

RAL

2 x 2 x 2 x tens digit = 8 x digit

002/053

202

ADC

(2 + 8) x tens digit = 10 x digit;

002/054

201

ADB

add in 100s or zero from B;

002/055

310

LBA

save 10s + 100s in B;

002/056

111

INUNIT

IN

2

read SCELBI keyboard again;

002/057

240

NDA

test status bit 7;

002/060

120

056

002

JFS

INUNIT

loop for units digit;

002/063

125

OUT

12

SCELBI keyboard handshake;

002/064

137

OUT

17

units to special display;

002/065

044

017

NDI

00001111B

mask BCD digit in low order;

002/067

201

ADB

100s + 10s + Is is the number;

002/070

310

LBA

save binary score in B again;

002/071

111

GOAHEAD

IN

2

look for command code;

002/072

240

NDA

test status as usual;

002/07 3

120

071

002

JFS

GOAHEAD

loop for D or C command;

002/076

125

OUT

12

SCELBI keyboard handshake;

002/077

074

304

CPI

"D"

is it a "D"?

002/101

150

114

002

JTZ

DROUTN

if so then go deposit score;

002/104

074

303

CPI

"C"

else is it a "C"?

002/106

150

126

002

JTZ

RSTRT

if so then go ignore entry;

002/111

110

071

002

JFZ

GOAHEAD

loop til proper D or C is found;

002/114

371

DROUTN

LMB

deposit score in memory location;

002/115

060

INL

increment L register;

002/116

006

013

LAI

" 1"

define "]" pattern;

002/120

133

OUT

15

"]" into 100s digit;

002/121

135

OUT

16

" ] " into 10s digit;

002/122

137

OUT

17

")" into Is digit;

002/123

104

005

002

JMP

NEXTIN

begin input sequence again;

002/126

006

012

RSTRT

LAI

"'I"

define "|" pattern;

002/130

133

OUT

15

"1" into 100s digit;

002/131

104

005

002

JMP

NEXTIN

begin input sequence again;

002/134

006

014

CALCULA

LAI

■'LP

define "U" pattern;

002/136

133

OUT

15

"U." into 100s digit as marker;

002/137

061

DCL

start the sort of scores;

002/140

336

LDL

counter gets initial pointer;

002/141

056

003

BUBBLE1

LHI

H (SCORE)

pointer to beginning of SCORE;

002/143

066

000

LLI

L (SCORE)

also part of SCORE address;

002/145

323

LCD

current pointer to C;

002/146

307

BUBBLE2

LAM

fetch current byte;

002/147

240

NDA

set conditions;

002/150

060

INL

point to next byte in bubble;

002/151

277

CPM

compare next byte in bubble;

002/152

140

164

002

JTC

SWITCH

switch if need be;

002/155

021

DCC

decrement sort count;

002/156

110

146

002

JFZ

BUBBLE2

keep going on inner loop of sort;

002/161

104

175

002

JMP

ADDSCOR

leave sort when done;

002/164

317

SWITCH

LBM

bubble sort involves a process

002/165

061

DCL

of switching neighboring

002/166

307

LAM

out of sequence pairs

002/167

371

LMB

until a uniform sequence

002/170

060

INL

is obtained; this set of

002/171

370

LMA

instructions does the switch;

002/172

104

141

002

JMP

BUBBLE1

then keeps trying until sort done;

002/175

300

ADDSCOR

NOP

spare byte with NOP;

002/176

016

000

LBI

0

B will accumulate carries;

002/200

026 Oil

LCI

9D

ten = nine plus predefinition;

002/202

307

LAM

fetch first value before loop;

002/203

061

ADDLO0P

DCL

point to next value;

002/204

207

AIM

add it from memory;

002/205

142 217

002

CTC

INCHO

if carry increment high order;

002/210

021

DCC

decrement loop count;

002/211

110 203

002

JFZ

ADDLOOP

keep adding until done;

002/214

104 221

002

JMP

SUBRATE

branch around subroutine INCHO;

002/217

010

INCHO

INB

increment B subroutine

002/220

007

RET

is simplicity squared;

002/221

240

SUBRATE

NDA

set flags;

002/222

024 267

SUI

267

octal low order of course rating;*

002/224

100 230

002

JFC

NOBRRW

if no borrow then no adjustment;

002/227

Oil

DCB

high order adjust if borrow;

002/230

320

NOBRRW

LCA

save low order in C;

002/231

301

LAB

high order prepared;

002/232

024 002

SUI

2

octal high order course rating;*

002/234

310

LBA

save high order in B;

002/235

342

LEC

start multiply by 8.5;

002/236

002

RLC

shift left high order of data;

002/237

330

LDA

save result in D;

002/240

320

LAC

fetch the low order of data;

002/241

240

NDA

clears condition flags;

002/242

002

RLC

shift left low order;

002/243

142 327

002

CTC

INCRD

if carry then increment high order;

002/246

320

LCA

D/C now have twice the result;

002/247

303

LAD

fetch high order;

002/250

002

RLC

multiply by 2 (4 x total);

002/251

330

LDA

save high order;

002/252

302

LAC

fetch low order;

002/253

240

NDA

clear flags;

002/254

022

RAL

multiply by 2 (4 x total);

002/255

142 327

002

CTC

INCRD

if carry then increment high order;

002/260

320

LCA

save low order again;

002/261

303

LAD

and again fetch high order,-

002/262

002

RLC

and multiply by 2 (8 x total);

002/263

330

LDA

and again save high order;

002/264

302

LAC

and again fetch low order

002/265

002

RLC

and again multiply by 2 (8 x total)

002/266

142 327

002

CTC

INCRD

if carry then increment high order;

002/271

044 370

NDI

370

mask low order in 8 x total;

002/273

320

LCA

save low order in C again;

002/274

304

LAE

fetch old original low order;

002/275

012

RRC

divide by 2 giving .5 x;

002/276

044 177

NDI

01111111B

turn off high order bit;

002/300

340

LEA

save in E

002/301

301

LAB

fetch original high order result;

002/302

240

NDA

clear flags;

002/303

012

RRC

divide by 2 giving .5 x;

002/304

310

LBA

save high order in B

002/305

304

LAE

fetch low order;

002/306

142 331

002

CTC

ADD200

if carry, adjust low order;

002/311

240

NDA

clear flags;

002/312

202

ADC

8 + 0.5 = 8.5 x result;

002/313

320

LCA

save low order 8.5x in C;

002/314

142 327

002

CTC

INCRD

increment D if carry to high order;

002/317

301

LAB

fetch high order;

002/320

044 177

NDI

01111111B

clear bit 7;

002/322

203

ADD

add other high order giving 8.5 x;

002/323

310

LBA

save back into B;

002/324

104 334

002

JMP

GODIVI

branch around two subroutines;

002/327

030

INCRD

IND

subroutine increments D register;

002/330

007

RET

and returns almost instantly;

002/331

004 200

ADD200

ADI

10000000B

turn on high order bit if off;

002/333

007

RET

and also return almost instantly;

002/334

036 144

GODIVI

LDI

100D

load 100 count in D;

002/336

046 Oil

LEI

9D

load 9 count in E;

002/340

301

LAB

fetch high order of numerator;

002/341

310

DIV1

LBA

save high order in B;

002/342

302

LAC

fetch low order to A;

002/343

022

RAL

divide by 2;

002/344

320

LCA

save low order;

002/345

041

DCE

decrement subtraction count;

002/346

150 363

002

JTZ

ENDIVI

if zero, then end divide;

002/351

301

LAB

fetch old high order;

002/352

022

RAL

rotate left;

002/353

223

SUD

here is the repeated subtract;

002/354

100 341

002

JFC

DIV1

if no borrow then trial ok;

002/357

203

ADD

else fix up for false subtract;

002/360

104 341

002

JMP

DIV1

and go back for more subtracts;

002/363

022

ENDIVI

RAL

multiply low order by 2;

002/364

340

LEA

save low order in E;

002/365

006 377

LAI

liimiiB

load all ones into A;

002/367

252

XRC

exclusive OR with all ones

002/370

320

LCA

complements C;

002/371

104 050

003

JMP

FRSTRND

jump around data,-

003/000

SCORE

BLK

3 2D

32 bytes for scores;**

003/040

020

INCRC

INC

subroutine to increment C

003/041

007

RET

and then return;

003/042

024 012

RNDLOOP

SUI

10D

subtract 10 from negative of

003/044

030

IND

low order, increment count;

003/045

104 062

003

JMP

ENDRNDT

go to end test;

003/050

301

FRSTRND

LAB

fetch high order;

003/051

240

NDA

clear flags;

003/052

074 062

CPI

SOD

compare to decimal 50;

003/054

102 040

003

CFC

INCRC

if =>50 then increment quotient

003/057

302

LAC

low order to A;

003/060

036 000

LDI

0

clear divide count in D;

003/062

240

ENDRNDT

NDA

clear flags;

003/063

074 012

CPI

10D

is it less than 10?;

003/065

100 042

003

JFC

RNDLOOP

if not back for adjustment;

003/070

137

OUT

17

send A to units digit output;

003/071

303

LAD

fetch tens digit result;

003/072

135

OUT

16

send D to tens digit output;

003/073

104 000

002

JMP

DUFFER

go back to consider next duffer;

■NOTE: The course rating in this example is assumed to be 69.5. To account for10 double precision adds, this is multiplied by 10 giving 695. In octal, thistakes two bytes with 002 in the high order, 267 in the low order.

** NOTE: The mnemonic "BLK" is used to indicate that a block of memoryis reserved for use by the program, with the name (SCORE here) used toreference the first address in the block.

service furnishes these sheets to the golf clubto fill in all the information except the newhandicap. The handicap service then collectsthe sheets on a monthly or other periodicbasis and returns them promptly with thenewly calculated handicap. If done on amonthly basis, a reasonable charge might befrom one to three dollars per member peryear depending on the length of the season.This income will not support much of acomputer service establishment, but couldhelp in the purchase of some newperipherals.

In the author's case a SCELBI computerwith its 8008 CPU was used with a standardASCII keyboard and a small home brewreadout which cost less than ten dollars forparts. A program equivalent to this one canbe written for almost any small homecomputer. The diagram of the readout foreach digit is shown in figure 1.

The program requires fewer than 320bytes. Golf scores can range from 60 for asuper player to 150 for a complete duffer.Regulation golf courses have ratings rangingfrom 65 to 75 which are always a matter ofrecord at the golf club.

The program to calculate the handicap onan 8008 is shown in table 1. The keyboard isused to input the scores one at a time. If thefirst digit is a 1 then 100 (decimal which isequal to 144 octal) is loaded into register Band displayed on the left readout. If the firstdigit is not a 1 then the score is less than100, and this digit is considered a seconddigit. The second digit is displayed on thecentral readout. Multiplied by 10, it is thenadded to the contents of register B. The finaldigit is shown in the right readout and addedto the contents of register B. The operatorverifies the score shown on the three digitreadout. If it is correct, the key D is pressedwhich stores the score in memory and sendsthe program back to look for the next scoreto be entered. If an error has been made, bypressing key C the program goes back for acorrected score without storing the incorrectscore in memory. After twenty scores areentered, the key P starts the calculatingroutine to process the scores. This routinesorts the scores in descending order, adds theten lowest scores, subtracts ten times thecourse rating, multiplies by 8.5, divides by100, rounds off the result and displays thehandicap.

On Jan. 1, 1976, the multiplying factorchanges from 0.85 to 0.96. To adapt theprogram, take the difference as obtained atlocation 002/233, multiply by 4, add 50,divide by 100, subtract the quotient (disre-gard the fraction) from the originaldifference, add 5 and divide by 10. Thequotient, dropping the fraction, will be therounded off handicap. ■

47

Microcomputer

A new six-volume programmedlearning course from Iasis tellsyou EVERYTHING about whatmicrocomputers are and howyou can design and implement amicroprocessor-based system.

-6SSS»

VOL VQO,^ ASSEMBLERS ANDPROTOTYPING SYSTEMS

Wt a-«u

MO\-N

Since the transistor was invented,no single electronics innovation hasmade such an impact as the micro-computer. Powered by tiny semiconductorchips containing computing elements withthe same powers and functions previouslyfound only in large scale digital computers,these dedicated microcomputer systems arenow being applied to literally thousands ofapplications. Microcomputers are automatingassembly lines, providing the heart of sophis-ticated electronic games, making "intelligent"computer peripherals even smarter, and are goingso far as streamlining the operations of the fastestfood chains. This revolution is occuring because micro-computers are very inexpensive—costing as little as $30in production volume—easy to implement into a system, andsignificantly reduce the time and cost of product development. Butthere has been one serious drawback to this exploding industry:

Training materials and courses in the basics of microcomputertechnology have been virtually non-existent, and the variouspublished manuals and texts have been undecipherable to thosenot already intimately familiar with ultra-sophisticated logic design.

Once a designer has the hang of it, microcomputer design is a snap.But without the fundamentals—never before available in such areadable, understandable and simplified format —microcomputer designhas been unbelievably difficult. The comprehensive, step-by-step six-volume Programmed Learning Course on Microcomputers from Iasismakes the unbelievably difficult almost ridiculously simple. The authors ofthese texts have been involved on a professional level in the micro-computer industry since it became an industry. Their direct, first-handexperience in the whys, hows, wherefores and potentials of microcomputers

THE

'-It""-

4-B|T

M,CR°COM^TLE'»

ttriM* ■ ■.- „'„WHft .rrrr,

Iasis Texts:

1. Binary Arithmetic

2. Microcomputer Architecture

3. The 4-Bit Microcomputer

4. The 8-Bit Microcomputer

5. Assemblers and PrototypingSystems

6. 8-Bit Assemblers andCompilers

Finally, you can get a comprehensive training course on microcomputers that putsall the hard-to-get information at your fingertips in an easy-to-read, easy-to-understand

and even easier-to-implement manner. You can get it here...now. ■■ ■■ ■■ ■■ ■■

design is a snap.

have made this six-volume collection the most valuable andmeaningful series ever published on microcomputerdesign. The books combine the most effective methods ofprogrammed instruction with the entire gamut of essentialinformation vital to the designer of a micro-based system.You begin with the ABC's of microcomputers and gothrough a virtual post-doctoral course.. .and theunique, self-testing programmed learning lasis courseenables you to understand and absorb every bit of theinformation every step of the way through the six volumes.

ov "•-

V i

'■■":■

The lasis course gives you more than 700 pages of detailed,illustrated microcomputer information—including morethan 1,700 self-tests you use to evaluate your progress —plus programming and design aids that make the design ofpractical systems very, very easy for you.

88

, - ■ '

■'

. ■ ■ ■ " fl . . -

•'

89

■ ■, ■■ ■■■'■■■ . ■. ..

r-..l",-i| ■:•-■■. :•■ ■■ !(.,,,■-'-■■-'■■,! ■■>*!')„

90

,■■■■

■ "

0 " l( I ■■■■•

. . ■ I ■

....

,.'■-■'■ . ■ ■ ■ ■ '

II ■(.,.

Specific details are provided on four of the indus-try's most versatile microcomputers—the 4004, 4040,8008 and 8080 from Intel Corporation —but the basicdesign information will apply to any and all micro-processors. The six volumes you receive with thecourse are: 1) BINARY ARITHMETIC; 2) MICROCOMPUTER ARCHITECTURE; 3) THE4-BIT MICROCOMPUTER; 4) THE 8-BIT MICROCOMPUTER; 5) ASSEMBLERS ANDPROTOTYPING SYSTEMS; and 6) 8-BIT ASSEMBLERS AND COM-PILERS. Plus, this detailed course provides you with two programmingpads and two simplified design aids so you may quickly and easilydevelop both 4-bitand 8-bit microcomputer systems. Use the couponbelow to order your course from lasis, Inc., 110 First St., Suite bLos Altos, California 94022

Special introductory price on this remarkable new course is just$99.50 . . . and if it isn't everything we say it is or even more,return it within 15 days for a full refund!

iasis inc.

-:1

Order before Nov. 30, and you'll save a full $25 on the Programmed Learning Courseon Microcomputers! In addition, all introductory orders will include a bonus seventhvolume, the Microcomputer Applications Handbook!

(After Nov. 30, 1975 price for the complete lasis course will be $124.50, plus $2.50 for postage and handling.)

Here's my check or money order (no cash, please). RUSH my6-volume Programmed Learning Course on Microcomputers,including the bonus Applications Handbook and programmingaids, to the address below. HURRY!

□ Send one complete course for $99.50 in U. S. funds. Mypayment is attached. (California residents, please add$5.97 State sales tax.)

□ Send me information by return mail on quantity discounts.

ALLOW 15 DAYS FOR DELIVERY IN THE U. S. AND 6 WEEKSFOR DELIVERY OUTSIDE THE UNITED STATES.

Mail today to: lasis,110 First St. Suite B

Los Altos, California 94022iasis inc.

You can use your BankAmericard or Master Charge, too!

□ CHARGE MY ORDER TO THE CREDIT CARD NO. BELOW:

BankAmericard No.

Master Charge No.

For Master Charge, add 4-digit number imme-diately above your name on the card. It is

HERE'S MY SIGNATURE.

Crndit card expiration date_NAME

(Sign here if credit card charge)

ADDRESS.

ORGANIZATION .

. MAIL STOP-

CITY/STATE/ZIP_

An Intel 8080 Op Code Table

Fred Dittrich312 N 8 St (no 2)Columbia MO 65201

Fred Dittrich, 312 N 8 St (no 2),Columbia MO 65201, supplies this table ofop codes for the 8080 instruction set. Thenotation for mnemonics is that of the Intel8080 Microcomputer System Manual(MCS-472-0275), published in January1975. The table gives all the 8 bit numbersfrom 0 to 255 in decimal, hexadecimal andoctal so the table can also be used as a baseconversion chart. The following format isused for the mnemonics:

One byte instructions are shown in

capital letters only, such as MOV C, H

Two and three byte instructions have

symbols in angle brackets signifying

the additional bytes following the op

code, such as LDA <LO> <HI>,

where <LO> is the low order portion,

and <HI> is the high order portion of

a 16 bit address; and <DATA> means

immediate data; and <DEVICE> =

device code

For details of the operation of instructions

consult the Intel literature, manufacturers'

specifications from 8080 second sources, or

the user documentation of computer kits

which use the 8080 chip.

Dec Hex

0123456789

101112131415161718192021222324252627282930

00

01

02

03

04

05

06

07

08

09

0A

0B

0C

0D

0E

OF

10

11

12

13

14

15

16

17

18

19

1A

IB

1C

1D

IE

Octal

000001002003004005006007010011012013014015016017020021022023024025026027030031032033034035036

Mnemonic

NOP

LXI

STAX

INX

INR

DCR

MVI

RLC

DAD

LDAX

DCX

INR

DCR

MVI

RRC

LXI

STAX

INX

INR

DCR

MVI

RAL

DAD

LDAX

DCX

INR

DCR

MVI

B<LOXHI >

B

B

B

B

B < DATA >

Unimplcmented

B

B

B

C

C

C<DATA>

Unimplcmented

D< LOXHI >

D

D

D

D

D < DATA >

Unimplcmented

D

D

D

E

E

E<DATA>

313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101

IF

20

21

22

23

24

25

26

27

28

29

2A

2B

2C

2D

2E

2F

30

31

32

33

34

35

36

37

38

39

3A

3B

3C

3D

3E

3F

40

41

42

43

44

45

46

47

48

49

4A

4B

4C

4D

4E

4F

50

51

52

53

54

55

56

57

58

59

5A

5B

5C

5D

5E

5F

60

61

62

63

64

65

0 37040041042043044045046047050051052053054055056057060061062063064065066067070071072073074075076077100101102103104105106107110111112113114115116117120121122123124125126127130131132133134135136137140141142143144145

RAR

LXI

SHLD

INX

INR

DCR

MVI

DAA

DAD

LHLD

DXC

INR

DCR

MVI

CMA

LXI

STA

INX

INR

DCR

MVI

STC

DADLDADXC

INR

DCR

MVI

CMC

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

MOV

Unimplemented

H<LOXHI>

<LO>< Hl>

H

H

H

H<DATA>

Unimplemented

H

<LOXHI>

H

L

L

L < DATA >

UnimplementedSP<LOXHI><LOXHI>SP

MMM<DATA>

Unimplemented

SP

<LO>< Hl>

SP

ACC

ACC

ACC < DATA >

C

D

E

H

L

M

ACC

B

C

D

E

H

L

M

ACC

B

C

D

E

H

L

M

ACC

B

C

D

E

H

L

M

ACC

50

102

66

146

MOV

H, M

179

B3

263

ORA

E

103

67

147

MOV

H, ACC

180

B4

264

ORA

H

104

68

150

MOV

L, B

181

B5

265

ORA

L

105

69

151

MOV

L, C

182

B6

266

ORA

M

106

6A

152

MOV

L, D

183

B7

267

ORA

ACC

107

6B

153

MOV

L, E

184

B8

270

CMP

B

108

6C

154

MOV

L, H

185

B9

271

CMP

C

109

6D

155

MOV

L, L

186

BA

272

CMP

D

110

6E

156

MOV

L, M

187

BB

273

CMP

E

111

6F

157

MOV

L, ACC

188

BC

274

CMP

H

112

70

160

MOV

M, B

189

BD

275

CMP

L

113

71

161

MOV

M, C

190

BE

276

CMP

M

114

72

162

MOV

M, D

191

BF

277

CMP

ACC

115

73

163

MOV

M, E

192

CO

300

RNZ

116

74

164

MOV

M, H

193

CI

301

POP

B

117

75

165

MOV

M, L

194

C2

302

JNZ

<LOXHI>

118

76

166

HLT

195

C3

303

JMP

<LOXHI>

119

77

167

MOV

M, ACC

196

C4

304

CNZ

<LOXHI>

120

78

170

MOV

ACC, B

197

C5

305

PUSH

B

121

79

171

MOV

ACC, C

198

C6

306

ADI

< DATA >

122

7A

172

MOV

ACC, D

199

C7

307

RST

0

123

7B

173

MOV

ACC, E

200

C8

310

RZ

124

7C

174

MOV

ACC, H

201

C9

311

RET

125

7D

175

MOV

ACC, L

202

CA

312

JZ

<LOXHI>

126

7E

176

MOV

ACC, M

203

CB

313

Unimplemented

127

7F

177

MOV

ACC, ACC

204

CC

314

CZ

<LOXHI>

128

80

200

ADD

B

205

CD

315

CALL

<LOXHI>

129

81

201

ADD

C

206

CE

316

ACI

< DATA >

130

82

202

ADD

D

207

CF

317

RST

1

131

83

203

ADD

E

208

DO

320

RNC

132

84

204

ADD

H

209

D1

321

POP

D

133

85

205

ADD

L

210

D2

322

JNC

<LOXHI>

134

86

206

ADD

M

211

D3

323

OUT

< DEVICE >

135

87

207

ADD

ACC

212

D4

324

CNC

<LOXHI>

136

88

210

ADC

B

213

D5

325

PUSH

D

137

89

211

ADC

C

214

D6

326

SUI

< DATA >

138

8A

212

ADC

D

215

D7

327

RST

2

139

8B

213

ADC

E

216

D8

330

RC

140

8C

214

ADC

H

217

D9

331

Unimplemented

141

8D

215

ADC

L

218

DA

332

JC

<LOXHI>

142

8E

216

ADC

M

219

DB

333

IN

< DEVICE >

143

8F

217

ADC

ACC

220

DC

334

CC

<LOXHI>

144

90

220

SUB

B

221

DD

335

Unimplemented

145

91

221

SUB

C

222

DE

336

SBI

< DATA >

146

92

222

SUB

D

223

DF

337

RST

3

147

93

223

SUB

E

224

EO

340

RPO

148

94

224

SUB

H

225

El

341

POP

H

149

95

225

SUB

L

226

E2

342

)PO

< LOXHI>

150

96

226

SUB

M

227

E3

343

XTHL

151

97

227

SUB

ACC

228

E4

344

CPO

< LOXHI>

152

98

230

SBB

B

229

E5

345

PUSH

H

153

99

231

SBB

C

230

E6

346

ANI

< DATA >

154

9A

232

SBB

D

231

E7

347

RST

4

155

9B

233

SBB

E

232

E8

350

RPE

156

9C

234

SBB

H

233

E9

351

PCHL

157

9D

235

SBB

L

234

EA

352

JPE

< LOXHI>

158

9E

236

SBB

M

235

EB

353

XCHG

159

9F

237

SBB

ACC

236

EC

354

CPE

<LOXHI>

160

A0

240

ANA

B

237

ED

355

Unimplemented

161

A1

241

ANA

C

238

EE

356

XRI

< DATA >

162

A2

242

ANA

D

239

EF

357

RST

5

163

A3

243

ANA

E

240

FO

360

RP

164

A4

244

ANA

H

241

F1

361

POP

PSW

165

A5

245

ANA

L

242

F2

362

JP

<LOXHI>

166

A6

246

ANA

M

243

F3

363

Dl

167

A7

247

ANA

ACC

244

F4

364

CP

<LOXHI>

168

A8

250

XRA

B

245

F5

365

PUSH

PSW

169

A9

251

XRA

C

246

F6

366

ORI

< DATA >

170

AA

252

XRA

D

247

F7

367

RST

6

171

AB

253

XRA

E

248

F8

370

RM

172

AC

254

XRA

H

249

F9

371

SPHL

173

AD

255

XRA

L

250

FA

372

JM

<LOXHI>

174

AE

256

XRA

M

251

FB

373

El

175

AF

257

XRA

ACC

252

FC

374

CM

<LOXHI>

176

BO

260

ORA

B

253

FD

375

Unimplemented

177

B1

261

ORA

C

254

FE

376

CPI

< DATA >

178

B2

262

ORA

D

255

FF

377

RST

7

51

There's More to BlinkingLights Than Meets

The Eye

CarJ HeJmers

A blinking light peripheral is an inexpen-sive, entertaining addition to your computersystem. The use of multiple indicator lampsunder computer control to produce movingpatterns can lead to many hours of creativeprogramming and pleasant amusement.

Playing with blinking lights is nothingnew to people working with computers.Early systems, to say nothing of sciencefiction movie caricatures, tended to havemonstrous front panels with row after rowof indicator lamps. These lamps were used toreveal various machine states. As computersbecame more sophisticated, the need formany of these indicators diminished, but thefascination of making the indicator lamps

dance and gyrate in interesting patterns hasremained.

As a simple example of moving lights,consider a single 8 bit byte of memory inyour computer, which might be calledBLINK. Assume that you have also con-structed an 8 bit output data latch whichdrives eight LEDs as shown in figure 1. Whena certain program is started, BLINK mightbe initialized as follows:

0 0 0 0 10 0 0

Suppose this value is sent to the display,which is set up so that a 1 bit lights an LED,then the display will look like this:

• •••()•••

COMPUTER {DATA BUS

OUTPUT WRITE- FOR THIS LATCH

t

BUS RECEIVERS(USE TYPICAL ICSOF YOUR COMPUTERSYSTEM)

f

7475 'S-

M^

+ 5V-PIN5GND-PIN 12

OAQBQCOD

OAOBOCQD

220il(8)

—wv

7475

QUAD LATCH

7475

QUAD LATCH

► 5V

4 0

LED(8)

r

i—&

&-

TOOTHEROUTPUT LATCHES

Figure 1: The basic "straightforward" approach to display lamps. One Jatch is assigned to each of several output ports of thecomputer. The output port decoding logic will determine when the latch is addressed for output. The result of decoding is aWRITE signal which latches the data presented at the bus receivers. The sample program of figure 2 assumes two such displayregisters. In principle the idea can be extended to many registers in groups of eight, limited only by the computer's input outputaddressing capability and the available power for lighting LEDs. In this circuit, TTL fanout limitations on the bus receivers wouldlimit expansion to a totai of 10 latches. The LEDs can be mounted on a separate display panel with connections by means of dualin line header plugs and sockets. A neutral tinted glass or plastic cover plate and an attractive wooden frame are good finishingtouches for the visible portion of the project.

52

Figure 2: The CATERPILLAR program listing. Opcodes and addresses are specified inoctal notation for the 8008 CPU. Comments at the right are designed to help convert theprogram to other machines.

address octal code label

op.

operand

commentary

010/000 250

010/001 036 377

010/003 046 000

010/005 304

010/006 022

010/007 340

010/010 303

010/011 022

010/012 330

START XRA clear carry and A;

LDI 11111111B first caterpillar word;

LEI 00000000b second caterpillar word;MARCH LAE right byte to A;

RAL shift left into carry;

LEA then saved for next time;

LAD left byte to A;

RAL shift left into carry;

LDA then saved for next time;

* note that RAL shifts old carry into A each time,

* thus the above accomplishes shift from E's high

* order bit into D's low order bit via carry...;

write into left lamps;fetch right value;write into right lamps;set delay loop constant;use

severallongish

instructions

tostretchouttheloop

(a BYTE in time saves nine);decrement delay count;if non zero then repeat delay;back for another step;

* note that during the operations at addresses 010/013

* to 010/036 the carry bit value set by the last RAL

* is retained unchanged, so that the RAL at 010/006

* will shift the old high order bit of the left register

* (D) into the low order bit of the right register (E);

This program uses only the internal CPU registers for its data, and assumes that 8008output ports 36 and 37 are assigned to latched 8 bit displays so that a visible pattern canbe seen.

010/013

177

OUT

37

010/014

304

LAE

010/015

175

OUT

36

010/016

026

300

LCI

192D

010/020

307

DELAY

LAM

010/021

307

LAM

010/022

307

LAM

010/023

307

LAM

010/024

307

LAM

010/025

307

LAM

010/026

307

LAM

010/027

307

LAM

010/030

307

LAM

010/031

307

LAM

010/032

021

DCC

010/033

110

020

010

JFZ

DELAY

010/036

104

005

010

JMP

MARCH

The key element in creating an illusion ofmotion is time. If the program starts outwith data as shown above, waits a shorttime, then executes a left rotate instruction,a new pattern will be obtained. The newbinary value 0001 0000 can be sent to thedisplay:

• ••(")••••

In the simplest of all motion programs,these three steps are repeated in an endlessloop:

1. Rotate BLINK left one bit position.

2. Send BLINK to the display.

3. Wait n milliseconds.

4. Go to step 1.

With a program executing these foursteps, the pattern of lit indicators will beseen moving to the left, disappearing on theleft in the same step at which it reappears onthe right. By changing the program delay(step 3), the speed of the pattern's apparentmotion can be changed.

Figure 1 shows two quad latches whichare used to drive 8 indicator lamps. The 220O resistors are typical values for LEDs asindicators. This value allows reasonablebrightness with most LEDs. The comple-ment outputs of the 7475 ICs used as latchesproduce a lit LED for each 1 bit received.When you purchase LEDs for a blinking light

53

• •

oo

• •

o o o o

o

o

o

o

. • • •.

• •

ooo

• • •

Figure 3: Creativity in the arrangement of the lamps of your blinking light peripheral can make the show more impressive and interesting. A: Thetraditional blinking light display, a la control panel, is a straight line of sixteen lamps in a row using two output latches. B: Tradition is nice, buthow about a bit of circular thinking, using thirty two lamps in a circle with four output latches. C: Don't rule out the bouncing ball effect either.Here we make a parabola shape using sixteen lamps, one at the focus, with two output Jatches. D: With enough lamps, we can make a spiral showwith one or more arms. Here are forty lamps using five output latches. E: There are an infinite number of patterns to be made. In this case, infinityconsists of sixty four lamps using 8 output latches.

display, make sure they are all the same, asthe display will not look as attractive iflamps of different types are mixed.

Now, suppose you use four latches for 16bits of data and 16 LEDs. How do youprogram an 8 bit computer to do the shiftinglight pattern function for 16 bits? The basicway in which this is accomplished is to shiftthe bits through the carry flag of yourmachine.

Figure 2 illustrates a program which doesa 16 bit shift in an 8008 microcomputer,and sends the data to the output portsreached by the OUT36 and OUT37 instruc-tions (octal 175 and 177, respectively). Theresult is a moving display of 16 lights. Aband of several bits is always marching rightto left around the display at a steady rate.

But, why let the imagination end at amere 16 bit display? The use of IO ports canbe extended without too much cost (givenlimitations on power supplies, of course).

The cost of two 7475s, eight resistors, andeight LEDs is about $3 (using BYTE'sadvertising pages as a source of prices). Thusa very reasonable display of 64 LEDs will setyou back only $24 and the time it takes toput it together.

Using a bit of imagination, the extensionof the program can lead to interestingpatterns running around non-linear configur-ations such as those illustrated in figure 3.Variations in the patterns result in displaysof light. Beyond the scope of this shortarticle are more complicated programs usingthe same display peripheral: Programs inwhich the light patterns do more interestingthings than simply chasing around the race-track at uniform speeds.

Try building a simple 16 bit blinking lightdisplay version first, then go on to biggerand better things. Then see if you don'tagree that there's more to BLINKing lightsthan meets the eye! ■

54

Christmas Time Payment Plan Altair Manuals

IK Altair for Just $68 a Month! J!'nir2 °perat,0,rs ? I™

^ Altair 8800 Assembly $ 9.00

You can be the owner of an Altair 8800 with a 1.024 Altai,-8800 Theory, Schematics $10.00

word memory module for just $68 a month. Each month Altair 68° °Perators $ 7-50

,, 0 iL , , . , , Altair 680 Assembly $ 7.50

(for 8 months) you send in your payment and we send A,ta|r 680 ThcQry Schematics $10 ()0

you part of an Altair kit until you have the complete BASIC Language Documentation $10.00

system. The advantages of the plan are NO interest or Assembler, Monitor, Editor $ 7.50

financing charge, GUARANTEED price based on today's 88()0 4K Memory (includes Assembly.Theory & Schematics). $ 5.00

price, and free, immediate membership to the Altair Users 880() 2K Mcmorv s 5-00

'- ■ i ,• . • <• <- M* 88()0 1K Memory $ 5.00

Group including subscription to Computer Notes. „„.,., g.OA g . 0(,

Our terms are cash with order, BankAmericard. or Master 8800 SlOB $ 5.00

Charge. If you send in an early payment, we will make 8800 SIOC $ 5.00

an early shipment. By the same token, a late payment

.,, ,, . , . I. , ,*(, rk , . , 8800 ACR $ 5.00

will result in a late shipment. (After 60 days past due, COMTFR II O $ 6 50

the balance of the deal is cancelled. All payments must COMTER II Assembly $10.00

be made within 10 months). COMTER II Theory, Schematics $10.00

Total $544.00 (Retail price: Altair 8800 $439.00, Memory VLCT (AssemblV- Operators, Theory) $ 5.00

$97.00, Postage and Handling $8.00- Allair Line PrinlGr lnterface $ 5.00

Documentation Special One

Altair UserS GrOUp Special Altair 8800 Operators, Assembly and Theory manuals plus BASIC

Each mouth the Altair Users Group sponsors a software contest and Language manual (regularly $36.50). Not* just $15.00.

each month MITS gives away $130 in credit to the winners of this

contest. At the end of the year, the author of the overall best program DoClllllClltcltiOll SpCClill TWO

will receive $1000 in credit. AI. . CQn 0 , A , , , -,-, , D , , »oc

Altair oou Operators. Assembly and I heory manuals. Kegularly .?zo.

Membership to the Altair Users Group (the largest of its kind in the j\jl)u, just $14 50.

world) is free to Altair 8SO0 owners. However, even if you don t own an

Altair, you can be an a^oaate member for one year at the special law Documentation Special Three

price of flu (regularly $30). ■

As a member of the Altair Users Group, you will be kept informed of BASIC Language manual. Package I (Assembler. Monitor. Editor), and

Altair developments, software contests, and general computer news BASIC language beginners text (My Computer Likes Me When 1 Speak

through the monthly publication. Computer Notes. You will have access BASIC by Bob Albrecht). Regularly $19.50. Now just $12.50.to the Altair Software Libraiy and you can communicate to other Altair

users throughout the world. MITS/6328 Linn NE/Albuquerque, NM 87108

Note: These specials expire on January 30, 1976. 505-265-7553 or 262-1951

Mail this special Altair Coupon Today!

D Enclosed is check for $ □ BankAmericard * □ or Master Charge #

□ Altair 8800 □ Kit □ Assembled □ Fan □ Christmas Time Plan □ Expander BoardD Altair 680 □ Kit D Assembled □ Fan □ I/O Sockets

□ Teletype □ Line Printer □ Comter II □ VLCT □ Disk □ Disk Drive Only □ Disk Controller Only

□ Memory Module □ I/O Module Hist on separate sheet)

Postage & Handling: Add $8 for Altair 8800 or Altair freight. Warranty: 90 days on parts for kits and 90680 and $3 for any cards or peripherals if ordered days on parts and labor for assembled units. Prices,separately. Teletype and Line Printer shipped by collect specifications, and delivery subject to change.

□ Documentation Special One □ Documentation Special Two □ Documentation Special Three

□ Altair Users Group plus Computer Notes

D Please put me on your mailing list SHIP TO:

BILL TO: „..,„

NAME

NAME ,

ADDRESS

ADDRESS

CITY : :

CITY

STATE & ZIP

STATE & ZIP „, 3._, „■-■■.

U Please send Christmas Card to above address

COMPANY (IF APPLICABLE) announcing gift and anticipated delivery.

MITS/6328 Linn NE/Albuquerque, NM 87108 505-265-7553 or 262-1951

Photographic Notes onWire Wrapping

Carl Helmers

Photo 1: One of the most widely usedcustom assembly methods in the computerindustry is wire wrapping. Special squarewire wrap posts are built into sockets ormounted directly onto components. Thestripped ends of insulated wires are con-nected to the posts using a special electric orhand operated tool. The result is anexcellent connection with gas tight "vacuumwelds" at each corner of the post as thesharp edge cuts slightly into the wire. Wirewrapping is a quick, easy and permanentway to connect point A to point B in yourcustom circuitry.

Photo 2: The business end of an industrialquality wire wrap tool is the bit and sleeveassembly. The bit is driven by a high speedmotor (or hand operated mechanism) androtates around the post to be wrapped. Thecenter of the bit has an alignment holewhich fits over the wire wrap post to guidethe operation. The bit also has a groovealong its length into which the stripped endof a wire is inserted as shown. The wire isheld in the groove by the sleeve and is pulledout during the process of wrapping. Thesleeve itself does not rotate and is heldrigidly in position.

56

Photo 3: The bit and sleeve may be removedfrom the typical industrial wrapping tool.The groove for the wire can be seen as a linerunning the length of the bit in this photo-graph. Note how the groove has an enlargedsection near the tip of the bit. This enlargedsection allows a small length of unstrippedwire to be inserted so that one turn ofinsulation will be wrapped around the post.

Photo 4: When the trigger has been pulledon a loaded wire wrap gun, the result(hopefully) will be a perfect wrap everytime. The wrapping action begins at thebottom with a single turn of insulated wirefollowed by successive layers of strippedwire. In this picture you can count 15 layersof bare wire on the side facing the camera.The single turn of insulated wire is producedby what is called a modified wrap bit. Thissingle turn around the post uses the insula-tion to help act as a strain relief to preventbreakage when handling wires whiledebugging a system. A standard wrap bitwould start the first coil of bare wire minusthe strain relief feature.

Photo 5: To quote the previous caption,"When the trigger has been pulled on aloaded wire wrap gun, the result (hopefully)will be a perfect wrap every time." Here isan example where hope was in vain. Aproblem which sometimes occurs is the"wrat's nest" wrap shown in this photo-graph. The normal operation of thewrapping gun includes retraction of the bitinside the sleeve as the wire layers are addedto the coil around the post. A spring loadedmechanism in the gun provides for thiscontrolled retraction. Occasionally the bitsticks and does not retract properly. Thisresults in a jumbled mess as layers of wirewrap over previously wrapped layers. If thewrat's nest wrap occurs only occasionally,the likely cause is your tool position whilewrapping. If the bit is not centered aboutthe wrapping post, friction in the pilot holecan prevent the bit from retracting properly.If the wrat's nest wrap occurs consistently alikely cause is dirt and grime buildup on thebit. If particles of metal scraped off the wireare allowed to accumulate, the resultingfriction can inhibit retraction of the bit.Thus if the gun consistently makes wrat'snest wraps, removing the bit and cleaning itmay resolve the problem. After cleaning, thebit may be oiled. Oiling should be done verysparingly at the gun end of the bit so thatexcess oil does not get in the groove andonto the wire. When a wrat's nest occurs,whatever the cause, good practice indicatesthat you should remove the mess and startover.

57

Photo 6: Continuing on the theme of lessthan optimal wrapping results, this pictureshows an example of the "impatient wrap."The primary cause of the impatient wrap isyour own impatience to see the result. If thewire wrap gun is removed from the postwhile the wrapping action is under way, theresult will be widely spaced coils of wireoften covering the length of the post. Thisexample is an exaggerated version concoctedon purpose; the typical case is a normal baseto the coil with the top one or two layersspread out. The solution to this problem isto allow the gun to do its work beforeremoving it from the post. In a case such asthe one shown here, removal of the connec-tion and rewrapping should be done. Inmilder forms of the impatient wrap, thewrap would not necessarily have to bereplaced.

Photo 7: The length of the coil produced bythe wrapping action is a function of thelength of bare wire prepared for insertion inthe tool. For the typical .025 inch squarewrapping posts with 30 gauge wire, approxi-mately 8 layers wiU be added to the coil foreach inch of bare wire inserted into the bit.This photo shows an example of the "pigmywrap." When a short coil of wire is pro-duced, one possible explanation is that notenough wire was stripped when preparing forthe connection. (Another possible explana-tion is that the wire broke, leaving most ofthe stripped section inside the groove whereit must be removed by disassembling thetool.)

58

Photo 8: It is often necessary to connectseveral wire wrap posts to one electrical bus.The method of accomplishing this is tocreate a chain of point to point wraps. Insuch a chain each wrapping post except thefirst and the last will receive two wraps: alevel one wrap at the bottom and a level twowrap above it. One way to build the chain isto start at one end connecting one post tothe next until the last connection is reached.In the model shown here, wrapping began atthe right and progressed toward the left.There is a major disadvantage with thistechnique of chaining. Suppose you want toremove the link between the two postsfurthest to the right in the photo. Note thatin order to remove the first level wrap on the

second post from the right, you must firstremove the second level wrap on that post.However, the wire to the second level comesfrom the first level wrap of the third postand must be removed at both ends since wirewrap wire cannot be recycled. But thispresents the same problem all over again atthe third post, and the problem will propa-gate down the chain until all the wire hasbeen removed. One way to get around theproblem simply is to clip the removed wireand leave a dummy wrap on the post,making any new connection at the thirdlevel if the post is long enough. There is analternative method of connection shown inthe next photograph which minimizes theeffects of a chain change on long chains.

Photo 9: The alternative method of chainingwhich minimizes propagation of changes isillustrated in this photograph.This techniqueis highly recommended for initial wiringof any bus which connects more than 4posts. The principle which governs this formof wiring is simple: Wires are connected tothe same wrap level at each end. If a changeis required at level two, only one wire has tobe removed to break a link. If a change isrequired at a level one link, three wires mustbe removed (and two possibly rewired).V/hen wiring a bus this way, the first step isto connect all the possible pairs of posts inthe bus with wraps at level one. For buses

with an even number of posts, this will put alevel one wrap at every post; for buses withan odd number of posts, one post will be leftwithout a connection after all the pairs arewired. Then, each end of each pair isconnected to its neighboring pair with a leveltwo wrap, completing the chain. For oddlength buses, the solitary unwrapped post isconnected to one of the pairs at this stage.This method of wrapping works only withthe initial wiring of a chain. If later changesare made, such as adding or deleting seg-ments in the middle, necessity may force ahybrid version of the two techniques ofchaining.

Taking Advantage ofMemory Address Space

James Luscher

2012 Jefferson Street

Madison WI 53711

A computer's addressspace is not necessarilyequivalent to the amountof memory it has installed.

The address space of a computer is the setof addressable data locations provided inthe design of its instruction set. A commonmisconception is to view a computer'saddress space as the equivalent of the actualmemory that the machine has. This point ofview is both incorrect and too restrictive forthe hobbyist or engineer who is able tomodify his machine.

Thinking in terms of address spaces ismore productive than thinking in terms ofmemory for three reasons: First memory isnormally installed in blocks of addresseswhere each word is identical in length, speedof access, etc. In contrast, an address spaceneed not have identical physical implementa-tions at each location. Second there areoften several logically distinct address spacesin a computer while there is usually only onemain memory for programs and data.Multiple address spaces have separate func-tions or functionally distinct address spaces(e.g., input output device space and mainmemory address space) can be merged.Lastly, a computer normally has a smallermain memory than it is capable ofaddressing, thus wasting some (or most) ofthe address space.

Non-Memory Address Spaces

As an example of a non-memory addressspace, let's first consider the ADr instruction(add register to accumulator) as imple-mented on Intel's 8008 microcomputer chip.Its bit pattern is 10000RRR, where RRRrepresents the register address field. Thisdefines an address space for the 8008 CPUwhich is not directly associated with mainmemory at all. As a second example, con-sider the 8008 input instruction, INP. Thebit pattern for this instruction is0100MMM1 where MMM is the input unitaddress field. This defines a second addressspace for the 8008 which is also unrelated to

main memory addressing. Thus there areseveral distinct address spaces associatedwith the 8008 design.

The designers of a computer have to givecareful consideration to all the addressspaces supported by the computer theycreate. The input instruction address spaceallows up to 8 locations as input ports. If thedesigner of the Intel 8008 had wanted toallow 16 input devices he would have needed4 bits. Using the larger address space meansthat some instructions must be modified,eliminated or restricted because the bitretained for addressing cannot be used todistinguish instructions.

You pay for the extra address space inyour computer even if you don't use it fully.You pay for 8 input ports even if you onlyneed 2 input addresses, and the cost is interms of the instructions which could not beimplemented. You also pay in terms of thebits of memory which are required to holdthe unused parts of the addresses. Decidinghow to handle the addressing of variousfunctional elements in a computer is one ofthe most crucial issues in the design of aninstruction set.

Non-Uniform Address Spaces

To see that an address space need notidentify uniform arrays like main memorylet's re-examine the 8008's ADr instruction.The register address space can specify one of8 locations with 3 bits. However there areonly 7 registers in the 8008. Each of theregisters numbered 0 to 6 specifies a byte ofdata which is part of the 8008 CPU. Theseregisters, named A, B, C, D, E, H and L, arethe seven "normal memory" addresses in the8008 register address space. Each of theseregisters, if selected by the RRR bits of theADr instruction can have its content addedto the A register when the instruction isexecuted. The eighth address in this addressspace (numbered 7) is different in function

60

from the other seven. Address seven in theregister address space is not a register at all.Referencing register 7 causes the H and Lregisters to be placed end to end forming a16 bit address register. This is then used toaddress a byte in main memory. Thus oneelement of the register address space of the8008 is very different from the other sevenelements (see figure 1).

Using Non-Uniform Main Memory AddressSpace

The previous example illustrated a non-uniform address space built into the archi-tecture of a specific computer chip, the8008. There is no reason why the hobbyistcan't use the same concept of a non-uniformaddress space element to his advantage in thedesign of custom systems or additions toexisting systems. Suppose that someone hasa 6800 processor with 4096 bytes ofmemory and wants to implement the LIFEapplication on this machine. With a 64 x 64grid, 4096 bytes of memory alone would berequired for data storage if one byte is usedfor each element of the LIFE matrix. Twonormal solutions to the problem are to buymore memory or to implement subroutineswhich store 8 matrix elements into eachbyte, thus requiring only 512 bytes for dataplus storage for the packing and unpackingsubroutines. This last approach has theunfortunate drawback of being slow, not tomention its added programming difficulty.

There is another clever way to solve theproblem of accessing large arrays of bits, away which is open to the hobbyist whodesigns his own machine or doesn't mindadding to his machine. It is possible to builda 4096 bit memory at a cost much lowerthan the cost of a full 4096 byte memoryboard. In effect you are replacing thepacking and unpacking routines with thechip address selection hardware at a nominaldollar cost and a great increase in speed.Figure 2a illustrates the concept of the 4096bit memory added to a system which alreadyhas 4096 bytes of random access memory.

Since only one bit of information isinvolved, the way the addressed bit ishooked up to the bus interface data lines is amatter of personal preference and program-ming convenience. One way (figure 2b) is toconnect the single active bit to the low orderbus line at the bus interface. Testing thestate of the stored bit could then be done byloading from the memory location of the bitand testing the zero flag with a conditionalbranch instruction for the computer beingused. A second way is to connect the activememory chip to the high order bit, in whichcase the sign of the result (in two's comple-ment notation) corresponds to the present

state of the bit in memory. In cither of thesefirst two ways, the unused bits may be wiredto logical zero or one. A third way, shown infigure 2d, is to connect the output of thesingle bit memory to all 8 data lines at theinterface to the bus. When this method ischosen, the data value loaded from theone-bit memory locations will be either zeroor -1 (hexadecimal 00 or FF). The one bitwide memory is much less expensive sinceonly the single bit being used at any addresshas a physical implementation as a memorydevice.

8008'S ADR INSTRUCTIONS

INSTRUCTION REGISTER

IDENTIFIER ADDRESS

SPACE

RRR REGISTERSOOO

OOIOIOOilIOO

IOI

noin

A~B~~C~~D~

~T"FT

~

®

H H I L |

Figure 1: An example of a small non-uniformaddress space is provided by the register addressspace of an 8008 microprocessor. Seven out ofeight possible locations are registers of the pro-cessor; the eighth (M) however has a very specialhardware meaning and is not implemented on thechip at all.

A 6800 system which uses only 4096memory addresses is not using 94 percent ofits total available address space of 65536possible locations. There is plenty of spacefor another 4096 single bit memory. Thisapproach is cost effective, speed effectiveand makes better use of the hardwareresources inherent in the CPU chip design. Itis a good solution to the problem of storingan array of bits and can be used in anysystem which does not require byte memoryor peripherals at every available location inaddress space.

IO and Other Uses of Address Space

In the article "Notes on Parallel OutputInterfaces" in BYTE #3 (page 52), CarlHelmers pointed out how memory addressspace can be used to address output devices.In such a usage, the IO address space and thememory address space of a more conven-tional design are one and the same thing.This is the only way IO is done in the DEC

Designers of computerarchitectures have to givecareful consideration to allthe address spacesupported by the com-puter they create.

61

Don't make the mistake ofthinking you have toinclude every bit of everyword in a memory.Leaving out one or morememory chips will not ingeneral affect the functionof the remaining portionsof the memory module.

64K AVAILABLEADDRESS

64K

TO I BITARRAY

UNUSEDADDRESS

4K X INSTALLED BIT

MEMORY

4KX8NSTALLED BIT

MEMORY

TO I BITARRAY

Figure 2: For purposes of manipulating arrays ofsingie bit data, it is possible to use otherwise emptymemory address space for a partial implementationof read-write memory, a. illustrates the memoryallocations with such a partial array in a typicalexample, b., c. and d. show three alternativeconnections of the partial word's data to the businterface.

LOGICAL O OUTIGNORE INPUT

fn\

\

<&>

BITS-*

7

6

5

4

3

2

1

0

i ■ |

i

i

BUS

INTERFACE

BITS-

LOGICAL O FROM'MEMORY" IGNOREDWRITING TO "MEMORY"

I T T T T T T

-►765432 1 0

' t

-©

LOW ORDER BITS SOURCE FOR

WRITE

BUSINTERFACE

SYSTEMBUS

SOFTWARE SEES

0 OR I(HIGH ORDER BITSIGNORED)

SYSTEMBUS

SOFTWARE SEES

0 OR-128(SIGN BIT, BIT7,IS THE DATA BIT)

SYSTEMBUS

SOFTWARE SEES

0 OR-I(DATA TO CPU REPEATED-IN ALL 8 BITS)

PDP-11 family of minicomputers, as well asmicrocomputers like the 6800 and the 6501family. These machines have no IO instruc-tions at all. In the PDP-11 family, there isone particular 4096 word block of memoryaddress space reserved for use with externaldevices; for most microcomputers, specificallocations of IO addresses in memoryaddress space are a discretionary choice ofthe system designer.

The addressing concepts used to interfacearbitrary IO devices can also be used to addnew functions to your computer. Since aCPU cannot tell what kind of memory it isinteracting with over the bus, it is possible tohave memory locations which serve specialcomputing purposes. Suppose that you wantto manipulate 16 bit words with a 6800system. Specially implemented address spacelocations can be used to store and man-ipulate data with the longer word lengthindependent of the CPU's restrictions.

Figure 3 shows two 16 bit registers andone control register for a simple 16 bitarithmetic unit. Registers A16 and B16occupy two memory address space locationseach, for a total of four locations. Thecontrol register occupies one address loca-tion. Now suppose that locations X and X+1on the main memory section of the com-puter contain a 16 bit number, and thatlocations Y and Y+1 contain a second 16 bitnumber. A routine to add X to Y and store

LDX

X

STX

A16

LDX

Y

STX

B16

LDAA

#$01

STAA

CI 6

LDX

A16

STX

Y

the result into Y could be implementedfairly simply:

fetch first operand (1 6 bits);store into 16 bit A register;fetch second operand (1 6 bits);store into 16 bit B register;define control code

and store it into external unit;fetch accumulated result;and store it into Y;

The addresses A16 and B16 refer to theregisters of the external math unit builtalong the lines of figure 3; the controlregister C16 when set with an appropriatecode will execute the math operation —which could just as easily have been amultiply or a divide or some other functionsuch as block data movement or an arrayoperation implemented in hardware. Whatwe have done here is to augment the datahandling capabilities of the microprocessorby adding hardware which interfacesthrough a series of locations in memoryaddress space. With this type of hardwareaddition, the only programming required isthus a series of loads and stores needed tomove the data to and from the specialmemory locations, thus saving a lot ofmicroprocessor programming and makingextended precision arithmetic much fasterthan the equivalent software version. Whilethe circuitry to perform such extended

62

SYSTEMDATA BUSINTERFACE

LOCATION AI6

LOCATION AI6 + 1

'

i .

\

LOCATION BI6

A DATASWITCH

HIGH

A DATA

SWITCH

LOW

*—SELECT

-OCATION BI6+I

'

<

■

'

'

'

A HIGH

A LOW

*— WRITECONTROL

B HIGH

B LOW

LOCATIOr,

BI6 + I

LOCATION BI6

LOCATION AI6 + I

LOCATION AI6 ^

'

\

•

I

I

r

ADDERHIGH

ADDERLOW

CARRY IN

I

CARRY OUT

OPERATION

CONTROL

LOGIC

1 P

CCONTROL

LOCATION

CI6

A DATA SELECTA WRITE CONTR

1

01

•*—

Figure 3: Another use of memory address space resources is to interface special functionhardware. This diagram shows the concept of a 16 bit arithmetic module which can beconstructed and interfaced as four data locations and one control location in memoryaddress space.

operations is not trivial, it is a lot lessexpensive and easier to accomplish thanbuilding a complete CPU with instructiondecoding, conditional branching, subroutinecalling mechanisms, interrupts and all theother capabilities needed in a processor. Thisis the way to build an "extended instructionset" in a machine which nominally does nothave any extension possibilities.

Extended arithmetic hardware of thiskind is very common on medium and largescale machines where speed improvementsare needed. For example in floating pointarithmetic which involves a lot of doubleprecision addition and shifting, a commoncommercial technique is to buy a fastfloating point processor from an outsidevendor and plug it into a minicomputer. Thistype of extension of the central processorcapabilities by doing computation and datamanipulation in the address space (externalto the CPU proper) is something that theadvanced hobbyist may find to be achallenging and useful addition to thesystem. Whether adding instruction setextensions or implementing partial memory,the central theme of this is to always keepan open and creative outlook towardsutilizing all of the capabilities your machineprovides — especially the address space. ■

. . . the central theme is toalways keep an open andcreative outlook towardsutilizing all the capabilitiesyour machine provides . ..

DIGITAL DATA RECORDER forComputer or Teletype Use

Up to 2400 Baud $149.95

Uses the industry standard tapesaturation method to beat all FSKsystems ten to one. No modems orFSK decoders required. Loads 8K ofmemory in 34 seconds. This recorderenables you to back up your computerby loading and dumping programs anddata fast as you go, thus enabling youto get by with less memory. Great forsmall business bookkeeping.IMAGINE! A year's books on onecassette.

Thousands are in use in colleges andbusinesses all over the country. Thisnew version is ideal for instructional,amateur, hobby and small businessuse. Ideal for use by servicemen toload test programs. Comes completewith prerecorded 8080 softwareprogram used to test the units as theyare produced. (Monitor)

SPECIFICATIONS:A. Recording Mode:

tion binary. This is not an FSKor Home type recorder. No voicecapability. No modem.

B. Two channels (I) Clock, (2)Data. Or, two data channels pro-viding four (4) tracks on thecassette. Can also be used torNRZ, Bi-Pliase, etc.

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

D. Outputs: Two (2). Boardchangeable from TTY, RS232 orTTL digital.

E. Erase: Erases while recordingone track at a time. Record newdata on one track and preservethree or record on two andpreserve two.

Tape satura- F. Compatability:

Will

nterface

any computer using a UART orPIA board. (Altair, Sphere,M6800etc.)

. Other Data: ]J0 V - (50-60JHz; 2 Watts total: UL listed$955D; three wire line cord:on/off switch: audio, meter andlight operation monitors.Remote control of motoroptional. Four foot, seven con-ductor remoting cable provided.

. Warrantee: 90 days. All unitstested at 110 and 2400 baudbefore shipment. Test cassettewith 8080 software programincluded. This cassette wasrecorded and played back duringquality control.

ONE DOLLAR brings operating and main-tenance manual with schematics.

COMING NEXT MONTH - IN KIT

FORMHexadecimal Keyboard — Load pro-grams direct from keyboards' 16keys and verifying display. Does notuse Computer I/O.I/O for use with Computer Aid orother digital recorders. Variablebaud rate selectable on externallylocated unit by one knob. Can loadcomputer or accept dumps withoutsoftware. Turnkey Operation. Forany 8 bit computer.

Record/Playback Amplifier.Expanded version of our ComputerAid board for use with your owndeck (cassette or reel to reel). Go to9600 baud on reel to reel. Digital in,diqital out, serial format.* Interested in these? Send your name

and address for brochure when released.

Send check or money order for $149.95plus $2.00 Shipping & Handling (N.J. Resi-dents add 5% Sales Tax) to:

NATIONAL multiplex

3474 Rand Avenue, Box 288South Plainfield, New Jersey 07080

CORPORATION

63

Kor k?

Manfred Peshka

The lack of conventions and standardsused to abbreviate units of measure, todetermine scale of measurements, base ofnumbers, or mathematical, relational, andlogical operators, may occasionally lead toconfusion and misunderstandings. There arepeople who prefer to use such expressions asKB for 1 024 bytes, CPS for characters persecond, LPM for lines per minute, etc., whileothers follow different conventions, such askHz for 1000 hertz, m/s2 for meter persquared second, MB for megabyte (either1,000,000 or 1,048,576 bytes, dependingupon convention), and so on. Some peoplelike to use AMPS, or Amps, or amps, or A,to denote the unit to measure electriccurrent. We find abbreviations varyingdepending upon scale; sec stands for second,while ms means millisecond. Similarproblems may arise from the use of numeralsto indicate numbers: 11 may mean in binarythe value three, in octal the value nine, indecimal the value eleven, and in hexadecimalthe value seventeen. Also relational, mathe-matical, and logical operators are not con-sistently used. Some writers prefer to use thesymbol AND, others the ampersand (&), andothers use the dot (•) to indicate the logicalAND operation. You find the slash (/) usedfor division of numbers, or to mean thelogical OR operation.

To help our readers understand the use ofthese different symbols, BYTE will attemptto consistently employ certain abbreviationsfor frequently used units of measure, scalefactors in measurements, operators, andnumber bases.

All numbers are assumed to be decimalnumbers unless it has been stated specificallyto the contrary: In these instances the baseof the number system is indicated in thetext, in a column heading, etc. Leading zerosare omitted. The hexadecimal number OFwill be written as F for the same reason thatleading zeros in decimal numbers areomitted. We generally do not write 015 but

15 for the decimal number fifteen.

Leading zeros, on the other hand, areimportant in the representation of strings.Arithmetic operations require numbers, andlogic operations use strings. In the lattercase, leading zeros are significant. Forexample, a 16 bit register is to be set to avalue of 15. One approach, using numbers, isto zero the register and add the hexadecimalnumber F to the register. Another approach,using strings, is to load the register with thebit string '0000 0000 0000 1111' which canbe represented in hexadecimal notation as'00 OF'. The spaces within the string quotesare not part of the symbols representing thestring value; they simply add to the legibilityand may be omitted. In the above example,the strings were qualified: The first one is abit string, and the second one a hexadecimalstring. An unqualified string, therefore, isassumed to be a text string consisting ofletters, digits, and punctuation marksincluding spaces: ' ' is a string of a singlespace on your typewriter or terminal whichtranslates to '40' hexadecimal or '01000000' binary in the Extended BinaryDecimal Interchange Code (EBCDIC).

In other words, numbers are decimal, andstrings, which are to be enclosed in stringquotes, are the usual letters, digits, andspecial symbols, unless they are specificallyqualified as binary, octal, or hexadecimalrepresentations.

Ambiguity exists also in the symbols kand K used as scale factors. According toWebster's New Collegiate Dictionary (1975,page 629), the lower case letter k means1024; according to conventional use, such askg for kilogram, km for kilometer, etc., thissymbol means 1000. In the computing litera-ture, on the other hand, the capital letter Kis often used in measuring memory size andline transmission speeds. In these instances Kmeans a factor of 1024. BYTE will followthis convention: K means 1024 and k is afactor of 1000. There are many more scale

64

factors used in scaling measurements. Table1 shows the various unit of measure prefixeswhich will be used in BYTE.

All but one scale factor are powers of ten.The exception is K which equals 2**10 or1024. The two asterisks have been employedto indicate exponentiation instead of thefrequently found superscript 2*®. The pur-pose of this notation is to facilitate theprinting of formulas on line printers andterminals which otherwise would requirespecial hardware and programming to raisethe exponent. In a similar manner the slash(/) is being used to indicate division. Table 2below lists operations performed on numbers.

Table 1: Scale of Measurement Prefixes

Abbreviation Meaning and Example

T

G

M

K

k

h

D

d

c

m

u

n

P

Tera or one trillion; five terabits or 5 TbGiga or one billion; two gigahertz or 2 GHzMega or one million; 28 megabytes or 28 MBK or 1024; two K bytes or 2 KB or 2048 BKilo or one thousand; two kilohertz or 2 kHzHecto or one hundred; 5 hectometers or 5 hmDeka or ten; six dekaliters or 6 DlDeci or one tenth; five decimeters or 5 dmCenti or one hundredth; 90 centimeters or 90 cmMilli or one thousandth; one millihenry or 1 mHMicro or one millionth; six microfarads or 6 uFNano or one billionth; 18 nanoseconds or 18 nsPico or one trillionth; four picofarads or 4 pF

Table 2: Mathematical Operations

Abbr

Meaning and Example

x( ) Function, where x is replaced by a function abbreviation,and the arguments are placed in parentheses, e.g.,MAX(4, 7, 2) is 7, the maximum of the three values.

** Exponentiation; 2**10

Negation, a prefix operator; 4 is 4

* Multiplication; A * 4

/ Division; 4/8

+ Addition; A+ C

- Subtraction; 5—4

Table 3: Concatenation and Comparisons

Abbreviation Meaning and Example

CAT or

LT

<

NL

^<

LE

<=

EQ

=

NE

—.=

GE

> =

GT

>

NG c

r -.>

Concatenation; 'aC CAT ' ' yields 'aC

Less than; ' ' LT 'a' in EBCDIC

Not less than

Less than or equal to

Equal to

Not equal to

Greater than or equal to; if A GE B then

Greater than; it is false that 5 GT 6

Not greater than; 5 NG 6 is true

TROUBLED BYTRIGGERED

SCOPES?

The Hickok Model 512 DualTrace Oscilloscope eliminatesthe set-up and precisionproblems you've had to acceptusing other triggered scopes.It's easy to set up

■ Simplified color-coded front panelcontrols.

■ Beam finder quickly locates off-scaletraces.

■ Foolproof triggering to 15 MHz.It gives you superior performance

■ 10 MHz response flat within 3dB.Excellent pulse response.

■ 3% accuracy on vertical and hori-zontal ranger.

Hickok industrial lab quality and con-struction

Glass epoxy PC boards used through-out. Regulated power supply.

AT YOUR DISTRIBUTOR *0/5

complete with probes and accessories

HICKOK

the value innovator

INSTRUMENTATION & CONTROLS DIVISIONTHE HICKOK ELECTRICAL INSTRUMENT CO.10514 Dupont Avenue • Cleveland, Ohio 4410B(216) 541-B060 . TWX: 810-421-8286

65

Table 4: Logical Operations and Assignment

Besides mathematical operations whichrequire numbers, relational operations (com-parisons) may be performed on eithernumbers or strings; in addition, only stringsmay be concatenated, i.e., tied together. Thestring 'abc' concatenated with '1234' resultsin the string 'abc1234'. This may be writteneither 'abc' CAT '1234' or 'abc' || '1234'.Since not all terminals have these specialsymbols, an alternative set of two or threeupper case letters can be employed. Theabbreviations for relational and concatena-tion operations are shown in table 3.

While the concatenation of two stringsresults in a string, a comparison operationreturns a value of true or false which can beexpressed as a bit. A binary T representstrue (or yes) and '0' false (or no). This valueof a comparison may be assigned to a logical(bit string) variable. In this context, thedifferent uses of the equality symbolbecome very clear: It is used to assign avalue to a variable, and to test equality.

In order to make the difference betweenthe assignment operation and the equalitycomparison more clear, we will use the colonfollowed by an equal sign (:=) to denote theassignment, and reserve the equal sign forcomparisons of equality. To set a 16 bitregister RA to a value of 15, you may writeRA:=15; to compare the register with thevalue 15, you may write RA=15. In thisinstance the comparison happens to return atrue value, i.e., a '1' bit which may be savedin a bit string variable named SWITCH bywriting SWITCH: = RA=15. Of course, thislatter expression does not mean that youmay type it into your computer and expectresults. This depends on the availability of acompiler which would generate the appro-priate code. On the other hand, this state-ment expresses an intent and a purpose of acomputation, no matter how many machineinstructions need to be issued, regardless ofthe computer at hand.

Like numbers, bit strings have their ownset of operations resulting in bit strings.Special graphics are often used to indicatethese operations. For example, some peopleprefer the dot (•) to indicate logical AND,others use the ampersand (&), and others usealphabetic keywords like and or AND. Wewill try to be consistent in our use of thesesymbols in order to facilitate your reading ofthe magazine. Since only a few computeroutput devices have extended graphiccharacter sets, two choices are presented intable 4.

Abbreviations of units of measurementvary widely. We find, for example, amp,

Abbreviation Meaning and Example

NOT or -i Denial, a prefix operator; '0' is

AND or & Conjunction; C := A & B

NAND Negated conjunction

OR or | Alternation D :=C A

NOR Negated alternation

:= Assignment; X := 15

amps, AMP, Amp, Amps, AMPs, AMPS,ampere, amperes, a or A to denote the unitof measure for electric current. Often abbre-viations are not used consistently, e.g., secversus ms which stand for second andmillisecond, respectively.

There also seems to be little consistencyin spelling and hyphenating, e.g., Hertz orhertz, Giga-Hertz, GigaHertz or gigahertz,etc. We decided, therefore, to spell units ofmeasure in lower case letters. After all, theseare measurement units and not the peopleafter whom they were named.

The inconsistent usage of abbreviationscreates a real problem; it's like learningdifferent languages, or dialects, to say theleast. We thought that frequently used unitsof measure should be abbreviated as short aspossible, preferably as a single letter, unlessthis conflicts with standard usage. We willattempt to use capital letters for abbrevia-tions because they stand out more clearlythan lower case letters.

Acronyms, by the way, are always capitalletters because each letter represents the firstletter of each word of the compound termfor which the acronym stands. Multipleletter abbreviations, on the other hand, mayhave an initial capital letter followed bylower case letters, such as Hz for hertz.Table 5 lists some of the more frequentlyencountered units of measure in BYTE. ■

T is always true

Abbreviation

AbBC

db

g

H

Hz

m

O

s

V

W

Table 5: Units of Measure Abbreviations

Meaning and Example

ampere; 5 kA, five kiloamperes

bit; 1 Kb, one K bits, K bits

byte; 14 KB, 14 K bytes

character; 14.8 C/s, 14.8 characters a second

decibel; 40 db, 40 decibels

gram; 3 Dg, three dekagrams

henry; 50 mH, 50 millihenry

hertz; 2 GHz, two gigahertz

meter; 10 m, ten meters, ten meter band

ohm; 28 kO, 28 kiloohms

second; 1 ns, one nanosecond

volt; 16 mV, 16 millivolts

watt; 2 MW, two megawatts

66

For The Joules,It's a Steal

I just bought a 105 W power supply forunder fifty cents a Watt. This is the"sophisticated logic supply,"* 21 A at 5 Vwhich is available from at least two sources:Meshna Electronics, P.O. Box 62, E LynnMA 01904 and Electro Science Mart, 119Foster St., Peabody MA 01960. Using stan-dard TTL logic, a good rule of thumb is toallow one A at 5 V for approximately 30ICs. Thus this power supply, manufacturedby Dressen-Barnes, is capable of poweringapproximately 600 ICs. For the averagecomputer hobbyist who is designing his orher own system, one of these supplies will beperfect for the main power supply. It ischeap enough to buy right away, and it hassufficient capacity for just about any con-ceivable future expansion (not being"average" myself, I just ordered a secondsupply to cover my anticipated futureneeds).

The supply comes as a black box withseveral interconnection terminals. Two ofthese terminals are for the 110 V AC input.Three other terminals are for the positiveoutput, negative output, and ground. For +5Volt TTL then, the negative output shouldbe connected to ground. Since it is a blackbox, the supply does not come with linecord, pilot light or switch. I surmounted thisproblem by building the supply into analuminum chassis along with a custom ±12 Vpower supply. Although the unit is builtwith massive heat sinks, I decided to mounta ventilating fan to ensure good air flow foran extra measure of cooling.

The power supply comes with a fuseprotected output and a voltage adjustmentpot. The pot adjusts the output from 4 V toabout 5.6 V. I also hooked up a test load ofa Vi O, 50 W resistor to check on the rippleof the supply with a 10 A load. I could seeonly about 10 to 15 mV of ripple on myoscilloscope. Also, voltage stability over aperiod of 24 hours was good; I saw nomeasurable drift.

In summary, this supply has the capacityto rectify a lot of current problems. Watt abargain! ■

*As advertised on page 95 of the November 1975BYTE.

Peter H. Helmers79 Evangeline St.Rochester NY 14619

Systems Research, Inc. presents —

A Complete Microcomputer for only *$575.

The SRI-500

Includes TTY and RS-232 Interfaces. Connects to any 20MA loop teletype. EnclosedIn a compact, desk top unit, It contains 1K (word) RAM**, expandable Prom, powersupply and extra main board connectors to accept many options. The SRI-500 seriesIs designed around the new Mostek F-8, an 8 bit processor with a designers develop-ment program residing in the program storage unit, making programming an easytask even lor the Inexperienced user.* Special Introductory offer** Additional Ram available

Available Options

SRI-510 Keyboard (providesfull keyboard control)

$125SRI-520 Video Interface (RFor Video)

$175SRI-530 Casette Interface

$ 75Complete Blackjack gameprogram to demonstrate orexercise the SRI-500(Specify paper tape orCasette) free with orderof SRI-500 (limited offer)

All items completely assembled and tested —allow 60-90 days delivery time. All itemsshipped postpaid.Send Cash or check for:

ea. SRI-500 $ ea. SRI-510 $

ea. SRI-520 $ ea. SRI-530 $

Mastercharge tt

BankAmericard #Signature

.Interbank # ._Exp. Date _

Systems Research, Inc.P.O. Box 151280Salt Lake City. Utah 84115(801) 942-1093

Cl'Ps

5%5& .....

non-shorting accessto all leads on dual-in-lineIC packages

No more shorting acrossDIP leads... just quicklyclip on an IC TEST CLIPto bring DIP leads out forsafe attachment of scopeprobes and other leads,ideal for signal input, trac-ing, troubleshooting, etc.Patented precision, "con-tact comb" design guar-antees no shorting be-tween DIP leads. Probescan hang "no-hands" freeon Test Clip terminals incard racks (unique — seephoto). Engineered Me-chanical clamping plusgold-plated phosphorbronze terminals providesuperior electrical con-tact. Also unequaled as aDIP remo val tool.

Model

Row-To-Row Dim.

PartNumber

Price

TC-8

.3 IN.

923695

$7.35

TC-14

.3 IN.

923698

4.50

TC-16

.3 IN.

923700

4.75

TC-16 LSI

.5/.6 IN.

923702

8.95

TC-18

.3 IN.

923703

10.00

TC-20

.3 IN.

923704

11.55

TC-22

.4 IN.

923705

11.55

TC-24

.5/.6 IN.

923714

13.85

TC-28

.5/.6 IN.

923718

15.25

TC-36

.5/.6 IN.

923720

19.95

TC-40

.5/.6 IN.

923722

21.00

We honor M.C. and B.A.C. charges.

Add sales tax on OH and CA orders.

(F.O.B. Painesvilleon company P.O.'s.l

Dealer inquiries invited

Add ».

fees fromthis chart.

SHIPPING/HANDLING

Up to $10.00 $1.00

$10.01 10 $25.00 1.5025.01 to 50.00 2.00

All products guaranteed to meet or exceed published specifications

AP PRODUCTS INCORPORATED

Box 110-G* Painesville, OH 44077* 216/354-2101

67

Clubs and Newsletters

Pittsburgh Group

The following note was received fromEric Liber and Fred Kitman of Pittsburgh:Dear Fellow Computer Phreaks:

Just a quick note to let you know thaihobby computing and computers are aliveand well in Pittsburgh. The name of theorganization is the Pittsburgh Area Com-puter Club. We had our first meeting onOctober 8, 1975 and even though theweather was inclement we had 1 5 people inattendance. In addition there is definiteinterest from at least that many more! Notbad for a beginning.

The name of our acting president is EricLiber and the name of the secretary/treasurer is Fred Kitman. We can be reachedat the address below or at the followingtelephone numbers: Day: 412-391-3800;Night: 412-276-6546.

The members of the club have a total of 5computers with 2 Altairs, 1 PDP/11, oneWang and one 8008. Not a bad start!!Pittsburgh Area Computer Club, 400 Smith-field St., Pittsburgh PA 15222.

The Santa Barbara California Club

Virginia Seminars

David G. Larsen of Virginia PolytechnicInstitute and State University, BlacksburgVA 24061 sends in the following notice oftwo seminars which will be given this comingMarch on microcomputer themes.

1. Microcomputer Interfacing Workshop,March 12-13, 1976. A two-day workshopbased on the popular Intel 8080 micro-processor. This course is sponsored by theVPI and SU Extension Division at theVPI Center in Reston VA (near DullesAirport). This workshop will include manyhours of experience in programming andinterface construction with over 12 oper-ating microcomputers for participant use.For more information contact Dr. NorrisBell, VPI and SU Continuing EducationCenter, Blacksburg VA 24061,703-951-6328.

2. Digital Electronics for Automation andInstrumentation, March 21-26, which is ahands on laboratory/lecture course coveringbasic digital electronics as well as datacommunications and interfacing using asyn-chronous serial techniques. It is held at VPIand SU in Blacksburg VA and is sponsoredby the American Chemical Society, Educa-tion Division, 1155 16th St NW, WashingtonDC 20036 (202)-872-4528.

Doug Penrod, 1445 La Cima Road, SantaBarbara CA 93101 sent in a good letterdescribing the newly formed club which hasbeen meeting at the Goleta Library.Interested persons from the Santa Barbaraarea should contact Doug by mail or phone(962-3337). The club is best described bythe following paragraph copied fromDatafile, Volume 1 number 0:

The first meeting of the un-named club ofcomputer hobbyists of the Santa Barbaraarea was held Wednesday evening at 7:30,1975 October 8 at the Goleta Library, 500North Fairview. Attendees ranged fromprofessionals to those with a keen interestbut no knowledge so far. Equipment rangedfrom abacus and slide rule to a Data GeneralEclipse system. Most expressed an interest inowning a machine of their own, from pro-grammable calculator through microcom-puter to minicomputer. Most felt that themost valuable feature of meetings is the"random access" period, during whichmembers mill about and compare notes ontheir projects and problems, and examinehardware brought for display and consulta-tion. At the first meeting was an HP-65(Ralph Boland), a MITS Altair 8800 (DougPenrod), a MITS Scientific Calculator (DougPenrod), a home brew microcomputer builtaround an Intel 8008 microprocessor chip(Larry Plate), and a "TV Typewriter" (Grant

68

Runyan). Brian Johnson gave a lecture onmicroprocessors and computer principles forbeginners, during the random access period.Everyone who is interested in any aspect ofcomputing/calculating is encouraged to joinus at our meetings. If you like mathematicalgames and puzzles, computer history, wantto learn how computers work, want to builda computer or calculator, want to learnprogramming — any aspect of software orhardware, this is the place to meet thepeople you want to talk to. In addition toinformal exchange of information, help, andgoodies, we expect to have talks and demon-strations by experts on occasion. We alsooffer advice on publications and books.

Minneapolis-St. Paul Computer Activities

The BIT USERS ASSOCIATION is anorganization of computer hobbyists andsmall systems engineers serving primarily theMinneapolis-St. Paul metropolitan area. Themembers seek to exchange newsletters andtechnical data with organizations orindividuals with similar interests.

The BIT USERS ASSOCIATION wasbegun in 1973 by users of the BIT 480-483minicomputers, and remains a source forreplacement parts and licenses regarding thesaid machines. It has expanded to encompasspersons with interest in various minicom-puters and microprocessors, and is activelyengaged in the design and construction ofselected peripheral devices suitable forhobbyist use and which can be built at lowcost at home. Raster-scan television graphicand uniquely dense alphanumeric televisionterminals, for example, are in final stages ofdevelopment.

The sponsor of the BIT USERS ASSO-CIATION is the Resource Access Center, anon-profit educational center serving com-munity service agencies. Inquirers arerequested to send self addressed stampedenvelope, but no other monies please. InMinneapolis, telephone 824-6406 (ormessage service, 823-8247). BIT USERSASSOCIATION, RESOURCE ACCESSCENTER, 3010 4th Ave S, Minneapolis MN55408.

Nashua NH Area Computer Club

Dwayne Jeffries, 181 Cypress Lane,Nashua NH 03060 notes formation of acomputer club in the Nashua NH area. Forinformation and details, contact Dwayne.

Continued on page 70

Aixnxrou]xrci]\rG

RJVSIC-S USERS CRT

1. 1,920 character display — 80 characters x 24 lines

2. Basic language with extended math functions

3. More powerful than many mini-computer basic systems

4. Available 1st quarter of 1976

PHONE: 617-966-0929

9080 Microproc $56.00

Replaces 8080

91 L02 1 K low power RAM 3.90

2102 1 K RAM 2.90

ASCI I Keyboard Kit 79.50

FEATURES: Full 55 key,

reliable scanning logic, N

^(|^»,J5> key rollover, TTL com-

^j/^-^Sg&jBfKfa patible parallel output.

■•■':,,. ,^v»' Ijtjij^Pf^S ' Also available-serial out-

'/■^iv«^4j^Wj3Dk2JJ5fT^ put, parity bit, TTY

i. f*^|HQ5i^3^BHHH^P "?" current loop output.

-- „-"''' kits available:

1702 PROM Programmer 125.008223 PROM Programmer 79.50Audio cassette interface 69.50CRT TV display

MIKRA-D

A

MIKRA-D Inc.,P.O. Box 403,Holliston MA 01746

Miami Area Computer Club

Terry Williamson, P.O. Box 430852, S.Miami FL 33143 went to the MITS Caravanseminar in Miami recently. As oftenhappens when people get together withcommon interests, Terry got involved inconversations with several other personalcomputer addicts at the MITS show. The netresult is the forming of a Miami areacomputer club. For details contact Terry bymail or at 305-271-9909. Thanks to MITSfor catalyzing another computer club.

North Texas Group

and mathematical subroutines for floatingpoint. Specialized functions may be addedby the user.

The proposed syntax and grammar forTINY BASIC is described in the PCC news-paper Vol. 4, nos. 1 and 2. The designphilosophy is to keep it simple and use aslittle memory as possible. Speed is sacrificed.PCC would greatly appreciate any helpand ideas. Sixteen bit (double word) addi-tion, subtraction, multiplication, division,decimal-binary and random number routinesare needed.

Bernard R. Greening

People's Computer Company

P.O. Box 310

Menlo Park CA 94025

The Computer Hobbyist Group of NorthTexas is the name of the computer club inthe Dallas-Fort Worth Area. In a recentletter to BYTE, Bill Fuller (hardware editorof TCHGNT newsletter) comments:

"... thanks for the plugs in BYTE forthe Texas Club. We went from 35 to 75since BYTE appeared and that's why I'm sodarn busy."

The club puts out a newsletter withinformation on activities, and has arrangedfor some demonstrations by computer com-pany representatives and by members whohave built computers. Meetings are heldmonthly. For latest details, contact BillFuller at 2377 Dalworth 157, Grand PrairieTX 75050.

Washington DC Area Club Activity?

Robert Jones of Washington DC isinterested in organizing a computer club forthe nation's capital. If you are interested,contact him at: 4201 Massachusetts Ave,Apt. 1 68 W, Washington DC 20016.

Reston VA Club?

In Reston VA, Andrew Convery reportsthat he is interested in assembling a localclub. Contact him at 2315 Freetown Ct, Apt11C, Reston VA 22091. His home phone is(703) 860-1849, and his work phone is(703)241-3551.

Tiny Basic

People's Computer Company has beenpromoting programming in BASIC. Severalcompanies have produced inexpensive micro-processor chips. One of these, Intel, has madethe Intel 8080 chip. Currently availableversions of BASIC take 4 to 8K words ofmemory.

PCC is working on a TINY BASIC. It willbe oriented to:

kids having fun

teaching BASIC

games

elementary school arithmetic

mathematical recreations

send us your ideas . . .

It will run on an Intelec 8/Mod 80 or anALTAI R 8800. It will use 16 bit (doubleword) integer arithmetic. Its design will bepublic so that others may reorganize the IO

News ofNECC

The New England Computer Club held itsfirst meeting on November 5, 1975, at theJarrell-Ashe plant in Waltham MA withabout 200 people showing up. As is typicalof "first meetings," the most importantobjective was accomplished — the assemblyof a mailing list of interested individuals, andidentification of a small group willing to puttogether a more formal organization. Futuremeetings have tentatively been scheduled forthe Mitre Corporation cafeteria in BedfordMA.

One key goal is setting up a series ofseminars on the technology of hardware andsoftware. Other expected activities are"show and tell," trading posts for equipmentexchange among individuals, and talks bymanufacturers or computer users concerningapplications of the technology. A newsletterwill be financed by the sale of 30 Intel 8080systems manuals donated by the local repre-sentative.

70

Ydu can buy

this microcomputer

for $39.95, but...

We would be a bit surprised if youcould do anything meaningful without

additional hardware and software. mc

Wave Mate's Jupiter II™ isn't the kind of

microcomputer kit you only stare at... when

you've completed your Jupiter II just plug in

your teletype and you're ready to go. That's

because it goes beyond the sum of its high

quality parts. It's the ultimate micro kit

experience. In performance, in documentation,

in reliability. First, consider its superb features.

It has small pluggable wire wrapped cards

easily tailored to suit your modifications.

Every IC is socketed and 100% burn-in tested.

6800

In fact every part including the powerfulMC 6800 CPU and the 8K dynamic RAMis guaranteed for 120 days. It has the bestsoftware around, System Monitor and Debugprograms (ROM). Includes powerful texteditor and Motorola compatible assembler.And BASIC at no extra cost. Because we'vebeen making microcomputer systems for over4 years, we can offer you the broadest line ofinterfaces including TV terminal and dualaudio cassette. Impressive. And yet thegrandest feature is the experience ( / fyi Jof completing a kit that works. C lX3 / JGuaranteed. lUaue mate.

ACT NOW AND SAVE.Introductory price $1225. (Assembled $1885.)(Good until February 1, 1976)2 Send Jupiter II Microcomputer Kit. Includes:

• Modular plug-in powersupply

• 9 module PC backplane

• CPU module

• System monitor module

• 8K dynamic RAMmodule

• Serial RS 232communication interfacemodule

• Front panel module

• Front panel

• Wire; cut, stripped, colorcoded.

Rack mount module cage

Wire wrap tool

Wire unwrap tool

Cables, connectors, all

other necessary

hardware

Software (editor, debug,

assembler, BASIC)

Assembly manuals

Operators manuals

Theory of operation

manuals

Annual membership in

users group

O Send details on kit-a-month club

□ Kit □ Assembled

□ RS 232C conversion kit (teletype) $47.85

□ I'm not convinced; send me 101 reasons why.

□ Please send free Jupiter II System catalogue.

□ Check enclosed for $

Include $10.00 for postage and handling. Californiaresidents add 6% tax Delivery 60 days ARO

□ Master Charge #

□ Bank Americard #

Credit card expires on

Name

Address.

City/State/Zip.

WAVE MATE

1015 West 190th Street Gardena, California 90248

Telephone (213) 329-8941

BE I

U/aue. TTlate,

WARRANTY120 days on all parts,■ materials and workmanship.

71

Permission Granted to Xerox

(or 3M, IBM, Apeco or otherwise facsimile, copy or duplicate)

BYTE SUBSCRIBERS WILL LEARN . ..

About all of the new small systems coming on the market . . . which are real and which arestill in development stages . .. there will be a simple series of articles on computer languages. ..reviews of kits .. . info on surplus buys and used equipment. . . circuits for building your ownequipment ... discussions of standards . .. news of user clubs and programs available .. . infoon specialized newsletters . .. games and game groups. . . game programs . . . computer art. . .computer music . .. and if that doesn't cover it, all you have to do is write in and either saywhat else you want or else start writing the articles yourself.

BYTERSSAVE ...

With single copies going for $1.50 (insane price), the $12 subscription price begins to lookattractive. You won't want to miss a copy (presumably), so fill in the coupon here and send itin quickly ... no cash needed, just send it in, we'll put you into the subscription computer(with fingers crossed) and send you the invoice. It's probably a business expense, right? If youdislike ripping your soon to be valuable issue of BYTE to shreds by removing a coupon, you arehereby given permission in perpetuity (until subscription rates go up) to violate the copyrightand make a copy of any one of the four coupons . . . neatness counts. Your friends may dolikewise, unless you are a lot less persuasive than we think you are.

The Management

r

Name. .Address .City . . .

Cut

T"

Tear

. State

Zip.

□ BILL ME □ Check for $12 enclosed

□ Bill BankAmericard or MasterCharge #.

L.

Name . .Address .City . . .

State

Zip.

□BILL ME □ Check for $12 enclosed

□ Bill BankAmericard or MasterCharge #.

*"l

Shred

Rip

Name..Address .City . . .

State Zip .

Name . .Address .City . . .

. State .

Zip.

□ BILL ME □ Check for $12 enclosed

□ Bill BankAmericard or MasterCharge #.

□ BILL ME OCheck for $12 enclosed

□ Bill BankAmericard or MasterCharge #.

_l_

BYTE • Peterborough NH 03458

72

MITS Computer Caravan

The Mighty MITS Mobile stopped off inBoston recently and roused the micropro-cessor byters from the woodwork. It was agood deal like a club meeting as the MITSComputer Caravan paused to provide aseminar for 30 plus enthusiasts.

Since it is more than likely that virtuallyevery one who is reading this brief reportwas to some degree snared into the com-puter hobby field as a result of the Altair8800, we won't try to explain who MITS isor what they make.

But reading about the Altair and seeing itin action are two different things, so thecrowds have been catching the Caravan inlarge numbers. It's a good show, so don'tmiss it when it comes around. The registra-tion fee is $12 and for that price you get aloose leaf binder with schematics of theAltair and notes to go with the shortinstruction course presented during theCaravan seminar. The book alone makes theprice reasonable. You also get an oppor-tunity to see the Altair in action and askquestions until you get tired.

The 8800 on demo had a teletype IO anda cassette memory unit, which is what mostof us were anxious to see and try out. Theprogram was a good one, starting out with adiscussion of the fundamentals of computersand logic, then the Altair hardware, andfinally the software with a demo of MITSBASIC.

A couple of non-beginners went out for ashort snort or something while the introduc-tion to logic circuits unfolded . .. everyoneelse listened with interest. The session wasrun by Mike Hunter, who has been drivingthe Caravan all around the country.

The standard modem tones of 2025 and2225 Hz were used for the cassette storage. . . which seemed like a good feature. Aftera short loading program via the front panelswitches BASIC was loaded from a cassetteand demonstrated. This certainly appears tobe a very good version of BASIC and to havea lot of advantages over other possiblelanguages.

The soon to be released floppy diskoperating system was discussed. This willmake fast access bulk memory available for avery reasonable price as compared to com-mercial units now available for the minicom-

puter systems. MITS is reportedly going tohave this ready for use in a few weeks. Thiscertainly will be a major step toward pro-viding low cost complete operating com-puter systems.

The MITS line printer is also about to bereleased, complete with its operating system,and magnetic tape memories are in theworks. Considering that all this really startedonly about one year ago, the progress byMITS has been just about incredible.

The MITS Caravan was thoroughlyenjoyed by everyone and it seems likely thatas a result of the group getting together forthat seminar that a club will be forming. . .another feather in the cap for MITS. Thissort of thing has been happening all aroundthe country. ■

clr sup

fastest, most reliable

method known...to build, test

and modify experimental circuits

8-bus distribution systemplus universal .1" by .1" matrixof solderless, plug-in tie points

all in one integral device.

Accepts all DIP'S and discreteswith leads up to .032" dia.

Interconnect with any solid wireup to No. 20A.W.G.

ORDER BY PART NUMBER

923252 lllickel-silver terminals! $17.00

923748 {gold plated terminals! $18.90

High-performance A P Super-Strip component matrices consistof 128 terminals of 5 tie pointseach. The 8 buses of 5 connect-ed 5-tie-point terminals are forvoltage, ground, reset and clocklines, shift command, etc. New,non-shorting, instant-mountbacking and quick-removalscrews are supplied... use severalSuper-Strips to create large-scalebreadboards on panels up to1/8" thick.

We honor M.C and B.A.C. charges.

Add sales tax on OH and CA orders.

{F.O.B. Painesville on company P.O.'s.)

Dealer inquiries invited

Add ■>

fees fromthis chart.

SHIPPING/HANDLING

Up to $10.00 $1.00

$10.01 lo $25.00 1.5025.01 to 50.00 2.00

All products guaranteed to meet or exceed published specificetions

AP PRODUCTS INCORPORATED

Box 110-G* Painesville, OH 44077* 216/354-2101

73

ALTAIR OWNERS

CMR PRESENTS

THE MEMORY YOU'VE BEEN

WAITING FOR

8K x 8 DYNAMIC RAM

ON ONE PLUG-IN CARD FOR

ONLY

$599

00*

• FACTORY ASSEMBLED AND TESTED

• PLUGS INTO 8800 WITH NO MODIFICATIONS

• PROTECT-UNPROTECT CIRCUITRY INCLUDEDTO MATCH 8800

• TWO 4k BLOCKS OF DYNAMIC R.A.M.

• USER OR FACTORY ADDRESS PROGRAMMING(SPECIFY)

• EACH CMR-8080-8k is SHIPPED WITH AN EDGE-BOARD CONNECTOR INCLUDED.

• EXPANDER BOARDS AVAILABLE (ADDS FOURSLOTS TO 8800)

TEN REASONS TO CHOOSETHE CMR MEMORY CARD

1. 300ns ACCESS TIME

2. TWICE THE MEMORY DENSITY

3. LESS$$ PER K OF MEMORY

4. DESIGNED FOR THE 8800

5. USES THE LATEST T.I. CHIPS

6. G-10EPOXY BOARDS

7. PLATED THROUGH HOLES.

8. GOLD PLATED CONNECTOR CONTACTS.

9. 8192WORDSOF DYNAMIC RAM

10. 90 DAY WARRANTY ON PARTS AND LABOR

*ORDERING NOTE:

FOR FACTORY PROGRAMMING. SPECIFY TWO 4kMEMORY ADDRESS LOCATIONS FOR EACH CMR-8080-8kMEMORY CARD ORDERED.

MAIL THIS COUPON TODAY

□ ENCLOSED IS CHECK OR M.O. FOR $

□C.O.D. s ACCEPTED WITH 30% DEPOSIT. TOTALAMOUNT $ 30% =

VA.

RESIDENTS ADD 4%

CMR-8080-8k CARD(S)

• PLEASE SEND

DESCRIBED ABOVE @ 599.00 EA. POSTPAID

•PLEASE SEND EXPANDER BOARD(S)

(ADDS 4 SLOTS TO 8800) BOARD ONLY ® 15.00 EA.POSTPAID TO:

NAME

ADDRESS-

CITY-

.STATE 8i ZIP_

CMR

COMPUTER MANUFACTURING CO.

P.O. BOX 167, 1921 DOGWOOD LANEVIENNA, VIRGINIA 22180

That Didn't TakeLong at All

In the November issue of BYTE wepublished Dan Fylstra's article "Son ofMotorola," comparing the new MOS Tech-nology 6501 and 6502 computers with theMotorola 6800. At the time the article waswritten (late August) he could not predictwhen a kit would be available for the MOSTechnology processors.

The first MOS Technology 6502 kit isnow available: Microcomputer AssociatesInc., of Cupertino, California, haveannounced the JOLT computer kit.According to their news release, this kitcombines hardware and software for smallscale computing at a low cost.

Components of the JOLT include thecentral processor kit, a 4096 byte RAM kit,an 10 interface kit, power supply kit, andmiscellaneous items such as a universalprototyping card and an accessory kit.

The basic central processor card contains512 bytes of programmable random accessmemory, 64 bytes of interrupt vector ran-dom access memory, and 16 fully program-mable 10 lines. The most important featureof the CPU card is its read only memory.This memory contains the DEMON (DEbug-MONitor) program product, a basic softwareelement needed to run the system from theserial terminal interface, which is imme-diately available when you turn on thepower.

Classified Ads Available forIndividuals and Clubs

Readers who have equipment, software or otheritems to buy, sell or swap should send in a clearlytyped or printed notice to that effect. The noticesare free of charge and will be printed one time onlyon a space available basis. Insertions should belimited to no more than 100 words. Notices can beaccepted from individuals or bona fide computerusers' clubs only. Commercial advertisers shouldcontact Bill Edwards, BYTE advertising manager,for the latest rate card and terms.

ALTAIR 8800, assembled, tested, and completelyoperational includes 1 K RAM board with 256words. Complete documentation including news-letters, quality built by electrical engineer. ONLY$500 postpaid. D. Schreiter, 9032 Whitehaven Dr,St. Louis MO 63123.

Would very much like to buy a used memory board(or two) for a Raytheon 704 minicomputer. RickLoomis, PO Box 1467, Scottsdale AZ 85252,(602) 994-9104 (call afternoons or late at night).

74

The DEMON program includes routinesto display and alter registers or memory, andcontrol terminal interface service routines.DEMON also includes a breakpoint capa-bility useful in debugging programs, twokinds of formatted memory read and writeoperations for program loading and saving, ahigh speed 8 bit parallel input routine andseveral 10 service routines which may becalled by a user's program.

Perhaps the most unique feature of theDEMON program is its adaptable terminalinterface service routine; the software sensesand automatically adapts to the speed atwhich the terminal operates between 10 to30 characters per second.

A minimum system built with the JOLTcomponents can be assembled from the CPUcard kit, the accessory kit, and a Teletype orRS-232 compatible terminal. With such asystem, many of the basic concepts ofprogramming can be demonstrated withinthe confines of a 512 byte area of usermemory. Input and output operations cantake advantage of the DEMON subroutinesto interact with the terminal. This wouldmake a good initial system for a person tolearn the ropes of computing.

As programming sophistication increasesthe owner may expand the memory bypurchasing additional boards.

For users who want to breadboard theirown peripherals, the universal card will comein handy as a starting point for an interfaceconstruction project.

For ordering information and prices, con-tact Microcomputer Associates Inc., at10440 N Tantau, Cupertino CA 95014,408-247-8940. Delivery is 30 days afterreceipt of order according to their newsrelease. ■

MICROCOMPUTER EXPERT NEEDED. I'll payfor the equipment. You put it together. We'll bothuse it once it's running. I'm tired of paving $1 OOO'sto a 370/155 batch processing service. My interestis statistical analysis of large volumes of stockmarket-type data. I need a powerful (for a micro)system, with disk or disk-type orientation, tapecapabilities, line printer, card reader (maybe),BASIC or FORTRAN compiler, telecommunica-tion ability. Joe Schachter, 41 Amory St., Cam-bridge MA 02139. (617) 492-2765.

USED MICROCOMPUTERNEEDED. See ad above.

EQUIPMENT

ASR-33 TELETYPE in perfect physical and oper-ating condition; 20 mA current loop interface,w/reader power supply and pedestal — $500. Also,Kleinschmidt drum printer with parallel ASCII,TTL-compatible interface, 30 cps in perfect oper-ating condition, w/o dress cover — $300. (617)757-2037 after 6 pm. D. F. Craft, Jr.

For sale, DEC PDP8/L mini computer. The com-puter is 100% working and in excellent condition.Hardware: 4K core, TTY interface, Pos I/O inter-face, Pos I/O bus board. Software: editor, diag-nostics, assembler, other misc. Price $900. Call617-592-2937 evenings. Peter A Balkus, Lynn MA.

A PRECISION

WAVEFORM

GENERATOR

AT A PRICE YOU

CAN AFFORD.

The Hickok

Model 270 Function Generatorgives you a lot more waveformgenerating capability than you'dexpect for its price.

■ Puts stable, calibrated, highquality sine, square andtriangle waveforms from 1 Hzto 500 kHz at your fingertips.

■ With external connectionsyou can produce logicpulses, sweeps and ramps,AM and FM outputs, phaseand frequency shift keyingsignals, tone bursts and more.

■ Its an audio generator andmuch more.

AT YOUR DISTRIBUTOR

$166

oo

HICKOK

the value innovator

INSTRUMENTATION & CONTROLS DIVISIONTHE HICKOK ELECTRICAL INSTRUMENT CO.10514 Dupont Avenue • Cleveland. Ohio 44108(216) 541-8060 • TWX 810-421-8286

75

You'll Want to Nybbleat these Byte Books

Where does the editor of a computer magazine turn to when he mustverify some author's hardware design? Information on a 75450interface gate, or a 74147 priority encoder circuit does not spring forthby magic. Checking the information supplied by authors is part ofBYTE's quality control program.When you build a project, you need this same sort of information. All you find in the advertisements for parts aremysterious numbers identifying the little beasties ... hardly the sort of information which can be used to design acustom logic circuit. You can find out about many of the numbers by using the information found in these books. Nolaboratory bench is complete without an accompanying library shelf filled with references - and this set of TexasInstruments engineering manuals plus Don Lancaster's 777. Cookbook will provide an excellent starting point oraddition to your personal library.

• The TTL Cookbook by Don Lancaster, published by HowardW. Sams, Indianapolis, Indiana. Start your quest for data here withDon's tutorial explanations of what makes a TTL logic design tick.335 pages, $8.95 postpaid.

• The Supplement to The TTL Data Book for Design Engi-neers, by Texas Instruments Incorporated. What happens whenyou can't find a 7400 series device listed in The Data Book forDesign Engineers? Before you start screaming and tearing yourhair out in frustration, turn to the Supplement. The Supplementhas 400 pages of additional information including a comprehensiveindex to both TTL Data Book volumes. To be complete (and keepyour hair in place and vocal cords intact) you'd best order thesupplement at $1.95 to accompany the main volume.

• The Transistor and Diode Data Book for Design Engineers,by Texas Instruments, Incorporated. You'd expect a big fat databook and a wide line of diodes and transistors from a companywhich has been around from the start of semiconductors. Well, itsavailable in the form of this 1248 page manual from T.I. whichdescribes the characteristics of over 800 types of transistors andover 500 types of silicon diodes. This book covers the T.I. line oflow power semiconductors (1 Watt or less). You won't find everytype of transistor or diode in existence here, but you'll find mostof the numbers used in switching and amplifying circuits. Orderyour copy today, only $4.95 postpaid.

• The Semiconductor Memory Data Book for Design Engi-neers, by Texas Instruments, Incorporated. Don't forget theimportance of memories to your systems. Refer to this 272 pagemanual to find out about the T.I. versions of many of the popularrandom access memories and read only memories. Order yourpersonal copy today, only $2.95 postpaid.

• The Linear and Interface Circuits Data Book for DesignEngineers, by Texas Instruments Incorporated. When you runacross one of those weird numbers like 75365 the immediatefrustration problem occurs again. What kind of gate could that be?We won't tell in this ad, but you can find out by reading thespecifications in The Linear and Interface Circuits Data Book forDesign Engineers. You can interface your brain to the 72xxx(linear) and 75xxx (interface) series of functions by ordering yourcopy of this 688 page manual at only $3.95 postpaid.

• The TTL Data Book for Design Engineers, by TexasInstruments Incorporated. How does an engineer find out aboutthe TTL circuits? He reads the manufacturer's literature. This 640page beauty covers the detailed specs of most of the 7400 seriesTTL logic devices. No experimenter working with TTL has acomplete library without The TTL Data Book for DesignEngineers. Order yours today, only $3.95 postpaid.

Caution: Heavy Reading

Buyers of these books should be cautioned: heavy reading will be required. These books are sofilled with information that they weigh in at a total of about 190 ounces (5387 grams). On the basis ofsheer mass, these books have got to be the bargain of the century. Make sure that you use astructurally sound book shelf and above all avoid dropping one of these books on your foot. But themass of these books doesn't affect the bargain: we pay postage on all orders shipped to addresses inthe USA and Canada, so the prices you see are the prices you pay. (That's only $.005 per gram on theaverage.)

TTL Cookbook© $8.95TTL Data Book @ $3.95Supplement to TTL Data Book @ $1.95Linear and Interface Circuits @ $3.95Semiconductor Memory Data @ $2.95Transistor and Diode Data Book @ $4.95

Send to: Name

Address

City

State

Zip

EITE

PETERBOROUGH, NH 03458

□ Check enclosed

□ Bill MC#

□ Bill BA#

Signature

Exp. Date..Exp. Date.

76

YTE'SUGS

Here lies documentation of known bugsdetected in previous editions of B YTE. . .

Roger Frank, 1801 E Girard #247, Englc-wood CO 80110 points out the followingerror in the text of Jim Hogenson's "BuildAn Oscilloscope Graphics Interface," page72 of BYTE #2: The description of controlcode 7 at the top of the third column shouldread: "Control code 7 will not set Z, but willdecrement the X coordinate of the display.This changes the horizontal section of thecounter only, without affecting stored datain the memory of the interface unit."

The remaining portion of the originalparagraph describing the 0 and 7 codesshould be deleted, through the words"decrement X control code."

BYTE #4, page 35, table 3: The Baudotcode for the letter Q in the table should read"I 1 10 1."

ANSWERS TO DECEMBERWORD HUNT page 18

ACCUMULATOR

1,3

8

ADD (not in address)

4, 12

2

ADDRESS

1, 15

8

ALPHANUMERIC

1, 1

2

AND

4,3

1

APL

6,4

5

ASCII

16,7

6

ASSEMBLER

19, 12

7

ASYNCHRONOUS

19, 12

4

BASIC

13, 10

4

BATCH

8,5

5

BAUD

2,20

2

BCD

3, 10

1

BET

9,21

2

BINARY

12,8

4

BOOLEAN

13, 10

7

BRANCH

9,21

4

BUFFER

14,17

2

BYTE

9,21

6

CHECKSUM

1,4

1

CHIP

14,7

8

CLOCK

9,17

7

COBOL

13, 1

8

COUNTER

7,13

6

DATA

6,5

4

DEBUG

6,5

2

DESTINATION

2, 15

2

DEVICE

1, 16

2

DIAGNOSTIC

10,2

8

DIODE

21, 1

8

DISK

12, 18

3

DISPLAY

21,1

6

16K MEMORY KITLESS THAN 5.5C/W0HD

16,384 8-BIT WORDS ONON ONE CARD WITH PIGGY-BACK ONLY

$895.00

• PLUG DIRECTLY INTO 8800

• LOW POWER: + 8 TO +10V, LESS THAN 600 mA

+15 TO +18V, LESS THAN 125 mA-15 TO-18V, LESS THAN 30 mA

• 4K WITH PROTECT-UNPROTECT

• USES LOW POWER SCHOTTKY TTL

• MEMORY CHIPS SOCKET MOUNTED

• 50/50 GOLD-PLATED EDGE CONTACTS

• EPOXY BOARDS WITH PLATED THRU HOLES

• JUMPER PROGRAM 16K ADDRESS SLOT

• 8080 HOME BREW COMPATIBLE

• 420nS ACCESS DYNAMIC RAM

• NOT A FLAKE

INTRODUCTORY SPECIAL ON ORDERSRECEIVED BEFORE 1/1/76

• • Take $50 Discount •• Take Free 50/50 Edge Connector

• • Pay No Shipping Charges

WRITE TO DA VE (K6LKL) at

DUTRONICS

P.O. Box 9160,Stockton CA 95208

•SPECIFY KIT16KMDY*CALIF. RES. ADD SALES TAX♦MASTER CHARGE - OK*BANKAMERICARD - OK

(X, Y)

C(

3-

OF

\L

)ll^

JATES

4, 3

A

DTL

i

6, 10

2

ECL 9,2

8

EXECUTE 12,17

6

EXIT 10,17

8

FALSE 15,10

4

FETCH 14,4

8

FILE 7,7

5

FLAG 5,14

2

FOCAL 5,14

6

FORMAT 5,14

3

FORTRAN 7,20

2

GATE 2,12

4

GLOBAL 11,13

2

HALT 7,3

7

INPUT 6,6

7

INSTRUCTION 20,2

8

INTERFACE 20,21

6

INTERRUPT 20,21

4

JUMP 2,8

1

LED 3,17

2

LINK 2,21

2

LIST 17,12

8

LITERAL 13, 18

2

LOAD 2, 1

8

LOCATION 12,13

5

LOG 14,3

2

LOOP 4, 2

6

LSI 12,10

6

MATRICES 8,11

3

MEMORY 19,20

6

MHZ 9,6

8

MICROCOD

E

1

7,2

6

DIRECTION

*

MICROPROCESSOR

8, 11

2

MNEMONIC

17,2

8

MOS

8, 1

8

OCTAL

6, 13

2

PCB

20, 14

5

PERIPHERAL

18,1

8

PLOT

12,9

8

POINTER

3, 1

8

PRIORITY

14,19

2

PROGRAM

4,8

1

PROM

12,9

5

QUEUE

2,7

1

RAM (not in program)

8, 12

2

READ

19, 17

4

RECORD

11,8

4

ROL

14,2

1

SOURCE

2, 18

2

STACK

16,9

4

STATUS

11,9

6

STORAGE

17, 14

6

SUBROUTINE

21, 14

4

SUBSYSTEM

8,3

8

SYNTAX

21,20

4

TABLE

12, 12

2

TRANSMITTER

10, 16

2

TRAP

11,21

4

TTL

3,5

2

VCC

14, 1

6

VECTOR

3, 16

4

VERIFY

3, 16

1

WIRE

4, 19

6

WORD

4, 19

5

77

Hit the deck in shorts anda tee shirt. Or your bikini ifyou want.

You're on a leisurely cruiseto remote islands. With nameslike Martinique, Grenada,Guadeloupe. Those are theones you've heard of.

A big, beautiful sailing vesselglides from one breathtakingCaribbean jewel to another.A 1 fj-i I And you're aboard, having

■ iBnOWt the time of your life with an

intimate group of lively, fun-loving people. Singles andcouples, too. There's good food,"grog',' and a few pleasantcomforts...but there's littleresemblance to a stay at afancy hotel, and you'll behappy about that.

Spend ten days exploringparadise and getting to knowcongenial people. There's noother vacation like it.Your share from $245. A new cruise is forming now.Write Cap'n Mike for your free adventurebooklet in full color.

Windjammer Cruises.

A WINDJAMMER INTERNATIONAL SUBSIDIARY • OTC

Name

Oiv

Stale

Zpp

Phone

P.O. Box 120, Dept. 121

Miami Beach, Florida 33139

78

CONTINENTALSPECIALTIES

$15.95

PROTO BOARD 6The PB-6 rets the user test and huiklcircuits without soldering or palch

cords1 all interconnections betwm.'icomponents are mad? with com-mon #22 AWG hook-up wire. Thisqii,Lilly iireisdboardmy kit inliidr;!;630 component tie paints at lessthan 2.5c each. II measures6" longby 4" wide. Designed specially toBreadboard Micropiccessor Cir-cuits S15.95

PHOTO BOARD 100A low cost. Dig 10 IC capacitybreadboard kit wi:n all tfie quality ofOT sockets and the best ol the Protonn;i[d series complete down tothe last nul, boll and screw. In-cludes 2 QT-35S Sockets; 1 QT-35BBus Strip. 2 S-way binding posts; 4rubbertect: screws, nuts, halls: andeasy assembly instructions.S19.95

Ciuig IC leads Irom pc board lor fast signal tracing

and troubleshooting. Inject signals. Wire unusedmts into boards. Scope probes and lest leadsOhio Dyrinyrsp inset (sen circle) for hands-off

testing. Plaslic construction eliminates spring;■ts. Non-corrosive nrckel>'silver contacts U

simultaneous row resistance connections

PC-14, 14-pin Prn:o Clip, $4.50 ea

PC-16. 16-pin Proto Clip. S4.75 ea.

PC-24, 24-pm Proto Clips, S8.50 ea. ^

CALCULATOR CHIPS AND DRIVERS

MM 5725DM75491

MM5736

DM75492MM5733

DMBB64DM8865

MM531IHH5312

MM5313MM5314MM 5316CT7001

8 DIGIT 4 FUNCTIONSEGMENT DRIVER6 DIGIT 4 FUNCTIONDRIVER FOR 57368 DIGIT 5 FUNCTIONDRIVER TYPE 1DRIVER TYPE 2

CLOCK CHIPS

6 DIGIT W/BCD4 DIGIT W/BCO6 DIGIT W;BCD6 DIGIT CLOCKALARM CLOCKCAL'CLOCK CHIP

DIGITAL WATCH READOUT

HP-5082-7300

HP 5082-7300

.3" Do! Matrix type numeric readouts

with decoder/d'iver/lateh built on the

Chip. Only 3 bins (BCD in. DP Latch.

-5v. ground)

HP 5082 7300

S5.95

HP 5002 7304

-1 version ol 7300 4.95

%':W

1K"x1H" XFMERS

That were designed for clock lype ap-plications. 110 Vac primary @ 60 Hz.Sacondaries; 8-10 Vac @

300 mA-200 mA50 Vac @ 30 mA-50 mAExcellent for miniature power supplies8 gas discharge displays

P.C. Mount

SPECIAL

S.99

1/16 VECTOR BOARD

0.1" Hole Spacing P-PallernPart No Length Wideth

Price9 20-49

PHENOLIC

64P44 062XXXP

4.50

li 50

169IM4 02XXXP

4.50

17.00

EPOXY

64P44 062

4.50

6.50

GLASS

84P44 062

4.50

8.50

169P44 052

4.50

17,00

169P84 062

8.50

17.00

EPOXY GLASS

169P44 062C1

4.50

17.00

rnpPFRriAD

VECTOR WRITING PENCIL

Veclor Wiring Pen:ilP173 consists ol a Hand held leatherweiglil (under oneounce] lool wliir.tr is used to guide end v/rap insulated wire, fed oft aseil-contained rootaceaOle bobbin, onto component leads of terminals instal-led oo pre-puoched "P" Pattern VeciorOord'. Coonectioos beiweea lirewrapped wire and component leads, pads or terminals are made by soldering.Complele wild 250 FT nl red wire. $9.50 ea.

REPLACEMENT WIRE—BOBBINS FOR WIRING PENCIL(Green)

W36-3-A-Pkg. 3W36-3-BPkg. 3W36-3-C»Pkg. 3W36-3-D-Pkg. 3

IRedl(Clear)(Blue)

$2.40S2.40S2.40S2.40

9V BATTERY CLIP

STANDARD CUPFOR USE WITH 3VTRANSISTOR BATTERIESWITH 4" LEADS

(gj^V

9/$.95

TERMINAL STRIPS

THREE TERMINAL

STRIPS. WITH CENTER

TERMINAL USED FOR MOUNTING US 15/S1.00

AMP TERMINAL PINS

TERMINAL PINS FORMOUNTING COMPONENTSALSO PERFECT FOR USEWITH BOARD CONNECTORSAND SUBASSEMBLIES

MICROPROCESSOR COMPONENTS

JAMES ELECTRONICS IS PROUD TO ANNOUCE. FOR THE FIRST TIME EVER TO THE ELEC-TRONIC HOBBIEST . . .FROM AMERICAN MICRO DEVICES.

8080A $39.95

] AND 8008 SUPPORT COMPONENTS

74LS138 DECODER PERFECT FOR DECODING THE THREEB008 STATE LINES INTO 8 USEABLE LINES FOR ADDRESSLATCHING S3.98

8212 8 BIT INPUT OUTPUT PORT DIRECTLY INTERFACESWITH THE 8390 TO PROVIDE I'O INTERFACE S5.75

25042518

2519252425252527252925322533334174LS670

AY-5-1013

CPU'S

8 BIT CPU

SUPER 80084 BIT 8060

1024 DYNAMICHEX 32 BITHEX 40 BIT512 DYNAMIC1024 DYNAMICDUAL 256 BITDUAL 512 BITQUAD 80 BIT1024 STATICFIFO16X4 REG

UARTS20K BAOD

ROM'SCHAR. GENRANDOM B'TS

519,9539.9539.95

2101210221Q7

RAM'S

256X1

1024X1

256X1

1024X1

4096X1

256X4

1024X1

16X4

256X4

256X4

16X4

1024X1

1024X1

256X1

204BX1

PROMS2048204832X81024

STATIC

DYNAMIC

STATIC

STATIC

DYNAMIC

STATIC

MNOS

STATIC

STATIC

STATIC

STATIC

STATIC

STATIC

STATIC

DYNAMIC

FAMOSFAMOS

BIPOLARSTATIC

S2.256.956.95

ACCESSORIESJ

JOLT 159.95

The JOLT system consists fit a set ol modular rmc-

roconirjuier boards which cm je used singly or tied lo-gelher to produce any desired microcomputer systen

JOLT INCLUDES SOFTWARE. HARDWARE AND ASSEM-BLY MANUALS AVAILABLE FOR IMMEDIATE SHIPMENT.S159.95 in kit 1:rm . . . S249 assembled.alone constitutes a viable computer system complete withcentral processor. I/O, interrupts, timer, read-write mem-ory, and a complete software debug monitor in read-only-

figuration, Them

n syslr'i:

.■:CPU '.yy-ri. which memory.

JOLT SYSTEM DESCRIPTION

JOLT RAM Card — Fully static 4.096 bytes ol RAM with 1microsecond access time and on-board tfeaKJfnfi Hard-ware and assembly manual;, mcuded AVAILABLE FDRIMMEDIATE SHIPMENT. $199.95 kit . . S2B5 assem-bled.

JDLT Pawer Supply — Operates al --5. - 12 and -10voltages. Supports JOLT CPU, 4k bytes ol RAM and JOLTI/O card — or, CPU and 8 1/0 cards. Manuals included.AVAILABLE FOR IMMEDIATE SHIPMENT. $99.95 kit. S145assembled.

JOLT Accessory Bag — Cc-nti'ir. nKiughitiardwareto con-ned one JOLT card to another. Such necessary Hums,?s Matcable, connectors, cord spaces, ha'dware. elc AVAILABLEFOR IMMEDIATE SHIPMENT. S39.95.

JDLT I/O Card (Peripheral Interface Adapter) —2 PIA LSIchips. 32 I/O lines, four interrupt lines, on-board decodingand Standard TTL drive. Fully programmable, Manuals in-cluded. AVAILABLE FOR IMMEDIATE SHIPMENT. S95.50kil . . . S140 assembled.

JDLT Universal Card — Same size [4'i" x 7"), same lormfactor as olhei JOLT cards Completely blank, drilled toaccept 14. 16, 24 or 40 pin sockets. Used for additionaluser memory or I/O control panels. TV inleilnces,keyboards. LEDs. or other interlace logic. AVAILABLE FORIMMEDIATE SHIPMENT. S24.95JOLT +5V Booster Option — Fits onto JOLT Power Supplycard. SupnortsCPU, 16k bytes of RAM —or, CPU and 8kbylns RAM and B l.'O cards — or. CPU anil 4k bytes RAMand 16 I'O can!; Manuals included. AVAILABLE FOR IM-MEDIATE SHIPMENT. S24.95

MULTIPURPOSE KEYBOARDS

AWG

30 AWG30 AWG30 AWG30 AWG30 AWG30 AWG

COLOR

WHITE

YELLOW

RED

GREEN

BLUE

BLACK

WIRE WRAP WIRE

25 FT. MIN. 50 FT.

S2.10 S2.75

tOC FT

S3.50

3,503 503.503.50

3.50

24.0024.0024,0024,00

STANDARD WIRE

25 FT MIN 50 FT

GREEN S3.25

WHITE $7.53

BLACK S1.90

54.30S3.40S2.55

TO ORDER: SPECIFY GUAG: COLOR AND FOOTAGE |25 FOOT MINIMUM)

COLOfl 25 FT MIN

RED SI.55

GREEN 51.45

WHITE S1.25

BLACK SI.25

50 FTS2.05$1.90SI.65SI.65

6' 2 CONDUCTOR POWERCORDS 125V @5A

3/1$

172371723817239

= THREE CONDUCTOR POWER SUPPLY CORDS =TH AWG 0.0. RATING

18(41X34) 2G5 '250W

10A-125V18(41X35) .253 '250W

10A-125V18(41X34] 265 1250W

10A-125V16(41X34) .253 1250W

10A-125V16(41X34) .253 1250W

10A-125V

GREY 1.2.

BLACK Special .99 c

GREY 1.31

BLACK .5!

JE SERIES KITS

Satisfaction Guaranteed. $5.00 Min. Order. U.S. Funds.

California Residents — Add 6% Sales Tax

Write for FREE 1976 Catalog - Data Sheets .254 each

P.O. BOX 822, BELMONT, CA. 94002PHONE ORDERS - (415) 592-8097

JE801 DVM

ill

k

The JE801 is a Ihree and one halt digil. auto polaritydigital voltmeter, in a kit lorm. II Features severaloplions not available in any commercial digital vol-tmeter. Its low cost is perhaps the most imrjortanlfeature, which is achieved by ottering it in a kit lorm.A kil allows the unit to be used by small OEMswhere cost etlectiveness is an important factor, andby the lobbyist who has lo be concerned with costThe onitalso features on card regulators, allowing itlo be operated off a single pljs and minus fifteenrail, unregulated powei supply. The unit has asmall size ol Ihree inches widih. three and threequarters ol an inch lenglh, and one and a quarter

inch heijhl

$39.95 Per Kit printed circuit board

JE803 PROBE

TTL f)TL. RTL, CMOS1 ILOW! (i IPULSEI p Tl!

$9.95 Per Kit

printed circuit board

JE804, JE805 supplies

ii

THE JE804 AND JEB05 ARE POWERSUPPLIES MOUNTED ON A 111 x 31' PCBOARD. THEY ARE AVAILABLE IN =5@300 mA. =6 @ 250 mA, ±12 @ 100mA. SPECIFY VOLTAGE WHEN ORDER-ING.

$9.95 per kit

JE700 CLOCK

The JE700 is a low cost digital clock, butis a very high quality unil. The unit fea-tures a simulated walnul case with di-mensions of 6" x2'/i" x 1", li utilizes aMAN72 high brightness readout, and theMM5314 clock chip. S19.95

13 or ?4 Hour

115 VAC-SI 9.95 per kit.

WALL OR TV DIGITAL CLOCK

12 or 24 Hour 115 Vac25' VIEWING DISTANCE

6 Digit

LED DISPLAY

I4I DL747 (2) MAN

WALNUT CASE .^"W " KIT-AII Comp, 8 Case S34.95

6"x3"<1" Wired & Assembled $39.95

JE010 CALC.

)r fixed mo-place add m

^^^

$12.95

ELECTRONIC ROULETTE

Complete kitwith allcomponentscase andtransformer.

BOUlllli \

A 56 page book on the facts

of Roulette included. $29.95 Per Kit

ELECTRONIC CRAPS

Complete kitwith allcomponentscase andtransformer.

<X2'

0

A 56 page book on the facts

of Craps included. $19.95 Per Kit

SphereRolls into Town

The show wasresounding success...

On a recent Friday evening the chapsfrom Sphere demonstrated their system toabout 50 interested computer hobbyists at adowntown Boston Holiday Inn.

Despite an almost incredible schedule, agood show was put on. Mike Wise, thepresident of Sphere, was rocking a little afterseveral days of going almost 24 hours a day. . . the caravan had driven in from Torontothat day! . . . and it was an every day adifferent city deal.

The product was certainly impressive . . .a computer built into a box the size of avideo display and keyboard unit. That longrow of switches and LEDs on most CPUs hasbeen replaced by a little PROM softwarechip which permits programming to be donevia the keyboard.

It was most pleasant to see the systemturned on and come up ready to be used.The operating system is all built right into itin the PROM so not even a short loadingprogram has to be switched in to get itworking!

The Sphere system consists of theMotorola M6800 microprocessor with anASCII keyboard and interface to the 6800, avideo display generator system, the Motorolaloader, small operating system and monitor.At $860 for the complete kit this is quite apackage.

The Sphere requires an external televisionset for a monitor. It will feed video to thismonitor, or a few parts can be added to thevideo output board which will generate asignal which the TV set can pick up via itsantenna terminals. Some problems with FCClicensing of transmitters seems to have heldup the supplying of these parts with the kititself.

Mike told the group that they are wellalong with a BASIC language package for thesystem and that they expect to have alibrary of about 4000 business orientedprograms available.

The Sphere literature stresses the businessapplications of the system, showing it in usein offices, stores, homes, banks, laboratories,

etc. Since this is the major potential forsmall computer systems this is certainly anenlightened approach. As more and morecomputer stores open up around the countryand literature such as that provided bySphere is gotten out to the owners of smallbusinesses, sales of these systems cannot bebut astronomical.

The Sphere sales literature is extremelywell done .. . and best of all, it is written forthe businessman, not the computer expert.Computer stores should have little trouble inselling this approach to the business world.The utter simplicity of the system willcertainly appeal to the businessman.

The PROM has quite a repertoire andincludes an editor, assembler, debugger,command language, cassette loader, dumperand utilities... all on a 1 KB chip! Since theprogramming is on a PROM, this still leavesthe entire 4 KB RAM available for the userand doesn't tie 1 KB of it up just with theoperating system ... a big plus even attoday's low memory prices.

The PROM operating system permitsrather sophisticated editing techniquesincluding movement of the cursor with ease,scrolling of the lines of text through thebuffer memory, delete lines, add lines,modify lines, etc. The system also permitsthe keyboard to be used for entering pro-grams into the computer using hexadecimalor octal notation. It also enables the user tolook at any address and see what is there . . .change the data if desired ... and then scanon through succeeding bytes. Not a badbunch of programs to be crammed into one1024 byte PROM!

Another plus is the comprehensive Spherebook of instructions. It is not onlyamazingly complete (particularly when youconsider how short a time the company hasbeen in existance), it is also written inlanguage which is not beyond the relativenewcomer to computers.

In all, the show was a resounding successin Boston and a tired, but happy Spherecrew packed up for the next night in NewYork.-

80

THE SUNTRONIX MODEL KBD IV Keyboard is ideally suited as a generalpurpose ASCII Keyboard for data terminal applications. This keyboard more thanmeets the needs of the data entry market for long life and reliability.

The KBD IV utilizes the 2 key rollover solid state read-only MOS memory allowingencoded outputs to be strobed out as each key is depressed. A second key may bedepressed concurrent with the first, but the second key encoded output will not bestrobed out until the first key is released. This feature prevents ambiguity ofcharacter codes as a result of two keys being depressed in rapid succession.

ELECTRICAL SPECIFICATIONS:

* Voltage requirements - +5.0 V and -12.0 V

* Power consumption — less than 200 mw

* Outputs - standard ASCI I; 7 bits + strobe

* Negative or positive logic output, jumper selectable

* Output connector — standard 14 pin DIP IC socket

* Three modes — normal, shift & control

MECHANICAL FEATURES:*Size- 121/4" x 6%" x 21/2"

* High grade glass epoxy PC board

* Keyboard ROM SMC KR2376 40 pin MOS

* Electronic shift lock, not mechanical

* Keyswitches one integral assembly, not individual keys

* Switches have four-finger phosphor bronze contacts with gold inlay

* Keycaps are 2-shot high strength ABS plastic

These keyboards are available off the shelf in two forms — fully assembled andunconditionally warranteed against defects in manufacture or materials for a fullninety days, or in the more economical kit version. Kit parts are fully warranteedagainst defects in manufacture or materials for a full ninety days. In either version,full instructions are supplied for operation, including specifications and data sheets.In the kit version, complete instructions are supplied for the assembly process. Areasonably competent technician can completely assemble and test this keyboard inone evening. All parts needed are included.

INTRODUCTORY PRICES

Factory assembled - $74.95 ppd.Complete kit, w/instructions - $64.95 ppdPlease add $1.00 handling per order.Minimum order — $5.00

auirrafliM mm

uvi

360 Merrimack St., Lawrence, Mass. 01843(Telephone orders: 617-688-0751 603-434-4644)

81

WORDS FROM A READER

NEVER YOU MIND

OCCUPANTBOX BYTEPETERBOROUGHNH 03458

Once that happy timecomes to the ham, linkinghome brew computerterminals to their Teletypeset-ups will combine twoof the most fascinatinghobbies ever conceived bythe minds of men.

TASTY BUT NOT FILLING

A friend of mine showed me the firstthree issues of your new magazine. I foundthem extremely tasty but not at all filling;please send more BYTEs as soon as possible!(I have sent my subscription order in.)

I have just one "bit" of criticism: Pleaseadopt some designations for end-of-article,continued-on-next-page, and continued-on-page-n! Their use is not essential, but myETP (English Text Processor) has becomeused to finding them (it's a heuristic routine,you see) and often wastes considerable timewhen they're not there.

Possibilities include the IBM end-of-filecode, /*, for end-of-article, or the ASCIIabbreviations ETX (end of text) and FF(form feed) for end-of-article and go-to-next-page, respectively. And FF nn could beused for go-to-pagc-nn. Alternatively, somecommon notations from assembly languagescould be used: END, BR *+1 (go to nextpage), and BR nn (go to page nn); but onsecond thought, these would probably notbe as easily recognized by as many people asthe ASCII symbols.

Hope to see your next issue in mymailbox. Meanwhile, I'm going to try topersuade the proprietors of my college book-store to carry BYTE. Wish me luck!

Jamie E. HanrahanFullerton CA

Regarding end of file marks, you shouldnotice by now that articles in BYTE's latestissues are terminated by a typeset "■".We've considered other things ranging froman "EOF" to an END statement. Thisconvention of the black square is simple andeffective, so it became the obvious choice.

Your answer to a reader's question on thedifference between a "bit" and a "byte" anda "word" was pretty good, except for thedefinition of a word. The difference is mademore apparent if we look at the evolution ofcomputers.

Early, so-called first generation machinesgenerally performed arithmetic operationsonly in accumulators, which were of a fixedbit length. This length was called a word.Since all operations were done in accumula-tors, each storage address usually had thesame bit length, so a word was also thenumber of bits obtained in one storagereference.

In the second generation, systems wereclassified as either business or scientific. Thescientific machines generally used binaryarithmetic, performed in accumulators asbefore. Business systems, however, did nothave accumulators, but used storage-to-storage arithmetic. In this system, the con-tents of two storage locations were input tothe ALU, and the ALU output was stored inone of those locations. These machines wereof variable word length, in that a non-databit in each storage location was used to markthe end of a word. Since most of thesemachines used 6 data bits and each of the 64bit combinations had an assigned graphic,each storage location was usually referred toas a character.

The IBM 360 series was the first of thethird generation, and was designed to begeneral purpose; that is, either scientific(binary) or business (decimal). Its generalpurpose registers (which could be used asbinary accumulators or index registers ormemory address registers) were 32 bits long,so this was called a word. The floating pointaccumulators were 64 bits, or a doubleword. Thus the binary arithmetic instruc-tions could obtain, in one storage reference,either a double word, a word, or a half word(16 bits). Decimal arithmetic was performedstorage-to-storage, with the instruction con-taining the length of each operand. Since theterm word was used to refer to the register(accumulator) length, a new term wasneeded to refer to the number of bitscontained at any single storage address; IBMchose the term byte, and in the 360 series abyte was 8 bits.

In most micros to date, the number ofbits at one storage address (a byte) is thesame as the length of the accumulator(word), so the terms are interchangablc,whether it is 8, 12, or 16 bits. But whoknows what the future will bring?

R. S. DownsRaleigh NC

82

OSCILLOSCOPE GRAPHICSINTERFACE

The Oscilloscope Graphics Interface inthe October 1975 BYTE is a useful additionto any microcomputer system. However, ifthe display ever got really busy, it looks likethe screen would be a mess. This is due tothe fact that when a Set X or Set Y is used,the scan continues from that point on downthe screen. Rapid access to the 2102's, as inany sort of "moving picture" presentation,would never let the trace get down thescreen very far.

A simple modification which would alle-viate the situation would be to have twocounters feeding the 2102 address lines, onefree running at 100 kHz all the time, and theother under program control. With threestate buffers (i.e., 8097's), the memory writeof new information would gate only thedesired address to the 2102's, after whichthe other address (from the 100 kHzcounters) would again be applied to the2102's. Thus the scan would pick up shortlyafter the point where it left off.

For readers with an infrequent screenupdate, this is not necessary, but for thosewith fast processors doing frequent displaymodification, this approach should worknicely.

Roger FrankEnglewood CO

You are right, Roger, and the hardwaremodification you propose will correct thesituation. Another way to avoid running intothat problem is to use appropriate software:Simply, do full screen updates when changesare desired.

THOUGHTS ON TELETYPE

You have asked for comments fromBYTE subscribers about themselves, andanything else that may come to mind, andhere are my thoughts on what I had hopedfor and anticipate in your magazine.

First off, I am a ham, W2ZPW, for some26 years. That automatically signifies aGeneral class ticket or better, and Generalclass it is. I am not interested in any higherclass of license for a very good reason. I amentirely deaf. Any additional frequenciesearned with a higher class of license wouldrequire hearing for phone or CW (Con-tinuous Wave or Morse code for anyone whojust immigrated from the Moon).

My sole interest in ham radio is inTeletype. Since computer technology runsclosely parallel, in many ways, with radio

Now that you've got your computer, sitdown and share a byte with a friend.TRI-TEK Acoustic Couplers and DataModems can get your system on speakingterms with your buddies' systems for theprice of a phone call.

Trade programs, get extra computing power,

combine memory capacity or play computer

games across town or across the country —

anywhere you can get to a phone.

If you don't have a computer, turn a

TELETYPE or video display into a remote

ftPT VflllD \o) TrcrF'(5 terminal which will talk to any time-share-

IIK J_5) JJ, JJ, gy system found in most large cities or at

universities. Form your own club, make one

1|*L TUt U computer and share it over the phone lines

I UUL I lLl\ with your terminal.

Hundreds of these quality units are in service in industry and business;and TRI-TEK is now making them available to the small system users infactory-assembled or kit form.

Models available to do your job in TTY, RS232 or DAA, Bell 130.

Write for data sheets or use the reader service sheet.

12 BIT MICRO PROCESSOR CHIP -

IM6100 12 bit CPU recognizes PDP8/E, MP-12 and D-112 Instruction set.

FEATURES: silicon gate C MOS, single supply, or chip clock, power-oninitialize. All interface control signals produced in CPU.DMA, interrupt, dedicated control panel, direct/indirect/auto indexed MEM addressing 60.00

TRANSPARENT CONTROL PANEL CHIPS -

Allows IM6100 to free itself of control panel supervision. Control panelfunctions can be increased simply by adding additional control panel RAM,easing the main memory useage.IM5603 P ROM/IM5501 RAM set 21.00

SET OF DATA FOR IM6100 SYSTEM 4.00

« — «,- ^jv7tRi-tek, mc

flyers of new and \t/ 6522 N 43rd Avenue

surplus electronic \ / .„.,

components. \/ Glendale AZ 85301

solderless

plug-intie-points.

fer

PistrstriPs

Super-Versatile™

building blocks for experimental circuits

Universal .10" matrices ofsolderless, plug-in tie points

For all DIP'S and discreteswith leads to .032" dia.

Interconnect with any solidwire up to No. 20 A.W.G.

Nickel-silver terminals

ORDER BY PART NUMBER923277 distribution strip . . .$2.50923261 terminal strip $12.50

Create custom breadboards in minuteswith these new instant-mount strips.DISTRIBUTION STRIP (top) contains2 continuous buses of 12 connected 4-tie-point terminals. Size: 6.5" by .35".TERMINAL STRIP contains 128 5-tie-point terminals, holds up to nine 14-pinDIP'S. Size: 6.5" by 1.36". Integral,non-shorting, instant-mounting back-ing permits quick build-up of specialbreadboards using any mix of strips.

Other models available.

We honor M.C. and B.A.C. charges.

Add sales tax on OH and CA orders.

(F.O.B. Painesvilleon company P.O.'s.)

Dealer inquiries invited

Add—»-fees fromthis chart.

SHIPPING/HANDLING

Up to $10.00 SI.00

S10.01 toS25.00 1.5025.01 to 50.00 2.00

.70

80

All products guaranteed to meet or exceed published specifications

AP PRODUCTS INCORPORATED

Box 110-G* Painesville, OH 44077* 216/354-2101

83

frequency communications, there is nodoubt in my mind but that a goodlyproportion of articles to come will beslanted toward the amateur radio enthusiast.Considering this possibility it is certainly nottoo much to hope for to ultimately see asimple and inexpensive commercial ASCII-to-Baudot converter that could readily beused to actuate the widely used Baudotcoded amateur Teletype equipment.

Use of ASCII code is being pondered andwill no doubt soon be written into FCCregulations. But even so, those amateurs whohave RTTY using five level Baudot equip-ment will mostly continue to do so becauseit is in virtual universal use. It is myconsidered opinion that ASCII will take holdto a greater degree than 100 WPM Baudotdid, but by means of soon to be devisedconverters (of a simple and inexpensivenature, it is hoped), switching from Baudotto ASCII, and back again, will becomevirtually universal.

Once that happy time comes to the ham,linking home brew computer terminals totheir Teletype set-ups will combine two ofthe most fascinating hobbies ever conceivedby the minds of men (and women). It thenbecomes possible to visualize a means ofcommunication combining cable and radio.Where more than one mini-computer systemis linked by way of telephone lines it willbecome a simple matter to "patch" thephone line into a radio station and rebroad-cast the computer output to form input toanother computer repatched back into aphone system elsewhere at a distant point. Itopens entirely new vistas that may take a bitof deep thinking to even visualize at thispoint. The possibilities are so broad in scopethat I hate to even begin to enumerate them.

In view of the FCC restriction made uponhams to use only five level Baudot code,most of the amateur equipment in currentuse is American made Teletype Corporationequipment. Some model 14, mostly tapegear, is used. Model 15 printers and thecompanion model 19 sets combine model14 and 1 5 to form a composite set that willeither produce coded tape for transmission(but not be received from on the air) orprint out on rolls copy that is received orsent. The model 15 printers are often obtain-able for as low as $25 and rarely higher than$100 for the model 19.

The ultimate in Baudot equipment atpresent is the model 28. Obsolete as theymay be where computers are concerned,they are highly prized for ham use. There arefew model 33 and 35 Teletype machinesamongst amateurs but since they aredesigned for ASCII use they require somemeans of conversion to Baudot coding.

As soon as the FCC removes the restric-tion against ASCII coding, a magazine suchas BYTE will then become the obviousvehicle for guiding both amateur radio andcomputer enthusiasts to combine theirhobbies for the greatest enjoyment imagin-able. The possibilities are endless and limitedonly by the imagination.

Mack O. SanterBrooklyn NY

It looks like there is plenty of possibilityfor the synthesis of amateur radio andcomputer activities. It will be interesting tosee just what people actually do with thisnovel application of computers. BYTE willreport on developments in the radio/com-puter field as they occur.

QUESTIONS -

STAR TREK, SURPLUS

CHIPS

In the first three issues of BYTE, whichare just what the doctor ordered, you'vementioned the game of Star Trek a numberof times in your columns. I am a Star Trekfreak with an IBM 1130 at my disposal. Isthere any way of obtaining a Star Trekprogram written in Fortran IV or otherinformation on the subject?

In the near future, will any companies bemarketing a 16 bit computer utilizingNational's IMP-16 CPU chip?

What companies carry used or surplusTeletype machines in working condition atreasonable prices? Perhaps your magazinecan do a series on the surplus market place.

In the first issue you published a reviewof the RGS 008A computer by JamesHogenson. I found this very informative andam looking forward to more such reviews,perhaps on the Altair 8800 or SWTPC's newMotorola based 6800 computer system.

Looking forward to more fantastic issuesof BYTE.

Richard WexlerTexarkana TX

There is a BASIC version of Star Trekcalled Space War listed in complete detail in101 BASIC Games, published by DEC inMaynard MA. See the book review in thisissue. The closest product to an IMP-16 yetavailable is the National PACE chip, its LSIsingle-chip successor.

Continued on page 86

84

[

5% OFF OH ORDERS OVER S50.001 0% OFF ON ORDERS OVER $1 00.0015% OFF ON ORDERS OVER $250.00

TTL

7451

.17

74154

1.25

7400 $

.14

7453

.17

74155

1.07

7401

.16

7454

.17

74156

1.07

7402

.15

7460

.17

74157

.99

7403

.16

7464

.35

74158

1.79

7404

.19

7465

.35

74160

1.39

7405

.19

7470

.30

74161

1.25

7406

.35

7472

.30

74162

1.49

7407

.35

7473

.35

74163

1.39

7408

.18

7474

.35

74164

1.59

7409

.19

7475

.57

74165

1.59

7410

.16

7476

.39

74166

1.49

7411

.25

7483

.79

74170

2.30

7413

.55

7485

1.10

74173

1.49

7416

.35

7486

.40

74174

1.62

7417

.35

7489

2.48

74175

1.39

7420

.16

7490

.59

74176

.89

7422

.26

7491

.97

74177

.84

7423

.29

7492

.71

74180

.90

7425

.27

7493

.60

74181

2.98

7426

.26

7494

.94

74182

.79

7427

.29

7495

.79

74184

2.29

7430

.20

74%

.79

74185

2.29

7432

.23

74100

1.30

74187

5.95

7437

.35

74105

.44

74190

1.35

7436

.35

74107

.40

74191

1.35

7440

.17

74121

.42

74192

1.25

7441

.98

74122

.45

74193

1.19

7442

.77

74123

.85

74194

1.25

7443

.87

74125

.54

74195

.89

7444

.87

74126

.63

74196

1.25

7445

.89

74141

1.04

74197

.89

7446

.93

74145

1.04

74198

1.79

7447

.89

74150

.97

74199

1.79

7448

1.04

74151

.79

74200

5.90

7450

.17

74153

.99

LOW POWER TTL

74L00

. .25

74L51

S .29

75L90

S1.49

74L02

.25

74L55

.33

74L91

1.45

74L03

.25

74L71

.25

74L93

1.69

74104

.25

74L72

.39

74L95

1.69

74L06

.25

74L73

.49

74L98

2.79

74L10

.25

74L74

.49

7-11.164

2.79

74L20

.33

74178

.79

74L165

2.79

74130

.33

74L85

1.25

74L42

1.49

74L86

.69

HIGH SPEED TTL

74H00 $ .

74H01

74H04

74H08

74H10

74H11

74H20

74H2174H2274H3074H4074H5074H5274H53

S .25

8000 SERIES

80918092809581218123813082008210

S .53

.531.25

.801.431.972.332.79

82148220823085208551855285548810

$1.491.492.191.161.392.192.19.69

9000 SERIES

90029301

$ .35

93099312

$ .79

.79

881188128822883088318836888082638267

96019602

J

74H5574H6074H6174H6274H7274H7474H76

$ .59

.892.192.192.19

.251.195.792.59

JANUARY SPECIALS

7447

BCD to 7 seg. decoder drvr.

7483

4 bit binary full adder

7490

Decade counter

74151

8 channel multiplexer

74153

Dual 4 input multiplexer

74180

Parity generator checker

74193

Binary up/down counter

9602

Dual one shot .69

75C00

Quad 2 input NAND gate (CMOS)

LINEAR

301

Hi perf op amp mDI

339

Quad comparator DIP

320T

5V neg. V reg. 5V

320T

12V neg. V reg. 12V

340T

12V neg. V reg. 5V

340T

15V pos. V reg. 15V

MEMORIES

CLOCK CHIPS

$ .69

2102

$2.65

5311 $3.95

.59

2102-1

2.75

5312 2.95

.45

2102-2

2.75

5314 3.95

.59

82S23

3.25

5316 4.15

.79

F93410

CALCULATOR CHIPS

.79.99

256 bit RAM

2.19

5005 $1.69

.251.291.391.391.391.39

8038 FUNCTION GENERATOR

Voltage controlled oscillator — sine, square, triangularoutput. 16 pin DIP with data $3.95

7001 CLOCK CHIP

4-6 digit, 12-24 hr. alarm, timer and date circuits — withdata $6.95

DVM CHIP 4% DIGIT

MM5330— P channel device provides all logic for 4Vi digitvolt meter. 16 pin DIP with data $14.95

*

PULTRUN V.I.P. QUARTZ REGULATEDLED WATCH

MEN's 5 function — hours, minutes, month,

day and seconds.Latest slim-line design (pros. W thick)Four year calendar — requires setting only

on February 29th.One year warranty against all defects in

material and workmanship.Built-in phototransistor adjusts intensity of

display.Gold tone — with adjustable mesh strap.

$99.50

+$1.50 Shipping

& Handling

Usual 10% Discount

Applies

Data sheets on request. With order add$.30 for items less than $1.00 ea.

LED's

MV10B

MV50

MV5020

ME-I

MAN1

MAN2

MAN4

MAN5

MAM,

MAN7

MAN3

MANSMAN66MCT2

Red TO 18Axial leadsJumbo Vis. Red(Red Dome)Jumbo Vis. Red(Clear Dome)Infra red dill, domeRed 7 seg. .270"Red alpha num .32"Red 7 seg. .190"Green 7 seg. .270".6" high solid seg.Red 7 seg. .270"Red 7 seg. .127"straight pinsYellow 7 seg. .270".6" high spaced seg.Opto-iso transistor

2.194.391.953.454.251.19

.293.453.75

110111031702A

2102-2

5203

5260

5261

5262

7489

8223

74200

256 bit RAM MOS1024 bit RAM MOS2048 bit static PROMUV eras.

1024 bit static RAM2048 bit UV eras PROM1024 bit RAM1024 bit RAM2048 bit RAM64 bit ROM TTLProgrammable ROM256 bit RAM tri-state

t 1.503.95

17.954.25

17.952.492.695.952.483.695.90

MULTIPLE DISPLAYS

NSN33 3 digit .12" red led 12 pin

fits IC skt.

5 digit .11 led magn. lens

com. cath

4 digit .11 LED magn.

lens comm. cath.

9 digit 7 seg led RH

dec dr. magn. lensSP-425-09 9 digit .25" neon direct

interface with MOS/LS1,

180 VDC, 7 seg.

CALCULATOR »CLOCK CHIPS

5005

MM5725

MM5736

MM5738

MM5739

MM5311

MM5312

MM5313

SHIFT REGISTERS

1024 bit accum. dynamic

mDIP

500/512 bit dynamic mDIP

QUAD 25 bit

937944946

949962963

12 DIG 4 fund fix dec

Same as 5001 exc

btry power

12 DIG 4 fuel w/mem

8 DIG 4 fund chain & dec

18 pin 6 DIG 4 fund

8 DIG 5 funct K & mem

9 DIG 4 fund (btry sur)26 pin BCD 6 dig mux24 pin 1 pps BCD

4 dig mux

28 pin 1 pps BCD

6 dig mux

24 pin 6 dig mux

40 pin alarm 4 dig

2.792.991.984.455.355.354.45

4.454.455.39

320322324339340K

340T

372

373

376

377

380

380-8

381

382

550

555

556A

560

562

565

366

567

709

710

711

723

739

741

747

748

1304

1307

1458

1800

7524

8038

8864

75150

75451

75452

75453

75491

75492

:

LINEAR CIRCUITS

300 Pos V Reg (super 723) TO-5 $ .71

301 Hi Perf Op Amp mDIP TO-5 .29

302 Volt follower TO-5 .53

304 Neg V Reg TO-5 .80

305 Pos V Reg TO-5 .71

307 Op AMP (super 741) mDIP TO-5 .26

308 Mciro Pwr Op Amp mDIP TO-5 .89309K 5V 1A regulator TO-3 1.35

310 V Follower Op Amp mDIP 1.07

311 Hi perl V Comp mDIP TO-5 .95319 Hi Speed Dual Comp DIP 1.13

Neg Reg 5.2, 12, 15 TO-3 1.19

Precision Timer DIP 1.70

Quad Op Amp DIP 1.52

Quad Comparator DIP 1.58Pos V reg (5V, 6V, 8V, 12V,

15V, 18V, 24V) TO-3 1.69Pos V reg (5V, 6V, 8V, 12V,

15V, 18V, 24V) TO-220 1.49

AF-IF Strip detector DIP 2.93

AM/FM/SSB Strip DIP .53

Pos V Reg mDIP 2.42

2w Stereo amp DIP 1.16

2w Audio Amp DIP 1.13

.6w Audio Amp mDIP 1.52

Lo Noise Dual preamp DIP 1.52

Lo Noise Dual preamp DIP .71

Prec V Reg DIP .89

Timer mDIP .89

Dual 555 Timer DIP 1.49

Phase Locked Loop DIP 2.48

Phase Locked Loop DIP 2.48

Phase Locked Loop DIP TO-5 2.38

Function Cen mDIP TO-5 2.25

Tone Decoder mDIP 2.66

Operational AMP TO-5 or DIP .26

Hi Speed Volt Comp DIP .35

Dual Difference Compar DIP .26

V Reg DIP .62

Dual Hi Perf Op Amp DEP 1.07

Comp Op Amp mDIP TO-5 .32

741 Dual Op Amp DIP or TO-5 .71

Freq Ad\ 741 mDIP .35

FM Mulpx Stereo Demod DIP 1.07

FM Mulpx Stereo Demod DIP .74

Dual Comp Op Amp mDIP .62

Stereo multiplexer DIP 2.48

LH2111 Dual LM 211 V Comp DIP 1.70

3900 Quad Amplifier DIP .35

Core Mem Sense AMPL DIP .71

Voltage contr. osc. DIP 4.25

9 DIG Led Cath Drvr DIP 2.25

Dual Line Driver DIP 1.75

Dual Perepheral Driver mDIP .35

Dual Peripheral Driver mDIP .35

(351) Dual Periph Driver mDIP .35

Quad Seq Driver for LED DIP .71

Hex Digit driver DIP .80

satisfaction guaranteed. Shipment will be made via first class mail in U.S., Canada andVlexico within 5 days from receipt of order. Add $.50 to cover shipping and handlinglor orders under $25.00. Minimum order $5.00. California residents add sales tax.

INTERNATIONAL ELECTRONICS UNLIMITED

— P.O. BOX 1708/ MONTEREY, CA. 93940 USA>-=J§£ PHONE (408) 659-3171

NYBBLE

ROLLING HIS OWN

At long last one of the things that I havewondered about all my life has been defined.I refer to your answer to Stephen Holland'sletter on page 84 of issue 3. You define anybble as half of a byte. 1 am a fishermanand had never before known exactly what anybble was. Now will you define stryke?

All kidding aside, I enjoy the magazinegreatly. I am a nuts and bolts hardware typewith a good technical background, firstphone and amateur extra, and enjoy all thearticles. The ones on programming are aboveme yet. No experience in that area. So, onpage 88 I give them all 10 (shades ofAnalog).

Keep up the good work with a balancedmagazine that will appeal to all of us for weall need to know something about eachother's areas.

Roy W. DancyDothan AL

A stryke is what happens when lightninghits a computer. It gets all shaken up andrefuses to work.

I am particularly encouraged to see amagazine of this type published; most of theother publications available either assumethe background of an electrical engineer orcomputer science theoretician, or assume nobackground at all. I've always wanted acomputer of my own, and when the"Mark-8" project came along, I jumped atthe chance to get one. I have it almostfinished, but have had some problems inobtaining simple items like a decent powersupply at a reasonable price (not trusting myelectrical theory enough to build my own),or attractive paddle switches for a frontpanel. Fortunately I have not been workingalone, having a partner building anotherMark-8 along with me; we order our com-ponents together and take advantage ofquantity discounts.

Your magazine kept my wheels turninginto the early hours of the morning,especially the material on graphics displaydevices. The 8008 is cheap and that is animportant consideration for anyone on agrad student's budget. Perhaps in the future,the other chips and kits will come down inprice and us poor folks will get a chance toplay with the other stuff.

A well done Spacewargame is one of the mostinteresting strategy andhand-eye coordinationtests ever invented.

SPACEWAR,ANYONE?

Let me first add a word of appreciationto all the others you have received. BYTE isa great magazine. Be sure and send me myrenewal notice when it comes due.

The other item I would like to bring up isSpacewar. This is a game that was played onconventional computers 5 years ago. Howmuch memory does it take? Do you knowwhere I could get a copy of a program ofone of its versions?

Stewart SheltonMadison WV

Thank you Stewart. We cannot reel off adefinite answer on memory requirements forSpacewar, but do believe a reasonably com-petent Spacewar application is within therealm of the home brew computer tech-nology as it stands today. We 've seen imple-mentations done on minicomputers with lessthan 32K 16-bit words. When we get somegood articles on this application, you 'II seethem printed in the pages of BYTE. A welldone Spacewar game is one of the mostinteresting two-person strategy and hand-eyecoordination tests ever invented.

Robert JonesWashington DC

PS, Any chances of an organized projectto get a hardware text editor, loader, assem-bler for 8008 systems?

It is good to hear that you are getting acomputer up and running, Robert. An 8008will certainly serve you faithfully andreliably once you get your system up,running and debugged. I may be critical ofthe 8008 at times because it is a machinewith which I have intimate familiarity: myfirst home brew computer learningexperience was an 8008. Aside from therelatively slow speed of an 8008, it is quitecapable of executing all the typical homebrew computer person's requirements.

HOUSEKEEPING COMPUTER

My husband just received his first copy,October, of BYTE yesterday, and as usual Iglanced at it as I brought it in. Surprise! Anarticle just for me! Most of his magazinesdon't interest me too much, because theirarticles are too technical. But Richard Gard-ner's article was fascinating. We almostfought over who got to read the magazine.

86

The main reason the article was sointeresting to me is that that is almostexactly our story. We have our own com-puter (Altair 8800 with 9K of memory), andwe have been planning to use it in most ofthe ways you mentioned. Soon I will beallowed to put my food planning on thecomputer: recipes, menus, nutritional plan-ning, seasonal shopping, etc. I think I'll evenkey it to alternate speedy meals for dayswhen dinner starts late. Keith has alreadybegun thinking of eventually using it tocontrol our interior environment, which willbe very helpful in maintaining proper storageconditions for our year's food supply. Ithink he is even planning to use it to playselected music throughout our dream housefrom a central control center to speakers inthe various rooms. His original plan was todevelop an information retrieval system, toreduce the space required in filing. (We havea 4-drawer legal size file cabinet, full, as wellas many books, notebooks, etc.) And wehave already been having the neighbor kidsin playing with the computer. When we getthe terminal and cassette recorder con-nected, our only limit will be the sky (or is itthe memory?).

I'm looking forward to hearing moreabout home computers, and would appre-ciate help in programming my food pro-grams, as I don't know much of the tech-nical aspects.

Carol H. KendallVernal UT

LOGICAL INERTIA

Yes indeed, by all means, instantly entermy subscription to your fabulous, fascin-ating, incredible magazine. My imaginationraces at the thought of a Klugeharp. TVtypewriters titilate my thoughts. Do it . . .my check is enclosed.

Allow me to share with you a noticeposted on the wall of a major computermanufacturer I once was associated with:Today's computers execute instruc-tions in the sub-microsecond range.This can cause programs to developconsiderable logical inertia, makingHALTS extremely dangerous. Thefollowing technique is suggested whena HALT is necessary:

Stop HALT

HALT In case still skiddingGOTO Stop

L. E. StaplesSan Antonio TX

As with all software problems, the solu-tion is a mass of instructions.

in*

,rv*es

models

for fast

building and

testing of i

solderless

plug-intie-points

photoACE 227

On all models.../ simply plug in yourcomponents and inter-connect with 22-ga. solidwire. All models accept allDIP's, TO-5's and discreteswith leads up to .032" diameter.Multiple buses can easily be linked for power and ground distribution,reset and clock lines, shift command, etc. Bases: gold-anodized alumi-num. Terminals: non-corrosive nickel-silver. Four rubber feet included.

obsoletes *'

ordinary

breadboards

Order

ACE

Tie

DIP

No.

No.

Board Size

Price

No.

Model No.

Points

Capacity

Buses

Posts

(inches)

Each

923333

200-K (kit)

728

8 (16's)

2

2

4-9/16x5-9/16

918.95

923332

208 lassem.)

872

8 116's)

8

2

4-9/16x5-9/16

28.95

923334

201-K (kit)

1032

12 114s)

2

2

4-9/16x7

24.95

923331

212 (assem.)

1224

12(14's)

8

2

4-9/16x7

34.95

923326

218 (assem.)

1760

18 114's)

10

2

6-1/2x7-1/8

46.95

923325

227 (assem.)

2712

27 (14'sl

28

4

8x9-1/4

59.95

923324

236 (assem.)

3648

36 114's)

36

4

10-1/4x9-1/4

79.95

We honor M.C. and B.A.C. charges.

Add sales tax on OH and CA orders.

(F.O.B. Painesville on company P.O.'s.)

Dealer inquiries invited

Add—*fees fromthis chart.

SHIPPING/HANDLING

Up toSIO.DO S1.00

S10.01 10 $25,00 1,5025.01 to 50.00 2.00

All products guaranteed to meet or exceed published specifications

AP PRODUCTS INCORPORATED

Box 110-G • Painesville, OH 44077 • 216/354-2101

Bulk Memory

Microcomputer Audio

Cassette Interface

$835°

o Records and plays back throughstandard TTY interface

o Variable BAUD rate

o Single +5V supply

Unit Quantity

o Rate factory set at 300 BAUD for use with inexpensiveaudio cassette recorder

Send To: SOUTHWEST

DEVELOPMENTCOMPANY

13777 North Central Expwy.

Suite 416

Dallas, Texas 75231

214-231-2558

"I Enclosed is check for $83.50. Please send my cassette—interface immediately.

j I Please send cassette interface C.O.D. Enclosed is my check'—for $8.50 . I will pay postman $80.00 upon delivery.

Name

Address.City

State

Zip

87

BOOK REVIEWS

Because they are simplyprogrammed, there areendless small games ofchance, games involvingout-guessing the computer,and venerable "ancient"games, often with moderntwists thrown in.

Many of these programsare over-simplified versionsof the "real" games, dueto the dual constraint ofthe BASIC language andgenerally limited computerresources, but this makesthem even more attractivefor the microcomputeruser.

101 BASIC Computer Games, Digital Equip-ment Corporation. Maynard, Mass. $7.50.

Before you dismiss this as just another ofthe plethora of BASIC game books, notethat 707 BASIC Computer Games claims thedistinction of being the "first [circa July1973] collection of games all in BASIC,"and "the only collection that contains botha complete listing and a sample run of eachgame along with a descriptive write-up."

The preface cites the educational value ofgames as one of the prime motivations forthe book. This is a fact which no one wouldseriously contest, but which computercenter directors seem to overlook as theycontemplate the hours of wasted computertime. Since time on our home systems isnever wasted, by definition, this shouldn'tpose a problem.

Most of the games in the book arecomputer simulations of simple games ofchance, sports, "ancient" games, and boardor card games. And, as the preface adds, veryfew of the games use the innovative capa-bilities of the computer "to come up withsomething new and truly unique."

The authors of this collection have, forthe most part, put an imaginative orhumorous illustration with each game. Theformat consists of a short descriptive write-up of the game, any special language orcomputer requirements, a reference to (andsometimes personal notes from) the author,and a listing of the game, along with sampleruns.

Because they are simply programmed,there are endless small games of chance,games involving out-guessing the computer,and venerable "ancient" games, often withmodern twists thrown in. For example,there's AWARI, an ancient game of rotatingbeans in a pit; BAGLES, a 3-digit numberguessing game that teaches simple logic;BUG, a dice-rolling game that draws a bugpart-by-part; CHOMP, involving eating acomputerized cookie, while trying to avoid

eating the poisoned piece; the ancient gameof GUESS, where the user tries to guess thenumber the computer is "thinking of";HANG, the age-old game of hang-man, withthe added "bell and whistle" of drawing thehung man part-by-part; and TOWER, a gameprogram that helps the user attempt to solvethe old, old puzzle of the Towers of Hanoi,providing a graphic display of each step onthe way.

There are dozens of standard game-playing or sport-simulating programs. Forexample, in the card game area, we haveACEYDU, an acey-deucey game; BLKJAC, avery comprehensive (Las Vegas rules) black-jack game; POKER; and the old card gameof WAR. The book also sports baseball,basketball, bowling, boxing, darts, bull-fighting, high school and professional foot-ball, golf, ice-hockey (against Cornell!), andparachuting games. Board games includebingo, checkers, Go, Monopoly, Nim, andthree-dimensional Tic-Tac-Toe (none ofwhich embody much computer intelligence,unfortunately). The simulations includegames of battleship, gunboat, a World War IIbombing mission, Can-Am road racing, CivilWar battles, fur-trading, governing theancient land of Sumeria, ruling a modernisland wisely, successful pizza-delivering,Apollo capsule landing, lunar landermaneuvering, space war, and a stock marketsimulation. The gambling games and gamesof chance are even more numerous.

Many of these programs are over-simpli-fied versions of the "real" games, due to thedual constraint of the BASIC language andgenerally limited computer resources, butthis makes them even more attractive for themicrocomputer user. A few of the games orequite comprehensive and thus rather large:blackjack, pro football, Can-Am racing,lunar landing, and space war (which is reallya complete Star Trek simulation).

707 BASIC Computer Games includes afew novelty and scientific programs such asBANNER, which prints large letters onstandard terminals in a banner-like fashion,

88

%

I1

S. D. SALES CO.

6 Digit Digital Clock Kit

We wanted our word to mean something to you. Whenwe first introduced our clock we used such words as"impossible", "unbelievable bargain", "prime qual-ity", and "unconditional money back guarantee." Weanticipated selling several hundred kits. Your responseto our clock has been fantastic. Now several thousandkits later, we hear such comments as "outstandingvalue", "exceptional service", "I can't believe it", etc.One enthusiastic customer even wrote saying it was"the best thing since bottled beer."

Here's What The Kit Includes:

MM5314 National Clock Chip with socketCommon Cathode Led Readouts (.25 in. char.)NPN and PNP Driver Transistors #/\qcPush Button Switches for time set ▼ Q«'JSwitch for Time Hold J (KIT)

Filter CapIN4001 Rectifiers

1 - IN914 Diode

2 - .01 Disc. Caps

9 - Carbon Resistors

WITH SPECS.

Transformer POSTPAID

$1.50P.C. BOARD FOR ABOVE$3.00 each

tt^

§£

£

£*&

&

&

INTEL 1702A 2K ERASEABLE PROM'S $6.95

We tell it like it is. We could have said these werefactory new, but here is the straight scoop. We boughta load of new computer gear that contained a quantityof 1702A's in sockets. We carefully removed the parts,verified their quality, and are offering them on one heckof a deal. First come, first served. Satisfactionguaranteed.

PROFESSIONAL QUALITY STEREO HEADPHONES

Here is the kind of super deal that S. D. is famous for.Treat your ears to a super sound at a super price. Softpadded ear cushions, lightweight, fully adjustableheadband, long coiled cord, wide response. $6 PostPaid - NEW IN ORIGINAL FACTORY BOXES

SALE ON CUT LEAD SEMICONDUCTORS

Leads were cut for PCB insertion. Still very useable.IN4148 Diode - 407$1 2N3904 (House #Transistor)-25/S1

INSTRUMENT KNOBS

Black with brushed aluminum insert. Medium size, veryattractive style. SPECIAL 5 FOR$1

VERNIER DIAL

From a close out of metal detector manufacturer. V2Turn, 8 to 1 ratio. Internal stops easily removed to makeunit multi-turn. LIMITED QUANTITY - $.99 EACH

DO YOU NEED A LARGE COMMON ANODEREADOUT AT A FANTASTIC PRICE !

S. D. presents the MAN-64 by Monsanto - .40inch character. All LED construction - not re-flective bar type, fits 14 pin DIP. Brand newand factory prime. Left D.P.

$1.59 ea. 6 for S7.50

FAIRCHILD LED READOUTS - 69c

FND-70. Common cathode. Right handdecimal point. .25 inch character. Primenew units. Perfect for clocks, frequencycounters, etc. 69c 10 For $6

Best Readout Buy in USA!

DRIVERTRANSISTORS

2N3904 - NPN

2N3906 - PNP

8 for $1

2102 1K RAM's - 8 FOR $12.95

New units by National. We bought a load on a superdeal, hence this fantastic price.

Units tested for 500NS Speed.

FET'S BY TEXAS INSTRUMENTS

#TIS-75 but with an internal house number. TO-92plastic case. N Channel, Junction type FET.SPECIALS FOR$1

FAIRCHILD BIG LED READOUTS

A big .50 inch easy to read character. Now available ineither common anode or common cathode. Take yourpick. Super low current drain, only 5 MA per segmenttypical. YOUR

FND - 510 Common Anode CHOICE

FND - 503 Common Cathode $2 ea.

H.P. IS BACK!

No Rejects or Retests here — You WantQuality? You have it with this popular 0.3"L.E.D. by Hewlett Packard. Fits Standard I.C.Socket. Right hand DP.

5082-7740 — Common Cathode $1.25

5082-7730 — Common Anode $1.25

6 for $6.00

HEAVY DUTY TRANSFORMER

36 VAC, 3.5 AMPS. 115VAQ 60 HZ.PRI. For power supplies or audio poweramps. Best quality, fully enclosed. $4.95

8T97B

Signetics, TRI-State Hex Buffer. MOSand TTL interface to TRI-State Logic.Special: $1.49.

936 DTL BY ITT

Prime, house numbered. Hex Inverter 10 For $1

LM324 - QUAD 741 OP

AMP - 99c

NE555 - Timers - 49c

709CH - OP AMPS -4 For $1

GESCR C106B1

4 AMP 200PIV. Sensi-tive Gate. 59c

-«

ASS

££

SIGNETICS 1K P-ROM

82S129. 256 X 4. Bipolar, much fasterthan MOS devices. 50 NS. Tri-stateoutputs. TTL compatible. Field program-able, and features on chip addressdecoding. Perfect for microprogrammingapplications. 16 pin DIP. With specs.$2.95 ea.

TEXAS INSTRUMENTS 8 DIGITCALCULATOR CHIP TMSO 103NC

Four function. Same style as used in Tlpocket calculators. Factory new units,with specs. 99c each.

1AMP 1000 PIV SILICON RECTIFIERS

•"■' IN4007. Factory prime devices. 10 for$1.00

741COP AMPS

Prime, factory tested and marked. Fullspec on all parameters. Not re-tested,functional only, units as sold by others.741 CH -TO-5 8 Lead Metal Can . . . 3/$1741CV - 8 Lead Mini Dip 4/S1

DL747 JUMBO LED READOUTS

.1 By Litronix. .65 inch character. Common

anode. Outperforms SLA-3. perfect forgiant digital clocks. Only 20 MA. persegment. Special - $2.50 ea. (Not Class II)

MERRY CHRI

SUBMINIATURE TRIMMER CAPS

Ultra stable. Range: 3.5 to 18 PF. 2 for $1

FILTER CAPS

Dual section, 2000 MFD and 1500 MFDat 30 WVDC Twist Lock. 79c ea. 3 For $2

NATIONAL VOLTAGE REGULATOR

Like 7805. 5VDC - 1 AMP output. HasTO-220 plastic power tab - 99c

IN4148 COMPUTER DIODES

Same as IN914. Factory prime. 20 for $1

FULL WAVE BRIDGE

By G. I. 1.5 AMP800PIV -

75c

2N706A 400MHZ. TRANSISTORS

Silicon NPN. 1 WATT. TO-18 Case. 5For $1

LARGE SIZE LED LAMPS

Similar to MV5024. Prime factory tested

units. We include plastic mounting clips

which are very hard to come by.

Special 5 for $1

MOTOROLA NEG. VOLTAGE REG

MC1469R. TO-66 9 Lead package. For 3TO 30V Outputs. Provides 600 MA directoutput or more by using an externalpower transistor. Reg. catalog $4 ea.With specs. $1.95 ea.

MOTOROLA POWER DARLINGTON$1.99

MJ3001 - NPN - 80 Volts-10 Amps-HFE 6000 typ. To-3 Case. Ideal forpower supplies, etc. We include a free723 regulator w/schematic for powersupply with purchase of the MJ3001.You get the two key parts for a DCsupply for only $1.99. Regular catalogprice for the MJ3001 is $3.82

MOTOROLA NEGATIVEVOLTAGE REG

MC1463R - Like our 1469R, except fornegative voltage. Reg. catalog $5. Ourprice $1.95.

We do not sell junk. Money backguarantee on every item. WE PAYPOSTAGE. Orders under $10 add 75chandling. No C.O.D. Texas Res. add 5°otax.

S. D. SALES CO.

P.O. BOX 28810DALLAS, TEXAS 75228

► fiS

£

STMAS AND A HAPPY NEW YEAR

alPafFftffftfra

89

Man is never satisfied withwhat he's got - the thirdsection of Microprocessorsdeals with limitations ofmicrocomputers and howto push them back a bit.

For the hobbyist hardwareexpert, the book providesa fair overview of themicrocomputer field; forthe person moreacquainted with software,it gives a good introduc-tory look at the field froma hardware perspective.

LIFE, LIFE-2, which is a competitive gameof life, HEXPAWN (see BYTE no. 3), and achildren's literature quiz. A few of thesegames are worth singling out — my favoriteis a buzzword generator that produces useful(?) computer jargon such as "total moni-tored mobility," "systematized reciprocalprogramming," "integrated managementoptions" (surely a useful phrase) and"parallel digital concept." Another pair ofprograms, POETRY and POET, produceHaiku-like and Edgar Allen Poe-ish verse,respectively. They're somewhat deter-ministic, but certainly fun at first.

The preface includes a caveat, warningany users that the majority of the programs

Microprocessors: New Directions forDesigners, edited by Edward A. Torrero,1975. Hay den Book Company, RochellePark, New Jersey. $8.95.

Microprocessors is a paperback collectionof reprints, originally published in ElectronicDesign from 1973 to 1975. Edward A.Torrero has put together a book aimedprincipally at the design engineer, empha-sizing the practical aspects of microcom-puter design.

The first section deals with an overviewof the micro's impact on industry. Represen-tative articles are "Focus on Micropro-cessors," a truly global assessment of thecurrent situation and potential of microcom-puters for the design engineer; and "SmartMachines in Industrial Electronics," a lookat micros in numerical control and relatedequipment.

The second section, "MicrocomputerBasics," includes articles on microprocessorselection for various applications, the capa-bilities and various techniques of microcom-puter input and output, the choice betweenrandom logic and micros, an analysis ofmicro instruction sets, some basics of soft-ware construction, and an excellent worked-through example of microprocessor controlof traffic lights. This section also features adetailed look at the internal operation of,and external support required for, the 8008CPU chip.

But man is never satisfied with what he'sgot — the third section of Microprocessorsdeals with limitations of microcomputersand how to push them back a bit. The firstarticle, "Speeding Microcomputer Multipli-cation," shows how to build a CPU-comple-mentary multiplication circuit for theIMP-16C that allows multiplication of two

are written in "standard" BASIC (where"standard" apparently means DEC'sBASIC), so some conversion may benecessary for other BASIC systems. I wouldemphasize this warning - some of DEC'sBASIC features used in the games (the filehandling procedures, for example) may bedifficult to convert.

However, it should be clear that 101BASIC Computer Games is really a"Hacker's Garden of (Computer) Verse,"and is certainly worth the $7.50 it costs. Forordering and bulk discount information,write Digital Equipment Corporation, Soft-ware Distribution Center, 146 Main St.,Maynard MA 02154.

16-bit unsigned operands in 23 micro-seconds. Using only 16 standard SSI andMSI circuits, this CPU addition reducesmultiplication time by a factor of 30 fromsoftware, and by a factor of 7 from theoptional National-supplied multiply instruc-tion. Other articles include an investigationof the "microprogrammability" of somemicros for special applications, constructionof a system that allows a conventional minito debug a microsystem, implementation ofan external push-down stack for the 8008 toassist in interrupt handling, and specifica-tions for providing the clock and drivesignals for the 8080, something apparentlymissing from the 8080's application data.

The articles of the fourth and last sectioncover an ample range of applications. Thefirst is a close-up of a Motorola 6800 CPUused as a controller of a simple drum printer;the second describes the use of an ACIA(Asynchronous Communications Adapter) ina minicomputer context. The last threearticles deal with uses of micros in instru-mentation, phase locked loop motor control,and "intelligent" networks of computers.

From this (rather exhaustive) list ofarticles, it should be clear that Micropro-cessors is certainly a useful book for itsintended audience, the electronics designengineer. It also fills two other importantfunctions: for the hobbyist hardware expert,it provides a fair overview of the microcom-puter field; for the person more acquaintedwith software, it gives a good introductorylook at the field from a hardware perspec-tive, an introduction that I found veryuseful.

Chris Ryland25 Follen St.Cambridge MA 02138

90

2704 x 4 BIT MEMORY BOARD

KoilJijk/'S,

Have you ever loaded a longprogram into memory, only tohave the power fail? Lost theentire program, huh? If so, youknow the value of having a non-volatile magnetic core memory.We have acquired these corememory boards, made byBurroughs. They appear to be52 x 52 x 4 bits wide (2704bits x 4), for a total of 10,816bits. Unfortunately, we don't have data, but for the modest price weare asking they are well worth the effort to figure out. 754" x 9" x1%". Shipping weight 2 lbs. Less than 1/10 cent per bit!STOCK NO. B5316 Core Memory Board $9.95 each, 4/35

256 x 4 BIT CORE MEMORY BOARD

Another non-volatile magnetic corememory board. This one was originallymade for one of America's largest calcu-lator manufacturers. It is a complete

256 bit x 4 bits wide memory board (1024 bits). Complete with

core drivers and sensors. 654" wide x 3%" high, 1 lb. With limited

data. QUANTITY LIMITED.

STOCK NO. B5203 $9.95 each

KEYTOPS & SWITCHESTO MAKE YOUR OWN KEYBOARD

We have a large selection of KEYTOPS and SWITCHES, made byRAYTHEON CO. The keytops come in black, grey and white,with contrasting legends. The switches mate with the tops, and aremagnetic reed switches. The following combinations are available:54 key typewriter set, keys only, black K9276 2.95

54 key typewriter set, keys only, grey K9278 2.95

54 key TTY set, no symbols white K9279 2.95

54 key TTY set, with symbols white K9282 2.95

54 key set, keys & switches black K9288 30.00

54 key set, keys 8i switches grey K9290 30.00

54 TTY set, no symbols keys & Sw. White K9291 30.00

54 TTY set, with symbols, keys & Sw. whiteK9291 30.00

11 Key Numeric set. Keys only Black

11 Key Numeric set. Keys only Grey

11 Key Numeric set, Keys only White

12 Key numeric set. Keys only white

11 Key Num.set, keys & switches Black11 Key Num. set, keys & switchesGrey

11 Key Num. set, keys & switchesWhite

12 Key Num. set, keys 8t switcheswhite

Blank key 1 % keys wide white

Blank key 2 keys wide white

K9297A with switch white

K9297B with switch white

K9283K9284K9295K9286

K9293K9294K9295K9296

1.501.501.501.50

7.007.007.007.50

K9297A 3/.25

K9297B 3/.25

K9298A 3/2.00

K9298B 3/2.00

KR-2376 KEYBOARD ENCODER ROM

This IC Keyboard Encoder is ideal for use with the above key-board sets, or with any other keyboard. Made by General Inst.,this 40 pin IC features TTL/DTL or MOS compatable outputs,external parity selection, 2 key roll-over, N-key lockout, selfcontained oscillator, and static charge protection of all inputsand outputs. This chip is programmed for ASCII code outputsfor 88 keys in the Normal mode, using external Shift operation.In the Shift mode, it is programmed for EBCDID outputs. New,tested, with data sheets. G.I. number KR-2376-10.STOCK NO. B3118 $9.95 each

M1568 dual 15 volt regulator IC. Tracking regulator, 15v@ 100 ma each. 14 pin DIP. STK NO. B4481 $1.50 ea, 4/5.00

DATA INPUT KEYBOARD HOUSING

This high impact plastichousing was part of afamous name programmabledesktop calculator. It is tan, |has the general appearanceof a typewriter case, and isideal for many types of comp-uter keyboards. Mountingcenter for the keyboard is 1554".The readout space is 15" x 4".Overall size is 18" x 1854" x 654'3 lbs. Will easily house an entireTVTor micrpcomputer. Prepunched'

hole in rear for a muffin fan. The opening in the top may vary!the one shown in the drawing.STOCK NO. B9176 $3.75 each, 2/7.00

HEAVY DUTY POWER SUPPLY

This power supply is surplus from a maker ofcomputer peripherals. It has outputs of +5v@ 5 amps, —5v <s> 500ma, +12v @ 2.5 amps,and -12v @ 200ma. All voltages are wellfiltered and regulated. Ideal for your micro-or mini- computer. All are tested & working.1054" x 1354" x 7" high, shipping weight 22 lbs.STOCK NO. B5312 $34.95

ALCO KNOBS FOR EVERY APPLICATION

Machined aluminum knobs with 2 setscrews. Clear anodizedfinish. Latest distributor price $ .65 to 1.05 each.ALCO NO O.D. x HT. DELTA NO. PRICE

KS 500A .500" x .625" w/skirt B6176 .40 ea, 10/3.

K 700A .750" x .620" B6177 .40 ea, 10/3,

K 1250A 1.250" x .750" B6178 .50 ea, 10/4.

505050

2502 AY-5-1013 UART

Brand new, tested, General Instrument AY-5-1013 UART(Universal Asynchronous Receiver/Transmitter). This40 pin IC is pin compatable with Signetics 2536, Tl'sTMS6012, SMC COM2502, etc. The UART is thestandard building block for parallel to serial and serialto parallel conversion, serial communication, etc. A mustfor TVTs, cassette interface, RS-232 interface, etc.STOCK NO. B3119 $3.95each

COMPUTER GRADE ELECTROLYTICS

We carry a good selection of capacitors of all types, dipped micas,ceramic disks, mica trimmers, tantalums, silvered micas, tubulars,small electrolytics, high voltage, etc. Listed below are a few of ourlarge computer grade electrolytic capacitors.VOLT MFD STOCK PRICE

lOv

40,000

B2026

2.00 each.

6/11.00

lOv

90,000

B2495

3.00 each.

3/8.00

10v

160,000

B2515

3.25 each.

4/12.00

15v

110,000

B2352

3.50 each.

3/9.00

25v

32,000

B2492

3.00 each,

4/T0.00

35v

40,000

B2255

3.50 each.

3/9.00

50v

10,000

B2493

3.25 each.

4/12.00

75v

6,000

B2450

3.50 each.

4/12.00

200v

500

B2345

2.50 each.

4/9.00

1458, dual 741 type op-amp.STOCK NO. B3112

8 pin mini-DIP. Very versatile.

$1.25 each, 5/5.00

2 MILLION BIT MEMORY DRUM

We have one 2 million bit memory drum which was removed froman experimental computer. It was manufactured by General Instru-ment Co. for Ultrasonic Systems Corp., Mount Laurel, N. J. It isG. I. Model MH12C-128-189, Serial No. 7816, and U.S.C. Model620MDRA1206. It has a maximum access time of 33.4 ms, and atransfer rate in excess of 500K bits/ sec/ track. There are 108storage tracks, expandable to 128 tracks, with a seperate head foreach track. The number of bits/ track = 16,000. For more data,phone us and ask for Mel Weiss or Ray Jorgenson. 617-388-4705$500

A

DELTA ELECTRONICS CO.

BOX 1, LYNN, MASSACHUSETTS 01903Phone (617) 388-4705

MINIMUM ORDER $5.00. Include sufficient postage, exeatsrefunded. Send for new 88 page Catalog 15, bigger than ever.

BANKAMERICARD and MASTERCHARQEnow accepted, minimum charge $16.00. PleaseInclude all numbers. Phone orders acceoted.

1

Review:

The CT-1024 Kit

James Hogenson

Box 295

Halstad MN 56548

The Southwest Tech CT-1024 is a key-board to TV interface which displays 16lines of 32 ASCII characters each on a TVscreen. The CT-1024 may be ordered with avariety of options facilitating easy interfacewith any computer. The CT-1024 is awelcome compromise between one line LEDdisplays and commercial CRT or hard copyterminals.

Data to be displayed is stored in the formof ASCII coded characters. The displaycircuitry scans the memory, converts theASCII codes to 5 by 7 dot matrix characters,and then generates the video signalsnecessary to reproduce the characters on aTV screen.

The main board holds the charactergenerator, synchronization and timingcircuits. This double sided board, measuring9.5 inches by 12 inches (24.1 cm by 30.5cm) holds 42 integrated circuits and a fewother parts. Three cable connectors aremounted on the main board for input,output and power supply connections. Agroup of connectors are provided for plug-inboards.

The memory board plugs into the mainboard. The memory uses 2102 type chips tostore 1024 characters. The memory isdivided into two pages of 512 characterseach. A switch can be used to select thepage, or without a switch, the pages willalternate. When one page is filled, thedisplay automatically selects the other page.

The main board, memory board, parts forboth and a 29 page manual, constitute thebasic kit selling for $175. The manualincludes step-by-stcp assembly instructionsfor the main board and memory board,detailed testing and calibration instructions,five and one half pages of "How it Works,"connector diagrams, parts lists, and foldouts

for component placement and two color foilpattern diagram. The main board circuitdiagram is supplied on a separate 18 inch by24 inch (45.7 cm by 61.0 cm) sheet.Documentation for the optional plug-inboards is provided with each of those kits.

Assembly is not difficult, but it is not a"one-evening" type of project cither. It willbe worth your while to take your time andbe careful while putting the CT-1024together. There is a flat charge of $25 if youhave to send your main board in for repair.

Getting the CT-1024 adjusted and cali-brated after assembly is as simple as turningfour pots. There are no special tricksinvolved, and the only instrument needed isa VOM.

The CT-1024 requires 5 V at 2 A, and -5V and -12 V at 100 mA each. If yourexisting system's power supply is unable toprovide this, you can buy the CT-P powersupply kit for $15.50; the entire supplycircuit is contained on one small separateboard. The PC board, components and trans-former are included in the power supply kit.

There is a wide variety of input optionsfor the CT-1024 allowing interface withalmost anything. Any TTL compatibleASCII input will be accepted. The SWTPCkeyboard kit can be connected directly tothe CT-1024 main board. If you do notrequire data ready control strobes, you canconnect your microcomputer's outputdirectly to the main board input. If this isdone, however, you must program a timedelay between each data transfer. Thismethod will also be error prone if inter-connect cables are more than 2 or 3 feet inlength.

If the CT-1024 is used as a remoteterminal, the serial interface kit is anexcellent option. This kit will allow the

92

LOGIC POWER SUPPLIES

New Lambda transistorized, regulated, worth 2 or 3 times our price.

1. (LVEE-5)0V, 5 VDC74amp 125.00

2. (LWD - 12) 12 VDC 26.5 amp 100.00

3. (LMB - 5) 5 VDC 3.7 amp 40.00

4. (LMD - 15Y) 15 VDC 9 amp 45.00

ii> rr^p

SOPHISTICATED LOGICSUPPLIES

By Dressen-Barnes and NJE. Transistorized,finely filtered and regulated. 115 volt input.

#41-5S Output 5VDC 6 Amp $25.00

#421-32 Output 32VDC 3.3 Amp 12 lb 20.00

#421-90 Output 90VDC 1.2 Amp 12 1b 20.00

#NJE 5VDC34 Amp 35 lb 75.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 andsense functions in one package. New, booklet ofschematics and data. Looks like a good beginning fora mini-computer. Limited supply on hand.Ship wgt 3 lbs. #SP-79 $125.00

1,000/uF

15 volt

$ .35

2,000 uF

35 volt

1.00

2,000

15

.50

12,000

40

2.50

1,000

25

.70

3,900

50

2.00

3,000

25

1.00

22,000

75

3.25

1,000

35

.80

COMPUTERCAPSBRANDNEW

CORE MEMORY

Another brand new memory, ultra small. Measures only 4x4 incheswith format on one plane of 32 x 32 x 16 (16,384). Only about 35units of this on hand.#SP-81 $20.00

SANDERS 720 KEYBOARD $40.00

yffe£fm<2.

FREE CATALOG

Please add shipping cost on above.

MESHNA P0 Bx 62 E. Lynn Mass. 01904

93

Southwest Tech CT-1024 video terminal. . . built on a homemade base. Row of switches along the top is for extra functions.

terminal to communicate via a three wiresystem, phone line, or magnetic tape storagesystem.

The serial interface will convert paralleldata to serial data and will produce not onlythe serial data, but start, stop and parity bitsas well. The serial interface will bothtransmit and receive, thus making theCT-1024 a complete terminal. Standardspeed is 110 baud. Adding optional parts tothe PC board will provide 150, 300, 600 or1200 baud.

When the serial interface is used, thekeyboard is connected to the serial interfaceboard. In the echo mode, data is transmittedto the receiver, but is not displayed on thescreen until it is transmitted back to theterminal. Otherwise data is transmitted andsimultaneously displayed.

The input and output connections areRS-232 compatible and will attach directlyto most couplers and data sets. To record onor play back from magnetic tape, it will benecessary to build an FSK circuit which isnot included on the serial interface board.

The serial interface board measuring3.375 inches by 9.5 inches (8.6 cm by 24.1cm) plugs into the main board. This kitincluding thorough documentation sells for$39.95.

A parallel interface board is available for

faster data transfer between the CT-1024and your microcomputer. The parallel inter-face board provides the handshaking,buffering and timing necessary to transferdata properly at high speed in a number ofsystem configurations. The various operatingmodes are programmed by jumper wires.The versatility of the parallel interface boardmakes the CT-1024 compatible with anycomputer system — from home brew hobbysystems to large scale commercial systems.

High noise immunity in the parallel inter-face is provided by a special circuit on thestrobe lines and on all inputs from the databus. For maximum flexibility, all data andstrobe lines from the IO bus can be selec-tively inverted by programming jumpers onthe PC board. The keyboard can be directedto just print data on the screen, print dataon the screen and load the data onto theoutput bus, or just load data onto theoutput bus. The latter option will allow youto have all data echoed back for verification.

The interface input and output bus linescan be used separately or parallel for bidirec-tional systems. To make interfacing eveneasier, the data flow control lines can beeither strobed or operated in a demand/response mode. All of these options areselected by inserting jumper wires on the PCboard.

94

The parallel interface board measures 4inches by 9.5 inches (10.2 cm by 24.1 cm)and plugs into the main board. Both paralleland serial interface boards cannot be used atthe same time. The parallel interface kit ispriced at $22.95.

The CT-1024 produces a video signaloutput which can be viewed on a videomonitor or a modified television set. Don'tlet the "modified" scare you away becausethe modification is quite simple.

I picked up an old tube type junker for$15. I inserted a 10 pF capacitor as men-tioned in the instructions, left out the rest,but placed a 6.8 kO resistor and a 180 pFdisc capacitor in parallel between theCT-1024 video output and the TV videoinput. I disconnected the IF stage from thegrid of the video output tube and connectedthe CT-1024 at that point. The only way tofind out what modifications are necessary onyour set is to start experimenting. Thetelevision modifications necessary will varyfrom one set to the next.

The CT-1024 includes another con-venience: a cursor. The cursor is a littleblinking square displayed on the screenwhich shows where the next characterentered will be displayed. An optionalswitch will stop the blinking action or blankout the cursor if desired.

The cursor generation circuitry isincluded on the main board. An optionalcursor control kit will provide a wider rangeof controls over the cursor. The manualcursor control kit will provide switchdebouncing for your choice of switches. Theuse of these switches or keys will allow youto move the cursor up, down, left or right."Home up" will return the cursor to theupper left corner of the screen. "Erase toend of line" will erase anything between thecursor and the end of the line. "Erase to endof frame" will erase anything between thecursor and the lower right corner of theframe.

The cursor control board plugs into themain board. The cursor control switchesconnect via wires to the cursor controlboard. The manual cursor control kit isavailable for $11.50.

If you are not presently in a position tofork out the bills for a good Teletype, jointhe club. And get a CT-1 024. Or for those ofyou who have a Teletype rig, how about allthose times you read a printout once, thenthrew it away and tried again? A TVterminal might be worth the consideration.There are lots of other uses for a TVtypewriter without the computer, too. What-ever your application might be, it seems thatthere are a lot of satisfied CT-1024 users. ■

ALTAIR OWNERS

(and users of Altair components)Interface your computer with the outside world!

Now an A/D D/A board for the Altair with:

• 1 or 2 analog outputs with 10 bit resolution

• 8 Analog inputs

• 4 Digital outputs for control functions

• Complete driving software provided

• Interfaces numerous inexpensive sensing devices includingphotocells, thermistors, ultrasonics, and other analogtransducers

• Drives plotters, CRT's, servos, etc.

with 1 D/A $135 kit $175 assembled2 D/A's $180 kit $235 assembledComing January 1—a one-board video interface for theAltair with keyboard interface

• Full graphics capability (48x64 matrix)

• 16 lines of 32 characters (64 characters optional on boardfor use with high resolution TV monitors)

• Graphics and text may be mixed on screen

• Upper and lower case charactures (7x9 font)

• Keyboard input port provided

$160 kit $230 assembled(Cal residents please add 6% sales tax)

POLYMORPHIC SYSTEMS

P.O. Box 2207, Goleta, Calif. 9301 8

95

BUI

readerservice

To get further information on the products advertised in thisissue of BYTE merely tear, rip, or snip out this advertiser index,fill out the data at the bottom of the page, circle the appropriatenumbers, and send the works to BYTE, 70 Main St, Peter-borough NH 03458. Readers get extra Brownie Points forsending for information since this encourages advertisers to keepusing BYTE — which in turn brings you a bigger BYTE.

ADVERTISER INDEX

A1

ACM 6

A2

AP products 67, 73, 83, 87

A3

BYTE's Books 76

A4

BYTE Subscription 72

A5

CMR 74

A6

Continental Specialties 11

A7

Delta Electronics 91

A8

Dutronics 77

A9

Godbout 7

A10

Hickok 65,75

A11

lasis 48, 49

A12

IMS 40

A13

Int'l Elec. Unltd. 85

A14

Intron 67

A15

James 79

A16

Martin Research 15

A17

Matrix 8

A18

Meshna 93

A19

Micro Digital 39

A20

Mikra D 69

A21

MITS CIV, 5, 37,55

A22

National Multiplex 63

*Pehaco CM, 1

A23

Polymorphics 95

A24

Processor Tech 20, 21

A25

RGS 17

A26

Scelbi 2

A27

S. D. Sales 89

A28

Southwest Development 87

A29

Southwest Tech Clll

A30

Sphere 23, 25

A31

Suntronix 81

A32

Tri Tek 83

A33

Visulex 69

A34

Wave Mate 71

A35

Windjammer 78

♦Reader service inquiries not solicited. Correspond directly with

company.

Reader's Service

BYTE

JANUARY 1976

Green Publishing Inc

70 Main St

BYTE acquired via

Peterborough NH 03458 □ Subscription

Please print or type.

□ Newsstand

□ Stolen

Name

Address

City

State Zip

THE

CITE

QUESTIONNAIRE

BYTE is dedicated to the needs of its readership.In order to better gauge matters of editorial policyand content, as well as to give our advertisers some"hard facts," we publish this questionnaire.

What applications do you have in mind for yourown personal computer system?

Do you presently have a computer?

If you own or use a personal computer system,what is its CPU chip or main frame computerdesign?

Have you had any "on the job" training usingcomputers as a tool for some purpose?

Coupon expires in 60 days .

Do you know what a computer language is? Wouldyou list the computer languages (if any) which youknow?

These questions are a short form "letter to theeditor." If you have additional comments, don'thesitate to write! Send completed questionnairesto BYTE, Dept. Q, Peterborough NH 03458.

Feel free to photocopy this page if you wish to keep your BYTE intact.

96

It seems that a great many peoplecame to the same conclusion that wedid here at SwTPC. The M6800 is anoutstanding processor and makes agreat computer — "BUT" — Not allcomputers using the M6800 pro-cessor are the same. May we suggestthat you consider the following fea-tures when you make your choice.

IT ISA COMPLETE6800 SYSTEM?

You cannot get all of the advan-tages of the 6800 system with onlythe processor chip. Unless the whole6800 family of chips is used you can-not possibly get all of the versitilityand superior performance that thesystem is capable of providing. If forinstance the design does not use theMC6820 parallel and the MC6850serial integrated circuits for interfac-ing, you lose the programmable inter-face feature that makes it so easy tointerconnect the computer systemwith outside devices such as termi-nals, printers, disks, etc.

IS THE SOFTWARECOMPATABLE OR UNIQUE?

If the design does not use the"Motorola" Mikbug® ROM, then thesoftware and programs that will runon the system are probably unique to

that particular brand of computer.SwTPC uses the standard MotorolaMCM6830L7 ROM. This providesautomatic loading and an operatingsystem that is compatable with othersystems using the standard widelysold Motorola evaluation set. As anowner of our 6800 computer system,you are eligible for membership inthe Motorola Users Group. If youjoin you have access to a library ofprograms that will run on your sys-tem. Editor and assembler programsare available directly from SwTPC.

CAN THE SYSTEM BE EXPANDEDAT A REASONABLE COST?

Some of the limited systems be-ing offered at lower prices can beexpanded only with difficulty. Checkthe amount of memory that can beadded and at what cost. How manyadditional interfaces can be added, ifany. How much of the above can berun off of the power supply providedwith the system? The SwTPC 6800can be expanded up to 16K words ofmemory in the standard cabinet andwith the power supply provided. Itmay also be expanded up to eightinterface (I/O) boards for externaldevices by simply plugging in thecards. Memory is $125.00 for each4,096 words of expansion and inter-

face cards are only $35.00 for serialor parallel types.

Memory expansion will be essen-tial if you ever intend to use a resi-dent assembler, or higher level lan-guages such as APL or BASIC onyour system. Assembler programstypically require a minimum of 4,096words of memory and higher levellanguages require even more.

HOW DO YOU ENTERAND READ DATA?

Let's hope it is by way of a TTY,or video terminal. No one with aserious computer application wouldconsider attempting to enter datafrom a switch and status light con-sole. These may be educational, butthey sure aren't practical. Calculatorkeypads and digital readouts are notmuch better. There is no substitutefor a full alphanumeric keyboard andterminal system display for seriouswork.

Mikbug® is a registered trademark ofMotorola Inc.

m@@

Computer Systemwith serial interface and 2,048 Wordsof memory $450.00

___ COMPUTER

55,Ts3 6800 =««»

D Enclosed is $450 for my SwTPC Computer Kit □ Send Data

□ or BAC #

□ or MC Ex Date

ADDRESS

CITY STATE ZIP

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

GPeacea du man.

tub ippopiaHie

DOmPUCBP.