COMPUTING FOR HOME AND BUSINESS r OD oc_ JLPtnJ £1 in o r E( / u •■’■'V >•; i,-. ~ " ■ ’• 4 r:\--j ■ JUNE 1980 $2.50 SMALL COMPUTERS ■ OF THE 80s mTl ‘ 07 m,m t *0±9l 71486 02651 CANADA/MEXICO $3.00 How Do They Stack Up? COPS AND COMPUTERS 21st CENTURY SURGEONS BIG State of the art "Winchester"type hard disk with a data storage capacity of nearly 16 Megabytes, makes the SWT PC 6809 system the most flexible as well as the most powerful eight-bit microcomputer system in the world. The intelligent controller, using DMA data transfer, makes maximum use of the “Winchester" capability. It is com- pletely compatible with the FLEX9 operating system used on the SWT PC 6809 floppy disk system. CDS-1 "Winchester” disk drive with controller . .$3,995.00 Cabinet— matching our 6809 computer desk . . . 150.00 SOUTHWEST TECHNICAL PRODUCTS CORPORATION 219 W. RHAPSODY SAN ANTONIO, TEXAS 78216 (512) 344-0241 CIRCLE INQUIRY NO. 56 RS-232 or Latched Outputs 4 MHz Crystal Clock On Card Voltage Regulation Parallel I/O Port #1 Parallel I/O Port #2 8K ROM Capacity Parallel I/O Port #3 \ IK RAM Current Loop I/O Port #4 - Standard Bus for System Expandability Programmable Baud Rate UART with Interval Timers MHz Z-80A The single card computer with the features that help you in real life COMPLETE COMPUTER In this advanced card you get a pro- fessional quality computer that meets today's engineering needs. And it's one that's complete. It lets you be up and running fast. All you need is a power supply and your ROM software. The computer itself is super. Fast 4 MHz operation. Capacity for 8K bytes of ROM (uses 2716 PROMs which can be programmed by our new 32K BYTE- SAVER® PROM card). There's also IK of on-board static RAM. Further, you get straightforward interfacing through an RS-232 serial interface with ultra-fast speed of up to 76,800 baud — software programmable. Other features include 24 bits of bi- directional parallel I/O and five on- board programmable timers. Add to that vectored interrupts. ENORMOUS EXPANDABILITY Besides all these features the Cro- memco single card computer gives you enormous expandability if you ever need it. And it's easy to expand. First, you can expand with the new Cromemco 32K BYTESAVER PROM card mentioned above. Then there's Cromemco's broad line of SI 00-bus-compatible memory and I/O interface cards. Cards with fea- tures such as relay interface, analog interface, graphics interface, opto- isolator input, and A/D and D/A con- version. RAM and ROM cards, too. Card Cage 32K BYTESAVER PROM card EASY TO USE Another convenience that makes the Model SCC computer easy to use is our Z-80 monitor and 3K Control BASIC (in two ROMs). With this optional software you're ready to go. The monitor gives you 12 commands. The BASIC, with 36 commands/functions, will directly ac- cess I/O ports and memory locations — and call machine language subroutines. Finally, to simplify things to the ulti- mate, we even have convenient card cages. Rugged card cages. They hold cards firmly. No jiggling out of sockets. AVAILABLE NOW/LOW PRICE The Model SCC is available now at a low price of only $450 burned-in and tested (32K BYTESAVER only $295). So act today. Get this high-capability computer working for you right away. Cromemco incorporated Specialists in computers and peripherals 280 BERNARDO AVE., MOUNTAIN VIEW, CA 94040 • (415) 964-7400 CIRCLE INQUIRY NO. 16 JUNE 1980 VOL. 5, ISSUE 6 SINCE DECEMBER 1975 Comparison Charts .... Pg. 80 Looking at Micros Pg. 70 Dust Writer Pg. 66 COMPUTING FOR HOME AND BUSINESS APPLICATIONS GENERAL FEATURES The Dust Writer 66 by Michael J. Hodgetts Comparison Charts Explained 80 by Tom Fox BUSINESS FEATURES Looking at Micro-Based Business Systems 70 by Tom Fox HARDWARE FEATURES Teach Your PET to Read “Marked Cards” 56 by Marvin Mallon System of the Month: The Escon Selectric Interface 62 by Hampton C. Miller and Andrew Klossner Mixed Interfaces 108 by Richard A. Leary An Error Correcting Memory 114 by Terry Dollhoff Lazor: The Business “Dream” Machine 122 by David R. Fuller and Harold Henrich, Lazor Systems. Inc. LEARNING CENTER The Teacher and the Personal Computer: Alternatives in Instruction 89 by Samuel W. Spero My TRS-80 Likes Me 94 by Bob Albrecht MATHTEST 96 by Bethany Prendergast Using and Building Micro-Based Systems 98 by David Marca. Associate Editor SOFTWARE FEATURES ' Assignment: Benchmark 130 by Tom Fox A Break Service Routine for a KIM-1 with a Teletype .132 by Ken Wetzel Textwriter: An 8080/Z-80 Text Output Formatter 136 by Alan R. Miller FREE RUNNING Editor’s Notebook 4 Letters to the Editor 10 The Column 17 Jurisprudent Computerist 28 Al Baker’s Game Corner 30 Micro Mathematician 36 Mind Revolution 46 Business Software Review 48 Inventor’s Sketchpad 50 DEPARTMENTS Update 18 Calendar 22 Book Reviews 24 New Products 118 Micro Market 142 Microdex 143 Advertiser Index 144 INTERFACE AGE Magazine, published monthly by McPheters. Wolfe & Jones, 16704 Marquardt Ave., Cerritos, CA 90701. Subscription rates: U.S. $18.00, Canada/Mexico $20.00, all other countries $28.00. Make checks payable in U.S. funds drawn on a U.S. bank. Opinions expressed in by-lined articles do not necessarily reflect the opinion of this magazine or the publisher. Mention of products by trade name in editorial material or advertisements contained herein in no way constitutes endorsement of the product or products by this magazine or the publisher. Circulation Department, (213) 926-9540. INTERFACE AGE Magazine COPYRIGHT © 1979 by INTERFACE AGE Inc. ALL RIGHTS RESERVED. Material in this publication may not be reproduced in any form without permission. Requests for permission should be directed to Nancy Jones, Rights and Permission, McPheters, Wolfe & Jones, 16704 Marquardt Ave., Cerritos, CA 90701 . INTERFACE AGE Magazine is catalogued in the Library of Congress, Classification No. QA75.5.155. USPS No. 528150. ISSN Publication No. 0147-2992. Membership in Audit Bureau of Circulations applied for. POSTMASTER: Please send change of address form 3579 and undelivered copies to INTERFACE AGE Magazine, 16704 Marquardt Ave., Cerritos, CA 90701. Controlled circulation postage paid at Olive Branch, Mississippi and Artesia, California. The place to buy Cromemco Systems or North Star Systems . . . or Vector Graphic Systems . . . or Dynabyte, Micromation, et. al. 'erminals. Printers, Disks, or Software — Literally any Cromemco system. Board, or Software package can be DELIVERED FROM STOCK at the lowest prices! Cromemco Z-2H Full 11 -megabyte Hard Disk System! List $9995 OUR PRICE $8489 e Full 11 -megabyte hard disk system • Fast Z-80A 4 MHz processor • Two Floppy Disk Drives • 64K RAM Memory • RS232 Special Interface • Printer Interface and • Extensive Software Available. Cromemco HDD 11/22 megabyte Hard Disk for use with existing systems. DMA controller. Transfer rate of 5.6 megabytes/second. System 3 - NOW DOUBLE THE CAPACITY - with 64K of RAM List $6990 OUR PRICE $5890 Cromemco System 2 Now features dual-sided drives — double the capacity. Similar to System 3, except features dual, double-sided mini floppy disk drives. List $3990 Q |^| |_y $3390 Z-2 Computer System (can be rack mounted) List $995 OUR PRICE $845 Single Card Computer — SCC-W,4mhz List $450 OUR PRICE $382 HDD-11, List $6995. . HDD-22, List $11,995 our price $5,939 $10,189 NEW Color Graphics Interface — SDI List $595 OUR PRICE $505 SHIPPING AND INSURANCE: Hard Disk Systems, System 3, and System 2 shipped freight collect. For boards, add $2.50. All prices subject to change and all offers subject to withdrawal without notice. - WRITE FOR FREE CATALOG - CIRCLE INQUIRY NO. 80 vm MiniMicroMart, Inc. 1618 James Street, Syracuse NY 13208 (315) 422-4467 twx 710-541-0431 EDiTun'5 iuuTEBuuiri When this issue goes to print, we will be starting at the midpoint of 1 980. And where are we? As of this writing, we are facing record inflation, insane interest rates, a battle for the presidency and ever-increasing economic pressure that threatens several key segments of our economy. One of the segments that is undoubtedly under some of the greatest pressure certainly has to be the small businessman. I’d like to ad- dress some of the challenges that are facing this very important part of our nation’s foundation. As we see the economic noose tightening on the small businessman, several things are going to begin happening— and it will not require a soothsayer to predict the occurrences. Undoubtedly, we will see more and more small businesses failing. After all, some 70 to 80% of all new small busi- nesses fail in their first five years even when the economy is relatively stable. Surely the small business failure rate will con- tinue to climb. We will probably see fewer new stores, shops and businesses sprout into being, as the cost of seed money is entirely unreason- able. One of the realities of life is that it gen- erally takes money to make money, and if the budding entrepreneur has to borrow money at prohibitive interest rates, then the cost of money alone will probably sound the death bell over new business. But don’t get me wrong, I’m not mourn- ing the demise of the small businessman. On the contrary— the typical small business- man or entrepreneur is no slouch. These are people who are dedicated to the success of their venture, people who are not afraid to take a risk, people who will be more than willing to turn to technology for assistance in meeting the challenges of small business. Many of these people will turn to the micro-based small business system, hoping to use the “electronic brain” of the 1980s to their economic advantage. A number of small businesses will suc- ceed in the marriage of small business and the micro. After all, one of the reasons for the booming success of the small system is that it is an extremely powerful tool for small business and the cost is not necessarily pro- hibitive. But what of those businessmen who are unsuccessful in their implementation of the micro-based system? Does their failure to implant high technology within their business reflect only an individual failure, or is it a failure of our industry to provide a “universal” enough machine for every business, every situation, every application and every individual? I suspect that it is neither, for there are few simplistic answers for multi-faceted problems. One of the causes that we will be examin- ing in future issues has to do with planning. The fact of the matter is that many of the planning activities that are essential for the successful operation of the largest computer centers are just as necessary for the small businessman. In fact, some of the planning is even more critical for small businesses be- cause of the general lack of a broad financial base within individual businesses. For despite wishes to the contrary, the in- stallation and implementation of a computer system within the small business framework is not a “plug and go” situation. While technology of 1980 can be a Godsend to the small business, it can also be a disaster of the gravest proportions if a system is ill- conceived and poorly planned. Specifically, we are going to start examin- ing the roles of education, backup, disaster planning, pre-purchase evaluations, systems analysis, ethics, privacy and many other issues. We will be looking at how these issues can and do impact small businesses and how the users of micro-based systems can benefit greatly from the trials and errors that large systems users have been dealing with for many years now. TRS-80 OWNERS — here’s your investment management program This is the program TRS-80 owners have been waiting tor! Investment Portfolio Systems (IPS) was developed by security analysts working with software designers. It is a powerful program that comes in one cassette — 16 K Level II Basic on one side, 32 K Disc Basic on the other. Now, your computer can give you the help you need for better investment management: • Store and report data on your full portfolio. • Review your securities by purchase price, yield, % gain and loss. • Provides four special reports: —Status: Purchase date, No. of shares, Purchase date values for: price, P-E, Selected Market Index: Current values for dollar yield, price, P-E. —Value: No. of shares, total purchase price, current market value, total $ return, % of portfolio for each security, portfolio totals. —Gain: Long and short term gain/loss, days to long term, % gain or loss since purchase, change in market index in same period, portfolio totals. —Security Analysis: Earnings per share, % change in earnings. Annualized change in earnings. Market Index, gain/ loss; and % yield. Plus, an ROI factor to correlate with inflation and other indices. — “What If’: The program lets you compare alternatives in terms of ROI. It’s all yours for just $49.95 ... The Invest- ment Portfolio System program in cassette, a 32 page booklet with instructions, documen- tation, and the program listing. Or send for the booklet alone for $7.95, $5.00 of which will be refunded if you buy the cassette in 30 days. Personal Finance Systems 1446 Durham Road Dept. I Madison, CT 06443 To: Personal Finance Systems: Please send me the material indicated below. I understand that the program requires 16 K Level II TRS-80 for tape; 32 K Level II TRS-80 with 1 disk drive for Disk. ( ) Investment Portfolio System Programs & Documentation @ $49.95 ( ) Investment Portfolio System Documentation @ $7.95 My check enclosed for total ( ) Master Charge Account # amount of $_ ( ) Visa Bank# Expiration date Telephone Orders accepted with Master Charge or Visa. Call (203) 421-3379 Name Address City_ .State -ZiP- TRS-80 is a registered trademark of The Tandy Corp. PERSONAL FINANCE SYSTEMS ^ 1446 Durham Road • Madison, CT 06443 4 INTERFACE AGE CIRCLE INQUIRY NO. 51 JUNE 1980 Solve your personal energy crisis. Let VisiCalc Software do the work. With a calculator^ pencil and paper you can spend hours plan- ning, projecting, writing, estimating, calculating, revising, erasing and recalculating as you work toward a decision. Or with the Personal Software VisiCalc program and your Apple* II you can explore many more options with a fraction of the time and effort you've spent before. VisiCalc is a new breed of problem-solving software. Unlike prepackaged software that forces you into a computerized straight jacket, VisiCalc adapts itself to any numerical problem you have. You enter numbers, alphabetic titles and formulas on your keyboard. VisiCalc organizes and displays this infor- mation on the screen. You don't have to spend your time programming. Your energy is better spent using the results than get- ting them. Say you're a business manager and want to project your annual sales. Using the calculator, pencil and paper method, you'd lay out 12 months across a sheet and fill in lines and columns of figures on products, outlets, salespeople, etc. You'd cal- culate by hand the subtotals and summary figures. Then you'd start revising, erasing and recalculating. With VisiCalc, you simply fill in the same figures on an electronic "sheet of paper" and let the computer do the work. Once your first projection is complete, you're ready to use VisiCalc's unique, powerful recalculation feature. It lets you ask "What if?7 examining new options and planning for contingencies. "What if" sales drop 20 percent in March? Just type in the sales figure. VisiCalc instantly updates all other figures affected by March sales. Or say you're an engineer working on a design problem and are wondering "What if that oscillation were damped by another 10 percent?" Or you're working on your family's expenses and wonder "What will happen to our entertainment budget if the heating bill goes up 15 percent this winter?" VisiCalc responds instantly to show you all the consequences of any change. Once you see VisiCalc in action, you'll think of many more uses for its power. Ask your dealer for a demonstration and dis- cover how VisiCalc can help you in your professional work and personal life. You might find that VisiCalc alone is reason enough to own a personal computer. VisiCalc is available now for Apple II computers with versions for other personal computers coming soon. The Apple II version requires a 32k disk system. For the name and address of your nearest VisiCalc dealer, call (408) 745-7841 or write to Personal Software, Inc., 592 Weddell Dr., Sunnyvale, CA 94086. If your favorite dealer doesn't already carry Personal Software products, ask him to give us a call. CIRCLE INQUIRY NO. 52 VisiCalc was developed exclusively for Personal Software by Software Arts, Inc., Cambridge, Mass. TM— VisiCalc is a trademark of Personal Software, Inc. Apple is a registered trademark of Apple Computer, Inc. CLiiuria luuictiuun The additional attention that we will be giving to the use of the micro in small business does not represent a departure from the present editorial direction of INTERFACE AGE, instead, we view it as an extension of the existing direction. We have no intention of ignoring the needs of those readers who are not in- volved in small businesses. We intend to continue our coverage of all the diverse aspects that make microcomputer use in- teresting, challenging and fun. I encourage those readers whose primary interest is in the personal computing arena to pay some heed to this upcoming cover- age. This subject area will be of interest to a broad cross-section of our readership. Getting back to the small businessman for a second, there is a way in which you can help us to write about the issues and con- cerns that impact you the most— drop us a line. Communication is a two-way street. We encourage you to write and tell us what you think we should be covering. Our publication is only as good as our readers, and we are keenly interested in writing about the subjects that interest you the most, not just the subjects that happen to tickle our fancies. Of course, there is no guarantee that we are going to jump at a suggested subject in search of a story— but your comments and suggestions can play a vital role in helping us shape editorial direction. Write INTER- FACE AGE, Editor’s Notebook, P.O. Box 1234, Cerritos, CA 90701. □ There’s something at Rainbow for every Apple II® owner. From software and hardware to accessories and services. We’re your one-stop center for everything you need for your Apple II® computer — for your business or your home. An innovative portable power system for your Apple II. ® You only — > batter * f>° need to supply a 12V auto battery for operation anywhere in the world. Now, you can run your Apple II® in a car, van or boat. Developed by Rain- bow, Powermaster is a complete power supply system that supplies all voltages with enough reserve capacity to drive all peripheral slots (including a floppy disk controller). Adding an AC/ DC TV gives you a complete stand-alone sys- tem that will run anywhere. Powermaster simply plugs into the Apple II " motherboard, providing uninterruptible power for the most critical applica- tions. Battery charging and recharging is easily accomplished with a standard trickle charger, auto alternator, or solar panel. Powermaster does not use the Apple power supply. . . $495.00 (12V auto battery, charger, AC I DC TV not included) \\e« W jl. This digitizer drawing board, complete with a powerful software ie on disk, lets you create any picture in %!■ i + i/*\r-i nr• There’s even a 1 ' variable speed control. Made in U.S.A. iiuTEnraLC d5E 16704 Marquardt, Cerritos, CA 90701 (213) 926-9544 TWX (910) 583-1412 PUBLISHERS PUBLISHER/EDITOR-IN-CHIEF ROBERT S. JONES EXECUTIVE PUBLISHER NANCY A. JONES ADMINISTRATION PUBLICATION DIRECTOR MIKE ANTICH PUBLICATION ASSISTANTS DORIS RIOPEL CHERYL JOHNSTON ACCOUNTING SUPERVISOR KAY SOTO ACCOUNTING ASSISTANTS MARY ANN LOWER SHIRLEY MAZENKO CIRCULATION CIRCULATION MANAGER ED UECKER CIRCULATION SECRETARY JEANNE ADDINGTON CIRCULATION ASSISTANT CHARLOTTE SEV'EDGE EDITORIAL EDITOR MICHAEL PANCHAK ASSISTANT EDITORS KATHY TEKAWA LES SPINDLE SENIOR EDITOR SOUTHEAST REGION BILL TURNER SYSTEMS EDITOR TOM FOX SOFTWARE EDITOR ALAN R. MILLER. PhD ASSOCIATE EDTIORS HENRY DAVIS, AL BAKER CONTRIBUTING EDITORS R. W. BEMER ROGER C. GARRETT Editorial Correspondence Direct all correspondence to the appropriate editor at: INTER- FACE AGE Magazine. P.O. Box 1234, Cerritos, CA 90701. PRODUCTION PRODUCTION MANAGER TERRI LEDESMA ART DIRECTOR FINO ORTIZ ARTIST SAMANTHA LEE TYPOGRAPHER MELODY A. MARTENS ADVERTISING NEW ENGLAND REGION DICK GREEN 7 Lincoln St.. Wakefield, MA 01880 (617) 245-9105 EASTERN REGION JOHN SENSENSTEIN 20 Community PI.. Ste. 140. Morristown, NJ 07960 (201)267-3032 SOUTHEAST REGION HARRY DILL 3938 Sussex Avenue, Charlotte. NC 28210 (704) 552-1004 MIDWEST REGION AL GRAVENHORST STEVE SKINNER 5901 N. Cicero Ave.. Chicago. IL 60646 (312) 545-8621 WESTERN REGION BRUCE BERKEY ZACH BOVINETTE P.O. Box 4566. Pasadena. CA 91 106 (213) 795-7002 JAPAN TOMOYUKI INATSUKI Trade Media Japan Inc., R. 212 Azabu Hts., 1-5-10. Roppongi, Minato-ku, Tokyo 106 Telephone: (03) 585-0581 Telex: J28208 INTERFACE AGE EUROPE DIRECTOR. EUROPEAN OPERATIONS H.L. GROHMANN Dahlienstr. 4, D-801 1 Munchen-Vaterstetten Wesl Germany Telephone: 08106/7396 INTERNATIONAL NEWSSTAND DISTRIBUTION LEW ULLIAN Orberstrasse 38, D-6000 Frankfurt/M. 61, West Germany Telephone: (0611) 44 77 90/41 84 80 INTERNATIONAL/DOMESTIC RETAIL CIRCULATION MARY ANN LOWER (213) 926-9544 MEMBER OF THE WESTERN PUBLICATIONS ASSOCIATION AMERICAN SOCIETY OF BUSINESS PRESS EDITORS 8 INTERFACE AGE CIRCLE INQUIRY NO. 63 JUNE 1980 The only computer with color, sound, user programmability and expandability at $599. is also expandable. Just add our "Building Block", an optional, four- port expansion device, and you can hook up a printer, telephone modem, and additional memory cartridge or mini-floppy disk drive. For the name of your nearest Imagination Machine dealer call, TOLL FREE: 1-800-223-1264. (New York residents call: (212) 758-7550) or write: APF Electronics, Inc. 444 Madison Avenue, N.Y., N.Y. 10022. $599. Manufacturer's suggested retail price. HlF^F-electronics inc. The Imagination Machine offers more at its price than any other personal computer on the market today. Consider these features: 9K RAM, with 14K BASIC in ROM,53-key typewriter keyboard. A fine resolu- tion picture, generated on your television set or monitor in 8 colors! A built-in, dual- track cassette tape deck with 1500 baud rate, for APF's digitally recorded, “saturated',' tape programs. A built-in sound synthesizer. And two, built-in, game style controllers, with joysticks and numeric keypads. When you want to go beyond APF's library of educational, home- and-personal management or entertainment programs . . . when you want to create your own pro- grams. . .you can. The Imagination Machine is programmable In BASIC and 6800 machine lan- guage. The Imagination Machine CIRCLE INQUIRY NO. 2 "YOUR LIFE WILL NEVER BE THE SAME' w See us at NCC Booth 85 DESKS AND STUFF Computer terminals, business systems, lab components . . . they all need desks and enclosures. That’s what we’re all about. Computer Furniture and Acces- sories offers a standard line of furniture suitable for a wide variety of applica- tions. Handsome, rugged, economical furniture in all shapes, sizes and colors. Basic models shipped from stock in days, not months. And we’re nice people to deal with. What more could you ask for? CF*A lc i i tro PEEVED BUYER I would be interested in reading an article in your magazine telling the businessman how to obtain a microcomputer. I’m not speaking of applications of various types of software; I’m speaking about just the simple acquisition of one. I have been trying to acquire a system for use in my business since last July. On five occasions, either I or my secretary have gone to Radio Shack or Apple stores by appointment to observe a demonstration. The sales people twice failed to be in the store. At no time were we ever given a demonstration. One Apple salesperson did show me a beautiful printed circuit board. I truly fail to understand why I am having such a difficult time spending a minimum of $5,000. It is obvious to me why IBM is the leader in its field; only IBM has bothered to phone me numerous times and tried to sell me a $22,000 system. When IBM produces a unit for less than $10,000 we will witness the immediate death of all other micro- computer manufacturers, especially Radio Shack and Apple. David Dominick Orange, CA CPU PROBLEMS CITED Regarding your January Inventor’s Sketchpad by Roger Garrett, multiprocess- ing seems to be the way of the future, but Mr. Garrett soft-pedals the real problems of multiprocessing: 1 . Complexity of operating system and monitor software are increased. In con- flict are desires for shared resources to be fully used, and that contention be avoided. The question becomes one of serialization of activity vs. courting either “deadly embrace” lockups. or a lack of integrity. 2. The “nearly double” power from two CPU-multiprocessing is substantially worse than that, and returns diminish for each CPU added. 3. Reliability decreases; simply, there are more interdependent parts to fail. Should one CPU fail holding locks for serializa- tion, the other processors face eventual lockout, unless some very delicate re- covery is performed. Additionally, physi- cal and electronic interdependencies may cause one CPU’s ills to become system ills, or for the whole machine to be taken for maintenance. Darrell Jones Eugene, OR ON NEW PROM APPLICATIONS Computer Furniture and Accessories, Inc. 1441 West 132nd Street Gardena, CA 90249 (213) 327-7710 The article, ‘Powered Down Bipolar PROMs’ in your April issue struck a reso- nant chord, so I did a little research and found a similar idea in National’s Memory Data Book- 1977. The Data Book should be consulted for additional information on this very useful concept. The information was for 74S287 PROMs, but I plan on in- corporating the idea using 74S472s (512 x 8 in a 20 pin package); they make excellent patches for the MCM66714 character generator. For those who hate discrete components, the SN75327 by Texas Instruments comes in a 1 6 pin DIP package, contains four in- dependent switches, each capable of sourc- ing up to 600 mA and provides switching times of 30 ns as well as a common strobe input. A dual PNP driver will fit on a 1 6 pin header plug, whereas the 75327 provides twice as many switches. Two may be used, if preceded with inverters, as direct replacements for the eight Power Switchers needed to program the 93448. Many thanks for the hardware article; it saves me almost 2 watts of power. Gerald R. Pomraning Wilder, ID CROMEMCO’S SUPERDAZZLER Thank you for Tom Fox’s informative and exciting article on Cromemco’s Super- dazzler. I have some uncertainties regarding memory access and allocation: 1 . Is it correct to say that the Superdazzler cannot operate without some form of direct memory access? 2. If the Superdazzler is hooked up with DMA, but without two-port RAMs, and if there is plenty of computer memory (e.g., more than 64K), is it correct to say that the main deficiency is the relative overload of the S-100 bus so that the program complexity is reduced and exe- cution time is increased? 3. If the Superdazzler is hooked up with DMA and with 48K of 2-port RAM memory, does it still require 48K of RAM picture memory in the computer (in addition to at least 12K of program memory), or does the computer memory now require only program memory (e.g. 12K or more)? 4. Why does the DMA board have to be connected with computer memory at all? I assume this connection is needed for program operation. But, could the pro- gram memory in the computer be con- nected to the SDI via its video board? Then, the DMA could be connected to its own picture memory RAM without interference with S-100 bus or computer memory. I assume, however, that the “picture memory” RAM might require input from an I/O port. Could this be done via a 2-port picture memory RAM, ^gain leaving the computer memory free for programming? I suppose my distinction between picture memory and program memory is somewhat artificial, but it would be instructive for me to know where it breaks down. 5. What is Cromemco’s memory mapping scheme allowing several banks of 64K memory to be contained in the compu- ter? Is this related to Cromemco’s 64K 10 INTERFACE AGE CIRCLE INQUIRY NO. 11 JUNE 1980 “NTRODUCING IK HOTTEST DM Off THE DRAWMG BOARDS: A COMPUTER TRIO THAI TAKES YOU FROM SMALL TO KT^*.*** If you’re considering your first computing system, you need to know more than what it will do for you today. You need to know what it will do tomorrow. Many businesses outgrow their first computer within a year or two. And when they do, they find their system is difficult if not impossible to add onto-because adding on requires a different manufacturer’s equipment, different operating system, different programming languages. At ADDS, we’ve just solved this problem with Multivision, a compact trio of stacking computers with ADDS’ CP/M® -compati- ble, multi-user operating system. You can begin with one and expand as needed. MULTIVISION 1 (top module) is a get-started computer with 5 MHz processor, 64K bytes of RAM (Random Access Memory) and floppy-disk storage capacity of 700K bytes. It’s available with a wide range of business application software. We even offer our own word processing package. A fully loaded Multivision 1 is list-priced at $3,785 without terminal. MULTIVISION 2 (top and bottom modules) uses the new Winchester technology to provide 5M or 10M additional bytes of hard-disk storage. List-priced at $7,995 for 5M bytes of disk, it is thousands less than other hard-disk systems. MULTIVISION 3 (entire stack) turns your computer into a multi-user system with up to 256K bytes of RAM that supports up to four display terminals. It allows four different parts of your business-i.e., accounting, marketing, purchasing, and shipping— to share data and simultaneously use the system. No other microsystem offers so much for so little. Before you decide upon any small computer, look into ADDS Multivision. For years we’ve been the largest supplier of display terminals to computer giants. Now we’re making a system for you. For information, write: Systems Division, Applied Digital Data Systems Inc., 100 Marcus Boulevard, Hauppauge, N.Y. 11787 Dealer inquiries invited. CP/M is a registered trademark of Digital Research, Inc. Applied Qgtal Data Systems Inc SOMETHING EXTRA ll\l EVERYTHING WE DO JUNE 1980 CIRCLE INQUIRY NO. 5 INTERFACE AGE 1 1 Save! BANTAM 550 From PERKIN ELMER List $996 OUR PRICE $799 Add $20 for anti-glare CRT Small in size, light in weight, and low in price — but on top of the list in features and perfor- mance. • Upper and lower case • Full 24 x 80 format • Sharp 7 x 10 dot matrix OTHER VIDEO TERMINALS TELEVIDEO TVI-912 $789 INTERTUBE II, List $995 ONLY $799 SOROC 120, List $995 SPECIAL $729 PRINTERS ANADEX 80-col. dot matrix, . SPECIAL $749 PAPER TIGER IDS 440, List $995 $895 w/graphics op., incl. buffer, $1194 .... $989 CENTRONICS 730-1 parallel interface, $995 NEW LOW $779 779-1, Friction Feed, List $1245 949 779-2 w/Tractor, List $1350 1049 702/2 w/Tractor, VFU, List $2480 1995 703- 2 w/Tractor, VFU, List $2975 2395 704- 2 w/Tractor, List $2350 1995 COMPRINT 912 w/parallel interf $559 912 w /serial interface. List $699 589 T.l. 810 Basic Unit, List $1895 1695 810 w/full u/lc ASCII, Vertical Forms Control, Compressed Print .... $1895 T.l. 825, List $1695 $1395 OKIDATA MICROLINE 80, List $949 .... $799 Tractor Feed Option 109 CONVERT YOUR SELECTRIC TO A COMPUTER PRINTER! Power supply & electronics, A&T. You make only a simple solenoid installation (or have the factory do it). Manufactured by ESCON. S-1 00 Interface Version, List $496 . $445 Universal Types: Parallel — (Centronics format, for TRS-80, Sorcerer, Apple, etc.) , List $575 . . $514 RS232 Standard Serial, List $599 . . 534 IEEE-488 (for PET), List $660 .... 584 TRS-80 Cable 25 Shipping not included with above prices. All prices subject to change and all offers sub- ject to withdrawal without notice. write for free catalog MiniMicroMart 1618 James St., Syracuse NY 1320.' (31 5) 422-4467 TWX 710-541-0431 CIRCLE INQUIRY NO. 81 LETTERS RAM card with extended bank select (Model 64 KZ)? If so, what is bank selection? I would appreciate any advice or refer- ences you can give me. John Silver New York, NY /. Although Cromemco’s SDI circuits util- ize the DMA technique in their internal operation , there is no particular neces- sity that the host computer have any special talent for this sort of thing. 2. You are correct — the only disadvan- tage is that of speed. A major advantage of not purchasing the two-port memory is that you will save a lot of money. 3. No — the two-port memory is the pic- ture memory and, if filled, frees the normal computer memory for program and/or data retention. 4. Here, I believe, is the crux of your mis- understanding. The picture (as retained in the picture memory) is placed there by a program running in the CPU. Pro- gram memory is, of course, needed for any such program to run. The picture memory sets its picture via the S- 1 00 bus, and transmits it to the monitor via the SDI two -card set. 5. The memory mapping scheme is a pop- ular method for fitting more than 64K of memory to a CPU which would other- wise be limited by its 16-bit addressing bus to that amount only. Each memory card fitted with the bank select feature can be turned on and off by signals from the CPU. Since more than one memory card can be addressed at the same location within the 64K address space, the CPU is careful to only turn one of them on at any given instant. IPs a handy (but, again, expensive) way to keep a picture on ice and yet instantly available for display on the monitor. Memory mapping/bank select has wide usage in multi-terminal microcomputer systems. Tom Fox DP: QUESTIONS & ANSWERS I am writing for information on micro- computer controls such as those featured in the microwave oven, electronic toys, digital controlled television sets, and other appli- ances. I have several inventions and would like to incorporate the digitial control tech- nique into them. I have no knowledge of electronics, but some knowledge of programming and sys- tem operations. I can’t find a school or insti- tution that teaches digital controls using the microcomputer. I would appreciate any in- formation on the teaching or building of single chip microcomputers used specific- ally for digital controls. Don D. Wilson 9055 S. Luella Chicago, IL 6061 7 Do you know of any software and/or hardware designed for academic and/or admissions offices of independent schools? Louis A. Young III P.O. Box 657 Pebble Beach, CA 93953 I would like to know how to go about add- ing modules to expand my Exxon Qyk Level 3 word processor to a full computer. Which products would be compatible with it? Do you know of any articles on expand- ing word processors into full computers? C. A. Bodor 2699 Youngslown Rd. Warren, OH 44484 I own an Apple II computer and I am looking for programs on I Ching, astrology, numerology, and biorhythms. I also need information on computer portraiture meth- ods, hardware and software. Thomas A. Waye 2525 NW 105 Lane Sunrise, FL 33322 We have published full addresses to these letters so that our readers may offer assistance. For books on these subjects write Data Dynamics Technology, P. O. Box 1217, Cerritos, CA 90701, for their catalog. WHERE CREDIT IS DUE All the photos in the article Micro Mix- down — There’s a 65K Helper in the Record- ing Studio (INTERFACE AGE, January 1 980) are of the AUTOMATT in San Fran- cisco, which was not stated in the article. Photo 1 is Studio C, where a Harrison 40-in/32-out console is interfaced with an Allison 65K Programmer. The Allison is in turn interfaced with a Zilog Z-80 microcom- puter, which is used to display the status of the various (Harrison) console functions and/or the corresponding data for those functions on the multi-track recording tape. In addition, data and text (artist’s names, channel assignments, etc.) related to a par- ticular song or “cut” may be displayed in- stantly on the console. Studio A and B also feature automation, and Chief Engineer Michael Lamer is the man who put it all together. Steve L. Martin Santa Cruz, CA DEFINING ‘INTELLIGENCE’ In Roger Garrett’s April article, “A Discussion of Artificial Intelligence — A Definitive Answer to the Question: Can Computers Think?”, his approach is in- teresting. The scope is the whole of human knowledge and experience. I would like to offer the following observations to extend Mr. Garrett’s definition. Consider a system with internal and exter- nal compartments and a transducer at the in- terface of the two regions. Output from the JUNE 1980 "Our inventory is our existence* Think we’d trust it to anything less than Scotch Brand Diskettes?” Don Stone, President, Mass. Auto Supply Company, Inc., Boston, Mass. Scotch Diskettes are the diskettes you can depend upon with the information your business depends upon. Each one is tested and certified error-free before it leaves our factory. Because we know nothing less than perfection is acceptable for your vital business data. Scotch Diskettes are available in regular or mini sizes, compatible with almost any system. To find out where you can purchase Scotch Diskettes, call toll free: 800-328-1300. (In Minnesota, call collect: 612- 736-9625.) Ask for the Data Recording Products Division. In Canada, write 3M Canada Inc. , London, Ontario, N6A 4T1. If it’s worth remembering, it’s worth Scotch Data Recording Products. JUNE 1980 CIRCLE INQUIRY NO. 42 INTERFACE ACE 13 “After working all day with the computer at work, it's a kick to get down to Basic at home. And one thing that makes it more fun is my Shugart minifloppy™- We use Shugart drives at work, so when I bought my own system I made sure it had a minifloppy drive. “Why? Shugart invented the minifloppy. The guys who designed our system at work tell me that Shugart is the leader in floppy design and has more drives in use than any other manufacturer. If Shugart drives are reliable enough for hard-working business computers, they've got to be a good value for my home system. “When I'm working on my programs late at night, I can't wait for cassette storage. My minifloppy gives me fast random access and data transfer. The little minidiskettes™ store plenty of data and file easily too. “I made the right decision when I bought a system with the minifloppy. When you lay out your own hard-earned cash, you want reliability and performance. Do what I did. Get a system with the minifloppy." If it isn't Shugart, it isn't minifloppy. wT Shugart 435 Oakmead Parkway, Sunnyvale, California 94086 See opposite page for list of manufacturers featuring Shugarf s minifloppy in their systems. TM minifloppy is a registered trademark of Shugart Associates LETTERS transducer is received by a network com- posed of various levels of functional units that receive input from the transducer or other levels in the network with a final out- put pattern resulting. In a simple represen- tation, this could be a photocell to turn on the porch lights at dusk, or a human finger’s temperature receptor responding to hot water and a verbal expression of “ouch.” If we consider the ultimate in information about an external event to be the informa- tion obtainable from the quanta of energy given off, we immediately are confronted with the limitations of information gathering. Entropy, Heisenberg’s uncertainty principle, the physical nature of the transducer, and various other factors place a limit on how much is directly knowable about any event. Thus, the transducer can be considered to carry out a kind of mapping function. A one- to-one mapping function associates every element in one group with a single element in a second group. In the case of a transducer, we would need an efficiency conversion of 100%. There is a loss of information, so the transducer is of a many-to-one class in its ac- tion as a mapping function. That is, some of the information input in the form of energy quanta are indistinguishable and would be mapped onto the same output signal. The levels of the human nervous system can also be considered to carry out mapping functions. They, too, are of a many-to-one type. Thus, there is a loss of information regarding an external event before we begin processing at the level of human thought. I would like to simply state that human language is not always a one-to-one map- ping, either in its ‘internal’ use or when used to communicate information to others. Thus, the idea of restricting a hypothetical thinking machine to human language pro- cessing seems a severe handicap for the ma- chine. Trying to define a new, more precise language or to develop a programming lan- guage to solve this problem is approaching the problem in reverse. An intelligent ma- chine should get information from the source. My use of the concept of mapping is simi- lar to Mr. Garrett’s definition of thinking. Equating thinking to mappings of informa- tion to another pattern allows some things to be defined as thinking which are not usually considered as such. There is a wide separa- tion, quantitatively if not qualitatively, be- tween simple machines and humans. There is another qualitative aspect to the definition of thinking which creates a new category, that is the ability to generate and implement a new mapping function (in whatever form — ‘hardware’ or ‘software’). I commend Mr. Garrett on his informative and stimulating article, and on his positive approach to the subject. Darwin Kenepp, M.D. Penn-Wynne, PA Your observation of the tendency to equate language processing with intelli- gence is well founded. Early attempts in- volved simple syntactic analysis , the deriva- JUNE 1980 tion of denotation from text. Semantic analysis , the derivation of connotation , was also required in order to determine mean- ing rather than simple structure. When this failed, other methods were employed. One method describes “ scripts , ” or simple en- vironments, within which the analysis takes place. This restricts the computer's world view, so that it knows what to expect from the text. The problem with all of these methods is that they are approaching the concept of intelligence from too high a level. Simu- lating the expressions of intelligence is not the same as simulating intelligence itself. It is the phenomenon of intelligence, or think- ing, which I was attempting to define in my article and which you have described utiliz- ing a slightly different approach. You have identified perhaps the greatest obstacle in the acceptance of this approach when you observe that this view “allows some things to be defined as thinking which are not usually considered as such. ” The obstacle stems from the distaste most people have for a mechanistic/determinis- tic view of the world and the presumed “special place ” that man has in some ethereal “scheme of things. ” The assumptions used here are (1) human beings are special, and (2) the abil- ity to think, to emote, to create original ideas is that which makes us special. The conclusion is: non-human entities cannot possibly think, because it would contradict the assumptions. In approaching the issue from a scientific perspective, however, we can logically make no such assumptions. We attempt to define consistencies, to observe what ex- ists, to measure and count, and to draw logical conclusions regardless of precon- ceived notions. Our conclusions are often expressed as models of reality, hopefully a model which comes close to that reality. Your mapping model and my own data/attribute/relation- ship model are two approaches. Perhaps one of these is close to reality; we cannot tell how close. The results may very well allow some things to be defined as thinking which are not normally considered to be thinking. But, when we are truly aiming to reveal the truth, not merely attempting to substantiate preconceived notions, we are willing to accept the consequences of that understanding. I see your model as a description of mine at a much higher level of conceptualization. Language processing models (an extremely high level of thinking) have not worked very well. My model, purposely defined to be the lowest possible level of conceptualization, may prove to be difficult to implement with current technology. Your model is somewhere in between these extremes, and may prove to be more easily implemented to include expressions of intelligence such as emotion, creativity, self-consciousness and the desire to search for truth. Altos Computer Systems 2360 Bering Drive San Jose. CA 95131 Apple Computer 10260 Bandley Drive Cupertino. CA 95014 Commodore Business Machines, Inc. 3330 Scott Boulevard Santa Clara. CA 95051 Digital Microsystems Inc. 4448 Piedmont Avenue Oakland, CA 94611 Industrial Micro Systems 628 N. Eckhoff Orange, CA 92668 Micromation Inc. 1620 Montgomery Street San Francisco, CA 941 1 1 Morrow Designs Inc. Thinker Toys 5221 Central Avenue Richmond, CA 94804 North Star Computers Inc. 1440 Fourth Street Berkeley, CA 94710 Polymorphic Systems 460 Ward Drive Santa Barbara, CA 93111 Tano Corporation 4301 Poche Court West New Orleans, LA 70129 Technico Inc. 9051 Red Branch Road Columbia, MD 21045 Texas Electronic Instruments 5075 S. Loop East Houston, TX 77033 Vista Computer Company 1401 E. Borchard Santa Ana, CA 92705 Roger Garrett o^Shugart VECECR mz The presidents of the companies making these computers recommend Structured Systems Business Software for one very simple reason: Structured Systems 5204 Claremont Oakland, California 94618 (415) 547-1567 CIRCLE INQUIRY NO. 60 *SSG business software runs on these and many other microcomputer systems. See your computer dealer for compatible hardware, or send for our brochure, Choosing A Computer For Your Business: SSG Software and Compatible Hardware. Structured Systems Business Software works for business. It works as delivered, without customization or reprogramming. It works without extensive retraining, or any new data processing personnel. And it works hard. Our business software turns a computer into an efficient, hardworking employee, to help your business work better. We’ve got working solutions for your General Ledger, Payroll, Accounts Receivable, Accounts Payable, Inventory, letter writing and correspon- dence, mailing lists, data storage and report writing. Ready to run on any CP/M microcomputer system? Ready to go to work for your business right now. We help business work better, faster, and smarter. Our Product Line Includes: General Ledger Accounts Payable Inventory Control Letteright Accounts Receivable Payroll Analyst Data Storage/Report Writing NAD Mailing System QSORT Sort/ Merge System CP/M is a registered trademark of Digital Research. By Lyle Ronalds SSI Far East Ltd. Suite 201, Austin Centre, 21, Austin Avenue, Kowloon This month's column will be taken from the February 1980 issue of “ Readout f ” a newsletter published by Lyle Ronalds in Hong Kong. The views and opinions stated in this column are those of the author and not necessarily those of the magazine and its staff. BUSINESS MORALITY IN HONG KONG Here’s a story to touch your hearts; a giant U.S. electronic com- pany undertakes to ship a sizeable consignment of components to a small Hong Kong end product manufacturer. The U.S. company accepts the order, and the letter of credit is opened. Then, for reasons best known to himself, but shall we say because of a better price from a local U.S. customer, the U.S. component manufacturer decides not to deliver the goods, or to deliver only part to Hong Kong, or to deliver late. The U.S. component manufacturer thinks no more about it and goes to lunch. In Hong Kong, the owner of the small factory does not go out to lunch, in fact, he has not had time to go out for lunch for some months. He has accepted an order from his own customer, and con- tracted to deliver at a set time at a set price. He has ordered all the other components necessary, and he has staffed up to meet produc- tion schedules. Then, he hears that his one major component con- signment is not going to arrive, because his U.S. supplier has sold it to someone else. He has to renege on his promise to his customer, and loses a great deal of money and reputation in doing so. He has to resell at a loss all the other components he bought; and he prob- ably also has to let a few people go who will have to find new jobs. End of parable. Sound familiar? Now, we’ll stick our editorial neck out: The standard of business morality is higher in Hong Kong than it is in the U.S. While American public companies make a great show of being socially and morally responsible for their obligations to their employees, customers, communities, and suppliers, it seems to us, dealing with both Hong Kong and U.S. businessmen, that the Hong Kong executives are the ones who are practicing what the Americans are only preaching. A Hong Kong businessman’s word is his contract; lawyers get fat on digging for loopholes so that Americans can break theirs. A Chinese company will pay upon delivery of the goods, while in the States you’re lucky if you get your money in sixty days. The East, indeed, has a thing or two to teach the West about moral business conduct.D The Working Analyst* If you would like to put a computer to work collecting, organizing, and summarizing the information you need to make better decisions, take a look at Analyst. Analyst is a software package designed to let you store and analyze virtually any information involving numbers, dollars, dates, and descriptions. Simply tell Analyst what kind of informa- tion you want to store. Analyst creates a com- puterized file for that information. And Analyst creates an information entry program for your file that asks you for each entry, and checks your data for errors. (You can create any number of different files.) Then tell Analyst what reports you want from your data file. There are all sorts of record selection and report formatting options, so you can design an unlimited variety of reports to focus on different aspects of the same data file. Analyst is so flexible, you’ll find a million ways to use it. It is easy to use, so you don’t need to be a programmer to make your computer really work for you. If this bit of information intrigues you, find out the rest. You’ll like what you see. Structured Systems Croup INC«.HU*ORAUI> Analyst is a part of a full line of working software solutions from Structured Systems Group, all ready to run on any CP/M* microcomputer system. For more information, see your computer retailer, or call us. *CP/M is a trademark of Digital Research. Structured Systems 5204 Claremont Oakland, Ca. 94618 (415)547-1567 JUNE 1980 CIRCLE INQUIRY NO. 61 This Weekend: STIK IT.... ••to your That's right! Esmark’s VIDIET-STIK light pen has the TRS-80 CONNECTION for LEVEL I & II. Your 4K to 48K TRS-80 System will come alive under your VIDIET-STIK within minutes of its arrival. That’s because there are no wires to solder or traces to cut. You’re up and running as fast as you can plug the interface into your system's cassette EAR-jack, CLOAD our custom LIGHT- WAVE demonstration software and RUN. And because the interface has a plug for your re- corder. you won't have to unplug it again when loading your other software tapes. The inter- face allows them to pass right thru whenever you’re not using the pen. It’s exclusive ‘switched tip" design means the pen’s electrically iso- lated from your system when it’s not in use. Just point & press! It's that simple.. Plug. CLOAD and RUN. And have we got the software for you to RUN with! Our demonstration tape includes a calibration program (used to adjust the CRT’s brightness and contrast) plus STIK- TAC-TOE. AWARI and TOWERS. Two challeng- ing games and a puzzle that will keep grown- ups and children Stik'ing it to your TRS-80 for hours. And there are instructions provided so you can begin writing your own light pen pro- grams (lightware) for fun or profit (Level II). Or, just sit back and enjoy our LIGHT WAVE tapes each month. Esmark's unmatched commit- ment to lightware can bring you up to five new games, puzzles, drills & educational quizzes or simulations each month. Our current LIGHT- WAVE releases are: LIGHT-PAK 2- LIGHTPEG (4 peg-jump puzzles) ENDRUN (Othello with a twist ) (LEVEL II) LIFE9 (Conway’s LIFE with mutations) Price. $19.95 (including postage & handling) LIGHT-PAK 3- LITEGAMMON (Backgammon you’ll Stik with) (LEVEL II) STIKWUMPUS (Caves with a little ‘life’) MAZEMASTER (Maze after maze to poke thru) Price: $l9.95(including postage & handling) T R S i 8 O Order yours now and we ll include a free copy of FLASHBACK, Esmark's newsletter dedicat- ed to the latest news in lightware applications. And don’t forget to tell your friends. The VIDIET-STIK can also be ordered for use on most other micro systems using the following processor chips: 8080 Z80 6800 6502 All that’s required is a standard cassette jack leading to Ground and a readable single bit in- put port. Driver software is provided along with instructions for writing lightware applica- tions. And tell your local Dealer that Esmark’s got a Dealer package he won’t want to miss out on. Delivery is 3 to 6 weeks from receipt of your order. C.O.D.'s are $3.00 extra but will be shipped within 2 weeks. All prices are F.O.B. Mishawaka, Indiana. Indiana residents add 4% sales tax. ALSO COMING FROM ESMARK: •TRS-80 Printer Interface (Cassette AUX-jack interface for all RS232 prints. Includes LLIST & LPRINT software) • TRS-80 RS232 Communications Interface (Makes your TRS-80 a full I/O terminal to time- sharing systems the world over. Gives you intelligent or dumb terminal capabilities at 1 10 or 300 BAUD. Also includes Printer Inter- face above with 20 mA current loop & TTL level I/O options.) — TRS-80 is a trademark of Tandy Corporation— m 2 > X £6 »* •j V) n ESMARK INCORPORATED 507V 2 E McKINLEY HWY. MISHAWAKA, IN 46544 (219) 255-3035 jjjgg 95 •ELECTRONIC SYSTEMS MARKETING PLUS $1.50 POSTAGE & HANDLING UPDATE TACTILE TELEPHONE POSSIBLE Advances in robotics, coupled with recent technologies in developing artificial limbs, may lead to a new communication device, according to industry analysts. A phone equipped with a hand capable of transmit- ting human gestures, such as pointing, feel- ing and waving, is reportedly within the tele- phone state-of-the-art. Dubbed Feel-a-Phone, the system could revolutionize conventional telecommunica- tions by inserting expressive hand gestures into daily telephone conversations. Words alone lack the human emotion of a face- to-face meeting. Gestures transmit feel- ings and undertones that are not conveyed by voice, but could be transmitted through a Feel-a-Phone. An irate bill collector, for example, could convey his anger by violently shaking his forefinger at a late paying customer. A business deal conducted over the telephone could be topped off with a hearty handshake instead of “it’s great do- ing business with you.” Recent developments in sensor and trans- ducer technology, allowing for the produc- tion of durable, precise robot “hands,” has reportedly caused many manufacturers of industrial robots to have backlogs stretching well into 1981. Manufacturing plants are turning to robots to perform a number of tasks including machining, welding, paint- ing, and other dirty or undesirable jobs once performed by humans. Some of the work corresponds to devel- opments by the manufacturers of artificial limbs, who produce hands that look and act like the real thing. Research in the nuclear industry, where manipulator hands for weapons and power plants are widespread, relate to Feel-a-Phone where an operator holds material and operates machines by remote control, using robot manipulators guided by the operator’s finger movement on control rings. These techniques could be adapted in the design of a Feel-a-Phone, but would now be expensive. A Feel-a-Phone equipped with multiplexers to allow for transmission of about 60 different channels of position, would probably cost around $5,000. An ad- ditional voice channel would most likely be required, bringing the cost up to $10,000. JOB FAIRS PROMOTE DP EMPLOYMENT Newspaper headlines may trumpet the dangers of recession, but human resource directors of many national corporations don’t believe a word of it. Personnel specialists for advanced technology com- panies almost unanimously repeat what to- day is a truism in employment recruitment: that engineers and technicians with the pro- per credentials are riding the crest of a “buyer’s market.” So it is not surprising that an enterprising Minneapolis-based company, Business People Inc., has successfully put together a unique job mart, appropriately called Career Job Fair. The promoters believe it is the first time a non-employment agency has put so many companies, engineers and other technical personnel together under one roof for match-making purposes. For companies, it is an opportunity to conveniently and inex- pensively meet hundreds of qualified ap- plicants; job shoppers in turn can select from a wide range of choices, and then quickly — and often anonymously — visit the desired companies. The Career Job Fair was initiated in Min- neapolis three years ago and more recently has been expanded into San Jose, California and Boston. Human resource directors are attracted to this type of recruiting program for a variety of reasons. Job Fair is a new and interesting approach to more traditional head hunting, according to Mike Dooley, personnel manager, Cardiac Pacemakers, Minneapolis. “It’s the optimum way for applicants to look over a large number of companies in one day, and for companies to quickly meet a variety of prospects.” Charles Patterson, professional recruiter, Emerson Electric, St. Louis, uses the Job Fair both because the company has “many employment needs, and it’s a public rela- tions opportunity to dispell a misconception about Emerson. We are no longer in tele- vision and radio production, and use the Fair to acquaint the engineering market with our high technology and engineering work.” The concept may be unique but the novelty will wear out quickly without ap- propriate recruiting results. Last spring Con- trol Data talked to approximately 200 at the company booth at the Minneapolis show and employed 1 3, including 1 1 exempt hires, according to Jim Lewis, Consultant for Corporate Staffing. “We didn’t expect this number of hires and we’re extremely pleased with the results.” At the same show Honeywell made six major hires. At the Boston show Emerson recruited 12 and hired six and at Los Angeles employed seven. Signetics Corporation, Sunnyvale, did not reveal recruitment totals at the California show, but Dan Barryman, profes- sional recruiter, considered his results to be “cost effective.” COBOL WINS GSA OK Even though COBOL has been a stan- dard industry language for some 20 years and is one of the languages of choice for government applications, it has only recent- ly won official certification by the General Services Administration. Developed by Micro Focus Ltd., London, England, and marketed in the United States by Micro Focus Inc., Santa Clara, California, CIS COBOL is a portable software system for compiling, debugging and executing COBOL programs. 18 INTERFACE AGE CIRCLE INQUIRY NO. 28 JUNE 1980 THE ULTIMATE INFORMATION MANAGEMENT SYSTEM The brain is the perfect information management system. Like the brain, we at Micro-Ap specialize in the management of data. Our software is the state of the art and is designed to efficiently store and instantly report the information you need for your business and personal needs. From inventory control to mailing list manage- ment, Micro-Ap provides the most cost effective software available. At the heart of our systems are Micro-Ap's unique indexing and reporting methods. You are not limited to single key retrieval. Information can be referenced by zip code, date, name, or any other indices required. Operation is “menu driven" and uses screen displays with all the instructions and $rror sensing that allow the novice to quickly learn the system and accomplish a multitude of tasks. Micro-Ap's Newest Industry Innovation is the SELECTOR IV ,m System, with the ability to make data file conversions, arithmetic computations, global search and replace, and full page report formatting. This floppy and fyard disc oriented system is upward compatible with SELECTOR III-C2 lm It adds several dimensions to the world of infor- mation management. Experience - SELECTOR” 11 has been around, and improving, longer than any other data base system in microcomputers. See the innovative SELECTOR IV ,m data base manager and the standard setting GLector, general ledger system at YOUR LOCAL COMPUTER STORE or contact: Micro-Ap Lifeboat Associates 9807 Davona Dr. 2248 Broadway San Ramon, Ca. 94583 NY, NY 10024 (415) 828-6697 (212) 580-0082 telex 220501 MIGRO*AP 9 The Standard In Information Management Systems CIRCLE INQUIRY NO. 45 uruA i c Although it has only been available for a short time, it has become an industry stan- dard for microcomputer COBOL operations with OEMs and end users. A major feature of the package is that it can be used with the RAM available in microcomputers (usually up to 64K bytes). Since most COBOL applications require user participation as well as compactness, CIS COBOL is also interactive. This feature shortens program development time by allowing the user to debug programs in in- crements on a CRT screen. In real time applications, the interactive feature’s run time option module displays a full screen of data on a CRT screen with a single COBOL language command. Some 100,000 lines of COBOL test source code was successfully processed to achieve GSA certification at this level. These tests were devised and administered for the GSA by the Federal Compiler Testing Center, which administers them on request. CIS COBOL is supplied to users with a compiler, Run Time System and interface module. The compiler and Run Time Sys- tem are portable to new environments. The Run Time System is usually written in the assembler language of the target micro- computer which can be an Intel 8080, or 8085, a Zilog Z80 or a DEC LSI-1 1 . The CIS COBOL interface modules are specific to operating systems. These sys- NAME (Print) ADDRESS CITY Please send me: Binders @ $7.50 each Slip Cases @ $5.95 each Shipping & Handling Charges $1 .50 ea. U.S.; $2.00 ea. Foreign □ Check or Money Order (U.S. Funds drawn on U.S. □ Visa#. □ M/C# Exp. Date Signature terns include CP/M for the Z80, the RT-1 1 for the LSI-1 1 and the ISIS-II for Intel’s In- tellec development systems. The interface module is the only CIS COBOL feature that is not completely interchangeable. MINICOMPUTER REVENUES TO REACH $13 BILLION BY 1983 Throughout the 70s, the minicomputer market experienced dynamic growth rates in terms of both revenues and unit shipments. International Data Corp., Waltham, Mass., has closely watched this market over the last seven years. Its latest report concludes: Unit growth to decline steadily over the next few years, with demand from OEM customers, in particular, dropping significantly. Despite shrinking shipments, revenues will continue to show healthy, although slower, growth — increasing 29% per annum through 1983. At that point, the minicomputer market will be worth some $13 billion (with expectations for unit shipments reaching 235,000 units). Some manufacturers (DEC for example) have taken steps to prepare for the expected downturn by cutting back on production and the building of new plant facilities. The strong revenue projections forecasted are due primarily to an expected increase in em- phasis on service, software and add-on peripherals. In many cases, minicomputer manufacturers are enhancing their peripheral equipment operations to the point where many are actively marketing these products on an independent basis. One major finding of IDC’s research was significant increases in overseas revenues by a number of U.S. suppliers. Reasons in- clude a generally higher average value per system for overseas shipments, and also in- ternational users taking advantage of the declining dollar in relation to their own cur- rencies. By 1 983, 39% of all revenues for U.S. manufacturers will be derived from overseas business with international shipments reaching 32% of the total. SOUTHERN SYSTEMS NAMES U.K., FRANCE REP The London-based firm of Peripherals, Computers, Memories & Leasing is representing Southern Systems Inc., Fort Lauderdale, Fla., in the U.K. and France in marketing SSI’s printer systems. PCML will handle the firm’s full line of medium and high speed impact printer sys- tems, with special emphasis on SSI’s most recently introduced systems, the B-300, the B-600 and the M-200. PCML also will market SSI’s 2200 family of printer systems, based on 300, 600 and 900 line-per-minute drum printers; the 2550, a 1500 line-per-minute Charaband printer; and the CT 1 200 family, 600, 1 000 and 1200 line-per-minute ChainTrain printer systems. GATHERING SEEKS INPUT Midcon/80, the Southwest’s major high- technology convention and exhibition scheduled November 4-6 in Dallas, has issued a Call for Sessions. Manuscript sub- mission deadline is July 25. Each Midcon session will include three to five related papers covering, but not limited to, automotive electronics, communica- tions, computers and microprocessors, con- sumer electronics, design automation, digital signal processing, electromagnetic compatibility, energy, instrumentation and measurement, manufacturing and testing, memories, office automation, petroleum electronics, reliability and quality control and semiconductor technology. Contact Dale Literland, Educational Acti- vities Manager, Midcon, 999 N. Sepulveda Blvd., El Segundo, CA 90245. MORE IN EDUCATIONAL COURSEWARE With an eye on the increasing use of per- sonal computers in the home as an educa- tional tool, Science Research Assoc, and Atari, both of Sunnyvale, CA, have com- bined their expertise in developing a multi- faceted educational computer courseware package for use in the classroom and at home. Science Research will develop software in such program areas as reading, languages, math, science and social studies, and Atari will market them in public and private schools from preschool through to the university level. ' LET US SLIP ONE OVER ON YOU. . INTERFACE AGE Binders and Slip Cases protect a full year — 1 2 issues — from dust; damage; and keep your magazines in one place, at your fingertips, whenever you need them. Each Binder and Slip Case is constructed of a handsome blue vinyl with INTERFACE AGE stamped in gold foil on the front cover and spine. DATA DYNAMICS TECHNOLOGY P.O. Box 1234, Cerritos, CA 90701 _ STATE_ TOTAL ORDER $_ •TAX $_ SHIPPING & HANDLING $_ TOTAL ENCLOSED $_ bank) Enclosed □ Am/Ex # •California residents add 6% sales tax. Availability and prices quoted subject to change without notice. Please allow 6 weeks for delivery You may photocopy this page to keep your INTERFACE ACE intact. Orders cannot be shipped unless accom- panied by payment, including shipping & handling and tax where applicable. DATA DYNAMICS TECHNOLOGY. A Division of INTERFACE AGE Magazine (213) 926-9544 20 INTERFACE AGE JUNE 1980 THANKS FOR THE MEMORIES Thanks to these inexpensive Pet and TRS-80 memories and disk drives you can instantly increase your personal computer’s capacity, capability and versatility. Expend your Pet. Disk Drives: Choose either double density 400k or dual head double density 800k on-line disk drive. Both with DOS operating system including 17 additional BASIC commands and random or indexed sequential access. Exceptionally fast 5,000 bytes per second (including verify) transfer speed lets you load 20k program in just 3 seconds. Model 8k must have Expandamem™ to operate disk drives. All other models are plug compatible. 400k only $1295. 800k only $1695. Expandamem™: Lets you expand the size and scope of your programs. 16k 24k, and 32k internal memory boards give you 8k of assembly language subroutines accessed via the USR command. 16k only $425. 24k only $525. 32k only $615. Software: Complete library available. Write for details. Expand your TRS-80. Disk Drive: Single density dual head 400k on-line disk drive is completely compatible with TRS-80 DOS and uses own controller. Only $1295. I IMMEDIATE DELIVERY! ORDER TODAY! COMPU ‘INK 965 W Maude, Sunnyvale. CA 94086 (408) 245-4033 Please send me the following: □ Pet Disk Drive □ 400k □ 800k □ Pet Expandamem™ □ 16k □ 24k □ 32k □ Pet Software (Info only) □ TRS-80 400k Disk Drive □ Name of my nearest Computhink dealer Total enclosed: $ Check or Money Order only. Calif. Res. add 6% tax. Freight pre paid in continental U S. Dealer Inquiries Invited. CIRCLE INQUIRY NO. 14 ■ /ii rm in an LflLCI ULJ^n SMALL COMPUTERS AND THE PROFESSIONAL The Computers and Communications Committee of the Engineering Society of Detroit (ESD) will conduct a seminar on June 4 entitled “Small Computers and the Professional.” The program is designed to meet the information needs of business pro- fessionals who are considering a purchase or expansion of a small computer system. For more information contact Carol Lynn, 100 Farnsworth, Detroit, Ml 48202, (313) 832-5400. COMPUTER CAMP In Moodus, Connecticut, June 29-July 4, youngsters can sign up for a week long camp where the main activity will be com- puters. Kids from ages 10-17 will enjoy small group instruction and mini and microcom- puters for ample “hands-on” experience. The camp is for kids of all levels of ex- perience including no experience what- soever. For more information contact Michael Zabinski, Computer Camp, Grand View Lodge, Box 22, Moodus, CT 06469, (203) 795-9069. SOFTWARE PLANNING SEMINAR Polytechnic Institute of New York and the Institute for Advanced Professional Studies are presenting a three-day seminar for design, test, and diagnostic engineers and managers. The seminar, entitled “Diagnostic Soft- ware: Planning and Design” will include design examples, lectures, informal sessions with instructors, as well as individual and group diagnostic programming sessions. The seminar will be held July 1 4- 1 6 at the Sheraton-Lexington Motor Inn, Lexington, Massachusetts. For details contact the In- stitute for Advanced Professional Studies, One Gateway Center, Newton, MA 02158, (617) 964-1412, Prof. Donald French. SUMMER CES The 1980 Summer Consumer Elec- tronics Show will be held June 1 5-June 1 8 in Chicago and will utilize three exhibit facilities — McCormick Place for all con- sumer electronics products, McCormick Inn for audio components demonstration rooms and the Pick-Congress Hotel for demonstra- tion rooms and suites for special interest audio components. Exhibits will include audio compact and component systems, audio tape equipment and software, auto sound, video tape recorders, videodisc systems, electronic games, home computers and more. For more information contact Consumer Electronics Shows, Two Illinois Center, Suite 1607, 233 N. Michigan, Chicago, IL 60601, (312) 861-1040. MICROCOMPUTER INTERFACING A two-week short course on the funda- mentals of microcomputer interfacing will be offered by the Virginia Military Institute from July 14 through July 25. This will be a hands-on laboratory ori- ented course which will feature the TRS-80 microcomputer (Level II with 16K). For details contact Dr. Philip Peters, Dept, of Physics, VMI, Lexington, VA 24450, (703) 463-6225. 1980 MICROCOMPUTER SHOW The 1 980 Microcomputer Show & Inter- national Conference will be held at the Wembley Conference Centre, London, England, July 22-24. Aspects examined and on display will in- clude industrial applications, micro based commercial systems, micros in DP, and ad- vanced micro system design. Contact TMAC, 680 Beach St., Suite 428, San Francisco, CA 94109, (800) 227-3477, (in Calif, and Canada (415) 474-3000). VIDEOSPACE 1980 Videospace 1 980 is a consumer show to demonstrate the latest technology and educate consumers in home video and commercial electronic living. The show will feature workshops, guest speakers, computers, special exhibitions Our MacroFloppy goes twice the distance. For s 695. Introducing the Micropolis MacroFloppy™ :1041 and :1042 disk drive sub- systems. For the S-100/8080/Z-80 bus. Packing 100% more capacity into a 5%-inch floppy disk than anyone else. 143K bytes, to be exact. For as little as $695. The MacroFloppy:1041 comes with the Micropolis Mod I floppy packaged inside a protective enclosure (without power supply). And includes an S-100 controller Interconnect cable. Micropolis BASIC User's Manual. A diskette con- taining Micropolis BASIC, and a compatible DOS with assembler and editor. The .1041 is even designed to be used either on your desk top, or to be inte- grated right into your S-100 chassis. The MacroFloppy:1042 comes with everything the :1041 has, and more. Such as d.c. regulators, its own line voltage power supply, and, to top it off, a striking cover. Making it look right at home just about anywhere. Both MacroFloppy systems are fully assembled, tested, burned-in, and tested again. For zero start-up pain, and long term reliability. They're also backed up by our famous Micropolis factory warranty. And both systems are priced just right. $695 for the MacroFloppy: 1041 and $795 for the MacroFloppy:1042. You really couldn't ask for anything more. At Micropolis, we have more bytes in store for you. For a descriptive brochure, in the U.S. call or write Micropolis Corporation, 7959 Deering Avenue, Canoga Park, California 91304. Phone (213) 703-1121. Or better yet, see your local dealer. MICROPnUS More bytes in store for you. 22 INTERFACE AGE JUNE 1980 and displays of video hardware, security sys- tems, personal computers and more. Videospace 1 980 will be held at Seattle Center, North Court, July 25-27. For details contact Michael Gaines, Rising Starr Pro- ductions, P.O. Box 17209, Seattle, WA 98107, (206) 682-7724. COMPUTER GRAPHICS WEEK Harvard Computer Graphics Week 1 980 will be held July 28-August 1 at the Hyatt Regency Hotel in Cambridge, Massachusetts. There will be discussions and examples of applications of business graphics and com- puter mapping in the commercial, educa- tional, and governmental sectors, including displays of the most recent developments in graphic hardware. Contact Kathy Devaney, Center for Man- agement Research, 850 Boylston St., Chestnut Hill, MA 02167. SILICON CONFERENCE The Third International Conference on Neutron Transmutation Doping of Silicon will take place August 27-29 in Copenhagen. Topics for the conference include trans- mutation physics, radiation defects, irradia- tion techniques, material properties and spe- cifications, device applications, new devices and new materials. Contact Motorola Inc., Semiconductor Group, P.O. Box 2953, Phoenix, AZ 85062. FIFTH BIG YEAR FOR PCC The Fifth Annual Personal Computing and Small Business Computer Show, PCC’80, will be held on August 21-24 at the Philadelphia Civic Center. The show features exhibits and seminars highlighting all aspects of personal and small business computing. For more information contact John Dilks, Personal Computing ’80, Route 1 , Box 242, Ward Rd., Mays Landing, NJ 08330, (609)653-1188. NEW JERSEY COMPUTER SHOW The 1 980 New Jersey Personal Compu- ter Show and Fleamarket will be held Sep- tember 27-28 at the Holiday Inn (North), at Newark International Airport (NJ Turnpike Exit 14). The show will feature an indoor commer- cial exhibit area, a large outdoor fleamarket and user group meetings/forums on the TRS-80, PET, Apple, Heath and other popular systems. For more information write NJPCS, Kengore Corp., 9 James Ave., Kendall Park, NJ 08824. MINI/MICRO SHOW The Mini/Micro Computer Conference and Exposition will be held at Brooks Hall/ Civic Auditorium, San Francisco, California on Oct. 14-16. For further information contact Robert D. Rankin, Managing Director, Mini/Micro Conference and Exposition, 32302 Camino Capistrano, Suite 202, San Juan Capis- trano, CA 92675, (714) 661-3301. PERSONAL AND BUSINESS COMPUTER SHOW The Midwest Personal & Business Com- puter Show will be held at McCormack Place in Chicago from Thursday, October 16 through Sunday, October 19. Show hours are Thursday-Saturday: 1 1 a.m. to 9:30 p.m.; Sunday: 1 1 a.m. to 6 p.m. For more information contact National Computer Shows, P.O. Box 678, Brook- line Village, MA 02147, (617) 524-0000. PERSONAL COMPUTER FAIR The Northwest Computer Society and the Pacific Science Center will be holding the third annual Personal Computer Fair Nov. 8-9. The fair will be held in Seattle, WA. at the Pacific Science Center. The theme of this year’s Fair is “Hands On.” The booths and exhibits will reflect this idea, with the public having access to as many computers and terminals as possible. There will be presentations for the beginner as well as the experienced professional. For more information contact the North- west Computer Society, P.O. Box 4193, Seattle, WA 98119. MetaFloppy goes The Micropolis MetaFloppy™ gives you more than four times the capacity of anyone else's 5 14-inch floppy Because it uses 77 tracks instead of the usual 35. The field-proven MetaFloppy with thousands of units delivered, comes in a complete family of models. And, like our MacroFloppy™ family of disk drives, MetaFloppy is designed for the S-100/8080/Z-80 bus. For maximum capacity, choose our new MetaFloppy:1054 system. Which actually provides you with more than a million bytes of reliable on-line stor- age. For less money than you'd believe possible. The MetaFloppy:1054 comes complete with four drives in dual config- uration. A controller. Power supply. Chassis. Enclosure. All cabling. A new BASIC software package. And a DOS with assembler and editor There's even a built- in Autoload ROM to eliminate tiresome button pushing. If that's more storage than you need right now, try our MetaFloppy:1053, with 630,000 bytes on-line. Or our Meta- Floppy:1043, with 315,000 bytes on-line. Either way, you can expand to over a million bytes on-line in easy stages, when you need to. Or want to. In other words, if your application keeps growing, we've got you covered. With MetaFloppy. The system that goes beyond the floppy. For a descriptive brochure, in the U S. call or write Micropolis Corporation, 7959 Deering Avenue, Canoga Park, California 91304 Phone (213) 703-1121. Or better yet, see your local dealer. beyond MICROPnLIS" More bytes in store for you. JUNE 1980 INTERFACE AGE 23 BOOK REVIEWS NORTH STAR Ace Reporter means business! This superb data base manager and report writer gives you posi- tive control over every aspect of your business. Accurate information, promptly available and well presented, can save you money and increase your profits. Information about receivables, payables, sales prospects, sched- ules, inventory, cost tracking, estimating. Information organized the way you want it and presented the way you need it, in tables, labels, statements. Ace Reporter helps you design a data base to your personal specification. And report formats that tell you just what you need to know. In a few minutes at your terminal even if you have absolutely no programming experience. You can’t afford not to have Ace Reporter working for you. It puts you in control. It gives you the edge for lower costs and higher profits. Ace Reporter starts earning for you the day it arrives. But it won’t arrive until you order it. Order today for just $240 in- cluding disk and excellent man- ual. (CA add $14.40 tax). RLM Associates 1077Ticonderoga Sunnyvale, CA 94087 (408) 245-9441 ACE REPORTER THE HOME COMPUTER REVOLUTION By Ted Nelson. The Distributors, South Bend, IN. 224 pages, $2 Review by Susan Grace Nelson’s purposes in writing this book were to “explode” the myths surrounding computers and to explain the basics of com- puter knowledge. He succeeds in both areas. In trying to explain why these myths exist, Nelson makes the observation that people are scared off by the mathematical sound of the term “computer”; this goes hand-in-hand with the more widely-held belief that not just anyone is capable of using a computer. The fact that I have a limited knowledge of computers, yet could understand most of the ideas being explained attests that Nelson succeeds in his purpose of instructing the reader in the basics of computer knowledge. However, there are some areas that need more clarification for the beginner. The most difficult area, in terms of comprehension, is the section on computer languages, entitled “Tough, Optional Part.” Another chapter that was slower-going concerned program- ming. A glossary of terms would have been helpful, not only here but in other parts of the book as well. It was difficult to go back and find the meaning of an unfamiliar term that popped up in the text, but this is partly due to the organizational structure of the book. For the most part, The Home Computer Revolution is readable, because the book is written in a conversational style. Nelson’s en- thusiasm for his subject is obvious, and he exemplifies a point he makes early in his book: “The computer is a machine that brings out the kid in all of us.” However, his style and enthusiasm can almost be described as juve- nile at times. Example: “Surprise! There are thousands of different computer languages.” On an introductory level, this book is a good starting point for anyone interested in the who, what, when, where, why and how of computers. After all, “a computer is simply a blank device whose purpose is chosen and whose steps are chosen by a human being,” Nel- son says. He also emphasizes that the true use of computers is for personal use. Hey, did anyone just hear a myth ex- plode?D DESIGN OF TRANSISTOR CIRCUITS, WITH EXPERIMENTS By Dr. Keats A. Pullen, Jr. Group Technology, Ltd., Check, VA. 508 pages, $12.95 Review by Michael Scott Providing the background and explana- tions necessary to teach the reader the art of designing transistor circuits, this book is par- ticularly useful in helping experimenters, amateurs, scientists, and engineers whose principal areas of activity are in fields other than electronics to develop an understand- ing of electronic circuits. Simple, valid ex- planations of the way solid state devices work and how they should be used are backed up with experiments that can be performed to verify the correctness of the statements. The sound basic understanding developed will make the study of other books on elec- tronics easier including those on microcom- puters. Concepts rarely encountered in stan- dard textbooks are shown to be important in the practical application of active devices. Topics covered include basic theory, dif- ferences between linear resistances and the non-linear resistances on which solid-state devices are based, the relationships and applications of npn and pnp transistors, field effect devices, special purpose devices, eval- uation of measurement devices, and special measurement problems. Six appendices provide information about the Ebers-Moll model for an active device, useful circuits, instruments, and com- ponents; suggested supply sources for parts; additional experiments; and the character- ization of active devices. □ OPERATING SYSTEMS - CONCEPTS AND PRINCIPLES By John Zarrella. Microcomputer Applications. 140 pages, $6.95 Review by Alfred A. Adler, Ph.D. In this first book of a series, Zarrella notes in the preface that books on computer soft- ware and hardware are “written on two levels — one for the computer science graduate student and one for the program- mer attempting to learn a language on a specific computer.” He feels that a need ex- ists for a more intermediate level. He states, “This series is therefore dedicated to ex- plaining some fundamental software engi- neering concepts, techniques and terms, and giving you, the reader, a feeling for the scope of the design problem.” In any technical field, the terminology is the first and quite possibly the biggest hurdle that must be overcome by the beginner. The computer field is probably the worst offender in this regard. Zarrella makes a valiant effort to cover as many buzz words as possible, putting them in boldface type as they arise in the text and devoting one-quarter of the book to a rather comprehensive glossary. The book attempts to cover the entire broad range of operating systems, including multiprogramming, real time operations, multiuser, multiprocessing, system services, system support, scheduling, resource and memory management, input and output, file systems, and system security. The result, in only 1 00 pages, is a superficial description of what the words mean, and possibly who might want it and why. It certainly provides a wide angle view of the subject and gives the reader some feeling for the breadth of the problem, but at the same time leaves him with an empty feeling that he has really not learned much. The glossary covers 34 pages with some 230 entries. The book should prove useful to anyone de- siring a broad brush, quickly read treatment of the field of operating systems, without getting involved in anything heavy.D 24 INTERFACE AGE CIRCLE INQUIRY NO. 54 JUNE 1980 Set fire to your paperwork. Dispatch your paperwork with burning speed. With Spell Binder and a microcomputer you can set fire to just about any paperwork task in your office. Spell Binder is a software system that will drastically reduce the time you spend on paper- work, and increase your output. WORD PROCESSING. Spell Binder is a word processing system you can learn to use in twenty minutes. But ease of use does not mean lack of powerful features. Compare Spell Binder’s capabilities with any other word processing sys- tem. You’ll be impressed. And Spell Binder doesn’t stop with word processing. MAILING LIST, MASS MAILING. Spell Binder features full mailing list and mailing label capa- bility. And Spell Binder will merge your letter with your selected mailing list for personalized, tail- ored mass mailings. Sort and select by any key you want, including zip code. CUSTOM PROGRAMMING. Using Spell Binder’s Macro Programming feature, you can shape your text to virtually any format, number the lines on legal text, create custom heads for running pagination, or do whatever you need for a fired up paperwork flow. HOT, NEW, NOW. This new package is the best paperwork system you’ll find on a micro- computer. It runs on computers with CP/M®, including the new Heath WH89. Spell Binder is available now. If it is not in your computer dealer’s store for a demo, call us right away. Before your paperwork load turns into a real fire hazard. CP/M is a registered trademark of Digital Research. Spell Binder is a trademark of Testan Scientific Instruments. r guornk mcnc — GOIvPWER-GG — * 2601 Blackburn. Davis, California 95616. (916) 756 2921 *A lot JUNE 1980 CIRCLE INQUIRY NO. 7 INTERFACE AGE 25 COMPUTER CLUB DIRECTORY — As a service to our readers, INTERFACE AGE is initiating a club directory to inform readers of clubs in their areas. To add your club to this directory, send club name, address and phone contact information to Club Editor, INTERFACE AGE, P.O. Box 1234, Cerritos, CA 90701 . AMATEUR COMPUTER GROUP OF NEW JERSEY 1 776 Raritan Rd., Scotch Plains, NJ 07076 Jeff Kashinsky, President (201) 536-1078 AMATEUR RADIO RESEARCH AND DEVELOPMENT CORPORATION 1 524 Springvale Ave., McLean, VA 22101 Paul Rinaldo, President (703) 356-8918 BOSTON COMPUTER SOCIETY 17 Chestnut, Street, Boston, MA 02108 (617) 227-9178 NEW ENGLAND COMPUTER SOCIETY P.O. Box 198, Bedford, MA 01730 Eric Johannson (617) 562-6716 PHILADELPHIA AREA COMPUTER SOCIETY P.O. Box 1954, Philadelphia, PA 19105 PACS Hotline (215) 467-0177 ROCHESTER AREA MICROCOMPUTER SOCIETY P.O. Box 90808, Rochester, NY 14607 Mike Ciaraldi (716) 467-0177 ALAMO COMPUTER ENTHUSIASTS 4847 Castle Shield, San Antonio, TX 78218 David Samson (512) 656-8469 COMPUTER HOBBYISTS GROUP OF NORTH TEXAS P.O. Box 1344, Grand Prairie, TX 75051 Garrett Davis (214) 559-2710 CRESCENT CITY COMPUTER CLUB University of New Orleans P.O. Box 1097 New Orleans, LA 70122 David Hughes (504) 271-5540 DENVER AMATEUR COMPUTER SOCIETY 1 380 S. Santa Fe, Denver, CO 80223 Mike Dmytrasz (303) 697-5800 SOUTHEASTERN MICHIGAN COMPUTER ORGANIZATION Box 02426, Detroit, Ml 48202 S.E.M.C.O. Newsline (313) 775-5320 UTAH COMPUTER ASSOCIATION 378 East 9800 South, Sandy, UT 84070 Lawrence Barney, President (801) 571-9661 SPACE COAST MICRO COMPUTER CLUB c/o Ray Lockwood 315 Inlet Avenue, Merritt Island, FL 32952 Ray Lockwood, President (305) 452-2159 HOMEBREW COMPUTER CLUB P.O. Box 626, Mountain View, CA 94042 Bob Reiling, President (415) 967-6754 NORTHWEST COMPUTER SOCIETY P.O. Box 4193, Seattle, WA 98104 (206) 284-6109 SAN DIEGO COMPUTER SOCIETY P.O. Box 85137, San Diego, CA 92138 (714) 571-5550 SOLUS COMPUTER CLUB 1690 Woodside Road, #219 Redwood City, CA 94061 S. Sokolow (415) 368-3331 CONNECTICUT COMPUTER CLUB c/o Leo Taylor 1 8 Ridge Court W., West Haven, CT 06516 Leo Taylor (203) 933-5918 TCUG (TRS Computer User’s Group) P.O. Box 2235, Reston, VA 22090 Ron Hickey (703) 241-2878 PROTEUS (International Processor Technology User’s Group) 1690 Woodside Road, #219 Redwood City, CA 94061 S. Sokolow (415) 368-3331 CONTROL PROGRAM FOR MICROCOMPUTERS ENABLING YOU TO RUN SOFTWARE PUBLISHED FOR CP/M 1.4 ON THE TRS-80 MODEL II for the TRS-80®Model II CP/M is considered the industry standard disk operating system because it gives you the hardware-independent interface you need to make your computer work for you CP/M 2.0 is the latest in the evolution of a proven reliable and efficient software system. FMG CORPORATION'NOW OFFERS THE CP/M 2.0 FOR THE TRS-80 M00EL II. It features an enhanced upward compatible file system and powerful new random access capabilities. The CP/M 2.0 from FMG provides the ability to run software published for the CP/M system, on the TRS-80 Model II. From minidisks, floppy disks, all the way to high-capacity hard disks, the flexibility of CP/M 2.0 makes it a truly universal operating system. The package includes an 8" system disk, editor, assembler and debugger for the TRS-80 Model II. CP/M is a registered trademark of Digital Research Corp. TRS-80 is a registered trademark of Radio Shack PRICE $ 200.00 Manual Only $ 25.00 VERSATILITY For Your TRS-80 Model II 'CORPORATION 5280 Trail Lake Drive Suite 13 Ft. Worth, Texas 76133 (817) 294-2510 BUSINESS APPLICATIONS FROM THE ORIGINATOR OF THE TRS-80 PROJECT Call or Write for Complete Information • USER ASSIGNABLE ACCOUNT NUMBERS HIGH SPEED ASSEMBLY LANGUAGE PROGRAM • 18 DIGIT ACCURACY ING TO EDGER INVOICE AGING G WITH INVOICE DETAIL (Requires minimum 32K, two drives and CP/M) WMi* Mb' * / -fmj • j • j / t l d / » ACCOUNTS RECEIVABLE Accounts receivable is a low volume in- voice system. An entry may be invoiced at any time — before ready for billing, when ready, after billed, even after paid. It even has progress billing which keeps track of milestone payments made at intervals. The program allows automatic posting to the General Ledger and will interface with a future mailing list pro- gram for making bulk mailings to cus- tomers. Accounts Receivable does not print invoices. Reports: Not billed Open and Closed Invoices Aging Analysis Customer Statements Customer Activity List ACCOUNTS PAYABLE Accounts Payable is an invoice linked system which means that everything re- volves around the invoice. The system provides the user security through the use of a password. It allows automatic (complete or partial) payment of selected invoices, and automatic distribution of each invoice to as many as eleven differ- ent general ledger accounts This system maintains vendor activity, automatically posts accounts payable and cash accounts, and will interface with a future mailing list program. Reports Open and Closed Item Listing Aging — 30/60/90 days (or user selected) Transaction printing for Audit Trail Accounts Payable Ledger Customization is available at additional i PRICE EACH $250.00 26 INTERFACE AGE CIRCLE INQUIRY NO. 30 JUNE 1980 An Entire Family of Disk Drives for APPLE, TRS-80*, and S-100 Computers NOW! ALL DRIVES COMPATIBLE WITH MODEL II Only LOBO DRIVES offers you an entire family of fully-compatible disk drives to select from. Whatever computer you’re using, APPLE, TRS-80, or S-1 00, you can add a LOBO drive now, with the peace-of-mind of knowing there’s a whole family of drives available when you’re ready to expand. And every drive you order comes complete with chassis and high reliability power supply. Each drive is 1 00% calibrated, burned-in, and performance tested on either an APPLE, TRS-80, or S-1 00 computer before it’s shipped. We are so proud of our drives . . . our quality, reliability, and performance, that we back-up every drive with a one year, 1 00% parts/labor warranty. 400 SERIES FLOPPY DISK DRIVES Meet our low-cost 5.25-inch mini drive that records data in either hard or soft sectored format. It is available in single or double density configurations, with a total storage capacity of 220K bytes. 800/801 SERIES FLOPPY DISK DRIVES Here is our dual 8-inch Floppy disk memory unit. It records and retrieves data on standard 8-inch diskettes to provide 800K unformatted, or 51 2K bytes 935 Camino Del Sur Goleta, California 93017 (805) 685-4546 “CAN YOU REALLY AFFORD TO PAY LESS?” bytes of data storage INTERNATIONAL in IBM format per drive. It is also available with double-sided, double-density capabilities, fora maximum storage capacity of 1 .6 Megabytes. 7000 SERIES HARD DISK DRIVES The latest member of our drive family, the Series 7000 is an 8-inch, 1 0 Mega- byte Winchester Technology, hard disk drive. It is fully hardware/software compatible and comes complete with disk controller. Now you can have the convenience, speed, reliability, and all the storage capacity you need. Call or write for the complete LOBO DRIVES story. Find out just how competitively priced a quality drive can be. Quantity discounts available - Dealer inquiries invited. Yes, I want to know more about LOBO Drives and what they can do. Send me information on: □ TRS-80 □ APPLE □ S-1 00 □ 5 1 /4-in. Floppy drive □ 8-in. Winchester hard disk, 10 Mbyte drive □ 8-in. Floppy drive □ Double density Single sided expansion interface Double sided Name : Company _ Address City State Zip Phone No. If dealer, provide resale no. #TRS-80 is a registered trademark of Radio Shack, a Tandy Company. JUNE 1980 CIRCLE INQUIRY NO. 41 INTERFACE AGE 27 • Simple Design • Simple Maintenance • Simple Interfacing to: - Apple - Pet - TRS-80 - Exidy -OSI and many other personal computers LRC EATON MODEL 7000+ IMPACT PRINTER OO+ ^ The 7000+ was designed to provide the per- sonal computer user with an inexpensive, yet reliable printer. Take a look - you won't regret it! SPECIFICATIONS • Impact Unidirectional • 1.25 LPS; 50 CPS • 40 or 64 Column • 5 x 7 Dot Matrix • Standard Paper Rolls • lOO Million Character Printhead Life (minimum) • 6 LPI Line Spacing Substantial Dealer Discounts are Available. OEM inquiries are invited. Please contact: SIGMA INTERNATIONAL, INC. P.O.Box 1118 SCOTTSDALE, AZ 85252 USA Tel. (602) 994-3435 Tlx. 165-745 Sigma Cable: SIGMAS CIRCLE INQUIRY NO. 58 TARBELL HAS HIGH-QUALITY S-100 HARDWARE Part No. Description Price VDS-M 8-slot Mainframe with room for 2 8" floppies 800.00 VDS-II Single-Density Single-Sided Floppy Subsystem 22RR.00 VDS-IIMDD Mainframe above with 2 Double-Sided 6" floppies, double-density interface, CP/M , Tarbell BASIC 2999.00 MEM-3 2K-ASM 32K fully-buffered static memory A&T 725.00 MEM-16K-ASM 16K fully-buffered static memory A&T *40.00 MEM-OK-ASM Fully-buf f ered static board without memory IC's 240.00 CI-KIT 1500 baud bi-phase Cassette Interface Kit 120.00 Cl- ASM 1500 baud bi-phase Cassette Interface A&T 175.00 FDI-KIT Universal Single-Density Floppy Interface Kit 225-.00 FDI-ASM Universal Single-Density Floppy Interface A&T 325.00 DD-ASM Double-Density DMA Floppy Disk Interface A&T 495.00 ju^ispRudent computeRisr" DISCLOSING INVENTIONS TO EMPLOYERS: WHY IT’S IN THE EMPLOYEE’S INTEREST There are numerous reasons for submitting a disclosure on an in- vention, each of which may affect the employee in one way or another, and all of which have significance to the employer. Disclosure by the employee-inventor is the simplest and cheapest way for the employer to identify those inventions that he may want to patent. A patent can be a significant company asset. It enhances a company’s competitive position, and can be beneficial to an em- ployee’s position in the company. From a competitive standpoint, the possibility of a suit for patent infringement against another company could very well result in a competitor expanding funds to design around the patented develop- ment rather than taking the risk of infringing the patent. Thus, addi- tional expense is incurred by such a competitor in designing around, preventing him from getting a free ride on a company’s investment and technical expertise. This advantage may help to secure an order or boost sales of a product related to an employee’s area of technical expertise. Another advantage is the defensive trading position against other patent owners. Cross-license agreements may allow a company to enter the market at a lower cost than might otherwise be possible. The trading value of patents, particularly in new technologies, can result in lower royalties or in the elimination of patent royalties that might otherwise have to be paid. Similarly, the company may be able to enter a market that it might not otherwise have entered without a very substantial investment for designing around the patents of others. This could easily spur development in a tech- nology to which the employee’s expertise relates. Patents provide protection to the company against the issuance of a patent to another on the same development. This is usually referred to as protecting the right to use. Delaying disclosure could result in someone else getting a patent. That would not be in either the employee’s or the company’s interest. TARBELL HAS HIGH-QUALITY 808C/Z80 SOFTWARL Part No. Description Price CPM-1.4 Floppy Disk Operating System for our interfaces 100.00 CPM-2.0 Extended Version of above Operating System 150.00 MPM Multi-User Version of above Operating System 400.00 TBAS-CAS Tarbell Cassette BASIC (uses 24k) 72.00 TBAS-DSK Tarbell Disk BASIC (uses 24k) 72.00 SPLR KLH Systems Spooler for CP/M 1.4 on disk 70.00 FAST Screen-Oriented Editor/Assembler for CP/M 100.00 TELE-COM Telecommunications Support System 195.00 POLYVUE Screen-Oriented CP/M Editor 135.00 PASCAL/MT Meta-Tech Pascal Compiler for CP/M 99.95 Prices are subject to change without notice. CP/M is a registered trademark of Digital Research. 950 Dovlen Place, Suite B Carson, California 90746 (213) 538-4251 (213) 538 2254 CIRCLE INQUIRY NO. 66 Patents also provide a basis for royalty income. There are occa- sions when it is economically advantageous to license someone else to make, use, or sell the product on which a company has a patent. When this is done, it is usually in a product area in which the com- pany has not traditionally participated and has not made the invest- ment required to enter that field. Thus, patent licensing gives a com- pany the opportunity to earn income by way of royalties in a product area in which it might not otherwise have participated. Finally, the establishment of a portfolio of patents on a particular product, or in a particular technology, makes it more difficult for a competitor to design around. The degree of commercial success in a particular product area may be increased if a number of patents are obtained on various inventions used in a product. This increases the economic burden to which competitors are put, in order to compete with a company without running the risk of infringing a patent. Thus, in the best interests of all concerned, employees should submit disclosures on their inventions. The name of the game is competition. A company can legally obtain a competitive edge through the patent system, and can also offer increased opportuni- ties for its employees. □ 28 INTERFACE AGE JUNE 1980 new from.. HflRDSI 6 SOUTH ST., MILFORD, NH 03055 ATARI A Warnpr Communications Company o * r \ r a r ^ » \w * r w * r i-m5si®> TO ORDER TOLL-FREE 1 - 800 - 258-1790 (In N.H. call 873-5144) ATARI 800 (list 1080 . 00 ) 875.00 ATARI 400 (list 630 . 00 ) 515.00 810 DISK DRIVE ( 699 . 95 ) .... 565.00 820 40-COLUMN PRINTER (list 599 . 95 ) 470.00 410 PROGRAM RECORDER (list 89.95) 65.00 JOYSTICK CONTROLLERS . .18.95 PADDLE CONTROLLERS ...18.95 ATARI 850 I NTERFACE . to be announced ATARI 830 MODEM . . . . to be announced ATARI 825 PRINTER . . . . to be announced JUNE 1980 CIRCLE INQUIRY NO. 33 INTERFACE AGE 29 C-10 50 FT. SHORT CASSETTES Qty. Price 1 $1.00 10 $ 0.75 50 $ 0.65 Premium tape and cassettes acclaimed by thousands of repeat order microcom- puter users. Price includes labels, cas- sette box and shipping in U.S.A. VISA and M/C orders accepted. California residents add sales tax. Phone (415) 968-1604. MICROSETTE CO. 475 Ellis Street Mt. View, CA 94043 CIRCLE INQUIRY NO. 48 APPLCf HATC JUflK FOOD!! Finally your Apple II or Apple Plus can have low cost Business and Professional Software worthy of its Great Capacity and Quality. Ask your local Dealer about our Software Products. ° BASIC Teaching Programs °Word Processing & Office Management ° Business Payroll & Accounting ° Scientific & Professional Systems 0 Medical, Dental & Legal Systems -AVAILABLE FROM 650 DEALERS WORLDWIDE- For Product Information or your nearest Dealer please write or call. oifiiHEf mnnn & nssotmts Micro Software Division 7594 San Remo T rail Yucca Valley. California 92284 (714) 365-9718 Dealer Opportunities Available m. BAKER'S GAME CORNER Raise your hand if you have Programmer’s Aid #1 in your Apple II. Have you tried to use its music? Well, today you will. This month, our program is called PLAYER PIANO. It uses the musical notation developed by Dick Ainsworth of The Image Producers for Bally BASIC and APF BASIC. Player Piano isn’t a game, toy, or even pure entertainment. It is a serious attempt at using a computer to play music. But it is fun, and it does show off some of the musical potential in Apple’s Program- mer’s Aid #1 . MUSICAL NOTATION Player Piano uses the basic structure of the musical notation. Pro- grammer’s Aid #1 doesn’t support multiple voices, a large number of octaves, or the creation of note envelopes. The notes of the C ma- jor scale are 1 through 7. On the Apple II, the octave immediately below middle C is the default. Figure 1. The musical scale: First row of numbers is Programmer’s Aid #Ts own internal pitch notation. The second row is our song notation. Figure 1 shows the four octaves supported by Programmer’s Aid #1 . The bottom row written between the staves is the standard nota- tion. By itself, you can’t play the tune. You need to see each note on the staff to know its octave. The upper row is the pitch notation needed by Programmer’s Aid #1. Translating a song from sheet music to this notation is time consuming. Here are three songs written using Player Piano’s notation. Zeros extend a note and spaces are rests. See if you can recognize them before reading on: 3212333 222 355 144557641445560 660367030* 17* 1 *2*107 The first is “Mary Had a Little Lamb.’’ Next is “Lemon Tree.” Last is “O Come, All Ye Faithful.” Here is a summary of the rules for the basic notation: • 1 through 7 are the notes of the C major scale •use * to go up an octave 30 INTERFACE AGE CIRCLE INQUIRY NO. 43 JUNE 1980 •use / to go down an octave •use - for a flat note •use + for a sharp •use 0 to extend a note •use a blank for a rest USING PLAYER PIANO I have provided several songs for you to play. Run Player Piano and it will ask you to type in a song. Use as many lines as necessary to enter it. When done, enter an empty line. After a brief pause, your song will play. You can play it as many times as you want, or you can enter a new song. It is easy to create your own songs. That’s how I got some of those here. If you can’t read sheet music, you may need someone’s help. Find the shortest note in the piece. Suppose it is an eighth note (which looks like this J* or n ). Then quarter notes will have one zero after them and half notes will have three. Whole notes will have seven. Here is the translation of this piece: r» H XT A " 6-500607000 *30000000 If the piece sounds too fast or slow, change program line 230. The lower the number, the faster the song. And don’t forget sharps and flats. Your song won’t sound right if you forget to consider the key it is written in. THE PROGRAM Lines 1 50 through 1 80 set up the constants used by Program- mer’s Aid #1. MUSIC is the address of the music subroutine, PITCH is where we place the note to be played, and TIME is where we set the note’s length. Line 1 80 sets up the proper timbre of the music. Read the Programmer’s Aid document for a description of these locations. I N $ is the person’s input string. A$ is where the program keeps the entire song. Later, we convert the player piano’s notation into pitch and time. These will be kept in the P and T arrays. TT is the duration of our shortest note. Change this to speed up or slow down the song. The B array contains the pitch values for the C major scale. From lines 340 through 400, the program builds the user’s song. Lines 440 through 480 play the song as many times as desired. The remainder of the program converts the player piano musical notation into the computer’s. For each note, we begin by assuming it will be the smallest length, not a flat or sharp, and on the default octave. If a “/” is found, we sub- tract the 1 2 pitch units of the tempered scale. If a is found, we add the 12 half steps of the tempered scale. This handles changing oc- taves. Likewise, “ + ” or creates a sharp by raising the note a half step and creates a flat by lowering the note a half step. Each time we find a zero in the string, we lengthen the note by one time unit. Rests are handled by using a pitch of zero. The loop on lines 960 through 1080 then plays the converted song. ON YOUR OWN This program doesn’t have a music editor in it. It doesn’t even save your song. But it does have the building blocks. If you enjoy playing music on your computer, it’s now up to you.D LISTING 1 1* REn . . . PLflVB? FlfM . . 118 REM m REM m rem define mores m REM m 168 Pim=?67 178 TIME =786 188 POKE 765,32 DYNACOMP Quality software for: Apple II Plus TRS-80 (Level II) North Star All software is supplied with complete documentation which includes clear explanations and examples. Each program will run with standard terminals (32 characters or wider) and within 16K program memory space. Except where noted, all software is available on North Star diskette (North Star BASIC), TRS-80 cassette (Level II) and Apple cassette {Applesoft BASIC). These pro- grams are also available on PAPER TAPE (Microsoft BASIC). FLIGHT SIMULATOR Price: $17.95 postpaid (as described in SIMULATION, Volume II) A realistic and extensive mathematical simulation of take-off, flight and landing. The program utilizes aerodynamic equations and the characteristics of a real airfoil. You can practice instrument approaches and navigation using radials and compass headings. The more advanced flyer can also perform loops, half-rolls and similar aerobatic maneuvers. SIMULATION, Volume II (BYTE Publications): $6.00 V ALDEZ Price: $14.95 postpaid A simulation of supertanker navigation in the Prince William Sound and Valdez Narrows. The program uses an extensive 256X256 element radar map and employs physical models of ship response and tidal patterns. Chart your own course through ship and iceberg traffic. Any standard terminal may be used for display. BRIDGE 2.0 Price: $17.95 postpaid An all-inclusive version of this most popular of card games. This program both BIDS and PLAYS either contract or duplicate bridge. Depending on the contract, your com- puter opponents will either play the offense OR defense. If you bid too high the com- puter will double your contract! BRIDGE 2.0 provides challenging entertainment for advanced players and is an excellent learning tool for the bridge novice. HEARTS 1.5 Price: $14.95 postpaid An exciting and entertaining computer version of this popular card game. Hearts is a trick-oriented game in which the purpose is not to take any hearts or the queen of spades. Play against two computer opponents who are armed with hard-to-beat play- ing strategies. DATA SMOOTHER Price: $14.95 postpaid This special data smoothing program may be used to rapidly derive useful information from noisy business and engineering data which are equally spaced. The software features choice in degree and range of fit, as well as smoothed first and second derivative calculation. Also included is automatic plotting of the input data and smoothed results. FOURIER ANALYZER Price: $14.95 postpaid Use this program to examine the frequency spectra of limited duration signals. The program features automatic scaling and plotting of the input data and results. Prac- tical applications include the analysis of complicated patterns in such fields as elec- tronics, communications and business. MAIL LIST I Price: $18.95 postpaid (available for North Star only) A many-featured mailing list program which searches through your customer list by user-defined product code, customer name or Zip Code. Entries to the list can be con- veniently added or deleted and the printout format allows the use of standard size address labels. Each diskette can store more than 1000 entries. MAIL LIST SERVICE DYNACOMP can provide you with a customized mail list service. Your customer/ patient records are placed in a master computer file and you are provided with address- ed, self-adhesive labels for your mailings. These labels may be sorted by name. Zip Code, date, or other identifiers. Write for further details and a price schedule. TEXT EDITOR I (Letter Writer) Price: $14.95 postpaid An easy to use, line-oriented text editor which provides variable line widths and simple paragraph indexing. This text editor is ideally suited for composing letters and is quite capable of handling much larger jobs. GAMES PACK I Price: $10.95 postpaid Seven entertaining games for less than a dollar a kilobyte! Play CATAPULT, CRAPS, SWITCH, HORSERACE, SLOT MACHINE, BLACKJACK and LUNAR LANDER. This is an excellent and economical way to start your games library. All orders are processed within 48 hours. Please enclose payment with order. If paying by MASTER CHARGE or VISA, include all numbers on card. Foreign orders add 10% for shipping and handling. Write for detailed descriptions of these and other programs available from DYNACOMP. DYNACOMP P.O. Box 162 Webster, New York, 14580 New York State residents please add 7% NYS sales tax JUNE 1980 CIRCLE INQUIRY NO. 23 INTERFACE AGE 31 for TRS-80 II. Compucolor II. &PET EVERYTHING YOU NEED TO BRING YOUR BASIC PROGRAMS TO LIFE WITH SOUND! SOUN DWARE is a complete package: YOU GET A SPEAKER /AMPLI- FIER UNIT complete with connectors. No wiring or soldering. Just plug in! YOU GET A DEMO PROGRAM with a variety of sample sound effects— sirens, laser sounds, tunes! YOU GET A COMPOSER PRO- GRAM to help you create your own original sound effects. Fun for all ages! YOU GET AN INSTRUCTION BOOKLET that tell you how to insert sound into your programs. 1 year warranty. Complete Programs Package or & Booklet ^ALL PETS & TRS-80 II $29.95 $14.95 Compucolor II $39.95 $19.95 SEND FOR FREE CATALOG OF GAMES FOR PET & COMPUCOLOR!! SEE YOUR DEALER TODAY! Or order direct from CAP by phone or mail. VISA & MasterCharge orders include expiration date. Add $1 postage & handling per order. $3 for air or COD. Arizona residents add tax. CAP Electronics 8462 Hillwood Ln.. Suite 4. Tucson. A Z 85715 (602) 2% 4078 CIRCLE INQUIRY NO. 8 ANNOUNCING: NEW! MICROSTAT A complete statistics package for business, scientific, education and research work. No other package has the features of MICROSTAT. For example: • File oriented with COMPLETE editing • A Data Management Subsystem for editing, sort- ing, ranking, lagging, data file transfers PLUS 1 1 data transformations (e.g., linear, reciprocal, exponential, etc.) • Frequency distributions * Simple and multiple regression • Time series (including exponential smooth- ing) • 11 Non-parametric tests * Crosstabs/ Chi-square • Factorials (up to 1,000,000!), permutations, combinations • 8 Probability distributions • Scatterplots • Hypothesis test (Mean, proportion) • AN0VA (one and two-way) • Correlation • Plus many other unique features Users manual: $10.00 (credited towards purchase) and includes sample data and printouts. Uses NORTH STAR BASIC 32K of memory, one or two disk drives (2 recommended). Printer optional. Price: $200.00 P.0. Box 68602 Indianapolis, IN 46268 Phone orders: (317) 253-6828 m m mm T(MhB(7),H$m.mw m RBf m sm set TEm notes m reh 238 17=25 2# oam 258 B(2>=2 2 m B(3)=24 m B(4)=25 ffl B(5)-27 m Bi6 )- 25 m B(7)=31 318 REH 328 RBf f£CEPT USER'S SONS m REH J48 m= ne 358 PRINT ‘EHm Sflifi 1 WILL ACCEPT INPUT UNTIL” M PRINT “m ENTER fiN EHPTr LINE . 3 m INPUT • ENTER SONS INt 388 IF IN$= aH I HEN 440 m m mmwm m goto m 418 REH 428 REH m THE SM PS OFTEN AS DESIRED 428 REH 4# GOStS 566 m input *m it min m IF THEN 440 4W IF m-W THEN M 488 GOTO 450 456 RBI M REH 510 REH FlftV THE miC STRING 520 REH 538 REH 5 46 REH FIRST, mm TO THE CORRECT MISERS FOR PITCH AND TME” 55e REH 568 0CT=6 578 H0M m J=1 5% FOR M TO LEN(Rf) m T(1)=TT SIS H$=Fi(Li) 628 IF Hf=V“ THEN 0l-T=0CT-12 88 IF THEN 0CT=0CT*12 648 IF H$= a :“ THEN CCMCM2 m IF H$= a t’‘ THEN HQMW+1 668 IF &=*; 8 THEN ffGWBP+1 678 IF «=»-* THEN NtMOlhl m IF THEN 778 32 INTERFACE ACE CIRCLE INQUIRY NO. 24 JUNE 1980 if ( Rscm)} mwm mm< m B s u )> then m m if m*' • net m 718 REII 728 REM iUSJCnL RESTS HiWLED HERE m Ptt)=8 7 ft GOTO m m REM 768 REM UNGER NOTES HHNDL3 HERE m t(M)-t(J-ihtt m IF J(M))255 THEN T(j-l)=255 798 GOTO m Em REM 818 REM NOTES f#M£P HERE. 828 REM NOTE = Bf££ NOTE + FLPJ/5HRRF. f miFlER + QCH¥E CHRNGE m K= mHt)-128-48 m K=Bmm+QC- t m IF Dm WN k-58 m IF m THEN K-l 878 PCJ.NC m J=M m MOM m ocr=g m NEHT ! 928 REM 938 REM PLflV THE CONVERTED MR W REM m J=J-i 968 FOR J=i TO J 970 POKE PITCH. PCD 988 POKE TIMS TCI) sse cm. fwsic m NEXT I 1818 RETURN LISTING 2: Marine’s Hymn 1350505050 604060405006 500*15034 50*1760406*100 505042001000 500000135050 001350505050 5050500*15034 500*150345050 500050006000 4200100000*17 7000*1000 AUTHORIZED Radio /haeH DEALER A301 COMPUTER SPECIALISTS 10 % DISCOUNT Off List 64 K 1 Drive $3499.00 Popular 16K Level 1 1 System $ 722.00 26-1145 RS-232 Board 84.00 26-1140 "O" K Interface 254.00 26-1 160 Mini Disk 424.00 26-1171 Telephone Modem 169.00 Fast 100 CPS Centronics 730 Printer 750.00 Highly Reliable Lobo5'/4" Drives 375.00 Versatile Lobo Interface, 8" Drives and IMI Hard Drives Call For Prices 15% DISCOUNT Off List 4K Level II $527.00 No Taxes on Out Of State Shipments Immediate Shipment From Stock. MICRO MANAGEMENT SYSTEMS, INC. DOWNTOWN PLAZA SHOPPING CENTER 1 15 C SECOND AVE. S.W. CAIRO, GEORGIA31728 912-377-7120 Full Factory Warranty on All Items Sold. VISA, Master Charge and COD's, Add 3 % JUNE 1980 CIRCLE INQUIRY NO. 47 INTERFACE ACE 33 SPECIALIZING IN QUALITY MICRO- COMPUTER HARDWARE INDUSTRIAL EDUCATIONAL SMALL BUSINESS PERSONAL ELECTRONIC CONTROL TECHNOLOGY 763 RAMSEY AVE. HILLSIDE, N.J. 07205 ( 201 ) 686-8080 RACKMOUNT CARD CAGES POWER SUPPLIES , CPUs , MEMORY , OEM VARIATIONS BUILDING BLOCKS FOR MICROCOMPUTER SYSTEMS, CONTROL & TEST EQUIPMENT R 2 I/O 2K ROM 2 K RAM 3 SERIAL PORTS 1 PARALLEL PORT TABLE TOP MAINFRAMES CIRCLE INQUIRY NO. 25 > 159.95 OSDORME BUSINESS SOFTWARE The full, complete OGA pockages — supported — in source form Enhonced CRT routines eose instollotion interfaces available for many common terminals. Auto-input feature eliminates pressing return key Some programs speeded up. Cosh reword for finding bugs — users updated to new releases. Other complementary business packages under development — custom programming available (references) Requires CP/M and CDASIC2. Available m either 8 single-density soft sectored or 5 Vi double-density NorthStor format (TRS-80 Mod II™ users — order the 8 version.) All users required to sign licensing agreement, attractive dealer discount schedule available on request Prices: Payroll with Cost Accounting $ 59 95 Accounts Payable ond Accounts Receivable (both) $ 59.95 General Ledger with Cosh Journal $ 59.95 All Packages — Complete $159.95 Manuals not included in package price — add $20 /manual desired To order coll: (206) 542-8370 Or write: VANDATA • 17541 Stone Ave N • Seattle WA 98133 COD/ VISA / MC Welcome — WA state residents odd 5 4% soles tax TIXS-80 is a registered trademark of Radio Shock LISTING 3: Amazing Grace 20500075700060 70*2007*275000 5000302000205000 2300553200020 75 700060*2000 5000757000605000 LISTING 4: Bagpipes 405654-70*2*106 46*2*164505505 406654502300 46*2*16460*1 405654-70*2*106 *20*3*4*2*1 *406654504401 654605400 46*2*1 64606605 LISTING 5: Frankie and Johnny 1236053010100000 1236053010000010 456* 10*260*10 *100067*10*1*17060 503030-3020000000 blanks -►^65650010000000000000 LISTING 6: Greensleeves 30500060700+170 6000+402003+40500030 300+230+^000+20/700030 500060700*1706000+40 2003+40500+430+200+1 20 300030300000*200000*200 +*1706000+402003+40 500030300+230+4000 +20/700000*200000*200 +*1 706000+402003+400 500030+200+1 203000003000 34 INTERFACE ACE CIRCLE INQUIRY NO. 70 JUNE 1980 Diagnostics I for CP/M* & TRSDOS DIAGNOSTICS I will really put your system through its paces. Each test is exhaustive and thorough. The tests include: •Memory Test •Disk Test ■Printer Test ■CPU Test (;8080f/8085/Z8Q) ■CRT Test To our knowledge, this is the first CPU test available for 8080/Z80 CPU’s. Many times transient problems, usually blamed on bad memory, are really CPU errors. A good set of diagnostics is an indispensable addition to your program library even if your system is working fine. Hours have been wasted trying to track down a “program bug” when actually hardware was to blame! DIAGNOSTICS I also allows you to be confident of your system. This can be critical when file merges or sorts and backups are involved. You want to be as sure of your computer as possible during these critical times. Running DIAGNOSTICS I prior to these and other important functions helps to insure that your system is operating at peak performance. DIAGNOSTICS I is supplied on discette with a complete users manual. DIAGNOSTICS I: $50.00 Sofoeday your computer is going to break; even the most reliable computer systems "go down”. Often, finding exactly what is wrong can account for the most time consuming part of repairing the system, and the longer the system is down, the more money you lose. DIAGNOSTICS I is a complete program package designed to check every major area of your computer, detect errors, and find the cause of most common computer malfunctions, often before they become serious. For years, large installations have run daily or weekly diagnostic routines as a part of normal system maintenance and check-out procedures. Requires: 24K CP/M: 16K disc for TRS-80 formats: CP/M 8" SOFT SECTORED. NORTHSTAR CP/M AND TRS-80 DOS All Orders and General Information: SUPERSOFT ASSOCIATES P.0. BOX 1628 CHAMPAIGN, IL 61820 (217) 344-7596 Technical Hot Line: (217) 384-0847 (answered only when technician is available) DIAGNOSTICS I is designed to provide that kind of performance testing for 8080/Z80 micro computers. Give your computer a “physical” today! Manual: $15.00 MATHEMATICIAN By Dr. Alfred Adler NUMERICAL INTEGRATION OF TRAJECTORY EQUATIONS Review of Integration Last month we explored the general subject of integration. We used a very simple equation to demonstrate the analytical process of in- tegration, and pointed out that if an equation is not available, as in the case of experimental data, any necessary integrations must be performed numerically. The subject of numerical integration was examined and two of the simplest forms, the Trapezoidal Rule and Simpson’s Rule, were looked at in detail. Program NUMERINT, which facilitates com- parisons between these two methods, was presented along with a number of sample runs. It was concluded that, in the majority of cases, Simpson’s Rule gives more accurate results in much less time than the Trapezoidal Rule. Under certain circumstances, however, Simpson’s Rule may present no advantage and might possibly even introduce difficulties. As shown in last month’s column, simple equations can usually be integrated analytically. The result, of course, is another equation. Everything is very convenient and tidy. What was not stated last month, however, is that there exist many types of neat and tidy equa- tions that cannot be integrated analytically. Only certain forms are in- tegrate, and an equation not fitting the limited number of possible molds is generally not integrable. Having shown in last month’s col- umn how to use numerical integration to find the area under a curve, it would be instructive to continue by showing how to solve a differential equation numerically. Trajectory Equations Among the many types of differential equations that are not easily integrable are the equations describing the trajectory of an object under the influence of gravity, thrust, and aerodynamic forces. If aerodynamic forces are either ignored or simulated in a simplified manner, and if one or two of a variety of other simplifications are made, the equations of motion can be integrated analytically. T Figure 1. Atmospheric forces on an object in flight. Whether this results in a neat little package or a mess depends on the details of the simplifications. We are concerned with analytical integration of these equations since we want to be able to determine the accuracy of the numerical integration procedure used. We must therefore abridge the equations to the point where they can be inte- grated analytically. In this article, we shall integrate two abridged ver- sions of the trajectory equations. One is very abridged, the other about as little as can still be reasonably handled analytically. A deter- mination of the accuracy of the numerical equation will be made and the difficulties and possible remedies explored. Figure 1 shows the forces on an object in flight in the atmosphere, under the influence of gravity, thrust, and aerodynamic forces. The equations of motion, parallel and perpendicular to the flight path, along with the required auxiliary equations, are shown in figure 2. These equations already include many simplifying assumptions, among them a spherical nonrotating earth, two-dimensional motion, stepwise constant thrust, aerodynamic forces that act at the vehicle center of mass, etc. These equations are presented primarily to give the reader an idea of what is involved in determining the trajectory of even a non-winged vehicle (a winged vehicle is far more complex), even under the simplifying assumptions stated. These equations, of course, must be integrated numerically. m = Tcos(a+6) - mgsinv - D mV ^ = L + Tsin(a+6 ) - mgcosy + mV^cosy R + h T = T e — 1 sp 8 dt GM 6 ~ (R + h) z dm r = R + JVsiny dt Range = cosy dt where G = Universal gravitational constant M = mass of Earth R = radius of Earth r = distance from center of Earth h = altitude above surface of Earth I g p = specific impulse of propellant T = thrust V = velocity m = mass of vehicle Y = flight path angle with local horizontal D = Drag L = Lift subscript o = initial condition Figure 2. Equations of motion, parallel and perpendi- cular to the flight path. Let us first abridge the equations until we have a set that are easily integrated analytically. We make the following assumptions. 1 . Lift and drag equal zero. 2. Thrust equals zero. 3. The flight range is small compared to the radius of the earth. This permits the assumption that the earth is flat, which implies that g is constant. This limits the flight altitudes to under about 100 miles. 4. The flight path is vertical. Having made these assumptions, the equations reduce to those presented in figure 3. These are, of course, the familiar, so-called falling body equations given in every high school physics text. They are, however, valid for motion in either direction. 36 INTERFACE AGE JUNE 1980 H--* dt (1) v = HE = v o ' ^ (2) h = h + V t o o - \ St 2 (3) Figure 3. Simplified flight path equations. Since the equations for velocity and altitude in figure 3 were ob- tained analytically by successive integration of the first equation, the results they give are accurate and will be considered ‘correct’ within the limits of our simplifying assumptions. In order to perform numerical integration on the first equation, it must be recast. The d in all these equations implied an infinitely small increment. Thus dh/dt means an infinitely small increment in h, divided by an infi- nitely small increment in t. This quotient represents the rate of change of altitude with respect to time and is, of course, the vertical velocity. We cannot represent an infinitely small quantity on a digital computer. Therefore the equations must be written in a form that eliminates the need for infinitesimals. We can, of course, always take a finite number of finite steps instead of an infinite number of infi- nitesimal steps. The larger the finite size steps, however, the greater the error in the results. That is exactly what we will do. Using the up- per case delta to represent a finite increment, we can rewrite the equations in figure 3. Equation 1 is rewritten as equation (4) in figure 4. The latter states that the finite increment in vertical velocity equals minus g times the finite increment in time. This can be handled by a digital computer. Using the equations of figure 4, we proceed stepwise. Equation (4) yields the increment in velocity. By adding that to the previous velocity, we obtain an updated value, equation (5). Using this up- dated velocity we obtain the increment in altitude from equation (6). This, of course, assumes that V is constant during each time incre- ment, and that is where the error arises. If the increment is in- finitesimal, as it is in the analytic solution, this is correct, and we have zero error. But if the increment is larger (finite), it is in general not correct, and we have an error. Obviously, the smaller the steps taken (timewise, in this case) the smaller the error. Of course, in the event that the velocity actually is constant during the time increment, the numerical integration would be exact. It turns out that the incre- ment in velocity given by equation (4) is exact, regardless of step size, since g is constant. It is for this reason that equation (5) yields exact results, regardless of step size (see the sample runs). Finally, adding the increment in altitude from equation (6) to the previous altitude, we obtain an updated value (see equation (7)). Av = = -gAt (4) V n + 1 = V n + AV (5) Ah = vAt (6) h n + 1 = % + Ah (7) Figure 4. Finite increment of simplified flight path equations. Program VERTRAJ1 Program VERTRAJ1 presents tabulated values of V and h from equations (5) and (7) for comparison against the values from equa- tions (2) and (3). The computational sequence discussed above is followed exactly. The user is asked to input initial values of altitude FAST, DEPENDABLE EPROM ERASING MEMORASE EPROM Erasing Systems Speed, Economy, Reliability. Engineered for all EPROM Systems Users. 1. S-52T — Fastest available EPROM eraser. Erases up to 16 chips. 2. UVS-54T — High-intensity unit with 8-chip capacity. Includes timer and tray. 3. UVS-11E — Low-cost unit erases up to four chips. Features holding tray with safety interlock system. Applications Problem ? Call Ron Cooper . (213)285-3123 ULTRA-VIOLET PRODUCTS, INC.nri 5100 Walnut Grove Ave. San Gabriel, CA 91778 JUNE 1980 CIRCLE INQUIRY NO. 68 INTERFACE ACE 37 and velocity, and then must choose the integrating interval, that is the time increment, and the print interval. A listing of program VER- TRAJ1 is given in figure 5. 10 REM | | | I I I I I I I I I I I I I I I I I I I I I I II I I i I I I I I I I I I I I I I I I I I I I I I I I I i I 20 REM 30 REM llllllllllllll Proqram VERTRAJ 1 I I I I I I 40 REM 50 REM I I I I I I I I I I I I Written by - Alfred A. Adler, Ph.D. I 'I I 60 REM 70 REM I I I I I I I I I- 1 I II I I Version 1.0 - January 1980 I I | I I I I 80 REM 85 DIM F ( 366 ) 88 P2=6. 2831853 95 1 98 REM ****** INPUT DATA ****** 100 INPUT“Initial altitude ?",H0 110 INPUT"Initial velocity ?",V0 120 INPUT'What is the integrating interval ?'‘,T1 130 INPUT"What is the print interval ?",T2 135 i 140 G=32 .174 145 REM ****** INITIALIZE ****** 150 H=H0\V=V0\Z=0 160 l TAB( 6 ) , “T" , TAB( 14 ) , "H ( N . I . ) " , TAB ( 26 ) , "H ( ANAL ) " , TAB ( 38 ) , 170 1"V ( N . I . ) “ , TAB ( 50 ) , *' V (ANAL)" 175 REM ****** TRAJECTORY COMPUTATION ****** 180 FOR T=0 TO 1000 STEP T1 190 REM ****** ANALYTIC ****** 200 V9=V0-G*T \REM V9=V (ANAL) 210 H9=H0+V0*T-G/2*T?2 \REM H9=H (ANAL) 220 IF T/T2 < > I NT ( T/T2 ) THEN 250 230 1 %9F2,T, %12F2,H,H9,V,V9 240 IF Z=1 THEN EXIT 95 245 REM ****** NUMERIC ****** 250 V3=-G*T1 \REM V3=DELTA V (N.I.) 260 V=V+V3 270 H3=V*T1 \REM H3=DELTA H (N.I.) 280 H=H+H3 290 IF V<0 THEN IF H<0 THEN Z=1 300 NEXT READY Figure 5. Program VERTRAJ1 Sample Runs on VERTRAJ1 Sample runs on program VERTRAJ 1 are presented in figures 6 and 7. In figure 6, we integrate every 1 second. The numerically in- tegrated values of V are exact for reasons already discussed. The numerical values of h, however, contain considerable error. In an ef- fort to reduce this error, we integrate on a much smaller time incre- ment, as shown in figure 7. These values of h are much more ac- curate, possibly satisfactory for some purposes. But at what cost? The run in figure 6 took 9 seponds, but the run in figure 7 took 1 00 times that long (16 minutes). That is intolerable if many runs are to be made. Initial altitude 7500 Initial velocity 71000 What is the integrating interval 71 What is the print interval 710 T H (N.I. ) H (ANAL) V (N.I . ) V (ANAL) • 00 500.00 500.00 1000.00 1000.00 10.00 8730.43 8891.30 678.26 678.26 20.00 13743.46 14065.20 356.52 356.52 30.00 15539.09 16021.70 34.78 34.78 40.00 14117.32 14760.80 -286.96 -286.96 50.00 9478.15 10282.50 -608.70 -608.70 60.00 1621.58 2586.80 -930.44 -930.44 70.00 -9452.39 -8326.30 -1252.18 -1252.18 Initial altitude 7 STOP IN LINE READY 100 Figure 6. Program VERTRAJ1 integrating every 1 second Initial altitude 7500 Initial velocity 71000 What is the integrating interval 7.01 What is the print interval 710 T H (N.I. ) H (ANAL) V (N.I. ) V (ANAL) .00 500.00 500.00 1000.00 1000.00 10.00 8889.69 8891.30 678.26 678.26 20.00 14062.00 14065.20 356.52 356.52 30.00 16016.89 16021.70 34.78 34.78 40.00 14754.37 14760.80 -286.96 -286.96 50.00 10274.45 10282.50 -608.70 -608.70 60.00 2577.15 2586.80 -930.44 -930.44 70.00 -8337.44 -8326.30 -1252.15 -1252.18 Initial altitude 7 STOP IN LINE 100 READY Figure 7. Program VERTRAJ1 with smaller time increment. Recall that the main source of error is that the increment in h is computed in equation (6) on the assumption that V is constant dur- ing the integration interval. This V incidentally is the updated value, which means that it is the value at the end of the time interval. That explains why h is too low on the way up and also on the way down. Suppose we save the old value of V, that is the value at the end of the previous interval, average that with the value from equation (5), and use the average value in equation (6). This should improve the accuracy of the numerical integration. Program VERTRAJ2 Program VERTRAJ2 is simply VERTRAJ 1 modified as discussed above. In the interest of economy, we present only that part of the listing below REM ****** NUMERIC* ***** , see figure 8. The re- mainder of the listing is identical to that shown in figure 7. 245 REM ****** NUMERIC ****** 250 V3=-G*T1 \REM V3=DELTA V (N.I. ) 255 V4=V 260 V=V+V3 265 V5=( V4+V ) / 2 270 H3=V5*T1 \REM H3=DELTA H (N.I. ) 280 H=H+H3 290 IF V<0 THEN IF H<0 THEN Z =1 300 NEXT READY BYE + Figure 8. Program VERTRAJ2 Sample Runs on VERTRAJ2 We repeat the run of figure 6 using the modified program, see figure 9. It turns out that this is the only sample run required which, incidentally, took only 1 1 seconds. The modification permits pro- gram VERTRAJ2 to give numerical integration results that are exact, regardless of how large an integrating interval is used, as subsequent runs demonstrated. How can this be? Examination of the equations reveals that the velocity is a linear function of time. Therefore, multi- plying the average velocity over the time interval, by the time inter- val, yields the exact value for the change in altitude. How fortunate. Initial altitude 7500 Initial velocity 71000 What is the integrating interval 71 What is the print interval 710 T H (N.I. ) H (ANAL) V (N.I . ) V (ANAL) .00 500.00 500.00 1000.00 1000.00 10.00 8891.30 8891.30 678.26 678.26 20.00 14065.20 14065.20 356.52 356.52 30.00 16021.70 16021.70 34.78 34.78 40.00 14760.80 14760.80 -286.96 -286.96 50.00 10282.50 10282.50 -608.70 -608.70 60.00 2586.80 2586.80 -930.44 -930.44 70.00 -8326.30 -8326.30 -1252.18 -1252.18 Initial altitude 7 Figure 9. Program VERTRAJ2 using run of figure 6. Less Abridged Equations Our good fortune with the previous set of equations was due to the very severe constraints put on the trajectory. Exact solutions by numerical integration are not an everyday occurrence. This time we will formulate equations for a more realistic trajectory, while still re- maining sufficiently constrained that they can still be solved analytic- ally. This is an absolute requirement if we are to determine the ac- curacy of the integration. Again starting with the equations in figure 2, we modify the previous assumptions as follows. 1 . Lift equals zero, but drag = K* V*Xdot, where K is the product of the drag coefficient, the reference area, and one-half the air density. Xdot is the horizontal component of the velocity. 4. The flight path is non-vertical, see text. With these assumptions, the equations reduce to those presented in figure 10. They are significantly more complex than the previous set. The reason incidentally for the drag assumption, number 1 38 INTERFACE ACE JUNE 1980 above, is that the correct formulation D = K*V A 2 produces a very messy analytic solution. For trajectories with flight path angles not exceeding 45 °, Xdot is not too radically different from V, and the results are surprisingly good. The assumption of constant air dens- ity, of course, requires that either the trajectory be entirely at high altitude, or that the altitude change be small. This again requires a flat trajectory. At lower altitudes the accuracy can be improved con- siderably by using a value for air density equal to that at the initial alti- tude minus one third of the difference between the value at the initial altitude and the value at the apogee (the highest point) of a trajectory computed letting density equal the value at the initial altitude. This is noted in the heading of the listing of program TRAJ/GD1. d 2 > d x _ -KVx x m V d h _ -KVx h m V d 2 h dx dt / _ dh h - dt ' 1 + - * t ra o = Xdot - Q ( 2 + - it ) + h_ 2 V, mo/ o Hdot 1 + £ * n t m o ( 8 ) (9) ( 10 ) (ID x i + 5 V> ( 12 ) h= (k * + ? ? f*) in(i + ■ *» t) ■ f(i " + ^ + h ° (13) - (14) Y = arctangent j (15) Figure 10. Further modifications on flight path equations. * _ - K*JSA t x W ^ (16) h _ n V W s)At (17) X = X + Ax (18) h = h + Ah (19) Ax = x At (20) Ah = h At (21) x = x + Ax (22) h = h +Ah (23) ,, U2 , .2 V = -y h + x (24) e Y = arctangent 4 X (25) Figure 11. Numerical modifications of flight path equations. INFINITE BASIC For MOD I TRS-80™ Tape and Disk Systems Extensions to Level II and Disk BASIC $49.95 Full MATRIX Functions — 30 BASIC commands! ! Mathematical and common matrix functions. Change arrays in mid-program. Complete array handling. Tape array read and write, including strings. Common subroutine calls. Over 50 more STRING Functions as BASIC commands!! String manipulation, translation, compression, copying, search, screen control, pointer manipulation and utility functions. Includes multikey multivariable machine language sorts. Load only machine language functions that you want! Where you want in memory! Relocating linking loader! More than you ever expected!! 00 BUSINESS (Requires Infinite BASIC) $29.95 20 Business oriented functions including: Printer Automatic Pagination with headers and footers! Packed Decimal Arithmetic ( + ,-/,/) 127 digits! Binary array searches and hash code generator! COMPROC Command Processor for Disk Systems $19.95 Auto your disk to perform any sequence of DOS commands, machine language loads, BASIC, memory size, run program, respond to input statements, etc. Single BASIC command file defines execution! Includes auto key-debounce, screen print and lower case software driver. REMODEL + PROLOAD Specify 16, 32, or 48K Memory $34.95 REnumber any portion or all of BASIC program. MOve any portion of program from one location to another. DELete program lines. MERGE all or any portion from tape. Save and verify portion or all of combined merged programs to tape. GSF (Specify 16, 32, or 48K) $24.95 18 Machine language routines. Includes RACET sorts. DISK SORT MER6E 'DSM' For MOD I and MOD II TRS-80™ N° w you can sort an 85K diskette FAST — jn less than 3 minutes* - FAST Perfect for your multi-diskette RANDOM file mailing lists, inven- tory, etc. Ideal for specialized report generation. Sort, merge or combination. All machine language stand-alone package — Efficient and easy to use. No separate key files required! Physical records are rearranged on diskette! Supports multiple sub records per sector including optional sector spanning. Sorts on one or more fields — ascending or descending. Sort fields within records may be character, integer, and floating-point binary. Provides optional output field deletion, rearrangement, and padding. ‘Sort timings shown below are nominal times. Times will vary based on sort and system configurations. Nominal times based on Mod I 48K 4-drive configuration, 64 byte records, and 5 sort keys. TYPE FILE SIZE SORT TIME TYPE FILE SIZE SORT TIME SORT (Bytes) 16K (Sec) 33 SORT (Bytes) 340K (Sec) 1081 SORT 32K 49 SORT 680 K 2569 SORT 85K 173 SORT and 85K SORT + 1757 SORT 170K 445 MERGE 1275K Merge DSM for Mod I (Minimum 32K, 2-drives) $75 On-Disk DSM for Mod II (Minimum 64K, 1-drive) $150 On-Disk Mod II Development Package $100 Machine Language SUPERZAP, plus Editor/Assembler and Disassembler patches. Mod II Generalized Subroutine Facility ‘GSF’ $50 CHECK, VISA, M/C, C.O.D. Calif. Residents add 6% Telephone Orders Accepted (714) 637-5016 TRS-80 IS A REGISTERED TRADEMARK OF TANDY CORPORATION DEALER INQUIRIES INVITED WHEN ORDERING PLEASE ADVISE PUBLICATION SOURCE |- RACET COMPUTES 702 Palmdale, Orange CA 92665 JUNE 1980 CIRCLE INQUIRY NO. 55 INTERFACE ACE 39 Examination of the equations in figure 1 0 shows that equations (12) and (13) become indeterminate if K, that is, drag equals zero. Also, equation (1 3) becomes indeterminate if Xdot equals zero, that is for vertical flight. Suitable error returns have been put into the pro- gram, but all possibilities have NOT been checked out. We have modified the equations of figure 10 for numerical inte- gration exactly as we modified those of figure 3. The results are presented in figure 1 1 . Program TRAJ/GD1 Program TRAJ/GD 1 presents tabulated values of V, h, flight path angle (gamma), and range (X) from equations (24), (23), (25), and (22), for comparison against the values from equations (14), (13), (15), and (12). The computational sequence is exactly as in pro- gram VERTRAJ1. The user is asked to input initial values of alti- tude, velocity, and gamma. If a zero value is . input for velocity or gamma, an error return appears and the user is then asked for the ‘drag-weight parameter’, C(D)*S/W, from which K will be deter- mined. If a zero value is input another error return is touched off. In this case, however, the computation of H(AN) and X(AN) is aborted but the remainder of the calculation is continued. The reasons for these error returns were discussed in the previous section. Finally the integrating interval and the print interval are entered. A listing of program TRSJ/GD1 is given in figure 12. 10 rem//////////////////////////////////////////////////////////////// 20 REM n T R A J / G D 1 ////////////// Prog - Alfred A. Adler, Ph.D. /////////// 1.0 - January 1980 /////////////// *“\1 30 REM////////////// 40 REM 50 REM//////////// Written by 60 REM 70 REM/////////////// Version 80 REM 190 G=32 .174 200 S=41 . 5E-6 202 R9=57. 29578 205 REM ****** INPUT DATA ****** 210 INPUT” Initial altitude ?",H0 220 P= . 00 2 3 78* EXP ( -S*H0 ) 230 INPUT" Initial velocity ?”,V0 235 IF V0=0 THEN 244 240 INPUT” Initial qamma ?" , GO 242 IF G0<=89.8 THEN 255 244 1 \ 1 "*** THE ANALYTICAL EQUATION FOR H BECOMES INDETERMINATE" 245 1" IF GAMMA=90 DG. ALSO THE DRAG ASSUMPTION IS NOT" 247 1" GOOD FOR HIGH ANGLE TRAJECTORIES. TRY AGAIN. * 248 IF V0=0 THEN 230 250 GOTO 240 255 INPUT "C ( D) *S/W = ?",D1 260 IF D1 < > 0 THEN 290 270 1\I"*** THE ANALYTICAL EQUATIONS FOR X AND H BECOME INDETERMINATE" 280 ! " IF DRAG=0. H ( AN ) AND X(AN) WILL NOT BE PRINTED. 290 C=D1*P/2*G 300 INPUT"What is the inteqratinq interval ?",T1 310 INPUT"What is the print interval ?",T2 320 REM ****** INITIALIZE ****** 330 G1=G0/R9 340 G4=G0 350 X4=VO*COS(G1) \REM X4=Xdot 360 X8=X4 \REM X8=Xdot ( initial ) 370 H4=V0*SIN(G1) \REM H4=Hdot 380 H8=H4 \REM H8=Hdot ( initial ) 390 X=0\H=H0\V=V0\Z=0 4001 410 l TAB ( 2 ) , "T" , TAB ( 7 ) , "H ( NI ) ” , TAB ( 15 ) , ”H( AN ) " , TAB ( 22 ) , 420 1 ”V(NI) ” , TAB (29) , " V( AN ) " , TAB ( 35 ) , "G ( NI ) ” , TAB ( 41 ) , H G(AN) ", 4 30 1 TAB ( 49 ) , "X( NI ) " , TAB ( 57 ) , ”X(AN)" 435 REM ****** TRAJECTORY COMPUTATION ****** 440 FOR T=0 TO 1000 STEP T1 445 REM ****** ANALYTIC ****** 450 L1=1+C*X8*T 460 X7=X8/L1 \REM X7=Xdot (ANAL) 470 H7=(-G*T/2*(1+L1 )+H8)/Ll \REM H7=Hdot (ANAL) 480 V9=SQRT ( X7 ? 2+H7 ? 2 ) \REM V9=V (ANAL) 490 IF H7<0 THEN V9=-V9 500 IF X7< >0 THEN 520 505 IF H7>0 THEN G9=90 508 IF H7=0 THEN G9=0 510 IF H7 <0 THEN G9=-90 515 GOTO 530 520 G9=ATN(H7/X7)*R9 530 L2=LOG ( LI ) 540 IF D1=0 THEN 570 550 X9=L2/C \REM X9=X (ANAL) & H9=H (ANAL) 560 H9=(H8/X8/C+l/2/C?2*G/(X8:2) ) *L2-G*T/4* ( 2/C/X8+T ) +H0 570 IF T/T2 < > I NT ( T/T2 ) THEN 630 580 IF D1=0 THEN 610 590 1 %4F0 , T , %8F0 , H , H9 , % 7 F0 , V , V9 , %6F1 , G4 , G9 , %8F0 , X , X9 600 GOTO 620 610 I %4F0,T, %8F0,H, ” " , %7F0 , V , V9 , %6F1 , G4 , G9 , %8F0 , X, " 620 IF Z=1 THEN EXIT 180 625 REM ****** NUMERIC ****** 630 X2=-C*X4?2*T1 \REM X2=DELTA Xdot (N.I.) 640 H2=(-C*X4*H4-G)*T1 \REM H2=DELTA Hdot (N.I.) 650 X4=X4+X2 \REM X4=Xdot (N.I.) 660 H4=H4+H2 \REM H4=Hdot (N.I.) 670 V=SQRT ( X4^ 2+H4? 2 ) 680 IF H4 < 0 THEN V=-V 690 IF X4< >0 THEN 710 695 IF H4> 0 THEN G4=90 698 IF H4=0 THEN G4=0 700 IF H4 < 0 THEN G4=-90 705 GOTO 720 710 G4=ATN ( H4/X4 ) * R9 720 X3=X4*T1 \REM X3=DELTA X (N.I.) 730 H3=H4*T1 \REM H3= DELTA H (N.I.) 740 X-X+X3 750 H=H+H3 760 IF V<0 THEN IF H<0 THEN Z=1 _. 770 next Figure 12. Program TRAJ/GD1 READY 40 INTERFACE ACE JUNE 1980 Diablo introduces the first printer that runs on lour wheels. The Diablo 630 printer is the most versatile printer you can get. It’s the only one that gives you a choice of 4 different interchangeable print wheels and over 100 different type styles. Every 630 works just as well with a 96-character plastic daisy print wheel as it does with an 88, 92, or 96-character metal daisy print wheel. The 630 also has fewer moving parts than competitive printers, which makes it exceptionally reliable. This new addition to our line offers unsurpassed print quality. Compatibility with existing Diablo supplies. And automatic bi-directional printing. ... The Diablo 630 printer. Probably the best thing to happen to printing since we re-invented the wheel. Diablo Systems Diablo® and XEROX® arc trademarks of XEROX CORPORATION. XEROX JUNE 1980 CIRCLE INQUIRY NO. 19 INTERFACE AGE 41 MICAU OSBORNE BUSINESS SOFTWARE in CBASIC2 or CROMEMCO 16K BASIC ★ features ★ • Four Complete Packages— • General Ledger • Accounts Receivable • Accounts Payable • Payroll with Cost Accounting • Strong support from Osborne Manuals • CBASIC2 runs under CP M or under CDOS version 1.07 on Cromemco computers • 16K BASIC runs on Cromemco computers • Cursor addressing routines for Hazeltine, Lear Siegler and Cromemco (Beehive) Terminals • Source Codes and Installation Instructions provided along with disks • Automatic Command Start-up • Easy to apply to all of your business and systems needs V1ICAH S PRODUCTS OF DISTINCTION • OSBORN! BUSINESS • DUP 1 iDisk Utilities • EXPAND (Run C roinem- SO! TW ARE im C BASIC 2 lor CP. M jnd CDOSl tu Software on CP All & Ibk 1 • DfP 2 (Disk l Himes lor • HI AC MACK (Tutorial • C BIOS (CP M lor Cromeim ol Casino Action i Croinemto Computers! • DfP HDUP 2 ( tpandedl • DRIVE (Customized . MICROPIOT 1 Versatile • SPOOL (Cromeim 0 Printei Umersi Printer Graphic si lor nut l tilityl • DBMS Conversion lo NAD • Call or Write for Free Catalogue and More Information • • hardware required * • One or more 8 " or 5" Floppy Drives • CRT with cursor addressing • 132-Column Printer *95 package IOOKDIK Vl r.ix ( kh>it< \ki >n -\( c imu • DEALER INQUIRIES INVITED • ★ We will Customize any of our programs at our Standard Consulting Rates * Ah! NilEfik . . . .Satisfyin’ Software That turns your system on! MICro Applications and Hardware • CONSULTANTS and SOFTWARE DEVELOPERS • Box 22212 San Francisco, California 94122 USA phone: 415/664-0778 CIRCLE INQUIRY NO. 44 S-100 ANALOG I/O SYSTEMS 16 Channel A/D 2 Channel D/A 4 Channel D/A High quality commercial grade S-100 bus compatible systems are designed for industrial and laboratory use. • 16 channel 12 bit A/D conversion system nominally operates at 25 kHz • 12 bit resolution, + the LSB accuracy • Multiplexer, converter, and sample and hold on the same hybrid chip • 7Control and measurement ports • Utilizes Z80 and 8080 interrupt modes •Optional Programmable Gain Instrument Amplifier allows mixing of high and low level signals • 2 and 4 channel D/A high-speed conversion systems • Binary and 2's complement inputs • Outputs: +5v, +1 Ov, 0 to -1 Ov, or 0 to +1 Ov • Replaceable output amplifiers protect circuit • 2 channel board has 16 bit parallel I/O and scope intensification strobe • A/D's from $575 • D/A's from $395 CALIFORNIA DATA CORPORATION 3475 Old Conejo Road, Suite CIO Newbury Park, California 91320 (805 ) 498-3651 It is emphasized again that this program and the one following have not been exhaustively checked for possible malfunctions. They will not, however, give wrong answers with no warning. For exam- ple, in order to get all the information desired on an 8/2 by 1 1 inch page, the columns were crowded as much as possible. If very high values of any of the variables are attained during the trajectory, BASIC will abort the run and complain about a ‘format error’ in line 590 (or 610). These programs were designed to test numerical in- tegration routines, not to compute trajectories, although within the limits of the assumptions, the results are correct if the program runs to completion with no apparent malfunctions. Sample Runs on TRAJ/GD1 Again we repeat the run of figure 6 as closely as we can (as a check, see figure 13). The fractional differences are due to the slightly off vertical launch; otherwise everything checks. This run in- cidentally took 63 seconds compared to only 9 seconds for the run of figure 6 . We only added a bit of complication to the equations yet the running time went up by a factor of 7. Since we are not any- where near a set of equations that could even remotely be consid- ered as realistic, it is apparent that large improvements must be made in the integration schemes if reasonable times are to be achieved for realistic equations. Initial altitude 7500 Initial velocity 71000 Initial qamma 789.8 C(D)*S/W = 70 *** THE ANALYTICAL EQUATIONS FOR X AND H BECOME INDETERMINATE IF DRAG=0 . H ( AN ) AND X(AN) WILL NOT BE PRINTED. *** What is the integrating interval 71 What is the print interval 710 T H(NI ) H( AN ) V ( NI ) V ( AN ) G ( NI ) G( AN ) X ( NI ) X ( AN ) 0 . 500. 1000. 1000 . 89.8 89.8 0. 10 . 8730. 678. 678. 89.7 89.7 35. 20. 13743. 357. 357. 89.4 89.4 70. 30. 15539. 35. 35. 84.3 84.3 105. 40. 14117. -287. -287. -89.3 -89.3 140. 50. 9478. -609. -609. -89.7 -8S*.7 175. 60. 1621. -930. -930. -89.8 -89.8 209. 70. -9453. -1252. -1252. -89.8 -89.8 244. Initial altitude 7 STOP IN LINE 210 READY Figure 13. Program TRAJ/GD1 using run of figure 6. We now use the capability built into TRSJ/GD1 . The trajectory of a vehicle launched at 45 0 and having a typical drag value is shown in figure 1 4. This run was made using an integrating interval of 1 se- cond and took 48 seconds of machine time. However, due to the lower launch angle and the drag, the trajectory was 40 seconds long instead of 70 seconds as before. The running time was, therefore, longer per second of flight time than any previous trajectory. Note that the discrepancy between the numerical and analytical integra- tion is significantly worse than before. A second run made with an integrating interval of .1 second is shown in figure 15. The agree- RUN190 Initial altitude 7500 Initial velocity 71000 Initial gamma 745 C ( D ) *S/W = 7.0013 What is the integrating interval 71 What is the print interval 75 T H ( NI ) H( AN ) V ( NI ) V ( AN ) G ( NX ) G( AN ) X( NI ) X ( AN ) 0 . 500. 500. 1000. 1000. 45.0 45.0 0. 0. 5. 3238. 3380. 750. 755. 36.8 37.0 3201 . 3262. 10. 4836. 5115. 574. 580. 24.5 25.0 5958. 6076. 15. 5473. 5883. 465. 471. 7.0 8.0 8381. 8551. 20. 5271. 5806. -427. -429. -14.0 -12.6 10542. 10759. 25. 4315. 4972. -450. -449. -33.5 -32.1 12494. 12752. 30. 2667. 3441. -514. -509. -48.1 -46.9 14273. 14569. 35. 374. 1263. -599. -592. -58.1 -57.2 15908. 16238. 40. -2529. -1525. -693. -685. -64.9 -64.3 17421 . 17782. Initial altitude 7 STOP IN LINE 210 READY Figure 14. Trajectory of a vehicle launched at 45 degrees and having a typical drag value. 42 INTERFACE AGE CIRCLE INQUIRY NO. 6 JUNE 1980 merit between numerical and analytical is much improved, however, this run took 480 seconds. It was considered impractical to use an interval of .01 second as was done with the run of figure 7, since the run would have taken 1 hour and 20 minutes. Obviously, obtaining reasonable accuracy is already taking an unreasonable amount of time. RUN190 Initial altitude ?500 Initial velocity 71000 Initial qamma 745 C ( D) *S/W • = 7.0013 What is the inteqratinq interval 7.1 What is the print interval 75 T H(NI) H( AN ) V(NI) V ( AN ) G(NI) G ( AN ) X(NI) X ( AN ) 0. 500. 500. 1000. 1000. 45.0 45.0 0. 0. 5. 3366. 3380. 755. 755. 37.0 37.0 3256. 3262. 10. 5087. 5115. 580. 580. 25.0 25.0 6065. 6076. 15. 5842. 5883. 470. 471. 7.9 8.0 8534. 8551. 20. 5753. 5806. -429. -429. -12.7 -12.6 10737. 10759. 25. 4906. 4972. -449. -449. -32.2 -32.1 12727. 12752. 30. 3365. 3441. -510. -509. -47.1 -46.9 14540. 14569. 35. 1175. 1263. -593. -592. -57.3 -57.2 16205. 16238. 40. -1625. -1525. -685. -685. -64.3 -64.3 17746. 17782. Initial altitude 7 STOP READY BYE IN LINE 210 Figure 15. Run of Program TRAJ/GD1 with integrat- ing interval of .1 second. Program TRAJ/GD2 If we make essentially the same modifications to TRAJ/GD1 as we made to VERTRAJ1 , we come up with program TRAJ/GD2 in analogy to VERTRAJ2. Again in the interest of economy we present only that part of the listing below REM * * * * * * NUMERIC ******, see figure 1 6. The remainder of the listing is identical to that shown in figure 12. 625 REM ****** NUMERIC ****** 630 X2=-C*X472*T1 \REM X2=DELTA Xdot (N.I.) 640 H2= ( -C*X4*H4-G ) *T1 \REM H2=DELTA Hdot (N.I.) 650 X4=X4+X2 \REM X4=Xdot (N.I.) 660 H4=H4+H2 \REM H4=Hdot (N.I.) 662 X6= ( X4+X5 ) / 2 664 H6= ( H4+H5 ) / 2 670 V=SQRT ( X4? 2+H4~ 2 ) 672 REM YOU DON'T USE H6 AND X6 FOR V BECAUSE YOU WANT 674 REM INSTANTANEOUS V NOT AN AVERAGE OVER TIME. 680 IF H4<0 THEN V=-V 690 IF X4< >0 THEN 710 695 IF H4> 0 THEN G4=90 698 IF H4=0 THEN G4=0 700 IF H4<0 THEN G4=-90 705 GOTO 720 708 REM YOU DON'T USE H6 AND X6 FOR G4 BECAUSE YOU WANT 709 REM INSTANTANEOUS G4 NOT AN AVERAGE OVER TIME. 710 G4=ATN(H4/X4) *R9 720 X3=X6*T1 \REM X3=DELTA X (N.I.) 730 H3—H6*T1 \REM H3=DELTA H (N.I.) 740 X=X+X3 750 H=H+H3 760 IF V<0 THEN IF H<0 THEN Z=1 770 NEXT READY BYE Figure 16. Program TRAJ/GD2 Sample Runs on TRAJ/GD2 We repeat the run of figure 9 as closely as we can, as a check, see figure 1 7. Again the fractional differences are due to the slightly off vertical launch. This run took 70 seconds compared to 63 seconds for the run of figure 1 3. The additional time was of course due to the added complication of the iterative procedure in program TRA- J/GD2. The runs of figures 14 and 15 are repeated in figure 18 and 1 9. The running time for figure 1 8 was 53 seconds versus 48 for figure 1 4, and the running times of figures 1 9 and 1 5 were 1 0 times as long. The differences between the numerical and the analytical results are about one-third as much as in figures 18 and / />.: i. / \ / T -*/ \\ ■' 1 <■ ’ ■ ‘A - ‘ * \ No matter how you slice it, your business problem is unique to your operation. That’s why Serendipity Systems has developed some unique software solutions. User oriented, easy to learn, flexible and very reliable. You can choose just the packages that meet your own needs, or buy one of Serendipity’s integrated Systems. For example, buy a general ledger package now and add payroll later. Or start with medical patient billing and add medical third party billing at a future date. Because we provide source code, you can add individual ized features of your own. Such diversity pays off. For you and for us. Serendipity software circles the globe. Write for our catalog. Enclose $ 1 to cover handling. You’ll take a byte, we’ll bet. SERENDIPITY Systems Inc. 225elmirard, ithaca ny 14850 (607) 277-4889 TRY A SLICE OF SERENDIPITY JUNE 1980 CIRCLE INQUIRY NO. 57 INTERFACE ACE 43 Super Brain Software. MICROSOFT C-BASIC PRICE A/R X X $250.00 A/P X X $250.00 G/L X X $250.00 P/R X X $250.00 Inventory X X $250.00 Restaurant Payroll X $250.00 Mailing List X $150.00 Word Processing X $195.00 “Industry Standard” programs on 1 5 Vi” diskette include source and complete profes- sional documentation. Ready to run on Super- Brain.® One time charge, non exclusive license. HH COMPUTER □ □□ MARKETING ■ ■■ CORPORATION 1 16 South Mission Wenatchee, WA 98801 (509) 663*1626 Ask for wholesale division Also SuperBrain® computers check on prices. ® Trademark of Intertec Data Systems CIRCLE INQUIRY NO. 12 TOLL FREE ORDERING These Fine Products and More NORTHSTAR ASM KIT TERMINAL HRZ-1-16K-D 1600. 1275. SOROC IQ-120 760. HRZ-1-32K-D 1995. 1580. HAZELTINE 1400 760. HRZ-2-32K-D 2300. 1900. HAZELTINE 1500 940. HRZ-1-32K-Q 2300. 1750. HAZELTINE 1510 1050. HRZ-2-32K-Q 2700. 2230. TELEVIDE0912 700. RAM-16K 365. 325. TELEVIDEO920 750. RAM-32K 565. 515. PRINTERS FPB-A MDS-A-D MDS-A-Q EXTRA DRIVE-D EXTRA DRIVE-Q 285. 710. 880. 220. 660. 830. 350. 525. BASE-2 TI-810 CENTRONICS-799 NEC-5510 NEC-5520 450. 1580. 970. 2550. 2800. HARD DISC SYSTEM CALL Most NorthStar computers come standard with real wood cover, 2 serial ports, 1 parallel port, real time clock, disc operating system and NorthStar basic. SOFTWARE— DISCS- AUTOSCRIBE VERBATUM DISCS(IO) 5 FOOT RS-232 CABLE 10 FOOT RS-232 CABLE MISC 325. 28. 20. 25. WE WILL TRY TO BEAT ANY ADVERTISED PRICE A. E. I. 4341 W. Commonwealth Ave Suite D Fullerton, Calif. 92633 ( 714 ) 739-4701 ( 800 ) 854-6003 1 9 as they are in figures 1 4 and 1 5, whereas the running times only differ by about 1 0%. Once again we see that averaging the rate data over the integration interval yields a large improvement in accuracy with only a small increase in running time. We observed the same effect before in program VERTRAJ2. Initial altitude 7500 Initial velocity 71000 Initial qamma 789.8 C ( D) *S/W = 70 *** THE ANALYTICAL EQUATIONS FOR X AND H BECOME INDETERMINATE IF DRAG=0 . H ( AN ) AND X(AN) WILL NOT BE PRINTED. *** What is the inteqratinq interval 71 What is the print interval 710 T H(NI) H( AN ) V ( NI ) V ( AN ) G(NI) G ( AN ) X ( NI ) 0 . 500. 1000. 1000. 89.8 89.8 0 . 10. 8891. 678. 678. 89.7 89.7 35. 20. 14065. 357. 357. 89.4 89.4 70. 30. 16022. 35. 35. 84.3 84.3 105. 40. 14761. -287. -287. -89.3 -89.3 140. 50. 10282. -609. -609. -89.7 -89.7 175. 60. 2586. -930. -930. -89.8 -89.8 209. 70. -8327. -1252. -1252. -89.8 -89.8 244. Initial altitude 7 STOP IN LINE 210 Figure 17. Program TRAJ/GD2 repeating the run of figure 9. RUN190 Initial altitude 7500 Initial velocity 71000 Initial qamma 745 C ( D) *S/W = 7.0013 What is the inteqratinq interval 71 What is the print interval 75 T h(ni) H( AN) V ( NI ) V ( AN ) G ( NI ) G( AN ) X( NI ) X ( AN ) 0. 500. 500. 1000. 1000. 45.0 45.0 0 . 0 . 5. 3367. 3380. 750. 755. 36.8 37.0 3254. 3262. 10. 5070. 5115. 574. 580. 24.5 25.0 6051. 6076. 15. 5798. 5883. 465. 471. 7.0 8.0 8503. 8551. 20. 5676. 5806. -427. -429. -14. G -12.6 10689. 10759. 25. 4793. 4972. -450. -449. -33.5 -32.1 12660. 12752. 30. 3212. 3441 . -514. -509. -48.1 -46.9 14455. 14569. 35. 981. 1263. -599. -592. -58.1 -57.2 16103. 16238. 40. -1861. -1525. -693. -685. -64.9 -64.3 17627. 17782. Initial altitude 7 STOP IN LINE 210 Figure 18. Program TRAJ/GD2 repeating the run of figure 14. RUN190 Initial altitude 7500 Initial velocity 71000 Initial qamma 745 C(D)*S/W = 7.0013 What is the inteqratinq interval 7.1 What is the print interval 75 T H(NI ) H( AN ) V ( NI ) V (AN ) G ( NI ) G( AN ) X( NI ) X( AN ) 0 . 500. 500. 1000. 1000. 45.0 45.0 o. 0 . 5. 3379. 3380. 755. 755. 37.0 37.0 3261. 3262. 10. 5110. 5115. 580. 580. 25.0 25.0 6074. 6076. 15. 5874. 5883. 470. 471. 7.9. 8.0 8546. 8551. 20. 5794. 5806. -429. -429. -12.7 -12.6 10752. 10759. 25. 4954. 4972. -449. -449. -32.2 -32.1 12743. 12752. 30. 3419. 3441. -510. -509. -47.1 -46.9 14558. 14569. 35. 1235. 1263. -593. -592. -57.3 -57.2 16225. 16238. 40. -1558. -1525. -685. -685. -64.3 -64.3 17766. 17782. Initial altitude 7 STOP IN LINE 210 Figure 19. Program TRAJ/GD2 repeating the run of figure 15. FURTHER IMPROVEMENTS Unfortunately, closer approaches to reality in the equations in- crease the running time so rapidly that trajectory equations must be numerically integrated using techniques very much more sophisticated than those discussed herein. Reference back to figure 2 and a reminder of the simplifying assumptions included in their derivation should convince the reader. There are. however, many equations in engineering and the sciences which require numerical integration and for which the methods presented herein are quite adequate. Hopefully the reader has gained an appreciation of the difficulties, an awareness of some of the pitfalls, and a useful tool for the solution of some of the more intractable differential equations.D 44 INTERFACE ACE CIRCLE INQUIRY NO. JUNE 1980 ; 'X ' ' 'V »\ A \ vc-< ; v v X. ... dollar spent for dollar earned, the software purchased from the Software Store has been our most profitable and cost justified." George Brown Allied Computer Services Huntington WV Why reinvent the wheel? The Software Store supplies complete program systems written in easy to use Micro- soft BASIC for Radio Shack Model II, Altair/MITS, TEI, Cromemco, North Star, Processor Tech, Altos, Ohio Scientific, Billings, IMSAI, Digital Micro Systems and other Z80 & 8080 based computers. Our growing family of products is divided into three categories: application utilities , systems and system utilities. The application utilities are the basic building blocks for application program systems. Almost every applica- tion can be made of a key-to-disk data entry segment, a file edit segment, a sort/merge segment, a record selec- tion segment and a report & file update segment. These functions are carried out by the ENTRY, EDIT, SORT, SELECT and REPORTS systems, respectively. Applica- tion utilities consist of two programs: one for interactive task definition and the other for task execution. Once defined, a task may be executed any number of times or easily revised. Application utilities permit rapid solutions to satisfy each user's unique requirements. Many first time com- puter users have built respectable application systems using our utilities and self instructive documentation. Computer stores and consultants utilize our products to generate custom systems for their clients. Because of the flexible and interactive design of the task defini- tion programs, previously defined systems can be easily revised to meet changing needs. The systems are complete packages for a specific appli- cation. Systems are fabricated from application utilities together with application specific programs. For example, our Accounts Receivable System utilizes the ENTRY, EDIT, SORT, SELECT and MWP systems along with six special billing system programs. The MWP system is a complete word processing sys- tem with flexible user defined "name & address" files. The "name and address" information and date can be inserted throughout a document. The documents might be reports, manuals, mailing labels, letters or legal documents. The system utilities include programming tools such as the Program Map BASIC cross reference program along with general utilities such as the Disk Fix file recovery program, the Disk Copy (ID & 2D) diskette copy program, the TX-RX file transfer and media con- version programs and the CATALOG diskette library index program. To find out more about our growing family of software products, contact your local computer dealer for a demonstration or contact us. i ne tDorcware tDuone 706 Chippewa Square Marquette Ml 49855 (906) 228-7622 JUNE 1980 CIRCLE INQUIRY NO. 59 INTERFACE ACE 45 Desk Main/Frame Desk Main/Frame LOW COST & ATTRACTIVE STYLING • MAIN/FRAME INTEGRATED INTO FURNITURE QUALITY DESK • ELECTRONICS PACKAGE SLIDE MOUNTED FOR EASY ACCESS • SUPPORTS TWO 8" FLOPPY DRIVES FROM SEVERAL MANUFAC- TURERS (DRIVES NOT INCLUDED) • 10 SLOT MOTHERBOARD INCLUDES CONNECTORS • POWER SUPPLY FOR DRIVES AND CARDS • DESK AND MAINfFRAME AVAILABLE SEPARATELY • MATCHING PRINTER DESK AVAILABLE m * WRITE OR CALL FOR OUR BROCHURE WHICH INCLUDES OUR APPLICATION NOTE: 'BUILDING CHEAP COMPUTERS' INTEGRAND 8474 Ave. 296 • Visalia, CA 93277 • (209) 733-9288 We accept BapkAmericard/Visa and MasterCharge CIRCLE INQUIRY NO. 37 Business Software in Micropolis Basic DATASMITH announces the availability of two new turnkey business systems designed especially for MICROPOLIS-Based computers, including the VECTOR MZ. Both systems are completely menu driven and highly interactive, so they can be used effectively by your present office staff. • GENERAL LEDGER. Everything you need to keep the books. Features easy-to-use data entry and error correction, trial bal- ance, posting, and a variety of comprehen- sive reports. Automatic error detection keeps the books in balance. Writes checks and makes journal entries in one operation. • PAYROLL. A very flexible system that adapts to a wide variety of needs. Features federal, state, and local tax calculations, EIC credit, and special pay and deduction amounts. Prints all necessary reports, pay- checks, and W-2 forms. Put your computer to work with these compre- hensive systems now. Call or write for complete details. Custom services also available. DflTRSMJTH 1 5501 West 1 09th St., Lenexa, KS 6621 9, (91 3) 888-8486 THE MIN REVOLUTION By Merl Miller The year is 2005. Three days ago you entered the hospital with an operable tumor. Two hours ago you were given a mild sedative that has made you both euphoric and sleepy. Now the time has come for you to enter the surgical unit. As the anesthesiologist attaches your breathing apparatus, you marvel at how comfortable the unit is, and are pleased to hear your favorite soft music. What? Whatever hap- pened to harsh bright lights, hard tables, a preponderance of white and scalpels? By the 2 1 st century these things may be only memor- ies. I predict that by the 21st century medicine will become a more exact science, and will forever shed its “black magic” image. Let’s look at how the operation might be performed. To start with, the patient lies on the cushioned floor of a large transparent box. He has a breathing and anesthetic mask on his nose and mouth. Beside him are rows of trays carrying all instruments the surgeon might need. Each instrument’s handle is a hollow tube. Scissors, forceps, sewing devices. . .all have threaded ends that can easily be attached to the surgeon’s instrument-holding rods. The primary surgical in- strument is the laser. Another sterilized instrument tray stands ready to replace the first through a sterile lock. The box in which the patient lies is sterilized between operations with steam and ultraviolet rays. The roof of the box carries a television camera. The surgeon can move the camera lens anywhere within the box. Back-up cameras are strategically located throughout the box. Each camera is capable of from two-to- ten times magnification, if needed. The box lid has ten arms, each of which ends in a rod that can fit any of the instruments, including the laser. The surgeon sits at a control desk facing the television screens. The control desk is attached to the surgical table, and all interconnecting rods run between. If the surgeon wants, he can look over the control desk directly onto the operating table. He inserts one of his arms into a close fitting elec- trosensitive glove that reaches from fingertips to shoulder. These gloves are crucial to the entire procedure so I will explain how they work separately. First, let’s see how the surgeon uses them. Each fingertip of the glove is connected to the computer, which is in turn connected to the rods. The surgeon uses one hand to control the equipment, the other hand to operate. The electrosensitive glove emulates the surgeon’s hand movements exactly. If the surgeon makes a sewing movement, it causes the rod attached to the needle to sew. If the surgeon wants to make an incision, he can do so using his index finger. All he has to do is tell the laser that it is operated by the index finger. Then, whatever the surgeon does with his index finger, will be duplicated by the laser. The surgeon can manipulate his instruments with as much free- dom and dexterity as if they were directly in his hands. But the con- trol system gives him a steadiness of hand far greater than could otherwise be achieved. Not only do the holders follow his finger ex- actly, but he can feel the resistance to movement and the weight of the tools as if he were holding them. If he wants to hold an instru- ment in an exact position, he has only to turn it off. The instruments can be of wide variety in size, so he can limit the size of the incision necessary to reach difficult areas. The main television camera can be controlled by head move- ments so that, when the surgeon looks at something, so does the camera. The side cameras are always on, so he can check them at will. He can adjust the lens to give the exact picture needed. 46 INTERFACE ACE CIRCLE INQUIRY NO. 18 JUNE 1980 A little farfetched? Not really. Some of these things are in use now. For instance, a camera that looks where you do has been used in military applications for some time. Let’s now turn our attention to the most important piece of equip- ment — the electrosensitive gloves. They will be lined with elec- trodes and have a few microprocessors and other integrated circuits embedded in them. These devices will be used for only one thing: producing output that can be interpreted by the computer. Each surgeon will have his own glove, and his own interpretation module, “trained” to respond to signals from his arm. Each movement of each finger will be interpreted by a group of elec- trodes. As the electrodes sense movement, a signal will be sent to an internal microprocessor (or glove) where a movement signal is created. This signal is sent to the interpreter and from there to the main com- puter for action. As computers operate in picoseconds, and humans still operate in seconds, the system should be extremely sensitive. This leads us to my final prediction. If you remember, last month’s column had a short comment about direct “brain link” communica- tion with a computer. I foresee the time when you will be able to operate a variety of devices simply by thinking about them. Such an application in surgery is fascinating. Imagine a situation where a surgeon has been trained to have a certain physical feel for operating. During his schooling he has an opportunity to practice his skills using both computer simulation and some of the methods in use today. He starts his internship by watch- ing other surgeons at work and assisting in minor surgery. All minor surgery is performed in the manner previously described. Even- tually, he is allowed to participate in minor surgery until he exhibits a prescribed degree of proficiency. At this point, he takes his last series of medical exams, and is awarded a degree in surgery. He is now allowed to perform minor surgery and diagnose problems for referral to a master surgeon. I foresee the time when you will be able to operate a variety of devices simply by thinking about them. Such an application in surgery is fascinating. At some point, he may decide to become a master surgeon. Again, there will be a series of time and proficiency requirements to meet, and he will have to specialize in a particular field. This last phase of training will be the most difficult because it involves a great deal of mental discipline. However, most people who begin the course will probably complete it. Remember, by definition we are dealing with a group of overly intelligent people, starting with phase one, who find this training both exhilarating and fascinating. It seems to me that at least some of the training involves total isola- tion. It won’t do for the surgeon to be distracted when making an in- cision. He must learn to concentrate precisely on what he is doing. Let’s look in on a 21 st century master surgeon at work. He sits at a control desk surrounded by TV screens. He wears a skullcap device connected to the computer. He carefully looks at the main camera console which is connected to his skullcap so it moves when he does. The patient is bathed in pale blue light so the brighter lights of the in- struments show each phase of the operation with great precision. The small white penlight on the laser indicates exactly where the beam will fall when it is turned on. He wants to check the path of the incision so he thinks to himself, “penlight on; at my direction, hover over the patient and follow this path. Starting here, make an incision one centimeter deep and four centimeters long. Record this for the laser.” Addressing the laser, he thinks, “laser, start at the specified point, and make the recorded incision.” This sounds terribly slow, but remember he is thinking. The en- tire operation can be done at a modified speed of thought. It will require an enormous amount of discipline, practice and training; but it can be done.D SOFTWARE CP/M® OSBORNE AND ASSOC. , business software in CBASIC-2 £** / u ^ 1 MANUAl / * General Ledger \ * Acct. Rec./Acct. Pay v S59/S19 * Payroll w/Cost Acct ) each Buy 2 get 1 free S118/S57 All 3 plus CBASIC-2 S199/S71 CBASIC-2 1 $89/514 DIGITAL RESEARCH CP/M ,i; 2.2forTRS-8r Model II $149/524 CP/M* 2.2 for Northstar. S149/S24 WORDSTAR by MicroPro . S399/S24 WHITESMITHS *“C'’ Compiler S600/S29 •Pascal (includes ‘ C”). . S750/S44 •SELECTOR III-C2 $269/519 PEACHTREE business software in Microsoft BASIC source code. t General Ledger t Acct. Rec t Acct. Pay \ 5399/565 t Payroll \ each t Inventory All 5 plus WORDSTAR $1995/5349 TRS-80® MODEL II CP/M* 2.2 Latest Version 5149 ELECTRIC PENCIL II Standard Printer $249 Diablo. Qume. NEC 5279 APPLE II® VISICALC® by Personal Systems 5122 VISA • MASTERCHARGE ORDERS ONLY - CALL TOLL FREE 1-800-854-2003 ext. 823 A Calif. 1-800-522-1500 ext. 823a For information write or call: THE DISCOUNT SOFTWARE GROUP 1610 Argyle Ave., Bldg. 102 Los Angeles. CA 90028 (213) 461-3127 CP/M users specify disk systems and formats Most formats available Add S2 50 postage and handling per each item California residents add 6% sales tax Allow 2 weeks on checks. C 0 0 ok Prices subject to change without notice All items subject to availability P S. — We want to be your software source. Give us the opportunity to beat any nationally advertised price ! CIRCLE INQUIRY NO. 22 480x512 Computer-generated Compact two-board bask system Features: • Highest possible quality 480x512x8 digital video image presently available on the market • Input capability from TV camera or other sources • Variety of synchronization chokes • 2 selectable video A/D conversion circuits • Choke of 1. 2, 4, 8, 16 or 32 bits per pixel • 32K-byte image memory on the basic system • 32, 64, 1 28 & 256K bjke system capacity • LJghtpen input • Photographk trigger control input • Software selectable system parameters • Interfaces for TRS-80 and other processors • Comprehensive line of accessories, monitors and support software ■ = SEND FOR FREE CATALOG H DIGITAL GRAPHIC SYSTEMS 441 California Ave., Palo Alto, CA 94306 415/494-6088 JUNE 1980 CIRCLE INQUIRY NO. 20 INTERFACE AGE 47 ARE Selector III C-2, produced by Micro Ap in San Ramon, CA adver- tises heavily as an “information management system.” Promotional literature stresses a distinction between the accounting function and the “storing, processing and reporting of information,” and it is these latter functions that Selector is designed to perform. In substance, what Selector does is give the user a multi-key “indexed” access to files which the user defines. Through this ISAM -type of file management, the user can input, sort, extract and manipulate data, producing custom reports to specific user needs. As such, this puts Selector in the class of a practical “data base management system.” Selector runs under the CP/M operating system, using either CBASIC or M BASIC. It needs at least 25K of memory space, which means that with CP/M, plan on at least a 48K system. It is designed for an 8080, 8085 or Z-80 microprocessor and two disk drives (while it is possible to get by with one, it’s very difficult and time-consuming). Disk formats supported include those found on Dynabyte, North Star, Micropolis (Vector MZ), TRS-80, Cromemco and others. The system costs about $350, including a diskette and 50-page manual. A word of warning — Selector is not designed for the novice. Since sophistication and power have the price of complexity, this program should not be a first purchase. However, once a micro- computer user has a handle on the power of CP/M and under- stands how to use CBASIC, there should be no hesitation. Selector is distributed in source code, which means that changes can be made to the program before they are “compiled” and used. This also means that revisions are easy to incorporate. Micro Ap is one of the few distributors of software that takes the responsibility of “updates” seriously. Before launching into programming with Selector, the user should spend a little time reviewing what a database is, and how such things are usually handled on micros. Since the system comes in source code and has tremendous flexibility, some work on the user end will be necessary for implementation. Selector programs are all menu driven and have the following general divisions: A. DEFINE — a set of programs used to create, delete, change or modify files. Included are utilities to get files from disks, and put them back (rather than having to use PIP). B. SET — Selector operates under the program philosophy that a user loads all the information into the database and then “selects” information using the parts of the database that are needed. The SET series allow the user to define what is to be selected and what order they are to be selected in. C. SELECT — Once a user has defined the commands to select data, the Select programs use these criteria to generate a set of file pointers — a set of directives created as the result of the programs. These pointers are, in essence, indexing schema or an ordering list used to place the files in logical order for the user’s application. D. REPORT — A series of programs which produce the desired output from the database. A command set is created determin- ing which records shall be included, what their order shall be and what format they shall be printed in. This order can be saved for continued use, and everything from mailing labels to complex reports can be generated. E. UPDATE — A series of programs that provides the information management. A menu allows the user to select whatever activity is desired, including making new entries, retrieving information (including a “dump” of the database), a sequential record recall, changing information, deletion of records, etc. The user can create files with predefined sorting and report criteria for later (and continued) use, or the programs can be used to pro- duce reports on a one-shot basis. It is possible to link other pro- grams into the Selector input and output cycles so the user can create production programs to enter large amounts of data. As an extra bonus, the Selector package contains applications programs including sales, inventory, accounts receivable and payable, disbursements, client records, and appointments. The pur- pose of all these ready-to-run programs is to show that the applica- tions contained within Selector can go beyond the traditional database concept. The experienced programmer will have no difficulty using Selec- tor as a “nested” utility to generate some elegant applications pro- grams. For the programmer with a limited background, the ex- amples and the source code are more than sufficient. DEFINING THE DATABASE The Selector programs used to define files are completely menu driven. It is relatively easy to set up new files. The user is asked for the filename, the number of fields and the program sets up a little table that the user completes in order to define data elements. There are six data types which are supported: Alphanumeric Numbers to 999.999 + /- Alphanumeric key (1st 10 characters) Numbers to 999,999.999 + /- Numeric key (up to 999,999.999+/-) Numbers to 999,999,999.999 + /- The most obvious question from a novice user is “why so many types of data?” The answer is the effect upon memory requirements and the corresponding limitations on the systems as to the number of transactions that can be accommodated in a session. Note that decimals of up to three places are supported — which is more than adequate for any business application. Additionally, the program contains edit capabilities. The nature of a data element is “built-into” the file so that report writing is simpler. Types of editing include: Dates (as either mmddyy or yymmdd, displayed with hyphens, such as 03-15-80) Area code (nnn) Phone number (nnn-nnnn) Social security number (nnn-nn-nnnn) Decimal point precision from 0 to 3 Currency ($NNNN.NN) After the size, in terms of number of characters and data type, has been determined by the user, Selector will compute the actual record size and display this information. Thus the user has an oppor- tunity to know the size of the packed records before implementing it. The programmers at Micro Ap were apparently aware of a user’s typical reaction to large file size. By providing the actual size and giving the user the opportunity to change the record before it is “set in concrete,” the program does a great service to all overly zealous programmers. Selector’s manual contains an ominous warning about record sizes: “Bear in mind that if the actual record size being read or put is not equal to the assigned record size, the program will ‘bomb.’ Files that are open at this time will probably be corrupted. . .” This is more a function of CBASIC than of Selector, however. Another limitation imposed upon Selector by CBASIC is the maximum record size. Since CBASIC limits all strings to 255 bytes, the maximum length of a record is 255 bytes. Previously, the function of “select and sort sets” was touched upon. Selector uses these files to do the actual record selection and construction of the pointer list to the selected records. The “select set” is created in a fashion analogous to the selection of record parameters. Again, the program is entirely menu driven, so the operator need only answer questions as they appear. Promo- tional literature advises that “multiple Boolean selections” can be made. For the non-mathematician user, this has less than crystal- clear meaning. What it encompasses, however, is a selection meth- odology that allows any combination of the following tests to be used to select a record: 48 INTERFACE ACE JUNE 1980 Equal to Not equal to Less than Between two values In a list of Greater than Contained in a field Less than or equal to Greater than or equal to As many as 24 criteria can be entered, and can have multiple criteria for any field. The tests can operate as test 1 and test 2 or, alternately, test 1 or test 2. That’s where the Boolean reference comes in. Once a record test is constructed, it is used to create a list of those records that pass the tests. This list, essentially an index, is called a select set by Selector. There is room for about 1 25 record pointers for every 1 000 bytes of free memory space. In a 48K system, this allows about 2250 records selected from the file. In use, the select set tests the data file sequentially, testing each field designated as a test field against the test value according to preset criteria. If the tests match, a pointer to that file is placed in an array. REPORT The report section of Selector is superior to most database management systems. The program allows the report to be generated in a number of sequences, including report sequence, ascending or descending key sequence using any key field or in the order specified by a “select set.” “Report” also has an option to have the report include summaries, sub-summaries and even the capability to prepare minima, maxima, averages and of course grand totals. To top it off, the report program numbers the pages. A common misconception concerning report generators for database management systems is that they allow the user to con- struct any kind of report. Of course this is fallacious, since a report is generally limited to a list of elements of the database, with totals and subtotals. Elaborations of the report function require custom soft- ware to be written. With Selector it is feasible, since the user has ac- cess to the file structures, and can list the “report” program to ex- amine parts of it. Through thoughtful planning, the informational reports generated by Selector should be sufficient. One feature of CCA’s data management system missing from Selector is the ability to define one field as a computational result of another field. In other words, field 2 might be defined as field 1 x 1 5%. This feature is useful in some database applications; however, with proper programming of the input programs, the necessity for this kind of “internal computation” is largely minimized. □ ^ OOQOOOOOO>OOOOOOOOQOt O OOOOmOOmOQOQOQQQ9QPOPOQmQOQQmQQMP gMQmmMMmMMMj?£ TRS-80® CP/M® & CBASIC® BUSINESS SOFTWARE LOW-COST MOD II DISK EXPANSION . . . over 610,000 bytes/disk with our CP/M . . . plus many other features. Find out why ours is the Better Business Buy! Model II CP/M (rel. 2.0) $250.00 Model I CP/M (re. 1.5).. 1 50.00 CBASIC 95.00 APH (Automated Patient History) .1 75.00 RESIDENTIAL PROPERTY ANALYSIS system 300.00 MAGIC WAND® Word Processor 400.00 RM COBOL® (Z80 code) 750.00 Osborne & Assoc. CBASIC source programs — O&A Payroll w/Cost Accounting $250.00 O&A Accts. Rec./Accts. Payable . . . 250.00 O&A General Ledger w/Cash Journal . 250.00 O&A CBASIC books for above (each). . . . 20.00 Send 30C SASE for CP/M Users Group software list & free “CP/M Primer”. ® MAGIC WAND is a registered Irademark ol Small Business Appliraliuns. trx ® KM COBOl is a registered trademark ol Rvan MrFarland Corp ® I KS-80 is a registered trademark ol Radio Shoe k a t ai*dv < ompanv » CP'M is a registered trademark ol Diqtial Researi h <*: CBASIC is a legislerpd trademark ol Soliwarn Ssslenis s g C IE [R (N L E (T L^lC ts (714) 848-1922 ic. oj 8041 NEWMAN AVENUE • SUITE 208 • HUNTINGTON BEACH. CALIFORNIA 92647 e INTERFACE AGE BACK ISSUES 1979 □ MARCH — Curing the Music Business Blues; An Income Averaging Program; Help Your Computer Keep Its Cool; M6800 Program Relocator □ APRIL — Industrial Robots; Protype; A Low-Cost. High Quality Word Processor; High Performance. Low Cost New Printer; 6502 Memory Test Program □ MAY — Sales Record Keeping; Two Views of Credit; The iCOM 451 1 Hard Disk System; A Simplified Method of Binary Number Subtraction □ JUNE — The Automated Home; Computing Lumber Costs; Interfacing a Numerical Chip to the TRS-80; Home Poison Control □ JULY — Need A System Cabinet? Build It; Saving Time While Keeping Minutes; Integrated Circuit Testing for Hobbyists; Flexing with Flex Utilities □ AUGUST/SEPTEMBER — Handicapped Byte Back; Changing Acres to Yards to Rods. . .; Speed Up Your SWTP 6800; Make the Computer Work for You □ OCTOBER — Personal Computers in the Classroom; A Classroom Record Keeper; Alpha Micro Review; APL for the Z-80 □ NOVEMBER — Selecting Your First Computer; The Pathology Bookkeeper; Cromemco’s System Three; The Sport of Sorting □ DECEMBER — The Computerized Artist; Volume Projection for Small Business; A Color Television Interface; Using TRS-80 Codes 1978 □ FEBRUARY — Medical Applications □ APRIL — Robotics □ JULY — New Products Directory □ AUGUST — Games □ SEPTEMBER — Educational Applications □ OCTOBER — Hardware Index □ NOVEMBER — Software Index □ DECEMBER — Book Index 1977 □ MARCH — New Products Directory □ MAY — Floppy ROM #1 □ JUNE - Bionics □ JULY — New Products Directory □ AUGUST — Astronomy/Astrophysics □ SEPTEMBER - Floppy ROM #2 □ OCTOBER — Meteorology/Environment □ NOVEMBER — New Products Directory 1976 □ APRIL — Teleprinter Maintenance □ OCTOBER — Basic Diet Planning □ NOVEMBER — New Products Directory ALL ISSUES AVAILABLE IN LIMITED QUANTITIES Send check or money order payable to: INTERFACE AGE Magazine, P.O. Box 1234, Dept. Bl, Cerritos, CA 90701 U.S. /Canada/Mexico: $3.00 Each Foreign: $5.00 Each # ' Send back issues checked to: . Exp. Date_ Signature Name Address City State Zip _ Country JUNE 1980 INTERFACE AGE 49 By Roger Garrett Contributing Editor A CRIME FIGHTING SYSTEM Before I got into the computer field, I spent about a year and a half as an investigative assistant with the New Haven, Connecticut police department. One of the other aides was developing a system to assist in the apprehension of bank robbers. Essentially, she took a map of the roads around each bank and marked off the roads most likely to be used by a suspect when fleeing from the scene of the crime. She then identified those intersections where the positioning of police officers or roadblocks would probably be most effective in capturing the suspect. The system was effective as far as it went; but it had many faults. Any change in street status (such as changing from one-way to two- way or road construction obstructing passage) rendered her maps obsolete. Whenever a bank opened a new branch, someone had to draw up a new map. Her set of maps only handled bank robberies; if someone decided to hold up a jewelry store, the maps were useless. What was really needed was a real-time interactive computer-based suspect apprehension system. Let’s assume we have a computer with a large database system and a color graphics terminal with light pen and keyboard. The data- base includes two forms of information. The first form comprises a graphic representation of the city streets that can be displayed and moved around on the color monitor. The other form is a set of data describing those streets; traffic direction (one-way, two-way, dead end), street linkages (how they intersect), traffic flow (approximate speed based upon time of day, day of week, and season of the year), and traffic control (where stop signs, traffic signals, etc. are and how they operate). The light pen and keyboard allow the dispatcher to enter data into the system, which responds by producing appropriate displays. He can, for example, indicate to the system that a crime has occurred at some point in the city, (any point, not just at banks) and the system will display that area of the city. With special color codes being dis- played in real-time, the computer assists the dispatcher in deploying police personnel to apprehend the suspects. (See figures 1 through 5.) With such a system, the computer no longer remains just a tool but becomes a partner, actually helping the operator with intelligent suggestions. FIGURE ONE The dispatcher receives a call that a crime has occurred at a jewelry store on the corner of Third Avenue and Fifth Street and that the suspects were seen leaving the scene of the crime in a north- bound vehicle. The dispatcher picks up his light pen and touches the reset button followed by the vehicle north and crime location but- tons. If he can visually locate the appropriate position on the dis- played map, he touches his pen to that point. Otherwise he types in the crime location on his keyboard. The system responds by dis- playing a red square at the location on the map. FIGURE TWO The system plots the possible routes that the suspects may take. The yellow area indicates the areas that could have been reached had the suspects been running rather than riding in a car. The green sections indicate where a vehicle could have traveled in the elapsed time. The blue area indicates a 1 -minute projection into the future joaodbczo OSOdDCD ^rWCJaaoooooa , L Tyooypoooo J D\J /OOiUOOOOO 1m otzmsooooo \ 0)00000000 ooooooooo oaooo Od| /MOOOOOQ □□l (OODDCOr i it )f\\ \\V^nnrnrirnrnf~irnri CRIME LOCATION: Third Ave & Fifth St INTERCEPTION POINTS: FRIDAY JAN 6 80 8:56:03 A.M. N W — j E IME ™«OL OFFICER . R .° 0 A £ upuiri F 1 LOCATION 1 LOCATION] LOCATION ° N DELETE „ A e P n P S!d RESET Figure 1. 05)01 noo LD ao toz O 0 )Cd □□□□ □□□□ □□ □□ □□□□ cdoanooooo □□□□□□OQO □□□□□ »□□□□□] PODDCO nnnnnnnnn CRIME LOCATION: Third Ave & Fifth St INTERCEPTION POINTS: Fifth Ave & Seventh St Sixth Ave & Second St Seventh Ave & Fifth St FRIDAY JAN 6 80 8:57:42 A.M. N w — | E «uaau^ ON FOOT ADO DELETE hYndId | WESET | Figure 2. 50 INTERFACE ACE JUNE 1980 ospc ICD ]□□□ DO IOOOOO 0)00000000 □□□COCDDO □til #□□□□□□ □□l KOODOO i— ir- if\ \VCTl — 11 — ii — 11 11 II >1 — II II — il CRIME LOCATION: Third Ave & Fifth St INTERCEPTION POINTS: Eighth Ave & Sixth St Car 6 Eighth Ave & Fourth St Officer 15 Sixth Ave & Second St " FRIDAY JAN 6 80 8:59:34 A.M. LOCATION LOCAT.ON VEHICLE 0N FOOT *°° DELETE HENofb RESET Figure 3. ooacoc njooooooo uoooooooo vooynoo ' zoJooo 300000 0)00000000 aaoaaaooD ' &□□□□□□ POODOOr Bnnnnnnnnn CRIME LOCATION: Third Ave & Fifth St: Apprehended INTERCEPTION POINTS: FRIDAY JAN 6 80 9:06:48 A.M. N W — | E CRIME p *J« OL OFFICER Slock wfmicle on foot location | LO cati 0 h | location | L oc°fiON VEHICLE ° N °° DELETE Figure 5. oaoaBcz) 0 1)00000000 □aoooaooo »□□□□□) POODOOr annnnnnnnnl CRIME LOCATION: Third Ave & Fifth St INTERCEPTION POINTS: Third Ave & First St Elm St & Oak Dr Car 12 Eighth Ave & First St FRIDAY JAN 6 80 9:02:17 A.M. N W — | E CRIME LOCATION PATROL CAR LOCATION OFFICER LOCATION ROAD BLOCK LOCATION VEHICLE ON FOOT ADO DELETE APPRE HENDED I R fc5ET Figure 4. where the suspects’ vehicle could travel. In determining the green and blue areas, the computer takes into account that the vehicle was traveling north along Fifth Street when last seen, that certain roads are one-way streets, and also the approximate traffic flow rates for the time of day, day of week, and season of the year. The system has also displayed several yellow-centered green squares as potential interception points and has noted their locations at the bottom of the screen. These represent intersections which the computer has determined would be best for positioning police per- sonnel in order to apprehend the suspects. FIGURE THREE A few more moments have passed and the system continues to update the display. The recently displayed green -centered red squares indicate positions of police personnel who have called in and reported their positions, which the dispatcher then enters as data either via the keyboard or the light pen. As the computer updates the suggested interception points, it can now take into consideration the estimated amount of time necessary for an officer to get to that loca- tion. It also displays the police car or officer which it suggests be sent to the interception points. The dispatcher can accept the sugges- tions and appropriately deploy the personnel or make his own deci- sions. Of course, as a given police department gains confidence in the system, it might allow the system itself to do the dispatching via voice synthesis over the police radio. FIGURE FOUR Several officers are dispatched and arrive at crucial intersections, effectively blocking escape routes. If the computer has access to the city’s traffic light system, it might even halt traffic in some areas in order to slow down or stop the suspects. Note that there is relatively little blue on the map now, indicating a good chance of apprehension. FIGURE FIVE Finally, after dispatching car 1 2 towards the corner of Elm and Oak, the officer reports that the suspects have been apprehended, indicated by a clearing from the display of all symbols except the crime loca- tion, apprehension symbol, and police personnel symbols. When the dispatcher touches his light pen to the reset button, the symbols disappear and the system is ready for the next incident. □ JUNE 1980 INTERFACE AGE 51 There's only one small computer that can give you your heart's desire: Sorcerer from Exid y. You don’t mean to be greedy. But you’re part of the new “Gimme” generation with big plans for the future. You expect your computer to be flexible enough to keep up. Only one system on the market today can do that: the Exidv Sorcerer. Z80 & Plug-In ROM Software Packs The Sorcerer uses the popular Z80 microprocessor as its “brain-center.” Combine this with Exidy’s plug-in ROM PACs™ and you’ve got a dynamite computing center right at your fingertips. Our ROM PACs are special plug-in software cartridges that turn your Sorcerer into all sorts of different computer centers instantly. Just pop a STANDARD BASIC PAC™ into Sorcerer, and you’re ready to program any application in high-level BASIC. Or plug in a DEVELOPMENT PAC™* and you have a low-cost Z80 software development system costing less than $1700. If words are your life, consider our WORD- graphics, and the capability to define up to 128 of your own letters and symbols, give you an amazing flexibility to do things you simply can’t accomplish with any other computer. Our S-100 expansion unit lets you take advantage of the many useful S-100 periph- erals currently available from dozens of manufacturers. And that includes everything from music and speech synthesizers for the hobbyist to appliance controllers for the home and the latest Winchester disk drives for small business computer applications. It’s also easy with Sorcerer to add on a printer, an acoustic coupler, or a modem, because our system has built-in parallel and RS232 Serial I/O ports (features normally offered as add-on options by most other small computer makers today). PROCESSOR PAC™ It turns your Sorcerer into a modern text editing and formatting system for less than $2600. This car- tridge offers many benefits, including: automatic text wraparound, search and replace com- mands, and powerful macro programming. And, to make it easy for you to put your own particular application software in ROM, we’ve also provided an EPROM PAC™ It has sockets for four user- supplied EPROMs with capacity up to 16K bytes. S-100 Expansion & 12 8 User-Defined Symbols The Sorcerer was created to withstand “Gimme” attacks. It’s designed to be the hub of a busy computing operation now, and tomorrow when your demands increase or change. Sorcerer’s standard features, such as high-resolution USER’S ma rsr B«isc j <| Soi, SysIc'fK #« >r 1 1 1 < > S< >l < ■HP?’ The best of Sorcerer Price* $1295 (16K model) $1395 (32K model) $1495 (48K model) $ 499 $2995 $1150 $ 419 $ 99 $ 199 $ 49 $ 300 $ 145 Hardware □ The Sorcerer Computer: 1 6K RAM expandable to 48K. 4K ROM-resident operating system has built-in printer driver. 50-pin I/O connector for S-100 expansion. 25-pin parallel interface; 25-pin serial interface. Serial interface operates one or two cassette recorders. Graphic resolution of 240x512, 30 lines of 64 characters, 8x8-dot matrix. Character generator contains full ASC II set (upper & lower case), plus standard graphic symbols. User may define up to 128 characters. Keyboard is 63-key data processing type, plus 16-key numeric pad. □ Video Display: industrial grade 12-inch CRT (P31 phosphor). □ Display Disk: single unit package containing two quad density dual floppy disks (630K bytes) with controller and 12-inch industrial grade CRT (P31 phos- phor). Includes CP/M™ and Microsoft disk-extended BASIC. □ Floppy Disk Subsystems: single dual-density floppy disk (1 20K bytes) and controller in one package. Includes CP/M™ and Microsoft disk-extended BASIC. □ S-100 Expansion Unit: self- contained 10-amp power supply and motherboard with 6 card slots. Daisy chain units for more slots. Software □ Development PAC™ □ Word Processing PAC™ □ EPROM PAC™ □ Microsoft Disk-Extended BASIC □ CP/M™ Operating System 'U S. domestic prices only Subject to change without notice CP/M is a Registered Trademark of Digital Research SORCERER C< it 'UTEI Satisfy that urge CIRCLE INQUIRY NO. 29 When you discover the many exciting ways Sorcerer can satisfy all your “Gimme” urges, you’ll say: “I’m in sheer Exidy.” For the name of your nearest dealer, or additional information, write or call our Marketing Communications Department. DISK DRIVE WOES? PRINTER INTERACTION? MEMORY LOSS? ERRATIC OPERATION? DON'T BLAME THE SOFTWARE! Power Line Spikes, Surges & Hash could be the culprit! Floppies, printers, memory & processor often interact! Our unique ISOLATORS eliminate equipment interaction AND curb damaging Power Line Spikes, Surges and Hash. ♦ISOLATOR (ISO-1 A) 3 filter isolated 3-prong sockets; integral Surge/Spike Suppression; 1875 W Maximum load, 1 KW load any socket $56.95 ♦ISOLATOR (ISO-2) 2 filter isolated 3-prong socket banks; (6 sockets total); integral Spike/Surge Suppression; 1875 W Max load, 1 KW either bank $56.95 ♦SUPER ISOLATOR (ISO-3), similar to ISO-1 A except double filtering & Suppression .... $85.95 ♦ISOLATOR (ISO-4), similar to ISO-1 A except unit has 6 individually filtered sockets .... $96.95 ♦ISOLATOR (ISO-5), similar to ISO-2 except unit has 3 socket banks, 9 sockets total . . . $79.95 ♦CIRCUIT BREAKER, any model (add-CB) Add $ 7.00 *CKT BRKR/SWITCH/PILOT any model ( CBS) Add $14.00 PHONE ORDERS 1-617-655-1532 L±zJ Electronic Specialists, Inc. 171 South Main Street. Natick, Mass. 01760 Dept. IF CIRCLE INQUIRY NO. 26 MAKE VOUR BASIC BETTER FOR BUSINESS Developing business applications without keyed file support is like producing a play without the right cast — you can expend needless time and money, and end up giving an inadequate performance Enter MAGSAM " MAGSAM picks up where your BASIC leaves off by providing it with a powerful Keyed File Management System that's quick and easy to use. The result is applications that do exactly what you want them to — instead of only what BASIC allows you to. Supporting Cast MAGSAM’s advanced features and capabilities include: • Random, sequential, and generic access by key • Secondary indexing with any number of keys • Key and record deletes with automatic space reclamation • Dynamic file allocation and extension • Complete compatibility with BASIC files • Interactive tutorial program • One year update service The versatile MAGSAM file management is now available in two major versions. MAGSAM IV. the new high performance assembler version, is ideal for business applications in which response time is critical. Complete with an interface for CBASIC. MAGSAM IV is $295. MAGSAM III is the standard version and is in use world wide Written in BASIC, it, is available for CBASIC. Microsoft BASIC, or Micropolis BASIC for $145. The MAGSAM manual alone is $25 You're the Star MAGSAM is available immediately —off the shelf So you can begin saving time and money now while providing your customers and clients with applications that truly meet their needs. Send for a free brochure telling the full story on MAGSAM. or see a demonstration at your computer dealer today. Another Business Solution from: fUlAE Micro Applications Group 7300 Caldus Avenue, Van Nuys. CA 91606 CALL FOR ARTICLES INTERFACE AGE is seeking articles on hardware and software in the areas of medical and educational applica- tion, special functions of microprocessors, telecom- munications and video graphics, both screen and hardcopy. The payment rate for articles ranges from $20 to $50 per pub- lished page. Pieces describing company projects or products will carry the company byline, but no payment is offered. Submittals should include an abstract, outline and stamped return envelope. Manuscripts should be typed, double spaced with one-inch margins. Minimum length is four pages, unless programs are in- cluded. Photos should be numbered and have a brief description attached. Tables, listings, etc. should be on separate pages. Computer listings should be printed using a new ribbon to assure good reproduction. Authors are requested to submit a statement of their background and expertise. The publisher assumes no responsibility for artwork, photos or manuscripts. No acknowledgement is made unless accompanied with a stamped return envelope. L For article submission or more information, write Editor, ^INTERFACE AGE Magazine, 16704 Marquardt Avenue, Cerritos, CA 90701 . Please do not phone. EfW 54 INTERFACE AGE CIRCLE INQUIRY NO. 46 JUNE 1980 MEASUREMENT SYSTEMS ANOjCQNTROlS INC MODEL DMB 6400 •TTLDM-250 ■ . . -v -_> r r MEASUREMENT systems S. controls incorporated '\rr-- r 1 «»« 348-3662 4 REM FOR CHATSWORTH DATA 5 REM LAST REVISION 7/30/79 6 REM VERSION 2. 1 10 CLR : NL=55 : D I MCCX < NL > CCX<0>=NL 14 PR I NT "73" 15 PR I NT "THIS STTEST SCORING" PROGRAM WILL" 16 PRINT SCORE EACH STUDENT'S TEST." PRINT STUDENT'S NAME, # OF CORRECT" AND WRONG ANSWERS, TEST PERCENT," AND A LIST OF PROBLEMS MISSED." PRINT A FREQUENCY TABLE OF TEST" SCORES. " COMPUTE THE MEAN TEST SCORE AND THE" STANDARD DEVIATION." PRINT AN ITEM ANALYSIS OF EACH TEST" QUESTION. " PRINT A BAR GRAPH OF TEST SCORE" DISTRIBUTION. " PRINT EACH STUDENT A NOTE GIVING:" A> STUDENT'S SCORE" B> # OF QUESTIONS MISSED" C> A BRIEF REMARK ABOUT EACH WRONG" PROBLEM" 45 GOSUB500 PRINT " WlWW" 60 PR I NT "HOW MANY PUPILS WERE TESTED? 61 PRINT":«UWW" 62 PR I NT " HOW MANY QUESTIONS ON THE TEST? " ; : GOSUB20000 : J=VAL< VV* > = PRINT"73" 63 IFJ>100THENPRINT : PRINT" 3100 QUESTIONS IS THE MAXIMUM" : PRINT : GOT062 68 DIMSN$

,BS 69 DIMWP

, TS< J+2> , W< J> 70 DIMW1H 90 CA=634 : GOSUB 10000 95 I FPEEK < 50000 > =0THENGOSUB40000 104 PR I NT "WOW" 106 PR I NT "DO YOU WISH TO INPUT RESPONSES TO MISSED"; 107 PR I NT "QUEST IONS ?" 108 PR I NT : PRINT : PR I NT " 3PRESS V OR N "; 1 09 GETQ$: : I FQ$= " " THEN 1 09 110 I F Q$= " N " THEN 145 111 PRINT"73" PRINT PRINT 112 PRINT" TYPE IN THE RESPONSE YOU WISH THE" 114 PRINT" COMPUTER TO MAKE TO WRONG ANSWERS." 115 PRINT: PR I NT "TYPE A S< RETURN >■ WHEN YOU HAVE FINISHED." 116 PRINT : PRINTTAB<9> "DO NOT USE ANY COMMAS." 117 PRINT : PRINTTAB<9> "TYPE 'N' IF NO COMMENT." 119 PRINT PRINT" EXAMPLE ": PRINT 120 PR I NT "YOU HEED TO STUDY THE MATERIAL ON PAGE" 121 PR I NT "57. LOOK AT PROBLEM #5 CAREFULLY." 124 GOSUB500 125 FORS-l TOJ : GOSUB2000O : P= VAL < VV* > : PR I NT " 73" 128 PR I NT "73" PRINT PRINT PRINT PRINT 129 PR I NT "RESPONSE TO QUESTION #";S 132 PRINT 133 PRINT"?"; GOSUB20000B*=VV* 135 IFB*=" N"THENB*=" NO COMMENT." 140 NEXTS 145 PR I NT "73" 150 PRINT" SINPUT KEY CARD", 1 55 GOSUB30000 PRINT: GOSUB6200 160 IFR*O n "THEN 145 170 ANS=L* 200 F0RXS=1T0P 210 PRINT"73"; 215 PR I NT "SINPUT STUDENT CARD", 220 GOSUB30000 225 I FST>0THENPR I NT PR I NT " SFLEASE RE-ENTER THE SAME CARD" : G0T0215 228 PR I NT : PR I NT " STUDENT ID-"; 230 GOSUB6000 : SN* < XS > =L$ 232 GOSUB6200 234 IFR*<>" "THEN210 259 PR I NT "73" 260 FORS=lTOJ 270 IFMID$=MID$THEN290 280 W=W+1 WP=WP+1 = W1HCXS, WP >=S 290 NEXTS 300 C**J-WP : TS*TS + 1 320 NEXTXS 340 GOSUB990 • GOTO 1010 400 PR I NT " : FORX= 1 T023 : PR I NT : NEXTX : PR I NT " SDEF'RESS ANY KEY FOR NEXT PAGE" 405 GETR$ : IFR$=" "THEN405 410 PR I NT "73" RETURN 500 PR I NT " fl" : FORXT= 1 T02 1 : PR I NT : NEXT 510 PR I NT " SPRESS < RETURN)" 520 GETA* : I FA*= " " THEN520 530 PR I NT " 73" : RETURN 990 PR I NT " 3STUDENT " TAB < 23 > " SI TEMS " 1000 PRINT " m RIGHT"; 1001 PR I NTTAB < 8 > " sWRONGS 3AVG. "TAB <23> " 3*11 SSED" 1005 RETURN 1010 FORS=lTOP 1020 C=J-WP : AV=INT =T=0 1030 PRINTSN* 1040 PRINT" "CTAB<8>WPTAB<14>AV"X"; 1045 PRINTTABC19); 1050 FORN=lTOWP 1055 IFW1X=0THEN1090 1060 PRINTW1X; :T=T+1 1070 I FT <5THEN 1 090 1071 T =0 1080 PRINT PRINTTAB< 19); 1090 NEXTN 1 092 GOSUB400 : GOSUB990 1110 NEXTS 1112 PR I NT "73" 1115 GOSUB500 : GOSUB 1120: GOTO 1 25W 1120 PRINT: PR TNT "ITEM ANALYSIS" = PRINT = PRINT Now! North Star Application Software! North Star now offers application software for use on the HORIZON! Now you have one reliable source for both hardware and software needs! The first packages avail- able are: North Word — NorthWord is a simple-to-operate word processing system designed for use with the popular North Star HORIZON. NorthWord enables you to increase office efficiency and cut document typing time and cost. NorthWord incorporates the most sought-after word processing fea- tures: easy editing, on-screen text formatting, simultaneous document printing, and much more. NorthWord can be integrated with other North Star software packages to produce customized letters, labels and reports quickly and efficiently. MailManager — MailManager enables you to com- pile and maintain complete organ- ized mailing lists. Lists are easily accessible and can be compiled with a great deal of flexibility. Entries, corrections and deletions are easily made. The North Star MailManager can print your list on individual enve- lopes, on mailing labels, or in com- pact summary form. InfoManager — InfoManager is a powerful list- oriented, data management system. It will accept up to 50 categories of information for each record and has the ability to select and sort before printing. The North Star InfoManager has power and flexibility for many applications: product inquiry, in- ventory, customer/client records, calendar reminders, and as an easy way to fill in often-used forms. GeneralLedger — General Ledger and Financial Reporting, two programs in one, maintains general ledger accounts based on such input as checks, bank deposits and journal entries, and uses the information in the general ledger to produce custom- ized financial statements and financial reports. NorthWord is the central building block for all the North Star applica- tion software to follow. Packages now being tested include other accounting and professional appli- cation packages. For more informa- tion or a demonstration, contact your local North Star dealer. CIRCLE INQUIRY NO. 50 V V NoithStar North Star Computers, Inc. 1440 Fourth Street Berkeley, CA 94710 (415) 527-6950 TWX/Telex 910-366-7001 60 INTERFACE ACE JUNE 1 980 | 1240 PRINT" SITEM #"TRB<7)"SW CORRECT "TRB< 18) " 3W WRONG " T RB < 27 > " STi CORRECT" 1 245 PRINT: Q=0 RETURN 1250 FORS=lTOJ 1260 C=P-W :RV=INTCTAB<20>WTAB<27)flV"X" 1275 G=Q+1 : IFQO15THEN1280 1 276 GOSUB400 : GOSUB 1 1 20 1280 NEXTS 1290 PRINT GOSUB500 1300 PRINTTAB<9)"»=;UMMflRV OF TEST SCORES" = PRINT 1310 PRINT" STTEST SCORE"," M OF TESTS" 1315 PRINT Q=0 1320 FORS*JTO0STEP-1 1330 I FTS < S > =0THEN 1 350 1340 PR I NTT RB < 4 > ST RB < 23 ) TS < S ) 1350 NEXTS 1355 GOSUB500 1356 SU=0 : M=0 1360 FORS=lTOJ : M=M+TS >-M : SQ=D*D : SU=SU+SQ • NEXTS 1390 SD=SQR < SU/P ) 1400 PRINT " : PR I NT : PR I NT : PR I NT : PR I NT : PR I NT : PR I NT 1420 PR I NT "THE MERN TEST SCORg IS"M= PRINT 1430 PR I NT "THE STRNDRRH DEV I RT I ON IS"SB 1440 PRINT :GOSUB508 1500 PRINT"58" PRINT: PRINT PRINT: PRINT 1550 PRINT" SffiRR GRRPH OF TEST SCORES" : PRINT : PRINT 1552 M=0 : XB= 1 1555 IFJ>13THENXB=J/13 1556 R=INT : IFA >MTHENM=TS < S > 1580 NEXTS 1590 PRINTSTR$; 1600 FORS=JTO0STEP-1 1610 I FTS < S > "*" ; 1630 NEXT 1 650 PR I NT : M=M- 1 : I FM< 1 THEN 1 680 1660 GOTO 1590 1680 PRINT 1685 FORS=JTO0STEP-XB 1689 IFS<10THEN1 694 1690 PRINTSTR*; 1692 GOTO 1760 1694 PRINT" "STR*; 1700 NEXT 1710 PRINT GOSUB500 1800 IFQ$="N"THEN1 864 1801 V-l 1802 FORS-1TOP 1803 ONVGOTOl 804, 1807 1804 PRINT"*" F0RX9-1T011 = PRINT : NEXTX9 : PR INTTRB< 14> " SGRfiDE REPORTS" 1 805 PR I NTTflB < 1 4 > " ************* " • GOSUB500 : PR I NT " a" 1 806 PR I NT : PR I NT = PR I NT : PR I NT : GOTO 1811 1807 PRINT"*" : F0RX9=1 TG21 : PRINT • NEXTX9 1808 PRINT" 3PRESS < RETURN) FOR NEXT STUDENT REPORT."; 1 809 GETfl* : I FA*= " " THEN 1 809 1810 PRINT" 73" PRINT PRINT: PRINT: PRINT 1811 PRINTTRBC5) "STUDENT # "SN*

", PRESS < RETURN)" 1812 PRINTTRB<5> "TO DISPLRV VD UR TEST RESULTS." 1813 GETR* I FA$= " " THEN 1813 1814 PR I NT "73".: V=2 1815 RV=INT < >*100/J+. 5) 1820 IFWP 1850 N*W1X :PRINTB* " SCONGRRTULRT I ONS " : PR I NT 1875 PR I NT "VOU MRDE R 100X ON THE TEST. ": GOTO 1861 6000 REM GET STUDENT ID 6005 L*="" 6010 FORD= 1 T05 6030 Z2=CCX2THENZ l=Zl/2 : Z2=Z2+ 1 : GOTO6050 6060 L*=L$+RIGHT$5 3 a ■ ° 8 a) Q. " 0) Q) < 3 co* o 3 - ? til < < CO 0) CD g.3 ^ o O 3 D q N c S- F 00 o £ r o H ~ K P.3 CO o erg o 0 9- Q »§' Q3 V> ZT ’ 0) . ai cr © o P o ? W PT 03 co O = o = £• o IT pr | | g o < q 3 o 5, CD q 3 3 !* 3 “ I 3 (Q 3 o 0 a S o Q> 3. O C/5 CD 3 ? w "9. 3. cr ® Q 9 X (Q a> 3 o> 3 $ ZT O zr 0) a cr CD w _ 3 — ■q O CQ 3 13 zr q 0 03 * 9 a geo’ O' — — I a? r * q IT ^ cd o q 17 CD 30 0 CO 111 £3 1 2.0 s aPB So s °'og 03 O < 3 3 CD °-TD O OWD O 3 q 3 ^ § ■o ; q CD 0 P tp “II 3: o ® 0) ^ O P i cr o c 0 ® ? o 0 3 0 CD 0 "O CD 3 6 CD* T* CO (A ?Q CD f a 0 o D Q. o CD 0 CD < S d q Q- q. o co O TD ~ 5 3 0 ) cS 8 Jal |s-z 3 2m “ 0 Z O > O o is 5. Q. CD o C A ZT CD : w q o §1 ?i ro Xi jgS. ® a ii 03 . -g -® 3 — 03 3- O co q 03 F o © c o - PF Q. CD CQ O : C 03 I Q.' 3 0 PE 03 ^ X- &la 3 /< 0 - of I §p 3 a 3 0 ° 2 < q CD o § O -* Z5 g; g T, cd q P *< C/5 O 5 ’ < 3 CD o -o n q d w O q OD o * -o’ g 03 0 3 03 o o a 3 5' P CD q 05 q-o 2 a ©< O CQ 3 § CD ^ 3 3 ~ (Q CD C O 0 8 a *■ o 0 O 0 3 3 TD 3- C 0 =f. 3 3 O CQ 0 . a . cr • *< z o q CD z = ^r § 0 CQ. co o Z (A -• si ~ $ O 0 PD CD 5 o ^5 J o o 3 CD 2} CD O o O' O 0 1 I "n D O s D H 0) H O w H 0) I m o 5 H O 0) c/> "0 m > * 6340 N=CCX < X > RND3968 6350 I FN=0THENC® : = " — " 6360 I FN= 1 28THENC$= " fl " 6370 IFN=256THENC$="B" 6380 I FN=5 1 2THENC$ : = " C " 6390 IFN=1024THENC$= M D n 6400 I FN=2048THENC$ : = " E " 6410 L*=L*+Ct 6415 NEXTX 6420 FORD=0TOJSTEP5 6430 F0RY=1 T05 6440 D$=" " 6450 I FD+V= J+ 1 THEN6530 6460 I FD-*-V< 1 0THEND$= ” " 6470 I FD+V>9flNDD+Y< 1 00THEND^= r ' " 6480 PRINTD*.; 6490 PRINTD+Y;MID$:; N 6500 NEXTV : PR I NT NEXTD 6530 PR I NT " «•’ : F0RX- 1 T022 : PR I NT : NEXTX 6532 PRINT" SIDEPRESS SPACE BAR TO CONTINUE. DEPRESS " 6534 PR I NT " 3 ,ANV OTHER KEY TO RE-ENTER LAST CARD, "j 6536 GETR$ : IFR$=" "THEN6536 6540 RETURN 10000 REM READ A CARD 1 0005 FORX=0TO 1 65 : READY : POKECfl+X , Y : NEXT : RETURN 10010 DATA120.216, 160,0, 169, 195,209,44 10015 DATA208, 5, 200, 209, 44, 240, 7, 169,64, 141, 150,0 10020 DAT ASS, 96, 160, 6, 177, 44, 200, 2G0, 209 10030 DATA44, 16,7, 169,32, 141, 150,0,88,96, 133 10040 DATA 165, 198, 165, 177,44, 133,164, 169,204, 141 10050 DATA76, 232, 200, 162,0, 134, 160, 134, 161, 169 10060 DATA16, 44, 18,232,240,84,44,79,232, 16 10070 DATA79, 112,242, 173,79,232, 162,236, 142,76 10080 DATA232, 73, 63, 5, 161, 133, 161, 173,79,232 10090 DATA 162, 204, 1 42, 76, 232, 73, 63, 5, 160, 133 10100 DATA160, 44, 79, 232, 16, 44, 80, 221 , 165, 160 10110 DATA10, 10,70, 161,106,70, 161, 106, 170, 165 10120 DATA161 , 41 , 15, 145,44,200, 138, 145,44,200 10130 DATA 198, 164,48, 16, 198, 165, 16,7, 169 10140 DATA16, 141, 150,0,88,96,44,79,232,48, 159 10150 DATA 169, 0, 141 , 150,0, 165, 164,240,5, 169, 1, 141, 150,0,88,96 20000 REM INPUT ROUTINE 200 10 V=1 : V*= “ " : W*» " " 20020 GETV* : I FV*= " " THEN20020 20030 PR I NTV$ ; : I FV*=CHR$ < 20 > THENV=V- 1 : W$=LEFT$ < W* , V > = V^= " " : GOTO20020 20040 V-V+l :W*«VV<=+V* 20050 IFV*OCHR*<13>THEN20020 20060 IFW$=" " +CHR^ < 1 3 > THEN200 1 0 20070 W$=LEFT$ < VV* , V- 1 > RETURN 30000 REM CARD INPUT ROUTINE 300 1 0 F0RZ= 1 T0NL CCX C Z > =0 : NEXTZ 30020 NA I T5947 1,128: SYS CARD 30030 I FST=0THENPR INT" 5J0. K. " 30040 RETURN 40000 REM CHANGE TO OLD PET 40010 F0RX=1T033 : READY, Z : P0KECA+V, Z : NEXT 40015 RETURN 40020 DATA7, 126, 12, 126, 18, 12, 19,2,25, 126 40030 DATA29, 126,35, 12,36,2,40,53,42,53 40040 DATA44, 126, 46, 52, 56, 43, 58, 49, 84, 43 40050 DATA86, 49, 98, 48, 100,48, 109,48, 113,49 40060 DATA1 16, 49, 120,49, 124, 126, 128, 126 40070 DATA131 , 52, 135,53, 141,12, 142,2 40080 DATA153, 12, 154,2, 156,52, 162, 12, 163,2 63000 REM PROGRAM END READY. S ystem of the Month The Escon Selectric Interface By Hampton G. Miller and Andrew Klossner An IBM Selectric typewriter can serve as an output device for almost any computer when interfaced via Escon’s Selec- tric Converter Model E-A. This product includes a factory assembled universal adapter, together with a modification kit which enables the mechanical operation of the typewriter to be controlled by a program. The kit is easily installed in a few hours; no drilling or other permanent modification is made to the Selectric. The adapter can be any one of a number of standard output devices, eliminating the need for special hardware or software. The Selectric has established a solid reputation in the field of office typewriters. With the classic golf ball typehead replacing the usual typewriter keybars, a wide variety of type fonts and special character sets are available. At slightly over ten characters per second, a Selectric cannot match speed with the faster daisywheel or dot matrix printers, but it is an excellent output device. The universal interface consists of a small box of elec- tronics, including a 6502 microprocessor, which accepts ASCII characters from the computer and translates them into mechanical movement of the elements within the Selectric. Options for connecting the universal interface to a computer include TTL, 20 ma, and RS232 serial interface, with three handshake protocols and sixteen baud rates; TTL parallel with three handshake methods and selectable polarity; and two IEEE-488-1975 modes. An interface unit which plugs directly into an S-1 00 bus is also available. The interface is a separate unit from either the Selectric or computer; it is con- nected by cable to both, and draws power from the typewriter. The first modification step is to cut and strip the electro- magnet wires. Then three rods controlling shift interlock, switch interlock, and return interlock are removed from the typewriter to make room for the electromagnet assemblies. Next the “select” and “function” electromagnet assemblies are installed, and the three interlock rods are replaced. The “case shift” electromagnet assembly is installed; then all electromagnet wires are spliced into the cable to the interface unit, and the cable is tied to the frame. Now an ohmmeter test is conducted. When it passes, the unit is ready for power and can be tested by the interface unit. To connect the interface to the computer, the interface and handshake methods must first be chosen. Handshaking occurs when the interface buffer becomes full or when it later empties. When the buffer becomes full, the interface signals the com- puter that it must stop sending characters; as the buffer empties, it signals the computer that more characters may be sent. These signals may be in the form of logic lines which change 62 INTERFACE AGE JUNE 1980 There are two sides to our story. Side One The DISCUS “2+2 Quad -Density Hardware factory mounted in a cabinet with power supply, fully-buffered S-100 single-board controller, and inter- connecting cables. All fully assembled, system-tested and fully warranteed. You get the speed and efficiency of 1.2 megabyte- per-diskette memory. . . and you get it for 0.13$ per byte. Now you can use your S-100 system to tackle big jobs. Because the DISCUS™ 2+2 Quad-Density Disk System puts 1 .2 megabytes of fast-access memory on your side for just $1545.00 complete. With the DISCUS™ 2+2 System complete means complete. You get a full-size (IBM- compatible 8") double-sided/ double-density disk drive, Side Two The DISCUS2+2 Quad -Density Software 1.2 megabyte quad-density hard- ware is only one side of the story. The DISCUS™ 2+2 System price includes all the fully-interfaced, high-performance software you need to take full advantage of your quad capacity. The system includes our exclusive BASIC-V™ virtual disk BASIC, which allows you to address your quad- density diskettes as easily as main memory. The operating system you get is the widely accepted CP/M* 2.1 . And you get our powerful DISK-ATE text editor/assembler; The most advanced software development tool available. Micro-Soft BASIC 5.1 and Micro- Soft FORTRAN are available as options. Both run under CP/M* 2.1. Check out the full system price of DISCUS™ 2+2 Quad against any other floppy disk system at your local computer store. At $1545.00, we think you'll take sides with DISCUS™ 2+2. If your dealer doesn’t carry THINKER TOYS products, write MORROW DESIGNS Inc., 5221 Central, Richmond, CA 94804. Or call (415)524-2101 9-5 weekdays (Pacific Time). MORROW DESIGNS 7 Thinker Toys *CP/M is a trademark of Digital Research. JUNE 1980 CIRCLE INQUIRY NO. 67 INTERFACE ACE 63 CT 102 -A CLOCK/ CALENDAR SI 00 Dus FEATURES • Time of doy in hours, minures G seconds • 24 hour rime formor • Month G doy dote function • Crystal controlled rime base • Fosr b slow set functions allow rapid setting of rime G dare • Ourpur is torched BCD • Simple read instructions allow simple interface to BASIC, CPM, ere • Will run with 4 MHz processors The T102-A rin • Optional battery backup capability used for ony c • Low battery drain in bock-up mode 5-1 5 MA Time & dote. / depending on volroge method allow • Con be located or any group of 4 I/O language to t port addressed Outputs ore la • Basic E software example provided the digit then • SI CXD bus signals used PWR. SOUT. 5INP FastserGslow: • Easy interface to ony SI 00 bus fast rime G do processor The T102-A rime dote board can be used for any application requiring Time G dote. A simple to use reading method allows the simplest BASIC language to be used Outputs are latched BCD. just select the digit then read it. Fast set G stow set functions provide for fast rime G dote setting. Optional bortery backup capability. A simple to construct charging circuit is included in the manual. Any 8 to 18V unregulated DC source is all that is required for backup. The T 1 02 comes assembled and tested. Each board includes an easy to use manual with basic software programs for setting and reading rime and dare Price $149.95 COMPU/TIME P.O. BOX 5343 HUNTINGTON BEACH. CA. 92646 (714) 536 5000 CIRCLE INQUIRY NO. 15 New 248-page book includes all the former TIS workbooks except “PET Graphics.” Provides information for both ROMs and a comprehensive index. Only $14.95. Also from TIS WB-3 PET Graphics $4.95 Software products on cassette or floppy disk with complete instruction manual. Each $24.95 (cassette), $29.95 (diskette). SW-1 MAIL B mailing list system SW-2 CHECKBOOK record SW-3 ACCOUNTS keep track of who owes you how much SW-4 MEDIT create and maintain date files SW-5 CALENDAR appointments, meetings at-a-glance TIS P.O. Box 921, Dept. IA Add $2 ($5 foreign orders) Los Alamos, NM 87544 shipping and handling PET and CBM are trademarks of Commodore Business Machines state when the signal is being sent (hardware handshaking), or characters which are sent to the computer (software hand- shaking). Most peripheral interfaces use one of these methods, so there should be little work involved in configur- ing the computer hardware or software for Selectric operation. PERSONAL EXPERIENCE One of the authors used the Escon system to interface a vintage Selectric to a Heath H1 1 (LSI-1 1 based) computer. Modifying the typewriter and connecting the interface took less than eight hours. A TTL level parallel interface (which previously ran a paper tape reader/ punch) was used, and the standard paper tape punch software properly drove the terminal. SELECTRIC OPERATION When a Selectric is manually operated, a key is pressed and a character is typed. As the key is depressed, code bails are coaxed into position and engage latches to select one of four possible tilts and eleven possible angles of the typeball. The shift key reverses the typeball, giving eleven new angles, for a total of 88 possible characters. After the latches are set, the power cam is actuated, causing the typeball to tilt, rotate, and strike the paper through the ribbon. The typeball carrier then advances one column to the right and is ready for the next character. The non-printing controls include the shift, carrier return, index (line-feed), space, and tab keys. Under control of the Escon interface, the code bails are directly manipulated and the print cycle is initiated using electromagnets. The return and space functions are also per- formed in this manner. Another electromagnet assembly controls the shift operation. The microprocessor handles the exact timing requirements for carrier return, shift, and between-character delays, and overlaps shifting with spacing when possible. It contains a 51 1 character buffer to allow for surges of output; handshaking suspends computer output when the buffer needs time to empty. As well as standard ASCII (including upper and lower case), the interface responds to special codes which can sus- pend output to allow manual typing or typeball changing, sound an optional alarm, stop typing and clear the internal buffer, and continually print the contents of the buffer. The interface methods and self test off-line pattern generation are controlled by DIP switches in the interface unit. INSTALLATION To assist in the modification of the Selectric, the unit in- cludes a 37-page assembly manual, a 23-page book of illus- trations, and a 28-page reference manual. Escon will per- form the modification for labor and shipping costs, promis- ing to complete within two weeks. CAVEATS A few cautions regarding the system’s limitations are in order. Unlike the IBM 2741 computer terminal based on the Selectric design, the Escon/Selectric unit does output only. Pressing keys will cause typing to occur, but will not transmit any information back to the computer. Thus, the system is a printer, not an interactive terminal. The system does not perform the tab, backspace, or return-without-index operations. This reduces its usefulness for word processing where backspace is required for underlining. Experience suggests that a Selectric without an impression control would not be as easily converted as the later models. Finally, if a Selectric is turned off while it is typing, it may become damaged. CONCLUSIONS The Escon system is easy to install, interfaces to almost any computer, and provides reliable, professional looking hard copy at a low cost. It is an excellent investment for a personal computer hobbyist or a business person with a small system. □ 64 INTERFACE AGE JUNE 1980 A little dull around the edges? Routine? Predictable? Boring? Maybe all it needs is a little Interlude. Interlude is the most stimulating computer game ever conceived It combines a computer interview, an innovative programming concept, and a one-of-a-kind manual to turn your love life into exciting, adventurous, delicious fun! CIRCLE INQUIRY NO. 39 ow’s your love life? Interlude is: romantic . . . playful . . . outrageous ... a fantasy. Interlude is: ■ Wet fun on a hot summer night. (Interlude #21) ■ A surprise on the way home from dinner. (Interlude #42) ■ A bubble bath that ends with a bang. (Interlude #78) ■ An evening to rest while she does all the “work.” (Interlude #25) ■ The most romantic of evenings. (Interlude #84) ■ A new twist to an old subject. (Interlude #69) ■ Just watching her. . . (Interlude #57) ■ An erotic fantasy! (Interlude #33) With over 100 Interludes, you can satisfy all levels of interest and desire. Each Interlude is fully described in the manual, and the more elaborate ones are detailed with regard to settings, props, and mood-enhancing techniques. But we’ve saved a few super Interludes for that very special time when your interview indicates you’re ready! At that time, you will be introduced to one of several Interludes held secret within the computer. (When you learn secret Interlude #99, your love life may never be the same again!) Interlude can give you experiences you’ll never forget. Are you ready for it? The Ultimate Experience. Interlude Interlude, 10428 Westpark, Houston, Texas 77042 I’m really ready! Rush me □ For the Apple II (16K) # □ For the TRS-80 (Level II-16K) ## □ $14.95 for cassette .copies of Interlude today. □ $17.95 for diskette. Add $1.50 for shipping. Texas residents add 6% sales tax. My check (payable to Interlude) is enclosed. □ "Charge my □ MASTERCHARGE □ VISA account. Account No. _ . . _ Expiration Hate All charge customers must sign. Signature Namp Aae AHHre<;<; City State Zip "CHARGE CUSTOMERS: Order by phone toll-free! 1-800-327-9009 Ext. 306 # Apple II is a registered trademark of Apple Computers, Inc. # # TRS-80 is a registe red trade mark of Rad io Shack , a T andy Co. The Dust Writer By Michael J. Hodgetts University of Tennessee At the University of Tennessee Rehabilitation Engineering Center in Memphis, we work with severely handicapped children to find ways to get around the effects of their handi- caps. Alaine Marty is a little girl who has cerebral palsy which prevents her from using her legs, arms and vocal organs. She communicated with her teachers by eye movements, looking left for yes and right for no. But a faster way to com- municate that would not require an extra person’s coopera- tion was needed. The Electronics Department was asked to adapt a new electronic device, called a TIC, which was devel- oped at Tufts-New England University Medical Center. With this device, a switch is closed once to select one of several rows of characters. The scanner then stops in that row, and the user hits the switch a second time to select a character from the row. The character is then displayed on a small CRT. We were asked to replace the switch with a photo-cell that could be operated by a head mounted light-stick (a special #.*• type of flashlight). Since it is hard to look at a letter and then move to point the light at it, the final solution was a head- mounted mercury switch. But in the process of her trying the aiming method it became obvious that she could aim the light very accurately. An idea formed. Why not wear a head mounted light pen and use a screen two feet away as a keyboard? For low power and portability the screen was constructed from sixty-four LEDs and the light pen was designed to respond to the fast rise time of the light from the pulsed LEDs. This new device permits her to communicate much faster than ever before and she may compose messages or school work on an out- put device without anyone else helping. She calls the unit Aunt Martha. Aunt Martha uses a CRT terminal for output and is not portable. For the system to be portable, a lightweight device is needed. It must also draw very little power, be readable in daylight and must be low in cost. For this purpose it should display at least three or four lines of thirty-two or more char- acters. In the interest of safety, voltages should be kept below thirty volts. The device should have the potential for graphics display as well as upper and lower case characters. Let’s look at the technology available. * 1 . Cathode-Ray Tube Terminal Too much power consumption, weight and size. Also a CRT uses high voltages, and washes out in daylight. 2. Neon Again too much power consumption, high voltage and daylight washout. 3. Vacuum Fluorescent Power consumption is lower in small displays but day- light washout is still a problem and large displays are not readily available. 4. Light Emitting Diode Power consumption is too high and daylight viewing is not good. Also the cost for a large display is excessive. 5. Liquid Crystal Display Someday this may be the answer but for now the cost, availability, and driver complexity mak£ it impractical. To give the system some mobility, we designed a device that is lightweight and draws very little power. It can be mounted on the front of a wheelchair with little trouble. The Dust Writer draws no power except when actually writing a new character. It is lightweight, small, inexpensive, and may be viewed in bright light. The principle of operation is the same as that of the Etch- A-Sketch® toy made by Ohio Art. We actually used the powder from an Etch-A-Sketch toy in our device. The con- figuration is that of a drum plotter with the stylus on the in- side of a glass drum. A stepping motor drives the stylus horizontally with a threaded shaft. Another stepper drives a cam for vertical motion and a solenoid lifts the stylus from the glass when necessary. Line feed is accomplished with a small D.C. gearmotor that turns the drum. The powder in the bot- tom of the drum erases the old printing so that fresh media is always fed up to the drawing field. Many mechanical arrangements are possible and we plan to try some others to increase the speed of the device. The present system is fast enough for our purpose but a dot matrix print head would make the device useful in applica- tions requiring greater speed. The electronic drive circuit is extremely simple and uses only nine packages. Software controls every move of the device through seven bits of an eight-bit output port and two bits of an input port. The input bits are used only to initialize the vertical and horizontal positions. The print head starts at the left and bottom positions as determined by a sensing switch and LED — photo transistor device respectively. After initialization the position of the stylus is maintained in the microcomputer. The device will be used with a C-MOS 1 802 micro when the system is finished. An 8080 based system is being used for testing until the cross assembler is finished which will make the 1 802 more convenient to use. CONCLUSION The system will eventually control a powered wheelchair, making mobility and communications available through microcomputer technology. □ Program on Page 140 68 INTERFACE ACE JUNE 1980 Gmaphics. The Paper Tiger puts mare Me into erorything you do. The Paper Tiger strikes again. With a DotPlot™ graphics option that lets you make the most of your Apple II J TRS 80* or other personal computer. With DotPlot and available software drivers, you can print screen graphics, draw illustrations, write block letters, plot charts. And DotPlot includes an expanded, 2K-byte buffer. That's not all. Every Paper Tiger gives you 8 software-selectable character sizes. 80 and 132 column formats. Multi-part business forms handling. Forms control. Reliable stepper- motor paper drive. Adjustable width tractor feed. Continuous duty cycle operation. Plus lots more. t Apple II is a trademark of Apple Computer Inc. jTRS-80 is a trademark of Radio Shack, a division of Tandy Corp. The Paper Tiger costs only $995. The DotPlot option only $99 more. But don’t let these low prices fool you. Because the Paper Tiger is rugged enough to stand up to the . most demanding printer-plotter requirements. ; mm For the name of the Paper Tiger dealer nearest you, call toll-free 1-800-343-6412 (except Massa- chusetts, Alaska, and Hawaii). JB Integral Data Systems, 14 Tech Circle, Natick, MA 01760. (617) 237-7610. CIRCLE INQUIRY NO. 36 Integral Data Systems, Inc Looking at Micro-Based Business Systems By Tom Fox, Systems Ecfife When we started to research late last fall, it seemed easy enough: write an article comparing all of the available micro- computer systems. Even living in the computer industry, we were unprepared for the huge number of machines that ex- ist, and the complexity contained within each one. Under- standing how even one computer works, and unearthing its weak and strong points, is a week’s work. Doing it for 30 or more systems, while trying to find some common ground for comparison among them, gave us cause for thanks that we only do this once a year. It made us appreciate some of the headaches the ultimate purchaser must endure in selecting a computer system. PICKY, PICKY A question you may fairly ask is: How did we arrive at the particular choice of computer systems represented here? In large part, we selected them the same way you might: look- ing at magazine advertisements, poking around in computer stores, even answering a radio commercial. In researching this subject, we visited over 20 computer stores in half a dozen cities in three states. We wanted to see what systems were actually available to a retail purchaser. We limited our consideration to those systems that survived multiple traumas of conception, development, production and distri- bution to reach the retail level. We realize that in demanding such stiff qualifications, we would be limiting ourselves to machines from last year’s state-of-the-art; it takes at least that much time for a new product to fight its way through derelopment, production and distribution. Because of this, we have included two or three of the most promising new computer systems that offer something special in the way they work or are being marketed. Large or small, sophisticated or simple, we tried to pick a representative sample of available equipment. It was clearly impossible to include them all. We are emphasizing microcomputer systems intended for use in small business situations. Where there was a choice, we picked a system that utilized a hard disk drive as its primary storage medium. Although we’ve seen a lot of powerful floppy disk-based small business systems, we think that a hard disk drive in the ten-megabyte or larger size is more suitable to the bulk of serious business computing. CATEGORICALLY SPEAKING The systems can be categorized in many different ways: number of bits handled at once by the microprocessor (eight or 16), bus compatibility (S-100, SS-50, etc.), capacity or type of disk (floppy or hard), single- or multiple-terminal, BASIC- or Pascal-based, types of application software sup- plied and, of course, price. Let’s begin with computers utilizing eight-bit microproces- sors, followed by the generally higher-performance and more expensive 1 6-bit units. We can further break down the eight-bitters into the actual design of microprocessor utilized, since there is a certain amount of software compatibility within the groups, and only a limited amount of program interchangeability outside of each family. 70 INTERFACE AGE JUNE 1980 By far the most popular microprocessor used in small business computer systems is the 8080 and its derivatives, rhe 8085 and Z80. The latter two operate at a faster rate than grandfather 8080, and the Z80 sports an enhanced instruc- tion set at the machine-language level. There is a great deal of already-written software that will run on all three. The sec- ond group of eight-bit systems we will look at are those based on Motorola’s 6800 microprocessor chip. Actually, both of our entries this month use the advanced 6809 version. Finally, we will look at a pair of 6502-based systems. In the industry, this microprocessor design has been somewhat of a sleeper, and would probably be largely unknown if the Apple personal computer had not been such a spectacular success in the marketplace. Sixteen-bit microcomputers share far less commonality than their eight-bit siblings; systems in this category tend to be more distinguishable from each other. We have two 8086-based designs, one that is a near copy of Digital Equipment Cor- poration’s LSI-1 1 , and three others that are as different from each other as they are from the rest of the entrants. 8080 GROUP OF EIGHT-BIT MICROCOMPUTERS Altos Sun-Series Decipher the model number for this product, and you have a thumbnail description of the computer itself. The ACS8000-6/MU4 is an Altos Computer Systems’ series 8000 with six serial input/output ports and a multi-user disk operating system configured for four simultaneous users. To keep all of these terminals satisfied, a generous 208 kilo- bytes (KB) of Random Access Memory (RAM) is fitted inside a tabletop enclosure that also houses the Central Processing Unit (CPU) and dual eight-inch, single-sided, double density floppy disk drives. It takes a separate box to hold the single- platter Winchester-technology hard disk drive and its 14.5 megabytes of data. If more storage is needed, a dual-platter unit can be substituted, and a second single- or dual-platter unit can be added at the same time or later. The multi-user disk operating system is Altos’ own AMEX, which will run CP/M™ compatible programs and lan- guages. Included in the price of AMEX is a hardware floating- point arithmetic board that considerably speeds up mathe- matical computations. Other than a rather complete selec- tion of programming languages and programmer tools, Altos has chosen to leave the fitting of applications programs to their dealers and end-user customers. Cromemco System 3 In the November 1979 issue of INTERFACE AGE, we published an in-depth description of the System 3. Since then, Cromemco began shipping these computers with double-density floppy disk drives, without increasing the price for doubling the standard storage capacity to over a megabyte. Cromemco is one of the few survivors of the vicious decimation of S-100 board constructors. They owe their current strength to careful attention to product quality, documentation and innovation in new designs. The ten-megabyte HDD hard disk add-on is the sealed-media type, so the floppy disk drives have to be retained to extract backup copies of programs and data from the hard disk. Cromemco offers more variations of BASIC (five at last count) than any one programmer will ever use. All of Cromemco’s software, including a unique structured FOR- TRAN language called RATFOR, is created by an in-house programming staff. If Cromemco is strong in systems soft- ware, they are far from being a power in applications pro- grams. Their two releases so far — a small Data Base Man- agement System (DBMS) and two successive versions of a Word Processor — have been greeted with only lukewarm enthusiasm by users. In common with nearly every other computer discussed this month, the retail dealers are only too happy to fill this gap with a wide variety of stock and custom programs that will run on the System 3. Heath H89 The WH89 is the lightweight of this roundup, both in terms of price and probable utility in a business environment. It is limited to 48 kilobytes of memory and a single mini- floppy diskette drive, although we understand that Heath in- tends to add a dual 8” floppy disk option later this year. The WH89, with its dual Z80 processors, is certainly fat in the CPU department. The WH89 is actually a WH19 “smart” CRT terminal with a single-board CPU and 5 !4” floppy disk drive tucked into the unused corners. Accessories include three different printers, including an attractively-priced $795 dot matrix device. Software is limited to a disk operating system with Benton Harbor BASIC or the option of the more capable Microsoft BASIC (an additional $100). The operating system is a “must buy” option that will add $ 1 00 to the list price. Heath’s new word processing program is so new we haven’t seen it running as yet. It lists for $495, but you can take advantage of a $300 discount if it’s delivered with the new daisywheel character printer. This latter device is a re- labeled Diablo 1640RO shown in their latest catalog at $2895. Remember when you could buy a Heathkit hi-fi amplifier for $79? The Heath Co.’s new owner, Zenith Data Systems, has big plans for the WH89-CS. Zenith is well along in its plan to market an identical Z89 throughout the world via established computer stores and franchises. Their goal is to have Z89s displayed at 40% of the computer retail outlets in the United States within six months. Industrial Micro Systems Series 8000 An article in the December 1979 INTERFACE AGE de- scribed the Series 8000 as a solid, middle-of-the-road repre- sentative of the 8080 group. Industrial Micro Systems is a hardware manufacturer, and their expertise has made the Series 8000 a robust and reliable computer. The manufac- turer depends on outside specialists for software, with a choice of four separate operating systems. CP/M is the most often asked for, and many CP/M-compatible applications have made a cozy home in Series 8000s. The Series 8000 comes in an Industrial Micro Systems desk-style work station with the best maintenance access- ability we’ve seen. (The manufacturer has made cooling fans standard equipment subsequent to our carping about the lack thereof.) Software is available to take advantage of the extended memory capabilities that have always been a part of the Series 8000 — up to a quarter megabyte in multi-terminal systems. A new 64-kilobyte dynamic memory board is avail- able, breaking a long-time Industrial Micro Systems tradition of building only static RAM cards. You can now add up to two Control Data 90-megabyte Phoenix cartridge disk drives to a Series 8000. A Phoenix-only system (no floppies) lists for a reasonable $ 1 0,000 or so. Intertec SuperBrain The SuperBrain is a new breed of desktop computer that appears at first glance to be merely a CRT display terminal. Two double-density 5 !4” minifloppy disk drives are barely noticeable next to the display screen, but give up little in capacity: nearly 700 kilobytes if you opt for the QD double- track option. Some 40% of SuperBrain purchasers do just that, feeling the $1,000 premium well spent. If that isn’t enough, an 18-megabyte Winchester disk drive is available as an add-on for $4695. The SuperBrain is a single-board computer, meaning that it does not have the traditional mother board with plug-in slots for the CPU, RAM, etc. It does, however, have space inside for a single S-1 00-compatible board. This is often occupied by the hard disk controller, but you can add anything you like from the large collection of available products, so long as you curb your desire to a single board at any one time. JUNE 1980 INTERFACE ACE 71 The SuperBrain is happiest with CP/M-style programs, and a wide selection of languages and programming aids is available from Intertec which fits that mold. APL should be out in another month. This represents an ambitious under- taking, because it requires an expanded character set for both the keyboard and display screen. Since Intertec controls the production of every part of the computer’s terminal, it has the flexibility to add on such an enhancement. Micro V MICROSTAR Micro V is an ambitious, two-year-old California company whose corporate roster reads like a veritable Who’s Who of movers-and-shakers of this frantic industry. It has taken a careful look at the marketplace (even operating its own retail computer store for a time to get in touch with buyers’ re- quirements) and created the MICROSTAR small business system. It’s an 8085-based single-board computer that is normally equipped with a dual floppy disk drive and attractive desk-type enclosure. In common with other computer sys- tems which intend a serious assault on the business market, a hard disk option is available to increase data storage capac- ity to some 20 megabytes. Micro V allows its dealers to set end-user prices, giving them the freedom to add local soft- ware services into the price. But you can expect to pay around $10,000 for an average MICROSTAR system. The MICROSTAR’s strong suit is its software. Its devel- opers have taken the more traditional minicomputer-style approach of serving up a package of powerful programming tools integrated into the system. STARDOS, the multi-user disk operating system, includes an extended business BASIC interpreter with optimized file handling talents. Both sequential and random (direct) files are supported, and tools for Indexed Sequential Access Method (ISAM) are standard on the MICROSTAR. The system features one of the most capable DBMS-type programs (actually more of a stand- alone language) that we have seen on a micro. UPDATE, as it is called, allows data base entry and inquiry with English language commands. It comes standard, too. Micro V engineers have taken to calling the MICROSTAR the MICROSTAR I in anticipation of the soon-to-be- announced MICROSTAR II, an enhanced machine based on the 16-bit 8086 microprocessor chip. MicroDaSys millie The national computer magazines have been running ads inviting the reader to become an instant computer dealer by purchasing just one “millie” (at a discount price), adding any programs the reader can write or buy, and reselling the resulting system at any price he chooses. Some 6,000 per- sons responded to a month of ads, so the idea must strike a responsive note in hobbyist souls. Actually, this business practice describes what systems houses — and more lately computer stores — have been doing for longer than micro- processors have been around. MicroDaSys is presenting anyone with the moxie to try it, a factory-supported way to crash into the business on a shoestring. It’s a unique method for increasing sales. The millie itself is a repackaged System-Z, a Z80-based dual floppy disk drive S-100 computer that emphasizes its word processing talents to the extent that the only printer in the catalog is a typewriter-quality NEC Spinwriter. The CRT terminal is a new MicroDaSys design optimized to run either the popular Electric Pencil or ascending WordStar word pro- cessing programs. MicroDaSys’ only contribution to its fat applications software catalog is the Pencil Sharpener and Star Brightener. These are similar packages that enhance the basic word processing programs to allow the merging of mailing lists with text files to create computer generated “personalized” form letters. Think of millie each time you empty your stuffed mailbox in this election year. North Star Horizon North Star, four years old now, is an old timer in the world of S-100, Z80-based computer systems. In that time, it has shipped an incredible 10,000 computers and systems. To many, the Horizon is “the one in the wood box.” In truth, there is little else to distinguish it from many of the current crop of microcomputer systems. These words are not intended to slight North Star. After all, just where did all these “me too” computers get their best ideas? The HRZ-2-64K-D was selected by North Star as its most popular configuration. It includes 64 kilobytes of RAM, dual double-density 5 14” floppy disk drives with a total capacity of 360 kilobytes of data storage, a Soroc CRT terminal, and Anadex dot matrix impact printer. For an extra $1920 you can substitute the excellent NEC Spinwriter thimble-type character printer. A new 1 8-megabyte Winchester hard disk drive has recently been made available. If applications run to large data files with floppy disk storage, opt for the quadruple- capacity minifloppy drives and fit an extra pair for a total capacity of nearly 1 .5 megabytes. North Star DOS enjoys a popularity which challenges that of CP/M as a microcomputer operating system. Almost any computer store with a collection of software features many useful programs that were designed specifically to run on the Horizon. North Star itself does not offer any end-user appli- cations programs yet, but look for developments in this line. Pertec PCC2000 Pertec is the giant computer peripherals manufacturer that acquired Altair soon after the latter company unleashed the world’s first really popular microcomputer. The PCC 2000 is its direct descendent, and the most successful to date. It features a thoughtfully integrated all-in-one package that shows evidence of careful planning in the keyboard. The microprocessor is the 8085, which runs 50% faster than the 8080s which graced Altair’s earlier products. Pertec controls distribution as tightly as it does manufac- turing. Only factory-controlled stores can sell the product, and never with competing brands. It needn’t be so con- cerned. When compared with the current crop of widely- available small business computer systems, the PCC 2000 holds its own. Radio Shack TRS-80 Model II Here’s the monster in the lineup, if only because of the for- midable distribution network of over 7,000 retail outlets. We know a computer accessories manufacturer who received a multi-million dollar order — the biggest in that company’s history — to place just one floor sample of his product in each Radio Shack store. This tremendous base of retail outlets was solely responsible for making a mediocre product — the original TRS-80 — - the most widely produced com- puter in history. Well in excess of 1 00,000 have been shipped. The follow-up Model II is being marketed far more conser- vatively in only 1 50 Radio Shack computer centers and select stores. However, not a single one of the other 6,850 outlets will turn down an order. The Model II utilizes the same eight-bit Z80 microproces- sor chip as the Model I, but it’s stoked up a bit more in the younger product — 4 megaHertz as opposed to a lacka- daisical 1 .78 megaHertz. The Model II comes with a single 8” floppy diskette drive as standard, and we recommend that you fill up the RAM space to a full 64 kilobytes right away. None of the Radio Shack-supplied applications programs will run in the smaller 32-kilobyte version. The disk drive is the 72 INTERFACE AGE JUNE 1980 PROGRAM EPROMS WITH YOUR APPLE NEW FROM MOUNTAIN HARDWARE ROMWRITER TM Available through dealers worldwide Mountain Hardware, Inc. LEADERSHIP IN COMPUTER PERIPHERALS 300 Harvey West Bivd., Santa Cruz, CA 95060 (408) 429-8600 • Fast Firmware? Send me all the details on RomWriter. Name . Address _ City Phone . State. FASTER THAN A SPEEDING DISK! Firmware in ROM is as fast as your software in RAM, but in ROM it frees up RAM memory space for companion pro- grams. And, there never needs to be a LOAD from disk! Create firmware for your Apple* by programming EPROMs with RomWriter. FIRMWARE NOT SOFTWARE. Many frequently used programs really ought to be installed as firmware. ROM-based firmware permits a “power up and go” configuration. Use RomWriter to create firmware for peripherals such as printers or create program cards. By installing EPROMs that you have programmed on Mount- ain Hardware’s ROM- PLUS-*-™ board, program cards of up to 12K in length may be cre- ated. FEATURES. Programs 2716 EPROMs (5V). All 2K or part of the EPROM can be pro- grammed. Installs in a peripheral slot. EPROMs mount in a zero insertion force socket. A switch turns power off to the socket so EPROMs can be inserted or removed with- out powering-down your computer. A Write Protect switch is provided for programmed EPROMs while running. A $CFFF OFF switch to suppress this command during programming or RUNning. EPROMs can be RUN on RomWriter, or ROMPLUS+™ when creating firmware systems. SOFTWARE Virtually foolproof programming. Specify a Start and End address in the EPROM and either a Disk File name or a starting address in memory. Desired code will be BURNed followed by a VERIFY. Addi- tionally, existing EPROM code can be merged with desired changes to facilitate EPROM debugging. Easy data entry and high reliability are designed into RomWriter. Programmed EPROMs can be RUN while residing on RomWriter or can be transferred to Mountain Hardware’s ROMPLUS+ board .requires Applesoft firmware. THE RIGHT PRICE. See for yourself how firmware can enhance the power of your Apple system. Drop by your local computer store for a demonstration. RomWriter and Mountain Hardware’s full line of computer products are available at dealers worldwide. *Apple is a trademark of Apple Computer, Inc. CIRCLE INQUIRY NO. 49 dual-density variety, giving nearly half a megabyte of storage capacity. Radio Shack should be commended for including a little-publicized fact in their catalog: 15% of the first disk’s capacity is required to hold system -related programs, and is not available for data applications program storage. On some systems we know, this figure runs closer to 80%. Additional disk drives are housed in a separate cabinet that can be optionally installed in the pedestal of an integrated systems desk. A good selection of printers is available, in- cluding a brand new daisywheel character printer for word processing applications. The word processing program itself will come along in a few months. The new Level III BASIC is an enhanced version of the Model I’s Level II language (just keeping the rows of Roman numerals straight requires a computer). A generous reper- tory of 1 1 4 different BASIC and TRSDOS commands are at your fingertips with Level III, Model II. As for applications programs, only the general ledger, inventory control and mailing list are fully released. Accounts receivable has been recalled by the factory, and payroll was being released at press time. TEI 3400 TEI is a Houston, Texas maker of transformers and sheet metal products which earned an early reputation for making the best S-100 “box” in the industry. The manufacturer filled those boxes with computer cards and other parts, and it came to pass that a complete machine appeared under the TEI banner: the 3400 Business Computer System. In talking with the factory, we get the impression that it hasn’t firmly decided what direction its product should take. Early advertising featured 50-megabyte Calcomp disk drives and a snazzy two-piece CRT display terminal — both re- placed by other products before the first systems rolled off the assembly line. In the software area, the initially-promised proprietary multiprocessing operating system and compre- hensive business information management system have been replaced with the considerably toned-down statement that the product is CP/M compatible. Plans are to offer a proprietary 1 50 character-per-second printer, as well as several languages (BASIC, FORTRAN, COBOL), in addition to making up the lost time in the busi- ness software development project. It could happen. The company still makes the best S- 1 00 boxes around. Vector Graphic MZ People always confuse Vector Graphic with North Star, even though the two companies are separated by most of California. Both started the same year with S-100 board products (CPUs, memories, interface boards, etc.), and soon integrated them into their own boxes with a pair of vertically- mounted minifloppy disk drives on the right-hand side. Both companies have been very successful, and recently reported shipping some 10,000 computers out the door in the past four years. The similarities go further, but stop abruptly when one begins to look at Vector Graphic’s System B. This is the model MZ Z80 microcomputer system en- hanced with a terminal of its own design and a disk operating system (CP/M) complete with Level V Microsoft BASIC. The CRT display terminal goes by the humble name of “mindless,” which says that it does not have the smarts to decipher a character and display it on the screen in the usual fashion. Instead, the terminal depends on a separate S-100 board (supplied with the System B) mounted in the com- puter chassis. One advantage is that the terminal runs in the memory mapped mode, and can reflect display changes far more rapidly than even the fastest of ordinary “dumb” or “smart” terminals. Software includes a screen-oriented text editor for pro- grammers; an even more advanced word processor is avail- able for the business user. The well known Peachtree family of business programs (general ledger, accounts payable, accounts receivable, payroll and inventory control) comes standard at the quoted price, but you must pay extra for the printer required to utilize them. Zilog MCZ-1/70 Here’s an interesting story. Zilog — the supplier to the world of the ubiquitous Z80 microprocessor — has decided to come out with its own computer system and compete directly with its own best customers. The idea is not all that new, but it has never been carried off successfully. Years of effort in marketing industrial minicomputer systems has hardly made Texas Instruments a power in that field, and Na- tional Semiconductor recently cried “uncle” in its attempt to sell business computers. Both of these companies are giants in the semiconductor industry. Why have they failed to make a mark by putting their chips together into a stand-alone sys- tem? It’s a fascinating question, but too long to go into here. Today’s news is that Zilog is treading the same mine field, and depending upon its new MCZ-1 /70 to carry the day. The MCZ-1/70 is billed as a multiterminal COBOL busi- ness computer, although BASIC, FORTRAN, Pascal and PLZ are listed as available languages. The primary thrust is to provide a vehicle for the thousands of COBOL programs that are running on aging number crunchers. The multi- terminal capability (available only with COBOL) is just icing on the cake. A reliable 1 0-megabyte cartridge disk drive is the central data storage device, but standard-size floppy disk drives are available if you need them. Memory is limited to 64 kilo- bytes, which must make things a little tight when all five CRT terminals are alive. The terminals are Lear Siegler ADM-31 “smart” terminals with custom firmware programming. Although Zilog is still sorting out their marketing distribu- tion plans, a visit to their factory convinced us that they are fully committed to producing a great many of these systems. 6800 SERIES OF EIGHT-BIT COMPUTERS Smoke Signal Broadcasting Chieftain The 9822 is a model of the Chieftain line that features a 6809 microprocessor board. 48 kilobytes of Random Access Memory and a floppy disk controller in a nine-slot tabletop housing. The boards conform to the SS-50 bus protocol which was initially developed for the Motorola 6800 pro- cessor. This particular Chieftain also comes with a dual full- size floppy disk drive having a total capacity of nearly two megabytes. An additional pair of such drives can be fitted, along with the unlikely combination of four 514” minifloppy disk drives, yielding up to 7.5 megabytes of storage total. For a hard disk. Smoke Signal offers the clever Honeywell hard disk drive that holds ten megabytes of information in its small 8” removable cartridge. Using the new 32-kilobyte RAM cards, up to 1 92 kilobytes of memory can be fitted into the computer box. The latter option will be needed when Smoke Signal intro- duces its four-terminal multiuser operating system, soon to be released to computer stores. Until then, you can purchase at least one example of each of the major languages to run on their single-terminal DOS 69 operating system. SWTP S/09 The S/09 has continued as SWTP’s most successful product since INTERFACE AGE reported on it last July. This month we’ll highlight their System D, a remarkably complete multiuser business computer system. The System D is equipped with dual full-size dual-density floppy disk drives that yield an impressive 2.5 megabytes of online storage. But even that is simply an auxiliary to the main bitbucket: a 16-megabyte Winchester hard disk unit. Equally generous is the standard complement of 128 kilo- bytes of main memory, which is allocated among the three supplied CRT display terminals. The terminals are SWTP’s 74 INTERFACE ACE JUNE 1980 More than meets the eye. The new Series 5000 is mighty for its size. In more than several thousand ways! In fact, it’s the first small system offering over a megabyte of integrated mini-floppy capacity. And with its super memory management, you can. have better than 300k of RAM in desk or desktop ver- sions. But hardware is just the beginning of the story. It’s the wide selection of software that really makes this system mighty. Operating systems? Choose CP/M* with CBASICf — the most widely accepted small computer operating system ever. Or MVT-FAMOS,** a multi- user, multi-tasking operating system with file management like the big guys, Or MICROCOBOL,tt also for multiple users, but implemented in COBOL, familiar to commercial users the world over. And applications programs for these operating systems number in the thousands. From real estate to accounting, taxes to inventory control, they’re all available at low cost — ready to run. When you add these software and hardware features to Industrial Micro Systems’ reputation for rugged, reliable quality products you’ll begin to see it all. A lot more systems than your first glance reveals. See even more at your dealer. Call us to find out the name of your nearest dealer. He’ll tell you everything you need to know. And really open your eyes! Trademark ol Digital Research Inc. * ‘Trademark ol MVT Microcomputer Systems Inc. tT rademark of Software Systems t fProduct of CAPCPP INDUSTRIAL MICRO SYSTEMS 628 N. Eckhoff St., Orange, CA 92668, (714) 978-6966 2800 Lockheed Way, Carson City, NV 89701 JUNE 1980 CIRCLE INQUIRY NO. 34 INTERFACE AGE 75 own CT-82 design, one that definitely falls into the “smart” category, even though the screen is limited to but 1 640 characters if lower case display is required. All S/09 systems can be purchased with a good selection of programming languages and aids, including what is billed as the fastest BASIC ever for the 6809 chip. Multiterminal operation is limited to the BASIC environment, a restriction shared by Cromemco and some others in a list. This product presents a good example of why you shouldn’t select a computer by simply running your finger down the price column. Even though $12,000 may sound like a stiff tariff, it includes many essential items that must be purchased as extras on many of the systems under review. 6502 SERIES OF EIGHT-BIT COMPUTERS Computhink MINIMAX The MINIMAX is a fresh computer design from a com- pany that gained its reputation as a supplier of floppy disk drives — 4000 shipped so far — to Commodore PET users. The MINIMAX II is the larger of the two available versions, offering 2.4 megabytes of storage capability in its dual 8” flexible disk units. The machine is nicely packaged in a large CRT terminal-style enclosure, and includes a remarkable 1 08 kilobytes of RAM internally. The display screen is able to display high-resolution graphics, and some slick software is included to produce charts, histograms and business forms. Computhink is proud that it has produced all the software that runs on the MINIMAX’s 6502 microprocessor. BASIC and a machine language assembler are standard, with PLM and FIFTH available. FIFTH was described to us as “a Pascal derivative on FORTH.” On the applications side, the MINIMAX offers an extensive DBMS subsystem and four of the “big five” accounting packages as standard equipment. Ohio Scientific C3 Ohio Scientific’s C3-C microcomputer system is absolute- ly unique in that it features not one but all three of the eight- bit micros under discussion: 6502, 6800 and Z80. The 6502 is the most completely supported in terms of Ohio Scientific-supplied software, so we classify it in this group. The C3-C was one of the first to marry a dual 8” floppy disk drive with a single large-capacity Winchester disk and market it as a package. The example was followed by several others. The C3-C can be fitted with a copious supply of RAM and an optional multiterminal operating system to allow up to eight users to use the system simultaneously. In addition, C3’s can be interconnected via a telecommunications net- work to provide multiprocessing capabilities. The Ohio Scientific catalog carries an almost embarrassing array of applications programs, including games, personal computing routines and educational packages. Only a few of the listed programs seem appropriate to a serious business environment, however, and they carry serious business prices. IBM 5110 IBM’s eight-bit 5110 computing system does not use any of the microprocessors listed in the previous pages, but an internally-developed proprietary design. We place it here, between the eight- and 1 6-bitters, because it has some of the characteristics of both: eight-bit performance and a 16-bit price. Actually, that’s a bit unfair to this gargantuan company which is mother and father to business computing. Pur- chasers of IBM products know they are paying a premium to deal with a company that not only makes very few mistakes in designing, building and marketing, but also boasts a stability that is likely to outlast us all. The 5110 is a floppy-disk based development on the earlier 5100, which utilized proprietary cassette tapes for data storage. Cassette drives are still available for the 51 10 for those who have a library of tapes to run on the earlier model. The unit is housed in a neat tabletop enclosure look- ing a lot like a large scientific electronic calculator. The small size of the main computer is offset by a large floor-standing rack-style cabinet needed to house the dual 8” floppy disk drives. A second pair of drives can be fitted (bringing the total capacity up to 4.8 megabytes), but they need their own iden- tical enclosure. In keeping with its small size, the display screen on the 5110 holds but 1 6 lines of 64 characters each. Applications programs have to keep this limitation in mind. The machine is the only one we know of in this size range which supports the widely revered IBM-developed APL language. Packaged solutions to business problems have always been an IBM specialty, so we were not surprised to see a selection of well-executed applications packages. They spe- cialize in routines designed around a type of business (den- tal, travel agency, etc.) rather than generally applicable ones such as payroll — although the latter can be had as well. Some of the software is rented by the month, rather than licensed or sold outright. 1 6-BIT MICROCOMPUTERS Alpha Micro AM-1 031 We’re moving into the “big iron” now in terms of size and price. Expect a 1 6-bit computer to' offer something special in terms of performance, and our first entry, the Alpha Micro- systems AM- 1031 , is no disappointment. The machine is a wayward child of DEC’s LSI-1 1 microcomputer, is inherent- ly multiuser, multitasking, and multiterminal in its operation, and is equipped with a wider array of development software than any system we will cover. The firm has nearly doubled its number of installed sys- tems since October 1979 — most of them equipped with a cartridge-type hard disk subsystem. Late last year, the com- pany quietly began to upgrade the AM-100/T variant of its basic AM-1 00 design. The event deserved more fanfare than it occasioned, because the /T is in a new class in terms of pure number crunching performance. No longer saddled with eight-bit memory accesses, the new CPU talks to a true 16-bit RAM card at up to twice the previous rate. The dynamic RAM itself features three extra bits per byte (for a total of 1 1 ) which serve to correct all single-bit read errors “on the fly.” Coupled with a 50% hop-up of the basic pro- cessor speed, the AM-100/T performed our prime number benchmark nearly twice as quickly as its predecessor. The AM- 1031 is the mid-sized Alpha Micro. Its 10-mega- byte Control Data Hawk cartridge disk drive has proven itself to be more popular than both the floppy-based systems and the ones equipped with the 90-megabyte Phoenix drive. A single system can be fitted with any combination of these data storage devices, offering more flexibility than a user will probably ever need. To programmers, the AM-1031 ’s most appealing feature is the nearly 200 languages and utility programs that are standard. BASIC is the primary applications language, and Pascal, LISP and a macro assembler are included. Alpha- BASIC is a semi-compiling language that leans towards busi- ness applications with its COBOL-like data structures and built-in ISAM capability. Alpha Micro also includes a really slick screen-oriented text editor that can be used for word processing applications as well as program entry. As far as applications programs go, Alpha Micro dealers can serve up a factory-supported package that incorporates general ledger, accounts payable, accounts receivable, payroll and order entry/inventory control. Digital Microsystems HEX29 The heart of the HEX29 is not really a microprocessor at all, but a brace of four AMD2900 bit-slice chips that team up to provide a minicomputer-like broadside of 1 6-bit power. The HEX29 fairly cooks, and this capability is further en- hanced by its version of Pascal, which compiles programs down into the machine language of the CPU itself, not in an intermediate P-code as others do (see INTERFACE AGE, Jan. 1 980, for an in-depth look at the HEX29). 76 INTERFACE ACE JUNE 1980 If you can type, you can handle your accounting, word processing and much more on ISC’s Small Business Computer! The lntecolor R 8963 is just one of a complete line of ISC desktop computers designed for businessmen who don’t know how- or don’t have time- to write programs. It's CP/M R compatible, so you can choose from hundreds of CP/M business programs— programs that have been proven in hundreds of actual applications. Programs like General Ledger, Accounts Receivable and Payable, Payroll, Mailing List and Inventory Control are now available in color. You’ll comprehend data faster, thanks to the proven readability of ISC’s eight-color display. To compose letters and other documents quickly and eas- ily, you’ll want ISC’s unique color-coded Word Processing program. With an optional printer, you can print out as many mistake-free originals as you want! The Intecolor 8963 is just $6395,* and includes a 19" color graphics display, typewriter-like keyboard, dual disk drive for data storage- even a color version of Microsoft” Business BASIC for those of you who do want to program. Don’t let your business get behind the times. Call your ISC sales representative or visit your nearest Factory Authorized ISC dealer and get a “hands on” demonstration today. Color Communicates Better * U S. domestic price Unretouched photo of screen. CP M is a registered trademark of Digital Research Corp OEM Quantity Discounts are available to Qualified Dealers and Volume Users of 25 Systems (or greater) per year. Call your nearest ISC Representative listed below. ISC SALES REPRESENTATIVES: AL: 205/883-8660, AZ: 602/994-5400, AR: (TX) 214/661-9633, CA: Alhambra 213/281-2280. Goleta 805/964-8751. Irvine 714/557-4460, Los Angeles 213/476-1241. Los Altos 415/948-4563, San Diego 714 292-8525, CO: 303/355-2363, CT: 203/624-7800, DE: (PA) 215/542-9876, DC: (VA) 703/569-1502, FL: Ft. Lauderdale 305/776-4800, Melbourne 305/723-0766, Orlando 305/425-5505, Tallahassee 904/878-6642. GA: Atlanta 404/455-1035, HI: 808/524-8633. ID: (UT) 801/292-8145, IL: (No.) 312/564-5440. (So. MO) 816/765-3337, IN: (IL) 312/564-5440, IA: (Scott County Only) 312/564-5440. (MO) 816/765-3337, KS: (MO) 816/765-3337, KY: 606/273-3771, LA: 304/626-9701. ME: (MA) 617/729-5770. MD: (VA) 703/569-1502, MA: 617/729-5770, Ml: Brighton 313/227-7067, Grand Rapids 616/393-9839, MN: 612/645-5816, MS: (AL) 205/883-8660. MO: 816/765-3337, MT: (CO) 303/355-2363, NB: (MO) 816/765-3337. NH: (MA) 617/729-5770, NJ: (No.) 201 '224-691 1 . (So.) 215/542-9876. NV: (AZ) 602/994-5400, NM: 505/292-1212, NY: Metro/LI(NJ) 201/224-6911. N Syracuse 315/699-2651. Fairport 716/223-4490, Utica 315/732-1801, NC: 919/682-2383, ND: (MN) 612 645-5816. OH: Cleveland 216/398-0506. Dayton 513/435-7684, OK: (TX) 214/661-9633, OR: 503/644-5900. PA: (E) 215/542-9876, (W) 412/922-5110, Rl: (MA) 617/729-5770. SC: 803/798-8070. SD: (MN) 612/645-5816, TN: 615/482-5761. TX: Austin 512/454-3579, Dallas 214/661-9633, El Paso Area (Las Cruces. NM) 505/524-9693, Houston Only 713/681-0200. UT: 801/292-8145. VT: (MA) 617/729-5770, VA: 703/569-1502. WA: 206/455-9180. WV: (PA) 412/922-5110. Wl: (II ) 312/564-5440. WY: (CO) 303/355-2363. EUROPEAN EXPORT SALES: EUROPE: (MA) 617/661-9424, BELGIUM: Brussels 02-242-36-04, DENMARK: 02-913255, FRANCE: Rueil Malmaison 749-47-65, Paris 33-1-306-4606. GREECE: Athens 642-1368, ITALY: Milano 02600733. THE NETHERLANDS: Poeldiik 01749-47640. Amsterdam 020-360904, SPAIN: Barcelona 204-17-43, SWEDEN: Vallingby 08-380-370, SWITZERLAND: Mutschellen 057-546-55. UNITED KINGDOM: Bournemouth 0201671181, WEST GERMANY: Koblenz 01 149-31025/6. AUSTRALIA & NEW ZEALAND: Auckland 876-570, Canberra 58-1811, Chermside 59-6436, Christchurch 796-210, Melbourne 03-543-2077, Sydney 02-808-1444, Wellington 644-585, CANADA: Dorval 514/636-9774, Ottawa 613/224-1391, Toronto 416/787-1208, Vancouver 604/684-8625, CENTRAL AND SOUTH AMERICA & CARIBBEAN: (GA) 404/394-9603, MEXICO: Monterrey 564-876. FAR EAST: (CA) 213/382-1 107, HONG KONG: 5-742211 JAPAN: (Tokyo) (03) 463-9921. TAIWAN: (Taipei) 02-7026284. MIDDLE EAST: (GA) 404/581-0243, EGYPT: 809933. ISRAEL: Ramat Gan 03725749, KUWAIT: Kuwait 438-180/1/2. LEBANON: Beirut 221731/260110, SAUDI ARABIA: Jeddah 27790. Riyadh 25083-39732 For sales and service in other countries contact ISC headquarters in Norcross. GA., U S A. ^9 Intelligent Systems Corp.' Intecolor DriveD 225 Technology Park/ Atlanta □ Norcross, GA 30092 □ Telephone 404/449-5961 CDTWX 810-766-1581 CIRCLE INQUIRY NO. 38 In brief, this machine can hold up to two megabytes of error-correcting Random-Access Memory to be utilized by up to 32 different users simultaneously. Only single-sided, single-density floppy disk drives can be fitted, but Digital Microsystems makes up for that in part by allowing more drives than one will probably use. Actually, the optional 28-megabyte hard disk drive is a “must” for business appli- cations with this powerful system. The standard BASIC interpreter includes ISAM capability; FORTRAN is also available. The supplied line-oriented text editor rates only fair in the ease-of-use category when com- pared to the marvelous screen-oriented designs that are be- coming commonplace. The HEX29 has no factory-supported applications programs. Rexon RX30 Rexon stands apart from most of the vendors in this review due to its IBM-like approach to selling computer systems. The RX30 is a machine that you buy as a whole, including installation, maintenance support and, most likely, an inte- grated set of applications programs assembled by the Rexon dealer. This marketing approach is, of course, older than the microprocessors themselves, but is often accompanied by serious compromises in the performance of the computer itself. Not so with the RX30, in large part because it is con- structed around the state-of-the-art 1 6-bit 8086 micro. It’s the first such implementation we’ve seen, and it looks to be the first of many such applications for this powerful chip. A 20-megabyte cartridge-type hard disk drive is the only mass storage device available on the RX30. Floppy disks were thought to be inappropriate to this class of machine. That’s powerful stuff, coming as it does from Dr. Wang, Rex- on’s president and single-handed developer of much of today’s floppy drive technology. The RX30 is a BASIC-only computer in the mold of Basic/Four. It’s far simpler for a programmer to compre- hend than, say, the complex structure of the Alpha Micro computer. The limitations in flexibility inherent with this approach are somewhat offset by the ease of training and programming debugging. The most spectacular item in Rex- on’s software lineup is IDOL, a combination DBMS and pro- grammer’s aid. It’s conceivable that one could make a career of writing business applications without ever learning to pro- gram in BASIC; simply by using the capabilities of IDOL alone. Most of the RX30’s applications software comes via the factory-sponsored dealer Software Exchange. The catalog has over 1 00 pages and is growing steadily. Technico SS-16 The SS-16 computer is the only one in our list that utilizes the Texas Instruments’ TMS9900 16-bit microprocessor chip. Technico has a good thing all to itself so long as their competitors continue to shun this extremely capable device. Technico has its roots in the industrial process control field, and is only recently making its product available in business garb. The TAS-MU-DFD is an SS-16 with 64 kilobytes of RAM and a dual 8” floppy disk drive housing a half-megabyte of storage capacity. Winchester-technology hard disk drives can be added to give up to 40 megabytes more of data storage. A multiuser operating system, which is standard, allows up to 18 terminals to be connected simultaneously. Actually, there are limitations. Space restrictions in the CPU box hold you to 12 users if 192 kilobytes of RAM are fitted, or six users with 224 kilobytes. It would be hard to call that a serious shortcoming. Since February, Technico has released packages to handle all of the “big five” business applications, in addition to a date base manager. Although it has traditionally been a bit behind the times in the area of word processing, Technico is about to release a blockbuster. We were sworn to secrecy re- garding most of the details, but. . .would you believe — multicolored entry? Three Rivers Computer PERQ it is appropriate that our review close with PERQ, since it embodies what might become the future of small business computers. The PERQ (pronounced “perk,” not “pur-que”) borrows almost nothing from the designs arrayed before you in this issue; it strikes out into territory that was previously ex- plored only in the thought experiments of advanced think- tank operations. PERQ is intended to be the all-in-one work station of the electronic office of tomorrow. Its powerful computing cap- abilities are optimized to provide local problem-solving power as well as intercommunication with a shared-resource network consisting of other PERQs and larger systems. It is inherently multitasking, but these tasks are designed to serve the single person who sits at its keyboard. This person is served by a quarter megabyte of RAM and 1 2 megabytes of hard disk storage as well. The display terminal is unique. Three Rivers Computer has applied its expertise in high-resolution display tech- nology to serve up a CRT, which can speak in a dozen dif- ferent type faces, with proportional justification thrown in for good measure. The screen can be divided into several win- dows, each showing the status of the various multiprocesses that the computer performs. The display is oriented vertically like a sheet of typewriter paper, and is ideally adapted to word processing entry. Actually, the PERQ looks beyond word processing as we know it today to the future when the vast majority of written communication will be transmitted electronically. Why clutter up your office with paper when everyone you correspond with has a PERQ-like machine to receive your communications via satellite signals? The PERQ also features a Touch Table that translates pen- cil or finger pressure directly into signals to direct the cursor on the display screen. A speech output module is also stan- dard equipment. The Three Rivers product utilizes a proprietary 1 6-bit pro- cessor design which has the native language of Pascal P-code. This is an optimized-efficiency approach which is sure to be quite common in 1 990s-vintage systems. No other language is available or needed on the PERQ. The PERQ is definitely in that class of “solutions looking for a problem” machinery. The biggest threat to its probable success would be users who lack the imagination to apply mind-stretching capabilities properly. The power of the computer systems represented here seems almost commonplace today. Only a few years ago they were misunderstood toys gracing the offices of a few forward-thinking business people. Most of us were left to play catch-up; and some, it is sad to say, remain ignorant of the rewards available to those who would make a home in their businesses for a computer system. □ ABOUT THE AUTHOR Tom Fox has twenty years experience in the field of elec- tronics, thirteen years in com- puter systems and their appli- cation to business and indus- try . President of Fox Ware Systems Corporation , of Ir- vine , California, he is also past Director of Engineering at Structured Micro Systems, Inc., where he headed up the development of a computerized telephone answering ser- vice and centralized alarm monitoring system. He can be reached at 17925-G Sky Park Circle, Irvine, CA 92714, telephone (714) 957-9331. 78 INTERFACE AGE JUNE 1980 PEARL”! Skeptics are still saying a program like PEARL won’t be available until the mid-1980s They’re wrong, of course. PEARL is available now. PEARL (Producing Error-free Automatic Rapid Logic) brings application generation software to microcomputer users at four user levels. Very simply, PEARL means that anyone with a microcomputer with 48K memory can use one of the four PEARL programs to generate new applications software with a minimum of time, trouble and training. PEARL runs under CP/M* and is designed as a powerful menu-driven tool. PEARL Level 1 provides non-programmers with the capability to program their own new applications automatically. Users respond to on-screen prompts as they define their system; no programming knowledge is required. PEARL Levels 2 and 3, for experienced programmers, provide sophisticated processing for complex applications. In just fractions of the time it used to take to design, code, and test a program, PEARL will generate and compile a new application. PEARL Level 4, the most advanced of the PEARL packages, provides programmers with the capability to include many features normally associated with customized turnkey systems. Introductory prices. Trade-in allowances for upgrade to higher levels. PEARL Level 1 For Personal Computing $ 90 PEARL Level 2 The Business Assistant $ 200 PEARL Level 3 For Software Developers $ 400 May 1 980 PEARL Level 4 For Turnkey Systems Developers $ 800 June 1980 volulionarv software for the 1980s Computer Pathways Unlimited, Inc. Corporate Office: 2151 Davcor Street S.E. Salem, Oregon 97302 503 - 363-8929 CIRCLE INQUIRY NO. 13 *CP/M is a trademark of Digital Research THE COMPARISON TABLES EXPLAIN By Tom Fox Systems Editor Like the smorgasbord at a Swed- ish wedding reception, the tables on the following pages are fairly laden with tasty morsels that are the visible fruits of a small army of behind-the-scenes artists. The creators of the masterpieces arrayed before you do not practice their skills in the kitchen, but in the de- velopment labs that are the most guarded corners of the many com- puter factories represented here. The six tables of data can help in comparing various aspects of the systems we are looking at this month. Most of the information is self-explanatory, but some of the categories can be a little tricky. This is mainly due to the fact that tabu- lar headings that do a good job of describing one manufacturer’s sys- tem are often inadequate to de- scribe another. Each system has unique properties not shared by any of the others. We did the best we could, and personally checked with each manufacturer to make sure all of the entries are up-to-date. Keep in mind as you read: “n/a” means “information not available’ or, in some cases, “refused.’’ TABLE 1 - HARDWARE DATA This chart carries general infor mation about the hardware ele ments of the system. Most import antly, it lists a model number, price, and tells what major com- ponents are included in that price. In this and the following tables, the indication “Std” means the hard- ware or software item is included as standard equipment at the quoted price. “Opt’’ indicates the item is optional at extra cost. If the extra dollar amount was made available, we included it. Under “ENCLOSURE,’’ we indi- cate if the computer is supplied in a free-standing tabletop housing, is integrated into a desk-style work station, is equipped for rack mount- ms m ing, or a combination of these. The “BUS” column tells us if the plug-in-cards that make up the computer conform to a known industry standard. You can, in theory, interchange different manufacturers’ circuit boards if they both conform to the same bus protocol. This is done every day, but be warned that the maneuver is sometimes doomed because of minute discrepancies among the various designs. “RAM” stands for random access memory, the fast semiconductor memory element utilized by all of the systems we are reviewing this month. The amounts are shown in kilobytes, or thousands of bytes. (A byte is equivalent to the amount of storage required to remem- ber a single character, such as “A”.) All of the systems we are looking at are equipped with one or more disk drives, either of the flexible diskette (“floppy”) variety, or the higher-performance hard disk drive. Some sys- tems come complete with both; the floppy drive often included as a means to create backup copies of data on Winchester-technology hard disk drives. Other than the obvious advantage of having more storage space, hard disk drives are commonly several times faster than the floppy variety. In Table 1 is an indication as to whether or not a cathode-ray tube (CRT) display terminal or hard copy printer is included in the basic price. Several of the manufacturers do not provide these devices at all; they let the local dealers buy them separately and inte- grate them into a system before delivering the assem- blage to the ultimate user. The peripheral devices can form a significant fraction of the purchase price, so take that into account when comparing system costs. TABLE 2 - DISK DRIVE DATA Here we take a closer look at that most critical element of a computer system: the mass storage device. Shown is the number of drives supplied as standard, and the maximum size that can be fitted in the future. Capaci- ties are shown in kilobytes for megabytes (millions of bytes) Remember that 1,000 kilobytes equal one megabyte. All floppy disk drives are built to allow you to remove the diskette itself aid store it away for safekeeping or to maintain a library of programs, data, etc. It’s of critical importance that at least one extra copy of each diskette be maintc ined as well. There are the floppy disk drives; in the hard disk case. achine errors that can to be destroyed with several kinds of human and m< cause the data on a diskette alarming ease. The activity o; : creating the backup copy requires that at least two diskette drives be fitted to the computer system, the master being copied from and the ‘ scratch” disk being copied onto. The sane principles, of course, apply to hard disk drives. In this case, however, the amount of data that can accicentally be destroyed is much greater. Hard disks listed as the “cartridge” type in Table 2 contain a certain amount' (usually half) of their storage on an internal, non removable disk platter. The cartridge itself is a removable disk that can be inserted into the drive to back up the data contained on the non- removable one. Backup copies of critical data are thus nearly as easy to make as the floppy disk systems. Winchester-technplogy hard disks are fundamentally different, in that all data is contained on a non- removable disk platter. Winchester devices contain their spinning disk within a hermetically sealed en- vironment and any data copies must be made onto some other external device; ta some cases, floppy disk drives; in others, | special magnetic tape units. Win- chester technology offers today’s best bargain in bytes-per-buck storage, but the world is still waiting for someone to solve the knotty problem of backing up the data in a cortvenient, economical manner. Many simply skip the backup process — an invitation to disaster, in our opinion. It may be nit-picking, but we’ve noticed that compu- ter salesmen are beginning to list the “unformatted” capacity of their disk drives rather than the “formatted” or usable quantity. A certain portion of each disk or floppy diskette is occupied with “housekeeping” data, so all of that space isn’t really available for your own use. (An example: One manufacturer’s implementation of the popular Shugart SA-4000 Winchester drive re- quires 6 megabytes of the disk’s 29-megabyte capac- ity for internal formatting information, leaving but 23 megabytes for your use.) We have tried mightily to list only the formatted capacity in Table 2, but in a few cases, even the factory representatives didn’t know! TABLE 3 - PERIPHERALS DATA In this chart, we have gathered together the last of the hardware-related information. Each of the systems utilizes some form of a CRT display terminal for primary data input and output, although some are priced separately. A few have a graphics capability in addition to the basic ability to display letters and numbers. The MAXIMUM QUANTITY column indi- cates how many terminals can be connected to the system simultaneously in a multi-user environment. A printer is an essential part of any business com- puter system. Two of the columns in Table 3 briefly describe those available. Matrix printers form the characters on the page as a collection of tiny dots. They are usually faster, less expensive and more reliable than character printers, but are not suitable for word-processing applications if you want the final result to appear as if it were produced on a typewriter. Fully formed character printers make theirlmage like a typewriter, with a single stroke. Nearly all character printers are of the spinning daisywheel or thimble variety, which represent a real performance advance- ment over the earlier tumbling golf ball technology of IBM’s Selectric. Printer speeds are shown as the aver- age number of characters produced per second (cps) or, in some cases, the number of complete lines of text printed per minute (Ipm). Don’t be concerned if the chart comes up “none” in both the STANDARD and OPTIONAL categories. This just means that the local dealer must buy directly from the printer manufacturer, the same as the computer manufacturer. The final column in Table 3 is a catch-all for the special and unique hardware attachments that form a large part of a computer’s personality. We didn’t list the serial and/or parallel interfacing port options. TABLE 4 - SYSTEM SOFTWARE DATA System software includes programs normally pro- vided by the manufacturer to manage the central func- tion of moving data around among the computer memory, disk, printer, and terminal(s). It also includes software than can be utilized by programming person- nel to create usable application programs (listed on the next chart). We have made a special effort to research the prices for software, to highlight the signi- ficant cost that can be represented by this category of investment. If having a large library of purchasable programs is important in your business, pick a system that can run with one of the widely used operating systems. CP/M leads the pack in this race, but several others follow closely. Column headings are included for the four most popular programming languages (BASIC, COBOL, FORTRAN and Pascal) as well as the assembler which can produce runnable programs in the native language 82 INTERFACE ACE JUNE 1980 Table 1. Hardware Data BASIC ENCLOSURE CPU RAM STANDARD PERIPHERALS MANUFACTURER SYSTEM PRICE TABLETOP DESK RACK TYPE BITS BUS STD MAX DISK DRIVE TERMINAL PRINTER Alpha Micro AM-1031 $17,835 Std No Opt WD16 16 S-100 64 K 1024K 1 Hard No No Altos ACS8000-6/MU4 $11,960 Std No No Z80 8 None 208 K 208 K 2 Floppy* 1 Hard No No Computhink MINIMAX II $ 9,200 Std No No 6502 8 None 108K 108K 2 Floppy Yes No Cromemco System 3 $ 6,990 Opt Opt Std Z80 8 S-100 64 K 512K 2 Floppy No No Digital Microsystems HEX29 $15,900 Std No No 2900 16 Prop. 256 K 1000K 2 Floppy No No Heath WH89-CS $ 2,895 Std No No Z80 8 None 48 K 48 K 1 Floppy Yes No IBM 5110 $19,475 Std No Std Prop. 8 Prop. 32 K 64 K 2 Floppy Yes No IMS Series 8000 $ 4,500 Std Opt Opt Z80 8 S-100 32K 256K 2 Floppy No No Intertec SuperBrain $ 2,995 Std No No Z80 8 None 32K 64 K 2 Floppy Yes No Micro V MicroStar 1 n/a Std Opt No 8085 8 None 64K 64K 2 Floppy No No MicroDaSys millie $ 3,999 Std Opt No Z80 8 S-100 48K 60 K 1 Floppy Yes No North Star HRZ-2-64K-D $ 5,820 Std No No Z80 8 S-100 64K 64K 2 Floppy Yes Yes Ohio Scientific C3-C $ 9,900 No No Std 6502 8 Prop. 48 K 384 K 2 Floppy* No No Z80 8 1 Hard 6800 8 Pertec PCC 2000 $ 9,995 Std No No 8085 8 P-100 64K 64K 2 Floppy Yes No Radio Shack TRS-80 Model II $ 3,899 Std Opt No Z80 8 Prop. 64 K 64 K 1 Floppy Yes No Rexon RX30 $32,500 No No Std 8086 16 Prop. 64 K 128K 1 Hard Yes Yes Smoke Signal 9822 $ 4,344 Std Opt Opt 6809 8 SS-50 48 K 192K 2 Floppy No No SWTP System D $12,000 Opt Std No 6809 8 SS-50 128K 768K 2 Floppy* 1 Hard Yes (3) No Technico TAS-MU-DFD $ 7,895 Std No Opt 9900 16 Prop. 64 K 224K 2 Floppy No No TEI 3400 n/a No Std No 8085 8 S-100 64K 64K 2 Floppy Yes No Three Rivers Computer PERQ $19,500 Std No Std Prop. 16 Prop. 256 K 1000K 1 Hard Yes No Vector Graphic System B $ 5,463 Std Opt No Z80 8 S-100 56 K 56 K 2 Floppy Yes No Zilog MCZ-1/70-2 $19,835 No No Std Z80 8 Z-bus 64K 64 K 1 Hard Yes No Table 2. Disk Drive Data MANUFACTURER SYSTEM NUMBER OF DRIVES/TOTAL CAPACITY (bytes) FLOPPY DISKETTE HARD DISK SIZE STD MAXIMUM TYPE STD MAXIMUM Alpha Micro AM-1031 8” None 8/9600 K Cartridge 1/10M 4/360 M Altos ACS8000-6/MU4 8” 2/1000K 4/8000 K Winchester 1/14M 2/58 M Computhink MINIMAX II 8” 2/2400K 2/4800K — None — Cromemco System 3 8” 2/1024K 4/2048 K Winchester None 4/40 M Digital Microsystems HEX29 8” 2/512K 8/2048K Winchester None 2/56 M Heath WH89-CS 5V4” 1/1 00K 1/1 00K — None — IBM 5110 8” 2/2400 K 4/4800K — None — IMS Series 8000 8” 2/486 K 4/3856 K Cartridge None 2/180M Intertec SuperBrain 5V4 m 2/265K 2/700K Winchester None 4/72 M Micro V MicroStar 1 8” 2/2000K 4/4000K Winchester None 1/20 M MicroDaSys millie 8” 1/500K 4/2000K Cartridge None 4/90 M North Star HRZ-2-64K-D 5V4” 2/360 K 4/1440K Winchester None 4/72 M Ohio Scientific C3-C 8” 2/544K 2/1088K Winchester 1/23M 1/23 M Pertec PCC 2000 8” 2/1200K 2/1200K Cartridge None 4/80 M . Radio Shack TRS-80 Model II 8” 1/486K 4/1944K — None — Rexon RX30 — None — Cartridge 1/20M 2/40 M Smoke Signal 9822 8” 2/2000 K 8/7500 K Cartridge None 1/20 M SWTP System D 8” 2/2500 K 4/5000K Winchester None 1/16 M Technico TAS-MU-DFD 8” 2/512K 4/1 024 K Winchester None 4/40 M TEI 3400 8” 2/1986K 8/7944K Winchester None 32/442M Three Rivers Computer PERQ 8” None 1/1024K Winchester 1/12M 1/24 M Vector Graphic System B 5V4” 2/630K 4/1 260 K — None — Zilog MCZ- 1/70-2 8” None 4/1 200 K Cartridge 1/10M 4/40 M of the microprocessor itself. Under OTHERS, we list addi- tional programming languages and major utilities that ease the applications programmer’s task. In addition, all of the sys- tems make available some kind of a text-entry capability for keying in the source programs in the various languages. TABLE 5 - APPLICATIONS SOFTWARE DATA Taken as a whole, writing applications programs for com- puters is a massive task, occupying a rapidly increasing frac- tion of the world’s workforce. There is a snowballing trend for computer manufacturers to deliver their machines with useful programs that can be put to use right away. Their in- tent is to apply some standardization to programs which are run on their products, and to remove a significant barrier to their sales. The effort is ambitious and well-motivated. To be successful, the programs themselves must be very nearly perfect and generally applicable in a wide variety of applica- tions situations. Table 5 lists the major applications packages that are avail- able from the various manufacturers. The “big five” are there (general ledger, accounts payable, accounts receivable, payroll and order entry /inventory control), as are a pair of applications that are becoming featured by more and more computers these days: word processing and data base management system (DBMS). Modern word processing programs consist of two parts: a means to enter textual data from a CRT terminal, and a way to transform the information and send it to a hard-copy printer. Many of the word processors feature a “screen- oriented” editor for data entry which is rapidly becoming today’s state-of-the-art. First-time computer users who have never uttered the acronym DBMS often find it soon becomes the most used program in the machine. Applied intelligently, a good DBMS can organize everything from the annual report to your daily appointment calendar. There is little standardiza- tion in DBMS programs, so make sure the one you purchase is appropriate to the size and complexity of your needs. TABLE 6 - CORPORATE DATA The final chart in the series zeroes in on the companies that make the computer systems being reviewed in this issue. Included are size, age, and retail outlet base, as well as the manufacturing history of the system itself. GROSS SALES are for the most recent complete business year and include the receipts of any parent company. Also shown are the cur- rent number of retail outlets and service centers, if different. The final two columns tell the birthdate and total number delivered of the system being reviewed in this issue. In a few cases, we have allowed the manufacturer to include nearly identical predecessors of the reviewed system if the dif- ferences are small and evolutionary. We will let you roam through the tables like the guest at a Swedish wedding reception, comparing the relative merits of each dish and selecting the one that suits your taste. We make no recommendations as to which might be best, as each and every one of them will be the optimum choice given a particular business situation. Assembling this mass of data was the easy part. The difficult task, now, is yours: choosing the system that enables your business to run more smoothly and profitably. □ JUNE 1980 INTERFACE AGE 83 84 INTERFACE AGE JUNE 1 980 Table 3. Peripherals Data MANUFACTURER SYSTEM CRT DISPLAY TERMINAL PRINTER TYPE/SPEED OTHER PACKAGE GRAPHICS CHARACTERS MAX QTY STANDARD OPTIONAL Alpha Micro AM-1031 Separate No 1920 12 + None None Real-time Clock (Std) Magnetic Tape ASYNCH/SYNCH Communications Altos ACS8000-6/MU4 Separate No 1920 4 None None Magnetic Tape Floating Point Computhink MINIMAX II Integrated Std 1920 1 None Matrix/60 cps Matrix/150 cps None Cromemco System 3 Separate No 1920 7 None Matrix/60 cps Matrix/180 cps Character/55 cps PROM Programmer Color Graphics A/D & D/A Digital Microsystems HEX29 Separate No 1920 32 None Matrix/150 cps Matrix/300 cps None Heath WH89-CS Integrated No 1920 1 None Matrix/40 cps Matrix/150 cps Character/45 cps None IBM 5110 Integrated No 1024 1 None Matrix/80 cps Matrix/120 cps Mag Tape Cartridge BISYNCH Comm. ASYNCH Comm. IMS Series 8000 Separate No 1920 8 None None None Intertec SuperBrain Integrated No 2000 1 None None S-100 Bus Adapter Micro V MicroStar 1 Separate No 1920 2 None Matrix/1 12 cps Matrix/300 Ipm Character/55 cps None MicroDaSys millie Separate Opt 2000 1 None Character/55 cps Color Graphics North Star HRZ-2-64K-D Separate No 1920 1 Matrix/112 cps Character/55 cps Floating Point Ohio Scientific C3-C Separate No 1920 8 None Matrix/110 cps Matrix/125 Ipm Character/55 cps Networking B/W Graphics Pertec PCC 2000 Integrated Std 1920 5 None Matrix/120 cps Character/55 cps None Radio Shack TRS-80 Model II Integrated Std 1920 1 None Matrix/60 cps Matrix/120 cps Character/50 cps None Rexon RX30 Separate No 1920 8 Matrix/150 cps Matrix/300 Ipm None Smoke Signal 9822 Separate No 1920 1 None Matrix/165 cps B/W Graphics SWTP System D Separate Std 2024 16 None Matrix/60 Ipm Matrix/120 cps Character/45 cps None Technico TAS-MU-DFD Separate No 1920 18 None Matrix/180 cps A/D & D/A RAM Battery TEI 3400 Separate No 2000 1 None Matrix/150 cps None Three Rivers Computer PERQ Integrated Std 5490 1 None Matrix/300 Ipm Character/45 cps Touch Tablet (Std) Speech Output (Std) GPIB Interface (Std) Networking Vector Graphic System B Separate No 1920 5 None Matrix/150 cps Character/55 cps A/D & D/A B/W Graphics Video Digitizer Zilog MCZ-1/70-2 Separate No 1920 5 None Matrix/140 cps Character/55 cps None JUNE 1 980 INTERFACE AGE 85 Table 4. Systems Software Data MANUFACTURER SYSTEM OPERATING SYSTEM PROGRAMMING LANGUAGES SINGLE-USER MULTI-USER ASSEMBLER BASIC COBOL FORTRAN PASCAL OTHERS Alpha Micro AM-1031 None AMOS Std Std No No Std LISP (Std) ISAM (Std) SORT (Std) Altos ACS8000-6/MU4 CP/M $150 AMEX $600 $100 $150 $750 $500 $200 OASIS $500 APL $500 KSAM $450 Computhink MINIMAX II DOS None Std Std No No No PLM FIFTH Cromemco System 3 CDOS Multi-user BASIC $800 $95 $95 $95 $95 No RATFOR $195 TRACE $95 Struct. BASIC $295 Digital Microsystems HEX29 None HOST Std Std No Opt Opt ISAM Heath WH89-CS H-DOS $100 None Std Std No No No Microsoft BASIC $100 IBM 5110 n/a None No Std No No No APL $1000 Sort Utility Subroutine Library IMS Series 8000 CP/M FAMOS $1500 Opt $100 Opt Opt Opt OMNIX $350 CAP-CPP CBASIC $500 Intertec SuperBrain CP/M None Std $350 No $500 No None Micro V MicroStar 1 None StarDOS Opt Std Opt Opt Opt CP/M CAP-CPP MicroDaSys millie CP/M None Std Std $600 $400 $350 CBASIC $100 Microsoft BASIC $300 North Star HRZ-2-64K-D NS/DOS None No Std No No $199 None Ohio Scientific C3-C OS-65/ U Level 3 $400 Std Opt Opt Opt Opt OS-CP/M $600 Pertec PCC 2000 DOS MTX No Std Opt Opt No CP/M Radio Shack TRS-80 Model II TRSDOS None No Std No No No None Rexon RX30 None RECAP No Std No No No IDOL Smoke Signal 9822 DOS 69 None $40 $100 Opt $150 $250 Compiler BASIC $325 SWTP System D FLEX-09 Multi-user BASIC $150 $40 $65 No No $250 DEBUG $75 Sort/Merge $75 PILOT $250 Technico TAS-MU-DFD None MU/OS Std Std No $990 No 1 1 A (Std) TEI 3400 TDOS None Opt Opt Opt Opt No SORT (Std) Three Rivers Computer PERQ None DOS No No No No Std Symbolic Debugger Screen Window Mgr. Vector Graphic System B CP/M Timeshare Monitor $250 Std Std $500 No No UNIVIS (Std) APL $400 ASYNCH Comm. $150 Zilog MCZ-1/70-2 None RIO Std $500 $850 $950 $950 PLZ $500 ASYNCH Comm. $500 86 INTERFACE AGE JUNE 1 980 Table 5. Applications Software Data MANUFACTURER SYSTEM WORD PROCESSING DBMS G/L A/P A/R PAYROLL INVENT. CONTROL OTHERS Alpha Micro AM-1031 Std No Opt Opt Opt Opt Opt None Altos ACS8000-6/MU4 $500 No No No No No No None Computhink MINIMAX II No Std Std Std Std Std No None Cromemco System 3 $95 $95 No No No No No Multi-user DBMS $195 Digital Microsystems HEX29 No No No No No No No None Heath WH89-CS $495 No No No No No No None IBM 5110 No No $75/mo $75/mo No $80/ mo No Travel Agency Accounting Mortgage Closing Client Accounting Dental Accounting IMS Series 8000 $150 Opt Opt Opt Opt Opt Opt WordStar $495 Apartment Management Intertec SuperBrain No No No No No No No None Micro V MicroStar 1 Opt Std Opt Opt Opt Opt Opt Mail List MicroDaSys millie $275 $125 $99 $99 $99 $99 No WordStar $495 Medical Billing $895 Pencil Sharpener $195 Star Brightener $150 North Star HRZ-2-64K-D No No No No No No No None Ohio Scientific C3-C $200 $300 $300 $300 $300 $300 $300 Educational Pkg. Purchasing Estimating/Quotation Bill of Materials Mail List Pertec PCC 2000 No No Opt Opt Opt Opt Opt None Radio Shack TRS-80 Model II No No $199 No $299 $399 $199 Mail List $79 Rexon RX30 No Std No No No No No None Smoke Signal 9822 $80 No Opt Opt Opt Opt Opt None SWTP System D $35 No $595 $600 $600 No $100 Mail List $50 Shipping/Receiving $75 Technico TAS-MU-DFD Opt Std $2000 Opt Opt $1000 Opt None TEI 3400 No Opt No No No No No None Three Rivers Computer PERQ Std No No No No No No None Vector Graphic System B $450 $350 Std Std Std Std Std None Zilog MCZ- 1/70-2 No No No No No No No None Table 6. Corporate Data SERVICE REVIEWED SYSTEM GROSS DEALERS CENTERS FIRST TOTAL MANUFACTURER’S ADDRESS SALES ESTAB. US FOREIGN US FOREIGN DELIVERY QTY Alpha Microsystems 17881 Sky Park North Irvine, CA 92714 $17M 1977 170 30 10 30 Apr 1977 4000 Altos Computer Systems 2360 Bering Drive San Jose, CA 95131 $10M 1977 100 300 100 300 Jan 1975 5000 Computhink 965 W. Maude Avenue Sunnyvale, CA 94086 n/a 1978 25 75 25 75 Sep 1979 300 Cromemco, Inc. 280 Bernardo Avenue Mountain View, CA 94040 n/a 1974 107 38 107 38 Feb 1978 2000 + Digital Microsystems 4448 Piedmont Avenue Oakland, CA 94611 n/a 1975 n/a n/a n/a n/a Dec 1979 20 The Heath Company Benton Harbor, Ml 49022 n/a 1926 55 n/a 55 n/a Aug 1979 n/a IBM/General Systems Division 4111 Northside Parkway Atlanta, GA 30301 S2.3B 1924 n/a n/a n/a n/a n/a n/a Industrial Micro Systems 628 N. Eckhoff Street Orange, CA 92688 $4M 1975 75 25 75 25 Jul 1979 1000 Intertec Data Systems 2300 Broad River Road Columbia, SC 29210 $6M 1973 250 30 50 50 Oct 1979 4000 Micro V Corporation 17777S.E. Main Street Irvine, CA 92714 n/a 1978 40 35 40 9 Sep 1978 600 MicroDaSys P.O. Box 36051 Los Angeles, CA 90036 $1 M 1977 200 10 5 5 Feb 1979 125 North Star Computers 1440 Fourth Street Berkeley, CA 94710 n/a 1976 200 100 200 100 Dec 1977 10000 Ohio Scientific 1333 S. Chillicothe Road Aurora, OH 44202 n/a 1975 175 25 2 0 Jan 1979 n/a Pertec Computer Corporation 12910 Culver Boulevard Los Angeles, CA 90066 $148M 1967 100 35 30 35 Jan 1979 1500 Radio Shack 1300 One Tandy Center Fort Worth, TX 76102 $1.2B n/a 150 0 100 0 Jul 1979 n/a Rexon Business Machines 5800 Uplander Way Culver City, CA 90230 S1.5M 1978 42 2 13 2 Jul 1979 200 Smoke Signal Broadcasting 31336 Via Colinas Westlake Village, CA 91361 n/a 1976 80 20 40 20 Feb 1980 100 Southwest Technical Products 219 W. Rhapsody San Antonio, TX 78216 n/a 1964 125 30 125 30 Jun 1979 80 Technico, Inc. 9051 Red Branch Road Columbia, MD 21045 $3.4M 1965 14 26 4 4 Dec 1976 6000 TEI, Inc. 5075 S. Loop East Houston, TX 77033 n/a 1967 100 10 100 10 Dec 1979 500 Three Rivers Computer Corporation 160 N. Craig Street Pittsburgh, PA 15213 n/a 1974 0 0 1 0 Mar 1980 30 Vector Graphic, Inc. 31364 Via Colinas Westlake Village, CA 91361 $40 M 1976 225 50 225 50 Jan 1979 10000 Zilog, Inc. 10460 Bubb Road Cupertino, CA 95014 $40M 1974 5 3 9 6 Jan 1980 n/a JUNE 1980 INTERFACE AGE 87 RODNAY ZAKS applications book RODNAYZAKS J ^YBEX 6502 rv wHh JVDCX PROGRAMMING THE 6502 This book is designed as a progressive, step-by-step approach to assembly lan- guage programming-with excercises developed to test the reader at every step. Learn to write complete applica- tions programs. Features: Programming and addressing techniques, input/output techniques and devices, application examples, data structures, program development and more. Ref. C202 $12.95 CIRCLE INQUIRY NO. 64 6502 APPLICATIONS BOOK This title presents real life application techniques for any 6502 based micro- computer board. Programs presented cover building a complete home alarm system, electronic piano, motor speed regulator . . . and more. Learn techniques ranging from simulated traffic control to analog-digital conversion. The KIM-1, SYM-1 and AIM 65 are thoroughly covered. Ref. D 302 $12.95 6502 GAMES Designed as an educational text on advanced programming techniques, this book presents a comprehensive set of algorithms and programming tech- niques for common computer games. All of the programs were developed for the 6502 at the assembly language level. Learn how to devise strategies suitable for the solution of complex problems commonly found in games. Ref. G402 $12.95 Please send me . Name Company Address City TO ORDER: By Phone: (415) 848-8233, Visa, MC. AmEx . Charge my Visa: Mastercharge | By Mail: Indicate quantity desired. Pre- _American Express _State_ -Zip- SVB0C 2344 Sixth St. Berkeley, CA 94710 Please send me your detailed catalog. I AVAILABLE AT BOOK AND COMPUTER STORES EVERYWHERE . Card# _ . Signature . _Exp. Date I payment required Shipping: Add $1.50 per book (UPS) or 75C (4th Class - allow 4 weeks delivery) 1 Tax: In California please add tax The Teacher and the Personal Computer: Alternatives in Instruction By Samuel W. Spero INTRODUCTION The instruction process whether it is taking place at the elementary school level or in college must include four ele- ments. These are: motivation, learning experience, reinforc- ing experience, and evaluation. The diagram below illus- trates the relationship between these four elements. MOTIVATION LEARNING f~ * REINFORCING EXPERIENCE t r EXPERIENCE EVALUATION Learning Relationships While the order in which these elements take place or whether these elements are explicitly or implicitly addressed can vary, in one way or another these four elements must be accounted for in all good teaching. The manner in which a teacher implements any or all of these four elements is called instructional strategy. The instructional strategy, related to the individual teacher’s personality and style, should be clearly differentiated from the curriculum objective. The curriculum, what the students learn, can be stated very clearly and unambiguously, but the objective does not have to include the manner in which it is to be learned. Let us review briefly these four elements. A thorough understanding of a teacher’s instructional strategies will help clarify the particular strengths of personal computers. If a student is not motivated, there is little a teacher can do to help the student learn. Punishment is often used to threaten the unmotivated students. In the short range this occasionally works with certain groups, but in making a lasting impres- sion this approach is not recommended. Motivation can also be achieved by presenting the material in an interesting and/or relevant fashion using the student’s own intrinsic curiosity. The teacher chooses an instructional strategy which includes motivational elements so that students will be interested in what follows. The actual curriculum objective is introduced in a learning experience. The learning experience need not be a lecture, nor is it necessarily several pages in a text. Films, labora- tories, field trips are all possible learning experiences. The teacher must decide which learning experience is most appropriate for the particular objective. For example, a lec- ture is not appropriate for learning to drive, but it might be for learning about history. Learning theory specialists have discovered that no matter how impressive the learning experience, it must be reinforced by other experiences before learning can actually take place. This reinforcing experience is in fact the basis for homework. For example, in a mathematics class the students watch the teacher work out a problem in class — the learning experience in this case is lecture and blackboard. Their reinforcing exper- ience is to work on problems from their text, using the same procedure employed by their teacher. The reinforcing exper- ience uses the text and overt responses of the students. Any learning experience can also be a reinforcing experience. Finally, as part of the teacher’s overall instructional strategy, there must be evaluation. By evaluation we not only refer to grading students, but also an evaluation of the instructional strategies themselves. The teacher must determine if the in- structional strategies were effective. If the students learned, was it because of, or in spite of the instruction strategy; if the students did not learn, where did the instructional strategy fail? Perhaps the students were not motivated or the learning and reinforcing experiences were not appropriate. Evaluation is important to the total instructional process. When a teacher considers a new medium for incorporation into his or her instructional strategies, many questions must be asked: Will this medium help motivate my students? Will it provide a more meaningful learning experience? Will it create a more relevant reinforcing experience? Will it permit me to perform a more effective evaluation of my students and my instructional strategies? TEACHING WITH THE PERSONAL COMPUTER Microcomputers are making their way into the classroom and becoming one of the most effective instructional strate- gies an instructor can use. One teaching strategy uses Radio Shack’s TRS-80 to drive a 24-inch television monitor instead of the 12-inch monitor which is normally sold with it. Because of the graphics cap- ability of the TRS-80, as well as its 32-character-per-line out- put on the television screen, it is possible for all the students to simultaneously view the computer printout on the screen. Using this feature we have been able to develop computer- based instructional units in which the computer — with the television monitor— functions as a “dynamic blackboard.” The computer is used to generate material on the television screen which provides a framework for classroom discus- sion. Used in this way, the personal computer has made the conventional classroom, with its 30 or 40 students, far more exciting and has led to improved learning, according to teachers using this strategy. The second instructional strategy used is the small, port- able, high-speed printer (the Quikprinter I) available with the TRS-80. It generates printed materials for motivation, enrichment, reinforcement as homework assignments or data for a learning experience. It can also be used for evalua- tion and measurement. The materials generated by the printer can be duplicated for the entire class by the computer itself which prints at 180 characters per second. The com- puter can also print individualized sets of materials for the students where the computer prints each student’s name at the top of their unique problem assignment. The use of the computer to generate classroom materials has led to increased student motivation and learning without substantially increas- ing the work of the teacher. JUNE 1980 INTERFACE AGE 89 At the “bottom line” of both of these instructional strate- gies which incorporate the use of the personal computer is their cost-effectiveness. Compared to alternative computer hardware approaches, personal — or microprocessor based — computer systems are the least expensive. Using these personal computer systems, teachers are more effective at accomplishing what they were not able to before. HARDWARE The hardware configuration used to implement the above strategies includes the following: a. the central processing unit (CPU) which is the TRS-80 Level II with 1 6K of memory. The CPU includes key- board, DIN connectors for power supply, TV monitor, tape recorder and a parallel-port connector. b. the television monitor. The Radio Shack TRS-80 uses a DIN connector to connect the television monitor to the CPU. The DIN connector is available at any elec- trical supply store, and the wire connections are straight- forward and described in the Level I manual. The TRS-80 has two different sizes of characters which can be presented on the screen: 64-characters-per-line and 32-characters-per-line. It is this latter and the graphics which are used in the classroom. c. cassette tape unit for program and data storage. The use of audio-cassette technology for program storage makes it convenient to transfer programs between teachers and schools. It also permits the development of inexpensive software on a commercial basis. The neophyte computer user, i.e. the classroom teacher, also enjoys having complete possession of his own program library. With audio-cassettes this is possible. Mini-diskette systems are becoming increasingly available also. The storage medium — the. mini- diskette — is only slightly more expensive than the audio cassette. The advantage of the diskette system is the speed and reliability. However, they are also more expensive. To add a diskette unit to the TRS-80, an expansion interface must be added which has the port to which the diskette unit is attached. It is also recom- mended that 1 6K more of memory be added to the in- terface because the disk operating system uses a con- siderable portion of the 1 6K in the CPU. d. the high-speed printer. The Quickprinter I, which is Radio Shack’s version of the Centronics P-1 , prints at 180 characters per second, prints both upper and lower case, and prints in three character sizes. Although this printer uses special paper, a sheet about 8 Vi inches long costs no more than a penny or two. Besides the actual hardware, there are several other features of the TRS-80 which make it very attractive to the classroom teacher. These are: a. portability. The TRS-80 with all the hardware men- tioned above can be placed in its entirety on a cart and transported to different classrooms and schools. The only requirement to operate the system is an electrical outlet. Moving the computer to the students rather than vice versa is important since moving students from their regularly scheduled classrooms can be very disruptive. b. ease of service. Any Radio Shack store in the country will accept a TRS-80 for service. They, in turn, will send it on to a local service center for repair — their responsibility, not yours. It may be possible to use a “loaner” while the other system is being serviced. This represents a tremendous convenience for teachers who are somewhat leery of the hardware in any case. c. low-cost. A 32K TRS-80, Level II, plus monitor, cassette recorder, expander box, printer and mini- diskette unit costs under $3,000. This is the cost fora complete system. It is not necessary to have a service contract on the hardware because Radio Shack will repair any problems for a very nominal fee. To estimate the “real” cost of this system to educa- tion, consider the following exercise. If we amortize the $3,000 over three years, assuming we use the hard- ware ten months per year and 20 days per month, we arrive at a figure of $5.00 per day for the hardware. If the computer is used 5 hours per day the cost is about $1 .00 per hour for an entire class to use the personal computer. On a per student basis that averages out to about $.05 per student per hour. STRATEGY 1 - THE ‘ DYNAMIC BLACKBOARD” The way a teacher uses a blackboard is the way a com- puter is used in the first strategy. Generally a blackboard is used to create a framework for classroom discussion — even if the “discussion” is primarily the teacher lecturing. Seeing the various salient points of the lecture in print on the black- board helps the students understand. Because setting up material on the blackboard can be time-consuming and tedious for the classroom teacher, alter- natives to the blackboard have been developed. The most popular of these is the overhead projector. Its advantage over the blackboard is that materials for classroom discussion can be prepared ahead of time. In many ways the use of the computer with a television monitor can be compared to the overhead projector in that the materials are prepared ahead of time. Also materials can either be prepared professionally or by the teacher himself. The computer has several advantages over the blackboards and overhead projectors. One advantage is convenience. When many overheads are to be used, there is much flipping and sorting of transparencies. “Flipping and sorting” with the computer are accomplished at the touch of a key. The computer programs are stored on audio-cassettes which take up far less room and are easier to carry than the bulky over- head transparencies. Furthermore the presentations on the computerized “blackboard” are dynamic. Animation and teacher-designed graphics bring unique situations to the “dynamic blackboard.” Because we live in a generation of students raised on tele- vision, the use of this medium seems to have an unexplain- able hold on the students’ attention. Students who would otherwise ignore the blackboard and even overhead trans- parencies will pay close attention to the television monitor. This is a phenomenon which crosses boundaries of subject matter as well as level of instruction. Mathematics In mathematics instruction we use the random number generator (the RND function) to generate problems which are presented on the television screen. The students are then asked to solve the problem in class. After a few moments (and under the teacher’s control) the computer solves the problem step-by-step so that students can check if the way they solved the problem is correct. Because every step of the computer’s output is under the control of the teacher, he is able to discuss each of the steps in solving the problem in as much detail as required. In other words, the computer is pro- viding a framework for classroom discussion, just as the blackboard would. But now, having completed one example the teacher can type RUN and receive another example which can be presented in as much detail (or less) as the first example. This process can be continued as long as the teacher feels that it is necessary. The teacher can bypass the explanations and use the problems generated for quizzes or for individualized work by students having difficulty. Language Study The “dynamic blackboard” can be used to teach foreign languages. For example, if Hebrew is taught, the graphics capability of the TRS-80 generates large Hebrew characters on the screen. The computer generates the conjugation of a particular root form and asks the students to identify the 90 INTERFACE AGE JUNE 1980 tense and the person. Using animation the computer re- inforces the correct answer by circling the various prefixes and suffixes that characterize this tense and person. A nor- mally boring topic can be made fun using games, with two teams competing, and as an individual or small group tutorial. The computer is used to motivate drill-and-practice which is the essence of language study. The implications of this approach for study in any language including English are fairly obvious. Science and Social Studies In these areas the graphics capability of the TRS-80 to create diagrams and animate processes is used. For exam- ple, in social studies the TRS-80 is used to draw the map of a state (Ohio) and then quiz the students as to the location of various cities in the state. In general science, the TRS-80 may create a pump on the screen. The pump actually moves through its various cycles. As the basis for classroom discus- sion both of these applications of the “dynamic blackboard” have proven to be invaluable for motivating students and helping them learn. We have only begun to describe the ways the dynamic black- board can be used. The TRS-80-based dynamic blackboard has provided a motivational framework for instruction, in some cases it has provided a most effective learning experi- ence, often it has provided an excellent reinforcing experience and a source of questions for quizzes in classroom evaluation. STRATEGY 2 - “MATERIALS GENERATOR” The classroom teacher spends considerable time prepar- ing materials of one sort or another for distribution to the class. These materials can be homework assignments, a quiz or a test, or even something for students to work on for enrichment or remediation. The teacher may also prepare “fun”-type materials such as WORDFIND or CROSS- WORD puzzles for use by the class. These serve to motivate students to undertake a reinforcing experience. To prepare such materials, the classroom teacher must first locate such materials, then transfer them to a medium appropriate for duplication. This process is of such importance to the class- room teacher that an entire extra-textbook materials industry has evolved selling such materials to teachers. The TRS-80 with the Quickprinter can be used as a highly effective materials generator which is more cost-effective and more flexible than the materials that can be purchased in the teacher stores. While the idea of using the computer to gen- erate classroom materials is not new, the “wrinkle” that is added to this strategy with the advent of the personal com- puter is convenience and accessability. Mathematics One of the ways in which we use the “materials generator” is to generate different problem sets for each student. The same time the computer generates the problem set for the student, it generates the solution for the teacher. One exam- ple is the output from such an application in the area of poly- nomial equations in intermediate algebra. Sample of output #1 THE POLYNOMIAL FOR SRM SPERO IS 2 2 X + -15. -01 X + 58. 2358 X + -18. 5867 THE PHVSlCtflflS miCRDCDfTIPUTER REPORT Interesting Articles on Microcomputer Applications in: • Medical Account Records • Tax Record Preparation • Automated Patient Billing • Patient History Review • Drug Inventory and Prescription Printing • Employee Compensation • Disease and Drug Cross- Indexing • Success of Treatment Evaluation • Lab Data Processing • Access to Large Medical Data Bases (Toxicology) • Third Party Billing • Patient Scheduling • Word Processing • Continuing Medical Education • Aids for the Handicapped • Microcomputer Book Reviews • Bio-Med Statistics • MUMPS on Micros • Investment Analysis • Computer Games CIRCLE INQUIRY NO. 53 The information contained in the Physicians Micro- computer Report could save you thousands of dollars and a lot of headaches. The burgeoning costs of health care can only be controlled by the most efficient means of data ac- quisition, recording, and processing. There is no doubt that microcomputer technology will touch every phase of medical practice. In the Physicians Microcomputer Report you get objective analysis on: • How to pick the microcomputer system that best suits your medical and professional needs. • Where to find low cost medical and business software. • Articles and programs written by physicians on microcomputer application in business, research, and their own specialties. • News on the latest developments in medical electronics and microcomputer applications. • Articles for the novice medical microcomputer user. • National coordination of microcomputer medical software development and coverage of medical related computer conferences. • No nonsense economic facts on whether now is the time for you to computerize or just add more personnel. • Analysis of the future impact microcomputers will have on the allied medical areas. Please start my Club Membership and Subscription to the Physicians Microcomputer Report. A limited number of free sample copies are available if you hurry. Name (Print) City Address State □ $25 One year (12 issues) □ Bill Visa/BankAmericard Credit Card # -Zip. □ $15 Special six month trial subscription □ Bill Master Charge □ $12.50 Student Rate Interbank# Expir. Date Check enclosed for $_ Sand to: Dr. Garald M. Orouz, Editor, Physicians Microcomputer Report, Box 6483, Lawrancavilla, N.J. 06648 THE P0LYN0M2RL FOR SRM SPERO IS 3 2 X + -15. 01 X + 58. 2358 X + -18. 5867 THE ROOTS ARE . 35 6. 54 a 12 THE EXTREME? ARE FOR X = 2. 63238 V = 48. 9423 FOR X = 7. 37429 V = -4. 37031 The “materials generator’’ is also used to provide materials for several games such as MATHAGRAM and MATH-BINGO. Language Study The special types of materials which teachers prefer to pre- pare in language study lie primarily in the area of language games. The TRS-80 is especially strong in manipulating “strings.” One of the popular games used extensively (and not only in language study) is WORDFIND puzzles. The teacher supplies a vocabulary list and within moments the computer generates a WORDFIND puzzle for use by the class. Sample of output #2 mm mm is the m mm 2ED NlffiER IS W ffiM HMR 3RD mm IS THE DIRECTION UMBER i = m 2= RIGHT 3 = R- UP 4 = nm 5 = UP 6 = LEFT 7 - L-MRW § = l-up ii? i m 115 1 aimo 28 8 2 DELHME 11 1 3 ILLINOIS 612 4 mm 1811 4 KENTUCKY 3 3 2 mm 12 5 1 OHIO 1814 2 im 311 1 vmm 2 S P G D V Q T F M R Z T X e S H Z Q 1 B B L N F w R j_ N J R P 0 U 0 I L 0 L 2 F Q M 0 N T fi N H 0 W M z M L F A N X 3 Z C X J N H V S X I V H Q T 0 W S 2 y 4 D T F X G Q I D H U 0 T K X R V K E X 5 V P M M M 0 V L E z M I I X H L H X H 6 Q Z D N N S H D J N I E N I D Q M P 0 7 14 E V I M X K V G V N E s Li 0 H F* fi X 8 Q V L K X G P U W W G W J c I G X R c 9 N L W U J P c M C V K A z K X R V M s 18 1 L X M F J R V V s M E M L I V N L> X 11 I N K B 0 F K V G u F F N T V N D R T 12 X B F J H N Z Q F F X F Q T N Q T Z P 13 0 I J L I Z P I T B H E N P U W B Q K 14 y X M R 0 D V 2 14 X D G N H G c V R V 15 s L C I F H I L S J N 0 F F H K F M 16 fi B Z R C V L R T s cr X P P P F V V Z 17 X Z R D D Q B W G F E u u T E X R s M 18 E J J U H P fl V M T J c B P M X T J K 19 K M P Q I X V E? E L P w H R E c G B P 28 ==: 4 6 8 18 1 L2 14 16 18 28 Another popular game approach used in language courses is the computerized MADLIB approach. We cannot show the entire dialogue that gives rise to the following, but we are able to generate uniquely tailored materials for each student using information supplied by the student as in Roger Price’s original Madlibs. Sample of output #3 HEERE IS THE STORV rUK S F-f M S F> E R O mi upon ft time m spend m kit mm MISSED THE HISS ISSIPPI RIVER ® THEIR M 70 CALIFORNIA mm mum herds if rattlesnakes m SAM BLUE PAINTED IDIfiNS OF THE fPfm TRIE MMf MRS AFRAID fiND RfiN fiNHV FROM OREGON SDR STfi® AND m KILLED BY CHIEF CRffir HORSE GfN you FID ftT LESS! M3 ERROFS IN SPERO’S STORV? PROVE THE' ERRORS 8V US OF VOIR TEXTBOOK. Science and Social Studies In science and social studies, the computer is used to generate realistic data which can be analyzed by the students in order to apply procedures being studied, as well as to learn about various phenomena. For example, the famous Huntington II simula- tion packages have been adapted to use with the TRS-80. One of the simulations is the Millikan Oil Drop Experiment for determining the ratio of electric charge to the mass of the electron. The computer generates the actual data to be obtained from the experiment which the students can then analyze. The learning experience using the computer simulation is as good as that obtained in the laboratory experiment. By not having to do this experiment in the physics laboratory, the students have time to perform those experiments which lend themselves more to the actual lab experience. CONCLUSION The two instructional strategies place the computer into an instructional role for which it is well-suited. In this role it pro- vides the classroom teacher with technological assistance in completing tasks which the teacher cannot or will not per- form himself. To provide this assistance, only a minimal computer facility is required -*■ a so-called personal com- puter — which is relatively inexpensive. The teacher who uses the computer either as a “dynamic blackboard” or as a “materials generator” reaps maximum benefit. □ 92 INTERFACE ACE JUNE 1980 MicroQuote Your personal computer becomes a window on Wall Street. MicroNET, the personal computer service of CompuServe, now offers MicroQuote, a compre- hensive securities information system. With MicroQuote you can gain information from a data bank of over 32,000 stocks, bonds and op- tions from the New York, American, OTC and major regional markets plus Chicago options. MicroQuote contains price and volume data from January, 1974 with cumulative adjustment factors and dividend information from January, 1968. You can determine indicated annual dividends, earnings per share, shares outstanding, BETA fac- tors, open interest on options and amount outstand- ing on debt issues. MicroQuote can provide issue histories on a daily, weekly or monthly basis and even performs certain statistical analyses on the data. It’s a vital tool for any investor. It’s just part of the MicroNET service MicroNET also allows error-free downloading of software via the new software exchange and execu- tive programs (now available for the TRS-80, R Apple II” and CP/M R systems). It also provides electronic mail service and can be accessed with a 300 baud modem via local phone calls in more than 175 U.S. cities. Write for full details on how your microcom- puter can control one of the nation’s largest and most sophisticated time-sharing computer centers for about 8 cents a minute! TRS-80 is a registered trademark of Tandy Corporation Apple II is a registered trademark of Apple Computer. Inc. CP/M is a registered trademark of Digital Research Regional distributors and local dealers wanted. Inquire to Dept. R Software authors: MicroNET seeks to license quality programs for software exchange. Write to Dept. S ~ n/tu */ 'iiixiii SSL Mail to: Dept: I rnmnilClDrVD Personal Computing Division VC 5000 Arlington Centre Blvd. Columbus, Ohio 43220 JUNE 1980 CIRCLE INQUIRY NO. 10 INTERFACE AGE 93 My TRS-80 Likes Me When I Teach Kids How to Use It ' Part 10 By Bob Albrecht Copyright 1 980 by Bob Albrecht WANDERING STAR, AGAIN Last time we introduced you to Wandering Star, who wanders about the screen eating cosmic dust. Wandering Star first appears near the center of the screen, then rests for a brief time, perhaps thinking hungrily about cosmic dust. After her brief rest, Wandering Star wanders. . .up, down, left, right. . .on the screen. If she should meander into a place that contains a cosmic dust mote, she eats it, and moves on. Eventually, Wandering Star may reach the edge of the screen and disappear. This usually happens long before she has consumed all available cosmic dust. If you tried our Wandering Star program, perhaps you notice that occasionally she wanders in a very strange way. Sometimes she jumps all the way from the left edge of the screen to the right edge, or from the right edge to the left edge. This happens, for example, if she is poised right at the edge of the screen at position 255 and tries to wander one place to the right to position 256. Position 256 is on the left edge of the screen, one line down from the line that includes position 255. So we bring to you a new Wandering Star program, in which she wanders in a more mundane way without the benefit of hyperspace jumps. 100 REM*** WANDERING STAR #2 110 CLS 200 REM* **COSMIC DUST 210 FOR K = 1 TO 200 220 PRINT @ RND(1 022), 230 NEXT K 300 REM* **WANDERING STAR APPEARS 310 ROW = 7 320 COL = 32 330 PRINT @(64*ROW + COL), “*”; 400 REM* * *WANDERING STAR RESTS 410 T = 2000 420 FOR Z = 1 TO T : NEXT Z 500 REM* **WANDERING STAR WANDERS 510 PRINT @(64* ROW + COL), “ ” ; She leaves her old 520 W = RND(4) place 530 IF W = 1 THEN ROW = ROW + 1 She might go down 540 IF W = 2 THEN ROW = ROW - 1 She might go up 550 IF W = 3 THEN COL = COL + 1 She might go right 560 IF W = 4 THEN COL = COL - 1 She might go left 600 REM* **DID SHE GO OFF-SCREEN? 610 IF ROW <0 OR ROW > 15 THEN 910 620 IF COL < 0 OR COL > 63 THEN 910 630 IF 64* ROW + COL = 1023 THEN 910 700 REM***NO, SHE IS STILL ON-SCREEN 710 PRINT @(64*ROW + COL), “*” ; 720 T = 100 730 FOR Z = 1 TO T : NEXT Z 740 GOTO 510 900 REM * * * WANDERING STAR GOES OFF-SCREEN 910 PRINT @ ), “WANDERING STAR HAS LEFT THIS UNIVERSE.” 920 PRINT “FAREWELL, WANDERING STAR.” 930 GOTO 930 Compare this program with our first Wandering Star program in the April 1980 issue of INTERFACE AGE. Last time, we thought of the screen as having 1024 print positions num- bered from 0 to 1023. We avoided position 1023 because, if you print something there, everything on the screen scrolls up one line. Also see line 630 of our new program. This time, we think of the screen as having 1 6 rows with 64 columns in each row. The rows are numbered from 0 (top row) to 15 (bottom row); the columns are numbered from 0 (left edge) to 63 (right edge). 1 6 rows x 64 columns = 1 024 screen positions In lines 330, 560 and 720, something is printed at a screen position in row ROW and column COL. For example, 330 PRINT @ 64* ROW + COL, “*”; In lines 510 through 560, Wandering Star wanders. First, she leaves the place where she was (line 510). Then she de- cides whether she will move down (W = 1 ), or up (W = 2), or right (W = 3), or left (W = 4). She just might wander off-screen. This is checked by lines 610 and 620. If she wanders off-screen, the program jumps to line 910 and prints an appropriate message. This also happens if she wanders into position 1 023 (line 630). Why? Because printing something in position 1023 causes everything on the screen to scroll up one line. However, if she has stayed in the tiny universe of the TRS-80 screen, we must show her at her new place. This is done in lines 7 1 0 and 720. Finally, line 730 sends the com- puter back to let Wandering Star wander again. THE RETURN OF WANDERING STAR Well, Wandering Star wanders and. . .eventually. . . wanders off the screen, never again to appear on-screen. Farewell, Wandering Star. Alas, the part of the universe surrounding the screen is a cosmic desert. The screen, of course, is a cosmic oasis. So, after wandering in the desert for awhile, Wandering Star decides to return to the oasis where she can again savor cosmic dust and think about other oases elsewhere in the universe (and therein lies another story). Think about how Wandering Star might return. She left the universe along one of the edges of the screen. . .Hmmm, per- haps she could reappear somewhere at the edge of the screen. Does she learn from experience? Will she soon disappear again into the desert? Or will she remain in the food-rich oasis, pondering upon the greater universe, then invent or discover a way to move beyond the cosmic desert into other (and different) oases? 94 INTERFACE AGE JUNE 1980 SELECTED SHORT SUBJECTS* We call the following program “Countdown-Blastoff!” Enter it into your TRS-80 and RUN it. 100 REM* * *COUNTDOWN-BLASTOFF! 110 CLS 200 REM* * *COUNTDOWN FROM 10 TOO 210 FORC = 10 TOO STEP -1 220 PRINT C 230 FOR Z = 1 TO 300 : NEXT Z 240 NEXT C 250 PRINT “BLASTOFF!!!” : T = 400 : GOSUB 910 300 REM* * *SHOW SPACESHIP ON LAUNCH PAD 310 CLS 320 PRINT @512, “ 330 PRINT “ *U* ” 340 PRINT “ *S* ” 350 PRINT “ *A* ” 360 PRINT “ ***** ” 370 PRINT “*******” 380 T = 400 : GOSUB 910 400 REM***LAUNCH THE SPACESHIP 410 PRINT “ !!! ” : T = 300 : GOSUB 910 420 PRINT “ !!! ” : T = 200 : GOSUB 910 430 PRINT “ !!! ” : T = 100 : GOSUB 910 440 FOR K = 1 TO 16 450 PRINT : T = 100 : GOSUB 910 460 NEXT K 500 REM * * * ANNOUNCE A SUCCESSFUL LAUNCH AND STOP 510 CLS 520 PRINT “ALL SYSTEMS ARE GO. EVERYTHING IS AOK!” 530 END 900 REM ***TIME DELAY SUBROUTINE 910 FORZ = 1 TOT: NEXT Z 920 RETURN Now that you are launched into space, play our simple re- action time game to pass time until you reach your destination. 100 REM* **REACTION TIME PROGRAM 200 REM * * * INSTRUCTIONS TO THE PLAYER 210 CLS 220 PRINT “HOW FAST ARE YOU? I WILL CLEAR THE 230 PRINT “SCREEN FOR A LITTLE WHILE, THEN 240 PRINT “COUNT NEAR THE MIDDLE OF THE 250 PRINT “SCREEN. WHEN I START COUNTING, 260 PRINT “PRESS THE SPACE BAR AND I WILL 261 PRINT “STOP. STOP ME QUICKLY, IF YOU CAN!” 262 PRINT : PRINT “WHEN YOU ARE READY, PRESS 263 PRINT “ANY KEY” 270 IF INKEY$ = “” THEN 270 300 REM* * *CLEAR THE SCREEN FOR A RANDOM TIME, T 310 CLS 320 T = RND (2000) 330 FOR Z = 1 TO T : NEXT Z 400 REM * * * START COUNTING, SPACE BAR STOPS IT 410 X = 1 420 PRINT @472, X 430 IF INKEY<>“ ” THEN X = X + 1 : GOTO 420 500 REM*** PLAYER PRESSED SPACE BAR. PAUSE, THEN PLAY AGAIN. 510 T = 2000 520 FOR Z = 1 TO T : NEXT Z 530 GOTO 210 *This section is excerpted from the book TRS-80 BASIC: A Self-Teaching Guide by Bob Albrecht, Don Inman and Ramon Zamora, copyright 1980 by John Wiley and Sons, Inc. Play several times. An average of 10 is fast; congratula- tions. If your average is more than 20, well. . .maybe you are thinking about something else. Humm. . .we played the game several times and discov- ered a way to cheat. We can stop the computer with a count of 1 every time. We can do this, not because we are that fast, but because there is a flaw in the program. Beat the computer. Figure out how to stop the computer at 1 every time just by pressing the space bar. Later we will share our discovery with you, then show you how to fix the “bug” in the program so that this kind of cheating can’t happen. IMPORTANT. This computer error is not the fault of the computer. Rather, as are almost all computer errors, it is the fault of the programmer. This error almost escaped our notice. Imagine the letters we might have received if we had missed it. COMPUTERTOWN, USA This series is for teachers, parents or others who wish to help kids learn to use, program and enjoy computers. In ComputerTown, USA, kids do this in the public library. We have found some especially good stuff to recommend to you. Robert Purser's Magazine P.O. Box 466, El Dorado, CA 95623 The most complete source of information about commer- cially available software for the TRS-80, Apple computers. Quarterly, $ 12/year. CLOAD Magazine Box 1267, Goleta, CA 93017 The best software bargain we know of for people who wish to help kids learn. This is a cassette magazine; each month you get a cassette with several programs to plug into your TRS-80. On a scale of one to ten dragonsmiles, CLOAD gets ten dragonsmiles. $36/year. Adventure International Box 3435, Longwood, FL 32750 The Adventure games from this company are one of the best ways we know for a child to learn and love problem- solving. Cybernautics Box 40132, San Francisco, CA 94140 Their games, TAIPAN and GALACTIC EMPIRE, are the best simulation games we have seen for a 16K TRS-80. Try ’em — you will never go back to Hammurabi, King- dom, Star Trek, etc. The Software Exchange 6 South St., Box 68, Milford, NH 03055 Perhaps the most complete source of cassette and disk software, books and magazines for your TRS-80. Ask for its catalog. Computer Information Exchange Box 158, San Luis Rey, CA 92068 CIE publishes a newspaper called S-80 Bulletin, S-80 Computing Magazine and People's Software — inexpen- sive cassettes with lots of programs. And, as usual, for more info on ComputerTown, USA send a stamped, self-addressed envelope to ComputerTown, USA, P.O. Box 310, Menlo Park, CA 94025.D Copies of “My TRS-80 Likes Me, " Parts One and Two are now available free from Radio Shack. Interested persons should write to Sharon Ross, Radio Shack Circulation Dept. 3, 1300 One Tandy Center, Fort Worth, TX 76102. Bob Albrecht can be contacted at P.O. Box 310, Menlo Park, CA 94025. JUNE 1980 INTERFACE AGE 95 TRS-80 MOD II WORD PROCESSING dUPDciisy WORD PROCESSOR The best is now even better... New Features New Commands New Capabilities New Manual SPECIAL PACKAGE INCLUDES: • Wp Daisy™ word processor • Mail Merge™ mailing list package • I/OS operating system full CP/M™ & CDOS compatability Includes — Diablo, Spinwriter and Qume support — Printer spooling — 30 programs CP/M™ TM of Digital Research CIRCLE INQUIRY NO. 35 Reliable Business Bookkeeping Software ORDER ENTRY MICROSOFT CP/M r , PET, APPLE II, MICROPOLIS: $350/ea. GL, A/P, A/R, INVENTORY, PAYROLL Buy simple, effective programs designed specifically for your machine. Call us once for same week delivery on a product you can use the day you receive it, and two years from now when your company is twice TRS-80 MOD I: $100/ea. CBASIC-CP/M r : $200/ea. ATARI, PET, APPLE II, TRS-80 MOD II, MICROPOLIS, VECTOR, EXIDY, DYNABYTE, CROMEMCO, MICROSOFT CP/M r : $140/ea. They all work together! as big. Order today by U P S. COD. We'll pay postage and handling on Am. Ex., Visa, Mastercharge, or pre- paid orders. 467 HAMILTON AVE. PALO ALTO, CA. 94301 CIRCLE INQUIRY NO. 9 MATHTEST By Bethany Prendergast Microcomputers are particularly well adapted for use by the elementary school teacher. Their various uses in the role of C.A.I. (Computer Assisted Instruction) have been well documented by teachers and manufacturers alike. There is, however, another role for the microcomputer in the class- room that is passed over most probably because it lacks the glamor of the more exotic uses. This role uses the microcomputer to relieve the teacher from the time-consuming administrative duties involved in the classroom. Nowhere is the need for this more evident than in the elementary math classes. The good teacher is faced with the monumental task of planning, writing, giving and correcting workpapers and tests. This program is not just intended for teachers, however. It can very easily be used by parents who are concerned about their children’s math. There are many times when parents want to drill their children in math fundamentals, but found either writing the tests or correcting them to be tedious work. The need for the MATHTEST program came to me dur- ing this last year while I was introducing a course on micro- computing to the 7th and 8th graders at Assumption School in Jacksonville, Florida. The idea is to provide the teacher with a means to produce tests/workpapers almost at will. Each one can be made different, so there is no need to worry about cheating. The program is written for the TRS-80 Level II, but will operate on any 4K + machine with very little modification. Just type it in and follow the prompt questions as they appear on the screen. There are remark lines throughout that explain what’s happening. The program is designed to generate any number of multipli- cation, division, addition or subtraction test papers with up to 20 problems per page. It allows for 0-3 decimal places for the x and y, which are randomly selected numbers. The answers can either be placed on the same paper with the problems, or can be on a separate page. The answers that are generated will be to 4-place accuracy because of the print using state- ment. For more accuracy, that would have to be altered. When the program is run, the user answers the prompt on the screen to determine the number of tests, the number of problems per page, the number of decimal places the x and y will have, and whether the test is to be multiplication, divi- sion, addition or subtraction. □ Program follows 96 INTERFACE ACE JUNE 1980 PROGRAM LISTING 10 20 30 40 50 60 7 -PROGRAM LISTING FOR PUBLICATION - 08/01/79 '-PROGRAM NAME IS MATHTEST BY BETHANY PRENBERGAST ' -904/642-1902 * WRITTEN FOR THE TRS-80 LEVEL II WITH LINE '-PRINTER OF 30 COLUMNS. PROGRAM WILL GENERATE RANDOM TESTS '-IN ACCORDANCE WITH ENTRIES FROM PROGRAM PROMPTS. '-SET PP AHEAD OF P TO PREVENT DIV.BY 0 LATER 70 BEFDBL A* X, Y 80 CLSI RANDOM ;PRINT"MATH PROBLEMS" 70 INPUT"ENTER NO. OF DECIMAL PLACE3( 0, 1 ,2,3 )" ,‘P 100 INPUT "NO. OF DIFFERENT TESTS DESIRED" 5S 110 INPUT" ENTER NO. OF COPIES OF EACH TEST" »TD 120 INPUT" ENTER TEST TYPE - ( ADD, SUBT, MULT »BIV )",*MD$ 130 IF MD$<>" MULT" AND MD$<>"DIV" AND MB$<>" ADD” AND MD$<>"SUBT" THEN 120 140 IF P=0 THEN PP=1 150 IF P=1 THEN PP=10 160 IF P=2 THEN PP=100 170 IF P=3 THEN PP = 1000 180 INPUT H ENTER NO. OF PROBLEMS DESIRED ON EACH TEST PAPER" 5T 190 DIM X(S,T>, Y(S,T), A(S,T> 200 INPUT" ENTER MAX. VALUE FOR X (WHEN X/Y,X*Y >" ,‘L1 210 INPUT "ENTER MAX. VALUE FOR Y (WHEN X/Y,X*Y)"5L2 220 'STORE PROBLEMS IN R.A.M. 230 CLSt PRINT"WORKING" 240 FOR II = 1 TO S 250 FOR I = 1 TO T 260 X< 1 1 , 1 )=RND( LI ) I Y( 1 1 , 1 )=RND( L2 ) 270 IF Y( II, I )>X( 1 1 ? I > THEN260 230 IF XdI,I)=0 OR Y( II»I )=0 THEN 260 290 '-RANDOMLY SELECT X, Y OR BOTH X AND Y TO CONTAIN DEC.FRAC. 300 CH=RNB( 9 ) 310 IFCH>3ANDCH<7THENY( II,I >=Y( II, I )/PPELSEX( lit I >=X( II, I )/PPt Y( II, I )=Y( II, I )/PP 320 X< lit I )=« X< II , I )*1000 >/1000 S Y< II, I )=( Y< II, I )*1000 )/1000 330 NEXT I 340 NEXT II 350 '-PRINT OUT TEST PAPERS AND STORE ANSWERS FOR LATER 360 IF MD$="MULT” THEN 400 370 IF MD$="BIV" THEN 580 380 IF MD$=" ADD" THEN 980 390 IF MD$="SUBT" THEN 1180 400 FOR II = 1 TO S 410 FOR CC = 1 TO TD 420 LPRINT" 430 LPRINT" 440 LPRINTILPRINT 450 LPRINT" 460 LPRINTILPRINT 470 FOR I = 1 TO T 480 LPRINT" *>I»" )"»X( II, I )? "x" 5Y( II, I >,*" = " 490 '-CALCULATE ANSWER AND STORE UNDER A(II,I> 500 A( II , I )=( X( II , I )*Y( II, I ) ) 510 LPRINT 520 NEXT I 530 LS = 60 - <+7) 540 FOR ZZ= 1 TQ LS l LPRINT : NEXT ZZ 550 FOR ZZ= 1 TO 2000: NEXT ZZ 560 NEXT CC:NEXT II 570 GOTO 750 580 FOR II = 1 TO S 590 FOR CC= 1 TO TD 600 LPRINT" 610 LPRINT" 620 LPRINTILPRINT 630 LPRINT" DIVISION PROBLEMS - 640 LPRINT ILPRINT 650 FGR 1= 1 TO T 660 LPRINT" ”,‘I r )"5X< II , I ),*"/" ,*Y( II, I ),*" = " 670 '-COMPUTE ANSWER AND STORE UNDER A(II,I) 680 A( 1 1 » I )=( X( 1 1 , 1 )/Y( 1 1 , 1 ) ) 690 LPRINT 700 NEXT I 710 LS = 60 - <(T*2)+7> 720 FOR ZZ = 1 TO LS : LPRINT t NEXT ZZ 730 FOR ZZ = 1 TO 2000 : NEXT ZZ 7*0 NEXT CCtNEXT II 75C IF MD$="MULT" THEN LPRINT" ANSWERS TO MULTIPLICATION TESTS" 760 IF MD*="BIV" THEN LPRINT" ANSWERS TO DIVISION TESTS" 770 IF MD$="ADD” THEN LPRINT" ANSWERS TG ADDITION TESTS" 780 IF MD$="SUBT" THEN LPRINT" ANSWERS TO SUBTRACTION TESTS" 790 LPRINT name:" DATE!" MULTIPLICATION PROBLEMS TEST PAPER * "5 II name: date: TEST PAPER * HI I 800 ' -A$ AND C$ ARE USED TO KEEP ANSWERS IN COLUMNS 310 A*=" 820 C$=" 330 B$=' #,***,**#.**«" 840 FOR 11= 1 TO S: LPRINT" TEST PAPER # "5 II 850 LPRINT 860 '-KEEP CHECKING THAT THERE IS AN A TO PRINT 370 FOR 1= 1 TG T STEP 3 880 IF I<10 THEN X$=A* ELSE X$=C$ 890 LPRINT X$,*IJ"}"»USINGB$;A(II,I>»* 900 IF I = T THEN 960 910 IF 141 <10 THEN X$=A$ ELSE X$=C* 920 LPRINT ‘USINGS*, *A(II,(IM))f 930 IF HI =T THEN 960 940 LFRINT X* ? 1+2, " )" ,*USINGB*?A( II, ( 1+2 ) ) 950 IF H2<10 THEN X$=A$ ELSE X$=C$ 960 next i:lprint:lprint:next II 970 END 980 FGR II=i TO S 990 FOR CC=1 TO TD 1000 LPRINT TAB(45)"NAME:" 1010 LPRINT TAB(45)"DATE:" 1020 LPRINT ILPRINT 1030 LPRINTTAB( 20 )"ADDITION PROBLEMS-TEST PAPER ♦"HI 1040 LPRINTILPRINT 1050 FOR 1=1 TO T 1060 LPRINT" •?If*)"X(II,I)5 H +"JY( 11,1)5"=" 1070 'COMPUTE ANSWER AND STORE UNDER Ad I, I) 1080 A( 1 1 , 1 )=X( II, I )+Y( 1 1 , 1 ) 1090 LPRINT 1100 NEXT I 1110 ' GENERATE LINE FEEDS FOR NEXT FORM 1120 LS=60-((T»2)+7) 1130 FOR ZZ=1 TO LS ILPRINT! NEXT ZZ 1140 'GENERATE FALSE LOOP BETWEEN PRINTS 1150 FOR ZZ=1 TQ 2000 INEXTZZ 1160 NEXT CCI NEXT II 1170 GOTO750 1180 FOR 11=1 TO S 1190 FOR CC=1 TO TD 1200 LPRINT TAB(45)"NAME:" 1210 LPRINT TAB(45)"DATE: K 1220 LPRINTILPRINT 1230 LPRINTTAB< 20 )"SUBTRACTION PROBLEMS-TEST PAPER *"ill 1240 LPRINTILPRINT 1250 FOR 1=1 TO T 1260 LPRINT" "il,*" )"X( II, I ), "-"fY( II, I )?" = " 1270 'COMPUTE ANSWER AND STORE UNDER A(II, I) 1280 A( II, I )=X( II, I )-Y( II, I ) 1290 LPRINT 1300 NEXT I 1310 ' GENERATE LINE FEEDS FOR NEXT FORM 1320 LS=60-((T*2)+7> 1330 FOR ZZ=1 TO LSILPRINTINEXT ZZ 1340 'GENERATE FALSE LOOP BETWEEN PRINTS 1350 FOR ZZ=1 TO 2000 INEXTZZ 1360 NEXT CCI NEXT II 1370 GOT0750 JUNE 1980 INTERFACE ACE 97 Using and Building Micro-Based Systems Chapter Six By David Marca, Associate Editor This chapter develops the concept of software tools and provides some useful examples in FORTRAN. The reader will find an orderly progression from simple concepts to complex examples. The organization of the article allows for the reading and programming of independent tools that are used in a building-block manner (one on top of the other) to create useful applications. FOUNDATIONS FOR SOFTWARE TOOLS Building a foundation for developing software tools is an important step towards well-engineered application software. While tools can be built for any type of application area (like the FORTRAN scientific subroutine library), the concentra- tion here will be on non-numeric computation. This empha- sis on character-oriented problems was taken because many day-to-day business applications require non-numeric pro- cessing, and also because character-oriented problems can be understood with little application experience. In order to build software tools, we will rely and expand upon the concepts covered in previous articles. Basic data concepts in FORTRAN will be enhanced by adding facilities to define and manipulate character strings. Basic structure concepts will be utilized to build more complex data struc- tures. Previous algorithm concepts, including Alias/Alibi, will be reinvestigated in the new context of character-oriented problems. (A review of chapter five at this time may help to firm up fundamentals of computer programs.) While underlying concepts may be difficult, the tools approach is rather simple — one builds upon the work of others. Not everyone’s past work can be reused, however. Traditionally, a program or a subroutine is constructed to perform one or (at best) a few specific jobs. A software tool, however, must be able to work in a multitude of different en- vironments. It should have well-defined, simple, and stan- dard interfaces, and avoid the idiosyncrasies of FORTRAN, concealing the evident ones in select modules. Lastly, but most importantly, the program or subroutine should perform a very specific (at best, a single) function on a small set of data. Ideally, this type of software has a well- chosen set of filters that becomes a set of building blocks which can be used separately or together, handling many programming needs. These blocks improve the quality of application software in a micro environment. Smaller programs and subroutines de- crease the potential for errors in testing and during actual use. Also, limitations in programming languages and hardware can be hidden from most of the application by the use of filters. For example, the isolation of all I/O details in a set of sub- routines requires changes to only those subroutines when the software is moved to a different hardware configuration. Good tools are also important when creating a micro-based software system. Current micro-environments are sorely lacking in adequate tools to produce well-engineered soft- ware. Four such programming aids are: • Trace facility • File comparator • Call and called by maps • Documentation extraction from source code After our software tool foundations have been established, the above types of programming aids should be easy to im- plement on most microcomputers having a FORTRAN com- piler. Since there is a heavy emphasis on non-numeric pro- cessing, we must now investigate how the FORTRAN lan- guage handles character strings. 98 INTERFACE AGE JUNE 1980 FORTRAN CHARACTER STRINGS These capabilities were added to the original FORTRAN II language in March 1966 when the FORTRAN IV standards were approved. Hollerith constants (alphanumeric characters surrounded by single quotes) were allowed to be used in very limited contexts. Each numeric data type was allowed to con- tain character information. The maximum number of charac- ters held by a data type depended upon the hardware’s byte length and storage allocation rules of the compiler. A rule of thumb is one character per byte size of the data type (figure 1 ). VARIABLE TYPE SIZE (BYTES) MAXIMUM CHARACTERS ALLOWED DOUBLE PRECISION 8 8 REAL 4 4 INTEGER 2 2 LOGICAL 1 1 Figure 1. Character capacity of Fortran data types (for TRS-80). Within a data type, characters can be packed using dif- ferent formats. The programmer is allowed to read in a write- out character using the “A” format code. One to eight characters can be transferred to or from a variable by specify- ing A1 to A8 respectively in a FORMAT statement (figure 2). During input from a device, the characters are right justified in the variable (right-most character is put in the right-most byte, etc.). 00100 INTEGER TTY, KEY 00200 LOGICfiL CHRR1 00300 INTEGER CHAR2 00400 RERL CHAR3, CHAR4 00500 DOUBLE PRECISION CHARS, CHRR6, CHAR7, CHRR8 00600 DfiTR TTY/1/, KEY/1/ 00700 WRITE (TTY, 50 > 00800 50 FORMATdH , "START OF PROGRAM") 00900 READ (KEY, 100) CHRR1 01000 100 FORMAT (1R1) 01100 READ (KEY, 200 > CHAR2 01200 200 FORMAT (1R2) 01300 READ (KEY, 300) CHRR3 01400 :<00 FORMAT (1R3) 01500 READ (KEY, 400) CHAR4 01600 400 FORMAT (1A4) 01700 READ (KEY, 500) CHARS 01.800 500 FORMAT (1A5) 01900 READ (KEY, 600) CHAR6 02000 600 FORMAT <1R6> 02100 READ (KEY, 700) CHAR7 02200 700 FORMAT (1A7) 02300 READ (KEY, 800) CHARS 02400 800 FORMAT (1A8) 02500 WRITE (TTY, 9999) 02600 9999 FORMAT (1H , "END OF PROGRAM' ) 02700 STOP 02:800 END Figure 2. Reading in characters. Characters are also allowed to be put into a variable by the DATA statement. The programmer can specify a Hollerith constant with a size equal to or less than the character capac- ity of the variable. On some compilers, the DATA statement left-justifies characters in the variable. This has been a con- stant source of programmer errors. Try out the program in figure 3 to see if the DATA statement right or left justifies on your compiler. 00100 INTEGER TTY, KEY 00200 INTEGER I NIT, INPUT 00300 DATA TTV/1/, KEY/1/ 00400 DATR INIT/"A"/ 00500 WRITE (TTY, 100) 00600 100 FORMAT (1H , "START OF PROGRAM') 00700 WRITE (TTY, 200) 00800 200 FORMAT (1H , "PLEASE ENTER THE LETTER A - ") 00900 READ (KEY, 300) INPUT 01000 300 FORMAT (1A1) 01100 WRITE (TTY, 400) INIT, INPUT 01200 400 FORMAT (1H , "INIT=",1A1, " INPUT=",1A1) 01300 IF (. NOT. (INPUT . EQ. INIT)) GOTO 600 01400 WRITE(TTY, 500) 01500 500 FORMAT (1H , 'DATA STATEMENT RIGHT- JUSTIFIES" ) 01600 GOTO 800 01700 600 CONTINUE 01800 WRITE (TTY, 700) 01900 700 FORMAT (1H , "DATA STATEMENT LEFT-JUSTIFIES") 02:000 800 CONTINUE 02100 WRITE (TTY, 9999) 02200 9999 FORMAT (1H , "END OF PROGRAM") 02300 STOP 02400 END Figure 3. Packing of characters— data statement vs. read statement. 00100 INTEGER TTY, KEY, PTR 00200 INTEGER BLANK, CHAR 00 j>00 DATA TTY/1/, KEV/1/, PTR/2/, BLANK/8224/ 00400 C 00500 WRITE (TTY, 100) 00600 100 FORMAT (1H , "START OF PROGRAM") 00700 WRITE(PTR, 200) 00800 200 FORMAT (1H , " ') 00900 WRITE (PTR, 300) 01000 300 FORMAT ( 1H , " CHARACTER CODE ( 1 A1 ) " ) 01100 WRITE (PTR, 200) 01200 C: 01300 WRITE (TTY, 400) 01400 400 FORMATdH , "?") 01500 RE AD (KEY, 500) CHAR 01600 500 FORMAT dAl) 01700 c. 01800 600 IF (CHAR . EQ. BLANK) GOTO 800 01900 WRITE (PTR, 700) CHAR, CHAR 02000 700 FORMATdH , 4X, 1A1, 8X, 16) 02100 WRITE (TTY, 400) 02200 READ (KEY, 500) CHAR 02300 GOTO 600 02400 800 CONTINUE 02500 WRITE (PTR, 200) 02600 C 02700 WRITE (TTY, 9999) 02800 9999 FORMATdH , "END OF PROGRAM") 02900 STOP 03000 END Figure 4. DECODE Program. JUNE 1980 INTERFACE AGE 99 I ne last way characters can be stored into a variable is by using a Hollerith constant as an argument in a subprogram call. According to subprogram calling conventions, a vari- able within a subprogram acquires those characters as if they had been read in or initialized with a DATA statement. The variable’s content can then be written out, compared, or manipulated as desired. The actual contents of any variable containing characters can be displayed in numeric form as well as character form. Characters can be read in and written out using the “A” for- mat, or their numeric equivalent can be stored or retrieved using any FORTRAN numeric operation. A quick way to document the numeric equivalent for each character on your machine is to run the DECODE program (figure 4). This program reads in characters in “A1 ” format, and prints the characters and their numeric equivalent on the printer. Once numeric equivalents are known, character sets (e.g., upper case, lower case, special) can be defined numerically for an application (this program was used to specify character sets for the string package presented further in this article). MAIN PROGRAM CALL SETTRC (trace parameters) CALL A CALL B STOP END SUBROUTINE A CALL CALL ('A') CALL RETR ('A') RETURN END SUBROUTINE B CALL CALL ('B') CALL C CALL RETR ('B') RETURN END SUBROUTINE C CALL CALL ('C') CALL RETR ('C') RETURN END Figure 5. Using the trace facility. TRACE FACILITY Even with the limited character string capabilities of FOR- TRAN, we can build one of the four .important tools men- tioned earlier — the trace facility. This records each sub- program’s CALL and RETURN. The trace facility built for this tutorial was designed to be invoked immediately before and after any subprogram code is executed. Tjius, one part of the tool must record the fact that a particular subprogram was called, and another part must signal that the subprogram is returning to its caller. The subroutines “CALL” and “RETR” provide these functions respectively. In order to use the trace facility, a subprogram must invoke the “CALL” subroutine before it starts to do any work. The logic of a subprogram should be structured so that there is always only one entry point and one exit point to the sub- program. In this way, the subprogram need only call the “CALL” subroutine at the beginning, and the “RETR” sub- routine at the end. The argument to both “CALL” and “RETR” is a single Hollerith constant representing the sub- program name. The mainline program is required to ini- tialize the tool by specifying the trace device and a trace on/off switch (figure 5). CALL SUBPROGRAM "C" (PUSH) : RETURN FROM SUBPROGRAM "C" NEW TOP AFTER POP Figure 6. Trace stack data structure and operations. WO INTERFACE ACE JUNE 1980 The overall design and implementation of the trace tool was very dependent upon the nature of the problem. Keep- ing track of calls and returns requires the saving of the cur- rent subprogram name when another (child) call is made, and the restoration of the caller (parent) subprogram name upon a return. A very common data structure which can handle this type of problem is called a stack. The term “stack” is given because the information in the data structure is manipulated like a stack of coins. Only the top of the stack can be touched — either to add a new piece of data (push) or remove the piece of data at the top (pop). Thus a call to a subprogram would push that subprogram’s name on the top of the stack, and a return would require the removal of that name from the stack top (figure 6). Having a data structure and its operations so closely resembling the problem struc- ture made the design and coding (figure 7) easy. A simple one-dimensional array (stack) keeps the subprogram names, while a single scalar variable (level) keeps track of the top of the stack (i.e., last assigned element in the array). 00100 SUBROUTINE CALL <' NAME) 00200 DOUBLE PRECISION NAME 00300 LOGICAL TRACE 00400 INTEGER LEVEL, STKSIZ, DEVICE 00500 DOUBLE PRECISION STACK (20) 00600 COMMON /TRCSTK/TRACE, DEVICE, LEVEL, STKSI2, STACK 00700 LEVEL =LEVEL+1 00800 IF ( NOT (LEVEL. LE. STKSIZ)) GOTO 300 00900 STACK ( LEVEL )=NHME 01000 IF ( NOT (TRACE)) GOTO 200 01100 WRITE (DEV ICE, 100) LEVEL, NAME 01200 100 FORMAT (1H , 13, ' CALL: MA8) 01300 200 CONTINUE 01400 300 CONTINUE 01.500 RETURN 01600 END 01700 C 01800 SUBROUTINE RETR(NAME) 01900 DOUBLE PRECISION NAME 82000 LOGICAL TRACE 02100 INTEGER LEVEL, STKSIZ, DEVICE 02200 DOUBLE PRECISION STACK (20) 02300 COMMON /TRCSTK/TRRCE, DEVICE, LEVEL, STKSIZ, STACK 02400 IF (. NOT (LEVEL. GT. 0>> GOTO 700 02500 IF ( NOT. (LEVEL. LE. STKSIZ)) GOTO 500 02600 IF ( NOT (STACK (LEVEL). EQ. NAME)) GOTO 200 02700 IF (. NOT (TRACE)) GOTO 150 02800 WRITE (DEV ICE, 100) LEVEL, NAME 02900 100 FORMAT (1H , 13, ' RETR: ', 1A8) 03000 150 CONTINUE 03100 LEVEL=LEVEL-1 03200 GOTO 400 03300 200 CONTINUE 0340O WRITE (DEV ICE, 300) NAME, STACK (LEVEL) 03500 300 FORMATdH ,'RETR: MAS,' INSTEAD: ' , 1A8) 03600 LEVEL=LEVEL-1 03700 400 CONTINUE 03800 GOTO 600 03900 500 CONTINUE 04000 LEVEL=LEVEL-1 04100 600 CONTINUE 04200 GOTO 900 04300 700 CONTINUE 04400 WR I TE < DEV I CE, 800 ) NAME 04500 300 FORMATdH , 'NO MATCHING CALL FOR: MAS) 04600 900 CONTINUE 04700 RETURN 04300 END 04900 c 05000 SUBROUTINE SETTRC(TRCON, TRCDEV) 05100 LOGICAL TRCON 05200 INTEGER TRCDEV 05300 LOGICAL TRACE 05400 INTEGER LEVEL, STKSIZ, DEVICE 05500 DOUBLE PRECISION STACK (20) 05600 COMMON /TRCSTK/TRACE, DEVICE, LEVEL, STKSIZ, STACK 05700 TRACE=TRCON 05800 DEVICE=TRCDEV 05900 LEVEL=0 06000 STKSIZ=20 06100 RETURN 06200 END Figure 7. Trace facility code. CHARACTER STRING HANDLER Clearly, FORTRAN is not one of the richest languages when it comes to character string handling. The current stan- dard does not even have character data types or operations. Belter string processing is, however, being considered for the next version of the industry standard. Even with present deficiencies, some have proposed techniques for represent- FUNCTION CTRAN BASIC (level II) Initialize CALL INISTR not needed Declare string CALL DCLSTR(A,50) not needed Read string CALL GETSTR(TTY,A) INPUT A$ Write string CALL PUTSTR (TTY , A) PRINT A$ Assign constant no equivalent A$="LITERAL CONSTANT" Assign string CALL MOVSTR(B,A) B$=A$ Concatenate CALL MOVSTR(B / CATSTR(A / C) ) B$=A $+C$ Repeat CALL MOVSTR(B,REPSTR(A,5)) partial functionality with STRING$ Take a Piece CALL MOVSTR(B,SUBSTR(A,3,7)) B$=MID$(A$,3,7) Change a Piece CALL MOVSTR(SUBSTR(A, 2, 5) ,B) no equivalent Length of String S=LENSTR(A) S=LEN ( A$) Find start of a pattern P=FNDSTR(A, B) no equivalent Null string CALL NULSTR(A) A$="" Blank string CALL BLKSTR(A) no equivalent Get special character set CALL GETSPL(A) A$="! @#$%A &*()+__: . , ; \ , <>" C equality Compare for / less than | greater than IF(EQSTR(A, B) ) . . . IF(LTSTR(A,B))... IF(GTSTR(A, B) ) . . . IF A$=B $. . . IF A$B $ . . . ( HIGH VALUES bet to V. |_ow VALUES CALL GETHGH (A) CALL GETLOW(A) no equivalent Figure 8. CTRAN interfaces compared with BASIC. JUNE 1980 INTERFACE AGE 101 ing variable length character strings. Others have expanded upon these earlier concepts and developed a good set of character handling subroutines. There are many good reasons for developing this type of software tool, especially in the micro-environment. A string package generalizes the local environment around an appli- cation program, providing a simple and consistent level of interface. In this way, the application logic is only concerned with the manipulation of character strings as it relates to the problem solution. Details about the form of storage and I/O are hidden from the application level. Certainly these quali- ties enhance the ability to move programs from one system or compiler to another with little or no change — a distinct advantage of FORTRAN. A good character string package for FORTRAN must pro- vide several functions: • declare a string variable • read in/write out a string from/to a device • build a string from other strings • break a string apart • scan a string for a pattern • determine a string’s length • compare strings to each other The character string package developed for this tutorial provides all the above functions, plus some important utili- ties. Interfaces shown in figure 8 were forced to be imple- mented by subroutines, however, due to compiler limita- tions. This package will be called CTRAN in this series. A simple test showing how an application program actu- ally uses the CTRAN package is in figure 9. Ffere, simple read-first logic is used to read in a string and then echo what was entered. The program stops when no characters are entered. Tracing is initialized since all tools in this tutorial use that facility to help the programmer test an application. 00100 INTEGER TTV,KEV 00200 INTEGER STRING 00300 LOGICAL TRACE 00400 DATA TTY/1/, KEY/1/ 00500 C 00600 WR I TEC TTY, 100) 00700 100 FORMAT C1H , 'START OF PROGRAM') 00800 TRACE*. TRUE. 00900 CALL SETTRCC TRACE, TTY) 01000 CALL INISTR 01100 CALL DCLSTRC STRING, 30) 01200 C 01300 NR I TEC TTY, 200) 01400 200 FORMAT C1H , 'STRING?') 01500 CALL GETSTRCKEY, STRING ) 01600 C 01700 300 IF C0 . EQ. LENSTRC STRING)) GOTO 500 01800 NR I TEC TTY, 400) 01900 400 FORMAT C1H , 'STRING ENTERED. ') 02000 CALL PUTSTRC TTY, STRING) 02100 NR I TEC KEY, 200) 02200 CALL GETSTRCKEY, STRING) 02300 GOTO 300 02400 500 CONTINUE 02500 C 02600 NR I TEC TTY, 9999) 02700 9999 FORMAT C1H , 'END OF PROGRAM' > 02800 STOP 02900 END Figure 9. Echo Program. Experience with building and using a character handling package of this type has identified three important optimiza- tions for micros. First, any portion dealing with input/output can be recoded to take advantage of a particular machine, compiler and storage size. This will increase the speed of the software if I/O routines have very general algorithms. Sec- ond, CTRAN uses “A1 ” format with an INTEGER array for its central string space. Recoding to use the most storage effi- cient data type for a particular machine could certainly reduce wasted storage. Lastly, all internal operations should be done with the fastest INTEGER arithmetic possible. This may be in conflict with the previous recommendation, and usually space is more of a problem than small inefficiencies in speed. WORD ISOLATOR Now we have enough tools to make our first set of real filters. The string handling package divorces us from the details of variable length character strings, and allows us to concentrate on application details. The trace facility will be employed to help test the software we build. Keeping in mind those four major programming aids mentioned in the introduction, we can build a level of filters which provide a common level of support — a word isolator. We can define a “word” as being a collection of alpha- numeric characters surrounded by special characters. Special characters are symbols not commonly found in a word (e.g., comma, period, colon, question mark, blank, etc.). The ac- tual text containing those words should be considered as a single stream of characters to the word isolator. This allows the details of how the text is actually stored to be hidden from the real problem of forming a word. We therefore have two major parts to the problem. The first is forming words from a stream of characters. The second involves creating a stream of characters from some sort of physical storing of text. Having stated our two major requirements, we can design these two important parts (figures 10 and 1 1). The design representation used is the Nassi-Schneiderman Structured Flowchart forms. For this exercise, we are not taking into account the problem of detecting when the entire input is ex- hausted. We are also limiting our input device to the key- board, both for simplicity and to allow you to easily imple- ment these programs. GET THE FIRST CHARACTER OF THE WORD GET THE NEXT CHARACTER FROM THE STREAM 2 UNTIL THIS CHARACTER IS A SPECIAL CHARACTER: APPEND THIS CHARACTER TO THE WORD WE ARE CURRENTLY BUILDING 3 GET THE NEXT CHARACTER FROM THE STREAM ^ [H Figure 10. Design of Get Word filter. 102 INTERFACE AGE JUNE 1980 Figure 11. Design of Get Next Character filter. Figure 12. Word isolator general design. Using these two filters, a general design was established (figure 12). This design representation uses Hierarchical In- put Process Output diagrams, including all the major func- tions required to perform word isolation. During implemen- tation, this design was used to develop the major sub- programs. Other subprograms were built to provide a clean way of remembering and retrieving important information shared among many subprograms (figure 13). Additional design was needed to define these, but discussion of this is beyond the scope of this tutorial. A simple test of the word isolator shows how easy it is to get a word from text with this filtering mechanism (figure 14). 00100 c —GET CHRR STRING VRRIRBLE 08200 C 003:00 SUBROUTINE GETCS 02000 ENDLIN=ENDPTR 02100 CRLL RETRC 'GETELP ') 02200 RETURN 021500 END 02400 c 02500 c —GET FIRST CHRR IN WORD 02600 c 02700 SUBROUTINE GETFCRC DEV ICE, CHRR) 02800 INTEGER DEVICE, CHRR 02802 LOGICRL SPLCHR 02900 CRLL CALL< 'GETFCR ') 03000 CRLL GETNCRCDEVICE, CHRR) 03002 CRLL SPECRLC SPLCHR, CHRR) 03100 100 IF C. NOT. SPLCHR) GOTO 200 03200 CRLL GETNCRCDEVICE, CHRR) 03202 CRLL SPECRLC SPLCHR, CHRR) 03300 GOTO 100 03400 200 CONTINUE 03500 CRLL RETRC X GETFC:R O 03600 RETURN 03 700 END 83300 C 03900 C —GET LINE STRING 04000 C 04100 SUBROUTINE GETLSCLINE) 04200 INTEGER LINE 04300 INTEGER LINSTR 04400 COMMON /COMLIN/LINSTR 04500 CRLL CRLLC'GETLS O 04600 LINE=LINSTR 04700 CRLL RETRC 'GETLS ') 04800 RETURN 04900 END 05000 C 05100 c -GET NEXT CHRR POINTER 05200 C 05300 SUBROUTINE GETNCPCCHRPTR) 05400 INTEGER CHRPTR JUNE 1980 INTERFACE ACE 103 05500 INTEGER NXTPTR 05600 COMMON /COMNCP/NXTPTR 05700 CALL CALL("GETNCP ") 05800 CHRPTR=NXTPTR 05900 CALL RETR("GETNCP ') 06080 RETURN 06100 END 06200 C 06300 C GET NEXT CHAR 06400 C 06500 SUBROUTINE GETNCR( DEV ICE, CHAR) 06600 INTEGER DEVICE, CHAR 06700 INTEGER LINE, PIECE 06800 INTEGER CURCHR, ENDLIN 06900 CALL CALL("GETNCR ") 07000 CALL GETLSCLINE) 07100 CALL GETNCP( CURCHR) 07200 CALL GETELP( ENDLIN) 07300 IF (.NOT. (CURCHR GE. ENDLIN)) GOTO 100 07400 CALL GETSTR( DEV ICE, LINE) 07500 CURCHR-0 07600 100 CONTINUE 07700 CURCHR=CURCHR+1 07702 CALL SETNCP( CURCHR) 07800 CALL SUBSTR(PIECE, LINE, CURCHR, 1) 07806 CALL MOVSTR( CHAR, PIECE) 07900 CALL RETR( "GETNCR "> 08000 RETURN 08100 END 08200 C 08300 C GET WORD 08400 C 08500 SUBROUT I NE GETWRD ( DEV I CE, WORD ) 08600 INTEGER DEVICE, WORD 08700 INTEGER CHAR, MORE 08702 LOGICAL SPLCHR 08800 CALL CALL(" GETWRD '> 08900 CALL GETCS(CHAR) 09000 CALL GETFCR( DEV ICE, CHAR) 09100 CALL MOVSTR( WORD, CHAR) 09200 09202 09300 09302 09400 09500 09502 09600 09700 09800 09900 10000 10100 10200 10300 10400 10500 10600 10700 10800 10900 11000 11100 11200 11300 11400 11500 11600 11700 11800 11900 12000 12100 12200 12300 12400 12500 12600 CALL GETNCR( DEV ICE, CHAR) CALL SPECAL( SPLCHR, CHAR) 100 IF (SPLCHR) GOTO 200 CALL CONCAT(MORE, WORD, CHAR) CALL MQVSTRcWGRD, MORE) CALL GETNCR( DEV ICE, CHAR) CALL SPECAL( SPLCHR, CHAR) GOTO 100 200 CONTINUE CALL RETRC GETWRD ') RETURN END C C 1 NIT GET WORD PACKAGE C SUBROUTINE INIWRD INTEGER CHAR, LINE INTEGER LINSIZ CALL CALL ("INIWRD ') CALL DCLSTR(CHAR, 1) CALL SETCS(CHAR) LI NS I 2=80 CALL DCLSTR(LINE, LINSIZ) CALL SETLS(LINE) CALL SETELP(LINSIZ) CALL SETNCP(LINSIZ+1) CALL RETR(" INIWRD ') RETURN END C C SET CHAR STRING VARIABLE C SUBROUTINE SETCS(CHAR) INTEGER CHAR INTEGER CHRSTR COMMON /COMCS/CHRSTR CALL CALL("SETCS "> CHRSTR=CHAR 12700 12800 12900 13000 13100 13200 13300 13400 13500 13600 13700 13800 13900 14000 14100 14200 14300 14400 14500 14600 14700 14800 14900 15000 15100 15200 15300 15400 15500 15600 15700 15800 15900 16000 16100 16200 16300 16400 16500 16600 16700 16800 16900 17000 17002 17100 17200 17300 17306 17400 17500 18000 18100 18200 18300 CALL RETR("SETCS ') RETURN END C C SET END OF LINE POINTER C SUBROUTINE SETELPC ENDLIN) INTEGER ENDLIN INTEGER ENDPTR COMMON /COMELP/ENDPTR CALL CALLC'SETELP ") ENDPTR=ENDLIN CALL RETR("SETELP ') RETURN END C C SET LINE STRING C SUBROUTINE SETLS(LINE) INTEGER LINE INTEGER LINSTR COMMON /COMLIN/LINSTR CALL CALL('SETLS ') LINSTR=LINE CALL RETR("SETLS • "> RETURN END C C SET NEXT CHAR POINTER C SUBROUTINE SETNCP ( CHRPTR ) INTEGER CHRPTR INTEGER NXTPTR COMMON /COMNCP/NXTPTR CALL CALL ("SETNCP ") NXTPTR=CHRPTR CALL RETR( "SETNCP ') RETURN END C C TEST FOR SPECIAL CHAR C SUBROUTINE SF‘ECAL( BOOL, CHAR) INTEGER CHAR LOGICAL BOOL INTEGER SPLCHR, POS CALL CALL("SPECAL ") CALL GETSPLC SPLCHR) CALL FNDSTR(POS, CHAR, SPLCHR) IF (0 . EQ. POS) BGOL=. FALSE. IF (0 . NE. POS) BOOL= TRUE. CALL RETR("SPECAL ") RETURN END C Figure 13. Code for word isolator. 00100 INTEGER TTY, KEY, PTR 00200 INTEGER WORD, ENDWRD 00300 LOGICAL TRACE, DONE 00400 DATA TTY/1/, KEY/1/, PTR/2/, TRACE/. TRUE. / 00500 c 00600 WRITE (TTY, 100) 00700 100 FORMAT (1H , "START OF PROGRAM") 00800 CALL SETTRC( TRACE, PTR) 00900 CALL INISTR 01000 CALL INIWRD 01100 CALL DCLSTRCWORD, 30) 01200 CALL DCLSTR( ENDWRD, 30) 01300 C 01400 WRITE (TTY, 200) 01500 200 FORMAT (1H .."TERMINATING WORD?") 01600 CALL GETWRD (KEY, ENDWRD) 104 INTERFACE ACE JUNE 1980 01700 c 01800 WRITE(TTY, 250) 01900 250 FORMAT (1H , 'WORD?') 02000 CALL GETWRD(KEY, WORD) 02002 CALL EQSTR(DONE, WORD, ENDWRD) 02100 300 IF (DONE) GOTO 400 02200 WRITE (TTY, 350) 02300 350 FORMAT (1H , 'WORD ENTERED. . . ') 02400 CALL PUTSTR(TTY, WORD) 02500 WRITE (TTY, 250) 02600 CALL GETWRD( KEY, WORD) 02602 CALL EQSTRCDONE, WORD, ENDWRD ) 02700 GOTO 300 02800 400 CONTINUE 02900 C 03000 WRITE (TTY, 9999) 03100 9999 FORMAT (1H , 'END OF PROGRAM') 03200 STOP 03300 END Figure 14. Using the word isolator. SORTING APPLICATION Now we can build an application to see not only how to ef- fectively use these tools, but how new tools can be made to solve immediate and future problems. The application chosen is one which prints a sorted list of words with their frequencies of occurrence (a good use of this application is to check all words with a frequency of one for spelling errors). One function we will need is extracting the next word from the text. Obviously, the word isolator can handle that job. Since the words are originally in unsorted order, another function must put each word in sorted sequence. Duplicate words imply incrementing a frequency counter for the duplicate word. The last required function is the printing of each sorted word with its associated frequency. Sorting is merely the reorganization of data into some ordered form. An organization of data implies that the data has structure. This structure must, therefore, provide a way of keeping the data in sorted order. The previous chapter of this tutorial dealt with a method of sorting called the straight insertion sort. This method involved finding the correct place in a linear structure to insert the newest element so that the structure would always remain in sorted order. Recall also the Alibi concept was used in the algorithm, whereby all elements of the linear structure beyond the insertion point were physically moved to make room for the new element. We will use this same basic algorithm and linear structure for our sort. However, instead of using an array to implement the linear structure, we will use what is called a linked list. In general, a linked list is a logical organization of individual items of data composed of numerous items called nodes, each node having several fields. The organization is called logical because, instead of each node being physically next to each other (like an array), it is referenced and organized by pointers (sometimes called links). Nodes need not be in physical order to be in sorted order. For our application, each node will contain a word field and a frequency count field. While there are more complex data structures, we have chosen a simple one to introduce linked concepts: line them up in a single list or queue. In fact, the linear linked list is a pretty efficient structure when used in conjunction with the sort by insertion algorithm. For our application, each node will be connected to other nodes via a forward pointer and a backward pointer. Thus, each node can immediately reference (point to) the previous or next nodes in the list. This is done to completely separate the logic of scanning from the logic of inserting. When doing any work with linked lists, it is always advisable to draw a pic- ture to help better understand what the structure looks like (figure 1 5). GIVEN A NODE HAVING THE FOLLOWING GRAPHICAL REPRESENTATION : WORD FORWARD POINTER BACKWARD POINTER A SAMPLE LINEAR LIST CAN BE DRAWN AS: NOTE: The symbol denotes a null pointer specifying the end of the list. Figure 15. Sample linear list of sorted words. After seeing the form of the data structure, three conclu- sions regarding the straight line insertion sort algorithm can be reached. First, in order to find the insertion point, the algorithm can scan through the list by following either the forward or backward pointers. Second, nodes in the list need not be physically copied to make room for a new insertion. Only pointers need changing to keep nodes in sorted order — hence an Alias (name change) operation is all that is re- quired (figure 16). BEFORE INSERTION : CONNECT NEW NODE FIRST: CORRECT POINTERS IN ORIGINAL NODES: Figure 16. Inserting into list by Alias operations. JUNE 1980 INTERFACE AGE 105 Lastly, proper initialization of the data structure can reduce the logic needed to insert a new node during special situa- tions (e.g., when list is empty or at either end). In our case, building a list containing two nodes, one with low values and one with high values, will guarantee that all additions use the same insertion logic (figure 17). This concept prompted the implementation of the GETLOW and GETHIGH functions in the CTRAN package (figure 8). These functions are also in other languages such as COBOL and PL/I. The implementation of “nodes” in the FORTRAN lan- guage is done using the RECORD data primitive. Each field in a node is represented by an array. In our case, the arrays: WRDLST, WRDFRQ, WRDFL, WRDBL hold values for word, frequency, forward pointer, and backward pointer respectively. A single INTEGER variable is used to index into the same position of each array to get field values for a node. Knowing about all these concepts led to a general design where words were first inserted into a list, and then the com- plete list of words and frequencies were printed (figure 18). Separate subroutines were designed to hide the details of sorting into the list and getting sorted words from the list. This technique allows the sorting logic to change while the application program remains unaltered. These subroutines (SRTWRD - sort word, and GETSWF - get sorted word and frequency) become the two other filters used by the applica- tion along with the Get Word filter (figure 1 9 — a different way of using COMMON is given so that you can compare it to the previous style of usage in the Word Isolator). With such a clean design, writing an actual application using the DADT word facility is easy (figure 20). 00100 C 00200 C —ADD WORD INTO SORTED WORD LIST 00300 C 00400 SUBROUT I NE flDDWRD ( WORD, NODE > 00500 INTEGER WORD, NODE 00600 INTEGER NEWWRD, NEWNOD, NODBL 00700 LOGICAL SAME 00800 INTEGER WRDLST (100), WRDFL (100), WRDBL <100), WRDFRQ (100) 00900 COMMON /COMLST /WRDLST 01000 COMMON /COMFL/WRDFL 01100 COMMON /COMBL/WRDBL 01200 COMMON /COMFQ/ WRDFRQ 01300 COMMON /COMNEW/NEWNOD 01400 CALL CALL < ' ADDWRD ') 01402 CALL DMPNOD(NODE) 01500 CALL EQSTRCSAME, WORD, WRDLST ( NODE > ) 01600 IF < NOT SAME) GOTO 100 01700 WRDFRQ ( NODE ) = WRDFRQ ( NODE > +1 01702 CALL DMPNOD(NODE) 01800 GOTO 280 01900 100 CONTINUE 02000 CALL DCLSTR( NEWWRD, 30) 02100 CALL M0VSTR( NEWWRD, WORD) 02200 NEWN0D=NEWN0D+1 02300 WRDLST < NEWNOD ) =NEWWRD 02400 WRDBL < NEWNOD ) =WRDBL < NODE ) 02500 WRDFL ( NEWNOD )=N0DE 02600 NODBL=WRDBL < NODE ) 02700 WRDFL ( NODBL ) =NEWN0D 02800 WRDBL < NODE ) =NEWN0D 02900 WRDFRQ C NEWNOD >=1 02902 CALL DMPNODC NEWNOD) 03000 200 CONTINUE 03100 CALL RETR(' ADDWRD ') 03200 RETURN 03300 END 03400 C 03500 C —BUILD SORTED WORD LIST 03600 C 03700 SUBROUTINE BLDLST (DEVICE) 03800 INTEGER DEVICE 03900 INTEGER WORD, ENDWRD 04000 LOGICAL DONE 04100 CALL CALL ( 'BLDLST ') 04200 CALL DCLSTR(WORD, 30) 04300 CALL DCLSTR( ENDWRD, 30) 04400 WRITE (DEV ICE, 100) 04500 100 FORMAT (1H , 'TERMINATING WORD?') 04600 CALL GETWRD( DEV ICE, ENDWRD) 04700 WRITE (DEV ICE, 150) 04800 150 FORMAT (1H , 'WORD 7 ') 04900 CALL GETWRD( DEV ICE, WORD) 05000 CALL EQSTR(DONE, WORD. ENDWRD) 05100 200 IF (DONE) GOTO 300 05200 CALL SRTWRD (WORD) 05300 WRITE (DEV ICE, 150) 05400 CALL GETWRD( DEV ICE, WORD) 05500 CALL EQSTR(D0NE, WORD, ENDWRD) 05600 GOTO 200 05700 300 CONTINUE 05800 CALL RETR( 'BLDLST ') 05900 RETURN 06.000 END 06:100 c 06200 c —GET SORTED WORD AND FREQ 06300 C 06400 SUBROUTINE GETSWF (WORD. FREQ, DONE) 06500 INTEGER WORD, FREQ 06600 LOGICAL DONE 06700 INTEGER L0WN0D, HGHNOD, SRTNOD 06800 INTEGER WRDLST (100), WRDFRQ(100), WRDFL(100) 06900 COMMON /COMLST /WRDLST 07000 COMMON /COMFRQ/WRDFRQ 07100 COMMON /COMFL/WRDFL 07200 COMMON /COMLHN/LOWNOD, HGHNOD 07300 COMMON /COMSN/SRTNOD 07400 CALL CALL ('GETSWF ') 07500 IF (SRTNOD . EQ. LOWNOD) SRTN0D=WRDFL( SRTNOD) 07600 IF (.NOT (SRTNOD EQ. HGHNOD)) GOTO 100 07700 D0NE=. TRUE 07800 GOTO 200 07900 100 CONTINUE 07902 CALL DMPN0D( SRTNOD) 08000 WORD=WRDLST( SRTNOD) 08100 FREQ= WRDFRQ ( SRTNOD) 08200 D0NE=. FALSE 08300 SRTNOD*=WRDFL( SRTNOD) 08409 200 CONTINUE 08500 CALL RETR( 'GETSWF ') 06:600 RETURN 00700 END 106 INTERFACE AGE JUNE 1980 00800 C 08900 C — INIT SORT WORD PACKAGE 09000 C 09100 SUBROUTINE INISRT 09102 INTEGER LOWWRD, HGHWRD 89200 INTEGER LOWNOD, HGHNOD, NEWNOD, SRTNOD 09300 I NTEGER WRDLST C 100 ) , WRDFRQ < 100 ) , WRDBL (100 ) , WRDFL C 100 ) 09400 COMMON /COMLST /WRDLST 09500 COMMON /COMFRQ/WRDFRQ 09600 COMMON /COMBL/WRDBL 09700 COMMON /COMFL/WRDFL 09800 COMMON /COMLHN/LOWNOD, HGHNOD 09900 COMMON /COMNEW/NEWNOD 10000 COMMON /COMSN/SRTNOD 10100 CALL CALLC'INISRT ') 10200 L0WN0D=1 103-00 HGHN0D=2 10400 NEWNOD=HGHNOD 10500 SRTNOD=LOWNOD 10600 CALL DCLSTR < LOWWRD 30 ) 10700 CALL GETL0I4C LOWWRD) 10800 WRDLST (LOWNOD ) =LOWWRD 10900 WRDFRQ ( L 0 WNOD ) =0 11000 WRDFL ( LOWNOD ) =HGHNOD 11100 WRDBL ( LOWNOD ) =0 11200 CALL DCLSTR (HGHWRD. 30) 11300 CALL GETHGH< HGHWRD) 11400 WRDLST ( HGHNOD ) =HGHWRD 11500 WRDFRQ ( HGHNOD )=0 11600 WRDFL ( HGHNOD )=0 11700 WRDBL ( HGHNOD ) =LOWNOD 11800 CALL RETRC ' INISRT '> 11.900 RETURN 12000 END 12100 C 12200 C —PRINT SORTED WORD LIST 12300 C 1^400 SUBROUTINE PRTLSTCDEVICET 12508 INTEGER DEVICE 12600 INTEGER WORD. FREQ 12700 LOGICAL DONE 12800 CALL CALLC'PRTLST ') 12900 CALL GETSWF(WORD. FREQ. DONE) 13000 100 IF (DONE) GOTO 300 13100 CALL PUTSTRC DEV ICE. WORD) 13200 WRITE (DEV ICE. 200) FREQ 13300 200 FORMAT C1H .15) 13400 CALL GETSWFC WORD. FREQ, DONE) 13500 GOTO 100 13600 300 CONTINUE 13700 CALI. RETRC 'PRTLST ') 13800 RETURN 13900 END 14000 C 14100 c —SEARCH SORTED WORD LIST 14200 c 14300 SUBROUTINE SCHLSTCWORD. NODE) 14400 INTEGER WORD. NODE 14500 INTEGER LSTWRD 14600 LOGICAL EQUAL. GREATR 14602 INTEGER LOWNOD. HGHNOD 14700 I NTEGER WRDLST < 100 ) . WRDFL ( 100 ) 14800 COMMON /COMLST /WRDLST 14802 COMMON /COMLHN/LOWNOD. HGHNOD 14900 COMMON /COMFL/WRDFL 15000 CALL CALLC 'SCHLST ') 15100 N0DE=L0WN0D 15102 CALL DMPNOD(NODE) 15200 LSTWRD=WRDLST (NODE ) 15300 CALL EQSTRC EQUAL. WORD. LSTWRD) 15400 CALL GTSTRCGREATR, LSTWRD. WORD) 15500 100 IF (EQUAL OR GREATR) GOTO 200 15600 NODE=WRDFL C NODE ) 15602 CALL DMPNOD C NODE ) 15700 LSTWRD=WRDLST ( NODE ) 15800 CALL EQSTRCEQUAL, WORD, LSTWRD) 15900 CALL GTSTRCGREATR, LSTWRD, WORD) 16000 GOTO 100 16100 200 CONTINUE 16200 CALL RETRC 'SCHLST ') 16300 RETURN 16400 END 16500 c 16600 c -SOR T WORD 16700 C 16800 SUBROUTINE SRTWRD(WORD) 16900 INTEGER WORD 17000 INTEGER INSNOD 17100 CAL JL CALLC 'SRTWRD ') 17200 CALL SCHLSTCWORD. INSNOD) 17300 CAL L ADDWRDCWORD, INSNOD) 17400 CAL 1 RETRC 'SRTWRD ') 17500 RET URN 17600 END T 17602 C 17604 SUBROUTINE DMPNODCNODE) 17606 INTEGER NODE 17608 INTEGER WRDLSTC100), WRDFRQC100), WRDBLC100), WRDFLC100) 17610 COMMON /COMLST /WRDLST 17612 COMMON /COMFRQ/WRDFRQ 17614 COMMON /COMBL/WRDBL 17616 COMMON /COMFL/WRDFL 17618 CALL CflLL<"DMPNOD ') 17620 WRITEC2, 1)N0DE 17622 1 FORMAT (1H , 'NODE 2 ', 18) 17624 WRITE C2, 2) WRDLST (NODE) 17626 2 FORMAT < 1H , 'WORD=',I 8) 17628 WR I TE C 2, 3 ) WRDFRQ ( NODE ) 17630 3 FORMAT (1H , 'FREQ=', 18) 17632 WR I TE ( 2, 4 ) WRDFL ( NODE ) 17634 4 FORMAT (1H , 'FL=', 18) 17636 WR I TE ( 2, 5 ) WRDBL ( NODE ) 17638 5 FORMATC1H , 'BL=', 18) 17640 CALL RETRC 'DMPNOD ') 17642 RETURN 17644 END Figure 19. Word sorter and frequency count code. 80100 INTEGER TTY, KEV, PTR 00200 LOGICAL TRACE 00300 DATA TTV/1A KEY/1A TRACE/. TRUE. A PTR/2/ 00400 WRITE (TTY, 100) 00500 100 FORMAT (1H , 'START OF PROGRAM') 00600 CALL SETTRCC TRACE, PTR) 00700 CALL INISTR 00800 CALL INIWRO 00900 CALL INISRT 01000 CALL BLDLST (KEY) 01100 CALL PRTLST(TTY) 01200 WRITE (TTY, 9999) 01300 9999 FORMAT (1H , 'END OF PROGRAM') 01400 STOP 01500 END Figure 20. Using the word sorter. CONCLUSION With all this talk of building tools upon tools, a word or two of caution is in order. One can spend all one’s time building tools, and not solving problems. The microcomputer should be a help to the small business, but it cannot if only tools are built and not applications. Thus careful assessment must be made before plunging into the construction of a new soft- ware tool. Another common area of trouble is the proper selection and use of software utilities when your toolbox is large. Hav- ing a large set of software capabilities can often lead one into choosing a bad approach to implementing a problem solu- tion. A well-documented and complete understanding of what is available will help you choose the right tool for the right job. Experience in constructing these tools has pointed out that the microcomputer environment is still somewhat unpredict- able. Several compiler or run-time limitations caused long delays in testing by having to track down difficult bugs. The trace facility made the identification of those problem areas much easier, however. It is recommended that the trace tool be given the power to display input and output parameters of the called subprograms. This additional feature was the big- gest help during testing. Probably the major advantage in understanding the soft- ware tool concept is that one can stop getting caught up in the “invented here syndrome.” Most of the software appli- cation shops today do not really build upon the work of others. In fact, most applications are still built over and over again from scratch because past work is not in a reusable form. Hopefully, this article will be a start towards the build- ing of better engineered application software in the micro- environment. □ JUNE 1980 INTERFACE AGE 107 Interfaces I ■ .By Richard A. Leary l While each major microprocessor has one or more LSI peripheral interface devices specifically designed for that pro- cessor, occasions may arise when those “matched” hard- ware blocks do not satisfy the user’s needs. It is also possible that changes to existing equipment may force one into mix- ing devices of one family with those of another. As a result of the latter kinds of pressure, I found myself in a position where I had to interface I/O devices of the 6800/6502 family to a Z-80. What follows is both a synopsis of my prob- lems and a description of what I did to solve those problems. The 6800/6502 devices I used were part of wire-wrapped I/O board I had built over a year earlier to use with a wire- wrapped 6502 CPU board. In switching to a Z-80 CPU (primarily due to the birth of 6502 software) the problem was how to make the transition with minimum trouble and ex- pense. While both the CPU and the I/O board used S-100 prototype boards and the rest of my system used the S-100 bus, that fact alone does not guarantee compatibility. Although I thought I had carefully checked the I/O board and the rest of the system for compatibility with the Z-80 CPU board, the problems started building up early. When I first attempted to run my system with the Z-80 CPU in place, nothing seemed to happen. My initial reaction, since I do not have a front panel and thus rely upon a monitor in ROM to bring the system up, was that somehow my 1 K hand assembled monitor, hand burned into a 2708, was in error. While there was certainly ample opportunity for that process to have gone astray, that proved not to be the case. Although I suspected the CPU-I/O interface from the start, I spent many hours investigating the possibility of a ROM error. At this point, it is well to back up a minute and look at how the 6502 was originally interfaced to the I/O devices. Figure 1 shows an example of the interface in semi-block diagram form. Note that while the key interface signals are shown, I have not shown all the on-board decoding and buffer enabl- ing logic nor have I shown other signals which are not ger- maine to this discussion. As can be seen, I had defined a new bus line (66) as “I/O.” This line was simply the output of a comparator on the CPU board which was true whenever a preselected page in memory was addressed. As the 6502 and 6800 have no I/O instruc- tions like the 8080 or Z-80, this preselected page defined the range of I/O addresses to be used in my system. The “I/O” signal fed all I/O devices attached to the bus. What that meant was that any I/O device need only look for the “I/O” signal and then decode the 8-bit port number much as is done for the 8080 or Z-80. This demonstrated some measure of S-100 compatibility for I/O instructions. To switch to the CPU I changed the 6502 interface to what is shown in Figure 2. Since I wanted to retain the ability to interface both CPUs with my system merely by switching CPU boards, this dual interface was implemented with some logic on the I/O board which sensed which CPU board was being used and set a switch accordingly. The insides of that switch will not be discussed in detail since it was a simple piece of selection logic. Its sole purpose was to determine what signal would be used for the ENABLE signal going to the 6820. As before, for the 6502, that signal was 02. In Figure 2 it is clear that the only real change, other than the introduction of the switch discussed above, is in how the CS (chip select) signal for the I/O device is generated. 108 INTERFACE ACE JUNE 1980 CPU 1/ o Figure 2 . Modified 6502-6820 interface. While in Figure 1 CS = PORTSELECTH/O (1) in Figure 2 CS = PORTSELECT*(SINP + SOUT) (2) However, if the terms SINP and SOUT in equation (2) are decomposed, equation (2) really says CS = PORTSELECT*([l/O*R/W] + [l/O*R7W*02]) (3) Ignoring that extra 02 term in this last equation (3), it is clear that equation (1) and equation (2) are equivalent. Why the 02 term can be ignored is not immediately obvious but is the result of the 6800/6502 I/O device family character- istics. While the CS inputs must be stable during the EN- ABLE period, they do not have to be stable prior to that time. As ENABLE in this case is 02, the fact that one of the factors in determining CS involves an AND with 02 means that the I/O device in Figure 2 should work just as it did in Figure 1 . In actual fact that is what happens. Then why change? The answer is simple; an S-1 00 Z-80 CPU generates SINP and SOUT, not I/O. So this change was one that I thought prudent in order to make the system “S-1 00 compatible. ” The next question was what should be used for the EN- ABLE signal when operating with the Z-80 CPU. My initial hope that I could continue to use 02, now the Z-80 0 clock, was quickly put to rest without having to reach the bread board stage. The 0 signal (shown on Figure 3 which was ex- tracted from Zilog Z-80 CPU Technical Manual) which for my CPU, an Ithaca Audio board, becomes the S-1 00 02 (24) obviously does not satisfy the ENABLE timing re- quirements shown in Figures 4a and 4b. The later two figures were extracted from the Motorola M6820 data sheet and are typical of all 6800 family devices. What was needed was a signal that matched the Z-80 CPU’s actual read and write timing. Since SINP and SOUT are derived in the Z-80 CPU board as SOUT = IORQ # WR (4) and SINP = IORQ*RD (5) However, one other requirement of the I/O devices had to be satisfied. The ENABLE signal, as shown in Figure 4, had to continue to clock-like fashion even after the device was ad- dressed in order for the peripheral handshaking and interrupt response functions to work correctly. If enable only consisted of the following: ENABLE = SINP + SOUT (6) it is clear that this last requirement would not be met. One feature of the Z-80 offered some promise. Unlike either the 80 80, 6 800, or 6502, the Z-80 generates a special signal, RFSH, designed to be used to refresh dynamic memories. As Figure 5 indicates, this signal has some inter- esting characteristics which meant it might satisfy the require- ments discussed previously. First, it occurs during every Ml , i.e. OP-Code fetch, cycle. That means that while not occurring JUNE 1980 INTERFACE AGE 109 Tl T 2 t 3 T 4 Tl -J A0-A15 T po 1 REFRE SH ADDR. I J — \ MREQ l r RD r WAIT Mi “ -- — — i \ — \ DB0-DB7 LIU / RFSH \ 1 Figure 5. Z-80 Op Code Fetch Cycle. nearly as often as a 6800/6502 02 clock, it still occurs often enough to have negligible effect on most low speed I/O operations. Second, it occurs during a time when no I/O devices can possibly be addressed, i.e. IORQ and hence SINP and SOUT cannot be true. That means t hat false I/O reads or writes cannot happen. Finally, RFSH duration ex- ceeds the ENABLE minimum width requirements of 470 jusec even for a 4 MHz system. The next effect was that my initial try at interfacing the I/O board to the Z-80 CPU defined ENABLE as ENABLE = RFSH +SINP + SOUT (7) This equation would change the switch selected ENABLE signal for the Z-80 to what is shown in Figure 6. (As an aside, note that I moved RFSH to pin 66 instead of pin 67 as it originally existed on the CPU board. This change was made since my three Vector Graphic 8K RAM boards all used pin 67 as PHANTOM.) As already revealed, this approach did not work. Without a logic analyzer or a good oscilloscope, the trouble shooting was not easy. Use of a logic probe revealed that the hardware which generated the enable signal was working — there were definitely ENABLE pulses getting to the I/O device. Little else was obvious as a result of a lot of testing. The problem was that there were two major mistakes in my design. Neither of the problems was found by test equipment but rather by long hours looking at the CPU board schematic and the Z-80 and 6800 timing diagrams. First, the schematic related problem. Remember that I had said earlier that I thought my 6502 CPU board and hence the I/O board were “S-100 compatible.” This wasn’t true. The key discrepency was in failing to remember that the S-100 bus latches SINP and SOUT until the next I/O or memory cycle. That meant that the Z-80 was enabling the I/O devices long after they should have been in order to satisfy the 6800 timing. The obvious cure was to find an unlatched signal. Ob- viously, the signal I needed was IORQ itself which unfortu- nately does not appear on the S-100 bus. Since I had already departed from the ideal by using RFSH, the use of IORQ (routed to bus pin 63) did not seem out of place. After all the objective was to make it work, not necessarily be “S-100 compatible” (whatever that really means). That changed the logic to ENABLE = RFSH + IORQ (8) and the hardware to the configuration shown in Figure 7. Much to my chagrin this new approach did not work. Now, the timing diagrams became all important. Although I mentioned earlier that the CS inputs could be coincident with ENABLE, I had failed to consider the R/W, RS0, and RSI inputs. These must be stable about 1 80 nsec (130 nsec for R/W) prior to the leading edge of ENABLE. While for a 6800/6502 CPU that is no problem, the same cannot be said for the Z-80 (or the 8080 for that mat- ter). A glance back to Figure 3 reveals why the Z-80 cannot directly satisfy the 6800 I/O device timing. While no num erical time d elays are shown in Figure 3, it is clear that WR, from w hich PWR is d erived, transitions essentially co- incident with IORQ. IORQ is, of course, what I had most re- cently used to generate ENABLE. Note, there is no such pr oble m during read operations as long as R/W is the same as WR. It will be at the READ level all the time, at least until a write I/O operation comes along. Note, also in Figure 3 that as long as R SO an d RSI are derived from the port ad- dress, i.e. SINP, PWR or similar signals are not used, they will meet both read and write cycle timing requirements. It was apparent that while I could read the I/O devices I could not write to them. It was at this point that a peculiarity of the Z-80 came to the rescue. Note again in Figure 3 that the Z-80 automatically adds a wait state into the middle of all I/O operations. The net effect of that is that IORQ is true for something like 1 .250 jisec for a 2 MHz clock. That is over twice as long as the standard speed 6800 I/O devices re- quired for ENABLE. It was obvious that I had to find some way to use some of that time to solve the write timing problem. Once more Figure 3 holds the secret. Since IORQ is true shortly after a leading edge of 0 (the 02 clock), the time until the next lead- ing edge of 0 could be used to satisfy the set-up time require- ment. In other words, all I needed to do was delay the lead- ing edge of ENABLE. The circuit used to generate this de- layed ENABLE is shown in Figure 8. Note that RFSH is also delayed, hence, it becomes a pulse one clock cycle long (about 500 /usee in my case) as opposed to the two clock cycles it was originally. Happily, this approach worked. Figures 9 and 1 0 illustrate the timing relationships between the new ENABLE signal and the other CPU generated signals. In each figure the period in which ENA BLE is tru e has been indicated by cross hatching on either the IORQ or RFSH line. / 10 INTERFACE AGE JUNE 1980 Programming the Z-80 By Rodnay Zaks Order No. 0-89588-01 3-X 620 pages $ 14.95 Covers the essential aspects of program- ming as well as the advantages and dis- advantages of the Z-80, and brings the reader to where he/she can write complete application programs. Z-80 Microprocessor Programming & Interfacing: Book 1 By Elizabeth A. Nichols , Joseph C. Nichols , and Peter R. Rony Order No. 0-672-21610-18 496 pages $12.95 The second of two laboratory-oriented texts, addresses the interfacing of digital circuits. 8080 Machine Language Programming For Beginners By Ron Santore Order No. 0-918398-14-2 104 pages $6.95 This beginners' book will take you step-by- step through the most common 8080 op codes at a level everyone can understand. 8080/8085 Software Design: Book 1 By David G. Larson , Peter Rony, Jonathan A. Titus , and Christopher A. Titus Order No. 0-672-21541-1 336 pages $9.50 A detailed approach to assembly language programming for the 8080 or 8085 based computers. Books lor Your System from DATA >3 DYNAMICS 0 TECHNOLOGY A division of INTERFACE AGE Magazine ii i u CIJMCII MICROCOMPUTER INTERFACING The 8080A Bugbook: Microcomputer Interfacing and Programming By Peter R. Rony, -David G. Larsen, and Jonathan A. Titus Order No. 0-672-21447-4 416 pages $10.50 The principles, concepts, and applications of an 8-bit microcomputer based on the 8080 microprocessor 1C chip, with emphasis on the computer as the controller. Box 1234, Cerritos, California 90701 6502 Software Design By Leo Scanlon Order No. 0-672-21656-6 288 pages $10.50 This material is presented to increase the reader's understanding of the 6502. Fund- amentals are first explained then more com- plex topics are gradually introduced DATA DYNAMICS TECHNOLOGY P.O. Box 1234, Cerritos, CA 90701 6/80 Name fPrintt Address City State Zip Please send me: Description Qtv Price Total Book Order # Qty Price Total Shipping & Handling Charges Books $ .75 ea. U. S., $1.50 ea. Foreigr ! * TOTAL ORDER S •TAX $ l SHIPPING & HANDLING $ TOTAL ENCLOSED S □ ttuS a n Cheek nr M i 0.(U.S. Funds drawn on U.S. bank) Exd. Date Sianature For European delivery contact INTERFACE AGE Europe, Dahlienstr. 4. D-8011 Munchen-Vaterstetten, West Germany. 'California residents add 6% sales tax. Availability and prices quoted subject to change without notice. Please allow six weeks for delivery. You may photocopy this page if you wish to keep your INTERFACE AGE intact. Orders cannot be shipped unless accompanied by payment, including shipping & handling and tax where applicable. DATA DYNAMICS TECHNOLOGY, A Division of INTERFACE AGE Magazine (213) 926-9548 s KRAM Keyed Random Access Method KRAM is the FASTEST and MOST POWERFUL keyed access method available for the Appple Computer. Written entirely in 6502 machine code, KRAM is extremely fast, comprehensive in scope, very compact, and easy to use. KRAM function calls are invoked via a single instruction. Using the sophisticated capabilities of KRAM the Apple Computer can now fully meet the requirements of information management applications, such as: Accounts Receivable/Payable, Inventory Control, General Ledger, Payroll, and Database Management. KRAM Release 2.0 Functions: , u cV>7*\ • Create/Open a dataset • Put record by Key W0™ • Add & delete records by key • Get any record by Full/Partial key in 4/1 Oths of a second (2/1 Oths with Corvus Disk) • Read next or previous record • Dynamic space allocation • Dynamic space reclamation • Dynamic index compression SK) ^ i $ 99 * 9 * An 80 page manual fully documents KRAM 2.0detailing KRAM functions and illustrating with programming samples. KRAM architecture is fully explained and a sample mailing list application program is included. KRAM is designed to work with both Apple’s Disk 1 1, or Corvus Systems 10 Megabyte Winchester Disk. KRAM 2.0 requires an integer Apple or Apple Plus with integer card and at least one disk drive. Will not work with language system. PET/CBM OWNERS — KRAM 2.0 for 40/80 column 16K/32K PETS and 2040/3040/8050 disk units is available for$99. 95 3-D Animated Graphics APPLE WORLD By Paul Lutus The Program made famous on National TV! APPLE WORLD turns your Apple into a sophisticated graphics system capable of creating animated three-dimensional color images, projecting them in true perspective on the screen, rotate them, move them closer, further away, and many otherthings. A powerful screen-oriented text editor is included to facilitate image formation. This program was recently featuredon Tom Snyder’s Prime Time Saturday TV Show and is now available for sale. APPLE WORLD’S powerful editor is so easy to use that children will love it You can now “sketch” your dream house, boat, car, or fantasy empire. Then view it as it would be seen from 10,000 feet, or you can ZOOM in until the screen is filled with a doorknob. You could then go inside and move from room to room examining furniture placement as your screen rotates within the room. Images or specific parts of images can easily be saved to disk or printer. Does all this sound like science fiction? You won’t think so after you have visted Apple world. / flfrQcf uctory Price $59.95 36 page manual included Look for USA’s Red-White-Blue Software Rack at your local computer store or send in your order plus $1 .00 shipping to: USA United Software of America 7503rd Ave., New York, NY 10017 (212)682-0347 Dealer Inquires Invited J The key question remaining is whether or not extrapola- tion of these results to other system configurations is pos- sible. The answer is a clear yes. The actual approach taken may differ but the general approach is the same — use the CPU generated signals and the system clock to create the necessary delays. For example, consider that even though the 8080 does not automatically generate that valuable extra wait state during I/O operations, one or more could easily be generated by the I/O board logic and then used to create the necessary I/O device timing in conjunction with the 01 or 02 clock. Similarly an “unlatched IORQ” could be generated using SINP and SOUT again synchronized to the 01 and 02 clocks. And of course a RFSH-like signal could be synthesized using the M 1 status signal and the clocks. What to do about a 2.5 MHz or 4 MHz Z-80 is also clear. For a 2.5 MHz Z-80 the IORQ signal should be delayed but the RFSH signal should not be. At 2.5 MHz RFSH is roughly 800 ns long, so the delay would cut it to about 400 ns — just a bit too short. All that means is that the OR should be after the delaying flip-flop rather than before as was done for the 2 MHz case. At 4 MHz things get a bit messy. RFSH is now 500 /usee so it can still be used directly but IORQ is short. One could, of course, use one of the higher speed devices that Motorola and others now market but the premium paid for those devices may be too steep. Probably the best answer is to add a wait state for the I/O cycles. One aspect of all this discussion should be clear by now. The key to successfully interfacing devices of different fami- lies is a thorough understanding of the timing needs at both ends of the interface. In addition, the secret to implementing that interface is full and complete utilization of the available signals, especially the system clock. □ 112 INTERFACE AGE CIRCLE INQUIRY NO. 69 JUNE 1980 I made the TRS-80 into a serious computer. Now I’ve made the Model II into a spectacular one. I’m Irwin Taranto, and I’ve helped almost a thousand businesses get their first computers up and running. I’ve done it primarily with the TRS-80, because it’s a really elegant piece of hardware. Given the right programs, it can do substantially the same work as the traditional minicomputers that cost four times as much. I proved it with four on-line, interactive programs adapted from the genuine Osborne & Associates systems, originally designed for the $30,000 Wang computer. Then I added two of my own and made them all work on a $4000 TRS-80. Now I’ve done the same thing for the new TRS-80 Model II. It’s an $8000 computer that works twice as fast and has four times the memory — up to two million characters. My new systems are fully documented, and because I’m working with a much more powerful computer, they’re a night-and-day advance over the Model I programs. They’ll turn your Model II into a complete business computer, set up and ready to go. THE TRS-80 MODEL II PROGRAMS General Ledger/Cash Journal: handles up to 7000 transactions on 500 different user-defined accounts. It keeps track of them by month, quarter and year, makes comparisons to the prior year, and does departmentalization. Accounts Payable/Purchase Order: generates the purchase order and posts the item to payables when the goods are received. Invoice-linked, it calculates and prints checks and aged ledger reports and links fully to the general ledger. Accounts Receivable/Invoicing: keeps track of billed and unbilled invoices, open and closed items, aging and service charge calculation. It prints statements, links to the general ledger, and can work within either an invoice-linked or balance- forward accounting system., Payroll/ Job Costing: computes regular, overtime and piecework pay, keeps employee files, figures taxes and deductions, prints checks, journal, 941-A and W-2 forms, and breaks out individual job costs. *A trademark of the Tandy Corporation. When I say set up and ready to go, I mean just that. If you’re not quite sure on that point, call the number below and we’ll give you the names of some of the people who’ve already bought all over the world. Call them up and hear what they have to say. These Model II programs are completely custom- tailored, which explains their $249.95 price. Before we'll send you a disk, you have to fill out a detailed questionnaire that tells us your precise business requirements. Then we send you the disk, all the instructions you need, and my phone number. If you call, we answer all your questions. If your questions are tough enough, I’ll talk to you personally. Because that way I’ll make sure that Model II of yours turns into a spectacular computer, just like I promised. I 1 □ Please send me the custom questionnaires for the following $249.95 Model II programs: □ General Ledger/Cash Journal □ Accounts Payable/Purchase Order □ Accounts Receivable/Invoicing □ Payroll/Job Costing □ Please send me information on the TRS-80 Model I programs at $99.95 each □ Please send me information on other Taranto business programs I j Your name Company name I Address I City/State/Zip Taranto & ASSOCIATES, INC. I PO. Box 6073, 4136 Redwood Hwy., San Rafael CA 94903 • (415) 472-2670 I 1 JUNE 1980 CIRCLE INQUIRY NO. 65 INTERFACE AGE 1 13 An Error Correcting Memory By Terry Dollhoff INTRODUCTION The use of a parity detection circuit to detect memory read errors is becoming popular with the hobbyist seeking more reliable memory operation. If the hardware can detect an er- ror in memory, then it can also correct that error. This article describes the implementation of a single error correcting, double error detecting memory for the Technico 16-bit TI9900 based system. The Technico system was chosen to illustrate the hardware algorithm because error correction is more efficient with a 1 6-bit data word than with an 8-bit one. The hardware described here is now in operation with the 9900. A dramatic demonstration of the hardware is to remove any one memory chip and observe that the software is unaffected. MATHEMATICAL OUTLINE The best place to begin is with a brief summary of the mathematical development of the error correcting code. It is not intended as a comprehensive development of error cor- recting codes, but it is an overview of the specific code used for one bit error correction, and two bit error detection of a 1 6-bit memory. The error correcting code used for single error correct double error detect is called a cyclic code. All cyclic codes are based upon the concept of a primitive polynomial. The definition is not really important here; just assume that the polynomial presented is a primitive one. Now, if P(X) is a primitive polynomial of degree m, then it can be proved that a cyclic code produced by the polynomial: B(X) = (1 +X)*P(X) is a double error detecting, single error correcting code. We will discuss later how the polynomial produces a code. In particular, the code produced by B(X) has the following properties: n (total code length) = 2 m - 1 n-k (no. of parity bits) = m + 1 K (no. of information bits) = 2 m - m - 2 If m = 5 is chosen, then B(X) will reproduce a code with the following properties: n = 31 bits n - k = 6 parity bits k = 25 data bits This code has the correction properties needed, but it has 25 data bits instead of 1 6. To arrive at a 1 6-bit code we can use a shortened cyclic code which is based upon the above code. A shortened cyclic code is one where all unused data bits are as- sumed to be zero, and it has the same correction properties. Thus a 1 6-bit code based upon the above code can be defined. The first step in developing the code is to locate B(X). Since (1 + X 2 + X 5 ) is a primitive polynomial of degree m = 5, the definition for B(X) is: B(X) = (1 +X)(1 +X 2 + X 5 ) = 1 + X + X 2 + X 3 + X 5 + X 6 Notice that the operator “ + ” is the addition operator for a group of two elements and is actually a binary exdusive-or. In fact, the above polynomial can be represented as the following binary number: B(X) = 11110 11 since; B(X) = ri+1*X + 1*X 2 + 1*X 3 + 0*X 4 +1*X 5 +1*X 6 If all data words are also represented as a polynomial, say M(X), then B(X) produces a code by the following equation: E(X) = B(X)*M(X) We will not investigate the use of this form of the code be- cause it has one distinct implementation disadvantage. That is, all the stored data bits are functions of the input data bits (not just the parity bits). This means it is more difficult to test the memory because all bits are altered before being stored. This problem can be solved by changing the code to a syste- matic code. Then the data bits are stored unchanged and on- ly the six parity bits are functions of the data bits. To change to a systematic code, calculate another polynomial, H(X), as: H(X) = (X n + 1)/B(X) or; H(X) = (X 31 + 1)/(1 +x + x 2 + x 3 + x 5 + :x 6 ) = 1 + X + X 4 + X 6 + X 7 + X 9 + X n +X 12 + X 14 + X 16 + X 20 + X 23 + X 24 + X 25 / 14 INTERFACE AGE JUNE 1980 V n . k , = h,*V n . 4 for j = 1 to n -k If the incoming data bits are represented as: Data = V 6 V 7 . . .V 30 where (V 2 2 to V 30 are zero), the encoded data is: Encoded = yoViV 2 V 3 ^ 4 ^^y 6 ^ 7 - ^ 2 ^ 22 - • ^ so M parity data zero The equations for the parity bits can be derived from H(X) and are: k 1 i = 0 where; H(X) = h.V’ Since we are only interested in storing 1 6 -bit data, V 22 to V 30 are all assumed to be zero. With this assumption in mind, the parity equations can be expanded as: V5 = V 2 i +V20 + V19 + V, 8 + V 16 + V 14 + V 1 o + V7 + V 6 V 4 = V20 + Vt9 + V 1 8 + V 1 7 + V|5 + V 1 3 + V9 + V/6 + V5 V 3 = V 2 i +V 1 9 + V 18 + V 1 7 + V / 16 + V 14 + Vt 2 + \/ 8 + \/5 + \/4 V 2 — V21 +V20 + Vj 8 + Vj7 + V 1 5 + \/ 1 5 + \/i3 + \/ 11 + V7 + V4 + V3 Vi = V 20 + Vi9 + Vi7 + Vi5 + Vj5+Vi4 + V 1 2 + V 6 + V /3 + V 2 Vo = V21 + Vi9 + Vi 8 + Vig + V15 + V/14 + V13 + V11 +V9 + V5 + V2 + Vi Certain of the parity bits are based upon other parity bits. This interaction would cause an implementation problem and the interactions can be removed by expanding the equa- tions as illustrated below (as a shorthand notation, write 21 for V 21 , etc.). V 4 = 20+19 + 18 + 17 + 15 + 13 + 9 + 6 + 21 +20 + 19 + 18 + 16 + 14 + 10 + 7 + 6 Since the + operator is an exclusive-or, X + X = 0. There- fore the above equation can be reduced to: V 4 = 21+17 + 16 + 15 + 14+13 + 10 + 9 + 7 Expanding the other parity equations in a like manner, we can calculate the final set of parity equations. V 5 = 21+20 + 19 + 18 + 16 + 14+10 + 7 + 6 V 4 = 21+17 + 16 + 15 + 14+13 + 10 + 9 + 7 V 3 = 21+20+16 + 15 + 14+13 + 12 + 9 + 8 + 6 V 2 = 21+18 + 16 + 15 + 13 + 12 + 11+10 + 8 + 6 V, = 19 + 18 + 17 + 16 + 15 + 12 + 11+9 + 6 V 0 = 21+20 + 19 + 17 + 15 + 11+8 + 7 + 6 THEORY OF OPERATION Now that we have a set of parity equations, we can create an error correction memory. Figure 1 illustrates the basic memory system operation. During a write operation, the parity circuit calculates the six parity bits which are then stored with the original data bits. During a read operation, the parity circuit calculates a new set of parity bits based upon the stored data bits. If this newly calculated set of parity bits is the same as the stored parity bits, there is no data error (or more than two errors since this code is limited to double er- ror detection). If the read parity and the stored parity are not the same, the data or stored parity are in error. To diagnose the problem, the two sets of parity bits are exclusive-ored together to produce a new value called the syndrome. This syndrome is used to correct the error (single bit error) or to detect an uncorrectable error (two bit error). Prior to implementing the correction circuit, it must be determined which syndrome will be produced by each single bit error. This can be done emperically. If any single bit is in error, every parity equation involving the errant bit will be re- versed in value so the syndrome bit will be set. As an exam- ple, if bit 13 is in error, then parity bits V 4 , V 3 , V 2 are all altered. Thus the single error syndrome for bit 13 is (01 1 100). If this syndrome is encountered during a read, JUNE 1980 INTERFACE AGE 115 SYNDROME STORED BIT DATA BIT (V5V4V3V2V1V0) V21 D15 111101 V20 D14 101001 V19 D13 100011 V18 D12 100110 V17 Dll 010011 V16 DIO 111110 V15 D9 011111 V14 D8 111000 V13 D7 011100 V12 D6 001110 VII D5 000111 V10 D4 110100 V9 D3 011010 V8 D2 001101 V7 D1 110001 V6 DO 101111 V5 — 100000 V4 — 010000 V3 — 001000 V2 — 000100 VI — 000010 VO — 000001 Figure 2. Error Syndromes. then bit 13 is in error. To correct that bit, simply reverse it. Any syndrome noi in the single bit syndrome family indicates a noncorrectable error. All of the single bit syndromes are shown in Figure 2. IMPLEMENTATION Four of the parity equations include nine terms and are easily calculated by a 9-bit generator (74280). The other two have ten terms and require a 9-bit parity generator and an exclusive-or gate (7486). This circuit is shown in Figure 3. The syndrome is calculated by exclusive-or of the stored parity (called P 0 to P 5 ) with the new one (called V 0 to V 5 ). This value is used to address an error correction PROM which will yield C,= 1 if bit Dj is in error. This is shown in Figure 4. A disable corrections capability is provided by one of the unused address lines. It is important that the PROM have a fast access time. We found the TI74S470 perfect for this application. + 5V Figure 4. Syndrome Calculation and Decode. Figure 5 shows the actual error correction. Just exclusive- or the output of the error correction PROM with the memory data. An uncorrected error will be indicated byC 15 = C 14 =1 or any other two bits since it is a single error code. Figure 6 shows the overall bus control. Only one extra set of buffers (for the parity bits) is required. The input data buf- fers are probably needed elsewhere in the system for other reasons. Note that when the parity is written, the syndrome is zero since the stored and computed parity are equal. If not zero, the buffers, memory for parity, or parity gates have failed. The circuit in Figure 6 is idealized since we have not ad- dressed generation of dynamic memory refresh or other specialized memory controls. Its only purpose is to illustrate the philosophy of the error correcting circuits. During a write, the CPU data is stored directly in the Data Memory and the parity is stored in the Parity Memory. Dur- ing a read, the data from memory is used to calculate a new parity (V 0 -V 5 ). If the new parity differs from the stored one (P0-P5), the error bit is corrected by the error correction circuit. Figure 5. Error Correction. 1 16 INTERFACE ACE JUNE 1980 Figure 6. Bus Control. CONCLUSION Implementation of an error correcting memory requires the addition of six bits of memory and a few chips of random logic. The payoff is in terms of increased reliability. A system with error correcting memory will require fewer service calls and if a service call is generated for other reasons, the memory can be brought back to full operation. As service costs rise and are measured in hundreds of dollars and memory costs decline, the user of error correc- tion will increase. To make error correcting more practical, the semiconductor manufacturers are developing new cir- cuits to perform the random logic functions. □ BITS m BTTE5 MICROCOMPUTER SYSTEMS • Microcomputer Service • Specialized Hardware Integration • Hardware and Software Designs • Software Development Systems to your Specifications • Business System Hardware for Resale • We Stock Industrial Microsystems, North Star , PerSci, Soroc, Tarbell, Vector Graphic BITS N BYTES College Business Park 679 "D" S. State College Blvd. Fullertan, Calif. 92631 (714) 879-8386 HOURS 11 A.M. - 6 P.M. M-F Sat. — By Appt. CIRCLE INQUIRY NO. 73 64K BYTE EXPANDABLE RAM DYNAMIC RAM WITHONBOARDTRANSPARENT REFRESH GUARANTEED TO OPERATE IN NORTHSTAR. CROMEMCO. VECTOR GRAPHICS. SOL, AND OTHER 8080 OR Z-80 BASED S100 SYSTEMS * * 4MHZ Z-80 WITH NO WAITSTATES. * SELECTABLE AND DESELECTABLE IN 4K INCREMENTS ON 4K ADDRESS BOUNDARIES * LOW POWER-8 WATTS MAXIMUM. * 200NSEC 4116 RAMS. * FULL DOCUMENTATION * ASSEMBLED AND TESTED BOARDS ARE GUARANTEED FOR ONE YEAR AND PURCHASE PRICE IS FULLY REFUNDABLE IF BOARD IS RETURNED UNDAMAGED WITHIN 14 DAYS. ASSEMBLED/ TESTED 64KRAM $595.00 48K RAM $529.00 32K RAM $459.00 16K RAM $389.00 WITHOUT RAM CHIPS $319.00 S100 MAINFRAME AND CARD CAGE _ * W/ SOLID FRONT PANEL $239.00 * W / CUTOUTS FOR 2 MINI-FLOPPIES $239.00 * 30 AMP POWER SUPPLY $119.00 VISTA V 200 MINI FLOPPY SYSTEM S100 DOUBLE DENSITY CONTROLLER 204 KBYTE CAPACITY FLOPPY DISK DRIVE WITH CASE & POWER SUPPLY MODIFIED CPM OPERATING SYSTEM WITH EXTENDED BASIC $695.00 EXTRA DRIVE. CASE & POWER SUPPLY $395.00 16K XI DYNAMIC RAM THE MK4116-3 IS A 16.384 BIT HIGH SPEED NMOS, DYNAMIC RAM. THEY ARE EQUIVALENT TO THE MOSTEK. TEXAS INSTRUMENTS. OR MOTOROLA 41 16-3. * 200 NSEC ACCESS TIME. 375 NSEC CYCLE TIME. * 16 PIN TTL COMPATIBLE. ★ BURNED IN AND FULLY TESTED. ★ PARTS REPLACEMENT GUARANTEED FOR ONE YEAR. $8.50 EACH IN QUANTITIES OF 8 =3 g <=> COmPUTER DEVICES 1230 w.couins RVE. ORflOGE, Cfi 92668 (714)633-7280 KIM/SYM/ AIM-65 — 32K EXPANDABLE RAM DYNAMIC RAM WITHONBOARDTRANSPARANT REFRESH THAT IS COMPATIBLE WITH KIM/ SYM/ AIM-65 AND OTHER 6502 BASED MICROCOMPUTERS. ★ PLUG COMPATIBLE WITH KIM/SYM/AIM-65. MAY BE CONNECTEDTOPETUSING ADAPTOR CABLE. SS44-E BUS EDGE CONNECTOR. ★ USES +5V ONLY (SUPPLIED FROM HOST COMPUTER BUS). 4 WATTS MAXIMUM ★ BOARD ADDRESSABLE IN 4K BYTE BLOCKS WHICH CAN BE INDEPENDENTLY PLACED ON 4K BYTE BOUNDARIES ANYWHERE IN A 64K BYTE ADDRESS SPACE ★ BUS BUFFERED WITH 1 LS TTL LOAD. ★ 200NSEC 4116 RAMS. ★ FULL DOCUMENTATION ★ ASSEMBLED AND TESTED BOARDS ARE GUARANTEED FOR ONE YEAR. AND PURCHASE PRICE IS FULLY REFUNDABLE IF BOARD IS RETURNED UNDAMAGED WITHIN 14 DAYS. ASSEMBLED / TESTED WITH 32K RAM $419.00 WITH 16K RAM $349.00 WITHOUT RAM CHIPS $279.00 HARD TO GET PARTS ONLY (NO RAMS) $109.00 BARE BOARD AND MANUAL J49.00 m JUNE 1980 INTERFACE AGE 117 The days of complicated, unreliable, dynamic RAM are gone: $199 the ultrabyte memory board 95 ( complete kit 1 with 16K memory I Netronics consistently offers innovative products at un- beatable prices. And here we go again — with JAWS, the ultrabyte 64K SI 00 memory board. ONE CHIP DOES IT ALL JAWS solves the problems of dynamic RAM with a state-of-the-art chip from Intel that does it all. Intel's single chip 64K dynamic RAM controller eliminates high-current logic parts . . . delay lines . . . massive heat sinks . . . unreliable trick circuits. REMARKABLE FEATURES OF JAWS Look what JAWS offers you: Hidden refresh . . . fast performance ... low power consumption . . . latched data outputs ... 200 NS 4116 RAMs . . . on-board crystal . 8K bank selectable . . . fully socketed . . . solder mask on both sides of board . . . designed for 8080, 8085, and Z80 bus signals . . . works in Explorer, Sol, Horizon, as well as all other well-designed S100 computers. I GIVE YOUR COMPUTER A BIG BYTE OF MEMORY | POWER WITH JAWS— SAVE UP TO $90 ON INTRODUCTORY LIMITED-OFFER SPECIAL PRICES! | UNDECIDED? TRY A WIRED 16K JAWS IN YOUR COMPUTER ON OUR W-DAY MONEY- BACK OFFER (SPECIFY YOUR COMPUTER) CONTINENTAL USA CREDIT CARD BUYERS OUTSIDE CONNECTICUT CALL CALL TOLL FREE 800-243-7428 From Connecticut Or For Assistance. (203) 354-9375 Qgpt IS5vN[TB0NICSS[«“™e»,„o; 333 Litchfield Road, New Milford. CT 06776 Please send the items checked below: □ JAWS 16K RAM kit. No. 6416. $199.95 * r JAWS 16K RAM fully assembled, tested, burned in. No. 6416W, $229.95 * □ JAWS 32K RAM kit. No. 6432. (reg. price $329.95). SPECIAL PRICE $299.95.* □ JAWS 32K RAM fully assembled, tested, burned in, No. 6432W, (reg. price $369.95). SPECIAL PRICE $339.95.* D JAWS 48K RAM kit. No. 6448, (reg. price $459.95). SPECIAL PRICE $399.95.* □ JAWS 48K fully assembled, tested, burned in. No. 6448W. (reg. price $509.95), SPECIAL PRICE $449.95.* □ JAWS 64K RAM kit. No. 6464, (reg. price $589.95), SPECIAL PRICE $499.95 * C JAWS 64K RAM fully assembled, tested, burned in, No. 6464W, (reg. price $649.95). SPECIAL PRICE $559.95 * □ Expansion kit, JAWS 16K RAM module, to expand any of the above in 16K blocks up to 64K, No. 16EXP, $129.95.* ‘All prices plus $2 postage and handling. Connecticut residents add sales tax. Total enclosed: $ 1 Personal Check □ Money order or Cashiers Check □ VISA □ MASTER CHARGE (Bank No. . . . Acct. No. Exp. Date Signature Print Name Address City State Zip. □ Send me more information 50/80 Interface Mediamix has introduced a line of products related to interfacing the TRS-80 to the IBM Model 50 Electronic Typewriter. These products include a hardware interface for connecting the Model 50 to the CPU or the Ex- pansion Interface. The Mediamix 50/80 Inter- face plugs into the IBM Circuit board, so there’s no soldering or modifications to the typewriter required. Included with the 50/80 is a software driver program that lets the user LPRINT and LUST plus access all of the IBM 50’s special coded functions, like underlining, indenting, tabbing, numerical column justification and centering. For details contact Mediamix, P.O. Box 8775, Universal City, CA 91608, (213) 475-9949. CIRCLE INQUIRY NO. 121 Small Business Computer Systems A line of small business computer systems has been introduced by Irvine, California based Alpha Micro. The AM series 1011, 1031 and 1051 computers are muti-tasking, multi-user, multi- processor, time-sharing computers; models span the range from modest floppy disk systems to sys- tems utilizing large capacity hard disk drives. The systems are designed for large scale program- ming in BASIC and other high level languages. The AM series of computers offers many advantages commonly found on mainframe sys- tems, at a fraction of the cost. The multi-user, multi-processor capability permits many users on the system at the same time. Each system includes a 1 6-bit processor, with two on-board serial I/O ports and one parallel I/O port. 64K of dynamic RAM memory is stan- dard with each system. For details contact Alpha Micro, 17881 Sky Park North, Irvine, CA 927 1 4, (7 1 4) 957-1 404. CIRCLE INQUIRY NO. 122 miniMAS 2 Micro Application Systems announces miniMAS 2, Z8-based, high-performance, low- cost CRT family designed for large volume appli- cations. The miniMAS 2 weighs approximately 20 pounds, measures 14W x 12H x 18D, and utilizes an external power supply requiring less than 50 watts. Standard hardware features include: 12” CRT, 7x9 dot matrix in a 9x13 field displaying all 128 ASCII codes, 24 lines of 39 or 80 characters, 25th line status display, 2 or 4K of memory for 1 or 2-page display, inverse or normal background, 1 6 baud rates for each of I/O and auxiliary ports and any combination of inverse, half intensity, blink, doublewide, underscore, and non-display attributes. Numeric pad, cursor and editing func- tion keys, and reset key to terminate undesired ac- tion are standard. For details contact Micro Application Systems, Inc., 5575 N. County Rd. 18, Minneapolis, MN 55442, (612) 559-0320. CIRCLE INQUIRY NO. 123 Statistical Programs Compucolor Corporation has released a new series of statistical programs called “Statistics.” This three-disk series is especially useful for engi- neering applications. These diskettes are entitled: Statistics I, Statis- tics II and Statistics III. Each disk contains five separate programs stored on a soft disk and comes complete with documentation. Common to all three packages is a file manager program that generates, maintains and displays files for use by other programs. For details contact Compucolor Corp., P.O. Box 569, Norcross, GA 30091. CIRCLE INQUIRY NO. 124 Process Control Card The iCON/CPC-85 Process Control Card and Family, based on the popular 8085 micro- processor, offers power, performance and lots of I/O. It is supported with 1 2K or 24K of EPROM/ PROM, up for 4K NMOS or CMOS RAM with power down and battery back-up provision. Also included are three 16-bit timer/counters, two serial RS-232C ports, and 64 memory- mapped I/O lines: all on an 8 x 7.5 in. card. The CPC-85 is fully supported with expansion I/O cards, card cage, software and much more. For details contact Process Control Inc.. 221 1 S. 48th St.. Suite C. Tempe, AZ 85282, (602) 894-9105, Harry Latterman. Mktg. Manager. CIRCLE INQUIRY NO. 125 Word Processing System Spellbinder by California Pacific Computer Company includes all the features found on com- petitive high-quality word processing software — automatic word wrap, print formatting, propor- tional spacing, screen editing, justification block text manipulation, insertion, deletion, typeovers. search and replace, and emphasis/special character treatment. Other features include full mailing list/mailing lable plus sort/merge and text/merge capacity, and legal numbering. Spellbinder is available in IBM 8“ single dens- ity, North Star double density. Micropolis quad density. Heath WH89, and Cromemco formats and is written in 8080 assembly language. For details contact California Pacific Computer Co.. 2601 Blackburn. Davis, CA 95616. CIRCLE INQUIRY NO. 127 1 18 INTERFACE AGE CIRCLE INQUIRY NO. 84 JUNE 1980 Start Computing For Just $129.95 With An 8085-Based Professional Computer Kit— Explorer /8 5 100% compatible with all 8080A and 8085 software & development tools! No matter what your future computing plans may be, Level “ A at $129.95— is your starting point. Starting at just $129.95 for a Level “A" operating system, you can now build the exact computer you want. Explorer/ 85 can be your beginner's system, OEM controller, or IBM- formatted 8" disk small business system. . .yet you're never forced to spend a penny for a component or feature you don 7 want and you can expand in small, affordable steps! Now, for just $129.95, you can own the first level of a fully expandable computer with professional capabilities— a com- puter which features the advanced Intel 8085 epu, thereby giving you immediate access to all software and development tools that exist for both the 8085 and its 8080A predecessor ( they are 100% software compatible )— a computer which features onboard S-100 bus expansion— plus instant conver- sion to mass storage disk memory with either 5-1/4” diskettes or standard IBM-formatted 8” disks. For just $129.95 (plus the cost of a power supply, keyboard/ terminal and RF modulator, if you don’t have them already), Explorer/85 lets you begin computing on a significant level. . . applying the principles discussed in leading computer maga- zines. . .developing “state of the art” computer solutions for both the industrial and leisure environment. Level “A” Specifications Explorer/85’s Level “A” system features the advanced Intel 8085 epu, an 8355 ROM with 2k deluxe monitor/operating system, and an 8155 ROM-I/O— all on a single motherboard with room for RAM/ROM/PROM/EPROM and S-100 ex- pansion, plus generous prototyping space. (Level “A” makes a perfect OEM controller for industrial applications and is available in a special Hex Version which can be programmed using the Netronics Hex Keypad/ Display.) PC Board: glass epoxy, plated through holes with solder mask • I/O: provisions for 25-pin (DB25) connector for terminal serial I/O, which can also sup- port a paper tape reader ...provision for 24-pin DIP socket for hex keyboard/dis- play. . .cassette tape recorder in- put .. .cassette tape recorder output. . .cassette tape control output. . .speaker output... LED output indicator on SOD (serial output) line. . printer interface (less drivers). . .total of four 8-bit plus one 6-bit I/O ports ‘Crystal Frequency: 6.144 MHz • Control Switches: reset and user (RST 7.5) interrupt. . .additional provisions for RST 5.5, 6.5 and TRAP interrupts onboard • Counter/Timer: programmable, 14-bit binary • System RAM: 256 bytes located at F800, ideal for smaller systems and for use as an isolated stack area in expanded systems. . . RAM expandable to 64k via S-100 bus or 4K on motherboard. System Monitor (Terminal Version): 2k bytes of deluxe system monitor ROM located at F000 leaving 0000 free for user RAM/ROM. Features include tape load with labeling . . .tape dump with labeling. . .examine/change contents of memory ...insert data, warm start. . examine and change all registers. . .single step with register display at each break point, a debugging/training feature. . .go to execution address. .. move blocks of. memory from one location to another. . .fill blocks of memory with a constant . . .display blocks of memory . . automatic baud rate selection . . . variable display line length control (1-255 characters/line). . .channelized I/O monitor routine with 8-bit parallel output for high speed printer... serial console in and console out channel so that monitor can communicate with I/O ports. System Monitor (Hex Version): Tape load with labeling. . . tape dump with labeling. . .examine/change contents of mem- ory... insert data... warm start .. .examine and change all Level “ A ” at $ 129.95 is a complete operating system, perfect for beginners, hob- biests, or industrial con- troller use. By Nttronics By Netronics ASCII/BAUDOT, registers. . .single step with register display at each break point CTAIJO ALONE . . .go to execution address. Level “A” in the Hex Version ^ 1 w efc makes a perfect controller for industrial applications and can be programmed using the Netronics Hex Keypad/Display. Hex Keypad /Display. Level “B” Specifications — Hex Keypad/Display Specifications Calculator type keypad with 24 system defined and 16 user defined keys. 6 digit calculator type display which displays full address plus data as well as register and status information. Computer H-|| 95 Terminal 1W The Netronics ASCII/BAUDOT Computer Terminal Kit is a microprocessor-controlled, stand alone keyboard/terminal requring no computer memory or software. It allows the use of Level“B” provides the S-100 signals plus buffers/drivers to either a 64. or 32 character by 16 line professional display for- support up to six S-100 bus boards and includes: address decoding for onboard 4k RAM expansion select -able in 4k blocks. . address decoding for onboard 8k EPROM expan- sion selectable in 8k blocks. . address and data bus drivers for onboard expansion. . wait state generator (jumper selectable), to allow the use of slower memories. . .two separate 5 volt regulators. mat with selectable baud rate, RS232-C or 20 ma. output, full cursor control and 75 ohm composite video output. The keyboard follows the standard typewriter configuration and generates the entire 128 character ASCII upper/lower case set with 96 printable characters. Features include onboard regulators, selectable parity, shift lock key, alpha lock jumper, a drive capability of one TTY load, and the ability to mate Level “C” Specifications directly with almost any computer, including the new Ex- ' nlnrpr / anH PI P nrnHnpfc hv NI#»t rr\nir*c Explorer/85 with "C“ card cage. Level “C” expands Explorer’s motherboard with a card cage, allowing you to plug up to six S-100 cards directly into the motherboard. Both cage and *1 cards are neatly contained inside Explorer’s deluxe steel cabinet. Level “C” includes a sheet metal superstructure, a 5-card gold plated S-100 extension PC board which plugs into the mother- board. Just add required number of S-100 connectors Level “D” Specifications Level "D” provides 4k or RAM, power supply regulation, filtering decoupling components and sockets to expand your Explorer/85 memory to 4k (plus the original 256 bytes located in the 8155A). The static RAM can be located anywhere from 0000 to EFFF in 4k blocks. Level “E” Specifications Level “E” adds sockets for 8k of EPROM to use the popular plorer/85 and ELF products by Netronics. The Computer Terminal requires no I/O mapping and includes lk of memory, character generator, 2 key rollover, processor controlled cursor control, parallel ASCII/BAUDOT to serial conversion and serial to video processing— fully crystal controlled for superb accuracy. PC boards are the highest quality glass epoxy for the ultimate in reliability and long life. VIDEO DISPLAY SPECIFICATIONS The heart of the Netronics Computer Terminal is the micro- processor-controlled Netronics Video Display Board (VID) which allows the terminal to utilize either a parallel ASCII or BAUDOT signal source. The VID converts the parallel data to serial data which is then formatted to either RS232-C or 20 ma. current loop output, which can be connected to the serial I/O on your computer or other interface, i.e.. Modem. When connected to a computer, the computer must echo the character received. This data is received by the VID which processes the information, converting to data to video suitable Intel 2716 or the Tl 2516. It includes all sockets, power supply t0 be displayed on a TV set Tusing an RF modulator) or on a regulator, heat sink, filtering and decoupling components. Sockets may also be used for soon to be available RAM IC’s (allowing for up to 12k of onboard RAM). Order A Coordinated Explorer/85 Applications Pak! Experimenter's Pak (SAVE $12.50)— Buy Level “A” and Hex Keypad/ Display for $199.90 and get FREE Intel 8085 user’s manual plus FREE postage & handling! Student Pak (SAVE $24.45)— Buy Level “A,” ASCII Key- board/Computer Terminal, and Power Supply for $319.85 and get FREE RF Modulator plus FREE Intel 8085 user’s manual plus FREE postage & handling! Engineering Pak (SAVE $41.00)— Buy Levels “A,” “B,” “C,” “D,” and “E” with Power Supply, ASCII Keyboard/ Computer Terminal, and six S-100 Bus Connectors for $514.75 and get 10 FREE computer grade cassette tapes plus FREE BAUDOT Character Set .ABCDEFGHIJKLMNOPQ 8085 user’s manual plus FREE postage & handling! RSTUVWXYZ-?:*3$8()., 9 014! 57; 2/68* Business Pak (SAVE $89.95)-Buy Explorer/85 Levels “A,” Cursor Modes: Home, Backspace^ Horizontal Tab, Line Feed, video monitor. The VID generates the cursor, horizontal and vertical sync pulses and performs the housekeeping relative to which character and where it is to be displayed on the screen. Video Output: 1.5 P/ Pinto 75 ohm (El A RS-170) • Baud Rate: 110 and 300 ASCII • Outputs: RS232-C or 20 ma. current loop • ASCII Character Set: 128 printable characters— • -tTcA 7 ()*♦,- . ✓0123456789: ;<=>? «*CD€FGHIJWJ»CPtt^ ' abedef 9ki jklAftONr5tttwx¥z{!>*| Vertical Tab, Carriage Return. Two special cursor sequences are provided for absolute and relative X-Y cursor addressing • Cursor Control: Erase, End of Line, Erase of Screen, Form Feed, Delete • Monitor Operation: 50 or 60Hz (jumper “B,” and "C” (with cabinet). Power Supply, ASCII Key board/Computer Terminal (with cabinet), 16k RAM, 12” Video Monitor, North Star 5-1/4” Disk Drive (includes North Star BASIC) with power supply and cabinet, all for just . . . $1599.40 and get 10 FREE 5-1/4” minidiskettes ($49.95 value) selectable. plus FREE 8085 user’s manual plus FREE postage & handling! Continental U S. A. Credit Card Buyers Outside Connecticut Continental U S. A. Credit Card Buyers Outside Connecticut CALL TOLL FREE 800-243-7428 CALL TOLL FREE 800-243-7428 _ — To Order From Connecticut Or For Technical J" NBTronTc?R&? L.7T, I 333 Litchfield Road. New Milford, CT 06676 ■ the item c rhorbo W hairs m __ i . . „ - v. : . Please send the items checked below— □ Explorer/85 Level “A” Kit (ASCII Version), $129.95 plus $3 p&h. □ Explorer/85 Level “A” Kit (Hex Version), $129.95 plus $3 p&h. □ 8k Microsoft BASIC on cassette tape, $64.95 postpaid. □ 8k Microsoft BASIC in ROM Kit (requires Levels “B,” “D,” and “E”), $99.95 plus $2 p&h. □ Level “B” (S-100) Kit, $49.95 plus $2 p&h. □ Level ”C” (S-100 6-card expander) Kit, $39.95 plus $2 p&h. □ Level “D” (4k RAM) Kit, $69.95 plus $2 p&h. □ Level “E” (EPROM/ROM) Kit, $5.95 plus 504 p&h. □ Deluxe Steel Cabinet for Explorer/ 85, $49.95 plus $3 p&h. □ ASCII Keyboard/Computer Ter- minal Kit (features a full 128 character set, upper & lower case, full cursor con- trol, 75 ohm video output convertible to baudot output, selectable baud rate, RS232-C or 20 ma. I/O, 32 or 64 char- acter by 16 line formats, and can be used with either a CRT monitor or a TV plus $2 p&ii. □ Deluxe Steel Cabinet for ASCII Keyboard/Terminal, $19.95 plus $2.50 p&h. □ Power Supply Kit ( ± 8V @ 5 amps) in deluxe steel cabinet, $39.95 plus $2 p&h. □ Gold Plated S-100 Bus Connectors, $4.85 each, postpaid. □ RF Modulator Kit (allows you to use your TV set as a monitor), $8.95 postpaid. □ 16k RAM Kit (S-100 Board expands to 64k), $199.95 plus $2 p&h. □ 32k RAM Kit, $329.95 plus $2 p&h. □ 48K RAM Kit, $459.95 plus $2 p&h. □ 64k RAM Kitr$589.95 plus $2 p&h. □ 16k RAM Expansion Kit (to expand any of the above up to 64k), $139.95 plus $2 p&h each. □ Intel 8085 epu User’s Manual, $7.50 postpaid. □ Special Computer Grade Cassette Tapes, $1 .90 each or 3 for $5, postpaid. □ 12” Video Monitor (10 MHz band- width), $139.95 plus $5 p&h. □ North Star Double Density Floppy Disk Kit (One Drive) for Explorer/ 85 (includes 3 drive S-100 controller, To Order From Connecticut Or For Technical Assistance. Etc Call (203) 354-9375 " sonalized disk operating system— just plug it in and you’re up and running!), $699.95 plus $5 p&h. - - □ Power Supply Kit for North Star! I Disk Drive, $39.95 plus $2 p&h. □ Deluxe Case for North Star Disk! I Drive, $39.95 plus $2 p&h. □ Experimenter’s Pak (see above), I I □ $199.90 postpaid. □ Student Pak (see above), $319,851 | □ postpaid. □ Engineering Pak (see above), I I □ $514.75 postpaid. □ Business Pak (see above), $1599.40 1 | □ postpaid. Total Enclosed $ | I r* ~~ Assistance, Etc. Call (203) 354-9375 Tl Netronics R&D Ltd., Dept. PE-9 333 Litchfield Road, New Milford, CT 06776 | I Please send the items checked below — □ Netronics Stand Alone ASCII Keyboard/Compuler ■ Terminal Kit, $149.95 plus $3.00 postage & handling. I Deluxe Steel Cabinet for Netronics Keyboard/Termi- . nal In Blue/Black Finish, $19.95 plus $2.50 postage I and handling. Video Display Board Kit alone (less keyboard), S89.95 | plus $3 postage & handling. 12” Video Monitor (10 MHz bandwidth) fully assem- I bled and tested, $139.95 plus $5 postage and handling. _ RF Modulator Kit (to use your TV set for a monitor), I $8.95 postpaid. 5 amp Power Supply Kit In Deluxe Steel Cabinet I (±8VDC @ 5 amps, plus 6-8 VAC), $39.95 plus $2 J postage & handling. (Conn. res. add sales tax) By— ■ | Tota l Enclosed (Conn. res. add sales tax) $ - □ Personal Check □ M.O. /Cashier’s | | — Check □ Visa □ Master Charge ■ ■ □ Personal Check □ Cashiers Check/Money Order " ( | | □ Visa □ Master Charge (Bank # ) | (Bank # ) Acct. # _ Signature _ Print Name I I I I usea witn either a CRT monitor or a TV set (if you have an RF modulator), « $149.95 plus $2.50 p&h. «■' %»•««»•*•** j o-i w wiiuuiki, ■ □ Hex Keypad/Display Kit, $69.95 DOS, and extended BASIC with per- State Acct. 8 _Exp. Date _ Address . City. j | Signature. I Print ■ Name Address _ City _Exp. Date _ _Zip_ II II - _ State □ Send Me Information m mm La mm mmm I I I I II □ Send Me More Information mm J _Zip JUNE 1980 CIRCLE INQUIRY NO. 85 INTERFACE ACE 1 19 1/9TH PAGE ADS ADVERTISING THAT PAYS FOR ITSELF If you haven’t tried INTERFACE AGE’s %th page advertising, you’re missing out on a valuable sell- ing tool for your products. Examine these unique advantages that only INTERFACE AGE provides: AMERICAN NEWSSTAND DISTRIBUTION The December 1979 magazine will mark the third Issue of INTERFACE AGE appearing on the nation’s newsstands. Since the introduction of INTERFACE AGE on the newsstands the reader response has been overwhelming. Now is the time to reach this new buying audience which continues to remain unduplicated in any other microcomputer publication. EUROPEAN NEWSSTAND DISTRIBUTION The January INTERFACE AGE will be the premiere issue on the newsstands in Germany and Austria. If you’re looking to increase your in- ternational sales, cash in on this lucrative over- seas market with your %th page advertising. COST SAVINGS At $200.00 per insertion, '/ 9 th page advertising continues to provide you with the lowest cost per thousand in the microcomputer industry. Think about it. Where else will you be able to reach such an audience at only $ 2.00 per thousand? Reserve your space early to insure the best posi- tioning for your %th page ad. 64K MEMORY FOR THE HEATHKIT H8’ COMPUTER Assembled Kit $750 $650 64K (56K) 615 525 48K 480 400 32K 345 275 16K Memory Expansion Kit - 16K $125 PC Board Only - With Documentation $ 50 Phone for Free Brochure 714/830-2092 ‘HEATHKIT and H8 ore Registered Trademarks of the Heath Co. H — TRIONYX H ELECTRONICS BOXM^^5J5AN^^NA^A 92704 SAVE TRS-80 10%, 15% and more on Computers. PAN AMERICAN ELECTRONICS, INC., A Radio /hack Authorized Sales Center 1117 CONWAY MISSION, TX. 78572 TOLL FREE 800/531-7466 Texas & Main No. 512/581-2765 Multi-User S-100 I/O Board Micromation’s Multi-User S-100 Board features four RS232 serial ports with full hand- shaking capability, three programmable timers, two bus-driving parallel output ports, three parallel input ports with handshake capability, plus wire wrap area for custom circuitry. The four serial RS 232 I/O ports employ indi- vidual switch-selectable baud rates to 9600 baud. The four ports employ 8551 UARTs to deliver full handshaking and full interrupt support. All UARTs and timers can be interrupt-driven for fast system operation. For details contact Micromation, 488 Cowper St.. Palo Alto. CA 94301, (415) 328-5181. David Carlick. CIRCLE INQUIRY NO. 126 Arithmetic Processor Unit The Model 781 IB by California Computer Systems is designed to increase the execution speed of Applesoft II programs as well as to in- crease the number of math functions available to the programmer. The card employs the AMD951 1 APU. It is a hardware floating point unit powerful enough to decrease program execution time by up to one order of magnitude. For details contact California Computer Sys- tems, 250 Caribbean Dr.. Sunnyvale. CA 94086. CIRCLE INQUIRY NO. 128 Thermal Printer for Apple Silentype™ is an advanced text and graphics printer for the Apple II. It is a quiet, low-cost peripheral that will enable Apple II users to print on paper copies of anything that the computer can display on a video monitor or television screen. Instead of a conventional character-printing hammer mechanism, the printer uses a 7-dot thick-film printing element to produce 5x7 dot characters and graphics on standard thermal paper. It prints up to 80 characters per line on 8/2 inch wide roll-fed paper. For more information contact Apple Computer, Inc., 1 0260 Bandley Dr., Cupertino, CA 95051 , (408) 996-1010. Jean Richardson. CIRCLE INQUIRY NO. 129 Expansion Interface for TRS-80 Lobo Drives International announced the addi- tion of an expansion interface for the Radio Shack TRS-80 computer. The Model LX80 enhances system performance by expanding memory stor- age capacity up to 40 million bytes. It provides facilities for up to 32K of RAM and offers a second serial port. A switch permits over- riding the keyboard ROM for booting in diagnostics and customized operating systems. For details contact Lobo Drives Int’l., 935 Camino Del Sur, Goleta, CA 93017, Mike Mock. CIRCLE INQUIRY NO. 130 Small Business Computer The BC-5000 from Panasonic is a desk-top computer which features a one-touch keyboard and double-sided, double density floppy disk drives. The unit can be utilized as a small business computer or intelligent terminal for distributed data processing. The unit is well-suited for order entry, inventory control, billing and a variety of applications which can benefit from the increased productivity obtain- ed when using the one-touch keyboard. For more information contact Panasonic, One Panasonic Way, Secaucus. NJ 07094. CIRCLE INQUIRY NO. 131 Touch Screen Digitizer The Touch Screen Digitizer from TSD Display Products is designed for use with 12-inch diagonal CRTs. The Touch Screen provides one solution for interfacing personnel who have no computer and data processing experience with a database that is stored in a computer. It eliminates the need for keyboards and light pens. The operator’s attention is constantly focused on the screen. For details contact TSD Display Products, Inc., 35 Orville Dr., Bohemia, NY 11716. CIRCLE INQUIRY NO. 132 120 INTERFACE ACE JUNE 1980 Disk Sort/Merge System A disk sort/merge system “DSM” is available for both the TRS Mod-1 and Mod-ll. DSM is a self-contained system written in machine language ready for immediate, use. DSM sorts large multiple diskette files on a minimum one drive Mod-ll or two drive Mod-1 disk system; physically rearranges all records; sorts random files created by BASIC, including sub-records spanning sectors; sorts on one or more fields in ascending or descending order. It also provides optional output field deletion, rear- rangement, and padding. DSM is available from Racet Computes, 702 Palmdale, Orange. CA 92665, (7 1 4) 637-5016. CIRCLE INQUIRY NO. 133 Industrial X-Y Digitizer The Digi-Pad single-unit digitizer tablet measures 1.7 inches high, has no adjustments, requires no preventive maintenance and all elec- tronics are built into the base of the tablet. Designed for applications requiring the conver- sion of graphic data into digital form, Digi-Pad has applications in computer aided design, entry of menu data, analysis of statistical data and more. Contact GTCO Corp., 1055 First St., Rock- ville. MD 20850, (301) 279-9550. CIRCLE INQUIRY NO. 134 Instant Processor Su/itcher Dynatech Data Systems has available a front end processor (FEP) switching system that pro- vides both network cost savings and increased reliability. This system allows a single spare pro- cessor to serve as a backup for multiple on-line processors, and has the ability to switch all chan- nels from a failed processor to the spare processor. The system consists of a series of multi-channel A/B fallback switches with the spare FEP chained to the B positions on each switcher. A remote control panel with interlock circuitry provides in- stant switching while preventing more than one set of communications lines from, being con- nected to the spare FEP simultaneously. Patching access to every channel permits indi- vidual channel reconfiguration and non-interrupt- ing monitor/signal breakout. Operation is con- trolled by pushbuttons with a keyswitch for system security. Contact Dynatech Data Systems, 7644 Dyna- tech Ct., Springfield. VA 22153, (301) 279-9550. CIRCLE INQUIRY NO. 135 Microcomputer Printer Interface The l/OMaster S-100 Interface Board from MicroPro allows flexible use of either lower cost letter-quality printers and/or high speed line printers within the same microcomputer con- figuration. Combining four boards in one, l/OMaster features two each serial and parallel ports as well as an eight level interrupt control and dual interval timer circuitry. To insure that keystrokes and transmitted communication data are not lost dur- ing task switching operations, l/OMaster’s two 8251 -based serial ports each have built-in 32-character FIFO buffers. All l/OMaster options are DIP switch selectable. For details contact MicroPro International Corp., 1299 Fourth St., San Rafael. CA 94901, (415) 457-8990. CIRCLE INQUIRY NO. 136 Parallel/Serial Converter The PSC/4000. offered by The Standard Register Company, is an easy-to-use, solid state microprocessor-based unit. Both interfaces are programmable. In addition, data can be edited, reformatted, etc. by the unit prior to output. The PSC/4000 interfaces a variety of quanti- tative measuring devices— scales, counters, etc.— with mini and microcomputers, CRTs, Tele- typewriters and serial printers. For details contact The Standard Register Co.. P.O. Box 1167. Dayton, OH 45401. CIRCLE INQUIRY NO. 138 Treasure Hunt Software Game CASTLE, a fantasy simulation game in which the player searches for treasure in a magical world, is available in North Star disk BASIC (ver- sion 6 or later). The game provides detailed descriptions of the locations, objects and situa- tions encountered by the adventurer, and accepts English-like commands from a vocabulary of over 1 50 words. CASTLE requires a system with 32 K bytes of memory, and a single or double density North Star disk drive. For more information contact International Computing and Robotics, 4920 Harmony Way, San Jose, CA 95130. CIRCLE INQUIRY NO. 137 Wafti/i a # # # Your Computer Specialists HEWLETT PACKARD [apple computer Authorized Dealer HP-85 Starting $3250.00 • Extended Basic Language • Advance Graphics • CRT Built-In Display • Magnetic Tape Cartridge for Storage • High Reliability • Whisper Quiet Printer HP-97 : 584.00 HP-67 299.00 HP-41 C 295.00 HP-4 1C Printer 385.00 HP-41 C Card Reader 215.00 HP-41C Memory Module 45.00 FREE $200 APPLESOFT CARD with the purchase of Apple II 16K. Apple II 16K 1195.00 Apple II Accessories: Disk II with Controller 535.00 Disk II without Controller 455.00 Apple Clock Card 249.00 Integer Card 180.00 *Leedex 12" Monitor 140.00 ::! AI0 Serial & Parallel Card 175.00 : CAT Modem 199.00 *ALF Apple Music Card 239.00 •Independent Manufacturers alpha micro SALES — SERVICE — SOFTWARE Medical Packages Accounts Receivable Accounts Payable— General Ledger Order Entry — Inventory Texas Instruments TI-99/4 Home Computer • Powerful TI-BASIC • Up to 72K total memory capacity. • Outstanding graphic, music and sound capabilities. • 13" color monitor included. • Revolutionary Solid State Speech ™ Synthesizer is optional. 'yiafitk’d, One. 515 DAVIS ST., EVANSTON, ILL. 60201 869-6140 Hours: Mon. - Fri. 8:30 AM - 7 PM Sat. 9 AM • 6 PM JUNE 1980 CIRCLE INQUIRY NO. 83 INTERFACE ACE 121 The Business “Dream” Machine? By David R. Fuller & Harold Henrich Lazor Systems, Inc. 1050 E. Duane Avenue, Sunnyvale, CA 94086 Although the typical small business system is designed to serve a single user performing a single task, even the small- est business or district office outgrows single-minded cap- ability. The system may have been geared to accounting, but someone wants word processing. Why not use it for inven- tory control, production scheduling, or management analysis? As the range of applications and the number of users proliferate, the system cannot handle the increased load. Lazor Systems, Sunnyvale, CA, has developed a system that solves this problem in two ways. First, the basic system can perform multiple tasks concurrent with serving multiple users and stations. Secondly, the system, designed in a modular fashion, allows for extensive growth in capability at minimum cost. The Lazor is an advanced multi-bus multi-processor small business system that collects, analyzes, decodes, executes and records multi-channel information at differing through- put rates. While one 1 6-bit processor serves as the master CPU, one or more 16-bit I/O processors can be added to handle multiple input/output operations simultaneously. Parallel execution by multiple processors is accomplished by task partitioning and resource allocation. The Lazor can be used as a master CPU supporting up to 1 6 terminals or as a district office front-end processor com- municating with a central IBM host via a communications controller. Each processor in the network handles two or more of the five basic functions: •Task allocation and resource management •Information processing •Information concentration and temporary storage •Local input/output and hardware control •Remote input/output and communications Functional organization of the master modules, on the Lazor Advanced Multibus, each with its own high speed buf- fer memory, minimizes bus contention allowing effective 122 INTERFACE AGE JUNE 1980 addressing and aggregate data transfer rate of two megabytes per second. INPUT/OUTPUT PROCESSORS The I/O processor, in conjunction with the I/O controller, is designed for optimum performance of I/O operations. The main processor sets up the I/O task in the main memory and notifies the I/O processor to start execution, then returns to application execution. The I/O processor ini- tiates operation by directly addressing the requested device and giving it a command. The I/O processor controls the direct memory access (DMA) transfer to buffer memory, transfers data to and from main memory and devices, handles all input/output interrupts, and notifies the master processor when the requested I/O operation is complete. The I/O processor controls devices with a wide range of speeds. Multiple devices can interleave transfers of data to and from memory utilizing the full band-width of the I/O processor with no degradation. In addition, the I/O pro- cessor performs error checking on all input/output opera- tions, retries errors, informs the task requesting the I/O operation of any non-recoverable errors, and at user option, keeps a log of errors on a disk data set. This frees the main processor for task management and execution of application programs, increasing total throughput. INTERRUPTS The system eliminates the need for high overhead polling techniques via three classes of interrupts: warning, invalid address, storage protect violation, divide ex- ception, double bit error and single cycle. Class 2 supervisor call interrupts are programmed instruc- tions under user control to call supervisor routines. Class 3 I/O interrupts are software maskable and serviced by the I/O processor using a double indirect vectoring scheme. This sets a pointer to any of the unique device para- meters and automatically branches to a common or unique service routine. Programmable priority at the control and device levels per- mit the supervisor program to define or dynamically change the interrupt priority level of any device. For example, the main operator console is a priority level 1 , but when another termi- nal needs real time processing, device priority can be changed to level 1 , and the main console switched to a lower priority. There are three ways to mask interrupts. Processor level masking masks all I/O interrupts. Control level masking masks I/O on particular priority levels, and device masking masks a particular device. This gives the Lazor excellent con- trol of its available resources. MLX OPERATING SYSTEM Lazor MLX is an interrupt drive, multi-task operating system designed to operate with the system architecture to provide: •Task management •Access methods •Resource management •Class 1: Non-maskable •Class 2: Supervisor call •Class 3: I/O interrupts Class 1 interrupts are non-maskable to immediately alert the system to error or exception conditions such as power fail The task manager schedules tasks for up to 1 6 concurrent users. Its unique run time monitor and priority scheme provides dynamic priority switching, at specified intervals, to guarantee timely application completion. Log-on services are also pro- vided to prevent unauthorized access to the system. JUNE 1980 INTERFACE ACE 123 AITOS BREAKS THE MICRO BARRIER. Yesterday, microcomputer meant micro performance. Once you outgrew it, you had to step up to a mini. Which meant a big step up in price. Today, there’s the new Altos ACS8000-6 single- board microcomputer system. It’s the first system for the OEM, small business- man and personal user, that offers minicomputer performance and minicomputer storage capacities— at a microcomputer price. MULTI-USER, WINCHESTER STORAGE, FLOPPY BACK UP: $14,260. The new Altos ACS8000-6 is a highly advanced Z80* based microcomputer system with high-speed RAM, floppy disk and Winchester hard- disk controllers, DMA, six serial and two parallel I/O ports and the AMD 9511 floating point processor all on a single board. A typical four-user system configuration with two megabytes of Shugart floppy and 29.0 megabytes of Shugart Winchester storage, including CPU and 208K bytes of RAM, costs only $14,260— com- pared to $30,000 or more for a similar minicomputer system. And that adds up to mini performance at less than half the cost! MULTI-USER EXECUTIVE SUPPORTS FOUR INDEPENDENT USERS RUNNING CP/M** COMPATIBLE PROGRAMS. compatible programs in any of six popular lan- guages: BASIC, FORTRAN, COBOL, PASCAL, APL, C, and a large assortment of additional business application packages. MP/M is compatible with both the 1.4 and 2.0 versions of Digital Research’s CP/M, which means programs based on either version can run under MP/M without modification. With MP/M at the helm, your Altos ACS8000-6 system can support up to four simul- taneous users with 48K bytes of RAM each plus 58 megabytes of Winchester storage and 4 mega- bytes of floppy back up. And that adds up to the first microcomputer to give you the power and performance of a minicomputer. SINGLE-USER, HARD-DISK SYSTEMS START AT $9450. The Altos ACS8000-6 series. It’s a barrier breaker in every sense. Our entry- level, single-user, hard-disc system with floppy back up is priced under $10,000 and even our 4-user CP/M model is available for under $12,000. And all configurations are easily upgraded. For specific details about pricing or performance, call or write: Altos Computer Systems, 2360 Bering Drive, San Jose, CA (408) 946-6700. TELEX 171562 ALTOS SNA This revolutionary new microcomputer system features the MP/M** Multi-User Executive software program that’s unique in two ways. It includes a multi-user CP/M capability and the ability to handle Winchester- type hard disks. The advanced Z80 operating program supports four independent CP/M (ALlCU] COMPUTER SYSTEMS CIRCLE INQUIRY NO. 3 The MLX access methods provide the user with three high level disk access methods. The Indexed Sequential Access Method (ISAM) allows the user to access disk resident data by a key record identifier. Relative record access allows ran- dom access simply by specifying record number. Sequential access provides access to records in a sequential manner beginning with the first record in a file. In addition, password verification is provided to protect user data sets from unauthorized access. The resource manager controls the system’s resources by providing memory management, timer services, and in- put/output device allocation. Dynamic allocation and deallocation of memory, as well as memory partitioning by task, are provided by the memory management routines. The resource manager’s timer routines provide accurate time of day for time stamping applications and messages. It also provides the task manager with its requested time inter- vals for priority switching. The input/output control routines assign physical I/O de- vices to logical I/O names allowing individual applications to be independent of particular I/O configurations. SYSTEM CONFIGURATION Two system series are available: the economical flexible disk-based E-series and the cartridge disk-based S-series. The basic Lazor is a 2.4 megabyte flexible disk computer system with a 16-bit CPU, 64K bytes of dynamic RAM memory with ECC, one flexible diskette controller, and one Winchester disk controller, eight serial interface ports, two 1 .2 megabyte flexible diskette drives, and a 1 6 position back panel allowing space for expansion. When the user needs more capability, he can upgrade to a higher model that adds an I/O processor, 64K bytes of addi- tional memory, a second flexible diskette controller (one for each drive), and two parallel interfaces. If the user needs still more capability, he can move to a unit that adds a 20 mega- byte Winchester drive and a ninth serial interface. Upgrades are via plug-in additions. The S-series begins with the entry-level 32 megabyte cart- ridge disk computer system. The basic system includes the 16-bit CPU, 128K bytes of dynamic RAM memory with ECC, a cartridge disk controller, eight serial interfaces, a 32 megabyte cartridge disk subsystem with 1 6 megabytes of re- movable storage and 1 6 megabytes of fixed storage, and a 20 position back panel for expansion. One model adds an I/O processor, two parallel interfaces, a ninth serial interface, an additional 32 megabytes of fixed disk storage for a total of 64 megabytes. It adds still more capability by adding a second 16-bit CPU, another 128K memory, and an additonal 32K megabytes of fixed disk storage to bring the total storage capacity to 96 megabytes. Again, the upgrades are made without changing the basic system hardware or software. Each model can be configured to meet specific application requirements. For example, additional I/O controllers pro- vide for large terminal networks. Parallel interfaces provide the necessary data rates for complex graphics. Disk drives, removable or fixed, can be added in various increments to satisfy applications requiring more storage capacity. The system will support memory expansion to one megabyte, up to four double density flexible diskette drives, up to 1 6 local or remote operator terminals, and multiple printers. With op- tional communications support, the system can handle bisync and async data communications protocols and includes a teletype adapter, providing voltage level compatibility with EIA RS232 interfaces. As with other systems, the user can select from a variety of output devices. Lazor offers interfacing for letter quality daisywheel printers, matrix printers (operating under serial or parallel), high speed line printers and printer/plotters. CO CO o> * o h* CO CO* T— 0) s* I % £ a o u g© ° o CD c ■ ra o t • o 0.1- CM CL CD Q. CVJ | cn «> °i§ CC~ in _ cc cr> _Q <1> cjEQ- •§ Sfr o^ u 2S cvj . N-£f CO CL o I s s 81 .8 § « « + ca < o ~0 : O rf\ . + o ,®o> (O' op w — o — & St 1 Q. CLQ >«< qj^- I S f*.8is ® ca £ g- vu 1 82 1 oS?flia 00 CO o < 8 . §£ | W5< 8 ■15 mg8 u - i “ peg 000 000 000000000 ooqoooooo . o LOunu^i^dcjjcjjcjjirjLncjjLOLO go. LnTl-CDCO^^^r-CM'*-CMCO^ o o a> 03 CD SSg e o o ooooo 58!°^ CM CO in CO LU DC ffi* si < U) lu.E _J o- CL.9- Q_ -C <& (0 ^ 0 E •g .8 1 fc ^ a^l C 2 ® CL cm cn — — ^ *5 0 ■ — 0) 5 = : 0 \ £ & « « 1 ^ ^ J Q_ E 1 O E o 0 o ~ c c £££ 0) r- S CO b b < . C 13 . S E CO c E . CD O ICO *0 to CL 0) *o — V t. — h_ 7 : m c a) Of') c = _ C U Q) o E o OT) i: aj E <0 o c O i ^ 2 © c ^ to ^ o CD 0 CD O 0 < < ^ O-H llO o CL CD _l . ^ < < < Q £ ■D £ c§ « as c n «- 0 00-0 0)7- c 0 0 0 p > CL O Q -O ' r “ £ V) 0 5 0 11 o ‘E * O 0 * I V) UJ E ssf Oo O c ^ O) DC £ UJ Q. n= 2^0 S § .g 1 § ^ C 0 5 O 0 O o S 2 co 0 o5c -D O ^ ^ 0) ^ 0 0 0 CL CM ^ c ^ ^ 03 .E 0 O 0 ^ r w c C 0 0V ■ CO CO '0 > § | : S y-8 „ g « 1 O W W t 5 0) £ -2! 5 | E c £ TD c — - c QJ « a) Q--S -g | i iifil -a g 1 1 1 1 » ‘Mil 0 = r a g> >« m u (0 J V • J W h 5 « E l 5 ;i 8 ” 8 S b ® h- w c 3 c « 3 Z u. (u £ E o 0 c 0 a o 0 ^9 X co o 03 a ^ Z ^ o 0 o r^ 0 co -o = 5 < "O d § 8 ? z a 8 “ a o 18 JC CM o eo § -o Q.-O O < ^ o bs 0 ^ 0) s f 8 $2 co 0 0 E 0 o O (,) 0 " ^ 0 £ 5 § oof m o LL * 15 5 o § 5 0 -c 0 D) £ '0 ro.e g '■ « « ■ 0^0 |o ^ 0 *- ^5 « M ■§ CD 0 0 § S8 2 0 i5 o ^ 0 0 0 2 c 0 n 0 •o 0 sal 0 c r 0 £ £ -C o 00 ^ /26 INTERFACE ACE CIRCLE INQUIRY NO. 76 JUNE 1980 PERIPHERALS •Flexible disk drive (double density, double sided, 1 .2 megabyte) • 1 40 cps matrix printer (serial interface) •150 cps matrix printer (parallel interface) •300 Ipm printer (parallel interface) •45 cps letter-quality printer •CRT intelligent terminal •Winchester disk (20 megabytes) •Cartridge disk subsystem (32 megabytes, 16 mega- bytes, fixed; 1 6 megabytes, removable) •Cartridge disk subsystem (64 megabytes, 48 mega- bytes, fixed; 1 6 megabytes, removable) •Cartridge disk subsystem (96 megabytes, 70 mega- bytes, fixed; 16 megabytes, removable) SOFTWARE Lazor MLX multi-level executive operating system Lazor BASIC compiler Lazor COBOL compiler Applications programs General ledger Accounts payable Accounts receivable Payroll with cost accounting Order entry with inventory control Text editor Word processing RELIABILITY Modular design and high-level large-scale integration offer improved reliability through reduction in the number of com- ponents and interconnections. Wiring between printed cir- cuit boards has been eliminated by plugging all boards Into a common bus back panel. Logic handles worst case timing and environmental conditions. A power-fail interrupt protects against failures. When input line voltage drops below required levels, the system detects the failure and sends a “power warning interrupt” to the main processor. The active data files are immediately written in disk storage. MEMORY ERROR DETECTION When an application accesses a memory address that ex- ceeds memory capacity, in most conventional mini and micro-based systems, the user is not notified. New data is either written over existing data in other memory locations or simply lost. In Lazor, the memory notifies the main CPU and operator that a program has attempted to access a location outside of memory boundaries and was unsuccessful. Memory-write protection is a standard feature in all sys- tems. The Lazor operating system provides each user with a protected area of memory, especially valuable when shared by multiple users. Error Check and Correction (ECC) minimizes system fail- ures. ECC will detect all single, double, and some multiple bit errors and correct all single-bit errors. DIAGNOSTICS Diagnostics are run each time the system is powered-on or system reset is depressed for initialization. Malfunctions are detected by the sequence-driven master test module and dis- played on the system console. Modular board design simpli- fies isolation of system failures. SECURITY Lazor offers both software and hardware security keys. Sys- tem reset and power-on are controlled by a key lock device. □ North Star Horizon/Hard Disk Timesharing Computer systems by micro mike’s, me. ★ ★★★★★ Micro Mike's interrupt-driven, bank switching timesharing is a natural evolutionary progression of the North Star Horizon computer s foresightful engineering Taking advantage of the standard on-board features of the Horizon. TIMESHAVER.™ Micro Mike's timesharing/hard disk operating system, allows as many as seven users, each with 32K to 56K RAM. running different programs simultaneously in North Star BASIC or through CP/M* 2.0. a variety of programs and languages. As many as jour 26 megabyte (formatted) hard disk units can provide 104 million characters (formatted) of lightning-quick external memory storage, working in conjunction with the Horizon's double density/quad capacity W minifloppy drives. In stock: Complete North Star Horizon timesharing/ hard disk computer systems, including: Zenith Z19 intelligent CRTs (as many as seven per timesharing system). Shugart 26 megabyte (formatted) sealed-media. Winchester- type hard disk units (as many as four per system) Printers: NEC Spinwriter. Texas instruments Tl 810 and Tl 820. I0S-440 Paper Tiger Mjcro Mike s has written a comprehensive selection of business application programs in North Star BASIC using a defined set of Common SUBroutmes (CSUBI Call or write for descriptive literature micro mike’s, inc. r\ 905 South Buchanan o Amarillo, Texas 79101 ‘U.S.A.* Telephone: (806) 372-3633 making technology uncomplicated . . .tor people *CP/M is a registered trademark of Digital Research. Copyright 1980 Micro Mike's. Incorporated All Rights Reserved CIRCLE INQUIRY NO. 79 Buy By Mail and Save! COMPUTERS INTERTEC SuperBrain® 32 K RAM $2995 . . . $2495 64 K RAM $3345 . . . $2695 NORTH 3TAR Horizon® 1 32 K Kit, List $1999 . $1579 32 K Assembled $2695 $2149 Horizon 2 32 K DD, Kit, $2399 . $1885 32 K DD, Assm. $3095 $2439 32 K QD, Kit $2779 . $2359 32 K QD, Assm. $3595 $2859 CROMEMCO System 3, 64 K, $6990 . $5479 System 2, 64K, $3990 . $3179 Z-2, List $995 $ 829 VECTOR MZ, $4313 $3439 System B, List $5463 $4359 TI-99/4, List $1150 $985 ALTAR I® 400, List $630 $489 800 List $1080 $839 DISK SYSTEMS THINKER TOYS® Discus 2D, $1149 $ 939 Discus 2 + 2, $1549.... $1288 PRIIMTERS/TERMINALS ANADEX DP-8000 . . $799 T.l. 810 $1575 CENTRONICS 730 1 $739 PAPER TIGER IDS-440 $849 with graphics option . . $949 INTERTUBE II, $995 . $729 PERKIN-ELMER Bantam 550 $789 SOROC120 $745 TELEVIDEO 912 . . $789 Most items in stock for immediate delivery, factory-sealed cartons, with full factory warranty. N.Y.S. residents add appropriate sales tax. Prices do not include shipping. VISA and Master Charge add 3%. COD orders require 25% deposit. Prices subject to change and offers subject to withdrawal without notice. Computers Wholesale P.O. Box 144 Camillus, NY 13031 (315)472-2582 JUNE 1980 CIRCLE INQUIRY NO. 82 INTERFACE ACE 127 BASIC For the Home Computer By Bob Albrecht , LeRoy Finkel, and Jerald R. Brown Order No. 0-471-03204-2 336 pages $6.95 Learn how to read, write and understand BASIC, including applications and games for the hobbyiest or for anyone who wants to use small computers in home, school or office 32 BASIC Programs for the TRS-80 By Tom Rug g and Phil Feldman Order No. 0-918398-27-4 290 pages $15.95 Now that you've bought yourself a TRS-80 computer, what do you do with it? You will .find the answer to that and many more questions in this book. Each of the 32 chap- ters fully documents a different program. The authors explain how to make simple modifications, and if you have a good work- ing knowledge of BASIC, you can devise and implement your own program changes Valuable to both the noive and "old hand" Atari BASIC By Bob Albrecht Leroy Finkel, and Jerald R. Brown Order No. 0-471-06496-3 $5.95 Learn to read, write, and understand BASIC- all in a self-intructional format that requires no special math or science background or previous experience with a computer. Sup- plies all necessary information, from how to get started to a list of popular comput- ing magazines; contains numerous appli- cations and games. from Books BASIC Computer Programs for the Home By Charles D. Sternberg Order No. 0-8104-5154-9 330 pages $8. 95 A comprehensive book of practical home application programs that will be helpful to both the novice and the experienced own- er in increasing the usefulness of all home computers. Each program is documented with a description of its functions and operation, a listing in BASIC, a symbol ta- ble, sample data, and one or more output samples. Some Common BASIC Programs By Lon Poole and Mary Borchers Order No. 0-931988-06-3 220 pages $12.50 Program listings and documentation for 76 short programs covering financial, mathe- matical, statistical, and general interest applications. Instant BASIC By Jerald R. Brown Order No. 0-918398-21-5 159 pages $9.95 For the microcomputer enthusiast or the user of DEC'S BASIC plus language, here is an "active participation" workbook design- ed to use with your home computer. It's an easy, painless way to learn BASIC. BASIC 2nd Edition By Bob Albrecht LeRoy Finkel and Jerald Brown Order No. 0-471-03500-9 3i25 Pages $5.95 Revised and updated to make it simpler than ever to learn BASIC without the need for special math or science background. Shows how to use the computer as a tool in any field from education to the humanities. Microsoft BASIC By Ken Knecht Order No. 0-918398-23-1 225 pages $9.95 Illustrates concepts presented in such a way that commands valid at each succeed- ing level of BASIC can be easily used and understood. By starting with the simplest and most commonly used commands and then progressing on to more complex BAS- IC, the author illustrates how the more powerful versions of the language can save valuable programming time and effort. 128 INTERFACE ACE JUNE 1980 la Basic Books DATA DYNAMICS TECHNOLOGY has them all S Microprocessor BASICS Edited By Michael Elphick Order No. 0-8104-5763-6 224 pages $11.95 Aimed at the design engineer, seperate sec- tions are devoted to each of the popular microprocessors available. Each section also discusses one available model, explain- ing its advantages, disadvantages, architec- ture, and capabilities. Computer Dictionary By Donald Spencer Order No. 0-89218-038-2 160 pages $5.95 This current and comprehensive dictionary contains about 2500 words, phrases, and acronyms used in connection with comput- ers. The keynote of this book is clarity- with- out sacrifice of authority and definitional precision. All definitions are simple, and stand as independent units of explanation. This book was written for all those who, in their work or in their studies, become invol- ved with computer technology. The Semiconductor Memory Book By Intel Marketing Communications Order No. 0-471-03567-X 524 pages $14.95 A complete and extensive collection of semiconductor memory application and specification information complied by one of the world's largest suppliers of memories and microprocessors. Microprocessor Interfacing Techniques By Austin Lesea, Rod nay Zaks Order No. 0-89588-029- 6 464 pages $15.95 Microprocessor interfacing is no longer an art It is a set of techniques, and in some cases, just a set of components. This book introduces basic interfacing concepts, and presents in detail, implementation tech- niques for both hardware and software. It covers the essential peripherals, from key- board to floppy disk, as well as standard buses and introduces basic troubleshooting techniques. Microcomputer Primer By Mitchell Waite and Michael Pardee Order No. 0-672-21653-1 368 pages $11.95 Build your knowledge and appreciation of microcomputers from the ground up with this revised second edition on those enor- mously popular typewriter-size computers. Covers the most recent advances in micro- computer technology and contains an in- troduction to microcomputers, basic com- puter concepts, electronics of microcom- puter functions and many more. Computers & Programming Guide For Engineers By Donald D. Spencer Order No. 0-672-20950-0 288 pages $12.95 Written for the engineer or scientist, this hook explains what a computer is, how it works, and how it can be used to the best advantage. It discusses various types of digital computers, input/output devices, storage devices, storage media, and also covers the steps the engineer uses in prob- lem solving on a computer. Includes several problem-oriented languages and languages for simulations. Qcmputero And Programming Guide Fop Engineers DATA DYNAMICS TECHNOLOGY Name (Print) Address City Please send me: P.O. Box 1234, Cerritos, CA 90701 6/80 _State_ _Z.p_ Description Qty Price Total Book Order # Qt_y Price Total Shipping & Handling Charges Books Exp. Date_ $ .75 ea. U.S., $1.50 ea. Foreign TOTAL ORDER S_ 'TAX $_ SHIPPING & HANDLING $_ TOTAL ENCLOSED $_ □ sc a I _G Check or M.O.(U.S. Funds drawn on U S bank) Signature . For European delivery contact INTERFACE AGE Europe, Dahlienstr. 4. D-801 1 Munchen-Vaterstetten. West Germany. •California residents add 6% sales tax. Availability and prices quoted subject to change without notice. Please allow six weeks for delivery. You may photocopy this page if you wish to keep your INTERFACE AGE intact. Orders cannot be shipped unless accompanied by payment, including shipping & handling and tax where applicable. DATA DYNAMICS TECHNOLOGY, A Division of INTERFACE AGE Magazine (213) 926-9548 JUNE 1980 INTERFACE AGE 129 Try this for an afternoon’s entertainment: Walk into a com- puter factory, whip out a simple-looking 1 5-line BASIC pro- gram, and ask to run it on its most cherished product. While keying it in, mention that you intend to publish the results in a national magazine, along with the best performances of a dozen or so of their most honored competitors. If that doesn’t immediately result in rapid escort to the nearest exit, you will find yourself in the center of plenty of attention from more apprehensive-looking executives than those assembled for the last IRS audit. We have taken part in that scenario quite a few times in the past several months, and have learned a lot about bench- marking as an art. In its simplest form, a benchmark is a task that can be run on different computer systems to compare the performance of each. Ideally, the task should be one that is meaningful to the intended application of the computer in your business. Unfortunately, that’s usually possible only to a very small degree. It would be enlightening to run a 100-employee payroll on two different computer systems (using identical programs) and compare the results; but that would be a complicated undertaking and would involve neutralizing all of the irrelevant variables that might obscure the outcome. For our purposes, we have simplified the test, admittedly at the expense of compromising the meaningfulness of the result. Our benchmark task is a simple BASIC program that utilizes two nested FOR/NEXT loops to “discover” all of the prime numbers up to 1 000. The program is so simple it can easily be adapted to run on all BASIC variants, and can be translated into other languages with little difficulty — even on a programmable pocket calculator. The only performance criteria we are interested in is speed of execution. This can be measured without using precision equipment, since a typical run will take ten minutes or so. We are indebted to Mike Simmons, inventor of the HEX29, who first showed it to us during a visit to his laboratory. Some of the computer factory experts have told us it’s a dumb program that doesn’t do a very good job of computing prime numbers. It exercises but a fraction of the large reper- tory of capabilities featured by any decent computer, so it tends to favor the simple languages at the expense of those that otherwise might be far more capable in other respects. And finally, spitting out prime numbers is a scant test of a computer as a meaningful addition to society. All of that is true, of course, but we have developed a fond- ness for our adopted program, and will continue to use it as* a test of one small aspect of a computer’s worth. Speed, after all, is what computing is all about. The beleaguered pur- chaser has precious little help in quantifying the differences amongst the current cornucopia of offerings. While far from being the ultimate test of processing speed, we think that printing “997” (the last prime less than 1 000) in under four minutes says more about a system’s capability than quoting the clock rate of the fastest quartz crystal in the machine. Table 1 shows the results we have gathered so far — from the giant time-sharing engine of a large university’s com- Table 1. Benchmark Performance Data COMPUTER SYSTEM PROCESSOR SOFTWARE BENCHMARK MANUFACTURER SYSTEM TYPE BITS SPEED OPER SYS LANGUAGE RUN TIME Digital Equipment PDP-10 n/a 36 n/a TOPS-10 BASIC 65 sec Digital Microsystems HEX29 2900 16 6 MHz HOST HBASIC + 143 sec Alpha Micro AM-100/T WWD16 16 3 MHz AMOS 4.3A AlphaBASIC 317 sec Alpha Micro AM-100 WD16 16 2 MHz AMOS 4.3A AlphaBASIC 573 sec Technico SS-16 9900 16 3 MHz DOS Super BASIC 3.0 585 sec Ohio Scientific C4-P 6502 8 2 MHz OS65D 3.2 Level 1 BASIC 680 sec Radio Shack TRS-80 Model II Z80 8 4 MHz TRSDOS 1.1.2 Level III BASIC 955 sec Apple II PLUS 6502 8 2 MHz DOS 3.2 Applesoft II BASIC 960 sec Rexon RX30 8086 16 5 MHz RECAP Business BASIC 1020 sec Ohio Scientific C3-C 6502 8 1 MHz OS65D Level 1 BASIC 1346 sec ISC Compucolor 8051 8080 8 n/a DOS BASIC 8001 1375 sec Hewlett-Packard HP-85 Prop 8 n/a n/a BASIC 1380 sec Basic/Four 600 8080 8 n/a n/a BASIC 1404 sec Micro V Microstar 1 8085 8 3 MHz StarDOS StarDOS BASIC 1438 sec Zilog MCZ-1/70 Z80 8 4 MHz RIO Zilog BASIC 1864 sec Radio Shack TRS-80 Model 1 Z80 8 2 MHz TRSDOS Level II BASIC 1928 sec 130 INTERFACE AGE JUNE 1980 puter sciences school to the most-widely produced computer in the history of the world: the Radio Shack TRS-80. We have included all of the configuration information we could pin down, as there can be significant differences between dif- ferent versions of an operating system, for example. The chart only shows the results of testing we have performed personally. Others have run the benchmark on a variety of other equipment, but since we weren’t there to witness the test conditions, we opted to leave the data out of the table, in- teresting as it was. Try it yourself, and share the results with us. Use any tricks you know to speed up the program execution (multiple state- ment lines, integer variables, etc.), but don’t “improve” on the basic algorithm itself. A canny programmer at an Ohio Scientific store knocked 1 0% off the execution time by sub- stituting variables for line numbers in this manner: 125 LET XI = 0 126 LET X2 = 230 180 IF L = XI THEN X2 That trick doesn’t strike us as being a normal programming technique, so we didn’t allow it in our chart, even though it rates an A + for comprehension of his BASIC interpreter’s inner workings. Include the actual listing of the program, along with all per- tinent information regarding operating system version, brand of language, etc. If enough readers send in results, we will tabulate them for publication in a future issue. We would par- ticularly like to share with you data on any runs on large mainframe computer systems. (If it’s a time-sharing machine, make several runs during off-peak times and keep the best one.) It would also be interesting to see how different operating systems and/or languages compare, using the same hardware. The Association of Computer Users (P.O. Box 8003, Boulder, CO 80301 ) is a non-profit organization that carries benchmarking to a high art. For $150 per year, you can subscribe to Benchmark Report, which shows the results of some in-depth testing on a variety of business computer systems. Their benchmarks are broken down into speed tests (CPU and I/O intensive), real life problems (scien- tific/engineering and accounts receivable) and ease of use (number of keystrokes required for text editing). They seem to have covered all of the important areas except, perhaps, prime number crunching. □ — TF Program follows LISTING 1 — Prime Number Cruncher If the terminal doesn’t supply an automatic carriage return/line feed at the right-hand edge, line 230 will cause the display to “stick” after printing only the first few primes. lOO REM INTERFACE AGE's benchmark program to 110 REM 'discover 7 the first 1000 prime numbers 120 REM 130 PRINT "Start ins t " 140 FOR N = 1 TO 1000 150 FOR K = 2 TO 500 160 LET M = N/K 170 LET L =* INT(M) 180 IF L = 0 THEN 230 190 IF L = 1 THEN 220 200 IF M > L THEN 220 210 IF M = L THEN 240 220 NEXT K 230 PRINT N i 240 NEXT N 250 PRINT CHR*<7) 260 PRINT "Finished." 270 END JUNE 1980 Why Your Next CRT Should Come From MICROMAIL: • Displays 80 x 24, upper/lower case. • Separate numeric keypad and cursor keys. • Protected fields displayed at reduced intensity. $740.00 SOROC IQ 140 1 1 7-key detachable keyboard with numeric cluster and cursor control. Insert/delete line, insert/delete character. Underline, blink, reverse, 1/2 intensity, protected and blank fields. Printer port with independent baud rate — prints line, partial or full $1130.00 (General Terminal Corp was formerly known as Infoton) • Z80 microprossor controlled; smooth scroll, dual intensity, reverse video • Block mode; insert/delete character, insert/delete line, protected fields. • 96 character full ASCII upper/lower case plus 32 character line- drawing character set • 24 lines x 80 characters, plus 25th status line Character matrix 9x9. • All steel packaging; convection cooled no-fan design. • RS 232 serial and 20mA current loop interface, 110-19, 200 baud $950.00 Reverse video, blinking, underline, 1 / 2 intensity, protected fields, blank security field. Transmit character, line, partial page, page, or unprotected data. Cursor up, down, left, right, return, home, plus load and read. (in quantities) $750.00 We Also Represent the Following Manufacturers: DIABLO DEC TELETYPE TEXAS INSTRUMENTS CIRCL E ENQUIRY NO. 78 Write or Call In for Our Free Catalogue! rrcwcnaim., MICROMAIL BOX 3297 • SANTA ANA, CA 92703 (714) 731-4338 TO ORDER: Send check or money order to: MICROMAIL, P.O. Box 3297, Santa Ana, CA 92703 Personal or company checks require two weeks to clear. Termi- nals in stock are shipped the business day after receipt of certified funds. All equipment includes factory warranty. SHIPPING: We ship freight collect by UPS when possible. Larger terminals are shipped by motor freight. Air and express delivery is available on all products. SOFTWARE SECTION SOFTWARE APPLICATION A BREAK Service Routine for a KIM-1 with a Teletype By Ken Wetzel Frequently a program requires debugging before it oper- ates as intended. The use of software interrupts, or break- points, are recognized debugging aids; to this end, many microcomputer monitors include breakpoint routines. The KIM-1 monitor lacks this capability. The program presented here is for use with a KIM-1 and a TTY terminal. It allows the listing of the contents of the internal registers of the 6502 microprocessor unit (MPU) whenever the MPU encounters a breakpoint in the execution of a program. This break ser- vice routine returns control to the KIM monitor to permit user intervention before continuing with program execution. In using a break service routine it is necessary to replace an opcode within the user’s program with the breakpoint. Specifically, for the 6502 the opcode for break (BRK) is ‘00’. Replacing an opcode with the opcode for break is often called ‘patching’ a breakpoint. Monitors, on some other microcomputers have break service routines that automatic- ally patch the breakpoint while saving the original opcode, and then automatically restore the original opcode during execution. Convenient as they are, such routines are limited in the number of breakpoints they can support. The program I have written requires patching breakpoints into a program and restoring the original opcodes, both manually. Although I was primarily concerned with having a short enough routine to fit in the available RAM that begins at address 1 780, the routine also has the advantage of serv : ing a limitless number of breakpoints. What I have attempted to optimize, however, is the format for printing the MPU contents on the TTY. The format is shown in figure 1 . 02C5 X:39 Y*02 A:61 SlFF N: 1 V*0 >1 Btl DM ItO Zll C * 1 Figure 1. Break Service print out format. The break service routine has the TTY do a carriage return and a line feed, print the address of the breakpoint encount- ered, and then print the contents of the X and Y index regis- ters, the accumulator, the stack pointer, and each flag with its status. The undefined 6502 flag is identified with a blank. As soon as the status of the carry flag is printed, control of the KIM-1 is returned to the user via the usual command keys. Examples of this are included in this article. The use of this break service routine is straightforward. If a program is demonstrating questionable responses, merely change the opcode at the suspect location to 00. When the pro- gram is run again, the breakpoint will activate the TTY listing of the MPU registers, provided that execution reaches the break- point. I find that a liberal number of breakpoints is desirable when the errant program demonstrates confusing execution. Since the breakpoints are inserted and removed manually, it is quite helpful to patch a breakpoint over an NOP, even though a BRK can be patched over any opcode in RAM. With this method it is not necessary to repeatedly patch a breakpoint and restore the original opcode to repeatedly exe- cute the program. The debugging ease which results from patching over an NOP makes it very desirable to include them in strategic locations during the initial stages of pro- gram development. The following example will help to illustrate the breakpoint service operation. Figures 2 and 3 show a sample program before and after patching two breakpoints. One replaced an NOP, and the other a BNE. Figure 4 shows the computer response and operator commands when running the pro- gram of figure 3. The first line shows the starting address of the program and the operator’s ‘G ? command to resume program execution. After the computer finished the second line, the operator advanced. to the opcode following the BRK by using the return key. The computer then printed the ad- dress and opcode on the third line and the operator restarted program execution with the G key. 0000 18 TEST CLC Nonsense program to 0001 F8 SED demonstrate Break Service 0002 A9 39 LDA # 39 A ' 0004 AA REPEAT TAX 0005 69 63 ADC # 63 0007 A8 TAY 0008 49 63 E0R # 63 000A EA NOP Space to patch a breakpoint 000B 24 13 BIT z DATA 000D DO F5 BNE REPEAT 000F D8 CLD Enable KIM TTY routines 0010 4C 64 1C JMP CLEAR Return to monitor 0013 9E DATA Figure 2. Sample program before patching break points. 0000 18 (TEST) CLC Nonsense program with 0001 F8 SED breakpoints patched in 0002 A9 39 LDA # 39 0004 AA REPEAT TAX 0005 69 63 ADC # 63 0007 A8 TAY 0008 49 63 E0R # 63 000A 00 BRK Breakpoint 000A 000B 24 13 BIT z DATA 000D 00 F5 BRK ★ Breakpoint 000D 000F D8 ★ 0010 4C 64 1C * 0013 9E DATA < * Ambiguious until BRK at address 000D is replaced with original opcode. Figure 3. Sample program with break points. 132 INTERFACE AGE JUNE 1980 Introducing a whole new school of thought are the new twins of the microcomputer industry . . . the Model Z80/64 CPU and memory board and the Model TWO-X single/double density disk controller. Like degrees and diplomas this new class is an achievement beyond compare. The Z80/64, a Z80 processor, runs at a full 4 Mz and is supplemented with 64K bytes of dynamic RAM with provisions for vectored interrupts and 2K EPROM, all on a quality S-100 bus board. The Z80/64 has low power requirements and full transparent refresh during unutilized processor time. With CPU and memory on the same board, timing problems and bus noise are eliminated. Who said you can’t teach an old system new tricks? I The TWO-X, double/single density disk drive controller, handles four 8" or three 5" single or double headed disk drives, and operates single/double density auto- matically. Transfering files between densities, operating at 2 or 4 Mz, the TWO-X includes a RS232 Serial port. There’s a hardware 2708 PROM on board and the soft- ware is all ready to go, configured to run without a front panel. It’s a real apple polisher. ; To send your system to the head of it’s class, put these boards in our new “Cool” mainframe, the Model 2018 desk or rack mount cabinets . . . they’re in a class by themselves. So if you are ready to stand above the crowd, call the “Coolest” distributors in the country, CMC MARKETING, or see them at your local retail computer store. V 10611 Harwin, Suite 406, Houston, Texas 77036 • (713)995-4960* TWX: 910-881-7155 TELEX: 762072 © 1 979 CMC Marketing Corp. JUNE 1980 CIRCLE INQUIRY NO. 74 INTERFACE ACE 133 SOFTWARE APPLICATION NO FRILLS! NO GIMMICKS! JUST GREAT DISCOUNTS MAIL ORDER ONLY HAZELTINE 1400 S 549.00 1410 750.00 1420 795.00 1500 875.00 1500 (Kit) 850.00 Mod 1 Edit 1295.00 CENTRONICS Special 700-2 Micro Printer DEC LA34 NORTH STAR Horizon I assembled kit Horizon II assembled kit XYMEC HY-Q1000 Daisy Printer INTERTEC Superbrain DIGITAL SYSTEMS Computer Double Density Dual Drive TELEVIDEO 912 920 $4345.00 2433.00 775.00 850.00 1095.00 OKIDATA 325.00 SL160 2395.00 CP1 10 995.00 1075.00 CROMEMCO System IIIS1 000 otf 5990 00 TEXAS INSTRUMENTS } 20% 810 Printer 1595.00 I Off ATARI 800 795.00 ) ADDS Regent 25 Optima Cabinets CALL 2235 00 (New) 99.95 5" Scotch Diskette Box/34.95 2595.00 8" Scotch Diskette Box/39 95 Most items in stock for immediate delivery. Factory-fresh, sealed cartons. DATA DISCOUNT CENTER Box 100 135-53 Northern Blvd., Flushing, New York 11354, 212/465-6609 N.Y.S. residents add appropriate Sales Tax. Shipping FOB N.Y. I BankAmericard, Master Charge add 3%. COD orders require 25% deposit. CIRCLE INQUIRY NO. 75 mniAi A COMPUTER NUVVfor yoiiR car How well is your car runnins? Do you know what kind of Sas mileage you are getting? What is your ETA based on present speed? These and many other vital questions are answered by the COMPUCRUISE. Three models to choose from to fit most cars. Functions displayed in either English or Metric (Not available for fuel injection or diesel cars). Model 44 — Automobile trip computer with cruise control. Has 44 functions including time, outside and inside temperature, current fuel consumption, battery voltage, current fuel efficiency (MPG and GPH) and many others. Regular . . . $199.95 Special . . . $159.95 Model 41 — Automobile trip computer same as above, without cruise control. 41 functions Regular . . . $159.95 Special . . . $129.95 Model ZT3 — New economy model. Provides 21 essential functions including miles per gallon, time to empty, gallons used, elasped time and others displayed in English or Metric system. Regular . . . $129.95 Special . . . $99.95 Write For Our Free Catalogue T&W COMMUNICATIONS 10611 Harwin, Suite 406, Houston, Texas 77036 (713) 772-8301 Prices & availability subject to change without prior notice. 0000 18 G 000A X : 39 Y*02 A*61 000B 24 G 0000 X l 39 Y *02 A*61 000E F5 000D DO G S *FF NtO Vtl *1 8*1 SlFF NlO VIO *1 B 1 1 on no zto cn Dtl 1*0 Zll C:l DO. Figure 4. Computer response and operator com- mands for program in figure 3. Note that this procedure is used when the breakpoint be- ing serviced is patched over an NOP. The fourth through sixth lines show the operation when a breakpoint is patched over an actual opcode and the operator desires to continue execution after the break service is finished. The fourth line shows that after the computer printed the status of the C flag, the operator typed in the original opcode, in this case ‘DO’, and depressed the period key to enter the opcode into memory. The computer responded by printing the following memory location with its contents, in this case ‘000E F5’. Now it is necessary to backup to the desired opcode by using the LINE FEED key on the TTY. The last line of figure 4 shows the ad- dress of the replaced opcode, the replaced opcode, and the ‘G’ the operator typed to resume program execution. 1780 08 BRKSRV CLD 1781 85 F3 SAVE STA z F3 1783 68 PLA 1784 85 FI STA z FI 1786 68 PLA 1787 38 SEC 1788 E9 02 SBC # 02 178A 85 EF STA z EF 178C 85 FA STA z FA 178E 68 PLA 178F E9 00 SBC # 00 1791 85 F0 STA z F0 1793 85 FB STA z FB 1795 84 F4 STY z F4 1797 86 F5 STX z F5 1799 BA TSX 179A 86 F2 STX z F2 179C 20 2F IE PPC JSR CRLF 179F 20 IE IE JSR PRTPNT 17A2 A2 0B LDX # 0B 17A4 20 CA 17 PREG JSR PSUB 17A7 B5 EA LDA zX EA 17A9 20 3B IE JSR PRTBYT 17AC CA DEX 17AD E0 07 CPX # 07 17AF DO F3 BNE PREG 17B1 A5 FI LDA z FI 17B3 85 F7 STA z F7 17B5 20 CA 17 PFLAG JSR PSUB 17B8 A9 30 LDA # 30 17BA 06 F7 ASL z F7 17BC 69 00 ADC # 00 17BE 20 A0 IE JSR 0UTCH 17C1 CA DEX 17C2 10 FI BPL PFLAG 17C4 20 9E IE JSR 0UTSP 17C7 4C 64 1C JMP CLEAR 17CA 20 9E IE PSUB JSR 0UTSP 17C0 BD D9 17 LDA ex TABLE 17D0 20 A0 IE JSR 0UTCH 1703 A9 3A LDA # 3A 17D5 20 A0 IE JSR 0UTCH 17D8 60 RTS 17D9 43 TABLE 17DA 5A 17DB 49 17DC 44 1700 42 170E 20 17DF 56 17E0 4E 17E1 53 17E2 41 17E3 59 17E4 58 Enable TTY monitor routines* Save MPU registers Correct Program Counter address Car. ret. & line feed (KIM subr) Print contents of FA & FB (KIM) Point to end of lookup table Print lookup table & ' : ' Get saved register Print A as 2 hex characters (KIM) Move pointer Finished with registers? No: do another ' PREG * Yes: get status flags and save in temp Print lookup table & ASCII zero Flag to ASCII char conversion Print A as ASCII character (KIM) Finished? No: next flag Yes: print a space (KIM) and return control to KIM Print a space (KIM) Get ASCII char from table Print a character (KIM) ASCII colon Print a colon (KIM) ASCII C * Z " I • D " B " SPACE " V M N " S M A " Y M X * The KIM monitor routines for the TTY don't all execute correctly if the 'O' flag is set. Figure 5. Break Service Routine 134 INTERFACE ACE CIRCLE INQUIRY NO. 88 JUNE 1980 SOFTWARE SECTION r The All New In order to use this break service routine, it is necessary to store the starting address, 1780, in the IRQ vector location 17FE and 17FF of the KIM RAM. However, if an interrupt system using the IRQ is being operated, it is necessary to store the interrupt service routine starting address in the IRQ vector. Then include in the interrupt service routine a test of the B flag and a jump to 1 780 when it’s set. An example for implementing this appears in the 6502 Programming Manual. The documentation for this program appears in figure 5. The save registers part of the program is essentially the same as the SAVE routine at location 1C00 in the KIM monitor. The one difference is that the address stored into locations 00FA and 00FB is adjusted by subtracting 2 from the numbers stored when the Program Counter is pushed on the stack. That is necessary to make those registers point to the address of the breakpoint being serviced. (It seems the 6502 adds 2 to the Program Counter before it realizes that the BRK command is actually an interrupt.) The break service program also uses an unconventional return to the KIM monitor. The usual return address of 1 C4F causes the TTY to print the ‘KIM’ and the address of the break- point with ‘00’ on two extra lines. I considered this an unneces- sary waste of paper and time. After a bit of trial and error, I found that a jump to address 1 C64 eliminates this difficulty. In using the program I have found two distinct applications for it. The first is its use to test registers and flags to verify proper program operation or to locate a malfunction. The second use is the one I actually employ most often: I keep the service routine at location 1 780, and fill all unused RAM with BRKs (opcode 00). Then almost any mistake I make is immediately caught. Destroyed programs are virtually a thing of the past. 0000 A2 7F BS BF LDX # 7F Set pointer to END 0002 B5 10 MOVE LDA zX 10 Get byte to be moved 0004 90 80 17 STA 0X BRKSRV Store in 1780-17FF RAM 0007 CA DEX Decrement pointer 0008 10 F8 BPL MOVE Finished? No: do another 'MOVE' 000A A9 00 BRKFIL LDA # 00 Yes: clear A oooc EA NOP 000D 4C E5 17 JMP CLRRAM Jump to the moved BRKFIL program 0010 D8 BRKSRV First line of BRKSRV 0074 58 Last line of BRKSRV 0075 8D 00 16 CLRRAM STA 0 AL.AH Store 00 in RAM address AL, AH 0078 EE E6 17 INC 0 AL Next RAM address 007B 00 F8 BNE CLRRAM This page full? No: do 'CLRRAM' 0070 CE E7 17 DEC 0 AH Yes: next page 0080 10 F3 BPL CLRRAM Last page? No: do 'CLRRAM' 0082 4C 22 1C JMP RST Yes: jump to monitor 0085 00 Bytes to be moved to KIM RAM: 0086 00 0087 01 for the tape interface 0088 00 0089 00 008A 00 for the NMI vector 008B 1C 008C 4F for the RST vector 008D 1C 008E 80 for the IRQ vector 008F 17 EN0 Figure 6. Program to load break services and fill RAM with BRKs. The program of figure 6 is the one I use to load my break service routine and to fill RAM with BRKs. It’s very easy to use since the tape load routine returns with 0000, the start- ing address of this program. Just load the program from tape, depress the G key, and then the RUB OUT key. The RUB OUT key is necessary since this program destroys the information stored during initialization of the TTY, and there- fore must be re-initialized. The KIM-1 break service provides a useful routine that fits in a limited amount of memory. □ SYSTEM B/Q By VECTOR VECTOR GRAPHIC INC. With Powerful Accounting & Wordprocessing Yes, an unbeatable combination from Vector Graphic and Sunshine Computer. Here’s what is included: ■ Vector System B/Q with 64K ■ Qume Sprint 3 Letter-quality Printer (55 CPS) ■ Word Management Software ■ Peachtree Accounting Software ■ (GL, AR, AP, Inv., & Payroll) ■ Factory Assembly & Checkout ■ 90 Day Warranty One-stop system shopping is now available! All items are designed to operate together.. .nothing else is required. You’ll be able to... Speed Receivables Optimize Payables Flow Personalize Letters Send Direct Mailings Track Business Finances Reduce Inventory Costs And... Its all there and ready to go for One Low Price from Sunshine Computer. You are guaranteed to like our combination of pricing, delivery, and support. Sunshine Computer inc. 20710 South leopwood five.* Corson, Colifornio 90746 ( 213 ) 515-1736 V J JUNE 1980 CIRCLE INQUIRY NO. 87 INTERFACE ACE 135 SOFTWARE SECTION SOFTWARE REVIEW INTRODUCTION The availability of modern computers has changed our lives in several ways. One of these changes affects the way we prepare written documents. A business letter may be dic- tated to a secretary who will type the letter in its final form. Reports may be handled differently because they are longer. In this case, the author will prepare an outline followed by a handwritten rough draft. The next version will then be typed from the rough draft. If major changes are necessary, the report can be cut apart and taped back together in its new form. A boiler-plate sec- tion, describing the capabilities of the company, may be appended to the end of the report. If there are many changes, then the entire report may have to be retyped. COMPUTERIZED TEXT FORMATTING Report preparation is considerably simplified if a text-for- matting computer program is available. With this approach, the author’s handwritten draft is typed into a computer under control of the system editor. Format commands are embedded in the text at this time. A separate, text-formatting program is then invoked to generate the finished document. This final result appears at the line printer or is stored on disk as a separate file. Major rearrangement of the text is easily accomplished if the system editor has a block-move command. The report never has to be retyped. One text formatter, the Electric Pencil, was reviewed in the August 1978 issue of INTERFACE AGE. This program combines an editor of sorts with a text formatter. It cannot, however, be used with a serial video console since it requires a memory-mapped video screen. There are several text formatters available for the CP/M operating system. One of these is Word Star by Micropro. Another formatter, Tex (reviewed in the May 1979 issue of INTERFACE AGE) is provided by Digital Research. A similar text formatter program, Textwriter, is available from Organic Software of Livermore, CA. The same program is available from Micropro under the name of Tex-Writer. There are separate versions available to use on CP/M, Micropolis and North Star operating systems. A TRS-80 CP/M version is also provided. At least 32K bytes of memory should be available. Textwriter is similar to Tex. Both can convert an existing work file that is stored on disk into a finished file. The work file is previously prepared with the system editor. Textwriter can operate on either of two file formats. In the standard for- mat, each line of the work file is terminated with a carriage- return, line-feed combination. But Textwriter can also format files that were prepared with Electric Pencil. The finished file can be printed during the formatting process or it can be saved as a separate disk file to be printed at a later time. THE WORK FILE The work file is created from the rough-draft manuscript by using the system editor. The default file-name extension is TEX for the Digital Research Tex formatter. But since there is no default extension name for Textwriter, one might choose the name TXT. This will be an easy way to distinguish Tex work files from Textwriter work files. This distinction is necessary since the two programs use different formatting commands. The text is entered directly into the work file without regard to form. If a word is too long to fit at the end of a line, it is placed on the next line. It is not split with a hyphen. Textwriter accepts about 50 formatting commands. Some of these are automatically set to their default values, but they may be redefined within the text. The general commands for text formatters typically begin with a decimal point. Text- writer is different in that the commands begin with an excla- 136 INTERFACE ACE JUNE 1980 SOFTWARE SECTION SOFTWARE REVIEW mation point. If you don’t like the exclamation point, how- ever, you can change it to something else with the COM- CHAR command. The statement: ICOMCHAR “ ” will change the command character from the exclamation point to a decimal point. There will generally be a block of formatting commands at the top of the work file that are used to set the desired values. The manuscript for this present article was formatted with Textwriter. The following commands were given at the beginning of the work file: !margins 10 64 [head 8 [foot 5 [ignore Feb 1 1 ,80 !tty [justify [pagenum 1 3 “B’ [skip 5 [center Textwriter An 8080/Z-80 Text- Review by Alan R. M Software Editor [spacing 2 [skip 3 INTRODUCTION [par 3 0 <8 lines at top of page> <5 lines at bottom of page> Output Formatter iller Additional formatting commands are included within the text. Some of the more useful commands are: [par [literal [pageifnot 6 [skip 2 [spacing 1 [spacing 2 [left 5 [right 5 [resetmar [footnote !* Start a new paragraph Use next section as is Start a new page if 6 or less lines are left Skip 2 lines Single space the text Double space the text Indent left margin 5 spaces Indent right margin 5 spaces Reset margin to regular width Make a footnote of next section A one-line comment LONG REPORTS ASCII files that are larger than about 30K bytes are cumber- some to deal with. This is especially true if the system editor is not disk oriented, because, in this case, the entire file must be loaded into memory at one time. Editors like ED, Word-Master, EDIT-80, or ED-80 are disk oriented. Consequently, a small portion of the file can be copied from disk into memory for editing. Even with this type of editor, it is much more con- venient to edit a file if it can be entirely loaded into memory. The work file for a long report or even one chapter of a book can easily exceed 30K bytes. This size is too large to fit into memory. The solution, in this case, is simple if Text- writer is available. The work file is generated as a sequence of conveniently sized disk files. The last line of each file con- tains a CHAIN command which gives the name of the next file in the series. For example, suppose that chapter 4 of a book were broken up into two parts called: CHAPT4A.TXT and CHAPT4B.TXT The last line of the file CHAPT4A.TXT would be: [CHAIN “CHAPT4B.TXT” Chapter 4 can be formatted into a single disk file with the system command: A>TW LST : = CHAP4A.TXT The finished file will appear at the line printer (LST:) and will include both parts of chapter 4. When the formatter reaches the end of the file CHAPT4A.TXT, the chain command will direct it to the file CHAPT4B.TXT. The combined finish file can alternately be formed into a disk file called CHAP4.PRN by giving the command: A>TW CHAP4.PRN = CHAP4A.TXT Notice that both the destination filename and the source file- name must be given in the command line. Furthermore, both filename extensions must be given. EMBEDDED COMMANDS Most of the Textwriter commands begin with an exclama- tion point and appeal on separate lines from the text. In these cases there is little chance that commands will be confused with text. There are, However, three Textwriter commands that could cause problems. These commands do not utilize the exclamation point. Furthermore, they are embedded within the regular text rather than being on a separate line. One of the embedded commands is used to underline a portion of text. The particular section of the work file is enclosed with a pair of braces. The finished document will contain the desired underlining, not the original braces. If brace symbols are desired in the final text, then the underline symbols will have to be changed. This is performed with the UNDERLINE command. After the command: [UNDERLINE “[]” appears, then the bracket pairs will define the text to be underlined instead of the braces. More importantly, the braces can now appear in the final text. A similar situation occurs with the tilde and the at-sign. The tilde is used to indicate a space between two words that must appear on the same line. Textwriter might break up the section: February 28, 1 980 so that the month and day appear at the end of one line and the year at the beginning of the next. Using a tilde instead of the spaces will guarantee that the date will be printed entirely on the same line: February 28, 1980 The at-sign is used for non-standard tab stops. Both the tilde and the at-sign cannot appear in the final text unless the corresponding commands are redefined. For example, the statements: [SPACEBAR “\” [TABCHAR will change the space character to a backslash and the tab character to an ampersand. A powerful feature of Textwriter is the ability to input data from the console or from a separate disk file during the for- matting process. With this feature, a standard business letter JUNE 1980 INTERFACE AGE 137 SAVE PRODUCTS^OR TRS-80 The largest family of disk drives from the largest supplier, drives come complete with power supply and cabinet. MTI-40 Disk Drive. 35 & 40 track $369 TF-1 Pertec FD200. 40 track, use both sides $389 TF-3 Shugart SA400, 35 track, same as tandy $389 TF-5 MPI B51, 40 track $379 TF-70 Micropolis. 77 track with 195K of storage $639 TDH-1 Dual sided drive, 35 track $499 Max Disk 2: 10 Megabyte (fixed) Winchester Technology $5349 i NEW PRODUCTS 16K Memory $66 Modem $179 Expansion Interface 32K $499 AC Isolator $47.95 PRINTERS DP800 Anadex, 80 column, 112cps $949 LP779 Centronics 779 $1099 LP730 Centronics 730 $950 LP700 Centronics 700 $1395 LP701 Centronics 701 $1759 LP702 Centronics 702 $1995 SPW-1 Spinwriter-NEC $2525 NEW! LINE PRINTER AniDM Pnnter 80 ' 132 co,< 9 ra Phics 60 LPM with tractors $599 * DRIVES FOR ANY MICROCOMPUTER * Does not include power supply & cabinet. MOD II DISK DRIVES NOW AVAILABLE Perfec FD200 Pertec FD250 (dual head) Shugart SA400 (unused) Shugart SA800 MPI B52 $349 B51 $282 $399 $286 $479 $279 SOFTWARE Disk Drive Motor Speed Test $19.95 New DOS+ with over 200 modifications and corrections to TRS-DOS $99 New DO$+ 40 track $110 AJA Word Processor $75 AJA Business Program $250 Racet Infinite Basic $49.95 Disk Drive Alignment Program $109 Radix Data Base Program $99.95 Electric Pencil $150 y ALL PRICES CASH DISCOUNTED. FREIGHT FOB/FACTORY Eft /HlCROCO/MPUER TECHNOLOGY INCORPORATED pparat, Inc 3304 W. MacArthur Santa Ana, CA 92704 (714) 979-9923 CIRCLE INQUIRY NO. 77 7310 E. Princeton Ave. Denver, CO 80222 (303) 758-7275 CIRCLE INQUIRY NO. 72 SOFTWARE REVIEW can be run many times. Each time the letter is printed, the name and address of a different recipient can be read from the system console or from a separate disk file. TABLE OF CONTENTS Long reports and books need a table of contents. The Textwriter command CONTENTS is used for this purpose. It operates in a curious way, however. The title for each section or subsection must be entered twice, once for the actual en- try, and once for the table entry. For example, the command pair might look like this: [SKIP [CONTENTS 2 “3.4 Passing Data on the Stack” 3.4 Passing Data on the Stack !PAR The number 2 in the CONTENTS line causes the subhead- ing to be indented two spaces. The necessary duplication of the heading can be easily accomplished with the Q-buffer command of the Word- Master editor. At the end of the report, the CONTENTS command is given without arguments to force printing of the actual table of contents. The corresponding chapter num- bers, if any, and the page numbers are printed opposite the given headings. A row of dots connects the heading to the page number. GENERATION OF AN INDEX The preparation of an index for a book or a long report can be tedious. The global-search command of the system editor can be used on the finished file, if it was saved on disk during the formatting step. But a better way is to use the INDEX command of Textwriter. Each index entry or subentry is de- fined with a command such as: [INDEX “stack” An index entry can be followed by a comma and a subentry: INDEX “flag, carry” INDEX “flag, zero” INDEX “flag, parity” The main entry is only given once in the resulting index: flag, carry, 2-3 parity, 2-5 zero, 2-4, 4-5 Then, a final INDEX command near the end of the docu- ment will product the complete index. CONCLUSION This reviewer has just finished a book on assembly lan- guage programming. The entire manuscript was written and edited with Word-Master and formatted with Textwriter. The task was made easier by some of the unique features of Text- writer. In particular, the book’s author and title were printed on the top line of each page. The chapter number or appen- dix letter and the page number were printed at the bottom of each page. The CHAIN command was used to combine the work files of longer chapters into single finished chapters. One task has not yet been completed. This is the prepara- tion of an index. I expect that the INDEX command of Text- writer will greatly simplify this step.D 138 INTERFACE ACE JUNE 1980 this publication is available in mteroform University M/iitttIMh 4 Kl w:m tdt to W •W ] Microfilms inn taii r :>u International jvfd h t»l «?!• I Please send me additional information. University Microfilms International Name Institution Street City State. -Zip 300 North Zeeb Road Dept. P.R. Ann Arbor, Ml 48106 U.S.A. 18 Bedford Row Dept. P.R. London, WC1R 4EJ England ? EDI START INPUT * L F ILE NAME*EC2 *W OHG 8000H ORR 2C00H C IN EQU 201 OH DOS EQU 2028H LX I SP» 9000H XRA A STA POS TEST* CALL CIN CPI 3 JZ DOS CALL PRINT JMP TEST BASIC: MOV A#E TABLE EQU 8200H LENGTH SET 208 PKINT « PUSH H PUSH D PUSH B LX I H# TABLE ANI 7FH CPI ODH JZ RETURN CPI 20H JC EXIT JZ SPACE MV I C * LENGTH TLOOP: CMP M I NX H JZ MATCH DCR C JNZ TLOOP JMP EXIT MATCH! LDA CURNT MOV B* A CALL LIFT CALL INDEX PLOOPl MOV 4.M ANI 40H CNZ LIFT MOV C » M CALL MOVE CALL DROP I NX H MOV A»M RAL JC PLOOP MOV A.B STA CURNT EXIT! POP B POP D POP H RET I SPACE* LX I H.SPCS INR M JMP EXIT l INDEX! XCHG LX! H.SPCS MOV C.M MV I M.O I NX H MOV A.M ADD C INR A MOV M.A XCHG MV I E.203Q MOV A.C CPI l CNC HPOS MOV A.B ANI 70 ORI 3 50Q MOV C.A MOV A.M ANI 1 OOU JNZ INSXP MOV A.C ANI 370Q MOV C.A INSKPl CALL MOVE MOV A.B ANI 207G MOV B.A MOV A.M ANI 40H CZ DROP RET > LIFT! MV I A. BOH OUT 24 ORA P MOV B.A MV I A. 20 CALL DELAV RET i THE DUST WRITER Continued from Page 68 PROGRAM LISTING 140 INTERFACE ACE JUNE 1980 DELAY I PUSH B D LOOP 1 t MV I C * 80 D LOOPS » DCk C JNZ DL00P2 DCR A JNZ DL00P1 POP B rtET MOVE* s DROP: MOVEXt REVX: MXLOPt MOV A *B SUP c AN! 77Q RZ CALL MOV EX CALL MOVEY CALL MOVEX CALL MOVEY CALL MOVEX CALL MOVEY CALL CNTY CALL MOVEX CALL CN TX JMP MOVE XhA A OUl 24 OKA B HP MOV B * 4 MV I A * 0 CALL DELAY RET MOV A *C HAL ANI 80H MOV E# A MOV A *B ANI 70Q MOV D* A MOV A»C ANI 700 SUB D RZ JC RE VX INK E INK E INK e MV I D » 2 MOV A * E OUT 24 MV I A * 20 CALL DELAY DCh D JNZ MXLOP RET MOVEY: MOV A # R ANI 7 MOV D* A MOV A *C ANI 7 SUB D RZ MOV A * E X REVY ADI 8 REVY l ADI 4 ANI 3740 MOV E * A OUT 24 MV I A* 14 CALL DELAY RET » CNTXt MOV A * E C NSKP : ANI 3 RZ DCh A MV I A* -8 UZ CNSKP MV I A* 8 ADD B ; CNTYI MOV B* A RET MOV A* E CNYSKP* ANI 12 KZ SUI 4 MV I A * - 1 UZ CNYSKP MV I A * 1 ADD b • MOV P * A RET • RETURN* LDA POS : CPI i JC EXIT MV I E * 20 1 0 CALL HPOS OUI 24 STA POS JMP EXIT HPOSt MOV D* A H LOOP 1 t MV I C * 40 H LOOPS 1 MOV A* E OUT 24 MV I A* 18 CALL DELAY DCR C JNZ HL00P2 DCR D JNZ HL00P1 RET 5 SPCSt DB 0 POS* DB 0 C UHNT * DB 0 *£ END ?EDT START INPUT * L FILE NAME»TBL *W ORG 8200H ORR 2E00H TABLE: DB M § M * 3240*2220* 23 20 DB 2330*2430*2450*2360 DB 21 60*2050*2010*2100 DB 2400 DB "A"#204Q*22*Q DB 24 4Q *2400*3020*2420 DB #, B M *20*0*2360*2450 DB 2430*2030*2430*2410 DB 2300*2000 DB '*C ,# *34 50 *2360*2160 DB 2050*2010*2100*2300 DB 24 IQ DB •'D'* * 2060 #2360 #2450 DB 2410*2300*2000 DB M E M * 3400*2000*2060 DB 2460*3330*2030 DB M F M * 206 Q *2460*3330 DB 2030 DB M G M * 3320*2420*2400 DB 2100*2010*2050*2160 DB 2460 DB "H M * 20 *Q * 3460 * 240Q DB 3030*2430 DB M I M *3100*2 300*3200 DB 2260*3160*23*0 DP '*U M *3010*2100*2300 DP 24 l Q > 24 6Q DB *• K M * 2060*3460* 2 l 3Q DP 240Q DP M L M *3400 * 200 Q * 20 6Q DB M M M * 20 6Q *2240*2230 DB 2240*2460*2400 DP M N M * 2060*2050 *24 10 DB 2400*2460 DB M 0 M *3010*2050*2160 DB 2360*2450*2410*2300 DB 2100*2010 DB M P M * 2060 *2360*24 50 DB 2440*2330*2030 DB M G M * 3010*2050*2160 DB 2360*2450*2420*2200 DB 2100*2010*3220*2400 DB M h M * 2060 *2360*24 50 DB 2440*2330*2030*2130 DB 240Q DB M S M * 30 10*2100* 2300 DB 241Q*242Q*233Q*213Q DB 2040*2050*21*0*2360 DB 245Q DB '*! M * 3200 *2260*3060 DB 2460 ; ’ DB , *U" *3060*2010*2100 DB 2300 *2410*2460 DB M V M * 3060*2020*22 00 DB 2420*2460 DB "W" * 30*0*2000*2220 DB 2230*2220*2400*2460 DB VX** * 20 IQ# 2450* 24 60 DB 3060*2050*2410*2400 DB "Y"* 3200*2230*2050 DB 206Q* 3460*2450*2230 DB M Z ,# *3060*24*0*2450 DB 2010*2000*2400 DB 0 END JUNE 1980 INTERFACE AGE 141 MICRO-MARKET MICRO-MARKET ADS SELL YOUR PRODUCTS A new format has been estab- lished for the Micro-Market sec- tion. All ads are now 2 inches wide by 3 inches deep. Price is $200. Submit ads with check or money order to: INTERFACE AGE Magazine Micro-Market Ads P.O. Box 1234 Cerritos, CA 90701 HOW CAN I GROW B TREES? ORDER MICRO B +™ • Get fast insertion, retrieval and deletion of index entries. • Never need to reorganize your index; no matter how often it is updated. MICRO B+ SOURCE CODE $195 MICRO B + DEMO DISK $25 SHIPPING $2 USA. 15 FOREIGN Available in 8” format for CBASIC-II and MICROSOFT Basic Version 5. 2606 Johnson Drive La|Q ( A II Columbia, Mo 65201 lAIn VVlfl 314-445-3304 Check/ VISA /Mastercharge Moonshadow Text Formatter for UCSD Pascal™ Systems The UCSD PascalTM system contains a screen-oriented text editor which is convenient, but which is not suited to word processing. It can- not underline, paginate automatically, or perform other essential text-processing functions. The Moonshadow Text Formatter (MTF) from Merri- mack Systems solves this problem. With the Moonshadow Text Formatter, docu- ments produced with the screen editor are post- processed to provide these missing functions. It takes standard Pascal text files, operates on them, and sends fully formatted text output to the console display, a printer, or a disk file Moonshadow Text Formatter provides, in addi- tion to a full range of formatting functions-, ad- vanced features including the combination of files into one document, variables in text (for form letters), and output character translation. The Moonshadow Text Formatter is written in UCSD PascalTM, and is available for North Star Apple II, LSI-II, and 8080/Z80 systems with IBM Format 8’ floppy disks. All this for $125.00 from Merrimack Systems POB 5218 Redwood City, CA 94063 (415) 365-6281 California residents should include 6% sales tax. Also available: North Star Pascal personaliza- tion for SOL/SOLOS — just transfer three files and you’re up with Pascal $25.00 Power Supplies INPUT: t1Sv*c43 83hz OUTPUT: S vdc 0 25 amps REGULATION: 0.1% *5 mV NL FL. £ 0.1% * $mV lor 10% Inpul change RIPPLE: 2mV RMS mat.. 20 mV STABILITY: Typically 10 m V lot 5 volts @ 25 amps SURPLUS UNITS IN LIKE NEW CONDITION REMOTE SENSING. REMOTE VOLTAGE ADJUSTMENT. OVERLOAD PROTECTION and OVERVOLTAGE PROTECTION ALSO AVAILABLE IN 12 VDC «> 13 AMPS *79.00 p*f unit 79." per unit HOUSE MARKED DARLINGTON TRANSISTOR SPtCIFY s AMPS S5 WATTS 22/44 EDGEBOARD CONNECTOR TIN SOLDERTAIL .156” x .200" LARGE QUANTITIES AVAILABLE SI. 35 each 10 for $12.50 1 V, AMP FULL WAVE BRIDGE RECTIFIER REED RELAYS D.P.S.T. 1200 ohm coll- ALL CLC