Byte Magazine Volume 03 Number 06 - Natural Language

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

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

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

Created with abbyy2epub (v.1.7.0)

READY for BUSINESS

We've got it all together—the cost effectiveness and reliability of our 6800 computer systemwith a high capacity 1.2 megabyte floppy disk system. . . PLUS—an outstanding new DOSand file management system.

1 MEGABYTE DISK SYSTEM type contro||er and doub|e sjded ^ gjve ^

DMAF1 introduces a new level of capability to system speed of data transfer unobtainab|e with

small computer systems. This disk system fea- smaller drivestures two standard size floppy disk drives using

the new double sided disk and two heads per OPERATING SYSTEM

drive. Usable storage space of over 600 kilobytes To compliment this outstanding hardware weper drive, giving a total of over 1.0 megabyte of are suPP'ving equally superior software. Thestorage on line at all times. Ideal for small busi- disk °Perating system and file management sys-ness applications, or for personal "super" sys- tem is called FLEX. It is one of the most flex-terns. ible and complete DOS's available for small sys-tems, but just as important; it is easy to use.No one can match the variety of compatible

DMA CONTROLLER peripherals offered by Southwest TechnicalThe controller occupies one main memory slot Products for the SS-50 bus and the 6800 corn-in an SS-50 bus and uses the Motorola MC-6844 puter system. Now more than ever there is noDMA controller. The combination of a DMA reason to settle for less.

DMAF1 Disk System (assembled) $2,095.00

DMAF1 Disk System (kit) $2,000.00

68/2 Computer with 40K of memory (assembled) . .$1,195.00

SOUTHWEST TECHNICAL PRODUCTS CORPORATION

219 W. RHAPSODY

SAN ANTONIO, TEXAS 78216

Circle 350 on inquiry card.

Model Z-2

Up to 512K of RAM/ROM

Model Z-2D

One or two disks

Up to 512K of RAM/ROM

Up to 184K of disk

System Two

Dual disk

Up to 512K of RAM/ROM

Up to 184K of disk

Fill your computer needs

with the industry's

most professional microcomputers

#1 IN RELIABILITY

When you choose Cromemco youget not only the industry's finestmicrocomputers but also the indus-try's widest microcomputer selec-tion.

What's more, you get a computerfrom the manufacturer that compu-ter dealers rate #1 in product re-liability.*

Your range of choice includesour advanced System Three withup to four 8" disk drives. Or choosefrom the System Two and Z-2D with5" drives. Then for ROM-based workthere's the Z2. Each of these com-puters further offers up to Va mega-byte of RAM (or ROM).

We say these are the industry'smost professional microcomputersbecause they have outstanding fea-tures like these:

• Z-80A microprocessor — oper-ates at 250 nanosecond cycletime — nearly twice the speed ofmost others.

Up to 512 kilobytes of RAM and1 megabyte of disk storage

•Rated in The 1977 Computer StoreSurvey by Image Resources, WestlakeVillage, CA.

System Three

Two to four disks

Up to 512K of RAM/ROM

Up to 1 megabyte of disk

21 card slots to allow for un-paralleled system expansion us-ing industry-standard S-100cards.

S-100 bus — don't overlook howimportant this is. It has the in-dustry's widest support and Cro-memco has professionally imple-mented -it in a fully-shieldeddesign.

n

• Cromemco card support of morethan a dozen circuit cards forprocess control, business sys-tems, and data acquisition in-cluding cards for A-D and D-Aconversion, for interfacing daisy-wheel or dot-matrix printers, evena card for programming PROMs.

• The industry's most professionalsoftware support, including FOR-TRAN IV, 16K Disk-ExtendedBASIC, Z-80 Macro Assembler,Cromemco Multi-User OperatingSystem — and more coming.

• Rugged, professional all-metalconstruction for rack (or benchor floor cabinet) mounting. Cab-inets available.

FOR TODAY AND TOMORROW

Cromemco computers will meetyour needs now and in the futurebecause of their unquestioned tech-nical leadership, professionalismand enormous expandability.

See them today at your dealer.

There's no substitute for gettingthe best.

Circle 80 on inquiry card.

Cromemco

incorporated^^^^^B Specialists in computers and peripherals

' 280 BERNARDO AVE., MOUNTAIN VIEW, CA 940/(0 • (415) 964-7400

see nextpage

D

BYTE |unc 1978

SEE YOUR LOCAL DEALER

Anchorage, AK 99502ALASKA DIVERSIFIED DIGITAL1700 Weil Holeco Avenue(907) 277-6312

Huntivitle.AL 35805COMPUTERLAND OF HUNTSVILLE3020 Unlseisiiy Drive, N.W.(205)539-1200

•Link Rock, AR 72206COMPUTER PRODUCTS UNLIMITED2412 South Broadway[501)371-0449

Phoenix, AZ 85029BYTE SHOP PHOENIXt2654 North 28ih Drive(602) 942-7300

Phoenix, AZ 85021COMPUTER RESEARCH CORP.2225 W. Mm. View Raid - No. 6(602)943-8719

Phoenix, AZ S5029COMPUTER WORLD2230 Weil Larkspur(602) 943-8925

• Phoenix, AZ 85281BYTE SHOPS OF ARIZONA24 Weil Camelbick(602) 967-1421

Tucson, AZ 85716BYTE SHOP TUCSON

2612 Elll Broadway

Berkeley. C A 94703BYTE SHOP OF BERKELEY1514 Unrverilly Avenue(415)845-6366

• Cmon.CA 90746

SUNSHINE COMPUTER COMPANY20710 Snulh Leapwood Avenue(213)327-2118

• Cltrui Heights, CA 95610BYTE SHOP SACRAMENTO

6041 Greenback Line(916J96I-BYTE

El Cerrilo, CA 94530COMPUTERLAND EL CERRITO11074 Sin Pablo Avenue(415) 233-5010

• Fountain Valley, CA 92708ADVENTURES IN COMPUTING8756 Warner Avenue

(714) 848-8388

Frcmo.CA 93703BYTE SHOP OF FRESNO3139 E. McKlnley Avenue(209) 485-2417

Hay ward, CA* 94542COMPUTERLAND OF HAYWARD22634 Foothill Boulevard(415) 538-8080

Huntington Beach. CA 92647ALGORITHM PERSONAL COMPUTERS7561 Rhine Drive(714) 751-8080

Ingle wood, CA 90302COMPUTERLAND OF W. LOS ANGELES

G840 Lj Cleneiw Boulevard(213) 776-80S0

Lawndale, CA 92060BYTE SHOP OF LAWNDALE6508 Hawlhurne Boulevard(213) 371-2421

•Loomli.CA 95650KINGMONT ENTERPRISES. INC.9900 King Road(916) 988-8189

Lot Angeles, CA 90025AMERICAN RECORDER COMPANY1655 Sawlcllc Boulevard(213) 477-2063

Menlo Park, CA 94025COMPUTADATA PROCESSING SERVICE2225 Sharon Road - No. 224(415)6924)525

Mluion Vlejo, CA 92630COMPUTERLAND SADDLEBACK VLY24001 Via Fabrlcame - No. 904(714) 77041131

• Mountain View, CA 94040BYTE OF MT. VIEW1063 W. El Camlno Real(415)969-5464

Orange, CA 92667COMPUTER MART633-8 Wen Katella Boulevard(714)633-1222

Palo Alto, CA 94306BYTE SHOP PALO ALTO2227 El Carnino Real(415)327-8080

Palo Alto. CA 94301MICROTECH EXPORTS

912 Cowper Streel(415) 328-1712

Paiadena,CA91101BYTE SHOP PASADENA496 South Lake Avenue(213)684-3311

Sacramento,CA 35816MICROCOMPUTER APPLICATIONS SYS2322 Capital Avenue(916)433-4944

San Oiego, CA 92211COMPUTERLAND OF SAN DIEGO4233 Convoy Street(714)560-9912

San Diego, CA 92111THE COMPUTER CENTER8205 Ronton Road(714) 292-5302

San Francisco. CA 94118

THE NETWORK:

49SThird Avenue- No, 8

(415)221-1112

•San Francisco, CA 94103THE COMPUTER STORE OF S.F.1093 Million Street(415)431-0640

San Francisco, CA 94105COMPUTERLAND OF S.F.117 Fremont Street

San (nse.CA 95124BYTE SHOP Hi of SAN IOSE2626 Union Avenue(408) 377-1685

San|ose,CA"95123THE COMPUTER ROOM124-HBIoiiom Hill Road(408) 226-8383

San Jose, CA 95132PLANE DATA WORKS

3584 MintoCoutt(408) 262-6566

• San Mateo, CA 94401COMPUTER TERMINAL309 S. San Mateo Drive(415)347-9894

• Santa Ana, CA 92705

ADVANCED MICROCOMPU 1 ER PROD.

1301-UEailEdinger

(714)558-8813

Santa Clara, CA 950S1

THE BYTE SHOP OF SANTA CLARA

3400 El Camino Real(408) 2494221

Santa Monica. CA 904O1THE COMPUTER STORE820 Broadway(213)451-0713

• Sunnyvale. CA 94086RECREATIONAL COMPUTER CENTER1324 South Mary Avenue

(408) 732-3108

Tuitin, CA 92680COMPUTERLAND OF TUSTIN104 Wen Flnl Street(714) 5444)542

•Van Nuyi.CA 91411COMPUTER COMPONENTS

5848 Seputveda Boulevard

Walnut Creek, CA 94596

BYTE SHOP COMPUTERS OF DIABLO VLY

2939 N. Main Street

(415) 933-6252

Enitlewood,CO 80110

BYTE SHOP OF ARAPAHO COUNTY

3463 South Acoma Street

(303) 761-6322

Fairfield, CT 06430COMPUTERLAND OF FAIRFIELD2475 Black Rock Turnpike(203) 374-2227

Windsor Lucki, CT 06096THE COMPUTER STORE

63 South Main Street(203) 627-0188

Neward. DE 19711

COMPUTERLAND OF NEW CASTLE CITYAitro Shopping Center, Kirkwood Highway(302) 738-9659

Ft. Lauderdale, FL 33312COMPUTERS FOR YOU. INC.3608 W. Broward Blvd.

(305) 581-8945

Ft. Lauderdale, FL 33334BYTE OF FT. LAUDERDALE1044 E. Oakljnd Park Blvd.(305)561-2983

• Ft. Meyers, FL 33901

MICRO COMPUTER SYSTEMS, INC.12800 US. 41 5outh(813)481-3376

Plantation, FL 33317COMPUTERAGE1400 S.W. 70th Avenue(305) 791-8080

• Tampa, FL 33609

MICRO COMPUTER SYSTEMS144 S. Dale Mabry Avenue(813)8794225

•Atlanta, GA 30340ATLANTA COMPUTER MART5091-8 InjN.nl Highway(404) 455-0647

Marietta. GA 30060EDUCATIONAL DATA SERVICES79 Oxford Road

•Haiku, Maui, HI 96708CAPACITY, INC.P.O. Box A(BOB) 575-2930

•Honolulu, HI 4B103COMPACT COMPUTERSP.O.Box 10096(80S) 373-2751

Kailua.Oahu, HI 96734MICROCOMPUTER ENTERPRISES1450 Mokulua Drive

(BOB) 261-3281

Arlington Heights, IL 60004COMPUTERLAND ARLINGTON HTS.50 East Rand Road(312)255-6488

Champaign, IL 618200YTE SHOP CHAMPAIGN1602 S.Nell Street(217)352-2323

Chicago, IL 60632BRONSON * BRATTON, INC5161 S. Millard Avenue(312)735-6200

Lille, IL 60532

COMPUTER S, CONTROL AFFILIATE

4315 Aulea-No. 401

(312) 690-5221

Lombard, IL 60148

MIDWEST MICROCOMPU! ERS, INC.

708 South Main Streel

(312)495-9889

Napervillc, IL 60540ILLINI MICROCOMPUTERS612 Eait Ogdcn Avenue(312)420-8813

Nllei. IL60648COMPUTERLAND NILES9511 N. Milwaukee Avenue[312)967-1714

Oak Brook, IL60521

MICRO PLAZA, INC.

600 Enterprise Drive, Suite 203

(312)832*337

Oak Lawn, IL 60453COMPUTERLAND OF OAK LAWN10935 Smith Cltrro Avenue[312)422.8080

Rockfnrd, IL 61101

IMPERIAL COMPUTER SYSTEMS

2105 -23rd Avenue

(815)226-8200

Scltaumhiirg.il. 60195DATA DOMAIN SCHAUMBURG1612 Eait Algonquin Road(312)397-8700

• Bloomlngion, IN 47401DATA DOMAIN

406 South College Avenue(812)334-3607

•Fort Wayne, IN 46805DATA DOMAIN OF FORT WAYNE2805 E.IM Stale Boulevard(219)484-7611

Indianapolis, IN 46268

DATA DOMAIN OF INDIANAPOLIS

7027 Michigan Road

(317)251-3139

Wen Lafayette, IN 47906

DATA DOMAIN OF WEST LAFAYETTE

219 Wen Columbia(317)743-3951

Mission. K5 66202COMPUTER CENTER5H1S Johnson Drive(913) 432-2983

OveiUndPatx.KS 66206

PERSONAL COMPUTER CENTER, INC.

3819 W95ih Street

(913)649-5942

Lexington, KY «05Q1

DATA DOMAIN OF LEXINGTON

506-1/2 Euclid Avenue(606) 233-3346

Louisville, KY 40222COMPUTERLAND OF LOUISVILLE813-B Lyndon Lane(502) 425-8308

Louisville, KY 40220

DATA DOMAIN OF LOUISVILLE

302S Hunslnger Lane

(502) 456-5242

Louisville, KY 40206PRAGMATECH2310Mellwond Avenue(502)895-1230

• Burlington, MA 01803THE COMPUTER STORE1211 Cambridge Streel(617) 272-8770

College Park.'MO 20740INTELLIGENT BUSINESS MACHINES7338 Baltimore, Avenue, Suite 200(301) 779-7998

■Pilteiville.MD 212QSMODULAR SYSTEMS. INC.

4005 Seven Mile Lane(301)4844)322

•Rockville, MD20B52COMPUTER WORKSHOP1776 Ljsi Jefferson(301)468-0463

Rockville, Ml) 20H55COMPUTERLAND OF GAITHERSBURG16065 Frederick Road, Route 355(301)948-7676

Silver Spring, MD 20901CAM ENGINEERING, INC,9318 Wonh Avenue(301)589-3779

•Towinn.MD 21204COMPUTERS ETC,13-A Allegheny Avenue(301] 296.0520

Ann Aibor,MI4BI04COMPUMART, INC.1250 Nntlh Main Street(313) 994-4445

AnnArbor,MI4BI04THE COMPUTER STORE310Easi Washington(313)995-7616

Ann Arbor, Ml 48104

UNITED MICROSYSTEMS CORP.

2601 Souih State Street(313)668-6806

•BenlenSpringi, Ml 49103THE ABACUS

Route No. I, Box !93.(Nilei Avenue)(616)429-3034

Grand Rapidi. Ml 49508JEPSAN,GROUP K4706 MmrrJiigsl.le Drive, S.E.(616) 698-9057

Royal Oak, Ml 48073

COMPUTER MART OF ROYAL OAK1800West M M.i. !■:...m(313)576-0900

Edina.MN 5S435CDMPUfl.K DiPflT.INC.3515 W«t 70ihSne«i(612)927-5601

Chesterfield, MO 63017COMPUTER SYSTEMS CTR ST. LOUIS13461 Olive Boulevard(314)576-5020

Nashua, Nil 03060COMPUTLKl AND OF NASHUA419 Ambtrit(603) 889-5238

Hoboken, NJ 07030HOBOKCN COMPUI ER WORKSNo 21) Hudson Place(201)420-1644

•Iwlln.NJ 08830COMPUTER MART OF NEW JERSEY501 Route No. 27(201) 283-0600

Morrlstowri, N| 07960COMPUTERLAND OF MORRISTOWN2 De Hart Street(201) 539-4077

Albuquerque. NM 87110THE COMPUTER SHACK

3120 San Mateo, N.E.(505) 883-8282

•DENOTES SYSTEM THREE'DEALER

Reno, NV 89502BYTE SHOP OF RENO4104 KictikeLane(702) 826-8080

Buffalo, NY 14150COMPUTERLAND OF BUFFALOt612 Niagara Falls Boulevard(716)8364)511

De Wilt, NY 13214COMPUTER ENTERPRISES3470 Erie Boulevard East(315)446-1284

• Buffalo, NY 14226

CORSON COMPUTER CORP., INC.3834 Main Street(716)B32-0662

•Hollls.NY 11423SYNCHROSOUND ENTERPRISES193-25 Jamaica, Avenue(212)468-7067

Ithaca, NY 14850COMPUTERLAND OF ITHACA225 Etmlra Road(607) 2774888

New York City, NY 10016BYTE SHOP EAST130 E. 40th Street(212)8894204

Rochester, NY 14609COMPUTER HOUSE, INC.721 Atlantic Avenue(716) 654-9238

•Cincinnati,OH 45409DATA DOMAIN OF CINCINNATI7694 Camargo Road (Madiera)(513)561-6733

Columbus, OH 43201

MIDWESTERN DIGITAL ELECTRONICS

BO Wesi Lane Avenue, Suilc 1)

(614) 294-2991

•Dayton, OH 45409DATA DOMAIN OF DAYTON1932 Brown Street(513) 223-2348

Kent. OH 44240OHIO MICRO SYSTEMS233 South Water Streel(216)678-5202

Mayfield Heights, OH 44124COMPUTERLAND OF CLEVELAND EAST1288 Som Center Road(216)461.1200

Oklahoma City, OK 73106HIGH TECHNOLOGY1611 Northwest 23rd Street(405) 528-8008

Beaver ton OR 97005

BYTE SHOP OF 8EAVERTON

3482 S.W. Cedar Hilii Boulevard

(503)644-2687

Eugene. OR 97401REAL OREGON COMPUTER CO.205 West Tenth Streel, P.O. Box 52(503) 484-1040

• Tualatin, OR 97062CREATIVE SYSTEMS8101 S.W. Nybcrg Road(503) 638-8406

Huntington Valley. PA 19006MARKETLINE SYSTEMS, INC.2337 Philmonl Avenue(215) 947-6670

King of Prussia, PA 19406COMPUTER MART OF PENNSYLVANIA550 De Kalb Pike (Route 202)[215)265-2580

Pituburgh.PA 15237ELECTRONICS PLACE7250 McNlght Road

Warwick, Rl 02886COMPUTER POWER, INC.1800 Posl Road(401) 7384477

• Columbia, SC 29205BYTE SHOP OF COLUMBIA

2018 Green Street(803) 771-7824

• Nashville. TN 37211SURYA CORPORATION5755 Nolemville Road(615) 834-5638

•Auttin.TX 78731COMPUTERS'N THINGS2825 Hancock Drive(512)453-5970

•Corpus Christl.TX 78411MICRO SYSTEMS SERVICES, INC.5301 Everhari. Space H-P.O. Box 6S35(512)8554516

• Dallas, TX 75243COMPUSHOP

2 11 Kcyston Park, 13933 North Central(214) 234-3412

• Houston, TX 77057COMPUTERLAND OF S.W. HOUSTON6439 Westheimer(713)9774)909

• Houston, TX 7709BTHE MOS

1853 Richmond Avenue[713)527-8008

•Houston, TX 77006ELECTROTEX2300 Richmond Avenue(713) 526-6934

Houston, TX 77036INTERACTIVE COMPUTERS7646-1/2 Dnhwood, P.O. Box 36584(713)977-7037

Rlcbardion. TX 75080THE MICROSTORE

634 South Central Expteisway(214)231-1096

Provo, UT B4601

THE COMPUTER WORKS

735 South Stale Street, P.O. Box N

(801) 373-7522

Alexandria, VA 22304COMPUTERS PLUS, INC.678 S. Plckell Slreel

(703)751-5656

McLean, VA 22101COMPUTER SYSTEMS STORE1984 Chain Bridge Road(703) 8214)333

Belllngham, WA 9B225

THE PACIFIC COMPUTER STORE

410 W. Champion Slreel

(604) 438-3282

Seattle, WA9B115

THE RETAIL COMPUTER STORE

410 N.E. 72nd Street

(206) 5244101

•Appleton.WI 54911SOUND WORLD, INC.3015 W. Wisconsin Avenue(414) 734-7698

Madison, Wl 53711

THE MADISON COMPUTER STORE

1863 Monroe Streel(608) 255-5552

Milwaukee, Wl 53208MILWAUKEE COMPUTER STORE4710 West North Avenue(414) 4454280

•Racine, Wl 53405COLORTRON TV

2111 UthropAvcnue(414)637-2003

Carnegie, Vict. AustraliaSONTROM INSTRUMENTS17 Arawalla Streel5604)358

• INTERNATIONAL •

Pennant Hills, N.S.W, 2120 AustraliaDYANETICSPTY. LTD.425 Eait Pennant Hills Road848-9055

Cfoydon, Vict.. Australia, 3136COMPUTER ART A EDUCATION

2 Stephen Crescent

Prahran, Victoria, Australia, 3181GEMINI MICRO COMPUTERSP.O. Box 99

Welt Perth, 6005. W. AUHTlAUSTRALIAN COMPUTER PRODUCTS1300 Hay Street(091,322*497

•A-2401 Fiihamend, AustriaKREBS GES. M.B.H.Halnburger Slrabe 34022326818223

Calgary, Alberta, CanadaROBO-TRONICS509-16 Avenue N,W,(403) 282-9496

Montreal.Quebec, Can. H3B 3C9FUTUR BYTE, INC.1191 Philllpi Squire(514)8613120

Toronto,Ont.,Can. M4G 3BSCOMPUTER MART, LTD.

1543 Bay view Avenue(416) 484-9708

Toronto, Oni., Can. M4R 1A1

FIRST CANADIAN COMPUTER STORE

44 Egllntnn Avenue Weil(416)482-8080

Toronto, Ont., Can. M5Y 121TRINTRONICS, LTD.186 Queen Street Weil(416) 5984)260

Calgary, Alt*,,On. T2T 4T9THE COMPUTER SHOP

COMART LIMITED

24A Marker Square0480-2154X15

Paris 75017,FranceCOMPUTER BOUTIQUE149 Avenue dcWagram

Chiyoda-Ky, Tokyo 101. JapanBYTE SHOP SOGOH1-6-6 Sniokanda03 255-1984

Kajhlwa City Chiba Pf. 277, JapanBELLKEYTEC. INC.

5-9,2-Chome Kagl

•Mexico IS, D.F.MexicoINTELEX.S.A.P.A. De 1. (>s Santos 70(905) 516-9970

•10052Stockholm 29, SwedenDATORISERING KONSULT A8

Fack2

061-357069

BASIS MICROCOMPUTER VERTR1EB

Von-Flotow-Strabe 5

025014800

BYTE June 1978

a

Cromemco

incorporatedSpecialists in computers and peripherals2400 CHARLESTON RD., MOUNTAIN VIEW, CA 94043 • (415) 964-7400

Circle 80 on inquiry card.

InLLa QUBUB ElTi June 1978

in hflB l|U6UE

Volume 3 Number 6

PUBLISHER

Foreground

Virginia Peschke LondnerEDITOR IN CHIEFCarl T Helmers JrPRODUCTION MANAGER

14

A PROGRAMMABLE CHARACTER GENERATOR, Part 2: Software

ludith Havey

Software—Weinstein

ADVERTISING DIRECTORDcbra Boudrieau

28

A PROGRAMMABLE IC TESTER

CIRCULATION MANAGER

Test Equipment—Thorson

Gregory SpitzfadenCOMPTROLLER

140

MORE MUSIC FOR THE 6502

Michael GalanEDITORSBlaise W Liffick

Software, Music—O'Haver

142

TALK TO ME: Add a Voice to Your Computer for $35

Christopher P MorganCO-OP EDITORS

Speech Synthesis—Ciarcia

Raymond Cote

153

A THEATRICAL LIGHTING GRAPHICS PACKAGE

Scott Morrow

ASSISTANT PRODUCTION MANAGER

Video Displays—Hemsath-Seawrigh t-Ghen t-Garrard

Karen Gregory

158

GRAPH: A SYSTEM FOR TELEVISION GRAPHICS: Part 2

PRODUCTION EDITORSDavid William Hayward

Software, Video Graphics—Webster-Young

Nancy Salmon

166

AUDIO PROCESSING WITH A MICROPROCESSOR

EDITORIAL ASSISTANTSLaura A Hanson

Real Time Applications—O'Haver

Becky LiffickADVERTISINGNoreen Bardsley

Background

jillCallihanPatricia Clark

PRODUCTION ASSISTANTCheryl Hurd

38

NATURAL LANGUAGE PROCESSING AND SMALL SYSTEMS

CIRCULATION ASSISTANTS

Tutorial—Tennan t

Sarah BauhanPamela R Heaslip

56

GIVE AN EAR TO YOUR COMPUTER: A Speech Recognition Primer

DEALER SALESGinnie F BoudrieauTRAFFIC MANAGERS

Artificial Intelligence—Georgiou

112

THE HP-67 AND HP-97: Hewlett-Packard's Personal Computers

Thomas HarveyEdmondC Kelly |r

Product Review—Pearce

ART

138

NOTES ON TEACHING WITH MICROCOMPUTERS

Stephen KruseWai Chiu Li

Educa ti on—Norton

Dorothy Shamonsky

174

A LOOK AT SHUGART'S NEW FIXED DISK DRIVE

Ellen ShamonskyRECEPTIONISTJacqueline Earnshaw

Product Description—Morgan

CLUBS AND NEWSLETTERS

David Wozmak

Nucleus

DRAFTINGDouglas GlenStephen KruseLynn Malo

4

In This BYTE

Bill Morello

6

Memory: The Growth of a Resource

TYPOGRAPHYGoodway Graphics

11

Letters

PHOTOGRAPHY

94

BYTE's Bugs

Ed CrabtreePRINTING

100

BYTE's Bits

George Banta Company

105

Ask BYTE

ASSOCIATESWalter Banks

106

Clubs, Newsletters

Steve Ciarcia

109

Programming Quickies

David FylstraPortia Isaacson

118

Book Reviews

BITS INC

122

Languages Forum

Dennis BlicmJanice Dolan

128

Technical Forum

Floyd W Rchling

178

What's New?

Medellin StephensJeremy Youst

206

Unclassified Ads ilin

ADVERTISING SALES REPRESENTATIVES:

208

BOMB *$jnSfc>Readei Service "vLAtJu/'*

EAST, MIDWEST

208

Hajar Associates Inc

\ v^^jy o

17 Durant St

r O

0 L *

West Roxbury MA 021 32

(617)325-5380

100 W Chicago Ave

BYTE

s published monthly by BYTE Publications Inc, 70 Main St, Peterborough NH 03458. Address all mail except sub-

Chicago IL 60610(312) 337-8008

scriptions

to above address: phone (603) 924-7217. Address all editorial correspondence to the editor at the above address.

Unacceptable manuscripts will be returned if accompanied by sufficient first class postage. Not responsible for lost manu-

WEST, SOUTHWEST

scripts or

photos. Opinions expressed by the authors are not necessarily those of BYTE. Address all subscriptions, change of

Buckley/Boris Associates Inc

address, F

orm 3579, and fulfillment complaints to BYTE Subscriptions, PO Box 590, Martinsville NJ 08836. Second class

912 South Barrington, Suite 202

postage paid at Peterborough NH 03458 and at additional mailing officer.-USPS Publication No. 102410. Canadian second

Los Angeles CA 90049

class registration No. 9321. Subscriptions are $15 for one year, $27 for two years, and $39 for three years in the USA and its

(213)826-4621

possession

. In Canada and Mexico, $17.50 for one year, $32 for two years, and $46.50 for three years. $25 for a one year

DISTRIBUTORS:

subscription by surface mail worldwide. Air delivery to selected areas at additional rates available upon request. $25 for a one

EASTERN CANADA

year subsc

ription by air delivery to Europe. Single copy price is $2.00 in the USA and its possessions, $2.40 in Canada and

RS-232 Distribution Company

Mexico, $3.50 in Europe, and $4.00 elsewhere. Foreign subscriptions and sales should be remitted in United States funds.

186 Queen St W, Suite 232

Printed in

United States of America. Each separate contribution to this issue and the issue as a collective work copyright ©

Toronto ONTARIO

1978 by BYTE Publication Inc. All rights reserved.

WESTERN CANADA

Kitronic Ltd

^

NEW! Subscription WATS Line: (800) 258-5485

26236 26th Av RR 5Aldergrove BC VOX 1A0

' "

|unc 1978 ©BYTE Publications Inc

COMPUTES SYSTEM

About the Cover:

Robert Tinney's cover painting thismonth was inspired by the article, ATheatrical Lighting Graphics Packageby William Hemsath, James Seawright,Emmanuel Ghent and Mimi Garrard.While Cyrano soliloquizes, the tech-nical director in the wings keeps trackof the lights with the aid of an in-genious graphics system. For moreinformation see page 153.

In This EITE

Last month, Larry Weinstein de-scribed the hardware for a program-mable character generator. This month,read A Programmable Character Gen-erator Part 2: Software and find outhow to program your own specialcharacters for APL programming,music graphics, and so on. page 14

Many computer experimenters buysurplus integrated circuits and have thesometimes tedious job of testing themto see if they work. Mark Thorsonoffers an elegant way around thisproblem with A Programmable ICTester. For relatively little expense,readers can now construct a blackbox that will put virtually any TTLintegrated circuit through its pacesquickly and accurately. page 28

Since the introduction of the com-puter over 30 years ago, we have beenforced to use difficult, archaic, nearalien languages in order to communi-cate our wishes to the machine. Thedevelopment of a system which under-stands the human language has beenslow in coming. Now, Harry Tennanttakes the naturally "speaking" machineout of the realm of science fictionand places it right in the lap of thehome experimenter. But don't youneed a huge machine to do that sortof thing, you protest? Read NaturalLanguage Processing and SmallSystems and discover the answer foryourself. page 38

MICROPHONE

) CD-

HIGH SPEEDANALOG TODIGITAL CONVERTER

Speech recognition is a key com-ponent of any software and hardwaredesign for interesting systems rangingfrom mobile robots to the interactiveand responsive house. To provide somebackground information on the com-plexities of the subject, Bill Georgiouhas written an article entitled Give anEar to Your Computer. page 56

©

IN*UT IMOH

(>Aunn

page 56

Craig A Pearce reviews two pro-grammable calculators from Hewlett-Packard in The HP-67 and HP-97:Hewlett-Packard's Personal Computersand describes Pinball Wizard, a simula-tion game he wrote to show off thetwo units. page 112

Dr William H Norton discusses thepotential impact of using microcom-puters on computer curricula inNotes on Teaching with Microcom-puters. His own experiences using theKIM-1 microprocessor for one of hisown courses at Marycrest College,Davenport IA, illustrate their practi-cality, ease of use, and positive effect.Just as hand calculators revolutionizedmany types of instruction, so too willmicros eventually be used to enhancecomputer education. page 138

If you would like your computer tocompose music for you, read TomO'Haver's More Music for the 6502.There you will find a simple way touse the complicated sounding tech-nique of first order stochastic controlto create your own software sonatasand FIFO fugues. page 140

uiO

2*

COMPUTER

PROCESSOR

AND

PROGRAM

MEMORY

BLANKMEMORY SPACE

« AMPLIFIER

<))

page 142

Would you like to try your hand atspeech synthesis on your computer?Steve Ciarcia shows you how to makeuse of your programmable memory tostore and play back digitized speech inTalk to Me! Add a Voice to YourComputer for $35. page 142

An unusual and creative use ofmicrocomputers and video displays isdescribed in A Theatrical LightingGraphics Package by William Hemsath,James Seawright, Emmanuel Ghentand Mimi Garrard. The authors' sys-tem consists of a simple modificationto a Processor Technology VDM-1video display enabling it to simultane-ously display five graphs of theatrelighting intensity versus time, page 153

In part 2 of GRAPH: A System forTelevision Graphics authors John Web-ster and John Young complete theirdiscussion of a package for use withvideotape studio equipment in edu-cational audio visual contexts.

page 158

Does your computer have highfiedelity? We don't mean to imply thatit lacks character if it doesn't, butas Tom O'Haver shows in his articleon Audio Processing with a Micro-computer it is possible to use thecapabilities of a personal computerto do some interesting real time audioprocessing tasks such as reverberation,phlanging and "fuzz." page 166

The fixed disk may soon become afixture in personal computing, and theability to store 30 megabytes ofmemory on line will have a majoreffect on the way we look at software.Read A Look at Shugart's New FixedDisk Drive by Senior Editor ChrisMorgan. page 174

June 1978 © BYTE Publication! Inc

■COLOR

WIRE CUTTING AND

STRIPPING DISPENSER

)

Model No. WD-30-TRI

Patent Pending

'•*/ ■ ««»»»*

3 Rolls of wire in one convenient dispenser

3 Colors, Blue/White/Red, 50 ft. (15m) of each color

AWG 30 (0,25mm) KYNAR® insulated wire

Built-in cutting plunger cuts wire to desired length

Built-in stripper strips 1" of insulation

Easily refi liable

For wire-wrapping and other applications.

WD-30-TRI

DISPENSER WITH WIRE

$5.95

R-30-TRI TRI-COLOR REPLACEMENT SPOOLS |$3.95

Kynar® Pennwalt

MINIMUM BILLING $25.00/ ADD SHIPPING CHARGE $1.00/ NEW YORK STATE RESIDENT ADD APPLICABLE TAX

MACHINE & TOOL CORPORATION 3455 CONNER ST. BRONX, N.Y. 10475 (212) 994-660CWelex 125091

Memory: The Growth

of a Resource

By Carl Helmers

Articles Policy

BYTE is continually seeking qualitymanuscripts written by individuals whoare applying personal computer systems,designing such systems, or who haveknowledge which will prove useful toour readers. For .a more formal descrip-tion of procedures and requirements,potential authors should send a self-addressed, stamped envelope to BYTEAuthors' Guide, 70 Main St, Peter-borough NH 03458.

Articles which are accepted arepurchased with a rate of up to $50 permagazine page, based on technicalquality and suitability for BYTE'sreadership. Each month, the authorsof the two leading articles in the readerpoll (BYTE's Ongoing Monitor Box or"BOMB") are presented with bonuschecks of $700 and $50. Unsolicitedmaterials should be accompanied by fullname and address, as well as returnpostage."

Once upon a time, I had a telephone con-versation with a gentleman whose name Icannot recall. This gentleman was an ardentexperimenter, both personally and profes-sionally, and was working on the develop-ment of a personal microprocessor system.He knew electronics inside and out, under-stood the principles of integrated circuits,could predict whether or not a given wirewould have to be analyzed as a transmissionline or could be treated simply as an inter-connection, and knew how to calculateworst case conditions in a circuit. He wasgetting into microprocessors with the intentof learning enough about computing toenable him to incorporate them into hisdesigns. I must have talked to him shortlyafter he had begun his project, but certainlybefore it had been completed to the stateof a "working" processor. Given this back-ground, he was able to come up with thestatement, "Nobody will ever need morethan 1 K bytes of memory for the personalcomputer. To use any more would indicatea lack of efficiency in the design."

I don't believe that this gentleman stillholds this opinion, especially if he has pro-ceeded into the world of programming andusing a computer.

Then a little bit later in my experiences,I was having a conversation with a friend ofover a decade's acquaintance concerningvarious topics of small computer design andutilization. Now this friend of mine has hada quite thorough background not in engi-neering, but in systems software, and is quitefamiliar with the process of allocating mem-ory on a large system in lumps of 100 Kbytes or more if the occasion arises. He'slately been enamored of the concept ofinterpretive languages with dynamic symbol

Continued on page 120

44 GREAT LOCATIONS

ComputerLand

NOW OPEN:

ALABAMA

Huntsville

(205)539-1200

CALIFORNIA

Dublin

(415) 828-8090

El Cerrito

(415)233-5010

Hayward

(415)538-8080

Los Angeles

(213) 776-8080

Mission Viejo

(714) 770-0131

Mountain View

Call Directory Assistance

San Diego

(714)560-9912

San Francisco

(415)546-1592

San Jose

Call Directory Assistance

San Mateo

(415)572-8080

Santa Rosa

Call Directory Assistance

Thousand Oaks

(805) 495-3554

Lawndale

(213)371-7144

Tustin

(714) 544-0542

Walnut Creek

(415)935-6502

COLORADO

Denver

(303)759-4685

CONNECTICUT

Fairfield

(203)374-2227

DELAWARE

Newark

(302) 738-9656

GEORGIA

Atlanta

(404) 953-0406

ILLINOIS

Arlington Heights

(312) 255-6488

Niles

(312)967-1714

Oak Lawn

(312)422-8080

KENTUCKY

Louisville

(502) 425-8308

MARYLAND

Rockville

(301)948-7676

MICHIGAN

Grand Rapids

(616)942-2931

Detroit

(313) 356-8111

MINNESOTA

Minneapolis

Call Directory Assistance

NEW HAMPSHIRE

Nashua

(603) 889-5238

NEW JERSEY

Cherry Hill

Call Directory Assistance

Fair Lawn

Call Directory Assistance

Morristown

(201)539-4077

NEW YORK

Buffalo

(716)836-6511

Ithaca

(607) 277-4888

OHIO

Cleveland

(216)461-1200

OREGON

Portland

(503)620-6170

TEXAS

Austin

(512)452-5701

Houston

(713)977-0909

WASHINGTON

Bellevue

(206) 746-2070

Federal Way

(206) 838-9363

Tacoma

(206)581-0388

WASHINGTON, D.C.

Call Directory Assistance

WISCONSIN

Madison

Call Directory Assistance

INTERNATIONAL

Sydney, NSW Australia 29-3753

Juno 1978©BYTE Publications Inc

Rated

The Best Game in Town.

Welcome to ComputerLand.An incredible adventure intothe world of personalcomputers. A one-of-a-kindshopping experience.

Each ComputerLand storepresents everything you everwanted to know aboutcomputers. And then some.

Take our Game Room, forstarters. You'll find excitementfor the whole family in ourendless variety of challengingcomputer games. You can battle the Klingons in anout-of-this-world game of StarTrek. Create an elec-tronic work of art with a computer controlled TV. Testyour skill in a game of computerized hangman.

You can even plot your biorhythm.

But we're more than just fun and gamesEach ComputerLand store offers aknowledgeable and person-able staff of professionals

And if your system breaks down,our in-store service departmentwill get you back up andrunning.

Right now!

Great Selection.

Your first stop at ComputerLandmay well be your last stop.

ComputerLand offers the finestquality and

to serve you.Plus the greatest avail-able selection of micro components. Whether it's a dataprocessing system for your business or a computer controlledsprinkler system for your home, you'll find whatever you needat ComputerLand.

Read on.

Genuine Service.

We want to supplyyou with the onesystem that's right.Rather than a com-plete system that isn't.Or a limited systemthat is.

That's why, at Com-puterLand, you dealwith real professionalswho are also realpeople. People whospeak your language... in addition to BASIC, COBOL or FORTRAN.

People, in short, who can offer both the novice andthe old hand the same expert guidance in selectingthe optimum system he or she needs.

Yet, assisting in the purchase is only the beginning ofComputerLand's service. If the kit you bought requires alittle more do-it-yourself than you yourself can do, weprovide assembly assistance.

If that complex program proves to be just that, we provideprogramming assistance,

Circle 75 on inquiry card.

largest selec-tion of all themajor brand names.Like Apple Computer,Cromemco, DEC, Diablo,Hazeltine. ICOM, IMSAI, LearSiegler,National Semiconductor, North Star, TexasInstruments, Vector Graphics and more.

Plus a complete inventory of tools, books and accessories.

What's more, at ComputerLand, we deal in product. Notpromises. Our inventory is on our own shelves. Rather than themanufacturer's. So you can take delivery on tomorrow's com-ponents today. ,^____

Which means,simply put, that atComputerLand, youget exactly whatyou want.

Exactly when youwant It.

Be Our Guest.

Begin with thegrand tour of ourexhibit areas. "Test-drive" any of ourindividual systems.

Then tell us your needs. We'll sit down and talk about the systemthat's rightforyou. It's as easy as that at ComputerLand.

The great computer store. RATED G.

Call or write for the address of the ComputerLand store nearest you.

Franchise opportunities available.

ComputerLand

14400 Catalina Street, San Leandro, CA 94577 (415) 895-9363

BYTE June 1978 7

■

Sol Terminal Computer

,-V ..!■ Ol ■■(

The answer is a

It's the serioussolution to thesmall computerquestion.

Sol Systems are the key to effective, economicalsmall computer power. Sol Systems give you the force of apowerful general purpose computer, the problem solvingcapability of high level languages and the operational simplicityof everyday office equipment.

From the ground up, Sol Systems were designed to doa complete job without adding a load of costly extras. In fact,when you compare the "everything included" price ofa quality, field proven Sol System with anything else on themarket, you'll be happily surprised to find out how littlethe extra performance and convenience costs.

For example, complete Sol Systems with 16,384 bytesof RAM memory start at less than $2500? Expanded systemswith 49,152 bytes of RAM memory, 1.5 million bytes ofon-line disk memory, disk operating system and ExtendedDisk BASIC cost less than $8000? Both systems are fullyassembled, burned-in, tested and ready to go.

Sol Compatibility

Sol Systems feature the S-100 bus for pin-to-pincompatibility with a wide variety of add-on devices such asvoice input and computer graphics. Standard Solparallel and serial interfaces will drive most standard printers,modems and other peripherals.

A word about languages

No system is complete without software, and at ProcessorTechnology we have tailored a group of high level languages,an assembler and other packages to suit the wide capabilitiesof our hardware.

Take a look at our exclusive Extended BASIC as an example.In cassette form, this BASIC features string and advanced

*U.S. prices only.

Sol System*

file handling, special screen commands, timed input, completematrix, logarithmic and trigonometric functions, exponen-tial numbers, 8 digit precision and square root. The languagehandles serial access files, provides tape rewind andoffers cursor control for graphics capability.

The disk version has all the number crunching talentsof the cassette BASIC plus instant access to data and programson floppy disks. It includes random as well as sequentialfiles and a unique ability to update sequential data in place.

Processor Technology FORTRAN is similar to FORTRAN IVand has a full set of extensions designed for the "stand alone"computer environment. Thousands of special applicationprograms available through books and periodicals have alreadybeen written in this well established language.

Processor Technology PILOT is an excellent languagefor teachers. It is a string-oriented language designed expresslyfor interactive applications such as programmed instruction,drill and testing.

No wonder we call it the serious solutionto the small computer question.

It's the small computer system to do the general ledger and

the payroll. Solve engineering and scientific problems.Use it for word processing. Program it for computer aidedinstruction. Use it anywhere you want versatilecomputer power!

Sold and serviced only by the best dealers.

Sol Systems are sold and serviced by an outstanding groupof conveniently located computer stores throughout theUnited States and Canada. They are also available in Australia,Europe, the United Kingdom, Central America, SouthAmerica, Japan and Singapore.

For more information contact your nearest dealer listed onthe following page. Or write Department B, ProcessorTechnology Corporation, 7100 Johnson Industrial Drive,Pleasanton, CA 94566. Phone (415) 829-2600.

Circle 305 on inquiry card.

ProcessorTechnology

See Sol at all these finecomputer centers.

ALABAMA

Birmingham ICP—Computerland

(205) 979-0707

CALIFORNIA

Costa Mesa Orange County

Computer Center (714) 646-0221

Hayward The Byte Shop

(415) 537-2983

Hayward Computerland of

Hayward (415)538-8080

Lawndale The Byte Shop

(213)371-2421

Modesto Computer Magic

(209)527-5156

Mountain View Digital Deli

(415)961-2670

San Rafael The Byte Shop

(415)457-9311

Tarzana Byte Shop of Tarzana

(213) 343-3919

Walnut Creek The Byte Shop

(415) 933-6252

COLORADO

Boulder The Byte Shop

(303) 444-6550

Denver The Byte Shop

(303) 399-8995

FLORIDA

Ft. Lauderdale Byte Shop of

Ft. Lauderdale (305) 561-2983

Miami Byte Shop of Miami

(305) 264-2983

Tampa Microcomputer

Systems Inc. (813) 879-4301

GEORGIA

Atlanta Atlanta Computer Mart

(404) 455-0647

ILLINOIS

Schaumburg The Data Domain

(312)397-8700

IOWA

Davenport The Computer Store

of Davenport (319) 386-3330

MARYLAND

Towson Computers, Etc.

(301)296-0520

MICHIGAN

Ann Arbor The Computer Store of

Ann Arbor (313) 995-7616

MINNESOTA

Minneapolis Computer Depot

(612)927-5601

NEVADA

Reno Byte Shop of Reno

(702) 826-8080

NEW JERSEY

Cherry Hill Computer Emporium

(609) 667-7555

Iselin The Computer Mart of

New Jersey (201)283-0600

NEW YORK

Endwell The Computer Tree

(607)748-1223

New York The Computer Mart of

New York (212)686-7923

White Plains The Computer

Corner (914)949-3282

NORTH CAROLINA

Raleigh ROMs N' RAMs

(919) 781-0003

OHIO

Akron Basic Computer Shop

(216) 867-0808

Columbus The Byte Shop

(614)486-7761

Dayton Computer Mart of

Dayton (513)296-1248

OREGON

Beaverton Byte Shop Computer

Store (503)644-2486

Eugene The Real Oregon

Computer Co. (503) 484-1040

Portland Byte Shop Computer

Store (503)223-3496

RHODE ISLAND

Warwick Computer Power, Inc.

(401)738-4477

SOUTH CAROLINA

Columbia The Byte Shop

(803)771-7824

TENNESSEE

Kingsport Microproducts &

Systems (615)245-8081

TEXAS

Arlington Computer Port

(817)469-1502

Houston Interactive Computers

(713) 772-5257

Lubbock Neighborhood Computer

Store (806) 797-1468

VIRGINIA

McLean The Computer Systems

Store (703)821-8333

WASHINGTON

Bellevue Byte Shop Computer

Store (206) 746-0651

WISCONSIN

Madison The Madison Computer

Store (608) 255-5552

Milwaukee The Milwaukee

Computer Store (414) 259-9140

WASHINGTON, DC.

Washington, D.C Georgetown

Computer Store (202)362-2127

CANADA

London, Ontario The Computer

Circuit Ltd. (519) 672-9370

Toronto, Ontario Computer

Mart Ltd. (416) 484-9708

Vancouver, B.C Basic Computer

Group Ltd. (604) 736-7474

Vancouver, B.C Pacific Computer

Store (604)438-3282

AUSTRALIA

Victoria Sontron Instruments

(03) 569.7867

PHILIPPINES

San Juan, Metro Manila Integrated

Computer Systems, Inc.

JAPAN

Tokyo Moon base Shinjuku

(03) 375-5078.5079

Processor Technology

10 BYTL June I97S

Circle 305 on inquiry card.

Letters

THE IMPORTANCE OF COLORGRAPHICS

The editorial about the importanceof color graphics (October 1977 BYTE)touched on some issues that go muchdeeper than most people suspect. Thestory about the professional who asked,

Photo 7.

Photo 2.

"Why would anyone ever want a per-sonal computer?" has several variationsthat further illustrate the misunder-standings that can arise. For example,there is the listener to a computer basedmusic system who asks, "Isn't that justa fancy new kind of record player?"Aside from obvious acoustic differences(our system plays real organ pipes—talkabout hi fi!), the answer is, "Yes, if allyou do is listen." But that's not thepurpose of the system at all —it's meantto be manipulated, to be used by crea-tive experimenters, that is, by artists.

A good example of the consequenceof this creative viewpoint is the work ofa high school physics teacher (Mike

Continued on page 98

The LFD-400 is ready to plug in and run

the moment you receive it.

Nothing else to buy! Not even extra memory!

YOU GET:

O The popular Shugart SA 400 minifloppy™ drive. Drive alignment

is double checked by PerCom before shipment.0 The drive power supply—fully assembled and tested.0 LFD-400 Controller/Interface—plugs into the SS-50 bus •

accommodates three 2708 EPROMs • fully assembled and tested.O MINIDOS™ —the remarkable LFD-400 disk operating system on

a 2708 EPROM • plugs into the LFD-400 Controller card • no

extra memory required • no "booting" needed.0 Attractive metal enclosure.

0 Interconnecting cable—fully assembled and tested.O Two diskettes—one blank, the other containing numerous

software routines including patches for SWTP 8K BASIC and the

TSC Editor/Assembler.0 70-page instruction manual—includes operating instructions,

schematics, service procedures, and the complete listing of

MINIDOS™.® Technical Memo updates—helpful hints which supplement the

manual instructions.® 90-day limited warranty.

Minifloppy Is a trademark of Shugart AssociatesMINIDOS is a trademark of PERCOM Data Company, Inc.

The LFD-400 is readily expanded to either two or three drives.Write for details. Send for our free brochure for more informa-tion about the LFD-400 Floppy Disk System and LFD-400software.

To save you money, the LFD-400 Floppy Disk System is availableonly from PerCom. Because of the special pricing, group anddealer discounts are not available.

MC and VISA welcome. COD orders require 30% deposit plus 5% handling charge. Allow threeextra weeks if payment is by personal check. The LFD-400 Floppy Disk System is availableimmediately. Allow three weeks for testing and transportation. Texas residents add 5%sales tax.

PEHCOM

PERCOM DATA COMPANY, INC.

Dept B 318 BARNES• GARLAND, TX. 75042(214) 272-3421

PERCOM™ 'peripherals for personal computing'

Circle 297 on inquiry card.

Iune 1978'. bytl Publications Inc

11

Why Apple if is the world'sest selling personal computer.

■

hich person;most enjoyable and rewarding for you?Since we delivered our first Apple® IIin April, 1977, more people have chosenour computer than all other personalcomputers combined. Here are thereasons Apple has become such anoverwhelming favorite.

Apple is a fully tested and assembledmainframe computer. You won't needto spend weeks and months in assembly.Just take an Apple home, plug it in,hook up your color TV* and any cassettetape deck—and the fun begins.

To ensure that the fun never stops,and to keep Apple working hard, we'vespent the last year expanding the Applesystem. There are new peripherals,new software, and a 16-chapter Owner'sManual on "How to Program in BASIC."There's even a free Apple magazineto keep owners on top of what's new.

Apple is so powerful and easy to usethat you'll find dozens of applications.

There are Apples in major universities,helping teach computer skills. Thereare Apples in the office, where they'rebeing programmed to control inven-tories, chart stocks and balance thebooks. And there are Apples at home,where they can help manage the familybudget, control your home's environ-ment, teach arithmetic and foreignlanguages and, of course, enable youto create hundreds of sound andaction video games.

When you buy an Apple II you'reinvesting in the leading edge oftechnology. Apple was the first com-puter to come with BASIC in ROM,for example. And the first computerwith up to 48K bytes RAM on oneboard, using advanced, high density16K devices. We're working to keepApple the most up-to-date personalcomputer money can buy. Apple IIdelivers the features you need to

enjoy the real satisfaction a personalcomputer can bring, today andin the future.

15 colors & hi-fesohitiongraphics, too.

Don't settle for a black and whitedisplay! Connect your Apple toa color TV and BASICgives you instantcommand ofthree displaymodes: Text,40h x 48v Color-graphics in 15 colors,d a 280h x 192v Highesolution array that letsplot graphs and com-ose 3-D images. Apple givesthe added capability ofombining text and graphics, too.

Back to basics, andassembly language too.

Apple speaks three languages: fastinteger BASIC, floating point BASICfor scientific and financial applications,and 6502 assembly language. That'smaximum programming flexibility. And,to preserve user's space, both integerBASIC and monitor are permanentlystored in 8K bytes of ROM, so youhave an easy to use, universal languageinstantly available. BASIC gives yougraphic commands: COLOR=, VLIN,HLIN, PLOT and SCRN. And directmemory access, with PEEK, POKEand CALL commands.

Software:Ours and yours.

There's a growing selectionprogrammed software from theSoftware Bank—BasicFinance, Checkbook, HighResolution Graphics andmore. Now there's a UserSection in our bank, to makeit easy for you to obtainprograms developed

of pre-Apple

12 BYTE |une 1978

by other Apple owners. Our SoftwareBank is your link to Apple owners allover the world.

Alive withthesoundof music.

Apple's ex-clusive built-inspeaker deliversthe added dimension of sound to yourprograms. Sound to compose electronicmusic. Sound to liven up games andeducational programs. Sound, so thatany program can "talk" back to you.That's an example of Apple's "peoplecompatible" design. Another is its light,durable injection molded case, so youcan take Apple with you. And theprofessional quality, typewriter-stylekeyboard has n-key rollover, for fast,error-free operator interaction.

Apple is theproven computer.

Apple is a state-of-the-art singleboard computer, with advanced LSIdesign to keep component count to aminimum. That makes it more reliable.If glitches do occur, the fully socketedboard and built-in diagnostics sim-plify troubleshooting. In fact, on ourassembly line, we use Apples totest new Apples.

/

Apple peripheralsare smart peripherals.

Watch the far right column ofthis ad each month for the latest in ourgrowing family of peripherals. We callthem "intelligent interfaces." They'resmart peripherals, so you can plugthem in and run them from BASICwithout having to develop custom soft-ware. No other personal computercomes close to Apple's expandability.In addition to the built-in video inter-face, cassette I/O, two A/D game pad-dles, and two more A/D inputs, Applehas eight peripheral slots, three TTLinputs and four TTL outputs. Plus apowerful, state-of-the-art switchingpower supply that can drive all yourApple peripherals, including two disks.

Available now.

Apple is in stock and ready fordelivery at a store near you. Call us forthe dealer nearest you. Or, for moredetails and a copy of our "ConsumerGuide to Personal Computers," call800/538-9696or write AppleComputer, Inc.,10260 BandleyDrive, Cupertino,CA 95014.

iy ?

apple computer

Programming is a snap!I'm halfway through Apple's BASICmanual and already I've programmedmy own Star Wars game.

Those math programs I wrotelast week-I just rewrote them usingApple's mini-assembler and got them

to run a hundred times faster.

New from Apple.

Introducing the AppleCommunication Interface

Apples of the world unite! Nowyou can, with our new intelligent com-munication interface card. Just plugit in and it turns your Apple into anintelligent terminal that can go on linewith other terminals,time-sharingcomputers and,especially, withother Apples.You can evenplay Tele-Pong!Everything youneed is on onesmall card.With a modem,it enables yourApple to communi-cate by phone at 110/300 baud RS232full duplex I/O. The card is fully as-sembled and tested and has all re-quired software in on board ROM.It's controlled by simple BASIC com-mands. And it's available from stock.

Peripherals in stock

Hobby Board, Parallel Printer Inter-face, Communication Interface.

Coming soon

High speed serial printer interface,General purpose serial interface,; Printer II, Printer IIA, Disk II,Monitor II.

* Apple II plugs into any standard TV usingan inexpensive modulator (not included).

Circle 15 on inquiry card.

Apple's smart peripherals make

expansion easy. Just plug 'em in and

they're ready to run. I've already

added two disks, a printer and the

communications card.

A Programmable

Character Generator

Part 2: Software

Larry WeinsteinObjective Design IncPOB 20325Tallahassee FL 32304

In part 1 last month (page 79), we sawthat a programmable memory could besubstituted for the character generator readonly memory in a video display to create anduse special character sets for special computerapplications. With a small amount of addi-tional software overhead, it is also possibleto control high resolution screen graphics.The techniques for using the programmablecharacter generator are detailed this month,and examples are presented.

Modes of Operation

Each character to be portrayed by atypical video display generator is representedby an 8 bit binary code, labeled BO to B7.B7 often is not used for character selection,but rather serves a special hardware func-

tion: to key in reverse video, in the ProcessorTechnology VDM-1, for example. Theremaining seven bits are used to select fromthe 128 possible ASCII characters. These128 characters are shown in figure 1. Theprogrammable character generator allows theuser to substitute, for some or all of these,characters created by the user (see figure2). In each case the 7 bit code is used asan address in the character memory.

Programmable character generator cir-cuitry selects the character data accordingto information present in the code itselfand the operation mode. There are fivesuch modes: fixed normal, fixed graphics,command, programmed, and automatic(part 1 of this article gave details on theselection process). In fixed normal, theprogrammable memory is never accessed.For the fixed graphics, command, andprogrammed modes, there is a simple con-nection between the character code and theprogrammable memory locations used todescribe the characters.

Figure I: The ASCII character set. The seven bits of the ASCII code indicate which of the 128possible characters will be generated. The data used for producing these characters is usuallystored in a character generator read only memory.

LOW 4 BITS OF ASCII CODE

UPPER

CASE

SET

L—0 1

HIGH 4 BITS

NU

SH

s

X

EX

ET

EQ

AK

B

L

B

s

H

T

LF

V

T

F

F

CR

S0

SI

^ONTROt

D

L

D1

D2

D3

D4

NK

M

-I

S

B

EC

FS

GS

RS

US

s

Y

EB

C

N

EM

!

"

#

$

%

&

■

(

)

«

+

.

-

/

0

1

2

3

4

5

6

7

8

9

;

<

=

>

?

@

A

B

C

D

E

F

G

H

I

J

K

L

M

N

o

P

Q

R

s

T

U

V

W

X

Y

Z

[

/

I

A

—

•

a

b

c

d

e

f

fl

h

i

i

k

I

m

n

o

_ll f

;e i—

p

q

r

s

t

u

—\<-^

>c r—

z

{

i

I

V

w

X

y

14

June 1978 ® BYTE Publications Inc

THIS FLOPPY ISNO FAIRY TALE.

It can be confusing to choose the right floppy disksystem for your micro. All those fanciful yarns ofcapabilities, specs, and delivery. Some would putUncle Remus or Scheherazade to shame.

Meet EXP —our no-nonsense, down-to-earth, full-sized floppy system. Check its benefit list. Then makeinquiries with a technical advisor or your friendlycomputer shop before making a buying decision. OurMacro EXP Disk System offers you:

1. A Darned Good Price forWhat You Get.

Here's a complete dual-drive floppy with full-sized 8" diskettesfor under $2,000. No high-priced options; great standardfeatures. Why not pay a little more now for a lot later?

2. Rapid-fire Delivery.

Get a fully assembled, tested floppy system in four weeks orless—not in several months, maybe.

3. Super Expandability.

EXP Memorex drives are the only ones you can convert todouble-headed later (cost: $300 each). Our optional double-density controller (also $300) doubles the disk's density. In-crease your original dual-drive system's capacity to over twomegabytes!

4. Unmatched Reliability.

Our super-reliable Memorex EXP drives carry a six-monthwarranty. No other competitor can make that statement.

=\t*»a

5. Up to Your Eyes in Software.

Our floppy's disk controller features IBM 3740 compatibilityand CP/M* formatting (the industry standard). Choose be-tween BASIC and FORTRAN, or complete business appli-cation and word processing packages.

6. Fabulous Flexibility.

Our floppy gets along with everybody. Optional I/O driversfor the SOL let you get started now with an industry standardfloppy disk system.

7. We Like to Keep It Simple.

EXP's no kit. It's assembled, tested and raring to go to work.A serial I/O port on our controller makes it a snap to bringthe system up. No patching or fussing. Just hit the button.

8. Comfy Compatibility.

All EXP's are fully compatible with S-100 bus systems withat least 16K of memory.

Never fear. EXP's here—with the whole floppy for under$2K. Don't be timid or "mini-minded!" Get the best now—fortoday and tomorrow. We'll take care of the technical stuff.You do the rest. For details, contact your nearest dealer orquery us direct.

P.S. Be sure to ask about "Z-Plus"—our sensational newcomputer system that includes a Z-80 processor with 32K ofmemory, serial I/O ports and EXP series drives —with pricesstarting below $4,000.

* CP/M is a trademark of Digital Research, Inc.

Where there's alwaysmore in store.

524 UNION STREETSAN FRANCISCO, CA. 94133

Circle 212 on inquiry card.

BYTE June I978

15

PROGRAMMABLECHARACTERGENERATORMEMORY

CHARACTERBLOCK

HIGH

H

LOW 4

BITS

BITS

7

6

5

4

3

2

1

0

ASCII CODE

CONTROL

HARDWARE

FUNCTION

SELECT DATAIN THECHARACTERGENERATOR

SELECTI OF 128CHARACTERBLOCKS

UJ

>

m

j

8

BITS

Figure 2: Decoding the code byte. The highest order bit of the 8 bit code is used for controlhardware functions (such as reverse video). The remaining seven bits select character blocks inthe character generator read only memory, the programmable character generator, or both(depending on what mode of operation is being used). Each data block consists of 16 byteswith eight bits. The Is and Os are converted to screen dots and spaces by the hardware.

The programmable memory is dividedinto 128 blocks of 16 bytes each, proceed-ing from low to high memory address.The seven code bits, from hexadecimal00 to 7F, locate the block of 16 bytesused to describe the character. This is ex-pressed by the simple formula for the ad-dress in memory of the first byte of acharacter block:

Address = Base address + [16 X code]

where "base address" is the lowest addressof the programmable character generatormemory, and "code" is interpreted as anumber.

Each byte represents one row of thescreen dots that form the character. Row 0is the first byte (lowest address) in theblock, and row 15 is the last byte (highestaddress). We are tempted at this point to saythat row 0 appears at the top of a char-acter space on the screen and row 15 at thebottom. But this is not always true, due tosome hardware tricks in the various videodisplay devices. For instance, in the Proc-essor Technology VDM-1, row 15 is on thetop, followed by row 0 and the other rowsin order to 12. Since row 15 is always blankwhen generated by the character generator,this is not normally apparent. With program-mable character generator characters,though, it will have an effect and must bedealt with in the hardware or software.We will assume, for now, that the rows areprojected in numerical order.

The division of the programmable char-acter generator's memory is slightly altered

for the automatic mode (see figure 3). Inthis mode the 128 codes are split betweenthe character generator and the program-mable memory, with 64 characters beinggenerated from each. The character gen-erator produces all of those characters inwhat is normally known as the "upper caseset." The remaining characters come fromthe programmable memory.

It is unfortunate that the split does not

t

5I2

BYTES1

CONTROL

CHARACTER

CODES

I

\ R

LOWERCASE

)

EXISTING

CHARACTER

GENERATOR

PROGRAMMABLE

CHARACTER

GENERATOR

Figure 3: Automatic mode. In this mode,the upper case characters come from theexisting character generator while the con-trol character and lower case codes auto-matically reference 64 special characters inthe programmable character generator mem-ory. This is probably the most convenientmode of operation for many applications,since the normal upper case character set isavailable along with the special graphicscharacters.

16

|unc 1978 © BYTE Publicalions Inc

THE COMPLETE COMPUTER

I

LookToThe North Star HORIZON Computer.

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

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

WHAT ABOUT PERFORMANCE?

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

AND SOFTWARE, TOO

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

EXPAND YOUR HORIZON

Also available—Hardware floating point board (FPB); addi-tional 16K memory boards with parity option. Add a seconddisk drive and you have HORIZON-2. Economical serial andparallel I/O ports may be installed on the motherboard. Manywidely available S-100 bus peripheral boards can be added toHORIZON.

QUALITY AT THE RIGHT PRICE

HORIZON processor board, RAM, FPB and MICRO DISK SYS-TEM can be bought separately for either Z80 or 8080 S-100 bussystems.

HORIZON-1 $1599 kit; $1899 assembled.

HORIZON-2 $1999 kit; $2349 assembled.

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

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

North Star * Computers

2547 Ninth Street • Berkeley, California 94710 • (415) 549-0858

Circle 285 on inquiry card.

BYTE June 1978 77

08

0808

III II

■1 ■■■■■

FF

Figure 4: Some arbitrary special characters. The 1 6 bytes that form a charac-ter are projected onto a 16 by 8 grid, each bit corresponding to one space.The programmer can choose any combination of Is and Os to create filled andempty spaces, respectively.

take place in the center of the code num-bers, as can be seen from the ASCII chartin figure 1. In order to neatly separate theprogrammable memory into special char-acter and general purpose groups, the codesnormally located in the top 512 locationscan be moved to the second 512 spaces.In this case the low address 1 l< of memoryis devoted to special characters and theupper 1 K is free for system use. Automaticmode is probably the most convenient,

Photo I: An APL charac- since the normal character set used by most

ter set generated by the software is available, along with 64 special

programmable character characters.

generator.

ftiM*»ftIt++t*M

«rL7A«0c3flulTI 8

•••fOB*'l

ftBCDEF6HIJKLliH0PftRSTUVBXY

(>•-!'iIXl'()*:

Creating the Characters

The 16 bytes which form a character arechosen in a straightforward manner. Thebytes are projected onto a simple 16 by 8grid, where each bit equals one space. Thespaces are roughly equivalent to dot spaceson the screen. The programmer constructscharacters from filled spaces in the grid.When converted to data bytes, the filledspaces are 1s and the empty spaces are Os(see figure 4).

In many cases, the circuitry in the videodisplay device allows only a subset of the16 rows to appear. Also, the eighth bit ineach row is often left unused, although thiscan generally be "corrected" by an altera-tion. It is not necessary to dig throughvideo display device schematics to learnwhich rows and columns are projected. Astudy of character generator characters onthe screen plus some trial and error workwith the programmable character generatorwill quickly reveal character limits.

The horizontal to vertical ratio of screendot size is not 1:1 in most cases. For thisreason, a grid composed of square spaceswill not accurately portray the characters.The ratio of vertical to horizontal screendot size can be calculated by:

Size= (V dots/H dots)(4/3)

where 4/3 is the standard screen aspect ratioand V and H dots are the number of dotsacross the screen vertically and horizontally,respectively. For example, if each characteris drawn on a 12 by 8 grid with a videodisplay of 16 rows by 64 characters per row,one has:

V/H size =

(16)(12) (4(64) (8) I 3

192W4512/\3

152

The grid should then be drawn with thevertical dimension of each space twice aslarge as the horizontal one.

Character Set Examples

There has been a great deal of interestlately in APL for microcomputers. The twogreat stumbling blocks have been writingthe interpreter and displaying the uniqueAPL character set. With the programmablecharacter generator, producing the specialcharacter set is a trivial task (see photo 1).

Several of the characters are plotted here

18 June 1978 Ti BYTE Publications Inc

Our goal was to produce 100%reliable business programs."

03l>

"epeReiMci

MANUAL

M3<

e^

Accoutres rcccwmsue

ReFCRBNCE MANUAL

««ft.ml*l>ii«TV<*tt«..

"What do we mean by reliable programs? Threethings: good program design, documentation, andfull support.

DESIGN Good program design meets a widevariety of customer needs without reprogramming.

I .

Keith Parsons, President

Alan Cooper, VP, Systems Development

C "- i 352 on inquiry card.

Our programs are comprehensive yet retain theirflexibility. They allow convenient backup, are easyto use and have been thoroughly tested and fieldproven.

DOCUMENTATION We consider the quality ofthe documentation to be as important as theprograms themselves. That's why our manualsare clear, concise and complete.

SUPPORT And when it comes to support we'resecond to none. We release periodic updates,answer your questions and are available to providetechnical assistance. Now that's reliable."

Our growing Business Systems series currentlyincludes: GENERAL LEDGER, ACCOUNTSRECEIVABLE, NAD (Name and Address Filesystem), QSORT (full disk sort/merge), andCBASIC (a powerful business Basic). For details,contact our sales manager, Richard Ellman.

Structured Sy/tem/ Croup

5615 KALES AVE. DEPT. B6 OAKLAND, CA 94618 (415)547-1567

All system:; nm compatible with ;jny 7 HO or H080 CP/M™ system

with a simple grid. The automatic mode isused for the entire alphabet since the uppercase character set is still needed. Placementin the programmable character generator'smemory determines the keyboard code (andtherefore, which keys) the characters willmatch with, so using the SHIFT and CTRLkeys with the upper case set will causespecial characters to be displayed. The usercan easily add labels to a key set to producea full APL terminal (minus all of the pro-gramming, of course).

Photo 2: A special music alphabet created in the graphics mode.

Photo 3: Timing diagram created in the automatic mode of the programmablecharacter generator.

From this example, it should be obviousthat any character set that will fit on the9 by 7 (or larger, to 16 by 8) matrix usedby the character generator can be generated.Also, multiple character sets can be storedin memory and swapped in as needed. Incases where more than 128 different char-acters are required, but all characters do nothave to appear on the screen at one time, itis possible to dynamically create them. Inthis instance, a subset, possibly with onlyone element, of the set is swapped asrequired.

Graphics

The ability to create character setsimplies some graphics capabilities. Thesimplest form of graphics will use an unusualcharacter set, but still be handled as analphabet. A good example is a set of musicalnotes (see photo 2). Each character is asingle note, projected on the musical staff.The software overhead to create such apicture is very small, taking up less thanhalf of the programmable character gen-erator memory. Using a high resolutionpoint by point graphic display, the amountof time and software overhead required togenerate such a picture might be muchlarger.

At the next level of graphics, the hard-ware restrictions on the video display devicebegin to tighten. The ideal display is one inwhich there are no forced blank sectionsbetween the characters. This will enable usto build pictures from individual characterelements. The next example is a timingdiagram (see photo 3). In this case it is onefor the 8080. The video display device usedforces a single blank dot column betweencharacters, which goes almost unnoticed.The diagram uses very few characters, butrepeats them many times. Those who areapplications oriented should note that stor-ing this picture, or any picture constructedfrom this character set, requires only 1 Kbytes for the screen memory and less than256 bytes for the characters. Even a systemwith limited mass storage could hold all ofthe 8080 timing diagrams and informationon the signals.

The bar graph picture in photo 4 issimilar. However, its hardware restrictionis mainly in the vertical direction. In thiscase it is best to eliminate the blanks be-tween rows of characters as much as pos-sible. Finally in the logic set (photo 5),the restrictions are tight in both horizontaland vertical directions. It should be re-membered that while the human eye iscapable of noticing even the smallest flawin a picture, the human brain will "inte-

20 June 1978©BYTE Publications Inc

The Computer for the Professional

The 8813 was built with you, the professional, in mind.

It quickly and easily processes cost estimates, payrolls,accounts, inventory, patient/client records and muchmore. You can write reports, briefs, and proposals on

the 8813's typewriter keyboard, see them on the videoscreen, and instantly correct, revise, or print them.

Using the 8813, one person can process what would

normally require many secretaries, several bookkeepers,

and a great deal of time. And data storage takes a small

fraction of the space used by previous methods.

You don't need to learn complicated computer lan-guages. The 8813 understands commands in English. Ifyou want to write your own programs, the 8813 includes asimple computer language, BASIC, that you can master ina few days. The 8813 slashes the professional's overhead.It's a powerful time and money-saving ally. Prices forcomplete systems including printer start at less than $8,000.

See the 8813 at your local dealer or contact PolyMorphicSystems, 460 Ward Drive, Santa Barbara, California, 93111,(805) 967-0468, for the name of the dealer nearest you.

PolyMorphicSystems

BYTE June 1978

21

A\

C/

1

2

D

B

3

4

t

5

i

\

*-r -»

A

^r^

1

B

2

C

3

D

4

t

s

1

Photo 4: Bar graph createdby the programmable char-acter generator.

P.C.G. HP

R GRAPH -14 SPEW.

CHARflOERS

SB

48

38

k

CO

18

1.

Ii

^^~~~

_

Bl'i^l'ilf i?*l ii

JH1

iflJJnSOND

Photo 5: A logic diagramgenerated with the pro-grammable character gen-erator.

Figure 5: Dynamic generation. The user cancause a special character (such as a space-ship) to move smoothly across the screen byusing the technique of dynamic generation.During its travel, the character can over-lap up to four screen locations (thecharacter is shown in color). Although thetotal number of characters needed to por-tray parts of the ship as it moves across thescreen is quite large, only a maximum offour are needed at any time. These charac-ters are generated by mapping the imageonto the programmable character generatormemory, with the mapping function deter-mined by the screen position.

grate" the available information and makeup for most imperfections.

Dynamic Generation

The previous examples have utilized asimple character set with frequently repeatedelements. Now let us consider a case wherethis is not sufficient. We have a figure (itcould be a spaceship) which must movesmoothly across the screen. Assuming itis the same size as a single letter, it mayoverlap as many as four screen spaces atone time (see figure 5). Although the totalnumber of different characters used toportray parts of the ship as it moves on thescreen is quite large, only four are neededat one time. The total information on thescreen appearance of the ship is containedin a single picture, requiring perhaps 8 to12 bytes. The trick then is to dynamicallycreate the one, two, or four charactersneeded at any one time from the basic shippicture bytes. This is done by mapping theimage onto the programmable charactergenerator's memory, with the mappingfunction determined by the screen position.For a changing object that also moves acrossthe screen, it is only necessary to maintaindifferent sets of picture "masters" fromwhich to perform the mapping. If pictureslarger than a single character space arerequired, they can be created by a repetitionof the same process.

The applications of the programmablecharacter generator are as varied and numer-ous as the characters it creates. Once its useis mastered, there is virtually no characterset or graphic that cannot be portrayedwith very low overhead in cost, memory,and programming effort. The examples I'veshown in these two articles are but the firstdoodlings I've done with a flexible andpowerful kind of display hardware. Usersof this technique will find their displayslimited only by imagination."

22

June 1978 6 BYTE Publicjlions Inc

The future belongs to those with The Bluestrom Cybercom.

Join the growing number of users worldwidewho are discovering the exceptional quality,plus prompt delivery and significant costsavings. And the new year holds even morepromise now with our MB6A 8K RAM board[450 NS] reduced to just $165, and ourMB7 16K RAM board now only $449. Also,you might want to check out our newI/0-4 board that offers two serial I/O ports. (2-I and 2-0] and two parallel ports (2-I and

Circle 335 on inquiry card.

2-0], eliminating jumpers, priced at $149.50.Seek out Cybercom's full and versatile lineat your local computer hobbyist store, orcontact us directly, if you want to build aworld of the future today.

* CLjbercDm

A Division of Solid State Musi2102A Walsh AvenueSanta Clara, CA 95050Telephone (408} 246-2707

Ask for The True Blues.

BYTE |unc 1978 23

Basic systems forpersonal competing

If you are just getting into personal computing and are looking for a starter system,you have two choices: a computer kit with RAM memory only or a fully assembled computerwith BASIC-in-ROM. From reading this magazine and talking to computer buffs it should beobvious that it is desirable to have a computer capable of communicating in the programminglanguage BASIC. This language allows you to instruct the computer in English-like phrasesand to use any of the thousands of standard programs written in BASIC (there are probablyseveral in this magazine).

If you purchase a (RAM-only) computer kit you will have to buy additional RAM (4K to8K), a terminal, and cassette interface for a total cost of about $1000 to run BASIC after you getthe kit together and working. Your reward for this endeavor will be a wait of about 15 minutesevery time you turn the computer on just to load BASIC into the machine!

Your other alternative is a BASIC-in-ROM computer. These machines have BASICbuilt in so that it is there whenever the computer is turned on. BASIC-in-ROM computers arealso usually fully assembled and cost far less than the RAM-only kits because they are mass-produced by the thousands.

But, you must be careful when selecting a BASIC-in-ROM computer. Some modelsdo not have full-feature BASIC. Instead they have Tiny BASIC or 4K BASIC which cannot runmost of the standard BASIC programs available. Still others have other shortcomings such asa small calculator-style keyboard which makes program entry difficult, or most important,lack of expansion capability, preventing the computer from growing with you.

Ohio Scientific offers you a line of expandable computers with full-feature 8KBASIC-in-ROM. They all come fully assembled and tested, but give you the option ofeconomizing by supplying the simple things — power supply, keyboard and TV, if desired, sothat you get the most computer power for your dollar.

Compare Ohio Scientific's $298 BASIC-in-ROM Model 500 Board (1MHz clock),which has our Version 3.3 BASIC, against other small computers, as in the independent article"BASIC Timing Comparisons" (Kilobaud, Oct. 1977, p. 23). In this test, the Model 500 excelledover all our personal computing competitors, and was second in performance only to ourChallenger disk systems, compared against twenty-eight other computer systems. And theModel 500 is our lowest-cost machine! Our larger models are even more dramatic in a com-parison with any competitive models.

Having the fastest full-feature BASIC ROMs certainly isn't the only criterionnecessary for a superior computer system, but it sure helps. Ohio Scientific offers all the otherfeatures necessary, including a full line of computer accessories complete with 15 accessoryboards available in over 40 configurations. Many Ohio Scientific accessories are so innovativethat no one else in the industry has them — such as dual port memory boards, multi-processing CPU's and big disks.

Ohio Scientific has other unique features for the personal computerist. For in-stance, there is Ohio Scientific's Small Systems Journal, published bi-monthly, a fullmagazine aimed specifically at the owners of Ohio Scientific computers. If you are looking fora personal computer, be sure to look carefully at Ohio Scientific. We think you will find that wehave the system for you.

11

IllllllMil! III! II11

fi Mil It I

,

Model 500 Board

A full 8K BASIC-in-ROM computer on a board. This unitcontains a 6502 microprocessor with our powerful 8KBASIC-in-ROM, 4K of RAM memory, and a serial portwhich can be jumpered for 20ma current loop or RS-232.The board can be plugged into any standard OSI-backplane and expanded by our full line of accessoryboards.Theusermustsimplysupply +5Vand -9Vpowerand the serial terminal to be up and running in BASIC.$298.00

Super Kit

An ideal starter computer system. The Super Kit includesa Model 500 CPU Board with 8K BASIC in ROM, CPU, and4Kof RAM, full buffering for expansion, an eight-slot back-plane board, and a Model 440 Video I/O Board. Model 440provides full CRT functions when connected to a videomonitor or modified television set and a standard ASCIIkeyboard. The user must simply provide +5V and -9Vpower, an ASCII keyboard, and a modified television set ormonitor to have a full computer system with 8K BASIC-in-ROM, 4K user space and a CRT terminal with scrolling.S398.00

Challenger HP

Our very popular fully packaged BASIC-in-ROM computer.Challenger IIP contains the Model 500 CPU Board with 4Kof RAM, our new 540 32x64 character video display,keyboard and complete audio cassette interface. The unitalso has internal power supplies and a four-slot backplanewith two open slots for expansion. The user has only toconnect a monitor or modified television set to its output,and he is ready to program in BASIC. To store programsand data files, he needs only to connect a conventionalaudio cassette recorder to the built-in audio cassette in-terface. The unit is fully assembled and ready to go.$598.00

Challenger II Disk Systems

The ultimate in personal computing offered by OhioScientific is the Challenger II system with single- or dual-drive full-sized floppy disk. Each floppy stores 250,000characters. The Challenger II is available as a videosystem with keyboard so that all the user needs is a televi-sion or monitor for operation; or as a serial version wherethe user must supply his own terminal. Challenger II disksystems automatically load in BASIC and now have an ex-tensive library of high-performance programs. The pro-grams are ideal for the advanced hobbyist, educationalusers, industrial development and small business applica-tions. Challenger II disk systems are very economical. Forinstance, a 16K disk system with 250,000 bytes of diskstorage starts at under $2000.00

1333 S. Chillicothe Road • Aurora, Ohio 44202(216) 562-3101

For more information contact an Ohio Scientificdealer or send $1 for our 64-page buyers' guide.

BYTE |une 1978 25

0S-65U The New Standardin Micro Computer Operating Systems

System design goais: Create a simple, coi icise wash prooi operatii iy system which is easy fur busn iessprogrammers to utilize and simpie for office workers (and other rioii-oomputerists) to use The system mum navethe highest performance in the microcomputei industry and must be able tu support present day floppy and harddisks as well as tomorrow's CCD and bubble memories withuut any usei program rnodifiLdiiuin,

This may sound outlandish but we developed just such a system and here's how:

First, we started with a fresh copy of Microsoft's supei fast 9V* diyit BASIC foi the 65U2 [ fhis BAblc outbenchmarks every other microcomputei Basic using the 7 Kilobaud benchmarks except foi oui own ultia fast 6digit BASiC.)

We knew ihai ail operating system commands and features sitoula be an integral part of thib BASIClanguage so we put ihem right in the BASIC itself. "I his means that all OS features can be accessed In the im-mediate or command mode and as part of BASIC pioyi ai i is. All syntax such as file names can be literal strings oiBASiC variables.

We started with some simple but powerful extei isioi is to BASIC to make the business systei 11 prograi 11merhappy-like$L,$R,INPUT#(D),andPRINT#(D).$Land$RarePRIN1 subcommands which automatically outputnumeric data in dollars and whole cents in neat columns just like '"HRIN i USING" only simplei and quicker

The optional # specifier in LIST, INPUT and PRIN f statemei its allows the user to route I/O directly to theconsole, 16 R3-232 ports, a cassette port, RS-232 and parallel printer ports and word processing printers, not tomention video 0'ispiays and parallel keyboards.

We titer, added a continuous memory file sysiei i * the real achieven lent of OS-65U. This file systei n hasno tracks, sectors or records. The user simply allocates stoiaye capacity to each file when he creates it. (On aCD-/4 Hard Disk this can be over 72,000,000 bytes oi characters.) The user can then directly address every entry inthe file with no awareness of any block, sector or track structures. Data files can simultaneously contain strinysand pure numeric data. Files can be accessed sequentially and randomly.

_ Data fiies are handled with standard syntax including OPEN "Pile", CLOSE (File), PRIN I % (Hie) and iiMPUT% (File) and the very special INDEX (File). index is a special BASIC variable/function which specifies the fileaddress of the next entry to be input or output to that file. It you leave it alone, it operates sequentially. However,you can change it at any time to force a random access. This remarkable fui iction can be on eithei side of a bABlcequation and can take on any value within the stoiaye iai iye of ai i opei ied tile, hoi exai npie, all of the followii iy ai elegal in OS-65U:

INDEX (i) ~ INDEX(1) + 10 (Causes 10 characters to be skipped)B = INDEX (1) (Sets B = current index)

INDEX(3) = INDEX(8) 12(Equates two file positions, useful in sorts and meiyes)

iiNiDEX (5) = A*50 (Sets up a random access on an array with bO chaiacter elements)

Where (N) is a channel number or shorthand notation tor an open file, and is assiyned bythe OPEN command.

This may seem exotic but it is really super simple and incredibly powerful. Besides your tiles alwaysautomatically revert to simple sequential operation if you choose to iynore indexes.

And. finally, for those of you who would really hate to give up plain old sequential riles, we added a HNucommand. FiND searches for up to a 32 chaiacter string with optional "don't oare:: chaiacteis and willautomatically scan any file from the beginning or other specified index. The FIND command is implemented instraight line page zero 6502 code (the fastest programming technique on the fastest micio) ana seaiches tiles atover 250.000 bits per second.

Oniy three statements are needed to support a sequei itial file in a bAbic program; only foui to support arandom file. A mere seven statements are required to use an indexed sequential rile system as part otdpioyiam!

A Benchmark: A Challenger III equipped with aCD-74 running OS-bbU can access any account entry in a500 account one million byte randomly ordered ledgei file by an alphabetic key siring up to 32 chaiacteis long iniess man 40 milliseconds (typically) using a simple two level ISAM file structui e supported by a total program oi ily10 statements long. That's performance!

OS-65U also hosts multilevel passwords, elaboiate erroi checking, programmable error recovery andend user niceties like warnings and automatic recoveiy when an "off" or non-existent peripheral is accessedPrograms and fiies In OS-65U can be fully secured so that they cannot be listed copied or even aooeSseO itdesired.

OS-65U is available now for use on any uhio bcientific floppy oi naid disk based computer with i^KotRAM or more. Ai $199, it's quite possibly the oest oomputei investment you n evei make,

The Challenger HI System

• Designed for small business computing.

• Uses the 510 triple processor CPU Board, runs 6502.6800, 8080 and Z-80 programs.

• Available with up to 1 Megabyte of RAM memory; highreliability static RAM is standard; low-cost dynamic RAMis optional.

• Single- or dual-drive floppy disks store 250,000characters per surface — 3 to 4 times the storage of mini-floppies.

• Supports our ultra-fast 6-digit BASIC (see "BASIC Tim-ing Comparisons," Kilobaud, Oct. 1977, p. 23, where OhioScientific out-benchmarks all of our competitors) and ournew super-fast 9-digit business BASIC.

• Powerful operating systems support all standard I/Oports including multiple terminals, line printers, videodisplay and disk.

• Disk supports: sequential, random and index sequentialfiles.

• Applications software, including:

WP-1, a powerful disk-based Word Processor.

DMS, a unique data-base management system whichsupports continuous disk addressing of up to 250,000characters per file.

Complete business packages including AccountsReceivable, Accounts Payable, Ledger, Payroll, Inventoryand Taxes.

• Two factory-supported terminal options and two factory-supported line printer options.

• Optional 74-Megabyte hard disk for $6000. Reel-to-reelmag tape coming soon.

• Optional 16-user operating system with time share anddistributed processing capabilities.

• Optional rack mounting and rack enclosures.

• Leasing programs and maintenance contracts availablethrough many dealers. Optional nationwide field servicecoming soon.

•Challenger III systems have extremely highperformance-to-cost ratios. For example, a system com-plete with triple processor CPU, 32K bytes of static RAM, aserial I/O port, dual drive floppy disks (500K bytes of on-line storage), fully assembled, plus DOS, BASIC and ademonstration program library costs $3590 fully assem-bled.

DEALERS

The Abacus

Nili>b Rd

Berrien Springs. Ml 19103

(GIG) 429 3034

American Microprocessors

Equipment & Supply Corp.20 N Milwaukee AvePianeview H 60069|3I2| 634 0076

Computer Mail ol New York118 Madison AveNew York NY 10010(^1^) ^86 7923

Computer PowerP 0 Bo* 28193San Diego CA 92128(714| 7460064

Computer Shop (Aircom)

?m Noilolk SI

Cambridge ma 02139

(617)661 ?G7D

REPRESENTATIVES

Delaware Microsystems92 E Main SI fflNewark DE 19711|30?) 738-3700

Great Lakes Photo. Inc.5001 Easlman RdMidland mi 48640

1517)631-5461

H/B Computers217 Easi Mam SiChdfimiesville. VA 22903(804) 295-1975

Microcomp

P 0 Box 1221

Fonc Liu Lac. Wl 54935

|4I4i 922-2515

Microcomputer Workshop234 Tennyson TenWillumsville NY |42?1(716. 632-8270

Micio Computer World313 Michigan N EGrand Rapids Mi 49503IGlbl 451 8972

Small Computer Systems4450 Irimly Avenue

Sail Lake Oly HI 84120(BUI. 967-7635

Abacu* Data

P0 Box 276

Oil City, PA 16301

Associates Consultants

33 Ogtlen Ave

East Williston NY 11596

(5161 746 10??!

BRAG Microcomputers

19 Cambridge Si

Rochester NY 14607

|716| 442-5861

Byle Shop

2432 Cliesier Lane

Columbus. OH 4322'

(614)486 7761

Computer Business

PO Box 171

LaPorie IN 46350

1219) 362-5812

Custom Computer Systems.

1823 Lowry Ave Ncrth

Minneapolis MN 55411

16121588-3944

Johnson Computer

P0 Box 5?3

Medina OH 44256

(216) 725-4560

Omega Computing. Ltd

Box 220 Station P

Toronto Onl M5S 2S7

(416] 425 9200

Pan Atlantic Computer Systems, Gr

61 Darmstadt

FranklurtersJMsse 78

Wesl Germany

(08102) 3206

Secom Systems

541- > New Peach Tree Rd

Chamblee GA 30341

(4041934 3272

Small Computer Systems

3140 Waiialae Ave

Honolulu HI 96816

(8081 732 5246

Systems Engineering Enterprises

Suite 307

1749 RocKville Pike

Rockville MD 20852

(301) 468-1822

Tek-Aids. Inc.. 1513 Cram Si"Evanston. It 60202

(312| 328-0110

Total Oala Systems

125 Fairway Lane

Fort Collins. CO 80521

(303)482-6215

Tricomp. Inc

18 Alameda Square

Denver CO 80223

(3031935-1100

Yingco. Inc

2 World Trade Cnlr

Penihouse 107lh Floor

New York NV 10048

(212) 775 1184

1333 S. Chillicothe Road • Aurora, Ohio 44202(216) 562-3101

For more information contact an Ohio Scientificdealer or the factory. Be sure to specify your interestin business systems.

BYTL June 1978 27

Photo 1: The prototype for the author's IC tester. The LEDs shownwere not included in the final design of figure I.

A Programmable IC Tester

About the Author

Mark Thorson is cur-rently an undergraduate atthe University of Cali-fornia at Berkeley major-ing in neurobiology, andhas been working withdigital logic since sixthgrade. (Early efforts in-volved discrete com-ponents and incandescentlamps.)

Mark Thorson1505 Spruce StBerkeley CA 94709

The high cost of digital components canbe significantly reduced by the constructionof this simple test instrument. While com-ponents of questionable reliability have longbeen available for a fraction of their value,the experimenter has been unable to takefull advantage of them for lack of an ade-quate means of component testing. Thiscircuit, however, now offers such a meansfor the rapid and accurate screening of bar-gain components.

Conventional component testing gen-erally takes the form of either building aprototype circuit and substituting devicesuntil it works, or setting up a rig of lightsand switches and testing each gate or flipflop on the chip individually. Althoughthese procedures are sufficient for theconstruction of trivial circuits employinga small number of integrated circuits,neither is exacting enough nor fast enoughto provide the quantity or quality of partsrequired for a well stocked electronics lab.

The main weakness of both approachesis their failure to check the devices inquestion under all possible conditions ofdata. As an example, consider the 7400 quadNAND gate with the failure condition of aninternal short between the input on pin 4and the output on pin 3. If this device iseither tested in a circuit employing the quadNAND gate without using the input on pin4, or tested in a rig in which each gateis tested individually, then the device willbe passed without the failure conditionsever having been met. To be certain oftesting all possible failure modes of thisdevice, all 256 possible data conditionson the eight device inputs must be checked,a prohibitive requirement for manual testing.To this end, the circuit shown in figure 1has been designed to provide an automatic,instantaneous and exhaustive test of mostSSI and MSI components. [SSI (small scaleintegration) refers to gates, inverters, flipflops, etc, while MSI (medium scale inte-gration) refers to counters, latches, shiftregisters, etc.] The circuit operates bysending eight lines of input data to thedevice under test (DUT) and receivingsix lines of output. Upon depression of

28 June 1978©BYTE Publications Inc

4

<

■^

COC3

K

it

r>-

co

o

(O

o

CM

o

00

OU

k

£2

c111Q

COCM

pi

■

ID

X0

0

c

Circle 90 on Inquiry card.

BYTE |un» "'» 29

TO OEVICE UNDERTEST INPUTS

FROM DEVICE UNDERTEST OUTPUTS

CLK 10 II 12 13

14 15 16 17

-A-AAA0 0-AAA-~9"" 9 V 9 V 0

A 8 C D

DIN

A7A6A5A4 IC9

71

AO WE

ICIO

74

S200

ICII

74S200

ICI2

74

S200

ICI3

74

S200

1

JUT JLJT JLJT JL1T JLF £JT

"1 ic5 |ies Tics j "Hies "Hic6 ("" Tice

3 |6 JM J8 |3 6

A B C D

Alternate Memories

Signetics

FairchildIntelIntersilMMINational, Tl

82S06.82S0782S16, 82S1793411

3107

5533

653074S200

OlixF

IC47472

JT

IKfl

SWITCH J" i

12 11 7486A~~71 t 9 II 7486^

BOTH SWITCHES-MOMENTARY PUSHBUTTONS

In the circuit diagram, unused inputs are not shown. While normally these should betied high through a current limiting resistor, they may be allowed to float, with the ex-ception of the memory chip enable inputs which are tied directly to ground.

A list of alternate memories lor ICs 9 thru 14 is given here. Certain memory typeswill not cause the Go/No-Go light to remain lit following a successful program cycle.This is because some memories lock out their data outputs while being written into. Thiscan be remedied by running a test cycle after the program cycle. The Go/No-Go lightwill remain lit following the test of a known good device if the data in the memories isaccurate.

Figure 1: The author's automatic integrated circuit tester. The unit is connected by probes to the inputs of the integrated circuitunder test (up to eight inputs can be accommodated). 256 different combinations of logic levels are sent to the integrated cir-cuit, and a running comparison of up to six data outputs from the device is made with a set of results stored in memory foranother integrated circuit of the same type that Is known to be good. Any deviation from the accepted pattern causes an LED tobe lit. The unit is capable of testing both combinatorial ICs, such as logic gates, and sequential ICs, such as flip flops. A learnmode allows the tester to store the characteristics of virtually any TTL integrated circuit in memory for testing.

30

June 1978 © BYTE Publications Inc

FOUR STAPERFORMERSFORTHES-100BU

^tku.^s

Meet The North Star Family

THE NORTH STAR S-100 FAMILY—four high perform-ance products at attractive low prices. Our boards aredesigned for use in the North Star HORIZON computerand other S-100 bus computers using 8080 or Z80 proces-sors. Visit your computer store for a demonstration, orwrite for our free color catalog.

16K RAM BOARD

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

MICRO DISK SYSTEM

The North Star MDS is a complete floppy disk system withall hardware and software needed to add floppy diskmemory and a powerful disk BASIC to S-100 bus com-puters. The North Star MDS is widely considered one ofthe best designed and most complete S-100 bus products

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

Z80A PROCESSOR BOARD

The North Star ZPB brings the full speed, 4MHz Z80Amicroprocessor to the S-100 bus. Execution is more thantwice the speed of an 8080, and the ZPB operates in sys-tems both with and without front panels. The ZPB in-cludes vectored interrupts, auto-jump startup, and spacefor 1K of on-board EPROM. Kit: $199. Assembled: $259.EPROM Option — kit: $49. Assembled: $69.

HARDWARE FLOATING POINT BOARD

If you do number crunching, then this board is for you.The FPB performs high-speed floating point add, subtract,multiply and divide with selectable precision up to 14decimal digits. Arithmetic is up to 50 times faster than8080 software, and BASIC programs can execute up to10 times faster. A version of North Star BASIC is included.Kit: $259. Assembled: $359. Prices subject to change.

North Star Computers

2547 Ninth Street • Berkeley, California 94710 • (415) 549-0858

Circle 285 on inquiry card.

BYTE June 1978 37

+5 V

Grid

Number

Type

Pin

Pin

IC 1

7400

14

7

IC 2

7400

14

7

IC 3

7430

14

7

IC 4

7472

14

7

IC 5

7486

14

7

IC 6

7486

14

7

IC 7

74161

16

8

IC 8

74161

16

8

IC 9

74S200

16

8

thru

(or

IC 14

equivalent)

Table 1: Power wiring table for figure 1. See figure 1 for alternate memoryICs for IC9 thru 14.

FROM

TESTER

TOTESTER

Figure 2:circuit.

One method of hooking the tester up to a 7400 TTL integrated

■

the Test button, the binary counter drivingthe DUT input lines is cleared and theflip flop driving the Go/No-Go light is set.Upon release, the counter incrementsthrough all 256 input conditions to theDUT. Between counts, the data on the sixDUT output lines is compared with the datastored in memory, and if any mismatchoccurs, the Go/No-Go flip flop is cleared.Once the counter reaches its terminal count,the clear input to the clock oscillator flipflop is driven low, thereby inhibiting furthercounts until the Test button is hit again. Atthis time, if the Go/No-Go light has re-mained lit, the component has passed thetest. Programming is accomplished byholding the Program button down during atest cycle of a known good device. Duringthis time, data on the DUT outputs isloaded into memory between counts on theDUT input lines. Once the PROGRAMbutton is released, data in the memory isprotected by a pull-up resistor on its read/write line.

Combinatorial integrated circuits, that is,

integrated circuits such as gates or com-parators which do not contain storageelements such as flip flops, are tested byconnecting all device inputs to lines Ifj to I7and all device outputs to lines Orj to O5.Any ordering of the connections is satis-factory, because the tester will run throughall possible input conditions despite thearrangement used. Sequential integratedcircuits, however, require special consider-ation due to their internal data states. Adevice such as the 74161 4 bit binarycounter, for example, will require its clockinput to change at least 32 times faster thanits clear input to insure the completion of afull counting cycle before being cleared. Toaid in the testing of sequential integratedcircuits with several clear, preset, inhibit,and other combinatorial inputs, the clockinput has been provided which togglestwice as fast as Irj. This input is useful forconnecting to the clock input of counters,flip flops, and shift registers, but should notbe used with combinatorial devices or thecombinatorial inputs of sequential devices.

As an example of the use of the tester,consider again the 7400 quad NAND gate.This device has a total of eight data inputsand four data outputs to be connected. Anexample of one possible configuration of theconnections is shown in figure 2. It shouldbe noted that two DUT outputs are allowedto float. This is permissible, because thesame data will be present during a test cycleas when the tester is programmed. It is alsoacceptable to use less than eight DUT inputs,because the tester will still run through allpossible data conditions on the remaininginputs. Once the proper connections havebeen made, the tester is programmed by in-serting a known good device into the DUTsocket and holding the Program buttondown while momentarily depressing theTest button. If the tester has accuratelystored the characteristic output of thedevice, the Go/No-Go light will remain litfollowing the release of the Test button.The Program button may now be releasedand tests performed by inserting a ques-tionable device and depressing the Testbutton. If the Go/No-Go light remainslit upon release of the Test button, thedevice has passed.

As an example of the testing of a sequen-tial device, consider the 74161 4 bit binarycounter. An example of one possible con-figuration of its connections is shown infigure 3. Unlike the case of the quad NANDgate, the ordering of the DUT input con-nections is very important. Combinatorialinputs such as clear, load, and inhibit are

32

June 1978©BYTE Publications Inl

<f

AN INTRODUCTIONTO PERSONALANO BUSINESSCOMPUTING

HCONAY 7AKS

NEW

AN INTRODUCTION MICROPROCESSOR

TO PERSONAL

AND BUSINESS

COMPUTING

Rodnay Zaks - Austin Lesea Ref C200

$6.95

This introductory text is aimed at answering the

basic question: "What do I need in order to...?"

It covers applications, peripherals, existing systems,

how to assemble them. How to choose. The real cost of a

system. The software. Is a floppy sufficient for a mailing list?

Build or buy?

A MICROPROGRAMMEDAPL IMPLEMENTATION

$25.00

Rodnay Zaks 320 pp., ref Z-10

The complete design of a real APL interpreter, including theory,

parsing, operators, dynamic block management, actual listing.

$2.95

110 pp., pocket-size, ref X1

ALL THE DEFINITIONS AND ACRONYMS

A complete dictionary, PLUS: part numbers,signals, for S100. RS232, IEEE 488, addresses.

SELF-STUDY COURSES

Each course includes a book plus 2 cassettes(can be played on any cassette recorder athome, in the car, at the office.)

SI-INTRODUCTION TO MICROPROCESSORS

2'/j hours. Basic introductory course.S2 PROGRAMMING MICROPROCESSORS

2VS hours. Basic introduction to programming.

$29.95$29.95

HERE IS WHAT THEY SAY

"Microprocessor Interfacing Techniques" is an exceptionalbook. There is nothing like it on the marketplace. It meets areal need. Jeffrey McKeever, Chairman of the Board,Phoenix Group Inc.; President, Micro-Age; Publisher,Byte-Shopper

"Microprocessors" is phenomenal. There is nothing in the in-dustry which explains computers for people who understandelectronics, but not computers. It is excellent. I qualify theauthor's style as phenomenal. I am extremely pleased with it.After reading it from cover to cover, I recommended it to tenfriends who went to the BYTE SHOP and bought them out. I willbe more than happy to tell anyone. Rick Prine, Rocklin, Ca.

MICROPROCESSORS

FROM CHIPS TO SYSTEMS

Rodnay Zaks

420pp, 150 illustr, ref C201 $9.95

Our Bestseller. This book is the result of theauthor's experience in teaching microprocessorsto more than 2000 persons. It presents a com-prehensive introduction to all the aspects ofmicroprocessors, from the components to theassembly of a system. The difficulty of eachchapter is graduated from the basic conceptsto the actual technical details. It is read bystudents, technicians, managers, engineers,educators, doctors and by all those who wish tounderstand rapidly and efficiently all the important aspectsof microprocessor use, selection, or application.CONTENTS: Fundamental Concepts... Internal Operation of aMicroprocessor... System Components... Comparative Micro-processor Evaluation... System Interconnect... MicroprocessorApplications... Interfacing Techniques... Microprocessor Pro-gramming... System Development... The Future...

After reading "Microprocessors, from chips to systems" byRodnay Zaks, I was very impressed with the simple yetthorough approach which Mr. Zaks has taken in explaining themicroprocessor. Bally, Manufacturing Corporation has begunits entry into the personal computer field, and, due to thegreat amount of information that is needed by our servicepeople, I feel this book should be an essential part of our ser-vice technician's libraries. Richard Shultz, Bally, ConsumerProducts Division

I read both books, and I learnt more from them than anything Ihave read. Gavin Craig, General Electric Corp.

MICROPROCESSOR

INTERFACING

TECHNIQUES

Austin Lesea, Rodnay Zaks420 pp, 320 illustr, ref C207 $9.95

FROM KEYBOARD TO FLOPPYbasic concepts and techniquia complete microcomputer sy:in detail, with ov§^320including teldisplay

MICROPROCESSOR

INTERfACING

TECHNIQUES

All the

bling

ented

iagrams,

sk, CRT

One chapter

'dards, including

chapter to testing

. Assembling the Central ProcessingWutput... Interfacing the Peripherals... Analog' Standards... Case-study: a 32-channel Multi-' Trouble-Shooting... Conclusion-Evolution.

DISTRIBUTION/TRANSLATION INQUIRIES INVITED

TO ORDER

• BY PHONE: call (415) 848-8233BankAmericard/Mastercharge accepted

• SHIPPING: no charge when paymentincluded.

ADD: $1.00/book for fast shipping.

• TAX: in California, add sales tax.

• OVERSEAS:SYBEX-EUROPE, 313 rue Lecourbe75015 - PARIS, France Tel:(1)8282502

SYBEX

2020 Mllvla St.Berkeley,Calif 94704

| NAME

POSITION

! COMPANY

■ ADDRESS

| CITY

STATF/7IP

! □ Send me

DC201

DC207 □ Other:

! □ Payment enclosed □ Bill company □ Bill me

ADD $1.00 / BOOK FOR FAST SHIPPING

| □ charge m

y □ Visa

□ Master charge

i □ Number

Fxp date

i Signature

□ Send catalog.

Circle 356 on inquiry card.

BYTE |unc 1978 33

we're looking for

someone serious about

personal computing!

8-bit? 16-bit? The better ofthe two? The question is ele-mental - hardly worth con-sideration. What matters isyour "machine's" CPU, its"architecture," and most im-portantly its instruction set.That's where the power isand that's exactly why we'retelling you about the KD11-F.

The KD11-F is the CPU wechose for the Heath Hll. It'sbuilt by DEC, is the sameCPU that's the cornerstoneof the popular LSI-11 family,and is the main reason our16-bit is the most powerful16-bit in its price class! Bellsand whistles? Hardly!

Fact: The KD11-F has eightregisters. Six of which aregeneral-purpose and non-dedicated! That alone meansvirtually unlimited program-mer flexibility!

Fact: Most computers inthe 16-bit class use threetypes of instructions (mem-ory reference, operate or ac-cumulator control, and I/Oinstructions). The KD11-F ac-complishes all data manip-ulations with a single set ofinstructions - which resultsin very efficient operation!

Fact: The KDll-F's PDP-11instruction set has the most

powerful repertoire of in-structions of any computerin its price class.

What it all boils down tois that the Heathkit Hllgives you fantastic flexibili-ty, unparalleled high-speedprogram execution, andunmatched performance!

Our Hll CPU isn't for every-one. It's for someone seriousabout computing some-one like you!

__ HvalllKlI

Compul

Heathkit Catalog

Read about nearly

400 money-saving,

fun-to-build

electronic kits.\ Use coupon to sendior'Syour mail order catalog„ . or bring coupon to ag^ Heathkit ElectronicCenter for your catalog.

Schlumberger

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

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

Name.

City

CP-149

Zip

Send the coupon or visit theHeathkit Electronic Centernearest you today!

Units of Schlumberger ProductsCorporation. Retail prices on someproducts may be slightly higher.

ARIZONA- Phoenix, 2727 W. Indian School Rd.

(602) 279-6247.

CALIFORNIA - Anaheim, 330 E. Ball Rd.

(714) 776-9420; El Cerrlto, 6000 Potrero Ave.

(415) 236-8870; Los Angeles, 2309 S. Flower St.

(213) 749-0261; Pomona, 1555 Orange Grove Ave. N.

(714) 623-3543; Redwood City, 2001 Mlddlefield Rd.

(415) 365-8155; Sacramento, 1860 Fulton Ave.

(916) 486-1575; San Diego (La Mesa), 8363 Center Dr.

(714) 461-0110 San Jose (Campbell), 2350 S. Bascom

Ave. (408) 377-8920; Woodland Hills, 22504 Ventura

Blvd. (213)882-0531.

COLORADO- Denver, 5940 W. 38th Ave.

(303) 422-3408.

CONNECTICUT- Hartford (Avon), 395 W. Main St(Rle. 44) (203) 678-0323.

FLORIDA- Miami (Hialeah), 4705 W. 16th Ave.(305) 823-2280; Tampa, 4019 West Hillsborough Ave.(813) 886-2541.

GEORGIA- Atlanta, 5285 Rosweli Rd. (404) 252-4341.ILLINOIS - Chicago, 3462-66 W. Devon Ave.

(312) 583-3920; Chicago (Downers Grove), 224Ogden Ave. (312) 852-1304.

INDIANA- Indianapolis, 2112 E. 62nd St.(317) 257-4321.

KANSAS- Kansas City (Mission), 5960 Lamar Ave.

(913) 362-4486.

KENTUCKY- Louisville, 12401 Shelbyville Rd.

(502)245-7811.

LOUISIANA- New Orleans (Kenner), 1900 Veterans

Memorial Hwy. (504) 722-6321.

MARYLAND- Baltimore, 1713 E. Joppa Rd.

(301) 661-4446; Rockvllle, 5542 Nicholson Lane

(301) 881-5420.

MASSACHUSETTS- Boston (Peabody), 242 Andover

St. (617) 531-9330; Boston (Wellesley), 165 Worcester

Ave. (Rte. 9 just west of Rt. 128) (617) 237-1510.

MICHIGAN- Detroit, 18645 W. Eight Mile Rd.

(313) 535-6480; E. Detroit, 18149 E. Eight Mile Rd.(313) 772-0416.

MINNESOTA- Minneapolis (Hopkins), 101 ShadyOak Rd. (612) 938-6371.

MISSOURI - St. Louis, (Bridgeton), 3794 McKelvey

Rd. (314)291-1850.

NEBRASKA- Omaha, 9207 Maple St. (402) 391-2071.

NEW JERSEY- Fair Lawn, 35-07 Broadway

(Rle. 4) (201) 791-6935; Ocean, 1013 State Hwy. 35

(201)775-1231.

NEW YORK - Buffalo (Amherst), 3476 Sheridan Dr.

(716) 835-3090; Jericho, Long Island, 15 Jericho

Turnpike (516) 334-8181; Rochester, 937 Jefferson

Rd. (716) 244-5470; White Plains (North White Plains),

7 Reservoir Rd. (914) 761-7690.

OHIO- Cincinnati (Woodlawn), 10133 Springfield

Pike (513) 771-8850; Cleveland, 5444 Pearl Rd.

(216) 886-2590: Columbus, 2500 Morse Rd.

(614) 475-7200; Toledo, 48 S. Byrne Rd. (419) 537-1887.

PENNSYLVANIA- Philadelphia, 6318 Roosevelt Blvd

(215) 288-0180; Frazer (Chester Co.), 630 Lancaster

Pike (Rt. 30) (215) 647-5555; Pittsburgh, 3482

Win. Penn Hwy. (412) 824-3564.

RHODE ISLAND- Providence (Warwick), 558

Greenwich Ave. (401) 738-5150.

TEXAS- Dallas, 2715 Ross Ave. (214) 826-4053;

Houston, 3705 Westheimer (713) 623-2090.

San Antonio, 7111 Blanco Rd. (512) 341-8876

VIRGINIA-Alexandria, 6201 Richmond Hwy.

(703) 765-5515; Norfolk (Virginia Beach), 1055

Independence Blvd. (804) 460-0997.

WASHINGTON- Seattle, 505 8th Ave. North

(206) 682-2172.

WISCONSIN - Milwaukee, 5215 W. Fond du Lac

(414) 873-8250.

34

BYTE June 1978

Circle 160 on inquiry card.

put on the more slowly toggling linesI4 to I7, and the sequential inputs are puton the faster lines In, to I3. This examplealso illustrates the use of the clock linefor the clock. It should be noted that thereis a minimum separation of four linesbetween the clock and any combinatorialinput. As previously stated, this is necessaryto allow the counter to complete a fullcounting cycle. Strictly speaking, the pre-setting inputs to the counter are also com-binatorial inputs, but they do not interferewith the counting cycle, so they may beplaced within four lines of the clock. Theyare, however, synchronous inputs and assuch may not be placed on a DUT inputline which toggles faster than the clock.Also, while the ordering of the DUT inputsis important (for reasons just explained),there are no restrictions whatsoever on theordering of the DUT output connections.Connections between the integrated circuittester and the DUT socket should be madevia banana plugs, matrix switches, or otherforms of connection which readily permitmodification. The DUT socket itself shouldbe a zero insertion force (ZIF) type socket(Texlool or equivalent).

Expansion of the testing capacity of theunit can be achieved by extending thecounter length or the memory size, but ithas been my experience that the com-bination of eight inputs and six outputshas proven ideal for testing most standardTTL components. In my first prototype(sec photo 1), a single step feature wasprovided by switching in a debounced push-button switch in place of the oscillator, andplacing LED indicator lights on the DUTinputs and on the memory data outputs.This made it possible to examine thememory once it had been programmed andverify that the tester was really doing whatit was supposed to do. This feature wasalso necessary because the original versionhad to be programmed manually, but the 10to 15 minutes required to program the testerfor even a device as simple as a quad NANDgate made the advantages of autoprogram-mability quite apparent. Nevertheless, thesingle step feature may prove useful to thehobbyist who may wish to use this instru-ment as a logic analyzer. Other featuresthat may prove useful would be the additionof low power TTL buffers on the DUToutputs to permit testing of CMOS inte-grated circuits, miniaturized constructionfor portable operation, and installationof an ammeter in series with the DUTsocket power input pin to provide a measureof power dissipation."

+5V

FROMTESTER

TOTESTER

Figure 3: Tester hookup for a TTL 74161 integrated circuit. Note the use ofthe clock line coming from the tester. This is to ensure that the integratedcircuit receives clock signals of the proper speed relative to the other testinput lines.

To ^-.FINALLY, A

1%£.W> YWITHBTTE!

TELEPHONE DIALER$9.95 postpaid

6800 AUTOMATICPROGRAM

Have your 6800 system dial your phone • Usesonly 5 external components • Stores 650 variablelength phone numbers • Operates in less than 1Kbytes of memory

Includes: Paper tape in Mikbug* format and ob-ject code • Circuit diagram and instructions• Instructions for adapting to other 6800 systems

6800 TELEPHONE ANSWERING DEVICEPROGRAM $4.95 postpaid

Have your 6800 system answer your phone andrecord messages automatically. Compatible withany 6800 system.

Includes: Assembly listing and object code • Cir-cuit diagram and instructions

Write to: SOFTWARE EXCHANGE2681 PETERBOROW. BLOOMFIELD, MICH. 48033

Mikhup" is a registered trademark of Motorola Inc.

Circle 325 on inquiry card.

June 1978 © BYTF. Publications Inc

35

COOK BOOK • ASSEMBLER • EDITORMONITOR • POCKET GUIDE • TAPESUNDERSTANDING MICROCOMPUTERSCOOK BOOK • ASSEMBLER • EDITORMONITOR • POCKET GUIDE • TAPESp^lST/NDING MICROCOMPUTERS; • ASSEMBLER • EDITORPOCKET GUIDE • TAPESi^NG MICROCOMPUTERS^"SSEMBLER • EDITORJKET GUIDE • TAPES^MICROCOMPUTERS

I'

SeelW. 8o««» »S& W«! „

' ts How to maniP" General pur

d inches ««$$$&. ^!routines. OrdfV goo,

Order your SCELBI Personal Computer Books and Tapes today! They are"must" items for your collection. And, they make ideal special occasion giftsfor that computer buddy too!

Prices shown for North American customers. MasterCharge, VISA, Postal and Bank Money Orders pre-ferred. Personal checks delay shipping up to 4 weeks.Pricing, specifications, availability subject to changewithout notice. IMPORTANT! Include 750 postage/handling for each item delivered by U.S. Mail BookPOSt Office BOX 133 PP STN, Department B, MilfOrd, CT 06460 Rate; or $2 for each item shipped First Class or UPS.

mix I COMVlilERCONIULflNft INC.

BYTE June 1978

SCELBFS8080

STANDARDASSEMBLER

s

JCEUI CIIPI1IIClIJtlTIM IIC.

01 r"n and skill to Vout „

your computer.

Scelbi's '8080' Standard Assembler assem-bles programs written in symbolic languagefor '8080'. Describes operation of assembler.Detailed discussions of all major routines.Contains 2 completely assembled listings —hexadecimal and octal. Operating instruc-tions. Even includes routine for loadingprograms produced by the assembler. Allmemory references are labeled; can re-assemble to reside in ROM. (Some RAMrequired) $19.95. Optional object code onpunched paper tape, specify 8080SA-OPT:$10.00. Optional commented source listingon punched paper tape, specify 8080SA-SPT:

$39.00.

Understanding Micro-Computers and SmallComputer Systems. A

profusely illustrated,easy-reading "must"book explaining funda-mental concepts behindoperation of microcom-puters in simple English.Gives extra knowledgefor reading and understanding computer maga-zines and manufacturers' literature. Makes youfeel "at home" around computers. Accepted asthe standard for the neophyte, you must own this300-page no-nonsense, easy-reading text. Includessimple-to-use glossary of key microcomputer-oriented words. Order now. Hard cover: $14.95.Soft cover: $9.95.

SCELBI'S8080

STANDARDEDITOR

Kll.lt CIIPITH

i cmsiuirc me.

Scelbi's '8080' Standard Editor is an efficient

way to edit text when preparing programsource listings or other text material.Operates in 2 modes: Text Entry and Com-mand. Memory references labeled for easyreassembly into any general area of memory;e.g. reassemble to reside in just IK ofROM. (Some RAM required) $12.95.Optional object code on punched papertape, specify 8080ED-OPT: $6.00. Optionalcommented source listing on paper tapetoo. Specify 8080ED-SPT, $20.00.

SCELBFS8080

STANDARDMONITOR

kiui tumii

I CHIHTIIC tIC.

Scelbi's '8080' Standard Monitor. Describes

"Monitor Control" package to control oper-ation from external "keyboard". Routines toexamine and modify memory locations, CPUregisters, continuous 2-point "bug" statusreport, control bulk storage, I/O devices.And more. $9.95. Optional object code onpunched paper tape, specify 8080SM-OPT:$5.00. Optional commented source listingon punched paper tape, specify 8080SM-SPT: $15.00.

THE

•anacrppoawnmEPiS

RXWET ;

DUDE

The '8080' Pro-grammer's Pocket

Guide. A compact3 x AV2", ever-ready, instantreference foroctal or hexadecimal codes, thatexplains instruction set in detail.Order your copy today. Keep onein your pocket. One near yourcomputer. A "must"! Only$2.95 each.

Circle 370,

,nQUiry

Card.

ADVANCE NOTICE!!!

Watch for the all new

Scelbi's First Book of

BASIC Programs!

Coming soon!

Want to be on Scelbi's exclusive

mailing list? Want to know about

upcoming Scelbi Books? Don't

use the "BINGO" Card — but

write us DIRECTLY. It identifies

you as a "truly interested"

customer who is worthy of

special handling!

^ n ,„ne ,978

37

Natural Language Processing

and Small Systems

Harry Tennant1001 W Oregon #1Urbana IL 61820

Introduction

What can possibly be said about the useof natural languages, that is the languagespeople use, with small systems? Whereresearch is done on natural language process-ing, it is done on the largest computers avail-able. To many computer scientists, theproblem of enabling computers to under-stand natural languages at a reasonable levelof competence is beyond the current tech-nology. Consider what are probably the twobest natural language processors yet pro-duced by computer scientists: WilliamWoods' LUNAR system which answeredquestions about rocks brought back fromthe moon, and Terry Winograd's systemwhich manipulated blocks on a table inresponse to English commands; both arequite large programs. LUNAR uses one taskwith 256 K 36 bit words to discover themeaning of the user's query, then usesanother task of 256 K words to answer thequestion. One question could take fromthree to 20 seconds to answer. Winograd'ssystem did not need the quantity of datathat Woods' system needed, but it stillrequired 60 K words of 36 bits to oper-ate in its limited world, consisting of afew blocks on a table. These are just twoexamples of the many natural languageprocessing projects which have been con-ducted in recent years. These two (fromthe early 1970s) and nearly all the otherssince then share the property that theyare large projects done on large machines

using large amounts of memory. So whatcan possibly be said about natural languageprocessing and small systems?

The small system user is severely limited:he or she has comparatively little memoryto work with, few languages to choose from(and those languages are not particularlysuited to the needs of natural languageprocessing), and usually few aids to softwaredevelopment, such as secondary storage,editing facilities, and debugging facilities.But among small systems users, there is agrowing interest in the application areas ofartificial intelligence: intelligent game play-ing, math, science and engineering aids,robotics, and natural language processing.In this article the general problems ofcomputer based understanding of naturallanguage are discussed briefly, and afew techniques that can be used on smallsystems to do a limited amount of naturallanguage processing are presented.

Attempts have been made since nearlythe dawn of computer history to make itpossible for computers to understand thelanguages of people. It began as translationbetween natural languages, for example,from Russian to English. That kind of workwas not successful. Later, research movedinto the areas of natural language query ofdata bases and the study of the structure ofhuman thought and memory through themodelling of human language behavior oncomputers. This is the work that is beingdone today. It looks promising, but it isstill too early to tell if the work willactually provide users with the ability tocommunicate their thoughts to computers asefficiently as humans communicate withone another.

38

June 1978 OBYTL Publications Im

GET THE 9& LOW DOWN BEFORE YOU BUY

SO YOU WANT TOBUY A COMPUTER??

This new book presents an objective look at the top 24 micro systems soldthroughout the world.

It discusses the Pros and Cons of each system in No Uncertain Terms and takes astraightforward look at the micro computer industry as it relates to YOU.

Written especially for the layman in a language he can understand. Profit from themistakes of others.

Includes hundreds of references.

Table of Contents

1 . Introduction

2. Don't get hung up on the chips

3. Which category do you fit into

4. Now — About the Hardware

5. Peripherials that plug in?

6. What? No Software!

7. Helpful Suggestions before spending money

8. Addresses

$4.50 per VolumeVolume discounts available

SCIENTIFIC RESEARCH

P.O. Box 490099-BKey Biscayne, Florida 33149

Phone Orders Call 800-327-6543

Add $1 handling, all domestic shipmentssent U.P.S. except APO and P.O. Boxwhich go parcel post. Foreign orders add$4 for air shipment and make payable inU.S. funds.

BYTL June 1978 39

Natural Language Understandingon Computers

A conversation between two humanscould proceed something like this:

Sam: Joe, how's your micro coming?Joe: OK. I've moved on to the video

cards.Sam: When did you finish the cassette

interface?Joe: Last week. It took long enough for

the chip to come.Sam: Yeah, that's why I always deal with

the fastest companies.Joe: What do you think of the new

video timing generator?Sam: It will save some board space and

maybe some money, too.

We do not know much about Joe andSam, but we do know from this conversationthat they both know something about micro-processors. We know that Joe is building oneand that Sam knows quite a bit about it.When asked how his micro is coming, Joethought of his computer, the problems he'shad on it, the last section that he has beenworking on, the sections that have alreadybeen built ... in other words, a great deal ofinformation about his computer came tomind. Joe then thought of what Sam knewof the computer, and chose a relevant pieceof information that Joe thought Sam did notknow, and said that he was working on thevideo section. Now, Sam knows a lot aboutthe computer, too. He is thinking about itjust as Joe is. And so the conversation pro-ceeds. Both Joe and Sam know a greatdeal about the computer. Both know aboutthe problems of building a microprocessor,parts availability, etc. Their conversation isshort, it uses few words, but it manipulatesvery large information structures in each oftheir minds as the conversation takes place.The conversation is not just a trickle ofwords between Joe and Sam, but it is mainlyan activity inside their brains involving agreat deal of information. The trickle ofwords is not what is really going on, it justtriggers what is going on. The real activity ishappening in the minds of Joe and Sam.

Now, what about a conversation with acomputer? If it were to happen as the con-versation above did, the computer wouldneed to know a lot about the microcompu-ter that is being built. In other words, thecomputer would need knowledge very muchlike Joe's and Sam's. It would have to havesome way of representing information aboutmicrocomputers: what they are made of;how they are built; the particular micro-computer being discussed; its state of com-pletion; and so on. In addition to this, there

must be some way for the computer to dis-cover what the words in the conversation arereferring to. How does it know that the con-versation is about microcomputers, forinstance? The word "micro" could refer toa microbiology program. As if that were notenough, let's say that the computer didinterpret the first question correctly, didhave information about the microcomputer,and decided on something to tell the ques-tioner. It then has the task of presenting theinformation to the questioner in a form thathe will understand. Add to this problem thathumans converse on a wide range of topics,and learn about new topics without even try-ing, and the problem of enabling a computerto converse like a human becomes a largeproblem indeed. A full solution to the prob-lem is a long way off, and quite possibly willrequire hardware beyond what is availabletoday (a HAL 9000, perhaps?). But there aremany steps toward natural language process-ing that can be done without a HAL 9000and without 30 years of research anddevelopment.

As mentioned above, there are three mainproblem areas in natural language processing:

1. Representation of knowledge

2. Associating words with ideas

3. Presenting ideas

The problem of presentation of ideas by acomputer will not be considered explicitly.Representation of knowledge and associatingwords with ideas will be considered in thenext sections.

Representation of Knowledge

Before we approach the problem of repre-senting knowledge on a computer, it mayhelp to decide how to represent knowledgeon a piece of paper. The first thing to decideis exactly what we want to represent.

Consider the microcomputer systems infigure 1. If we want to be able to conversewith a computer about such systems, weneed some way of storing what is knownabout them. Some of the things we knowabout System 1 are:

1. It has an 8080 microprocessor.

2. It has 1 K of read only memory.

3. It has 2 K of programmable memory.

4. Its only output is lights.

5. Its only input is a keyboard.

We know the following about System 2:

1. It has an 8080 microprocessor.

2. It has 1 K of read only memory and1 K of programmable memory.

3. It has a scale as an input device (it is adigital scale).

4. It has a small keyboard as input.

40

lime I978SBYTE Publications ln<

Rackets orRacquets?

Software systems fromTSC serve —whetheryour racket is businessor pleasure. TSC'ssoftware is designedfor business andindustrial uses as wellas for recreation. Offthe job or at work, TSCsoftware servesyour needs.

Assembly Language Programs

(Includes Source Listings)

With Object Code Cassette

SL68-5C 6800 Space VoyageSL68-24C 6800 Text Editing SystemSL68-26C 6800 Mnemonic

AssemblerSL68-29C 6800 Text Processing

System

$18.95$30.45

$30.45

$38.95

With Object Code Paper Tape

SL68-24P 6800 Text Editing System $31.50SL68-26P 6800 Mnemonic

AssemblerSL68-29P 6800 Text Processing

SystemSL80-10P 8080 Text Editing SystemSL80-1 IP 8080 Text Processing

System

$31.50

$40.00$37.50

$41.00

Cassettes are in the Kansas City Standardformat. Many other programs areavailable. Send 25C for a completecatalog.

Technical SystemsConsultants, Inc.

Box 2574

W. Lafayette. Indiana 47906317-423-5465Specialists in Software & Hardware for Industry & the Hobbyist

Circle 370 on inquiry card.

To Order: Include 3% postage, $ 1.00handling on orders under $10.00, andIndiana residents add 4% sales tax.Check your dealer!

TSC Monthly Feature:

Disk Based 6800 Software

Now TSC software is available on disk. The TextEditing System. Mnemonic Assembler, and TextProcessing System have been adapted to rununder the FLEX disk operating system found onthe Southwest Technical Products Corp. mini-disksystem. All three systems work with named files.A single file may be as large as the disk eventhough your RAM filespace is limited Thissoftware gives your micro the power of the bestprogram development or word processingsystems.

SL68-24D 6800 Text Editing System $31.50

SL68-26D 6800 Mnemonic Assembler $31.50

SL68-29D 6800 Text Processing System $40.00

H\ IE |unc 1978

41

Figure i: System 1 andSystem 2 diagrammed ascomponents connected toa common bus.

5. It has as output a display of decimaldigits.

The system can be represented hierarchi-cally (in outline form) as:

System 1

1. Processor8080

2. Memory

1 K read only memory

2 K programmable memory

3. OutputLights

4. InputKeyboard

System 2

1. Processor8080

2. Memory

1 l< read only memory

1 l< programmable memory

3. InputScaleKeyboard

4. OutputDecimal display

Now suppose we want to use this database to answer questions about System Iand System 2. (Note that a data base likethis could be extended to include manyother similar systems. It can be extended toas many as memory will allow. But, considerhow trivial it is in detail and breadth com-pared to a human's knowledge. For thisreason, one cannot expect the computer torespond with anything like the intelligenceof a human. The relevant questions are I)is there enough data in the data base to

8080

1 K READ ONLY MEMORY

2 K PROGRAMMABLE MEMORY

LIGHTS

KEYB0AR0

8080

IK READ ONLY MEMORY

1 K PROGRAMMABLE MEMORY

SCALE

KEYBOARD

DECIMAL DISPLAY

make it worth doing and, 2) is the Englishinterface to the data good enough to warrantmaking it.) When asked what the processoris for System 1, we consult our outlineof System 1, look under "Processor,"and reply that it is an 8080. When askedwhat the output for System 2 is, we consultthe outline for System 2, look under theoutput to find "Decimal display," and wereturn that. When asked about the inputs toSystem 2, we respond that they are a scaleand a keyboard. But note that a more com-plicated problem arises if we ask what kindof processor is in the system that uses thescale. First we must find all systems thatuse scales (we may not even realize that ascale is an input device). For all the systemsusing scales, we must then find what theirprocessors are, and return that information.This is not a problem if we have only twosystems, as in the example. But if we hadmany systems whose outline descriptionsfilled many sheets of paper, searching allthe descriptions for the ones that use scalescould be a major effort. One of the advan-tages of natural language is that items can bereferred to by their descriptions instead oftheir names. We referred to System 2 not byits name, but by its description, ie: thesystem that uses a scale. Because this is suchan important feature of natural language, itis very important to be able to deal with it.One way of doing so is to make a new set ofoutlines for each of the items mentioned inthe original outlines. For example:

8080

1. Processor in

1. System 1

2. System 2

1 K Read only memory1. Memory in

1. System 1

2. System 2

1 K Programmable memory

1. Memory in1. System 2

2 K Programmable memory

1. Memory in1. System 1Lights

1. Output of1. System 1Scale

1. Input of1. System 2Keyboard1. Input of

1. System 1

2. System 2Decimal display

1. Output of1. System 2

42 |uiic I978 0BYTE Publications Inc

TARBELL SETS STANDARDS

For Hobbyists and Systems Developers

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

TARBELLCASSETTE INTERFACE

Plugs directly into your IMSAI or ALTAIR*

Fastest transfer rate: 187 (standard) to 540 bytes/second

Extremely Reliable—Phase encoded (self-clocking)

4 Extra Status Lines, 4 Extra Control Lines

37-page manual included

Device Code Selectable by DIP-switch

Capable of Generating Kansas City tapes also

No modification required on audio cassette recorder

Complete kit $120, Assembled $175, Manual $4

Full 6 month warranty on kit and assembled units

TARBELL FLOPPYINTERFACE

• Plugs directly into your IMSAI orALTAIR* and handles up to 4standard single drives in daisy-chain.

• Operates at standard 250K bitsper second on normal disc formatcapacity of 256K bytes.

• Works with modified CP/M*Operating System and BASIC-ECompiler.

• Hardware includes 4 extra ICslots, built-in phantom bootstrapand on-board crystal clock. UsesWD 1771 LSI Chip.

• Full 6-month warranty and exten-sive documentation.

• PRICE:Kit $190 Assembled $265

TARBELL

PROTOTYPE

BOARD

Model 1010

DISC

•HW 111 IU. !

CP/M with BASIC-Eand manuals: $100

Compatible Disc Drives

Ask about our disc drives priced as low as $525.

Gold plated edge pins

Takes 33 14-pin ICs or

Mix 40-pin, 18-pin, 16-pin and

14-pin ICs

Location for 5 volt regulator

Suitable for solder and wire wrap

ALTAIR/IMSAI compatible

Price: $28.00

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

'ALTAIR is a trademark/tradename of M1TS, Inc.CP/M is a trademark/tradename of Digital Research

20620 South Leapwood Avenue, Suite PCarson, California 90746

(213) 538-4251

Circle 360 on inquiry card.

BYTE Juno 1978 43

2K

PROGRAMMABLEMEMORY

DECIMALDISPLAY

Figure 2: Simple semantic net. This net represents the connections of the components of System I and System 2. Each com-ponent is represented by a node. The nodes are related to one another through labelled links. Notice that the names chosenfor the links and nodes are largely at the discretion of the net designer.

Now, think again about representing alarge number of systems in this way. It willtake more memory, but it will provideaccess to items such as scale or 8080. If ahundred systems are represented on sheetsof paper, we would probably have an indexor table of contents to direct us to theappropriate page to find the outline we seek,thus speeding up the response. I have notforgotten that in many small systems thetrade-offs between memory and processingtime often are in favor of saving memoryspace. What is presented here is intended toillustrate the trade-offs, not to make thedecisions for the user.

It is easier to see this type of representa-tion when it is presented in graphic form.The representation used in figure 2 is calleda semantic net. Each outline is represented

by a node and the relationships betweennodes are represented by directed labelledarcs. The idea of a semantic net is that nodesare entities and arcs are relations betweenentities. The net shown in figure 2 is not theway most natural language researchers wouldrepresent the information about our two sys-tems. For example, "System 2" is the nameof something, it is not the thing itself. An8080 is a part of the thing whose name is"System 1," and that thing that is called an8080 has the function of "Processor" in thething called "System 1." A diagram ofrepresentation like this is shown in figure 3.It is more explicit and more correct thanthe representation of figure 2, but is harderto build, more difficult to interpret, andrequires more memory to represent.

Semantic nets, in whatever form one

44

lime 1978 vBYTE Publications Inc

s"'X Si :■;:,!<, J?"""

JllFi

ha

COMPUTER SOFTWARE

*A

SM/t

*ti.

''■>

For Homeowners, Businessmen, Engineers, Hobbyists, Doctors, Lawyers, Men and Women

^»~>-**•

We have been in business for over nine years building a reputationfor providing a quality product at nominal prices — NOT what thetraffic will bear. Our software is:

■ as most programs allow for multiple modes of

ScB

>iff»

• Versatile -

operation.

• Tutorial — as each program is self prompting and leads youthrough the program (most have very detailed instructionscontained right in their source code). ■

• Comprehensive — as an example our PSD program not onlycomputes Power Spectral Densities but also includes FFT's,Inverse-transforms, Windowing, Sliding Windows, simultaneousFFT's variable data sizes, etc. and as a last word our software is:

• Readable — as all of our programs are reproduced full size forease in reading.9

• Virtually Machine Independent — these programs are writtenin a subset of Dartmouth Basic but are not oriented for any one

particular system. Just in case your Basic might not use one oftpurparticular system. Just in case your Basic might not use one ofour functions we have included an appendix in Volume V whichgives conversion algorithms for 1 9 different Basic's; that's right,just look it up and make the substitution for your particularversion. If you would like to convert your favorite program in toFortran or APL or any other language, the appendix in Volume IIwill define the statements and their parameters as used in ourprograms.

Business Ef Per

sonal Bookkeep

ing Programs

BondBuildingCompoundCyclicDecision 1Decision 2DepreciationEfficientFlow

InstallmentInterestInvestmentsMortgage- OptimizeOrderPert TreeRateReturn 1Return 2Schedule 1

Vol. I

Games & Pictures

Animals FourAstronautBagelBio CycleCannonsCheckersCrapsDogfightGolfJudyLine UpPonyRouletteSky DiverTank

Teach Me-Pictures .,A. Newman-J.F.K.LinusMs. SantaNixonNoel NoelNudePeacePolicemanSanta's SleighSnoopy' Virgin

Vol. II

Binomial

Ch'i-Sq.

Coeff

Confidence 1

Confidence 2

Correlations

Curve

Differences

Dual Plot

Exp-Distri

Least Squares

Paired

Plot

Plotpts

Polynomial Fit

Regression

Stat 1

Stat 2

T-Dtstribution

Unpaired

Variance 1

Variance 2

XY

APPENDIX A

Beam

Conv.

Filter

Fit

Integration 1

Integration 2

Intensity

Lola

Macro

Max. Min.

Navaid

Optical

Planet

PSD

Rand 1

Rand 2

Solve

Sphere Trian

Stars >"

Track

Triangle

Variable

Vector

Vol. Ill

Billing

Inventory

Payroll

Risk

Schedule 2

Shipping

Stocks

Switch

r

Vol. V

Andy Cap

Baseball

Compare

Confid 10

Descrip

Differ

Engine

Fourier

Horse

Integers

Logic

Playboy

Primes

Probal

Quadrac

Red Baron

Regression 2

Road Runner

Roulette

Santa

Stat 10

Stat 11

Steel

Top

Vary

Xmas

APPENDIX B

Maintains Company accounts and generates financial reports.Includes routines fori Pyrl. Inv. Depr, A/R, A/P.

Vol. IV

Bingo

Bonds

Bull

Enterprise

Football

Funds 1

Funds 2

Go-Moku

Jack

Life

Loans

Mazes

Poker

Popul

Profits

Qubic

Rates

Retire

Savings

SBA

Tic-Tac-Toe

Over 8596 of our programs in the first five volumes will execute in most8K Basic's with 16K of free user RAM. If you only have 4K Basic,because of its lack of string functions only about 60% of our programsin Volumes I through V would be useable,, however they shouldexecute in only 8K of user RAM.

For those that have specific needs, we can tailor any of our programsfor you or we can write one to fit your specific needs.

rug* • * \(n.3*.form

lUM*

jm*

Vol. I — $24.95BookkeepingGamesPictures

Vol. Ill — $39.95Advanced BusinessBilling, InventoryInvestmentsPayroll

Vol. V —$9.95Experimenter'sProgram

Vol. VII — $39.95

Professional

Programs

Designed to challenge the average player, fairly comprehensive.Great fun for all, offers a unique opportunity for beginners in need ofan opponent.

For Doctors and Dentists alike, a complete patient billing systemwhich also permits the maintaining of a patient history record.

Wordprocessing for lawyers, publishers, writers, etc. Write, store,and change from rough draft to final copy in a variety of formats.

Disk utility program with memory testing.

y

~>Cr

1040-Tax

Balance

Checkbook

lnst1o78

Deprec2

APPENDIX C -

84

Taxpayers return, itemized deductions or standard

Reconciles bank statements

Balances your checkbook

Computes real cost on bank financed items; cars, boats, etc

Computes depreciation, 4 methods, any time period

FAVORITE PROGRAM CONVERSIONS

General Purpose

Vol. VI —$49.95Mini-Ledger

^n-<r:Z-

Vol. VIM — $19.95

Homeowner's

Programs

&tfUC

:\

^D I -

\=-

^ • 2j

"fif

*3

i£< SCIENTIFIC RESEARCH

P.O. Box 490099-B, Key Biscayne, FL 33149Phone orders call 800-327-6543Information — (305) 361-1153

:C

Add $1.50 per volume handling, all domestic shipments sent U.P.S.except APO and P.O. Box which go parcel post. Foreign ordersadd $8.00/volume for air shipment and make payable in U.S.dollars only. cn*ef d'*"

tti tin* • x#fo)AVAILABLE AT MOST COMPUTER STORES

BankAmericard . amount ^ . . • * " \* Q_ \ #*•

Master Charge and Bank Americard accepted.

Our Software is copyrighted and may not be reproduced or sold

,;..mlz«)

BYTE |unc 1978 45

SB

t

r~ o

so

c

so

CD >•

<u <

- O

.2 -S

2 ?

5 "to

So

~<3

■8

IT

s

*!

s °

53 .to

•as >-to £:

^°

S3

o

I

so

8^

& Uj

SO

s

o

8

<^

53

£

<o

o

s

"5oo

P

a f)

K IT)

£<

53

soC So

la

OOS

a.

o

■ *

II

v. oS3 K.

a o

So ,

8^

e

s;53

S

—1 <uO 13

s

3

<u ■

.S3l

< 'to.

§ o

(J Eo «

o; 5

Qj to

*o

su C5s; °o

S3 .

&s

tj S3

S3

O g

V-

>

a:

i-

UJ

UJ

<

Q.

i-

z

Q

2

in

<

<

O

<

<

(/)

D

2

z

I

O

o

z

UJ

•

1

•

i

o

1

LU

"

_l

46

June 1978 "J BYTE Publications Inc

prefers, are a flexible and easily accessedway to represent knowledge. They simulateassociative memory, as humans seem tohave. But how are they represented on acomputer? The answer to this comes in threeparts:

1. Outlines can be represented by lists.

2. Lists can be represented on computers.

3. The index or table of contents to out-lines can be represented as a hashedtable.

Nodes can be represented in lists by hav-ing alternate elements be arc labels andrelated nodes. We must first reduce eachmultiple word node name and arc label tosingle word names, then just list them asfollows:

8080

System 1

Keyboard

(Processor-in (System 1 System2))(Processor (8080) Memory (1 K Readonly memory, 1 K Programmablememory) Output (Lights) Input (Key-board))(Input-of (Systeml System2))

Most natural language projects are writtenin LISP because of its ability to handle listprocessing better than most other languages.Lists are represented in LISP in the follow-ing way: A list is composed of cells. Eachcell has two parts, as shown in figure 4a. Thetwo parts are called the CAR and the CDRof the cell. Each entity (node in the seman-tic net) is represented by a unique cell. Alist of words would be represented by astring of cells. The CAR of each cell pointsto a node cell and the CDR points to thenext cell in the string. The CDR of the lastword has an end of list marker in it. A listof words ("The power surge exploded my8080 chip") is shown in figure 4b.

A list can be represented within anotherlist by having a CAR point to the firstelement of the inside list, instead of point-ing to a node cell. A list within a list (Mypower supply (a home brew affair) was notprotected) is shown in figure 4c.

The index table for finding node namesis provided automatically in LISP. Thetable is called the OBLIST or OBARRAYand the lists are called PROPERTY LISTS.If you do not happen to have LISP, theindex table can be built as a hashed tableof node cells with associated pointers to theproperty list associated with that name. Adiagram representative of the whole config-uration is shown in figure 5.

If the cell is a node cell, the CAR pointsto a location where the name of the cell (thecharacter string) is held. The CDR points toanother cell which is the beginning of theproperty list of the node. In cells that are

not node cells, CARs and CDRs are both justaddresses that point to other cells. (One ex-ception is the cells that represent the rela-tionships between nodes. These will also beon the OBLIST as "node cells," but theirCDRs will contain end of list markersinstead of pointers to property lists.) InLISP, a special bit is set to designate whethera cell is a node cell (called an ATOM inLISP) or just a regular cell. The amount ofmemory that needs to be addressed by theCAR and CDR of each cell determines thenumber of bytes that each cell must becomposed of.

Associating Words with Ideas

The process of understanding naturallanguages certainly has something to do with

CAR

CDR

LISP CELL(aJ

SURGE EXPLODED

(b)

Fl

^-y^t^^L^i^i^

0

l^T^

rzi

PROTECTED

LL^J"^^

0

BREW

(e)

Figure 4: LISP cells. In (a) a LISP cell is shown. In an actual implementationthere may be some additional bits in the CAR and CDR to carry informationabout how the cell is used (whether it is an atom, for instance). In (b) the listof words (THE POWER SURGE EXPLODED MY 8080 CHIP) is shown as astring of cells. The pointers that point to the words are actually pointing tothe cells that represent those words (see figure 5). In (c) the cell representa-tion of an embedded list is shown. The list is (MY POWER SUPPLY (AHOME BREW AFFAIR) WAS NOT PROTECTED).

|unc 1978 O BYTE Publications Im

47

associating words with ideas. It should bestressed from the beginning, however, thatwhen humans understand something it is aprocess that uses much more than just worddefinitions. The process of understanding inhumans involves interpreting the words theyhear or see with the various meanings forthose words, all viewed in the context ofthe current conversation, the environmentof the conversationalists, and other factors.For example, the sentence, "I'll take a

08LIST

1

'

1

1

1

1

33

(NUMBER OFCHARACTERS)

8080NODE CELL

PROCESSOR-IN

1—71 8081

/ PROF

ili—I LIST

8080PROPERTY

SYSTEM INODE CELL

0

SYSTEM 2NODE CELL

TO

PROPERTY

LISTS

0

CHARACTERSTRINGS

~z^

zz

pancake," can be assumed to mean verydifferent things depending on whether itis heard in Uncle John's Pancake House, orin a store that sells fans for relay racks (apancake fan), or if it is said at a cosmeticcounter (pancake makeup). The variousconflicting meanings of "pancake" do noteven occur to the people in question. Awaitress would be unique indeed if sheasked her customer if she preferred thepancake on a plate or on her face!

The problem of multiple meanings,contexts and other details of understand-ing will be ignored for the time being.In a small system there are limits to whatcan be done linguistically (in this respect,all contemporary systems seem small!). Buta step toward natural language can be taken,however small. The goal we will assume isthat an inexperienced user will be able toaddress the natural language processor inlanguage that the user is most fluent in,and that the language processor will respondin a manner that the user finds appropriate.

We will be considering a situation inwhich natural language is being used as aninterface language between a user and eitherprocedures or data in a computer. The usertypes a sentence and the computer interpretsthe sentence and does what it is understood(by the computer) to mean. For example,say the computer holds a data base aboutvarious microprocessor systems like the onethat was described above. The user asksquestions about the systems and the com-puter provides answers.

Keywords

The simplest method of interpreting asentence is to look for particular words,called keywords. If a keyword is found, aresponse is output. For our system, a usefulset of keywords would be the names of allthe nodes in the semantic net. For a re-sponse the system could print the propertylist which represents how that node isrelated to other nodes in the net. Forexample:

Figure 5: Representation of atoms. Each node in the system is represented bya unique cell, here called a node cell. In this figure the node cells for threenodes are shown, for 8080, SYSTEMI, and SYSTEM2. The CAR of eachnode cell points to a place in memory where the character string of the nameof the cell is stored. The CDR of each node cell points to the property list ofthe node. The property list of the 8080 node is shown. The pointers to wordsshown in figure 4 are actually pointers to the node cells of the words. Allnode cells are chained together by the OBLIST. The character string names ofthe nodes are stored in a part of memory that has not been divided into cells.The CARs of the node cells point to an address that specifies the number ofthe characters that follow that are included in the character string of thename of the node. Links have cells on the OBLIST, just as nodes do. The onlydifference is that links do not need property lists. The pointer to Processor-inwould actually be a pointer to the cell that represents Processor-in.

User: Tell me all about system 1Computer: System 1Processor8080Memory

1 K Read only memory1 K Programmable memoryOutput

LightsInput

KeyboardUser: What information do you have on lightsComputer: LightsOutput-ofSystem 1

These responses would be quite appropriate

48

• 1978 (.'BYTE Publications Inc

JPJ5FJ5JJ One-Stop

■ ",'IESSS Component CenterNEW!.' EXPANDED PRODUCT LINE..

TTL

LINEAR

CAPACITORS

P.C. POTENTIOMETERS

7400

7490

LM301V

LM567V

Aluminum Electrolytic

SinglsTmn 15-Tu.n

LM723N

B40PIK 830P1K

740B

749374107

LM330K-5 (7905)

LM747N

4.7m(H 5QV 220mft! 50VlOmld 50V 470mM 50V22m1d 50V lOOOmiil 25V

840P1QK 830P10K840P5QK 830P50K

LM320T 5 (7905)

LM145HVf!i!">5BVt

H40P100K S3OP1O0K

LM320T 15(79151

LM1489N

LM340T-5 (7005)

XR2206

Ceramic Disc

DIODES

74 19274193

100i>< 50V -Olmtcl 50V

LM39O0N ICA3401I

220p( 50V 022mlt1 50V

330D< 50V 047rnliJ 50V

MICROPROCE

Low Power TTL Schottky

J41.S00 74LS73 74LS10974LS02 74LS74 74LS133

z no

B080A

B212

9224

21012102

7489

Dipped Tantalum

.ImtQ 35V 2.Jmld 25V,22m1d 35V 3.3ml<l 25V33m1u 3bV 4.7mlii 35V47mtrt 35V G.amttl 35VSSmfri 35V lOmlil 35V

TRANSISTORS

CI0GB1 2N30552N2222A 2N39043N2907A 2N3906

MLS 08

74LS10

74LS83 74LS13074LSB5 74LS151

ssoo

1702A82S23

MJE3055 2N5139

GB30LB

2708

N8T97

CONNECTORS

MM53t4tClock CI

Dl

Polyester Mylar

C/MOS

OOlmtu 100V .022ml<I 100V

4000

4010

4020 4050

4023 4051

SOCKETS

.0022mfct 100V .lir.lri 100V0O47mfl) 100V .33mttl 10OVOlmld 100V

DATA BOOKS*

7400/74LS Dora Book

40134016

4044 40314046 4511

40 p.n vvi'B wr»D

CRYSTALS

-JIM-PAK Product* only

TO-5 Soekoi

ID »)(. plug

TEST CLIPS

HEAT SINKS

Disp

ay LEDS Discrete

!4ptncll8 ISpinellH

MAN2

xC556-Beri

SWITCHES

%W RESISTOR ASST.

□ L704

,lL.

FUSE HOLDERS

CLIPLITES Roil

DL750

G.POr>. fwow

Submfnlatun Pint

Button

... Guaranteed nationally advertisedJIM-PAK program includes national advertising, direct mail programs, store display racks, stock:urn policy. For dealer information, write or call JIM-PAK, 1021 Howard Avenue, San Carlos, CAy*nj/u v<+io; oa^-ou97.•••••••••••••••••••••••••••••••*•••••••••*•••••*•

A new component product line of over 260 items developed for the independent dealer,products. Complete JIM-PAKrotation plan and retL94070 (415) 592-8097

• •

SEE YOUR LOCAL J^ DEALER TODAY...

ALABAMA

Mobile

Lafayette Radio Electronics

ALASKA

Anchorage

Electronics Corp. of Alaska

ARIZONA

Fountain Hills

P & C Communications

Tempe

Computerworld Inc.

Yuma

Yuma Electronics

CALIFORNIA

Bell flower

Earl's Hobby Shop

Berkeley

Al Lasher Electronics

Btiena Park

SJ Electronics

Font ana

Fontana Electronics

Fullerton

Orvac Electronics Inc.

Long Beach

Scott Radio Supply

Mission Vie jo

Tower Electronics Corp.

Monterey

Zackit

Oceanside

Electronic Center

Oxnard

Dow Radio Inc.

Palo Alto

Zack Electronics

Pasadena

Dow Radio Inc.

Sacramento

The Radio Place

Sacramento

Zackit

San Carlos

J & H Outlet Store

San Diego Radio Shack A.S.C. Mira Mesa

San Fernando

San Fernando Electronics

San Francisco

Zack Electronics

San Jose

Quement Electronics

San Luis Obispo

Mid-State Electronics

Santa Cruz

Santa Cruz Electronics

Santa Monica

Mission Control

Sunnyvale

Sunnyvale Electronics

Vallejo

Zackit

Walnut Creek

Byte Shop Computer Store

CANADA

Alberta (Calgary!

The Computer Shop

Montreal (Quebec,

Wang's Microccnter

Ontario (Willowdale) Home Computer Centre

COLORADO

Aurora

Com Co Electronics

Steamboat Springs

Norm's TV & Electronics

CONNECTICUT

Bridgeport

Bridgeport Computer

FLORIDA

Ft. Lauderdale

Computers For You

Lakeland Lakeland Specialty Flectronics

Orlando Alt air

Computer Center of Orlando

Tampa

AMF Electronics

Tampa

Microcomputer Systems

FRANCE

Puns

Computer Boutique

GEORGIA

Atlanta

Atlanta Computer Mart

HAWAII

Aiea

Delcoms Hawaii

Honolulu

Integrated Circuit Supply

IDAHO

Idaho Falls

Audiotronics

ik UMMfflmmnm v*\

ILLINOIS

Evanston

TriState Electronics

Evan st on

Itty Bitty Machine Co.

Gro velaml

Moyer Electronics

Mount Prospect

Tri-State Electronics

Oak Park

Spec ironies

Schaumburg

Data Domain

INDIANA

East Chicago

Aero Electronics

Hammond

Quantum Computer Works

IOWA

Indianola

Electronic Limited

KANSAS

Wichita Ai

nateur Radio Equipment Co.

KENTUCKY

Lexington Radio-Electronic Equipment Co.

LOUISIANA

Baton Rouge

Davis Electronics Supply

MARYLAND

Baltimore Computer Workshop of Baltimore

Baltimore

Everything Electronic

Lavale

J & M Electronics

Rockville

Computer Workshop

Towson

Baynesville Electronics

Towson

Computers, Etc.

MASSACHUSETTS

Med ford

Tufts Electronics

North Adams

Electronics Supply Center

Waltham

Computer Mart Inc.

MICHIGAN

Flint

Hobby Electronic Center

Grand Rapids

Micro Computer World

Lansing

Fulton Radio Supply

Mt. Clemens

The Computer Store

MINNESOTA

Duluth

Northwest Radio of Duluth

Eagan

Computer Room Inc.

MISSOURI

El Dorado Springs

Beckman Electronics

Park ville Compt

ter Workshop of Kansas City

MONTANA

Billinqs

Conlvy Radio Supply

NEBRASKA

Lincoln

Altair Computer Center

Omaha

Omaha Computer Store

NEVADA

Las Vegas

Century 23

NEW JERSEY

Bayville A.R.S. Communications Services

Cherry Hill

Computer Emporium

Hoboken

Hoboken Computer Works

Pompton Lakes

Computer Corner

of New Jersey

Ramsey

Typetronic Computer Store

NEW YORK

Albany

Fort Orange Electronics

New York

Computer Mart of New York

Troy

Trojan Electronics

White Plains

The Computer Corner

NORTH CAROLINA

Durham

Futureworld

Greensboro

Byte Shop of Greensboro

Raleigh

Byte Shop of Raleigh

OHIO

Bucyrus

Mead Electronics

Cincinnati

Digital Design

Dayton

Altair Computer Center

Reynoldsburg

Universal Amateur Radio

Steubenville

Has felt Electronics

OKLAHOMA

Guymon

Sound Service

Oklahoma City

Bits. Bytes S Micros

OREGON

Beaver ton

Altair Computer Center

Coos Bay

Herrick Electronics

Ontario

Miller Electronics

Salem

Computer Pathways

PANAMA

Panama City

Sonitel, S.A.

PENNSYLVANIA

Hersliey

Microcomputer Systems Inc.

Murraysville

Computer Workshop

of Pittsburgh

RHODE ISLAND

Cranston

Jabbour Electronics City

Paw tucket

Jabbour Electronics City

SINGAPORE

Intertrade (PTE) Ltd.

SOUTH CAROLINA

No. Charleston

Technical Services Inc.

TENNESSEE

Clarksville

Masstronics

Knoxville

Byte Shop of Knoxville

Memphis Sere Rose & Spencer Electronics

Oak Ridge

Computer Denn

TEXAS

Amarillo

Computer Encounters Inc.

Dallas

CompuShop

Houston

Altair Computer Center

Houston

Interactive Computers

San Antonio

Sherman Electronics Supply

UTAH

Provo

Alpine Electronic Supply Co.

VIRGINIA

Alexandria

Computer Hardware Store

Alexandria

Computers Plus

Charlottesville

Lafayette Electronics

Richmond

Computers- To-Go

Springfield

Computer Workshop

of North Virginia

Virginia Beach

Heathkit Electronics Center

WASHINGTON

Bellevue

Altair Computer Center

Longview

Progress Electronics

Pasco

Riverview Electronics

Seattle

C-Com

Seattle

Empire Electronics

Spokane

Personal Computers

WEST VIRGINIA

Morgan town

The Computer Corner

Morgantown

Electro Distributing Co.

Circle 201 on inquiry card.

BYTE |unc 1978

49

for the questions asked. Major improvementscan be had by a few simple changes, how-ever. First, what would happen to "Tell mewhat you know about keyboards"? Thelanguage processor would not recognizekeyboards as the same as "keyboard",so no information would be found. Theeasiest way around this problem is.to stripthe Ss off all the node names when buildingthe semantic net, then strip them off all thewords input by the user. However, this pro-cedure runs into problems for words thatend in S, like "process". Another problemis words ending in "es", like "processes".Actually, there are algorithms for analyzingword endings that correctly reduce wordsto their roots for nearly all the special caseslike these.

The whole problem of word endings canbe avoided by using a universal character.A universal character is one that matches allother characters. If # were a universal char-acter, the node names could be written as"light#" and "process#". These wouldmatch "light" and "lights", "process" and"processes". Tricks like this can help, butmay produce problems by also matching"lightning" and "lighter", "processor" and"processing". Therefore, universal charactersmust be used with care.

Another improvement deals with nodesthat have multiple word names. A userwould probably ask about "system 1" insteadof "systeml". Multiple word names can behandled by more property lists, one for eachfirst word in multiple word names. Theseproperty lists would contain a list of thewords of the multiple word name, followedby the corresponding node name in thesemantic net. For example, systeml andsystem2 could be referred to by:

System (Mult-wrd-names ((1) Systeml (One)Systeml (2) System2)).

This property list signals the languageprocessor that "system 1", "system one"and "systeml" are all to be interpreted as"systeml". Also, "system 2" means thesame as "system2".

The same mechanism can be used toallow synonyms. System 1 may be affec-tionately known as the "Bit Byter", "OldSmokey" (for its power supply problems),or "Zapper". These names can be interpre-ted as the same as "system!" with thefollowing property lists:

Bit (mult-wrd-names ((Byter) Systeml))Old (Mult-wrd-names ((Smokey) Systeml))Zapper (Mult-wrd-names (() Systeml)).

Just as universal characters can be used,universal words and phrases can simplifyspecifying a large set of synonyms. For ex-ample, the multiple word name (President #Washington) would match all phrases thatbegin with "President" and end with "Wash-ington". This would match (PresidentWashington), (President George Washington),(President G Washington and also (PresidentFord never met George Washington).

A relevant question is: What good isputting the keyword in the middle of asentence? Why not just have the user typekeywords and forget about the rest of thesentence? There probably are few if anygood reasons for trying to create an illusionof natural language understanding in thisway other than that it is a fun trick.

Nodes and Links

The keyword approach to natural lan-guage processing is imprecise, and so it isprone to many errors and misinterpretations.There is an approach that is somewhat moreprecise, and allows correct interpretation ofmuch more complex sentences withoutbeing much more complicated. This methodinvolves identifying both node names andlink names from the semantic net, thencombining them to print only the partsof the semantic net desired by the user.The link names in our example are proc-essor, memory, input, output, processor in,memory in, input of, and output of. Therewill usually be many fewer link names thannode names. A user's sentence is processedby collecting node names, then link names,as in:

Give me the Old Smokey processor andoutput.

Using a previously mentioned definition thisis seen by the processor as:

xxx xxx xxxx systeml processor xxx output(node) (link) (link)

to which the appropriate response is:

SystemlProcessor8080OutputLights.

The response is formed by searching theproperty list of the node mentioned for eachlink named. Then the node name, the linkname, and the names of the nodes pointedto by the link are printed in outline format.

If link names are found to the left ofnode names in the sentence, the inverse link

50

June 1978 © BYTE Publications Inc

ARTEC CRAFTSMANSHIP HAS CREATED

The FirstTruly SilentMotherboard

Noise in your bus lines means errorsin your programs. The Artec shieldedMotherboard totally eliminates noise.

At 4MHz, the Artec shieldedMotherboard is free from spuriousnoise. No ringing in your bus lines.No errors in your programs.

This Motherboard offers youengineering and craftsmanshipnever before available in the smallcomputer field. Outstanding aseither a replacement for yourpresent Motherboard or as theheart of a new system. Con-sider these features:

■ Vsth inch thick—more than twice as thickas most Motherboards.

■ Totally shielded—all holes platedthrough; full bus terminations

■ Fits easily into any stan-dard chassis.

■ Masterite edgeconnectors—thefinest quality con-nectors available.

■ Ref lowed solder circuitry.

■ No soldering required.

■ Designed for the S-100 bus.

The Motherboard price is: $150(kit)

$190 (ASSEMBLED)

Five years of experience in every card

For five years, Artec has worked hard to de-velop a complete line of custom, prototype andoff-the-shelf printed circuit boards. And in fiveyears of tough industrial use, Artec boards haveproven themselves among the most reliableboards available anywhere.

NEW! DEC® and Heath Compatible LSIBoards

The new Artec WW11 lets you adapt or addonto your DEC LSI-11 or Heathkit LSI mini-

computer. Can accom- . -,.„;,

modate 14 and 16 pinDIPs plus all necessarypassive components.FULL CARD $75

(10.45" X 8.4")

HALF CARD $35

(5.225" x 8.4")Circle 20 on inquiry card.

® Trademark of Digital Equipment Corporation

Order today!

Put an Artec board to work for you. Use yourlastercharge or Visa. Or just send along amoney order. We can accept only U.S. currency.Please include $3 handling on all orders. Califor-nia residents add 6% sales tax.

Please send me: (include quantity)

ShieldedMotherboard

Full WW11Card

Half WW11Card

□ I've enclosed a money order for $

□ Mastercharge □ Visa

(number)

(exp. date)

Name

Address _City

Calif. Res. add 6% sales tax. End. S3 handling. 70% discount for students andcomputer club members. (Please enclose name of club or school)

State

Zip

AMCC ei£CTROMC9, IMC.

Artec Electronics, Inc. '605 Old County Rd.'San Carlos, CA 94070(415) 592-2740

BYTE June 1978 51

names must be substituted. For example,What are the input of and processor in system 2is seen as:

xxxxx xxx xxx input-of xxx processor-in system2(link) (link) (node).

The reverse links are used, and the sentenceis reinterpreted as:

system2 input processor.

The property list of system2 is checked forinput and processor links and the followingis printed:

System2Input

Scale

KeyboardProcessor

8080.

This process is diagrammed in figure 6.This technique will allow quite complicatedsentences to be interpreted if synonyms arechosen judiciously for nodes and links. Userson a natural language processing system tendto use very short and incomplete sentences ifthey can, which is also allowed with thissystem.

t OR LINK

e:-END OF LIST

Figure 6: Node and link interpretation. Thissimplified method of interpreting whichnodes and links mentioned in a sentenceshould be associated will often assume theproper interpretation to the input sentence.However, node and link names and syno-nyms must be chosen with care. A moresuccessful method requires greater atten-tion to words other than those in nodeand link names, particularly conjunctions,prepositions and relative pronouns.

Conclusions

There is naturally a lot that keywordbased systems cannot do that humanscan. For instance, keyword systems cannotunderstand pronouns, or when to usedifferent word meanings (like pancake).Humans have little trouble using these.The difference is, of course, in all theinformation that keyword systems throwout when they disregard all words thatare not keywords. Also, words carry withthem more than just a definition. Mostwords say things about the words that aresurrounding them. The word "the" saysthat the word to its right is either a nounor a noun' modifier. In the system describedabove, the keyword "input of" tells usthat either some kind of input device haspreceded this phrase in the sentence, or areference to a system will follow it ("whatis the input of system 2"), or both ("a key-board is input of system 2").

Natural language research today hasmoved far beyond the realm of keywordanalysis to use not only knowledge aboutwords, but knowledge about the thingsand events that the words refer to, andknowledge about the way text and con-versations are structured. In a data baselike the microcomputer data base usedhere, the system would retain informationabout the components that every systemwould probably have, the probable uses ofsystems, more detailed information abouteach of the components, and so on. Theinformation that a human uses when dis-cussing microcomputers would be collectedand added to the knowledge base to beused when the computer is discussing micro-computers. This information is grouped intocollections and the collections are associatedwith the concepts they describe.

It is nearly impossible to discuss howwell such a system can work. We do not yethave any kind of scale for measuring naturallanguage performance if it falls into thesubhuman range. The only really useful mea-sure is whether or not it does what it issupposed to. Unfortunately, that too isdifficult to ascertain. I have implementeda system like the link and node systemdescribed here, but it was quite a bit morecomplex. It attempted to account forevery word in the sentence in order to

52 June 1978 E> BYTE Publications Inc

"" ::

Finally, the macro maker of computerprinters has gone micro. With a high-speed,desk-top, non-impact printer complete withparallel interface (Model P-l) thaf s perfect forthe home, hobby and small business user. Acomplete 80-column printer for less than $600.

The new Centronics microprinter isbig on performance. It prints clean, clear dotmatrix characters at a rate of 150 lines perminute. Yet it's quiet, compact, comes fullywarranted and is backed by Centronics'worldwide service. It's even available in aserial interface version (Model S-l) forremote applications.

Of course, buying your small systemsprinter from the industry's leading producerof printers is simply a better buy. You get thesecurity, support and systems flexibility onlyCentronics can bring. Plus the targeted tech-nology that brings out the best in any computer.

So when you think small printers, thinkbig. Think Centronics. For more information,just clip and mail the coupon below.

r~"

Centronics Data Computer Corp.Hudson, NH 03051

Gentlemen: Tell me more about your newmicroprinters.

Name

"~l

Address

Town

State

_Zip_

l_.

B-6-78

CEnTRDniC5@PRinTER5

Simply Better

Circle 50 on inquiry card.

BYTE June 1978 53

IDS

INTERNATIONAL DATA SYSTEMS, INC.

400 North Washington Street, Suite 200, Falls Church, Virginia 22046 U.S.A.Telephone (703) 536-7373

88-MODEM: A complete serial I/O port and an Originate/Answer MODEM on anS100 bus compatible board. The 88-MODEM features automatic auto-dialer (notsoftware timed), operates at any software selected baud rate between 66 and 600baud, has separate 8-pole transmit and receive active filters, and all functions aresoftware selected. The 88-MODEM provides communication to -58 dbm and is intendedlor use with either a CBS (1001D) or CBT Data Access Arrangement for connectionto the telephone system. The kit price is $245.00.

88-UFC UNIVERSAL FREQUENCY COUNTER: The 88-UFC is an S100 compatiblefrequency and period measurement module. The 88-UFC has lour software selectedinputs Frequency measurement lo above 600MHz and period measurement lo 1 /10thmicrosecond are standard. The counter provides nine digits of readout and is pricedat $179.00 in kit form.

88-SPM CLOCK MODULE: The 88-SPM provides a time of day clock and an inde-pendent realtime clock on one S100 compatible module. Provisions are included forbattery backup so the 88-SPM can maintain the time during power-off conditions.$96.00 kit

1001D (Type CBT) Data Access Arrangement $125.00

88-RCB 16 Channel Relay Control Board Kit $179.00

MCTK Morse Code Trainer/Keyer Kit 29.00

TSM Temperature Sensing Module Kit 24.00

DAC-8 8-Bit Digital to Analog Converter Kit 19.0088-TCXO Temperature Compensated Crystal

Oscillator for 88-UFC 145.00

88-XTAL Crystal Timebase option for 88-SPM 25.00

TERMS: Payment with order shipped prepaid, added for COD, Master Charge accepted

prevent misinterpretations. It handled pro-nouns fairly successfully and was good atidentifying items by their description.It responded to the user in full sentencesand in outline form. It also required a largesystem to run on, primarily because it hada fairly large data base. With all this, itstill usually took a new user several examplesbefore he could communicate with thesystem in a useful way.

With this experience, what do I thinknatural language systems can do on smallsystems? The question is vague, so theanswer is vague: a little bit, but not toomuch. That not-very-helpful answer meansthat one must decide why he or she wantsa natural language processor, then considerthe techniques described in this article todecide if they will meet his or her needs.These techniques must then be compared tononnatural language techniques.

The benefit of the language understand-ing techniques described here is primarilybased on the power of the semantic netrepresentation. Semantic nets have oneadvantage over other representations inthat concepts are associated in a way sim-ilar to the way they seem to be associatedin human memory. An important aspect ofusing natural language as an interactionlanguage between humans and computersis that, if it works, it allows the user tostate his requests in the same way that hethinks about his requests. A user usingnatural language to interact with a com-puter is manipulating an enormous amountof information in his or her mind, encodinga small part of that knowledge into thewords of the conversation, assuming thatthe listener (the computer) can use thesefew words to manipulate its large informa-tion structures. On a small system, the in-formation structures that the computer hasto manipulate can not be nearly as large asthe human's. The words of the conversationcan be associated with ideas, but not on thelavish scale of association available tohumans. Finally, most of the words ofthe conversation are thrown away using thetechniques that a small system can support.What natural language processing can bedone on small systems? Not enough to beable to compare it to natural language proc-essing in humans, but perhaps enough toallow a user to learn to communicate effec-tively with the computer in a way that isclose to the way the human brain thinks:th-ough associations and descriptions."

54

June 1978 © BYTE Publications Inc

Circle 185 on inquiry card.

Formerly SELECTERMThe SELECT RIC II Printer You Can Trust.

You may have considered a Selectric II as idealfor your application but have been skeptical aboutreconditioned units and kits.

Set your skepticism aside with the SELECTRA-TERM. Because it's brand new, and fully assembledand tested before you take delivery. We convertfactory new IBM Selectrics and test them non-stopfor up to 24 hours before shipping. And our factoryapplique' has been approved for use with all compu-

ters. So you receive IBM's factory warranty, andyearly service agreements for the typewriter areavailable. In addition, we offer full warranty protec-tion on the electronics conversion.

The SELECTRA-TERM may be connected toyour computer within minutes of taking it out ofthe carton.

It's that easy! And that reliable!

THE BEST SELECTRIC II PRINTER GOING

Fop Any Computer

FEATURES

■ Complete ASCII character set instandard element.

■ Full upper/lower case alphanumericcharacter set and keyboard.

■ Tab command, index (vertical tab),backspace, bell-all under computercontrol.

■ Parallel interface, standard.

ALL ELECTRONICS INCLUDED

■ Power supply, electronics and cablesets included to permit immediateconnection to the parallel port ofany computer, at standard TTLlevel.

*Registered trademark of IBM Corp.

SOFTWARE

■ All necessary conversion software inPROM to handle ASCII inputdirectly.

PRINTER or TYPEWRITER

■ May be used as a standard type-writer when not in use with yourcomputer.

OPTIONS

■ Dual pitch

■ Correction feature

■ Tractor feed platen

■ Noise reduction feature

■ RS-232 interface

■ Export models available

$125.00$125.00$250.00$ 50.00$195.00

PRICE and DELIVERY

■ Assembled and tested $1,750

■ Available from dealers nationwide

■ Delivery 3 to 4 weeks from receiptof order

■ Quantity delivery to OEMs within30 days

micro

computer

devices

inc.

960 E. Orangethorpe, Bldg. F

Anaheim, California 92801

Telephone (714) 992-2270

^Innovators to the Microcomputer Industry'

Circle 208 on inquiry card.

BYTE June 1978 55

Give an Ear to Your Computer

Bill Georgiou

Dept of EE

California State University

Sacramento CA 95819

A SpeechRecognition Primer

for

Computer Experimenters

You pick up the phone and slowly andclearly you pronounce into the microphone:"Number one two one three five five fiveone two one two verify." You listen as outof the earpiece an awkward but quite in-telligible voice repeats what you just havesaid. Then you say "Dial number." Thesounds of dialing follow, then a ringing inthe distance and you find yourself talkingto the directory assistance operator in LosAngeles. A sequel to 2001 with personalHALs? Not quite. Just plain old 1977reality. A couple of cards in your computerand some programming can do it. Speechrecognition and voice control have come along way from the "Open Sesame!" of theArabian tales. Its technical foundationswere laid in the 1950s and 1960s. Themicroprocessor revolution has brought itwithin the reach of any computer experi-menter, opening up a fascinating frontierof voice control and spoken communica-tion between human and machine.

In the following pages I will try to giveyou an introduction to speech processingand pattern recognition. To demonstratethe principles involved, we will go into somedetails of the workings of a speech recog-nizer suitable for a small personal computer.I hope the material to be presented will beenough to give you an idea of what speechrecognition is, how it is done and what areits present limitations. It is left to the readerto get excited, read the literature to findmore about speech recognition and thenbuy, borrow or build a recognizer and startusing it imaginatively.

56 June 1978©BYTE Publications Inc

TIME DOMAINSIGNAL

RELATIVEENERGY

START OF WORD

TIME

END OF WORD

Figure 1: A time domain voice waveform and its energy. The top trace is the time domain signal for the word "three." Thebottom trace is the energy in the above signal computed every W ms. Note that the signal before and after the word (arrowsmark the beginning and end of the word) is not zero. This is due to background noise picked up by the microphone, in this casecomputer cooling fans and air conditioning noise.

The Speech Signal

If we connect a microphone to an oscillo-scope and then speak into it, we will get ajittery trace similar to the one shown infigure 1. The vertical axis represents voltage,the output of the microphone. The hori-zontal axis is time and for this reason sucha representation of speech is called a "timedomain" representation.

You may ask can we use a time domainrepresentation for speech recognition? Itwould be nice if we could because it is soeasy to get; all we need is a microphone.The voltage in the output leads of the mikeis, by definition, the time domain signal. Ofcourse we would like to input this signalinto our computer. Since it is an analog sig-nal and our computer is a digital machinewe will need an analog to digital converter(ADC). The analog to digital converter givesa binary number that corresponds to theamplitude of the signal at the particulartime when the measurement is made. Thisprocess is called sampling. If we take andstore equally spaced samples often enoughso that the signal does not change very muchbetween samples we will have a fairlyaccurate representation of the time domainsignal in our computer's memory. Figure 2shows such a situation, in which an arbi-trary input waveform is sampled over sometime interval, and the results of conversion

are stored as values in successive memorylocations.

It has been mathematically proven (thesampling theorem) that if we are to have anaccurate representation of the signal, thesampling frequency should be at least twicethe highest frequency in the signal. It isthen called the Nyquist frequency and it isthe lowest usable sampling frequency. Onecould sample at higher than Nyquist fre-quency but this would not give a moreaccurate representation of the signal. In-stead there would be a lot more data wordsto deal with, an unwelcome situation. Ifwe try to apply the Nyquist theorem tospeech we are faced with the question:what is the highest frequency in speech?Well, for high fidelity sound a bandwidth of20 to 20,000 Hz is necessary. This meansthat speech has frequencies up to thislimit, perhaps even higher. On the otherhand, telephone speech is band limited to3200 Hz and it is still quite intelligible.Since in speech recognition we are interestedin what has been said rather than the qualityof the sound, if we limit the signal using afilter with a cutoff at 3200 Hz we will re-tain the information needed for recognition.Then we can use Nyquist's theorem to geta practical sampling rate since we will knowthat the highest frequency in the signal is3200 Hz, due to the filter. Sampling at twicethat frequency we will get 6400 samples

lunc 1978 © BYTE Publications Inc

57

®

INPUT (FROMMICROPHONE FOREXAMPLE)

CD

ANALOG TO DIGITALCONVERTER OUTPUTSIN MEMORY

Figure 2: Sampling in the time domain. Waveform A is a time domain signal.If we sample it at equally spaced intervals we will retain the amplitude of thewaveform at the dotted points and the signal will be zero between thesepoints, as shown in waveform B. Although A and B look very different, if thesampling is done with a frequency higher than the Nyquist frequency (seetext), both signals will contain exactly the same information.

per second of speech. Assuming our wordlength is eight bits which is about the mini-mum usable for speech and that the averageword duration is about half a second, we willneed 3.2 K bytes of memory space per word.If we had a 20 word vocabulary and wewished to store each word in main memoryonce to be used as reference, we would runout of memory space in any micro and mostminis.

Using the time domain signal is out ofthe question because of the huge amountsof memory required to store it. This is notthe only disadvantage of the time domainsignal. Assuming we had enough memory tostore the data, processing it would take toomuch processor time because every opera-tion we would perform on the data wouldhave to be performed to such a great numberof data points. Real time operation (process-ing the signal as it occurs such that there isno appreciable time lag between the momentthe signal ends and the time the recognizerdecides which word has been said) would beout of the question. Yet real time operationis highly desirable in most situations inspeech recognition. Another basic disad-vantage of the time domain signal is itsvariability between different pronunciationsof the same word. People do not repeatwords exactly the same, down to the minute

AUDIOPREAMP

©

FULL WAVERECTIFIER

LOW PASSFILTER

©

Figure 3: Rectifying themicrophone signal at A weobtain signal B whichcontains a slowly varyingDC component propor-tional to the volume of thesignal and various highfrequency componentsdue to the formants. Thelow pass filter separatesthese and the analog todigital converter (ADC)sees only the volumesignal.

©

©

58

|une 1978©BYTE Publications Inc

A BIT OF Everything

The Best of Creative Computing

Volume I

The Best of Creative Computing

Volume II. Culled from pages of CreativeComputing Magazine, these two volumesprovide fiction, fun, foolishness, and plentyof nuts and bolts commentary and pro-gramming information for anyone curiousor serious about the wonderful world ofpersonal computing. $8.95 per volume.

Structured Programming in APL by

Dennis P Geller and Daniel P Freedman". . . .Our approach is to present the funda-mentals of structured programming in APL.Students may go on from here to learn towrite faster program: or more compactprograms, or more aesthetic programs; thiswe hope is where they learn to writeworking programs." From the Preface.$9.95.

APL—An Interactive Approach Second

Edition, Revised, by Gilman and Rose.Here's an excellent way to introduce your-self to the APL language. APL is rapidlybecoming one of the most popular high levellanguages in the computer field because ofits clarity and conciseness. Gilman and Rosehave extensively updated their popular bookto include the latest information about thelanguage and the various forms of it whichare now in use. Since the examples are allcarefully spelled out, APL—An InteractiveApproach is particularly recommended forthose who do not have access to an APLterminal. Answers to all problems areincluded. $13.00.

StructuredProgrammingin APL

How to Program Microcomputers by

William Barden, Jr. Here is a guide toassembly language programming of theIntel 8080, Motorola MC6800, and MOSTechnology MCS6502 microprocessors. Itis written especially for beginning pro-grammers with hobbyist microcomputersbased on one of these three chips. Thetopics covered range from data manipu-lations at the bit level up to handling oftables and lists and from simple adds andsubtracts up to floating point operations.$8.95.

Bar Code Loader by Ken Budnick is

the key that unlocks the door to Paper-byteTM Software Books. Included in thispublication is a brief history of bar codes,a look at the PaperbyteTM Bar Code formatincluding flowcharts, and a general bar codeloader algorithm. Well documented pro-grams with complete implementation andcheckout procedures are included for 6800,6502 and 8080/Z-80 based systems. Indi-viduals with computers based on theseprocessors can use the software directly.Individuals with other processors can usethe provided functional specifications anddetail examples to create equivalent pro-grams. $2.00.

DIAL YOUR BANK CARD ORDERS ON THE BITS TOLL FREE HOT LINE: 1-800-258-5477.

In New Hampshire, call: 924-3355.

Send to:

BITS, Inc.

70 Main Street

Peterborough, NH 03458 ^S?" B

Check payment method:

My check is enclosed.

Bill my MC No

_Bill my BAC/Visa No.

.Exp. date..Exp. date-

Name.

Address.City

State.

.Zip Code.

Total for all books checked $_

Postage, $.75 per book for books $_

Outside U.S. $1.00 per book for books $.

Grand Total $_

Signature.

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

Prices shown are subject to change without notice.

Circle 35 on inquiry card.

BYTE June 1978 59

details of amplitude. Quite the contrary;there is a tremendous amount of variationin the time domain signal even for the sameperson within several consecutive pro-nunciations of the same word.

In speech recognition we would like totransform the time domain signal into someother signal or representation with low datarate and which remains more or less in-variant as long as the same word is pro-nounced. This is easier said than done. Ifwe try to reduce the data rate we run therisk of throwing away important informa-tion. For example suppose that before goinginto the analog to digital converter werectify the signal, then process it with a lowpass filter. A block diagram of this opera-tion is shown in figure 3 together with theresulting waveforms. Such an operation willextract the envelope (c) of the signal. Thehighest frequency of interest in the envelopeis only about 50 Hz. This is due to con-straints imposed by the mechanism thatproduces speech. We can thus set the lowpass filter to 50 Hz and sample at 100 Hz,the Nyquist frequency. That gives us a very

'THREE"

Figure 4: Amplitude envelopes of the words "one," "three," "zero." Notethat "one"has one hump while "three" has two. The smaller one correspondsto "th" and the larger one to "ee. " In "zero, " "z" is the low amplitude areaIn the beginning. The dip corresponds to "r" and the humps to "e" and"o." Vowels always have high amplitude because they are produced with themouth open and with strong excitation.

reasonable data rate, 100 words per secondand well within the capabilities of allmachines.

Yet, if we try to build a recognizer usingonly this information we would get verypoor performance. The reason is that wehave thrown away a lot if not most of theinformation in the speech wave in theprocess of rectification. The informationthat remains is quite variable between dif-ferent pronunciations of the same word,further degrading recognition. But it is nottotally useless. If we select a vocabulary ofa few words carefully so their envelopes havedistinct characteristics we may get usableperformance out of a very simple recog-nizer. We could select for example the words"one," "three," "zero." Typical envelopesfor those words are shown in figure 4. Wenote that the envelope for "one" consistsof one hump. "Zero" has two humps and"three" has one main hump preceded by asmall peak that corresponds to the sound"th." Based on these observations we canwrite a simple program that would examinethe input data and decide which one of thethree words has been said.

Feature Extraction

The process of extracting a set of slowlyvarying parameters that represent a word iscalled feature extraction. It has two objec-tives: First, as we have seen, it tries to re-duce the amount of data necessary toprocess for recognition. This is a very im-portant consideration for any practical im-plementation. Second (and extremelyimportant), the features extracted mustcontain the relevant information in thesignal. The speech signal conveys a lot ofinformation about the sex, age, regionalorigin and emotional state of the speaker.Also it contains a lot of technical informa-tion incidental to speech production such asphasing and power spectra of the glottalpulses. All this information is related but notrelevant to the meaning of the word pro-nounced. Ideally the features will containas little as possible of this extraneous infor-mation.

A good feature extraction scheme willreduce the data rate in the recognizer bythrowing away all the unnecessary informa-tion and retaining the information usefulto the recognizer. The information pertain-ing to the meaning conveyed by speech isestimated to be from 15 to 30 bits persecond, or about three orders of magnitudeless than the data rate of the unprocessedspeech signal. Practical feature extractorsare not even close to the theoretical data

60

June 1978 ©BYTE Publicalions Inc

meet

Now you can buy a complete operational key-board with full ASCII code capabilities, built tocommercial standards, yet priced for the personaluser who needs only one. This is not a surplus unitor a manufacturer's overrun, it's a new board de-signed specifically for the personal computer user.

MAX is MOS/LSI encoded, and includes all 128ASCII characters, two-key rollover protection andtwo non-encoded keys with relegendable keytopsfor user assignment. Everything you need to startentering data immediately.

Individual keys for CARRIAGE RETURN, LINEFEED and ESCAPE are provided to give you theseimportant functions without multiple key closures.A low-cost MAX option kit (Part No. 620002) lets youadd four CURSOR keys and a HOME key if you needthose functions. Coding is already provided.

MAX low-profile switches have gold contacts withwiping action for long life and reliability, and plung-er action that is smooth and precise.

Maxi-Switch is a leading supplier of keyboardproducts to the data terminal industry, and MAXcomes from a fine family. Get the full story on thenew MAX keyboard for personal computing.

MAX is sold only through authorized dealers suchas Century Marketing. To order your MAX, use thecoupon supplied.

Send to: Century MarketingP.O. Box 35192Edina, MN 55435

Enclosed is $69.95 (plus $5.00 shipping and handling) perMAX keyboard. (For Cursor Kit, add $3.95.) Please send

MAX keyboards to

Address_

City_

State_

-Zip.

L___-_ , ___.

SWITCH CO.

3697 EAST RIVER ROAD • MINNEAPOLIS. MINNESOTA 55433

(612)755-7860TWX 910-S76-2690

Circle 207 on inquiry card.

BYTE |unc 1978

61

COQ

LU

Q

Dp

_l

Q.<

FREQUENCY

Figure 5: The frequency (logarithmic magnitude) spectrum of a 25 ms segment of speech,it covers the frequencies from 0 to 3.2 kHz. The major peaks correspond to the formant fre-quencies while the smaller, regularly spaced peaks are harmonics of the glottal frequency. Inthis case it is obvious that the sound is voiced both from the harmonics of glottal frequencywhich are highly visible and from the fact that the lower frequencies have more energy thanthe higher ones.

rate and, most important, they tend tothrow away significant amounts of the use-ful information. An example of a very ineptfeature extractor is, of course, the envelopedetector mentioned previously. But it doeshave the advantage of extreme simplicity.In order to design more sophisticatedfeature extractors some knowledge aboutspeech production is necessary. Knowledgeabout speech perception would also be veryuseful but at this point we have no concreteinformation as to how people are perceivingspeech. In contrast, the mechanism thatproduces speech is well understood andrather simple. It has been previously ex-plained in the August 1976 BYTE (page 16)in connection with speech synthesis. Tosummarize, speech is produced by excitingthe vocal tract with either glottal pulses ornoise while its shape is varied by controllingthe position of the tongue and the jaws.Noise excitation produces unvoiced sounds.Glottal excitation produces voiced sounds,for example vowels. The movement of thearticulators (tongue and jaws) changes theresonant frequencies of the vocal tract,called formants. It is well known that thefirst three formants, designated F1, F2, F3,

carry most if not all meaning in speech to-gether with timing considerations and typeof voicing. The glottal frequency, althoughvery important in speech synthesis becauseit carries information about the particularspeaker, carries no information about mean-ing. This rather surprising fact is easy to as-certain in two ways: First, synthetic speechis equally well understood whether the pitch(another name for glottal frequency) variesaccording to rules or remains constant.Second, whispered speech, which does notcontain any glottal excitation, is wellunderstood.

It seems then that a good set of featuresfor speech recognition would be the formantvalues. Information as to whether speech isvoiced or unvoiced would be useful butnot necessary. Unfortunately at this point itis not possible to experimentally eitherassert or refute this statement, simply be-cause it is not possible to reliably and ac-curately extract the formants all the time. Inaddition, the best formant extractionmethods known are at this point out of thereach of any imaginable personal computingmachine. They involve digital signal proc-essing methods which for real time process-

62 June 1978 ©BYTE Publications Inc

The first Four-Headed Diskette Drive.PerSci stays a generation ahead.

PerSci has done it. Now the industry's onlydiskette drive with voice coil positioning comesequipped with four heads reading and writing bothsides of two eight inch diskettes to provide supe-rior random access capabilities in microcomputerand minicomputer applications. The new PerSciModel 299 dual-head, dual diskette drive offersthe highest data capacity, reliability and the fastestaccess speeds available among small storageperipherals. It is the first drive to advance diskettecapability to the level of hard discs.

8 Times More Capacity...

Employing double density encoding on bothsides of two diskettes, the PerSci 299 records upto 3.2 Mbytes of unformatted data—eight timesthe capacity of a standard, single density drive.This unmatched single drive capacity provides thebasis for an independent low cost data manage-ment system. For maximum media interchange-ability with other drives, the 299 will also readand/or write one or two single sided diskettes. Upto eight 299 drives (32 read/write heads)can be daisy chained to achieve a totalformatted system capacity as high as16 Mbytes. Data can be handled in asingle density IBM 3740 type for- u*j3*mat, in IBM 2D compatible double ^ ^ fdensity or in other expanded soft j 1tand hard sectored formats. ^ I

And Voice Coil PositioningFor 6 Times More Speed...

Only PerSci, Inc., has engineeredvoice coil head positioning fordiskette drives.This design innova-tion gives the PerSci 299 drive thelowest average seek time of anyfloppy—33 ms including settle.The full 76 track access speed ofthe Model 299 is under 100 ms.

In A Single Small Size Drive...

While the 299 provides the data capacityand access speed of a hard disc drive, it is the

size of a standard floppy—only 4.38" x 8.72" x15.4!' Up to four 299 drives can be mounted verti-cally or two horizontally in a 19" rack.

With Superior ReliabilityAnd Ease Of Operation.

Mechanical and data reliability equal or

superior to single headed drives—6000 hour

MTBF and a soft error rate of 1 in 109—are made

possible by PerSci's advanced drive design. A

write protect feature guards against operator

error, while front panel lights indicate the diskette

selected. Electric diskette autoload protects

diskettes from damage and allows drive

unload by remote control.

Join The Next Generation... Now.

Get PerSci's four-headed diskette drive and

get the speed, capacity and reliability of hard disc

drives at a fraction of the size... and cost. Call or

write for full information

from PerSci, Inc., 12210

Nebraska Avenue, West

Los Angeles, California

90025.

(213) 820-3764.

PerSci

Peripherals aGeneration Ahead.

See us at NCC, Booth 1239

Circle 298 on inquiry card.

BYTE June 1978 63

2000Hz

1500

Frequency

1000

500

m

Hito- li

Time'

ma

/

ed

Figure 6: A typical Sonogram of an utterance. In a Sonogram the dark areas represent highintensity. This example represents the word "machine." The vertical (y) axis is frequency andthe horizontal axis is time. The formants are seen as the dark bands that change with time. Thelarge dark area about 1/5 of the way into the pattern corresponds to the sound of the "ch"in machine.

ing strain the computational capabilities ofeven the big number crunching computers.There is a lesson to be learned from theabove analysis: Speech is intimately relatedto the resonances of a time varying resonator(the vocal tract) and perhaps it is morereasonable to expect to find better featuresin a frequency domain representation ofspeech rather than in a time domain one.

Frequency Domain Analysis

A usual frequency domain representationof a signal is its spectrum (amplitude versusfrequency). It can be obtained from thetime domain representation by applyingwhat is called the Fourier Transform to it.Figure 5 shows the Fourier Transform ofa speech signal 25 ms long. Note that in thetime domain signal the horizontal axis ofa plot is time whereas in the frequencydomain representation the horizontal axisis frequency. A drawback of the FourierTransform is that it is a digital signal pro-cessing method and as such it operates onthe sampled waveform directly, requiringvery fast computers for real time operation.

If we are willing to settle for less accurateresults, there exist analog methods whichcan give us spectral representations in realtime using relatively simple hardware. Aninteresting spectral representation, based onanalog methods, is the sound spectrogramor "Sonagram" obtained using a devicecalled the "Sonagraph." This device has beenin existence since the late 1940s and hasbeen widely used in speech research. It givesa three-dimensional display of frequency inthe y axis (vertical), time in the x axis(horizontal), and intensity on the z axis.The z axis is actually represented by shadesof black since we are using two-dimensionalpaper. Figure 6 shows a Sonagram. Thedark areas correspond to areas of highintensity and the evolution of formants canbe observed as dark bands changing withtime. The Sonagraph is a useful tool inspeech research and it is mentioned herebecause it is widely referred to in the litera-ture. It is of no value as a feature extractorto a practical speech recognizer because it isnot a real time machine and because it coststhousands of dollars.

64

June 1978©BYTE Publications Inc

Everything you've ever

wanted to Know aboutmicrocomputers in

ONE complete book

for only $10.95

Over 400 pages. Full 8V2'' x 11" size.

The ultimate bookabout microcomputers.Written by experts... SCELBI and BYTE. Over400 pages. A collector's item,featuring The Basicsfrom the first 16 issues of BYTE and SCELBI'sclassic library of books. Your microcomputerbookshelf is incomplete without this priceless edition.

You can't buy informationorganized like this any-where. This is the bookthat everyone who is into micro-computers needs for reference,for ideas, for clues to problemsolving. It is a truly authorita-tive text, featuring easy-to-read,easy-to-understand articles bymore than 50 recognized pro-fessional authors, who know andlove microcomputers from theground up. Logical and com-plete, it features many glos-saries, and is illuminated withprofuse illustrations and photo-graphs.

The Scelbi/BYTE Primer isdivided into four logical sec-tions, that take you from point"0" through building and pro-gramming your own computer...step-by-step-by-step.

What can you do with a micro-computer? Checkbook balanc-ing. Recipe converting and foodinventory. Heating and air condi-tioning control. Home and busi-ness security and management.Playing the ponies. Analysis ofthe stock market. Maintainingmassive data banks. Self-instruc-tion. Toys and games. Smallbusiness accounting and inven-tory. And lots, lots more.

Circle 322 on inquiry card.

How does a microcomputer do

it? Lots of "how to" theory. In-troducing you to microcomputeroperation. 6800, 6502, Z80 CPUchip capabilities. RAM and ROMmemories. Addressing methods.

Ill

Y.'IIIJIVII

IUHI"i

Over 400 pages. Selected articlesfrom BYTE and SCELBI books.Profusely illustrated. Manyphotographs. $10.95, plus$1shipping and handling.

How to control peripherals.Transmission of information toand from computers. Magneticrecording devices for bulk stor-age. Analog to digital conver-sion. How a computer can talk.Other I/O techniques. And more.

Order your copy today!

SCELBI COMPUTER

CONSULTING INC.

BUS

Post Office Box 133 PP STN

70 Main Street

Dept. B

Peterborough, NH

Milford, CT 06460

03458

1 800 258 5477

Prices shown for North American customers.Master Charge. Postal and bank MoneyOrders preferred. Personal checks delayshipping up to 4 weeks. Pricing, specifica-tions, availability subject to change withoutnotice.

**»■*

All about building a micro-computer system. Over 12 com-plete construction articles. Flip-flops. LED devices. Recyclingused ICs. Modular construction.Making your own p.c. boards.Prototype board construction.Make your own logic probes.Construction plans for 6800 andZ80 computers. Building plansfor l/Os — TV and CRT displays,cassette interfaces, etc. Mathe-matics functions. ROM program-mer. Plus much, much more.

How to program a micro-computer. Programming for thebeginner. Assembling programsby hand. Monitoring programs.Number conversions. Game ofHexpawn. Design your own as-sembler. Lots more.

And that's only the beginning!Others have spent millions ac-quiring the type of microcom-puter information found withinthe 400 pages of The Scelbi/BYTE Primer. But, it costs youonly $10.95, plus $1 for postageand handling, complete! Youknow the quality of Scelbi andBYTE. This is your assurance ofexcellence throughout this MUSTtext. Order your copy today! And,get one for a friend!

BYTE June 1978 65

Using Filter Banks for Feature Extraction

A less accurate yet simple and inexpen-sive method for obtaining a spectral repre-sentation is a filter bank. It is widely used inexisting speech recognition machines, in-cluding the most successful commercialspeech recognition system. As shown infigure 7, a filter bank consists of a numberof bandpass filters, covering adjacent fre-quency bands. The output of each filter isfull wave rectified, then smoothed andsampled by an analog to digital converterfor computer input. The output of the con-verter for any given filter is related to theenergy present in the frequencies of thefilter's passband.

A filter bank is a useful tool for featureextraction. It should be obvious that thespeech spectrum can change only as fast aswe can move our articulators. The con-straints here are about the same as in thecase of volume changes mentioned before.That is, a bandwidth of about 50 Hz issufficient to accurately represent spectralchanges. This gives us a sampling frequencyof 100 Hz. Assuming eight filters in ourfilter bank, we get 800 digital words persecond of speech. If the converter is ac-curate to eight bits, the data rate is 6400bits per second, quite reasonable for thedegree of accuracy retained. What makes afilter bank even more exciting for featureextraction is that a number of parametersare available that can be manipulated to getvarious tradeoffs of data rate versus accuracy.Thus both simple and sophisticated systemscan be built using the same type of hard-ware. The parameters available for experi-mentation are:

• Number of bandpass filters.

• Bandpass filter bandwidth and centerfrequency.

• Bandpass filter skirt (selectivity)characteristics.

• Amplitude compression.

• Smoothing cutoff frequency (samplingrate).

It should be obvious that the more filterswe have, the more accurate the spectralrepresentation. A filter acts as an averagingdevice over the frequency in its bandpassand thus it destroys local information. Byincreasing the number of filters and restrict-ing their passbands this averaging is doneover a smaller frequency range.

The bandwidth of the bandpass filters canbe the same for all filters but usually it variesdepending on the filter's center frequency.It has been shown that the ability of the earto discriminate between closely spacedfrequencies decreases when these closelyspaced frequencies are high. Based on thisobservation, the bandwidth of the filters ina filter bank is rarely, if ever, the same.Instead it is set so that the higher the centerfrequency of the bandpass filter, the widerits bandwidth. The setting of a bandwidthfor a given center frequency is done usuallyon the basis of experience in an effort tohave enough filters covering the areas ofgreatest importance. Once a setting isdecided upon, based on some criteria,experimentation may be required to opti-mize that particular filter bank. Anotherapproach is to decide on some rule for set-ting the bandwidths. For example, a success-ful recognition system has been built usingfilter banks of third octave bandpass filters

ANALOG TO

DIGITAL CONVERTER

Figure 7: A filter bankfeature extractor consistsof a number of bandpassfilters (BPF1 to BPF (N) )covering the range fromabout 100 to 10 kHz.The output of the filters isrectified and low passfiltered (LPF). Then it ismultiplexed and digitizedby the analog to digitalconverter for input intothe computer.

AUDIOSPEECH (INPUT

66

June 1978 © BYTE Publications Inc

Now Dynabyte builds three Great Memories

, ;"NewJ l6Kjmd 3?k,fully static,RAM's. wWi either 250 ns. or 450 n^.\* . * ■; >'; typical access time.'Assembled. Tested. Burned irr. Guaranteed."^ ^ *s «■ *Like'oufir 16k dynamic-RAM. Built as sol|d as the 4,400 year-old pyramid's. *

Ancient Egyptians didn't stop *with just one pyramid. The'Great,Pyramid stands on the Plain ofGizeh with two other monuments.erected for kings and queens.

Dynabyte didn'tstop with one16k dynamic RAM, either. Nowyou can get 16k and 32k fullystatic RAM's that are built with thesame unmatched engineeringability and manufacturing skillthat went into Egypt's wonders ofthe ancient world.

When we say built, we meancompletely built. Assembled,tested and burned in. We don'tleave anything undone. That way,you can buy any Dynabytememory and know that it is backedby a factory guarantee for one fullyear. Kits and semi-kits can'tsay that.

Our 16k static and our 32kstatic are available with either 250ns. or 450 ns. access time. Our250 ns. module is completelycompatible with the 4MHz Z-80Aprocessors. The 450 ns. modulesare compatible with the 8080 andthe faster 3MHz 8085 processors.

The Great 16k StaticMemory. 250 ns., $555.450ns., $525.

• 4k block addressing along 4kboundaries

Circle 110 on inquiry card.

--•"BankSelect »„

• Write Protect with alarm foreach 4k block

• Full Schmitt trigger buffering

• No DMA restrictions

• Completes-100 bus com- ,patibility, including the AlphaMicro and Z-2.

The Great 32K Static »Memory. 250 ns., $995.450ns., $925.

• 4k boundary addressing

• Full Schmitt trigger buffering

• No DMA restrictions

•-Conservative thermal design"J- • Completes-lQOcompati- *i bility, including the AlphaMicro, and Z-2.The Great 16k DynamicMemory. $399.

• Highly cost effective

• No wait states

• Transparent refresh

• 16k addressing boundaries

• Widest S-100 mainframe anddisk system compatibility

All of Dynabyte's memoriesmeet rigid industrial grade stand-ards. Design, components, con-struction, testing and perfor-mance. But if a module ever needsrepair, we provide factory servicewith 24 hour turnaround for bothwarranty and non-warranty work.

Ask for the Great Memories byDynabyte at your local computerstore. You can also pick up com-plete product information whileyou're there.

If you haven't got a localcomputer store, write Dynabyte, Inc.,at its new address: 1005 Elwell Court,Palo Alto, CA 94303. Or call its newnumber (408) 965-1010.

DSIIiaBSITE

Builders of Great Memories

BYTE June 1978 67

BPF(N)

■w-

Figure 8: Using a comparator after the lowpass filter in the filter bank simplifieshardware and reduces data rate at the cost ofdiscarding useful information. The thresh-olds should be adjusted for the voice of eachindividual speaker. In addition, a goodautomatic gain control circuit should pre-cede the filter bank to normalize the timedomain signal.

covering the frequencies of 150 Hz to10 kHz. Such filters are commerciallyavailable for audio work.

The skirt or cutoff characteristics of thefilters in a filter bank is determined by thefollowing factors:

• A steep skirt will give better frequencyseparation than a gently sloping one.It will also make for abrupt transitionsfrom one filter to the other when aformant crosses the boundary. This isnot necessarily bad but it might affectsome systems. Both skirt types areused in practice.

• It is desirable that the filter exhibitlinear phase shift in its passband. Fora given filter order, that means thatthe skirts will be less steep than thecase without phase restrictions. Ingeneral, this is not a serious considera-tion for a practical system.

• The cutoff characteristics depend onthe order of the filter (the number ofmathematical poles it has in its designequations). Higher order filters givesteeper characteristics but require morepoles and thus cost more.

• It is desirable that filters overlap atthe three db points of their slopes.

The amplitude (volume) of the speechsignal is dependent on two factors thatcannot be controlled easily. These are thedistance and orientation of the speaker withrespect to the microphone and the loudness

N-BIT WORD TOCOMPUTER

of the voice at any given time. Volume alsovaries constantly within a given word as wehave already seen. This can result in a 50 dbrange for the amplitude of the speechsignal. The dynamic range of an 8 bit con-verter which is most likely to be used inthe environment of computer experiment-ers is 20 log (256) = 48.16 db. This seemssufficient but it will give severe quantiza-tion errors for low amplitude signals. Thelower the amplitude of the signal, the fewerbits will be used to encode it, thus throwinga lot of the information out. A 12 bit analogto digital converter would help but it coststoo much and it wastes memory space inan 8 bit machine because it takes a word anda half to store its output.

A different approach would be to usesome form of amplitude compression beforethe analog to digital conversion. An audioautomatic gain control circuit can be in-serted between the audio source and thefilter bank. It will limit the dynamic rangeof the signal by the amount of compressionit offers, usually in the range of 20 to40 db. Such an automatic gain control cir-cuit (AGC) should have very fast attack.Its release time should be about two tothree times the lowest glottal period ex-pected. It should not be less than thatbecause then it will tend to distort thesignal by compressing between glottalpulses. Amplitude compression can alsobe applied after the rectifier smoothingfilters by taking the logarithm of the signalat that point. The logarithm operation is sug-gested by the fact that our ears (and all ofour body sensors) respond to stimuli inten-sity in a logarithmic fashion. This fact isutilized in every audio amplifier in thedesign of the volume control potentiometerwhich is made logarithmic so sound will

68

June 1978 O BYTE Publications Inc

FEATURES:

The AJ 841 I/O.

A completely

refurbished IBM Selectric

Terminal with built-in ASCII

interface. Just $995.

• ASCII code.

• 14.9 characters per second printout.

• Special introductory price-$995(regularly $1,195). 75% discount fromoriginal price of new unit.

• Parallel Interface(requires parallelport for I/Otransmission]

• Order direct fromfactory.

• Documentationincluded.

Reliable, heavy duty Selectricmechanism.

Off-line use as typewriter.

• 30-day warrantyparts and labor

• High qualitySelectricprinting.

9 Full warranty informationavailable upon request!

r

■■

■■■i■■■■i■

AJ 841 WARRANTY AND SERVICEIS AVAILABLE IN THEFOLLOWING CITIES:

Los Angeles/CincinnatiPhiladelphia / DetroitHackensack/DallasColumbus / HoustonCleveland / AtlantaSanJose/ChicagoBoston / New YorkWashington, DC.

For furtherinformation call(408) 263-8520

ANDERSONJACOBSQN

Anderson Jacobson, Inc., 521 Charcot AvenueSan Jose. California 95131

HOW TO ORDER ANAJ 841 I/O TERMINAL

Make cashier's check or money order

payable to:

ANDERSON JACOBSON, INC.

Address your request to:Personal Computer TerminalANDERSON JACOBSON. INC.521 Charcot AvenueSan Jose, CA 95131Upon written notification, pick up yourterminal at the AJ service officelocated in one of the above cities.Allow six to eight weeks for delivery.A final check of your unit will be madeat the local AJ service office at time ofpickup.

For warranty or repair service, returnunit to designated service location.Available in U.S. only.

CLIP AND MAIL WITH ORDER

SELECT EITHER: □ EBCD keyboard D Correspondence keyboard

Number of units @ $995 each $

Sales tax at delivery location $

Shipping and handling $35

each (excluding San Jose) $

TOTAL $

NAME-

ADDRESS -CITY

-SIATE-

-ZIP.

PHONE I

Circle 10 on inquiry card.

BYTE June 1978

69

BAND PASSFILTERS

DIGITAL FREQUENCYPROFILE CONVERSION

C: COMPARATORSA: AMPLIFIERS

seem to increase linearly with shaft rotation.The disadvantage of taking the logarithm ofthe smoothed signal is of course the numberof required log circuits which is equal to thenumber of the filters in the filter bank. Thelogarithm can also be taken by having ananalog to digital converter that convertslogarithmically. There is such a productavailable from Precision Monolithics Inc.It is the DAC-76 companding digital toanalog converter that can be used to build an8 bit logarithmic analog to digital converter.As a final note to amplitude processingwe should mention a method used in a num-ber of small systems. In its simplest form itconsists of using in the place of the multi-plexer and the analog to digital converter anumber of comparators which change statewhen the input voltage exceeds a presetthreshold as shown in figure 8. The outputof the comparators forms an N bit binaryword where N is the number of the filtersin the filter bank. This gives a significantreduction in data rate and works for smallvocabularies of the order of 8 to 12 words.It requires a good automatic gain controlbefore the filter bank, and its major weak-ness is that the comparator thresholdshave to be manually adjusted for eachindividual speaker. A variation of this

Figure 9: The differential comparatorfeature extractor detects which one of twoadjacent bandpass filters has the highestenergy. The output of each pair of filters issummed together and compared with thesum of the next pair of filters, yieldinganother, coarser comparison from thefrequency viewpoint. In this example, theoutput of eight filters (we assume that theoutput of the blocks labeled BPF is therectified and smoothed output of thebandpass filters) is encoded into a 7 bitdigital word. The computer performs patternrecognition on time varying sequences ofthese 7 bit words.

method is used in a commercial recognizermade by Scope Electronics (US Patent#3,812,291). In that system the compara-tors are connected between two consecutivefilter outputs to detect the slope or frequencyprofile. Figure 9 shows this differential com-parator connection. Compared to the fixedthreshold method it has the advantage thatno adjustment for the individual talker isneeded and the automatic gain control be-fore the filter bank is not necessary. Its dis-advantage is that it throws away more infor-mation than the fixed threshold method.

70

June 1978 © BYTE Publications Inc

Memory Makes the Computer,Central Data Makes the Memory

Memory is an important part of a computersystem. So don't even think of settling for apoor quality RAM board. Central Data offerscarefully engineered 16K, 24K and 32K RAMboards to suit your needs. We take our RAMboards seriously, so should you.Reliability. Each one of our boards comes com-pletely assembled, tested and burned in. Nofiddling with an infinite number of parts from akit or costly investment in equipment to testyour board. Each one of our boards is backed bya one year warranty to insure your satisfaction.

Expandability. We offer a 16K RAM boardwith capacity to 32K. You can purchase a 16Kboard and expand later or buy a full 32K .

I

Please send me the following:

□ 16K RAM board ($289) Address.

□ 32K RAM board ($475) City

□ additional information State

I enclose $. .

Performance. Unlike some dynamic memoryboards, ours uses an invisible refresh that insertsrefresh cycles between your computer's normalmemory access cycles. This eliminates loss inperformance of your computer with lengthyrefresh cycles.

Power. Our board uses less than one-half thepower of a static RAM.Price. You can buy a 16K RAM board, com-pletely ready to use, for only $289. A full 32KRAM board is available for $475, or you canadd on later for only $200.

When you buy our memory board, you'llbe buying the best equipment at the best price.Order yours today by mail or phone.

Name

"1

Zip_

111. residents add sales tax.1 Central Data P.O. Box 2484, Sta. A Champaign, 1161820

Circle 45 on inquiry card.

Centraldata

P.O. Box 2484, Sta. AChampaign, 1161820(217)359-8010

BYTE |unc 1978 71

The final parameter that can be adjustedin the filter bank feature extractor is thecutoff frequency of the smoothing filters.Reducing it reduces the data rate. Dependingon the amount of reduction significant infor-mation may or may not be lost in this step.Sampling the output of the filters every 20to 30 ms is tolerable in small vocabularysystems. The main consideration here is tofind a combination of number of filters,analog to digital conversion quantizationand sampling rate that will maximize theinformation retained and minimize the datarate of the pattern.

In summary, a filter bank offers a goodyet inexpensive real time feature extractorwhich can be utilized in a speech recognitionsystem. Properly used, it has performancesimilar to systems based on linear predictionresiduals, a state of the art digital signalprocessing technique.

Zero Crossing Detectors

Another feature extraction techniquethat was popular for its simplicity in theearly days of speech recognition is formanttracking using zero crossings. It is interestingto note that probably the first widely knownspeech recognizer capable of recognizing thedigits was built in 1952 at Bell Labs usingformant tracking based on zero crossingmeasurements. The contraption was gro-tesque by today's standards, using vacuumtubes as active elements and capacitors formemory. It was claimed that it achieved

97 percent recognition accuracy. Its formanttracker was based on two well knownprinciples: First F1 and F2 formants spantwo different frequency ranges, that is F1moves roughly between 200 and 1000 Hzand F2 moves between 800 and 3500 Hz.There are cases for which this is not truebut for about 98 percent of the time thisholds for any speaker, man or woman.Second, F1 and F2 of a given speaker for agiven vowel remain about the same day afterday of testing. (This is not true for thesame vowel pronounced by different speak-ers and thus the machine has to be trainedto a given speaker before it can recognize hisor her speech.) This means that we couldisolate the first two formants and theywould be useful as features. Two bandpassfilters centered around the respectiveformant regions would separate the formantsexcept when they are in the overlapping areaof800to1000Hz.

It turns out that when we highly amplify,then clip a signal to obtain the instanceswhen the signal crosses zero, the problem istaken care of automatically. If the bandpassfilters slope in the overlap region as shown infigure 10, F1 will always be stronger than F2at the output of the F1 filter and vice versa.The clipper has a property called "capture"which means that any signal that is a few dbor more stronger than another will swampout the weaker signal and the output of theclipper will contain only the strong signal.This phenomenon occurs also in FM radio

Figure 10: The frequencyresponse of the two filtersis designed to separateF1 and F2, when used in azero crossing based for-mant detector. The filtercharacteristics overlap inthe region of formantoverlap but their slopes aredesigned to separate thetwo formants.

200 300 400 500 600 800 IK

Hz

ZK 3K 4K 5K 6K 7K 8K 9K

72

June 1978 <j BYTE Publication! Inc

Radio Shack's personal computer system?This ad just might make you a believer.

You can't beatthe 4K system at

$599

.. or the step-up16K system at

$899

... or the fast4K/printer system at

$1198

...orthe Level-ll

16K/printer/disk

system at

$2385

TRS-80 "Breakthru"

• TRS-80 microcomputer

• 12" video display

• Professional keyboard

• Power supply

• Cassette tape recorder

• 4K RAM, Level-I BASIC

• 232-page manual

• 2 game cassettes

TRS-80 "Sweet 16"

• Above, exceptincludes 16K RAM

TRS-80 "Educator"

• Above, exceptincludes 4K RAM andscreen printer

TRS-80 "Professional"

• Above, exceptincludes 16K RAM,disk drive, expansioninterface, andLevel-ll BASIC

So how are you gonna beat the system thatdoes this much for this little? No way!

...The amazing new

32K/Level-ll/2-disk/

line printer system at

$3874

TRS-80 "Business"

• Above, exceptincludes 32K RAM,line printer,and two disk drives

Get details and order now at Radio Shack stores and dealers in the USA, Canada, UK, Australia, Belgium, Holland, France, Japan.Write Radio Shack, Division of Tandy Corporation, Dept. C-002, 1400 One Tandy Center, Fort Worth, Texas 76102. Ask for Catalog TRS-80.

Prices May Vary at Individual Stores and Dealers

Radio /haek

The biggest name in little computers

BYTE June 1978 73

COUNTER RESET(FROM COMPUTER)

reception with a limiting (clipping) inter-mediate frequency (IF) stage. It is one ofthe reasons FM was chosen for qualitybroadcasting, ie: it is not susceptible tointerference from other weaker stationsor interference from noise. Filtering andcapture ensure that the output of theclipper contains only one frequency, theformant we are tracking. Determiningwhat that frequency is requires nothingmore than counting how many times thesquare wave output of the clipper crosseszero within a given interval, perhaps 20 ms.The data rate of the zero crossing formantextractor (see figure 11) is quite low, about50 samples per second consisting of two8 bit words per sample, a total of 800 bitsper second.

In practice it works well with vowels,especially if there is no significant F1 andF2 overlap. Formant overlap and noise doaffect its performance and thus limit itsapplicability. It is perhaps the simplest viablefeature extractor that can be used and itdoes not contain any critical analog cir-cuitry. One word of caution about theimplementation, learned the hard way: an8080 processor running with interruptsgenerated by the rising and falling edges ofthe clipped F1 and F2 signals is not fastenough to keep up with the pace in somecases and data is lost. Rather than tryingan all software approach, I recommend thattwo hardware counters be used, read andreset by the computer every 20 ms. Thesecounters are shown in figure 11.

Pattern Recognition

A set of features representing a word is apattern corresponding to this word. Patternrecognition is the process by which, given anunknown pattern, we decide which word

Figure 11: A zero crossing formant extrac-tor. The zero crossing method of formantextraction uses two special bandpass filtersto separate the formants. The output of thefilters is passed through a zero crossingdetector (a comparator whose threshold isset to zero) that puts out a logical "1" or a"0" depending on whether its input ispositive or negative. The output is fed intoa counter for each formant and the numberof "0" to "1" transitions is counted for 20ms. Then the counters are read by thecomputer and reset to start the next 20 mscounting period. An envelope detector(rectifier followed by a low pass filter) feedsa comparator whose threshold is set to de-tect word beginnings and endings.

this pattern represents. An alternate term ispattern classification. A basic process ofpattern recognition is template matching.The unknown pattern is compared to anumber of reference patterns stored in mem-ory and the differences between theunknown and the references are noted.Obviously the smallest difference indicatesa best match and the unknown word is theword that corresponds to the referencepattern that gave the smallest difference.There exist many ways to compare twopatterns. Since features are represented bynumbers, the most straightforward way is tocompute the numerical difference betweencorresponding samples and then sum allthose differences. That sum would be ameasure of similarity between the patterns.There is a small precaution to be taken inpractice when computing the sum of thedifferences. All differences should be posi-tive. Otherwise when we sum them, negativedifferences will cancel positive ones and the

74 | une 1978 © BYTE Publications Inc

THE SSB *150FLOPPY DISCOUNT

Affordable

The tribe at Smoke Signal Broadcasting took ourBFD-68 disk system and scalped the price, butnot the features to create the ABFD-68 (AffordableBasic Floppy Disk). We appreciate the fact thatthe computer hobbyist gave us our start and wehaven't forgotten you.

$649 Assembled

Compare Price. Our SS-50 bus compatible disksystem is $150 less than the assembled price of theleading S-100 disk system. And you can at leastdouble that savings when you buy one of thecomputers manufactured by MSI or SWTPC thatuse the superior 6800 microprocessor.

Programmable

The BFD-68 is well known for its fine software. Thesystem comes with the best disk operating systemavailable and we offer a multitude of other com-patible software products. These include a BASICinterpreter with disk file handling capability. Bythe way, our DOS now easily handles true randomaccess files as well as sequential. Also, we have asuper fast BASIC compiler for business applica-tions. In addition, a Text Editor, 2 Assemblers, a

Trace Disassembler useful for program debuggingand an Object to Source Code Generator are allstock items available for immediate delivery.A word processor will be available very soon.

Reliable

We delivered ourfirst mini-floppy disk system ayear ago — 6 months ahead of any other 6800based mini system. Thus, we've had twice theexperience in building reliability into the system.Our NEW disk controller was designed using allwe have learned in the past year about systemreliability.

The ABFD-68 contains all the built in reliabilityof our regular BFD-68 plus you save money bysupplying your own cabinet and power supplyfor the disk.

Available

We've shipped literally tons of our BFD-68 disksystem in the past year and have learned to keepour production up with demand. Give us a call andchances are we'll be able to ship you the newABFD-68 from stock and charge it to your MasterCharge or Visa card. Better yet, ask us for the nameof the computer store nearest you that carries ourcomplete line of computer products.

T

Circle 320 on inquiry card

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

BYTE June 1978 75

effect would be a smaller total differencethan is actually the case. To make surethat all differences are positive we can takethe absolute value of the differences beforewe sum them. This is done simply by makingany negative distances positive and leavingthe positive ones alone. A fancy name forthe absolute value of feature differences is"Chebyshev distance." "Euclidean distance"is another fancy name used to denote thesquare root of the sum of the squares ofindividual differences. The square of a num-ber is always a positive number and thisovercomes the problem of adding differenceswith different signs. Squaring takes muchmore time than finding the absolute valueand it turns out it is no better than the abso-lute value as an indicator of degree of match.

Another pattern recognition techniquenot based on template matching is "lineardiscrimination." It is not very useful inpractice but it excites people's mathematicalinstincts enough to write papers about it sowe will mention it for the sake of complete-ness. If we view the features as dimensions ina multidimensional space (also called hyper-space), a pattern becomes a point in thatspace. If the points for all pronunciations ofa word cluster together in a region of thishyperspace and regions corresponding todifferent words do not overlap, we can de-fine hyperplanes that separate these regions.To classify a pattern then we can check tosee if it is in a region enclosed by a given setof hyperplanes and keep checking until wefind which region it corresponds to. If theregions cannot be separated by hyperplanesthe feature space is not linearly separablewhich means that we can try to enclose theregions in sections of hyperplanes. It oftenturns out to be a matter of luck whether thefeature space turns out to be even non-linearly separable. The net result is thatlinear discrimination is often difficult if notimpossible to use in practice.

Pattern recognition can also be achievedusing a set of tests on a pattern to decidewhich word it represents. A simple exampleof that method is the rules used in the pre-viously mentioned case of the volume signalto determine which one of the three wordsacceptable to the system has been pro-nounced. In a more complex system it is notvery easy or accurate to do all the recogni-tion by rule. Too many rules might be re-quired and mistakes in the application ofkey rules might cause misrecognition or re-jection. This last problem does not occur intemplate matching because each feature hasequal say in the decision process; thereforea few bad features do not affect the result.

Rules can be used successfully togetherwith template matching to speed up the

matching procedure or to act as an addi-tional accuracy check. For example, in arecognition system that accepts the digits0 to 9, we might recognize a word as "six"by template matching but we may not bevery sure that it is actually a "six": whilethe distance from the reference correspond-ing to "six" was the smallest it might also betoo close to the threshold for a conclusivedetermination. Applying the rule that boththe beginning and end of "six" have to beunvoiced we can either confirm our re-cognition or increase the suspicion thatsomething is wrong, depending on the out-come of the test. In another situation wemight check before template matching tosee if the volume of the word has twoapproximately equal humps. If this test ispassed we can then do template matchingon the words "seven" and "zero" which aremost likely to exhibit a 2 humped volumepattern. If template matching on one ofthese words gives a very good match wellbelow threshold, we could accept it withoutfurther testing of the other patterns, thussaving testing time.

An interesting hybrid (template matchingcombined with discrimination by rule)recognition scheme is phonemic patternrecognition. It is based on the observation ofphoneticians that human words are made upof a limited number of building blockscalled phonemes. In English there are about50 distinguishable phonemes. Thesephonemes were designated mainly bylistening tests. Trying to automaticallyextract the phonemes is very difficult be-cause our machines do not even approachthe generalizing capabilities of the ear whenit comes to speech. Proposals have beenmade to use from 200 to 700 basic units ofspeech for machine recognition in the hopethat it will be easier to discriminate betweenthose less general "phonemes." Reducing aword to a sequence of phonemes gives us avery low data rate pattern and simplifies pat-tern recognition, assuming of course thatphoneme extraction is accurate. Phonemeextraction can be done using templatematching, and recognition of a phonemicsequence can be done by rule.

Unfortunately in real life things are notthat easy. The number of individual phone-mes a machine can recognize depends on thetype and number of features its preprocessorextracts. There exists no way to find out forsure what are the essential features thatdetermine the phonemes for a given systemexcept by tedious trial and error. In addi-tion, coarticulation effects tend to changethe pattern of phonemes depending on thephonemes that come before and after it.These effects can generate quite drastic

76 June 1978 © BYTE Publications In

LOADED WITH EXTRASAT NO EXTRA COST

Microprocessor controller

Serial RS232C interface

Parallel TTL level interface

Full upper and lowercase

ASCII character set (96

characters)

Full 8V2 inch wide paper

Line length of 80 columns at

10 characters per inch

Impact printing

7x7dot matrix

Ordinary paper—roll, fanfold,

or sheet

Serial baud rate to 1200 bits

per second

Multiple line buffer of 256

characters

Built-in self test mode

Instantaneous print rate to

100 characters per second

Sustained throughput to 50

characters per second

Multiple copies without

adjustment

Reinking ribbon mechanism

Expected ribbon life of 10

million characters

Front panel operator controls

Attractive table top console

Check theimpressivefeatures onIntegral'snew IP-125Impact Printer

only3>/iJS

Complete, ready-to-operate..the first impact printer to offerbig printer performance at amini-printer cost.

Write for complete informationor call (617) 926-1011

IntegralData Systems

* INC

5 BRIDGE STREETWATERTOWN, MASS. 02172

.. . AND FOR VERY LITTLE MORE

• Line lengths to 132 columns

• Instantaneous print rate to165 characters per second

• Sustained throughput to 80characters per second

• Print densities of 8.3,10,12and 16.5 characters per inch

• Options program selectableby control codes

• Full CRT screen size multilinebuffer (2048 characters)

• Special set of graphic symbols

• Graphics mode dot plotting

• Form feed control

• Eight switch selectable formsizes

• Automatic page boundaryskip

• Remote printer selection/deselection

• Automatic line feed oncarriage return

IP-225

"The Tractor Impact"

only $949

the pin feed version of the IP-125 with

tractor drive forms control plus all the

standard features of the IP-125.

Circle 177 on inquiry card.

BYTE June 1978

77

changes in the pattern of a phoneme to thepoint that template matching is useless forrecognition. In those cases some form ofrecognition by rule should be applied toseparate the phonemes.

These problems are compounded by thefact that when we decide which phonemerepresents a segment of speech we throwaway all the features that make up the pat-tern for that speech segment. As a result, ifour decision was mistaken for some reason,we have lost that portion of the speech pat-tern and even worse, we have substituted apotentially confusing phoneme. This isalways a problem when we compress datatoo much. A piece of bad information canhave very unpleasant consequences becausedue to the high compression factor there isnot very much information available onwhich to base alternate decisions. A wayaround this problem would be to store theraw data until the final decision is made.If we are not confident in our decision forsome reason we could go back and checkthe point of dispute. This is an example ofthe hypothesize and test method where onthe basis of incomplete information ahypothesis is made as to what the word isand then the data is checked closely toeither verify or reject the hypothesis. Adisadvantage of this method is that it istime consuming computationally. The alter-native to storing thousands of reference pat-terns in memory for template matching on alarge vocabulary is cumbersome, to say theleast. Finding a best match with templateswhen the vocabulary is big will take toomuch time even on very fast computers.Training the machine by storing referencepatterns is still another disadvantage oftemplate matching when the vocabulary islarge because it takes a lot of user time topronounce the training words.

Recognition of connected speech cannotbe done using a simple template matchingrecognizer for two reasons that also com-plicate recognition of phonemes: First, it isvery difficult to find word beginnings andendings in connected speech. Second,adjacent words affect pronunciation becauseof coarticulation. Practical recognizers atthis time are limited to isolated word recog-nition and they require that each word bespoken individually. This is not as restrictiveas it might seem because, with practice,words can be pronounced in sequence quiterapidly, up to 70 words per minute. Otherusual restrictions on current pattern recog-nizers are the need for low ambient noiseand a cooperative speaker. Cooperative heremeans a speaker who is willing to pronouncethe words clearly, evenly, and with a con-scious attempt at uniformity.

An Example of a Speech Recognizer

The basic components of any speechrecognizer are the feature extractor and thepattern recognizer. The feature extractoris also called the "front end" or "preproc-essor" and it is usually made up of analogcircuits. The pattern recognizer nowadaysis always a digital computer. We have seen anoverview of what these two basic functionsare, how they relate to the speech signal andhow they are usually implemented. It istime now to give a block diagram of a speechrecognition system using a particular methodand go into greater detail about the func-tions and implementation of the variouselements. I have chosen for this example afilter bank analyzer because I believe thisparticular approach will give the best resultswith the 8 bit microprocessors popularwith computer amateurs. It is also a wellknown and proven approach, thus morelikely to give consistent results than anyother method. It is not the simplest possibleapproach and I expect to see a number ofsimple recognizers for personal computingmachines based on zero crossing detectionmethods or combinations of zero crossinganalysis and some sort of filtering. Whileit is possible that unusual feature extractorscould give surprising results, the chancesof something like that happening are verysmall. Speech recognition has a historyabout 30 years long and during that timemany schemes have been tried, none ofwhich gave better results in practical realtime situations than the filterbank featureextractor.

Figure 12 is a block diagram of a com-plete filter bank feature extractor. Let uspay close attention to the specifics ofits elements.

Microphone

If the system is to operate in a quietroom, the only consideration for the micro-phone would be a reasonably flat frequencyresponse extending to about 8 kHz. Inpractice a quiet room is rarely the case.Radios, passing cars, the TV, the Teletype,the phone ringing, people talking are allusual sources of background noise whichmight trigger the recognition system orinterfere with the words to be recognized.Once this background noise mixes with thedesirable signal there is not very much wecan do to separate them. The most benefitin a noisy situation can be derived byachieving high signal to noise ratio at themicrophone. This can be accomplishedeither by using a close talking microphonelike the ones used by aircraft pilots ortelephone operators or by using a direc-

78

June 1978 ©BYTE Publications Inc

CDmPflRE

B-flIT CDITFUTERS

THE

TECHNICO

SUPER STARTER

SYSTEM

AND

SUPER SYSTEM 16

v.s.

THE HEATH H-11

SAVE OVER $1000SEND FOR FREE BROCHURE

TECHNICO 1-800-638-2893

9130 RED BRANCH RD. COLUMBIA, MD 21045CIRCLE INQUIRY NO.

COmPflRE

in] 3prices

IN STOREPRICE

MINIMUMKIT

WITH POWERSUPPLY AND1-0

WITH ASSEM-BLYLANGUAGE

WITH MEMORYFOR FULLSOFTWARE

TECHNICO

SYSTEM

16

$299$442

$491$968

HEATH*H-11

$1,350$1,550

$1,845$2,140

*FOR COMPLETE COMPARISON SEE HEATHAND SEND FOR TECHNICO PRICE LIST

CIRCLE INQUIRY NO

CDFTlPflPIE IF" CDFTlPflPiE

PROCESSORS! G-BITCOfllPUTERS

MICRO-PROCESSORFEATURES

SINGLE

CHIP

CPU

WITH HOW.MULT.-DIV.INCL'D.

COMMUNI-CATIONS REG-ISTER UNIT

IB-REGISTERS

TMS-9900TECHNICO

SUPERSYSTEM 16

YES

YES

YES

YES

LSI 11

HEATHH-11

NO

NO

NO

NO

'FOR COMPLETE COMPARISON CONTACT

DEC, FOR 9900 CONTACT

TEXAS INSTRUMENTS OR TECHNICO

CIRCLE INQUIRY NO.

HARDWARE

TECHNICO

HEATH

FEATURES

SYSTEM 16

H-11

DUAL

YES

NO

FLOPPY'S

CASSETTES

YES

NO

VIDEO

YES

NO

BOARD

E-PROM

YES

NO

PROGRAMMER

*FOR COMPLETE COMPARISON SEEHEATH LITERATURE AND CONTACTTECHNICO FOR FREE CATALOG

CIRCLE INQUIRY NO.

Circle 371 on inquiry card.

BYTE June 1978 79

MICROPHONE

•r^-r-DH

AUTOMATIC

GAIN

CONTROL

AUDIOPRE-AMPLIFIER

■4FO R

£ED-Q-E>

Ul}

0-0

-H-

-OD-H-

-dh-CZF

R = PRECISION RECTIFIER (FIGURE 13)LP=LOW PASS FILTER (FIGURE 14)

ANALOG TO

DIGITAL

CONVERTER

(NATIONALMM 5357N

FILTER ADDRESSFROM COMPUTER

ANALOG MULTIPLEXERSUCH AS:

HARRIS HI-508BURR-BROWN MPC-85RCA CD 4051

Figure 12: A detailed block diagram of a filter bank feature extractor. The output of the eight bandpass filters is sampledand digitized every 10 ms. Spectral information as well as word boundaries can be extracted from this set of data. See text foran extensive description of this particular implementation.

tional microphone. A directional micro-phone such as a cardioid will work bestwhen the speaker is facing the noise sourceand there is no sound reflecting surfacebehind him. This last point is easy to over-look when using a directional mike so it isvery important to remember that noise canget to the mike in its sensitive direction byreflection. A close talking mike dependsbasically on its distance from the speaker'smouth to separate between noise and speechand it is most helpful when the speakermoves unpredictably with respect to thenoise source and when the environmentis very noisy and reflective. The microphoneshould be positioned close to the mouthusing a headphone strap or an eyeglass clip.This may or may not be a disadvantagedepending on the application.

Audio Preamplifier

The audio preamplifier is quite straight-forward in design being just a low level audioamplifier with flat frequency response unlessit is used to equalize the response of themike. There should be provisions to adjustits gain so that it can be matched to differ-ent mikes or background noise conditions.This is an infrequent adjustment and itshould be hidden from the casual user.

Changing the gain of the preamp affectsthe point at which the automatic gain con-trol starts compressing and it should bedone carefully.

Automatic Gain Control

As mentioned previously, the AGCshould have very fast attack because in manyinstances the volume of speech increasesvery rapidly. Its release time should be 30to 60 ms, fast enough to follow instancesof quick decaying speech volume but not sofast that it will compress between glottalperiods. If the AGC has a compression rangeof about 40 db it functions as amplitudenormalizer so we do not have to do anynormalization of the filter outputs in thecomputer.

Filter Bank

Eight filters were chosen for the filterbank simply because analog multiplexersare available with either 8 or 16 inputsand 16 filters are just too many. Anotherreason is that a workable system can bemade with six filters as shown by GeorgeWhite (see references) and eight will cer-tainly give adequate performance. Thereis a compromise made here between cost

80

)une 1978 © BYTE Publications Inc

"\

modem / 'mo • dam / [modulator+ demodulator] n - s : a device fortransmission of digital informationvia an analog channel such as a tele-phone circuit.

Those of us who live on the North American continentare blessed with an incredible non-natural resourceconsisting of a gigantic web of tiny copper wires linkingvirtually all of our homes and businesses together intothe greatest telecommunications network in historyThe Bell System and over 1600 independenttelephone companies have been stringing wiresand microwaves nearly everywhere for up to100 years. Now, the 80-103A DataCommunications Adapter bringsthis amazing network toS-100 MicroComputers.

*«*>

*••

The

80-103A Data

Communications

Adapter is more than

just a modem. It is a complete

data communications sub-system

combining on a single S-100 board

functions which formerly required a

modem, an automatic calling unit, and serial

and parallel interfaces. This fully programmable

unit gives you flexibility never before available at such

a low cost. Fully assembled, tested, and burned in with

full documentation and our standard 90 day warranty, the

80-103A is available at retail computer stores across the country

for only 279.95

D.C. Hayes Associates Inc.

P.O. BOX 9884 • ATLANTA, GA. 30319 • (404) 231-0574

Distributed in Canada by TRINTRONICS LIMITED, Toronto

Circle 155 on inquiry card.

BYTE June 1978 81

Figure 13: A precisionfull wave rectifier (R) usedto rectify the output ofeach bandpass filter infigure 12.

C\P-

558 Dual Op Amp Wiring Table (8 Pin DIP)

Pin

Amplifier A

Amplifier

a

2

6

b

3

5

c

1

7

Power:+12 V Pin 8 -12 V Pin 4

rw\

R=IOK A=l/2 558

(ALTERNATE AMPLIFIERS INCLUDE 741, 747, ETC.)

required storage and processing time on onehand and frequency resolution on the other.An interesting study will be to vary thenumber of filters in a given recognitionsystem from let's say 1 to 16 and plot therecognition accuracy versus the number offilters. The center frequencies and the band-widths given for the filters are merely aneducated guess, based on knowledge ofwhere the "action" is in the speech spectrumand on experimental results published sofar. In a practical system some "tweaking"is highly recommended to achieve best re-sults and to the true experimenter it shouldbe irresistible anyway. The skirt character-istics of the filters should be from 24 to48 db per octave. Steeper slopes requiremore poles in the filter which in turn re-quire precision components so the desirefor steeper slopes should be traded off withthe realities of implementation. There arebasically two approaches to implementingthe filters: First hybrid active filters usingthe biquad configuration such as theNational AF-100 or the Kinetics TechnologyFS-50 or the Burr-Brown UAF-31 can beused. They are quite easy to use but theyhave the disadvantage that they cost a lot.Second, one can build filters out of opera-tional amplifiers. Since we are dealing withlow audiofrequencies, under 5 kHz, inexpen-sive 741 type op amps can be used as activeelements. This will be less expensive than theprevious approach but you will have to buildthe filters yourself, not necessarily the kindof trade-off everyone likes.

Rectifiers and Low Pass Filters

The use of relatively low level signalsin the system makes the use of a precisionrectifier after the bandpass filters mandatory.

In precision rectifier circuits op amps areused to eliminate the forward voltage dropof the silicon diodes, that is 0.7 V, thusmaking the circuit behave like an idealdiode. Full wave rectification is desirable togive low ripple. A suitable precision rectifiercircuit is shown in figure 13. A low passfilter is suggested to smooth the output ofthe rectifier. A 2 pole Butterworth filterwith a cutoff frequency at about 20 Hz willwork well and is shown in figure 14. Insteadof the low pass filter we could use an inte-grator that is reset every time it is read bythe analog to digital converter. The inte-grator output would be proportional to theaverage of the energy in the frequency bandof the given filter during the period betweenreads. This of course is more complicatedthan using just a low pass filter and it isquestionable whether it will give better re-sults. It has been used in the past thoughand it is covered by a patent for use invocoders.

Multiplexer and Analog to Digital Converter

There are several monolithic 8 channelanalog multiplexers such as the HarrisHI 508 or the Burr-Brown MPC-85 but theRCA CD4051 is the best choice, costingonly $1 in single quantities compared toaround $15 for the others. There is no needfor a sample and hold because the preced-ing low pass filter assures that the signal doesnot change quickly. An excellent choicefor the analog to digital converter is theNational MM5357N which at $11.95 is threetimes cheaper than the competition. Makingyour own analog to digital converter fromscratch using an 8 bit digital to analog con-verter could cost half as much assuming youdo not count your time.

82

|unc 1978 © BYTE Publications Inc

THEMICROCOMPUTERSOFTWARE STANDARD

CP/M™ OPERATING SYSTEM

• Editor, Assembler, Debugger, and UtilitiesFor 8080 and Z-80 SystemsUp to four IBM-compatible floppy disksDocumentation includes:

CP/M Features and Facilities

CP/M Editor Manual

CP/M Assembler Manual

CP/M Debugger Manual

CP/M Interface Guide

CP/M Alteration Guide

MAC™ MACRO ASSEMBLER

• Compatible with new Intel Macro standard

• Complete guide to Macro Applications

SID™ SYMBOLIC INSTRUCTIONDEBUGGER

• Symbolic memory reference

• Built-in assembler/disassembler

TEX™ TEXT FORMATTER

• Powerful text formatting capabilities

n in ITD I Lir-rqr:DQPJ-I • Text prepared using CP/M™ Editor

Please send me the following:

D CP/M™ System Diskette and Documentation (Set of 6manuals for $100.

□ CP/M™ Documentation (Set of 6 manuals) only for $25.a MAC" Diskette and Manual for $90.

□ SID'" Diskette and Manual for $75.

□ TEX Diskette and Manual for $75.

□ Send information on CP/M User's Croup, high levellanguages and optional packages.

ID DJGJTflL RESEARCH

NOTE: Due to the proprietary nature of CP/M™ software, pleaseenclose your CP/M Serial No. when ordering MAC, SID, or TEXwithout the CP/M diskette. CP/M'" Serial No.

□ BankAmericard No. Exp. Date

D Master Charge No. Exp. Date

□ Check or M.O. enclosed.California residents add 6% sales tax.

Total amount of purchase $

Name

Address

City

State

.Zip

Post Office Box 579 "Pacific Grove, California 93950* (408) 649-3896

Circle 95 on inquiry card.

BYTE June 1978 83

O.I^F

1/2 558 (SEE FIG. 13 FOR PINOUTS)

ALTERNATE AMPLIFIERS INCLUDE: 741, 747, ETC.

Figure 14: A 2 pole 20 Hzlow pass filter (LPF) suit-able for smoothing recti-fied speech audio in figure12.

You will notice that neither volume norinformation as to whether the signal isvoiced or unvoiced is explicitly extractedby the feature extractor of figure 12. Thesefeatures are not lost. They are buried in theoutput of the filters. The sum of the filteroutputs, for instance, at any sample point intime is the volume for that sample. A voicedsound has most of its energy under 1000 Hzand the opposite is true for unvoiced sounds.If we divide the sum of the outputs of thefour higher frequency filters by the sum ofthe outputs of the four lower frequencyfilters we will get the ratio of the energy inthe 1000 to 6000 Hz band to the energy inthe 100 to 1000 Hz band. If this ratio is lessthan 1, the sound is voiced; otherwise itis unvoiced.

There are many ways of utilizing thefeatures extracted by the filter bank featureextractor in a pattern recognizer. Actuallythis versatility is one of the desirable charac-teristics of the filter bank. Here I will de-scribe only one possible approach to illustratethe various principles involved. Since allpattern recognition is done in software,experimentation in this area is easy andfun since you don't have to buy or buildadditional hardware to improve your rec-ognizer. A pattern recognizer has two basicmodes of operation: training and recogni-tion. During training it performs the follow-ing functions:

• Word boundary detection (beginningand end).

• Pattern input and normalization.

• Reference pattern storage.

In the recognition mode, reference patternstorage is replaced by pattern matching(classification). Training is required togenerate reference patterns for the wordsthat form the vocabulary of the recognizer.When a different speaker wants to use thesystem, retraining is necessary to generatereference patterns for the new speaker's

pronounciation of the words. Implicit inour discussion is the assumption that welimit our recognizer to isolated word rec-ognition. Moreover, these words are to bedrawn from a limited vocabulary of about10 to 30 words in size.

Word Boundaries and Normalization

In operation, the word boundary de-tection module reads the output of thefilter bank every 10 ms and stores it in atemporary storage area. To do this an inputroutine sequences the multiplexer, starts theanalog to digital converter and reads the datainto memory. A simple and usable means ofdetecting word beginnings and endings is tosum the output of the filters and compare itto a given threshold. If the energy exceedsthe threshold, a word has begun. There is aprecaution to be taken however when usingvolume for word boundary detection. Cer-tain consonants called plosives or stops(p,t,k,b,d,g) are generated by building uppressure and then suddenly releasing it.While the pressure is being built up no soundis generated and this silence period or "stopgap" can last up to 150 ms. If this occurs inthe middle of a word as in "ago" for exam-ple, the simple boundary detector will befooled to think that two separate wordsoccurred. This can be corrected easily byconsidering any "words" less than 200 msapart to be parts of one word. Anotherproblem arises when a noise pulse occurswithout any word being said as in the casewhere something is dropped on the table.To prevent the word boundary detectorfrom accepting such noise as a word, wedefine any sound with duration less than150 ms as noise because words are not thatshort. These modifications will make theboundary detector quite successful foroperation in a quiet room with a carefulspeaker. For any other situation consider-able additional sophistication might benecessary. In a noisy environment thethreshold for word detection has to beincreased so that the detector will not triggeron background noise. But increasing thethreshold will tend to chop off the lowamplitude beginnings and endings of somewords and this can affect recognition sig-nificantly. If the speaker is careless or he isphysically strained when he speaks because,for example, he is lifting something heavy,breathing noises will tend to be consideredas part of the word being said, furtherdegrading recognition. In these situations asophisticated boundary detector is veryhelpful in maintaining system performance.Once the beginning of a word is detected,the pattern input starts. Every 10 ms theoutput of the filters is sampled and stored in

84 June 1978^ BYTE Publkjcii

OSBORNE & ASSOCIATES, INC

The World Leaders In Microprocessor Books

If you want information on microprocessors, begin withthe Osborne books.

ORDER NOWPrices increase July 1

PROGRAM BOOKS WRITTEN IN BASIC

Payroll With Cost AccountingAccounts Payable And Accounts

ReceivableGeneral Ledger

These books may be used independently, orimplemented together as a complete ac-counting system. Each contains programlistings, user's manual and thorough docu-mentation. Written in an extended versionof BASIC.#22002 (400 pages), #23002* #24002*

Some Common BASIC Programs

76 short practical programs, most of whichcan be used on any microcomputer with anyversion of BASIC. Complete with programdescriptions, listings, remarks and exam-ples.#21002 (200 pages)

AN INTRODUCTION TO MICROCOMPUTERSVolume 0 - The Beginner's Book

If you know nothing about computers, thenthis is the book for you. It introduces com-puter logic and terminology in language abeginner can understand. Computer soft-ware, hardware and component parts aredescribed, and simple explanations are givenfor how they work. Text is supplementedwith creative illustrations and numerousphotographs. Volume 0 prepares the novicefor Volume I.#6001 (300 pages)

Volume I — Basic Concepts

This best selling text describes hardwareand programming concepts common to allmicroprocessors. These concepts are ex-plained clearly and thoroughly, beginning atan elementary level. Worldwide, Volume Ihas a greater yearly sales volume than anyother computer text.#2001 (350 pages)

Volume II — Some Real Products(revised June 1977)

Every common microprocessor and all sup-port devices are described. Only data sheetsare copied from manufacturers. Major chipslice products are also discussed.#3001A (1250 pages)

ASSEMBLY LANGUAGE PROGRAMMING

8080A/8085 Assembly Language Programming6800 Assembly Language Programming

These books describe how to program amicrocomputer using assembly language.They discuss classical programming techni-ques, and contain simplified programmingexamples relevant to today's microcom-puter applications.#31003, 32003 (400 pages each)

PROGRAMMING FOR LOGIC DESIGN

8080 Programming For Logic Design6800 Programming For Logic DesignZ80 Programming For Logic Design

These books describe the meeting groundof programmers and logic designers; writtenfor both, they provide detailed examples toillustrate effective usage of microprocessorsin traditional digital applications.#4001, #5001, #7001 {300 pages each)

OSBORNE & ASSOCIATES, INC. • P.O. Box 2036 • DEPT. 19 -Berkeley, California 94702 •

Price applies to orders postmarked by June 30, 1978* PRICE

6001 Volume 0 — The Beginner's Book

2001 Volume I — Basic Concepts

3001A Volume II —Some Real Products (1977 edition)

4001 8080 Programming For Logic Design

5001 6800 Programming For Logic Design

7001 Z80 Programming For Logic Design

31003 8080A/8085 Assembly Language Programming

32003 6800 Assembly Language Programming

21002 Some Common BASIC Programs

22002 Payroll With Cost Accounting

$ 7.50

12.50

QTY

• 6-1/2%. SF Bay Area residents only

• 6 96, California residents outside SF Bay Area

• Payment must be enclosed for orders of

10 books or less.

• 1 have enclosed:

TOTAL

Sales Tax (Calif, residents only)Shipping Charges

□ check □money order TOTAL AMOUNT OF PURCHASE

AMT

(415) 548-2805 TWX 910-366-7277

9:00 a.m. - 5:00 p.m. Pacific Time

CITY STATE ZIP PHONE

SHIPPING CHARGES Shipping charges for bulk orders to be arranged.

□ 4th class (no charge, allow 3-4 weeks within USA, not applicable to discounted orders)D $.50 per book. UPS (allow 10 days) in the U.S.

□ $1.50 per book, special rush shipment by air in the U.S.

□ All foreign orders, $3.00 per book, for air shipment*These books are scheduled to be published during 1978.

Please notify me when they are available:

D 23002 Accounts Payable and Accounts Receivable

□ 24002 General Ledger

New price list effective July 1, 1978

Please send information on:D pricing, ordering, and titles

available after 6/30/78□ initial dealer consignmentsD dealer and school discountsD foreign distributors ro

Circle 289 on inquiry card.

BYTE [one 1978

85

25 INPUT SAMPLES

consecutive memory locations in the bufferarea. The duration of the longest word canbe expected to be less than 1.2 seconds,giving us a maximum of 120 samples tostore in the buffer. Thus a 1 K buffer will besufficient.

Upon detection of the end of the word,some form of time normalization is requiredbefore the next step. This need arises fromthe fact that people do not time theirpronunciations the same every time. Theymay say "zero" one time and "zeroo" thenext. Before we can do template matching,if we are to be successful, these timing varia-tions should be removed. Linear time nor-malization is a technique of doing just that.To demonstrate the principle assume thatthe normalized word length is 16 8 bytesamples and that our buffer contains 658 byte samples. To do time normalization,all that is necessary is to retain every fourthsample and throw away the rest, as shownin figure 15. If the number of samples inthe buffer is not a multiple of 16 plus 1(16 • N)+1, a number of rules can beimplemented to resolve the problem. Forexample, if there are up to four less samplesthan (16 • N)+1, then samples in areas ofhigh amplitude can be duplicated to reacha number of samples that is exactly(16 • N)+1. The assumption here is that inareas of high amplitude interesting thingsexist. It is not necessarily a correct assump-tion but it can give an idea of what can bedone to adjust the length of the word

6 SAMPLES SELECTED ONE EVERY 4 INPUT SAMPLESTO ACHIEVE LINEAR TIME NORMALIZATION

23 INPUT SAMPLES

DUPLICATES

LAST SAMPLE IS DUPLICATED TWICE SO THAT ABOVE RULECAN BE APPLIED TO NORMALIZE LENGTH TO SIX SAMPLES

Figure 15: Linear time normalization compresses the stream of input samplesto a fixed number of samples (in this case six) by selecting a sample at regularintervals. The resulting fixed length for all words facilitates feature matchingfor pattern recognition. Various techniques (such as duplicating samples)are used to make the number of inputs fit the selection rule.

without resorting to linear interpolation.Larger discrepancies can be treated similarlybut duplication should occur throughoutthe word to avoid stretching only a partof it. Omission of samples can be used aswell, to adjust the length. Insertions anddeletions can be made in a number oflocations in the word based on criteriaother than local amplitude. For example,deletions in the beginning or ending ofwords, or slow spectral changes are otherpossibilities. The best guide as to whatworks for any given system is some ex-perimentation with various techniques.

In usual practice, all words in a voca-bulary for a given system are normalized tothe same length, regardless of their actuallength. It might be useful, though, if a largeproportion of the words of the vocabularyare distinctly different in length from therest, for example "yes," "no," "on," "off"compared to "television," "instrument,""telephone," to have two normalizationlengths. An added benefit to the obvioussavings in pattern storage memory would bea reduction in classification time becausethere is no point in trying to find a matchbetween a long and a short word.

A more advanced form of time normali-zation is based on dynamic programmingtechniques. It is basically a systematic ap-proach to stretching and compressing theunknown word in time until it best fits thereference pattern. It gives excellent resultsbut it has two drawbacks: It is time con-suming and it requires storing all the inputsamples for a given word as reference pat-terns. Despite its shortcomings, its superiorperformance makes it a very interestingtechnique. Its detailed analysis is not withinthe scope of this article.

The final phase of the processing of theunknown word depends on whether we arein the training mode or the recognitionmode. In the training mode all that isnecessary after time normalization is to storethe resulting pattern in memory in an areadesignated for the word pronounced. Toimprove performance two or more referencepatterns may be used for a given word toaccount for variations in pronunciation. Forexample the speaker may be required topronounce each word in the vocabularytwice (although not one immediately afterthe other to avoid similarity as much aspossible) so that two references will begenerated and stored for each word. Varia-tions of this scheme include making thespeaker repeat a word until it is sufficientlydifferent from the first reference or changingthe second reference adaptively as the sys-tem is used. In the recognition mode thenormalized unknown word is compared to

86 |unc 1978 ©BYTE Publications Inc

tffto [L^Mi^J1 to Xfar^ §^35j^

MODEL CC-8

$185.00 (4800 Baud)

$195.00 (9600 Baud and 220V/50 Hz)

9600 BAUD CASSETTE RECORDER

An ASYNCHRONOUS NRZ type Recorder with remote motor start/stop. Error rate108 at 4800 BAUD. Can be used from HO to 9600 BAUD into a UART - no clockingrequired. This is not an audio recorder. It takes RS232 or TTL signals from the terminal orcomputer and gives back the same signals. No audio interface is used. Motor start/stop ismanual or through TTL or RS232 signals.

Tape speeds are 1.6" / 3.0" and 6.0" per second. 110 volt, 60 Hz, 5 watts. (220 Volts onspecial order). Can use high quality audio cassettes (Philips Type) or certified data cassettes.Can be used in remote locations from a 12 Volt battery.

Recommended for DATA LOGGING, WORD PROCESSING, COMPUTER PROGRAMRELOADING and DATA STORAGE. Manual control except for motor start/stop. 6800,8080 or Z80 software for file or record searching available on request with order. Used bymajor computer manufacturers, Bell Telephone and U.S. Government for program reloadingand field servicing.

AVAILABILITY - Off the shelf.

X

PROVIDES MONITOR AND TAPE SOFTWARE in ROM. TERMINAL and TAPE PORTSon SAME BOARD. CONTROLS ONE or TWO TAPE UNITS (CC-8 or 3M3B).

This is a complete 8080, 8085, or Z80 system controller. It provides the terminal I/O(RS232, 20 mA or TTL) and the data cartridge I/O, plus the motor controlling parallel I/Olatches. Two kilobytes of on board ROM provide turn on and go control of your Altair orIMSAI. NO MORE BOOTSTRAPPING. Loads and Dumps memory in hex on the terminal,formats tape cartridge files, has word processing and paper tape routines. Best of all, it hasthe search routines to locate files and records by means of six, five, and four letter strings.Just type in the file name and the recorder and software do the rest. Can be used in theBiSync (IBM), BiPhase (Phase encoded) or NRZ modes with suitable recorders, interfacesand software.

This is Revision 8 of this controller. This version features 2708 type EPROM's so thatyou can write your own software or relocate it as desired. One 2708 preprogrammed issupplied with the board. A socket is available for the second ROM allowing up to a full 2Kof monitor programs.

Fits all S100 bus computers using 8080 or Z80 MPU's. Requires 2 MHz clock from bus.Cannot be used with audio cassettes without an interface. Cassette or cartridge inputs areTTL or RS232 level.

AVAILABILITY - Off the shelf.

2SIO (R) CONTROLLER$190.00 ($160.00, Kit)

6800 CONTROLLER for SWTP$190.00, Tested & Assmb. ($160.00, Kit)

PROVIDES MONITOR AND TAPE SOFTWARE in EPROM. EXPANDS MIKBUG with IKof ADDITIONAL ROM PROGRAM

This is a complete tape controller for the SWTP 6800 system. Has 3K of EPROM spacefor your own programs. A 1 K ROM (2708) is provided with all tape and monitor functions.The ROM program is identical to our extensive 8080 ROM program.

Has one ACIA for one or two tape drives, one UART for an additional Serial port and a4 bit parallel port for motor control. Will control one or two CC-8 or 3M3B drives with thesoftware provided. Can be used with other tape drives controllable with 4 TTL bits ifappropriate software changes are made.

Extra serial port is provided for your use with a second terminal or printer (RS232, TTLor 20 ma).

The ROM program supplements the MIKbug program and is entered automatically onreset. SWTbug compatible ROM is also available.

AVAILABILITY - Off the shelf.

Z 80 BOARD for SWTP COMPUTER

Now you can use the 8080/Z80 software programs in your SWTP 6800 machine. Re-places your MPU board with a Z80 and ROM so that you are up and running with yourpresent SWTP memory and MPS card. 1 K ROM on board replaces MIKBUG.

AVAILABILITY - Off the shelf.

J&190.00, Tested & Assmb.

For U.P.S. delivery, add $3.00. Overseas and air shipments charges collect, N.J. Residents add 5% Sales Tax. WRITE or CALL for furtherinformation. Phone Orders on Master Charge and BankAmericard accepted.

National Multiplex Corporation

( . .,- - j 3474 Rand Avenue, South Plainfield NJ 07080 Box 288 Phone (201) 561-3600 TWX 710-997-9530 t. - . . . ^ .

Circle 275 on inquiry card. byte |une 1978 87

IF AT FIRST THERE IS NO MATCH

DIRECT COMPARISON

s1 s1

THEN SHIFT AND TRY AGAIN AND POSSIBLYFIND A GOOD MATCH

si

SHIFTED RIGHT ONE SAMPLE

S^: REFERENCE SAMPLE

S{,: INPUT (UNKNOWN) SAMPLE

Figure 16: Shifting the unknown left and then right one position helps pre-vent mismatches due to missing ends or beginnings. In this case the rightshift gave a good match. This test has been simplified to one parameter (S)which might be the output of one filter in a filter bank.

each reference pattern by computing thesum of the absolute values of the differencesof the features. The smallest sum indicatesthe best match between the unknown andthat reference. This alone is not sufficientfor recognition because a word that doesnot belong to the vocabulary of the systemwill always give a best match because one ofthe reference patterns is bound to be morelike it than the others. To avoid "recog-nizing" words that are not in the vocabulary,we impose the restriction that successfulrecognition requires that the smallest dif-ference measure will be smaller than a giventhreshold. This threshold has to be foundexperimentally for any given vocabulary. Ifit is too high, it will allow for acceptanceof words that are not part of the vocabulary.If it is too small, words that are in the voca-bulary but not pronounced very close to thestored references will be rejected.

Word beginnings and endings usuallyhave low amplitude and it is possible thatthe word boundary detector could chopthem off. If that happens, it will most likelyhappen only occasionally and as a resultthere will be instances where the referenceand unknown patterns are shifted with re-spect to each other in time. For this reason,if computer time is available, the unknownmay be shifted to the right one position andthe difference calculated and then to the leftand the difference computed again as shownsymbolically in figure 16. The smallest ofthe three differences thus computed is to beused as the indicator of match quality.

When a word is recognized it can be useddirectly to perform a function which couldbe, for example, the equivalent of pushing akey on a calculator. In some instances it isnecessary or desirable that more than oneword be used to perform a single function.For example the sequence of the words"light on" can perform the function of turn-ing on the lights in a room. In these casesthere should be a subroutine to check ifthe word sequence is correct. For example,the word "light" should be followed by thewords "on" or "off." If the word "radio"follows, we know that either "radio" or"light" has been misrecognized. Thesesyntactical constraints decrease the proba-bility that an incorrectly recognized wordwill cause something undesirable to happen.This is due to the fact that for a sentence tobe correct, all the words that form it have tobe correct, at least syntactically. Syntacticconstraints of course do not help when thewords have the proper sequence but are stillnot correct. For example, if we are con-trolling a vehicle of sorts and we say "for-ward faster," if "faster" is recognized as"slower" the sentence will be syntacticallycorrect but it will not do what we want.

Performance

The performance of a recognizer is evalu-ated on the basis of the percentage of thewords it recognizes correctly out of the totalpronounced. For a given recognizer therecognition score will vary from speaker tospeaker, with the speaker's emotional condi-tion and with the level of background noise,to mention some of the variables. Recog-nition scores quoted in articles and adver-tisements are likely to be the ones obtainedwith best conditions and they are not neces-sarily indicative of the performance of therecognizer under actual conditions. Thereexist three types of recognition errors:failure to recognize a given word, substitu-tion (recognizing one word for another)and misrecognition (recognizing a word notin the vocabulary). The first type of erroris in most cases merely an annoyance re-quiring that the user repeat the word. Thelast two types of error can cause problemsbecause the recognizer will give a responsewhich is wrong. Failure to recognize willoccur when the recognition threshold (themaximum that the smallest difference sumcan be to recognize a word) is set too low.Setting the threshold too high will result inmisrecognition, as mentioned previously.Substitution becomes a problem when thevocabulary size is increased. To avoid sub-stitution the vocabulary can be divided intwo segments and a shift word used toswitch between the two segments of the

88

|unc 1978 O BYTE Publications Inc

Good-bye, Atlantic City

Hello, PHILADELPHIA

ERSONAL

OMPUTING

THIRD YEAR — LARGEST YET

PHILADELPHIA CIVIC CENTER

AUGUST 24, 25, 26, 27

FOUR FULL DAYS

August 24Industry Trade Show

for Dealers, the Industryand Exhibitors Guests

AND

A complete lineup ofseminars and meetings.

August 25, 26, 27

PERSONAL COMPUTER SHOW

New Products • Seminars • Forums • Technical Talks

The largest, with 300 booths. The longest, at

four days, of any computing show.

Don't Miss

PERSONAL COMPUTING COLLEGE™ • over 80 hoursof in-depth seminars ■ ALL FREE

PLUS FUN ACTIVITIES

Art Show • Music Festival • BanquetComputerized Mouse Maze

Save Money!

Make reservations

now!

Exhibitors reserve yourspace now!

PRODUCED BY

PERSONAL COMPUTING INC. • John H. Dilks, President

Rt. 1 • Box 242 • Mays Landing, NJ 08330 • Information 609-653-1188

Circle 299 on inquiry card.

BYTE |une 1978 89

vocabulary. The shift word can be "shift"or "change" for example. This would cor-respond to the shift key on a typewriter orthe function ("f") key on a calculator. Theuser will have to remember in what segmenthe currently is and when a word from theother vocabulary has to be pronounced heshould preface it with the shift word. Thesystem can provide the user with an indi-cation such as an LED to remind him ofthe current segment. Using a number of dif-ferent shift words it is possible to extend thetechnique to several segments of a largevocabulary.

Advanced Systems

The hottest areas in speech recognitiontoday are feature extraction using digitalspeech processing and speech understandingsystems. Unfortunately both are out of thereach of the capabilities of the usual amateurcomputing experimenter's machines. Inaddition they tend to be involved theoreti-cally so we will only briefly mention themhere. Digital speech processing involvesoperating directly on the sampled timedomain waveform and as it was mentionedearlier it requires very fast computers. Oneof the most usual operations is the FourierTransform. It is computed using a fast al-gorithm called the FFT for Fast FourierTransform and the result is the spectrum ofthe signal as was shown in the example offigure 5 (actually figure 5 is the log of themagnitude of the spectrum). Its advantageover output of a filter bank is resolution andaccuracy. A typical FFT derived speechspectrum is made up of 128 frequenciesspanning the range from 0 to 5 kHz. Theamplitude at each frequency is specifiedwith 12 to 16 bit accuracy. Such perfor-mance is very difficult to achieve usinganalog components and certainly not eco-nomical. The output of the FFT can be useddirectly by making different measurementson it to extract features, such as the for-mants. IBM is using this approach in theirresearch effort in speech recognition which,by the way, is very well funded, in the rangeof millions of dollars per year.

Another digital method for speech pro-cessing is "linear prediction." It is a methodby which the impulse response of the vocaltract can be extracted from the speech sig-nal. It is basically a time domain operationand it involves predicting the next sample ofthe waveform on the basis of a linear com-bination of the N previous samples. It can beused for formant extraction but it is attimes quite sensitive to minor aspects ofthe input signal so it is not as reliable asmight be desired. When it works it givesexcellent results and therefore it has a lot

of promise as a formant tracking tool. Ithas also been used in isolated word speechrecognition by storing the vocal tract im-pulse response it generates as referencepattern and then comparing it with the im-pulse response of the unknown. It gavevery good results in a vocabulary of 200words. As it would be expected, this methodyields results very similar to the filter bankapproach because they are very similar insubstance although totally different inimplementation.

Formant extraction can also be achievedwith "cepstral" analysis which is based onthe Fast Fourier Transform. The cepstrumis the spectrum of the logarithm of a spec-trum. These operations separate the impulseresponse of the vocal tract from the drivingfunction. Its name is derived from the wordspectrum spelled more or less backwardsbecause the operations involved in obtain-ing it are very similar to spectral analysis ofa time domain signal. It gives very good re-sults when used for pitch extraction butwhen used for formant extraction it is notvery reliable. It tends to fail in differentways than the linear prediction methods soperhaps the two methods combined willyield good results.

All these methods will become morecommonly used as computer technology ad-vances decrease the cost of very fast com-puters. Because of their accuracy (at leastwhen the data is to their liking) these al-gorithms are bound to play a significantrole in feature extraction of futurerecognizers.

Speech Understanding

Speech understanding systems differfrom speech recognition systems in thatthey do not just recognize sequences ofwords but instead they use knowledge aboutthe subject of discussion to check if theword sequences make sense. They use syn-tactical analysis as previously mentioned aswell as context analysis to improve recog-nition. For example, a speech understandingsystem used to input the moves of a chessplayer to the computer (an experimentalsystem doing just that has been built atCarnegie-Mellon University) checks therecognized sentences for syntax errors andthen checks whether the sentence gives alegal chess move for the particular situation.Speech understanding systems are usuallydesigned with a specific problem domain inmind for which the semantics are known.The US Defense Department's AdvancedResearch Project Agency (ARPA) has spentabout $30 million on the development of aspeech understanding system in the last

90

June 1978 ©BYTE Publications Inc

five years. The results have not been tooexciting, an indication that high perfor-mance speech recognizers are hard to build.

Commercial Systems

Threshold Technology Inc, Dialog Inc,Perception Technology and Scope Elec-tronics all offer commercial speech recogni-tion systems capable of recognizing isolatedwords from 16 to 32 word vocabularies.Of these, Threshold Technology is by far themost successful commercially and theirsystems are used in a variety of industrialapplications, such as baggage handling inairports (the destination is spoken to thesystem which in turn routes the baggage)and quality control inspection (the inspectoruses his or her hands to hold a micrometerand take measurements which then arespoken to the recognizer and entered in acomputer for report generation). TheThreshold Technology machine uses anLSI-11 and their feature extractor consistsof a bank of 16 filters. It costs about$10,000. Threshold Technology claims 99.6percent recognition rate and operation innoisy environments.

At the time of this writing (April 1977)Heuristics Inc has announced an Altair(S-100) compatible recognizer. It sells for$249 in kit form and a detailed descriptionof its hardware appears in the May 1977issue of Popular Electronics. It is a simpledevice consisting of three bandpass filtersand a zero crossing detector. The filterscover the range of 150 Hz to 5 kHz. Theiroutput is peak detected and averaged andthen quantized with six bits resolution.They claim 90 percent correct recognitionin a quiet environment with a cooperativespeaker.

Addresses of Commercial

Speech Recognition System

Manufacturers

1. Threshold Technology Inc1829 Underwood BlvdDel ran N J 08075

2. Heuristics Inc

900 N San Antonio Rd (Suite C-1)Los Altos CA 94022

3. Dialog Systems inc639 Massachusetts AvCambridge MA 02139

4. Scope Electronics IncReston VA 22070

5. Perception Technology IncWinchester MA 01890

As a final remark, a note on recognizerperformance is in order. It was mentionedbefore that quoted performance figures areusually the best obtained with a given sys-tem under ideal conditions. This optimisticapproach reflects more than anything thedifficulty of making a very good recognizer.People choose to present the best resultsbecause the bad results may look terribleand the average unimpressive. While recog-nition scores can be taken with a grain ofsalt, it would be a mistake to view speechrecognizers in the same light. The correctapproach is to see them as a challenge tofind applications in which they are usefuldespite their present shortcomings. Youcertainly would not want to control yourcar with a recognizer that has a 90 percentrecognition score. Yet I have seen a recog-nizer with an average 80 percent score doa very good job in controlling the electricwheelchair of a paralyzed patient. Thinkhow important this is if you can only moveyour head and speak and the rest of thebody is paralyzed totally.

I am sure that a great number of appli-cations can be found for existing systemsthat I just haven't thought of yet, or thatI would never imagine. Given the thousandsof computer enthusiasts and their differentbackgrounds and the computer power theycommand, I wonder if there will be anystones left unturned in the applications areanow that we can talk to our own speechrecognizers."

REFERENCES

1. Lindgren, Nilo, "Machine Recognition ofHuman Language," IEEE Spectrum, Marchand April 1965. A somewhat antique re-view of the field. This article covers historyand some principles in rather nontechnicallanguage.

2. Otten, Klaus, "Approaches to the MachineRecognition of Conversational Speech,"Advances in Computers, vol 11, AcademicPress, NY, 1971. Easily readable, a lessantique review than Lindgren's.

3. White, George, "Speech Recognition: ATutorial Overview," IEEE Computer, May1976. A very up to date review, rathertechnical at points but quite readable.

4. Martin, Thomas: "Practical Applications ofVoice Input to Machines," Proceedings ofthe IEEE, April 1976. The author is presi-dent of Threshold Technology and fromthat vantage point reviews the practicalside of speech recognition.

The reference lists at the end of each of theabove papers are good sources of additionalinformation.

June 1978 ©BYTE Publications Inc 91

Available for immediate delivery from Contemporary MarketingThe Original, "Industry Awakening Advance in Personal Computers'

PERSONAL COMPUTER

Just ReleasedHIGH SPEED PRINTERACCESSORY

Featuring anIEEE-488 BUS

The Commodore PET -- Its technology is so advanced; its concept, soremarkable; its ease of operation, so utterly simple, and its cost so incredibly low, that over-night it has given rise to a brand new era -- The Age of the Personal Computer.

THE PET has become the standard for theemerging personal computer industry.Computer magazines, trade journals, con-sumer and business publications havelauded its discovery. POPULAR SCIENCEput THE PET on its October, 1977 cover, infull color, and devoted a feature news storyto the coming revolution in personal andoffice computing. PLAYBOY, February,1978, gave full color coverage to the "mind-boggling" PET.

IN A LEAGUE WITH IBM, HPAND WANG MINICOMPUTERSTHE PET should not be confused with gameproducts that hook up to household T.V.'s. Itis a minicomputer. What sets THE PET lightyears apart from other computers is itsprice. While the others cost from $ 11,000 to$20,000 and more, THE PET, with similarcapabilities and power, costs only $795.00.One extremely important capability sharedwith HP's minicomputer, and full size com-puters, is its IEEE-488 Bus. This standarddata/control channel means your PET canbe directly connected to a variety ofperipherals and laboratory measuring

equipment. Over 120 pieces of compatibleequipment such as counters, timers, spec-trum analyzers, digital voltmeters andprinter plotters from manufacturers suchas HP, Phillips, Fluke, and Textronix arecurrently available.

ROM Magazine, January 1978, writes,"THE PET comes out of the box, plugsinto the wall, and is ready to use." It isequipped with a CRT video display withreverse and blink features, an alpha-numeric keyboard with complete graphicsand a built-in standard cassette tape deck.

THE PET is an exceptionally powerful thinktank with 8K bytes of RAM (User Memory).Optional equipment, permits expansion to32K. The system contains 14K bytes ofROM (Program Memory).

THE PET COMMUNICATES IN THEEASIEST COMPUTER LANGUAGE

Computers talk in many languages. Theeasiest is BASIC or English-like words. IfTHE PET wants you to press a key, it willflash, "Press such and such", right on thedisplay. You speak back to THE PETthrough its full size 73-key keyboard.

EXTENSIVE CHARACTERORIENTED GRAPHICS

The unit features a 9-inch, high resolution,1000 character CRT. Characters are ar-ranged 40 columns by 25 lines on an 8 x 8matrix for superb graphics.WHAT IS THE PET REALLY FOR?It is the single most important teachingdevice for any computer related subject. Itcan help a youngster learn number facts, orhelp a med student do tissue analyses. Itwill entertain the most sophisticated dataapplication, or the simplest inquiry-response assignment.IN THE LAB it handles instrumentation,process monitoring, computer aided in-structions, and more. A number of Fortune500 companies have already made PETS anintegral part of their lab and generaloffice system.

As a BUSINESS TOOL it will; Maintainledgers. Illustrate cash flow charts. Keeppayroll records. Create P & L's. Control in-ventory. Store and analyze sales data. Drawbar graphs. Issue invoices. Do statisticalwork. Hook up to on-line computer system.

92

BYTE June 1978

THE PET is the only totally integrated,self-contained, personal computing system.It measures a compact I6V2" wide; I8V2" deep;14" high, and weighs just 44 pounds.

Bar Graphs

Amortization Chart

Blackjack

Teaching Trigonometry

As an AT-HOME TOOL it will; Computestate and federal tax returns. Make heatand insulation analyses. Keep Christmaslists. Keep checkbook and finances up todate. Programs are even being developedto store recipes and to compute larger orsmaller portion requirements.

WHO IS THE PET FOR?

Engineers, scientists, doctors, educators,students of computer science, attorneys,stock brokers, realtors, insurance people,list brokers, home economists, churches,grocery store owners, automobile dealers,sales people, organizations.

JUST FOR FUN

There is hardly a game, from Blackjack toMaster Chess, that cannot be programmedinto the unit. A variety of game programs iscurrently available.ANNOUNCING THE PET PRINTERThis powerful word processing accessorylets you print hardcopies, invoices, and com-puter correspondence. Faster than an IBMSelectric, THE PET Printer delivers 60characters per second at a sustained rate -or 3,600 characters every minute-withupper and lower case capability. Charactersare 1/8" tall and printed in a 7 x 8 dotmatrix. The printer uses a standard 8'/2"wide paper roll. And, most unbelievable - itis only $599.95.

PERIPHERAL SECOND CASSETTEThis optional component expands storageand increases flexibility. Only $99.95.

MILES OF SOFTWARE

Listed below is a sampling of currentlyavailable PET programs. "BASIC BASICshows you how to write a program for theunit. You can actually develop your ownprograms to meet personal requirements.

GAME PROGRAMS ARE $9.95 EACH:[ I Black Jack > 1 Draw Poker n Galaxy Gamesi i Space Flight i i Target Bong. Off-The-Wall. Lunar Lander, Wumpus, Rotate, Tic-Tac-ToeI , Osero, Reverse U Spacetrek D KingdomPROGRAMS AT $14.95 EACH:I I Mortgage Analysis i I Diet Planner and BiorhythmI I Basic Basic-by Lodewyck and JamesPROGRAMS AT $24.95 EACH:

[ ] Basic Investment Analysis-loans, annuities, return onregular and irregular sequences of payments, calendarcalculations i 1 Stock Portfolio Recordkeeping andAnalysis-keeps track of buys, sells, and dividends.Calculates current value, rates of return I CheckbookRecordkeeping and Analysis-keeps track of checks anddeposits. Analyzes expenses by date and typePROGRAMS AT $29.95 EACH:i ) Basic Math Package-matrix addition. muM!r':cation,determinants and inverses to 16 x 16, solution ofsimultaneous linear equations, vector and plane geometrycalculations, integration by trapezoidal, Simpson s rule orGaussian quadrature, differentiationi 1 Basic Statistics Package-mean, median, variance,standard deviation, skewness, kurtosis, frequency distri-bution, linear regression, T-tests, correlation analyses

FREE ORIENTATION PACKAGE

Your PET comes complete with two pro-grams and an easy-to-follow instructionmanual. By working through the routinesyou will quickly discover how easy it is togain command of your personal computer.

TECHNICAL SPECIFICATIONS

MEMORY

Random Access Memory (user memory); 8K internal,

expandable to 32K bytesRead Only Memory (operating system resident in the

computer); 14K bytes

8K-BASIC interpreter program

4K-0perating system

lK-Diagnostic routine

lK-Machine language monitorVIDEO DISPLAY UNIT

9" enclosed, black & white, high resolution CRT1000 character display, arranged 40 columns by 25 lines8 x 8 dot matrix for characters and continuous graphicsAutomatic scrolling from bottom of screenWinking cursor with full motion controlReverse field on all characters (white on black

black on white)64 standard ASCII characters; 64 graphic charactersKEYBOARD

91/j" wide x 3" deep; 73 keysAll 64 ASCII characters available without shift.

Calculator style numeric key padAll 64 graphic and reverse field characters accessible

from keyboard (with shift)Screen Control: Clear and eraseEditing: Character insertion and deletionCASSETTE STORAGEFast Commodore designed redundant-recording scheme,

assuring reliable data recovery

Cassette drive modified by Commodore for much higher

reliability of recording and record retentionHigh noise immunity, error detection, and correctionUses standard audio cassette tapesTape files, namedOPERATING SYSTEM

Supports multiple languages (BASIC resident)Machine language accessibilityFile management in operating systemCursor control, reverse field, and graphics under

simple BASIC controlCassette file management from BASICTrue random number generation or pseudo

random sequenceINPUT/OUTPUTAll other I/O supported through IEEE-488 instrument

interface for peripheralsI/O automatically managed by operating system softwareSingle character I/O with GET commandEasy screen line-edit capabilityFlexible I/O structure for BASIC expansion

with peripheralsBASIC INTERPRETER

BK BASIC; 20% faster than most other 8K BASICSUpward expansion from BASIC languageStrings, integers, multiple dimension arrays10 significant digits; floating pointDirect memory access: PEEK and POKE commands

SERVICE WORLDWIDE

THE PET is made in the United States byCommodore International, a worldwide,vertically-integrated manufacturer of elec-tronic products for home and industry.Because your PET is self-contained andcompact, professional factory service isnever far away. If ever major service is re-quired, the unit can simply be returned byUPS to an authorized factory PET clinic.

You can order your PET by sending a checkor money order for $795.00 plus $20.00 forshipping and insurance. To order the PETPrinter, add $599.95 plus $12.00 forshipping and insurance. The SecondCassette is $99.95. No shipping and in-surance charges are required when order-ing a second cassette or programs with yourPET. Credit card orders are invited to callour toll free number below. Orders will beaccepted on our TELEX, No. 25-5268.

CONTEMPORARY MARKETING

Contemporary Marketing is a major sourcefor advanced electronic products. Our com-mittment to this exciting industry is thereason why Contemporary was selected tobring THE PET to you. In comparison withother full-fledged computers, it is an in-credible value. Nevertheless, we recognizethat it is a substantial investment for anycompany or individual. Please be assuredthat we are pledged to protect your invest-ment. As a Contemporary PET owner, wewill see to it that you are kept abreast of allnew peripherals and software, as they aredeveloped. We want you to use THE PETwith complete confidence. If, for anyreason, you are not satisfied with your PET,simply return it within 30 days for a promptand courteous refund.

THE PET is perhaps the most excitingdiscovery in many years, and demand isenthusiastic. If our lines are busy, pleasecall again.

ORDER DIRECTCREDIT CARD ORDERS CALL TOLL FREE

800-323-2272

ILLINOIS RESIDENTS CALL: 312-595-0461TELEX ORDERS: 25-5268

Order your PET, Printer Accessory,

Second Cassette and Programs from

Contemporary Marketing at:

790 MAPLE LANE DEPT. BT6BENSENVILLE, IIIINOIS 60106

Contemporary

marketing Inc. ^

Circle 78 on inquiry card.

BYTE June 1978

93

BYTE's Bugs

Caught Microprocessor Programming

John W Langner, 411 Monterey Blvd,Apt B, Hermosa Beach CA 90254, sentus a letter pointing out a relatively grossterminological faux pas which weallowed to stand in an article entitled"Take a Course in Microprogramming"by Richard Mac Millan on page 168 ofthe March 1978 BYTE. The termino-logical ambiguity of the "micro" in thecommon name for large scale integrationcomputer processors comes from the

fact that the term "microprogramming"is not the same as "programming acomputer implemented with a micro-processor." The article should havebeen edited so that the term "micro-programming" never appeared in thecourse of its text; the title might betterhave been changed to "Take a Coursein Microprocessor Programming."*

Bug Bug

In the March 1978 BYTE's Bugs(page 46) we reported on some bugs infigure la of David Allen's "A FloppyDisk Interface," January 1978 BYTE,page 61. One more item should be addedto the list: disconnect the line presentlygoing to pin 9 of IC3c_(the NAND gatewhich feeds into the CE line of IC4). In

its place run a line from pin 9 of IC3cto pin 4 of IC12b (the latter pin is alsoconnected to pin 5 of IC3b). This changeis necessary so that IC4 will be addressedwhen the QC and QD outputs of IC5 areat low and high levels, respectively. Wethank Howard Oels of Phoenix AZfor discovering this bug in the bug."

Moving Violation

The 6800 program relocator pre-sented on page 197 of the November1977 BYTE should more properly becalled a move routine for use with self-relocatable code only, since it obviouslywill not fix the internal references ofthree byte jump instructions. Our thanksto Ed Smith of Ed Smith's SoftwareWorks for this information."

Your Microcomputercan be a Money-MakingMachine with SOFTWAREfrom SYNCHRO-SOUND

Here are two Software packages that enable you to profitably makefull use of the potential in your small computer system: Synchro-Sound's interactive business systems designed for use on an 8080-or Z80-based microcomputer with floppy disks and a hard-copyprinter. Written in Microsoft Basic (known as Altair Basic*), the soft-ware supports file maintenance, query and reporting functions. Thissupport includes creation, modification and deletion of customerrecords and processing of transactions to be posted against thefiles.

ACCOUNTS RECEIVABLE PACKAGE

The A/R module creates a history file of charges, credit and pay-ment records for audit purposes. Payments can be applied to aparticular invoice, or to the oldest open items..Batch Mode formonthly statements, aged receivables schedule, and delin-quency notice as well as on-line inquiry mode for specific infor-mation are both fully implemented.

Operators Manual & Disk—Single Copy $500.00

Operators Manual only— $35.00 refunMicrosoft Disk Basic—

INVENTORY PACKAGE

The inventory system maintains a current listing of stock itemsfeaturing on-line transaction processing. Reporting functionsinclude a master inventory listing with price and cost data,reorder alerts, vendor specification, and summary valuations.Year-to-date usage records are kept for each inventory item tofacilitate sales analysis.

Operators Manual & Disk—Single Copy $500.00

dable upon purchase of Software Package.Single Copy $350.00

WRITE OR CALLFOR FURTHERINFORMATION

Full Software-Hardware

Systems are now

available and additional

Software Packages will

be available in the

near future

'Altair is a trademark of MITS, Inc.

SYNCHRO-SOUND Enterprises, Inc.

193-25 Jamaica AvenueJamaica, New York 11423212/468-7067 TWX 710-582-5886

Hours 9-4 Dailyand Saturday

Working Systemson display

Dept. BS

BankAmericard/Master Charge

94

June 1978 ©BYTE Publications Inc

Circle 355 on inquiry card.

ENTERPRISES, INC.I

Everything you need in small computer systems!

LEAR SIEGLER ADM 3A TERMINAL

Kit $759.95

Assembled 3>O04.«7&

ADM 1A TERMINAL

Assembled

$1529.00

ADM 2 TERMINAL

Assembled $1995.00

HAZELTINE 1500VIDEO TERMINAL

Assembled $11 49.1Kit also available

MODULAR 1

INTELLIGENT

TERMINAL

rjT^jB CENTRONICS 779 PRINTER

$1099.00

703SERIAL PRINTER

$2805.00

KSR with Keyboard

761 PRINTER

$1895.00

Assembled

$1659.00

IMSAI 8080 MICROCOMPUTER

With 22 slot

$649.95

SPECIAL BUYS

IMSAI Double Density Persci Drive $2295.00

Sorac IQ 120 Video Terminal 959.00

DIGITAL Systems Dual Density Floppy 2746.00

Compucolor 8001 Color Computer 2595.00

ICOM Microfloppy System 989.00

North Star Microfloppy Disk Kit 599.00

Cromemco Z-2 Kit 565.25

Javelin 9" Video Monitor 159.95

Micropolis Model 1053MOD 2 1799.00

IMSAI AP44-44 Col. Printer Kit 329.00

TDL Xitan Alpha 1 Computer Kit 699.00

ICOM Model FD 3712 2795.00

OKIDATA MODEL 110 LINE PRINTER

Friction Feed

$1199.00

/a

■ ^^M Tractor Feed

$1349.00

RS232C Serial Interface

$260.00

MODEL 22 LINE PRINTER

Tractor Feed $2449.00

TELETYPE MODEL43 PRINTER

W/

$1299.00 / jj^j^

IMSAI PCS-80/15 8085COMPUTER

Kit

$749.00

Assembled

$929.00

We carry a full line of the following: TDL,Centronics, Seals, Hazeltine, Micropolis,Hayden, IMSAI, Cromemco,Compucolor, Icom, LearSiegler, Okidata,DEC, Javelin, North Star, Peripheral Vision.Same day delivery and shipping on mostitems. Full modern repair facilities onpremises for complete servicing ofeverything we sell.

SYNCHRO-SOUND enterprises, inc

The Computer People

193-25 Jamaica Avenue,

Jamaica, New York 11423

212/468-7067 TWX: 710-582-5886

Hours 9-4 daily Visit our new showroom

and Saturday Working units on display

Pept. bbb Ban kAmericard • Master Charge

Circle 358 on inquiry card.

BYTE |unc 1978

r

R E C E NTA It RIVA L S

DIAL YOUR BANK CARD ORDERS ON THE BITS TOLL FREE HOT LINE: 1-800-258-5477.In New Hampshire, call: 924-3355.

Send to:BITS, Inc.70 Main Street

Peterborough, NH 03458 ws* "■''■'! p

Check payment method:

My.check is enclosed. Bill my MC No

ill my BAC/Visa No.

_Exp. date..Exp. date.

Name.

Address.City

Total for all books checked

Postage, $.75 per book for books

. State.

.Zip Code.

Outside U.S. $1.00 per book for.

Grand Total

.books $_$.

Signature.

U

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

Prices shown are subject to change without notice.

96 BYTE June 1978

Circle 35 on inquiry card.

'^1

Periodical Guide for Computerists, January-December 1977,

by E. Berg Publications. This is a comprehensive index of all the ar-ticles, book reviews, editorials, letters, record reviews, and miscella-neous small inserts and notes from the top 25 magazines in the field.Several thousand articles are grouped into over 60 subject categoriesthat are listed alphabetically for easy reference. At the back is an au-thor index, including the major areas of their expertise. An indispen-sable guide for anyone in the fields of personal computing, amateurradio, and electronics. 72 pp. $5.00.

Robots on Your Doorstep by Nels Winkless and Iben

Browning. "This book will amaze you, frighten you, nauseate you,excite you...it will probably make you think about things you havenever contemplated before," states the introduction to this cleverand well-written account of robots: past, present, and future. Intelli-gence, artificial intelligence, brain structure and simulation, andcharacteristics of robots are only a few of the areas explored. Onechapter is devoted to the personal computer revolution and how ithas brought robots into the amateur's workshop. 1 79 pp. $6.95.

Programming in PASCAL by Peter Grogono. This book is an

excellent introduction to one of the fastest growing programminglanguages today. The text is arranged as a tutorial containing bothexamples and exercises to increase reader proficiency in PASCAL.Besides sections on procedures and files, there is a chapter on dy-namic data structures such as trees and linked lists. These conceptsare put to use in an example bus service simulation. Other examplesrange from the Tower of Hanoi problem to circumscribing a circleabout a triangle. Programming in PASCAL is sure to hold the read-er's interest. 359 pp. $9.95.

Z80 Programming for Logic Design by Adam Osborne, Jerry

Kane, Russell Rector, and Susanna Jacobson. Here's the book we'veall been waiting for! It's third in the series of Osborne's program-ming for logic design books (the 8080 and 6800 books). Written forboth programmers and logic designers, it explains how an assemblylanguage program can replace non-programmable logic devices—withdirect reference to the Z80 microcomputer. 352 pp. $7.50.

There will be a one dollar price increase on July 1, 1978, soorder now and save!

8080A/8085 Assembly Language Programming by Lance A.

Leventhal. This book provides an introduction to assembly languageprogramming for the 8080A and the 8085 processors. Included aresections on the instruction sets for the two processors, assemblers,simple program examples, code conversion, tables and lists, subrou-tines, IO, interrupts, program design, and debugging. Many examplesand illustrations are included to cover critical points. 467 pp. $7.50.There will be a one dollar price increase on July 1, 1978, soorder now and save!

How to Profit from your Personal Computer by Ted G. Lewis.

If you have wanted to use your personal computer in a profitablemanner, and you feel you need some help planning programmingtechniques for common business applications, this book is for you.Enjoyable and readable, it contains suggestions for accounting, pay-roll handling, inventory management, and sorting mailing lists. Manyterms and notations are explained. Sample programs in BASIC, theuse of blueprints to design program structure, and a full glossary ofterms are a few of this book's special features. 191 pp. $7.95.

BITS

Microcomputer Primer by Mitchell Waite and Michael Pardee.

Here's a microprocessor tutorial for readers having some electronicsbackground. Microcomputer Primer concentrates on the hardwareof microcomputers (although there are sections dealing with soft-ware) with chapters on basic computer concepts, hardware, pro-gramming, memories, and number systems. A full complement ofphotos and schematics accompanies the text. 224 pp. $7.95.

Programming a Microcomputer: 6502. This informal, well-writ-ten book may be just what you need to enter the world of micro-computers. Caxton C. Foster uses the 6502 as a basis for discussingthe techniques of writing programs. The chapters include simple,practical example programs for creating a Morse Code oscillator,combination lock, tune player, digital clock, and more. The empha-sis is on clarity, and the many illustrations and flowcharts help getthe author's points across. 231 pp. $9.95.

Programmable Calculators by Charles J. Sippl and Roger J.

Sippl. This large (526 pages) book is an exhaustive survey of theprogrammable calculator field covering its history and presentstatus. Chapters deal with the basic calculator, advanced hand-held products, RPN (Reverse Polish Notation) versus algebraicnotation, desktop calculators, and programming the program-mable calculator. Examples and illustrations abound in this use-ful reference work. $14.95.

Here are two big packages of fascinating information and practi-cal guidelines from the symposiums held at the 1977 and 1978 WestCoast Computer Faires.

The First West Coast Computer Faire Conference Proceedings,

edited by Jim C. Warren, Jr., contains 336 pages covering such top-ics as: tutorials for the computer novice, human aspects of systemdesign, robots (including the text of a talk by science fiction writerFred Pohl), computers for the physically disabled, education, elec-tronic mail, music with computers, hardware, software—the list goeson. $12.00.

The Second West Coast Computer Faire Conference Proceedings,

edited by Jim C. Warren, Jr., is 505 pages and covers many of theabove topics plus others such as: computers for the visually handi-capped, exotic computer games, high level design for microproces-sors, computer articles for business and crafts, homebrewed equip-ment, and speech input and output. You can't miss for only $13.00.

Up your Own Organization! by Donald M. Dible. A great hand-book on how to start and finance a new business, this is the mostcomprehensive reference we've seen on the subject. For the pro-grammer-consultant or the basement homebrewer-turned-entrepre-neur, this is your book. It is recommended in the Bank of AmericaSmall Business Reporter and Changing Times magazines. 372 pp.Available for $14.95 in hardcover.

Fundamentals of Recordkeeping and Finance for the Small

Business by Robert C. Ragan, CPA, and Jack Zwick, Ph.D. Onceyou have your organization or business up and running, recordsmust be kept. What should I keep, and how do I record them? Thisbook on fundamentals will give you a helpful start. Section Onedeals with maintaining records, protecting assets, and providing a ba-sis for planning. Section Two provides a starting point for owner-managers who want to sharpen their financial management skills.196 pp. Only $10.00 in hardcover.

Dealer orders on quantity purchases invited.

The Microcomputer Bookstore

BYTE |unc 1978 97

Continued from page 11

Shore) who decided to feed the outputfrom his orbital motion program intoour music system (instead of data thatrepresented conventional music). Theresults were very intriguing, and quitemodernly musical. They helped us allsee the power of allowing human imagi-nation to work with objects that repre-sent a new kind of clay or paint—inthis case algorithms for solving differ-ential equations! The designer of themusic system (Jeff Lederer) had ob-viously developed a use of technologythat was radically different from thefanciest of "record players."

The same ideas apply to color gra-phics. Photo 1 shows a very simpleexample of using an algorithm as a crea-tive adjunct. The first slide shows astatic use of the medium. The artistsimply used a light pen to "paint" abouquet of flowers on the screen of aCompucolor 8051. Photo 2 shows whathappens when the computer is no longerstatic. In this case it uses two algorithms:one to draw nothing more than thesimple elegance of a sine curve, the otherto join the artist's light pen input to thecomputer's sine curve with vectors. Our

feeling is that the second mode is greatfor people (including very young kids)who haven't yet developed the tech-niques needed for painting a bouquet offlowers or composing a two-dimensionalspace abstractly (which is what the sinefunction does in this context). From thepoint of view of technical competence,the first mode (static computer) is themore advanced one. The function ofthe second mode is to get the userthinking creatively so that he or she caneventually go beyond what the machinehelped start.

Translating this idea into a generalphilosophy of "Why personal com-puting?" gives the unexpected butheartening answer: "To help people dothings computers can never do."

Tom Dwyer

Margot Critchfield

325 N Craig St

Pittsburgh PA 15213

Tom Dwyer and Margot Critchfield'sarticle, "Color Graphics on the Compu-color 8051," appeared on page 32 ofBYTE May 1978.

Announcing . . .

SMALL BUSINESS COMPUTERS Magazine

The magazine for users and potential users ofsmall business computer products and services

• The monthly magazine for businessmen in the process of purchasing or instalting their first com-puters.

• The practical how-to publication written in non technical language and stressing business applica-tions for small computer systems. Each monthly issue includes:

FEATURE SURVEY REPORTS: Such as, Software Packages for Small Business Applications,Small Manufacturing Systems, Inventory Control Systems, Microcomputer Business Appliactions,and so on.

APPLICATION STORIES: Real-life examples of computer applications in the small business en-vironment — capabilities, benefits, what to watch for, and much more of direct interest to the smallbusinessman.

COMPUTER PROFILES • IDEAS AND INNOVATIONS • INFORMATIVE ADS

SPECIAL CHARTER SUBSCRIPTION12 issues @ 50% off

Receive the next 12 issues of Small BusinessComputer Magazine for just $9 . . . 50'..off thecover price

Mail the coupon today to: SMALL BUSINESS COMPUTERS Magazine

33 Watchung Plaza • Montclair, NJ 07042

SMALL BUSINESS COMPUTERS Magazine • 33 Watchung Plaza • Montclair, NJ 07042□ YES. Enter my charter subscription at the Vprice cost of $9 for 12 monthly issues.□ Check enclosed. D Bill me.

Name

OrganizationAddress

City/State

. Zip_

TEXT EDITING DREAMS ANDREALITIES WITH AN AM-100

This is in response to your March1978 editorial. A friend of mine askedme two years ago to create a keyboardespecially for him. He was at that timeemployed as a phototypesetter for theLos Angeles Free Press. As a result Igot heavily involved in the discrepanciesbetween the needs of a typesetter andthe available [Singer-Friden-Burroughs-IBM-3%&t*($+&!&%] word processors!Therefore, your editorial on the desirefor a truly sophisticated editor stirredsome painful memories of TTS bookcodes, incompatible character sets andpaper tape format, TTL logic, etc.The project never did "fly" right.

However, since that time I've comeacross (and purchased) a system thatI am surprised you haven't given heaviermention of in your magazine. I amrefening to the Alpha MicrosystemsAM-100. Let me explain why I feel itcould result in the editor you aresearching for.

The AM-100 processor is a two boardrealization designed to interface with aparallel operating 8080/Z-80 CPU on theAltair (S-100) bus. It uses the WesternDigital WD-16 chip set, which is anextended version of the DEC LSI-11,but using special microcoding to createa more powerful instruction set. Usingthis, Mr Wilcox has made an operatingsystem similar to UNIX, with somefeatures of DECsystem 10. Includedin the software bundled with the pro-cessor is the operating system (it sup-ports eight users with full timesharingprotocols), a powerful macro assembler,BASIC, LISP, and a system EDIT.PRG,all disk oriented. For a preliminaryfeel for what this means, read Dr Dobb'sJournal, volume 2, number 1, page 3.The AM-100 system manuals comprise,at present, over 250 pages of closelypacked information.

Robert Williams

President, Cheesy Operations

Micromouse Enterprises

POB69

Hollywood CA 90028

IMPROVING RELATIVEADDRESSING FOR THE 8080

I read with great pleasure MrGaskell's article on "Relative Addressingfor the 8080" in the December 1977BYTE. The approach to implementingthe relative jumps was superb.

However, having been working withmicrocomputer applications for severalyears, I have learned that any programcan be made shorter and faster witha little effort! Moreover, optimizationin the case of the relative addressingroutine is even more critical than usualsince the code will be executed with

98

June 1978 O BYTE Publications Inc

Circle 318 on inquiry card.

incredible frequency if most of thejumps in a main program are relativized.The key to optimization is selectinga value for BIAS such that (BIAS+4) isa multiple of 256. The program sectionin both its original and optimized formis shown below. The optimized versionsaves two microseconds (at 2 MHz).

Gaskell's version

LXI D,-(BIAS+4)DAD D

Lewis' version

MVI A,-(BIAS+4)/256ADD HMOV H,A

I would like to say that no furtheroptimization is possible but the rulesays, "any program can be made shorterand faster." Suppose we select BIAS =FEFC! Then -(BIAS+4) becomes 100hexadecimal and the code becomes:

Lewis' version 2INR H

This final version saves 7.5 microsecondsover the original version! The routine isnow completely optimal!

Jim Lewis

Micro Logic Corp

100 Second St #213

Hackensack NJ 07601

ODE TO THE ROM

An age of human erroris coming to an end.And the monolithic ROMaccelerates the trend.

ROM makes decisions certain(once programmed properly).It's the ideal electronicsto relieve anxiety.

You forget and I forgetwhat to do and when.And pushing one wrong buttonmay precipitate our end.

But put a faithful ROM in chargeand leave your cares behind.The electronic ROM keeps watchwith all attentive mind.

Computers whirl and engines hum'neath ROM's intent control.It does what it's supposed to do.(It has no other goal.)

Let's hear a cheer from ROM, my friends,and celebrate its ends.A servant so impeccableis rare as teeth in hens.

Bob Schweitzer

1501 Palm Av

Richmond CA 94805

A BIT SIMPLER?

While I liked Frank Holman's idea inthe March 1978 BYTE (page 185) offorcing the address bits high so that the8080 resets to a location in highmemory, the method could have been

+ 5V

SYNC

Ih

implemented in a slightly simplerfashion. The diagram below uses twofewer ICs.

Thus the 7404 and 7474 are eli-minated. Also, the inverter in theoriginal circuit could have been replacedby one of the EX-ORs in the 7486.

Steve Bresson

1666 Independence Ct

Severn MD 21144"

Da db dc dd

DOWN

74I93UP LD

A B C D

■ RESET

L>-

RESET

rL^^_TL_rL

INV | || ; irj j 9 i 8 | 7_

S-10O BUS COMPATIBLE. The EMM 1104 single card plug-in memory hasbeen field tested and proven in a variety of systems including the Poly 88,IMSAI, MITS, COMPAL-80, TLD and CREMENCO. 16K BYTES ON A CARD.Convenient plug-in card, fully burned-in, tested and guaranteed by one ofthe industry's largest memory suppliers. NMOS STATIC RAM. The 4Kstatic RAMs have been proven in applications ranging from single chipmemories to IBM 370 add-on systems. They are fast,reliable, and no refresh cycle is required.See your dealer, or contact us for complete information.

S-100 Bus Compatible Memory

16K bytes on a card

NMOS static RAM

-*^"«

Commercial Memory Products, a Division of Electronic Memories & Magnetics Corp.12621 Chadron Avenue • Hawthorne, California 90250 • Telephone (213) 644-9881

Circle 131 on inquiry card.

|unc 1978©BYTE Publications In

99

DATALYZER ... a 24 channelLogic Analyzer for your S100 Bus

24 Channel LOGIC ANALYZER, complete with 2 cards and 3 sets of probes.

Features

— 24 channels with 256 samples each.

— Display of disassembled program flow.

— Dual mode operation — external mode analyses any external logicsystem. Internal mode monitors users data and address bus.

— Selectable trigger point anywhere in the 256 samples.

— 0-16 bit trigger word format or external qualifier.

— 8MHz sample rate

— Synchronous clock sample with coincident or delayed clock mode.

— User defined reference memory.

— Displays and system control through keyboard entry.

— TTL Logic level compatible (15 pf and 15 jua typical input loading.)

Displays in Binary

Displays in Hex

Display of disassembledprogram flow.

The DATALYZER

Designed to plug easily into your S-100 Bus, the DATALYZER is acomplete system — for only S595. Display of disassembled programflow is a standard feature, not an extra. And the low price includes 30logic probes, so you can hook up immediately, without additionalexpense.

The DATALYZER is available in kit form ($595), and as a fullyassembled device on two PCB's ($695). Operators' manual $7.50. Asubstantial warranty, and the Databyte, Inc. commitment to servicemake the DATALYZER a worthwhile investment.

Databyte, Inc.

7433 Hubbard AvenueMiddleton, Wisconsin 53562Tel: (608) 831-7666

BYTE's Gits

ACM Seeks Nominations for AnnualGrace Murray Hopper Award

The Association for Computing Ma-chinery is seeking nominations for itsGrace Murray Hopper Award, given eachyear to the outstanding young computerprofessional selected on the basis of asingle recent major technical or servicecontribution to the computer industry.In order to qualify, candidates must havebeen 30 years of age or less at the timethe qualifying contribution was made.

The award will be presented at theopening session of the association's An-nual Conference on December 4 1978,in Washington DC. The award is in theamount of $1000, donated by theUnivac Division of Sperry Rand, and isaccompanied by a certificate.

While the award is given to the out-standing young "computer" profes-sional, emphasis for the 1978 award willbe placed on contributions in the fieldsof business data processing and personalcomputihg. The committee felt "thatthese fields have not been adequately re-warded for outstanding contributions inthe past.

The last three winners of the GraceMurray Hopper Award were: Edward AShorlliffe, for his development of a pro-gram that consults with physicians aboutdiagnosis and treatment of infection;Allen L Scherr, for his pioneering studyin quantitative computer performanceanalysis; and George N Baird for the de-velopment and implementation of theU S Navy's COBOL compiler evaluationsystem.

Nominations, which may be made bythe nominees themselves, should be sentto:

Richard G CanningChairman, ACM Grace Murray

Hopper Award Committee925 Anza AvVista CA 92083

In order to be considered for the1978 award, nominations should be re-ceived by Mr Canning no later thanJune 30 1978.

Please include the following in-formation.

1. Name, address and phone numberof the person making the nomi-nation.

2. Name, address and phone numberof the nominee.

3. A statement (200 to 500 words)on why the candidate deservesthe award, describing the con-tribution.

4. The date of birth of the nomineeand the date on which the quali-fying work was completed."

100 June- 1978 O BYTE Publications Inc

Circle 82 on inquiry card.

Carnegie-Mellon Sponsors a Workshop

Carnegie-Mellon University will spon-sor an intensive five day microcomputerworkshop June 5 thru 9 1978 on theCMU campus. The program will includehands on experience for those who havea serious interest in applying micropro-cessor systems to a practical problem. Itis intended to provide a foundation oftheoretical knowledge and practicalexperience about the capabilities andlimitations of microcomputers and whatit takes to apply them on the job.

The concepts and techniques intro-duced in class are implemented by morethan 12 hours of hands on problemsolving experience. The workshop for-mat emphasizes opportunities to reviewand discuss the sample problems andtheir alternative solutions with thefaculty and other class members.

For more information call GerryCohen at (412) 578-2207 or write PostCollege Professional Education, CarnegieInstitute of Technology, Carnegie-MellonUniversity, Schenley Park, Pittsburgh PA15213."

Harvard University AnnouncesInternational Computer Graphics Week

Harvard University has announcedan international Computer GraphicsWeek July 23-28 1978, to be sponsoredby the school's Laboratory for Com-puter Graphics and Spatial Analysis.

The event will focus on the Labor-atory's International Users Conferenceon Computer Mapping Software andData Bases: Application and Dissemi-nation. At the conference over 100speakers and numerous exhibits from thecommercial, educational and govern-mental sectors will show how computermapping is' being used in city andregional planning, social services, publicsafety, transportation and engineering,ecology and the environment, energy,public health, marketing, research anddevelopment, management informationsystems and university research andinstruction.

In addition there will be an in-depthreview of currently available computermapping software and data bases, as wellas sessions on thematic map designprinciples and a hands-on workshop atthe Harvard Laboratory. Among specialfeatures will be a session on software anddata base distribution and marketingand an executive briefing seminar todiscuss the relevance and projectedimpact of computer mapping in thecommercial sector. For more infor-mation, contact Ira Alterman at theCenter for Management Research, Exe-cutive Plaza, 850 Boylston St, ChestnutHill MA 02167, (617) 738-5027."

Hobbiests! Engineers! Technicians! Students!

Write and run machine language programs at home, display video graphicson your TV set and design microprocessor circuits—the very firstnight—even if you've never used a computer before!

featuring

ELF IIRCA COSMAC

microprocessor/mini-

computer

Get "hands on" experience with a computer for just599.95 Then, once you've mastered computerfundamentals, expand ELF II with low cost add-ons andyou've got an advanced personal computer powerfulenough to solve business, industrial or scientificproblems.

ELF IIbyNETRONICS

as featured InPOPULAR ELECTRONICS

shown with optional 4k

Memory Boards. GIANT

BOARD'", Kluge

Board and

ASCII

Keyboard. M

Learning Breakthrough!

A Short Course On

Microprocessor And

Computer Programming

Written for anyone! Minimal background needed!

Using advanced computers is now as easy as driving acar with an automatic transmission. We will teach you, stepby step, instruction by instruction, how to use an RCACOSMAC computer.

Not only does our short course explain, computers, ithelps anyone write and run programs and solve complexproblems requiring a computer. Knowing how a computerworks can help you . . .

(1) Spot situations where a computer can assist you inbusiness, industry, personal applications, etc. (2} Select themost economical computer (or microprocessor) and relatedhardware for your specific needs; (3) Write and run theprograms you need; and (4) Keep your computer costs down.

This course was written for ELF II users but . . H's ablockbuster for every RCA COSMAC user or owner!

SPECIFICATIONS

ELF II features and RCA COSMAC COS/MOS 8-bu

microprocessor addressable it) Mk byies wiih DMA,interrupt, 16 registers. ALU. 256 byte RAM, full hexkeyboard, two digit hex output display, 5 slot plug-inexpansion bus (less connectors), stable crystal clockfor liming purposes and a double-sided,pi aieii-through PC board plus RCA IKfil video 1C todisplay any segment of memory on a video monitor orTV screen

EXPANSION OPTIONS

• ELF II GIANT BOARD'" with casssette I/O.RS 232-C/TTY I/O, 8-bit P I/O, decoders for 14separate I/O instructions and a systemmonitor/editor. Turns ELF II into the heart of afull-size system wjih massive computing power!$39.95 kit.

• 4k Static RAM. Addressable In any 4k page to 64k.Uses low power 2102*$, Chip select circuit allowsoriginal 256 bytes to be used. Fully buffered.Onboard 5 volt regulator. S89.95 kit.

• Prototype (Klugei Board accepts up to 36 I.C.'sincluding 40, 24. 22, 18, 16. 14 pin. Space availablefor onboard regulator. S17.00.

• Gold plated 86-pin connector. $5.70.

• ELF II Full ASCII Keyboard. Upper and lowercase. $64.95kit.

• 5 amp Expansion Power Supply. Powers theentire ELF II (Not required unless adding 4k RAMboards.) S34.95 kit

All of ih? above PC boards plug directly intoELF lis expansion bus

ELF II TINY BASIC

Communicate with ELF II in BASIC! ELF II TinyBASIC is compatible with either ASCI I keyboard andTV screen or standard teletype /video terminalutilizing RS 232-C or 2!) mil TTY interfaceCommands include SAVE and LOAD for storingprograms on standard cassettes, a plot command todisplay graphic information and special commandsfor controlling ELF 11 I/O devices. 16-bit integerarithmetic, ±, x, *-, (). 26 variables A-Z. Othercommands include LET, IF/THEN. INPUT. PRINT.GO TO, GO SUB. RETURN. END, REM, CLEAR,LIST, RUN, PLOT. PEEK. POKE Comes withmaintenance documentation and excellent user'smanual that allows even beginners to use ELF II forsophisticated applications (4k memory required.)$14.95 on cassette tape.

Coming Soon . . . D-A, A-DConverter • ControllerBoard • Cabinet • Light Pen (Lets you write or drawanything on a TV screen Imagine having a "magicwand" that writes like a crayon!)

Stop reading about computers and get your hands on one ELF II is an outstanding trainer(or anyone who needs to use a computer to maximize his or her personal effectiveness. But ELF IIisn't just a trainer. Expanded, it becomes the heart of a powerful computer system.For $99.95 You Get All This—

No other small personal computer offers video output and ELF H's expansion capabilitiesfor anywhere near $99.95 ELF II can create graphics on your TV screen and play electronicgames! II pays for itself over and over again in the fun it provides for your whole family.Engineers and hobbiests can use ELF II in microprocessor-based circuits as a counter, alarm,lock, thermostat, timer, telephone dialer, etc The possibilities are endless!The ELF II Explodes Into A Giant!

Once you've mastered computer fundamentals, ELF II can give you POWER! Plug in theGIANT BOARD™ and you can record and play back your programs, edit and debug programs,communicate with remote devices and make things happen in the real world. Add Kluge Board tosolve specific problems such as operating a mare complex alarm system or controlling a printingpress. 4k memory units let you write longer programs and solve even more sophisticatedbusiness, industrial, scientific and personal finance problems.

Add ELF II liny BASIC And Keyboard!

To make ELF II easier to use. we've developed ELF II Tiny Basic It lets you program ELF IIwith simple words you can type out on a keyboard such as PRINT. RUN and LOAD. ELF II respondsby displaying answers on your printer, video monitor or TV screen.

Write And Run Programs The Very First Night!

The ELF II kit includes all components and everything you need to write and run your ownprograms plus the new Pixie Graphics chip that lets you display any 256 byte segment of memoryon a video monitor or TV screen. No wonder ELF II is now being used as a trainer in many highschools and universities.

Easy instructions get you started right away, even if you've never used a computer before.The newly expanded ELF II Manual covers assembly, lesting. programming, video graphics andgames.

ELF II can be assembled in a single evening and you'll still have time to run programsincluding games, video graphics, etc. before going to bed!

_._ — — — SEND TODAY! »«-■

NETRONICS R&D LTD., Dept. BY-6

(203) 354-9375

333 Litchfield Road, New Milford, CT 06776

□ YES! I want to run programs at home and have enclosed: □ $99.95 plus 53p&h for RCA COSMAC ELF II kit i i $4.95 for power supply, required lor ELF II kitD (5.00 for RCA 1802 User's Manual.

□ $4.95 for Short Course on Microprocessor & Computer Programming.

□ ELF II connects to the video input of your TV set. If you prefer to connect ELF II to yourantenna terminals instead, enclose $8.95 for RF Modulator.

□ $39.95 plus $2 pSh for ELF GIANT BOARD'" kit. ._ 4k Static RAM kit, $89.95 ea. plus $3 p&h Vja $17.00 plus $1 p&h for Prototype (Kluge) Board. VV\VD $34.95 plus $2 p&h for Expansion Power Supply kit. WA

Gold plated 86-pin connectors at $5.70 ea

G $64.95 plus $2 p&h for ASCII Keyboard kit

D $14.95 for ELF II Tiny BASIC cassette.

a I want my ELF II wired and tested with the power transformer, RCA 1802 User s

Manual and Short Course on Microprocessor & Computer Programming for $149.95

plus $3 p&h.

Total enclosed (Conn, res. add tax) $ D Check here if you are enclosing

Money Order or Cashier's Check to expedite shipment.

NAME

ADDRESS.CITY

> DEALER INQUIRIES INVITED I

Circle 280 on inquiry card.

|une 1978 ©BYTE Publications Inc 101

NORTH STAR

Z-80 BEST VALUE - SAVE 15%Complete Minifloppy Disk System w/BASICand drive. Kit List $699 . . SPECIAL $599Assembled List $799 689

16K Dynamic RAM, Kit List $399 .... 329Assembled List $459 379

4 MHz Z-80 CPU Board, Kit List $199 . 16995Assembled List $259 209

CPM Disk Operating Sys. Conversion Pkg.for North Star (latest version) 145

TDL Package A Software for North Star onNorth Star Disk (specify if for TDL System'Monitor Board use) 249

HORIZONS

- ALL MODELS -

ABSOLUTELY BEST PRICES

ANDBESTDELIVERIES

CALL FOR INFORMATION

Horizon-1, Kit List $1599 $1349

Assembled and tested List $1899.. 1599

Horizon-2 (with 2 drives) Kit List $1999 1699Assembled and tested List $2349 1939

CROMEMCO

TOP-SHELF Z-80 SYSTEMSAVE 15% - and more!

System 2 List $3990 $ 3490.00

System 3 List $5990 4999.95

1-2 Kit List $595 505.00

Assembled List $995 845.00

Z16KZ-K 16K RAM Board, Kit ONLY399.00

Assembled List $795 599.00

CROMEMCO BOARDS LESS 10%

INQUIRE ABOUT NEW CROMEMCOMULTI-USER BASIC SYSTEM!

TDL - SAVE UP TO 50%

EXTREMELY VERSATILE!System Monitor Board, lessZapple MonitorROM and on-board RAM,

Kit, formerly $295 $ 147.50

Assembled, formerly $395 197.50

Board as supplied features power-on

jump, parallel I/O port, two serial I/O

ports, plus cassette interface.

Zapple Monitor ROM or ik ram for above 29.95

Xitan Alpha 1 List $993 SUPER BUY 789.00

SUBSTANTIAL SAVINGS- ALLXITANS

ALL TDL HARDWARE AND SOFTWAREAT LEAST 15% OFF!

BARGAIN SYSTEM

SAVE OVER $500Contact us for a system equal toa Xitan!

For Handling, shipping, and insurance, add$10 per mainframe, $3 per disk drive, $2per board.

- SEND FOR FREE CATALOG -

MiniMicroMart, Inc.

1618 James Street

Syracuse, New York 13203

Phone: (315) 422-4467

National Bureau of Standards Symposia:Microcomputers

Current and future benefits of micro-computer technology will be weighedat the Symposium on MicrocomputerBased Instrumentation, to be held atthe National Bureau of Standards (NBS),Gaithersburg MD, on June 12 and 131978. Sessions in four major areas, eachhighlighted by an overview presentation,will focus, respectively, on microcom-puter technology, applications to scienti-fic instrumentation, microcomputerinterface standards, and applications toindustrial process control. This sym-posium, cosponsored by NBS, theInstitute of Electrical and ElectronicsEngineers (IEEE) Computer Society,and the IEEE Group on Instrumentationand Measurement, will mark the openingof a series on Challenges in Science andTechnology.

The symposia series, instituted byNBS Director Dr Ernest Ambler, isintended to encourage a cross-fertili-zation of ideas from many disciplines.Participating scientists of diverse back-grounds will jointly assess current trendsand future needs. Each symposium willfeature contributed or invited papersfrom within and outside the bureau.

Major papers at the June 12 and 13symposium will include:

• Microcomputers for Biomedicaland Clinical Applications

• Microprocessor Based SatelliteControlled Clock

• Fault Tolerance in DistributedArchitectures

• Microcomputers in the LinearWorld

• Control of a 1 Gigahertz CCDTransient Digitizer

• Automating Analytical Instru-mentation

For more information on sessions orschedules of the microcomputer sym-posium, contact Bradford M Smith,Room A130 Technology, NationalBureau of Standards, Washington DC20234,(301) 921-2381.

The second event in the series will bethe Symposium on Atomic and Mole-cular Science and Technology, Septem-ber 7 and 8 1978. For details contactDr Stephen J Smith, Joint Institutefor Laboratory Astrophysics (JILA),National Bureau of Standards, BoulderCO 80303, (303) 499-1000, extension3631.

Tentatively scheduled for January1979 is the third in the series, theSymposium on Mathematical Modeling.For details contact Dr J R Rosenblatt,NBS Applied Mathematics Division,Room A337 Administration, WashingtonDC 20234, (301)921-2315.

Coordinating the Symposia onChallenges in Science and Technologyis Dr Helmut Hellwig, NBS Time andFrequency Division, Boulder CO 80303,(303) 499-1000, extension 3277."

PROFESSIONALTERMINAL

INTERTUBE® - The fantastic new videoterminal with 12" screen, 24x80, 128 upper-lower case ASCII characters, 16 programmable function keys, 14-key numerical keypad, protective fields, and much, muchmore. . . compare with ADM, Soroc, Hazel-tine FANTASTIC PRICE: ONLY $ 784

COMPLETE

BUSINESS

SYSTEM

With keyboard and video terminal, Z-80processor, 32K memory, dual minifloppydisks (286 kilobytes), Teletype 43 printer(30 cps pin-feed platen), Extended BASICSoftware, assembled and tested withinterfaces ready to use — ALL for . . .

$3,995°°

S-100 MEMORY BOARDS

Dynabyte" 16K Dynamic RAM ModuleList $390 $ 319

Dynabyte' 16K Fully Static RAM Module

Model 1625, 250ns List $555 444

Model 1645, 450ns List $525 420

Dynabyte* 32K Fully Static RAM Module

Model 3225, 250ns List $995 796

Model 3245, 450ns List $925 740

• ASSEMBLED AND TESTED - ONE YEAR WARRANTY

SD32K Dynamic w/8K, Kit 149

SD 32K Dynamic w/16K, Kit 249

SD 32K Dynamic w/32K, Kit 449

16K Static (Famous Brand) formerly soldat $699 SUPER SPECIAL: $399

TDL VDB 25x80 Video Display Board,

assem/tested reg. $369 NOW314

ASCII KEYBOARDS in enclosure (surplus)

STARTING AT: $ 44.95

IBM 735 I/O SELECTRICS (used) from: $395TELETYPES (immediate delivery)

K SR-33 (used) as low as $ 495

ASR-33 (used) as low as 695

NEW MODEL 43, 30 cps. starting at 995

Famous DECwriter II (new) 1490

ALLPRICESPLUSSHIPPING

SEND FOR FREE CATALOG

MiniMicroMart, Inc.

1618 James Street

Syracuse, New York 13203

Phone: (315) 422-4467

102 June 1978obyte Publications Inc Circle 250 on inquiry card.

Circle 251 on inquiry card.

MUMPS Group to Meet in San Francisco

MUMPS Users' Group (MUG) willmeet in San Francisco CA on June 7thru 9 1978, at the Jack Tar Hotel.The conference includes all day tutorialson programming in MUMPS, ambulatorycare information systems, technicalaspects of ANSI Standard MUMPS,formal presentations of medical andnonmedical applications, panel and dis-cussions on applications on computersin medicine. The conference is the sameweek as the NCC in Anaheim CA. Formore information contact Pat Zimmer-man, Dept of Biometry, Wearn ResearchBldg, University Hospitals, Cleveland OH44106."

What Might Be Called

CACHE'S On Line Graffitti (COG)

In a recent phone conversation withWard Christensen, confirmed by a copyof The CACHE Flash newsletter, Ilearned about an experiment called theComputerized Bulletin Board System.This system was implemented over aweekend by Ward and another memberof CACHE, Randy Suess. It is an 8080computer system, floppy disk and autoanswer modem running 24 hours a dayjust to see what happens. According toits originators, all you do is call (312)528-7141 with a 110 bps or 300 bpsmodem handy, connected to yourterminal (or your computer emulatinga terminal). When the tone is heard(assuming you don't find a busy signalbecause of all the other people readingthis notice who are trying the sameoperation) you connect your modemand proceed with an interactive se-quence. A session begins when you slow-ly type a series of isolated carriagereturns (ASCII hexadecimal code 0D)which enable the system to determinethe speed of your terminal. After that,the system provides the caller withinteractive prompting about its variousfunctions. The system has been runningsince early this year; according to Wardpeople have been calling and leavingmessages from all over the country. Itrepresents a practical implementationof some of the networking conceptswhich people are talking and writingabout for use with personal computers.For those unfamiliar with the organi-zation, CACHE is the Chicago AreaComputer Hobbyist Exchange, locatedat POB 52, South Holland IL 60473,with meetings once a month on the thirdSunday of the month. For more infor-mation call Dave Jaffe, (312) 849-1132.

Bulletin Board System

The interactive Bulletin Board systemimplemented by Ward Christensen and

IntroducingBit Pad.

The new,

low-cost digitizer for

small computer systems.

Bit Pad is the newest product from Summagraphics, the leadingproducer of professional digitizers. It has a small 11-inch active area anda small $555 price tag. But the list of applications is as big as yourimagination.

Better than a joystick or keyboard for entering graphic information,it converts any point on a page, any vector, any distance into its digitalequivalents. It's also a menu for data entry. You assign a value, or aninstruction to any location on the pad. At the touch of a stylus, it'sentered into your system.

Who can use it? Anyone from the educator and the engineer to thehobbyist and the computer games enthusiast. The data structure isbyte oriented for easy compatibility with small computers, so you canadd a power supply, stand-alone display, cross-hair cursor and manyother options.

$1,000.00 creativity prize. You can also add $1,000.00 to yourbank account as a reward for your inventiveness. Just write an articleon an original Bit Pad application and submit it to any nationalsmall-computer periodical. I f the editors publish it - and the decisionis solely theirs - Summagraphics will pay you $1,000.00. ContactSummagraphics for rules concerning this offer.

Dealer Inquiries Invited

Aummaduphici

mm ' corporation

35 Brentwood Ave., Box 781, Fairfield. CT 06430Phone(203) 384-1344. TELEX 96-4348

Visit us at NCC Booth Nos. 1760 and 1762

■

Circle 354 on inquiry card.

June 1978 © BYTE Publications Inc 103

«*" Fully Static

Using the TMS 4044

250 nsec. chips—$425

Z-80A 4 Mhz. Fast—This fully assembled and tested16K board was designed to operate without wait statesin a 4 Mhz. Z-80A system allowing over-generous timefor CPU board buffers.

450 nsec. chips—$375

For 2 Mhz. Systems—Same circuit as above butpriced lower because of less expensive memory chips.It is fully assembled, burned-in, tested and guaranteed.

8K Versions Also Available

Both boards available fully assembled with socketsfor all 32 MOS chips but supplied with only 8K of chips.8K—250 nsec—$265. 4K chip set—$95. 8K-450nsec—$235. 4K chip set—$85.

Fully Static is Best—Both boards use the state-of-the-art Texas Instruments TMS 4044 which requires nocomplicated and critical clocks or refresh. The fullystatic memory chip allows a straight-forward, "clean"design for the board ensuring DMA compatibility. Theyuse a single 8 volt power supply at 1.7 amps nominal.

Fully S-100 Bus Compatible—Each 4K addressableto any 4K slot and separately protected by DIP switches.

Commercial Quality Components—First qualityfactory parts, fully socketed, buffered, board masked onboth sides, silk-screened, gold contacts, bus bars forlower noise.

Guaranteed—Parts and labor guaranteed for one fullyear. You may return undamaged board within ten daysfor a full refund. (Factory orders only—dealer returnpolicy may vary).

Check your local computer store first

Factory Orders — You may phone for MC, VISA.Cashier's check, M.O. speed shipment for mail orders.Personal check OK. Shipped prepaid with cross countryorders sent by air. Shipping — Stock to 72 hours normal.We will confirm order and give expected shipping datefor delays beyond this. Washington residents add 5.4%tax. Spec, sheet, schematic, warranty statement sentupon request.

A

i Seattle Computer Products, Inc.

^^■^16611 111th S.E., Renton, Washington 98055(206) 255-0750

Randy Suess produces this hard copyupon signing on. The entire system isinteractive, so that all the instructionsand prompting information a user needscan in principle be obtained by inter-acting with it. This text printout wasobtained by answering "y" for yes to anumber of the prompting queries. Weonly show a small excerpt of whatcan be a long and fascinating interactivecommunications session.

TERMINAL NEED NULLS? TYPE CTL-N WHILE TIMS TYPES:

•• MEL COME TO WARD ANf RANDY'SCOMPUTERIZE? CULLETIII (WARP SYSTEM

CONTROL CHARACTERS ACCEPTEC DY THIS SYSTEI':

OEL/RUROUT ERASES LAST CHAR. TYPED (AM" ECH0S IT)

CTL-C CANCEL CURRENT PRINTING

CTL-K 'KILLS' CURRENT FUNCTION, RETURNS TO Mjfltl

CTL-N SEND 5 NULLS AFTER CR/LF

CTL-R RETYPES CURRENT INPUT IMF (AFTER TEL)

CTL-S STOP/START OUTPUT (FOP VIPFn TEW I HAL)

CTL-0 ERASE CURRENT INPUT LINE

BULLETIN

PROBLEMS WITH THE SYSTE'?'FOR HARDWARE CALL RANDY AT (312) 955-3556FOR SOFTWARE CALL WARD AT (312) SUT-r, 27«i

PULL FT IN

)

- BULLET 11;

MARCH CACHE MEETING, SUN. THE 19TH. DETAI EULLETIN

Y/N: IS THIS YOUR FIRST TIME UN THE SYSTEI7Y

Y/N: CAN YOUR TERMINAL RECEIVF LOWEP CASE CIARACTFRS?r

Fl le last updated 3/H/78

quest Ion, answera) (not a

Mhen you are asked a question, answer wltl Y fo

or N for no.

Are you using a video ten

When the system Is typing, you can use control-S to Stop

the output to look at It, then again to continue. This will

rillow you to see what Is sent before It scrolls off.

Want Summary of System functlons?y

The system has only three major functions:

--> Entering messages

--> Retrieving message summaries

--> Retrieving messages

Want to know purpose of this system?y

It was conceived, financed, and Is run by Ward Chrlstensenand Randy Suess for message communication between computerhobby Ists. Typical message subjects Include: 'some tM ng fosale', 'need help with something', 'cluh meeting notice',or just sharing Ideas. Feel free to leave a message onany hobbyist computer related subject.

Kant to know what hardware makes up He system'yThe hardware consists of:

Vector/! mother board

Card cage

Vector Reset and Go Prom/Ram board

l MSA I 8080 CPU board

2**K of various memory

Tarbell floppy disk controller

Innovex floppy disk

DC Hayes modem hoard

Polymorphic VTI video board

SWTPC keyboard

Processor Tech. JP*5

ASR-JJ for message logging

Want a quick summary of what to do your first tlme7y

1. S - Use the S function to retrieve message summaries

• Start wi th message 1

• Use control-S to stop/stan output.

• Write down message numbers you want to see.

• Use control-K to kill the summary, return to menu

2. R - Use R function to retrieve messages of Interest.5. Q - Use the G (Good bye) function when you are done.

Remember to use the H (Help) function for details.WHAT IS YOUR FIRST NAME?nrwWHAT IS YOUR LAST NAME?user

LOGGING NAME TO DISK...FUNCTION; 0,C,n,E,C,H,N,R,S,W,

IF NOT KNOW)?

FUNCTIONS SUPPORTED:

R-PRINT BULLETIN

C-CASE SWITCH (UPPER/LOWER)

D-DUPLEX Sit ITCH (ECHO/NO ECHO)

E-ENTER MSC INTO SYSTEM

G-G0OD BYE (LEAVE SYSTEM)

H-HELP WITH FUNCTIONS

N-NULLS: SET 0 TO 9 AS HEqUIP.FP

R-RETRIEVE MSG

S-SUMMARIZE MSGS

u-TYPE WELCOME

FUNCTION: B,C,D,E,G,H,N,R,S,H, (OP ? IF NOT KN0WN)?hh'

?s

STARTING MESSAGE NUMBER (C/R TO RETURN TO MENU)?169

USE CTL-K TO ABORT, CTL-C TO SKIP, CTL-S TO PAUSE.

--DATE- ---FROM -- Tr--

3/19/78 WARD CMRI5TENSFN IM5AI nwNERS

104

June 1978 O BYTE Publications Inc

Circle 316 on inquiry card.

Survey Contest Results

The 1978 BYTE Reader Survey,mailed to 5000 randomly selectedaddresses on our mailing list on January15 1978, featured an informal incentivecontest drawing from among thoseindividuals who returned completedsurvey forms. The drawing was heldon March 15 1978 in our offices, withthe names of the three winners docu-mented here:

First Place (the first name drawn)was a $500 check sent to T LBalog of Cleveland OH.

Second Place (awarded to thesecond two names drawn) was a$250 check sent to ) EdwardPotzler of Brookfield IL andanother $250 check sent toRobin Sutton-Brown of FresnoCA.

We wish to thank all the individualswho participated in this survey for re-

Ask BYTE

SPECIFICATIONS SOURCES

Can you tell me where a beginninghacker can get transistor and integratedcircuit specifications? Where I shop, oneor two ratings are readily available, butmore detailed characteristics under vary-ing conditions are not.

James Howard

3600 Parker Av

Louisville KY 40212

Several mail order parts suppliersmake available engineering documen-tation for the common integrated cir-cuits. In our work at BYTE, the mostfrequently referenced books are those ofTexas Instruments. This series of booksincludes one or two textbooks andmanuals of specifications on subjectsranging from TTL integrated circuitsto memory parts to optoelectronicsto discrete transistors and linear inte-grated circuits. (These books aremarketed by BITS Inc, 70 Main St,Peterborough NH 03458.) The nextmost frequently referenced compendiumof technical specifications for integratedcircuits is the set of documentation putout by National Semiconductor, but thisset is much less readily available. Forother manufacturers and parts notcovered in these two libraries, we haveto rely on a random collection of indi-vidual specification sheets, since booksdon't seem to be available. ■

turning the filled out forms. The resultsare being tallied as this is written (March29 1978) and are expected to be sum-marized in BYTE towards the end of thiscoming summer as well as being madeavailable in more complete form as areport available on request."

A Metamorphosis

Recently we received the first copyof a journal with which we have longbeen familiar under a previous name andformat. The PPC Journal is the newformat and name for the HP-65 UsersClub publication formerly called 65Notes. (The group is not affiliated withHewlett-Packard.) This publication is thework of Richard J Nelson, 2541 WCamden PI, Santa Ana CA 92704.Quoting from fine print in the volume 5number 1 issue, "The Club is a volun-teer, non-profit, loosely organized, inde-pendent, worldwide group of Hewlett-Packard personal programmable calcu-lator users. The official Club publication,PPC Journal, formerly 65 Notes, dissemi-nates user information related to appli-cations, programs, programming techni-ques, problems, hardware, innovations,

— any information related to theselection, care, use and application ofHewlett-Packard Personal ProgrammableCalculators."

The first issue of the new formatcontains 36 pages of material in a saddlestitched booklet form with three holepunching that enables the user to accu-mulate issues in an ordinary three ringbinder. The materials in this issueinclude the following titles:

"Sampling Without Replacement""Calculator Wish List""Calculator Patents & Programs""Adjusting HP-97 Print Density""Uneven & Irregular Cash Flows""The Games of King & Hammurabi""Beginners' Programming Tricks""Calendar Algorithms""HP-67 Circuit Details""HP-67 Modifications"

If you are a user or prospective userof the calculator products of Hewlett-Packard, this grass roots user pheno-menon (independent of HP) will providevaluable information not available fromany other source. The price of the PPCJournal is $15 in the US, and member-ship is open to anyone anywhere in theworld who uses HP calculators."

Free 48-page catalog to help youincrease computer room efficiency.

The Minicomputer Accessories' new 1978 Summer Catalog is yours for theasking. Our same-day shipment policy means you get your order when youneed it. And a full, no-nonsense guarantee on every product assures yoursatisfaction.

Pages 38-44 are full of cables/connectors

9 pages give you practical, reasonably you can order today and receive tomorrow.

priced media storage alternatives.

Pages 11-19give you same-day shipment onguaranteed media while saving you money.

Page 3 introduces you to anall-neiv softivare calculator.

Pages 24-25 show you how to increasekeying operator productivity.

Minicomputer^

Accessories

Pages 34-35 offer you 9 ways toimprove your software designs.

For your free catalog circle No. on inquiry card.

130 S. Wolfe Rd. ■ P.O. Box 9004Sunnyvale, CA 94086 • (408)737-7777

Circle 243 on inquiry card.

June 1978 © BYTE Publications Inc 105

Glufjs andNewsletters

Conducted byDavid Wozmak

NCCN

The Northwest Computer Society Incmeets at the Pacific Science Center inSeattle on the first and third Thursday ofeach month at 7:30 PM. The first meet-ing of the month is usually more formal witha featured speaker or a demonstration. Thesecond meeting of the month is less formal,with freewheeling discussion and problemsolving. To contact the Northwest ComputerSociety write Northwest Computer ClubNews, POB 242, Renton WA 98055.

TURN YOUR COMPUTERINTO A TEACHING MACHINE

The staff at Program Design did not learnabout educational technology from a book—we wrote the book! We have been innovators insuch teaching materials as programmed instruc-tion and multimedia presentations. We also belongto that minority in education who actually test ma-terials to see that people can learn from them.

Now Program Design brings this experience to the personalcomputer field. PDI is developing a line of educational andgame programs for the whole family—from preschool child toadults.

Program Design educational software uses the computer's full teachingpotential in exciting and effective ways. Programs are simple to use andmemory efficient, and most important . . . they teach!

TAPES NOW AVAILABLE FOR THE TRS-80. PET, APPLE II

SAMPLE OUR SOFTWARE FOR $1.49. Send us $1.49, your name, address, andtype of computer, and we'll send you a tape for your computer with actual samples ofour programs.

Or circle our number on the reply card for a printed catalog.

Department 200 PROGRAM DESIGN. INC. 11 IDAR COURT GREENWICH, CONN 06830

PET User Group

The newsletter of this Pennsylvaniabased group contains a veritable treasuretrove of information and interesting factsabout the Commodore PET. On the hard-ware side it has information about opera-ting modems with PET, interfacing to anAltair (S-100) mother board, availableperipherals, and more. In the softwaresection there is a PET Errors and Bugscolumn, which offers solutions for the fewbugs which have been found. There are alsoa number of columns by various contrib-utors on the subject of PET programming.

PET User Notes is published six or moretimes a year by Gene Beals, PET UserGroup, POB 371, Montgomeryville PA18936. Membership/subscription is $5 peryear in the US and Canada, $10 in othercountries.

APPLE

An Apple II users group has recentlybeen formed in the Seattle Washingtonarea, with membership open to all. Theprimary function of the group is the ex-change of ideas and programs, which isaccomplished through the medium ofCall Apple, a monthly newsletter. For asample copy of the newsletter and an ap-plication blank, send an SASE to APPLE,c/o Val J Golding, 6708 39th Av SW,Seattle WA 98136.

Theater Computer Users Group

The Theater Computer Users Group(TCUG) exists to provide a method ofexchange of information about uses ofcomputers in theater. The primary mediumof communication is a periodic newsletterwhich is supported with a $4 fee. Topicsof interest include special programs forspecific theater jobs such as set designand inventory, cutting lists and ticketsales and special uses of hardware for thingslike stage lighting and management of pro-duction cuing. Other areas of interestinclude ticket sales, mailing list and patronrecords, actors/casting lists, volunteer crewmanagement, financial records and a num-ber of inventory and management functions.

Material in the newsletter includescomments from theater people, descriptionsof programs and problems and analysis ofnew products that might have special usesin theater. Book reviews and reports ofpast or upcoming meetings of interest arealso included. Contact Mike Firth, TheaterSources Inc, TCUG-TSI, 104 N St Mary,Dallas TX 75214, (214) 827-7734.

106

lunc 1978 © BYTE Publications Inc

Circle 306 on inquiry card.

Circle 330 on inquiry card.

TRS-80 User Group of EasternMassachusetts . . .

The TRS-80 Users Group of EasternMass was formed in January 1978 to linkthe growing numbers of users of the newRadio Shack TRS-80. With thousandsof these Z-80 based systems delivered sinceOctober 1977 and new peripherals and soft-ware becoming available each month, thegroup expects to be a popular and usefulclearinghouse and generator of activitiesconcerning effective use of the TRS-80.Interested TRS-80 users are invited toattend meetings, held at 7:30 PM on thesecond Wednesday of each month. For fur-ther information, write TRS-80 Users Groupof Eastern Mass, c/o Miller, 61 Lake ShoreRd, Natick MA 01760.

. . . and Wisconsin

Hardware is the specialty of this group.Only the TRS-80, by Radio Shack, is dealtwith. The aim of this group is to develop,jointly with members, hardware and inter-faces to existing, lower cost peripheral units.Software will be handled via exchange. Hard-ware and software exchange pays a smallroyalty to developer. The newsletter TRS-80User Notes is sent monthly. Membershipcost is $17 the first year, $12 per yearthereafter. For more information and asample newsletter send a SASE to John PMarsh, 621 13th Av S, Onalaska Wl 54650.

.. . and North Carolina

The TRS-80 Users Group of NorthCarolina has a newsletter which is packedwith programs for such things as: bio-rhythms, math quiz, card games, wumpus,lunar lander, UFO and so on. There is alsohardware information on the TRS-80. Formore information contact R Gordon Lloyd,TRS-80 Users Group, 7554 Southgate Rd,Fayetteville NC 28304.

Computer Club of Western New York

The Computer Club of Western NewYork is an organization in the greaterBuffalo area providing computer hobbyists,professionals and students the chance forhands on experience with the latest inmicrocomputers. The club presently has twoCromemco Z-80A microprocessors with upto 64 K core memory each, an 8 inch dualdisk drive, tape cassette storage, a Teletypeseveral CRTs, and is always adding more.Classes in BASIC, FORTRAN IV, assembly,and microcomputer engineering are heldon a rotating basis.

Software

Games • CRAPS (Las Vegas style) $6.00MULTIPLE LUNAR LANDER $8.00SLOT MACHINE $6.00GAME PACKAGE: Russian Roulette, MadScientist, and ABM $8.00

Graphics • PICTURE MAKER with AMP'L ANNY $12.00GRAPHICS PACKAGE I: Laser Beam, SpaceShuttle, and Blast Off $10.00GRAPHICS PACKAGE II: Rain in Greece, Flea,Textwriter, Random Walk $10.00

Scientific • FOURIER FIT: Does curve fitting $15.00

Systems • RANDOM NUMBER GENERATOR TEST $5.00HEX MEMORY LOADER $10.00MEMORY DUMP PROGRAM $10.00MEMORY SEARCH $5.00

All Programs Written in BASIC

Complete Easy to Read Documentation

Programs Completely Tested

SOFTWARE RECORDS

P.O. BOX 8401-B

UNIVERSAL CITY, CA 91608

(cal residents add 6% sales tax)

ROBOTICS

MODCILAR ROBOTS forIndustrial and Personal Application

Send for complete brochure:GALLAHER RESEARCH, INC.P.O. Box 10767Salem StationWinston-Salem, N.C. 27108

Circle 145 on inquiry card.

June 1978 BYTE Publications liu

107

Club meetings are on the first Tuesdayof every month at 7 PM, and a newsletter isbeing planned. Dues are $20 for students,$25 for nonstudents, with group discountsavailable on both memberships and com-puter time. For more information, writeComputer Club of Western New York,3834 Main St, Eggertsville NY 14226.

BUSS

Edited by Charles Floto, Buss is theindependent newsletter of Heath Companycomputers. It contains Heath productinformation and user reports. The contactaddress for BUSS is Charles Floto, 325Pennsylvania Av SE, Washington DC 20003.

COM-3

COM-3 is a huge newsletter (approximate-ly 45 pages) from Victoria AUSTRALIA.Edited by Timothy Mowchanuk, this news-letter covers just about everything from cal-culators to PROM data rewrites. The nameCOM-3 is taken from the first three lettersof the words computer, community andcommunication, and symbolizes the growinginteraction between these things. To contactCOM-3 write to Timothy Mowchanuk,editor, c/o Essendon Grammar School,POB 138, Essendon, Victoria 3040,AUSTRALIA.

Alpha Micro Systems AM-100 User Group

A program exchange and monthly news-letter is being established for users, ownersand persons interested in the Alpha MicroSystems AM-100 computer system.

The newsletter will contain descriptions

of the programs that have been submittedby users. In addition, it is planned to in-clude short announcements of programs thatare in the process of being developed as wellas other items of interest.

The distribution medium of the programsand their support files will be via floppydiskettes written in the IBM compatibleAMOS format. For further information con-cerning membership and details of programsubmission contact Lefford F Lowden,616 Long Pond Rd, Rochester NY 14612.

DG Users Group Formed

An independent users group has beenformed to act as a clearinghouse for ex-change of Digital Group information. Thefirst issue of the group's newsletter featuresan evaluation of Micro Com software, aninterface for a Selectric (hardware andsoftware), a discussion of problems inexpanding past 26 K, a flea market section,and so on. For information write to DGUsers Group, POB 316, Woodmere NY11598.

Tri-State Computer Club

The Tri-State Computer Club is a newlyformed club with one main purpose in mind,to provide a common source of informationand help to those interested in computersand other related equipment. Meetings areheld every other Tuesday evening at 7:30 PMat 22 Beechurst Av. Anyone interested isinvited to attend. For more informationcontact Randy Crowe at Rte 3, Box 84,Morgantown WV 26505 or phone (304)292-1915 or (304) 292-9700."

$95 Stand Alone Video Terminal

fek

s *

'S & t 1 ■ ^i

SCT-100 FEATURES:

• 64 X 16 line format with 128 displayable characters• Serial ASCII or BAUDOT with multiple Baud ratest • $187 Assembled or $157 Kit (Partial Kit $95)\ • Full cursor control with scrolling and pagingI • On board power supply

Many additional features

Call or write today. MC/VISA accepted

XITEX CORP. P.O. Box #20887,/ Dallas, Texas, 75220 • Phone (214)620-2993/ Overseas orders and dealer inquiries welcome

108 June 1978 OBYTt Publications Inc

Circle 400 on inquiry card.

Programming Guickies

Those Calculating Romans

Laurence G Dishman5525 Metropolitan PkySterling Heights Ml 48077

Remember learning about Romannumerals and all the fun you had with theungainly numbers? Now you can let yourcomputer have fun with them too! Theprogram in listing 1 is a 4 function Romannumeral calculator that displays inter-mediate values in Arabic notation. A slash(/) preceding a Roman numeral is substi-tuted for a bar above the numeral. The slashsignifies multiplication by 1000. The pro-gram was written in North Star BASIC anduses, the variables shown in table 1. Table 2is a brief description of the program.

The examples in listing 2 are, of course,addition, subtraction, multiplication anddivision. The program prompting is remi-niscent of many old mathematics textswhich are arranged as conversations betweenteacher and pupil. One interesting aspect ofthe program is that if a nonstandard Romanexpression is entered in addition mode andnothing is added to it, the result will be aRoman expression in standard form.

1 Fill 51207,01

10 DIM N«<40),N<40>

20 FOR Pl = l TO 40\N*(P1>=""\NEXT PI

30 PRINT TAB(28> 7"CEMTURION"

40 FOR F'l-1 TO r:\PRINT\NFXT PI

50 INPUT " ENTER FUNCTION (A,S,M,D)

60 IF F*0"A" THEN 180

70 PRINT TAB<10),"ENTER (?=-' FOR SUM."

90 PRINT TAB<10)."ADDEND ",100 OOSI IB 590

110 IF N»--:>"=" THEN S=S+N1 El SE 130

120 OOTO 90

130 PRINT TAB(10)1S ." » ".

140 A=S

150 GOSUB 850

160 PRINT N*

170 GOTO 1920

180 IF F«0"S" THEN 300

190 PRINT TAB(10),"MINUEND ",

200 '3=0

210 GOSUB 590

220 S=N1

230 PRINT TAB(10),"SUBTRAHEND ",

240 GOSUB 590

250 A=S-N1

260 PRINT TABOO), A." = ",

270 GQSi IB 850

2S0 PRINT N*

290 GOTO 1920

300 IF F*<>"M" THEN 420

310 PRINT TAB(10),"FACTOR ",

320 S=0

:3:30 GOSI 'B 590

340 S=NI

350 PRINT TAB<10),"FACTOR ",

36p GOSUB 590

370 A=S*N1

380 PRINT TAP(19).A," = ",

:390 GG'31 IB :=i50

400 PRINT N*

410 GOTO 1920

420 IF F*0"D" THEN 540

430 PRINT TAB(10)■"DIVIDEND ",

440 gag

450 GOSUB 590

460 S=N1

470 PRINT TAB<10),"DIVISOR ".

4:-:0 GOSI IB 590

490 A=INT(S/N1)

500 PRINT TAB(10),A," « ",

510 GOSUB S50

520 PRINT N*

530 GOTO 1920

540 PRINT TAB(17),"ET TU BRUTE...THEN SYSTEM CRASHES"

550 GOTU 1920

560 GOTO 590

570 GOTO 750

5S0 GOTO 1290

590 INPUT "ENTER ROMAN NUMERA1 :",N*

600 IF N*="=" THEN RETURN

610 FOR Pl-.l TO 40\N(P1 )=0\NFXT PI

Listing 1: Roman numeralmathematics program

written in North StarBASIC. Listing I con-tinues on pages 110-11 J.

MICRO-PROCESSOR PROGRAMS VIA PHONE LINES

DIAL-A-PROGRAM

— Why spend time waiting for expensivesoftware by mail when you can obtain low costsoftware in minutes on our Toll Free Phone Lines.

— This unique Software Service makes availableto its subscribers a wide selection of Micro-Processor Programs via conventional phone lines.

— This system is TRS-80 and Kansas CityStandard compatible.

— Call Toll Free for More Information between9:00 a.m. and 11:00 p.m. EDT. Fla. residents call(904) 269-4406.

A Division of Micro Systems Services, Inc., P. O. Box 1444, Orange Park, FL 32073

All Rights Reserved

Circle 216 on inquiry card.

June 1978 BYTE Publications Inc

109

Listing J, continued:

620

N1=0

a:-ki

P=LEN(N*>

640

FOR P1=P TO 1 STEP -1

/•.SO

IF N*(P1)="/" THEN NEXT PI

&&0

GOSUB 750

A70

NEXT PI

680

N1=N(P)

A90

FOR P1=P-J TO 1 STEP -1

700

IF N(P1+1>=0 THEN P2=Pl+2 ELSE P2=P1+1

710

IF NIP1>>=N(P2> THEN N1=N1+N(P1> ELSE N1=N1-N(P1)

720

NEXT PI

730

PRINT TAB(15),N*." ■ ".Nl

746

RETURN

750

IF N*(Pi,Pl)="I" THEN N(P1)=1

/AC J

IF N*(P1,P1>="V" THEN N(P1)=5

770

IF N*(P1,P1)="X" THEN N(P1>=10

7sn

IF N*<P1,P1)="L" THEN N(P1)=50

/Vll

IF N*<P1.P1)="C" THEN N(P1)=100

900

IF N*(P1,P1>="D" THEN N(P1)=S00

Will

IF N*<P1.P1)="M" THEN N(P1)=1000

820

IF Pl = l THEN RETURN

wao

IF N*(P1-1.P1-J)="/" THEN N(P1)=N(P1)*1000

840

RETURN

wso

N*="

SAO

P=l

X/ll

IF A/1000000 < 1 THEN 920

8W()

N*(P,P+1)="/M"

890

A=A-1000000

90 0

P=P+2

910

GOTO 870

920

IF A/900000 < 1

THEN 9t.

9:30

NS<P,P+3>="/C/M

940

A=A-Vi.i'.iO(.ii.i

950

P=P+4

960

IF A/500000 < 1

THEN 10

970

N*(P.P+1)="/D"

VWII

A=A-5l.ni00ii

990

P=P + 2

lnni'

IF A/40U000 ■:.

THEN 1

1 01C

Nt(P,P+3)="/C/B"

102i"

A=A--400000

103C

pap+4

104i.

IF A/100000 <

THEN 1

1050 N*(P.P+1 )="/C"

1060 A=A-loouoo

107C

P=P+2

liii-u

OOTO 1040

1 OVI

if A/90000 ■■■; 1

THEN 11

1 IOC

N*(P,P+3)="/X/i

■I

1110 A=A--90000

1 1 2C

P=P+4

1 1 -:i

IF A/50000 < 1

THEN 11

1141

N*(P,P+1)="/L"

1 15i.

A-A-5ui.il.il.'

UAi:

P=P+2

11 /i.

IF A/40000 ■:." 1

THEN 1 2

1 ISO N*(P,P+3)="/X/l

'■

1 190 A=A-40000

040

Table 1: Variables used inRoman mathematics pro-gram.

Table 2: Brief descriptionof program broken downby line number.

A

F$

N

N$

N1

P, P1.P2

S

Intermediate Arabic value for later conversion to Roman

Character value indicating function desired

Array holding the Arabic value of each Roman numeral in the expression

Array holding the Roman numeral expression

Returned Arabic number after conversion

Pointer variables

Intermediate Arabic value used in calculations

Statement Commentary

1

10-50

60-530

540

560-5S0

590-740

750-840

850860-1910

1920

Switches from CRT to Printer mode in my system.Inputs desired function.

Based on which function is desired, the computer calls for the inputting ofa Roman expression and calls the appropriate subroutines. Then prints thevalues and answer.

If no legal function is inputted, the program aborts.Were used for diagnostics during program preparation. May be omitted.Input Roman expression and evaluates it back to front using the sub-routine at 750.

Checks for value of Roman numeral then check to see if it is preceded by aslash. If so, muliplies by 1000.Set the output array equal to 40 blanks.

Is a common assembly line approach to assembling the standard Romanexpression of the Arabic value calculated.Prints O.FD "It is finsihed."

MORE 6800 SOLUTIONS:

FOR SWTPC 6800

FOR MOTOROLA "D2"

M6800 SOFTWARE

r'AS-l ANALOG INTERFACE MODULE

• FAST, ACCURATE A/D, D/ACONVERSIONS

• EIGHT ANALOG INPUT CHANNELS

• ONL HIGH-SPEED ANALOG OUTPU'

• OCCUPIES ONE I/O SLOT

• $90.00 KIT $125.00 ASSM.

SC-1 SERIAL INTERFACE CARD

• RS-2J2 SERIAL INTERFACE

• LULL CONTROL SIGNALSIMPLEMENTED

• MOST VERSATILE SERIAL I/OAVAILABLE

,• $40.00 KIT $50.00 ASSM.

/DA-1 UPGRADE KIT

• CONVERTS D2 TO TERMINAL I/O

• RFTAINS LULL CASSETTE I/OCAPABILITY

• INCLUDES RT/68MX ROM -MONITOR/O.S.

• ALLOWS USL OF BASIC, EDITORS,ASSEMBLERS, ETC.

• RS-232 SERIAL INTERFACE

• DAI w/70 p. MANUAL $70.00

MOTOROLA MMS68104 16K RAM

• 16K BYTES DYNAMIC RAM

• ENGINEERED SPECIFICALLY FOR "[

• FXORCISOR — TYPE BUSSV S.W5.00 ASSEMBLED

/A/BASIC COMPILER \

• HK EXTENDED BASIC COMPILER

• CONVERTS BASIC! PROGRAMS IOFAST, MEMORY EFFICIENTMACHINE LANGUAGE

• DESIGNED FOR R I '6H - sl'Pl'ORIsMill IIPROGRAMMING

• EXTREMELY VLRSAIIII I O

• KC CASSETTE + MANUAI - $50.00

RT/68MX OPERATING SYSTEM

• EXPANDEDCONSOLI MONITORKOM

• Rl AI IIMI OPI RATING SYSIIJM

• DIRECT MIKBI (, RIPI \( I Ml M

• PIA OR Ml I ll-\( l\ I ()

\" Rl liHMX KOM u M'VNl M $55.00 J

.irgc & VISA Welcome

MICROWVRB SYSTEMS CORPORATION

P.O. BOX 954 • DES MOINES, IOWA 50304 • (515) 265-6121

110

June 1978 BYTE Publications Inc

Circle 240 on inquiry card.

Listing 1, continued:

1200

F-p+4

1210

IF A/10000

< 1 THEN 1260

1 220

N*(P,P+1)=

VX"

1230

A=A--10000

1 240

P=P+2

1250

GOTO 1210

1260

IF A/9000

I 1 THEN 1300

1270

N*(P,P+2)=

'M/X"

12S0

A=A-9000

1290

P=P+3

1300

IF A/5000

: 1 THEN 1 340

1310

N*(P,P+1)=

VV"

1320

A=A-5G00

1330

P=P+2

1340

IF A/4000

J 1 THEN 1380

1350

N*(P,P+2)=

'M/V"

1360

A=A-4000

1 370

P=P+3

1380

IF A/1000

I 1 THEN 1430

1390

N*(P)="M"

1400

A=A-1000

1410

P=P+1

1 420

GOTO 1 380

1430

IF A/900 ::

1 THEN 1470

1 440

N*(P,P+1)=

'CM"

1450

A=A-900

1 460

P=P+2

1470

IF A/500 <:

1 THEN 1510

1430

N»<P)-"D"

1490

A=A-500

1500

P=P+1

1510

IF A/400 <

1 THEN 1550

1520

N*(P,P+1 ) =

'CD"

1530

A=A-400

1540

P=P+2

155n

IF A/100 <

1 THEN 1600

1560

N*(P)="C"

1 570

A=A-100

1580

P=P + 1

1 590

OOTO 1550

1600

IF A/90 <

THEN 1640

1610

N*(P.P+1> =

>XC"

1620

A=A-90

1 630

P=P+2

1640

IF A/50 <

THEN 1680

1650

N*(P)="L"

! 660

A=A-50

1670

P=P+1

1680

IF A/40 <

THEN 1720

1690

N*(P,P+1)=

'XL"

1700

A=A-40

1710

P=P+2

1 720

IF A/10 <

THEN 1770

1 730

N*(P)="X"

1 740

A=A-10

1750

P=P+1

1 760

GOTO 1720

1770

IF A/9 < 1

THEN 1300

1780

N*(P.P+1)=

■IX"

1 790

RETURN

1800

IF A/5 <. 1

THEN 1840

1810

N*(P)="V"

1820

A=A-5

1830

P=P+1

1840

IF A/4 < 1

THEN 1870

1850

N*(P,P+1)=

■IV"

1860

RETURN

1870

IF A = 0 THEN RETURN

1880

N*(P>="I"

1890

A=A-1

1900

P=P+1

1910

GOTO 1870

1920

PRINT TABC

JO) , "QED"

READY

Listing 2: Examples of the four arithmeticfunctions which are arranged in the form ofRoman mathematics texts.

"FNTI.IRION

READY

RUN

ENTER FUNCTION (A.S.M.D) :AENTER <?.= ' FOR SUM.ADDEND ENTER ROMAN Nl IMERAL

/M/M/MMMCMLXIV = 3002ADDEND ENTER ROMAN NUMERAL/C/C/CMMCCV - 30220"5ADDEND ENTFR ROMAN NUMERAL

/MCI I = 1000102ADDEND ENTER ROMAN NUMERAI4305271 = /M/M/M/M/C/C/C/VOFD

' /M/M/MMMCM1.XTV

>64

l/C/C/CMMCCV

READYRUN

ENTER FUNCTION (A.S.M.D) :8

MINUEND ENTER ROMAN NUMERAI

MOMI.XXVII -• 197"'SUBTRAHEND ENTFR ROMAN NUMERAICMXCIX « 999978 = CMl XXVI I I

CiED

:MCM1 XXVIICMXCIX

CENTURION

READYRUN

ENTER ELINlFACTI

FACTI

TION (A.SIR ENTER RMDC XII »IR FNTER RLVI - 569027

M,D) :MJMAN NUMERAL. SMDCXII

16121MAN NUMERAL. I LVI

'■' = /X/CCCL XXIIQED

CENTURION

READYRUN

ENTER FUNCTION (A.S.M.D) :D

DIVIDEND ENTER ROMAN NUMERAL/M/M/C/X/XM/XCCLVI = 2DIVISOR ENTER ROMAN' NUMERALDXIX = 5194102 = M/VCII

RED

: /M/M/129256:DXIX

/X/XM.'XCCl.VI

ENTER FUNCTION (A.S.M.D) :AENTER ®= FOR SUM.ADDEND ENTER ROMAN NUMERAL. rCMMML.XIX

CMMMLXIX - 2969ADDEND ENTER ROMAN NUMERAL :=2969 = MMCML XIX

OED ■

AAA C.C.C. 6800 Systems SpecialistsDealer in the complete

GIMIX® GHOST™ line

This month's feature:

16K software addressable STATIC RAM board for theSS-50 bus

• Uses TMS 4044s

• Fully socketed.

• Assembled and tested.

• Separated into 4 independent 4K memory blocks

• CPU can read status of the software control registers.Each block can be:

<a

Separately addressedSeparately enabled or disabledSeparately protected

Features above are under both software and hardwarecontrol.

Facilitates multi-programming and time sharing. 5^495

Editor — Text Processor with complete file handlingcapabilities, mailing lists and labels, right and left marginjustification, up to 10 tabs, block move and copy forcontract writing, easy enough for your secretary to use.

$100

Ask about our programs for payroll $400, inventory$400, stock club-market evaluation with tax reports$75. Power supply modification kit for SWTPCcomputer $20

AAA Chicago Computer Center

Specialists in 6800 Systems

• Smoke Signal • SWTPC • Percom• GIMIX • Motorola D2

3007'/z W. Waveland AvenueChicago, IL 60618 (312)539-5833

Circle 1 on inquiry card.

June 1978 @ BYTE Publications Inc

111

TheHP-67andHP-97

Hewlett-Packard's Personal Computers

Craig A Pearce2529 S Home AvBrewyn IL 60402

Photo 1: ThePackard HP-67mable calculator,cards containingare inserted intoon the side of(Photo courtesyPackard Co.)

Manufactured by Hewlett-Packard, the

HP-97 and its software compatible younger

brother the HP-67 are considered by many

Hewlett- to be two of the best programmable calcula-

program- tors available.

Magnetic The HP-97 costs $750, compared with

programs $450 for the HP-67. Both feature a full

the slot complement of mathematical functions and

the unit. statistical functions for two sets of variables;

Hewlett- additional features include: Reverse Polish

■ :-:'

■ /

■ / °" °> mm ™,P / "* VT yx | "**

■ 7 ■ m m m""m"

Br 1 w an mi - *

Wf I » "" ""

WF I ■nil !'C' RND 1 BL t

f \ ** •* V m ',,

| Ij^T" *• ■ » f

1 / s"1 or "»"t0i^T1■ i "^ «• m i

I / *^ |B KM \

f m ** fi w

iw

7

K

A

H |||BmK_ H;:' ■■

,

jsy

... ^m^.

Bsife

Ib#

Notation; 26 data storage registers (one ofwhich is used for indirect and relativeaddressing); register arithmetic; 224 pro-gram steps (all fully merged, with no 2 or 3keystroke instructions); the ability to recordprograms or data on magnetic cards; a pausefeature that opens the keyboard up for userinput during a running program; and a smartcard reader.

Smart Card Reader

One of the HP-67's most interestingfeatures is its "smart" card reader. When acard is fed into the unit, the reader beginsaccepting 28 byte blocks of data from thecards. The first block tells the calculator ifthe card being read is a program card (whichmeans the remaining bytes are to be readinto program memory), or if the card con-tains numerical data that must be fed intothe data registers. The card, if it is a programcard, will also set the display mode (fixed,scientific, or engineering, zero through nineplaces showing), the trigonometry mode(degrees, radians or gradians) and thecalculator's four user flags (on or off). If side2 of the card (containing steps 113 through224) is fed into the reader first, they will beplaced in the correct position, just as if side1 had been fed in first (containing steps 1through 112). When a card like this exists(that is to say, a program is recorded withmore than 112 steps, or more than one sideof the card), the calculator displays the word"Crd" as a prompt to the user that thesecond side of the card is required.

The same holds true for the data card.Side 1 contains the contents of the 16 pri-mary registers. If data is also present in thesecondary ten registers, the user is againprompted with "Crd." The contents of these

112 June 1978 ©BYTE Publications In

registers are contained on the second side ofthe data card.

A card may also contain data on one sideand a program on the other. By placing dataon side 1 and using a clever trick, the usercan also get "Crd" when reading in one ofthese "half and half" cards. The card readermotor is under firmware control and will notswitch on with a card present in the slot, if aprogram is running. However, the user doeshave the keyboard option of merging pro-grams and data, or just feeding in 112 stepsof program, under software control. Thus,with a 112 step card in the slot and a 224step program running, all the user need do inorder to feed in (overlay paging) those next112 steps is to call for the keyboard activepause, which will cause the card reader toturn on and feed in that next card. Without

any user intervention the HP-97 or HP-67. can run 336 steps of program automatically.

The Active Pause

Another powerful feature of these cal-culators is the "active pause" feature. Pausegives the user the ability to momentarilystop a running program and display theanswer currently on the screen for onesecond or so. It also unlocks the keyboardfor user use and accepts any cards fed in atthis point.

Normally, pressing any key on an HP pro-grammable calculator causes the program tohalt immediately. This is not the case duringthe pause feature. When pausing, any key,including one of the ten user definable labelkeys, can be pressed and that function willbe carried out. After this the pause will be

Photo 2: The Hewlett-Packard HP-97 program-mable desk top calculatorwith printer. (Photo cour-tesy Hewlett-Packard Co.)

|unc 1978©BYTE Publications Inc 113

extended an additional second, and the pro-gram will then continue. If a user definablekey is pressed, that program is called as asubroutine (three levels of subroutining areavailable on the HP-97 and HP-67), and, ifthat subroutine ends with the "RTN"(return) command, program control isreturned to the original pausing point in themain routine.

Data Entry Flag

In addition to being a general purpose,test clearable flag, the fourth flag (FLG 3)is also a data entry flag. When any of thedigit keys is pressed, flag 3 switches to theon state. Thus the program, if so written,can sense the input of data, much like test-ing the status register on a full blown micro-computer, for keyboard input.

With this flag the user can define the tenkeys for more than one function. A simple

Listing 1: Pinball Wizard, a game for the Hewlett-Packard HP-67 and HP-97programmable calculators.

STEP

KEY ENTRY

KEY CODE

COMMENTS

STEP

KEY ENTRY

KEY CODE

COMMENTS

001

f FRAC

16 44

NOTE: * indi-cates the loca-tion of a labeladdress.

R*

-3l

f T

16-24

DSP 0

-63 00

X I Y

-41

RTN

24

f x=o?

16-43

060 *

LBL B

21 12

+

-55

RCL 1

36 01

f FRAC

16 44

f X=0?

16-43

STO E

35 15

GTO f a

2 2 16 11

5

05

1

01

0

00

STO - 1

35-45 01

010

STO B

35 12

_

-45

1

01

PRINT X

-14

0

00

0

00

STO A

35 11

STO 0

36 00

X2

53

070

5

05

STO C

35 13

STO 3

35 03

CLX

-51

*

LBL f b

21 16 12

STO 0

35 00

f CLF 0

16 22 00

STO 1

35 01

DSP 0

-63 00

STO 2

35 02

3

03

020

GTO f a

22 16 11

STO 7

35 07

*

LBL f e

21 16 15

EEX

-23

RCL E

36 15

3

03

9

09

STO 6

35 06

9

09

080 *

LBL f c

16 21 13

7

07

f CLF 3

16 22 0 3

x

-35

RCL 3

36 0 3

f FRAC

16 44

f X=0?

16-43

STO E

35 15

GTO f a

22 16 11

RTN

24

f PAUSE

16 51

030 *

LBL A

21 11

f [■■? 3

16 23 03

2

02

f F? 3

16 23 03

STO + 1

35-55 01

GTO f c

2 2 16 13

-62

1

01

2

02

090

STO - 3

15-45 03

5

05

DSP 1

-63 01

STO - 2

35-45 02

X > t

-41

RCL 1

36 01

*

LBL f d

21 16 14

PRINT X

-14

GSi! f e

23 16 15

*

LBL f a

21 16 11

1

01

040

2

02

3

0?

CHS

-22

-M

STO I

35 46

f INT

16 34

RCL 0

36 00

3

03

5

05

100

_

-45

EEX

-23

f X=Y?

16-3 3

4

04

GTO f d

22 16 14

i

-24

f X>0?

16-44

f INT

16 34

GTO E

22 15

STO + 1

35-55 01

f PAUSE

16 51

050

RCL 0

36 00

f X=0?

16-43

f PAUSE

16 51

GTO 0

22 00

22 45

f F? 3

16 2 3 03

*

LBL C

21 13

f F? 3

if, ?3 m

no

GTO 0

2 2 00

RCL 2

36 02

CHS

-22

f PAUSE

16 51

f K/Y?

16-32

RFfil^TPPjq

0

score

games

2

$$$

3balls

■:

5

G

bonus

targets

B

9

SO

Si

S2

S3

S4

S5

S6

S7

SB

S9

A

10 (constant)

150 (constant)

C

100 (constant)

D

E

seed

I

used

example is the programming of the formuladistance=rate x time. Each of three keys canaccept data input if the third flag is on; ifthe third flag is off, the key just pressed cancalculate the unknown variable. This featureis indispensible when writing games.

Other Features

Naturally the user has the ability tomanually or automatically record data orprograms on the 1 by 7 cm program cards.A write protect feature is available on thecards by clipping off the corners.

The HP-97 comes with its own built inthermal printer, and can print out thedisplayed value manually or during a runningprogram without halting it. Because of the7 level key buffer, a single print commandwill not even slow down the runningprogram. Of course, the buffer works in themanual mode as well. The HP-97 can also listthe contents of the 4 level Reverse PolishNotation (RPN) stack and give a completeprogram listing with line number,mnemonics, and an on and off switchablekey code as well. There is even a trace modeof operation for program debugging or forkeeping a detailed record of a manual opera-tion. A "Normal" position is also availableto keep a record of aM numbers entered dur-ing a manual problem along with all the keymnemonics, but without the final answer, incase the user might want just a keystrokerecord of the steps taken.

The HP-67 is the pocket version of theHP-97. All the functions of the HP-97 areduplicated on the HP-67, including theprint features. When a program with printingcommands is run on some calculators, thecommands are skipped over as though theywere NOP when no printer is available. Butin the same situation the HP-67 will pausefor 5 seconds and blink the decimal pointto show that a print statement is beingexecuted. At this point the user can eitherstop the program and hand copy the answerdisplayed or just let the program run, since5 seconds is usually enough time to get theanswer written.

Although of no use on the HP-67, thepaper spacing key is provided so that fullcontrol is possible when a HP-67 program isrun on an HP-97.

Both machines come with huge manualscontaining some of the clearest, mostdetailed documentation in the program-mable calculator market. A standard "PAC"of blank and prerecorded program cards isalso provided. These prerecorded cards coverdozens of various applications and includetheir own manual of several dozen moredetailed pages. The latter gives programming

114

June 1978©BYTE Publications Inc

tips and lists techniques about how certainof the prerecorded cards were written.

As with all of Hewlett-Packard's cal-culators, the units run on rechargablenickel cadmium batteries, or from ACthrough an adapter that recharges thebatteries whether the machine is in use ornot. A carrying case is also standard withthe machines.

For all owners who join, an extensiveusers' library of contributed programs isavailable. A user can send a favorite brain-child and get free programs and blank mag-netic cards in exchange. Even for those whodo not write programs the library is of greatimportance, since dozens of widely differentprogramming areas are covered.

HP-65, 67 and 97 owners receive freeissues of Keynotes, a newsletter edited byHenry Horn. Keynotes keeps the user upto date about all the changes or correctionsto the several PACs of preprogrammedcards available, as well as listing someof the newer programs submitted betweenlibrary catalog updates.

Unsupported Features

As with the HP-65 (and later the TexasInstruments' SR-52), HP-67 and 97 usershave managed to locate and use quite anumber of features that Hewlett Packardhad not originally intended to document.

Through the efforts of Louis Cargile, amember of PPC, an independently run users'group, the limited alphanumerics of themachines (both can form: r, C, o, d, E),have been brought under user controlalong with the ability to view internalregisters, create moving marquee type dis-plays, animation and dozens of otheringenious outputs. Even the hexadecimalrepresentations for all the internal codeshave been mapped and printed in PPCJournal, the newsletter of PPC. These codesinclude the six unused codes, formallyunavailable to the user. (The HP-97 and 67use 8 bit instructions, but only a total of250 different commands, thus leaving sixunused.)

One clever program by Cargile is called"Ida/Gerald/Ella." Through the use of analphabetic overlay of the keys it allows theuser to spell out mathematical functions andcommands to the units and carry on a run-ning dialogue with them.

Example Program

Of course, the proof of the ability ofthese machines lies in how intricate aprogram can be run on them. I offer a ver-sion of a program I wrote, called "PinballWizard," which duplicates many of thefeatures on a standard pinball machine

including dual flipper action, out holebonus, and even an optional tilt feature forthe wizards among you. It is playable oneither the HP-67 or 97, but the keystrokesand codes shown in the program listing cor-respond to those of the HP-97. They canall be converted over to the HP-67 by usingthe manual's back pages, which list thevarious keystroke differences between themachines for example, the key sequence:

f (a shift key) followed by FRAC (frac-tional truncation), will be converted to g

frac on the 67.As always, a card recorded on the 97 willshow the corrected codes when read into a67, and vice versa.

This article by no means explores all theintricate and complex programming cap-abilities of the HP-67 and HP-97, but I hopethe reader now has a better idea of thesophistication these desk top wonders haveto offer.

Listing J, continued:

Note: PPC (not affiliatedwith the Hewlett-PackardCompany) is an indepen-dently run users' groupstarted for and by users ofHewlett-Packard program-mable calculators. It is thelargest calculator club inthe world, with over 2500members worldwide. Theaddress is: PPC, Richard JNelson, editor, PPCJournal, 2541 W CamdenPI, Santa Ana CA 92704.

STEP

KEY ENTRY

KEY CODE

COMMENTS

STEP

KEY ENTRY

KEY CODE

COMMENTS

GTO 0

22 00

f PAUSE

16 51

iro

f PATTER

16 M

CHS

-22

GTO f d

22 16 14

f Xj^Y

16-32

*

LBL 1

21 01

GTO f d

22 16 14

f F? 0

16 -23 00

GSB f g

23 16 15

GTO 1

22 01

3

03

f STF 0

16 21 00

1?0

-35

DSP 9

-63 09

f INT

16 34

RCL A

36 11

f X=0?

16-43

GTO D

22 14

GTO f b

22 16 12

*

LBL 1

21 01

GTO f d

22 16 14

180

DSP 1

-63 01

*

LBL E

21 15

f CLF 0

16 22 00

STO I

35 46

RCL A

3r. n

GTO (i)

22 45

GTO D

22 14

*

LBL 0

21 00

*

LBL 3

21 03

B

08

RCL C

36 13

■ 30

CHS

-22

RCL A

36 11

sto r

35 46

GTO 3

22 03

RCL 0

36 00

*

LBL 4

21 04

RCL 6

:-6 06

GTO 0

22 00

190

2

02

1

01

5

05

STO + .1

35-55 03

*

LBL 3

21 03

DSP 0

-63 00

GSB f e

2 3 16 15

GTO f c

22 16 13

X

-35

*

LBL 0

21 16

1

01

140

1

01

+

-55

f f? o

f INT

16 34

2

02

X

-35

STO X 6

35-35 06

GTO 9

22 09

RCL 0

36 00

200 *

LBL 5

21 05

f PAUSL-:

16 51

RCL B

36 12

EEX

-23

GTO 9

22 09

*

LBL 2

21 02

STO - 6

35-45 06

*

LBL 6

21 06

STO +■ 0

33-55 00

EEX

-23

150

3

03

f PAUSE

16 51

STO + 6

35-55 06

RCL 6

36 06

RCL C

36 13

f X?f0?

16-42

GTO 9

22 09

GTO (i)

22 45

210 *

LBL 7

21 07

R *

-31

RCL A

36 11

f PAUSE

16 51

f DR7, m

16 25 45

GTO f b

22 16 12

GTO 9

2 2 09

*

LBL 9

21 09

1

f F? 0

16 23 00

STO 7

35 07

160

RCL A

36 11

1

01

f F? 0

16 23 00

STO + 3

15-55 0.1

X

-35

RCL C

36 13

*

LBL D

21 14

GTO 9

22 09

STO + 0

35-55 00

220 *

LBL 8

21 08

RCT, T

36 46

GTO D

22 14

-24

+

-55

LABELS

FLAGS

SET STATUS

A

25C

B

CREDIT

C

RCL S

0

E

used

0SPECIAL

FLAGS TRIG DISP

used

used

used

used

rnd# gener

1

ON OFFODE1 D 63

|3 □ Ki

DEG EGRAD 0RAD □

FIX E

SCI D

eng an o

tut hole

1 SPECIAL

roll over

3 ,thumpers

spin, gate

2

Tcick out

bonus adv.

drop tarq.

slibq-shotj

9

used

3

used

June 19780BYTE Publications Inc 115

Figure I: Model pinballmachine layout used In thegame of Pinball Wizard(see listings 7 and 2).

Pinball Wizard:

A Game for the HP-67 and HP-97

This program duplicates the play ofstandard pinball machines including featureslike out hole bonus points, "Special" forhigher scoring, two thumper-bumpers, aspinner gate, three drop targets for a freeball, bonus advance roll' overs, kick outholes, two flippers, and a tilt option forputting the ball into play in two out of threechances. The program is meant to be leftrunning at all times, with all input from the

ENTERf

EACH50,000 - I GAME

OUT HOLE: 0

OUT HOLE WITH TILT OPTION: -2

Y

user occuring during the active keyboardpause feature of the HP-67 or HP-97.

There are eight different scoring deviceson the play field (see figure 1) and eachdevice is given an identification number.When a score is made on a device, the dis-play pauses twice, showing the amount ofpoints just made to the left of the decimalpoint, and the device identification numberto the right of the decimal point. Thescore to the left of the point is added to theplayer's total score, which will be displayedat the end of each round of play. Thevarious devices are:

Device #1: Consists of two star roll overs(buttons) on the play field which, when hit,will add ten points to the player's score andswitch on the "Special" scoring (which isindicated by turning on all the trailing zeroesafter the device ID number). When thisoccurs, all devices so listed will score tentimes higher than normal. Hitting device#1 repeatedly will alternately switch theSpecial scoring on and off.

Device #2: Consists of two top roll overlanes which score either 100 (or 1000 pointsif Special is lit), and advance the out holebonus by 1000 points.

Device #3: Consists of two thumper (jet)bumpers. Each scores 100 points (or 1000when Special is lit) whenever the "ball"strikes them. The ball can bounce be-tween them up to ten times, so scoresfrom 100 to 1000 (1000 to 10,000) canbe made.

Device #4: This is a spinner gate that willscore 50 (or 500 points for Special) eachtime it spins one turn. The gate can spinfrom one to 25 times.

Device #5: Consists of two kick out holeswhere the ball drops in, scores either 50(or 500 points again depending on the stateof Special), and is kicked back out.

Device #6: Consists of two bonus advanceroll over stars and functions in the samemanner as device number 2.

Device #7: Consists of three drop targets.Each time device 7 is hit, one target dropsaway and the player receives ten pointsadded to his score. On the third hit, how-ever, the player receives 100 points and iscredited with a free ball. The targets arereset to try again. Special scoring increasesthe point value by ten times.

Device #8: Consists merely of two slingshotkickers giving a score of only ten points,whether or not Special is lit.

A "0" on the display means that the ball

116 June 1978 O BYTE Publications Inc

has rolled past the flippers and throughthe out hole. At this point the player'sscore so far is shown on the display andthe out hole bonus points accumulated dur-ing the game are added onto the player'sscore, 1000 points at a time. The displaypauses for viewing each time. At the endof this scoring, the final total, is flashedonce more and the display goes back toblinking the remaining number of balls(if any) in the game. If none remain, thefinal score is flashed. If Special was litwhen the ball rolled out, the out holebonus is doubled.

To shoot a ball, the player keys thedecimal point (.) when the remaining num-ber of balls left to play is flashed on thedisplay.

Pressing key "A" adds two games tothe "credit wheel" and deducts 25<t fromthe player's cash register (no pun intended).The amount of money spent can be viewedby pressing key "C" during a pause atany time.

Pressing key "B" deducts a game fromthe credit wheel, and starts a new game.

Caveats

If a "—1" shows on the display, it meansthat the ball has reached the left flipper andrequires the user to key in a "1 " (pressingthe left flipper button) in one second or theball will roll out. Likewise, if a "—3" isdisplayed, the ball is at the right flipper, andrequires an immediate input of the digit"3" from the user, or again the ball will rollout through the out hole.

When a "—2" appears on the display, itmeans the ball will miss both flippers, butthe user has the option of keying in a "2"which effectly will "tilt" the machine, and,in two out of three cases, put the ball backin play. Be warned, however! If you shouldfail in the tilt attempt (that is, the machinehas been tilted), you lose all collected bonuspoints and the next ball is immediatelydisplayed, without a score review.

For each 50,000 points made, the playeris credited with a free game. When a scoreover 50,000 is made, please refrain frompressing the "A" key.

Special note: If, on the first ball, beforeany score is made, you should lose the ball,it will be returned to you for reshooting,as in most pinball machines. (A failure ata tilt will not return the ball, however.)

Example of Play:

• Initialize game by inputting a seednumber such that 0<seed<1. For thisexample, let's use 0.1 541790869.

• Press: RTN R/S Display will flash "0."

• Obtain credit of two games and spendone quarter: press A . (A "2" will bedisplayed, confirming a credit of two games.)

• Start first game: press B . (A "1" isdisplayed to show that there is one gameremaining. Next, 5 is flashed on the displayto show that there are five balls left toshoot.)

• Shoot first ball: press • . See displayed:

50.5 (50 points on a kick out

hole)10.10000000 (10 points and Special is

on)1000.60000000 (device 6 advances bonus

and gives player 1000

points)-2.00000000 (a tilt option has come

up)

Try tilting the machine by inputting a 2from the keyboard during the pausewindow. A flashing 4 will be displayed toshow that there are four balls remaining toshoot. The machine was tilted and allbonus points were lost.

You can continue to play out this gamein the same manner. Good luck."

(Note: Pinball Wizard is re-printed with the permission ofPPC.)

Listing 2: User instructionsfor Pinball Wizard.

STEP1

INSTRUCTIONS

Enter program

Input seed (s) such that 0<(s)<l

To obtain credit of 2 additional games (and

spend 25C) :

The number printed/paused, will show the

number of games the player has credit for.

To start one game (which is deducted from the

credit register):

The first number printed/paused will be the

remaining games left. The next number flashed

jill be the remaining balls left to shoot.

To shoot current ball, displayed, during a 1

second pause 'window':

Snoring heoins as descrihed in the program

description on the previous pages.

-1' is displayed, to use the left flipper

during a 1 second pause 'window', input:

when '-T is displayed. to use the right flipper

during a 1 second pause 'window', input:

is displayed, to attempt to 'tilt'

the machine and chance putting the 'ball'

back in play, input:

If the tilt was successful, the scoring will

continue. If the machine 'tilted', the

remaining number of balls will be flashed

(if any) or the final score will be flash-

ed, if the game is over.

To shoot any remaining balls, go to step 5.

If no balls remain, to start a new game, go to

step 4.

If no games remain on the 'credit wheel', go

to step t.

-Indicates a printed number, on the 97 or a

number paused for 5 seconds on the 67.

-Indicates a number flashed (paused for 1 sec.)

INPUTDATA/UNITS

R/S

OUTPUTDATA/UNITS

)une 1978 ID BYTE Publications Inc 117

Gccfc Reviews

Z-80 Programming Manual (publication

number MK78515)

MOSTEK

Carrollton TX 75006

300 pages

$7.50

Although much has been published aboutthe differences between the Z-80 and the8080, the Z-80 Programming Manual is thefirst reference I have found that gives adetailed description of all the Z-80 instruc-tions. The bulk of the book consists of oneor two pages of description for each instruc-tion. The preface accurately notes that thisbook is for those with some programmingexperience. It will not teach you when touse a certain instruction; rather it will con-firm exactly what an instruction does.

When this manual arrived I was strugglingto use the block search instruction for thefirst time. The detailed explanation of theinstruction sequence and a detailed exampleare a far cry from the terse description in

the Z-80 Technical Manual. In contrast, theexplicitness of MOSTEK's programmingmanual continues to the level of trivialityrequired to work at machine level coding.One note points out that the instruction"EX AF, AF' " does indeed mean exchangeregisters A and F with registers A' and F\MOSTEK states that this manual is the stan-dard for Z-80 assembly language.

There is no description of hardwareother than a brief outline of the archi-tecture. The printing is only of fair qualityand the book is not an eye catcher. How-ever, for those programming in an isolatedenvironment, with no one nearby to quibbleon fine points, this book will prove to be auseful source.

If it is not available at your local com-puter store, it should be available fromyour nearest MOSTEK distributor.

David Clapp

POB 111

Wellsville PA 173651

BASIC is BASIC is...

And BASIC does what it should. But if you're ready to step upfrom Beginner's All-purpose Symbolic instruction Code, lookat OPUS, the high-level 8080/Z80 language from A.S.I. ...rootsin BASIC, but designed for business applications. OPUS givesyou the capabilities you need, like extended precision, stringhandling, and easy formatting. OPUS/TWO takes up whereOPUS/ONE leaves off, allowing subroutines, overlays, andextended disc file management.

But we didn't stop there. OPUS programs and data aredirectly upward-compatible, all the way up through TEMPOS,A.S.I.'s multi-user, multi-tasking operating system.

Ask your dealer, or contact A.S.I. We'd like to tell you more.

OPUS/ONE $99.00

S.O.S $385.00

OPUS/TWO $195.00

TEMPOS $785.00

on

ADMINISTRATIVE SYSTEMS, INC."I 222 Milwaukee, Suite 102Zd=f Denver, CO 80206 (303) 321-2473

DD

ORDER A MANUAL NOW and we'll apply the pricetoward your software purchase.

OPUS User's Manual $12.50

SOS. Manual Set (includes OPUS Manual) $20.00

TEMPOS Manual Set (includes OPUS Manual) . . $20.00

MASTER CHARGE and VISA accepted.

Add $1.50 per manual (set) for shipping/handling in U.S.

118

June 19780BYTE Publications Inc

Circle 3 on inquiry card.

Motorola 6800 Microprocessor Course

Technical Training Department

Mail Stop 56-773

Motorola Semiconductor

5005 McDowell Rd

Phoenix AZ 85003

$25 (7-9 copies); $20 (more than 10)

The Motorola 6800 microprocessor courseis the 3 ring notebook used at the 3 dayseminars given by Motorola. For those ofus who don't have $400 to spend on learn-ing about the 6800 by attending the seminars,this $25 book is a reasonable alternative.

The first part of the book consists of sec-tions on number systems, the 6800 proc-essor, programmable and read only memory,the 6820 peripheral interface adapter, anda discussion of the six addressing modesused by the 6800. Following this is a sectionon assembler techniques and sections whichcontain various sample programs. This partof the manual, along with the 6800 program-ming manual, should get you up to speedon 6800 assembly language programming

if you have background in another assemblylanguage.

The remainder of the manual is con-cerned with hardware design. There is asection on system configuration followed bythe data sheets on all the 6800 familychips, some other integrated circuits usedin most systems, and a copy of the M6800EXORciser users guide. Also included isan M6800 reference card and a pad ofgraph paper.

Who should buy this book? If you areseriously looking at a 6800 system or havea system and want to start assembly lan-guage work with it, this book contains alot of good information. Also, if you plan todo your own hardware design, this bookwould be very helpful. Those people whoalready own a SwTPC system have most ofthis information in the documentationpackage which comes with the system.

Phil Hughes

POB 2847

Olympia WA 98507"

FASTEST KIT IN TOWN!

Just pliers and screwdriver... no solderingplug it in and turn it on!

one at your local computer store.

Hazeltine Puts Performance Into Economy Terminals.

Hazeltine

w

Hazeltine Corporation, Greenlawn, N.Y. 11740

Circle 156 on inquiry card.

June 1978 ©BYTE Publications Inc 119

•*•

The

GENERAL £f

IS COMING

The Computer Mart of Massachusetts proudly announ-ces the advent of a major new microcomputor system:the General from Technical Design Laboratories.

The General is a complete floppy disk - based system with a built inCRT. keyboard, and plenty of RAM and ROM memory. It comes fullyassembled, tested and burned in, with all components in a singlecabinet.

The General is a general purpose programming system withtop-ranking hardware and software...at an affordable price. In fact, ithas the best price/performance ratio of any disk-based system on themarket.

To assure a steady supply for our customers, the Computer Mart haspurchased a significant portion of TDL's planned production. However,we expect these units to sell very fast, so place your order early forearly delivery. We are making the General available for mail order, andhave a special Buyer Protection Plan to help guarantee satisfaction forour mail order customers.

PRELIMINARY FEATURES ( PARTIAL LISTING):COST: $ 3500 (Wrox.)

SPECIAL INTRODUCTORY OFFER: 5% off for pre-paidorders placed before August 15, 1978

DELIVERY: First units...August 1, 1978

HARDWARE:

• 4MHz Z-80A CPU

• 32K RAM memory

• 80x25 upper/lower case video with high resolution graphics

• 12" built in high resolution video monitor

• one floppy disk - capacity 350,000 bytes (2nd disk optional)

• one serial port, two parallel ports

• high guality keyboard with cursor controls, numeric pad and functionkeys

SOFTWARE:

• TDL's new disk BASIC with extensive data file handling

• TDL's new WORD PROCESSOR with full screen editing

• Optional: assembler, editor.debugger etc.

PERIPHERAL SUPPORT:

• low cost dot matrix printer

• X,Y Plotter

• Diablo Hytype II printer

FOR MORE DETAILS: on the General, the special introductory offer,and our Buyer Protection Plan, contact:

Computer Mart of Massachusetts

1097 Lexington St., Waltham Mass., 02154

(617) 899-4540

"We carry the largest selection of microcomputer systems of anycomputer retailer in New England."

Continued from page 6

tables and reverse Polish operand notationfor use on his personal computers. What sur-prised me to no end, though, was when Iheard from him words to the effect that,"With this language we've developed no onewould really ever need more than 16 K bytesof memory."

It sounded vaguely familiar, as if the engi-neer's statement had merely been updatedby a hexadecimal order of magnitude. (Ofcourse the particular system involved did usea floppy disk secondary storage medium, sothe memory limit of 16 K obviously appliedonly to resident capacity.)

Reflecting on both of these incidents, itis obvious that memory as a resource has be-come quite inexpensive yet people do notfully realize quite how inexpensive it hasreally become. Both points of view are in asense equally valid, but based upon an eco-nomic impression formed when memorywas dear and had to be economized muchmore than is currently the case.

Ten years ago people were still seriouslytalking about the expense of semiconductormemory relative to the existing core mem-ory technology. Would semiconductor mem-ory really catch on? Could it be made forthe same price of core? Core memory, as atechnology, has in many respects gone theway of the buggy whips in the automobileera. Except for the limited contexts in whichits nonvolatility is useful, I would be sur-prised to find any engineer seriously con-sidering it for a new design in view of thecost savings to be attained by using semicon-ductor memory parts. Semiconductor mem-ory is basically a mass production item bycomparison with core. The number ofdelicate manual operations required is inde-pendent of the number of bits for the mostpart, depending only on the number of pinsin the package; for core memory, virtuallyevery bit required a manual operation ofsome form during assembly by stringingcores on wires in a complicated braidedpattern. The mass production of memoryusing silicon technology has changed thewhole attitude which is appropriate towardmemory as a system resource.

In short the era of memory riches is nowupon us. All it takes now to add 16 K bytesof dynamic memory to a system is eightintegrated circuits at a price of about $50per circuit in small quantities, and in anotheryear the prices will be even lower as theparts progress further on the "learning

120

June 1978 ©BYTE Publications Inc

Circle 72 on inquiry card.

curve" of semiconductor manufacturers. Wefind the single board microcomputer of con-temporary "state of the art" design suppliesenough sockets (both for read only and forvolatile memory) to completely fill addressspace in a typical 8 bit microprocessor'sdesign. And the trend toward lower cost willcontinue, of course, as the technology of the64 K. bit memory chip approaches market-ability.

Reflecting this change in costs, the newermicroprocessor designs are taking into ac-count the need for additional memory ad-dress space so that more memory than 64 Kbytes can be employed. The second genera-tion 6800, 6502, 8080 and Z-80 machinesare proving easy to saturate now that per-sonal computers are using these processors asgeneral purpose machines. As a result of thissaturation, we find, for example, that thenew Intel 8086 design is capable of address-ing 20 bits worth of memory address space(more than one million bytes). As wasstrongly hinted at a recent IEEE Compconsession on microprocessor architecture, the

new Zilog Z8000 may have some 23 bitsworth of address space in its radical newdesign, allowing some eight million bytes ofmemory if one cares to implement it.

By this time, three years from now, I canalmost expect the $50 memory chip to have64 K bits capacity. The personal computerof 1981 and 1982 will have one processor,one video display and keyboard interfacechip, one floppy disk controller chip, eight64 K memory chips, and one read onlymemory chip with a kernel of systems soft-ware including a P-code interpreter. Basedon information from various manufacturers,we can expect this dual minifloppy disk sys-tem with 64 K memory still to retail ataround $2000 continuing the deflationarygrowth of the personal computer field. Witha total of only about 12 integrated circuits,the electronics will certainly be simpleenough. And returning to the theme whichstarted this commentary, if you have 64 Kavailable, I guarantee that as a user yourprograms and data will expand to fill theavailable memory."

THE MICRO THAT DWARFSTHE COMPETITION

PASCAL

Here at last isyour chance to seeand operate a fullPASCAL compiler/interpreter working Iwith on 8085 CPU. ^

• Full language

implementation

• Fast compiler (750 Ipm)

• Powerful debugging tools

THE PROGRAMMERS WORKBENCH!!!

NORTHWEST

MICROCOMPUTER

.SYSTEMS.

Main Office

121 EAST ELEVENTH AVE.

EUGENE, OREGON 97401

PHONE (500) 485-0626

See us at thePersonal ComputingFestival at N.C.C. in Anaheim!

85/P = 8085 + PASCAL

Circle 286 on inquiry card.

) unc 1978 © BYTE Publications I nc 121

Fun and Gamesfrom BITS

101 BASIC Computer Games by

David Ahl. A treasure store of games andsimulations, 101 all written in BASIC. Itcontains both a complete listing and asample run, along with a descriptivewrite-up. 256 pages, $7.50.

What to Do After You Hit Returnor PCC's First Book of ComputerGames. This is PCC's first book ofcomputer games, a compendium whichincludes descriptions of numerousgames, and listings of 37 selected BASICgames. New second edition, $8.

BITS Inc70 Main StPeterborough NH 03458

For ease in ordering, please use thecoupon on page 96, writing in the namesof the books you want. Dial your bankcard orders on the BITS toll free hotline: 1-800-258-5477

Please note that processing may exceed30 days in unusual cases.

An APL Interpreter: Further Thoughts

LanguagesForum

Tom BrightmanTexas Instruments504 Totten Pond RdWaltham MA 02154

( OTHERS J

Here is a possible solution to the problemof resolving monadic, dyadic, and reductionoperation references in Mike Wimble's article"An APL Interpreter For Microcomputers,Part 1," August 1977 BYTE, page 62. Thesubroutine MONREF has been added toperform context checking for operatorreferences. MONREF returns its third callparameter = 0 for dyadic contexts and = 1for monadic contexts.

Since most reductions are monadic, thelogic enclosed requires reductions to occurin a monadic context. However, ceiling,floor, and log reductions could be meaning-ful (and legal) in a dyadic context. They canbe implemented simply by checking forappropriate tokens at the point markedERROR Z in the figure."

LOOKUP

IS (J),

MOPTAB, Z)

LOOKUP

YES

-( DOPCHK J

(J.I.K)

YES

(J, I, K)

-f DOPCHK J

-f ERROR Y J

INVALID

REDUCTION

OPERATOR

SP(I). C-«-4

SP(I). C*-5

»1

'

SPU). P*-Z

I«-I + 1J-«—J +1

-f ERROR Z J

DYADIC

REDUCTION

REFERENCE

ro

122 June 1978©BYTE Publications Inc Circle 35 On inquiry Card.

f DOPCHK J

LOOKUP

(S(J),

DOPTAB, Z)

YES

MONREF

(I, J, K)

f MONREF J

YES

(S(J),CHARTAB, Z)

Z = 0

.YES

/ „=n \YES

\. ? yr

NO

[no

SPID.C-6SP(I).P»Z

SP(I).C«- 7SPU).P-«-S(J)

{ ERROR X J

MONADIC REFTO DYADIC OP.

w\

i

1 = 1+1J=J+I

( » )

</SP(l-l) = 9ss.

i'ES

|NO

LOOKUP

iS(J-l),

SPECTAB, K)

/ K/O \_

YES

J

1

|NO

/SP(I-I).C\S^ (1,2,3,8)/-

NO

»'

'

^\?/^

|yes

Y.-U- 0

K«— 1

J

( RETURN J

-f CARRET J

-/ ERROR 4 J

CP/Jf

IN CUSTOMER USE FOROVER ONE YEAR

Full file sort for variable length records,arbitrary length key(s). Ascending ordescending order.

Single-keyMulti-key

$95*145

Runs on 16K or larger system. Uses allavailable memory.

FILE INDEX

Produce cross-index of file namessorted alphabetically across all diskettesin a collection.

$45

To order or for more information, write

Rothenbera

MFOBMATON SYSTEMS, MC. ^V

260 Sheridan Avenue

Palo Alto, CA 94306

(415) 324-8850

Please provide your CP/M Serial #California purchasers add Sales TaxPre-paid only. Immediate delivery.

Denier inquiries invited

*CP/M is a trademark of Digital Research

Circle 31 1 on inquiry card. |unc 1978©BYTE Publications Inc 123

Circle 374 on inquiry card.

fmmmmmmmmmmmmmmmmimmmmsmmmmmm

TRS-80

SOFTWARE EXCHANGE

SOLICITING:

User prepared software in RS Basic Level I or IIREADY to LOAD.

Topics-Any that you feel would be of interest toothers.

COMPENSATION:

In descending order of preference, and generosityand ascending order of quality standards applied -services, or comissions, or cash.

APPLICATIONS:

Accepted programs are catalogued and grouped inlogical categories into volumes (60 minute tapes) forloan.

MECHANIC OF SERVICE:

• Volumes will be LENT for 3 week periods (includingtime in the mails).

Deposit $20 for each volume borrowed. Deposit re-funded, less any late charges when cassette is re-turned.

Usage Fee of $3 (not refunded) for each volumeborrowed.

Sample catalog of software upon request.

Catalog subscription $3 per year.

write: TRS-80 SOFTWARE EXCHANGE17 Briar Cliff DriveMilford, N. H. 03055

r

v

The KIM to S-100 busInterface/Motherboard

• Combines the power of the 6502 with the flexibility of

the S-100 bus

• Attaches to any unmodified KIM

• Complete interface logic and fully buffered motherboard

in one unit

• On-board regulation of power for KIM

• Eight slots of S-100 compatibility for additional RAM,

Video and I/O boards, PROM Programmers, Speechprocessors...

• Includes all parts, sockets for ICs, one 100 pin connector,

and full Assembly/Operating documentation

♦ Kit $125, Assembled $165

♦ All units shipped from stock

FORETHOUGHT PRODUCTS

P.O. Box 386-F ^

Coburg, OR 97401

J

The Importance

of Choice of Languages

I R MacCallum, Senior LecturerDept of Computer ScienceUniversity of EssexWivenhoe ParkColchester C04 3SQ ENGLAND

It is good to see that structured program-ming is permeating the field of personalcomputing. However, David Higgins(October 1977 BYTE, page 147) shouldreally know better than to reduce Dijkstra'scontribution to the art of programming toa statement that "(he) simply observed thatthe more GOTOs that were in a program, theless likely it was to run correctly."

I doubt whether the great man himselfever uttered such words. What he did say, ina celebrated letter to the editor of theCommunications of the ACM (March 1969)was that "For a number of years I havebeen familiar with the observation that thequality of programmers is a decreasingfunction of the density of GOTO statementsin the programs they produce." Please note,Mr Higgins, that with 11 GOTOs in yourBug Program, Dijkstra's remarks cast doubt,not upon the quality of your program, butupon you! There have been reams of corres-pondence around the world on the vexedquestion of GOTOs, most of which, Ibelieve, was settled by Donald Knuth inhis constructive article in the December1974 edition of ACM Computing Surveys,entitled, "Structured Programming withGOTO Statements."

To leave the matter there would ignoreDijkstra's principal contribution to the artof programming. In 1972 in a paper whichforms part of the book Structured Pro-gramming (Academic Press), he discussesat great length, and with deep insight, themethods of top down step-wise programconstruction. The principals which hedescribed, and the set of primitive controlfunctions which he advocated have had aprofound influence on modern high levelprogramming languages. What Warnier andOrr have done is simply to offer a notationfor writing down the top down step-wiseconstruction of a program. This notationis not unique. Michael Jackson's approachis similar, but his diagrams are rotatedthrough 90°.

Finally, I believe your readers shouldbe warned concerning the choice of lan-guage. David Higgins suggests that it does

124 June 1978 ©BYTE Publications In

Circle 140 on inquiry card.

Circle 73 on inquiry card.

not matter. It does. He ought to be the firstto admit that his Bug Program would havelooked far better in ALGOL or PL/I,where the use of compound statementswould have removed the necessity for hisGOTOs, and would have resulted in a pro-gram rather closer to the Warnier-Orrdiagram. When personal computers areoffered with a richer selection of languages,the "structured" programmer would do wellto select his or her language with due care."

Toward a CommonPseudocodefor Expressionof Programs

Richard Wingerter1780 Westwood AvAlliance OH 44601

I have been reading with interest the"flurry" of articles and correspondence con-cerning languages for small computers. Iwould like to pass on to readers some hintswhich I've picked up from literature thatmight be helpful in choosing a language,designing a language, or even using a language.

A large amount of work has been done incomputer language design. One of the resultsof this work is the Revised Report on theAlgorithmic Language ALGOL 68 (A vanWijngaarden et al, Springer Verlag, NewYork, 1976). While we don't, of course,need to adopt all of their conclusions, ie:ALGOL 68, we might wish to considerseveral criteria they enumerate, especiallyif we design a language from scratch (asGlen Taylor suggested in November 1977BYTE). They accepted the following aims:

1. Completeness and clarity of descrip-tion

2. Orthogonal design

3. Security

4. Efficiency

5. Static mode checking

6. Mode independent parsing

7. Independent compilation

8. Loop optimization

9. Representations made possible in aminimal character set

In other words, a computer languageshould be simple and clear (1). It should be

We speak yourlanguage

And we're giving you what you want.

• a comprehensive product line. Hardware, assembled orkits, and software from major manufacturers. Plus books andcurrent literature. Financing available.

• a trained, enthusiastic staff. We'll help you choose ordesign the system that's right for you. No high pressure here.

• service when you need it. We won't sell you somethingwe can't keep running.^r^

• a brand new facilityin Pennsylvania.We'll be able toserve our South Jersey-Pennsylvania customersmore efficiently now.

• a bigger, better NewJersey store. We'veenlarged our showroomin Iselin. Now there aremore displays you cantry out. There's moreroom to stock theproducts you need.

E3

The Microcomputer People:^

Computer Mart of New JerseyComputer Mart of Pennsylvania

New Jersey Store

501 Route 27Iselin. NJ 08830201-283-0600rue Sat. 10:00-6:00Tue & Thur. til 9:00

Pennsylvania Store

550 DeKalb Pike

King of Prussia, PA 19406

215-265-2580

Tue.-Thur. 11:00-9:00

Fri. & Sat. 10:00-6:00

(our only locations)

IDS MODEL 60

Our new Model 60 packs inthe most testing capabilitiesper dollar cost. Pinpoints the source of trouble be-tween the MODEM and TERMINAL. Provides accessto all 25 lines of the EIA RS 232 interface. Has 12monitoring LED's plus two voltage-sensing LED's. 24miniature switches allow isolated testing and observa-tion of all signals. Mini-jumpers included forcrosspatching and signal monitoring. Sturdy 10 oz.

ca^e^and'is^ba^0 P*"^NATIONALpowered. Immediate [lyjj SCIENCES, INC.

delivery. AOVANCED TECHNIQUES incata communications

100 Nashua St.. Prov.. R.I. 02904. Tel. (401) 274-5100. TWX 710-381-0285EXPORT: EMEC, BOX 1285, HALLANDALE, FLORIDA 33009

Circle 181 on inquiry card.

|une 1978 O BYTE Publicalions Inc 125

Circle 91 on inquiry card.

LSI-11 TIME

It's TIME you brought your LSI-11 up to DATE TIME and

DATE, two important parameters in the computer world, areavailable to your LSI-11 on one DUAL SIZE BOARD. Whenrequested, the TCU-50D will present you with the date (monthand day), time (hour and minutes), and seconds. Turn yourcomputer off and forget about the time — your battery sup-ported TCU-50D won't, not for 3 months anyway. The correctdate and time will be there when you power up.

The TCU-50D is shipped preset to your local time, but can be setto any time you want by a simple software routine.

AT $295YOU CANT AFFORD TO IGNORE TIME

Time is only one way we can help you upgrade your LSI-11 orPDP-11 system. We'd also like to tell you about the others. Socontact Digital Pathways if you're into -11'*, We are too.

DIGITAL PrfTHWrtW IMC.

4151 Middlefield Road • Palo Alto,California 94306 • Telephone (415) 493-5544

Personal Computer

GOMPUTEF

MOS 6502 Microprocessor Controlled

Integrated CRT, ASCII Keyboard/Cassette

Full 8K Extended BASIC in ROM

8K (Standard! to 32K RAM Expansion

Peripherals (Printer/Floppy) Available-Summer

Can be interfaced with S-100 BUS Devices

Utilizes IEEE-488 BUS for intelligent control

of Peripheral Devices

64 Built-in Graphics Char, for Games/Charts

Full File Control under Operating System

TOO MANY OTHER FEATURES TO LIST!

8K RAM

FOR ADDITIONAL INFO CALLAND REQUEST OUR PET INFOR-MATION PACKAGE!

NEECO HAS A LARGE, EVER EXPANDING LIBRARY OF PRO-GRAMS FOR THE PET. CALL AND REQUEST OUR PETLIBRARY LISTINGS«SOFTWARE AUTHORS»NEECO OFFERS25% ROYALTIES FOR ACCEPTABLE PET PROGRAMS!!!*

THE KIM1

"Computer on a Board" — Instant Delivery

• 6502 Microprocessor Controlled

• 13 Addressing Modes, Multiple Interrupts•65K Bytes Address Range

•2-MCS 6530 with 1024 Bytes ROM each, 64Bytes RAM, 15 I/O Pins, timer. Monitor andOperating Programs are in ROM.

•TTY and Cassette Interface • 23 Key Pad and6 Character LED display • 15 Bi-DirectionalTTL lines. MUCH MORE! "Attach a powersupply and enter the world of Microcomputersand the future" £r commodore

MOST MAJOR BRANDS OFCALCULA TORS TOO!

NEW ENGLAND ELECTRONICS CO.

248 Bridge Street Area Code <413'Springfield, Mass.

739-9626

'Authorized PET Sates & Service''

"Guaranteed Delivery"Schedules for all of ourPET Customers. Callfor our PET Package.

built on the smallest number of primitiveconcepts that can assure a powerful andexpressive language, and those conceptsshould not overlap or cause "side effects"when combined (2). Syntactical and logicerrors should be easy to find and shouldnot propagate through the program (3).The compilation should not result in akludge, nor should the compilation take toolong (4). As much as possible, the data"types" should allow checking duringcompilation (5), and they should not betreated differently in similar constructs (6),ie: one ought not to have "Number 1 :=Number 2" for integral values, but rather,"Move String 1 to String 2" for strings inthe same language. Furthermore, the languageshould allow procedures (routines) to becompiled separately (7). The syntax shouldallow optimization of loops (8) and shouldallow for language to operate with a minimalcharacter set (9), such as 64 characterASCII.

To these I might add that the syntaxshould suggest logical possibilities so that theprogrammer is not apt to forget to includethings. To this end, the "If.. .then . . .[else] ... ft" format is better than the limited"IF condition THEN statement" form,because in using the former, the programmeris reminded to think about the "else" possi-bility, which he might otherwise overlook.In other words, the language should supportthe programmer's thinking. [Here the token"fi" is used as an "end-if" marker. . . CH.y

It might seem, by now, that we shouldpitch all of our current languages, andpossibly give up in despair. But I don't believewe will. Most of us are saddled with "out-dated" languages with no real hope of evergetting away from them. However, it may bepossible to have the best of both worlds.

The great boon in using a "good" compu-ter language is that it permits us to thinkeasily. Since we are using, say, BASIC toprogram our computers, we tend to fall outof the habit of thinking in English and intothe habit of thinking in BASIC. But BASICis not necessarily a good language to think in.It lacks good control structures and gooddata structures. One cannot easily expresscomplex ideas with it. And yet, I must pro-gram in it and many other users probablydo, too.

Actually, I don't program In it; I program"into" it from another language, one whichis convenient to think in. And I believethat if we would think and communicatein a language or group of languages whichare easy to think in, and program in what-ever language was available, we could avoidbeing limited by our computer languages.

126

| une 1978'./BYTE Publications Inc

Circle 281 on inquiry card.

Circle 353 on inquiry card.

This would have many advantages. Thebasic ones would be that we could applythe latest techniques to our communicationlanguage much more easily than to imple-mented languages, and that we wouldn'tneed to develop any new language at all.We'd need only choose the language(s) wewish to use for thinking and communicating,and request that routines submitted forpublication be in one of them. Or we couldset criteria for the communication languageand ask that submitted routines be translatedinto some language that meets the criteria.

There would be one disadvantage to thismethod that I can foresee: it may be slowerto work out and code a routine this way.Effectively, we would have to hand translateeach procedure into whatever language wehave implemented. But I should point outthat some of this disadvantage would bemitigated by the gains due to faster design,less debugging, and easier communication ofroutines. My experience is that it may beworth the trouble, but this is no guaranteethat everyone would find it so. I might notethat "into" programming is recommendedin its own right by Roy F Keller in "OnControl Constructs for Constructing Pro-grams" (SIGPLAN Notices, ACM SpecialInterest Group on Programming Languages,volume 12, #9, September 1977, pages 36to 44), so I am not alone.

I hope that some readers might considerthis approach, as it might be very helpful.Expecting people to throw away theirBASIC, FORTRAN, or what have you, isnot really practical, as we know from theexperience of those with larger computers.But expecting them to communicate in acommon language especially suited for thatpurpose is reasonable."

Languages Forum is afeature which is intended as aninteractive dialog about thedesign and implementation oflanguages for personal com-puting. Statements andopinions submitted to thisforum can be on any subjectrelevant to its purpose offostering discussion and com-munication among BYTEreaders on the subject of lan-guages. We ask that all corres-pondents supply their fullnames and addresses to beprinted with their commen-taries. We also ask that corres-pondents supply their tele-phone numbers, which will beprinted unless we are expli-citly asked to omit them.

the most powerful 3D software yetfor your 8080 and Z80.

• 10 projection modes, 500 lines/second

• Interfaces to any S100 display device

• Uses 8K memory

• Only $30 for Tarbell tape and documentation.(MATROX interface program included.)

Write to us for more details and a complete catalog of 8080, Z80,6800,and BASIC graphic systems.

Box 3442

0

LOGIC

Culver City, CA 90230

16K RAM

FULLY STATICINTRODUCTORY

$450 K,TPR,CE

10 SLOT MAINFRAME

TT-10. . KIT $325

10 SLOT TABLE TOP

MICROCOMPUTERS

TT-8080. . KIT $440

SYSTEM WITH 1 6K & I/O

TT-8080-S. . KIT $1050

CARD CAGE &

MOTHER BOARD

ECT-100. . KIT $100

CCMB-10. . KIT $75

WITH CONNECTORS

& GUIDES

ECT-100-F. . KIT $200

CCMB-10-F. ..KIT $125

CPU'S, MEMORY

MOTHER BOARDS

PROTOTYPING BOARDS

EXTENDER CARDS

POWER SUPPLIES

SHIPPING EXTRA

DEALER INQUIRIES INVITED

ELECTRONS CONTROL TECHNOLOGY

FACTORY ADDRESS:763 RAMSEY AVENUEHILLSIDE, N. J. 07205

MAILING ADDRESS:

P. O. BOX 6

UNION, N. J. 07083

,1IIIIIIIIII

Circle 1 20 on inquiry card.

June 1978©BYTE Publications Inc 127

Circle 319 on inquiry card.

FORTRAN IV

THE MOST EXTENSIVE FORTRANSYSTEM AVAILABLE, RUNNING ON THE Z-80

* ANSI Standard Fortran IV Compiler

— Byte, Word, Real, Double, Complex, andString data types and operations.

— Produces efficient and compact code.

— Compiles up to 600 statements per minute.

— Expressions in Do loops, output lists, etc.

* Linking Loader

— Merges, links, and locates Fortran and As-sembler modules.

— Searches libraries for needed modules.

* Runtime Libraries

— ANSI standard formatter.

— All standard mathematical functions.

— Sequential, Random and Blocked disk I/O.

— Supports CP/M„ and user-defined devices.

(3)

AVAILABLE NOW!! $349

OEM Inquiries invited.

/m@lll /y/tem/

services; inc.

P.O. Box 2400 Stn. A Champaign, Illinois 61820

CP/M is a Trademark of Digital Research Group.

128

COMPUTE YOUR

SAVINGS

SOLID STATE MUSIC MB-7 16K static RAM memoryboard, kit —list: $449 OUR CASH PRICE: 96 375

TDL 16K static RAM memory board, assembledand tested — list $699 OUR CASH PRICE: $ 399

TDL 32K dynamic RAM memory board, assembledand tested — list: $869 OUR CASH PRICE: 33 699

TOP OF THE LINE COMPUTER

TDL XITAN ALPHA 4, factory assembled and testedincl. Z80A CPU, 16K static RAM, systemmonitor board [SMB-II], video display board25x80 [VDB], Interface I, and full Software Package"A" on cassettes featuring 12K BASIC — list: $2149 CASH PRICE: $ 1649

Quantities limited. Shipping and insurance extra. Prices quotedbased upon cash purchases.

bus S-ID0,inc.

ADDRESS 7 WHITE PLACE

CLARK, NJ 07066INTERFACE 201 -382-1 31 8

June 1978©BYTE Publications Inc Circle 312 on inquiry card.

Technical

Fcpum

Big Disks

Must Be Managed

Properly

Charles A Rovira2250 Grand Blvd #21Montreal Quebec H4B 2W9CANADA

As a data processing professional, I viewthe announcement of the new 10 to 100megabyte disk drive memory sub-systems{Electronics, January 19 1978, volume 5,number 2, page 33) with mixed feelings.

This development will at last put trueworkable mass storage within the reach ofcountless users who could not otherwiseavail themselves of this much needed capa-city. The believably low $2000 price taggenerates an enormous market potential.These new drives may cause an even largerrevolution in data processing than theintroduction of microprocessors; a revo-lution for the industry, by the eliminationof high price tags and relief of softwareheadaches caused by too much data and toolittle storage. Of course, the users benefitas a whole slew of new applications anddata management tools present themselvesat an affordable price.

A computer system that is easy to selland easy to program is a software house'sor original equipment manufacturer's dream.There is however a danger that this dreamwill turn a nightmare. My concern is basedon two major points.

First are the limitations inherent in afixed disk system. When a disk fails (as all

Circle 405 on inquiry card.

do at some point, either through hardwarefatigue or software and operator errors)there arises a problem of data recuperation.In removable disk systems, external backupscan be made and remounted. Data lossis limited to entries made since the backup'screation. Start-up time is the time it takes toget the disk back on the drive and running.A fixed disk system calls for backup onto anexternal device, which can be a very slowprocess, or by 100 percent redundancy(namely, buying two drives and using onefor backup purposes).

Due to the impracticality of copyingten to 100 megabytes of data on disketteor cassette, the only practical solution isredundancy. The problem is that the lowcost of these drives will open whole newmarkets of unsophisticated users who willnot see the need for buying two drivesuntil they call to cancel orders or suebecause they have lost valuable data. No-body needs this kind of aggravation. Inorder to protect both the users and theindustry, • I think such drives should bedesigned with at least a backup surface fordata recovery.

Second, a 100 megabyte drive is a 100megabyte drive and the software must betreated as such. Inadequate disk manage-ment systems are inexcusable, since thenecessary software tools already exist. Thesedevices will have to be provided with theproper routines (ie: dynamic disk allocation,catalogs and catalog path file allocation,binary files, spool and random access files,hash/sequential and multikey indexed/sequential files (with keys in separate files)record oriented IO and cylindrical allo-cations in multisurface systems).

The most sensible solution is to take thestandard routines and some diagnosticroutines, put them in read only memorywith a dedicated microprocessor (therebymaking the device intelligent) and to offerthe controllers with serial, parallel and DMAinterfaces for the major bus configurations(that includes the Altair (S-100) bus). Evenif these steps triple the price of the drive,they will still result in a vast improvementover present prices. These steps also willensure the smooth and painless creationof new and lucrative markets as well asrapid acceptance by existing markets.

I hope the manufacturers will act on myrecommendations as I write this not ascriticism, but merely with a critical eye. Theonly problems which don't occur are theones that are foreseen and prevented."

2708

pPD 458tms 2716

PRAMMER III

by xybek

The Ultimate EPROM Memory BoardFor Your S100-Bus Computer

* Accommodates from 1 k to 30k of the above EPROMS, in

any combination, each addressable on any 1k (2k for2716) boundary within the board's 32k address space.

* 1k of scratch-pad RAM.

* On-board programming for all three EPROM types.

* Tri-state buffers on all address and data lines.

* Empty EPROM sockets do not require address space.

* Assembled, tested, ready to run — only $369.50

xybek

• P.O.Box4925 • Stanford,CA94305

Telephone: (408) 296-8188

aBOtaptsxxaooqgocsssxsssaosaoooao^^

RELIABILITY

QUALITY

DEPENDABILITY

ADDRESSING

PROTECT

BUFFERING

LOW POWER

WAIT STATES

QUALITY

GUARANTEE

DELIVERY

PHANTOM

TESTING

BKR5

8K STATIC RAMASSEMBLEDS-100

MEMORY DISABLE IS IMPLEMENTED VIA PHANTOM (PIN 67}

SPECIAL

INTRODUCTORY

PRICE

ASSEMBLED/TESTED

$14995 $18995

(714)992-55402555 E. CHAPMAN AVE.SUITE 604FULLERTON, CA 92631

CALIFORNIA RESIDENTS ADD 6% TAX

/DIGITAL/ JO.

Circle 291 on inquiry card.

June 1978©BYTE Publications Inc 129

Circle 357 on inquiry card.

THE PROM SETTER

> WRITE and READ EPROMs 1702A, 2704/2708

»Can be arranged to do 1702A, 2716TI or 2708, 2716TIand with a few additional parts 2716INTEL, 5204, 6834

> Plugs directly into your ALTAIR/IMSAI Computer

> No External Supplies. Your Computer does it ALL

KIT - $210ASSEMBLED - $375

N

ROM

RAM

• Operates in S-100 BUS

• 16 EPROM* sockets with own address select and up to 4waite states

• Can be wired for any EPROM (in 8/16 unit operation)1702A, 2704, 2708, 2716INTEL, 2716TI, 5204, 6834

• IK RAM independently address, takes precedence overROM

• POWER ON JUMP & RUN (Computer With/WithoutFront Panels)

*EPROMs not included

KIT - $117ASSEMBLED - $168

Delivery Less Than 60 Days

SZERLIP ENTERPRISES

1414 W. 259th St. - Harbor City, California 90710California residents please mU $% sales tax

NORTH STAR BASIC PROGRAMS

HUNDREDS SOLD, EACH SYSTEM COMPLETE ONDISKETTE READY TO RUN. WORD PROCESSING,NORTH STAR TUTORIAL I, NORTH STAR TUTORIALII (TEACHES NORTH STAR BASIC), ACCOUNTS PAY-ABLE, ACCOUNTS RECEIVABLE, PAYROLL, GENER-AL Ledger, medical-professional, billing,

SALES WITH SALES ANALYSIS AND GROSS PROFIT,INVENTORY, HISTOGRAM GENERATOR. $35.00 each.

SOFTWARE LOCATER (LOCATE, INDEX-FREE SOFT-WARE), CHECKBOOK BALANCING, BOWLING-GOLFHANDICAPPER, COIN COLLECTION INVENTORY, IM-PORTANT DOCUMENT LOCATER, BUDGET PLAN-NER, GAME DISK. $25.00 each.

IQ TESTER, COMPUTER MEMORY DIAGNOSTIC PER-SONAL FINANCE, BUSINESS FINANCE, BIORHYTHMGENERATOR, DIET PLANNER, CRYPTOGRAPHIC EN-CODER, MATH TUTOR. $15.00each.

EQUIPMENT REQUIRED, SINGLE DRIVE, 8K FREEMEMORY, PRINTER OPTIONAL.

TRS-80 LEVEL II (ON CASSETTE) STOCK MARKET ANALY-SIS, GRAPHICS, TREND LINE ANALYSIS. $15.00.

BLANK DISKETTES $3.80 (UNDER TEN ORDERED, ADD $2.00FOR SHIPPING; OVER TEN SHIPPED POSTPAID).

(OB

SOFTWARE

DEPT. 11 P. O. BOX 2528ORANGE, CA 92669

On Converting

60 Hz VDM-1s to 50 Hz

Line Current

Timothy MowchanukEditor of COM-3Senior Chemistry MasterPOB 268Niddrie 3042 AUSTRALIA

I read Guy Burkill's letter in the June1977 column of "Ask BYTE," page 60. Thefollowing is a modification to the ProcessorTechnology VDM-1 board that may proveuseful. (By the way, I have built two VDM-1boards and they both work perfectly. I canstrongly recommend them.)

Modify IC8 (93L16). Cut the landbetween pins 5 and 6, and connect pin5 to ground (pins 3 and 4 of the same ICare handy). This will alter the field andline frequencies to suit 50 Hz mainfrequencies. The video levels may be in-verted, but this can be changed using theswitches on the VDM-1. The inversion prob-lem depends on the particular TV standardand the method of input to the television.This modification will work with the PAL-Dtelevision system. It will not work withthe French television standard. (PAL-Dis the British standard.)

You may wish to publish this informationfor your foreign readers."

The Need

for Relocating Loaders

K P PielmeierAlbstr 33

D-7014 KornwestheimWGERMANY

I would like to make some suggestions.Today most machine code programs forpersonal computers are produced for fixedmemory assignment and are relocatable

130 (line 1978©BYTE Publications Inc

Circle 4 on inquiry card.

Circle 40 on inquiry card.

only after changing the source code andreassembling or recompiling. As programlibraries grow, the drawback of reassemblybecomes more and more obstructive.

It would be quite nice to have relocatablemodules, and it would be even nicer to haveone standard defined for any type ofprocessor. (There are other ways to producerelocatable modules; see Borrmann'sexcellent "Relocatability and the LongBranch," page 26, in the October 1977BYTE. This method produces programswhich are slower and a little longer.) Frommy experience with IBM's linkage editor andloader I can say that this is a valuable tool:any translator (assembler or compiler) canproduce its code in the required format andthe code may be executed on any IBM sys-tem without change.

Of course I have a proposal at hand andI hope that it will not remain the only one,so that a satisfactory solution may befound. My suggestion is that a relocatableload module consist of four parts, whichare:

1. The code part, which contains themachine instructions and the data.This part will need some changes inrelocation.

2. The relocation directory part, whichdefines the points in the code part,which must be processed during relo-cation.

3. The entry point directory part, whichdefines the entry points in the codepart, ie: the names and the addressesof items defined in this program whichmay be referenced by other programs.

4. The external reference directory part,which defines the external referencesin the code part, ie: the names ofreferences in this program to itemsdefined in other programs.

(If the names look like IBM, this is because Itook them from there.)

I propose that each part should have thesame format: a descriptor field and the partitself. As a minimum, the descriptor fieldshould contain the identification of the partand its length.

To keep the loader program simple andsmall, I suggest that only one operation beallowed for relocation: one (and only one)constant will be added to all points desig-nated by the relocation directory. Thisconstant can be passed to the loader as aparameter and need not be defined in therelocation directory itself. To keep the

canaria Boards DO Something

ti/dnmt. inc. •

systems, inc.

Wff

frtt i it

MS*-—J

CL2400Real Time Clock

S98—Kit

$135—Assembled

—'" mini

If your system needs to know what time it is, our CL2400 isthe board for you. The present time in hours, minutes, andseconds is always available for input, and is continuouslyupdated by the highly accurate 60 Hz power line frequency.Need periodic interrupts? The CL2400 can do that, too, at anyof 6 rates. Reference manual with BASIC and assemblylanguage software examples included.

PC3200

Power Control System

PC3232 $299—Kit $360—Assm.

PC3216 $189—Kit $240—Assm.PC3202 $39.50—Kit $52—Assm.

If your system needs on/off control of lights, motors,appliances, etc., our PC3200 System components are foryou. Control boards allow one I/O port to control 32 (PC3232)or 16 (PC3216) external Power Control Units, such as thePC3202 which controls 120 VAC loads to 400 Watts. Opticallyisolated, low voltage, current-limited control lines arestandard in this growing product line.

Canada

systems, inc.

(formerly comptek)

P.O. Box 516

La Canada, CA 91011

(213) 790-7957

COMPUTERSHOPPING

FIND YOURS! — In the comprehensive in-dex of computer firms, The Computer Data Di-rectory. Contains profiles of over 600 manu-facturers, stores, distributors, publishers, andelectronic dealers. AM addresses are up-to-dateand at your finger tips! Products are cross-re-ferenced to their manufacturers. Similar to atelephone directory. Definitely a useful refer-ence source. Order yours today. All orders ship-ped on day received.

ORDER NOW!

SYSTEMS

SOFTWARE

PERIPHERALS

ACCESSORIES

EASY TO USE!

COMPUTER STORES

COMPUTER SERVICE

ELECTRONIC PARTS/SERVICE

BRAND NAME MANUFACTURERS

WHERE TO WRITE FOR BROCHURES!

□□□□□□□□

aa

MatKnufcr flarTa flirecTbry

BOX 598 •DEPT B

CLEVELAND, OHIO 44107

Circle 66 on inquiry card.

June 1978 ©BYTE Publications Inc 131

Circle 351 on inquiry card.

COMPUTER VOICE

Speech Technology voice generators operate from stored vocabularies — words,phrase, or messages of any length. Vocabularies are derived from real speech,thus preserving clarity and naturalness to a degree not obtained with othermethods of low-data-rate synthesis. Average data rates for spoken messages areless than 120 bytes per second. Typically, only 8K bytes of memory are neededfor 100 words and short phrases.

M188 is inserted into a slot in any S100 bus computer, including Z^80 systems. Only standardbus signals are used, and there is no interference with special bus assignments on somecomputers. M188 is readily adapted to Intel SBC and other buses. It operates from pro-grammed transfers of unlimited vocabulary data in computer memory or with 2-byte access tolimited vocabularies in on-board EPROMs. $395 price includes fully assembled and testedM188. with comprehensive reference manual and 95-word vocabulary on digital cassette.

M250 featuring small size and fully operating power of 150 milliwatis is ideal for instrumentsand portable equipment. M250 operates with on-board PROM-stored vocabularies. Each wordor phrase is selected by an external addressing byte and strobe. An ehd-of-message signal issupplied by the M250. Price with programmed vocabulary {up to 40 words) is $395. Optionallarger capacity PROMs hold up to 80 words for $565.

VOCABULARY LISTS / TECHNICAL INFORMATION - CONTACT:

SPEECH TECHNOLOGY CORPORATION

631 WILSHIRE BLVD. SANTA MONICA, CA 90401(213) 393-0101

UOU DIDN T KNOWiX

OAE'S new PP-2703/16PROM Programmer is theonly programmer with allthese features:

• Converts a PROM memorysocket to a table top pro-grammer: No complex inter-facing to wire—just plug itinto a 2708 memory socket*

• A short subroutine sendsdata over the address linesto program the PROM

• Programs 2 PROMS for lessthan the cost of a personal-ity module. (2708s and TMS2716s)

• Connect 2 or more in paral-lel — super for productionprogramming

• Complete with DC to DCswitching invertor and 10

*Pat's Pending

turn cermet trimmers (forprecision pulse width andamplitude alignment)

• All packaged in a handsomealuminum case

PP-2708/16 . .A & T $295.

PP-2716 (Programs Intel's2716) A & T $295.

OAE

Oliver Advanced Engineering, Inc.

676 West Wilson Avenue

Glendale, Calif. 91203

(213) 240-0080

relocation directory small, I suggest that itshould consist simply of 1 byte entries, eachof which describes the offset from the lastrelocation point to the next, with 255(=FFH) as an "advance and do nothing"indication. The relocation points must bepresented in ascending order. For the entry/external directories I will only suggest thatthey should contain the name and therelative address of each reference.

I don't think it is reasonable to adopta load module format very close to anyexternal storage medium (as is the casewith IBM's convention). It is better toseparate the task of reading into internalmemory and processing, so that a changein the external medium will not affect theprocessing part.

Unfortunately I have no knowledge ofany existing relocatable load module formatfor personal computers. I have neither atranslator program producing relocatablemodules nor a loader program.

I think that many people have similarideas, and I would like to discuss them tofind a good and widely accepted solution."

Speeding UpMIKBUG IO Routines

T W Moore

Amateur Computer Club 6800 Library

24 College Rd

Maidenhead, Berkshire SL6 6BN

ENGLAND

The Motorola MIKBUG ROM is widelyused by 6800 hackers. It contains twoentry points, E1D1 and E1AC, which canbe used by a user program as input or out-put routines; these routines use a singlebit of a PIA and the data rate timing isdetermined by software and a programmablemonostable (MC14536).

Because of the software nature of thetiming, some jitter will be introduced inthe output waveform and there will be ajitter component in the sampling point ofthe received waveform. This effectivelyresults in a maximum data rate at which

132 June 1978©BYTE Publications Inc

Circle 288 on inquiry card.

Circle 190 on inquiry card.

MIKBUG can communicate with the out-side world.

The jitter is caused by software loops inMIKBUG which wait for timeout of themonostable MC14536 but cannot quitecatch the exact trailing edge of the mono-stable output. The following loop:

E1EFE1F1

DEL

TSTBPL

2,X (7 cycles)DEL (4 cycles)

senses bit 7 of the PIA in a loop and exitswhen bit 7 is a logic "1." In practice, theprogram exits anywhere between 7 and 18machine cycles after the leading edge of thesignal into pin 7, since bit 7 is only sampledevery 11 machine cycles.

The input routine (E1AC) looks for astart bit by continually sensing bit 7 of sideA of the PIA in a short loop, jumping outinto the main routine when a logic zero isdetected indicating a start bit. The mainroutine starts the programmable monostablewhich is sensed on bit 7 of side B of the PIA.The monostable effectively times out1.5 T, where T is 1/data rate, 3.33 ms fora data rate of 300 bps. After this, the firstbit of data is sensed and rotated into theaccumulator via the carry bit. This proce-dure is repeated eight times for all eightbits separated by a delay routine (DELabove) which waits for the monostable totimeout.

The output routine works in a similarmanner but then outputs data from theaccumulator by rotating it into bit 0 ofside A of the PIA.

The effective input and output datarates are therefore determined by thetime interval between samples or programloops, and mostly dependent on the mono-stable pulse width. The actual time betweeninput samples in MIKBUG is:

T

mono

+ 28.T

cycle

IP

cycle

where Tmono is the monostable delay,TCyC|e is the 6800 machine cycle time

and

is my notation for any number

between 0 and 11.

The time between output samples is:

Tmono + 62-Tcycle + U J Tcycleexcept for the width of the start bit which is:

ol

1 mono

+ 56.T

cycle +

•T

cycle

Presenting a growing line ofprofessional quality

IMSAI/ALTAIR

* uu BOARDS

COMPATIBLE

8K BLANK RAM BOARD i,„;,.»■»„= ,„„»» $25.00

—with MEMORY PROTECT/UNPHOTECT and SELECTABLE WAIT STATES

Z-80 CPU BOARD $35.00

-will! PROVISIONS lor ONBOARD 270S and POWER ON JUMP

PR0T0B0ARD

$25.00$25.00

(new) 2708/16 EPROM BOARD

—accepts up to 16K ol 2708's or 32K of 2716 sALL BOARDS FEATURE

FULL BUFFERING on ALL DATA and ADDRESS LINES1

SOLDER MASKS and SILK SCREEN'

DIP SWITCH ADDRESSING'

GOLD EDGE CONNECTORS

PLATED THROUGH HOLES

'eiceplforPROTOBOARD

WATCH FOR OUR 16/64K DYNAMIC RAM BOARD ANDADDITIONAL BOARDS TO BE ANNOUNCED FORTHWITH.O 9

IMSAI8080 Kit

—with 22 Slot M.B.

$560.oo

PLUS 510 00 SHIPPING

er

\B

Z-80 cpu CHIP $22.00

Z-80Acpu CHIP $25.00

2708 CHIP 450 ns $12.00

PLEASE ADD J2.00 SHIPPING PER OftOffl

itu audio

PO BOX 91ITHACA, N.Y. 14850

PLEASE CALL (607) 273-3271TO ORDER OR OBTAIN TECHNICAL ASSISTANCE.OEM and quantity dltcounu available

WHAWT

A "DATA BASE MANAGER" FOR YOUR MICROCOMPUTER

Much of the untapped potential of computers lies in their ability to store "data bases" of constantlychanging information, and to permit convenient, timely access to it through a one-to-one "conversalion" with the person who needs it. Used as a "Data Base Manager," WHATSIT can support a disc-resident data base and process queries (as well as updates) in a real-time conversational mode.

APPLICATIONS

Easily imp lemon tad on a small desktop computer withat Mill* at 21K of total memory, the WHATSIT systemcan be uied in application! like these:

■ A salesperson may nead to store customer andprospect lilts, buyers' mmn and phone num-ber*, current order ttllui.

• A professional person may need to index clienttecordt, appointment schedules, or technicaldata needed lor frequent reference.

■ A contractor might want quick access id materialpncei and specification!.

• A manufacturer'! data base might include cus-tomer! and suppliers, and recent price quotationiinued ami received.

• An investor might want to keep tab! on a port-folio ol securities, with purchase data! and taxbans information.

OPERATING SIMPLICITY

In response to pidgin English "Requests.'' WHATSITcan store, index, and retrieve information about one orseveral aspects of your business, hobby, or otherapplication. You are free to intermix unrelated data ona single disc, or to "dedicate" an individual disc to eachof a variety ol applications.

Since file indexing and disc ipace allocation are per-formed automatically, the system can be used withoutlearning complex pioceduret. And lince both querieiand updates are processed within a single program,there's no need lor the inconvenience and delay ol a"menu selector." or lor manually switching from oneprogram lo another.

In contrast lo many program!. WHATSIT doai notrequire you to commit yourself in advance to parti-cular data structures, or "record formats." The filestructure is never frozen, but develops automatically toadapt to your requirement!.

DYNAMIC FILE RESTRUCTURING

Thii "dynamic roitructuring" ol the data bate takes

may inquire about any heattmy. All that's required is apidgin English "Request." such as "WHEN'S DR.JEKYLL'S APPOINTMENT?" System response time itusually a matter of seconds

Up to two headings may oe specified in a single Re-quest, a capability that makes possible versatile crossindexing within the data base.

INSTALLATION

For easy installation, the WHATSIT programs aresupplied in the widely available North Star BASIC, andcan be installed without modification on any S-100 bus(BDBO or 2 80) computer equipped with a North Stardisc system and at least 24K bytes of random accessmemory (RAM). For other disc systems or noncompatible computers, the programs would requiremodification

SPECIFICATIONSMODEL NS-3. Version 1

Hardware compatibility Any $100 Bus (8080 oi2 801 computer with one North Star disc system and24K ol RAM (random access memory).

Language North Star BASIC. Vernon 6 Release 3.

Request types: Store. Scratch. Change. Add. Spill (6types including Indexed. Selective, and Analogy), plusipecial Requests.

Response time: Normally 3 lo 10 seconds.

File capacity: 1500 to 3000 entries per disc. de-

Indexing: Every eiSubject. Tag, Object.Request length: UpEntry length: Up to

ength.

indexed by

30d

WHATSIT is available lor S75 0Q as a Ready-to-RunSystem, including three piograms on Noilhstar discand a 100-page user s manual written in nontechnicallanguage The manual may be optionally ordered loi$25 00 Besides d

lions, the nin BASIC

mplete programs listings

reprogramming.

This

arks: What

inforn

to store is automatically cron-indexed under "Subject"and "Tag" headings you designate Uiing WHATSIT'spidgin English Requests, you may add or changeheadings, as well as data, at any lime. Because thesystem maintains headings in disc storage, they may bechanged readily by the program itself.

CONVERSATIONAL QUERY CAPABILITY

B

Circle 176 on inquiry card.

INFORMATION UNLIMITED

698 W 70 So Private Rd

Hebron Ind 46341

(219) 9SB-4450

CREATIONJune 1978 © BYTE Publications Inc 133

Circle 282 on inquiry card.

NEW

TOCAS INSTRUM6NTS

CALCULATORfor theCOMPUTCRPROGRRMM6R

$59.95

It calculates and converts in hexadecimal, decimal,and octal, eliminates conversion tables and tediouslonghand methods.

$59.95 postpaid with battery pack, adapter/charger, case, and manual. 10 day return privilege.Phone orders, and bank cards accepted. Foreignorders invited. Also purchase orders from estab-lished companies. Immediate Delivery. Our toll-freecredit card order line is 1-800-521-1534Mail your order to address below.

Just say charge itl Which card?

NCE/Compumart 1250 N. Main St., Dept.BY68P.O. Box 8610 Ann Arbor, Mi. 48107 (313)994-4445

Need Hard Copy?

TRY OUR SOFT PRICES$425

Complete standalone 40 column impact dot matrix printer with a 64character ASCII set Includes power supply, casework and interfaceelectronics for connection to a mini micro processor parallel portSerial interface versions for RS232'ciin'ont loop applications start at$575 in single quantity

SEND FOR FREE LITERATURE

Box 22101

Salt Lake City, Utah 84122

(801) 364-2411

Assuming a 6800 machine cycle of1 us, there will be a peak to peak jittercomponent of 11 us between bit samples.Unfortunately this jitter component iscumulative. If we refer the sample times ofa waveform to the leading edge of the startbit, as most asynchronous devices operate,the trailing edge of the eighth bit can have apeak to peak jitter component of 88 us.Similarly, the M.IKBUG input routine cansample the eighth bit anywhere within a116 us window. These two figures are dif-ferent since MIKBUG input routine adds anextra 39 us of jitter sensing the start bit.

At low data rates, such as 300 bps, thejitter is comparatively small. If we take amaximum allowable jitter of 25 percentof data rate as a deterministic bound onreliable communications, then with a 1 juscycle time (and no clock cycle stealing),the maximum data rate at which MIKBUGwill operate without errors is 1/(4.88) *2400 bps. In practice, the jitter adds with aGanssian envelope distribution and opera-tion at 4800 bps, which for noncriticalapplications such as video displays, is quitepossible with a few errors appearing.

For more critical applications, such ascassette program storage, reducing the datarate to 1200 bps should allow enough mar-gin for jitter introduced by the rest of thesystem. In fact, MIKBUG operates veryreliably at 1200 bps and I have used it toload programs from standard cassettes suchas 8 K BASIC without any errors.

It should also be mentioned that at thesehigh external clock rates, the output datarates from MIKBUG will be different fromthe input data rate. This is because of thedifferent number of machine cycles takenin the input and output routines. In fact,the output routine produces an extra delayof 34 jus between data edges. At 1200 bpsthis represents a disparity of 4 percent be-tween input and output data rates.

A practical MIKBUG system configuredfor high speed would have say 4800 bps forvideo display output, 1200 bps for highspeed cassette and 300 bps for standardKansas City interface.

The circuit of figure 1 shows a typicalconfiguration. Rather than switching theoscillator over such a wide range, the unusedprogramming pins of the programmablemonostable are used to give the requireddelays of 3.3 ms, 830 us, and 200 us. Theoscillator shown is a separate 555 since thisgives improved temperature stability, but isnot essential. The oscillator frequency isaround 50 kHz, but should be pulledslightly to compensate for the extra delaysintroduced by the 6800 cycle times.

134

June 1978 O BYTE Publications Int

Circle 265 on inquiry card.

Figure 1.

MIKBUG PIA MC6820PB7 PB2 PBO

15 '°K ^

MCI4536INPUTSBCD

DATARATE

OOO

0 0 1

300bps

0 1 0

4800bps

0 1 1

1 0 01 0 1

75bps

1 1 0

1200 bps

1 1 1

Wait No Longer!

The new educational programs are here.

Discover how to get more out of yourcomputer.

Magnemedia has produced the innova-tive line of software products you've beenwaiting for. Designed for use both at homeor in the classroom, these programs makelearning an exciting experience.

This software comes in handsome two-cassette albums. Each cassette providesvoice instruction on one side and a machinereadable code on the other. Separateinstruction booklets are provided in non-technical language.

PROGRAMS NOW AVAILABLE

All software is for Apple II. (Programsfor other popular micro computers will beavailable soon).

• Supermath™ (16K)-The computerteaches you to add, subtract, multiply and

divide on your own level—in color!

• True/False Quiz (8K)—Tells you how toenter your own quiz.

• Variable Message—You choose mes-sage and colors, the computer does the rest.

• Matching Quiz (8K|—Three changeablecategories in each program. Match item onleft correctly with one on right and theyboth disappear.

• Don't Fall™ (8K)-The computerchooses a word—you try to guess theletters without falling off cliff. Then yougive the computer a word.

• Memory Aide (8K)—Help memorizingfacts, verses, lists. Computer prompts you,asks you to provide missing words, etc.

• Study Aide (8K)—The computer givesquestions in random order. If you miss, itsaves the question for a later try.

• Keyboard Organ (4K)—Turn yourcomputer into a musical instrument. Playthe keys like a piano!

• Grading Routine (16K)—Takes thedrudgery out of finding class curves. Dif-ferent categories, grading scales, etc.

• Drawing (4K)—Computer chooses wordat random from list you supply.

Here's the best news of all—each packageof two programs sells for only $12.00!Individual programs are available for$7.50. Include $2.00 per order for shippingand handling. (California residents add6%).

Magnemedia software is in stock atcomputer stores everywhere. (Dealerslisted below). If not available yet at yourstore, order directly from us. Specify whichprograms and enclose your check.

ArizonaPersonal Computer Place, Mesa (602) 833-8949

ArkansasDalacope. little Rock (501) 666-8588

CaliforniaByte Shop. Marina Del Rey (213) 530-3860Byte Shop, Tustin (714) 731-1686

Byte Shop Computer Store, Walnut Creek (415) 933-6253Byte Shop No. 8. Hayward (415) 537-2983Computer Components. Westminster (714) 898-8330Computerland. El Cerrito (415) 233-5010Computerland, Mission Viejo (714) 770-0131Computerland of West L.A.. Inglewood (213) 776-8080Computers Are Fun, Los Angeles (213) 475-0566Recreational Computer Ctrs, Sunnyvale (408) 735-7480The Computer Store, Santa Monica (213) 451-0713

ColoradoThe Byte Shop, Inc., Englewood (303) 761-6232

ConnecticutComputerland. Fairfield (203) 374-2227

FloridaByte Shop. Miami (305) 264-2983GeorgiaByte Shop, Atlanta (404) 255-8984Datamart Inc., Atlanta (404) 266-0336Computerland of Atlanta, Smyrna (404) 953-0406

DISTRIBUTORS

IllinoisByte Shop, Champagne (217) 352-2323Computerland. Arlington Heights (312) 255-6488Imperial Computer Systems. Rockford (815) 226-8200

KansasPersonal Computer Center, Overland Park (913) 649-5942

LouisianaComputer Shoppe. Metairie 1504) 454-6600

MarylandComputerland. Rockville (301)948-7676

Massac/ruseffsThe Computer Store, Burlington (617) 272-8770

MichiganComputerland of Grand Rapids, Kentwood (616)942-2931

New HampshireComputerland, Nashua (603) 889-5238

New MexicoInteractive Computers, Santa Fe (505) 892-9997

__ Write to: _„

Magnemedia

17845 Sky Park Circle, Suite HIrvine, CA 92714 (714) 549-9122

New JerseyComputer Corner, Pompton Lanes (201) 835-7080The Computer Emporium, Cherry Hill (609) 667-7555

New YorkComputer Shop of Syracuse. De Witt (315) 446-1284Computer Tree Inc., Endwell, (607) 748-1223

North CarolinaByte Shop, Raleigh (919) 833-0210

Ohio21st Century Shop. Cincinnati (513) 651-2111

OklahomaMicrolithics Inc., Oklahoma City (405) 947-5646

TexasByte Shop, Richardson (214) 234-5955CompuShop, Dallas (214) 234-3412Computer Terminal, El Paso (915) 532-1777Computerland. Austin (512) 452-5701Computers 'n Things, Austin (512) 453-5970Interactive Computers, Houston (713) 486-0291Interactive Computers, Houston (713) 772-5257Micro Computer Shop, Corpus Christi (512) 855-4516

WashingtonYe Olde Computer Shoppe. Richland (509) 946-3330

Ontario, CanadaThe Computer Mart, Toronto (416) 484-9708

Circle 206 on inquiry card.

|une 1978 ©BYTE Publications Inc 135

Circle 321 on inquiry card.

M6800 SOFTWARE TOOLS

NEW for Relocating Assembler Users:

M6800 RELOCATABLE DISASSEMBLER AND SEGMENTED SOURCE TEXTGENERATOR. This software tool enables you to modify and adapt those large sizedobject programs (BASIC. Assemblers, etc.) and re-assemble them on your system with-out requiring enormous memory. This program will produce segmented source textfiles with all the external linkage information required for reassembly using the Relo-cating Assembler. (Requires M68AS program for use.) M68RS $35.00

M6800 RELOCATING ASSEMBLER AND LINKING LOADER software for rapid program development and debugging. Some of its features are: RELOCATABLE CODEFULL ALPHABETIZED CROSS REFERENCE LISTING BOTH GLOBAL ANDLOCAL LABELS - LISTING OF EXECUTION TIME RELATIVE BRANCH TAR-GET ADDRESSES - 8 CHARACTER LABELS CORESIDENT EDITOR - ENGLISHERROR MESSAGES 80 COLUMN LISTING USING PR-40 etc. See March BYTEfor additional details. M68AS 550.00

The above two programs are furnished on cassette in relocatable formatted code withinstruction manual and commented assembly listing. A short mini-loader program instandard Mikbug format is supplied to initially load the linking loader at any desiredaddress.

The following programs are supplied on standard Mikbug formatted cassettes. SeeDecember BYTE.

M6800 DISASSEMBLER/TRACE. Our best selling program. It is a super powerful de-bugging tool that allows the user to examine, or examine and execute with full CPUstatus displays, any area of memory under complete operator control.

M68DT $20.00

M6800 DISASSEMBLER SOURCE GENERATOR will produce compacted source codeor an assembler styled program listing with symbolic labels and inst. mnemonics.

M68SG $25.00

M6800 RELOCATE will take any contiguous area of memory and relocate it anywherewithin RAM. M68RL $15.00

M6800 BINARY LOADER M68BL $15.00

SPECIAL OFFER. . . .Programs M68DT. M68SG. M68RL, M68BL. as a package. . . .

M68PK $55.00

Get under Ed Smith's Software RUG (Relocating assembler Users Group). All RUGmembers will have use of a building software support library in relocatable format. Up-coming items are a Floating Point package and a Trig package.

Order direct by check. Specify system configuration if other than SwTPCo. Californiaresidents add 6% sales tax.

Ed Smith's

SOFTWARE WDRHS

P. O. Box 339Redondo Beach, CA 90277

TERMINALS FROM TRANSNET

PURCHASE

12-24 MONTH FULL OWNERSHIP PLAN

36 MONTH LEASE PLAN

PURCHASE PER MONTH

DESCRIPTION PRICE 12 MOS. 24 M0S. 36 M0S.

DECwriter II $1,495 $145 $ 75 $ 52

DECwriter III 2,895 275 145 99

DECprinterl 2,495 240 125 86

VT52 DECscope 1,695 162 85 59

VT55 DECgraphic CRT 2,695 260 135 94

ADM 3A CRT 875 84 45 30

ADDS Regent 100 1,325 126 67 46

Tl 745 Portable 1,875 175 94 65

Tl 765 Bubble Mem 2,995 285 152 99

Tl 810 RO Printer 1,895 181 97 66

Data Products 2230 ... 7,900 725 395 275

QUME, Ltr. Qual. KSR. 3,195 306 163 112

QUME, Ltr. Qual. RO .. 2,795 268 143 98

FlexiFile21, Flpy. Disk 1,995 190 102 70FULL OWNERSHIP AFTER 12 OR 24 MONTHS10% PURCHASE OPTION AFTER 36 MONTHS

ACCESSORIES AND PERIPHERAL EQUIPMENT

ACOUSTIC COUPLERS • MODEMS • THERMAL PAPERRIBBONS • INTERFACE MODULES • FLOPPY DISK UNITS

PROMPT DELIVERY • EFFICIENT SERVICE

H

IransNet Corpora tion

2005 ROUTE 22, UNION, N.J. 07083

201-688-7800

Beware

Tom Pittman

POB 23189

San Jose CA 95153

Compromisingthe Stack Pointer

In the November 1977 BYTE there areseveral articles on implementing real timeclocks, and at least two of them suggestbringing the interrupts in on the NMI inter-rupt of the 6800 or 6502. I think your 6800users should be warned that to do so re-quires (with no exceptions) a clean stack.This means never using the stack pointer forany other purpose.

I notice that SwTPC software is gainingwide acceptance in 6800 circles (especiallyamong SwTPC users, naturally enough, butalso-elsewhere). By my count their 8 KBASIC (version 2.0) has no fewer than 13places where the stack pointer is usedto move a block of data. While this tech-nique certainly works, it makes the softwareincompatible with interrupts such as thoseused by the various clock articles in theNovember BYTE. In two of these places thestack pointer is used to shift the user BASICprogram over for line insertions anddeletions, which tends to take a long timefor large programs. This means that as youedit your BASIC program, little by littleyour real time clock will eat little holes in it,leaving debris which may cause the inter-preter to self-destruct when you try to RUN.The SwTPC coresident editor and assemblerdoes not even disable interrupts whenfooling with the stack pointer, so any inter-rupt (NMI or IRQ) will compromise thedata. I should remark here that the as-sembler part of this package appears to be amodified copy of the Motorola coresidentassembler, and it is only the SwTPC modifi-cations which compromise the stack.

The 6502 is less subject to such hazardsbecause there is less temptation to use its8 bit stack pointer for other purposes, andbecause its indirect addressing capabilitiesobviate the need for such machinations.

Both the 6800 and the 6502 are subjectto a different hazard in the use of the NMIinterrupt for a clock (or any other purpose,for that matter). This is the inherent conflictbetween the NMI and the other interrupts.You see, the NMI wins that conflict. In thecase of an IRQ at the same time, this is not a

136 June 1978© BYTE Publications Inc

Circle 373 on inquiry card.

Circle 294 on inquiry card.

problem because the IRQ input to the CPUis level sensitive, and if the IRQ gets lost inthe service of an NMI who cares? The inter-rupting device simply holds its level andwhen the NMI service is complete the IRQ isstill waiting and gets its turn. But a softwaregenerated interrupt is a different matter.By the time this is decoded inside the pro-cessor, the program counter has already beenincremented to point to the next instruc-tion. But it is not too late for an NMI toreplace that interrupt. When the NMI servicecompletes, it returns to the next instructionafter the SWI or BRK, just as if it were aNOP. This is true of both the 6800 and the6502. I do not know it to be true of theZ-80, but it is a question worth asking.

What this means is that you cannot de-pend on SWI (or BRK) instructions in thesame system that uses the NMI. Fortunatelymost present systems use these instructionsfor setting breakpoints in a program undertest. If you want to be sure not to lose abreakpoint, put two in right next to eachother; if you lose the first, the second willsurely work. A few 6800 operating systemsuse the SWI as a monitor service call. Toughluck. The second byte of the service call(which identifies the monitor function to beperformed) will occasionally be executedinstead of being passed as data to themonitor.

By the way, in case you are thinking of asoftware fix like backing up the programcounter, forget it. You have no way ofknowing if a SWI got lost, or even if a SWIpreceeds the instruction the NMI returns to.You could bail out if all service calls wereidentified by an illegal op code after theSWI (or two bytes after the BRK in a 6502).Otherwise hardware is required to fix theproblem."

Technical Forum is a fea-ture intended as an interactivedialog on the technology ofpersonal computing. The sub-ject matter is open-ended, andthe intent is to foster dis-cussion and communicationamong readers of BYTE. Weask that all correspondentssupply their full names andaddresses to be printed withtheir commentaries. We alsoask that correspondents sup-ply their telephone numbers,which will be printed unlesswe are explicitly asked toomit them.

8700

C^mpifer/Controller

sis^r IIm - „

he Answer For...StudentHobbyistManufacturer

8700 PrOCCSSOr: 6503MPU. Wear free "Active Keyboard"

Micro-Diagnostic® Extensive documentation, Fully Socketed.

Pieblig Monitor: Relative address calculator. Pointer High-low.User Subroutines. Back-step key.

CaSSCtte Interface: Load & Dump by file *. Tape motioncontrol, Positive indication of operation

Applications systems from S90 (lOunil quantity)Development systems from $149 (single unit)TELL ME MORE

I want to see for myself that the h700 is The Answer

( ) Please send doCUmentation

anil price lists. $1i> enclosed.

( ) I tion' t need documentationplease send price lists.

( ) Please send FREE CATALOG.

ELECTRONICS DBPT f, n • 1020 W. Wilshire Blvd. • Oklahoma City. OK 73116 (405) 843-9626

MoommnpRflmE moo

MOommnpRAmc moo

NOT A KIT

8v@15A, ±16v@3A power

Rack mountable

15 slot motherboard

Card cage

Fan, line cord, fuse,

switch, EMI filter

Desk top version option

8v@30A, ±16v@10A option

SS-50 bus option

voltage monitor option

Rackmountedmodel S200

Desk

top model

S235

Write or call for a copy of our

detailed brochure which includes

our application note

BUILDING CHEAP COMPUTERS.

INrEGTHND

8474 Ave. 296 • Visalia. CA 93277 • (209) 733-9288We accept BankAmericard/Visa and Master Charge

Circle 1 79 on inquiry card.

June 1978 ©BYTE Publications Inc 137

Notes on Teaching with Microcomputers

Dr William H Norton

RR 6, Box 7

Iowa City IA 52240

The microcomputer in a classroom isworth a thousand words. The visual demon-strations of computer function and designenable students to grasp ideas that wouldotherwise have to be abstract verbal con-structs. The ability to help student under-standing of computers reach a more pro-found level faster using microcomputerdemonstrations opens up many possibilitiesfor the instructor. The newness of micro-computers and probable future applications,such as energy conservation, lend interestto the subject for both student and teacher.

1976/1977

BITE

Cover Price *plus postageand handling

Back Issues for sale

pllllllllllillllllllllllllllllllllllW

The following issues available:

76 '77

2950 July60 August200 October300 November500 December

330 March

700 May

950 June

950 July1450 August2550 September

300 November

700 December

I

*Cover price for all issues thru August 1977 is j

$1.50 ($3.50 foreign) plus $.25 postage and :

handling. September '77 thru December '77 j

issues are $2.00 ($4.00 foreign) plus $.50 jpostage and handling.

MHIHHHIHIIIIIIIIWtlHmimilllllllMlllllllllllllllllllltllHIHIlt

Send requests to:

BYTE Magazine70 Main St

Peterborough NH 03458Attn: Back Issues

The Teaching Tool

We recently purchased a KIM-1 fromMOS Technology for use in the computerscience program at Marycrest College inDavenport IA. Our conventional computerfacilities consist of a remote line to theIBM 360/65 at the University of Iowa about60 miles away. The KIM-1 compensates forthe remoteness of the IBM computer andopens new possibilities for computer useas well.

As a teaching tool the microcomputer hasseveral strong advantages over the largercomputer systems:

• It is portable enough to be moved intoa classroom.

• It is small enough to be nonthreat-ening to students.

• Students can get actual hands-on ex-perience programming it.

• Small schools can afford to purchase amicrocomputer system.

A whole microcomputer system withbasic language facilities can provide an ex-cellent computer facility for many smallschool systems and colleges. In the futurea microcomputer system with a modestamount of bubble memory may finally makecomputer assisted instruction (CAl) areality. Thus educational uses for microcom-puter technology look very promising.

Talking to a class about computers isreally different when you have one in yourhand. It is almost like adding anotherdimension to the teaching situation. TheKIM-1 we are using has the added advantagethat programs can be stepped through oneinstruction at a time. This allows registers,addresses, op codes and data to be inspectedafter each instruction. We have even dis-played voltages on a DVM and oscilloscope.These activities make computing a visiblereality for the student; that seems to bean important part of learning.

My goal in setting up the computer curri-culum has been to make it practical andcareer oriented rather than a theoreticalscience. The term "software engineering" iscloser to describing the intended approachthan is traditional computer science. Themicrocomputer fits nicely into this scheme.It enables me to base teaching software'techniques on known hardware mechanisms

138 June 1978 © BYTE Publications Inc

rather than on abstract mathematicaltheories. Hopefully this will increase therange of students who can become goodprogrammers.

The Microcomputer as a Friend

Students seem to have gotten used to theidea of the calculator as a friend. Big com-puters with flashing lights and noisy 10devices are totally beyond the understandingof many students, especially those in theintroductory courses. The microcomputerseems to fit in the same category as thecalculator: it somehow has to be under-standable because it is so small. This is asignificant contribution toward overcomingstudent fear of technological monsters.

Not only is it less threatening for thebeginning student, but it is a thrill to make itactually work for the more advanced stu-dent. We are using the microcomputer asthe basis for a course in large computerorganization. The basic architecture ofmicros is similar enough to large scale com-puters so that actual hands-on experience isapplicable to understanding most computersystems. In addition, by the time the stu-dents currently enrolled in this coursegraduate, microcomputing jobs may beplentiful, enabling them to apply theirmicrocomputer experience directly to acareer situation. Either way the studentscome out ahead.

But Is It Affordable?

Current prices put microcomputerswithin the range of most school systemsand colleges as well as affluent students.According to Datamation (January 1977)the University of California and PasadenaPolytechnic High School are among thefirst users of microsystems. ComputerPower and Light Inc of Studio City CAis a new business engaged in selling micro-computer systems to schools. Schoolworkon home computer systems as we haveseen in BYTE is now a reality.

Computer assisted instruction requireslittle computing power and lots of memory.The ideal solution might be a micro with avideo display and a bubble memory modulecontaining the course to be learned. Perhapsa micro could integrate the verbal materialwith a visual display on a television usingvideo tape.

Thus microcomputers are an ideal toolfor teaching students about computers andhold much promise for deeper involvementin education in the future. This meansmany more marketing and occupationalopportunities in microprogramming."

S-100 BUS Needs?

Computer Enterprises Fills

Them Quickly, Inexpensively

And Of Course, Courteously.

* Main FramesMemory Boards

* Disk Systems

* Interface Boards

Credit Cash

Card Discount

Price PriceDynabyte 280ns 16K RAM

C assembled) $520. $800.

Dynabyte Naked Terminal

(assembled) $328. $318.

Cromemco 880ns 16K RAM Kit $464. $446.

Cromemco Bytesaver Kit $136. $131.

Cromemco Z-2 Computer Kit $557. $836.

Cromemco Z-2D Computer Kit. $1399. $1348.

IMSAIPCS-80/18 Kit $731. $703.

IMSAIPIO 6-6 Kit $155. $149.

IMSAIMIOKit $166. $160.

IMSAI 8080 Kit with 82-slot M.B. . $593 $870.

IMSAI VIO-C Kit $297. $886.

Trace 16K Static RAM (assembled

on 32Kboard) $529. $809.

Trace 38K Static RAM (assembled) $883. $849.

Trace 16K RAM Expansion $441. $484.

North Star Micro Disk System Kit. $623. $899.

North Star MDS Second drive Kit.. $395. $380.

North Star Horizon 1 Computer Kit $1497. $1439.

North Star Horizon Second Drive .. $395. $380.

North Star Horizon 1 (assembled). $1777. $1709.

TDL ZPU (assembled) $183. $176.

TDL D-38 RAM (assembled) $769 $739.

TDL Software Package A (for

North Star disk) $228. $819.

Lear Slegler ADM-3AKit write or call for prices

Seals Electronics 8K 880NS RAM

(assembled) $187. $180.

George Risk Model 786 ASCII

keyboardKit $60. $88.

George Risk Model 786 ASC II

keyboard (assembled) $71. $68.

Metal Cabinet for Model 786

keyboard $28. $87.

Shipping charges: $10 per CPU on larger units; S1.50 per kit. S2.00 min. perorder.

Delivery is stock to 30 days on most items. Shipment is immediate for pay-ment by cashier's check, money order or charge card Allow 3 weeks forpersonal checks to clear. N.Y. State residents add approp. sales tax. Avail-ability, prices and specs may change without notice.

Write or Call

computer

P.O. Box 71Fayettevllle, N.Y. 13066

Phone C31S) 637-6208 Today!

Operating Hours:M-W10-BE.S.T.Th-F10-9EJS.T.

Closed Sat. & Sun.

Circle 70 on inquiry card.

|unc 1978 © BYTE Publications Inc 139

More Music

The following zero page locati

0O0E000F0012

Other labels used:

00100011001300140300F900

BEATHASKTEMPO

02000202020302050206020702080209020B020C020E02100212021402160216021A021C021F022202230224022602270229022B022D022P023102320233023502360238023A02310233023502370238

A0 OO98

29 P04A

4A

85 1098

29 OF25 1065 1025 OF

es 10

A2 00A5 12

85 14BD 008D 008A18

65 10AA

C6 11DO 06C6 14DO EDFO 04EA18

90 E7C8

C6 13DO C8A5 OE85 13A9 0185 10

INCR

CNTRL

BCNTR

CNTRH

TABLE

DAC

LDYNOTE TYAANDLSRLSRLSRLSRSTATYAANDANDADCANDSTARESET LDXLDALDA03 LOOP LDAF9 STATXACLCADCTAXDECBNBDECBNEBBQRPEAT NOPCLCBCCNEXT INYDECBNELDASTALDASTACLCBCC

for the 6502

must be loaded before execution:

basa downbeat rate. Typical value -- 08.

determines largest table increment used. Typical value - OP.

determines duration of shortest note; controls tempo.Typical value ■ 0D.

Table increment (harmonic number)

Inner loop counter (wraparound)

Downbeat counter

Outer loop counter

Starting address of waveform table

Address of output port connected to DAC

y index is the note counter

split y into upper and lower halves.

00001111

INCR

INCR

HASK

INCR

0

TEMPO

CNTRH

TABLE

DAC

CNTRL

RPEAT

CNTRN

LOOP

NEXT

BEAT

NOTE

BEAT

BCNTR

101

INCR

AND the two halves

and add to lower half.

MASK out upper half.

Store result for use as table increment.

X is waveform table pointer

Reset tempo counter.

Get Xth byte of table and send to DAC

Add the table increment INCR to X.

Repeat until 256 X TEMPO table bytes are output(which constitutes one note)

Haste as much time as it takes to decrement CNTRL.

Go on to next note.

Listing 1: A program written for the 6502 which generates first order tonesequences. The program can reside in any 70 consecutive memory locations.It requires a 256 byte waveform table on page 03 and an 8 bit digital toanalog converter address at F900. The program uses the X and Y registers andzero page locations 0E thru 14. This program was hand assembled and is re-produced here from the author's typed listing.

T C O'Haver

Dept of Chemistry

University of Maryland

College Park MD 20742

Here is a simple "music" composition andgeneration program which should providesome fun for the experimentally inclined. InSeptember 1977 BYTE, page 12, Hal Taylorwrote about rules describing the styleand structure of computer generated music.He described zeroth order stochastic control,in which the note sequences and durationsare completely random. This sort of thingis very easily implemented with a micro-computer, and I suspect many of you havealready done so just for fun, but the noveltywears off very quickly. More interestingis first order control, in which the pitches(or more precisely the transitions betweenpitches, or intervals) and rhythms aregoverned by some set of rules derived fromconventional music (or from mathematics,poetry, etc, according to Hal Taylor).

The algorithm given here generatesa monotonic tone sequence under firstorder control based on simple arithmeticand Boolean relations. The tone generationitself is done by the conventional sampledwaveform approach with a stored waveformand variable table increment (see HalChamberlin's article cited at the end of thisarticle for explanation). In the conventionaltechnique, the table increments whichdetermine the pitches are stored in a table,which forces the computer to play a pre-determined tune. In the system describedhere, though, the table increments arecalculated in real time by means of a simplepattern generating algorithm. The resultis music which is "natural," at least fromthe computer's point of view, because theelements of the pattern algorithm are simplebinary machine operations such as incre-ment, shift, AND, OR and add. While youmight not consider the results seriouscompetition for the top ten, I think you willfind that the computer's idea of musichas many elements in common with ourown.

The hardware requirements are minimal:an MOS Technology 6502 based computerwith 1 K of programmable memory, a simple8 bit latched output port, and an 8 bitdigital to analog converter (DAC). A KIM-1,Ebka 6502, PAIA 8700, or an OSI 400

140 June 19780BYTE Publications Inc

board should be able to run this programby simply changing the output instruction(locations 021 F to 0221) to the address ofyour output port (F900 on my Ebka).

The complete program is given in theaccompanying listing. It is written to occupythe first 70 bytes of page 02, but is relo-catable without change. The 256 byte wave-form table is on page 03. Page zero locations0E to 14 are used. The pattern generatingroutine (hexadecimal addresses 0202 to0213) produces a 4 bit integer table incre-ment (INCR) from the value in the y indexregister, which is initialized to 0 and isincremented by 1 for each successive note(at location 0235). Then code at locations0216 to 0234 generates the note with theduration determined by TEMPO. To add arhythmic touch, locations 0236 to 0241force the fundamental (lowest) frequencyto be played every eight notes: a sort ofbass drone effect.

The waveform table can be anythingyou like. Of the simple waveforms, a tri-angular wave sounds pleasant. Or you canuse a more complex waveform such as theone given by Hal Chamberlin in his Septem-ber 1977 BYTE article, page 62.

In addition to the waveform, severalother variables can be changed for experi-mental purposes, including TEMPO, MASK,BEAT, and, most interestingly, the patterngenerator itself. For example by changingthe AND and ADC operations at 020E and0210 to ORA, EOR, SBC, etc, a variety ofother patterns can be generated.

Note that, since only integer table incre-ments are used, the pitches obtained will bea "natural" harmonic series resulting in aso-called "scale of just intonation" ratherthan the equally tempered scale morefamiliar in post 17th century Western music(see Olsen's book in the references). Thedifference is slight for the first few har-monics, so for that reason the harmonicnumbers (table increments) are limited bythe MASK applied at 020B."

REFERENCES

Hal Taylor, "Scortos: Implementation of a

Music Language," September 1977 BYTE,

page 12.

Hal Chamberlin, "A Sampling of Techniques

for the Computer Performance of Music,"

September 1977 BYTE, page 62.

H F Olson, Music, Physics, and Engineering,

second edition, Dover, New York, 1967.

HarmonicNumber

12345678

Note

c3

B4

Interval

Octave

Perfect 5th above C3

Next octave

Major 3rd above C4

Perfect 5th above C4

Harmonic minor 7th

Next octave

Table 1: The harmonic series based on the note C2- (C2 is two octaves belowmiddle C.)

!S°PR°CESSOB^TE"ACING

Microprocessor Lexicon, Acronyms and Definitions, bySYBEX. 110 pp. This little book is a necessity to anyone whowants an explanation of those hard-to-fathom acronyms andother micro terms. At 4V x 5Vz" it can be pocketed easily.For only $2.95 every microcomputerphile should have a copy.

Microprocessor Interfacing Techniques (2nd expandededition) by Austin Lesea and Rodnay Zaks. Now available isthis newly revised edition featuring: new material on "usefulcircuits," an enlarged floppy disk section with new double den-sity controllers, updates on LSI controllers—and much more.Including basic concepts and techniques, this book is a verycomprehensive handbook on interfacing. 416 pp. $9.95.

Microprocessors: From Chips to Systems by RodnayZaks. 416 pp. $9.95.

[For convenience, please use the coupon on page 96, writing in)this book's title. Processing may occasionally exceed 30 daysj

Send now to: BITS, Inc. 70 Main St, Peterborough, NH 03458.

Master Charge and BankAmaricard/VISA welcome.

Circle 35 on inquiry card.

|une 19786BYTF Publications Inc 141

Gispcis's

Circuit

Qellsp

Add a Voice

to Your Computer for $35

Talk to Me!

Steve Ciarcia

POB 582

Glastonbury CT 06033

"Talk to me! Talk to me!"

"OK! I'll talk to you if you need it thatmuch!" Ken called out as he descended thestairs into my cellar workshop. "You sureyou aren't going a little buggy?"

I looked up from the video monitor andparted the piles of cassette tapes and print-outs. Ken was a good neighbor and I knewhis comment was only in jest. I hit the car-riage return and the speaker said, "Talk tome!"

Ken smiled when he realized I was justexercising the voice synthesizer option Ihad previously added to my system.

"This synthesizer is part of the reason I'mhere this evening," he said.

"What's the problem?" I asked.

"No problem really. We just got a micro-computer in my company's R and D lab andI've been playing with it lately. It's prettysophisticated and has plenty of memoryspace. What would it cost to put that type ofsynthesized voice on our computer? I canprobably raise $50 among the techniciansfor it. They'd get a kick out of it."

"Well, depending on the manufacturerand the particular interface, they usuallyrun from $400 to $800 and up." I looked atthe startled expression on Ken's face. It waswhat I normally call "peripheral face," thelook you get when you tell someone thatit'll cost $1100 for a video terminal tocommunicate with the computer he justbought for $250.

"So much for that idea. How's the weatherbeen lately?"

"Wait!" I interjected. "How much mem-ory do you have on your lab microcom-puter?"

"40 K, I believe. Why?"

"How much of a vocabulary do youneed?"

"I suspect we'd only need the numbers0 through 9 and a few letters. We want tomonitor data and verbally record channelnumber and input value. But at that priceit's far too expensive to justify."

"How about digitized speech? You prob-

ably have enough memory for that."

"What's that?"

"It's a process to record speech digitally.For all practical purposes it's like a taperecorder, but instead of magnetic tape forthe storage medium it uses the computer'sprogrammable memory. The tape recorderuses an analog storage method while thecomputer stores the information digitally."

"If it's that simple why don't more peopleuse it?"

"It's mostly because it's not very memoryefficient. A voice synthesizer is an analogvoltage generator that creates the speechphoneme sounds through a hard wired cir-cuit. In its most advanced form a single 8 bitbyte can be used to tell the synthesizer whatdiscrete sound it should make. By sending ita series of byte codes, words can be madefrom the discrete sounds. That's, the waymy Votrax synthesizer works." I pulled outa pad to sketch my explanation. "In digitizedspeech the analog voice input is sampled veryquickly with a high speed analog to digitalconverter, and the samples are stored inmemory. To reconvert to analog or "say"the words, the stored digital data is sent toa digital to analog converter at the same rateand in the same order the samples weretaken. The concept of digitized speech hasbeen around for a long time, but up untilrecently the cost of a system dedicated tothis was prohibitive. You already have thecomputer and enough memory for limitedapplications. All you need is the high speedanalog to digital and digital to analog con-verters and the knowledge to do it."

"And what is that going to cost me,$500?" Ken was still skeptical.

I opened a drawer under the bench. It wasmy "junk box" (in my case one corner ofmy cellar is a junk room). I rummagedthrough the prototype boards from previousexperiments and pulled out a particular one."Ah, here we are. You remember a fewmonths ago when I designed that 8 channeldigital voltmeter (December 1977 BYTE,page 76, and January 1978 BYTE, page 37).

142

June 1978 © BYTE Publications Inc

Figure la: Block diagram of a digital speech recording system. Speech is picked up as soundwaves by the microphone and is amplified and processed through a high speed analog to digitalconverter which samples the analog sound waveform several thousand times a second. Thesesamples are stored in the computer's programmable memory.

MICROPHONE

TALKTO ME!

)) CL>

AMPLIFIER

I needed it to troubleshoot this board. Thisis all you need for digitized speech." Itossed the board to Ken. "It contains a100,000 sample per second 8 bit analog todigital converter and an equivalent speeddigital to analog converter. And now thebeauty part: It cost less than $35 to build."

"Great! Tell me how to use it. How muchmemory does it need? What kind of programdoes it use? Can you tell me how to use itso I can borrow it for work tomorrow?"

"Well, let's go over the concept in moredetail "

What is Digitized Speech?

Digitized speech is simply a standarddata acquisition technique with a new defini-tion. For years people have been usingcomputers to scan analog to digital inputconverters and store the results in memory.Often, in high speed applications such aswind tunnels and nuclear experiments, thesample rates can exceed thousands of samplesa second. In cases where the critical event isof short duration, these thousands of samplesare stored directly into memory to increasesystem throughput capabilities. When theevent has passed and sampling has stopped,the computer memory contains a record ofthat event in discretely timed intervals. Thestored data is now available to be reduced,analyzed or listed. It's often listed in "slowmotion." This technique employs an analog

HIGH SPEEDANALOG TODIGITAL CONVERTER

pen recorder and a digital to analog conver-ter. Each sample is successively processedthrough a digital to analog converter at aslow rate to the pen recorder. The result isan expanded view of a short event.

An alternative method for utilizing thisstored data is to play it back in real time.In this case the computer outputs the storeddata to the digital to analog converter at thesame rate the data is taken. The output ofthe converter would then exactly duplicatethe values of the event previously recorded(at the times the samples were taken).

Digitized speech is a specific applicationof this type of data recording technique.Your voice, when applied to a microphoneand amplifier, creates a fluctuating analogvoltage that varies at the frequency rate ofthe sound. If this analog signal is applied tothe input of a high speed (greater than 10,000samples per second) analog to digital con-verter and stored in memory, the computerwon't care whether the source is speech ora nuclear reaction. The analog fluctuationsare "digitized" at discrete sampling intervalsand stored (figure 1a). If the stored memorytable is sent to a digital to analog converterat the same rate it was initially sampled, thespeech is reproduced exactly. Of coursethere are trade-offs and limitations thathave to be considered to produce a usablesystem (figure lb). We will consider themin detail later.

COMPUTER SYSTEM

1-

UJ O

II

COMPUTER

PROCESSOR

AND

PROGRAM

MEMORY

/MEMORY SPACE//////////////

COMPUTER SYSTEM

COMPUTER

PROCESSOR

AND

PROGRAM

MEMORY

1-K

u>

0.O

/DATA FILLED-//>MEMORY SPACE/////////////

Figure lb: Block diagram of a digital speech playback system. Digital samplepoints stored by the system in figure la are converted by a high speed digitalto analog converter Into an analog speech waveform. A low pass filter is usedto smooth the signal, which is then amplified and played back through aspeaker.

HIGH SPEEDDIGITAL TOANALOG CONVERTER

LOW PASSFILTER

AMPLIFIER

<tl)

TALKTO ME!

June 1978 © BYTE Publications Inc

143

A digitized speech system creates its out-put waveform by digital to analog conversionrather than by completely analog generationas in the case of a voice synthesizer. Themajor consideration that limits the usefulnessof digital speech is the vast quantity of datawhich must be stored to reproduce a singlespoken word.

Choosing the Correct Sampling Rate

The 8 channel digital voltmeter mentionedearlier has a maximum sampling rate of 25conversions a second. A slow speed analogto digital converter of this type is of no valuein this application. The normal human voiceoccupies a bandwidth of 4000 Hz, and taking

Figure 2a: A waveform(considerably simplified)which is characteristic ofthe voice.

TIMElOO/isec/DIV

Figure 2b: Waveform infigure 2a after being pro-cessed through a digital toanalog converter at asample rate of 5000samples per second.

-i—i—i—i—i—i—i—h

SAMPLEPERIOD —200^.sec

H 1 1 1 h-

H 1 H O *■ TIME

IOO/isec/DIV

Figure 2c: Waveform infigure 2a after being pro-cessed through a digital toanalog converter at asample rate of 10,000samples per second.

■i—i—i—i—i—i—i—i—y

O SAMPLE UPDATE

SAMPLE I

PERIOD »J

tOO/isec

^r

► TIME

IOO/tsec/DIV

144 June 1978 © BYTE Publications Inc

25 samples within a period of one secondcould not effectively record the event. Atwhat sampling rate should audio speech bedigitized?

There is a specific law used to determinethis rate, called the Nyquist criterion. Itstates that, at the very minimum, the sam-pling rate of the digitizer must be twice themaximum frequency of the input sample.If human voice extends to 4 kHz, the mini-mum sample rate should be 8 kHz. Thispresumes that there is an ideal low passfilter on the output of the converter. Idealfilters are something like perpetual motion,impossible to attain. In reality the samplingrate should be three or four times the highestinput frequency. This means that to digitizevoice fully you need a sample rate of from12 to 16 kHz.

It is easier to explain the digitization proc-ess visually. Figure 2 illustrates an expandedview of a typical speechlike waveform. Voicewaveforms are complex: the majority of thevoice sounds exist below 1500 Hz, butintonation and accent occupy the higherfrequencies. It is these added harmonics andinflections that make one voice different

from another, and capturing and recordingthem is an important consideration. Thewaveform in figure 2 has been digitized attwo different rates for comparison. Figure 2ais the original waveform which consists of afundamental frequency of approximatley500 Hz and some added components ofhigher frequency. If this waveform is"digitized" or sampled at a 5000 samples persecond rate and the stored values are sentto a digital to analog converter, the resultantwaveform would be that shown in figure 2b.It is easy to see that only a vague representa-tion of the original waveform would berecorded. Even though this output is filteredbefore being amplified, the higher frequencycomponents of the original input would belost. Increasing the sampling rate to 10,000samples per second as in figure 2c gives abetter record of the higher frequencies. Theaddition of a good low pass filter wouldeliminate the sharp transitions betweensamples.

Tradeoffs to be Considered

The benefits associated with the reducedcost of the voice input and output circuitry

standardControl cointerface.

RECONDITIONED SELECTRICTERMINALS

CONTACT KEN PAYNE

Dai-Data Inc. • 1111 W. Mockingbird Lanejite 1400 • Dallas, Texas 75247 ■ 214-630-9711

ipatibfe *

RS232C Interface

Break and Control Code features

30 DAY WARRANTY

:nir»]:M»^w<*A7Jii:Vii

Circle 81 on inquiry card.

lime 1978 © BYTE Publications Inc 145

390pF

C>D7£>D6C>05C>D40>D3C>02O>0lC>DO

± r—^ END OF

CONVERSION

FREE RUNSW .TRIGGERED INPUT

NOM CLOCK IOOKHZ-2MHZ SET FOR APPROX 900KHZ

Figure 3a: An 8 bitsuccessive approximationanalog to digital converter.

are counteracted by the increased memoryrequirements. Digitized speech uses a lot ofmemory. In the previous example, if thevoice input is sampled at 10,000 samples persecond, the table in memory needed to storeone second of data would be 10,000 byteslong (presuming an 8 bit analog to digitalconverter). If increased fidelity is requiredand the sampling rate is set for 16 kHz, thetable would fill up at a rate of 16,000 bytesper second.

Obviously, systems like my own, whichalready have considerable amounts of pro-grammable memory, would be easy to usefor experimenting with digital speech. I donot recommend buying additional memoryjust to store a few words, but, if you have it,you'll be surprised at the results.

Building a Voice Digitizer

To experiment fully with digitizedspeech, it is necessary to have a high speedanalog to digital converter to store theanalog input and a high speed digital toanalog converter to reconstruct the analogoutput.

Figure 3a shows the schematic of an 8 bitanalog to digital converter capable of samplerates in excess of 200,000 samples persecond. With an 900 kHz clock rate it willrun at a modest 100,000 samples per second.Figure 3b shows an 8 bit digital to analogconverter and low pass filter with similarcapabilities. The estimated total cost for partsis $35.

The analog to digital converter is a generalpurpose high speed 8 bit converter that can

Table 1: Power wiringtable for figures 3a and 3b.

IC Number

Type

+5 V

Gnd

+12 V

-12 V

-6 V

IC1

MC1408L8

13

1

3

IC2

MC14559

16

8

IC3

74100

24

7

IC4

LM301A

7

4

IC5

LM710

8

4

IC6

7400

14

7

IC7

7404

14

7

IC8

MC1408L8

13

1

3

IC9

LM301A

7

4

146

|unc 1978 ©BYTE Publications Inc

Figure 3b: An 8 bit digitalto analog converter andlow pass filter.

07 q>-

D6 n>-

05 |j>-

8 BIT J 04 r>-

PARALLEL { h^

INPUT

D3 O

D2 \Z>-Dl (j>-00 LT^

SPAN

+ 5VA

MSB

IC8MCI408L8

LSB

-I2V

1647pF

IOliF lOuF

^we-

LOW PASS FILTER

2.2K

/77

be used for any data acquisition applicationrequiring high speed. The technique used toattain this speed is called successive approxi-mation. The circular logic of successiveapproximation is best explained in a blockdiagram (see figure 4).

Initially, the output of the SuccessiveApproximation Register (SAR) and mutuallyconnected digital to analog converter is ata zero level. After a start conversion pulse,the register enables the output bits one ata time starting with the most significantbit (MSB). As each bit is enabled, the com-parator gives an output signifying whetherthe amplitude of the input signal is greater

Notes for Figures 3a, 3b and 3c:

1. All resistors are 1/4 W 5% unless otherwiseindicated.

2. All capacitors are 100 V ceramic unless other-wise indicated.

3. With components shown, clock frequency is900 kHz. This is 100,000 conversions persecond in free run mode.

4. The following circuit can be added to eachoutput pin of IC3 if a visual indicator is desired:

5. Clock rate is not critical. A slower clock of 100kHz (about 9 K samples per second) may bequite adequate.

+ 5V

.470ft

FROM I—s_JC3 L_^"

/77

than or less than the amplitude of the con-verter. If the converter output is greater,that particular bit is set equal to 0; if lessthan, it is set to 1. The register moves succes-sively to the next least significant bit (retain-ing the setting on the previously tested bitor bits) and performs the same test. Afterall the bits of the converter have been tested,an EOC is output and then the conversioncycle is complete. The entire conversionperiod takes only nine clock cycles, and

►5V[> f

m rh

-I2VO-

H2V CZ> f »

-0+5V

100/iF25V

| ^U IOMF

+ 25V

m

-0-I2V

isoft

I/2W6.2V JL

I

XI

Figure 3c: Power supplycircuitry for figures 3a and0>-6v 3b.

-O + IZV

. 10/iF25V

m m

220ftI/2W

«—Ov REF

7.5V

|unc 197SOBYTE Publications Inc 147

ANALOG |—s__REFERENCE I—"->"

V OUT

DIGITAL TO

ANALOG

CONVERTER

COMPARATOR

CLOCK800 KHz

MSB

D SUCCESSIVE

APPROXIMATIONREGISTER

-ci>

-f±>

-o>

^>-c>-£>

-€>

i -

8 BIT)PARALLEL

OUTPUT

SERIAL OUTPUT

START i—^_CONVERSION I *■

Figure 4: Block diagram of a typical successive approximation analog todigital converter. The device uses a digital to analog converter to perform itsfunction. The successive approximation register is initially set to 0. After astart conversion pulse, the register enables the output bits one at a time,starting with the most significant bit (MSB). As each bit is enabled, thecomparator gives an output signifying whether the amplitude of the inputsignal is greater than or less than the amplitude of the digital to analogconverter. If the converter output is greater, the bit in question is set equal to0. Otherwise it is set to 1. The process continues for the remaining bits untilthe conversion is complete.

Micro Business Software

• Complete interactive, double entry account-ing system

• 51 programs with 120 pages of documen-tation

• Written in Northstar BASIC (other variationsavailable)

• General ledger, accounts receivable,accounts payable, inventory and payroll

• Only 24K of memory

• Single diskette can hold 400 customerlistings, 50 vendors, 400 line items ofinventory, 25 employees, 60 general ledgeraccounts.

• Only $200.00

Send check or money order (Calif, residents add6% sales tax) plus $2.50 to cover postage andhandling to:

Computer Products Of America

A Division of The Computer Mart633 West Katella AvenueOrange, CA 92667(714) 633-1222

Dealer and OEM prices upon request

another conversion begins on the next clockpulse when in free run mode. To retainthe 8 bit value between conversions, an 8 bitregister (IC3) has been added (see "Controlthe World," September 1977 BYTE, page30, for a complete description of MC1408digital to analog converter operation).

Assembly and Testing

1. Component types and values are chosento allow high speed operation. Substi-tution of slower devices may com-promise overall performance.

2. Assemble components on a prototypeboard as neatly as possible. Keep wiresbetween components short and direct.The MC14559 is a CMOS device and itshould be handled carefully. Socketsare suggested for all integrated circuits.

3. Check power supply voltage beforeinserting integrated circuits. Then insertclock oscillator IC6. The clock fre-quency should be around 900 kHz.

4. Insert the rest of the integrated circuitsand ground the V input connection ofIC4. Slowly rotate the zero adjust potuntil the parallel output of IC3 readsbinary 10000000. This output can beread either through a computer pro-gram which scans and displays thisvalue or with LEDs attached to theoutput pins. In practice, the LEDsare easier in the long run.

5. Remove the short on V input and applya voltage of +2 V. Adjust the spanadjust pot until the displayed outputis 11111111. The result of this proce-dure is an analog to digital converterwith an input range of —2 to +2 Vrepresented by binary 00000000 and11111111 patterns respectively. 0 Vis represented by 10000000. Anyvoltage span between + and —5 V canbe set on this circuit using this method.

6. The digital to analog converter sectionshould be assembled with the samecare. Insert all ICs. With all parallelinput pins at a logic zero level, adjustthe zero pot until IC9 pin 6 reads 0 V.

7. With all parallel input pins at a logic 1level, adjust the span pot until the out-put at IC9 pin 6 equals the +V settingof the analog to digital converter, oras in the example (2 V).

8. The low pass filter in the schematicis optimized for the speech samplesin the text, but can be experimentallydetermined. The optimum cut off fre-quency of the low pass filter shouldbe the sampling rate frequency, (ie:10 kHz cut off for 10 kHz samplerate).

148

June 1978 © BYTE Publications Inc

Circle 77 on inquiry card.

9. The easiest way to test the entire unitis to attach the analog to digital con-verter output to the digital to analogconverter input. What goes in shouldcome out! Since both units would berunning continuously at the 100,000samples per second rate, this will givethe experimenter firsthand knowledgeof the ultimate fidelity of the system.Don't expect miracles with an 8 bitunit; 12 bit units would be far superior,but 8 bit precision is more than ade-quate. A standard cassette recorder inthe record mode serves as a handyamplifier. The amplified output isavailable at the earphone jack on mostrecorders.

the analog to digital converter I have includeda predigitized listing of a few words. This2000 byte listing (listing 3), will say "Talkto me" when read out using the program oflisting 2. Since I could not presume thateveryone had the patience to hand load a10,000 byte table with good fidelity, a com-promise was in order. The sample rate on thistable is only 3 kHz, but the speech will stillbe understandable. It should also be realizedthat since this example of digitized speech isactually recorded sounds, the words "Talkto me" will be in my voice. The fact thatI have a fairly low voice allows understand-able speech even at these very low samplerates.

Using the Interface with a Computer

Not everyone will want to add a voiceto their home computer but the concept isnone the less intriguing. Once you have builtthe analog to digital converter and digitalto analog converter of figure 3 you are readyto digitize the spoken word. Listing 1 is asimple program that reads the analog todigital converter output and puts the valuessequentially in a memory table. Hardwarefor the experiment should be arranged as infigure lb. When the program is executed itwill scan the input port containing the analogto digital converter information and willcompare this value to hexadecimal A8 (whenspeech is started, the audio level will presum-ably exceed this trigger level). The amplifiershould be adjusted to eliminate false trig-gering because of background noise.

When the input level is attained, thedigitization process begins. The programsets the beginning address of the memorytable and sequentially reads the input portand stores the value. The rate at which thesampling occurs is determined by the valueof a constant, "SAMP." A value of hexa-decimal 38 is approximately 3 kHz on myZ-80 system. When the table is filled, theprogram stops. All programs in this article,while written on a Z-80, use only 8080instructions.

Once the table is filled with digital valuescorresponding to a voice input, we are readyfor the next phase: voice output. The hard-ware is configured as in figure 1b, and theoutput program shown in listing 2 shouldbe used. The same values as those of theinput program should be used for START,END and SAMP. When the program isexecuted, the recorded data gives a speechoutput.

As with most computer experimenters,hearing is believing. To allow people to tryout the concept without having to construct

Listing I: An 8080 assembler program that reads the 8 bit parallel output ofthe analog to digital converter and stores the samples sequentially in memory.This assembly uses octal notation for machine codes.

20000

20000

20000

20000

20000

20000

20000

20000

20000

20000

20000

20000

20000

20000

20000 333 0 20

20002 376 250

20004 302 000 J 20

20007 Ml 000 010

20012 333 02020011 167

20013 315 030 120

20020 0-13

20021 171

20022 376 11020021 302 012 12020027 166

20030200302003020030 006 070

20032 005

20033 30220036 311

032 120

010001100120013001400150016001700180019002000210022002300240025002600270028002900300031003200330034003500360037003800390040004100420

CE TO MEMORY TABLE TEST PROGRAM *S.CIARCIA

START

END

TRIG

IPORT

SAMP

*

*

*

INP

AGAIN IN

EQU 010000 MEMORY TABLE START HL ADDRESS

EQU 110 MEMORY TABLE END H ADDRESS

EOU 250 INPUT START CONVERSION LEVEL

EQU 020 A/D INPUT PORT NUMBER

EOU 070 SAMPLE RATE TIME CONSTANT

CALLINC

IPORT READ A/D INPUT VALUE

TRIG COMP. INPUT TO CONVERT TRIGGER LEVEL

NZrINP LOOP AGAIN IF NOT SUFFICIENT LEVEL

HL,START LOAD TABLE START ADDRESS

IPORT TAKE A SAMPLE

STORE SAMPLE IN MEMORY

SAMPLE TIME DELAY

< HL > r

DELY

HL

A.HEND

TEST TO SEE IF AT END OF TABLE

* SAMP

DELY

DCR

NZ.AGAIN IF NOT TAKE ANOTHER SAMPLE

LE RATE TIMING LOOPLD B,SAMPDEC BJP NZ,DCRRET

Listing 2: An 8080 assembler program designed to output digital speech sam-ples to the digital to analog converter at the correct rate. This assembly usesoctal notation for machine codes.

120000

120000

120000

120000

1.20000

120000

120000

120000

120000

120000

120000

120000

12 0000

120000

041

000

01 0

120003

L76

120004

323

022

120006

315

02 1

120

120011

043

120012

174

120013

376

012

120015

302

00 3

120

120020

166

120021

120021

12002 1

12002 1

006

0 70

120023

005

120024

302

023

I 20

120027

311

010001100120013001400150016001700180019002000210022002300240025002600270028002900300031003200330031003500 3 6003700380

* MEMORY TABLE TO VOICE OUTPUT TEST PROGRAM *

* S.CIARCIA

START EOU 010000 MEMORY TABLE START HL ADDRESS

END EQU 012 MEMORY TABLE END H ADDRESS

OPORT ECUJ 022 D/A OUTPUT PORT NUMBER

SAMP EOU 070 SAMPLE RATE TIME CONSTANT

AGAIN LDOUTCALIINC

Hl.i START LOAD TABLE START ADDRESS

A.(HL) TABLE VALUE TO ACCUMULATOR

OPORTiA OUTPUT BYTE TO D/A

DELY SAMPLE TIME DELAY

HL

A,H

END TEST TO SEE IF AT END OF TABLE

NZ.AGAIN IF NOT OUTPUT THE NEXT SAMPLE

* SAMPLE RATE TIMING LOOPDELY LD BiSAMPIICR DEC B

JP NZlBCH

RET

June 1978 8 BYTE Publications Inc

149

Listing 3: A listing of thedigital samples making upthe phrase, "Talk to me"spoken by the author. Thissomewhat bandwidth lim-ited signal allows Inter-ested readers to reproducethe message through an 8bit digital to analog con-verter without having tobuild the analog to digitalconverter.

THE FOLLOWING 1

1ST HAS

THE ADDRESS LOCATION IN

DECIMAL

ALL MEMORY BYTL

VALUES

ARE GIOEN

IN OCTAL

NOTATION

32768

277

307

320

250

177

140

077

037

001

000

32778

000

000

000

027

101

220

274

303

300

260

32788

213

210

174

147

100

054

007

001

014

007

32798

003

030

047

040

050

037

050

060

077

140

32B08

170

234

203

170

156

117

060

037

047

060

3281B

034

003

040

076

077

140

150

127

053

060

32828

037

040

077

137

113

040

077

117

060

057

32838

043

060

076

067

120

077

157

200

174

137

32848

160

140

077

107

077

047

060

070

057

041

32858

044

037

041

034

017

027

040

037

023

060

32868

070

043

060

054

047

040

056

037

040

070

3287B

047

045

074

037

060

074

077

140

077

037

32888

377

370

004

123

220

274

127

000

136

047

32898

000

000

000

000

000

077

377

260

000

100

32908

176

37?

107

000

077

357

240

017

000

240

32918

130

000

000

000

000

000

377

377

000

000

32928

177

263

320

000

000

240

357

133

000

036

32938

227

020

000

017

000

000

227

377

130

000

32948

101

240

317

061

000

077

377

120

057

043

3295B

140

077

000

020

007

000

000

377

377

000

32968

000

277

300

220

000

000

330

314

000

077

32978

137

067

040

016

023

000

000

000

377

377

329B8

000

OOO

344

257

120

000

000

363

174

000

32998

147

140

037

027

030

017

000

000

077

377

33008

240

000

067

340

224

047

000

076

377

040

33018

000

177

063

050

017

003

010

000

000

377

33028

377

000

000

277

237

150

000

000

311

274

33038

000

140

170

037

040

034

017

000

000

037

33048

377

300

000

107

320

230

043

000

137

377

3305B'

000

054

157

040

074

007

020

004

000

000

33068

377

377

000

050

316

227

140

000

027

370

33078

074

057

101

077

077

000

054

003

000

000

33088

377

377

000

017

221

240

234

000

030

356

33098

147

040

034

147

060

000

067

000

000

000

33108

377

377

000

017

210

237

213

000

077

303

3311B

140

037

047

140

014

007

074

000

007

040

33128

000

377

245

000

237

067

220

117

013

200

33138

016

113

060

017

047

020

077

017

074

077

33148

017

140

177

157

141

130

137

120

120

077

33158

047

070

057

057

060

057

047

070

077

073

33168

076

077

107

120

134

117

100

077

077

060

33178

064

027

020

036

037

040

074

067

120

120

33188

077

120

076

137

061

130

077

067

120

077

33198

107

100

077

077

120

130

200

120

120

136

33208

103

130

077

077

120

077

077

071

077

077

33218

100

077

077

100

076

077

070

074

067

060

3322B

070

057

061

070

057

060

070

057

060

070

33238

057

061

074

077

100

076

077

077

076

077

3324B

073

074

077

067

070

077

067

074

077

067

33258

100

077

077

100

077

077

100

077

077

073

33268

076

077

101

076

077

101

120

077

077

100

33278

077

077

100

077

077

075

077

077

101

077

33288

077

101

077

077

075

076

077

077

076

077

33298

073

070

077

067

074

077

067

074

077

073

33308

074

077

077

074

077

077

073

077

077

075

33318

077

077

073

076

077

071

076

077

070

076

33328

077

041

074

057

061

076

067

061

074

067

33338

063

074

077

043

074

077

067

076

077

067

33348

074

077

047

074

077

067

074

077

073

100

33358

077

077

100

077

077

100

077

077

101

077

33368

0 77

101

074

077

101

076

077

077

110

077

33378

0 77

110

077

077

101

077

077

101

077

077

33388

101

077

077

077

076

077

073

076

077

077

33398

076

077

077

074

077

077

074

077

077

074

33408

077

073

074

077

077

074

07 7

077

071

077

33418

077

070

076

067

070

076

067

070

076

067

33428

060

074

067

061

076

067

063

074

067

063

33438

074

067

063

074

077

071

074

077

067

074

33448

077

047

074

077

067

074

077

067

074

077

3345B

073

074

077

077

100

077

077

100

077

077

33468

101

074

077

101

076

077

101

120

077

077

33478

120

077

077

103

077

077

103

077

077

077

33488

no

077

077

110

077

077

076

077

077

076

33498

077

077

074

077

077

071

076

077

071

076

3350B

077

071

076

077

071

076

077

071

076

077

33518

065

074

077

067

074

077

065

074

077

063

33528

074

077

063

074

077

063

070

077

063

074

33538

077

043

074

077

063

074

077

067

074

077

33548

067

074

077

067

070

077

067

070

077

073

33558

100

077

077

100

077

077

101

077

077

073

33568

120

077

077

110

077

077

110

077

077

120

33578

077

077

110

077

077

103

077

077

077

110

33588

077

077

100

077

077

100

077

077

100

077

33598

077

100

077

077

073

077

077

071

076

077

3360B

073

074

077

071

077

077

061

140

217

143

33618

076

057

053

140

077

013

040

077

063

020

33628

074

057

060

077

077

101

057

027

020

060

33638

027

040

077

143

120

077

077

120

130

077

33648

107

070

076

067

120

137

147

140

077

077

33658

120

134

077

140

130

077

120

074

077

063

33668

077

077

027

060

077

123

074

074

021

030

33678

057

007

070

037

027

040

077

127

140

137

33688

137

200

150

077

060

040

037

020

030

017

33698

013

040

057

063

100

077

107

140

137

137

33708

140

144

147

140

134

077

063

074

047

040

33718

036

037

043

074

077

100

074

077

100

140

33728

137

137

140

134

077

070

074

047

070

077

33738

117

111

120

077

121

140

137

161

174

156

33748

117

074

076

04 7

040

037

017

020

003

000

33758

000

277

317

320

174

077

010

040

077

121

33768

076

017

073

070

077

051

070

027

000

000

3377B

002

000

000

017

147

370

276

147

040

077

33788

077

200

140

117

000

040

017

121

140

167

3379B

043

040

017

023

000

000

000

000

157

243

33808

360

260

107

010

134

157

200

130

077

000

33818

030

037

101

077

157

133

074

057

073

060

33828

007

000

000

000

027

220

277

227

103

077

33838

067

140

160

147

043

040

017

040

060

077

3384B

073

150

137

127

060

077

043

020

007

001

33858

000

034

147

200

230

177

140

130

117

127

33868

077

077

053

050

037

041

060

074

101

130

33878

077

107

120

077

047

060

056

037

040

037

33888

057

100

150

147

147

160

137

121

120

077

33898

073

070

074

043

040

057

053

100

077

117

33908

120

120

077

061

070

037

040

054

037

071

150

June 197S0BYTE Publications Inc

More Advanced Applications

I don't want you to finish this article andthink that digitized speech is as limited as Ihave represented it so far. It is possible tototally simulate the capabilities of an analogspeech synthesizer with more involved soft-ware. If you realize that the analog synthe-sizer works by connecting strings of distinctlyindependent phonemes, it is not hard toconsider that the same can be true for the

Listing 3, continued:

digital method. Each phoneme could berecorded separately and would occupyapproximately 2 K bytes. As in the analogsituation, a separate control program deter-mines how these individual phonemes are tobe connected together. Besides determiningthe type of phoneme to be used, the proc-essor must also create the waveform. Sucha system uses much more memory and takesconsiderably more processing time thansomething like the Votrax, but it is equallyas versatile."

33918

134

137

153

160

13/

127

140

077

077

070

33928

074

047

060

070

057

074

077

117

121

134

33938

077

073

074

047

041

050

037

040

060

077

33948

120

160

157

133

140

077

077

100

077

057

3395B

060

060

043

060

074

067

100

077

117

121

33968

077

077

061

064

037

040

050

037

041

076

33978

077

140

150

154

127

120

077

077

070

076

33988

057

0 40

060

04/

060

0/6

07/

1.20

134

137

33998

1 11

0/7

077

047

0/0

03/

041

060

05/

04/

34008

120

137

143

144

154

137

120

077

0/7

0/1

34018

0/4

057

051

044

05/

060

0/4

077

120

140

34028

077

103

076

0/6

05 /

060

037

04 1

040

057

34038

067

120

13/

147

140

I 40

1 1?

120

0/7

0/7

34048

063

0/0

057

047

070

05/

061

0/4

07/

11/

34058

1 40

077

0/7

0/4

0/6

05/

O60

056

037

040

34068

057

067

120

137

137

140

140

1 17

107

120

34078

07 7

063

070

057

04 1

060

057

05/

0/4

077

34088

107

120

077

07/

100

076

057

060

056

037

34098

040

03/

07/

120

154

13/

141

150

0/7

123

34108

120

0/7

063

060

037

040

060

076

05/

076

34118

077

147

140

134

077

063

060

037

040

034

34128

007

001

020

077

140

230

176

147

120

137

34138

077

140

077

04?

040

054

033

060

0/7

047

34148

100

0/7

147

140

140

077

063

060

037

040

34158

040

027

005

020

03/

160

174

237

167

160

34168

137

0/7

120

077

077

040

056

007

041

074

34178

05?

0/0

076

117

140

150

07/

073

0/4

057

34188

047

050

037

023

020

034

02/

170

1/7

207

34198

200

136

137

100

130

0//

06/

070

037

041

34208

060

067

061

0/4

077

105

140

137

117

076

34218

074

057

060

037

033

040

017

007

040

170

34228

163

201

174

137

140

07/

077

077

0/4

076

34238

041

060

05/

053

074

077

101

120

136

143

34248

120

077

067

060

070

04/

041

057

027

040

34258

034

047

140

160

177

200

140

137

101

076

34268

077

067

070

057

033

060

057

063

074

077

34278

103

140

140

127

100

0/6

04/

060

070

047

34288

040

054

037

040

070

077

140

170

157

141

34298

140

077

117

110

077

077

060

070

057

060

34308

077

067

074

077

11/

121

130

077

063

070

34318

057

041

070

047

043

070

047

061

074

077

34328

121

160

176

141

120

077

077

100

077

067

34338

060

070

047

060

076

067

100

077

117

121

34348

120

077

063

070

047

043

070

057

061

060

34358

057

061

120

137

147

160

137

107

120

077

34368

077

074

076

057

060

057

04/

040

077

077

34378

121

120

077

073

074

074

060

070

057

053

34388

070

057

061

074

077

133

140

154

127

120

34398

077

07/

100

077

077

070

074

057

060

077

34408

077

120

120

077

071

070

074

040

070

057

34418

047

070

057

061

074

077

043

140

137

133

34428

140

130

077

100

0/7

077

071

077

077

063

34438

076

067

060

074

057

040

070

04 7

040

070

34448

077

140

140

156

137

130

077

077

100

077

34458

067

060

057

043

060

074

067

100

077

077

34468

100

077

077

063

076

057

060

070

067

061

34478

074

077

100

077

077

103

120

077

117

120

34488

077

077

107

077

077

075

076

077

067

074

34498

077

065

074

077

067

076

077

063

120

137

34508

123

140

136

107

100

077

047

070

074

057

34518

060

074

057

060

076

057

060

077

067

070

34528

076

067

070

076

077

100

077

077

107

077

34538

077

077

100

077

077

070

077

067

070

076

34548

063

070

076

057

070

076

067

100

077

067

34558

070

077

077

100

076

077

100

077

077

100

34568

076

077

073

077

077

077

100

077

073

074

34578

077

073

100

077

077

no

077

077

100

077

34588

077

077

077

077

077

100

077

077

110

077

34S98

077

100

077

077

074

077

077

100

077

077

34608

101

077

077

075

076

077

065

074

077

063

34618

074

077

067

076

077

071

076

077

067

074

34628

067

061

070

077

061

074

077

043

074

077

34638

063

074

077

067

070

077

067

070

077

063

34648

070

077

067

074

077

077

100

077

077

101

34658

077

0/7

100

076

077

067

074

077

071

076

34668

077

077

076

077

077

100

077

077

100

077

34678

077

103

120

077

101

120

077

103

120

077

34688

077

120

077

077

100

077

077

100

077

077

34698

100

077

077

075

077

077

077

076

077

073

34708

074

077

067

074

077

073

074

077

071

074

34718

077

067

074

077

063

070

076

053

070

077

34728

063

070

077

067

074

077

067

074

077

067

34738

074

077

067

070

077

067

070

074

047

070

34748

076

077

070

076

077

100

077

077

073

077

34758

077

073

074

077

073

076

077

077

120

077

34768

077

110

077

077

101

077

077

103

120

077

34778

103

110

077

077

110

077

077

110

077

077

34788

100

077

077

100

077

077

075

077

077

075

34798

076

077

075

076

077

073

076

077

073

074

34808

077

06/

070

077

067

074

077

073

155

014

Next month: KeyboardFunction Decoder.

lunc 1978 O BYTE Publications Inc

151

Please post or circulate

Make your reservations now for the

BUSINESS & PERSONAL COMPUTER EXHIBITION

3rd Annual

n 1978.

Computerfest™ '78June 23-25, 1978Detroit, Michigan

Presented by the Midwest Affiliation of Computer Clubs24 Hour Computerfest™ Hotline phone number (313) 775-5320

The Computerfest™ '78 to be held in the ultra new Detroit Renaissance Center, Detroit PlazaHotel, June 23-25, will feature a full scale three day business and personal computer exhibition.The Computerfest'" will include useful information on how to computerize your business, homeor office. Bring your walking shoes to cover over 100,000 square feet of convention facilities!

Only $5.00 for all three days, or save 20% now by pre-registeringDeadline for $4.00 advance registration tickets is June 15, 1978

Use coupon below to get 20% pre-registration discount

• Stupendous Hobbyist Exhibits

• Tours and Evening Activities

• Club Hospitality Suites

• Special Club Meetings

• Fabulous ProgramsSpecial events to feature:

•k Tours of automotive facilities* Saturday evening Detroit/Canada river cruise

Manufacturer's PartyTechnical SessionsGiant Flea MarketNew Product DisplaysSeminars in computerapplications for:Education, Business systems,Computers for the Handicapped,Graphics/Art, Automotive,Hobbyist, New Technology.

Limited exhibit space is available!

For convention booths contact:Mr. Jim Rams - ChairpersonComputerfest" '78Box 9578 - Department PATDetroit, Michigan 48202 U.S.A.or call 24 hours (313) 775-5320

For convention advertising contact:

Mr. Ken Ascher-Advertising Director

c/o Communications Electronics'"

Box 1002 - Department DON

Ann Arbor, Michigan, 48106 U.S.A.

24 hour Advertising phone (313) 994-4441

Mail this coupon and make yourcheck payable to:

SEMCO/Computerfest'" '78Box 9578 - Department ERICDetroit, Michigan 48202 U.S.A.

□ send me advance tickets at $4.00 each

□ please put me on your mailing list

□ send me more Computerfest™ information

□ send information on special hotel rates

□ please send exhibitors information

□ please send advertising information

1 978 South Eastern Michigan Computer Orginization

152 BYTE June 1978

Circle 203 on inquiry card.

William Hemsath

Dept of Psychology

Uris Hall, Cornell University

Ithaca NY 14853

James SeawrightVisual Arts ProgramPrinceton UniversityPrinceton NJ 08540

A Theatrical Lighting

Emmanuel Ghent

131 Prince St

New York NY 10012

Mimi Garrard

Mimi Garrard Dance Co Inc

155 Wooster St

New York NY 10012

Graphics Package

We recently developed an 8080 basedcomposition and control system for theatri-cal lighting. This led us to the need for a wayof displaying several time functions at oncefor examination and editing. Our systemalready made use of the Processor Technol-ogy VDM-1 display module, but the existingcharacter set made it necessary to devote theentire screen to the display of one functionin order to have useful resolution. Severalfunctions could of course be superimposed,but this was awkward to program and leftmuch to be desired in visual clarity.

Our first thought was to obtain a specialread only memory integrated circuit toreplace the control characters in the ASCIIset with special characters consisting of asingle scan line each, but the expense of thisapproach seemed impractical. Still, theimprovement in resolution with such acharacter set was just what we needed, so welooked for other ways to modify the VDM-1circuitry to achieve this; the results aredetailed below.

Photo 1 shows our modified terminalwith a typical display. Six functions of timeare shown, each representing the brightnessof a group of theatrical lights over a 5second time span. The brightness values arestored in memory as full 8 bit values and arescaled to the 26 possible display values. Twoadjacent rows of 13 scan lines each make upthe 26 line display for each function. Acursor indicates current time. The varioustiming marks, channel designations, cursortime value, etc, show that the normal textdisplay mode of the VDM-1 is unimpaired.

Photos 2a and 2b show a comparisonbetween two variations of the basic display.Photo 2a shows the straight graphic modewith the cursor at a point in time and thevalue at that point shown in reverse video.

Photo I: The authors' theatre lighting control graphics package in action.Six functions of time are shown displayed on a Processor Technology VDM-1video display. Each function represents the brightness of a group of theatricallights over a 5 second time span.

About The Authors

William Hemsath was formerly chief of electronic design with RobertMoog's music synthesizer company and is presently a design engineer andsoftware specialist with Cornell University's Department of Psychology.James Seawright is Director of Visual Arts at Princeton University as well asthe creator of electronically controlled sculpture. His wife Mimi Garrard hasstudied with A/win Nikolais and is currently head of the Mimi Garrard DanceCompany, a well known New York dance ensemble. She has been active inthe design of new types of theatre lighting systems. Emmanuel Ghent is acomposer in residence at Bell Labs and exponent of the GROOVE system, acomputer driven electronic music studio, developed by Bell Labs.

June 1978 ©BYTE Publications Inc

153

(a)

(b)

Photos 2a and 2b: Twovariations of the basic dis-play. Photo 2a shows the■straight graphics modewith the cursor at a pointin time and the value atthat point shown in re-verse video. Photo 2bshows the numeric modein which the cursor isreplaced by the numericalvalue of the lightingintensity.

Photo 3: Installation of the authors' custom modification to the VDM-1board. A small strip of breadboard containing the circuitry in figure 2 ismounted with spacers on the back of the VDM-1 board.

Photo 2b shows the numeric mode in whichthe cursor is replaced by a block containingthe actual stored value from 0 to 255 forgreater accuracy in reading or editing.

Before considering the modifications indetail, let's take a look at the operation ofthe VDM-1, referring to the partial sche-matic shown in figure 1. Character genera-tion is accomplished as follows: Charactersin the current line of the display are fetchedin sequence from the screen memory andlatched in two 4 bit registers, IC5 and IC6. Ascan divider, IC2, counts through the 13scan line values of each text line. These twosets of data are presented to the charactergenerator read only memory, IC4, whichoutputs the correct pattern of seven dots foreach scan line of every character. This pat-tern is parallel loaded into a shift register,IC3, when clocked by LOAD CLOCK, andclocked out serially by DOT CLOCK as thevideo output signal. Various gates andlatches provide for blanking of certain char-acters or cursor blinking.

Since we didn't want to impair the nor-mal display of letters, numbers, or fre-quently used punctuation marks, we decidedto use the control characters to override theoperation of the shift register and to supplya single line of dots, only once in the genera-tion of a given character and on the scan linewe want. One way of doing this is shown infigure 2. A new 7485 4 bit comparator(ICA) looks for agreement between the loworder bits of a character and the current scanline value. In order to limit this to controlcharacters only, IC11, the control character

154

June 1978 © BYTE Publications Inc

CHARACTERS FROM SCREEN MEMORY

CURSORBIT

SCANDIVIDE

IC274LSI63

<?000

V

g g o g

LOADCLOCK

g

IC574LSI75

IC6

74LSI75

CHARACTERLATCH

CHARACTERDECODE

J ICI4^0-

A6 A5 A4

RS RS RS RS0 12 3

A3 A2 Al A0

IC4 (ROM)

D D D D D D D6 5 4 3 2 I t

21 22 23 24

SHIFTREGISTER

+ 5VA

SW6

IC374166

S LOAD Q CLR CLK

I

BLINKLATCH

BLINK | v.

IN I ^~

^» 1 CLOC

-</ ICI5

<r'

JlCI4^0-

E>

I v. TO BLANKING GA

I ■* AND VIDEO OUT

Figure I: Partial schematic of the Processor Technology VDM-I video display driver circuitry.Character generation is done by fetching the characters in the current line of the display insequence from the screen memory in the form of 8 bit ASCII characters and latching them intotwo 4 bit registers, IC5 and ICG. This data and the scan line data from IC2 are presented tocharacter generator IC4, a read only memory circuit. The latter outputs the correct pattern ofseven dots for each scan line of every character; this information is routed through shift registerIC3 to become the video output signal.

decoder, is modified to force a low state onthe 0 output whenever the control characterdetector gate output goes high. (Controlcharacter blanking must be enabled withswitch 6.) This modification will disable theautomatic blanking from carriage return(CR) to end of line and from vertical tab(VT) to end of page, but if you're writingyour own software this won't matter. Next,the control-character-low signal is invertedto enable the equals input of the 7485, andis ANDed with LOAD CLOCK in order todisable the shift register load when controlcharacters are present. The comparator out-put supplies either a low (control character

present, but not the one for the scan linewhere we are now) or a high (control charac-ter present and the right one for this scanline) to the serial input of the shift register.The video output will then appear as a blankor a line of dots, accordingly, when clockedout by DOT CLOCK. (The first circuit modi-fication we tried fed the output of the com-parator directly into the video line. Thisallowed the single scan line character toappear one character position too early. Bysending the signal through the shift registerit is delayed by one character position andappears in its proper place in the display.)The shift register serial input is normally

June 1978 © BYTE Publications Inc 155

ADD GROUND

Power Wiri

i(| Table

Number

Type

+ 5 VPin

GndPin

ICAICB

71857402

1614

87

aw^

x

RS3R52

X CUT TRACE

CONNECT PIN 10,TO PIN 9 -^

III |l0 9

Figure 2: Modification to the VDM-i circuitry enabling the software togenerate single lines of dots when required for the theatre light controlgraphics package. The special display consists of two sets of adjacent parallellines totalling 26 lines used to display lighting intensities as functions of time.Control characters are used to activate the new circuitry and produce a singleline of dots only once in the generation of a given character and on the de-sired scan line. The new 7485 comparator (ICA) compares the low orderbits of a character with the current scan line value and supplies either a lowlogic level output (indicating that a control character is present, but not theone for the current scan line), or a high level (control character presentwhich is the correct one for the present scan line). The video output then ap-pears as a blank line or a line of dots, respectively. Normal operation of theVDM-I is not affected by these modifications.

low, grounded in the unmodified VDM-'I.When we don't have control characters inthe character latch it will still be low, andLOAD CLOCK will get through to parallelload the shift register with the read onlymemory output, for normal text display.

The additional circuitry may be mountedon a small strip of breadboard and attachedby spacers to the back of the board, asshown in photo 3. Between the first andsecond columns of ICs near the top of theboard, just above the read only memorysocket, are several small areas where groundis on one side and no traces on the other.Small holes for spacers may carefully bedrilled at this location.

MOV

L,A

MVI

H,0

DAD

H

LXI

D,TABLE

DAD

D

MOV

A,M

STAX

a

INX

H

MOV

A,M

LXI

H,64.

DAD

B

MOV

M,A

RET

;THE A REGISTER CONTAINS THE NUMBER OF THE LINE TO BE DISPLAYED;THE BC REGISTER PAIR POINTS TO THE UPPER CHARACTER POSTION

HL CONTAINS LINE NUMBER

TABLE CONTAINS DOUBLE BYTES

GET ADDRESS OF LOOKUP TABLE

HL POINTS TO ENTRY IN TABLE

GET FIRST CONTROL CHARACTER

PUT IN THE UPPER CHARACTER POSITION

POINT TO SECOND CONTROL CHARACTER

GET IT

LOWER CHARACTER POSITION IS

64 CHARACTERS BEYOND UPPER ONE

STORE LOWER CHARACTER

THE FIRST ENTRY IN THE TABLE IS THE CONTROL CHARACTER FOR THEUPPER CHARACTER POSITION IN THE DISPLAY. THE SECOND ENTRY ISFOR THE LOWER POSITION.

'ABLE; DB 01H.04H ;BOTTOM LINE (01 IS BLANK)

DB 01H.05H

DB 01H.06H

DB 0lH,07H

DB 01H.08H

DB 01H,09H

DB 01H.OAH

□B 01H.0BH

DB 01H,OCH

DB 01H.0DH

DB 01H,0EH

DB 01H,0FH

DB 01H.00H

DB 04H.01H

DB 05H.01H

DB 06H,01H

DB 07H.01H

DB 0BH.01H

DB 09H.01H

DB 0AH,01H

DB 0BH,01H

DB OCH,01H

DB 0DH.01H

DB OEH.OlH

DB OFH.01H

DB 00H.01H ;TOP LINE

Listing 1: Display software used with thetheatricai lighting graphics package. TABLEis a lookup table containing 26 pairs ofcontrol characters that turn on the properline in a vertical pair of character positions.

Programming

The scan divider starts with a count of 0(top line of character) and counts down (0,F, E, etc), until it reaches a count of 4(bottom line of character). It is then resetand counts down again for the next text lineof characters. This means that characters 01,02, and 03 will never appear as bars on thedisplay since the scan counter never gener-ates these codes and the comparator cannever detect them. Character 04 will light upthe bottom line in a character position.Character 05 will light up the next line up,and so on. Character OF will light up the linebelow the top line, and 00 the top line.

In our display software we use a lookuptable containing 26 pairs of control charac-ters to turn on the proper line in a verticalpair of character positions (note that thelower character position is 64 locations afterthe upper character position). Listing 1shows the display routine we use. ■

1 56 June 1978 © BYTE Publications Inc

Circle 143 on inquiry card.

SAVE THE WHALE

The world's best computer may be inside a Sperm Whale's head.

The Sperm Whale has the largest brain of any creature that has ever existedon our planet. The brain of this 18-meter marine mammal weighs up to 9 kilograms.It uses echo-location to find giant squid at ocean depths of over 1,000 meters.More than 13,000 sperm whales are scheduled to be slaughtered this yearby agreement of the International Whaling Commission.

The CONNECTICUT CETACEAN SOCIETY is a small, totally volunteer,non-profit education and conservation organization dedicatedto seeking the abolition of all whale killing. Anyconcerned citizen can help our efforts by sendingname and address and a $10 or more contribution to :CCS, P.O. Box 145, Wethersfield, CT 06109.

There are two mountain peaksof evolution on planet earth:on the land, homo sapiens-human beings; in the sea,cetaceans- whales, dolphins,and porpoises.

Drawing fcyDon Stneti

Spring into Seasonwith a BYTE T-shirt

At last! No more wardrobe crises! BYTE T-shirts are here!Now you have the perfect garb for computer club meetings,Altair Conventions, playing Shooting Stars and computerchess. (A pair of trousers from your own closet is suggestedas an addition to the BYTE T-shirt. BITS can't do every-thing for you.)

BYTE T-shirts are of top quality 10 0% cotton or cotton-polyester. The original design, by artist Judy Lee Rehling, issilk-screened in red on white shirts with blue trim on collarsand sleeves, or on blue heather shirts.

BITS, Inc.70 Main St.Peterborough NH 03458

Please send me

Dial charge card orders toll free 1-800-258-5477.

extra large

large

medium

small

Total enclosed $

Bill MasterCharge No

Bill BankAmericard No..Name

Address-City

.blue heather. white with blue trimand red letters

T-shirts @S5.50 each(includes postage andhandling).

Exp. Date

Exp. Date

_State_

-Zip-

Signature.I

In unusual cases, processing may exceed 3 0 days.Prices shown are subject to change without notice.

Circle 35 on inquiry card.

BYTE June 1978 157

GRAPH:

A System for Television Graphics

Part 2

John Webster

John Young

Audio Visual Services

University of New Brunswick

Keirstead Hall

Fredericton NB CANADA E3B 5A3

Last month, John Webster and John Young's article (page 62) onGRAPH, a television graphics package for the VDM-1 and other memorymapped video displays, began a discussion which we continue with thedetail discussion of program functions. Listing 1 provides the detail 8080code for the program. We continue the table numbering sequence begunin part 7'.

Listing I: The GRAPHprogram. GRAPH was as-sembled at 00 using Proc-essor Technology's ALS-8assembler. The notation$ + n indicates a displace-ment of n beyond the nextinstruction address. Forexample, J MP $ + 5 indi-cates an unconditionaljump to the address 6bytes along in the listing.Listing 1 continues onpages J 59 thru 163.

GRAPH ASSEMBLY LISTING

ADDRESS

HEX CODE

LINE 0

0000

C3 9D 02

0001 START JMP INIT

• HOME '

0003

21 00 CC

0002 HOME LXI H,OCCO0H

* CURSOR "

0006

IE

0003 CURSOR MOV CM

0007

3A FB 03

0001

LDA 03FBH

000A

31

0005

ADDC

000B

77

0006

NOV M,A

oooc

3A F5 03

0007

LDA 03F5H

000F

B7

0008

0RA A

0010

C2 81 02

• STATIN "

0009

JHZ REPT

0013

DB 00

0010 STATIN IN 00

0015

E6 10

0011

ANI 010H

0017

CA 13 00

• DATIN •

0012

JZ STATIN

001A

DB 01

0013 DATIN IN 01H

001C

17

0011

MOV B,A

001D

3A F6 03

0015

LDA 03F6H

0020

B0

0016

ORA B

0021

17

0017

nov B,A

0022

C3 C5 02

• DISPLAY '

0018

JHP CTRLC

0025

70

0019 DISP H0V M,B

0026

3A F7 03

0020

LDA 03F7H

0029

B7

0021

ORA A

002A

C2 3A 00

0022

JNZ LFP

002D

23

0023

[NX H

002E

3E DO

0021

MVI A,OD0H

0030

BC

0025

CMP H

0031

CA 03 00

0026

JZ HOME

0031

C3 06 00

" LINEFEED •

0027

JMP CURSOR

0037

0E A0

0028

LFC MVI C0A0H

0039

71

0029

LF MOV rU

003A

11 10 00

0030

LFP LXI D,010H

003D

19

0031

DAD D

003E

3E DO

0032

MVI A,0D0H

0010

BC

0033

CMP H

0011

C2 16 00

0031

JNZ $+2

0011

26 CC

0035

MVI H,0CCH

0016

C3 06 00

• LINE RETREAT

0036

JHP CURSOR

0019

0E A0

0037

LRC MVI C0A0H

001B

71

0033

LR H0V H,C

001C

11 CO FF

0039

LRP LXI D,0FFC0H

001F

19

0010

DAD D

0050

3E CB

0011

m A.0CBH

Page Up

Page Up, Page Down, Page Right and PageLeft are some of the more complex sub-routines in GRAPH.

Although the VDM-1 contains a scrollingfeature which might, at first, seem useful formoving screen information up and down, itoperates by changing the orientation of thedisplay on the screen and not by actuallymoving data in memory. If, for example, thescreen were scrolled halfway up or down, acharacter entered at hexadecimal CCOOwould appear in the middle and not at thetop. While this is a useful function in somedriver applications, it does not allow infor-mation to be moved up or down on thescreen and then stored away in its final con-figuration. Thus, to use GRAPH'S store andrecall functions properly, it is necessary toactually move data between memory loca-tions within the 1 K byte screen program-mable memory so that an image modified bya screen move up or down will be stored andrecalled in its modified form. This functionis useful for positioning complex drawingsor charts which invariably turn out to beslightly off center when complete.

As in most other routines, Page Up firstmoves the contents of C to the present char-acter position, thereby returning the screento its original state and freeing register C foruse. The contents of H and L are stored athexadecimal locations 3FF and 3FE forfuture use. Because our program is designed

158

|unc 1978 ©BYTE Publications Inc

to co-reside with Processor Technology'sALS-8, and because this subroutine uses thestack pointer register, it is necessary to savethe value of the stack pointer to allow a laterjump back to the ALS-8. This probablyapplies to other resident monitors, too.

To accomplish this, H and L are loadedwith hexadecimal 0000, the Stack Pointer isadded to H and L (SPHL), and H and L arestored (SHLD) at hexadecimal memory loca-tions 3FD and 3FC.

H and L are then initialized to hexadeci-mal CC00, D and E to hexadecimal 3C0, andthe Stack Pointer to hexadecimal FFCO. Thecurrent character position is then hexadeci-mal CC00. Next, the program moves M to B(move contents of hexadecimal locationCC00 to B) and adds D and E to H and L.Thus H and L becomes CC00 + 3C0 = hexa-decimal CFCO and this takes us to the firstcharacter position in the 16th line. (In PageUp and Page Down, information is moved onthe screen by working in vertical rows ratherthan horizontal lines.)

The data in hexadecimal location CFCO ismoved to C, and B (old contents of hexa-decimal CC00) is moved to M (hexadecimalposition CFCO). This causes a wrap aroundfrom top to bottom. The contents of C arethen moved to B and the Stack Pointer isadded to H and L (CFCO + FFCO = hexa-decimal CF80). At this point we compare Hwith hexadecimal CC to see if we are on oneof the first four lines. If not (as in this case),we go through the cycle again: MOV M -*C,MOV B r* M, MOV C-»B, and jump up oneline by adding the Stack Pointer.

On the 13th cycle, H becomes hexadeci-mal CC. When H is compared with hexa-decimal CC, the answer is zero so the cycleis not immediately repeated as before. In-stead, L is compared with hexadecimal 3F,the last character position on the first line(hexadecimal CC3F). If L is greater thanhexadecimal 3F the current position is ineither line 2, 3 or 4. The cycle continues,checking L every time, since H is still hexa-decimal CC.

If the current position is in line 4, thenon the next cycle it will be in line 3, thenline 2, and finally in line 1. At that point,when L is checked as described above, it willbe less than hexadecimal 3F. Next, B ismoved to M (which in this example will nowbe hexadecimal CC00). The entire verticalrow has now been shifted up, with the topwrapping around to the bottom. Finally,H and L are incremented (to hexadecimalCC01), and the entire process is repeated forrow 2. This is done 64 times, once for eachvertical row.

On the last (ie: right-hand) row, however,when L is compared to hexadecimal 3F, it

ADDRESS

HEX C0DF

LINE »

0052

BC

0012

CMP H

0053

C2 58 00

0013

JNZ $+2

0056

26 CF

0011

MVI H,0CFH

no58

C3 06 00

• BACKSPACE •

0015

JMP CURSOR

005B

0E A0

0016 BSC MVI C0A0H

005D

71

0017 BS MOV H,C

005E

2B

0018 BSP DCX H

005F

3E CB

0019

MVI A.0CBH

0061

BC

0050

CMP H

0062

C2 67 00

0051

JNZ $+2

0065

26 CF

0052

MVI H,0CFH

0067

C3 06 00

•FORWARD SPACE *

0053

JMP CURSOR

006A

0E A0

0051

FSC MVI C0AOH

006C

71

0055 FS MOV M,C

006D

23

0056 FSP I NX H

006E

7C

0057

H0V A,H

006F

FE DO

0058

CPI 0D0H

0071

CA 03 00

0059

JZ HOME

0071

C3 06 00

" CRLF "

0060

JMP CURSOR

0077

71

0061

CR MOV M,C

0078

7D

0062

MOV A,L

0079

FE 10

0063

CPI 010H

007B

D2 83 00

0061

JNC $+5

007E

2E 10

0065

MVI L,010H

0080

C3 9C 00

0066

JMP OUT

0083

7D

0067

MOV A,L

0081

FE 80

0068

CPI 080H

0086

F2 8E 00

0069

JP $+5

0089

2E 80

0070

MVI L.080H

008B

C3 9C 00

0071

JMP OUT

008E

7D

0072

MOV A A

008F

FE CO

0073

CPI 0C0H

0091

F2 99 00

0071

JP $+5

0091

2E CO

0075

MVI L,0COH

0096

C3 9C 00

0076

JMP OUT

0099

21

0077

1NR H

009A

2E 00

0078

MVI L,0O

009C

3E DO

0079 OUT MVI A.0D0H

009E

BC

0080

CMP H

009F

C2 06 00

0081

JNZ CURSOR

00A2

C3 03 00

* PAGE UP "

0082

JMP HOME

00A5

71

0083 PU MOV H,C

00A6

22 FE 03

0081

SHLD 03FEII

00A9

21 00 00

0085

LXI H,00

00AC

39

0086

DAD 6

00AD

22 FC 03

0087

SHLD 03FCH

00B0

21 00 CC

0088

LXI H,0CC00H

00B3

11 CO 03

0089

LXI D.03COH

00B6

31 CO FF

0090

LXI 6,0FFCOH

00B9

16

0091

R0HU MOV B,M

00BA

19

0092

DAD D

00BB

IE

0093

LINEU MOV CM

00BC

70

0091

MOV M,B

00BD

11

0095

MOV B,C

00BE

39

0096

DAD 6

00BF

3E CC

0097

MVI A.0CCH

O0C1

BC

0098

CMP H

00C2

C2 BB 00

0099

JNZ LINEU

00C5

3E 3F

0100

MVI A,03FH

00C7

BD

0101

CMP L

00C8

DA BB 00

0102

JC LINEU

00CB

CA D3 00

0103

JZ ENDU

00CE

70

0101

MOV M,B

00CF

23

0105

INX H

00D0

C3 B9 00

0106

JMP R0UU

00D3

70

0107 ENDU MOV M,B

00D1

2A FC 03

0108

LHLU 03FCH

00B7

F9

0109

SPHL

00D8

2A FE 03

0110

LHLD 03FEH

00DB

C3 1C 00

• PAGE DOWN '

0111

JMP LRP

OODE

71

0112

PD MOV M,C

00DF

22 FE 03

0113

SHLD 03FEH

00E2

21 00 00

0111

LXI H,00

00E5

39

0115

DAD 6

00E6

22 FC 03

0116

SHLD 03FCH

00E9

21 FF CF

0117

LXI H,0CFFFH

00EC

11 10 FC

0118

LXI D,0FC10H

00EF

31 10 00

0119

LXI 6,010H

00F2

16

0120 ROHD MOV B,M

00F3

19

0121

DAD D

00FA

IE

0122 LINED H0V CM

00F5

70

0123

MOV M,B

00F6

11

0121

MOV B,C

00F7

39

0125

DAD 6

00F8

3E CF

0126

MVI A,0CFH

00FA

BC

0127

CMP H

00FB

C2 F1 00

0128

JNZ LINED

00FE

3E CO

0129

MVI A,DC0H

0100

BD

0130

CMP L

June 1978 ©BYTE Publications luc 159

will be greater than hexadecimal 3F forthree cycles, as above, but on the fourthcompare it will be exactly hexadecimal 3F,instead of less, as before.

At this point the program moves B to M(hexadecimal CC3F), loads H and L with thevalue at hexadecimal locations 3FD and3FC, and exchanges it with the contents ofthe stack pointer to restore the stack pointeraddress.

Then, H and L are loaded with the con-tents of hexadecimal locations 3FF and3FE, which contain the values of H and Lbefore Page Up was executed (ie: the addressof the leading cursor before the page wasmoved up). Operation then jumps to a sec-tion of the Line Retract subroutine (LRP)which moves the cursor up one line to re-store its relative position on the screen.From Line Retract, operation returns toCURSOR.

Page Down

Page Down works the same as Page Upexcept that it starts at the lower right-handposition, hexadecimal location CFFF. Itthen moves up to hexadecimal locationCC3F, or the upper right-hand corner, byadding D and E (hexadecimal locationFC40). Then the MOVE cycle begins,moving information down vertical rows andfinally arriving at the lower left-hand corner.

To restore the leading cursor to its rela-tive screen position, the program jumps to asection of Linefeed (LFP) upon terminationof Page Down. As explained above, Linefeedends with a jump to CURSOR.

Page Left

Page Left commences in the same way asthe preceding two subroutines by moving Cto M, saving H and L at hexadecimal loca-tions 3FF and 3FE, and saving the stackpointer value at hexadecimal locations 3FDand 3FC.

It then loads the stack pointer with hexa-decimal FFC1 (the value needed to moveleft one line length), D and E with hexadeci-mal 3F (the value needed to move right oneline length), and H and L with hexadecimalCFCO (the address of the lower left-handcorner position).

The cycle begins by storing the contentsof hexadecimal location CFCO in register B,and adds D and E to H and L moving thepresent position to lower right-hand corner(hexadecimal location CFFF). It then movesthe contents of this location to register C,moves the contents of B to this location, andmoves C to B, the same procedure as thatfound in the Page Up and Page Down sub-routines.

ADDRESS

HEX CODE

LINE »

0101

CA 0C 01

0131

JZ ENDD

0101

02 F1 00

0132

JNC LINED

0107

70

0133

MOV M,B

0108

2B

0131

DCX H

0109

C3 F2 00

0135

JMP R0WD

010C

70

0136 ENDD H0V liB

010D

2A FC 03

0137

LHLD 03FCH

0110

F9

0138

SPHL

0111

2A FE 03

0139

LHLD 03FEH

0111

C3 3A 00

* PAGE LEFT *

0110

JMP LFP

0117

71

0111 PL NOV M,C

0118

22 FE 03

0112

SHLD 03FEH

011B

21 00 00

0113

LXI H,00

011E

39

0111

DAD 6

011F

22 FC 03

0115

SHLD 03FCH

0122

31 CI FF

0116

LXI 6,0FFC1H

0125

11 3F 00

0117

LXI D,03FH

0128

21 CO CF

0118

LXI H,0CFC0H

012B

16

0119 LINEL H0V B,M

012C

19

0150

DAD D

012D

IE

0151 BGNL MOV U'l

012E

70

0152

MOV M,B

012F

11

0153

MOV B,C

0130

2B

0151

DCX H

0131

3E CB

0155

MVI A,0CBH

0133

BC

0156

CMP H

0131

CA 52 01

0157

JZ ENDL

0137

3E 3F

0158

MVI A,03FH

0139

BD

0159

CMP L

013A

CA 75 01

0160

JZ NEXTL

013D

3E 7F

0161

MVI A,07FH

013F

BD

0162

CMP L

0110

CA 75 01

0163

JZ NEXTL

0113

3E BF

0161

MVI A,0BFH

0115

BD

0165

CMP L

0116

CA 75 01

0166

JZ NEXTL

0119

3E FF

0167

MVI A,0FFH

011B

BD

0168

CMP L

one

CA 75 01

0169

JZ NEXTL

011F

C3 2D 01

0170

JMP BGNL

0152

2A FC 03

0171 EHDL LHLD 03FCH

0155

F9

0172

SPHL

0156

2A FE 03

0173

LHLD 03FEH

0159

7D

0171

MOV A,L

015A

FE 00

0175

CPI 00

015C

CA 71 01

0176

JZ FIXL

015F

FE 10

0177

CPI 010H

0161

CA 71 01

0178

JZ FIXL

0161

FE 80

0179

CPI 080H

0166

CA 71 01

0180

JZ FIXL

0169

FE CO

0181

CPI 0COH

016B

CA 71 01

0182

JZ FIXL

016E

C3 5E 00

0183

JMP BSP

0171

19

0181 F1XL DAD D

0172

C3 06 00

0185

JMP C0RSOR

0175

39

0186 NEXTL DAD 6

0176

C3 2B 01

• PAGE RIGHT *

0187

JMP LINEL

0179

71

0188 PR H0V M,C

017A

22 FE 03

0189

SHLD 03FEH

017D

21 00 00

0190

LXI H,00

0180

39

0191

DAD 6

0181

22 FC 03

0192

SHLD 03FCH

0181

31 3F 00

0193

LXI 6,03FH

0187

21 3F CC

0191

LXI H,0CC3FH

018A

11 CI FF

0195

LXI D.0FFC1H

018D

16

0196 LINER MOV B,M

018E

19

0197

DAD D

018F

IE

019S

BGNR MOV CM

0190

70

0199

MOV M,B

0191

11

0200

MOV B,C

0192

23

0201

INX H

0193

3E DO

0202

MVI A,0D0H

0195

BC

0203

CMP H

0196

CA B3 01

0201

JZ ENDR

0199

AF

0205

XRA A

019A

BD

0206

CMP L

019B

CA D6 01

0207

JZ NEXTR

019E

3E 10

0208

MVI A,010H

01A0

BD

0209

CMP L

01A1

CA D6 01

0210

JZ NEXTR

01A1

3E 80

0211

MVI A,080H

B1A6

BD

0212

CMP L

01A7

CA D6 01

0213

JZ NEXTR

01AA

3E CO

0211

MVI A,0C0H

01AC

BD

0215

CMP L

01AD

CA D6 01

0216

JZ NEXTR

01B0

C3 8F 01

0217

JMP BGNR

01B3

2A FC 03

0218 ENDR LHLD 03FCH

01B6

F9

0219

SPHL

01B7

2A FE 03

0220

LHLD 03FEH

01BA

7D

0221

MOV A,I

01BB

FE3F

0222

CPI 03FH

160

lime 1978 © BYTE Publications Inc

Next, it decrements H and L and com-pares H with hexadecimal CB to determine ifthis new value is still on the screen. When itis not, the operation is complete and thesubroutine exists as explained later. However,if the new value is on the screen, L is com-pared with the hexadecimal values 3F, 7F,BF and FF, consecutively, to determine ifthe present cursor position is a right-handend of a line. If not, the cycle is repeatedby moving the contents of the line, spaceby space, to the left until the current char-acter position becomes one of the abovementioned right-hand end of line positions.This will mean that we have decremented(moved left) all the way through our presentline, and then decremented once more,moving up to the right-hand end of the lineabove. When a right-hand end of the line isfound, the subroutine adds the Stack Pointercontents (hexadecimal FFC1) to H and L,having the effect of moving the current char-acter position to the left-hand end of thenew line. The value at this location is storedin B; D and E are added to H and L as be-fore, and the cycle continues, moving line byline to the left one space at a time.

After the last screen memory location hasbeen transferred, the decrement changes Hfrom hexadecimal CC to CB. When thiscondition is sensed by an appropriate check,the program jumps out of the cycle. At thispoint, the subroutine restores the values ofH and L and the Stack Pointer. H and L nowcontain the address of the leading cursorposition before Page Left was executed. Thecursor, in order to maintain its relativescreen position, must now also be moved tothe left.

Part of the complexity of the aboveprogram comes from the fact that it wasdesigned so that characters disappearing offthe left-hand side of the screen reappear onthe right-hand side and on the same line thatthey were on, rather than on the next lineup, as in the case of a simple decrement/moveloop.

If the new leading cursor position ismoved to the left off the screen, it shouldappear on the right-hand end of the sameline. Hence, knowing the pre-"Page Left"value of the cursor, it is not sufficient tosimply decrement it, since if the cursor ison the left-hand end of a line, it wouldappear on the right-hand end of the next lineup, and its position would no longer berelative. To avoid this, the subroutine checksto see if the old leading cursor position isone of the four left end values (hexadecimal00, 40, 80, or CO) and if it is, then Dand E are added to this value in H and L andthis simply shifts the cursor position to theright-hand end of the same line. The pro-

ADDRESS

HEX CODE

LINE #

01BD

CA D2 01

0223 J7 FIXR

01CO

FE 7F

0221 CPI 07FH

01C2

CA D2 01

0225 JZ FIXR

01C5

FE BF

0226 CPI 0BFH

01C7

CA D2 01

0227 JZ FIXR

01CA

FE FF

0228 CPI 0FFH

01CC

CA D2 01

0229 JZ FIXR

01CF

C3 6D 00

0230 JMP FSP

01D2

19

0231 FIXR DAD D

01D3

C3 06 00

0232 JHP CURSOR

01D6

39

0233 NEXTR DAD 6

01D7

C3 8D 01

• PAGE STORE "

0231 JMP LINER

01DA

22 F9 03

0235 PAGER SHLD 03F9H

01DD

71

0236 MOV H,C

01DE

21 00 CC

0237 LXI H,0CC00H

01 El

06 DO

0238 MVI B,0D0H

01E3

IE 00

0239 MVI E,00

01E5

3A F8 03

0210 LDA 03F8H

01E8

FE 00

0211 CPI 00

01EA

CA 2E 02

0212 JZ ONE

01ED

FE 01

0213 CPI 01H

01EF

CA 33 02

0211 JZ TWO

01F2

FE 02

0215 CPI 02H

01F1

CA 38 02

0216 JZ THREE

01F7

FE 03

0217 CPI 03H

01F9

CA 3D 02

0218 JZ FOUR

01FC

FE 01

0219 CPI 01H

01FE

CA 12 02

0250 JZ FIVE

0201

16 1C

0251 MVI D,01CH

0203

7E

0252 M0V1 MOV A,M

0201

12

0253 STAX D

0205

23

0251 I NX H

0206

13

0255 I NX D

0207

7C

0256 MOV A,H

0208

B8

0257 CMP B

0209

C2 03 02

0258 JNZ M0V1

020C

3A F8 03

0259 LDA 03F8H

020F

3C

0260 INR A

0210

FE 06

0261 CPI 06H

0212

CA 18 02

0262 JZ RESET

0215

C3 1A 02

0263 JMP PLUG

0218

3E 00

0261 RESET MVI A,00

021A

32 FS 03

0265 PLUG STA 03F8H

021D

2A F9 03

0266 LHLD 03F9H

0220

IE

0267 MOV CM

0221

3E CC

0268 MVI A,0CCH

0223

32 FA 03

0269 STA 03FAH

0226

3E 00

0270 MVI A,00

0228

32 F9 03

0271 STA 03F9H

022B

C3 13 00

0272 JMP STATIN

022E

16 08

0273 ONE MVI D,08H

0230

C3 03 02

0271 JMP M0V1

0233

16 0C

0275 TWO MVI D,0CH

0235

C3 03 02

0276 JHP M0V1

0238

16 10

0277 THREE MVI D.010H

023A

C3 03 02

0278 JMP M0V1

023D

16 11

0279 FOUR MVI M11H

023F

C3 03 02

0280 JHP H0V1

0212

16 18

0281 FIVE MVI D,018H

0211

C3 03 02

• PAGE RECALL ■

0282 JMP M0V1

0217

21 00 08

0283 RCL1 LXI H,0800H

021A

06 0C

0281 MVI B,0CH

021C

11 00 CC

0285 LDPX LXI D,0CC00H

021F

3A F8 03

0286 LDA 03F8H

0252

3D

0287 DCR A

0253

32 F8 03

0238 STA 03F8H

0256

C3 03 02

0289 JMP M0V1

0259

21 00 0C

0290 RCL2 LXI H,0C00H

025C

06 10

0291 MVI B,010H

02 5E

C3 1C 02

0292 JMP LDPX

0261

21 00 10

0293 RCL3 LXI H,01000H

0261

06 11

0291 MVI B,011H

0266

C3 1C 02

0295 JHP LDPX

0269

21 00 11

0296 RCL1 LXI H,01100H

026C

06 18

0297 MVI B,018H

026E

C3 1C 02

0298 JMP LDPX

0271

21 00 18

0299 RCL5 LXI H,01800H

0271

06 1C

0300 MVI B,01CH

0276

C5 1C 02

0301 JHP LDPX

0279

21 00 1C

0302 RCL6 LXI H.01C00H

027C

06 20

0303 HVI B.020H

027E

C3 1C 02

* REPEAT DELAY *

0301 JMP LDPX

0281

11 FF 10

0305 REPT LXI D,010FFH

0281

ID

0306 LOOK DCR E

0285

C2 81 02

0307 JNZ LOOK

0288

15

0308 DCR D

0289

C2 81 02

0309 JNZ LOOK

028C

DB 00

0310 IN 00

028E

E6 10

0311 AN I 010H

0290

CA 1A 00

0312 JZ DAT IN

0293

DB 01

0313 IN 01H

June 1978©BYTE Publications Inc 161

gram then jumps to CURSOR. If it is not aleft-hand end of line position, programoperation jumps to a section of the Back-space subroutine which moves the cursorto the left one space, and displays it on thescreen.

Page Right

Page Right is similar to Page Left in pro-gram structure. The Stack Pointer is loadedwith hexadecimal with 03F to move fromthe left to the right-hand end of a line. TheD and E pair are loaded with hexadecimalFFC1, to move from the right to the left-hand end of a line, and H and L are loadedwith a starting value of hexadecimal CC3Fwhich is the upper right-hand corner of thescreen.

Operation causes the H and L value toshift from upper right-hand to upper left-hand by adding D and E, then simple incre-ment loops move operations to the rightstep-by-step. The Stack Pointer is used tomove from the left to the right-hand sidewhenever a left-hand end of line is en-countered.

This subroutine uses all registers in thesame way as Page Left except that they areloaded with different values necessary tomove characters to the right. In finishingthis subroutine, the old leading cursor posi-tion is checked for a right-hand end of linevalue and, if true, this value is changed to aleft-hand end of the line value, again byadding D and E and jumping to CURSOR asin Page Left. If the old leading cursor posi-tion is not at the end of a line, the programoperation jumps to a section of ForwardSpace which moves the cursor to the rightone space and displays it, while maintainingits relative position.

Page Store

Page Store is a memory block programwhich moves the present contents of thescreen to one of several allocated memorysectors. This process duplicates screen infor-mation somewhere else in memory for lateruse without destroying the present screeninformation.

Page Store and Recall require an addi-tional 6 K bytes of programmable memoryto allow storage of six full screens of datafor later recall. The number 6 was chosen tosatisfy our needs, but could be easily modi-fied to any number up to 256 depending onavailable memory. Note: to expand the NextStore operation to define more than sixmemory sectors, additional control checksare needed in the Control/W section. Screenstorage locations are addressed in GRAPHto reside in the area from 2 K to 8 K inprogrammable memory. If they are to be

ADDRESS

HEX CODE

LINE S

0295

3E 00

0311

IWI A,00

0297

32 F5 03

0315

STA 03F5H

029A

C3 13 00

0316

JHP STATIN

• INITIALIZE '

029D

11 F5 03

0317

[NIT LX1 D.03F5H

02A0

AF

0313

XRA A

02A1

12

0319

STAX D

02A2

13

0320

INX D

02A3

12

0321

STAX D

02A1

13

0322

INX D

02A5

12

0323

STAX D

02A6

13

0321

INX D

02A7

12

0325

STAX D

02A8

13

0326

INX D

02A9

12

0327

STAX D

02AA

13

0328

[NX D

02AB

3E CC

0329

HVI A,0CCH

02AD

12

0330

STAX D

02AE

13

0331

INX D

02AF

3E 80

0332

HVI A,080H

02B1

12

• CLEAR '

0333

STAX D

02B2

3E 00

0331

CLEAR HVI A,00

02B1

D3 C8

0335

OUT 0C8H

02B6

21 00

CC

0336

LXI H.OCCOOH

02B9

36 20

0337 BLANK MVI H,020H

02BB

23

0338

INX H

02BC

3E DO

0339

HVI A,0D0H

02BE

BC

0310

CMP H

02BF

C2 B9

02

0311

JNZ BLANK

02C2

C3 03

00

' CONTROL CHECK

0312

JHP HOME

02C5

FE 16

0313 CTRLC CP1 016H

02C7

CA 39

00

0311

JZ LF

02CA

FE 11

0315

CPI 011H

02 CC

CA IB 00

0316

JZ LR

02CF

FE 06

0317

CPI 06H

02D1

CA 5D

00

0318

JZ BS

02D1

FE 07

0319

CPI 07H

02D6

CA 6C

00

0350

JZ FS

02D9

FE 96

0351

CPI 096H

02DB

CA 37

00

0352

JZ LFC

02DE

FE 91

0353

CPI 091H

02EO

CA 19 00

0351

JZ LRC

02E3

FE 86

0355

CPi 0S6H

02E5

CA 5B 00

0356

JZ BSC

02 E8

FE 87

0357

CPI 087H

02 EA

CA 6A 00

0358

JZ FSC

02 ED

E6 7F

0359

AN I 07FH

02EF

FE 0A

0360

CPI 0AH

02F1

CA 77

00

0361

JZ CR

02F4

FE 15

0362

CPI 015H

02F6

CA A5 00

0363

JZ PU

02F9

FE 0D

0361

CPI 0DH

02FB

CA DE 00

0365

JZ PD

02FE

FE 08

0366

CPI 08H

0300

CA 17

01

0367

JZ PL

0303

FE 0B

0368

CPI 0BH

0305

CA 79

01

0369

JZ PR

0308

FE 13

0370

CPI 013H

030A

CA DA

01

0371

JZ PAGER

030D

FE 10

0372

CPI 010H

030F

C2 3E

03

0373

JNZ C0NT

0312

DB 00

0371 ST IN IN 00

0311

E6 10

0375

AN I 010H

0316

CA 12

03

0376

JZ STIN

0319

DB 01

0377

IN 01H

031B

E6 7F

0378

ANI 07FH

031D

FE 31

0379

CPI 031H

031F

CA 17

02

0380

JZ RCLL

0322

FE 32

0381

CPI 032H

0321

CA 59

02

0382

JZ RCL2

0327

FE 33

0383

CPI 033H

0329

CA 61

02

0381

JZ RCL3

032C

FE 31

0385

CPI 031H

032E

CA 69

02

0386

JZ RCL1

0331

FE 35

0387

CPI 035H

0333

CA 71

02

0388

JZ RCL5

0336

FE 36

0389

CPI 036H

0338

CA 79 02

0390

JZ RCL6

033B

C3 13

00

0391

JHP STATIN

033E

FE 1C

0392 C0NT CPI 01CH

0310

CA B2 02

0393

JZ CLEAR

0313

FE IB

0391

CPI 01BH

0315

CA 60

E0

0395

JZ OE060H

0318

FE 17

0396

CPI 017H

031A

CA 56

03

0397

JZ RINT

031D

FE 18

0398

CPI 018H

031F

C2 A5 03

0399

JNZ STBT

0352

71

0100

H0V H,C

0353

C3 03 00

0101

JHP HOME

0356

DB 00

0102 RINT IN 00

0358

E6 10

0103

ANI 010H

035A

CA 56 03

0101

JZ RINT

162 June 19780BYTE Pu6licaIions Inc

addressed elsewhere, it is only necessary tomodify the start and end locations foreach 1 K sector in the Store routine (see theAddressing and Memory Requirements Sec-tion).

A status word in hexadecimal memorylocation 3F8 is used as a counter to choosewhich sector is being accessed. The data inhexadecimal location 3F8 is initialized tozero at the beginning of the program, incre-mented every time a store is made, andchecked by the program to determine wherethe next screen should be stored. Control/Wallows this counter to set to any numberfrom 0 to 5. This specifies one of six loca-tions to which the next "STORE" will movethe screen information. Otherwise, it willcycle automatically.

The information stored in each sector isrecalled to the screen with a block move byentering Control/P followed by a numberfrom 1 to 6. The information in the storagesector remains valid until written over byanother store to that location. Thus storedinformation may be recalled as many timesas desired.

The main block move operation in PageStore is also used by Page Recall, whichchanges certain parameter registers in orderto move the information stored somewherein memory back to the screen.

Upon entering the Page Store subroutine,the contents of H and L are stored at hexa-decimal locations 3FA and 3F9. The con-tents of C are moved to the screen to restorethe screen to pre-"leading" cursor state.Then, H and L are loaded with the screenstarting hexadecimal location CCOO, and B isloaded with the most significant byte of thefirst invalid location after the screen (hexa-decimal DO).

Next, register E is loaded with zero forsubsequent use with D, as a register pair. Theaccumulator is loaded with the contents ofhexadecimal location 3F8, (a number from0 to 5 denoting which of the six blocks inmemory will contain this page).

To determine which of these six blocksis indicated, the accumulator contents arecompared with these six numbers (0 thru 5),and a subsequent jump is made to a locationgoverned by the results of the comparison.

If hexadecimal location 3F8 is found tobe zero, the program loads register D withthe most significant byte of the startinglocation of the memory to be used to storethe screen information (hexadecimal 08).The actual move cycle then begins.

If the value is 1, 2, 3 or 4, the programjumps cause D to be loaded with the respec-tive memory block starting address's mostsignificant byte (hexadecimal 0C, 10, 14 or18). If the value is 5, no jump is encountered,

ADDRESS

HEX CODE

LINE 0

035D

DB 01

0105

IN 01H

035F

E6 7F

0106

ANI 07FH

0361

FE 1C

0107

CPI 01CH

0363

CA 9D 02

0108

JZ MIT

0366

FE 31

0109

CPI 031H

0363

C2 70 03

0110

JNZ S*5

036B

3E 00

0111

KVI A,00

036D

32 F8 03

0112

STA 03F8H

0370

FE 32

0113

CPI 032H

0372

C2 7A 03

0111

JNZ $*5

0375

3E 01

0115

IWI A,01H

0377

32 F8 03

0116

STA 03F8H

037A

FE 33

0117

CPI 033H

037C

C2 81) 03

0118

JNZ $*5

037F

3E 02

0119

IWI A.02II

0381

32 F8 03

0120

STA 03F8H

0381

FE 31

0121

CPI 03111

0386

C2 8E 03

0122

JNZ $+5

0389

3E 03

0123

IWI A, 0311

038B

32 F8 03

0121

STA 03F3H

038E

FE 35

0125

CPI 035H

0390

C2 98 03

0126

JNZ $*5

0393

3E 01

0127

MVI A,01H

0395

32 F8 03

0128

STA 03F8H

0398

FE 36

0129

CPI 036H

039A

C2 A2 03

0130

JNZ $+5

039D

3E 05

0131

IWI A,05H

039F

32 F8 D3

0132

STA 03F8H

03A2

C3 13 00

0133

JHP STATIN

03A5

FE 12

0131

STBT CPI 01211

03A7

C2 B2 03

0135

JNZ $*03H

03AA

3E 80

0136

HVI A,080H

03AC

32 F5 03

0137

STA 03F5H

03AF

C3 13 00

0138

JHP STATIN

03B2

FE 01

0139

CPI 01H

03B1

C2 C2 03

0110

JNZ S+0BH

03B7

3A FB 03

0111

LDA 03FBH

03BA

C6 80

0112

AD I 080H

03BC

32 FB 03

0113

STA 03FBH

03BF

C3 13 00

0111

JHP STATIN

03C2

FE 1A

0115

CPI 01AH

03C1

C2 D2 03

0116

JNZ J+0BH

03C7

3A F6 03

0117

LDA 03F6H

03 CA

C6 80

0118

AD I 080H

03CC

32 F6 03

0119

STA 03F6H

03CF

C3 13 00

0150

JMP STATIN

03D2

FE 11

0151

CPI 01111

03D1

C2 E2 03

0152

JNZ t+OBH

03D7

3A F7 03

0153

LDA 03F7H

03DA

C6 80

0151

AD I 080H

03DC

32 F7 03

0155

STA 03F7H

03DF

C3 13 00

0156

JMP STATIN

03E2

FE 7F

0157

CPI 07FH

03 El

C2 ED 03

0158

JNZ 1+6

03E7

3E 20

0159

IWI A,020H

03E9

77

0160

MOV M,A

03EA

C3 5E 00

0161

JMP BSP

03ED

C3 25 00

0162

am jmp disp

but D is loaded with the appropriate value(hexadecimal 1C) at the next sequentialprogram step.

After D is loaded, D and E are used as aregister pair (E = 00). The move cycle movesthe memory contents of the position speci-fied by H and L to the accumulator (MOVA,M). This value is then stored in memory atthe location indexed by D and E.

Next, D and E, and H and L are incre-mented, and the value of H is compared withthe value in B (first invalid location) to see ifthe new value of H and L is still a validscreen position. If so, the cycle is repeated.When the comparison of H with B indicatesthat the new value of H and L is no longer avalid screen position, the entire screen hasbeen transferred.

At this point A is again loaded with thevalue at hexadecimal location 3F8, the pagestore select number (0 to 5). This value isincremented and checked to see if it is equal

|unc 1978 ©BYTE Publications Inc 163

to 6. If so, the accumulator is loaded with 0and stored at hexadecimal location 3F8. Ifnot, the value in A is stored at hexadecimallocation 3F8 unaltered.

The next time Page Store is entered, thepage store select number will indicate thatthe screen is to be stored at the next mem-ory block higher than the last screen wasstored at. However, as described above, ifthe last screen is stored in page 6 (memoryblock 6, indicated by a 5 in this location)the program will have reset the location to 0so that the next screen stored will be storedin page 1.

After the page number value has beendetermined and stored in hexadecimal loca-tion 3F8, H and L are loaded with theiroriginal prestore value (from hexadecimallocations 3FA and 3F9), and the value of Mat this position is moved to C for use in anysubsequent subroutine. Hexadecimal loca-tions 3FA and 3F9 are then loaded withCCOO for subsequent use by page recall.Next, the program jumps back to the statusinput (STATIN) of the driver program.Hence, no cursor is on the screen after astore. This is a good way to see if you havealready stored the present screen. A PageStore blanks the leading cursor.

Page Recall

Page Recall can be entered at six points,depending on which page the operatordecides to recall. At each entry point, H andL are loaded with the value of the startingaddress of the page or block desired to berecalled, and B is loaded with the mostsignificant byte of the first invalid addressafter this block of memory to be recalled.D and E are loaded with the screen startinglocation (hexadecimal CCOO). Then A isloaded with the value of hexadecimal loca-tion 3F8 (the Page Store select value),decremented by 1 and deposited in hexa-decimal location 3F8, since later on in theprogram it will be unavoidably incremented.(Thus a decrement followed by an incrementleaves the Page Store select value at itsoriginal value.)

With D and E holding screen locationsand H and L holding the page in memorylocations, moving information indexed by Hand L through the accumulator to posi-tions indexed by D and E in effect movesinformation from the page in memory tothe screen. Since the moves are accomplish-ed by the move cycle in the Page Storeroutine, the program operation now jumps

to this cycle, which operates as describedin Page Store. The result is that the selectedpage in memory now appears on the screen.

Notice that, when the move cycle in PageStore is used by Page Store, hexadecimallocations 3FA and 3F9 are used to containthe address of the present leading cursorposition of the page being stored. When themove cycle in Page Store is used by PageRecall, these locations contain hexadecimalCCOO to initialize the cursor on the recalledpage. Also, as in a Page Store, no leadingcursor appears on the screen. Hence, a PageRecall will set the cursor position to theupper left-hand corner of the screen, eventhough the cursor is not visible, until someother function is executed.

Users who do not have a hard copy out-put device in their systems may find a wayto use the Page Store and Page Recallroutines outside the GRAPH program.Running BASIC or even an assembler oreditor with only a video terminal meansthat you often run information off the topof the screen that would be useful for laterreference. Resident Page Store and Recallsubroutines might help to reduce thisproblem. If the BASIC input routines, forexample, could be modified to incorporatecontrol character checks for Page Store andRecall, these routines would be called tostore the existing screen without interferingwith the program currently running inBASIC. This approach would be cumber-some (unless universally accepted) becauseall the higher level programs would have tobe modified separately.

Other alternatives might incorporateinterrupts to exit from main programs thatreside above the 8080's RST addresses, oreven some sort of parallel processor thatwould "preprocess" input data and route iteither to special service routines or to themain program.

Repeat

Repeat simply loads hexadecimal location3F5 with hexadecimal 80 and jumps back toSTATIN in the Driver. Hexadecimal location3F5 is subsequently reset by the program assoon as a second key after CTRL/R ispressed, as explained in the Driver section.

Vertical Write

When the control check subroutinerecognizes the code for vertical write, itloads the accumulator with the contents ofhexadecimal location 3F7 (which determines

164

June 1978'0 BYTE Publications Inc

System Clear

When a CTRL/W followed by a Clear isdetected in the Control Check Section, ajump is made to INITialize and all systemparameters are initialized. The screen iscleared and the cursor is moved to the upperleft-hand corner.

System Clear is designed to be accessedby pressing CTRL/W and then Clear, to avoidaccidental use. It is, however, occasionallyhandy to be able to reinitialize the entireprogram.

Clear Screen and Home Cursor

When only the Clear key is pressed, theprogram jumps to CLEAR. This clears thescreen and returns the cursor to the upperleft-hand corner. Memory status words areunchanged.

Home Cursor

When a CTRL/X is detected in theControl Check section, the program jumpsto Home, which returns the cursor to theupper left-hand corner but does not affectthe screen contents or the memory statuswords.

Escape

When the escape key (ESC) is pressed, itis detected by the Control Check section anda jump is made to hexadecimal memoryaddress 345 where the program receivesinstructions for exit from GRAPH (seeProgram Function and Use).

Addressing and Memory Requirements

In its present assembly, GRAPH residesin hexadecimal memory locations 000 thru3FFF and is designed to drive a VDM-1addressed at hexadecimal CC00. VDM-1status port (to reset scrolling) is addressedat hexadecimal C8.

In addition, six 1 K byte memory sectorsare set aside for the STORE and RECALLfunctions (see table 3).

A keyboard inputs status information toIO port 00 (data present = bit 6 set) anddata to IO port 01."

Sector

HexadecimalBeginning Address

Hexadecimal

Locations of Begin

Address in GRAPH

Program

Hexadecimal

End Address

Plus One

Hexadecimal

Location of End

Address in GRAPH

Program

1

0800

22F, 249 (08)

OCOO

24B (OC)

2

ocoo

234, 258 (0C)

1000

25D (10)

3

1000

239, 263 (10)

1400

265 (14)

4

1400

23E, 26B (14)

1800

26D (18)

5

1800

243, 273 (18)

1C00

275 (1C)

6

1C00

202, 27B (1C)

2000

270 (20)

L

A 300 bps cassette of GRAPH in KansasCity, BYTE or Cuter formats with a CUTERheader is available for $5 (cash or money order)from UNB Audio Visual Services, UNB,Fredericton NB CANADA E3B 5A3.

if the program is in the vertical write mode).It then adds the value 80 to the accumulatorand deposits the result back into 3F7. Thishas the effect of alternately loading thatlocation with hexadecimal 00 or 80 everytime this routine is entered. Thus, one strokeof the appropriate key (CTRL/Q) puts youin the Vertical Write mode, and anotherstroke takes you out of that mode. Opera-tion then jumps back to STATIN in theDriver.

Cursor (On/Off)

This operation works exactly the same asVertical Write by alternately loading hexa-decimal location 3FB with hexadecimal 00or 80.

Cursor Write/Don't Write

Cursor write/don't write works exactly likeVertical Write, alternately loading locationhexadecimal 3F6 with hexadecimal 00 or 80.

Next Store

When a CTRL/W and a number from 1 to6 are detected (see Control Check Section),the Next Store routine is entered. Thisroutine is actually only a series of compari-sons in the Control Check Section whichcompare the input character with severalASCII hexadecimal values. For example,after CTRL/W and a numeral 1 are enteredfrom the keyboard, the data input to thecomputer is hexadecimal 31. In this case aCPI 31 instruction would route the programto instructions that would load status wordhexadecimal memory location 3F8 withhexadecimal 00, and when 3F8 is checkedby the next STORE operation, it wouldstore page 1 in the first memory sector.Entering a 3 would be detected by a CPI 33,which would load 3F8 with hexadecimal 02and set up the next STORE operation forpage 3.

Table 3: Six 7 K bytememory sectors which areset aside for the STOREand RECALL functions.

June 197SOBYTE Publications Inc

165

Adding a Virtual Tape Loop

Audio Processingwith a Microprocessor

Tom O'HaverDept of ChemistryUniversity of MarylandCollege Park MD 20742

There is a lot of talk about digital audioprocessing, but talk is not the same aspractical action. As the prices of micro-processor systems and interface devicescontinue to drop, such applications are sureto become quite common, even amongamateurs. This article describes a few of thepossibilities of the use of a small low costmicroprocessor system for digital processingof audio signals. The effects described in-volve echo, reverb, fuzz, time delay, phasephlanging, mono-to-enhanced-stereo conver-sion, and frequency multiplication. Theseeffects could also be quite useful for theexperimentally inclined audio enthusiast ormusic group.

Hardware Requirements

To run the programs given here, you willneed a 6502 (or equivalent) processor withfrom 1 K to 5 K bytes of programmablememory, an 8 bit input port connected toa fast 8 bit analog to digital converter(ADC), and a latched 8 bit output portconnected to an 8 bit digital to analog con-verter (DAC). An additional output port anddigital to analog converter are required forstereo applications. The basic hookup fora simple monaural system is shown in figure1. The signal from the preamp is amplified,low pass filtered, converted to digital by theanalog to digital converter, processed in themicrocomputer, converted back into'analogby the digital to analog converter, and thenfiltered some more before going to thepower amp. The success of such a system inaudio processing depends upon its ability tooperate at ultrasonic speeds; that is, the rateat which the audio signal is digitized,

processed, and output must (or should)be as far above the upper limit of the audiospectrum as possible. Thus the speed of eachof these steps is critical. We'll consider eachstep individually.

Next to the microcomputer itself, theanalog to digital converter is really the mostcritical component. It must be a fast one; aconversion time of 50 lis or less is necessaryto allow sufficiently high sampling rates.I have been using a Datel Model E8HB1,an 8 bit successive approximation analog todigital converter with a 4 /is conversiontime (available from Datel Systems Inc,1020G Turnpike St, Building S, CantonMA 02021, for $85 in unit quantities). Irecommend this unit. Its conversion time isprobably faster than you will need, but atleast you won't have to buy a new one whenmicrosystems get faster (as they certainlywill). In addition to speed, the Datel analogto digital converter has two other featuresyou should look for in a converter. First, itis bipolar, which means it is capable ofaccepting both the positive and the negativeexcursions of the audio waveform. Other-wise, you would have to add some offset tothe incoming signal. (The programs in thisarticle assume offset binary coding.) Second,it clips on overload rather than wrappingaround. That is, if the input audio signalexceeds the dynamic range of the analog todigital converter, the digital output simplystops at full scale rather than wrappingaround or folding back to zero. The reasonthis is a useful feature is the fact that anaudio signal contains many peaks andtransients which greatly exceed the averagesignal amplitude. With only an 8 bit system,there is really no way to keep these transients

166

June !978f)BYTE Publications Inc

from exceeding the range of the converter,at least occasionally; if you try to prevent itby adjusting the average amplitude to a verylow level, you'll get too much quantizationnoise. Clipping the peaks may offend theaudio purist, but I'll guarantee you that itsounds a lot better than wrapping around.Of course, a better solution would be touse 12 bit converters and a 12 or 16 bit (orfaster 8 bit) computer. Sufficiently fast 12bit analog to digital converters are availablefor about $150, and 12 bit digital to analogconverters are typically about $30. Butwithout a 12 or 16 bit processor, all proc-essing would have to be done in doubleprecision, which might slow things down toomuch (unless you have a 4 MHz 6502, whichI do not). Anyway, an 8 bit converter whichclips is good enough for the time being.

Selection of a digital to analog converteris much easier, since several fast, low cost8 bit units are available. The digital to analogconverter needn't be bipolar, since a DCblocking capacitor can be added easily. TheHybrid Systems 371-8 at $10 is a goodchoice, as is the Motorola MC 1408L8 atabout $5. I've used both successfully. TheHybrid Systems unit is more convenientbecause it has a built-in reference supply,while you will have to supply an external(2 V) reference for the Motorola unit. Thismust be very well filtered but not necessarilywell regulated for audio applications. (Anadvantage of the Motorola units is that theycan be used as multiplying digital to analogconverters. If you drive the reference inputof one converter from the output of anotherconverter, then the output of the first con-verter will be the product of the digitalinputs to the two converters. This allowsyou to obtain automatic level control,compression, expansion, fading, and ampli-tude modulation effects without relying onmuch slower software multiplication rou-tines and without getting into trouble withquantization noise.)

As for the processor itself, almost any6502 system should do with the examplesI've included in this article: KIM-1, Jolt,Ebka, OSI, PAIA, Apple-ll, PET 2001, etc.I've used both the Ebka and the OSI systemswith good results. OSI has a particularlyconvenient analog IO board (Model 430)which can be populated with two MC1408L88 bit digital to analog converters, an 8 bitanalog to digital converter, and their associ-ated latches and address decoding logic. TheOSI Model 430 analog to digital convertercircuit is of the synchronous tracking (up-down counter) type. Be warned, however,that this analog to digital converter wrapsaround on overrange. It also requires someindividual tweaking of component values to

get it to work. If you want to use the OSI430 board, I strongly recommend that youreplace their analog to digital circuit with abetter one, such as the Datel E8HB1. Otherthan that, the OSI board is just fine.

One very important concept which youmust understand is the relation betweensample rate, aliasing, and low pass filter-ing. If you don't understand these termsand their significance, then before yougo on you should read the article by HalChamberlin on page 62 of the September1977 issue of BYTE. For the programspresented in this article, the sampling ratewill fall between 20 and 40 kHz with a 1MHz processor clock frequency, assumingyou are using a sufficiently fast analog todigital converter (less than 50 us samplingtime). To control aliasing, you have to rolloff the high frequency response of the inputsignal to the analog to digital converter at afrequency no higher than about 1/4 of thesampling frequency, ie: about 5 kHz for a20 kHz sampling rate. This may not soundmuch like "hi-fi," but actually it soundsbetter than you might think. For betterhighs, you need faster processing and may-be a faster input converter. The 6502 ispretty good in this respect; it's available inversions at least up to 4 MHz. This wouldgive you a sampling rate of 80 to 160 kHzfor the programs given here and would ex-tend the highs to the 20 to 40 kHz range.Now, that's a high fidelity computer!

The sampling rate therefore determinesthe frequency at which the response of thesystem must be rolled off (by means ofappropriate low pass filters) in order to re-duce aliasing to a tolerable level. In thesimple circuit of figure 1, the only roll offis that provided by the capacitors in thefeedback loops of the two op amps. Al-though this circuit is satisfactory for ex-perimental purposes, the cutoff rate of thehigh frequency rolloff is not sharp enoughfor first class results. If you're really serious,you'll want more sophisticated, sharp cutofffilters. Hal Chamberlin gives the circuit ofan excellent filter in his article in Sep-tember 1977 BYTE, mentioned pre-viously. The unpopulated printed circuitboard, as well as an assembled and testedunit, is available from Hal. The cutoff fre-quency of this filter is 3 kHz, probably toolow if you have a reasonably fast processor,so you might want to modify it or roll yourown based on the designs in Don Lancaster'sActive Filter Cookbook or other referencesources. Only one sharp cut filter is needed,between the preamplifier and the input ana-log to digital converter, to reduce aliasing.The filter on the output, between the digi-tal to analog converter and the power

June 19780BYTE Publications Inc 167

Figure 7: The system design of an audio processing test bed requires two simple peripheral devices and a computer. The inputdevice is an analog to digital converter (ADC in this diagram) preceded by a filter. The output device is a digital to analogconverter (DA C in this diagram) driving another filter. Source material from (for example) a broadcast program is input throughthe ADC, processed in real time by the program in the computer, then output in real time to the DAC where it (for example)goes to your audio power amplifier and speaker system. The program in the computer can be as simple as an unprocessed trans-fer from input to output, or as complex a transfer function as the constraints of real time will allow, given the speed of thecomputer.

c. c

—3f—

amplifier, needn't have as sharp a cutoff,but it should have the same cutoff frequencyas the input filter. For the simple filtersin figure 1, the cutoff frequency is equalto 1/27tRC, where R and C are the valuesof the feedback resistor and capacitor,respectively.

One last thing to consider about the hard-ware is the level (amplitude) of the audio sig-nal. In order to avoid excessive quantiza-tion noise, the input signal must be amplifiedenough to utilize the whole dynamic rangeof the input analog to digital converter. Infigure 1, the first op amp provides gain inaddition to filtering. The gain of this ampli-fier, which is equal to R2/R1, w'" nave tobe adjusted for your particular system.Given choices of R and C for filter cutoff,R-] can be chosen given a desired gain level.For example, if your preamp provides amaximum output signal of 0.2 or 1 V peak-to-peak, and your input converter has aninput voltage range of ±5 V (10 V peak-to-peak), then a gain of 10 V/1 V = 10 isappropriate. Also, the maximum output sig-nal of the digital to analog converter mustnot be allowed to overload the power ampli-fier. This will dictate the selection of thefeedback resistor Rq of the output op ampin figure 1; the output voltage is directlyproportional to the value of this resistor.

Software Considerations

So what about the software? First, let'ssee how to get data in from the input con-verter and out to the output converterwithout any processing at all. If your analogto digital conversion device (which I referencesymbolically as CONV) is connected to aninput port whose address is F800, then toload one sample of the audio signal into the

RO-Wv-

OUTPUTTO POWERAMP

-)!-

For each amplifier, pick R and C such that1fc~ (2ttRC)where

fc is cutoff frequency (kHz)R is kilohmsC is microfarads

accumulator (A) register of a 6502 requiresone instruction, thus:

LDA CONV

This is all you need if you're using atracking converter such as that on the OSIboard, but if you're using a strobed con-verter, you'll have to give the converter astrobe pulse first, allow it time to convert,then load the A register. The fastest wayto do this is to assign the input conversionstrobe to an unused address, decode thataddress, and use the address select line(address "strobe," as it is sometimes called)as the pulse which strobes the converter.I have used the latter approach for mystrobed analog to digital converter and have(arbitrarily) assigned address EC00 (which Icall STROBE symbolically) to the addressstrobe. With this arrangement the converteris strobed by any instruction which refer-ences that address; for example an STA asshown here:

STASTROBE

several instructions executedwhile conversion occurs.

LDA CONV

The above routine strobes the converter andthen loads the data into the A register. Thedashes represent intervening instructionswhich take up enough time to allow the

168 June 1978©BYTE Publications Inc

analog to digital converter to complete itsconversion. This will always be a usefulcode, rather than just no operation in-structions (NOPs) or a wait loop. Conversiontimes of commercial analog to digital con-verters vary all over the place. As I men-tioned before, for audio processing you'llneed a fast one which converts in a time of50 jus or better. Just make sure there areenough instructions between referencingSTROBE and the loading from CONV togive the input converter time to convert.

To output one sample to the digital toanalog converter (called DAC symbolically)is quite simple. For example, if the converteris connected to an output port whose ad-dress is F900, then all I have to do is storethe sample:

8D 00 F9 STA DAC

To test the proper operation of the in-put and output converters we can write a"straight wire" program which simply trans-fers the data from the input to the outputwithout change. Listing 1 shows 6502 posi-tion independent code for such a program.

Note that the input conversion strobe in-struction is placed right after the load CONVinstruction. This may seem backwards butit gives the analog to digital converter atotal of seven machine cycles (an STA anda J MP) to convert before it will load into A.On a 1 MHz machine, this means the con-version time could be as long as 7 us. If yourconverter is slower than this, put some NOPinstructions or a wait loop right before theCLC instruction. The other programs in thisarticle execute much more code betweenstrobing and loading the input analog todigital converter and will usually allow youto get by with no additional instructionsintended specifically to slow downexecution.

The program of listing 1 is good for test-ing out the hookup to your audio system.The sound quality of music played "throughyour computer" this way may be better thanyou would expect, considering that theaudio waveforms are being sliced up into dis-crete samples, converted into binary num-bers, and then converted back into an analogaudio waveform!

So what kind of audio processing can youdo? I'll resist the temptation to say that theapplications are limited only by your imag-ination. They are not. They are limited byyour programming skill, your processorspeed, and your system's programmablememory capacity. You can never have toomuch of these. I'll not claim to have evenscratched the surface of potential applica-tions in this article. I'll just tell you about a

AD

00

F8

START LDA CONV

get new data from converter

8D

00

EC

STA STROBE

strobe input conversion

8D

00

F9

STA DAC

output to DAC

18

CLC

unconditional

90

F4

BCC START

branch to START

Listing 1: A 6502 "straight wire" program loop. In order to simply listento the input data on the output channel without any processing, we mustenter a tight machine coded loop which reads the input converter, then storesthe input data into the output converter. This 6502 program assumes an in-put digital to analog converter at address space location F800 (CONV), aninput conversion strobe which occurs on reference to address space locationEC00 (STROBE) and an output digital to analog converter at location F900in address space (DA C). These same assumptions about 10 apply to listings2 thru 6 as well. With hardware like figure I, try running this program usingan audio signal from your favorite record album. The results will probablybe of higher quality than you might have expected.

few things I've done, mostly because theywere easy to program. If you don't comeup with better ideas than these I'll bedisappointed.

Waveform Modification

A very easy class of audio processingfunctions are those which are intended todistort the audio waveform. Believe it ornot, distortion is actually considered desir-able by musicians in some cases for obtain-

Art-by-Computertm is h<=

Fi le I

Fi

Black-on-white, 9 3/4H by 12 3/4W reproductionsof computer generated designs. See Jan 78 Byteor phone or write for a brochure.Set of 12: $20.00, singles $2.00 each. Minimumorder: 2 prints. Orders less then $10.00 andall orders from outside continental U.S. add$2.00 postage and handling. Payment must bein U.S. dollars. California residents add 6%sales tax. Send check or money order to:

Lei and C. SheppardP0 Box 60051, Dept. BSunnyvale, California 94086.

Also available at selected retail outlets.

LCS, 1978.

June 1978 © BYTE Publications Inc 169

AE

00

F8

START LDX CONV

8D

00

EC

STA STROBE

BD

00

03

LDA TABLE, X

8D

00

F9

STA DAC

18

CLC

90

Fl

BCC START

Put converter data into x register

Strobe converter.

Look up xth byte of TABLE

Output to DAC

Repeat

Listing 2: Waveform modification. This 6502 program, obtained by modify-ing the program of listing I slightly, uses the input sample from the analogto digital converter (value 0 to 255) to look up the output sample in a "trans-fer function " table located at 0300 in memory and referenced with the nameTABLE. The key to what the distorted output sounds like relative to theinput is the data stored in TABLE (see text and figure 2).

ing special effects (such as "fuzz") withelectric guitars and other electronic instru-ments. The computer can perform a ratherelegant general purpose distortion functionby utilizing a stored transfer function asillustrated in the program of listing 2.

To use this algorithm, you must set up atable in memory (on page 03 in this ex-ample) which serves as the transfer function.Each sample of the input waveform obtainedfrom the input converter is used as an indexto look up a corresponding byte in thetable, which is then used as the outputvalue. In this example the table is just 256bytes long and is indexed by the 6502 proc-essor's X register. Depending upon what westore in the table we can get any kind ofdistortion effect we want. A trivial casewould be to use a straight line function,ie: put 00 in 0300, 01 in 0301, 02 in

Figure 2: Examples of transfer functions for use with the waveform modifi-cation technique of listing 2. These curves are produced by plotting the dataat an address versus the address within the table, with both values having arange of 00 to FF hexadecimal (eight bits worth). (A) is the simple lineartransfer function. (B) is a transfer function which is equivalent to a saturatedclipping amplifier: it puts out a square wave. (C) represents a slight distortionof the linear response of (A). (D) is a transfer function which effectivelydoubles the frequency of the input waveform, while (E) quadruples the inputfrequency and (F) multiplies the frequency by a factor of 8 (ie: three octaveshigher).

0302. . .and FF in 03FF as shown in figure2a. This would yield no effect at all; the out-put would be identical to the input as wasthe case with the program of listing 1. Butif we use anything other than a straight line,we'll get distortion. Several possibilities areshown in figure 2. Figure 2b would give asquare wave output while 2c would yield asomewhat less strongly distorted output.With the function shown in figure 2d, wewould get a frequency doubling effect;that is, if the input were a sine wave of onefrequency, the output would be an approxi-mate sine wave of twice that frequency (oneoctave higher). With figure 2e, we'd get anoutput two octaves higher. This can be ex-tended even further with the appropriatetransfer function (eg: figure 2f). The effecton the sound of an electric guitar is quiteremarkable, particularly as the frequencymultiplication factor is a function of theamplitude of the input signal and changesat the input decays.

Quite apart from its potential uses inmusic recording or performance, the abovetechnique is a neat way to teach (or learn)about the effect of transfer characteristicnonlinearity on audio distortion. Just putin the characteristic under consideration andlisten to the effect it has on the audio.

Time Delay, Phase Shift and Reverb Effects

If we store digitized audio in an array inprogrammable memory, and read it out tothe digital to analog converter at a latertime, we have a time delay effect which canbe used for phase shift and reverb. The max-imum time delay you can achieve dependson the sampling rate and the amount ofavailable memory; but even with only 256bytes you can get some pretty good phaseshift and phase "phlanging" effects. With4 K bytes you can get a good reverb.

The essential programming techniquebehind all of these effects is quite simple:output a byte from the data buffer to thedigital to analog converter; input a new sam-ple from the analog to digital converter andput it in the same location in the data bufferas the byte just output; increment the point-er modulo the length of the buffer and re-peat. (Thus, when you get to the end of thedata buffer you reset the pointer to the be-ginning and continue.) By scaling and addingthe new data from the input converter to theold data from the data buffer, we can gener-ate a range of effects depending on thelength of the time delay.

The routine of listing 3 adds the audiosignal to a slightly delayed version of itselfand outputs the scaled sum to the digital toanalog converter. In this routine, page 03

170 June 1978 ©BYTE Publications Inc

serves as the data buffer and x as the point-er. The pointer is initialized to DELAY, dec-remented until it gets to zero, and then re-set to DELAY. This results in a sort of circu-lar data buffer which acts as a first in lastout shift register. The new and old (delayed)data are added and sent to the output con-verter. (Note that to prevent overflow, thedata are divided by two before adding.) Thetime delay, determined by DELAY, can beadjusted from 1 to 225 samples. Such shortdelays do not result in a perceptible echo.The effect is rather that of a "comb filter"with multiple peaks and dips distributedthroughout the audio spectrum. This is dueto the fact that there will be a cancellationat every frequency whose period is an inte-gral multiple of twice the time delay and areinforcement at every frequency whoseperiod is an integral multiple of the timedelay. This rearranges the amplitude andphase relationships of the harmonics ofmusic and speech and has a quite noticeableeffect on the sound, variously described as a"resonant" or "twangy" effect. (If you havea hum problem in your audio setup, youmight try to find the value of DELAY whichputs a dip right at the hum frequency.)

The above idea can be extended and theeffect made much stronger by causingDELAY to change continuously in real time.This would cause the peaks and dips tosweep through the audio spectrum. Thiseffect is called "phase phlanging" by somepeople. An easy way to do it (not neces-sarily the best way, however) is shown inlisting 4. This is the same as the previousprogram except that the DEC DELAY in-struction has been added to reset the bufferpointer to a different value each cyclethrough the buffer. The effect of thisroutine on voice and music is quite dramatic.With speech and solo singing it gives a kindof voice doubling effect, as if two peoplewere speaking or singing in synchroniza-tion. It makes a 6 string guitar sound re-miniscent of a 12 string guitar. A concertpiano comes out distinctly like a question-ably tuned honky tonk piano. The effecton organ music is unreal and unpleasant.If you play the guitar and sing, or think youdo, try processing a tape recording of your-self this way. It will sound better, or atleast different (which in my case is thesame thing).

If you have two output ports and twodigital to analog converters, you can gen-erate two channels of audio output. Forexample, you can convert a monauralsource to "pseudostereo" with a further

A6

10

RESET LDX DELAY

initialize pointer to buffer length

BD

00

03

NEXT LDA BUFFER, X

get oldest data

4A

LSR A

divide by 2

85

11

STA TEMP

keep

AD

00

F8

LDA CONV

get new data

8D

00

EC

STA STROBE

(strobe converter)

9D

00

03

STA BUFFER, X

replace old data with new

4A

LSR A

divide by 2

18

CLC

65

11

ADC TEMP

8D

00

F9

STA DAC

output to DAC

CA

DEX

advance the buffer

DO

EF

BNE NEXT

pointer and repeat

18

CLC

90

E2

BCC RESET

Listing 3: Time delays are possible with a buffer. Using the memory locatedat hexadecimal 300 to 3FF as a 256 byte delay buffer, a number of interest-ing effects can be achieved. This program supports a delay of up to 255 innerloop periods, too short to be perceptible as a delay per se, but it does trans-form signals by adding the delayed sample's points to the new input samples,producing an interesting filtered result. The delay buffer length is set by thevalue loaded into the X index register from location DELA Y in the first in-struction of the program. As in all the examples of this article, this 6502program is position independent and can be loaded at any arbitrary place inmemory address space which contains programmable memory not conflict-ing with 10 or data storage locations.

A6

10

RESET LDX DELAY

BD

00

03

LDA BUFFER

4A

LSR A

85

11

STA TEMP

AD

00

F8

LDA CONV

8D

00

EC

STA STROBE

9D

00

03

STA BUFFER,

4A

LSR A

18

CLC

65

11

ADC TEMP

8D

00

F9

STA DAC

CA

DEX

DO

E7

BNE NEXT

C6

10

DEC DELAY

18

CLC

90

E0

BCC RESET

Listing 4: Modifying the processing done by the delay program of listing 3to sweep the time delay value results in this "phase phlanging"program. Thedifference between this program and that of listing 3 is the DEC instructionwhich changes the value of the delay parameter DELA Y each time it is re-loaded. The effects must be heard to be believed.

A6 10

BD 00 03

8D 00 EF

AD 00 F8

8D 00 EC

9D 00 03

8D 00 F9

CA

DO EB

C6 10

18

90 E4

RESET LDXNEXT LDA BUFFER, XSTA DAC2LDA CONVSTA STROBESTA BUFFER, XSTA DAC 1DEX

BNE NEXTDEC DELAYCLCBCC RESET

delayed sound to one channel

direct sound to other channel

Listing 5: Modifying the program of listing 4 to turn it into a pseudostereoprocessor. Here, the delayed data is sent to a second channel, with theamount of delay swept as it was with the phase phlanger approach. Butinstead of adding the two channels together, they are kept separate and sentto the left and right stereo speakers.

June 1978 .BYTE Publications Inc 171

modification of the program in listing 3(see listing 5).

In this example the additional DAC isconnected to an output port whose addressis EFOO. Instead of being added together,the direct and delayed signals are simplysent to the two different channels. The re-sult is a sort of stereo phase phlangingeffect which sounds much like a "rechan-neled for stereo" disk recording. Try thisthrough stereo headphones. So now youcan have a stereo electric guitar. Wouldanyone like to extend it to quadraphonic?

If you have at least 4 K bytes of memoryavailable in your system for your buffer,then you can obtain echo and reverberationeffects quite readily. The idea is basicallythe same as the phase shifter routines just

AUDIO REVERB SIMULATION

LABELS

F800

CONV

ECOO

STROBE

F900

DAC

0009

FIRST

0010

LAST

00A0

PNTRL

00A1

PNTRH

0011

TEMP

Address of 8 bit analog to digital converterConverter strobe line

Address of 8 bit digital to analog converterLowest page number in data buffer1 + highest page number in data bufferLow half of data buffer pointerHigh half of data buffer pointerTemporary storage

PROGRAM CODE

A0 00

LDY#0

Set pointer to zeroth byte of page"FIRST".

A9

00

LDA#0

85

A0

STA PNTRL

A5

09

RESET LDA FIRST

85

Al

STA PNTRH

8D

00

EC

NEXT STA STROBE

Strobe converter.

Bl

A0

LDA(PNTR), Y

Get oldest byte.

4A

LSRA

Divide by 2.

85

11

STA TEMP

Save.

AD

00

F8

LDA CONV

Get new byte.

4A

LSRA

Divide by 2.

18

CLC

Add to oldest byte, and return todata buffer.

65

11

ADC TEMP

91

A0

STA(PNTR), Y

8D

00

F9

STA DAC

Output.

C8

INY

Go to next point.

DO

E9

BNE NEXT

Increment pointer (doubleprecision).

E6

Al

INC PNTRH

A5

10

LDA LAST

When end of data buffer is reachedreset pointer to FIRST andcontinue.

C5

Al

CMP PNTRH

DO

E0

BNE NEXT

18

CLC

90

DA

BCC RESET

Listing 6: The use of large amounts of memory can lead to interesting effects,for example this reverberation program. Here a 4 K byte buffer from addressspace locations 2000 to 2FFF is used to store delayed samples obtained fromthe input converter at location CONV. This code for the 6502 processor isposition independent, provided it is not loaded in the same region as the de-lay buffer, the page zero constants, or the IO device addresses.

discussed, except that a much larger databuffer is used. Here we can use the indirectform of the LDA and STA instruction, andwe maintain a 16 bit pointer in page zero(unlike the 6800, the 6502 has only 8 bitindex registers). The routine of listing 6yields a reverberation time which is adjust-able up to about 0.5 seconds. The data buff-er is assumed to be the 4 K byte blockfrom addresses 2000 to 2FFF. On eachcycle through the buffer, the old data isdivided by two, added to the new data out-put, and returned to the buffer. Thus, theold signals (ie: the echo) die off by a factorof two each time they are heard. You canhear about five or six echos before they dropbelow audibility.

If START is set to 20, using the whole4 K buffer, the effect is something like thatof a large hall or perhaps an old railroadterminal. The difference is that the com-puter produces a clear, clean echo at veryprecisely timed intervals and with a preciselycontrolled decay rate. Compare this witheither a natural reverberation situation or amechanical unit: the result is a more me-chanical sound, much like a tape loop reverbdevice, without the false resonances of aspring type device. The advantage over atape loop device is, of course, that it willnever wear out or get out of alignment.

Several useful modifications of this pro-gram can be made. For example, you couldutilize a second digital to analog output anda stereophonic sound system to achievespacial separation between the direct and"reflected" sound. You could then applysome filtering to the reflected sound channelto simulate selective absorption by the roomfurnishings. You could also improve the real-ism of this effect by writing the routine toprovide more than one delay time, forexample by maintaining two or more bufferpointers which would allow the incomingdata to be added to several points in thedata buffer. You'll need a fast processor tokeep the sampling frequency up, however.Finally, by simply dropping the LSR andADC instructions in the program of list-ing 6, you can get a simple time delayeffect; say a word and it is repeated immedi-ately. Great for language study; listen toand critique your pronunciation withoutwearing out your tape recorder. Or if youhave lots of memory (at least 32 K), youcan get delays long enough to allow you tosing a round with yourself! I won't com-ment on the frightening social significanceof this.

172

June 1978 6 BYTE Publications Inc

GLOSSARY

Analog to digital converter (often abbreviatedADC): Integrated circuit or hybrid module whichconverts an analog voltage into a parallel digitalnumber, usually in a binary or binary coded deci-mal format; characterized principally by thenumber of bits of parallel binary output (the morethe better) and the conversion time (the shorterthe better). Most commercially available analog todigital converters have from six to 14 bits, convertin 0.5 /us to 200 ms, and cost from $12 to $300each.

Address decoding: Logic circuitry present in ailmicrocomputer systems which looks for certainaddresses on the address bus and outputs a pulse(address strobe) whenever those addresses occur.Used to select individual IO ports, sections ofmemory, and devices tied to the data bus.Address strobe: A pulse or logic level generatedby the address decode logic in response to theoccurrence of a particular address or a range ofaddresses in a microcomputer.Aliasing: An instrumental artifact, caused bysampling a periodic waveform less than twice perperiod, which results in an apparent reduction inthe frequency of the waveform. (The effect is quiteanalogous to the use of a stroboscope to "slowdown" the action of periodic mechanical motion.)In audio processing, aliasing sounds like a grossdistortion.

Conversion time: The time it takes an analog todigital converter to convert an analog voltage to abinary number. Specifically, it is defined as thetime between the strobe pulse and the instant thatthe digital output is valid.

Cut off frequency: The frequency at which a lowor high pass filter begins to cut off a signal (whichmeans to reduce its amplitude).Cut off rate: Also called attenuation rate. The rateat which the response of a low or high pass filterincreases attenuation as you go to higher or lowerfrequencies. The response of a simple single sectionlow pass RC filter drops off only at the rate of afactor of two for every factor of two increase infrequency (called -6 dB per octave in engineeringjargon). More sophisticated "active" filters employ-ing operational amplifiers can have much faster cutoff rates. These have the advantage of extendingthe high frequency response as far as possible whilestill reducing aliasing to an acceptable level.Digital to analog converter (frequently abbreviatedDAC): An integrated circuit or hybrid modulewhich converts a parallel binary or binary codeddecimal number to an analog voltage or currentproportional to the number. Commercially avail-able digital to analog converters have resolutionsfrom eight to 16 bits and cost from $5 to $100.Data buffer: A section of programmable memoryused to store data, usually temporarily.Fuzz: A kind of distortion occasionally used byelectric guitarists for special effect.Offset binary coding: An arrangement for opera-tion of a bipolar analog to digital converter inwhich a zero input voltage corresponds to a mid-scale digital output. For an 8 bit converter with a±5 V input range, an input of 0 V would be con-verted to hexadecimal 80, -5 V to hexadecimal00, and +4.96 V to hexadecimal FF. (This differsfrom two's complement coding.)

Peak-to-peak: The voltage difference between theaverage positive excursion and the average negativeexcursion of an AC signal.

Phase shift: A (usually small) time delay betweentwo similar periodic waveforms.Phlanging: An audio effect originally produced byplaying duplicate tape or disk recordings in almost,but not quite exact, synchronization.Quantization noise: The noise caused by theconversion of a smooth, continuous analog wave-form into a "stair step" approximation in theprocess of digitization. It adds a "hiss" to audiosignals, technically called "white noise." Like anyother type of hiss, it can only be partially removedby filtering. The smaller the steps, the less thenoise. Thus an 8 bit digitization, yielding 256discrete steps or "quantization levels," results in aslightly noticeable quantization noise, but in a 12bit conversion (4096 steps), the effect is quitenegligible.

Sample rate: The rate at which the signal waveformis digitized. The larger the number of samples perperiod of the waveform, the closer the digitizedwaveform will be to the original analog waveform.The sample rate must be at least twice the highestfrequency to be digitized in order to preventaliasing. In this article, the sampling rates aredetermined by the execution times of the innerloops of the programs.

Strobe: In general, a pulse used for time synchroni-zation of some event. In the context of an analogto digital converter, the term refers to the "startconversion" pulse applied to the converter toinitiate the conversion process. In this article, theinput conversion strobe is supplied by the micro-computer under software control.Successive approximation: A popular type ofanalog to digital converter. Most fast converters areof this type. It performs the conversion bit by bit,starting with the most significant bit and progressingto the least significant bit. Although generally finefor audio processing applications, this type ofconverter can exhibit nonlinearity (and thereforedistortion) if the input signal changes appreciablyduring conversion. To prevent this, a sample-and-hold circuit can be used ahead of the converter, or,as in this article, one can reduce the problem toinsignificance by using a converter with a conver-sion time much less than, the period of the highestfrequency passed by the input low pass filter.Tracking analog to digital converter: A low costtype of converter which uses an up-down binarycounter to track or follow the analog input. Itsadvantage is that it requires no strobe pulse, as itsoutput is always trying to keep up with the output.This type is often implemented in software whenconversion time is not particularly important.Transfer function (or characteristic): The func-tional relationship between the output and theinput of a device.

Wrap around: What happens to your car's mileageindicator after you've driven 99999.9 miles. It"wraps around" to 00000.0. The same thing occursin electronic counters; in an 8 bit device, the nextcount after hexadecimal FF wraps it around to 00.Some analog to digital converters do this when theinput voltage exceeds full scale. It must be pre-vented in audio processing. ■

June 1978 & BYTE Publications InC 173

Visit to an OEM Supplier

A Look at Shugart'sNew Fixed Disk Drive

Photo 1: One of the high speed conveyors at Shugart Associates' SunnyvaleCA plant. Metal arms swing out to capture plastic bins of parts. 600 to800 floppy disk drives and 300 to 400 minifloppy drives are turned out everyday at the plant.

Chris Morgan, Senior Editor

OEM can be a confusing term for peoplenew to the personal computing field. Itmeans "Original Equipment Manufacturer"-that is, a company which uses parts andequipment of other manufacturers in orderto produce end user equipment for sale tothe public.

Recently I had the opportunity to visitan OEM supplier whose name is well-knownto the personal computing field: ShugartAssociates. Shugart manufactures the floppyand minifloppy disk drives that go intoequipment sold by North Star, Apple,PolyMorphics, Smoke Signal Broadcasting,Radio Shack, and many more. They alsosupply companies that manufacture largecomputer systems. All told, they claim tomanufacture over three quarters of thefloppy disk drives on the market, and twothirds of the minifloppies.

Upon entering their brand new 150,000square foot facilities in Sunnyvale CA, Iimmediately noticed that the flow of pro-duction parts was controlled by an im-pressive array of high speed conveyor belts(see photo 1). Their workforce of over 700people turns out 600 to 800 standardfloppy drives and 300 to 400 minifloppydrives every day.

The most interesting feature of the tour,however, was getting a glimpse of the newShugart SA4000 fixed disk drive—a unitthat may have a major impact on the per-sonal computer market a year or so fromnow. The SA4000 (see photos 2 and 3) isavailable in 14.5 and 29 megabyte (unfor-matted) capacities with an optional 144 Kbytes of additional head-per-track storage.Winchester heads (named after IBM's "Win-chester" disk technology) are used in the 35pound (16 kg) unit, which is designed to fitin a 19 inch (48 cm) rack. But price is themost significant feature: the 14.5 megabyte

174

June 1978; BYTE Publication! Inc

Photo 2: Prototype of the SA4000 fixed disk.

m ■ m «w

unit is $2550, and the 29 megabyte unit is$3500, both quantity one; prices forquantity 100 are $1450 and $2000, respec-tively.

The same voltage requirements are usedfor both the SA4000 drives and the Shugartstandard size IBM compatible floppy drives,so the same power supply can be used forboth types of drives in a system. In addition,the SA4600 intelligent controller (or equiva-lent) can be used to control up to fourfloppy disk drives and four SA4000 fixeddisk drives with the same controller board.The new fixed disk drive has an interfacesimilar to that of the standard ShugartSA800 and SA850 floppy drives, but itemploys a higher transfer rate. The driveincludes a data separator and encoder pro-viding normalized NRZ read and write data.

Data on each disk surface is read by tworead and write heads, each of which accesses202 tracks. The drive is available in twobasic configurations: one disk with four read

. Head Arm AssemblyRotating Pivot

Stepper PositionedHead/Arm Assembly

Capstan

Winchester

Read Write Heads

Figure I: The Shugart SA4000 fixed disk head actuator assembly. A novelcoiled-metal band driven by a stepper motor is used to position the head as-sembly. Graphics courtesy Shugart Associates.

|unc 1978 ©BYTE Publications Inc

175

Photo 3: Shugart SA4000fixed disk drive (left) nextto standard SA800 floppydisk drive.

and write heads, or two disks with eightread and write heads.

A separate read and write head mountedto the base casting reads a prerecordedtrack which provides the master clock forthe drive as well as the clock for write clockgeneration. The optional fixed heads aremounted on an assembly which is mounteddirectly on the base casting. Delivery iscurrently four months from receipt of orderfrom Shugart Associates, 415 0akmead Pky,Sunnyvale CA 94086, (408) 733-0100.

Since the SA4000 disk is permanent,users will need some form of off line storageto keep back-up copies of vital files inpractical systems: a double density full sizefloppy disk drive seems to be the mostlogical choice.

We should soon see the era of the 14.5megabyte mass storage system built into ahigh end personal computer which sits on

top ofinclude:

a desk. The typical box might

SA4000 disk main filing systemSA800 removable media filing system(optional)

16 K bytes read only memory systemssoftware

48 K bytes volatile program storeAny third generation processor (9900,Z8000, 8086, 6809, etc)Video display (graphics plus full ASCIItext capability)Keyboard

Machine independent PASCAL sys-tems software

Externally, this would look fairly conven-tional, but buried inside might be theSA4000 as a permanent on line nonvolatilememory resource."

176 June 1978 ©BYTE Publications Inc

5 PLETE SATISFACTION IS OUR GUARANTEE YOUR COMPLETE SATISFACTION IS OUR GUARANTEE YOUR COMPLETE SATISFACTION

Huge Discounts!

HOBBY WORLD ELECTRONICS

Savings up to 70% on major brand IC parts and computerkits. For complete IC listings write for our catalog.

WAMECO

S-lOO PC. Boards8K RAM8080 CPU12-Slot Mother

Board 33.00

ITHACA AUDIO S-100 P.C. Boards

8K RAM 28.00

Z.-80 CPU 28.00

SOLID STATE MUSIC S-100 Kits &Bare BoardsMB-3 2K/4K EPROM

Uses 1702A EPROMSKitw/oEPROMS 59.95

MB-4 4K STATIC RAM Kit 95.00Bare BoardMB6A8K KitSTATIC RAM Bare Board

MB7 16K STATIC RAM

Kit 435.00

Bare Board 25.95

MB8 8K/16K EPROM

Uses 2708's

Kit Less EPROMs 75.95

KITS

SOLID STATE MUSIC

MB9 STATIC PROM/RAM

Kit Less MemoryVB1A VIDEO INTERFACE

Kit

Bare Board102 PARRELL I/O

And Kludge

Kit

Bare Board104 2 + 2 I/O KitSYNTHESIZER SB-1 MUSIC

Kit with

72.00

129.9525.95

49.95

25.95

139.95

145.00

15-Slot Mother

Board 39.95

XB-1 EXTENDER BOARD

Bare Board 8.99

SSM 8080 MONITOR VI

ON 2-2708 47.00

ON8-1702A 47.00

IS OUR GUARANTEE YOUR COMPLETE SATISFACTION IS OUR GUARANTEE YOUR COMPLETE SATISFACTION IS OUR GUARANTEE

Circle 170 on inquiry card.

What's New?

Serial 10 for the Apple II

PERIPHERALS

Adapter Doubles DECwriter Speed

ACCELEWRITER

MODEL NO. UA36/600

LARKS ELECTRONICS AND DATA

P.O. BOX 22

SKOKIE, ILLINOIS 60076

|^lM^I^||UIU||||U||||KI||U|IJy UUlJI

A new adapter, the Accelewriter,adapts any LA36 DECwriter to operateat 600 bps, converting the standard110, 150 or 300 bps DECwriter to

220, 300 or 600 bps. The Accelewriterchanges the internal timing of theDECwriter and causes it to print at 60characters per second. Installation in-volves removal of two integrated circuitsfrom the logic board of the DECwriter.These are replaced with low profileIC sockets. The Accelewriter is theninstalled in the board in place of thetwo original ICs, and the logic board isreinstalled in the DECwriter. The DEC-writer can be reconverted to its originalelectronic configuration by unpluggingthe adapter and installing ICs of theoriginal types in the sockets. Price is$95 from Larks Electronics and Data,POB 22, Skokie IL 60077."

Circle 641 on inquiry card.

Analog Interface Board

EfE>

»4 : ml»o i

A multifunction analog interfaceboard, offered as a kit or fully as-sembled, has been introduced by Vector

Graphic Inc, 790 Hampshire Rd, Aand B, Westlake Village CA 91361.According to the firm, board designpermits interfacing with potentiometers,joysticks, or voltage sources. An 8 bitdigital port with latch strobe can beused as a keyboard input port. Tonepulse generators can also be used toproduce sounds for games or keyboardaudio feedback. Additional featuresinclude four analog to digital inputs,MWRITE logic, and a power on jumpfeature for computers lacking frontpanel. Price is $75 in kit form, $115assembled."

Circle 642 on inquiry card.

New Interface Module from CreativeMicro Systems

The 9650 is an asynchronous serialinterface module specifically designedfor compatibility with the Motorola6800 processor bus. It is pin and outlinecompatible with the Motorola EXOR-ciser and Micromodules and with theMED6800D2 Evaluation Kit. It featuresfull address decoding and fully buffereddata, address and control lines. Thismodule utilizes eight MC6850 Asyn-chronous Communications InterfaceAdapters with full RS-232C signalconditioning. An on board bit rategenerator simultaneously provides 14standard rates that can be individuallystrapped to each ACIA.

The 9650 occupies 16 consecutivememory addresses. The lowest eight ofthese access the eight control and statusregisters and the next eight access thetransmit and receive data registers. Thismap arrangement allows optimum use ofindexed addressing in 10 intensivesystems and permits the use of a verytight interrupt polling loop.

The standard configuration of the9650 is fully populated to eightchannels. The price is $395 in single

Electronic Systems has announceda serial 10 board for the Apple II com-puter. The board comes with softwarefor input and output to and from aTeletype or other serial device via anRS-232 interface.

Features include switch selectableparity, selectable number of stop bits,and jumper selectable address. Data ratescan be as high as 30,000 bps.

The board is available assembled andtested for $62. The complete kit is $42,and the board only is $15. ContactElectronic Systems, POB 9641, San JoseCA 95157, (408) 374-5984."

Circle 644 on inquiry card.

Altair (S-100) Bus Interface Boardfor PET 100

HUH Electronic Music Productions,POB 259, Fairfax CA 93930, has an-nounced the PET 100, a PET to Altair(S-100) bus interface board for theCommodore PET computer. The Altair(S-100) sized card plugs into the main-frame of your choice and a cable con-nects it to the PET, which then enablesyou to use any of the peripheral andmemory cards available for the Altair(S-100) bus. The PET 100 emulates thetrue Altair (S-100) bus including directmemory address, read and write waitstates, IO address mirroring, multiplexedstatus lines, and much more. The PET100 is available in kit or assembled formfor $199.95 or $279.95, respectively."

Circle 645 on inquiry card.

quantities. A partially populated 4channel version is also available at alower price.

The 9650 is one of a family ofM6800 support modules. All cards ofthe family are 6.05 by 9.75 inches (15.4by 24.8 cm) and utilize a 43 pin dualreadout edge connector with 0.15625inch (0.4 cm) pin spacing. Additionalinformation is available from CreativeMicro Systems, 6773 Westminster Av,Westminster CA 92683, (714) 892-2859."

Circle 643 on inquiry card.

178 June 1978©8YTE Publications Inc

Proudly announces the

PEM-8K

8K OF ADDITIONAL MEMORY FOR YOUR PET®

• COMPLETELY ASSEMBLED AND TESTED

• BUILT-IN HEAVY DUTY POWER SUPPLY

• ATTRACTIVE ENCLOSURE

• COMPATIBLE WITH 4K OR 8K PET*

• NO MODIFICATIONS REQUIRED

Introductory BONUS SOFTWARE PACKAGE:10Kof Financial, Mathematical and Algebraic Programs

Shipped postpaid - - - Price: $279.(Virginia Residents Add 4% Sales Tax}INTERNATIONAL P.O. Box 26 4

TECHNICAL

SYSTEMS

WOODBRIDGE,VIRGINIA 22194

CONVERT ANY TV

TO A HIGH QUALITY MONITOR

• Hot Chassis or Transformer sets

• 64-80 characters per line

• By-passes tuner & I.F.

• Normal viewing unaffected

• Safe—Easy installation

ACVM Hi-Resolution $24.95 ppd

RFVM Ch2-6 Modulator $9.95 ppd

VAM'PT'N'C.' Box'2'9315

Los Angeles, Calif. 90029

Calif. Residents add 6% Sales Tax

SURPLUS ELECTRONICS

ASCII

ASCII

®

IBM SELECTRIC

BASED I/O TERMINAL

WITH ASCII CONVERSION

INSTALLED $695.00

• Tape Drives • Cable

• Cassette Drives • Wire

• Power Supplies 12V15A, 12V25A,5V35A Others, • Displays

• Cabinets • XFMRS • HeatSinks • Printers • ComponentsMany other items

Write for free catalogWORLDWIDE ELECT. INC.10 FLAGSTONE DRIVEHUDSON, N.H. 03051Phone orders accepted using VISAor MC. Toll Free 1-800-258-1036In N.H. 603-885-3705

Circle 186 on inquiry card.

Circle 378 on inquiry card.

Circle 395 on inquiry card.

PROGRAMMINGCONTEST !

-WIN-

PRIZE- FLGPPV DISK SYSTEM OR 11000 CA5HPRIZE- FLOATING POINT HOARD OH !>'-00 CASHPRIZE- AUDIO INTERFACE OR S200 CASH

$

M

A

Y

O

o

w

1

N

*

u

I

I

N

y

E

s

fjr COURSE YOJ HAVE THE SEARCHING AND SOWING SKILLS

ACQUIRED BY EVERY HACK PROGRAMMER SINCE ENIAC! BUT

DO YDU HAVE A GUNNING AND CLEVERNESS THAT RANKS YOU

WITH CIA CALIERE CODE CRACKERS.' PUT YDUR PERSONAL

COMPUTER TO WORK AROUND THE CLOCK SOLVING OUR

ARDUOUS WORD PUZZLE IN AN ATTEMPT TO:

*»* EXPAND YOUR. SYSTEM BY WINNING PRIZES <""

.i salt addressed scamped envelops I ■ ■■

MICRO-PUZZLES Drpi a 785H Car>c.ilou|..- Av.-.

Van ;:uys, California 91402

o0?U4 MEGABYTEC TAPE RECORDER!

QUAD 5 CHANNEL 1/4" TAPETRANSPORT, ONE FURNISHED

o°> LOGIC FOR AUTO SELECT, REWIND, E OT,..ofc LOW LEVEL,S LAST CARTRIDGE-POWER

T}'' REQ'D 12V 5AMPS DC-STD RACK PANEL 12 1/8'

HIGH I9"WIDE 20"DEEP, WT85LBS, FREIGHT COL.USED-GOOD COND-LIMITED QTY DATA BOOK $10."

.025 SQUARE PIN PUSH-ON TERMINALS,

FOR JUMPERS-PATCH-POWER-PLUG REPAIR, ETC.,HARD TO FIND! 10/30.50 I00/$4.50

PC LEAD CAPACITORS 20/$I.OO

70PF NI500 I00V0LT 5% DISC S

I20PF lOOVOLT 5% DISC 6 PAX

.01MFD 200V0LT TUBULAR CERAMIC k.005MFD 500VOLT DISC f *_ __

.005MFD lOOVOLT DISC *O.UU

.0068MFD lOOVOLT SQ. DIPPED POLY/1.OIMFD 5OV0LT 5% POLY TUBULAR, LONG LEADS,10/$!.00 IOO/$7.50

CI

-i- BI-PIN BASE T-13/4 I2V40MA

->— INCANDESENT IO/$I.OO IOO/$aOO

CORE MATRIX STRIPPED FROM COMPUTERS-8 PLANES-NO DRIVERS-NO DATA-

AS IS-NO RETURN. 256 + BYTES $19.95, IK BYTES

$2795, 4K+ BYTES $39.95. 2 ONLY 1620 ASS'Y

GOOD COND EACH $125.00

CARD GUIDE a FRAME-I5PR-5 I/2H 5 I/4W 12 1/2L; OR15 SOCKETS ELCO NO. 7008-035-163-002 ON RAILS,YOU STRIP-CHOICE $9.95 EACH. OTHER SURPLUS-SEND $1.00 FOR LIST OR CALL 817-625-2961, MC,BAC.VIZA ACCEPTED. $IO.CO MINIMUM ORDER

J BE ELECTRONICS SALESP 0 BOX 4504, FT WORTH, TEX.76I06

rj ncM ofliwo ti

P.E.T. Food

Creative Software ot.<

p'ogr.

ette topes lor BK PETt:

HOUSEHOLD FINANCE Pari* I and II $15.00

SPACE WAR - Adapted lor th* PET $1000

HOUSEHOLD UTILITY PACKAGE HI $10.00

GAMEPAC HI - five games (or the PET $12.00

Add $1.00 per program pocking and (hipping.

Introducing a low priced Joystick!

Plugi right into the PET with no modificationsof auembly. Comei with two proaromi.

JOYSTICK - With MAZE ond SKETCHPAD...$35.00

STAR WARS SHOOTOUT . For the joytlick. ..$10.00

Add $2.50 packing and shipping lor JOYSTICK.

tiore inlon

n<A a complete I

of currently available programs

Creative Software

8

i Viaw, CA 94040

MASTERCHARGE AND VISA ACCEPTEDCalifornia rtiidanli add 6% lalat tan

Circle 213 on inquiry card.

Circle 191 on inquiry card.

Circle 79 on inquiry card.

Datapoint CRT Terminals

Fully-Assembled — Guaranteed

#3360 $649.50

e Add $15 packing refurbished

• Guaranteed e Shipment FOB, no watting

• Add 545.50 for scrolling mod. or do it yourselfNOW—Power your KIM-I or other small processor

from these terminals Up to 2 Amps at 5, 14. 25 volls

Mode! 3360 speeds from 3OO-4H00 Baud, numerickeypad, cursor controls, Edil. Block-Transmit, searchmodes ASCII Keyboard with codeable options.Green phosphor. 24 82 Ch lines, addressable cursor;RS-232 serial interlace; other speeds availableManual S10. Cable kit $9.95. Datashare/IBM com-patible version SI, 100 e Model 3000 S675

M-33 KSR Teletypes $595. ASR 33 S735.

Call us for service on CRTs, micros, mam-lrames.Leasing, quantity discounts available.

TELECOMMUNICATIONS SERVICES CO.Box 4117, Alexandria, Va. 22303

703-683-4019 / TLX 89-623 T26

I

S-IOO Kitsat Discount Prices

-II slot mother board with socketsand active terminator $80**

• 16 K EPROM board tor 2708's $48**

■ 8 K static ram $125"

There's much more, Includingcomplete systems; send for ourflyer.

PCE ELECTRONICS

4782 DEWEY DRIVEFAIR OAKS, CA. 95628

■ Motr.r Chargi ■ Add 5 K. for shipping,•Visa atcan rafundad.

■ Phona ordara • Calif, raaldants add(916)966-7033 6%ia!aatai.

• No COD

KIT INCORPORATESELECTROSTATIC SHIELD

Oflfln

8 V at 20 amps & 16 V at + 2 A with

fan cooling.

Transformer secondary isolated by

electrostatic shield which helps to

reduce random logic problems.

"Computer 20 K" kit priced at only

$74.95 plus S6.00 handling & shipping.

"Computer 20" transformer available

for only $29.95 plus $3.50 handling

& shipping.

(Handling & shipping slightly higher

outside continental US)

Club & OEM discounts available

Send check or money order to:

MIJOBE CORPORATIONP. 0. Box 775Claremont, CA 91711

Circle 372 on inquiry card.

Circle 296 on inquiry card.

Circle 241 on inquiry card.

What's New?

PERIPHERALS

Floppy Disk System for RS-232Communication Devices

Axiom Announces EX-801MicroPrinter

Soft Touch Bill Paying Home Dial

An intelligent electrosensitive lineprinter, the model EX-801 Micro-Printer, has been announced by AxiomCorp, 5932 San Fernando Rd, GlendaleCA 91202, for $655. The EX-801,designed around an Intel 8048 processor,operates at up to 160 characters persecond and offers users the choice ofthree character sizes to provide 80, 40 or20 columns on the 5 inch (12.5 cm)wide electrosensitive paper. It is designedfor video display hardcopy, data logging,program listing and record keeping.Standard features include RS-232C20 mA serial input as well as parallelASCII; 256 character multiline asyn-chronous input buffer as standard,optionally expandable to 2 K characters,making it possible to take a page dumpfrom a video display terminal in approxi-mately one second; 96 character ASCIIstandard, optionally expandable to 256characters with user programmablefonts; software selection of "reverse"printing in which light characters areformed on a dark background; andoptional 2 K bytes of user programmableread only memory."

Circle 593 on inquiry card.

The Soft Touch Tone Dial for"bank by phone" is designed for useby customers of banks and thrift insti-tutions. The unit is a tone dial thatscrews on the mouthpiece of a regularrotary dial telephone and immediatelyconverts it into a push button telephone.It has all the letters (a thru z) on thebuttons as well as an asterisk (*) andnumber symbol (#) for commands.Upon dialing to the bank computer,the consumer taps in his account num-ber, secret code, merchant code andamount to pay bills. Soft Touch is botha tone dial and microphone in a standard1 cubic inch telephone mouthpiece.The tone frequencies are crystal con-trolled. The keyboard is .05 inches thin,made with eight layers of special con-ductors. For additional informationcontact the Telephone Computer Com-pany Inc, 1838 W Bayshore, Suite 4,Palo Alto CA 94303."

Circle 594 on inquiry card.

The Comm-Stor II is a communi-cations floppy disk system which usesIBM 3740 compatible diskettes andinterfaces with all RS-232 communi-cations devices. Comm-Stor II is micro-processor-based enabling the user tostore and retrieve files by file source.The system gives the user increasedfile storage capacity and maximumusage of the diskette regardless of themix of file sizes; provides the capa-bility of merging and creating newfiles composed of existing files; pro-vides buffering at the terminal or modemport which allows commands and datato be stacked, minimizing the hand-shaking and system delays and providesprotection from data overruns; andallows the user to specify selectedfiles as "protected" (unalterable) whileretaining the ability to create or alterother files. Since it uses a very simpleserial interface and IBM 3740 compati-bility this type of mass storage systemshould prove quite useful in a numberof personal computer situations. A singledrive system lists for less than $3000and a dual system for less than $4000.For more information contact SykesDatatronics Inc, 375 Orchard St,Rochester NY 14606."

Circle 595 on inquiry card.

10GIC M

CANADIANS

i%r ^*a

■r^r^^Bw' JWm W5&T

PDORf M W

Announcing

Kbit basement |

:

rliUDL M W

Dual-Level ^fl jQr

HAMILTON LOGIC

I BARGAINS 1

I ED Detectors ^M TM USES

■m ^m

Show HI- LO Status ^H Wm

^M fjmf Inspection,

i l/Ol ^H fir f'e''' serv'ce<T-w/♦*/•/ ^flj Br laboratory use,Shipped prepaid^! WAf production lines.

with check or JMl - Kv

SYSTEMS

■ w S0R0C IQ120 [assbled] . . $869.95 i I

IJ LEAR ADM. 3A|assbled| .. $859.95 LI

Specializing in logicdevices, microprocessors,

MW LEAR ADM- 1A [assbled] ..$1199.95^1^Al6K RAM BOARD [assbled] $495.00 M

o' c: i. ^u^B ^^r

250nS 180 day warranty

Model jmk wLf

3200A^ ^SPECIFICATIONS

memorys, TTL, Cmos,

fyCENTRONICS 779 $1139.95 W' MICROPOUS 1042 Modi . $779.00 .

_^3 ^^F Input Frequency: <10MHz.

etc.

la al

t^n/^R^^T Input Impedance: <150Kft.

II Wm

WfM^B™'" Pulse Width: 300NS. (TTL).

Send for your catalogue

11 BIT BASEMENT \|

#>5^|^^TTL/DTL Lo<l|<: •■ 2.2V±0.2V.

■Mr *■■

mff^r Threshold: Logic 0, D.6V±0.2V.

Box 7

W p o. Box 1719 V

■Mr^MOS Logic 1, 70% of VDD±0.5V.

^F Threshold: Logic 0, 30% ot VDg±0.5V.

Santa Monica. CA 90406

F Quantity Prices Available

STONEY CREEK

% MB (213)395-8801 TrS* M

ALCO ELECTRONIC PRODUCTS, INC.

ONTARIO L8G 3X7

■"^^ all items shipped FOB factory '^mW

1551 Osgood St., No. Andov/er, Ma. 01845

™Xv^ ^*^w

Tel: (617) 685-4371 TWX: 710 342-0552

^ RaVBaaBBBBBBaaBBBaa> "*^

Circle 6 on inquiry card.

Circle 146 on inquiry card.

Circle 26 on inquiry card.

0

INCORPORATED

A SUBSIDIARY OF SCOPE INC., RESTON, VA.

PRINTERS FOR SALE

■a Limited quantity of usedelectrosensitive non-impact printersare available from the manufacturer

■ as is warranted to work orwill recondition to like new

■ 300/1200 baud, 240 cps.80colbuffered, serial or parallel

■receive only and keyboardsend/receive for crt hard copy orprinter terminals

■ these printers operate withradio shack, trs-80, heathkit, imsai,lear siegler, adds, hazeltine & other

SYSTEMS

■ PRICES START AT J395.00 EACH-CALL OR WRITE

WALT PLYTER, SCOPE DATA,3728 SILVER STAR RD.ORLANDO, FL 32808(305) 298-0500

INC.

INDUSTRIAL QUALITYMICROPROCESSOR CARD KITS

All +5V only, Sid 4.5 x 6.5, 22/44 edge conn.

• 4 K RAM S79.95 • 2 K PROM $ 79.95

• Motherboard $39.95 • 4 K PROM $129.95

• Card Cage $20.00 • Digital I/O $ 59.95

• Keyboard/Display $89.95 • Cassette Interface $ 37.95

• Available tested and in OEM qtys.

• KIM Interface AdBPter $24.95

• KIM Komputer Enclosure $80.00

• BARE BOARDS. ENCLOSURES, FIRMWARE, ETC.SEND S3.70 FOR TECHNICAL MANUAL (INFORMA-TION ON ALL ABOVE).

PAL COMPUTERS USING 6502 SYSTEM!

• Pal Computer with CRK I24K) $1395.00

• Component Boards Available Separately

• Video Board (also works with KIMI $ 299.95

• RAM Board [8K] lalso works with KIM] S 1 79.95

• 6 SLOT KIM Mother Board $ 79.95

• ORDER OUR PAL TECHNICAL MANUAL IS7.25Postpaid! which fully describes the KIM Buss and In-dividual Boards.

Auilver u

Electronic Communications Co.

P. O. Box 365, Ctiino. CA 91710or Visit Retail Store:13552 Central Avenue

pur

VISA1 Mastercharge1 Calif Residents Add6% Sales Tax

DISKETTES

VERBATIM for Your DRIVE

MINI Is'3.90STANDARD $A 1Q

Soft or Hard Sector • ■ ■ W

Ea. inboxesof 10

Ea. in

boxesof 10

CP/M1.4KrHho^n$145

Circle 314 on inquiry card.

Circle 317 on inquiry card.

PLASTIC BOX SS $3HAZELTINE CRT 1500 S£!.'1000

Complete 1»2»3 Computer tr1 ■ rSystem: Hazeltine 1500, J0|4DHorizon-2, Centronic 779

Visa, Master Charge, Cash, C.O.D.

MANCHESTER EQUIPMENT CO., Inc.

30 Midland Ave. • Hicksville. N.Y. 11801Call Collect: (516) 4330613

Circle 204 on inquiry card.

AN S-100 BUS COMPATIBLECOMPUTER FOR UNDER $150?

Single board, S-100 compatible 8080-based computerdesigned at the University of Iowa to use the Intelcosmetic reject kit.Features are:Memory: four 1702 EPROM's orthree 1702s and two 2111'sPower-on jump and independently selectable board

addressUses TMS5501 multi-function I/O controller:Parallel in. parallel outUSART

Five interval timersHandles vectored interruptsTTY or RS232 interface on boardFully S-100 compatibleSocket for front panel connection(IMSAI front panel connector pin compatible)Ideal CPU replacement for IMSAI's and Altairs.Will run with just applied unregulated voltages as asingle board computer.

Bare board, schematics, limited documentation $35Schematics, limited documentation (includessimple monitor for single board operation) $3

uPMEM

1291 Center St. N.E.Cedar Rapids, Iowa 52402

COMPUTERPROFESSIONALS

Opportunities availableworldwide. Experience inScientific or Business en-vironments can lead to ex-citing projects in variedlocations.

SUN STATES: Stale-of-the-Art Design and Development.15-30K

HAWAII: Digital SwitchingSystems. 30-33KGERMANY/JAPAN: Soft-ware Field Engineer. Basesalary 17-1SK + Bonus +Per Diem.

NEW ENGLAND: Scientific& Business Applications; Minis-Micros; Strong Assembler,16-28K

Call us collect(603) 889-0112or send resume.

PREFERREDPOSITIONS, INC.

142 Main StreetNashua, N.H. 03060

MIGRO-VERTER

A SPECIAL COLOR MODULATOR FOR APPLE II USERS!!UHF Vernon. Operates above channel 14. Eliminates worms

Operates above the switching harmonics of the computer,thereby yielding a cleaner, worm-free picture. Tunableover a minimum of 4 channels. Interfaces directly withthe Apple II as well as most other micros. Comes withvideo cable and RF output stub coupler. Two-toned cowltype decorator cabinet. Size: 5.5cm x 8.5cm i 11,5cm.Power: +5V. Current approx. I ma. Self-powered with 4pencell batteries. Operating life in excess of 1000 hoursor near shelf-life of batteries. Excellent stability. Precisefrequency adjustment. No assembly required except forinstallation of batteries, not supplied. MODEL MVX-500.

AVAILABLE FROM YOUR LOCAL COMPUTER DEALERor direct from ATV RESEARCH. COST including shippinganywhere in USA and Canada— $35.00.

"PIXE-PLEXER" An IC type video-to-RF modulatorincludes FM sound sub-carrier, color subcarrier andseparate R-Y and B-Y inputs. Designed around theLM-I8B9 chip. A designer's dteam with full data sheets.Model PXP-4500. Kit form. $24.50 postpaid.

"PIXE-VERTER"interface module.

The

original computer video-to-RFform: S8.50 Model PXV-2A

I PHONE or WHITE TODAY. DIAL 402-387-3771.

sfw

13-0 Broadway ATV Research Dakota City, Nebr. «u»—MT^ 68731

Circle 376 on inquiry card.

Circle 302 on inquiry card.

Circle 21 on inquiry card.

But You Only Need

+T-THE COMPUTER CORNEFT

~**~ •SOL - A New Dawn is Here!

~*~ • COMMODORE PET & KIM

~*~ • NORTHSTAR HORIZON

"*" • IMSAI VDP-80

~*f~ •Memories & I/O Boards

-X- •Computer Book Service

-*X— • Magnetic Tapes & Disks

->j— • Full Line of Magazines

->j— • Brain Games & Puzzles

-*>f- •Workshops & Club Information _

~^~ Visit THE COMPUTER CORNER for "*-, all your computer needs. Stop in and_, browse — you'll like our personal service.

_w_ THE COMPUTER CORNER

Whiie Plains Mall - Upper LevelW 200 Hamilton Avenue "

-f>4- White Plains, New York 10601

Tel: (914) WHY - DATA

Ample Parking10-6 Daily & Saturday

rV 10-6 Daily & Saturday ~^W

^, 10-9 Thursday \ >W

WE SHIP FROM STOCK

TELETYPE MODEL 43 TTL $985

RS232 $1085

TECHNICO 9900 SS 16 BIT COMPUTER 16 bitmicroP, 32 bit I/O, hardware mult and divide, buf-fered bus, 20 ma loop, RS232C, 8 interrupts, fullysocketed. Expands up to 64 KB memory.Languages: assembler, BASIC, SUPER BASIC,(COBOL, FORTRAN IV soon available).

Super Starter Kit: $299

Assembled: $399

EX-150 ELECTRONICS PROJECTS KIT Build150 working electronics projects including basiccomputer circuits, lie detector, transistor radio.Perfect for all ages to learn electronics fundamen-tals. A COMPLETE KITI Nothing else required. $69ATTASHE 200 EXPERIMENT INTEGRATED

CIRCUIT KIT $87

Tl 57 PROGRAMMABLE CALCULATOR ... $50To order: Check, money order, major credit cards.$4 shipping (except teletype). NYC residents add8% tax.

OWENS ASSOCIATES, DEPT. B

147 NORWOOD AVENUESTATEN ISLAND, N.Y. 10304

Day, evening, weekend calls welcome

(212) 448-6283 or (212) 448-6298

Circle 65 on inquiry card.

the

COMPUT6RHARDWARESTORE INC.

Dealers for:APPLE II. IMSAIVECTOR GRAPHICKIM-I.OAECYBERNEX.JIMPAK

WithALPHA-1 CASSETTE SYSTEM

16 BitsALPHA MICROTECHNICO STARTER SYSTEM

Catalog Available

818 FRANKLIN ST.. ALEX.. VA.703-5.188085

9 WEST CARY ST., RICHMOND. VA. if804-780-0348 1

Circle 71 on inquiry card.

Whafs New?

New Teleprinter Offers Many Options

PERIPHERALS

8 Inch Floppy Disk System forSwTPC 6800

The Southwest Technical ProductsCorp DMAF1 is a dual drive, singledensity, double sided 8 inch floppydisk system. The hardware consists ofan SS-50 bus (SwTPC 6800) compatibledirect memory access (DMA) controllercapable of handling up to four drives,

two CalComp 143M double densitydisk drives, aluminum chassis, regulatedpower supply, drive motor controlboard, cooling fan, diskette and inter-facing cables. The unit is 5.4 by 17.1 by20.5 inches (13.7 by 43.5 by 52 cm).

An 8 K BASIC interpreter with diskfile capability and string functions isincluded with the system. Each disketteholds approximately 600,000 bytes ofdata. With two drives there is over onemegabyte of data on line.

The system is available assembled orin kit form (the drives are fully as-sembled). The unit sells for $2095assembled, or $2000 as a kit, pluspostage. Contact Southwest TechnicalProducts Corp, 219 W Rhapsody, SanAntonio TX 78216."

Circle 585 on inquiry card.

AC Wiring Controller

AC Controller (Apple)

Dual Channel AC Remote

AC Controller IS-!00i

A new system designed to control ACdevices remotely from any Altair (S-100)bus or Apple II computer over existing110 VAC wiring has been announcedby Mountain Hardware, POB 1133,Ben Lomond CA 95005. The new unit,

called Introl, provides on and off controland status checks at any AC outlet. Thesystem impresses a 50 KHz control signalonto the ordinary AC wiring. It thendecodes the signal at any outlet toswitch AC devices on and off. In thehome, such devices could include lights,TVs, stereos, solenoid valves, sprinklers,burglar alarms, etc. With the additionof input sensors the computer systemcan automatically control such variablesas temperature, humidity and soilmoisture. Programs are written in BASICor assembler language. Software sub-routines come with the -equipment.Complete documentation is also pro-vided. For Altair (S-100) bus computers,a 100,000 day calendar and clock boardis offered as an option. Price of the ACcontroller is $149 in kit form or $189assembled and tested. Dual channel ACremote units are $99 each in kit formor $149 assembled and tested. Thecalendar and clock board is $179 in kitform or $219 assembled and tested."

Circle 586 on inquiry card.

LSI-11/2 Compatible Data AcquisitionCode

Three types of data acquisition cardsthat are compatible with the new LSI-11/2 computer as well as the olderLSI-11 are now available from Andro-meda Systems, 14701 Arminta St,Panorama City CA 91402. The threecards consist of: the ADC11, a 16channel 12 bit analog to digital con-

verter; the DAC11, a 4 channel 12 bitdigital to analog converter; and thePRTC11, a programmable real timeclock with 13 internally generatedrates, five operational modes, and twoexternal inputs. These products are allfunctional supersets of the similar DECproducts (AAV11, ADV11-A KWV11-A)but are in the dual width (rather thanquad width) format. Also available is theCB11 series of compatible connectorboxes which facilitate external con-nection to the above products. Pricesare $850 for the ADC11; $700 for theDAC11 (four channels, deduct $75 foreach deleted channel); and $600 for thePRTC11. All connector boxes are $150each; cables are extra."

Circle 587 on inquiry card.

The TC480 teleprinter is available inreceive only, keyboard send and receiveor automatic send and receive configura-tions. It prints 1 28 ASCII characters in a7 by 9 dot matrix at speeds up to 30characters per second. Up to 132 char-acters per line can be printed and up to64 characters to be printed can be storedin the teleprinter's internal memory. Anadjustable sprocket feed handles paperfrom 3 to 15 inches wide. Horizontaland vertical tabbing can optionally becontrolled by programs resident in readonly memory or by a program loadedinto programmable memory. Otheroptions include a numeric keypad, pinand front feeds, a paper tape reader orreader and punch, a 2 drive cassette unit,a minifloppy disk drive and 8 K bytes ofadditional memory. A logic level serialinterface is standard with a variety ofoptions including RS232 and 20 mA cur-rent loop interfaces. In quantities of fiveor more, the TC480's price ranges from$1625 (receive only) to $1750 (keyboardsend and receive), from Olivetti Corp ofAmerica, 500 Park Av, New York NY10022,(212) 371-5500."

Circle 588 on inquiry card.

Serial Data Translator

A serial data translator, Model ST-1,which performs code translations on aserial data stream has been announcedby Sigma Data Systems, 715 TorreyaCt, Palo Alto CA 94303. The deviceis said to be a self-contained module,including power supply, and communi-cates via two RS-232 ports at up to 19.2bps. Standard translations include theASCII, EBCDIC and Baudot codes.Translation of terminal control codes(such as cursor control) have beenimplemented. Other translations areavailable or may be user programmed.The unit contains an Intel 8035 pro-cessor and up to 1 K of programmableread only memory. The device allows theuser to change peripherals withouthaving to modify software written forperipherals using different codes. Itshould be compatible with any hostcomputer due to its serial RS-232interface."

Circle 589 on inquiry card.

182 |une 1978©BYTE Publicalions Inc

S & R Electronics, Inc.

4020 Hempstead Turnpike

Bethpage, New York 11714

Phone: (516) 731-8200

♦ Finest commercial quality S-100 Bus

Memory Boards by Industrial MicroSystems. Fully static.

♦ Fully socketed, assembled, tested and

burned in.

♦ 6 month warranty on parts and labor.

♦ All address & data lines fully buffered.

8k-450 Nanosec $194.60

8k-250 Nanosec. $214.80

16k-450 Nanosec. $434.60

16k-250 Nanosec. $479.80

BankAmericard and Master Charge accepted.

Personal checks ivill delay shiDment until

cleared Complete systems configured

to your needs, NY state residents

please add sales tax.

Call or Write.

ifci&ifci&'fei

couplers "^connect: always

The Datec 30 Originate Only and theDatec 32 Originate/Answer acoustic couplersprovide reliable Bell System 103/113 compatibleDuplex or Half-Duplex, 300 bps datacommunication over conventional telephones.

Datec acoustic couplers are the only couplerson the market with CRYSTAL CONTROLfor both the receiver and the transmitter.

The Datec 30 and Datec 32 acousticcouplers connect, time and time again

^g

P.O. Box 839

Chapel Hill, North Carolina 27514

phone: (919) 967-5605

jS

raeco

THE ULTIMATE

Precision machined tape guideinterface directly to a ?]fl or ijM?Tristate buffer outputAll handshake logic-711 compatiblePull thru tape- Reads 5™ 55515 cps■Interface thru a 14 pin IG plug < ?*»,«.

TMM .SS.M.LEO . TEST.- f, «.50'

M*^*3 PLUGIN H**OSHAKE ADAPTER ♦ 7.50*

TO ORDER. SEND CHECK OR^M^ TO:P.O BOX 1221FOND OH LAC, Wl 54935

MICROCOMP

WE SPECIALIZE IN MICROCOMPUTER SYSTEMS FORHOBBY- BUSINESS-EDUCATIONWE ARE EXCLUSIVE OSI DEALERS...

■■■ WE 00 A BETTER JOB.

-KITS-FULL SYSTEMS-PERIPHERALS-FLOPPY DISKS- ACCESSORIES

Circle 313 on inquiry card.

Circle 83 on inquiry card.

Circle 309 on inquiry card.

Z-80 DISASSEMBLERZILOG MNEMONICS

North Star or CP/MDisc, Others uponrequest; $5 extra

$30.00 Immed. del.

Microlithics, Inc.

Bits, Bytes & Micros2918 N. Mac Arthur Blvd.Oklahoma City, OK 73127(405)947-5646

USR-310ORIGINATEACOUSTICCOUPLER

Operates With

Any Standard Telephone

$139

Direct1

Telco2

Connsct

DAA

Style

Style

$324

$185

$299

$160

to phon

lines via

Also Available

USR 330 Ougmale/Aulo Answer ModemUSR 320 Auto Answer Only Modem

(1 FCC Certified Package Connection to phonestandard extension phone lack)

(2 Connection to phone lines via CBS-1001F DAA which can beleased Irom phone company for appro* $5 00/mo plus installationtee)INTERFACES:

• USR-310 - RS232C only

• USR 320 and USR 330 - RS232C and 20mA

(Specify with order If both interfaces are required, add S!0 tounit price)ALL UNITS FEATURE:

• 0-300 Baud Data Rate

• Stand Alone Unit

• Half/Full Duplet

• 90 Day WarrantyPrices include shipping and handlingResidents add h% sales tax

U.S. ROBDTICS, INC.

Box 5502 / Chicago, Illinois 60680 / (312) 528-9045

Fully Assembled andTested

Optional AnnualMaintenance Coveragecontinental U S Illinois

Disc/3

DISC/3 COMPANY

COMPLETE MICROBUSINESS SYSTEMS

SOROC IQ 120 $ 899.95

Assembled

LEAR SIEGLER $ 749.95

ADM-3A kit

INS 8K Memory Board $ 175.00

IMSAI 8080 kit S 599.95

CENTRONICS Business $1145.00

Printer (132 columns)

Disc/3

DISC/3 COMPANY

1840 LINCOLN BLVD.

SANTA MONICA, CALIF. 90404

(213)451-8911

Circle 209 on inquiry card.

Circle 377 on inquiry card.

Circle 105 on inquiry card.

SHORT CASSETTES

PET-SIZED CASSETTES

DATA TAPE cassettes use high energy tapeselected for reliable operation with allpopular home and hobby computers. Send$1 for sample C-10, prices and Information.

Dealer inquiries invited

MICROSETTE CO.

777 Palomar Aire., Sunnyvale, CA 94086

RADIO SHACK ANDCOMMODORE USERS

Low Cost Software on CompatibleCassette Tapes for your TRS-80and PET Computers.

—Games

—Investment/Small Business

—Educational/Scientific

—Kitchen Programs

INTRODUCTORY GRAPHIC GAMESPECIAL-Star Trek (8K), Football(8K), Lunar Lander, Wumpus, Bio-rhythms and Acey Ducey on 2 Cas-sette Tapes. A $25 value for $20.00.

SEND FOR FREE CATALOG

Software royalty plans also available.

r^PPARAT, INCORPORATEDP.O.Box 10324Denver, CO 80210

DIABLOTERMINALS!

LIMITED OFFER

HYTYPE I TERMINAL$1595.00

30 character per secondDaisy wheel printerRS-232 serial interface

Also:

HyType II

NEC SpinwriterQumeSanders 12/7

Complete line ofmicrocomputer products

HISflE TlflPBT

MICROCOMPUTERS, PERIPHERALS AND SOFTWARE

1015 Navarro San Antonio. TX 78205 512/2221427

Circle 214 on inquiry card.

Circle 11 on inquiry card.

Circle 211 on inquiry card.

What's New?

Apple Seeds...

Easy to Install Add-on Memory for PDP-11

The ARM-1100P, an add-on paritymemory for the PDP-11, uses only onebackplane slot and requires just oneUnibus load, facilitating installation onany PDP-11 computer employing aUnibus structure. Each unit is suppliedcomplete with wired card rack, powersupply, interface, parity control, coolingfans and interconnecting cables. Pro-vision is made on the rear of the chassisto connect to another chassis or toterminate the bus. An on line and offline switch removes the memory fromthe bus for diagnostic purposes. The corememory, which has an access time of375 ns and a full cycle time of 700 nsprovides from 32 K to 128 K of memoryin 32 K increments, starting at any 8 Kboundary. The ARM-1100P is pricedat $4950 for 32 K 18 bit words to$12,750 for 128 K, from Ampex Corp,200 N Nash St, El Segundo CA 90245,(213) 640-0150."

Circle 591 on inquiry card.

Point of Sale andInventory Control

An interactive computer programwhich allows a microcomputer using the8080 or Z-80 processors to be used asa Point of Sale and Inventory Controlsystem has been released by The DataGroup Inc, 5947 East 82nd St, Indian-apolis IN 46250. According to the firm,POSIS can be used by a person withabsolutely no prior computer experi-ence. The program is said to conversewith the user in "plain English" and tolead him through each transaction. Errorhandling capabilities are claimed to in-sure that human mistakes will be caughtby the computer without destruction ofvital information. POSIS stores informa-tion up to 9000 individual inventoryitems and is said to be able to generatea variety of management reports basedon a business's inventory transactions.Additional features include: ID and pass-word security checks at key points inthe program and a complete audit trailsummarizing every transaction. Mini-mum hardware requirements are: an8080 or Z-80 system with 48 K bytes ofuser memory, a video terminal, and aMicropolis Corp dual drive disk. POSISand its detailed instruction manual maybe purchased at a cost of $750."

Circle 592 on inquiry card.

III! MM

We recently purchased an additional32 K bytes of memory for our Apple,filling up the available sockets to a full48 K bytes of memory. Here is a picturewe took of what you (or your local com-puter store) will get, photographedprior to insertion of the memory into anApple II: two packages with eight of the16 K dynamic memory chips per pack-age. Note that with computers like theApple which employ the large memoryintegrated circuit technology, there isno need for plug in memory boardswhen expansion is desired up to thelimit of sockets built into the computer.An important consideration in pur-chasing such a computer, then, is howmuch memory can be plugged in beforea new cabinet and printed circuit boardsare required.

For more information on additionalmemory for Apple, contact AppleComputer Inc, 20863 Stevens CreekBlvd, Bldg B3-C, Cupertino CA 95014."

Circle 590 on inquiry card.

ATWOOD ENTERPRISES

KITS

Available assembled and tested $89.95.

Needs only 4K space 2716.

$ 79.95 4K RAM

$ 1 29*95 4K PROM Bipolar 512x8 Proms 93448/6341.

$149.95 8K EPROM

$^59.95 DIGITAL I/O

$ 99.95 ANALOG IN 32inputs, 8 bits, 100 microseconds

$ 49.95 PROM PROGRAMMING

8 parallel ports plus 16 interrupts.

$129.95 SERIAL I/O

I■H

IJ

I

I1

IH

IJ

Burns 4. |Can copy to 3. I

1

7 serial ports, fully software controlledTo 500 baud.

I

DID YOUKNOW . . .

DIGITAL I/O

8 parallel ports.

8 bits each (64 total).

Each line fully programmable.

Any line input or output.

16 interrupt lines.

80 I/O lines total.

2 - 50 pin I/O connectors.

$59.95

MOTHER BOARD

8 SLOT 44 PIN BUS

50 Pin Edge Connector

Mother Board $20.00 eaConnectors 2.50 ea

Card guides for above $10.00 per set.

MAKE CHECK OR MONEY ORDER PAYABLE TO:

Kathryn Atwood EnterprisesP.O. Box 5203. Orange, CA 92667

Discounts available at OEM quantities. For orders less than $25 total, add $1.25for shipping. California residents add 6% sales tax. Estimated shipping time 2days ARO with money order. For checks allow 7 days for check to clear.

184 |une 1978 © BYTE Publications Inc

Circle 25 on inquiry card.

CaUFornIa IncIustrIaI

Post Office Box 3097 B • Torrance, California 90503

HARDCOPY PRINTER

These Diablo model 1200 printers were originally manu-factured for Control Data Corporation. The unit featuresa ninety-six character upper and lower case daisy wheelcapable of printing thirty characters per second. Impactprinter assures word processing quality on multiplecopy forms. Adjustable tractor feed accepts paperwidth up to fifteen inches on a 132 character carriage.

All printers were removed from service in operatingcondition. Printer only $795.00. Floor stand, powersupply and Control Data interface package $100.00additional. Shipped from Los Angeles freight collect.

TELETYPE MODEL 4 3

Now Irom Teletype, the Model43 Is capable ol printing 132 ASCIIcharacters per line. Send and receivedataal 10or 30 Char, per second. Key-board generates all 128 ASCII codecombirlions US 232 interlace, same as the populiModel 33. Data sheet sent upon request. Manulacturer suggested price S1377 00.

IMMEDIATE DELIVERY *1219

TTL model with NOVATION brandAcoustic Modem. M419

tst

HEXADECIMAL KEYBOARD

I34.95

r

HOOD

»

1

^r

MAIE

VB

|°V.'.\

■■lo

your cioice

\ DB25P

in ale plug & hood

or

DB25S female

*3?5

Qty. fe. male hd.10 3.45 2.4S 1.1525 3.15 2.25 1.05100 2.85 1.90 .95500 2.2S 1.60 .85IK 1.97 1.37 .73

IOO PIN

IMSAI/ALTAIR

S-100 • GOLD PLATED • .125" CENTERS

Altair .140 row, soldetlail $5.98 3/516.50

Imsai .250 row, soldertail $4.98 3/511.95

3 Level Wire Wrap .250 row. .. $4.98 3/$13.00

SPECIALSW.W same as above without ears$3.50 3/S1072 (dual 36) WAN .156" centers... $2.50 3/56

5d.98 r*«.-.l.Ml. Certified Digital

,* SCOtCh CASSETTES

H

Diskettes

8inchSoft(lBM)8 inch 32 sectorMini Soft sec.Mini lOsectorMini 16 sector

Won't drop a BIT!

CALIFORNIAINDUSTRIAL

is an

Authorized

Dealer of

Scotch Brand

Data Products

LOW POWER450 MS

^

74977410074107741097411074116741M7412174123741237412574126

741457414?74148

p

7415174153

74154

74156

74159 2

74160

74162

74163

7442

59

74167

7401

7443

79

74170 2

7445

.89

74173

7403

19

7446

99

74174

7403

19

7447

99

74175

7404

19

744B

99

74176

7450

74177

7451

7407

25

7453

25

74193

7403

25

7454

25

7460

7470

7411

7472

7412

7473

7413

7474

7475

7476

7417

7479

399

7480

79

7482

7483

7485

7486

74B8

3 40

7489

7490

7491

99

7492

7493

7494

7495

7440

39

40254027

4028 1

4029 14030

4032

5 24.8 8

c, ;; univac

KEYBOARD

JOYSTICK S4Sj)

Mani'SwIlch hexadecimal keyboards are designed formicrocomputer systems that require 4-bit Qulpulin standard hex code.Each assembly consists ccaily sealed reed swilche:

Reliable low inction acetal resinplungers are credited lor the smoothoperation and long tile of this

keyboard.

andTTL'onei

Quiet Buss

S-lOO MOTHER

Tho Quiet Buss Irom California Industrial isquality engineered. No short cuts have been takento produce this mother board. Active terminationcircuitry prevents nolso and crosstalk. Manufac-tured from extra heavy FR-4 epoxy glass. Featuresftlckness copper traces.

129.95

IMSAI edge connectors 3 for U 1.95

COLOR TELEVISIONR.R MODULATOR

Potter & Brumfield

REED RELAY

ESvolt coil,pulls3.5v.

10 100 IK97 .79 .65

S-100 PROTOTYPE BOARD |

GPlOO-Moxlmum design ver- t4QQOsoniiry along with siandotO X*J.'°

oacuess decoding and but-tering for SlOO syslemsRoom lor 32 uncommitted 16pin IC s. 5 bus buffer & de-coding chips. 1 DIP addressselect switch, a 5 volt regu-lator ona moreWWIOO-Wire wrap breod-booerj. similar lo the GPTOOAllows w»e wrap of Qti sizes

I ot

An extra regulator positiontor muHipie voilage applica-tions

'79.5°

Digital Cassette Driue

COMPUTER COIMTROLED

This precision I/O assembly featuresremote software controlled searchcapabilities. Two independent capstandrive motors allow the computer tocontrol direction and speed of thetransport.

The assembly consists of a Raymondcassette transport, chassis, mother-board and three edge cards: read/write,capstan drive & control card.Current replacement valued at over$700.00. Schematics and completedocumentation included. USED, but inexcellent condition.

Thumbwheelswitch

Ten position

BCD

s139ea.

10 60$1.19 89

oS

I

Miniature /Switches .1

V

SPECIAL

GENERAL INSTRUMENT ASCII Keyboard EncoderAY 5-3600 Prime but house marked only $4.95

2N2222A .20 .18 .16.152N3055 .69.65.59.55.79 .75.69.651.59 149 1.39129.15 .11 .09.07.15 .11.09.07

odes

10 25 1001N4002 100.. .08 06.051N400S 600v. .10.08.071N4148 signal .07.05.04jumbo red ea. 10 25 100

LED's «5J3.ii.m

Power Adapter

6vdc,140inA»l.»7vdc,1.4 A. 5.S09vdc, 15mA. 1.1910vAc,300mA.

"M

Binding Postsm 5-WAY

3for*1.19

20^ 100US .29

SOLDERLESSTERMINALS,

INSULATED20 tor

s.98

Specify:22-18:16-14'100 500 Ik450

RELAYS

SPOT MINIATURE

10 25 100

S1.19ea. $115 104 .69

Coil 12 Volt dc.

7 Amp Contacts

P. C. Board Mount

CAPACITORS

ELECTROLVTICS

80,000/10v. 3.95 349 2.954500/50v.$l»9 135 119

1000/15v «.BS 49 .45

axial

your choice

*-30 $.88 .81.73.66SPDT Miniature Toggles

7101 C&K 0N-N0NE-0N

7107 jbt ON-OFF(mnt.ON) I

7108 CK ON(moment.0N> |

Rocker IBT DPDT

Rotary 3P-4Pos.

Rotary 3P-6-Pos.

Push B (N.0.) $.39ea, 4 S1

DIP Switch

SPST

DISCOUNT < t

Wire WrapXenter

Heavyduty groundedpower cord and matingchassis connectors.

A A"

450mA.

IC SOCKETS

wire wrapea. 25 50

low profileea. 25 50

17< 16 15

37. 36 35

18 17 16

38 37 36

19 18 17

99 93 85

36 35 34

169 155 139

63 60 58

SB9.95 IBW630 '

JSk KYNARSrSp

.98 500 1.000 11,000

59. $15. $105.

VISA

m

Circle 39 on inquiry card.

Circle 60 on inquiry card.

Stand Alone ASCII Keyboard Specification

oo

$138

ASSEMBLEDAND TESTED

Plus S3.00 handling charge.California residentsadd 6'/2% sales tax.

&4 SIMULTANEOUS OUTPUTS AVAILABLE: THE ONLY ONEON THE MARKET

3.

SERIAL TTL LEVEL

BUFFERED 8 BIT (TRI-STATE LATCH) PARALLELOUTPUT WITH VALID DATA SYNC PULSE AND LEVEL20 MA OPTO-ISOLATED CURRENT LOOP, POLARITYINDEPENDENT4. EIA RS232C^SINGLE +5 VOLT 300 MA (NOMINAL) POWER SUPPLY

(REQUIRED)^INDUSTRY STANDARD 2 KEY ROLLOVER ENCODER^ANSI-COMPATIBLE KEY SET; FOR SLIM-LINE "HIDE-AWAY" PACKAGING

5 COMPONENT SALES INC."77B-A BRANNAN, SAN FRANCISCO. CA S4103[41S] 861-1345

^SEGMENTED SPACE BAR ALLOWS FAST MULTIPLE-SPACING WITHOUT REPEAT KEY

^REPEAT KEY REPEATS AT CHARACTER RATE

#USER SELECTABLE UPPER CASE ONLY (KSR/ASR/33REPLACEMENT) OR UPPER/LOWER CASE

*FACTORYSETAT110 BAUD BUT EASILY ADJUSTED BYUSER TO ANY BAUD RATE FROM 110 TO 9600 BAUD

^FLEXIBLE PARITY

#LED INDICATOR FOR SHIFT-LOCK KEY ELIMINATESCASE UNCERTAINTY

624 PIN DUAL-INLINE CONNECTOR

ALOW PROFILE CASE (OPTIONAL) $40.00

1HI Orders accepted by phone or mail. ^^«"

MASTERCHARGEft VISA* COD it CHECK* MONEY ORDER

lectrolabs

Educational Grade VIDEOTAPE Special: y/x2400' 20 boxes/$125.00

The "Pro" fully encoded ASCII Keyboard by Cherry. Auto RE-PEAT feature, 5 special function keys. 300mA/5V. (Shown asmounted in 'The Case', Below) $119.00, 3/99.00,10+/89.00

USED SYLVANIA12" MONITORSYou Fix: $24.95Working: $69.95Cold Chassis, 25lbs.

The Dumb Terminal for Smart People

80X24 with full 128 char. ASCII UC+LCfont with all control characters displayed.300-19,200 baud RS232. 2nd font addressablefrom keyboard in you-program-it 2708 forAPL, Graphics sets, etc. Plug in monitorI/O connector, 110VAC and you are ready.INCLUDES: 'The Case', Cherry Kbd. A usedmonitor, ESAT 200A, all options exceptvector addressable cursor and modem.Bulletproof design and construction.Normally $675.00 What you alwayswanted your ADM3 to be:SYSTEM"A" $649.00 10/$599.00

4>Q Box 6721 Stanford;!

Ol. 94305415-321-5601

iii

THE FANTASTIC!

MEMOREX FIVE-FIFTY

* Hard and Soft Sectoring

* Single and Dual Density

* Double side configurationas a retrofit at any time.*110/220V,50/60Hz

*Pin for pin compa table with

Shugart 800,801,850,851

(50 pin edge connector)

$536,2/499, 5/475,10/449

25/425,100/405

Double Sided Retrofit $200

MINIDISKETTES (5.25') 1-9 10-24 25+10, 16 or Soft Sector $4.79 4.65 4.45

STANDARD (8') DISKETTESHard or Soft Sector $5.99 5.33 4.79

"The Case" Beautiful and sturdyanodized aluminum case in deep black designed to contain theESAT 200A, and with a bezel cut out for the Cherry 'Pro' keyboard,(installed as shown above) Choose deep brown, light yellow, or crim-son to accent or color code your installation. The only choice forhard-use institutional and educational applications. $69.00, 10/ 59.00

CASSETTESR-300 Certified Phillips Type $5.25 4.99 4.351-150 Certified for audio decks $4.60 4.30 3.90('Kansas City' & SWTP formats)

SURPLUS Muffin type fans $7.95, Lambda Power Supplies

5V/70A-$145.00, 35A-$89.00, 16A-49.00, 12V/7.3A-S69.00

OUR CATALOGUE

Contains IC's, TX Sockets (Icent/pinJAdvice and much more. It is free.

Shipping and Handling: Surface: $o.40/ib. Air: $0;75/ib., 1.00 minimumCat. Tax: 6.5% Insurance: $0.50 per $100.00

186 BYTE June 1978

Circle 115 on inquiry card.

ller

KIT FEATURES:

1. Double sided PC board with soldermask and silk screen and gold platedcontact fingers.

2. Selectable wait states.

3. All address lines & data lines buf-fered!

4. All sockets included.

5. On card regulators.

KIT INCLUDES ALL PARTS ANDSOCKETS (except 27D8's). Add $25. forassembled and tested.

16K E-PROM CARD

IMAGINE HAVING 16K OF SOFTWARE ON LINE AT ALL TIME!S-100 [Imsai/Altairj Buss Compatible!

PRICE CUT!

$57.50 kit

SPECIAL OFFER:

WAS $69.95

Our 2708's (460NS) are $12.95when purchased with above kit.

lA

sufa

KIT FEATURES:

ADD

$20 FOR

250 NS

1. Doubled sided PC Board withmask and silk screen layout,plated contact fingers.

2. All sockets included.

3. Fully buffered ondata lines.

4. Phantom is jumperpin 67.

5. FOUR 7805on card.

regulators are provided(450 NS)

BK LOW POWER RAM KIT $149.00

S-100 (Imsai/Altair) Buss Compatible! 2 kits for $279

lj''"'iiif.Ji)iiii8|llll!!'|ii"ltl[liii!li!'' Fully Assembled & Burned In

$179.00

Blank PC Board w/ Documentation

$29.95

Low Profile Socket Set 13.50

Support IC's (TTL & Regulators)

$9.75

Bypass CAP'S (Disc & Tantalums)

$4.50

USES 21L02 RAM'S!

MOTOROLA QUAD OP - AMP

MC3401. PIN FOR PIN SUB.

FOH POPULAR LM 3900.

3 FOR $1

ALARM CLOCK CHIP

N.S. MM5375AA. Six Digits.With full Data. New!

$1.95 each

MOTOROLA 7805R VOLTAGE REGULATOR

Same as standard 7805 except 750 MA output.TO-220. 5VDC output.

44c each or 10 for $3.95

FULL WAVE BRIDGE

4 AMP. 200 PIV.69<t 10 FOR $5.75

NOT ASSOCIATED WITH DIGITALRESEARCH OF CALIFORNIA, THESUPPLIERS OF CPM SOFTWARE.

450 NS! 2708 EPROMS

Now full speed! Prime new units from a major U.S. Mfg. 450 N.S.Access time. 1 K. x 8. Equiv. to 4-1702 A's in one package.

$15.75 ea.

4 FOR $5000

COMPUTER MFG. MAKES

S500.000.00

GOOF!

♦AO

tokov> 4K RAM CH|PS _ 99<t:

EACH

22 PIN DIP

A major U.S. computer mfg. installed thousands of these 4K Motorola RAM's on the wrong boards and had to remove them. All parts were then tested, and metFULL SPECSI If you don't mind a little solder on the leads, then this is the best memory buy in the world. Arranged as 4096 x 1 Bits. 470 NS.The Motorola 6605 is one of the easiest dynamic RAM's to use since it DOES NOT require multiplexed addresses as do most other 4K's such as the 4096 or 4027.A complete memory board design using the 6605 is outlined in the Motorola M6800 Applications Manual starting on page 4-70.

990 each LOOK!

'WITH DATA SHEET) i-wwii.

FOR $6.95 YOU GET AS MUCH STORAGE AS IN 32 - 2102s!

MCM6605

FULLY GUARANTEED!

SURPLUS BUY OF THE DECADE!

8FOR$6.95

4096BYTESOFRAM!

4K STATIC RAM'S

2114. The new industrystandard. Arranged as 1Kx4. Equivalent to 4-21L02's in 1 package! 18pin DIP. 2 chips give 1Kx8.

2/$24.

8/$85.

OPCOA LED READOUT

SLA-1. Common Anode..33 inch character size.The original high efficiencyLED display. 75c ea.

4 FOR $2.50

2102 RAM BLOWOUT!

Fully static. Standard Power. Themostpopular RAM for microprocessors.We made a huge surplus buy, but therewill be NO MORE WHEN THESE AREGONE!

Part#21F02-4 450 N.S. FAST!

8 FOR *695 32 FOR $25

Z-80 PROGRAMMING MANUAL

By Mostek, The major Z-80 second source. The mostdetailed explanation ever on the working of the Z-80 CPUCHIPS. At least one full page on each of the 158 Z-80instructions. A MUST reference manual for any user ofthe Z-80. 300 pages. Just off the press. $12.95

HEAVY DUTY!

Full Wave Bridge25AMP50PIV

$1.25

Tantalum Capacitors

1 MFD. .35V. ByKemet. Axial Lead.Best Value! 10/$1.

GE 10 AMP Triac

SC146D. House no.

To-220 case. Rated

10amps400PIV.

75c ea. 3/$2.

Digital Research Corporation

w (OF TEXAS) ~

P. O. BOX 401247 • GARLAND, TEXAS 75040 • (214) 271-2461

New! REAL TIME

Computer Clock Chip

N.S. MM5313. FeaturesBOTH 7 segment andBCD outputs. 28 PinDIP- $4.95 with Data

LSSER

74LS0O — 33c74LS02 — 35c74LS04— 35c74LS08 — 35c74LS10 — 33c74LS20 — 33c74LS73 — 49c

IESTTL

74LS74 — 49c74LS90 —69c74LS138—89c74LS154—1.4974LS175—1.1074LS357—75c74LS368—85c

TERMS: Orders under S15. add 75c. No COD's. Weaccept VISA, Master-Charge and American ExpressCards. Money Back Guarantee on all items' TexasResidents add 5% Sales Tax. WE PAY POSTAGE!

'••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••a* • •

» •••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• • #

Circle 100 on inquiry card.

BYTE June 1978 187

What's New?

MASS STORAGE

Minifloppy System Offers Versatility

AED 101 Floppy Disk Power Supply

A power supply for floppy disk sub-systems has been developed by Ad-vanced Electronics Design Inc, POB61779, Sunnyvale CA 94088. The AED101 Triple Output supplies +5 VDC at12 A, -12 VDC at 0.7 A, and +24 VDCat 3.5 A. It contains features such asswitching regulation of +5 V, foldbacklimiting, current limiting and shortcircuit protection. The AED 101 iscompact and is said to be availableimmediately. The cost is $137.50 inlarge production quantities ($.90 perwatt)."

Circle 637 on inquiry card.

Organized Protection for Diskettes

The KAS-ETTE/10 Library Case hasbeen announced by the Alpha SupplyCompany, 18350 Blackhawk St,Northridge CA 91326. These librarycases are designed to handle disketteswhile in use, permanently store diskettesor safely ship several diskettes in onelibrary case. When open and in use, aplastic insert aids in locating the desireddiskettes. Color coded labels appliedto the spine of the library case permitusers to organize a permanent library.The units are available in blue or beige.Write to the manufacturer for furtherinformation and complete price list."

Circle 640 on inquiry card.

Fast, High Capacity Mass Storage

General Micro-Systems' new tapedrive subsystem is a fast, inexpensive,high capacity mass storage device formicrocomputers. The SYS I recordsbiphase Manchester code at 1600 bitsper inch on ANSI specified datacassettes with a transfer rate of 2000characters per second at ten inches persecond.

The tape record is variable length,

which gives efficiency of storage spaceon tape, unlike the 128 or 256 bytefixed length records, where all bytesmust be recorded, whether used or not.A 10 byte record may be followed by a32 K byte record. The user program maydynamically load the next record, oper-ating as a batch data processing system,with an unlimited amount of data. Over700 K bytes may be recorded on oneside of a cassette, using large records.Rewind time is less than 30 seconds atover 120 inches per second. Search canbe accomplished at over 120 inches persecond by counting the interblock gaps,getting to any record in an average timeof less than 15 seconds.

One to four drives may be connectedto the computer through the interfaceboard. No power is taken from thecomputer bus, except what is necessaryto run the simple synchronous serialinterface board.

The unit is offered assembled, testedand guaranteed. The single drive is $595,the dual drive is $969, and the Altair(S-100) interface board is $168. ContactBob Smith, General Micro-Systems,12369 W Alabama PI, Lakewood CO80228."

Circle 647 on inquiry card.

The DataMate minifloppy disk sys-tem is a data storage and editing unit forconnection between any RS-232 asyn-chronous ASCII coded printer or displayterminal and its modem. Features in-clude 560 addressable records of up to128 characters each, selective datatransfer rates of up to 9600 bps, editingcapabilities, search modes, and manualand remote controls. The price is $1750from Western Telematic Inc, 2435 SAnne St, Santa Ana CA 92704."

Circle 638 on inquiry card.

Data Cassettes Specially Tailored toSmall Systems Use

A,

,^K^6vNl

Jtfp

?2ji

P^^c-^

wjpp*

i^B^^^"

BPr*W~ 1 ^|

BBEBCm K-SCll

1 F* DDC 30 1

pi

Ej^'WTTl

T&asmi

The introduction of a full line of datacassettes and cassette tape data acqui-sition systems specifically designed foruse in personal computers and varioussmall business computers has beenannounced by the AVDEX Corp. Forusers who prefer to load differentprograms on separate cassettes, thecassettes are available in one minute,three minute and five minute lengths andare custom loaded with extra shortleaders so that the leader at no timecomes in contact with the recordinghead. This makes possible instant startoperation and eliminates any lost dataas a result of failure to allow the leaderto run through. In addition to shortloads, a group of three cassettes in theC-20, C-40 and C-60 configuration isalso available. Retail prices are: CDC-1 ,$4.95; CDC-3, $5.65; CDC-5, $6.35;DDC-20, $4.50; DDC-40, $5.00; andDDC-60, $5.50 from AVDEX Corp,2280 Grand Av, Baldwin NY 1151 0."

Circle 639 on Inquiry card.

1 88 June 1978 © BYTE Publications Inc

ELECTRONIC SYSTEMS

P.O. Box 9641 San Jose, CA 95157 C408) 374-5984

FOR CATALOG INCLUDING PARTS LISTS AND SCHEMATICS,SEND A SELF ADDRESSED ENVELOPE WITH 24c POSTAGE.

RS-232/TTLINTERFACE *

. IBS

mlTfUART&BAUDRATEGENERATOR'

Part no. 101

• Converts serial to parallel andparallel to serial

• Low cost on board baud rategenerator

• Baud rates: 110, 150,300,600, 1200, and 2400

• Low power drain +5 voltg and-12 volts required

• TTL compatible

• All characters contain a startbit, 5 to 8 data bits, 1 or 2 stopbits, and either odd or evenparity.

• All connections go to a 44 pingold plated edge connector

• Board only $12.00; with parts$35.00

8K

STATIC

RAM

Part no. 300

• 8K Altair bus memory

• Uses 2102 Static memory chips

• Memory protect

• Gold contacts

• Wait states

• On board regulator

• S-100 bus compatible

• Vector input option

• TRI state buffered

Board only $22.50; with parts$160.00

,.,:,. _

Part no. 232

• Converts TTL to RS-232, andconverts RS-232 to TTL

• Two separate circuits

• Requires -12 and +12 volts

• All connections go to a 10 pingold plated edge connector

• Board only $4.50; with parts$7.00

DC

POWER

SUPPLY*

Part no. 6085

• Board supplies a regulated+5 volts at 3 amps., +12, -12,and -5 volts at 1 amp.

• Power required is 8 voltsAC at 3 amps., and 24 volts ACC.T. at 1.5 amps.

• Board only 812.50; withparts $42.50 excludingtransformers

TIDMA

Part no. 112

• Tape Interface Direct MemoryAccess

• Record and play programs with-out bootstrap loader (no prom)has FSK encoder/decoder fordirect connections to low costrecorder at 1200 baud rate, anddirect connections for inputs andoutputs to a digital recorder atany baud rate.

• S-100 bus compatible

• Board only $35.00;with parts $110.00

Parti

111

TAPEINTERFACE*

• Play and record Kansas CityStandard tapes

• Converts a low cost taperecorder to a digital recorder

• Works up to 1200 baud

• Digital in and out are TTL-serial

• Output of board connects tomic. in of recorder

• Earphone of recorder connectsto input on board

• Requires +5 volts, low powerdrain

• Board $7.60; with parts $27.50

• No coils

Partno. 107

RFMODULATOR'

• Converts video to AM modu-lated RF, Channels 2 or 3

• Power required is 12 volts ACC.T., or +5 volts DC

• Board $7.60; with parts $13.50

Apple IISerial I/OInterface *

Part No. 2

• Baud rates up to 30,000

• Plugs into Apple Peripheralconnector

• Low-current drain

• RS-232 Input and Output

SOFTWARE

• Input and Output routine frommonitor or BASIC to teletype orother serial printer.

• Program for using an Apple IIfor a video or an intelligent ter-minal. Board only — $15.00;with parts — $42.00; assembledand tested - $62.00.

RS-23Z/TTY*INTERFACE *W

Part no. 600 ^

• Converts RS-232 to 20mA ^^current loop, and 20mA currentloop to RS-232

• Two separate circuits

• Requires +12 and -12 volts

• Board only $4.50, withparts $7.00

TELEVISIONTYPEWRITER

Part no. 106

• Stand alone TVT

• 32 char/line, 16 lines, modifi-cations for 64 char/line included

• Parallel ASCII (TTL) input

• Video output

• IK on board memory

• Output for computer con-trolled curser

• Auto scroll

• Non-destructive curser

• Curser inputs: up, down, left,right, home, EOL, EOS

• Scroll up, down

• Requires +5 volts at 1.5 amps,and -12 volts at 30 mA

• All 7400, TTL chips

• Char. gen. 2513

• Upper case only

• Board only $39.00; with parts$145.00

MODEM

Part no. 109

• Type 103

• Full or half duplex

• Works up to 300 baud

• Originate or Answer

• No coils, only low cost com-ponents

• TTL input and output-serial

• Connect 8 ohm speaker andcrystal mic. directly to board

• Uses XR FSK demodulator

• Requires +5 volts

• Board $7.60; with parts $27.50

To Order:

Mention part number and description. For parts kits add "A" to part number. Shipping paid for ordersaccompanied by check, money order, or Master Charge, BankAmericard, or VISA number, expirationdate and signature. Shipping charges added to C.O.D. orders. California residents add 6.5% for tax.Parts kits include sockets for all ICs, components, and circuit board. Documentation is included withall products. Dealer inquiries invited. 24 Hour Order Line: (408) 374-5984.* Designed by John Bell.

Circle 125 on inquiry card.

BYTE June 1978 189

What's New?

PUBLICATIONS

Temperature Resistance Applications Report

Bulletin CA-195 from Texas Instru-ments, POB 5012, Dallas TX 75222,explains the temperature-resistance char-acteristics of the TSP102 PTC siliconthermistor. The 22-page applications re-port is titled Temperature-ResistanceCharacteristics of the TSP102 Positive-Temperature-Coefficient Silicon Ther-mistor and can be obtained by writingto the company.■

Circle 654 on inquiry card.

Manual on Relocatable Assemblerfor 2650

A manual describing the Signetics2650 Relocatable Assembler can bepurchased for $4 from Signetics. Theassembler is a two pass program thatbuilds a symbol table, issues errormessages, produces a program listing,and outputs a computer readable object(load) module. The program includesconditional assembly, symbolic andrelative addressing, forward references,free format source code, self-definingconstants, complex expression evalu-ation, relocatability, and pseudo oper-ations. The assembler is capable ofgenerating data in several number basedsystems, including ASCII character code.

The manual covers such subjectsas a summary of 2650 instructionmnemonics, ASCII code and characterset, conversion of previous crossassembler source programs and 2650assembler grammar.

Contact Signetics, MOS Micro-processor Marketing, POB 9052, 811 EArques Av, Sunnyvale CA 94086, (408)739-7700."

Circle 655 on inquiry card.

Computer Aided Education Materials

ENTELEK is currently offering alarge list of directories, reports, confer-ence proceedings, and periodicals on thesubject of computer-based education.Among the nearly 30 titles offered areIndex to Computer Based Learning —1976, Research Guidelines For Com-puter-Assisted Instruction, The LOGOLanguage - Learning MathematicsThrough Programming, Proceedings ofthe Fall 1976 EDUCOM Conference,and the 1978 edition of ComputerBased Education Abstracts compiledby ENTELEK. The ENTELEK CBEAbstracts contain selected reports sum-marized in abstracts up to 250 words inlength and brought together underheadings that include "CAI in Reading,""CAI in Science," "Computer AidedCounselling," "Minicomputers," "Net-works," "Decision Rules," "Simu-lation," etc. A complete list of titles andprices is available from ENTELEK, DeptT, POB 810, NewburyportMA 01950."

Circle 656 on inquiry card.

Electric Counter Selection Guide

A new six page, four color selectionguide from Hewlett-Packard summarizesspecifications and characteristics of 15counters in HP's electronic counter line.Included are models from simple, lowcost, frequency counters to sophisticatedhigh speed universal and microwavecounters. Described are two new micro-processor controlled models: Model5342A Microwave Counter for auto-matic measurements to 18 GHz, and theModel 5370A Universal Time IntervalCounter with a resolution of ±20 pico-seconds. The selection guide ElectronicCounters is available free of charge fromHewlett-Packard, 1501 Page Mill Rd,Palo Alto CA 94304."

Circle 658 on inquiry card.

Free Computer Guides

To keep you up to date on new com-puter products, stores, etc, the followingguides are available free of charge: AShopping Guide to Computer Stores, AGuide to Computing Magazines andBooks, A Guide to Computer Clubs andUser Groups, A Guide to the HomeComputer. Each guide is approximately50 pages long. To get a copy of anyguide simply write 'o MicrocomputerResource Center, 5150 Anton Dr, Room212, Madison Wl 53719. It would beappreciated by the Center if you wouldsend $.35 in stamps for 1st class postagefor each guide requested (18$ for 3rdclass)."

Circle 657 on inquiry card.

Electro Rent MicrocomputerDevelopment and Test EquipmentRental Catalog

» MicrocomputerISoReni Development &TestEquipment Rentals

This 8 page catalog features nearly200 pieces of the latest microcomputerand minicomputer development and testequipment available for rental. Equip-ment manufacturers include Intel,Tektronix, Biomation, Prolog, DigitalEquipment, Beehive, Hewlett-Packard,iCOM, Remex and Texas Instruments.For further information contact ElectroRent, 4131 Vanowen PI, Burbank CA91505."

Circle 573 on inquiry card.

New "Breadboarding and TestEquipment" Catalog

A new, full-color 12 page catalog isavailable describing Continental Special-ties Corporation's entire line of elec-tronic prototyping development andtesting hardware. The contents includequick test sockets, experimenter sockets,and Proto Board breadboards, DesignMate test instruments, Proto Clip ICtest clips and clip-on IC Logic Monitors.Breadboarding & Test Equipment isavailable from Continental SpecialtiesCorporation, 70 Fulton Ter, New HavenCT 06509."

Circle 572 on inquiry card.

Industrial Control MicrocomputersBrochure

A new 8 page brochure describesWyle's line of microcomputers, digitallogic modules, and software. The lineincludes parallel and serial digital IO,analog IO, communications modules anda wide variety of other units includingover 200 digital logic modules. Alsoavailable are modules to allow the Wylehardware to couple directly to existing4-20 and 10-50 mA current loops. Toobtain a copy of this brochure contactWyle Laboratories Computer Products,3200 Magruder Blvd, Hampton VA23666."

Circle 571 on inquiry card.

190

|unc 1978 © BYTE Publications Inc

^

V

[o

■v*V™ ™t o/wn a "Smart" VIDEO BOARD* Ihe LW-2001 KIT At A "Dumb" Price!

A VIDEO BOARD + A MEMORY BOARD + AN I/O BOARD - ALL IN ONE!

■ STATE OF THE ART TECHNOLOGY USING DEDICATED MICROPROCESSOR I.C.

■ NUMBER OF I.C.s REDUCED BY 50% FOR HIGHER RELIABILITY ■ MASTER PIECEOF ENGINEERING ■ FULLY SOFTWARE CONTROLLED Priced at ONLY Basic Software Included

$199.95

SPECIAL FEATURES:

■ S-l00 bus compatible

■ Parallel keyboard port

■ On board 4K screen memory(optional)* relocatable to maincomputer memory

■ Text editing capabilities (soft-ware optional)

■ Scrolling: up and down throughvideo memory

■ Blinking characters

■ Reversed video

■ Provision for on board ROM

■ Provision for onboard scratchpad RAM (256 x 8)

■ CRT and video controls fullyprogrammable (European TV)

■ Programmable no. of scan lines

■ Underline blinking cursor

■ Cursor controls: up, down, left,right, home, carriage return

■ Composite video

*Min. 2K required for operation of this board.

DISPLAY FEATURES:

■ 128 displayable ASCII charact-ers (upper and lower case alpha-numeric, controls)

■ 64 or 32 characters per lineGumper selectable)

■ 32 or 16 linesO'umper selectable)

■ Screen capacity 2048 or 512

■ Character generation:7x11 dot matrix

OPTIONS:

Sockets. .

2K Static Memory

(with Sockets)

4K Static Memory

(with Sockets)

Complete unit, assembledand tested with4K Memory

Basic software on ROM .

Text editor on ROM ....

$10.00S45.00$90.00

$335.00$20.00$75.00

DEALERINQUIRIES WELCOMED

APPLE II

I/O BOARD KIT

Plugs into slot of APPLE II MOTHER BOARD

FEATURES:

■ 1 8-Bit Parallel Output Port(Expandable to 3 Ports)

■ 1 Input Port

■ 15mA Output Current Sinkor Source

■ TTL or CMOS Compatible

■ Addressable anywhere inmemory output area

■ Can be used for peripheralequipment such as printers,floppy discs, cassettes,paper tapes, etc.

KIT INCLUDES:

P.C. Board, I.C.'s Socketsand Assembly Manual.

PRICE:

1 Input and dfc/| Q

1 Output Port nPT^

1 Input and dfe/x/l

3 Output Ports $0^

DEALERINQUIRIES INVITED

INSTRUCTION MANUAL ANDSOFTWARE LISTINGS AVAILABLE FOR:

PR-40 SWTPC Printer $10.00

Converted Selectric $10.00

SHIPPING: Keyboard and Video Board: $3.50; I/O Board: $1.00 California residents add 6% sales tax

ELECTRONICS WAREHOUSE Inc.

1603 AVIATION BLVD.REDONDO BEACH, CA. 90278

TEL. (213)376-8005WRITE FOR FREE CATALOG

You are invited to visit our store at the above address

#ONLY

ASCII 3rd GENERATION

KEYBOARD KIT $68-00

TTL Logic Circuits

Power: +5V 275mA

Upper and Lower Case

Full ASCII Set (AlphaNumeric, Symbols,Control)

7 or 8 Bits Parallel Data

Optional Serial Output

Selectable Positive orNegative Strobe, andStrobe Pulse Width

'N' Key Roll-Over

Fully Debounced

Carriage Return Key

Repeat Function Key

Shift Lock, 2 Shift Keys

4 User Defineable Keys

P.C. Board Size:

17-3/16" x 5"

OPTIONS:

■ Metal EnclosurePainted IBM Blueand White)

$25.00

■ 18 Pin Edge Con.

$2.00

■ I.C. Sockets

$4.00

■ Serial Output (ShiftRegister)

$2.00

■ Upper Case LockSwitch for CapitalLetters andNumbers

$2.00

KIT INCLUDES: Keyboard,P.C. Board, all required com-ponents & assembly manual.

NOTE: If you have this 63Key Teletype Keyboard youcan buy the Kit without itfor only $44.95.

Circle 130 on inquiry card.

BYTE June 1978

191

Circle 242 on inquiry card.

cybercmn boards

MB-1 MK-8 Computer RAM (not S-100), 4KX8, uses

2102 type RAMs, PCBD only $22.00

MB-3 1702A EROM Board, 4KX8. S-100 switchable

address and wait cycles, kit less PROMS $58 00

MB-4 Basic 4KX8 ram, uses 2102 type rams S-100

buss. PC board $25.95

MB-6A Basic 8KX8 ram uses 2102 type rams, S-100

buss. PCBD $25.95

MB-7 16KX8, Static RAM uses UP410 Protection,

fully buffered. KIT $375.00

MB-8 2708 EROM board, S-100, 8KX8 or 16KX8 kit

without PROMS $65.00

MB-9 4KX8 RAM/PROM Board uses 2112 RAMS or82S129 PROM kit without RAMs or PROMs ....$72.0010-2 S-100 8 bit parallel I/O port, z/3 of boards is for

kludging. Kit $46.00 PCBD $25.95

10-4 Two serial I/O ports with full handshaking20/60 ma current loop: Two parallel I/O ports.

Kit $130. PCBD $29.95

VB-1B 64 x 16 video board, upper lower case Greek,composite and parallel video with software, S-100.

Kit $125.00 PCBD $25.95

Altair Compatible Mother Board, 11 x 1T/2 x Va".Board only .. .$40.00. With 15 connectors ....$90.00

Extended Board full size. Board only $ 9.00

With connector $13.00

SP-1 Synthesizer Board S-100

New Low Price Kit $135.95

82S23

82S123

82S114

82S115

82S126

82S129

82S130

82S131

82S136

82S141

MMI6330

$1.501.502.955.501.951.953.003.003.953.951.50

PRIME DEVICES

8080A

8212

8214

8216

8224

8228

8251

8255

$12.003.756.303.955.006.959.959.95

/Y/TnCjjnc. WAMECO INC.

MEM-1 8KX8 fully buffered, S-100, uses 2102 type

rams. PCBD $25.95

Mother Board 12 slot, terminated, S-100, board

only $30.95

CPU-1 8080A Processor board S-100 with 8 level

vector interrupt PCBD $25.95

RTC-1 Realtime clock board. Two independent in-terrupts. Software programmable. PCBD $23.95

EPM-1 1702A 4K Eprom card PCBD . $25.95

10% discount on 10 or more of WAMECO PCBDin any combination.

2102AL-2 Prime 250 NSEC $1.60

2102AL-4 Prime 450 NSEC $1.25

2708 Intel Prime (.5USEC) $15.00

2708 Prime (National) $10.00

1702A-6AMD Prime $3.50

1702A Intel Net Prime (2US) $1.50

TMS-6011 Prime $6.95

2501B $1.50 1488N $1.50

2502B 1.50 1489N 1.25

2504 1.50 4044 2.25

2507V 1.50 8038 3.90

2510A 1.50 5320 5.95

2517V 1.50 5554 1.90

2518B 1.50 5555 2.50

2519B 1.50 5556 2.50

2521 1.50 5055 1.25

2522 1.50 5312 4.002525 1.50 MH0025 1.502527 1.50 MH0026 1.752532V 1.50 MH0028 1.902529 2.75

2533V 1.95

m

419 Portofino DriveSan Carlos, California 94070

Please send lor IC, Xistorand Computer pans list

MIKOS PARTS ASSORTMENTS

All piece parts for assembly of Wameco and SSMPCBD's. All Factory Marketed Parts. Order PCBDsright.

Mikos #1 Parts for MEM-1 PCBD with prime

2102AL-4 450 nsec rams. Less PCBD $103.00

Mikos #2 Parts for CPU-1 PCBD with prime 8080A

8212's and 8214. Less PCBD $60.00

Mikos #3 Parts tor MEM-1 PCBD with prime2102AL-2 250 nsec rams. Less PCBD . $113.00Mikos #4 Parts for QM-1A with super low loss gold

plated connectors. Less PCBD $52.00

Mikos #5 Parts for RTC-1. Less PCBD $40.00

Mikos #6 Parts for VB-1B less molex connectorsand PCBD. $62.00

82S06

$1.00

8T26

$2.00

82S07

1.00

8T28

2.00

82S50

1.00

8T34

2.50

82S62

1.00

8T37

2.50

82S90

1.00

8T38

2.50

82S91

1.00

8T74

1.50

8T01

2.50

8T80

2.50

8T09

1.25

8T90

2.50

8T10

2.50

8T95

2.30

8T13

2.50

8T96

2.45

8T14

2.50

8T97

1.50

8T20

2.50

8T98

2.00

8T23

3.00

8T110

2.00

8T24

2.50

567

1.50

Check or money order only. If you are not a reg-ular customer and your order is large pleasesend either a cashier's check or a postal mon.ey order, otherwise there will be a delay of twoweeks for the check to clear. All items post paidin the U.S. Calif, residents add 6% tax. Moneyback 30 day guarantee. We cannot accept re-turned IC's that have been soldered to. Pricessubject to change without notice. $10 minimumorder. $1.00 service charge on orders lessthan $10.

COMMERCIAL GRADE EQUIPMENT- HOBBYIST PRICES!!

NO RISK! 7DAYAPPROVAL ON ALLMAIL-ORDERS. FULLREFUND ON RETURNS.

MODEMS ANDPHONE COUPLERS

TAPE DRIVES

SELECTRIC TERMINALS

■ AMPEX MODEL TMX TAPE DRIVES with built-in NBZ1 formatter. 800BPI, 9 track, 12 IPS, 8" reel includes 8 bit CPU controller diagram and 8080interface instructions. Ideal for microcomputerist who wants back-up massstorage and access to I BM-tvpe'systems via standardized V2" maq tape. . . $750AMCOMP SERIES 2700 TAPE DRIVES: current model, vacuum columncontrol; like new:

(21 MODEL 2749 -45 ips, 800 BPI, 7-Track, 10" reel $1500

(31 MODEL 2769 - 125 ips, 800/1600 BPI, 9-Track, 10" reel. ..$3000•TAPE DRIVE FORMATTERS, "Pertec Standard Interface":

(3) AMCOMP SERIES 2900 NRZWPhase Encoded, 25-125 ips..C150O(1) PICO MODEL 1011, NRZ1, 800 BPI FORMATTER/

CONTROLLER for PDP-11 S2000

•MODEMS, Full-Duplex, Auto Answer circuitry, by VADIC CORP.

BELL 103 Type (300 Baud) Circuit Card only $75

BELL 103 Circuit Card, Power Supply, Case, Connectors $125

BELL 202 Type (1200 Baud) with Reverse Channel Transmission from $125DB-25 MALE CONNECTOR + 2 wire cable to Phone Jack $*

• PAPER TAPE READER (ADDMASTER 601-11: 150 cps, LED sensors read5-8 level tapes, bi-directional stepper motor, includes TTL serial interfaceplus 8080 parallel interface instructions. Requires +5V & 24V. $90

• DATATEST PROGRAMMABLE AUTOMATIC CIRCUIT CARD ANALYZER

MODEL 4000A $2000

MODEL 4700 $6000

DIABLO SYSTEMS Spare Circuit Cards for HyType Printer, Series 20 +40

Disk Drives; complete but defective or below current revision level $20

ASCII ENCODED KEYBOARD from HyType Terminal, never used $60

TELEPHONE ACOUSTIC COUPLER *30

Call or write for details, quantity diicounts, orderforms. All orders shipped from stock — no back orders,no substitutions. All equipment is shipped insuredFOB Palo Atto within 7 days after check clears or COt■order is received. M/C & VISA cards accepted.

I

■ SELECTRIC I/O TERMINALS (by GTE/INFORMATION SYSTEMS). In-cludes 8080 interface plus software ASCII translation and I/O driver routines15" carriage, interchangeable type spheres & carbon/fabric ribbons. Built-inmodem optional.

MODEL 5541 IIBM CorresDondence Code, 2741-tvDe terminal) S895

MODEL 5550 ICorres. Code w/350 char, line buffer memory + built-incassette drive for data storage/of f-Nne printing/word processing. . .$1495MODEL 5560 (ASCII Code, with cassette tape drive) $1495

■ IBM SELECTRIC TYPEWRITER with magnets, switches & magnet driver PCB(from GTE/IS Terminal) plus instructions for 8080 printer/driver interface.

Typewriter mechanism complete, cleaned & adjusted $325

Aluminum Case & Power Supply (+24V, ±12V, +5V @5V) $75

• CONVERT IBM OFFICE SELECTRIC to I/O Typewriter: solenoids, switcheswire harness, magnet driver PCB plus instructions + 8080 Interface Diaq. $150

■ IBM PIN-FEED PLATENS for 15" SELECTRICS (13 1/8 pin-to-pinl new $50

■ IBM SELECTRIC APL TYPE SPHERES (Specify EBCDic or CorrespondenceCode) new. EL

• FORMS TRACTORS, Moore Variable-width "Form-A-Liner" new $50

for 15" Carriage IBM SELECTRICS used $30

■ DIGITAL CASSETTE DRIVE (from GTE/IS Terminal) 2400 baud, FVVD/REWIND/STOP circuitry, plus tape head, but no read/write electronics.. .525

■ INTERDATA 8-BIT MINICOMPUTER (Model One), includes full front panel,4K core memory (16K addressable), plug-in teletype port; optional serial I/O

+ Taoe Drive Controller PCB's software.

.$300

RIBBON CABLE 50 Strand X 4' long terminated with 3M edge connector

(.10" spacing) + paddle card "

AC LINE FILTER 10AMP RFI (110/230V) with Line Relay + Fuses new $50

PACIFIC OFFICE SYSTEMS, INC.2600 EL CAMINO REAL, SUITE 302

PALO ALTO, CALIF. 94306

^^^^^^Te^415IJ2^^866^^^^^^^

I

90 day warranty ayainst defects in material or work-manship on all used equipment. Full documentationincluded PLUS interface instructions where indicated.Availability subject to prior sale. Prices mey changewithout notice.

192 BYTE June 1978

Circle 292 on inquiry card.

DIODES/ZENERS

SOCKETS/BRIDGES

TRANSISTORS, LEDS, etc.

1N9141N4005

100v 10mA600v 1A

.05.08

8-pin pcb .25 ww .4514-pin pcb .25 ww .40

2N2222A2N2907A2N3906

NPN (2N2222 Plastic .10)

PNP

PNP (Plastic)

.15.15.10

1N4007

10OOv 1A

.15

16-pin pcb .25 ww .40

2N3904

NPN (Plastic)

.10

1N4148

75v 10mA

.05

18-pin pcb .25 ww .75

2N3054

NPN

.35

1N753A1N758A

6.2v z10v z

.25.25

22-pin pcb .45 ww 1.2524-pin pcb .35 ww 1.10

2N3055T1P125LED Green,

NPN 15A 60v

PNP Darlington

Red, Clear, Yellow

.50.35.15

1N759A

12v z

.25

28-pin pcb .35 ww 1.45

D.L.747

7 seg 5/8" High com-anode

1.95

1N4733

5.1v z

.25

40-pin pcb .50 ww 1.25

XAN72

7 seg com-anode (Red)

1.25

1N5243

13v z

.25

Molex pins .01 To-3 Sockets .45

MAN71MAN3610

7 seg com-anode (Red)7 seg com-anode (Orange)

1.251.25

1N5244B

14v z

.25

2 Amp Bridge 100-prv 1.20

MAN82A

7 seg com-anode (Yellow)

1.25

1N5245B

15v z

.25

1 MAN74A

7 seg corn-cathode (Red)

1.50

25 Amp Bridge 200-prv 1.95

FND359

7 seg corn-cathode (Red)

1.25

CMOS

- T T L -

4000

.15

7400

.15

7473 .25

74176 1.25

74H72

.45

74S133

.40

4001

.15

7401

.15

7474 .30

74180 .75

74H101

.75

74S140

.55

4002

.20

7402

.20

7475 .35

74181 2.25

74H103

.75

74S151

.30

4004

3.95

7403

.20

7476 .40

74182 .95

74H106

.95

74S153

.35

4006

.95

7404

.15

7480 .55

74190 1.75

74S157

.75

4007

.35

7405

.25

7481 .75

74191 1.05

74 LOO

.25

74S158

.30

4008

.95

7406

.35

7483 .95

74192 .75

74L02

.25

74S194

1.05

4009

.45

7407

.55

7485 .75

74193 .85

74L03

.30

74S257I8123)

1.05

4010

.45

7408

.25

7486 .25

74194 1.25

74L04

.30

4011

.20

7409

.15

7489 1.35

74195 .95

74L10

.30

74LS00

.25

4012

.20

7410

.10

7490 .55

74196 1.25

74L20

.35

74LS01

.35

4013

.40

7411

.25

7491 .95

74197 1.25

74L30

.45

74LS02

.35

4014

.95

7412

.30

7492 .95

74198 2.35

74L47

1.95

74LS04

.30

4015

.90

7413

.35

7493 .35

74221 1.00

74L51

.45

74LS05

.45

4016

.35

7414

1.10

7494 .75

74367 .85

74L55

.65

74LS08

.25

4017

1.10

7416

.25

7495 .60

74L72

.45

74LS09

.35

4018

1.10

7417

.40

7496 .80

75108A .35

74L73

.40

74LS10

.35

4019

.50

7420

.15

74100 1.15

75110 .35

74L74

.45

74LS11

.35

4020

.85

7426

.30

74107 .35

75491 .50

74L75

.55

74LS20

.25

4021

1.00

7427

.45

74121 .35

75492 .50

74L93

.55

74LS21

.25

4022

.85

7430

.15

74122 .55

74L123

.85

74LS22

.25

4023

.25

7432

.30

74123 .55

74H00 .15

74LS32

.40

4024

.75

7437

.30

74125 .45

74H01 .25

74S00

.35

74LS37

.35

4025

.30

7438

.35

74126 .35

74H04 .20

74S02

.35

74LS40

.45

4026

1.95

7440

.25

74132 1.35

74H05 .20

74S03

.30

74LS42

1.10

4027

.50

7441

1.15

74141 .90

74H08 .35

74S04

.30

74LS51

.50

4028

.95

7442

.45

74150 .85

74H10 .35

74S05

.35

74LS74

.65

4030

.35

7443

.65

74151 .65

74H11 .35

74S08

.35

74LS86

.65

4033

1.50

7444

.45

74153 .75

74H15 .45

74S10

.35

74LS90

.95

4034

2.45

7445

.65

74154 .95

74H20 .30

74S11

.35

74LS93

.95

4035

1.25

7446

.95

74156 .95

74H21 .25

74S20

.35

74LS107

.85

4040

1.35

7447

.95

74157 .65

74H22 .40

74S40

.20

74LS123

1.00

4041

.69

7448

.65

74161 .85

74H30 .20

74S50

.20

74LS151

.95

4042

.95

7450

.25

74163 .85

74H40 .25

74S51

.25

74LS153

1.20

4043

.95

7451

.25

74164 .60

74H50 .25

74S64

.20

74LS157

.85

4044

.95

7453

.20

74165 1.50

74H51 .25

74S74

.35

74LS164

1.90

4046

1.75

7454

.25

74166 1.35

74H52 .15

74S112

.60

74LS367

.75

4049

.45

7460

.40

74175 .80

74H53J .25

74S114

.65

74LS368

.75

4050

.45

7470

.45

74H55 .20

74C04

.25

40664069

.95

.40

7472

.40

74C151

2.25

4071

.35

MCT2 .95 LINEARS, REGULATORS, etc.

4081

.70

8038 3.95

LM320T5 1.65

LM340K15

1.25

LM723

.50

4082

.45

LM201 .75

LM320T12 1.65

LM340K18

1.25

LM725N

2.50

MCI 4409

14.50

LM301 .45

LM320T15 1.65

LM340K24

.95

LM739

1.50

MC14419

4.85

LM308 (Mini) .95

LM324N .95

78L05

.75

LM741 (8-141.25

LM309H .65LM309K (34ok-5>85

LM339 .957805 (340T5) .95

78L1278L15

.75.75

LM747LM1307

1.101.25

9000 cpdicc

9301 .859309 .35

95H031.109601 .45

LM310 1.15

LM340T12 1.00

78M05

.75

LM1458

.95

LM311D(Mini) .75

LM340T15 1.00

LM373

2.95

LM3900

.50

9322 .75

9602 .45

LM318(Mini) .95

LM340T18 1.00

LM380(8-14pin).95

LM75451

.65

LM320K5(7905)1.65LM320K12 1.65

LM340T24 .95LM340K12 1.65

LM709(8,14pin).25LM711 .45

NE555NE556NE565

.50.95.95

MICRO'S, RAMS,CPU'S, ETC.

74S1881702AMM5314MM5316

3.004.503.003.50

INTEGRATED CIRCUITS UNLIMIT

ED

NE566NE567

1.751.35

2102-1

1.45

7889 Clairemont Mesa Boulevard, San Diego, California 921

2102L-1TR1602B

1.754.50

(714) 278-4394 (Calif. Res.)

SPECIALDISCOUNTS

TMS 4044-45N L 14.50

All orders shipped prepaid No minimum

Total Order

Deduct

8080AD8T138T238T24

12.001.501.502.00

Open accounts invited COD orders accepted $^00 $300 10%Discounts available at OEM Quantities California Residents add 6% Sales Tax $301 - $1000 15%

8T97

1.00

All IC's Prime/Guaranteed. All orders shipped same day received.

$1000- Up

20%

2107B-4,2708

A 4.0011.50

24 Hour Toll Free Phone 1-800-854-2211 American Express / BankAmericard / Visa / MasterCharge

Circle 180 on inquiry card.

BYTE June 1978

193

What's New?

SOFTWARE

Video Checkers on Cassette forPolyMorphic Video Interface

Compu-Quote has developed severalgames on cassettes, recorded in theTarbell format and programmed in MITSBASIC.

Contained on one cassette is VideoCheckers, which produces checkerboardgraphics on a video display when usedwith the PolyMorphic Video Interfaceand 64 character option. The game playsunder MITS BASIC (3.1). Two versions

of the program on one 60 minutecassette play a challenging game whichconforms to international rules. Thefirst version requires a total of 16 Kof memory, inclusive of 8 K BASIC. Thesecond version is more graphic andrequires an additional 4 K.

The checkerboard is pictorially dis-played on the video monitor. As theplayer and computer each take turns,the checkers blink and move to indicatetheir passage. Kinged pieces are identi-fied on the display and messages appearat the right of the board relating to eachmove. In accordance with internationalrules of the game, the program will notaccept illegal moves and warns of theirentry.

Included with Video Checkers is a9 page instruction book. The author ofVideo Checkers has invited purchasersof the cassette to add enhancements tothe program. Therefore an entire pro-gram listing is included. Video Checkersand manual may be ordered for $10from Compu-Quote, 6914 Berquist Av,CanogaParkCA 91307."

Circle 648 on inquiry card.

Low Cost Business Software Package

This new, low cost general businesssoftware package for microcomputersincludes general ledger, accounts receiv-able, accounts payable, finished goodsinventory control and payroll. TheGrimes Business Information System(GBIS) is specifically designed for smallbusinesses. In a typical application theGBIS can store up to 400 customerlistings, 50 vendors, 400 line items ofinventory, 25 employee records and60 general ledger accounts on a singleminifloppy diskette. Requiring only24 K of memory, the GBIS is a system

in which receivables decrease bookinventory, payables increase book inven-tory, and general ledger accounts areupdated automatically. GBIS is writtenin North Star BASIC, although otherdisk BASIC languages can be used forthe listings. There are 51 programs with120 pages of documentation. A GBISUsers Group has been formed entitlingpurchasers to updates as they becomeavailable. The cost is $200 (include$2.50 to cover postage and handling).The package can be obtained from TheComputer Mart, 633 W Katella Av,Orange CA 92667."

Circle 649 on inquiry card.

INFO 2000 Disk Systems Fully SoftwareSupported for 8080 and Z-80

INFO 2000 Disk Systems ownersmay now utilize expanded softwarefor both 8080 and Z-80 microcom-puters. Previously, the INFO 2000Corporation offered Z-80 based softwareonly for their disk systems, but haveincreased the disk operating softwarecapability using Digital Research CP/M.

Among the software packages whichoperate under CP/M are two full versionsof disk BASIC, including MicrosoftExtended Disk BASIC (4.41), pricedat $350. Also available is a StructuredSystems Group QSORT at $95. This isa high speed, general purpose sort pack-age. A name and address maintenancesystem, called NAD, includes mailinglabels, and is priced at $79. The manu-facturer states that all software is cur-rently available for immediate deliveryfor use in INFO 2000 Disk Systems.

Still available for Z-80 systems isthe complete TDL software packageincluding 12 K BASIC, macro assembler,Z-TEL text editor and word processor.INFO 2000 has expanded this softwareto operate under CP/M and Zappleoperating systems. The entire softwarepackage is priced at $215.

All INFO 2000 software is designedto operate on INFO 2000 Disk Systems

Z-80 and 8080 Business Programs

Structured Systems Group announcesa series of business programs designed torun on the 8080 or Z-80 processors withthe CP/M operating system. All softwarecomes fully documented. The followingproducts are being offered:

General Ledger (GL) is a comprehen-sive system designed for professionalaccountants and small businesses. Anynumber of custom charts of accountsmay be set up to handle single or multi-ple departments. The system verifiesdata interactively. Report formats andheadings may be customized. Documen-tation is included, and no prior com-puter knowledge is required. Writtenin CBASIC, the GL system costs $995.

The Name and Address (NAD)system maintains files and allows selec-tion on all fields for printing labels,reports, or new files. NAD is docu-mented and written in CBASIC. Theprice is $79.

QSORT is a fast full disk sort andmerge program featuring automaticoperation, multiple sort keys, andcomplete backup. In 8080 code, theprice is $95.

CBASIC is a comprehensive, commer-cially oriented compiler and interpreterincluding full disk access, a PRINTUSING feature, 14 digits of precision,and an 85 page manual. The price is$99.95.

For more information, contactStructured Systems Group, 5615 KalesAv, Oakland CA 94618, (415)547-1567."

Circle 650 on inquiry card.

New Natural Language Operating System

NLOS is a phase oriented naturallanguage operating system. Informationin the form of sentences entered intothe system is broken down into phraseswhich are classified both gramaticallyand by the type of information theyconvey. This is made possible by adictionary of phrases maintained by thesystem in programmable memory.Hardware requirements include any8080 or Z-80 processor, audio cassettetape interface, a serial IO board and aminimum of 12 K of programmablememory. NLOS/1 comes with a fullydocumented set of assembly languagesource listings with commentary onpossible ways to use NLOS/1. The pricefor NLOS is $200; it can be obtainedfrom Cybermate, RD #3, POB 192ANazareth PA 18064."

Circle 651 on inquiry card.

which employ the PerSci 277 dualdiskette drive with intelligent controller.The disk system is available for allAltair (S-100) microcomputers usingZ-80 or 8080 processors, for DigitalGroup Z-80 and 8080 systems and forthe Heathkit H8. Contact INFO 2000Corp, 20630 S Leapwood Av, Carson CA90746,(213) 532-1702."

Circle 652 on inquiry card.

194

lune 1978 © BYTE Publications Inc

FOR ALL CUSTOMERS EXCEPT CALIF. CALL TOLL FREE 800-421-5809

■ ■■MM»»M»H

6571AP

C"". ' <-"-

\>U„ S10.00 5

-i

DM8131N

100 tor S2.25u

I

MICROCOMPUTER COMPONENTS

MICROPROCESSORS

ft SUPtOPT DEVICES

■■LOPCy DISC CONTROLLER

KEYBOARD CHIP

i SUPPORT DEVICES

STATIC RAMS

CHARACTER GENERATORS

WAVEFOHM GENERATOR

688W

oaoo hps Mom

JtOD HPS Mnrfu

WW

K'.-..-

ZB0 SliPPOB

T DEVICES

3881

ssi,&??

SHIFT fl

EGISTEBS STATIC

75186

». IB,. ?0M

THS300?

SO . 7 B„ 1 0 M

MHM&8

1074 ■ S 8.1 1 S

OVNAMIC RAMS

MISC OTHER COMPONENTS

DMB833 Q.»

MOTHER BOARD'S - S-100 Style13 slot - w/front panel slotBARE BOARD $35.00

KIT $95.00

22 slot $149.95

ASSEMBLED & TESTED

CONNECTORS

I70?A

E PROM

8 tot S3 75 e

74368

ICO loi 70b

W*£f*^+

I 270B 1450ns i

E 'ROMi SU 00 fd 8 toi S11 00 v

21L02 |250"i

Sum R.irm100 ly. Si 36 vi

74LS367Hex Butli"100 lor 7

DB - 25P $3.00

DB - 25S $4.00

COVER $1.50

44 Pin - PC & EYE

$1.95

44 Pin - WW

$2.50

86 Pin - (6800) PC

$5.00

86 Pin - (COSMAC ELF)

$5.00

PC

100 Pin - (Altair) PC

$4.50

100 Pin - {Imsai) PC

$3.75

100 Pin - (Imsai) WW

$4.25

STATIC RAM BOARDS

8K250ns ASSEMBLED & TESTED450ns ASSEMBLED & TESTED250ns KIT

450ns KIT

BARE BOARD

6800 ADAPTER to S 100 SysieiKIT

16K250ns ASSEMBLED 8, TESTED450ns ASSEMBLED & TESTED450m KIT

32K250ns ASSEMBLED & TESTED450ns ASSEMBLED & TESTED450ns KIT

$189.95$149.75$169.95$125.0025.00

$12.95

$435.00$380.00$335.00

$860.00$775.00$675.00

DYNAMIC RAM BOARDS

slalm or cycle stealing requited.• 8VOC 40OMA DC. 'lBVDC 400MA DC ;

18VDC 30MA DC.

32K

8K (375ns)16K (375 nil24K (375ns)32K (375ns)

KITKITKIT

KIT

16K32K48K64 K

EXPANDABLE(375nsl KIT(375ns) KIT(375ns) KIT(375ns) KIT

$151.00$259.00$367.00$425.00

$281.00$519.00$757.00$995.00

JADE PARALLEL/SERIALINTERFACE KIT

S.I00 $124.95 KIT

2 Serial Interfaces with RS232

interfaces or 1 Kansas City cassette

interface

Senai interfaces are crystal controlled

Selectable baud rates

Cassette works up to 1200 baud

i pari

t port

JADE VIDEOINTERFACE KIT

$99.95

FEATURES

S-100 Bus Compatible

32 or 64 Characters per line

16 lines

Graphics (128 x 48 matrix)

Parallel & Compositive video

On board low-power memory

Powerful software injjIudetHor

cursor, he

Character

m

cursor, home, ETOL, Scroll Graphics/Character, etc.

Upper case lower case & GreekBlack-on-white & whiteon-black

COMPUTtMf CT lOO

S100 ius COMPATIBLE

TIME & CALENDARtropfoceuors netd thr power l»a(

real

can offer. Date and I.....COMf UPTIME does nol ha* to be initialized evethe system upowered up ll possesses ■> crystal-Ell!time btsi to obtain superior accuracy and has twocoincidence counters Time, dale, and countersvia solrware.

COMPUTATIONAL FUNCTION

Microprocessors need to be complimemed by ha

arithmetics to free up memory pages dedicated ll

■no pc

TIME provides > 40 func

algebraic, trigonometric, basic anhmetic r

be solired without the need of developing

'0,r*""* 0L.V II VM,„ w«

1 mathmaiical software C0MPU/

e]IBLBB

S199S140

S165

S245$189S205

KIM—1

ASSEMBLED & TESTED

$245.00

MEMORY PLUSfor KIM-18K RAM (21L02)8K EPROM

ASSEMBLED & TESTED$245.00

CardsWelcome^

NUMBER CRUNCHER

HIS IS NOT A CALCULATOR CLEV DELAYS

hill ASCIIPROFESSIONAL KEYBOARDS

i.UDda MOS Encoding1

OulJt <» Mtfltwa log.e ,56 k«V"l

Modtl 702 Entlotut. 29 95

TARBELLCASSETTE INTERFACE

:e C..d.-ifi.TiabVhs DIP w

DATA COMMUNITATIONS ADAPTER

SO 103A ■-

r IMSAI. ALTAIRor T«cnrolOffy

• Drrt^r*! lor UH on Hit did ultphon* orFCC riguitiiani Wtltfl u»d with ■ C8T ci

ARE REQUIRED(pulMd) ind ni™-

• U.ii IQ3 ii

• OF.(injn i

PRICES: BAR! I

$49.95

$279.95$159.95

REAL TIME CLOCK FOR I-1M IUS

1 MHZ Crvital OKilliiarTwo indapcndtm intirrupn

Comrpl*!* OocurrHniition UWSMan lo diipJiy nm« of dayDoubl* lidK) loJdir nrnn

JG-BT ASSEMBLED fi TESTED S179.95

JG-RT KIT $124.95

3ahe board with M*riuel $30.00

JADE 8080A KIT$100.00 KIT

BARE BOARD $30.00

2513 [5*15 loi S9 00 t.

jadeZ80kit

-with PROVISIONS tor J\\ \

ONBOARD ?7M ind POWER ON JUMP

$135.00 EA. *«$149.95 EA. «"«

BARE BOARD $35.00

Z80 "UPGRADE" KIT

Change yooi JADE 2MH; Z80 to a 4MHlvws.onwith thts.umpla k.i

only $17.95 with tradeS49.95 purchase.

To Hade, you must give us your 2MHl Z80 chip

and 8221 clock Oliver

The "UPGRADE KIT" includes

Z80A chip. i 8K remlGi

8224 4 clock rJrivn 20 pi capacitor

36MHi crystal

E-PROM BOARDS

KIT

MR-8 (8K uses 2708)

with IK RAMM.R-16T H6K uses 27161 KIT

with IK RAMMM-16 (16K uses 2708)RAM/N/ROM (16K uses any

E-PROM) KIT $117,00

JG-8/16 (uses 2708 or 27161

KITBARE BOARD

$99.50

$99.50$99,00

$59.95$30.00

TJ-l

Convert T.V. set to

Video Monitor.

KIT $8.95

THE PROM SETTER

WRITE & READ

EPROM

1702A - 2708 - 2716

5204 - 6834

• The EPROM Suckel Urn is connecled II

' Programming IS accomplished by The Cm

' Jusi read in ihe Program lb be Wniren oi

EPROM into your Processor and 161 the

■ Use Sockei Umi to Bead EPROM's Corn

KIT $210.00

ASSEMBLED $375.00

"W

Computer Products

5351 West 144th StreetLAWNDALE, CALIFORNIA 90260(213) 679-3313

RETAIL STORE HOURS: Monday - Friday 9-7

Saturday 9—5Discounts available at OEM quantities ADD $1.50under 10 lbs. for shipping. California residents add6% sales tax.

NEW CATALOG NOW AVAILABLE

Circle 195 on inquiry card.

BYTE June 1978

195

fr

SOnpi/CT Mates with two rows of .025" sq. orOUUfXCI dia. posts on patterns of .100"IIIMDCDC centers and shielded receptaclesJUifll Cnu Probe access holes in back. Choice

of 6" or 18" length.Part No. No. of Contacts Length Price924003-18R 26 18" $ 5.38 ea.924003-06R 26 6" 4.78 ea.

924005-18R 40 18" 8.27 ea

924005-06R 40 6" 7.33 ea

924006-18R 50 18" 10.31 ea.924006-06R 50 6" 9.15 ea.

HIIMPFR Solder t0 pc boards ,or "ls,ai"UUITir fun plug-in access via socket-connector

UCAnCDQ jumpers. .025" sq. posts. Choice

nCnUtnO of straight or right angle.

Part No. No. of Pi

923863-R 26

923873-R 26

923865-R 40

923875-R 40

923866-R 50

923876-R 50

Angle

Price

straight

$1.28 ea

right angle

1.52 ea

straight

1.94 ea

right angle

2.30 ea

straight

2.36 ea.

right angle

2.82 ea

H INTRA-C0NNECT0R

Provides both straight and right angle functions. Mateswith standard .10" x .10" dual row connectors (i.e. 3m, Ainsley,etc.) Permits quick testing of inaccessible lines.Part No.: 922576-26 No. of contacts: 26 Price $6.90 ea.

H INTRA-SWITCH

Permits instant line-by-line switching for diagnostic or QAtesting. Switches actuated with pencil or probe tip. Mates withstandard .10" x .10" dual-row connectors. Low profile design.Switch buttons recessed to eliminate accidental switching.Part No.: IS-26 No. of contacts'. 26 Price $13.B0 ea.

'^CRYSTALS §T~

THESE FREQUENCIES ONLY

CY1A

CY1.84

CY2A

CY2.01

CY2 50

CY3.27

CY3.57

CY3A

CY4.91

CY7A

CY5.18

CY6.14

CY6.40

CY6.55

CY12A

CY14A

CY19A

CY18.43

CY22A

CY30A

FREQUENCY

1.000MHz

1.8432MHz

2 000MHz

2.010MHz

2.500MHz

3.2768MHz

3.579545MHz

4.000MHz

4.916MHz

5.000MHz

5.185MHz

6 144MHz

6.400MHz

6.5536MHz

10.000MHz

14.31818MHz

18.000MHz

18.432MHz

20000MHz

32.000MHz

CASE

HC33HC33HC33HC33HC33HC33HC33HC18HC18HC18HC18HC1BHC18HC18HC18HC18HC18HC18HC18HC18

5.955.955.951.954.954.954.954.954.954.954.954.954.954.954.954.954.954.954.954.95

V4" mounting holes

SWITCHES

ml

TOGGLE(suu-minaturt

JMT121 SPDT on-otf-on

JMT123 SPOT on-none-on

JMT221 DPDT on-off-on

JMT223 DPDT on-none-on

2.15

ml

MPC12! SPOT on-oft-on 52 05 SI 53TOGGLE MPC123 SPDT on-none-on 1 75 1 31[Pllnlad Circuit) MPC221 DPDT on-off-on 2.65 1 97 MPC223 DPDT on-none-on 2-25 1 GB

■«|

PUSH SUTTON

SPDT maintainedSPDT momentary

MS102 DPST momentary open 35MS103 SPST momentary closed .35

8 pin dip ■! switch14 pin dip 7 switcti16 pin dip 6 switch

1/16 VECTOR BOARD

0 1 Hole Spacing P-Panerrn

Pail No L W

64P44 062XXXP 4 50 6 50 1

159P44 062XXXP 4.50 17.00 3.

64P44 062WE 4.50 6.50 2.i

84P44 D62WE 4.50 8.50 2.

169P44 062WE 4.50 17.00 B.l

169P84 062WE 8.50 17.00 9.

169P44 062WEC1 4.50 17.00 6

10 up

1 543.32

bllv^hj m\y

Model P180 includewire wrap wire

2-100' spools #28 AWG

■HI

Model P180

$24.50

REPLACEMENT WRAP BITfor P180 Slit N WrapNo. P180A $12.95 ea;h

Replacement wire-wrapwire for P180 #28 AWGtpkg. of 3) $2.75 each

W28-2-A green W28-2-B rod

W28-2-C clear W28-2-D blue

INSTRUMENT/CLOCK CASE

Injection molded unit.Complete with red bezel.. AWx 4" x 1-9/16".

$3.49

MICROPROCESSOR COMPONENTS

B2128214821682248228

CPUCPUCPUS-Bit Input/Output

Priority Interrupt ControlBi-Directional Bus DriverClock Generator/Driver

System Controller/Bus Driver

$19.95 Z80 CPU

29.95 2650 MPU

10.95 MC6800 MPU

4,95 MC6810API 128 X 8 Static Ram

7.95 MC6S20 Periph. Interlace Adapter

4.95 MC5821 Periph. Interlace Adapter

5.95 MC6830L8 1024 X 8 Bit ROM

5.95 MC6850 Asychronous Comm. Adapter

S24.9526.5019.95

11.5014.9514.95

1B02MZB0M2650U

MM5O0H

MM503H

MM504H

MM506H

MM507H

MM510H

MM5013N

MM5016H

MM5017N

2504T

2518

2519

2522

2524

2525

2527

2528

2529

2532

2533

3341

74LS670

2513(2140!2513(3021)2516MM5230N

USER MANUALSCDP1802 Manual230 Manual

2650 Manual

SHIFT REGISTERS

Dual 25 Bit Dynamic

Dual 50 Bit Dynamic

Dual 16 Sit Sialic

Dual 100 Bit Static

Dual 100 Bii Static

Dual 64 Bit Accumulator

1024 Bit Accumulator Dynamic

500/512 Bit Dynamic

Dual 500/512 Bil Dynamic,1024 Oynamic

Hex 32 Bit Static

Hex 40 Bu Sialic

Dual 132 Bit Sialic

512 Dynamic

1024 Dynamic

Dual 256 Bil Static

Dual 250 Static

Dual 240 Bit Sialic

Quad B0 Bit Static

1024 Static

Flfo

4X4 Register

BOMS

Character Generator (upper case)

Character Generator (lower case)

Character Generator

2048 Bil Read Only Memory

S 7.507.505.00

RAMS

256 X 1 Static1024 X 1 Dynamic

256X41024 X 14096 X 1255 X4

i 9.959.9510.95

AY-5-1013 30K BAUD

UAHT'S

B101 25

8111 25

B5M 16

21L02 10

74200 25

93421 25.

MM5262 2KMK4027 (UPD414)MK411fi(UP0416|TMS4044-45NL

1702A 20

5203 20

82S23 32

82S115 40!

82S123 32

74S287 101

2708 8K

2716 T.I 161

2716 Intel 16)

6301-1 102

6330-1 m

74186 5i;

7418B 2SC

Sialic

Static

Dynamic

Sialic

Sialic 450ns

Static 450ns Law Power 10.95

Static 300ns 10.95

Static 300ns Low Power

Sialic

Stanc

Sianc

Static

Sialic

SiancStatic

Dynamic

DYNAMIC 16 PINDYNAMIC 16 PINSTATICUSFamous

Open C

Bipolar

Tristate

Sialic

EPROM

EPROM

EPROM

Tn-State Bipolar

Open C Bipolar

TTL Open Collector

TTL Open Collector

695

10.9529.9559.953.492 959.953.95

TELEPHONEKEYBOARD CHIPSAY-5-9100 $14.96AY-5-9200 14.95AY-5-9500 4.95AY-5-2376 14.95HD0165 7.95

74C922 9.95

SPECIAL REQUESTED ITEMS

ICM7045ICM7205ICM7207ICM7208ICM7209

HMOS READ ONLYMEMORIES

MCU6571 S1350MCM6574 13.50MCWG575 1350

PARATRONICS

Logic Analyzer KitModel 100A

$229.007kit

panel 2 010 MH2 Crystal 57.95.

MISCELLANEOUS

11C90 S19.95 MK4O240 $17.50

MC3061P 11 95 0S0026CH 3.75

MC1408L7 4 95 TIL308 10.20

MC140BL8 5.75 95H90 11.95

LD110/111 S25.O0/se1

MC4016(74416) 7.50

4N33 3.95

•■KKIIII

I I I Illll

Analyzes any type of digital systemChecks data rates in excess of 8million words per secondTrouble shoot TIL, CMOS, DTL. RTL.Schotlky and MOS familiesDisplays 16 logic states up to 8 digits wideSee ones and zeros displayed on yourCRT, octal oi hexadecimal formalTests circuits under actual operating conditionsEasy to assemble — comes with step-by-step constructionmanual which includes 80 pages on logic analyzer operation,(Model 100A Manual - $4.95)

^w~

Some applications are:

- Troubleshooting microprocessoraddress, instruction, and data flow

- Examine contents of ROMS

- Tracing operation of control logic

- Checking countei and shiftregister operation

- Monitoring I/O sequences

- Verifying proper system operationsduring testing

PARATRONICS TRIGGER EXPANDER - Model 10

Adds 16 additional bits. Provides digital delay and qualification of inputand 24-bit trifjger word. — Connects direct to Model 10OA1or integrated

RHIWf&Wi

3ft-Dlgi1 Portable DMM

■ Overload Protected

• 3 high LED Display

• Batlery or AC opeialion

• Auto Zeroing

• Itnv IVa, 0 i ohm resolution

• Qverange reading

• 10 meg mpui impendence> DC Accuracy !".. typicalRanges: DC Voltage - 0-10O0V'AC voilage; 0-1000V

Freq Response 50-400 HZDC'AC Current; 0-tOOmAResistance 0-10 meg OtraiSue 6 4 . j .f x 2

Accessories:AC Adapter BC-28 $9.00Rechargeable

Batteries BP-26 20.00Carrying Case LC-28 7.50

Model 10 Kit -$229.00

Baseplate —19.95unit). Madui id Manual -%i.95

100 MHz 8-Digit Counter

■ '"" MHz flange • Fo

* 20 Ht-

• .6" LED Displayt Cryslal-controlled timeri Fully Aromatic

> Portable — completelysell-contained

• Size -x 5.63"

1 75" i 7.3

• Four power soirees, i.e

batteries. 110 or 220V wilh

M charger 12V with auto

lighter adapter and external

7.2-10V power supply

max-100 $134.95

ACCESSORIES FOR MAX 100:Mobile Charger Eliminator

use power from car battery Model 100 — CLA $3.95

Charger/Eliminator

use 110 V AC Model 100 — CAI S9.95

63-Key Unencoded

KEYBOARDS

Hexadecimal Encoder

This is a 63-key, terminal keyboard newlymanufactured by a large computer manufac-turer. It is unencoded with SPST keys, unat-tached to any kind of PC board. A very solidmolded plastic 13x4" base suits most applica-tion. in stock $29.95/each

19-key pad includes 1-10 keys,ABCDEF and 2 optional keys and ashift key. $10.95/each

$5.00 Minimum Order - U.S. Funds OnlyCalifornia Residents - Add 6% Sales Tax

Spec Sheets- 25tf

1978A Catalog Available-Send 35^ stamp

J':;iiii; ow

PHONE

ORDERS

WELCOME

(415) 592-8097

MAIL ORDER ELECTRONICS - WORLDWIDE

1021 HOWARD AVENUE, SAN CARLOS. CA 94070

Advertised Prices Good Thru June

The Incredible"Pennywhistle 103'

$129.95

Kit Only

The Pennywhistle 1D3 is capable ui ••.ww-q (i3'3 to anC iiom ajcio tape u^fiojcrilical speed requirements lor Ihe 'ecorde- and it is adie to ccm.-numeaie directlywild another modem and terminal lof te'epro.ne Hamming aid communication!lor ihe deal. In addilicm. it is free ol cmica ad.jsfnents and .s djii: v»uh ion prec S'O-n

readily available pads.

Data Transmission Method f-requency-snitr Keying, lun-dupiei (nait-oupiei

selectable).

Maiimum Data Rale 300 Baud.

Oala Format Asynchronous Serial (telum lo marfc level required

between each character).Receive Channel Frequencies .. .2025 Hz tor space; 2225 Hz lor mark.Transmit Channel Frequencies . .Switch selectable: Low (normal) 1070 space.

1270 mark: High - 025 space 2225 mark

Receive Sensitivity 46 dbm accousticaiiy coupled.

Transmit Level 15 dbm nominal Adiustaoie Irom -6 dbm

lo 20 dbmReceive Frequency Tolerance ...Frequency reference automatically aoiusis to

allow lor operation between 1800 Hz and 2400 Hz.Digital Data Interface EIA RS-232C or 20 mA current loop [receiver is

oploisolated and non-polar)

Pnwei Requirements .120 VAC. single phase. 10 Watts

Physical All components mounl an a single 5" by 9"

printed circuit boatd All components includedRequites a VOM. Audio Oscillator. Frequency Counter and.-oi Oscilloscope in align.

S*the 3

rd Hand

$9.95 each

"Leaves two hands free foi

working* Clamps on edge of bench, tabfe

or work bench' Position board on angle or flat

position for soldering or clipping' Sturdy, aluminum construction

for hobbyist, manufacturer or

school rooms

DIGITAL STOPWATCH

■ Bright G Digit LEO Display

• Times to 59 minutes 59 59 seconds

• Crystal Controlled Time Base

• Three Slopwalches in One

Tunes Single Event — Split & Taylor

• Size 4 5" x 2 15" i 90 '{414 ouncesi ■

• Uses 3 Penliie Cells

Kit - $39.95

Assembled — $49.95Heavy Duty Carry Case $5.95

Stop Watch Chip Only (7205) $19.95

3V2DIGIT DPM KIT

•i

New Bipolar Unit • Auto Polarity

• Auto Zeroing * Low Power

• .5" LED . Single IC UnitModel KB500 DPM Kit $49.00Model KB503 5V Power Kit $17.50

JE700 CLOCK

The JE700 is a low cost digital clock Buiis a veiy high quality uml The unit tea-lures a simulated walnut case wilh dimansions ol 6 *?'.■ >l It utilizes aMAN7? high hnijUtriesr. readout and meMM53M clock Cl

KIT ONLY

$16.95

JE803 PROBE

Tile Logic Pioheis 3 uml

11'iii.'>He11',ime m trouble

TTL DTL RTL CMOS II der

neeas to operate direciiy on oi

lest drawing a scant 10 ma ma. ItusesaMAJG

readout lo indicate any ol trie following stales 3*

Ibese symbols (Hi t i LOWi o [PULSEl P The

Probe can iletec! nigh tieijutin y uuir,

■e used ai MOS it

-iwiil fcsull

ii damagi

$9.95 Per Kit

Drinted circuit board

PL 5V 1A Supply

This is a standard TTL uowei supply using itie wen kno>LM309K regulator ;Cto rjrovide a solid 1 AMP of curreni awolts We try lo maxe things easy tor you by proviDiewerytriingyouneedinanerjackagc including ibebarow;

l0"""» JE225 $9.95 Per Kit

PROTO BOARDS

PROTO BOARD 6

S15.95

(6" long X 4" wide)

PB100 -4.5" x 6

PB101 - 5 8" X 1 5"PB102 -?'X4.5"PB103 -3" x6"PB104 - 9.5" x8"PB203 - 9.75 x 6V2 x 2%PB203A - 9.75 x 6Vi x 2*

(includes DO*er suoclyi

S 19.9529 9539.9559.9579.9580.00

1 129.95

PROTO CLIPS

m

9 m 16 pin

...■ * 24 PIN

Milium! 40 PIN

S4.504.758.50

13.75>

196

BYTE |une 1978

SN740QN

SN7401NSN7102N8N7403NSN7-104NSN7405NSN7406NSN7407NSrJ7408NSN7409NSN7410NSN7411NSN7412NSN7413NSN7414NSN7416NSH7417NSN7420NSN742INSN74Z2NSN7423NSN7425NSN7426NSN7427NSN7429NSN7430WSN7432NSrV7437NSN7438NSW7439NSN7440NSN7441NSN7442NSN7443NSN7444NSN7445NSN7446NSN7447NSN7448NSH7450NSN7451NSN7453NSN7454NSN7459ASN7460NSN7470N

C0400QCD4001CD-I 002C04Q06CD4007CD4009CD-10ID

CD-ton

CD4012CD4013CQ4014CO4015CD4Q16CO4017CD4018C-D4019CO4020CD4021CD4022CD4Q23CD4024C04025CD4026CD-1027

74C0274C0474CQ874C1D74C1474C2074C3074C4274C4874C73MC7-1

78MG

lM3uUH

LM301H

1.M301CN

LH30EH

LM304H

LM305H

LM307CN.H

LM308H

LM308CN

LM309H

LM309K

LM31QCN

LM31IH

LM311N

LM317K

LM318CN

LM319N

LM320K-5

LM320K-5 2

LM32QK-I2

LM320K-15

LM320K-13

LM320K-24

LM320T-5

LM320T-5 2

LM320T-B

LM320M2

LM32QT-15

LM32QMB

LM320T-24

LM323K-5

LM324N

LM339N

LM340K-5

LM340K-6

LM340K-8

LM34QK-12

LM340K-15

LM340K-18

LM340K-24

LM34QT-5

LM34QT-6

7400 TTL

^7

SN7472N

SN7473N

SN7474N

SN7475N'

SN7476N

SN7479N

SN7480N

5N7482N

SN7483N

SN7485N

SN7486N

SN7489N

SN7490N

SN7491N

SN7492N

SN7493N

SN7494N

SN7495N

SN7496N

SN7497N

SN74100N

SN741Q7N

SN74109N

SN74116N

SN74121N

SN74122N

SN74123N

SM74125N

SN74126N

SN74132f4

SN74136N

SN74141N

SN74142N

SN74143N

SN74144N

SN74145N

SN74147N

SN74148N

SN74150N

SN74151N

SN74153N

SN74154N

SN74155N

SN74156N

SN74157N

2-952.952.95

C/MOS

CD4028CD4Q29CD4030CD4035CD4040CD4041CD4D42CD4043CD4044CD4046CD4047CD4048CD4Q49CD4050CD4051CD4053CD4056CD4059CD4060CD4066CD4068

74C00

74CB97-1C9074C9374C9574C10774C15174C15474C15774C16074C161

LINEAR

LM340T-8 1 25LM340T-12 1.25LM340T-15 1.25LM340T-18 1.25LM340T-24 1.25LM350N 1.00

LM351CN .65

LM370NLM373NLM377NLM380NLM380CNLM381N

3.25

LM382N

,NE501rV

NES10A

NE529A

NE531H

NE536T

NE540L

NE550N

NE555V

NE556

NE560B

NE561B

NE562FJ

NE565H

NE565N

NE566CN

NE567H

NE567V

NE570

LM703CN/H

LM709H

LM709N

LM710N

LM711N

LM723H

LM723N

3N74160NSN74161NSN74162NSN74163NSN74164NSN74165NSN74166NSN74167NSN74170NSN74172NSN74173NSN74174NSN74175NSN74176NSN74177NSN74179NSN 741 SONSN74181NSN741B2NSN74184NSN74185NSN741B6HSN74188NSN74190NSN74191NSN74192NSN74193NSN74194NSN74195NSN74196NSN74197NSN74198NSN74199NSN74200NSN74251N5W74279WSN74283NSN74284NSN742B5NSN74365NSN74366NSN74367NSN74368NSN74390NSN74393N

CD4070

CD4071

CD4072

CD4076

CD4081

CD4082

CD4093

CD4098

MC14409

MC14410

MC14411

MC14419

MC14433

MC14506

MC14507

MC14562

MC145B3

CD450B

CD-1510

CD4511

CD4515

CD45I8

CD4520

CD4566

74C1B374C16474C17374C19274C19374C19574C92274C92374C92574C92580C95S0C97

LM733N

LM739N

LM741CH

LM74ICN

LM741-14N

LM747H

LM747N

LM748H

LM748N

LM1303N

LM1304N

LM1305N

LM1307N

LM1310N

LM1351N

LM1414N

LM145BCN/H

MC1488

MC1489

LM1496N

LM1556V

MC1741SCP 300

LM2901N

LM3053 1

LM3065N

LM390ON[3401).

LM3905N

LM3909 1

MC5558V 1.

LM7525N

LM7534N

2.95

£.

LM75450

75451CN

75452CN

75453CN

75454CN

75491CN

75492CN

75494CN

HC415!

F1C4194

RC4I95

74LS0074LS0274LS0374LS0474LS0574LS0B74LS1074 LSI 374LS1474LS2074LS2674LS2774LS2874LS3074LS3274LS4074LS4274LS4774LS5!74LS55. 74LS73

74LS00 T"

74LS7474LS7574LS7674LS8374LSB574LSB674LS9074LS9274LS9374LS9574LS9674LS10774LS10974LS11274LS12374LS13274LS13574LS13874LSI 3974LSI51

■ 74LS15774LS16074LS16174LS16274LS1G374LS16474LS17574LS18174LS19074LS19174LS19274LS19374LSI9474LS19574LS25374LS25774LS26074LS27974LS36774LS36874LS670

BUGBOOK*

Continuing Education Series

n

(he

d know ibow TTL logic chips tosr syilems You II Icam iboul the Cusic1ror.ua induding gales. Ilip-llops. lalches. buses, detoiimuniprtiers, LED ifispUp. RAM's, ROMs, tild much, rr

S17.00 par tat

IS designed Id teich

Tills .Dlume will inliofluce you lo the labulous UART

Inlertice BetwMn am larmirials. «!C . and .

curiam loops, and lh» OS !3!C iniertaoe sbndaid Particularly rg com mended

lor any BTTV anthusiasl.

THE 555 TIMER APPLICATIONS

SOURCEBOOK WITH EXPERIMENTSby Howard M. Berlin W3HB

6UQB0OK III %

by I'll11 II ilony, flivld G. Lirun. WB4HYJ, Jonithin A, TlhiiHere is irrn book thai puts il all logether. Besides having nmcr valuitthere are a series ol eiperlmefits In which the reader completely explores theaoaO Chip pin by pin and introduces you 10 the Mark BO microcomputer. 'uniqLO easily interlaced syslam. II is recommended thai you lave llirt bar.ground oo the DUGBOQKS I & II belore proceeding with BUCBCOK III

INSTRUCTOR'S MANJAL

OP AMP MANUAL by Howard M. Berlin W3HB (9.00

:penmrnt guide to application ot operational amplifiers Over 25 eipen-i on all phases ol Op limps

IA microcomputer programmeS080A microcompulrr interfacing An integrated approach la sell-inst

basic digital electronics, breadboariling and 8080A interlacrngipiograrBugbook VI integrates the digital concepts ol Bugbook V into i treatrr

CMOS-M — DESIGNERS PRIMER

AND HANDBOOK Naw aipandad venlon

Start! at basic slruclure ol CMOS devias through integral

COMPLETE MANUAL FDR DIGITAL CLOCKS by John Walss and John Brooks

Familiarizes technician or iiobDyisi with basic theories behind digital clocks includes trouble shoaling guides, basic

characteristics ol clocks, soldering techniques, clock component data sheets and construction tips. $3.95

.190" dia.

Red

5/S1

XC209XC209XC209

XC22XC22XC22XC22SSL-22

DISCRETE LEDS

XC526XC526XC526XC526XC526

XC556XC556XC556XC556XC556XC556

Green

Yellow 4/$l

Orange 4/S1

.085" dla.MV50 - fed - 6/S1

GreenYellowOrange

:NFRA-REO LED

DISPLAY LEDS

TYPEMAN 1MAN 2MAN 3MAN 4MAN 52MAN 71MAN 72MAN 74MAN 81MAN 82MAN 84MAN 3620MAN 3630MAN 3640MAN 4610MAN 4640MAN 4710MAN 4730MAN 4740MAN 4810MAN 6610MAN 6630MAN 6640MAN 6650MAN 6660

POLARITY

Common Anode-red5 x 7 Dot Matnx-redCommon Cathodr-redCommon Cathode-redCommon Anode-flteenCommon Anode-redCommon Anode-redCommon Cathode-redCommon Anode-yellowCommon Anode-yellowCommon CathoOe -yellowCommon Anode-orangeCommon Anode-orange -1Common Cathode-orangeCommon Anode-orangeCommon Cathode-orangeCommon Anode-red =1Common Anode-redCommon Cathode-redCommon Anode-yellowCommon Anode-orange-D DCommon Anode-orangeCommon Cathode-orange-DCommon Cathode-orange *Common Anode-orange

TYPE

MAN 66B0

MAN 6710

MAN 6730

MMi 6740

MAN 6750

MAN 6760

MAN 6780

DL701

OL702

DL704

DL707

DL741

DL746

DL747

DL749

DL750

DL33B

FN070

FND359

FND503

FN0507

5082-7300

5082-7302

5082-7304

5082-7340

POLARITY

Common Cathode-orangeCommon Anode-red-D.D.Common Anode-ted -1Common Cathode-red-D.D.Common Cathode-red *1Common Anode-redCommon Cathode-redCommon Anode-red ^1Common Cathode-redCommon Cathode-redCommon Anode-redCommon Anode-redCommon Anode-red *1Common Anode-redCommon Cathode-red ±1Common Cathode-redCommon Cathode-redCommon CathodeCommon AnodeCommon Cathode (FND500)Common Anode (FND510)4 x 7 Sgl. Digit-HHDP4 x 7 Sgl. Digit-LHDPOverrange character (*1)4x7 Sgl. Digit-Hexadecimal

.500 -99

.500 .99

.600 19.95

.600 19.95

600 15.00

.600 22.50

RCA LINEAR

CA3013 2.15 CA3082 2.00

CA2023 2.56 CA30B3 1.60

CA3035 2.48 CA3086 .85

35 CA3089 3.75

30 CA3130 1.39

CA3059 3.25 CA3140 1.25

CA3060 3.25 CA3160 1.25

85 CA3401

CA3039CA3046

CA3080

CA3081 2.00 CA3600 3.50

CALCULATOR CHIPSAND DRIVER

FCM3817MM5725MM5736MM 5738OM8364DM8865DM8887DM88895030

S5.002951 952.952.001.00

7.95

IC SOLDERTAIL — LOW PROFILE (TIN) SOCKETS

CLOCK CHIPS

MM5309MM5311MM5312MM5314MM5316MM5318MM5369MM58417001

9374 - 7-segment LED drivernon anode LEDs S .99

"SOLDERTAIL STANDARD (TIN)

18 pin S?4 pin S

24 pin L28 pin L36 pin L40 oin L

SOLDERTAIL STANDARD (GOLD)

24 pin S2B pin S36 pin S40 pin S

WIRE WRAP SOCKETS (GOLD) LEVEL #322 pin M24 pin Vt

40 oin WW t 75

50 PCS. RESISTOR ASSORTMENTS $1.75 PER ASST.

ASST. 4ASST. 5

10 OHM 12 OHM 15 OHM IB OHM 22 OHM

27 OHM 33 OHM 39 OHM 47 OHM 56 OHM

68 OHM 82 OHM 100 OHM 120 OHM 150 OHM

180 OHM 220 OHM 270 OHM 330 OHM 390 OHM

470 OHM 560 OHM 680 OHM 820 OHM IK

330K820K

2 2M

5 6M

1/4 WATT 5% 50PCS.

1/4 WATT 5% 50 PCS.

1/4 WATT 5% 50 PCS.

1/4 WATT 5% 50 PCS.

1/4 WATT 5% 50PCS.

1/4 WATT 5% 50 PCS.

1/4 WATT 5% 50PCS.

ASST. 8R lncludesResistorAssortments1-7(35QPCS.) $9.95 ea.

S5.00 Minimum Order - U.S. Funds OnlyCalifornia Residents - Add 6% Sales Tax

Spec Sheets - 25tf

1978A Catalog Available-Semi 354stamp

PHONE

ORDERS

WELCOME

(415) 592-8097

MAIL ORDER ELECTRONICS - WORLDWIDE

1D21 HOWARD AVENUE, SAN CARLOS, CA 94070

Advertised Prices Good Thru June

WIRE-WRAP KIT — WK-2-W

WRAP . STRIP . UNWRAP

• Tool loi 30 AWG Wile

• Roll ol 50 Ft. While or Blue 30 AWG Wire

• 50 pes. each 1", 2". 3" & 4" lengthspre-stripped wire.

$12.95

WIRE WRAP TOOL WSU-30WRAP . STRIP . UNWRAP $6.95

WIRE WRAP WIRE — 30 AWG

25 ft. min.$1.25 50ft.J1.95 100ft. $2.95 1000 ft. $15.00SPECIFY COLOR — White - Yellow - Red - Green - Blue - Black

WIRE DISPENSER — WD-30

50 ft. roll 30 AWG KYNAR wire wrap wire $3.95 ea.

Cuts wire to desired length

Strips 1" of insulation Spaclfy — Blue-Yellow-White-Red

REPLACEMENT DISPENSER SPOOLS FOR WD 30

Specify blue, yellow, white or red

$1.M/spool

EXAR

XR-L555 $1.50

Micro-Powef version of thepopular 555 Timer and directlyinterchangeable. Dissipatesl/15th the power and operatesdown to 2.7 volts. Perfect forbattery operation and CMOS cir-cuits.

XR2242CP $1.50

Precision timing circuit forgenerating timing pulses in ml-rtutoB, hours and days or up to1 year by using two. Reducescost of time delay circuits. Basic555 Timer with built-in 8-bitCounter.

XR2206KA-$14.95

XR205XR210

XR215

XR320

XH555

XR556

XR567CP

XR567CT

XR1310P

XR1468CN

XR1488

XR14B9XR1BO0XR2206XR2207XR2208XR2209XR2211XR2212XR2240XR2264

XR2206KB-S19.95

1.39 XR2556 S3.20 XR2567

1.40 XR34033.85 XR41365.20 XR41511.75 XR41945.25 XR4202*-36 XR42123.45 XR455B4.25 XR4739

XR4741

TYPE

1N746

1N751A

1N752

1M753

1N754

1N959

1N965B

1N5232

1N5234

1N5235

1N5236

1N456

1N456

1N4B5A

1N4001

1N4002

1N4003

1N4004

ZENERS -

VOLTS W

3.3 400m

5.1 400m5.6 400m

6.2 400m6.8 400m8.2 400m15 400m5.6 500m6.2 500m6.8 500m7.5 500m

50PIV100 PIV200 PIV400 PIV

• DIODES —

PRICE TYPE

4/1.00 1N4005

4/1.00 1N4006

4/1.DO 1N4007

4/1.00 1N36O0

4/1.00 1N4148

4/1.00 1N4154

4/1.00 1N4305

28 1N4734

28 1N4735

28 1N4736

28 1N473B

6/1.00 1N4742

6/1.00 1N4744

5/1.00 1N1133

12/1.00 1N11B4

12/1.00 1N1185

12/1.00 1N1186

12/1.00 1N1188

RECTIFIERS

VOLTS W

600 PIV 1 AMPBOO PIV 1 AMP1000 PIV 1 AMP50 200tn

10m10m

PRICE

10/1.0010/1.0010/1.006/1.0015/1.0012/1 0020/1.002828

12 iw

15 Iw

50 PIV 35 AMP

100 PIV 35 AMP

150 PIV 35 AMP

200 PIV 35 AMP

400 PIV 35 AMP

SCR AND FW BRIDGE RECTIFIERS

C36DC38M2N2328MDA 980-1MDA 980-3

15A@400V

FW BRIDGE RECFW BRIDGE REC

C106B1

MPSA05

MPSA06

TIS97

TIS9B

TIS133

TIS135

40409

40410

40673

2N918

2N2219A

2N2221A

2N2222A

2N2369

2fJ2359A

MPS2369

2N2484

2rJ2906

2N2907

2N2925

MJE2955

2N3053

.50.305/1.006/1.006/1,005/1.005/1.00

TRANSISTORS

3/1.004/1.005/1.005/1.00

2N3055

MJE3055

2N3392

2N339S

PN3567

PN356B

PN3569

MPS3638A

MPS3702

2N3704

MPS3704

2N3705

MPS3705

2N3706

MPS3706

2N3707

2N3711

2N3724A

2N3725A

2N3772

2N3823

2N3903

5/1.005/1.003/1.004/1.004/1.005/1.005/1.005/1.005/1.005/1.005/1.005/1.00

2fJ39042N39052N39DC2N40132N4123PN4249PN42502N44002N440I2N44U22N44032N44092N50B62rJ50872N50882N50892N5129PN5134PN51382N51392N52102N54492N5951

3/1.006/1.004/1.004/1,004/1.004/1.004/1.004/1,005/1.004/1.004/1.004/1.004/1.005/1 Ot5/1.015/1.015/1.005/1.003/1.OC3/1.00

CAPACITOR-

CORNER

10 pf

22 pi

47 pi100 pi220 pi470 pf

,001ml.0022,0047mlOlmt

. 1 /35V

.15/35V.22/35V.33/35V.47/35V68/35V1.0/35V

10-49 50-100

.05 .04 .03 .001/xF .05 .04

.05 .04 .03 ,0047»tF .05 .04

.05 .04 .03 .OVF .05 04

05 .04 .03 ,022WF ,06 .05

.05 .04 .03 047^F .06 .05

.05 .04 .035 .Ipf 12 09

100 VOLT MYLAR FILM CAPACITORS

.12 .10 .07 .022mf .13 11

.12 .10 .07 047ml .21 17

-12 10 .07 .1ml 27 23

.12 .10 .07 .22ml 33 27

+20% DIPPED TANTALUMS (SOLID) CAPACITORS

17 1.5/35V 30 26

.28

.47/50V .1.0/50V3.3/50V4.7/25V10/25V10/50V22/25V22/50V47/25V47/50V10O/25V100/50V220/25V22O/50V470/25V1000/16V2200/16V

2.2/25V.28 .23 .17 3.3<25V

.28 .23 17 4.7/25V

.28 .23 17 6.8/25V

.28 .23 .17 10/25V28 .23 .17 15/25VMINIATURE ALUMINUM ELECTROLYTIC CAPACITORSAxial Lead

.10

47/25 V.47/5DV1.0/16V1.0/25V1.0/50V4.7/16V4.7/25V4.7/50V10/16V10/25V10/50V47/50V100/16V1O0/25V10O/50V220/16V4 70/25 V

Radial Lead.15

Circle 200 on inquiry card.

BYTE June 1978 197

What's New?

Intel 8085 with PASCAL

SYSTEMS

Floppy Disk Based Z-80 MicrocomputerSystem

The AID-80F is a complete diskbased computer from MOSTEK thatprovides for hardware and softwaredevelopment and debug. The heart ofthe AID-80F is the SDB-80 which com-bines the Z-80 processor with 16 K bytesof on board programmable memory. The

RAM-80 memory and 10 expansionboard includes 16 K bytes of program-mable memory and four 8 bit 10 ports.The FLP-80 flexible disk drive controllerboard interfaces the SDB-80 with up tofour drives with soft sector format. Anoptional board, the AIM-80, allows realtime in-circuit emulation with extensivedebug, trace and diagnostic capabilities.Software programs and features include:monitor, text editor, assembler, relo-cating linking loader, debugger and aperipheral interchange program thattakes completely unformatted softsector diskettes, formats them to IBM370, and records the system software.The program also copies files from diskto disk, disk to peripheral, or from anyperipheral to any other peripheral. TheAID-80F is priced at $5995; each boardis also available separately. ContactMOSTEK Corp, 1215 W Crosby Rd,Carrollton TX 75006."

Circle 578 on inquiry card.

Vector 1 Computer Now inRack Mount Kit

Vector Graphic Inc has announcedavailability of its Vector 1 computer in anew rack mount kit. The complete kitcomprises a card cage, assembled andtested 18 slot mother board with 18connectors, • card guides and lockingbuttons for 18 cards. The mother boardis fully shielded to reduce noise on thebus. The price is $225. A companionpower supply kit, designed for rackmounting, also is available. The 18 A8 V, 2.5±16 V custom supply providespower for a full 18 boards. Transformerhas primary taps for 110 V, 120 V and130 V. Price for the supply kit, includingmounting bracket, fuse and all hardware,is $90. Further information may beobtained from Vector Graphic Inc, 790Hampshire Rd, Westlake Village CA91361."

Circle 579 on inquiry card.

Bytemaster from Digital Group

The Digital Group's first completelyintegrated computer package, the Byte-master, features either 18 K or 32 Kof programmable memory, but will sup-port up to 64 K memory if desired. TheBytemaster is fully wired to supportvarious external peripherals with pro-visions for expansion. User optionsinclude a printer, monitor, and addi-tional digital cassette minifloppy, orstandard floppy disk drives plugged intoany of the four available IO ports. Theunit comes in a metal cabinet mountedon a heavy duty metal yoke and is pricedat $3245 for the top of the line Master 4Model (minifloppy, 32 K of program-mable memory, fully assembled). Detailsare available from The Digital GroupInc, POB 6528, Denver CO 80206."

Circle 580 on inquiry card.

The 85/P, a programmer's workbenchfrom Northwest Microcomputer SystemsInc, is a complete system which in-cludes:

• 8085 processor with 54 K bytesof static programmable memory.

• One megabyte of storage in twodouble density Shugart floppydisk drives.

• 24 by 80 high resolution display.

• Two serial ports for printer andsecond terminal or modem.

• A choice of solid oak or walnutcabinet.

The system provides a 700 lines perminute PASCAL compiler and inter-preter, random and sequential files, ascreen oriented editor, interactive sourcelinked debugger, plus documentationand a 90 day warranty.

The 85/P costs $7495. Delivery isquoted at 30 to 60 days, with NorthwestMicrocomputer Systems paying fordelivery on any order shipped later than60 days. A variety of options are avail-able, including a complete turnkeyscreen oriented accounts receivablepackage. The system also supports CP/M,FORTRAN, BASIC and 8080 compati-ble software. Contact Northwest Micro-computer Systems Inc, 121 E 11th,Eugene OR 97401."

Circle 581 on inquiry card.

Small Business Computer Systems

A complete small business accountingsystem, Micro Executive, has been an-nounced by Microcomputer BusinessSystems Inc, 1776 E Jefferson St,Rockville MD 20852. The system issaid to include accounts receivable,accounts payable, merchandise inven-tory, fixed assets inventory, payroll,financial reporting, and general ledger.The company has announced a computersystem called Micro Executive II whichconsists of an 8080 processor, 64 Kbytes of user memory, two full-sizeShugart Associates floppy disk drives(Models 801 or 851 for either a total of630,000 bytes or 1.2 million bytes ofsecondary storage). The system alsocomes with a Lear Seigler 80 by 24video display terminal and a 30 cpsprinting terminal. Optional terminals,printers, and hard disk drives areavailable."

Circle 582 on inquiry card.

198 |une 1978 ©BYTE Publicalions Inc

S-100

32K STATIC MEMORY BOARD

features;

1. FULLY STATIC - usable with all DMA devices.

2. BUFFERED ■ with noise suppressed control inputs.

3. MODULAR - populated in Ik increments.

4. RELIABLE ■ single source +5V regulator

5. PROM COMPATIBLE • monitors available on request.

AVAILABLE EITHER IN COMPLETE KITSOR ALREADY ASSEMBLED UNITS WHICHHAVE BEEN FULLY TESTED AND BURNED IN.

BARE BOARD $38°°

8K16K24K

32K

KIT

$270™$44000

$5800"$695°°

ASSEMBLED

$296»o$465°°$61200$740»o

PRICES QUOTED ARE POD 300ns MEMORIESKITS AND ASSEMBLED UNITS INCLUDE DOCUMENTATION

DEC0 LSI-11 16K MEMORY BOARD

• Q-BUS—FULLY 'BUFFERED AND

STATIC NOISE SUPPRESSED

► MODULAR «PROM COMPATIBLE

► ADDRESSABLE TO 128K WORDS■ MAPPABLE IN 4K INCREMENTS

ASSEMBLED,TESTED &BURNED IN

$1199

oo

COMPLETE

KIT $110900

LARGEST & FASTEST STATIC MEMORY AVAILABLE

S-100 EXPANDABLE MOTHER BOARD

• 8-SLOT EXPANDABLE BACKPLANE—inline male and female connectors enablebackplanes to be plugged together, or thefemale may be used in place of an extenderboard.QUIET—ground plane decouples all signal

lines.RELIABLE—SAE 8100 phenolic body, goldcontact connectors.

COMPLETE

$66

oo

ASSEMBLED

$89

oo

UNIVERSAL "U DESIGN" WIRE WRAP BOARDS

ALL BOARDS ARE G 10 GLASS EPOXV. HAVE Vcc ANO GROUNDPLANES. PLATED THROUGH HOLES. S GOLD PLATED EDGE CONNECTORS

No. 1 BEST ON THE MARKETMICRO CPU CARD WITH S 100 BUS 3ON BOARD REGULATORS FITS ALL STANDARO IC SOCKET CONFIGURATIONS1700+ HOLES.SIZE 5"<10" »«.«»•

$2395

No. 2

UNIVERSAL BOARD FITS Si. PIN

SOCKEI WITH 0 10" CONTACT

SPACING MADE BY LEADING COM

PUTER MANUFACTURER AS "IK HOUSE"

BOARD 1600+ HOLES

SIZE 4-7/B'«7 5/S-- $7"

S-100 EXTENDER BOARD

with conneclorA MUST for trouble- 11 7 95

shooting your Computer boards v* '

BUILD YOUR OWN

LOGIC PROBE

24 TO-9? SMALL SIGNAL OARLINGTONS mylQCAND 24 LEDS —ALL FUNCTIONAL only sb'P3

MAXI SWITCH KEYBOARDS

UNENCODED-MOUNTED ON G-10 GLASS EPOXY BOARDS-A BLACKMETAL FRAME KEEPS KEY SWITCHES SECURELY IN PLACE.

No. 1

-53 key main keyboard-10 auxiliary & cursor control keys■11 key numeric padBank of 5 auxiliary power andcontrol, rocker arm switches-one of them lights up.

$39«

WIRE WRAP SOCKET CONNECTORFOR NO. 1 KEYBOARD $2«

BUILD YOUR OWN

PAPER TAPE

READER

1/10" CENTER STACKABLE

PHOTOTRANSISTORS

1G7$960

gold WIRE WRAPSOCKET STRIPS

MAKE UNIVERSALEND AND SIDE

STACKABLE WIREWRAP BOARDS

12 PIN,.

3 LEVEL 48C

14 PIN,.

2 LEVEL 48C

3 LEVEL 56C

1 PIN STRIP

WttPBBOa

TOP VIEW

SIDE VIEW

No. 2

-53 key keyboard■1 auxiliary power/controlDPDT rocker arm switch

$29«

BEIGE METAL FRAME MOUNT FORNO. 2 KEYBOARD $995

SOCKET CONNECTOR FOR

NO. 2 KEYBOARD $295

TTL COMPATIBLEREED RELAY

400 OHMS$1<9 7/$975

OUR NEWASCII KEYBOARD

HAS ON BOARD UV PROM, A MAINKEYBOARD SECTION OF 58 KEYS, AHEX PAD OF 15 KEYS AND 16 MOREPERIPHERAL KEYS. 89 KEYS TOTAL &ASCII ENCODED for only $9995

POWER SUPPLY PARTS

DIODES

IN4001 50V al 1A

IN4003 200V at 1A

IN4O07 1000V al 1A

IN250 EOV al 20A

IN3909 50V al 30A

BRIDGES

FAST RECOVERY AVALANCHE BRIDGE

IN4436/T 200V al 10A

6c

8c

12c

95c

$1.25

EDGE VIEW METER

CHARGE DISCHARGE SCALE READS -20.0-40MOVEMENT +60.-120mA tfOAQ

0.135 OHMS 4>ZH3

FULL WAVEPR -10F

5% ZENERS

IN4733AIN4739AIN4744A

MINI BRIDGE"100V al

WITH TAB TERMINALS2A $3.7!

5.1V9.1V15V

4K STATIC RAMS

2114 650nsTMS-40454 450nsHM 472114 300ns

600m» 56 25300mw $10.95200m* $11.95

I.C. SOCKETS

LOW PROFILE-SOLDERTAIL

8 PIN

14 PIN

16 PIN

22 PIN

24 PIN

28 PIN

40 PIN

GOLDINLAID10/S1.5910/S1.8910/J1.995/51.695/J1.895/51.994/S1.99

TIN10/11.35

10/51.4910/51.595/51.495/51.595/51694/51.69

VOLTAGE REGULATORS

MINIATURE

16 BUTTON PADS

4i4 MATRIX ENCODED frigs

%v-

lor thai professional touch CARBIDE DRILL BITS

lor P.C. BOARD WORK

ASSORTMENT OF SIZES FROM NO. 55 TO NO. 70

5MIX7J7" 10MIX7J12" 100MIX/$99<»

UA723 VARIABLE 2V to 3.7V78L05- 5V at 100mA TO 92

340T6 6V al 1 AMP TO 220

PASS TRANSISTORSMIE3055 10A PLASTIC

2N3055 I0A TO 3

2N5301 30A TO 3

PROTECT YOURSELF. INSTALL AN ELECTRONICCROWBAR CIRCUIT IN YOUR POWER SUPPLY.CROWBAR SCR C220D 400V al IDA

PLASTIC

38c

39c39c39c

METAL

69c3/98c2/98c

89c

95c

$1.95

OPTO DEVICES

PHOTOTRANSISTORS

SIMILAR TO FPT 100

4/98c

PHOTODARUNGTONS

MOTOROLA4/98C

ULTRAHIGH

SPEED

PHOTO

DETECTOR

0,5ns

rise time

$3"

EXTREMELY

SENSITIVE

LIGHT-ACTIVATED

SCR

tfijgerable byflashlight alseveral hun-dred yards$295

INFRA REDDETECTOR

ULTRA LOW LEVELPIV 7VI on !ma

$4«

HEWLETT-PACKARD

JUMBO-RED

HIGH EFFICIENCY

ON BOARD

STATUS

INDICATOR

LED

6/$l°°

SOLAR CELLS

2x2cm 130ma

$159 ea. 10/$990

HIGH INTENSITYRED

LED LAMP

EXTREME WIDE ANGLE VIEWING

3/98c 10/$245

GOLD

EDGE CARD CONNECTORS

No. 1SAC185/2-2

SINGLE ROW, 18PIN CONNECTORWITH 0156" CONTACT SPACING.

99c

No. 2SAC22S/2-2

SINGLE ROW. 22PIN CONNECTORWITH 0.156" CON-TACT SPACING

99c

Wo. 32VH31/ICB6

31 SOLDER LUGCONNECTOR WITH0.125" CONTACTSPACING

99c

HIGH VOLTAGE DIODES

EPOXY 1500V at 1 AMP 10/S1.99

EG250 2500V at 350mA 95c

HV60EL 6KV at 25mA $1.95

SUBMINIATURE 20KV al 100mA $2.95

3-1/2 DIGIT LCD.'s

LIQUID CRYSTAL DISPLAY

No. 1

0 4" CHARACTER

WITH CONNECTOR

$695

No. 2

THIS MINIATURE LC DIS IDEAL FOR POCKETSIZED INSTRUMENTS

$395

WIRE WRAPPOST

2 LEVEL10 98c

100 S? 401000'S64 00

3 LEVEL10 SI 75100 S8 60

1000^17? 00

HI-FEL GOLD

WIRE WRAP

SOCKET PIN

mm"100/59°'

1000/$79™

LIST PRICE 29c

OP AMPS

SINGLE

709 l

741 1

DUAL

MC1458 3

QUAD

LM3900

49c

DIODES

IN91IN270IN914IN3600

IN4 14II

15c12c

15c15c10c

TRANSISTORS

2N2222 12c

2N3904 12c

2N3906 12c

2N3053 49c

D/A

CONVERTER

SIGNETICSNE5008

$995

SUB MINIATURE

CRYSTALFILTER

455 KHZ

WITH DATA

$2"

NO BACK ORDERS

YOUR PARTS OR IMMEDIATE REFUND

FREE DELIVERY BY UPS on u orders only

OR BY SURFACE MAIL. IF SPECIFIED — CALIF. RES. ADD 6% SALES TAX

MONEY BACK GUARANTEE,, and led devices excluded, $20 MINIMUM

FOR UNDER 8 HOUR PROCESSING SEND MONEY ORDER. CERTIFIED OR CASHIERS CHECK.SORRY! WE CANNOT ACCEPT PURCHASE OROERS, COO'S, PHONE ORDERS OR CREDIT CARDS.

FOREIGN ORDERS

CANADA PUERTO RICO. U.SPOSSESSIONS ADD US $3 50 ALLOTHER ADD US $7 00

IMMEDIATE SHIPPING ON CHASEMANHATTAN. FIRST CITIZENSCASHIERS CHECKS S CANADIANPOSIAL MONEY ORDERS

LEDS

YELLOW.

GREEN, OR

AMBER(SPECIFY COLOR)

3/88c

COS ANGELES(213) 967 4611

LMN ELECTRONICS

2 E GARVEY AV. W COVINA, CA

(VINCENT & SAN BERDO FWY )E lo SA1 ID B - CL0510 SUN S MON

DROP INTO ONE OF OUR LOCATIONSPORTLAND

(503) 646-4044

WIZARD OF PARTS

8225 SW CIRRUS OR BEAVERtON ORE(KOLL BUS CNTR/WASHINGTON SQUARE)

F. Reichert Sales

1110 E. GARVEY AVE.W. COVINA, CA. 917

DENVER

(303) 573 5214

ELECTRONIC LOLLIPOP

5643 N BROADWAY, DENVER, COII-Z5 « 5816 AVE )

ALL ITEMS SUBJECT TO PRIOR SALE

Circle 202 on inquiry card.

PRICES SUBJECT TO CHANGE

BYTE June 1978

199

What's New?

A Talking Clock

Modem Monitor with LED Display

The TCE-124 Talking Clock, with adistinctive male voice, automatically logsthe time of day in English, German orArabic. The vocabulary of the talkingclock is produced electronically by acustom speech synthesis processor. Whenused with either voice or device activatedrecorders, the TCE-124 inserts a distinctverbal announcement immediately fol-lowing each recorded message. Each mes-sage is indexed with its own time refer-ence. Although developed to be usedwith Omnicron recorders, the TalkingClock can be used in other applicationswhere continuous or on demand timeannouncements are required. Featuresinclude: 12 or 24 hour format; visualLED display; monitor speaker; 1 W,8 ohm audio output; "universal" IOcontrol circuits; compact size. For fur-ther information contact OmnicronElectronics, POB 623, Putnam CT06260.■

Circle 574 on inquiry card.

Prevent Memory Glitches

The Velostat conductive floor matcan eliminate electrostatic discharge, onecause of computer equipment problems.The mat has been designed to drainstatic away from computer operators byproviding a positive path to ground. Themanufacturer recommends that userswear leather soled shoes. Velostat matsare supplied with a 15 foot (37.5 cm)ground cord, snap fasteners, and 1megohm resistors. Two sizes are avail-able: 24 by 32 inches (61 x 81 cm) at$28.80, and 4 by 8 feet (1.2 x 2.4meters) at $98.40. Available fromAlpha Supply Company, 18350 Black-hawk St, Northridge CA 91326."

Circle 575 on inquiry card.

This compact signal display devicecan be placed in line between data setsand data communication terminals toisolate failures. The unit, called theTraffic Light, monitors without dis-rupting communications activity. Plug-ged in line, the monitor uses lightemitting diodes (LEDs) to provideconstant status display of seven keysignals on the EIA RS-232 25 pinBusiness Machine Interface. The signalsmonitored include: transmitted data,received data, request to send, clearto send, data set ready, carrier detect,and data terminal ready. The monitoralso has a spare LED circuit that can beused to show the status of any othersignal. It provides test points for oscillo-scopes, meters, and logic probes to theseven displayed signals, the spare circuitsignal, and logic ground. All LED dis-plays and test points are grouped logi-cally: signals originating in the data set(modem) are grouped on one side of thecircuit board; signals originating in theBusiness Machine and the spare circuitare grouped on the opposite side of theboard. The unit is covered by a oneyear warranty on both parts and laborand is priced at $89. It can be obtainedfrom Sorbus lnc, 150 Allendale Rd,King of Prussia PA 19406."

Circle 576 on inquiry card.

Backgammon, the King of Games, for Your Computer

Gammonmaster II, the latest entryin the computerized games market, pitsyour skill and ingenuity against thecomputer at backgammon. Gammon-master II is a self-contained, portablebackgammon game programmed torecognize and defend itself against allthe strategies of the game: running,blocking, blot hitting contest, backand semiback games, bearing off strate-gies and combinations of these basictechniques. Electronic rolling of thedice ensures randomness of play. Thecomputer displays each of its moves

electronically while recording yourmoves. You chart the game with regularpieces; the location of every man onthe board can be verified at the touchof a button. The optional doublingcube feature allows the tournamentbackgammon player to compete againstthe computer at multiple point games.The opponent may double the com-puter, or the computer may double itsopponent. Gammonmaster II is availablefrom Tryom lnc, 23945 Mercantile Rd,Cleveland OH 44122 for $199.50."

Circle 577 on inquiry card.

200

June 1978 © BYTE Publications lnc

POLYPAKS

COMPUTER PERIPHERAL*PARTS WORKSHOP

POLY PAKS INTRODUCES THE FIRST MAGAZINE RETAIL STOREFOR THE ELECTRONIC MAIL-ORDER HOBBYIST!

******************* ***************

'RED'

Cat. No.n 6S1890a 6S1503□ GS1273a 6S3093a 6S3161£ a 6S3512

* - 6S2949

* a 6S2950

J -c

LED READOUTS?

low m 201 each

Size Description Sale

.127" MAN-3** 5 for $1.00

.19 MAN-4* 2 for $1.19

.27 MAN-1* $1.00

33 MAN-72 equal*

.33 MAN-74 equal'*

.35 FND353"

.5 FND500*

5 FND507*

.5 727-Dual**

.5 727-Dual*

.6 747*e "Common Cathode

KEYBOARD KIT?

HEXADECIMAL MICROPROCESSOR D

Address microprocessors. AtJII CONTllOl

control computer operated *»«** tUWIIW/L

equipment. 2 Key rollover. Has20 keys, lfi encoded. 4 external tobe assigned by user. Output ■! bit

binary. Also, an EXCLUSIVE • 4 bit binary/hexadecimal output plus strobe!

FEATURE...4 leds display the • New! Improved design! Saves you time!

binary output. TTI./CMOS • Keyboard pre-assembled onto PC board!

.•ompatible, requires +!i. - „, „_

12V1H"'. Compleu- kit! Nothing Cat. No. 6S5009 Hexadecimal Kit $34.95

else to buy! With instructions. Cat. No. 655010 Hexadecimal Wlred$39.95

•***»***************Ht*************

DISCRETE LED'S 6 for $1.19

Cat. No. Description Similar to

Order In multiples n 6S2135 Jumbo'Redof 6 of each type! □ 6S1944 Jumbo Yellow

] 6S2138

□ JUMBO .34" h a 6S2785

□ MEDIUM .24" ° Hilif

□ MICRO .21" a GS1948

{TO-18) ° 6S2140

MV5053XC556Ymbo Green XC556GMedium Red XC22

Medium Green XC22GMicro Red XC209

Micro Yellow XC209YMicro Green XC290G

KEYBOARD &ENCODER KIT

KitWired

$6 9.95$ 79.95

COMPUTERGRADE

Mfd

a 8,000o 13,000

■CAPACITORS* islooo

n 22,000□ 24,000a 44,000

Sale ■

$2.75 |

2.25 _

2.75 "

1.50 ■

3.95 "

2.50 ■

3.95 ■

Outputs standard 7 bit ASCII: interfaces with most data systems. • Uses MOS Encoder ROM!

Keyboard pre-assembled onto PC Iward. 2 key rollover. Electronic » 7 led Test Feature!

shift lock and carriage return. 4 modes: Normal, control, shift. » 54 ^gy keyboard!

shift/control. Additional functions can be assigned by user. +5, - m rnrnHnc 1 ?fl fl<iril rharactnrc!

12Vt)C, 200 mil. Nctrative or positive logic, umper sellable. * i^^^ZithAlTAia'

Exlcusive lest feature...? LEDs display the ASCII code.* Interfaces With ALTAIR,Complete kit, nothing else to buy! Size: 13" x 5 1/2 x 1 1/4". 3 lbs. IM5AI, and more!

Low Power ICs |

b BRIDGE RECTIFIERS!

2 AMP 6 AMP 10 AMP 25 AMP

PIV (A6S134G) (#652456) (S6S2447) (*16S2273)

D 50

□ 100a 200a 400

□ 600d BOOa lOOO

.991.191.25

1.191.401.691.952.25

$1.051.151.291.791.952.252.50

1.952.953.954.955.50

Orer by Cat. No. Amperage and Voltage

SPECTRA-TWIST • T*,stej* p«!« &!&**»

DIRn/IM colored cable! 24AWG

ZnrSSKr' n Cat- No- 6S3680 48 cond. 2 ft. $1.98CABLE □ Cat. No. 6S4081 32 cond. 2 ft. $1.98

li:oi

RIBBON CABLEAT THIN PRICES

* Ultra-flat! • 28 AWG!

• Single color! Indexed!

Co

□ 20n 26a 34a 40

□ 50

Sale

8 ft. $1.986 ft. $1.985 ft. $1.984 ft. $1.983 ft. $1.98

Order by Cat. No. 6S3939 and conductors

OrderType

□ 74L500Q 74LS02a 74LS04

□ 74LS08

□ 74LS10a 74LS11

□ 74LS13D 74LS20

□ 74LS21

□ 74LS22

□ 74LS27

□ 74LS30Q 74LS32C 74LS37P 74LS38

□ 74LS42C 74LS47C 74LS74

□ 74LS90G 74LS92

□ 74LS93D 74LS109

□ 74LS112

□ 74LS113

□ 74LS114

y Cat. No. 6S3667 & Type N.Type74LS13274L513874LS13974LS15174LS15374LS155_ 74LS160

□ 74LS16174LS162

□ 74LS163

□ 74LS168C 74LS169

□ 74LS173D 74LS174D 74LS190n 74LS191D 74LS192

□ 74LS193

□ 74LS19SO 74LS197

□ 74LS257

□ 74LS26Sn 74LS366

□ 74LS368D 74LS390

.451.19.99

*

1

i

*

*****************#***+*•****+*

t

Sale1.1a1.241.241.251.251.251.471.471.471.471.G81.681.681.051.771.751.751.751.251.251.35.54.66

C-MOS

CD4001CD4002CD4006CD4007CD4008□ CD4009— CD4010CD4011C04012CD4013CD4015CD4016CD4017CD4018CD4019CD4020CD4021

Order By Cat. No.652320 & Type No.Type SalO CD4022 1.1D CD4023 .2a CD4024 .7D CD4025P CD4027D CD4028G CD4029[3 CD4030

□ CD4033G CD403S

□ CD4040a CD4041a CD4042Q CD4046G CD4049a CD40G6G CD4071

1.19

.491.60

.991.191.25

.881.79

MICROPROCESSORS!MEMORIES! SUPPORT!

Order byType

a MC6800Ln B080A

□ Z80Ad BOOB

□ 1101

□ 1103

□ 1702A

□ 2102-1.1a 2111

d 2708n MK4116

□ MK4200P11D MM5202

□ MM5203

□ MM5260Q MM5262d 8212

□ 8216

□ 8224a 8228D 8251

□ 8255

Cat. No. 6S3459 and typeDescription Sale

8 bit CPU $24.95

8 bit CPU. 2 usee 14.95

8 bit CPU 34.95

CPU 9.95

256 x 1 stat. RAM 69

IK DynRAM 1.29

256 x 8 EPROM 5.9S

IK x 1 Lo-power RAM 1.69

256 x 4 Stat. RAM 5.95

BK EPROM 19.95

16K Dyn RAM 32.00

4K x 1 Dyn RAM, 350nsec 3.95

2K PROM 6.95

2K EPROM. 8.95

IK Dyn RAM 99

2K x 1 Dyn RAM .99

8 bit I/O port 3.95

Bi-direct bus driver 3.95

Clock Gen 4.95

System cont. 9.95

Communication int 11.50,

Periph inter 11.95

♦ ♦♦*■♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦

♦ TTL'S

J Type□ 5N7400

r

HANDY COMPUTERimJLTITESTER

• lOOO ohms per volt

1 % precision, movementsdiode protected HRninstburnout. Measures DC volts0-15-150-1000; AC volts0-15-150-1000; DC current0-lGOma; resistance X1000.Sensitivity 1000 ohms/voltAC-DC. Uses penlitc eel!,not included. Size 2 % x3Va x. l3/s". Wt. G 02a.Cat. No. 6S3921

GIANT SALE! MICRO-MINI Cat. No. Contacts Sale

TOGCLESWITCHESQ6S3936 spst $1.19

• 3A, 125VAC contacts or bettern 655085 SPDT* 1.39

• Complete with mounting a 6S4037 DPDT 1.45hardware! 'Center off

POLY PAKS "CHIPS" AWAYIC AND CRYSTAL PRICES!

Order by Cat No. 6S4048 and Type No!

Description Sale

Stopwatch $14.95

6 TV Games 9.95

4W Digit DVM 4.95

Volt Control Osc 4.95

iTypeOICM7205nAY3-8S00-l-OMMS330X 38038C

• DKR2376-139

• nKR2376-ST|nllC90DC

{Q95H90DC□ MC14410

• DMK2002P

• O7207A/7208!olCM7107XnMM5316

• DMM5369S d3.579MHzI Dl.OOMHz

J a3.2768MHz

SILICON POWERSTUD RECTIFIERS!

Order by Cat. No. Amperage and voltage.

12 AMPPIV (#6S727>d 50 $ .29a 100 .36

□ 200 .45

□ 400 .61a 600 -79a 800 .90

50 AMP

250 AMP

(#6S727)

(S6S685)

$ .75

$4.95

1.10

6.50

1.35

7.50

1.75

8.50

2.25

10.50

2.75

11.50

BCD Encoder RomASCII Encoder Rom650MHz Prescaler350MHz PrescalerTouch Tone ChiiChar Gen. (sim 2513)Freq Counter pair34 Digit DVM/DMM

Alarm Clock

60 Hz Tlmebase ICTimebase Xtal ......

Touchtone XtalStopwatch Xtal

t

^SSSSSST :

'. AUTOPATCH ENCODER

5 • Emergency! — ^* Og

;. Family'. ^tr\

I* . Friend". £.\J

I* • Complete In •—"IS Its owe mlnl-eenlnet!

♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦

t IC SOCKETS %

J as low as 17C ea. J

♦ • Low profile, solder tall. ♦

♦ a 6S2123 8 pin mlnidlpS .17 ♦

♦ a 6S1308 14 pin dipT □ 6S1309 16 pin dipJ n 6S3378 18 pin dip♦♦♦♦♦♦♦♦♦«♦♦♦♦♦♦♦♦♦♦

.19 ♦

DIP SWITCHES

Sv

vitchos

Sale ^j*.

□ 6S3668

2

$.77 ^K*SxU

□ 65 3669

l.'l9 ^1^^^.

G 6S3021

4

G 6S3670

5

O 653671

6

G '65 2677

7

♦ a SN7401

♦ a SN7402

♦ a SN7403

♦ □ SN7404

♦ □ SN7405

♦ D SN7406T p SN7407I d SN7408» a SN7410

♦ a SN7411

♦ u SN7413

♦ □ SN7414

♦ □ SN7417

♦ a SN7420

♦ □ SN7427

♦ D SN7430I n SN7432I □ SN7437J o SN7440

♦ a SN7441

♦ d SN7442

♦ '-: SN7445

♦ □ SN744G

♦ □ SN7447

♦ n SN7448

♦ a SN7450

♦ D SN7451t □ SN7470

□ SN7472a SN7473D SN7474

□ SN7475a SN7476a SN7483

□ SN7485D SN7486

□ SN7490

□ SN7492

□ SN7493

□ SN74107

□ SN74121o SN74123

□ 5N74125a SN74132d SN74145a SN74151

□ SN74153a SN74154D SN74157

□ SN74161

□ SN74164

□ SN74174d SN74175

□ SN74181

□ SN74190a SN74191a SN74192

□ SN74193

□ SN74195

□ SN74251

.39.69

♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦

********* |_ | NEARS *********

+ Type Sale n LM379N 4.95 *

SOLAR ENERGY DISCS

• AH Cells .5V! fl, ,_w _„ t-I QC

• High efficiency! AS '°W as *J*V»

• Gang for higher voltages and amps!Cat. No. Size Mils Sale

□ 6S5046 2'' 500ma $3.95

□ 6S3862 3" lOOOma 8.88a 6S3788 3W 1200ma 12.50n 65 5057 4" 1500ma 15.95

MOTHERBOARDEDGE CONNECTOR

_ 106 pins (53 each side).

□ Use with IMSAI & ALTAIR!

0.1 2G" pin ctrs, goidplated

an i-/* %" wire wrap leads. Open

•Pit-OU Gnda' fit w"de PC boards.

8 ozs.Cat. No. 6S3987

EECO 10-POSITION BCDTHUMBWHEEL SWITCH

1-2-4-8 BCD encoding!Positions labeled 0-7. P, L. 3 for(F coded for 8. L coded for $4.

black background. Ecco HOO

series. U/. x lVt x %*. ff m -^

Cat. No. 6S3846 3) J, .tf"

* n LM301H, V $.25

* a LM307H, V, N .25

* d LM308H, V .79T a LM309K 1.19X Q LM311H, V .79X a LM320T-5V 1.19I a LM320T-15V 1.19X d LM320K-12V 1.19

* d LM320K-15V 1.19■k a LM340T-5V 1.19

* □ LM340T-12V 1.19

* a LM340T-15V 1.19

* n LM340K-5V 1.19¥ 0 LM340K-12V 1.19t 0 LM340K-15V 1.19J a LM322N 1.19X n LM324N .99

LM339Nd LM377N

g LM3S0N

□ LM381Na LM555V

□ LM558V

□ LM565N

□ LM567V

□ LM703Ha LM709H, Na LM710N

o LM723N

□ LM741H, V, N

□ LM747H, Na LM1458Va LM1800N

□ LM3900N

□ LM39009Va LM75491a LM75492a PA263

1.19 f1.19

.65 i1.40 -^.39*.22*.29*.42 +.29*

a

KIT

10 AMP POWER TAB SCR'S, pivTRIACS, QVADRACS

Order by Cat. No.and Voltage

■ i.buylWt.l2oz.■Cat Ho.6S40B6klt »6*»

■ Cat. No- 654087 wlred$32.9&

SALE

d 50 $.55

Cat. No. d 100 .69

SCR'S 651730 a 200 .88

TRIACS 6S1448 D 400 1.19

QUADRACS 6S1S90 a 600 1.59

1N400O Epoxy Rectifiers

Type No.

PIV

Price

1N4001

50

10 for $.65

1N4002

100

10 for .75

1N4003

200

10 for .85

1N4004

400

10 for .95

1N4005

600

10 for 1.2S

1N4006

800

10 for 1.3S

IN4O07

1000

10 for 1.49

TRANSFORMERSALE ^^fhw

WOK!

110VAC Primaries

Cat. No.

n 653399

□ 6S3814

□ 6S3412

□ 6S4029n S54028

□ 6S3323l~| 6S3875

• Four 100K natal

Output V Amps

12V12V2-iVCT

Mela! encasedOpen frameOpen frameOpen frameMetal encasedOpen frame

Sale

Each

$1.98

$2.49

$1.95

$2.49

$2.95

$1.95

$1.19

WRITE FOR

POLY PAKSCATALOG

FEATURING

BEST BARGAINS

IN ELECTRONICS

© COPYRIGHT 1978 - POLY PAKS INC.

Circle 301 on inquiry card.

Terms: Acid iiostaire Rated: net 30Phone : Wakefield, Mass. (617) 245-3821)Retail: 16-18 Del Carmine St., Wakefield,MINIMUM ORDER $6.00

POLY PAKS

rc^E^JXTl P.O. BOX 942-56I BE PHONEDl LYNNFIELD, MA.

■ ZIP OI-MIIBMaaV

BYTE June 1978

201

JUNE 1978 — BYTE MAGAZINE

DUAL TRACE

15 MEGAHERTZ

$395QO

PORTABLE MINISCOPE

MADEIN THE

U.S.A.!

<&

• Dual Trace- 2 channel: separatechopped or alternate modes.

• 15 megahertz bandwidth.

• External and internal trigger.

Power consumption less than 15W.Verticle Gain - 0.01 to 50 volts/div

—12 settings.Weight is only 3 pounds.

FEATURES

• Time Base - 0.1 microseconds to •0.5 Sec/div - 21 settings. •

• Battery or line operation.

• Automatic and line sync modes. •From the originator of the Digital Voltmeter, Non-Linear Systems comes the MS-215 Miniscope. It is a fine

electronic instrument with a great deal of measuring capability and excellent accuracy. Its design is modern, utilizingthe latest in low-powered integrated circuits, andit is packaged into the smallest practical size. The instrument fits intomany briefcases and tool boxes with room to spare.

Operating characteristics have been chosen so that the MS-215 will make all of the measurements needed inservicing most electronic equipment. It is field-portable so its use is not restricted to the bench.

SPECIFICATIONS:

V AxisVerticle Input

CHI. CH2, CH1 & CH2 (Chopped) & CH1 & CH2 (Alt )The Following Specifications apply to each channel

lOmV/div to50V in 12 Calibrated ranges, as follows:x1 -1 OmV/div to lOV/div in four ranges, each contin-uously variable.

x2-20mV/div to 20mV/div in four ranges, each contin-uously variable.

x5-50mV/div to BOmV/div in four ranges, each contin-uously vairiable.Accuracy is 3%Input Impedance: 1M ohm shunted by 50 pF.

Bandwidth:

Rise Time:Input Voltage:

HorizontalMode:

DC/DC to 15 Mhz 16 db (0C to8 Mhz 13 db). AC, semeas DC down to 3Hz.

Approximately 23 nS @ 1 division deflection,

250 maximum (DC and Peak AC).

Triggering

Internal: Sweep triggered from internal trigger source (In the

dual trace modes, the internal trigger source is CH1).Automatic: Trigger source is internal calibrator frequency. To be

used if there is no other trigger source available to

synchronize the sweep.Line: Trigger is derived from line frequency when using the

battery charger.External: Controls function as for internal triggering!) Megohm

input impedance).Slope: Selects sync to positive- or negative- going waveform.

Coupling: AC

Sensitivity: Less than 1 div for internal trigger and less than 1 volt

for external trigger.Level: Trigger Level control permits continuous adjustment of

trigger point in all modes except Auto.Internal Calibrates A square-wave signal of 1 volt p-p 15% is provided.

Frequency is approximately 1 KHz.DisplayGraticule:

AccessoriesFurnished:

Optional:Wanranty:

Tilt stand, battery charger, 2 input cables, and 3

miniature banana plugs.

Leather carrying case and probes

One year parts and labor. Made in the USA

CRT:

Bandwidth:

Coupling;

Internal Time Base or External Horizontal, switch

selectable. In the XY mode, vertical input is through

CHI and horizontal input is through CH2

DC to 200 KHz (13 db).

AC. DC or groui>d, switch selectable. Low frequency

point on AC is 3 Hz.Input Impedance: IMeg ohm shunted by 50 pF.Deflection Factor 10mV/div to SOV/div in 12 calibrated ranges.

The ranges can be calibrated with the CH2 gain controlInput Voltage: 250V maximum (DC and Peak AC)Time Base: 0.1 uS/drv to O.B Sec/div In 21' calibrated ranges,

as follows:

xl, uS-0.1uS/divto100uS/div. x2, uS-0.2uS/divto

200 uS/div.

x5, uS-0.5uS/drv to 500 uS/div. xl, mS-0.1 mS/divto

100 mS/div

x2, mS-0.2mS/div to 200 mS/div. x5. mS-0.6mS/div

to 500 mS/div.

all in four ranges, each continuously variable. (Range

increments ar.1,1,10,100.) With vernier in fullclock-

wice position, calibrated time measurements are

possible. Accuracy is 3%.

MS-15 Single Trace version of MS-215

$289oo

4x5 div, each division is 0.25 inch. Viewing ares

1.1 "Hx1,35"W

Bluish-white phosphor, medium peristence. CRT uses

low power filament for low battery drain. Instant onlPowerOn-Board Batteries: Three sealed, rechargeable lead acid "D" CellsOperating Time: Typically 4 hours.Charging Time Scope Operating: Will run indefinitely but not reach full

charge.Non-operating: Sixteen hours.External Power: Battery charger 115 vac (220 vac on request). 50-

400Hz. less than 15 watts.Dimensions: 3.1 "Hx6.4"Wx8.0 "0.

Weight: Three pounds.

EnvironmentOperating Temperature: 0° to 40° CShock and Vibration: Designed to with stand normal shock and vibration

encountered in commercial shipping and handling.

MS-215 with Rechargeable Batteries

and Charger$395.00

Leather Carrying Case

The leather case has 2 separate compartments. One to hold the scope, theother to hold the charger, probe, shoulder strap, etc. The case can be wornon the belt, or over the neck.

The snaps used on the case are "one way", thus accidental striking ofthe case egeinst an object will not undo the snaps or let it be pulled off yourbeft.

41-140 $30.00

Probes

10 to 1 probe with 10 megohm input.

Probe uses spring hook tip for sure connection. Compensation network islocated at the connector rather than et the probe, so es to keep size andweight to a minimum.

41-141 $24.50

Deluxe Combination Probe

Switchable IOtol/1 tol probe with an assortment of probe

tips to suit any situation.

41-3495 $34.95

PRIORITY

$40.00 OFF

On Any Accesories Purchased

with MS-215 MINISCOPE, Just

Send or Mention the COUPON and

Byte Magazine

ELECTRONICS

10031A Woodley Ave, Sepulveda CA, 91343

Terms VISA. MC, 8AC. check. Money Order C 0 0 . U S Funds Only LA residents add 6% sales lax Mini-mum order $10 00 Orders less than S75 00 include 10% snipping and handling, excess refunded Just in caseplease include your phone no "Sorry,no over the counter sales" Good thrLJ Julv 15 1978

ir latest brochure

phone orders welcome (213) 893-8202

OEM a

202

BYTE June 1978

MS-15 MINISCOPE $ 289.00 MS-15 MINISCOPE

SC-5

With

Rechargeable

Batleriasl

Charger

Unll SC

features include • Bkl 7 Fich

FM-7

With

Rechargeable

8altariaa4

Chargei

#

.y Meier

$195

.mg the new NLS SC-5 Presulei. 'M to60MH:.may :x

endedt FM-7 un-

it? Mm line uow VHF & unln«s jn LEO reawul providing 7 oign resolution ■ Tne FM-7 can WCJiiO'.ted id in accuracy of 0 00001% • Ine SC 5 is accurate to onepjn ptr million • £acn nfllt nas 30 millivolts sensitivity, is Dallery

H . 2 1 A ■ 3 9 0 • Tie umls may M ooiameo separaiely or as a

Freqjency Duo • Pans & Law guaranieea l yeart ill llano Option I 3 SO

LNintrcase H6.Q"

MS-15 MINISCOPE $289

W/frt Rechargeable Batteries & Charger Unit

/A A/EW VOLKSMETERS!

(JIB lAWi LCD Display-

t^jS/VVVli*' ExceHent Readability in Direct Sunlight!

££Df#

MG10AList $72.00

$Ou***

A

• 15 megahertz bandwidth.

• External and internal trigger.

• Time base — .1 microsec. to 0.5 Sec/div - 21settings .^-3%.

• Battery or line operation.

• Automatic & line sync modes.

• Power consumption < 15 watts.

• Vertical Gain — .01 to 50 V/div - 12 settings ± 3%

• Viewing area 1.1" x 1.35".

• Case size 2.7"H x 6.4"W x 7.5"D, 3 pounds.

• Parts & Labo' guaranteed 1 year

■ 10 10 1. 10 meg probe ... 124.S

• Leather carrying case ... $30.0

• MS-215 Dual Trace Version of MS-15 8395.00PROBE 1C with the purchase of SCOPE and

the MENTION of this MAGAZINE

1°lo

LM-300

Full three digits

$99.50"

FEATURES

• No ioroat)|usimeni and no lullscale ohms adjust

• Unge LCD display for easyreading witfiout interpolation

■ Sttfl 1 9"Hx2 7"Wk4 0"D

• Parts and labor guaranteed for

0.5°lo

LM-3503'/2 digits$125.00s

^PFCIFICATIOKS

SPECIAL!'-

|er SI 00

2 ol Meter aniis maganne

Tilt StandOption addLeather Case3AA NiCad Bans 4 Ch;up to 20 hours of operation

$3 50$16 00$12 00

Price:$29.50

plugboardplele

8800V

rcrocompijter/rjrccessoi

witn 5-100 Pus Com-

th Peal sill. & hardware 5 3 >

10

1-4$19 95

/I6

5-9 10-!«

S17 95 S15 96

8801-1

Same as 8800V excepl plain less powerposes & Peal sink

1-4 5-9 10-24

»14 95 S13 46 SI 196

3682 9.6" <4.5"

$10.973682-2 6.5"x4.5"(9.81Hi-Densily Dual-ln-LinePlugboard lor Wire WrapWith Power 8, Grd. BusEpoxy Glass 1/16" 44pin coo spaced 156

3677 9 6" x 4.5'

$10.90

3677-2 6.5" x 4.5"

$9.74

Gen. Purpose D.I.P.Boards with Bus Patterntor Solder or Wire Wrap.Epoxy Glass 1/16" 44pin con. spaced .156

3662 6.5"x4.5"

$7.65

3662-2 9.6" x4.5"

$11.45

P pattern plugboards torIC's Epoxy Glass 1/16"44 pin con spaced 156

RB44 P C 'eceptide 22/1-1 comi b6 Ctlt pierced solder eyelets laNsgo'd 12.H

RG44-3 PC recepncle 22/44 comiS6cns Wire Wrap tails gold 14 49S-100Bui PC. EdgiConntclonflfiBi DIP solderiails on 140 spacedtows lor ALT AIR mother Boards Fits042 On holes, gold $7.35

H6BM 025" sq . 3 wrao lengthsposls ( 62 long) on 250 spaced rowsgold $5.00

H6B1-2 .025" sq . 1 wrap length poslsi 22 longi on 250 spaced rows lor wrapping or DIP solder lor IMSAI moinerboards gold S5.BS

R681-3 pierced solder eyelet tails gold17 35

1/16

pm

BOARD

Phenolic

PART MO.

64P44-062XXP169P44062XXPEpoxy Glass

PART NO64P44-062

84P44-062169P44-062169P84-062

.042dia holes on0.1 spacing for IC's

5IZE

4.5x6.5"4.5 x 17"

SIZE4.5x6.5"

4.5x8.5"4.5 x 17"8.5 x 17"

PRICES 1.49$ 3.51

PRICE$ 1.70$ 2.10$ 4.30$ 6.39

BLLV4tULHb

FOUR TIMES FASTER

tfm®

no pre stripping-no pre Cutting-spool feo wire-

*9 :

■ -•' too t

$24.50

SLIT-N-WRAP ,-;■■. ,.

WIRE

NO. IB CAGE INSULATED

WIRE, 100'SPOOLS

2708

8K 450 ns

EPROM

FACTORY PRIME

$10.00 EA.

25 + Call ForPrice

ACE • All- for fast, solderless.Circuit plug-in circuit building

Evaluator 8nd testing

LIQUID CRYSTAL DIGITALCLOCK-CALENDAR

• For Auto. Homo, Office

• Small m size (2>2v,,v,)

• Push button for seconds release for dale

• Cocks mount anywhere with either 3M doublesided (ape or VELCRO. included

• 2 MODELS AVAILABLE

LCD IOV portable model rune on salt-contained

LCD 102.

a lor to

134.95..

$2.00

■\Z2B<

MICRO-KLIP

lor 042 dia holes

(all boards an this page)T42-1 pkq 100 « 1.50T42-1 pkq

1000 111.00

P-149 hand installingtool 1 2 03

LED ALARM CLOCK

■ LED Alarm Clock uses VAdigit 8 LEO Display with AM/PMindicators ana colons Direci drive.PIN to PIN interlace wiihSTWSAI C Just ado swiiciies AC SuDD'yAlaim Display and I C only

$7.95 or 2/S15.00

WRAP POST

lor 042 dia holes<an boards on tnrs page)T-44p«g 100 1 2 28T-44p«q

1D00 114.00

A-ISnandmslalling

tC-OI $ 2.SO

PRIORITY

Price Breakthrough!

*1795

MA1003CAR CLOCK

right Green Fluorescent Display Crys-tal Time Base Assembled, just addswitches and 12VDC.

r~\TT SPECIAL

fcryw^14CS2 100 for i14oo

H16CS2 100for,16°°

[| |J 14 pin CS2 10 lor '2"

1«DlnCS2 Blof'2"

ThBSB low cost DIP sockets will acceptboth standard width plugs and chips.For uae with chipa. the sockets oiler a iowprofile height ol only .125" above the boardThese sockets are end stackaole

ELECTRONICS

10031A Woodley A/a Sepulveda CA„ 91343

Terms VISA MC. BAC check Money Order COD US Funds Only LA residents add 6% sales tax Mini-mum orcer $10 00 Orders less man S7i 00 include 10% shipping and handling excess refunded Just in caseplease include your phone no "Sorry.no over trie counter sales" Good Ihru Ju|v 15- 1978

phone orders welcome (213) 893-8202

OEM a

3/$1.00

4fl / £10 no.

SLSW SIN OO'OBZ $ BdODSINIIM 9LSW SIN

Circle 303 on inquiry card.

BYTC June 1978 203

Circle 293 on inquiry card.

* YOUR BEST BUY IN WIRE WRAP SUPPLIES *

PRECUT WIRE

WHY BUY WIRE ON ROLLS?PRECUT A STRIPPED WIRE IS:

Fait • No more cutting & stripping by handReliable - Good, clean, uniform stripEconomical • Cheaper than using bulk wire

Pracut Wire

Bulk Wire

100 pes of 3" al 1 82 3V**/fL 50 It roll nl SI 99 44/H100 pes ol 6" all 06 ' at/H. 100 II roll al 2 95 ■ 3f/ttWire Kit 1 at 16 95 2 I/3C/II.

* 30 Kynar stripped I" on each end Lengths aColors Red.Blue.Green.Yellow.Black,Orange.VWire packaged In plastic bags Add 25t/length

tor tubes

100

T-, in 7B

3 m B23<9 in 86

4 in 90

500

2 402 60

2 80300

1000

4 30'K

4 7VK

5 12/K5 52,'K

5000

3B9/K4 22/K4 55/K4 88/K

4* in 94

5 m 985-1 in 1 02

6 m 1 06

3 213 423 653 85

5 93/K

6 34/K

6 75/K

7 T6/K

5 21/K

5 52/K5B6'K

6 19/K

BM in 1 15

7 in 1 207-jin 125

8 m 1 29

4 054 254 454 65

7 57/K

7 9B/KB39/K

8 80'K

6 52/K6B5/K

7 18/K7 53/K

BV, in 1 32

9 in 1 369'4 in 1 40

10 in 1 45

4 85

5 055 25

5 51

9 21/K9 62/K

10 03/K10 44/K

7S4/K8 17/K6S0/K

8B3/K

Addl. inches 10

41

B2/K

66/K

WIRE KITS

' 1 MM

a 2

$1tt 95

250 3" 100 4V250 3W 100 5''

too r too 6"

250 2--,500 3500 3-,500 4

250 4/250 5100 SV

1 250 I

250 6"

too evioo r

Bolt Bulk

Choose One Color

WIRE WRAP SOCKETS

10-24 25-89 100-249 250-999 1K-5K

24 pin28 pin40 pin

Gold 3-ievsi Closed Entry SocketsEnd & Side Stackable All prices inctu

Tin sockels and 2-ievei sockets available

INTERCONNECT CABLES

ibbon cable connIfoni pan

actors 'o

connecting

boards lo

SINGLE ENDED

DOUBLE ENDED

14 pin

16 pin

24 pin

14 pin

16 pin 24 pm

1 24

1 331 521 91

1341 44165206

2 052 24

2 63

3 40

2 242 332.52

291

2 45 3 372 55 3 92

2 76 4 31

3 17 508

WIRE WRAP TOOLS

$34.95

With Free Wire Kit 1($6.95 Value)HOBBY WRAPModel BW 630

Batteries & Charger $1100

WSU 30 Hand Wrap-Unwrap Strip Tool 5 95

WSU 30M. (or Modilied Wrap 6.95

BT 30 Extra Bit 2 95

WIRE WRAP BOARDS

WW

lj£ 5JJ 10-24 Connector

H-PCB 1 4x4V, 44 Buses on both sides 4.75 4.50 4.00 3.00

3662 4x6 44 Blank 6.25 5.85 5.50 3.00

3682 4x10 44 Buses on one side 10.50 10.00 9.50 3.00

3682 2 4x6 44 Buses on one side 9.50 9 00 8.25 3 00

4066 4 4x6 72 Buses on both sides 13.50 13.00 12.50 4.00

3719-1 4x6 72 Blank 9.00 8.50 8.00 4 00

3719-4 4x10 72 Blank 11.00 10.50 10.00 4.00

4350 7x9v, 80 Buses on boih sides 17.50 16.50 16.00 7 00

8800V 10x5.3 100 Buses on both sides 19.50 17.96 16.95 5 00

169P84 8V,x17 Blank 6.25 5.75 5.25

SOCKET 14 P|fl Gold ww

OAI CI 16 pin Gold WW

OALfc! 24 pin Gold WW

.75

10-49 50 up

.32 .30

.35 .33

.70 .68

Prices good through

6/1/78

when purchased withWire Kit-1 or ^2

PAGE DIGITALELECTRONICS

Ordering Information:

Orders under $25 and COD's, add $2All others, shipped Ppd in U.S. via UPSFor Blue Label (Air) or 1st Class, add $1We accept Visa & MasterchargeMost orders shipped same day

Dealer Inquiries Invited

135 E. Chestnut Street 4A

Monrovia, California 91016

Phone (213) 357-5005

P.O. Box 4430X Santa Clara, CA 95054Jor will call only: (4«8) 988-1640

7^ L^For will call only: ^08) 98tHo4U

j^p^^^bV2996 Scott Blvd. ^

^^■JK^ ELECTRONICS

-^H CRYSTALS

< 1ILJ-. I C(l n IMM1 till. 1 HE

1 MHz 4.50 2.0100 MHz

1.95

2 MHz 4.50 2.097152 MHz 4.50

MICflDPROCESSOR

2708 14.65

2104A-4

4.95

4 MHz 4.25 2.4576 MHz

4.50

6S00

19.50

0M8577 2.90

2107B

4.70

5 MHz 4.25 3.2768 MHz

4.50

8080A with data

7.95

8223 2.90

2111-1

4.95

10 MHz 4.25 5.0666 MHz

4.50

Z80

29.95

2716 33.95

2112-2

7.90

18 MHz 3.90 5.185 MHz

4.50

8212

2.95

2114

13.45

20 MHz 3.90 5.7143 MHz

4.50

8214

8.00

IC SOCKETS

Solder Tin Low Profile

PIN 1UP PIN 1UP

8 .15 24 .36

MK4116

27.50

32 MHz 3.90 6.5536 MHz

4.50

8216

3.15

2513821L02-1

1.49

32768 Hz 4.00 14.31818 MHz 4.251.8432 MF.z4.50 18.432 MHz 4.50

6228

4.95

MM5262

.40

3.5795 MHzl.20 22.1184 MHz 4.50

8251

11.50

MM5260

3.00

60 Hz Crystal Time Bete Kit

S 4.40

8253

10.00

30 MHz Frequency Counter KM

$47.75

18 .27 40 .6122 .35

5.00

COMPUTER BOARD KITS

13.95

OK RAM Board Kit

$134.95

12.95

4K EPR0M Kit

114,95

2.90

I/O Board Kit

44.50

1.75

Extender Board w/conneclor

12.50

Video Interlace board kil

125.00

16K EPROM board kil w/o PROMS 74.50

16K Static RAM board kit

395.00

N82S23

2.95

9.95

North Star Floppy Disk Kit

5665 00

N82S123

3.50

3.50

Additional Drive Kit

415.00

M0S,WEH0RY RAM

INTERFACE

2102AL-4 1.60

8T28

2.75

Modal 10 Triflrjer Expander Kil

N32S137

6.75

21F02 1.85

8T97

1.69

Model 150 Bus Grabber Kit

S369.00

New Cosmac Super "ELF"

RCA CMOS expandable to 64K micro-computer w/HEX keypad input and videooutput for graphics. Just turn on andstart loading your program using the resi-dent monitor on ROM. Pushbutton selec-tion of all four CPU modes. LED indicatorsof current CPU mode and four CPU states,Single step op, for program debug. Builtin pwr. supply, 256 Bytes of RAM, audioamp. & spkr. Detailed assy. man. w/PCboard & all parts fully socketed. Com p.Kit $106.95. High address display option8.95; Low address display option 9.95;Custom hardwood cab.; drilled frontpanel 19.75; Nicad Battery Backup Kit

w/all parts 4.95; Fully wired & tested incabinet 151.70; 1802 software club. 10-12 pg. monthly publication 12.00 per yr.

4K Elf Expansion Board Kit withCassette l/F $79.95

Available on board options: 1K super ROM moni-tor $19.95. Parallel I/O port $7.95. RS232 l/F$3.50. TTY 20 ma l/F $1.95. S-100 Memory l/F$4.50

Tiny Basic for ANY 1802 System

Kansas City Standard Cassette $10.00

On ROM Monitor $38.00

Super Elf owners take 30% off.Object code listing or paper tape $5.50

with manual

Auto Clock Kit $15.95

DC clock with 4-.50" displays. Uses NationalMA-1012 module with alarm option. Includeslight dimmer, crystal timebase PC boards.Fully regulated, comp. instructs. Add $3.95for beautiful dark gray case. Best value any-where.

78 IC Update Master Manual

1978 IC Update Master Manual $30.00

Complete IC data selector 2175 pg. Master ref-erence guide. Over 42,000 cross references.Free update service through 1978. Domesticpostage $3.50. Foreign $6.00. Final 1977Master closeout $15.00

Video Modulator Kit $8.95

Convert your TV set into a high quality monitorwithout affecting normal usage. Complete kitwith full instructions.

RCA CosmacVIP Kit $275.00

Video computer with games and graphics.

Sinclair V/2 Digit Multimeter

Batt. oper. 1mV and .1NA resolution. Resis-tance to 20 meg. 1% accuracy. Small, portable,completely assem. in case. 1 yr. guarantee.$59.

TERMS: $5.00 min. order U.S. Funds. Calif residents add 6% lax BankAmericard and Masler Charge accepted. Shipping charges will beFREE: Send tor your copy ot our NEW 197B QUEST CATALOG. Include 24« stamp.

204

BYTE |unc 1978

Circle 307 on inquiry card.

S.D. COMPUTER PRODUCTS

AN EMPIRE IND. CO

P.O. BOX 28810B

DALLAS, TEXAS 75228

EXPANDABLE EPROM BOARD

16K OR 32K EPROM $49-95 W/OUT EPROMAllows You to Use Either 2708's For 16K of Eprom or2716's For 32K ot Eprom.

KIT FEATURES:

1. All Address Lines & Data Buffered

2. Quality Plated through P.C. Board IncludingSolder Mask and Silk Screen

3. Selectable Unit States

4. On Board Regulation Provided

5. All Sockets Provided W/Board

WE CAN SUPPLY 450As 2708's AT $11.95WHEN PURCHASED WITH BOARD.

4K LOW POWER RAM KITThe Whole Works - $79.95

Full Buffered - on board regulated - reducedpower consumplion utilizing low power 21L02-1500ns RAMS - Sockets provided for all IC's.Quality plated through PC board.

EXPANDORAM

THE ULTIMATE RAM BOARD

32K FOR $475.00

32K MODEL

8K $151.00

16K 259.00

24K 367.00

32K 475.00

THE 32K VERSION USES THE MUS-TEK MK4115 RAM AND HAS BKBOUNDARIES AND PROTECTION &UTILIZES DIP SWITCHES.

BUY A S100 COMPATIBLE RAMBOARD AND UPGRADE THE SAMEBOARD TO A MAXIMUM OF 65KMEMORY IN STEPS OF EITHER BKOR 1GK AT YOUR OPTION BY MERE-

^Rnnrn*MTmwWITH S0CKETS F0R LY PURCHASING MORE RAM CHIPS

32K OPERATION

FROM SD COMPUTER PRODUCTS.

64K MODEL

16K $281.00

32K 519.00

48K 757.00

64K 995.00

THE 64K VERSION USES THE MOS-TEK MK4116 RAM AND HAS 16KBOUNDARIES AND PROTECTION &UTILIZES DIP SWITCHES. P. C.BOARD COMES WITH SOCKETS FORG4K OPERATION

LOOK AT THE FEATURES WE HAVE

• MEMORY ACCESS TIME IS 375 ns

• MEMORY CYCLE TIME IS 500 ns

• POWER REQUIREMENTS ARE:

8 VDC 400 MA DC

18 VDC 400 MA DC

—18 VDC 30 MA DC

• ON BOARD INVISIBLE REFRESH

BUILT INTO THE EXPANDORAM1

• NO WAIT STATES REQUIRED

• NO CYCLE STEALING NEEDED

• ON BOARD REGULATION

• CONTROL, DATA & ADDRESS INPUTSUTILIZE LOW POWER SCHOTTKYDEVICES

• DESIGNED TO WORK WITH Z-80,8080. 8085, CPU'S

ADD $50.04) TO ABOVE PRICES FOR FULLY ASSEMBLED AND TESTED BOARDS

Low Cost

Cassette

Interface Kit

$19.95

Features: Play and record K.C. Standard 2400/1200 Hitapes. 600 Baud, TTL I/O Compatible, Phase Lock Loop.Both 22 Pin Connector and 8 Pin Molex Connector.Comes partially assembled Oscillator and phase lockloop pre tuned to K.C. Standard. Selector switch sendscassette data or auxiliary input data to microprocessor.LEO indicates logic 1 level.

8K LOW POWER RAM$159.95

FULLY ASSEMBLED AND TESTED. NOT A KIT.Imsai — Altair — S-iOO Buss compatible, uses low powerstatic 21L02-500ns fully buttered on board regulated.quality plated Ihrourjn PC board, including solder mask. 8pos. dip switches (or address select.

'Add $30.00 for Q;;250ns RAM operation

Z-80 CPU BOARD KITComplete Kit $139.

i"*!

CHECK THE ADVANCED FEATURES OF OUR Z-80CPU BOARD: Expanded set of 158 instructions,8080A software capability,operation from a single5VDC power supply; alwaysstops on an Ml state, truesync generated on card (areal plus feature!), dynamicrefresh and NMI available,either 2MH2 or 4MHZ op-eration, quality double sided plated through PCboard; parts plus sockets provided for all IC's.*Add $10. extra for Z-80A chip which allows4MHZ operation.

NEW FROM S.D."VERSAFLOPPY"™ KIT

THE VERSATILE FLOPPY DISK CONTROLLERONLY $149.00

FEATURES: IBM 3740 Soft Sectored Compatible. S-100 BUSCompatible for Z-80 or 8080. Controls up to 4 Drives (singleor double sided). Directly controls the fallowing drives:

1. Shugart SA40O/450 Mini Floppy

2. Shugart SA8OO/850 Standard Floppy.

3. PERSCI 70 and 277.

4. MFE 700/750.

5. CDC 9404/9406.

34 Pin Connector for Mini Floppy. 50 Pin Connector for Stand-ard Floppy. Operates with modified CP/M operating systemand C-Basic Comptler. The new "Versafloppy" from S.D.Computer Products provides complete control for many ofthe available Floppy Disk Drives, Both Mini and Full Size.FD1771B-1 Single Density Controller Chip. Listings for Con-trol Software are included in price.

FD 1771Q I CHIP ALONE $39,95

INTRODUCING THE SBC-100

(The Z-80 Based, S-100 Single Board Computer)

$349.00

FEATURES:

• No Front Panel Needed

• Z 80 CPU (2 or 4 MHZ)

• IK RAM

• 1 ROM/PROM Sockets tor 4K/8K of Memory

• SYNCHRONOUS/ASYNCHRONOUS Serial I/O withRS 232 and Current Loop Interlace and Soltware

• Programmable Baud Rate

• Parallel Input Port

• Parallel Output Port

• 4 Channel Timer/Counter

• 4 Vectored Interrupts

RAMS

21L02

500 NS

2IL02

250NS

2114 -

4K

I101A

-256

1103-

IK

MK 41

I5-8K

74S 200 - 256

8/15 95

14.95

8/S4 00

35

19-45

3 95

CPU's

Z—80 includes manualZ — BOA includes manual8080ACPU8BIT8008 CPU 8 BIT

29 9534 9511 956 95

PROMS

1702A - IK - 1.5us . .3.95 or 10/35.

2708 - 8K - 450ns 14.95

5204 - 4K 7.95

82S129 — IK 2.50

2708U 8K signetics 650ns 9.95

COUNTER CHIPS

MK50397 6 Digit elapsed timer . 8.95

MK50250 Alarm clock 4.99

MK50380 Alarm chip 2.95

MK50395 6 digit up/dn. count. 12.95

MK5002 4 digit counter 8.95

MK5021-Cal. chip sq. root 2.50

280 STARTER KIT

LEARN COMPUTERS FROM THE START!SIMPLE, STEP BY STEP LEARNING. CONSTRUCTION,PROGRAMMING, OPERATION, MEMORIES, INTER-FACING, COMPUTING, AND CONTROLLING WITHAUDIO CASSETTE INTERFACE CAPABILITIES.Complete Kit includes: Key board and Display; Z80Central Processing Unit; Instructions; Operation Man-ual; Learning Guides.

Features: Powerful Z80 CPU with 158 instructions ■ 1024Bytes (Expandable to 2048 Bytes ON BOARD) of RAM •2 Bi-Directional Input/Output Ports with Handshaking

• Kansas City Standard Audio Cassette Interface forProgram Storage • Hexadecimal Keyboard and Display

• Wirewrap area for custom circuitry • S-100 Connectoron board for Memory and I/O Expansion • 2716/2758PROM Programmer • "Z-BUG" Monitor ROM (Including:Memory, Port and Register Examine and Change Com-mands; Breakpoints; Single Step Capability; Audio TapeLoad and Dump; Execute user program Commands.)Many more unique features. The best computer edu-cational kit on the market . . . the complete computerand educational package for only (199.00. (AvailableJune 1978).

O.E.M. SPECIAL

COMPATIBLE SET

$349 00

ASK ABOUT SPECIAL O.E.M. DISCOUNTS ON THE S.D.SDCIOO — SINGLE BOARD COMPUTERVERSAFLOPPV'" — FLOPPY DISK CONTROLLER

EXPANDORAM — 32K RAM

EACH KIT IF PURCHASED SEPARATELY TOTAL $973,00ORDER ALL 3 KITS TOGETHER FOR

$899.00

rhis Powerful Threesome Operates Together to Form A Camolete Computer for Y

$149 00$475.00

Z-80

Programming Manual

IN DEPTH DETAIL OF

THE Z-80 CPU

MICROCOMPUTER

S. D.

SALES SPECIAL

$9.95

S.D. NOW HAS SOFTWARE FOR IT'S CUSTOMERS

CP/M1 DISK OPERATING SYSTEM . . . $99.95

CP/M is a powerful disk operating system which has become an industry standard. It is compatible with severaldisk based FORTRAN and BASICS. This package includes a CP/M diskette (mini or full size) adapted for S.D.'sSBC-IOO/VERSAFLOPPY EXPANDORAM board set. Complete documentation is included. I M CP/M is a reg-istered trademark of Digital Research Corp., Pacific Grove, CA.

Z-80'DISK BASED ASSEMBLER 569.9b

Runs on ANY CP/M based disk system. Assemblesthe official Zilog-Mostek Mnemonics. Contains ex-tensive set of pseudo-ops. Available on mini orfull size diskette.

SD MONITOR

$49.95

VERSAFLOPPY™ CONTROL FIRMWARE .

Powerful monitor lor SBC-lOO single board-com-puters. Includes all VERSAFLOPPY control firm-ware. Comes in 2716 prom Available in 4-6 weeks,

VERSAFLOPPY DIAGNOSTIC PROGRAM . . . $24.95

$24.95

Provides controCP/M. This ruicomputers. Ava

■ VERSAFLOPPY and boots upin Z-80. 8080 or 8085 basede in 2708 or 2758 prom.

Provides routines whicha disk based system A

re helpful in checking outailable in 2708 or 2758

*

SUPER FLOPPY SPECIAL

S. D. SALES' VERSAFLOPPY S-100 CONTROLLER BOARD PLUSSHUGART SA 400 FLOPPY DISK DRIVE INCLUDING CABLE FOR ONLY

$449.00

•

MICROPROCESSORCHIPS

8212-1/0 port 3.50

8214 — P.I.C 12.95

8216 — Non Invert Bus 4.95

8224 — Clock Gen 4.95

8226 — Invert Bus 3.95

PI0 for Z—80 14.95

CTC for Z—80 14.95

8228 Sys. Controller 8.20

8251 Prog. comm. interfact. . 10.958255 prog. prep, interface. .. 13.50

8820 Dual Line Recr 1.75

8830 Dual Line Dr 1.75

2513 Cher. Gen 7.50

8838 Quad Bus. Recvr 2.00

74LS138N — 1 /8 decoder 99

8T97-Hex Tri-State Buffer ...1.25

1488/1489 RS232 1.50

TR 1602B Uart 3.95

TR 1863 Uart 8.50

FD 1771B-1 39.95

CMOS

4001400240114013401640174020402240244027

19191932329597977539

4029404240474049406940714076145181452814529

S969

1.5035231997

1.108585

CALL IN YOUR BANKAMERICARD(VISA) OR MASTER CHARGE OR-DER IN ON OUR CONTINENTALTOLL FREE WATTS LINE:

1-800-527-3460

Texas Residents Call Collect:

214/271-0022

DEALER INQUIRIES INVITEDI

(All prices subject to changewithout Drior notice.)

NO COD'S. TEXAS RESIDENTS ADD5% .SALES TAX. ADD 5% OF ORDERFOR POSTAGE & HANDLING . ORDERS UNDER $10. ADD 75c HANDLING.FOREIGN ORDERS - U. S.FUNDS ONLV!

Circle 315 on inquiry card.

BYTE |unc 1978 205

Unclassified Ade

FOR SALE: Cromemco Sytesaver with MITS 8 KBASIC + 8 PROMs $300. With 1 PROM $150.MITS disk boot loader $30. Multi boot loader $20.IMSAI 4 K static $80. MITS 4 K dynamic $80.Ken Roberts, 10560 Main, #515, Fairfax VA22030. (703) 591-6008 or (703) 378-7266.

WANTED: For Microdata 1600 processor {Reality!magnetic tape controller and disk controller andcore memory boards. Jack Hardman, 140 Forest Av,Glen Ridge NJ 07028, (201> 429-8880.

FOR SALE: COSMAC microprocessor CDP1802and 2 2101 programmable memory chips. Getstarted for $20. CPU used less than 1 hour. Pro-grammable memory new. I also have 10 new2101s. $2.50 each or all ten for $20. JeffDuntemann, 6424 N Albany Av, Chicago IL60645,(312) 764-5069.

FOR SALE: SwTPC 6800 16 K system with AC30cassette interface, fully socketed, first-class workingcondition, with documentation, $700, deliveredwithin 200 miles. Processor Technology VDM-1video board, $125 shipped prepaid. Robert Boyd,Woodlawn Av, Kennebunkport ME 04046.

FOR SALE OR SWAP: Altair 8800 kit micro-computer. Prefer ham gear. Write or call after7 PM. Manley Nichols, Box 344, Henning MN56551,(218) 583-2124.

FOR SALE: Viatron System 21. It has two tapestorage units, a video monitor, a keyboard, two IOports, etc. It also includes three tapes, two instruc-tion manuals, and a technical manual (whichincludes all circuits). Asking $600. P Gabrail,209 Highland Av, Syracuse NY 13203.

FOR SALE: 200 CPM Burroughs B122 cardreader, fair condition $150. You provide trans-portation. P Carlson, 103 Drood Ln, Pittsburgh PA15237. (412) 367-4632.

WANTED: Any information that you may havepertaining to hardware and software of personalcomputing systems, programming language andinterfaces. Any and all contributions gratefullyacknowledged by correspondence. Am presentlyassigned overseas and have no access to suchmaterial. David E Feher, Box 22, US NavalCommunications Station, Fleet Post Office,New York NY 09571.

FOR SALE: Processor Tech Video Display ModuleVDM-1 for $160, 2 K Read Only Memory 2 KROfor $50. Still in kit form. Includes manuals andVDM software. Will sell both for $200. Shippedby return mail to first money order. G Briggs,6195 Deer Path, Manassas VA 22110.

IMSAI MEMORY: Four programmable memory4 A assembled, tested, and burned in $99.95 each.These use NEC 2102AL-4 Chips. They are 4 K X 8static memory cards with write protect in 1 Kblocks. Excellent in all respects, with documenta-tion. Cashier's check or money order to DonJohnson, 3139 SW Altadena Terr, Portland OR97201, (503) 246-3139.

Readers who have equipment, software or otheritems to buy, sail or swap should sand in a clearlytyped notice to that affect. To be considered forpublication, an advertisement should be clearlynoncommercial, typed double spaced on plainwhite paper, and include complete name andaddress information. These notices an free ofcharge end will be printed one time only on a spaceavailable basis. Insertions should be limited to 100words or less. Notices can be accepted fromindividuals or bona fide computer users clubs only.We can engage in no correspondence on these andyour confirmation of placement is appearance inan issue of BYTE.

Please note that it may take three or fourmonths for an ad to appaer in the magazine.*

FOR SALE: KSR37 Tech manual and schematicsfor maintenance and installation, including opto-isolator mods, perf orig, $25; HEATH LSI-11manual set, including terminal and punch/readerin binders $15; INTERFACE AGE and SCCSINTERFACE, vol 1, #1 to present, perfect, $50;BYTE back issues, $1.75 each; misc set of micro-computer mags, including ROM, PERSONALCOMPUTING, etc, the lot for $10; POLY-MORPHICS VTI-64 video board assembled, $75;STAT/MATH/PERT program listings in BASIC,$5 each, send SSAE for list; D E Mann, 1201N Roosevelt St, Arlington VA 22205.

WANTED: Original soft LEATHER (not plastic)case for HP-35 calculator. State price, condition,and whether snaps or velcro. John Ball, Oak HillRd, Harvard MA 01451.

FOR SALE: HP 9830A 32 K (OPT 001) memory(B) with following ROMs strings, matrix, ext IO,API, APII, plotter. 9871A Printer with form feed.11203A BCD interface. Make offer. Robert LukeMD, Dept of Pathology, Maine Medical Center,Portland ME 04102, (207) 871-2843 days,(207) 883-9998 nights.

FOR SALE: Altair 680b with complete docu-mentation, very little work left to get it up andrunning $200. I pay shipping. William J Spencer,V-2 Div USS America (CV66), FPO New YorkNY 09501.

FOR SALE: 16 bits plus parity by 8096 wordsper board Texas Instruments memory labeled"1103 memory assembly number 226844-000 cardnumber 226845-0001 and 8 K logic number226846(D", includes on board sense amps, clocksync etc $100 per board, or all 3 boards (24 K x 16bits) for $250. Contact Robert Monaghan, Dept ofAnthropology SMU, Dallas TX 75275.

FOR SALE: Complete Altair 8080a System IIw/8 K programmable memory, 4 K static, 2SIOinterface to COMTER 11 terminal and cassettetape recorder, VDM-1 kit, TV Dazzler kit, 4 slotexpander board, 8 K BASIC tape papertape VDMdriver and 5 K BASIC. All documentation in-cluded. $2000 or best offer. Barry C Frank, 306Oak Rd, Seaford DE 19973.

FOR SALE: Complete microcomputer system,new (purchased 12/77), fully assembled. Byte 8;Digicomm Byteuser (prom); Cromemco D + 7AIO (7 channel analog interface); Dazzler (color TVinterface); Byte MPU (processor); SD Sales 4 Kprogrammable memory; all manuals. Our cost$1300, best offer takes it. D G Linville, 4865Pasadena Av, Sacto CA 95841, (916) 485-4050.

FOR SALE: DEC rack mount building blocksystem. Contains two DEC 749 power supplies,one DEC 721 power supply, one positive currentdriver, one negative current driver, twelve plugin units as follows: 2 clocks, 2 inverters, 6 delays,one flip flop, one pulse generator. Comes completewith two mother boards capable of accepting 20 ofthe plug in units. Will sell the whole thing for$125. Also have Micro Switch keyboard $15; andone industrial power supply 5 V 25 A $35. Writeor call Ron Demcko, POB 243, Richfield SpgsNY 13439, (315)858-1755.

PET SOFTWARE: Bring your PET alive with thisinteresting collection of games, personal finance,teaching, and demonstration programs written inBASIC especially for a 4 K PET. Includes black-jack, children's math, biorhythm, and 15 otherprograms. On cassette, ready to load and run.Accompanied by written program descriptions.All for $15.95. Robert G Schmidt 14 Tinker Rd,Nashua NH 03060.

MOTOROLA 6800 USERS: I have a nifty traceprogram that prints out the results of each step:CC, B, A, X, plus the PC, opcode, and instructionof the next step. Program locates anywhere inmemory. A beautiful debugging aid. Uses com-bined hardware/software trace and will tracethrough ROM. Works as is on any D2 kit interfacedto video or Teletype. Works on any MIKBUG orother system with NMI vector user available, withthe addition of 2 ICS. Send $3 and SASE forcomplete listing and instructions. Specify D2/MIKBUG/Other. Lynn Kurtz, 2104 Campo AlegreRd.Tempe AZ 85281.

FOR SALE: Radio Shack TRS-80 with 16 K, levelI and II BASIC. No monitor or recorder but alldocumentation and cables. Best cash offer. MikeHeck, 167 S Spring Mill Rd, Villanova PA 19085,(215) 5250709.

WANTED: Memorex 3664 or IBM2311 diskdrive. Please reply via air mail stating price andcondition. Also, would like contact with anyonewho owns a Memorex 40 minicomputer and forinformation exchange on its hardware or software.P R Williams, 15 Pinny Av, Lower Hutt NEWZEALAND.

FOR SALE: IBM 1402 card reader/punch, manualincluded. Best offer over $200 or trade for diskdrive. You pay shipping. Steve Marsh, 5805 BoulderCreek, Austin TX 78724, (512) 926-5497.

FOR SALE: HAL-MCEM-8080 with keyboard,BASIC in ROM, 9 K programmable memory,2708 programmer, dual cassette interface &power supply. Cost $1200 will sell for $695used less than 4 hours. William C Dewberry, 314Interbay Av, Pennsacola FL 32507, (904) 456-6644.

FOR SALE: Control Data 160-A computer sys-tem, 8 K by 12 bits core memory, two multiple-device IO channels, 350 cps paper tape reader,TTY BRPE punch (110 cps), in desk-type cabinet,110 VAC; also 161A IO typewriter interface withstand, 168-2 auxiliary arithmetic unit, two Model601 magnetic tape drives, all documentation,software on magnetic tape and listed, spare cards,cables. $995 for all. Roger C Buck, 1122 Post Dr,Rockford I L 61108, (815) 399-2507.

FOR SALE: E and L Instruments MMD-1 micro-computer with MMD-1/MI memory interfaceboard. V» K of memory on processor board, 2 Kon interface board. Cassette (K-C format) Load/Dump PROM included. Fully tested and burnedin. Only 8 months old. "Bugbooks" 1 thru 7included. Good machine to learn on and expand.Cost me $650; will sacrifice at $485 or best offer.Serious inquiries may be sent to Garth L Bock,RR #1 Box 123, LeRoy IL 61752.

WANTED: Any information, especially schematic,for UNIVAC core unit, type 9001-03, part number4029200-00, serial 2792-B. This core was probablyused in a UNIVAC 1004 card processor system.W E Hefley, 157 Marian Ln, San Jose CA 95127.

FOR SALE: Quay Z-80 processor, factory assem-bled and tested, $250. VDM-1 video display mod-ule, factory assembled by Processor Tech, $200.SD Sales 4K static memory for Altair (S-100),Z-80 compatible, $50. Godbout-Morrow "SmartCassette Interface" for three cassettes and RS232and 20 mA,$75. CCTV high resolution professionalvideo monitor, $100. SwTPC ASCII keyboard,fully encoded with interface and parity, in cabinet,$50. SwTPC power supply suitable for Altair(S-100), 5 and 12 and -12 V, in cabinet, $50.IMSAI 6 slot mother board, $15. Or take all of theabove with documentation for $750. Eric Schneck,426 E 85th St #5D, New York NY 10028, (212)737-6458.

FOR SALE: One Tarbell cassette interface for$85 and one DaJen cassette interface (CRD for$95. Both operate on popular Tarbell cassettebi-phase interface standard. DaJen board is com-pletely software and hardware interchangeablewith the Tarbell board but has switch selectablebps rates. Both fully assembled, socketed, Altair(S-100) compatible, and working perfectly. Dan SParker, 1007 3rd Street #3, Davis CA 95616,(916) 758-2341 after 6:00 PM.

FOR SALE: Monroe -326 BETA "Scientist"programmable calculator with Model 392 digitaltape unit. Tape drive fully controllable by pro-gram, permitting automatic read-in of programoverlays plus automatic storage/retrieval of data.Features over 100 keyboard scientific functions,metric conversions, full edit and self-test capa-bilities, conditional jumps and nested subroutines,and large 12 digit display. Program size can extendto 27,0,00 keystrokes using the tape drive.Originally cost $1300, asking $650. In like-newcondition with full documentation and fittedattache carrying case with key lock. GeneSzymanski, 693 Rosedale Rd, Princeton NJ 08540,(609) 924-8856.

206 June 1978 © BYTE Publications Inc

VISIBLE

OR

INFRA RED

USED FOR CHARACTER

RECOGNITION FOR

COMPUTERS WITH

EXTERNAL CIRCUITS

MAY BE USED IN

A VACUUM,UNDER WATER,HIGH ALTITUDE

IN MAGNETIC ENVIRONMENTBECAUSE THERE IS NO

HIGH VOLTAGE ORMAGNETIC DEFLECTION

MINATURE SOLID STATE

202 VIDEO CAMERA KIT

FEATURING A. .100 x 100 BIT SELF SCANNING CHARGED COUPLED DEVICE

THIS UNIQUE UPDATED CAMERA KIT

FEATURES THE FAIRCHILD CCD 202C IMAGE SENSOR

ADVANTAGES

• IN THE FUTUREWE WILL SUPPLY A

COMPUTER VIDEO INTERFACE CARD

• All clock voltages operate at 6Vreguiring no adjustments

• Higher video output signal

• We supply the power board, so onlya 5V 1 Amp power source is needed

• The circuitry has been simplified foreasier assembly

Two level TTL output is supplied forinterfacing

FEATURES

• Sensitive to infra redas well as visible light

• May be used for IR surveillancewith an IR light source

• Excellent for standardsurveillance work, becauseof light weight and small size

• All components mounted onparallel 33A"x6Vz" singlesided boards

• Total weight under 1 lb.

SURPLUS CENTRONICS PRINTERS

101 - $1.150

$34900 kit

306

1,150$900

We supply ail semiconductors,, boards, data sheets, diagrams,Add $75.°° tO aSSemble and teSt resistors and capacitors, and

8MM lens.

Add $2.00 Postage and Handling Sorry we do not supply the

case, batteries and 5V supply.

UNIVERSAL4Kx8 MEMORY BOARD KIT$79.95

32-21 L02-1 fully buffered, 1 6 address lines, onboard decoding for any 4 of 64 pages, standard44 pin buss, may be used with F-8 8t KIM

EXPANDABLE F8 CPU BOARD KITS99.00

featuring Fairbug PSU.IK-ot stauc ram, RS 2,32interface, documentation, 64 BYTE reqis.er

4K BASIC FOR FAIRBUG F8

n paper tape . S25 00

4001-4002-4006-4007-4009-4010-4011-

C/MOS (DIODE CLAMPED)

.16 4016-

.16 4017-

.95 4018-

.16 4019-

.37 4020-

.37 4021-

.16 4022-

.16 4023-

.29 4024-

.74 4025-

.29 4027-

.78 4028-

.78 4029-

.37 4030-

.84 4035-

.77 4042-

.85 4046-

.16 4047-

.66 4049-

.16 4050-

.33

4071-

,97

4076-

hH

4518-

1.4h

74C10-

1.50

74C193 1

AP PROTO BOARDS USED FORSOLDERLESS BREADBOARDING264L — 128 FIVE-TIE POINT

TERMINALS $12.50

212R —POWER BOARD $ 2.50

2248L- 96 FIVE-TIE POINT

TERMINALS $10.00

209R - POWER BOARD £ 2.25

IC TEST CLIPSTC-14 — $4.50 TC-16 - $4.7 5

PRINTED CIRCUIT BOARD

7WATTLD-65LASERDIODEIR $035

2N 3820 PFET

2N 5457 N FET

2N2646 UJT

ER 900 TRIGGER DIODES

2N 6025 PROG UJT

MINIATURE MULTI-TURN TRIM POTS100, 1K, 2K, 5K. 10K, 25K, 50K, 100K200K. 500K, 1Meg. 2Meg, $.75 each 3/$2.00

CTS 206-8 eight position dip switch .... Si.90

C rS-206-4 four position dip switch . . , .$1.45LIGHT ACTIVATED SCR'jTO 18. 200V 1A S 1,10

SILICON SOLAR CELLS2%" diameter .4V at 500 ma $4.00

RS232 DB25Pmale. .

CONNECTORS DB 25S female .

FND 359 C.C. .4" $ .50 LED READOUTS

FCS 8024 ■ 4 digit DL-704 C.A. .3"

C.C. 8" display $5.95 DL 747 C.A. .6"

FND 503 C.C. .5" 4 .85 FND 800 C.C. .8"

FND 510 C.A. ,5" $ .85 FND 807 C.A. B"DL-704-.3" C.C. $ ,85

VERIPAX PC BOARDThis boiiril is Ei 1 '16" single sided paper epuxvboard. 4V'x6V DRILLED .md ETCHEDwhich will hold up io 21 single 14 pm IC'sor 8. 16, or LSI DIP IC's with busses torpower supply conni'CTQi. S4 00

FP 100 PHOTO TRANS S 50

RED, YELLOW, GREEN or AMBER

LARGE LED's .2" 6/S1 00

TIL-118OPTO-IS0LATOR S .75

MOLEX PINS 100/S1.00

1000VS8.0010 WATT ZENERS 3.9, 4.7, 5.6. 8.2,

18,22,100,150 or 200V ea. S .60

1 WATT ZENERS4.7, 5 6.10, 12, 15

18 or 22V ea. S .25

MC6860 MODEM CHIP $9.95

MCM 6571A 7 x 9character gen ... $10.75

Silicon Power Rectifiers

PRV 1A 3 A 12A 50 A 125A 24QA

100 .06 .14 30 80 3 70 5QQ

200 .07 .20 .35 115 4 25 6.50

400 .09 .25 .50 140 6 50 9.50

600 11 30 70 1 80 8 GO '12.50

800 15 .35 90 2.30 10.50 16.50

1000 20 .45 110 2 75 12.50 20.00

SAD 1024a BEOICON 1024 stage onalog "Bucket

Brigade" ahif1 register. $18.95

IN 4148 (IN914I 15 Si 00

MCA 81 OPTICAL LIMIT SWITCH 5 1 50

REGULATORS ' ™™

309K $ .95 340K-12.15

723 $ .50 or 24V. .... S .95

LM 376 .... S .60 340T-5. 6, 8, 12320K-5, 12 15,18 or 24V S 95

or 15V. .. $1.00 78 MG $1 35

'"'! !-' 79 MG $1.35

TRANSISTOR SPECIALS

2N6233-NPN SWITCFIING POWER $ 1-95MRF-8004 a CB RF Transistor NPN $ 1-50

2N3772 NPN Si TO 3 . $ 1.00

2N1546 PNP GE TO-3 $ .75

2N4903 PNP Si TO 3 S 1 00

2N6056 NPN Si TO 3 D*m1.o.|IO<i S 1 702N5086 PNP Si TO 92 4 S 1 00

2N3137NPNSiRF $ .85

2N404 PNP GE TO 5 5 S l .00

2N3919 NPN Si TO 3 RP SI .50

2N1420 NPN Si TO 54 3/S 1.00

2N3767 NPN Si TO-66 S .70

2N2222 NPN Si TO-18 .5S 1.002N3055 NPN Si TO 3 , . S .502N3904 NPN Si TO 92 5/S 1 .00

2N3906 PNP Si TO-92 . .5'S 1002N5296 NPN S. TO 220 . S .50

2N6103 PNP Si TO 220 . S .55

:'N363H PNP Si TO b 5'S 1 .00

Full Wave Bridges |!

1.00

IP SOCKETS

8 PIN .22 £4 PIN .4014 PIN .25 2B PIN .5016 PIN .28 40 PIN .60

18 Plf

.30

SANKEN AUDIO POWER AMPS

Si 1019 G 10 WATTS $ 6.80

Si 1020 G 20 WATTS S13.70

Si 1050 G 50 WATTS S25.90

TANTULUM CAPACITORS

TTL IC SERIES

7402-7403-7404-7405-7406-7407-7408-7409-7410-7411-7412-7413-7414-7416-7417-7420-7425-7426-7427-7430-7432-7437-7438-7440-

7442-

7445-7446-7447-7448-7450-7472-7473-7474-7475-7476-7480-7483-7485-7486-7490-7491-7492-7493-7494-

7495- .

7496- .74107- .

74121- .

74122- .

74123- .

74125- ,

74126- .74150- .

74151-74153-74154-74155-74157-74161-74163-74164-74165-74170-74173-74174-74175-74176-74177-74180-74181-74190-74191-74192-74193-74194-75325-74196-74279-74367-75491-75492-

22UF 35V 5'51 0047UF 35V 5 SI 0068UF 35V 5 SI 001UF 35V 5 SI 00

2 2 UF 20V5 SI 00

3 3UF 35V 4 SI 004.7UF 15V 5/$1,00

6 8UF 35V 4'S1 00

10UF 10V $ .25

22UF 25V s 40

15UF 35V 3/$1.00

30UF 6V 5/S1.00

47UF 20V $ .35

68 UF 15V S .50

74LSSERIES

DATA CASSETTES

.156" Connectc

MM 5387AA new clock chip which will directlydrive LED's 1 2/24 hrs., 1 supply & alarm S5.95

NO. 30 WIRE WRAP WIRE SINGLESTRAND 100' $1.40

7-tLEOO

74LS02 ■74LS0374LS04

71LS05 ■74LS0874LS0974LS1074LS1174LS1374LS15

74LS20 -

74LS21 -74LS22

74LS26 -

74LS27 -

74LS30 -

74LS32 -

74LS37 -

74LS38 -

74LS40 -

74LS42 -

74 LS4 7 -

74LS51 -

74 LS54 -

74LS90 -

74LS74 -

74LS76 -

74LS85 -

74LS86 -

74LS90 -

74LS92 -

74LS93 -

74LS109 -

74LS11I -

74LSII3 -

74LS114 -

74LS125 -

74LSI26 -74LS+32 -74LS136 -74LS138 -74LS139 -74LS151 -74LS153 -74LS155 -74LSI 56 -74LS157 -74LS160 -74LS161 -74LS162 -74LSI63 -74LSI68 -74LS169 -74LS170 -74LS173 -74LS174 -74LS175 -74LS190 -74LS191 -74LS192 -74LS193 -74LS195 -74LS196 -74LS197 -74LS221 -74LS2S7 -74LS258 -74LS279 -74LS365 -74LS366 -74LS367 -74LS368 -74LS390 -MC1468D-

LINEAR CIRCUITS

70 LM 339

CA3046

3900

8038CC

1.3G LF356H - 1

Circle 340 on inquiry card.

BYTE June 1978 207

Feactep Service

To gel further information on the products advertised in BYTE, fill out the reader service card with your name and address. Then circle theappropriate numbers for the advertisers you select from the list. Add a 13 cent stamp to the card, then drop it in the mail. Not only do yougain inlormation, but our advertisers are encouraged to use the marketplace provided by BYTE. This helps us bring you a bigger 8 YTE.

Inquiry No. Page No.

1 AAA Chicago Computer Center 111

3 Administrative Systems Inc 118

4 AJA Software 130

6 Alco Electronic Products 180

10 Anderson Jacobson 69

11 Apparat183

15 Apple Computer 12, 13

* Art-by-Computer 169

20 Artec Electronics Inc 51

21 ATV Research 181

25 Atwood Enterprises 184

26 Bit Basement 180

35 BITS 59, 96,97, 122, 141, 157

* BYTE Back Issues 138

39 California Industrial 185

40 Canada Systems 13145 Central Data 71

50 Centronics 53

60 Component Sales 186

65 Computer Corner 181

66 Computer Data Directory 131

70 Computer Enterprises 139

71 Computer Hardware Store 18175 Computerland 6, 7

72 Computer Mart of MA 1 20

73 Computer Mart of NJ 12573 Computer Mart of PA 1 25

77 Computer Products of America 148

78 Contemporary Marketing 92, 93

79 Creative Software 179

80 Cromemco 1, 2

81 Dal Data 145

82 Databyte100

83 Datec 183

90 Digital Group 29

91 Digital Pathways 126

95 Digital Research (CA) 83

100 Digital Research (TX) 187

105 Disc 3 183

110 Dynabyte 67

115 Electrolabs 186

120 Electronic Control Technology 127

125 Electronic Systems 189

130 Electronics Warehouse 191

131 EMM/CMP 99

140 Forethought Products 124

145 Gallaher Research Inc 107

146 Hamilton Logic Systems 180

155 DC Hayes Associates 81

156 Hazeltine119

BYTE's Ongoing Monitor Bex

Inquiry No. Page No.

160 Heath 34, CIV

170 Hobby World 177

175 IMSAI CI 11

176 Information Unlimited 133

177 Integral Data Systems 77

179 Integrand 137

180 Integrated Circuits Unlimited 193

181 International Data Sciences 125

185 International Data Systems 54

186 International Technical Systems 179

190 Ithaca Audio 133

191 J & E Electronics 179195 Jade 195

200 James Electronics 196, 197

201 Jim-Pak49

202 LMN Electronics 199

203 MACC152

204 Manchester Equipment 181

206 Magnemedia 135

207 Maxi-Switch 61309 Micro Comp 183

208 Micro Computer Devices 55

209 Microlithics 183

211 Micro Mart 183

212 Micromation 15

213 Micro-Puzzles 179

214 Microsette Co 183

216 Micro Systems Services 109

240 Microware 110

241 MIJOBE179

242 Mikos 192

243 Minicomputer Accessories 105

250 Mini Micro Mart 102

251 Mini Micro Mart 102265 mpi 134

275 National Multiplex 87

280 Netronics Research 101

281 New England Electronics 126

282 Newman Computer Exchange 134

285 North Star Computer 17,31

286 Northwest Microcomputing Systems 121

* Ohio Scientific 24, 25, 26, 27

287 OK Machine & Tool 5

288 Oliver Advanced Engineering 132

289 Osborne & Associates 85

* Owens Associates 181

291 Pacific Digital 129

292 Pacific Office Systems 192

293 Page Digital 204

294 PAIA Electronics 137296 PCE Electronics 179

Inquiry No.

Page No.

297 PerCom Data 11

298 PerSci 63

299 Personal Computing '78 89

* PolyMorphic Systems 21

301 Poly Paks 201

302 Preferred Positions 181

303 Priority I 202, 203

305 Processor Technology 8, 9, 10

306 Program Design 106

307 Quest Electronics 204

* Radio Shack 73

311 Rothenberg Information Systems 123

312 S-100 128

313 S& R Electronics 183310 Scelbi36,37

322 Scelbi/BYTE Primer 65

* Scientific Research 39, 45

314 Scope Data 181

31 5 SD Computer Products 205

316 Seattle Computer Products 104

317 Silver Spur 181

318 Small Business Computer Magazine 98

319 Small Systems Services 128321 Ed Smith's Software Works 136

320 Smoke Signal Broadcasting 75325 Software Exchange 35

330 Software Records 107

335 Solid State Music 23

340 Solid State Sales 207

350 Southwest Technical Products CM

351 Speech Technology 132

352 Structured Systems Group 19

353 subLOGIC 127

354 Summagraphics 103

356 Sybex 33

355 Synchro Sound 94358 Synchro Sound 95

357 Szerlip Enterprises 130360 Tarbell Electronics 43

370 Technical Systems Consultants 41

371 Technico 79

372 Telecommunications Services 179

373 TransNet136

374 TRS-80 Software Exchange 124

376 uPMEM 181

377 US Robotics 183

378 Vamp 179

379 Whales 157

395 Worldwide Electronics 179

400 Xitex108

405 Xybek129

'Correspond directly with company.

ARTICLE

Article No.

1 Weinstein: A Programmable Character Generator

2 Thorson: A Programmable IC Tester

3 Tennant: Natural Language Processing and Small Systems

4 Georgiou: Give an Ear to Your Computer

5 Pearce: The HP-67 and HP-97

6 Norton: Notes on Teaching with Microcomputers

7 O'Haver: More Music for the 6502

8 Ciarcia: Talk to Me: Add a Voice to Your Computer

9 Hemsath-Seawright-Ghent-Garrard: Theatrical Lighting Graphics

10 Webster-Young: GRAPH: A System for Television Graphics

11 O'Haver: Audio Processing with a Microprocessor

12 Morgan: A Look at Shugart's New Fixed Disk Drive

PAGE

14

28

38

56

112

138

140

142

153

158

166

174

EROM BOMBs

"Program Your Next EROM in BASIC"by Steve Ciarcia, page 84, was the winningarticle in the March BOMB, placing 1.7standard deviations above the mean. Stevewill receive a bonus of $100. Second placewas a tie between "User's Report: The PET2001 " by Dan Fylstra, page 114, and "TheIntelligent Memory Block" by KennethCastleman, page 186, each placing 1.5standard deviations above the mean. Bothauthors will receive $50. To find out moreabout BYTE's BOMB, see the card oppo-site."

208

June 1978 © BYTE Publications Inc

MicrocomputerSystem Solution.

Announcing thelMSAI VDP-40.

Fully integrated video data processor in asingle cabinet.

T\vin floppies, professional keyboard,S-100 expansion slots.24 line by 80 char. CRT, insert/delete,programmable font, protected fields,inverse video.

Handsome flip-top cabinet for easy access.Serial and parallel I/O ports included.FORTRAN IV, Extended and Com-mercial BASIC.IMDOS (enhanced CP/M').ISAM.

W

W

You've decided you want a microcomputersystem—but what to buy? The componentsystem? A computer box here, a CRT boxthere, a keyboard box here, a floppy diskbox there... Messy! The $695 system? But... no disk; no way to add enough memory... and, if you could, it's not so cheapanymore, and you still wind up with anexpensive box collection anyway. Messy!

The IMSAI VDP-40, a fully integratedVideo Data Processing system that, in onehandsome package, combines a profes-sional keyboard, heavy-duty power supply,twin mini-floppies, multi-slotted mother-board and 9-inch CRT at a new low price.

System Expansion? The IMSAI VDP-40was built for you. The extra slots in our

S-100 bus motherboardand heavy-duty power supplyallow almost unlimited expansion.Need more RAM? Add up to % MBytewith our Intelligent Memory Manager and64K RAM boards. Need more disk storage?A controller option of the VDP-40 willallow you to expand to nearly 5 megabytes!Add a line printer, an IBM-compatible tapedrive, a MODEM! IMSAI has them all,with the interfaces and software to make itwork for you. The standard of excellenceIMSAI places at your disposal at a price/performance no one else has put togetherallows you to achieve the full potential ofyour imagination.

Check us out.IMSAI has what you wantand what you need. Visit your dealeror write us directly. Ask about the IMSAIVDP-40 and the entire IMSAI line.

Features and prices subject lo change without notice.*CP/M is a trademark of Digital Research Corporation.

®

m

The Standard of ExcellenceIn Microcomputer Systems

IMSAI Manufacturing Corporation,Dept. EWN, 14860 Wicks Boulevard,San Leandro, CA 94577 (415) 483-2093

IMSAI EUROPE Europa Terrassen 8 Rue Jean Engling Dommeldange, Luxembourg 43-67-46 Telex: 1428

See us at the NCC Show, booth 2860

Price/Performance no one else has put together.

Circle 175 on inquiry card.

the world's

most powerful

microcomputer

comes home

And

p?.9im&

hi b;

ililllli111IIIII

Be sure to use coupon

on page 34 of thismagazine to order yourFREE Heathkit Catalog!

. »;

Computer hobbyists have always

wanted the power and

sional machines.

But they've had

to settle for less.

Professional

machines were

too expensive.

Not anymore.

Now there's the

Keathkit Hll. 1111111111111 IliHIl! flump iiroi

Professional performance, kit price.

The Hll uses Digital Equipment Cor-poration's 16-bit LSI-11 CPU. Exactly thesame CPU found in the famous DECPDP-11-probably the most popularcommercial and industrial computer inthe world. So now a low-cost kit givesyou the speed, power and throughputof the world's most popular professionalcomputer.

Software and support. As an Hllowner, you have access to an incrediblerange of software — editor, relocatableassembler, linker, absolute loader, debugprogram, I/O executive program, dumproutines, BASIC and FOCAL. And, byjoining the DEC user's group (DECUS),you can have access to one of the largestsoftware libraries in the world. Andthere's more to come. Much more.Of course, the Hll executes the power-ful PDP 11/40 instruction set which in-cludes over 400 commands. And the fullyassembled KD-11F CPU board includes4K x 16 bits of memory. The backplaneaccepts up to six additional modules(memory, serial and parallel I/O, etc.)Heath will soon introduce a dual floppywith a disk operating system to take

advantage of the Hll's power. Ancthe Hll is fully compatible with all DECLSI-11 accessories.Heath documentation is second to none.

You get illustrated step-by-step instruc-tions on how to build the kit, thoroughexplanations of the software and compre-hensive operating instructions. If youwant to see for yourself, we'll send youthe entire manual set (#HM-1100) forjust $25. And you can apply the cost tothe price of the computer.With the Heathkit Hll, you can enjoypower, speed, versatility and potentialno 8-bit machine can match. And theHll costs little more than lessercomputers —just $1295*

Don't settle for less than the best. Aclose look in the latest Heathkit catalogwill convince you that the Hll is thebest home computer you can buy.

DEC, DECUS. PDPand FOCAL areregistered trade-marks of DigitalEquipment Corp.

•Mail order, FOB.Benton Harbor,Michigan. Retailprice slightlyhigher-Prices andspecificationssubject to changewithout notice.

System Engineeredfor Personal Computing

Circle 160 on inquiry card.