CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 11
Cohen Resigns! PIP Needs Editor! PIP to be Replaced If There is No Volunteer
The CFOG Board and Members' meeting on Thursday March 28th, was a momentous one: PIP editor Ben Cohen announced that because of additional obligations as a result of his assumption of the post of Executive Editor of the Law Office Technology Review it would no longer be possible for him to edit PIP. Based upon prior experience (and the lack of any response at the meeting), it was the judgement of the Board that it was unlikely that we would find another editor.
[This is your one opportunity to become Editor of PIP. The privileges are that you get to receive and read lots of exchange newsletters, to edit material submitted by members (if any), to write some stuff yourself, and to edit the newsletter. Any volunteers should call Ben Cohen (312-726-3555, days; 708-965-8144 some evenings). If nobody calls by April 30, the contingency plan indicated below will be put into effect.]
Ben was asked whether it might be possible to substitute another user group's newsletter. Ben suggested that Toggle, the monthly newsletter for the Tacoma-Seattle Area CP/M and MS-DOS Microcomputer Users, comprising the Tacoma Open Group for Microcomputers and the Seattle Osborne Users Group / Executive SIG, was one of the best among those groups which supported both CP/M and MS-DOS.
The Board authorized Ben to negotiate with the Toggle groups for an arrangement under which CFOG members would receive Toggle on a regular basis, with the President and the Treasurer to make the final determination as to whether the arrangement was acceptable. CFOG members would also receive notices of CFOG meetings and CFOG news either with Toggle or separately.
Sysop Carson Wilson reported that the 20 Mb hard drive on the RCPM was making noises. After some discussion about whether to have one of the old hard drives rebuilt or buy a new one Bill Kuykendall offered to donate a 20 Mb Seagate drive that he has used but little. In exchange Bill asked that he be given leave to dispose of the Televideo equipment. New member Barry Fuerst indicated some interest in the equipment. This was agreed to.
Bill Kuykendall resigned from the CFOG Board. In appreciation of the efforts that Bill put in as sysop and president of CFOG, Bill was made an honorary member.
Mike Andrews raised the question severing our relationship with Fog. Ben and Bill K. both noted that the relationship, while rocky at times, has cost us essentially nothing and has had some benefits. No action was taken.
Secretary Pam Brace confirmed the next Sunday meeting date of May 20th at the Skokie Public Library. The next Board and members downtown meeting was set for Thursday, June 28th.
Regular Sunday meetings are now held in February, May, September and November. Regular Thursday evening downtown meetings are held in March, June, October, and December.
In the event that there is no volunteer to step forward and becom Editor of PIP, starting in May or June you will receive a monthly newsletter, Toggle, from the Seattle-Tacoma group. Articles for Toggle may be submitted by mailing them (please submit on disk, and write the disk format on the disk, please!) to the editor, Bob Thomson, 1808 Lenore Drive, Tacoma, WA 89406, by uploading to the Toggle Bulletin Board, 206-759-7298 (2400 bps, 8-1-N, 24 hours), by uploading to the CFOG bulletin board (Antelope Freeway Remote Access System, 312-764-5162 -- leave a note for Benjamin Cohen that this is for Toggle and I'll grab it and upload it to the Toggle Bulletin Board). If you forget where to send it you can always just send it to the CFOG post office box.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 11
CFOG Sunday Meeting May 20, CFOG Thursday Meeting June 28
The second quarterly Sunday meeting of 1990 will be held on May 20 commencing at 1:00 p.m. at the Skokie Public Library, 5215 Oakton Street, Skokie, and continuing until everybody has left or 5:00 p.m. when the Library closes.
The next quarterly downtown meeting is scheduled for Thursday, June 28th at 6 p.m. Details, 312-726-3569.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 12
Mega-Capacity 3.5 Inch Drives
We'll soon be seeing 3.5 inch floppy disk drives with capacities in excess of 20 Megabytes, but already on the market is at least one 2.88 Mb capacity drive, from MicroSolutions, the gang who brought you UniForm. I have already seen an announcement of another. The system includes a CompatiCard IV, the 2.88 Mb drive, and the cable. Power for the drive is drawn from the interface, so it doesn't have a power cord, but you'll need enough power supply to run the drive. I understand that disks for this beast are $6.50 currently, but are expected to come down significantly in price as supplies come onto the market.
The CompatiCard IV can be used as your primary or secondary controller on any PC, XT, AT, or 386, supports 3.5, 5.25, and 8 inch drives, supports 4 drives (2 of which may be external), and comes with proprietary software to format disks in background. Data transfer rates supported are 250, 300, 500, and 1 Kbps, it has on board ROM BIOS, will autoboot from any drive, includes three hardware selectable DMA channels and six hardware selectable interrupt levels, and has pin 2 and 6 density control.
Other products from MicroSolutions include Overdrive (to add external 5.25 inch drives to PC, XT, AT, or PS/2 models), Uniform-PC (to read over 350 CP/M and 'DOS formats), Matchpoint (to read Apple DOS, PRODOS, and SOS disks, Apple Softcard and NortStar hardsectored formats (Advantage, Horizon and TurboDOS), Matchmaker (to read Macintosh disks on PC, XT, AT), and UNIDOS (to run CP/M software on your 'DOS machine).
Available from Elliam Associates, 805-466-8440.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 12
Humidity: Good for Computers
[The following article appeared in the Northwestern University Perspective, a magazine for alumni, which carries no copyright notice.]
Researchers at Northwestern [University] have discovered that high humidity is actually safer for computer hard disk files than the usually touted cool, dry place.
The researchers tested hard disk storage systems in a vacuum, dry air, and air with 50 percent relative humidity by simulating stops and starts in all three environments. According to principal investigator Yip-Wah Chung, professor of materials science and engineering and director of the Center for Engineering Tribology humid conditions permitted five times as many starts and stops as dry conditions, and 50 times as many as the tests in a vacuum. Wear particles formed by the scraping of the magnetic head against the disk were oxidized in humid conditions. The oxidation gave the particles lower surface energy and they remained smaller. In dry conditions the particles were substantially larger and eventually caused system failures. The researchers noted that the conclusion applies only to hard disk systems in continous operation.
The research was presented at the American Society of Mechanical Engineers Tribology Conference last October.
[Tribology is "the branch of science and technology concerned with interacting surfaces in relative motion and with associated matters (as friction, wear, lubrication, and the design of bearings)." IV Oxford English Dictionary Supplement (1986). -- bhc]
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 13
Law Office Technology Review
by Benjamin H. Cohen
A few of you may be interested to know what it is I'll be doing that requires that I relinquish the esteemed position of Editor of PIP. My new title is Executive Editor (how about that!) of the Law Office Technology Review. LOTR is a syndicated column started over two years ago by Barry D. Bayer, an attorney from Homewood, Illinois, and Mark J. Welch, then a law student at the University of California at Berkeley's Boalt Hall Law School.
I've known Barry for several years: we have served together on the Executive Council of the Chicago Bar Association's Real Property Committee and have twice travelled together to Springfield to appear before House Judiciary II Committee to seek repeal (ultimately obtained) of the short-lived "shrinkwrap license" statute.
A few weeks ago Barry told me that Mark, having graduated and passed the California bar, was seeking (and obtained) employement full time as a lawyer and had decided he no longer wanted to write the column. Did I know anyone who might be interested in doing some 'serious' writing. Barry asked disingenuously. Did I? Those of you who know me know there's nothing I like better than using, talking about, and writing about computers. And this deal means getting paid to do it. I haven't had such a good time since User's Guide to CP/M went out of business back in the fall of 1985!
The upshot is that this die-hard CP/M user has been weaned over to using MS-DOS. Ugh. Over a ten day period I worked with Better Working Eight-in-One and toyed with MicroSoft Works while three of us reviewed those two programs and PFS:First Choice: in 1500 words or less. We cut to the bone and then cut more: leaving out such minor details as Eight-in-One's failure to fully support three (HP LaserJet with B Cartridge -- no cartridge fonts, Epson LX86 -- only 10 and 5 pitch, and Diablo 1610 compatible -- no underscore) of the four printers that we tried (Epson LQ 2500 was the fourth).
LOTR appears in about a dozen or so "legal" newspapers and publications from Connecticut to Texas to California. The Chicago Daily Law Bulletin carries it on Wednesdays; if you're in the Loop late on Wednesday or on Thursday you'll find that some newsstands carry the Law Bulletin and you can see our column.
There's also a monthly newsletter ($89.50 a year, send subscription checks to LOTR, Box 1674, Chicago, IL 60690), that basically consists of the month's columns. We plan to add some material to the newsletter to encourage subscriptions from people in the cities where the column appears.
There are two main casualties: KaftorWare Corporation and PIP. Sales of PC-File 80 have always been rather slow. There's no more time for that. Bill Roch of Elliam Assiociates, (P.O. Box 2664, Atascadero, CA 93243) will take over the distribution and support effective some time in May. Questions about PC-File 80 can be left on the answering machine at [708] 965-8144, but you'll get faster answers from Bill, who generally answers the telephone directly. If you're a CP/M user and don't have Bill's catalog, drop him a note and request one now: he has lots of good stuff.
Obviously the editorship of PIP is a casualty: writing a weekly column will not leave time for any such shenanigans, even quarterly. Fortunately, Bob Thomson, editor of Toggle, is retired, and has the time to put out an excellent monthly newsletter, so from that point of view things will probably get better for CFOG members!
The first thing I'll be doing with the ill-gotten gains from this venture is to get a faster MS-DOS system. I've got a Kaypro 16 (PC-Tools says it's 10% faster than an original IBM PC -- RAH!), and Barry lent me a Compaq Plus (the Kaypro has no slot and I've got some hand held scanners with OCR software to test), but these systems are much too slow for real testing. My brother has offered me a free '286-10 mother board with 1 Mb of 120ns RAM and an 80287, and I'm going to build a system around that: 80 Mb hard drive, high density 5.25 inch drive, VGA mono, I/O card. No color. Oh yeah, a keyboard. You know how persnickety I am about keyboards.
I'm considering adding a CompatiCard IV and a 2.88 Mb 3.5 inch drive from MicroSolutions. The idea is to be able to throw most software packages onto the 3.5 inch 2.88 megger and run them from there. When I'm done I just stick the thing in a box. If I need it again for some reason, it's there.
We're planning to go to Spring COMDEX. Atlanta is a city where our column appears, so it won't hurt to go down there and shake a few hands, as well as seeing what's new. It'll fill a column, too -- maybe.
Well, it's kinda like the old days with a monthly PIP, except the column is shorter than an issue of PIP, comes up weekly, and has a real deadline (please don't call me on Wednesday).
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 14
VDE Praised
[From PC Magazine's columnist, John Dvorak, what you already knew about Eric Meyer's VDE. We found this text on the Glendale Littera board, one of the release points for the DOS VDE. The command "VDE" on Glendale automatically sends the latest version of VDE to you. Glendale Littera is at 818-965-6164. -- bhc]
GENUINELY INTERESTING SOFTWARE DEPT.: This may be the finest piece of word processing code every written. I have never been as impressed with anything as I have with VDE 1.5. It was coded by the talented Eric Meyer in Norman, Oklahoma. More than a WordStar clone, this is a full-blown word processor utilizing WordStar commands with windowing, undo... programmable function keys, auto-save, macro capability, 43/50-line toggle, WordPerfect compatibility, WordStar 3, 4, and 5 compatibility, blazing speed, and more.
Fully loaded, the code size is just over 40K -- proof that writing software in 100 percent assembly language still pays off in performance and reduced code size. It's an astonishing product, believe me. It's more than the perfect laptop word processor. Actually, it's something that corporations should consider if they want to save tens of thousands of dollars.
Now that the Software Publishing Association is dogging large corporations and trying to get employees to fink on their bosses if a bootleg copy of some software is present, it's time everyone went legit. VDE is free to individuals and sold in the form of site licenses for corporations. Twenty desktops for $50. For larger sites it's even cheaper per desktop... Smart corporate micro managers should consider the possibilities.
One company bonus: individual users can use the software free of charge. This means employees can take the system home without worrying about corporate piracy concerns.
The use of quality alternative software by large institutions is not new. The Los Angeles Times uses PC-Write exclusively. It's on all the reporters' desktop machines and remote laptop computers...
I cannot give a higher recommendation for any product that I have seen in ten years than I can for VDE 1.5. Top recommendation.
[Dvorak is late in learning about Eric Meyer's wonderful word processor, but CFOGgers have been reading about it here since July 1986, and about the MS-DOS version since December 1987. If you haven't believed me, believe John Dvorak. -- bhc]
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 14
The Raisin Bran Problem
I was contemplating the bowl of raisin bran. It was from the bottom of the box. Unlike a bowl from the top of the box which is all flakes and hardly any raisins, there was an abundance of raisins but the bran flakes were mostly crumbs. Why couldn't the raisins be even throughout? Why did they and the crumbs sift to the bottom of the box? Why couldn't something be done about it? I pondered these and other mysteries of the universe as I chewed my way through the raisins. I downed the last of the cold coffee -- it would have been warm still if the bowl had been from the top of the box -- and ambled off to my laboratory, disgruntled.
There must be a way, I thought. I opened the door and turned on the light. A small grey-haired man with a full beard stood hunched over the bench, carefully piecing together a small cardboard box. He turned, acknowledged my presence, and smiled. "This is my new gravity-dispersing box", he chuckled. "It will solve the raisin bran problem. You simply pour the raisin bran into this box," he continued, opening a fresh box of raisin bran on the lab counter, "and the contents are evenly dispersed through its entire volume. As you pour out the contents you'll get a proportionate share of whole flakes, raisins, and crumbs with each serving."
I ran to the kitchen and got a dozen cereal bowls. I ran back to the lab, opened the gravity-dispersing box, and poured raisin bran into each one. I carefully separated out the raisins with tongs and divided the flakes from the crumbs. I weighted the contents of each bowl, raisins, flakes, and crumbs -- separately -- and entered the results in a spreadsheet. A few slash commands and I had a pretty picture on the screen: the proportion of raisins to whole flakes to crumbs didn't vary one percentage point from bowl to bowl. A triumph of modern technology!
I turned to small man: "This is fantastic!" I said. "Could we put the same properties into a bottle?" I wanted to apply the gravity dispersant technique to Italian salad dressing. "Alas, no," he said. "The gravity-dispersant requires a pourous host material."
"Let me dictate the formula to you," he continued. I turned to my computer keyboard and opened a file. "Ready", I said. He started to speak, but the words grew faint. I turned to ask him to speak up, but he wasn't there. Damn! Now all I've got is this one lousy box! Kellogg's would have made me rich!
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 15
A Little History from InfoWorld
by Benjamin H. Cohen
I recently decided, reluctantly, that some of the old computer magazines just had to go. I put some notices up on the Antelope Freeway RCPM and CBBS. Someone responded that he wanted the issues of InfoWorld with CP/M items of interest, and off they went. That included three "Report Card" issues that were issued by the magazine back in 1982-83 which contained copies of reviews published during the year and many of the "slick magazine" issues of InfoWorld, 10-31-83 through 8-26-85. By 1985 any CP/M references were few and far between. I copied a number of articles, which are listed below, and sent the copies of the magazines off. [The balance of the "old" InfoWorld issues, almost complete through December 1986, have been discarded: for reasons which may be apparent from reading the article "Law Office Technology Review" in this issue I am keeping the more recent ones for reference.]
In the list the name of a piece of software or hardware without more indicates a review. Except for the first five items the listings are alphabetical by product name.
The date is in YYMMDD order, except that YY--RC refers to one of the report card issues for the year question. The collection of articles and reviews gives a small glimpse at the history of CP/M at the height of its popularity. Some of the names are unfamiliar, and that's as it should be. Does anyone who didn't actually have one remember the Epic Episode or Pied Piper? At any rate, I have put these together in a little binder, as a nostalgic reminder of the way things used to be.
Just reading over the list will no doubt have an effect on many of our members, not necessarily the same to all!
840611 CP/M Eludes home Market 831107 Lee Felsenstein: Populist Engineer 840514 Seymour Rubenstein, Q&A 840514 Software for Defunct Machines 840409 Actrix ?????? Assistant CPe 82--RC Badlim 82--RC Cardbox 82--RC Computer Chef 840611 CP/M Gold Card 831205 CP/M 2.2 from Montezuma 82--RC CP/M 86 82--RC Electric Webster 83--RC Epic Episode 841126 Epson PX-8 Geneva 83--RC Epson QX-10 83--RC Formula, The 83--RC Fortran 80 83--RC HP-125 83--RC IBM PC 83--RC MicroGANTT 831226 [JRT Systems] files bankruptcy 841008 KAMAS 831226 Kaypro confident 83--RC Kaypro II 841112 Kaypro 2X 831031 Kaypro 10 83--RC Manual Maker 831226 Morrow unveils portable 83--RC Multiplan (IBM) 840319 NEC PC-8201 83--RC North Star Advantage 841126 [Osborne] Vixen Maker Goes Public 841112 Osborne Shows New Computer 840709 Why Osborne Wrote the Book 83--RC Otrona Attache 83--RC Personal Pearl 83--RC Pied Piper 83--RC Planner Calc 831205 Prolog adapted for Z80s 83--RC Select WP 2.01 83--RC SuperCalc2 83--RC T-Maker III 840430 Televideo TPC-1 840130 Transtar 130S 83--RC TRS-80 Model 12 83--RC VEDIT 841119 New WordStar on the way 831207 Zenith Z-100 83--RC Zorba
If you'd like to take a look at this exercise in nostalgica, let me know and I'll bring it along to a meeting.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 15
Tea Leaves are Right. WordStar 6 is Here!
If you want to accuse the Editor of having a dirty crystal ball, go ahead, but I think that my prediction of WordStar 6's release in January was close enough: the announcement was in the March 15 issue of InfoWorld which arrived on March 8th. I couldn't glean much from the article -- which seemed more concerned about WordStar's competitive position than about telling what's new. A first impression report on MicroBytes indicates that the two biggest new items are scalable fonts (from the invisible 0.25 points to the bigger-than-a-page 999.75 points) and LaserJet III. There are improvements in the page preview, which if I remember correctly, now works on landscape format pages as well. I believe the built-in graphics editor is a new feature, too. WS6 is $89 plus shipping.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 16
PIP Article List Now Complete!
Several versions of the PIPARTnn.LST have appeared since I became editor. It was started in a vain attempt to keep track of what articles published and so that I could discard those files that were no longer needed. From time to time it has also turned out to be valuable because when I wanted to find something that had appeared in PIP I could simply turn to the file or a printed copy and find it.
Each time the PIPARTnn.LST has appeared I have not only added listings of articles in the most recent issues of PIP but have also carried the job a bit backwards. Now I have finally carried that job back to issue number 1 as well as forwards to cover the first issue of 1990. The latest edition is PIPART08.LST, which is found in the library and on the Antelope Freeway Remote Access System as PIPART08.ARC. Happy Hunting.
For those who want the back issues of PIP to go along with the PIPART08.LST, drop me a note or leave a message on the Antelope Freeway. We do have some back issues. Those we don't have in stock will have to be copied at a cost of about 7 cents a page, depending on volume, that is, the number of copies are ordered.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 16
Dos-Alike For Unix
If you're moving to a Unix system, either voluntarily or because your company is going that way, and you have been using a CP/M or 'DOS system, you might want to look into Dos-Alike, a $99 program that translates CP/M or 'DOS commands into the Unix equivalents. The technical stuff says it provides DOS or CP/M command syntax to either a Bourne or C shell on a Xenix or Unix system. Version 1.3 is now shipping from Campus Computer Corp., 1908 Belcourt Ave., Nashville TN 37212, [615] 383-6000.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 16
For Sale
From time to time we get letters or telephone calls from people having CP/M systems for sale. If you are interested in obtaining one, leave a message on the CFOG answering machine, [312] 726-3569 indicating what you might be interested in. We have a couple of 'listings' right now. If you don't get one of those items, we can put you on a list.
Books and Bytes
We've been given the name of the abouve bookstore with a notation that it's just computer books. Location: 1163 East Ogden Avenue #105, Naperville, IL 60563, [708] 541-2126.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 16
Such a Deal!
Some of the 'deals' that come in the mail give us quite a chuckle. Now comes a group called "Computers Etc." that offers to act as a "computer products and peripherals distribution and consulting firm" just for you. The pitch is this: "For the fee of a thousand dollars a year, you and your members can take advantage of the opportunity to save money and time on future computer related purchases. That is approximately $8.33 per month per member for a 10 member group, or approximately $4.17 per month per member for a 20 member group, ETC.. WOW, that is LESS THAN the COST of most Newspaper Subscriptions!" Are you as impressed as I was?
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 16
Acco Super Glare Filter
I splurged. The nylon mesh glare filter on my ancient Zenith monitor had some holes in it. It was a bit disconcerting to watch. I checked the Quill catalog: nylon mesh runs about $15, but there was an Acco glass filter for $32.94. It was worth it. The ancient Zenith monitor has NOTHING on it to reduce glare. Without a filter it's AWFUL. But the Acco Glarecare GS Series filter is so good that I can barely tell that there's anything but the amber characters on a black background. If reflections are bothering you, call up Quill at 708-634-4800 and ask for their microcomputer supplies catalog. There are five different sizes of filters from 8 7/8" x 8" to 12 1/16" x 8 7/8" to choose from. Try it, you'll like it.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 16
Eagle Computer Users
Most Osborne groups have become generic CP/M user groups and in many instances -- CFOG included -- tried became or tried to become [if not all things to all members] at least in a small way MS-DOS user groups, as well. A number of 'orphan' groups that still exist have not travelled this road. One of them is the Eagle Computer Users Group, whose December 1989 issue comes to hand, marked Volume 89 (must refer to the year, can't be the 89th volume!), No. 12. There was a full column of 'for sale' ads, a listing of books, magazines, and manuals in the group's library, and a few letters. If you have an Eagle write to the editor David A. J. McGlone, at P.O. Box 3381, Saratoga, CA 95070.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 17
Real Programmers Write in Fortran
[I found this on a bulletin board somewhere with the note that it was seen on USENET but that the author is unknown. -- bhc]
Maybe they do now, in this decadent era of Lite beer, hand calculators and "user-friendly" software but back in the Good Old Days, when the term "software" sounded funny and Real Computers were made out of drums and vacuum tubes, Real Programmers wrote in machine code. Not Fortran. Not RAFTOR. Not, even, assembly language. Machine Code. Raw, unadorned, inscrutable hexadecimal numbers. Directly.
Lest a whole new generation of programmers grow up in ignorance of this glorious past, I feel duty-bound to describe, as best I can through the generation gap, how a Real Programmer wrote code. I'll call him Mel, because that was his name.
I met Mel when I went to work for Royal McBee Computer Corp., a now-defunct subsidiary of the typewriter company. The firm built the LGP-30, a small, cheap (by the standards of the day) drum-memory computer, and had just started to manufacture the RPC-4000, a much-improved, bigger, better, faster -- drum-memory computer. Cores cost too much, and weren't here to stay, anyway. (That's why you haven't heard of the company, or the computer.)
I had been hired to write a Fortran compiler for this new marvel and Mel was my guide to its wonders. Mel didn't approve of compilers: "If a program can't rewrite its own code," he asked, "what good is it?"
Mel had written, in hexadecimal, the most popular computer program the company owned. It ran on the LGP-30 and played blackjack with potential customers at computer shows. Its effect was always dramatic. The LGP-30 booth was packed at every show, and the IBM salesman stood around talking to each other. Whether or not this actually sold computers was a question we never discussed.
Mel's job was to re-write the blackjack program for the RPC-4000. (Port? What does that mean?) The new computer had a one-plus-one addressing scheme, in which each machine instruction, in addition to the operation code and the address of the needed operand, had a second address that indicated where, on the revolving drum, the next instruction was located. In modern parlance, every single instruction was followed by a GO TO! Put *that* in Pascal's pipe and smoke it.
Mel loved the RPC-4000 beause he could optimize his code: that is, locate instructions on the drum so that just as one finished its job, the next would be just arriving at the "read head" and available for immediate execution. There was a program to do that job, an "optimizing assembler," but Mel refused to use it.
"You never know where it's going to put things," he explained, "so you'd have to use separate constants".
It was a long time before I understand that remark. Since Mel knew the numerical value of every operation code, and assigned his own drum addresses, every instruction he wrote could also be considered a numerical constant. He could pick up an earlier "add" instruction, say, and multiply by it, if it had the right numeric value. His code was not easy for someone else to modify.
I compared Mel's hand-optimized programs with the same code messaged by the optimizing assembler program, and Mel's always ran faster. That was because the "top-down" method of program design hadn't been invented yet, and Mel wouldn't have used it anyway. He wrote the innermost parts of his program loops first, so that they would get first choice of the optimum address locations on the drum. The optimizing assembler wasn't smart enough to do it that way.
Mel never wrote time-delay loops, either, even when the balky Flexowriter required a delay between output characters to work right. He just located instructions on the drum so each successive one was just *past* the read head when it was needed; the drum had to execute another complete revolution to find the next instruction. He coined an unforgettable term for this procedure. Although "optimum" is an absolute term, like "unique," it became common verbal practice to make it relative: "not quite optimum" or "less optimum" or "not very optimum". Mel called the maximum time-delay locations the "most pessimum".
After he finished the blackjack program and got it to run, ("Even the initializer is optimized," he said proudly) he got a Change Request from the sales department. The program used an elegant (optimized) random number generator to shuffle the "cards" and deal from the "deck", and some of the salesmen felt it was too fair, since sometimes the customers lost. They wanted Mel to modify this program so, at the setting of a sense switch on the console, they could change the odds and let the customer win.
Mel balked. He felt this was patently dishonest, which it was, and that it impinged on his personal integrity as a programmer, which it did, so he refused to do it. The Head Salesman talked to Mel, as did the Big Boss and, at the boss's urging, a few Fellow Programmers. Mel finally gave in and wrote the code, but he got the test backwards, and, when the sense switch was turned on, the program would cheat, winning every time. Mel was delighted with this, claiming his subconscious was uncontrollably ethical, and adamantly refused to fix it.
After Mel had left the company for greener pa$ture$, the Big Boss asked me to look at the code and see if I could find the test and reverse it. Somewhat reluctantly, I agreed to look. Tracking Mel's code was a real adventure.
I have often felt that programming is an art form, whose real value can only be appreciated by another versed in the same arcane art; there are lovely gems and brilliant coups hidden from human view and admiration, sometime forever, by the very nature of the process. You can learn a lot about an individual just by reading through his code, even in hexadecimal. Mel was, I think, an unsung genius.
Perhaps my greatest shock came when I found an innocent loop that had no test in it. No test. *None*. Common sense said it had to be a closed loop, where the program would circle, forever, endlessly. Program control passed right through it, however, and safely out the other side. It took me two weeks to figure it out.
The RPC-4000 computer had a really modern facility called an index register. It allowed the programmer to write a program loop that used an indexed instruction inside; each time through, the number in the index register was added to the address of that instruction, so it would refer to the next datum in a series. He had only to increment the index register each time through. Mel never used it.
Instead, he would pull the instruction into a machine register, add one to its address, and store it back. He would then execute the modified instruction right from the register. The loop was written so this additional execution time was taken into account -- just as this instruction finished, the next one was right under the drum's read head, ready to go. But the loop had no test in it.
The vital clue came when I noticed the index register bit, the bit that lay between the address and the operation code in the instruction word, was turned on -- yet Mel never used the index register, leaving it zero all the time. When the light went on it nearly blinded me.
He had located the data he was working on near the top of memory -- the largest locations the instructions could address -- so, after the last datum was handled, incrementing the instruction address would make it overflow. The carry would add one to the operation code changing it to the next one in the instruction set: a jump instruction. Sure enough the next program instruction was in address location zero, and the program went happily on its way.
I haven't kept in touch with Mel, so I don't know if he ever gave in to the flood of change that has washed over programming techniques since those, long-gone days. I like to think he didn't. In any event, I was impressed enough that I quit looking for the offending test, telling the Big Boss I couldn't find it. He didn't seem suprised.
When I left the company, the blackjack program would still cheat if you turned on the right sense switch, and I think that's how it should be. I didn't feel comfortable hacking up the code of a Real Programmer.
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 18
Console Help
by Allen J. Browne
[This is a reprint adapted from the January 1990 issue of TOGGLE, the newsletter for Tacoma-Seattle CP/M and MS-DOS computer users. -- bhc]
DOS screen work is not noted for its aesthetic appeal. Your color screen represents a significant investment, but you are probably not getting much color at the DOS command level. Even we monochrome purists have screens which could display text in reverse video or high intensity, but I have seen very few batch files which actually do so.
Gaining control of keyboard and screen attributes is neither difficult nor expensive. The ANSI.SYS file came with your computer. The documentation for ANSI.SYS is sketchy and lacking in examples. The following ideas may help.
First, to ensure that ANSI.SYS is active check your CONFIG.SYS file for a line that looks like this:
DEVICE=ANSI.SYS
If it's not there, add it and reboot your computer before trying the tips that follow.
The Colorful Screen
To alter screen attributes, ANSI.SYS wants an ESCape Sequence, a sequence of keystrokes that starts with an [ESC]ape character.
For example, to achieve reverse video, ANSI.SYS wants four characters:
[ESC][7m
That's an [ESC]ape, a left square bracket -- [ --, the numeral 7, and a lower case letter m. Put these four characters in a file, let's call it REVERSE.TXT, TYPE it to the screen, and whatever follows will be in reverse video. Things will stay that way until ANSI.SYS sees the three character cancel reverse video command:
[ESC][m
You may be able to insert control characters in files with your usual editor or word processor. With Sidekick and other Borland editors, press CTRL+P and then (without releasing CTRL) hit [ESC]. [WordStar and VDE will do this, too, even if you do release the CTRL before pressing [ESC]. -- bhc] Edlin will embed an [ESC]ape character in a file if you press CTRL+V followed by a left square bracket.
Once you have the REVERSE.TXT file you can use it to create text files with any screen attributes you want. To create a batch file containing a warning message in reverse video, enter ECHO, a space, read in the REVERSE.TXT file, enter the message you want on the screen, and follow it with the cancel reverse sequence:
ECHO [ESC][7m WARNING: Any files of the same name will be destroyed [ESC][m
To vary the effect, try these:
2 = faint
3 = italics
4 = underscored
5 = blink
6 = rapid blink
1 = high intensity
Colors 30 to 37 are for foreground color and 40 to 47 are for background color. The second digit corresponds to the following colors:
0 = black
1 = red
2 = green
3 = yellow
4 = blue
5 = magenta
6 = cyan
7 = white
You can change both foreground and background colors by separating them with a semi-colon:
[ESC][33,42m
puts yellow characters on a green background.
If you have more than two or three ECHO statements in a row, it becomes more efficient to collect them into a short text file and TYPE the file instead of watching your ECHOes gradually dribble onto the screen. So text files are an obvious target for ANSI.SYS [ESC]ape sequences. For example, if your AUTOEXEC.BAT file assigns a logical drivename E: to the C:\WORDSTAR directory, and defines function key F9 as DIR /P and F10 as MENU you can create a file called START.MSG with a message like this:
FREDDIE THE COP'S COMPUTER
F9 = DIR /P
F10= MENU
LOGICAL DRIVE E: =C:\WORDSTAR
Now you know how to set this message up so with lines of asterisks above and below the text in reverse, the second line in blinking magenta, and lines 3-5 in magenta on white.
Defining Function Keys
Defining function keys is also done through ANSI.SYS. The job can be done as a series of PROMPT commands. For several definitions it is much faster to enter them into a file and TYPE it. The general format is:
[ESC][<key_value>;<redefinition>p
The key_value is a two byte number for function keys, starting with 0;59 for F1, 0;60 for F2, and so on through 0;68 for F10. For the redefinition, enter the command in quotation marks or as a series of ASCII values separated by semicolons. For example:
[ESC][0;50;type C:\START.MSG;13p
[ESC][0;67;DIR /P;13p
[ESC][0;68;MENU;13p[ESC][3A
[ESC][1mFUNCTION 4 KEYS DEFINED
[ESC][m(Press F1 for HELP)
[The last two lines should be on one, but our format isn't wide enough. -- bhc]
Now pressing F1 will display your START.MSG help file on the screen, F9 will display the directory contents, and F10 will load your menu.
The 13 at the end of the line before the "p" is the ASCII code for ^M or a [RETURN]. The [ESC][3A at the end of the third line moves the cursor up three lines since the first three lines won't display anything on the screen but will move the cursor down. This way the final line will appear as if it were the only line in the file. The first part of the last line in high intensity.
Just as [ESC][nA moves the cursor up n lines, [ESC][nB moves the cursor down n lines, [ESC][nC moves the cursor right n columns, and [ESC][nD moves the cursor left (or backwards) n columns. You can clear the screen with [ESC][2J and then move the cursor to the location you want with [ESC][h#;v#F, where h# is the horizontal location you want and v# is the vertical location you want. You can use [ESC][K to erase the current line.
Having created a file to define your function keys and whatever screen colors you desire, include TYPE DEFINE.KEY in your AUTOEXEC.BAT file. You'll be amazed how quickly these definitions will execute. If you need to undefine the keys again (for programs such as Norton Utilities which are sensitive to 'DOS's definitions, your should create an UNDEFINE.KEY file that's something like this:
[ESC][0;59;0;59p[ESC][0;67;
0;67p[ESC][0;68;0;68p
[ESC][1mFUNCTION KEYS
NOW UNDEFINED[ESC][m
[Again, each of the above pairs of two lines should be on one line, but our format isn't wide enough. -- bhc]
If you become addicted to function key programming, you may want to set up SHIFT function keys. The codes for those start with 0;84 for SHIFT-F1, 0;85 for SHIFT-F2, etc. For CTRL function keys, start with 0;94 for CTRL-F1, 0;95 for CTRL-F2, etc. The ALT function key sequence starts at 0;104 for ALT-F1, 0;105 for ALT-F2, etc.
The Extended Keyboard
For those who own an extended keyboard whith F11 and F12 function keys, try entering 0;133 for F1 and 0;134 for F12. This will work with some XTs and ATs, but others need a patch to drive those keys. For those addicts who must know, SHIFT-F11 is 0;135, SHIFT-F12 is 0;136, CTRL-F11 is 0;137, CTRL-F12 is 0;138, ALT-F11 is 0;139, and ALT-F12 is 0;140.
Patch for F11 and F12
[If your machine won't respond to the values given for F11 and F12, there's a GWBASIC program listed in the original article. For a copy, send a stamped addressed business size envelope to PIP, Box 1674, Chicago 60690.]
CFOG's PIP, April 1990, Volume 9 No. 2, Whole No. 74, page 20
Getting CP/M Disks
Our Vice President and CP/M Disk Librarian, Gerald Pine, has been hard at work for several months, updating the CP/M library. We're pleased to be able to provide to you an updated but not yet annotated, library list, which is included as a "supplement" between pages 8 and 9 of this issue of PIP.
You can make copies of the CP/M (and the MS-DOS) library disks at meetings: if you're coming to Sunday meeting, please try to bring a computer to help out with the disk copying.
Gerald also offers to fill mail orders. For $2 per SSDD Osborne formatted diskette, Gerald will prepare and send you copies of desired diskettes. Any profits will go to CFOG. Make check or money order payable to CFOG. Or, send Gerald blank diskettes and a stamped self-addressed mailer with your order. He will send you the desired library diskettes with no additional charge for processing. The second option is Gerald's preferred option as it relieves him of the need to maintain a stock of mailers and diskettes. It may save you some money as well. For copies of diskettes on other than Osborne SSDD format, please write Gerald with your needs. He'll get back to you about availability and any additional charges. This service is available only to CFOG members. Gerald Pine, 301 South Ashland, LaGrange, IL 60525.