'NOVEMBER 19 7

G'E)OLZDt1à1Y

www.americanradiohistory.com SWTPC announces first dual minifloppy kit under $1,000

Sire CT64::.....

5WÌreMINIFLOPPY SYSTEM SilAV 6800 c DISK SYSTEMEfN Del

Now SWTPC offers complete best -buy computer system with $995 dual minifloppy, $500 video terminal/ monitor, $395 4K computer.

$395 4K 6800 Computer The SWTPC 6800 comes complete with 4K memory, serial interface, power supply, $995 MF -68 Dual Minifloppy chassis, famous Motorola MIKBUG® You need dual drives to get full benefits mini -operating system in read -only from a minifloppy. So we waited to offer a memory (ROM), and the most complete floppy until we could give you a dependa- documentation with any computer kit. Our ble dual system at the right price. growing software library includes 4K and The MF -68 is a complete top -quality 8K BASIC (cassettes $4.95 and $9.95; minifloppy for your SWTPC Computer. The paper tape $10.00 and $20.00). Extra kit has controller, chassis, cover, power $500 Terminal /Monitor memory, $100/4K or $250/8K. supply, cables, assembly instructions, two The CT -64 terminal kit offers these Other SWTPC peripherals include highly reliable a premium features: 64- lines, Shugart drives, and character $250 PR -40 Alphanumeric Line Printer diskette with the Floppy Disk Operating upper /lower case letters, switchable con- (40 characters /line, 5 x 7 dot matrix, System (FDOS) and BASIC. (A disk floppy trol character printing, word highlighting, 75 line /minute speed, compatible with is no better than its operating system, and full cursor control, 110 -1200 Baud serial our 6800 computer and MITS /IMSAI); the MF -68 has one of the best available.) interface, and many others. Separately $79.50 AC -30 Cassette Interface System MF -6X -64 is 12 MHz An optional $850 kit expands the the CT $325, the CT-VM (writes /reads Kansas City standard tapes, system to four drives. $175. monitor controls two recorders, usable with other computers); and other peripherals now Enclosed is: $250 for the PR -40 Line Printer and to come. $1 990 for the full system shown above $79.50 for AC -30 Cassette Interface (MF -68 Minifloppy, CT -64 Terminal with Additional 4K memory boards at $100 CT-VM Monitor). Additional 8K memory boards at $250 Southwest Technical $995 for the Dual Minifloppy Or BAC # Exp. Date EEITI Products Corp. $325 for the CT -64 Terminal Or MC # Exp. Date 219 W. Rhapsody, San Antonio, Texas 78216 $175 for the CT-VM Monitor Name Address London: Southwest Technical Products Co., Ltd. $395 for the 4K 6800 Computer City State Zip Tokyo: Southwest Technical Products Corp. /Japan www.americanradiohistory.com Circle 136 on inquiry card. You can now have the industry's finest with that all- important disk drive

YOU CAN GET THAT ALL -IMPORTANT SOFTWARE, The professional - TOO grade microcomputer for professionals Loading your programs and files will take you only a few seconds with the new Cromemco Z -2D computer. You can load fast because the Z -2D comes equipped with a 5" floppy disk drive and controller. Each diskette will store up to 92 kilobytes. Diskettes will also store your pro- grams inexpensively -much more so than with ROMs. And ever so much more conveniently than with cas- settes or paper tape. The Z -2D itself is our fast, rugged, ADVANCED CONTROLLER CARD Shown with optional bench cabinet professional -grade Z -2 computer The new Z -2D is a professional equipped with disk drive and con- system that gives you professional troller. You can get the Z -2D with performance. either single or dual drives (dual In the Z -2D you get our well - We're able to put all of this in- shown in photo). known 4 -MHz CPU card, the proven cluding a UART for the CRT interface Z -2 chassis with 21 -slot motherboard on just one card because we've taken CROMEMCO HAS THE and 30 -amp power supply that can the forward step of using LSI con- SOFTWARE handle 21 cards and dual floppy You can rely on this: Cromemco drives with ease. troller circuitry. is committed to supplying quality Then there's our new disk con- STORE/ FACTORY software support. troller card with special features: Contact your computer store or For example, here's what's now Capability to handle up to 4 Cromemco factory now about the available for our Z -2D users: disk drives Z -2D. It's a real workhorse that you CROMEMCO FORTRAN IV COM- A disk bootstrap Monitor in a can put to professional or OEM use PILER: a well -developed and power- 1K 2708 PROM now. ful FORTRAN that's ideal for scien- RS An -232 serial interface for Kit: Z -2D with 1 disk drive tific use. Produces optimized, relo- interfacing your CRT terminal (Model Z2D -K) $1495. catable Z -80 object code. or teletype Assembled: Z -2D fully assembled CROMEMCO 16K DISK BASIC: a LSI disk controller circuitry and tested (Model Z2D- W) $2095. powerful pre -compiling interpreter Additional disk drive with 14 -digit precision and powerful (Model Z2D -FDD) $495. I/O handling capabilities. Particularly Z -2 USERS: Your Z -2 was designed with the future SOFTWARE suited to business applications. in mind. It can be easily retrofitted (On standard IBM -format CROMEMCO Z -80 ASSEMBLER: a with everything needed to convert to soft -sectored mini diskettes) macro -assembler that produces relo- a Z -2D. Only $935 kit; or $1135 for 16K BASIC (Model FDB -S) $95 catable object code. Uses standard assembled retrofit package. FORTRAN IV (Model FDF -S) $95 Z -80 mnemonics. Z -80 Assembler (Model FDA -S) $95 Cromemco Gin c or p or a t e d Specialists in computers and peripherals 2400 CHARLESTON RD., MOUNTAIN VIEW, CA 94043 (415) 964 -7400 Circle 40 on inquiry card. www.americanradiohistory.com TV DAZZLER

To make your computer more useful- a wide choice of memory, I/O, CPU

Your computer's usefulness de- grammer. Uses high -speed 2708 eras- (Model TRT -K): $195. Assembled pends on the capability of its CPU, able PROMS. A must for all com- (Model TRT -W): $295. memories, and I/O interfaces, right? puters. Will load 8K BASIC into RAM JOYSTICK. A console that lets So here's a broad line of truly in less than a second. Kit (Model you input physical position data with useful computer products that lets BSK -0): $145. Assembled (Model above Model D + 7 A/D card. For you do interesting things with your BSW -0): $245. games, process control, etc. Con- Cromemco Z -1 and Z -2 computers. 16K CAPACITY PROM CARD. Ca- tains speaker for sound effects. Kit And with your S- 100 -compatible Al- pacity for up to 16K of high -speed (Model JS -1 -K): $65. Assembled tairs and IMSAIs, too. 2708 erasable PROM. Kit (Model (Model JS -1 -W): $95. CPU 16KPR -K): $145. Assembled (Model 16KPR -W): $245. PROFESSIONAL QUALITY Z -80 MICROPROCESSOR CARD. You get first -class quality with The most advanced p.P card avail- I/O INTERFACES Cromemco. able. Forms the heart of our Z -1 FAST 7- CHANNEL DIGITAL - Here are actual quotes from ar- and Z -2 systems. Also a re- direct ANALOG I /O. Extremely useful ticles by independent experts: "The placement for Altair /IMSAI CPUs. board with 7 A/D channels and 7 Cromemco boards are absolutely

Has 4 -MHz clock rate and the power D/A channels. Also one 8 -bit par- beautiful" . . . "The BYTESAVER is Z µP of the -80 chip. Kit (Model ZPU- allel I/O channel. Kit (Model D + tremendous" . . . "Construction of K): $295. Assembled (Model ZPU- 7A -K): $145. Assembled (Model D Cromemco I/O and joystick are out- $395. W): + 7A -W): $245. standing" . . . "Cromemco periph- MEMORIES TV DAZZLER. Color graphics in- erals ran with no trouble whatso- 16K RAM. The fastest available. terface. Lets you use color TV as full - ever." Also has bank -select feature. Kit color graphics terminal. Kit (Model Everyone agrees. Cromemco is (Model 16KZ -K): $495. Assembled CGI -K): $215. Assembled (Model tops. (Model 16KZ -W): $795. CGI -W): $350. STORES /MAIL 4K RAM. Bank -select allows ex- DIGITAL INTERFACE (OUR NEW So count on Cromemco. Look pansion to 8 banks of 64K TU -ART). Interfaces with teletype, into these Cromemco products at each. Kit (Model 4KZ -K): $195. As- CRT terminals, line printers, etc. Has your store. Or order by mail from sembled (Model 4KZ -W): $295. not one but two serial I/O ports and the factory. THE BYTESAVER - an 8K capa- two 8 -bit parallel I/O ports as well We wish you pleasure and suc- city PROM card with integral pro- as 10 on -board interval timers. Kit cess with your computer. Cromemco in c or p or a t e d Specialists in computers and peripherals 2432 CHARLESTON RD., MOUNTAIN VIEW, CA 94043 (415) 964-7400

Circle 40 on inquiry card.

www.americanradiohistory.com FUI NOVEMBER 1977 In the Queue Volume 2 Number 11 Foreground 10 MEMORY MAPPED 10 PUBLISHERS Hard ware -Ciarcia Virginia Peschke Manfred Peschke 50 USING INTERRUPTS FOR REAL TIME CLOCKS EDITOR IN CHIEF Real Time Techniques -M F Smith Carl T Hclmcrs I r PRODUCTION MANAGER 68 DOES ANYBODY KNOW WHAT TIME IT IS? Judith Havcy Peripherals -Grappel CIRCULATION MANAGER Gregory Spitzfaden 72 ADDING AN INTERRUPT DRIVEN REAL TIME CLOCK ASSISTANT PUBLISHER Real Time Systems -Sneed Debra Boudricau EDITOR 76 FLOATING POINT ARITHMETIC Christopher P Morgan Soft ware -Hashizume CO -OP EDITOR Scott Morrow 80 BUILDING A COMPUTER FROM SCRATCH PRODUCTION EDITORS Hard ware -Jones Karen Gregory Nancy Salmon 94 A 6502 PERSONAL SYSTEM DESIGN: KOMPUUTAR ADVERTISING Hardware-Brader Debra Boudricau, Director Noreen Bardslcy 146 IMPLEMENTING AN LSI FREQUENCY COUNTER Virginia Peschke Hardware -Lynne EDITORIAL ASSISTANT Ingrid Nyland 150 SWEET16: THE 6502 DREAM MACHINE PRODUCTION ASSISTANT Software- Wozniak Cheryl Hurd CIRCULATION ASSISTANT 166 DO YOU NEED THE REAL TIME? Pamela R Hcaslip Real Time Systems - Trollope CONVENTION SUPERVISOR Elizabeth Alpaugh DEALER SALES Ginnie F Boudrieau 18 SIMULATION OF MOTION: An Improved Lunar Lander Algorithm CLUBS AND NEWSLETTERS David Woamak Modelling -S P Smith TRAFFIC MANAGER 26 A MINICOMPUTER FAIR: TINY AND PERSONAL Edmond D Kelly Ir ART Computer Fairs -Piele IVai Chiu Li SPIKES: Pesky Voltage Transients and How to Minimize Their Effects Ellen Shamonsky 54 Dorothy Shamonsky Hard ware -McCain SPECIAL PRODUCTS 172 NIMBLE: THE ULTIMATE NIM? Floyd W Rchling Medellin Stephens Software -Doliner EXECUTIVE SECRETARIES Jill Callihan Patricia Clark BOOKS 4 In This Christopher E Smith RECEPTIONIST 6 The Compleat Robotics Experimenter Jacqueline Earnshaw 30 Letters DRAFTING Douglas Glen 37 BYTE's Bugs Stephen Kruse 38 BOMB Lands on APL Lynn Malo Bill Morello 46 The TRS -80: Radio Shack's New Entry Dorothy Shamonsky 60, 197, 218 Programming Quickies TYPOGRAPHY Experiences Custom Marketing Resources Inc 66 My with the 2650 Goodway Graphics 145 Ask BYTE PHOTOGRAPHY Ed Crabtree 160 Switching ROMs in the Fairchild F8 Evaluation Kit PRINTING 162 BYTE's Bits Rumford Press 170, 198 Technical Forum NEW PRODUCTS EDITOR Daniel Fylstra 190, 220 Languages Forum ASSOCIATES 206 Book Reviews Walter Banks Steve Ciarcia 211 Clubs and Newsletters David Fylstra 226 Classified Ads Portia Isaacson 228 What's New?

256 BOMB ADVERTISING SALES 256 Reader Service Southern California: Buckley /Boris Associates Inc 912 South Barrington Cover by Bruce Holloway Suite 202 Los Angeles CA 90049 (213) 826-4621 Northern California: BYTE is published monthly by BYTE Publications Inc, 70 Main St, Peterborough NH 03458. Address all mail except sub- Jules E Thompson Inc scriptions to above address: phone 1603) 924 -7217. Address all editorial correspondence to the editor at the above address. Hearst Building Unacceptable manuscripts will be returned if accompanied by sufficient first class postage. Not responsible for lost manu- Suite 1111 scripts or photos. Opinions expressed by the authors are not necessarily those of BYTE. Address all subscriptions, change of San Francisco CA 94103 address, Form 3579, and complaints to BYTE Subscriptions, PO Box 361, Arlington MA 02174; phone 1617) fulfillment (415) 362 -8547 646 -4329. Second class postage paid at Peterborough NH 03458 and at additional mailing offices -USPS Publication No. 102410. Subscriptions are 512 for one year, 522 for two years, and 532 for three years in the USA and its possessions. Add 55.50 per year for subscriptions to Canada and Mexico. 525 for a one year subscription by surface mail worldwide. Air deli- very to selected areas at additional rates available upon request. 525 for a one year subscription by air delivery to Europe. Single copy price is 52.00 in the USA and its possessions, 52.40 in Canada and Mexico, and 53.50 in Europe, and 54.00 elsewhere. Foreign subscriptions and sales should be remitted in United States funds. Printed in United States of America. Entire contents copyright © 1977 by BYTE Publications Inc. All rights reserved.

BYTE November 1977 3

www.americanradiohistory.com In This page 94 44461444. ï 8/1101 BITE w«» «, A 14 i i, 1 441'1 OL

In this issue, author Steve Ciarcia Do you occasionally rind incorrect Occasionally readers ask for detail begins what we expect to become a data in your computer when you plans of computer systems. David regular feature in BYTE: Ciarcia's know you entered the correct informa- Brader, a BYTE reader from Electric Circuit Cellar. Steve, a senior engin- tion and processed it with a reliable City WA, has implemented an excellent eering consultant to the aerospace program? Does your computer do piece of homebrew craftsmanship in industry by profession, is a rare com- strange things every time the washing his Kompuutar system based on the bination of writer and tinkerer. The machine or furnace turns on? Perhaps MOS Technology 6502 processor. In conceptual model he brings to his your problem is voltage transients. this issue, we provide David's complete interactive column format is that of John McCain writes about Spikes: design for the central processor, the late C L Stong's stewardship of Pesky Voltage Transients and How to control panel interface, and serial "The Amateur Scientist" in Scientific Minimize Their Effects. terminal interface of a general purpose American, but with an emphasis computer. on hardware and software combina- If you want to post a calendar of tions to accomplish interesting appli- events in your computer's memory Frequency counters are useful tools with a resolution of 1 second, a mere cations of personal computing for a variety of applications. Perry systems. Steve welcomes feedback three integrated circuits added to an Lynne shows you how to add one to existing LSI digital clock can it from readers...CH turn your microcomputer in Implementing into a source of time information for an LSI Frequency Counter. His design computer. Use Robert Grappel's Games and models which employ your takes advantage of the Intel 8253 article in this issue to find an answer moving objects require some attention programmable interval timer (as well to the metaphorical question: "Does to details of motion as simulated by a as the power of the microprocessor) Anybody Know What Time It Is ?" computer program. Beginning a series to produce a design that is both of articles on the subject of moving accurate and economical. Any regular source of interrupts objects, Stephen P Smith's Simulation can be used as the key element in a of Motion: An Improved Lunar How do you make an 8 bit machine simple real time clock for the typical Lander Algorithm shows how a real emulate a more comprehensive design? personal computer. James R Sneed time game can incorporate models of In his article, SWEET16: The 6502 shows how to create such an interrupt motion in more than one dimension. Dream Machine, Stephen Wozniak de- source, then program a 6502 to gen- tails the design and functions ofa low erate internal variables for hours, min- Donald T Piele shows that a com- level interpreter for 16 bit operations utes, seconds and 1 /15th seconds of puter fair doesn't have to be big to be which extend the functions of the the day in his article on Adding an good. A Minicomputer Fair: Tiny and more limited 8 bit 6502 processor. Interrupt Driven Real Time Clock. Personal describes the University of Wisconsin's efforts to produce their Continuing the theme of real time I f you do a lot of mathematical own micro extravaganza, which drew and how to keep track of it, G A R calculations on your microcomputer, over 700 attendees. Readers may get Trollope provides an example of the you'll enjoy reading Floating Point some ideas about putting on shows of interrupt driven approach, imple- Arithmetic by Burt Hashizume. Find their own based on Professor Piele's mented through the IRQ interrupt out how to add an economical floating experiences. line of a 6800 processor with a PIA point package to your system and port. Do You Need Real Time? so, improve your number crunching If What might not be appreciated by turn to this article. facilities. the neophyte is the fact that an interrupt driven clock suggests other An excellent way to learn about The game of NIM is well -known uses besides keeping time. In M F computers is to build one yourself. in the annals of computer lore, but

Smith's article on Using Interrupts Hilary D J ones shows that this is not many people have had no contact for Real Time Clocks you'll find a such a terrifying task. Read Building with it. Irwin Doliner presents us simple timekeeping algorithm, and a a Computer From Scratch and find with a version of the game and sketch of how it can be extended to out how to construct a working (albeit supplies us with the design theory share processor time between two limited) computer for under $70 behind it in his article, NIMBLE: different processes. (plus the price of a power supply). The Ultimate NIM?

4 BYTE November 1977

www.americanradiohistory.com im erbatThe You want to record your message verbatim -word for whole Now, Verbatim media. It's a new formulation of ferric word- whether it's bits, bytes or "Dear Folks" trans-111eSSá;e oxides, an advanced macromolecular binder system lated into word processor language. to adhere it to the tough polyester film, and a proc- Our objective in manufacturing recording media for 1S quail ess control system that demands over 200 separate the electronics industry - digital tape cassettes, floppy ty. quality checks before the material is cut, packaged, disks, mag cards, computer cartridges -is to give you the finest, and certified to be 100% error -free. the best, the most dependable, the most cost -effective. The final quality check? "Make it pretty!" Our production people That means rugged, long- lived, abrasion -resistant recording media tell us that magnetic recording media is one of the rare instances in with superior magnetic qualities. If we made tires, they'd be steel- manufacturing where aesthetic appearance translates directly into belted radials. final product quality. It has to look beautiful to work beautifully. We delivered our first digital grade certified tape cassettes back in We have the formulas, the machines, the technology to make high the beginning, 1969. We made the first commercial 3740 -com- quality recording media. But it takes the best people in the indus- patible floppy disks that didn't bear IBM's name. And the first try to deliver Verbatim disks, cards, cartridges and cassettes. Flippyl' reversible flexible disks with anyone's name on them. The You'll find them at your favorite retail computer store. first mini data cassette is ours. And we've got the newest minia- ture flexible disk, the MD 525.

,

Information Terminals Corp. Circle 68 on inquiry card. www.americanradiohistory.com Sunnyvale, California representations of plots, scenarios and tales are a sort of logical game practiced by creators, logical games with very real emo- Editorial and The tional value orientations which stimulate thought about real problems while providing an interesting and enjoyable diversion for Compleat users of the art. Technological fiction, of which science fiction is a proper subset, is the appropriate contemporary place to turn for inspiration regarding the very comtem- Robotics Experimenter porary possibility of ingenious and useful automatons guided by artificial intelligence. A particular science fiction tale which has been one of my greatest emotional inputs

By Carl Helmers On August 16 1977 I received one of regarding the positive values of technology those refreshing and intoxicating articles in human culture is a tale entitled Door (or rather group of articles) which makes Into Summer, by Robert Heinlein. First the combined intellectual and emotional published in the 1950s, this now outdated joys of creating a magazine once a month tale of the near future (1970 is the year rise to new heights. This group of articles when the action commences with flashbacks is a background tutorial on biological to the fictional 1960s) is perhaps the one inputs to the field of robotics and artificial science fiction story which maps most intelligence, written for the personal com- closely to the current technological milieu puting experimenter by Ernest W Kent, a of the smart machines made possible by professor in the department of psychology microprocessor technology. Anyone who is of the University of Illinois at Chicago seriously interested in practical use of robo- Circle. It is one of those articles, like Ralph tic technology and smart machines should

Hollis' article on NEWT in the J une 1977 read this book as a source of background BYTE, which gets instant high priority due information and ideas about what is or to the subject matter and style of presenta- might be possible. (The actual plot is a well tion. (Readers should see the beginning of constructed romantic tale in spite of its use the series in early 1978.) of that logical trap which is the time travel

I call the twin subjects of robotics and deus ex machina.) artificial intelligence "hot" ideas for BYTE The inspiration to be drawn from the based on reader interest as expressed in the story of Door Into Summer is that of an BOMB poll's responses to Ralph Hollis' exciting time when technology has advanced article on NEWT and Mike Wimble's articles to the threshold of intelligent robotic mech- (among others) on various artificial intelli- anisms mass -produced for use in mundane gence concepts. Inspired by receipt of Dr tasks. It is the era of Drafting Dan (auto- Kent's articles, the theme of this editorial is mated intelligent drafting machine), Hired the concept of smart machines and related Girl (automated housekeeping robot), and robotic mechanisms as a fertile field for numerous similar specialized devices. Some

. experimentation with design and imple- of these fictional concepts have already mentation. What are the categories and been implemented in practice, especially in classes of experimentation which are rele- the area of automated aids to the production vant to artificial intelligence and robot of capital goods. The idea of Drafting Dan, design? Why are we (experimenters all) so the intelligent drafting device, is actually in fascinated by the simulation of life? What use on a small scale today but with a far are the topics of study needed to become higher degree of refinement and intelligence:

"the complete robotics experimenter ?" I refer to the various computer aided design What will we see over the course of the next techniques utilizing graphic displays and decade or so, as personal computers become computational support in fields as diverse the refined personal software development as airplane design, computer design, and systems needed to support private robotics architecture. Others among the concepts in research? Robert Heinlein's story have yet to be It often helps to draw inspiration from implemented with any degree of perfection fiction, an element of our culture which has or widespread use. been present from its, beginnings in the The parallels between Door Into Summer allegorical tales of primitive religions to the and the current era are many. In the fic- sophisticated and future oriented techno- tional account, technology has developed logical fiction tales of contemporary film, television and printed media. Fictional Continued on page 138

6 BYTE November1977 www.americanradiohistory.com The complete $655 line printer. It's ready to plug in, has an 80- column format, a remarkable MTBF and is 14 times faster than a teletype!

Breaking the hardcopy barrier the paper is inexpensive and readily It's finally happened! The Axiom available, costing about 10 for an EX -800 provides full performance 81/2 x 11" equivalent. hardcopy at a price compatible with today's low cost micros. This little Light, small, quiet, reliable, 80- column machine zips along at 160 and versatile characters per second (14 times faster Our EX -800 weighs in at 12 than a teletype) -at a breakthrough pounds, is just 91/2 inches wide, 4 single quantity price of $655 for a inches high, and 11 inches deep, and complete printer. is delightfully quiet which makes it ideal for office and other low noise When we say complete environments. The simple print we mean it mechanism is virtually maintenance The EX -800 is a stand -alone unit free. In fact, tests show an incredible with case, power supply, 96 character character size. It also means reliability. MTBF, many times greater than ASCII generator and interface, paper Several industry surveys have shown impact printers. This versatile printer roll holder, infra -red low paper detec- LSI to be many times more reliable is the ideal mate for micros, minis, tor, bell, and multi-line asynchronous than equivalent conventional circuitry. CRTs, instruments and systems. input buffer. You won't find these standard features on any other printer, regardless of price! fu - _ -_-_-_ -_ --_ THIS LIFE-SIZE SRHFLE =H-- 80-EXiin PRIHTCUT FRC5 -_ Our only option Our printer is so complete, that we offer only one option. A serial inter- face (RS 232C or current loop) good for 16 baud rates from 50 to 19,200 and thoughtfully provided with a switch for either Centronics or Tally The advantages of Just unbox and plug it in compatibility. Might we call it a Tally - electrosensitive printing That's all you have to do to the whacker? At $85.00 it certainly The EX -800 can print 80, 40, or Axiom EX-800 - apart from pay should be! 20 characters across the five inch for it, and at $655 that's almost wide electrosensitive paper. Under a pleasure. Built -in LSI microprocessor software control, single characters or NE No ow The heart words may be printed larger for I of the EX -800 emphasis. The permanence of the Send to- 5932 San Fernando Rd., is a printed hardcopy is archival, because once Glendale, CA 91202 circuit card, - the aluminum coating has been re- containing a moved, there is no way to put it back. Urgent. Please phone me at ext Have rep contact me custom LSI chip made by Intel to It's unaffected by sunlight, moisture l'd like to have a demonstration Axiom specifications, which controls or heat. Although the printer doesn't Send lit including sample of printout all printer functions. Microprocessor provide multiple copies, excellent 1 1 power means flexibility. Such as the quality photocopies can be made Name 1 built -in self test routine and variable from the high contrast printout. Also, Company , 1 , Dept-_ , Address O City Stale 11 AXIOM CORPORATION ' Zip- __Telephone ' 5932 San Fernando Rd., Glendale, CA 91202 (213) 245 -9244 TWX 910 -497 -2283 ------Circle 8 on inquiry card. (fY1F_tioremhcr1r77' 7

www.americanradiohistory.com Check out TICS new 4K static RAMs. They've got everything you ever liked about the 2102. And more.

2102 1K TI's New 4K Static RAM Static RAMs

SIMPLE TO USE Like the popular 2102, TI's new 4K static RAMs are easy to use. Minimize system overhead; no refresh; simple address- y v ing. It's easy! NO CLOCKS. NO TIMING STROBES. 000 No clocking needed for TI's fully static

ADDRESSES VALID ETC 4K RAMs. No edges. Just present an ad- bAO 000 dress to the selected device and data v ACCESS TIME can be read at access time.That's it. / Av /t 0DAIA OUT \Qf [ \ VALID y

8 BYTE November 1977 Circle 152 on inquiry card.

www.americanradiohistory.com 21021k TI's New 4K Static RAM Static RAMs

FULLY STATIC. ACCESS Fully static RAMs are totally asynchro- TIME = CYCLE TIME. nous. Require no precharge or recovery time. Access and cycle times are always the same.

DATA VALID - NO TIME LIMIT. Fully static RAMs offer output data that ODD V v1 are valid as long as the address is valid. ADDRESSES A VALID 7 Makes designing straightforward. No AVA -_%10C1:3 ACCESS TIME limit on output valid time. No extra COO circuitry. NO TIME DATA OUT VALID -9. VolAva'=f IMIT

SINGLE +5 V SUPPLY. Just one +5 V supply needed. Full TTL FULLY TTL COMPATIBLE. compatibility on all inputs and outputs with full 400 mV guaranteed dc noise immu nity.

-±10% TOLERANCE SUPPLY. Improved power supply tolerance means less stringent regulation. Less cost.

HIGH SPEED.

2102

TI 4K STATICS TI's new 4K static RAMs take up where the 2102 left off. Offering a wide choice 1000 900 800 700 600 500 400 300 200 100 of speeds from 150 ns to 450 ns maxi- ACCESS/CYCLE TIME (ns) mum access /minimum cycle. Plenty of

Max. performance to match today's and to- 1 x Access 41( x 1K 4 morrow's CPUs.

150 ns TMS 4044-15 TMS 4045-15 200 ns TMS 4044-20 TMS 4045-20 250 ns TMS 4044-25 TMS 4045-25 300 ns TMS 4044-30 TMS 4045-30 450 ns TMS 4044-45 TMS 4045-45

LOW POWER. Compare the power savings of the new 4K statics to the low power 21L02. For Four Low Power 1K TI 4K Static Parameter One Static RAMs (2102AL -2) RAM (TMS 4044 -251 equivalent speed, the new TMS 4044

Max. Access 250 ns 250 ns uses 63% less power. Min. Cycle For super low standby- power /battery- Operating 1368 mW 500 mW Power (Max.) backup operation, use the pin- compati- Package(s) 4 x 16 pin 1 x 18 pin ble 20 -pin TMS 4046/47 Series. Data is Board Area 3.7 1.0 Ratio retained downto 10 mW.

HIGH DENSITY 18-PIN PACKAGE. The new 4K statics come in industry - standard, 18 -pin packages, plastic or ceramic. A density improvement of al- most four -to -one over 2102s.

FOR DATA SHEETS, application reports, price and delivery, call your nearest authorized TI distributor or TI field sales office. TEXAS INSTRUMENTS .1977 Tens Instruments Incorporated INCORI'OR/1TED 93192

Circle 152 on inquiry card. BYTE November 1977 9 www.americanradiohistory.com Li8Icith Circuit Cella Memory Mapped IO

Steve Ciarcia I don't want to get into a fight over This of course made me curious, and Box 582 which microprocessor chip is better. They all approached a number of 8080 users to ask Glastonbury CT 06033 have their favorable and unfavorable fea- if they knew what memory mapped IO was. tures. But, if you look a little closer, you They assured me that they did, and that it may find that some of these extra features was in fact one of the main features of the can be added with very little expense. 6800. But such a feature is hardly exclusive

I was speaking with a fellow computer to the 6800! nut recently, and he was arguing about the First of all, memory mapped IO means

merits of the 6800 versus the 8080. I really simply that a portion of memory address didn't care to continue the conversation nor space has been reserved for interfacing with

to justify why I had an 8080 and Z -80. But, external devices. A byte of data is stored when he said that one reason was that the into a memory location, as always, but this 6800 had memory mapped IO and the 8080 storage unit, rather than being made up of

didn't, I knew he didn't know what it was. 1024 bit programmable memory chips, is an

Power Wiring Table OUTPUT DATA BUS (FROM CPU)

MS LSB Number Type +5 VDC Gnd Pin Pin IC3 7407

IC1 7420 14 7 I C 4 IC2 74154 24 12 7407 IC3 7407 7 14 + 5V DC IC4 7407 14 7 IC5 74100 24 7 22052

(TYPICAL FOR 8 ) OUTPUT STROBE V D6' - u- STROBE NO.1 1 9 D5' G2 -N.0 2 I C 2 3 D 4' A7 E> 74154 0.3 E> BUFFERED 13 OUTPUT 4 N0.4 I I BUS ICI E>D3' A6 E> ICI L j If 18 7420 I 4 7420 GI A5 E> 5 Io E> D2' I Ir 8 N0.8 8 A4 E> 9 N0.9 E> D l' 10 N0.10 II D O' A3 20 D NO.II E> E 13 I ' N0.12 2 3 22 21 11 10 15 16 14 A2 R> N0. 13 DI D2 D3 D4 D5 D6 D7 D8 15 N0.14 12

6 I C5 B A I P 2-2- NO. 15 74100 7 N0.16 23 23 A AO N> 01 02 03 04 05 06 07 08 5 4 119 120 18 9 18 17

MSB LSB I0 ADDRESS BUS (I0 CARD CONNECTOR -22 PIN)

8 BIT LATCHED PARALLEL OUTPUT

Figure 1: A schematic diagram for a direct addressed output port decoding circuit. The port assignments as diagrammed are from octal codes 360 to 377. The bus pin assignments are for the Digital Group bus system, but the Altair (S -100) bus is logically equivalent.

10 BYTE November 1977

www.americanradiohistory.com Intel delivers SDK85. It's the quickest way to sink your teeth into 8085 design.

Intel wants you complete family of programmable to prove to yourself peripheral controllers and why the 8085 has your own prototype become the new \ logic and special industry stan- circuitry. dard microcom- SDK -85 makes puter. To make it an excellent easy for you to do teaching aid for that, our System De- both microprocessor sign Kit for the 8085 is design and program- available now for ming courses, for only $250. microcomputer design SDK -85 is seminars and as a project the best way we for the progressive know for you to hobbyist. Because the 8085 evaluate MCS -85 is the most advanced micro- and develop proto- computer, SDK -85 is the key types of 8085 -based to state -of- the -art knowledge. designs, because it SDK -85 can be assembled gives you a hands -on in just a few hours with a solder- look at this important ing iron and a few basic tools. new microcomputer's Hook it up to your 5V power capabilities. supply and it's operational the And to simplify your evalu- same day you receive it. You can ation, we've designed SDK -85 get your SDK -85 from any of Intel's as a stand -alone kit. It comes distributors for $250 in single unit complete with an integral key- quantities. board for system control and To order SDK -85 or any of data /program entry, and LED display out- the MCS -85 components, contact: put. To simplify programming, debugging Almac /Stroum, Components Special- and operation we've incorporated an on- ties, Cramer, Hamilton /Avenet, Harvey board, ROM -resident software monitor. Electronics, Industrial Components, The 8085 family of components Pioneer, Sheridan, L.A. Varah, provides you with unprecedented design Wyle Liberty /Elmar or Zentronics. flexibility. The basic three -chip, high level Or, for more information, use integration MCS -85 system is included in the reader service card or write: Intel SDK -85. It includes the 8085 CPU, 8155 Corporation, 3065 Bowers Avenue, 256 -byte RAM with I/O and timer and Santa Clara, CA 95051. 8355 2K -byte ROM with I /O. And there's Telephone: (408) 246 -7501. an on -board single -chip keyboard /display interface, the 8279. Sockets are provided intel delivers. for easy RAM and ROM /EPROM expansion. And there's ample free space layed out for easy wire wrap expansion using Intel's

Circle 71 on inquiry card. BYTE November 1977 11 www.americanradiohistory.com 8 bit storage register such as a 74100. This type of procedure provides access to the data byte through the "back door," or output lines of the 74100. If you have followed me to this point, you can see that the concept of memory mapped IO is applicable to any microprocessor that

directly addresses memory! I don't know of too many processors which operate without this ability, so we'll just have to conclude that any microprocessor can be wired to provide memory mapped IO, including the 8080. Look no further! It's a bird. . .it's a plane. ..no, it's Superchip! It looks like an 8080, acts like an 8080 and, while not trying to steal Motorola's thunder, has memory mapped IO! The name of this new chip? Well, it's the plain old 8080 with an intelli- gent user.

Why should I consider memory mapped IO? The 8080 directly addresses 64 K bytes of memory and 512 IO ports (256 in and 256 out). The only way data can arrive at an output port is by being passed through the accumulator and routed to a particular port Photo 1: A realization of the hardware circuit shown in figure 1 with the by a 2 byte output instruction. Similarly, a addition of eight lights connected to the outputs of IC5. The connector 2 byte instruction directs input data to the attaches to bus lines for the author's other front end projects. accumulator. Additional programming is necessary to store this input byte in memory. Photo 2: A prototype for the circuit shown in figure 2.

C .70O0( C-', C' ' -!U000 Onc(ocu 000C 0060 1003A uoC SNSl07N O00 44. 00000000000(7.J OC ° OOC...t"'-.,.00004 ¢ciöC-, iP;,c)QO0 .r)poOc 1 ^,( oOÓQÒC1- ... t-n0000 1 4100 _1.;.00OOq000000c Iál .ri 0000 1 '1 1003N O1)0( 1 415 1 SN5107N OO I 1 OC 00000 000 VC O r, Gt '00 ...... , (00Oc 60:' Ou I, O( Cr D '0C, ,,or,0000 SN1(1PN U0 .)uGC,O.70 p CO ",')00000000000000 CO .)J0000G00,!OOUOO u c1)-' on 000000000 . 00 .:000000014V0000 . . , . . . . . COOG'Cÿ 000000000000000. ?. .'.00 (;j 00000000000<)000.' 18 ,: c-t?- OßA O.bA G000000400000

12 BYTE November 1977 www.americanradiohistory.com Now! Give yourself a working knowledge of microprocessing forjoborhobby. All -new self -study program from Bell & Howell Schools provides engineers, technicians and advanced hobbyists with applicable knowledge of basic programming concepts and trouble- shooting techniques for use in microprocessing systems.

Now, without getting boxed -in to classroom 11. Explain the operation of bidirectional data And because the program is designed by Bell schedules, you can learn the of mi- bus systems. & Howell Schools, you know you'll have the croprocessing and programming and apply 12. Describe the operation and use of most up -to -date information offered any- them to actual problem -solving applications semiconductory memory systems, i.e. where. ñ your job or your hobby. In addition, if you EROM, ROM, RAM. Try it for 10 days at no risk. happen to have a strong electronics back- The emphasis is on the practical. We are so confident that this extraordinary ground, you'll be able to apply your This introductory program concentrates on program will meet your standards and expec- specialized knowledge to trouble- shooting the practical operations of microprocessing, tations in every way that we invite you to techniques and hardware configurations of providing you with ready knowledge you can accept this program at no risk whatever. microprocessors and systems. apply to products you are now marketing and, Simply do this. Order your Microprocessing It's all made possible with Bell & Howell particularly, to those you have on stream. Program today for $89.50. Examine the Schools' all -new, self -study program de- Every word, every segment, every graph is materials closely and complete as many signed specifically for professionals (en- presented in a way to communicate practical, segments as you like. If, within ten days, you gineers, technicians, programmers) and usable facts... and in the mosteffective way do not agree that this program can help you advanced hobbyists. possible. learn the basics of microprocessing in the Once you complete this program, you will That's why each segment is followed by self - fastest, most practical way, just return the be able to: grading questions. This way, you're able to materials and your money will be refunded 1. Write simple programs in both assembly reinforce the major points you've learned and promptly. and machine language, given the pro- apply them more effectively to the subject So, right now, return the coupon below. Re- gramming manual and instruction set for matter in the next segment. member: there's no risk. No obligation what- a particular microprocessor unit. You must be completely convinced that You work at your own pace. ever. 2. Describe the basic operation of the mi- this Microprocessing Program can do the job There are no classes or seminars to attend croprocessor, including the means of in- for you -or your money back. ternal data transfer, instruction decoding, No pressures or deadlines. You progress as fast or as slow as you like. memory access and I /O. BELLE HOWELL SCHOOLS 3. Convert numbers between the decimal, Once you complete the program, you will a binary, octal and hexadecimal systems. have a valuable referencetoolyou may return 2201 West Howard Street 4. Followthe execution of a simple program, to for reviewing and refreshing your memory. Evanston, Illinois 60202 including arithmetic and logic statements. 5. Identify and describe the circuits neces- sary to interface a microprocessor sys- tem with the outside world. Send to: Bell & Howell Schools, 2201 W. Howard, Evanston, Illinois 60202 6. Describe the data transfer between the Enclosed is my check or money order for microprocessor, memory and peripheral $89.50. Please send postpaid the Bell 8 Howell equipment. Schools Microprocessing Program. If not com- pletely satisfied, all materials will be returned Name 7. Understand the techniques of trou- within 10 days for prompt refund. bleshooting micro -computer -based sys- Charge to credit card below: tems. Address BankAmericard # 8. Observe the proper servicing procedures for MOS circuits. Master Charge # City 9. Understand the basic operation of a mi- For Master Charge card, include 4 -digit number croprocessor in both a computing and above name State control application. Expiration date 10. Understand the techniques of connecting the proper test equipment to a micro- Signature Zip processor system, observing wave forms and other data to diagnose a system fault. L J

Circle 10 on inquiry card. BYTE November 1977 13

www.americanradiohistory.com Obviously, if the data path went to a 8080 output "port." To emphasize simpli- memory location instead of an output port, city I've used 74100 latches for this example a broader range of instructions would be rather than the more complex ports such as available. The 8080 (like most computers) the Motorola 6820 peripheral interface has some very powerful instructions when it adapter. This configuration provides 16 comes to memory operations. For the 8080 output strobes, starting with the octal these include MOV, MVI, STAX and STA output port address 360 and ending with

instructions which, by definition, are added octal 377. Integrated circuits 1 and 2 decode to the output data manipulation repertoire the address bus and, when provided with with memory mapped IO. an output strobe during an output instruc- Often the best way to approach a new tion, load the present contents of the data subject is to analyze the present method. bus into an 8 bit storage register (IC5).

Figure 1 illustrates the basic design of an ICs 3 and 4 provide buffering and allow more 74100s to be attached to the buffered ouput bus lines for multiple ports. The pin Power Wiring Table designations are for the Digital Group bus system, but the Altair (S -100) bus is Number Type +5 VDC Gnd logically equivalent. Pin Pin Converting an output system to memory mapped IO (illustrated in figure 2) requires

IC1 7420 14 7 the addition of two more integrated circuits, IC2 74154 24 12 ICs 6 and 7, to decode the additional eight IC3 7407 14 7 lines associated with memory addressing. IC4 7407 14 7 MEMORY ADDRESS BUS IC5 74100 24 7 With the decoding arrangement illustrated (MEMORY BOARD CONNECTOR) IC6 7402 14 7 in figure 2, the 16 output (memory) loca- IC7 7420 14 7 A 15

A14 MEMORY DATA BUS (FROM CPU) M SB LSB A 13 o-o- IC3 4-0-0- 4 A 12 7407 IC7 7430 IC4 All 5 7407 3 A10 +5v DC 22052 A 9 (TYPICAL 12 FOR 8) L>D7 A 8 D6

ME E), 15 5' WRITE

STROBE I E>D4' BUFFERED MEMORY

I I DATA BUS 1 STROBE NO G2 1=>D3' 2 IC2 N0.2 1 74154 A 7 E> =N0.3 E>D2 4 N0.4 E>DI1 A6 2 ICI N0.5 4 7420 GI =N0.6 1 A 5 5 la N0.7 D0 N0.8 2 3 22 21 m 10 15 16 A 4 T 10 DI D2 D3 D4 D5 D6 D7 D8 N0.10 12 0 II IC5 A 3 E> N 0.11 13 74100 N0.12 23 4 N0. 13 01 02 03 04 05 06 07 08 15 N0. 14 5 4 19 20 8 19 18 17 2 6 N0.15 17 N0. 16 3 MSB LSB Q Q 8 BIT LATCHED PARALLEL OUTPUT

Figure 2: A schematic diagram for a memory addressed output port decoding circuit. The port assignments in this case are from split field octal memory addresses 377/ 360 to 377/377. Here again, the bus pin assignments are for the Digital Group bus.

14 BYTE November 1977

www.americanradiohistory.com Some people build personal computers for the love of building. The Equinox System' is for people who build for the love of computing. You put it together. And it's really together. The Equinox 100 TM mainframe combines the 8080A CPU with a front panel program- ming station featuring ultra- convenient octal keyboard and digital LED readout. There are low -cost 4K and 8K memories. All your interfacing comes in one kit. Even EQU /ATE TM and BASIC -EQ TM languages on easy -loading cassettes. It's all together now. It's all S -100 compatible. And it's upward -compatible with new Equinox TM equipment, software and systems coming in the months ahead. See the Equinox System TM at your local computer shop. Call toll -free to 800 -648 -5311 (BAC /MC accepted). Or write Equinox Division, Parasitic Engineering, P.O. Box 6314, Albany, California 94706. THE EQUINOX SYSTEM" All together now.

www.americanradiohistory.com that the 8 K bytes are decoded to Example 1: Output the contents of the B register to port r. provide 8192 IO port assignments. 8080 Direct IO MOV B, A ; Move the contents of the B register to the accumulator Once the H and L registers have OUT r ; Output the accumulator to port #r been loaded and provide a memory ; Total bytes 3 pointer, memory output is by 1 ; Total states 15 byte instructions (such as MOV and Memory Mapped IO STAX). LXI HL ; Set memory pointer HL

MOV M, B ; Move B register to memory location HL By not always having to pass ; Total bytes 4

; Total states 17 through the accumulator, outputs are faster. For simple data manipulations like this, the direct 10 technique, which is familiar to all 8080 users, occupies less memory space. 16 bit IO capability through the use

Example 2: With two 8 bit digital to analog convertors attached to output registers, of the LHLD and SHLD instruc- generate two sawtooth waveforms 180 ° out of phase. tions.

8080 Direct IO Now, should you consider changing your LXI BC ; Load initial values into B and C (000, 200 octal) 8080 system to memory IO? Frankly, if you CONTINUE INC B ; Increment the B value

MOV B, A ; Move the contents of the B register to the accumulator are the type of person who will never write

OUT 1 ; Output the accumulator to port 1 (1st sawtooth) an assembly language program and is con- INC C ; Increment the C value tent to stick with high level languages such MOV C, A ; Move the contents of the C register to the accumulator as extended BASIC, don't even consider it. OUT 2 ; Output the accumulator to port 2 (2nd sawtooth) JMP CONTINUE If the software packages supplied by the Total bytes 14 computer manufacturers have worked con- Total states 60 (one pass) sistently for you to this point, don't tempt fate. The majority of the systems sold, in- Memory Mapped IO cluding Altair, IMSAI, DGS and so on, LXI HL ; Load initial values into H and L (000, 200 octal) CONTINUE INC H ; Increment the H value use 8080 IO instructions to all their peri- INC L ; Increment the L value pherals. But many video systems bought as SHLD ADDR; Store H and L in two consecutive memory locations wired plug -in boards for the Altair (S -100) bus as output registers. have memory mapped IO designs. JMP CONTINUE Total bytes 11 Delving into memory mapped IO should Total states 46 (one pass) be reserved for people willing to use assem- bly language and prepared to modify stan- dard software if required. In future editions

I intend to investigate computer music tions will be from split octal addresses 377/ applications where fast memory mapped 360 to 377/377. 8080 (Z -80) IO will become a necessity. Now let's compare a couple of simple But, for the meantime, you should at least programs written using each method (see know what it is.

examples 1 and 2). It can be easily seen that the extra instuctions which operate on memory can greatly improve the output speed of the 8080. This extra speed, though Author's Note not necessary when driving a 110 bps Tele- type, can be a saving grace in a computer I hope you've enjoyed music or graphics application. In fact, many the first installment of video display drivers utilize this technique. Ciarcia's Circuit Cellar. I'd like to have your com- Summary ments and criticisms as well as any ideas you may There are certain advantages to con- have for future editions of verting 8080 peripherals to mapped versus this feature. I'm always direct 10. Among the major points to con- interested in hearing from sider are the following: readers who have such brainstorms. Send all More IO ports are available. The correspondence to Steve full 64 K bytes of addressable mem- Ciarcia, PO8 582, Glaston- ory space can be set up for IO. It is bury CT 06033, and please not inconceivable that a video enclose a stamped, self- graphics display will use 8 K bytes addressed envelope. of memory. This, of course, means

16 BYTE November 1977

www.americanradiohistory.com PiiELEf1 SEJLUJEEÌ SYSTEMS, INC. Manufacturers of QuanTronics Computer Products Space Age Memory...

10V..

rICf, ':

,._ ....__ ...

. ,at Down to Earth Prices MM8 Static RAM MM16 EPROM Available in 250nS and 450nS versions Utilizing up to 16 2708 EPROMS S -100 Bus Computer Systems S -100 Bus Computer Systems Memory capacity of 8K -bytes x 8 bits maximum Memory capacity of 8K or 16K bytes by DIP Switch Addressing selectable by DIP Switch 8K boundary addressing by DIP Switch Wait cycles selectable by DIP Switch 0 to 4 wait cycles by DIP Switch Memory protect from 1/4K to 8K by DIP Switch Data output, address input lines fully buffered Data output, address input lines fully buffered Hi -grade glass -epoxy with plated -thru holes Provision for SOL "Phantom" line Epoxy solder masked Find Out For Yourself - See Your Local Dealer Today!

R U LEr1 SOLDER SYSTEM, INC. : o o Manufacturers of QuanTronics Computer Products

8040 DEERING AUE.. 5111TE 10 CAN[GA PARK, CFI. 913514

Circle 119 on inquiry card. BYTE November 1977 17 www.americanradiohistory.com Stephen P Smith POB 841 Simulation of Motion: Parksley VA 23421

Part 1: An Improved Lunar Lander Algorithm

About the Author methods presented in this article and the Stephen P Smith's pet project as an amateur is a PASCAL compiler for a following ones, you will learn to simulate personal computer. Professionally, he leads the Computer Sciences Corpora- a wide variety of motion. Whether you use tion support team attached to the range safety office at NASA Wallops these simulations to create games, like the Flight Center, where he and his team of analysts develop analytical methods real time LEM simulator presented here, or and construct digital simulations of flight paths, flow fields and structural to develop new applications for your per- responses of rockets and aircraft. The BASIC programs which are part of this sonal computer system, you will acquire article and the remaining parts to come in several installments were developed some valuable additions to your applications and run on a Tektronix 4051, which uses a 6800 microprocessor and includes software toolbox. a BASIC interpreter. For any application involving motion, your simulation will be required to predict the speed and position of an object at some One of the most delightful applications time in the future. The predictions can be for personal computers is games, not just made using a microcomputer if you first playing them, but creating them. If you are limit the type of motions considered at like most enthusiasts, you will have begun any point in the program. In the lunar with random number games like blackjack, lander game, for example, the excursion but sooner or later you will want to work module (LEM) is only allowed to move up with games involving moving objects. To and down. The simulation is said to have one describe that motion using a microcomputer degree of freedom. Other degrees are you will need to use a form of simulation. possible, but the separation into different The simulation could involve detailed mathe- degrees of freedom is an important first matical models solved with elegant numeri- step. cal techniques. Let's see how a one degree of freedom More likely, the novice will begin by fol- simulation is performed. Thanks to Sir Isaac lowing the pattern of the simple lunar Newton and his apple (that was a fruit, not lander games which have appeared often a computer), we know that an object will in BYTE (see "Kim Goes to the Moon," by continue to move in any degree of freedom Butterfield in April 1977 BYTE, or "Con- without changing speed until a force acts trolling Small DC Motors with Analog on it. To predict how the LEM will move, Signals" by Dwyer, Critchfield and Sweer in we need only to examine the forces which September 1977 BYTE). The truly ad- might be present and determine how they vanced simulations are best left to pro- effect the up and down motion. fessionals with mainframe computer power, Because the moon has no atmosphere to but the home user can progress well beyond involve us in aerodynamics, only two forces the simple lunar lander game. By picking up need be considered, gravity and thrust. the basic physics and simple numerical Gravity makes the LEM fall faster. Thrust

18 BYTE November 1977

www.americanradiohistory.com MB3 26/4K EPROM Board Kit lean EPROM S 94.95 Kit with 8 -1702A (1 as) 104.95 Kit with 18 -1702A 11 25) 144.95

MBA 4K Memory Board Kit with 4K 450 na 100 mw RAM S109.95 Bare P.C. Board 29.95

MBB 8K Memory Board Kit with BK 450 na 100 mw RAM $199.95 Bare P.C. Board 2995

M87 15K Memory Board Kit with 4K RAM 1187.95 Kit with 8K RAM 29500 Klt with 18K RAM 52500 Bare P.C. Board 29.95 And, we build just MRS 9K /18K EPROM Board about any board you'll Kit lesa EPROM 1 84.95 want for S-100 bus expansion.

When you're thinking about expansion MB9 Stalle PROM /RAM Board look to the Solid State Music "blue Kit leas memory $ 79.95 boards" You'll find quality and user versa- tility built into every one allowing you to ex- pand your system in whatever direction you choose ... and, we've been doing it for years. 102 Input /Output, PROM and Universal Board Right from the start we design our boards with our Kit S 5495 Bare P.C. Board 29.95 customers in mind. Extra features are added that will aid in expansion, not hinder program design and devel- opment. All first class parts are used and they're checked

VB1 video Interface Board to make sure you have years of trouble free operation. Plus, Kit 1149.95 Bare P.C. Board 29.95 every kit comes complete with assembly instructions and user information to make assembly a snap and operation a pleasure. Talk to your dealer today to get more facts about the "blue boards" or write direct. Compare prices, quality and features. You'll find out

SB1 Music Synthesizer Board why more and more people are using Solid State Music "blue boards" Kit with paper tape of M US-K1 1199.95 for their S -100 bus expansion. SPECIAL BONUS OFFER An 8080 Monitor for 1/2 price!!! 104 2- Parallel and 2-Serial Input /Output Board Cii 514995 If you buy any of the Solid State Music kits or assembled boards you'll receive a SSM8080 Monitor complete with ei- ther eight 1702's or two 2708's and over 50 pages of software information. A $49.95 retail value... just $25.00. Hurry! ebbereem

Solid State Music 2102A Walsh Avenue Santa Clara, CA 95050 Circle 133 on inquiry card. (408) 246 -2707 Were the blue boards www.americanradiohistory.com simulation, but it fails to demonstrate the Generic Unit Metric way in which forces actually cause changes in speed. Length 1 meter 3.2808 feet Velocity 1 meter per second = 3.2808 feet per second Unlike gravity, forces such as thrust do = 2.2369 miles per hour not have the same effect on every object. Acceleration 1 meter per second per second = 3.2808 feet per scond per second They have a larger effect on light objects Mass 1 kilogram = 2.2046 pounds (mass) 0.0685 slugs (mass) than they have on heavier ones. It is Force 1 newton 0.2248 pounds (force) important to consider this fact in accurate simulations, because weights can change. Table 1: This article was using system units. As the written the metric of The LEM becomes lighter as it burns fuel front runners in an exciting new technical hobby, we should be more ready to create thrust. A given value of thrust than most to accept the coming metric conversion in this country, but you if will have a larger effect toward the end haven't been converted yet, the above table will be useful. of the flight than it will at the beginning. Weight is not really the correct term to use when calculating that effect. We should makes it fall more slowly. The exact effect talk instead of mass. The difference is of each can be calculated with only a few subtle, but important. Mass is a basic pro- operations. perty of matter. Weight is the result of Gravity is the simpler of the two. It has gravity pulling on the mass. A man on the exactly the same effect on every object. moon weighs only 1/5 as much as he does During each second of a lunar landing near on earth, but his mass is the same. This is the moon's surface, the moon's gravity will true because the moon's gravity pulls only make a LEM fall 1.62 meters per second 1/5 as strongly on his mass. The effect of faster. (Those of you who wish to land on a force is determined by the mass of an more exotic heavenly bodies are referred object, not by its weight. A given thrust to table 2.) In most simulations, speed and will have the same effect on a LEM whether position are considered positive if they are the LEM is landing on the moon, on earth, directed upward, in this case away from the or is floating "weightless" in space.

lunar surface. To simulate 1 second of fall In the metric system, the unit of mass through lunar gravity we must subtract 1.62 is the kilogram. The unit of force is the meters per second from the present speed. newton. These units are very convenient If the LEM is moving at -100 meters per for calculating the effect of a force on the

second now (100 m /sec downward), 1 motion of an object. The force (in newtons) second later it will be moving at -101.62 divided by the mass (in kilograms) is exactly meters per second. equal to the rate of change in speed In many games, the effect of thrust is ( "acceleration" in meters per second per also simulated by a constant change in second). No additional constants are needed speed. Often it is given in multiples of as they are when units of feet and pounds gravity called "g "s. One "g" of thrust adds are used. For example, let our LEM have a 1.62 meters per second to the speed, just mass of 1000 kg and let its engine produce a

as gravity subtracts that amount. Two thrust of 10,000 newtons. To simulate 1 "g "s add twice that, and so on. This second of thrust, a program would add 10 assumption reduces the complexity of the meters per second to the speed (10000/

1000) to account for 1 second's worth of acceleration. Surface Surface Heavenly Gravity Heavenly Gravity Remember though that during the same Body (misec2 ) Body (misec2 ) second 1.62 meters per second must be sub- simulate the Moon 1.62 Asteroids tracted to effect of gravitational Earth 9.80 Ceres 0.85 acceleration. The actual change in speed will Mercury 3.95 Pallas 0.54 be 10.- 1.62 =8.38 meters per second. In two Venus 8.72 Juno 0.21 Mars 3.84 Vesta 0.43 seconds, the change will be twice that or Jupiter 23.16 Jupiter's moons 16.76 meters per second. In half a second, Saturn 8.77 Ganymede 3.43 the change will be one half as much and so Uranus 9.46 to 2.26 Neptune 13.66 Europa 1.98 on. While this may seem obvious, it illus- Pluto 4.89 Callisto 3.20 trates an important point. The change that

each force makes in the speed in 1 second Note that the gravitational accelerations shown in this table are surface accelerations, may be determined separately. The separate valid during the final stages of a landing when a spacecraft is relatively near the heavenly body. A more complicated simulation is required if movement far away from the hea- effects are added up and then multiplied venly body is contemplated. by the length of time we are simulating to find the actual value the simulation pro- Table 2: Players who grow adept at lunar landings may wish to try landing gram will add to the speed. on some other heavenly bodies. The above table of accelerations due to Now that we can predict speed, let's gravity is provided for them. apply the same technique to predict the

20 BYTE November 1977

www.americanradiohistory.com We Have GOOD NEWS and BAD NEWS

The good news is that you can now add any S -100 bus compatible component to The VERSATILE CRT.

The bad news is you'll have to decide for yourself what components will combine to make the best system for you.

Just by looking you can see it's sockets are already included for assembled with a 90 -day a rugged, professional unit with you). Or the heavy duty filtered warranty, about 20 days after we a 9" video monitor covered with power supply and 75 CFM get your order. Or you can buy smoked plexiglass, and a 53 -key cooling fan. Or the power switch one at your nearest dealer. ASCII keyboard. and cord on the rear panel. Or Dealers can have super fast de- But there's more than meets the space available for a floppy livery from stock to 20 days. the eye. What you can't see is the disk system. Or the expansion You'll also receive complete doc- mainframe which is a 10 -slot capabilities on the back panel for umentation and operating plexiglass card rack. Or its fully the addition of sockets. manual. Total price for The shielded motherboard with 10 You'll receive The VERSATILE CRT is $699.95. spaces provided for sockets (2 VERSATILE CRT fully Dealer inquiries are welcomed.

Compact and Expandable, The VERSATILE CRT lets you do it your own way.

COMPUTER DATA SYSTEMS

5460 Fairmont Drive Wilmington DE 19808 (302) 738 0933

www.americanradiohistory.com Photo 1: A scene from the `lunar lander" program which is the Digital Equipment Corportation's graphics equipment demonstration program. This simulation is a real time model of a lunar landing in which a light pen is used to input control information and displays track the landing. The object of the game is to land near (but not on) the only MacDonalds' ham- burger stand on the moon. This simulation, like the one discussed in the article, has two degrees of freedom; superficially it differs from the program of this article largely in its incorporation of real time graphic display light pen control inputs and a model of the lunar terrain. only reach the surface of the moon success- fully, but also land close to his target. While position. We have shown that if the LEM is the pilot's task has become more compli- moving downward at 100 meters per second cated, our simulation fortunately has not. now, (speed = then in 2 seconds the -100) J ust as we are able to calculate the effects speed will be -100. +2.x(THRUST /MASS of each force separately, we are able to -1.62). Similarly, if the LEM is 10000 make calculations for speed and position meters above the moon now, in 2 seconds it separately in each degree of freedom. will be 10000. +2.x(speed) meters up. Just as To make those calculations for the we multiply the forces by time and add the second degree of freedom, first determine product to the speed, we multiply the speed what forces are acting. Gravity, by defini- by time, and add the product to the posi- tion, acts only up and down. It does not tion. enter into the horizontal calculations. So far, What we have just done is to predict the thrust has also been limited to vertical speed and position at a "step" of 2 seconds action, but we can easily add a second into the future. In the jargon of simulation, thrust acting to the side. Positive horizontal 2 seconds is the step size. The step size can thrust should cause the LEM to move left, take any value you choose. Returning to the while negative thrust moves it right. 1000 kg LEM, let the step size be 0.1 Since there are no other forces to con- seconds. For a present speed of -100 meters sider, the change in horizontal velocity (in per second, the speed predicted for 0.1 meters per second) will be exactly equal seconds in the future is- 100. +0.1x(10000./ to the horizontal thrust (in newtons) divided 1000.- 1.62) = -99.16 meters per second. If by the mass (in kilograms). This is, of the position now is 10000 meters, then the course, the same equation used in the first position predicted for 0.1 seconds in the or vertical degree of freedom. Similarly, the future is 10000.+0.1x (- 99.16)= 9990.08 same equations used to calculate vertical meters above the moon. speed and position will be used to calculate Using these values of speed and position horizontal speed and position. we can find new values for the forces and Return to the example used earlier, but mass. We can then step the simulation into also consider the horizontal motion. Let the the future once again. The process can con- LEM start 100 meters to the left of its tinue indefinitely, but usually one or more target moving at 10 meters per second to variables is tested for an end condition at the right. Generally motion to the left will each step. The test might be on position be considered positive and to the right (Are you still above the moon ?), on mass negative, so the horizontal speed is -10 (Is there fuel remaining?), or on some other meters per second. We found that during a variable. Should any of the tests fail, the step of 0.1 seconds the vertical speed program will branch and end the simulation. changed from -100 to -99.16, and the position changed from 10000 to 9990.08. Adding a New Degree of Freedom Quite apart from those calculations, we may set a horizontal thrust, say 5000 newtons, You now know the basic procedure for and find that during the same step the simulating motion in one degree of freedom. horizontal speed will become -10 +0.1x The LEM simulation has been in one degree (5000/1000) or -9.5 meters per second. because we have only predicted the up and The horizontal position will become down movements. These are called vertical 100. +0.1x( -9.5) =99.05 meters. After motions. Suppose that we also predict the making these calculations, the simulation way the LEM moves horizontally, in other words, from side to side. The pilot must not Continued on page 216

22 BYTE November 1977 www.americanradiohistory.com THE AJ 841 I/O-A COMPLETELY A PROFESSIONAL SELECTRIC COMPUTER REFURBISHED IBM SERIOUS FOR THE TERMINAL WITH BUILT IN ASCII HOBBYIST INTERFACE -JUST 5995

Features: ASCII code High quality selectric printing 14.9 characters per second printout Reliable, heavy duty selectric Special introductory price -$995 mechanism (regularly $1195). 75% discount over Off line use as typewriter original price of new unit. Choice of RS 232 Serial Interface or Parallel Interface (requires 3P + S) Order direct from factory 30 day warranty -parts and labor Nationwide service locations

AJ 841 WARRANTY AND SERVICE IS AVAILABLE IN THE FOLLOWING CITIES: Los Angeles Cincinnati Philadelphia Detroit Hackensack Dallas Columbus Houston Cleveland Atlanta San Jose Chicago ANDERSON Boston New York JACOBSON Washington, D.C. Anderson Jacobson, Inc., 521 Charcot Avenue San Jose, California 95131, (408) 263 -8520 r HOW TO ORDER AN CLIP AND MAIL WITH ORDER AJ 841 I/O TERMINAL SELECT EITHER: RS 232 Serial Interface 1. Make cashier's check or money order pay- Parallel Interface (requires 3P + S) able to: ANDERSON JACOBSON, INC. Number of units @ $995. each $ Address your request to: Personal Computer Terminal Local Sales Tax $ ANDERSON JACOBSON, INC. Shipping and handling $35.00 each 521 Charcot Avenue (excluding San Jose) $ San Jose, CA 95131 TOTAL $ 2. Upon written notification, pick up your ter- minal at the AJ service office located in one NAME of the above cities. Allow six to eight weeks for delivery. ADDRESS 3. Afinal check of your unit will be made at the local AJ service office at time of pick up. CITY STATE ZIP 4. For warranty or repair service, return unit L to designated service location. PHONE ( J

Circle 3 on inquiry card. BYTE November 1977 23 www.americanradiohistory.com they're here! the new HEATHKIT® low-cost personal computing systems

The new VALUE -STANDARD in personal computer available today - brought to computing systems! Heathkit computers you by Heath Company and Digital Equip- give you the power and performance to ment Corporation, the world leader in go wherever your imagination and pro- minicomputer systems. Powerful features gramming prowess take you. They're de- include. DEC's 16 -bit LSI -11 CPU, 4096 x signed to get you up and running fast, 16 read /write MOS memory expandable interface with I/O devices easily and to 20K (32K potential), priority interrupt, quickly, accept additional memory and DMA operation and more. PDP -11 systems I/O devices, store and retrieve data with software for fast and efficient operation speed and accuracy, respond to your re- is included! quests with lightning speed. They offer mass complete storage capabilities, power NEW H9 Video Terminal. A full ASCII ter- and reliability for any programming appli- minal featuring a bright 12" CRT, long and cation, and they're priced low enough to short -form display, full 80- character lines, give you real VALUE for your computer all standard serial interfacing, plus a fully dollar! We've told you they're the ones wired and tested control board. Has au- you've been waiting for - here's why! toscrolling, full -page or line -erase modes, These Heathkit computer products are a transmit page function and a plot mode "total system" designs with powerful sys- for simple curves and graphs. tem software already included in the pur- chase price. They're the ones you need NEW H10 Paper Tape Reader /Punch. to get up and running fast. And they're Complete mass storage peripheral uses backed by superior documentation in- low -cost paper tape. Features solid -state cluding easy -to- follow step -by -step as- reader with stepper motor drive, totally sembly and operations manuals, and independent punch and reader and a copy service support from the Heath Com- mode for fast, easy tape duplication. pany, the world's largest and most experi- Reads up to 50 characters per second, enced manufacturer of electronic kits. punches up to 10 characters per second.

NEW H8 8 -Bit Digital Computer. This 8- bit computer based on the famous 8080A Other Heathkit computer products in- clude a cassette recorder tape microprocessor features a Heathkit ex- /playerand clusive "intelligent" front panel with octal for mass storage, LA36 DEC Writer Il key- board printer terminal, serial and parallel data entry and control, 9 -digit readout, a built -in bootstrap for one -button program interfaces, software, memory expansion I/O a loading, and a heavy -duty power supply and cards, and complete library of with power enough for plenty of memory the latest computer books. The Heath and interface expansion capability. It's User's Group (HUG) provides a newslet- easier and faster to use than other per- ter, software library and lots more to help sonal computers and it's priced low you get the greatest potential from your enough for any budget. Heathkit computer products. We've got everything you need to make Heath your NEW H11 16 -bit Digital Computer. The personal computing headquarters, send most sophisticated and versatile personal for your FREE catalog today!

24 BYTE November 1977

www.americanradiohistory.com 8 -Bit Computer r I LI r I riI I ' LI LJ I iJ .- mat $375 Kit xsarxxsr ®

Also Available: the famous LA36 DEC Writer Il Keyboard Printer Ter- minal only $1495 (Assembled)!

E i xnsrxtr =ERE!

11 I I te GR aal an MU sa .we tr m ea Ulna R. aar. 16 -Bit u au aasn Uaaaa 1a Computer .a.r. URN 1311ta..MOM NIT aa- PM m. UT ara -a MI. .0 waMa - teer. MN a. n a F. -.ts, MAN. r TR tana anata.aaa. $1295 Kit ana aA a lawY. s. MOP awwa. Mt IOW aan-F- A eM araa aaww.n RNA tw, as aaaa MINI. CM A aa- NM r BUM Oaat.

N3

Video 4,1 ti ._ f. _ . Terminal IX_. r ..- _. t

aM 11K 'Rr Kit .__ t $530 - Paper Tape 1 Reader /Punch

$350 Kit

HEATH Heath Company, Dept. 334 -350 Schlumberger Benton Harbor, Michigan 49022

Please send me my FREE Heathkit Catalog.

I am not on your mailing list. EFE Name HEATHKIT CATALOG '- ` --_-1, Address Read all about our exciting corn- --- puter systems and nearly 400 other City State fun -to- build, money- saving elec-

tronic products in kit form. CP-126 Zip Prices are mail -order FOB, Benton Harbor, Michigan. Prices and specifications subject to change without notice. Heath Company, Dept. 334 -350 Benton Harbor, Mi 49022 `ti=titititiJ Circle 63 on inquiry card. BY T E. \uvc. "her 1977 25 www.americanradiohistory.com Photo 1: Students from the Kenosha area enjoy a computer display at the A Minicomputer Fair: 1977 University of Wisconsin - Parkside Com- puter Fair. Tiny and Personal excellent way to proselytize our colleagues and generate interest among students and Donald T Piele the general public would be to sponsor a Assoc Professor of Mathematics computer fair. Our broad objective was to University of Wisconsin -Parkside provide a forum for the rapidly developing Kenosha WI 53140 field of personal computing with all its associated implications and applications.

If you start planning in April for a com- Exhibits puter fair in June, you are probably either a novice, mini -minded, crazy, or all of the A viable computer fair needs hardware above. But sometimes a bit of insanity is just exhibits. Unfortunately, Kenosha WI is not what is needed to make one jump in and do located in Silicon Gulch, and manufacturers something new. Uncertain of what would cannot afford the time and money to attend happen, we plowed ahead with our fair, and every computer fair that springs up around we're glad we did. the country. However, local computer

The "us" I am referring to is the Center stores, or those within a day's drive, are very for the Application of Computers, a small interested in the exposure that such a fair group of faculty members at the University brings. Despite the fact that Saturday is the of Wisconsin -Parkside who share a common busiest day of the week for them, we were interest in computers and their many uses. able to line up six different computer stores We decided, rather late in the year, that an for the fair, one as far away as Madison

26 BYTE November 1977 www.americanradiohistory.com System 8813

The Computer for the Professional

Whether you are a manager, scientist, educator, lawyer, Reliable hardware and sophisticated software make accountant or medical professional, the System 8813 will this system a useful tool. Several software packages are make you more productive in your profession. It can keep included with the machine: an advanced disk operating track of your receivables, project future sales, evaluate system supporting a powerful BASIC language inter- investment opportunities, or collect data in the laboratory. preter, easy to use text editor, assembler and other system Use the System 8813 to develop reports, analyze and store utilities. Prices for complete systems start at $3250. lists and schedules, or to teach others about computers. See it at your local computer store or contact us at It is easily used by novices and experts alike. 460 Ward Dr., Santa Barbara, CA 93111, (805) 967 -0468. PolyMorphic

Systems BYTE November 1977 27 www.americanradiohistory.com for the Application of Computers, faculty members from other schools, hobbyists and students. Topics ranged from an introduc- tion to personal computing, cryptography, in the laboratory, and computer graphics, to optical character recognition and speech conversion. The featured speaker for the day was Ted Nelson, the writer, showman and computer guru who came armed with his talk, "The End of the Dinosaurs."

Programming Contest

The final component of our fair (and the one that made it very special) was the First

Annual I nteractive Computer Problem Solving Contest. The glitter of computer hardware with all its razzlers and dazzlers soon fades without an understanding of how one controls them through programming. Despite the fact that kids will sit for hours at a terminal playing a canned computer game, nothing can compare with the excite- ment that radiates from their faces when Photo 2: Third graders Esther Marianyi (left) and Lisa Hanson from South- they successfully write their own programs port and Roosevelt schools in Kenosha WI deep in thought as they program to solve a problem. one of the computers at the Wisconsin Computer Fair. The programming contest was divided into four categories: 1st thru 6th grade, 7th thru 10th grade, 11th thru 12th grade, and (120 miles). Many manufacturers who were college. The contestants entered as teams contacted but could not come helped out of up to three members each and were by encouraging the stores in our area to assigned one terminal per team. Five pro- attend and display their products. blems of varying difficulty were handed Other sources of hardware were hobbyists out with a 2 hour time limit for solution. and computer clubs within driving range. The 11th thru 12th category proved to be Two Chicago area clubs and the Wisconsin the most popular, and one 2 hour session Computer Society (an amateur computer with 19 teams was devoted exclusively to club) were invited, and they responded with this category. After two hours each team a number of excellent displays. Two $25 turned in their solutions which consisted cash prizes were donated by BYTE magazine of a listing of the program and a sample for the best "homecooking." run. The programs were quickly graded The support we received from the com- using the criterion of accuracy first and puter stores, clubs and a few local manu- cleverness second. factirers made the hardware component of The winners in the 11th thru 12th class our fair very successful. were three seniors from Eau Claire WI (Tim

Manufacturers who could not come Sirianni, Ellery Chan and J eff Teeters) who usually sent the all- important free brochures traveled 300 miles that day to enter the that everyone enjoys collecting at a fair contest. They did an outstanding job writing whether they ever read them or not. A few successful programs for all five problems generous manufacturers such as Vector, within the 2 hour time limit -an exceptional OK Tool and Hexadaisy included samples performance surpassing even the college of their products which we could use as division that took the same exam. Prizes valuable door prizes. for first, second and third were awarded in all divisions, including trophies, books Speakers and complimentary subscriptions to pub- lications. Another important component of every Finally, the kids in the 1st thru 6th grade fair is the speakers. Throughout the day, a category deserve special attention. Earlier number of "small talks" (one half hour in in the year, the special education class of length) were given by members of the Center K thru 4th graders from Kenosha Unified

28 BYTE November 1977

www.americanradiohistory.com Circle 1 on inquiry card. Turn your small systems interest

INTERDATA, a world leader in the computer into a bid industry, is looking for ambitious state of the art personnel to join us in shaping tomorrow's computer technology. career How do you qualify? Why are we offering opportunity! Your strong interest in small you this opportunity? computer systems proves that Because we you are ambitious, feel that your inno- and your vative ideas would work is in state of the art be an technology. advantage to our company. Since you would be working at something you are truly inter- What do we have to ested in, we think you'll be Look into the offer? eager to learn and dedicated to exciting world the advancement of our of Were offering you the oppor- technology., tunity to join our growing INTERDATA... company, working with top pro- call Bill Beattie at Wouldn't it be great? fessionals in the industry, in an (201) 747 -7300; or environment where you'll be We offer you virtually unlimited recognized and handsomely advancement potential, an ex- write for more information. rewarded for your technical cellent salary, and outstanding contribution in creating hard- benefits for just doing what ware and software tools. you like best! INT373Et T11 sTÁ A UNIT OF PERKIN ELMER DATA SYSTEMS 106 Apple St., Tinton Falls, New Jersey 07724 Equal Opportunity Employer M¡F

schools, taught by Iris Helman and Sally fairs; talks and workshops exploring the Greenwood, had visited the computer center expanding list of minicomputer applications and played games on the terminals. This of will be just as important. course only whetted their appetites for The 2nd Annual Interactive Computer more computer time, and arrangements were Problem Solving Contest will be expanded later made to return for four 1 hour lessons and announced much earlier so that junior on programming in the BASIC language. high and high schools throughout Wisconsin Besides the mechanics of coding a computer, and Northern Illinois will have time to get the elementary ideas of programming logic ready. This year's exams will be freely were emphasized through flowcharting. handed out to schools along with instruc- These ideas were discussed every day tions on how to run a computer problem without a computer. The class enjoyed trans- solving contest locally. Through these forming its own scenario into a flowchart contests we hope to lend encouragement format using simple statements and bran- to the growing number of teachers and ching conditions. We were pleasantly sur- young students who are eager to learn prised at how entertaining and creative a more about problem solving with the com- flowchart can be when written by young puter. In the process, we will be learning children. The results were posted on a bulle- a great deal about this subject ourselves. tin board at the fair and they proved to be a Finally, colleges and universities should very popular attraction. take the lead in introducing the community they serve to the coming revolution of cheap Future Plans computer power. They already have the By starting earlier next year we hope to physical resources to do the job with a make the 2nd Annual UW- Parkside Com- minimum of cost. The return in public puter Fair even more exciting. But quality, relations alone is worth much more than the not quantity, will remain our long suit. investment. The local newspapers and

About 700 attended the first fair and 1 000 Racine and Milwaukee television stations is our upper limit for a comfortable fair. carried stories about the fair. Our fair repre- Hardware exhibits will again be sought from sents one way of bringing computer aware- local stores and vendors, but they will not ness to the general public, and we highly play the dominant role that they do at larger recommend it.

BYTE November 1977 29 www.americanradiohistory.com Rated Great Locations ComputerLand Now Open: 3020 University Drive N.W. Huntsville, AL (205) 539 -1200 11074 Son Pablo Ave. El Cerrito. CA 94530 (415) 233 -5010 eilei 22634 Foothill Blvd. Hayward, CA 94542 (415) 538 -8080 6840 La Cienego Blvd. Inglewood, CA 90302 (213) 776-8080 SPACE WAR DEFINITIONS their age, relationship, level of interest, 24001 Via Fobriconte education, etc. Mission Viejo, CA 92675 I have seen repeated mention, both in Looking at that 1% figure makes me (714) 770 -0131 BYTE and in other sources, of the origi- feel very lonely. I'm sure there must be 4233 Convoy Street nal computer game of Space War de- more women like myself who are inter- San Diego, CA 92111 veloped at MIT. What I have failed to see ested in computers. I would enjoy (714) 560-9912 is any type or hearing from other women hobbyists. of description explanation 121 Fremont Street pertaining to this classic king of com- Write and let me know who you are and Son Francisco. CA 94105 puter games. What exactly does the origi- what your interests are. I'll pass the (415) 546 -1592 nal Space War entail in the way of dis- information back to BYTE. It won't be 42 42nd Ave. play and participation? I am deeply an official survey, but I'll bet I'll get Son Mateo, CA 94403 interested in computer games, and I swamped with letters and postcards. (415)572 -8080 was by Come on girls, let's show them that we wonder just what offered this 171 E. Thousand Ooks Blvd. "oldie -goldie" to have rated such con- exist! Thousand Ooks. CA 91360 tinued interest. (805) 495-3554 Again, in reference to MIT's Space Leah R O'Connor 104 W. First Street War, are there currently any manu- 6315 W Raven St Tustin, CA 92680 facturers' software or hardware products Chicago IL 60646 (714) 544 -0542 which are comparable? With thrillers Astra Shopping Center like MiniTerm's Deluxe Space War and AN INVITATION TO ALL 1802 Kirkwood Highway

ECD's Animated Spacewar, I wonder if USERS: THE 1802 EXCHANGE Newark. DE 19711 the current state of the art in computer (302) 738 -9656 games doesn't exceed that of the original Very little software for the RCA 50 East Pond Rood MIT game. CDP1802 is currently in the public Arington Heights. IL 60004

domain. To remedy this situation I am (312) 255 -6488 Rick Craig going to publish a 10 page booklet listing 9511 No. Milwaukee Ave. 2609 E Woodlyn Way available software. If you desire to sell or Niles, IL 60648 Greensboro NC 27407 even give away your software please send (312) 967 -1714 me a listing for my review. My booklet 10935 S. Cicero Ave. See the article by Dave Kruglinski on will provide a complete description and Oak Lawn. IL 60453 (312) 422 page 86 of the October 1977 BYTE for cost information with a reference num- -8080 the answer to your question about what ber corresponding to a number on an 813 -B Lyndon Lone a classic Space War game does, illus- ordering coupon. Louisville. KY 40222 (502) 425 -8308 trated by a practical example, which will I plan to charge $1 for the booklet. probably not be the lost such example This amount will also cover the costs 16065 Frederick Rood Rockville. seen in BYTE. associated with processing the coupons. MD 20855 (301) 948 -7676 The use of the coupon will reduce the SAMPLING BIAS? costs to the person ordering from more 419 Amherst Nashua. NH 03060 than one source. (603) 889-5238 After reading your editorial in May The publication date is set for early 2 De Hort Street 1977 BYTE I still find it hard to believe December 1977. Advance orders may be Morristown. NJ 07960 that only 1% of your readers are female. made at $1 per copy. Send all orders, (201) 539 -4077 Did you by any chance look at marital software listings, and other correspon- 1612 Niagara Falls Blvd. status in the questionnaire? I would dence to: Buffalo, NY 14150 guess that in many cases both husband (716) 836 -6511 and wife are computer hobbyists. In Ross Wirth 225 Elmira Rood most cases I would guess that married 1636 S 108 East Av Ithaca, NY 14850 women interested in computers would Tulsa OK 74128 (607) 277 -4888 share that interest with their husbands. 1304 SOM Center Rood The reverse however would not be as SELF- PROPAGATION MONSTERS Mayfield Heights, OH 44124 common. If my husband and I received Phone: Inquire Locally your questionnaire he would most likely I discovered a real "bug" in the Z -80. 3300 Anderson Lone fill it out, thus skewing the results If the registers are set up correctly, and Austin, TX 78757 toward the 99% male figure. I'll bet what the user has 64 K of programmable Phone: Inquire Locally your survey really shows is the very memory, a "living" creature can be 6439 Westheimer Rood small number of single women interested created, similar to the interrupt driven Houston. TX 77057 in computers and married women who monsters that pop up unexpectedly. Its (713) 977 -0909 are more interested than their husbands. only purpose in "life" is to procreate Franchises Available: Next survey how about asking how and eat food, namely time. If you object Computerland Corp. many other people - other than the to my use of the term "life," go back 1922 Republic Ave. subscriber - read the magazine, and and reread the definition. The "crea- Son Leandro, CA 94577 (415) 895 79363

30 BYTE November 1977 Circle 30 on inquiry card.

www.americanradiohistory.com Rated G The Best Game in Town. And if your system breaks down, our in -store service department Welcome to ComputerLand. will get you back up and An incredible adventure into running. the world of personal computers. A one -of-a -kind Right now! shopping experience. Great Selection. Each ComputerLand store presents everything you ever Your first stop at ComputerLand wanted to know about may well be your lost stop. computers. And then some. ComputerLand offers the finest Trice our Game Room, for quality and starters. You'll find excitement for the whole family in our endless variety of challenging computer games. You can battle the Klingons in on out -of- this -world game of Star Trek. Create on elec- tronic work of art with a computer controlled TV. Test your skill in a game of computerized hangman.

You can even plot your biorhythm.

But we're more thon just fun and games. Each ComputerLand store offers a knowledgeable and person- able staff of professionals

largest selec- tion of all the Nro major brand names. Like Apple Computer, Cromemco, DEC. Diablo, Hazeltine, ICOM, IMSAI, Lear Siegler, National Semiconductor, North Star, Texas Instruments, Vector Graphics and more. to serve you. Plus the greatest ovoil- Plus o complete inventory of tools, books and accessories. oble selection of micro components. Whether it's o data What's more, we in product. Not processing system for your business or a computer controlled at ComputerLand, deal sprinkler system for your home, you'll find whatever you need promises. Our inventory is on our own shelves. Rother thon the at ComputerLand. manufacturer's. So you can take delivery on tomorrow's com- ponents today. Read on. Which means. Genuine Service. simply put, that at ComputerLand, you We want to supply get exactly what you with the one you want. system that's right. Pother than a com- Exactly when you plete system that isn't. want it. Or o limited system that is. Be Our Guest.

That's why, at Com- Begin with the puterLand, you deal grand tour of our with real professionals exhibit areas. "Test - who are also real drive" any of our people. People who individual systems. speak your language ... in addition to BASIC, COBOL or FORTRAN. Then tell us your needs. We'll sit down and talk about the system that's right for you. It's as easy os that of ComputerLand. People, in short, who can offer both the novice and the old hand the some expert guidance in selecting The great computer store. RATED G. the optimum system he or she needs. Call or write for the address ofthe ComputerLand store nearest you. Yet, assisting in the purchase is only the beginning of Franchise opportunities available. ComputerLand's service. If the kit you bought requires a little more do-it- yourself thon you yourself can do, we provide assembly assistance. OompulerLcind If that complex program proves to be just that, we provide programming assistance. 1922 Republic Avenue, San Leandro, CA 94577 (415) 895 -9363 Circle 30 on inquiry card. www.americanradiohistory.com ture" is an ED BO instruction, the block MOTOROLA EVALUATION KIT a "Universal Alarm Annunciator." If transfer LDI R. ARTICLES NEEDED any one of, say, 100 terminals is

To put it simply, it turns into a grounded, I want to display a one line memory eater, copying itself everywhere As an owner and user of an MEK- alarm message on a CRT, eg: "#54:

into memory, prepetuating its existence. 6800D2 kit from Motorola, I would like XMTR OFF AIR." The messages must Externally, it looks like an ED BO run- to see some software especially for this be previously entered from a key- ning loose. Here it is: system with its J -BUG monitor. A some- board and must of course be protected what similar but older system, the against power failure. An additional 005 0000H KIM -1, has a devoted following and "HELP" routine could be used to call 01 00 00 LO OC .00000 300 950 THANSFEIt many articles concerning this system up (off disk) a whole page of previously I1 OB 00 LO 00.0001311 .0,' 2 LOCATIONS 21 09 00 LD HL.0009H IT0 .'EHPETJATE have appeared in past BYTEs. I believe entered text describing what to do to the D2 system, with a encourage- ED BO LOil :HEHEs roo ANIMAL little solve the #54 alarm problem. As you

T GOES HJNNING OFF IrIM ment, could also become popular. I will appreciate, the difficulty lies in know you are a 6800 fan, CH, so how solving the sorting problem economi- Try it, it's fun. about encouraging someone to write cally. Including the CRT, keyboard Also in this category, there's the about this Motorola kit? and microprocessor, the whole thing 14747 instruction in DEC PDP -11s. It should come in at less than $15,000. copies itself lower in memory (even David Beach Has anyone such an item up their sleeve? though DEC manuals say the instruction POB 360 shouldn't work), and then executes the Frankford Ontario M Barlow moved instruction! This one doesn't CANADA KOK 2C0 5052 Chestnut Av perpetuate, but it's neat to kill memory Pierrefonds when you don't want someone to screw PS: The MEK6800D2 appears fairly Montreal CANADA with some secret software. well thought out. Mine went together without any problems (I used sockets Fred Beckhusen LORAN -C CLARIFIED for all the chips, however.) and ran MS 23 perfectly on the first power up. Mostek Corp In the July 1977 BYTE, there was a 1215 W Crosby Rd letter from Ian McNicol in which there Carrollton TX 75006 MORE ON COMMERCIAL RADIO occurred a sort of throw -away line: AUTOMATION . .. why use OMEGA when there are Then of course there is the famous satellite systems like LORAN -C ?" Well, MVC instruction of the IBM 360 and Joe Alwin's request in the February perhaps this is a pertinent question, but 370 series, key to the famous OS 360 1977 BYTE for information on micro- it displays a little misinformation. "time bomb" technique wherein o pro- processor based radio automation sys- LORAN -C is not a satellite system. pagating MVC in supervisor mode tems is easily answered. McCurdy Radio LORAN -C is a system consisting of a mysteriously clears o 360's memory, of 108 Carnforth Rd, Toronto master station and two to four slave crashing the machine hours after the CANADA, has an 8080 based system stations which broadcast a series of joker who scheduled it hos signed off that will do just what he wants. Data pulses which modulate a 100 kHz car- T.SO. Since the MVC moves 256 byte input is via keyboard or standard audio rier. The master sends a signal which is chunks and, once started, it always com- cartridges or cassettes for compatibility received by the slave stations and the pletes, the lost MVC of the program goes with other radio station equipment. navigation receiver. The slave stations one step further by clearing the program Logging may be on Teletype, or the delay the master signal and rebroadcast itself! (Reputedly, later than the mid data may be recirculated in memory it to the navigator. The LORAN -C re- 1970s, releases of IBM's TSO closed the and used again for another day's pro- ceiver measures the time difference be- holes by which clever programmers grams. Data is displayed on a CRT. tween arrival of the master and slave could get into supervisor mode from o And now perhaps one of your

TSO terminal.). ..CH readers can help me. I am looking for Continued on page 145

MULTIPLE DATA RATE INTERFACING FOR YOUR CASSETTE AND RS -232 TERMINAL the CI -812 The Only S-100 Interface You May Ever Need On one card, you get dependable "KC- standard"/biphase encoded cassette inter- facing at 30, 60, 120, or 240 bytes per second, and full -duplex RS -232 data ex- change at 300- to 9600 -baud. Kit, includ- ing instruction manual, only $89.95 *.

*Assembled and tested, PECCOM $119.95. Add 5% for shipping. Texas resi- PERCOM DATA COMPANY, INC. PerCom 'peripherals for personal computing' 4021 WINDSOR GARLAND,TEXAS75042 dents add 5% sales tax. (214) 276-1968 BAC /MC available.

32 BYTE November 1977 www.americanradiohistory.com UP AND RUNNING TDL EQUIPMENT USED BY NEW JERSEY PUBLIC TELEVISION TO PROCESS NEW JERSEY GUBERNATORIAL PRIMARY ELECTION RETURNS

John Montagna, computer engineer (above left), Four screens were incorporated, two terminals lead this successful network team in generating entered votes as they came in and were used election results speedily, efficiently and reliably to call back votes to check accuracy. Mon - using predominantly TDL hardware and soft -. tagna called on the power and flexibility ware. Montagna created three programs to get offered by TDL's ZPU board and three Z -16 the job done. The text for a SWAPPER pro- Memory boards. gram was written and assembled using the TDL TEXT EDITOR and Z80 RELOCATING MACRO Montagna's setup worked constantly for over ASSEMBLER. The SWAPPER text and all four hours updating and displaying state -wide debugging was run through TDL's ZAPPLE and county -wide results without flaw. MONITOR. The relocatable object code was punched onto paper tape. A MAIN USERS "I chose TDL because they have all the soft- program updated votes and controlled air dis- ware to support their hardware, and it's good; play. An ALTERNATE USERS program got it has the flexibility to do the job." hard copy out and votes in. The latter two John Montagna programs were written in BASIC. Montagna modified the ZAPPLE BASIC to permit time- We salute John Montagna and NEW JERSEY sharing between the two USERS programs. PUBLIC BROADCASTING for spearheading the micro -computer revolution. TECHNICAL DESIGN TDL's XITAN SYSTEMS have the capacity to do LABS similar tasks for you. Write to us for XITAN information and the name of your nearest TDL RESEARCH PARK BLDG. H 1101 STATE ROAD dealer. PRINCETON, NEW JERSEY 08540 (609) 921 -0321 Circle 145 on inquiry card. www.americanradiohistory.com www.americanradiohistory.com You've just run out of excuses for not owning a personal computer.

Clear the kitchen table. Bring cassette interface, so you can swap Apple II X' is a completely self- contained in the colorTV. Plug in your new with other Apple II users. computer system with BASIC in ROM, Apple II? and connect any standard You can create dazzling color color graphics, ASCII keyboard, light- cassette recorder/player. Now you're displays using the unique color gra- weight, efficient switching power supply ready for an evening of discovery in phics commands in Apple BASIC. and molded case. It is supplied with the new world of personal computers. Write simple programs to display BASIC in ROM, up to 48K bytes of RAM, and with , video and II it kaleidoscopic designs. Or Only Apple makes that beautiful game I/O interfaces built -in. Also in- easy. It's a invent your own games. Games like cluded are two game paddles and a PONG -using the game paddles. demonstration cassette. supplied. You can even add the dimen- sion of sound through Apple II's SPECIFICATIONS built -in speaker. Microprocessor: 6502 (1 MHz). Video Display: Memory mapped, 5 But Apple II is more modes -all Software -selectable: than an advanced, infinitely Text -40 characters /line, 24 lines flexible game machine. Use upper case. it to teach your children Color graphics -40h x 48v, 15 colors arithmetic, or spelling High -resolution graphics -280h x for instance. Apple II 192v; black, white, violet, green makes learning fun. (12K RAM minimum required) Apple II can also Both graphics modes can be selected manage household finances, to include 4 lines of text at the bottom chart the stock market or of the display area. index recipes, record collections, even Completely transparent memory complete, ready to use computer, not a access. All color generation done kit. At $1298, it includes video gra- control your home environment. digitally. phics in 15 colors. It includes 8K bytes Right now, we're finalizing a Memory: up to 48K bytes on -board ROM and 4K bytes RAM - easily peripheral board that will slide into RAM (4K supplied) expandable to 48K bytes using 16K one of the eight available mother- Uses either 4K or new 16K dynamic RAMs (see box). But you don't even board slots and enable you to compose memory chips need to know a RAM from a ROM to music elec- Up to 12K ROM (8K supplied) Software use and enjoy II. For tronically. Apple example, Fast extended integer BASIC in ROM it's the first personal computer with And there will be other with color graphics commands a fast version of BASIC permanently Extensive nionitor in ROM stored in ROM. That means you can peripherals I/O begin writing your own programs the announced 1500 bps cassette interface first evening, even if you've had no soon to 8 -slot motherboard previous computer experience. YUAOeAMT 6-( S6CiOt 1-1 rrMMAMO,/ allow your Apple game I/O connector The familiar typewriter -style Apple II to ASCII keyboard port keyboard makes it easy to enter your talk with another Apple II, or to inter- Speaker instructions. And your programs can face to a printer or teletype. Composite be stored on -and retrieved from - Apple II is designed to grow video audio cassettes, using the built -in with you as your skill and experience output with computers grows. It is the state of the art in personal computing today, and compatible upgrades and peri- pherals will keep Apple II in the fore- front for years to come. Apple II is also Write us today for our detailed available in board -only brochure and order form. Or call us form for the do- it- yourself hobbyist. Has for the name and address of the all of the features of the Apple II system, include keyboard, Apple II dealer nearest you. (408) but does not case, power supply or game paddles. $598. 996 -1010. Apple Computer Inc., 20863 Stevens Creek Boulevard, PONG is a trademark of Atari Inc. Bldg. B3 -C, Cupertino, *Apple II plugs into any standard TV using California 95014. an inexpensive modulator (not supplied). %apple computer Inc:

BYTE Novemócr 1977 35

www.americanradiohistory.com Order your Apple II now from any one of the following authorized dealers:

ALABAMA COLORADO (continued) KANSAS (continued) MINNESOTA (continued) NORTH CAROLINA TEXAS Computerland Team Electronics Team Electronics Team Electronics Byte Shoo Byte Shoo 3020 University Or. N.W. 1450 Main Street 2319 Louisiana Street 455 Rice Street 1213 Hillsborough St. 3211 Fondren Huntsville 539 -1200 Longmont 772 -7600 Lawrence 841 -3775 St. Paul 227 -7223 Raleigh 833 -0210 Houston 977 -0664 The Computer Center Team Electronics Team Electronics Team Electronics NORTH DAKOTA Computerland B. Place 110 Sixth Avenue S. 303 Poplar 1022 Constitution Road 1132 Westloop Shopping Center 6439 Westheimer Birmingham 942 -8567 Manhattan 539 -4636 St. Cloud 251 -1335 Team Electronics Houston 997 -0909 Belmont Plaza 2304 E. Broadway ALASKA Pueblo 545 -0703 Team Electronics Team Electronics Bismarck 223-4546 Computer Shops, Inc Space 131 -A Mid -State Mall 6413 Lyndale Avenue S. 13933 North Central Team Electronics FLORIDA Salina 827-9361 Minneapolis 669 -3288 Team Electronics Dallas 234-3412 Country Village Shopping Center West Acres Shopping Center Byte Shop Team 700 E. Benson Blvd. Team Electronics Electronics Fargo 282.4562 The Computer Shop 1044 E. Oakland Park Blvd. Anchorage 276 -2923 907 W. 27th Street Terrace 1311 Fourth St. S.E. 6812 San Pedro Ft. Lauderdale 561.2963 Topeka 267 -2200 Minneapolis 376 -1165 Team Electronics San Antonio 828-0553 Tea m-0 lecIronics 1503 1 lth Avenue N. Byte Shoo Team Electronics 404 E. Fireweed Lane Team Electronics Grand Forks 746-4474 Computer Terminal 7825 Bird Road Towne East Square Maplewood Plaza 2101 Myrtle St. Anchorage 272.4623 -2983 Team Electronics Miami 264 7700 E. Kellogg 3000 White Bear Avenue El Paso 532 -1777 Team Electronics Wichita 6858826 Maplewood 777 -3737 209 1 lth Avenue S.W. 1698 Airport Way GEORGIA Minot 852.3281 The KA Computer Store Team Electronics Team Electronics 1200 Majesty Drive Fairbanks 456 -4157 Data Mart. Inc. Madison East Team Electronics 3001 N. Fulton Drive 791 N. West Street Dallas ARIZONA Wichita 942-1415 Mankato 367.7937 109 Main Street Atlanta 233 -0532 Williston 572 -7631 VIRGINIA Byte Shop Team Electronics Team Electronics 1313 N. Scottsdale Road HAWAII The Mall" on Harry Street 310 Grant Avenue OHIO Center Tempe 894 -1193 Real Share Wichita 682 -7559 Eveleth 749 -8140 2927 Virginia Beach Blvd. The Data Domain Virginia Beach 466.1700 CALIFORNIA 190 S. King Street p1390 Barney & Associates Team Electronics 1932 Brown Street Honolulu 536-1041 425 N. Broadway Har Mar Mall Dayton 223 -2348 Timbervilie Electronics Computer Components P. O. Box 202 ILLINOIS Pittsburg 231 -1970 2100 N. Snelling Avenue 5646 Sepulveda Blvd. St. Paul 636-5147 OKLAHOMA Timberville 696.6926 Van Nuys 786.7411 Team Electronics KENTUCKY Computer Depot Team Electronics Meadowdale Drive, Space IA WASHINGTON Computerland Computerland 3515 W. 70th Street 1105 Elm Street Team 11074 San Pablo Ave. Carpentersville 428.6474 813 B Lyndon Lane Stubbeman Village Electronics Minneapolis 927 -5601 423 El Cerrito 233 -5010 Team Electronics Louisville 425.6306 Norman 329-3456 W. Yakima Yakima 453 -0313 Computerland Northgate Mall Shopping Center The Data Domain MISSOURI Team Electronics 22634 Foothill Blvd. Decatur 877 -2774 50654 Euclid Avenue Team Electronics Crossroads Mall WISCONSIN Hayward 536 -BOBO Biscayne Mall Team Electronics Lexington 233 -3346 7000 Crossroads Space 2010 Team Electronics 301 Stadium Blvd. Computerland Sandburg Mall The Data Domain Oklahoma CUR 634.3357 3209 Rudolph Road Columbia 445 -4496 6840 La Cienega Blvd. 1150 W. Carl Sandburg Drive 3028 Hunsinger Lane Team Electronics Eau Claire 634.0326 Inglewood Galesburg 344 -1300 Electronic Components Intl. 776.8080 Louisville 456 -5242 Penn Square Shopping Center Team Electronics Team Electronics 1306-B South Hwy 63 Penn Square Computerland 3365 E. Clairmont Parkway MARYLAND Columbia 443 -5225 24001 Via Fabricante Southpark Shopping Center Oklahoma City 848 -5573 Eau Claire 634 -1266 16th Computerland Mission Viejo 770 -0131 4200 Street Team Electronics Moline 797 -8261 16065 Frederick Road MONTANA Team Electronics Computerland 1134 Hall of Fame Avenue Rockville Team Electronics 3365 E. Washington Avenue Team Electronics 948.7676 Stillwater 377 -2050 4233 Convoy Street 613 Central Avenue Madison 244-1339 4700 Block- N. University Ave. San Diego 560 -9912 MASSACHUSETTS Great Falls 852 -3261 Team Electronics Peoria Team Electronics 692 -2720 5305 E. 41st Computerland The Computer Store, Inc Team Electronics 7512 W. Appleton Avenue Team Electronics Southroads Mall 117 Fremont St. 120 Cambridge Street 1208 W. Kent Milwaukee 461 -7600 San Francisco 546 -1592 1714 Fifth Avenue Burlington 272 -8770 Tulsa 633-4575 Island Missoula 549 -4119 Team Electronics Rock 71313-9595 Team Electronics Computerland Computers Made Easy 3701 Durand Avenue Team Electronics MICHIGAN Woodland Hills Mall 104 W. First Street 415 Morrow Elmwood Plaza Shopping Center 321 N. Alpine Road Team Electronics 7021 Memorial Tustin 544-0542 Bozeman 586 -3065 Racine 554 -8505 Rockford 399 -2577 Delta Plaza Shopping Center Tulsa 252 -5751 Byte Shop Escanaba 786 -3911 Team Electronics 6041 Greenback Lane Team Electronics NEBRASKA Team Electronics 3347 Kohler Avenue F Team Electronics Citrus Heights 961 -2983 Woodfield Mall -119 Team Electronics Surrey Hills Memorial Mall, Space H-4 Schaumburg 8132 -51364 M &M Plaza Yokon 373 -1994 Byte Shop 148 Conestoga Mall Sheboygan 45B -13791 Menominee 864 -2213 & 13th 2233 El Camino Real Team Electronics Highway 2131 Street Bits. Bytes & Micros Team Electronics 2716 S. MacArthur Blvd. Grand Island 361.0559 1186 MacArthur Blvd. Palo Alto 327 -BOBO MINNESOTA N. 5300 S. 76th Springfield 525 -8637 Team Electronics Oklahoma City 947-5646 Southridge Center Byte Shop Team Electronics 2055 Street 496 S. Lake Ave. Computertand Ridgedale Mall "0" High Technology Greendale 421-4300 Lincoln 435 -2959 Pasadena 50 E. Rand Road 12503 Wayzata Blvd. 1020 W. Wilshire Blvd. Team Electronics Arlington Heights 255.6466 Oklahoma City 842 -2021 Byte Shop Minnetonka 544 -7412 Team Electronics Sunrise Plaza Computerland 304 S. 72nd Street Highway B East 2626 Union Avenue Team Electronics OREGON Cedarnole Shopping Center San Jose 377 -4685 9511 N. Milwaukee Ave. 204 Southdale Center Rhinelander 369-3900 Niles 967-1714 Omaha 397.1666 Team Electronics Byte Shop Edina 920-4817 1913 N.E. Third Street Team Electronics Itty Bitty Machine Company Team Electronics 1505 Losey Blvd. S. 1200 W. Hillsdale Blvd. Team Electronics Bend 389.8525 Bel Air Plaza Village Shopping Center San Mateo 341-4200 1316 Chicago Avenue 1248 -50 Eden Prairie Center 12100 W. Center Road Team Electronics Evanston 328 -6800 Eden Prairie 941.8901 LaCrosse 788 -2250 Byte Shop Omaha 333 -3100 1023 S.W. 1st 3400 El Camino Real INDIANA Team Electronics Canby 266 -2539 Team Electronics Team Electronics Santa Clara 249 -4221 207 Third Street 2207 Grand Avenue The Data Domain Sunset Plaza Shopping Center Team Electronics Wausau Bemidji 751 -71380 842 -3364 Byte Shop 2805 E. State Blvd. Norfolk 379 -1161 2230 Fairground Road N.E. 2989 N. Main Street Fort Wayne 484 -7611 Team Electronics Salem 364-3278 Team Electronics Team Electronics 3301 -3500 S. 27th Street Walnut Creek 933 -6252 Kandi Mall South Hwy 71 The Data Domain The Mall SOUTH DAKOTA Southgate Shopping Center A -VI00 Electronics Willmar 235 -2120 7027 Michigan Road 1000 S. Dewey Milwaukee 672-7600 2210 Bellflower Road Indianapolis 251 -3139 Team Electronics Team Electronics North Platte 534-4645 402 Long Beach 598.0444 Crossroads Shopping Center W. Sioux Avenue Team Electronics IOWA Pierre 224.1661 2619 Milton Avenue Computer Country St Cloud 253.8326 NEW HAMPSHIRE Team Electronics Team Electronics Janesville 756 -3150 2232 Salt Air Drive Team Electronics Computermart 1101 Omaha Team Electronics Santa Ana 632 -9661 202 Main Street Cedar Mall 170 Main Street Street Ames 232 -7705 Rapid City 343 -8363 1801 Marshall Street Computer Playground Owatonna 451 -7248 Nashua 883.2386 Team Electronics Manitowoc 664.3393 6789 Westminster Avenue Team Electronics Team Electronics NEW JERSEY 41st Team Electronics Westminster 6913.3330 Duck Creek Plaza Mesahi Mall 613 W. Street Bettendorf 355 -7013 Computerland Sioux Falls 336 -3730 7700 W. Browndeer Road Computer Hibbing 263 -8200 Store 2 De Hart Street Center Team Electronics Team Electronics Northridge 1093 Mission St. Team Electronics Morristown 539 -4077 41st & Western Milwaukee 354.4880 San Francisco 431 -0640 4444 First Avenue N.E. Thunderbird Mall Street Avenue Lindale Plaza Computermart Western Mall Team Electronics Electric Brain Virginia 741-5919 Cedar Rapids 393 -8956 501 Route 27 Sioux Falls 339 -1421 396 Park Avenue 3038 N. Cedar Ave. Team Electronics Iselin 283.0600 Oshkosh 233 -7050 Fresno 227 -8479 Team Electronics Apache Plaza Team Electronics 320 Kimberly Road Rainbow Computing, Inc. Silver Lake Road NEW YORK Sioux Empire Mall WYOMING Northoark Shopping Center 4001 West 41st Street 10723 White Oak St. Anthony 769 -4366 Computerland Team Electronics Davenport 386.2586 Sioux Falls 339 -2237 Granada Hills 360-2171 Team Electronics 1612 Niagara Falls Blvd. Hilltop Shopping Center Team Electronics Strawberry Electronics 1733 S. Robert Street Bullaio 836 -6511 Team Electronics 207 5. Montana 2300 Kennedy Road 223 Ninth Avenue S.E. 71 Glenn Way =9 West St. Paul 451 -1765 Computerland Casper 235-6691 Dubuque 583 -9195 Watertown 886 -4725 Belmont 595-0231 Team Electronics 225 Elmira Road Team Electronics CANADA 2640 Hennepin Avenue S. Ithaca 277 -41388 COLORADO Room 120 - Space 18 Future Byte Minneapolis 377 -9640 Co -op Electronics Byte Shop The Mall 2274 Rockland Iowa City 336 -3661 9148 Main Street Montreal, Ore. 731 -4638 3464 S. Acorn St. Clarence 634 -2193 Englewood 761 -6232 Team Electronics Team Electronics 2015 E. Fourth Street 3275 28th Street Sioux City 252 -4507 If you would like to be an dealer, call Carter, Boulder 447 -2368 Team Electronics Apple Gene Team Electronics K -0 Stockyards Station Director of Dealer Marketing, 408 -996 -1010. The Citadel 2001 Leech Avenue Colorado Springs 596-5566 Sioux City 277 -2019 Team Electronics Team Electronics 107 S. College 2750 University Avenue Fort Collins 464 -7500 Waterloo 235-6501 apple computer Inc: Team Electronics KANSAS Teller Arms Shopping Center Team Electronics 2401 Avenue North 215 W. Kansas Avenue 20863 Stevens Creek Boulevard, B3 -C Grand Junction 245 -4455 Garden City 276 -2911 Team Electronics Cupertino, California 95014 Team Electronics 2045 Greeley Mall 14 S. Main Street Greeley 356 -3800 Hutchinson 662 -0632 (408) 996 -1010

Circle 4 on inquiry card. www.americanradiohistory.com Figure 1. -

GET IDENTIFIER

IWT['$ Begs PROGRAM START

FLAG.- FALSE

1 «2 5P1 1.Cí9 SPI,I VAR, VAL, Some Comments on An APL Interpreter for Microcomputers, Part 1" F.-0 POET OA 3

The following letter from Fred / Dickey contains corrections to "An APL Interpreter GE AN for Microcomputers, Port 1" by Mike Wimble, which appeared on page 50 of the August NPUT O. STATE- FTABIFI.F4 1977 BYTE. We thank Fred for his efforts. MENT Jrl

I received my August 1977 BYTE you are going to scan 37 25, but O. FTABIF) yesterday, and was quite impressed by apparently 3_7 2_5 is scanned SKIPSP FS OR F6 Mr Wimble's APL implementation article instead. IGNORE LEADING BLANKS and the fact that he is giving a hardware 12. On page 55, SP(19). C = 6. I don't independent description of a significant see how this can be. Also, SP(9). u..-3 software system. This article is of value C = P = 4 not 6, and SP(2). 0. YES regardless of what type of micropro- 13. Make the following change on page cessor one uses. Furthermore, one would 64: expect the article to be of value as long LOOKUP as there is interest in APL, which will N EOL probably be long after the current C ) 10,VTAB.VI,ZI crop of microprocessors become histori- ( cal curiosities. SPI) C «9 SPII, P.-0 FALSE Despite my enthusiam, I regret to FLING 'LEA LENGCFNGr VAI inform you that I found the following VAL.E errors by doing a hand simulation of the VAL VALI

program on page 55. VAR.-- VAR. I FLAG.-FALSE V TAB(VAR). VITO J.-J I VTAB IVARI.V2 «0 N SITAR (VAR).V3 «0 1. Some arrays are dimensioned starting at 0, others at 1. In particu- lar TVAL starts at 0, and all others seem to start at 1. This is not explained anywhere. Fred J Dickey 2. FUNC, NOMBRE, OTHERS, 3420 Granville Rd NILAD, MONAD, DYAD, EOL, Westerville OH 43081 CARRET are called subroutines, Figure 2. but they are it fact extensions of Mike Wimble replies: the main routine given on page 56. 3. The labels IP, IPGET, IP_GET, and Mr Dickey is correct on most points; IPINIT are nowhere defined. however, I would like to clarify the

Apparently IP = IPGET = IP_GET following: LOOKUP 1

I SPECTAB. I and the flowchart on page 56 ISIJI,SPECTAB,K) l}

should appear as shown in figure 1. Point 3: IPINIT is of course the L J 4. Why is DA initialized to 3? Also, beginning of the statement inter-

the scanner initialization box on preter as defined in port 2 of the YES page 56 should appear as in figure article published in September.

1. Point 4: l inadvertently included NO 5. "No" and "yes" on page 56 should DA in this portion of the article. -J also appear as in figure 1. It is used in a later version of the

6. The call to I DEN on page 56 should interpreter to handle threaded o.-sIJ111sIJ.II say CALL IDEN (Q, B). Otherwise lists. Q and B are undefined. Point 9: STMT, again, is port of 7. The flowchart on page 62 should the later version of my inter- LOOKUP appear as in figure 2. preter, and should be ignored. IO,REOTAB,N1 8. On page 64, it should be made clear Point 10: This version of the that F and Q are local parameters interpreter has no provisions for of subroutine FN_VARADD. F and error recovery. ES Q have different meanings external Point 12: SP(/9).0 was incor- to this routine. rectly set equal to 6; it should 9. On page 64, "routine" carret refer- equal 8. SP(2).P is correct os it 5.111.CrS SPIV. Cf ences STMT. STMT must be in stands. Although I did not state it sPlll. PrN SPII) P.-Z IfI.I I -1.I ROM. What is its value? explicitly, the case for SP(l).0 =1 JJ JJ.I 10. The flowcharts do a good job of is used in the later version of my trapping errors. How do you re- interpreter. It indicates that P is cover? not to be used at that time (This 11. Let " _ " mean blank. On the IP example of page 55, you state that Continued on page 164

BYTE November 1977 37

www.americanradiohistory.com BOMB Lands on APL was only 10% of the mean of all article Readers of the August 1977 BYTE voted votes.), indicating a diversity of interests on for APL all the way. The BOMB first prize the part of BYTE readers. Mike Wimble's of $100 goes to Mike Wimble for his article, article was 1.7 standard deviations above An APL Interpreter for Microcomputers, the mean, and Dr Iverson's article was 1.3 Part 1, on page 50. The $50 second prize standard deviations above the mean. Readers goes to Dr Kenneth Iverson for Under- are encouraged to express their opinions standing APL, page 36. The distribution of about this month's articles by filling out points for August's articles was relatively and sending in the BOMB card between even in the voting (The standard deviation page 256 and the inside back cover.

TM Kilobyte Readings for Your Next Squantum

By Manuel D Juan

"How do you multiply MDCXII and L VI on this thing ?"

By Duane Bibby

"Maybe I'm biased, but he seems a little saturated to me."

38 BYTE November 1977

www.americanradiohistory.com Ohio Scientific advances the state-of-the-art of smaN computers.

Challenger Il with our ultra -fast 8K BASIC in ROM. Now you can own a computer with full BASIC and plenty of user workspace for as little as $298.00. And the BASIC is there the instant you turn the machine on!

Challenger Ill is the remarkable computer which has 6502A, 6800, and Z -80 processors. This computer system allows you to run all software published in the small computer journals, yet, it costs only about 10% more than comparable single processor computers.

Challenger Single and Dual Drive Floppy Disks. These full size floppy disks are available in kit form or assembled at about the same prices as our competitors' mini floppies. Yet, they store three times as much data as the minies.

Ohio Scientific's new 9 digit precision business BASIC is only slightly slower than our ultra -fast 8K BASIC. Still faster and more powerful than anyone else's 6 digit precision BASIC.

Our incredible new 74 million byte disk drive. That's right, 74 million bytes is available for as little as $6,000.00 complete with interface for any Ohio Scientific computer. This new disk is quite possibly the world's highest performance data storage device. It features an unbelievable 34 milli- second average access time and an ultra -fast data transfer rate.

Now is the time for you to dump your 1974 design vintage S -100 computer and move up to the state -of- the -art!

For more specifics, send $1.00 for our new Fall Catalog.

Sills SCIENTIFIC 11679 Hayden Hiram, Ohio 44234

www.americanradiohistory.com BASIC in ROM Computers by Ohio Scientific

If you're just getting into personal computing and are buy- ing your first machine, you're probably confused by the myriad of companies and products available. However, there is one simple guideline you should follow when choosing your first computer. Be sure that it is capable of giving you full floating -point BASIC the instant you turn it on. Machines with full 81( BASIC in ROM cost as little as $298.00. Why should you settle for anything less?

Model 500 The Model 500 is a fully populated 8 x 10 P.C. Board with 8K BASIC in ROM, 4K RAM, serial port and Ohio Scientific Bus compatibility for instant ex- pansion. All you need is a small power supply ( +5 at 2 amps and -9 at 500 MA) and an ASCII terminal to be up and running in BASIC. And all for only $298.00.

The Challenger IIP from Ohio Scientific is the ideal personal computer complete with BASIC in ROM and plenty of RAM (4K) for programs in BASIC. Super Kit Complete with an audio cassette interface, the Chal- lenger IIP uses a full computer keyboard, not a calcu- The Super Kit is a 3 board set with a 500 board lator keyboard. (like the Model 500)without theserial interface. In addition, the Challenger IIP comes complete with a full 64 character-wide video display, not a 40 character The ROMs are configured for use with the in- display. The user simply connects a video monitor or cluded, fully assembled 440 video board to provide home TV set via an RF converter (not supplied) and a full BASIC computer and terminal. optionally, a cassette recorder for program storage. The Challenger IIP comes complete with a 4 slot The Super Kit also includes a fully assembled 8 backplane and case for only $598.00. Fully Assembled. slot backplane board which gives you 6 open slots for expansion. To be up and running in BASIC simply plug the boards together, supply power ( +5 at 3 amps and -9 at 600 MA), add an ASCII parallel keyboard plus a video monitor or TV set via an RF converter OHIO CIENTIFIO (not supplied). 11679 Hayden Hiram, Ohio 44234 Total price for the "kit" $398.00.

40 BYTE November 1977 www.americanradiohistory.com Meet Challenger IIP from Ohio Scientific.

Unlike any other personal computer available today

Complete with BASIC in ROM and 4K RAM, expandability from old models to new models, Challenger IIP is the ideal computer for programs which is nice to know considering the rate at which in BASIC. technology is constantly improving. For example, BASIC is there the instant you turn the computer Ohio Scientific's original 400 series products can on with a full 32 x 64 character video display. be plugged right into the new Challenger IIP. And Challenger IIP also comes with an Audio Cassette Ohio Scientific has 2 years of experience in build- Interface for program storage. The user simply con- ing personal computers, so we're not new to this nects a Video Monitor or a TV via an RF Converter business unlike some of our competitors. (not supplied) and the machine is ready to use. Complete with a full computer keyboard Chal- Challenger IIP is ideal for both the home user lenger IIP comes fully assembled for $598 from who is new to computing or the experienced user Ohio Scientific. who wants expansion capabilities. Challenger IIP Check the chart below and compare Challenger comes with a four slot backplane and is expandable IIP with other BASIC in ROM computers. Unlike via the full Ohio Scientific product line, which in- other personal computers, Challenger IIP has a cludes 15 system boards offered in over 40 different much greater capacity for expansion and the capa- versions. bility to perform big computer functions with all of Ohio Scientific has always maintained upward its big computer features.

Ohio Scientific Other BASIC in ROM Challenger IIP Computers Processor 6502A 6502 or Z-80 Clock 1 or 2 MHz slower Display (Lines /Characters) 32/64 25/40 or 16/64 Keyboard Full Computer 4 Function (Capacitive Contact) Calculator Type or Full Computer (Mechanical Contact) Display Characters 256 128 or 64 Lower Case Yes No Plotting Yes Yes Audio Cassette Interface Yes Yes BASIC 8K By Microsoft some have only 4K BASIC String Functions PEEK, POKE, User Yes Not Always Machine Language Accessible Yes Not Always Optional Assembler /Editor Yes No Disk Option Available Now Yes No In Case Memory Expansion Ability 36K Less Expansion Boards Available Now 15 None

BYTE November 1977 41 www.americanradiohistory.com Disk Based Co by Ohio

Any serious application of a computer demands a Floppy disk or hard disk because a disk allows the computer to access programs and data almost instantly instead of the seconds or minutes required with cassette systems. In real -world application of computers, such as small business accounting, a cassette based computer simply takes too long to do the job. Ohio Scientific offers a full line of disk based computers utilizing full size floppy disks with 250,000 bytes of formatted user work space per disk. That's 3 to 4 times the work space of mini -floppies.

Challenger U Challenger II is available with a single or dual floppy disk and a minimum of 16K of RAM in- stead of ROM BASIC. The disk BASIC is automatically loaded into the computer so there is no need for ROMs. Ohio Scientific's powerful disk operating systems allow the computer to function like a big system with features like random access, sequential, and index sequential files in BASIC and I/O distributors which support multiple terminals and industry -stan- dard line printers.

Challenger I l's with disks can have the following optional features: 16 to 192K of RAM memory Single or dual drive floppys Serial and /or video I/O ports Up to 4 independent users simultaneously Two standard line printer options Optional 74 Megabyte Hard disk Much more Challenger II disk systems are very economical. For example a 16K Challenger II computer with serial interface, single drive floppy disk, BASIC and DOS costs only $1964.00 fully assembled.

www.americanradiohistory.com mputer Systems Scientific

Challenger Ohio Scientific proudly announces the 7 Send me the Fall '77 Catalog. I enclose $1. in ultimate small computer systems, the Chal- I would like to order directly from this advertisement. lenger Ill. This computer has a 3 processor (Please allow up to 60 days for delive y) NAME cpu board equipped with a 6502A, 6800, and ADDRESS Z-80. CITY _ STATE ZIP This system allows you to run virtually all To order: Payment by: software published in the small computer BAC (Visa) MC Money Order magazines! Credit Card Account += Interbank # (Master Charge) The Challenger Ill is fully software and Model 500 Boards @ $298.00 hardware compatible with Ohio Scientific Challenger IIP @ $598.00 products and can run virtually all software for Super Kit @ $398.00 16K Challenger II complete with serial interface, the 6800, 8080 and Z -80 including Mikbug® single drive floppy disk, BASIC and DOS dependent 6800 programs! @ $1964.00 32K Challenger Ill with serial interface, a dual Incredible as this is, Challenger Ill costs drive floppy disk (500,000 bytes of storage) only about 10% more than conventional @ $3481.00 single processor microcomputers. For Ohio Residents add 4% sales tax TOTAL CHARGED OR ENCLOSED example a 32K Challenger Ill with a serial Order directly from: Ohio Scientific, 11679 Hayden St., interface and a dual drive floppy disk (500,000 Hiram, Ohio 44234 or your local OSI dealer All orders shipped insured UPS unless otherwise requested, bytes of storage) costs only $3481.00. Fully J Assembled, complete with software. Terminal not included. OHIO IGIENTIFIC 11679 Hayden Hiram, Ohio 44234 BYTE November 1977 43

www.americanradiohistory.com Introducing three boards only Ohio Scientific could build.

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

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

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

560Z CPU Expander Board

The 560Z board is our multiprocessing board with a Z -80 and 6100 chip. This board allows you to run several processors simultaneously and the 6100 chip lets you run powerful PDP8 software with the 560Z. The 560Z board is the only multiprocessing board available for small computers, and Ohio Scientific makes it!

These three state -of- the -art CPUs are only a small part of the picture. Ohio Scientific's advanced tech- nology offers you other unique features such as Multiport Memories, Distributed Processing, Big Disks with up to 300 megabytes on line, and Advanced Software. OHIO NIENTIFIC 11679 Hayden Hiram, Ohio 44234 44 BYTE November 1977

www.americanradiohistory.com Announcing the most advanced disk OHIO SCIENTIFIC DEALERS

Abacus Stores Limited 55 Erb St. East anywhere for 56,000 Waterloo, Ontario Canada N2C 3E0 (519) 885 -1211 American Microprocessors Equipment & Supply Corp. The 74 megabyte disk 20 N. Milwaukee Ave. Prarieview, IL 60069 (312) 634 -0076 Century 23 4566 Spring Mountain Rd. from Ohio Scientific Las Vegas, NV 89102 Computer Mart of New York C -D74 from Ohio 118 Madison Ave. New York, NY 10010 Scientific is the ultimate (212) 686 -7923 Computer Power storage device for small P.O. Box 28193 San Diego, CA 92128 computers. (712) 746 -0064 The C -D74 is the first Delaware Microsystems 92 E. Main St. #1 Winchester technology disk Newark, DE 19711 (302) 738 -3700 for small computers making Desert Data big system af- Microcomputer Sales technology P.O. Box 1334 fordable and reliable for the Tucson, AZ 85702 (602) 623 -6502 small system not under The Home Computer Co. P.O. Box 1891 maintenance contract. University Station Charlottesville, VA 22903 The disk uses a non -re- (804) 295 -1975 movable sealed chamber Microcomp P.O. Box 1221 drive with a unique rotary Fond -Du -Lac, WI 54935 (414) 921 -4669 positioner to provide the Microcomputer Workshop 234 Tennyson Terr. highest performance disk Williamsville, NY 14221 available today. (716) 634 -6844 Omaha Computer Store The Ohio Scientific 4540 S. 84th St. Omaha, NE 68127 C -D74 can store all the (402) 592-3590 records of a medium size company for instant access. REPRESENTATIVES And the Winchester tech- Abecuz Data P.O. Box 276 nology of the C -D74 means Oil City, PA 16301 that the drive can run 24 Associates Consultants 33 Ogden Ave. hours a day without worry East Williston, NY 11596 (516) 746 -1079 of disk wear. BRAG Microcomputers 19 Cambridge St. There are other important Rochester, NY 14607 C -D74 applications in business (716) 442.5861 Computer Business computing and research in computing P.O. Box 171 LaPorte, IN 46350 itself. The disk makes small computers (219) 362 -5812 Johnson Computer practical for much larger jobs than P.O. Box 523 most business computing is Medina, OH 44256 formerly thought feasible, particularly since (216) 725 -4560 disk bound and not computer bound. Omega Computing, Ltd. Box 220, Station P C -D74 provides an unbelievable 35 millisecond average access time Toronto, Ont. MSS 257 (416) 424 -2174 to any of 74 million bytes of information. With a 10 millisecond single Pan Atlantic Computer Systems, GmbH seek, the drive has an incredible data transfer rate of 7.3 megabits 61 Darmstadt track Frankfurterstrasse 78 per second. West Germany (08102) 3206 Recommended minimum hardware for the C -D74 is a Challenger Science Education Extension 11516 LeHavre Dr. with 32K RAM and at least 8K on a Dual Port 525 board, and a single Potomac, MD 20854 (301) 299 -9506 or dual -drive floppy disk. Spectrum Technology Services P.O. Box 942 The drive , cable, interface for an Ohio Scientific Challenger and Palos Verdes Estates, CA 90274 OS -74 operating system software is $6,000 FOB Hiram, OH. Tek -Aids, Inc. 1513 Crain St. Equipment rack shown not included. Evanston, IL 60202 (312) 328-0110 The state of the art in small computers. To order direct call 1 -216- 569 -3241

BYTE November 1977 45 www.americanradiohistory.com The TRS -80: Radio Shack's New Entry into the Personal Computer Market

Announced in August, the new Radio Shack TRS -80 is a major entry into the 1 personal computer market. The $599 single board Z -80 based unit comes complete with a full ASCII character set keyboard, cassette recorder and video display monitor. Also included for the price is 4 K bytes of pro- grammable memory and 4 K bytes of read only memory; the latter features a built -in BASIC package. An additional 12 K bytes of programmable memory can be added for $289. The computer is being marketed in se- lected Radio Shack stores across the coun- try; peripherals planned for release in December include a disk drive, printer and memory expansion hardware. An interesting feature of the TRS -80 is the convenient hinged door on back for easy access to the 40 pin printed circuit card 10 connector. Photo 1: The New Radio Shack TRS -80 home computer system. Shown are Software will be available in a variety of the keyboard, video display monitor, instruction manual and prototypes of packages, including a blackjack program the upcoming memory expansion module and disk drive. (which comes free with the computer); a payroll program for up to 15 people, priced at $19.95; a kitchen menu program for $4.95; and so on. The unit is priced competitively with some other computers on the market, and it will be interesting to see what develops in this low priced appliance computer market.

Photo 2: The single board Z-80 processor which forms the heart of the TRS -80. Note the 40 pin 10 connector at upper right.

Text and Photos by Chris Morgan, Editor

Photo 4: A closeup of the forthcoming Photo 3: Rear view of the Radio Shack com- microcomputer expansion module and puter showing the 40 pin 10 connector. disk drive.

46 BYTE November 1977 www.americanradiohistory.com You don't have to be a million dollar corporation to profit by distributing this Data General micro -computer system with our BASIC business application packages for: Invoicing with Inventory Control Accounts Receivable Sales Analysis Accounts Payable Payroll General Ledger Mgt assera

microNOVA° CPU List price with three 48KB memory application packages dual floppies 24 x 80 CRT 30 -60 CPS printer 17,46O integrated cabinet Diskette Operating System Extended BASIC

We are seeking data processing oriented individuals and companies to sell and install these systems in their areas. Liberal distributor discounts start at quantity one. Hardware installation and maintenance is available directly from your local Data General office. For more information, use the coupon.

Please send me information about distributing v-T MCBA /Data General systems. Name Company Mini -Computer Business Applications 4929 Wilshire Blvd., #940 Address Los Angeles, CA 90010 City St Phone: (213) 936 -7131 Zip Phone BY1 NOVA' is a registered trademark al Dala General Corp. L

C«cle 82 on 11(111 ^V Card. BYTE November 1977 47 www.americanradiohistory.com A. VDP -80 Computer with.300 Ipm printer. B. PCS -80 with CRT, dual floppy disk & Intelligent Keyboard options. D. Processor, Memory & C. Peripherals -(clockwise from left) 45 cps daisy- Interface boards -shown MPU -A. 65K

RAM, and floppy line I O's wheel printer /terminal, 24x80 CRT terminal, disk, printer and serial 45 cps daisy -wheel printer, Intelligent Breadboard, E. PCS -80 System -sample component configurations. 44 col. alphanumeric line printer.

www.americanradiohistory.com Microcomputers: Just Ask IMSAI.

If you wonder who leads the way in FORTRAN IV -Level 2 ANSI compiler. Answers For Industry: technology, look into IMSAI's list of Self-contained Systems: IMSAI products provide the industry firsts -IMSAI 8048. first complete SCS I & 2 /TCOS -Assembler /line expandability and flexibility manu- control computer on a board: IMSAI 65K editor /debugger. facturers demand for microcomputing RAM Board. first to offer four times the 4 & 8K BASIC- Optional cassette applications. memory capacity previously available on support. We offer rack mountable components one board: IMSAI printers. first with high- for the standard 19" R ETMA racks, speed direct memory access. Compare IMSAI. You'll realize that powerful M PU boards. I/O and memory If you wonder why IMSAI products ours is the most complete product line boards for easy system expansion and have gained the reputation for the standard available. Whatever your needs. you can configuration, and a broad line of of excellence in microcomputer systems. get them from one source. IMSAI. peripherals and subsystems fully integrated check with any one of the more than 10.000 A wide selection of components is only and ready to go to work. IMSAI owners. the beginning. IMSAI offers much more. IMSAI has what you need to make If you wonder who offers the broadest Just ask. tomorrow's design today's reality. line of hardware. software. and peripherals. visit any one of the more than 275 IMSAI Answers For Businessmen: dealers around the world. Answers For Current IMSAI Users: If you wonder how microcomputing VDP -80. Announcing IMSAI's This There are over 10.000 of you. And. can fit your specific needs. ask IMSAI. self- contained includes a mega- totally unit we haven't forgotten. You might say that Because when it comes to microcomputers. via 32K byte of disk memory floppy disk, we thought of you before you even thought we have the answers. computer memory (expandable to 256K). of us. 12" CRT and 62 pad main keyboard with That's why every new product is 10 pad numeric keyboard. Several An IMSAI Product to Answer Every designed to accommodate expansion. Microcomputing Need: printer options available. rather than outdate equipment. you want speed and accuracy in If For example. our new PCS -80 retro- Let's start with our product line. In high volume work such as word processing. fit kit comes complete with MPU-B. all. IMSAI offers more than 120 high or business data collection and analysis. the replacement front panel photomask and quality. completely integrated systems. VDP-80 is your cost effective answer. additional hardware bracketing. So you components. peripherals and software. can enjoy a single cabinet PCS -80 Here's just a sampling: Answers For The Personal User & computer. with your choice of integrated Single Board Central Processors: Educators: component configurations. MPU -A (8080 based)- Industry standard. Introducing IMSAI's new PCS -80 MPU -B (8085 based) -50% faster 8080. The Answer For Everyone: 8048 -Programmable control computer. System. the fully integrated microcomputer component system, configurable to your Dial (415)483 -2093. Ext. ACT. Interfaces: exact needs. The basic system consists of That's IMSAI's action hotline. Designed to Video CRT. Edit & data entry. I/O -24x80 our Intelligent Keyboard and the PCS -80 answer the thousands of questions we Serial 1/0-2 port I /O, all std. protocols. which houses an 8085 based CPU. 16K of didn't have a chance to answer in the space Parallel I/O -4 & 6 port TTL level I /O. RAM. intelligent ROM monitor. serial I/O of this ad. Multiple I/O cassette. 2 parallel. -2 port, 24x80 CRT, with an extra 7 slots in the Call us. We'll assist you in putting I serial & I control I /O. chassis for expansion. together a system, direct you to your nearest DMA -For floppies & line printers. System component options include IMSAI dealer. and send you our new Peripherals: single or dual mini and standard floppy catalog with all the details. Printers-40/80/132 col. 30 cps- 300Ipm. disks. The choice is yours. configure the In short. if you have any questions at Video displays -Large assortment. system as you like. all regarding microcomputers. put us to -9 track. 800 bpi. 25 ips. IMSAI has answers for the educator. the test. Floppy Disks -Single /double density. too. Take the basic PCS -80, add 8K of Just ask IMSAI. Memory Expansion Boards: PROM, 4K of RAM and our self -contained 4K RAM -Programmable memory 8K BASIC software. and you have a protect. complete operating system your entire 16/32/65K RAM -16K paging option for department can use to teach anything from virtual memory addressing. elementary programming to advanced Intelligent Memory Mngr.- Handles up computer science. to I megabyte. Require a bit less sophistication? Use The Standard of Excellence in Microcomputer Systems. Self- Contained Systems: our Intelligent Breadboard system for VDP -80- Computer /terminal /mass learning, designing and building micro- IMSAI Manufacturing Corporation storage unit. Assembled & tested. computer assemblies. 14860 Wicks Blvd.. Dept. B -9 PCS -80- Integrated component system. Rather do it from scratch? Start with our single board MPU -B central processor. San Leandro, CA 94577 Software: (415) 483 -2093 TWX 910 -366 -7287 DOS -Enhanced CP /M. the heart of the PCS -80 System. It has a 1K BASIC- Interactive or compiler with ROM monitor. 256 bytes of RAM and serial and parallel I /O. Features and specifications subject to change without scientific and /or commercial features. Since the MPU -B is 8085 based, you notice. can run all programs previously developed for the 8080. 50% faster. Without requiring faster memory.

Circle 67 on inquiry card. BYTE November 1977 49 www.americanradiohistory.com M F Smith Research Assistant Department of Oceanography University College Galway IRELAND

Using Interrupts for Real Time Clocks

We have developed several software time- Hardware keeping routines for oceanographic data sys- The routines are driven by direct non - tems which may be of more general interest. maskable interrupts of the processor by a These routines are based upon the Motorola clock pulse source as shown by figure 1. Use M6800 and have been tested on SwTPC of the NMI in this fashion precludes use for 6800, MITS 680b and Motorola MEK- other functions but minimizes hardware. 6800D1 evaluation kit systems. The routines Also, such use of interrupts can cause prob- require little memory or hardware and do lems when timing loop software is inter- not slow program execution appreciably. rupted: constants which are valid without Features of the routines are: interrupts can be incorrect when interrupts are in operation. With these caveats in mind, packed BCD storage of time values: however, use of interrupts proves quite con- days, hours, minutes and seconds. venient.

little interference with user routines The clock source may be in the range 1 to through use of interrupts. 99 Hz (10 Hz is used here) and drives a usable with a wide range of clock monostable (74121, 9601, etc). The Moto- frequencies. rola literature describing the 6800's non - minimal hardware complexity. maskable interrupt function is just a trifle possibility of event scheduling. confusing. Using the information in the M6800 Microprocessor Applications Manual, one could conclude that the NMI line re- quires a low level input to initiate an inter- rupt. This conclusion results from the terse description of NMI and reference to the fact that NMI is supposed to work similar to

I RQ. However, the hardware specification sheets for the processor explicitly state that

PULL UP RESISTOR NMI is sensitive to the negative going edge of (MAY ALREADY EXIST the digital signal on its input. This detail is IN YOUR SYSTEM) easily confirmed by experiment. [It is also CLOCK ONESHOT the only sensible way to handle this inter- (MONOSTAB LE) 0 ETO SOURCE 2µSEC M 6800 rupt, in view of the fact that it cannot be 1 -99 Hz PULSE WIDTH NMI OPEN COLLECTOR masked in the processor to inhibit further TYPICAL INTEGRATED CIRCUITS: BUFFER interrupt while the interrupt routine is in 74121, 74123, 9601 TYPICAL CIRCUITS 7401, 7406 operation ...CH] The oneshot in figure 1 should be interpreted as a way of trans- Figure 1: The hardware configuration required for a real time clock imple- forming an arbitrary signal into a well - mented with an interrupt line. For the 6800 processor, the negative going defined TTL pulse of a minimum 2 micro- pulse of the monostable (oneshot) should be at least two processor cycles seconds in length, or slightly greater, which in length. The switch S1, or its logic circuitry equivalent, is essential in order provides the required negative edge. to disable the interrupts if user programmable volatile memory contains the Unless the time routine is stored in ROM interrupt routines. If this switch or its equivalent is not present, receiving with "hard" NMI vectors, means of disab- interrupts from NMI in absence of an interrupt routine (following power on) ling NMI pulses must also be provided until leads to quite unpredictable results in the behavior of the system. the interrupt routine and vector are estab-

50 BYTE November 1977 www.americanradiohistory.com SANTA and SCELBI A UNIQUE GIFT IDEA NAVE YOUR LIST. ..FOR EVERYONE ON r.. i BEFORE ORDER NOW! SAVE! 1978 PRICES GO UP!

FOR THE BEGINNER Understanding MicroComputers and manufacturers' literature. Makes you feel Small Computer Systems. A profusely "at home" around computers. Accepted illustrated, easy -reading "must" book as the standard for the neophyte, you explaining fundamental concepts behind must own this 300 -page no- nonsense, operation of microcomputers. Simple easy- reading text. Includes easy -to-use English. Gives extra knowledge to read glossary of key microcomputer oriented and understand computer magazines and words. Order now. Save! $9.95 each ppd.

FOR THE INTERMEDIATE ... pose routines for multiple Scelbi's Software Gourmet precision operation. Pro- Guides and Cookbooks for gramming time delays for '8080' or '6800' lets you cook real time. And lots more. Even up mouthwatering programs. floating point arithmetic rou- Delectable "how to" facts, in- tines! Order your copies today. cluding '8080' or '6800' in- Bon appetite! Specify: '8080' struction sets. How to man- or '6800'. $9.95 each ppd. ipulate stacks. Flow charts. Source listings. General pur-

FOR THE ADVANCED .. SCELBAL. GALAXY Microcomputer Higher Level Outer Space War Games Language for for '6800'. Captain your '8008'/'8080' own starship on intergallac- Systems. tic journeys filled with bat- Complete, illus- tles, refueling problems, trated program weaponry ,.warp factors, book. Routines. and more - all against your Techniques. '6800'. A complete book, Source listings. written in machine language Flow charts. More. Includes 5 com- for 4K memory. Ever- chang- mands, 14 statements, 7 functions, and it ing interstellar adventure, includes source listings, flow runs in 8K and more. All you need to cus- charts, routines, more. Order today. Blast off tomor- tomize a high level language for your sys- row! $9.95 ppd. tem at a fraction of the cost. Order today! $49 ppd.

The '8080' Programmer's Pocket Guide; '8080' Octal Code Card and/or '8080' Hex- adecimal Code Card. Compact pocket guide for instant reference to either code card. Cards are instant slide rule aids for programming /debugging '8080' software. Standard mnemonics with corresponding codes. Color coded instructions indicate which flags are affected during instruction execution. Quick, logical reference formats. ASCII code chart for 128 characters. '8080' status words. Register pair codes. More. Order all three now ... only 52.95 per Item. Prices shown for North American customers. Master wr f(IUFI (O`MFUIER Charge. Postal and bank Money Orders preferred. Personal checks delay shipping up to 4 weeks. (ONSIIIIIN1i IN(ß Pricing, specifications, availability subject to change Post Office Box 133 PP STN without notice. Milford, CT 06460 Dept. B

Circle 124 on inquiry card. BYTE November 1977 51 www.americanradiohistory.com ` Entered following NMI interrupt pulse. (NMIRESPONSE) Update clock variables (ie: count interrupts modulo E4:60:60:N where N = number of inter- CLOCK ROUTINE rupts per second).

Location of "return from interrupt" in simple clock routines of listings 1, 2 and 3.

E--SHOULD BACK- -7 YES GROUND NO r SHOULD -1 I I I TASK BE i TASK ON TASK BE

I I I DEACTIVATED? I ACTIVATED? I I (T >TO?) Note: To = time of next background task event. NO

YES

TO=TO+OTF TO=TO+ATB - - RESTORE OLD SAVE OLD PROCESS STATE "Old process state" is content of top PROCESS STATE TO STACK seven levels of stack. FROM STACK

Manipulations of process state can be SET UP "BACKGROUND accomplished by maintaining two stacks PROCESS STATE" and switching stack pointers. ON STACK

PROCESS TIMING DIAGRAM: TF =4, T B = 2

ACTIVE BACKGROUND INACTIVE

ACTIVE II FOREGROUND INACTIV 11

I1

11 ACTIVE II CLOCK ROUTINE INACTIVE (OVERHEAD)

INTERRUPTS

CONSERVATION OF TIME: BACKGROUND + FOREGROUND + CLOCKROUTI NE = 100% OF AVAILABLE TIME

Figure 2: A suggested algorithm for implementing two simultaneous tasks using the interrupt input to keep track of times AT8 and ATF allocated to each process. It is assumed here that the "foreground" task is the principle task, and that the presence or absence of a hidden "background" task is governed by a flag.

52 BYTE Nuvcmbcr 1977 www.americanradiohistory.com lished in programmable memory. We use a PACE 001 RAMTIME mechanical switch (S1), but more elegant 00001 NAM ALIT IPIE methods are possible with increased hard- 00002 AO4A ORC A04A ware complexity. 00003 AO4A 00 FCB DUMMY LOCATION 00004 A04D 00 DAY FCB TIME IN PACKED BCD FORMAT 00005 AO4C 00 LOUR FCB Software 00006 A040 00 MIN FCB 00007 AO4E 00 SEC FCB 00008 AO4F 00 SECT FCB A minimal timekeeping routine called 00009 A050 00 FCB DUMMY LOCATION 00010 A051 00 (WATCH FCB BINARY 'STOPWATCH' LOCATION RAMTIME is shown as listing 1. This routine 00011 performs the a real time clock 00012 A052 99 FCB 99,$99,$24,$60.$60 function of A053 99 when it responds to the interrupts from A054 24 A055 60 NMI. It has two counters. A counter 1 byte A056 60 00013 long called WATCH continually cycles with 00014 A057 10 RATE FCB $10 *CLOCK RATE 00015 a binary integer count. A second 5 byte 00016 *FOR DIFFERENT CLOCK RATES, CHANCE RATE 00017 E.C., FOR 60 112 CLOCK CHANCE TO $60 count field provides the usual day, hour, 00018 1 -99 HZ ALLOWABLE CLOCK RATES and seconds using 00019 minutes counts the 00020 A058 CE A051 TIME LDK /WATCH TIME PROGRAM BEGINS HERE "overflow" constants 99, 99, 24, 60, 60 and 00021 A05B 6C 00 INC 0,K INCREMENT THE STOPWATCH 00022 A050 09 DEC DECREMENT TIME ADDRESSES the number of interrupts per second to 00023 A05E 6F 00 DINC CLR 0,K CLEAR ON CARRY 00024 A060 09 DEC NEXT ADDRESS determine when a carry has occurred. All the 00025 A061 86 01 LDA A it DECIMAL INCREMENTATION /CARRY 00026 A063 AB 00 ADD A 0,K counting in this field is done in BCD. If at 00027 A065 19 DAA HALF CARRY 00028 A066 A7 00 STA A 0,K COMPLETE DECIMAL INC any time it is desired to output the BCD 00029 A068 Al 07 CLIP A 7,K CARRY? 00030 A06A 27 F2 BEQ DING YES, CARRY numbers in the various count fields, the 00031 MIKBUG subroutines OUT2HS and 00032 SCHEDULER(S) INSERTED HERE*" 00033 OUT4HS can be used to convert to external 00034 A06C 3B RTI RETURN TO PROGRAM 00035 ASCII decimal values on a terminal. 00036 END

The program includes a binary "stop- TOTAL ERRORS 00000 watch" function. The location WATCH is incremented with every NMI pulse, thus Listing 1: RAMTIME. This routine is a minimum "clock" and "stopwatch" providing a convenient means of timing function to be used at interrupt service of an NMI (nominally 10 Hz rate). short events. This function can be elimin- The "stopwatch" maintained at hexadecimal location A051 is incremented ated with a small saving of memory, if as a binary number every interrupt for short term timing by counts. After desired. incrementing stopwatch, the routine treats the bytes at locations AO4A to Clock rates different from the 10 Hz rate A04F as a 12 digit BCD field with subfields for days (2 bytes), hours (1 are accommodated by changing the RATE byte), minutes (1 byte) and seconds (1 byte) and parts of a second (1 byte). variable (RAMTIME) to the packed BCD The overflow values for each field are coded as BCD numbers stored at loca- value of the clock rate, eg: the present rate tions A052 to A057. of hexadecimal 10 (BCD for 10 Hz) is changed to hexadecimal 60 for a 60 Hz clock source. simplest form of "timesharing" or "multi- programming." Scheduling The nature of the NMI -driven clocks Operation make them ideal for the inclusion of task Startup of the routines is not auto- scheduling routines. Scheduling, using these matic if routines and vectors are held in routines as vehicles, is transparent to the programmable memory. The source of NMI user program, ie: scheduling is performed pulses must be disabled until the routine and without "knowledge" of the program that vector are loaded. Once they have been scheduling is going on. Timetables are installed, enable the NMI source and the accurate because the schedule is checked routine begins working. Time can be set every NMI. A very simple scheduler is using memory alter functions or with suggested in the flowchart of figure 2. special setting routines. Once the time- This algorithm implements a timing diagram keeper is running, normal operation may (like that in the figure) which switches proceed as usual, subject again to the caveat between two tasks arbitrarily called "fore- of checking the effects of interrupts on any ground" and "background." This is the timing loops in other programs.

BYTE November 1977 53 www.americanradiohistory.com Spikes: Pesky Voltage Transients and

How to Minimize Their Effects

John McCain You're sitting at your computer playing a components and fragile chips. These spikes 3523 Hardy St game of Super Universe War, about to defeat originate everywhere. You can't turn on the Shreveport LA 71109 King Computer, when suddenly, instead of television or turn off the coffee pot without his spaceship disappearing from the display, making one. Many are small enough to pass you see smoke rings drifting from the top of by unnoticed, but often they dump their your mainframe. While you curse the expert energy where you least want it. Voltage technician that built the system (you), you spikes of 1700 V have been recorded on the dissect the power supply and find a shorted 120 V wiring in common houses. Multiple rectifier diode or a bad regulator integrated spikes of over 1200 V can be expected in 2 circuit. Although the uninformed would to 4% of all houses. These are usually due to blame the component manufacturer, you changes in an electrical circuit, ie: opening know that it was Spike that did you in; or closing a switch. Remember, the wiring in possibly the voltage spike your brother made your house obeys the same laws of nature when he started the washing machine. The that govern other circuits with resistance, roughest environment you can put that inductance and capacitance. If you try to fragile MOS circuit in is probably the one rapidly change the current through an in- you find most comfortable, your house. The ductor, for example, opening or closing a way voltage transients run around the power switch, the voltage across it rises rapidly. wiring in your home, you'd think they made Guess what? Most power wiring just happens the mortgage payment. Let's look at just to be predominately inductive. Researchers what these beasts are, where they come have shown that residential areas often from, what they do, and how to protect exhibit more transients, and more severe your microcomputer from them. transients, than commercial and even some The beast I'm talking about is the voltage industrial areas. What does the spike look impulse that enters your computer through like on an oscilloscope? It is usually a the wall plug and tries to eat power supply damped sine wave such as the one in figure 1. It has extremely sharp rise characteristics (steep leading edge) and it normally dies out after 5 or 10 cycles. It may be only 5 ps long, but may last for 50 µs or longer. A typical wave shape is shown in figure 1. +-EXPONENTIAL ENVELOPE Another source of surges that I will quickly is 1200V mention lightning. Although we can't

Figure 1: Typical shape of prevent it, we can divert it. I have a lightning 5 TO 10mS a voltage transient wave- arrester at the power entrance to my house. W The voltage tran- I form. á If you don't, strongly suggest that you sient is superimposed on look into getting one. It's a good insurance ó the normal voltage in a > policy for about $10. I've never seen an circuit, and is charac- electric utility that didn't install lightning terized by an exponen- arresters like they were going out of style, tially damped envelope and those people know what they are doing. around an oscillatory Now, let's look at what a well -placed waveform. TIME spike can do. It might find a low impedance

54 BYTE November 1977

www.americanradiohistory.com The Dumb Terminal lets you put it all together.

With the new, lower- priced Dumb TerminalTM' Kit, that is. electronic components. Naturally, you also get illustrated, Pick one up and escape, once and for all, the headaches step -by -step assembly instructions, not to mention an of scavenged teletypes and jury- rigged TV sets. With just easy -to- understand operator's manual. a little time and aptitude, you can have a live and working So, if you'd like more input on the Dumb Terminal Dumb Terminal right in your own home, garage, or Kit, just fill out the coupon and we'll send you complete, business. One that lets you get it all out of your system free information. - or into it. Oh, and by the way, just by sending in the coupon, Forget the cheap imitations, with their overblown you will be made a charter member of the Dumb price tags and interminable lists of options. With Terminal Fan Club. A select organization that will the Kit, you can build yourself the same, old send you your own nifty Dumb Terminal Fan basic Dumb Terminal that's been selling over Club Kit, containing: an official certificate 1500 units a month. With basic, sensible of membership; an autographed photo of the features like a bright 12" diagonal screen. Dumb Terminal himself; and a bona fide Fifty -nine data entry keys. 1920 characters membership card to prove irrefutably you're displayed in 24 rows of 80 letters. Plus 33 "One of Us." (Sorry, limit one kit per person.) positive action switches that let you activate And, if you include a trifling $6.00, you functions like 1 of 11 different baud rates, an can have your very own Dumb Terminal RS232C interface, or a 20mA current -loop. T- shirt. (No limit at all on these.) And more. Not bad for Dumb Simply mail the coupon and get the whole All you need, besides the Kit, is assortment. And find out why members of the some initiative, and a few basic Dumb Terminal Fan Club are some of tools -a good soldering iron, the smartest people around. wire cutters, needle -nose pliers, and one or two trusty screw- drivers. The Dumb Terminal Kit provides you with every- thing else. Including an attractive cabinet, CRT screen, keyboard, PC Dumb Terminal. board, arid all essential Fun Club.

Yes, I would like more infor- ation about the incredible Terminal Kit. And don't t ënroll me as a Charter r in the Dumb Terminal Club.

Name Title( ?) 'Company-- Street City- State Zip Enclosed is $ for an official Dumb Terminal T-shirt(s). Please make all checks and money orders payable to LeAnce & Reiser, OK? Quantity.and size(s) of shirt(s) required: S M L XL "Dumb Terminal" is a trademark of Lear Sic-::;1 l.c E.I.D. %Data Products, 714 N. Brookhurst I Rush this application to: Dumb Terminal Fan Club Headquarters 92803, (800) 854 -3805. In California (714) 774-1010 c/o LeAnce Reiser; PO. Box 17123, Irvine, CA 92714. Circle 80 on inquiry card. www.americanradiohistory.com1 POWER REGULATOR SWITCH

AC MAINS VARISTOR FILT ER CAPACITOR

Figure 2: The combined isolation and shunting method is the best way to protect your system from voltage transients. The varistor shunts large transients in the AC source of power. Small high frequency "despiking" capacitors provide a low impedance path for any components of the external spike which make it through the transformer and rectifier. (The inductance of the regular filter capacitor tends to limit its usefulness at high frequencies.)

path to ground and pass by unnoticed. But a 0.01 pF capacitor in parallel with the filter more than likely it will enter some dandy capacitor will take care of many of these. appliance, or your computer, and do all the Nonlinear devices such as spark gaps and

damage it can. Remember that 1 that mys- varistors may be placed on the AC line. The teriously appeared in memory shortly after last part of the shunt method is the most you wrote a 0? Have you ever wondered important. Put a good ground on the ma- how that bad data got into your system? It chine! If your house doesn't have three wire could have been put there by your next door outlets, tie the case ground to a water pipe; neighbor turning on a vacuum cleaner. You if you have to, drive a ground rod. Be aware have seen rectifier diodes fail when they of the grounding system in all your elec- were carrying only a tenth of their rated tronic equipment. Poor grounding practice current, voltage regulator integrated circuits can cause shocks, ground loops, and erratic die when they weren't even running warm, operation. /When I took my system away and transistors stop working when the her- from its usual solid grounding arrangements metic seal broke, letting out the smoke. for a demonstration at the ACGN/ meeting (I've always wondered how they work with May 20 of this year, the lock of a good all that smoke in there.) If you have mysteri- ground became painfully obvious: programs ous errors in your system, transient and ran- which have never before committed suicide dom, chances are a spike might have been became quite distressed and recal- involved. citrant ... CH/ Now let's get to the good part: how to We can expect to adequately protect the get rid of the little monsters. There are two hardware without much trouble (or cash). basic techniques available. First, you can The best procedure is to use a combination attempt to isolate the equipment from the of the above methods as shown in figure 2. source of the spikes by running it on I've tried to explain a little about voltage batteries or an uninterruptible power supply. transients without getting into the physics of Isolation transformers show up at the sur- semiconductor failure or transient genera- plus dealers occasionally, but are usually tion analysis. If you want to become better expensive. The second method is usually versed in this field, read several of the cheaper, but is somewhat less effective. Use references. They all offer good background the voltage divider principle and shunt the material and references 2 and 3 give detailed spike to ground through a low impedance at information. Hopefully, you are among the the power supply. A common example of many who haven't had any problem with this principle is the 0.01 pF capacitor placed spikes. The best time to prepare for them is between the power buses and ground of a before they give you trouble. digital circuit, to suppress the low level switching transients of digital integrated REFERENCES circuits. Since we are talking about tran- 1. Westinghouse Electric Corporation, Electrical sients that come in over AC lines, we need to Transmission and Distribution Book, East Pitts- put the low impedance on either the AC line burgh PA. or the power supply bus. On the DC side, 2. G J Hahn and F D Martzloff, July 1970, "Surge hefty filter capacitors do this for the spikes Voltages in Residental Power Circuits," IEEE with low frequency characteristics, but they Transactions on Power Apparatus and Systems, 89 161 1049 -1056. often exhibit stray inductance which looks 3. General Electric Company, Transient Voltage like a high impedance to a fast pulse. Putting Suppression Manual, Syracuse NY.

56 BYTE November 1977 www.americanradiohistory.com the

with a capacity of about 90 KB. IBM compatible format. Controller will handle 3 drives ... CPU - 8080 based with a flexible design that allows you to implement a start up Processor "jump to" operation to any dip switch selected byte address you choose. Merely turn ai power or press RESET and you are off and running. Excellent for power failure automatic restart ... Memory -16K of static RAM memory. Low power chips. Selectable address assignment and Terminal. memory protect features ... I/O - 3P +3S input/output A logical forward step in Microcomputer design board. 3 parallel ports and 3 serial ports with selectable

baud rates of 75 to 19,200. RS -232C and TTL outputs . . . the Processor Terminal. A new design by TEI and look at Video -A video board provides the support for the what you get ... a complete, self contained microcompu- video display functions ... Mainframe -A 12 slot ter system with display and mass storage, a full keyboard mainframe with a 17 -amp CVT power supply, motherboard and plenty of slot space for additional boards. And that assembly, heavy duty aluminum cabinet, fan and washable famous TEI CVT power supply that makes brownouts a filter. All edge connectors and card guides provided . thing of the past. Software - CP/M and BASIC Display -A 15" high -resolution black and white video provided on disk. display with an optical filter face plate to reduce glare and the Processor Terminal (Model MCS -PT) fully assem- improve type visability ... Keyboard - Full upper and bled and tested is priced at $3495.00. lower case ASCII detached keyboard with 8 programmable the Processor Terminal partially assembled (We build special function keys. Keyboard status indicators show the cabinet, keyboard, monitor, power supply, disk drive computer BUSY or READY. And a 16 -key numeric cluster and motherboard and you build the CPU, RAM, I /O, Video pad set up calculator style ... Disk Drive & Controller - and Controller boards which we supply as kits). This A Shugart SA -400 mini -floppy disk drive. Soft sectored partially assembled unit is priced at $2995.00.

MCS SPECIAL SYSTEMS GROUP MICROCOMPUTER SYSTEM

Contact your local TEI Dealer or if you are not near one of our dealers, write or call CMC Marketing Corp direct for more information.

CMC MARKETING CORP 7231 Fondren Rd, Houston, TX 77036 Telephone (713) 774 -9526 See you at Pers. Comp. 10/27 -29 Chicago Booth #53 Circle 23 on inquiry card. BYTE November 1977 57 www.americanradiohistory.com D SYNCENTERPRISES, H ROSOUN INC. One -stop shopping for Hardware and Software Everything you need in small computer systems with special emphasis on TERMINALS! Look at these units...compare price, quality, delivery, service...and you'll see why you don't have to look anyplace else! LEAR SIEGLER ADM 3A TERMINAL Full addressable cursor ADM 3A $739.95 Display format -24 lines Kit of 80 characters per line ADM 3A Assembled .. 849.95 Communications rates -75 to Lower Case 19,200 Baud option Computer interfaces 69.00 -EIA standard

Display Format -80 characters per line by 24 lines Full cursor control Edit operations: clear screen, ADM 1A clear unprotected character type -over. TERMINAL (Options are Character Insert/Delete, Line Insert /Delete, Erase to end of page, Erase Line/Field) and much more Abl m $1398.00

ADM 2A TERMINAL 1920 character display (24 x 80) 16 function keys for 32 commands Separate keyboard -119 keys 10 key numeric pad Single key edit operations ADM 2A Assembled .. . Page, field or line edit Security, protected fields $1895.00 and much more

OKIDATA MODEL 110 OKIDATA MODEL 22 125 lines per minute LINE PRINTER LINE PRINTER 132 -column print line Upper /lower case 110 CPS dot matrix 8 different $1149.00 character sizes Fee di.. 12 IPS paper slew Tractor Feed 1279.00 Tractor Feed .... $2249.00 RS 232C S rial RS 232C Serial Interface ... 379.00 Interface . 260.00

DECWRITER II 132 column printing 10 -30 CPS Full keyboard Tractor feed $1695.00

58 BYTE November 1977 www.americanradiohistory.com SYNCHRONSOUNDENTERPRISES, INC

CENTRONICS CENTRONICS 761 PRINTER 703 SERIAL 300 Baud serial transmission PRINTER Bidirectional and incremental printing RS232, CCITT -V24, or current loop interface Baud selection (110/150/300) KSR with Keyboard $1695.00 Low Receive only version cost of ownership 1595.00 Bidirectional logic seeking printing Microprocessor electronics $2395 Excellent print quality 00

IMSAI 8080 MICROCOMPUTER Powerful Low cost Easy to use

With 22 Slot IMSAI 8080 Mother Board FLOPPY DISK $619.95 Fully IBM 3740 media SYSTEM With Z -80 CPU and format compatible Full formatter 849.95 ICOM Model FD 3712 and controller Dual Drive System built -in HAZELTINE 1500 $2795.00 VIDEO TERMINAL Reverse video 24 x 80 display Programmable brightness levels RS232 and current loop and much more Assembled .... $1149.00 Kit also available SPECIAL BUYS IQ 120 HAZELTINE MODULAR 1 Sorac Video Terminal Kit $959.00 INTELLIGENT TERMINAL DEC LA 180 Printer 2769.00 Compucolor8001 Color Computer 2595.00 1920 character display ICOM Microfloppy System 989.00 8 different video levels North Star Microfloppy Disk Kit 599.00 Full editing capability 2708 Eproms 27.95 Removable keyboard Javelin 9" Video Monitor 159.95 and much more Livermore Modem Model 76 299.00 Sol 20 with Solos Kit (limited supply) 999.00 Assembled .... Micropolis Model 1053MOD 2 1799.00 $1659.00 IMSAI AP44 -44 Col. Printer Kit 329.00 TDL Xitan Alpha 1 Computer Kit 699.00

We carry a full line of the following: TDL, SYNCHRO -SOUND ENTERPRISES, INC Centronics, Seals, Hazeltine, Micropolis, The Computer People Hayden, IMSAI, Cromemco, Compucolor, Icom, Lear Siegler, Okidata, 193 -25 Jamaica Avenue, DEC, Javelin, North Star, Peripheral Vision. Jamaica, New York 11423 Same day delivery and shipping on most 212/468 -7067 TWX: 710-582-5886 items. Full modern repair facilities on Hours 9-4 daily Visit our new showroom premises for complete servicing of and Saturday Working units on display Lverything we sell. Dept.BB BankAmericard MasterCharge

Circle 141 on inquiry card. BYTE November 1977 59

www.americanradiohistory.com Pcgruiïing Quickies

Simple Math Lessons

Here is a program I wrote using Tom 230 PR " ";X Pittman's Tiny BASIC. It originally appeared 235 GOTO 260 in KIM -1 User's Notes. This program allows 240 PR " ";X my two children to play with the computer 260 IF Y< =10 GOTO 280 and also learn math. The output of the 270 GOTO 290 program looks like this: 280 PR " X ";Y 285 GOTO 300 THIS IS A MATH TEST 290 PR "X ";Y 12 300 PR " ", X 6 310 LET Q =X *Y 320 INPUT D

If the correct answer is input, the com- 330 GOTO 120 +1) puter replies with YOU'RE RIGHT and a 350 LET X =(RND (50) 355 LET Y =(RND (50) +1) new problem is set up. For a wrong answer the reply is ? ?WRONG ? ?, TRY AGAIN and 360 IF X< =10 GOTO 380 the same problem is repeated. If you answer 370 GOTO 390 incorrectly three times THE RIGHT AN- 380 PR " "; X SWER IS 72 appears and a new example is 385 GOTO 410 set up. 390 PR " "; X The actual problems are randomly chosen. 410 IF Y< =10 GO TO 430 The number limits for multiplication are set 420 GOTO 440 + "; Robert G Lloyd at line 200 for the multiplicand and 205 430 PR " Y 7554 Southgate Rd for the multiplier. Lines 305 and 355 define 435 GOTO 450 Fayetteville NC 28304 the two addends for addition. 440 PR " + "; Y 450 PR " " 10 PR "THIS IS A MATH TEST" 460 LET Q =X +Y 15 PR 470 INPUT D 20 LET V =0 480 GOTO 120 30 LET I =0 500 PR "YOU'RE RIGHT" 35 LET Z =0 505 PR 40 PR "TYPE 1 FOR MULTIPLICATION" 508 LET Z =Z +1 50 PR 509 IF Z<3 GOTO 512 60 PR "TYPE 2 FOR ADDITION" 510 GOTO 10 70 PR 512 IFI =1 GOTO 200 80 INPUT I 514 IF I =2 GOTO 350

90 PR 600 PR " WRONG , TRY AGAIN" 100 IF I =1 GOTO 200 610 PR 110 IF I=2 GOTO 350 620 LET V =V +1 120 IF D =Q GOTO 500 630 IF V =3 GOTO 650 130 GOTO 600 640 IFI =1 GOTO 210 190 END 645 IF I =2 GOTO 360 200 LET X =(RND (12) +1) 650 PR "THE RIGHT ANSWER IS ", 205 LET Y =(RND (12) +1) 655 PR Q 210 IFX< =10 GOTO230 660 PR 220 GOTO 240 670 GOTO 10

60 BYTE November 1977

www.americanradiohistory.com HORIZON THE COMPLETE COMPUTER r

I

Look To The North Star HORIZON Computer.

HORIZONTM- a complete, high -performance microprocessor EXPAND YOUR HORIZON system with integrated floppy disk memory. HORIZON is Also available- Hardware floating point board (FPB); addi- attractive, professionally engineered, and ideal for business, tional 16K memory boards with parity option. Add a second educational and personal applications. disk drive and you have HORIZON -2. Economical serial and To begin programming in extended BASIC, merely add a CRT parallel I/O ports may be installed on the motherboard. Many or hard -copy terminal. HORIZON -1 includes a Z80A processor, widely available S -100 bus peripheral boards can be added to 16K RAM, minifloppyl" disk and 12 -slot S -100 motherboard HORIZON. with serial terminal interface all standard equipment. - QUALITY AT THE RIGHT PRICE WHAT ABOUT PERFORMANCE? HORIZON processor board, RAM, FPB and MICRO DISK SYS- The Z80A processor operates at 4MHZ - double the power of TEM can be bought separately for either Z80 or 8080 S -100 bus the 8080. And our 16K RAM board lets the Z80A execute at systems. full speed. HORIZON can load or save a 10K byte disk program HORIZON -1 $1599 kit; $1899 assembled. in less than 2 seconds. Each diskette can store 90K bytes. HORIZON -2 $1999 kit; $2349 assembled. AND SOFTWARE, TOO 16K RAM -$399 kit; $459 assembled; Parity option $39 kit; $59 HORIZON includes the North Star Disk Operating System and assembled. FPB $259 kit; $359 assembled. Z80 board $199 kit; full extended BASIC on diskette ready at power -on. Our BASIC, $259 assembled. Prices subject to change. HORIZON offered now in widespread use, has everything desired in a BASIC, in- in choice of wood or blue metal cover at no extra charge. cluding sequential and random disk files, formatted output, a powerful line editor, strings, machine language CALL and more. Write for free color catalogue or visit your local computer store. NORTH STAR * COMPUTERS 2465 Fourth Street Berkeley, California 94710 (415) 549 -0858 Circle 105 on inquiry card. BYTE November 1977 61 www.americanradiohistory.com NO .....r _

AMMO r.r,,i'y .17 1041/

AM,ffurY.

*OOPO. _ -__- xaarnr - -0p-- .1

. . . ^ .-f.11.'.. Nf:.n /lId %-1 . -.. 1 l ... 1Y101 - j_----,' It %142.3 ..ß 4a.ae --- - o21Mi I 02104-4 ]IM21 t : i 1 E t 142] MOOD ]C,/fIl]lOS '. 1 +.'VOD , R )1!O IC

1 .02]OM{' 1 02104-4 oll 102] C21 ,1S/;Q310] .. , i.-- _, ,u. . r- ((( CIy P 7]30 IC -' IS -_ Vn. -'--..,1 f.. +Ñ!@osß_ D210i-4 ss .1423 f . . f..:1 ; , r t. / Il t St3/¡4LSf03 . -rYrYä:+65 ¡SSO PC iC: :iAV ` . 0210:-6 Ì2P i 'slr:ta t./. 1 f4-L__.:111146-.__1 6 DATA DELAY DDU-4-7672 . - 04-6 . 1 -1F I - OZ104-6 ,,; , , _ 1 5162 i 3 i..__ .1 ". - - _ I. r 1, -` ; ,, I 1-. T .. --'- - .. `- .i

www.americanradiohistory.com The end of Kit Kits. The end of bad solder ¡ heat damaged components and sick IC's. Introducing the Semikit. Item 1, a 16KRA Memory Board, $369.

Let's face it. Loading and for both of us. You get a board refresh. There's no waiting while soldering PC Boards is not much where the primary causes of the CPU is running. Worst case fun for the kit builder. Even damage(poor solder joints,excess access time is 400 nsec. Each more important, it's the place solder and bad IC's) are virtually 4,096 word block is independently where most of the trouble gets eliminated. You get a board of addressable for maximum sys- introduced. The real fun and highest professional quality. tem flexibility. Power is typically education comes in running and And we get the business! 5 watts, the same as most single testing boards. 4K memory modules. Back -up The 16KRA Memory power connection is built -in. Now the Semikit with Board's at your dealer now. fully tested IC's. Your Other Semi's are coming At the price of a kit, Processor dealer has the first Semikit, a your way. Technology Corporation intro- 16KRA Memory Board, in stock The 16KRA Memory is duces the Semikit. It's a fully and ready to go right now. You Processor's first step in adding stuffed, assembled and wave can take it home tonight for more fun, capability and reli- soldered PC Board loaded with $369 as a Semikit or for 5399 ability to your computer system IC's that have gone through Q.C. fully assembled, tested and at lower cost. Other modules are and final checkout (a first in burned -in. on the way to your dealer now. the industry). You'll have a 16,384 byte Come on down today. We leave you the fun of memory with a better price per- Or you may contact us testing with our fully documented formance ratio than anything directly. Please address Processor set of instructions. We do the on the market today. Now you can Technology Corporation, Box B, production tasks of loading, wave afford to add quality, high 7100 Johnson Industrial Drive, soldering and inspecting the density memory to your system Pleasanton, California 94566. boards. You do the more interest- for remarkably little. And you Phone (415) 829 -2600. ing and time consuming chore can add enough to solve complex of testing and burning -in computing problems right in the boards. the main frame. The result is one sweet deal The memory features invisible Processor ëcchnolc

Circle 117 on inquiry card. BYTE November 1977 63 www.americanradiohistory.com The Small Computer

Twenty -five years ago a computer as powerful as the Sol -20 offers all these features as standard: new Processor Technology SOL -20/8 priced out at a cool million. 8080 microprocessor- 1024 character video display Now for only $1350 in kit form or $1850 fully circuitry - control PROM memory-9216 words of static low - assembled and tested you can have your own small computer power RAM - 2048 words of preprogrammed PROM - built -in with perhaps even more power. It comes in a package about the cassette interface capable of controlling two recorders at 1200 size of a typewriter. And there's nothing like it on the market bits per second - both parallel and serial standardized interface today. Not from IBM, Burroughs, DEC, HP or anybody else! connectors -a complete power supply including ultra quiet It fills a new role fan -a beautiful case with solid walnut sides - software which If you're an engineer, scientist or businessman, the includes a preprogrammed PROM personality module and a data Sol -20 can help you solve many or all of your design problems, cassette with BASIC -5 language plus two sophisticated computer help you quantify research, and handle the books too. For not video games -the ability to work with all 5 -100 bus products. much more than the price of a good calculator, you can have high Full expansion capability level computer power. Tailor the Sol -20 system to your applications with our Use it in the office, lab, plant or home complete line of peripheral products. These include the video Sol -20 is a smart terminal for distributed processing. monitor, audio cassette and digital tape systems, dual floppy Sol -20 is a stand alone computer for data collection, handling disc system, expansion memories, and interfaces. and analysis. Sol -20 is a text editor. In fact, Sol -20 is the key Write for our new 22 page catalog. element of a full fledged computer system including hardware, Get all the details. software and peripheral gear. It's a computer system with a keyboard, extra memory, I/O interfaces, factory backup, service Processor Technology, Box B, 7100 Johnson Industrial Drive, Pleasanton, California 94566. Phone (415) 829 -2600. notes, users group. It's a computer you can take home after hours to play or create sophisticated games, do your personal books and taxes, and a whole host of other tasks. Those of you who are familiar with small computers will recognize what an advance the Sol -20 is. ProcessorTechnology www.americanradiohistory.com See Sol here...

ALABAMA The Byte Shop itty bitty machine co. NEW YORK Interactive Computers 2626 Union Avenue 42 West Roosevelt 76461/2 Dashwood Rd. ICP, Computerland The Computer Mart San Jose, CA 95124 Lombard, IL 60148 of Long Island Houston, TX 77036 1550 Montgomery Hwy. (408) 377 -4685 (312) 620-5808 (713) 772 -5257 Birmingham, AL 35226 2072 Front Street (205) 979 -0707 The Computer Room East Meadow, L.I. NY 11554 Neighborhood Computer 124H Blossom Hill Rd. INDIANA (516) 794 -0510 Store San Jose, CA 95123 X20 Terrace Shopping Center ARIZONA The Data Domain The Computer Shoppe (408) 226-8383 406 So. College Ave. 444 Middle Country Rd. 4902 - 34th Street Byte Shop Tempe Lubbock, TX 79410 The Byte Shop Bloomington, IN 47401 Middle Island, NY 11953 813 N. Scottsdale Rd. (806) 743 -2787 509 Francisco Blvd. (812) 334 -3607 (516) 732 -4446 Tempe, AZ 85281 San Rafael, CA 94901 The Micro Store (602) 894 -1129 The Byte Shop The Computer Mart (415) 457 -9311 5947 East 82nd St. of New York 634 So. Central Expressway Byte Shop Phoenix The Byte Shop Indianapolis, IN 46250 118 Madison Ave. 12654 N. 28th Dr. (317) 842 -2983 New York, NY 10001 Richardson, TX 75080 3400 El Camino Real (214) 231 -1096 Phoenix, AZ 85029 Santa Clara, CA 95051 (212) 686-7923 (602) 942 -7300 Computers Unlimited (408) 249-4221 7724 East 89th Street The Computer Corner VIRGINIA Byte Shop Tucson Recreational Computer Indianapolis, IN 46256 200 Hamilton Ave. 2612 E. Broadway Centers (317) 849 -6505 White Plains, NY 10601 The Computer Systems Tucson, AZ 85716 (914) 949-3282 Store 1324 South Mary Ave. The Data Domain (602) 327 -4579 1984 Chain Bridge Rd. Sunnyvale, CA 94087 7027 N. Michigan Rd. McLean, VA 22101 (408) 735-7480 Indianapolis, IN 46268 OHIO (703) 821 -8333 CALIFORNIA Computer Components (317) 251 -3139 Computer Mart of Dayton The Byte Shop 5848 Sepulveda Blvd. 2665 S. Dixie Ave. Media Reactions Inc. 11303 South Shore D r. 1514 University Ave. Van Nuys, CA 91411 IOWA Dayton, OH 45409 Berkeley, CA 94703 (213) 786-7411 (513) 296 -1248 Reston, VA 22090 The Computer Store (415) 845 -6366 (703) 471 -9330 The Byte Shop of Davenport Computer Center 2989 North Main St. 616 West 35th Street OREGON The Home Computer Center 2927 Virginia Beach Blvd. 1913 Harbor Blvd. Walnut Creek, CA 94596 Davenport, IA 52806 Byte Shop Computer Store Costa Mesa, CA 92627 (415) 933 -6252 Virginia Beach, VA 23452 (319) 386-3334 3482 SW Cedar Hills Blvd. (714) 646-0221 (804) 340 -1977 Byte Shop Beaverton, OR 97005 DCI Computer Systems 14300 Beach Blvd. KENTUCKY (503) 644 -2686 N. Westminster, CA 92683 WASHINGTON 4670 El Capitan The Data Domain Fresno, CA 93711 (714) 894 -9131 The Real Oregon 3028 Hunsinger Lane Computer Co. Byte Shop Computer Store (209) 266-9566 14701 N.E. Louisville, KY 40220 205 West 10th Ave. 20th Ave. Bellevue, WA 98007 Bits 'N Bytes COLORADO (502) 456-5242 Eugene, OR 97401 679 S. State College Blvd. Byte Shop (503) 484 -1040 (206) 746 -0651 Fullerton, CA 92631 2040 30th St. MICHIGAN Byte Shop Computer Store The Retail Computer Store (714) 879 -8386 Boulder, CO 80301 410 N.E. 72nd 2033 SW 4th Ave. (303) 449-6233 The Computer Store Seattle, WA 98115 The Byte Shop Portland, OR 97201 of Ann Arbor (206) 524 -4101 16508 Hawthorne Blvd. Byte Shop (503) 223 -3496 Lawndale, CA 90260 310 East Washington 3464 S. Acoma St. Ann Arbor, MI 48104 (213) 371 -2421 Englewood, CO 80110 WISCONSIN (313) 995 -7616 PENNSYLVANIA Opamp /Computer (303) 761 -6232 Computer Mart Madison Computer Store 1033 N. Sycamore Ave. Byte Shop of 1910 Monroe St. Los Angeles, CA 90038 FLORIDA of Royal Oak Delaware Valley 1800 W. 14 Mile Rd. Madison, WI 53711 (213) 934-3566 1045 Lancaster Pike (608) 255 -5552 Byte Shop of Miami Royal Oak, MI 48073 Bryn Mawr, PA 19010 The Computer Mart 7825 Bird Road (313) 576-0900 (215) 525 -7712 The Milwaukee 624 West Katella >=10 Miami, FL 33155 Store General Computer Store Computer Orange, CA 92667 (305) 264-2983 6916 W. Ave. 2011 Livernois North (714) 633 -1222 RHODE ISLAND WI 53213 Microcomputer Troy, MI 48084 Milwaukee, Computer Power, Inc. Byte Shop Systems Inc. (313) 362-0022 (414) 259 -9140 496 South Lake Ave. 144 So. Dale Mabry Hwy. M24 Airport Mall 1800 Post Rd. Pasadena, CA 91101 Tampa, FL 33609 CANADA (213) 684 -3311 (813) 879-4301 MINNESOTA Warwick, RI 02886 Computer Depot, Inc. (401) 738 -4477 Trintronics Micro -Computer 160 Elgin St. 3515 W. 70th St. Application Systems GEORGIA Place Bell Canada Minneapolis, MN 55435 2322 Capitol Avenue TEXAS K2P 2C4 Atlanta Computer Mart (612) 927-5601 Ottawa, Ontario Sacramento, CA 95816 5091 -B Buford Hwy. Computer World (613) 236-7767 (916) 443 -4944 926 N. Collins Atlanta, GA 30340 First Canadian NEW JERSEY Arlington, TX 76011 The Computer Store (404) 455 -0647 Computer Store Ltd. (817) 469 -1502 of San Francisco Hoboken Computer Works 44 Eglinton Ave. West 1093 Mission Street ILLINOIS No. 20 Hudson Place Byte Shop Toronto, Ontario M4R 1A1 San Francisco, CA 94103 Champaign Computer Hoboken, NJ 07030 3211 Fondren (416) 482 -8080 (415) 431 -0640 (201) 420 -1644 Houston, TX 77063 Company The Computer Place (713) 977 -0664 Byte Shop 318 N. Neil Street The Computer Mart 186 Queen St. West 321 Pacific Ave. Champaign, IL 61820 of New Jersey Computertex Toronto, Ontario M5V 1Z1 San Francisco, CA 94111 (217) 359 -5883 501 Route 27 2300 Richmond Ave. (416) 598 -0262 (415) 421 -8686 Iselin, NJ 08830 Houston, TX 77006 itty bitty machine co. Pacific Computer Store (201) 283-0600 (713) 526 -3456 1316 Chicago Ave. 4509 -11 Rupert St. Evanston, IL 60201 Vancouver, B.C. V5R 2J4 (312) 328-6800 (604) 438-3282

Processor

Circle 117 on inquiry card. BYTE November 1977 65 www.americanradiohistory.com My Experiences with the 2650

A Report from Our 14 Year Old Correspondent

Brian K Moran 7335 N Manning Dr Peoria IL 61614 About the Author

Brian K Moran has the honor of being the youngest BYTE author When I saw an ad in Electronics magazine

to date. Brian is a 14 year old student at Rich woods High School in for the Signetics 2650, I had a "sixth sense"

Peoria IL. His achievements include winning first place in science that this was the processor I wanted. After

fairs on the school, regional and state levels with a project con- contacting Signetics Corporation I received

cerning computers. Brian presently has a working AMT-2650, and is the 2650 manual. I had only started to learn

designing his own computer based on the 2650 processor. about computers two months before, so I did not understand everything in the man-

ual. I had no one to ask; my mom and dad are not familiar with computer technology.

I began to write to Signetics, asking about various things, and they wrote back ex- pressing much enthusiasm about my being interested in computers at such a young age. (I was 13 years old). Signetics made available to me a 3 day seminar about the 2650 and about micro-

computers in general. Needless to say, I WIDABLE was ecstatic. Even my parents were excited!

When I arrived at the sales office where the

seminar was to be held, I found I was the only person under 20 years of age. There was one person from a well -known mega - computer company, three men from a well - known amusement device company, two instructors, and myself. These adults were surprised that a "kid" would be learning about computers, and they asked me many questions. The first day of the seminar went well, considering that my specialty is hardware, Op -80A quality en- and I actually began to understand software. gineered paper tape reader I had many chances to discuss certain read punched tape fast as will as aspects of personal computers with the man you can pull It through (0 -5,000 cps)! 7450;, from the megacomputer company, and over Each unit includes a custom optical lunch we discussed many problems sensor array, high speed data buffers. $95Joo of and ah required handshake logic to A&T systems going berserk, dropping bits, break- interface with any microprocessor ing down, etc. parallel I/O port. Check our specs. AT The second day we studied the problem OAE WE MAKE QUALITY AFFORD- of programming IO ports, and tested our ABLE! Oliver Audio programs on a timeshare computer service Available at quality computer stores Engineering, Inc. provided by the seminar. My program (the everywhere. (Or, add $2.50 for domes- 7330 Laurel Canyon Blvd. first I had written) had one bug in it. The tic shipping and handling CA res. North Hollywood, CA. 91605 - problem was to read in data from a certain add 6 %.) (213) 765-8080 port into a specified register and output it to

66 BYTE November 1977 Circle 108 on inquiry card. www.americanradiohistory.com a certain port containing an LED for each data line. The program was to do this con- tinually, but when I loaded the data in from the port I forgot to clear it first.

I wanted to keep the program to an abso- lute minimum because the Teletype I was using kept losing contact with the timeshare computer. After fighting a battle of trying to write and save programs before the modem "crashed," the final score was: modem 4, me 1. I finally finished it. At this point the instructor said I could use another Teletype. No way! Now came my turn to load my program into the demonstration computer. The 2650 must have liked me because it worked right COMPLETE after I loaded the program and pressed reset. The third and last day at the seminar we FLOPPY DISK SYSTEM learned about hardware usage and interfaces. FOR YOUR ALTAIR /IMSAI I was sad to be leaving when it came time to bid everyone goodbye. I had become good friends with all the people and they had all 5699 helped me in one way or another. That's right, complete. The seminar was in March, and until late The North Star MICRO -DISK SYSTEMTM uses the Shugart minifloppyTM disk drive. The controller is an S -100 com- May I programmed on paper since I had no patible PC board with on -board PROM for bootstrap load. It computer, nor access to one. I decided to can control up to three drives, either with or without purchase an AMT -2650 from Applied interrupts. No DMA is required. Microtechnology so I could learn more No system is complete without software: we provide the about it before I designed and built my PROM bootstrap, a file- oriented disk operating system (2k own processor board. It was two months bytes), and our powerful extended BASIC with sequential and five days from the date of my order and random disk file accessing (10k bytes). that my computer was delivered. It arrived Each 5" diameter diskette has 90k data byte capacity. loads in less 2 the day before school reopened. This was BASIC than seconds. The drive itself can be mounted inside your computer, and use your existing power a great disappointment because I was plan- supply (.9 amp at 5V and 1.6 amp at 12V max). Or, if you ning to work on it during summer vacation. prefer, we offer a power supply ($39) and enclosure ($39). After programming the diagnostics to Sound unbelievable? See the North Star MICRO -DISK check out the computer, I discovered that SYSTEM at your local computer store. For a high -performance bit 0 in output port C remained lit when the BASIC computing system, all you need is an 8080 or Z80 computer was in the run state, and when a computer, 16k of memory, a terminal, and the North Star true bit was in position 0 in output port C, MICRO -DISK SYSTEM. For additional performance, obtain the bit in the data load byte would come on, up to a factor of ten increase in BASIC execution speed by making things more confusing. also ordering the North Star hardware Floating Point Board (FPB -A). Use of the FPB -A also saves about 1k of memory by Despite all the bugs, I developed many eliminating software arithmetic routines. short programs on this computer including Included: North Star controller kit (highest quality PC one that rotates left one bit in output port C board and components, sockets for all IC's, and power regula- until it gets to bit 7, while another bit in tion for one drive), SA -400 drive (assembled and tested), output port D rotates right at the same cabling and connectors, 2 diskettes (one containing file DOS speed; then both would repeat. One row of and BASIC), complete hardware and software documentation, LEDs is on top of anther, so that, when and U.S. shipping. this program is run, the lights seem to chase MICRO -DISK SYSTEM ... $699 To place order, send each other in circles. There is one catch: the (ASSEMBLED) $799 check, money order or or MC card Nwith exp. lights go very fast at first and get slower ADDITIONAL DRIVES $425 ea. BA date and signature. Uncer- and slower until they come to a full stop DISKETTES $4.50 ea. tified checks require 6 and the machine halts. Upon reset, the FPB -A $359 weeks processing. Calif. $499 residents add sales tax. whole process is started again. (ASSEMBLED)

I'm still listing features I want for my processor board and front panel. If anyone is NORTH STAR COMPUTERS, INC. interested in the 2650 please contact me, 2465 Fourth Street since no one I know uses this processor, Berkeley, CA 94710 and I would like to possibly start a users' group.

Circle 105 on inquiry card. BYTE November 1977 67 www.americanradiohistory.com Does Anybody Know What Time It Is?

One of the earliest products of LSI tech- display format. This means that each digit is nology that filtered down to the hobbyist formed from sever data bits, and the digits was the "clock chip." This little "beauty" are sequenced one at a tine. The lower divided the 60 Hz line signal down to buffer works on the segment signals Al. seconds, minutes and hours.. end Asplayed though seven bits are used fa the display, the results on 7 segment LEO or other dis. only five are needed to uniquely decode plays. Today these "clocks" come in a digits. This circuit sends the a, b, e, f and g peat variety of types, sizes and functions. signals to the computer. These five bits are They come tiny for watches Some have used in a software table lookup to convert to Robert Swipe! extra timers and alarm capabìities. They are the digit code. The buffer 1C2 handles the tar Wood St inexpensive, and require little 6 the way digit signals. The six digits are scanned right Lexington MA 03173 of external circuitry. For long term timing to left, from seconds digit to tens of hours applications, they fain an ideal solution fa digit. These six signals are converted to a computer experimenters 3 bit binary number by a 74147 priority For many personal computer applies. encoda. Since both the dock and the tions, it would be useful for the computer 74147 utbize inverted logic, the con to have a knowledge of the time. The cone nectians have been manipulated to pro- miter can certainly cant intempts from vide a normal logic output. (Seconds a crystal time standard, but why not use digit is 1, tens of seconds is 2, etc). Thus external hardware optimized for the time- each Agit is converted to eight data bits: keeping function, in: a "clods chip?" This three which descrire is place In the display article desates an approach to such a and five when uniquely map to its value.

linking of computer and clods. The dock The subroutine of listing 1 illustrates how I used had a National Semiconductor to read the clock interface. It is written fa MMS314, but other clock chips using multi. a , but should be madly plexed 7 segment displays will also work. convertible to other processors. The location The circuit attaches to the display lines, CLKIO is the interface reput (which is does not disable the dock functions or the assumed to be previously initialized if it is a display, and is easily added inside the clock's PIA data location). The subroutine reads case. It simply lets the computer read the the digits from right to left and stores the clock digits (with the approprite software) ASCII code for each digit in a 6 byte sta at the same time that the oránay electronic age area. This area is pointed to by the X ásplay is produced. register contents when the subroutine is The hardware interface is shown in called. figure 1. It consists of three integrated The code between WAITO and CLK2 circuits at a total cost of less than 35. Two continuously samples the interface waiting C04010 buffers we used to convert the for the low order 3 bit digit code pointed MOS voltage levels of the dock to TTI. to by the B register. When data for that levels. These buffers are CMOS, so they digit is presented, its segment data is form almost no load on the clock circuits. separated from the input value and those The pins labelled V00 are tied to the five bits (shifted right three positrons) are clock supply. The pins labelled Vcc are used in a table lookup in SEGTAB. This tied to the computer TTL power supply returns the ASCII digit. If no digit correr of 5 V. The common ground line for clock ponds to the bit pattern (hardware error), and interface and computer is V. The only the letter E is returned. This ASCII char criteria assumed here are that V55 =GND< octet is stored in the storage area. The VCC=v5 V

Figure 7: Schematic of the clock inter face, and a partial schematic of the clock chip and display cucsiay. The interface circuitry is intended to convert the signals from in existing electronic clock using MOS integrated circuits and LED displays (left) into TTL compatible levels usable by the microprocessor port at right. Some analysis of the partial/o'clock used is required to attach the interface wires to the appropriate digs and segment output lines. Since the CMOS DC4010 level shifting buffers employed have high impedance inputs, the loading of the cloth chip} output lines will at affect operation of the clock itself when the computer is attached. p evr.w..r..mmr www.americanradiohistory.com O m

CO 2 W O m J U- - 1 Q ma7 m á? o N a rn CO CO CO CO CO CO CO CO O --Q--n CO m CO

r_ CO

D1 r` tD O N Q a Q Y a á ^ a + 0 m a (D in a rr) N O. a a O. a á

(D

O -

Ul r- rn r-

N

0 O v

> .0 o N_ o m m R t > V o y0n Z m m m M

V > V m M > 4

O O M W r` a O O V > a 0 H o o J r` V V V

W m N M î V V Z

BYTE November 1977 69

www.americanradiohistory.com Listing 1: A program written for the 6800 PROGRAM TO READ CLOCK PERIPHERAL HARDWARE CALL SUBROUTINE WITH ADDRESS OF 6 BYTE STORAGE which will translate the outputs of the AREA POINTED TO IN XREGISTER ASCII DIGITS WILL BE STORED THERE clock chip at the input port CLKIO into a ORDER 1St SECONDS. 10S OF SECONDS 6 byte string of ASCII digits. Due to the MINUTES. 10S OF MINUTES HOURS. 10'S OF HOURS typical scanning times of clock displays, HARDWARE ERRORS WILL STORE CHAR. 'E' the execution of this routine will complete WRITTEN BY R. D. GRAPPEL 6 11 so use depen- JANUARY 1977 in to milliseconds, in time- FOR MOTOROLA 6800 PROCESSOR dent portions of a program may require CLOCK LDA B #1 START WITH SECONDS DIGIT careful thinking. WAITD LDA A CLKIO READ CLOCK PORT PSH A SAVE DATA AND A 17 GET SEGMENT VALUES CBA BEO CLK2 CORRECT DIGIT is PUL A The table lookup done with the trick BRA WAITD WAIT FOR DIGIT of instruction modification at INDEX. If CLK2 PUL A GET SEGMENT VALUES LSR A this offends your sense of "proper program- LSR A LSR A ming practice," then try the code used in STX SAVE SAVE )ÇREGISTER LDX ISEGTAB POINT TO CONVERSION TABLE the MORSER article (BYTE, October 1976, STA A INDEXI MODIFY NEXT INSTR. INDEX LDA A O.X GET ASCII CODE page 34). LDX SAVE RESTORE XREGISTER The clock steps through digits at a STA A O.X STORE CHARACTER INX roughly 1 kHz rate. Since the clock and the INC B MOVE POINTERS CRP B 17 DONE WITH 6 DIGITS? computer are not synchronized, it might BNE VAITD LOOP UNTIL DONE RTS take up to 11 digit times for the program to

SAVE RMB 2 TEMPORARY SAVE AREA run to completion. The subroutine thus

SEOT AB FCC 'EEEE' 7SEGMENT TO ASCII CONVERSION TABLE executes in between 6 and 11 ms. It requires FCC EE16 'E' MEANS NO DIGIT HAS THIS PATTERN about 80 bytes of memory. FCC 1EE4' S BIT INDEX INTO TABLE FORMED FROM FCC EEEE' SEGMENTS A.B.E.F.G Now there is no excuse for your com- FCC EKES' (A SEG. IS HIGH ORDER) FCC 'EEEE puter not to know the time unless its dock FCC 73E9 FCC E208' HANDLES ALL FORMS OF DI BITS stops.

- 1 ACT- -

- tao

Standard features: Full screen display of 24 lines by 8(1 characters. Professional. highly reliable keyboard with 2 key rollover. Auto repeating cursor keys, 'space and 'period' Pull ASCII display Of upper and truc lower case characters plus a unique set for the display Of control characters. Console selectable 'Page' mode with true editing: Insertion and deletion of characters or lines with automatic display rearrangement. Data rates to 15)20(1 baud. Absolute cursor positioning, report of cursor position, fixed tabs. home up, bell, crase to end of line and erase to end of file are all standard. A 'smart' page transmit ignores trailing spaces and blank lines.

The ACT -I V comes in two configurat ions: In a compact cabinet without monitor for 855( (ACT -I VA) or complete with 12" data monitor and numeric keypad for $800 (ACI- -IVR). All units are fully assembled and tested. More detailed information concerning the ACl'-IV can be obtained from any discriminating computer store.

Micro -Term Inc. P.O. Box 9387 St. Louis, MO 63117 (314) 645 -3656

70 BYTE November 1977 Circle 89 on inquiry card. www.americanradiohistory.com What you should know about our "workhorse micro" The Peripheral Universal Processor

PERIINERAL UNIVERSAL PROCESSOR

DISK DRIVE We have done it again - yes, Seal's has designed and Built -in dual 'Shugart' mini -floppy standard. 86K per disk. Also available engineered the only truly continuous -duty without disk or with one drive only (Double Density Coming). micro computer. vo We are proud to announce the arrival of the newest Standard ports: 2 serial, 2 parallel. Each completely independent (any member to the Seals' family of performance products... port may be run at any address). Addresses switch -selectable with software override. 50 to 19,200 baud. the PUP -1 Peripheral Universal Processor. The PUP -1 POWER SUPPLY was designed with the same reliability and attention Full -load rating + 8V @ 23A, + 18V @ 6A, -18V @ 6A to detail that has enabled Seals' products to set the Input 95 - 125V ac and 195 - 250V ac, 50 -60Hz, Oversize rectifiers 50A + 8V, 25A ± 16V quality standards for the industry. The PUP -1 was FRONT PANEL designed from the ground up to meet all the needs and Push Buttons: 'INITIALIZE', 'RESET', 'STOP' demands placed on a continuous -duty micro computer Indicators: 'RUN', 'WAIT', 'SINP', 'SOUT'. by applications. Security Lock: 'OFF', 'INITIALIZE', 'RUN', 'PROTECT'. OEM REAR PANEL The standard package for PUP -1 software the 9 cutouts for standard 25 pin EIA connector. 2 cutouts for standard 37 includes DOS, EXTENDED BASIC, SAMPLE pin EIA connector. 2 cutoutsforstandard 15 pin EIA connector. 2 D holes BUSINESS, and DISC OPERATING ROUTINES. for BNC connectors. Off -On Switch (main power). Fused main power. To make repairs more simple, should a malfunction MECHANICAL Free -standing (rack mounting optional) occur, the PUP -1 comes with a diagnostic program 11-connector mother- board. Rigid main chassis. that will locate the exact area of dysfunction. Removable front panel. The PUP -1 is fully operational in temperatures from Card -cage containing all components, except power supply and listed front and rear panel controls and connectors, removable for servicing. 0 -55° C and can run on AC line voltages available OPERATING TEMPERATURE anywhere in the world. Full specification at ambient 0 -55 °C. Designed to deliver reliability, performance and ATTENTION SYSTEMS DESIGNERS: maintenance -free operation, the PUP -1 makes Seals Electronics Inc., has developed a hybrid BASIC which optimum cost effectiveness available for you. combines the best features of both compiler and interpreter languages. Call factory direct or write Seals today for information explaining how our fundamental software program will assist you PUP -1 SPECIFICATIONS PROCESSOR in your systems construction. B -bit Z -80 CPU 2.5 MHz standard 4MHz option /other CPUs available. STANDARD SOFTWARE EXTENDED BASIC, DOS, diagnostics, sample business and disc operating routine. BUS IIISE RL II . ELECTRONICS, INC. Completely S -100 Compatible. All accepted signals including 'P -sync' and 'Refresh'. Plug -in terminators on 16 address lines, 8 data in, and 10728 DUTCHTOWN RD., CONCORD, TN. 37922 8 data out lines. (615) 966 -8771 TELEX NO. 55 -7444 MEMORY 32K standard. Expandable to 0.5 Megabyte without additional power or extended mother- board. 8V ANO z 16V BUS LINES INDEPENDENTLY FUSED

OVERSIZE RECTIFIERS

115 CFM FAN DUAL MINI FLOPPIES

OVERSIZE CAPACITORS 280.000 of FILTER CAPACITANCE -BV 43.000 u1 FILTER CAPACITANCE ON EACH : 16V dc

5 ' ." MINI DI CS 11 SLOT ONE PIECE REMOVABLE CARD CAGE

ALL DATA AND RUGGED MECHANICAL ADDRESS LINES CONSTRUCTION TERMINATED TO PROVIDE VERY HIGH - NOISE IMMUNITY OVER SIZE RECTIFIERS DISC TRANSFORMER WILL OPERATING SYSTEM JUMP TO ANY OF TWO RUN ON AC LINE EXTENDED BASIC 16 BIT ADDRESS DIAGNOSTICS VOLTAGE AVAILABLE (SWITCH SELECTABLE) AROUND THE WORLD SAMPLE BUSINESS 90 to 135V ac PROGRAM 190 to 260V ac STANDARD COLORS. GOLD WITH BLACK TRIM 5060 Hz INPUT OTHER COLORS AVAILABLE

Circle 127 on inquiry card. www.americanradiohistory.com Figure 1: A simple circuit which processes a 6.3 VAC reference signal derived from the power companies' 60 Hz grid to produce a digital logic level square wave at 15 Hz which can drive an interrupt line of a typical processor. The disable switch is optional and can be left out if the interrupt handlers are permanently loaded in ROM; otherwise, interrupts must be manually disabled while the systems software is bootstrapped into volatile memory.

+5V 60Hz = 4 = 15Hz 4 LINE ISOLATION T DI IIOVAC ICI ICI DISABLE 60Hz 60Hz TIMING RI IC2 15Hz TO TOOK =2 SWITCH NMI INPUT REFERENCE 3 2 I I 3 C 0 C> R S 6.3 VAC r)74 /7176 I10 CD4050 CD4013 8 CD4050 I D2 USE THE SMALLEST LIGHTEST 6.3 VAC FILAMENT TRANSFORMER AVAILABLE POWER WIRING R2 NUMBER TYPE +5V GND IM

ICI CD4050 1 8 IC2 CD4013 14 7 NOTE: UNUSED PINS 7 9,11 814 OF ICI ARE GROUNDED

Adding an Interrupt Driven Real Time Clock

James R Sneed Whenever a computer is interacting with be initialized if the computer has been com- 13831 NE 8th, Apt 86 the real world, either through sensors or pletely halted or had its power shut off. In Bellevue WA 98005 actuators, a real time clock can be valuable. applications where the computer operates Using a real time clock, the computer can continuously, the advantages of the software run programs at specified times or intervals, clock due to hardware simplicity outweigh or the computer may record the times at its disadvantages due to increased software which events are sensed. burden, and the software clock is the logical There are two basic types of real time choice for a real time clock. clocks used in computing systems: the There are two key considerations invol- external (hardware) clock and the inter- ved in selecting the interrupt rate for the nal (software) clock. An external clock uses software clock. First, where the interrupt hardware to keep track of time, and periodi- clock is derived by dividing a higher fre-

cally or on command transmits the time to quency clock, such as a 1 MHz computer the computer. [Robert Grappel's article on clock, hardware simplicity favors as high an page 68 of this issue shows one approach interrupt rate as possible, but the computa- to such a clock ...CHI An internal software tional overhead of interrupt response in- clock has hardware which interrupts the creases with increasing interrupt rate. computer at regular intervals, and software Second, a low interrupt rate produces a low which keeps track of time by incrementing computational burden but decreases time- a register whenever the computer receives a keeping resolution and programming flexi- timing interrupt. bility. Since my system requires no routines The hardware clock imposes a small soft- to be performed more often than 15 times

ware burden on the computer, and being per second, I decided that a 15 Hz interrupt separate from the computer, it need not be derived by dividing the 60 Hz power line reset whenever the computer is shut off. The frequency by 4 would be an adequate inter- software clock imposes a larger software rupt rate. This gives a minimum event to burden on the computer, and the clock must event resolution of 67 ms.

72 BYTE November 1977 www.americanradiohistory.com Listing 1: Interrupt handler. This routine contains the overhead needed to field an NMI inter- rupt on a 6502 processor, save the state of the processor, call an interrupt processing sub- routine, restore the state of the processor, and return from the interrupt event. If the jump at location 206 is replaced by NOP operations, this program will spin its wheels 15 times a second, doing nothing in response to the 15 Hz signal produced by the circuit of figure 1. With the exception of the 'SR at location 206, this routine is independent of the location in memory of the software discussed in this article.

Hexadecimal Hexadecimal Address Code Op Commentary

0200 48 PHA Push accumulator onto stack 0201 8A TXA Transfer X register to accumulator 0202 48 PHA Push X register onto stack 0203 98 TYA Transfer Y register to accumulator 0204 48 PHA Push Y register onto stack 0206 20 00 00 JSR Call CLOCK 0209 68 P LA Pull Y register from stack 020A A8 TAY Transfer accumulator to Y register 0208 68 P LA Pull X register from stack 020C AA TAX Transfer accumulator to X register 020D 68 P LA Pull accumulator from stack 020E 40 RTI Return from interrupt

FFFA 00 02 Interrupt address vector

The circuit in figure 1 produces the the processor status onto the stack so that 15 Hz interrupts. The 60 Hz signal is taken it can return to the preinterrupt computa- from the secondary of a 6.3 V filament type tion as soon as it has processed the interrupt. transformer. (The term is a hangover from A switch is shown between the 15 Hz inter- vacuum tube days when many tubes had rupt and the NMI line so that interrupts 6.3 V filaments somewhat like incandescent can be disabled after power is applied until light bulbs). The input to IC1A, a CMOS the interrerupt handler for NMI has been buffer, is clamped between 5 V and ground loaded in volatile memory. If the interrupt by diodes D1 and D2, which can be any handler is in read only memory, this switch silicon small signal diodes at hand. Resistor can be omitted. R2 provides positive feedback to produce The contents of the accumulator and the about a half a volt of hysteresis in the X and Y registers should be saved by soft- switching of the buffer. This hysteresis ware when the interrupt is received and con- reduces false interrupts due to line voltage trol switches to the interrupt handler pro- fluctuations and transients. The two D type gram. This is done by pushing them onto flip flops in IC2 are used as cascaded divide - the stack using appropriate instructions. by -two circuits. The 15 Hz output from IC2 Once the preinterrupt state has been safely is buffered to drive TTL loads by IC1 B. To preserved, the processing done as a result of prevent runaway power consumption and the interrupt is performed. After the inter- the resulting chip destruction, the unused rupt program has been completed, the inputs of the CMOS integrated circuits are preinterrupt contents of the Y and X re- grounded. gisters and the accumulator are restored by The nonmaskable interrupt of the 6502 pulling them off the stack. The processor is edge triggered; that is, the processor re- then pulls the preinterrupt processor status ceives an interrupt whenever the voltage on and program address from the stack and the nonmaskable interrupt line goes from returns to the previous computation. Listing

high ( >2.4 V) to low (<2.4 V). The non - 1 is a sample interrupt handler. maskable interrupt line can then stay low Listing 2 is a 24 hour clock generated in without generating another interrupt. software by accumulating 15 Hz interrupts. When the processor receives a nonmaskable This program contains only relative jumps interrupt it jumps to the memory address and so is easily relocatable, either in volatile stored at FFFA and FFFB, and pushes the memory, EROM or PROM. address from which it was interrupted and The operation of the program real time

BYTE November 1977 73 www.americanradiohistory.com Listing 2: Time of My clock. If the jump at line 206in the interrupt hander of listing] ref ences the CLOCK routine, locations C4 to C7 in memory address space are contlnously updated with hours, minutes, seconds and 1/15 seconds respectively as the 15 Hz interrupts !evoke its action. The 6502 code of 1160 routine has been constructed to um relative branches onty, so that it can be relocated anywhere in memory aydress space at the convenience of its user without mod`lcation of the object code.

CLOCK (Real Time 00e61

Haaassacma Nuaaetim6 M6Ma CAIN Lab* 00 Oaarand Commentary

0000 F9 CLOCK SE0 Set decimal mode 0001 18 CLC Clear carry 0002 A5 C2 LOA FSEC Load seconds f race. 0004 69 01 AOC Incr seconds f racer. 0006 85 C2 STA FSEC Store sec.. front!. 0008 38 SEC Set carry 0009 E9 15 S8C 16 Subtract IS (xMB DO 2C ONE ENO If not 16, go to end OOOD Ss CO STA FSEC Reset seconds fraction (xMF A5 C6 LOA SEC Load seconds 0011 18 CLC Clear carry 0012 69 O1 AOC tact sec.M 0014 85 C6 STA SEC Store seconds 0016 311 SEC See teem 0012 E9 60 S8C 60 Subtract 60 0019 DO 1E ONE ENO If not 60, go to end D01 B 85 C6 STA SEC Reset sec.M DO1 D A5 C5 LOA MIN Load minon D01F 18 CLC Clear Cray 0020 69 DI AOC Incr minutes 0022 85 C5 STA MIN Store minter 0024 38 SEC See carry 0026 E9 60 SOC 60 Subtract 60 0027 DO 10 8NE ENO ff set 60. go to end 0029 85 C5 STA MIN Reset minutes 0020 A5 C4 LOA HOURS Load flours 0020 18 CLC Clear cary

002E 69 DI 00C 1 Increment bars 0030 85 C4 STA HOURS Store noun 0032 16 SEC See cary 0033 E9 24 SOC 24 Subtract 24 0076 DO 02 ONE ENO If not Mao to end 0072 85 C4 STA HOURS Reset drrun 0039 DS ENO CLO Clear Soies mode 007A 60 RTS Return

00C4 HOURS Storage for soon 0006 MIN Storage for minutes 0006 SEC Stomps for seconds 00Ca FSEC Storage for seed, i16

CLOCK is straightforward Time is stared in By conparng desired program tines with BCD in the tint page of memory. hours in the tine of the real time CLOCK program, 00C4, minutes In 0005, seconds in 0006, the process*. may perferm programs at any and 1/15 seconds in 0007. When an inter- desired interval, up to one day, which is opt is received and the prentenupt state expressible as a multiple of 1/15 second. saved, the interrupt handler will call the real As an example, a program to be performed time CLOCK at 0000 (location 0206 n once per second would be executed only listing 1). The second's fraction is incre- at chose times when CLOCK has counted mented and compared to 15. If it is less than the second's fraction equal to zero. 15 the processor will jump to the end of the It is important that the real time CLOCK clock program far retro, but if it equals 15 should not impose an unreasonable compu- the seconds fraction is reset to zero and the tational burden on the computer. Using a seconds are incremented. Seconds, minutes 15 Hz interrupt and the program shown and hours me handled simiady, counting here, this criterion is satisfied. When M in modulo 60, 60 and 24 respectively. At she a computer using a 6502 processor with a end of the program the processor returns to 1 MHz dock, the interrupt service requires the interrupt handler. The dock can be set about 1100 as per second This 0.1% cannot simply by loading the desired time into the be called an excessive burden on the time memory locations computer .

74 tong nwer. nn www.americanradiohistory.com OSBORNE ¿ ASSOCIATES, INC. The World Leaders In Microprocessor Books

Many books on microprocessors and their use are now on the market, and most of them have names that sound alike. But Osborne & Associates' books have dominated this market since 1975, when our first book appeared. With rave reviews from all over the world - with more than five hundred university text adoptions, our books are all best sellers. In fact, "An In- troduction To Microcomputers: Volume I- Basic Concepts" now holds the world's record in sales volume for any textbook sold for a profit.

If you want information on microprocessors, begin with the Osborne books.

"An Introduction To Microcom- For the microcomputer user, a series of books provide An Introduction complete programs, written in BASIC. All these books are puters: Volume 0 The Beginner's To Microcomputers ` - by Lon Poole and Mary Borchers. N'. Book" By P" am Osborne. "Some Common Basic Programs" 200 pages. This is the book for the absolute beginner. Book No: 21002 $7.50 "Payroll With Cost Accounting - In Basic ". 400 I, Assuming that you know nothing about pages Book No.: 22002 $12.50 computers, math or science of any kind, this "Accounts Payable and Accounts Receivable" Volume 0 book explains what computers are all about Book No.: 23002 $12.50 Available November 30, Rtsf and it takes you the point where you 1977 The Beginner's Book - to "General Ledger can read Volume I. 300 pages. System" By Adam Osborne. Book No.: 24002 $12.50 Available December 31. Book No: 6001 $7.50 1977

"8080A and 8085 Assembly Language "An Introduction To Microcom- 8080A AN INTRODUCTION Programming" By Lance Leventhal. IIMMYM puters: Volume I Basic Con- AND 8085 TO MICROCOMPUTERS - cepts" By Adam Osborne. This book is for the assembly language pro- ASSEMBLY grammer or student; it explains assembly !VOLUME I The world's best selling textbook. This book BASIC CONCEPTS LANGUAGE language programming for the 8080A and explains, clearly, concepts common to all PROGRAMMING 8085 microcomputers. The book contains microcomputers, yet specific to none. 350 numerous examples. 400 pages. pages. Book No.: 31003 $7.50 Available Book No.: 2001 $7.50 BY LANCE LEVENTHAL October 31, 1977

"An Introduction To Microcom- The "Programming For Logic Designí' series of books show puters: Volume Il - Some Real Pro- how to use microprocessors in a digital logic environment. ducts" (Revised June 1977) By Adam "8080 Programming For Logic Design" By Adam Osborne, Susanna Jacobson and Jerry Osborne. 300 pages. Kane. Book No.: 4001 $7.50 This book describes every common "6800 Programming For Logic Design" By Adam microprocessor and all of their support Osborne. 300 pages. Book No.: 5001 $7.50 devices. Information is new and clearly writ- ten. Only data sheets are copied from "Z80 Programming For Logic Design" By Adam Osborne and Susanna Jacobson. manufacturers. 1200 pages. Book No: 7001 $7.50 (Available November 30, Book No.: 3001 $15.00 1977)

OSBORNE & ASSOCIATES, INC. P.O. BOX 2036 BERKELEY, CA 94702 DEPT. I

TITLE UNIT PRICE QUANTITY ) NAME /COMPANY

tVolume 0 -The Beginner's Book ( #6001) $7.50 ea.

Volume I - Basic Concepts ( #2001) $7.50 ea.

Volume II -Some Real Products ( #3001) $15.00 ea. ADDRESS revised 1977

8080 Programming For Logic Design ( #4001) $7.50 ea. CITY, STATE AND ZIP

6800 Programming For Logic Design ( #5001) $7.50 ea. TELEPHONE 8080A/8085 Assembly Language Programming $7,50 ea. Please check one space below: ( #31003)

Some Common BASIC Programs ( #21002) $7.50 ea. 4th Class Mail Delivery (3 -4 weeks within the U.S.A.)

Payroll With Cost Accounting ( #22002) $12.50 ea. I have included $.50 per book for U.P.S. (allow 10 days)

We will only invoice for purchase orders of over 10 books. I have included $1.50 per book for special rush shipment by air.

Shipping charges for bulk orders to be arranged. I have included $.50 per book foreign surface mail.

I have included $3.00 per book for foreign airmail. o Check or Money Order enclosed (Calif. residents include sales tax) I require information on consignments, discounts and distributors I will be using these books for outside the U.S.A.

Circle 109 on inquiry card. BYTE November 1977 75

www.americanradiohistory.com Floating Point Arithmetic

Burt Hashizume POB 447 Maynard MA 01754

31 binary representations. The third format, the ANSI one with the most variations, uses a binary STANDARD FORTRAN coded decimal (BCD) representation, and is SINGLE PRECISION widely used in the electronic calculator and home SIGN 7 BIT 24 BIT MANTISSA computer industry. BIT EXPONENT The first format, shown in figure 1, is used in American National Standards Insti- Figure 1: The American National Standards Institute (ANSI) floating point tute (ANSI) FORTRAN. It consists of a a mantissa, a 7 format for FORTRAN. It consists of 24 bit bit exponent and 24 bit mantissa, a 7 bit exponent and a sign a sign bit. bit. The mantissa represents a fraction with Many computer hobbyists are finding the radix point assumed to be to the left of 8 bit integer arithmetic inadequate a for the most significant digit. The exponent is in variety of mathematical applications. 16 and excess -64 notation, which is a 7 bit two's even 32 are being bit fixed point calculations complement notation with the sign bit used with increasing frequency because of inverted, cg: a zero exponent (160) is their greater accuracy. However, these 100 0000, the minimum exponent (16 -64) techniques are still inherently inadequate is 000 0000, and the maximum exponent over a wide for calculations performed (16 -63) is 111 1111. The algebraic sign bit range of numbers. of the value is associated with the mantissa, Using a 16 bit integer format, only num- and the exponent's sign is inherent in its bers from 0 to 65,535 can be represented. format: a one sign bit indicates the number Larger or smaller numbers can be represented is negative, and a zero sign bit indicates a by moving the implicit radix point, but the positive number. range of discrete values still remains constant. This is the data storage format of floating The fractional part of the quotient in a point numbers. All such data is assumed to division of one large number by another be normalized (ie: the most significant digit could be lost. in the mantissa is nonzero unless the number If one could dynamically slide the radix itself is zero, in which case all 32 bits are point, the number range would be drama- zero). Before a calculation, the numbers are tically increased. Using the same format, assumed normalized; after a calculation they very small fractions and very large integers are normalized in the floating point accumu- can be represented as floating point numbers. lator before being stored. is made possible by keeping This track of the The actual calculations take place in the radix separately an point's position with floating point accumulator and other floating exponent. point registers. These registers can be in the hardware or in memory (software). Hard- Floating Point Formats ware floating point registers (expensive, but There are many ways to represent float- much faster than software) are used by ing point numbers, but there are only large computers and many minicomputers, three basic formats; the others are variations. whereas most small computers implement Two of these (the dominant ones in the floating point in software to keep costs traditional computer industry) use different down.

76 BYTE November 1977

www.americanradiohistory.com With the ANSI format a "guard byte" is used in the floating point registers to main- o 39 tain accuracy in performing the calculations. The guard byte (see figure 2) is an 8 bit ex- tension to the least significant end of the

24 bit mantissa, temporarily creating a 32 SIGN 7 BIT 24 BIT MANTISSA GUARD BYTE BIT EXPONENT bit mantissa during calculations. By keeping track of 32 bits of accuracy throughout the Figure 2: The ANSI FORTRAN floating point format showing the location operation, significance will not be lost when of the `guard byte." The guard byte is an extra field which holds portions storing numbers because the 32 bits can be of intermediate calculations so that the final calculated value can be rounded rounded off to 24 bits. If a guard byte is off rather than truncated prior to further use. not used, no rounding off is possible, and the effect would be the same as truncation (which can result in loss of accuracy very quickly, as will be shown later). o 31 Numbers from 1.00 X 16 -65 to F.FFFFF X 16 +62 can be represented by I!llalll!!#avAlf this format, resulting in an approximate range from 10 to 10 +76 with an SIGN 8 BIT 23 BIT MANTISSA of -79 BIT EXPONENT accuracy of six or seven decimal digits.

Table 1 lists several decimal numbers along Figure 3: A binary floating point format used by Digital Equipment Corpora- with their hexadecimal ANSI FORTRAN tion and Hewlett- Packard in their BASIC interpreters. It consists of a 23 bit format equivalents. mantissa with a `hidden" bit, an 8 bit exponent and a sign bit. The format The next format, shown in figure 3, is assumes that the number to be represented is always normalized: the most also a binary format and is implemented by significant bit of the number is always understood to be 1 unless the entire Digital Equipment Corporation (DEC) and number is equal to O. This assumed "1 " bit is the so- called `hidden" bit. Hewlett- Packard in their BASIC interpreters. It consists of a 23 bit mantissa plus a "hidden bit," an 8 bit exponent and a sign bit. Hexadecimal Floating Point This assumes that the number is format Decimal Number Number (Hexadecimal Digits) always normalized. Therefore, the most significant bit (MSB) of the mantissa is 1.00 41 100000 always one unless the entire number is zero. 6.00 41 600000 If the number is zero, (indicated by the -1.00 Cl 100000 special case of a 0 exponent) then the 0.50 40 800000 hidden bit is also zero. The sign bit is zero -0.50 CO 800000 100 42 640000 for a positive number and one for negative. Table 1: Several decimal 216 (= 65,536) 45 100000 Because all nonzero numbers have an MSB numbers along with their 2 -16 3D 100000 of one, it need not be explicitly represented ANSI FORTRAN floating -2-32 B9 100000 in the format; hence only 23 bits in the o 00 000000 point hexadecimal format mantissa. 16-65 00 100000 equivalents (see figures 1 The exponent represents a power of two 16+62 7F 100000 and 2). in excess -128 notation, which is similar to excess -64 notation. The largest exponent, 2 +127 is represented by the largest number, Binary Floating Point Number 1111 1111, and the smallest exponent, Decimal Number (Hexadecimal Digits) 2 -127, by the smallest nonzero number, 0000 0001. An exponent of zero (20) is 1.00 40 800000 represented by 1000 000, while the number 6.00 41 C00000 CO 800000 zero is reserved to indicate a zero mantissa. -1.00 40 000000 As in the case of the first binary format, 0.50 -0.50 CO 000000 a guard byte must be used during calcula- Table 2: Examples of 100 43 C80000 tions so that round off is possible before decimal numbers and their 216= 65,536 48 800000 the accumula- equivalents as encoded in returning from floating point 2 -16 38 800000 tor for storage in memory. In this format it -2 -32 BO 800000 the binary floating point is also necessary to explicitly represent the 0 00 000000 format used in several hidden bit during calculations. This is ac- 2 -128 00 800000 BASIC interpreters (see complished by expanding the 4 byte format 2 +126 7F 800000 figure 3).

BYTE November 1977 77

www.americanradiohistory.com 0 47 ÎiÏIIIO Illllllllplllllllllllll

8 BIT SIGN 8 BIT 32 BIT MANTISSA EXPONENT (8 DIGITS) (2 DIGITS)

Figure 4: A BCD floating point format consisting of an 8 bit sign, an 8 bit exponent and a 32 bit (8 digit) mantissa.

into six bytes: one byte fa the sign, one Digital Equipment Corporation format dis- byte for the exponent, and four bytes for cussed earlier, but represents a power of ten the mantissa (including the guard byte). As instead of a power of two. Thus, an expon- a result there is a fair amount of processing ent of 84 base 16, using DEC's format, necessary to load and store the floating signifies two to the fourth power, and point registers. using the BCD format, ten to the fourth. +126 This format has a range of from 2 to The exponent represents the same power 2 -128 or from approximately 10 +38 to in both cases, but of different bases. 10 -38 with a 7 decimal digit accuracy Eight digits are packed into four bytes (several examples are represented in table 2). in what is known as packed BCD (four bits There are numerous BCD floating point represent one BCD digit). formats currently in use. Mantissas range The same format is usually used for both from as few as four digits to as many as storage of data and actual calculations. This 16 digits of accuracy, and exponents can means neither a guard byte nor round off is typically range from 10 +99 to 10 -99, or used. The need for a guard byte is circum- even 10 +127 to 10 -127. The most popular vented by using more significant digits than format (see figure 4) has an 8 digit mantissa arc actually necessary, cg: calculating to (four bytes of two digits per byte) with the eight digits for 6 digit results, or calculating decimal point assumed to be to the left of to nine digits for 8 digit results. This of the most significant digit. course makes it necessary to use more The mantissa sign is typically represented memory per number for storage. by a whole byte: 00 for positive and OFF for Some examples of numbers in this format negative. A variety of formats use one byte are found in table 3. to represent the exponent. One of the more frequently used formats Format Pros and Cons is in the excess -128 binary form of notation. Each of these basic floating point formats The itself is identical to the exponent format has its own particular advantages and dis- advantages. Which format is best is dependent BCD Representation upon the requirements of the particular Table 3: Several decimal Decimal Number (Hexadecimal Digits) application: speed, small memory size, numbers along with their variable mantissa length, ease of coding in a equivalent floating point 1.00 00 81 10000000 given computer architecture, ease of inter- representations as encoded 6.00 00 81 60000000 facing to other software routines, etc. -1 .00 FF 81 10000000 in BCD hexadecimal digits. The BCD format with its variations is by 0.50 00 80 50000000 far the most popular in the personal com- -0.50 FF 80 50000000 puting field, probably because it is the 100 00 83 10000000 easiest to program. The relative ease in 216=65,536 00 85 65536000 an 2-16 00 7C 15258789 converting from ASCII representation -2-32 FF 77 23283064 of a number to the BCD format and back 0 00 00 00000000 is a key factor, as is the ease with which the 10+126 00 FF 10000000 10-128 00 01 10000000 Continued on page 180

78 BYTE November 1977

www.americanradiohistory.com e

000000

ootopotet desed órered\r\ ar o s - - t e 23 a ed aà GB he see l soR+Ore áCe `pPoe Phtvh . {y o°odloes opvae pCOdvcsree oe t. Foll4°oNero\\e\ÓMFod /. ' D3o9F mcoc s ee PGg ' sVstems - e< 0... ';, SP pu neto\\ompMShdo 5e\eolor Pto 2d sVSter \or Stpp GJs he 696)°\6543\\ Po0

\,¡,Ea tme nMJ3N

QOP-\\GN 20 EGGSve 5 PG ß 9002 NE SP r\us (10? rg ß áao `^3> pb

Circle 137 on inquiry card. BYTE November 1977 79 www.americanradiohistory.com Photo 1: The author's computer, seen from the component side, was assembled using two sections of perforated board (0.1 inch grid) and sockets for all integrated circuits. The arithmetic unit is in the lower right hand section in this photograph, the eight memory circuits are in the lower left hand region, and the control section is implemented by the parts on the board at the top of this photograph.

Building a Computer from Scratch

Hilary D Jones With so many excellent microprocessors project to learn how to use TTL parts, on

364 Princeton La available today, the experimenter needs the assumption that the microprocessor I Danville CA 94526 a good reason to design and build a personal planned to buy would eventually become computer from scratch. That reason will bored talking to my TV set. certainly not be one of economy. The best Because of my inexperience with TTL

available microprocessors offer so much circuitry, I chose to simplify the design as capability at such a low price that one much as possible at every step. As a result, cannot hope to save money by building the major strengths of this computer are its a computer from scratch. For many, the low cost and its simplicity. With judicious reason will simply be the challenge of doing shopping, it should be possible to construct it. For others, the reason will be more prac- the computer for around $65, including tical (perhaps to gain some capability not everything but the power supply. With only readily available from an off -the -shelf micro- four instructions, the computer offers an processor). And for still others, the reason instruction set that is guaranteed not to will be to learn more about the techniques overwhelm the novice. At the same time, of computer design. the signals that drive the various modules of While any of these reasons is certainly the computer are readily accessible so that valid, the design of a computer from the the electronics can be seen to work "as ground plane up is still generally regarded as advertised." an art that only the foolhardy would under- Despite the simplicity of the computer, take. In reality, though, the job is not nearly its microprogrammed bus oriented architec-

as mysterious as it seems. For proof I offer ture conforms to the design principles in the

the fact that when I began this project I had most modern of minicomputers. no design experience with TTL (or This article gives the groundwork from experience with any form of electronics which a serious student or hacker can design

design for that matter). Indeed, I chose this and build his /her own personal computer.

80 BYTE November 1977 www.americanradiohistory.com C _ MAR 19590 VENTURA BOULEVARD TARZANA, CALIFORNIA 91356 IN THE L.A. AREA (213) 344 -0153 IMSAI COMPUTER $875 ASSEMBLED MODEL 8080 MICROPROCESSOR SYSTEM AND TESTED INCLUDES-CPU, MAINFRAME WITH 22 CARD SLOTS, FRONT PANEL, AND POWER SUPPLY. COMES ASSEMBLED AND READY TO PLUG IN AND ENJOY! 8K RAM BOARD $225 250 nS LOW NOT A ASSEMBLED ACCESS POWER KIT AND TESTED S100 BUS: PLUGS RIGHT INTO ALTAIR /IMSAI, OR ANY COMPUTER USING THE "ALTAIR" BUS CONVENIENT DIP SWITCH SELECTION OF ADDRESS ASSIGNMENT AND WAIT CYCLES MEMORY PROTECTION DIP SWITCH SELECTABLE IN INCREMENTS OF 256, 512 1K, 2K, 4K, or 8K BYTES FULLY BUFFERED ADDRESS LINES ALLOW USE IN LARGE COMPUTER SYSTEMS 16K 2708 EPROM BOARD $99 INCLUDES ALL SUPPORT CIRCUITRY AND SOCKETS READY TO PLUG -IN 16 2708 IC'S 2708'S NOT INCLUDED ALLOWS CONVENIENT STORAGE AND ALTERATION OF YOUR OWN CUSTOMIZED QOMPUTER PROGRAMS S100 BUS: PLUGS RIGHT INTO ALTAIR /IMSAI, OR ANY COMPUTER USING THE "ALTAIR" BUS DIP SWITCH SELECTION OF MEMORY ADDRESS ASSIGNMENT DIP SWITCH SELECTION OF MEMORY WAIT CYCLES ASSEMBLED AND TESTED, NOT A KIT 8K 2708 EPROM PROGRAMMER BOARD $145 COMPLETE SYSTEM FOR "BURNING IN" PROGRAMS INTO THE 2708'S ELECTRICALLY ALTERABLE 2708 MEMORY NOT INCLUDED S100 BUS ALTAIR /IMSAI COMPATIBLE COMPLETE 2708 PROGRAMMING SYSTEM DOUBLES AS 8K NON VOLATILE PROGRAM STORAGE ASSEMBLED AND TESTED, NOT A KIT 2708 EPROMS $185° 21L02 250 nS $175 TOP QUALITY PARTS - NOT SECONDS 74 SERIES IC's COMPLETE LISTINGS 74LS SERIES IC's LINEARS IN OUR CATALOG SOROC IQ -120 TERMINAL $995 RS -232 COMPATIBLE 24 LINES X 80 CHARACTERS INCLUDING BLOCK MODE OPTION 8080 A $14 POWER SUPPLY 12 VOLT $995

PER SCI DUAL DRIVE 1 $1400 8 -INCH FLOPPY WITH IMS CABINET AND POWER SUPPLY Many other parts available -Just call or write for free catalog NEW PRODUCTS COMING - WATCH FOR OUR ADS - INFORMATION AVAILABLE WE WELCOME INQUIRIES

Circle 144 on inquiry card. BYTE November 1977 81 www.americanradiohistory.com switch register. When the continue button PI emOa. dei..lc.d. Owratl.n wmmn.d is pressed, the data will be written into Input 10 H IMO *I 00nnnnnn Wax la 0x.1100 memory location N, thus destroying the O hpl0v current contents 01 Loonier, N nelle waling. data just displayed. In effect, the instruc AOON 0100000n Add dam in Itt100n N t0 accumulata. tien combines the wait, Input and output instructions of the conventional computer. STN N 10nnnnnn Store neg000e 01 accumulator in location N. A particularly useful application of this JGEN Ilnnnnnn J uno to location N 11 .ccumuleor Is game than or equa to aero. instruction occurs when the instruction at location N is a WIO Not instruction. At Table f: The ins archon set for the computer. Nus any 6h11 tower. Tir bits that point the data entered by the user of Nor denoted by nmmon. becomes the next instruction to be executed! The most important program for this At the same time it also describe a very computer is the bootstrap program. Other simple computer, one that can be built by a programs are left to the reader to devise. student as a science project, by a teacher fa The bootstrap program, which provides the a laboratory demonstration, or by a novice simplest practical way to load data into the hacker who just wants to Team about corn computer, is loaded as follows. When the paters without a large investment reset button is pressed, the computer will wait to accept data into location 0. The The Insouction Set data will be stored, then executed when the continue button is pressed. Needless to say, The most important task facing the the data loaded must be chosen carefully if computer designer is choosing the user is be able the instruction set In the case of this coo. the to to keep control of pute, every effort was made to choose the computer. The data that permits this is the simplest possible instruction set There. WIO 1 instruction. When this instruction is loaded (ac, multiple word instructions, stades, into location 0 and executed, the register files, interrupts and elaborate 10 computer will halt, ready to accept data into location 1. When is facilities were not permitted M 8 bit word the continue button length was chosen because it is the smallest again pressed, the new data is stored. The resumes with next size that an be reasonably expected to use computer execution the one word per instruction. This constrained instruction in memory, namely, the i me to an instruction set of tour op codes struction just entered into location 1. Agee, that instruction must be carefully chosen: and a directly addressed memory space of 60 is bytes. The instruction set is summarized is a WIO 2 a good choice. The computer will halt, which a 0 table 1. again at time )GE should be entered. After )GE 0 is loaded into The ADO instruction is included for location we will have obvious reasons. The STN instruction was 2 and executed, corn ple!ed entering the bootstrap program. The chosen to store the negative value of the )GE 0 will unconditionally jump to the start accumulator's contents so that both sub of the bootstrap program (location 0) traction and addition could be done. On is particular, by executing STN N and ACID N because the accumulator cleared at ratan i, sequence, the accumulator can be tine. dared.) To use the bootstrap program, enter pals as follows: a The )GE instruction is an al purpose test of bytes 6 bit address followed or branch instruction. By clearing the by eight bits of data to be placed at that address. For example, if, in response to the accumulate before executing a )GE, an enconditional branch results. Altemativdy, first two halts in the bootstrap program, we by placing a number in the accumulator, enter an octal 003 followed by an octal 010, the )GE tests whether the mummer is positive then the value 10 will be placed in location a negative. 3. In Ni, case, the bootstrap program The WIO instruction provides the only returns to location zero, where it is ready to means for baring and examining memory. accept another pair of bytes Once a is loaded, we There are no front pant switches for this program can execute it by function, so everything must be done under enuring the appropriate )GE instruction in response the next halt instead the the control of a Suitable program (including to of the loading of that program itself). There. address data pairs. fore, the WIO instruction rewires special attention. When executed, WIO N brings Baldwin for the Computational Unit the computer to a halt with the contents The computer is shown in block diagram of location N displayed in the LEO display. form in (igue 1. The control wit, to be At this point, the user will enter data into a dscussed later, interprets the instruction tz .yrzn...... hah www.americanradiohistory.com Figure 1: Block diagram of r - the author's computer, which is organized around an 8 bit bidirectional bus. 16 BIT BY 32 WORD CONTROL STORE

CONTROL STORE ADDRESS

CONTROL UNIT

I CONTROL CONTROL FEEDBACK COMMANDS

ARITHMETIC LOGIC UNIT (ALU)

C,% MEMORY PROGRAM ALU -BUFFER ADDRESS COUNTER REGISTER

BUS

set and generates the control signals which tion, data from memory is placed on the bus. tell the computational unit how to execute The arithmetic logic unit reads the data from instructions. This is a true microprogrammed the bus and adds it to the accumulator. The computer with a 32 word by 16 bit control output of the arithmetic logic unit must store. (For control store contents see table eventually find its way back to the 2.) The system is organized around an 8 accumulator. This is done by putting the bit bidirectional bus. Because of this, each data on the bus, an action permitted only module that uses the bus may be built as an after the memory is no longer using the bus. independent unit without regard to how the The arithmetic logic unit buffer is provided other modules work, an obvious advantage. to give a temporary holding place for the When two modules need to exchange sum until the memory can release the bus. data, one will put the data on the bus while Note that there is no instruction register the other will read it from the bus. The or memory data register. This represents a arrows in figure 1 show the directions in departure from conventional computer which such data transfers can be made. The design made possible by the simplicity of the only restriction is that no two modules are instruction set. The conventional memory permitted to put data on the bus at the same address register and are time. The use of the bus system allowed me present, however, and serve their usual to build the entire computational unit purpose. before giving detailed thought to how the For even this simple computer, there are control unit would be implemented (the some 30 -odd signals between the control algorithm for successful computer design and computational units. Therefore, I found being "divide and conquer "). it essential to establish a system for naming The arithmetic logic unit buffer register the signals. Names are best chosen to suggest deserves comment. During an ADD opera- what the signal does as well as the voltage

BYTE November 1977 83

www.americanradiohistory.com 15 2 IC2 74155 2Y2 TO THREE OTHER PAIRS OF 14 10 7489'S SIMILARLY WIRED 2 2Y1 S\ MEM-ENABL-LE> (ICES 5 THRU 101 2Y0 ,9___E> 5V DC PULLUP RESISTOR (TYPICAL FOR 8) ICI 2.2 K

1 I 74174 10 13 BUS5 OD 40 IC3 I 7489 I 12 SEL INI BUS 7 BUS 4 13 5D 50 1 2Y3 OUT I 6 60 I A IN 2 BUS 6 BUS 3 it> 14 60 7 2 15 OUT 30 IN 3 it>BUS 5 BUS 2 6 3D 9 OUT 3 1 5 14 4 2D 20 IN 4 BUS 4 BUS 1 4 13 OUT BUS 0 E> ID 1O D 3 MAR -CLR -L LT> CLR WRITE MAR -CLK E> CLK

IC4 13 7489 4 D IN I E> BUS 3 OUT I 14 C IN 2 BUS 2 7 E> OUT 2 T 15.43 10 IN3 E> BUS I OUT3 9 1 I 12 A IN4 C>BUS 0 II 1 2 OUT 4 SEL I

( WRITE -MEM -L E> WRITE

Figure 2: The memory required to achieve the effect. For example, that byte will be written using data from the address register and the AC -CLR -L is a signal that, when brought bus. But when WRITE-M EM-L is high, the memory. Data is addressed low, clears the accumulator. Conversely, complement of the data at the addressed by six bits of the 74174 when PC- INCR -H is brought high, the byte will be placed on the bus. The fact that memory address register program counter is incremented. The eight the 7489 complements data stored in it is and stored in the 7489 bus lines are named BUSO thru BUS7 (in used to advantage by the STN instruction, as memories, each of which order of arithmetic significance). The master we will see later. has 16 4 bit registers. A clock is named MCLK; its complement is The accumulator (AC), arithmetic logic total of eight 7489s are called CCLK. unit, and arithmetic logic unit buffer are required to make up the The memory and memory address register shown in figure 3. The accumulator is con-

64 byte memory. are shown in figure 2. I chose to base my structed from a pair of 74175 integrated system around the 7489 64 bit memory circuits. It is cleared by AC -CLR -L (eg: at

integrated circuit largely because I happened restart time), and it is loaded by AC -CLK. to have them. In a redesign, a 2101 -based The sign bit of the accumulator is sent (as memory might be a slightly better choice, AC -GE -L) to the control hardware, where it but the present design does have the advan- is used for the JGE instruction. The arith- tage of showing how multiple chip memories metic logic unit, in the form of a pair of are controlled. Each 7489 contains sixteen 74181s, is used in two ways. When 4 bit registers; eight 7489s are required for a executing an ADD instruction, ALU -ADD -L 64 byte memory. Data is addressed by a 6 will be brought low, so that the arithmetic bit memory address register (a 74174). logic unit computes AC plus memory. This The memory address register is loaded sum is then latched into the arithmetic logic with data on the bus by MAR -CLK. Alter- unit buffer (a pair of 74173s). Once memory natively, it can be cleared by MAR -CLR -L is no longer using the bus, BUS -BUF -L can (eg: when the reset button is pressed). The be brought low to place the sum on the bus. two high bits of the memory address register The sum can then be latched back into the are decoded together with MEM -ENABL -L accumulator to complete the add cycle. by a 74155 decoder. If MEM -ENABL -L is Alternatively, to execute the STN instruc- low, the high two bits select one of four tion, ALU -ADD -L will be brought high. Now pairs of 7489s, and the low four bits select the 74181s will compute "accumulator one of the 16 registers in the selected pair. minus one," which is latched into the buffer (If MEM -ENABL -L is high, the memory is and eventually written into memory. The disabled.) In this way, a byte of memory is convenience of a complementing memory addressed. Now, if WRITE -MEM -L is low, can now be appreciated, since in two's

84 BYTE November 1977

www.americanradiohistory.com BUS BUS BUS BUS 7 6 5 4

AC- GEL -LE:), 18 20 22 I ICII B3 B2 BI BO 1C15 1 74175 C13 74173 ¡ 7 BUS 7 5 19 74181 11 2D 20 3 4D 40 6 E>BUS 7 12 10 I 3D 12 BUS 6E> 30 A2 F2 3 D 30 5 ID> Bus 6 13 15 23 10 13 - 4D 40 BUSS Al FI 2D 204_C> BUS 5 4 2 2 14 3 BUS E ID 10 AO FO 9 ID 10 C>BUS4 + 5V DC 7 15 CLK CLR SI SO 2 2 N M 1 I F á S3 3 lo /77 AC-CLR-L CLR 7 G2 CN 1

9 1113--9 AC-CLK CLK BUF- LOAD -L GI 1 1 ALU -ADD -L ^BUS -BUF -L

IC12 16 1 3111-5 SI CN+4 IC16 74175 74173 1 9 4 15 CLK S2 +5V H G2 CLR 9 CLR IC 14 SO GI M J- 74181 1 2 ?7 S3 N 1

M 7 CLK 1

5 7 19 BUS 3 E 2D 20 A3 F3 4D 40 = E>.BUS 3 12 10 21 12 BUS 2 E 3D 30 A2 F2 3D 30 5 D> BUS 2 13 4D 15 23 10 13 BUS I 40 AI FI 2D 20 4 [:>BUS 2 2 14 BUS O L 4 ID 10 AO FO I D 1 0 E> Bus O +5V DC

7 CN B3 B2 BI BO

18 20 22 1

Figure 3: The accumu- lator, arithmetic logic unit BUS BUS BUS BUS and arithmetic logic unit complement arithmetic the complement of 3 2 I 0 buffer. The accumulator AC -1 is -AC. (With a 2101 -based memory, is made up of two the inversion would have to be done with 74175 quad D flip flops, extra hardware.) Hardware for the Control Unit while the arithmetic logic The last part of the computational unit, unit consists of two 74181 shown in figure 4, consists of a program The control unit, shown in figure 5, is arithmetic units. Two responsible the various signals counter, LED display, and switch register. for providing 74173 integrated circuits in the proper sequence to drive the corn - The program counter consists of two form the arithmetic logic putational unit. To simplify the design, a 74LS161 counters and two three state unit buffer. buffers. (The 74161 is not an acceptable microprogrammed architecture was chosen. substitute for the 74LS161 because of In this design, the control logic is held in a differences in the way their clocks behave, pair of 74288 programmable read only

a fact I learned the hard way. The program memories in the form of a 12 word (16 bits counter is cleared by PC- CLR -L. It can be per word) microprogram. When one or loaded (incremented) on the next clock another word is selected from the program- transition after PC- LOAD -L (PC- INCR -H) mable read only memory, the individual bits becomes low (high). The output of the of the selected word are delivered more or program counter is enabled onto the bus by less directly to the computational unit as PC-BUS-L. individual signals. For example, the The LEDs are driven by ordinary PC- INCR -H bit of the microprogram directly inverters. The inverters insure that the LEDs drives the PC- INCR -H line to the program are lighted for the high bus lines rather than counter. Similarly, the BUF- LOAD -L bit the low ones. The switch register (a DIP directly drives the BUF- LOAD -L line to the switch) is wired so that a closed switch arithmetic logic unit buffer. drives the associated bus line low. This is Several other lines can be readily because the memory complements data. The identified that are directly driven by the pro- switch outputs are enabled onto the bus by a grammable read only memory. From this it pair of 74125 three state buffers under the is clear that the problem of designing a control of BUS- SWI -L. control unit reduces to deciding which

BY Té November 1977 85 www.americanradiohistory.com +5V DC

2.2 K Figure 4: Program counter circuitry.

IC23 OR IC24 (1/4 74125) TYPICAL SWITCH (ONE OF 8) BUS -SWI -L IC 17 IC19 74LS161 74125 4 BUS 5 E> B OB 2A Y BUS 5 3 BUS 4 E> A OA Y E:>BUS 4

CLK

CLR +5V DC 9 LOAD 2C 10 7 T

MCLKE> BUS -PC -L u +5 V DC PC-CLR-L -,47052 PC-LOAD-L E>

IC 20 TYPICAL LED 9 (ONE OF 8) LOAD CARRY II-13 4C 74125 +5V 10 3C CLR DC 2C IC21 OR IC22 2 CLK P (I/6 7404) ICIB IC 74LS161 6 II 9 8 BUS 3 E> D OD 3A 3Y BUS 3 5 5 6 BUS 2Li> C OC 2A 2Y BUS 2

4 2 11 BUS 1 E> B B 4A 4Y E::::::>BUS I 3 BUS 0 A A 2IA C>BUS 0 o PC-INCR- H E T

signals are to be high or low at what time, decoded by a 74155 decoder to select one of programming a programmable read only four possible sources of data for the bus, memory to contain this information, and namely, the switch register, program devising a way to select the proper word counter, ALU- BUFFER and memory. These from the programmable read only memory are selected by BUSDAT1, BUSDATO values at the proper time so that the appropriate of (L, L), (L, H), (H, L) and (H, H), respec- signals can be generated. tively. This arrangement saves bits in the Occasionally, microprogram bits do not microprogram as well as insuring that only drive signal lines directly but must first one device can put data on the bus at any undergo some transformation. For example, one time. Note that the open collector in figure 5 we see that the AC- LOAD -L bit memory used is logically connected to the of the microprogram is gated with CCLK to bus by enabling an appropriate memory create the clock that loads the accumulator. chip. (The memory chips must also be (It would not be permissible to drive the enabled before writing memory.) accumulator directly from AC- LOAD -L, In order for the microprogram to deliver because the signal has to be delayed by a its control signals to the computational unit half clock cycle.) Similarly, MAR -CLK is in the appropriate order, some means must derived by gating MAR -LOAD -L together be provided for sequencing thru the words in with CCLK, and PC- LOAD -L is created by the programmable read only memory. In this gating together AC- TEST -L and AC -GE -L, computer, we have allocated six bits (BASED so that the program counter is loaded only thru BASE4, and OPJMP -H) to accomplish when the microprogram allows it and the this. First, assume that OPJMP-H is low. accumulator is not negative. "BASE" then determines a microprogram The BUSDATO and BUSDAT1 lines are address (the base address) which is fed for- another case in which a transformation is ward directly to the 74174 microprogram required. In this case the two lines are address register. When CCLK goes high, the

86 BYTE November 1977 www.americanradiohistory.com Talk to your computer for $299 with SpeechLab. Use SpeechLab to directly paper tape, assembly language gifted young engineers who control any S -100 Bus Com- speech recognition program got tired of the big firm, big tech- puter such as Sol, IMSAI, Altair in source and paper tape, hard- nology trip and decided to take and so on. SpeechLab can ware self -test program in a chance with a better idea. teach you almost as much as the source and paper tape. You can't get better quality Bell Laboratories know about SpeechBasic plot, correlation, You can't get more performance voice recognition, voice control recognition and advanced Sure, more complex, and computer input. recognition programs are higher price equipment is avail- SpeechLab digitizes and offered in source. able for about 50 times more extracts data from speech wave Hard to believe, you bet. money. It won't do much more form and applies pattern A Los True? Angeles customer than you can do with Speech- matching techniques to recog- says, "I love your kit!!! I Lab. And the quality and nize the vocal input. Response have 40 2 IMSAI's boards and state -of- the -art engineering is real time. kit The system and your was the best can't be any better. We use 64 all. I love features bytes of storage per documented of them CMOS design for low power spoken word and can handle the way you integrated the and ultimate reliability. up to a 64 word vocabulary. And software and hardware to- recognition after very little gether. I love your lab manual'.' See SpeechLab at your nearby practice is 95 percent or better. We loved those comments. computer store They tell the story better than Selected stores $299* assembled and tested computer we ever could. The LA cus- have SpeechLab on display. When we talk price every- tomer did ask who the founders Visit your nearest. If he doesn't body's skeptical. And why of the firm were so he could have it, ask him to contact us not? We give you a complete relate better. They're a couple of or simply write us directly. hardware /software system, r a 275 page laboratory manual, Heuristics, Inc. Master Charge 95 page hardware manual Box B, 900 N. San Antonio Rd. BankAmericard (Visa) and high fidelity microphone. Los Altos, CA 94022, Phone (415) 948 -2542 Acct. No. lab manual includes Send me SpeechLab. I enclose $299. Date Card Expires The California residents add sales tax. Interbank No 35 graded experiments with Send me more information. ( Master Charge only ) over 100 tables and graphs. In fact, it's the only introductory Name volume on speech recognition Street currently available. City State Zip Software includes In Canada: Trintronics Ltd. SpeechBasic Basic program- 186 Queen St. W. Toronto, Canada M5V 1Z1 ming language in source and Telex 06 -22634 Heuristics INC. 'Available in kit form for slightly less. J

Circle 65 on inquiry card. BYTE November 1977 87 www.americanradiohistory.com Figure 5: The microprogrommed control unit of this computer. +5V DC

2.2K IC31 io 7400 8 9

IC31 SSCLK

+ 5QQQQV 5 $ 2.2K °-} SINGLE STEP SWITCH

+5V DC +5V DC IC29 555 2.2K IC31 7400 BYP 3 IK 2 7 +5V DC DISC 500K

500pF THR

+5V 12 IC34 Tzoo TRIG IC30 7408 IC31 pF 7400 I CLK ¡ 2.2K OUT 3 MCLK 2 IC22 Do CONTINUE SWITCH 7404 II 4

+5V DC IC35 10 7410 1330 9 IC32 IC35 8 7402 IK 7410 10 10 500pF II c 12 9 +5V 2K

13 IC22 b 7404 12 IC32 CCLK 330 +5V DC RESTART SWITCH E>AC-CLR-L IK T -CLR-L

500 2 IC25 pF IC27 I WAIT-L 74288 YI CLK 74174 14 2 E Y2 -C>ALU-ADD-L CLR 13 9 BASE 4 3 Y8 ID 12 BASE 3 4 Y7 7 2D IQ II 6 BASE 2 6 5 Y6 3D 20 IC33 10 BASE I Y5 5 7432 30 4D 40' 10 PROM -°A° II (CONTROL 4 BASE 0 50 3 STORE) Y4 50 3 OPJMP-H 12 IC34 OE Y3 I 7408

9 10 BUS 7 BUS 6

--

IC26 1 74288 5 BUSDAT I 3 Y5 B IC28 2Y0 E> BUS -SWI -L 14E 4 BUSDAT 0 3 74155 10 Y4 A 2Y1 BUS - PC - L 13 15 II D 2C 2 Y2 p BUS -BUF - L 12 IC 34 12 WRITE -MEM-L 2G 2Y3 II 41 I ' MEM- ENABL -L B YI 6 5 4 10 2 AC- LOAD -L 6 AC-CLK A Y2 IC32 74021 PROM -°B° 7 BUF - LOAD -L 2 Y7 I I _ (CONTROL C32 K 3 MAR -LOAD -L 3 MAR-CL STORE) Y3 15 9 PC- INCR -H OE Y8 E> AC-GEL-L 9 6 AC- TEST 10 PC -LOAD-L /7! Y6 -L 8

1C3 I 7432 1

88 BYTE November 1977 www.americanradiohistory.com SOFTWARE = TSC

I. IIITISC:- %1. ' TEAT S. roc MESI M()^tIC. ASSI II H,

5K pr Ne neon string roan puUlds SLAB 26 MANUAL L SOURCE LISTING $23.50 SL684 MANUAL L SOURCE LISTING $23.50 CT6B B OPTIONAL CASSETTE $6.95 CT68-7 OPTIONAL CASSETTE 56.95 PT669 OPTIONAL PAPER TAPE $B.00 PT68-6 OPTIONAL PAPER TAPE $8.00 DISASSEMBLER FOR 6800: Now one dot la reasonably eked

aN r dude: the source trslmg' SL6B7 MANUAL 6 SOURCE LISTING $9.00 TEXT PROCESSING SYSTEM: A gees PT66 7 OPTIONAL PAPER TAPE 84.00 o the TSC ed0P The p sal 100 corvenery earag,aehng. right Tand )Indios Lon eagng. 00g aN general text lonerting 4N

SL609 MANUAL G SOURCE LISTING $32.00 SPACE VOYAGE: A hat blown CT609 OPTIONAL CASSETTE $6.95 Star Trek program 011í011 n 80B0an4 6600 assembler language. Rune much laser than imikr BASIC ver TSC 6800 ARITHMETIC ROUTINES stress and re9Ukes abort 1/5 d the SOAP. Avery last 4 bNe borery. laaing pool package includes moo' Each game is different as 'Meg. and cpmersipn ,outres as we. you try to save the INerabn using your 9lasers, photon torpedoes and SL685 $ 10.00 shield. Searching outthe menacing FLOATING POINT PACKAGE: n BCD meth prckagewRn9 Kingcns is eccompBshed using the resta d pneavpn stmt and long tense scarrarS asset SL6834 86.50 es wing abort by Bring the WO SCIENTIFIC FUNCTIONS: RequtresSLR84adpoAdesel engines Bevare d sudden attacks space storms supernovas and other scsenmficluncsnnaincluding SITS TAN. LOG. LTA HYPSIMend others SL680 810.00 unexpected events Thisgamelsvary addictng! 46 SL68.5 6800 SOURCE DIAGNOSTICS FOR 6800: LISTING $ $2.00

o systnn a complete without seta CT68 I OPTIONAL degrostk pogrom P.n. 5 memory CASSETTE $6.95 tests small/0.1S peeIell/Oteespka SL809 8080 SOURCE alms LISTING $12.00 SL681 SOLACE LISTING 810.60 PT801 OPTIONAL PAPER TAPE $7.00 MICRO BASIC PLUS: The beet small PARC available Id 6800. In Juste!{ K. a conmkte ntnmerer ncludng 60508. 6800 MULTIUSER SYSTEM! IF THEN, FOR NEXT, DIM ON LOTO end Now you can have 4 simultaneous tees 88 runnt.g BASIC. and in GOSUB, READ DATA hors the Iunctions dependent.! Cave you micro the 900.0 8 toge ne Morne. Apples RAD, SPC, TAB, EXP. and ABS. Five lut d Pore include. sPesteduCSemeltoul, Yell buttress apples.ps such as dtgt integer mash is supported. multi 8.100 I.vmtay system industrial 50mpr1er power tape dAg the SL6619 MANUAL L SOURCE penned conpree system.... etc The system is pease ty svaiable only LISTING $15.99 loo the SWTPC 6800 compete system and roi support beslMes.hype, CT613.5 OPTIONAL dn.. and pave. For complete deeds d theneklWer system ...blot CASSETTE $6.95 our 4 page boochse. PT 6115 OPTIONAL PAPER W.1368 1129.93 TAPE S6.00

ALL SOFTWARE CONTAINS: Complete commented source isurg, uses menuet soh compete trISIMMons prided hex dump, sorted symbol tebb and ae eple *80*

PROGRAMOF.TIE.MONTH CLUB.' P2.SG lot a one year membership. no obigMaro! HOW TO ORDER: AAordersahetld nc6Sde Rack or money order. Add3110r postegeand 81.001« handing lot orders under $10.00. Send 254 lot mnpkte TSC aortae crtrog TECHNICAL SYSTEMS CONSULTANTS, INC. Box 2574 W. Lafayette, IN. 47906

Grole 140 on nun ry cart Brie n...... r r err 89 www.americanradiohistory.com Figure 6: A finite state graph representation of START the microcode shown in 0 table 2. The five digit binary numbers shown in each state are the control memory addresses when the computer is in that state. Note that a 4 way branch occurs at state 00010 (left side of the graph), indicating the four different op codes imple- mented for this computer. The resulting initial states for the four op codes are shown in contrasting color.

OP CODE =0 (W1O N)

OP CODE =2 (STN N)

base address becomes the new microprogram high in a microinstruction that has the two address, thus defining the next micro- lowest bits in BASE set to zero. In that case, program word to supply control signals. each op code will produce a different next Continued clocking of the 74174 thus causes address. the microprogram to sequence thru what- To see the next address scheme in action, ever steps it has chosen for itself, and at the consider table 2 and figure 6 in which the same time, to deliver control signals to the microcode for the computer is shown. If we computational unit. start at microcode address 00000, which is To this next address scheme we must add the case when the restart button is pressed, some means of varying the microprogram then we find that OPJMP -H is low, so the flow based on the op codes encountered. next address will be at BASE = 01000. Sub- This is the reason for having the OPJMP -H sequent addresses are 01001, 00001, and bit. When it is high, the base address is no finally 00010. At this point, OPJMP-H goes longer the next address. The latter is formed high. Let us assume for sake of example that by performing a logical OR of the base an ADD instruction has been placed on the address with the op code (assuming that bus (op code = 01). Then the next address the bus holds the instruction to be will be 00100 v 01 = 00101. The subsequent executed). Ordinarily OPJMP -H will be set addresses are then 01010, 01011, 00001,

90 BYTE November 1977 www.americanradiohistory.com J J J J Table 2: Standard micro- I O J .- O O J w code to implement the li IL H O V M N ,-- O 0 J O Q 2 instruction set listed in a Q U J w Q Q J w tu tu tu ty w F- n tn tn V) O ~ z w Ñ tn J table 1. Six bits of each Q Q Q Q Q n. J Q Ú D O > > Q 6 OC ...-,LO O Q a m Q m m2 Q word (BASE 0 thru BASE 4 and OP/MP -H) have Control Source Programmable Read Programmable Read been reserved to tell the Address (Binary) Only Memory A Only Memory B computer where the next

0 0 0 0 0 0 1 0 0 0 0 1 1 0 1** 1 1 1 word in the program se-

0 0 0 0 1 0 0 0 1 0 0 1 0 1 1 0 1 0 1 1 quence is located. For

0 0 0 1 0 0 0 1 0 0 1* 1 1 1 1 1 1 1 1 1 instance, upon startup, the

1 1 computer is at control 0 0 0 0 0 0 0 0 0* 1 0 1 1 1 1 0 1 1 source address 00000. 0 0 1 0 1 0 1 0 1 0 0* 1 0 1 1 1 1 0 1 1 BASE 0 thru BASE 4 0 1 1 0 1 0 1 0 0 0* 1 0 1 1 1 1 0 1 1 (BASE 4 is the most 0 0 1 1 1 0 0 0 0 1 1 0 1 0 1 1 1 1 1 0* significant bit) have the 0 1 0 0 0 0 1 0 0 1 0* 0 0 1 1 1 1 1 1 1 values 01000, indicating 0 1 0 0 1 0 0 0 1 0* 1 0 1 1 0 0 1 1 0 that the computer is to go

0 1 0 1 0 0 1 0 1 1 0 0 1 0 0 1 1 1 1 1 1 next to control source

0 1 0 1 1 0 0 0 0 1 0* 1 0 1 1 1 0 1 0 1 address 01000, and so on.

1 1 1 1 1 1 1 When control source 0 0 0 0 1 0 0 0 0 1** 1 1 address 00010 is reached, o 1 1 0 1 k0 o o o 1 o* 1 0 1 1 1 0 1 1 0 OP/MP -H is set equal to 1. L5Enables or disables control store At this point one of the address modification. four possible instructions Low order address of next program step /(modified by instruction code of user will be executed de- program through IC33 and IC34). pending on the values of High order address of next program step. the op code on bus lines 6

Note: " *" Indicates a "don't care" bit. and 7 (see figures 5 and 6). and so on. Note that address 00001 marks continue button prevents the computer the beginning of an infinite microprogram from continuing right thru several WIO in- loop that fetches, interprets and executes structions. (A properly debounced continue the instruction set. button is essential here for the same reason.) One more microprogram bit (WAIT -L) The restart button shown in figure 5 remains to be described. It provides a way allows us to prime the computer or to to halt our computer at the WIO instruction. abort a malfunctioning program. Pressing it As long as this bit remains high, the rather causes the accumulator, program counter, involved network of NAND gates conspires memory address register and microprogram to pass clock pulses so that the micro- address register to be cleared and paves the program executes freely. But when the way for the bootstrap program to be re- WAIT -L bit goes low, a flip flop changes loaded. state and permits the clock synchronization In table 2 I have listed the version of network to turn off the clock at the end of microcode that implements the instruction the current clock cycle. This stops the set laid out earlier. The various fields are computer, but it can still be single stepped identified at the top of the table, with by hand so that we can study the micro- additional explanatory notes at the bottom. program. Clock pulses will remain disabled Figure 6 uses the information in table 2 to until the continue button is pressed; then show a complete state diagram of the in- the flip flop reverts to its original state, struction set. Each state (a colored circle) is enabling the clock synchronization network one address in the control memory to pass pulses at the start of the next clock represented by one line in table 2. cycle. This restarts the microprogram, and One point worth keeping in mind con- hence the computer. The edge trigger on the cerns timing. At the beginning of each cycle,

BYTE November 1977 91 www.americanradiohistory.com Table 3: Power wiring table for the circuits in figures 2 thru 5. as CCLK goes high, a new microinstruction will appear at the output of the program- Number Type +5 VDC Gnd mable read only memories. This might cause data to be placed on the bus, or a sum to be 16 8 IC1 74174 formed by the arithmetic logic unit, etc. In IC2 74155 16 8 IC3 7489 16 8 any case, by the middle of the clock cycle, 16 8 IC4 7489 when CCLK goes low, it is assumed that all IC5 7489 16 8 IC6 7489 16 8 such data has settled. Therefore it will be IC7 7489 16 8 safe to latch the data set up during the first 8 IC8 7489 16 half of the cycle into some appropriate IC9 7489 16 8 IC10 7489 16 8 device. By the end of the cycle, the latched 8 IC11 74175 16 data will also be stable, so that a new micro- IC12 74175 16 8 IC13 74181 24 12 instruction can be safely executed. In this IC14 74181 24 12 way we have avoided timing problems with- IC15 74173 16 8 out going to a two phase dock. I estimate IC16 74173 16 8 IC17 74 LS161 16 8 that the cycle time of the computer could

IC18 74 [8161 16 8 approach 300 ns, although I have not pushed IC19 74125 14 7 the computer to its limit. IC20 74125 14 7 IC21 7404 14 7 IC22 7404 14 7 Summing Up IC23 74125 14 7 IC24 74125 14 7 The design of this simple computer will IC25 74288 16 8 certainly not appeal to everybody. Expand- IC26 74288 16 8 IC27 74174 16 8 ing the design to a 12 bit word length would IC28 74155 16 8 permit much more flexibility in the instruc- IC29 555 8 1 set, perhaps enough even make the IC30 7400 14 7 tion to IC31 7400 14 7 computer practical. For example, indirect 7402 14 7 IC32 addressing might be thrown in, or a sub- IC33 7432 14 7 IC34 7408 14 7 routine calling mechanism. The WIO in- IC35 7410 14 7 struction could be broken down into separate wait, input and output instructions,

v o allowing the computer to do things like flash its lights. (The present design comes to a DJGJTnL r.1iCRr SYETE115 grinding halt with each flash.) A more PRESENTS: elaborate bus structure, and some sort of flexible 10 facility are other obvious 5525 A 16K STATIC RAM 16K KIT improvements that one could try. Alter- FOR THE S100 BUS natively, a 12 bit word length could be used

rr mu rat (14 sr .±0 a: f t ass :1,,. space. Each these it it s1. ti to increase the address of it it' x ;U 4i' I l u i Ii it ii it a i^ h changes would add to the cost and com- Pi. M is - . . -.- ¡'a'r ms plexity of the design, but could lead to a i I is 'Ha 'it tw r if :1 - h 3i i . u it: h :it more useful computer. Although the requirements of the boot- strap loader do impose some severe ti. r ,1 iv = 1,! f, constraints on the instruction sets that can

,1 be implemented with this architecture, you 11 ,1 :;, I1 will probably want to try a few variations. It might be possible to implement two instruc- tion sets: one defined by the lower 16 Uses the new Intel 2114 4K Static RAM (which will also be built by Motorola, Signet ics, Fairchild. National, T.I., Synertek, NEC, Intersil, and Fujitsu, etc.). Features complete words of the programmable read only static operation (No refresh or clocked chip select).sottwareprotect, paging, individually addressable 4K blocks, completely buffered address and data lines, fully socketed. memory for loading programs, and the other Available with 8K or 161( of memory. Prices: 8K kit $295; 16K kit - 5525: 8K expansion kit 5250 16K assembled and tested. 5595 in the upper 16 words for experimentation. I 1 A switch would be used to select between S100 BUS TERMINATING CARD s25 KIT Absorbs noise. overshoot, ringing. reflection. Plated thru holes, gold plated fingers. the instruction sets. 1 1 Once have mastered the ideas EXTENDER CARD FOR EASY TROUBLESHOOTING Si 6 KIT you behind With Jumpers in power supply lines for current measurement. Low profile so card can remain in the machine with the cover on. With edge connector. gold fingers. the design of this computer, you'll be well 1 1 on your way to building a serious computer. PLASTIC KEYBOARD ENCLOSURE Blank molded ABS plastic enclosure for use with keyboard, controls, modem, etc. Size - All you need to do is sit down and write out 133 x 11'/2 x 21/2. PRICES: Blank enclosure- S20. With cutout for keyboard available from Radio Shack, etc. 527. an instruction set that best fits your personal 1 1 Prices shown include U.S shipping. Cashiers check or M.O. prefered. Personal check may needs and then implement it in hardware. delay shipping 3 weeks. Add S3 for C.O.D: Purchase Orders add 4% - net 30. Utah residents add 4.75 %. Bit slice microprocessors such as the IDIGITnL MICRO SYSTEMS BOX 1212, OREM,UTAH 84057 AM2900 series offer a very attractive way of toll free 24 hour Order Desk 18001453-1444, in Ulah cell (901) 224 -2102 doing this.

92 BYTE November 1977 Circle 46 on inquiry card. SEE DEALER LIST ON PAGE 165. www.americanradiohistory.com corporation

The most cost effective products for your microcomputers

RM64 64K bytes

THE EXTENSYS Write pro- RM64 MEMORY tection in BOARD provides 16K blocks; and the most cost effective system Fully socketed for 64K, memory found in the t 'rrm,'' f allowing 32K and 48K versions industry. The RM64 provides this 4,,,,,T4,7; to be upgraded at a later date. because of our low cost per byte when compared to our competition plus the increased reliability of a Delivery of the RM64 is 15 to 30 single board over multiple boards containing less memory. The DAYS upon receipt of order. Prices for the RM64 include shipping board is S -100 bus compatible making it usable in over a dozen and handling prepaid in the continental United States. systems R and different microcomputer including ALTAI IMSAI. EXTENSYS Corporation is also announcing several other new highly The is in RM64 available three configurations: 32K, 48K or 64K cost effective products. These include a total floppy disk system bytes of memory all on ONE board. The board is completely based around File I/O board and a multiprocessor operating system. assembled, checked out and burned in for at least 50 hours prior The other product, which interfaces with the RM64 memory board to shipment. This complete testing procedure allows Extensys to create a megabyte or more of memory and adds full DMA to provide a one year warranty on parts, labor and materials capability to the File I/O board, is a Board Select /DMA (assuming no misuse of the board occurs). board. Both of these products are S -100 compatible. On board hardware is provided for: Circle 58 on inquiry card. Individual memory bank address selection in 8K byte Contact your local computer store increments; or order directly from EXTENSYS B-5

Complete dynamic refresh logic without loss of processing Please Place my order for the following: OTT DESCRIPTION AMOUNT corporation are running; @ 895 efficiency while programs RM64-32K byte board S ea 592 Weddell Drive RM64 -48K byte bord @ S1195 ea. RM64 -64K byte board @ S1495ea Sunnyvale, California 94086 Board select logic which allows more than one 64K byte board Subtotal (408) 734 -1525 California residents add 6%94 tax per system; payment: TOTAL Please check method of Check Enclosed Shipping and handling prepaid in continental United States - BankAmerlcard No S -100 bus including on -board voltage regulator; NAME expiration date compatibility Master Charge No ADDRESS expiration date Memory overlap which allows memory sharing the same address CITY STATE ZIP SIGNATURE" space to coexist in the same system; PHONEIINCLUDE AREA CODE) www.americanradiohistory.com A 6502 Personal System Design:

Documenting Kompuutar -A Guide to the Details The design information included with the article, together with the excellent documentation presided by MOS Technology on the 6502 deign, should be complete enough to enable the advanced experimenter to build a similar Kompuutar. The details provided here cover a basic processor, but do not include a detail deign of a programmable memory board which is a necessary part of a usable system. David Braider is currently working on an 8 K dynamic mem- wr;d e.aee. ory board, with invisible refresh, to be used in Kompuutar. The details of the wiring and coin PCB 483 struction of Kompuutar are shown in the several figures, tables and photographs, as well as Euanna Cfry WA 99177 listing 7. As a short guide to these materiels here is a detailed table of contents to the article

Front Panel Assembly: This is the circuit with cariais &'splays and switches, which is mounted on the from panel, and talks to the from panel interface module via a multiconductor cable horn P2 to /2.

Photo 7: User's view of the front panel. page 95 Fire 7: Front panel Nod, diagram page 104 Figures 7.7 to 7.8: Show circuit details. pages 706 to 714 Photo 2: Rear of the from panel. page 100 Figure 1.9: physical layout drawing of front pond (same view as photo 2). page 176

grant Panel Interface Module: This is the logical interface between the processor's backplane bus and the front panel. It is the home of address decoding and the read only memory with the front panel service programs

Photo 2: Shows the cables from the front panel interface module to the front pond assembly (d the left) page 700 Figures 27 to 2.4: Show circuit detaih. pages 778 to 724 Figure 2.5: Shows the physical layout on a Vector #3677-2 prororyping board page 126 Table 4: Shows the wiring definitions of the /2-02 cable from this board to the front panel assembly. page 702

Central Processing Module: This n the heart of the Kompuutar system, a board which contains the 6502 processor, and associated buffering and clocking circuity which defines the back plane bus structure of the system. Photo 3: Shows the component side of the central processing module, the second card from the lait. page 102 Figure 3.7: Shows the logic diagram of the processor card. page 127 Figure 3.2: Shows the physical layout of the processor module ana Vector #3662 prdotyping card. page 128 Table 2: Details the backplane pin definitions (Pl of each card) for the bus of Kompuutar. page 98

TIM Interface Module: Tho card a provided so that the MOS Technology 'Terminal Interface Monitor,- or TIM progam, can be used with Kcmpudar.

Figure 4.7: Shows the logic diagram of the TIM Interface Module. page 130 Figure 4.2: Shows the physical layout of the TIM module on a Vector #3662 card. page 132 Miscellaneous Items:

Table 5: Shows a master list dell integrated circuits, where they appear by figure, wiring, map locations for the physical layouts shown, and power hiring connections. page 734 Table l: Shows the allocations of memory for Kampen", as implemented here. page 96 listing l: Shows the front panel control program which can be used to manipulate Kampxutar without any other monitor program. pages 736 -737

94 *YU 1077 www.americanradiohistory.com Kompuutar

Photo 1: The completed Kompuutar, viewed to- wards its front panel. The controls of the front panel are chosen with the Data General NOVA'S front panel as a mental model. In addition to the binary data display, there is a 4 digit hexadecimal address display (black rectangle) and an 8 bit binary flag display. The control panel is serviced by a read only memory routine. It all started at WESCON 1975, in San

Kaveat Kompuutar Francisco. It was there that I discovered It is with some trepidation that we what a "hospitality suite" is. In a hotel present the details of the Kompuutar not far from the convention site, MOS design. The design is complete and com- Technology Inc had set up their WESCON prehensive, but Murphy is addicted to hospitality suite. A hospitality suite is a bit complete and comprehensive designs. like Las Vegas: some refreshments, a couple Thus we'd like readers to be aware that of elegantly decorative ladies, flashing there is a nonzero probability that errors lights and shiny gizmos, and the age old exist in this magazine representation of desire to persuade you and your money author David Brader design. We suggest to part company. that serious homebrewers of Kompuutar I decided to stop and at least get a treat these pages as a detailed design free drink. A man by the bar said, "Help guide, to be used with the standard design yourself," so, being afraid of a one drink documentation of the chips involved. But limit, I poured a double. As I left the bar as with any road map, do not be afraid to area, I spotted a friend. We struck up a con- question and verify what you see with versation about common friends and assign- your own knowledge and experience. ments, which lasted through half my drink David Brader reports that a local and all of my clearheadedness. As our friend of his has built a second Korn - conversation ended, I noted some blinking puutar from the same set of blueprints LEDs and shiny new printed circuit boards. which were the source of the circuit in These boards were surrounded by several this article. The experiences of the second professional looking guests, giving the hard- builder were reflected in his corrections ware an illusion of significance. So I went and changes to the drawings which are over to investigate. part of the normal "author proof" cycle I listened, wide eyed, to the saga of the applied to articles. Based on our own MCS6502 as I slowly finished my drink. experiences with microprocessors, this After the story ended, everyone seemed to be forming a line in a different part report from David, and a tremendous amount of "desk debugging" of the of the suite. Feeling part of the group now, I moved to the line. A bit later, article, we believe the information pre- little sented here is complete and buildable. I remember being at the head of the line and the last I recall was However we highly recommend that thing handing two readers who attempt to duplicate the 20 dollar bills to a very pretty lady. design have sufficient experience with That evening, after sobering up, I dis- covered I had done. There on my digital hardware and logic so that detailed what a MOS understanding of its operation is possible. bed, stark naked, was bright new Inc MCS6502 microprocessor This is not a novice's project. Technology chip and its manuals. Well, now the only

BYTE November 1977 95 www.americanradiohistory.com Backplane (P1) Backplane Pin Logic Diagram Pin Logic Diagram Designation Mnemonics Description Designation Mnemonics Description

A +5V voltage supply 1 GND ground

B IRQ 1 interrupt 1 2 IRQ 5 interrupt 5 C AO 3 Al D A2 4 A3 E A4 5 A5 F A6 address bus lines 6 A7 address bus lines H A8 (even) 7 A9 (odd) J A 10 8 A 11 K A 12 9 A13 L A 14 10 A 15 M IRQ 2 interrupt 2 11 IRQ 6 interrupt 6 N IRQ3 interrupt 3 12 IRQX any interrupt pending P DO 13 D 1 R D2 data bus lines 14 D3 data bus lines S D4 (even) 15 D5 (odd) T D6 16 D7 U SO set overflow flag 17 SYNC synchronize PHICLK 11 clock 18 PH2CLK N2 clock W MASRST master reset 19 RDY ready X R/W read and write 20 PANRST panel reset Y IRQ4 interrupt 4 21 NMI nonmaskable interrupt Z GND ground 22 +5V voltage supply

Table 1: Kompuutar bus list. This table gives the backplane socket pin identifications, mnemonics used in the logic diagrams, and a short description of the line's use. The pin designations are the standard ones printed on the Vector prototyping cards and embossed in the typical 44 pin sockets.

thing to do was to build a computer with you would probably have to think for a

the chip. After several days reading, I while to make sure.) Another argument realized that building a computer was in favor of discrete LED indicators for

not going to be all that easy. I also realized each bit is the fact that hexadecimal displays that the initial $36.75 investment was but are a bit more expensive. a drop in the proverbial bucket of costs. After reading more about the MCS6502, a trait common to the other single chip Designing the Kompuutar System processors revealed itself. The status register, Since my $36.75 investment was going accumulator, index register X, index register to need considerable financial and design Y and stack pointer register do not come support, it was clear that making a project out of the chip on their own sets of pins. out of the computer would require planning. All that information was going to be hidden

The first thing I had to accomplish was a from the operator (me) sitting in front of

specification of the features I wanted in the machine. I knew I would have to design

my machine. I had had a good deal of digital logic to get that information out of experience with the Data General NOVA the chip and displayed upon some sort of

1200 minicomputer, which led me to favor front panel. I even decided to go one step its functional front panel switch setup. further and build in the capability to set

With this input, I decided that the new or reset the status flags from the front machine would have the front panel func- panel. Being able to throw a switch and set tions of master reset, halt, program run, the carry flag, for example, is a very handy single instruction step, memory examine, capability when debugging a conditional examine the next memory location, deposit, branch in some program.

desposit to the next memory location, I decided to use toggle switches for the load , and enter data or 16 data inputs because the state of indi-

address information from switches. I also vidual switches could then be tested in

knew that I wanted to be able to display software and used to control options in a the information on the data lines and program. This complicates the entry of an

address lines. I decided to use hexadecimal address (which is displayed in hexadecimal) LED displays for the address bus infor- but gains an ability to write applications mation, but not for the data bus. My reason- programs which can be modified by the state ing was that the address bus is always con- of these input switches. sidered to be a numerical value, whereas With these considerations in mind, the the data bus is sometimes considered to be front panel design was firmed up as a start-

numeric data, but is sometimes viewed ing point for the processor. I then started as a combination of individual bits. (If the to work on the detailed logic design of what data bus was showing hexadecimal E6 and came to be called Kompuutar in my lexicon.

you wanted to know if bit 5 was on or off, After a month's work, I realized that the

96 BYTE November 1977 www.americanradiohistory.com --""--"""memo-mil-aftftworemilf The Basic Box (left) and the Peripheral Plate. With no- nonsense organizers from the Digital group.

Not so long ago, the microcomputer domain decks or an audio cassette recorder. All at your belonged to a special group of creative, inventive fingertips. For organization. folks - the inveterate hardware hackers who de- lighted in making a thing work and didn't really care all that much about how it looked. The Digital Group was a part of it. Our original microprocessor systems were designed not to require any cabinets at all - they simply worked well. Of course, along the line we couldn't resist making a good thing look good too ... and we added our complete line of custom, deluxe cabinets to cover up. Well, we haven't forgotten those no- nonsense com- puter builders who just want a way to organize their systems. So the Digital Group has taken a step back Card rackswings out for service. to come up with a basic answer: The Organizers - Naturally, our basics have down -to -earth prices, too. the Basic Box and the Peripheral Plate. The Peripheral Plate is a mere $19.50 ... the basic Beautifully simple. No paint. No anodizing. No frills. Basic Box goes for $45 (a little more depending on Just exactly what you need. options). The Basic Box houses your CPU, power supplies, fan, Want to up your organization? It's simple. Just call or switches and I/O connectors in one tight little 16" by write the Digital Group for details. 17" package. It's available completely naked - a Circle 45 on inquiry card. metal box with a card rack so you can add to it from your own parts supply; or we'll spiff it up for you with optional equipment. The Peripheral Plate is a piece of bent metal with P.O. Box 6528 Denver, Colorado 80206 room for your keyboard, video monitor, two Phi- (303) 777 -7133 BYTE November 1977 97 www.americanradiohistory.com front panel logic was going to contain nearly design philosophy which goes like this:

220 TTL integrated circuits if I implemented There wouid be a central process- it with a conventional logic design. After ing unit and peripherals. The periph- that false start, I thought about a simpli- erals would be interfaced to the fication made possible by a read only mem- processor with a minimum of hard- ory program, or "firmware" as it is some- ware by using memory address inter- times called. I could replace most of the faces wherever possible. front panel logic with a program burned The system would be modular. A into a single read only memory integrated common backplane would be defined. circuit. With a PROM program and 16 bytes Each module would be connected of volatile programmable memory, the to the other modules through this 6502 processor itself would operate the backplane. Each socket on the back - front panel of the system. The integrated plane would be wired pin by pin to circuit count for the front panel including every other socket on the backplane. the programmable read only memory and An address allocation map for the 16 bytes of volatile solid state memory system would be defined. This would was now reduced to just over 50 packages. define addresses for hardware (periph- erals), firmware (read only memory System Design Philosophy programs) and main programmable During the process of designing the memory use.

front panel, I worked out a total system

The front panel design I had already created follows the first point of this phi-

losophy quite well. I t has several separate Address Range Type of Hardware Usage of Region peripherals. Some are input devices, some are output devices, and some are a com- 0000 to 3FFF Volatile programmable This is the general programmable memory memory region for user applications programs. bination of both functions. Each is inter- Locations 0000 to 01F F are dedicated to faced as a memory address and operated scratch pad and stack use by the architec- ture of the 6502 processor. by firmware with a minimum of supporting 4000 to 6 F F F Unimplemented This region is reserved for 12 K of general hardware. Details of front panel operation user memory expansion. will be discussed a little later in this article. 7000 to 73FF TIM read only memory When the TIM monitor interface card is in the system, this area is reserved. The physical arrangement of the design 7400to7FFF Unimplemented implements the details of the second point 8000 Scratch pad memory with Current accumulator value maintained by external visibility front panel service program in the philosophy. The front panel assembly 8001 Scratch pad memory with Current X register value is connected to the top of a Vector proto- external visibility typing card which contains the program- 8002 Scratch pad memory with Current Y register value external visibility mable read only memory with the front 8003 Scratch pad memory with Current processor flag values panel servicing routines. This card in turn visibility external plugs into the backplane bus which is 8004 Scratch pad memory 8005 Scratch pad memory with Current stack pointer value implemented with a Vector card cage and external visibility edge connectors. By pulling the front panel 8006 Scratch pad program card out of the backplane, the Kompuutar begins here 8007 to 8008 Scratch pad Current address register value, displayed system can be isolated from the front panel through locations 8014 and 8015 completely. Similarly, the rest of the Kom- 8009 to 800C Scratch pad program area 800D Scratch pad memory with Current data at memory location in puutar system is fabricated on Vector 3662 external visibility address register locations 8007 to 8008 cards. Each card module contains one com- 800E-800F Scratch pad plete section of the system. These modules 8010 Read only data input Front panel request register (see table 3) 8011 Read only data input Low order address and data switch register include the card 8012 Read only data input High order address switch register with the 6502 and bus interfacing chips, 8013 Write only display Flag data latch and binary display 8014 Write only display Low order address display latch and a terminal interface card. Eventually 8015 Write only display High order address display latch 8 K byte programmable (volatile) memory 801F Idle command address References cause processor to idle cards will be part of the system. The cage I 8020 to 80 F F Peripherals Unimplemented hardware device addresses 8100 to EFFF Unimplemented used has room for eight memory cards for a F000 to FDFF Programmable read only This area is expected to be used by inter- total of 64 K bytes. Since the backplane memory allocations for rupt service routines, utility subroutines is wired from pin to corresponding pin of systems programs and the like, programmed into read only memory parts. each socket, the cards can be placed in FE00 to FFFF Read only memory This region is allocated to the firmware any available socket in the card cage. Table which controls the front panel. The 6502's interrupt vectors are programmed 1 shows the definitions of all the bus pins.

into the last portion (see listing 1). In developing the system, I used an extender

card plugged into the backplane so that I Table 2: A memory allocation map for Kompuutar. When interfacing both could have access to the various modules peripherals and programming to a single memory address space, it helps to with an oscilloscope probe. make a memory map to keep track of allocations. The third part of the design philosophy

98 BYTE November 1977

www.americanradiohistory.com We cut upa Dynabyte i 6k .flattered but. not surprised, we Thé Great Memory by dynamic.RAM board áiid con= know how good it ls.) Dynabyte is a solid buy. And an structed'this pyramid to illustrate More than 1400 mierocompu econòmical 'one: Effective Óetóber an important point:. Dynabyte - ter owñers also know how good it 1, the new.Manufactuker's designs.and bads memory boards:. is: Dynabyte's .16k dynamic is Suggested price is reduced from with the same unriatched. engi running in more systems than any. $485 to $399. -'neering ability and teçhnïcal skill other dyrìamic memory on-the Ask for the Great Memory by

that wentinto'Egylìt's Gtéat market. ' . . . Dyñabyte atyour local computer Pyrantid.. We select the best components store: I it isn't in stock, tell the One öf the seven wonders of we .can btiy to build the-16k dynam- owner that he missed another the ancient world, the.Great ic, because solid parts make a solid Dynabyte sale, andorder direct. ' Pyramid has-been standing on the memory. Oür memorychips,for Telephone (415)494 -7817. Cable deSertfor arrincredible 4,400. example, are factory prime from DYNABYTE. Or mail to Dynabyte,. years. Although its enormous base National Semiconductor.. Inc., 4020 Fabian, Palo Alto, CA covers 13:acres;.it is perfectly ' Dynabyte.was the.first to 94303. 1.. square. Rising 450 feet, it is as tall deliver 16k dynamic RAM's Specifications: 16,384 bytes, National Semiconductor MM5271 chips, S -100 com- as a 37 story Wilding..Over 2.3 assembled, tested and burned patible, 350 nsec. access time, 550 nsec. million' blocks of stone were used, in. And at a price competitive with cycle time, transparent refresh, no wait states each averaging 2'/2 tons. Some kits! Each board's complete for 2 MHz 8080 processor, on board clock, 5 watts power consumption, 1 MHz direct mem- t. weigh 16 tons. Despite their size, function is confirmed by three ory access, 16k addressing, solder masked, they fit together with atoler'ance stages of testing and a bum in assembled with sockets, tested, burned in, that is less than half the width of a cycle that runs 72 hours at 70°C guaranteed one year. human hair. (158 °). Dynabyte builds its 16k When we build them that dynamic RAM boards with the solid we can guarantee them Dynabyte same exceptional precision for a full year. Builders of the Great Memory and care. Their reliability is as If a Dynabyte board ever needs solid as a rock. repair, we provide factory service Dynabyte's design meets rigid with a 24 hour turnaround for both industrial grade standards. The warranty and non -warranty work. design is so good, in fact, that one The Dynabyte 16k dynamic of the largest, most experienced has the widest compatibility of any electronics manufacturers has dynamic memory. So it will work in tried to imitate it. (We were your system.

Circle 51 on inquiry card. BYTE November 1977 99

www.americanradiohistory.com Photo 2: The reverse side of the front panel assem- bly for Kompuutar. The various switches, indi- cators and the front panel electronics board are seen in this picture. The P2 -/2 cables run to the front panel interface module at right.

was implemented by picking address alloca- Backplane tions. (See table 2 for a detailed list of the

allocations.) I decided early in the project The backplane of the card cage (see table that 16 K bytes of memory would be a good 1) carries the address bus, the bidirectional

start for general programming uses. I had to data bus, six vectored interrupt lines, and allocate this volatile user oriented program- other functional signals as detailed in table mable memory, as well as all the addresses 1. All signals that pass through the back -

for peripheral hardware and "firmware" read plane are interpreted to be logical 1 or only memory programs. The address range "true" in a low voltage (TTL 0) state. A of the 6502 is from 0 to 65,535 (0000 to high voltage (TTL 1) state is interpreted FFFF in hexadecimal). Since the archi- as a logical 0 or "false" state. Each module tecture of the chip itself uses addresses which connects to the backplane uses TTL 0000 to 01 FF for dedicated functions which inverting buffer circuits for signals sent or

must be in programmable memory, I as- received. The +5 V (VCC) and ground signed the 16 K byte block of main memory (GND) connections are arranged on the card to the lowest part of the addressing range, edge connectors such that by plugging a

from hexadecimal 0000 to 3FFF. I was module into the backplane upside down, interested in the possibility of occasionally polarity to the card will not be reversed. using the MOS Technology TIM monitor, This simple arrangement eliminates the need

so I reserved locations 7000 to 73FF for use for keying the cards; while it prevents

by that program's read only memory. I physical destruction of the card due to allocated the control panel scratch memory inadvertent reversal of orientation, 'the and peripheral ports starting at address 8000 system should not, of course, be expected hexadecimal, with the addresses starting at to work with one or more cards reversed 8020 reserved for general peripheral use as relative to the balance of the cards in the

I expand the system. At the end of the ad- system.

dress range, I reserved the 4096 bytes from The vectored interrupt lines of the addresses F000 to FFFF for read only backplane are defined by some logic imple- memory containing various systems routines. mented on the central processing unit The high end of this range is reserved for card (see figures 3). This card contains the control panel support program and the logic necessary to cause hardware vectoring interrupt vectors of the MOS Technology of interrupt levels to one of the six possi- 6502 design. ble interrupt service routines. The vectoring

Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Table 3: Control request word layout. The control Flag I I request word, located at I I Flag Select Bits Control Control Request Functions address 8010 in memory J LJ L -J address space, is an input CARRY flag "1" = set flag 0 = Null command (pass NMI) to the processor with this 1 = ZERO flag "0" = reset flag 1 = FLAG MODIFICATION format. It is used by the 2 = IRQ DIS flag 2 = DEPOSIT NEXT front panel service pro- 3 = DECIMAL flag 3 = DEPOSIT 4 = BRK CMD flag 4 = EXAMINE NEXT gram of listing 1 to govern 5 = Not used 5 = EXAMINE the operation of the panel 6 = OVRFLW flag 6 = STEP 7 = NEG flag 7 = HALT based on settings va- of 8 = REG LOAD rious switches. 9 to 15 = Unused

100 BYTE November 1977

www.americanradiohistory.com Vito L plt-scatwl Tee 4800 BAUD CASSETTE RECORDER An ASYNCHRONOUS NRZ type Recorder with remote motor start /stop. Error rate 108 at 4800 BAUD. Can be used from 110 to 4800 BAUD into a UART or "Bit Banger PIA" -no clocking required. This is not an audio recorder. It takes RS232 or TTL signals from the terminal or computer and gives back the same signals. No audio interface is used. Motor start /stop is manual or through TTL or RS232 signals. Tape speed is 3.2" /second nominal; 1.6" /sec. optional. 110 volt, 60 Hz, 5 watts. (220 Volts on special order). Can use high quality audio cassettes (Philips Type) or certified data cassettes. Can be used in remote locations from a 12 Volt battery. Recommended for DATA LOGGING, WORD PROCESSING, COMPUTER PRO- GRAM RELOADING and DATA STORAGE. Especially recommended for 6800 systems, 6502 systems, 1800 systems and beginners with the 8080 systems. Manual control except for motor start /stop. 6800 or 8080 software for file or record searching J available on request with order. Used by major computer manufacturers, Bell Tele- phone and U.S. Government for program reloading and field servicing. MODEL CC -8 $175.00 AVAILABILITY - Off the shelf.

PROVIDES MONITOR AND TAPE SOFTWARE in EPROM. EXPANDS 6800 CONTROLLER for SWTP MIKBUG with 1 K of ADDITIONAL ROM PROGRAM. This is a complete tape controller for the SWTP 6800 system. Has 3 K of EPROM space for your own programs. A 1 K ROM (2708) is provided with all tape and moni- tor functions. The ROM program is identical to our extensive 8080 ROM program. Has one ACIA for one or two tape drives, one USART for an additional Serial port

and a 4 bit parallel port for motor control. Will control one or two CC -8 or 3M3A ç1 likil 1,-,4 drives with the software provided. Can be used with other tape drives controllable with ir-, fill wit rl ill ,rr 1 4 TTL bits if appropriate software changes are made. Extra serial port is provided for your use with a second terminal or printer. (RS232, TTL or 20 ma) I The ROM program supplements the MIKBUG program and is entered automatically on reset. AVAILABILITY -Off the Shelf. $190.00, Tested & Assmb. ($160.00, Kit)

PROVIDES MONITOR AND TAPE SOFTWARE in ROM TERMINAL and TAPE PORTS on SAME BOARD CONTROLS ONE or TWO TAPE UNITS (CC -8 or 3M3A) This is a complete 8080, 8085, or Z80 system controller. It provides the terminal I/O (RS232, 20 mA, or TTL) and the data cartridge I /O, plus the motor controlling parallel I/O latches. Two kilobytes of on board ROM provide turn on and go control of your Altair or Imsai. NO MORE BOOTSTRAPPING. Loads and Dumps memory in hex on the terminal, formats tape cartridge files, has word processing and paper tape routines. Best of all, it has the search routines to locate files and records by means of six, five, and four letter strings. Just type in the file name and the recorder and software do the rest. Can be used in the BiSync (IBM), BiPhase (Phase encoded) or NRZ modes with suitable recorders and interfaces. This is Revision 7 of this controller. This version features 2708 type EPROM's so that you can write your own software or relocate it as desired. One 2708 prepro- grammed is supplied with the board. A socket is available for the second ROM allowing up to a full 2K of monitor programs. Fits all 5100 bus computers using 8080 or Z80 MPU's. Requires 2 MHz clock from bus. Cannot be used with audio cassettes without an interface. Cassette or 2S10 (R) CONTROLLER cartridge inputs are RS232 level. $190.00 ($160.00 Kit) AVAILABILITY - Off the shelf.

Z 80 BOARD for SWTP COMPUTER: Now you can use the 8080/Z80 software programs in your SWTP 6800 machine. Replaces your MPU board with a Z80 and ROM so that you are up and running with your present SWTP memory and MPC card. $200 assembled and tested. ($160 kit) AVAILABLE -November '77.

OVERSEAS: Export Version 220 volt 50 hz. Write factory or: Megatron- Datameg, 8011 Putzbrunn, Munchen, Germany; Nippon Automation 5-16 -7 Shiba, Minato -Ku, Tokyo, Japan; Hobbydata, FACK 20012, Malmo, Sweden; G. Ashbee, 172 /field Road, London SW 10 -9ag: Trin- tronics, Ltd., 186 Queen Street W. Toronto, Ontario, Canada; EBASA, Enrique Barges 17, Barcelona 14, Spain; ARIES, 7, rue Saint Phillipe du Roule, 75008 Paris; Microlem 20131, Milano, Italy; Eagle Electric, Capetown, S. Africa.

For U.P.S. delivery, add $3.00 Overseas and air shipments charges collect. N.J. Residents add 5% Sales Tax. WRITE or CALL for further information. Phone Orders on Master Charge and BankAmericard accepted. National Multiplex Corporation 3474 Rand Avenue, South Plainfield NJ 07080 Box 288 Phone (201) 561 -3600 TWX 710 -997 -9530 c ,

Circle 102 on inquiry card. BYTE November 1977 101

www.americanradiohistory.com to use an ASCII serial device such as a Teletype or other terminal. In making a

board to support TIM, I also included an Photo 3: The front side of 8 bit parallel interface to allow the possi- the backplane framework bility of using a high speed paper tape reader with card guides. This pic- with Kompuutar. Details of the TIM module ture shows the front panel are shown in figures 4. interface module at the

left, the central processor - Front Panel Logic module, a gap of several Getting into more of the details of the card slots, then the TIM system, I'll concentrate mainly on the interface module's edge place where I started my design, the front with cables dangling. panel. The front panel logic is composed of input devices, output devices, 16 bytes of scratch pad memory, logic of the ready and nonmaskable interrupt timing, address is accomplished by using the selected service decoders, switch debouncers, a data bus routine address for the interrupt vector multiplexer, command encoder, line buffers requested by the 6502 processor during and the control program in a programmable its interrupt sequence. The service routines read only memory. The overall design of are assumed to reside in programmable the front panel is found in figure 1, with read only memory chips located in a separ- details spread out in figures 1.1 thru 1.9.

ate module elsewhere on the backplane Photos 1 and 2 give further details. bus. The processor hardware also incorpor- There are four input sources of data ates a priority arrangement of these six in the front panel design. Each source is interrupts. Thus when two interrupts occur selected by the address decoding logic, simultaneously the system has no problem: which in turn allows the proper source the higher priority one is serviced first. to be input through the data bus multi- This becomes important when several plexer. The first source of input is the interrupt driven peripherals are used with control request register. This source carries the system. An automatic reset function data from the command encoder, the flag initializes the system when power is turned selection switch, the flag modification on, a separate interrupt for the 6502 which switch and the register load switch. Table 3 is supported on the processor board. shows the bit assignments of this source, As an alternative to the front panel logic, which is located at hexadecimal address the memory map of table 2 shows alloca- 8010 in memory address space. tions for the MOS Technology TIM monitor The second source of input is the low integrated circuit, MCS6530 -004. This "Ter- minal Interface Monitor" allows the user Text continued on page 112

Logic Diagram Logic Diagram Wire Mnemonic Description Wire Mnemonic Description

1 to 4 +5 V voltage source 21 X800X 5 DO 22 X800F address selection 6 D1 23 X8013 data bus lines lines 7 D2 24 X8014 8 D3 25 SELZ multiplexer select 9 4)1 CLK phase 1 clock 26 SEL 2 I lines 10 rn2 CLK phase 2 clock 27 BSOUT multiplexer disable 11 IRQX any interrupt pending 28 - 12 A3 address bus line 29 X8015 13 D4 30 XFEEA address selection lines 14 D5 31 X801F 1 data bus lines 15 D6 32 - 16 D7 33 - 17 A2 34 REST front panel reset 18 Al address bus lines 35 RDY ready 19 AO 1 36 NMI nonmaskable interrupt 20 R/W read /write 37 to 40 GND ground

Table 4: Wiring list for the /2 -P2 cable. This cable runs from the front panel interface board in the card cage to the front panel assembly, as seen in photos 2 and 3. /In the author's version of Kompuutar, the wiring was direct without use of a plug and jack; in order to simplify nomen- clature in presenting the article, we've used a numerical indentification of signal paths as if a 40 wire cable and connectors had been used ...CHI

102 BYTE November 1977

www.americanradiohistory.com Our prices arefantastic Our service...is better) Specialization is the only way of doing a job well. S -100, Inc. is committed strictly to the needs of S -100 based minicomputer systems. We don't sell books, Teletypes, video terminals, or products that do not directly plug into an S -100 bus.

ABSOLUTELY NO BACK ORDERS! If we can't ship from stock, we will return your check. We deliver "off the shelf" - and we intend to inventory not only the best of the S -100 products, but also the items that are the best values as well. We don't plan to inventory everything made for the S -100 bus, but we intend to inventory anything you should have.

We stock mainframes but will concentrate on a variety of memory and interface boards, offering the most popular and the obscure.

If it's made for the S -100 bus, call or write us first... second... or last - but be sure to get our prices before you buy! Write for our complete catalog.

- TYPICAL PRICES ON SOME OF OUR ITEMS - OUR PRICE IMSAI 22 -SLOT MOTHERBOARD, KIT (List $ 751.00) S 589.95 Z -80 CPU BOARDS - Our Kit 144.95 Digital Innovations (Similar to TDL) (List $ 169.95) 149.95 TDL ZPU (List S 269.95) 239.95 S -100 SYSTEM, complete, all self- contained and partially assembled, includes keyboard, power supply, 10 -slot motherboard, Z -80 CPU, 16K of RAM, I/O board with audio cassette, monitor in PROM, and 8K BASIC -all for ONLY 1,495.00 4K S -100 MEMORY BOARD, low- power, 450ns 89.95 8K S -100 MEMORY BOARD, low -power 450ns 144.95 16K S -100 STATIC MEMORY BOARD 439.95 16K S -100 DYNAMIC MEMORY BOARD (assembled and tested) 299.95 CYBERCOM VIDEO BOARD VB1A (List $ 189.00) 149.95 NORTH STAR MICRO DISK, Kit (List $ 699.00) 594.95 All Processor Technology and Cromenco items and TDL Software - LESS 10%

We distribute S -100 items from all major manufacturers and from many smaller ones. Unless otherwise specified, all boards or kits are fully socketed (sockets are extra for IMSAI boards or kits).

An organization dedicated to the users of the S -100 bus Circle 118 on inquiry card. r 7 WHITE PLACE CLARK, NEW JERSEY 07066 12011 382-1318

www.americanradiohistory.com m

_u LL m m m

w ¢ t7 t7 t7 F W > LL w Q NH LL LL ¢ J J N UOa¢QWN N o W N W Q a OJOLLN¢ N N F >f H > w J W J W Q W Q r O> Q ¢ a ¢ á0 ¢ 2J W J F O á NOOa ¢ 0 F UOa¢ N_ U>O u>3Q Q ^w0 J W WQO OJOLL O J J Q Z z xa¢oW W J WO¢ xa¢O m ZOLLo ZOLLpWO¢

W W J Z J Z m _~m H U á u u a a má z w mQ ma m J m J W m J

Q J a w Y 1 2 U OQF-Q Q J Q a N Y W W U N Q R J m 3á LL F w N ¢ 2 LL J 2 O w J m m N J O N ¢ ¢ W ¢ a O W f O ¢ 2 Q

z s O ¢ H N u O N ¢awwm¢ 0> w JQ¢ J m0 Qm a Y N N ¢ W Q ¢ z F F J 2 2 m O -

¢ W f Z x uUn N W O J S3NI£ Q J = m a_m 3N119 93N -d! J W 3 LLNNLL Q j - J W Q 2 J z FLL J N J O

I HJ¢ N Ozzuu2wHY= 1 ¢Q00- u LLaUJILL F J 2U ZW O Fm OZ F Z ¢mN JFQ u o z I- W á O W J Q ¢ m z u°n N ¢uF LL > N W F O w wuu 2OO NLL W O 2J0 U O¢¢ 2o J OQU2 z ¢ ¢ W o W J Q¢ ¢ZF uaa 00 m J OOWÓ ¢ W m ~aLLO Q N N J Q00¢WNN aLL ¢ 2y¢F m á OQwuwu á FmZ> z w u 2J Z Ow 2 J 3 t7 2 2NQ J o W 2 a Z 2 z - . u a F N Q N Uz-ú Q uQw w I- N V 2-O FI á 3 HLLOú LL0= m N 3¢ N ¢ W N LL N LL LL N N Ñ Z W Ñ WO FJ O N Q H á2Ñ~ O u? Ou? w>3 F0; N Q óú óz W VI LL Q a J N m N N m yUj J OW¢Q OO2W QWO LL Q O LL LL a ' N OQJ ON¢ILL W 1 FJ HJt=j I N y1' N 2w Q ~ ~ W - aa3 -- N m ------2 m LLaN a J W ¢ J ^ J O O m a N N N - N ¢ NWF W W W FULL , y ,QOOD.WNN COON 02 COaUY0.Ja2W ¢ N ¢¢OO O LL c. .. -'x:.5él,.i>a .-. - OÑ LLam ' Figure 1: Block diagram of Kompuutar's front panel logic. The Kompuutar design uses a read only memory program to manipulate the contents of memory interactively using function switch inputs and solid state display outputs. This diagram serves as a functional road map to the various components of the display and its interface board.

104 BYTE November 1977

www.americanradiohistory.com 16384 BYTES for X485.00 assembled (with sockets) : tested - burned -in - guaranteed

A new high in S100 bus memory cost effectiveness.. Fully assembled

(with sockets), tested, burned -in and guaranteed. 4Kx I dynamic memory chips (the same ones used by the ton in IBM compat- ible memory systems) combined with self contained control logic, yield a memory system with these features:

Low power consumption, total board 5 watts.

Transparent refresh, which means the memory looks static to the outside world.

No waiting. In fact, XRDY is not even con- nected to the memory. Full DMA capability.

Reliable, low level clock and control signals.

Three full days testing at 70° C (185° F). SPECIFICATIONS

Capacity: I6384 bytes Addressing: 16K boundaries

Bus structure: S 100 - Plug compatible with IMSAI 8080, POLY 88, , BYTE -8, SOL

Address and Data Buffering: <200 uA, special high impedance buffers - less than one low power Schottky load

Access time: 350 nSec Memory chips: MM 5271 (National Semiconductor and others) 4K dynamic Dynabyte Inc. 4020 Fabian Way, Palo Alto Ca. 94303

for more information call or write to: R.H.S. MARKETING DEALER INQUIRES INVITED 2233 El Camino Real B of A & Mastercharge accepted Palo Alto, California 94306 (415) 321 -6639

® brings to the S100 Bus a state of the art, industrial quality memory system. Dynabyte 16K on a single board for $485.00, Guaranteed for 1 year.

Circle 122 on inquiry card. BYTE November 1977 105 www.americanradiohistory.com P2 TO FP INTERFACE BOARD IC46a I 7400 FP -X 800F 22 z 3 FP- SREG r ziI TO FIG 1.7

+5V FROM FIG 1.5 IC43d IC40c FP-RIL 14 r OK 74279 E> r I +5V 74279 101 I P2 C TO FP INTERFACE BOARD IC43a I 2 3 10K I I - 113 FP-R ¡¡ +5V C 19 FP -REST 2r___ - 4 151 SIA I 34 E> J TO FIG I.6 ¡1101 L 3ó.. II 12 2 I I 10 B 12 55A SV II +5V I FP- IC40d HALT IOK L 13 TO FIG 1.5 74279 1 IC44e 110K r- 1 Lr IC441 113 FP-HL I REG LOADI 7400 151 E> TO FIG 1.5 4 IC40o V 3 74279 SIB 6 r- +5V L IC41C 10K 2 i FP-IDL 14 74 2 79 4 P2 TO FIG 1.5 TO FP INTERFACE BOARD I ADDRESS OF I I s.12 1

3 I 9801Fí SOFTWARE IDLE I 31 I + 5V +5V L. . J 444IOK IC42d Z 1 IOK 74279 {S r 1 113 FP- 151 E> 0. RUN E DEPOSIT I TO FIG 1.5 3 I CLEAR C49b TO 0 II +5V /77 52A I I 110K +5V L------I14 IC41d 10K 74219 r 1 I 13 FP -DPNXT 15i +5V STEP II TO FIG 1.5 IC40b yçç4 I 74279 IOK Ì r !77/47 S4B çQQSV6 FP-STP I S I K L BI O J TO FIG 1.5 `I j` 14 4

52B p6 +5V ; L VOK +5V IC42a 74279 IOK 2r 14 FLAG SET +5V EXAMINE

Thr 2 +sv I 1 FP- EXMNE SEA ^ I TO FIG 1.5 IOK I I J IC42c . 12 74279 TO FIG 1.6 r r o FP- R 04

3 I 2

EXAMINE NEXT IC48a FP-FLGMD +5V IC47a TO FIG 1.5 110KIC4lb L_ 7400 7404 74279 Thr +5V IC42b 17 FP -EXNT 6; 10K 74279 -1 TO FIG 1.5 r I I 17

I I 554 61 I FLAG RESET I 5V I 1 I 1 53B I 5 1 I I L SV 5 566 6 1 I I 10K L 5

NOTE: ALL PULLUP RESISTORS ARE PHYSICALLY MOUNTED ON THEIR ASSOCIATED SWITCHES.

Figure 1.1: Switch debouncing logic. This is a detail logic diagram suitable for construction of Kompuutar. As in all the logic of this design, all resistors are 114 W unless otherwise noted, and standard TTL integrated circuits are used for miscellaneous functions. Debouncing is done with set -reset flip flops contained in the 74279 part, which we have noted in the discrete logic form internal to dotted lines. The flip flops can be wired out of gates (7400, 7410) if desired, should the 74279 be unavailable in the builder's parts bin. Integrated circuit power wiring for the entire design is summarized by IC number in table 5.

106 BYTE November 1977

www.americanradiohistory.com MSD We Beat the Systems! Now, Everyone Can Afford a Computer System.

Introducing: MSDD -100 Floppy Disc System intersections. Charts, graphs, or order entry specifications: forms are easy to produce on the video screen. MSDD -100 Drive: 89,600 byte maximum data capacity A third significant feature of the MSDV -100 Floppy Disc System software: (formatted) Video Display System is the ability to display 35 tracks continuous grey scale elements in any of nine Variable format: 128 - 1024 bytes / record levels in any of 1920 positions on the screen. This The user is provided with two diskettes. One is User Definable format: 16 - 2560 bytes record is especially useful for bar graphs and for grey available for user programs and files, the other / Track to track step time: 40 milliseconds scale graphics or animations, as well as in forms contains an array of programs for the system. Average access time: 600 milliseconds (Random applications. An 8080 monitor is provided that permits the read /write) Though these capabilities are standard and user to format diskettes and perform diagnostic Latency. 200 milliseconds provided with every unit, MSD has the capability checks on the system. In addition, the user is Power requirement: -+ 12 V regulated .9A typ, to generate and deliver MSD\' -100 \'ideo Systems provided with a short Bootstrap loader and a 1.1A max, 1.8 A surge. +5 V regulated .5A typ, with custom character sets as defined by the user. short memory -to -disc routines for dumping .7A max. This could include mathematical symbols, APL existing data onto a diskette. A complete set of Controller commands: characters, or Boolean logic symbols to name a disc input- output routines are provided to speed Read /Write record, Seek, Step in /Step out, Read few. program development around the MSDD -100 track, Write track (format), Read ID field, Internally, the MSDV -100 is a two board S -100 system. Force interrupt (conditional or immediate) based system which occupies 2K of RAM address A link is provided which permits a user to run Interfacing: space and two Input /Output ports. Being a bus MITS basic software with the MSDD -100 system. Controller to drive: 34 conductor ribbon cable device, the microcomputer can write to the screen This link, provided for MITS basic versions 8K (provided) as fast as it can to any memory. For diagnostic 3.2, 8K 4.0, and Extended basic (4.0/4.1), Interrupts: standard, internal vectors (switch purposes a memory test can be performed on the permits the user to save and load programs on the selectable) or external vectors screen. disc. The Basic link system is quite flexible, I/0: Programmed byte Input and Output Software support for the MSDV -100 is complete supporting three disc drives and cassette I/0. In Addressing: User selectable port definitions, with both machine language code, including fully addition, number matrices may be saved and six contiguous addresses. source listings, and a comprehensive loaded as named files (versions 4.0 and later occupies ports commented Controller power requirements: Basic software package implementing all only) . The link also supports sector level I/0, +8 \'ohs unregulated, 200 milliamperes MSDV -100 features. permitting fast random file operation. 630 128 maximum The assembly language drivers allow the byte records may be stored on one diskette. +15 Volts unregulated, 20 milliamperes sophisticated user to easily customize the system The MSDD -100 Floppy Disc System is a maximum for specialized applications. significant advance in low cost, high density mass -15 Volts unregulated, 10 milliamperes Programs are provided that permit the user to storage systems. Utilizing the industry standard maximum link the video system to high level programming Shugart SA400 minifloppyTM drive and a highly languages such as Basic. A link program, provided reliable LSI controller, the single card MSDD -100 in Basic, permits the user with no knowledge of Floppy Disc System represents a major assembly language programming to immediately cost/performance breakthrough for the hobbyist obtain video output from that software. The link and businessman. fully implements the forms capability of the Many features not provided on the larger disc MSDV-100, provides direct cursor addressing, and fully ISI -3A systems are standard on the MSDD -100 Disc is upwards compatible with the ADM video system. The controller will support up to three terminal. drives. The controller provides all disc timing functions, therefore no software timing loops are required. The controller also supports three rrticxo modes of programmed 1/O (no DMA). First, there rnRIEM DEVsvstrsEIOP is simple command I /0. Second, there is a Introducing: 2765 Colorado Blvd 110 Deaver.00 80222 standard interrupt with all command completion MSDV -100 So Suite (303)7567411 and data request conditions interrupting to "Beat the System" Restart 7. Third, the controller has the switch Video Display Systems: Introductory Price. selectable facility to vector the processor to any of The Video Display System is a high quality 80 the Restart locations upon generation of an Micro -Floppy Disc System 5499 character, 24 line video output device for the (Assembled) 5599 interrupt. This allows data requests and command Video S -100 bus. Many advanced features have been Display System 5285 completion interrupts to be vectored separately. (Assembled) 5385 incorporated which are normally not found on This type of interrupt structure is ideal for Additional Drivers 5350 ea. units costing many times the price. multi-user / multi- tasking applications. Diskettes 54.25 ea. The character set includes upper and lower The controller design is totally synchronous, To place Order. send check money order or BA case characters as well as full punctuation. Any or MC Card # with exp. date and signature. requiring no one shots ". Ease of maintenance is character can be underlined, a feature useful in Uncertified checks require 6 weeks process- evidenced by the fact that there are no ing. Phone orders accepted. work processing. A character can also be made to adjustments required for operation. Please Send me the following: AMOUNT blink at a user selectable rate, often used for The controller is a single board design, with alarm or warning situations. Additionally, a very low power consumption. character can be made to appear brighter than For ease of construction, the kit version normal or to appear in a reverse field (black on TOTAL. provides: white), useful in order entry or other applications Name 1) Preassembled cables to highlight text. Address 2) Quality IC sockets Also included in the MSD \' -1 00 is the ability to City, State, Zip 3) Silk Screen legend generate high quality forms overlays. Margins can Send me more information 4) Solder mask be either single or double wide with continuous

Circle 100 on inquiry card. BY Nuvernher 1977 107

www.americanradiohistory.com +5V TO FIG 1.6 I0K FP-RE05 S7

OS Figure 1.2: Flag selection switch. The control panel service program of S7A I I4J Kompuutar uses the binary encoded 3 bit value on the output of this switch I ` to determine which processor flag is to be set or reset using an appropriate function selection. This switch is a rotary switch which has three poles and + 5v eight positions.

57B

+5V

+ 5v

Figure 1.4: Display data selection switch. The control panel service program uses the binary encoded 4 bit value on the output of five possible words for default display from the control panel scratch pad located at addresses 8000 to 800F. The five addresses selected are for the accumulator (0), X index (1), Y index (2), stack register (5) or data register (D).

+5V

FIG 1.7

10K FP-DSBO

O+5V

10K FPD5B1 THO(4)+SV

524C

524D

STACK

Y REG Figure 1.3: panel data switches. The data is ac- i Front entry entry of static X REG complished by 16 toggle switches. These switches are connected to either ACCUMULATOR logical 1 0-5 V through a 1 K resistor) or logica/ 0 (ground). DATA

108 BYTE November 1977

www.americanradiohistory.com DO IT WITH 16 BITS

DO IT BETTER

With the language that is best suited for your application: Business programming in COBOL, Scientific and Engineering in FORTRAN IV, Educational in BASIC, and Systems Implementation in our MACRO ASSEMBLER. o With hardware that will grow with your application, and protect your software in- vestment.

DO IT FASTER

With extensive support and utility programs to speed development of your applica- tions software. These include a Diskette Operating System, Relocatable Linking Loader, Load Module Library Editor, Symbolic Debugger, and Text Editors.

With a 16 bit processor that includes hardware multiply and divide, real -time clock, and peripherals like single or dual diskette subsystems with integral DMA con- troller.

DO IT WITH A MicroNOVA® BPI If you are serious about computing, call or write today. BPI Inc., 2205 East Broadway. Suite 6. Tucson, Arizona 85719 (602) 326 -6975

,:g) NOVA is a registered trademark of Data General Corporation, Southboro, Massachusetts Circle 15 on inquiry card.

www.americanradiohistory.com E z á á LL LL

-1 o

to O a

J O U

o m a moaa Do Ur

N bo ti NO N M)

m m

ú ron0 a O N_ - a INI rn U r ui o-- 4 + + M

a L 1D r N o) aT N O N - Q o m U O Q N Q J Q O O o o o J Oá ç J O in - Z u w _ CC r- O JY Jw Úa 1,-004'10N- o U o r Q m u x K) rr) = a N n a of rn . m l0 O a NO°O O .C1O I. rOaa ur áOl Ur m O

w f- o a z I- f- X E E n`n. f- X á J Q J w o w w U U w á á á á á á Q LL LL LL LL LL LL LL D. X wQK o-o-o-o.o-a- a,?m--NO~O O

110 BYTE November 1977

www.americanradiohistory.com Figure 1.5: Control logic for front panel functions. This logic generates the function request code (read from address 8010 bits 0 to 2), and controls the NMI line of the 6502 to implement single step execution of the processor.

P2 TO F P INTERFACE BOARD . .L FP -SELO

25 FP-SEL I

FROM FIGURE: IC69 FP-RE00 6 74153 SI 1.5 E> AI FP-LBO 5 SO A2 1.2 FP-HBO 4 A3 ( 3 FP-RAMO 17 E> A4 9 FP-REOI 10 P2 1.5 BI A E> IC74 TO FP INTERFACE FP-LBI II DM8835 TRISTATE 82 BOARD 1.2 FP-HBI 12 BUFFER 83 14 INTERFACE { FP-RAMI 13 17 15 FP-DO E> B4 13 II 15 2 FP-DI 10 /77 5 FP-D2 6 FROM FIGURE: IC70 2 2 FP REQ2 6 74153 SI v 1.5 [> 14 FP-D3 FP-LB2 5 SO A2 FP-HB2 4 I2 A3 { FP-RAM2 3 1.7 1=> A4 7 FP-RE03 10 A 1.1 E> BI FP-LB3 I I (E>> B2 9 12 FP- 12 B B3 FP-RAM3 13 1.7 C' B4

15 m FROM FIGURE IC71 2 FP-REQ4 6 74153 SI 1.1 E> AI 14 FP-LB4 5 SO A2 9 1.2 ( FP-HB4 4 A3 IC74 FP-RAM4 3 P2 17 f:' A4 7 DM8835 TRISTATE FP-REQ5 10 A TO FP INTERFACE 1.3 BI BUFFER L> FP-LB5 INTERFACE BOARD (E> II B2 1.2 ( 14 FP-HB5 12 15 FP -D4 E> B3 13 FP-RA M5 13 17 p> B4 11 12 FP-D5 L15 10 5 FP- D6 .m 6 IS

FROM FIGURE: IC72 2 FP-D7 FP-RE06 6 74153 SI 1.3 I'' 14 FP-LB6 5 SO A2 1.2 ¡( FP-HB6 4 A3 FP-RAM6 3 17 A4 C. FP-RE07 10 1.3 C> BI FP-LB7 II B2 1.2 FP-HB7 12 B3 FP-RAM7 13 1.7 C> B4 o N fr, 15 z z z z z ó ó ó P2 m TO FP INTERFACE IC58b a. a_ BOARD 7400 FP -BSOUT 4 2 6 TO FIGURES FP-R /W 12 5 QVC)Q0CN/Q 1.7, 1.8o -I.8c 13 1(0' s. IC48 7404

Figure 1.6: Data source multiplexer and bus interface. The sources of data read from the front panel logic are four: the two 8 bit data entry switch registers of figure 1.3, the 8 bit control request word from figure 1.5, and the output of the scratch pad programmable memory (lines labeled "RAM') from figure 1.7. These are selected by a 2 bit addressing code generated on the front panel interface board of figures 2.

BYTE November 1977 111

www.americanradiohistory.com Text continued from page 102 dress selections, plus the selection signals which are used to control the data input order byte of the data entry switches. The multiplexer found in figure 1.6. The selec- eight toggle switches of this switch register tion signals are generated by the priority are used to enter a byte into the data bus encoder IC35, and are used to pick one or into the least significant byte of the of the four sources for routing to the bus address register which is maintained by interface gates IC73 and IC74. These gates the control panel program in its scratch connect to the backplane data bus from pad. These toggle switches are located the front panel via P2's connecting cable at address 8011 in memory address space. between the front panel and the front The third source of data for the control panel interface board. panel program is the set of toggle switches The front panel also includes several which define the most significant byte of possible outputs for data. In addition to an address. These eight switches are located the input possible from the scratch pad, at address 8012, and are only used for the processor can address and write data address inputs. to the scratch pad in any one of the loca- The last source of data is the output of tions 8000 to 800F. The actual contents the 16 byte scratch pad memory in the of the data in the scratch pad can be dis- control panel. The scratch pad responds played for addresses 8000, 8001, 8002, to addresses 8000 thru 800F. 8003, and 800D by moving the rotary The address decoding logic is found in switch S24. This switch (see figure 1.4) figure 2.1. The outputs of this decoding logic include miscellaneous individual ad- Text continued on page 116

P2 TO FP ASSEMBLY BOARD

I F P -R /W 20 7410 +5V +5 +5V +5V 9_ A A A A E> X800X IO IC53 DD4

I m2CLK 10

FROM FIGURE 3 1.6 WE DD7 -DTIN7 II bFPF P-DTIN6 6 2I IC62 TO FIGURE FP-DTIN5 10 7489 IC65 1.6 3I 7416 FP DTIN4 12 4I 5 FP -RAM7 10 FROM FIGURÉ

1 FP-RAM6 1.1 20 FP -SREG 9 15 8 1740012 FP-RAM5 TO FP FP -RDY 10 IC58c P8 14 30 INTERFACE 35 IC58d C E> BOARD 3 3 FP-RAM4 0 FROM FIGURE ME SL 1.4 2 -DSBO IY if>FP IA IC62 1 74157 +5v +5v +5v +5 L.> FP-DSBI 5 A A 2A 2Y A A 1:, FP-DSB2 3A DD2 DDO lFP-DSB3 14 4A Y 3 IB &:.> FP-AO 3 6 2B 12 Y WE FP-A I 10 3B 13 FP-A2 13 IC 64 TO FIGURE 4B 14 IC64 C 7489 1.6 FP-A3 7416 I STROBE 15 DD3 D B 5 FP-RAM3 115 10 P2 I A TO FP ASSEMBLY BOARD 7 FP-RAM2 20 E> FROM FIGURE 1.6 -DTIN3 9 10 FP-RAMI FP II 30 t* FP -DTIN2 6 21 I I 13 12 FP-RAMO E>FP -DTINI IQ, 31 40 ©' FP-DTINO 12 41 IC60 ME 7416

Figure 1.7: Front panel scratch pad programmable memory. The front panel implements a 16 byte scratch pad programmable memory at addresses 8000 to 800F. This memory is used for data storage and for storage of a scratch pad program segment which is modified during execution of the frontpanelservice routines.

112 BYTE November 1977

www.americanradiohistory.com r.1JCßOTECK 5OfTWAFIE

Microtech, Incorporated continues to provide a number of sophisticated software packages for microcom- i puter users. Our software is created expressly for microprocessors, making it fast and memory- efficient. Our higher level language, MICROTECH BASIC, provides features never before offered for microcomputers, and our applications and documentation allow even first -time users to be up- and -running quickly and effortlessly. MICROTECH BASIC is designed with great flexibility. The structure easily accommodates driving a wide range of peripheral devices through BASIC commands. The language is constructed expressly for Z -80 based microcomputers, affording a truly sophisticated higher level language with a small (under 7 K without I/O drivers) memory requirement. Briefly, MICROTECH BASIC has all of these features:

FULL FLOATING POINT ARITHMETIC PACKAGE (Integer version also available, see below) COMPLETE STRING VARIABLE PACKAGE. TABLE DRIVEN VARIABLE STORAGE - reduced memory overhead for variable storage. MASS STORAGE DATA FILE HANDLING - allows data to be read or written to mass storage devices either sequentially or randomly. MASS STORAGE PROGRAM FILE HANDLING - a full directory based program file capability has been implemented. Commands available include PGRM (used to create a directory entry), SAVE, ERASE, LOAD, and RUN (load and go). COMPLETE PROGRAM OVERLAY CAPABILITY - a powerful programming technique that allows an executing program to load and execute any other program currently in the directory with all variable values passed to the new program.

MICROTECH BASIC is currently available in audio cassette form for Digital Group Z -80 systems. We have hooked MICROTECH BASIC to our own Phi -Deck driver software to create TOS (Tape Operating System) BASIC. Up to four Phi -Decks may be used for mass data and program storage. All tape control is provided through BASIC commands. This package, with all audio, video, and mass storage drivers, requires roughly 9.5 K. A minimum 18 K system is recommended MICROTECH BASIC will soon be available for many Z -80 based microcomputers and will include a variety of drivers for tape and disc mass storage systems. Write for complete details. APPLICATIONS APPLICATIONS APPLICATIONS MICROTECH has an extensive library of applications written in MICROTECH BASIC. As examples, we have:

BASIC GAMES - a collection of 10 programs on tape (to be used with our Phi -Deck BASIC). This is a comprehensive package including Casino Games, Educational Games, Space Battle, and Tic -Tac -Toe. PERSONAL CHECKBOOK MANAGEMENT SYSTEM - a group of programs that allows checkbook management, bank reconciliation, and tracking of deductibles for tax purposes. It uses a single tape drive for programs and data storage.

You may purchase our products through computer retailers or directly by mail. PRICING

TOS BASIC (for Digital Group Systems) - includes BASIC (with Floating Point), data tape formatting routine, and deck -to -deck copying routine - 28 page user's manual and free updating service $64.95 TOS BASIC (for Digital Group Systems) - Integer Version (arithmetic range +2, 147,483,647) - includes all of the features listed above $59.95 (specify 32 or 64 character video when ordering) BASIC GAMES - Program tape and documentation $20.00 PERSONAL CHECKBOOK MANAGEMENT SYSTEM - Program tape and documentation $30.00 i

Dealer and Manufacturer Inquiries Invited

11JCii T E E. 8ÚNSWICK, G14816I INCORPORATEDN

Circle 88 on inquiry card. BYTE November 1977 113 www.americanradiohistory.com (a) IC57 13 7416 f FROM FIGURE CLR 1.61 2 SDO OA FP -DTINO 4 IC56 A 74197 FP 10 \SDI -DTINI OB E> FP -DTIN2 3C FP II SD2 -DTIN3 C 9 f CLKI SD3 6 P2 CLK2 OD TO FP ASSEMBLY rn LOAD BOARD C> X8013 2CLK 10

+5V +5V IC57 A LOAD 7416 FROM FIGURE 13 CLR 11>0I0 /\SD4 1.6 1 OA IC59 I 4 l FP -DTIN4 A 74197 13 t012 SD5 FP -DTINS 10 OB ' FP -DTIN 6 3 I_2 " \ SD6 FP-DTIN7 II C

1 CLKI D12 3¡>4 SD7 6 CLK2 IC60 7416

(b)

FROM FIGURE Figure 1.8: Displays. The front panel dis- I IC65 1.6 1 FP-DTINO 5082- are is 7340 plays detailed here: (a) the output FP -DTIN I 2 H.P. latch used to drive LED indicators for the FP -DTIN 2 2 4 eight flag bits, located at hexadecimal FP -DTIN3 1E> X8014 address 8013. At (b) are the four digits of P2 2' I IC44a ENABLE address addressed TO FP INTERFACE 1 hexadecimal lamp display,

BOARD 1 BLANK at locations 8014 and 8015. These displays 7400 X8015 4 as as z9 incorporate latching logic well the IC44b 6 FP -432CLK 5 needed decoding of 4 bit hexadecimal 10 patterns into an array LED dots. And at I ' IC66 of 5082- (c) are two miscellaneous indicators for the 1 7340 2 H. P. front panel. 2 4

-_--45 ENABLE )BLANK (c)

P2 +5V TO FP ASSEMBLY IC60 BOARD 7416 FROM FIGURE I 1 FPIRQX 5I* ID 1.6 1 IC67 6 FP-DTINO 15082- (INTERRUPT)

FP-DTIN I 7340 2 E> H.P. 1 FP-DTIN 2 2 RD 4 FP-RDY 9 C> FP-DTIN3 (RUN) 5 ENABLE BLANK

FROM FIGURE 1.6 I IC68 I FP-DTIN4 E> 5 082- FP-DTIN5 7340 4 2 FP-DTIN6 H. P. E> 4 FP-DTIN 7 E> 8 ENABLE BLANK E> FP-RDY TO FP INTERFACE B OARD

114 BYTE November 1977 www.americanradiohistory.com Application Software!

Nj N 1s1( You can tigP1lV':\RF: buy software I.I ItRARI

VLUM 111 from anybody - but ours works in your system. We only sell one product, Quality. ttA51C We have been in business for over nine years building a reputation 5c1F 1a for providing a quality product at nominal prices NOT what the t11tNR' - 1,1 traffic will bear. Our software is: Versatile - as most programs allow for multiple modes of VOLUMf. IV operation. o.. Tutorial - as each program is self prompting and leads you through the program (most have very detailed instructions contained right in their source code). I BASIC Comprehensive - as an example our PSD program not only SOFTWARE computes Power Spectral Densities but also includes FFT's, Inverse -transforms, Windowing, Sliding Windows, simul- 1.1 I3RARY taneous FFT's variable data sizes, etc. and as a last word our software is: VOLUME II Readable - as all of our programs are reproduced full size N for ease in reading. Virtually Machine Independent - these programs are written in a subset of Dartmouth Basic but are not oriented for any one particular system. Just in case your Basic might not use one of our functions we have included an appendix in o, Volume V which gives conversion algorithms for 19 differ- 1tiSSl0 ,ai\s ent Basic's; thats right, just look it up and make the sub- stitution for your particular version. If you would like to V convert your favorite program in to Fortran or APL or any other language, the appendix in Volume II will define the statements and their parameters as used in our programs. Over 85 % of our programs in the first five volumes will execute in most 8K Basic's with 16K of free user RAM. If you only have 4K Basic, because of its' lack of string functions only about 60% of our programs in Volumes I thru V would be useable, however they should execute in only 8K of user RAM. All of our programs are available on machine readable media. For those that have specific needs, we can tailor any of our programs for you or we can write one to fit your specific needs.

Vol. I - $24.95 Vol. III - $39.95 Bookkeeping Advanced Business SCIENTIFIC RESEARCH Games Billing, Inventory 1712 -B Farmington Court, Crofton, MD 21114 Pictures Investments Payroll Phone orders call (800) 638.9194 Information and Maryland residents call (301)721.1148 Vol. II - $24.95 Vol. IV - $9.95 0 masrehar, Math/Engineering General Purpose Add 51.50 per volume handling, all domestic shipments sent U.P.S. except Plotting /Statistics APO and P.O. Box which go parcel post. Foreign orders add $8.00lvolume Basic Statement Vol. V - $9.95 for air shipment and make payable In U.S. dollars only. Def. Experimenter's AVAILABLE AT MOST COMPUTER STORES Program BAKKAMERIGRO Master Charge and Bank Americard accepted. Our Software is copyrighted and may not be reproduced or sold.

BY Tt uubcr 1977 115

www.americanradiohistory.com Text continued from page 112

defines an address value which is presented to the 7489 scratch pad memories IC61 and IC63 by 74157 multipelexer IC62 when the scratch pads are not being referenced by the processor. Since the control panel program references the scratch pad only occasionally, the normal state is an address selected by S24 determining which of the five scratch pad locations is seen in the dis- play lamps for scratch pad data. Thus the scratch pad memory has several potentially

visible bytes of memory address space and acts as an output device. A second output device is an 8 bit data latch whose outputs activate eight discrete LED devices. This device, located at address m P 8013 in memory address space, is used to P ó O 0 Oñ W display the processor's status register bits. O O ^ On OO The front panel control program is re- nn sponsible for maintaining current informa- on Q w tion in this display (as is the case with all PP mp O m P 0 m n e the display outputs). UÁ m Vñ V O N o o Address display information is latched m v,O 0m -o 4 ó m o No n into four digits of hexadecimal display Om x no a by Packard -7340 NP VP Ñ M On aoOuQ ^n provided Hewlett- HP5082 úñ a m mñO ú Om Á parts, IC65, IC66, IC67 and IC68 in figure O, N n m Om Mo a 1.8b. Each of these displays has a built -in On a0 a o 4 data latch m Om _o Qo LL")- bit which retains information O. NO Qo n _n x no V W defined by writing to the memory locations rn® ñ O On

O O Figure 1.9: Front panel mechanical layout. 0 0 This is a detail drawing to scale of the phy- sical layout of the front panel as seen in the photographs, along with the front panel N o electronics board which is mounted on standoffs behind the panel.

NOTES:

O 1. All ICs except locations El and E2 are Texas Instruments SN74XXX series TTL logic. El and E2 are three -state bidirectional bus drivers made by National. 2. Switches S1 thru S6 are Alco model MTF- 206SA. 3. Switches S8 thru S23 are Alco model MTF -106D. 4. Switch S7 is a Centralab model PA -2009 rotary. 5. Switch S24 is a Centralab model PA -2011 rotary. 6. RP, ID, DDO to DD7 and SDO to SD7 are discrete LED displays. HP model 5082 -4860. óO 7. X1 -X4 are dot matrix hexadecimal LED dis- 'O plays. HP model 5082 -7340. 8. All pull up resistors shown on schematics in conjunction with front panel switches are mounted on those switches.

116 BYTE November 1977

www.americanradiohistory.com SCELBIs new 'BOBO' STANDARD ASSEMBLER

based 8080 CPU on an 8080 language for an written in symbolic Assembles programs FUNCTION: should be RAM), (of which at least 1K minimum of 4K memory ter with code output device. REQUIRED: 80system.80r device; an object HARDWARE Cémplisting u¡nut p will allow keyboard/printerrintcr keyboard/CRT willmemory device such aa system console n executive or directly HARDWARE:HARD A of the program to assemble OPTIONAL control table length, or capability convenient expanded symbol beyond 4K will allow memory. into ill be utilized. Each I/O routines for whatever adapting program provided I/O driver r I/O d v ease REQUIRED: User program SOFTWARE is linked to the systems. (hexa-hexa to individual 01 through OA resides in pages in the manual OB and OC (hexa- listing aprovided part of OA, all of assembled octal). Pages 00, p for user provided UTILIZED: through 012 are left decimal - 001 and 014 octal) tablep o ided of 012, 013 up for symbolay decimal - 000, part 015 octal) on Pages OD (hexadecimal - memory)' routines. in systems with sufficient direct assembly areas industry (or as oses, standard for purposes, etc.) in, and accepts ,B; INX H: CALL; program is written as a tbly which UTILIZED: This for the 8080 CPU compatible mnemonics MNEMONICS accepted mnemonics use of special 8008 discontinuingrams SCELBI is in the past.) [Note: 8080 programs characterized its DB (data have SET (define a name), (stop assembly), (originate), END pseudo- operators. cep is the ORG or double byte) and DW (data word PSEUDO -OPERATORS: by DS (data string) object byte), to produce assembled listing in two passes obtained. Listings processes a source listingpto to be The program allows an assembled also dspl the OPERATION: third ppass The program will PROGRAM al program can process oofainedobtained y table request. The from may be at the opoperators may be controlled the symbol Program operationop by source or multiple files. panel switches listings as single or through computer source executive commands device using the program. a console locations within to appropriate charac- jumping may be 1 to 6 charac- permitted. Labels leading variable length fields with or without len to use, and octal numbers allows both hexadecimal directly as data), SOURCE FORMAT: in length, accepts t ASCII characters ters capability (can accept zeros, has "literal" register operands. numbers as CPU of of letters of the opera tion manual describes two tradition! The program and a ti in the SCELBI all major routines, Thorough - discussions of notation ). presents detailed and on DOCUMENTATION: the assembler, provided in hexadecimal t may be listings (one provides a e in octal completely assembled and even operating instructions course it includes assembler! Of produced by the for loading programs all refe- organized and written area has been reccuse sig program that some RAM FEATURES: labels, it may ROM pprovided SPECIAL rencesms assigned reside may even be reassembled initt memory. It symbolntbol for scratch pad and area is available described in the docu- for this assembler ((as "hexa- the object code widely accepted paper tape of is provided in the a- object code tape p of the progprogram is available. source listing OPTIONS: mentation) complete, commented on punched paper Also, the straight ASCII format decimal format." is available in Additionally, opaque in the documentation for ease in handling. readers now presented tapes are providedrovided optical ertaptape Fan-fold paper use of low cost to the tape. to facilitate the optional paper tape is dupesupplied are sold only as NOTE: PaperPap tapes widespread use. documentation.

Scelbi's 8080 Standard Assembler: $19.95 Optional object code on punched paper tape, specify 8080SA -OPT: $10.00. Optional commented source listing on punched paper tape, specify SCUM (OMLIJUR 8080SA -SPT: $39.00. (ONSIJETING INC. Post Office Box 133 PP STN OPTIONAL PAPER TAPE NOW AVAILABLE! Milford, CT 06406 Dept. B

Circle 124 on inquiry card. BYTE November 1977 117

www.americanradiohistory.com aJ f y w¢U W o _ N O O O O aó m m m m Wa 2 r _- _-- --__, ó

LL

4

ÑP LL

r M N - O J > W m °--n/W an + _- a___J O L_ to z 0 LLx ÑM LL O uÁ NOO m ,rm r21 x Y" PTMT112

M ? -U P O1 Q O o O m

xXXA A xXMX M xoXX o oxXX O 1%1 J O a U 2 O O O O O O O 0 o a

O O O O

P

U U U U P 0

XX X00 Xxx00 xxx00 xxx0b XXOX0 XXOXO. xXOXI) AZXX0 xzxxb LXXxO XfXXo X x x 0 0 o x x X b XXXI) xo X X X o o o o 4XXX P X X X zxXXO N X X X X X X O IxxxO IXXxI) X X O X 0 OxxxI) o O Y P M N A vl N M P A > o_> > > > > > O) m o N Ñ ¢O U ? U Q UQ or A 3Um0 N M _ N M OWJOMU ¢ uúcOUm a O D U a m u O o o a m O 000.0 iO P YI O P N m P h M P l O M 0- 0- vl

NO x ° J o ¢ OWW ¢ P `0`2 ZW

O r P M - O á a á a a a a a a a a a a a a a a á á a á á á a á á á á á á á a á LL m m m m m m W LL LL LL LL LL LL LL LL o--o n n- -namd,- ono onn-- LL N N W O H Wtn ¢ ¢ ¢ > LL U LL >W O m- Za

118 BYTE November 1977

www.americanradiohistory.com Text continued from page 116 up when the machine is in the run mode, and the interrupt indicator remains lit while an interrupt is pending. Interrupt control logic is contained in the devices requesting an interrupt, with the processor's priority encoder defining the backplane signal I RQX (backplane pin 12) which indicates that some interrupt is pending (and also signals the processor through its I RQ input, pin 4.) Figure 2.2: Buffering of processor control signals at the front pane/ interface Thus when interrupt driven 10 is used, module. the interrupt indicator lamp will flicker if appreciable interrupt processing wait states J2 occur as various devices request attention. TO FRONT PANEL TO BACKPLANE

I 7438 Other Front Panel Functions I FP RESET 34 PANRST zo The front panel logic includes logic of 2 the ready (RDY) and nonmaskable interrupt

(NMI) timing, shown in detail in figure 1 .5. FP-NMI 9 These lines are used to generate signals 36 FP-NMI IC21 b 21 which affect the processor in a manner 1 0 IC22 very similar to interrupts. The HALT and 7414 2 single STEP switch are used to generate FP-RDY I 4 FP-RDY 19 signals for these lines. This timing logic IC21 c 1 5 causes the 6502 processor and its control program to implement fairly conventional single stepping and program halt or restart BACK PLANE PROCESSOR CARD functions. HALT or STEP switches are used to cause the processor to complete the present instruction, then execute one more instruction. Any other switch activated J2 on the front panel causes this logic to allow TO FRONT PANEL the processor to complete only its present IC 22 instruction. The hardware protocol of 7414 this logic locks out all front panel functions BP-IRQX 9 8 FP-IRQX when the processor is running, except +5V for the HALT switch. 15 R14 The front panel's interfaces to human 560 are 4 FP-CLKI fingers through various function BP-OCLKI O II 0 3 5 6 switches. These switches are debounced +5V r* using set -reset flip flops which come four 14 R15 to a package in the 74279 part. The de- 560 bouncing logic guarantees that only one BP-OCLK2 O 13 12 FP-0CLK2 pulse is received for each activation of a switch. 0+5V RI Getting Kompuutar Into Operation 560 BP-R/W O 11 1013 FP-R/W The operation of the front panel's control r*- D> logic with respect to the actual processor IC20 7414

Figure 2.1: Front panel interface module address decode logic. This logic decodes the several addresses in the 8000 to 801 F range which are used by the front panel design of Kompuutar. Since 3 bit decoders are used, octal intermediate terms are used to symbolize the outputs of the 74138s prior to logical sums performed by the 74260 OR gates. Outputs of the circuit are discrete select lines for several addresses, plus two source selection lines for the data bus input multiplexer of figure 1.6.

BYTE November 1977 119

www.americanradiohistory.com Our Dealers ...

ARIZONA HAWAII OHIO Personal Computer Place, Mesa (602) 833 -8949; Bits Microcomputer Systems, Honolulu (808) 536.5288; Cincinnati Computer Shop, Cincinnati (513) 733- & Bytes Computer Shop, Phoenix (602) 242 -2507; Small Computer Systems, Honolulu (808) 946 -3859 5706; Cybershop, Columbus (614) 239 -8081; Data Byte Shop West, Phoenix (602) 942 -7300; Byte Shop, Domain, Dayton (513) 223 -2348; Dayton Computer Tempe (602) 894-1129 ILLINOIS Mart, Dayton (513) 296 -1248; Byte Shop, Rocky Computerland, Arlington Heights (312) 255 -6488; River (216) 333 -3261 ARKANSAS Champaign Computer Co., Champaign (217) 359- 5883; Numbers Racket, Champaign (217) 352 -5435; OKLAHOMA Computer Products Unlimited, Little Rock (501) 371 Bits, Bytes and Micros, Oklahoma City (405) 947- 0449 itty bitty machine company, Evanston (312) 328- 6800; Nabih's, Evanston (312) 869 -6140; Bits and 5646; High Technology, Oklahoma City (405) 842- 2021 CALIFORNIA Bytes, Posen (312) 389 -7112; American Microproces- sors, Prairie View (312) 634 -0076; Lillipute Computer Microcomputer Center, Anaheim (714) 527 -5261; OREGON Mart, Skokie (312) 674 -1383 Byte Shop, Berkeley (415) 845 -6366; Byte Shop, Bur- Computek, Beaverton (503) 285 -0658; Real Oregon bank (213) 843 -3633; Sunshine Computer, Carson INDIANA Computer Co., Eugene (503) 484 -1040; Byte Shop, (213) 327 -2118; Computer Center, Costa (714) Mesa Data Domain, Bloomington (812) 334 -3607; Data Portland (503) 223 -3496 646-0221; Micro Computers, Fountain Valley (714) Domain, Fort Wayne (219) 484 -7611; Byte Shop, PENNSYLVANIA 963 -5551; Byte Shop, Fresno (209) 485 -2417; Bits n Indianapolis (317) 842-2983; Computers Unlimited, Bytes, Fullerton (714) 879 -8386; Computerland, Hay- Indianapolis (317) 849 -6505, Data Domain, Indianapo- ByteShop, Bryn Mawr (215) 525 -7712; Personal Com- ward (415)842- 2983;Computerland, Inglewood (213) Place, lis (317) 251 -3139; Home Computer Center, Indiana- puter Corp., Frazer (215) 647 -8460; Electronics 776 -8080; Byte Shop, Lawndale (213) 371 -2421; polis (317) 251 -6800, Audio Specialists, South Bend Pittsburgh (412) 821 -2223 A -VIDD Electronics, Long Beach (213) 598 -0444; (219) 234-5001 Byte Shop, Long Beach (213) 597 -7771; Computer- SOUTH CAROLINA land, Mission Viejo (714) 770 -0131; Computer Em- IOWA Byte Shop, Columbia (803) 771 -7824 porium, Newport Beach (714) 540 -8445; Computer Micro Bus Inc., Cedar Rapids (319) 364 -5075 Mart, Orange (714) 633 -1222; Byte Shop, Palo Alto TEXAS (415) 327 -8080; Byte Shop, Pasadena (213) 684- KENTUCKY Young Electronics, College Station (713) 845 -7015; 3311; Executive Office Equipment, Pasadena (213) Data Domain, Lexington (606) 233-3346; Computer - K A Electronic Sales, Dallas (214) 634 -7870; Personal 449 -1776; Byte Shop, Placentia (714) 524 -5380; land, Louisville (502) 425 -8308; Data Domain, Louis- Computing Place, Dallas (214) 620 -2776; Computer Dunston Enterprises, Redding (916) 246 -1170; Byte ville (502) 456 -5242 Terminal, El Paso (915) 532 -1777; Electronic Speci- Shop, San Diego (714) 565 -8008; Computer Center, alty, Houston (713) 665 -0477; Houston Computer LOUISIANA San Diego (714) 292 -5302; Computerland, San Diego Mart, Houston (713) 649 -9224; The M O S, Houston Computer Electronics, Baton Rouge (504) 926 -6169; (714) 560 -9912; Byte Shop, San Francisco (415) 431- (713) 527 -8008; Microtex Inc., Houston (713) 780- Computer Shoppe Inc., Metairie (504) 454 -6600 0640; Ximedia, San Francisco (415) 566 -7472; Sunny 7477; Computer Mart of West Texas, Lubbock (806) Sounds, San Gabriel (213) 287 -1811; Byte Shop, San MARYLAND 765.7134; Neighborhood Computer Store, Lubbock Jose (408) 377 -4685; Computer Room, Jose (408) San Computerland, Rockville (301) 948 -7676; Computer (806) 797 -1468; Micro Store, Richardson (214) 231- 226 -8383; Computerland, Leandro (415) 895- San Workshop, Rockville (301) 468.0455 1096; Computer Shop, San Antonio (512) 828-0553 9363; Byte Shop, San Rafael (415) 457 -9311; Com- puter Electronics, Santa Barbara (805) 965 -7984; MASSACHUSETTS UTAH Pete's Electronics, Santa Barbara (805) 965 -8551; Computer Warehouse Store, Boston (617) 261 -1100; Byte Shop of Salt Lake, Salt Lake City (801) 355- Affordable Computer Store, Santa Clara (408) 249- Computer Mart, Waltham (617) 899 -4540 1041 5834; Byte Shop, Santa Clara (408) 249 -4221; Com- puter Power and Light, Studio City (213) 760 -0405; MICHIGAN Byte Shop, Tarzana (213) 343 -3919; Byte Shop, Computer Mart, Royal Oak (607) 273 -3271; Computer VIRGINIA Thousand Oaks (805) 497 -9595; Computerland, Tus- Systems, St. Clair Shores (313) 779 -8700; General Computer Systems Store, McLean (3011 460 -0666; tin (714) 544 -0542; Upland Computer Labs, Upland Computer, Troy (313) 362 -0022 Media Reactions, Inc., Reston (703) 471 -9330; The (714) 981 -1503; Byte Shop of Diablo Valley, Walnut Computer Shop, Virginia Beach (804) 428 -6420; Creek (415) 933 -6252; Byte Shop, Westminster (714) MINNESOTA Home Computer Center, Virginia Beach (804) 340- 894 -9131; Computer Playground, Westminster (714) Microprogramming Inc., Burnsville (612) 894 -3510; 1977 898 -8330; Computer Components, Van Nuys (213) Computer Room Inc., Egan (612) 452 -2567; Com- WEST VIRGINIA 786 -7411 puter Depot, Minneapolis (612) 927 -5601 Computer Corner, Morgantown (304) 292 -9700 COLORADO MISSOURI WISCONSIN Byte Shop, Boulder (303) 449 -6233; Mighty Mini Compu Systems, Rockport (816) 744 -2502 Madison Computer Store, Madison (608) 255 -5552; Company, Denver (303) 674 -5753; Byte Shop, Engle- NEW JERSEY Milwaukee Computer Store, Milwaukee (414) 259- wood (303) 761 -6232 Hoboken Computer Works, Hoboken (201) 420 -1644; 9140; Electronic Industries, Oshkosh (414) 235- CONNECTICUT Computer Mart, Iselin (2011283 -0600; Computerland, 8930 Morristown (201) 539 -4077; Mini Computer Suppliers, J R V Computer Store, Hamden (203) 281 -1453; CANADA Office Services of Hamden, Hamden (203) 624 -9917; Inc., Summit (201 1 277-6100 Orthon Computers, Edmonton, Alberta; Microtech Computer Store, Windsor Locks (203) 627 -0188 NEW YORK Computers, Winnipeg, Manitoba FLORIDA Computerland, Buffalo (716) 836 -6511; Computer Enterprises, Fayetteville (315) 637 -6208; Computer- ENGLAND Byte Shop, Fort Lauderdale (305) 561 -2983; Micro - land, Ithaca (607) 277 -4888; Ithaca Audio, Ithaca Haywood Electronic Associates, Northwood, tech Services, Gainesville (904) 376 -2371; Computer (607) 273 -3271; Byte Shop East, Levittown (516) Middlesex Hut, Hialeah (305) 558 -8080; Computer Store, Jack- 731 -8116; Computer Microsystems, (516) sonville (904) 725 -8158; Delta Electronics, Leesburg Manhasset SWITZERLAND 6273640; Computer Shoppe, Middle Island (516) (904) 728 -2478; Electronic Shop, Melbourne (305) I nstrumatic, Geneva 732 -4446; Audio Design Electronics, New York City 2594025; Byte Shop, Miami (305) 264 -2983; Econo- York, my Computing Systems, Orlando (305) 678 -4225; (212) 226 -2038; Computer Mart of New New WEST GERMANY Marsh Data Systems, Tampa (813) 886 -9890; Micro- York City (212) 686 -7923; Computer House, Inc., Digitronic, Wedel (Holstein) computer Systems, Inc., Tampa (813) 879 -4301 Rochester (716) 654 -9238, Computer Corner, White Plains (914) 949 -3282; Microcomputer Workshop, GEORGIA Williamsville (716) 634 -6844 Computer Systems Center, Atlanta (404) 231 -1691

C I1PFIC inc. Not affiliated with Vector General, Inc. 790 Hampshire Rd., A + B, Westlake Village, CA 91361 Telephone: (805) 497 -0733 Circle 157 on inquiry card.

www.americanradiohistory.com You Asked For It! You asked for the Intel 8080A CPU We gave you the \/ECC031 You asked for a real -time clock We gave you the VECC031

You asked for eight level vectored priority interrupts We gave you the VECzOR 1

You asked for a jump -on -reset and resident monitor We gave you the C:R I \MC You asked for the S -100 bus We gave you the IECCOR 1

You asked for an 18 slot fully shielded motherboard We gave you the \/CCzOi 1

You asked for a rugged, reliable chassis We gave you the VcCC01 1

Then ... You asked for the compactness and convenience of installing your mini - floppy

disk directly in the front panel NOW . . We give you the\l2CZOA 1+

www.americanradiohistory.com can be illustrated by walking verbally mable memory region. Next, press the front through a typical sequence of operations. panel's HALT switch, Si. Upon release First, let's assume that the machine is in of the HALT switch the debounce logic RUN mode, which is indicated by a low completes one HALT pulse which is proc- level on the output of the execution state essed by the command encoding logic flip flop, IC49b pin 9. This is the normal of figure 1.5. When the HALT line makes situation for a fully executing 6502 program contained in the system's main program- Text continued on page 128

J2 TO FRONT PANEL BUFFERS B ADDRESS PULL UPS +5V

44PINEDGE CONNECTOR 1

BACKPLANE I PROCESSOR CARD TO FIGURES I +5V 2.1, 2.4 I 13

IK 1 ® BP -A15 1

12

1 O BP-A14 1 II QQQQ

I IK BP-A13

I @pj 1 OIK BP-Al2 K 15 ® IK BP-AI I E> 14 IK I O BP-A1O

E> 13 IK ® BP-A9

12 IC 19 ' IK 7414 3>_4 FP-AB lE> C> 11 BP-A7 I > © 15DO6t FP-A7 10 BP-A6 O FP-A6

IS BP-A 5

I A 10 FP-A5 E> O e 14 BP-A4 ® IK FP-A4

IC 20 7414 FP-A3

FP-A2

BP AI FP-AI BP-AO FP-AO

J2 -- TO FRONT COMPONENT CARRIERS PANEL

DI D3 D5

Figure 2.3: Pull up resistors for backplane address lines, and inverting receivers for local use in the front panel interface.

122 BYTE November 1977

www.americanradiohistory.com ANY NUMBER OF FILES MAY BE OPEN (IN USE) AT ONE TIME THE NUMBER OF FILES AND SIZE OF FILES IS LIMITED ONLY BY THE SIZE OF THE DISC MERGING FILES REQUIRES NO EXTRA DISC SPACE NO WAITING FOR THE DISC TO RE -PACK LONGER DISC LIFE - MORE EVEN DISC WEAR

Our Basic Floppy Disc System (BFD -68) must, in all mod- SUPER ASSEMBLER: Inputs source code from file on the esty be called superb. It comes completely assembled with a BFD -68 disc system and outputs object code to disc file. As- disc controller that is plug compatible with the SWTPC 6800. sembly listings include alphabetized and tabulated symbol table. In fact all our products use the 6800 standard SS -50 (Smoke Price: SA -1 $29 on diskette or cassette. Signal 50) bus used by SWTPC. The cabinet and power supply Complete source listing included for both editor and assem- are capable of handling up to 3 Shugart Mini -Floppy Drives. bler. Order both for $53 and save $5. One drive is included in the price of the BFD -68 and others SMARTBUG -A CURE FOR MIKBUGITIS: A super smart may be added easily at any time. Or you may save money by Motorola -Mikbug replacement that preserves almost all Mik- ordering the dual -drive BFD -68 -2 or triple drive BFD -68 -3 (pic- bug entry locations so your present programs will run without tured). Price: BFD -68 $795, BFD -68 -2 $1139, BFD -68 -3 $1479, modification. Uses ACIA instead of PIA and includes many SA -400 Drive $360. additional features including a software single -step trace com- The BFD -68 includes our Disc Operating System Software. mand. A SMARTBUG listing is included and object code is Our software provides for a soft -sectored disc format consist- provided on a 2708 free with each P -38 series board pur- ing of 128 bytes per sector, 18 sectors per track and 35 tracks chased. Source listing available separately for $19.50. per disc. The software provides direct commands to name and NEED A FULL SIZE FLOPPY? Our P -38 -FF is a plug -in inter- rename files, transfer memory to disc and disc to memory and face card to the ICOM Frugal FloppyTM. It includes all the fea- to automatically jump to the starting location of any program tures of the P -38 -I plus one 2708 EPROM containing the ICOM loaded from disc to memory. The direct command names are: bootstrap software. Just plug the P -38 -FF into your SWTPC RUN, GET, GETHEX, CLOSE, SAVE, DELETE, APPEND, RE- 6800 and your ICOM into the P -38 -FF and you're ready to NAME, COPY, LIST, FIND, LINK and PRINT. In addition, the use the Frugal Floppy and ICOM's 6800 software package. Disc File Management subroutines are available to create files Price $299. under your program control. Our P -38 is an 8K EPROM board containing room for 8 2708's. Or, you may use it to hold up to 7 2708's plus your A bootstrap PROM is included on the controller board to ini- Motorola Mikbug or Minibug II ROM. The P -38 addressing is tiate the Disc Operating System which loads into a 4K memory switch selectable to any 8K location. Price $179. board located at 7000 or optionally at D000. Thus, you can be The P -38 -I contains all the features of the P -38 plus an inter- up and running from a cold start in just a few seconds. face to the Oliver Paper Tape Reader and our EPROM Pro- SUPER SOFTWARE grammer. Price $229. The PS -1 Power Supply Kit provides plus and minus 16 volts Free patches are provided for SWTPC BASIC version 2.0 and required for the P -38 series boards. Also, it allows a wiring Co- Resident Editor /Assembler. These patches allow the SAVE modification to be made to the 8 volt supply that will increase and LOAD commands to work with the disc or the cassette at its output by one volt. Price $24.95. your option. Our M -16 -A is a 16K single power supply STATIC RAM mem- SUPER EDITOR: Smoke Signal Broadcasting now has its ory system. The M -16 -A is fully buffered and requires only half own editor. It is a content oriented editor with string search the power of a similar size system using low -power 2102's. and block move capability. Changes may be made by referring With the M -16 -A, you can expand your system to 48K and still either to line number or string content or a combination of have room left for one of our EPROM boards. The M -16 -A is references. Naturally, it is designed for file transfer to and from switch selectable to any 4K starting address and hardware write the BFD -68. Price: SE -1 $29 on diskette or cassette. protect is included. Quick delivery. Price. $529. ALL OUR PRODUCTS EXCEPT THE PS -1 ARE COMPLETELY ASSEMBLED. BANKAMERICARD, VISA AND MASTER CHARGE WELCOME.

S on SIM BMA A AO P.O. Box 2017, Hollywood, CA 90028 (213) 462 -5652

Circle 128 on inquiry card. BYTE November 1977 123

www.americanradiohistory.com W Figure 2.4: A continuation of the front z panel interface module address decode logic. This is a 512 by 8 bit fusible link program- QZ N ° 00000-- mable read only memory module with de- code logic. This Intel 3624 -4 PROM contains the front panel monitor program of listing 1 and responds to addresses FE00 thru FFFF J -00000000 CL X in memory address space using decoding O CCa in the figure. Output is directly to the data LL m o w r bus, which is also connected to the back - o o o o o o o o plane and to the front panel assembly.

o rn tr In r-

o _ N M) 7 N t0 t` O O o 0 0 0 0

1) O - N rO e I[7 U r m N N tn Q Q Q Q Q Q Q Q Q U U U U m r t0 N e N) N O0) m Ñ N

¢ m O X LL N 7 Q co Ñ _u Z O - N ro Q Y] t0 r N M J ° W Q Q Q Q Q Q Q Q Q csi 1 W Ir 1 I 1 1 I U Z U a 7 a a a a a a a a a Q W O LL 11- LL LL LL LL LL LL LA- a_ z f tz )- oz o U 1-- Z -- to O N 7 Ir U LL t

m rOIIna) U M N

O o

á r r r` M U

e rt) e rn

O 10 N tT t`

e m elm

N tt r!1 W r Q N O r V N- O II] t0 N- Q Q Q Q Q Q Q Q Q Q < < Q Q Q Q Q Q Q I I I I I I 1 7 I 1 I I I I I I I I O a a aI a a a a a a a a a a a a a a a a m LL LL LL LL m m m CO m CO Ii CO m m m __--_Q_ Im _-QQ_Q_Q_-L LL

124 BYTE November 1977

www.americanradiohistory.com 24 channel Logic Analyzer plugs into your S -100 Bus

The DATALYZER 24 Channel LOGIC ANALYZER, complete with 2 cards and 3 sets of probes (only one set shown). The Databyte Logic Analyzer (DATALYZER) is a con- venient, flexible, high quality device. Efficient Features engineering has allowed a combination of features - 24 channels with 256 samples each. previously available in only the most expensive units. Display of disassembled program flow. Designed to plug easily into your S -100 Bus, the - Dual mode operation - external mode analyses DATALYZER is a complete system -- for only any external logic system. Internal mode monitors $495. Display of disassembled program flow is a users data and address bus. standard feature, not an extra. And the low price - Selectable trigger point anywhere in the 256 includes 30 logic probes, so you can hook up samples. immediately, without additional expense. 0 -16 bit trigger word format or external qualifier. - 10MHz sample rate (50ns min. pulse width) The DATALYZER is available in kit form ($495), and as a fully assembled device on two PCB's ($595). - Synchronous clock sample with coincident or Four -week delivery, a substantial warranty, and the delayed clock mode. Databyte, Inc. commitment to service make the User defined reference memory. - DATALYZER a worthwhile investment. Begin - Displays and system control through keyboard debugging by sending the coupon now. entry. ïµ` :7:a::: :eer.:7::i::a:':La - TTL Logic level compatible (15 pf and 15 Na +'I u:t:a 7:t:a:t:rixiata7 :ta19 :ra:Cl:r7::ra typical input loading). :r.aa: Y.ra:CC:::a!aC1 Iaa:a waw a:r.ar.r.:auma - Includes annotated source listing. walu arrAtr.ia.r.aII wa17: :af:F.rl.aarJJ la:a11 r.rB:rr:::11:Ea a:ri :ra:n:rrzr.ta i:: N:: 7e::8:rt:rr.raa f N:\:32 ""'N:N:r.!:7 J Displays in Hex Displays in Binary

Please send me the 24 Channel LOGIC ANALYZER

Kit - (manual included) $495.00 (Wis. res, add 4 % ) J Assembled and Tested (manual included) $595.00 I Display of disassembled I Operators' manual only $7.50 program flow. IDelivery of all items in four weeks to: I Name

IAddress I City State Zip Databyte, Inc. ITelephone I P.O. Box 14 Payment Enclosed: Check Money Order 7433 Hubbard Avenue BankAmericard I I Master Charge Exp. Date INumber Middleton, Wisconsin 53562 Tel: (608) 831 -7666 ISignature I

Circle 43 on inquiry card. BYTE November 1977 125

www.americanradiohistory.com Figure 2.5: Mechanical layout of the front panel interface module. This board is built on a standard Vector Electronic Co prototyping card, and plugs into the 44 pin backplane connector (two sides with 22 pins each).

VECTOR BOARD 3677 -2

HARDWARE MAP COORDINATES - -- 2 3 4 5 6 7

J2 CONNECTIONS TO FRONT PANEL

I 2 3 4 Al

14 8 5 6 7 8 9 10 II 12 21 22 23 24 25 26 27 28 IC36 74260 13 14 15 16 17 18 1920 29 30 31 32 3334 35 36 7 3738 39 40 A2

IC 18 INTEL A3 AS 3624 -4 IC35 A4 IC38 A6 A7 TRI -STATE 74148 74279 IC23 3 IC37 IC 34 PROM 7404 SPARES 74260 74260 512X8 BITS SPARE

BI B2 B3 B4 B5 B6 IC 39 1C29 IC30 IC31 IC32 IC33 7400 74260 74260 74260 74260 74260 B

CI C2 C3 C4

IC25 IC26 IC27 1C28 C5 C6 74138 74138 74138 74138 IC 24 IC22 C 7420 7414

DI D3 D5

PULL D2 PULL D4 PULL D6 UP UP UP RES. IC 19 RES. IC20 RES. IC21 D 7414 7414 7438

0 I 2 3 6 70 8 9 IÓ II 12 13 14 15 16 17 I8 19 00 211 22 \_ \ 11111/1/

Figure 3.1: Processor module diagram. The 6502 processor module contains the 6502, its data bus and address bus buffering logic, and logic of the priority interrupt structure which substitutes one of six interrupt vector addresses on the low order address lines based on the priority of an interrupt. This overrides the processor generated address of FFFE or FFFF for an interrupt via the IRQ input. IRQ interrupt vectors are located at addresses FFE4 to FFEE in memory address space, with six priority levels. Note that the BRK instruction maps to vector FFEO (see listing 1).

126 BYTE November 1977

www.americanradiohistory.com o lé 19 l' la lá 1.7, 1a l¢ 15 lá lá lá lá lá lá 1E5 I' lá 1:21:4 lá

auoi m J m °_ o o, w UOY U ¢ A 0 ID 11 mr A

m ro N) )n )a Yr

K1 ^mpD m a Q Q Q m m m mur N n O

ro

N Ll M O w o5 ° m á °p a -r r0 Uñ a n M N N ó r m m O n a n N= O n ? z á a á á a a á a á á U ¢

e s p) O r z ¢ W O o AAA O O O O O o ó Ñ o©©O© 000 A® O O O O O O

to, w O rUw aLL o© 000000 '-¢ ¢rN W r ?

min¢ mLL

m '//o/m\\\ I - =1=1°- // ` °-=mlm Nn

U r o+ a .. w a r m w a n N- o 0 0 ¢ ¿ O V Jr', W ZO Z 01 m Z Jm ¢ U o a w á2 9 O ¢O ¢ ¢ Z V D, Z ¢ V1 O O O Oó V UO m4 aw - --0-0-e-0 ANJAA Q--

BYTE November 1977 127 www.americanradiohistory.com Text continued from page 122 user program really means return to the front panel control program through the its rising transition at the end of the pulse, NMI signal generated here, so that the front the state of the execution state flip flop panel control program can use the register changes, causing the halt mode to be information stacked up during the interrupt entered. to update the external displays. The logic which drives the RDY and NMI After such a halt, the front panel address lines is responsible for assuring that the display shows the location of the next in- processor runs one extra instruction before struction which can be executed in the pro- dropping off into a halt. The process of gram just halted. By setting the data display going into a halt is accomplished through the nonmaskable interrupt. A halting of the Text continued on page 134

HARDWARE MAP

COORDINATESI I 2 3 4 5 6 7

VECTOR 3662

A4 ICI 21 PULL UP RESISTORS FOR PROCESSOR MOS TECHNOLOGY BOARD ASSEMBLY M C S 6502 A +5 V /1 PROCESSOR A (40 PIN SOCKET) COMPONENT CARRIER MAP 8 LOCATION O 560 BI B2 B3 B4 B5 B6 B7 IRAI 14 14 14 C 14 14 EI 0 C Q 560 IC 12 ICIO IC17 IC 2 IRQ5 M A l 7416 7416 7404 P R 74121 0 R 560 16 B IRQ2 N 1 E E N R 560 15 E3 1RQ3 7 7 7 T 7 pb 560 C4 C5 1R06 CI C2 C3 16 16 C6 C7 14 14 14 14 14 1C7 IC13 ICII IC IC5 1C4 IC3 7404 74260 74260 DM8835 DM8835 7414 7402 560 Is 0 IRQ4 C

Q 560 IS 7 7 7 8 8 7 7 IRQX D2 D4 3K la NMI DI 16 D3 16 D5 D6 D7 E7 14 14 560 1C15 1C14 IC9 IC8 RDY 74157 7410 74148 7416 D ® 3 K 12 PANRST

O 560 I I 8 7 8 7 S EI E3 E4 ES E6 E7 E2 C 16 C 16 C 16 O C 14 O C O C M A M A M A 1C16 Note: To reduce possible noise P R P R P R O R 7417 O R O small 0.01 pF by- E R problems, I I N N N 1 pass capacitors should be add- E E E E E E N R N R N R ed to board assembly. They T T T can be wire wrap installed 8 7 8 8 from +5 V pin to ground pin of every other IC socket.

q o 4 0 o I 2 4 5 6 7 8 9 10 II 12 13 14 15 16 17 18 19 20 21 22

1

Figure 3.2: Processor module mechanical layout. This map shows placement of the processor integrated circuits on a Vector prototyping card.

128 BYTE November 1977

www.americanradiohistory.com ah© ERIPHERAL VISION

Peripheral Vision is a young, fast -moving company Completely S -100 plug -in compatible that's dedicated to selling reasonably priced Drive is from Innovex (the originator of the floppy peripherals for various manufacturers' CPU's. concept) -- assembled and tested So now, when you build your microcomputer Disk operating system with file management system, you'll know where to look for all the system included on floppy peripherals that will make your system do what it's Cabinet and power supply optional supposed to do. Also in the works are many new products we'll be Peripheral Vision may be young, but we have some letting you know about soon, if you'd like to take a old- fashioned ideas about how to run our business. closer look. Like I/O cards, tape drives, an impact We know there are serious incompatibilities among printer --all for the S -100 BUS --and we're designing the various manufacturers' peripherals and CPU's. peripherals for a lot of other CPU's too. We want to get them together. And we want to bring We've given you a little glimpse of who we are and significant new products to market -- products what we're doing. If you want to see more, just fill in consisting of everything from adaptation the coupon below. instructions /kits for hardware and software to major new designs. Most important to our customers, Peripheral Vision is committed to helping you get along with your computer_ We'll do all we can to make it easy. Our first product is a real reflection of this philosophy. It's a full -size floppy disk for the Altair - PO. Box 6267 /Denver, Colorado 80206 303/777 -4292 Imsai plug -in compatible S -100 BUS. And it's available for as low as $750.00. Name Our floppy disk has many exciting features: Addna 1 interface card supports 4 or more drives Stores over 300,000 bytes per floppy Cly rSlalczip Bootstrap EPROM included --no more toggling or paper tape

Circle 114 on inquiry card. BYTE November 1977 129 www.americanradiohistory.com á ó SZIN nññ A zEz S 4Ó0ODw NI SVIB-W1

á O NI NI A11-W1<ç o 0 0 0 ó f f 2

Ñ

- > - 2 OQ

O O O O

mI- V Y P UP tD

O 0 i(O N N) NO N

0 N1 P N N r N1 N o Ig0 á á á á á á á á á á á o - mNO P r-WVOf U f Oi F J U yl ;

yO N t In m m(O P NO - o N I W o N M P YO U U Q Q Q Q Q Q Q Q Q Q QQ o: D: O p p p 0 tr Lc, N P m o Ñ Ñ e 0

2 m OO.00OOo V

W W U r Q P NOQWW mrLLmW fpZm N W

_ f0 O%

m P ÚP A

w PR¢Q Ora J m U Y Ll 2Q cow óm - NO n m m CO m m m m m m CO CO m m m m m m m tW Q Q Q Q Q Q Q O p p o p p p p W a a a a a O. a a a a a ? á a á m m m m m WOOD m m m m m á a CO m CO m m m m p-00000-----000000000000omo P

Figure 4.1: TIM interface module details. The MOS Technology TIM monitor program resides in a single MCS6530 ROM and peripheral interface circuit. The TIM interface module allows Kompuutar to be used with any serial terminal.

130 BYTE November 1977

www.americanradiohistory.com NOW! Every Business Can Own One

A secretary, accountant, and financial advisor all rolled into one for less than $1.50 per hour. Sound too good to be true? Let the ADMINISTRATOR do it for you.

Our "General Ledger Program" is a complete comprehensive business system designed to keep all of your company's records without the need for updating from other programs and there is no need to keep monthly tear Business sheets to be added together for the end of the year reports as our system will Software Too! provide you with year end account totals for cash, accural, hybrid and chart of Includes over accounts systems. This program generates over 30 major reports. Including: $75,000.00 of busi- 941's, P /L's, Balance Sheets, and year end account totals for filing Federal ness programs free Income Tax Schedule C's and /or 1120's plus a lease purchase plan and and that's only part 24 -hour field service in most areas. Hard to believe! For less than $250 /month of what we're giving you can lease your very own, nothing else to purchase. away. We built our ADMINISTRATOR I includes a miniature micro computer; S -100 Buss, with reputation providing over 65K of user RAM. No switches to set, Power -on operation, multiple I/O quality software at interfaces, line printer, Video Terminal, Double- Density Disk, Disk Extended affordable prices. Basic and applications Software diskettes complete with full documentation Now we are going to (includes General Ledger, Payroll, Word Processing, Medical A /R, A /P, do the same with our Engineering, Statistics, more) includes "Help" and Tutorial Software. Administrator I

ADMINISTRATOR I $8999.00* Additional 600K disks optional.

Compare at $30,000 for other micros or $70,000 for mini's 'Add $100 for Express shipping and handling No Purchase Orders - include 50% deposit with all COD orders. SCIENTIFIC RESEARCH 1712 -B Farmington Court Crofton, MD 21114 0 (301) 721-1148 Dealer Inquiries Invited

By T1 vc,rnii,e. 131 www.americanradiohistory.com MAP COORDINATES 4 5 6 3662

A

B3 B5

C 16 C 16 0 C OC M A MA P R P R 7 B 0 R 0 R J2* N I N I E E E E 8 14 N R N R T T CI 8 9 8 9

I 40 C4 C5

I 14 14 7 1 IC77 * MOS J3 TECHNOLOGY IC 75 IC76 8 14 MCS6530 LM 1489 LM1488 -004 TIM 7 8 7 8 D3

16 C D4 05 8 I 0 C 14 14 * M A J4 P R 9 16 OR IC 80 IC 81 D N I 74260 7400 EE N R 20 21 T 8 9 7 8 7 8

E2 E3 EI E4 E5 E6 J4: Parallel Interface I 16 16 14 I 14 1 14 14 Pin Mnemonic Description 1C84 IC85 IC83 DM8835 DM8835 1C82 IC79 1C78 E 7417 7414 7414 7414 1 DO 2 D1 3 D2 7 8 8 9 8 9 7 8 7 8 7 8 data bus lines 4 D3 5 D4 6 D5 7 8 GND ground q o I 2 3 4 5 6 9 10 II 12 13 14 15 16 17° 181 19 201 211 22 9 D6 data bus lines 10 D7 } 11 DRDY data ready 12 DAKN data acknowledge 11l/ 13 14 . 15 16 GND gr- ound 1

*Jacks 2, 3 and 4 are standard J2: RS-232 I nterf ace J3: Teletype Interface IC wire wrap sockets. They are used as cable connectors Pin Mnemonic Description Pin Mnemonic Description by mating with special

"Augat" plugs. 1 1 -10 V voltage source to peripherals 2 RS-232 OUT seal data standard (out) 2 TTYOT Teletype (out) 3 +10 V voltage source to peripherals 3 +10 V voltage source to peripherals 4 -10 V voltage source to peripherals 4 +10 V voltage source to peripherals 5 RS-232 IN seal data standard (in) 5 TTYIN Teletype (in) 6 6 BIASIN pull up voltage source 7 GND ground 7 GND ground 8 - 8 -10 V voltage source to peripherals 9 RS-232 OUT seal data standard (out) 9 TTYOT Teletype (out) 10 +10 V voltage source to peripherals 10 +10 V voltage source to peripherals 11 -10 V voltage source to peripherals 11 -10 V voltage source to peripherals 12 RS-232 IN seal data standard (in) 12 TTYIN Teletype (in) 13 - 13 BIASIN pull up voltage source 14 GND ground 14 GND ground

Figure 4.2: TIM interface module mechanical layout. This shows the physical arrangement of the wire sockets used to implement the TIM terminal interface for Kompuutar.

132 BYTE November 1977

www.americanradiohistory.com Building a better computer wasn't easy. But we did it.

Introducing the MSI 6800 Computer System To complete the system, we used an MSI 8K Memory Board which employs low power 2102 RAM When we set out to build the new MSI 6800 Com- memory chips and is configured to allow battery puter System, we knew we had our work cut out for back -up power capability. A DIP switch unit allows us. It had to be at least as good as the now famous quick selection of a starting address of the board at MSI FD -8 Floppy Disk Memory System which is also any 8K increment of memory. pictured below. So, the first thing we did was analyze all the problems and drawbacks we had encountered If you're one of those people who understands with other 6800 systems, and then put our engineers the technical stuff, by now you'll agree the MSI 6800 to work on solutions. The objective: Build a better is a better computer. If you're one who does not un- computer. derstand it yet, you'll be more interested in what the system

We started with power can do . . . play games, con- supply. We had big ideas, so duct research and educa- we used a hefty 18 amp pow- tional projects, control lab er supply. You can run full instruments, business appli- memory and several peripher- cations, or just about any- als without the worry of run- thing else you might dream ning out of juice. We also put up that a microcomputer can it in the front of the cabinet do. The point is ... the MSI so it's out of the way. 6800 will do it better.

The next step was the The MSI 6800 Computer CPU Board. A separate baud System is available in either rate generator with strap- kit form or wired and tested. pable clock outputs allows Either way, you get a cabinet, any combination of baud power supply, CPU board, rates up to 9600. A separate Mother board, Interface strappable system clock is board, Memory board, docu- available and allows CPU mentation, instructions, sche- speeds of up to 2 MHz. The matics, and a programming new MSI monitor is MIK- manual. Everything you need. BUG software compatible, so you will never have a prob- There is more to say lem with programs. Addi- about the MSI 6800 than tional PROM sockets are space permits. We suggest available for your own spe- you send for more informa- cial routines and to expand tion which includes our free the monitor. The CPU also catalog of microcomputer contains a single step capa- products. bility for debugging software.

When we got to the Mother Board, we really Building a better computer was not easy. Becom- made progress. It has 14 slots to give you plenty of ing the number one seller will be. room to expand your system to full memory capabil- ity, and is compatible with SS -50 bus architecture. Heavy duty bus lines are low impedance, low noise, and provide trouble -free operation. Nedcuedt Súeotíacá

With all this power and potential, the interface %sdtuunestta had to be something special. So instead of an inter- 220 West Cedar Olathe, Kansas 66061 913/764 -3273 face address in the middle of memory, we put it at the TWX 910 749 6403 (MSI OLAT) Telex 42525 (MSI A OLAT) top ... which gives you a full 56K of continuous memory. Interfaces are strappable so they may be placed at any address. An interface adapter board is compatible with all existing SS -50 circuit boards and Midwest Scientific Instruments interface cards. All MSI interface cards communicate 220 W. Cedar, Olathe, Kansas 66061 with the rear panel via a short ribbon cable which ter- NAME minates with a DB -25 connector. All baud rate selec- tion and other strappable options are brought to the ADDRESS connector so they may be automatically selected by CITY whatever plug is inserted into the appropriate inter- STATE ZIP face connector. Straps may also be installed on the circuit board. 011177

Circle 92 on 'inquiry card. BYTE November 1977 133 www.americanradiohistory.com Text continued from page 128 discrete LED outputs at location 8013 in memory address space. selection switch to point to the DATA posi- If it is desired to modify a status flag, the tion, the contents of memory at this loca- flag select switch can be rotated to the de- tion are displayed, having been transferred sired bit, and the flag set or flag reset func-

to the front panel scratch pad location 800D tion be used to alter the flag state. I f desired, by the service program during the halt opera- memory can be examined or altered using tion. At other positions of the switch, it is the deposit, deposit next, examine or possible to view copies of the X register, Y examine next routines activated by appro- register, accumulator A or the stack pointer priate panel switches. Pressing RUN con- register. The current contents of the pro- cessor status register are shown in the eight Text continued on page 137

Front Panel Assembly Circuits

Map Location in IC Type +5 V GND Figure 1.9

40 74279 16 8 D5 41 74279 16 8 E5 Central Processor Module Integrated Circuits 42 74279 16 8 E6 43 74279 16 8 F8 Map Location in 44 7400 14 7 E3 IC Type +5 V GND Figure 3.2 45 74197 14 7 D1 46 7400 14 7 F9

1 MSC6502 8 1,21 A3,4,5 47 7400 14 7 F1 2 74121 14 7 B7 48 7404 14 7 Cl 3 7402 14 7 C7 49 7474 14 7 F4 4 7414 14 7 C6 50 74148 16 8 F7 5 DM8835 16 8 C5 51 7474 14 7 F5 6 DM8835 16 8 C4 52 7400 14 7 F6 7 7404 14 7 Cl 53 7410 14 7 F3 8 7416 14 7 D6 54 7400 14 7 C5 9 74148 16 8 D4 55 7474 14 7 F2 10 7416 14 7 B2 56 74197 14 7 A4 11 74260 14 7 C3 57 7416 14 7 B5 12 7416 14 7 B1 58 7400 14 7 C4 13 74260 14 7 C2 59 74197 14 7 B4 14 7410 14 7 D3 60 7416 14 7 B1 15 74157 16 8 D2 61 7489 16 8 A3 16 7417 14 7 E2 62 74157 .16 8 C3 17 7404 14 7 B5 63 7489 16 8 B3 64 7416 14 7 Al 65 HP-5082-7340 7 6 X1 66 HP-5082-7340 7 6 X2 Front Panel Interface Module Circuits 67 HP-5082-7340 7 6 X3 68 HP-5082-7340 7 6 X4 Map Location in 69 74153 16 8 A2 IC Type +5 V GND Figure 2.3 70 74153 16 8 B2 71 74153 16 8 C2 16 8 E4 18 I nte13624-4 22, 24 12 A2 72 74153 19 7414 14 7 D2 73 DM8835 16 8 E2 20 7414 14 7 D4 74 DM8835 16 8 E1 21 7438 14 7 D6 22 7414 14 7 C6 23 7404 14 7 A4 24 7420 14 7 C5 TIM Interface Module Circuits r 25 74138 16 8 Cl 26 74138 16 8 C2 Map Location in 27 74138 16 8 C3 IC Type +5 V +10 V -10 V GND Figure 4.2 28 74138 16 8 C4 29 74260 14 7 B2 75 LM1489 14 7 C4 30 74260 14 7 B3 76 LM1488 - 14 1 7 C5 31 74260 14 7 B4 77 MCS6530 20 1 Cl 32 74260 14 7 B5 78 7414 14 7 E6 33 74260 14 7 B6 79 7404 14 7 E5 34 74260 14 7 A7 80 74S260 14 7 D4 35 74148 16 8 A3 81 7400 14 7 D5 36 74260 14 7 Al 82 7404 14 7 E4 37 74260 14 7 A6 83 7417 14 7 E1 38 74279 16 8 AS 84 DM8835 16 - - 8 E2 39 7400 14 7 B1 85 DM8835 16 8 E3

Table 5: Integrated circuit summary for Kompuutar. This table summarizes the 85 integrated circuits used in Kompuutar, arranged in groupings by the circuit modules of the system. The column labelled "Map Location" identifies the physical position of the circuits on the various boards of the system, as shown in the physical layout diagrams in the figures. Note that the phy- sical layouts represent a good workable arrangement of sockets. There is no logical requirement that the particular map positions used in these diagrams be followed to the letter in another implementation of the system.

134 BYTE November 1977 www.americanradiohistory.com cess NOW PREPARING FOR ITS SECOND SHOWING

International 20, 21, 22 JUNE, 1978 Al icrocompukrs Palais des MinicompuFars Expositions Geneva, Microprocessors Switzerland

ANOTHER PRIME OPPORTUNITY TO SELL TO THE EUROPEAN MARKET Microcomputers, Minicomputers, Microprocessors,Peripherals, Components and Services

A 50% LARGER EXHIBITION PROGRAMME DESIGNED IS PLANNED TO ATTRACT MANY The sales results IMMM obtained MORE VISITORS for its 1977 exhibitors is clearly The remarkably large audience indicative that in 1978 more and of highly qualified and seriously more producers will be displaying interested visitors who attended products for use in every type of the first IMMM exposition was industrial, commercial, consumer obviously pleased with the and military application. Their technical programme. Comments enthusiasm has prompted many indicate that the programme, as well as the exhibition, additional manufacturers of small computers (firms will be a key factor in attracting an even larger group which attended and observed in 1977) to make serious of attendees to the next show. commitments regarding participation in the next show. With these new exhibitors and the increased space The 1978 programme, chaired and presented by already requested by 1977 participants, IMMM '78 will internationally recognised experts, again will be de- be a much larger show! signed to offer the kind of practical solutions to day - to -day problems that attendees seek. A special session In 1978, the kind of people you want to meet - on "Tips for Hobby Microcomputers" is being planned. executives, engineers, designers, manufacturing and support supervisors, and others - will be out in force SPONSORED BY DISTINGUISHED PUBLICATIONS ... to see, to learn, to BUY. And you will want to be Mini -Micro Systems (U.S.A.) Polyscope (Switzerland) there with YOUR products and services. Micomp (Switzerland) Markt Und Technik (West Germany)

IN EUROPE: Mr. Ernest Jungmann IN THE UNITED STATES: IN JAPAN: For Mr. Bert Saunders Promotion Marches Mr. Joseph Maurer Mr. K. Yamada Kiver Communications S.A. Exterieurs Industrial & Scientific ISCM Japan Additional (U.K. Branch Office) Residence Mexico Conference Management, Kokado Building /t Ewell Road 65, rue ou Javelot Incorporated 1-3-18 Akasaka Information: Surbiton, 75645 Paris CEDEX 13, 222 West Adams Street Minato -ku, Tokyo 107, Surrey KT6 6AX England France Chicago, Illinois 60606 Japan Telephone: 01390.0281 Telephone: (1) 58396.62 Telephone: (312) 263 -4866 Telephone: 03-585-8321 Telex: 929837 Telex: 210500F Telex: 256148 Telex: 28887

Circle 66 on inquiry card. BYTE November 1977 135 www.americanradiohistory.com Listing 1: The front panel service program. This program is resident in a programmable read only memory part wired for ad- dresses FE00 to FFFF, as shown in figure 2.4. The listing is a symbolic assembly language version of the program combined with the hand assembled object code provided by author Brader. The information at the end of the PROM area includes the interrupt vectors which are implemented in the Kompuutar system.

Hexadecimal Hexadecimal FE93 BD 15 BO STA HADDR Address Code Label Op Operand Commentary FE96 4C 9D FE JMP CONTINUE FE99 CONTROL PANEL MONITOR EXIT POINT PANEL DRIVER NONMASKABLE INTERRUPT FE99 38 EXITCP SEC [Set carry to indicate end ENTRY of monitor I; FE00 BD 00 80 PNMI STA SVACC [Save state FE9A 4C 9E FE JMP SETSTAK FE03 BE 01 80 STX SVX of processor registers FE9D 18 CONTINUE CLC [Clear carry to continue FE06 8C 02 80 STY SVY at interrupt]; monitor] ; FE09 RECOVER PROCESSOR STATUS & RETURN FE9E BEGIN ROUTINE TO SET UP STACK AND ADDRESS AT INTERRUPT TEMPORARILY LEAVE MONITOR FE09 68 UNSTK PLA FE9E AD 08 80 SETSTAK LDA SVADDR +1 FEOA AA TAX FEA1 48 PHA FE0B 68 PLA FEA2 AD 07 BO LDA SVADDR FEOC A8 TAY FEAS 48 PHA FEOD 68 PLA FEA6 AD 03 80 LDA SVPFLG FEOE SAVE STATUS, RETURN ADDRESS & STACK IN FEA9 48 PHA [Push processor status

SCRATCH PAD onto stack] ; FEOE BE 03 80 SAVERET STX SVPFLG FEAA AE 05 80 LDX SVSTK [Subtract 3 FE11 BC 07 80 STY SVADDR FEAD CA DEX from FE14 BD 08 80 STA SVADDR +1 FEAE CA DEX old FE17 BA TSX FEAF CA DEX stack pointer FE18 BE 05 80 STX SVSTK FEB0 9A TXS to compensate pushes]; FEt8 INTERROGATE CONTROL FUNCTION REQUEST RESTORE REGISTERS REGISTER FEB1 AE 01 80 LDX SVX FE18 AD 10 80 LDA REQST FE84 AC 02 80 LDX SVY FETE OA ASL FE87 AD 00 80 LDA SVACC FE1F OA ASL FEBA BD OE 80 STA LSTACC FE20 OA ASL FEBD 80 3C BCS LEAVE If carry set,then leave FE21 OA ASL monitor now; ENTER PROGRAM TREE TO DECODE & EXECUTE FEBF MANIPULATIONS FOR SINGLE STEP CASE REQUEST FOLLOW FE22 BD 04 80 STA SVAAA FEBF A9 FF LDA »SFF FE25 A9 20 LDA »$20 FECI 4D 00 80 FOR SVACC [ Invert old accumulator FE27 2C 04 80 BIT SVAAA value] ; FE2A 10 03 BPL +5 If request greater than 7 FEC4 BD 00 80 STA SVACC FE2C 4C 7F FF JMP REGLD then go do register load FEC7 A9 FF LDA »$FF

routine; FEC9 4D 01 BO FOR SVX [Invert old X value] ; FE2F 70 1C BVS XHSEE Else if 4 < request 7 FECC BD 01 80 STA SVX then halt, step, examine FECF A9 FF LDA »SFF or exam next; FED] 4D 02 BO FOR SVY [Invert old Y value]; FE31 DO OD BNE XDDN Else if 2 < request <3 FED4 BD 02 BO STA SVY then deposit or deposit FED7 A9 FF LDA OFF next; FED9 4D 05 80 FOR SVSTK [Invert old stack register

CONCLUDE REQUEST IS 0 OR 1 value] ; FE33 A9 10 LDA »$10 [Set up mask for bit FEDC BD 05 BO STA SVSTK

test) ; FEDF A9 FF LDA =SEE FE35 2C 04 80 BIT SVAAA FEET 4D OD 80 FOR SVDATA [Invert old data register FE38 DO 03 BNE +5 Is request 0? value); FE3A 4C 99 FE JMP EXITCP If request = 0 then leave FEE4 BD OD 80 STA SVDATA control program via FEE7 AD OE 80 LDA LSTACC [Restore old accumulator normal NMI; value]; FE3D 4C 36 FF JMP FLAG If request= l then go do FEEA 40 RTI [Return from interrupt, F LAG function service; exiting panel service CONCLUDE REQUEST IS 2 OR 3 program]; FE40 A9 10 XDDN LDA »$10 FEES LEAVE PANEL SERVICE FOR USER NMI SERVICE FE42 2C 04 80 81T SVAAA CASE FE45 DO 03 BNE +5 Is request 2? FEES 4C 00 F6 LEAVE JMP USRNMI FE47 4C 29 FF JMP DPSNXT If request - 2 then go do FEEE NOTE: USRNMI IS A READ ONLY MEMORY DEPOSIT NEXT ROUTINE AT F600, NOT DEFINED HERE service; FEEE FE4A 4C 1 E FF JMP DEPOSIT If request = 3 then go do FEEE EXAMINE SERVICE ROUTINE DEPOSIT service; FEEE AD 11 80 EXAMINE LDA DSWLOW FE4D CONCLUDE REQUEST IS 4 TO 7 FEF1 BD 07 80 STA SVADDR FE4D DO OD XHSEE BNE XHLSS If request= 6 o request= FEF4 AD 12 80 LDA DSWHIGH 7 then go do HALT or FEF7 BD O8 80 STA SVADDR +1 STEP; FEFA 4C 77 FE JMP SETTRAP [Go back to display CONCLUDE REQUEST IS 4 OR 5 routine and exit]; FE4F A9 10 LDA »$10 FEFD EXAMINE NEXT SERVICE ROUTINE FE51 2C 04 80 81T SVAAA FEFD AO 00 EXMNXT LDY »O FE54 DO 03 BNE +5 Is request 4? INCREMENT TO NEXT ADDRESS FE56 4C FD FE JMP EXMNXT If request= 4 then go do FEFF AE 07 80 ADVANCE LDX SVADDR EXAMINE NEXT; FF02 EB INX FE59 4C EE FE JMP EXAMINE If request= then go do FF03 BE 07 80 STX SVADDR EXAMINE; FF06 CHECK FOR OVERFLOW CONCLUDE REQUEST IS 6 OR 7 FF06 E0 00 CPX #0 FE5C A9 10 XHLSS LDA »$10 [Set up mask for bit FFOB FO OA BEQ RAISHI If low order >0 then

test] ; increment high order; FESE 2C 04 80 BIT SVAAA [Test for odd or even FFOA CHECK TO SEE IF INITIALIZATION NEEDED number]; FFOA CO 00 QNEEDINI CPY »0 FE61 FO 14 BNE SETTRAP If request = 7 then skip FFOC FO 03 BEQ +5 setup logic; FFOE 4C 7C FE JMP SETUP If Y > 0 then simply CONCLUDE REQUEST IS 6 execute scratch pad FE63 SET UP SCRATCH PAD INSTRUCTION SEQUENCE program; FE63 AS BD LDA »$BD FF 11 4C 77 FE JMP SETTRAP If V = 0 then set up prior FEES BD 09 80 STA DUMMY2 to executing again; FE68 AS OD LDA »SOD FF14 INCREMENT HIGH ORDER BYTE OF CURRENT FE6A BD OA 80 STA DUMMY3 ADDRESS FEED A9 80 LDA »S80 FF14 AE 08 80 RAISHI LDX SVADDR +1 FE6F BD 08 80 STA DUMMY4 FF17 EB INX FE72 A9 60 LDA =$60 FF18 BE 08 80 STX SVADDR +1 FE74 BD OC 80 STA DUMMY5 FF18 4C OA FF JMP QNEEDINI FE77 SET UP SCRATCH PAD INSTRUCTION SEQUENCE FF1E FE77 AS AD SETTRAP LDA »SAD [Dummy in an LDA FF1E DEPOSIT SERVICE ROUTINE FE79 BD 06 80 STA DATATRAP instruction usingcur FF1E A9 BD DEPOSIT LDA =$BD [Change scratch pad pro- rent address field as its FF20 BD 06 8O STA DATATRAP gram to store accumu- address] ; lator (STA) as its first FE7C ROUTINE TO EXECUTE SCRATCH PAD PROGRAM operation]; TO SET UP LATEST SVDATA VALUE FF23 AD 11 80 LDA DSWLOW FE7C 20 06 80 SETUP JSR DATATRAP [Call scratch pad resident FF26 4C 7C FE JMP SETUP

subroutine) ; FF29 FE7F AD 03 80 LDA SVPLFG FF29 DEPOSIT NEXT SERVICE ROUTINE FE82 BD 13 80 STA STATUS FF29 A9 BD DPSNXT LDA »$BD [Change scratch pad pro - FE85 A9 OD LDA »SOD [Patch the scratch pad FF28 BD 06 80 STA DATATRAP gram to store accumu- FE87 BD OA 80 STA DUMMV3 program]; lator (STA) as its first FEBA DISPLAY THE CURRENT ADDRESS operation); FEBA AD 07 80 LDA SVADDR FF2E AD 11 80 LDA DSWLOW FEBD BD 14 80 STA LADDR FF31 AO AA LDV »SAA [LoadY with any nonzero FE90 AD 08 80 LDA SVADDR +1 value, AA in particular);

136 BYTE November 1977 www.americanradiohistory.com Listing 1, continued:

Text continued from page 134 Hexadecimal Hexadecimal Address Code Label Op Operand Commentary tinues execution of the program at the FF33 4C FF FE JMP ADVANCE currently displayed address. FF36 FF36 FLAG REGISTER CHANGE SERVICE ROUTINE FF36 AD 10 80 FLAG LDA REQST After building the design, I found a FF39 ALIGN THE FLAG SELECTION BITS WITH FOUR couple of subtle points in the operation of RIGHT SHIFTS FF39 4A LSR the control panel. The first point to note is FF3A 4A LSR FF3B 4A LSR that when using the RESET switch, the pro- FF3C 4A LSR FF3D 8D 04 80 STA SVAAA cessor must be in the RUN mode of the FF40 A9 01 LDA #$1 FF42 2C 04 80 BIT SVAAA k flag data bit on? RUN versus STEP switch. Second, bit 5 of FF45 FO 05 BEQ SETYZER If flag data = 0 then V:= 0; is the status display useless and unimple- FF47 AO FF LDV #$FF Else V;= $FF; mented in the 6502 hardware. The register FF49 4C 4E FF JMP PROCFLAG FF4C AO 00 SETYZER LDV #$00 load switch (REG LOAD) is best used for FF4E 4E 04 80 PROCFLAG LSR SVAAA [Final right shift aligns the 3 bit flag code] ; modifying the contents of the accumulator, FF51 A2 07 LDX 1$07 [ Load loop count] ; LOOP SETS X index registers, but not the stack pointer. FF53 EC 04 80 FLGLOOP CPX SVAAA If SVAAA = X then FF FO 04 BEQ FCHANGE go change this flag; Using the register load switch to modify the CA CYCLE DEX FF59 4C 53 FF JMP FLGLOOP stack pointer can result in problems when FF5C A9 01 FCHANGE LDA #$01 LOOP ALIGNS MASK ON PROPER FLAG BIT resuming execution a program. Once of FF5E EO 00 FLOOK CPX #$00 whatever memory loading or register altera- FF60 FO 05 BEQ +7 FF62 OA ASL tion chores required by a program have been FF63 CA DEX FF64 4C 5E FF JMP FLOOK accomplished, execution can be resumed FF67 AT END OF LOOP WITH MASK IN PLACE, CHANGE FLAG BIT using the RUN switch to cause the control FF67 CO 00 CPY #$0 Is data 0? FF69 DO OB BNE SETFLG If not then go set flag; panel program to return from interrupt using FF6B 49 FF EOR #$FF FF6D 2D 03 80 AND SVPFLG [Turn off the flag bit

the register contents stored in the control with inverted mask] ; FF70 8D 03 80 STA SVPFLG panel scratch area. FF73 4C 77 FE JMP SETTRAP FF76 OD 03 80 SETFLG ORA SVPFLG [Turn on the selected bit

from mask] ; F F79 8D 03 80 STA SVPFLG A Versatile Configuration F F7C 4C 77 FE JMP SETTRAP FF7F ' REGISTER LOAD SERVICE ROUTINE The design of Kompuutar is quite readily FF7F REGISTER LOAD SERVICE ROUTINE FF 7F A9 OF REGLD LDA #SOF adaptable to the 6800 processor as a sub- FF81 8D OA 80 STA DUMMY3 FF84 A9 AE LDA #SAE [Define LDX as first stitute for the 6502 if personal programming operation of scratch pad program] ; preferences or availability of chips dictates FF86 8D O6 80 STA DATATRAP FF89 A9 FF LDA #$FF such a switch. The similarities between the FF8B 4D OD 80 FOR SVDATA [Invert data] ; FF8E 8D OD 80 STA SVDATA two processors are quite extensive, and in FF91 AD 11 80 LDA DSWLOW FF94 4C 7C FE JMP SETUP fact were the bone of contention of a law- unused space (since the 6502 FFAO A2 FF RESET LDX #$FF [Initialize stack suit settled) shortly after FFA2 9A TXS pointer] came out. At the system level, here are the FFA3 4C O6 70 JMP TIM [Jump to TIM monitor on system RESET]; major differences to be aware of: unused space - - - - FFEO 00 FO BRK Instruction vector FFE2 XX XX Not used The pinouts the 40 pin package of FFE4 00 FC I R Q6 Lowest priority used for each processor are different, FFE6 00 FB IRQ5 FFE8 00 FA IRQ4 but the signal definitions of NMI, data FFEA 00 F9 IRQ3 Interrupt vectors FFEC 00 F8 IRQ2 bus lines, IRQ, reset, address bus, etc, FFEE 00 F7 IRQ1 Highest priority

are equivalent. unused space The 6800 uses four read only memory FFFA 00 FE NMI interrupt vector location FFFC AO FF RESET interrupt vector location interrupt vectors at addresses FFF8 to F FF E xx xx

FFFF in memory address space, Kompuutar Peripheral and Scratch Pad Data Symbols:

whereas the 6502 uses only three Address Symbol Description

interrupt vectors; the definitions of 8000 SVACC Saved accumulator value, scratch pad Saved index register value, scratch pad - 8001 SVx X the interrupt vectors for reset, non 8002 SVV Saved V index register value, scratch pad maskable interrupt and maskable inter- 8003 SVPFLG Saved processor flag register value, scratch pad 8004 SVAAA Scratch value rupts are similar. 8005 SVSTK Saved stack register value 8006 DATATRAP First operation of scratch pad program (absolute addressing The instruction sets differ, so the front through SVADDRI 8007 SVADDR Low order saved address value, scratch pad program absolute panel service programs shown with this address for DATATRAP 8008 SVADDR+1 High order savedaddress value article would need to be recoded if a 8009 DUMMV2 DUMMV3 800A Balance of scratch pad program 6800 is used. 800B DUMMV4 800C DUMMYS The definition of the clock used by 800D SVDATA Data value at current SVADDR 800E LSTACC Accumulator storage temporary the processor differs in the details of 800F SVAAA Scratch value its drive circuit. 8010 REQST Front panel request input word 8011 DSWLOW Low order data switch register input (data or address information) The major features of either a 6502 or 6800 8012 DSWHIGH High order data switch register input (address information only system at the level of the backplane bus de- 8013 STATUS Status lamps output 8014 LAD DR Low order address display output fined here would be nearly identical. 8015 HADDR High order address display output

BYTE November 1977 137 www.americanradiohistory.com VECTOR PACKAGING MATERIALS Continued from page 6 SAVE TIME & MONEY the "Thorsen Memory Tube," a magical device which can be programmed with the data necessary for controlling an interactive mechanism. In the real world, technology 1111111111113 has developed the semiconductor memory 8800V, $19.95 and microprocessors, charge coupled devices and magnetic bubble memories. In the fictional account, various societal conditions have led to a predilection for garage shop and cottage industry experimen- tation represented by the efforts of the hero of the story, Dan Davis. In the real world, S100 CARDS -100 PLUG CONTACTS -Convenient universal tinned pads and bus lines. For interface, memory expansion, the technological and economic conditions breadboarding. Mount almost anything anywhere on card. of today have made the same sort of indi- vidualized experimentation with the high technology of computers an everyday occur- rence practiced by large numbers of people. S100 CONNECTORS for WIRE WRAPPING or SOLDERING I n the story, the protagonists face a world in which mass -produced robotic mechanisms for domestic use have yet to be produced. In the real world, we face a simi- lar situation in which the first mass -pro- duced intelligent robotic mechanisms for domestic use are on the threshold of inven- tion and possibility. With this possibility of innovation and invention in robotics growing out of the computer experimenter's natural inclination towards artificial intelligence and robotics

work, I can begin to build the concept of an ideal type, "The Compleat Robotics Experi- menter" and what it takes to become one. Model VP2 BEAUTIFUL Perhaps we'll see a few examples in real life NEW VECTOR -PAK CASES for micro -computer as the next few years roll by. circuitry, assembled. Constructed of aluminum, finished in vinyl. Slide out covers for easy Categories of Experimentation access. Includes card guides, heavy chassis plate, perforated bottom cover for cooler operation. Card guides perpendicular to front panel, Model VP1, $128.30. In order to put a finger on the categories Card guides parallel to front panel, Model VP2, $134.30. of experimentation in the general field of robotics, we need a definition of just what

is meant by the concept of a robot. I pro- pose the following definition as a working concept for purposes of discussion. This is Model not necessarily the ultimate definition of 8803 what a robot is, but it serves as a standard of measurement useful in this context.

A robotic system is an intelligent wilimmaimamemiums mechanism which is mechanically mobile and which operates with feed- S100 MOTHER BOARD, $29.50. 11 positions ready for back from sensors in a specific envir- connectors. Glass epoxy, plated thru holes, circuitry for onment with general but well defined active termination, 12 tantalum capacitors and instructions. behavioral goals. PLUS revolutionary Slit -N -Wrap wiring tools, Micro- Vector- bord® printed circuit kits, I.C. sockets, extenders. With this definition and given our current

levels of technology, I am explicitly at- Send for new catalog. tempting to eliminate the classical general VECTOR ELECTRONIC COMPANY, Inc. 12460 Gladstone Avenue, Sylmar, CA 91342 purpose robot of science fiction from the phone (213) 365 -9661, twx 910 -496 -1539 discussion. The characters C3PO and R2D2 540777 of George Lucas' film Star Wars may be use-

138 BYTE November 1977 Circle 156 on inquiry card. www.americanradiohistory.com Circle 110 on inquiry card.

ful as long term developmental goals, but current technology just does not support practical implementation of such delightful pseudo -persons. The kind of robotic mech- anism which is likely to be realizable in the near future by real world personal com- puting experimenters will be more special- ized. The "intelligent" of intelligent mech- anism in the definition might be better ex- pressed as "intelligently designed," for it is the crystallization of the designer's intelli- gence and creativity in the control algor- Don Lancaster's ingenius design provides software ithms of the machine which enables the controllable options including: robotic mechanism to act "intelligently." Scrolling Full performance cursor "Mechanically mobile" in the definition Over 2K on- screen characters with only could be as simple as the mobility of the end 3MHz bandwidth of a simple arm mechanism, as complicated Variety of line/character formats including as the three -dimensional mobility of a 16/32, 16/64 .... even 32/64 remote flying and hovering mechanism, or as User selectable line lengths conventional as the rolling mobility of Ralph

Hollis' robot NEWT. Sensory feedback is TELL ME MORE! ( j Send instruction manual for the TVT-6 Kit with full operational details. $1 enclosed. essential to the definition, for I wish to ( SEND FREE CATALOG exclude from discussion such conventional Name mechanisms as plotters, printers, and mass storage devices which use limited forms of Address mechanical mobility. City: State: Zip. A "specific environment" is essential ELECTRONICS, INC. to the practicality of the concept if it is to DEPT. 10-B, 1020 W.WILSHIRE BLVD., OKLAHOMA CITY. OK 73116 be accomplished at current levels of under- standing of artificial intelligence research and engineering. A quite practical system for the personal computing experimenter with a mechanical BUILD YOUR OWN flair is the construction of an "arm" mecha- VIDEO TERMINAL FOR nism to act as an output device for a chess program. But the practicality of the possibi- $85 rPLUSrt lity comes from the limitation of the envir- onment to a three- dimensional region of space above a well defined chess board, with chess pieces designed to fit the design of the arm's grasping mechanisms and object sen- sors. Similarly, the person designing the ro- botic vacuum cleaner appliance can initially implement a practical design only by lim- iting its environment, requiring that it: +iiunmiimúuflilÏüllTlltlfilüïi0Bìì

Avoid precipices (as at the top of Serial ASCII or BAUDOT 16 lines X 64 characters stairs). Roll on a plane surface of normal Full X -Y Cursor control 5100 Compatability gravity. 128 Characters, including Operates on 7VDC unreg- Bounce off walls and furniture. upper and lower case ulated, 6.3 VAC @ 0.75 A Only swallow items smaller than a The SCT -100 Single Card Terminal interfaces directly to any critical size, while sorting and computer or modem having serial ASCII or BAUDOT capability classifying loose objects above that It requires only the addition of a standard ASCII keyboard, and a TV monitor. It is available as a partial kit for $85.00 including size but below a maximum size. the PC board, character generator ROM, and, the 3870 micro- Sense presence of animals, children computer. The complete SCT -100 kit is $155.00 ($185.00 and adults as a cue to enter prewired dc tested). To order, call or write today. MC, BAC Accepted. standby mode of operation. VECTRON P.O.Box #20887, Dallas, Texas, 75220 Phone (214) 350 -5291 The environment of the first such practical

Circle 158 on inquiry card. BYTE November 1977 139 www.americanradiohistory.com KIM MEETS S -100 Escape the single source blues. The Kimsi is the easy was to expand your KIM -1 system household robot would specifically exclude with reaäly available S -100 boards. Forethought Products has interfaced the 6502 to the S -100 bus by decoding the top 4K for IN and OUT instructions. Full capacity interlacing any attention to global details such as what allows complete control of the 6502 and DMA from the S -100 bus. to do when it gets wet, what to do in case of fire, how to wash dishes, how to teach child- ren symbolic logic, etc. (I ncidentally, the vacuum cleaner just described is one of the robotic mechanisms designed by the hero of Robert Heinlein's Door Into Summer.) The behavioral design of the robot is a part of this process of limiting the environ- ment. By deciding what the robot is to do, as in the vacuum cleaner case or the chess playing arm case, we impart constraints on Kit Assembled Item Price Price its behavior.

Kimsi Backplane /S -100 Adapter B slots for S -100 available S125 $165 The strongest theme of research and Kimsi Power Supply Unreg .6@í0A..16 @lA; 16@1A 60 75 experimentation with robotic mechanisms KIM t Incl. documentation Send for more mlamalion N/A 245 KIM to Kimsi Connector Set Includes recorder cables 11 for the near future, then, is that of picking

S -100 Edge Connector Kimsi accepts 8. 1 Is suppled 5 7 and choosing a particular flavor of environ- Cassette Recorder for KIM -1 Hundreds sold for KIM use N/A 55

4K Seals ROM Board Accepts up to 16 1702A or 5203's 119 179 ment in which the system is to operate, 4K lmsai RAM Board Bare mmimum to run Tiny BASE 139 239 using this environment definition as the OK Cromemco ROM Board Accepts up to 8 2708 EPROMs 145 245 8K Seals RAM Board Enough space for programs below 269 369 evaluation standard for the design. The Poly Video Terminal Interface 16 x 64 Connects to a Monitor and Keyboard 210 280 environment chosen is what drives the design Malrex ALT2480 Alpha- Numeric VRAM 24 unes of 80char (needs P39) N/A 295

Malrar ALT -256. 2 Video Graphics Board Displays 256 x 256 array N/A 395 of mechanisms to interact with that environ- Illy Bitty Tiny BASIC 2 5K. kit a a paper tape 5 10 ment; image and sensor processing needs of Focal (a DEC trademark) Includes floating parts N/A 40 6502 Assembler with Source MIS a NOT the MOS version N/A 30 the system in that environment; software requirements of the computers which SPECIAL! 10% off S -100 Boards implement the processing; and possible when ordered with Kimsi. avenues of exploration for application concepts. MATROX VIDEO RAMS Defining the Compleat Robotics NCE Compumartoffersyou the leader in CRT display controllers. MatroxVldeo Rams are complete with memory and require no processor time for screen refresh. Whether your Experimetiter application is alphanumeric. graphic or both. Matrox can provide a system to meet your needs The personal computer experimenter is MTX 816 Module Upper Case only) fxomposile video output in 8 lines of 16 coals 179 well on the way to becoming a robotics ex- MTX 1632 Module (Upper and Lower Case) 16 x 32 display includes blink Ont 225

MTX 1632SL Module (Great with 2562) Slave sync allows feat superposition 225 perimenter. The intellectual challenge of the MTX 2480 Circuit Board 24 x 80 requires tugh- perselence phosphor IP39) 395 robot is a step up in abstraction and diffi- MTX 256"2 Circuit Board 256 x 256 array grapacs hnoNrples pIOwle 00100 630 culty, as well as a step up in fascination and ORDER FORM unknowns. What are the requirements of a person who expects to achieve measurable Name results from experimentation with robotics? Address First and foremost, the compleat robotics City State Zip experimenter is well rounded and virtually Charge my BAC /VISA M/C Interbank it the classical Renaissance man. A narrow Card N Exp. Date specialization in one particular aspect of Signature computer science, machine design, etc, Please send me info on the new Commodore PET 2001 computer may be a useful attribute to possess, but Limited 90-day Warranty to implement comprehensive systems, Relun non -working merchandise within 90 days for replacement or refund Kits are war- ranted to be complete with working components All items subject to prior sale comprehensive knowledge is required. For the person just beginning formal education thy Item Price Amount at a college level, a combination of liberal arts and philosophy with computer science,

physics, biology and engineering is what I Total for goods would consider a necessary groundwork for +4 % Michigan Residents later work in robotics. Getting to more +4% Shipping and Handling specific details, here are some areas of study -$1 if order's under $20 with reasons for their usefulness to the Total Amount aspiring robotics experimenter: Philosophy, particularly epistemology, is NCE /CompuMart crucial. Epistemology is the philosophical discipline concerned with the question 1250 N. Main St. Ann Arbor, Mi. 48104 Dept.BY1 (313)994 -4445 "how do we know what we know ?" A

140 BYTE November 1977 Circle 104 on inquiry card. www.americanradiohistory.com practical understanding of epistemology is a necessary starting point for anyone who would design a knowledge oriented or "arti- ficially intelligent" system. Related to epistemology is the necessity for a thorough and practical understanding of the mathematical basis for programming READY FOR IMMEDIATE DELIVERY and computer science: concepts of logic, proof of theorems, organization of know- ledge, etc, form a background for much SOROC IQ 120 work with computers. VIDEO TERMINAL Progressing to more specific technical areas, the aspiring roboticist must obtain a mastery of computer science, natural and Fully Assembled $995 artificial languages, information theory, Price includes 24x80 charac- electrical engineering (at the level of utilizing ters, upper & lower case and "black boxes" of function), mechanical RS -232 auxiliary port. engineering and biology or physiology. The wE SOROC 3R SOROC a knowledge of computer science is a must, I FEZ 1911 for no robot is possible without a computer to implement its intelligence. Natural and ti artificial language understanding is a require- OPI AL PACKA BÚ-$í00 ment for any form of high level command and control structures to be built into the Terminalsasabove with block mode & screen printer interface software of the robotic system. Information theory and its attendant discussions of the possibility of error and strategies for coping with error is essential. Electrical engineering .,.%.,."... and mechanical engineering are obvious Terir`ïirïal is shi.pped_-- for design of interactive real world mecha- FREE to U.S. mow' nisms. Biology, particularly the physiology dstination of natural mechanisms, is essential back- i 'tr.-. SROC ground information to this process of ro- l P PSO botic mechanism design: not necessarily for ß\1414_,tP its value as a direct model, but certainly for l its inspirational value and value as a source pPGe5.1 P of detail ideas about possible approaches which might work out in robotic mecha- GNP NC1*? Q\GGEP 14 nisms. Thorough familiarity with current technologies is a must as well. A final requisite is a thorough familiarity BYTE SHOP SEND ME SOROC IQ 120 TERMINAL(S) with science fiction literature, for its imagi- OTY L Standard Model _ w /Option Package nation inputs. The science fiction writer is iT1fiiE ORDER ENCLOSE $ CHECK OR at once a frustrated engineer and a daring 803 N. Scottsdale Rd. MONEY ORDER. source of imagination. The frustrated Tempe, Arizona 85281 602.894.1193 CHARGE$ TO engineer aspect comes from the lack of Name Visa Card Mastercharge a technological context to fullfill the Card No Phone ( imaginations; the imagination side is the Address Interbank No. Exp. Date reason why science fiction is a necessary City State Zip Call us collect for credit card orders input for the compleat robotics experi- 15 day delay on personal checks. VISIT OJR BYTE SHOP RETAIL STORES: Arizona residence add 4% sales tax menter. Many design ideas can be found in 813 N. Scottsdale Rd. 12654 N. 28th Drive 2612 E. Broadway I m s the writings of science fiction thinkers. Tempe, Az. 85281 Phoenix, Az. 85029 Tucson, Az. 85716 a`9e Summing it all up, the personal experi- (602) 894.1129 (602)942-7300 (602) 327.4579 ` - -- MAP mentation with technological concepts SEND $2.50 FOR THE 40 PAGE BYTE SHOPPER CATALOG which so characterizes the amateur com- Circle 18 on inquiry card. puter person finds a natural extension in the application area of robotics. The chal- lenges and problems of building "smart" machines at once provides a form of an answer to the traditional "what do you do with your computer ?" question and a fascinating area for exploration.

BYTE November 1977 141 www.americanradiohistory.com r What's Cooking? TV Typewriter Cookbook by Don r Lancaster. A complete guide to low cost television display of alphanumeric data, several chapters of which were published - ahead of the book in early issues of BYTE The Lancaster Series! magazine. $9.95.

Active Filter Cookbook by Don Lan- caster. The chief chef of electronics Cook- books concocts another gourmet appetizer. ACTIVE - Run to this book when you need to find a starting point for the design of a filter for FILTER use in an electronic application. $14.95.

' cookbook The TTL Cookbook by Don Lancas- ter. Start here with Don's tutorial explana- tions of what makes TTL logic design tick. 335 pages, $8.95. COOkb00k _CMOS Cookbook. Don Lancaster has taken his highly successful TTL Cookbook formula and done it again. This bigger than ever (414 pages!) book tells you how to use CMOS, the exciting new power logic family. $9.95.

Practical Solid-State Circuit Design by Jerome E Oleksy. A self study course in the Modern Operational Circuit Design by design of semiconductor circuits from the John L Smith. An absolutely essential intro- simple transistor to the complex operational duction to the use and application of amplifier. $5.95. operational amplifier systems. The book contains both theoretical background infor- mation and practical circuit suggestions which can be used to advantage by the experimenter. $23.25 (hardbound). Fundamentals and Applications of Digital Logic Circuits by Sol Libes. An invaluable tutorial background volume on digital logic, arithmetic, 10 concepts and interfacing to analog devices; written by one Linear IC Principles, Experiments, and of the founders of the Amateur Computer Projects by Edward M Noll. From basic Group of NJ. This book acquaints the principles to complicated systems, from reader with much of the terminology and simple amplifier experiments to applications background concepts of digital hardware. in radio, TV and control systems, this book $6.95 . can improve your knowledge of the way circuitry of the analog world really works. $8.95.

Send to: Check Payment method:

maser charge My check is enclosed BITS, Inc. Bill my MC No. Exp. date 70 Main Street Bill my BAC No. Exp. date Peterborough NH 03458 ®BMINAMEAICAAO

Name Total for all books checked $ Postage 50 cents per book for books $ Address Grand Total $ City State Zip Code

Signature Prices shown are subject to change without notice. All orders must be prepaid. You may photocopy this page if you wish to leave your BYTE intact. In unusual cases, processing may exceed 30 days.

142 BYTE November 1977 Circle 12 on inquiry card. www.americanradiohistory.com A BIT More

When you build a project, you need information. All you find in the advertisements for parts are mysterious numbers identifying the little beasties ... hardly the sort of information which can be used to design a custom logic circuit. You can find out about many of the numbers by using the information found in these books. No laboratory bench is complete without an accompany- ing library shel ff illed with references.

Order these absolutely essential references from Texas Instruments today:

The TTL Data Book for Design Engineers, $4.95, new second edition. The Linear and Interface Circuits Data Book for Design Engineers, $3.95. The Semiconductor Memory Data Book for Design Engineers, $2.95. --The Transistor and Diode Data Book for Design Engineers, $8.50. --The Power Semiconductor Handbook for Design Engineers, $7.50. Understanding Solid State Electronics, $2.95. The Optoelectronics Data Book for Design Engineers, $2.95. Designing with TTL Integrated Circuits, edited by Robert L Morris and John R Miller, published by McGraw -Hill, $26.

--The TTL Cookbook by Don Lancaster, published by Howard W Sams. Start your quest for data here with Don's tutorial explan- ations of what makes a TTL logic design tick. 335 pages, $8.95.

- -Microcomputer Design by Donald P Martin, Edited and pub- lished by Kerry S Berland, Martin Research. Purchase your copy of the definitive source for circuitry and hardware design information on the 8008 and 8080 computers. $14.95.

--Texas Instruments has just come out with the updated version of the TTL Data Book for Design Engineers, a new 832 page book which includes information formerly in the previous edition.and its supplement, as well as new circuits which have arrived on the scene since publication of the earlier versions of this book. The second edition of the TTL Data Book for Design Engineers is your most up to date and current source of information on the design specifi- cations and characteristics of the Texas Instruments 7400 series of devices. In it you'll find a complete section of 7400 series pinout diagrams at the front, plus the usual detailed descriptive information on the more complicated- circuits. Only $4.95.

Send to: Check payment method: My check is enclosed BITS, Inc 70 Main St VISA' _Bill my MC No. Exp. date Peterborough NH 03458 =MR Bill my VISA No. Exp.date

Name

Address Total for all books checked Postage, 50 cents per book Cit State Zi for books Grand Total Signature

You may photocopy this page if you wish to leave your BYTE intact. Please allow six weeks for delivery. lemeeeemerimeimmermeeene

Circle 12 on inquiry card. BYTE November 1977 143 www.americanradiohistory.com - -- Problems for Computer Solution by - --The Underground Buying Guide, by Steve Rogowski, Teacher Edition. A collec- Dennis A King. Here at last is a source book tion of mathematical problems designed for all those hard to find suppliers! It's to stimulate thought and encourage research designed especially for computer hobbyists, by students towards the goal of a final experimenters, hams and CB'ers, and can solution. The subjects range from arithmetic Take a Byte tell you where to buy items like con- through calculus and on to problems that nectors, discrete components, electronic have yet to be resolved. An analysis of each music supplies, instrumentation, analog to problem provides ideas on logical approa- digital and digital to analog converters, and ches to a solution, and a sample program synthesizers. The list goes on to include demonstrates one possible final solution. of APL Teletypes, speakers, microcomputer soft- $9.95. ware, cassette units, floppy disks and many other items. It will be an invaluable addition to your reference library. $5.95.

- -- APL -An Interactive Approach Second Edition, Revised, by Gilman and Rose. Here's an excellent way to introduce your- self to the APL language. APL is rapidly becoming one of the most popular high level languages in the computer field because of its clarity and conciseness. Gilman and Rose have extensively updated their popular book to include the latest information about Fw Ilan, CBers, Experimenters the language and the various forms of it and Computer (lobbyists. which are now in use. Since the examples t PCC are all carefully spelled out, APL -An Inter- REFFRE\CL RO( )h active Approach is particularly recommen- ded for those who do not have access to an APL terminal. Answers to all problems are included. $11.95.

- -- Chemistry with a Computer by Paul A Cauchon. People are always looking for details of applications for the computer. It is one thing to say "gee whiz wouldn't it be nice if. .." but such thoughts are but the -- -PCC'S Reference Book of Personal and stimulus to action. One result of a "gee Home Computing. Ever try to find the whiz" idea is a series of educational and addresses of some manufacturers of, say, tutorial BASIC programs for use by teachers APL tape cassette or floppy disk interfaces of chemistry, invented by Paul A Cauchon for micros? Frustrating, isn't it? Well PCC and published by Educomp Corporation. has done something about it. This book lists This book contains a collection of tutorial, hundreds of companies and stores selling simulation and problem generation pro- hardware, software, and services. Survey grams which can be employed to advantage articles on software, hardware, kits, appli- by teachers in high schools or colleges cations and the future for the experienced wherever a BASIC facility is available. If and the not -so- experienced user of micros. you're a chemistry professor or teacher by Also included in this edition are biblio- trade, or just a hobbyist interested in graphies for further reference, book reviews, chemistry, this book will prove to be an and an index of the articles from the major invaluable tutorial aid. $9.95. hobbyist magazines. $5.95

Check Payment method: check is enclosed Send to: _My Bits, Inc. _Bill my MC No. Exp. date 70 Main Street _Bill my BAC No Exp. date Peterborough NH 03458 WNWM°l Name Total for all books checked $

address Postage, 50 cents per book for books $

City State Zip Code Grand Total $

Signature Prices shown are subject to change without notice. All orders must be prepaid. You may photocopy this page if you wish to leave your BYTE intact. In unusual cases, processing may exceed 30 days. .1

144 BYTE November 1977 Circle 12 on inquiry card.

www.americanradiohistory.com Continued from page 32

stations. Most receivers track a master and two slave stations. This produces two lines of position on a hybcrbolic grid; the intersection is the position of the receiver. LORAN -C is a fairly accu- rate system giving fixes good to from 300 feet to 1/n mile, but it is limited in Circle 69 on inquiry card. range. The range is up to 1200 to 1500 miles. Accuracy is degraded at night due to skywave interference. At present LORAN -C coverage is far from world- wide. Since it is principally a system for ship navigation, it is useful mainly in Introducing a new order of profes- coastal areas. There are lots of receivers sional printing performance -the on the market, none of which is really Integral Impact ... with features Now- inexpensive. normally found only in big, higher- I am familiar with one satellite navi- priced units. gation system in current usage (others are in the developmental stage). This is Microprocessor based controller Big Printer the Navy Navigational Satellite System. Serial RS -232, current loop and It is a high accuracy system (100 feet for parallel TTL interfaces are standard stationary receivers) which measures Doppler frequency of a 150 MHz and a Built -in self -test mode 400 MHz carrier. The use of two fre- Plain paper -8V2" wide -roll or Pert ormalEe quencies allows for correction for iono- fanfold spheric refraction. The satellite also Standard 64 character ASCII set transmits digital data which includes at a using 5 x 7 dot matrix time of day and a description of the satellite's orbit. This is usually fed from Multiple copies without adjustments a receiver into a minicomputer which Line length to 132 columns processes the data and produces a fix in Instantaneous print rate to 165 cps, Mini - Prioter terms of latitude and longitude. This system does not produce continuous throughput to 80 cps navigation since fixes can only be ob- Attractive table top console with tained when a satellite passes over the front panel controls Price receiver. Since the satellites are in polar orbits the time between fixes normally ranges from 15 minutes to 4 hours with more frequent fixes as the receiver nears Available CT, Also %MP A either pole. Again a number of com- NAKED olY =gas panies manufacture receivers, but again "'THE and Mechanism they are expensive. A cheap SATNAV Print Ful Y Only complete receiver and a set of microcomputer pro- Controll bled s525 grams to produce a fix would certainly be an interesting, though formidable, and Tested project.

J Dean Clamons Systems Analyst Shipboard Computing Group Naval Research Laboratory Washington DC 20375

Ask BYTE

SHIMMY?

What causes the shimmy on my video monitor? Sometimes it looks like its .., doing a hula.

John C Ford 9724 Tweedy Ln Downy CA 90240 )integrai Data Systems I NC The problem superficially sounds like 5 Bridge Street Watertown, MA 02172 (617) 926 -1011 a beat between two frequencies. If the shimmy of which you speak is on ampli- tude modulation on an otherwise solid picture, you may have some form of cross talk with 60 Hz and some submul- tiple of your video interface's internal timing references.

BYTE November 1977 145

www.americanradiohistory.com Implementing an LSI Frequency Counter

The new generation of programmable What's on This Chip? large scale integration (LSI) IO devices is proving to be as exciting as the micro- The 8253 contains three independent 16 processors to which they are connected. bit down counters (see figure 1). Each With the aid of these LSI devices, complete counter has a separate count input, gate functions can be added to a microprocessor input for gating the count and count output. system with only a few integrated circuits. Each can count in binary or binary coded One example of an LSI device with this kind decimal (BCD). Also, each counter can of capability is the 8253 programmable in- operate in one of four separate modes terval timer which can be easily interfaced determined by storing a "mode" word in the to almost any microprocessor. Using this device for each of the counters, usually on Perry Lynne device, a complete frequency counter can be power up initialization. These mode words 990 Arques Av constructed with just a couple of integrated stay stored in the 8253 until they are Sunnyvale CA 94086 circuits. changed by the microprocessor under soft- ware control. In table 2 the format for loading the mode word and reading or loading the count in each is CLK 0 counter shown. The configuration COUNTER of the mode word is shown in table 3. DATA 4 GATE 0 D7 / BUS NO .0 The mode word for each counter on the THROUGH BUFFER OUT 0 DO r 8253 determines whether the upper or lower half the counter will be read or N of written, T or whether the counter expects two sequen- E - R tial reads or writes to move 16 bits of data N A in or out of the device. The type of output L RD the counters will produce is also determined B 4 CLKI WR READ/ U COUNTER by the mode word. See the shaded box on S NO.1 4 GATE I WRITE mode definitions for a discussion of each LOGIC OUT I mode. AO

AI Programming the 8253

CS Each counter is individually programmed by writing a control word to location Al, 4 CLK 2 AO = 11. The control word format is as COUNTER CONTROL NO. 2 follows: WORD GATE 2 REGISTER OUT 2 D7 D6 D5 D4 SC1 SCO RL1 RLO

D3 D2 D1 DO 0 M1 MO BCD

Figure 1: A block diagram of the 8253 programmable interval timer, which is Where DO - D7 is the contents of the made up of three independent down counters serviced by an internal bus. data bus when the mode word is written Software commands from the external processor are used to put the circuit in to the 8253. any one of the four different "modes" of operation. The modes, which are In this application the 8253 will be used discussed in the mode definition box, include a mode which causes an inter- as a single chip frequency counter. Figure 3 rupt on terminal count, a programmable oneshot, a rate generator and a shows the functions of each counter. To square wave rate generator. determine the frequency of an unknown

146 BYTE November 1977

www.americanradiohistory.com The Two Modes of Operation of the 8253 Used in the Programmable Frequency Counter

Mode 1: Programmable Oneshot MODE 1

The output will go low on the count following CLOCK the rising edge of the gate /trigger input. The output will go high on the terminal count. w3n-j If a new count value is loaded while the output is TRIGGER I low it will not affect the duration of the oneshot 4 3 2 1

pulse until the succeeding trigger. The current OUTPUT I In 41 count can be read at any time without affecting the oneshot pulse. TRIGGER

4 3 2 4 3 2 1 0 OUTPUT Mode 2: Rate Generator

Divide by N counter. The output will be low MODE 2 for one period of the input clock. The period from one output pulse to the next equals the number of input counts in the count register. If the count CLOCK

register is reloaded between output pulses the pre- WRn n4

4 3 2 1 0141 3 2 1 0131 2 1 0 sent period will not be affected, but the subse- OUTPUT quent period will reflect the new value. 013) 3 2 1 0(31 2 1 0131 2 1 The gate /reset input, when low, will force the OUTPUT in3) 1_ r output high. When the gate /reset input goes high, RESET --1 I the counter will start from the initial count. Thus, the gate /reset input can be used to synchronize the counter. Figures 2a and 2b: Two possible modes of When this mode is set, the output will remain high until after the count register is loaded. The operation for the 8253 programmable inter- output then can also be synchronized by software. val timer. (There are six in all.)

Signal Low Status Or Going Modes Low Rising High

1 -- 1) Initiates -- counting Table 1: Gate operations summary. 2) Resets output pin after next clock

2 1) Disables counting Initiates Enables 2) Sets output counting counting immediately high

Table 2: The configuration of the mode word, which determines whether the upper or lower half of the Table 3: The format for loading the mode word and counter will be read or written, or whether the court- reading or loading the count in each counter: ter expects two sequential reads or writes to move 16 bits ofdata in or out of the device. sci sco 0 0 Select counter 0 CS RD WR A1 AO 0 1 Select counter 1 1 0 Select counter 2

1 0 0 0 Load counter 0 RL1 RLO

1 0 0 1 Load counter 1

1 0 1 0 Load counter 2 1 0 Read /Load most significant byte only

1 0 1 1 Write mode word 0 1 Read /Load least significant byte only

0 1 0 0 Read counter 0 1 1 Read /Load least significant byte first,

0 1 0 1 Read counter 1 then most significant byte. 0 1 1 0 Read counter 2 0 1 1 1 No- operation 3 -state M1 MO (M =Mode) X X X X Disable 3 -state

0 1 1 X X No- operation 3 -state 0 0 Set Mode 0 0 1 Set Mode 1 1 0 Set Mode 2 Where 1 1 Set Mode 3

CS = Chip select BCD (BCD= Binary Coded Decimal) RD = Control signal to read data from the 8253 WR = Control signal to write data to the 8253 0 Binary counter (16 bits) Ai A0 = Address lines to select various sections of 8253 1 BCD counter (4 decades)

BYTE November 1977 147

www.americanradiohistory.com 2.048 MHz Figure 3: A two chip SIGNAL FROM CLK O frequency counter. An 8080 4)2 TTL CLOCK +5V unknown frequency is ) DO-D7 GATE 0 C counted by counter num- ber 1 during a precise time 22 OUT O READ interval. This precise time ICI 8253 interval is generated by 23 counters 0 and 2. Counter IOms CLK 2 WRITE 0 is programmed by the START CONVERSION 16 19 software to count the FROM PROCESSOR GATE 2 AO 8080 TTL clock input and INTERRUPT 20 divide it by 20,480. This OUT 2 AI TO PROCESSOR creates a series of output

14 21 pulses at a rate of one GATE I CS every 10 ms. These pulses

15 are counted by counter 2 UNKNOWN FREQUENCY - CLK I to produce a oneshot of

13 programmable length. The

OUT I oneshot is used to enable counter 1, which then counts the unknown fre-

2 quency. Finally, the pro- SET cessor reads out the value +5V TO PROCESSOR INTERRUPT of counter 1 and calculates Integrated Circuit Q 15 IC2 FOR UNDERFLOW the unknown frequency. Power Pin Table 7476 DETECTION 16 IC2 is used to signal an Integrated Type +5 V Ground 1)7 underflow. This a/ lows the Circuit Power CLR circuit to count up to 3 values beyond the normal IC1 8253 24 12 CLEAR maximum of 65,535 (for a IC2 7476 5 13 UNDERFLOW INTERRUPT 16 bit counter).

THE HIGH -LEVEL APPROACH: A/BASIC© COMPILER

MICROWARE'S new A /BASIC` compiler can break the software bottleneck in your M6800 system. A /BASIC` compiles BASIC source programs to fast, memory- efficient machine language programs. A /BASIC` is a cost -effective alternative to slow interpreters or complex assemblers at a price you can afford. GENERATES PURE M6800 CODE - NO RUN -TIME PACKAGE REQUIRED COMPILED PROGRAMS RUN MUCH FASTER THAN INTERPRETERS LOW OVERHEAD - WILL RUN IN 8K SYSTEM WITHOUT DISK PROGRAMMER HAS COMPLETE CONTROL OF MEMORY ALLOCATION MANY POWERFUL EXTENSIONS TO BASIC SYNTAX

We'd like to tell you more about A /BASIC ` and other advanced M6800 hardware and software products. Write or call today for complete information.

MICROWARE SYSTEMS CORPORATION P.O. BOX 954 DES MOINES, IOWA 50304 (515) 279-9856 \ /

148 BYTE November 1977 Circle 91 on inquiry card.

www.americanradiohistory.com incoming signal we must count the number INITIALIZING THE 8253 COUNTERS FOR Listing 1: Software for of cycles of the signal during a precise pre- THEIR VARIOUS MODES THE 8253 IS servicing the program- CONNECTED IN A MEMORY MAPPED IO determined interval called the timebase. CONFIGURATION IN THIS APPLICATION AND mable frequency counter. In figure 3 we generate this timebase THEREFORE IS ADDRESSED THROUGH MEMORY REFERENCE INSTRUCTIONS using counters 2 and O. The 8080 c1>2 TTL clock, which is crystal controlled at 2.048

MHz, is input to counter 0 operating mode LXI H,P8253 ; INITIALIZE MEMORY POINTER 2. The output of this counter, which divides TO 8253 MODE WORD MVI M,COUNT 0 INITIALIZE COUNTER 0 TO 20,480, is a the count by precise 10 ms MODE 2 signal. The output of counter 0 is then input MVI M,COUNT 1 INITIALIZE COUNTER 1 TO MODE 2 to counter 2 which is operating in mode 1. MVI M,COUNT 2 INITIALIZE COUNTER 2 TO MODE 1 In this mode counter 2 counts the 10 ms pulses and produces a oneshot output which ; INITIALIZE COUNTER 2 WITH DIVIDER RATIO serves as a precise interval for counting the ; TO PRODUCE APPROPRIATE TIMEBASE unknown frequency.

This timebase interval is programmable DCX H ; POINT TO COUNTER 2 by the microprocessor and can be varied LXI B,TIMEBASE ; TIMEBASE = 3E8H FOR 1 OSEC MOV M,C , = 64H FOR 1SEC from 100 ms to 100 seconds by storing the MOV M,B , = OAH FOR 100MS appropriate divider ratio in counter 2. This oneshot action is initiated under software ; INITIALIZE COUNTER 1 WITH ALL is SINCE control by strobing the gate input of counter ; THIS COUNTER WILL BE COUNTING DOWN

2. Note that after the strobe the oneshot DCX H ; POINT TO COUNTER 1 action does not start until the next falling MVI M,OFFH MVI M,OFFH clock edge, so the interval is precise. Next the output of counter 2 goes to ; INITIALIZE COUNTER 0 WITH A DIVIDE BY 20480. the gate input of counter 1 which is oper- DCX H ; POINT TO COUNTER 0 ating in mode 2. This counter is allowed to MVI M,00H count the unknown frequency of the in- MVI M,50H coming signal during the period that the gate input is high. The rising edge of the ; THIS SUBROUTINE SERVICES THE FREQUENCY oneshot output of counter 2 is used to ; COUNTER INTERRUPT BY READING THE FREQUENCY IN interrupt the microprocessor and signal ; COUNTER 0 AND STARTING A NEW CYCLE that the frequency to digital conversion is complete. The processor then reads the COUNTDONE PUSH A SAVE REGISTERS WHICH ARE resultant count in counter 1. PUSH H MODIFIED BY THIS ROUTINE LXI H,P8253-2 POINT TO COUNTER 1 The software for servicing this progam- MOV A,M GET LSB OF RESULT mable frequency counter is shown in listing CMA COMPLEMENT THE DATA 1. Note that, since these are down counters, STA COUNTRSLT STORE IN COUNT RESULT MOV A,M GET MSB OF RESULT the software initializes counter 1 with all CMA COMPLEMENT DATA is and the value stored in this counter at STA COUNTRSLT+1 STORE AWAY any particular time is the complement of the MVI M,OFFH STORE ALL 1s IN MVI M,OFFH COUNTER 1 number of counts received from the un- OUT START CLEAR INTERRUPT AND known frequency. For example, if one count START NEW CYCLE POP H RESTORE STATUS has been received, counter 1 will contain POP A AND RETURN 1111 1111 1111 1110; the complement is EI 0000 0000 0000 0001. RET The maximum count with a 16 bit counter is 65,535. (Note: with time base THIS ROUTINE SERVICES AN OVERFLOW

constants in listing set up for a 1 second INTERRUPT FROM COUNTER 1 AND count period, this 16 bit range measures KEEPS A RUNNING TOTAL OF THE NUMBER OF OVERFLOWS frequencies from 1 Hz to 65,535 Hz). If FOR THIS CYCLE. OTHER SOFTWARE IN THE SYSTEM SHOULD CLEAR the rising edge of the output of counter 1 THIS QUANTITY WHEN A NEW CYCLE (which signals an underflow) is used to inter- ; IS STARTED. rupt the microprocessor, then the processor can count the number of interrupts in OVERFLOW: software. The processor can therefore keep a running total of the number of times the PUSH A ; SAVE SYSTEM STATUS counter has passed through 65,535 counts PUSH H LXI H2OVFLO ; INCREMENT OVFLO can and therefore adjust the final count INC M

appropriately. This will enable counts OUT CLINT ; CLEAR THE INTERRUPT much larger than 65,535 to be accumulated POP H POP A without having to use additional integrated EI circuits. RET

BYTE November 1977 149

www.americanradiohistory.com Stephen Wozniak Apple Computer 20863 Stevens Creek Blvd, B3C Cupertino CA 95014

SWEETIE: The 6502 Dream Machine

While writing Apple BASIC for a 6502 registers called RO to R15, actually imple-

microprocessor I repeatedly encountered a mented as 32 memory locations. RO doubles variant of Murphy's Law. Briefly stated, any as the SWEETI6 accumulator (ACC), R15 as routine operating on 16 bit data will require the program counter (PC), and R14 as the at least twice the code that it should. Pro- status register. R13 holds compare instruc grams making extensive use of 16 bit tion results and R12 is the subroutine return pointers (such as compilers, editors and stack pointer if SWEET16 subroutines are assemblers) are included in this category. In used. All other SWEETI6 registers are at the my case, even the addition of a few double user's unrestricted disposal. byte instructions to the 6502 would have SWEETI6 instructions fall into register

only slightly alleviated the problem. What I and nonregister categories. The register oper- really needed was a hybrid of the MOS Tech- ations specify one of the 16 registers to be nology 6502 and RCA 1800 architectures, a used as either a data element or a pointer to powerful 8 bit data handler complemented data in memory depending on the specific by an easy to use processor with an abun- instruction. For example, the instruction dance of 16 bit registers and excellent IN R RS uses RS as data and ST @R7 uses pointer capability. My solution was to imple- R7 as a pointer to data in memory. Except ment a nonexistent 16 bit "metaprocessor" for the SET instruction, register operations

in software, interpreter style, which I call only require one byte. The nonregister oper- SWEET] 6. This metaprocessor was sketched ations are primarily 6502 style branches at the end of my article in May 1977 BYTE, with the second byte specifying a ±127 byte and the purpose of this article is to fill in displacement relative to the address of the the details of SWEET16. following instruction. If a prior register SWEETI6 is based around sixteen 16 bit operation result meets a specified branch condition, the displacement is added to SWEET] 6's program counter, effecting a branch. SWEET16 is intended as a 6502 enhance- B9 00 LDA IN, Y Get a char. 300 02 ment package, not a stand alone processor. 303 CD CMP "M" for move? C9 A 6502 program switches to SWEET16 305 D009 BNE NOMOVE No, skip move. 307 20 00 08 JSR SW16 Yes, call SWEET16. mode with a subroutine call, and subsequent 41 MLOOP LD @R1 R1 holds source address. c. 30A code is interpreted as SWEET16 instruc- 30B 52 ST @R2 R2 holds dest. address. tions. The nonregister operation RTN re- w 30C F3 DCR R3 Decrement length. w turns the user program to the 6502's direct 30D 07 FB BNZ MLOOP Loop until done. 30F 00 RTN Return to 6502 mode. execution mode after restoring the internal 310 C9 C5 NOMOVE CMP "E" "E" char? register contents (A, X, Y, P and S). The BEQ EXIT Yes, 312 D013 exit. example of listing 1 illustrates how to use INY No, continue. 314 C8 SWEET16 in some program segment.

Note: Registers A, X, Y, P and S are not disturbed by SWEET16. Instruction Descriptions

Listing 1: Use of SWEET16 within an assembly language program is accom- The SWEET16 op code list is short and plished by executing a subroutine call to the SWEET16 entry point (address uncomplicated. Excepting relative branch 307 here). This call preserves the processor registers at the time of entry and displacements, hand assembly is trivial. All begins interpretive execution. End of interpretive execution is signaled by a register op codes are formed by combining RTN operation code of SWEET16, at which point all the processor registers two hexadecimal digits, one for the op code will be restored. and one to specify a register. For example,

150 BYTE November 1977

www.americanradiohistory.com op codes 15 and 45 both specify register RS Listing 2: SWEET16 assembly. The SWEETI6 program, assembled to reside while codes 23, 27 and 29 are all ST (store) at location 800 hexadecimal, is presented by this listing. The primary entry operations. Most register operations of point is at the beginning, location SW16. An alternate entry point if there SWEET16 are assigned to numerically adja- is no need to save processor registers is at location 803 in this assembly, cent pairs to facilitate remembering them. SW 16+3. Thus LD and ST are op codes 2n and 3n S'JEET16 INTERPRETER respectively, while LD @ and ST @ are codes 11:18 A.M. THII. MAY 12. 1977 00001 4n and 5n. 00002 00003 APPLE -II PSEUDO Operation codes 00 to OC (hexadecimal) 00004 MACHINE INTERPRETER are assigned to the 13 nonregister opera- 00005 00006 S. WOZNIAK 0), 00007 APPLE COMPUTER INC tions. Except for RTN (op code BK 00008 00009 (OA), and RS (B), the nonregister operations 00010 TITLE "SWEETI6 INTERPRETER' 00011 POL EPZ S0 are 6502 style relative branches. The second 00012 ROH EPZ S1 00010 R14H EPZ SID byte of a branch instruction contains a 00014 R15L EPZ SIE 02015 R15H EPZ S1F ±127 byte displacement value (in two's 00016 SI6PAG ECU SF7 00017 ORG S800 complement form) relative to the address of 0800: 20 74 09 00018 SW16 SR SAVE PRESERVE 6502 REG CONTENTS 0803: 68 00019 PLA the instruction immediately following the 0804: 85 I E 00020 STA P.15L INIT SWEETI6 PC 0806: 68 00021 PLA FROM RETURN branch. If a specified branch condition is 0807: 85 IF 00022 STA R15H ADDRESS 0809: 20 OF 08 00023 SW168 J SR SW16C INTERPRET AND EXECUTE met by the prior register operation result, 080C: 4C 09 08 00024 JMP SW16B ONE SWEETI6 INSTR. 080F: E6 lE 00025 SV16C INC R15L the displacement is added to the program 0811: DO 02 00026 BNE SW16D INCR SWEET16 PC FOR FETCH 0810: E6 IF 00027 INC R15H counter effecting a branch. Except for BR 08 15: A9 F7 00028 SVI6D LDA S16PAG 0817: 48 00029 PHA PUSH ON STACK FOR RTS (Branch always) and BS (Branch to Sub- eele: A0 00 00030 LDY 10 08 IA: BI lE 00031 LDA (R15L).Y FETCH INSTP. routine), the branch operation codes are 081C: 29 OF 00032 AND SF MASK REG SPECIFICATION 081E: 0A 00033 ASL A DOUBLE FOR 2-BYTE REG'S assigned in pairs, 081F: AA 00034 TAX TO X-REG FOR INDEXING complementary rendering 0820: 4A 00035 LSR A them easily remembered for hand coding. 0821: 51 I E 00036 EOR (RI5L).Y NOW HAVE 0820: F0 OB 00037 BEC TOBR IF ZERO THEN NON -REG OP For example, Branch if Plus and Branch 0825: 86 ID 00038 STX R14H INDICATE'PRIOR RESULT REG 0827: 4A 00039 LSR A if Minus are op codes 04 and 05, while 0828: 4A 00040 LSR A OPCODE2 TO L58'S 0829: 4A 00041 LSR A Branch if Zero and Branch if NonZero are 082A: A8 00042 TAY TO Y-REG FOR INDEXING 0828: B9 58 08 00043 LDA OPTBL-2.Y LOW -ORDER ADR BYTE op codes 06 and 07. 082E: 48 00044 PHA ONTO STACK 082F, 60 00045 RTS GOTO REG -OP ROUTINE

0800: E6 l E 00046 TORR INC R15L 0802: DO 02 00047 BNE TOBR2 INCR PC Theory of Operation 0804: E6 IF 00048 INC RISH 0806: BD 58 08 00049 TOBR2 LDA 8RT8L.X LOW-ORDER ADP BYTE SWEET16 execution mode begins with a 0809: 48 00050 PHA ONTO STACK FOR NON -REG OP 080A: AS ID 00051 LDA R14H 'PRIOR RESULT REG' INDEX subroutine call to SW16 (see listing 2, an 080C: 4A 00052 LSR A PREPARE CARRY FOR BC, BNC. 083D: 60 00053 RTS GOTO NON -REG OP ROUTINE assembly of SWEETI6). The user must in- 080E: 68 00054 RTNZ PLA POP RETURN ADDRESS 880F: 68 00055 PLA sure that the 6502 is in hexadecimal mode 0840: 20 7F 09 00056 JSR RESTORE RESTORE 6502 REG CONTENTS upon entry. [For those unfamiliar with the 0843, 6C lE 00 00057 JMP (RISL) RETURN TO 6502 CODE VIA PC 0846: 81 lE 00058 SETZ LDA C R15L I.Y HIGH - ORDER BYTE OF CONST. 0848: 95 01 00059 STA ROH,X 6502, arithmetic is either decimal or hexa- 084A: 88 00060 DEY 084B: 81 lE 00061 decimal depending on a program- LDA C R1SL I.Y LOW -ORDER BYTE OF CONSTANT (binary) 084D, 95 00 00062 STA ROL,X 084F: 98 00063 TYA Y-REG CONTAINS mable flag. . .CH] All 6502 registers are 0850: 38 00064 SEC saved at this time, to be restored when a 0851: 65 lE 00065 ADC RISL ADD 2 TO PC 0853, 85 IE 00066 STA RISL SWEET16 RTN instruction returns control 08551 90 02 00067 BCC SET2 0857: E6 IF 00068 INC R15H to the 6502. If you can tolerate indefinite 08591 60 00069 SET2 RTS 085A: 79 00070 OPTBL DFB SET-1 (IX) 6502 register contents upon exit, approxi- 0858: 70 00071 BRTBL DFB RTN-1 (0) 085C: 7B 00072 DFB LD-1 (2X) mately 30 ies may be saved by entering 085D: 14 00073 DFB BR- 1 (I) 085E: 84 00074 DFB ST-1 COX1 SWEET16 at location SW16 + 3. Because 085F: 15 00075 DFB BNC- 1 (2) 0860: 9G 00076 DFB LDAT-1 (4X) this might cause an inadvertent switch from 0861: 26 00077 DFB BC-I .(0) 0862, 8D 00078 DFB STAT-1 (SX) hexadecimal to decimal mode, it is advisable 0860: 29 00079 DFB BP-I (4) 0864: BE 00080 DFB LDDAT-1 (6X) to enter at SW16 the first time through. 0865: 30 00081 DFB BM-1 (5) 0866: C8 00082 DFB STOAT-1 (7X) After saving the 6502 registers, SWEET] 6 0867: 37 00083 DFB 13Z-1 (6) 0868: A6 00084 DFB POP-1 (8X) initializes its program counter (R15) with 0869, 40 00085 DFB BNZ-1 (7) 086A: D2 00086 DFB STPAT-I (9X) the subroutine return address off the 6502 08613: 49 00087 DFB BM I-1 (8) 086C: FC 00088 DFB ADD- I (AX) stack. SWEET16's program counter points 086D: 54 00089 DFB B881-1 (9) 086E: E5 00090 DFB SUB-1 (8X) to the location preceding the next instruc- 086F: 7C 00091 DFB BK-I (A) 0870: AA 00092 DFB POPD- 1 (CX) tion to be executed. Following the subrou- 087 Is 5F 00093 DFB RS-I (B) 0872: E7 00094 DFB CPR-1 (DX) tine call are 1 byte, 2 byte, or 3 byte long 0873, 0A 00095 DFB BS-I (C) 0874: 95 00096 DFB INR-I (EX) SWEET16 instructions, stored in ascending 0875: 5E 00097 DFB NUL-1 ( D)

BYTE November 1977 151 www.americanradiohistory.com Listing 2, continued: memory locations like 6502 instructions.

DC The main loop at SW16B repeatedly calls 0876: 00098 DFB DCR- I (FM 0877: 5E 00099 DFB NUL- I (E) the "execute instruction" routine at SW16C 0878: 5E 00108 DFB NUL -1 (UNUSED) 0879: 5E 00181 DFB NUL -1 (F) which examines one op code for type and 087A: 10 CA 00102 SET BPL SETZ ALWAYS TAKEN 087C: 85 00 80103 LD LDA ROL.X branches to the appropriate subroutine to 00104 BK ECU -1 087E1 85 00 00105 STA ROL execute it. 0880: 85 01 00106 LDA ROH.X, MOVE RX TO RO 08821 85 01 00107 STA ROH Subroutine SW16C increments the pro- 88841 60 00108 PTS 0885: A5 00 00109 ST LDA POL gram counter (R15) and fetches the next op 0887: 95 80 00110 STA ROL.% MOVE RO TO RX 0889: AS 01 00111 LDA POH code which is either a register operation of 0888: 95 01 00112 STA ROH.X 088D: 60 00113 RTS the form OP REG (2 hexadecimal digits) 088E: AS 00 00114 STAT LDA ROL 0890: 81 00 00115 STAT2 STA (ROL.X STORE BYTE INDIRECT with OP between hexadecimal 1 and F, or 0892: AO 00 00116 LDY 050 0894: 84 ID 00117 STAT3 STY RI4H INDICATE RO IS RESULT REG a nonregister operation of the form 0 OP 8896: F6 00 00118 INP INC ROL.X 0898: DO 02 00119 BNE INR2 INCR RX with OP between hexadecimal 0 and D. 089A: F6 01 00120 INC ROH.X 089C1 60 00121 11492 RTS Assuming a register operation, the register 089D: AI 00 00122 LDAT LDA (ROL.X LOAD INDIRECT (RX) 089F: 85 00 00123 STA ROL TO PO specification is doubled to account for the 08A1: AO 00 00124 LOY 050 08A3: 84 01 00125 STY ROH ZERO HIGH -ORDER RO BYTE 2 byte SWEETI6 registers and placed in the 08A5: FO ED 00126 BEO STAT3 ALWAYS TAKEN 08A71 AO 00 00127 POP LDY 080 HIGH ORDER BYTE = 0 X register for indexing. Then the instruc- 08A9: FO 06 00128 BEC POP2 ALWAYS TAKEN 08AB: 20 DD 08 00129 POPD JSR DCR DECR RX tion type is determined. Register operations 08AE: Al 00 00130 LDA (POL.X POP HIGH -ORDER BYTE 0R% 0860: AS 00131 TAY SAVE IN Y -REG place the doubled register specification in 08811 20 DD 08 00132 POP2 JSR DCR DECK RX 08841 Al 00 00133 LDA (ROL.X LW! -ORDER BYTE the high order byte of R14 indicating the 0886: 85 00 00134 STA ROL TO RO 0888: 84 01 00135 STY POH "prior result register" to subsequent branch 08BA1 AO 00 00136 POP3 LDY 050 INDICATE RO AS LAST 08BC: 84 ID 00137 STY 814H RESULT REG instructions. Nonregister operations treat the 088E: 60 00138 RTS 088F1 20 9D 08 00139 LDDAT JSR LDAT LOW BYTE TO RO. INCR RX register specification (right -hand half -byte) 08C21 AI 00 00140 LDA (ROL.X HIGH-ORDER BYTE TO RO 08C41 85 01 00141 STA ROH as their op code, increment the SWEETI6 08C61 4C 96 08 00142 JMP INR INCR RX 08C9: 20 8E 08 00143 STOAT JSR STAT STORE INDIRECT LOW-ORDER PC to point at the displacement byte of 08CC: AS 01 00144 LDA ROH BYTE AND 1NCR RX. THEN 08CE: 81 00 00145 STA (ROL.X STORE HIGH-ORDER BYTE. branch instructions, load the A -Reg with the 0800: 4C 96 08 00146 JMP INR INCR RX AND RETURN 0803: 20 DD 08 00147 STPAT JSR DCR DECR RX "prior result register" index for branch 0806: AS 00 00148 LDA ROL 0808: 81 00 00149 STA (ROL.X STORE RO LOW BYTE RX condition testing, and clear the Y -Reg. 08DA: 4C BA 08 00150 JMP POP3 INDICATE RO AS LAST 08DD: 85 00 00151 DCR LDA ROL.X RESULT REG 08DF: DO 02 00152 BNE DCR2 DECR PX 08E1: D6 01 00153 DEC ROH.X When Is an RTS Really a JSR? 08E3: D6 00 00154 DCR2 DEC ROL.% 08E5: 60 00155 RTS 08E6: AO 00 00156 SUB LDY OSO RESULT TO RO Each instruction type has a corresponding 08E81 38 00157 CPR SEC NOTE Y-REG e 13.2 FOR CPR 08E91 AS 00 00158 LDA ROL subroutine. The subroutine entry points are 08E8: F5 00 00159 SBC ROL.X 08ED: 99 00 00 00160 STA ROL.Y RO -RX TO RY stored in a table which is directly indexed by 08F0, AS 01 00161 LDA ROH 08F2: F5 01 00162 SBC ROH.X the op code. By assigning all the entries to a 08F4, 99 01 00 00163 SUB2 STA POH.Y 08F7: 98 00164 TYA LAST RESULT PEG*2 common page, only a single byte of address 08F81 69 00 00165 ADC 050 CARRY TO LOB 08FA: 85 ID 00166 STA RI4H need be stored per routine. The 6502 in- 08FC: 60 00167 PTS 08FD1 AS 00 00168 ADD LDA ROL direct jump might have been used as follows 08FF: 75 00 00169 ADC ROL.X 0901: 85 00 00170 STA ROL RO0RX TO AO to transfer control to the appropriate 0903: AS 01 00171 LDA POH 0905: 75 01 00172 ADC ROH.X subroutine: 0907: AO 00 00173 LDY 050 RO FOR RESULT 0909: FO E9 00174 BEC SUB2 FINISH ADD LDA #ADRH High order address byte 0908: AS IE 00175 B5 LDA P. 15L NOTE X -REG IS 1202! 0900: 20 90 08 00176 JSP STAT2 PUSH LOW PC BYTE VIA R12 STA IND +1 09101 AS IF 00177 LDA PI5H 0912: 20 90 08 00178 JSR STAT2 PUSH HIGH -ORDER RC BYTE LDA OPTBL,X Low order byte 0915: 18 00179 BP CLC 0916: BO BE 00180 BNC BCS BNC2 NO CARRY TEST STA IND 09181 BI IE 00181 BRl LDA (R15L).Y DISPLACEMENT BYTE 091A, 10 01 00182 BPL BR2 JMP (IND) 091C; 88 00183 DEY 0910: 65 IE 00184 BR2 ADC RISC ADD TO PC 091F: 85 IE 00185 STA P15L To save code the subroutine entry address 0921: 98 00186 TYA 09221 65 IF 00187 ADC RISH (minus 1) is pushed onto the stack, high 0924: 85 IF 00188 STA FISH 0926: 60 00189 DNC2 RTS order byte first. A 6502 RTS (ReTurn from 0927: BO EC 00190 BC BCS BR 0929: 60 00191 RTS Subroutine) is used to pop the address off 092A1 OA 00192 BP ASL A DOUBLS. RESULT-REG INDEX 09281 AA 00193 TAX TO X -REG FOR INDEXING the stack and into the 6502 program counter 092C: 85 01 00194 LDA POH.X TEST FOP PLUS 092E: 10 E8 00195 BPL BR! BRANCH IF SO (after incrementing by 1). The net result is 0930: 60 00196 RTS 0931: OA 00197 BM ASL A DOUBLE RESULT -REG INDEX that the desired subroutine is reached by 0932: AA 00198 TAX 0933: 85 01 00199 LDA ROH.X TEST FOR MINUS executing a subroutine return instruction! 09351 30 El 00200 BMI BRI 0937: 60 00201 PTS [This ironic situation is an example of what 09381 OA 00202 BL ASL A DOUBLE RESULT-REG INDEX 0939: AA 00203 TAX is commonly referred to as "cleverness. "1 093A1 85 00 00204 LDA ROL.X TEST FOR ZERO 093C1 15 01 00205 ORA FOH.X. (BOTH BYTES) 093E: FO D8 00206 BEC BRI BRANCH IF SO 0940: 60 00207 RTS Op Code Subroutines 0941: OA 00208 BNZ ASL A DOUBLE RESULT -!EEG INDEX 0942: AA 00209 TAX The register operation routines make use 0943: 85 00 00218 LDA POL.X TEST FOR NONZERO 0945: 15 01 00211 ORA ROH.N (BOTH BYTES) of the 6502 "zero page indexed by X" and 0947: DB CF 00212 ONE BRI DPANCH IF SO 0949: 60 00213 PTS "indexed by X indirect" addressing modes 094A: OA 00214 BM1 ASL A DOUBLE 1EECtS.T -PEG INDEX 094B: AA 00215 TAX to access the specified registers and indirect 094C: 85 00 00216 LOA ROL.X CHECI( BOTH BYTES 094E: 35 01 00217 AND ROH.X FOR SFF (MINI'S I) data. The "result" of most register ops is left

152 BYTE November 1977

www.americanradiohistory.com The Art of Computer Programming

Praised by many critics as the best books in their field, The Art of Computer Pro- I nu MINI n.: gramming, Volumes I, II and Ill, are part of a projected seven volume omnibus survey of :u.GODf171.vb computer science now being completed by Donald E Knuth. - -- Volume I, Fundamental Algorithms, begins with a thorough discussion of the .i1.111\l :1tlaill.li. t u;Olörn us mathematics used in computer programming, followed by a treatment of informa- tion structures, stacks, arrays, linked lists, dynamic storage allocation, and trees. 634 pp; $20.95. SOItTIO AND \D - -- Volume II, Seminumerical Algorithms, is concerned with random numbers, statisti- SEAltCHHI cal tests, random sequences, as well as arithmetic (floating point and multiple precision), polynomials, and rational arithmetic. 624 pp; $20.95. Volume III deals with Searching and Sorting, and as the name implies, the emphasis ------The Acoustical Foundations of Music, is on algorithms for sorting, including combinatorial properties of permutations, internal subtitled Musical Sound: a lucid account of and Also is a on sequential sorting, optimum sorting, external sorting. included section its properties, production, behavior, and searching, hashing, digital searching, and more. 722 pp; $20.95. reproduction, by John Backus. One of the A hypothetical assembly language called MIX has been developed by the author to problems involved in trying to produce illustrate programming examples throughout the series. MIX is easily convertible to other music by computer is the scarcity of useful assembly languages. reference material on the basic theory of and is one from Prof Knuth writes with style wit (among many memorable quotes sound generation and musical acoustics. McCall's This classic on the reference shelf everyone Cookbook!). work belongs of John Backus has filled this gap with The seriously interested in computer science. Acoustical Foundations of Music, a readable and informative guide that covers the physiological properties of sound, the ear and Some of the Best for Beginners and its perception of sounds, the effect of acoustic environment, the acoustical behavior of musical instruments, and the The various applications of electronics and HO\r,'j Acoustical computers to the production, reproduction ;- Foundations and composition of music. of NIt4sic The book assumes some slight know- k.kRZ.6.. ledge of music on the part of the reader, but covers enough elementary physics and acoustics to orient the reader who has no knowledge of physics. This clear and lively exposition of music's physical basis will be invaluable to all those experimenters interested in - -- Computer Science - A First Course. - -- Understanding Microcomputers and creating music by computer. 312 pages, The title of this book belies its thoroughness Small Computer Systems by Nat and only $9.95 in hardcover. and rigor. Computer Science: A First Course Wadsworth. What does "hexadecimal" is one of the most complete and well laid mean? What is Boolean Logic? What's the - --Your Home Computer, by James out computer science books we've seen in difference between a PROM and an EROM? White, is a clearly written nontechnical quite a while. This 760+ page book is for These questions and more are answered in description of personal computers that the serious experimenter who wants a de- Nat Wadsworth's Understanding Microcom- requires no prior knowledge of computers finitive treatment of every aspect of soft- puters and Small Computer Systems. You'll or electronics. The emphasis is on under- ware design and development. Chapters deal learn about the basic operation of a micro- standing; over 100 illustrations are included. with algorithms, flowcharts, looping struc- computer, the types of instructions that Topics include: computing and you; com- tures, stepwise decomposition, trees, storage microcomputers are able to carry out, munication inside a computer; computer concepts, interpreting and compiling, data machine language and higher level language thought processes; fixed memory; inputs processing, numerical processing, character programming, input and output devices, etc. and outputs; peripherals; systems com- strings, and a discussion of SAMOS, a The book concludes with a discussion of ponents; how to choose a microcomputer; special hypothetical computer system used system considerations. The combined index and so on. Your Personal Computer is the throughout the book to illustrate computer and glossary is a useful bonus. If you're a ideal book for readers who thought they science principles. Computer Science: A beginner in the personal computing field, could never understand how computers First Course makes an excellent source get a copy today! This 300 page book is work. And the best part is that it's easy book. $16.95, Hardcover. only $9.95. and fun to read. Yours for $6.

Check Payment method: check is enclosed Send to: _My BITS, Inc -Bill my MC No. Exp. date VISA' 70 Main Street _Bill my BAC No. Exp. date Peterborough NH 03458 Name Total for all books checked $

Agigiress Postage, 50 cents per book for books $

State Zip Code Grand Total $

$jgnature Prices shown are subject to change without notice. All orders must be prepaid. 1 You may photocopy this page if you wish to leave your BYTE intact. In unusual cases, processing may exceed 30 days. J

Circle 12 on inquiry card. BYTE November 1977 153 www.americanradiohistory.com Listing 2, continued: in the specified register and can be sensed by subsequent branch instructions since the 0950: 49 FF 00218 EOR SFF register specification is saved in the high 0952: FO C4 00219 BEB BPI BRANCH IF 50 0954: 60 00220 RTS order byte of R14. This specification is 0955: OA 00221 BNM1 ASL A DOUBLE RESULT -REG INDEX 09561 AA 00222 TAX changed to indicate RO (ACC) for ADD and 09571 85 00 00223 LDA ROL,X 09591 35 01 00224 AND ROH,X CHB BOTH BYTES FOR NO SFF SUB instructions and R13 for the CPR 0958: 49 FF 00225 EOR SFF

095Dt DO B9 00226 BNE BRI BRANCH IF NOT MINUS 1 (compare) instruction. 095F: 60 00227 NUL RTS 0960: A2 18 00228 PS LDX 0518 12.2 FOR P12 AS 5TK PNTR Normally the high order R14 byte holds 09621 20 DD 08 00229 JSR DCR DECR STACH POINTER 0965: Al 00 00230 LDA (ROL,X) POP HIGH RETURN ADR TO PC the "prior result register" index times 2 to 0967: 85 IF 00231 STA RISH 09691 20 DD 08 00232 JSR DCR SAME FOR LOW -ORDER BYTE account for the 2 byte SWEET16 registers, 096C: Al 00 00233 LDA (ROL,X) 096E1 85 1E 00234 STA R15L and thus the least significant bit is zero. If 09701 60 00235 RTS 097 h 4C 3E 08 00236 RTN JMP RTNZ ADD, SUB or CPR instructions generate 00237 . 00238 REG SAVE/RESTORE ROUTINES carries, then this index is incremented, set- 00239 FOR NON- APPLE -11 SYSTEMS 00240 ting the least significant bit, which becomes 00241 ASAV EPZ S45 00242 XSAV EPZ S46 a carry flag. 00243 YSAV EPZ S47 00244 PSAV EPZ S48 The SET instruction increments the pro- 09741 85 45 00245 SAVE STA ASAV 09761 86 46 00246 STX XSAV SAVE 6502 REG CONTENTS. gram counter twice, picking up data bytes 0978t 84 47 00247 STY YSAV 097A1 08 00248 PHP for the specified register. In accordance with 097B: 68 00249 PLA 097C, 85 48 00250 STA PSAV 6502 convention, the low order data byte 097 Et 60 00251 RTS 097F, AS 48 00252 RESTORE LDA PSAV precedes the high order byte. 0981: 48 00253 PHA 09821 AS 45 00254 LDA ASAV Most SWEET16 nonregister operations 0984, A6 46 00255 LDX XSAV RESTORE 6502 REG CONTENTS. 09861 A4 47 00256 LDY YSAV are relative branches. The corresponding 09881 28 00257 PLP 0989, 60 00258 RTS subroutines determine whether or not the "prior result" meets the specified branch Table 1: condition and if so update the SWEET16 program counter by adding the displacement SWEET16 OP CODE SUMMARY value ( -128 to +127 bytes). Register Ops Nonregister Ops The RTN operation restores the 6502 register contents, pops the subroutine return 00 RTN (Return to 6502 mode) in SET Rn Constant (Set) 01 BR ea (Branch always) stack and jumps indirect through the 2n LD Rn (Load) 02 BNC ea (Branch if No Carry) SWEET16 program counter register. This 3n ST Rn (Store) 03 BC ea (.Branch if Carry) transfers control to the 6502 at the instruc- 4n LD @Rn (Load indirect) 04 BP ea (Branch if Plus) 5n ST @Rn (Store indirect) 05 BM ea (Branch if Minus) tion immediately following the RTN in- 6n LDD @Rn (Load double indirect) 06 BZ ea (Branch if Zero) struction. 7n STD @Rn (Store double indirect) 07 BNZ ea (Branch if NonZero) The BK operation actually executes a 8n POP @Rn (Pop indirect) 08 BM1 ea (Branch if Minus 1) 9n STP @Rn (Store pop indirect) 09 BNM1 ea (Branch if Not Minus 1) 6502 break instruction (BRK), transferring An ADD Rn (Add) OA BK ea (Break) control to the interrupt handler. Bn SUB Rn (Sub) OB RS (Return from Subroutine) be Cn POPD @Rn (Pop double indirect) OC BS ea (Branch to Subroutine) Any number of subroutine levels may Dn CPR Rn (Compare) OD (Unassigned) implemented within SWEET16 code via the En INR Rn (Increment) OE (Unassigned) BS (Branch to Subroutine) and RS (Return Fn DCR Rn (Decrement) OF (Unassigned) from Subroutine) instructions. The user must initialize and otherwise not disturb SWEET16 Operation Code Summary: Table 1 summarizes the list of SWEET16 opera- tion codes, which are explained in further detail one by one in the descriptions which R12 if the SWEET16 subroutine capability follow the table. The program of listing 2 implements the execution of these interpretive is used since it is utilized as the automatic codes after a call to the entry point SW16. Return to the calling program and normal subroutine return stack pointer. noninterpretive operation is accomplished with the RTN mnemonic of SWEET16. Memory Allocation and User Modifications SWEET16 - REGISTER OPERATIONS The only storage that must be allocated for SWEET16 variables are 32 consecutive SET Rn, Constant 1 n low high (Set) ( locations in page zero for the SWEET16 constant registers, four locations to save the 6502 The 2 byte constant is loaded into Rn (n = 0 to F, hexadecimal) and branch condi- register contents, and a few levels of the tions set accordingly. The carry is cleared. 6502 subroutine return address stack. If you Example: don't need to preserve the 6502 register 15 34 AO SET R5, A034 R5 now contains A034 contents, delete the SAVE and RESTORE subroutines and the corresponding sub- routine calls. This will free the four page LD Rn 2 n (Load) zero locations ASAV, XSAV, YSAV and The ACC (RO) is loaded from Rn and branch conditions set according to the data PSAV. transferred. The carry is cleared and the contents of Rn are not disturbed. You may wish to add some of your own Example: 15 34 AO SET R5, A034 25 LD R5 ACC now contains A034 Text continued on page 159

154 BYTE November 1977 www.americanradiohistory.com C e S u^ : ,.:,i:-y C,ird FINALLY. A State -of -the -Art 7bol For Learning Software Design. And at an affordable price. The ST Rn 3 n (Store) Modu -LearnTM home study course from Logical Services. The ACC (RO) is stored into Rn and branch conditions set according to the data Now you can learn microcomputer transferred. The carry is cleared and the ACC contents are not disturbed. programming in ten comprehensible Example: lessons. At home. In your own time. At 25 LD R5 Copy the contents your own pace. 36 ST R6 of R5 to R6. You learn to solve complex problems by breaking them down into easily programmed modules. Prepared by LD @Rn 4 n (Load indirect) professional design engineers, the Modu -LearnTM course presents sys- The low order ACC byte is loaded from the memory location whose address resides tematic software design techniques, in Rn, and the high order ACC byte is cleared. Branch conditions reflect the final structured program design, and prac- ACC contents which will always be positive and never minus 1. The carry is cleared. tical examples from real 8080A After the transfer, Rn is incremented by 1. micro -computer applications. All in a Example: modular sequence of 10 lessons .. . 15 34 AO SET R5, A034 more than 500 pages, bound into one 45 LD @R5 ACC is loaded from practical notebook for easy reference. memory location A034 and R5 is incremented You get diverse examples, problems, to A035. and solutions. With thorough back- ground material on micro -computer architecture, hardware /software trade- offs, and useful reference tables. All ST @Rn 5 n (Store indirect) for only $49.95. The low order ACC byte is stored into the memory location whose address resides in For $49.95 you learn design tech- Rn. Branch conditions reflect the 2 byte ACC contents. The carry is cleared. After niques that make software work for the transfer, Rn is incremented by 1. you. Modu -LearnTM starts with the Example: basics. Our problem -solution ap- 15 34 AO SET R5, A034 Load pointers R5 and R6 proach enables you to "graduate" as 16 22 90 SET R6, 9022 with A034 and 9022. a programmer. 45 LD @R5 Move a byte from location See Modu -LearnTM at your local com- 56 ST @R6 A034 to location 9022. Both puter store or order now using the pointers are incremented. coupon below.

Please send the Modu -Learn' "course for LDD @Rn 6 n (Load double byte indirect) me to examine. Enclosed is $49.95 (plus $2.00 postage and handling) or my The low order ACC byte is loaded from the memory location whose address resides Mastercharge /Bankamericard authoriza- in Rn, and Rn is then incremented by 1. The high order ACC byte is loaded from the tion. memory location whose address resides in the (incremented) Rn and Rn is again incremented by 1. Branch conditions reflect the final ACC contents. The carry is Name.. cleared. Address: Example: City. State: 15 34 AO SET R5, A034 65 LDD @R5 The low order ACC byte is Card # loaded from location A034, the high order byte from Expiration date. location A035. R5 is incre- Signature mented to A036.

STD @Rn 7 n (Store double byte indirect)

The low order ACC byte is stored into the memory location whose address resides in Rn, and Rn is then incremented by 1. The high order ACC byte is stored into the memory location whose address resides in (the incremented) Rn and Rn is again incremented by 1. Branch conditions reflect the ACC contents which are not dis- turbed. The carry is cleared. Example: 711 Stierlin Road 15 34 AO SET R5, A034 Load pointers R5 and R6 Mountain View, CA 94043 16 22 90 SET R6, 9022 with A034 and 9022. Move (415) 965 -8365 65 LDD @R5 double byte from locations 76 STD @R6 A034 and A035 to locations 9022 and 9023. Both pointers are incremented by 2. SERVICESLOGICAL INCORPORATED

By 11. No,n.i,r. i,;; 155

www.americanradiohistory.com L iciu 'Jo uil 1111111Ify

IT ALL ADDS UP TO EDUCATIONAL

The creators of the original Pocket Calculator came Book now present two fun filled new game books for use With trsT incredible machine that tins found POP @Rn 8 n (Pop indirect) place m almost every home The low order ACC byte is loaded from the memory location whose address resides in Rn after Rn is decremented by 1 and the high order ACC byte is cleared. Branch conditions reflect the final 2 byte ACC contents which will always be positive and never minus 1. The carry is cleared. Because Rn is decremented prior to loading the ACC, single byte stacks may be implemented with the ST @Rn and POP @Rn opera- tions (Rn is the stack pointer). Example: 15 34 AO SET R5, A034 Init stack pointer. 10 04 00 SET RO, 4 Load 4 into ACC. 35 ST @R5 Push 4 onto stack. 10 05 00 SET RO, 5 Load 5 into ACC. 35 ST @R5 Push 5 onto stack. 10 06 00 SET RO, 6 Load 6 into ACC. 35 ST @R5 Push 6 onto stack. 85 POP @R5 Pop 6 off stack into ACC. 85 POP @R5 Pop 5 off stack. 85 POP @R5 Pop 4 off stack.

STP @Rn 9 n (Store pop indirect)

The low order ACC byte is stored into the memory location whose address resides in Rn after Rn is decremented by 1. Then the high order ACC byte is stored into the memory location whose address resides in Rn after Rn is again decremented by 1. THE KIDS' POCKET CALCULATOR Branch conditions will reflect the 2 byte ACC contents which are not modified. STP GAME BOOK @Rn and PLA @Rn are used together to move data blocks beginning at the greatest by Edwin Schlossberg and address and working down. Additionally, single byte stacks may be implemented John Brockman with the STP @Rn and LDA @Rn ops. A quick trip through elementary mathe- matics- fun and games with real purpose Example: The first book of its kind for kids from kindergarten through college Illustrated 14 34 AO SET R4, A034 Init pointers. with line drawings and cartoons 15 22 90 SET R5, 9022 $6 95 hardcover 53 95 paperbound 84 POP @R4 Move byte from A033 95 STP @R5 to 9021. 84 POP @R4 Move byte from A032 95 STP @R5 to 9020. NE POCkE BOOp ADD Rn A n (Add) The contents of Rn are added to the contents of the ACC (RO) and the low order 16 bits of the sum restored in ACC. The 17th sum bit becomes the carry and other ..... f .'..I. branch conditions reflect the final ACC contents. Example: 10 34 76 SET RO, 7634 Init RO (ACC) 11 27 42 SET R1, 4227 and R1. Al ADD R1 Add R1 (sum = B85B, carry clear) AO ADD RO Double ACC (RO) to 70B6 with carry set.

SUB Rn B n (Subtract)

The contents of Rn are subtracted from the ACC contents by performing a two's THE POCKET CALCULATOR complement addition: GAME BOOK #2 by Edwin Schlossberg and ACC ACC + Rn + 1 John Brockman The low order 16 bits of the are restored in the ACC. The 17th sum Even more popular in approach than its subtraction bit famous predecessor, this book is becomes the carry and other branch conditions reflect the final ACC contents. If the simpler, more accessible, and its games 16 bit unsigned ACC contents are greater than or equal to the 16 bit unsigned Rn are more mathematically basic contents then the carry is set, otherwise it is cleared. Rn is not disturbed. Illustrated with line drawings and cartoons Example: 56 95 hardcover $3 95 paperbound 10 34 76 SET RO, 7634 !nit RO (ACC) 11 27 42 SET R1, 4227 and R1. Al SUB R1 Subtract R1 (diff = 340D VI WILLIAM MORROW with carry set) AO SUB RO Clears ACC (RO)

156 BYTE November 1977

www.americanradiohistory.com Circle 16 on inquiry card.

POPD @Rn C n (POP Double byte indirect)

Rn is decremented by 1 and the high order ACC byte is loaded from the memory location whose address now resides in Rn. Then Rn is again decremented by 1 and the low order ACC byte is loaded from the corresponding memory location. Branch conditions reflect the final ACC contents. The carry is cleared. Because Rn is decre- mented prior to loading each of the ACC halves, double byte stacks may be imple- Shopping for a computer mented with the STD @ Rn and POPD @ Rn operations. (Rn is the stack pointer). Example: at the ByteShop 15 34 AO SET R5, A034 Init stack pointer. is almost as 10 12 AA SET RO, AA12 Load AA12 into ACC. 75 STD @R5 Push AA12 onto stack. much fun as building one. 10 34 BB SET RO, BB34 Load BB34 into ACC. Computers are fun. And afford- 75 STD @R5 Push BB34 onto stack. able. Thousands of people are 10 56 CC SET RO, CC56 Load CC56 into ACC. already using personal computers 75 STD @R5 for TV games, video color C5 POPD @R5 Pop CC56 off stack. graphics, digital music and lots of C5 POPD @R5 Pop BB34 off stack. things nobody ever dreamed of C5 POPD @R5 Pop AA12 off stack. -till now. Until we carne along the toughest part about getting started with computers was shopping for CPR Rn D n (Compare) one. Now you can visit a Byte Shop 1 and put your hands on a wide The ACC (RO) contents are compared to Rn by performing the 16 bit binary sub- variety of personal, hobby and traction ACC -Rn and storing the low order 16 difference bits in R13 for subsequent business computers. branch tests. If the 16 bit unsigned ACC contents are greater than or equal to the 16 bit unsigned Rn contents then the carry is set, otherwise i t is cleared. No other Arizona Boulder 211411 30th Si. registers, including ACC and Rn, are disturbed. l'horni\ Ea SI 813 N. Scottsdale 1(d. Plorida Example: Piren i\ \l'esl ('urea Beach 12654 N. 2511, nrive 1325 N. Atlantic Ave., Suite 4

15 34 AO SET R5, A034 Pointer to memory. Tucson I I. Lauderdale 16 BF AO SET R6, AOBF Limit address. 2612 F. Broadway 11144 E. ();ikl:ind !'ark C a lik,r ria Mi.uni 10 00 00 LOOP SET RO, 0 Zero data. Berkeley 71125 Bird Road 75 STD @R5 Clear 2 locs, incr R5 by 2. 1514 University Ave. Indiana 25 LD R5 Compare pointer R5 Burbank Indianapolis North D6 CPR R6 to limit R6. 1812 W. Burbank Blvd. 5947 I. .82nd Si. Campbell Kansas 02 F8 BNC LOOP Loop if carry clear. 2626 Irru ir .ove. Mission Ui.abla Va llcy 5815 Johnson Drive 29139 N. 11 :tin SI. Minnosota fairtield Fagan 119 Oak Street 1434 Yankee Uaaudle Rd.

INR Rn E n (Increment) I remo Montana 3139 E. McKinley Ave. Billings

I laya and 12111 (:rand Ave., Suite 3 The contents of Rn are incremented by 1. The carry is cleared and other branch 1122 "li' Slew) New York conditions reflect the incremented value. Los An} les Levittown 3(13(1 W. Olympic Blvd. 2721 Hempstead Turnpike Example: I.awnd.de Rochester

1 6508 Hawthorne Blvd. 15 34 AO SET R5, A034 Init R5 (pointer) 264 Park Avenue Lim: Beach Ohio 10 00 00 SET RO, 0 Zero to RO. 5433 E. Slauns Si. Boeky River 55 ST @R5 Clears toc A034 and incrs Marina net Rey 19524 Center Ride,: RJ. R5 to A035. 4658 B Oregon Admiralty Way Beaverton E5 INR R5 Incr R5 to A036 Mountain Viese 3482 S \V Cedar Hills Blvd. 55 ST @R5 Clears toc A036 (not A035) 11163 \V. El Camino (teal Portland Palo Alto 2033 SW 4th 2233 El ('amino Real Pennsylvania Pasadena Bryn Mawr 496 W. Lake Ave. 1045 W. Lancaster Ave. Placentia F n North Carolina DCR Rn (Decrement) 123 E. Yorba Linda Radeich S acr.un e n lo 1 21 3 Hillsh Oruurlt Street 6041 Greenback Lam The contents of Rn are decremented by 1. The carry is cleared and other branch South Carolina San niego conditions reflect the decremented value. Columbia 8250 Vickers -11 2018 Green St. Example: (Clear nine bytes beginning at toc A034) San I ernautdo Valley 18424 Ventura Blvd. Utah Sali Lake City 15 34 AO SET R5, A034 Init pointer. San irnt cisco 261 S. SlateSI. 14 09 00 SET R4, 9 Init count. 321 Pacific Avs. Santa Barbara Washington 10 00 00 SET RO, 0 Zero ACC. 4 \Vest Mission Bellevue 147111 NI: 55 LOOP ST @R5 Clear a mem byte. Stockton 2011, Ave. F4 DCR R4 Decr count. 7910 N. I'Idoradu Si. Canada Thousand Oaks V;i nca rover 07 FC BNZ LOOP Loop until zero. 27117 Thousand Oaks Blvd 2151 Bnrrard St. Ventura Winnipeg 1555 AlorscAv. 665 Century SI. SWEET16 Nonregister Instructions Westminster Japan 14300 Beach Blvd. Tukva Colorado Tow a Bldg., I -5 -9 RTN 0 0 (Return to 6502 mode) Arapahos County S u lu kanda 3464 S. Acuna St. Control is returned to the 6502 and program execution continues at the location immediately following the RTN instruction. The 6502 registers and status conditions are restored to their original contents (prior entering SWEET16 mode). k3YTE SHOP the affordable computer store

BYTE November 1977 157

www.americanradiohistory.com Circle 135 on inquiry card.

WARBLE ALARM CAR -VAN CLOCK ELAPSED TIMER SECDNOS DISPIAYSWTCN WITH HEADLIGHT ALARM BR ea 0 1 d d (Branch Always) 9 MINUTE SNOOZE ALARM

SIMPLE (WIRE HOOK-UP An effective address (ea) is calculated by adding the signed displacement byte (dd) JUMBO ALFA DISPLAY to the program counter. The program counter contains the address of the instruction immediately following the BR, or the address of the BR operation plus 2. The dis- 1 TO 5! MINUTE COUNTDOWN TIME^ ^NNSSIMULTANEOUSLY placement is a signed two's complement value from -128 to +127. Branch conditions WITH DLOCKI are not changed. Note that effective address calculation is identical to that for 6502 RUGGED MIS CASE relative branches. COMPLETE KIT $35.95 DUARTZ CRYSTAL ACCURACY Some examples: ASSEMBLED $45.95 dd =$80 ea =PC +2 -128 dd =$81 ea =PC+2 -127 DIGITAL AUTO INSTRUMENTS dd =$FF ea= PC+2 -1 .1 TACHOMETER SEVEN MODELS! dd =$00 ea= PC +2+0 .2 WATER TEMP. KIT INCLUDES: .3 FUEL LEVEL CASE S MI HARDWARE dd =$01 ea= PC +2 +1 .4 6PEEUOME-ER y i PRESEUR E4 TEMP SENDERS AESRAEDRO MAnPTRUSYD dd =$7E ea =PC +2 +126 .5 OIL PRESSURE FEATURES: .6 OIL TEMP, {,. dd =$7F ea =PC +2 +127 .1 BATTERY MONITOR "' R" ORANGE LEO'S Example: ADO 510 FOR REQUIRED SPEED 5ENDER . 515 FOR SPEED SENDER ALONE 01 BR $352 KIT: $49.95 ASSEMBLED: $59.95 $300: 50 ELECTRONIC 'PENDULUM' CLOCK

SWING PENDULUM O 2 d d (Branch if No Carry) Jy BNC ea 4. ,1 [ 7" HOURS AND MINUTES DISPLAY '.`-.,< `. {k TIME SET PUSH BUTTONS A branch to the effective address is taken only if the carry is clear, otherwise execu- ALARM FEATURE tion resumes as normal with the next instruction. Branch conditions are not changed. KIT -UNFINISHED CASE S59.95 ASSEMBLED -STAINED CASE S69.95

QUARTZ DIGITAL AUTO CLOCK BC ea O 3 d (Branch if Carry set) OR ELAPSED TIMER! ELAPSED TIMER: HRS, MINS & SECS SIMPLE PUSHBUTTON RESET & A branch is effected only if the carry is set. Branch conditions are not changed. HOLD TOGGLE SWITCH KIT INCLUDES EVERYTHING. ¡ NOTHING ELSE TO BUYII" LEOS, ({ INTERNAL BATTERY BACKUP, NON POLAR INPUT, 12 OR 24 HR MODE BP ea 0 4 d d (Branch if Plus) DIMENSIONS 'R I" KIT: $27.95 ASSEMBLED: $37.95 A branch is effected only if the prior "result ' (or most recently transferred data) was NOW WITH positive. Branch conditions are not changed. ELAPSED Example: (Clear mem from loc A034 to AO3F) TIME! 15 34 AO SET R5, A034 )nit pointer. 31/2 DIGITAL CLOCK 14 3F AO SET R4, AO3F !nit limit. 4 DIGIT KIT $49.95 4 DIGIT ASSEMBLED $59.95 10 00 00 LOOP SET RO, 0 6DIGIT KIT $59.95 6 DIGIT ASSEMBLED. $79.95 55 ST @R5 Clear mem byte, incr R5. 117 VAC- 12 OR 24 HR MOOR KIT COMES COMPLETE, 24 LD R4 Compare limit to 6 DIGIT VERSION Z7" R 5" R II,.... A OIGV VERSION 16 " 5" R IT D5 CPR R5 pointer. 04 F8 BP LOOP Loop until done. TV -WALL CLOCK I17VAC 25' VIEWING DISTANCE

.6" HOURS& MINUTES f 2, Nf 9 of BM ea O 5 d d (Branch if Minus) .3" SECONDS

COMPLETE WITH WOOD CASE A branch is effected only if the prior "result" was minus (negative, MSB = 1). Branch conditions are not changed. KIT: $34.95 ASSEMBLED: $39.95

ECONOMY CAR CLOCK

'' /," LED MODULE! BZ ea 0 6 d d (Branch if Zero)

COMPLETEWITH CASE, '' BRACKET & TIME SET A branch is effected only if the prior "result" was zero. Branch conditions are not PUSHBUTTONS J changed.

ALARM OPTION KIT: $19.95 ASSEMBLED: $26.95

ArPFNOU LUMSWING BNZ ea O 7 d d (Branch if NonZero) PENDULUM GIVE `OII9° SITA CLO o SIMPLE ROOK UP CO ANY CLOCK A branch is effected only if the prior 'result" was nonzero. Branch conditions are ;1175111r not changed.

Q $14.95 CASE WITH BRACKET $3.75 BM1 ea d d (Branch if Minus 1) MARK FOSKETS' 50L10 STATE TIME A branch is effected only if the prior "result" was minus 1 ($FFFF hexadecimal). Branch conditions are not changed. P.O. BOX 2159 SDUBLIN, CALIF. 94866

ORDERS (4151 828 -1923 BNM1 ea (Branch if Not Minus 1 )

\ 1 BANK AMERICARD A branch is effected only if the prior "result" was not minus 1 ($FFFF hexa- HR 4 master charge 24 decimal). Branch conditions are not changed. PHONE

CAl IonRMle RGSIISCNTC. enn RR/. KAI CS TAY

158 BYTE November 1977

www.americanradiohistory.com Text continued from page 154 BRK 0 A ( Break) instructions to this implementation of A 6502 BRK (break) instruction is executed. SWEET16 may be reentered non- destructively at SW16D after correcting the stack pointer to its value prior to SWEET16. If you use the unassigned op executing the BRK. codes $0E and $0F, remember that SWEET16 treats these as 2 byte instructions. You may wish to handle the break instruc- (Return from tion as a SWEET16 call, saving two bytes of RS 0 B SWEET16 Subroutine) code each time you transfer into SWEET16 RS terminates execution of a SWEET16 subroutine and returns to the SWEET16 mode. Or you may wish to use the calling program which resumes execution (in SWEET16 mode). R12, which is the SWEET16 subroutine return stack pointer, is decremented twice. Branch conditions SWEET16 BK (Break) operation as a are not changed. "CHAROUT" call in the interrupt handler. You can perform absolute jumps within SWEET16 by loading the ACC (RO) with the Branch to address you wish to jump to (minus 1) and BS ea 0 C SWEET16 Subroutine executing a ST R15 instruction. A branch to the effective address (PC + 2 + d) is taken and execution is resumed in And as a final thought, the ultimate SWEET16 mode. The current PC is pushed onto a "SWEET16 subroutine return modification for those who do not use the address" stack whose pointer is R12, and R 12 is incremented by 2. The carry is cleared and branch conditions set to indicate the current ACC contents. 6502 processor would be to implement a Example: (Calling a "memory move" subroutine to move A034 -A03B version some of SWEET16 for other micro- to 3000 -3007) processor design. The idea of a low level 300: 15 34 AO SET R5, A034 !nit pointer 1. interpretive processor can be fruitfully 303: 14 3B AO SET R4, AO3B !nit limit 1. 306: 16 00 30 SET R6, 3000 !nit pointer 2. implemented for a number of purposes, and 309: OC 15 BS MOVE Call move subroutine. achieves a limited sort of machine inde- pendence for the interpretive execution 320: 45 MOVE LD @R5 Move one strings. I found this technique most useful 321: 56 ST @R6 byte. for the implementation of much of the 322: 24 LD R4 323: D5 CPR R5 Test if done. software of the Apple II computer; I leave it 324: 04 FA BP MOVE to readers to explore further possibilities for 326: OB RS Return. SWEET16.

The Best of BYTE, Volume i

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

Name

Address

City State Zip

Price of Book $

The Best of BYTE, Volume 1 Postage, 50 cents $

Total $ Check enclosed Send now to: Bill MC # Exp. Date BYTE Interface Technical Services, Inc. Exp. Date 70 Main St Bill BA # Peterborough NH 03458 Signature In unusual cases, processing may exceed 30 days. All orders must be prepaid]

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

Circle 12 on inquiry card. BYTE November 1977 159

www.americanradiohistory.com Switching ROMs

in the Fairchild F8 Evaluation Kit

John C Polonchak Many people who use the Fairchild F8 Fairbug socket. Most of the wire wrap pins GTE Sylvania Evaluation Kit supplied with the Fairbug can be plugged directly into the socket in Electronic Components Group Monitor would like to try the Mostek DDT piggyback style. The pins marked NC are 114 S Oregon St Monitor. Unfortunately, the read only not connected and can be cut off of the El Paso TX 79901 memory chip containing the DDT Monitor wire wrap socket. cannot be directly substituted into the avail- This same type of rewiring scheme must able socket as wired for the Fairbug read also be performed on Q5 which is a 7406, only memory chip. The scheme shown since the Mostek and Fairchild boards use below permits the use of either chip without mutually inverted signals. Although both modifications to the printed circuit board. chips use the same instructions they seem The DDT monitor chip is plugged into a to be complements of each other to the

wire wrap socket. This socket is wired to a outside world. Tables 1 and 2 show the printed circuit socket that plugs into the interconnections for the two ICs. Note that this scheme of simulating one memory or processor integrated circuit with another Table 1: These are the pin interconnections for the DDT monitor memory to similar, but pinout -incompatible, chip can be the Fairbug socket. Of the 40 pins that need connecting, 23 of them can be used quite generally. plugged directly into the socket; 14 of them have their pins cut off and aren't used, leaving three pins that need to be rewired. Q5 7406

DDT READ ONLY MEMORY 3851 Top wire wrap socket containing 7406. Top wire wrap Top wire wrap socket containing DDT socket containing DDT 1 1 2 4 3 NC 1 2 21 21 2 NC 22 22 4 NC 5 5 3 3 23 NC 4 4 24 NC 6 8 7 5 2 25 NC 7 6 6 26 NC 8 NC 9 7 7 27 27 NC 8 8 28 28 10 10 9 9 29 NC 11 11 10 10 30 NC 12 12 13 13 11 11 31 NC 12 12 32 NC 14 14 13 13 33 33 Bottom printed 14 14 34 34 circuit socket. 15 15 35 NC 16 16 NC 36 Table 2: This is the rewiring diagram for the 17 17 37 NC 18 18 38 19 7406 hexadecimal inverters. This chip must 19 NC 39 39 be rewired since the signals coming from the 20 NC 40 40 Bottom printed Bottom printed Fairbug monitor are complements of the circuit socket. circuit socket. signals from the Mostek DDT monitor.

160 BYTE November 1977

www.americanradiohistory.com A Bit of the BASIC

- -- Computer Resource Book -Algebra by - --Basic BASIC by James S Coan. If - --A Guided Tour of Computer Pro- Thomas A Dwyer and Margot Critchfield is you're not already familiar with BASIC, gramming in BASIC by Thomas A Dwyer an exciting new way to learn about algebra James Coan's Basic BASIC is one of the and Michael S Kaufman. Colorful graphics and the interesting things you can do with it best ways to learn about this popular abound in this lively introduction to the using a computer. The book uses the BASIC computer language. BASIC (which stands BASIC language. The authors have tried language, and flowcharts are used through- for Beginner's All- purpose Symbolic Instruc- to present a rigorous, yet entertaining out to show the structure of programs. tion Code) is easy to learn and easy to apply approach to the subject. Written for the There are 60 applications programs inclu- to many problems. Basic BASIC gives you novice, A Guided Tour begins with a ding straight line graphs, polynomial equa- step -by -step instructions for using a ter- section on how to recognize a computer, tions, a space probe navigator, temperature minal, writing programs, using loops and followed by some tips on working at a profiles, computer generated animation, the lists, solving mathematical problems, under- terminal. By the end of the book readers ultramatic root finder, random number standing matrices and more. The book con- are writing their own programs and solving generation and many more. Although it tains a wealth of illustrations and example elementary problems in finance and busi- is particularly suitable for students, just programs, and is suitable for beginners at ness. The emphasis throughout is on lear- about everyone will find some intriguing many different levels. It makes a fine refer- ning by doing. Anyone interested in com- and easy to use applications in this enter- ence for the experienced programmer, too. puter programming should benefit from taining book. $4.80. $7.95. A Guided Tour of Computer Programming in BASIC. $4.80.

basic basic A k & kw oi'Coa7.m .AiAe 00. úW:

advanced

- --Some Common BASIC Programs by - -- Introduction to Computer Program- Lon Poole and Mary Borchers, published by ming by Rudd A Crawford Jr and David H Adam Osborne and Associates. At last, a Copp. Here is an excellent way to learn single source for all those hard to find about the general aspects of computer pro- mathematics programs! Some Common gramming. Introduction to Computer Pro- BASIC Programs combines a diversity of gramming makes use of a hypothetical com- practical algorithms in one book: matrix puter model and set of assembly language - -- Advanced BASIC by James S Coan. multiplication, regression analysis, principal instructions designed to help the beginner Advanced BASIC is the companion volume on a loan, integration by Simpson's rule, see what goes on in computer programs. to James Coan's Basic BASIC. In this book roots of equations, operations on two vec- The emphasis throughout is on general you'll learn about some of the more ad- tors, chi -square test, check writer, geometric principles; such concepts as loops, decisions, vanced techniques for programming in mean and variation, coordinate conversion flowcharts and 10 routines are covered in BASIC, including string manipulation, the and a function plotting algorithm. These detail. The book also provides many ex- use of files, plotting on a terminal, simula- are just some of the many programs in- ample problems and prompts the reader by tion and games, advanced mathematical cluded. For orily $7.50 you can buy the posing several quiz questions. Anyone who applications and more. Many useful algor- kind of programs previously available only masters its contents will have a solid foun- ithms are covered, including some clever as part of software math package systems dation for the study of practical assembly sorting techniques designed to reduce for large scale computers. All the programs and high level languages. It is especially program execution time. As with Basic are written in a restricted BASIC suitable recommended for students, but just about BASIC, there are many illustrative example for most microcomputer BASIC packages, everyone new to the subject should profit programs included. BASIC doesn't have to and have been tested and debugged by the from it. $4.35. be basic with Advanced BASIC! $6.95. authors. $7.50.

Check Payment method: check is enclosed Send to: _My Bits, Inc. _Bill my MC No Exp. date VISA 70 Main Street _Bill my BAC No Exp. date Peterborough NH 03458

Name Total for all books checked

Address Postage, 50 cents per book for books $

City State Zip Code Grand Total

Signature Prices shown are subject to change without notice. All orders must be prepaid. You may photocopy this page if you wish to leave your BYTE intact. In unusual cases, processing may exceed 30 days. J

Circle 12 on inquiry card. BYTE November 1977 161 www.americanradiohistory.com Fun and Games from BITS

Attention Canadian Readers... An IEEE Microcomputer Course A First (Ever) Canadian Personal Computing Show The IEEE's PHP Group in the San Francisco area is sponsoring a series of Personal Computing Showplace is the talks entitled "Microcomputers: Practi- name of a show to be held in Toronto at cal Applications." This Thursday evening the International Center of Commerce series, beginning November 3, will be on November 8, 9 and 10 of this year. tutorial in nature, focusing on such The show will feature the first (ever) "how to" topics as: which microcom- exhibition of personal computing pro- puter to use (from the user's viewpoint); ducts in Canada. architecture and memory; getting The exhibit hall is located at 6900 started, at work and at home. The series Airport Rd in Toronto. Admission will 101 BASIC Computer Games by will run for five weeks, with registration be $5 at the door. Hours are 12 noon to David Ahl. A treasure store of games and set at $35 ($25 for IEEE members; $10 9 PM each day. This exhibition runs simulations, 101 all written in BASIC. It students), and will be in the Palo Alto concurrently with the eighth annual contains both a complete listing and a and San Jose area. Contact David Guidici Canadian Computer Show. For more sample run, along with a descriptive at Siltec, 3717 Haven Av, Menlo Park information contact Betty Gray, at write -up. 256 pages, $7.50. CA 94025, (415) 365- 8600. (416) 595- 1811.

An Opinion: SOFTWARE AND PATENTABILITY, 1977

While perusing some of the electronic rather than a source listing) very clearly data processing (EDP) literature of the becomes a candidate for patentability past few years, it struck me that the sub- because it is not just a mental process or ject of software patentability had been algorithm any longer, but rather is a completely exhausted, and that another physical object. article on the subject would cause rea- This means that the arcane and con- ders to shy away in revulsion. However, voluted laws of patents, together with the ebullient EDP industry, in its con- those who administer them, suddenly stant state of change, has proferred a become relevant in much the same way new development which makes all of that a bull in a china shop is relevant. the irrelevant jabberings of the past Let us examine a few of the more salient (some of them my own) now of con- features of patent law and see how they siderable importance. might apply to microprogamming situa-

Why have I dismissed the plethora of tions. past writings as irrelevant jabbering? Because the simple and direct answer to Novelty the question of whether software is An invention, both in Canada and the What to Do After You Hit Return patentable is "no!" Volumes have been United States, must be a "new and use- filled discussing the point, yet it should or PCC's First Book of Computer ful art, process, machine, manufacture or have been apparent from the beginning Games. This is PCC's first book of composition of matter" to qualify for that one insurmountable obstacle stood computer games, a compendium which patent protection (emphasis mine). A in the way: namely, that a patentable includes descriptions of numerous new way of achieving a known result, invention must have a physical existence games, and listings of 37 selected BASIC or simply creating a new result, would and not be merely a methodology or games. New second edition, $8. permit an invention to qualify the mental process. if patent officer could be convinced of its Hence we see the illogical result of novelty. hard wired programming being patent- BITS Inc The reader can appreciate the Alice able but pure software not. But all of in Wonderland world which would soon 70 Main St this really didn't make a great deal of be created by disputed claims revolving Peterborough NH 03458 difference because the industry was able around the definition of "new." to protect its investment in software development through other legal avenues Expense For ease in ordering, use the coupon on such as trade secrecy and was therefore the opposite page, writing in the name(s) spared the labyrinthine procedures of Because all of this jousting is done by of the book(s) you want. the patent law. high priced lawyers, the cost of ob- All of this is soon to change. As taining a patent and prosecuting infringe- microprogramming state of the art ment quickly becomes prohibitive for all Please note that processing may exceed brings us closer to the point where a but the largest corporations; so does 30 days in unusual cases. programmer can sit down with a few defending against an accusation of in- integrated circuit chips and a soldering fringement. Circle 12 on inquiry card. iron rather than a pencil and coding This means that a belligerent patent sheet, his /her product (now a black box holder is armed with a big legal stick, the

162 BYTE November 1977 www.americanradiohistory.com Gourmet Reading from BITS 1

Scelbi "6800" Software Gourmet Guide & Cookbook

Scelbi "8080" Software Gourmet Guide & Cookbook, both by Robert Find- ley. Have you tried cooking up a program lately on your 6800 or 8080 processor? Have you needed a dash of ideas on how to See add spice to a program? Then the Scelbi 8080'> "6800" Software Gourmet Guide & Cook- book and the Scelbi "8080" Software Gour- met Guide & Cookbook may prove to be úrinét guide quite useful additions to your library. Both books contain a wealth of informa- &Cook tion on the 6800 and 8080 instruction sets, Sook plus general programming techniques ap- plied to the 8080 and 6800, conversion rou- tines, floating point routines, decimal arith-

SCURI (OI1SC1lUR metic routines, and much more. Order yours cON1LLWfi VOL today and get a taste of what your processor can do. Both books are priced at $9.95 each. NNE 1011Ni01 NIMINNIIIININMINN1 1nlroduNion a...... 1 Practical Microcomputer Program- BIOCIEDCflI ming: The by W J Weller, A V fo Shatzel, and H Y Nice. Here is a comprehen- ELECTß01yIC5 um,:um sive source of programming information for I...... t. .1 the present or prospective user of the 8080 111111111111iiiiiiiiii...... ii microcomputer, an architecture which ap- MENi 111111111 1111IMMIIIIIIM 1111101 pears in the MITS Altair, 8800, Processor MOW 111..n un Technology SOL, IMSAI 8080, Polymor- S 1MIMI \ MINu1 !

Send to: Check payment method:

My check is enclosed BITS, Inc -- 70 Main St Bill my MC No. Exp. date Peterborough NH 03458 _Bill my BAC No. Exp. date

Total for all books checked $ Name Postage, 50 cents per book Address for books Grand Total City State Zip Signature

You page leave your cases, L may photocopy this if you wish to BYTE intact. In unusual processing may exceed 30 days

Circle 12 on inquiry card. BYTE November 1977 163 www.americanradiohistory.com use of which need only be threatened in box would risk infringement unless a exclude black box microprogramming order to put financially limited black costly and time consuming search of the from its operation. box developers onto the ropes: either patent records was made beforehand. Such heresy will probably be rejected they fight a protracted and expensive by bureaucrats who see a golden oppor- legal battle or pull their product off the A Hands -Off Policy tunity to expand their little kingdoms market. and also by the many patent law firms

In my own law practice, clients have In 1971 I prepared a report for the which would stand to do a land office sought advice and expressed their con- Canadian Federal Government in which business. cern that software packages which they software patentability was examined and However, it is accepted that the proposed to develop might tread on recommendation made. At that time Patent Act has had serious limitations

someone else's rights. I have advised I recommended that no changes need be even in those traditional areas of indus- them that there need be no such fear so made to the Patent Act so as to extend try for which it was originally designed. long as misuse of trade secrets or breach its application to computer software How much less useful it would be in the of a confidentiality agreement is not because the Act would prove inadequate world of EDP is made plain by that involved. If black box patents begin and also because the EDP industry had industry's general avoidance of patent to appear I, for one, will not continue found trade secrecy laws to meet its law wherever possible. That being so, it to give the same advice in the future needs reasonably well. is this writer's view that the industry

because inadvertent duplication through I also recommended that no further should not be dragged kicking and independent invention is no excuse in a study in the area would be required screaming into a morass which it has patent matter. until the nature of programming under- until now successfully sidestepped. By contrast, if the system architec- went a fundamental change. Although

ture of a piece of software is a trade I cannot claim to have foreseen the ad- Daniel A Mersich, Attorney secret, anyone who independently vent of microprogramming (much less 1262 Don Mills Rd, Suite 17 develops a like product is free to market the astonishing speed of its arrival) one Don Mills, Ontario it. However, the same piece of software, can now say that such a fundamental CANADA

if embodied in a black box and pro- change has occurred. I would now there- tected by a patent, is the exclusive pre- fore recommend that a review be under- /Daniel Mersich is o Toronto lawyer serve of the patent holder, and anyone taken immediately for the purpose of whose practice is restricted to EDP independently developing a like black amending the Patent Act so as to matters. ..CM f

Continued from page 37 X0 X1 X2 X3 X4 X5 X6 X7

is part of o feature that allows NUL DLE - ß I o 9 N statements numbers to be inter- NUL DLE = NUL + L O ) S NUL DLE `-NUL \- NULNUL -FF \-SI `NUL C preted.). Readers are welcome to 1 1 1 1 contact me for further informa- YO \ SCH K FS / k i 8 N tion on this interpreter. SCH [ FS * ? K I ( S SCH VT FS a\- NUL 1 NUL 1 VT 1 HT \-NUL C I found one additional error: In the Y1 1 1 1 right center section of figure 5 on page STX L GS P j u 7 N 61, the second line in the box above the STX \ GS P > J U / S ERROR 2 terminal should read " +S(j) STX FF GS ;DLE UL F tiAK ``UL C -/10 COUNT ". "2 i My thanks to Mr Dickey and to the ETX - RS - ' h y 6 N ETX A RS DEL < H Y & S many other eagle -eyed readers who ETX SO RS US DUL BS DM `;UL C wrote in to report these errors. Y3 EOT M US @ m g t 5 N A Revision to "Using a Keyboard ROM" EOT ] US \ M G T % S' EOT CR US NUL CR EL DC4 \.NUL C Y4 ENQ NAK < BS n f r 4 N The article on using a KR2376 key- ENQ NAK < BS N F R $ S board encoder ROM in the May 1 97 7 ENQ NAK NUL BS SO CK DC2 UL C BYTE, page 76, would have been a Y5 great help rather than a hindrance had ACK SYN > [ b d e 3 N

the author supplied the connections ACK SYN > ( B D E S for the standard version of this device ACK SYN NUL ESC \STX `-EOT `ENQ `WUL C 1 1 1 (as was claimed) in his figure 2. I offer Y6 ETB , ] v s a revised figure which agrees with the BEL w 2 N BEL ETB ) V S W " S code assignment charts suppied in both BEL NUL GS YN C3 -TB C the GI and SMC data sheets and, I be- Y7 latedly discovered, Don Lancaster's DC1 ::: SP CR C a 9 1 N is TVT Cookbook. There very little DC1 CAN SP CR C A Q ! S in common between the two charts. DC1 CAN SP CR \-TX 1DOH DC1 1UL C The author was obviously working with Y8 a nonstandard unit. P EM . LF x FF HT A N @ EM . LF X FF HT S DLE EM NUL LF CAN FF HT \-RS C Dr Samuel I Green \- Y9 1 ti 13052 Ferntrails Ln \ 0 SUB DEL z ESC VT \ N Creve Coeur MO 63141 - - SUB - DEL Z ESC VT S SI SUB US DEL ISUB ESC VT LFS C This is confirmed by o communica- Y10 \_ \ tion from GI, who informs us that the unit by Mr Brehm was indeed a surplus N = Normal part obtained from a manufacturer of S = Shift custom encoded keyboards. C = Control

164 BYTE November 1977 www.americanradiohistory.com Available now at these leading dealers

ALABAMA COMPUTERLAND OF TUSTIN HOME COMPUTER CENTER DATA DOMAIN OF DAYTON 104 W First Street 2115 E 62nd Sireei 532 Brown Street COMPUTER CENTER Tustin. CA 92680 Indianapolis. IN 46220 Dayton. OH 45409 Ave Plaza 433 Valley (714) 544 -0542 (317) 251 -6800 (513) 223-2348 Bemmgham. AL 35209 COMPUTERLAND OF WEST L.A. (205) 942 -8567 DATA DOMAIN OF WEST LAFAYETTE DATA DOMAIN OF CINCINNATI Compulers Unlimited. Inc 25 W Columbia 7694 Camargo Road COMPUTERLAND OF HUNTSVILLE 6840 La Cienega Blvd Wes' Lalayelie. IN 47906 Cincmnali. OH 45243 3020 Unrversdy Drive N W Inglewood, CA 90302 (317) 943-3951 15131 561.6733 Hunisvllle. AL 35805 (213) 776 -8080 KENTUCKY 1205) 5391200 OKLAHOMA DIGITAL DELI COMPUTERLAND OF LOUISVILLE ARIZONA 80 W EI Camino Real HIGH TECHNOLOGY Mt View. CA 94040 813 B Lyndon Lane 1020 W Wilshire Blvd BYTE SHOP OF ARIZONA 40222 )415) 961 -2670 Louisville. KY Oklahoma City. OK 74116 813 N Scottsdale Road (502) 425 -8308 (405) 842 -2021 Tempe AZ 85282 PEOPLES COMPUTER SHOP DATA DOMAIN OF LOUISVILLE OREGON (602) 894 -1129 13452 Ventura Blvd Sherman Oaks, CA 91423 3028 Hunsinger Lane - - - -- ALTAIR COMPUTER CENTER BYTE SHOP OF PHOENIX N.W. (213) 789 -7514 Louisville, KY 40220 12654 N 26Th Drive (502) 456 -5242 8105 Nimbus Avenue N W Phoenix. AZ 85019 POLYMORPHIC, INC. Beaverton, OR 97005 460 DATA DOMAIN OF LEXINGTON (602) 942.7300 Ward Drive 15031 614 -2314 Santa Barbara CA 93111 506'n Euclid Avenue BYTE SHOP OF PHOENIX (805) 967 -2351 Lennglon, KY 40501 BYTE SHOP OF PORTLAND 28 W Camelback Rd 1606) 233 -3346 20335 W 4th Avenue P ROK OTRO NICS Phoenra, AZ Portland OR 97201 85013 439 Marsh Street MARYLAND 942 -7300 15031 223 -3496 (60 2) - San Luis Obispo. CA 93401 A COMPUTER WORKSHOP REAL OREGON COMPUTER CO. BYTE SHOP OF TUCSON 544 -5441 (805) 1776 E Jeherson Slreel 205 W 101h Street 2612 E Broadway Tucson. AZ 85716 RECREATIONAL COMPUTER CENTER Rockville. MD 20852 Eugene. OR 97401 1324 S Avenue 468 484 -1040 (602) 327-4579 Mary (301) -0455 (503) Sunnyvale, CA 94087 MICRO AGE COMPUTERLAND OF GAITHERSBURG PENNSYLVANIA (408) 735 -7480 16065 Frederick Road (RI 355) 603 N Scottsdale Blvd PERSONAL COMPUTER CORP. Tempe. AZ 85281 SUNSHINE COMPUTER COMPANY Rockville. MD 20855 20710 5 Leapwood (301) 908 -7616 Frazer Mall 1602) 8941193 Malvern. PA 19355 Carson, CA 90746 MASSACHUSETTS CALIFORNIA (213) 327 -2118 (215) 611 -ßd63 TEE CRU SHOP BYTE SHOP OF CITRUS HEIGHTS X IM E DIA RHODE ISLAND 6041 Greenback Lane 1290 24th Avenue 39 Pleasant Street Charlestown. MA 02109 COMPUTER POWER, INC. Citrus Heights CA 95610 San Francisco. CA 94122 M24 Aeport Mall (916) 961-2983 (617) 241 -9556 (415) 566 -7472 1800 Post Road BYTE SHOP OF DIABLO VALLEY COLORADO MINNESOTA Warwick. RI 02866 2989 N Main Street 14011 738.4477 COMPUTER DEPOT. INC. Walnut Creek. CA 94596 BYTE SHOP OF BOULDER 3515 W 70 Slreel SOUTH CAROLINA (4151 933-6252 Palmer Gardens Shopping Center Mmneapohs, MN 55435 3101 Walnut Street COMPUTER COMPANY BYTE SHOP OF FRESNO Boulder. CO 80301 (612) 927 -5601 3139 E McKinley Avenue 73 Stale Street (303) 444.6550 MINNESOTA COMPUTERS INC. Fresno CA 93703 Charleston. SC 29401 7710 Computer Avenue 1209) 485 -2417 FLORIDA TEXAS Su,te 132 - BYTE SHOP OF HAYWARD BYTE SHOP OF FT. LAUDERDALE Edina. MN 55435 COMPUTER SHOPS, INC. 1122 B Skeet 1044 E Oakland Park Blvd (612) 835-3850 211 Keystone Park Hayward. CA 94541 Ft Lauderdale. FL 33334 MISSOURI 13933 N Central Expwy (415) 5372983 (305) 561 -2983 Dallas. TX 75243 BYTE SHOP OF LAWNDALE BYTE SHOP OF MIAMI K 1 K COMPANY (214) 234.3412 16508 Hawthorne Blvd 7825 Bird Road 15 East 31 Street COMPUTERLAND OF AUSTIN Kansas MO 64108 Lewndale. CA 90260 Miami. FL 33155 City. Shoal Creek Plaza 561 -1776 (213) 371-2421 1305) 261 -2983 (716) 3300 Anderson Lane Ausim, TX 78757 BYTE SHOP OF SAN JOSE DELTA ELECTRONICS NEBRASKA 20WHighway44r E 2626 Union Avenue OMAHA COMPUTER STORE COMPUTERLAND OF S.W. HOUSTON Leesburg, FL 32748 San Jose. CA 95124 4540 South 86th Street 6139 W estnnmr (904) 728 -2478 14061 377 -4685 Omaha. NB 68121 Houston. TX 77057 BYTE SHOP OF SAN RAFAEL ECONOMY COMPUTING SYSTEMS (402) 5923590 17131 977-0909/0910 2200 Forsyth Road 509 Francisco Blvd NEW JERSEY KA. ELECTRONICS 5n Rafael, CA 94901 Orlando. FL 32807 - - 1220 Malesly Drive (415) 457.9311 0051 678 -4225 COMPUTER MART OF NEW JERSEY Dallas TX 75247 501 Highway 27 12141 834 -7870 BYTE SHOP OF SANTA CLARA MICROCOMPUTER SYSTEMS, INC. Iselin, NJ 08830 3400 El Camino Real 144 5 Dale Mabry Highway THE MOS 283 -0600 Sent Clara. CA 95050 Tampa, FL 33609 12011 1853 Richmond Avenue (408) 249 -4221 1813) 879 -4301 or 879-4225 COMPUTERLAND OF MORRISTOWN Houston. TX 77098 2 DeHart Street (713) 527 -8008 CALIFORNIA MICROCOMPUTERS COMPUTER AGE Morristown. NJ 07960 329 Flume 999 5 W 401h Avenue YOUNG ELECTRONIC SERVICE (201) 539 -4077 Chico. CA 95927 Plantation, FL 33317 P O Box DD (916) 891 -1730 (305) 791 -8090 HOBOKEN COMPUTER WORKS College Station. TX 77840 Place (713) 693 -3462 COMPUTER ELECTRONICS GEORGIA 20 Hudson 906 Delavma Hoboken. NJ 07030 UTAH ATLANTACOMPUTER MART 420 Serail Barbara. 93101 (201) -1644 CA 5091 Buford Highway MICRODATA SYSTEMS (805) 962.4198 NEW YORK Atlanta, GA 30340 796 E Lazon Drive COMPUTER POWER 8 LIGHT (404) 455 -0647 COMPUTER CORNER Sandy. UT 84070 12321 Ventura Blvd ILLINOIS 200Hamilton Ave (801) 561.4665 Studio Carly. 91604 CA Write Plains. NY 10601 WASHINGTON 760 -0405 (213) ASPEN COMPUTERS, INC. )914) 9493282 -- - 7521 W Irving Park Road KBC COMPUTER SHOP COMPUTER ROOM COMPUTERLAND OF BUFFALO 60634 PO Boa 169 124H Blossom Hell Road Chicago. IL 1612 Niagara Fals Blvd Redmond, WA 98052 San Jose. CA 95123 13121 589-1212 Bullalo. NY 14150 885 -1694 (408) 226 -8383 1312) 625-3555:6 (716) 8366511 12061 RETAIL COMPUTER STORE COMPUTER STORE COMPUTERLAND OF ARLINGTON HEIGHTS COMPUTERLAND OF ITHACA 410 820 Broadway 50 East Rand Road 225 Elmira Road N E 72nd Seattle WA 98115 Santa Monaca. CA 90401 Arlington Heights. IL 60004 ehaca. NY 14850 451 -0713 (2001 524-4101 (213) (312) 255 -6488 16071 277 -4888 COMPUTER STORE OF S.F. COMPUTERLAND OF NILES NORTH CAROLINA WEST VIRGINIA Avenue 1093Missron Street 9511 N Milwaukee ALLEGHANY COMPUTER SERVICES San Francisco. CA 94103 Niles. IL COMPUTER ROOM 60648 P 0 Boo 767 (415) 431 -0640 1729 Garden Terrace 1312) 967 -1714 Elkins. WV 26241 Charlotte, NC 28203 COMPUTERLAND CORPORATION ITTY -BITTY MACHINE CO. 13041 636.6600 (704) 377 -9821 1922 Republic Avenue 1322 Chicago Avenue WISCONSIN San Leandro. CA 94577 Evanston. IL 60201 OHIO (415) 895.9363 (312) 328 -6800 BYTE SHOP OF OHIO MILWAUKEE COMPUTER STORE Ave COMPUTERLAND OF EL CERRITO THE NUMBERS RACKET 19524 Center Ridge Road 6916 W Narlh 11074 San Pablo Avenue 623 -1/2 5. Wright Street Rocky River, OH 44116 Milwaukee. WI 53213 2599100 El Cerrito. CA 94530 Champaign. IL 61820 (216)333 -3261 (á1d) (415) 233 -5010 (217) 352 -5435 COMPUTERLAND OF HAYWARD DATA DOMAIN OF SCHAUMBURG r 1 22634 Fo othrll Blvd. 1612 E Algonquin Road Hayward. CA 94542 Schaumburg. IL 60195 (415) 538 -8080 (312) 397.8700 COMPUTERLAND OF SADDLEBACK VALLEY INDIANA 24001 Via Fabricante .904 AUDIO SPECIALISTS Mission Viejo. CA 92675 415 N Michigan (714) 770.0131 South Bend. IN 46601 592 Weddell Drive COMPUTERLAND OF S.F. 1219) 234 -5001 117 Fremonl Street DATA DOMAIN OF BLOOMINGTON Sunnyvale, California 94086 San Francisco. CA 94105 (415) 546-1592 (HOME OFFICE) 406 5 College Ave corporation (408) 734 -1525 COMPUTERLAND OF SAN DIEGO Bloomington, IN 47401 4233 Convoy Street (812) 334-3607 San Diego. CA 92111 DATA DOMAIN OF INDIANAPOLIS (714) 560 -9912 7027 Northwestern Avenue COMPUTERLAND OF THOUSAND OAKS InOanapolis. IN 46268 El Cid Plaza (317) 251 -3139 171 E Thousand Oaks Blvd DATA DOMAIN OF FORT WAYNE SEE FULL PAGE AD ON PAGE 93 FOR DETAILS. Suite 105 2805 East State Blvd Thousand Oaks. CA 91360 Fort Wayne. IN 46805 Circle 58 on inquiry card- 1805) 497 -9595 (219) 484 -7611 www.americanradiohistory.com Do You Need the Real Time?

Gregory A R Trollope There are a number of ways of implemen- design are: the computer should be able to 433 Cherry Ln ting a real time clock for a microcomputer read the clock when necessary, the clock Lewiston NY 14092 system. With the many different clock chips should keep time while other programs are available on the market, it would seem executing, and one should be able to set the natural to try to interface to one of these. If clock by computer commands, then use of the requirements set for a real time clock external hardware can be a most difficult challenge. Taking a software approach using minimal hardware can be a most attractive alternative. In the described REAL TIME CLOCK FOR MIKBUG SYSTEMS implementation here, the computer itself counts 1/10 second 00030 00040 * pulses, derived from the 50/60 Hz line, 00050 ** *GENERAL INSTRUCTIONS * ** 00060 * in four memory bytes, one each for hours, 00070 * AFTER LOADING THIS REAL TIME CLOCK PACKAGE, 0008U * EXIT MIKBUG WITH THE G COMMAND, THEREBY minutes, seconds and deciseconds. Setting 0009u * ENTERING THE CLOCK INITIALISATION ROUTINE. the time becomes a process of writing the Uu10U * THE ROUTINE WILL RETURN TO MIKBUG; TO GO TO U011Ú * THE DEMONSTRATION, TYPE G AGAIN.' THIS WILL correct time to memory; reading the time,

00120 * PRINT THE TIME EVERY I OR 2 SECONDS. U0130 * TO EXIT, HIT THE BREAK KEY (0R ANY OTHER KEY, one of reading memory. 00I4Ú * SEVERAL TIMES). TYPING G WILL RETURN TO THE 00150 * DEMONSTRATION. To enable other programs to execute 00160 0700 ORG A $700 00170 * while the clock is being maintained, the Ú018u ** *CLOCK COUNTERS 0019u U700 00 HR FCB A 0 CONTAINS (24- HOURS) computer is forced into the clock counting 00200 0701 Ou MIN PCB A 0 (60 -SINS) routine only on the arrival each 1/10 U0210 0702 OU SEC FCB A 0 (60 -SECS) of 00220 0703 OU SPLIT FCB A 0 (IU- DECISECS) second pulse, and stays in the routine for U023Ú * U0240 * only as long as necessary to perform the 00250 ** *CLOCK INITIALISATION ROUTINE * ** 00260 rather simple calculations before returning U0270 * BRANCH HERE MANUALLY TO SET CLOCK U0280 * to the program that was executing. In my 00290 * ENTER THE TIME IN THE FORMAI uÚ300 * RHUM version this is achieved by using the inter- 00310 *E.G. 1803 FOR 3 1.IINS PAST 6PM rupt request line the 6800 processor, 0032U *ENTER THE LAST DIGIT ON THE TIME SIGNAL of 00330 * although it is conceivable that the NMI U034Ú 0704 OF CLOCK SEI STOP CLOCK U0350 0705 86 U7 LDA A N 7 CONFIGURE SNTPC PORT 7 (nonmaskable interrupt) of the 6800 could 00360 0707 B7 801F STA A E 5801E AS THE CLOCK INTERFACE U0365 * be used as well. U0370 Ú70A 8U 19 BSR R IN2 GET FIB 00380 070C 86 18 LOA A N 24 Pin 4 of the 6800 processor is designated 00390 070E IU SBA I a 00400 070F B7 0700 SIA A E HR SET HOURS the RQ line. When this line has transition 00410 0712 80 II BSR R IN2 GET MM from logic 1 (~ +5 V) to logic 0 (ground), U0420 0714 86 3C LDA A N 60 0043U 0716 87 U7U2 STA A E SEC SET SECS 10 0 the processor finishes its current instruction, U044Ú 0719 IU SUA U0450 Ú71A 87 0701 STA A E MIN SET MINS stacks all the registers and the address of 00460 071D 86 OA LDA A N IU Ú047u 071 F 87 0703 STA A E SPLIT SET SPLITS the next instruction, then branches to the U048Ú 072.2 OE CLI FREE CLOCK 00490 0723 2U 68 BRA R U2 memory location contained in the memory U0500 * bytes respond to hexadecimal addresses 00510 0725 BD EOAA 132 JSR E $EOAA 'INHEX' rIRSI UIG11' that uÚ52Ú 0728 48 ASL A H *2 FFF8 and FFF9. In systems using Motor- 00530 0729 16 TAI) ola's M I KBUG monitor, such as the SwTPC Listing la: The real time clock software for a 6800 system which uses an IRQ 6800 computer, the interrupt vector interrupt input from a PIA port. This routine is intended to be used with the addresses are in MIKBUG and point to Motorola MIKBUG software, and includes provision for setting time of another address in MIKBUG so that control day in hours, minutes and seconds. of the processor is passed to MIKBUG after the interrupt has happened. MIKBUG duti- Note: This assembler uses a format in which explicit indication of address fully passes control on by branching to the type is indicated where one mnemonic has several possibilities. Thus, for address contained in its volatile user memory example, LDA A # 7 means use immediate (#) addressing of the operand at hexadecimal locations A000 and A001. If 7, while LDA A E 7 means use extended addressing (E) of the operand at this address happens to be that of clock memory location 7. Other abbreviations seen in this listing are R for relative counting routine, it will receive control. addressing (branches only), l for immediate 2 byte operand; and A designates Since all the registers and machine states an assembler directive. have been saved, we can use them to do the

166 BYTE November 1977

www.americanradiohistory.com counting without worrying. When we have Listing la, continued. done all that needs to be done, the RTI instruction restores the registers and u004u u /2A 40 ASL A II*4 u0b5u 072b 40 ASL A I!*8 branches back to the program that was uO660 0120 10 :SUA H*I:+11*2=0* l0 interrupted. v007u 0721! Io LAIS SAVI 005AÚ 072E UU LO AA J:iR E atUAA SEC:.dI. UIGII v0:,99 0731 to AuA r?R.- tiUc But how do we interface a signal to I RQ? 00600 U /32 to OU SAVt The simplest way might be to connect it u0olu v133 3v il1S u002u * directly, but if one wishes to preserve the vuo3u * ,Ú0kí ***CLOCK COWLING 1111111 1 HL *** option of finding out what caused the inter- 0U05Ú * Ú006J * IkU BkA1+CHES hLNE rupt, some additional logic is necessary. 0(ó7u *

00040 0)34 I RU 11.1H A U While there are probably all sorts of clever u0o9U * ways doing this, a convenient way to u070u *11116E111 ruLLS 10 ANY OTRLIl IItRIIUPISI of uU7IU * implement it is by using a peripheral inter- v0 12u 0734 No 801e LUA A F. $101F IRO 11181 CLICK hiIERrACE! u X/300737 2A 29 UPL Rl 1 8ILANCi, IF Nvrl face adapter (PIA). The SwTPC 6800 com- vU /4u 073v ec 8011 LOA A E SUOIE CLEAN 1a1E11durf u0 /5u 073C 7A 07u3 UEC F SPLIT OECREL.E11I C00.111:0 puter which I use has a parallel interface u0 /60 073E 2e 21 811E R RTI BNANCi, Ir nor %ERE u0770 0741 80 OA LUA A a IO RtSEI card which has a PIA. This has 16 data lines UO7BU 0743 U7 0703 SIA A E SPLIT 0740 7A U7U2 and four control lines. We will use one of the 0014U DEC E SEC UECktiEH I" NEXT COUH fcN 00800 0749 26 17 BnE R RI! ...ETC control lines, CB1, to latch the clock pulses 00810 0748 86 3C LOA A I 00 vOd2U 0740 87 07u2 SIA A E SEC and provide input conditioning of the inter- 00e3u 0750 7A U701 UtC E alit vud4U 0753 20 OD ONE R W11 rupt signal. Part of the clock setting routine u0d50 0755 dl 0701 S1A A E MIN v0d6U 0758 7A u700 dEC E Pk must be to configure the PIA properly, and 00870 058 20 05 d11E R IllI u088U 075D 86 18 LUA A I 24 part of the interrupt routine to acknowledge 00890 075í 87 0700 SIA A E FIR the which is achieved by reading 00900 0762 3b RAI RSI interrupt, 00910 * the PIA B data register, but more of the 00920 00930 * * *CLOCK tlMB11S1RAIIMN * ** details later. u0v4U * v095Ú * UIlA1vC0 HEM, PANUALLY A self- supporting real time clock package 00960 * uuv7u 0763 Co III Duu.M USA d a 24 COMI+LEc.tw I is given in listing lb. The package is assem- U0v8u 0705 FU 0700 Slu b E TIP HOURS v0v9v 0768 8u 2F R bled at hexadecimal location 0700 so as to dSR MUT PRINT 01000 U76Á C6 3C a 60 8I11S ululu 076C FU 0701 ID E 13113 ulu2u 076F 8U 28 d5R P MUT PRINT 01030 0771 C6 3C LOA d 160 SECS 0104v 0773 FU 07u1 SUIS d E. SEC The more astute students of MIKBUG u1050 0770 81) 21 *SR P our Pk 111T 0106u * will notice that the control line CA1 of the 0I07u 0778 CE tI9U LUX 1 SEI v0 '4CL' . SFA Cl+ /L1- MIKBUG serial control PIA is configured by 01080 077d Uu 107E JSR E StO /E 'I'UAIAI' ulU9u MIKBUG to cause an interrupt on its tran- 01100 077E 86 0702 LUA A E SEC SAVE TIME sition; CA1 is left free in the SwTPC serial 01110 0781 F6 8004 DI LDA B E $8004 TESI FOR BREAK 01120 0784 2A 07 BPL R D2 control interface; and interrupts can be 01130 * passed to the IRQ line. It is possible to 01140 0786 81 0702 CMP A E SEC TIME CHANGED? implement the by 0115U 0789 27 F6 BE0 R DI L00P TILL IT DOES clock, then, routing the 01160 078d 2U D6 BRA R DEMO PRINT TIME AGAIN clock pulses to this MIKBUG oriented 0117U * PIA, one interface U11BO 078D CL 0763 02 LOX I DEMO TRANSFER DEMO STARTING with proviso: that the u119Ú 0790 FF A048 STX E $A048 ADDRESS TO STACK not be used for 101 It is an idiosyncrasy of 01200 0793 7F A043 CLR E SA043 CLEAR INTERRUPT MASK the PIA that if you happen be reading 01210 0796 7t EOE3 JMP E 5E0E3 TO 'CONTROL' to 01220 BCD CONVERSION the data register when the interrupt occurs, 01230 0799 4F OU1 CLR A A HOLDS HIGH ORDER DIGIT the IRQ bit in the control register will not 01240 079A CI OA 01 CMP B I 10 8,9 7 01250 0790 28 06 BMI R 02 DONE IF NOT be set, even though the interrupt routine will U1260 079E 88 10 ADD A I S10 A=A+510 be entered ' 99.99...% of the time. Thus if 01270 Ú7A0 CO OA SUB B I IO B 13-10 01280 07A2 20 F6 BRA R 01 LOOP MIKBUG is doing its 10 at the same time as U1290 07A4 IB 02 ABA ONLY IrORKS FOR NOS c60 0130U * the clock pulse occurs, there is a small, but non- 01310 07A5 36 P5H A VALUE TO STACK zero chance, that some interrupts will be 0132U 07A6 30 TSX X POINTS TO VALUE lost, causing long term timing inaccuracies 01330 07A7 BD EOCA JSR E SEOCA 'OUT2HS'...Td PRINT VALUE + SPACE 0134U 07AA 31 INS CLEAN UP STACK for a continuously running real time clock. 01350 07A8 3v RTS 01360 01370 * U1380 * SET INTERRUPT REQUEST PIVOT IN MIKBUG 01390 ,.UU6u0004d44b11U U1400 A000 ORG A SA000 5115u7uU0O00U000ur86u7d7N0IFdD1986181087U700Ur 01410 A000 0734 FOB A IRO bII3u712JDII1163Cd70702I0177070I86uAU7070393 UI42v

5 1 1 30 7 221JE206JA)OtUAA48I 6*d4818 I 6UUEUAA I H65 01430 * CLEAR INTERRUPT MASK 3I .:5u732163v72 01440 * MUST ALWAYS REMEMBER TO DO THIS BEFORE a115u734d6dUIF2A2Yd6oUIE7AU703162186UA11707U3v/ 01450 * LEAVING MIKBUG, OR 1HE CLOCK MAY BE STOPPED 5115u7ro7AU7u22617H6JC87U7u2/A070I26uDH7U70It'l 0146U * BY MIKBUG'S 'RTI'. a1130587A07002605861ob7u/u013061dF0070075 0147U AÚ43 0RG A 5A043 o113u708802FC63C4-007018028C63CF0070202169 01480 A043 U0 FCB A U dII4077BCËcIVD8D207Eo60702F6é0042AU7010702E1 01490 o 1E3o78927F62006k:E07o3FFA04d/rì.0437E60E3b7 01500 * SET CLOCK SET ADDRESS d114u7vY4FCIUA28u6dUIUC00A20161H3o36oUEUCA9D 01510 A048 MRG A 5A048 31u5u7AAJI3vUF 11(.);M 0704 FOB A CLOCK dIU5AUU0073411, Ú153v ;,Iv4AU130018 U1540 A04Á END A u IU5A048070407

SYMBOL TAULE Listing lb: Object code listing in MIKBUG HR 0700 MIN 0701 SEC 0702 SPLIT 0703 CLOCK 0704 1N2 0725 IRO 0734 RTI 0762 DEMO 0763 Dl 0781 format for the real time clock program of 02 0780 cur 0799 MI 079A 02 07A4 *LOAD EQUA e8A0D E047 BOUTL E067 MOUTR E06B I/PDAT E07E á0U2 EOBF figure la. *0Ú2S FOCA 00045 EOC8 MOUS EOCC aINEE EIAC IOUTE EIDI

BYTE November 1977 167 www.americanradiohistory.com be at the top end of the 2 K supplied with clock PIA did in fact cause the interrupt, the SwTPC machine, as it was originally sold and acknowledges it by reading the PIA data before 4 K became standard. Modifications register. The decisecond counter is decre- to load at other locations are only minor. mented and tested. If it has not reached The package consists of a number of sep- zero, the routine returns to the interrupted arate segments as follows. program, via the RTI. If it has, the counter is reset to 10 and the minutes counter decre- The Clock Counters mented and tested, and so on. While it may Four bytes are reserved for the hours, seem that the computer has a lot to do to minutes, seconds and deciseconds clock keep up with the clock, it utilizes only a counters. Each actually contains the natural tenth of a percent of real time during the complement of the value, cg: (24- hours) or worst case midnight rollover, and about half (60- minutes). that normally.

The Clock Initialization Routine. A Clock Demonstration Routine On entering this routine, two pairs A clock demonstration routine has been of two digits must be entered. These are included in the package and need only be read using the MIKBUG INHEX routine loaded for testing purposes, as ordinarily the at hexadecimal EOAA. The first of the pair clock would be accessed by the main pro- is multiplied by 10, by shifting and adding, gram. The routine prints the time, in hours, and added to the second. The first sum is minutes and seconds at 1 or 2 second inter- used to set the hours, the second, minutes. vals depending on the printer speed. A short Seconds and split seconds are set to zero. routine is used to convert the binary com- The fourth digit is entered only on the time plement of the clock to binary coded deci- signal, generated by WWV, for example. To mal (BCD) so that it can be printed in hexa- prevent the time from being changed while decimal by the OUT2HS routine in waiting for the time signal, the clock is MIKBUG at hexadecimal EOCA. After inhibited by the SEI instruction and freed sending CR /LF /* using the MIKBUG when the clock is set by the CLI instruc- PDATA1 to send the MIKBUG MCL string, tion. the seconds timer is read. The program waits in a loop comparing this value with the The Clock Counting Routine seconds timer and when a difference is This routine is entered when the pro- found, the routine loops to print the time cessor is interrupted, provided the entry again. Also in the loop the routine tests the point is placed in the MIKBUG program- high order bit of the A data register of the mable memory at hexadecimal A000 and control interface. If this is not 1, it means A001. The routine first checks that the the operator pressed a key, so the routine LOCAL REGULATOR

7-8 VDC ICI +5V 7805 IC2 E> MC14566 IO Hz +1 7- O.IµF 65µF C> TO CBI INPUT OF PIA AT HEX LOCATION I DI 801 C -801F 16 VDD

+5/6 =10 I Hz 15 14 6 CB 02B CA 03A 7 (OPTIONAL RATE - RI R2 - LISTING I. SOFTWARE I2VAC 27K 47K 5/6 t VS MUST BE MODIFIED ) 14A, C> vw 8 *50 -60 Hz (FROM SWTPC 6800 POWER SUPPLY I D2 TRANSFORMER CI SECONDARY) - 0.1µF MYLAR DIODES: IN4148, ETC. *SET JUMPER FOR -5 IF 50Hz OR =6 IF 60Hz

Figure 1: A way to derive the power line base of 60 cycles per second (North America) or 50 cycles per second (Europe). The low voltage secondary of the transformer in the power supply drives the Motorola MC14566, a programmable divider with ratios of 5 or 6. A second stage can optionally create 1 Hz as well as the 10 Hz signal assumed by the software of listings 1.

168 BYTE November 1977 www.americanradiohistory.com branches back to the MIKBUG CONTROL. OLD RMB 100 This kind of approach should always be used NEW RMB 100 SAVSP FDB to return to MIKBUG, for the RESET button will stop the clock by setting the interrupt mask. Also if bit 4 of condition STS SAVSP Save stack pointer codes on the stack (hexadecimal A043) is LDS $r`( O L D-1 1 First byte pulled will be at OLD 1, the mask will be set upon execution of LDX fVEW First byte deposited at NEW LOOP PUL A Get byte the G command, which should be avoided. STA A X Store The timing pulses themselves are derived INX Advance X from the 50 or 60 Hz line using the circuit CPX #(NEW +100) (NEW +99) was last to move BNE LOOP Loop till done given in figure 1. The components can be LDS SAVSP Reload stack pointer mounted on a small piece of Micro -Vector board, supported at right angles to the base plate of the SwTPC 6800's box, near the +12 V supply board. Three short wires can Listing 2. then be run to one of the 12 VAC trans- former leads, to the unregulated 7 -8 VDC, move about 4 K bytes in 1 /10 second, which and to ground. The output pulses can be is probably adequate for most purposes. strung directly to the Cl pin of a PIA board. When used with other software, you'll thus The heart of the circuit is the Motorola need to check carefully to make sure that MC14566 Industrial Time Base Generator. any such manipulations of the stack pointer This MOS device contains a divide by 10 are consistent with the existence of a steady ripple counter and a divide by 5 or divide interrupt source. But once you've got a by 6 ripple counter for counting from a steady clock program going, a number of 50 or 60 Hz line. Pulse shapers on the new possibilities will be open: time tagging inputs accept slow rise time inputs, but files, extending the counters to keep track it is necessary to filter the line signal of days, weeks and years for scheduling with R1 and Cl to remove noise. The personal events to be signalled when the two diodes and R2 convert the signal time is ripe, etc. approximately to a square wave for the counters. =6 is achieved by strapping pin 11 to ground, to +5 V for +5. Special 8K RAM assembled and tested $185.00 Programming Considerations A potentially dangerous way of moving a Get the Best in string of bytes from one location to another is to use the stack pointer as an index regis- ter. It is only dangerous in a case where in- Business Data terrupts are continuously allowed, as with this clock. For example, one might use the Processing Systems routine of listing 2 to move the 100 bytes starting at OLD to 100 bytes starting at Accounting, Inventory, General Ledger, NEW. Timesharing Applications If an interrupt occurs during the execu- tion of this segment, those bytes just before Also a complete line of personal computers the stack pointer will be zapped with the and peripherals, including: register information, which is probably un- Processor Technology CROMEMCO North Star desirable! In general, when such a technique IMSAI Digital Group TEI is used to coordinate multibyte operations, Compucolor DTC it would be desirable to inhibit the inter- TDL Books /Magazines rupt. This can be done with the instruction SEI which sets the interrupt mask, thereby HARDWARE /SOFTWARE SUPPORT preventing the interrupts. The companion Our experienced staff is ready to help you instruction CLI clears the mask, enabling configure the best system to suit your needs the interrupt. Thus the segment given MAIL ORDERS WELCOME (We accept MasterCharge /BankAmericard) would be preceeded by an SEI and followed by a CLI. All is fine, provided we do not set the mask for so long that the next inter- TiiE COr.1PUTER 11131311 rupt is lost. This is a perfect example of why 124 H Blossom Hill Road San Jose, CA 95123 at least two fu // index registers should be (408) 226 -8383 incorporated in each microprocessor's design. With the routine given, one can

Circle 36 on inquiry card. BYTE November 1977 169 www.americanradiohistory.com Circle 140 on inquiry card. Technical microprocessors: mimnnlacessors Forum from chips to systems Rodnay Zaks $9.95 Ref C201,400p, 150 illustrations Comments on Live Board This book is based on the author's experi- ence in teaching microprocessors to more than 2000 persons. It takes you step by step Removal and Insertion from the basic concepts to the actual inter- facing techniques. CONTENTS: Fundamental concepts; Internal operation of an MPU, System chips; Com- S A Stough parative Microprocessors Evaluation; As- 24802 Olive Tree Ln sembling a System; Applications; Interfacing; Los Altos CA 94022 System Development; The Future. In reference to the Technical Forum item 2161 Shattuck Ave., Name in the J uly 1977 BYTE on page 150, "Is Berkeley, Ca 94704 this a valid hot board placement proce- tel: (415) 848 -8233 Position dure?" I have the following comments: IN EUROPE: Company 313 rue Lecourbe The suggested procedure in the reference 75015 -Paris, France Address has a near certain probability of causing catastrophic overstress of parts because of Amount enclosed: the virtual impossibility of maintaining \. (in California add tax) sufficient alignment accuracy during board / Bankamericard Mastercharge removal or installation. SYBEX Number Expires The close intercard spacing on most sys- Signature tems makes it very difficult to visually check \ / BYTE. alignment during installation. Even a rigid Fast Shipping: add $1.00 (UPS) card frame will allow sufficient misalignment in the plane of the board to cause a momen- tary short between two or more pins. Once installed, the board misalignment --A Collection of Programming Problems and Techniques, by H A can be as as Maurer & M R Williams. Here's a book that presents you with pro- typically much one third of the blems! Nearly 400 of them, in fact: problems in games like chess, pin to pin spacing. This reduces the margin bridge, and NIM; practical problems such as applications of the law for error to a misalignment angle of only of sines, Cramer's rule for solving simultaneous equations, and about ten degrees. Even with card ejectors applications of Latin squares to problems in probability; and more working against a rigid metal card frame, advanced computer science topics such as the use of Backus -Naur form. One quarter of the book is devoted to an appendix that gives a momentary misalignment approaching stymied readers hints on how to proceed with solutions to the pro- this magnitude is still possible. blems. The most valuable feature of the book, though, is its careful The procedure could be especially disas- and thorough explanation of the use of algorithms to solve pro- trous with the most popular 100 pin bus blems. No dyed -in- the -wool programmer or experimenter will be able to read this book for very long before trying to solve the where logic signals and high voltage supply tantalizing and well -presented problems. $13.50. lines use adjacent pins. Certain boards in high priced integrated BITS Inc systems use special buffering to allow power - A 70 Main St on removal and installation where system COLLECTION Peterborough NH 03458 down time is especially costly. Such would OF PROGRAMMING not seem to be true of personal computer PROBLEMS systems. It would seem to be an unaccept- AND For ease in ordering, use coupons TECHNIQUES on pages 142 -144 or 153. Make able risk to use any live board removal or sure you write in this book's installation procedure considering the large name. In unusual cases, processing number of damaged, degraded, and poten- may exceed 30 days. tially degraded parts that would have to be replaced should a momentary pin to pin short occur. The parts replacement time and effort would far outweigh the time saved Circle 12 on inquiry card. in not reinitializing the system for each board replacement.

170 BYTE November 1977

www.americanradiohistory.com XiMEDiA PRE3Erin The SOROC 1Q120 CURSOR CONTROL. Forespace, back- space, up, down, new line, return, home, tab, PLUS ABSOLUTE CURSOR AD- DRESSING. TRANSMISSION MODES. Conversation (half and full Duplex) PLUS BLOCK MODE - transmit a page at a time. FIELD PROTECTION. Any part of the display can be "protected" to prevent overtyping. Protected fields are displayed at reduced intensity. EDITING. Clear screen, typeover, abso- lute cursor addressing, erase to end of page, erase to end of line, erase to end of field. DISPLAY FORMAT. 24 lines by 80 char- acters (1,920 characters). CHARACTER SET. 96 characters total. Upper and lower case ASCII. KEYBOARD. 73 keys including numeric key pad.

REPEAT KEY. 15 cps repeat action. DATA RATES. Thumbwheel selectable from 75 to 19,200 baud. NEW LOW PRICE SCREEN. 12 inch rectangular CRT - P4 Assembled $975.00 phosphor.

Specials of the Month North Star Micro Disk with power supply and cabinet Kit - $699 NOW WERE Assembled - $799 TOLL FREE IMSAI l -8080 with TDL ZPU Kit - $825 Assembled - $975 Digital Systems FDS Disk Drive with 800 -227 -4440 CP /M Software (assembled only) . Single - $1,750 (in California, Hawaii, and Alaska, call collect: Dual - $2,350 415/566 -7472) Mountain Hardware PROROM Kit - $145 Assembled - $210 Vector Graphic 8K RAM Kit - $235 Assembled - $285

XIMEDIA OFFERS A FULL RANGE OF PRODUCTS FOR THE PERSONAL COMPUTER ENTHUSIAST AND THE SMALL SYSTEM DESIGNER. LET US QUOTE ON ALL 1290 24th Avenue, San Francisco, CA 94122 YOUR HARDWARE AND SOFTWARE NEEDS. (415) 566 -7472 OUR RETAIL STORE -THE COMPUTERIST tm - IS NOW COD freight collect. with payment shipped prepaid. California OPEN IN SAN FRANCISCO. CALL US FOR DIRECTIONS. orders Orders residents add 6% sales tax. Please allow 3 weeks for delivery.

Circle 161 on inquiry card. BYTE November 1977 171

www.americanradiohistory.com NIMBLE: The Ultimate NIM?

Irwin Doliner POB 290 Owings Mills MD 21117

NIM is a 2 player game in which the 1 has taken his turns the number of counters

players alternately remove counters from a remaining will be 99, 88, 77, ... , 11, and pile according to some rule. The player finally 0. removing the last counter is either the Player 2 has the winning strategy in case winner or loser depending upon the varia- 2. In each successive turn he must take tion. One important characteristic of NIM is enough counters so that both players to- that exactly one player has a winning strat- gether will remove 11 counters. After player egy available to him at the start of the game. 2 has taken his turns, the number of That is to say, if the game is played counters remaining after each round will be "perfectly," the winner will be determined 89, 78, 67, and so on down to 12 and finally

before the game begins. 1. On his last turn, player 1 will be obliged Two examples will better illustrate these to take the last counter and therefore lose points. Suppose that there are 100 counters the game. and that each player in his turn must take at With either of these games you will least one, but no more than ten, counters. In doubtless beat an unsuspecting opponent

case 1 consider the player taking the last several times, even if you let him play in the counter as the winner and in case 2 the loser. favored position. But eventually, even the

The winning strategy in case 1 belongs to most casual observer will notice the in- player 1. He must take one counter on his variance of your line of play regardless of first move, and in each successive turn take what he does. Once he catches on you must enough counters so that both players to- find yourself another victim. gether will remove 11 counters. After player NIMBLE is the extension of NIM to a game with several piles and a slightly dif- ferent rule for removing counters. It, too, has a winning strategy for exactly one of the Game 1 Game 2 players. This strategy is slightly more dif-

Pile 1 Pile 2 Pile 1 Pile 2 Pile 3 ficult to explain than the earlier ones,

3 1 1 2 3 but much more difficult to spot. In fact, trying to learn the correct line of play from watching a knowledgeable player is like trying to catch a housefly in your Game 3 Game 4 hand: very often you will think you have Pile 1 Pile 2 Pile 3 Pile 1 Pile 2 Pile 3 him but when you open your hand, he's 9 6 4 6 5 3 gone. It is for this reason that the game des- cribed here was called NIMBLE. It is similar to NIM but requires greater mental agility. Figure 1: These are the starting positions of four simple NIM type games. If The rules of NIMBLE may be stated very the game is played so that the player removing the last counter wins, player 1 simply. It is played with any number of has the advantage in game 1, and player 2 has an advantage in game 2. Player piles, each of which may contain any num- 1 should win game 3, and player 2 should win game 4 if a perfect game is ber of counters; these numbers are fixed at played. the start of each game. Each player in turn

172 BYTE November 1977

www.americanradiohistory.com Jack play NIMBLE Jack be quick, Jack must learn The computer's trick.

removes a quantity of counters from a single Listing 1: A BASIC language source listing for NIMBLE. pile. He must remove at least one counter, but he may remove the entire pile. The 10: NIMBLE 201 player removing the last counter wins the 301 401 WAITIEN BY IRWIN DOLINEH game. For illustration, consider games 1 and 501 AUGUST. 1976 601 2 in figure 1. Player 1 has the favored 70, 80 PRINT 'NEED INSTRUCTIONS': position in game 1 . I f he is to win, he must 90 GOSUB 1900 remove two counters from pile 1 at his first 00 IF AS'N' GOTO 290 10 PRINT play. Then player 2 must remove one of the 20 PRINT 'IN THIS GAME OF NIMBLE TWO PLAYERS ARE CONFRONTED WITH P' 30 PRINT '(2.P.7) PILES OF OBJECTS WITH N(1) ((0.I..P).(0. =N11).64))' two remaining counters and player 1 takes 40 PRINT 'OBJECTS IN PILE I. EACH PLAYER IN TURN MUST SELECT ONE

50 PRINT 'PILE AND TAKE ANY QUANTITY FROM THAT PILE FRUM 1 TO ALL.. the other. In game 2 the advantage is not so 60 PRINT 'THE PLAYER TO TAKE THE LAST OBJECT IS THE WINNER. . 2. 70 PRINT THE GAME IS BEGUN WITH A COIN TOSS -THE WINNER OF THAI TOSS. obvious, but it belongs to player No 80 PRINT HAS THE RIGHT TO INDICATE A PREFERENCE FOR GOING FI1,57' 90 PRINT 'OR SECOND.' matter what player 1 does, player 2 will 200 PRINT 'YOU INDICATE YOUR MOVE BY P.0 WHERE P =THE PILE NUMBER. reduce the game to two equal piles. Then 210 PRINT 'AND Q =THE QUANTITY.' 220 PRINT 'ONCE YOU LEARN THE PROPER STRATEGY YOU SHOULD BEAT THE' player 2 must remove from one pile what- 230 PRINT 'MACHINE ABOUT 502 OF THE TIME -THERE IS A WINNING STHA7'EGY' 240 PRINT 'WHICH THE PROGRAM USES.' ever player 1 removed from the other. 250 PRINT

260 PRINT 'G O O D L U C K I I I I. It is not always so obvious which player 270 PRINT 280 PRINT has the advantage or, in fact, how to use it; 290 DIM G(6.6).V(6).N(6).P(6).W(2) for example, consider the two slightly more 300 PRINT 'PICK A NUMBER': 310 INPUT X difficult examples in games 3 and 4. Unless 320 PRINT 'THANK YOUI 330 FOR 1.1 TO X you know the game strategy, it is not 340 TEND 350 NEXT I obvious that player 1 should win game 3, 360 19 =6 370 J9 =6 and player 2 should win game 4, assuming 380 FOR 1.1 TO I9 they play correctly. Before reading on, 390 V(I) =2++(1 -1) 400 NEXT I 410 MAT G =ZER assume that you are player 1 in game 3 and 420 MAT N =ZEh make your first play. Did you say "Take one 430 MAT PZER 440 I9 =6 from pile 3 ?" You lose! In fact, you lose 450 PRINT 'SHOULD I SET UP GAME': 460 GOSUB 1900 unless you said "Take 7 from pile 1." This 470 IF AS ='N' GOTO 590 480 PRINT 'INDICATE DIFFICULTY LEVELC1 -5)': tactic will become obvious once the winning 490 INPUT 19 500 IF 19.63 GOTO 480 strategy is explained. 510 IF I9.1 GOTO 480 After becoming an expert at NIMBLE, 520 I9 =19.1 530 NINT(RND+(J9 -2)),3 you will get greater enjoyment from the $40 FOR J =1 TO N 550 NCJ) =INT(RND +(2+VC19) -1))H1 game if you can empathize with your un- 560 GOSUB 1700 570 NEXT J initiated friends' feelings of frustration, feel- 580 GOTO 730 590 PRINT 'HOW MANY PILES': ings which can better be appreciated if you 600 PRINT '13- '1.19:')': have been in the same So, 610 INPUT N situation yourself. 620 IF N.3 GOTO 600 if you enjoy making your own discoveries, 630 IF N.J9 GOTO 600 640 PRINT 'HOW MANY IN PILE NO. put this program on your computer (without 650 FOR J =l TO N 660 PRINT J: going too deeply into the logic) and play 670 INPUT N(J) 680 IF NCJ).2+V(19) GOTO 710 against it for a while as a novice. 690 PRINT 'SELECT NUMBERS LESS THAN ':2+V(19) 700 GOTO 660 Before typing in the program, there are 710 GOSUB 1700 some statements that may have to be 720 NEXT J 730 5.1 changed to make them more digestible to 740 PRINT 'I AM ABOUT TO TOSS A COIN - CALL H OR T '. 750 T1=INTC2+17ND) your computer. 760 INPUT AS 770 IF AS'H' GOTO 810 780 IF AE ='T' GOTO 810 1. The BASIC package I used does not 790 PRINT 'DON .. T BE A WISEGUY - CALL H OR T '. 800 GOTO 760 have a RANDOMIZE statement. State- 810 IF Tl 0 GOTO 840 820 CS.'H' ments 300 to 350 serve that purpose. 830 GOTO 850 2. Colons (:) were used in statements 10 840 CS ='T' 850 PRINT 'THE TOSS WAS ':CS to 70 to signify remarks in place of 860 GOSUB 1780 870 IF CS =AS GOTO 900 REM. 880 PRINT 'MY CHOICE - PONDER PONDER PONDER - '1

BYTE November 1977 173 www.americanradiohistory.com Listing 1, continued: Figure 2: Three example moves from a typi- cal NIMBLE game. Figure 2a illustrates the 890 GOTO 940 board set up before the first move. Notice 900 PRINT 'YOUR CHOICE - DO YOU WANT TO GO FIRST': 910 GOSUB 1900 that all the rows have an even number of Ts. 920 IF AE.'Y' GOTO 970 930 GOTO 990 Figure 2b shows the board after the first 940 FOR 1.1 TO I9 950 IF P1I) -1 GOTO 990 move. The first column now has an odd 960 NEXT I number of is. The second player restores 970 PRINT YOU GO FIRST - 1 980 GOTO 1010 the binary balance by removing four 990 PRINT 'I GO FIRST - . 000 S.(S -1)442 counters from the third pile and leaves 010 IF 5.1 GOTO 1400 020 FOR 1.19T0 1 STEP -1 an even number of is in each column. 030 IF PCI) e 1 GOTO 1100

040 NEXT I 050 4.INTCN*RND).1 060 IF N1J).0 GOTO 1050 070 T.INT(N(J)4HND).1 080 PRINT USING 1230.U.T (2a) 090 GOTO 1560 Quantity 100 T.V(I) Pile 110 FOR J.1 TO N Number Decimal Binary 120 IF G(I.J).1 GOTO 1140 130 NEXT J 1 3 0 1 1 140 G(I.J).0 150 P(I).0 2 6 1 1 0

160 FOR K.1 TO 1 3 5 1 0 1 170 IF P(K).0 GOTO 1210 180 T.T (24G(X.J)-1).V(K) 190 G(K.J).(G(K.J) -1).*2 200 P(K)=0 210 NEXT K (2b) 220 PRINT USING 1230.4.T 230 :MY MOVE IS Quantity 240 N(J).NCJ) -T Pile 250 FOR J.1 TO N Number Decimal Binary 260 IF N1J)<>0 GOTO 1370 270 NEXT J 1 3 0 1 1 280 IF 5.1 GOTO 1310 2 2 0 1 0 290 PRINT '1 WIN 111111 . 300 GOTO 1320 3 5 1 0 1 310 PRINT 'YOU WIN 111111 320 W(S*1).W(S.1).1 330 PRINT 'PLAY AGAIN') 340 GOSUB 1900 350 IF AS.N' GOTO 1970 (2c) 360 GOTO 410 Quantity 370 IF 5.1 GOTO 1000 Pile 380 GOSUB 1800 Number Decimal Binary 390 GOTO 1000 400 PRINT 'YOUR MOVE') 1 3 0 1 1 410 INPUT J.T 420 IF J >.1 GOTO 1460 2 2 0 1 0 430 PRINT 'PICK A PILE FROM I TO ':N: 3 1 0 0 1 440 INPUT J 450 GOTO 1420 460 IF J >N GOTO 1430 470 IF NCJ) >O GOTO 1510 480 PRINT THAT PILE IS EMPTY' 490 GOSUB 1800 3. PRINT USING uses a format state- 500 GOTO 1400 510 IF T.=I GOTO 1550 ment rather than a format variable (see

520 PRINT 'PICK A QUANTITY FROM 1 TO .11.41.1); 530 INPUT T 1080, 1220, 1230, 1780, 1970, and 540 GOTO 1510 1980). This may not be acceptable to 550 IF T >NCJ) GOTO 1520 560 N(J)..N(J)-T your BASIC. 570 TFN(J)

580 FOR I -19 TO 1 STEP -1 590 IF V(1) >T GOTO 1650 Looking at the sample run, you will see 600 T.T -VCI) 610 IF G11.J7.1 GOTO 1680 that you have a choice of setting up the 620 G11..17.1 630 P(I).(P(I) -1).*2 game yourself and determining the number 640 GOTO 1680 of piles and the quantity in each pile, or 650 IF G(1..1).0 GOTO 1680 660 G(I.J) =0 letting the computer do it. If the computer 670 P(I).(P(I) -1)4*2 680 NEXT I sets up the game, you must select a 690 GOTO 1250 700 T ..N(J) difficulty level which determines the

710 FOR I -19 TO 1 STEP -1 720 IF V(I) >T GOTO 1760 maximum number in each pile. 730 G(I.J).1 740 T.T -VCI) When the game is set up, the computer 750 PCI) -(PCI) -1)*42 will simulate a coin toss; the winner will 760 NEXT I 770 RETURN have the privilege of determining who should 780 PRINT USING 1790.N 790, THERE ARE II PILES play first. (If the computer ever wins the 800 PRINT 810 FOH X.1 TO N toss and loses the game, look for an error in 820 PRINT X: 830 NEXT X copying the program.) Once you learn the 840 PRINT 850 FOR X.1 TO N strategy, the game will be decided on the 860 PRINT N(X)1 coin toss (unless you toss and make 870 NEXT X win the 880 PRINT an error). You should begin your play by 890 RETURN 900 INPUT AS letting the computer set up the games at 1910 IF AS...N. GOTO 1930 1920 RETURN difficulty levels 1 and 2. When you think 1930 IF AS...Y. GOTO 1950 1940 RETURN that you have discovered the winning 1950 PRINT 'ANSWER ONLY Y OR N') 1960 GOTO 1900 strategy, test your theory at the higher 1970 PRINT USING 1980.W(1).W(2) levels. 1980 t FINAL SCORE - ME III YOU III 1990 END If you discover the strategy for beating

174 BYTE November 1977 www.americanradiohistory.com -- A CALL FOR SPEAKERS -- r---- ir-TCOAE ST OAOr-cr>«T Á REx Aotiitic

Home C o 11-Vik.À fr 0 011-1L You read about the FIRST West Coast Computer Faire in Byte, Interface Age, Kilobaud, Personal Computing, etc. held in San Francisco last April 13,000 People 200 Exhibitors 100 Speakers over 320 pages of published Conference Proceedings.

Well.. . WE'RE DOIN' IT AGAIN

The SECOND West Coast Computer Faire will be held in The Brand New Convention Center in San Jose in the middle of "Silicon Valley" - the south end of the San Francisco Peninsula expecting 10,000 -15,000 People 50 -100 Speakers 150 -190 Exhibitors

March 3 - 4 - 5 1978

gam -6 pm gam -61, m Noun -5 pm

(That's right after Compcon concludes in San Francisco) YOU Can Be A Part Of It: Talk about your latest project Exhibit homebrewed system Organize & chair Conference Section Write now for speaker's instructions Prizes for best "homecooking" Help gather speakers you want to hear Conference talks will be published (just like an old county fair) Assure the Conference has topics that interest you Talks to be included in the published Conference Proceedings must arrive by January 2, 1978, in the required format. Some of the Conference Sections being planned: Tutorials for computer novices Personal computers for education Speech synthesis & speech recognition Business systems using "home" computers Computer- driven & computer- assisted music systems Computers & amateur radio Computer graphics & video art Hardware & software design & implementation Personal computers for the physically disabled Standards for hardware, interfaces & software Manufacturer tutorials on explicit systems Workshops for club leaders, retailers, NL editors, etc. Quick! Write for more details: Computer Faire, Box 1579, Palo Alto CA 94302

SPEAKERS' PAPERS' DEADLINE:JAN.2

Circle 159 on inquiry card. BYTE November 1977 175 www.americanradiohistory.com N

N(1) N(2) N(3) N(4) N(5) N(6)

20

21

22 V P

23

24

25

G

Figure 3: These tables represent the manner in which the information for this game is stored in memory. The matrices are de- fined as follows:

The binary value vector V(/) = 21 -1. N The pile quantity vector. N(J) = the number of counters in pile J.

G The binary value matrix. G(/, JJ = 1 or 0 depending on whether or not V( /) is in the binary representation of N(JJ. P The parity vector. P( /) = 0 if row i of the G matrix has an even number of 1s; otherwise P(/) = 1.

HOW MANY PILESC3- 6 173 HOW MANY IN PILE NO. the computer, short of doctoring the 1 79 2 76 program: congratulations! If not, you have 3 74

I AM ABOUT TO TOSS A COIN - CALL H OR T 7T probably come to the conclusion, after THE TOSS WAS H THERE AHE 3 PILES watching the computer's strategy for a while, that it attempts to maintain a certain 1 2 3 9 6 4 kind of balance. That is absolutely correct; though not in the way you probably think. e e I e 1 If we lived in a binary world, this game e 1 I 0

O I 0 0 I would be very uninteresting because the e e e e e e e e strategy would be too obvious. But un- MY CHOICE - POND H PONDER PONDER - I GO FIRST - fortunately man learned to count on his MY MOVE IS 1. 7 fingers and not his ears. We just normally 2 3 2 6 6 think in decimal. The following demonstration should fl 0 0

1 fl clarify the strategy. Suppose we have 3 piles

0 1 1 O 0 0 0 P with 3, 6 and 5 in piles 1, 2 and 3 0 0 0 we e 0 e respectively. If represent these quantities YOUR MOVE72.3 in binary, the system would look like figure

1 2 3 2a. 2 3 4 There -is an even number of 1 s in each

e 1 D I column; no matter what player 1 does, this Figure A 1 1 0 0 4: typical I 0 0 1 statement will no longer be true after his P G 0 fl fl 0 NIMBLE game showing 0 0 0 0 move. Suppose that player 1 removes 4 the contents of G matrix 0 0 0 fl from pile 2: the system now looks like figure MY MOVE IS 3, 3 and P table for each move 2b. Player 2 can now restore binary balance 1 2 3 in the game. 2 3 by removing 4 from pile 3, leaving a system

176 BYTE November 1977 www.americanradiohistory.com Figure 4, continued: Figure 5: A typical NIMBLE game series.

RUN SAMPLE RUII

O 1 e NIMBLE 20:16 08/31/76 1 l 0 0 0 0 NEED INSTRUCTIONS7Y G 0 0 e P e e e IN THIS GAME OF NIMBLE TWO PLAYERS ARE CONFRONTED WITH P YOURe e YOUR MOVE72.3 (2.P.7) PILES OF OBJECTS WITH N(I) ((0

PILE AND TAKE ANY QUANTITY FROM THAT PILE FROM 1 TO ALL. 1 2 3 THE PLAYER TO TAKE THE LAST OBJECT IS THE WINNER. 2 0 1 THE GAME IS BEGUN WITH A COIN TOSS -THE WINNER OF THAT TOSS HAS THE RIGHT TO INDICATE A PREFERENCE FOR GOING FIRST OR SECOND. 0 0 1 YOU INDICATE YOUR MOVE BY P.Q WHERE P =THE PILE NUMBER. 1 0 0 AND Q =THE QUANTITY. e 0 0 e ONCE YOU LEARN THE PROPER STRATEGY YOU SHOULD BEAT THE G e N e e P MACHINE ABOUT 502 OF THE TIME -THERE IS A WINNING STRATEGY e 0 e e WHICH THE PROGRAM USES. 0 e e o MY MOVE IS 1. G O O D L U C K 1 1 1 1

2 3 e PICK A NUMBER774

THANK YOUI SHOULD I SET UP GAME7Y INDICATE DIFFICULTY LEVEL(I -5)71 0 0 I AM ABOUT TO TOSS A COIN - CALL H OR T 7H 0 0 0 THE TOSS WAS T 0 0 e THERE ARE 5 PILES G 0 0 e P 0 0 2 3 4 5 e e e 2 1 3 1 3 Y UR MOVE71.1 MY CHOICE - PONDER PONDER PONDER - I W FIRST - MY MOVE IS I. 2 1 2 3

0 0 1 2 3 4 5

O 1 3 1 3 YOUR MOVE75.3

MY MOVE I S 3. 3 0 e 1 2 3 4 5 G O P e 1 e 1 0 0 YOUR MOVE72.1 0 MY MOVE 15 4. I M MOVE 15 I WIN 111111 PLAY AGAIN7Y I WIN 1111!! PLAY AGAIN7Y SHOULD I SET UP GAME7Y INDICATE DIFFICULTY LEVEL(1 -5)75 I AM ABOUT TO TOSS A COIN - CALL H OH T 7H THE TOSS WAS T THERE ARE 3 PILES that looks like figure 2c. The game will

I 2 3 continue this way, with player 1 disrupting 4e 55 6e

MY CHOICE - PONDER PONDER PONDER - I GO FIRST - the balance and player 2 restoring it. Player MY MOVE 15 1. 29

1 must ultimately leave a single pile which 1 2 3 player 2 will remove. Therefore, if the initial 11 55 60 YOUR MOVE73.10 system is in binary balance it is preferable to MY MOVE IS 1. 6

go second; otherwise, it is preferable to go 1 2 3 5 55 50 first. The strategy is simply to restore binary YOUR MOVE72.37 balance each time your opponent disrupts it. MY MOVE 15 3. 27

Now that you know the winning strategy, 1 2 3 5 18 23 you will want to learn how the program YOUR MOVE73.22 MY MOVE 15 2. 14 knows to play it. First we must think of writing binary numbers vertically from 2 3 5 4 1 up YOUR MOVE71.2 bottom rather than horizontally from left MY MOVE 15 2. 2 to right. For example, the numbers 3, 5, 7 1 2 3 and 8 would be represented as: 3 2 1 YOUR MOVE71.1

MY MOVE 15 3. 1 3 5 7 8

1 2 3 2 2 0 1 1 1 0 YOUR MOVE71.1

MY MOVE IS 2. 1 1 0 1 0

0 1 1 0 1 2 3

1 I O 0 0 0 1 YOUR MOVE711

MY MOVE IS 2. 1

I WIN 111111 PLAY AGAIN7Y This method is used to represent the pile SHOULD I SET UP GAME7N quantities in the G table (matrix). HOW MANY PILES:3- 6 )73 HOW MANY IN PILE NO. Figure 3 demonstrates the relationships 1 79 2 76 between the major program tables and how 3 74 I AM ABOUT TO TOSS A COIN - CALL H OR T 7T they are used to find the optimal move. THE TOSS WAS H THERE ARE 3 PILES When it is the computer's turn to play, it looks P 1 2 3 at the vector, statements 1020 to 9 6 4 1040 of listing 1. If it is not equal to 0 there MY CHOICE - PONDER PONDER PONDER - I GO FIRST - MY MOVE IS 1. 7 is no optimal move and the computer plays I 2 3 at random as shown in statements 1 05 0 to 2 6 4

V TL November 1977 177

www.americanradiohistory.com Figure 5, continued:

YOUR MOVE72,3 MY MOVE IS 3. 3

1 2 3 1080. If P equals 0 the computer determines

the largest I for which P(I) = 1 and then YW R MOVE72.3` MY MOVE IS 1. I selects the smallest j for which G ((,J) = 1, 2 3 ie: it picks the first pile which contains V(I). YOUR MOVE72.1 The computer then concentrates on column THAT PILE IS EMPTY J and takes the 1's complement of G(I,J) 2 3 whenever P(I) = 1, statements 1100 to 1220. 1 0 1 YOUR MOVE71.1 Figure 4 demonstrates this process by MY MOVE IS 3. 1 I WIN 111111 PLAY AGAIN7Y showing the contents of tables G and P after SHOULD I SET UP GAME7N HOW MANY PILES(3- 6 173 each move in the playing of game 3. If you HOW MANY IN PILE NO.

1 76 work this through carefully, you will see

3 13 how the computer uses these tables to find

I AM ABOUT - TO TOSS A COIN CALL H OR T 7H an move when one is possible. THE TOSS WAS T optimal THERE ARE 3 PILES Figure 5 shows a sample run of NIMBLE. 2 3 Even though you now know the secret of 6 5 3 MY CHOICE - PONDER PONDER PONDER - YOU GO FIRST - YOUR MOVE71.2 NIMBLE, you can still have fun with the MY MOVE IS 3, 2 game. You can test your ability to rapidly

4 5 3 convert numbers to binary at difficulty YOUR MOVE72.2 levels 4 and 5. You can make the game more MY MOVE IS 1. 2 difficult by increasing the sizes of the arrays 1 2 3 2 3 1 (also 19 and J 9) to allow larger values and YOUR MOVE72,3 MY MOVE IS 1. more piles; or you can merely impress your friends by beating the computer when they I 2 3

1 0 1 use I hope YOUR MOVE71.1 can't. However you NIMBLE,

MY MOVE IS 3. 1 that you have as much fun playing it as I had I WIN 111111 PLAY AGAIN7N FINAL SCORE - ME 4 YOU 0 writing it.

PAPERBYTES Design and Implementation of a Tiny Assembler 6800 - Microprocessor Self Assembler Originally described in the April and May 1977 BYTE, PAPERBYTES is now offering No )W S7 Jack Emmerichs' Tiny Assembler 6800. This book contains the complete Tiny Assem- bler source listing plus object code in cross assembly format (space restrictions prevented 1.LiI iipú 1 Li t.) printing of this material in BYTE). A bar code version of Tiny Assembler is included for convenience, as well as reprints of Jack's two articles and additional user manual mate- Tiny Assembler 6800 rials. Tiny Assembler will run on any machine with Ml KBUG and 4K of memory starting at address 0000, and is an excellent tool for the interactive development of functional blocks for a large structured program. Add it to your 6800 system and you'll have a valuable programming aid which can free you from the drudgery of machine language. The best part is the price: only $7. Order yours today!

Name

Address

City State Zip

Design and Implementation of a Microprocessor Self Assembler PAPERBYTES Price of Book $ Tiny Assembler 6800 by Jack Emmerichs Postage, 35 cents $

Total $ Send today to: D Check enclosed

BYTE Interface Technical Services, Inc. u Bill MC # Exp. Date 70 Main St mu , D Bill BA # Exp. Date Peterborough NH 03458 Signature Dealer inquiries invited In unusual cases, processing may exceed 30 days. No. 700 All orders must be prepaid. You may photocopy this page if you wish to leave your BYTE intact.

178 BYTE November 1977 Circle 12 on inquiry card.

www.americanradiohistory.com O IK,c0 io by Rodnay Zaks. Ref. C201 $6.95 THE BOOK (MICROPROCESSORS: from chips to systems ) This book is based on the author's experience in teaching microprocessors o 5' to more than 2000 persons during the past 5 years, both in a professional, and in a university environment. The seminars have received the highest ratings for `O %O the it educational and technical value, and have been taught worldwide. c' This step by step book stresses: O 1. How t o assemble a complete system 2. Design trade -offs: advantages, disadvantages, problems, costs. O1 Ab out 250 pages, over 70 illustrations. Available August 1977 CONTENTS A comprehensive introduction to all the essential aspects of microprocessors and microcomputers: Technical Introduction / LSI Technologies / Internal Architecture of a Microprocessor / System Components / The Microprocessor Families / Microprocessor Programming / Applications of Microprocessors / Building a System `O / Product Development / Design Aids / Microprocessor Selection / Evolution and Perspectives. THE AUTHOR Dr. Rodnay Zaks has be en responsible for the design of industrial microprocessor systems since their inception

in 1972. He is the author of 1 1 educational books in the field and more than 20 scientific publications. CASSETTES The 2 basic microprocess or courses are now available on cassettes. Each course includes 2 cassettes (21/2 hours) and a special book:

S1 - An I ntroduction to Microprocessors $29.95 S2 - Pro gramming Microprocessors $29.95 OTHER BOOKS MICROPROCES SOR ENCYCLOPEDIA 2 complete reference books, containing manufacturers' data and description of operation for every microprocessor. A necessary tool for any comparative evaluation.

E8 - 8 BITS MICROP ROCESSORS: Am 9080, AMI 6800, EA 9002, Fairchild F8, GI LP 8000, Intel 8080 A, Intersil 6100, Mos Tech 650 X, M ostek 3880, 3850, M 6800, NS 8080 A, SC /MP, RCA CDP 1802, PPS -8, Signetics 2650, TMS 8080, Western Digital MC P 1600, Zilog Z -80 $29.95

E5 - BIT SLICES: AMD 2901, Fairchild Macrologic, Intel 3000, MMI 5701, Motorola M 2900, M 10800, NS IMP, Signetics 8X02, 30 00, TI SBP 0400. $18.00 IMD - Inte rnational Microprocessor Dictionary 10 Languages: E nglish - German - French - Spanish - Italian - Swedish - Norwegian - Danish Hungarian -Polish. 30 Pag e s. $1.95 ACR -Micr ocomputer Acronyms - 4 -Page guide to abbreviations $1.00 SEMINA R BOOKS (condensed notes)

B2 - Microcomputer programming $39.95

B 3 - Military microprocessor systems $39.95

B 5 - Bit Slice $39.95 B6 - Industrial microprocessor systems $39.95

B7 - Microprocessor interfacing techniques $39.95 IN-HO USE TRAINING

SYBEX i s independent from manufacturers and provides in -house training and education on all the above topics, as well a s on specialized microprocessor techniques. AVAI LABLE SOON: Microp rocessor programming techniques (with 8080 and 6800 examples) $7.95 ORDER FORM TO ORDER Send me Na me Handling (fourth -class rate): no copies of $ charge. Faster delivery: $1.40 one P osition copies of book, $0.90 each additional one. ($2.50 overseas) Company copies of 1. Fill attached coupon, or send P.O. Address 2. Enclose payment (prices are for Subtotal U.S. only). In California, add tax. In California, add tax + 3. Mail to SYBEX Inc, Publications Dept, 2161 Shattuck Ave, Berkeley, Postage and Handling Ca 94704. Tel: (415) 848 -8233. Telex: 336311 STATE, z;P TOTAL In Europe: SYBEX - Europe, 313 rue Lecourbe, 75015 Paris, France Payment included: check P.O. money order other Tel: (1)8282502, Telex: 200858

Circle 140 on inquiry card. BYTE November 1977 179 www.americanradiohistory.com Continued from page 78

Figure 5: A flowchart of the floating point addition or subtraction routine.

W W H HH zz i wW D w0Z ¢ Uxcca ?w

W O Z tn H a 0 4 zH UJ WZ Uw 7W a WZ K ¢O Oa Wxua WJMW I0 NU

N W Y

O O a

N W W y } > K SmWw H2 2 zzH fN WcrZ LJ'Er wJ22 uaaSJO z _ rn w

180 BYTE November 1977

www.americanradiohistory.com that its format allows representation of 7 digit numbers at all times. Because the entire BYTE FLOWCHART CONVENTIONS format is in binary, implementing the basic operations and all of the transcendental ENTRY POINT, LABEL, functions is easier than when using either of OR SUBROUTINE RETURN the other two formats. The major drawback is the small range of numbers representable, relative to the other XXXX GENERALIZED PROGRAM FUNCTION formats (10 +38 to 10 -38). This is because its cxponent is only a power of two com- pared with bases of 10 and 16 respectively. INTERNAL LABEL REFERENCE Two other minor drawbacks are the need for (FLOW INTO CIRCLE) routines to convert floating point numbers from a decimal base to a binary base (and INTERNAL LABEL vice versa), and the need to expand the DEFINITION binary format to perform actual calcula- (FLOW FROM CIRCLE) tions. The hexadecimal floating point format permits a much larger number range DECISION (ENTRANCE UNMARKED, (10 +76 to 10 -76) than the binary format, EXIT OPTIONS MARKED) and the conversion routines are similar for both. Although slightly slower than the binary format, the hexadecimal format is still much faster than any BCD format of comparable capability. FLOW JUNCTION (ARROWS ON INPUTS) It is somewhat more difficult to imple- -I + ment scientific functions such as square root, exponential and logarithm with this FLOW RULE: format than with the binary format, and its ALL FLOW IS ASSUMED OR DOWN TO precision is not as great as the binary format's THE RIGHT; EXCEPTIONS TO THIS RULE ARE INDICATED BY ARROWS. ARROWS precision because it is digit rather than bit GENERAL! Y OMITTED OTHERWISE. oriented. Even though the most significant digit is nonzero, the most significant three bits of the digit itself may be zeroes, resulting in only 21 bits of accuracy. This translates number of digits can be expanded. to only six digits of accuracy. This format has its list of disadvantages, In describing the four basic floating though; but for these the commercial com- point operations and the format conver- puter industry might have adopted it long sions, the hexadecimal format will be used ago. The program size required for per- to illustrate examples. forming just the basic operations and the conversion routines is about the same as for Floating Point Operations the other formats, but execution times are The software uses three floating point significantly slower. Many hobbyists are not registers, an accumulator, argument register as concerned with the number of milli- and scratch register. The floating point seconds as with the number of bytes, but accumulator contains one of the operands another disadvantage is the larger memory required to store the floating point num- prior to a calculation, and the result after the is The bers. For most assembly language applica- calculation performed. argument register contains the other operand, which tions the impact is negligible. It does be- come noticeable, however, when the float- is loaded by the routine, and the scratch register is used to hold temporary results. ing point package is part of higher level In each of the basic operations there are language programs such as interpreters or two parts: exponent calculation and man- compilers. One major disadvantage is more tissa calculation. Fixed point operations subtle. Many of the transcendental func- require only the mantissa calculation, which tions are best implemented using algorithms which are binary based. Using these algo- turns out to be the easier of the two. rithms, the BCD format is awkward at best Add and Subtract Routine and at worst consumes large quantities of time and memory. Figure 5 is a flowchart of the add and The binary floating point format provides subtract routine. The two operations are the fastest execution times, despite the fact described together because the algorithms

BYTE November 1977 181

www.americanradiohistory.com example, 0.0001 added to 100000 will give 100000 because only six significant digits A= .100000 X 161 B= .FFFFFF X 160 are retained. In the second section the signs of the two Figure 6a: Two numbers A and B, which differ from one another by less than operands are compared. If they are the same, one part in 224, but which were represented as two different numbers. addition is performed, and if they are dif- ferent, subtraction is performed. Addition is a straightforward 32 bit fixed point add; the Mantissa Guard Byte only normalization is a right rotate one digit A= .100000 0 X 161 and exponent increment when there is a B= .OFFFFF FO X 161 carry out. An overflow can only occur if, on the right rotate, the exponent exceeds Figure 6b: The same numbers as figure 6a, but with B shifted to the right one the maximum value when incremented. digit, and the extra digit stored in the guard byte in preparation for the sub- When this occurs, the current routine is traction shown in figure 6c. This shifting aligns mantissa radix points (makes exited, the overflow flag is set, and program exponents equal). control is returned to the caller. If the mantissa signs are opposite, the argument mantissa is subtracted from the Mantissa Guard Byte accumulator mantissa in a 32 bit fixed point A= .100000 00 X 161 operation. If the absolute value of the 161 -B = -.OFFFFF FO X argument mantissa is greater than that of X C = .000000 10 X 161 .100000 16-5 the accumulator mantissa, a carry out occurs and the result must be negated and the Figure 6c: The subtraction of B from A to give C. There is only one significant result sign complemented. The effect is the digit in the result, which is entirely located within the guard byte. same as subtracting the smaller mantissa from the larger and using the sign of the larger. A= .100000 X 161 The last section normalizes and rounds -B = -.OFFFFF X 161 off the result and checks for exponent over- C = .000001 X 161 .100000 X 16-4 flow and underflow. Normalization consists of shifting the mantissa digits left until the Figure 6d: If the guard byte is omitted, as in this example, the apparent result most significant digit is nonzero. For each is off by a factor of 16 due to truncation prior to the mantissa addition (or shift, the exponent must be incremented subtraction). and checked for overflow. Only 24 bits of mantissa are saved. Therefore, the 25th bit are identical except for a sign change before of the temporary result determines whether executing a subtract. the mantissa is to be rounded up or not. The add and subtract routine consists of For example, if the hexadecimal result were three functionally separate sections. The 10000094, it would be rounded up to first prepares the numbers for the operation 100001, whereas a result of 10000048 by aligning the radix points. This is analogous would not. to aligning the decimal points for an addi- If the guard byte and a round off opera- tion or subtraction of decimal numbers. tion are not used in an addition, one bit of The addition or subtraction is then per- significance could be lost. By comparison, formed and the result normalized. subtraction without a guard byte could The radix points are aligned by shifting mean a difference of an order of magnitude. the mantissa of the smaller number right one Two numbers can be different by less than digit and incrementing its exponent until one part in 224 and yet be represented as the exponents are equal. When shifting right, two different numbers (A and B in fig- the last eight bits shifted out are saved in the ure 6a). When one is subtracted from the guard byte in order to maintain accuracy. other, the smaller must be shifted right in During the shifting and incrementing loop, order to align the radix points. The guard the 32 bit mantissa, including the guard byte stores the shifted out digit (figure 6b) byte, should be checked for all zeroes (a and retains the only significant digit of the situation which implies that one operand is result (figure 6c). Without a guard byte the too small to affect the other). This is to significant digit may be off by a factor of avoid shifting insignificant zeroes. For 16 (figure 6d).

182 BYTE November 1977

www.americanradiohistory.com IF YOU'RE NOT SUBSCRIBING TO CREATIVE COMPUTING, YOU'RE NOT GETTING THE MOST OUT OF YOUR COMPUTER...... 1 want to get the most out of my computer. Please enter my subscription to: No computer magazine gives algorithms, shuffling and string you more applications than we do! cneative manipulation to make your own Games. Puzzles. Sports simula- cOntputirtg programming easier and more effi- tions. CAI. Computer art. Artifi- Foreign Foreign cient. cial intelligence. Needlepoint. Term . LISA Surface Air We can even save you time and Music and speech synthesis. money. Our extensive resource 01 -year 0$ 8 0 $ 12 $ 20 Investment analysis. You name it. 0 section is filled with all kinds of 0 2 -year 0$ 15 0 $ 23 0 S. 39 We've got it. And that's just the 03 -year 0$ 21 0$ 33 0$ 57 facts plus evaluations of hundreds beginning! 0 Lifetime 0 $300 0 $400 0 $600 of items. Including microcompu- Whatever your access to compu- 0 Vol. 1Bound 0$ 10 0$ 12 0$ 15 ters, terminals, peripherals, soft- ter power -home computer kit, 0 Vol.2 Bound 0$ 10 0$ 12 0$ 15 ware packages, periodicals, book- mini, time -sharing terminal -Cre- 0 Payment Enclosed lets and dealers. We also give you ative Computing is on your wave- 0 Visa/Bank Americard 0 Master Charge no- nonsense equipment profiles to length. Whatever your computer Card No. help you decide which computer is application- recreation, educa- 0 Please bill me ($1.00 billing fee will be best for you- before you spend tion, business, household manage- added;.foreign orders must be prepaid) * money on one that isn't. ment, even building control -Cre- Name We ve got fiction too. From the ative Computing speaks your best authors in the field, like language. Address Asimov, Pohl and Clarke. Plus Read through page s of thorough- City State Zip timely reviews of computer books, vendor manuals and government ly documented programs with Send to: Creative Computing, Atten: Inez complete listings and sample runs. P.O. Box 789 -M, Morristown, N.J. 07960 pamphlets. And so much more! All made easy for you to use. Learn Isn't it about time you subscrib- about everything from new soft- ed to Creative Computing? It's ware to microprocessors to the smart way to get the most new uses for home com - out of your computer. puters. And all in simple, Complete this coupon and understandable terms. mail it today.Or for fast And there's still more. response, call our toll - Crea tive Compu ting free hot line. discusses 'creative (800) 631 -8112. (In prpgramming tech- New Jersey call niques like sort (201) 540 -0445).

Circle 39 on inquiry card. BYTE November 1977 183 www.americanradiohistory.com Figure 7: A flowchart for the floating point multiplication routine. the accumulated result if the bit is a one. The result is then rotated right one bit, retaining 32 bits, and the whole procedure repeated for all 24 bits of the multiplier. (MULTIPLY) ROTATE MULTIPLIER [An example of this algorithm implemented RIGHT I BIT in hardware was found in the article "This EXCLUSIVE -OR SIGNS TO GET Circuit Multiplies" by Tom Hall, page 36 RESULT SIGN in July 1977 BYTE ... CH/ Though the fixed point calculation is

ADD EXPONENTS straightforward and uncomplicated, it is TO GET extremely time consuming because the loop RESULT EXPN is repeated 24 times. One method of re- ADD ducing the execution time is to cut out all MULTIPLICAND TO RESULT subroutines within the loop and use only in line code. A complete multiplication 1 routine can then have a worst case multiply FIGURE 5 time of about 2.5 ms using an 8080 pro- cessor with 2 MHz clock. SHIFT RESULT

RIGHT I BIT Division

FIGURE 5 Figure 8 is a flowchart of the division DECREMENT routine. The fixed point divide algorithm is INITIALIZE THE COUNT RESULT TO analogous to the partial product method and ZERO AND SET is COUNT TO 24 also commonly used. It compares the absolute value of the divisor to that of the dividend. If it is equal to or less than the dividend's absolute value, it is subtracted from the dividend, and a one is rotated into the least significant bit of the quotient. Otherwise there is no subtraction and a YES zero is rotated in. The dividend is then shifted left one bit and the loop repeated FIGURE 5 for a total of 32 times, generating a 32 bit quotient. Long division by hand goes through the identical procedure, but it operates on digits instead of bits. FIGURE 5 Since more processing is done in each loop cycle than in the multiply routine, division execution times are longer than Multiplication multiplication times. The worst case times Figure 7 is a flowchart of the multiplica- are still around 5 ms for an 8080 with tion routine. Calculation of the exponent 2 MHz clock. for the multiplication and division routines In both the multiply and divide routines, is achieved by adding or subtracting the the normalization procedure is identical to operand exponents respectively. Since the the one in the subtract routine. Therefore it exponents are in excess -64 notation, the usually turns out to be shared code. offset (64) will have to be subtracted from These routines are the core for other or added to the result. If the resultant ex- floating point functions such as format con- ponent is less than the smallest exponent versions and scientific mathematical func- or greater than the largest, an underflow tions. Because of this it is important that or overflow condition exists and the appro- these routines execute as fast as possible so priate action is taken (for example, display- that the other functions' execution times ing an error message or setting the result to a are not increased to several seconds instead fixed value). Sign calculation for both of fractions of seconds. multiply and divide is a simple exclusive or BCD to Binary and Binary to BCD con- of the two operand signs. versions are probably the most difficult to The partial product method is the most implement in a binary floating point package. widely used in fixed point multiplications, There are several simple methods of con- decimal or binary based. Using binary num- verting integers from one format to the

bers, this algorithm rotates the multiplier other, but I haven't seen any published right one bit and tests the bit rotated out. literature to date on either floating point The multiplicand is conditionally added to arithmetic or number base conversions.

184 BYTE November 1977

www.americanradiohistory.com The methods described here were chosen Figure 8: A flowchart for the floating point division routine. because of their simplicity rather than their speed. The slow base conversions are still relatively fast compared to the character ( DIVIDE oriented input and output operations in V which they are used, so for most purposes 32 -BIT COMPARE EXCLUSIVE -OR DIVIDEND the conversion speed is not noticeable. SIGNS TO GET MINUS DIVISOR RESULT SIGN Decimal to Binary Conversion

The Decimal to Binary (DB) routine SUBTRACT DIVISOR YES EXPONENT FROM (figure 9) converts a free format floating DIVIDEND EXPONENT point BCD number in ASCII to binary floating point format, converting from ASCII BCD floating point to formatted BCD 32 -BIT SUBTRACT YES DIVIDEND floating point, and then to binary floating MINUS DIVISOR point in one operation. FIGURE 5 After initialization the DB routine first checks for a plus or minus sign, which is optional. It ignores a plus sign and sets a YES COMPLEMENT CARRY flag if there is a minus sign. It then reads in one or more digits (and possibly a decimal FIGURE 5 point). When it encounters a decimal point, it tests a flag to see if another decimal point YES ROTATE CARRY INTO has already occurred and sets the flag if LSB OF QUOTIENT not. If a decimal point has already occurred, FIGURE 5 the routine jumps to the last section. For each decimal digit input, the routine multi- SHIFT DIVIDEND

LEFT I BIT plies the accumulated result by ten in float- YES i ing point format, creates a floating point number from the digit, and adds the number FIGURE 5 to the accumulated result. If a decimal point DECREMENT THE COUNT has previously occurred, a decimal exponent SET COUNT TO 32 count is decremented, keeping track of the number of digits in the fractional part. This process is repeated until a character which is NO neither a digit nor decimal point has oc- curred, at which point control passes on to the exponent evaluation routine. Here the decimal exponent of the num- The number is left in packed BCD notation ber, if any, is processed. The routine first so the user can define his or her own format searches for the presence of an E character. for the decimal point and exponent. If none is present, control jumps to the last Initially, the binary number is normalized section. If the character is present, one or so that it is in the range of 0.1 to 1.0, with a two BCD digits are inputted with an optional decimal exponent kept separate. This is done plus or minus sign. The BCD digits are con- by repeatedly multiplying or dividing by verted to an 8 bit binary, two's complement 10 until the number is equal to or greater number and added to the decimal exponent than 1.0 and less than 10.0, and then count. dividing it by 10.0. During this operation, Finally, the mantissa is normalized by each multiplication or division by 10 is either repeatedly multiplying or dividing by tabulated in a count. Next, a round off of ten, depending upon the decimal exponent 0.0000005 is added and a correction, if count. Multiplication is performed if the necessary, is made to make sure the number count is greater than zero, and division is remains between 0.1 and 1.0. performed if it is less than zero. The count is The number is then converted to a binary either decremented or incremented respec- fixed point fraction, and finally to a BCD tively toward zero for every multiplication fixed point fraction of eight digits, but or division. When the count reaches zero, accurate to only six digits because of the the sign is corrected if the number is nega- added round off. tive, and the routine returns. After completing mantissa conversion, The Binary to Decimal (BD) routine the binary count of the decimal exponent shown in figure 10 converts a binary floating is converted to a signed BCD pair and stored point number to packed BCD floating point. with the BCD fraction.

BYTE November 1977 185

www.americanradiohistory.com N }W

-oJ

N }W / Th

Figure 9: Flowchart of a decimal to binary routine used to convert a free format floating point BCD number in ASCII format to binary floating point format.

186 BYTE November 1977

www.americanradiohistory.com to all BYTE magazine subscribers and would-be subscribers

SAVE MONEY! As of January 1, 1978, we are raising our subscription rates to meet the increased costs of producing and mailing BYTE to our more than 110,000 monthly readers. The new domestic subscription rates, effective January 1, 1978:

Current Rates Rates Effective January 1, 1978 One year U.S. -.$12 One year U.S. - $15 Two years U.S. - $22 Two years U.S. - $27 Three years U.S. - $32 Three years U.S. - $39

If you already subscribe to BYTE and still have several months to go before expiration of your subscription, you can still take advantage of current rates for renewal (even up to three BUTE VíE years). Use coupon below. When your present subscription expires, your renewal order commences.

If you are not yet a subscriber to BYTE, the leading magazine for the creative home computer experimenter, don't delay ... mail this coupon and start getting your own copies of this invaluable magazine, before new rates become effective. USE THIS MONEYr------SAVING COUPON TODAY To new subscribers: BYTE Subscription Dept P.O. Box 361 Arlington, Mass. 02174 e Read your first copy of BYTE, if it's 1 everything you expected, honor our PLEASE ENTER MY SUBSCRIPTION FOR: invoice. If it isn't, just write 1 One year $12 (12 issues) Two years $22 Three years $32 "CANCEL" across the invoice and 1 Check enclosed (entitles you to bonus of one extra issue) mail it back. You won't be billed, and 1 the first issue is yours. Bill me Bill BankAmericard/Visa Bill Master Charge 1 Allow 6 to 8 weeks for processing. Card Number. IITIIIIIIIIIIII Expiration Date: 1 Signature: Name (please print) 1 Address: © Byte Publications, Inc. 1977 City: State /Country: Code:- 1 Offer expires December 31, 1977 1 FOREIGN RATES FOR ONE YEAR: (Please remit in U.S. Funds) Canada or Mexico $17.50 (Air deliuered) Europe $25 (Air delivered) Circle 20 on inquiry card. 1 All other countries except above: $25 (Surface delivery) Air delivery available on request 1 www.americanradiohistory.com These two algorithms for conversion of code an 8080 version of the routines for the bases between BCD (base 10) and binary basic arithmetic functions, as well as exten- (base 2) are valid for any binary floating sions for functions such as square root, ex- point format, not just the one used here. ponential, natural logarithm, sine and cosine, and arc tangent. The extensions all Concluding Remarks use the basic multiplication, division, addi- tion and subtraction operations to evaluate It is hoped that this discussion along with the more complex functions involved. Read- the flowchart specifications of the algorithms ers interested in a detailed copy of this can be used by readers as a basis for coding 8080 mathematical function software a floating point arithmetic package for any documentation can purchase it for $10 by

general purpose microprocessor system. I writing to me at POB 447, Maynard MA have used this information in particular to 01754.

Figure 10: Flowchart of a binary to decimal conversion routine used to convert a binary float- ing point number to packed BCD floating point format.

BINARY TO BD DECIMAL

CLEAR BCD BUFFER BCD SIGN .- ACC SIGN CLEAR FLAGS COUNT= 32

DIVIDE 8 BCD DIGIT YES MANTISSA BY 2

ROTATE ACC ACCrACC*IO RIGHT I BIT DECR DEXP

STORE RESULT IN BCD EXPN

ACCfACC/I0 INCR DEXP ADD 0.5 TO BCD MANTISSA WITH DAA

YES

DECR COUNT

ACCfACC+0.0000005

ACC.-ACC/I0 INCR DE XP

188 BYTE November 1977

www.americanradiohistory.com computer SWTPC Business Programs SUPPLIES inc:' 1 depot Math Package. 5 byte mantissa, byte exponent 11'% digit accuracy. Fortran-type formatting (Integer. 3515 W. 70th Street Floating Point and Free Formatting on both read and write) $25.00 G? . Minneapolis MN 55435 612- 927 -5601 Letter Writing Editor. No mile numbers needed. Subset " of Honeywell's 1648 Time Sharing Editor. $25.00 Payroll. Phone for details. Upper Midwest Accounts Receivable. Phone for details. Headquarters Stock Club Marketing Evaluation. This is the same - FLOPPY DISKS, MINI OR for program used by Custom Computer Services to provide STANDARD MEMOREX OR 3M accounting for clubs belonging to the National 3M DATA CARTRIDGES Association of Investment Clubs. OC300A, DCIOOA PROCESSOR TECHNOLOGY, IMSAI, 3M DIGITAL CASSETTES Disk Based SWTPC Business Systems. Phone for details. POLYMORPHIC SYSTEMS, DIGITAL 3M OR MEMOREX AUDIO GROUP, Dealer for SW TPC,Smoke Signal Broadcasting. Percom, CASSETTES, C -60 CROMEMCO, VECTOR Teletype ®, GE, TI, Centronics. Motorola, etc. 3M DISK CARTRIDGES GRAPHICS, TDL, SEALS, TARBELL, MICRO DESIGNS, NORTH STAR, To Order: Include 3% postage. Illinois residents add WE OFFER: 5% sales tax. COMPETITIVE PRICING NATIONAL SEMI -CONDUCTOR, IMMEDIATE DELIVERIES FAIRCHILD SEMI -CONDUCTOR, (Any Ouanlily) MOSTEK, E & L INSTRUMENTS, AAA Chicago Computer Center UNCONDITIONAL GUARANTEE 3007h W. Waveland Avenue SAMS, TAB, HAYDEN, WILEY, BETA BUSINESS SYSTEMS Chicago, IL 60618 8369 VICKERS ST.. CG (312) 539 -5833 (3 PM -6 PM) SAN DIEGO, CA 91111 (7ía) 565 -0505 Catalog Free 01 Cao /

Circle 1 on inquiry card. Circle 11 on inquiry card. Circle 28 on inquiry card.

If you can program a mini and own one, you may have COMPUTER MART almost everything to start your own software house. SIX PORT I/O CONTROLLER Find out how, from this 200-page, detailed manual by Program Control of Ports who it OF an EDP professional successfully did S100 Buss Compatible Parallel I/O NEW HAMPSHIRE Single Printed Circuit Board $149.00

TO nAIT Movi VIDEO SYSTEM DEALERS FOR OWN yOUa 30 x 64 Display - 1920 Char. TDL ICOM IMSAI 128 Character Buffer 5Y5ThM5 1 µsec Read /Write Time DIGITAL GROUP H°JSE Extensive Software Provided Programmable Display Attribute KIM -1 Characters M M ^ SOFTWARE INCLUDES: '"" $349.00 APPLE II Available in Kits or Assembled 8K BASIC EXT. BASIC BankAmericard and Master Charge TEXT EDITOR DISK BASIC Accepted WORD PROCESSOR Dealer or Club Discounts Available MACRO- ASSEMBLER Send 52a 95 to 170 MAIN STREET NASHUA ESSEX PUBLISHING CO IOR 285 Bloom' elf AVE' Box 28823 Dallas, Texas 75228 (603) 883 -2386 Caldwell. J J7D06

Circle 33 on inquiry card. Circle 57 on inquiry card. Circle 76 on inquiry card. CHEAP TALK modems 103 Type Full Duplex 0-300 Baud RS 232 Interface, Manual or Lease Line Á"NOWSNG 7/lE Tif'Icits o-FT/ETTADE 4 1/2 x 5 PCB Construction ClM1 SfiVE You liMF !/Ub Njo,vEY One Year Warranty TTY DFYELOPSAIG $0.5rNESS SYSTEM-S. $115.00 or E_ $395. PHÓñE X'rciEs EE-i-oKG KSR - 33 F VEAAS l A/4-Er A VATLRBLE % roo- f}gSr7LUrE/ Send Check or C.O.D. w/O COVER, USED Shipping, Handling and Sales Tax Included FrUpKi{IJTEEb í7K YOJR MouFY'efick SEND CERTIFIED CHECK Phone 1 SEA/Dse95 rLOS$/so Pd5TA6b Mot> $395 +$10 SHIPPING TO: 1330 East State St. 1097-4313 60¡4116b.EDPFIaXfSSIONt4LS Rockford, Illinois 61108 QSS 888 SPINNING RD. 2596 DE ooRS -Fi uW AT1a*,EA 30318 Phone (815) 962 -8927 DAYTON, OHIO 45431 / Circle 52 on inquiry card. Circle 115 on inquiry card.

BYTE November 1977 189 www.americanradiohistory.com The notes supplied by Peter Skye in May 1977 BYTE (page 68) created a flurry of correspondence activity from numerous sources. One of the best proposals we've seen is that provided by Glen A Taylor in his letter titled "Language Development: A Proposal." The main theme of his ideas is pro- [squaw posal of what might be called a personal computers language development society. For our part, to help foster such efforts, we will provide a "Langu- ages Forum" platform for individuals wishing to participate in print with Forum ideas on personal computing languages. This forum is open to all who have technical contributions or suggestions to make in the field of language design for personal computing systems. A fundamental ground rule is that persons submitting letters should supply a complete address and be willing to correspond with other readers. Tele- phone numbers will be printed if authors of letters to this forum supply them and indicate a willingness to get together via that medium.

Language Development: A Proposal

Glen A Taylor their favorite programming language. I'm The Wisconsin Research and Development not denying the propriety or utility of Center for Cognitive Learning efforts to implement APL or PL /I or even University of Wisconsin good structured programming languages 1025 W Johnson St such as PASCAL. There is room for several Madison WI 53706 languages in home computing, but I cannot see any of these "large computer" languages as the best choice for a standard home com- After reading Peter Skye's note in May puting language. None of these languages is 1977 BYTE and exchanging correspondence without flaws. More importantly, none was with him on the subject of a high level lang- written with the needs and limitations of

uage for personal computing, I am moved to home systems and hobbyist programmers offer the following comments and sugges- in mind. We must not allow our preferences

tion. I have two fears. My first is that BASIC and prejudices to influence our thinking may become for home computing what about what is appropriate and necessary for FORTRAN is for large computers, an ana- this new computing field. chronism which is the defacto programming My suggestion is that a group be formed language. My quarrel with both these lang- for the purpose of defining a suitable per-

uages derives from the following. They are sonal computing language. I see this as a vast improvements over the tedium of pro- unique opportunity and high moral respon- gramming in assembly language. They are sibility. We are actively engaged in deve- sufficiently powerful to allow most pro- loping a technology that promises to touch blems to be solved. They are almost univer- the lives of millions of people who are as sally available. Herein lies their insidious yet naive to computing. What finer ambition threat. For all these apparent benefits, the than to develop a language that is human programmer still pays an invisibly high cost oriented, powerful, flexible, and that is in their lack of well- structured syntax. Pro- well- suited to the capabilities of home sys- grams cannot be given good clear logical tems for the forseeable future. We are fortu- structure as an automatic consequence of nate that there are years of research into the language; only rudimentary mnemonic programming languages and a vast store of naming and labelling are permitted; and large programming concepts at our disposal. We amounts of fairly tedious detail must still be need not fashion a language of dated lang- attended to in coding reasonably complex uage concepts and practices. We absorb programs. Of course, I'm simply restating state of the art hardware technology as the often heard arguments for structured soon as it is marketed. We should lead programming, but it is a concept gaining the computing field in readily utilizing rapid widespread acceptance in mainstream state of the art software technology.

computing. Therefore, I challenge readers of BYTE My second fear is that people who feel to take the lead and place their support

as I do, that BASIC is simply not good behind such an effort. Here too there are enough to be enshrined for the next 25 valuable lessons to be learned from the years, will endeavor to supplant it with successes and failures of similar ventures

190 BYTE November 1977 www.americanradiohistory.com in the mainstream computing field. The ledge of modern language design must be development of such a language must not enlisted.

be delayed until there is little chance of I hope you will consider this suggestion.

displacing a firmly entrenched BASIC. I hope the readers of BYTE will provide The effort must enlist the support and vocal support for this idea, thereby en- assistance of several of the major manu- couraging you to support such a project and facturers who are committed to offering demonstrating its ultimate economic feasi- the language as part of their major software bility to those who would have to support

line and providing continuing support for it. its cost. I am almost certain that you will Finally, the services of a group of people find the persons with the necessary technical who have experience with present home qualifications to serve on the language de-

systems, a clear vision of where the field signing group among your readership. I is most likely to go, and an expert know- challenge these persons to step forward.

Comments on Peter Skye's Language Proposal

Peter Skye's proposal to develop a higher it is simple and oriented specifically towards Jeffrey L Kenton level language for microcomputer use is a producing business reports. (The business Consultant fine idea, but it seems to be going astray. If world would be far more interested in RPG One Bacon St Wellesley MA 02182 the project goes forward as described in the running on a micro than anything else I May 1977 Technical Forum it will be an can think of!) expanded PL /I with added features from The proposed PL /Skye will make no APL and SNOBOL and an apparently huge one happy. The comment that nothing character set. It appears it was planned to a particular language can do can't be done be all things to all people (a replacement in PL /I misses the point. BASIC is simple

for all general purpose languages), and I and interactive; APL is powerful and elegant; think it will fail for that reason. PL /I is a poor substitute for either. PL/I Programming languages have been is fine in large EDP shops which want to developed to meet particular needs, and convert all their FORTRAN and COBOL they can best be judged on the power and programmers to a single, powerful language. appropriateness of their constructs for It doesn't need APL as a subset. Further- dealing with the intended class of problems. more, it might pay to remember early SNOBOL, TRAC and LISP do arithmetic experience with PL /I. The first compilers poorly but are quite powerful when dealing produced atrocious object code, and some with strings and natural languages (English, of the features never did work. It took for example). RPG, despite its somewhat compiler writers quite a while before they primitive nature, is widely used because learned to produce accurate, optimized

400 North Washington Street, Suite 200 INTERNATIONAL DATA SYSTEMS, INC. Falls Church, Virginia 22046 USA Telephone (703) 536 -7373

S100 Bus Cards (ALTAIR /IMSAI Compatible) USES KIT PRICE

88 -SPM Clock Module Your computer keeps time of day regardless of what program it is executing. $96.00 Applications include event logging, data entry, ham radio, etc. Provision for battery backup is included.

88 -UFC Frequency Counter Module Measure frequencies up to 600 MHz or period with 1/10 microsecond resolu- $179.00 tion. Computer can monitor four separate inputs under software control.

88 -MODEM Originate /Answer MODEM Use your computer to call other computer systems such as large timesharing $245.00 systems. Also allows other computer terminals to "dial -up" your computer. Auto -dialer is included so your computer can call other computers under soft- ware control. Operates at 110, 134.5, 150, 300, and 600 band. GENERAL PURPOSE PERIPHERALS

MCTK Morse Code Trainer /Keyer Hard /Software package which allows your computer to teach Morse Code, keyyour $29.00 transmitter, and send prestored messages. Uses NEW CODE METHOD" for training.

TSM Temperature Sensing Module Use it to measure inside and /or outside temperature for computerized climate $24.00 control systems, etc.

DAC8 Eight Bit Digital to Requires one eight bit TTL level latched parallel output port. Use it to produce $19.00 Analog Converter computer music or to drive voltage controlled devices. Terms Payment with order. Shipment prepaid. Delivery is stock to 30 days. Write or call for detailed product brochures.

Circle 75 on inquiry card. BYTE November 1977 191 www.americanradiohistory.com code; it will be far worse on a microcom- The first question to ask when beginning

puter. Nor is writing the PL /Skye compiler a large project is, "What am I trying to do, in PL /Skye a practical idea. Intel has written and what is it going to be good for ? ". If an 8080 resident PL /M compiler in you haven't answered this question you PL /M which requires well over 100 K can never tell when your program is finished, bytes of code to run (and a disk operating nor whether it works. I'm afraid that's the system which supports overlays). An case with PL /Skye, and we may shortly see a equivalent assembly language version fits programmer jump on his horse and go riding in 12 K. madly off in all directions.

Notes on Floating Point and Critique of PL /Skye

Stephen R Alpert I would like to add a few comments on c. In all my years of computing

Assoc Prof of CS, WPI the articles that appear in May 77 BYTE. (14) I have never had a need for numbers Vice Chairman, SIGMINI (ACM) greater than 1038 except for the legen- 11 Ridgewood Dr 1. In Sheldon Linker's article "What's dary $24 Manhattan Purchase at 6% for Auburn MA 01501 in a Floating Point Package ? ", page 62, there 300+ years. I would suggest the following are a few items that should be mentioned. compromise. a. Usually one tries to keep all floating point information normalized. 32 bits = 4 bytes -.1 Let's consider an example: let the expon- EXP Si MANTISSA ent be base 10 and assume we have four 8 bit t 23 bit mantissa decimal digits of storage. Then exponent algebraic sign 0.0025x105 = 0.2500x103 = 250 The exponent is a two's complement

Clearly I have a choice of storage. But (excess 200) binary exponent. The dy-

what about 2576? Then I can only use namic range is 1076. The sign bit is stored 0.2576x104. Chances are if my operands in place of the normalized most signifi- aren't normalized then the result may not cant bit of the mantissa. Simple shifts or be also. tests will determine the sign (and hence b. In conjunction with normalized insertion of the MSB is easy). data, a hexadecimal base will yield a lar-

ger range than a binary base, but it will 2. Is Peter Skye serious? I just finished not carry the significance of a binary an 8 month project (on the side) writing a base. Hexadecimal base means that a compiler for a pseudo -subset of PASCAL. It

a leading hexadecimal digit of 1 will was a real job. He will require the user to waste three binary bits! have 32 K bytes just to load the compiler.

Introducing -New, Low -cost, Fixed Vocabulary

JT' r., Speech Synthesizerst '1i4.i'ï.l t 1,2..t,Ìi'. for Computer Hobbyists or OEM use FEATURES Two 64 -word vocabularies available: -Full spoken numerics plus a variety of measurement words -ASCII characters: numerics, alphabet, punctuation Clear, highly intelligible male voice All MOS -LSI circuitry 6 -bit parallel strobed input No external clocks required $17900 Inputs are TTL compatible Boards with numbers & Analog Speech output signal calculator functions.. . Custom vocabularies can be produced only $95.00

IIIIIIIIIIIII(IIIIIIIIIII IIIIIIIIIIIIIII IIIIIIIIIIIIIII I "Plus state sales taxes where applicable 1, N na.. 1 G p c 3 4 T TELESENSORY SYSTEMS, INC. 5 3408 Hillview Ave., P.O. Box 10099, Palo Alto, CA 94304 t Invented by Forrest Mozer 1 Telephone (415) 493 -2626, Attention: Paul Obester

192 BYTE November 1977 Circle 149 on inquiry card.

www.americanradiohistory.com EXPLORE INTERFACE AGE MAGAZINE

* MONTH AFTER MONTH LOOK TO INTERFACE AGE MAGAZINE FOR THE LATEST INFORMATION ON THE DYNAMIC WORLD OF PERSONAL COMPUTING. Use your personal computer for auto repair, work bench controller, teaching machine, central infor- mation bank and design test center. * READ INTERFACE AGE FOR THE LATEST ON NEW Control your small business with your own real - PRODUCT INFORMATION AND TECHNICAL time accounting and inventory control system. BREAKTHROUGHS. Set your computer to turn sprinklers on and off, May's issue included inside the FLOPPY ROMTM manage a household security system, feed your -a vinyl record which is played on a conventional dog. phonograph to enter this month's program in your Establish a recipe bank to plan daily meals and computer. generate its own shopping list. Evaluate the stock market, set up r gambling and probability programs. *ORDER YOUR SUBSCRIPTION NOW! Evaluate odds on sporting events and 12 Monthly Issues: $14 U.S., $16 CanadalMexico, $24 International horse racing. Name Address City State Zip * ARTICLES RANGE FROM THE Check or M.O. (U.S. Funds drawn on U.S. Bank) Visa Card Master Charge FUNDAMENTALS OF COMPUTERS TO I Acct No. Exp. Date LANGUAGES AND SYSTEM DESIGN. APPLICATIONS INCLUDE BOTH PRO- Signature NON FESSIONAL AND -TECHNICAL. Make checks payable to: INTERFACE AGE MAGAZINE, P.O. Box 1234, Cerritos, CA 90701 Circle 74 on inquiry card. L www.americanradiohistory.com 3. A suggestion: following the ex- checking program (a compiler minus code ample of the Communications of the ACM, generation) would also be most useful from unless programs are for specific hardware a publication's point of view to verify and tasks, they should be written in a single correct superficial details of programs. But "standard" language. My current choice such a standardization also requires authors would be PASCAL for the following rea- and designers literate in the language as well. sons: Would anyone care to make further com- a. It has a very strong (precise) ments on this subject of adopting a repre- standard. Anyone can purchase a user's sentation standard for programs in print ? manual and report from Springer -Verlay for about $6. b. There is a strong user's group that is international in scope. What's Wrong with PASCAL, c. The language permits definition of user defined data types. One could add Mr Skye? bytes, bits, etc. Pointers are standard con- David A Mundie structs in PASCAL. 1048 Oakhurst Cir d. If a standard were expounded, Charlottesville VA 22903 I'm sure that in short order actual com- pilers would soon appear. e. A top down (or recursive de- I am writing in response to the ongoing scent) compiler for PASCAL is made dialogue in your pages over the choice of a easier if the output is, in fact, an as- high level language for microcomputers. sembly language source. This output can Mr Crone's analogy with English (May then be fed to your favorite assembler. 1977 BYTE, page 112) is misguided. Eng- Additionally, by using PASCAL type lish, though archaic, is both beautiful and switches one could imbed assembler code well- suited to its purpose; FORTRAN is directly into the higher level code. neither. His letter conjures up visions of our f. PASCAL programs would then grandchildren using dream computers, yet be highly portable, enhancing the stan- still struggling with format statements and dard even more. amorphous programs simply because we Lest you think PASCAL is my only lang- lacked the courage to junk our outdated languages as readily as we junk our outdated uage, I have also used and taught most of FORTRAN, ALGOL, APL, LISP, FOCAL, machines. They will curse us for it. BASIC, BLISS and SNOBOL (and a little I do not design computers, so perhaps PL /1). I am missing something, but Mr Skye's com- ment on PASCAL (May 1977 BYTE, page I hope this letter stirs the pot a bit. 68) puzzled me. The point is not that The only problem with making a highly PASCAL does nothing other languages can't desirable standard representation for pub- do; the point is rather that PASCAL does lished programs is the problem of actually virtually everything the other languages do, achieving the representations in that form. but starts from a much simpler set of basic

Documentation of an adequate "representa- constructs. I should have thought that sort tion language" is a necessary first step to a of efficiency was just what was needed for highly desirable end. A syntax and semantic m icroprocessors.

Questioning APL

Anthony in the Technical Forum. I became Rich Snodgrass weary with superlatives such as "one of the 229 Llano Dr greatest intellectual achievements of this Portland TX 78374 century," "the teacher of the century," and "computer languages scarcely bear close

comparison with APL." I hear similar com-

I greatly enjoyed the August 1977 issue parisons every year when Detroit comes out of BYTE on APL. The articles were well - with a new model. done and contained much useful informa- Such statements are subjective by nature tion. and hence a total matter of opinion. How- I do wish, however, to take issue with ever Mr Anthony's statement that APL is some of the views expressed by E H the most "general- purpose mental tool"

194 BYTE November 1977 www.americanradiohistory.com in comparison with other computer lang- uages is just too sweeping to let pass without comment. Generality is an important criterion in Introducing judging programming languages and, to a limited extent, APL is blessed in this regard. However, when all the features of APL are examined, it is rather specific. For example, only homogeneous multi- Bit Pad. dimensional arrays, programming of num- bers, and single characters are allowed as data structures; COBOL's heterogeneous arrays and the list structures available in The new, LISP and SNOBOL are completely lacking. low -cost digitizer for Formatted IO and external data files are not specified in the language definition, features small computer systems. found even in lowly FORTRAN. Structured is programming is very difficult in APL, and Bit Pad the newest product from Summagraphics, the leading even the most basic control structures are producer of professional digitizers. I t has a small 11 -inch active area and missing [except, of course, for the computed a small $555 price tag. But the list of applications is as big as your imagination. (GOTO)] . Ironically, that "regrettable language" Better than a joystick or keyboard for entering graphic information, mentioned in the article, PL /I, has all the it converts any point on a page, any vector, any distance into its digital features listed above. PL /I also excels in equivalents. It's also a menu for data entry. You assign a value, or an readability and run time efficiency, espe- instruction to any location on the pad. At the touch of a stylus, its cially in comparison with APL. Now PL /I entered into your system. is not even close to the "perfect computer Who can use it? Anyone from the educator and the engineer to the language," although it does have more hobbyist and the computer games enthusiast. I t comes compatible with generality than many other languages, in- an S -100 bus, but you can add a power supply, stand -alone display, cluding APL. cross -hair cursor and many other options. It will now hopefully be evident that no $1,000.00 creativity prize. You can also add $1.000.00 to your a computer language is best at everything, bank account as reward for your inventiveness. Just write an article even APL. The incredible variety of tasks on an original Bit Pad application and submit it to any national that the computer is now given makes it small- computer periodical. I f the editors publish it - and the decision impossible for one language to be proficient is solely theirs - Summagraphics will pay you $1,000.00. Contact at them all. System programmers should Summagraphics for rules concerning this offer. keep an open mind when deciding which languages to implement: LISP, SNOBOL and ALGOL, as well as several other impor- tant languages, can be implemented on microcomputers with reasonable memory requirements. All it takes is someone to do it. Suggestions for APL Optimization ;fr,Mrt',iii püí i f.Ìti!illlil Jon D Roland Micro Mart 1015 Navarro San Antonio TX 78205

There seem to me to be three important difficulties with APL that are unnecessary, and that might be corrected in the develop- ment of APL for microcomputer systems. The attractiveness of APL arises not only .. 1... 1. from the efficient coding and powerful ..1..I '....1- ':._ primitives it provides, but from the ways it ..,.. .. corporation facilitates interactive programming, so that 35 Brentwood Ave.. Box 781, Fairfield, CT 06430 the computer user can write programs Phone 203/384 -1344. TELEX 96 -4348

Circle 138 on inquiry card. BYTE November 1977 195

www.americanradiohistory.com Circle 155 on inquiry card

on the terminal with a minimum of prepara- 16K Static RAM tion on paper. IMSAI/Altair/Poly 88/Sol 20 Interaction

The first difficulty arises from the fact that APL is entered from left to right, but executes from right to left. I, like many

users, do not always know when I begin

a line of program how I am going to finish it,

which means that if I am at the terminal, I must either make frequent corrections to

what I have already entered, or prepare the

statement on paper before I key it into the

s3650Ó KIT terminal. I see no fundamental reason why APL could not be reversed, or a reverse APL '450 Assembled made an option for the convenience of pro- Very low power -650 ma +5V; 90 ma +1 2V; 16 ma -5V Uses 4K Static RAMS -No refresh grammers who think in RPN. There would Low -profile sockets for all chips be no need to change the character set; just Each 4K addressable to any 4K boundary Solder mask; silk- screen; plated- through holes make execution from left to right. Low -power Schottky TTL's- Tested IC's Fully buffered S -100 bus -Gold- plated contacts Character Displays Designed for 500ns system -S.D. Sales and TDL Z -80 tested

Delivery: Stock to 4 weeks. MC and BA accepted. Orders The APL character set is not ideal for use shipped prepaid. California residents add 6% sales tax. with 5 by 7 dot matrix printers or video displays. Some overstruck combinations are ANDENBERG DATA PRODUCTS not readily distinguishable. Could we not choose characters that are optimal for PO BOX 2507 legibility and aesthetic appeal, even when SANTA-MARIA, CALIFORNIA 93454 805- 937 -7951 overstruck?

Keyboard Layout

The arrangement of APL characters on CONTROL the WORLD the keyboard is not convenient for rapid, error -avoiding typing. Why could not the APL characters be arranged in some pattern ,, 1 I OUTSIDE YOUR ..,...i_ii. that is optimal for the user who wants to touch -type his input, as the Dvorak key- .d _I pi COMPUTER... board is for ASCII characters (except the The OPTO-ISOLATOR/RELAY BOARD (5117) is special command keys). .1 I .I I 1 a natural for controlling audio systems, model trains, robot devices ... more uses are dis- If APL, in some form, is destined to covered daily, as described in our applications become a kind of universal high level com- 1.1 I I 1 notes. 8 reed relays respond to an 8 bit word from your computer; 8 opto- isolators accept puter language, then let us avoid features Q; an 8 bit word from the outside world and send that are unnecessarily cumbersome for inter- á it back to your machine for handshaking or fur - ther control purposes. active usage, and resolve now to develop a language that is optimal in practical terminal All kits are S -100 buss Altair /IMSAI compatible. Available by mail (shipped postpaid in the USA from stock) or at many fine computer interaction. Let's not make a mistake like stores. California mail orders add tax. the QWERTY keyboard!

...ORTHEWORLD i_____ Some Comments on CAV "An APL Bigot Speaks" i INSIDE IT ! Whether for troubleshooting or analysis, Henry Brandt at some point you will need our EX- TENDER BOARD WI LOGIC PROBE ($35). = Ithaca NY 14850 Ours offers a built -in logic probe (hi, lo, and pulse), special edge connector that In reference to the letter from Gary allows clip lead probing, jumper links in 1;1! " all supply lines, a non -skid needlepoint l i l Luther in the August 1977 BYTE, page 12 probe ... plus quality parts and a realistic - price. ( "An APL Bigot Speaks "), I would like to offer a few points of clarification. MULLEN COMPUTER First, the European APL implementation BOARDS that he speaks of is described in the IBM BOX 6214, HAYWARD, CA 94545

196 BYTE November 1977 Circle 101 on inquiry card.

www.americanradiohistory.com Systems Journal, volume 16, number 1, Circle 62 on inquiry card. and is entitled "An APL Interpreter and System for a Small Computer." The HAMBRECHT & QUIST authors of this paper took a full APLSV INVESTMENT BANKERS interpreter and broke it up into 289 128 PROVIDING INVESTMENT BANKING, word modules which are paged into main BROKERAGE AND RESEARCH COVERAGE memory of a System /7. This technique should still prove popular among hobbyists OF EMERGING for whom processor costs are overshadowed TECHNOLOGICAL COMPANIES by the cost of large amounts of main memory. WALL STREET is beginning to recognize Second, the IBM 5100 doesn't really put the coming boom in personal computers. the full APL language in 16 K, as Mr Luther Our Research Department believes that indicated. The 16 K to which he refers is the PERTEC COMPUTER CORPORATION, user workspace, which is available in 16 K a leading micro computer supplier (MITS increments up to a maximum of 64 K. The ALTAIR, iCOM) has an exceptionally APL interpreter is resident in 108 K bytes bright future. of read only storage. I suspect a commer- cially available ROM offering of this nature Call or send for our Research Report is still a number of years away. on PERTEC Lastly, unless we see dramatic changes in the cost of memory, we are most likely doomed to implementing a subset of APL I1.1JII3I:1?CIIT C (ICIti'l'

1IU\TUU\Il:111 SIR! I I in either ROM or a complete version of it in S1\IN1\tItII, M11010.1,11, an overlay fashion for those who possess Please send me your Research Report on PERTEC: secondary storage devices such as floppy disks. Name Company Address City State Zip hogpamcniag Quickies Phone

A 6800 Program Relocator

Andrew A Carpenter POB 841 now open Gordonsville VA 22942

Here is a short program relocator that New Jersey's most complete store with may be of interest and use to readers of microprocessor and NOVA* compatible BYTE. The program to be relocated must presently reside in memory. Hexadecimal minicomputer systems and peripherals, addresses AOO2 and A003 are set to the classroom courses, demonstrations, address of the program. Addresses AOO4 software packages, and expert services. thru AOO7 are set to the beginning and ending addresses of the new location for For hobbyists, computer professionals, the program. This program was written for and business users. Look for more a SwTPC 6800 system. details in the December issue of Byte magazine. LOCNB1B2B3 > 1000 > 'NOVA Is a registered trademark of Data General Corp. 1000 FE AO 02 > LDX A002 1003 A6 00 > LDA A00, X 1005 08 > INX 1006 FF AO 02 > STX A002 1009 FE AO 04 > LDX A004 petxonid 100C A7 00 > STA A00, X 100E BC AO 06 > CPX A006 1011 27 00 > BEQ 1019 1013 08 > INX cömputer 1014 FF AO 04 > STX A004 1017 20 E7 > BRA 1000 1019 3F SWI store 1012 06 > 101A 806 Route 17, Ramsey, N.J. 07446. *"* UNRESOLVED ITEMS:

*** SYMBOLS,SORT? Circle 49 on inquiry card.

BYTE November 1977 197 www.americanradiohistory.com Technical Relocatable Object Code

suggestions. The second item is a format Formats used by Technical Design Labs, originated Fwúu Neil Colvin. This was given to us by text at the TDL booth at the National Computer Conference in Dallas last June, and offered In the July 1977 issue we published a as documentation of a standard which is document handed out into the public do- in use by that firm, and is reportedly being main by Peter Formaniak and David Leitch examined for adoption by two other major of Mostek. (See "A Proposed Microprocessor software vendors in the personal computing Software Standard," page 34, July 1977 marketplace. The third item is a letter from BYTE.) Our purpose for publishing the Tom Pittman critiquing the TDL standard, document was to get some interchange an item which resulted from a recent phone started on the issue of relocatable object conversation. code formats. As an addition to the discussion, the note In this continuation of the discussion of following Tom's critique was received from the subject of relocatable formats, we have Philip Tubb, and has a bearing on the pro- three items. One is a letter reacting to the cess of compiling and making available published information and making some standards documentation for this field.

A Response to "A Proposed Microprocessor Software Standard"

Carol Anne Ogdin The proposal put forth by Formaniak and an imposition of a length limit of (say) 64 100 Pommander Walk Leitch is certainly a step in the right direc- bytes would not be unreasonable. Alexandria VA 22314 tion, but it also sets unreasonable limits on In record types 02 and 03, I propose (703) 549 -0646 the lengths of symbols permitted. By im- the following modification of their con- posing a limit of six bytes on symbol length, ventions: the authors propose to throw back pro- gramming techniques to the 1960s. A Byte Number Description simple analysis of their standard shows a 1 Dollar sign ($) delimiter clear and obvious format that permits sym- bols of virtually unlimited length, although 2, 3 Length of the symbol (or zero,

ALPHA Z- 80 $ 495 ASSEMBLED 12 SLOT MOTHER BOARD 12 CONNECTORS (S -100 BUS) 17 AMP POWER SUPPLY HEAVY DUTY CABINET WITH FAN Z -80 CPU BOARD: All Sockets Included, Gold Con- tact Fingers, High Quality Glass Epoxy PC Board, Double- Sided, Plated Through Holes, Requires Only + 8 VDC / 800 MA.

NOTE: 22 SLOTS /30 AMP POWER SUPPLY - $595.

ADS also sells IMSAI and NORTH STAR Assembled at Kit Prices + LEAR SIEGLER ADM 3A Assembled at $888.00. TERMS: Cash with Order. Prices include Freight. (N.C. Residents add 4% Sales Tax.) ALPHA DIGITAL SYSTEMS ADS Data Acquisition, Computation and Control

ROUTE 4 BOX 171A BOONE, NORTH CAROLINA 28607

198 BYTE November 1977 Circle 2 on inquiry card. www.americanradiohistory.com implying the symbol is terminated to impose some arbitrary restriction on by carriage return or other control mnemonic and symbolic names, so be it. code) But, to impose such arbitrary restrictions in a proposed standard assures that the stan- 4, 5 Most significant byte of the dard will not be adhered to in practice. address (definition for record type Finally, a note about proposed standards 02, address of chain for type 03) themselves. Unless and until the personal computing movement gains a coherent voice 6, 7 Least significant byte of the through a single forum, standards will re- address main nonstandard. It behooves the users to get behind the standards movement. Un- 8, 9 Record type (02 or 03) fortunately, the ANSI mechanism is too burdensome for our needs. If some enter- 10... Symbol text prising publisher (hint, hint) were to dedi- cate a half a page to listing the currently Last 2 Checksum accepted user standards and the references bytes where the final definition can be found, it might begin to serve as that needed cen- CRLF Carriage return, line feed (De- tral forum. Could such a list be published

limiter of end of record and end every couple of months or so? I should of symbol text) point out that without such a single point of reference, proposed amendments (and The advantage of this format is that it general acceptance of the original or permits (but does not require) longer sym- amended proposal) will never get pro- bols. If the particular assembler author needs perly promulgated to the necessary readers.

Technical Design Labs Neil Colvin Technical Design Labs Research Park Bldg H Relocatable Object Module Format 1101 State Rd Princeton NJ 08540 DEFINITIONS

Object Module: The output from a language available to other modules besides the one in processor. Object modules may be loaded into which it is defined. memory for execution at fixed addresses. External Symbol: A symbol which is used in a Relocatable Object Module: An object module module but is defined as an internal symbol in containing information which allows the loader some other module. to place it anywhere in memory address space. Entry Point: An internal symbol in a module Internal Symbol: A symbol whose location is which is used to select the module for loading as a

Get on the Right Track for Christmas With the Computer Engineering Poster...

. . If you like it in black and white, you (and your friends) will love the full color limited edition poster.

It's 16' by 21'/2 inches (41.9 by 54.6 cm) with a white border; the colors are the same as the original by Robert Tinney, which graced our July 1977 cover (minus BYTE logo). At $3, plus $.50 postage, it is shipped unfolded, in a mailing tube. -i l

Posters $3.00 each O Bill BankAmericard ' D Check Enclosed plus $ .50 mailing D Bill Master Charge $ No Exp. Date

Name Send to: BITS Inc Address 70 Main Street Peterborough NH 03458 City State Zip L J

Circle 12 on inquiry card. BYTE November 1977 199 www.americanradiohistory.com Circle 162 on inquiry card.

result of its being referenced in another module as an external symbol. Linkable Object Module: An object module PRAMMER containing information identifying external, internal, and entry point symbols which can be by XYBEK "linked" to other similar modules by the loader. Relocation Base: The external symbol whose address is the base for the relocation of an object An extraordinary 2k memory board module. The external symbol may represent a for your Altair- bussed computer program, data, or common area of memory. * On -board 1702A PROM programmer Object Module Format Definition * 256 bytes of RAM plus space for 1792 bytes of read - only memory (seven 1702A EPROMs) The object module is an extension * Supplied with one 1702A, pre -programmed with format stand -alone programming software - no sense of the Intel "hex file" format, but is not switches are used compatible with that format. The module * Supplied with programming power supply consists of a sequential file of ASCII char- * PRAMMER's own on -board clock makes it compatible acters representing the binary data, symbol with almost any Altair- bussed system. and control information required to con- All read and write sequences are generated via an * struct a final program from the module. All board micro -programmed state machine, thus eliminating all one -shots. binary bytes within this structure are repre- * Complete 1702A programming in 18 seconds sented as two ASCII characters corres- ponding to the hexadecimal value of the * Includes complete listings for PRAMSYS, an eleven - function development system. byte (eg: 11001001 - C9). All ASCII values are represented by the corresponding ASCII COMPLETE KIT: $209 character (eg: A A ). Assembled and tested $289 Immediate (off- the -shelf) delivery Each of the different records within the California residents please add sales tax. module is indicated by the use of a prompt COD, Master Charge, BankAmericard and Visa accepted. character as the first character of the record XYBEK P.O. Box 4925 Stanford, CA 94305 (in the Intel format, this is the ": "). The Telephone: (408) 296 -8188 valid prompt characters are:

Character Meaning 1v- v- v- v- 000v0v- 0g- g- 00000 00001 module identification record 1 entry point record 1 internal symbol record external symbol and relocation base ° ERF 0 record I A °0 ` symbol table record 0 data or program or end of file record 0 0 TO THE 0 0 0 Every record in the module is terminated 0 by a one byte binary checksum of all of the 0 preceding bytes in the record except for the o O 0 0 prompt character. The checksum is the two's 0 /4*4 complement of the sum of the preceding bytes. Either output format (two character IF IT MOVES DIGITIZE IT! 1 -uUUV° 1 binary or one character ASCII) still counts 1 SHAFT ENCODERS 0 as only one byte in the checksum (ie: before 1 FOR DIRECT MECHANICAL TO DIGITAL 1 conversion for output). 0 CONVERSION ONLY $49.95 0 0 1 In addition, each record is preceded by a A/D CONVERTER 0 carriage return and line feed sequence to 1 LETS YOUR COMPUTER USE ANALOG VOLTAGES 1 facilitate listing the module on an external 1 COUNTERS 0 1 device. 0 MANY TYPES -- MP. COMPATABLE 0 Module Identification Record ( "! ") 0 SOCKET BOARDS 1 0 COMPLETE WITH WIRE WRAP SOCKETS 1 Byte 0 BUSSES AND BYPASSING. LOW AS $1.00 PER LOC 1 0 1 Number Description 1 0 1 FREE INFORMATIVE APPLICATIONS 0 1-2 CR/LF o BULLETIN AND CATALOG 1 0 3 Exclamation point CO prompt. 1 0 P.O. BOX A109 1 nical 0 4-9 ASCII module name. (See comments TEC BOERNE TEXAS 78006 1 on length in letter by C A Ogdin.l ó enter 1 0 RIZE 0 10 -11 Checksum. 1 0 O 000000g- g- v- 000000g- O

200 BYTE November 1977 Circle 147 on inquiry card. www.americanradiohistory.com Circle 77 on inquiry card.

Entry Point Record ( " @ ")

Byte Number Description

1 -2 CR /LF

3 At sign ( @) prompt.

4 -5 Number of entry points in this record. IMS 6 -?? ASCII names of entry points, six bytes $57500 per name. The names are left justified and blank filled. 8k STATIC RAM KIT 77 Checksum. Complete, including ó0 250 ns; sockets for all IC's.

Internal Symbol Record ( "#')

Byte Number Description CHIPS

1 -2 CR /LF 2708 EPROM 3 Pound sign ( #) prompt. 650ns $14.00 4 -5 Number of internal symbols in this 450ns $18.00 record. Z -80 CPU $25.00 6 -11 ASCII name of internal symbol, left justified and blank filled. Z -80 A $35.00

12 -13 Relocation base for symbol. The value (607) 273-3271 of this symbol is relative to the reloca- tion base specified. PO BOX 91 ITHACA, N.Y. 14850

14 -17 Symbol value (16 bit). The above three fields are repeated for from dilithio each internal symbol in the record. (Ter Hobbyist

77 Checksum. CD cr) External Symbol and Relocation Base Record HOME COMPUTERS: 210 QUESTIONS 8. ANSWERS f by Rich Didday T Byte Volume 1: Hardware 57.95 O Number Description Volume 2: Software 56.95 NCD 1 -2 CR /LF STEP BY STEP INTRODUCTIONS TO 8080 3 ei Backslash ( \1 prompt. MICROPROCESSOR SYSTEMS. 'at by James Melsa & David Cohn 57.95 4 -5 Number of external or relocation sym- bols in this record. CD HOME COMPUTERS: A BEGINNER'S GLOSSARY 6 -11 ASCII name of the symbol, left justi- AND GUIDE fied and blank filled. by Merl Miller & Charles Sippl 56.95 C D 12 -13 Relocation number assigned to this Cf symbol in this module. This number is 8080 MICROPROCESSOR EXPERIMENTS O unique for each symbol. It starts with one and increases sequentially for each by Howard Boyet S9.95 subsequent external or relocation base symbol. BEGINNING BASIC by Paul Chirlian 56.95 14 -17 Relocation segment size or external O reference flag. If this value is zero, it represents a reference to a symbol E dilithium Press books are available defined externally to this module from your local computer store. (usually a subroutine or global data item). If it is nonzero, then the value is the size of the relocation segment as

Circle 47 on inquiry card. BYTE November 1977 201 www.americanradiohistory.com Circle 163 on inquiry card.

EXPANDOR'S BLACK BOX PRINTER defined in this object module. This segment can contain either code or data, and may be located anywhere in $396. memory by the loader, independent of any other segment.

Cover Et Base The above three fields are repeated for Optional each symbol contained in this record. $29.95 77 Checksum.

Symbol Table Record ( " & ") Shipped ready to connect to most any microprocessor Byte NEW Used) a Kit) 90 DAY GUARANTEE (Not COMPLETE (Not Number Description CHECK THESE OUTSTANDING FEATURES

1 -2 CR /LF RELIABLE LOW COST

3 Ampersand ( &) prompt. Parallel Interface Included Small, portable (4.5" x 13" x 10 ") Lightweight (11% Ibs.) Complete documentation 4 -?? The remainder of tnis record is identi- Prints BO columns wide Prints 10 characters per second cal to the internal symbol record. All 64 Character print set (ASCII) Tractor Er pressure feed included symbols defined in this module are Easily maintained by user Uses standard 8W' paper contained in these records.

Parts to you - or return for service Regular typewriterlteletype ribbon

Data /Program Record ( " ") EVERYTHING SUPPLIED - JUST CONNECT TO YOUR PARALLEL PORT HUNDREDS IN USE Byte Master Charge -VISA - Check - Money Order EXPANDOR, INC. Number Description 612 Beatty Road, Box BY, Monroeville, Pa. 15146 1 -2 CR /LF (412) 373 -0300 (Dealer Inquiries Invited) 3 Semicolon (;) prompt

4 -5 Number of binary data bytes in this record. The maximum is 32 binary bytes (64 bytes of ASCII represen- tation). If this value is zero, this record is a end of file record, described below.

Perhaps you've used software we've 6 -9 Load address of the data relative to the helped produce. Many people have. You specified relocation base. may not even have seen our name when we've helped produce them, but we were 10 -11 Relocation base for all relocation in there. this record. All relocatable values in this record are added to the current Maybe you've heard our Music System. value of the specified relocation base How often have you been delighted with before being put into memory. a software product? Many people are 12 -13 Relocation control byte. This byte with our Music System. controls the relocation of the next eight bytes in the record (if that many We're working on a variety of new remain according to the count field). and interesting projects which will The bits are used from left to right. enable you to use your computer The bits have the following meanings: for some of the things you know it can do for you -with the right 0: a single absolute byte implies software. We'll let you know about load unmodified. 10: a two byte relocatable value, our products as they're ready. We least significant first im- know you'll like them. byte plies add the 16 bit value to the Look for us -we'll be there. current relocation base, and load the result least significant byte first. 110: a three byte reference to a dif- SoftwareTechn ology ferent relocation base. The first byte is the relocation base num- ber, and the two after that are the 16 bit value, least significant P.O. Box 5260 San Mateo, CA 94402 byte first. This implies add the specified relocation base to the 16 bit value, and load the result least significant byte first.

202 BYTE November 1977 Circle 132 on inquiry card. www.americanradiohistory.com Circle 24 on inquiry card.

COMPUTALKER Note that a two or three byte combin- ation is never broken across a record boundary. 14 -29 Data bytes controlled as above. 00 0: 30 -?? The above control and data byte com- + binations are repeated as specified by AMPLIFIER the count. CT-1 SPEECH ?? Checksum. COMPUTAIKFR .; SYNTHESIZER >,'

FeAi.°D End of File Record ( "; ") °;. `- + Byte Number Description S -100 BUS

1 -2 CRILF CSR1 SYNTHESIS -BY -RULE 3 Semicolon (;) prompt. SOFTWARE

4 -5 Zero to indicate end of file record. SPEAK "KAAMPYUTAOLKER" 6 -9 Starting address for module relative to the specified relocation base. This MODEL CT -1 SYNTHESIZER 395.00 address is optionally generated by the language processor, and may be zero. CSR1 SOFTWARE SYSTEM 35.00 DEMONSTRATION CASSETTE 2.95 10 -11 Relocation base for starting address. CALIF RESIDENTS ADD 6° ° SALES TAX

12 -13 Checksum. WRITE FOR INFORMATIVE LITERATURE COMPUTALKER CONSULTANTS Relocation Bases P.O. BOX 1951, DEPT. B, SANTA MONICA, CA 90406

One of the important capabilites of this object module format is the ability to specify multiple relocation bases for the module contents. These relocation bases 21 STARTATHOME may represent ROM versus user program- mable memory shared common areas, special memory areas such as video refresh areas, COMPUTER BUSINESSES in the shoestring, start -at -home etc. Within a module, each of these reloca- computer business handbook tion bases is assigned a name, and implicitly, CONSULTING *PROGRAMMING *SOFTWARE PACKAGES COM a sequentially generated number. The FREELANCE WRITING SEMINARS TAPE /DISC CLEANING relocation bases are actually assigned values FIELD SERVICE SYSTEMS HOUSES LEASINGSUPPLIES

PUBLISHING T I ME BROKERS* HARDWARE DISTRIBUTORS at load time, but all memory references SALES AGENCIES HEADHUNTING TEMPORARY SERVICES within the module are made relative to one USED COMPUTERS FINDER'S FEES SCRAP COMPONENTS COMPUTER PRODUCTS AND SERVICES FOR THE HOME of these bases.

Plus - - hundreds of ideas on Four of the relocation bases (0 to 3) have r.a snnEn:i,n:. q}AqT a HOMI: moonlighting, going full -time, predefined names and meanings, and are image building, revenue building, ".. treated differently at load time than the 6: bidding, contracts, marketing, professionalism, and much more. remainder of the bases. Base 0 represents No career planning tool like it absolute memory locations (ie: It always ever published. Order now and if you're not completely satisfied, has the value 0). Base 1 has the name send It back within 30 days for ".PROG." and represents the program area a full and immediate refund. (may be ROM or PROM). Most program 83 X H ringbound 113 pp. $12.00 code is generated relative to this relocation Call 312- 945 -2940 or mail coupon base. Base 2 has the name ".DATA." and represents the local data areas for each DA T A S E A R C H 730 WAUKEGAN ROAD SUITE 108 module. Most local data is defined relative to inc orpor atea DEERFIELD. ILLINOIS 60015 this base. Base 3 has the name ".BLNK." Rush copies of The Shoestring Start -At -Home and represents the global "blank common." Computer Business Handbook to me right away - NAME/COMPANY This relocation base is always assigned the ADDRESS value of the first free address in memory CITY /STATE /ZIP after the local data storage (.DATA.) and CHECK ENCLOSED OBANKAMERICARD OMASTERCHARGE other data relocation segments. Because it is

Circle 44 on inquiry card. BY T E November 1977 203 www.americanradiohistory.com always the last allocated, modules referen- loaded additively. (ie: After each module is cing this area can be loaded in any order, loaded, the value of the relocation base is regardless of the amount of the area they increased by the size of the segment.) All use. other relocation bases are assumed to have

Relocation segments relative to bases 1 constant values during the load process and and 2 (.PROG. and .DATA.) are always may be allocated by the loader. Comments on the TDL Relocatable Loader Format

Tom Pittman It begins to look like we are going to see true that you can use an LXI instruction Itty Bitty Computers the same diversity in design of software in in the 8080 or Z80 and do the arithmetic POB 23189 the personal computer industry that we have through the register accumulator ADD San Jose CA 95153 seen in the hardware design. This remark is instructions, but in the 6800 there is no prompted by a document describing Tech- convenient way to do arithmetic from an nical Design Labs' "Relocatable Object address loaded into the index register with

Module Format" which I recently had a an immediate mode. Even worse, the 6502 chance to examine. has no 16 bit register which may be loaded TDL is not the first to promote a relocat- immediate, and the programmer would be able format, and you may be sure they will forced to such subterfuges as defining an not be the last. Let me suggest some reasons. address constant containing the relocated

But first I should remark that the people at address, then using extended addressing to TDL have obviously put a lot of thinking refer to it. Another hazard which does not and work into their format. It will serve affect the 8080 and Z80 is the problem of

them for much software, some of which is relocating base page addresses. So far I clearly still in the future. My personal have seen nobody address this problem, impression is that the format tries so hard and yet the 6502 is effectively inoperable to be "efficient" that it has acquired the without reference to page 00. Are we to

distinct flavor of a kluge, but I will admit continue to force users to laboriously allo- that to be a matter of taste and not a matter cate page 00 even after relieving them of of substance. the same drudgery with respect to the rest The problem with the TDL format, and of memory?

also with the other formats which have come I should also like to mention two other before, is that it is limited to the relocation problems which have not been addressed, of 16 bit addresses. This may be satisfactory but which are considerably less severe. One for relocating jumps and subroutine calls, has to do with the problem of the difference but it is quite unworkable for data refer- between two relocated addresses. Most ences where the actual address of the refer- assemblers do not allow constructs of the ence must be computed from a relocated form (LXI B, ALPHA -BETA), where base address plus some computed offset. It is ALPHA and BETA are both externals. The

SWTP 6800 OWNERS -WE HAVE A CASSETTE I/O FOR YOU!

The CIS -30+ allows you to record and playback data using an PAIE IEPMINAL TAPE

ordinary cassette recorder at 30, 60 or 120 Bytes/Sec.! No Hassle! LOCAL AUTO X300 Your terminal connects to the CIS -30+ which plugs into either the p` 600

1400 Control (MP -C) or Serial (MP -S) Interface of your SWTP 6800 LINE ON DENCUM 30+ Computer. The CIS -30+ uses the self clocking 'Kansas City' /Biphase CIS_ Standard. The CIS -30+ is the FASTEST, MOST RELIABLE CAS- SETTE I/O you can buy for your SWTP 6800 Computer. Kit - $69.95* Assembled - $89.95* PerCom has a Cassette I/O for your computer! (manual included) Call or Write for complete specifications * plus 5% f /shipping

PerCom Data Co. P.O. Box 40598 Garland, Texas 75042 (214) 276 -1968 BANNAMEIIIGUD 'peripherals personal LQcM; PerCom - for computing' TEXAS RESIDENTS ADD 5% SALES TAX

204 BYTE November 1977 www.americanradiohistory.com construct is not allowed because there is no way to pass expressions to the loader. It is a useful construct, and at present the only way to accomplish the same effect with a relocatable code costs seven extra instruc- :g3Trum, g300AGED0

tions. But as I said, this is less important. More important is the problem of error checking. For reliable media, who cares? But t3 if we are going to bother to put checksums in the format, we should be sure that every-

thing important is checked. As far as I know, only the hex absolute format defined by m{,2 MOS Technology does this, unless the TDL / Preserve those precious back issues with loader insists on the presence of the carriage a handsome but rugged library file -or a return linefeed and requires the next char- acter to be either a colon or dollar. Most binder -in flag blue Kivar library fabric stamped loaders simply ignore all text until the in gold leaf header character is recognized, which gives rise to the possibility that lines may

be dropped, an occurrence I know to have

happened. I think the loader should ignore control characters (CRLF should be optional) but have some safety against dropped lines.

I said we would be seeing several relocata- ble formats. Like the hardware designers, no software designer is completely satisfied with what someone else has designed, so he /she wants to do her /his own. But more than that, when a proposed standard has serious deficiencies, it will not be widely accepted. As you no doubt have suggested

by now, I think I can do better. Time alone can tell whether we actually achieve any standards in this area.

Announcing the Central Standards Library

To help solve some of the standards pro- blems in the small computer and micro- computer field, ALF Products is sponsoring Files: Made to hold the first 16 issues of BYTE. Price a Central Standards Library (CSL). After per file $4.95; three for $14; six for $24, postpaid. discussions with several manufacturers in this field at the West Coast Computer Faire, Binders: Made to hold the first 16 issues of BYTE. Price ALF has set up the CSL as a means of per binder $6.50; three for $18.75; six for $36, standards information exchange for manu- facturers, consumers, hobbyists, and others postpaid. interested in standards. The Library will collect submitted standards and distribute (Add $1 each outside USA.) them on a nonprofit basis. For more infor- mation on available standards, on how to Send to: BYTE, POB 5120, Philadelphia PA 19141 submit standards, and on the Library's services, send $1 (to cover printing and I enclose check or money order for $ Please send me BYTE Files Binders mailing costs) to The Central Standards S Library, c/o ALF Products Inc, 128 Taft, Name Denver CO 80228. You will receive a copy roTéage pnntl of the first CSL newsletter and the first Address submitted standard (a parallel interface City standard). Manufacturers currently parti- cipating include: ALF Products, IMSA I State Zip Manufacturing, PolyMorphic Systems, Satisfaction guaranteed or money refunded. Allow at least / Proko Electronics, Vector Graphic, and \ur weeks for delivery. / Video Terminal Technology.

BYTE November 1977 205

www.americanradiohistory.com book Reviews

A Collection of Programming Problems and A COLLECTION Techniques by HA Maurer and M R Williams, OF Prentice -Hall Inc, Englewood Cliffs NJ, PROGRAMMING 1972, 256 pages, 6 by 9 paperback. $6.95. PROBLEMS AND TECHNIQUES Among the things I like about the com- puter field is that it inspires a new style of solitaire: It's me against the computer, and,

if I 'm persistent, I can always win. A frequent problem, however, is finding a game which will both bring satisfaction and sharpen my skills. Many beginning programming books give only modest examples and problems which do not challenge the inter- mediate student. Since the trip from ap- prentice to journeyman is paid for only with challenges you to print bridge hands, or experience, a good selection of programming perhaps a calendar. You can make maps, problems is a must. circles and family trees. Some of the great For the enthusiast seeking a challenge, or problems and legends of history are also the novice wishing to become a pro, described; perhaps you can solve them. Messrs Maurer and Williams have filled this The problems are couched in general need with nearly 400 problems of varying terms so that any of the common pro- degrees of difficulty. These exercises provide gramming languages may be used. Intro- experience in most of the common problems ductory problems range from the reading encountered by programmers. Working your and printing of data to the calculation of way through the book will provide an a bowling score. More difficult problems insight into the mysteries of applied higher address satellite orbits and language transla- mathematics, even though no knowledge of tion. There is an excellent advanced section mathematics above the high school level is dealing with simple compilers and three - required. You'll find sections on number dimensional plotting, as well as the sorting theory, random numbers and equations in and merging of data. In working out these one variable. The chapter on games discusses problems the programmer will gain a facility chess and checkers, and there are number in common applications. games throughout the book. The 10 section An appendix of partial answers to prob-

BITS, Inc The First Book of KIM 70 Main St Peterborough NH 03458

Attention KIM users! Here is the book you've been waiting for: The First Book of KIM. In it you'll find a beginner's guide to the MOS Technology KIM -1 microcomputer as well as an assortment of games including Card Dealer, Chess Clock, Horse Race, Lunar Lander and Music Box. Also featured are diagnostic and utility programs for testing both the computer and external equipment (such as cassette recorders), and chapters on expanding memory and controlling analog devices. This 176 page volume should prove an essential addition to any KIM user's library. $9.00.

Please add 50 cents for postage and handling. BankAmericard /VISA and Master Charge welcome.

For convenience, use any of the coupons on pages 142 -144 or 153. Be sure to write The First Book of KIM on the coupon.

Processing may exceed 30 days in unusual cases.

206 BYTE November 77 Circle 12 on inquiry card.

www.americanradiohistory.com Circle 34 on inquiry card. lems is provided. Since there are many ways Computer Mart of to program a given task, sample programs are not given. A well thought out index provides NewJersey speaks a reference to any particular problem or concept. your language The excellence of this book lies not only Whether you're just get in its graduated problems, but also in the ting involved with com- puters or an old pro. truly great variety of the exercises. It is not you'll find everything an introductory text, but of course there are you need at Computer Mart of New Jersey. many of those. It does promise to make the Hardware and soft- from reader a "tackle anything" programmer, ware major manufacturers. cur- which is the very best kind. rent literature, and the latest educa- tional material. Noel K Julkowski In these respects, 18755 Van Buren St wére like most Salinas CA 93901 other computer stores With one important extra -a personal concern for you and your computer. Our experts want to help you utilize your computer's maximum potential. So there's no hard sell; come in and browse, ask questions, see a demonstration. When The Thinking Computer: Mind Inside Matter you're ready to buy, well help you select the system that will meet your by Bertram Raphael, W H Freeman and needs and budget best. And if you ever need a service call, were as close as your telephone. When you're into computers, you'll find that Company, San Francisco, 1976. Softbound no one speaks the language as well as we do. $6.95. Be sure to vist our booth (414 and 416) at the Personal Computing Expo at the New Yak Coliseum on October 28 -30. See there and then This excellent book is perfectly suited for that were something special. the technically inclined reader who wants to The Microcomputer People'M know more about artificial intelligence (Al) COMPUTER MART and robotics. Written by one of the pioneers qC OF NEW JERSEY, INC. in Al research, it provides comprehensive, 501 Route 4127 Iselin, New Jersey 08830 201 -283 -0600 up -to -date coverage of the field in a style Store Hours Tues. thru Sat. 10 a.m. -6 p.m. that adroitly balances technical depth Tues. and Thurs. 'til 9 p.m. against readability and understandability. Raphael is especially effective in illustrating abstract ideas with memorable examples, r--- THE BETTER BUG TRAP like a "cryptarithmetic" puzzle which is ex- - plored via a tree search, and a butler and DEBUG maid mystery which is solved by theorem proving techniques. AND The book's introduction, which provides a basic orientation to computers for the uninitiated, also discusses special Al periph- CONQUER erals and software, and deals, albeit briefly, Altair /IMSAI compatible board catches program bugs and with two common misconceptions about provides timing for real -time applications. computers: that they are just giant arithme- Four hardware breakpoint addresses. Software breakpoints only possible at instructions in RAM. Better Bug Trap tic calculators, and that they are dumb breakpoints can be in ROM or RAM, and at data or instructions in memory, input /output channels, or stack locations.

Board can stop CPU or interrupt CPU at a breakpoint. Real -time functions: watchdog tinier, real -time clock (for time of day clock), interval timer. Sophisticated timesharing made possible!

Unique interrupt structure: generates a CALL instruction to your subroutine anywhere in memory, not a RST!

Addressed as memory. All parameters set easily by software.

All this and more for about the price of a real -time clock board, but nothing else does the job of the Better Bug Trap. $160, assembled and tested. 2 manuals plus software. 90 day warranty. Shipped UPS. Delivery from stock.

iIttrnnitß - BOX 3514, 123 WEST 3RD ST., SUITE 8 GREENVILLE, NC 27834 (919) 758 -7757 i

Circle 87 on inquiry card. BYTE November 1977 207

www.americanradiohistory.com Cl,cle 22 on u1.o.y card

r-analflia Boards DO Something sy Brems, inc. mechanical servants that can do only what they have been explicitly told how to do. 3 i;, r CL2400 Real Time Clock Raphael's refutation doesn't anticipate pos- IQ r sible further objections, but these issues have I >! i i , e ! S98-Kit S135-Assembled been discussed elsewhere. The first technical topic is the representa- If your system needs to know what time it is, our CL2400 is tion of information about problems, which the board tor you. The present time in hours, minutes, and has proven crucial in Al application soft- seconds is always available for input, and is continuously ware. Strings and list structures are described updated by the highly accurate 60 Hz power line frequency. and applied to the representation of board Need periodic interrupts? The CL2400 can do that, too, at any of 6 rates. Reference manual with BASIC and assembly games, symbolic algebraic formulas, English language software examples included. sentences and pictures. The next topic is search. Breadthfirst, PC3200 depthfirst and progressive deepening strat- Power Control System egies are applied to the problem of searching trees, and techniques for adding knowledge PC3232 S299-Kit 5360-Ass m. to the search are described. The problem of ` . i- _ PC3216 S189-Kit S240-Assm. na/ finding the shortest route between Paris and PC3202 S39.50-Kit S52-Assm. Vienna is used to illustrate the search for a path through a general graph struc- If your system needs on /off control of lights, motors, appliances, etc., our PC3200 System components are tor ture. Techniques for searching game trees, including evaluation functions, mini - you. Control boards allow one I /0 port to control 32 (PC3232) or 16 (PC3216) external Power Control Units, such as the maxing, and alpha -beta pruning, are briefly PC3202 which controls 120 VAC loads to 400 Watts. Optically described. isolated. low voltage, current -limited control lines are A major chapter deals with pattern standard in this growing product line. recognition and theorem proving techniques. The latter discussion presents Wang's algo- .1 P.O. Box 516 - .ra'r= - rithm for the propositional calculus, the systems, inc. La Canada, CA 91011 undecidability of the predicate calculus and (formerly comptek) (213) 790 -7957 its implications, resolution theorem proving and answer extraction (with a beautiful example, "Dr Coleman's wife "), and other formal systems such as modal, probabilistic, multivalued and fuzzy logics. While it is sometimes cursory and far from rigorous, this is easily the most readable approach to a WANTED: sometimes forbidding topic that I have ever seen; every reader will appreciate it. EXPERT The presentation of formal problem PROGRAMMERS solving methods is followed up by a discus- sion of informal approaches. The paradigm used Problem We are the leading manufacturer of industrial pro- in Newell and Simon's General grammable controllers - minicomputers and micro- Solver is presented and applied to the processor -based systems used for industrial automation. "frame problem," that of updating a de- Our Software Engineering Operation has doubled scription of the current situation as actions in the last year and we need good people badly. are taken, with an illustration of a robot We want experience in the assembly language, micro- programming microprocessors, real -time control ap- moving through a room. The possibility of plications, and some familiarity with hardware at applying theorem proving techniques to the all levels of experience. frame problem leads to a description of STRIPS, the problem solving system used in We offer excellent wages, generous fringe benefits, and a pleasant atmosphere for advancement and growth. the robot "Shakey" at Stanford Research Institute. The chapter concludes with a Please send resume with salary requirements to the Personnel Department. discussion of the question, "Can a computer learn ? ", with illustrations taken from Samuel's checkers playing program and Winston's concept learning program at MIT. MODICON Raphael then turns to computer under- THE PROGRAMMABLE CONTROLLER COMPANY P.O. Box 83 standing of natural language, and again Shawsheen Village Station provides a technical discussion of the Andover, MA 01810 An Equal Oppormniry Employer methods without sacrificing reader under- standing. Phrase structure grammars, trans- formational grammars, and the difficulties

208 BYTE November 1977 Circle 96 on inquiry card. www.americanradiohistory.com Circle 143 on inquiry card. Tarbell with these approaches are described, leading Floppy Disc Interface to a consideration of the interplay between syntax and semantics, and more recent Designed for Hobbyists and approaches such as case grammars and con- Systems Developers ceptual dependency theory. Actual systems which understand English are reviewed, with a special emphasis on Winograd's very suc- cessful program, SHRDLU. The chapter con- cludes with comments on the promise of current research into speech understanding systems. Succeeding chapters deal with perception and picture processing, and robot systems. Techniques such as smoothing and sharpen- TTi ing, finding edges and lines, and dealing with -1' ) i 1 1 1 1111111117111111imi1111111'Imm51 r light and shadow are described in enough Plugs directly into your IMSAI or ALTAIR and handles up detail to give the reader an idea of how these to 4 standard single drives in daisy- chain. things are done, with illustrations from the Operates at standard 250K bits per second on normal disc work of Guzman, Huffman and Waltz. The format capacity of 243K bytes. history of robots is reviewed, with examples Works with modified CP /M Operating System and BASIC -E from Ross Ashby's Homeostat, Grey Compiler. Walter's tortoises, the Johns Hopkins Hardware includes 4 extra IC slots, built -in phantom boot- "beast," the MIT robot arm, and Meredith strap and on -board crystal clock. Uses WD 1771 LSI Chip. Thring's inventions. Then a case study is 6 -month warranty and extensive documentation. presented of Shakey, the SRI robot. PRICE: Kit $190 Assembled $265 ' ALTAIR Is a trademark /tradename of MITS, INC. The final chapter comments on "frontier applications" in which the fruits of Al 20620 Suite P research can be used to better our world. % aomáPVAVenue,California (213) 538-4251 Examples are drawn from work in educa- I,IronII J tion, psychology and medicine, as well as other fields. The book concludes with an eloquent commentary on the potential for dehumanization and the promise of enrich- ment of our society posed by intelligent machines. The key, of course, is under- FIRE and Raphael has made a real SALE: standing, contribution to popular understanding of artificial intelligence research by writing this book.

Dan Fylstra Hamilton Hall C -23 Harvard Business School Boston MA 02163.

The Anatomy of a Compiler by John A N That's right, if we don't sell a bunch of our Lee, D Van Nostrand Company, New York, BASIC SOFTWARE VOLUME 1 albums 1974, 470 pages. Paperbound, $11.95. quick, we'll get fired! Included are lots 'n' lots of your favorite Basic programs such as John A N Lee, a professor of computer LUNAR LANDER and BLASTOFF!, plus new science at Virginia Polytechnic Institute ones like MAILING LIST, FOURIER FIT and and State University, has written a book that AMPLE ANNIE. Plays through your Tarbell, bridges the information gap between the ele- Kansas City or Altair cassette interface (we mentary explanations of compilers which are coded all three ways). Or make cassette usually found in the last chapters of intro- copies. Only 6 bucks. Don't be a dummy, or- ductory textbooks, and the very abstract der today! Satisfaction guaranteed or money theoretical explanations, ie: those that back. speak in terms of "given a set S." Dr Lee's to: clear, precise prose possesses a great deal SOFTWARE RECORDS of flair leading the motivated reader from $6 PO BOX 8401 -B UNIVERSAL CITY, CA 91508 first principles to complex operations. (CALIFORNIA RESIDENTS: PLEASE ADD 6% SALES TAX) This book is a "how to" book, abundant

Circle 130 on inquiry card. BYTE November 1977 209

www.americanradiohistory.com Circle 86 on inquiry card. in explanation, striving to impress upon the reader the hows and whys of current day symbolic language definition and execution. Ad+MICRODESIGN Dr Lee places a great deal of emphasis upon the differences between compilers and inter- microcomputer products preters by emphasizing that compilers pro- duce separate code (object code) that is executed after the compilation phase of execution is finished; but interpreters execute the source code on a line by line basis which may not be optimal in terms of processor time. Compilers, as contrasted with interpreters, output object code to some intermediate storage medium for later execution. This means that execution of 2708 compiled programs is often more efficient, 8K TMS 2716 in terms of processor time, than interpretive 16K EPROM /RAM execution each time the program is run. VERSATILITY Individual Addressing Shidow alternates ROMwithRAM External However, source code errors are more RAM disable Optional IK on -board RAM S100 compatible Power -on jump or bootstrap capability All sockets included difficult to correct in compilers than similar MR 8 KIT For 2708 99.50 errors in interpreters because there may not MR 16 T KIT FOR TMS 2716 99.50 be a clear relationship between compiled EPROM (shown) not included object code and the original source code. FIRMWARE 2K Monitor /Utility Supports Tarbell cassette, paper tape Now Interpreters, on the other hand, by virtue +S, available for SlO. MIO, 3P SIO 2 of their line by line execution characteristic, MM 2K (two 2708 type EPROMS) 79.50 a MM 2 T (one TMS 2716 EPROM) 74.50 retain definite relationship between object code and source code. This simplifies the EPROMS Prime, full specification programming available debugging of source code. As a result of 2708 type 1024 x 8 30.00 TMS 2716 2048 x 8 55.00 these considerations, we may find an in- creasing interest in compilers among com- MICRODESIGN puter hobbyists as high speed mass storage 679 -I S. State College Blvd., Fullerton CA 92631 devices become less expensive. (714) 870 -9860 Dr Lee also discusses, in great detail, lexical analysis and syntactical analysis. He explains that lexical analysis serves to re- \INALLY, A move redundancy, condense statements and c- phrases the source code. Syn- delimit from TELEPHONE tactical analysis serves to recognize phrases, WI1N BYTE ! parse statements and generate parsed text. After discussing symbol tables which are V crccccce0 used by the compiler to reference symbols y from the source code, he covers string 6800 AUTOMATIC TELEPHONE DIALER manipulation and Polish string conversions PROGRAM $9.95 postpaid Have your 6800 system dial your phone Uses in great depth. Program control also receives only 5 external components Stores 650 variable thorough treatment. length phone numbers Operates in less than 1K Throughout the book Dr Lee draws pro- bytes of memory fusely upon examples of actual implemen- Includes: Paper tape in Mikbug® format and ob- tations of the techniques he describes. ject code Circuit diagram and instructions Examples are taken from ALGOL, APL, Instructions for adapting to other 6800 systems BASIC, FORTRAN, PL /I, and other lang- 6800 TELEPHONE ANSWERING DEVICE uages, thereby avoiding the trap of pro- PROGRAM $4.95 postpaid ducing a one language book. Also, much to Have 6800 and your system answer your phone the author's credit, the book is profusely record messages automatically. Compatible with illustrated with flowcharts illustrating the any 6800 system. algorithms described. In summary, Dr Lee's Includes: Assembly listing and object code Cir- cuit diagram and instructions book is clear, readable and certainly useful to the serious home computerist. Its wealth Write to: SOFTWARE EXCHANGE of practical information should be welcome 2681 PETERBORO to any computerist's bookshelf. W. BLOOMFIELD, MICH. 48033

Michael E Sullivan Mikbug is a registered trademark of Motorola Inc. OZ Division USS Saratoga (CV -60) <22JJJ333 3.33 JJJJJ3J3J33. FPO NY 09501

210 BYTE November 1977 C is e 179 3- -rury card.

www.americanradiohistory.com SPC -12 Users' Group

LII&J$80d Anyone who would like to form an SPC -12 users' group in the Chicago area Newsletters should contact Manuel C Martinez, 7706 W Gregory St, Chicago I L 60656, or call (312) 631 -6623.

HP -65 Users' Club LI CA

This club was started to support the The Long Island Computer Association is HP -65 programmable calculator, but now all a group of hackers, amateurs and even some modes are supported (HP -25, HP -25C, pros in the Commack, Long Island area. The HP -55, HP -67, HP -97 and HP-65). The monthly meetings feature good speakers, fun newsletter, called 65 Notes, is an excellent and refreshments. The group publishes a publication in which members (and even newsletter called The Stack. Nonmembers nonmembers) share programs, ideas, frustra- are welcome to all meetings; bring the whole tions, etc. Even if you are not a program- family! Write to Long Island Computer mable calculator devotee (timesharers take Association, c/o Dave Metal, editor, 28 note. . .) you'll find something here. For Splitrail PI, Commack NY 11725. more information contact Richard J Nelson, editor, HP -65 Users' Club, 2541 W Camden Washington Amateur Computer Society PI, Santa Ana CA 92704. (WACS)

Stock Market Anyone? Every two months or so WACS sends us a rather impressive computer newspaper with Conducted by An association of persons who have a items of interest to club members and non- David Wozmak serious personal interest in using a micro- computer for stock and commodity market investment purposes is being formed. If covariance is more than just another word HOBBYISTS! ENGINEERS! TECHNICIANS! STUDENTS! to you, send a brief note listing your desires, and run language qualifications and market experience /in- Write machine programs at home, display video graphics on your TV set and design microprocessor circuits the very first night volvement to J Williams, 2415 Ansdel Ct, - Reston VA 22091. - even if you've never used a computer before! SPECIFICATIONS RCA COSMAC microprocessor/mini- PACC ELF 11 features an RCA COSMAC COS MOS 8 -bit microprocessor address- corn puter able to 64k bytes with A THOUGHTFUL GIFT Those of you in the Pittsburgh area DMA. interrupt, 16 regis- itko FOR ANYONE MUST ters. ALU. 256 byte RAM, WHO should definitely consider getting involved full hex keyboard, two STAY UP TO DATE IN digit hex output display. COMPUTERS AND ELECTRONICS' with the Pittsburgh Area Computer Club. 5 slot plug -in expansion There are users' groups, displays, activities bus, stable crystal clock for timing purposes and a and socializing at the monthly meetings. double -sided plated - through PC board plus $9995 Plan to be there to brag about your system RCA 1861 video 1C to dis- ELF" play any segment of mem- SEND TODAY or look at others' systems. Membership is ory on a video monitor or TNETRONICS R &D LTD., Dept. BY11 TV screen. $12 per year. Contact Ed Dehart, president, 333 Litchfield Road, New Milford, CT 06776 Phone (203) 354 -9375 Yes! I want to nun programs at controllers. etc. (soon to be ELF II FOR... Pittsburgh Area Computer Club, 400 Smith- USE home and have enclosed: available as kits). Manual in- GAMES El $99.95 plus 53 p&h for RCA eludes instructions for assembly, field St, Pittsburgh PA 15222, or call Kenn Play interactive keyboard games, COSMAC ELF II kit. Featured testing, programming. video games with analog inputs, games in . graphics and games phis how Marks at (412) 352 -3412. utilizing your TV set for a video Includes all components plus you can get ELF II User's Club display! everything you need to write bulletins. Kit can be assembled GRAPHICS and run machine language pro- in a single evening and you'll grams plus the new Pixie chip still have time to run programs, Alamo Computer Enthusiasts Create pictures, designs, alpha - numerics and fabulous animated that lets you display video including games, video graphics, effects on your TV screen for graphics on your TV screen. De- controllers, etc., before going to hour atter hour of family fun! signed to give engineers practice bed! 54.95 for 1.5 amp 6.3 This nearly brand new club in San in computer programming and VAC power supply, required for CIRCUIT DESIGN microprocessor circuit design, ELF II kit. 55.00 for RCA Antonio TX meets on the fourth Friday of Design circuits using a micro- ELF II is also perfect for college 1802 User's Manual. ELF processor. Use II as a and college -bound students (who I want mine wired and tested every month in room 104, Chapman Grad- counter, alarm system, lock, must understand computers for controller, thermostat, timer. with the power transformer and uate Center, Trinity University. Call (512) any engineering, scientific or RCA 1802 User's Manual for telephone dialer, etc. The pos- business career). Easy instruc- sibilities are infinite! 5149.95 plus 53 p &h. 532 -2340 or 342 -3874 for more informa- tions get you started right away, Conn. res. add sales tax. Coming Soon! even if you've never used a com- tion. Also, the ACE newsletter needs your Exclusive Netronics Plug -In puter before! NAME Program Debugger and monitor As your need for computing input. If you are a brave soul with something allows visual display of any power grows, five card expan- ADDRESS interesting on your mind, send your idea to program on a clock pulse by sion bus (less connectors) allows CITY clock pulse basis to help you memory expansion, program de- John Stanton, 7517 Jonquill, San Antonio learn programming f- a -s -t1 4k bugger /monitor, cassette I /O, A STATE 7IP memory Cassette I/O D to to D and D to A converters, Send info on other kits! TX 78233, or phone (512) 657 -3069. A, A to D Controller plug -ins. L PROM, ASCII keyboard inputs, Dealer Inquiries Invited J

Circle 103 on inquiry card. BYTE November 1977 211

www.americanradiohistory.com Circle 55 on inquiry card. members alike. It is printed in the form of a computer printout by a DECsystem -10. The club meets monthly; for specifics, 16K RAM write to Washington Amateur Computer FULLY STATIC Society, 4201 Massachusetts Av, Washing- 1 INTRODUCTORY ton DC 20016. $450 KIT PRICE 6800 Users in San Jose 1 1 10 SLOT TABLE TOP MICROCOMPUTERS Anything and everything to do with 6800 tAl TT- 8080... KIT $475 microcomputers is of interest. Hardware and 1 1 software are always on display by area SYSTEM WITH 16K & I/O zoo hobbyists, and everyone is welcome. Meet- Mini, TT- 8080 -S ... KIT $1125 1 1 ings are on the first or second Tuesdays of each month. Contact the 6800 Computer CARD CAGE & MOTHER BOARD Club at POB 18081, San Jose CA 95118 ECT- 100... KIT $100 1 for more information. WITH CONNECTORS & GUIDES The Chicago Area Computer Hobbyist's ECT-100 -F ... KIT $200 1 Exchange

The montly publication of the Chicago CPU'S , MEMORY 1 MOTHER BOARDS Area Computer Hobbyist's Exchange is The PROTOTYPING BOARDS Cache Register. This impressive newsletter EXTENDER CARDS 1 has all the necessary club information, some POWER SUPPLIES great programs, convention news, editorials and so on. If you want club information, or IDEALER INQUIRIES INVITED SHIPPING EXTRA 1 would like to receive this newsletter, simply write Chicago Area Computer Hobbyist's ELECTRONIC TECHNOLOGY CONTROL Exchange, POB 36, Vernon Hills IL 60061, P.O. BOX 6, UNION, NEW JERSEY 07083 or call (312) 849 -1132. (201) 686 -8080

KIM -1

The KIM -1 users' group has introduced The First Book of KIM, designed to help beginning KIM users. Introductions to pro- gramming, interfacing to KIM, games and "We've Got It!!" utility programs are all covered. A NEW ADDITION TO OUR STOCK OF If you are a KIM -1 user /owner /soon to be SURPLUS ELECTRONIC EQUIPMENT / owner, then the KIM- 1/650X User Notes The IBM Selectric Basedr` "', is for you. All kinds of helpful software and I/O Terminal $695.00 stuff is packed into this bimonthly. For more information, write KIM- 1/650X User INTEGRAL MODEM BCD OR CORRESPONDENCE CODE Notes, 109 Centre Av, W Norriton PA TABLETOP MOUNTING 22 "W, 22 "D X 8 "H, 58 LBS 19401. ASCII CONVERSION AVAILABLE DOCUMENTATION INCLUDED South Florida Computer Group

In the Ft Lauderdale /Miami area, meeting times vary. These people put out a news- letter with page numbers in binary. For information on joining the club or receiving the newsletter write to South Florida Com- OTHER SURPLUS STOCK puter Group, 1155 NW 14th St, POB KEYBOARDS - ASCII ENCODED $40.00- $60.00 236188, Miami FL 33123, or phone (305) CRT TERMINALS TAPE DRIVES $650.00 PRINTERS Many 324 -5572, ext 45. EQUIPMENT CABINETS TRANSFORMERS Other POWER SUPPLIES WIRE -CABLE Items RAMS ari, Send for a free catalog or call Bill Blaney miff toll free 800-256-1036. In N.H. 603 -885 -3705 Visit Our The Rochester Area Microcomputer WFaLUWLIE ELECTI111ICS, 1.11E. Store 10 Flagstone Drive, Hudson, New Hampshire 03051 Society is a group of individuals with the

212 BYTE November 1977 Circle 160 on inquiry card.

www.americanradiohistory.com Circle 99 on inquiry card.

aim of advancing the spread of interest and knowledge in home computing. By bringing together professionals and amateurs, busi- Need Hard Copy? nessmen and women, students, and just plain interested novices, the society acts as a focal point for the distribution of information and help in the field of microcomputing. RAMS meets on the second Thursday of every month at Rochester Institute of Tech- nology, building 9, room 1030, at 7:30 PM. Meetings usually include a guest lecture on some general interest topic relating to computers, and discussions by members of their own experiences. The "random access" sessions allow anyone with a question to TRY OUR SOFT PRICES draw upon the help of the entire group. ö.. SSP-40 . $575 Membership to RAMS costs $5 per year and -00fltains its own micro processor for easy connection to includes a subscription to the club magazine, your RS232 serial port or TTY current loop. Memory Pages. For more information, or a MP -4a $425 Interfaces to your micro computer parallel output port for free copy of Memory Pages, write to RAMS, t ASCII data transfer. POB D, Rochester NY 14609, or call Glenn .KP -40KIT $179 Contains mechanism. PC board all components. Alexander, president, at (716) 377 -0697. transformer and complete assembly Instructions for parallel data transfer.

Tulsa Computer Society All of our 40serles printers use the same reliable 5,7 impact dot matrix mechanism with up to 40 columns per line on ordinary paper with a print speed of 75 Imes minute FREE The TCS had an exhibit at the Woodland lSEND FOR LITERATURE Hills CA Personal Computing Expo, and Box 22101 Salt Lake City, Utah 84122 from the look of the photos in the TCS "% i (801)566 -0201 newsletter, it was a success. Mike McNatt, editor of The lO Port (the newsletter of the TCS) has informed us that they would like to trade the /O Port with "WHAT EVERY CP /M" USER NEEDS'1 other newsletters from other clubs. Write to Mike McNatt, c/o TCS, POB 1133, Tulsa OK 74101. BASIC -E MANUAL 1802 Users' Group in Ontario A 200 -page User's Guide which provides detailed explanations of all BASIC -E capabilities. A comprehensive treatment of BASIC programming techniques. Here is another group of hackers who are Includes a Glossary, Index, Vocabulary Summary, and Grammar building their own systems from the ground Summary. up using 1802 chips with a kit similar to the Cosmac Elf. The club, numbering approxi- CP /M SOFTWARE mately 300, is currently working on more A disk containing over 40 programs, including: memory and 10 hardware, and is soon to BASIC -E compiler and two run -time monitors start on monitor programs and BASIC inter- Processor to transfer INT files preters for the 1802. Write Tom Crawford, Disk track -to -track copier 50 Brentwood Dr, Stony Creek, Ontario IMSAI memory check program CANADA L8G 2W8. ASCII to EBCDIC convertors Letter writer, including name embedding and name -file management A Compucolor Users' Group Routine to control number formatting, e.g., total and decimal field width, floating $ and commas, etc. The Compucolor Users' Group is dedi- Many improved games cated to the exchange of programs and tech- nical data for the Compucolor color display system. They anticipate issuing a news bulle- Phone: 1415) 673 -8962 Manual Software Manual & Only Only Software Subjects such as Write: John K. Jacobs tin periodically. how to S25 JEM COMPANY S60 Sm concatenate tapes and disks will be covered. Suite 301 Terms: Cash with order. For each accepted program a member will 2555 Leavenworth St. California residents add 6 receive a number of other programs in San Francisco, Ca. 94133 $2 for immediate first class mail delivery. return. The initial membership fee of $10 covers the duplication and mailing of mate- A Product of Otgital Research rials. Those wishing to join the group may f/

Circle 60 on inquiry card. BYTE November 1977 213 www.americanradiohistory.com send the fee to S P Electronics, 5250 Van small. People in the Philadelphia, Pittsburgh, Nuys Blvd, Van Nuys CA 91401. Further Baltimore or New York area are invited to information may be obtained by sending contact either Joseph Pallas, 1979 Crooked a large self- addressed, stamped envelope Oak, Lancaster PA 17601, (717) 569 -3137, to the above address. or David M Ciemiewicz, 533 N Holly St, Among the present programs are an Elizabethtown PA 17022, (717) 367 -6512. illustrated version of blackjack, an excel- They are seeking material for their News- lent version of Star Trek, a slot machine, letter, the Data Dump. and more. For the most part the group tries to exchange recorded media rather Montreal Area Computer Society than program listings. Anyone interested is welcome to write. Over the past year, the Montreal Com- puter Society has grown from 12 members Central Pennsylvania Computer Club to over 90! The club meets once a month, usually on second Tuesday evenings at The Central Pennsylvania Computer Club Vauiev College, 5160 Decarie Blvd. For is now forming for people who are interested further information, contact John Erikiev, in all aspects of computers, both large and president, at (514) 932 -2344, or write Montreal Area Computer Society, POB 613, Stock Exchange Tower, Montreal, Circle 151 on inquiry card. Quebec CANADA. 1(0\3 e IgLV W vnd Space Coast Microcomputer Club

The second edition of the Space Coast $830 Microcomputer Club Newsletter has an interesting feature by Paul Rainosek: a tabulated comparison of some of the different microprocessor chips available. The various advantages and disadvantages are clearly listed. Included are the Intel 8080, Motorola M6800, MOS Technology 6502, Fairchild F8, Signetics 2650, and Cosmac 1802. To find out more about the Space Coast Microcomputer Club, contact Display: 24 Lines, 1 92 0 Characters 110 - 30 cps, 132 CHARACTERS Addressable Cursor Upper - Lower Case Ray Lockwood, 1825 Canal St, Merritt Keyboard may be cleared remotely RS232C Compatible Island FL 32952. Ma Bell Compatible 9 x 6 Dot Matrix Height 5 %a ", Width 18 ", Depth 21'/2" Officially LACC Weight 30 lb. TERMINAL SYSTEMS INC. Sales - Service - Rentals The Louisville Area Computer Club H AAAAA 5711111. MOITH HOLLYWOOD. C1.1/0011A ,I601 2,1 1696)78 15573))e3 roll n.a,rvaa/Cw/mi, 81.14 e818N9 For further information call John Storm (LACC), formerly Louisville Users of Micro- processors (LUMP), hereby mentions the For All your Mini Computer and Tele- Communication Needs fact that the club has a new name. So, those

HIGH -SPEED CASSETTE INTERFACES (The Stringy Disk) CRI -B UCR : All I Need!!! r 41k Universal I/0 Interface JEN High -speed cassette, two relays for con- 144.11 trol of two recorders; space for three 2708's, one provided, with monitor soft- 144 ware, 2708 programmer; reset -jump; ram for stack; RS -232, 20 ma, 60 ma, serial; 3 parallel ports; speeds from 20 600 to 12,000 baud status Relay re- "T.;Q to 19,200 baud. control of two controls, 1K monitor with corders, latched input port Kit $285. Assembled, tested $345. DAJEN Electronics cassette routines provided for keyboard, tape reader, Mastercharge, BankAmericard, Visa 7214 Springleaf Ct. on tape. etc. File- search capabilities. Citrus Heights, Ca. 95610 (916) 723 -1050 Biphase, Kansas -City, Altair, IMSAI, Poly, Tarbell compatible Kit $120, Assembled $165 Kit $135, Assembled $175 Manual $3.50 Manual $4.50

214 BYTE November 1977 Circle 42 on inquiry card. www.americanradiohistory.com Circle 106 on inquiry card.

ADD EXCITEMENT TO YOUR of you who have been looking for "LUMP" VIDEO DISPLAY WITH A ... meetings should now go to "LACC" meet- PROGRAMMABLE CHARACTER ings. These are held on the first Saturday of each month at 1 PM (usually). Check GENERATOR with this address for the locations: LACC, INNOVATIVE S -100 CARD PROVIDES THE CAPABILITY OF DYNAM- ICALLY CREATING CHARACTERS GENERATED BY YOUR VIDEO Edgemont IN 115 Dr, New Albany 47150. DISPLAY. PROGRAM SPECIAL MATH OR SCIENTIFIC SYMBOLS, APL CHARACTERS, SUB- AND SUPER- SCRIPTS, HIGH DENSITY An F8 Users' Club BAR GRAPHS, SPACE SHIPS, ETC. YOUR ORIGINAL CHARACTER SET REMAINS INTACT AND AVAILABLE AT ANY TIME. KEYBOARD INTERFACE AND DUAL JOYSTICK INTERFACES PRO- A group of Fairchild F8 users has started VIDED ON BOARD. IDEAL ADDITION TO SOL TM TERMINALS, in the Hartford CT area. They have three POLYMORPHIC TM VTI, PROCESSOR TECHNOLOGY TM VDM -1, SOLID STATE MUSIC TM VIDEO BOARD AND OTHERS USING THE F8s built and running with two systems MOTOROLA TM 9X7 MATRIX CHARACTER GENERATOR. having 5 K and 16 K memory, and are interested in contacting other F8 users who PkO0111RE CHICO OAWiIR - A P 1 3i would be interested in exchanging informa- 0 11l111voIt.irt tion and programs. Contact G W Hemphill, 132 Scott Swamp Rd, Farmington CT 0r100>1::,.11 06032. . 1A1a» + ci73-Jill43 ,E7;4::1.110

- '11:1' r:

The First Annual Micro -Chess Tournament 'UNRETOUCHEDPHOTOS The first annual Micro -Chess tourney will FOR FURTHER INFORMATION be held in Louisville KY in August of 1978, sponsored by the Louisville Area AND PRICING, CONTACT: Computer Club. To put on a really fair OBJECTIVE DESIGN, INC. tournament the club is in the process of drawing up the rules and regulations. The P.O. BOX 20325 TALLAHASSEE, FL 32304 (904) 224-5545 preliminary rules are:

Competition limited to approved 8 bit microprocessors; no bit slice machines will be allowed. Other microprocessors will be considered. Send request with stamped, self- addressed envelope to address below. Programs can be in either machine language or a higher level language. 16 K 8 bit words memory maximum. (9 bits if parity is used.) Homebrew machines and commercial machines allowed. THE PROM SETTER Machines may be loaded from any WRITE and READ media but after the program is oper- EPROM ating the loading device must be de- 1702A and 2708 tached. Plugs Directly into your ALTAIR /IMSAI Computer A panel of judges will rule promptly Includes Main Module Board and External EPROM on program crashes or other unex- Socket Unit pected problems. Software included. Competition be will timed. No External Pdwer Supplies, Your Computer does it all The 1979 Micro -competition will allow Programs and Reads Both 1702A and2708 EPROMS up to 32 K bytes of memory; the 1980 will allow 64 K bytes (65,536 bytes) of memory. Doubles as an Eight Bit Parallel 1/O The sponsoring committee reserves the right Manual included to alter the rules to meet unforeseen situa- KIT COMPLETE - $210 tions. First, second and third place prizes ASSEMBLED - $375 will be awarded. For further -information Delivery Less Thon 60 Days write: Louisville Area Computer Club, 3028 Hunsinger Ln, Louisville, KY 40220. SZERLIP ENTERPRISES 1414 W. 259th St. - Harbor City California 90710 California residents please add 6% sales tax.

Circle 142 on inquiry card. BYTE November 1977 215 www.americanradiohistory.com 010 REM LUNAR LANDING SIMULATION page Listing 1: Most of the lunar landing games I Continued from 22 020 REM SET FUEL SAFETY FACTOR have seen are not flexible enough to run a 025 REM ADJUST TO CONTROL DIFFICULTY two degree of freedom real time simulation 030 LET S=1.3 040 REM SET STEP SIZE AND PRINT INTERVAL as described in this article, so I have included 050 LET D =0.01 this listing. At each initialization, this 060 LET K =1.0 070 REM SET GRAVITY ACCELLERATION program finds a random set of starting 080 LET G=1.62 conditions (speed, position, mass, etc) that is 090 RANDOMIZE 100 REM SET NEW STARTING CONDITIONS a consistent with safe landing. It then keeps 110 LET M=1024.+1024.*RND(1.) track of speed, position and fuel con- 115 PRINT "LEM MASS = ",M sumption, printing them as required, and 120 LETF= G *M *(4. +4. *RND(1.)) 130 PRINT "MAX THRUST = ",F indicating when the surface has been 140 LET A= 1.333 *F /M-G reached. The following adjustments will have 150 LETV= F /M *64. *RND(1.) 160 LET U =O. to be made by each user: 170 LET Y=V**2./(2.*A)*(1.+RND(1.)) 180 LET X =V 182 REM V IS VERTICAL SPEED 1. Function USR(X) must be provided to 184 REM U IS HORIZONTAL SPEED return the current desired thrust 186 REM Y IS VERTICAL POSITION 188 REM X IS HORIZONTAL POSITION settings, 0 to 100% in the vertical 190 REM HALF OF MASS IF FUEL direction, and -100 to +100% in the 192 REM M -P IS FUEL REMAINING horizontal direction. These inputs are 200 LET P =M /2. 210 REM FIND FUEL BURN RATE, I best achieved by analog to digital con- 220 LET I= (2. *Y +V * *2. /G) /(1. +A /G) version from joysticks or slide pots. 230 LET I= P /(SQR(I /A) *F *S) 240 PRINT "ALTITUDE, SPEED, FUEL, RANGE" 2. The step size and print interval must 250 REM BEGIN DECENT CALCULATIONS be adjusted for your system clock and 260 PRINT Y, V, M -P, X 270 LET T =0. peripheral speed in order to simulate 280 IF M =P THEN 360 real time operation accurately. 285 REM GET VERTICAL THRUST 290 LET A= USR(1.)*F /100. 3. Function RND(1.) is assumed by the 300 REM GET HORIZONTAL THRUST program to return values between O. 305 LET B= USR(2.) *F /100. 310 LET M= M- (A +B) *I *D and 1. Alterations may be necessary 320 IF M >P THEN 360 to suit your version of BASIC. 330 PRINT "FUEL EXHAUSTED" 4. The comments printed by the program 340 LET A =O. 342 LET B =0. have deliberately been kept short. A 350 LET M =P better game could be fashioned by 358 REM PREDICT NEW U, V, X, Y 360 LET V= V +D *(G -A /M) adding instructions, comments on 370 LET U= U +D *B /M performance, low fuel warning, etc. 380 LET Y =Y- V *D 390 LETX =X -U *D In other words, customize the simula- 395 REM TEST FOR END CONDITIONS tion to suit your own tastes. 400 IF Y<4. THEN 440 410 T =T +D 420 IF T >K THEN 260 430 GOTO 290 program should check for end conditions 440 PRINT "MODULE HAS LANDED" 450 PRINT "SPEED = ",V and, if none are found, begin another step. 460 PRINT "RANGE = ",X 470 IF V<8. THEN 500 The speed of a computer makes it 480 PRINT "BETTER LUCK NEXT TIME" possible to find results quickly for times far 490 GOTO 110 into the future, even if the step size is quite 500 IF X<128. THEN 530 510 PRINT "ITS A LONG WALK TO BASE" small. This is fortunate, because as our simu- 520 GOTO 110 lation stands now, an error is introduced at 530 PRINT "CONGRATULATIONS, GOOD LANDING" 540 GOTO 110 each step that becomes worse as the step 550 END size becomes larger. The error occurs because in a real LEM the mass and speed are changing all the time, but in our simula- be made among speed, accuracy, complexity tion they can be changed only between and size. In each simulation, the programmer steps. A variety of numerical methods must decide which combination is best. have been developed to cope with this For our games application, the combina- problem. In our example, simply using tion is not critical. A high degree of accuracy the average of the beginning and ending is not required, and the program is short values in each step would be quite effective. enough that memory requirements should Actually, if the step size is small, say 0.01 not be a problem. The selection of speed, seconds, even this is not necessary. It is true however, presents an opportunity that that by using the average values the program is unique to the user of a dedicated system. could be made to run faster, but it would With a little trial and error, it should be also need to store several extra variables, possible to find the step size which causes

require more lines of code, and use more your system to take exactly 1 second to memory. Obviously, there are trade -offs to calculate and display the speed and position

216 BYTE November 1977 www.americanradiohistory.com Circle 131 on inquiry card. BUSINESS APPLICATION SOFTWARE

MINI WORD PROCESSING (MWP) enables the An interactive generator allows the user to define UDE modules can be generated for any applica- user to prepare letters, text and mailing labels or a customized sort /merge program for each task. tion that requires keyed input. envelopes. When used for correspondence pro- Multiple sort /merge tasks can run unattended cessing, MWP allows each entry in the name/ with user defined lob-stream links (eg. sort 12 The above systems are extremely easy to use and address file to be described by a number of group files, merge them with another sorted file and include carefully created prompts and error re- codes and document codes. For example, an link to your report program) Memory and disk covery, well written user manuals with varied ex- entry could be group coded by date and inquiry space are managed by the system to minimize amples and extensively documented programs type. Phrases, paragraphs or pages can be spe- processing time. with detailed remarks. Each of these systems is cified as document codes to produce an indivi- UNIVERSAL DATA ENTRY (UDE) system inter- priced at $195. The programs are supplied on dualized letter for each name /address. MWP diskette and run under MITS Disk Extended acts with the operator to generate custom key - provides in -line editing and page or phrase in- to -disk modules. defined displays provide BASIC. See your computer dealer or contact us. sertions during text generation. The letter and User "fill in the blanks" simplicity Validation pro- text output modules provide text insert or re- THE SOFTWARE STORE cedures such as check digits, value tables, range placement, margin control and page numbering. 706 tests, batch totals and record counts improve Chippewa Square Marquette, MI 49855 DISK SORT supports fixed or variable length data quality. Selectable field duplicate or incre- sequential files of any size and will sort or merge ment eliminate repetitive entries. UDE supports on any number of keys anywhere in the record. fixed or variable length disk files. Specialized Master Charge 906/228 -7622 VISA

1 second into the future. One machine 0.01 second step. The keyboard could be might do 100 steps of 0.01 seconds and then used via an interrupt routine however. print the speed, etc. Another might do 64 Ideally, you could implement Thomas steps of 0.015625 seconds before displaying Buschbach's joystick interface (March 1977 new results. Still another, with slow BYTE, page 88) to allow continuous control peripherals, might output speed and position of thrust in both degrees of freedom. What only once every 2 or 3 seconds. In any case, began as a simple game will now have as long as the simulated data appears at become a real time lunar landing simulator the same time that real data would, your requiring quick thinking and a good bit of system will be said to be running a real time practice to master. simulation. A real time lunar lander game If you use this idea then my article will gives you exactly the same time to react as have succeeded in its purpose of introducing would be given a real excursion module some of the basic concepts of simulation. pilot. Techniques like separating the problem To help you implement this idea on your into degrees of freedom, determining the own system, a BASIC language program has effect of each force separately, and stepping been included with this article as listing 1. the simulation into the future are all It should be easy to follow, but a few points fundamental to any prediction of motion. are worth explaining. At each step the pro- The differences between this lunar lander gram will need to obtain the thrust settings. game and the complex simulations used in This is done through a function called USR. the space program lie in the way forces Because systems differ widely, the content are determined and in the numerical of USR is left to you. Some systems will be methods used to calculate speed and posi- able to use a register to hold the thrust; tion. In future articles, other applications others will access memory location; and for simulation on microcomputers will be some may have to query an input port. Also discussed as a means for demonstrating some left to the user is the manner in which the of those advanced techniques. For now, thrust settings are updated. Obviously, they try applying the ideas presented here to cannot be entered at the keyboard for each create a game of your own.

6800 REFERENCE GUIDE FOR PROFESSIONAL AND HOBBYIST The TOOL you have been waiting for. A 6800 Reference Data Guide (similar to the IBM green card) containing just about every piece of pertinent information that you are currently spending valuable time searching for. The guide saves TIME, EFFORT and WORK SPACE when programming, debug- ging and utilizing the 6800 system. Included are INSTRUCTIONS, SPECIAL OPERATIONS, HEXADECIMAL /DECIMAL CONVERSION TABLES, code translation tables for MACHINE CODES /MNEMONICS /ASCII /HOLLERITH /BI- NARY, 6800 MPU, 6820 PIA, 6850 ACIA and almost everything else that will increase your pro- ductivity. TRY IT, YOU'LL LOVE IT. Send $4.95 plus 350 shipping and handling to: MICRO AIDS, P.O. Box 1672, St. Louis, Missouri 63011

Circle 84 on inquiry card. BYTE November 1977 217 www.americanradiohistory.com Ppograamming Quickies

Listing 1: An 8080 version of the random number routine. This routine uses Pseudorandom registers of the processor as temporaries, and places its result in memory loca- tion RND. Multiplying by the number 13 is accomplished with shifts and Number Generator additions without any looping by noting the identity: 13xN = Nx23 + Nx22 + N The power -two factors are generated by shifts. Daniel Grieser -of left 4326 Kenny Rd Address Hexadecimal Code Label Op Code Commentary Columbus OH 43220 00 00 21 OF 00 ENTRY LXI H,RND Point to RNDM # storage. 00 03 7E MOV A,M Retrieve last random #. 00 04 87 ADD A Shift left once. The following algorithm for generating 00 05 87 ADD A Shift left again. 00 06 4F MOV C,A Store briefly. a pseudorandom number is based on the 00 07 86 ADD M Add unshifted number. !'power residue" method described in an 00 08 77 MOV M,A Store the sum. 79 MOV A,C Retrieve the temporary number. Data Processing Techniques bulletin. 00 09 IBM 00 OA 87 ADD A Shift left. The modification presented here preserves 00 OB 86 ADD M Add the sum again. the brevity of the power residue approach 00 OC 3C INR A Increment the sum. 00 OD 77 MOV M,A Store the new random number. and yields 256 8 bit numbers before re- 00 OE C9 R ET Return to calling program. peating. Any seed, including zero, can be 00 OF XX RND BS Random number storage. used prior to initializing the sequence. The algorithm is simply stated: to obtain the Listing 2: The equivalent routine specified for a 6800 processor. Note that for next random number, multiply the previous both the 8080 and 6800 versions, the code is completely position independent number by 13 and retain only the least so the absolute object code shown can be used without any modifications. significant 8 bits of the product, then add 1 Address Hexadecimal Code Label Op Code Commentary to the product yielding the new random 00 00 F6 00 OE ENTRY LDA B RND Load B with last RND #. number. In an 8 bit microprocessor this is 00 03 17 TBA Copy B into A. accomplished by a series of shifts and 00 04 58 ASL B Shift B left. additions. 00 05 58 ASL B Twice. 00 06 1B ABA Add to A. Listings 1 and 2 give an 8080 and a 6800 00 07 58 ASL B Shift again. version of this algorithm, requiring 16 and 00 08 1B ABA Add to A. 15 bytes of storage, respectively. Both are 00 09 4C INC A Increment A. 00 OA B7 00 OE STA A RND Store result as new simple subprograms which execute straight 00 OD 39 RTS RNDM #and return. through without any loops. 00 OE XX RND RMB1 Random #storage.

INTRODUCING NEMESIS 7 SURPLUS THE GAME WITH THE BRAIN FREE! .,, f of Terre.. of Irn.'A'.elr tu^potericud P ri'a tó S g -s a iog t., Of the rt technology DISKETTE O U w P CASE E P Attractive R CONTROL DATA Durable Plastic ` Easy Handling & Safe Storage BARGAIN FREE with every 10 Diskettes. . y7 Ar + 5V @ 8.5A - 12V @ 2A DISKETTES: Shugart 800, Altair, + 12V @ 2.5A +180 V @ 150 ma eleclronlcally Jupl lest er exactly the ancient ys -, +30V @ 200ma (unregulated) Helios, OSI, Digital Systems, u fNtm.mi.7 pebble. warev arranged i o ] column. of 7, S, ,. ) pebble. each. Play ulth an opponent. Each could -6.2V @ 25ma (no adj. pot) IMSAI, Innovex á. $5.50 any o all pebbles from . corn but could manipula., u nlyvane column per move. The loar took the I.., pebble. Brand new, made by CDC for MINI -DISKETTES: Northstar, For - Your eepecl. ble opponent In Neme.I.7 la a !thud prose microprocessor terminals. 110 VAC carwter c nairtIng of a custom detained 1.61 computer cull, in, regulated and adjustable DC trans IV, Smokey Signal, Metropo- cult To win ix extremely difficult but po :Able. :lumen opponents are elot outputs. Overvoltage protected +5, lis, $4.25 permitted. Shugart SA400 6 .say to hie kit Includes all part. (except b.uery> -12. Power status signal. Fan. from including emc m MUS computer circuit, PC board 6 Schematic. Original list $600+. Immediate Delivery Stock ,one soldering required 9.9S Bank Americard / Master Charge $ From stock, UPS paid. custom foam ':It liter require. no moldering $14.95 box, guaranteed. amplele factory asaamirloil grime. $16.95 $50.00 MANCHESTER EQUIPMENT CO. Ilaltery extra (9V lr...stor radio) $ 1.50 ELECTRAVALUE INDUSTRIAL 120 Bethpage Road include $1.50 shipping Nevada re.tdenis add 'S PST BOX 464 ,end check or money order to. Cedar Knolls, NJ 07927 Hicksville, N.Y. 11801 Computer Creations Inc. (201) 267 -1117 Call Collect: (516) 433 -0613 na West 2nd Street; Reno, Nevada; B9501

Circle 13 on inquiry card. Circle 26 on inquiry card. Circle 53 on inquiry card.

218 BYTE November 1977 www.americanradiohistory.com "(q/CATCHAPULSE II WANTED: 4 _ LOGIC PROBE GENERAL LEDGER Adventuresome 10 Nsec pulse response

0penci rcuit detection for 8080 Souls

Replaceable tip& card For New Horizons. Compatible with: 4400 lath input iegedance MITS Basic Horizon 1 Kit $1439 ,Ó Puise stretdtinp Horizon 2 Kit $1799 IMSAI 8080 Mulsi.famdy Cash Discount Prices We IMSAI, 10Nsec SPEED M35t 0 Price $300.00 also sell 15V LEVELS Cromemco, TDL, Vector ONLY Compatible with 539.95 4_ Graphic, Polymorphic, Seals RTL, DTL, TTL, CMOS, MOS, and Microprocessors using a 3.5 to 15V power supply. Thresholds automari. George Risk Industries and catty programmed. Automatic resetting memory. No Send to: adjustment required. Visual indication of logic levels, others. Call for Catalog Now. using LEDs to show high, low, bad level or open orcu,t Arrow Computer Service logic and pulses. Highly sophisticated, shirt-pocket (315) 637.6208 portable (protective tip cap and removable coil cord). P.O. Box 271 Eliminates need for heavy test equipment. West Jordan, Utah 84084 Send 939.95 A definite savings in time and money residents add for engineer and technician. Kahl call: 801 -268 -0130 TM 6 %sales taxi to out per, tese,,rewn.ntpe,e Or ."1 V ELECTRONICS Box 19299, San Diego, CA 92119, (714) 447 -1770 ' ...... P.O. Box 71 Fayetteville, New York 13066

Circle 6 on inquiry card. Circle 14 on inquiry card. Circle 29 on inquiry card.

CiiThe Digital Group Computer System owners now have available the finest Z -80 software ever produced. By Place an exclusive agreement with TDL we are able to release all their fabulous software ready to run in your DG System.

Here's what you've been waiting for- - Alpha Micro complete. user-oriented software! The Processor Technology following programs are available now! Hueristics Zapple Basic S40 Super Basic $79 KIM Macro Assembler $40 NorthStar Text Editor $30 Word Processor S40 TDL System Monitor S20 Industrial Microsystems And soon. a Fortran IV Compiler. You owe it to yourself to find out. Don't let your hardware be under -utilized. We service what we sell, Order now or send for our complete cata- HTC 88P kit $138 log. Bye Maxi - Hello Super write today for specs Homestead Technologies Corp. 186 Queen St. W 891 Briarcliff Rd. NE Suite B -11 Toronto, Canada M5V 1Z1 Atlanta, Georgia 30306 n dealers please inquire 14161 598 -0262 Telex 06 -22634 P.O. Box 4069=1 Pompano Beach, Fla. 33063

Circle 35 on inquiry card. Circle 64 on inquiry card. Circle 85 on inquiry card.

South Florida CANADIANS! Eliminate the Customs Hassles - -44- COMPUTER IT'S A GREAT BIG COMPUTER WORLD Save Money and get Canadian SUNNY But You Only Need Warranties on IMSAI and S -100 STORES, INC. I THE COMPUTER CORNER i- compatible products. 50L -A New Dawn Is Here! - South Florida's First Computer Store 4+- IMSAI 8080 IMSAI 8080 KIT $ 838.00 44- WE CARRY: POLY -88 -F ASS. $1163.00 44- TDL Z -80 -F ALPHA MICRO SYSTEMS, 14- Memories & I/O Boards -44- (Can. Duty & Fed. Tax Included). MICRO FILE, IMSAI 44- -+F Computer Book Service _44_- AUTHORIZED DEALER BOOKS, MAGAZINES, Magnetic Tapes & Disks -+4- Send $1.00 for complete IMSAI NEWSPAPERS . Full Line of Magazines FULL SERVICE 41- Brain Games & Puzzles Catalog. 44- Workshops & Club Information -14- We will develop complete applica- SOFTWARE 44- -14- WRITE OR PHONE US FOR Visit THE COMPUTER CORNER for tion systems. PRICES all your computer needs. Stop in and Contact us for further information. 7 browse - you'll like our personal service. MORE THAN JUST TOYS THE COMPUTER CORNER --lek- -4_. White Plains Mall -- Upper Level Monday 12 noon -9 pm 44- 200 Hamilton Avenue u 14- White Plains, New York 10601 -{I- Rotundra Tues. -Fri. 10 -6 Tel: 19141 WHY - DATA - -7r Cybernetics A UNIVERSITY SHOPPING CENTER -OA- Ample Parking -F{- 10.6 Daily & Saturday Box 1448, Calgary, Alta. T2P 2H9 1238A SOUTH DIXIE HIGHWAY Phone (403) 283 -8076 CORAL GABLES, FLA. 33146 '4` #4$ 4 4 #úa4444 i (305) 661-6042 Circle 25 on inquiry card. Circle 123 on inquiry card. uurcie tiM on inquiry cara. BYTE November 1977 219 www.americanradiohistory.com Laagesceo forum

GRAPLing with APL

William Leler sent us the following letter Since APL creates and destroys large detailing his thoughts about APL and arrays frequently and at random, storage GRAPL. The latter is a new language Mr management must be done with some Leler is currently helping to develop. sort of free space list (which eats up storage) and a garbage collector with full

William Leier I have used APL professionally for many compaction of free space (which really Visual Comforts Etc years, implementing such things as Jay eats up time). This means that, while on a Box 2671 Forrester's simulation of the world and a large system most FORTRAN or PL /I Houston TX 77001. graphics animation package with which I programs will completely fit in 128 K, have produced several movies. But there are an APL program is given (normally) 64 K many severe limitations to APL, some of bytes just for data and a symbol table, which become critical on small systems not to mention the space occupied by the like the typical microcomputer. A few of APL system. these are: Almost no translation can be performed on APL code. Every time a variable name All arrays in APL must be homogeneous, is encountered, it must be looked up in ie: all elements must be of the same type. the symbol table. A lot of wasteful data Since APL does not allow data structures checking must be done before the simp- (like PL /I or COBOL), it is sometimes lest operation can be performed. difficult to define variables that are con- Character handling in APL is clumsy and venient to manipulate. This results in difficult to code. Only with great effort more computer time being spent getting can APL code be made self- documenting. the data into an array for a simple APL Trying to decipher old code (even my matrix multiply than the time required to own) quickly leads to the funny farm. actually perform the multiply. APL simulates operations in parallel so But APL has many great features, several

well that there are no constructs for oper- of which I wish would be available on a

ations serially (such as a looping con- microcomputer. I have found many of these struct). This leads to much wasted com- features in a language called G RAPL. putation (ie: testing all elements of a GRAPL at first looks similar to APL, but character vector to see if they are equal there are changes and improvements, far too to a space when all you really want to do many to list here. But just to begin: is find the first nonblank character). This may not mean much on, say, the IBM GRAPL uses symbolic operators (like 370, but it slows a microcomputer down. APL), but GRAPL uses the standard APL is terrible for dataset management. ASCII character set with no overstrikes. APL has no interrupt action other than The large set of operators is derived by the ability to break to the terminal user. allowing two character operators. This requires explicit tests to be included APL execution is from right to left; for such things as zero divides, etc. There GRAPL is from left to right. No oper- have been patches for this, but they are ators have precedence over others. hard to use. GRAPL is block structured like ALGOL,

220 BYTE November 1977 www.americanradiohistory.com REMEMBER BYTE Disc /3 16K the affordable computerSHOP store DISC /3 COMPANY S520 7825 BIRD ROAD OF COMPLETE MICRO (305) 264.2983 MIAMI BUSINESS SYSTEMS Features; DIAL 264 -BYTE Soroc IQ 120 STATIC OPERATION ACCESS TIME 25On9 (assembled $899.951 5,00 BUS COMPATIBLE WE HELP YOU GET YOUR SYSTEM LOW POWER TYPICALLY Lear Siegler $ 799.95 205mn 9. UP AND RUNNING. 105m., 16v ADM -3A kit 24m., 19. nug IMSAI 8080 MEMORY EXPANSION BATTERY BACKUP BYTE -8 COLOR TV GRAPHICS IMSAI 8080 kit $ 599.95 SWTP MP68 LEAR SIEGLER ADM 3 Centronics Business $1145.00 CROMEMCO PAPER TAPE READER PROCESSOR TECH Printer (132 columns) INTERFACES (KITS or ASSEMBLED UNITS) AVATAR SYSTEMS IN FORT LAUDERDALE Disc /3 DISC /3 COMPANY E Pk Blvd 3930 SWENSON 1044 Oakland 1840 LINCOLN BLVD. BOX 223 SANTA MONICA, CALIF. 90404 LAS VEGAS NEV 89109 561 17021 733 8304 (305) -2983 (213) 451-8911

Circle 7 on inquiry card. Circle 19 on inquiry card. Circle 48 on inquiry card.

TYSON S CORNER. VIRGINIA (WASHINGTON. DC AREA) Washington D.C.'s THE Newest Computer Store COMPUTER SYSTEMS 301 -565 -2711 Microcomputer STORE Intelligent systems, peripherals, custom "Specializing in Systems" Business programs for business, service, FEATURING: sound counsel on equipment Processor Technology Lear Ste, Machines, Inc. selection. Poly Morph.c DEC Diablo SWTPC We IMSAI, ICOM, E E L Seals stock Vector Graphcs Digital Group Technical Design Labs, Vector Apple TDL CROMEMCO Books - Magazines Cromemco, IMSAI, Graphics, Heuristics, and other COMPUTERS FOR HOME. SCHOOL. P. SMALL BUSINI-SS I, lines, and provide business Our stall will help you select Iron the best of each manutac TDL, Administrator lurer lo Compete the system best suited to your needs SEALS, DIP Chips, etc. packages and engineering SPECIAL: LEAR- SIEGLER ADM 3A design.

COMPUTER SYSTEMS STORE Come see us at Microtex, Inc. 1984 CHAIN BRIDGE ROAD. McLEAN, VA. 22101 938 Ellsworth Dr. Microcomputer specialists TELEPHONE (703) B21-8333 Silver Spring, MD 20910 (713) 780 -7477/9305 -D Harwin OPENING SOON 301 -565 -2711 ALEXANDRIA VA NORFOLK.VA BALTIMORE MD ORLANDO FLA / Houston, Texas 77036

Circle 37 on inquiry card. Circle 72 on inquiry card. Circle 90 on inquiry card.

SAVE 5to15'/) LIST SALE PRICE CHESS IMSAI 8080 W/22SLOTS S751 3649 PRODUCTION LINE POLYMORPHICS SYSTEM 2 S735 S675 SHUGGART MODEL 800 S650 S595 TIME IN BASIC AVAILABLE IN SIMILAR DISCOUNTS ON: IMSAI 4K, 16K, 32K RAM, M 10 etc. JAPAN POL YMORPHICS VIDEO

Circle 150 on inquiry card. Circle 31 on inquiry card. Circle 153 on inquiry card.

BYTE November 1977 221

www.americanradiohistory.com which allows a simple and efficient useful for computer aided instruction stacked storage management scheme. and other dialog. GRAPL programs are just character GRAPL programs are completely free strings, so, like LISP, code can be written form and, as in the case of FORTRAN, by other programs and executed. This spaces are ignored. This allows programs technique is extremely powerful in to be formatted to make reading easier, GRAPL, because much of the GRAPL or allows code to be compressed for system is written in GRAPL to allow user efficient storage. modification. For example, in APL, all When a program is executed, it is par- function editing is done by special func- tially compiled and then executed inter- tion editing routines in a special function pretively. This is one of the fastest definition mode. Editing must be done a methods of execution. line at a time. Thus, simple tasks, such as Errors are handled either by the user or changing all occurrences of the name A to by interrupt routines. Interrupts can be the name B, are made very time -con- signaled in code or with a timer to allow suming. In GRAPL, the function editing for such things as concurrent processing routines are written in GRAPL so that and IO, or a limited form of multitasking. they are easily modified or rewritten to GRAPL retains the interactiveness of suit the user's tastes. APL. GRAPL has some pattern matching

similar to SNOBOL4, which makes tasks I have been involved in the formal defini- such as program editing a lot simpler. tion of GRAPL and its implementation on GRAPL has a nice set of data types an IBM 370 for a year now, and am begin-

ranging from bit strings to integers to ning a Z -80 version which I hope will fit in real numbers to three -dimensional points 24 K bytes of memory (including some and lines. Needless to say, GRAPL is space for user's programs). GRAPL should very good at computer graphics. prove to be not just a pacifier for people As well as looping construct, there is a who want APL, but a distinct improvement construct similar to a KEIL structure with more general applications.

All Prime Quality - New Parts Only Lowest Prices - Satisfaction Guaranteed

EDGE CARD CONNECTORS: 25 PIN SUBMINIATURE CONNECTORS:

Bifurcated Contacts. Not tin. Gold over nickel. 50/100 Pin (.100 Gold Plated Contacts. Pin spacing). Double Read out. DB25P Plug $3.10 ea 5 pcs $2.95 ea 50/100 Altair Type - Dip Solder Pins $4.25 ea 5 pcs $4.00 ea DB25S Socket $3.90 ea 5 pcs $3.75 ea 50/100 I msai Type - Dip Solder Pins $4.25 ea 5 pcs $4.00 ea DB51212 -1 Hood (grey) $1.50 ea 5 pcs $1.30 ea 50/100 Imsai Type with Guides $4.50 ea 5 pcs $4.25 ea DB51226 -1 A Hood (black) $1.80 ea 5 pcs $1.60 ea Imsai Guides only $ .30/pr 5 pr $ .25/pr SAVE: All other contacts available: Solder Eyelet, Wire Wrap, etc. All gold. Buy a complete set: Many other types available: 10/20, 15/30, 18/36, etc. 1 Plug, 1 Socket, 1 Hood (any) $8.00 /set When ordering: specify type of contact. 5 sets $7.50 /set

2708 1 KX8 PROM 8080A - PRIME Write for larger quantity discounts. $22.95 ea $18.00 ea 5 pcs or more $21.50 ea 5 pcs $17.00 ea Dealers welcome.

Minimum order $10.00: Add $1.00 for shipping and handling. When ordering: Orders over $25.00: We pay the shipping: Calif. residents add 6% tax. State method of shipment: No COD's: For immediate shipment send money order or cashier's check. Mail or UPS.

ORDER FROM: Beckian Enterprises P.O. Box 3089 Simi, Calif. 93063

222 BYTE November 1977 Circle 9 on inquiry card.

www.americanradiohistory.com ELECTRONIC TOUCH ORGAN KIT ELECTRONIC Fantastic new design uses CMOS I.C. and a to- SWITCH KIT tal of 39 semi -conductors to give a touch con- CONDENSER TYPE trol keyboard, all the electronic parts in one PC Touch on Touch Off Board. This organ is easy to build, yet has fea use 7473 I.C. a range tures like full two- octave touch key- and 12V relay board, variable tremolo; two voices; built -in I.C. amplifier with volume control, complete with $5.50 each speaker and a specially designed plexi -glass case. SOUND ACTIVATED SWITCH BATTERIES NOT INCLUDED *Ideal kit for beginner or gift for f Ail pens completed on as. C Basra children $24.50 ea. SCR w hen tripper other for 2 +lil Dec. le0lunablcl Noel lm u47 n O4or alarm sound c 0l led toys mmy other -gvne 30MHZ FREQUENCY COUNTER KIT Supply voltage 539V D,C. Take advantage of this new state-of- the art counterfeatunng the many benefits of custom 51.75 ea./2 for 59.00 LSI circuitry. This new technology approach to instrumentation yields enhanced perfor. manee, smaller physical size, drastically reduced power consumption (portable battery Sub -Mini Size 38.r operation is now practical), dependability, easy assembly and revolutionary lower pricing! Condenser Microphone 0.5" red LED 6 digits display $2.50 each c Resolution: 1 Hz at 1 sec. 10 Hz at 1/10 sec. FET Transistor BuiltIn Only 59 J Sensitivity: 10 My RMS to 30 Hz Internal power supply: 5,2V at 1 amp regulated SIGMA 78RE1, 12DC RELAY Model 250 Includes all parts, Input connector. BNC type -30A PC Board and Transformer Input power required: 117V AC 50/60 He 4008 COIL SPOT Diode protected for over voltage input $1.30 ea. or 10 for $10.00 CALCULATOR ALL BRAND NEW UNITS with STOPWATCH LCD DIGITAL THERMOMETER COMPUTER GRADE CAPACITORS 6 Functions with % and memory Desk Top Model , 5,600 MFD 60V 52.20 ea. 8 Digits big green display 10,000 MFD50V $3.25 ea. Built -in X'tal controlled stop 86° F 11,500 MFD75V $3.95 ea. 10 66° - watch count to 1/10 of a second. 34.800 MFD 50V 54.25 ea. Special Price Only each 39,000 MFD 12V 52.00 ea. Only $3.75 100,000 MFD 6V 53.50 ea. $16.50 Ea. BATTERIES Nor INCLUDED QUARTZ CRYSTALS TV Gomes CLOCK KIT 1 MHZ $4.95 MOST POPULAR Matt AUDIO AMP 2 MHZ 05.25 MM S314 KIT All parts are pre assembled 4 MHZ 55.25 LîI En I.1 on mini Board 10 MHZ 55.25 3 579 MHZ 5125 OWNS Supply Voltage 6^- 9V D.C. Color TV Type Solos Only 05,5314 C!us C , PC ea.-was and SPECIAL PRICE $1.95 ea. co p CB MICROPHONE S19.So 2W + 2W STEREO AMP Je NATURES, Special Only S14 95 ea. All parts completed on a PC Basra 500 MIC for CB Unit 4 Games - Tennis, Hockey. 2 LM380 I.C.. volume. Talk Switch with Racquet Handball and Sin. bass, treble control included and Cord gle Handbell. MINI -SIZED I.C. Supply voltage: 9 15V D.C. Connector Auto counter display on Sensitivity: 100Me for full output $2.50 each /3 for $5.00 the screen. AM RADIO Total harmonic distortion CLOSE OUT SALE 1 %C 1 KHz Ea 1.5 watt Size maller than a box of matches!! Output is short circuit protected WIRE s Receives all AM stations ONLY S5.75 ea. TV GAME MODULATOR UNIT Batteries and ear phone included FCC Approved WRAPPING -..la SW AUDIO AMP KIT For channel 3 ami 4 with 0cc. TOOL Only Es30,,,wpiityy Con $8.50 llllIll ' Po I18V DCntrol $29.50 Deily $5.00Da. ONLY $4.50 Wire Wrapping TI 1955 In Bulk Alternativa AY] 8500 1 ar-e TIMER KIT 6 Game 128 Pm Dip) 100' $2.00 Time Controlled from 1- 100sec. TV Game Chip with Data 500' $8.50 Tennis Squash hockey. Ideal to be used as time delay practice b 2 shooting. unit for burglar alarm, photo Special Only $6.50 Sub Mini Size service, and other purposes. PC Boerd for TV Game with Data 52.50 ea. PANEL METER Calli=tw Max. loading 110V, 2 AMP. Switch Boa between Game b TV 51 25 ea s- 500 UA Supply voltage 12 18V O.C. ONLY $1.20 ea TOGGLE SWITCH IC TIMER $11.50 each NI -CD Halls,rc of submin, toggleswrten F ELECTRONIC MAT CNEOPAIR rated 3 amp 125V AC contact RECHARGEABLE POWER TRANSISTORS 77 1 9 10 99 MOTOROLA MJE2955 PNP ELECTRONIC SIREN BATTERIES 5 243217 SPST 0 So 0 SO ALARM C//{{ MJE3055 SPN MS vea SPOT 1 00 0 90 ea. 1 COMPLETE UNIT AA SIZE, 1.2V $1.25 . 0 AMP 60 VOLT 90 WA TS MS 245 DPDT 1 20 1 10 Ideal for useas an Alarm Unit, C SIZE, 1.2V $1.50 ea. $225 PER PAIR or hookup to your car backup SUB C SIZE $1.50 ea. i - LARGE QUANTITY AVAIL F SIZE, 1,2V $2.50 ea. FOR to make a reverse indicator TRANSFORMERS OEM Light Output up to 130 dB. 9 5 SUB C 6V PACK $4.90 ea. Voltage Supply 6 --12V ALL 117 VOLT INPUT SUBMINIATURES TOGGLE AU-999 BATTERY HOLDERS 30V at 15 amp 530.00 ea. SWITCHES for 9V 006P (Clips / 0.25 ea. at 3 4.50 Sr 19 for 4 AA size 0.40 ea. 36V CT amp 5 ea. S .14 Sear tRI O. 3O ea KEY HEXADECIMAL for 6 AA sire 0.50 ea. 50V CT at 25amp S 4.50 ea. OPDr On On s, SO ea KEY PAD for 2 C size 0.35 ea. 12V CT at 2Samp $ 4.50 ea. 3POT on Off 51 15 ea for 4 C size 0.50 aa. 24VOr24V at tamp $ 3.80 ea. ' reu 1 -0 Homekey for 6 D size 0.50 ea. 24V CT at BOOMA $ 1.80 ea. IIU Anon A.e.n, ree , mee Same e a..ce ABCDEF 9-4Key 0.8V 12V er 400MA $ 1.80 ea. i 1b SPECIAL $10.50 ea. ON- SCREEN TV AC POWER SUPPLY AtleptarAdapter TType TrensTOrmer JOY STICK CLOCK KIT 4 rosir Low Cost Hexadecimal 16 Key Pad 12V AC 200 MA volume cor .n one Same one as in July Radio Output Designed for Calculator $2.75 each porfionai Can be used for Computer Electronics. Kit includes PC to the ange O Data Entry Pad or Digital Lock Board, MM5318 and MM5841 6V Dr' Output 130MA $1.90 ea. All key tops blank with super chip. 8.7VDC Output 130MA 51-90 ma. games °' mode is good touch reeling SO 95 ea. All other electronic parts 12V DC 100MA $1.90 a.. only $5.50 with transformer. Output DIGITAL ELECTRONIC LOCK KIT ONLY $21.00 PUSH- BUTTON SWITCH 150UA METER L---'¡^ N /Open Contact for aura 4gri11a0n, enre BIPOLAR LED )-tr i{ Color: Red, White, Blue, doer, berg ,lean, etc only T $6.50 ea. Jumbo Size red /green change color "':`°f í Green, Black. 4 /$1.00 ;MOs 4 Digits Programable to N /Close I.c. Ar1Y Combination when reverse polarity of voltage. also S CIRCUIT $1.50 ea. Available 50¢ ea. 00Á RELAY AND HEY PAD NOT INCLUDED Ideal for go /nogo indicator. LARGE OTY AVAILABLE Two for $1.00 POWER SUPPLY KIT 50 UA PANEL METER SOLID STATE ELECTRONIC BUZZER 0 -30V D.C. REGULATED I.C. TEST CLIPS pst Uses UA723 and ZN3055 Power sla.em`ir I, m oa Same as the E Z clips TR output can be adjusted from but Alarm With 20- Long Leads own 0 -30V, 2 AMP. Complete with PC scale suraOnd ropBanda or Tone ln ¢z o, new m epa \ board and all electronic parts. In Black and Red Colors $2.75 per pair Only $3.80 ea. J 51.50 each $9,50 each Transformer for Power Supply, 2 AMP 24V It 2 $4.50 ea. MINIMUM ORDER 510.00 California residents add 6% sales tas 30V OC Panel Meter $4.20 All ordersada 10% postage far Out alstate Overseas nnuntn o, add 15% Of Cotai orrice for postage SEND CHECK OR MONEY OROF e 10 MA1003, 12V DC CLOCK MODULE `1 /' Built in X'TAL controlled time base. Protected against FORMULA INTERNATIONAL INC. automotive volt transients. 126C3 CI1ENSru,`: POul FL/All', ,1.14 ,,O:ihE L AL ll D/1NIA 90250 Automatic brightness con- 10 For more ,nto,mar,on vi 'sur c ara (213, 6/9.5162 trol with 0.3" green color STORE HOURS 10 7 Monday Sarurday display. Display turnoff mule, charge 0IAM4AYFBIGag with ignition "OFF ".

223 Circle 59 on inquiry card. BYTE November 1977

www.americanradiohistory.com My suggestion is this: instead of adding Virtual Memory and VSAM for Micros features to the interpreter (in the form of READ and WRITE commands as in FORTRAN) to handle direct access files, Concerning the APL articles in the why not make the entire disk surface part

August 1977 BYTE, I have not yet seen any of virtual memory. The available space will mention of direct access file handling for be the same as if the older direct access Mark Dahmke APL. Since many small systems users are methods are used, but this gives the user 1393 8th St processing text, mailing lists, medical re- the opportunity to store large files and data David City NE 68632 cords, and scientific data, file searching on a as arrays in memory. Thus one storage floppy disk would seem to be of great method is used and each disk surface can importance. be treated as one large APL (or other In the past, the disk or tape access language) workspace. method software was generally cumbersome Since reference was made in one article (and still is in languages like FORTRAN). to the difficulties of handling large arrays

Unfortunately, I am seeing the same mis- in user programmable memory, and the takes made in the software development on need for more than 20 K of memory to

microcomputers. I suggest taking a look at hold the interpreter and workspace, the use the virtual storage techniques used on of a floppy disk as virtual memory could

systems like the IBM 370. A special access alleviate most of the problem. In fact, I

method called VSAM has been developed used to work with APL on an I BM 1130 that allows data on disk or tape to be with one disk and only 8 K of core memory treated as if it were in programmable and almost all of the workspace was kept memory. Instead of giving a file record on disk. Most of the 8 K not used by the number, or track and cylinder address, one interpreter was used as temporary storage.

simply gives the address of the particular I hope that those who write the new byte or block to be retrieved, and VSAM APL interpreters will consider what the does the conversion to physical address. new technology has to offer before fol- This also makes VSAM device independent! lowing the old designs.

NEW 8080 and 8085 REFERENCE GUIDE

A TOTALLY NEW CONCEPT! SAVES TIME AND MONEY! MAKES YOUR JOB EASIER! 1 A powerful new tool for every serious 8080 user - professional and novice alike. 1 Priceless timesaver for engineers, technicians, and programmers. Saves time and money in the lab, on the production line, or in the field. 1 Convenient pocket size - 33ié by 73/4 inches - gives quick and easy access to all vital 1 reference data. No more searching here and there for codes, instructions, or definitions. 1 It's all there - at your finger tips - everything you need to successfully use the 8080A and - Intel's new 8085 microprocessor. 1 Features cross listing, for rapid assembly and disassembly, of MACHINE CODES and 1 MNEMONICS Concise description of 8080 and 8085 OPERATIONS, SIGNALS, PINOUTS, and INSTRUCTIONS Convenient cross conversion of OCTAL, HEXIDECIMAL, DECIMAL, ASCII, and EBCDIC codes Easy -to -read tables of powers 1 of two, eight, and sixteen ... and much more ... Sturdy Handsome Easy -to -use Data Packed 1 Your timesaver will give many years of professional service. 1 $12.95 each (plus postage & California sales tax) - 25% discount for 4 or more. 1 I MoneyBack Guarantee: You must be fully satisfied or simply return the guide within 15 days forfull and prompt refund. 1

URBAN INSTRUMENTS 4014 CODY ROAD DEPARTMENT Cl I BANNAMERICARD SHERMAN OAKS CALIFORNIA 91403 , PLEASE SEND 8080 timesavers to: CHECK /M.O. ENCLOSED BANKAMERICARD MASTER CHARGED I NAME CARD NUMBER STREET

CITY GOOD THRU 4 DIGITS ABOVE NAME (MASTER CHARGE) I STATE------ZIP SIGNATURE ll 224 BYTE November 1977 Circle 154 on inquiry card.

www.americanradiohistory.com i Circle 111 on inquiry card.

Orders under $25 and COD's add $2 Page Digital Electronics All others shipped UPS Ppd. Lowest Prices on 1701 East Orange Grove Blvd Visa and Mastercharge accepted Pasadena, California 91104 W ire Wrap Supplies! Orders under 525 and COD Orders add $2 All others shipped UPS Pptl. (213) 797-4002 or 797-4007 We accept Visa and Mastercharge

Precut Wire Wrap Wire Bulk Wire Wrap Wire Wire Wrap Sockets Kynar wire 1 roll 5 rolls 10 rolls 100 500 1000 5000 Gold 3 -Level Closed Entry Design 50 1t 1.25 1.15 1.00 3 " .82 2.60 4.71 4.22 1001t 2.00 1.80 1.75 1 -9 10 -24 25.99 100.249 250-999 1 K.SK 315, .86 2.80 5.12 4.55 250 ft 4.00 3.50 3.00 4 .90 3.00 5.52 4.88 10001t 12.00 10.00 8.00 8 pin .41 .38 .35 .31 .29 .27 14 pin .42 .39 .32 .29 .27 4''/," .94 3.21 5.93 5.21 .36 ,. 16 pin .46 .43 .39 .35 .32 .30 5 .98 3.42 6.34 5.52 59" 1.02 3.65 6.75 5.86 . 18 .63 .58 .47 .44 .41 6 1.06 185 7.16 6.19 pin .54 Wire Wrap 20 pin .84 .78 .71 .63 .59 .54 fiY," 1.15 4.05 7.57 6.52 Kit 1 22 pin 1.30 1.20 1.10 .95 .90 .84 7 ' 1.20 4.25 7.98 6.85 Starter Kits $6.95 7''/," 1.25 4.45 8.39 7.18 24 pin .91 .84 .78 .68 .64 .59 8 " 1.29 4.65 8.80 7.53 250 3" 100 47," 28 pin 1.25 1.15 1.06 95 .89 .82 Kit 2 250 3'K" 100 5" 40 pin 1.65 1.55 1.42 1.25 1.15 1.09 8'h" 1.32 4.85 9.21 7.84 519.95 100 4" 100 6" 9 " 1.36 5.05 9.62 8.17 'End and side stackable sockets 9Y," 140 5.25 10.03 8.50 500 3" Kit 3 10 f 1.45 5.51 10.44 8.83 500 3X" 100 58" S8.95 Add4.l .10 .41 .82 .66 500 4" 100 6"

1 WSU30 Colors: Red, Blue, White, Yellow, Orange, Green, 500 4y; 6Y," 50 3 Black. All lengths are overall with 1" strip on each 250 5" 100 7" 50 4" 1 soft roll end. 1 Roll 250" wire 50 5" wire Wire Wrap Boards WW 14 5 -9 10.24 Connector

HPCB 1 404% 44 Buses on both sides 4.75 4.50 4.00 3.00 Wire Wrap Interconnect Cables 3662 406 44 Blank 6.25 5.85 5.50 3.00 Tools 3682 4x10 44 Buses on one side 10.50 10.00 9.50 3.00 BW360 Ribbon cable connectors for connecting boards to Battery Operated front panels, or board to board. 3682 -2 4x6 44 Buses on one side 9.50 9.00 8.25 3.00 Hobby Wrap Tool 4066 -4 4x6 72 Buses on both sides 13.50 13.00 12.50 4.00 Single Ended Double Ended Auto-Indexing 3719 -1 4x6 72 Blank 9.00 8.50 8.00 4.00 S34.95 Extra Bit $2.75 14 vin 1fi pin 24 pin 14 pin 16 vin 24 pin with Free C Batteries 2/$5 3719.4 4010 72 Blank 11.00 10.50 10.00 4.00

Wire Kit 1 26.28 AWG Bit 57.50 6" 1.24 1.34 2.05 2.24 2.45 3.73 4350 7097, 80 Buses on both sides 17.50 16.50 16.00 7.00 12" 1.33 44 2.24 2.33 2.55 3.92 8800V 10x5.3 100 Buses on both sides 19.50 17.96 16.95 5.00 WSU3Otool Hand Wrap /Unwrap /Strip 55.50 24" 1.52 1.65 2.63 2.52 2.76 4.31 WSU3OM Same but wraps 1',', turns insulation 56.50 48" 1.91 2.06 3.40 2.91 3.17 5.08 169P84 8'4017 - Blank 6.25 5.75 5.25 - 1110 4K RAM BOARD 80 LINE DIGITAL Assembled and tested. $89.95 I/O BOARD See below. kit -Bus Fully Buffered - 4K RAM BOARD KIT -I/O Includes 4 -6820 PIA's 450ns Access RAMs -Compatible With Our Bus Fully Buffered -5V Only Low Power $79.95 Static 5V only KIT 559.95 41/2 x 6 inch board Buy 4 RAM Board kits at $79.95 each and an 8 slot 2102 - $1.30 Multiples of 25 only. Mother Board is yours Low power, 450 n.s. Access and cycle. Includes 8 connectors and card guides. FREE. MOTHER BOARD MAKE CHECK OR MONEY ORDER PAYABLE TO: 8 SLOT 44 PIN BUS Kathryn Atwood Enterprises 50 Pin Edge Connector P.O. Box 5203, Orange, CA 92667

Discounts available at OEM quantities. For orders less than Mother $20.00 ea Board $25.00 total, add $1.25 for shipping. California residents Connectors 2.50 ea add 6% sales tax. Estimated shipping time 2 days ARO with Card guides for above $10.00 per set. money order. For checks allows 7 days for check to clear.

Circle 5 on inquiry card. BYTE November 1977 225 www.americanradiohistory.com FOR SALE: Teletype Model ASR -33 with MITS call-control unit Model 88 -TVA, stand and one case of roll paper, brand new, never used, $995 or best offer. Bob Majdanski, 214 Coolidge Av, Hasbrouck Heights NJ 07604. (201) 286 -3742 after 7 PM.

FOR SALE OR TRADE: Texas Instruments Ads LCM -1001 manual Classified Microprogrammer trainer with and book, Software Design for Microprocessors, all in excellent condition. $100 or in trade towards FOR SALE. Two Viatron 21s, one with robot FOR SALE: HP9815A programmable calculator HP -25, 55, 65 or amateur radio gear. Also have printer. Also, SwTPC 6800 with Ct 1024 factory with extended memory,carry case, four cartridges, complete file of BYTE in mint condition for sale tested. Two credit card readers. One Univac thermal paper, manuals: excellent condition, or trade. David J Lowenstein, 235 E 15th St, typewriter terminal. Best offer. Greg Ludwig, over $3600 new. Asking 52600. Walt Goldys Tempe AZ 85281. (602) 966 -0140. POB 408, Rice Lake WI 54868. (715) 234.2680. 200 S Glenn Dr, =53G, Camarillo CA 93010. 18051 482-4674. SWAP: YASEU FTDX570 amateur transceiver in FOR SALE: New (three months old!) IMSAI mint condition for Altair or IMSAI Microcom- FOR SALE: 113 point EDP physical security 8080 microcomputer system. This complete and puter. Specify cash differential and write Tom checklist with risk management briefing and functional system includes: Seals 8 K memory, Polymorphic video display connected to Harmon, R4 Magnolia Dr, Salisbury MD 21801. bibliography. $5 postpaid. D J Scherer, 29 Rey - board (301) 742-4742. mont Av, Rye NY 10580. GBC monitor and SwTPC keyboard. Tarbell cas- sette interface attached to GE cassette recorder, as- sembler and BASIC on tape, all manuals, monitor, WANTED: Software for the Fairchild F8 micro- FOR SALE: ASCIISCOPE 12 by 80 $550 with and at back panel computer. Lloyd Lawrey, 8926 N Sammy Ln, documentation; Solid State Music M83 with 4 K keyboard, recorder disconnect greater Perfect for hobbyist, $2350. Kansas City MO 64155. 1702A $125; MITS 4 K Dynamic$125; Proc Tech for mobility. Joel Schwartz, 5 The Maples, Roslyn Estates NY VDM $170; 3P and S $135; Pennywhistle MODEM EDITOR ASSEMBLER: Enhancements for the $80; OAE Tape Reader $65; IMSAI 4 K STATIC 11576. (516) 484-5732. IMSAI SCS -1. Have package which will add re- $120. All assembled fully socketed and factory sequencing of the current file on command; checked out. K R Roberts, 10560 Main St, Suite FOR SALE: 3M DC300A data cartridges which work in the IBM 5100, TEKRONIX, DEC and printing of the symbol table on command; a new 515, Fairfax VA 22030. op code, ASC, which will allow an ASCII string similar equipment at a club price of $18 per data constant of up to 30 characters to be defined per FOR SALE: One IBM Model 735 10 Selectric cartridge plus the cost of postage. IBM 5100 Users Group, do HITS Inc, 5541 Parliament Dr, Suite line of source code. Package is stored in memory typewriter. Correspondence wiring. 15 1 /2 inch locations 0E50 - OFFF. No additional memory platten and prints 132 columns. Good documenta- 104, Virginia Beach VA 23462. (804) 490 -0154. required. An INTEL checksum paper tape con- tion. Good condition. $650. Sam Weiman, 9396 taining object code, a complete source listing, and Fernbury, Cypress CA 90630. (714) 827 -7432. FOR SALE: Complete NCR 315 -100 data pro- complete documentation for $7.50 postpaid. cessing system. Includes 315 -100 mainframe, James E Bell Jr, 491 Johannah PI, Lilburn GA FOR SALE: New Sphere computer system, still in console with 1933 Teleprinter and power supplies, 30247. unopened boxes from factory. System contains: 24 10 K by 12 bit core memory, five 334 7 track h by 80 chr CRT, 36 K programmable memory, 2 inch drives, 340'-503 high speed FOR SALE: A dozen bidirectional 1.8° stepping serial interface ports one cassette), 4 parallel inter- printer (120 characters per line, 800 lines per min- motors, new, unused, Computer Devices Model face ports, keyboard, power supply, dual Orbis ute) and an IBM 1442 card reader /card punch. All 23H -02, $35 each. Requires 0.5, 1 A/15, 25 V floppy disk drive, and an Okidata line printer units are intact and in perfect operating condition. power supply. Driving (stepping) circuit can be with tractor feed. Price $6850. T W Reeves, 290 Complete schematics, service and operating assembled for less than $10. Easily controlled via a Almak Ct NW, Issaquah WA 98027. (206) manuals are included. Looking for offers on all or parallel 10 port on a microcomputer. Ray Wilhelm, 392 -1447 or (206) 655-5308. any part. Gary Boehm, 1671 Timmy Dr, Hamilton 40 Bear Mountain Rd, Ringwood NJ 07456. OH 45011.

FOR SALE: Complete set BYTEs, 1 to present, WANTED: BYTE issues 2, 3, 8 and 9. Contact $75. John Wagner, 2175 Wagner Dr, Caro MI Larry F Tonar, PFC 547969268, B Co 1st Br 48723. FOR SALE: HP9810A computer system including USAISDSB, POB 921, Fort Devens MA 01433. 10 by 15 inch plotter; audio cassette data storage WILL SELL: 15 cps Selectric 10 printer, 1621 unit; ROMs for plotter, cassette, math functions, COSMAC: Does anyone in the San Francisco CA paper tape punch and reader, IBM console key- alphanumeric printing, definable functions; plus area have a COSMAC system? If so would you like board printer, for best offers; IBM 1311 -3 2 M lots of general -purpose software written by HP to start a COSMAC users group or club? Write or drive with two disk packs, $400 or best offer. All and me. This system is ideal for a scientist or call Don Heiden, 1361 Kansas St, San Francisco stuff with full documentation. Henry Birdseye, engineer doing independent research who cannot CA 94107, (415) 285-6966. 316 Jefferson NE, Albuquerque NM 87108. (505) afford a full -scale computer system, but who needs 268-4727 10 PM to 11 AM. good quality plots for publication in journals. West FOR SALE: SwTPC 6800 computer with 16 K Los Angeles area. Call Gary Bedrosian weekdays at memory $600; AC -30 cassette interface $60; and a FOR SALE: IMSAI P1044 parallel and 5102 -2 (213) 478 -3035. Lear Siegler ADM -3 dumb terminal $700. All serial interface boards. $155 each, cables also components of this system are burned in and available. Various 4 K programmable memory

working. I will also include 4 K and 8 K BASIC, boards, $125 each, all assembled and tested. BYTE FOR SALE: BYTE #1, 2 and 3, $25; ;f$9 and 10,

Star Trek, and other software free. John Victor, numbers 1 thru 4, $10. Trade any boards toward $15; all five, $30. Wanted: Used, working micro- 11 Idar Ct, Greenwich CT 06830, (203) 869-4479. floppy disk? Dieter Kaetel, .7201 -87 SE, Mercer computer system under $1000. Donald Erickson, Island WA 98040. (206) 232 -1513. 6059 Essex St, Riverside CA 92504, (714) 687- FOR SALE: New SwTPC CT -1024 video terminal, 5910 2 PM to 9 PM any day. KBD-5 keyboard option, CT -CA cursor option, FOR SALE: Pertec 7850 9 track magnetic tape drives elec, $275 manual; 412 V 3A and CT -S serial option, CT -P power supply, in custom with with black metal case, running and ready to plug into 45 V 5A supplies, $25; Superior Elec TRP125 120 FOR SALE: Viatron Print Robot and plans for your SwTPC 6800, $450. Reason for selling, using bps optical reader, $200; IVC 600 color video interface, $60. Converts Selectric and other HAL DS -3000 for both ham station and computer. recorders with manual $300. (originally $2700) typewriters to printers without internal mods, MSI case and via G Henderson K Slobb, W9BT, 1605 Oakwood Rd, Northbrook with tape; FD8 disk power supply keyboard. Like new, Lyons, 280 $85. Gary Gaugler, 2276 Beaver Valy Rd, Fairborn St, Jersey City NJ 07302, (201) 451 -2905. I L 60062, (312) 272 -1223. OH 45324. (513) 878 -0288.

FOR SALE: Altair 8800a processor $600, 88 FOR SALE: Six 4 K dynamic memory boards Readers who have equipment, software or other 4MCS 4 K static memory card $200, 88 -16MCS 16 (MITS), $150 each, and two 4 K static boards, items to buy, sell or swap should send in a clearly K static memory card $800, 88 -DCDD disk drive $150 each. Robert K Snider MD, Medical Arts typed notice to that effect. To be considered for and controller $1500, 88 -2SI0 serial Teletype Center, 1230 N 30th St, Billings MT 59101. publication, an advertisement should be clearly interface $150, 88 -ACR audio cassette interface noncommercial, typed double spaced on plain $150. All units factory assembled, tested, brand white paper, and include complete name and new. Factory new ASR -33 Teletype $1000. FOR SALE: 6800 microcomputer system: CPU address information. These notices are free of Michael Clark, RD 3, Nazareth PA 18064. (215) board with 1 K EPROM (monitor, debug, assem- charge and will be printed one time only on a space 759-6873. bler, editor), 4 K RAM, APIA; 16 K RAM memory available basis. Insertions should be limited to 100 board; video interface (16 by 32); serial 10 with words or less. Notices can be accepted from TRADE: First 24 issues BYTE magazine for two ACIA ports (audio KC standard and baud individuals or bona fide computer users clubs only. RO /ASR 33 in good condition. Alvin L Hooper, select RS232), EPROM (load and dump), and PC We can engage in no correspondence on these and 207 Self St, Warner Robins GA 31093. (912) wiring for TTY /TTL /modem; 9 inch TV monitor; your confirmation of placement is appearance in 923 -5235. cassette recorder; manuals, schematics, documen- an issue of BYTE. tation; software on cassettes includes Tiny BASIC, Please note that it may take three or four FOR SALE: Card reader, 100 cpm optical NCR games, and more. Price: $1800. Contact David months for an ad to appear in the magazine. EM -D2, also with spare parts, $75. Arthur Okun, Domorest, 12697 Graton Rd, Sebastopol CA 1803 N Mulligan Av, Chicago IL 60639. (312) 95472, (707) 823 -1698. Factory assembled and 637 -0938. tested.

226 BYTE November 1977

www.americanradiohistory.com FOR SALE: Sphere 330 Computer System. F -8 USERS: Have designed a 4 -1/2 inch by 6 -1/2 WANTED: Two 1 K memory boards for Mark 8 Includes: 6800 CPU, 20 K memory, 32 X 16 video inch double sided PC card with plated thru holes microcomputer (from July 1975 Radio -Elec- interface, ASCII keyboard and interface, dual for an F -8 system consisting of a 3850, 3853, up to tronics) as produced by Techniques Inc, prefer cassette interface, case less cover, power supply, two 3851 or 3861 chips as well as space for two unpopulated boards. Jeff Lesinski, 1241 Staley Rd, manuals, monitor, editor, and debugger routines in 2708 or 2716 EPROMS. For dedicated applica- Grand Island NY 14072. 1716) 773 -3783. ROM including cassette 10, 16 bit math, etc. Will tions where no programmable memory is needed. also supply Tiny BASIC and 16 K BASIC. Com- Need to sell ten at $250 each to recover costs of WANTED: Old PDS 1020E paper tape software. plete system as a kit originally cost over $1700. development and prototypes. Homer S White, Can copy and return. Also need any circuit board This is an assembled, tested, burned-in system for 3314 Pickett Rd, Durham NC 27705. for connectors. Dave Overton, 1709 W 30, Austin only $1500. First check to clear takes it all. TX 78703. Write Richard H Rae, POB 791, Emporia VA FOR SALE: QUME Sprint 55 printer, equivalent 23847. to Diablo printer but better and faster. Has been FOR SALE: QUAY 80A1 do everything processor, modified by factory to use Xerox print wheels, a complete 280 stand alone computer. Add Tele-

WANTED: Listing or source of listing of assembler including proportional spacing wheels, new. I paid type or RS 232 terminal and you're up and program for 8080 (home- brewed RM- 8080), for $2950. Please bid. Puran, POB 135, Jamaica Plain running with 1 K static programmable memory reasonable price. T P Douglas, POB 1012 -C, MA 02130. (low power). 512 byte (ROM) monitor, 4 La Junta CO 81050. UVEPROM sockets 12708), UVEPROM pro- FOR SALE: Video checkers on Tarbell compatible grammer, and more, assembled and tested $425. FOR SALE: VIATRON microprocessor system. cassette. Plays under MITS 8 K BASIC. Total of Also TDL .ZPU with software (8 K BASIC, 2 K Includes keyboard, two cassette transports, video 16 K memory and Poly Video board required. monitor, text editor, macro assembler) all on monitor, and power supply. Only $400. Write Send $10 postpaid for cassette and complete original paper tape with documentation, assembled or call Mike Vitale, POB 22, Suncook NH 03275. documentation to Mary Mallon, 6914 Berquist Av, and tested $225. MFE Model 250 super cassette, (603) 485-4006. Canoga Park CA 91307. high speed drive (40 ips) new with case, connector and much documentation. Cost $510, your cost FOR SALE: IMSAI 8080 with 22 slot mother $225. Paul Lamar, 1024 17th St, Hermosa Beach FOR SALE: Frieden Selectradata paper tape read- board $649, Polymorphics video board VTI -64 CA 90254. (213) 374 -1673. er and card reader $50 each. R Rodgers, 11 Skip $199, Vector Graphics 8 K memory bord $235, Rd, Norristown PA 19403. (215) 279 -5761. Solid State Music 8 K memory board $225, Radio FOR SALE: Altair 8800 Computer, with 20 K of Shack keyboard with custom case $49, and a fast (no wait state) programmable memory, 1 K of WANTED: Medical software, also artificial intel- Tarbell cassette interface $109, assembled, tested, slow (1 wait state) programmable memory, 2 K of ligence and robotics. Send description and price or in excellent condition. B Marr, 1800 Brea Blvd, ROM, Processor Technology video display module, trade. Rob Lufkin, UVA School of Medicine, Box 18, Fullerton CA 92635. 1714) 870 -1387. and 3 parallel and serial interface cards. MITS Charlottesville VA 22901. audio cassette interface card. Price: $1500 firm. I FOR SALE: Line printer, 300 cpm 132 column will pay shipping. M Harris, POB 1053, New FOR SALE: Altair 8800, 4 K static, 4 K dynamic, drum printer. Operational Mohawk Data Sciences Britain CT 06050. 1203) 225 -0504. Serial 10 (RS232 compatible), Tarbell cassette series 4000 has full documentation and 63 print- interface, complete documentation, new cost able character set. Best offer over $800, FOB FOR SALE: Two MITS 88 -S4K (4 K synchronous) $1576, barely used and totally functional, $1375 Madison WI. Richard Whitnable, 425 Sidney St, memory boards, $110 each. Two MITS 88 -4MCD or best offer. Norm, 8508 Lurline Av, Canoga Park Madison WI 53703. 1608) 256 -3789. 14 K dynamic) memory boards, $90 each. All CA 91306. (213) 341 -1275. boards assembled with sockets for each integrated WILL TRADE: November 1975 BYTE for Decem- circuit. Every bit OK. A spare 4 K memory chip is FOR SALE: First 24 BYTEs, all like new. Best ber 1975 BYTE. My November issue is in very included if you buy all four boards. Harold Corbin, offer. J L Cutright, 1417 N Hoyt, Chillicothe IL good condition. Elliot S Wheeler, 101 Volney St, 11704 Ibsen Dr, Rockville MD 20852. 1301) 61523. So Houston TX 77587. 881 -7571.

TRICK OR TREAT!! 100% GUARANTEE!! Elecirolabs We guarantee the products we sell.y For each C2716, or TMS2716 Full refund or replacement for an purchased before 1, Jan. 1978 unsatisfactory product returned with. POB 6721 I Stanford CA 94305 in 15 days of purchase. Our magnetic we will donate $2.00 to UNICEF media is certified 100% error -free, and in your name, and issue you an shipped fresh from refrigerated storage, 415 -321-5601 and our ICs work properly) equal amount in credit towards 1978 purchases. Free catalogue of ICs, Components, Word your Processing Supplies, Useful Devices, and LINEAR CPUs, Support, & PROMs UVEPROMS Equipment sent in response to each inquiry L. M 32 3 K 5.95 and order. Call for quantity and special LM309K Z -80 39.00 0.99 C2716 5V Only - 59.00 group discount programs. LM317K 2.95 8080A 11.95 LM375N Xtal Osc. Ckt. 2.75 8X3001 55.00 TMS2716 3 Supplies - 49.00 MEMORY 8228 7.29 C2708 Indus. Std. 18.95 LS 7031 8 decade counter & 7seg. driver MCM 6810L.1 2.95 8216 2.39 C2708 (650nSec.) 14.95 all on one 40 pin chip. Uses +5 only 15.95 21 L02-1 1.25 AY5 -1013 4.95 C1702A - (includes schematic and app. note) 93411 DC 1.00 8223 PROM SPECIAL 10/9.95 2K 4.95 MAN 6640 dual.6" orange hi- intensity 2.95 C3107B 1.00 C1702 2.25 Gould 2 AMP -HOUR "C" size NICADS 3.95 uPD371D Cassette Cntrl. 49.00 MM74C926N 4decade counter /driver 5,95 C2114 19.00 uPD372D Floppy Cntrl. 52.00 MM52030 2K 2.95 MM5058N/2533V 1024 Static SA: 10/9.95 uPD411D-4 135nS. 3.95 8252708 70nS. Pin for P. 29.95 MM52040 4K 9.95 Removable Magnetic. Media TANTALUM CAPACITOR SPECIAL: 22uFd /35VDC 10/3.99 manufactured by These are CS R13 type and offer excellent bypass, filter and coupling -wrbatim.Storage performance out to G Hz. frequencies. Perfect for memory and digital. Information Terminals Corp.

5 Per Box, Ea. Box: 2 " VIDEO TAPE By major US Manufacturer, but NOT 12.99 MiniDisks 10 Boxes, Ea: 50 Boxes, Ea:

. guaranteed Memorex Absolutely to cause neither head MD525.1 (Soft Sector) 29.95 26.95 24.25 clogging nor excessive wear. 2400 ft.X'/, inch for one hour 10/119.95 play on Sony, G:E:, Panasonic and all other Monochrome and color MD525 -10 (Hard Sector: 10 Holes) 29.95 26.95 24.95 EIAJ standard machines. Call for prices on sizes to fit Sony Portapack, MD525 -16 (Hard Sector: 16 Holes) 29.95 26.95 24.95 and for other lengths. Our bulk purchase makes this offer possible. Splice -Free, and shipped in an attractive permanent black plastic storage Flexible Disks 2 Per Pkg. is box. %" format the highest performance per dollar. Normally 522.95. F D34 -1000 (Soft Sector IBM Std.) 11.95 10.49 9.49 FD32 -1000 (Hard Sector, Inner) 12.49 11.29 10.19 APL Programming language selectric printer balls 29.00 FD65 -1000 (Hard Sector, Outer) 12.49 11.29 10.19 VADIC Modem Cards. Complete, requiring only ± 12V, +5V, and Flippy Disks 10 Per Box: 22 pin connectors. for Bell 103 Orig. /Answer service: 79.95 F D34. 2000 (Soft, IBM) 89.30 80.30 72.30 FD32 -2000 (Hard, Inner) 93.80 84.40 75.90 Save SMOKE DETECTORS your life, your lab, your computer. F D65.2000 (Hard, Outer) 93.80 84.40 75.90 Mfg. by B RK. We think that this Is the most reliable unit on the market. Per Pkg. Same as the one demonstrated or, TV for Pittway by William Conrad. Digital Cassettes 2 In addition, this unit will function for more than a year on an 1150 For all "Kansas City'- and other digital recording with audio decks. inexpensive 9V cell, in contrast to many others requiring a 5- 29.95 8.90 8.50 7.49 7 dollar battery. Nationally advertised at $39.95. Specify battery or 110V. R -300 Digital Direct 11.99 10.99 9.99

Circle 54 on inquiry card. BYTE November 1977 227 www.americanradiohistory.com An Unregulated DC Power Supply for M icroprocessor(s) What's New? A new DC power supply which provides unregulated power to micro- processors and peripheral equipment has A New Bar Code Scanner Shield and been announced by Standard Power Inc. Seal for Real Designated the SMP -30B, the unit provides three voltages of 9 VDC at 1 A and ±18 VDC at 0.5 A. It may be operated at 115 or 230 VAC, 50 or 60 Hz input. Priced at $27.50 (single quantity), the unit measures 3 3/8 by 3 3/8 by 4 3/4 inches (8.57 by 8.57 by 12.1 cm) and weighs 2.1 pounds (0.95 kg). Details are contained in Standard's Catalog C477, available on request from local distributors, or from Standard Power Inc, 1400 5 Village Way, Santa Ana CA 92705, (714) 558- 1172. Micro -Scan Corporation has an- Circle 519 on inquiry card. nounced a new bar code scanner de- signed to read bar code programs as featured in BYTE. The unit, called Attention APL Lovers... the Micro Scan, is capable of scanning varying contrast ratios (photostatic MCM Computers is a Canadian firm copies can be read) at rates of 10 to 36 A new conductive material with which has been marketing small desk top inches (25 to 91 cm) per second. Docu- excellent sealing properties has been APL machines for about five years. As mentation of loader programs for the announced by Radcon Corporation, this issue was going to press, we received 6800, 6502, 8080 and Z -80 processors 246 Columbus Av, Roselle NJ 07203, word that the company is making avail- are provided with each scanner. Power (201) 241 -5550. Free samples as well as able a $5000 package consisting of a supply requirements are 11.5 to 18 V, a data sheet giving compression and complete self -contained computer with unregulated. The Micro Scan is available electrical characteristics are available APL interpreter and dual cassette tape for $97.50 from Micro Scan Corpora- upon request. The material, called drives for work space. Contact the US tion, POB 705, Natick MA 01760, (617) Multi -Con 2, is priced based on custo- office, 2125 Center Av, Fort Lee NJ 655 -5406. mers' applications. 07048, (201) 944-2737.

Circle 517 on inquiry card. Circle 518 on inquiry card. Circle 520 on inquiry card.

NEW All IC's, sockets & hardware for WAMECO MEM -1 74L00 .25 74LS00 .40 1101 1.25

includes prime 2102AL -4's $144 74L01 .25 74LS01 .50 1103 1 25 Order PCBD separately below. 74L02 .25 74LS02 .40 2101 4.50 BOARDS 74L03 .25 74LS03 .40 2111-1 4.50 Special 2102AL -4 1K x 1 ram 1 less power than 21 L02 J CÍT1 p 74L04 .30 74LSO4 .45 2112 4.50 type rams, with power down, prime from NEC. Ea. 2.00; 32 74L05 .40 74LS05 .45 2602 1.60 ea. 1.80; 64 ea. 1.70; 128 ea. 1.60; 256 ea. 1.50. 74L06 .30 MB-1 MK -8 Computer RAM, (not S -100). 4KX8, uses 2102 74LS08 .40 4002 -1 7.50 74L08 .40 74LS10 .40 4002 -2 7.50 type RAMs, PCBD only $22 9080A AMD 8080A (Prime) 20.00 74L09 .40 74LS12 .55 MM5262 1.00 MB-3 1702A EROM.Board, 4KX8, S -100, switchable ad- 8 21 2/7 45 41 2 Prime 4.00 74L10 .30 74LS20 .40 7489 2.00 dress and wait cycles, kit less PROMS $65 8214 Prime 8.30 74L20 35 74LS22 .45 74200 4.95 8216 Prime 4.95 MB-4 Basic 4KX8 ram, uses 2102 type rams, may be ex- 74L26 .40 74LS27 .45 74C89 3.00 8224 Prime panded to 8KX8 with piggybacking, S -100 buss PC 5.00 74L30 .40 74LS30 .40 82S06 2.00 8228 Prime 8.90 board $30 74L32 .45 74LS37 .60 82507 2.00 8251 Prime MB-6 Basic 8KX8 ram uses 2102 type rams, memory pro- 14.50 74L42 1.50 74LS38 .60 82517 2.00 8255 Prime 14.50 tect in 256 to 8K switchable S -100 buss. PCBD $35 74L51 .35 74L542 1.50 8223 2.50 -6 AMD 4702A Prime 1702A 6.00 74L54 .45 74LS51 .40 82523 3.00 MB-132708 EROM board, S -100, 8KX8or 16KX8 kit without TMS -6011 UART Prime 6.95 PROMS 74L55 .35 74LS54 .45 825123 3.00 $85 2513 Char Gen Upper Prime 11.00 74L71 .30 74L573 .40 82S126 3.50 10-28-100,8 bit parallel I /Oport, Hof board isfor kludging. 2513 Char Gen Lower Prime 11.00 74L73 .55 741_573 .65 825129 3.50 Kit $55 PCBD $30 1702A Intel Not Prime 4.00 74L74 .55 74LS74 .65 825130 3.95 VB -1 64X 16 video board upper lower case Greek, corn- 8710 2.00 8T97 2.00 80L97 1.50 74L75 1.20 74LS76 .65 825131 3.95 posite and parallel video with software, S-100. 8T13 2.50 8T110 2.00 81 L22 1.50 74L78 .90 74LS151 1.55 IM5600 2.50 . Kit $189.00 PCBD $35 8T16 2.00 5309 8.00 82L23 1.90 74L85 1.40 74LS174 2.20 1M5610 2.50 SP -1 Music synthesizer board S -100. computer controller 8T20 2.50 5312 4.00 85L51 2.50 74L86 .75 74LS175 1.95 IM5603 3.00 wave forms, 9 octaves, 1V rms yz% distortion, includes 8T24 2.50 5313 4.00 85L52 2.50 74L89 3.50 74LS192 2.85 IM5604 3.50 software kit $250 8T26 2.50 5320 5.95 85L63 1.25 74L90 1.50 2501B 1.25 IM5623 3.00 74L91 1.50 2502B 3.00 Altair Compatible Mother Board, 11 x 111/2 x w ". 8T34 2.50 5554 1.90 86L70 1.50 IM5624 3.50 Board only ... $45 With 15 connectors $105 8T37 2.50 5556 2.50 86L75 1.90 74L93 1.70 2507V 1.25 MM16330 2.50 BT38 74L95 1.70 2510A 2.00 DM8573 4.50 Extender Board full size. Board only 2.50 5055 1.60 86L99 3.50 $9 8780 2.50 MC4044 74L98 2.80 2517V 1.25 DM8574 5.50 With connector $13.50 2.25 88L12 .80 74L123 1.50 2519B 2.80 DM8575 4.50 Solid state music Cybercom boards are high quality glass /// 74L164 2.50 2532B 2.80 DM8576 4.50 board with gold finger contacts. All boards are check for / 74L165 2.50 2533V 2.80 DM8577 3.50 shorts. Kits only have solder mask..90 day guarantee on O 74L192 1.25 DM8131 2.50 DM8578 4.00 Cybercom kits. 74L193 1.20 N8263 3.50 2.4576 MHZ a MH0026 2.95 MC1489 1.50 XTAL 7.20 MC1488 1.50 DM8837 1.50 - IIA `.`!/ /C. WAMECO INC. Check or money order only. If you are not a regular customer and your 419 Portofino Drive order is large please send either a cashier's check or a postal money MEM-1 8KX8 fully bufferéd, S -100, uses 2102 type rams. San Carlos, California 94070 order, otherwise there will be a delay of two weeks for the check to PCBC $30 clear. All Items post paid in the U.S. Calif residents add 6% tax. please send for IC, XiStOr Mother Board 12 slot, terminated, S -100, board only$35 Money back 30 day guarantee. We cannot accept returned IC's that and Computer parts list. 10% discount on 10 or more of WAMECO PCBD in any have been soldered to. Pricessu q ect to change without notice. $10 combination. minimum order. 51.00 service charge on orders less than S10.

228 BYTE November 1977 Circle 93 on inquiry card. www.americanradiohistory.com NEW BARGAINS SURPLUS BARGAINS

2708 PROM BOARD (10K) T 5995 TELETYPES 1395

Illustrated above is our 10K 2708 Board (2708)

Kit w /basic IC sockets. Any PROM addressable anywhere in mem- ory map. ORDER AS C80-2708-2. MINI MICRO MART hes one of the largest selections of used, reconditioned, and rebuilt Teletypes in the U.S. - $m Q95 RO-33's (printer catty) $395 to $595 PROTOTYPE BOARDS fro KSR -33's (keyboard & printer) $495 to $695 ASR -33's keybd., reader & punch) $695 to $895 Prototype boards for the S -100 bus are available from many others - (prntr., but ony MINI MICRO MART supplies four different types, Two ant Model 35 RO's, KSR's and ASR's also available. wire -wrap versions and two are general -purpose DIP, for either ww or point -to -point wiring. All boards come with a 5V regulator and a heat sink. The two "bus" versions are unique and have circuitry SURPLUS PERIPHERALS etched on for buffering and address decoding, and include the MINI MICRO MART has a variety of surplus (new and used) decoders and necessary Tri -State buffers. (Illustrated below is the items of interest to the hobbyist and commercial minicomputer general- purpose DIP version, MODEL 01- 2115.) user. Our equipment list changes daily as we sell out of one item and add others. Among the items we currently have in stock are - HIGH-SPEED PAPER TAPE PUNCHES: FACIT, BRPE, Digi- tronics, and others. PRINTERS: Univac and others HIGH -SPEED PAPER TAPE READERS: EECO, Digitronics PERTEC TAPE UNITS COGAR TAPE UNITS We also have in inventory an item of interest to the homebrew builder - an electronic desk wired with line cord, line filter, circuit breaker, boxer fan, and card cage for 40 PC boards, new and used, from $ 49.96 -up. Write and get on our mailing list for these and other interesting IIIIIIIiIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIÍI surplus items.

01 -2115 GENERAL -PURPOSE DIP PROTOTYPE BOARD 918.96 01 -2116 WIRE -WRAP PROTOTYPE BOARD .. .. 19.96 PRIME COMPONENTS 01 -2136 GEN- PURPOSE DIP BUS INTERFACE 2708 1K x 8 EPROM $ 19.95 BOARD, incl. IC's for address decoding 2718(71) 2K x 8 EPROM 39.95 and buffers 29.96 Z -Ws (Zilog) 29.95 01 -2112 WIRE -WRAP BUS INTERFACE BOARD incl. IC's for address decoding and buffers 30.96 800A /AMO 9080A 29.95 1702A's (Intel /AMD) 4.95 2102's low power 480ns 1.49 BARE BOARDS Bare boards for 8080 and Z -80 systems, as well as for 4K, 8K, and 4K x 1 STATIC CHIPS (5V) 450nsfor Heattlkit and 16K static and dynamic memory boards - other boards $ 8.49 BARE 4K S -100 MEMORY BOARDS, ONLY S 14.16

Add $2 for handling, shipping and insurance for each order (exception: Teletypes are shipped freight collect). Send stamped, self-addressed envelope for details on any advertised fiificmMart items or for a copy of our catalog. 1618 James Street, Syracuse, N.Y. 13203, Phone: (315) 422 -4467

Circle 94 on inquiry card. [3Ytla November 1977 229 www.americanradiohistory.com Attention Toronto Readers A New General Purpose PC Board

Computer Mart in Toronto has been in operation since January 1977 and maintains at least three systems up and What's running for demonstration purposes. The store offers complete service facilities as well as programming services for micro- processor based systems. This includes operating system enhancements and New? accommodating unusual interface situations, both software and hardware. The store's product line includes Pro- cessor Technology, Polymorphic, The Altair Offers Microcomputer Digital Group, Peripheral Vision, Timesharing Cromemco, IMSAI, iCOM, IASIS, Lear - Siegler, North Star, TSC Software, Hitachi and Sanyo, Volker- Craig, Scientific Research, Sams, Hayden and AP Products, etc. Computer Mart's policy is to provide the most effective guidance and general advice to our customers and continue this policy after the system is plugged in at the customer's home. The store address is 1543 Bayview Av, Toronto, Ontario M4G 3B5 CANADA, (416) 484 -9708. Model H -PCB -1 is the first in a series of PC boards. The 4 by 4.5 by 1/16 inch Circle 452 on inquiry card. (10.16 by 11.43 by .19 cm) board is made of glass coated epoxy laminate and A Small Shank Electric Drill from Wahl features solder coated 1 oz copper Anyone who has an Altair 8800 pads and has a 22/22 two sided edge series computer can now convert it to connector. serve as the control center for a time- The board contains a matrix of .040 sharing system. A special version of inch (.1 cm) diameter holes on .100 inch BASIC, called Timesharing BASIC, has (.25 cm) centers. Two independent bus been developed along with Altair Time- systems are provided for voltage and sharing Disk BASIC. Both are exten- ground on both sides of the board. In sions of Altair extended BASIC and addition, the component side contains allow up to eight independent pro- 14 individual buses running the full grams to be run simultaneously. length of the board which enable direct A memory partition technique is access from edge contacts to distant used to keep each program job in a components. unique area of memory. Each pro- Priced at $4.99 from OK Machine gram area contains the BASIC pro- and Tool Corporation, 3455 Conner St, gram text, variable and string space, Bronx NY 10475, (212) 994 -6600. a workspace, plus approximately 300 Circle 454 on inquiry card. bytes of the timesharing system. The system can be used with a variety of Data On the Cable? IO devices including video displays and printers. Control of a specific job may be transferred from one terminal to another with a single command. Various control characters allow suspension and resump- tion of each job without loss of data. Diagnostics are provided for program debugging and automatic line numbering Here is a device that should prove is available during program entry. Both useful for the fabrication of printed versions of Altair Timesharing BASIC circuit boards, as well as other applica- furnish line oriented text editor with tions involving the drilling and cleaning line and character manipulation of small holes. The Wahl ISO -TIP elec- capabilities. tric drill is less than 5 inches (12.7 cm) Extensive hardware is needed (in long with drill bit removed and is addition to the 8800 series mainframe designed to fit into tight corners. The and processor) to support both versions on-off switch provides both intermittent OK Machine and Tool Corporation, of Altair Timesharing BASIC. This and locked modes of operation, and the 3455 Conner St, Bronx NY 10475, includes a minimum of 32 K bytes of power cord is 10 feet (3.04 meters) long. (212) 994 -6600, has sent a picture of the programmable memory, a vectored inter- Operating at 9000 rpm, the drill is new dual in line package cable termina- rupt real time clock card, up to four supplied with a collet chuck, three tion assemblies, retailing at $3.75 to 2510 serial interface boards for terminals collets and two drill bits ( #56 and #71). $4.35. Variations on this theme include and an optional line printer for the disk The unit is available in either 110 VAC double ended cables in lengths of 2, 4 BASIC version. The disk version, of or 12 VDC versions. and 8 inches (5, 10 and 20 cm) and course, requires a floppy disk peripheral. Contact the Wahl Clipper Corpor- single ended cables in lengths of 12 and

Contact M ITS, 2450 Alamo SE, ation, 2902 Locust St, Sterling I L 61081 24 inches (30 and 61 cm); either 14 or Albuquerque NM 87106. (815)625- 6525. 16 pin cables are available.

Circle 451 on inquiry card. Circle 453 on inquiry card. Circle 455 on inquiry card.

230 BYTE November 1977 www.americanradiohistory.com A 1 ORNIA IN USTRIA Post Office Box 3097 B Torrance, California 90503

.rtsuo ELECTRONIC ENTERTAINMENT CENTER TELETYPÉpIhODEL 43 Ten nisHandball CALCULATOR Hocke Smash New from Teletype, the Model 431s Action- packed color ontoaalnmenr for capable of priming 132 ASCII the whole family. Adjustable skill level characters per line. Send and receive WRIST WATCH data al 10 or as words per second. Key- controls allow players of all ages lo corn board generates all 126 ASCII code combina. I pale In tennis. hockey and handball. Designed for the or the go executive, that Ird'- -1 This lour game entertainment center bons. 85232 Interface. same as the popular Model 33. Data shoot request. Manufac. vidual who has to make those or the spot turns your television Into a video play- sent upon decisions. ground. lunar suggested price 51377.00. IMMEDIATE DELIVERY $1199 Handsome gold tone starless steel watch On screen scoring. Ilse action sound and true component color makes this video feature space age micro- circuitry. The MOS We also rave for sale a limited quantity of used Model 35's. Color enter an excellent buy at only 324.88. Priced at only 3419.50 Irte gr ted c'rcu't contains the equivalent of $24.88 Complete with antenna box and ACadaple. more than 10,000 transistors. This LED wrist watch displays date, time, elapse econds and also functions as an eight HEXADECIMAL KEYBOARD DIGITAL digit calculator with memory. Information Maxi-Switch hexadecimal keyboards are designed for $2995 ALARM CLOCK stored in memory can be recalled at any later microcomputer systems that require 4-bit output Complet date, e en weeks or months. Use this memory In standard hex code. gsstmblely 519.95 feature to store phone numbers, parking stall Each assembly consists of 16 hermetl. location or flight departure time. WOy sealed reed switches and TTL "one snot" debounce circullry Manufactured by one of California's leadlrg Reliable low Friction Ocelot resin wainutgtained decorator clock features large .7' LED display whip aerosp ce contractors. Because of the plungers are credited for the smooth dnvon by the new National MM5385alarm clock chip. Preset 2óhaur all lunctlon d'scou t price we have agreed rot to publish operation and long Illo of this premium allows you IO awaken at the same lime each manning wilt the ma ufacturer's name. keyboard. (esouing. upon reaching the wakeup time, the clock's loudspeaker er a gentle tone. Touch Inc snooze button and doze off for an addition Requires single Svol, supply. Includes batteries, jewelry case and 18 -month minutes of sleep. Clock also functions as a ten.minute elapse tin factory warranty. 'Alarm Set" Indicator. AM -PM display.

CONNECTORS $24.88 Ou!e8uss = RS-232 S -100 MOTHER iTlPIIUPIL UßfiPHi TE The Quiet Buss from Califorroa industrial ,s DB 25P 100 PIN quality engineered. No short culs have been taken male plug &hood UNIVAC to produce this mother board. Active termination I]iSPLFi41 GEF1EFifiSOh IMSAI /ALTAIR circuitry prevents noise and crosstalk. Manulac $395 tuned Irom extra heavy FR -4 epoxy glass. Features Mdaem Iec0n>.aq.; ms p,pre.e,..d the dereippmem of Ova KEYBOARD chancier 4r,a.44.,,Paul Edge Connector 2ounce double thickness capper traces. Purchase pmque pinks Our Manual C.orol- 05mav .se This along supply kit GereratnM1asinecap.o,i,lyorproauc+qtnelutiupperand rs ,. LWwe I board with the power below 52a lower caSe ASCII Set SMI cmHrtd cursor assemaiy allows The a and you have the start of a super Mao -System. onwaa 10 eliminale enoneously entered mil macon female Altair. Imsai compatible gold plated, dual 50 nomenc keys are .ced on Me lon,s DB255 em EachU nn;s mawlanwed Iostnci lolerancn as peat.... (.125 wire wrap edge ihree 'errs lo odina machine centers) three tier one by Standards0500 tro,t hby cai,tnma In0151na1 One iree wdh 3 for $13.50 $395 connector. Orsson,,Y i s AOu äiteinnraedY excel/enl n eomple kan meumee sm. 1m24.88 1829.95

Certified Digital 30.( STICK sits° the CASSETTES GEORGE 104" for 545. Scotch,.p 450ns O O Won't drop a BIT! 7U RISK DISKETTES I 14' s 195 ASCI Please specify sA98 KEYBOARD KI1 IBM 3740 series 7N pysack leave fop, 100K pOiOrlO- or 32 sector. meters. (rat vary ,ese: aopo,liOnalR lo BRIDGE RECTIFIER 95 the angle of the stick. PetrestPet Por television UV Erasable Model 753k 559 rees. quad Releo ano rano controlled MOTOROLA 12 Amp. 50e. aircraft MEMORY

74% 79 4033 199 SPDT 7497 399 4035 169 MEMORY SOLID STATE T umbwheel 74100 119 4040 1.99 MICROCOMPUTER MINIATURE 74107 .39 1702 .595 switch 74109 .49 400442 1.19 TOGGLE 62$23 2.95 74110 1.79 4043 1.49 3.98 625123 295 POWER SUPPLY KIT Ten position 4014 1.19 SWITCH . 71116 1.99 21L02 2102 179 74120 1.79 4046 2.19 2102 -1 1.89 1.5 T03VDC 71121 .39 1047 2.49 BCD LOW POWER 2t02 1.1e 74122 .39 4019 .79 $.98ea. 71123 .69 1050 .79 Ideal supply for 5100 systems. Con. $139 ea. 450 NS MICRO 10 50 100 lk 4161 1.99 necessary 7115 .59 tains all the components 50 7415 .59 10 CPU's CLOCK's to produce 5 volts tip 10 A., S 99 74126 .49 BUZZER 5.88 .81 .73 .66 2.5 A. actually higher). New Ti-1§ 74132 .99 8080A 1'1.95 5314 295 (voltage .19 71136 .89 6903 24.95 316 4.95 surplus Iran Memores Corporation. 74111 .99 280 3995 5375 395 Kit Includes 117 ac. transformer, TRIMMER CAPACITORS SU 74145 ILowest Price .99 six gads gÚaYI 74147 2.19 diodes, computer eieciro POTENTIOMETERS s 98ea. Anywhere lytics, chassis, circuit breaker and 71111 1.99 Y Our low power static RAM% 29 Wounded power cord. Translnmer 2K 10K 50K 7461 ELECTROLYTICS are rectory prime. Purchased. has 5 output windings. ./ 74153 ea. 10 50 - on contract. Irectly from one $9.00 of the Salk 7/154 D9 Includo shipping East of California s leading semi. 5 for $.98 7/65 .99 Mississippi; $4.00 Icr Calif.: all other 4500/50e.6148 135 119 manufacturers. 71156 conductor 1.29 Sta tes 37.00. 7167 .99 20 50 100 DPDT Access lime guaranteed $2488 1000 /15v.555 49 .45 faster than 5005. Minimum 7/69 2.99 Shipping 741110 1.19 Plus 16' 14' 12' axial ROCKER SWIT CH purchase 32 locos. 71161 .99 Sorry, credit cards cannot be 7162 1.19 $12 .07 accepted an 21102's. 7163 99 .1 disc .09 DIP Switc 74160 1.19 30081 .79 3107.24 179 disc 3011 .39 3504 99 RELAYS .01 .06 .05 .04 10 2 5 100 7100 13 7442 59 7167 1.99 30101 .39 35ICN 65 7401 19 7443 79 74170 2.19 SPDT MINIATURE 3024 129 3706 1.29 S$631:, 2 129 7402 .19 7445 89 7/173 1/9 1.29 7403 .19 7416 99 71171 1.19 10 25 100 spe if 3051 .99 3734 3.19 740.1 .t9 7047 99 74175 .99 3074 .49 3774 199 $1.39ea. .89 7104 7/176 .99 $115 104 7 r8pos 30701 .39 BON 1.39 405 19 7450 25 7/1n .99 3416 32 $.59 e 7106 .19 7151 .5 71192 .99 30018C4 .99 82N i 79 Conductor Ft. Coil 5 or 12 Volt dc. 7407 25 7453 25 74193 .99 3094 109 NE 55v 19 7408 .25 7454 25 CMOS 3 Amp Contacts 30% .99 NE556 1.29 WIRE 7109 25 7460 . %RIBBON 5 1.19 4E5651 1.19 7110 .19 7170 25 3104 P. C. Board Mount SPST 310C4 1.19 4E5654 179 SPECTRA-STRIP 7111 25 7172 39 4002 :ìs 1.99 3114 .99 NE5664 1.25 7112 .35 7473 39 4006 4007 .25 311N .99 70300 15 7413 .49 7471 35 1008 1.19 3124 1.99 7094 39 Transistors 9 foot 7411 .79 7475 A9 1009 .69 11914N r 7416 39 7476 ea. 10 50 100 39 71ÓÑ .79 417 39 7479 3.99 4010 .69 1.19 4011 19GN 1.29 71181 39 420 .19 7480 .79 .5 2N22224 .20 .18 .16 .15 5149 4012 .5 -S 1.39 7114 39 12 .49 7182 .99 MK 4013 .49 3208.12 139 7231 .55 .77 .65 7485 .99 213055 .89 .84 IC SOCKETS 1.49 3208.6 139 72371 .55 7Ì25 39 1014 Heavy 1.39 3207.5 175 7254 149 7426 39 7466 49 106 M13055 .99 .94 .87 .75 wire wrap Sold r 7188 106 .69 3201.6 1.75 7334 119 Output: duty grounded 7427 39 340 pl a ea. 25 50 1 32025-12 175 7334 .99 7128 19 7189 279 4017 29 2113772 219 195175 159 12v. 175ma. 3201-18 175 7396 1.19 / power cord and mating 1018 1.69 / 7429 39 7490 .49 320-24 1.75 7416 29 8 7430 25 7491 .99 4019 1.79 2113904 .15 .11 .09 .07 TRANSFORMER 17' 16 15 1.39 3246 1.579 7474 79 chassis connectors. 7433 39 7492 19 4020 3396 7437 39 7493 1021 1.19 2113906 .15 .11 .09.07 14 37136 35 20 19 18 40K-5 195 7Ì88N 39 7438 39 7491 .79 4022 1.25 1023 .25 3101(.8 195 141171 1.75 7439 39 7495 .79 SOLAR CELLS 16 38 37 36 21 20 19 4021 1.19 310K-12 195 1458 69 Diodes 7140 39 398 3400-6 1.95 14966 95 lo 2 s loo 24 99 93 85 36 35 34 @27 69 3199-18 1.95 21114 195 $119 1028 1.25 3101(-2/ 195 29014 295 1114002 100e..08 06.05 3401-5 179 306511 39 40 169 155 139 63 60 58 1.79 19 1114005 600e..10.08.07 10 100 1030 1.69 3107-12 39006 RAP -30 /032 .49 3407-15 1.i9 39096 119 90580 1N4148 signal .07 .05.04 3.98 5.85 500mo 'K re wallas rip tool S II. KYNARVZ t25mA m 03V Ideal for powerIng jumbo red ea. 10 25 100 "A An radio monikers or charging bat 398 500 logo 11,000 5 LED's 15.13.11.o9 IUS FAST CHARGE 59. 515. 5105. (213)772.0800 Circle 21 on inquiry card. AR merchandw sold by enaomla leduIRat Is premium grade. master charge Orden are upped rSa lame day resolved. VISA ..... PLEASE INCLUDE S1.00 SNIPPING ON ORDERS UNDER S 15.00 BYTE November 1977 231 a': CaNlomia residents add IN saris tas Money back guarent.. Sorry. no COD's Fbra iln orders add 10'. www.americanradiohistory.comCredit cards accepted.$20 minimum A Single Chip Stepper Motor Drive What's New?

New Additions to UPS National Upgrades SC /MP Electronics Uninterruptible Power Supply Family

North American Philips Controls Corporation, Cheshire Industrial Park, Cheshire CT 06410, (203) 272 -0301, has introduced this integrated circuit stepper motor driver in a 16 pin dual in line package. The chip is intended to be used with 4 phase stepper motors which use 12 VDC and have 350 mA coils for each phase. This drive circuit includes the necessary logic to create motor motion in forward or reverse direction at rates determined by a clock input. The motors which North American Philips manu- Semiconductor Circuits Inc, 306 factures are listed in the brochure River St, Haverhill MA 01830, has an- describing this part, and can typically nounced the addition of 27 new models provide working torque values in the .16 to its line of uninterruptible power oz -in to 6 oz -in range with maximum supply systems. The UPS family float Faster, lower power n channel metal stepping rates from 700 steps per second charges either a 12 or 24 V backup oxide semiconductor versions of (lower torque motors) to about 200 battery and offers the choice of a National Semiconductor Corp's SC /MP steps per second (higher torque motors.) ±12 or ±15 VDC output for powering microprocessor are now available as Typical step sizes for the motors analog circuits. The third output, retrofits for SC /MP kits. mentioned in the engineering notes on +5 VDC for powering logic, remains Called the SC /MP -II, the new 8 bit the driver are 7.5° and 15 °. With gearing, unchanged. MTBF (mean time between single chip device has all the features of this type of motor should prove quite failures) is said to be in excess of 50,000 the original p channel MOS version but useful for robotic mechanisms exper- hours at 25 °C. will operate at twice the speed and will iments. Price for the SAA 1027 driver The UPS series conserves battery dissipate less than 200 milliwatts of circuit is $4.75 in lots of 100. charge by employing both a DC /DC con- power, about 25% of the power dis- verter, which delivers either analog sipated by the first SC /MPs introduced Circle 473 on inquiry card. power outputs of ±12 or ±15 VDC at last year. ±100, ±200 or ±300 mA, and a SC /MP -II requires only a +5 V switching regulator, which delivers a supply, compared with the +5 and -7 V logic power output of +5 VDC at 1, 2 supplies required on earlier versions. A New Music System Program or 3 A. Because of the +5 V only operation, the Software Technology Corporation Under normal line conditions, series SC /MP -II can be interfaced with TTL has announced the Music System, a pass power supply serves as the power and NMOS devices, and (by using pull up hardware and software package designed input to the DC /DC converters and as a resistors) with CMOS devices. to generate music by producing three float charge output for either 12 or 24V The SC /MP -II microprocessor retro- simultaneous tones of fixed amplitude backup batteries. fit kit is available for $18.50. It includes using a complex waveform which appro- All models are packaged in a black the new SC/MP-II central processing unit ximates the sound of a reed organ. anodized aluminum U -type open frame (CPU), a 2 MHz crystal, a retrofit kit Tones are generated using square waves, is user's manual, an that drilled for mounting and which applications handbook which are actually produced by a highly measures 3 by 6 by 9 inches (7.62 by and a SC /MP -II data sheet. No software controlled pulsing of one of the Altair 15.24 by 22.86 cm). Prices range from changes are required as long as the retro- (5 -100) bus status lines. $155 to $225 for a single unit, and fitted SC /MP -II runs at the same speed The Music System comes complete $148 to $205 in quantities of ten and as its predecessor. Contact National with a program on cassette tape, six at more. Availability is stock to two Semiconductor 2900 Semiconductor sample selections, a user's manual and weeks. Dr, Santa Clara CA 95051. a circuit board with components. Running in close to 2 K bytes of Circle 470 on inquiry card. Circle 471 on inquiry card. programmable memory, the program in- cludes a monitor, text editor compatible No Transients Allowed The Dyma AC Line Surge Protector with Processor Technology's ALS -8 is a suppressor and filter combination file structure, and a high level music which is designed to protect equipment composing language compiler. Language such as microprocessors and peripheral capabilites include dotted notes, units from voltage transients on incom- 4 octave range and staccato. ing power lines. The unit plugs directly With the addition of amplifier, into any standard AC outlet; equipment speaker, cable and any Altair (S -100) bus to be protected is plugged directly into computer, the Music System is ready to the surge protector. play. The price is $24.50. Contact Soft- The 20 A load model is priced at ware Technology Corporation, POB $14.95. Other ratings are available on 5260, San Mateo CA 94402, (415) special order. Contact Dyma Engineer- 349 -8080. ing, 213 Pueblo Del Sur, POB 1697, Circle 472 on inquiry card. Taos NM 87571. Circle 474 on inquiry card.

232 BYTE November 1977

www.americanradiohistory.com CALL US NOW! (617) 261 -2100 C OM P V T E R ORDER OUR NEW CATALOG WAREHOUSE ` 584 COMMONWEALTH AVE., BOSTON, MA. 02215 SYSTEM BUILDERS Ji DISCOUNTS UP TO 20! WIDE RANGE OF MICROCOMPUTERS OLIVETTI P6060 L- SUPER SELECTION OF GOOD USED BRAND NEW AND COST SAVING PERIPHERALS! 1. FAST EFFICIENT COMPLIER BASIC! OVER 250 BOOKS DESCRIBED AND 2. TWIN FULL -SIZE FLOPPY DISKS! READY TO SHIP! 3. 80 CHAR. /SEC. PRINTER! IN-DETAIL DESCRIPTIONS OF 4. FULL FUNCTION 96 -KEY KEYBOARD! HARDWARE, KITS, PERIPHERALS! 5. HASSLE -FREE MAINTENANCE (OLIVETTI SPECIAL SELECTION OF PROFES- 6. 48K EXPANDABLE TO 80K! SIONAL -GRADE COMPUTER SYSTEMS! 7. PROGRAM CHAINING, STRINGS VARIABLES O MICROCOMPUTER COMPARISON CHART! 8. MATRIX OPERATIONS, PLOTTING! $8950 complete! 9. OUTPUT FORMATS SELECTED BY PROGRAM! SEND $1 TODAY!! 10. COMPLETE INTEGRATED SYSTEM PLUG IN and USE WARRANTEED COST -SAVING USED PERIPHERALS ALL an ASR33 is...and MORE!! OUR GREEN PHOSPHOR OLIVETTI 318 IDEO RS232 QUIET OPERATION, 10CPS PRINTER, MONITOR S25 PINGI $8/3 PAPERTAPE READER /PUNCH, ELECTRIC TYPE - 10 50 HANDLING 165 lb. WRITER KEYBOARD AND 10 -KEY NUMERIC PAD, 1V P TO P COMPOSITE shipping STANDARD PAPER /TAPE,OLIVETTI MAINTENANCE VIDEO, 16MHZ BANDW., RASTER SCAN, 7x9 IN. DATAPOINT 2200 -200 CONSOLE 24x80 DISPLAY POSSIBLE THIS IS A BEAUTIFUL COMBINATION OF POWER SUPPLY SID AMP, ANTIGLARE A UNIVAC 0769 PRINTER, CABINET, AND ENOUGH SIDE SPACE FOR AN ENTIRE MICRO IBM SELECTRIC PRINTER IT POWER SYSTEM. COMES COMPLETE WITH BASED ON AN IBM SELECTRIC, THIS COPE SUPPLY AND PARALLEL INTERFACE, $ 49 5' 1030/1040 EBCDIC TERMINAL MAKES A CPS 132 COL, 285 lb. shipping. 30 GREAT PRINTER WITH OUR RS232 (8080) DATAPOINT 3300-200 RIXON DATA SET CONVERSION PROGRAM, 15 IN. CARRIAGE, MODEM GIVES YOU 1200 BAUD ON USE ALSO AS A SELECTRIC TYPEWRITER. IDEAL SMALL THERMAL 30CPS PRINTER Add $35 for shipping STANDARD LINE, FULL /HALF DU- (NCR), PARALLEL ASCII, 80 COL, CRT PLEX $250 +$25 ship /hand $795 COMPATIBLE 5X7 DOT MATRIX, SOLID - STATE, LESS THAN 25 MOVING PARTS, 96 CHARACTERS, 110V. $375 $25 shipping CENTRONICS 1c YOU CAN RELY ON U FOR IMMEDIATE SHIPMENT * . HERE ARE THE CHOICE PRINTERS THAT SYSTEMS HOUSES, MINICOMPUTER UCOMPUTER WAREHOUSE .1 "YOUR MONITOR ARRIVED TODAY AND IT NI VENDORS, AND TOP SYSTEMS BUILDERS RELY ON FOR PERFORMANCE AND ADDS TO MY SYSTEM --NO MORE , REALLY RELIABILITY! WITH THOUSANDS OF THESE PRINTERS INSTALLED IN THE U.S. TIRED EYES!" B.L., PHILADELPHIA, PA. 165 CHAR /SEC, 132 COL, 101A...$1500 60 LPM, 2 CHANNEL VFU, i DIDN'T EXPECT YOUR CENTRONICS PRINTER WOULD LOOK AND WORK SO , TTL, 8 -BIT PARALLEL WELL... THANKS FOR A GREAT DEAL!" 330 CHAR /SEC, 132 COL, G.M., COLUMBUS, OHIO ¡ 102A...$2000 125 LPM, 2 CHANNEL VFU COMPUTER WAREHOUSE STORE WILL AT NO COST TO THE CUSTOMER FOR TTL, 8 -BIT PARALLEL PARTS OR LABOR. REPAIR ANY COM PUTER WAREHOUSE STORE PRODUCT CHAR/SE Ç, FOUND DEFECTIVE IN M ATERIAL OR 90 DAY 03....$2000 WORKMANSHIP OR AT ITS OPTION l 705LPM I BOLDFAÓE , INTERFACES FOR DEC, DG, REPLACETHE UNIT OP REFUND THE USED GEAR PURCHASE PRICE BIDIRECTION PRINTING AND RS232 AVAILABLE THIS WARRANTY IS EFFECTIVE FOR A WARRANTEE FULL 90 DAYS FROM SHIPMENT THE IONLY EXCEPTIONS ARE CASES INVOLVING EQUIPMENT MAINTAINED UNDER A MAIN TENANCE AGREEMENT BY A MAINTE- 4L00 INNE FOR RELIABLE SMALL BUSINESS SYSTEM? NANCE SUPPLIER. ABUSE. MISUSE, ALTER ATION NEGLECT OR SHIPPING DAMAGE IBM SYSTEM /3 AND 1130 SYSTEMS...AVAILABLE NOW FROM OUR PARENT FIRM! " "' " " "" "'AMERICAN USED COMPUTER (6171 261 -1100 Circle 38 on inquiry card. BYTE November 1977 233

www.americanradiohistory.com Robot and Mechanism Hackers What's New?

Game Theory So You Want to Automate Your House?

ais;irtùTerc.ii '_`0''

EOiT1PIL1TEß4; fiBE _..`. y..ww^r'^',.

Tired of Monopoly, Aggravation and Sorry? Looking for a game that teaches something about computers as well as being fun? Then try Computer Rage for Here's an unusual item: Artisan a change. First of all it uses three dice, Electronics has announced a new but they're binary dice, so you can move miniature solenoid designed with body from zero to seven spaces per turn. dimensions equivalent to that of the There are priority interrupts, input and TO -5 transistor case. Most applications for output channels with finite capacity, this TO -5 are for impulse duty, ie: the power failures, program bugs and branch generation of relatively high forces for points. Your objective is to get your short times or pulsed operations on three programs (shaped like miniature intermittent duty. On such impulse disk packs) from the input to the output duty, the average power should not weaving through a maze of program exceed 3/4 W. Instantaneous power may steps, checkpoints, 10 queues, interrupts be as high as 200 W, provided that the and decision points. If you want to control things with a on time does not exceed 25 ms. At this Computer Rage comes with a large microprocessor system, boards like this duty, forces up to 50 grams may be (19 by 19 inch) game board, 12 playing product from Wintek, 902 N 9th St, generated at gaps of 0.100 inches pieces, three binary dice, 38 interrupt Lafayette IN 47904, (317) 742 -6802, (0.254 cm). For applications of con- cards, rules and a booklet describing how will prove useful when applied with tinuous duty, the TO -5 solenoid will to use the game as an educational tool. other products in the firm's line of develop forces of from 1 to 10 grams Recommended for ages 9 to adult, two modules. This photo shows the same with plunger travels up to .050 inches to four players. Several playing varia- board populated in two different ways (0.025 cm). At this duty the solenoid is tions are possible. Computer Rage is to emphasize the fact that combinations rated at 1/4 W. A typical coil for available for $8.95 postpaid from of up to 16 output driver circuits or operation on 12 VDC impulses would Creative Computing, attn: Pamela, POB eight sensor inputs can be built on the have a resistance of 1.5 Ii, pulsed at 12 789 -M, Morristown N J 07960. same board, when ordered at a price of VDC with a maximum on time of25 ms Circle 490 on inquiry card. $69 plus $3 per driver and $12 per and a minimum off time equal to 130 sensor. Drivers will handle up to 28 times the on time. volts at 250 mA for use with relays, and Contact Alan Seman, Artisan Elec- A Slick Dress for KIM -1 sensors are optically isolated inputs for tronics, 5 Eastmans Rd, Parsippany NJ, AC or DC voltages up to 240 V. 07054, (201) 575- 7684.

Circle 492 on inquiry card. Circle 493 on inquiry card.

3000 Hole General Purpose Prototyping Board

Electronic Product Associates Inc, J T] 1157 Vega St, San Diego CA 92110, (714)276 -8911, announces the availa- bility of a new general purpose proto- typing board for use in the Micro -68 microprocessor systems. The 8 by 14.8 inch (20.3 by 37.6 cm) GP -2 board is Motorola Exorcisor bus compatible and The Enclosures Group, 55 Stevenson has complete bus buffering already St, San Francisco CA 94105, (41'5)495- established using 8833 driver /receiver 6925, has introduced this interesting integrated circuits. The GP -2 board con- enclosure for the KIM -1 product of MOS tains +5 V power and ground busing, 11 Technology. It should help to protect 3000 holes worth of blank DIP patterns the circuit board of the KIM, especially which allow for up to 35 large (24, 40 during transit. The SKE 1-1 is available or 42 pin) DIP packages, or up to 107 from stock in a variety of colors for small (14 or 16 pin) DIP packages. Price $23.50. is $1 70, and they are said to be available Circle 491 on inquiry card. from stock. Circle 494 on inquiry card.

234 BYTE November 1977

www.americanradiohistory.com D.RC ELECTRONICS N.

1EPROMSC ó RD $69.95 (KIT) s- 1oo6K IBLE IMAGINE HAVING 16K - j OF SOFTWARE ON LINE AT ALL TIME!

1 KIT FEATURES: - .i 1 lif V I Al K(4111"1,1!``t` 4 1 M Iy, rM till mil 114 1. Double sided PC Board with solder mask and silk screen and Gold plated contact fingers. a 11 ¿ 2. Selectable wait states. USES .. r 4 0q 1 , k 1. t3 3. All address lines and data lines buffered. 141 1;,. a `:. 7 . , r I1ì 2708's! , ' 4. All sockets included. .:. t L 5. On card regulators. .. ItIttIE #liiit111111 I t IIII KIT INCLUDES ALL PARTS AND SOCKETS! (EXCEPT 2708's) DEALER INQUIRES INVITED ADD $25 FOR SPECIAL OFFER: Our 2708's (650 NS) are $12.95 when purchased with above kit. ASSEMBLED AND TESTED $149.00 KIT 8K LOW POWER RAM KIT! ADD $30 FOR ASSEMBLED AND TESTED. KIT FEATURES: d rAmk, vmp, la 1. Double sided PC Board with solder mask and silk screen layout. f' .' ' USES Gold plated contact fingers. _ , 21L02 -1 /ALTAIR) . - 2. All sockets included! S-100 (IMSAI . RAM'S. ,, 3. Fully buffered on all address and data lines. BUSS COMPATIBLE ¡ .

4. Phantom is jumper selectable to pin 67. á , 5. FOUR 7805 regulators are provided on card. p , REVERSING 1. _ . 5 -100 EXTENDER BOARD so foil is 6 $24.95 Turns the board under test around that the side facing you. f1 Makes trouble shooting and a SNAP! P.C. Layout designed to ! ..."14*------with connector debugging minimize noise and stray capacitance. RCA HOUSE #2N3772 IC SOCKETS NPN Power Transistor. 30 AMP. COMPUTER GRADE CAP. For the newer RAM chips. 150 W. VCEO-60. TO 3. Vastly out 48,000 MFD 25 WVDC Mallory 18 PIN 4 FOR $1 - performs 2N3055. Reg. List $3.04 22 PIN 3 FOR $1 $3.95 NEW! - 2 FOR $1

T. I. ASCII CHARACTER GENERATOR 104 4K STATIC RAM'S NEW.,

TMS 4103 JC. 28 PIN CER DIP. Has 2114. The industry standard. 18 PIN DIP. Arranged as 1 K X 4. Equivalent to

seven bit COLUMN Output for use with FOUR 21L02's in ONE package! TWO chips give 1 K X 8, with data. Matrix hard copy devices. With specs. 2 FOR $24 450 N.S.! $3.50 NATIONAL SEMI. MA1003 CAR CLOCK ,,,t,__. _:_ : MOTOROLA 7805R . Not a kit. Complete tested module. r"W""""°`" VOLTAGE REGULATOR Works on 12 VDC, has on board time 12 y6 $19.95 Same as standard 7805 except 750 MA base. Sold by others at $24.95. Big .30" rr.!r.i.¡! OUTPUT. TO -220. 5VDC OUTPUT. Bright Green Digits. Same as used by $ .44 each 10 FOR $3.95 Detroit in new cards. EDGE CONNECTOR - $1.50 1KX8 Z - 80 PROGRAMMING MANUAL EPROMS 2708 By MOSTEK, the major Z - 80 second source. The most detailed explanation 2708 Prime new units from a major U.S. mfg. ever on the workings of the Z - 80 CPU CHIPS. At least one full page on each 650 N.S. access time. Equivalent to four of the 158 Z - 80 instructions. A MUST reference manual for any user of the 1702A's in one package! Z - 80. 300 pages. Just off the press! A D.R.C. exclusive! $12.95 $15.75 each

TERMS: ORDERS UNDER $15 ADD $ .75. NO C.O.D. WE ACCEPT VISA MASTER CHARGE AND AMERICAN EXPRESS CARDS. MONEY BACK GUARANTEE ON ALL ITEMS. TEXAS RESIDENTS ADD 5% SALES TAX. WE PAY POSTAGE! TbIL ELECTRONICS P. O. BOX 401247 GARLAND, TEXAS 75040 (214) 271-2461

Circle 50 on inquiry card. BYTE November 1977 235 www.americanradiohistory.com North Star's New Computer What's New? SYSTEMS

A Finished Product Concept Andromeda's New Computer

North Star Computers Inc has announced the new North Star HorizonTM computer, which uses a full speed (4 MHz) Z -80 microprocessor and includes 16 K bytes of memory, a disk controller with one or two Shugart ISIM"SIM" minifloppy M disk drives, and full ex- tended disk BASIC. A serial IO port is i_...____. i also provided. Options include additional disk drives, hardware floating point arithmetic Andromeda Systems has announced board, 24 line by 80 character upper and

the Model 11/B, an LSm -1 1 based lower case video display controller Vector Graphic Inc, 790 Hampshire turnkey computer. The dual floppy board, and 16 K memory board with Rd A -B, Westlake Village CA 91361, system features 20 K by 16 bits of parity check. The video display board, (805) 497 -0733, has sent along this programmable memory and a 24 line when used in conjunction with the 16 K photo of the latest output of its design video terminal with 80 characters per memory board, will display high resolu- and production facility. This Vector 1+ line. The terminal communicates with tion (480 by 250 point) graphics on a is an Altair (S -100) bus computer pro- the computer via an R5232 interface video monitor. The Horizon computer duct in an attractive cabinet, with pro- at 9600 bps. uses the Altair (S -100) bus. visions for the user to add a Shugart The 11/B uses the RT -11 operating The single drive is $1599 in kit form minifloppyTM (or equivalent) disk drive system, the same system used by the and $1899 assembled. The dual drive is (not included), thus providing an inte- Digital Equipment Corporation PDP -11 $1999 in kit form and $2349 assembled. grated processor and mass storage computer. It is designed for the single Contact North Star Computers Inc, 2465 combination rarely seen so far in the interactive user, although it can support Fourth St, Berkeley CA 94710, (415) personal computing marketplace. Prices up to eight users under multiuser BASIC 549- 0858. start at $659. (optional). System programs include a Circle 478 on inquiry card. Circle 475 on inquiry card. text editor, macroassembler, file manager and batch monitor. The user can choose from a variety of high level Attention London Computer Hackers An LSI -11 Based Computer in a Suitcase language options, including FORTRAN and FOCAL. The processor has a built -in London's Computer Workshop has floating point package. announced a new 4 terminal multiuser The floppy disk system provides 512 computer system including a printer and K bytes of on line mass storage. A a BASIC compiler for under£,3000. To bootstrap loader program is built into obtain more information about this the disk controller. system, contact either Gordon Ashbee or Contact Andromeda Systems, 14701 John Burnett at the Computer Work- Arminta St #J, Panorama City CA shop, 174 (field Rd, London SW10 9AG 91402, (213) 781-6000. ENGLAND, phone 01 373 8571.

Circle 477 on inquiry card. Circle 479 on inquiry card.

From RDA Inc comes news of the PRD11, an LSI -11 based microcomputer EPA's Microcomputer and Floppy Disk the 6800 processor. The microcomputer with the capacity for 56 K bytes of pro- is designated the Micro -68b and comes grammable memory and provisions for complete with 8 K bytes of program- multiple terminal interfaces, a mass mable memory plus the Motorola memory interface and a data acquisition MIKBUG monitor system, 20 mA cur- subsystem. The entire unit weighs 23 rent loop and RS -232 interfaces, and pounds (10.43 kg) and is housed in an cassette interface. In addition, there is a aluminum suitcase, a useful feature for built -in hexadecimal keyboard and LED the traveller. display. PRD11 is a Pictured with the The Micro -68 floppy disk system is Computer Operations portable LI NC compatible with IBM standards and is tape mass memory compatible with the available in either single or dual configu- Digital Equipment Corporation's RT11 rations. Both versions come complete operating system. Software available in- with power supply and interface elec- cludes a macroassembler, FORTRAN IV, tronics. multiuser BASIC, FOCAL and APL. The Micro -68b costs $1878; the The PRD11 complete with 32 K single floppy disk system is $2595, and bytes of programmable memory and a the dual version is $3295. Software serial line interface is priced at $4,950. Electronic Product Associates Inc, available includes FORTRAN IV, Contact RDA Inc, 5012 Herzel PI, 1157 Vega St, San Diego CA 92110, BASIC, assembler language, an editor, Beltsville MD 20705, (301) 937 -2215. have announced a combined microcom- and a floppy disk operating system. Circle 476 on inquiry card. puter and floppy disk system which uses Circle 480 on inquiry card.

236 BYTE November 1977

www.americanradiohistory.com APPLE II I/O BOARD KIT 3RD GENERATION ONLY $63.00 Plugs Into Slot of Apple II Mother Board ASCII KEYBOARD KIT

. FEATURES: KIT INCLUDES: I 3 '. . ..` . j .6, . 1st -. _rir ty 1W -w ?t" 111 ... 18 Bit Parallel Output Port P.C. Board, I.C.'s Sockets and '!` vi" v Iy v w ' : (Expandable to 3 Ports) Assembly Manual. vie day á :1` ir ir "sr T` '"" ; . r a 1 Input Port flr r. .. 7 ]C. 1r lY lÌf i 15mA Output Current Sink PRICE: or Source 1 Input and 1 Output Port TTL or CMOS Compatible for $49.00 y. Addressable anywhere in mem- ory output area 1 Input and 3 Output Ports FURTHER IMPROVEMENTS, MORE FEATURES for $64.00 Can be used for peripheral TTL Logic Circuits OPTIONS: equipment such as printers, +5V, Metal Enclosure (Paint- ' floppy discs, cassettes, paper DEALER INQUIRIES INVITED Power: 275mA tapes, etc. ed IBM Blue and White Upper and Lower Case $25.00 Full ASCII Set (Alpha 18 Pin Edge Con. $2.00 UNGAR SOLDERING IRONS Numeric, Symbols, Control) I.C. Sockets ... $4.00 27W SOLDERING I.C. 10W 7 of 8 Bits Parallel Data Serial Output (Shift IRON KIT DESOLDERING KIT ASSEMBLED Optional Serial Output Register) $2.00 Includes iron, 2 tips, Includes iron and 3 SOLDERING roll of solder and desolder tips for dual IRON Selectable Positive or Upper Case Lock iron stand in lines, cams, etc. Negative Strobe, and Switch (for Capital $14.97 Strobe Pulse Width Letters and Numbers) $6.72 $24.70 `N' Key Roll -Over $2.00 Full Debounced KIT NUMBERS: Key- board, P.C. Board, all re- Carriage Return Key LD -130 PUSH BUTTON quired components and as- 3 DIGITS SWITCH Repeat Function Key sembly manual. A/D CONVERTER Red Shift Lock, 2 Shift Keys NOTE: If you have this or Green 4 User Defineable Keys 63 Key Teletype Key- $11.95 P.C. Board Size: board you can buy the 17 -3/16" x 5" Kit without it for $44.95. 3 for $1.00 .1 l

FROM CONCORD A FULLY PROGRAMMABLE THE FIRST FULL FEATURE SLIDE RULE concord -.. LSI DMM KIT the MATHEMATICIANwIth 100 STEPS INTRODUCTORY PRICE:

RPN logic with built -in hier- Simplified programming You 410 archy for increased speed and simply engage a learn switch 77 accuracy in calculating se- and perform a problem in normal quences involving arithmetic. manner. The 4615 records the trigonometric. logarithmic, pow- formula and lets you debug the er or exponential functions program as it's written. The A three -level stack plusseper- learn -mode capacity total 100 Reg. Suggested Retail $149.00 ate accumulating memory for separate steps Several differ- quick. accurate solutions to com- ent programs can be contained AUTO RANGING plex calculations. Eight -digit at the same time Constant MEASUREMENT RANGES: LED display with full- floating factors can be entered as pro- decimal system Common and gram steps. Delete feature AUTO POLARITY Voltage: (AC& DC) 1 MV- 1000V natural logarithms and antilog- lets you correct programs while Current (AC & DC) 10)-JA- 1A arithms. Sme. cosine. tangent you are writing them. Skip key and inverse trigonometric lunc- permits skippng overenbre pro- AUTO ZERO RESISTANCE: 1 il - 10 M n bons. Instant automatic cal- grams to access additional pro- Basic D.Ç. Accuracy. better than culation of powers and roots grams wrthn 100 -step capacity . 0 1% 1 Digit Instant conversions of radians Programs remain intact until 3 Large Digits (1/2") Power 4 AA batteries 1 Recharg- to degrees or vice versa new programs are written over able batteries optional) Square, square root. and reci- or until your 4615 is turned off. Rechargable procalcalculations Pi. change You have total freedom to sign. and register exchange select keyboard entries as vari- keys Automatic reciprocals ables or constants. Automatic NI -CAD BATTERIES: AC CHARGER: ENCLO- Ability to automatically sum warning signal in display lets you $6.00 $4.95 squares Storage memory know when you exceed pro- SURE: $12.95 TEST LEADS: $2.95 SHUNT KIT FOR 3 'Roll -down' clear. MOS /LSI gramming capacity. The 4615

solid -state circuitry Engmeer- 11 is rechargeable and comes com- CURRENT RANGES: $4.75 ed and manufactured by Nation- plete with nickel cadmium bat- al Semiconductor Corp . a world teries Minimum Order: $10 00 leader in solid -state technology SHIPPING AND HANDLING 10 DAY MONEY BACK GUARANTEE KEYBOARD. DMM and CALCULATOR: 53.50. ALL OTHERS - S1.00. California residents add 6% sales tax ELECTRONICS WAREHOUSE Inc. _4615@2995 1603 AVIATION BLVD. AC charger @ 4.95 REDONDO BEACH, CA. 90278 - Carrying case @ 2 95 TEL. (213) 376 -8005 Calc. stand @ 1 95 WRITE FOR FREE CATALOG You are invited to visit our store at the above address

Circle 56 on inquiry card. BYTE November 1977 237

www.americanradiohistory.com Z80 Microcomputer Boards What's New? SYSTEMS

Gnat Leaps into Dual Minifloppy System A "Puzzling" New Development from Europe

Zilog Inc has introduced a family of Z80 based microcomputer boards to offer users a módular approach for build- The dual GNAT -PAC System 8 ing their own computing and processing microcomputer is now available with systems. dual minifloppy disk drive from Gnat The new MCB board series is de- Computers Inc, 7895 Convoy Ct, Unit 6, signed with Zilog's Z80 circuit. Each of San Diego CA 92111. Each minifloppy the present boards is bus compatible and has storage capacity of 80 K bytes; oper- directly interfaces with all other boards ations include on board data buffering, in the series. All boards currently offered automatic seeking and disk initialization. are available for delivery 30 days ARO. The system is called the extended Leading off the series is the Z80 -MCB System 8, and it comes equipped with What's happening in Europe? One microcomputer board, designed to oper- the following features: answer to the question is ES's new ate as a single board computer, including 16 K bytes of programmable "Puzzle" microprocessor system. Puzzle its own self- contained memory, plus memory. is a 6502 based system which uses serial and parallel 10 ports. The Z80- 2 K bytes of programmable read European style printed circuit boards MCB has capacity of 4 K bytes, of only memory (PROM) with space and connectors. It consists of a processor dynamic programmable memory, plus up for an additional 14 K bytes. card (with 500 bytes of programmable to 4K bytes of programmable read only Serial and parallel 10. memory and 2 K bytes of programmable memory, erasable read only memory, or Disk interface and controller. read only memory), a 4 K byte program- read only memory. Hexadecimal front panel. mable memory extension card, a 6 to 12 The Z80 -MCB can be expanded to Software for the System 8 includes a K byte programmable memory extension include more 10 and memory by adding monitor, bootstrap loader, and disk card, and an 10 card. other boards in the series. A strapping

operating system. The monitor and load- A software development and test option allows users to put 16 K by 1 bit er are PROM resident. The disk operat- system is also available which features dynamic programmable memory mod-

ing system features an assembler, editor serial and parallel interfaces. ules in place of 4 K by 1 bit program- and debugger with trace, test and debug For more information, contact Ing mable memory modules. Single unit capability. PL /M, BASIC, FORTRAN Ernst Steiner, 1130 Wein Geylinggasse price of the Z80 -MCB is $495. and other high level languages are avail- 16 AUSTRIA, phone 82 26 74. The Z80 -MDC memory /disk control- able. Single unit price is $3690. ler board provides users with 12 K bytes Circle 462 on inquiry card. Circle 463 on inquiry card. of dynamic programmable memory, plus a floppy disk controller capable of han- dling up to eight floppy disk drives. The Z80 -MDC has a strapping option for Wintek Module Line Here is the beauty contest photo of setting start address of each 4 K byte the Wintek line of modules for micro- page. feature is a 16 processor systems use. This unique line Another bit cyclic redundancy check. Single quantity price of "Wince Micro Modules" includes of the Z80 -MDC is $795. backplanes, card racks, power supplies The Z80 -PMB /PROM memory board and associated items. The intent is to provides up to 32 K bytes of memory. allow the user to quickly and cheaply Jumper options allow each 16 K bytes of assemble a customized microcomputer memory to reside in any segment of the system using the standard 4.5 by 6.5 64 K address space. The price is $395 for inch (11.4 by 16.5 cm) 44 pin connector single units, excluding the cost of pro- cards available from the firm. Options grammable read only memory chips. available include modules for control, Also included in the MCB series are volatile user memory, ROM and EROM three programmer boards and three programmer, analog interfaces, data ac- interface boards. Standard card cages, quisition, relay drivers and sense inputs, extender boards, edge connectors and cassette interfaces, floppy disk interface, wire wrap boards are available as options. console, CMOS volatile memory with For more information contact Dave battery backup, and a touch tone West at Zilog, Rd, transmit /receive modem. Wintek is 10460 Bubb Cuper- located at 902 N 9th St, Lafayette IN tino CA 95014, (408) 446 -4666. Circle 464 on inquiry card. 47904, ( 317) 742- 6802. Circle 465 on inquiry card.

238 BYTE November 1977

www.americanradiohistory.com p111 pai'IS to PEPÏDhEIa, , . S . a on e stop, mail-order computer store, serving co111pllter enthusiasts since 1973. Vector VP2 Asse mbled Mb£1:o computer Case 8K x 8 Low power Schottky 74LS00 $0.30 74LS151 $0.95 This adjustable packaging system for 74LSO1 0.30 74LS155 1.38 S -100 buss microcomputers is compatible Econoram II 74LS02 0.30 74LS157 0.95 with Altair 8800 and IMSAI 8080 size cards. 74LSO4 0.33 74LS160 1.40 Outside, it is beautiful...with a dark blue single kit $163.84 74LS08 0.36 74LS161 1.40 textured vinyl finish and lines unmarred by 74LS10 0.30 74LS162 1.40 external screws or fasteners. Inside, 3 kits-24K!- $450 74LS11 0.36 74LS163 1.40 there is space for 21 cards total (on 0.75" 74LS12 0.33 74LS168 1.87 centers) with a fully adjustable interior 74LS14 1.38 74LS169 1.87 card mounting system (card guides and hard- 74LS15 0.30 74LS173 1.65 ware provided for 12 cards). The interior 1 74LS20 0.30 74LS174 1.25 is instantly accessible, the rear and front 74LS21 0.33 74LS175 1.15 panels are removable and recessed. If you 1 1 74LS22 0.33 74LS195 1.30 want a classy home for your micro, check 74LS26 0.43 74LS240 1.88 this out...it is the best we have seen. 74LS27 0.36 74LS257 1.25 VP2 ASSEMBLED MICROCOMPUTER CASE....$l34.30 74LS30 0.30 74LS258 1.25 1 74LS32 0.38 74LS266 0.53 1 74LS37 0.45 74LS283 1.20 74LS38 0.45 74LS365/ 74LS42 0.98 80LS95 0.75 I I 1 I I I 111511 111 H I I I ItII I l U I I I11111111011111HH 74LS47 1.00 74LS366/ STATE' 3 TERMINAL CRYSTALS $4.95 each 74LS48 0.98 80LS96 0.75 Those who know memory recognize the Godbout board II (all frequencies in KHz) 74LS74 0.50 74LS367/ 'as not just an exceptional value (it's no secret 74LS75 0.68 80LS97 0.75 10.000 12.800 15.360 16.000 16.384 we know how to keep costs down), but as an example 74LS76 0.50 74LS368/ 18.641 19.200 20.480 24.576 30.720 of how to pack extra options into a basic memory II 74LS86 0.50 80LS98 0.75 31.500 32.768 36.864 38.400 40.960 board. Extras like a vector interrupt provision I 74LS109 0.50 74LS386 0.55 60.000 76.800 100.00 153.60 240.00 if you try to write into protected memory. Con- 74LS125 0.63 81LS95 1.13 figuration as two independent 4K blocks (both pro- SENTRY CRYSTALS: SERIES MODE, FUNDAMENTAL, , 74LS126 0.63 81LS96 1.13 tectable se arrately). A selectable write strobe WIRE LEADS, HC18 PACKAGE $4.95 each 74LS132 1.25 81LS97 1.13 for either PWR or WRITE. An all static design, II (all frequencies in MHz) 74LS138 1.10 81LS98 1.13 1 free of timing and refresh problems. Guaranteed 4.0 4.5315 5.0 8.0 9.0 74LS139 1.15 speed under 450 ns (with on -board wait state logic II 10.0 12.0 15.0 18.0 20.0 1 for use with 4 MHz Z -80) and guaranteed current MISCELLANEOUS CRYSTALS under 1.54 (1250 mA typ). And of course...sockets 25 PIN RS -232 for all ICs, legended board with solder mask, one 500 KHz, series mode, fundamental, HC6 /U CAVI CONNECTORS: sub -%_wPFFMALE package, wire leads $4.95 each year warranty on parts...we've got it all. D type. 1 MHz, series mode, fundamental, wire leads ALSO AVAILABLE: 81( ASSEMBLED, TESTED, WARAAM- JIVmini IIIIIIIIIIII Male plug with o in 1106/Ú package $5.95 each TED 1 YEAR...5188.50; 4K KIT...$100. plastic hood, 2 MHz, series mode, fundamental, wire leads part #8825$3.95 in HC6 /U package $5.90 each - - U Female jack, Qm m part #8625$3.95 IVQn i. EDGE CONNECTORS: IS- 100 -140ST Gold plated soldertail edge con- ,ilr:rllnii(it12t11`,il:aJl}ìï:ut}llWllrilll nector, 0.140" spacing for Altair Motherboards....) /$6, 5/$27.50 1IU 1! a!lUlUa11U1(}?itT1!!,. IS -100ST same but .250" row spacing for IMSAI 1/$5, 5/$22.00 IS.100WW same but gold plated, 3 level wrap posts 1 /$5, 5/$22.00 ACTIVE TERMINATOR $29.0 (MOTHERBOARb'% Plugs into any 5 -100 Motherboard whose buss lacks active terminations. . Cleans up noise, crosstalk, overshoot, and other buss problems that can ;10 Slots $90 18 Slots $124; ` unpredictably. . rjsic spohen here :: :::.. ' ' : Many of you are into making music with your computer; . some people generate sounds within the machine itself, ts', others use them to control synthesizer hardware. Where do we come in? One of our lines is the series of Musi- Kitstm designed by Craig Anderton, writer for Guitar . Player, Popular Electronics, Contemporary Keyboard, and L: . - a bunch of others. MusiKitstm contain a circuit board, IIIEI- electronic components, and pots; user supplies case and 10000 uF at 10V! .._1...... m. hardware. There are 24 in all...some you might like are B uilding a SV power the 8 In, 1 Out Mixer (118, $20) which can mix up to 8 supply? Need to beef Includes all edge connectors, plus active terminations audio inputs to a common output; the Super Tone Control up an existing supply to minimize crosstalk, noise, overshoot, and ringing 10 (117, $10.50) a low noise, state variable filter that that lacks sufficient that may be present with unterminated busses. Excel - gives high, low, and bandpass outputs; a Reverb Unit lent capacitance? Here is for stand alone system, or add to existing (#22, $13.00 less springs) for adding concert hall sound the answer. systems. Kit form only. and acoustic depth. Want to know more? Check our flyer. .

TERMS: Please allow up to 55 for ship- ..SEVERAL GOOD REASONS WHY YOU SHOULD ping, more for Vector $VP 2; excess re- HAVE OUR FLYER: 1) CMOS 2) LINEARS funded. Prices good through end of mag- 3) MICROPROCESSORS 4) POWER SUPPLIES azine cover month. Californians add tax. 5) RESISTORS 6) CAPACITORS 7) DIS- CODs accepted with street address. For Dß0 PLAYS 8) SOCKETS 9) VECTOR PRODUCTS BankAmeric ard® /VISA° /Masterc harge ®orders BILL GODBOUT ELECTRONICS 10) ENCLOSURES 11) ALL THE OTHER ($15 min) call 415 -562 -0636, 24 hours. BOX 2355. OAKLAND AIRPORT. CA 94614 THINGS WE CAN'T FIT INTO THIS SPACE.

Circle 61 on inquiry card. BYTE November 1977 239

www.americanradiohistory.com Memory Module from MITS What's New? MEMORY

Will Memory Megalomania Never Stop? crement of 4 K 16 bit words. These memory parts have a sufficiently fast response time to allow the 9900 to run at its maximum speed of 3.3 MHz clock. A fully populated 32 K byte version of the board sells under part number TEC9900 -MA -32KB for $799 assembled and tested. (At the price of 3 cents /bit installed, who can haggle ?) This is a very desirable item for the homebrewer willing to supply the finishing touches to a 16 bit minicomputer with 32 K bytes of memory. The economics can be summarized as follows:

Technico Inc, 9130 Red Branch Rd, TEC -9900 -SS Processor $399 Columbia MD 21045, (800) 638 -2893, TI -9900 + ancilliaries has just sent along an exciting new TEC -9900 -MA -32KB Memory $799 development for those readers interested 32,768 bytes memory in opting for the Texas Instruments TEC -9900 -PP Power supply $149 The new Altair memory module pro- TMS -9900 architecture. The firm manu- $1347 factures a .f MS-9900 based processor vides 16 K bytes of dynamic random board, shown at .the top in this photo. To these assembled and tested module access memory. The unit runs at a max- 3 W a The new development is the board at the prices one should add the cost of a serial imum power dissipation of and bottom, the TEC- 9900 -MA dynamic ASCII terminal, a cabinet or chassis in maximum cycle time of 350 ns. memory board which has a capacity of which to mount the equipment (home - Crystal controlled logic timing up to 32 K bytes (16 K 16 bit words) brew style), and any mass storage re- eliminates the need for on board oneshot and plugs directly into the previous quired to complete the system. multivibrator circuitry to allow con- TEC- 9900 -SS product. The new board A phone conversation with the firm tinuous operation without wait states. measures 7 by 16 inches (17.8 by at the time this note was being written Bus strips provide isolation between 40.6 cm) and includes all the necessary (July 5 1977) brought out the fact that power and signal lines for maximum refresh and control circuitry. Address forthcoming additions to the line are a noise suppression. Address selection is selection logic allows DIP switches to video and audio cassette interface board switch selectable in 4 K blocks. Each specify any starting address for the 32 K (TEC- 9900 -VA), and a floppy disk board requires one slot on the Altair (S bus. byte region in 1 K address increments. controller, both of which were expected -100) 8800 Contact MITS at 2450 The board uses Texas Instruments TMS- to be available in the fourth quarter Alamo SE, Albuquerque NM 87106. 4051 dynamic memory chips which are of 1977. Circle 467 on inquiry card. organized 4 K by 1 bit. As a result, the board can be populated with any in- Circle 466 on inquiry card. An LSI -11 EROM Board

10100110110 t Attention Microprogrammed Computer slower TTL logic.) Illustrating the way surosmigi í*- I Designers future packaging trends are going, this MC10803 memory interface processor is Gtß_J11_"_ +_ mounted in a so- called "quad in line" (QUIL) package with four rows of 12 pins for 48 pins total. 111111111111111 Its internal logic, shown in the back- ground, includes six 4 bit registers, an RDA Inc, 5012 Herzel PI, Beltsville arithmetic logic unit (with encoded MD 20705, (301) 937 -2215, has sent selections of function and operands) and along this picture of an LSI -11 option data transfer circuitry. Its intended use is (Digital Equipment Corporation) which as a node in a large machine, dedicated requires two slots of an LSI -11's back - to memory and peripheral operations. plane and provides 8 K bytes of storage An example is performing the tasks of using 2708s as memory elements. The direct memory access control where memory is set up for selectable

intelligent programming is useful, but addressing. Power requirements are 1 A the versatility of a main processor is not on each of three voltages: +5 V, -5 V needed. and -12 V when all sixteen 2708 mem- The high speed nature of this device ories are plugged into the circuit in the and its price ($40 in 100 quantity) say empty sockets shown in the photo. (A Motorola has sent along this photo that this chip will be of most interest to separate programming device is required and block diagram of a new addition to those individuals designing new products does a - their M10800 family of high speed since this board not include built MECL 10,000 current mode logic. (This subject to high performance specifica- in programmer.) Exclusive of the 16 tions. For more information contact memory chips, the price this board is family of logic is used in the highest of Jerry Tonn at Motorola Semiconductor a mail speed contemporary processors, and due $285. Assuming current order Products, POB Phoenix price $35 each to the difficulties of designing with 20912, AZ of for 2708, fully stuffing transmission line interconnections, tends 85036,(602)962- 2515. the board will cost $560. to be ignored by experimenters favoring Circle 468 on inquiry card. Circle 469 on inquiry card.

240 BYTE November 1977

www.americanradiohistory.com DIODES/ZENERS SOCKETS/BRIDG ES TRANSISTORS, LEDS, etc. 1N914 100v 10mA .05 8-pin pcb .25 ww .45 2N2222 NPN (Plastic .10) .15 1N4005 600v 1A .08 14-pin pcb .25 ww .40 2N2907 PNP .15 1N4007 1000v 1A .15 16-pin pcb .25 ww .40 2N3906 PNP .10 1N4148 75v 10mA .05 18-pin pcb .25 ww .75 2N3054 NPN .35 1N753A 6.2v z .25 22-pin pcb .45 ww 1.25 2N3055 NPN 15A 60v .50 1N758A 10v z .25 24 -pin pcb .35 ww 1.10 T1P125 PNP Darlington .35 1N759A 12v z .25 28 -pin pcb .35 ww 1.45 LED Green, Red, Clear .15 1N4733 5.1v z .25 40 -pin pcb .50 ww 1.25 D.L.747 7 seg 5/8" high com- anode1.95 1N5243 13v z .25 Molex pins .01 To -3 Sockets .45 XAN72 7 seg com -anode 1.50 1N5244B 14v z .25 FND 359 Red 7 seg corn-cathode 1.25 2 Bridge 100 -pry 1N5245B 15v z .25 Amp 1.20 25 Amp Bridge 200 -pry 1.95 C MOS - T T L - 4000 .15 7400 .15 7473 .25 74176 1.25 74H72 .55 74S133 .45 4001 .20 7401 .15 7474 .35 74180 .85 74H101 .75 74S140 .75 4002 .20 7402 .20 7475 .35 74181 2.25 74H103 .75 74S151 .35 4004 3.95 7403 .20 7476 .30 74182 .95 74H106 .95 74S153 .35 4006 1.20 7404 .15 7480 .55 74190 1.75 745157 .80 4007 .35 7405 .25 7481 .75 74191 1.35 74L00 .35 74S158 .35 4008 .95 7406 .35 7483 .95 74192 1.65 74L02 .35 74S194 1.05 4009 .30 7407 .55 7485 .95 74193 .85 74L03 .30 74S257 (8123) .25 4010 .45 7408 .25 7486 .30 74194 1.25 74 L04 .35 4011 .20 7409 .15 7489 1.35 74195 .95 74L10 .35 74L500 .35 4012 .20 7410 .10 7490 .55 74196 1.25 74L20 .35 74L501 .35 4013 .40 7411 .25 7491 .95 74197 1.25 74L30 .45 74LS02 .35 4014 1.10 7412 .30 7492 .95 74198 2.35 74L47 1.95 741_504 .35 4015 .95 7413 .45 7493 .40 74221 1.00 74L51 .45 74LS05 .45 4016 .35 7414 1.10 7494 1.25 74367 .85 74L55 .65 74L508 .35 4017 1.10 7416 .25 7495 .60 74L72 .45 74LS09 .35 4018 1.10 7417 .40 7496 .80 75108A .35 74L73 .40 74LS10 .35 4019 .60 7420 .15 74100 1.85 75110 .35 74L74 .45 74LS11 .35 4020 .85 7426 .30 74107 .35 75491 .50 74L75 .55 74LS20 .35 4021 1.35 7427 .45 74121 .35 75492 .50 74L93 .55 74LS21 .25 4022 .95 7430 .15 74122 .55 74L123 .55 74LS22 .25 4023 .25 7432 .30 74123 .55 74H00 .25 74LS32 .40 4024 .75 7437 .35 74125 .45 74H01 .25 74S00 .55 74LS37 .35 4025 .35 7438 .35 74126 .35 74H04 .25 74S02 .55 74L540 .45 4026 1.95 7440 .25 74132 1.35 74H05 .25 74S03 .30 74LS42 1.10 4027 .50 7441 1.15 74141 1.00 74H08 .35 74SO4 .35 74LS51 .50 4028 .95 7442 .45 74150 .85 74H10 .35 74S05 .35 74LS74 .65 4030 .35 7443 .85 74151 .75 74H11 .25 74S08 .35 74LS86 .65 4033 1.50 7444 .45 74153 .95 74H15 .30 74S10 .35 74LS90 .95 4034 2.45 7445 .65 74154 1.05 74H20 .30 74S11 .35 74LS93 .95 4035 1.25 7446 .95 74156 .95 74H21 .25 74S20 .35 74LS107 .85 4040 1.35 7447 .95 74157 .65 74H22 .40 74S40 .25 74LS123 1.00 4041 .69 7448 .70 74161 .85 74H30 .25 74S50 .25 74LS151 .95 4042 .95 7450 .25 74163 .95 74H40 .25 74S51 .45 74LS153 1.20 4043 .95 7451 .25 74164 .60 74H50 .25 74S64 .25 74LS157 .85 4044 .95 7453 .20 74165 1.50 74H51 .25 74S74 .40 74LS164 1.90 4046 1.75 7454 .25 74166 1.35 74H52 .15 74S112 .90 74LS367 .85 4049 .70 7460 .40 74175 .80 74H53.í .25 74S114 1.30 74LS368 .85 4050 .50 7470 .45 74H55 .25 4066 .95 7472 .40 4069 .40 4071 .35 LINEARS, REGULATORS, etc. 4081 .70 8266 .35 LM320K5 (79051 1.65 LM340T24 .95 LM723 .50 4082 .45 MCT2 .95 LM320K12 1.65 LM340K12 2.15 LM725 1.75 8038 3.95 LM320T5 1.65 LM340K 15 L25 LM739 1.50 SERIES LM201 .75 LM320T12 1.65 LM340 K 18 1.25 LM741 (8-14) .25 93019000 85 LM301 .25 LM320T15 1.65 LM340K24 .95 LM747 1.10 9309 .35 LM308lMini) .75 LM339 .95 LM373 2.95 LM1307 1.25 9322 .85 LM309H .65 7805 (340751 .95 LM380 .95 LM1458 .95 95H03 .55 LM309K (340K-5) .85 LM340T12 1.00 LM709 (8,14 PIN) .25 LM3900 .50 9601 .75 LM310 1.15 LM340T15 1.00 LM71 1 AS LM75451 .65 9602. 50 LM311D (Mini) .75 LM340T18 1.00 N E 555 .50 LM318 (Mini) .65 NE556 .95 MEMORY CLOCKS NE565 .95 74S188 (8223) 3.00 NE566 1.75 1702A 6.95 INTEGRATED CIRCUITS UNLIMITED NE567 L35 MM5314 3.00 MM5316 3.50 2102 -1 1.75 7889 Clairemont Mesa Boulevard, San Diego, California 92111 SPECIAL 2102L -1 1.95 (714) 278 -4394 (Calif. Res.) TR 1602B/ DISCOUNTS No minimum Total Order Deduct TMS 6011 6.95 All orders shipped prepaid $35 -$99 5% 8080AD 15.00 Open accounts invited COD orders accepted $100 - $300 10% 8T13 1.50 $301 - $1000 15% 8T23 1.50 Discounts available at OEM Quantities California Residents add 6% Sales Tax $1000 - Up 20% 8T24 2.00 All IC's Prime /Guaranteed. All orders shipped same day received. 2107B -4 4.95 24 Hour Toll Free Phone 1- 800 -854 -2211 MasterCharge / BankAmericard / AE Circle 70 on inquiry card. www.americanradiohistory.com A16K Bit EROM What's New? MEMORY

An E ROM Programmer Nonvolatile to the Core For the first time, to our knowledge, a product has been designed for the Altair (S -100) bus which provides core memory for a personal computer system. If your 2708 erasable programmable The product is Micro Memory Inc's read only memories (EROMS) are filling MM -5100 8 K by 8 bit programmable up fast, here's one answer to the pro- memory card. Of what use is a magnetic blem: Texas Instruments' 2716, a direct core memory in an age of semiconductor plug-in replacement for the 2708. Each circuits? Nonvolatility is the answer. chip contains 16,384 bits of memory With a core memory, magnetic storage of and features low power consumption data is involved, a technology which is (375 milliwatts typical) and DC noise not dependent upon continuous immunity in both high and low states application of power. Turn off the so that all inputs can be driven by TTL power on a core memory, and it will logic without the use of pullup resistors. MicroPeripherals, 24 Matford Close, retain its pattern unaltered "forever." The memory circuit is organized as Westbury on Trym, Bristol BS10 6LR Turn on the power and the active 2048 words of 8 bit length. It is designed ENGLAND, has announced this pro- circuits, and it is functionally like any for high density, fixed memory applica- grammer for the popular erasable read semiconductor programmable memory. tions where low power dissipation, fast only memories with part numbers This core memory card thus combines turnarounds or program changes are 2704, 2708 and 2716. The product the nonvolatility of a read only memory required. Maximum access and minimum

will program a 1 K chip in 2.5 minutes, with the programmability of dynamic or cycle times are 450 ns. The data outputs a process which includes setting up the static semiconductor memories. of the TM52716 are three state to allow programmed pattern and verifying the The MM -5100 unit plugs directly into connecting of multiple devices on pattern. The programmer is intended the Altair (S -100) bus, and has all the common bus. The EROM can be erased to be used with the user's processor as a circuitry needed: timing, control logic, by exposing the chip through the trans- peripheral, and comes in several models. decode logic, drive circuits, address and parent quartz lid to high intensity ultra- The basic model is intended for use with data latches, power regulators, etc. It violet light. The TM52716J L is supplied 2704 (1/2 K bytes) and 2708 (1 K bytes) runs with a 1.0 µs cycle time so that no in a standard 24 pin dual in line ceramic parts, borrowing power from the user's wait states are needed with a standard package. system. This model is priced at $199. 8080 clock rate. The price is $650 from Contact Texas Instruments Inc, In- The larger models feature built -in power Micro Memory Inc, 9438 Irondale Av, quiry Fulfillment Service, POB 1443, supplies and manual operations via Chatsworth CA 91311, (213) 998- MSS 669 (attn: TM52716) Houston TX switches and LED readouts. 0070. 77001, (214) 238 -2011.

Circle 486 on inquiry card. Circle 487 on inquiry card. Circle 488 on inquiry card.

At the Frontiers of Silicon Technology

This electron microscope image shows a new American Microsystems Inc VMOS process memory device with a human hair juxtaposed on top of it. The magnification factor is on the order of 10,000 times the actual size. The V in VMOS is emphasized by the V- shaped slots in the structure of the devices. The part design from which this enlargement was made (the 54015 -3 integrated cir- cuit) is a new commercial volatile memo- ry product which has an extremely fast

access time (45 ns) and 1 K by 1 bit static operation. The product is intended for use with fast random access scratch pads, buffers, cache memories, etc. For those implementing microprogrammed machines on an experimental basis, this memory will prove ideal in a control store matched to the characteristics of the TTL bit slice parts such as the 2900 and the Texas Instruments' 745481 family. American Microsystems Inc is lo- cated at 3800 Homestead Rd, Santa Clara CA 95051, (408) 246 -0330.

Circle 489 on inquiry card.

242 BYTE November 1977 www.americanradiohistory.com MICROCOMPUTER BANKAMERICARO 080A DYNAMIC RAMS MISC OTHER SHIFT REGISTERS USRT SUPPORT DEVICES 414D COMPONENTS (16P) 5.50 DYNAMIC S-2350 13.50 1103 8212 4.00 (16P) 1.50 N H0025CN 1.75 IM-6403 10.80 2104 1404AN 3.00 8214 12.95 (16P) 6.50 NH0026CN 3.00 TMS-6011 (TI) 6.25 2107B 2405 4.95 8216 5.25 (22P) 4.50 N8T20 4.00 TR-1602A (WD) 6.25 2107B-4 2505K 3.00 8224 6.00 (22P) 4.00 N826 3.25 SHIFT REGISTERS 8228 9.25 TMS4050 (18P) 4.50 N8T97 1.45 UARTS 8238 8.20 TMS4060 (22P) 4.50 74367 1.00 STATIC 8251 12.00 4096 (16P) 5.50 AY5.1013 6.75 DM8098 1.00 M M 506 .89 8253 28.00 MM5262 (22P) 3.00 AY5-1014A 9.95 1488 1.95 2509K 1.00 8255 12.00 MM5270 (18P) 5.00 1489 1.95 2518B 3.95 8257 22.00 MM5280 (22P) 6.00 3205 6.20 2533V 2.00 8259 22.00 CHARACTER D-3207A 2.50 TMS3002 1.00 6800 SUPPORT STATIC RAMS C-3404 3.95 TMS31 12 3.95 GENERATORS 6810P 6.00 31L01 2.00 P-3408A 6.75 M M 5058 2.00 2513 6.75 6820P 8.00 91L11A 4.25 P-4201 4.95 2513 6.75 FIFO 6828P 9.60 91 L12A 4.25 MM-5320 7.50 3257 18.00 6834P 21.95 1101A 1.00 MM-5369 2.00 3341A 6.75 MCM6571 10.80 DM-8130 6850P 12.00 2101 3.00 3.00 2812 -D 11.95 MCM6571A 10.80 DM-8131 6852P 17.00 2102 (10S) 1.25 2.50 MCM6572 10.80 DM-8831 KEYBOARD CHIPS 6860P 15.00 2102-1 (5.00NS) 1.50 2.50 MCM6581 8.75 DM-8833 6862P 18.00 2M1A -4 4.45 2.50 AY5 -2376 14.95 DM-8835 6880P 2.70 2112A -4 3.00 2.50 AY5 -3600 14.95 SN74LS367 1.00 WAVEFORM Z80 2501 B 1.45 TV GAME CHIPS 3107 2.95 SN74LS368 1.00 TMS 1955 (6 Games) GENERATOR SUPPORT DEVICES '4200A (250NS) 13.75 10.95 8038 4.50 3881 15.95 410D (200NS) 11.95 MICROPROCESSOR'S AYSS -8500 (6 Games) MC4024 2.75 3882 15.95 '4804 20.00 F-8 19.95 10.95 566 2.00 F -8 SUPPORT DEVICES 5101 20.00 Z-80 36.95 74C89 3.00 3851 14.95 Z-80A 49.95 PROM'S 74S201 4.75 CDP1802DC 29.50 3852 14.95 1702A 5.00 5204AQ 10.00 91 LO2A 2.00 AM2901 22.95 1702AL 7.00 6834 21.95 7489 2.25 6502 24.95 FLOPPY 2704 20.00 6834 -1 16.95 8225 1.50 6800 24.95 2708 24.00 82S23B 4.00 DISC CONTROLLER 8599 1.50 8008-1 8.75 2716 75.00 82S129B 4.25 82S09 9.00 PD372D 65.00 8080A 15.95 3601 4.50 8223B 4.00 supply. 1771 69.95 'Limited 8080B 16.95 5203AQ 7.00

IMSAI /ALTAIR S'lOO COMPATIBLE Assembled &:Testèd JADE 8K STATIC RAM BOARD Z80 KIT 250ns. $209.95 -with PROVISIONS for 350ns. $199.95 ONBOARD 2708 and POWER ON JUMP 450ns. $189.95 * WILL WORK WITH NO FRONT PANEL * FULL DOCUMENTATION * FULLY BUFFERED * S100 DESIGN $135.00 EA. * ADEQUATELY BYPASSED * LOW POWER SCHOTTKY SUPPORT IC'S ar.geix.x3i3a 40® KIT Electronics for the Hobbyist and Experimenter 5351 WEST 144th STREET 250ns. $169.95 LAWNDALE, CALIFORNIA 90260 (213) 679 -3313 350ns. $149.95 Discounts available at OEM quantities. Add $1.25 for shipping. California residents add 6% sales tax. 450ns. $139.95

Circle 78 on inquiry card. BYTE November 1977 243 www.americanradiohistory.com and donations are said to be tax- deduct- ible. Subscriptions are $8 per year in PUBLICATIONS the US. Single copy price is $1.50. What's New? The editorial flavor which Phyllis brings to this publication is that of commentary on what's happening, light software, background information on Motorola's New HEP Catalog Is the Dragon a Phoenix? computing and related peripheral issues. It is a magazine intended to be readable and enjoyable for the neophyte. (Our resident noncomputer people at BYTE grabbéd the first issue so quickly that it became difficult to find a copy from which to abstract this short review.) Some titles from the first issue received here in the new format include:

Home Computing: An Introduc- tion for Novices Once Upon a Faire Computers and Copyright Law Women and Computers: A Dia- logue The Dot and the Line Stock Market Simulations BASIC Mortgages Motorola has announced its new Exagon cross reference guide and catalog describ- Women and Math Projects: ing the HEP line of semiconductor Lawrence Hall of Science products. HEP products are designed Space Colony: Living In a Garden primarily for hobbyists, experimenters, of Illusions professional service technicians and Fortran Man dealers and consist of replacements for a More Tiny BASIC large number of transistors, thyristors, The theme and renewal is a of rebirth Make Believe Computers diodes and FET5, as well as RTL, HTL, very real one, as exemplified by Phyllis Pilot DTL, TTL and CMOS integrated circuits Cole's transformation of People's Com- The Data Handlers Users Manual, and linear devices. The catalog costs $2 puters from a newspaper format tabloid Part 3. and is available from the Motorola (hard to keep track of) into the 64 page Announcements Technical Center, Motorola Semi- (including covers) saddle stitched publi- Letters conductor Products Inc, POB 20294, cation shown in its May -June 1977 form Phoenix AZ 85036, (602) 244-6900. in this photo. People's is Computers It is an interesting and positive transfor- published bimonthly by People's Com- mation which should be sampled to be Circle 456 on inquiry card. puter Company, 1263 El Camino Real, believed...CIi Box E, Menlo Park CA 94025. PCC is a tax -exempt, nonprofit corporation Circle 458 on inquiry card.

IEEE Offers Microprocessor Talks on Cassette A Special Free Offer from Radio Shack Fenwal Offers a New Thermistor Manual A recording of three talks given at a Radio Shack is offering five free tutorial "How to Use Microprocessors" copies of their new Archer Semicon- held at Stanford University in the ductor Reference Handbook to any in- Spring 1976 is available on standard of terested organization. magnetic tape cassettes for $5 from the The 128 page handbook, which nor- IEEE. The talks are by Dr Robert mally sells for $1.95, lists over 36,000 Noyce, chairman of the board, Intel replacement transistors, diodes and other Corporation, Floyd Kvamme, vice pres- devices, and includes a cross -reference ident, National Semiconductor, and Dr guide, sections on the care and handling Adam Osborne, president, Osborne of transistors, soldering precautions, how Associates. to test transistors, and a glossary. Topics covered include future To get five free copies of the hand- developments in microprocessors, the book, write on your club's stationery to business aspects of producing them, and Radio Shack, Dept SRH, 2617 W 7th which of the current microprocessors is St, Fort Worth TX 76107. most suited to particular hardware requirements. The tutorial was Many people who read BYTE are sponsored by the IEEE Computer interested in microcomputer applications Society, the Electron Devices and the involving temperature measurement. One Home Computer Books Available Reliability Groups, Santa Clara (Silicon) way to monitor temperatures is with a Valley Section. Dilithium Press has a new brochure thermistor. Fenwal Electronics is making To obtain your copy of the cassette detailing their computer books, all of available a free 34 page thermistor tape, send a check for $5 to the IEEE which are slanted toward the home com- manual containing a variety of tempera- Section Office, 701 Welch Rd, Palo Alto puter hacker. Beginner's books as well as ture coefficient tables, resistance temper- CA 94304. Notes on the blackboard more advanced books are included in the ature tables and so on. Contact Fenwal presentations and view graphs of the list, available for free from Dilithium Electronics, 63 Fountain St, Framing- speakers will be included. Press, POB 92, Forest Grove OR 97116. ham MA 01701, (617) 872 -8841.

Circle 457 o n inquiry card. Circle 460 on inquiry card. Circle 461 o n inquiry card.

244 BYTE November 1977 www.americanradiohistory.com 7400N TTL Grab Bag Specials WIRE WRAP CENTER HOBBY -WRAP TOOL -BW -630 5674004 5174726 39 94741606 1 25 5674016 9174736 39 0741694 .99 CAPACITORS RESISTORS Banery Operated (Size C) GB100 100 ea Cerark Disc S2 C011 at P. S2.00 5N7402N .20 5674746 35 07416214 1 95 69116 201.a. wan AssomT 1 80ea MyMn 4 94740314 20 074756 50 0741636 99 GB101 OO/IaI 6e117 20). w n Assonant 2.00 Weighs ONLY 11 Ounces 69102 604.Ek2loylia 4DOAo1 5N74DW N 9474766 35 5N74164N 99 69118 40 ea. Wawound 3.10 watt 1.100 ohm 5.50 Wraps 30 AWG Wire onto 5474051 5674794 5.00 5174165N 99 GB103 IOU Tale. (Tubular( 400/lol 69119 40 n. Wiewwd 3.10 waft 100..25K 5.00 Standard DIP Sockets (.025 Inch) 6674024 20 9474204 50 514747666 125 69104 20 ea. Cerark lomre's (malMal 6 OOAOI $34.95 celos mnees 1101 9174076 35 917482N 99 514741676 3.25 20u Can. lnrrers SWITCHES neweah Complete with butt -in bit and sleeve 6674086 20 9174836 70 514741706 210 (hoa4. . Oruralked( 100/61 G0120 25 ea. M'rn lure Slide 3.00 SN74031 .25 5N74856 89 5H74172N 6 CO GBI21 12 u Rocker 3.00 DIODES 20 ea 5N7410H 20 56741366 39 5N74173N 1.50 G6122 Reed.Cal 8 Magnetic 5.00 WIRE -WRAP KIT WK -2 -W GB106 100 ea Germania-- 2 00hot - SM74111 30 SN7488H 3'0 0741746 1 25 WRAP 56ì412H .35 9474894 2.49 07417514 .99 613107 100 ea SA= 2.0002 MISC. STRIP . UNWRAP SM74131 69 5N7490N .45 5N741761 .79 G8123 30 ea Hut &M. ASS! Saes 2.50 Tool for 30 AWG Wire SN7414H 70 5H7491M 75 0741776 .79 INTEGRATED CIRCUITS 69124 6 u. Calcu'ator Type Keyboards 5.00 60108 50 ea. Serles Roll of 50 Ft. White or Blue 30 AWG Wire SM74161 35 997493N 49 5H74179N 2.49 Mat. ill 400 /bi GB125 300. Mo'ex P'ns(8.9.14 sect.) 300 68109 Marked 400/lot SN7417H 35 9174936 49 0741604 99 30ea. Linear 68126 S0 ea. Opto Is2aioos ILl Seoes (untested) 2.00 pi each 1 2 3" & a" lengths - 68127 ea. Trans4ias Mastic Power 947421314 .20 5674901 .79 567.1,694 249 100 6 3.00 pre-strippedtrripped wire. LEOS - Readouts 68128 Iron Tape 5474211 39 56749514 79 07416211 95 LAMPS 30 ea 'farads Caes 6 400 49 GB110 100. ASST LEDS 6.00Áa 69129 SOea. PfoloTlanSSlors 4.00 SM74221 5147490 79 94741846 1 95 $11.95 G9111 40 ea. NE2 Tyalar;s 3.00 /Ion 68130 1 SN74231 37 9174976 3 00 5H74185N 1.95 as Tape Or ve 6 volt Mola with Erase Heed 6 G9112 20 e . Mullq:e Readouts. CaISalors. Watches. 2 Cassette Tapes (no 21 Ii 1) 500 5N74251 29 5H74100h 1 25 5X7/1666 5.00 Tmns. Leasio Penayex 68131 Asst 4.00 SX74261 .29 5H74107h 39 5H74M7N 6.00 30 u. 6" SfMlubug Saes 6 Colors WIRE WRAP TOOL WSU -30 37 56741096 567418.56 395 New - used - Rents 6Mel 69132 Wre ASSI Saes 6 Cebos -16. 295 5N74271 95 WRAP STRIP . UNWRAP -56.95 5117420 .42 5N74116h 1 95 SH7419oN 179 POTENTIOMETERS 5674304 25 SN74121h .39 5N711916 1 25 68113 30 u. enrulare Trameis W0..1meg 100 WIRE WRAP WIRE 30 AWG SM74321 35 SN74122N 39 SM<192N 80 68115 10 a. IO Turn P.C. Mani (renangular - 68114 10 ea. 10 horn P.C. Mount SM74371 5H74123h .50 07419314 69 (roc. guiar mamaikedl 200 251. min. 51.25 500. 61.95 100ft. $2.95 10001. $15.00 marked) 400 P.C. 5N74381 35 5H74125N 60 5H74194N 1.25 6803 15 ea. N" somata Snpe lam Mount SPECIFY . Yellow . - - - msmalleal COLOR - While Red Green Blue Black SN7439N 25 56741261 80 07419511 .75 l SH7440N 21 'N741326 125 5H7u96N l 00 WIRE DISPENSER WD -30 51714tH 89 5174136h .95 0741976 1.00 pia. - 25" .190" 04 567442N 69 SN74141N 1.15 SN7/198N 175 50 rol 30 AWG K NAR 66209 Rep 1011 X6111 Rea 1031 ft. wire wrap wire $3.45 ea. SH7413 75 5H74142N 2.95 SN 74199N 1.75 %6209 Green 4 /S1 XVI I Green 4:SI Cuts yetis to desired length SH7444H 75 5N74143h 3.25 0042606 5 59 %C111 Ye4nw 1/31 Strips 1" of insulation Specify Blue -Yellow -While -Red 9174454 75 3 00 SN1251N DISCRETE - iN74u4N 179 209 Mboww 461 LEDS KCIII Orange 4,51 9474466 .89 5N74145N 1 15 61742796 90 .280" dIa .115" dla. .065" dl.. 5674476 69 iN7.1147N 235 SN74283N 2.25 New 10/51 xC22 Red XC526 Rep 551 XC558 R o 541 MV50 Red - 641 9174486 89 5N74148N 2.00 94742646 6.00 xC22 Gran 4/S1 XC526 Green 451 X6556 Creen 4/S1 5674506 017415176 125 SN74285N 6.00 3'/2 -Digit Portable DMM x022 Yellow 4 /S1 XC526 Ye'low 451 XC556 Yenow 4/51 INrRAREÙ l6Ù SN7451H 5H74151N 79 567431356 .75 Overload Protected .3" kV LEO IMIWy ñ xC22 Orange 4/SI XC526 D'ange 4/S1 XC556 Orange 4/51 Fi." It 1116' 9474536 25 5H741531 89 947436614 .75 Balle,y oIAC operation Auto Zeroing 551.22 RI 451 xC526 Cleat 151 YC556 Clear 751 el 661.00 25 5H741541 1.25 SN74357N .75 5N74541 Imv. IVa. 0.1 okm resablm Overange rearing .25 51741551 89 SN74368N .75 TYPE POURITY HT PRICE 9474592 10 rep Input k^pendence SN7460N 25 5H741561 89 56743904 2.25 LEDS MAN 6610 Common Calhode.Oouble .560 1 25 DISPLAY DC A¢aacy 1% Typical 9474706 45 5174157M 89 94743936 2.25 047 orange /ACVoka90'. TYPE POUNIIY NT PRICE MAN 8650 Carman Cathode .560 1.25 Ramp. OCW78.04: 0.1C00V 0.1000V Fled. 20% oiscount 01 100 Combined 7400's MAN 1 Common Anode .270 2.95 MAN 6660 Common Anode .560 1.25 Response' 50- 400HLOC- ACCulrent 0- 1030mA

MAN 2 5 6 7 Doi Matra .300 4.95 MAN 6680 Common Cathode .560 1 25 Resisann. 0.10 meg oh^ MAN Common Callnde .125 39 MAN 6710 Common AnodDouble Digit. .560 125 Sae- 64.80 41"67 MNI 4 Comron Cathode 187 195 .b 6D4000 23 CMOS MC14562 14 50 Model 2800 $99.95 MAN 7 Common Anode .270 1 25 MAN 6730 Common Anode.0outM D.911. .560 1 25 CD4g01 .23 CD4566 2 25 MAN 7G Common Anode-green .270 195 red AC Adapter BC -28 8.00 CD4002 23 CD4044 89 MC14583 3 50 Comes min test MAN 7Y Common Anod.ye ow .270 I.95 MAN 6740 Crman C.MOdeoaubk .560 1.25 CD4006 1.19 604046 1.79 ken's. apel log manual Rechargeable Batteries BP -28 20.00 MA N52 Common Mode .300 I.03 Ogn.red CD4001 25 CD4a7 250 74Cm Ser1n -Veen and sonn 1(6e. Carrying Cue LC -28 6.00 MAN71 Cannon Mode .300 1.25 MAN 67W Common CamOO .560 1 25 C04009 49 CD4048 135 74Cm 39 MAN 71 Common Mats 2rd 1.25 MAN 8780 Common Mode -red MO 125 CD4010 A9 CD4049 49 71002 .55 DATA. HANDBOOKS MAN 74 Common CNAOde .300 1.50 MAN 8780 Common -tap .560 125 7400 Pon out & Desaiatlon of 5400 /7400 ICS $2.95 CD4011 23 CD4050 49 74604 75 Carol MAN 81 Common Mode -YmO. .303 100 01.701 Common Mode -nod 51 300 1 00 CMOS Pm out & Description of 4000 Serra ICS S2.95 CD4012 .25 CD4051 1.19 14C10 65 1.25 Linear Pin. & Funation.l MAN 82 Common Modeyelow .300 1 00 0L702 Common Camodd -red .300 out Description S2.95 CD40i3 39 CD4053 119 74C14 300 ALL THREE HANDBOOKS 56.95 MAN 134 Common CaBnda -ydbw .310 ' 00 01704 Comma, GMOdo 300 1.50 CD4011 1.39 CD4056 149 74C20 65 MAN 3620 Canmmon Anode orange .3rd 100 01707 Common Anod. .3rd 1.50 CD4015 119 CD4059 995 74C30 .65 MAN Common Cathode 9e .303 1 75 Common Ce110de 500 ZENERS DIODES RECTIFIERS 1.49 3640 -0011 01728 295 - - C04016 49 CD4050 7402 2.15 TYPE PRICF MAN 4510 Common Amdeotege .300 ton 01711 Common Mode 60C 195 TYPE VOLTS W PRICE VOLTS W CD4017 1.19 CD4066 79 74C73 1.50 4640 .630 1.95 14746 33 400nr 4/1.00 144005 500 PN 1 NAP 10/100 CD4068 39 MAN Carrnon Calhode-0range .400 100 01746 Carman An. CD4018 99 71C74 1.15 1N751Á 5.1 400111 4/1.00 144006 60C Ph/ I AMP 10/1.00 MAN 4710 Common Anon..nd .400 I. D 01747 Gammon Ande .600 275 CD4019 49 CD4069 45 4.00 74C89 16752 5.6 400m 4/100 184007 1000 PN 1 NAP 10/1.00 MAN 4730 Common 400 100 DL749 Common Caudle 630 1 95 CD4020 119 CD4070 55 74C90 3 CO A.M. MAN 4740 Common CNkode-reo 400 1.00 OL750 Cetkode 600 2.19 16753 6.2 4007^ 4/1.00 913600 50 200111 6/1.00 CD4021 129 CD4071 23 Caron 74C93 2.00 1754 6 B 400. 4/1.00 144141 75 1011 15/103 MAN '330 Anod.yNbw .400 Cathode 110 69 CD4022 1.19 CD4076 1.39 Comran 100 01338 Cannon 74C95 2.00 6959 B -2 4006 8/1.00 1N4154 35 10m 12/1.00 MAN 6810 Common Anode.DoubM 041. 560 1.25 FN070 Cam men Cathode (F80359) 250 75 CD4023 23 CD4081 23 71C107 1.25 F50507 (R10500I 129 69650 15 400m 4 /1.80 114305 75 25m 20/1.00 CD4082 23 74C151 orange Cam ma, Canoe, 500 CD4024 79 2.00 N5232 56 5OOn 28 144734 56 1w 28 MAN 6630 Common Anode-orange 560 1 25 1 CD1025 23 MC14409 14.95 74C754 FN0507 Common Mode (FN0510) 500 29 3 00 65234 62 500m 28 944735 6.2 tw 28 MC14410 14 95 74C157 C04026 225 2.15 RCA LINEAR HP 5082 -7400 Series Multi -Digit N5235 68 50073 28 164736 6.8 tw 28 CD4027 69 MC14419 4 95 746160 3 25 CA1067 1.60 - 65236 75 Wan 2B 144738 A.2 1o 29 MC14506 74C161 CA3013 2 15 'A" ht. Common Cathode Red CD4028 99 75 125 C4mB6 .a5 a0020 1456 25 Man 6/100 944742 12 1w 2e CDg29 1 19 MC14507 .99 71C163 3130 CA3023 256 comas 175 wafts 1458 150 7m 114744 15 Iw 3 -5 Cm 5 mbs/second2 7910 61100 26 CD4030 49 C04808 3 95 71C164 325 CA3m5 244 CA3091 10.20 opt N285A IN Ion 591.00 141183 50 PN 35 AA1P 1 80 CDI510 1.39 12C173 CÁ3039 1 35 CA3102 2.95 7 segment Monolithic MITI C04035 .99 260 3 89 79 11001 50PN 1 MIP 12:100 161182 100 PIP 35 AMP 1.70 129 74C193 CA3046 1 30 CA3123 CD4040 1.19 CD4611 2.75 2.15 . Dp Package 44002 100 PN I AMP 12/I 00 I14118S 150 PN 35 NAP 1.50 4 Digit .99 .89 I 71C195 CA3053 1 50 CA3130 1.39 CD4041 25 CD4515 2 95 2.75 N1003 280 PN I NAP 12/1 00 111186 280 PN 35 AMP 180 1.29 CA3059 325 CA7140 1.25 5 Dion 1.19 .99 CD4042 99 CD4517 dOC95 150 44004 400 NV I AMP 1211 00 1N1188 400 Pry 35 AMP 300 CD4D13 89 CD452o 129 80C97 150 CAJ060 3 25 CA34o1 49 CHIP 69.95 CA3080 85 CA7600 175 TV GAME SET - SCR AND FW BRIDGE RECTIFIERS CA30B1 2.m RC4194 5.95 Includes AY-3. 8500 -1 Chip and 2.010 mhz crystal 0360 152@ 400V SCR tM3U0H 60 1.472314 55 CA3082 200 RG195 5195 3.25 S1 95 ea/AY -3 -85004 chip 58.95 ea.) 1M301H LINEAR (2.010 Crystal - - C38M 352@ 200V SCR 1.95 35 0173314 100 1.43010 35 1.617394 119 IC SOLDERTAIL - LOW PROFILE (TIN) SOCKETS 262328 1.6A @200V SCR So 1M002H .75 1M741CH .35 I.24 M0Á980.1 12A @50V FWBRIOGE REC. 195 LM3407 8 1.25 2519 50.100 124 2549 50100 100 I.M3046 1M741CH 35 S 17 IS MDA I2A @ 200Y FW BRIDGE REC 1 95 LM340T-12 1 25 Ban '6 Nor. S 38 37 36 9803 LM305H .60 14741.14M .39 LM340T15 1 25 i4 p'n 20 9 le 213 on 45 44 43 MPS ade TRANSISTORS 141719 111 W 161307C1 35 1.25 0274711 79 is pin 22 21 20 1M340T.18 36 pin 60 59 58 m65106 P61250 41100 LM306H 1.00 1617451 79 18 P113567 LM340T24 1.25 pin 29 28 27 40 mn 63 62 61 2x221' 28400 HI CO 441C0 0.1308C1 1.00 1 027406 39 22 an 1113665 21110' 143504 00 37 36 35SOLOERTAIL STANDARD 28222' (TIN) P113569 a111e2 1,11 CO 1M3096 1.10 14741311 .39 21122221 143510 65 14 pee 327 25 74 213Oá11 5 99 90 81 20701 261405 1 11Cp 14309K 1.25 76MG 175 LM1303N 90 2112269 160'n 30 27 25 36Chn I 39 126 115 2113705 26409 '4100 161310C1 1.15 1.19 2121691 LM370N 1 15 0213004 41 18 Pon 35 32 30 400,11 159 1.45 130 BOMB 06061 CO LM311H .90 1.413091 140 llll 28241 143736 3 25 2113707 215017 01 22 on 49 45 28¢9061 1.43194 .90 0.137714 4.00 1M507N .85 02 263711 Hi m SOLDERTAIL STANDARD (GOLD) 2112904A 1M317K 6.50 0.1380 125 .M1310N - 295 26774 2115069 44100. e o,n S 30 27 24 5 70 63 57 2142925 1.50 NM Nana 129 STI CO 1M318C1 LM380CN 99 011351N 1.65 14 24pin 2.0353 mn 35 32 79 28 o.n 110 I 00 90 2115131 m 130 1.75 214055 .SA 1613196 1M38114 1 79 L111414N 16 an 38 35 32 35 ph 1 75 140 126 29014 285'39 561 co LM320K5 1.35 16138214 1.79 1MI456CN .59 Mn" 2 IB on 47 43 CO 52 40 Po 1.75 159 I45 Mh2955 HMOs 216209 5.11 LM3206.52 1 35 HE5o1K 89G 1M14964 .95 24]906 zxs9s1 Ssl DD WIRE WRAP SOC ETS (GOLD) LEVEL #3 28092 1M320.12 135 1E5102 600 1M1556Y 1.75 7714411 C106615rA 31100 IO S45 41 37 24pin Nam 1M320K.15 I.35 ME529A 495 1421114 1.95 SI 05 95 85 214014 299152 M00 úón 39 38 37 OM 36 140 125 284123 1613207.5 1.25 NE 531H 3 00 LM29094 2 95 110 13 42 41 LM3201.52 1.25 ME5361 600 LM3163 1.50 16 pm 76 p, I 59 145 130 75 68 62 40 18 pin pin 1 75 1 1.43207.8 1.25 1E5401 6 CO LM3051 .69 5 140 CAPACITOR 80 VOLT CERAMIC CORNER 22 pin % as 75 L43207 12 1.25 NE5501 130 LM39000(3401).49 DOC CAPACITORS 1M3211.15 1.25 1E555V 39 1M3905N .89 1.9 10.19 50.100 1A 10-49 50.100 1M320T.18 12S HE560B 5 CO 14390 1.25 50 PCS. RESISTOR ASSORTMENTS $1.755 PER ASST. 10 pi 03 04 03 .00141 .05 04 .035 I.25 185 1M321T.24 1E5618 500 16155566 10 OHM 12 OHM 15 OHM 18 OHM 22 OHM 2251 .05 .04 03 0047w4 00 04 035 1M323.5 595 1E5628 5 CO MC5559V 1 CO 470 D5 04 03 01µi 05 04 035 ASST. 1 5 e.. 27 DHM 33 OVA 39 DHM 47 DVA 56 DHM WÁ77 S % SO PCS. 1.60 1/I 1M3247I 1E565H 1 75 02752514 90 100 pr .05 .04 03 022µi C6 05 04 120 150 1M339N 99 1E5851 1.25 0M75346 75 61 OHM 82 OHM 100 OHM OHM OHM 220p1 .05 .04 03 .047µF .66 05 D4 1M340.-5 135 1E5660 1.75 80388 4 95 ASST. 2 511 180 OHM 220 OHM 270 OHM 330 OM 390 OHM 1/I WATT S% = 50 PCS 470 pf .05 04 .D35 IwF 12 09 075 1.35 143406 16567H 1 95 1M75150 49 180 VOLT MYLAR FILM CAPACITORS 470 OHM 560 OW HO OHM 820 OHM IK 1M340e-8 135 HE567V 149 7545106 39 .001111 .12 10 07 .02201 .13 .11 .Da ASST. 3 5 ea. I2K 1 S I 6 2 2i 2 7K I/I WATT 5% 50 PCS. LM3406-12 1.35 LM703CH 45 75452C1 39 .0022 12 10 .07 0470 .21 .17 .13 LM3I0..15 135 147096 .29 75453C1 39 33K 39K 476 568 68K .00470 .12 .10 .07 .1m l .27 .23 .17 161340K18 1.35 027004 29 75454C1 39 ASST. 4 5 ea. 8 2K 10 12K 15K 18K 1/4 WAIF 5% 50 PCS. .01801 .12 .10 .07 220'1 .33 .27 .22 LM3401(24 1.35 0.171014 79 75491C1 79 +20% DIPPED TANTALMAS(SOLID) CAPACRCRB 22K 27K 716 391 478 LM340T-5 1.25 L1.1711 PI 39 75492[4 69 .1 /35V .26 .23 17 1.5/35V 30 .26 .21 ASST. 5 5 ea. 56K 661 82K ION 11IX 1/4 WAIT 5% SOPCS. eM340T.6 125 L/A723H 55 75494CN .69 15/35V .28 .23 17 2 2/25V 31 .27 .22 1501 1808 220K 270K 3356 22/35V .28 .23 17 13/25V .31 .27 22 17 47/25V .32 28 23 7415153 Iss E ASST.6 5 ea. 390 470K 560. 650 820 144 WATT 5% - S.PCS. .33/35V .28 23 7K5002 1415155 1.25 47/35V .28 .23 .17 6.8 /25V .36 31 25 ;74LS00 TTL 1M 12M 15M 18M 22M 71503 .29 7415157 1 50 ó6/35V .28 .23 .17 10/25V .40 .35 .29 ASST. 7 5n. 2 7M 33M 3 9M 47M 5 6M a,4 WATT 5% SWPCS. 741504 35 7415160 1.95 1.0/35V 28 .23 .17 75/25V .63 .50 40 741505 .35 7415161 195 MNMTLME ALUMINUM OICTROLYit CAPACITORS ASST. 8R Includes Resistor Assortments 1 -7 (350 PCS.) $10.95 ea. 7411308 29 74576 .49 745162 I 95 A061144 132641 Leed 47/50V .10 15 10 74483 7415163 1 95 .15 .13 4725V .13 741510 29 1.75 65.00 Minimum On.r U.S. hals Only Spec Sh.ele 25c - Send 35.2 Stamp for 1411 Catalog - 1.0/504 .16 .14 .11 16 14 11 741513 69 74585 2.49 7415164 1 95 47/50V California R.Mea64 All 6% Sales Tic Dealer Inlennallon Available 15 13 1 - 3.3/50V .15 .13 .10 1.0 /16V 10 74514 1.75 741586 .49 7415175 95 rY 74520 .29 74590 .89 7415181 3 69 4.7/25V .16 .14 12 1.025V .16 .14 11 741526 39 741592 89 745190 2 49 1012511 .15 .13 .10 1.0/501 .16 .14 .11 74527 39 741593 .89 7415191 2 49 10150V 16 .14 .12 4.7/16V IS .13 10 74528 39 741595 1.50 7415192 2 49 2225V .17 .15 .12 4.7/25V .15 13 .10 22/501/ .24 .20 .18 4.7/504 .16 14 .11 74530 .29 741596 , 1.89 7415193 2 49 741532 .39 7115107 59 7415194 189 47/25V .19 .17 .15 10/16V 14 .12 .09 74540 .39 74/5109 .59 745195 189 47/50V .25 .21 .19 10 /25V .15 .13 .10 74542 125 745112 .59 7415253 75 ames 100/25V .24 .20 .18 10/500 .16 .14 .12 100 /504 .35 .30 .28 47/501 24 .21 .19 74547 1.25 74.5123 1.25 7415257 I 75 ELECTRONICS 74551 29 7415132 1.25 7415260 55 220/25V .32 28 .25 100/16V .19 .15 .14 741555 29 7415136 59 7415279 79 1021 -A HOWARD AVE., SAN CARLOS, CA. 94070 22050V .45 .41 .38 11025V .24 .20 .18 741573 49 74508 1.25 7415367 99 PHONE ORDERS WELCOME (415) 592.6097 47D/25V .33 29 .27 100/50V .35 30 .28 - .55 1000/16V .50 .45 220/16V 23 17 16 74574 .49 741.509 1.25 7415388 1 99 All Advertised E45o.. Good Menembic 74575 .69 7/15151 1.25 7415670 3.95 'Mu 2200/16V .70 62 .55 470/25V .31 28 .26

Circle 79 on inquiry card. BYTE November 1977 245 www.americanradiohistory.com What's New? SOFTWARE

PDP -11 Software Information Available A High Level Programming Language Computerized Plotting for the Motorola Microcomputer Sylvanhills Lab has announced the Intermetrics Inc has announced PL/ availability of 8080 software to control M6800, the first high level programming its series of plotters. Approximately 2 K language for the Motorola M6800 (or bytes of memory are required. The soft- AMI 56800) microcomputer. The lan- ware may be used in conjunction with guage is syntactically identical to Intel's application routines available from PLM. Mimi- Visions Inc, 4926 Travis, Houston

PL /M6800 has a 1 pass compiler TX 77002. which produces directly loadable object Plotters are shipped completely code and listings. The new compiler assembled and tested. The user mounts features a user controlled switch to them on the drawing surface and determine whether the emitted code will completes the interconnection between be in the AMI or Motorola loader the control boards and the computer. An format. Other user controlled features 8 bit parallel 10 port, and 5 and 24 V include listings of source code, object power sources are also supplied by the code, and assembler code, as well as user. symbol table dumps. Applications include architectural, The new compiler is accessible via mechanical and schematic drawing; "Real -Time Systems," a new the NCSS timesharing network, or can printed circuit board artwork; position- brochure available from Digital Equip- be purchased directly from Intermetrics ing of small objects; computer generated ment Corporation, describes the hard- for installation on IBM 360 or 370 art; games. Sizes available are 11 by 17 ware and software components of computers. The purchase price of $1000 inches (27.94 by 43.18 cm) for $750, 17 Digital's real time computing systems includes a tape containing the cross by 22 inches (43.18 by 55.88 cm) for based around the PDP -11 family of compiler and all library routines, a user's $895, and 22 by 34 inches (55.88 by computers. The publication covers the manual, a language reference manual, 86.36 cm) for $1200. RT -11, RSX and IAS operating systems, and product maintenance for one year. Contact Sylvanhills Lab Inc at 1 FORTRAN IV, FORTRAN 1V -Plus and The PL /M6800 compiler is com- Sylvanway, POB 239, Strafford MO IAS COBOL high level languages. Also patible with the PL /M language developed 65757, (417)736-2664. covered is special application oriented by Intel to program their line of micro- software for real time data acquisition, Circle 505 on inquiry card. processors. I ntermetrics claims to offer analysis and reporting in biological and "true software portability" in that physical science laboratories and process PL /M6800 is not only "PL /M- like," monitor /control situations. The TEMPOS, a Multitasking Operating but is syntactically identical to PL /M. brochure also lists sample configurations System for MITS Computers Information on PL /M6800 is avail- ranging from PDP -11V03 to PDP -11/70 able from PL /M6800 Product Support, Administrative Systems Inc (AS I) has systems, laboratory and industrial real Intermetrics Inc, 701 Concord Av, its - time interfaces, and available supporting announced memory resident, multi Cambridge MA 02138, (617) 661 -1840. user, multitasking operating system, the services. To obtain a copy, contact Communication Services, Digital Equip- Circle 503 on inquiry card. TEMPOS Operating System for MITS ment Corporation, 444 Whitney St, computers with MITS floppy disks. Up Northboro MÁ 01532. to seven on line users may access the system concurrently, using shared (re- Circle 500 on inquiry card. A Mini Word Processing System entrant) or different tasks. In addition, The Software Store has announced background tasks are supported as New Information for Sphere Owners its Mini Word Processing system designed queued processes. If you've been looking for informa- to run on Altair equipment under disk The TEMPOS system supports shared tion about the Sphere computer, contact extended BASIC, for $150. Mini Word access to data files with a file "lock" Programma Consultants, 3400 Wilshire Processing is designed to help the oper- feature under program control. Blvd, Los Angeles CA 90010. They offer ator generate letters, text, and mailing Extensive file handling capabilities, a free catalog of new software and hard- labels or envelopes. The system consists including user defined logical record ware, plus user group news pertaining to of seven programs which are driven by a length and random access to file, as well the Sphere. The catalog is arranged in menu select routine. Each program inter- as logical record number, are featured. question and answer format, and deals acts with the operator to establish file A command macro feature may be with such topics as the availability of names and drive numbers. The options invoked under the TEMPOS system, al- FOCAL, FORTH, APL and cross com- are selected by the yes or no responses lowing an unlimited number of macros pilers for the unit. to the detailed program prompts. After to be defined and recalled at the system Circle 501 on inquiry card. each function is completed, the system and user program levels. Also, to reloads the menu routine. facilitate debugging, a single step trace A user's manual consisting of 51 feature is included for assembly language An Assembler /Text Editor for the KIM pages is provided with the system. The programs. Micro Software Specialists have an- manual includes detailed instructions The minimum recommended

nounced their new assembler /text editor . concerning all operator prompts and sys- memory requirement for the TEMPOS package for KIM and TIM computers. tem error messages, plus a number of multiuser, multitasking operating sys- Documentation and a hexadecimal examples with test data and program- tem, using two disks and three terminals, object code listing are included. The ming considerations for custom applica- is 48 K bytes. The price of the TEMPOS price is $19.95 for the program in either tions. system is $1000. For further informa- cassette or paper tape form. Contact Contact The Software Store at 706 tion contact Administrative Systems Inc, Micro Software Specialists, POB 3292, Chippewa Sq, Marquette MI 49855, 222 Milwaukee, Suite 102, Denver CO E T Station, Commerce TX 75428. (906) 228 -7622. 80206, (303) 321 -2473. Circle 502 on inquiry card. Circle 504 on inquiry card. Circle 506 on inquiry card.

246 BYTE November 1977 www.americanradiohistory.com MICROPROCESSOR COMPONENTS p Timeband THESE 8080A CPU 516.00 8228 System Controller - Bus Driver 510.95 Pad ï Frequency Cue/Stpe Prlci 8212 8 Bit Input /Output 4.95 MC6800 8 Bit MPU 22.50 CY1A 1.000 MHz HC33,U $5.95 8214 Priority Interrupt Control 15.95 MC6820 Periph, Interface Adapter 10.00 Digital Alarm Clocks CY2A 2.000 MHz HC33N $5.95 8216 91- Directional Bus Driver 6.95 MC6810AP1 128 x 8 Static RAM 7.95 21 hoot alarm ICY2.01 2 010 MHz HC33/U Si 951 8224 Clock Generator /Driver 10.95 MC6830L8 1024 x 8 Bit ROM 15.00 0o,e Button CY3A 4000 MHz MC18/U 5495 CDP1802 19.95 Z80 CPU 39.95 roo. Sole Slate CY7A 5.000 MHz HC18,U 54 95 l CPU'S RAM'S Large Red Led Dsptay CY12A 10.000 MHz HC18N 54 95 0000 1101 1 8080 site 24 95 256. 0555 S 1 49 8' Mph) CY14A 14 31818 MHz MC18U 54.95 565 8008 16.00 4 95 80806 e 2101 255. Slag 5 AM POI 1189,lá CY19A 18 000 MHz HC18,U 54 95 2650 8 Oil MPU 2550 2102 102.1.1 Static 1 7F 5econdsdso1 at touch CY22A 20 000 MHz HC18,U 5495 58085 CPU 29,95 27075280 4096 a I Dynamo 1 95 C.500 .Pay Case of butte C -82'1 CY308 32 000 MHz MC18,U 54 95 SR'S 2111 256.4 Slat 6 95 C.600B . Ebotp Case WOOdgrain Case 49 P.e Ialee Ina enc. 250., 1024 Dynamic S 3 95 7489 15 c 4 WC 2 One yen laclo -y *merry XR-22060CB Kit 519.95 XR-2206KA Rh 514.95 2518 He. 32 BIT 7 00 8107 256 e 4 Sufic 5 95 $16.95 $19.95 WAVIFOFN MERS 2519 Me. 40 819 4 00 5111 556. 5 State 5 95 3 49 2524 512 Dyne.. 2 19 8599 Id . 4 Sint kR205"TOR LAMP CLOCK 5640 EXA R %6320C 31 55 2525 1024 09mm,c 100 9002 m74 . I Saar 2.25 limeband` XR.2206tP 4 49 185 Static 6 95 XR.556CP 2527 Oua 256 811 3 95 74200 256 .1 65,Ra9t7Sy1D 24 hour alarm IR.2207CP 3 % MISCELLANEOUS XR-2556CP 3 20 2529 Dual 512 BIT 400 93.01 256. 1 Starr 2 95

1 Doze button 96 2211CP 56 70 XR-2240CP 3 25 2532 Osas 80 BIT 3 95 1MM5262 26 . 1 Dynamic 2 loi CO, STEREO OECODBLS 96.4135 99 PHASE IOCxEO LOOPS 2533 1024 5879 595 PROMS Alarm -on indicator

9R.1310CP 3320 088-1468 385 66.210 520 3341 Edo 6 95 17026 F Amos S 995 20aB .8" high Red LED Display 911.1310EP 3 20 611.1488 5.80 66215 6 60 7415672 16 . 4 Reg 3 95 5203 208 /.ands I195

96.19001, 4 XR.567CP 1 3 20 X6.1489 BO 95 UART'S 82523 32.8 Open C 5 0D AM /PM Indicator OR-2567 299 062208 520 99.567C7 170 Ar -5 1013 329 Baud %% 825723 )2.a lr,slae 5 00 High intensity lamp 74528; 1024 Sint. - 95 3501 2564 Fa, 7 95 Lamp shuts off when collapsed RAM'S efU IF CONNECTORS 2513(21401 Chat. Gen.- Wpe19s1 S9% Model C -590 (Ivory) $29.95 2716 166 Corm 34.95 2513/30211 Char. 9.% PRINTED CIRCUIT EDGE -CARD Gen:lowercase 6301.1 1024 Tn51ne B! o8r 3 49 2516 Char Gm 10.95 .156 Spacing- Tin -Double Read -Out 6330.1 256 Open Collector 800ta1 2 95 ERC AM /FM 8-Track Stereo Receiver Bifurcated Contacts - Fits .054 to .070 P.0 Cards 15/30 . PINS (Solder Eyelet) $1,95 With BSR Changer SPECIAL REQUESTED ITe1S cLOCN MPS PINS (Solder Eyelet) PLL System 18/36 $2.49 FCM3817 S 5.00 4933 S 3.95 5041 S 9.95 9368 S 3,95 MM5309 09.95 BSA Record 22/44 PINS (Solder Eyelet) $2.95 AY-3-8500-1 8.95 8120 7.50 68150240 17.50 MC1408L7 9.95 MM5311 4.95 Changer MC308IP 3.50 8197 2.00 11090 19.95 LD110/L0111 25000.5 MM5312 4.95 Slide Controls 50/100 PINS (Wire Wrap) $6.95 8010151, 1744161 7.50 9374 1,95 05002601 375 61-5-9100 17,50ea. MM5314 4.95 Automatic AFC Control MCM6571 17.50 829145 26.00 TIL308 1050 95100 11.95 945116 6.95 50/100A (.100 spacing) PINS (Wire Wrap) $6,95 4 Speaker Output MCM6574 17.50 h00616575 17.50 10M7205 22.00 1017209 7.50 MM5318 9.95 25 PIN -D SUBMINATURE Ay'-5.2376 14.95 1017045 24.95 ICM7207 7.50 H00165 7.95 MM5369 2.95 Walnut finish vinyl covered DB25P PLUG $3,25 CT7o01 595 wood veneer with smoke dust cover DB25S SOCKET $4.95 NOW Size: 20"W X 915 "H 6 two IN STOCK PARATRONICS Popular Model 8365 $149.95 HEAT Featured on February's Front Cover of Electronics fa SINKS 001 MODEL 205 -CB 680 -.75A Logic DIGITAL STOPWATCH . BriOM 6 Olga LEO 050419 100A Times 1o59 m nules59 59 smarts 205 -CB Beryllium Copper w -black finish for TO -5 5 .25 Analyzer Kit Crystal Cmvollea Time Base riree m 291 -,36H Aluminum for To -220 Transistors F. $229.00 /Kit 5lapwalches One Analyzes any type of digital system Tepes Single Even! - Sokl 6 Taylor Regulators S .25 15' Checks data rates in excess of 8 Some applications are: Sued 5' .2 . 90' 1415 ounces) 680 -.75A Black Anodized Aluminum for T0 -3 $1.60 Uses 3 PM11e Cos million words per second - Troubleshooting microprocessor 401 -A Black Anodized Aluminum - predrllled Trouble shoot TTL, CMOS, DTL, RTL, address, instruction, and data flow Kit - $39.95 mounting holes for T0 -3 - 41'4 e 11/4 X 2" 51.75 Schottky and MOS families - Examine contents of ROMS Assembled - $49.95 Tracing Displays 16 logic states up to 8 digits wide - operation of control logic Heavy Duty Carry CaseS5.95 DIP SWITCHES SPST wide Acton See ones and zeros displayed on your - Checking counter and shift register #2064 (8 pin dip) 4 switch unit $1.75 ea. CRT, octal or hexadecimal format operation Stop Watch Chip Only (7205) 519.95 #206 -7 (14 pin dip) 7 switch unit $115 ea. Tests circuits under actual operating - Monitoring I/O sequences 0206-8 (16 pin dip) 8 switch unit 12.25 ea. conditions - Verifying proper system operations 31/2DIGIT DPM KIT Easy to assemble - cores with step -by -step construction during testing Etching Kits (cannot ee mioved vla alp manual which indudes 80 pages on logic analyzer operation. A -1 P c Etch Malabo's Ka 32 X $29.95 ea. PARATRONICS TRIGGER EXPANDER - Model 10 enough for 5 circuit boards Adds 16 additional bits. Provides digital delay and qualification of Input clock Model 10 - $229.00 27 X A Etched Circuit Kit S 9.95 ea. -1- and 24- bn tripper word. - Connects direct to Model 100A for integrated unn). eu.019. -Se.% Only wale Plugboards nampiu 5.1 - add 3662 65 X 1.5 X 1/16 Epoxy guss S 6.95 ea. 420 P.Panem-44 P C Tabs. spaced 156' BUGBOOK h,:q 22/44 Mating canne801 for *Opera - S 2.95 ea. Continuing Education Series 22 pm 8nle 184045 8800V Universal Mtrommputer,ProaKSOr ea. $19.95 BUGBOOK I le II - Basic concepts of TTL logic - over 90 New Bipolar Unit Auto Polarity piugboard - Epoxy Glom - complete experiments 517.00/set Auto Zeroing Low Power With 401158k and mounting hardware - recommended for RTTY Ytx'7Z7t BUGBOOK Ile Introduces DART - .5" LED Single IC Unit 5 313 X 10 X 1/I6 copper cl0 enthusiast 15.00/book 8008000 6 - Explores 8080 chip - introduces Mark 80 Model KB500 DPM Kit $49.00 1/16 VECTOR BOARD Microcomputer $15.00I1zook 0.1" H01t Spacing P4hnrn Price BUGBOOK V 6 VI Introductory experiments in digital electronics, Model 311D -5C -5V Power Kit $17.50 Pal No. W 1 2-UP 8080A Microcomputer interfacing and programming $19.00/set PHENOLS 641,Ú 062800, 4 50 650 172 154 JE700 CLOCK WITH EXPERIMENTS 169P4a D2XxdP 450 17 00 369 332 555 TIMER APPLICATIONS SOURCEB00K - The JE700,sa! ow msladlal clock but 61081' 64544 062 4 50 6 50 20i 1 % over 100 design techniques 56.95/boot Levery hop 9uaty unn The una Ito BPPea 4 50 850 2 56 2 31 GLASS 062 CMOS- MOEBI6NERS PRIMER AND HANDBOOK - s a smutted walnut cue win de t69Pa4 062 450 1700 504 453 a complete CMOS instruction manual 55.00IOook s o16'. 7. 1 It uotesa 166584 062 8 50 1700 9 23 8 26 OP AMP MANUAL - over 25 experiments on all phases MAN78high 01400ess redoul na 0,e EPDXY GLASS 169Pa6 062C1 4 50 17 00 680 612 4615314 cluck chro of OP AMPS 50.00/book 12 of 24 Hour COPPER CLAD DRUG - a program for entering, debugging and stodng assembly programs. $5.00/book WRAP TOOL INSTRUCTORS MANUAL Necessary for instruction on BUGB00KS I and II 53.00/book SLIT -N -WRAP WIRE - 115 VAC KIT ON LY $17.95 ©/Y Slits and opens insulation exposing bare wire CONTINENTAL SPECIAL TIES Rejected ATARI GAME BOARDS No pre -cutting or pre -stripping. PROTO BOARD 6 e)9'- Other CS Proto Boards PHOTO CLIPS Comes complete with two - 100 ft spools #28 AWG wire SVPB100 - x $ $15.95 4.5" 6" 17.90 14 PIN 54.50 Over 60 Reusable IC's, mist. transistors, resistors, diodes, Model P180 $24.50 (6" long X 4" wide) PB101 - 5.8" x 4.5" 29.95 16 PIN 4.75 caps, crystals, switch, etc. PB102 - 7" x 4.5" 39.95 24 PIN 8.50 HEXADECIMAL ENCODER 19 -KEY PAD (914"x 161, Umned Quantity. PB103 - 9" x 6" 59.95 DESIGN MATES r -O' P8104 - 9.5" x 8" 79.95 ABCDEF DM1 - Circuit Designer P8203 - 9.75 x 644 a 2314 80.00 $4.95 ea. Return Key 569.95 P82036 - 9.75 x 61 x 21: 129.95 Optional Key IPerlodI DM2 - Function Generator (includes power supply) - Key 574.95 FREQUENCY COUNTER INSTRUMENT /CLOCK CASE MAX100 I Logic Monitor 584.95 DM3 - RC Bridge 100 MHz - 8 digitS1 tot OTL HTL. TTL or CMOS Devices each 20 MHz % 574.95 Injection molded unit. Complete $10.95 1 type whales price with red Dual. 41/2' x r x 1 -9/1B QT PROTO STRIPS 01-S95 590 12 50 07-59B bus nip 2 50 63 KEY KEYBOARD . $24.95 4'.u.'.,.. T47s 470 10 00 $3.95 ea. 01595 11WLea1NOtltaTA.::_,._ OT tes T.47B bus svio 225 The keyboard features !merl- . .... oT.]55 350 8 50 hoed deys. unattached63 ...... : . 01.595 0T-35e bus ship 200 on, kind P PCB A very sold iQARIE,I1i^i'1 0712s T-1% 180 4 75 mooed 13 . 4' base 04 475 Plana 49518p81BNeg111114.'ï T-I25 120 3.75 suas most 1p0,clldns T-65 325 OTBs JE803 PROBE 70 100165 KEYBOARD ERCOOEB CHIP 57.95 M 01.75 ado 16 LINE TO FOUR BIT PARALLEL The log,cProbeisaun,twn,ch!stone moslpan 0T-355 111111ff NMI 9.95 indestenl,de iog,c CT-7S EXperimenlor 300 S in 'rouble shooting lam40 TOOLS +w11v.-.OT-35B Experimentar 600 510.95 nl OTT RTL CMOS o 0e,ves Irae power ,I A97MS Diagonal Coner - 4" semi -flush cut 58.50 ea needs to borate 4necny mt ai tre cnout ecce, - 10 ,M uses a MAN) 5101,110 a scam ma. 55.00 Minimum Order U.S. Funds Only Spec Shona 25e Sand 35e Stamp lee 1679 Catalog 111 All CMS - Chain Nose Pliers - 43/4" long 7.50 ea. - - reaaoul lo matele any of Ile loeow,no states by California Residents Add 6% Sales Tas Dealer Information Available - IhesesymSOIS o PUT SO P the T -6 - Wire Stripper - #16 to #26 gauge 3.75 ea.' m1-1 (LOW) Prole W0515911,0 hepumcypuees 1045M Hz Per Kit 558 Wire Stripper - #10 to #20 gauge 2.50 ea. $9.95 - o cant be used at M05 1bek Ot [deal 01ma0e CS -8 - Cutter -Crimper Tool - 81A" long 8.50 ea. yi,q IMO printed circuit board Hibbing Tool - Cuts, Trims or Notches Metal up to #18 gauge 6.95 ea. ames PL 5V 1A Supply Tins ,u a standard n L over supply usmglhe wet known Nibbling Tool Replacement Punch 3.75 ea. ELECTRONICS x LM30961e5411oriClo doviaeasole I AMPO Lunen 1,15 1021 -A HOWARD AVE., SAN CARLOS, CA. 94070 vobs We Iry Io make owls easy for you by ptoa,dog Electrical Tape - All Weather PERMACEL® P -29 PLUS ev eymmoyou reed !none Damao e. mclud no the hardware re" wtle . 66 e. Blue vinyl PHONE ORDERS WELCOME - (415) 592-6097 \44,-.9 Rolls 6.79 loch 10 -up Rolls 98.95/10 roll package All Advertised Noes Geed 15m November 111119 $9.95 Per Kit /

Circle 79 on inquiry card. BYTE November 1977 247

www.americanradiohistory.com Floppy Disk Drive What's New? MASS STORAGE

A 5100 System Mass Storage Device A New Cassette Recorder Interface

According to the manufacturer, Gen- eral Systems International Inc, 1440 Allec St, Anaheim, CA 92805, Users of the IBM 5100 persona (213) 378 -9385, this drive uses both computer product will appreciate this sides of the floppy disk recording me- new addition from an independent dium for data as opposed to just one. vendor. Sykes Datatronics of 375 Or- We can expect to see personal com- chard St, Rochester NY 14606, (716) puting systems with on line floppy disk 458 -8000, showed off this IBM 5100 storage capacities on the order of compatible dual floppy disk subsystem 1.5 million bytes per drive growing out at the NCC show in Dallas TX in June DaJen Electronics has announced a of this type of drive technology. Price of of this year. What it does is give the new cassette recorder interface with data this drive to manufacturers is "in the user a truly random access 3740 com- transmission rates selectable from 800 to low $400 range. "o patible diskette hardware subsystem 12,000 bps. 12 K bytes of memory can Circle 484 on inquiry card. and file management software on 3M be loaded in approximately 8 seconds. A

cartridges for the 5100. No changes 1 K byte monitor program is included to Attention Floppy Disk Correspondents... to the 5100 are required, and this provide basic system operations and subsystem plugs directly into the 5100's allow the saving of files. The unit is com- serial IO port. The software provided patible with the Altair, iMSAI, Kansas with this system includes ten BASIC City, Polymorphic Systems and Tarbell files and 14 APL functions, and allows formats. Kit price is $120; the assembled BASIC programs to communicate with unit costs $165. The price of the manual APL programs using files on disk as is $ 3.50. an intermediary. The price is under Contact DaJen Electronics at 7214 $3000 for a single drive system, Springleaf Ct, Citrus Heights CA 95610, and under $4000 for dual drive. (916) 723- 1050.

Circle 481 on inquiry card. Circle 482 on inquiry card.

A Dual Floppy Subsystem system is offered in the dual drive ver- sion illustrated here ($3900) and a single drive version ($2800). All search, block- ing, CRC verification and mechanical A new lightweight mailing envelope controls are handled asynchronously for floppy disks which saves 44 to 50 by the "smart" 6502 -based controller cents per disk in first class postage com- of this device, and data is buffered pared with older corrugated mailers is using FIFO memories. The physical available from Curtis 1000. dimensions are table top compatible: The new envelope accommodates one 9.7 by 17 by 19 inches (25 by 43 by to five floppy disks with filing sleeves in 48 cm). Hardware interfaces include a lint and dust free environment. an optional programmed 10 parallel Made of DuPont's Tyvek® fiber, the interface, which will be of interest to new Curtis 1000 "Disk -O- Mailer" mail- homebrewers, as well as detailed inter- ing envelope is extremely resistant to faces for a variety of microprocessors tearing and puncturing forces, as well as and minicomputers. Typical interface such dangers to floppy disks as chemicals costs are $300 above the base prices; and wetness. It features fast, dry sealing using the non -IBM format "dual and a closure. Its glossy whiteness and green half" density recording format, approxi- triangles printed along all edges on mately 630,000 bytes can be recorded both sides assure first class handling in on each cartridge, making the dual drive the post office just like regular business This photo shows the new Sykes on line capacity approximately 1.26 mil- letters. Retailers and floppy disk soft- Datatronics Series 9000 floppy disk lion bytes. Sykes is located at 375 ware distribution outlets should contact Orchard St, Rochester NY 14606, at 1 system which is a complete mass storage the firm 000 Curtis Dr, Smyrna GA (716) 458- 8000. 30080, (404) 436 subsystem with two drives and a built -in -6155. 6502 microprocessor controller. The Circle 483 on inquiry card. Circle 485 on inquiry card.

248 BYTE November 1977

www.americanradiohistory.com MITE COMPUTER PRINTER Mite 123P Impact printer. Designed for small keyboard printer terminals. 64 characters per line on 81/2 inch paper. 75 characters per line, 10 CPS. Printer only, no electronics. With 30 pages documentation. Used, good shape. Shipping wgt. 18 lbs. $63.00

VIATRON CASSETTE DECKS The computer cassette deck alone $35.00

CONRAC VIDEO MONITOR Used, checked out. Operates on 115 volts 60 cycle AC. In cabinets as shown. 128 x 40 with bandwidth of 8 Mc. Ideal for computer or TV monitor. Green phosphor display, 9" tube. With data & schematic. Shipping wgt. 16 lbs. $62.00

SPECTRA FLAT TWIST WIRE WRAP WIRE 50 conductor, 28 gauge, 7 strands/ TEFZEL blue #30 Reg. price conductor made by Spectra. Two con- $13.28/100 ft. Our price 100 ft $2.00; ductors are paired & twisted and the flat 500 ft $7.50. ribbon made up of 25 pairs to give total of 50 conductor. May be peeled off in MULTI COLORED SPECTRA WIRE pairs if desired. Made twisted to cut down Footage 10' 50' 100' on "cross talk." Ideal for sandwiching PC 8 Cond. #24 $2.50 9.00 15.00 boards allowing flexibility and working 12 " 22 3.00 11.00 18.00 on both sides of the boards. Cost orig- 14 " 22 3.50 13.00 21.00 inally $13.00 /ft 24 " #24 5.00 20.00 30.00 -324 -A 10 ft /$9.00 SP $1.00 /ft. 29 " 22 7.50 28.00 45.00 SP-234-A $1.00 ft 50 cond. 10 ft/$9.00 Great savings as these are about 1/4 SP-234-B .90 ft 32 cond. 10 ft/$8.00 book prices. All fresh & new.

TOUCHTONE ENCODER CHIP CHARACTER GENERATOR CHIP Compatible with Bell system, no crystal required. Ideal Memory is 512x5 produces 64 five by seven ASCII for repeaters & w /specs. $6.00 characters. New mat¢rial w /data $6.00

Please add shipping cost on above. Minimum order $10 FREE CATALOG NOW READY P.O. Box 62, E. Lynn, Massachusetts 01904

Circle 83 on inquiry card. BYTE November 1977 249

www.americanradiohistory.com What's New? PERIPHERALS

Do You Want to Draw Sargent's New Altair (S -100) Pictures on Your Display? Prototype Board Sargent's Distributing Company, 4209 Knoxville, Lakewood CA 90713, has introduced this new Altair (S -100) bus prototype board. The board is con- structed of epoxy G -10 material. There is space for four 7805 type voltage regulators. It accommodates 14, 16, 18 24 and 40 pin wire wrap sockets with room for a maximum of forty -eight 14 or 16 pin sockets. Also available is a complete set of plans for a S -100 bus compatible front panel and bootstrap system which it features direct parallel ASCII keyboard input, one additional parallel input port, and two parallel out- put ports. This design uses PROMS for instant turn on and reset. Start cassette tape and your system is fully loaded and running in about 30 seconds, and can be Users of personal computers who are wire wrapped using the prototyping interested in graphics input will find board. Price of the prototype card is this new peripheral of great interest, and only $25 postpaid; the plan set is $7.50 at a price which makes it attractive for postpaid; and a complete kit of all parts personal use. Accessories Cor- Scientific for the front panel design is $79.95 post- poration, 970 Kings Highway W, South- paid. Circle 509 on inquiry card. port CT 06490, (203) 255 -1526, has in- troduced the Model GP -101 sonic digitizer for a single unit price of $800. What you A -Scan get is a stylus with or without ink or a cur- New Model Self from Burroughs Centronics Introduces High Speed sor, an electronics package, and the L- Microprinter frame sensor seen in this photo. It is in- tended to be used in any situation where input of XY position data is required. Typically, a computer oriented artist might make a rough sketch of graphic display information on paper and then trace the outline of the figure with the stylus after positioning the rough within range of the sensors. The artistic dig- itization could also be done interactively The Electronic Components Division with the display in a freehand mode. of Burroughs Corporation, POB 1226, Centronics Data Computer Corpora- To use this device, some additional Plainfield NJ 07061, has introduced this tion has announced a high speed com- logic and timing circuitry will be new single line 40 character version of pact microprinter called the Micro -1 for

required since the basic electronics Self -Scan I I technology, intended for use $595. Aimed at the home, hobby and simply produces TTL level signals which in any product where a limited size microprocessor markets, the 240 char- have a known start edge time and a var- alphanumeric display is required. Special acter per second Micro -1 is offered as a iable delay time representing the X and effects include left or right data entry, complete unit including case, power Y distances to the stylus or cursor unit. moving message effects, blinking sub - supply, 96 character ASCII generator The user must also provide power fields within the 40 character line, etc. and interface, paper roll holder, low supplies and custom software to analyze Self -Scan is a registered trademark of paper detector, bell, and multiline the signals for particular purposes. Burroughs Corporation. asynchronous input buffer. Circle 507 on inquiry card. Circle 510 on inquiry card. The microprinter produces copy on aluminum coated paper by discharging an electric arc to penetrate the coating, A 60 Character per Second Printer The Altair C700 from MITS is a 60 which is less than one micron thick. character per second serial printer using Toners and ribbons are not required. a 5 by 7 dot matrix and the 64 character The printed characters are said to ASCII subset. The unit is designed to be impervious to light, temperature and be interfaced to the Altair 8800 compu- humidity. The machine prints 180 lines ter and features automatic motor con- per minute on 4 3/4 inch roll paper in trol, paper runaway inhibitor and auto- 20, 40 or 80 column widths, selectable matic line feed after carriage return. by the user. The special aluminized The printer is bidirectional and can paper used by the unit costs nominally print 26 132 column lines per minute. more than standard paper. It can accommodate 15 inch wide forms. This is an excellent way to get Dimensions are 7 by 28 by 24.5 acceptably high speed listings at rela- inches (17.8 by 45.7 by 62.2 cm). tively low prices. Contact Centronics Contact MITS, 2450 Alamo SE, Data Computer Corporation, Hudson Albuquerque NM 87106. NH 03051, (603) 883 -0111. Circle 508 on inquiry card. Circle 511 on inquiry card.

250 BYTE November 1977

www.americanradiohistory.com Now low -cost memory

stacks u b= 'n reliability!

Introducing a new generation of ECONORAM' dynamics with SgnchroFreshTM reliahilitg

Meet ECONORAM* III with SynchroFreshTM the ECONORAM* I l l with SynchroFreshTM is an 8Kx8 dy- 8Kx8 dynamic memory for S -100 bus computers that namic board, configured as two individually address- really works. And uses less than half the power able 4K blocks for flexibility. It is available assembled, of static designs. And costs just $149 for an tested and warranteed for one full year for just $149. assembled 8K. This unprecedented warrantee offers a full refund of purchase price if ECONORAM* Ill does not run Unlike previous attempts at building a low -cost dy- reliably with your S- 100CPU- evidence of our con- namic memory, ECONORAM* Ill is entirely reliable ... fidence in its performance. because of SynchroFreshTM, a new approach to memory It is also available as a kit with complete assembly refresh that is simple, elegant and totally effective. instructions and documentation for $159. SynchroFreshTM was invented by George Morrow, de- ECONORAM* Ill with SynchroFreshTM, in assembled signer of the original ECONORAM *. Instead of ar- or kit form, may be ordered directly from Thinker - bitrarily interrupting your CPU to perform memory ToysTM. Write 1201 10th Street, Berkeley CA 94710 refresh cycles, Morrow designed SynchroFreshTM to or call (415) 527 -7548. Call BAC /MC orders toll -free weave refresh invisibly into the natural timing of the to 800-648 -5311. Or ask your computer store to order S -100 bus. SynchroFreshTM circuitry simply monitors it for you. your computer's machine states, utilizing all of the normal opportunities for memory refresh. It's NEW LOW PRICE that simple.

And simplicity means reliability and dramatically lower cost. That's why a SynchroFreshTM design was $149 chosen for the first ECONORAM* dynamic, to follow in 8K assembled,tested, warranteed the footsteps of the largest -selling static memories 1 year for personal computers. n A product of Morrow's Micro -Stuff for Toystm

ThinkerECONORAM is a trademark of Godbo.t Electronics.

Circle 97 on inquiry card. BYTE November 1977 251

www.americanradiohistory.com A Pair of New Terminals What's New? PERIPHERALS

Apple II Features Built -in Color integer BASIC language includes special Capability functions related to color video display programming. In both the color graphics mode and in the high resolution graphics mode, four lines of text may be optionally displayed at the bottom of the screen to annotate displays. The Apple II also features a built-in cassette interface. Minimum memory configuration available includes 4 K bytes of program- mable memory and 8 K bytes of read only memory. A 2 K byte monitor provides debug commands, a mini - assembler, disassembler,. floating point package and software -simulated 16 bit arithmetic capability. The unit comes complete with a switching power supply which requires no fan. The computer is housed in a The Apple II is Apple Computer Inc's plastic case with dimensions of 18 by entry in the home computer market. The 15.25 by 4.5 inches (45.72 by 38.74 by I nfoton, Second Av, Burlington MA unit uses the MOS Technology 6502 11.42 cm). It comes with two game 01803, (617) 272 -6660, has introduced processor and can display alphanumeric paddles and a demonstration cassette this pair of video terminal products. The characters and video graphics in 15 for $1298. It is also available in board Model 200 is the low end version, a colors using any standard color tele- only form, without case, keyboard, Teletype replacement with multiple vision set. or accessories power supply for $598. additional features and 80 character by A BASIC language package is per- Contact Apple Computer Inc, 20863 24 line display. The Model 400 is a manently stored in 6 K bytes of read Stevens Creek Blvd, Bldg B3 -C, Cuper- model with more features, including only memory; execution speed is fast CA tino 95014. upper and lower case display, additional enough to run many video games. The Circle 512 on inquiry card. keyboard functions, etc. Both models feature RS -232, 20 mA current loop and 60 mA current loop serial interfaces at Music An Altair Bus Compatible Music Board The Board comes assembled 16 switch selected data rates to 19,200 and tested. Features include selectable bits per second. No price was given in output port address decoding, a latched the documentation from which this note 6 bit digital to analog converter, audio was abstracted. amplifier, speaker, volume control and inquiry RCA phono jack for connection to Circle 515 on card. external audio systems. It employs a glass epoxy printed circuit board with plated through holes and gold plated Several Gimix for the SwTPC 6800 Bus fingers. A users manual, which is supplied We received a sales brochure for three with the board, includes a BASIC products available from Gimix Inc, 1337 Newtech Computer Systems' Model 6 language program for writing musical W 37th PI, Chicago IL 60609, (312) 927- Music Board is designed to enable ex- scores and an 8080 assembly language 5510, which plug directly into the South- perimenters having Altair (5 -100) bus routine for playing them. The price is west Technical Products Corporation's computers to produce music and sound $59.95. Contact Newtech Computer 6800 bus. One of these products is a effects. include generating Applications Systems Inc, 131 Joralemon St, Brook- $119 read only memory board which melodies, sound effects, Morse rhythms, lyn NY 11201, (212) 625- 6220. holds up to 8 K of 2708 FROM parts code and tone touch synthesis. Circle 513 on inquiry card. (not supplied), and can be placed on any even 8 K memory address boundary (ie: 0000, 2000, 4000, 6000, 8000, A000, A CT -1024 Scroll Mod C000, or [000) using switches. A second product is a $25 extender board for use Lenwood Computer Systems, POB when troubleshooting or debugging a 67, Hiawatha IA 52233, has announced prototype card. The third product is a

a modification to Southwest Technical video output board which contains a 1 K Products Corporation's CT -1024 termi- by 8 bit volatile programmable memory nal product. The Model SM -2 scrolling region which can be connected at any

modification board is available at $19 1 K boundary in memory address space plus $1.50 postage and handling, and using jumpers. This $249 generator can converts the CT -1024 style display from be set up for 16 lines of 32 characters or a page oriented display to a scrolling 16 lines of 64 characters; output is EIA display. The photo shows the board video with adjustable "density "( ?) and mounted on the CT -1024 main board left -hand margin. These products are using a stand off stud. fully assembled.

Circle 514 on inquiry card. Circle 516 on inquiry card.

252 BYTE November 1977

www.americanradiohistory.com SD SALES COMPANY

= P.O. BOX 28810 -B DALLAS, TEXAS 75228 NOW -THE ULTIMATE RAM BOARD Memory Capacity 32 l4 FOR 427. Interface Capability Memory Addressing BUY AN 5100 COMPATIBLE 8K RAM BOARD AND UPGRADE CONTROL, DATA AND ADDRESS INPUTS THE SAME BOARD TO A MAXIMUM OF 3210 IN STEPS OF UTILIZE LOW POWER SCHOTTKY DEVICES. Memory Write Protection 8K AT YOUR OPTION BY MERELY PURCHASING MORE RAM CHIPS FROM S.D. SALES! AT A GUARANTEED PRICE- 8K, 16K, 24K, 32K USINWITH MOSTEK MK4115 LOOK AT THE FEATURES WE HAVE BUILT INTO THE Power Requirements BK BO3NDASIEG & PROTECTION. BOARD. Utilizes DIP switches. +8VDC 400 MA DC PC board comeswith sockets for 32K operation PRICES START AT $139.00 FOR 8K RAM KIT. +18VDC 400MA DC 30MA DC THE ABOVE NOW AVAILABLE ADD $96.00 FOR EACH ADDITIONAL BK RAM DESIRED -18VDC on board regulation is provided. ON BOARD (INVISIBLE) REFRESH IS PRO- Board fully assembled and tested for$50.00 extra. VIDED WITH NO WAIT STATES OR CYCLE AVAILABLE THE 1st QUARTER OF 1978: STEALING REQUIRED. 16K, 32K, 48K, 64K USING MOSTEK 4116 MEMORY ACCESS TIME IS 375ns. WITH 16K BOUNDARIES & PROTECTION. 8 ]4 FOR $139 Memory Cycle Time is 500ns. NEW4R10E' Z -80 CPU BOARD KIT 4K LOW bPOWER RAM Complete Kit Fully CHECK THE ADVANCED FEATURES OF OUR Z -80 CPU BOARD: consumtion utilizing low power 21 L02 -1 500ns RAMS - Expanded set of 158 instructions, 8080A software capability, operation from a single $139, Sockets provided for all IC's. Quality plated through PC 5VDC power supply, always stops on an M1 state, true sync generated on card (a real board. Add $10.00 for 250ns RAM operation. Plus either PR11CFi qualitydoubÍedynamiced plated through PC board,ls shipped with 2 80 technical NEW PR manual and all parts plus sockets provided for all IC's. Z -80 Chip & Manual Sep. - 39.95 NEW The Whole Works - $79.95 Add $10.00 extra for Z -BOA chip which allows 4MHZ operation. ALL OF ABOVE ARE S100, IMSAI & ALTAIR A' COMPATIBLE. NEW PRICE! We can supply modifications needed for many other systems! SIX DIGIT ALARM MUSICAL HORN JUMBO LED CLOCK KIT KIT ONE TUNE SUPPLIED WITH EACH KIT. ADDI- FEATURES: CLOCK TIONAL TUNES $6.95 EACH. SPECIAL TUNES FEATURES: Litronix dual 1/2" displays, Mostek - A. Bowmar Jumbo .5 inch LED array. AVAILABLE YOU SUPPLY THE 50250 super clock chip, single I.C. segment driver, - WE PROM S TOMYOU. VA SCR digit drivers. Greatly simplified construction. C. Onboard precisiononn crystal timle base. 00 D LDEI STANDARD TUNES NOGRA MMEDL D. 12 or 24 hour Real Time Format. More reliable and easier to build. Kit cincludes all _ DIXIE - EYES OF TEXAS - ON WISCONSIN - YANKEE necessary parts (except case). P.C. Board and Xfmr DOODLE DANDY - NOTRE DAME FIGHT SONG - PINK E. Perfect for cars, boars, vans, etc. optional.Eliminate the hassle - avoid the 5314! Do not PANTHER - AGGIE WAR SONG - ANCHORS AWAY - F. P.C. Board and all parts (less case) included. confuse with Non -Alarm kits sold by our competition! NEVER ON SUNDAY - BRIDGE OVER RIVER KWAI - CAR & BOAT KIT HOME KIT Alarm option - $1.50 P,C.B.- 53.00; ACXFMR -51.50 $9.95 ACXFMR -$1.50 $16.95 e KIT $34.95 $26.90 KIT RAM'S CPU'S - PROM'S

21 L02 - 500 NS 8/11.50 Z -80 includes manual 39.95 1702A - 1K - 1.5us 3 95 or 10/35.00 21L02 - 250 NS 8/15.95 Z -BOA includes manual 44.95 2708 - 8K Intel - 450ns 14.95 2114 - 4K 14.95 8080A CPU 8 BIT 11.95 5204 - 4K 7 95 1101A-256 8/4.00 BOOB CPU B BIT 6 95 825129 - 1K 2 50 1103 - 1K 99 27085 - BK signetics 650ns 9 95 CESSOR CHIPS -MICROPROCESSOR CHIPS -MICROPROCESSOR CHIPS -MICROPROCE 8212 I/O PORT 3 50 - 8228 SYS CONTROLLER 8 20 8214 I C 12.95 2513 CHAR. GEN 7 50 -P 8251 PROS. COMM. INTERFACE 10.95 8216 NON INVERT BUS 4 95 8838 QUAD BUS. RECR 2 00 - 8255 PROD. PERP. INTERFACE 13.50 8224- CLOCK GEN 495 74LS138N - 1/8 DECODER 99 8820 DUAL LINE RECR 1 75 8T97 8226 - INVERT BUS 395 - HEX TRI STATE BUFFER 1 25 8830 DUAL LINE DR 1 75 PIO for Z -80 14.95 148B/1489 - RS232 1 50 CTC for Z -80 14.95 TR16028 UART 3 95 NTER CHIPS -COUNTER CHIPS -COUNTER CHIPS- COUNTER CHIPS- COUNTER CHI

MK50397 6 digit elapsed timer 8 95 MK50380 Alarm chip 2 95 M K5002 4 digit counter 13 95 MK50250 Alarm Clock 4 99 MK50396 - 6 digit up /down counter 12.95 MK5021 Cal. Chip w /sq. rt 2 50 SPRAGUE DUAL DIFFERENTIAL GENERAL INSTRUMENT DIODE. FLAT PACK 5400 SERIES. ITT DUAL SENSE AMPLIFIER. SPECIAL BUY FROM ITT. AMP. TD101 49c each 75234 AND 75235. 49c each 1N82AG 19c each 20 Assorted Devices for $1.00

39MFD RESISTOR bISC CAP ASST. 16V Mallory ASSORTMENT IC's from XEROX MICRO -DIP byy EECO $1.95 P.C. leads. At least Electrolytic IC's Removed from PC boards. All tested; full spec. PC leads NEW SERIES 2300! 10 different values. 7400 9c 7430 9c 7493 26c Includes .001, .01. A good mix - - - WORLD'S SMALLEST BCD CODED DIP SWITCH! 7402 9c 7440 9c 74121 -22c .05 + other stars- 15/$1. of values. - - P.C. Mount! 2300-02G -1248; 2300 -12G -1248 compliment 7404 9c 7437 -10c 74123 dard values. SPECIAL! - -32c THERMISTORS 7410- 9c 7438 -10c 74155 -22c JOY STICKS Sli de Switch Asst. MEPCO -NEW! 7416 -13c 7451 9c 74193 -35c IC SOCKETS Our best seller. In- - 4 -100K 60/ $ 1. 1.5K OHM 200$2W 7420 - 9c 7474 -16c 8233 - 35c 14 pin - 5/$1.00 clues miniature & POTS values. 1402A - 50c 7475 -24c Intel 1302 16 pin - 5/$1.25 standard MCAPSFD PSISTE OWR 45c 28 pin - 3/$1.00 FI1LT00E0 IJMTTED QUANTITY! R 5/$1.00 RE OR GREAT BUY!! $3.95 Rated 35 WVDC. ea. 12/1.00 15 OHM Upright style with 7500 Mallory P.C. LEAD TRIM POTS 1N4002 PC leads. ITT Part # SAJ 101 GooDBUY1 DIODES popular lues^ any 30WDVC CLA OSTAT 10K 20K, lA Computer IDEAL FOR ELECTRONIC 1N4148/1N914 25K 100 Ply Grade Cas 7 STAGE 4/$1.00 $3.00 ea Ph 75C ea. FREQ. DIVERS. 49C ea. 100/$2. 10/$1.00 40/$1. Residents Call Collect: NO COD's. TEXAS RESIDENTS ADD CALL IN YOUR BANK AMER- Texas 5% SALES TAX. ADD 5% OF ORDER ICARD (VISA) OR MASTER Z'ernrs - 60 Day 214/271-0022 FOR POSTAGE & HANDLING . OR- CHARGE ORDER IN ON OUR H`ANS: CONTINENTAL TOLL FREE 1 527 WATTS LINE: -800- -3460 Mack Ouarantee! D NG.FOREEGN$1ORDERS75c DEALER INQUIRIES INVITED! Afley FUNDS ONLY! Orders over $15. - Choose $1. FREE MERCHANDISE!

Circle 126 on inquiry card. BYTE November 1977 253 www.americanradiohistory.com Video Display Memory Board for LSI -11 Systems What's New? PERIPHERALS as

New Terminal from TEI keyboard, eight user designated special v11$11-1.1166 function keys, and a 16 key numeric cluster pad. A Shugart SA -400 mini -

floppy disk drive is standard. li IIKf iy 4 Crrtre per !Int Preys u,uellee aaettlx n: e^ ere nratr 12 a The slot mainframe contains lié eup!e.pble Mreött - mad Iuer we processor board featuring an 8080 pro- quw1 elr.t r rell-tnOt eortral atn ssr ame nt, cessor and a special circuit that imple- 4ttatt tMre[te.t fr eltelp a'tt1 a yo-.r marl. cam ' ments a start up "jump to" routine to per eta

any user selected memory address. 16 K jeltwe v>neea re mpM /trtee nn:rp mar 01-I1. bytes of programmable memory is pro- vided with additional capacity available as an option. The disk controller (which can handle up to four drives) and the video board are also standard. The IO board provides three parallel and three serial ports with selectable data rates of 75 to 19,200 bps. RS -232C or TTL Computer Technology, 6043 Law- interfaces are provided. Power is pro- ton Av, Oakland CA 96418, (415) vided by a constant voltage transformer 451 -7145, has introduced a board which (CVT) power supply. plugs into the LSI -11 bus of Digital TEI Inc of Houston TX has an- Software provided includes a CP /M Equipment Corporation, and creates a nounced a new processor terminal. De- disk operating system and BASIC on video display peripheral which features signated the Model MCS -PT, the unit is a disk. The processor terminal is $3495, 16 lines of 64 ASCII characters accessed self- contained computer system with dis- fully assembled and tested. The kit is as a 1 K byte region of memory address play and disk storage, keyboard, and a $2995. The unit without the disk drive space. According to the information 12 slot motherboard. It may be used and controller is $2495 assembled, or received here, the board fits into one either as a stand alone processor or as a $2195 in kit form. dual width half slot segment of the processor terminal in a larger system. Contact Bill R Tatroe, CMC Mar- LSI -11 backplane and requires only Features include a 15 inch (38.1 cm) keting Corp, 7231 Fondren Rd, Houston +5 V and +12 V power supplies. Out- high resolution video monitor with a full TX 77036, or call (713) 774 -9526. put is EIA RS -170 composite video upper and lower case ASCII character set Circle 495 on inquiry card. (2 volts peak to peak, negative sync) mA matched to 75 ohm coaxial cable. The photo shows a typical display on a NEC "Spinwriter" Technology A Selectric Interface for Microcomputers video monitor. Individuals using LSI -11 systems may find this to be quite a use- ful addition to memory address space.. Circle498 on inquiry card.

A New Desktop Teleprinter Terminal for APL Users Designed to meet the special character set requirements of APL users, the newly announced Anderson Jacob- son AJ 860/A desktop Teleprinter terminal produces both an APL The latest in a series of low inertia character set and a high resolution ASCII spinning plastic font impact printers to character set. Using a 9 wire dot matrix come to our attention is this NEC printer mechanism, the AJ 860/A prints Information Systems "Spinwriter" each 9 by 5 character In a 9 by 12 char- terminal, intended for commercial acter cell. The APL character set markets. This terminal comes with a includes all of the standard APL over- choice of five standard interfaces, 10 or strike characters, while the ASCII char- 12 character per inch spacing (4 or 4.7 acter set includes lower case, underscore characters per cm), ASCII character and selectable double wide characters. codes, and a variety of plastic "thimble Alternate selection of either the 128 print mechanism" fonts for different The Center for the Study of the code APL character set or the 128 code type faces. The typing elements are Future has announced an electronic ASCII character set is done from the rated at over three million impressions Selectric interface kit designed to work keyboard or remotely by code selection. per character. No pricing information with most Selectric terminals and type- Standard features include operator was given in the press release, other than writers using the Tycom adapter. It selectable speeds of 10, 30, 45 or 60 cps, the vague comment "10% below most includes 14 solenoid drivers rated for 24 horizontal and vertical tabulation, competitive printers." If past experience V (solenoids and power supply are not reverse line feed, autopagination, dual is any guide this means a price above included in the kit). The price of the kit gate forms tractor, self -test diagnostics, $3000 in unit quantities. Deliveries of plus manual is $325, available from the and a 350 character receive -only buffer this printer begin in October 1977 and Center for the Study of the Future, with buffer overflow protection. Single are expected to be 60 days after receipt 4110 NE Alameda, Portland OR 97212, unit purchase price is $3285 from of orders thereafter. NEC Information (503)282 -5835. Anderson Jacobson, 521 Charcot Av, Systems is located in Lexington MA. San Jose CA 95131, (408)263- 8520. Circle 496 on inquiry card. Circle 497 on inquiry card. Circle 499 on inquiry card.

254 BYTE November 1977 www.americanradiohistory.com NEW COMPUTER INTERFACE BOARD KIT Our Heil computer kit allows you to interface constantly connecting and disconnecting your

serial TTL to RS and RS 232 to TTL There , 'terminals. are four Of these supplied with the kit, so you Example: Out store to printer i- Voltage can run up to four devices on one TTL or four rèq uiement :+5V and ± 5V dr ± 12 V depend-p separate TTL to RS 232 devices. $49°6 ingIng on your RS 232 device, Typical use: You can use your computer We supply - board, connectors, documen- ports to run an RS 232 printer, video terminal tatiòn and components. Sorry, we do,not supply and two other RS 232 devices at once, without ,case or power supply..;

WHERE IT MAKES SENSE, MAY BE USED WITH ANY 8080, 6800, Z80- or F8 COMPUTER GENERAL PURPOSE COMPUTER. POWER SUPPLY KIT

This power supply kit features a high frequency torroid transformer with switching transistors in order to save space and weight. 115V 60 cycle primary. The outputs with local regulators are 5V to 10A, in one amp increments, - 5V at 1A, ± 12V at 1A $7900 regulators supplied 6 340T -5 supplied.

F8 EVALUATION BOARD KIT UNIVERSAL 4K WITH EXPANSION CAPABILITIES MEMORY BOARD KIT $6995 A fantastic bargain for only This memory board may be used with the with the following features: F8 and with minor modifications may be used 20 ma or RS 232 interface 599 °° with KIM -1up. 64K addressing range 32- 2102 -1 static RAM's, 16 address lines, Program control timers 64 Byte register 8 data lines in, 8 data lines out, all buffered. On- 1K of on -board static Built -in priority interrupts board decoding for any 4 of 64 pages, standard memory Documentation 44 pin, .156" buss. Built in clock generator Uses Fairbug PSU

FOR FAIR6UG 4K F8 BASIC ON PAPER TAPE $2500

27088K EPROM S20.95 PRINTED CIRCUIT BOARD TANTULUM CAPACITORS Full Wave Bridges 2522STATICSHIFT REG S 1 95 22UF 35V 5 51 00 1011F 10V ARV 2A 6A 25A 2513 CHARACTER GEN S 995 4.1/7..61/2- SINGLE SIDED EPDXY 5 .25 47UF 35V 5 S1 00 22UF 25V S 40 100 2518.HEX 32 BIT SR S 3 50 BOARD 1116" dunk, rrnelched 1.30 ea. 5/52.60 68UF 35v 5 51 00 15UF 35V 3/51.00 2102-11024BTRAM . . S .99 6.60 200 75 1.25 2.00 1UF 35V 5 SI 00 30UF 64 52804K DYNAMIC RAM S 4.75 5/51.00 400 .95 1.50 7 WATT LD -65 LASER DIODE 1R 58.95 2UF 10V5:51 00 i:Ul 35V $ 40 3.00 5202A UV mom. S G 95 600 1.75 3.3UP 35v 4.-51 00 47UF 20V S .35 1.20 4.00 1101A-256 BIT RAM S .75 2N3820PFET 5.45 4.7UF 15V 5/51.00 68 UF 15V S .50 SANKEN AUDIO POWER AMPS 21078 S55 3.75 2N5457NfET S.45 6 8UF 35V 4/S1 00 SI 1010 G 10 WATTS S 7.95 MK4008P 1.95 2N2646. S .45 Si 1020G20 WATTS 51595 . . CHIP . . . ALARM 55.75 1702A UV PROM . S 495 ER 900TRIGGER DIODES 4/ SI 00 M7001 CLOCK 5 1050 G 50 WATTS $27.95 5204.4K PROM . . . . . 510 95 2N 6028 PROG. UJT S 65 NATIONAL MOS DEVICES 82523 S 1.95 WSU- 30.Hand wire wrap tool oled to MM1402- 1.75 MM5057- 2.25 A4.5.1013 UART S 6.95 wrap. unwrap & S'to #30 wire $5.30 CCD202 -100X 100 Charge coupled device MM1403 - 1.75 MM5058 2.75 21114IATURE MULTI TURN TRIM POTS H image sensor 5145.00 MM1404- 1.75 MM5060- 2-75 SOCKETS 830 WIRE 100. 500. 1 K,2K,5K.10K.25K.50K.100K. MM5061 CONDUCTOF DIP MCM6571 A 7 e 9 upper 8 lower Case char. MM5013- 2.50 - 2.50 8 PIN -.22 24 PIN - 40 WRAP WIRE 2001(500K 1 Meg. 575each 31S2.00 MM5016- 4.75 SPECTRA acter generator 515.95 2.50 MM5555- 14 PIN - .25 ?SPIN -.50 SINGLE .1N TRIM PU7SSnn,l,>r MM5017- 2.70 MM5556- 4.75 FLAT CABLE STRAND UL 1o8ums 1O'ß1.50 16 PIN -.2840 PIN -.60 3010 stele 3/16"5/8`61 1/.1". 50. 100. MM5055- 2.25 MM5210- 1.95 1O0ß1.40 VERIPAX PC BOARD 18 PIN 30 /11,15056 2.25 MM5260 1 lc. 10r,. $0K ohms SI 50 ea . .3/54.00 15 This hoard ¡$81116" single sir/ ed paper epoxy LI(71-17 ACTIVATE SCH 's 74 LS LINEAR TO18.200V IA. board, 4 .. "116'/," DRILLED and ETCHED TTL IC SERIES 51.10 IC's 741.5125 65 which will hold u1710 21 single 14 pin 7400 .14 7445- .55 .50 SERIES CIRCUITS - 14151- 4I500 26 741.5126 65 M lo] - .75 TRANSISTOR SPECIALS or 8. 16. or LOI DIP IC's with busses for 7401- .14 7446- .65 74153- .60 74/ SO2 26 741.0137 .00 LM 301/746.31 2N3585 NPN Si 1046 S 95 power supply cOnnBCIOr. $4.00 .14 .65 74154- .95 - 7402- 7447- 741.503 - 16 141.5136 .39 LM307 .30 7N3772 NPN Si T0.3 . S I G0 .14 MV 5691 YELLOW -GREEN 7403 7448- .65 74155- .70 1504 28 7ÓL5138 77 LM 31/6 95 PNP - 2N456A GE S 75 BIPOLAR LEO S .90 7404- .18 7450- .15 74157- .58 41505 16 741.5139 17 i311 .95 PNP 74161- 2N4908 Si TO 3 S I DO FP 100 PHOTO TRANS S 50 7405 - .18 7472- .29 .85 41.506 .19 141.5151 92 M 316 35 256056 NPN 5. TO 3 011nOlon S I 70 RED. YELLOW, GREEN or AMBER 7406- .25 7473- .29 74163- .80 ÓI509 .2e 1ÓL5153 - 93 LM 319 95 1.510 26 741.5155 L M 324 1 05 2N5086 PM' Si TO 92 . . . 4/5 I 00 LARGE LEO', 6151.00 7407- .25 7474_ .29 74164- .95 100 1.511 34 1425156 - .93 LM 339 1.10 . . .18 254598 PrdP T066 . . S 60 1/4 IMCT -21 5 75 7408- 7475- 74165- .95 .45 4L513 50 141.5157 99 iu336 I.4o . .17 1.20 2N404 PNP GE . MOLE% PINS 100/51.00 74173- 10.5 575 1.00 7409_ 7476- .30 14L515 19 741.5160 1.07 310 Ln RF .14 26)3919 NPN S. T0.3 S 150 1000/08.00 7410 - 7480- .35 74174- .95 741.520 .28 741.5161 -157 LM 377 2.50 MPSA 13 NPN 5, TO 92 3/S 1.00 10 WATT ZENERS 3.9, 4.7, 56, 8.2, 7411- .20 7483- .62 74.175- .82 74LS71 .26 141.5162 -1.07 im 360 95

2N3767 NPN S. TO 66 . . . S 70 12.15.18.22,100,150 or 200V . ee. 5 .60 7412- .20 7485- .87 74176- .75 41 522 .36 741.5163 . -, 07 M 261 1.25 2142222 NPN S. TO.18 5/5 1.00 1 WATT 2ENERS 4.7, 5.6,16 12, 15 7413 - .39 7486- .30 74177- .75 4LS26 .33 741.516e -1.10 LM 392 1.75 74180 Ó5a7 33 741.5169 10 L M 537 7 50 . . . . .65 1 2143055 NPN S. TO 3 . S .70 18 or 22V ..... ea.$ .25 7414 - 63 7489 1.85 74181- 71.41.530 .26 741.5170 -1.77 O N 553 .50 2N3904 NPN S. TO-92 . 5/5 1.00 MC6860 MODEM CHIP 59.95 7416- .25 7490- .42 1.90 .25 74190- 1.00 741_532 .33 741.5173 1.39 LM 555 a 2N3906 PNP Si TO 92 5/S 1.00 7417- 7491- .58 74L537 741.5174 -1.06 .14 74191- 1.00 .37 1.41556 85 IN5196 NPR Si TO 270 S 50 7420- 7492- .43 741.538 H1.-540L 2 75 - 37 741.5175 -1 72 2146109 PW Si T0.220 5 .55 7425- .25 7493- .45 74192- .83 500 200 HV IA 3A 12A SOA 125A 41.540 - 27 74L5190 - 1.50 7494- .70 74193 . 1.10 2N3639 PNP Si 20.5 5/5 1.00 100 .06 .14 30 .80 3 /(1 7426- .22 - 83 41542 .BS 75.5191 -1.50 SIS 74194- .85 79 1.50 7 NPN T0.92 Si . . 7427- .25 7495- .65 41547 - 741.5192 1.75 566 2N651 3/5.6 00 .07 _.20 _4.25 200 35__)15_ 7430- .14 7496- .65 74195- .52 741-551 .26 741.5193 -1.75 567 400 .09 .25 .50 1.40 6.50 7432- .25 74107_ .28 74196- .86 741.554 -- 26 741.5195 -1.2s 703 26 C /MOS (DIODE CLAMPED) 600 11 .30 .70 J'80 8.50 7437- .21 74121_ .33 laissa - 95 741.5196 = .99 709 - 74257 1.25 laL573 ao 14L5191 >lo - .35 74C10- .22 4012- .22 4023- .22 4042- .78 800 .15 35 90 2.30 10 50 7438 .21 74123- .65 99 - /4279 .87 ,41.57a all n15221 -I 13 741C or V4 .31 74C193 -1.50 4013- .40 4024- .75 4046 20 45 1.10 12.50 7440- .14 74125. 40 -2.25 1000 2.75 75324- 1.75 ÓL57ú ao 74LS757 1 35 747 .65 4001- .22 4015- 4025- .22 7441- .70 74126 .40 ON 1310 .95 4049- .40 75491 .50 7LSOO - 29 74L5259 1.39 7 50 . SILICON SOLAR CELLS 4002- .22 4016- .40 4027- .40 4050- .40 7442- .40 74150- .90 75492- .50 41.592 - .95 141.5219 )5 1456 - 96 4006 -1.20 4017- 1.05 407E- .88 4055-1.5 21/," diameter 741.593 - 65 7415365 66 1459 - 60 4007- .22 4018 -1.00 4079 -1.10 4066- .80 141.5109 43 141.5366 .61 [42046 - .75 at ma. MINIATURE DIP SWITCHES 3900 49 4009- .42 4019 4030- .22 .27 .4V 500 $4.00 741.5112 - 3 1ÓL5367 66 - .25 4071- CTS-20E4 Four SPST switches úA038CC 7415113 - a3 tOL5386 66 ] 90 4010- 42 4020-1.05 4033 -1.50 407E -1.05 .n one mini dip package. 51.75 9185 -1 95 741.5114 - 3 131.5390 2 20 4011- 4022- 4035 309K S .95 340K-5,12,15 .22 .95 -1.10 CTS-2058 Cum SPST switches in a Ili 7 23 S .50 or 24V S 85 IN 4148116014i ...... IS/ 1.00 pin DIP 04á4t14. - TRIACS SCR'S LM 376 .. . S .60 340T-5, 6, 8, 12 $2.20 SWITCH SI.50 MCA 81 OPTICAL LIMIT 320K5 or 15V $1.40 15,18 or 24V$1.10 5.6V SPST Miniature temi re145., normally PR V 1A 10A 25A 1.5A 6A 35A 320-5,15 78 MG 51 35 LED READOUTS mien. 330 Ohm cod res.... 5.75. 352.00 100 .40 .70 1.30 .40 _ _50 1.20 . . MG FNO C.C..4" S 5 DL704-.3" C.C. S .95 24V S .85 79 51.35 359 ALCU MINIATURE TOGGLE SWITCHES 200 .70 1.10 1.75 .60 .70 1_60 FND 70 S 55 MAN -7 -.3" C.A. S .95 C.C..4- RS232 DB 25P male 52.95 MTA 106SPOT .51.20 400 1.10 1.60 2.60 1.00 1.20 2.ill FND 503 C.C..5 S .85 NS 33.3 dig. array S .75 De 255 remale $3.50 CONNECTORS MTA 206 DPDT . . 51.70 600 1.70 2.30 3.60 1.50 3.00 Fein Sto CA 5 S .85 DI 747 C. A..6" S1.95

WE SHIP OVER 95% Terms: FOB Cambridge Mass. Send 25/ for our catalog featuring SOLID STATE SALES Send Check or Money Order. OF OUR ORDERS THE Transistors and Rectifiers P.O. BOX 74B Include Postage Minimum 145 Hampshire St., Cambridge. Mass. DAY WE RECEIVE THEM Order 05.00, COD'S 520.00 SOMERVILLE, MASS. 02143 TEL. (617) 5474005

Circle 134 on inquiry card. BYTE November 1977 255

www.americanradiohistory.com Inquiry No. Page No. Inquiry No. Page No.

ßeaden Senvice 48 Disc 3 221 99 mpi 213 50 DRC Engineering 235 100 MSD Inc 107 51 Dynabyte 99 101 Mullen 196 52 EDP Professionals 189 102 National Multiplex 101 53 Electravalue Industrial 218 103 Netronics Research 211 Inquiry No. Page No. 54 Electro Labs 227 104 Newman Computer Exchange 140 55 Electronic Control Technology 212 105 North Star Computer 61, 67

1 AAA Chicago Computer Center 189 56 Electronic Warehouse 237 106 Objective Design Inc 215 2 Alpha Digital 198 57 Essex Data 189 ' Ohio Scientific Instrument 39 -45 3 Anderson Jacobson 23 163 Expandor 202 108 Oliver Audio Engineering 66 4 Apple Computer 34, 35, 36 58 Extensys 93, 165 109 Osborne & Associates 75 14 Arrow 219 59 Formula International 223 110 PAIA 139 5 Atwood Enterprises 225 61 Godbout 239 111 Page Digital 225 6 AVR Electronics 219 62 Hambrecht & Quist 197 112 Parasitic 15 7 AVATAR Systems 221 63 Heath 24, 25 Percom Data 32, 204 8 Axiom 7 64 Homestead Technologies 219 114 Peripheral Vision 129

9 Beckian Enterprises 222 65 Heuristics 87 115 Phone I 189 10 Bell & Howell Schools 13 66 I MMM 78 135 Polymorphic 27 11 Beta Business Systems 189 67 I MSAI 48, 49 117 Processor Technology 62 -65 12 BITS 142 -144, 153, 159, 161, 163, 178 68 Information Terminals 5 119 Quantronics 17 15 BPI 109 69 Integral Data Systems 145 120 Radio Shack CIV 122 RHS Marketing 105 1 6 Byte I nc 157 70 Integrated Circuits Unlimited 241 BYTE Binders 205 71 Intel 11 123 Rotundra Cybernetics 219 18 Byte Shop Mail Order 141 72 Intelligent Business Machines 221 118 S -100 Inc 103 124 Scelbi 51, 117 19 Byte Shop of Miami 221 73 I nterdata Systems 29 20 BYTE Subscription 187 74 Interface Age 193 Scientific Research 115, 131 Sales 21 California Industrial 231 75 International Data Systems 191 126 SD 253 22 Canada Systems 208 76 IOR 189 127 Seals 71 23 CMC Marketing 57 77 Ithaca Audio 201 128 Smoke Signal Broadcasting 123 24 Computalker 203 78 Jade 243 129 Software Exchange 210 25 Computer Corner 219 79 James Electronics 245, 247, CI II 130 Software Records 209 26 Computer Creations 218 60 Jem 213 131 The Software Store 217 27 Computer Data Systems 21 80 Lear Siegler 55 132 Software Tech 202 28 Computer Depot 189 81 Logical Services 155 133 Solid State Music 19 29 Computer Enterprises 219 13 Manchester Equipment 218 134 Solid State Sales 255 30 Computerland 30, 31 82 MCBA 47 135 Solid State Time 158 31 Computerland, Lawndale 221 83 Meshna 249 136 SwTPC CI I 33 Computer Mart of NH 189 84 Micro Aids 217 137 Space Byte 79 34 Computer Mart of NJ 207 85 Micro Com 219 138 Summagraphics 195 35 The Computer Place2 19 86 Micro Design 210 139 Sunny Computer Stores 219 36 Computer Room 169 87 Micronics 207 140 Sybex 170, 179 37 Computer Systems Store 221 88 Micro Tech 113 141 Synchro Sound 58, 59 38 Computer Warehouse 233 89 Micro Term 70 142 Szerlip 215 39 Creative Computing 183 90 Microtex Inc 221 143 Tarbell 209 40 Cromemco 1, 2 91 Microware 148 144 Tech Mart 81 42 DaJen 214 92 MSI 133 145 Technical Design Labs 33 43 Databyte 125 93 Mikos 228 146 Technical Systems Consultants 89 44 Data Search 203 94 Mini Micro Mart 229 147 Tech Prize 200 45 Digital Group 97 96 Modicon 208 23 TEl 57 46 Digital Micro Systems 92 97 Morrow's Micro Stuff 251 149 Telesensory Systems 192 47 Dilithium Press 201 98 Morrow, William & Co, Inc 156 150 Tenberg Software Systems 221 151 Terminal Systems 214

152 Texas I nstruments 8, 9 153 Toyo International 221 49 Typetronic Computer Store 197 August 1977 BOMB results appear on page 38. 154 Urban Instruments 224 155 Vandenberg Data Products 196 On BOMB Card, 156 Vector Electronics 138 Article No. ARTICLE PAGE 157 Vector Graphic 120, 121 158 Vectron 139 1 Ciarcia: Memory Mapped IO 10 159 West Coast Computer Faire 175 2 S P Smith: Simulation of Motion, Part 1 18 160 Worldwide 212 3 Piele: A Minicomputer Fair: Tiny and Personal 26 161 Ximedia 171 4 M F Smith: Using Interrupts for Real Time Clocks 50 162 Xybek 200 5 McCain: Spikes: Pesky Voltage Transients 54 6 Grappel: Does Anybody Know What Time It Is? 68 7 Sneed: Adding an Interrupt Driven Real Time Clock 72 To get further information on the products advertised in BYTE, fill out the reader service cord with your nome and 8 Hashizume: Floating Point Arithmetic 76 address. Then circle the appropriate numbers for the adver- 9 Jones: Building a Computer From Scratch 80 tisers you select from this list. Add a 9 cent stomp to the then drop it in the mail. Not only do you gain infor- 10 cord, Brader: A 6502 Personal System Design: Kompuutar 94 mation, but our advertisers are encouraged to use the 11 Lynne: Implementing an LSI Frequency Counter 146 marketplace provided by BYTE. This helps us bring you a bigger BYTE. 12 Wozniak: SWEETI6: The 6502 Dream Machine 150 13 Trollope: Do You Need the Real Time? 166 'Reader Service inquiries not solicited. Correspond directly with company. 14 Doliner: NIMBLE: The Ultimate NIM? 172

256 BYTE November 1977

www.americanradiohistory.com N M c in LID n CO m O (V M N N CO - - e o Ol O- N M Q N co N CO m M M M M M M M Cl M c a Q Q Q a Q e e e N 0 N N 0 0 N N co N CO tD 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 01 N M N c 0 0 CO 01 O- N M e 0 0 N CO O1 O J I 000000000 O- N N N N N N N N N N y I- 0 0 0 0 0 0 o 0 0 0 co 0 0 0 0 0 0 0 0 0 0 o 0 0 0 O 0 0 0 0 N N CO 01 N e 0 O- M Q N o N CO m N M Q N CO m 4 Z N n ñ ^ m m m m m m m m O- 0 _` N N tD tel tD m m m m O1 m m m a, G1 m m o W 0 0 0 0 N N 0 N tO 0 N N 0 tD 0 N N 0 N tD 0 0 N N o CI_ - N M e 0 o N m m N M e N CO N M tD e e Q O- o N m 0- e 0 N CO m c c e e e c Ill N N N 0 N N N ill N VD tD tD UD VD OD CO VD 0 N N N ti, N tlt N tl1 0 o o w 0 N N N tD N tll 0 N to 0 0 0 0 N N 0 N N N N (/) - N M e N o N CO Ol O M N CO m -N e 0 0 O N M a N (D N CO N N N N N N N N - m ' Q N N N N N N N N N N N M M M M M M M M M M Q N N N N N N N N N N co N N N N N N N N N [1 p J m m m emm amp NW m O) pT cNTO1 0l O)OomÓ Of Oi Ó Ó Ó O Ó O Ó Ó O P4 G (1 a Q Q e Q c c c e cOT Q e e Q c e Q c e N N N N N N N N N N N

Ñ I N M 0 m 0f - c 0^ 0- N M Q N 0 m 01 o N CO m hill N N N N N N N N N o 0 0 0 0 0 0 0 0 o 0-N N ñ N N m _ e e e e e Q Q e e v e e c e e e Q e c e c e Q Q e e Q c e c .- N M a N n CO 01 0 O - N N D r m m O N M Q N m m CO O w N N N N N N N N N M M M M M M M M Q Q- Q Q Q Q Q Q N ` O c a a c a c Q Q m O N N m OO N M c 0 m m 0) O- N N tD m m Oc V> Ol Q1 01 m m m 0 0 O O O O O O O N M M M M M M Mm0 a Q c a Q Q a Q c a Q Q e c c c e Q Q Q O c Eli O - N M e N tO CO 01 N CO M N r O-N O) O- N M e N CD m Ol O M0 M0 Mo M0 0 o ñ ñ ñ N N m m m m m m m m m M M M m M M M M M M M M M M M M M M M M M 0 .-- N M Q M CO N m m O - N M Q N o n CO m 0 - N M c .= M M M en M N 0 m 0 M M M M M M M M M MQ Me e c Q a Q Q N N 0 0 N N 0 N N o M M M M M M M M M M M / M M M M 0 m H - N M e N 0^ CO 01 O- N M e N o N CO m N M tD O E 0 0 0 0 0 0 0 0 0 0- a o m m O O M N N N N N N N N M M M M M M M M M M M M M M M M M M M M M M M "l M M lN`] M M (.., CO D w N ñ a N N N m m LOUD, CO Q) - 0- N0,0 0f 0- N M Q MO m m o N n n CO CO n CO mmmmmmmOlmmmmOf O1 G)Of CO .7': N N N N N N N N N N N N 0 ` N N N N N N N N N N N N N N N N N ac,:. N M Q N 0 CO O) N M N CO - O- e 0 p1 0- N M Q N 0 CO O1 O Ó Q rv c Q Q Q Q Q Q N 0 N 0 0 0 N t!1 N tO CO N N N N N N N N N N N 0 0 0 0 0 0 tD CO 0 r v N N N N N N N N N N N N N N N N N N 1F.1. N M O N N m Ol N - 0 O- M c 0 0 CO O1 O- N M c N CO O1 O 1tJ ÇO1 N N N N N m^ ',67.4t5 N N Ñ N Ñ M M M M M M M M M M c ^ N N N N N N N N N N N N N N N N N N N N N N N N N N N N '¡ O1 - N M Q N m m Ol N M Q N tD E mmmmmmmmmclmrnmmmolá,molooó0000óoo-O- m Of O- N M c N tD m Of O N N N N N N N N N N N M c 0 (ID CO m N M . - O- Q N CO N m m N CO m 0 1D 0- N N N 0 0 0 N CO _ > 0 o 0 0 0 0 0 0 tO o N N ñ ñ N N N CO

N M a N m Of Q - 0 0- N N 0 ^ mCO M N M c N mCO C) O CO N N N 0- 0 r _3 N N N N N M M M M M M M M Q Q c c e Q c c Q Q N > \1 C N CI N o N CO O) N M Q 11 - a O- 0 0 0CO m O- N M Q 0 n mCO Ol I > G1 O1 o O \ t0 - O m m 01Co Ol Q1 m m 0 0 0 0 0 0 0 0 0 0 N m a a) W v+ - N M e N o CO Ol CO E E O- ñ N m N M a N CO m O I- '- 0 0 0 CD 0 o C) n N ñ N N O- co co0 co co co 0 H o o ñ m m m m m m m O N M Q N m OI N 1D Z F- U M- M M M MN M M M cO- a Q QM Q a Qm QN Q Of 0- Nn e 0(0,03010 Z c 0 0 0 N N N N N 0 0 m - N M Q 0 0 N m Ol N M N N O- e 0 m m 0- Ñ M Q N m N m O1 O N N N N N N N N N M a

(n000 In R o 0 U_ ri tó a I- r)V X 0) CO U) UN

>

UC

N

i Ñ a a) E E 0 á Z U (ñ

0000000000000000000000000

G7 rn O) c) c) rn O) t7 O O) O) Gl 0 0) O) G7 Gl 0-)0 Gl G) O) m01 Gl

CO CO CO Co CO CO Co CO CO CO CO CO CO Co CO Co 0 CO Co CO CO CO CO CO Co

r r r r r r r r r r r r r r r r r r r r r r r N r

tD CO (O LO cD CU cD cD cO (D (O CO cD LO CO CD CD CO LO (D O [0 tD (D C7

LO tl) LL) (f) LL) cP tf) (I) tO en (0 U1 (f) tn an tn t0 tn (0 (O cf) tn tn en tn

V c c c c c e c c V c c c a c c c e c c c c c c c

CO M CO M C) C7 C7 M CO C) CM C7 C") M M CO M C) C) C) C') (`M

N N N N N N N N N CN N N N N (N (N N N N N N N N N N

O U U 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 O N C) c LL') (D r CO Q) O N C) Q (0 (O N W 6 O N C) Q o Q z N CN N N N N www.americanradiohistory.com PLACE STAMP HERE

READER SERVICE E liii Publications Inc PO Box 319 Dover NJ 07801

November 1977

PLACE STAMP

HERE

EvilSUBSCRIPTIONS

PO Box 361 Arlington MA 02174

PLACE STAMP HERE

BOMB - BYTE's OogoinE Monitor Cox

EII Publications Inc 70 Main St Peterborough NH 03458

www.americanradiohistory.com ATTENTION DEALERS: Announcing

Inril Pak electronic components One -Stop Component Center

*Over 200 quality items in- A component line of proven cluding integrated circuits, sellers developed for the resistors, diodes, transis- independent dealer. Ideal for tors, capacitors, connect- JámPak computer shops, school ors, switches, sockets, dcchonicoampanVm stores, electronic dealers, LEDs and Data Books Component Center covering all JIM-PAK® hobby shops, or any location

items. where there is a potential 6I`.11---, ;¡ *Immediate delivery on all market for electronic sales. 1 , ! =!- orders ,., - - ' 11--1-1-'\,- *Store display racks avail- I ` fii A product line which sup- able uu 111111_ `` plies most of your needs _,.1=. *Stock rotation and return from one distributor with a policy 11h111_'` reputation for fast and < ,,` ' *Direct mail program avail- u,u efficient service. Attractive able from list of active 11111 ' and compact display racks electronic buyers in dealers' lu..'_` make initial installation of 11p1V ,,,, area. V the JIM-PAK® line easy. * National advertising cam- ' paign in leading electronics k Your customers deserve the magazines to include list l:l. ,, of qualifying dealers , best. Now you can profitably retail name brand compon- *Nationally known manu- facturers' products at prices ents at competitive prices. every dealer can afford Be the first in your area to *Guaranteed products announce and sell the JIM- PAK® line. Write or call *Standard industry part numbers today. jim-pak o FOR MORE INFORMATION AND PRICING SCHEDULE CONTACT: r^--°- , a division of James Electronics, 1021 Howard Avenue, San Carlos, California 94070, (415) 592 -8097 www.americanradiohistory.com Circle 79 on in.uir card. The first complete, low -cost microcomputer system for business, home or education The computer that helps a small business think big - Radio Shack TRS -80 and grow bigger. The TRS -80 can greatly reduce the time you spend on payroll, accounting, inventory control and Includes other clerical tasks. So you have more time for clients or CPU, customers. You don't have to be an expert in memory, programming or electronics, because the TRS -80 is a keyboard, not display, kit - it's wired, tested, U.L. listed, ready to use. The power Z80 -based system comes with 4K read/write memory and supply, Radio Shack Level -I BASICS stored in read -only memory. cassette recorder Memory expandable to 62K bytes. With programming instructions and ready for an expanding selection of prepared programs on cassettes. Designed and built in the USA by Radio Shack. Just 599.95! 111I11111111111I1111IIII11111111..`.

s=t + T:a lpie. s.TT 7l [ !t t . f 4 R r

www.americanradiohistory.com