A SERIOUS X·l2• IN A DESKTOP PACKAGE

Multiprocessor Technology - Combination of 8, 16 and 32 bit types

1.0 Megabyte Memory- Insures no limitation on programs

"Winchester" Disk System- Fast response, large storage capacity

UniFiex · - The standard of comparison

Hardware Floating Point - Unmatched speed in a small system

Up to Three Terminals - Instant expansion

• T r�demark uf Technical Synems :;onsultanu

SOUTHWEST TECHNICAL PRODUCTS CORPORATION

219 W. RHAPSODY

SAN ANTONIO, TEXAS 78216 (512) 344-0241 Only 's OS-9 Operating System Covers the Entire 68000 Spectrum

MICROWARE'S OS-9

UNIX

ROM·BASED fi.OPPY..OISK BASED DID-lASED CONTROL PERSONAL INDUSTRIAL SYSTEMS smEMS

HAND-HELD HARDWAREiSOFT'MRE ..,._SCALE COMPUTERS DEVELOPMENT SYSTEMS ._...... IYIIIMI SMALL SYSTEMS LARIE SYSTEMS

Is complicated software and expensive hardware VAX an d PDP-II mal-.c lt>ordinJtcd UnaxOS·l) ..ottw.tn• d w ptn keeping you back from ? Look mto 0$-ll the c Jo ent J rfc.J�Uft! orc.·rating �y�tcm fl'(lm Macrnnwnt walh mulh ll"i� overhead .md - AN OS-9 EXCLUSIVE c<,mplt•\aiy. Ct,mprd,cn�I\C 'urp"rt 1<)1moduiM .,oilware put<. os.o •� wr�Jhlt•, delivers outstanding J .JheJd of II mulliplit� 0�-1.? anexpt'n'l\'t' anJ t-wncrJti.m otht•r upt•t.lhng.,y,ft'm!>. p<>rlormo�nl�' on .111y o,tzt• )y�ll'll1 1h(' OS-" £'Xt'tu llw b progrJtntTWr pnlliudt\'&lyand tnl'tnoryC'tial&Cn• y. ApplalJ· mwh )tnillll•t:1nd Iat mnrl· l'f- llon 'l'ltwan• can bt• buill lh t s trom andivadually lcst.thlc lllll'lll J n Unax bt"<.:.llN' a Key OS-9 Features At A Glance �"nltl'n 111 ta't C mcludin� • Compact (16Kl ROMable executive written In assembly �rmhly IJn�uagt•, ma�ang tl st,Jnd.trd ''librarr'' module!-. language adt·allt1r criticaln•al-linw a1 · The nwJuiJr 'lrudun.' ll'l� • User "shell" and complete utility set wrrtten In C < H'UlO· plication� ()$.U (Jn tun on }'Oll U'tUtnlll' Jnd • C· level compatibility with Unix for spt'{tli{ J �ro.11l r,m�t' nl 8 lo J2 bit fi�url.'t)S.Il h.tn.l· • Full Multitasking/multiuser capabilities ea<.il\ '�·-l <'m'ba.,<·d on the o8000 ware and qwd,ly. • Modular design • extremely easy to adapt. modify, or M osou f.unily MI'U" fn,m A SYSTEM WITH expand ROM-b.�t·d mdu�tra.al Wra· A PROVEN • Unix·type tree structured lrt,llt-r.. up to IM�o�c rnultatNr • Rugged "crash•proof' file structure with record locking TRACK RECORD '"''"''· • Works well with or ROM-based systems On{C an undf·r�round OS-9'S OUTSTANDING • Uses hardware or software memory management d,w.it. OS ..:) i.,ncm ,, �olid C COMPTLER IS Q • High performance c. Pascal, Basic and Cobol hit Since 1980 OS has YOUR BRIDGE TO UNlX bt•t•n pmt£>d lu lWt•r a hun· MamM'JI\'!t ClOill f'lll'f k•:h drl.'d o800 and o8000 noltl!olY '" antlthcr OS.0 adv,mt.:J�t· Th('wmpil1•r prcxiuc� ��·,tt?m� undl.'r liccrN'to sonw ell thr biAAt"•l nam('<> m the c\trt:mely lJ,l, tOnlpolLI anJ RO;\Iablt• nx1e \nu \.oln N�ily husint...S . ()S.Qh.!'> bt·en imb�·ddcd an lllll11lHlll�' COn,unWr, Jrvcltlp ,md pMl sy:.tcm or arpla�:atinn o,ollw.�rc hac!.. aml andustraal amJ 0[:�1 pro..lucto; and i<> suppmlctll>\' m.:�ny t�,rth to �toJnd.utf Um'{sy1-lem�. Cn��·C

MICROWARE SYSTEMS CORPORATION Mlcrowa� Japiln, ltd t8o6 NW I 14th Street 3·8·9 Buakl, lchJkawa City Des Moines. low.a 50322 Chib• 272·01, Japan Phont' 515·224-1929 Phone 0473(2814493 Telex 910.520.2535 Telex 299·3122

0)4 • trJd<-m.l I"' Mo r'" •,.. •nd fl. I''• >r�l ln" • 11 I'""'' 1\o ll�b. 68 Mtero Journal ' • ' MICRO • JOURN�L

Por tlons of the text for 168' Micro Journal were Send All Correspondence To: prepared using the following furnished Hard/Software:

CIJFUTERS - HNI*ARE Oallplltw ,..lshl!tg O..fer Southwest Techlncal Products W .. cro Jo.-1\81 219 w. Rh psodY o TX 5900 Seith Rd. Son AntonioOf.'F, 78216 Cesse�a S09 - 5/8 Disk - COSI - 8212W - Sprint ) Printer Hixson. Tn. :5'7}0

GII-IJX Inc. Phone 1615> 842-4600 or Telex 558 414 PVT BTH 1 ))7 West )7th Place 60609 Chlcogc? IL b'f Oallplltw Super Mainframe - OS9 - FLEX - Assorted Hardware eop,rlghted 1985 Publishing Inc.

-val>PROCE�S EDillRS 68' Micro Journal Is publl shed 12 times o yeor by Technical 9-(stems Consultants, Inc • Computer Publl shl ng Inc. Second Ooss Postage Pold 111 Praildence fbad I Chooel Hill NC 27514 SSN 0194-5025 ot Hixson, Tn. ond additional entries. FLEX - Edftor - Text Processor Postmaster: send form )597 to 68' Micro Jo�rnol, POO 849 Hixson, Tn. )7)4 ). Greet Plolns Computer Co., Inc. PO Box 916 Stbscrlptlon Rates Idaho Foils, 10 8)401 Stylogroph - MDII 14erge - Spell 1 Year $24.5 0 U.S.A., Conodo & M&xlco Add S5.50 o 11 S4rfece, Edl1orlSr .a l �ff Yeor. Other Foreign Add S12 Year for Don W111 1oms Publisher Alr.ell Add S:56 11 Y..-. Must be In u.s. clrf"eftCYYI L orr y E. Williams Executive Editor Tom E . Wlllloms Production Editor lteas or Publl�tlon Robert L. N!ly Technical Ed I tor .trtlc:les Fer

�l•lstratiYe �ff Articles submitted for publication should Include �otory fbbertson Office Monoger authors name, address, telephone number ond dote. Penny W illiams Subscript ions Articles should be on either 5 or 8 Inch disk In Chr I �tIne Kocher kcountl ng STYLOGRAPH or TSC Editor format with ).5 h•ch Q,l­ eo.ttrlbvtiRg Edl1ors wldth. be t
for proper reductions. Please Use A Or. Theo Elbert Car l Mann Dark Rlbbonll No Blue lnklll Single space on 8X11 Or. E. M. Pass bond Ibn Vo I ghts No Philip Lucido or better grade paper. hond written articles accepted. Disks should be In FLEX2 6800 or FLEX9 S'peclal Technl�l Pr'Oject'a 6809 any 'olerslon or OS-9 ony 'olerslon. CJ oy Abrams K6AEP The follow I n·g TSC Text Processor CO!Miands

Macintosh Author Applications •• 28 Adlertlslng Rates FLEX Routines,More Applications 29 Hoglund Commercial I slers please contact 68' More on the 512K Mac •.••....••• 30 Henriquez advert Micro Jo�rnol advertising deportment for c�rrent rote sheet 1 • · • • · • • · · • · • • • • • • · • · • Bi t S i cer 31 Hoffman ond re�lrements. Software Exchange System ••••.•• 42 Gilchrist Qasslfled �tfsl��g Diskette Inventory •••••••.••••• 45 Hassen

••••••.•••••••.••. Pleasant PL/9 46 Lester All classified ads must be non-c ommercial. Minimum of

.• r 68' Micro Articles 1984 Index 48 S7. 50 for fi st 20 .,.cis and • )5 per word after 20. be peld • aMftOe· It> CMJ CoCo Index Of Articles ••••• 49 All classlfleds must I classified ads occ,epted oter the phone. Bit Bucket •••••••••••••.••••••• 51 Classified Advertising •.•.••••• 59

2 '68' Micro Journal � GIMIXSTATE OF THE ART 6809 SYSTEMS FOR THE SERIOUS USER.

� For the user who appreciates the need for a ll0 structured system using STATIC RAM GIMIX has 19MB or high performance and powered by a ferro resonant constant g --�_;:....::::; ,·-· ,, \ .;,;..._ ' - ; voltage transformer. • ...... 47MB Wlnc:hester Drive Systems ancllor 3 .:.,;..;\._.;.· -:-----:or-_..,., ,.a;· -'\JS. . .;::•·· . ; ' noppy Disk Drive Systems. l� •. bothFLEX and OS-9 or Mullluser systems for 11\, = . .- . - -: -�·.. -� : J ·'· . . use with UniF'LEX or OS-9 ...... -- -�- · - ..· --· • ..,. . '}'� · . --.. �--�·;:. \ ;---.,;;. , GIMIX verstons of OS9 and UruFLEX Ml " . -�-- , clude mamtenance and support by Micro­ln­ .... . •. , , ware (90 days) and TSC (I year). Mamie- :\>::{���-;�II����- nance and supportafter this penod \,i1 ' are available at extra � �rtiiit cost . . ,-t-_ (NOI'E:support this and � maintenance ts only for use with approved For the ultimate m performance. the Un1que GMX 6809 CPUUI, GIMIX hardware) using etther OS-9-GMXDI or UniFLEX GMXIII (available shortly). gives protection to the system and other users from crashes caused by defective user programs. e.g. Dunng program development. a programmer who crashes goes back to the shell or the debugger. while the other are not even GIMIX6809 systems aware anything occurred. users support bve predorrunanl operating systems.

OS-9 GMX Ul, The intelligent senal VO processor boards signifi­ camly reduce system overhead by handling rou- OS-9 GMX II, tine VO func­ ltons. 'here­ UnlFLEX, by freemg up the CPU for OS-9 GMX I, runnhosting user FLEX programs. Thls speeds up system per­ and a Wide vanety of languages formance and allows and development software multiple termmals to be used at 19.21< baud. Whatever your application software development. instrumentation. process control educational. SCientific or busmess. whether you need smgle or multi-user BASIC-Q9 and OS-9 are 111demar1cso1Mctoware Corp and MOTOROLA, Inc capabllities. GlMIX has hardware and the andUruR.EX are tradlmirlcs of Tecluur.al � Inc Syst!mS operating systems to gel the JOb done R.EXGIMIX, GHOST. GMX ClASSY CliASSIS. are tra0em.lr1csConsYIUJ11S. olGIMIX. Inc reliably

Please phone or wnle you need further info rmation -...... ---- �/ u w l.il InC. .-1mIX 133 3 • (312) 927-5510 • 910-221-4055 7 7 WEST th PLACE ClnCAGO, ILLINOIS 60609• TWX c::1913 GBQX lne. Get the most out of BASI

The OFFICIAL BASIC09 TOUR MICROWARE ... r------1 is skillfully written in a friend· I GUIDE Mlcroware Corporation The I Systems ly and easy-to-read style. Just OFFICIAL BASIC09 TOUR I 1866 N.W. 114ttl Street GUIDE comes from the people who I perfect for those new to computers wrote BASIC09. As the leader in I Des Moines, Iowa 50322 and to BASIC09. It's also a valuable I 6809 system software, we at I Telephone 515/224-1929 reference book for programmers, I MICROWARE care about our users I Telex 910.520.2535 engineers, students and hobbyists, I and want to help you get the most I providing an in-depth look at from our products. Please send copiesol the BASIC09 plus an overview of the S.alcOt Tour Guidebook at $18.95 OS-9 operating system. Compre­ It's Easy to Order. each Add $2.00lor UPS shipping in hensive reference sections on the U.S. Of SS.OO lor overseasair mall BASIC09 and OS-9 commands are Phone orders are accepted from per book. Iowa residents add 4% also included. MasterCard or VISA cardholders or sales tax. The book "maps" out your route for COD shipment. You can also Name through the Mercedes of ... order by mail using the coupon BASIC09 and puts you in the driv­ below. Quantity discounts are Address ------er's seat in no time. Fasten your available to educational organiza· C1ty seatbelt, sit back and enjoy the ride tions and dealers. For further lnfor· ------to perfecting your programming mation contact Mlcroware. State ---_.LIP•---- skills. 0 I have enclosed a check 0 Charge to my bank card: MasterCard 0 VISA 0

Card Number ----- Sprcinlrsls 111 sy:.lmr softwnrt for bB·fnnuly microproct:.sor> SIIICt I tJ77. Expiration,______OS-9 and BASIC09 are trademarks of MICroware and Motorola ------�

4 '68' MlcroJournal FLEX TM USER NOTES THE 6800-6809 BOOK

By: Ronald W. Anderson As published in 68 MICRO JOURNAL'"

The publishers of 68 MICRO JOURNAL are proud to announce the publication of Ron Anderson's FLEX USER NOTES, in bookform. This popularmonthly column has beena regular feature in 68 MICRO JOURNAL SINCE 1979. It has earnedthe respect of thousands of 68 MICRO JOURNAL readers over the years. In fact, Ron's column has been described as the 'Bible' for 68XX users, by some of the world's leading professionals. Now all his columns are being published, in whole, as the most needed and popular 68XX book available. Over the years Ron's column has been one of the most popular in 68 MICRO JOURNAL And of course 68 MICRO JOURNAL is the most popular 68XX magazine published.

As a SPECIAL BONUS a lithe source listing in the book will be available on disk for the low price of: FLEX·� format only-5" $12.95- 8" $16.95 plus $2.50 shipping and handling, if ordered with the book. If ordered separately the price of the disks will be: 5" $17.95- 8" $19 .95 plus $2.50 shipping and handling.

Listed below are a few of the TEXT files included in the book and on diskette.

All TEXT files in the book are on the disks.

LOGO.C1 File load program to offset memory - ASM PIC MEMOVE.C1 Memory move program - ASM PIC OUMP.Cl Printer dump program - uses LOGO- ASM PIC SUBTEST.C1 Simulation of 6800 code to 6809. show differences- ASM TERMEM.C2 Modem input to disk (or other port input to disk)- ASM M.C2 Output a file to modem (or another port) - ASM PRINT.C3 Parallel (enhanced) printer driver- ASM MOOEM.C2 TIL output to CRT and modem (or other port)- ASM SCIPKG.C1 Scientific math routines- PASCAL U.C4 Mini-monitor. disk resident, many useful functions- ASM PRINT.C4 Parallel printer driver, without PFLAG- ASM SET.C5 Set printer modes - ASM

SETBAS1.C5 Set printer modes - A-BASIC (And many more)

"Over 30 TEXT files included in ASM (assembler)- PASCAL- PIC (position independent code) TSC BASIC-C. etc.

NOTE: .C1 .. C2. etc.= Chapter 1, Chapter 2. etc.

This will be a limited run and we cannot guarantee that supplies will last long. Order n Foreign Orders Add $4.50 SIH

Softcover- Large Format

Book only: $7.95 + $2.50 S/H

With disk: 5" $20.90 + $2.50 SIH

With disk: 8" $22.90 + $2.50 S/H

See your local SSO dealer/bookstore or order direct from: Computer Publishing Inc. 5900 Cassandra Smith Rd. Hixson, TN 37343 TELEX 551 414 PVT BTH (615) 842-4601 • :z .. FLEX •s a trademaricof Technical Systems Consultants '68' Micro Joumal 5 SOFTWARE DEVELOPERS!

YOU'VE JUST BEEN GIVEN THE BEST REASON YET ® TO GET OUR 68000/UNIX DEVELOPMENT SYSTEM

THE VARI68K®SERIES

VK-5XW20 (List price�) $5,000.

Includes: Terminal. 20 Mb hard disk. ® 512K RAM. 8 ports and REGULUS

VK-5XW20T20 (List price�) $6,500.

Includes: all of above. plus 20 Mb tape streamer

RESELLERS!

Even more altractive specials are available to qual�fied resellers!

Smoke Signal has been designing. developing and manufacturing

based on the Motorola family of processors for

the past six years. The VAR/68K is the most recent addition to our

family of multi-user computers.

VAR/68K Is a registered tradt'mark of Smoke Signal REGULUS Is a res.(lstcrcd trademark of Alryon Corp. UNIX Is a reglstert'd trademark of Hell Laboratories

TO OBTAIN YOUR VAR/68K AT THESE LOW PRICES, CONTACT:

Due lo the extremely low prices being offered. we can only accept cash or C.O.D. -3�0� orders. and we must limit purchases to one per customer. This is a limited time WESTLAKE VILLAGE. CA 91362 offer. (818 I 889-9340 I Telex 910-494-4965

6 ·sa· M1cro Journal Flex User Notes the single density sectors on side one as bad, and all the double density sectors on Ronald w. Anderson side zero as bad. 3540 Sturbridge Court Ann Arbor, Ml 48105 "I have a complete disassembly of my Disk Compatibility current version of FLEX, so I did a little digging and discovered that the ever­ I just received another letter from Kent flexible COCO could handle both formats (at Meyers and it contains some interesting least with FHL FLEX). The key is simply information regarding our disk format disabling the side compare during any sector compatibility problems. Kent has found one read or write. This function is completely problem and then has discovered the actual redundant on FLEX systems anyway. Each difference between the GIMIX (and Frank Hogg sector on a track in FLEX has its own COCO) FLEX and the SWTPc (and Data Comp and unique number. If the side select on a STAR-DOS) FLEX disk formats for double sided drive should fail the system would still not and double density disks. I suppose the be able to locate a sector for read or folks at GIMIX and at SWTPc have known this write even with the side compare not forever but purposely not issued changes disabled. In addition, the modifications are that would make our disks compatible. completely transparent to the system, not affecting operation with the normal format. Kent outlines two problems that exist. I Formatting the disk in the SWTPC format have known about both problems for some turns out to be just as easy, requiring only time, but until now have not had a real clue two bytes to be changed. as to the causes. Kent explains it quite well. Let me quote his letter. "Here are the changes involved to FHL version 5.0:4: "In my previous letter I stated that the only real problem that I had with FLEX on SEllA change $86 to SB4 the COCO was that some SS-50 bus systems SElA9 change $A6 to SA4 seemed to put a large part of the track SE204 change $86 to $84 header 1 n the disk's index hole, causing nt� hardware to be unable to read Sector 1 on "The changes to NEWDISK or NEWDISKA (FHL) random tracks. This became so annoying in are: exchanges with a friend that I finally had him send me copies of his NEWDISK utilities. $03CD change $D6 to $12 Disassembly of the two revealed immediately $03CE change $24 to $12 that the problem lay not with the hardware, but with the format program itself. In "This has been tested. I formatted a single density both of them laid down a double sided, double density SWTPC track header of exactly EIGHT bytes before compatible disk on my system and it worked the first Address Mark on the track. This without a hitch on a standard SWTPC is patently ridiculous. The FUL formatter system.... One more note of caution: the and Leo Taylor's both have a header in the modifications to FLEX must be made to allow range of 5 to 6 times that long. In the format programs to work." addition, no Address Index Mark is written in either single or double density. First let me be quick to say here that having a complete disassembly of FLEX is not "But the most interesting part of the illegal if you disassembled it yourself, which disassembly was finally discovering what the Kent did. Few of us have the time or the actual difference was between the Gimix and patience for such a project, however. SWTPC double density disk formats. I don't Thanks Kent for unraveling the two problems remember ever seeing anything about it in all at once. I guess what we need is a '68 Micro except for the bald statement that universal formatter program and enough the two formats were mutually incompatible. de tee ti ve work to be able to patch the Because of a hardware decision, all of the other versions of FLEX as well. Several SWTPC single density sectors have the side people have reported the "can't read the byte in the id. field set to zero, and all of first sector on some tracks" problem to me, the double density sectors have it set to and I encountered it nt�self once. The disk one. So running a disk test program on a format compatil>ility problem has been a SWTPC disk with a GIMIX system will show all headache. I've had to move a pair of disk

'68' Micro Journal 7 drives be tween systems and boot a different of software they would be interested in FLEX now and then to read a disk sent to me obtaining. The "want list" could be by a reader. Now, GIMIX, SWTPc, TSC, can't published so that those of us who want to you all get together and issue a new common submit software could have some idea of what standard for disk formats? I know, TSC the others are looking for. (User's groups will say "We were first.", SWTPc will say "We inevitably consist of "givers" and "takers".) just did it the way TSC did." and GIMI X will In this case, those who donate software say "We did it right." In the end it will be that is accepted, will be given their choice up to Leo Taylor and Bruno Puglia to come of one free disk (one volume) of software in up with a universal formatter and "hackers" exchange for their contribution. (that is what Kent calls himself, and it is not meant in any critical sense of the word) Sorts on the Half Shell like Kent Meyers to suggest patches to FLEX for each version that is floating around out Catchy title, don't you think? What there. brought this subject up was a problem I had the other day of sorting some data in a User's Group Has Formed reasonable time. I think probably all of you have programmed a bubble sort at one time I received a letter recently from or another. The idea is that you can Honolulu from Dr. John Current, describing sort a 11 s t (an array) of items in order of his attempt to start a FLEX user's group increasing value (alphabetically if string along the lines of the "CPMUG". Their comparisons are used, numerically if number purpose is simply to collect and distribute comparisons are used), by starting at the user con tri buted software in an economf ca 1 top of the list and comparing the first two manner. Dr. Current is smart enough to items. If the first is larger than the realize that the job will be overwhelming second (for sorting in ascending order), for volunteer help and he has formed a swap them and then compare the second and company whose purpose is NOT to make money, third items, etc. The process is repeated but simply to run on a non-profit basis. u ntfl the 1i s t has been "passed through" The company is called Aloha Software. They once with no swaps having taken place, at will have paid help, and therefore must which point the list is sorted. If you charge enough for each disk full of software think about it a little, the effect of a to cover cost of disks, mailing, and copying. pass is to "sweep" the largest item to the Of course there is work involved in bottom of the list. On the second pass, we cataloging and testing of software. can stop one item short of the bottom, etc. That little refinement cuts the sorting time If you are interested, write them a in half. letter at: The problem with the bubble sort is that Aloha Software it is what is called an n squared process. P.O. Box 30107 That is, the time it takes to sort a list is Honolulu, HI 96820 proportional to the square of the number of items in the 1 is t. Double the number of They will send you their "Interim items, and it takes four times as long to Guidelines" and a software submission form. run. There are considerably more complex I've just put a couple of llti utilities on a sortin� methods that run much faster. The disk and sent it off to them. One good next 'least complex" one that runs function of a user's group such as this that considerably better than the bubble sort is comes to my mind instantly, is the project known as the Shell Metzner sort after the mentioned above of finding the proper places people who "invented" it. This sort starts to patch all the versions of FLEX for the by comparing items that are far apart in the disk compatibility problems. Maybe between list. It swaps items for any case in which a 11 of us we could find the proper places in the larger item is above the smaller in the all the versions and arrive at a "universal comparison. The reasoning was that the disk format" and uniform handling of side largest item would quickly find its way to and density select so that our disks would the bottom, and the smallest to the top. truly be interchangeable. It works rather astonishingly better than the bubble sort as the list gets large. I suggested that it might be worthwhile to poll interested people as to what kinds One of "the problems with the Shell-

8 ·ss· MicroJournal Metzner sort (usually called the "Shell Sort" by way of abbreviation and not to omit Sort Time Swaps Compares credit to Metzner) is that when it swaps a pair of items, it saves the current item Bubble 200 87 10396 19795 pointers and backs up one "sort interval" if 400 338 40008 78474 the first pointer doesn't back up beyond the 800 1313 151312 317455 start of the list, and it again compares and swaps if necessary. While this extra step H. Sh. 200 18 937 6603 surely must reduce the number of passes 400 49 2322 18744 through the list required, it also adds to 800 124 6233 47000 the complexity of the program. Normally one (approx.) makes passes through the list with the initial sorting intt-rval untn no swaps are 0.7 200 17 585 6473 made, and then divides the interval in half, 400 40 1383 16032 repeating un ti 1 the interva 1 reaches zero, 800 104 3504 43000 at which point the sort must be done. (Note (approx.) that the sorting interval 1s an integer value so that 3/2 • 1 and 1/2 = 0. If you The compare count for the partial Shell must use a "real" number, than you must use sorts also overflowed the integer the tNT function after performing the arithmetic, but didn't wrap around all the division.) way so I was able to figure them out.

Sorting programs are somewhat sensitive I decided to implement only the first half to the data that is input, so I seeded the of the sort' (hence the title Half Shell). random number generator in TSC Extended The length of the list to be sorted 1s BASIC by the statement X• RND(-700) in each divided by 2 and the value obtained is used case so the three sort programs would work as the first sort interval. When no swaps on the same data and I could make small are made on a pass, the interval is divided changes and have meaningful comparisons. by two and the process repeated. It is The variable SWS is used to keep track of informative to print the sort interval and whether there were any swaps made on a the number of passes (i ndicated by given pass. It is set to zero at the asterisks) to the terminal as the sort beginning of the pass, and set to 1 if the progresses. Adding the sorting interval swap subroutine is used once or more during complication to the bubble sort is easy, and the pass. One thing that strikes me as adds only a few lines to the sort portion of i nefftcient about the Shell sort is that one the program. I wrote the programs in BASIC pass is made at each sorting 1 nterva 1 during and timed them for 1i s ts of 200, 400, and which no sorting takes place. That is, the 800 items. Later I decided to see what pass in which there are no swaps, which would happen if the sort interval were ignals decreasing the sorting interval to reduced by less than a factor of 2, and � changed the reduction factor to 0.7 (easy in lts next value. It would seem in spite of BASIC but perhaps more complicated in other this, that the partial Shell sort would be a languages). The resulting program was again much better choice than the Bubble sort for a significant improvement over the previous lists of any length over a few dozen items. attempt. I have found some of IllY old test results After obtaining timing information, I on various sorts, and I find that the full added code to the programs to count the Shell sort reduces the number of number of comparisons and number of swaps comparisons for a list of 1000 items to for the sorts, and obtained that information about 1/3 of those for the partial Shell by rerunning the programs. Counting sorts. I have run some of the data for 1000 comparisons, particularly for the bubble i�ems, and I find the following approximate sort, slows the program down considerably. t1mes to hold: (I was able to use integer variables to hold the comparison count for the other Bubble 3200 seconds programs, but had to use a floating point H. Shell 155 variable in the bubble version since even at 0.7 Sh. 122 400 items the nu�er of comparisons greatly Shell 94 overflowed integer arithmetic. The results Quick 46 were as follows:

'68' Micro Journal 9 All times reported above are for a 2 MHz has gotten easier to use and considerably 6809 system running in TSC Extended BASIC. more efficient than the first versions in Some of the times in the table immediately the process. Frank is planning to offer the above are extrapolated from other data. user a choice of two floating point math You can see clearly that the first major packages. Presently he has a 15 digit BCD improvement is made by using "anything but math package that is superb for financial the Bubble sort". The full Shell sort runs calculations, but a little on the slow side in about 2/3 the time of the simplified for serious scientific number crunching version. Quici

If some of you express further interest There is a wealth of software running under in sorting methods, I'll include BASIC the TSC XBASIC format. The primary problem implementations of the full Shell sort and was after loading in the BASIC program it's the Quick sort in a later column, along with self, then the BASIC source program, then results on the same lists of random reserving RAM space for the stack, tables, numbers. Another O.S. etc., not much space left for 'scratch' RAM. Therefore, the application program is Well, the company has just bought an IBM limited in many ways due to time consuming "look alike" and some software for P.C. system functions, such as chaining, loading 1 • board layout and artwork generation a d d i t i o n a s o u r c e e t c . T his heavy if (Wintek's SmArtwork software). We've just operational overhead is vastly reduced the code is reduced to binary object only! gotten the system up and running, and I will therefore be learning about MS DOS. I Thus a BASIC - source to pure suspect a few of you might be interested in object - is the perfect solution. Provided my impressions, so I will present them here it compiled good code. Right off the bat briefly after I've had a chance to try the system out for a while. First impressions the doing-away-with of the BASIC program of the system are that it is simple to saves about 79 sectors, and the source operate. The software has just about the compiled is a '. CMD' file, running like any other command file under FLEX or OS-9. right level of "automatic". That is, it is not too manual to be useful nor too Speaking of OS-9, K-BASIC, with a FLEX to automatic to be understood without a very long learning time. OS-9 porting program (S.E. Media, 'OF') will allow a FLEX XBASIC program to be compiled K-BASIC Again and run in the OS-9 system. This ports over most of that FLEX applications base Having some little interest in the first that before could not be run under OS-9. K­ BASIC compiler to be usable to compile TSC BASIC solves a lot of problems for those OS- Extended BASIC programs rather directly, I 9 users needing business and other receive almost weekly progress reports from applications software. Frank Hoffman at L 1 oyd I/0 in Portland OR. Frank tells me that he has eliminated the I also am following this development with requirement of no spaces in an arithmetic MUCH interest, IT MEANS THAT ALL THOSE expression, gotten random files implemented, OLDER SWTPC, GIMIX, SSB, HELIX and any other and pretty well debugged the full system capable of running FLEX and/or OS-9 implementation of PRINT USING. The compiler has a whole new ballgame to play - lots more

10 '68' Mk:ro Joumal useable RAM, faster execution and all the other better things brought on by no intermediate, in effici ent, cumbersome 150 NEXT Nl . 160 PRINT '+'i 170 IF SNX<>O THEN 120 OMW 180 ll=II/2 190 PRINT:PRINT IIi 200 IF II<>O THEN 120 210 EXEC, 'TiftE" 10 REII BUBBLE SORT 220 PRINT : INPUT 'SORTED LIST';RS 12 R� NOTE THAT THIS PROSRAII CONTAINS THE INSTRUCTION: 230 IF RS='N THEN 265 14 REII EXEC, 'TillE' IN TIIO PLACES. THIS CAUSES IIY SYSlEII 240 Fal Nl=l TO Jill 16 REII TO PRINT THE CURRENT TillE ON THE SCREEN. IF YOU HAVE 250 PRINT ARICNil, 18 REII A CLOCK CHIP YOU CAN SUBSTITUTE YOUR INSTRUCTION, 260 NEXT HI 19 REII OTHER NISE DELETE THESE TNO LINES OF EACH PROSRAII. 265 PRINT 20 INPUT 'HOW IIANY NUIIBERS'111lX 270 END 30 Dill ARI !IIXXI 280 REII SNAP SUBROUTINE 35 l=RNDI-7001: REII SEED GENERATOR 290 TI=ARI INII 40 FOR N1=1 TO Jill 300 ARl!Nil=ARICNX+Ill 50 ARIINII=INIIRNDIOltlllll 310 ARl!NX+IIl=TI 60 NEXT NI 320 SIII=I 70 PRINT 'SORTIH6' : REII START SORT 330 RETURN 75 EXEC, 'TillE' 80 Ll=llll-1 10 REII PARTIAL SHELL SORT 90 Sill = 0 20 INPUT 'HOW IIANY NUftBERS',III% 100 FOR NI=1 TO LX 30 Dill ARXIIIUl 110 IF ARICNII > ARIINI+II THEN SOSUB 200 : REII SWAP 35 X=RNDI-7001:REII SEED RANDOft 120 NEXT NX 40 FOR NI=I TO III% 130 Ll=Ll-1 50 ARIINli=INTIRNDIOltiiX%1 140 IF SWI<>O THEN 90 60 NEXT N% 145 EXEC, 'TillE' 70 PRINT'SORTIN8' : REII START SORT 147 INPUT'SORTED LIST',Rf : IF RfOT THEN 175 80 EXEC, ·mE' ISO FOR N%=1 TO 1111 90 L%=1111 160 PRINT ARI!Nll1 100 lt=LitO. 7 170 NEXT NX 110 PRINT !Xi 175 PRINT 120 511% = 0 180 END 130 FOR NX=I TO LX-I% 190 REII SWAP SUBROUTINE 140 IF ARIINli>ARliN%+111 THEN SOSUB 290 200 TI=ARlIN XI 150 NEXT NX 210 ARIINII=ARXINI+II 160 PRINT "t'i 220 ARICNI+Il=TI 170 IF SWX<>O THEN 120 230 SNI=I 180 ll=IX+O. 7 240 RETURN 190 PRINT:PRINT IX; 200 If lZ<>O THEN 120 10 REII PARTIAL SHELL SORT 210 EXEC, "mE' 20 INPUT 'HON IIANY NUIIBERS',1111 220 PRINT : INPUT 'SORTED LIST'jRS 30 Dill ARIIIIXXI 230 IF Rf='N' THEN 265 35 I=RNDI-7001:REII SEED RANDOft 240 FOR NI=I TO Ill% 40 FOR NI=I TO IIXX 250 PRINT ARIINII, SO ARZINll=INTIRNDIOitlllll 260 liEXT NI 60 NEXT NI 265 PRINT 70 PRINT'SORIIN6' : REII START SORT 270 END 80 EXEC, 'TillE' 290 REII SNAP SUBROUTINE 90 Ll•IIU 290 TX=AR1 INil 100 II=Ll/2 300 ARICNXI=ARIINI+Ill 110 PRINT ,II; 310 ARlllll+III=TI

120 SWI :r 0 320 Sll%=1 130 FOR Nl=l TO LX-IX 330 RETURN 140 IF ARl!Nli)ARliNX+I%1 THEN 60SUB 290

'68' Micro Journal 11 Addr 0 1 2 3 4 5 6 7 8 9 A B C D E F OS9 USER NOTES 0000 2600 2200 0000 0000 004F 0201 A901 A47F 0010 2329 3COO 0000 007F 2A26 0129 3329 4129 By: Peter Dibble 517 Goler House 0020 0200 0220 BEOO 0300 0400 FD46 F1CC F2C2 Rochester, NY 14620 0030 F1D8 C26F F1DD F1D8 F215 D02B FlEA F215 64 Thousand Bytes Inside the Computer 0040 F29B F2C2 0292 0222 02EF OOEF COEF 80EF 0050 4000 0054 OA15 1304 2938 3C06 0000 0000 Before I get into the meat of this 0060 BD6C 8000 BCOO BEOO E£32 00£4 46B9 OOEF column I want to mention the name of the 0070 0055 0074 127F FF03 B7FF DF7E FOOC 0000 file this text is stored in, Column24. 0080 OOF2 2700 0000 0000 0000 0000 0000 0000 It's hard to believe I've been at this that long! If you want to follow this tour in your own machine (Level One only for this The folks at '68 Micro Journal sent month, sorry) note the numbers at: me a letter from a CoCo owner who had upgraded to version 1.1 of Radio Shack $0020-0023 ($0200 $0220 in this dump) OS-9. For some reason, when he used $0049-004A ($EFOO in this dump) OS9GEN to put the OS9Boot file on a new $0060-0061 ($806C in this dump) disk. the new boot file booted up a system $0064-0065 ($8COO in this dump) that used more memory than the master disk's. He had the same problem with These numbers are the addresses of the version 1.0. but it was worse with 1.1. free memory bit map, the process There wasn't enough free memory left to descriptor table. the device table, and run C. That's not too surprising. The C the path descriptor table respectively. compiler uses a LOT of memory. It took Each of these tables contains information some powerful shoehorning to wedge it into about memory. All but the free memory bit the memory available on a CoCo. Take a map contain memory that's hard to get little memory away and you just squeeze it without digging. out. The free memory bit map looked like I tried to solve the problem for him, this: but I couldn't get my system to reproduce it. He sent me convincing documentation; Addr 0 1 2 3 4 5 6 7 8 9 A B C D E F I'm sure he wasn't imagining things. I 0200 FF80 0000 0000 0000 0000 0000 0000 OOOF was interested enough that I had it in 0210 FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF mind as a good subject for this month's column. Stubbornly, I'm going to write about it anyhow. The system direct page gave both the beginning and the end of the map. Each The obvious tools to attack a memory bit that's off indic�tes a free page. allocation problem with are mdir, mfree, Thirty-two bytes at eight bits each gives and procs. Each of these commands give a map of 256 pages. At 256 bytes per page some information about memory usage. No that's 64K. In this map the first nine commands give you all the gossip about pages are allocated as are the last 132. your memory without some work on your That left me with 115 contiguous free part. Even with work, debug is your best pages. tool. If you're ready to write a short program, a program that copies most of The process descriptor table can tell memory to disk is useful. With everything you about the data memory allocated for in a file you can use dump to get a hard each process. You can find out how much copy. I'm old-fashion enough to like memory is allocated to each process from paper I can mark on when I'm tearing a the procs command. The process system apart. A warning: If you dump all descriptors can tell you the address of your system's memory (like I did) we're each process's memory as well as its size. talking about a big pile of paper.

The place to start finding out where This table, like most others in OS-9 your memory has gone is the system direct Level One. is managed with the F$A1164 page. This is located at address $0000. family of system calls. The first 64 When I dumped� CoCo's memory it looked bytes of the first 256-byte block are a like this: list of the high-order bytes of the

12 '68' Micro Journal addresses of other blocks in the table. bytes in. For the first device in the In this case, there is only one 256-byte table that's $8800, for the second. $8900. block so only the first byte in is To find out the size of these areas check non-zero. The next 64 bytes (starting at the device descriptor module pointed to by $EF40) contain the first process the sixth and seventh bytes in each entry. descriptor. Check in your DEFS directory for information about all the fields in If some device static storage gets it. The page number of the beginning of a allocated in the middle of memory you'll process's memory can be found seven bytes wish it hadn't. If the device descriptor from the beginning of the descriptor. For isn't in your boot, try unlinking it. You process one, that's at $EF47. The value may be able to remove the device is $04 so process one's data memory starts descriptor and its static storage from at $0400. The next byte in the process memory. descriptor gives the number of pages a11 ocated. in this case, one. Process two You can prevent the problem by has three pages allocated to it starting opening any devices you intend to use at $0500. before you start running programs. You don't need to do anything with them; just Addr 0 1 2 3 4 5 6 7 8 9 A 8 C D E F open and close.

EFOO EFOO 0000 0000 0000 0000 0000 0000 0000 If you want to be elegant. write a EFlO 0000 0000 0000 0000 0000 0000 0000 0000 program that just does an !$ATTACH for the EF20 0000 0000 0000 0000 0000 0000 0000 0000 device; that's the part of open that EF30 0000 0000 0000 0000 0000 0000 0000 0000 allocates the storage and puts a device in EF40 0100 0002 04E2 0004 0100 0000 0080 0000 the device table. EF50 0000 E2AC F298 F298 F29B 8D6C 0000 0002 EF60 806C 0000 003C 0101 0100 0000 0000 0000 The last table in this tour is the EF70 0000 0000 0000 OOE4 1E04 0000 0000 0000 path descriptor table. These are system EF80 0201 0003 0700 0005 0300 0000 0080 0000 paths not user path numbers. You'll see EF90 0000 E4CO F298 F298 F29B 806C 0000 0002 their numbers in the "paths" area of each EFAO 806C 0000 0020 0102 0101 0000 0000 0000 process descriptor. Don't think that EF80 0000 0000 0000 OOE5 0705 0000 0000 0000 these path numbers are arranged standard EFCO 0302 0000 08F3 0008 0100 0000 OlAO EF80 in, standard out. The table looks EFDO 0000 7COO F298 F298 F298 BD6C 0000 0002 like: EFEO 806C 0000 0020 0102 0100 0000 0000 0000 EFFO 0000 0000 0000 0000 0000 0000 0000 0000 Addr 0 1 2 3 4 5 6 7 8 9 A 8 C 0 E F

Memory that mysteriously vanishes has 8COO 8COO 0000 0000 0000 0000 0000 0000 0000 generally been used for some kind of I/0 8Cl0 0000 0000 0000 0000 0000 0000 0000 0000 buffer. The last two control blocks I'll 8C20 0000 0000 0000 0000 0000 0000 0000 0000 show you point to 1/0 buffers. 8C30 0000 0000 0000 0000 0000 0000 0000 0000 8C40 0103 0880 7500 07E8 8800 8075 OOFF FFOO When a device is opened for the first 8C50 0000 0000 0000 0000 0000 0000 0000 0000 time some memory called device static 8C60 0001 0100 0101 0001 1008 1800 1804 0117 storage is allocated for it. That memory 8C70 0305 0807 0000 002A 0000 0080 7500 0000 will generally stay allocated until you 8C80 0202 0280 6C03 08F3 8500 0000 OOBC 0000 reboot. The address of each device's 8C90 OOFF FFOO 0000 0000 A500 OOC7 C31E B80F device static storage can be found in the 8CAO 0100 0020 0100 2301 0000 1200 1204 0800 device table. It should look something 8C80 0000 0008 0000 1100 0002 0000 0060 BD6C like: 8CCO 0001 0080 6COO 09DF 7800 0200 0013 0000

• 8CDO 0276 0000 0000 0000 0000 0276 0000 880F Addr 0 1 2 3 4 5 6 7 8 9 A 8 C D E F BCEO 0100 0020 0100 2301 0000 1200 1204 0800 ------BCFO 0000 0000 0000 0000 0000 0000 0000 806C 8060 0000 0000 0000 0000 0000 0000 BEOO BBOO 8070 Cl08 DIAl 03Cl C789 OOCA 82DE 9302 0000 It's another table managed by the F$A1164 family. The first path descriptor starts This device table starts at $8D6C at $8C40. At eight and ten bytes from the (remember the pointers from the system beginning of each descriptor are addresses direct page). Each entry is nine bytes of allocated memory. Bytes eight and nine long. The static storage address is two are the address of the buffer for the path

'68' Micro Journal 13 (path one has a buffer at $8800, path two at SBSOO). Bytes ten and eleven are the •c• User Notes address of the file manager's static Edg•r M. (lud) Pus, PII.O. storage (if any). The first path has some 1454 La ttl Lane COfiJerS, GA 30207 allocated at $BD75. It appears that the file manager for the second path (SCF) This month's column discusses several doesn't need any static storage. problems in the C compilers available on You can poke around in these control the 6809, provides another list of blocks with debug. If crashes disturb you references on the C language, and comments don't change anything in these tables. on the availability of the Apple Macintosh OS-9 will notice a change and expire. C compiler. plunk. Next month's column will begin a I copied memory to disk with a dumb multi-column tutorial on the C language, program that pointed X at the memory I due to popular demand. It is based upon wanted to dump, put the length in Y and short C courses I have presented and upon wrote it to standard output. I used X=O tutorials I have developed in the past, in and Y=$FFFF to dump everything. You'll addition to some new material developed probably be clever and only dump what you for it. need. First Aid C PROBLEMS

If you always need a little more My primary intention in presenting these memory the best solution is to move to problems is not to criticize the Level Two (even better, OS-9 68K). You'll developers, but to publicize the problems still have memory problems, but they will so that other users will not fall into the be more tractable. While you're saving same traps. Of course, I would be pleased up, try this trick for temporary help: if the developers of the various packages build a new smaller boot file. The boot would fix the problems documented in this file must contain lOMan, RBF, SCF, CCIO, column. If a user encounters a problem CCDisk, DO, TERM, Shell, Clock, and SYSGO. not previously documented here, I would The other modules are optional. If you appreciate receiving a copy of a test have two dis� drives, you need DO and 01, program, on disk if possible. 02 and OJ are wasted space. If you don't have a printer, terminal, or modem; In attempting to complete a project PRINTER, RS232, P and Tl are useless. involving the use of the C language, 1 recently encountered several problems with Don't remove the pipe modules except the Microware/Tandy C compiler and the in desperation. Many people don't use Windrush C compiler. Both of these pipes. If you don't use them and don't compilers are based upon compilers intend to, they can go. All the OS-9 developed by James McCosh. 1 also had a programs from Microware (or Tandy) that I problem with the Introl C compiler, and know of can be used without pipes. You have a problem with the Dyna-C compiler to can certainly compile C programs and run report. Basic09 without pipes. If you take all those modules out of the boot file, you The most immediate problem, which will have decreased the its size by 1225 threatened the viability of the entire bytes. That translates into at least four project, was that the Microware C compiler more pages of memory for your programs is so large that it cannot compile a very large C module on a standard level 1 A Preview system. Even generating a bare-bones OS/9 system did not quite provide enough free I have a pile of programs from the memory to use the C compiler to compile JBt� Group for review. My first impression several of the program modules. of them is that programmers who want to create business software would be fools solved this problem, as far as the not to look at it. Other groups will find Microware C compiler is concerned, by at least some of J13M's stuff interesting. using a Color Computer, which provides More on this software over the next more free memory than a standard level 1 months. system. ft is also considerably slower

14 '68' Micro Journal than my other system, requiring about one characters with values larger than hex 7E. hour to compile a program which the other The Windrush C compiler avoids this system will compile in about twenty problem by coding all strings as the minutes (in FLEX). equivalent FCB decimal constants.

The Microware/Tandy assembler which comes Kim was very helpful to me in this matter, with the C compiler can handle only about and has corrected the bug in the current 600 labels for each generated assembler release of the �1icroware C compiler. module on an OS/9 level 1 system. Since However. older versions of the Microware each string in an initializer requires a and Tandy C compilers still have the bug, label, this restricts the size of so octal constants in strings must be used initialized tables, even if each table is carefully with these compilers. compiled separately from all other code. Remember that the f1cCosh family of C The use of both the Microware and Tandy C compilers always generates string compilers is made somewhat inconvenient by pointers. not the string contents, in their insistence on correct case in some initialized tables, and this process command-line options. This is especially requires a label for each string in the inconvenient on the Color Computer. in tables. which the shell converts lower case to upper case on the command line, by The Introl C compiler has somewhat similar default. The manuals compound the size problems on an OS/9 level 1 system. inconsistency by documenting the use of It has a command-line option which reduces all options in upper case, whereas the the memory requirements by eliminating the compilers insist on the use of lower case use of initializers. Since most large C for some of the options. Hopefully, the modules with which I work have compiler, not the manuals, will be initializers, this is only marginally corrected to eliminate this inconvenience. acceptable. I also had several problems with the The obvious solution to this problem is to Windrush C compiler, which runs under increase the number of C compiler and Flex. assembler phases, in order to reduce the size of each phase. Since this would be One minor problem concerns the use of such a major change, I do not anticipate command-line arguments in the compiled actually seeing it, however. program. The Windrush C manual states on page 6 that arguments on the command line A serious bug which I encountered in the are normally delimited by spaces or r�icroware C compiler relates to strings commas, but may enclosed be in double containing an octal constant generating a quotes, in which case they may contain characters with the high-order bit set. spaces or commas. This is not true, as The compilation seems to proceed normally, may be verified by running the "echo" but the linker generates a large number of program on page 111 of the K and R book. undefined variable names of the form Double quotes have no special meaning in " nnn". Windrush C. No other known Full C compiler on the 6809 has this problem. When I initially talked to Kim Kempf at Microware about this problem, he thought A more serious situation exists in the it might be due to the size of the module. Windrush C compiler with respect to Eventually, I sent a copy of the C program reading and writing arbitrary data values to him. and continued to attempt to get from and to disk files. Although most the program to compile and link properly. other implementations treat "open" and I determined that the bug was as "creat" as low-level functions, Windrush C described above at about the same time treats them almost the same as "fopen", that Kim did. The assembler was quitting without the binary option. Thus, "fopen" upon encountering an octal 377 (hex FF) must be used. with the binary option, when value in the intermediate reading and writing disk data files. since assembler-language file. The compiler "open" and "creat" ignore the mode attempted to generate FCB constants for parameter, which is normally used to characters not representable in FCC indicate the difference between text and strings. but neglected to check for executable files.

'68' MicroJournal 15 Note that the only safe, general manner in C Programmer's Library, Purdum, $21.50 which to read and write arbitrary data C Programming Guide, Purdum, $19.50 values in Windrush C is with the "fread", C Programming Guidelines, Plum, $27.50 "fwrite". "putc". "putchar". and "putw" The C Programming Language. functions. None of the input functions Kernighan and Plauger, $21.50 based upon "getc" may be used, since The C Puzzle Book, Feuer. $16 50 "getc" cannot distinguish between reading C User's Handbook, Weber, $16 :so a character with value hex FF and Learning to Program in C, Plum, $26.50 encountering end-of-file. None of the Programming in c. Kochan, $20.50 string I/0 functions may be used, since Programming in C for Hi cro Users, they normally assume null-terminated Traister, $19.50 strings. None of the standard C I/O Small-C Handbook, Hendrix. $16.50 functions distinguish between end-of-file and logical or physical I/O errors, such Dr. Dobb's Journal has published a significant number of lengthy articles on as insufficient disk space. These last three situations describe a problem with C programming and applications over the the definition of the C language, not with past few years. Bound reference volumes the Windrush C compiler alone. and back issues are available.

'68' Micro Journal has published a number The Windrush C manual is somewhat misleading in its heading of the "fread" of articles on C programming and especially as they relate to and "fwrite" functions as "read/write applications. binary data", in that they do so only 1f the 6809 implementations of the C the file was opened with the binary option language. of the "fopen" function. In addition, I have a small number of The Windrush C compiler does not check copies of my tutorial on C which I will file names for invalid characters. This send to anyone in the US or Canada for $2 can lead to some rather strange for shipping. circumstances in which the output file of a program overwrites the input file, C FOR THE MACINTOSH assuming they differ only in the suffix. This is because only the part of the file In April 1984, Apple announced that it name up to but not including the first would produce a Full C compiler for the invalid character is used, possibly r�acintosh which would have access to all causing the suffix to be ignored. facilities of the machine. would require two disk drives, and would be available in I have had one report of a verified bug in December 1984. I inquired about the Dyna-C. If a function has no availability of it recently, since I code-generating statements in its body wanted to use it for developing Macintosh (between "{" and "}" characters), a call software. and received a telephone call to that function falls through to the next from an Apple representative. She told me function, or to whatever code follows. that Apple had significantly reduced the priority of the development of the C C REFERENCES language for the Macintosh in favor of the development of their own version of a I have had several requests for more BASIC interpreter. She could give me no information on references to learning and date for when an Apple C compiler might be using the C language. Following is a list available. In fact. she suggested that I of the titles, authors, and suggested investigate one of the other C compilers retail prices of all of the major books on already implemented on the Macintosh by the C language now known. If anyone knows third-party developers. These range from of other references or has comments on any Small-C ported implementations to complete of these, please let me know. C development package systems. I will report on them as I receive more A Book on C, Pohl, $23.50 information. C Notes, Zahn, $21.50 The C Programming Handbook, Plum, $21.50 I als� inquired about Apple's The C Programming Tutor, Plum. $19.50 assembler-language development system. It The C Primer, Hancock, $18.50 is available, but it requires two

16 '68' Micro Journal Macintoshes (connected together by a file. This could be useful when common external bus) or a Lisa and a attempting to use files transmitted from a Macintosh in order to operate. However, CP/M system. Since Flex uses the tab several third-party developers have character as a leadin for space announced similar development systems compression, tabs in Flex files are which will run on one 128K Macintosh with particularly undesirable, but they are one disk drive. also undesirable in OS/9 files. The program actually replaces each tab with a C PROBLEM space, rather than removing it entirely.

Last month's problem was to write a C version of the BASIC "instr" function. This may be accomplished as follows: /* untab.c - removes tabs and other controls from text file *I /* instr (fir, pat, src) searches "src", #include "stdio.h" searching for the first instance of li nclude "ctype. h" "pat" in "str" starting with position "fir" (base 1), returning the #define MODE "rb" position of the first character of I* MODE "rb" for FLEX the matching string or zero; MODE "r" for OS/9 *I both strings are null-delimited. *I main(argc,argv) i nt argc; instr (fir, pat, src) char **argv; tnt fir; { char *pat, *src; char *input,*output; { i nt c; char x, *p, *t, *s = (src +fir - 1); input = s td i n;

while (*(t � s++)) output= stdout; 1) ( if (argc > for (p = pat; { (( (x = *p++) == *t++) && x); ); if ((input= fopen(*++argv, MODE)) if ( !x) == tWLL) return (s - src); { fputs ("can't open input\n", return (0); stderr); } exit (1);

} if (argc > 2) Write a complete program which replaces ( one string of characters with another in if ((output= fopen(*++argv, "w")) text copied from one file to another. == NULL) Take the command-line problem reported in { Windrush C into account, if you can. A fputs ("can't open output\n", sample command line for such a program stderr); might be as follows: exit (1);

replace file1 file2 string1 string2 }

EXAMPLE C PROGRAM

Following is this month's example C program; it removes tabs and other undesirable control characters from a text

17 ·sa· Micro Journal 68000 USER NOTES

while ((c = getc (input)) != EOF) Philip Lucido if ((c < OxBO) && ((c > Ox1f) l l 2'20 Seretoge Orl�e Sherpvllle, P� 161'SO (c == OxOd))) putc (c, output); 68020 else As mentioned last month, I have acquired if (c == Ox09} Motorola's user's manual for the 68020, the putc (Ox20, output); MC68020 32-Bit Microprocessor User's Manual, exit (0); Motorola part number MC68020UM(ADI). The } book is actually published by Prentice-Hall, ISBN 0-13-541418-0. That should enable you to find it, should you be so inclined. This month's column is mainly a distillation of Editor's Note: It might be fair to point this book, covering the new features in the out that the Hicroware OS-9 version of the 68020. McCosh C compiler is supported solely by Before I get started, though, I have a few Microware and there will be some thoughts on the whole idea of 32 bit differences between it and the several and the advancing state of other McCosh C compilers. the art. prompted in part by Ron Anderson's column in the Fe bruary 1985 issue. In the long haul I believe that will be a According to his column, he has yet to come better situation for OS-9 users of this across an application where a 68000 is version of C. OS-9 is growing in use to really preferable to a 6809. I the point that it's version of C will be wholeheartedly agree, since very few widely distributed worldwide. And used on applications need huge amounts of RAM or many different types of systems, from great speed. So why do I use a 68000, and various manufacturers. The resources why am I now studying the 68020? necessary to maintain such a network seem I suppose that I am guil� of being a gadget to be in place, however it will require a freak when it comes to computers, especially reasonable length of time to get things in regards to the software. I am a systems running smoothly. programmer. and enjoy playing around with large programs, such as editors or All of the compiler developers, I have compilers. Most of my interest in new talked to are more than willing to set microprocessors, then, derives from their things right, it may take some time but I use in software development systems and have faith in our suppliers. They have general purpose computers. This is quite too much at stake. I know Some fine divorced from the use of microprocessors in software developers (and hardware) who let dedicated designs, such as system their S50 Bus commitment go slack in order controllers or limited purpose computers to attempt a try at other non-S50 markets. like word processors. And lost all around. A reputation of Still, why should I need a 68000 at the support is one of the MOST IMPORTANT heart of a general purpose computer? Isn't assets a manufacturer must develop and a 6809 powerful enough? In most respects, a maintain! We have never had the most of 6809 provides all the power I need. After anything, but in some areas we sure have all, the microprocessor used in a computer had as good or BETTER! is only one factor in its speed. A much better way to improve a computer system You should see some of the 'better' C might be to install a or compilers running on some other systems more RAM memory. For instance, at the OS-9 (non-68XX). Go down to your 1 oca1 'other • seminar, I saw a 68000 computer running OS- store and ask to see their C compiler 9/68K which was performing C compilations in documentation. It may look prettier but something like 10 or 15 seconds. My current the scope of many 'other' C compiles system takes more like 60 to 90 seconds, borders on junk. I guess that is the proof of the pudding - or something. even with a hard disk. At first, I thought this speed was due to the power of the 68000. While the 68000 probably helped, the DMW speed was really due to the 2 megabytes of

18 '68' Micro Journal RAM installed in the machine! All of the There are 8 different bit field opcodes. program phases in the C compiler were BFINS is used to transfer a bit field from a preloaded into memory, and all files, data register to its position in memory. including temporaries, used a RAM disk, so BFEXTS and BFEXTU are used to retrieve a that an entire compilation could be bit field from memory, placing the result performed without once using a floppy disk right justified in a data register. BFEXTS or hard disk. The same trick could have performs sign ex tension on the field, while been performed using a 6809, though maximum BFEXTU performs zero extension. BFCLR memory would likely have been 1 megabyte clears a field to all O's, while BFSET sets a instead. field to all 1's. BFCHG complements each bit I still haven't said why a 68000 is a good within a field. BFTST checks if a bit field idea. There are some valid reasons. Even is all O's, as well as if the most using a 68008, it is possible to write significant bit in the field is a 1. Finally, programs which run faster than the same BFFFO scans through a bit field, looking for program with a 6809, because of the greater the first 1 bit. If a 1 bit is found, then number of registers and the more powerful the offset of that bit from the base address instructions. The removal of the 64K limit is stored in a data register. If no bits in on program size is very important, allowing the field are set, then the value of the huge, complex programs to be written field offset plus the field width is stored without worrying about most memory limits. in the data register. This alone means that programs will be developed for the 68000 which will be The coprocessor instructions are too difficult or impossible to port back to the complicHed to discuss in any detail here. 6809. Basically, though, the coprocessor interface Unfortunately, the overriding reason for my depends upon a satellite chip which follows having a 68000 may simply be that 'gadget a very strict protocol for communicating freak' tendency I mentioned before. There with the 68020. The 68020, in return, is always the inclination to have the latest implements 7 different opcodes dedicated to and the best equipment possible. This is the use of coprocessors. The cpGEN opcode not entirely bad, as I am sure that readers i s the g e n era1 func t i on code. u sed to of this magazine understand the 'toy' aspect request most operations from the of having a computer. After all, they are coprocessor. The actual format of this fun, and it's always nicest to have the instruction is determined by the newest, shiniest toy on the block. So, in coprocessor, with extension words specifying that spirit, let me get on with talking the actual operation to be performed. about the 68020, the newest of the new toys There are 4 conditional opcodes used to around. While I am unlikely to have one test conditions within the coprocessor. anytime soon, it is still useful to see what Th ese are cpBcc, cpDBcc, cpScc, and the future holds. cpTRAPcc, each of which func tions analogously to the normal 68020 instructions New and t.proved! 68020 Instructions Bee, DBcc, Sec, and TRAPcc. The meaning of the condition codes depends entirely upon As mentioned last month, there are two the coprocessor. These are not necessarily major groups of new instructions, bit field the same condition codes which can be operations and coprocessor operations. The internally tested in the 68020. Finally, bit fields operations deal with a variable there are 2 opcodes, cpSAVE and cpRESTORE, length bit field, from 1 to 32 bits long, which are used to save the internal state of without respect to byte or word boundaries. a coprocessor in memory and restore that A bit field is specified with three numbers: state at a later time. the base address, the bit offset,. and the bit field width. The base address is There are new forms of the multiply ope odes specified using the normal effective address in the 68020. The normal 68000 MULS/MULU calculations applicable to most 68020 opcodes performed 16 bit by 16 bit instructions. The offset is either an multiplication, yielding a 32 bit result. immediate value, from 0 to 31, or a value These are now the MULS.W/MULU.W opcodes. from -2A31 to (2A31)-l, held in a data The 68020 adds two new long forms (e.g. register. Finally, the field width is either MULS.L). One of these performs 32 bit by 32 an immediate value or a value in a data bit multiplication, giving a 32 bit result register. In either case the field width is with possible overflow. The other does 32 x from 1 to 32 bits. 32 bit, with a 64 bit result. The result is

·sa· Micro Journal 19 left in two different data registers, which vector. As the final new instructions, are not necessarily adjacent. For instance, there are CALLM and RTM, call module and MULU.L (A4),DO:D3 would multiply the 32 bit return from module. Like the coprocessor value at (A4) by the 32 bit value in D3, with instructions, these are too complicated for the high order 32 bits of the result stored this current column. Suffice it to say that in DO and the low order 32 bits in D3. these instructions allow the use of external hardware to control prioritized access to In the same way, there are new forms of the various independent program modules. This divide opcodes. In the 68000, the DIVS/DIVU is an extension of the system state/user opcodes performed 32 bit by 16 bit division, state of the 68000, allowing finer control giving a 16 bit remainder and 16 bit and better memory and execution protection. quotient, both of which were packed into a single result data register as high and low New Addressing Modes word. In the 68020, these are the DIVS.W and DIVU.W opcodes. There are three new In addition to the new instructions, the long forms. The first long form performs 32 68020 has added some powerful new bit by 32 bit division, resulting in a 32 bit addressing modes. In the 68000, there are quotient. The remainder is discarded. In addressing modes such as (d16,An) and the second long form, a 64 bit value, in two (d8,An,Xn). The first allows a 16 bit signed data registers, is divided by a 32 bit value, value to be added to the contents of an giving a 32 bit remainder and a 32 bit address register, giving an effective quotient. The remainder is loaded in the address. The second allows an 8 bit signed data register which held the high 32 bits of value to be added to the contents of an the 64 bit va 1 ue, while the quotient is address register and a word- or long-sized loaded into the other data register. The general register, giving an effective final long form uses a new opcode, address. Nowhere is there the ability to DIVSL.L/DIVUL.l, to perform 32 bit by 32 bit use 32 bit offsets, though. Not division, giving a 32 bit remainder and 32 surprisingly, that ability is found in the bit quotient. For instance, DIVSL.L 68020. (A4),DO:D3 divides the value in D3 by the value at (A4), with the resultant remainder What the 68020 has implemented is one new stored in DO and the quotient in D3. catch-all addressing mode, which covers just about every possibility. Start with a long There are many miscell aneous new value, either in an address register or the instructions. EXTB sign extends a byte program counter. Now, add a constant value in a data register to a long value, value, called the base displacement, which is using one operation instead of EXT.W either a sign-extended word value or a long followed by EXT.L. PACK and UNPK are used value. Next, an index register is to pack and unpack BCD values. I think specified. The index register is found in that these two instructions were originally DO to D7 or AO to A7, and is either a sign planned for the 68000, though they make extended word or a long value. The their first appearance here. There are two resultant index register value is multiplied new instructions for checking a value by a scale factor of 1, 2, 4, or 8 (with no against an upper and lower bound, CMP2 and clock cycle penalties), and added to the CHK2. CMP2 compares a value (byte, word, or address register plus optional base long) in a data or address register against address. In most cases, this gives a final two values stored in memory. If the effective address. The assembler syntax for register value is less than the first value, all of this is (bd,An,Xn.SIZE*SCALE). Using the lower bound, or greater than the second the scale factor, it is now possible to value, the upper bound, then the carry fiag access arrays of integers, pointers, and the is set. There are not separate opcodes for like without using any shift instructions. signed and unsigned compares. Instead, the type of compare is determined by the bound There are further extensions to this basic values themselves. For a signed compare, f o r m a t , h a v i n g t o d o w i t h m e· m o r y the arithmetically smaller value should be indirection. Yes, the indirect memory first, while for unsigned compare, the addressing modes which were so useful in the 1 ogically smaller value should be first. The 6809, but were left out of the 68000, are CHK2 performs in the same way, except that back. There are two forms of indirection, an out of bound comparison results in a called. memory indirect post-indexed and TRAP to the CHK instruction exception memory indirect pre-indexed. Post-indexed,

20 "68" Micro Jou.rnal w i t h a s s e m b 1 e r s y n t a x CoCo User Notes ([bd,An],Xn.SIZE*SCAL E,od), involves adding the base displacement to the base address register. The result is used as an address by Carl Mann to fetch a long word, which is added to the scaled index register, and finally, added to COCO PLAYS FRONT-OFFICE HARDBALL an outer displacement 'od'. Pre-indexed, or, ([bd,An,Xn.SIZE*SCALE],od), is similar, with How the Mfcro Stole the ChristMas Bonus the memory indirection taking place after the index register is added. In both cases, Editors Note: Carl was our first the outer displacement, like the base "regular" Columnist with Color Micro displacement, is either 0, 1, or 2 words Journal, and redily agreed to continue long. his Column in '68' Micro. Even if you have NO interest fn the Color Computer, There is yet a further extension. While I think you will look foreward to performing the effective address calculation, reading this Column each month (its a any of the various values involved (base standing joke here in the Office; if register, base displacement, index register. someone busts out laughing while and outer displacement) may be optionally working at a Computer, we know that omitted. This gives rise to a ridiculous they are working on Carl's Column). As number of possibilities. For instance, those of you who have not seen his omitting everything but the base Column before can see from this first displacement results in either a new way to 'installment', "CoCo Users Notes" comes specify absolute long or short. or with from a CoCo User, and ANYTHING is fair indirection, a way to specify absolute game. We hope that you enjoy it as i ndirec t, ([bd]). As another example, the much as we have, and feel free to drop base re gister and indirection may be him a note on anything relevant to the omitted, and a long base displacement may be CoCo (and I mean ANYTHING!). Anyway, used as the actual address in memory of an as they say on TV, "H-e-r-e-'-s Carl ••• array. Loading the index register with the -RLN- array index, then. allows immediate access to an array element: It isn't easy to design a single computer system to satisfy everybody's MOVE.W INDEX,DO needs. The human imagination is such a MOVE.L (TABLE,DO.W*4),Dl fertile breeding ground for new ideas, motivations, and techniques that no sooner TABLE: DS.L 100 does the "Ultimate Machine" arrive than some innocent soul asks in all seriousness, As a final exercise, it is always interesting "Yes. and can ft also ... ?". to determine the maximum length of any That's the situation I walked into when instruction in a computer. For the 68020, I took a full-time job as a Technical this requires a MOVE, since two complete Writer fn a company not far from Route 128. effective addresses are needed. The longest (The signs used to read, "128: AMERICA'S effective address takes 1 word for the TECHNOLOGY HIGHWAY". But the traffic along extension, 2 words for a long base 128 is Snail City from about 8:00 AM on to displacement, and 2 words for a long outer past suppertime. Local folks started to displacement, giving 5 words. Two effective make jokes about the state of the traffic, addresses take 10 words, so the MOVE takes the technology, and American Industry in one word more, or 11 words total. The general. Now there are obvious "fixes" longest 68020 instruction. then. is 22 byte applied to the signs; they now read "128: long! AMERICA'S TECHNOLOGY [ REGION ]". The word "R E GION" is tacked over the old wording with sheet metal screws. Guess you can't As Ever. To Be Continued please everybody.) I was eager to start work, so I As normally happens. there is still more to (characteristically) tackled the situation on two simultaneous fronts. First, I let be said. I'll finish this up next month, ft be known that I felt the need to be with some attention to the hardware aspects of the 68020. hooked up to the company's mainframe as soon as possible. Then I got serious. I

'68' Micro Journal 21 dismantled my computer room and packed and suchlike with maybe four or five CoCo, printer, disk drives, and all in to keystrokes per requirement. Spellbinder work the very next day. Two hours later I demands at least twice that many to was up and running, with hardcopy rolling accomplish the same jobs - and its own off the assembly line at a heartwarming internal codes are in gross conflict with rate. Within a week CoCo was churning out the most-often-needed printer codes. the first computer- generated engineering (That's why Margaret refuses to use SB. drawings ever seen within company walls. Everytime she wants to get a circle-R Within a month the Interface Manual that "R egistered" symbol out of the Qume had been forthcoming for many moons was in printer, she ends up with continuous the hands of the review committee. The underlining. I tried it too. I got it to boss was impressed. The workers were go, but I had to stand on mY head to make impressed. The company president was NOT it happen.) impressed. He did NOT care for the idea of Disk handling proved to be a "toy computer" in the operation. Spellbinder's most disastrous pitfall. (Everybody knows that "Real Men" don't own Three times I filled up that dinky buffer. Toy Computers, right?) Three times I issued the appropriate "Save Within two weeks the proper To Disk" commands. (SB uses "GO" as its arrangements had been made to complete rrr1 command for "Get Done". I interpreted it hookup to the mainframe. (It's an IBC another way by the time I had finished.) Super Cadet, running the OASIS operating Three times the SB software ate rrr1 text, system with Spellbinder, Userbase, and some refused to tell me where it had put my other stuff.) No sooner did I start to text, and at last refused to accept any learn the wordprocessing software than I more text. Or anything else. (At least SB knew I was in trouble. isn't as bad as UserBase. I crashed the The first sign of trouble was when the whole darn machine trying to get out of a boss (a charming Swiss-German fellow with a corner I had painted myself into with the laugh that has been known to uproot even "FORMS" option from that package.) Maybe the most en trenched employee on contact) "Real Men" don't own Good Software, either! told me he had a favor to ask. "I vant you Then there's graphics. The IBC doesn't to, you know, help out za gurls vfth zis do them. We have a Hewlett-Packard that Spellbinder ting", he said. "None of zem WILL do graphics. But the software costs realy know how to use 1t, and ve don't haf $10,000.00. Yup. Ten Thousand clams. za time, but vith your computer back­ It's enough to choke a Missouri hawg.

grrownd .••" He stood in the classic "Who Besides, we don't have it. Not the Knows??" posture. software, anyway. And probably not the What the heck. I'm a sucker for Waifs, money, either - at least, not for that. Orphans, and the like anyway. Besides, I For my money, we'll do just fine with my was itching to give that IBC a run for its CoCo, a couple of excellent printers, and money. I perched mYSelf on a moribund Back the old standbys: St¥lograph (which I just Chair I had found in the coffee room and got) and VIP Writer (with an occasional bow set to work. The reward for llff impetuosit¥ to Telewriter, although VIP works better) was not long in arriving. for text, and the amazing SO P and You know, I really don't think I fully Graphicom for all those wonderful apreciated CoCo until that day. Don't get engineering drawings that the Engineering me wrong. The IBC is a mighty fine Department (bless its overloaded little machine. So was the Steam Drill that old soul) might get done "Any Month Now". Not John Henry won his final race against. to mention the budding little Forth Just one difference. This time, it was the Interest Group that's springing up around Steam Drill that lost - but the challenger that EXCELLENT FORTH that Hoyt Stearns is still alive and kicking. Electronics markets to CoCousers (much Just for starters, consider user more to follow on this later). Can't beat space. Spellbinder on a multi-user IBC it - its lexicon is full-featured, and its allows about 12K for text. A 64K CoCo Semigraphic-8 editor is the best of ANY running, say, VIP Writer, has at least package. (Does FORTH even run at all on 40.6K of empty space for text. (You can Z-80 systems?) Move over, you makers of get a wee bit over 48K if you "DUMP" the musclebound micros. Stand back, you high-resolution display.) Then there's purveyors of pot-bellied minis. CoCo's ease of use. VIP Writer allows the user to still in town. (Catch one if you can.) program file chaining, printer commands, 'Till next month,

Z2 '68' Moero Journal If the computer was only capable of BASIC OS-9 keeping records, that would not be a great feat. Records have been kept for by Ron Voigts centuries, although I have to admit the Editors Note: Ron has been writing computer does a more accurate job. The the "Basic09 BASIC" Column in the Color greater contribution is that the computer helps us to understand what we have stored Mfcro Journal on programming with Basfc09 since last summer. Since in it. It puts the data in order. It sorts things out. Imagine trying to look there 1s very little difference between CoCo OS-9 and the SS-50 Bus System's up a phone number in a phone book that was not listed alphabetically. I dare say OS-9, and because OS-9 is still a relatively new Operating System, we finding a particular name and number would be impossible. Thank goodness things are have renamed Ron's Column to "BASIC OS- lfsted in alphabetical order. Looking for 9" to allow him to cover OS-9 IN the phone number takes no more then a GENERAL. This will allow Ron to minute or two. broaden his coverage to anything The OS-9 system is ideal for record pertaining to OS-9 for the newer keeping. It permits you make directories Users, including how to use OS-9 and on a disk for specific purposes. Under many of its features, introductions to these directories you can have more Pascal and C along with continued directories or actual data file. (The OS-9 coverage of Basfc09, etc. We also· feel Commands Manual, chapter 2 contain a that this kind of information will be of detailed description.) In the files you can help to those that have not yet taken keep track of many things. They may the "plunge" into OS-9 in that they can contain addresses, checking account, home get a better feel for the fundamentals finances, income tax records and almost of this excellent Operating System. It anything else you can think of. Being able has been interesting to note that the to sort the record in your files can save a 1 a rge rnajori ty of the "ex-FLEX" Users lot time and help to better understand that have taken the time to really LEARN how to use OS-9 prefer it over them. FLEX (and those that are using OS-9 With Basic09 you can write procedures Level II are almost UNANIMOUS in their to sort your files. Addresses can be put preference for OS-9), which 1s sayfng a in alphabetical order, check numbers in numerical order and your income tax can be lot considering that FLEX is such a sorted by category. Going through your flexible and easy-to-use Disk Operating files can be much easier once they have System. We hope that the addition of Ron's Column, along with the excellent been put in order. "OS-9 Users Notes" Column from Peter The simplest sort is the "selection Dibble, will provide a broad coverage sort". Here two arrays are used. The that will be of interest to all of the first holds the unsorted list. The other receives the items from the list as they Readers of the '68' Micro Journal. are sorted. Also two variables are used. -RLN- One is a temporary holder for the item and the other its place in the array. An array Sorting Things Out of 6 numbers to be sorted may look like: S: 14 23 39 10 4'5 19 Besides being able to crunch numbers T: and play games the computer has the ability M=i4T=r--- to store data. It can store tremendous H ere S i s the u n sorted array. T amounts of information. I don't think receives the sorted items. M is the first there is anyone in this country who has not i tern in the array S and P is its position. been touched by the computer. If you carry credits cards, you're in a computer Our sort goes down S until we find a number smaller. When 10 is found: somewhere. The Gas, Phone and Electric companies have you in their computers. If M=10 and P=4 Since no smaller numbers are found, 10 is you own or drive a car, you're in a computer. If you work or are in school, put into array T and its position in S is flagged. Our sort now looks like: probably some computer knows about you. Not only you, but records are kept on S: 14 23 39 XX 45 19 everyone. There are millions and millions T: 10 M=l4 T=r--- of records.

'68' Micfo Journal 23 XX marks 10's original place in s so we this as a model for future bubble sorts. don't use it again. 14 is again tested Its very easy to implement. against every number in the array. This The "selection" sort takes the most time at the end, M=14, so it occupies the number of comparisons to run. If you were second position in T. Next 23 is tested, to sort 100 items, it takes 10,000 but at the end 19 is smaller, so it gets comparisons (that's 100.2). The "bubble the 3rd position in T. This continues sort" for 100 items needs a 5050 until all numbers have been tested. The comparisons (100+99+98+... +1=5050). If you final outcome looks like: can cut down the number of comparisons S: XX XX XX XX XX XX then the sort will go faster. This brings T: 10 14 19 23 39 45 us to the third type of sort. It is called All the numbers have been checked. T the "partition sort" or better known as now holds the sorted array and s has 6 the "quick sort". To sort 100 i terns it XX's indicating that the all numbers have needs only 200 comparisons (lOO * log 100 = been sorted. The biggest problem is that 200). That fs quite a savings in time. this method is wasteful. Whatever the size Here is a list of 6 numbers to be of the data to be sorted is, at least twice sorted by the quick sort method. They as much memory must be allocated. I have are: never seen anyone use this sort since it is S: 25 5 50 7 48 32 memory hungry. If you're running Basic09 The trick in this method is to find on a 64K CoCo, you have to be a little where the first item falls in the array and frugal with memory. at the same time to sort items by greater The next type of sort is called the or lesser then the first item. 25 is the "selections and exchange", better know as first number in the array. Comparisons are the "bubble sort". This sort needs only on made starting a the bottom of the list. array to hold the data and two variables. When we get to 7 we see that it is smaller, In this sort we start with the first item so an exchange is made. The new list looking for something smaller. Here is a 1 ooks like: new set of numbers to be sorted: S: 7 5 50 25 48 32 s: 12 22 7 19 25 30 Now comparisons are made starting at the M=12 P=1 top of the list looking for anything M is the temporary holder for the smallest larger. We stop at 50 and an exchange is number and P is its position in the array. made: The new list looks like: Comparisons are made going through the S: 7 5 25 50 48 32 list looking for something smaller. This sorting continues until the numbers Eventually we get below the number are larger and the ones M=7 P::3 above are smaller. In our list we have The selection part has been completed already achieved this. The 25 is at its and now for the exchange. 7 is put into correct position in the list. the first position and 12 into the 3rd Now comes the tricky part. We really position. We now start with the second have two new lists. There it the one above item and a go through the list again. This the 25 and the one below ft. They are time the 12 ends up in the 2nd position. respectively: We keep doing this untfl all the items have 7 5 been done. Eventually our list of numbers and will be sorted and look like: 50 48 32 S: 7 12 19'22 25 30 Why not use the same sorting system The bubble sort gets its name from on them? They can be treated as two the way the smaller items rise to the top separate 11 st. Each one smaller than the and heavier ones sink down. It is like previous list and therefore requiring fewer bubbles in water; they rise to the surface. comparison. This method can be carried Listing 1 is a short Basic09 demo out until the list is down to one item. program that lets you input in any 6 The 7 and 5 would be sorted: integers. The actual sort uses two 5 7

FOR •••NEXT loops. The "i" loop insures and any further lists would be "one" long that each number in the array gets so no further sorting is necessary. The checked. The "j" loop starts with whatever 50, 48 and 32 would find the 50 at the va1 ue "i" is and sorts from there. The bottom. The new list would be: workings of this little program is exactly 48 32 50 the way I described before. You can use This would leave 48 and 32 to be sorted.

24 '68' Micro Journal One more pass would leave it sorted: the sort like starting time, ending time, 32 48 and whether the file is longer then 100 Even though the list is being lines. subdivided and sorted the actual members The next sort is "qsort". The are still in the original array so the LOOP .•.ENDLOOP sorts the first item in the outcome would look like: list and puts it in the proper place. The S: 5 7 25 32 48 50 first REP EAT ...UN TIL searches from the Does this all seem a little confusing? bottom of the list. If it finds the top Just remember that we are seeking to item is larger, it swaps the two lines subdivide the list into smaller units. This around and begins another search in the is why it is called the "partition sort". next REPEAT... UNTIL searching from the top The savings in time is because the of the list. The search continues until a resulting lists from the original become 1 arger top itern is found. Two variables smaller and smaller at a rapid pace. Less insure that we do not cover the sam and less time is spent in sorting. territory. They are "ttop" and "tbot". These are temporary top and bottom markers A GENERAL, ALL PURPOSE SORT that are readjusted after every swap. Finally, if "p", which is our movable marker, I thought this month I would give you ever equals the "ttop" or "tbot " than we a sort using the "quick sort" technique. have reached the end of the list. This months program consists of 3 We now have two lists. The smaller procedures, shown in List1ng 2. There is above "p" and the larger below. As long "sort", which ts the main procedure that as the list are at least two lines in size does all the management work. Next is we can run "qsort" on them again. This "qsort" which does the actual sorting. And brings up an interesting technique. It is finally there is "swap" which switches two called recursion. Recursion is an data fields. This sort wil l take a file of interesting concept. To put it Sif!lply, up to 100 lines, at 80 characters or less "recursion" is where a procedure "runs" per line, and sort them in ascending order. itself. In "qsort", it calls itself to sort Let's say your file is "IT1Yfile". You would the two sublists it has created. Those enter: two running "qsorts" may call "qsqrt" sort(•-rttle•) again. This could be almost endless, but As long as Msort" is packed in the the last two IF... THEN statements prevent commands directory, it would load "11\Yfile" this from happening by insuring that our (up to 100 lines) and began sorting it. If lists are at least two lines long. "Qsort" you appended a ":d" to the file name it does not have to reload since the same would also print statistics while it code is reused, but a separate data area sorted. So you could enter: is necessary for each incarnation of sort(·�le:d•) "qsort". The "s" array was dimensioned Either way it eventually prints a sorted elsewhere so it does not add any extra file called, "IT1Yfile SRf'. The original file overhead, but the other variables require a is left intact. You can do whatever you new data area for every call to "qsort". want with the files. Perhaps you want to It requires a little over 30 bytes of data delete the original and rename the sorted area. If it is called 100 times in the file. Or maybe just leave them the way sort that is 30X100 or 3000 bytes. Add in they are. This sort will take less then the original 8000 bytes for the file, plus 100 lines and the line length can be 80 the procedures and RUNB, and you are characters or less. You can change these looking at a lot of memory tied up. This parameters if you like. The only is one reason why I limited the sort 100 constraint you have is memory, as I will lines. If you feel ambitious you might try explain in a moment. to increase this amount. I think it may be The first procedure is "sort". It possible to get up to perhaps 200 lines. will accept a file of up to 100 lines, each The little procedure "swap" simply being a maximum of 80 characters. This swaps two lines around. Once you've procedure reads in a file, sorts its lines entered the procedures, you are ready to in ascending order and writes a new file pack them. You have two choices on how to with the old name and a " SRf' added on. PACK them. You can pack them under one If a ": 0" is added on to flle file name, a file name by entering: boolean variable, "dflag" is set true. This B:paclc* sort tells "sort" to print documentation about and they will be packed together in the

'68' Micro Journal 25 CMOS directory under the name sort. FOR J•l TO 6 IF Having them under one name makes it easier •>b(j) THEN •:•b(j) to transfer them to another disk. Just p:•J copy one file. The disadvantage is that if ENDIF you wrote another procedure and wanted to NEXT J b(p):•b(f) use "swapM or "qsort", the new procedure b(l):•• would have to have a separate copy of them NEXT I

( • to use. So the alternate plan is to pack print the sorted lntgers •) FOR 1•1 TO 6 them separately by entering: PRINT b(l) B:pack sort NEXT I B:pack qsort END B:pack swap PROCEDURE sort (• Now when you run "sort", "qsort" and This progra11 will sort a file '" ascending order •) (• ll allows • lfnt to be 80 characters lo"g •) "swap" will be 1 oaded when needed. If you (• And wfll sort up to 100 lints •) transfer "sort" to another disk, you will ( • fflt to be sorted •) have to remember to copy its companions PARAM flle:STRING[32) too. But then again "swap" and "qsort" can ) be used by other procedures. Either (• other variables used • DIM l,j,path:INTEGER method works since, in a Basic09 procedure, DIM llnt(100):STRING[80] when a RUN is encountered, memory is DIM dflag:BOOLEAN searched first for the module, and then the (• find out If dflag Is TRUE or FALSE •) execution directory. fllt:•TRIHS(fllt) I think you'll be surprised with the dflag:•FALS( quick sort method. Some years ago I wrote IF RIGHTS(fllt,2)•":0" OR RIGHT$(fllt,2)•":d" THEN a bubble sort in basic. Whenever I used dflag:•TRUE fllt:•LEFTS(fllt,LEN(fllt)-2) it, I found it was a good time to go and ENDIF raid the refrigerator, watch a little TV or do something while it ran. You won't find (• print start ��tssage •) IF dflag•TRU( THEN this the case here. I ran "sort" and on a PRINT 100 line ffle it took about 30 seconds to PRINT "SORTING FILE: ": flit run. Keep in mind some of that time was PRINT "START TIME: ": RIGHTS(OATES,8) PRINT devoted to reading and writing the files. ENDIF Play around with some of these sorts. 100 • ) Devise some of your own. If you develop ( • read In fflt, up to lfnu OPEN lpath,fllt:REAO one you're rather proud of, send it in, and I :•0 we'll share it with the other readers of WHILE NOT(EOF(Ipath)) DO this column. Kernighan and Plauger's I :•1+1 EXITIF 1>100 THEN 1•100 "Software Tools in Pascal" (Addison-Wesley ENDEX IT Publishing Co., 1981) contains an excellent READ lpath, line( I) Chapter on Sorting (and is one of the ENOWHILE

"bibles" on HOW to Program -- also, Pascal (• middle message • ) is fairly easy to convert to Basic09), and IF dflag•TRUE AND 1•100 THEH THE bible on Sorting is Donald Knuth's "The PRINT "MAXIMUM NUMBER OF ENTRIES READ" PRINT "SORT HAY NOT REFLECT TOTAL FILE" Art of Computer Programming; Volume 3: PRINT Sorting and Searching" (Addison-Wesley, ENOIF 1973). Whether you try some sorts, or work ( • SORT FILE •) on something else, the more you program RUN qsort(l,l,line) the more you'll understand. See ya next

( • time! wrfte sorted ffle •) CREATE lpath,fllt+"- SRT":WRITE PROCEDURE BSORT FOR J•1 TO f (• Bubble sort dt.onstretlon •) PRINT lpath,llne(l) (• Enter any 6 Integers and •) NEXT J (• lt wfll sort the• In •) CLOSE lpa th (• ascending order •) DIM I,J,,.,p,b(6):1NTEGER (• prfnt final message •) (• Input 6 Integers •) IF dflag•TRUE THEN FOR 1•1 TO 6 PRINT "SORT COMPLETE" INPUT "ENTER INTEGER>> ",b(l) PRINT "SORTED NAHE: "; file+" SRT" NEXT I PRINT "ENO TIME: ": RIGHTS(OATES,8) (• do a bubble sort •) PRINT FOR 1•1 TO 6 END IF ll:•b(l) p:•l END

26 '68' Micro Journal PROCEDURE qsort scientific, etc.) software written for the PARAM top, bot:INTEGER; s(lOO):STRING(BO] TSC XBASIC version than ANY other DIH test:BOOLEAN DIH ttop,tbot,p:INTEGER programming language - including assembler. ttop:•top Therefore, it stands to reason that K-BASIC tbot:•bot is the most efficient way (actually -ONLY p :•tbot way) to 'port' all that software from FLEX to (* fiRST ITEM IS SORTD TO FIND ITS POSITION *) OS-9. Finally the OS-9 user has a greatly (• IN THE LIST. *) expanded source of software to choose from. LOOP 11 REPEAT \REM sort frOM bottom (See a those pages of XBASIC software test:•s(ttop)>s(p) OR p•ttop advertised in 68 MICRO JOURNAL over the p:•p-1 years). UNTIL test p:•p+1 EXITIF p•ttop THEN ENDEXIT \REH no more to sort We hope to have a complete review of this RUN swap{s(ttop),s(p)) version of K-BASIC soon, however, because we

tbot:•p have received so many calls, from OS-9 users p:•ttop wanting to know when this particular version REPEAT \REM sort from top will be available, we use this means to let test:•s(tbot)

(• lesser and greater Items. Now Qsort • ) releases, etc .• for additional info. • ( Is run on the two sub lists • ) Reserved orders (for FLEX version) and OS-9

IF top

K-BASIC, in it's latest form, is the OS-9 So you save about $80.00, and that is a version of a directly compatible TSC XBASIC bargain! This offer is not retroactive, and (eX tended BASIC) programming language, and will conclude April 15, 1985, so I am told by as you should know, there has been more the folks at S.E. Media and Lloyd I/0. 68XX serious (business, educational, DMW ·sa· Micro Journal 27 lKIIJCilU[IIIJ on the lf1JIJC Macintosh

by Authors Wanted Mike Wolf 3195 Arizone Computer Pu blishing Inc. is presently LosAllmOS, NM 61544 investigating the possibilities of Publishing a "Pure Macintosh" Magazine. We are. therefore. requesting that offering Replace the with MOUSE our '68' Micro Journal Readership "first a TRRK-BRLL shot" at becoming Contributing Editors to the new Mac Journal Magazine. If yoor desk is like mine it often gels so full of stuff The Macintosh will, quite obviously. (cluttered with junk) thet it's hrd to find enough room to become a real force in the low priced. maneuver the mouse. I solved that problem by adapting a 68000-Based, Personal Computer arena. Alari trll-ball to the Mac. The Mod is quite simple and is Apple says that they sold "over 250,000" reversible so when the kids want to use it on their Alarl you Macs the first year. and that there is can restore it In a few minutes. It consists of replacing 2 ICs "more than 300 Software Products" available inside the case with jumper heeders and building an adapter NOW. We fee 1 that with the number of Mac plug to get the connections to the correct pins. All in all about Users and Advertisers, we can put together a 30 minute job. The TRAK-6ALL costs $49.95 retail and an excellent Magazine and PAY the Authors less et discount stores so is a pretty good deal. of the Articles and Reviews that we accept for Publication. The payment will be consistent with the Industry. A2 t1AC TRAK-BAll

Mac Journal will be primarily oriented towards "How to USE the Mac and the Products that are available for it". While we hope to be able to devote a small section of Mac Journal to "advanced" topics such as Programmi ng. we realize the the "normal" Mac User is more interested in "How do you USE a specific Data Base Management Package?", or "how to use it more efficiently?". or "What does this JUMPERHEADERS particular Program or Product provide, and what can be done with it?". In other Adapterplug (06-9 male) words, the material should somewhat instructional in nature. If you feel that you would b� HARD DISK interested in writing about the Mac and its Products. and get PAID for it, send for a I heve had 1 Davong 10 M byte herd disc for a couple or months. This is 1 nice edd on for the M8c. It c onnects to the Mac Authors Application to modem port . It Is 1 lot fester than the Ooppy (about 4-5 limes) and really cuts down on the wait times to loed files. Mac Journal The best prt Is the little message on the right sfde or the top 5900 Cassandra Sllith Road line lhat seys "661SK .vtil.tlle" after loeding system files Hixson, TN 37343 Maclte, 'ttr'r MacPelnt. eeslc, 11Jitlplan. all font files, and a booch of dell files onto the di�. It requires booting off the DON'T LET THIS GOLDEN OP PORTUNITY supplied Ooppy, but once bootedthe Ooppy can be ejected and PASS YOU BY -- the disc operates With the orne use as the floppy. only Contact us N-0-W!! fester and bigger. It costs lbout $1 eoo. If you need more space you CM get up to «> M bytes. The worst prt is it does P.S. -- If you think you could do a good tie up the port. This miles it hrd to use 1 modem or second job writing Articles for Mac Journal. printer. Another problem is lhal some sonwre doesnl ell ow but don't HAVt a Mac yet. go ahead and you lo copy it to the hrd disc and run from the copy. If you get in touch with us. We are working shouldget a hard disc be Rre to chaclt with sonwrevendors on the possibilities of being able to to be sure you can load it onto the hard disc before you buy. provide a few Macs for the specific purpose of supporting the Mac Journal.

28 ·sa· Micro Journal u 1101 1118 rou IIUI•OIIOI FLEX Routines u 1171 SUCII 100 ... , Jl )1 •STOllACE ll H 0001 Ill t:OO SCRUCI ARIA ON BASI PACE General Applications 10 OOOJ ILO II 100 II 0011 ITIM PI IOU Ul II oau IT INPI roo •II h•ve not eeen •nJ 4ttae\ea lhOwtnt \he Qener•l uaefulneaa I) 0001 0181111 IOD I ot tne the FLlX antern•l uwer c•ll•bl• routlnee aucn •• ODTDIC. II 0011 OR lVI 100 013 ASCll to do convera1on of antern•l ban•rJ t.o d•o•••l '" •••orr u 1 recentlr needed to do tna •. to con�ert tne ban•ry volu•• nu•ber u ...... •...... •...... ,, A8Ctl found '" • d••�·· &t•t•• lntor-••t•ou fl•cord to • etranq 17 •RUDY TO COPT DIRECTOR! an •••orr. tor uae 1n Denn•• Md I HJ•n a 9roor•• DIAICtOJt True II • •11 •1 PLEI proor•• produc•• aorted •••t•r dtrectorr ot daak• It ...... •••• lov lfll •••u• of 41 • ao !I 0000 Cl 09 " IIOFILI LDI t&IRfCB C:ET FiluM llllr R•tner tn•n ancorpor•t• tne •hole t J•rda ot tne conueraaon 81 1003 " u LOl A DRIU A.9CII cod• tro• btn•rr to dec••••· at •••••d poaa1.ble lo uae lt\e 63 0001 A7 u BU A ),I ••••t•nt uaer routane an FLII The on11 trouble •• tn•t OVTOIC &I 0007 II 03 LOA A u •• an\endtd \O pr1nt ••• re•ull. tnate•d ot n•f'ldlnt l\ over ln • u 0009 1.7 " STA A Jl ,I POl liT TO Bill req1eter rortun4lelf tner• a• 4 ••1 bualt anto PLll to u 0008 �, II CLII )0,1 Tuc• •cQO•p'a•h \he O•�ared Gonv•r•aon rLII h•• 4 )u•p t•�le vlth veotor• tor outputtanq to • pranter or CRT. but theet ••1 �� •ltere4 to ateer tne output to other devac•• The ateerant OIRICTOR PATC8ES ••ch•n••• t• not la•ated to n•rdv•r• d•vaet• •nd thear dravtr•. however �ne o�tput c•n )w&t •• •••''' be &leered to • �7 0000 II 01 LOA tRDSICT subroutane. vn•r• at c•n b• wratten to •••orJ tor other u••• �� ooor u oo su 0,1 !9 0011 80 81 01 JSII fMS Tht dtc•••l eonv•r•aon •• �ore co•plac•l•d •nd 1onqer tn•n 10 1111 " OJ 810 OITSIR tne other.. but tha• •••• etteranq c•n be done ror the •••pler •1 0011 II 01 18 JMP IRROR rovtan•• ODTIIl •nd OOfADR an tne •••• ••nner H ll oo1t Cl ao 01 CITSI R LOI tDISWII POT SPACIS Ia BLK In ordtr to cre•t• •n A8Clt •tranq or deo•••l dtqat•. qaven II ODIC U ZO LOA nzo • 16 bit ban•rJ nu•btr an •e•orJ. the followlnQ procedure c•n be u 0011 A! 01 CIITSRI STA 0,1 u•ed II 1010 01 Ill tl 0011 tC 00 01 CPI tOISMIII•I Set up • poanter to tht •r•• to rtoeavt the •tranq, •tor• II DOlt II rt BIE CIITSRI at an •••orJ, n••e Uu• ITEMPI " 70 0011 Cl 09 Fl LOI t&IIIYCS C•ll FLII ro�l•n• RSTRIO ISADIAISCOIAI \0 cl••n up ItO 71 DOlt U !8 LDI HB.I CIT 01&1 NO VICtor• 1 1 ooze or a1 BTl Ill SUI IT 73 aozo c1 01 so LOI ••sol 00)1 Jncrtatnt the tl•9 •t ••ctl!•CCll to suppre•• anterference 71 80 AD It: J&R PSTRNCI 00 01 till POIKT TO DISK fro• TffllT p•r•�•tere 7& 0033 Cl LDI 10 H IOH Cl 01 LOA 8 " 1LAQ FOR SPACI SUP S•l In• •d4r••• •l OUTC¥ f\AOIOtoCOIOI \0 lh• •ddr••• ol 11 OOll 80 AD lt JSII OOTOIC PIIIT IT JOur •ubroutane tn•t •all store the stranq Do not overl•r th• 71 1038 80 AD Zl JSR PCIll, )u•p ln•tructaon •l lDO,ICOOr 71 10 •CAPTURI OUTPUT Of OUTDCC AND PUT I� 01&111 Lo•d watn tht •ddr••• of th• b•n•r7 nu11ber •nd lo•d 8 II watn • 1 at 10v vaen l••oanq bl•nk•. ••ro lor bl•ntl •wppr•••aon, IZ OOJI Cli 00 01 LO t tO IS UI UIT PDIITIR •nd c•ll OUTDEC u 0011 or u BTl JTIIIPI II DOll 10 l D Z A JSII IS Till0 RII;KT ALL 110 16 001 1 7C AC ll INC BPIO ICNORI TTIIIT •• o o 1t cr oo a c LD I tLOBUF IIIIIT OOTCI 91CTOII A •••PI• proqr•• ••o••�t ancorpor•tanQ thae ,. q1vtn b•low 17 O D IC ' ' AD 10 STI ODTCU Tha• •ctu•l\J •• • p•tch to Den"•• Mallaq•n•e OlRICTOR protr••· II DO IF Cl 10 01 LDI Ull POINT TO SIIIAIII ao th•t the op•r•tor do•• not h•v• to lJP• an the daa� It IOU Cl 01 LOA 8 tl rLAO TO LIADIIQ IPACIB de•craptton Tne da•k nu•b•r •• t•k•n fro• ••ch d1ek'• Syet•• 90 1011 80 AD 39 JIR OOTDIC COI9111T lnfor••taon Record, oonvert•d •nd pl•ced an the •••• etranq •p•ce " •DOll, SO RI&IT VICTORS •• an the oraoan•l protr•• I h•v• found better th•n • t to 1 tl DD&l 80 AD lA JSR RSTRIO •nor•••• an •P••d runnanq tne proor••· •nd even •ore countanq •7 9l IOU ZO OC UA OOTIT PIIOCIID tr•q�enl •••t•k•• Tnere •• • pr•l•••n•rJ ••o•ent wnach re•d• ,. the SIR tro• tr•c" a. aector l •nd •ave• lhe da•k nuaber troe at .. •OUTPUT 01 OOTOIC OOIS IIIII to •cr•tch •••or7 c•lltd IHl Tnt conver•aon p•ok•t• p1cka it ,. 11 lUI up !ro• there •n4 l•r• 1l do•n •• ASCII •l OISIIl " one or LOBOF STI IT INPI 91 IOU Dl l6 LDI ITIN PI ODU l7 DO 0 ,I POT CUI 1111 Tne loc•ta on ot tNt p•tcn c•n be aGent ataed bJ the L&bel H sn 100 0011 01 Ill IOriLI an tne oraqan•l eouro• laetang ot OlJICfOk. Th• entare STI ITEMPl aeqaen\ down to OOTlT •• r•p\•ced 101 oo u or u 101 IO U 01 ll LOt ITIN PI II�BTO�E I RTB ll•lph loQiun4 103 8017 H OIRICTOt PATCIIS B••ttle. W••nanoton DIIICTOII PATCMCB

101 • 10& & •TIIS LISTINC IS fOR PATCM&S TO Tl£ OIRICTuR 101 • •PROC�AM 8Y OCNNIS MILLICAI, 'II JOURNAL, I 0 7 FIUUMI UT DIBUO 7 •IOVIM 8£R 191 1 , PACI l � Til PATCIIS PERMIT 101 I •RIADINC TNI VOLUME NUMSIII Or Til DISK FROM 109 DIIIICTOR lSI ' " ' ' •Til DISK ITSELF, RATHIR TIAN 8Y Til OPERATOR 10 •TYPINO Ill Til IMFORMATIOI 110 YIIIUCI BAS Ill Ill CRUD JIM lll II Ill ararr TIT 101 \l • IOUTIS TO FLU Ill I) AOOO BASI tOO uooo Ill ...... II ADOl WARMS EOD BASI•SDOl I U U A DU CITCIR liOU BASf••DU Ill •LOOIC It ADIS IIIBUFF EOU BASI•OD\8 FILL KCTBO IOF Ill 17 ADII PIITRIIC 100 BASI••Dtr Ill • I C£T OIIIICTORI INFO II lOll PCRLt IOU BASI•OOII \19 • Z CliCK PIRST CIAII 1111106 OR ZlkOI It AOl7 IIITCI •00 8AS C••DI7 IZO • l COPY YILINAMI liT TO NAITCI 10 AOID crnJL aoa 81111••010 Ill • I COPT 015.110 TO MABTIII ll AOU SITIIT lOU 8161•\0JJ Ill • � COPY START/liD TR/IICT ll ADJY RPTIRR IOU BAB I•tOJP Ill • t COPY CI!IATION DATI ll AOH ADDBI 100 BASI•S OJI Ill II AOII PUTCIR lOU BASI• SO II IU •01 Ll&T IIITRl Ill DIRICTOIIJ, ASI OPR I, I& AOH OUTDIC 100 BABI•SDH 116 •TI&RI 18 liiOTIIR Dill TO DO 16 AOII IIIOIC 100 8ABI•o011 ll1 17 ACll OUTBW IOU BASI•SCI I •&IT UP OIR,C8 FOR 011¥1 II lt ACII SPIO IOU BASC•SCII IPL 10 tLAC Ill It ADIO OUTCU IOU 8161•S010 llf 110 oo•1 ca 01 &I COTIT LDI tDIR,CI 30 AOU IISTRIO COO BAIII•SOU IJI ll ACU FILOA IOU 8A81•SCII riLl ODTP ADDR u roll OUTCI IOU .,Oil NO II!ROiflf OITICTID U B t Dl 'II& IOU BA&r•tt tal

'68' Micro Journal 29 mare OD the 512K mac through the picture almost instantaneous). HoYiever. oon't assume that a 1 28K Macintosh is useless; it's just that the extra memory 8IXIs so much more by potential to an alreadypowerful computer. frank Henriquez 500 Landfair Ave. As a UCLA employee, I was able to get my LA .. CA. 90024 Macintosh at a considerable disc:ount through the University. I originally bought a 128K Mac, but I upgraded it to 5 1 2K as soon as the new boards became The Apple Macintosh was originally introouced available. The upgrade is usually oone at an Apple with only 128K of memory (remember when you dealer, but I decided to oo it myself when I heard that could impress your friends by showing them your the dealer would keep the old board. 6800 computer with 32K of RAM?). Some argued that this wasn't enough memory for some of the more Taking the Mac apart was a bit more difficult sophisticated programs that they were hoping to use than I had expected. After setting aside a clean or write. Still others thought that limiting a 68000 worlack of the CRT tube with the memory intensive programs. If you're planning on Video and Power Board .to one side. Below the CRT, ooing any extensive programming, the extra memory inside a small metal shield, is the internal disk drive will make your life a lot easier (some Mac ,and below that, inside it's own protective shield, is assemblers wfll leave you with less than 47K of the main Logic Board. There are only two connections memory for your program on a 128K Mac, and the to the main logic bo8rd; a ribbon cable from the Compilers are worse). Also, there are new versions internal disk drive that attaches to a plug right of MacWrite and MacPaint that make � use of the behind the external disk drive connector, and a molex extra memory (you can now hold a complete connector from ths power and video board which MacPalnt page in memory, which makes moving powers the main board and takes the video and sound

30 '68' Micro Journal signets from the main logic b08rd to the video end BIT Slicer power board. Once thesetwo cables are removed, the logic board slid out freely. Before I touched any of ADVENTURES OF THE BIT SLICER the boards though. I mOOJ sure that I was grounded by (to keep static discharge from damaging the Frank L. Hoffman computer). Nowcomes the easypart: I pulledout the LLOYD 1/0 old 128K board. slid in the 512K board. reconnected 19535 NE Glisan both cables, squeezed the back shell on and replaced Portland, OR 97230 the screws. USA All told it took me tsbout en hour to build the (503) 666-1097 tool, remove the screws, pry off the back shell and replace the logic board; if I h� to oo it again it would I've been sitting at my keyboard slicing probably teke less then 15 minutes. bytes into bits, killing bugs, and otherwise spending a lot of time chewing I examined my old 128K boardand found it to be code. It has occurred to me that some of 512K quite different from the new board. This may this "raw data" might be suitable for no longer be true with more recent 128K Macs; "entry" into the thought processes of other Apple is usino the same 512K board for both the "68 Micro Journal" readers. Some of you 128K end 512K versions of the computer. The only will recall the mildly humorous articles in differenceis in the memory IC's, a jumper andsome 'Forum 68' (a magazine now in the buggy resistors. In fact, there are markings on the PC hereafter) dealing with the inner workings boerdshowing which components heve to be �died or of computers and . In this deletedto ma)(e either version. column, I am picking up where I left off (to the best of my recollection). You may be asking yourself "Gee, if I have the new version of the board, all I have to oo to upgrade First, permit me to review a little of who

is unsolder the 64K IC' s and replace them with the am I and where I came from. I own a 256K... ". Well, I hate to be a party pooper, but it's software house (LLOYD 1/0) here in Portland not that simple. The main logic board is a four layer Oregon, which has been doing business in PC board. This means that there are actually four the S50 market for three and a half years. copper layers running through the bosrd carrying I started out with the CRASMB(tm) cross assembler (supports 13 CPU's), ED/ASM(tm) signals. Unsoldering a multilayered board is very (which was licensed by Frank Hogg tricky and difficult; if you oon·t have an excellent Laboratory for their version of FLEX(tm) soldering iron and the proper tools (and the for the COCO), DO(tm) (a SHELL control experience), you will probably damagea trace or two language, or pica-BASIC which was licensed (S(t{, in the second layer) and you'll ruin your by GIMIX for their OS9(tm) systems), and computer. If you are experiencedwith soldering and CRASMB 16.32( tm) (a 68000 CPU cross unsoldering multilayered boards, then you may be assembler). l�ore recent developments 6ble to seve ts bundle on the upgrede ( et about $ 1 5 ts include the Search and Rescue Utilities(tm) chip, the sixteen 256K IC's would cost you about (for OS9, free with most of our software), $240; that's less than a third of the cost of the PATCH(tm) (a modem program for OS9), and upgrade). K-BASIC(tm) (an XBASIC compatible BASIC compiler for OS9 and FLEX.) You're probably wondering what the risks are in ooing your own upgrOOJ. Well, Apple is extending am your basic computer hacker, having the warranty on every upgrade.so if 90 days of extra recognized early on the computer's ability warranty are worth more to you than a spare board, to save time by programming as opposed to then hcve ts Decler oo it. If you've been dying for en building logic board ad infinitum. Frankly, excuse to peek into the Mac (like me) and would like I'd rather be here at the terminal than to have a spare board, then get the proper tools and oo almost any other place on earth. I have a Televideo 924 connected to a GIMIX III it! But what about the spare board? Well, you could system running OS9 and FLEX with a 19 Mb keep it in stor�. in case the main board fails, or hard disk. This has been my basic you could try upgr�ing it, or use it as the basisfor a development system for over a year. portable Mac, or you could explore the possibilities Previously I used GIMIX boards in a and of !diing an expansion bus, or even frame it hano hollowed out SWTP box using the old mother it on the wall next to your new, fetter M�... board and power supply (which hick-ups and

'68' Micro Journal 31 This example assumes you are using our resets the computer at the most Search and Rescue Utilities package. "SDIR" inconvenient times.) At the ends of the is the search program. It will search the peripheral I/0 lines are a modem, plotter, I. I directory I I (the current data directory) and two printers. II for all files ending in ".asm" J • rll I and U II .con . The asterisk character is used to During the course of generating these denote a wild field of any number of products and some vertical market characters. SDIR sends the file names software/hardware items, I have developed found to standard output which has been some unique solutions for some sticky piped to the program "idel". "Idel11 is a problems. In this article, and others to file delete program that can optionally get follow, I will be sharing some of these file names from standard input. Hence the solutions with you. I hope you'll be option "-i" causes it to do so. The �hole better informed, and to some extent intent of these utilities is to facilitate entertained, as you tune in periodically file manipulation. The 1 i st of for -- ADVENTURES OF THE BIT SLICER. possibilities includes:

It is a very curious thing, how OS9 has * deletes existed for some 5 or 6 years (?) now, yet * copies during most of that time a serious set of * moves file manipulation utilities has not * lists with pagination existed. Today there are about four sets * searching for specific strings in a file of utilities available: Microware's D p • ; * filtering (removing or adding extra Johnson's, Frank Hogg's, and LLOYD I/O s : characters) One of the biggest problems with OS9 was * comparing the file's last modified date the necessity to type command lines over to a specific time or to another file and over again to take some kind of action and if true send the file name to on different files. The solution to this another utility through a pipe. problem has at last been implemented in OS9 for the 68,000. This is wild card/field These are just a few examples. Filtering file name search in SHELL. 1 believe most files is the most common use for these of the utility packages for 6809 OS9 utilities. The reason lies in the fact provide a similar file name search program that every programmer in existence has his that sends matching file names to standard own unique approach to filtering. For output. The other utility programs are example, our K-BASIC run-time package is connec�ed to the search program using a supplied in assembly source code. The main pipe 1n order to receive the file names file is over 8,000 lines long. This file (GIMIX includes our utility package wit h has been filtered to remove all comments, each of their OS9 systems.) and extra spaces enabling us to supply it on one or two disks. I use a program called I honestly don't know why no one came out PACK to do it. It was developed for use with utilities like these before. But, once with my OSM(tm) assembler, because it has th leak started to trickle, the dam broke. ; �he complete mnemonic look up table built It s something to wonder about! Perhaps it 1 n and knows how to handle the comments was the lack of information about the inner after an operand. Some mnemonics have no workings of OS9. operand. PACK looks up each mnemonic to check if an operand follows and removes the Putting t�at aside for the moment, any OS9 comments. Mnemonics not found are user who 1s not using one of the available considered to be macro calls and are f�l -name match-list search programs is � handled as such. It works very well, and l1v1ng in the dark ages. OS9 becomes much reduces a well commented source file by as friendlier, speedier, and less prone to much as 50S. The side benefit of a PACKed error. source file is quicker assembly because the assembler doesn't have to wade through the For example, suppose you want to delete 1 11 blank and comment lines and extra spaces. only the files ending in 11 • asm1 J • r" I and II U .con The following line does it for UNIX has a utility program called MAKE you. which manages the compilation of a program. Its basic function is to compare the last SDIR . *.asm *.r *.con i del -i modified date of a source code file to the

32 '68' MicroJournal FINALLY!! 'S TOLL FAEI! 1·800·338-6800 Now you can run ,. ,. .., TSC IBBSIC Programs, •• COMPILED to Asmb. Lang., ._ -···· under DS-9™, CoCo 05-9, 5900 Cassandra Smith Rd. Hixson, TN 37343 or FLEI™ with for Information call (815) 842·480 1

CoCo 05·9'" FLI!X'" K-BASIC™ SQFTWIIRI .______.

K-BASIC underDS-9 AND FLEI mill nom compile

TSC BBSIC, IBBSIC, and IPC Source Code Files

K-BASJC now motes the multitude of TSt IllS It Softwore ouolloble for

use under IS-•. Tronsfer your fouorite liS It Pre1r••• to as-•, compile them, Assemble them, and Ul013fil -- usoble, multi-precision, familior

- Software is running under your fauorite Operating System! 11- , get FISlll operotion with LESS Program Space under FLEI.

K-BASJC -- (IS-• or FLEI) i•cl••••l the ISM lsse•ltler - - $199.00

••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• Limited time ��H£lb offer� Until BPBIL 15. 1985

------·------South East madia andLlogd 1/0 is offering 05-9

K-BASIC Compiler w/ OSM Assembler BDD

o-F "FLEX<-> os-9· Transfer Program

BOTH for $}99.95 Offer ONLY valid when ordered as a Pactaae from South East Media Free Dist offer does not apply to this Special Pactaae Price OS-9 ia a Trademark or Micr .. areSyateaa c.r •. Ft.n is a Trademark or Tecbical Syateaa C.aaaltaah. lac. &:-8ASIC il I Trademark or u..,. 1/0

-ll.tobU.lty � - P • fLEX, a;, • Color Co••putt-r fLEX 0 • 05·9, CX:O • Color COI"p.lt�r 0&-9 u • l)'olfi.EX ·A.ex '' � rrooemat"- of Techrncal System' Consultants CX:O " Color COIIIP"t.,r D111< -osga a rrac�ematll of Mlctowere o::T • Color COO'p.lter Tepe

·ss· M�ero Journal 33 UOYD UO

'7: TOLL,.... TILU 551 414 PVT aTN I•IASIC •• A "NHIYI Code" IASIC C..,ller l * Level 1 1-IASIC supports sequential ftlts, noattng potu, 1·800·338·6800 shes of Integers, string •arlablu, and arrays. Tht single-pus co•ptltr co•ptlts to AsstiiCily langW�ge Source Cod� (which My be usttlbltd by tht tec1MM OSH AsstiiCiltr, or by the CllASIII Cross Assemblers). tondtttonel usttlbly '-�-� ,. .., Is used to rtduce the stze of tht run tt• pacbge. (See Review tn Oct. '14 Issue of 'A' '"cro JMrM1.)

•• FLEx. ccr. os-9

0$11 -- blinded 6809 ,..cro Asstabltr � -···· Provides local hbels, Motoroh S-records, and ln�l He• records. 41so gene ra tes OS-9 IWMOry aodules under flEI, 5900 Cassandra Smith Rd. allowing the utntenance of source code prograas for both Hixson, TN 37343 DOS's on one Systta. for Information FLEX. ccr, DS-9 $9t.OO call (815) 1142-4801 CIASRI -- 8·1h ,..cro cross Assembler CoCo os-9•• PL•x·· Slat futures as OSH, cron-ustiiCilts to 6800/218. 680Vl. 68�. 6805, 6809. 6811, 6 502, 1801, 8048, 8060/S. z-8. z-80. Fully supports tht target chip's standArd MtMOntcs and IAFTUIIRI a ddrtutng IOOdes. nEx. ccr. os-9 full pactage ·- Utt.oo

CU$111 16.ll -- Cross Assembler for tht 61000 S••• ftltures as 8-8t t Cross Asse•bl ers Above ''' ''' $24t.OO • • • SPECIALS • • •

"Year (IICI CLEAIAIICC --- v•ne tile)' lAst c..,.-.. ltd.

CIWIICII COIOl -- FlU Sof-re ------COBOl COIIPtltr This COBOL COIIPfltr supports 1 large subset of ANSII Levtl I ith aany TSC "FLU Utilities• wu HS.OO, 11011 only $60.00 C080l w of the useful le•el 2 futures. rull File Is TSC ·so rt !Wrge• w1s HS.OO, 11011 only $60.00 support of the Fl£1 Structures hopleMnted a do Files and the ability to process Keyed TSC "6809 BASIC" wu S15.00, 11011 only $60.00 Including R n • can be stgatnted 1nd It TSC "E•tendtd BASIC" was UOO.OO, 11011 only $15.00 Files. Large prograas linked n at taoltaented IS 1 The Systta rsc "OeBug• wu H5.oo. 11011 only $60.00 ru tt , or set of OYerlays. reQuires 56K and CAM be run wtth 1 single Oist Systta. rsc •nu Dhgnosucs· wu 115.00, 11011 only $60.00 rsc ·rut Processing Syste•" wu 115.00. 11011 only '"'·oo Nor"Nlly SJ9t.oo TSC "6BOOO Cross AssemC>ler• wu S2 5D.DD, 11011 only $220.00 FLEX, ccr Specht l11trodtlcW)' ' rice (while they lut ) -- Stt.t5

lUCIDATA "T(KPAK" (flE19, 5 V4") •• A Puul ll!plt•nt.ttton of t�e ret tr onh 40 .. Ttrat nal Control Sys tea. wUJI Pasal SOUitCt. Tilt ,..null Includes 1 discussion of ,_ ASSEMBLERS to utilize this pa chg e In the graphical library In Soutllet s t lttdf a laple10t nttng Vector Drawing, Point Plotting, etc., up ASTltUIOt through Windowing a nd Cli ppi ng co ncepts. A "Struct ured Asseabler for tht 6809" which requires tht fSC No,...l Price, SIOO.OO; 11011 only $15.00 llacro Asse•ler. Allows direct use of structured st.tttMnts sue II IS Jr, ElSE, 00, REPEAT, etc., and provides tndenlld level foreatttng of the listing so thlt tht strucwre ts apparent. Re, 'U' '"'"o JooiJ'Ml, Sept. 'll (prograa wu CAlled "STA$1109": os-t Sof-re ----- hu been ren1atd due to conntctsl. HICROIIARE "OS-g fllt HAndler Toolbo•"; 11011 only $70.00 l User reports MICRil'IAAE "RelocAting ,..c ro Ass-le r"; 11011 only $170.00 • ••. I'• n ry pleued and •• no w wrhtng alaost toclusl•ely In (ASUUK09). l'•e stltcted It o•er --- for all future systtOirt 5r'Ht Plalu C!!p. C.. for 1802/5, 6800/0VOl/11, 6801, 6805, 6809, 6502/l, 8010/5, IIINC 8D48, 8051, Z-80, and 6800D Systeas. Prov ides the ltlOUtfllf, le

-···· IWUolbWty �- p • ru:x, t:::t7 • Color Coooput•r ru:x

CoCo o•-..- n..aa• 0 • 06-9, a::o • Color C:OIOII'Ul�r os-t 0 • IA'\IFU:X IAFT111BRI CXI) • Color COIO!IlUter Disk Clt'l' • Color COMPUter T•pe

111 PI•••• Specify Yo•r Operetln1 Syst.. & Disk Size Ill 34 '68' MicroJoumal 1111 1/IKITTIWITif 1�111 lSI Hltll�ll

'J:' TOLL,.... TILIX Ul 414 rYT ITH DISASSEMBLERS.. 1·800·338·6800 c-pootersr- c. lte•ts . Sikl SlEIITll Co11puter Syste•s Consulunts s.tr Sle•tll 1s a "TI��t Tested", '-�-� ,. .., reliable, PROVEN Olsasse•bler that has gained accepunce th�ough out the SS-50 Bus c-nlty as an utr�•ly POWERFUL, IHTUACTIVE, Software Tool. The s.tr SlMtll Software Pactag� consists of 3 Progra•s; SUIITll (the.. 01sass er), (used to globally Change Labels to a anlngfulellbl HI•),CII5IM and (a Cross Reference Generator for Source Code Files). SLEUTIIll£f >rill ...�. . .••• ,. Ohassellblt lluory Resident 6&og Code and 6800, 6801, 6802, 6803 (the "8aby CoCo"), 6805, 6808, 6809, and 6502 (Apple, 5900 Cassandra Smith Rd. Atarl, Co11111odore, etc.) Blntry 01st files. (See Aug. '83 'A' " Hixson, TN 37343 ltlcro JourMl Color users Notes• ColuM for a full Rtwfew.) ColOf' Collploter ss-so , .. (all w/ Sollrce) for Information ceo 132K Req' d 1 call

All Coooputer Systtlls Consultants Soft,.are runs on the Color nu Sysu.s AU In stock call 100-lll-6100 for �OIAT£ DUMIT , c' COMPILERS ltllldrusb ltlcro sr·-· DTIWUTE + C eo.,ner An •easy to use•, pow�ful Olsa ler for 01sk Ruldent 6809 By Ja•es McCosh. u ll lea tured C Co11pfler lor the fl[X and 6800 Binary. flu . Allowssselllb the develoP��tnt of a "Control Operating Syste• (lackingF OHLl "bit-fields"), Including an file" of �lousf Progra• "Boundaries• -durln9 successive Asse•bler. Requires the TSC Relocating Assellbler If the user dfsassellbllu;v can use a label File "h1ch aut tlcal ly replaces wishes to l•ple•nt his own Libraries. a Hu Lo tion "fth a La l Na��t; Includes an Utility; He. r and ccr - sm. oo label rnuca provided for beMini-FLU, FUX2, rl£X9,liiiU Col or C�11ter (for use "lth Color FLEX Syste•s), etc. OS-9 Version Includes c eo.,ner special OS-9 options. A full-featured C, stru•llned for the 68D9. Generates �ry ccf, ooJ. O

PASCAL COMPILERS ltllldrusll cro srsaas ,L/9 llf ,ASCAL eo.,ner By Craha01 Trott. A cOOiblnatlon Edltor{CoonpllerfDebugger, all In Native Code COIIIPiltr IUCSO Oriented). OU ,AC AG£: provfdes • totally lmiACTlYE Progra• Development r and ccr - uoo. oo Cycle. lThe Single-Pass Cotopller supports hrg� SYIII>ol Ha��es; variable Types; Pointers; Control Structures lsl•llar to 'C' or 'Pascal'); suet, A- ,8-, and o-Reglster manipulation; etc. The ,ASCAL eo.,ner Sourc:e-Grfellttd Trace/Debugger provides Single Stepping, Break­ P-Code Co•pller (ISO Standard). Oeslgned especially for pointing, etc. An ucellent Software De�lopiOtnt Tool which Mlc�oco•puter Syste11s; R�n-t111e SysteM checks nallable provfdes for the II.UIIIUJO utilization of :he power of the- 6809. resources for uch task, allowing operation on e�n •lniNl F, CCf UM.OO co.,puter syste•s. Allows llntage to Assellbltr Code for 1M.xl•11111 flulblllty. IIIDISICAL f and ccr 5" - Slto. 00 !Ver. 1.6, wt� bal No. suppo�t) • r r - nos.oo ••• IN , I llaft te 11ft Uoh11 1 Y£1Y 111111 ratf...... "; Ron Anderson, Sept. '83 ss t of 'W '"'" .-,.1. Need the East lof Design and M11nu1nab111ty of "St�uctured ,ASCAI. C..,ller P�ogra-fng" IIIT110UT losing the Speed and Control of Asselllbly For the ,IOHSSIOUL; ISO Based, Native ;ode Co11pller. Language7 Then IIIIJISICAl "IS designed for you! This Single Prl11arlly for Real-TI• and Process Control applications. Use Pass, Recursive Descent Co11p1le� provides tile tool fo� custo• 1/0 devlcu In place of the Pascal lhPUT and OUTPUT; developing soft,.are f�o• sf•Ple Ut111t1es to MAJOR Systns. Long Int. (32 Bft); Dyna01fc length strings; Interrupt Easy t o develop p�og�a•s can be targeted for othe� 6809 processing. ROM-able, PI C, Re-Entrut Code, etc. ,CMlfUll Kachfnts. futures unified, use�-defined 1/0; p�oduces ._ble, Includes Source for tho SY�>ollc Debugger. Runtl��e, and several relocauble, �•cursive, �e-.nt�ant COde; Structured s'Yle and Utilities. Requl�es a "Motoroh Cooopatlble" Relocating state•ents "fth P�ocedu�u and Modules (MOdules can bt pre­ Assellbler and Linking Loader. co•pfltd for Inclusion afte� verfffcatfon); supports Byte and F and CCf - SUS.OO O e Year Plaint. - UOO.OO Oouble-Byte prf11ftfwes with 3 types of Integers (up to 32 bit), n l-4111t leal l... rs. Char and Boolean, and unlho1ted s1ztd Arra.ys (vectors only); lnter�upt handli g; un11•1ted length DECOMPILERS va�table Ma•es: variable ln1tfa11utfonn (defaults to SOO); Include "Source F'1lt" df�ectlve; Conditional cooopflfng; direct Sooo tiiNs t Nidi• Code Inserti ; c011trol of the S ck Poi nte�; etc. No separate IJUI (A UnlfL[X "bulc" De-CQIIC)Ilerl Run-TIM packon required (Aurt-TIMU subroutines Inserted as called Re-Create a Source Listing froa UnfFLEX Co11plled basic d uring COIIPflatfon). It Is a fAST COIIPfltr "h1ch products FAST Progruos. (uy to use; works w/ All Versions of UniFLEX basic; Code lno,...lly prOduces 101 less code' than 'l/9). Output t.0 Dhk or Ter•lnal. Tholl TEST£0 and PROVEN; SOLIOI '{and ccr - sm.• u - S21t.t5 / ,------��------�' " .....•M• �4��.� '&- <•••·. U.)O)...... J·IOO;.J.!!;6IOo -...... li� =iiii� lt,,4 n a r.u , l IMu..bWty�- lOS Ah. ,...... r • f'U:X, CX7 • Cnl"r C'Clii!Poter l'rsA . Il lltl.. 0 • OG-9, • Ccolnr Cooop.rter ... U • lk\lf'U:XCXO I I ��ooc:.�::::.'�;'"�':3:g · ila···! • Color Comput"' Olsk �FLEX • s iOt<'nllltl ol T� S yslemS Consullanas ••.t Info (815) 11•2-•1101 �ftoFTo•· lll· • a lr ... lUI 0 IIJ OCTCXD • Color Computer T•pe

Ill PI•••• S�eelfy Yoer Operetlng Syste• & Disk Size Ill '68' Micro Journal 35 1611 IIUinl WtTI ltii11SI "ltiUI O...f "J:' TOLL, .... Tll.ltl SSI fU PVT 8TH OS/9 t.t nn - no to OS/t ---- rlnelly : the btrrler hu been rt•oved Detween OS/9 and n£1 1·800·338·6800 foro•tted disks I Now you ctn READ tro., and WRIT[ to, 1 Single Sided s• or 8' f'l(l dhketU froo OS-g with O...f. O...f Is I new and unique prograo, written In IASIC09 (wiUI Source), that perfonu the following functions; UfOMAT: A WIC09 Prograo that reforMts a chosen aoount of • n OS-9 disk to nu rorau so It ctn be ustd norMlly by ·•••• •• , rux. * flU: A IASIC09 Prograo that does the actual ree4 or w1to r.. Dht, • function to the special O...f T afltr all selected fr011 ._ -···· user-friendly oenu. F'unctlons provided Include rudlng the HU Directory, Otlttlng F'LU F'lles, Copying Doth dl�ctlotos, 5900 Cassandra Smith Rd. etc. All solectlons art Interactive tnd cCJIII)lete, Including Hixson, TN 37343 111 necesstry prCJIII)ts to the operttor. HEX ustrs can rud, wrl te and use tltt special dlst u all)' for Information other f'l(X dlst, provide d the F'lU directory Is not tllowed to call (8 15) U2-480 1 continue beyond tract zero (too Mny files). o - nt.ts

ScMIU.ut NMI• COPnM.T --- Copy lAKE Dlsts to several -nor disks --- The following HEX utilities allow the backup of NIT size flat to any SMAllER she diskettes (Winchesur to a's or S's, a· to S's, etc.). By sloply Inserting diskettes as requested by COrnllllT, a large dlst systeo ... y ba downloaded to your present UTILITIES floppy disk systeo, all)' she. No nttd to fiddle with directory delitlons or tny of the other t.tdlous optrations that ..st be Soli tiiM Ia1 t 111M done using the norMl copy routines. lulcot Jllef CDPT"UlT.CMD understands norul "copy* synte• and always keeps This taslcot Croll lleftrettce Utili� Is a 8ulc09 PrOltte crou referenced listing of all nrlablu, tedious keyboard entries and other tiM consuolng cleanup e.ternal proceduru, and line nulllbers coiled. Aho Included Is chores. a rrogr.. list Utility which outputs the listing without the IACKUr.t"D Is • spechl progno that downloads 'rtndoo• eype overh .. d of building the crou reference table, which allows It files, aey slu. to run consldtraDly Iuter when only • 'pretty printed* listing IESTDU.CMD • special progno to restructure copied ·randoo' with line nu.tlers Is dulred. Requires Baslcog or Rune for files for copyi"J., or recopying bact to the host systeM. operation. F'UEllll.CMD • bonus• utility that *rtlfnts• the free chain of noppy or herd dht thereby tlfolnatlng fr•g•ntetlon. ., Ctlflt, I.OFtelfll'n· •t ,..,_ ..._,J.._M � OWOI.•U ...... -, ...... _ C..letel)' doc-ntH - ttles ll•c:1Me4• .. . . . - . .. ., .. , ...... , ...... , ...... All 4 ,..,.... (HEX, 8* or S") Stt. 50 _.o-... \ ,...... 10 ...... _ ''""·'·· , .. .. - - · ··· -... " · - · · · ·· ·· ., ...... , ...... - 10 . 10 ,.. - �·\ ...... , . • • _ , , ...... _.._ _. ScMIU.ut lledla • IOATA A toiiiUIICAnOI Ptchge ...... • ...... for the UltlfUJ Operating Syste• - .. • • • ...... , .. •• .. • Allows Unlf'lU tued Syst.tos to Tran1411t and Receive files to . • ...... ,, .. .. and froe other toec>uUr Syste•s Y1a llode•. Use with CP/M, M.lln .. " - - . n .. ., rra•s. other UnlrlEJ Systetos, etc • •• • " -- Ytrffles Trans•isslon Integrity using • " ., o and ceo - ODJ. Only -- nt.ts chectsu• or CRC o and ceo - w/ Source - Ht.tS AutOMtlcally Re-Transolts bad blocks -- Trensofu date In 128 byte blocks u- sm.tt

SolltiiMst NM�a os-t YOIIl PASCAL UTilmES Give your os-t lntl 1 Systeto the apeec� of_, acceu that ..qll( rea lUCIDATA Paaul wr l. can be several orders of Mgnltude over your pruent Ooppy dht JUF' -- product • Cross Rtftrtnct listing of all)' teat; orlenud drive. Use thlt Eat.tnde• ...... , upablllty of your SWTPC or to Pascal Source. Glolx CPU card (or any other thtt has the Sllllt forMt DATI. r and ccr - su.oo The she of the VIrtual Olst Is coaplttely variable In whole IIICLUOE -- allows the Inclusion of otller riles In a Source Tut; lncrtMnts of 4K up to 960K, whlclt Is tll that these systetos ltu unllolted ntstlng capabilities. Also allows 81ntry rile can address beyond the base ptge thet OS-9 L-1 I uses. 8y Inclusions. Putting ell of your CMOS Directory on your VIrtual Disk, you can r and ccr - szs.oo �•ve tltt fastest uecutlon spud possible (neat to eating up PIOHltl -- prod.. cts an lnd•nttd, NUIII>tred, •structogra•' of • Systeo Meoory wltlt 111 of thea). You can 1lso ut up ltlgb Pascal Source Teat F'lle. Allows viewing the overall structure speed Inter-process c-nlcatlons Y1a rtndoo Y1rtutl disk files of large prograos, and provides clues IS to the Integrity of the and not u t up valuable systea llltOOry with pipe buffers. Scoot prOflttlon. Asstobly ReQuired - l-1 I O..T. r and ccr - szs.oo 0, OC>j. otoly - S7t.ts w/ Source - Sl4t.ts

MUibWty�- p • FU:X, a;:, • Color Coooputer ru:x 0 • 05-9, CICO • Color Coooput.•r 05-' g • lt\"LEX •flEX •s • trlldt

111 PI•••• Specify Yo•r Operatlag Syst•• & Disk Size Ill '68' Micro Journal 36 lilt IIIKITTt I!IITIItrll1 lSI 1111tll,ll

'3:' TOLL'"·· TIUll Ul 414 rn UH COPYCATlOT Puul �equl�td :t • DOS68, Ofg1u1 Allows rudlng TSC Mlni·FlU, sse and Auearclt 1-SOO;� O "'" Ofsts willie operHing under rux 1.0, FlEX z.o. or FLU 0 U COPYCAT 9. wl UOO or 6809 Syst.. s. tilt will not perf or• Mlraclts, but, bt-tn tile progra• and •nual, you sund a ' a •• , good clluce of acco.plfsllfng • transfer, lftcludts Utfllt1u to list Olrectorfts, Copy Flits, ud con•trt Tut Flits wllen required. Also Includes • Utility for lnytstfgHing P�slul Coepatlbllfty probl.. s, Progra•s supplied In -...lar Sowce CMe (Asst•bly Language) to ..h It euler to sol.. unusu.l P�OIIls, .. •••• r and ccr s· - sso.oo F 8" • SQ.OO 5900 Cassandra Smith Rd. �-sts- C..HltuU Hixson, TN 37343 FtbDISl UTTLmts ._ Elgllt (I) different FlU Utilities that should be a put of for Information e.. ry flU Users Toolbo•: AssMbly Language (Source Code): call

saro� 111 (lTREM[L T Powerful Screen·Orlented Editor/Word Processor. Al.aSI SO different e-nds; (X((llUT Oocu.enutlon (-r JDO pogu), Including 1 full Tutorial Section to help you leorn hOw to use tilt systt•. l'uturu Cursor-baud editing, dyna•lc Scrttn For•attlng (witH you ste Is what you get!, llultf·COIUIIII dhplay and tdl tlng, "decl••l tllgn• coll*ls (AND tdd thea up SoiiU.ut MHia autoaatlcally, If wanted), define aultlple keystroke Ncros, e.. n JUST • nd o�� page nu�tr htiders an4 footers, t�ed printer control rut ro..... tter codu In tut, full Justification series of e-nds, full "help" JUST, a Text Forauter dtYeloped by Aon Anderson, pr0\'14es support, store co ..on co.. tnd series on 41st for future use nu01erous features which Nte It a uluable addition to any FlU etc. Easy "Stt·Up" (for uuople, you Just hit the tey you wtnt Users Softw.re library. JUST Is designed for for-.ttlng Tut to use lor • specific function, such u "cursor up•, and the Output for Dot Httrh Printers an4 provides •any unique Syste" reads an stores that key - no digging tnto tech .,.nuah reuures: for co4es, etc.): use supplfe4 "set-ups•, or reNp the teybotr4 ·Output tilt "ForNtted" Teat to the Display ror ro�ut analysts to whit you are used too. hcept for proportional printing, and cllingt, this p�etage will DO II Al.ll ·Output the "For•• tted" Tu t to a Tut File for ust wi til the 6800 or 6809 Fl(X or sse oos, OS-9 - SJ75.DO supplied FP•IIT.OID for producing aultlple coplts of tilt Tut on tht Prln ter INCLUOIHC IIIBEOOEO PRINl£R COMMANDS (this Utility Is very userul it other tiMs also, ond worth the SPUll "(OIIPuter Dictionary" ona uo.ooo �•t prlct of the progr•• �Y ftseln. ·"Ustr' Co•rttur••le" lor adapting to other Printers lcoaes set NO .art "let your fingers do the walking through tilt Olctlon•rt' up for Epson MX-80 wltll Craltru); prO'Ifdes lor up to ten (IOJ while you .rt entering Tut with your favorite Editor or Word labeddt4 "Printer Control e-nds", such as lUHcs on and Processor. SP£lll h aore than just "another Spelling off, boldface on lnd off, etc, Clttcttr"; tt allows you to l"t ., a wor4 froa within your -Autoowtlc c-nutlon for • "'o"ble Width" printed lfne. Editor or Word Processor so tillt you 11011 It Is right ti!IEN TOU ·Includes tile nor•al line wid til, ••rgln, lnden t, paragraph, TYPE IT IN wltll tltt SPII,Oil Utili� (which operates In tilt FlEJ space, vertical stlp lines, page length, page nuaberlng, Utili� S9act). Yes, It ALSO •llows you to clltcl and update the centerlnt, fill, Justification, etc. Tut afttr you are finiShed; Along wltll allowing you to ADO -use with AliT Editor. WORDS to tilt Ole tlona , "Flag• questlonablt words h• tilt Tut rz ·Supplied with "Structu�td Source· (tllndruslt PL/9); easy to see lor tuluulon httr, Ylew a word In COIIte•t" before clllnglng till now of the progr•·· or Ignoring, etc, SPElll first cltects a "Co•aon Word r - S49. 95 Dictionary•, then the no,....l Dictional')', then a "Personal Word and CCI' list', and finally, any "Sptchl Word list" you �Y hne sptcltftd. SP£lll also allows tilt use of s.n Dtat sw.,. systeas. ,-----'-..:..•lidccr - sJ.Zt.ts

Mu..butty�-

• f'U:ll ···��ii , -···· P • f'I..£X, CCI' Cnl"r <:oooputer •• , 0 • 0&•9, OCO • <:ot"' COII>p\Jt"t OS-9 Smllh Ad CoCo o... - rt.aa" •0o caaundn • .,. Hi•aon. TN 31343 •• lkllf'L£X CCII • Colorr Coolputer Disk "''o ce es1 eo2-4eoe C!"FTm •a• �nex os • uodemolll ofTedlnocolSys�ems ConsullaniS Ill Wft II a:T • Color C010p.1ter Tape -osg.. a tu�elemolk of Moc1ow.,.

Ill PI•••• Specify Yo•r Operatl•• Syst•• & Disk Size Ill '68' MicroJournal 37 1611 IIINITTIIIITI I,I11SI l'tlltl�ll

I ACt Tlt.ll SSI 414 PYT ITH UP ':1:' TOLL '"·· lllPACI Is used for storing tccountlng, nu.rlc, and financial 1·800·338·6800 d•t• which c•n then be uud for planning, budgeting, forecasting, •n•lytlng, etc. While "Electronic Spreadsheets" are e•trtMly useful In ••ny situations, lllPACI e.cels In businesses �here there are nu��trous eapense coluMs, revenue sources, significant business Indica tors, la�ge nllllbers, erratic �eek·to-�u- and •onth•to•IIOnlh nuctuatlons, etc. laPACt helps dtter•lne stotlstlcal rehtlooshlps, establish trend ·--··'· •• , lines. ·-ths" dna Yla IIOvlng •vtrages, analyze susonal data, •dJusts for lnfhtfon, lags dat• In SUlfstlcs or Colu•n functions, plots d•U, etc. IIZPACI h oriented �ard llllf ._ -···· series analysts of businesses. The Progra• dtsPI•ys Info-lion on the screen In Colu•ns of lnfor••tlon with each Row 5900 Cassandra Smith Rd. confor•lng lO I defined Period of Tlllf (�eeks, IIOnths, years, Hixson, TN 373•3 etc.), •nd Is very usy to use (data Is euy to enter, change, and •odlfy; co•••nds can be rena•ed to suit the users lor Information requlreMnts; unlf•lttd ability to cre4te specl•lhtd e-nds call (815) 842-4801 using co-on BASIC Stat.ellfnlS; etc.). • qul�s TSC's Ea""*" IASIC. CoCo 08·9'• FLIX'• F and CCf • SllS.OO with Source • SHO.OO

C.tersr- C..sulta•ts IGFTWIRI fAIUCXUSA 5PI£AOSM((T TABUlA RASA Is sl•llar to DESUOP/PLAN and p�du for the generation and 111lntenance of tabular COIIIPUtatlon scheMs often used for antlysts of business. sales. and econo..lc scenarios. DATA BASE Its •enu·drfwen user lnterf•ce provides these capebllltles even to thost users with no progra•lng uperlence. Its tatensfwe report·genera lion captbflllfts •II ow the ustr to generate MANAGEMENT SYSTEMS profession•! results with •lniiiUD effort. It requires TSC's la- £a tetldH IASIC. llltstcllas11trApp lied ...sl•u r • zoo. Dii$ 1nd ccr - uoo.oo. u s oo Possibly one of the 110st powerful !l.\Ubase M

ACCOUNTING PACKAGES ODDS AND ENDS

Creat Phlu Coeputar Co. and U•l,..rsal Data lluurd, t.c. both have luslness Pactagu �rl tlen In TSC IBASIC for flU. C.tar5rs- C.sultaftU taco nn. •M IMifl£1 ---- FUllstltU fOIIIIS DISPlAY This pac�agt supports any Serl&l Ter.lnal wllh cursor control ...... of He•ory·Mapped Yldeo Otsphys. The pack•ge substantl•lly - Call 1100-l»-aoD for 110re fnforwtlon eatentls the screen Jnput/OUI.Pul Cll>lbllltles of TSC's [a� ...... IA SIC progra•s Dy providing • sl•plt, Uble·tlrlvtn •thod of describing •nd using full screen dhpltys. Then table entries are easy to set up and ••IH•fn, •nd are no,....lly stored on disk and rud u required. A si•Pit, Interactive •••ns of C.ter�s-s C.llllte•ts generating the for11s and the data field definitions Is provided. fllllSCRU IIYUTOaYI*P f ond ccr • sso.oo. u • ns. oo Tht full Sc�ten lnvtntory Syslell provides 1 ••ns of 111lntalnlng s••ll Inventories. Using • linked, keyed rando. file structure Co!pol11trsr- C.suUa•ts butt! upon the Itt• field, It keeps the file In •lphlbetlcal F1Kl$CilU IIAtl.l• liST order for euler lnqul�. With the fiND e-nd, theuser 111.1 The Full Screen Mailing list Syste• provides • •""' of locate •nd/or print all records 111tchtng on partial or COIIIPiete ••lnt•lnlng si•Plt 111tllng lilts. Using • rant1011 till structure lte,., description, went!or, or attrlbutes. lltlll In bec�order or based on lhl first character of the na��t field, It 111lntalns the belo� •lnl•u• Hoc� levels Ny be loc•ted •nd/or printed thru ftle In •lph•betlul order for euler Inquiry. With the fiNO the UM process. Printed output lilY be prOduced In llell or e-nd. the user lilY loc•te •II records 111tchlng on perllal or vendor order. A 111terlals requlre•nt planning (KIIP) capeblll� co•plete n•••· city, sute, tip, or •ttrlbutes. Printed for ••nuf•cturlng envlron•ents Is Included to •llow the listings and output to J•beh •Y •lso be prOCfuctd on the ,.,.. •alntenance •nd analysts of Hierarchical usftlllltes of ltells In selectlwe buts. It requlru TSC's Ea""*4 IASIC. the 1-ntory file. It requires TSC's [&""*4 IASIC. f Inti CCF • SlOO.00, U • SUO. 00 r and CCF • SIOO.00, U • SISO.00

� -.l.lollbWtyU: Co o- ...:o.:�i i , -···· P • F X, c;r, • l r COIIOjiUter FU:X •• , . 0 • OS-9, OCO• 06-9 GJ= SMolh Rei CoCo os·•· , ... Color Coooputer 0ocauancJra ••.,-. H•••on. IN 313�3 a • lk'IIFI.EX CXD • Cbll 'FLEX •s 1 ,..,..,.,., oA Tachro�CM Syttems Consullants "''0 (IIU)� 11 2-�1101 liM�"FT'"8Bl' 111 0 II Color Coooputer CXT• Color T•pe -os9os • u-..lo oAMocrow.,• COIIPittr

Ill Pie••• s,eclfy Yo•r o,er•tlng Syst.. & Disk Size Ill ·sa· MicroJoumal 38 lilt #IrK I TTl WIT/I l,UYISI 'ttlf�ll ��1/Et (ll($$ 6109 '3' TOLL ,.... TILil Sst 4U PVT UM Requires fLEX ud OISPLAYS Oft Arff r,_ Tei"'IIMl features: 1·800·338·6800 "four le.eh of play. * �wap side. "Point scoring systelft. "Two dlsPI'¥ boards. "Change still le.el. I -solve Chec�lllte proble•s In 1-2·3-• -s. and swap sides. "PI'¥ white or blact. "!late MOve ·-�.,. _ This Is one of the stro•west CH£SS prograas running on •">' • alcrocoooputer, estla te Rating 1600+ (better than 11!0St • , a d USCI" 'club' pla.yers at higher levels). . r ud ccr - sn. 95 ., 5900 Cassandra Smith• Rd. •• OIET·TUC F-aster • Hixson, TN 37343 DIET-TIAC forecuter Is an XBASJC progroa that plans a diet In ter•s of either calories and percentage of carbol!ydrates, for Information proteins ud fats (C P CSI or gra•s of Carbohydrate. Protein call (815) 842-4801 and Fat food exchanges of each of the sh basic fOOd groups (vegetable, bread, llll!at, stla 1111lk, fruit ud fll) for a specific CoCo 05·9'" FLIX'" I ndlvidua l. Su, Age, Height, Present Weight, fraae Sin, ActlviQ- Level and Basal Hetaboltc Rate for norNI Individual are tahn Into account. Ideal weight and sustaining calories for any weight of the above Individual .-e calcuhted. When • weight goal h IAFTWaRI given (either gain or loss), and a calorie plan h agreed upon between the COIIPuter and the Individual, the nul!lber of days to reach the weight goal Is pro ecte . r ing and en in j d The sta t d g Cust.c. Sof-re C.tf""rt:'l, IlK. rate of wei ht loss Is calculated, and 1 dally ulendar with g Tile s illtiEST-1119 e.ch weight or 30-dty per Od h p inte . day's f a i r d Interested In JITUUT (the Money Kln d)7 An EXlEN0£0 BASIC r sst.95 - Prograoo tllat will help you deal with nullll!rous problt•s requiring $89.95 u - fnt.ertH calculations. Present Value, Rate of Return, Current B ond Yield and Rate or Return to aaturlty, loan Repayaent A10 ortizatfo n Schedules. etc.

TAP( - Szt.t5 COLOR COMPUTER Cu�- Softoolre [!!f1""ri'1xIlK. bl$1! IWDI.EA IX 64l An [XT(NO(O BASIC Oota Manage11ent Systea w/ Mach. Lang. SOFTWARE Routines. Allows a 11u of 246 Chars. and 14 Fields per Record, and another Record con be lfnked to tile first; 8 Char. Field Na11es, up to 99 Chars. per Field. Powerful On-Screen editor StH n�s £1ectr011lcs for Input a nd update, flealble Output capabilities Including lsk Files use by other Programs. Change File FOitTM output to O for In trlgued by ForU1777 Here Is a FORTH pactage tailored to the Definition without re-entering the oau, Splft Files, etc. Color Coaputerl This package Is supplied on Tape, with Allows Multiple Field Sorts, Select on any cotlblnotlon of Fields, instructions ror tr•nsrerring It to dht If you wish. l(rftten etc. An extremely POWERfUL fOOl; Instructions prcwlde exaiiPies prlatrily In nachlne language, It's spHlementatlon). Routines. A *T radi tio nal Accounting Package for Saoll Clubs, Churches, Personal U e, etc. to four Co11bine this package with Leo Brodie's £XC[Ll[NT Book "Starting Business, s Up levels Trial Bllance, lncoooe Stateaent, and Bltonce FORTH", and you will be a FORTH Expert before you tnow It (and or subtotals with have a lot or run doing ill). Sheet Reports. ODE allows up to 300 accounts and a Trial Color C011puter TAP( - l58.tS Balance of S9,g9 g,999.99. Transactions NY be up to 14 lines long, and co••ents and explanations 10ay be freely used. Accounts traceable transaction, NY Cust.c. Softaoere El!fi""riabiiK. are to the journal which Color CoaputA!r Rit SU££ 1 PIUJT Progra•s Include com10ents. Screen reports 411o" review of past tr c i ns and current balances. Ou11ps any "PMOOt" Screen to the Printer "lth the BASIC USR ansa t o l'-4.95 function . ShHt the Printout left or Right or Re-verse Print DISK - (Dark for light Screen and VIce Versa). All Progra•s on Tape. WI ror R.S. LP-VII/Y Ill & OMP 100/200/400 S7.95 WI£ for (pson w/ Groftru and Craftru + $9.95 WIG for Cealnl 10 and IS S9.95 WIP ror the Prowrl ter Printers l9.t5 This Months Cust.c. Softaoere E��liK. 1t tA(UOAl Progra• A Menu Driven UTtiiO(.D IIASIC Progra• which allows the entry of STAR SPECIAL up to 12 Memos per Oay, each or which may contain up to 28 Charac ters, ror any day of the Month betl

•• IWUabWty�- , • • ...:o ��ii , P f'U:X, CX7 Cnf"tr Coooputer FU:X -···· 0 • OS-9, OCO • Colnr Coonputer ao;-9 ... c��:::�:;:m!•;3��· u • U'\lf'U:X �FlEX •s a l e•2·•eo1 liM�n·rtoifi a WOa.. II, �osSiosa ,_,.,. ot Mocrowe�e CXT • Color CCIIIflUter Tape

Ill PI•••• Specify Yo•r Opere•l•t Sys••• & Disk Size 111 '68' MicroJoumal 39 object code file. If the object code file SHELL would then call ATTR which in turn is older than the source, MAKE forces the would enable the public read attributes of compiler to re-compile. It assumes you the files 'hello' and 'prime'. The option have changed the source code and it needs 's' tells SDIR to include the 't' and to be re-compiled. In a recent issue of 68' 'tmode' commands. The 'c' option says to MJ, Peter Dibble (OS9 USER NOTES) wrote generate commands using the command about his version of MAKE. It's a good parameter. The 'p' option makes SDIR put idea. I have implemented two utilities the command parameter 'pr' after the file that compare a file's last modified date, name. one to another file, and the other to a specific date or "today's" date, by SDIR sells for $35 and comes free with all default. These work very well in managing LLOYD I/0 products for OS9 (those selling file updates or backups. The utility for $100 or more.) Following is a complete YOUNGER compares two file dates. The first description of the SDIR utility: file name is sent to standard output when it is younger than the second file. The SYNTAX: SDIR [-cdempst?] utility DRAFT compares a single file name to a specific date, older date, or newer [<'pl'> < 'p2'> < 'p3'> <'p4'>] date. If a date is not given, the current [] system date (hours and seconds deleted) is used for an exact match. DRAFT sends the FUNCTION: SDIR is used to generate file name to standard output when a true pathlists to standard output. In its condition is met. Both of these utilities simplest form, SDIR can list all the files can get file names from standard input for in a directory, one file name per line. The in use with pipes and a file search utility only parameter given this case would be like SDIR. the directory name to search, such as the current directory ' ' (dot). Example: Many of these utilities can be connected with a series of pipes to form a very SDIR . complex file manipulation procedure. Another benefit is the ability of SDIR to The next simplest would be a search for one use any OS9 command. One such use is with or more files using their exact names. the ATTR utility. ATTR is used to examine Example: and change a file's attributes. Unfortunately, it can handle only one file SDIR . myfile mynames at a time. SDIR has an option to generate SHELL commands that can be piped to SHELL The next type of search would use wild for execution. The following example cards in the match list. Wild cards enables the public read attribute for all replace parts of file names. SDIR has two the files in the current data directory: types of wild cards:

SDIR . -scp 'ATTR' 'pr' ! (x -p) ? is the wild card character which is used to replace any single character in the SDIR's output is piped to SHELL using (x match. -p) which causes shell to abort on errors and suppress the "059:" prompt. If the * is the wild card field which is used to current data directory only contained two replace any group of characters with and the other files, one named 'hello' 1 imited use. 'prime', the following lines would be sent to SHELL: There are four general types of match 1 i sts: t tmode .1 -pause c an exact match load ATTR *c wild card field ending in an exact ATTR hello pr match ATTR prime pr c* exact match ending with a wild card unlink ATTR field tmode .1 pause *c* floating exact match any where in the -t names

40 '68' Micro Journal where 'c' is one or more characters match list. This is useful when it is to including the wild card character '?'. If desired operate on most files in a no match lists are given, all files will be directory except for a few. This option listed. Examples: compliments the search logic; meaning that each entry in the directory is checked SOIR MY* find files beginning with 'MY' against the matches, and if a match is SOIR *ME find files ending with 'ME' made, the file name is not listed. SDIR . ??? find files that are 3 characters long If the option -m is used, option -c and SDIR *il* find files with I i 1I <'p3'> must be used. <'p3'> is a set of somewhere in name options used to generate the shell 1/0 SDIR *??il* find files with I 11' redirection and memory size modifiers for somewhere in name and have the commands generated when the -c option two characters preceding the is used. <'pJ'> consists of up to four '11' sub-options as follows:

This is how SOIR searches using the match i• generates ' generates '>path' for output first match in the match list. If the examples: o•datafile o=newnames match is true, the file name is listed to e= generates '>>path' for error standard output. SDIR continues through examples: e=errorfile e=/p the directory until the end, then repeats s= generates '#' for the memory the process starting on the next match in examples: s=64 s=31k s=l4k the match lists. This process continues until all matches have been searched. Example: 'i•/dl/names o=/P e=errfile s==64•

If the option -c is used, <'pl'> must be If the option -p is used, <'p4'> must be used. <'p1'> becomes the name of a command used. <'p4'> becomes a list of parameters written before the file name. <'pl'> may written out following all other parameters include command options. This is useful and path names. It is written out exactly with a11 OS-9 commands that do fi 1 e as it appears in the string. manipulation. The output stream includes a "load <'pl'>" at the beginning and a Example: 'pe e pr r w' "unlink <'pl'>" at the end. This means the command won't have to be loaded each time If the option -s is used, the option -c it is used when the output of SDIR is piped should be used. It writes out the to SHELL using '! (x -p)'. following: t Examples: 'attr' 'il i st -mn' tmode .1 -pause ...... normal output If the option -d is used, <'p2'> must be tmode . 1 pause used. <'p2'> becomes a directory name that -t is used with each file name found, to make This is useful when the output of SDIR is up a second path name listed to the right piped to SHELL using the format: of the file name. It can then be utili zed with commands requiring two path names such SOIR ! (x -p) as COPY, ICOPY, and PACK. If the optien -t is used, the files Examples: '/dO/cmds' matching the match lists will NOT be opened 'files/names/customers/products' to check the user's ability to access a file. Normally, SDIR opens the files it SDIR -cd . 'copy' '/dO/cmds' myprogram finds matching, and immediately closes them as a general check to see if they can gives: 1 oad copy really be accessed. Note that this is a copy myprogram /dO/cmds/myprogram good check, but in some cases not a un11 nk copy complete check.

If the option -e is used, all files found If the option -? is used, SDIR will list will be listed unless it matches with the its command syntax and options.

'68' Micro Journal 41 This command is intended for use with pipes directly from the manual for the LLOYD I/0 and the commands: IDEL. ILIST, ICOPY, PACK. Search and Rescue Utilities Package. I have and any other command that can take its a two-fold motive for publishing it here: pathl i sts from standard input. first, to shed a little light on the resources available to OS9 users. and Last notes: SDIR will not search any second, (in all honesty) to whet your directory other than that specified in the appetite for our products. command line parameters. This means sub-directories will not be searched. In a future article the BIT SLICER will be Although the options can be given in any delving into the design philosophy of order. the parameters <'p1'>, <'p2'>, K-BASIC. The research and development of <'p3'>, and <'p4'> must be given in the K-BASIC was an adventure in learning and proper order if they are used. Missing or design. improper termination of the parameters causes SDIR to display an error message and K-BASIC, PATCH, CRASMB 16.32, CRASMB, DO, its command syntax. ED/ASM, and SEARCH and RESCUE UTILITIES are trademarks of LLOYD I/0. OS9 is a EXAMPLES: trademark of Microware. FLEX is a trademark of TSC. sdir

lists all files in the current data NOTE: All products listed are available thru: directory S.E. MEDIA (see ad this issue) or LLOYD I/0 sdir test/cc hello (see Lloyd 1/0 ad also). checks for the existence of the file 'hello' in the directory test/cc Software sdir -t /hO/cmds i77* >myfiles c.oragon I Exchange writes the names of a11 files and directories to the file 'myfiles' that System begin with 'i' and are at least 3 characters long including the 'i' Tom Gilchrist sdir -d . '/d3/text' I icopy -i Brad Taylor 1450 N. Clarence #108 copies all files in the current data Wichita, Kansas directory to the directory /d3/text Every group around seems to have a Bulletin sdir . 1 flist -ipnt >/p Board System (BBS) or Remote Computer System (like RCPM). The CoCo users have a number of print all files in the current data systems they can call and OS-9 users even have directory using the pagination mode their own SIG on Compuserve. But how about those of us who still cling to FLEX. Who has sdfr . -scp 'attr' 'pr' ! (x -p) a system with software and information we can use? Well, I have put together the "C.Dragon" enables the public read attributes on all software exchange system. It's not a BBS files in the current data directory. (al though there is a private mail system). It's for the exchange of public domain sdir -scdm 'copy' software. '/d3' 's=31k' my* ! (x -p) I put the system on the air in December and I copies all files in the current data have been working the bugs out ever since. directory that begin with 'my' to the The system is for UNIX and FLEX users device /d3 using 3lk of memory on each interested in C code. lhere are quite a few copy. assembly language FLEX programs as well as C programs which are designed for FLEX. A The above SDIR description was transcribed number of these programs are being written up

42 '68' Micro Journal for 68 f�icro Journal so those of you who don't Current C. Dragon commands (use co�and name for subject in help) have modems will be able to get them if they are published. COMMAND DESCRIPTION bye Ends a C.Dragon To use C.Dragon, you need a modem (300 or session 1200 baud) and modem software for your cat List a text file computer. There are a number of commercially (same as l1st) available programs I have seen advertised in drive LDrive_Number] Display and change 68MJ. You can also use any of the programs work dr1ve. which have been published including HODEM9(+). Lsubject] FLEX information, hints, ideas, etc. You can download source files two ways. fortune A UNIX favorite! First, you can use the "list" command to simply help LsubjectJ This program. list the desired file. If you have a "capture" list List a text file mode in your modem program, you can capture (same as cat). and save the source to disk.. If you want to lls List the contents of make sure you get error free source, you ·can a disk. library. use the XMODEM protocol transfer of C.Dragon ls Ldrive] List root files and (the UCF program on C.Dragon). directories of given disk. There are a number of data bases on the mail [login_name] Send and receive system for help and general information. The mail. ones which are active as of this date are... more Like 11 st, but controls screen. Data Base Description news Lsubject) Short term i nformati on and HELP Help with C.Dragon commands. bulletins. TOPIC Genera 1 i nformati on at>out sa 1 e [itern] Items for sale or Dragon. trade by users. NEWS Information about new time Show the time , date, features, etc. and a calendar of FLEX General FLEX information. the month. UNIX General UNIX information. topic [subject) Long term i nformati on SALE Items for sale, trade, or and topics. wanted. ucf XMODEM protocol transfer menu driven. unix Lsubject) Unix information, topics, hints, news, Anyone can call the system and there are no etc. membership dues. As long as people behave who Who you are (your themselves, the system will remain open to 1 ogi n name) . everyone. The phone number is: whois Lstring] List the users of c.dragon.:

C.Dragon When you log in, you are given a "message of 316-943-9716 the day" which tells you about the system and 24 hours a day current information. To learn how to use the 1200/300 baud C. Dragon system, you simply read the help, topic, and news data bases. For instance, to New users wilt need to "sign in". This is find out how to use the "LS" command, type done by enter1ng a "?" at the login "HELP LS ". prompt. You are asked for your name, city/state, and a password (real names please!). You are then allowed access to the When using C.Dragon please follow the sys tern. Be1 ow 1 s a 1 is ting of the subjects following rules: found fn the "HELP" data base: 1) Try to limit your sessions to no longer than 1 hour.

'68' Micro Journal 2) Don't abuse the "mail" system. Send 68XX anything, just a modem and the bosses rnai1 only to those you know. There are plenty WATTS line. I understand he was over 6 of public BBS systems around and there is months finding decent employment again. Also limited mail space on the system. he donated his TRS-1 to a charity organization, all on the reconrnendation of the 3) Remember that CTRL S and CTRL Q will 68 Micro Journal reader and BBS user (his turn on and oft the scroll (as well as the small daughter also used our system and had standard FLEX ESC toggle). If the system seems ask her Dad what one of those files meant). to hang up, try ESC or a CTRL C. This was not the only one, others we figured out by various methods and contacted them 4) 12 00 baud is a little tricky long direct - However, it just became too much. distance. If you have trouble, try 300 baud. A couple of old hands at the BBS thing 5) Type "BYE" when you are reaczy to quit. suggested that we just ignore them and they would go away. Long distance and all cost, you know. Well, for some of the lesser ones Thanks to all those who have donated your we dfd, and they did, but for the more �le software. Thanks to Brad Taylor for all the ones we could not condone the wafting period help w1th the code and to Kent Meyers for all - so the 68 Micro Journal BBS is gone! his helpful feedback. Have fun! In looking back I can say that it was a good thing. Most a II, 991 of the offenders we could identify were NOT 68 Micro Journal Ed1 tor's Note: This arrived about two week readers. Some were local CoCo users, most of after we quietly removed our BBS. We gained a them were never any problem, and in fact lot of insight in to BBS operations. contributed some good rnaterfal to the system. Unfortunately, the stupid and thoughtless However, for the problems we had, over 801 or actions of a very few, caused the loss of this so were non-68XX or SSO bus types, as best we service for over 5,000 persons who had logged could determine. Oh well, I guess it takes on while it was operational. all kinds.

The control person/persons who look after the So for a II of you out there I want to thank day to day operation of a BBS are to be you for the material you supplied via our BBS. congratulated! We spent hours, many hours We placed some there, you did the rest. It each week, sometimes each day, screening files was 95S a pleasure to operate and maintain for garbage, profanity, filth, etc. the system, the other 51 made it impossible to continue. But, I guess that is the way of a When we started it we knew that there would lot of things in this world. be some younger (7-12 years of age) logging in. For you older types I guess it would have We still have the hardware, the phone number not been all that much of a thing. For them and 11ne are still there, maybe someday we can we tried to keep it clean. Finally, it just get it going again, if and when we can figure became too much - we pulled the plug! out some way to prevent it trom be1ng as before. Many nights Bob Nay, or some of the others would sit by the system until the wee hours of Just thought some of you might l1ke to know. the morning, watching incoming files. We were able to trace (or trick) a few in to revealing DMW who and where they were (lt1a Bell STILL does cooperate, given the right circumstances). P.S. 68 Micro Journal will be happy to One particular nasty fellow lived in Atlanta, publish programs from the systern - provided but signed in with a fictitious name and a Hew they do not infringe on someone elses rights. York address. We actual� got a trace on hfm So if you contribute to the system, let us - he sent looooooong files. Fact is, he was have a copy (medu FLEX or OS-9) and we will using the company WATTS line. Well, a reader attempt to let all 68XX users know. in Atlanta made a personal and somewhat impressive visit to this fellows house. He was Might just make you world famous! running a TRS80-1. No color computer, no

'68' Micro Journal 44 Diskette Inventory SORT/MERGE program. Francis MASSEN That's all! Really, not a strike of genius, 8 Cite Strauss but a very simple and reliable method, and a L-9357 BETTENDORF/ Luxembourg, Europe demonstration of the usefullness of the tel: 808021 LOG.CMD ! ===�==�======Here Is tii H �stc progr•• IIUilDCAT: DISKETTE INVENTORY: THE BARE-BONES SOLUTION 5 Ito.-- f'rtiiC1S KtSStll dec. 1984 ======10 ltr- MAl( 4 CATAlOG rJlE USING THE .lOG· Until today, I always used the price-winner f'IL£ 20 lt(M•• program FILESORT, by Brian BAILY , published U It£_. THIS PROGRAM IS TO 8( USED TO 8Uil0 in the May 1981 issue of 68 MICRO JOURNAL to A riLE CONTAINING All l2 ItEM••• THE f'llE· NAHES Of' THE YARIOUS make a disk inventory. (hey DON, no next CATAlOGUES GREAT CONTEST looming around?). **Maybe 23 lt[- 40 lt(H•• soon - anyone have anything for a GOOOD 90 GOSUI 2000 100 INPUT"It£AO f'ROH riLE ...... • ,RS contest???? · 110 INPUT "\lUTE TO rilE. •.•••.•••..• ,rs This marvelous program makes a complete 120 PRINT:PRINT:PRINT inventory of the catalogues, and gives a lot 200 OPEN OLD ItS AS 1 210 OPEN NEW f'S AS 2 of options to rearrange, delete or sort the 220 ON ERROR GOTO 10000 resulting file. Alas, all that work is done in 300 INPUTLINEII,AS 310 If' lAS•"") OR lAS•" 'I THEM JOO RAr�-area, and with over 250 diskettes to look 320 IF LEF'TS(AS,li•"OIR" THE.N 300 300 after, you will soon crash into a 'buffer 330 IF lEf'TS(AS,l)•'-· THEN 340 If' LEF'TSlAS,S)•"f'llEI" THEN 300 overflow' I 350 If' HIOSIAS,S,S)•"f'llES" THEN 300 360 If lEfTSlAS,4l•"OISK" THEN GOSUB 700: In November 1984 Tom Weaver published another GOTO JOO inventory program, doing essentially the same 348 MS•HIDS(AS,I,I21 :Ru.o- 111• of f11e 310 TS•HIOSIAS,44,10I :lttM•� due of job, albeit offering not many (in fact none) C:rtlt iOII lli ht·nillt + options. 379 Rr- lS C:onUIIII ••tat + d ciiU Here I want to suggest a bare bones method, 380 ZS•MS+" "+OS+" "•TS 390 PRINT lS enab11 ng you to create an unlimited file of 400 'RINTI2,ZS your catalogues, in a standard FLEX .TXT 410 GOTO JOO 700 REH····------············--······--···· format, so you can easy edit and sort it 710 Ru.o- UtriCt dlst·fli- llld disk I later on. 720 OS•HIOSIAS,7,8) 730 I•INSTR(2 , 0S, • "I You have to use 4 programs: 740 IF 1•0 TH£11 800 :R£11 dlst·IIIM Is 8 Ur&Cltrl olt••. 1.the LOG utility by N.Yssel, published in the 10119, so 750 It(- pid wltll SPiCU Ullltl 8 November 1984 issue of 68 MICRO JOURNAL 760 OS•HIDSIDS,1,1·ll : RE_. this Is N�ot 770 fOil J•l TO 8 2.the standard FLEX DIR.CMD 780 DS•DS+' • 3.a little BASIC program from ��t�self, named 790 NElf J 800 REH ... look for disk nul!lber (btollls with BUILDCAT . " 8'10 I•INSTRtl,AS,"I" I 4.the standard FLEX SORT/MERGE program 820 OIS•HIDSIAS,I,6) Now here is what you have to do to create 830 DS•DS+" "+OU 890 RCTURII that complete inventory of your disks: 2000 REH•• 2001 PRINT CHRSI271:CHRSl691::REH- CLS ON 1.load and run the LOG.CMD typing for 1110 JUIUPMINT'.••••••••�••••••••••••••••••••••••• instance ...... 2020PRIIIT'•C A T A L 0 G 8 U I l D E R +++LOG 1. CAT84 .. 2.using the DIR.CMD, look at every diskette 20JOPJUNT.•••••••••• .. ••••• ••••.a••••••••••••• ...... you wish to inventiorate; all these DIR's will 2040 PRINT be logged into the file CAT84.LOG 2050 PRINT"Thls progr�• Utes i LOG- file conutntng tile OIR of tile dlsketlu" 3.having finished quit the logging action by 2060 PRIIIT"It strtps the •e111111gless typing lnfor.. ttons, •lid oullds for uch file" 2010 PRINT"• I tilt wlth fiL£11AH( OIS!t·IIAHE• IIUIIBU • OAT£' +++LOG OFF 2080 PRINT"The resultt119 hie ..Y the11 be 4.You now have on disk a catalog file, sorted by SORT·HEIIG£' 2090 PRINT containing many lines with unwanted and 2100 RCTURN 3000 REH·· unnecessary informations; run the basic 10000 R� ERROR HANDliNG program BUILDCAT to strip these off and 10010 If' (ltR•8 THEN 10100 10020 PRINTCHRSPI:"FATAL ERROR«<«««<«<" create a catalog file containing only the 10030 STOP file-name, disk-n ame-number, date of 10100 RCH ·· 10110 PltiNTCHIIS111;:PitiiiT:PIUIIT creation. I kept this little basic program 10120 PRINT"Ciltlog· fllt flntshedll" intentially very primitive, to make it 10130 PRINT 10140 CLOSt I:CLOSt 2 transparent and allow easy modifications. 10200 £110 S.Order the resulting .TXT file with the 10210 ItCH··

'68' Micro Journal 45 Pleasant P L I 9 is ignored, so this gives you the freedom to use all upper, all lower, or a mixture accord1 ng to your whim. The ava1 1at>1 llty ot By: Lane Lester the underline character encourages mult1-word names for added readability, e.g., LOAD_DATA. In comparing FLEX to the other operating systems available for 6809-based computers, If xou're starting out to learn a it s eems that "Friendly FLEX" sums up prettY. Janguage l1ke BASIC, there are all sorts 9f well the differences. The English-like anij help available for beginners. Radio Shack s uncluttered nature of its command lines Color BASIC manuals border on the infant1le. appeal to all but professional cry ptographers CoCo magazines provide a continual supply of and those who yearn for the days when the use tutorial articles in the language. And in of comP-uters was a secret art available only most towns there wil I be a group of CoCoNuts to the few. As you can see from the title of who help each other master the capabilities this column PL/9 is a language that provides of the language. But the situation changes a similar Ht traction. I'd liKe to intrqduce drastically 1f you move to something l1ke y�u to some of the features that make PL/9 so Pascal, C Forth, or PL/9. Then you're pteasant to use. pretty much on your own. Most manuals that come with these languges have l1ttle or no PL/9 is a procedural language like C and tutorial material, so you have to head off to Pa�cal. In fact, the easiest way to describe B. Dalton's to get some help. You'll find PL/9 is to say that it's a cross between books written for oegi ners for all of the those two languages. The programmer has the languages... except PL ?9! same freedom that C prov1des, plus the English-like and self-documenting appearance Not very encouraging, you say. That of Pascal. To put it in a negat1ve way, PL/9 would indeed be the case, were it not for the does not impose on the programmer the heavy excellent manuals and sample programs that constraints of Pascal, nor does it have the come with the package. Graham Trott has done crxptic appearance of C code. About the only an outstanding JOb of providing an th1ng I don't like about PL/9 is its name. introduction to the language for the When you tell someone about it they say, "Oh beginner, plus a useful collect1on of yes like PL/1."... whatever that 1s. l reference material for the old hand. The wis� that Graham Trott had called it Galfleo 231-page users guide is "aimed at the or so�thing �lse that doesn't generate complete newcomer" and provides quite an preconce1ved not1ons. education in . Sample program fragments illustrate the explanations My first micro was a Color Computer, and of each feature of the language. At the end I've been spoiled by the inter�reted of the users guide are 40 pages of example ROM-based BASIC. For me, one of PL/9 s best programs which provide further illustration features is that its compller and excellent of the way that PL/9 programs are ljne editor are fn memory at the same time. constructed. The 193-page techn1ca1 reference I m too sloppy a programmer to put up with manual provides conven1ent access to separate ed1ting, compilation, and in some information on the editor, compiler cases asse�bly, for. every undeclared debugger, and PL/9 language. At the end ot varia6 le m1ss1ng ";' and typographical the reference manual are the descriptions and error. When compiling a �L/9 P-rogram and an listings of the library programs, which are error is encountered, the offending line is also included on the PL/9 disk. These are displayed with an arrow pointing to the place included, as needed in PL/9 programs to where the compiler ran into troublet and an provide 1/0 with tnet keyboard, screen, error message is displayed. The editor can printer, and disk . Also included are immediately be used to correct the problem programs for string functions, real number and the compile command re-issued. For a mam pulation, scientific functions, and a more complex problem, a debugger program can Shell sort. be loaded from disk and t ne program run withjn its very powerful facilities. I There is plenty more that I �ould te 11 wasn t always this sloppy and lazy. When I you about this fine system, but let � look at was learning FORTRAN 1n the late 60's by an actual PL/9 program since that s one of keypunching the programs and submitting the the best ways to see what a language 1s like. card decks to the high priests in Purdue's About 803 of my 1nvo1ves word computer center, I tended to be much more processing, so an initial project has been to careful. convert my Color Disk BASIC Telewriter files to the FLEX ASCII format. Telewriter stores One feature of PL/9 that really text in binary . so two types of conversion appreciate is in the area of variable names. are necessary: b1nary to ASCII code and Disk Meaningful names do a lot to make programs BASIC to FLEX file formats. There were a easier to read and earlx BASICs with their number of ways this could be accomplished, one and two lettL er restr1ctions were most but I ended up using a program I already had unhelpful in this regard. 's Color to move the binary f1le to FLEX, and then I BASIC at least allows l ong variable names, wrote the following program to convert from but difficulties arise from the fact that the binary to ASCII. CONVERT.CMD does two th1ngs interpreter considers only the first two that make it easier for me to edit the files characters, A gasoline m1leage program I with my current ed1tor, DynaStar. First, of wrote origlnally had PRICE ana PRESENT as course is the binary to ASCII conversion, variables, which did not work well at all. but a1 so helpful is that whereever a Microsoft did upgrade their BASIC for the IBM Telewriter control character is encountered PC by increas1ng the n�� size to 16. PL/9 it 1 s rep 1 aced by a "" which is the contro1 allows names up to 127 l! ) characters long character used by J0ST, the text processor and all are actually part of the name . Case I'm now using.

46 '68' Micro Journal This program comes under the the heading of "quick and dirty". It's certainly no AT SC840: BYTE FCB, ERRORC319l; thing of beauty, just something thrown together to get a one-time job done. In AT SCCI4: INTEGER LINE_POINTER; fact most of the code is from a program in the �L/9 manual that converts upper case text INClUDE IOSUBS; files to lower case. I .iust added the necessary stuff to convert Telewriter code to INCLUDE FLEX; ASCII. As is true of Pascal and C, variables in PL/9 have to b declar�d as to type; byte PROCEDURE ABORT; lB bits), inteaer 16 bits), 9r real \B-bit exponent and 24-br t mantissa). In Lines 5-6 REPORT_ERRORI.FCBI; 4 number of single varjables and vectors FLEX; lsing le-dimension array�) are de�lared at ENDPROC; spec1fic locations in RAM. From L1ne 5 we see that the 16-bit integer POINTER is at $0000 and LAST is at $0002. Following that PROCEDURE OUTPUT

10 IF NOT EOF(1) THEN INPUT1, 4$(1): I • I + 1: GOTO 10 POINTER : 0; Lines 34-38 serve the same purpose of breaking out of the REPEAT-FOREVER when the REPEAT end-of-file or some other error condition BUfFERIPOINTERI z READI.FCBl; occurs. IF ERROR TMEN The Telewriter file has the extension IF ERROR = 8 .BIN, so Lines 44-46 open a new file with the THEN BREAK same name and the extehsion .TXT. In Lines ELSE ABORT; 49-58 we have the REPEAT-UNTIL, a construction found in other languages. This IF BUFFERIPOINTERI = 92 THEN BREAK; loop out�uts the contents of BUFFER to the POINTER = POINTER + I; new disk file after converting each byte from FOREVER; Telewriter to ASCII. This is done with an IF-CASE group which allows for more LAST = POINTER; alternatives than the IF-THEN. Notice in CLOSE:FILEI.FCBI; Line 54 that this feature also has an ELSE which in this case does the most common job of the conversion: adding 32 to each btte. FC8!12l : 'T; FC8113l = 'X; FC81141 = 'T; In Line 55 the added be 11 (or is 1 t a OPEN_FOR_MRITEI.FCBl; whistle?) of changing the Telewr1ter control IF ERROR THEN ABORT; symbol to JUST's " is performed Then the converted byte is passed in L1ne� 56 to PROCEDURE OUTPUT for writing to the file. POINTER : 0; After the whole file is written, a final REPEAT R is s�nt (Line 59) , the new file 1s �losed IF BUFFERIPOINTERI Line 60) , and the 9 ld file is deleted lLines CASE 0 THEN BUFFERIPOINTERI = SP; I1-62) . Line 63 1s not part of the program CASE 9 THEN BUFFERIPOINTERl = 'l1 and is placed there by the editor. CASE 94 THEN BUFFERIPOINTERI = CR;

ELSE BUFFERIPOINTERI = BUFFERIPOINTERl + 32; IF !BUFFERIPOINTERI > S7D THEN BUFFERIPOIHTERl = '\; OUTPUTI8UFFERIPOINTERil;

.1110 POINTER = POINTER + I; I• CONVERT, Converts TeleMrtter bin�ry ftles to ASCII f/ UNTIL POINTER >= LAST; ORIGIN = $8300; OUTPUTICRI ; STACK = t; CLOSE_FILEI.FCBI; FCBC12l = 'B; FCBI13l = 'I; FC8114l = 'N; AT JOOOO: INTEGER POINTER, LAST: BYTE NA�£1201, DELETE_FILEI.FCBl; BUFFERII 0000 I ;

'68' MicroJournal 47 68' Mfcro Journal May 1984 1984 Index of Articles FLEX USER NOTES, Anderson OS9 USER NOTES, Dibble Back Issues "-.Y Be Ordered OS9 Users Group, Puckett $3.95 Per Issue By Wrft1ng or C.llfng Reading Non-Flex Based Disks, Fraser Toll Free 1-800-338 6800 �1odem 68, Moorfoot Hazelwood DM-256 Review, Staff January 1984 Multi-Tasking w/o Interrupts, Troot FLEX USER NOTES, Anderson Repairing 1·1ini Floopy Drives, Massen OS9 USER NOTES, Dibble Improvements 1 TO TSC "FILES" Utilities, A BASIC09 Financial Modeling Program, Bovet Walters EPSON HX-20 Review, Stark Bit Bucket - Help - Classifieds ACORN MOTHER BOARD Review, Abrahams CCSM Standard MUMPS Review, Dibble June 1984 Converting FLEX to OS9, Pass FLEX USER NOTES, Anderson Bit Bucket - Help - Classifieds OS9 USER NOTES, Dibble C USER NOTES, Pass February 1984 Rumors & Such, DMW FLEX USER NOTES, Anderson Reading Non-Flex Disk Continued, Fraser OS9 USER NOTES, Dibble Disk Speed Measurement, Johnshoy CONVERTING UNIFLEX TO OS9, Pass PC, Korte 1983 68' MICRO INDEX of ARTICLES Hacking the MAC, Wolf DYNAMITE REVIEW, Dibble Bit Bucket - Help - Classifieds PACK, Gottschall WORD.BAS & XON.OVL, Robinson July 1984 UNIVERSAL SINGLE BOARD, Leverkusen FLEX USER NOTES, Anderson OS9 SIG on COMPUSERVE, Bellomo OS9 USER NOTES, Dibble DISK & RAM DISK TESTING, Johnshoy C USER NOTES, Pass UPPER & LOWER CASE CONVERSION, Lanpher Rumors and Such, DMW Bit Bucket - Help - Class1fieds 68000 User Notes, Lucido Windrush IEEE-488 Review, McDaniel March 1984 VDisk Review, Pass FLEX USER NOTES, Anderson Disassembler, Stock OS9 USER NOTES, Dibble Reading Non-Flex Disks, Fraser C USER NOTES, Commo Meta lab Review, Nunn DATA STRUCTURE, Pass ELEKTRA Motherboard Review, Sims Using MM58167 Real Time Clock, Gross Corrections UNIFLEX General Ledger Review, Bram Bit Bucket - Help - Classifieds SSB DOS Utilities, Fraser Review of RMA and RLINK, Dibble August/Septe.ber 1984 MIKMAN to enter MIKBUG, Trollope FLEX USER NOTES, Anderson Software Support, Motorola OS9 USER NOTES, Dibble . "PK" Programable Keyboards, Condon C USER NOTES, Pass OS-9 Users Group News Letter, Part I 68000 User Notes, Lucido Bit Bucket - Help - Classifieds Reading Non-Flex Disks, Fraser Communicating with OS/9, Thompson & Pass Aprfl 1984 Review of S Disk. Bootfi x & Filter Kit I, FLEX USER NOTES, Anderson Pass OS9 USER NOTES, Dibble Disassembler, Stock C USER NOTES, Commo SWTPC Prospering Pioneer Where is the 68000, Staff Hyperdisk, Hazelwood Programming in C: A Review, Foster Bit Bucket - Help - Classifieds The GIMIX III System, Staff Remote Pulse Width, Craig & Ziolkowski October 1984 James Bellomo Dies FLEX USER NOTES, Anderson Day Command for FLEX-9, Mills OS9 USER NOTES, Dibble OS-9 User Group News Continued, Part II C USER NOTES, Pass 68000 SAGE System, Lord CAT Utility for Flex 1 2 & 9, Puglia & Budget, Craig Taylor Bit Bucket - Help - Classifieds LETNUM Routine, Gass

48 '68' Micro Journal Microware Relocatable Assembler & Linker, Syatber 7; Review-Patrick Pass Rail Rwaaer; Review-Patrick 68K Experiences, Salzwedel "•&•pede; Review-Patrick Cyclic Redundancy Check, Magnus Music on the 68000, Dildy Vol. 1 laaue 2 KBASIC Tbia .. That; CoCo OS-9-RLN Corrections OS-9 oa Color Cowpater-RLN Bit Bucket - Help - Classifieds "icroware Se.dDar-DMW CoCo 64K RAM Mod-Abrams

NOftllber 1984 "ake CoCo Sll.er-LaLone FLEX USER Notes, Anderson FL!XNET liS-Rosen OS9 USER Notes, Dibble CoCo 2 64� aad Diak-RLN C USER Notes, Pass Siaple KEWU Procr••; Hints-Brumley 68000 USER Notes, Lucido Uaer Def raactioaa; Hints-Brumley Single Board Computers, DMW UKSCAII-Lewis Cobol, Anderson !Ute�lc; Review-Lane Data Systems 68 Product, Review Geocrapby Pee-Williams 6809 FLEX Diskette Inventory, Weaver I.OMUCK-Roberts LOG, Yssel Vi&ard 64-Patrick General Purpose Interface Bus, Moore "alti-Pak Iaterface-Patrick Bit Bucket - Help - Classifieds FaatLaae- H ifte r SP-1-Williams Deceeber 1984 Saada of !&JPt-Patrick FLEX USER Notes, Anderson OS9 USER Notes, Dibble Vol. 1 laaue 3 C USER Notes, Pass Thia .. That; CoCo 2 Disk Controller-RLN Single Board Computers, DMW Liak-iDI Loader for I.S & CoCo FLU {pt. i)­ Computer Excellence �1emory Bd, Anderson Waggoner 68000 USER Notes, Lucido So•e Iaale BASICS about Diak Syate••­ Turtle Graphics in PL/9, Cole LaLone Software Product review, Ward "ICROBOOKS; A Tape-Based BASIC Program for Extend a FLEX Dictionary, Fraser Small Business Use-LaLone Reading Hard Sectors Disks, Warren COPTII!V; A BASIC Disk U till ty-Sta rk US ALL!, DMW �Ell; A BASIC ''Lunar Lander" Game for 4K­ Documentation, The Necessary Evil, Toscani Killebrew Jr. GI.APHIC LETTDS; Use a BASIC Subroutine to Development Terminal Program, Hausler Display Graphic Letters-Stumpf Bit Bucket - Help - Classifieds PI.RTDUKP; a BASIC Program to Dump Graphics to a Paper Tiger-Euton CoCo Users Tutor; Review-Williams Color Mfcro Journal Index Vol. 1 laaue 4 Send $1.95 to cover 1st Class Postage Thia .. That; OS-9 Users Croup-RLN Please Specf� Volu.e and Issue OS-9-Tipa; Useful Operating Hints-Aker Cowputer OpertiD& Syate••; Part 1-staff 2) Or Call To Order Liakia& Loader for I.S & CoCo FLU {pt. 1-800-338 6800 Waggoner CoCo 2 Hardware Botea; The New Color 1 1 Vol. laaue Computer-Rosen Thia_.. That; Introduction-RLN Where ia the Cowpater 110V77-Pass BASIC Daera •otea; Adv. BASIC-Baker BASLIST/BAS; a BASIC "Pretty-Printing" Babf CoCo; Hodel 10-Beckett Program-Deal 32; IDaide the Dracoa a look-Rosen OOPS!! Clarification of last months Co••aDicatia& with your CoCo; Modems etc- MICROBOOKS Discussion-LaLone Rosen X-T Plot• with the "X80; a Basic09 I.EAD; VbJ CoCo Caa't Disk Problems?-Pass Program-Strunk Coeputer TAP!Sff; Considerations-LaLone The Co•plete Peraoaal Accoaataat; Review­ CHECKS/BAS; Home Use Program-Yates LaLone Laeer Vara/BAS; Game Program-Rogers llDC-1; a CoCo Disk Controller-staff SOPER L•aar Leader/BAS; Game Program-RLN Doodle lac; Review-Patrick

49 68' MICroJournal ROM to RAJt-Kahn Vol. 1 X.aae 5 OS-9 Uaera Croup IIEVS L!'n'D Thh_'• That; Basic09--and the C Compiler­ •a•n• RLN Oa lac BASIC'• Paaeti oa with BBLIOOICS /IAS-LaLone Coa.e�� CoCo BASIC to OS-9 laale09-Pass Cookie Moaatera LETTER CRUIICH; Review-Mann RDC-1 Dhk Coatrolle� Chip Clarlfleatioa­ MASTER VRITD; Review-Mann Weeks CIAPHIOOII; Review-Mann A TTIO Meet• OS-9-Kahn BA BTLOW; Review-Patrick Llaklac Loader for RS & CoCo FLEX (pt. 3)­ Waggoner Vol. 1 Iaaae 10 Uu the MICRO VOHS SOC DIS ASS!IIBLD with Thia .. New Columns on the Way-RLN the FLEX DOS; program-Maltby That; OafQa the CoCo; Soldering for the Newcomer- KIDICAL/IAS ; program-Yates Mann Zaz:xoa; Review-Roberts Adn�tl•er'a Corner llew as .Joratlcka; Review-Roberts A PRIITR for laale09-Voigts TAPE Pile Traaafera-McCarry Vol. 1 uaae 6 ROM to RAJt (update)-Kahn Thla _'II That; Computers, Software & Assembly Language Programming??-RLN H-orn A ''PCLEAR 0" for Ext. Basic & L!Da-The Readers Helpful Hl at; Dlak Ext. laalc-Brumley OS-9 SIC oa Co.paaer.e-Bellomo KACICIAPH; Review-Mann Coa.e r � CoCo BASIC to OS-9 laaic09 Part Review-Perotti Il-Pass ColorS oft SIA; DTFIB; Review-LaLone Llaklac Loade� for RS & CoCo FLEX m; (conclusion)-Waggoner T!XTPRO Review-Brumley MTDIR, an OS-9 Asmb Lang 'Pipe' Program- · · U Kahn Yol. 1 I ..ae Thla .. Th at; Book Reviews, Etc.-RLN Copy M/L Ta pea; Basic Program-Martinez laaic09 Iaale; IN THE BECINNINC •..-Voigts 4 DRIY!S/BAS -Use Double-sided w/RS DOS Introduction-Brumley Vl.l; program-Yates Ualac Iaale; & PACE; Review-Garrett INSIDE the CoCo; Keypads Such-Chapple Adnrtla era Corner Ta pe File Traaafer (pt. 2)-McGarry Yol. 1 Iaaae 1 CoCo OS/9 RS232 Modale-Pass Thh _ '• That; 6883/6847 Chip Problem, ''Help Wanted"-RLN Vol. 1 Iaaae 12 Ualac the CoCo; Introduction-Mann L!Da-The Readers Thla .. That; A ''NEW GAME"??-RLN Oalac the CoCo; Function Keys for CoCo-Mann CoCo OS-9-Dibble IRSIDE the CoCo, Microprocessor-Chapple Coaye�tlac CoCo BASIC to OS-9 Ba ale09 Conclusion-Pass AdnrUaer'a Corner ML Utllftlea; A Search of the Perfect OS-9 Tl pa; "dsave" command-staff Utility-J a necki OS-9 Uae�a Croup �VSLETTD laale09 Iaale; No line Numbers-Voigts Oaiac Ia ale; Corrections to SDPRO-Brumley Vol. 1 Iaaae S Firat Step Iato OS-9-Dibble Thla _ '• That; A "New CoCo" Rumor, RS Disk EDIT/lAS-LaLone Controller Swap aad C Co•pller Uaia& the CoCo; Computer Surplus-Mann TAP! File Tr aaafera (conclusion)-McGarry Ualac the R.S DSICOO. 'Roaatlae-McLaughlin 0$-9 Uaera •otea; Big Systems and OS-9 on the CoCo-Dibble The Peepe� 2.0; Review-Mann Vorkla& with �-Kahn 2 VORD-PAK-SO Cd. Board; Review Vol. Iaaae 1

_ & Macro-SOC; Review-Pass Thla 'W That; Dragon Computer Update Repeat ICey; Review-Mann Interpreters and Compilers-RLN Uaia& Iaale; Sorting-Brumley Raate� lle•ory Syate• (RMS); Product Memorles-Chapple Announcement-Motorola IJlalde the CoCo; Ual.a& the CoCo; Letter Replies-Mann laalc09 Iaale; Packing-Voigts Yol. 1 Iaaae 9 KL Utllltlea; ORACLE II Cont.-Janecki Thla _'W That; CoCo DYNACALC and "Help Wanted"-RLN MIIITIXT/IAS-Belgard Floa�-Polat Arlthlletlc-Pass OS-9 Uae�• llotea; More about the CoCo Disk U Driver-Dibble Uaia& the DSICOOW Roatlae-McLaughlin Color Boaltor; Review-Janecki Uaiac the CoCo; CoCo Disk Driver-Mann Star Tra p; Review-Mann 50 '68' Mtero Journal Vol. 2 laaue 2 96KX-M Meaorr Espaoder-Hann Thh '• That; A "Bug" Fix, Computer(s) in Bliteetiord; Review-LaLone th·e Schools-RLN lli teeFlle; Review-LaLone Oaloc the CoCo; Upgrading CoCo to 64K RAM­ OS-9 Text Toola-Kahn Mann OOCODDKP 2.1-Mann laalc:09 Iaale:; To Error is Human To Forgive "striae Arltt.etlc:" laale09 Dtilitlea-Voigts Sometimes Takes A Computer-Voigts MI. OUlltlea; Disassemblers-Janecki BIT BUCKET UaiQc BASIC; Color BASIC-Brumley DICihL SPIChLTIU IDalde the CoCo; PIA's-Chapple SIU htrUODCl ST, LOUIS, '10. Ut :o CP/M oo the Color COeputer-Nygren ()U) 8•1·01)6

llac:kJac:k la,ale; Review-Mann U �ICIO JO�I.. L ,•oo ....e ,.. ,. ,.,, .. laalc:09 Tour Calde look; Review-Voigts ,0 ...... ''••••• Tlf lJl'-)

Vol. 2 laaue 3 Thla 'If That; "Smoked" CoCo 2's-RLN Vhtl• t•uhua • c:owru lft IASlC ,, •• ,... ,., at tlu local Uatoi the CoCo; The Magic Pokefile Part !- J•alot c:oll•s•. I fov.. l \hat uu he:\ of • .ar•ct eetl'lo4 or ,nauot • ,roar•• llatht ;,raut, tn• T SC: IASIC ••• to ••t till• h••t, •••1 Mann ca•�••••••· T3• c:••••ttr• •• are ...... •r• all aa•• ••• •tataa•• ol SOUTilWIST TICRIItCAL PaODUCT$. Tlto ol41 h••• hau Ue 1/0 fOrt. laalc:09 Iaale:; Number Crunches-Voigts roa414ro•••• at 11000. '"• tt\o fOfto ue '" 16 "rt.• �•••4arl•• to "• ceoJU\Uo •1\1\ tbo •••n ••H•. Atl ha•• ••ralhl prhtor ••rt• •t Ualoc Iaale:; Token1zing-Brumley • • t llt . ::�!1.7���T �:uT" ::;.�::. :; �L:�: :•• "4;c E:�!=�=� .:;;�: , 0 MI. Otllitlea; Disassembler Pt. 2-Janecki Tho fallo•UI ,,, •tllltle• wUI •or\ hoa IIASSC. ••• caa h Inalde the CoCo; More on the PIAs-Chapple cathc •hlh IIASlC to r•aaiaa. t••l 4o aot. :.o•o•u. ••�•"• .... liUtC oaf •tll •or\ wltt. ••r rL&I proaua ''•' •••• tiU st••••r• Procr ra Calculator; Asmb Lang Program- <••···· •• ,,., .., ,., .. Lewis •' o ca CP/M oo the Color Coapater; Final Part­ ,�. !!:.!:: .:: "!!' ;:: :; ,;!!!. ;:: :!!.::'r:�a�:- !; u·::!,.!: aora•l oporottaa to t�• •rneo. PIO• c•oc.ka s.a ••• U u t• alroae1 Nygren rooahl to ••••••t ••••• •••cot•• t•lce ••• craahtaa ''• oratea. PlOtt c•u\a to ••• tf rto• &a rooataa ••tore uzul to tal'a tt ott. Faatape; Review-Mann If 10ar '' tuot ••ffOrta •siLlCT .\liD OISILICt cooaoa4t. ''•r no ,,.•• , ••• tor ta •••• '''I'•••· ••• •••• •J•c.t •• olea •r••••••·

Vol. 2 laaue 4 T•••• proar••• are •'•••••• far ••• ••• of all r••••r• h•• of chore•. ''' oro oat to •• aot41. or tacla41e41 ""' oar otlll.er •aftwara Th.U 'If That; Education and the CoCo-RLN tltot to aoU tor ffeflt. ,.0. Ualoc Iaale:; Looping-Brumley PACt l.oaide the CoCo; The Powerful "SAM"-Chapple ' • ·············· ) •••••• •••••• PtOI Educ:atlooal roraa • ' .. PliiTU PUS TUO OTILin laalc:09 BASIC; Proceeding w/ Procedures­ • • Voigts 10 • ••nus or ranTu ru Oaloc the CoCo; The Magic Pokefile Part II- II 11 • Ph AT lOll 01 IIP·ID tOUD IP Mann I) • CPU Ttrl UDICATI$ TUT MF.JD " 0 IS INST A LLID II COIIPOTil. I) • OTWUWISt Ph IS TO II TU 16 MI. Otllitlea; Disassemblers P. 3-Janecki • SIDI OP 41 L1 II FOtT I 11 .,. IIP· • STS U II � OST h t l tAll AT !800 I 8 lead IS Diak Dlrec:torlea fra. OS-9-McGarry • StST!II WILL MALT IF lOT TWUt. 19 ADDRESS FIL!/IAS-Chapple 10 71 • STSTtll tOVATIS H Coapu terlzed Lea roloc Proc:eaaor; Review­ u CCU CPUTtr 100 ICC)) Mann ,. COOl ...., IOU ICDOl , C Oil OUT C U IOU ICDI1 Maltlple Procraa Proc:eaaor; Review-Mann n CDU PSTIIC IOU ICDU 11 CD U PCILF 1110 ICD H l8 0010 POIT7 IOU 110 JIM "Ldltac:" laalc:09 0Ulltlea-Vo1gts 20 )0 • ASCII COOl IOUHU )I n 00"' lOT IOU to• n Vol. 2 laaue 5 000• LF tor tO• ,, 000, Ct lOU tOO H Thh '• That; Where to from here, Tandy?? 0011 o•LI•t lOU I n l l an·d a ''NEW" CoCo Sorta! !-RLN )7 • ltTUUL LUlL lODATU )I )I Baalc:09 Iaale:; Pascal Programming and lSU co•our too HUt 60 " •D&F4ULT POll -O)tf!S laaic:09-Voigts 61 Oaio& Iaale:; A Question of Output-Brumley ., 1011 OOT ID IOD S!.OI! " ron cn-u roo 1108) 6) loaide the CoCo; The Po we rfu1 "SAM" Part 2- .. ton outre tOO HOlt Chapple PtOI P6CI lulldloc PROTOTYPE Hardware for th.e CoCo- Hart u 4t (11100 OtC IUOO LASD/IAS-LaLone )0 ll UOO 70 U SlUT lh JlUTl IIAiliC.. AJOU•D VU$1011 Tad; Review-Mann H UO: U It II H PCI 111.1ll,UI,t)A.UI teO• II )) UOI 00 OA )0 U FCC ADOS; Review-Mann ca.LF. ·raorun or Dtelh� • 1101 ,, 10 4) )l "Looltap/Slookap" laalc:09 Ulitiea- Voigts uo • 1 4 ,. 1 0 '' 0 lll l • • ) 0 •• •• £111 " •• )4 " Dlak Otllity 2.0 & 2.1-Hann uu •c 10

'68' Micro Journal 51 It ,. ltiO ll 10 41 ll rcc "SPIC IALTIU" ,CI, Lr. •out• lUI U 41 4C )4 10 0004 lOT IQC 104 1111 40 41 U OD II 0004 LP IQO 104 un o• u 4t u n oooc , IQO s oc IUD 41 u 0000 Cl IQO JOI l4 OPI.lll UH 41 14 U 7 0 rcc "CTs lLL OIITPOT TO COISOL• oou IQO Ill 11)7 41 4C 4C 70 u ..,. ., u ,. 10 u • llTIIUL LUlL IOOATU Il l• H H 70 H 27 un 4r 20 u ., 21 1100 CPDUII 100 11100 ll I I 1411 OJ CPO lOUD 1147 41 u 4, 4C n 1111 COfOOT IOU fULl LOCATIOI or COJSOU OOTP� lt4t H OD 04 41 rcc "I",CI,LF,"UD Pll"U. JO uu .. .. 20 )0 ll , .. , ll •• •I ,. 12 CIOII OIC 1(100 1111 41 11 n 2 0 )) u u 70 ,. CIOII 70 )a sun ... STUTI IIUCI 4100.. tUSIOO , , Cl07 ,. li)J 4( . • • •• rcc "LOU$ AT UIOO".CI,LF t2 Ull rc1 •n.nr.nl.tJ•.nJ •nuo- • uu, 70 .. )4 Clo• n UH 20 l4 41 ll ,. CIOI 00 O • 10 )2 'ec CI,LF. "PIOPIITT or OICIUL " IIU 10 J O OD OA C I O I •r 10 4) )2 ,. , ClOP H I t 20 ., uu . u STUTI PSI$ 4 ,I S&•l: A AID I ,. CIIJ • • 20 .. .. u n n ccu LDI ••usc POUT TO IIIShCI •o Cll l H U ,. 41 U K 10 CDII JSI PSTIIC Pll" IT . c111 •c 1c . lt H ID CDU JU PCILr u 17 CliO U )0 ., ., rcc "SPlCilLTIIS" "llSl" UJl II CDIJ LDI OOTCIZ•I OOTPOT UCTOl ,C.I,Lr. ., IIH IC UDI CUI lt ll 4C H CIIPI IPOUT m�o�:�:TCIICI TO SU IF PIIITU l LIIAOT .. lt7t n H Clll 4t l) , 00 IIQ UTUU lr 10 IITCII TO FLU 6) .. ,. ., 1111 cu• oa ,: lS ,, STI CO"OOT t r lOT CIUG I OIITPIIT fiCTOt CliD lS .. lt7D It lUI LDI IPOIIT TO tiC- 1. 001 PIIITII ., ,. CUI H 20 ., IUO tr CDII ITI ODTCIZ.I STOll PIIITU U fiCTOI n rcc "T$ CO•SOLI OIITPOT tiC TOI" .. 10 CUI ., 41 ,., lUI ll POLS I OOIT IUD I UTIIOU c u• •c .. lUI U CCII u. CPOTTP CIT CPO TTPI lS 2 0 ., Cl l& H ,. 70 lUI 1012 OOT D OT POl ODT 10 DlhOLT 04T4 110 SOH C UI 14 2 II IUl IOU OOTCIT POl CIT-10 DIPAOLT C OITIOL tiC 0 ,. l) n UIC IOU CUI 4) ,• ., )2 OOTDit POl Dllltc DlhOLT DlllCTIOI UG ,, CUt U oo o s• Ull 14 02 iiDA f2 STIIP 4LL IUT IIP·ID • ret ·s·.ca.Lr."To Tuu orr , cu• ., . litO II 02 Cllh 12 CIICI POl IIP·tl 10 ,. , , ltt2 H 01 IIQ PIIITI CO lilT PU tr IIP·IO CUI )2 . ,. ltt4 •• 70 LDo . 10 ., IPOlT1 1P lOT IIP·ID CIAIOI CUI •• •• 20 u n Utt II lilt ,. OOTDAT•I To IDIIIII ron 1 lO CISt )0 , ., •• • ,. .... 4( IIC4 rec •rao•·. • • .ca.Lr CISA noto. .. CUI l4 12 IT PtOJ PAC& UTI PSIS I,A SUI I UD 4 u c ur n CDU Lll OOTCIZ.l LO U CIIIIIIT OOTPOT 'ICTOI ., Clll 1C 11011 7t lltA 17 1111 ITA ODTCIT • I "4" SIOI CIIPI ICPOIAII Sll 1P "PlOI" IS 1011110 .. Cl., U lD 10 litO It 71 LU IPOlT h U POIT 7 DIUCTIOI COITtOL a �s IJlt IP lOT QOIT ' " Cll7 It 01 LU It t II "" 17 II II " OOTDII+I SliD IITDU TO PIIITU •I Cl6t U Clll u 11&2 .. ,. PIJITI LU ,.,. TVII 01 Ill JSI PIITCII , CIIC ' ' . U oc LU ,, SliD ., IIU U ., IIU " OOTCIT) POtlt PliO TO PlliTU ll Clll 10 Ctll I• lUI .. , LD4 ,, ALL OIITPOTS JSI PIITCII • • CUI at IJ ., llii • ' ., .... su (OOTUT) LU IOrLIII DUILICT PtiiTII so CIU a t COli JU .. lUI It ,. LU ,.,, Tfii OPrDtl PITCH " Cllt II .... LDI 17 1110 " ., nu su (OOTCIT) COJO IIT LOAD 1 VITI OIICIIU tlCTOI )2 Cl7t IF CIIJ II 1114 II , LU ,.,, SIT 110 urrn TO OOT1'0T STI Ocrtelhl llTVU IT TO OOTCil , cue n CDU JSI .. 1111 ., ., ltiC '" (OOTIII) ISTIIO t lSTOIU 1 /0 flCTOIS ,. Cl7r II CliP Lll to IIU It II LDA 1111 SILICT Pll"U l ltlSSCI POl" TO orr lt U S ACI n CIU 20 OJ tl IIIC ID CDU JJI OOTCU au I UTI CO PIIIT IT ,. Clll II Cl4t t2 IIIF u 02 PfLS • un LDI l ltUSCl L04D lOT 01 ltUUCI " (11 7 .. Clll I n IICI 71 CI>Ol JlfP V&t"S l:O UCI TO n.U lilT JSI PSTIIC PIIIT MISS4CI ,. CIU U 12 •• IIC• .. ., 1111 UUT TST OCTUT) cuea rot ru nn tUDT nu • • • IUTOII 4 UO I It CIIC II Ctol n IICI 7l ccu COli C� IU JIIP VUIIS CO IACI TO 'LU .. cur so )2 . , .. .. liCI Jt tTl ltlSSCI PCC "Pttnn IOV Ol'r Lilt• ,lOT , ., )2 20 " IICC H u IlTD II POLS 4,1 UIT IP 4LtU T IIUIIC "" . Clt7 U 1 0 tl IICI 71 COOl JIIP VUIIS "TO n.u � ., n Cltl ., " lltl .. tr ltU POUT JJI (COI OOT) PIIJT'll OOTPOT DIUU .. .. 10 Cltr •c .. 41 l) 100 liD! ,, uoo POUTI Lilt P<:ll CU J 04 101 1111 u ,. IPL rooTI .. CIU 10 n 49 •• 102 IIDl IF CCII CLI P<:ll2 IIUIC2 rcc "PIIITU VU •or 01" ,lOT CUI 14 ., u 10 IOJ IUD U "IIU '" OOTUT) SUD CIAUCTU TO PIIITII cue " .. , 20 10• lUI II ,. LDA �.,. LOAD ST101l CliO 41 ., ,. 20 10) llll ID 02 a n POOTI CO SIJD STIOII CIU ., 41 04 ltU ,. L04 , . , LOAD S TIOU STOP lot U , u ., ltl4 POUT! STA IOOTCITI STIOII co•noL 107 1117 47 ., 101 1111 ,. ns IJD SUIT 100 0 UtOt(S) OUICTID 110 CCDt OIC JCCDt Ill STIIIOI. TULit 112 CCDt 70 ccu PC II TST rcon PllI'Tlt tUDT I II I CCDI 21 01 1111 PCUI COJOOT 1111 CPUIAII 1100 Cl 0000 l OT 0004 IJIT cu• 114 CCDD .. ., uu TIT lOUTCU) IJITI CU7 rr OIIOC LP 0004 IIISSCI CliP IIISSC2 CIU Ill CCII 1021 11or Lill i IADf OfLII I 011II OOTCI COOP OUTCU Clll PSTSIC COil POTCII COli 116 ccu ,. PCIII ITS UTIIO CIU STUT CIOII STUTI CISO WUIIS C OO) 117 CCCI , PCUl rca .,, Ill CCI7 10 H 4t 41 NISSG rcc "PIIITU aCT I" TIO", lOT ccn I• • I n 7 0 CCIF .. . , ,. •• ...OIIilE •oftCOOE ccn , . .. 14 H 1.a11 Ao••••na G•c• •• cc" o• �•chMOna e.c. c.�. lit Y7A 2111 120 UD STAIT

0 lttOIU) DITICTID

PlOW "" De•� E:da\Or""J lie O.IIYQQI�II Toole tor- 069 Yo� don't ancluGe �•r""ly enougn ••t•ra el o� 069 an you,.. ••e•aane, ao �·� •• • contr""aO�taon to l o yo� o�t. UIUOL TULlo �

Aa ...n� of tn • HLL CIT 10 lOU COJOOT 1111 CPlTP CCll Cl OOOD DIIIIC lOll • prog,...._.,.. •YPr""•••,..y oeouggano •• - C - ooo• u ooo• II ISSC CCU OILIII 0011 oara1 CDII co tncH.c:le l t• ot orant at•t.,.. t,. '"'• tollc-lng t-o OOTCIT IIU OOTUT 1111 OOTDII IIIC OOT 10 IOU P<:ll CCDI •wiN"Owtanea o..,.. ""'• �•t the •....., n tvr.cc• ..,.,, tn •••--�• .r. PCIII CCII PCill CCII P<:IL' CDU PIITTI 1. . 1 ro a n 0010 1101 POOTI POOTI 1117 PSTIIC COli thor ate• r OOT IIU lf'IC'lwde.. Ut an the eoOWI"'C'e ot your prog.-.. •a'" a LJI or tiTC U IICC n•n uoo STUTI IIU VAlliS COOl UIE etat�t then cell t n.. •• .nown &n tne c�nta.

""

, ••••••••••••• PIOPf ••••••••••••• • -"E� I ,. Jar\ a:. • •• TOllS orr raunt PUS nao 7 CIUIII.lIN CD()oOA SOl'TWAA£ DOHAT£0 8V 1 I 011£0 l'l()li$£ • • STUDUD PI.U LUlL IQUTU q •<""MOr.oC. If. CANADA 10 II COO) VUIIS IQO JCIOJ u COOP OIITCI 100 tCOOr • tale aP'Io,.•t•·•I""C' to De ltV:Iuc.a •1tft uae •t•c ....-nt )) CDU OUTCU IOU JCDU • u••• 64. Oytea of at•e- .. COli PITIIO IQO tCDll )) CDII P UTCit 100 JCDII •• CDU tSTllO 100 JCDU If • d II UCII COOl IOUATU •�Path aet � v•• at e�� �� owtpvt • he�t ••,.••• ot •••• aef&ne loc•l ataek otr ..t e

52 ·sa· Micro Journal &hol•ne ••t .. �"-DC ee\ anol '�·� erwne• �.. 1 oyte '" • '"'o t-o en.�• an D ttf�'"C' .. ,., \oh( CK. .:, ',,. •• 0 ••ve f\uttOer .nouo ••t ,..n or .. • f! ar.ae eeF &o tubole '" 1111 ,.,, ·��·:1 oa,. convrt c�vert ftabola to en•� '"'''"" ""'' .... . ,. ••1 o.• eave ChAf" ar\ o •no• M\ aftOb•' ..,. . a.noy ••t •h0••1 ..... &f\(,pV •• , ttll�y·7 ··�· N\� •., , •nt..•Y•/ ,.,.. '" n\oble e"

.no,..•a• . "" • fal • .no.aM.6f"C to oe ancludeO M\th uea at•t...nt o•"• u, y, •• op, D, e, ce • �••• 61. byte• of ateck ,,,. o,CI aaoo •12 o•acack befo�• call • lo.a • •atn •t•�cant ... eoo�•••· Y wath nw•be,. of bytae to •no •••• ,...•• .,.., acr•tcn .,...• -ecr"'top,a • tne" oo &.Hit �,. ',,. ... •• , «»••• .... g • u.. • et�e,.r to•th•�J to,. outovt ...... I �atvp ta•t of ... • G•atf"''ya A &It •••• aftoe.u 0 1a atalJ VA110 o ...... - �o 0 •• atw ptr •nooeth .., Jt u•• ataer� for OYtO"t 1••• MCiC'Ct\1 S••o•e ••• .... lei• ,. e.no·.CC S.CII ••t ••o ...,...... I. s.v­ oet - 1••• af\0-A,\f a.OE" ltQU • lela anoeA,• Oallo )1,...... MO.by'ta ,,, . y,c •••• .,ob,\f lea� o,. enoant �oo� •� (Y) ...� ll>a .., . . Pt"• ... ..,. ,, ...,. aftODyte lela •anoo•tn p�ant heedlftt l\r4 ...... nooo,v l••• Sino4.. pcr­..... lela •ftotOP,a lel)l •LSt>� .... ar.ooyt• Oli<.f ...... , . •P'inw,u s ••• -L ...OLM, I ,..••• ,." . er;•• IOf" outovt ...... ICICI ·1\0··· � I ely t..SnOL,.•2.a gat o�ao atert eod� ...,. •no-o.-o ""'· )I ...... , ...... noy.u �­ • "'<> I lone IIi O)lt-1 ICICI anoiY,a ldy .. a•c ru��-nt ... ,,� ··� ano-o•" COOl>)I �·L6noe..na. • o-tt• er.cuno •ttc-•> ali oyt•• ,.,. l ,,... ctr o•IG •notPC,• get rag l••v• on •t•ck pan• o t ov a.no-or"o �o an• r •fter aho �ell eno.lJ lae ,y• Qat • Oy\e , , I'I•• ano&, •• u oar ahOM5t tor••' •• 2 h•• �saate •• Ia� ••n�'�' a to , • lei• lahop•\n peen to usa ror ovt�t lela •Stllpa., .. oo9 t•Wrl\e ••o �o�tAtfte bedded cr/lf ••• • •• t.r•· "'"'0"Y• Gt.H'" ''• .,,.,.. f\V\tt rn•t�t ""''' , .... ' u,.. ent... a' or. o��w Jf not ;vr� or.o<099 .... ldel eti'e.?t � 6Qecwe r•••t •t•c._ ...... •c�\OO,ft O\el ' .. ,..., pula cc, •• o,ap,.,y,u,PC r·aatora •no u.r" pule I> cleAftUO •t.ack loo ... Dell" osapl•y aft ••caa I ely . . get C'uf'"r_,.t - ptr ••••n •�·>ovffar �o an 0 ••• ,y• eat • Dyte 0 ••"• to byte ...... a •t71' •••M pe,.aty lnt " cnvnew convert ' byte to 2 ha• 0\Qat .,..... •lltlpe., •• tt pra"t•Dla1 . •v ' .. • e f\eJI' ctaett:a ift bvff...- .... -17 tO II )1 .. . . • - eiO lo Olf'e ••• . .-eolace oy •.• &t not byte an A •--•��ff•r c.oe ae7F' DEL •• ftOt oran,•ola - _,, .0 00 &f D£L ...... ,. . .. a.eve '"' buffe-r ei.CI> dona 16 Cha,..• yet� Dr'W ahO.I� tO &f f'\Ot . ' eou cc " • •••) Duffer laG •MOeA o•t ClliLF �>••,. ICIO o'E voper c:•.. o" or•nto-..t ato • • ••v• an 0\tfta-,. ...,. aftolle 't oat sa of'\. LOIIIef"' t-••• aty • • ••"• ,.... - Pt:r for rw•t loop ICIO o•F '' at ,. off. .... enollilt lei• eMo.,.tn .... e•H •••• 2,• OO&ft\. • •t .,.,., of lane ...... "noalt.' 10)1 11\.ShOLM y le<�otn Ia I> o• I O'J9 s .....- ac. . •�'"ate tn. I,,. ( ,, Oytae) ...,. a.nc..a1� . o.-a .,._I• oo do •�tfter '' leiD . .. or.o-19 •••• ••LfihcA..He,8 tl••rwo at.ck ..,. •n o s •• oula •' y, SIC ano ratvrn I ell> ••t ...,. aftol te do I e•v ...... �.. 0118 ...... : . ltQU tor••t ,,. add,.... ICIO o'C I del ..� .: ao.C

·� eow o'ft4ry '" A \o 2 n•• otga�• '" 0 ,,,. . . wve val..,. GREG'llRSE . .... ei>OCII �t lo f'l)'bbl• to ,... ..ve reewlt ln b ••• .,b 13 Jan 1985 ...... t•,a• ifpl use /dl/defs/os9defs . .,. . use ..,. . MOve nt nyb•l• to lo­ /dl/defs/�fs .,....,, .,..,.. .. k.. p o�ly lo nyobae endc a

�- tr:c • AODII • 8 t« •• org begin data area tr:c • 1conoot rt1b 32 tC'f: • • •• feb 61CR, Sti.F sukoot r•o 2N LAI\ol.rw """ ._._OL.,. •------� of Mo-e� •f"'e -- · ·---- C:atend equ • I helMSg fcc •this is ok•,teA,seo,•this should not orint • II()RS£ softCODE feb teA,sen 18871 Ros.land Bite Lhelltsg equ �elng Ru:heond 8. C. Can. stda.sg fcc "options on stdin are stlndard•,MA,MO V7A 2q1 lstlla.sg equ �tdcesg clra.sg feb $8A,SID fcc "oohons on stdin are clear•' teA,seo Lclra.sg equ t-clra.sg ro. been Re OS9 lUi tn setti1111 up standard paths ;ltllllsg fcc •Stc!err has ooened to /tere•,tM, teD fcc •stdin options sttll clNr•,tM,seD You don't include nearly enough uterial on OS9 1n your Lpthng equ t-pthng e, 8, e, 8, e, e, 8, e, e, e, e, a, e, e, e,' ugaw�e, so '!ere 1s rt contribution to helo you out. conopt fdb stopth fcs •tTERM• The follo.ing pr'Ogru shows that the shndard OS9 paths • STDIN and STDE�R are not tndeoenaent, and changing options xeqstr equ • exec entry point lHX tconopt,u save on one will affect the other in the Sllll! ..ay. This is the options M selc!o:� C:l'Sireable. lda on stdin ldo ISS.opt so they can be restored The progra• tncludl'S a text strtng "heh•sg• ..tlich contains os9 iSgetstt later an eebedded carriage return. If this string is printed + print first tl'St ��nsaoe Wlt� the OS9 rtwritln directive, the text after the CR lda � stderr oath Sllould not be output IF Tl£ Lit£ EDITit,G OPTIOO � n£ leax stOO.Sg,pcr :JAT\1 ARE SET. ldy lllstdOISg os9 ItwRITE 11\en the orogru 1s run the follo.ing outout results leax helng,pcr !The line nu.bers are not printed): ldy llnelng 1. ootions on stdin are standard os9 ISWritl� should end at 1st CR and dol'S ro. ..e 2. thts is ok + clear options on tne STDIN path 3. t as ..e will see this affects the STDERR oath also 4. options on stdin lr! clear leax conopt,pcr all zero oot1ons S. tllis 1s olt :da t8 on stdin 6. this should not orint ld!l tSS.opt 1. stderr has been ooned to /TERM os9 :sSetstt 8. stdin ootions are still clNr leax cll"'e5g1per tell about clearing opt1ons 9. thlS IS ok ldy llclra.sg 18. lda 12 os9 IMITE as This pr'OVft that cleartng the line editing option on stdin leax �lng, per print Sllll! ng before ldy llhelng 1lso cleared it on stdt'I'T. llhy don this happen? The last lda ll2 on stderr test provides a clue. If stderr is opened explicitely then os9 the problee don not occur. Thus I ded� that ��hen the Itwritln should end at first CR but donn't t ro. try •tth stderr opened exolic1tly 9£\.l sets up the standard paths, it IIUSt uw the ISDUP lda 12 c1ll not the IS()pen. As a result 111 three paths share tn.

54 '68' MicroJoumal os9 ISClose le•• STDpth,pcr ..-tC.' � "'OO.C:I I � !d• IWRITE. 3!101 to -·- ..... Avtt·� T.-.•1 1171' os9 !$open should UR �th 12 !Icc tst18 os9 F'SPen- Press tst18 le•x pt�g,pcr ldy tlpthllsg os9 ISWr1te su �-un leu heh&g, per Information ioy tlhelfi!l os9 !Wr1tln should m1 with hrst cr •nd does

• rewt the ophons on stdin Motorola MJcropro�eeeor ld• te ldb tss.opt leax 1conopt,u IIIlA �-troller• to oupport tbe 1168000 IIPO ,_lly•·l.he IIC611440, os9 !Ssetstt os9 F'Stmt ADd arcbltoctural capabtllttoo of tbo 1168000 KPU ,.. 117 by provldloa eiiOd

• •.._ block• ._. • IOdsiz eou • ---• to lara• of 4eta wttbio ca. • •J•l... lD

Tile MC68440, HC68442, ond IIC684SO oro directly c.,....,tlble

with tho H61000 buo architecture and provide full oupport lor

l!..illl.l:..atta:illJ� all buo ucoptloo coeditl0<1o doflftOd for tho H68000 Faa!ly. Thou

--· dnlcu •r• aloo c.,....,tlblo with tho VK!buo and va.lAIIuo Wh11 ,.,�,e t ..,- ,.. ,., ....VQI , .. tJ11liM ,�,. t... do.... t if' WI i4P MI ,. ,,..,. , , .._...... , .._. , ...... ,.. ..., 1\.D _.... "" _..,..,.,. e1 a.oe n • Ul. ,..., .,....._,, .....,. �-uur .,.u.,...... u ...... ,," .,... ,..,..,.,...... •tfhrflftt .-.ot""' .....,.,.,. nh ,,_.,.,.. .,.,. ...,. ,....,.,.,.,u, ''"''"· ,.. -�'*'' ,.,.,,.._ .,.. • r.u... , _tt.. ,,.. ...,.,. IJ'nt- Tho IIC"440 II t,..•chooaol hl&h·...,rfo.,...,co � devlco

IQ.ltl101 Ill (1'\..lJ) •••••••••••••••• t.I'Cit

lcaOJTOtl Ill (01.) ••••••••••••••••• 1.1'·C. ntoedod verolon of tho IIC611440, provtdtaa • f111l 12 btu of Uaoor

ltlot �·.. c.httt ,_,. �eMr\AI wr�tef\1 .tU M t•• ••• t.t. At.OO •tM oddroutaa ••• on oddltload fu.,ctloo codo output. Tho IIC684SO eP�h .,... 14\.GD fw 4ttll .,... • .,...,.,,.

c.,.patlblo vlth tho HC68440.

Th• proar•.-.bl• tunetloo code output• or th••• cl•vi.ce• can •u ..... �el• .,.,, .,,. '"" •• ,.,. •• .. ""''' ..,., .... ,. , .....,..,. '"'''.. ' tf'l tftUrNt• .-el ..lUI. ,._,,.. fet t...... t.. .., ,. .. C.ft ff'etf'l ,.. ,.. ,.,...,. be uud to opectfy "UOOO c-potlblo buo cycle typ. lnfor.. tlon lffMtt.- .,.,..,..,.,. '• tMt � .._,.,.. e��•r•• .tu • •• ftU..,u

&l1,00 on each OKA bua cycle. Theta DKA devtcea cAn chua dtrectly

.,..,. ...u t a.. J. ..,.,.. '"' ..,...,.., fH �, wt """"M ., t r I"-' lnterfACI vtth ae.-ory un•&•Mnt devlc:ea such •• the MC614,l. PVt .,. tcettu.. cu. s.n.oo

.. ,.00 The addhLoftal functlon code output of tht '1C6S442 cao be used

to dlotii\JUioh botv.. n OIIA •nd CPU b"o cyclu.

Tllo 1tCU440, 11C68442, ond HC614SO •l lov four dlthroftt ..,doe tw.,...t ...... ,...... , • .,.,

-· '··' of llfterAttoo. T'h• •• -·· i.nclu4e the

.-.u ...... •...... 1.11 ••t•nallJ•aeaerate4 CJCle eteal an4 bur•t eo4ea, •• \olllell .aa che

.._ ...... l.JO tncemally·aenerate4 uat... rata an4 1 t•ltH rat• •uto re4ueet .._ ...... 10

• -.c� •c ••••••••••• t"t.lll (LU.l) -... lo tho llAA -·· tho .oao"nt of tho totol .. olloblo

ovt ...... u buo budw14th "tlllaod by a � choftnol II proar--.blo. Tlllo

SC'I'UlfOI Ill •••••••• 1.D featvr• allOV'I th• OMA't '*• utlllaattoo co -.. tallore4 co the

avat.labl• t.ua bandvt4th te a alva" ayac ... Th••• OftA devlcea to ..hiM tN � ..U.f' .... "-tt e C...,).

l. .,_,,... • c-...... -., �-' .,. ''"'' ur• ..,,...,IMtta�. '"'"'" • vorlety of ••,llcltly or lapllcttly o44rouod p.rlphoulo

,.. �M .._." W MAt t\,llf tii!NtM f.,- ... ft��U .,.,.. ef tllle .,.e,ct n "' vlth flulblo handoho�toa CO

·sa· Micro Journal 55 I•Ut • t o • buo ln conjunction vlth tho HC61008 KPU. Tbuo dnlcu Product a Crot.lp hae expanded 1t1 hi&h perfora.�nct featly of

v b a U.S vlll bo a ol blo ln 8, 10, nd Hila vorolou yloldlna uxl- Hlcroprocuoor Unlu (MPUs) and porlphonh with tho Introduction

poriphorol·to•MIIOry rouo of 4, S, and 6.ZS l'loaobyteo/oocond, of tho HC6SSSI P'lootlna Point Coprocuoor ( FPCP). Tbe "C688SI

roopoctlvely. h • hlah podonunce, aln&le chip IICMOS Yl.SI tloouna·polnt

Tbo HC684SO lt o four·chanul, l6· blt IIIlA controller that c.oproceaaor. The rPCP 11 priurtly Intended co operate at a

eupportt a 24-btr: llaear addr111 •p•ce. lt l1 a pin and r•atetet' clooely·couplod coprocuoor vlth tho full 32· blt HC68020 HPU,

co•potlblo ouporoot of tho MC61440. In addition to tvo 110ro IIIlA

chonnolo, tho "C684SO oupporro aroator floxlblllty In tho IIIlA beood on any other 1461000 1.. lly HPU.

u·antfer operation•. tc alto tully supportI array chained and IIlah porfonunco, broad beood functionality, and flulblllty linked array chained OKA tran1fer operac:lo1u. facllltato "'e In a wldo ronco o( appllcatlono. Tbo MC61181 Tbe :1C61450 aho aupporr:a peripheral aenerar:ed channel teart ca-n be ueed tn perforunce of &Taphtc: vortt atatlona, Co.puter p\lloo and o cyclo ot .. l with hold 110do. Tbo cyclo otoal vlth Autoutod Doalan (CADl, Olld C-putor Afdod Enalnoorln& (CAl!) hold feature can be uaed co atntalae the bua arbltration overhead ayac.... Rtah perfo�nce vtch reduced 1l1a and cote. vtll enhance ta the ll•lted rate auto requetc tranafer 110dt. Thlt part ca.n

ace-do to by to, vord, odd ol!a11od "ord, and lona vord oporond nua.rlcal control appltc:atto·na. Tbo HC61881 placu tho po-r tronoforo. Tbo "CU4SO vUI be avollablo ln 8 and 10 IIIIa vorolono of a aclenciflc coaputer v·tcb co-plea funectona on a atnale chip, provldlna 4 and S "byu/ooc -·�- tronofor ratu, roopoctlvoly. recfuctna the alae and. coat of deaktop ayat•••· Tbo "C68440, I'IC6844%, and HC684SO are ovollab to In a 68·1oad Tbo HC6U81 porfonu flo•tlna point uth calculatlono In pin arld array pock.oao. Tbo MC61442 lo prlcod $S9.69 lD tho PCA. acrlcc accordance vtch the .ott r·eceat revtalon of the lnatltute Tbo MC61440 lo aloo avallablo ln a 64·pln DlP, and lo prlcod of lloctrlcol oDd lloctronlc lnalnooro (IU1t) rloatlna Point Ut.6t for pl utlc . Tbo HC684SO lo aloo avalloblo In a 64·pln Speclflcatlon (P7S4 Draft 10.0). Thil c.onforaa.nc• au.aranteal cor.. lc DIP and lo pried S78.4). Al l thooo prlcoo oro for 100 the aupport of •11 required opef'ationa, data cypea, roul"!dlna ploco quantltlot. Sa•pllna h now, wllo production quantltlu .odu, ond roundlna proclolono. Tbo "C6U81 lo the only floatlna vlll bo avallablo IQ IS.

MOTOROLA ANNOUNCI!.S Ruder Contact:&ett) Pr.nc� Tbo HC68881 calculatoo butc -th functlono (tdd, oubtract, A "K lilT DYNAMIC RAM. }12 ')23�700 •ultlp ly, and dlvldo) twtce ao f oot u any other oln&lo·chlp TH£ MCAMJ"IIPU

uth procaaaor . to addltton to the operation• daflnad by l!tl, Motoro� \4emory Products Oovlslon tho MC68Ul porforu a full oeloetlon of tronoeondontal end &Mounces availability of the MCM&I6'&PI}, a 6�K &it HMOS Dynamic non•tran.acandental functlona. Tbaaa ope:ratlona include, but Random Access �lemory (RAM). Thos yleld-enharoced high·spffd versaon ol are not ll•lted to, root valu.aa, trlaono.trlc tuncctona, the popular MCM666,A, features a sm.ller die size and �ser redundancy. exponent tala, hyperbolic•, and toaarttlw!ca. All fu.ncctona are n.e MCMII160&PI} inco.-porate s a muimum I SO nose<:onds .... (ns) accen calculatod to ao blto o( proclol"" ln hordwaro. Tbo dulp of time "'ith low mulmum power dissipations of 102., milliwatu (m'fl) in the tho P'PCP oll•lDa tu lnoftlc!onc!oo auoclatod wlth oxocutlna active mode and 22mW standby, optlmiztna Its advan�e on hi&h �sny aofcvare ''arwalopea.. vla a hardvara i•pte.. n tat1on. maonframe memory systems. ln 32·blt MC61020 buod oyoteao, tho "'U •nd tho PPCP 'l'lth a 12S

controlled output, operates from a slnate • ' volt (V) (! 101ft) power supply. tho MC68881. Tblo flnlble lnurconlloct ocho- It a c�blnotlon &y multo.plexlna row-and

S, .•� uch: SS.17 each lor U • 21t9; and S,.IS each lor UO • 299. Contaet •• a part of the uin proar•• inetructlon etre.aa. The �C68881

) »wr dlstrabutor or local \4otorola sales office lor fu�h..- informacion. can opef'ate concurrently vith the ..in proceeaor, thereby freetna

tho CPU (Control Procoulna UDlt) for othor uoko. Tbe HC68881

viii oupport future a• norat lono or "61000 foally procoooon by

TD u.l.TIO. FUU.PUIICT Pl.O.UliC POUlT DltVICII AYAli.ULZ

56 '68' MicroJoumal --- Float in& point funct tona can be added .11 aeDOrv aap�d

por!phorala to othor HUOOO I{)'Uo lncludtna tho Reduced lua �C68008, ,...,_ tho 16/32-bll !!CUOOO, tho VIrtual Ho110ry 11C68010, and tholr PRODU CT ANNOUNCEKltn Expanded VIrtual HC68012. Thlo lo acc-pllohod by provldln&

inatructton eequences that e.mulate the protocol of the Coproceaaor Wellvritten Enterpriaea ia pleaaed to announce the avatlobllity of our dlok ouboytt<'• for 6809 cocop utera uuna Inter-face. the SS-50 bua. The oub tyote• lncludet a top-quality 17 HI ( !onutted) bard diok driv&, bard ditk controller, Interface Tho HCU881 ar chltocturo lncludeo a 67-blt Arltl\aetlc llnlt, card (requirea SS-30 tlot), all cableo, and a •inifloppy diakatte o! source •••••bler lanauaae inter!ace proaraa• for larrol Shl hor. and ol& ht 80-blt aononl purpon roalatna. your choico of PLU9•, 059/1•, or 059/11". The dnve and controller ••y be •ounted tntide a COIIpu ter chaa1i1 (la.ke • Uatna the 2 •leftan•) or in a aeperato cabinet with power tupply (like the !L!J(TIIA IU)•)\1 !roa MA Chicaao !or $199). an effective tranalator count or approxtaately 1�),000 o·n a c hi p The introductory price io Sl8)0 (chock or aoney orderl. For thou viollina to oupply tl\eir OIITI $14 10 or STS06 hard diok of 270 x 330 •llllMtora, and lov povu dloolpotlon of lou than drive. th• above deacribtd aubayate• ainut tht 27 H_l drive io available !or $600. The SS-30 interhu card and 1.0 Wett uxt.ue. Standard clock fr.quenclea a re 12. S -aebert& ooftvare ore available for $200. Oklahosa ruldon7 lOb. It lo packaaod In a 68-lud Pin Crld Arny and vcraion of operatina 1y1tem vhen orderln,. Call (40)) lo4-o!)6 for aore detailed ln!o nootio.,, vlth a I Inch oquaro footprint.

to A Sa•pllo..a lpha and leta aite cuttoeera to enaure co.plete -en. •-·W• ,...,..,.. -... n..., JU•t en .,..... Oft w• ,...... ,...... u.on .., • ...u.t ...• n...t ,.,_..... 4ty f..,...-y ...... o4 0.� w..noa-. ... .,....,.... .,. ., DUI"'CI\.a.. _.. "' '- -.o eao.r· d to o�ratlonal tnteartty beaan l.n O.ceaber, 1984, and vill continue .,.. a- f\IA of • a .. ao.aa .., ..th u. � ..,.. • Y• L - I JU•t tlrOwq"t � �tort � of ...... _,. , "'-CP\1 � n.. OC-t ...... ,.,,.. convou .,...... , cn. -..cs froa Ja- Aw.ba.t'IO o4 llrooitlvn. -. 'f0f"1c. n. throuah Pobi"Wiry, 1985. Conorol ooaplu ot tho MC688SI at l2.SIUI& ..,-�c � IH• ' �'� , ..,. •• • ..00 •Y • , .._ .rv cn .., . , -.,ah fy tt •• Ol'le o• u.. ol.di�Ht t IIIOf" •l"'' •lcroeo.put._....._ Of c:� . tt ""-- .....,.. """"" .,... �t to u.• pr••�t � � _..oree ..,. ...., A. l.IW".. ta.K aiWII or- • __,...... vHI bo aYa!lablo bo&lnnlna In March, 1985, llaltod quality oo.,...... c ·� ...... ,. � DM"all•l pOr'\_... ..,.� ttw *"oP .,. """ pnc...., r·• IOOir"'' �.,. t-o ,....,.,� u. fta.W �,._..•tn • � pro

1.-a.t.SJC ·nra\.on t.l evpportt ra.ndo. ftlu u&\ftl •nt1u.\ an11r• and rn·orct 1/0, la &64\t\oa t.o •.qv•atld f\ lu, PIJn' U:SUC b.aa dto MtA fillrwp un Mtuy Wpt oud... l•L\SZC tupport• al& d.au lJ1"1 laclt.MS1.Q& atd.q.�, floath& po1Dt 'Hrwvt t. INS -NT•• ....S f� dau oC lt.Lte&tr• (1. U, n. ud U blts). l·IA.SIC t.a.a.a IN•a •)fnopUq 41lJ· Rllpl UIICie &all• �t4 1• tbe a-na or !l.aa4llJ\& ...pnu\o1u vltb apace• allov.c aad auc.oaattc (UJ) - ....,Hchl C..u t"n-- eoo.. tllo:a_a. S•vn.t oev ruaet\ou, locp •tn.ctYTu, e.tock.td C71•1JM U•WI-Dnur, &ACI o.ut t.... t \D4utLnc M•• beta Ad4td to aake vro&rua\nc tult-r. u ot -.c 'l"M lClD-J()• alpDt:n.t u.a1tlu ual&ni.AC attU''' to ttlt ol4dlt •SttlfOIDto n a!!•w 1 rot P&C tnm;a«U$ fD Rln1Aa nr\nl• tUCU!O!'• ••'-• tM K'D:oa t thc po\tlt MJ'\�\ua :en.&tb Mrvu-ft ) &Dd tt 4\&l:a. ttM 4Ue/tlat var-h�1u T'EAA, !"'C)),"nf, tlAT, MOI.Il.�IIUTt.&.D4 Ofna fMJ)(=IlILI pptUI O.wJ tpOL IQl Wptg!J StCOtiD Nt\li"'O tbdr approprhtt •aluu llfhU. 1.1:. KmlA tM " ' ._,.. 5900 C..lt-a.nd:ra SattA AA. ''"'' ...O uvvtr at.tftliard ftlt�ru. lllttlt"'fOI'tl'l a.uctlJ Mtt"'" tM lt.uoo. T1f l7l&l 1·0f"U.•;IJ llWtrG ct1t1Kt 1-aoo-JJI-UOO 4ett'rtbM tn lilaUtr1ftC1� (lra.dt, ltu). •tell h

toct- f• Ulo pacU,O. "'cl.... t VUIDIUSI YTI'AWAY 1.111 �TUD 1-UQ.Lf.TOA!ts ,._,. JOIOI sn.m � VALSIWC uno•, ltDFO&IISNIIU: -.tor'-rU ""'"" 1.0 oho h eu\hblt fO< Ul4 IM I'C, u.. •tt 11 _,OLl, IIQ.&D PCI.IJIII unm all '"' ...,.tn, c•/Jil. Md tM c-ctore ... SOftwrt c.u tilt .... w1u Mt ,,.u. .., -.. . (Ul) •0.016 (OUl) OZ,.l) ,. • a11 U.t ot.Mn. IIIUttrFof"U ,..tath for llU.oo. S..trtl oot•oe•l UCIID CCI!WI'ta C:.-.11 an. SOMVAU 1a ... kbw&n. teJ.a )4 l'or'pbyT-•tT&It U ut.lflttOf'ls .., tutlUle. 11-)Sll lrnl D-UO) kluhoiMia V.tt "'�' w ..t Gemu,. OUU·ltt (0 U OJ) '7 U tticf'OMDttOI!II ...... ,...OYiftfltO ,ortfl IOft.re MG ttN1CH 11ftU lMJ.

,., PacUt.c• P.ulS IW>IO o..rcTIOIIlCS uau wro llt..-ttoo h toutaf at 12071 vn.-tre lhf. -· �.. ""'"1", tA toOU, r.o. aax 110 (ZU(UI�. � ��··-- 2010 "'"'"�" ...... UU) ,._till ....______Q1l).,.____ _

·sa· Micro Joumal 57 Give Your 0 ·9 System The Power It Deserves! Engln .. rlng & Architectural Systems tntem•tlon•l I EASII Thull Management Planning Software presents The 71111Ji11i�POWER SERIES

f(R DKDIATE RE1£ASE- Ed.it.or: Contac:t Or. t.. Louis Chi at 415/S6l-933S for GOr"e ln!onation. !'I��!� I ��" e TMP FREEFORMIFILER �� ,.,. !��Premier Text/FilingProgram/ UNIQUE CAP ABILITIES: "" THE 08JECT1VE: ra AOre For tho.e,.ho wantiO ndomly onforma CASE CN: s a bl.mcnth.l y newsletter oo the usage an:l I.Rierstm-dirc l'\'\' f'REEPO!lht 10 l hon, bu1 n-tn ot qutekly,lhl' FfLER UJdemgned bnclge of �er appllcatlOI'\8 �t enginrers, contntcton, word --o and ll ma me clvU tbt> gap bl>t,.'t't'n p ng tmd1 onal databasr nage nt how to an:l arehlt«ta. CASEfeatures a£ lnfornative art cles on PI'Of.lT'IIm& i "" THE KF;YWORD SYSTEM: Aa ed b.Jy aoft\lllre an:l hardware, practlcal tlp8 on effectively using you t'nU!r or ot )'Our U!Xt, 'Ou can "KEYWORD" "1\EYPHRASt:' "CA� RD" �n, an:l valuable lnfornatlon on current t:rE'nds ln c:al1lUter IM"le<:t any "'Ordu a or Each M u KEYWORDS. or tecl-nolog.y. CASE CN: also �Lzes the udllzatloo of the can conuain mony 117 and up 10mne pagee t.ext 11 x 6" rHlri on& "FILE st.1te-of-�rt ml�r aoftl.ore such spreads�ts and Aimilnr 10 3" card, wolh no field eto Each as DRAWER" 10 32,767 database mrma� � Cor tecl'nical applicatlons. Prtee: t�•n conta1n u pageal .- THE SEARCH: p the CHrd Tille. KEYWORD. com· $30.00/yur. f1U:'l: �le coples are available for lntuested Stan:h for oro blntfllon of both. Plu' "WII..D CARD SEARCHES" lltl\'tl neaden. Sc!rd l�rl.cs oo � letterheads to: FASl lnc:., toma! "" THE REAUI:r$: U81 l 1NI of cards ri . 2030 U\lon Street, Sulte l80, San CA 94123. the t t found, p nt or write tho f'nlnc:lsco, wrdt 10 tl d11k file for tltKl a "''Ord roce8110 41S/S6l-933S. 1985. lSSN: 074l-l732. taler pr1ndng or with p r GIVE YOU MORE ABILITIES: * BUSINESS: i UI. office Appom mcn phon e and llddn.>Minde xl'll.in· n ventory, t1Crv1co cal li, vendor llat.a, o d Mice orders * WRITERS AND RESEARCHERS: Fo t'I'OIII· F\IBUCATIeote mftth l n fielcb. GIVE YOU MORE ABILITIES: • POWER MANAGER CUSTOMIZED LEri'ERS. can CTeate IN· Available VOICES. COWMNAR REPORTS. OR LABEL PORMATS for Assembled o mo hng' • POWER MA AGER and Tested Our UIC'rt put 10 v.'Ork for them to do . t \'O i cu•10mer mathnga poat due noucea n ocng M1t'tl anlll)·soa 1tururnnce and m oy on,·«miOrU.'I credot, e pl ee record&. client profile rcporta. tmc t«k portfohOI\ and much more. compact .,. THE l �/tf L. INE: POWER MANAGER IS l The the lx'lll on ite clolllll 128K, 1366. (0S.9 y) Rexible rtequll't'a Onl 6809 The TMP POWER PLANNER ••• Speed Powerl Unequalled In Hnd 1'0Wf:n PLANNER extm computer * The ie on ele<:tronic 18J)I't'odt!hl'r of n aut.omautt�l1y updat ng one ap adt!heet with RS232 111111 POtts w•th aollware P•OO•�mmabte baud rates. t6 btl onother! countenmer tne CPVbOard all by otaelt or plugyo ur own cuslombolrd or • Run Other featul'l.'a onclude "Snop.Shot" pnnu ng. full 13-rlng and l�ng number copoe� each label a c and Cl'l.'&t Wut• fo• tre• brochure \' roobl pouh 8 lonl'IICreen for Stroa1 Numbl>rs.Jn,-entory, or and 11 S 1pp ng Lobel 175, comploto P[>I (604)255-� I' 5 pm PST) • ORDERING INFORMATION: TMP SOFTWARE r'\t'\ � 67211 fj 9 2431 E. Dougl as • Wichita, Kansas • 'I' T�L<><71z<):' • OR CALL TOLL-FREE: 1-800-255-1382 Ext.47 We occeet VISA, MC, AMEX, money orders ond checks. 2261 11th Ave. Vancouver, VSN NOTf: rh � pilrrnt mmJIIIII) afTMI'S

58 ·sa· Micro Journal Classified Advertising TILITYPI llodel 43 Plli.TIIl - with serial (RS232) interface, and full ASCII keyboard. SSB 2HHz 6809 4Meg Hard, DSDD floppy 96K, L�l •IV - New coat $1295.00-0NLY $759.00 OS-9, Introl-C, 8ASIC09, much more. Beat ready to run. offer. Also DSDD drive, 16K, SS-50 Chasis, Call Tom - Bob, CPI (615) 842-4600 SWTPC boards, Terminals, MX-80. Robert **'* (414)755-6982 For Sale: Motorola 128K Memory Boards, **'* removed from SWPTC S/09 $795.00, SWPTC SS 50 6809 ayatem, includes F&D BMBl, Data 8212 Terminals Demoatrators $795.00, Sys tema 6809 & 64K DRAM cards, F&D floopy Haze lwood Dynamic 64K Memory Boards disk interface, 2 aerial I/0 cards, and two $395.00 Call ask for Tom (615) 842-4600 40 track disk drives. All hardware has **'* complete doc. Runs FLEX9 OS. Also includes Wanted to Buy: Used 6800 & 6809 FLEX Screditor III, Spreadsheet program and software. Commercial and public domain. lots of utilities. Jim (201) 299-9499 or Send de scription and asking price to: John write POB 497C, Covent Station, N.J. Current, P.O. Box 273 Honolulu, HI 96859 07961. Any reasonable accepted. **'* Se lling GIMIX 6809 computer with clock, DMA disk controller, 56K RAH. FLEX-9, OS-9 software. Only $1295. OS·9N SOFTWARE John Pomeroy (216) 372-4457. **'*

SDISK-Standard disk driver module allows 2 Tandon SS/SD or DD drives-15 hrs total the use of 35, 40, or 80 track double sided time, currently in use. Larry Hughes, drives with COCO OS-9 plus you can Prestona Burg, Ky 41653 (606)886-6049 read/write/format the OS-9 formats used by other OS-9 systems. $29.95 or not being able to Megabyte design. fully utilize the advontages of hfgh level languoge compilers becomes too expensive. BOLD prices are CoCo OS-9 fonnat disk, other The following ca.PILERS are reviewed Initially, formats (In parenthesis) specifyfonnat and 05-9 more will be reviewed, comp a red and l . ordersprepaid or COO,VISA and Master­ benchmorked as theybecome ovallabfe to the evel All outhor: Card accepted. Add $1.50S&H on prepaid, COD actual charges added. PASCAL "C" GSPL WHIMISCAI.. PL/9 Initial Subscription - $39.95 D.P. Johnson, 7855 S.W. Cedarcrest Sl Portland, OR 97223 (503) 244-3152 Updates for I yeor - S14.50 (For best service call between9-11 AM PacificTime.) S.E. �DIA- CPI POB ()$.0Itt lr.clemet1< ol Mlerow.,e endMol orollInc. 5900 Cossandro Smith, 794 Hfxso� TN 37343 MS.OOSIa a 1111demlt1< of Mleroaofl, Inc. 615 o4 2-4601

'68' Micro Journal 59 HARD DISK COMPUTER SYSTEM FEATURES OS-9 AND STAR-DOS

Tile PT-e9 computer line 11 expanding! Tile newest nddltton features

• 5M by1e 5'•" Wlncllester Onve • I 40 track OS/00 dnve (For 80TR add S50) • Parallel Pnnter Interlace& Cable • 2 RS232 Seroal Ports • 6809E 1 MHZ Procesaor • Sw1tclleng Power Supply • Select OS-9 or STAR·OOS at no extra cost • Call tor other c:onhgurauons

-PT69XT $199995 wltll 10 MEG Wlnc:llester Option • $200

PT69PC 2 40TR drives, no Wlnclloater or Printer Interlace. choice of OS·9 or STAR·OOS $129500

PERIPHERAL TECHNOLOGY "Supplying Floppy Disk Controllers Since 1978" 3760 Lower Roswell Road Marietta, Georgia 30067 404/973-0042 VISA/MASTERCARD/COD

Model EP-28-79 EPROM Programmer

256K, 1 MEG MEMORY SYSTEM PICIC&.A.tl$ U4-4A, UU&A, tUM ....,.. h.lty .,, "'· ••• 1&0 HC-41 512K, n"· uua •• ,,...tc•Ut )C), ·• 100 •�t.-4•.

No• CC.pMibte •Mh t)MA C'Of'ltrott.ra. Runt •• up 10 2Mrn •IU.O.t cerwratlq \1RDY ot hu-ertupla.. Uu H o,tkNMt Oft boer4 OAT ror u.ae •hh CPU r:erd• OU••• 4..tc•• a-.p,.n••l ••- • DJ\T, 1261., 2)6�. $121. or IM bflo "' " c:.rd. fkld •PCr-16. llOA, !110, HC:U, llJ), HCU, HJJA, JIH, II(IIUa•, l1UA, Ol>

IP•ll•lt SUt.OO, Sottwate SJO, 1/0 l•hrhc• S).. ltartiYue vprud• to• fp.. J.t.•l• SU. ,,,...... , r"•l•• ,rlc.•41 $17 le $)). COMPUTER EXCELLENCE INC. Optimal Technology, Inc. P.O. BOX 8442 Phone (804)973-5482 CORAL SPRINGS, FL 33065 Blue Wood 127 22936 Earlysville. VA (305 752-83

60 '68' Micro Journal c for the 6809 WASNEVER BETTER!

INTROL-C/6809,Version 1.5

lntrol's highly acclaimed 6809 C compilers and cross-compilers are now more powerful than ever! We've incorporated a totally new 6809 Relocating Assembler, Linker and Loader. lnitializer support has been added, leaving only bitfield-type structure members and doubles lacking from a 100% full K&R implementation. The Runtime library has been expanded and the Library Manager is even more versatile and convenient to use. Best of all, compiled code is just as compact and fast-executing as ever - and even a bit more so! A compatible macro assembler, as well as source for the full Runtime Library, are available as extra-cost options.

Resident compilers are available under Uniflex, Flex and 059. Cross-compilers are available for PDP- 11/UNIX and IBM PC/PC DOS hosts. Trademarks· lntroi-C. lntrol Corporation Flex and Uniflex. Technical Systems Consultants OS9, Microware Systems CORPORATION POP-11. Digital Equipment Corp. UNIX. Bell Laboratories 647 W. St. VirKinia IBM PC. International Business Machines Mi/UJ(IUh{!(', WI 5.1204 (4 /it) 276-29:J7 For further information, please call or write.

'68' Micro Journal 61 THE 6809 "UNIBOARD"'..

SINGLE BOARD COMPUTER KIT PERFECT FOR COLLEGES, OEM'S, INDUSTRIAL AND SCIENTIFIC USES! 64K RAMI DOUBLE DENSITY FLOPPY DISK CONTROLLER!

BLANK PC BOARD $249°0 COMPLETE KIT! sgggs FULLY SOCKETED. WITH PAL'S, AND TWO EPROMS.

FOR 5-1/4 OR 8 INCH SOURCE DISKETTE PRICE ADD $10. CUT!!

THE COMPACTA UNIBOARD'•: Through special arrangement with COMPACTA INC., we are proud to have been selected the exclusive U.S. Mfg. of their new 6809 UNIBOARD'• COMPUTER KIT. Many software professionals feel that the 6809 features probably the most powerful Instruction set available today on ANY 8 bit micro. Now, at last, all of that Immense computing power Is available at a truly unbelievably low price.

FEATURES:

* 64K RAM using 4116 RAMS.

* 6809E Motorola CPU. YOUR CHOICE OF POPULAR DISK OPERATING SYSTEMS: * Double Density Floppy Disk Controller for either 5-1/4 or 8 Inch drives. Uses WD1793. FLEX'• from TSC •tt OS9'• from Mlcroware $199 * On board 80 x 24 video for a low cost console. Specify 5-1/4 or 8 Inch Uses 2716 Char. Gen. Programmable Formats. Uses 6845 CRT Controller.

* ASCII keyboard parallel Input Interface. (6522)

* Serial I/O (6551) tor RS232C or 20 MA loop.

* Centronics compatible parallel printer Interface. PC BOARD IS (6522) DOUBLE SIDED, PLATED THRU

* Buss expansion lnterfac.e with DMA channel. SOLDER MASKED, 11 x 11·1/21N. (6844)

* Dual timer for real time clock application.

* Powerful on board system monitor (2732). Features commands such as Go To, Alter, Fill, Move, Display, or Test Memory. Also Read and Write Sectors. Boot Normal, Unknown, and General Flex••.

Digital Research Computers TEAMS: Shtpmenta wtll be made approximately 3 to 6 weeks after we (OF TEXAS! receive your ordor VISA. MC. cash accepted Add $4.00 shtppmg. USA AND CANADA ONLV P.O. BOX 461515 • GARLAND, TEXAS 75046 • (214) 225-2309

62 '68' Micro Joumal BLANK PC BOARD SUPPORT ICa +CAPS - $18.00 WITH DOCUMENTATION $45 FULL SOCKET SET - $15.00 ASSEMBLED AND TESTED ADD $50 FEATURES: * Uses new 2K x 8 (TMM 2016 or HM 6116) RAMs. 56K * Fully supports Extended Addressing. 64K * 64K draws only approximately 500 MA. * 200 NS RAMs are standard. (TOSHIBA makes TMM 2016s as fast as 100 NS. FOR YOUR HIGH SPEED APPLICATIONS.) * Board is configured as 3-16K blocks and 8-2K blocks (within any 64K block) for maximum flexibility. * 2716 EPROMs may be installed anywhere on Board. * Top 16K may be disabled in 2K blocks to avoid any 1/0 conflicts. * One Board supports both RAM and EPROM. .----:-c.,...Lo�s:-:E=-o,...,u..,..,T=-s:-:P=E"""c"""IA""""L---. * RAM supports 2M HZ operation at no extra charge! wE HAvE DROPPED ouR 32K ss-so sTATic RAM BOARD WHICH USED 2114 LOW POWER * Board may be partially pOpUlated in 16K incrementS. RAMS. WE WILL SELL THE REMAINING STOCK OF BLANK PCB'S WITH DATA FOR 16K STATIC RAMS? S17.50EA.THESE FORMERLYSOLDFOR$50.

The new 2K x 8. 24 PIN, stat1c RAMs are the next generat1on of high dens1ty. h1gh speed. low power, RAMs P1oneered by such compan1es as and TOSHIBA. and soon to be second sourced by most ma,or u S. manufacturers. these ultra low power parts. feature 2716 compatible pm out. Thus fully mterchangeable ROM/RAM boards are at last a reality. and you get BLINDING speed and LOW power thrown 10 for virtually nothmg

TERMS: Add $2 00 POSiage We pay balance Order unde< $15 add 75' Digital Research Computers nandhng No C 0 0 We accepl Vtsaand Masle

'68'Mlcro Journal 63 DISKETTES AND 680X SOFTWARE

SUPER SLEUTH DISASSEMBLER EACH $99-FLEX, $1 01-0S-9, $1 00-UNIFLEX tftltrettlvely gotfttrllu source on diu with labels, include• •••'· label definition, blna'Y lilt edlllne. tiC. apeclty 6800.1,2.3,5.8,9/6� version 01 Z-8018010185 veralon OS-9and UWI'l£X versions also process FLEX object lilt formats OIIJECT ONLY vatalono; EACH S50-Fl£X & OS-9, SA&-COCO OOS COI.:O DOS available In 6800,1.2,3.5.8,9/6502 vers•on onlv CROSS-ASSEMBLERS EACH $50-FLEX/UNIFLEX/OS-9, ANY 3 $100, ALL $200 spectly tor 180•. 6SO., 680•, Z-80, 8048'51, 8085. 68000 trut. modul1r. tr.. -•ttndtno croa•-•aaembter'S. written ln C 8-blt source Included only will! all erou-nsembltro jlor S200) SIMULATORS EACH $75-FLEX. $100-0S-9, $80-UNIFLEX apeclty 6800/1, (1416805, 6502, &809 OS-9. l-80 I'L£X OBJECT ONLY vtta.iona: EACH $50-COCO Fl£X & COCO 05•9 6502 TO 6809 ASSEMBLER TRANSLA TOR $75-FLEX. $85-0S-9, $80-UNIFLEX 1r1nat1ltl 6502 programs to 6801. noting tntlliCt convera•ona 6800 TO 6809 & 6809 PIC TRANS LA TORS $50-FLEX, $75-0S-9, $60-UNIFLEX Hanalat.. 61100 proerams to 6809. 6809 proeroms to PIC FULL-SCREEN FLEX AND UNIFLEX TSC XBASIC PROGRAMS FOR 6809 (wllh compltlt cursor control) DISPLAY OENEAATOR/OOCUMENTOA S50 w/sourct, S25 whhout MAILING LIST SYSTEM SIOO w/source. 150 wllhout INVENTORY WITH MAP SIOO w/sourct, SSO wilhout TAllULA RASA SPREADSHEET SIOO w/sourco, SSO without DISK AND XBASIC UTILITY PROGRAM LIBRARY $50-FLEX & UNIFLEX edit uctora, sot1 dkectory, malnttln muter utaloe. do disk sot1a, artl 8.ASIC, ... CMODEM PROGRAM $100-FLEX & OS-9 & UNIFLEX, OBJECT-ONLY EACH $50 providt5 menu-driven ltlecommunlullono ltcllllloo, with terminal modo, up/down load, MOOEM7 protocol, ttc. 5.25" SOFT-SECTORED DISKS EACH 10-PACK $13-SSSD $15-SSDD/DSDD $25-DSQD Amerlun-made, euelltl'lt Quelity. with Jetketa end hub rlngt SS-50C 256K 1.5MHZ MEMORY BOARDS BLANK $100 A&T $350 with ln11ructlon manual, aclttmallc:s, and dtlay lint: til pet1s readily available

Moat programa '" aourc.e on diP: apecJfy C-omputer. dltJt 111.1, operet1f\g aya tem. ContaCI CSC lor lull tolalo; tnd dultr lnlormallon. Computer Systems Consultants, Inc. 25% diacout\t tor multiple purc:ha••• of ,.,.,, program o" ume ord.er. 1454 latta lane, Conyers, GA 30207 For VISA and MASTER CARD, elvt accounl, oxp.date, phone. US lunda only. Add OA sails U• and 5% ohlpplne: no shipping lor dlua In 100'•· Telephone Number 404-483-1717/4570 CUNijFL£X lradtmark Technical Sy•ltm& Consul lints. OS-9 trademark Mlcrowaro.

tFORTH@l SOFTWAREFoR from TALBOT MICROSYSTEMS NEW SYSTEMS FOR THEHARDCORE 6301/6801, 6809, and 68000

·-> tFORTH SYSTEMS <·.. .. FORTH PROGRAMMING TOOLS from the 68XX&X .. .. FORTH specialists- get the best!! .. For all FLEX systems: GIMIX, SWTP. SSB, or EXORclsor Specify 5 or a inch diskette, hardware type, and 6800 or 6809. NOW AVAILABLE- A variety ol rom and disk FORTH systems to run on and/or do TARGET COMPILATION for .. tFORTH-e�Ctended fig FORTH (I disk) $tOO ($15) . with fig line editor. 6800, 630116801, 6809. 68000. 8080 Z80 (3 5" a· .. tFORTH+ -morel or 2 disks) $250 1$25) Write or call for information on a special system to Illyour require­ adds screen editor, assembler. extended data types, utllties. ment. games. and debuggngi adsi . TRS-80 COLORFORTH- available from The Micro Wor1

64 '68' Micro Journal WINDRUSH MICRO SYSTEMS

UPROM II MACE/XMACE/ASM05

,�AilS ond VUHIU: 12751, All of thtu proehltu tututt • MtMr o,.oct��tthtt tnvt..-one.rnt when &M Tt508, ll716, 11316, 121lUlnlA, Mhor 1nc1 th• tn..eler "''" tn ...o.ry t�ttter. eon. are tM O.yt of ACII6&764/6, Tl764/l764A, US64, tl'dhlt dh-. INd •net uvt operet Ions vhilt )'OY ert dtbutflft9 y�r c06t. ll71ll/l71l8A, .,., ll7136o l•lnu\, f•T•·•••, *"'toroh. • trhndly fnttt-ltt In tttvfr

Uf1lL •, tnulttMl D"09'1.. 1"9 • MACI h .t Cf'OS\ aU.,.,\H to,. tht 6100/t/l/)/1 and 1"\oiPQOfU tfl• ut9f'Ckd (ta) i-ol••tr\ted for lnUl ••"**ftiu of tht 6301. Z764_. 27tll And l72S6 Otvt ctt. lnUL\ftf'nt l)r-"Ott... lf'lll r·tdUUI • AU!OS h • crou ust'tlbhr tor tt'lt 680S. tM '"''• protr... lf'l9 tiM of • Z764 ti"'Ot 7 •tnuut to 1 •lnut• U ttConcll (under H.U) �th,h trutly IIOrOYt'd rtl I1DH.hy. D-BUG fullt Mcloud � •'-" 5' of U It rt� c.Olt ror conrwuton lOOUirtG tor • stn-elt step tunr- .,._. •tnt tn .. ltnt d1utu·tlblt,. thtl b euy to tht ftoU CCMDUUt "(6121 'JA to w. .n l� no furtber, you l\a-vt found h. thtt .,.,.. �. h tout tor fnurhc:t boflrd. thou ...u aut.Oly ,.....,119• pr-'09tN debufit"'l tntfons. � ouuptu hu ltlen 61C Hncludfnt tu 1tac._ and verttOlu) and .,, be loact.d .,.,"'".,.,' Ifill(� toft .. rt tor tUX And os• tn Mact,.r. All yow do h LOAt lT, At" lT aNI COt CIO col VOUt Otlly). (U.,.l 1 or l, Vtrs •� 1.2).

IIMif OU:C. Hlf ottttt lotiM'r twPPLled w\tl'l fl.£1, ftDOS Met 0$9. McCOSH 'C'

t .. fill •oo•••oo o .. o • nhctN eru of Ut bwfltr vhh • HU Cllltr.

Oo I'OVt •o• •• oo o o oo bloch of d.tUo c. 0'-"' •••o••ooooo , .... bwfttr In MU end ASCII. • Pr�ctt very ttffct'nt utf'lllblr h�t ..,.,.ce owtpw:t vhfl the •c• d. ,UIO • oo o ••••• o o t 1trtng of b)'Ut tn tht butftr. aow,.u optfonallf tnterletv•d u c.�u. t. llA"I"I/CHMIGI o 11'\.t c ..t.nU Of tl\9 bufhr.

t. etC ••••oo•o•o••

t. ��AA •••• ••o, 1 ttlt

i· SU.CCf oo••• ooo• • "'" I,..Of' Iyo. (return to type-t -.nY). UKLUOU ht o..,. tuetlble,.. fht ftC relo ut t"9 Uttllbl•r h 01'\\y "tQl.ih•d k.o [Hlllt oo••••o•o• t�f' IYIU• .onhor. if yow "-'t to .,.n.ratt your- own Hbrtdu. t tlfUI.N •o•••o••• to tf'l• ooeutino .,...... lo uuun o••o•o•• �,. oos utHhr COI'Ily In n..u anca os9 nrtfons>o th• pr-rprouuor-, co.pfltr, oott•htr, au..-bh,. tnd lotdef" aU '"' • fN.P-tNIN'tlr or unoer lht •cc •••twttve. •cc• aaht co-ctt\1"9 • 0'09'" fLU 41f0 05'1 VUSlOWS AVAll.Ult rltOfl GIMU. $UIIMOOS CON1AC1 US OU(Cf• to ••tcvhbh oOJ•u ., t11111Plt u tyotnv tn •cc,NruO.c •.

PL/9 IEEE-488

• rrtencllr •n1•r-eu tve ,,..wironNnt wfter• yow htwt IH:Sf&NT """ to ttle fdf1or, the COC)Htr, •ncs tflt 1rete-OtbU99tr, wtt.tch, ..,...Oil othtr .. OUIItC You tMft91, un 11"\llf' Uf'P lh• P"09' I S l liM at I t t•to lhO - 1tt\tr .. Serfal ""-" .. st,.lt or �1\ ,,.... ,., Addttu Jltn dtreu acctu to �r rLEX utHtty and rour tyn .. .onhor. - Llu�r .. '•nll•l �u - Second•,., Uornt

... s,,, .. Cofnrou.,. .. Group Tr•eotr .. Tall.. 01'\lY ••• Lhtlf\ Ottlr • )7)• 91Qt .__,., Of"gtnhtd II a lUtOri41l 0111Cth Oltnt)' Of ta•-c»ttt.

• 'ul\y dOc:�en ted vhfrl a COIJC)lttt r.-ortnt of tft.t IICI1,.08AUO trt felt Oft the fa co-o c�&C"l lA T .. • st Sl�U '"SI thr o,.Odun• ac of .-w� S 0109 utne aut�� and lfrl• Motorola �licttton "Gttti"t eboncs tN uu eus•.. coo. outpvt oer •lnuu whtl no ruft-ttae ovttl'lttctl .!!,"'1Tetn.. ,.. , .

1 lOW lt'Vtl tUeflbly ·��· drinrt tuh�l• fOf' 66001 68011 6.1Ql1 610), lbtt f$( tHuo • h1ll� COIOit •hh U•l tdhor for•tt dhl 6801 •nd 6809 ''' t41P0ll•d tn tht for• of thtii'I!Qt. A cO!IIplttt bat'-. to bac� tnt PI"''9t• ts also tUPP\teet tn tM fo,.. ot • \ httnQ. '"'"" drtwrt "ht Mtfl t•ttfllivt\y IUtf'd � tr-t GUA,IA.NlUO to vor\.

• Sif'Ole ,..]0 OO.f"CC (4, I or 16 addru.. t "'" POtU1 fullr tocltted, QOid olaUd but connectors and lUI tnttrhu ceb\t tiiHibly. • ".&tl'\.t•attut t•or.tufont.; <•>, C•), (•), C/), MCIU\v.t (\)� M9tt'on ,.. , • Etortuton tvel!Htors: t•>, co), (<), (>), ,,.,, <<•) • lh CIC)tt'atO,.s: (AfliO), (01), C(Oit/XO�U, (NOU, (SMJfT), ($VAl') • l.ottctl �raton: (.ANt), t.O•), \o(_PfXOI) PRICES • (Ontro\ IUUHftUJ Jf o. fM[_N•• flll, If ••CUlt • • CASU•• ti. S(, HClN. o(J(O, VHilt.o, llt(#[Af•• Utlfll, lt(PtAfo.rOtt£YU, UU, JIJ/14P1 ltUU.H, PEAK, GOTO. o-eUIO 16809 ILU onlyI o o o o o o o oo. o oo o oo o oo oo o o o o•o o o o oo o oo o o o I 75o00 • Oi"'" tutu to (ACU), UCCIJ 1 (ACCOl 1 CUU) 1 (((It) � ($1AC'I:)o AA(( (61()9 PLU o-nlr) o o•• ••• o o o o. •••. o o o. o •••o•. o.o o ••• o ••• I 7So00 XI

• "•c.Mnt c.odt ..,. a. Mb4PddltiS �n Utt orog.r.. v-h &Itt 'GD' tUtf'tltnt. lhb 1[((•/oQ with J£(f'"'W ctblt ttl•lllbl)' oo••o•••o•••••••••o ••••••• 12'98.00 tNbht rou to cOdt cf'ittul r«�tfMI tf\ au..Ol)' lan,utt• tnd ,..,.4 '"•• 111'�11/U wtth ont Vtrtton of taftwtr·t Cno ublt Of' tnttrftct) o. 1)9$.00 In th '"" proor.. (tt• 'IUU• tor dtuHt>. UI'IOI!-11/C u .tJovt but co.phtt vhtt ublt tM S ..}O tn·terfau • •o .U4S.OO CAlli. S' twht-n-fltt SO way ub\t vHh IOC connectors oooo•• I )S.OO • Proc.tOI.Iru ••Y be Plllt4 end .., return veritbltt. ntt ...�.. tht• 1·:10 IMT SS-lO tnltr fac.t for Ut'ttON-11 •••••••••••o•••••••oo • •••• S1S0.00 f�tlont whtclt bthtvt t1 tl\owgb t"'-r "''"' tt't tnt•O"tl l)trt of P\.19. no• IMT -.cuorolt E'XOI'bvt CfiOtchtr) tntt,.fau for ��� o•o 1191.00 UP-sn SOfhlrt ddvtrs fo.r 2nd ooerttfl'll tyltH.

• Stvtrtl fvUy dotUIIt'nttd Ltbr.ry prondun �ltt ar-• IUOPlittd: 10$UIS, Sptc1fy lUI or OS9 AIIO dh� •h•l ooooo oooooooo ooooooo I l5o00 IInO, HAJIDlO, HUIO, fl£110, ICI,ACI, lfls..J, IAJUIIIIG, et'ld U.ILGOM. Asa.-Ly L...... ,ao, tour<-• (tont•u us dtrec.t> ••• 0 o ...... •o 0

o o o oo IHI$ U IKl IIOSI ICilNl IH (-llft I ....Yl ,_D 10 DAifo

euottG fr·oa Aon Mdtf'tont •tu uur .-tn coLYW� tn '68. Ntf'CS vt .,, .. .,. ,

WORSTEAD LABORATORIES, NORTH NORFOLK, ENGLAND. NR28 9SAo

TEL : 44 (8.92) 404086 rt(l (ta) h t tf"t0.N rk of h d'l .nical SJ'It"t Contw l U n U , OS•9 (t• ) h t tr.O. Nr k ot "tcrowtr-t S1 1tns co,.ret f0t1 , " 00 1 h •> .,.., ll Ohhe r ha> 975548 TLX: WMICAO G art trtdtNr \1 of "'"o roh lnc.orporettd o CoCo's Best & Fastest Spreadsheet System

ACCLAIMED BY THE EXPERTS "DYNACALC is my choice for a CoCo spreadsheet." Dan Downard, RAINBOW, September, 1984.

"Eat your heart out, Lotus 1-2-31" Scott Norman, HOT CoCo, October, 1984. NOW Built-In Features: • 51 x 24 Display with Lower Case ONLY • Super-fast Smart Screen Refresh • Auto-Repeat Keyboard Driver • Keysaver (TM) repeats last command x times sggss • (works just like ROM DOS) • Easy communication with BASIC/DOS programs • Two-way communications with PRO-COLOR-FILE *Enhanced* • Outputs to ASCII Word Processors like Telewriter-64 • Fast 16-Digit Arithmetic with Scientific Functions • Summation, Mean, and Standard Deviation Functions RAINBOW • Logical Functions with String & Numeric Comparison • CEATIFICA TIOH String locate command to navigate large worksheets SUL • Sort full or partial worksheet by columns or rows • Line, Bar, Hi/Lo/Ciose, Circle Graphs • Full Graphics captioning and overlay facility • Graphics Drivers for all popular Printers • Joystick/Mouse Driver for Cursor Movement • Works with any ROM versions, even JDOS • 33k Available Worksheet Space • Up to 256 Columns or 256 Rows • Can use VisiCalc worksheets & training materials • On-screen Help Messages FOR 64K DISK SYSTEMS

,.,�,,.. /'� available from COMPUTER SYSTEMS CENTER% � 42 Four Seasons Center 1122 63017 �� sS Chesterfield, MO ..no�� (314) 576-5020 10 to 6 Mon.-Fri. ft6n . �Kn JVtlJul �. St� dttliOY kt � !., or your local DYNACALC dealer

Price US$99.95 CANADA- CDN$129.95 RGS MICRO INC. Outside North America add $10 postage 759, VICTORIA SQUARE 405 MONTREAL H2V 2J3 DYNACALC Reg. U. S. Pat. Off . (514) 287·1563 TEL.: Lotus and 1-2-3 are trademarks of Lotus Development Corp. ORDER LINE ONLY * * * QUEBEC-ONTARIO-MARITIMES PRO-COLOR-FILE Is a trademark of Derringer Software 8()0.361·5338 Telewriter-64 is a trademark of Cognitec WESTERN CANADA 800-361·5155 VisiCalc Is a trademark of VisiCorp.

66 ·sa· Micro Journal '88' MICRO JOURNAL STAR-DOS LEVEL I

Whenever a new DOS is introduced, there's * The only ALL 6800 Computer Magazine. always the problem of developing software to * More 6800 material than all the others com- work with it. So we did it the opposite way- we bined: MAGAZINE COMPARISON analyzed the requirements of software thm (2 years) already exists and developed a DOS thill mel them... and exceeded them! The result is STAR­ Monthly Averag• DOS Level I, a new DOS for 6809 systems, ideill 6800 Ar11cln TOTAL for single-user industrial, control, and advanced KB BYTE CC DOBB'S ' PAGES hobbyist applications. This includes SS-50 7.8 6.4 2.7 2.2 19.1 ea. mo. systems and single-board computers from a Average cost for all four each month: $6.53 variety o( vendors. (Based on advertised 1-year subscription price) L"evel I is compatible with most current 6809 hardware and soft warP.. On the hardware side, it '68' cost per month: $2.0-4 allows up to ten floppy or Winchester drives with That's Rrght' Much. Much More appropriate controllers. On the software side, it

tor About runs existing 6809 software from nil the major 6809 software suppliers, including TSC, Star­ 1/3 the Cost' ------�---- Kits, lntrol, and others. OK, PLEASE ENTER MY SUBSCRIPTION Write or call for more information. STAR· KITS Software Systems Corporation. P.O. Box Bill My: Master Charge 0- VISA 0 209, Mt. Kisco N.Y. 10549 (914) 241-0287. Card# _ Exp. Date______

For 0 1-Year 0 2 Years 0 3 Years

Enclosed:$ TI\R·KIT

Name______NI:IERSCJf C(Jf)UTER CONSULTANTS & Stree.______Assocletes

City______State____ Zip ___ _ Ron Anderson, respected Buthor 11nd columnist for 68 MICRO JOURNAL nnounces the Anderson Collputer Consultants & Associat-es, 11 con­ My Computer Is: ______, sulting firm deBIIng prlm11rlly In 68XX

Our ex perfence Includes progrBmmlng SUBSCRIPTION RATES mBchlne control functions, signal 11nBiysls, multi-Bxls servo control (CNCl Bnd generBI USA softwBre design Bnd development. We hBve I YeBr S24.50, 2 YeBr S42.50, 3 YeBr S64.50 ex tens lve experience In lnstrumentBtion Bnd Bnlllysls of specialized softwBre. We support *FOREIGN SURFACE Add St2.00 per Y98r to USA Price 811 popuiBr l11ngu8ges pert11lnlng to the 6809 and other 68XX

Anderson COIIIputer Oonsuttants & Associates ,540 Sturbridge Ccu-t Ann Arbor. Ml 48105

'68'Micro Joumal 67 68' MICRO .IOVRNAL COMPARE Dfst- 1 Filesort, Minicat, Minicopy,

our EPROM PROGRAMMER with the f'�ekl. Minifms, **Lifetime, **Poetry,

All .,._. t� dlnrtly fn...... -t.-...... r • a � �lng. ao tt.wa.r... **Foodlist, **Diet. tnterf_.._ . � �•Uty """""•• "'Y •l., t.. l"«f.dt91 •t. .tt�u .c::r.. JCt��»t. Dfst- 2 Diskedit w/ inst.& fixes, • Trlrt• .,1._ D'ID< A B C Prime, *Prmod, **Sn oopy, �ll"" n1 u, ....r I I I I D I E I F I **Football, **Hexpawn,*•Lifetime ...... -- INTERFACE $30 PAA PAA SIEA S30 SEA SIEA Dfst- 3 r-- Cbug09, Secl, Sec2. Find, INTflll

._ 0'11l.fl l"n>J1'-· tUS o.r-lay ""'�'• tor 25(18, 21541, 2516,.,.., *Dskalign, Help .11141> l�h.a.la.t. �uoy 0\.1. u• •'-- · .roape:raUf'l9-rn-Ct'3C"•nneoc -·· Mil ..._ -•1"1 ...... , "'f\ly. $10: rel\.n'lob le wl'32 CIOUCIS5efT'b1ef $2$) 1- 800-338 6800 In u.s. �ASM8 leotlles lrQJde Macros.CordTionol assembly.libforyr11e Cdls(12 deep Symbollenglh). 10 30 d'OoetefS.cross Symbol relefenc:e tables. Object oode In d 1onnots (QSq, FlEX. SI-S9. l-EX). plus * Indicates 6800 monv Olher eXIended ckectlves crd op110ns nor I

68 ·sa· Micro Journal TR5-80+ MOO1. 111. COCO. Tt99/4a TIMEX 1000. OS80RNE. oChers 6809 SYSTEM DEVELOPMENT GOLD PLUG 80 - a Eliminate disk reboots and d ta loss dueto oxi­ dizedcontacts at the cardconnectors. edge GOLD Pl.UG 10 so6ders totheboard edge oon­ nectOf'. Useyour extsting cab&es. go6d (1f plated)

GOLDPl.UGIO Mod I (6) $44.95 $54.95 Keyboatd/EI(mod I) l5.95 18.95 Individualconnect� 7.95 --9:-95-

coco Disk(2) Module l6.95 18.� lNCL GroundextenStOns tab -t:ee- S.rGtiM'" Drives(all R.S.) 1.95 -&:ee- Disk lf"'JCPNOA1 ,.,.. XPNDRI'",,oe�toi)IUOiftlOV'41CoCo•OOIII �" • CW'W� c..l"'d QWid., �r�.O.I()lll GoldDisk Cable 2 Dnve 29.95 e•�C:OtW!C:t.or'w...,_OQiolll� tNt6009CMktrt•tl"'d W1 �inl tD.,.... -on WOCIOf'( PI"'ll'l ...... n.c.abvwt LICK-•�•ndc.ont� �·.,...•v ..._.ror_, Cerdt In lll• CoCo A()M N� "''t,_ protAK'IPIJ "-'dwert. Youc..n.od(OfW'IeC.t.� lOt AOM r11fli bl"u•\� orotllttm tOivt"t FourDrive Cable 39.95 o-•• �ltltll'�•c:�•\0'\'t.tl'l,e"ICe MGDt"' ...,..,, or� .ntu.nc.l'f Crow.,.. Clhtf""<-"'OttO� qt"Nhoeiiii"Cf VOC.I'or�'*'· lor 'fOVI" ,.;�1cardt GOLDPl.UGIOMod Ill (6) 54.95 or.....,.diP,�bt.Mclf'Qjlti\O""''"tt.ori'ICICOf"tU'GG ••tflfNIIe...... u ,_.�wo:�llf'Orllf

+ trademarttTandy Corp

Ttl IBTILLII:I.

An R�lligent �munications Program

• Easy Installation • Menu Driven • Intelligent computer to computer communications • Supports most file transfer protocols

• Transfers CPM files to your system (Cbrtstusu Pretecel)

• Access to t tmeshartng services (Source. Compuserve)

• Avat1able for OS/9 and f1ex

aJtlt\Jc:Jtl lP!J caaIDii t!IOJai'l(l)t!Jtltatr tiQJaDo.Jc:JIDW P. 0. BOX 916 Idaho Falls. Idaho 83403 (208) 529-3210 F'W•... IToodonwlo TSC ol .Inc

'68' Micro Journal 69 68' MICRO .JOURNAL ADVERTISERS INDEX

'68' MICRO� ••••••••••••••••61,68

ACORN COMPUTER SYSTEMS •••••••••••••••70

AI«RSSN COMPUTERT.aNT'S COOSU.. ••••••••61

(l)PILER EVALUATIOO SERVICES .••• ••••• 59

(l)PtJTER EXCELJ..Oa: IOC• •••••• •••••••60

a:H>UTERSHit«; PL81..I I OC. ..• • • ..• • • • •• 5

CX}PlJ'I'[R SYSTEMS CENTER ••••••••••••••66

CtMVTt:R SYSTEMS CCJ&.lT.aNT'S, I OC. • . .64

OATA-{X}'P •••••••••••••••••••••••••••IBC

DIGITAL RESEAAOi OJPUTERS ...... 62.63

D.P. �N� •••••••••••.••••••. •••••.59

Stackable Modu l e• llT ..,. EAPCO •••••••••••••••••• •••••••••.••••69

20 � PORI SUPPLY •/fu

w/D1•k protect re l a.r 3110.00 GIMIX, INC. • ••••••••••.••••••••••••3. 72 DlBI CAIIXIT w/re�•· ' cable• le.. DllVU 200.00 2&0.00 �T PLAINS COMPUTER CO...... 69 M0rD1 8041D, I SS-SOc, I SB-30c lflllbuttoa 2211.00 3211.00 tlAZEU«XD COMPUTER SYSIDtS ...... CD: Sere liT ,.,.

IWTRCl.. C()U>. • ••••••••••••••••••••••••61 I T3 - llrftiiVPT TJilll 1, 10, 100 per •ec. 11.111 28.1111 31.1111 PB4 - llrftLLlOIIIT POIT BOFI'II LlOYD /0 I ••••••••.••...... •••••...••68 S1acle board co.put.31.111 1U.85 138.111 DPlA - Dual PIA parallel port, • buffered 1/0. 2•.111 18. 111 89.85 MJCROWARE SYSTEMS CORP. ••••••...... 1.4 XADI - late•ded 4ddre.. 1ac BAUD cea. PIA port 28.85 111.115 18.1111 (PTifoW.. TEONl.

•••••••••••••••••••••••• TALBOT MICROSYSTEMS ••••••••••••••••••64

Color Computer 'lW SCf"1WAAE. •••••••••••••••••••••••••58

lJII TEl< ••••••••••••••• ••••••••••••••••68 IIOWOLJNI - 20 llbJI lloaoebroee Yldeo dr1•er 15.00 20.00 COO POIT BtJS •/powwr eupply \£STO£STERIED APPL BUSU£SS SYSTEMS • 71 5 ss-3o, 2 eart 1811.15 11111.15 POrll 801 I ••1tcbed outlet• tru•leet •uppre••1oa 28.115 311.115 Wltm.JSH mCRO SYSTEMS LIMITED ...... 65 13·232 3·••1tcbed port• for l.boYe ADD +20.00 +25.00

------Write for FREE Catalog ADO $) . 00 5 'H P ER OR D ER WIS . ADO � SA L ES TAX This lnde� Is provided as a reader service, The publisher does not assume any liability for 11931 W. Bluemound Road omissions or errors. MILWAUKEE. WIS. 53226 (414) 257- 0300

70 ·ss· MicroJournal PT -69 SINGLE BOARD COMPUTER SYSTEM OS-9 OR STAR-DOS NOW INCLUDED

• 1 MHZ 8809E Processor • 2 RS232 Pons (6850) • 2 8· blt Ports (6821) • 68K RAM 2KI4K EPROM • Tim&-Of·Day Clock • 2797 Floppy Disk Conlroller

-PT69S2-40 $99995 Complele Syslem wilh PT-69 Board. 2 DSIDD 5�·· 40TR Drives,Ceblnel. Power Supply Your choice of 05•9 or ST AR·OOS

-PT-695 ASHmbled & Tesled Board wilh $399.95 Power Supply end Ceblnel

-PT-69A Assembled and Tesled Board $295.95 -P11rallel Prlnler lnlerface wilh Cablos $ 49.95 -05·9 Lovell $200.00 -STAR·DOS Level 1 $50.00

PERIPHERAL TECHNOLOGY "Supplying Your Computer Needs Since 1978" 3760 Lower Roswell Road Marietta, Georgia 30067 VISA/MASTERCARD/CHECK/COO 404/973-0042

XDMS

f5.0iHx 'IO.r:' !'t �� " .::�,. r,,�.1.'!'�" .!.,f!::-� f"•c::, •• lev•h· Eattl leo�•l lftCho�4e• If•• XDMS "ucle\1•• YMO!W vtlhtr "'"' s,.,.,. Ootv.,.enUUo._ lot tewel 111. XDKI u one of •�• "'••• ••••''"'' •r•U*• .awallaUo for Data Management System ••o• co•,t.�ter• •"'• ••r •• '"•tt lor • -••• ..-.rutr ot ••,hc.auo"'•· XOHI u•••• ••• •••••••••• aft •.., , •••••••• to t•r"'H •••tn•vtaon of prodwct ""'"Ch.N'I'•"'•"'' a.nd o;ahelatlon of v••• wPt••••• •"' "'•'"'•"v-ee ••qu•th.

XQMQ Leyel I XOHt Lt¥•1 I C.OIUliU ol DltfUUt, UPDAT£ aAf R&PORT fuiJHa••• TP11t level tt antenel•d •• •" •tt'ltty ltYtt• tytttm. and ptrll\lts entf)' •nd reporUftg o( dat• on • •tabvl•r• '•Uto The ltEPORT hctlity aupporh r•co,.d •no held teltc.taon, 't•ld MtrQt, terttl'lt• hnt e�lcuhtlont. coluMn tout• •nd r•pon tUh�O• Control tt ••• • linghtr.•h'e languao• whlCft It upward COMPAtiOI• •t1h hYtl llo XOHI LeYtl I •. o •. tt7•ot)

XQMS Lwywl :IX Lt..,tl Sl afdt to Level I tl

XQMB Lwywl J,IJ Level Ill tnclu••• aU ef level II plvt • '" ol wtelul 0"5 UtiUta••• Thete uUHtttt are dttllftt. to ••• tft the ••weiOPIIft•ftt ••• •aanUt�ance ol 1119er .aptthUUOflt •ftll tt•r•U ,_..ahutaOA ef IOHS ...... ,. per•••Utto ,,..,.,., .,.. output of JOHI ruet. '"'h' ""' fl'otlt(autto" of Itt• fo•••t• graphac dttflay of ftu,..•ucal 4fata .&ftd oth•r htACtaon•• 1..•••1 Ul u Intended for .aelv•nu• XDHI w••tto IOHI Level Ill •• , ••••• •2•'·') IDHI l)"•t•m Oocumenuuon only tttO. cr••u tow••• PW'c"••••· ••t 2•ot'

XACC A«;;cgynt'J.OQ Qyat;wm Tn• IACC O•"•r.at AccovMII'II lttteM I• d•tttn•d for tlftatl Ovtal'lett •nvlrOIUntnlt or up to 10.000 .accovntt ..... lnv•nto,., ...... Tft• .,••• "' lnt•or•t•• accounttng lvncttont ""'" lftvtAtO•)' pl�o�t tfte l•�"�••al 1•dt•'• ec:covntt rttc•awabt• and P•r•••• funcuont ftor,..•llr tOld ••peratel, '" Otft•' ,,.,,.,.,. Featur•• .,,., ••''"•., accountt. III�'Octwctt tor ter..-u•••• tr.a,uactaont, tf'lwolc-tnt, '"• E•••tr cof'lf•owr•• to •ott •"•tton,.entt. IACC 0•f'l•r•l AccoufttlnQ S)'ttt"' CR•�uat•t XOHI, prtfo Lw. lilt. o t2••.t) .IACC ,,,,.,. DocUftltntaUon Ottlr UIO. cretin towar4 turchn•'• . ·• l4ot'

WESTCHESTER Applied Ouet.n••• Bye�erne Pett Ofltct 8e• 117. •t t •rchll H•'-'•'• M.T. 10510

All IOfhtere II wrlt1e.. I� ooocro/eu-ltr er>d ru�l ...,_. 6809 rt£X 0/$. System Architecture Teras: Clled, �Order,VIse 01' Meot-erge. SM�nl firs t CIUI• Add P&M 11,,0 U 7 ,,0 rorelg�l. NY Res edd ••• tox. Specify 5" or 8". WBSTCH£9T£R Applied Due•n••• By•t-•rn• S.les: s. [. I«DIA, 1-110()-)l&-6100, C:O..oultotlon: 91(·9•1·}5'7 �-�•'· ,... o• he• lot •• ., Manor. M.T. IOSIO lrhrthfl rt£X Ia • tr""-r1< of Tech�lcel Syot- C:O..oulte�ts, lc,

'68' Micro Journal 71 · GIMIX HAS THE 6809 SYSTEM TO SUIT YOUR NEEDS � HARDWARE SOFTWARE � All systems feature the GIMIX CLASSY CHASSIS; with a ferro-resonant constant All OS-9/FLEX systems allow you to software select either operating system. � voltage power supply, gold plated bus connectors, and plenty of capacity for future Also Included Is the GMXBUG monitor and, In systems with 128K or more of RAM, � expansion. GMX-VDISK for FLEX. � Static RAM and double-density DMA floppy disk controllers are used exclusively In all All GIMIX OS-9 systems Include Mlcroware's Editor, Assembler, Debugger, Baslc09, systems. and Ru11b; and the GMX versions of RMS and DO lor OS-9. All systems are guaranteed lor 2 MHz operation and Include complete hardware and All GIMIX versions of OS-9 can read and write RS color computer format OS-9 disks, software documentation, necessary cables, filler plates, etc. as well as the Mlcroware/GIMIX standard format. Systems are assembled using burned-in and tested boards, and all disk drives are New and exclusive with OS-9 GMX Ill systems is the GMX OS-9 Support ROM, a tested and aligned by GIMIX. monitor for OS-9 that Includes memory diagnostics and allows the system to boot directly You can add additional components to any system when ordering, or expand It In the from either hard disk or floppy. future by adding RAM, 1/0, etc. A wide variety of languages and other software is available for use with either DS-9 or GIMIX lets you choose from a wide variety ofoptions to customize your system to your FLEX. needs.

OS-9 GMX Ill/FLEX SYSTEMS (179) OS-9 GMX I I FLEX SYSTEMS 149 Want to expand your system to a The m supersystem nowIncludes (In addition tothe above): theQMX The M1 syslerns lncWe64KB static RAM. 105CPU. 143 2 por1serial megabyte of Static RAM and 15 users? 1101 CPU Ill, a 25at CMOS Stille RAM llelrd (172). and a s-,.1111· board. Sknplyadd additional and memory 110 boards. Your &IMIX system can llllglllts.tll l/0 l'rlcelslr(111 ). growwith yourneeds . Contactus lora completelist ol available boardsand with dual40 track0500 drives ...... $3991.41 The &MX 1101 CPU Ill can pertonn hlgh·speed DMA transfers from options. withdual80 track osoodrives ...... $4111.41 metiiOI'f to memory and usesmemory attribulesand Hlegallnstruction trap­ with... dual 8" osood.rlvt syslem •••.•..••...... $54191.41 172 256KB CMOS STATIC RAM board ping top!Uiect thesystem and usersfrom prog.ram crashes. If a user pro­ withIll 19MB Wlnchesllfone subsysWnand 80 track ...... SUIII .41 withbattery back up ...... : ...... $1•. 72 gram crashes, only that user Is affected; other users are unaware ol the 114 64KB CMOS STATIC RAM board

problem. withbattery baCk up ...... S$21.14 Serial OS-9 GMX II I FLEX SYSTEMS 139 The3·Port Intelligent I/O Board(111) slgni1icanllyreduces system lf764K8 STATIC RAM board ...... •..•.••.•...... $471.67 Mrllead by handling roodne 1/0 functions; freeing the hostCPU for run­ The systems.. Include 1281<8 sialic RAM. 105CPU. 1432 portserla.l 111 3 portInt elligentserial I/O bOard ...... $411. 11 allows ning userprograms. This knproves overaasystem performance and board. M32 por1I/O serial board ...... $121.43

userterminals to be run at up to 19.2K baud. 1422 portparallel II 0 boarcL...... •••••.•.•.•.. ••••....••SIU2 wltlldual 40 trackOSOO drives •. ..••••••••.•.•••••...... $44•.31 115cable ( sets 1 neededper port). speclty board ...... S24.95 ••••••..•.•.•. .•.....•..••SHtl with dual40 track OSOO drives .7t withdual 80 track0500 drives ...•••..••. .••.••••••....• $4111.31

with dual80track 0500 drives ...... sa1•.1t wltllllldual 8" osoodrive system .••••••.•••.•...•....$6111.31

•..•..•...•...... with Ill dual 8" osoo drivesystem $7611. 7t wllhfii19MB WlndlesterSUbsysliemand one 80 track••..... $7311.31 with,. 19MB Winchestersubsystem and 80 one track•...••• $1191. 7t NOW SHIPPING ! with a47MB Wilchestersubsystem and one80 track . .. . .$10,111.79 8HIIX DOESIIUNIANTE£ NOT PBIFOfiMANCE Of AMY&IMIXSYSTEMS, with a 47MB plus a6MB removablepad< Winchester IOAIIOS 011 SOfTWM£WHEM USED WITH OTHER IIANUFACTUIIEU subsystemand 80 one track drive .....•...... •••.•$1 2,391.79 I'IOOUCT. UniFLEX

EXPOIIT MOOEI..S: ADO S3l FOil 111Hz. POWEllSU"'--ES. TO 0111181 IY MAIL; S£HD CHECKORMONEYORD€R OR USE YOUR VISA OR GMX III Systems MASTS\ CHARGE. Please ._ 3wwksIWpersonaleheclt$10Clear. U.S. «derS US GIMlX. Inc. reseM1S the right 111 change ptlclng, terms, and products $5 handing H orderunder Is $200 .00. fareiOn orderS add $10lllndllngI order Is speclllcatlonsat any time withoutfurthernollce. under. $200 00. Forei� orderS -$200.00w1l be shipped \'IIEmeryA'N Frligll cNI'ge COllECT.we ind will noIYndllng . AI arderSbe 111151 � InU.S. funds All PRICES ARE F.O.B. CHICAGO Please nell 1NIIarelgnlaking checks11Mbeen abOUI 8 weeks lor COlleCtionsowe would money.� wiring « checks dr.lwn onU abankacc:oun1lnlhe .S. Our bank and ol and Is 1toe Con11nenllllllncls �llonaiBankolChicago,231 S. I.JSalleChicago, S1reet. IL Conlacl GIMIX for price availability UniFLEX UniflEX GMXIII l:lmiXnc. 60693. a:ccun1 173·32033. Systems. 1337 WEST 37th PLACE NOTE on an drive systems: Dual 40 track drives have about 700K8 ol for­ BASIC-o9O and S·9 arelrademar1u Of Mlctoware SysllmS and Corp. MOTOROlA. Inc. N CHICAGO, ILLINOIS 60609 ... FLEX and UniFLEX are trademarksConsutlints, olTechnicalSystems Inc matted capaclty; dual 80's about 1,400KB: dual 8" about 2.000KB. The GIMIX, GHOST, GMX. ClASSYCHASS IS, are trademafksGIMIX, ol Inc. formatted capacityof hard disks Is about 80% of the total capaclty. (312) 927-5510 • TWX910-221-4055 01980 GIM1X, INC 4-8' A Family of 100% 68XX Support Facilities C.P.I. The Folks who� Put FLEX'" on Color Micro Journal The CoCo '68' Micro Journal Now Offering: *FLEX·- (2 Versions) Data-Comp AND *STAR-DOS PLUS+'" S.E. Media

STAR-DOS PLUS+ • Functions Same as FLEX • Reads • writes FLEX Disks '34. so • Run FLEX Programs • Just type; Run "STAR-DOS" • Over 300 utilities & programs to choose from.

PLUS ALL VERSIONS OF FLEX & STAR-DOS• INCLUDE TSC Editor + Read-Write-Dir RS Disk + External Tenninal Program TSC Assembler Rf11 $50.00 R•t $50.00 + Run RS Basic from Both + Test Disk Program NOW SSS.OO + More Free Utilities + Disk Examine & Repair Program NOW $35.00 + Super 800 Support + Memory Examine Program + Free Color Micro Journal 1 yr. sub. + Many Many More!!!

D I�, Slm>

THESE PAOVoGES INCL\IOl allY£, 'CONTIIOLL£11, 64K UPCRAO£ II/MOO. INSTIIUCTIONS, POWfR SUPPLY A CAB I H(t, CN!U, �NO MA"UAL. C,D,E,F, AND 0000 2 s 49.95

• SP£CifY �AT COHmOLLER YOII W�NT J�. al RADIO SHACK· HJL I1EMOREX 0 ISKS 5" SS,DO s 24 .oo THINLINE ORIVES. HAlr SIZE 1659.95 SHIPPING INCLUDEDON 01SK PRICES DISI\ DIIVE CA81NET & POW£R SUPPlY s 49.95 COLOR C014"11TER II 64K II/EXT. IIIISIC 1189.95 SIIIGI.E SIDED, DOUBLE DENSITY 5" DISK ORIV[ 1199.95 DOUBlE S I OED, DOUBlE DENSITY 5" 0 ISK ORIV[ S249.95

COHT1IOLL£RS PRIHTUIS J'-"' 0 ISl\ (X)IHROLLER 'rlI JOOS OR RAD10 SHACK DIS� BASIC, 9'£CirY li!IAT DISK BASIC. EPSOH RX•80 H25.oo EPSOH RX-aon U7,.00

RADI 0 SHACK 0 I 5I( (X)HTROLLER I • I EPSON MX-100 1650.00 EPSOH FX·IOO t799.()() £PSOII FX·80 "49-.00 DISII: lli!IYE CA&.(S EPSOH MX·10 noo.oo

C-'BI.E FOR ONE DRIVE Cf.Bl£ FOR TWO ORI VES SERIAL 80NIDS Fill! PRIIfl£RS

MX·SERIES fX·SERIES USA ADO 2% SHIPPING FOREIGN ADD 5% SHIPPING SPECIAL MX-100 5550.00

·FLEX�

ONCEAGAIN HAZILWOOD COMPUTER SYSTEMS demonstrates Its leadership In computer technology by delivering the only computer system capableof switching between either the 6809 or the 68000 processor. Switching Is easily accomplished by a simple front panel toggle switch. The reason we can offer this exclusive feature no� Is that when our proven 6809 processor boardwas designed several years ago, we had the foresight to Include the bus controls that allow processor switching.

HazelwoodComputer Systems Is alsoproud to be the flrsl S·SOIS·64 bus manufacturer to license and deliver the OS9168K Operating System from Mfcroware Systems Corporation. OS9/68KIs the 68000 version of the popular and powerful OS9 Operating System. Utilizing our proven MC·20 disk controller, OS9168K can conveniently share a Winchester disk with OS9. Changing from 6809 to 68000 operation is as simple as switching processors and booting the new system from the Winchester disk.

The ease of switching processors and operating systems makes a HELIX"' dual processor system the natural choice forsoftware development. In addition, the advanced design of HELIX"" equipment, emphasizing performance and reliability, makes HELIX"' boards and systems the best value In computing offered anywhere.

. stock ro 30 days a bla . rrems •vall out nollce All a e wllh Pricess ubJecrro ch ng HAZELWOOD COMPUTER SYSTEMS

O'Fallon, MO 63366, 907 East Terra, 314-281-1055

059 and 059/UKte(lllllllfed 11e llacleMAtlo.• ol miCtowareSystems Corp•• HEUX atrademlltt< ol HazelwoodSystemo Compuotr