You are on page 1of 4
The User Looks at Books The best and the worst books on CP/M, Pascal, C, and Ada When I first got started using microcomputers, back in the dark ages of the 70s, there was a simple solution to the computer-book prob- Jem: you bought every book on microcomputers as soon as it was published. You wouldnt go bank- Tupt, even though the books were overpriced, because there weren't very many. Tused to include book reviews in the User's Column, Now there's no room, but we get a lot of letters ask- ing for more book reviews. Mean- while, four cubic feet of unreviewed books lie scattered on shelves throughout Chaos Manor. I've there- fore struck a deal with BYTE: Il do an occasional special roundup on books. CPIM Books The CP/M manuals put out by Digital Research are notoriously poor. This particularly upset my late mad friend, “First they translated them into Swahili” he said. “But what made me really mad was when they encrypted the translation.” Digital has since made great strides toward reforming its document foundry; however, for many years the com- pany simply couldn't produce a read- able document. The result was a spate of books to teach you how to use CPIM. (One of the earliest of these was The CP/M Handbook with MP/M by Rod- nay Zaks. Its still readable, and much better than the Digital manuals; Zaks's book can serve quite well as an introduction for beginners just learn- ing to use the CP/M operating sys- by Jerry Pournelle tem, It spends rather too much time on ED, the nearly unusable text editor that comes free with CP/M, and rather too little time discussing the difference between logical and physical devices, but all in al it gets the basic job done. Another good introduction that begins at a very low level is Thom Hogan’s Osborne CP/M User Guide. Like the Zaks book, Hogan assumes the reader begins with no knowledge beyond the ability to turn the com- puter on. Both explain what disks are and the difference between disk stor- age and memory. I find that I prefer Hogan's organization and style to Zaks's, but I'm not sure which is best for beginners Alas, both of these books suffer from the same defect: they become more obscure just as they get inter- esting. For example, its possible under CP/M to have your computer una series of programs on startup. Zeke II, the machine I'm writing this fon, goes through memory checks, displays disk directories, and formats the “memory disk,” after which it calls in the text editor; all this hap- pens automatically on reset. Both Zaks and Hogan tell you how to make your machines do that, but it sure would be difficult without an- other source of information. You can puzzle out how from their text, but you'll curse the author before you're done. The Hogan book is more complete, and if you're willing to learn some- thing about CP/M it will teach you more; the Zaks book is a better “cook- book” for just getting the job done. If you're really interested in learn- ing about CP/M, Jack D. Dennor’s CP/M Revealed is your best bet after you've done the introductory work. Dennons organization is rather poor. He begins with baby talk but quick- ly gives advanced material. For all that, his book is unique and invalu- able for those willing to invest the time in understanding it. You'd do well to buy Hogan's book at the same time you get Dennor’s, though; you'll need both. CP/M Revealed assumes you want to know something about assembly-lan- guage programming, at least enough tobe able to write and assemble sim- ple programs. It thus starts you with simple programs, such as Hello, and quickly goes on from there. Before the book is done, you've been shown, how to merge files, assemble them, do random-access file management, make BDOS (basic disk operating system) calls, and even recover erased files. These are all valuable exercises. However, you have to do the work; there's not much point in getting Dennon’s book just to read. I sure wish someone would put out a disk with Dennon’s programs already typed in, so that you merely need to assemble them. Finally, there's Mark Dahmke's Microcomputer Operating Systems. This is an advanced book about small ‘computers in general, rather than a book about CP/M. If you're interested in what's going on in your machine and why programmers tend to do things in certain ways, this book is enlightening. Like the Dennon book though, it’s not required reading, December 80 © BYTE Putts S19 Whatever you get, though, get a copy of the CP/M Diskguide by Curtis, Ingraham. This is one of a series of small-format handbooks put out by Osborne/McGraw-Hill, and its an ex- cellent ready reference. It won't teach you anything you didn’t know, but that's not its purpose. What it does do is list just about every useful com- mand CP/M recognizes. Along with the commands, the book gives a terse but accurate description of what each command does. | find I use it all the time, since I tend to forget the precise format for the various options you can give STAT and PIP, and I sure dont remember the memory map for my system. Alll that and more is in this useful little book. Another very useful tool is The User's Guide to CP/M Systems and Soft- ‘ware, and no, I didr’t write it. Given the way people trademark things, I ‘wouldn't be surprised to find some- one trying to trademark “User"; fair warning, I got here first The User's Guide is somewhere be- tween a magazine and a book. It looks like a magazine and is sold in issues, both in stores and by sub- scriptions, but the contents are more book-like. A great deal of the User's Guide is written by Tony Bove and Cheryl Rhodes; they have the knack of explaining CP/M programs very well indeed. The User's Guide seems to have grown out of Datacast, which was a Jim Warren publication edited by Bove and Rhodes; it, too, had a lot of easy-to-understand instructions and shared their propensity for clas- sical artwork on the covers. ‘Atypical User's Guide contains ar- ticles on how to use Wordstar and Supercalc, overviews of particular im- plementations and installations of Wordstar, and a general article on CP/M. Naturally, each issue is dif- ferent. So far Ihaver't found one that wasn't worth more than what it costs. Recommended. Pascal Books There are about a zillion books on Pascal. I can't possibly review them all, and I'm sure to leave out some- one's favorite. Apologies in advance. ‘One book I do not recommend is 520, December 19 © BTE Pian In David Heiserman’s Pascal, published by Tab Books. If you have a TRS-80 with cassette and no disks, and through some misguided chance you've acquired Supersoft Tiny Pascal, the book may be useful; but if you dont, it isn't. I really cannot recommend that you spend much time with Tiny Pascal anyway, and systems without disk drives belong in the dark ages. Trying to learn a language using a cassette is a sure- fire way to get discouraged and give it up as a bad job. Heiserman’s book suffers from the generic problems of all Tab books: sloppy editing, tiny margins, un- aesthetic print and layout, and all- around carelessness, As an example, he states WRITE(‘HELLO’, ‘THERE’,’ HOW ARE YOU?’); with the expectation that it will print “HELLO THERE. HOW ARE YOU?" but of course it won't, for there is no space between HELLO and THERE, Trivial but infuriating slop like this seems characteristic of just about every Tab book I've seen. Slightly better is Ronald Ander- son's From BASIC to Pascal, but it, t00, suffers from the Tab syndrome, and the examples are reproduced from a dot-matrix printer; they're very hard to read, The book purports to tell BASIC programmers how to switch over to Pascal, but I'd hate to have to rely on it as my guide. Another book I dor't recommend is Kenneth Bowles's Microcomputing Problem Solving Using Pascal, which is the standard textbook at UCSD— possibly because the professor who teaches Pascal is named Kenneth Bowles. I've attempted to read this book, and it’s impossibly opaque. It’s also done in typewriter script, mak- ing it physically as well as intellec- tually difficult to read. ‘Two more I can't say I care much for: Rodnay Zaks's Introduction to Pascal and A Primer on Pascal by Richard Conway, David Gries, and E. Carl Zimmerman. Zaks's book isn't all that bad, and it does go into some pretty complicated concepts before it's done; itis certainly more pleasant to read than the book by Conway et al. You could live with Zaks, and if there's nothing better conveniently at hand, you could learn the language from it; certainly Id prefer it to the Primer or either of the Tab books. ‘There are, however, better introduc- tory texts. The book I learned with is Peter Grogono’s Programming in Pascal. It begins at elementary levels and goes into progressively more complex sub- jects. I very much like his Pascal style and program layout, and his discus- sion of records and event rings is the best I've seen in any book. Its not really a beginning text, but if you're familiar with programming in gen- eral, Grogond's book is very good for those who want to learn Pascal as an additional language. However, there's no mention of CP/M or microcom- puters. Grogono can teach generic Pascal, but you'll still need a guide to your particular implementation. ‘Our current favorite beginner's text is A First Course in Computer Program- ‘ming Using Pascal by Andrew M. Keller, This book isn’t complete in that there's not an adequate discus- sion of records and pointers, but this book and Grogono’s combined can teach you to write practical programs without too many tears. (On price alone, the Zaks book may be the way to go: one book instead of two. How- ever, I dortt think Zaks's is as good an introduction as Keller's, and isn’t as complete on complex issues as Grogono.) For Apple users there's Elliot B. Koffman’s Pascal—A Problem Solving Approach, which is intended as a col- legiate-level text and goes up to rela- tively complicated programs. Not as general as the Keller/Grogono com- bination, it is adequate for learning a lot about UCSD Pascal, and some ‘may prefer Koffman‘s style. There are alot of examples and problems, with answers in the back of the book. For reasons I don't understand, this book, like many Pascal textbooks, gives program examples all in upper case. This encourages what is, in my judgment, bad programming style. 1 think programs are much more read- able if uppercase is used for reserved ‘words, such as BEGIN and END, and Now your computer can say anything and say it well. Introducing the Votrax Personal Speech System. ‘Quite articulate, The unlimited vocabulary Votrax Personal Speech System is the most sophisticated, low cost voice synthe. sizer available today. Its highly articulate text-to-speech translator lets your computer properly pronounce Sea era ator ike Feral those 66 e eat erie ‘can define an excep- tion word table and store your own translations, And remember, the entirely self-contained Votrax PS System gets your computer talking without using any valuable Built-in versatility. Much more than just a voice output device, the Vorrax PS System lets you mix either speech and sound ef- fects or speech and music. A pro- grammable master clock and 255 programmable frequencies give you unmatched control of speech and sound effects. The Votrax PS System offers user expandable ROM for custom appli cations, user downloadable software capability and sound effects subroutines for easy user program: ming. Its programmable speech rate provides more natural rhythm, while 16 programmable amplitude levels give you greater control of word emphasis. Actual size: 12.2" 4.5" x 2.6" LEE ee ij “we Velho. (ite 449 on inquiry card Friendly to humar Designed to look like a printer to your computer, the Votrax PS is extremely easy to use, It can be used in tandem with your printer without an additional interface card. Both serial and parallel ports come standard, allowing you to connect the Votrax PS stem to virtually any computer speech, music and sound effects are only a PRINT statement away System What to say after “Hello” Businesses will appreciate spoken data transmission, narration of graphic displays and unmanned, oral product demonstrations. Spoken verification of data input will make computers much easier for the blind to use. School chil- dren can receive comprehensive Vohax Write Votrax fora free copy 5500 Stephenson Highway, Troy, MI 48084 computer instruction with voice books as well as spoken drills and testing. And then, late at night, you can make those adventure games explode, A quick’ © Highly articulate Votrax text-to- speech translator. 12-255 programmable frequencies for speech/sound effets. © 16 amplitude levels. 1D Simultaneous speech and sound effects for speech and music 1 BS octave, 3 note music synthesis. 1 Serial and parallel interface standard, © User programmable master clock 0 User defined exception word table, © User programmable speech rate, amplitude and inflection. 5 User expandable ROM for custom applications. 1D User downloadable software capability. 05,500 character input buffer: sub: divisible fora printer butter. © Internal speaker and external speaker jack. 1 Real time clock and 8 user defined alarms, © Oral power up and error prompting, © X-on/X-off and RTS-CTS handshaking. 1 Programmable Baud settings (75-9600). 1 Interrupt driven Z-80 microprocessor 5 Parallel/Serial interconnect modes. 5 Proper number string translation: the number “154” is pronounced “one hundred fifty four”. To order, see your local computer retailer or call toll-free 1-800-52 1350 Michigan residents, please call (313) 588-0341. MasterCard, VISA or personal check accepted. The price is $395 plus $4 for delivery. Educational discount available, Add sales tax in Michigan and California most of the program is written in lowercase letters. One book I've liked a lot was Doing Business with Pascal by Richard and Douglas Hergert. Its not a beginner's book, but it would do as a follow-up after Keller, and it offers a great num- ber of practical business programs. Any small business owner faced with writing programs, or trying to under- stand programs written for the busi- ness, would do well to read this book. It's mostly for UCSD Pascal, bbut the authors admit there are other implementations. At least it's micro- oriented. Another, perhaps even better, is Pascal Programs for Business by Tom Swan. This book has chapters on word processing as well as business subjects, There are a lot of interesting programs; I can't testify that they'll ‘work, but they look good to me, and they‘re well structured. Kernighan and Plauger have repeatedly stated that one of the best ways to learn pro- gramming is to read well-designed programs; Swan offers that opportu- nity. Some are so interesting that I in- tend to key them in Real Soon Now. The Osborne/McGraw-Hill people have translated their two books, Prac- tical BASIC Programs and Some Com- ‘mon BASIC Programs, into Pascal and put them out as, unsurprisingly, Prac- tical Pascal Programs and Some Com- ‘mon Pascal Programs. You cannot use them as simple cookbooks because, alas, Pascal implementations differ a lot on how they do input/output and file management. Different machines and implementations require non- trivial modifications of the programs given in the books, and if you don't know something about the Pascal im- plementation you're using, you'll never get these programs to run on your machine On the other hand, provided you know something of Pascal, there are some really practical programs in these books. When I needed a matrix inverter, I found it in Common, and T've used the Bayesian decision-anal- ysis program from Practical. 1 warn you again, you need to know what You're doing; these books make lit- tle concession to readers not familiar with their subject matter; there's no explanation of what matrix inversion means, and darned little about Bayes’s theory of inductive reasoning. However, if you do know what you're doing, having these programs as models can sure save you a lot of time Finally, there's Software Tools in Pascal by Brian W. Kernighan and P. J. Plauger. Their original Software Tools (FORTRAN and RATFOR) used to be required reading for anyone seriously studying software engineering. This is a translation of their classic work into Pascal Kernighan and Plauger present an amazing variety of programs, many of which “cascade,” in that later pro- grams call in earlier ones as sub- programs. Their “software tools” have thus become famous. It isn’t 50 much the programs themselves; there are now better programs to do the jobs, such as text editing, that those programs were supposed to ac- complish. The value of the books and programs is in teaching, by example, just what structured programming is all about. ‘Alas, Software Tools in Pascal was written for Pascal implementations running on machines a good bit larger than any BYTE readers are likely to have at home. It takes a lot of translation to get the “tools” run- ning on a microcomputer. Unless you actually experiment with the pro- grams, though, a good bit of the Value of the book is lost. | found that out some time ago and set my son Alex to doing something, about it. The result was his own book and program disk. Using Pascal/M from Sorcim and Pascal MT-+ from Digital Research as the two imple- mentations of choice, he translated the introductory building blocks of Software Tools so that they will now Fun on most microcomputers. The disk comes with considerable docu- mentation, including the best exposi- tion of what Pascal error messages uo MODEMS sito. SIGNALMAN. Free hour on SOURCE [SOBAUD direc connect $69 S119 3319 {SOOBAUD AUTODIAL/ANS 50/1200 AUTO DIAL/ANS US ROBOTICS. . 300/100... MODEMS ‘ayes Compatible 3339 ‘Pawewond with cables, phe ‘nate 2 ase 2kiax PRINTERS ‘GEMINI 104120 ps PROWRITER 120 cp denaty UKI daly whee 18 eps DAISYWRITER co 40 op cm COMPUTERS {he, suns "Son sees “Oh, os Cele 223 on inquiry cad 522 Deamber 36 © PTE Paton ne Best Prices On ‘TRS-80 Computers (Our 6th year of discounts Ed or Joe McManus Fax. Prepaid, Save Tax. Toll Free 800-231-3680 Marymac Industries, Inc. TASH Katy Fwy., Katy (Houston) Tx 77450 17132047 Telex T4132 See tin the Wal Sree Jour ey Tues, We, Tar, (Gecle 275 on nguy card RTL Relocatable Threaded $150 Language ‘Bi, mutating, redreced VO, and een on, RTL Programming Aids 9786 Circle 369 on Inquiry card

You might also like