Download - Docket Alarm
Transcript
COMPASS EXH. 1005 – Page 1 of 21 Candidate Search Update May 20, 1985 FilE: RCSIImcs SEARCH DATE: 5120185 ~ SpIel/dora Gourmet Baby Foods 3 SIZE ~ 5{)()~ Emplnycl'.S Winnetka ,1\linois LOCA n ON REQ.wDcuoiJ Doar Mr. Holm: As a busy exeCIJtive you know Ihal accomplishing your many professional RELOCATAB Lf:. .. Yo:,r Hayden. Stcvo! Ob!ecti;~~ \I~: 1~~-~~nOgj~~~ neod Is to lake lime out of y~ur hectic ~~O~~I~1 to E xpe rien ce 1978-Prcsent Pinl.-Pinz Baby Food 1976-1978 J-Icath Baby Products 1984-Prescnt Liz for Kids 1982-1984 Bonnie Babe, Inc. $48,000 West, Nick Age Harvard MBNMktg. 33 ~~U~/MarkCl jng 26 1979- Prcscnt ~XLNSOCiOJ ogy Nummy Tummies Harvard MBA 1977- Prescnt Camille Grocers. Ltd. [974- 1977 Georgie Porgie of London 1961 - Present Bonnie Babe, Inc. ~\ayer. T~al's 7~O:w~ than 5,000, search for a new team We're a luU-servlce recrtnlmen '" \ 75 OxfordiMarkcling $47,000 UCLA MBNMktg. 35 r I~ SUCCESSFUL PlACEMENTsJ so ~0 n. moticulously selected, aggr~~siva ambitious, highly-quallhod prOI~ssionalS nol unlike y~ursOIt. P"C'~~; ,::::~~,,~~~:","g candidates who not only ~eel ." your specified work expononco :zs and salary requirements, but who w,1I ,,;led to Ih' CO'p",IO 1981 1982 1<)83 19M culture 01 your company. . h h' hesl succass rate in Ihe industryl Ono more reaso.n we enjoy I ~~~t competitive in the industry. Though our fees remam ~mong Ih? lormation on our client references. case Enclosed, pleaso fmd more In din leasure \SJ t~C'?~~19b19 Products Morrison . John Education histone:n~~e~\~~eo~:~~~:~~~~~f~~:: wit~ ~n empty' swivel chair. don't 32 - - :-, - -- - - -- - , o 5~ Experience , - 3 - --- , - --- , - - --- :tIJ o 3 -- , Cynthia Shern Senior Associate , CS :dh Usillg dalabase 1Il(II/agellleili prograllls YOII c({ II slore, retlieve ({lid sari ill/ol1l1a lioll ill all almost IInlimiled 1I111I1b.~· o/colllbinations. ill' opposed 10 . Ihe //Ja)1you 'reprobabl)l doillg IlllOlI!. Above, II Y/lle located eligible cCIII(!Jdales h)' salmy alld lI 'Ork e\jJerience. Bill dalabase lIIanagemenl i, also band)!./or Ilillgs like gelleraling !IIasler l11e1ilillg 11~'1s. Crealing illvoicel', Sorlillg b)1zip code. Checkillg iIlUelllol)( No ./iles 10 lose. No cro,I'-re/erellcillg YOllr Rolodex,' No paperclips, - Communication hosilatelocall~ ' S~a ~ 42 - -- 5~~ea derShiP 2200 M ichigan Place East SALARY REQ.~ $40·S50,OOO Per AlllllU7I Brown, Bob : Mr. Greg Helm . Vlco prosiden\. Marketmg Splendora Gourmet Baby Foods EXPERIENCE " Markting Managa FIElD ~ Foodsll nfat\l Antosz, l-Innk --- , £.I..I:!Q Name 5~ perSDnal i lY --- , - o III busilless, people qJiellllleell'ollr lellerbead be/ore Ibe)1lJIeelyoil Eller /l'!Jlldered IIIbal a /i1Jewrillell page slilr II'IliJ lllbite-oul sa),,' a/Joill yollr bllsilless,' Wilh nil! MacilllosiJ OJlice)'ou C((II eJlell dew!;11 (llId /m'lIlyOlir aI/'ll lellerbear/. pillSCOIIIbillepllblll,(llioll qllalil)' IeI'I (Il1d gmpbicsfor a las1illgjirsl illlpressioll. Mall! i!llP0l1cIIII, ),011 call selld persollalized lellel:"lo as lIIall) ' prospecis (1.1')'0 11 b(mepaper """"'iIlor . . . . . , • M(/IIlIj(ldllrer:I' Sllggl':>1('£1 relail/JI7(l!, © 191i5 ;Vl/ie CamjJlI/(1: Ille IVJple. 1!)(!IVJjJ /elogo, L(£ll1'\I" ik1: IVifJle'l(dk (lild ,)l(/cDrtOI' (/re lradelll(/rk oj;VJjlleGiJIllj>lder IIIC .)/(/(illll)l/I i,' (1ImrielllllrA' a/iHeIIlIO';iJ I.LlbaralOlY IIIC alld iI' iJeillg /(\l!d lIi/iJ lis (~\lJ1t""IX1'11/i"'1(m N(/!Ji((.v il' a It'gislmxllmdelllmk o!NoIJi:\'1YI, Ille /lolode.r il' a 1!'g/:,1elY'd Imdelllfllk 0/ al'b)TAIJIl'li((/II r.illliomlJlIII a ;uIJsidifll.T oj Illoileo. •• MIIIII/l/all il' 0 It'gil1L1wllradem(lrAi 0/ Mianl'D/I GilllJOralilJII, COMPASS EXH. 1005 – Page 2 of 21 --- • ess esse l _ICandidate Profile Analysis ~ , Recruit-A-Suitlncome Statement Fiscal Year Ending 9130/84 0' V",·end 0' SAlES - CJ C.ndhl.t. , \.'SOl C.ndhl.t. 2 AnnAItIOf Fees Com........ TOIIII Ann Arbor 20000 52.000 72000 19000 45,000 "a,ooo 64000 70000 22.000 17000 .2.000 59000 265000 4<1 ,000 68,000 "6.000 72.000 l1B.000 64,000 39.000 62.000 111,000 266,000 106.000 101,000 431,ODO '" 70200 78000 187,000 CJ IIlliI l CIIndld.,.S Each graph represents seven to ten pages of test information per candidate. Individual tests arc available for your review at your request. As these comparative charts indicate, all candidates tested competitively in the four areas. However, based on further indepth study, including extensive personal interviews, we highly recommend you in terview cand idates 4 and 5 as soon as possible. Our office wi ll be contacting you immediately to set up these interviews at your earliest convenience. l t Il{1 /ildllr(' il' IIYJrl1l {( IIIOIIS((lId I('()rd,. bllsille.~,· gmpbk;, lik 1/11'.1'(' collid ml lIIeelillgs {(lid /lresml{(lioll.l ill b((l/ In're I{(A~ell illjo}'((({(lioll Oil/ire .~t.>:J"'.1l' ({(lIdid{(les slored ill 0111' sq//(('((re pmgmlll. copied il ililo ((lIolber pH~~mlll. (('/lere il 11'((.1 IIsed 10 ('r(,{lle Ibese COlli· p{(mlire h{lr W{(p/ls. Ollce )¥)IIr d{(l{( i,elllered. Ibi, ;}(II1iwl({r so/ilmr(' pmgmlll gires .1'011 yOllr (/Joice 4-12 differelll gm/,b C!JIIIZ~III,{I· liolls. )1)(1 Cflil /)rel 'im',I'III/r lIIaleri{(1 (llbelber i(,· ('{{lIditi((fes. cosls or c/J(}kies I ill ('({cli colljigumlioll 10 decide (('bid, [b{(rl or [!.l'IIpb 111/),\1 persu{lsire/r lllaA~(~· . \'()lIr pOilll. -- DB tro~ FII" Commi$$lon$ TOlnlDotroil \12.000 T TAL8AES 42,000 1780 OPERATING EXPENSl:S M"_ p.,... 30 ,000 2.500 "00 '00 TUN Auto Ttllehonl Alnl UtJitlll. Due5lSubscJ' . Ad~_ T_ Enllll'Ullrlmenl OIIiolSuppllH MrtAlborTotaI Dell0h p Tu" Auto Tel' Rllnt ,~ ~ Ou.....su~. ""vel1blng T..... EntertalnlTlllnt 01. . jll DtllfoltTotaJ EXPENSES TOTAl... NETPF\E·TItJ(PAOFTT 30,000 33,000 30,000 2.500 '200 2.600 1.200 2500 1.200 000 11,000 000 ",800 2.400 8.000 32,000 500 123,000 10.100 soo '00 8,000 500 '00 3,000 1,000 \,500 300 3.000 '.000 1,500 300 '" 4,000 '00 4,000 1.750 300 1.500 300 2.000 500 14,000 4.000 11.250 1,200 48,700 48,700 53.1SO 49.700 200.250 SO.OOO 4,200 2.400 '200 9.100 '00 200 3,000 1.200 1,11 00 52.000 4.400 2.400 1.500 9.\00 50,000 '200 2.400 50.000 4.200 2.400 1.200 9.400 202,000 17.000 11.600 5.400 36.700 3 .200 '.000 500 0500 '00 <0, 9,100 800 200 3;00 0200 1,1100 .00 74.100 77.... 7<1.900 74400 301,050 122.800 128,350 120.050 124,100 50 1.300 61.200 55,850 47,950 35,900 200,700 00' 250 3.500 1.500 1.800 80' 200 3.000 . . 00 1.400 13.000 5.300 6,400 <0, 850 il, )'011 (('ell kllOW, busille.~I· illIJolws ill;lIIlIIeJ'tlble I'IUIJJbeN'f!laled lasRs, /Jot Ibe leasl Q[lIIbicb is geneJ'tlling income ((lid e.11)eIlSe siafelllenis like Ibi, aile. Sbollid )'0/1. lIIallllo cb((lIge ((}()I Q[lbe elliered ilelils - 10 I((ke a look allbe qDiJclsq!opell i IIg a )n1V qffice or decreasing your .>ltiD - a spread,beel prograllilike Mlilliplan" ((Jill aulOlJlalically reca/c:ulale Ibe elllire dOC/IJnenl. (Here, we've copied il ililo MacDraur alld ellbclJ1ced il jiJrpre.5enlalioll PlllfJOSes.j ;:;iii;;.... 111101 ollly s(((;es bours of ::iiiB!4JIIIJ~ ellielilig. double-cbecking ((lid e),{{jing, bulul/Jelilealiled lip 1I'lIb aliI' Laserl'lriler prinle); il produces a prillloill ilJlpressil}e ellollgb 10 S/lOIl' a ballk presideili. Fasl enougb jiJr Ibis ({fternoon :, meelillg I Whether you're Nabisco<alor Ms. Priss' Cookie Company you wony about the bottom line. Write letters. Keep track of inventory Keep your overhead under control. Pay taxes. Retrieve files. Schedule projects. Which is why you can dramatically increase your business' productivity with The Macintos\f' Office. The cornerstone of The Macintosh Office is our Macintosh 512K computer. All you need to know about its powerful,32-bit, mousedriven technology is tllat it reduces the time it takes to become productive with a computer from well over a work week to just under a lunch hour. But more important, Macintosh nms more than 500 software programs that E~~~ttcan solve a multitude of business problems. When you team up Macintosh with the second hardest worker in The Macintosh Office, our LaserWriter'" printer, you can bring a new level of professionalism to your papeIWork. It produces publication-quality text and graphics in letters, internal documents, presentations, even business fonns. There's no telling what it can save you in outside printing costs alone. And tlle LaserWriter can be shared with as many as 31Macintosh computers. So it becomes more cost efficient with every Macintosh you connect to it. Butcher, baker, candlestick-maker... or NabisCO, for more infonnation about The Macintosh Office call 800-446-3000. No job too big. Or too small. ,~!!~;;;~!!!!~!t The Macintosh Office ® COMPASS EXH. 1005 – Page 3 of 21 .. \. ,. , . . . .< FEATURES ' 80 INTRODUCTION . . . . . . . . . THE AMIGA PERSONAL COMPUTER by Gregg Williams. Jon Edwards. and Pflillip Robinson . 83 It has plenty of co mputing power and impressive color graphics. C1ARCIA:S CIRCUIT CELLAR: BUILD THE BASIC-52 COMPUTER/CONTROLLER by Steve Ciarcia . . .104 Steve designs a cost-effective performance booster that can be used in se ri ous applicat ions. THE 051-32 COPROCESSOR BOARD, PART I: THE HARDWARE by 'Trevor G. Marsl1all. George Scolaro, David L. Rand, Tom King, and Vincent P. William s . ... . . . 120 When plugged into an IBM Pc. the DSI-32 is a comp lete National Semiconductor 3203 2 microcomputer with 256K bytes of memory. PROGRAMMING PROJECT: CONTEXT-FREE PARSING OF ARITHMETIC EXPRESSIONS by Jonatl1an Amsterdam . ..................... . .. . 138 This program lets you parse integer arithmetic expressions into executable form . 80 THEMES INTRODUCTION . . . . . . . . . . . . . . PROLOG GOES TO WORK . . . . . . . . . 148 by Clara Y. Cuadrado and Jol1n L. Cuadrado . 15 I What Prolog is. who's using it. and why. LOGIC PROGRAMMING by Robert Kowalski .......... . ... . . . 161 It ca n be implemented as either a declarative programming language or a procedural programming language. DECLARATIVE LANGUAGES: AN OVERVIEW by Susan Eisenbacl1 and Cl1ris Sadler .. 181 Why we need anoth er type of prog ramming language. PROGRAM TRANSFORMATION by Jol1n Darlington. ....... . .. . . ... . . 201 A researcher in fun ctional languages explains a program-deve lopment methodology. FUNCTIONAL PROCjiRAMMING USING FP by Peter G. Harrison and Hessam Kl1osl1nevisan. . . 219 Thi s language lets you program witho ut objects by facilitating the manipu lation of functions. A HOPE TUTORIAL by Roger Bailey . .. . .... . 235 Learn how to use one of the new generation of fu nctio nal languages. 148 B'.rJ E (lSSN 0360·52801 1., published monthly With ...'ne eX ira Issue per year by :\'lcGraw·HlIllnc Founder lames H McGraw t1860-IQ481 Executive. editorial (I((uialion and (I{:,en islIlg offices 70 Mam 51 Peterborough. NH 03458 phone 16031914·9281 Office hours Men - Thur 8 JO AM - 4.30 PM. Frida~' X 10 AM - 1 00 PM Eagern Time Address 5ubscnpllons to BYTE SubScriptions. POB 590. Martinsville. NI 08836 Postmaster send address changes USPS Form ]579. undehverable copies. and fulfillment questions to BYTE Subscriptions. POB ')96. Maninsville. NI 08816 Second-class postage pclld at Peterborough. NH 014 ')8 and additional mailing offices Postage paid at Winnipeg. Mani toba. Registration number 9121 Subscriptions are 521 for one year. 518 for two years and 5,)') for three years in the USA and its possessions. In Canada and Mexico. 521 for one year. 542 for two years. 561 for three yea rs 569 for one year air delivery to Europe 17.100 yen for one year surface delivery 10 Japan 517 surface delivery elsewhere Air delivery h..' ~t;'lected areas at adchw.>rwl faleS upon reque~t Single copy price IS 51 m in the USA and its possessions. 51 .95 In Canada and Mexico. 5<1 50 III ~ mope. and S5 elsewhere Foreign subscriptions and sales should be remitted irl United Sta tes funds drawn on a U.s bank Please allow six to eigh t weeks for delivery of first Issue Printed in the United States of America 2 BY T E • AUGUST 1985 COVE R PHOTO BY AARON RE ZNY WITH APOLOG IES TO PABLO PICASSO COMPASS EXH. 1005 – Page 4 of 21 ust VOLUME 10, NUMBER 8, 1985 REVIEWS 262 INTRODUCTION bid Glenn Hartwig 1000 bid Rich Mallold REVIEWER'S NOTEBOOK .265 THE TANDY .266 An inexpensive IBM PC-compatibl e system. IBM PASCAL 2.00 bid Patrick) Finan. .275 Improvements include better documentation and su pport of an 8087 coprocessor. .283 REVIEW FEEDBACK Readers respond to previous revi ews. KERNEL . 290 INTRODUCTION COMPUTING AT CHAOS MANOR: THE WEST COAST COMPUTER F AIRE bid )errlj Pow'nelle .293 A drive to San Franci sco lets lerry see a multitude of new products BYTE JAPAN: COMDEX IN JAPAN blj William M. Raike 262 . 331 Bill describes many of the new pro ducts that were featured at the first-ever COM DEX show in lapan. BYTE U.K.: DECLARATIVE UPDATE blj Dick Pountain . 341 Dick rounds out this month's " Declarative Languages" theme with reviews of two books and a look at two new language systems. ACCORDING TO WEBSTER: GREETINGS AND AGITATIONS blj Bruce Webster. .355 More Macintosh products are discussed thi s month. BYTE WEST COAST: NEW MICROPROCESSOR CHIPS bid Phillip Robinson . 369 Phil looks at Intel 's iAPX 386, the 80C86, and Atron 's " hardware-assisted" debugger for the 86 fam il y. CIRCUIT CELLAR FEEDBACK conducted blj Steve Ciarcia .376 Steve answers project-related queries from readers. BYTELINES condLlcted by Sol Libes . .378 News and spec ulat ion about persona l computers. EDITOR IAL: A VERY SPECIAL ISSUE BOOK REVIEWS .49 .6 ASK BYTE .70 MICROBYTES . .9 U NCLASSIFIED ADS LETTERS. FI XES AND U PDATES WHAT'S N EW . 14 . 33 . 39, 380 .429 BYTE 's O NGOING MONITOR Box. BOMB RESULTS. .430 READER SERV ICE .431 1 290 Address all editOrial correspondence to the Editor BYT E PO B 372 Hancock NH 01,1<1 9 Unacceptable manusc ripts wdl be retu rned If acco mpanied by suffiCient fi rst-class postage Not responsible for lost ma nUSC ript s o r p hotos Opm ons expressed by the authors are not necessari ly those o f BYTE Copyright © !985 by McGraw-Hili Inc All rights reserved Trademark registered in the UnHed Slates Patent and Tradema rk Of free Where necessary permiSSion IS granted by the cOPYrigh t owner for libraries and others registered wlI h the CopYright Clearance Center (cec( 10 photocopy any article herem fOr Ihe flal fee of SI 50 per copy of the artICle o r any part thereof Correspondence and payment should be senl directly to Ihe ece 29 Congress ~I Salem \ I A 01970 Spec l f~' ISSN 0360-5280 81 51 ,0 Copymg done for olher than perso nal o r In~.:!rnal reference use w Ih(.JUl Ihe perm I"" sion of McGraw-HIli Inc IS prohlblled Requests fO,r special permission or bulk orders should be addressed 10 the publisher BYTE IS aVclllable In micro form from University MICrofilms International 300 Non h Zeeb Rd De pt PR Ann Arbor \\1 -18106 o r 18 Bed ford Row Depi PR London weiR .:lEI England Subscription Question s or problems should be addressed to; BYTE Subscriber Se rvice. POB 328 , Hancock . NH 03,1<19 e SEUION ART BY MAC IEK ALBRECHT AUGUST 1985 • BY T E COMPASS EXH. 1005 – Page 5 of 21 ED I TOR IN CH IEF SEN IOR VICE PRES ID ENT/PUB LI SHER PH ILIP LEMMONS HARRY L. BROWN MANAGING EDITOR PUBLISHE R'S ASSI ST ANT GENE SMARTE BEVERLY JACKSON CO N SULTING EDITO RS STEVE CiARClA PER SON N EL JERRY POURNELLE BRUCE WEBSTER CHERYL HURD . Office Manager Personllel Coordinafor PATRICIA BURKE . SEN IOR TEC HNICA L EDI TORS G ADVERTI SING SA LE S 1603·924·6137) Themes MICHAEL VOSE . TEC HN ICAL EDITORS / PETER HUESTIS. Sales Manager SANDRA FOSTER. Admil1is/rative Assis/all/ THOMAS R. CLUNE ADVERTI SING/PRO DU CTI ON 1603· 924-6448) GREGG WILLIAMS JON Can You Name a Dual-Drive Color PC That Runs Lotus 1,2,3 and Costs Under $15001 R. ROBERT D. HA NN INGS. RICHARD GREHAN KEN SHELDON LYDA CLARK RICHARD S. SHUFORD MICHELE GILMORE JANE MORRILL T AZElAAR DENISE PROCTOR EVA WHITE WAI CHIU MARGARET COOK GURNEY . Associatl' IULIE NELSON. Drafting CIRC ULATION [800·258·54851 CMer. Sail FrallCisco PHI LLIP ROB INSON , Senior TedmicaJ Editor. Palo Alto DONNA OSGOOD. Associa/e EdilOr. Sa" Francis(o BRENDA MCLAUGHLIN. Edilorial Assis /alll. SaIl Frallcisco EZRA SHAP IRO. Bureau RIel-lARD M,\LLOY, • Alth ough it's not PC-DOS compatible it wi ll run hundreds of the same programs as the IBM including dBASE II, Multiplan, the PFS series, Lotus 1,2, 3 and even F li ght Simulator. AGNES E. PERRY J. LOCKWOOD. MARK WELCH. Wfwrs New Microby/es progra mming proie(ts MARK DAHMKE . video . operating systems MARK HAAS . at large RIK /ADRNICEK . CAD. gravflics. spreadsfJee/s MARK KLE IN. comlllunications I. software lallglmges mid engineering C. NASH. scientific computing A LASTAIR W . MAYER . ALAN MI LLER. JOI'IN DICK POUNTAIN. UK. WILLIAM M . RAIKE. Japan PERRY SAIDMAN . ROBERT STERNE. (,\ROL AHO KAREN DESROCHES C('ie, DENNIS BARKER MARKETI NG COM M UNICATIONS Dire(tor 1603'924-34241 Marketing Producriotl Mallagt'f PR ISCILLA ARNOLD. MdTke/illg Assis/ant STEPHAN IE WARNESKY. Marketing Art DireClor SHARON PR ICE. Assistalll Art DireClor DOUG -WE BSTER. Director of Public Relations 1603'924'90271 WI LBUR S. WATSON. OperatiollS Manager. Exflibits HORACE T. HOWLA ND. VICKI REYNOLDS. PLANN ING AN D DEVELOPMENT Mmlager Ri'sear(h Ma'lager CYNTH IA DAMATO SANDS. Reader Serl'i(e Coordinator FA ITH KWNTZ. Copljrigflts Coordinator MICHELE P. VERVILLE. PATRICIA AKERLEY. M ANUFACTURING/FI NANC E/SERVICES E U ZABETH COOPER DAN IEL RODR IGUES. ANNE L. FISC HER ACCO UNTING NANCY HAYES KENNETH Dire(tor A. KI NG. Assistallt COl1 lroller LYNNE M . NADEAU VICKI WESTO N. Accolm tillg P/\ULA NOONAN LiNDt\ SHORT, Mm1(l{j!'r DIP Mallager JOAN V IGNEAU ROY EDSON WARE . Credil \V ARREN WILLIAMSON MARIE CAGGIANI MARILVN H AIGH $1497 a lso Fox Jr . . .. $899 Silver Fox .. $1297 , OffiCi' Mallager MARTHA HI CKS Lrd. Art Dire(tor Assistant Art Dire(lOr == 6 17 N. Scorrsdo le Rd. #0. Scorrsdole. Az. 8525 7 The Si lver Fox is so ld ex clusively by Scottsdale Sys tems Ltd .. 617 N. Scottsdale Road #B, Scottsdal e. AZ 85257. Trademarks: Si lver Fox. HAGEN · DOS. and Datemate. Scot t sda le Systems Ltd.; WordStar Rnd Ca lcSta r , Micropro Internationa l; MS·DOS , and Multiplan, Micro80ft Corpora tion ; F IT.EBASE, EWOP Software, In c.; dBN3E II . Ashton ·Tate; IBM·PC. ond IBM · PC nos; Interna ti o na l Busincss Machines Co rporation . Ord ering : Te lema rk eting on ly , Silver Fox price is for cas h . F.O.R Scottsdale, prices s ubject to chan ge, product subject to limited supp ly. We accept purch ase orders from Fortune 1000 companies and major univ ersities with good credit· odd 2% Visa , Masterca rd odd 3%, AZ residents odd 6%. Returned 'merc handis e Bubj ect to a 20% restocking fee. Personal or compa n y checks tuke up to 3 weeks to clear. No COO's or APO's. DENISE C H/\RTRAND M ICHAEL J. JAN MULLER LONSKY VERN ROCKWELL TYPOGRAPH Y SHERRY MCCARTHY. ({lii'f ART ROSSLYN A . FRICK. PROD UCTION DAVID R. ANDERSON . 'I' DIANE H ENRY loANN WALT ER LI SA Jo STEINER NANCY RICE . .:-,*: 4 computers and law computers and law COPY ED ITORS PEGGY DUNHAM. (602) 941-5856 Single·Copy Sales Manager Assis/allt Manager JONI\THAN AMSTERDAM. ASS ISTANTS III UNDA RUTH . CLAUDETTE CARSWELL CONTR IBUTING EDITORS Yo ur time is up the answer is: Sconsdole Systems, MARY EMERSON loU ISE MENEGU S JENN IFER PRICE JAMES BINGHAM . BUD SADLER . \ LAURIE SEAMANS. SUSAN BOYD USER NEWS ED ITOR . EAST COAST • During the dog days of summer computer sales, we've lowered th e prices of both our color and monochrome systems. You ca n re cei ve a free bookl et on these systems by ca lling our machine at I-800-FOR A FOX, and leavin g yo ur nam e and address at the beep. Co lor' Fox ANDREW JAC KSON. CATHY A. RUTHER FOR D. Assistant GEORGE BOND ANTHONY Dir£'Clor SubscriptiOns Manager Manager Assis/Qllt Manager GREGORY SP ITZFADEN. PHIL DEC H ERT Se/lior T!'dlllim/ Edi/or MANAG ING EDIT OR . ELECTRON IC PUBLI SHI NG AND COMM UNICAT IONS USER NEWS EDITOR . WEST COAST • It's a n 8088, MS-DOS syste m with 256K of RAM, bu t it comes with a better free software bundle than the 8-bit Kaypro including MS-DOS 2.11, HAGEN-DOS, DOS-TUTOR, WordStar3.3, EasyWriter, Spell, Mail Track, PC File III, FILEBASE, CalcStar, games, graphics, utiliti es, and two BASIC languages. 1I. Ouality COlltrol Manag!'r Ativerlisillg/Proou(/ioll Coordinator STANLEY WSZOLA NEW YORK ED ITOR • It has d ual 800T( disk drives much like the $2495 Tandy 2000, but it a lso h as the ab ility to read and write to popular 160K, 320K, and 360K IBM-PC formats. Coordillator KAREN CILLEY WEST COAST ED IT ORS • It comes with a 14" RGB monitor much like the 14" monitor that com es with t h e $2495 Leading Edge PC. Aceoll llt MARION CARLSON Reviews GLENN HARTWIG . AL/\N EASTON. Hints Supervisor Senior USA WOZMAK . EDWARDS Pro(/lI(tioll Director Typograpfler NAN FORNAL LEN loRETTE KATHV QUIST DONNA SWEENEY BUILDI NG SERVICE S/TRAFFIC ANTHONY BENNETT. BlIildillg Sen!ices Manager BRIAN HI GG INS MARK MONKTON RECEPTIONI STS L. RYAN MCCOMBS C HERYL CASTRO. Assistant Editoria l and Business Office: 70 Main Street. Peterborough . New Hampshire 03458. t6031 924·9281 West Coa st Offices: McGraw·HiII .125 Battery St San Francisco. CA 94111 . 14151 362·4600 McGraw·HilL 1000 Elwell Co urt Palo All o CA 94303 14151964·06211 New York Off ice: 1221 Avenue o f the r\mericas New York . NY 10020. 12121 512·2000. • , • Officers o f McG raw·Hili Information Sys t~ms Co mpany PreSident Richard B Miller Executive VICe Presidents Frederick r lannou Con· ~ ~ structlon Information Group. Russell C White. Computers and Communica tions Information Group. I. Thomas Ryan Marketing and Intelll,l' .YM ~ tional. Senior Vice Presidents. Francis .A Shinal. Controller. Robert C Violette. Manu/acturing and Techno logy. $elliOT Vice PreSidents and • publishers Laurence Altman. EleCITonlcs Week: Harry L Brown. BYTE and Popular Computing: David I. McGrath. Construction Publications Group Vice President Peter B McCuen. Communications Information Vice ~resident: Fred 0 Jensen. Planning and Development. Officers of McGraw·Hili Inc Haro ld W McGraw. Jr Chairman. loseph L Dionne. President and Chief Executive Ollicer. Robert N Landes. Executive Vice President and Secretary . Ralph I Webb. Vice President and Treasurer. Shel F Asen . Vice President. Manufacturing George R EiSinger Vice Presl' dent Circulation. Ralph R Schulz . Senior Vice PreSident Editorial (Publishing Operati ons) . ! _ BY T E • AUG UST 1985 COMPASS EXH. 1005 – Page 6 of 21 C·I·A·R·C·I·A'S C·I·R·C·lJ·I·1r C·E·L·L·A·R BUILD THE BASIC~52 COMPUTER/ CONTROLLER BY STEVE CIARCIA A single--board problem solver with great potential One of the most popular Circuit Cellar projects was the Z8 BASIC computer/ co ntroller presented in luly and August of 198 1. Since then. thousands of Z8 controller boards have found their way into end-user and OEM applications. I specifically designed the original Z8 controller because I hate programming. Generally speaking. if the program has fewer than 100 lines I'll grin and bear it. Any longer than that. however. and I lose interest and call in a programmer. To ease the pain. I generally use htgh-Ievel languages like BASIC Most people understand BASIC and it excuses me from wasting time on tedious bit manip.lJI-a'tions merely to demonstrate a hargwffie peripheral device. (My favorite programming language is solder.) I don't try to justify using BASIC I just get results. While others are arguing the merits of Pascal and C I've plugged in my si ngleboard computer!controller and am plinking away in BASIC to solve the problem. I've learned enough about other programming languages so that I know when to nod appreciatively at a programmer's description of a random-number seed generator written in some obscure programming dialect. This "plug and program" approach has been adequately satisfied by the Z8. but I COPYRIGHT © 1985 STEVEN A . CIA RCtA . A LL RIGHTS RESERVED. find that I purposely avoid applications involving floating-point calculations o r trigonometric functions that would otherwise force me to resort to assembly-language programming (ugh!). In an effort to forestall my inevitable defection from BASIC I am continually on the lookout for cost-effective performance boosters that I can package as Single-board problem solvers (that execute in BASIC naturall y). And I just found another one! What I have found is the Circuit Cellar BASIC-52 computer/controller (BCC-52) board. It uses the new Intel 8052AH-BASIC microcontroller chip that contains a ROM (read-only memory)-resident 8K-byte BASIC interpreter. The BCC-52 board includes the 8052AH. 48K bytes of RAM/EPROM (random-access read/w rite memory/erasable programmable ROM). a 2764/ 128 EPROM programmer. three parallel ports. a serial terminal port with automatic data-transmission-rate selection. a serial printer port. and is bus-compatible with the BCC-II Z8 system/controller and all the BCC-series expansio n boards I've already designed. Figure I (continued) Steve Ciarcia (pronounced "see-ARE-see-ah") is an electronics engineer and computer consultant with experience in process contro/. digital design. nuclear instrumentation. and product development. He is the author of several books about electronics. You can write to him at POB 582. Glastonbury. CT 06033. AUGU ST 1985 • BY T E 105 COMPASS EXH. 1005 – Page 7 of 21 CIRCU IT CELLAR is a block diagram of the hardware. BASIC-52 is particularly suited for process control. providing IF. .. THEN , FOR .. . NEXT. DO . .. WHILE/ UNTIL, ONTIME, and CALL statements among its broad repertoire of instructions (figure 2 lists the software features). Calculations are handled in integer or floating-point math and are fully supported with trigonometric and logical operators. Because of its low system overhead it is extremely fast and efficient. I'll get into the system configuration and the design details momentarily, but I first have to mention an interesting aspect of BASIC-52. While I considered using EEPROMS (electricall y erasable programmable ROMs) and other nonvolatile storage techniques, the sophisticated EPROM programming capabilities of BASIC-52 justified eliminating them simply on the basis of cost and board real estate. Unlike most one-shot EPROM programmers that fill the entire contents of an EPROM regardless of the application program's size, BASIC-52 treats the EPROM as write-once mass storage. When a BASIC application program is saved to EPROM, it is tagged with an iden tifying ROM number and stored only in the amount of EPROM required to fit the program (plus header and EOF [end of file[). Additi ona l application programs can be stored to the same EPROM and recal led for execution by requesting a particular ROM number. A 27128 EPROM provides 16K bytes of massstorage space. When it is full (a nondestructive EPROM FULL error will tell you), simply erase the present EPROM or insert another. Finally, since this pseudo-mass storage exists in directly addressable memory space rather than cassettes or disks, it runs at full processor speed and stored application programs are instantly accessible. BASIC-52 bridges the gap between expensive, intelligent control capabilities and hard-to-justify. price-sensitive control applications. BASIC-52 's full floating-point BASIC is fa st and efficient enough for the most complicated tasks, while its cost-effective design lets it be considered for many new areas of implementation . I'm bullish on the BCC-52 board, and you can expect to see it in future Circuit Cellar projects. With so much power and convenience, I ca n accomplish quite a bit in a few lines of code-especially since that's alii may ever write. THE BCC-52 BOARD The BCC-52 is a single-board controller/development system. Shown as a prototype in photo 1 and as a schematic in figure 3, this 17-chip circuit fits in a compact 4Y2 by 6Y2 inches (the same size as the Term-Mite smart terminal [see photo 21, if you want a twoboard complete system-see my columns in the January and February 1984 issues of BYTE) It contains RAM/EPROM, an EPROM programmer, three parallel ports, and two serial ports. The BCC-52 board has five main sections: processor, address decoding and memory, parallel I/O (input/ output). serial I/O. and EPROM programmer. The BCC-S2 board is based on the 80S2AH-BAS1C chip. a preprogrammed version of Intel's 8052AH microcontroller (see figure 4). The 8052AH is the newest of Intel 's 8-bit microcontroller-chip series, also known as the MCS-51 family. The 80S2AH contains 8K bytes of on-chip ROM, 256 bytes of RAM , three 16-bit counter/timers, six interrupts, and 32 I/O lines. In the 8052AHBASIC chip, the ROM is a masked BASIC interpreter, and the I/O lines are redefined to address, data, and control lines. Figure Sa illustrates the 80S2AH-BASIC chip pinout. The 8052AH-BASIC chip has a 16-bit address and an 8-bit data bus (the 8 least significant address bits [ADO-AD7[ and the data bus [DO-D7[ are multiplexed together, similar to (continued) LINE-PRINTER SERIAL PORT ADDR DECODER CONSOLE SERIAL PORT 8052AH BASIC ADDR DATA Figure I: Block diagram of the Circuit Cellar BASIC-52 computer/controller hoard. 106 BY T E • AUGUST 1985 COMPASS EXH. 1005 – Page 8 of 21 CIRCUIT CELLAR Command Function Statement Function RUN CONT LIST LlST# NEW NULL RAM ROM XFER PROG PROG1 PROG2 Execute a program Continue after a stop or Control-C List program to the console device List program to serial printer Erase the program stored in RAM Set null count after carriage return/line feed Evoke RAM mode, current program in read/write memory Evoke ROM mode, current program in ROM/EPROM Transfer a program from ROM/EPROM to RAM Save the current program in EPROM Save data-transmission-rate information in EPROM Save data-transmission-rate information in EPROM and execute program after reset Save the current program in EPROM using the intelligent algorithm . Save data-transmission-rate information in EPROM using the intelligent algorithm Save data-transmission-rate information in EPROM and execute program after reset, use intelligent algorithm POP PWM REM RETI STOP STRING UI1 UIO U01 UOO Pop argument stack to variables Pulse-width modulation Remark Return from interrupt Break program execution Allocate memory for strings Evoke user console input routine Evoke BASIC console input routine Evoke user console output routine Evoke BASIC console output routine Operator Function CBY() DBY() XBY() GET IE IP PORT1 PCON RCAP2 T2CON TCON TMOD TIME TIMERO TIMER1 TIMER2 Read program memory Read/assign internal data memory Read/assign external data memory Read console Read/assign IE register Read/assign IP register Read/assign I/O port 1 (P1) Read/assign PCON register Read/assign RCAP2 (RCAP2H:RCAP2L) Read/assign T2CON register Read/assign TCON register Read/assign TMOD register Read/assign real-time clock Read/assign TIMERO (THO:TLO) Read/assign TIMER1 (THUL1) Read/assign TIMER2 (TH2:TL2) Addition Division Exponentiation Multiplication Subtraction Logical AND Logical OR Logical exclusive OR FPROG FPROG1 FPROG2 Statement Function BAUD CALL CLEAR CLEARS CLEAR1 CLOCK1 CLOCKO DATA READ RESTORE DIM DO UNTIL WHILE END FOR-TO-{STEP} NEXT GOSUB RETURN GOTO ON GOTO ON GOSUB IF-THEN-{ELSE} INPUT LET _ ON ERR ONTIME Set data-transmission rate for line-printer port Call ass~mbly-Ianguage program Clear variables, interrupts, and strings Clear stacks Clear interrupts Enable real-time clock Disable real-time clock Data to be read by READ statement Read data in DATA statement Restore read pointer Allocate memory for arrayed variables Set up loop for WHILE or UNTIL Test DO loop condition (loop if false) Test DO loop condition (loop if true) Terminate program execution Set up FOR ... NEXT loop Test FOR ... NEXT loop condition Execute su brouti ne Return from subroutine GOTO program line number Conditional GOTO Conditional GOSUB Conditional test Input a string or variable Assign a variable or string a value (LET is optional) ONERR or GOTO line number Generate an interrupt when time is equal to or greater than ONTIME argument; line number is after comma GOSUB to line number following ONEX1 when INT1 pin is pulled low Print variables, strings, or literals, P is shorthand for print Print to software serial port Print hexadecimal mode with zero suppression Print hexadecimal mode with no zero suppression PHO.# to line printer PH1.# to line printer Push expressions on argument stack ONEX1 PRINT PRINT# PHO. PH1. PHO.# PH1.# PUSH + / .AND. DR. .XOR. Stored Constant PI - 3.1415926 PI Operators-Single Operand ABS( ) NOT( ) INT( ) SGN() SORt ) RND LOG( ) EXP() SIN( ) COSt ) TAN( ) ATN( ) Absolute value One's complement Integer Sign Square root Random number Natural log "e" (2.7182818) to the X Returns the sine of argument Returns the cosine of argument Returns the tangent of argument Returns the arctangent of argument Figure 2: Detailed description of tfle Intel 8052AH BASIC-52 programming language. AUGUST 1985 • BY T E 107 COMPASS EXH. 1005 – Page 9 of 21 CIRCUIT CELLAR ~---C/') I- ~ > !: x >- N-oo r--. I.D q- Ll'l ::: ~ m--- J4 C 9~ RESET ~~N414S Rl 47K 9 RESET I + .:..~ CI3 E _T~I~M~E~R~Z~E~R~0~IN~P~U~T______Hr~14,TOIN H TIMER ONE INPUT 15 TlIN TIMER TWO INPUT L TI MER TWO TRIG P INTO-DMA REO R 12 ~ 1 T2 IN · L DIR 2 T; TRIG DMA ACKNOWLEDGE 7 DMA ACK PULSE-WIDTH MODULATOR 13 INTERRUPT ~ PBl IC9 74LS245 .JV +5V 12 INTO-DMAREO A15 A14 3 PWM A13 13 INT 1 A12 14 PROGRAM ENABLE 6 PGM ENABLE 15 PROGRAM PULSE 5 PGM PULSE All AI0 1 1 A9 AS 1 '-CRI ' - ~ IC~ 7404 I I K +5 V VCC 2S 2 Al 27 3 A2 B2 4 B3 A3 5 A4 B4 6 AS B5 7 A6 B6 S A7 B7 9 BS AS EN 10 [19 26 25 24 23 22 21 IC5 S052 BASIC B.l 20 IS 17 16 14 * A12 * All 13 * AI0 12 * A9 11 *AS 15 I th 1 3 4 20 5 6 30 9 40 19 SO 70 16 2D 7 +5 V 3D S 4D IS SD 17 7D '? ENJJ3~1~~~~~N------------tttHHHi--~1 __-V~------------++tt~H---~1~4 6D 13 60j..;1~5----------11.~2~__~~___ L-~~-------------rHrHr~~--~5DSTB 50~ 10K SIP2 (9) AD7 32 ~ HOH CI0 30PF* Cll 30 PF -=- T ~______.....__=-20'-1 V55 rh B8~ AD4 35 6 A5 B5 ~ AD3 36 5 A4 B4 AD2 37 4 A3 B3~ ADI 3S 3 A2 B2~ 39 2 Al PSEN XTALl ~+5V 120 9 AS B7~ B6~ -RD XTALl 1l.0592MHz 11 3 1~------------------------~+++ttt--------t----1S A7 AD6.1 AD5~3~4~------------------------4f++tt--------t----l7 A6 ADO r - - -________~IS,XTAL2 IC2 74LS373 WR DIR GND r!L- BI~ EN r - - - - - I C 1 3 " - l +. ~5V 1IO~~9 4 .7 K 1 17 1 74LSOS I I '-'-'----I..r----.I \ .3~____.-.:.I___________I..LI_------t_----.., IC4 1 29 21 a,.. 1 r 74LS245 5 ~1~6~-:-11 _____ --------------;1:-4 c ~6~-l--------+-------====== 10 1 ICll ALE <.:3'-'°'-----'__--,1 DI SABLE 4 1 91 S c 1 74 ° 7 1 L -.J CONOUT~I~I,---~~~~~~~~~=-----------------------------------CON AU X IN~l~O~ SERIAL~S _______________________________________________________ ____________________________________________________________ OUT Figure 3: Schematic diagram of the BCC-52 board. 108 BY T E • AUGUST 1985 COMPASS EXH. 1005 – Page 10 of 21 CIRCUIT CELLAR ~ b 4 ICll r-_---'7:..:4~0.:...7_321 ----W 1~~2~ ---- ~~PG~M~P~U~L~S~E~~~_4_.7_K~ All 6 7 JP3 53 Y7 r---o AI 2 S 52 Y6 2.-0 ~ 4 ~ Y '----------i-t----I SJ ~ 128K ICIS ICI4 r ra li4 LS 08 ------'64K~ JPI -- - - - - R7 ~8 __________ I C 11 7407 JP2 P GM ENABLE YS ~ - ~ :: B Y!~ 2 ~ 6 cs PA4 PAS~ PGM Vpp 26 AI3 20 38 PA6E'---o CS _______+1-1+.j-__..::2~6 AI3 CS -------+~I+.j---~I PGM rr- _______~~1+.j---~ 2 AI2 _______~~1+.j---..::2~3 All _________~~t---..::2~1 AIO ICI6 2764/ 27128 (8000H) CS tt- r- '- t- l- r- l- l- I- I- All I- I- r- r- rIrrr- r- A9 r- A8 r- A7 24 A9 l- l- 2S A8 _________________ A7 I- I- l- l- I- I- ~3 _________________ ~4 A6 _________________~S AS I- __________________~6 A4 I- _________________~ 7 A3 _________________~8 A2 _________________ ~9 AI I I- o I- is o o o ::;: _ ________________..::I~O AO WVee 0-- f!---o r£L--o P B6 PBS 0-- <>- PB4~~ Vss 2d;l PB3 1-'2::..:1'--_---' AI2 PB2 1-'2:..:0'--____...J AIO PB I 1-'1"'9_ _ _----' PBO 18 ICI 7 8 25S r-------~ PC7 t-I:...:O_ _ _ _~ PC61-'1~1-----...J PCSI-'I:...;2'---------' t - AS is 0--- PB7~ t - A6 r- is 000 ~ I- ~ r- ~ I- fZ-.--o PA 7 +5V ~O ~ c--o ::: 1 ruLJ]~~~~~I[~11A~==~yo~~~l s~~LJ~~2~7~~II~ 120 J3 r-;:==P"==--____ !.!.: th~__...!:.rh~___.J I ~- -~2_S________--, ~ ~ C ~ +~~V____li~N~2r7~0~__~~V6~Kr-__, 10K I QI "----3S PN2907 RESET pAO I SV u+ PAl 10 Y4.!.!....o 74LSI 38 12 3 +21V CR2 PC4t-1:...:3'------------~ t - A4 PC31-'1~7------------~ t - A3 PC2 1-'1~6'---------------" I- A2 ~ t- :E I- AO 1 PClt-I~5--------------~ 8 t - - AI ~ AO AI J4 I PCO 14 +12V <l a: 19 D7 I- ~ I- ;:; I- ~ I- D7 r----32 18 D6 --",,--..,1- ~ f-- D6 __ u __ ~1- u f-- DS ~D6 ----- 17 D5 16 04 15 D3 13 D2 12 DI --H-+-H+-HI-----I~I'fD O _ _ 4.7 K SIPI +5V -- D7 I- f-- D4 ~D4 l- r- f-- D3 I-~D3 ~D2 tI- IrI- f-- D2 r - DI r- ~.~~'C72~----~--------~~ ~DS -I- +..liS.CI iLCI.C4.C6-9.C I4 ~IOJL~O . IJLF GN D DO -O-E L 10JLF -12V TTL SER IAL OUT ~""""'''''~_...J'r 1 1 ... 1 1 41 b ICIS ICIO ~-4-L-SO-4---------' e C>c1.... 1 b ~ AS +1 2V \C4~8 4 5 I I 2 ~ I I M __ \~4L S08 ________~~~--~.--~~-4--~------------4~~-t-~~i------~ 11 B r-________~T~T~L~S~E~R~I~A~L~IN~_ N ~DI ~DO AD WR :;r ;'iT :;n:' +~V 22.-+-27_2-421~2_7_2_211.,..2_7_22..,11_'27_ _~12_2_ _ _ _ _J.S_t-13_6_t-t_+-l...,~ OE WR I 21 22 7 ~ ( 2 ) m 6.8 ):;6~--+------'1 L.;..:., 3 I CI7 1~1488 ~ o 5 '------- 3 1-'1'--------- 2 IC 16 1489 JI ~ 7 +12V 'i' J2 4.7K ' - - - ~20 AUGUST 1985 • BY T E 109 COMPASS EXH. 1005 – Page 11 of 21 CIRCU IT CELLAR the 8085 and 28) When the chip is ·powered up. it sizes consecutive external memory from 0000 to the end of memory (or memory failure) byalternately writing 55 hexadecimal and 00 to each location . A minimum of 1K bytes of RAM is requ ired for BASIC-52 to function. and any RAM must be located starting at 0000. IEditor's note: For the remainder of the article. all addresses and data values will be hexa- decimal unless otherwise specified. I Three control lines. RD (pin 17). WR (pin 16). and PSEN (pin 29). partition the address space as 64K bytes each o f program and data memory. How- ever. user-called assembly-language routines and EPROM programming are unsupported in data memory. For that reason . the BCC-52 board as I've designed it is addressed completely as program memory (RAM /EPROM mode). both for RAM and 1/0. The addressing logic is as follows: 1. The RD and WR pins on the 8052AH chip enable RAM from 0000 to 7FFF Addresses are used to decode the chip select (CS) for the RAM devices. and RD and WR are used to enable the OE and WE (or WR) pins. respectivel y. 2. PSEN is used to enable EPROM from 2000 to 7FFF Addresses are used to decode the CS for the EPROM devices. and PSEN is used to enable the OE pin. 3. Between 8000 and OFFFF. both RD and PSEN are used to enable either EPROM or RAM. RD and PSEN are applied as inputs to AND gate ICI5 . a 74LS08. The WR pin on the chip is used to write to RAM in this same address space. Photo 1: The Circuit Cellar BASIC-52 computerlcontroller prototype. Photo 2: On the right is the BCC-52 prototype; on the left is the Circuit Cellar BCC Term-Mite smart-terminal board (see the January 1984 Circuit Cellar). With the addition of a video monitor and keyboard. the two boards constitute a complete computer system suitable for software development or installed use. 110 BASIC-52 reserves the first 512 bytes of external data memory to implement two software stacks: the control stack and the arithmetic or argument stack. Understanding how the stacks work is necessary only if you want to link BASIC-52 and 8052 assembly-language routines. The details of how to do this are covered in the assembly-language linkage section of the MCS BASIC-52 User's Manual. The control stack occupies locations 60 (96 decimal) through OFE (254 decimal) in external RAM. This memory is used to store all information associated with loop control (i.e .. DO .. . WHILE , DO .. . UNTIL. and FOR .. . NEXT) and BASIC subroutines (GOSUB). The stack is initialized to OFE and "grows down." The argument stack occupies locations 120 (301 decimal) through 1FE (510 deCimal) in external RAM. This stack stores all the constants that BASIC is currently using. Operations like add, subtract. multiply. and divide always operate on the first two numbers on the argument stack and return the result to the argument BY T E • AUG UST 1985 COMPASS EXH. 1005 – Page 12 of 21 CIRCUIT CELLAR PO.0-PO.7 P2 .0-P2 .7 SCON TMOO THO TLO THl TH2 " TL2 ' RCAP2H " IE IP RCAP2L" SOUF TCON z PSEN 0 TIMING AND CONTROL ALE EA RST i=a:: OW :::>fa::U) f-U)<!> ZW _a:: ' RESIDENT IN 8052 8032 ONLY XTAL I XTAL 2 Pl.0-PI .7 P3.0- P3.7 Figure 4: Block diagram of tl1e Intel 8052AH-BAS IC cl1ip stack. The argument stack is initialized to I FE and "grows down" as more values are placed on it. Each floatingpaint number placed on the argument stack requires 6 bytes of storage. The stack pointer on the 8052AH (special-function register. SP) is initialized to 40 (77 decimal). The 8052AH's stack pointer "grows up" as additional values are placed on the stack. ADDRESS DECODING The three most significa nt address lines (A 13-A 15) are connected to a 74LSI38 decoder chip. ICI3 . which separates the addressable range into eight 8K-byte memory segments. each with its ow n chip select (YO-Y7) . The four least significant ch ip selects are connected to 28-pin. 64K-bit (8K by 8) memory devices. either 2764 EPROMs or 6264 static RAMs. ICI. addressed at 0000. mu st be RAM in order for BASIC-52 to functi o n. IC locations 3 (2000-3FFF) . II (40005FFF). and 12 (6000-7FFF) can use either RAM or EPROM. ICI6 (8000(continued) AUGUST 1985 • B Y T E III COMPASS EXH. 1005 – Page 13 of 21 CIRCUIT CELLAR 9FFF or BFFF) is an EPROM program- partitions either C800-CFFF or E800ming socket intended for 2764 or EFFF as eight 256-byte I/O blocks. 27128 EPROMs (see figures 5b and Rather than simply using the available 5c) COOO or EOOO strobes from ICI3 Altogether. you have 48K bytes of , alone. which would occupy a 2000 admemory on the BCC-52 board if you dress space for a single PIA (periphuse four 6264 RAMs (as ICs I. 3. 8. eral interface adapter) chip. ICI4 and 12) (see figure 5d) and a 27128 allows many peripheral devices to EPROM in 1C16. The memory and I/O share the remaining address space by can be further expanded through the using on ly a 2 56-byte address range. expansion bus using BCC-series This addressing convention is consisZ8-system expansion cards. tent with other expansion boards I've A second 74LS138 decoder. ICI4 . designed. and it is easy to configure T2!P l.O T2E X/Pl.l PWM OUTPUT/P1.2 ALE DISABLE IP1.3 PROGRAM PULSE/PI.4 PROGRAM ENABLE /P I .5 DMA ACKNOWLEDGE IPl.6 LlNE- PRINTER OUTPUT IPI. 7 RESET CONSOLE SERIAL INPUT CONSO LE SERIAL OUTPUT INTO I DMA REQUEST INTI TO TI WR RD XTAL2 XTALI a) Vss c) A6 A5 A4 A3 A2 AI AO 00 01 02 GND PARALLEL I/O The BCC-52 board contains an 8255A-5 PIA (lC17) that provides three 8-bit I/O software-configurable parallel ports. The three I/O ports. labeled A. B. and C. and a write-only mode-configuration port occupy four consecutive addresses in one of the Vee 39 2 38 3 37 4 5 8052AH- 36 BASIC 35 6 7 34 8 33 32 9 ADO ADI AD2 AD3 AD4 AD5 AD6 AD7 10 +/EA II ALE PSEN AI5 AI4 A13 AI2 All AI0 A9 A8 29 12 13 14 15 16 17 18 19 20 27 26 25 2 3 4 5 6 7 8 9 10 II 12 13 14 27 26 Vpp A12 A7 a 64-channel A/D (analog-to-digital) or 128-channel power I/O system using this board with a number of peripheral cards. - TOP VIEWS SHOWN/ Vpp AI2 A7 b) NC A12 A7 A6 A5 A4 A3 A2 Al AO Vee 27 128 25 24 23 22 21 20 19 18 17 16 15 PGM A13 A8 A9 All OE AI0 CE 07 06 05 04 03 A6 A5 A4 A3 A2 Al AO 00 01 02 GND 1/01 1/02 d) 1/03 GND Vee 2 3 4 5 6 7 8 9 10 11 12 13 14 27 26 2764 25 24 23 22 21 20 19 18 17 16 15 PGM NC A8 A9 All OE AI0 CE 07 06 05 04 03 Vee WE CS2 A8 A9 All OE AI0 CSI 1/08 1/07 1/06 1/05 1/04 Figure 5: Pinouts for (a) tfle 8052A H-BASIC cfl ip. (b) tfle 2764 8K-byte EPROM . (c) tfle 27128 16K-byte EPROM . and (d) tfle 6264 8K-byte RAM. 112 BYT E ' AUGUST 198 5 Inquiry 389 for ins"rt_ COMPASS EXH. 1005 – Page 14 of 21 ~ ~ ~~ -/~ .DFT INCREDIBLE NEW SERVICE BREAKTHROUGH OVERNIGHT DELIVERY! On Oniers Tota ling Over $1 0o...Shipped UPS FREE W Under $1 00 VIA .. . ~UPOlaIOP couPlep a I I l I: II m!I .. , III, ~I ILl ~: (.)1 al Zl 41 II ~I .. I I .. I 1111 II fl II 01 (.)1 I DATA BASE MANAGEMENT KNOWLEDGEMAN _ _ _ 5259 Clout 2 145 Tim IV 189 R:Base 4000 265 R:Base 5000 399 DB Master 475 d BASE III 365 Quickode III 159 d Base II (New Release) _ _ _ 269 Condor III 349 Data Base Mgr. II (alpha) _ _ 175 Extended Report Writer _119 Friday 169 pfs: file & pfs: report _ _ 165 REVELATION 745 Powerbase 255 Easyfil er 99 FINANCIAL DOLLARS AND SENSE _5115 Market Mgr. Plus IDow Jones)_179 MANAGING YOUR MONEY _119 GRAPHICS CHARTMASTER 5275 GRAPHICS Iconl.) BPS Graphics_ _ __ SIGNMASTER _ __ _ pfs: graph _ _ __ _ ----,-' Graphwriter 319 Graphwriter Extension _ _ 319 Graphwriter Combo Pak _ 485 Microsoft Chart 175 ENERGRAPHICS 259 Energraphics (w/plotter opt.)_ 325 PC Draw 295 LANGUAGES/UTILITIES CONCURRENT PC 00S ,·,· ",,,· ,,5175 Pascal MT + (PC DOS) _ 349 PU1·(DR) 489 Display Manager-(DR) _ _ 359 Access Manager-(DR) _ _ 269 LATTICE CCOMPILER _ _ 305 C·Food Smorgasbord _ _ 119 CIS Cobol 86 (DR) 479 Pascal Compiler (MS) _ _ 245 C Compiler (MS) INew Releasel _ 305 Mi crosoft Sort 159 Cobol Compil er (MS) _ _ _ 479 LANGUAGES/UTIL Iconl.) Business Basic (MS) _ _ 5299 FORTRAN COMPILER (MS) _ 229 CB6 C Compiler (Computer Innovations) _329 INTEGRATED/SPREADSHEETS LOTUS 1·2·3 (Wh ile Th ey LBs tl 5329 Enable 305 Smart Series 579 FRAMEWORK 355 Open Access 395 Electric Desk 229 SYMPHONY (Limited QUBntlty) 459 Supercalc 3 175 Multiplan 129 TK! Solver 279 pIs: plan 85 PROJECT SCHEDULERS MICROSOFT PROJECT_ _ $165 SuperProject (IUS) _ _ _ 245 HARVARD TOTAL PROJECT MSR. _ 285 WORD PROCESSING Wordstar 2000 5259 WORDSTAR 2000 PLUS _ 309 GRAPHICS BOARDS AST Preview 5279 EVEREX Graphics Edge 5375 HERCULES Graphics Card 5325 Color Card 169 PLANTRONICS/FREOERICK Colorplus $385 STB Graphics Plus II 5315 TECMAR Graphics Master 5459 TSENG LABORATORIES Ultra Pak GRAPHICS BOARDS Iconl.) PARAIIISE SYSTEMS Multi ·Oisplay Card _ _ _$279 Modular Graph ics Card _ _ 289 Options A&B _ _ Lowelt Price MODEMS (INTERNAL) PROMETHEUS Pro-modem 1200B _ _ _ $319 QUADRAM Asher $395 HAYES Smartmodem 1200B,..""."." ",$385 NOVATION Smart-Cat Plus 5355 RACAL·VAIIIC Maxwell 1200PC MODEMS (INTERNAL) Icon!.) MUL Ti -FUNCTION BOARDS Iconl.) AST RESEARCH (cont.) VEN·TEL PCModem HaH Card _ _ 5439 Advantage (128kJ _ _ _ 5429 QUADRAM COMMUNICATIONS BOARDS Quadboard (64kJ _ _ _ 5259 AST AST-5251 -11 5699 STB AST·3780 749 Rio ·Plu s II (64k) $259 Rio Grande 375 DCA 275 IRMA Board 5949 Gra nde By te TECMAR QUADRAM Qu adlink 5449 Captain 5235 MULTI-FUNCTION BOARDS KEYBOARDS KEYTRONIC AST RESEARCH Six Pak Plu s (64k) _ _ _ 5259 5150 5159 Mega Plu s II (64 k) _ _ _ 275 5151 (Delu xe) 179 645 IIOPlus 11 135 5152 B WORD PROCESSING (cont.1 Words tar Pro Pac _ _ _ 5265 Words tar Pro Plus _ _ _ 345 WORD PERFECT {New Releasel_245 Microsoft Word 245 MULTIMATE 249 Volkswriter Deluxe _ _ _ 165 Peachtext 5000 199 Easywriter II/Spell er/Mailer _ 199 Edix & Wordix 255 Finalword 225 Samna III 325 Xy Write II Plus 255 Think Tank 125 pIs: wri te 85 MISCELLANEOUS UTILITIES PROKEY 3.0 589 Norton Utilities (New Releasel _ 65 SIDEKICK (unprotected) _ _ 65 Crosstalk XVl lNew Releasel __ 115 Sideways 45 Copy II PC 39 DESK ORGANIZER _ _ _ 129 "T1 °en l:J m 3: m 00 l:J-t m:I: m en l>l:J <en ZC C')m en COMPASS EXH. 1005 – Page 15 of 21 $125 105 105 29 249 155 135 140 155 Filevision tst Base lowest Price 179 105 245 95 GRAPHICS Animation Tool Kit 539 Oavinci Series (Buildings, Interiors, Landscapes) _ _ 1DO ASSIMILATION PROCESS Mac Daisywheel Connection _ _ __ 585 85 Mac Turbo Touch Home Accountant Plus Microsoft Chart Click Art Series (Graphics, Pub's, Letters, Effects) _ _ 125 LANGUAGES/UTILITIES Basic In terpreter(MS) MacFOflh (Level t ) MacFOfth (Level 2) Smooth ta lker Soflmaker II Softworks "c" PC to Mac & Back Hippo·C (Levell) MANAGEMENT /FINANCE Dollars & Sense Front Desk 539 49 59 69 $69 85 IHARDWARE for Macintosh I HAYES MICROCOM Smartmodem 300 Smartmodem 1200 CURTIS SURGE PROTECTOR Diamond Emerald Sapphire $95 95 135 115 119 275 65 115 General Financial Analysis MacManager MacProject Lowest Price Management Edge 125 Market Analyzer Lowe.t Price Market Manager Plu s(Dow Jones) _ _ 129 PeachtreeGtt 99 Sales Edg e 165 Straight Talk 49 Financi al Planning (Apropos) _ _ _ 60 Investment Planning (Apropos) _ _ __ 60 Communication s Edge 110 Negotia tion Edge 175 Tax Manager (Microlab) 110 Forecast 45 Electric Checkbook 50 MacCalendar 50 5205 5445 INTERMATRIX MacModern 5450 MICRON TECHNOLOGY Micron Eye Macphone 5325 KENSINGTON MacEnhancer 595 39 5170 NOVATION Cat 5375 PRINTERS· DIABLO 36· • 025·· 630·API 630-ECS· • EPSON L01S00 Parallel Interface JX·60 LX·60· • AX·l00 FX·60· • FX·l 00·· C. ITOH Prowriter 651 0 BPI Starwriler Al OP Slarwriler Fl 0·40P Printmaster Fl O·SSP JUKI 6100 6300 MANNESMANN TALLY Spirit 160 160 NEC 2030·· 2050·· 3530 3550 6850· • PinwriterP2 .... Pinwriler P3" • OKIDATA 182·IBM 84 ·IBM 192·IBM 93 ·IBM 24 10P QUAORAM auadiel QUME Sprint 11 /4 0· • Sprinlll /55· • Sprint 11 /9 0· · SILVEA REED SPREADSHEETS/ INTEGRA TED WORD PROCESSING Microsolt Word Think Tank (126k) Mac·Spell·Aight MacSpell + Hayden: Speller Think Tank (S12k) TECH (Linqui st) Megalorm 185 OPTIMUM MacTote 565 PROMETHIUS Promodem 1200 Mac Pak 5375 105 DISKS MICROSOFT 5159 300 Baud Modem Surge Supressor Aeal Estate Dev. (Comm. or A05 .) _ _ _ 70 Jazz Multiplan Microplanner TK'Solver Ensemble Ma xell3 W' (Box 01 10) Memorex 3'12" (B ox 01 10) 3M 3'11" (Box 01 1 535 39 I I I I I I I C I ~ n 0 MODEMS (External) $1229 619 1699 1799 S1199 79 599 265 399 379 599 5375 529 969 1249 5439 799 5279 579 849 $719 695 1329 1395 1949 675 895 $239 799 409 639 2295 $789 51299 1595 2199 P3S1 P3S1 Tractor 1340 CITIZEN MSP10 MSPIS MSP20 MSP2S .51375 165 779 5409 619 579 789 PRINTER/PLOTTERS· HOUSTON INSTRUMENT PC Plotter 5475 MONITORS· AMOEK Color 300 Color 500 Color 600 Color 71 0 12" Green 3DDG 12" Amber 300A 12" Amber 31 DA NEC JB 1201 JB 1205 JC 1215 JC 1216 PRINCETON GRAPHICS AGB HX·12 AGB SA·12 Scan Doubler Board (lor SA·12) _ Amber Ma x 12E UUADRAM Uuadchrome12 " auadsc reen 17" auadchrome II 14" Amberchrome 12 " TAXAN 100G 105A 121 122 210 420 440 5255 389 479 579 135 145 169 $159 149 239 399 $489 599 _ _ 185 185 $465 1595 465 165 5125 135 149 149 259 409 699 VIDEO TERMINALS· ADDS A·2 Green A·3 $465 $465 Smart II DUME OVT t 02·Green aVT t 02·Amber aVT 103·Green OVT 10 3·Amber OVT 108·Green OVT 106·Amber TELEVIDEO 600 600A 910 910 + 921 922 924 925 92SE WYSE 50 75 ZENITH Z·22 Z·29 Z·49 $695 5395 415 810 845 445 515 51220 975 420 555 445 750 635 695 595 $485 560 $465 595 Lowesl Price MUL TI-FUNCTION BOARDS AST RESEARCH Six Pak Plus (64k) IDEA IDEAmax 38 4 (64k) ORCHID Blossom (O 'k) STB Super Aio (64k) 5259 5259 $235 ,". $555 I 5205 445 719 "' •• 5475 635 -t 5379 355 ~ ,. 5439 635 I 5399 399 Z BACK-UP DEVICES ALLOY PC Ouick Tape SYSGEN Image C $1719 n $835 0 MOUSE INPUT DEVICES MOUSE SYSTEMS PC Mouse w/paint brush MICROSOFT Microsolt Mouse (Serial) Microsoft Mou se (Buss) $699 699 KENSINGTON MICROWARE Masterpiece CURTIS Diamond Emerald Sapphire Auby $425 (200ns) 64k (1 SOns) 256k $329 GRAPHICS BOAR OS AST Monograph plus MA SYSTEMS Peacock Color Board PERSYST Monochrome Card UUADRAM auadcolor I I 5375 I $139 ~ 149 139 SURGE PROTECTORS COMMUNICATIONS BOARDS AST AST·SNA ASTBSC PROMETHEU5 Pro·modem 1200 DUADRAM Ouadmodem 1100 HAYES Smartmodem 300 Srnartmodem 1200 Smartmodem 2400 NOVATION Access 1·2·3 Pro Ie ssiona I 2400 PRENTICE Popcom Xl 00 Pope om Cl 00 RACAL·VADIC Maxwell 1200 V 2400 PC VEN·TEL PC Modem 1200 1200 Plus $115 $39 49 59 69 MEMORY CHIPS $35 69 DISKETTES $245 $199 LOGICTRAK 5'I." 100 % Guaranleed, Doo~e side, double densily 10 per box 20 + boxe s 10·19 boxes 2·9 boxes 1 box I I •• I I I I I I I C "' E ~ I COMPASS EXH. 1005 – Page 16 of 21 CIRCUIT CELLAR eight jumper-selectable I/O blocks. With COOO selected and pin 17 of IC 14 (YO) jumpered to pin 6 of ICI7 (at JP3), the range wou ld be C800-C803. Using the XBYO operator in BASIC. data can be written to and read from this PIA. (You are probably more famil iar with PEEK and POKE . PEEK (C802H) is accomplished with XBY (C802H), and POKE C902H,A is XBY(C802H) = A) I won't belabor the discussion on the 8255. I have used it many times in Circuit Cellar projects and refer yo u to th e manufacturer's data sheets. The three parallel ports and ground are connected to a 26-pin flat ribboncable con nector. The outputs are TTL (transistor-transistor logic)-compatible. SERIAL I/O lWo serial ports are found on the BCC-52 board. One is for the console I/O terminal (lCS pins 10 and II): the other is an auxiliary serial output (lCS pin 8) frequ ently referred to as the .Mode Selection (goes with figure 5b) - Mode CE (20) OE (22) Read V/L Standby Pins -- Outputs (11-13, 15-19) PGM (27) VP• (1) Vee (28) V/L V/N Vee Vee Dout V/N x x Vee Vee High Z Program V/L x V/L Vpp Vee Din Program Verify V/L V/L V/N V pp Vee Dout V/N x x V pp Vee High Z PGM (27) V pp (1) Vee (28) Outputs (11-13, 15-19) Program Inhibit .Mode Selection (goes with figure 5c) Pins -CE - -- Mode (20) OE (22) Read V/L V/L V/N Vee Vee Dout Standby V/N x x Vee Vee 'High Z Program V/L x V/L V pp Vee Din Vee Dout Vee High Z Program Verify V/L V/L V/N V pp Program Inhibit V/N x x V pp .Mode Selection (goes with figure 5d) - WE CS, CS, x H x x x x L x Not Selected (Power Down) High Z H L H H Output Disabled High Z H L H L Read Dout L L H H L x : don't care L H OE L Mode 1/0 Pin High Z Din Write Din line-printer port. When using an 11.0592-megahertz (MHz) crystal. the console port does automatic datatran smission-rate determ inatio n on power-up (a preset data-transmission rate can alternatively be stored in EPROM as well) . I've used it at 19,200 bits per second (bps) with no degradation in operation. The BAUO[expr] statement is used to set the data-transmission rate for the line-printer port. In order for this statement to properly calculate the data-transmission rate, the crystal (special-fun ction operator-XTA L) must be correctly assigned (e.g .. XTA L = 9000000) . BASIC-52 assumes a crysta l value of 11.0592 MHz if no XTAL va lue is assigned. The main purpose of the software line-printer port is to let you make a hard copy of program listings and/or data. The co mmand LlST# and the statement PRINT# direct outputs to the software line-printer port. If the BAUO[expr] statement is not executed before a L1ST# or PRINT# command/statement is en tered , the output to the software line-printer port will be at about I bps, and it will take a long t(me to output something. It is necessary to assign a data-transmission rate to the software lineprinter port before using L1ST# or PRINT#. The maximum data-transmission rate that can be assigned by the BAUO[exp r] statement depends on the crystal. but 4800 bps is a reasonable maximum rate. MC 1488 and 1489 level shifters (lCs 6 and 7) convert the TTL levels from the console and line-printer ports to RS-232C (The TTL serial lines are also connected to the bus to allow use of the Term-Mite smart-terminal board without RS-2 32C voltages.) The BCC-52 board requires only about 200 milliamperes (mA) at + 5 volts (V) to function . The voltage required for external RS-232C communication is ± 12 V: that required for EPROM programming is + 21 V EPROM PROGRAMMER One of the more unique and powerfu l features of the BCC-52 board is its (continued) AUGUST 1985 • BY T E 113 COMPASS EXH. 1005 – Page 17 of 21 Inquiry 50 CIRCUIT CELLAR An IEEE-488 interface for all IBM-PC's and COMPATIBLES VERSATILE Easy-to-use commands for all IEEE-488 (GP-IB, HP-IB) functions. Resident firmware supports BASIC, Pascal, C, and FORTRAN. Emulates Hewlett-Packard controller functions and graphics language statements. Supports Tektronix ® Standard Codes and Formats. Print listings, plot graphs, and use Lotus 123™ with IEEE-488 peripherals. FAST Direct memory transfer rates to 800K bytes/second. PROFESSIONAL Clear and concise documentation includes a complete tutorial, programming examples, and application programs. $395.00 complete. There are no additional software charges. Find out why PCQ0488 is the first choice of over 500 companies. C(W CAPITAL EQllPMENT CORP. 10 Evergreen Avenue Burl ington, MA. 01803 (617) 273-1818 IBM is a trademark of Internatio nal Business Machines Corp. Lotu s 123 is a tradema rk of Lotus Deve lopment. Teklranix is a trad ema rk of Teklronix, Inc. 114 ability to execute and save programs in an EPROM. The 8052AH chip actually generates all the timing signals needed to program 2764/128 EPROMs. Saving programs in EPROMs is a much more attractive and reliable alternative to cassette tape. especially in control and/or noisy environments. The entire EPROM programming circuitry consists of two 7407 opencollector drivers and a single transistor ci rcuit that switches between + 5 V and 21 V (CR2 . connected to the collector of the transistor should be a germanium diode like a I N270). Port I. bit 4 (IC5 pin 5) is used to provide a 1- or 50-millisecond (ms) programming pulse. The length of the pulse is determined by whether we are programming Intel fast-program EPROMs or generic 2764s and 27128s. BASIC-52 calculates the length of the pulse from the assigned crysta l value. The accuracy of this pulse is within 10 processor clock cycles. This pin is normally in a logical high (I) state. It is asserted low (0) to program the EPROMs. Port I. bit 5 (lC5 pin 6) is used to enable the EPROM programming voltage. This pin is normally in a logical high (I) state. Prior to the EPROM programming operation. this pin is brought to a logical low (0) state. and it is used to turn on the high voltage (21 V) required to program the EPROMs on or off. BASIC-52 saves several programs on a single EPROM . In fact. it can save as many programs as the size of the EPROM permits. The programs are stored sequentially in the EPROM. and any program can be retrieved and executed. This sequential storage of programs is referred to as the EPROM file. The following commands permit you to generate and manipulate the EPROM file. RAM and ROM [integer] tell the BASIC-52 interpreter whether to select the current program (the one that will be displayed during a LlST# command and executed when RUN is typed) out of RAM or EPROM. The RAM address is assumed to be 200 (512 decimal) . and the EPROM address begins at 80 10 (32 .784 decimal) . When RAM is entered. BASIC-52 selects the current program from RAM. This is usually considered the normal mode of operation and is the mode that most users employ to interact with th e command interpreter. When ROM [integer] is entered. BASIC-52 selects the current program out of EPROM. If no integer is typed after the ROM command (i.e .. ROM(cr)) . BASIC-52 defaults to ROM 1 . Since the programs are stored sequentially in EPROM . the integer following the ROM command selects which program you want to run or list. If you attempt to select a program that does not exist (i.e.. you type in ROM 8 and only six programs are stored in the EPROM) . the Message Error: Prom Mode will be displayed. The error is nondestructive. and you can retype the correct command. BASIC-52 does not transfer the program from EPROM to RAM when the · ROM mode is selected. and you cannot edit a program in ROM. Attempting to do so will result in an error message. Since the ROM command does not transfer a program to RAM. it is possible to have different programs in ROM and RAM Simultaneously. You can flip back and forth between the two modes at any time. Another benefit of not transferring a program to RAM is that all the RAM can be used for variable storage if the program is stored in EPROM. The systemco ntrol values. MTOP and FREE. always refer to RAM. The XFER (transfer) command transfers the currently selected program in EPROM to RAM and then selects the RAM mode. After the XFER command is executed. you can edit the program in the same manner any RAM program can be edited. The PROG command programs the resident EPROM with the current program (this is the only time th at the + 2I-V programming voltage needs to be applied). The current program can reside in either RAM or EPROM. After PROG is typed. BASIC-52 displays the number in the EPROM file the program will occupy. Normally. after power is applied to BY T E • AUGUST 1985 COMPASS EXH. 1005 – Page 18 of 21 CIRCUIT CELLAR the BASIC-52 device. you must type a space character to initialize the 8052AH's console port. As a convenience. BASIC-52 contains a PROG1 command. This command programs the resident EPROM with the datatransmission-rate information. The next time the MCS BASIC-52 device is powered up. i.e.. reset. the chip will read this information and initialize the serial port with the stored data-transmission rate. The sign-on message will be sent to the console immediately after the BASIC-52 device completes its reset sequence. The space character no longer needs to be typed . The PROG2 command does everything the PROG1 command does. but instead of signing on and entering the command mode. the BCC-52 board immediately begins executing the first program stored in the resident EPROM. By using the PROG2 command. it is possible to run a program from a reset condition and never connect the BCC-52 board to a console. In essence. saving PROG2 information is equivalent to typing ROM 1 and RUN in sequence. This is ideal for control applications. where it is not always possible to have a terminal present. In addition. this feature lets you write a special initialization sequence in BASIC or assembly language and generate a custom sign-on message for specific applications. POWERING UP THE BOARD The best way to check out the BCC-52 board is to run it with the minimum hardware first. With only ICs I. 2. 4-7. 9-11 . 13. and I 5 installed. we have an 8K-byte RAM-only system. After applying power. BASIC-52 clears the internal 8052AH memory; initializes the internal registers and pointers; and tests. clears. and sizes the external memory. BASIC-52 then assigns the top of external RAM to the system-control value (MTOP) and uses this number as the random-number seed. BASIC52 assigns the default-crystal value. 11 .0592 MHz. to the system-control value (XTAL) and uses this default value to calcu late all time-dependent functions. like the EPROM program- ming timer and the interrupt-driven real-time clock. Finally. BASIC-52 checks external memory location 8000 to see if the data-transmissionrate information is stored. If the datatransmission rate is stored. BASIC-52 initializes the data-transmission-rate generator (the 8052AH 's specialfunction register. T2CON) with this information and signs on. If not. BASIC52 interrogates the serial-port input and waits for a space character to be typed (automatic data-transmissionrate detection) . If you have entered nothing on the console device. BASIC-52 will appear inoperative to the uninitiated. Simply type a space. and the console device should display the followi ng: *MCS-52(tm) BASIC Vx.x* READY > To see if the processor is operating correctly. we type the follOWing: >PRINT XTAL, TMOD, TCON , T2CON BASIC-52 should respond with the control and special-function values: 11059200 16 244 52 > A WORD ABOUT THE BASIC As I mentioned earlier. BASIC-52 is oriented toward process control and is significantly more powerful than a tiny BASIC. Since most of you are familiar with BASIC. I will not describe individual instructions like DO . .. WHILE and FOR ... NEXT. Instead. I'd like to point out the pertinent features that demonstrate the exceptional small-package performance of the BCC-52 board. MCS BASIC-52 contains a minimumlevel line editor. Once a line is entered. you can not change the line without retyping it. However. it is possible to delete characters while a line is in the process of being entered. This is done by inserting a rubout or delete character (7F). The rubout character will cause the last character entered to be erased from the text input buffer. Additionally. preSSing Control-D will cause the entire line to be erased. V ARIABLES AND EXPRESSIONS The range of numbers that can be represented in BASIC-52 (in decimal) is + IE-127 to +0.99999999E+ 127. It has eight digits of significance. Numbers are internally rounded to fit this precision. Numbers can be entered and displayed in four formats: integer. decimal. hexadecimal. and exponential. for example. 129. 34 .98. OA6EH, 1.23456E+3. Integers are numbers that range from -32.768 to +32.767 decimal. All integers can be entered in either decimal or hexadecimal format. A hexadecimal number is indicated by placing the letter " H" after the number. When an operator like AND requires an integer, BASIC-52 will truncate the fraction portion of the number so that it will fit the integer format. All line numbers are integers. A variable can be either a letter (e.g. A. X. I). a letter followed by a number (e.g., 01. T7, L3). a letter followed by a one-dimensioned expression (e.g., )(4). G(A+6), I(IO*SIN(X))). or a letter followed by a number followed by a one-dimensioned expression (e.g., AI(8). P7(DBY(9)). W8(A+B)). Variables with a one-dimensioned expression are called dimensioned or arrayed variables. Variables that involve only a letter or a letter and a number are called scalar variables. BASIC-52 allocates variables in a static manner. Each time a variable is used. BASIC-52 allocates 8 bytes specifically for that variable. This memory cannot be deallocated on a variable-by-variable basis. If you execute a statement like 0=3, later on you cannot tell BASIC-52 that the variable 0 no longer exists and free up the 8 bytes of memory that belong to O. You can clear the memory allocated to variables with a CLEAR statement. Relative to a dimensioned variable, it takes BASIC-52 much less time to find a scalar variable. That's because a scalar variable has no expression to (continued) AUGUST 1985 • BY T E 115 COMPASS EXH. 1005 – Page 19 of 21 CIRCU IT CELLAR evaluate. If you want to make a program run as fast as possible. use dimensioned va riables o nly when you have to. Use sca lar variables for intermediate variables. then assign th e final result to a dimensioned variable. An expression is a logical mathematical term that involves operators (both unary and dyadic). constants. and variables. Expressions can be simple or quite complex. e.g.. 12 * EXP(A)/IOO. H(I)+ 55. or (SIN(A)* SIN(A)+COS(A)*COS(A))/2 A standalone variable Ivarl or constant lconstl is also considered an expression. REAL-TIME OPERATION After RUN is typed. all variables are set equal to zero. all BASIC-evoked interrupts are cleared. and program execution begins with the first line number of the selected program. The RUN command and the GOTO statement are the only ways you can execute a program in the command mode. Program execution ca n be terminated at any time by typing a Control-C on the console device. Unlike some BASIC interpreters that allow a line number to follow the RUN command (e.g .. RUN 100). BASIC-52 does not permit such a variation on the RUN command. Execution always begins with the first line number. To obtain the same function ality as the RUN[ln num] . use GOTO[ln num] in the direct mode. The CLOCK1 statement enables the software real-ti me clock in BASIC-52. The special-fu nction operator time is incremented o nce every 5 ms after th e CLOCK1 statement has been executed. The CLOCK1 statement uses timer/counter 0 in the 13-bit mode to generate an interrupt once every 5 ms. Because of thi s. the specialfun ction operator time has a resolution of 5 ms. BASIC-52 automatically calculates the proper reload value for timer/ counter 0 after the crystal va lue has been assigned (i.e.. XTAL = value. If no crystal va lu e is assigned. MCS BASIC-52 assumes a value of 110592 MHz). The special-function operator time cou nts from 0 to 65.535.995 seconds. After reaching a count of 65.535.995 seconds. time overfl ows back to a count of O. The interrupts associated with the CLOCK1 statement cause BASIC programs to run at about 99.6 percent of normal speed. That means that the interrupt hancl,ling for the real-tim eclock feature consumes only about 0.4 percent of the total processor time. This is small interrupt overhead. The CLOCKO statement disables or turns off the real-time-c1ock feature. The TIME statement is used to retrieve and/or assign a value to the real-time clock after the CLOCK1 statement enables it. TIME = 5 presets the real-time clock to 5 seconds. while ONTIME 30,100 causes the program to jump to line 100 when the real-time clock reaches 30 seconds. Finally. PWM might be useful to literally add bells and whistles to your next control application . PWM stands for pulse-width modulation. It generates a user-defined pulse sequence on IC5 pin 3. The statement appears as PWM 50,50,100. The first expression following PWM is the number of clock cycles the pulse will remain high . A clock cycle is equal to 1.085 microseconds (110592-MHz crystal). The second expression is the number of clock cycles the pulse will remain low; the third expression is the total number of cycles you want to output. All expressions in the PWM statement must be valid integers. and the minimum value for the first two expressio ns is decimal 20. These are only a few of the 103 commands. statements. and operato rs in BASIC-52. The User's Manual describes them in detaii. IN CONCWSION Photo 3: Tlie BCC-52 and Term-Mite boards can be combined witli otlier BCC-series periplieral devices to create control and data-acquisition systems. Here. tliey are combined witli four BCC-13 8-cliannel. 8-bit A/D converter boards to make a 32-cliannel dataacquisition system. 116 This was a hard article for me to write. but not for any of the reasons you might think. So much is built into this compact board that I am impatient to use it. and it was hard to sit down and write. Unfortunately. documentation is the drudge work side of engineering. It won't take long to put the BCC-52 board into some serious applications. It might be a Si ngle-board computer. but its configuration does not stop with a single board. The BCC-52 is BCC-series Z8-bus-compatible and ca n be expanded using many o f the B Y T E • AUGUST 198 5 COMPASS EXH. 1005 – Page 20 of 21 ~ ';iIMd t6 ?U«t?~ riuadaJte 1/4. ~~ 'P1tia4 ~! CIRCU IT CELLAR 1/4.';iI~~ projects and boards I've already designed For example, monitoring temperatures, controlling motors and heaters, and reporting events are adequately handled by existing power I/O. serial and parallel expansion, and A/D co nverter boards (see photo 3), This BASIC-52 project has just started , Because of its power, I am inspi red to further develop applications and peripheral support devices, While a specific time has not been chosen, I'll be back in a few month s with the next chapter on the BCC-52, CIRCUIT CELLAR FEEDBACK This month's feedback is on page 376, NEXT MONTH Go beyond the Z80 wi th the Circu it Cellar SB 180 computer. _ Diagrams and data perrinelit to the 8052A H BASIC chip are reprinted coLlrlesy of lhe IIile! Corporation, Ed itor 's Note: Steve o ften refers to previ o us Circ uit Cellar articles, Most of these past articles are available in book form from BYTE Books, McGraw-Hili Book Company. POB 400, Hightstown, NI 08250, Ciarcia's Circuit Cellar, Volume I cove rs articles in BYTE from September 1977 throug h November 1978, Volume II covers December 1978 through lune 1980, Volume III covers l uly 1980 through December 1981. VolUll1e IV covers l anuary 1982 through lun e 1983, The fo llowing items a re available from The Micromint Inc. 56 1 Willow Ave, Ceda rhurst. NY 11516 1800) 645-3479 for orders 1203) 871 -6 170 for information I. BCC-52 board with 8K bytes of RAM , Assembled and tested with operator's manual and MCS BASIC-52 User's Manual, , , ,5239 2, Same as item I in kit form, , , , , ,5209 3, 8052A H-BAS IC chip with MCS BASIC-52 User's Manual, , , , , , , , , , , , , , , , , , , , ,S80 Please include 54 for shipping and handling in the continental Uni ted States, 58 elsew here, New York residents p lease in clude 8 percent sales tax, Connecticut re sid e nts please include 7,5 percent sa les tax, To receive a complete list of Ciarcia's Circuit Cellar proiect kits, circle 100 on the reade r-service inquiry card at the back o f the magazine. BUSINESS WORDSTAR PROPAK SYMPHONY $238 $419 AID Typequick 85 ALPHA SOFTWARE Data Base Manager 2 295 ANDERSON·BELL Abstat 395 ASHTON·TATE o Base II 495 D Base III 695 Framework 695 Friday 295 ATI Training Word Star 75 Training dBase III 75 BPI General Accounting 595 BORLAND INTERNATIONAL Superkey 54 Turbo Graph 54 Toolbox 54 Turbo Pascal 70 COEX Advanced Lotus 1-2·3 70 CHANG LABS Rags to Riches Ledger 99 CONDOR Condor 3 650 CONTINENTAL SOFTWARE Home Accountant Plus 150 DIGITAL MARKETING Writers Pak 250 Milestone (PC) 250 150 Datebook II Proofreader 50 DIGITAL RESEARCH Concurrent PC DOS 295 ENERTRONICS Energraphics 350 Plotter Option 100 FOX & GELLER DGraph 295 dUtil 99 Quickcode II or III 295 69 169 267 CALL CALL CALL CALL 45 45 348 42 42 35 52 45 79 259 89 165 t65 98 38 209 239 55 145 58 139 SOFTWARE SIDEKICK (C.P.) SUPERCALC $29 $164 3 FUNK Sideways HARVARD SOFTWARE Harvard Project Mgr Harvard Total Project Mgr HUMAN EDGE Mind Probe KOALA Touch Tablet (PC) MacVision LEXISOFT Spellbinder LlFETREE Volkswriter Deluxe LlVtNG VIDEO TEXT tNC. Think Tank (IBM) Think Tank (Mac) MOBS Knowledgeman K Paint K Graph MECA Managing Your Money MICROGRAFX PC Draw MICROPRO WordStar SpellS tar CorrectStar MailMerge InfoStar WordS tar 2000 WordS tar 2000 Plus MICRORIM R Base 4000 R Base 5000 Extended Report Writer Clout MfCROSOFT Multiplan Chart (MAC) Project MICROSTUFF Crosstalk 60 39 395 495 219 275 50 35 150 400 95 249 495 239 295 158 195 245 99 149 500 100 225 234 65 145 199 119 395 289 350 99 145 99 250 495 595 178 55 99 55 199 235 295 495 700 150 250 239 385 t09 t28 195 125 250 138 99 179 195 98 WORD PERFECT LOTUS 1-2-3 $235 $299 MONOGRAM Dollars and Sense (IBM) 179 Dollars and Sense IMac) 149 MULTIMATE INTERNATIONAL Multimate 495 OASIS Word Plus 150 Punctuation and Style 150 PEACHTREE Peachtext 5000 425 Business Graphics System 295 Peachpak 4 395 PETER NORTON Norton Utilities (Vers, 3.0) 100 PRENTICE-HALL Execuvision 395 PRO TEM SOFTWARE Notebook II 189 Footnote 99 ROSESOFT Pro Key 130 SAMNA Word III 550 SORCIM SuperCalc 2 295 Super Project 395 Easy System II 395 General Ledger 595 Accounts Payable 595 SOFTWARE PRODUCTS INT'L Open Access 695 SOFTWARE PUBLISHING PFS File or Write 140 SSI Word Perfect 495 TelOS Filevision (Mac) 195 TYLOG dBase Window 249 WARNER SOFTWARE INC. The Desk Organizer 195 WOOLF SYSTEMS Move It 150 109 99 231 105 95 185 219 199 58 289 123 84 69 279 149 209 184 289 289 349 85 249 119 149 129 85 HARDWARE SECTION AMOEK MONITORS (Amber) (Color) AST Megaplus 64K Six Pac Plus 64K 230 349 t38 243 395 395 258 238 HAYES Smartmodem 1200 Smartmodem 1200B Smartmodem 2400 HERCULES Graphic Card Color Card 599 549 B99 423 375 695 499 245 318 169 PARADISE Multidisplay Modular Graphics STB Graph Plus 2 Rio Plus 2 459 398 290 289 395 395 229 229 TO ORDER CALL TOLL-FREE: TERMS : • Call for shipping charges and support policies • Fu ll guarantee against manufacturers defects • Allow 3 weeks for checks to clear • Prices may change • Call for availability • No cash refunds' Due 10 our low prices, all sales final. Inquiry 114 (800) 235-3020 (USA) (800) 235-3021 (CA) (415) 382-9085 ! 1, f;t;t =ca-a BUSINESS SO FTWARE 448 IGNACIO BLVD" STE: 332 NOVATO, CA 94947 • CALL FOR OUR FREE CATALOG • SAME DAY SHIPMENT ON MOST ORDERS • Prompt UPS service • Authorized purchase orders accepted • Dealer, institutional and quantity discounts available • No surcharge for credit card purchases • VISA & Mastercard accepted • COD AUGUST 1985 • BY T E 117 COMPASS EXH. 1005 – Page 21 of 21