LnSOS BOOT 1.1 SOS.KERNEL SOS KRNLI/O ERRORFILE 'SOS.KERNEL' NOT FOUND%INVALID KERNEL FILE: xةw,@  ȱlmi8#)!) HOW NOT TO SHARE PROGRAMS ALLAN M. BLOO`1k^(!*RTCATALYST|4)!+THREE.WORKS 0=)!2/WORD.JUGGLER.V21 ='!-)PRINT.ALL 0*MENU.MAKER z0&III.BLM.04u' *AC3.INTERPj3)!0%SEG.T j0Ÿ/ DISKNAME.DAT+!&GRABITO 9='!3*HOW.NOT.TO,U'!%%PC400m >dLԡm#i㰼m#iЕOLԡȱfg hi !dLԡ憦  Ljmkm l y`2 Lԡ8(Je稽)ʈ@LM, PhD CDP Institutional Research, Virginia Tech, Blacksburg VA 24061 2303 San Marcos Street, Blacksburg, Virginia 24060 Office: (703) 231-7921 Home: (703) 951-2025 CIS# 76656,1514 BitNet: IR  !"#$%&'()*+,-./tal. That submittal HOW.NOT.TO July 17, 1987 Page 1 Bloom Sharing Programs was a disk. No cover letter. The disk was full of four ASCII and four Pasc The Submittal The author apparently described a very interesting word processing program in a letter to the user group. The group requested a copy for review. Since it was called a PASCAL word processor, I received the submitThe word processor could very well have been a fine program. It was a "damfino" program -- as in "Damfino what it does." Let's look into how the author missed and how he could have presented an actually -- rather than a potentially -- useful product. be more valuable than one crammed with complex, sophisticated, potentially useful software? That is what this article is all about. I said that the software was "potentially" useful. That a program works is certainly necessary, but it is not sufficient. used by himself or herself or by a few close friends. When software is to be shared with others, however, the rules change. I could have gotten more from that program by initializing its diskette and freeing up the storage space. How can a blank diskettembler modules. The program had a wealth of features, it obviously took much effort and ingenuity to write, and the author certainly should have been as proud of it as he was. That praise can be honestly offered to an individual for his or her own programcular example at hand is a huge and complex word processing program. It was called "Pascal Word Processor." The Pascal source code for the main program alone ran 20 pages, and the main program was supported by an extensive infrastructure of Pascal and Asselear solutions to the problems that I point out. I use a real example to add believability. The example was an Apple /// Pascal program, and I use some terms that are specific to that language system, but the concepts I will discuss are general. The partiis article is a review of the way that contributed program was presented. I think this will be instructive, particularly to those who contemplate sharing their programs with others. I intend this article to be constructive criticism, and I try to present c Pournelle has, but I've seen enough, thank you. One arrival was an almost perfect example of how not to submit a program. I'd like to discuss that. A member wrote a program and presented it to the group for consideration. I had the honor to review it. Thun on your system, but just use DDT in the usual way, and I'm sure you'll love it." (September 1983, p 318). I've belonged to several national users group that solicit member software for distribution. I've not been quite as swamped with such things as Dr.s Column," says he gets a lot of programs from people whose idea of documentation is "Here's this program. I use it a lot, so it's easy to use. I like it, and you will, too. It's set up to run on a TzQ-820 terminal running off the Z-79 chip; it might not rBLOOM at VTVM1 Introduction Jerry Pournelle, in his BYTE "User'al TEXT files. Three of the ASCII files had nothing to do with the program in question. The last (named LETTER) was the transmittal letter. The four TEXT files contained the Pascal and Assembler source code for the word processor. The transmittal letter contained instructions for putting the pieces of the word processing package together: assemble these, compile those, link the others, add an intrinsic unit to SYSTEM.LIBRARY. The author added that it is "critical" to "save all these programs on a disc cal. I wasn't about to spend my own money by calling after hours from home. The telephone number should have been included in the letter of transmittal. There should have been an indication of whether it was a home or office number. Best would have been as m Sharing Programs author. The transmittal letter included a return address, but no telephone number. One of the unrelated ASCII files, however, contained a phone number. I called it to no avail during business hoursmunications. The submittal seemed to be so incomplete I was certain that something had been inadvertently omitted. My first thought was to contact the HOW.NOT.TO July 17, 1987 Page 2 Bloom by acting along similar lines. It doesn't take much extra effort, and it is appreciated. More than that, however, the lack of that extra courtesy will annoy someone. Why be annoying? The last first impression returns to that all important category of comd the author included a bootable disk. The local bicycle shop that I frequent assembles and installs everything for its customers. It's good business, and even the mechanically inclined appreciate that little extra. Someone offering a program could do well. My "first" first impression, then, was that the author was not telling me enough and that what he was telling me was poorly presented. My second first impression was "Why on earth do I have to put this thing together?" It would have been a nice touch hahe misspelled words and grammatical errors in the letter. Too many and too obvious. That sort of thing makes the recipient think the sender doesn't care. A few extra minutes to proofread a document can make a big difference in the response to that documentnything else that he might have sent along to the group. Did he send program documentation that somehow wasn't sent me? The author should have specified what was excluded, as well as what was included, in the submittal. Last, and not at all least, were tsphere. Without that receptive atmosphere, communications suffers badly, and "communications" is mostly what this business is all about. Continuing with the transmittal letter, the author mentioned every file that was on the disk, but said nothing about a answer (nothing at all) I was getting annoyed. It is a perfectly awful thing to do to someone, by either accident or design, to open communication in a confusing or annoying way. You have to work at least twice as hard afterwards to get a receptive atmolated. Granted, the file was named LETTER, but READ.ME.FIRST would have been a better name. Wandering through the three unrelated files on the disk was a bit confusing. What did any of this have to do with a Pascal word processor? By the time I found theeless powerful influences. It was a nuisance just finding out what was on the disk. I looked at everything on the disk catalog in sequence, seeing the three unrelated ASCII file documents before getting to the transmittal letter that told me they were unreer had many typographical errors. The author included his return address, but he did not include any telephone numbers or other ways to contact him. First Impressions First impressions can be deceiving, but they are nonethled /PROFILE/PASCAL/." He closed with "Now your Pascal word processor is ready to Execute." Jerry Pournelle, eat your heart out. The letter explained that the three other ASCII files on the disk were articles that the group might wish to publish. The lettany numbers as appropriate, with indications of when the author could be reached at each. Very often, a quick telephone conversation can answer nagging questions. Having to write for clarification left a burr under my saddle for the two weeks it took to get a reply. By facilitating communication, the author would have made a much better impression. I believe you can see how the author erred in the critical "first impression" department. He did not do all that he could to establish or facilitate communicati--------t---------------------------r----- | | + | | | | mised, it was indeed ready to execute, yielding the following screen: | | | ------l----t----t----t------Using(?) the Program I am well aware that my expressed concerns thus far may be viewed as ancillary. Including scanning text files and examining and changing source code, it took me no longer than an hour to install the word processor in my system. As promes. Place special-purpose code in special-purpose locations. HOW.NOT.TO July 17, 1987 Page 3 Bloom Sharing Programs at way. How much extra effort would it have taken to explain the instructions or to have replaced non-general code? When offering a program product for widespread use, never assume anyone else has a system configured as yours or has the same component nay persuasive reason. There is no reason to add his intrinsic unit to SYSTEM.LIBRARY. It is a stand-alone unit used only by this one program. It could as easily have been installed as the program's private library, and the system should have been written thas critical, I'd have felt much better about the whole thing. My next problem dealt with the instruction to add a part of the "Pascal Word Processor" system to SYSTEM.LIBRARY. My SYSTEM.LIBRARY is already huge. Nothing else gets in there without an awfullse the author used common names for his specific purpose. Second, the necessity wasn't there. At least I don't think so. When someone says that something is critical, I have to worry that it just might be. If he had taken the trouble to say why that step wm compilation. Replacing that non-standard listing destination with the standard {$LIST} directive would have been easy, general, and thoughtful. Here was a double nuisance. First one is told that it is necessary to reconfigure one's existing system becauon your own computer. It is bound to screw someone up. It turned out the criticality of "/PROFILE/PASCAL/" was over-rated. In looking through the TEXT files, I saw only a specification of "/PROFILE/PASCAL" for routing the listing file from the main prograolume name. I even had something called "PASCAL" on that disk. Neither is a "reserved word" in the formal sense, but both names are commonly used. Requiring common names for specific uncommon purposes is a no-no when you offer a product for wider use than impossible to follow the assembly and installation instructions to the letter. You will recall that it was "critical" to place the programs on a disk called "/PROFILE/PASCAL/." Huh? Sorry, fella. I already had an on-line hard disk with "/PROFILE" as its vven given the sub-optimal first impressions, I persevered. The transmittal letter did give explicit instructions on installing the word processor, and the least I could do was try to bring the system up. I ran into problems almost immediately. I found itons. What he did establish were several easily avoidable annoyances. I'm certain that none of this was on purpose. Whether on purpose or from thoughtlessness, however, the results were the same. Program Installation Instructions E | | | | | | | | | | | | x=10 y=1 | | response to the "? -->" and that pressing RETURN would give you the "Rules." It was not obvious to me. If circumstances forced being cryptic, the "?" symbol should have been used, not as a prompt (The arrow serves alone), but as a way to ask about the ruland "y" could have been replaced with something meaningful like "Line" and "Column" -- might have been a helpful "Press ESCAPE for commands, ESCAPE-R for the rules." I hit upon ESCAPE by accident. Maybe it should have been obvious that "R" was the default nto the Pascal editor, and started reading the source code for the program. How many users or reviewers would or could go to that trouble? Only by having looked at the code can I suggest improvements here. The rest of that line at the bottom -- where "x" alphabet to add HOW.NOT.TO July 17, 1987 Page 4 Bloom Sharing Programs to an already unexplained screen. At this point, I crashed the program, went i | | x=10 y=1 | | | That explains everything, right? Now we have an unexplained | | | | | | | | | | | | | | -t---------------------------r----- | | + | | | | | | (escape) A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z ? --> R | | | | ------l----t----t----t-------------es are certainly the line and column positions of the cursor. Beyond that, what? What else? Push buttons. Aha! ESCAPE does something. The screen now looks like this: | not quite a tabula rasa. We know that the program is a word processor, and we can make some intelligent guesses. The "l" and "r" on the index line are obviously the left and right margin points. The "t" entries have to be tab settings. The "x" and "y" valuted. I had hoped that it would be an integral part of the system, that my questions would be answered as soon as the program was up and running. To say that the initial screen doesn't communicate much is understatement. To be fair, the initial screen is s "greeting" is something you could wish on a friend, over whose shoulder you are looking at the time. Please don't do it to some stranger a continent away. Ever. There was no documentation included with the submittal, nor was there mention that such exis | OK, I give up. What is this? As they say in the textbooks, the solution is intuitively obvious and is left as an exercise for the reader. So much for my immediate hopes of finding built-in documentation. Thies. It is, after all, an international symbol known to all who drive. When I decoded enough of the program to find out about ESCAPE-R, I learned new dimensions to the word "cryptic." The following is what you get, and all that you get, when you ask the program for its rules. THESE ARE THE 26 ESCAPE CODES AND THEIR MEANINGS A Set # of leading spaces to printer. N Replace occurrences in document B Set pathname prefix. O Omit character at cursor location C Read prefix directory.someone else can use it, it is not functional as shared software. Paying even $5 for a program like this is a waste of money for anyone but a puzzle freak. How could the package have been improved? Part of the answer is simple. Communicate explicitly. Cons is ridiculous for public domain software. The user group would distribute the program at little more than reproduction costs, so user expectations must be limited. While form can be slighted, function cannot be. The program might be terrific, but unless s consistent. He fell down -- in all three categories -- with the transmittal, the installation instructions, and the program's user interface. Nobody expects all the forms to be followed in a case like this. A slickly bound manual with four-color graphicdering why I gave up, why I boggled at a perfectly understandable set of user documentation, why I dismissed an elegant feature-filled program. The answers come down to the same three items: communications, courtesy, thoughtfulness. The program's author wam. HOW.NOT.TO July 17, 1987 Page 5 Bloom Sharing Programs Concluding Remarks There is at least one of you who is wonse English where possible, not the "x" and "y" we found here. Give prompts. Communicate. If real limitations force you to use mnemonics in a screen message, be sure that the user has full-blown descriptions available and that he or she knows how to get theeterate button pusher to proceed. The user interface, the stuff that the user sees on the screen and the things he or she must do, can make or break a program. Most of what I pointed out here would add little effort to that already in a 20-page program. Uble to at least start stumbling around. This had no manual, no tutorial to ease the novice through. The "ESCAPE codes" don't have "meanings." They have mnemonics. There are no explanations to hang the mnemonics on. It is impossible for all but the most invny number of programs that boot with a more cryptic screen. VisiCalc comes immediately to mind. I've seen any number with worse on-line help/hint facilities. All, however, have been accompanied by user documentation. If you read the manual, you should be ahroll?"). At this point I ceased my investigation of the Pascal word processor, looked at my imaginary dog, and said "Toto, I've got the feeling we're not in Kansas any more." Again, the author was thoughtless. Again, he failed to communicate. I've seen acopy, not on disc M Set margins and centering. Z Recover to internal safe copy (Y) The rules seem to use English words, but what do most of them mean? In so little text -- all that a user sees, the mis-spellings are inexcusable (What's a "sc Occurs at top & bottom of screen J Jumping menu to moving cursor. W Toggle cursor location display K Remargin paragraph of cursor. X Delete entire column at cursor L Load a document from the disc. Y Make safe o to (find) in rest of document. T Set or delete a tab at the cursor H Halt menu for skipping about. U Insert entire column at cursor I Insert space at cursor location. V Vault 12 lines or schroll 1 line P Print the loaded document D Delete a document from the disc. Q Quit or clear the screen E Erase the line at the cursor. R See the rules, this F Fit (add) a line at the cursor. S Save the current document G Gsider that what is obvious to you may not be obvious to anyone else. Take the very little extra time to add those thoughtful, courteous touches. Think of the lowest common denominator in system configurations and naming conventions. That adds little to you WORD JUGGLER //e: A Product Review ALLAN M. BLOOM, PhD CDP 2303 San Maeach top-row key in "command" mode. The rest are replacement key caps, the front of each labelled with the key's special control function. Quark provides a key cap puller that allows easy removal of the existing keys. New keys are simply pressed onto the pnhancer card) had to be installed before the software can be used. With Version 2.7, that particular nuisance is eliminated. The only hardware left affects the appearance, but not the function, of the //e. First is a template identifying the function of tructure of a Word Juggler file, useful information for converting to or from other word processor file formats. Installation Word Juggler //e began as a combined software and hardware system. The hardware (a keyboard ehrough system installation and setup and provides an excellent 32-page tutorial. All features and commands are grouped together in a single "Reference" chapter. A separate tab explains Word Juggler's error messages. It even has a tab detailing the inner sbbed for quick reference, and it contains a glossary and an index. The manual was typed using Word Juggler, with sketches and headlines added. It is a real advertisement for the product's capabilities. The manual is adequate. It leads the user logically tual Quark's manuals come in a loose-leaf three-ring binder, a great improvement over the spiral-bound paperboard-covered ones. Loose leaf documents are easy to change, and the plastic binder is much sturdier than paperboard. The Word Juggler manual is tacan detect. The "super" and "sore" designations are my judgments of Tim's design decisions. It is your problem, gentle reader, to balance those points against your own values. Sorry, no free ride. Shall we begin? The Manr Inc.'s "Apple Writer" program. Information is more valuable when it's not presented in a vacuum. I think Word Juggler has super points and sore points. None of those sore points is a bug. Quark's Tim Gill does not produce programs with any errors that I t also supports the "Thunderclock" and "TIME MASTER" cards. Word Juggler is copy protected, and a backup is included. I will describe and evaluate the major features of Word Juggler -- both alone and in context. I will often compare it with Apple Computevailable June 1984) is among the most sophisticated of microcomputer word processing programs, with more capabilities than any individual is likely to exercise. The product uses Apple's ProDOS operating system, so all disk files are Apple /// compatible. Introduction "Word Juggler //e" from Quark, Inc. (2525 W. Evans, Suite 220, Denver, CO 80219) is a word processing program adapted for the Apple //e from "Word Juggler" for the Apple ///. Word Juggler (Version 2.7, a023456789:;<=>?@ABCDEFGHIJKLMrcos Street, Blacksburg, Virginia 24060 Office: (703) 231-7921 Home: (703) 951-2025 Iosts vacated by the others. Instructions are clear and well illustrated. A simple test ensures proper installation. After placing the template and the key caps, you adjust various software WORD.JUGGLER.V2 May 12, 1984 Page 1 Bloom Word Juggler //e parameters for your particular system. Here is one place where Word Juggler just shines. The product goes overboard to use the special features of a particular es, we start on the specially labeled key caps. Sixteen of these are called "Labeled Editing Keys." There WORD.JUGGLER.V2 May 12, 1984 Page 2 Bloom Word Jugg when moving vertically. Removal of the feature in Version 2.7 makes vertical cursor movement as seemingly unpredictable as in Apple Writer. The arrows and such hardly scratch the surface of Word Juggler's editing features. In addition to the above featurnd TAB keys have as many options. The "e,s,d,x" diamond, with the "open apple" key, moves you to the top, left, right, and bottom of the document. I miss the "Up/Down, same column" feature. In previous versions, it kept the cursor in the same screen column editor is full-screen, with more ways to position the cursor than many computers have keys. Cursor movement is by the arrows, alone or in combination with the "open apple" and SHIFT keys for sixteen special effects. That's just the beginning. The RETURN aautomatically handles the conversion. Word Juggler also prints one-up mailing labels easily. Apple Writer requires you to learn Word Processing Language to do any form letter processing. Features: Editing Keys Word Juggler'system. Word Juggler's "form letter" facility is particularly easy to use. In addition to its own defined file type, it can use Quickfile and PFS data files directly. All you have to do is call a "variable" by its Quickfile (or PFS) name, and Word Juggler a word that isn't in the dictionary. The "utilities" procedure has a useful feature. You may load a DOS 3.3 or a Pascal text file into the current document, so that you can use text or data tables produced by another program under a different operating sIt is not as powerful as Apple Speller (Sensible Speller). You may not add words to the main dictionary, and you may only check only one "auxiliary" dictionary. The new version of Lexicheck has a "word guess" feature that presents possible alternatives fores memory, whether you have changed the document or not. Several special-function procedures are available with their own menus. Three procedures are available now: "utilities," "form letter," and "Lexicheck." Lexicheck is the companion spelling checker. N editor command, but it can be a safety feature. Perhaps one should go to some extra bother so that memory isn't wiped out inadvertently. The "new" command warns you if the document in memory has been changed. Apple Writer simply warns you that "new" erasate "utilities" procedure. I would prefer that all operating system commands be together, as in Apple Writer. To erase memory and start a new document, you must leave the editor and use the menu's "new" command. This is more work than Apple Writer's CTRL- permits several ProDOS commands: format a disk, catalog a disk, purge a disk file, load and store files. Other ProDOS commands -- setting the date and time, creating a ProDOS sub-directory, setting the default disk prefix -- must be invoked from the separ: The Menu Word Juggler has a single main menu. You see it when you boot the program, and you can return to it at any time by pressing the "Go to Menu" key (open apple - M). One entry is for system setup and will probably be used only once. The menu alsoprinter. If you've one of the more popular printers, it is a joy to just left/right arrow over the menu to your printer's name and to the printer card you have, and then to set everything up for it with a keystroke. Featuresler //e are separate keys, used with "open apple" and SHIFT, to move, delete, copy, load, and find characters, lines, paragraphs, and blocks of text. It may be a bit much. I'll bet the six "deletes" could be condensed into a single general command. There can be such a thing as too much specialization. I could take all day on each of the features, but most are self evident and rather pedestrian. I was annoyed by the "delete" commands. Each paragraph of text is terminated by a visible solid block, generate Word Juggler //e Juggler is superb for preparing letters of generally recurring content. Features: Print-Out Control Print-out control is generally handled by the top-row keys, activated by pressing ESCAadvertently replace good text. Apple Writer does not have Word Juggler's "one time form letter" capability at all. That feature of Word WORD.JUGGLER.V2 May 12, 1984 Page 3 Bloom ut not enclosed in the special symbols, is printed as is. In Apple Writer anything can be replaced when producing form letters via WPL. This is certainly more flexible than Word Juggler's requirement for specified variables, but it is less safe. You can in Word Juggler will prompt for the replacement value of each variable as it occurs. Replacement is automatic in "form letter." Variables stand out well with the beginning and closing symbols showing inverse. A name that is identical to the variable name, be's name is bracketed by "<" and ">", entered with the "closed apple" key. You may have up to 127 user-defined variables, in addition to the built-in variable PAGE and ten additional built-ins for the current date and time. When simply printing a document,ty, then spit it out where you want it. For moving characters and words about, however, I think I prefer Apple Writer. Features: Variables Word Juggler uses variables that can be replaced by external text tokens. A variabl the cursor to the destination, press SPACE, and the text appears. For blocks of text this is much friendlier than Apple Writer's "gobble and barf" feature, wherein you erase a block of text, hope that you haven't exceeded the insert/delete buffer's capaciing of the block of text you wish to copy or move. Then as you position the cursor to mark the end, the block that will be copied or moved -- as of the current cursor position -- is inverted on the display. When you're happy, mark the end point. Then move and a less predictable, way of implementing partial-document printing than Apple Writer's ".EP 0" and ".EP 1" imbedded commands, I've yet to see it. Top marks here for Word Juggler. The "copy" and "move" features are implemented superbly. Mark the beginnial" option simply means that you don't want to print or display the entire document. You may select a start and end page. This is a standard feature of the mainframe word processor I use, and I miss it terribly in Apple Writer. If there is a more awkward,play. That is a nice feature that Apple Writer doesn't implement. One of my favorite tricks is forgetting to close off an underlined phrase. It is friendly of Word Juggler to let you see something like that before committing a document to paper. The "spec80 characters. Everything stays on its line. If the line is wider than the screen, use the left/right arrows for horizontal scrolling. With the Videx "Ultraterm," you don't even have to do that. Bold and underscored phrases are inverted in the console dis previews your formatted document on the console screen. Here is where Word Juggler wipes the floor with Apple Writer. It knows that it's "printing" to the screen and pauses when the screen fills. It does not wrap around if a formatted line is longer than d by pressing RETURN. To delete a paragraph, you cannot just press "delete paragraph." That erases everything but the marker. Then you must "delete character" to get rid of the marker. My favorite features are "display" and the "special" option. "Display"PE. Most of the commands are self evident and expected. Note that Word Juggler does not have a true "indent" feature. Its "indent" actually indents every line of a paragraph except the first. Apple Writer's "paragraph indent" is nice to have. Word Juggler forces you to tab any desired true indentation. The IF/ELSE/ENDIF/LET commands allow conditional processing of text and assignment of values to variables. You may also imbed printer directing commands, in character or hexadecimal, in the text. The "insertNPQRSTUVWXYZ[\]^_`abcdefghijkn Marcos Street, Blacksburg, Virginia 24060 Office: (703) 231-7921 Home: (703) 951-2025 GRABIT: A Quickfile /// Creation Utility ALLAN M. BLOOM, PhD CDP 2303 Sa that the "keyboard enhancer" card is finally gone. There is no reason for one application to muck with the internals of the computer. That was my major complaint with Word Juggler. I'm WORD.JUGGLER.V2 May 12, 1984 ult in the least harmful of several alternatives. It is too easy to inadvertently request the wrong thing by just pressing RETURN. Consistency isn't always a good idea. Wrap-up OK, what's the bottom line? I delighteds entries for those commands which are little used. Quark opted for consistency in keyboard response. If you press RETURN, it is always the same as saying "yes" to a question. I disagree with the basic philosophy. I believe that pressing RETURN should res permutations can fry your mind. Apple Writer does not have the features of Word Juggler, to be sure, but a single extra key (CONTROL) specifies a word processor command. That has much to commend it. To be fair, Word Juggler only uses the multiple key-pres Quark properly points out that all I have to do to get that capability is buy Word Juggler for the Apple ///. I'm bothered by the various combinations of keystrokes that Word Juggler uses. The OPEN-APPLE, CLOSED-APPLE, SHIFT, and ESCAPE combinations andy a great deal, especially for electronic transmission of formatted documents. Since ProDOS files are directly compatible with SOS files, it would have been nice to prepare a document on my wife's //e for printing with the letter-quality printer on my ///.ns One complaint is that Word Juggler ties you to a printer. A formatted document can be displayed on the console screen, or it can be printed. Period. Apple Writer is more flexible. It can "print" a formatted document to any device. I use that capabilitn the margin. It will then ignore the entry. I wonder at the necessity to specify a start column. It is flexible, but I've never had the need for anything more than left/center/right as a title position. Miscellaneous Impressioits limit of one each top and bottom title. Word Juggler permits as many title lines as you want. Be careful to keep the (line, column) start positions are within the vertical margins. Word Juggler will graciously accept a set of coordinates that are not i In Apple Writer you must load each sub-document in order of appearance and command "continue print" to maintain pagination. The "text at line, column" command falls into the "love it and hate it" category. One of my major complaints with Apple Writer is document" command is a professional feature. A document that is to big to edit at once can be broken up into pieces. Only the first piece needs to be loaded for printing. If it "inserts" subsequent files, "print" or "display" automatically brings them in. INTRODUCTION GRABIT is an easy way to transfer data from other programs into Quickfile /// (Apple Computer Product A3D0020). Quickfile is also one step away from /// Easy Pieces. That most popular of Apple /// ples on the hard disk. Only then is it safe to [L]oad DOCUMENTATION from the GRABIT disk. You may then view or [P]rint it. If you don't have Apple Writer, you may be out of luck. AW "lines" are generally much longer than any screen or printer can display. get your favorite SYS.PRT and SYS.TAB files. The GRABIT disk should, but doesn't, contain those two files that Apple Writer finds utterly necessary. Few people have the version of Apple Writer, designed to run from ProFile, which stores its PRT and TAB fi an Apple Writer file containing GRABIT instructions. GRABIT August 12, 1987 Page 1 Bloom Quickfile Creator If you have Apple Writer, boot it andam is not self explanatory. The disk contains two "extra" files. Puzzle freaks may look at GRABIT.TEXT and try to figure out what the program does from reading the Pascal source code -- all 906 lines of it. Others would be more interested in DOCUMENTATION,ed at little more than reproduction cost. THE GRABIT PACKAGE What does your money get you? Not a slick four-color manual and tutorial, for sure. You get a disk. It boots, but you don't want to boot it immediately. The progrext file from your existing data base in the format that GRABIT needs, you can expand your horizons to the capabilities of Quickfile and /// Easy Pieces. Let's take a good look at GRABIT. Let's not forget, however, that this is public domain software offeret's look at what and how. GRABIT is a utility program that will automatically create Quickfile files from special-format ASCII text files. The special-format files must be produced by other programs or other data base systems. If you can create an ASCII tsing program has its own file structure that no other program can read. Converting files from one format to another is the way that we users can pick and choose how to perform a function, unlimited by the form our data are in. With "why" out of the way, lThose three reasons -- getting data from someone else, converting from one system to another, developing an integrated data processing system -- answer the "why" question for GRABIT and for other interface software. Each commercial data base or file procesve to enter the changes in each file in exactly the same way. It wouldn't take long for the two files to be hopelessly out of sync. Now you can post all changes to Versaform, then convert the file with GRABIT when you want to run the Quickfile function. y Product VS3) data base, and you can see some function that Quickfile would do better than Versaform. Even if you went to the bother of keying all the necessary Versaform data into Quickfile, updating could be a zoo. Whenever a datum changed, you would hadata. You would expend much time and bother, and the re-typing would probably introduce errors and omissions. GRABIT can convert the MLM data for you, quickly and accurately. For another example, say that you have a "Versaform" (Applied Software Technologuickfile ///" system. Or say that you already have an MLM-based mailing list and would like to use the expanded power of Quickfile. Until now, the only way to transfer data between the two systems was manually. You would have to re-key every stitch of MLM rograms can import Quickfile data bases directly. That's nice, I hear you say, but what's it good for? For one example, say that a colleague has "Mail List Manager" (Apple Computer Product A3D0003) and a mailing list that you would love to have in your "QIf you have Pascal, you may use the editor and insert enough carriage returns to see the text to the right of the screen. DOCUMENTATION would be friendlier if it were a formatted Apple Writer output file. Then just about anyone could get to it, if only by using System Utilities to copy it from .D1/DOCUMENTATION to .PRINTER. GRABIT INPUT FORMAT The first thing that DOCUMENTATION tells you is the special form that GRABIT's input file must have. First, it must be an ASCII text awbacks can be overcome with a program from TAU Royalty Disks. MLMASCII converts Mail List Manager files into any number of formats -- Apple Writer, DIF, name=value, and one value per line. The last is exactly what GRABIT needs and will convert the entire data specified as being in the file's "label lines." It will not transfer "comment" lines, label codes, or phone numbers. If you have more than one field per label line, GRABIT will not separate them. One line becomes one Quickfile datum. Many of those drt print margin: 0 Then select "List to Another Printer" and make that other "printer" a disk file, say ".D2/GRABIT.ASCI" or whatever you like. The resulting file is exactly what GRABIT needs. The drawback with MLM is that it will only transfer the ct the Print/Display option and set your print parameters as follows: Height of labels: Same as number of label lines Lines between labels: 0 Width of labels: Same as maximum characters per line. Labels across page: 1 Lefle. The disk file is GRABIT's input. GRABIT August 12, 1987 Page 2 Bloom Quickfile Creator Mail List Manager can print labels to any device. Selexport" file from a columnar report that is exactly what GRABIT needs, one line for each column item and a blank line whenever an item is missing. Simply lay out a columnar report with the data that you want to have in Quickfile. Then export it to a disk fily into Quickfile than to type your own ASCII text file. The two application packages that I've mentioned -- Mail List Manager and Versaform -- can create the necessary file format. So can Keystroke. I suspect that others can, too. Versaform creates an "eg data must have their own lines, as in Example C. How do you create a GRABIT input file? For the example, you can type it via Apple Writer or via the Pascal editor (with environment set to ASCII). In real life, it would be easier to enter the data directiles do not always have all data items entered for all records, however, and you could wind up with something like Example B, no street address for Joe Smith and no company name for Tom Brown. GRABIT will create garbage from the Example B file. Even missin----------- --------------- Example A shows data from two other-file records to be converted into Quickfile format, with six complete data items per record group. It is the same as "Example 1" in the GRABIT documentation. F City Street State Street City Zip Code City State --------------- State Zip Code Zip Code ---- City City State City State Zip Code State Zip Code Tom Brown Zip Code Tom Brown Street Tom Brown IBMonopoly Company Example B Example C --------------- --------------- --------------- Joe Smith Joe Smith Joe Smith Company Three Company Three Company Three Street file. Second, each Quickfile datum must be on its own line (be followed by a carriage return). Each record group must have the same number of lines. Look at the following input files, designed to produce two Quickfile records of six items: Example A contents of an MLM record. The program was written by my favorite programmer, and modesty forbids further discussion of that truly wonderful program. PFS can create an ASCII text file by "printing to disk." However, its ASCII text format doesn't honor blank data fields, giving you the "Example B" kind of ASCII file. PFS can also create a "name:value" file that does honor blank data fields. Using something like the TAU Public Domain Library program NVASCI (again by that prolific super programmer that modestIT output to an existing Quickfile disk or directory. Once you get past Message B, you're asked the number of "categories" per record (Message C). In the preceding example input file, there were six lines for each record group, so you would enter the------ This is not the most meaningful way of conveying a message, but you should get the picture. If you say "Y" you will destroy each and every Quickfile entry in the referenced directory. This is generally not what you have in mind. You cannot add GRAB, the message area tells you ------------------------------------------------- directory/QF.FC already exists. Do you want to destroy it (Y/N) ? -------------------------------------------his is very important. GRABIT produces two files for each input file, named QF.FC and QFF.A. Because the names are always the same, you must have a unique directory for each file conversion. If you specify a directory that already contains a Quickfile fileA. Either enter the SOS pathname of the GRABIT input file or press RETURN to exit the program. If you make an error, the message area tells you so, and you get another chance. Then GRABIT asks the pathname of the directory for the output file. Ther list GRABIT August 12, 1987 Page 3 Bloom Quickfile Creator all of the authors or none of them. The program begins and ends with Message {} | | | The top title is always there. During dull moments one is left to wonder just who wrote the program that Mr. Llewellyn modified. C'mon, guys. Eit--------------------------------------------------------| |A: Enter full pathname for input file, to exit. {} | |B: Enter DIRECTORY pathname for output file. {} | |C: Enter number of categories per record. | | Message Area | | | | | |------------------ewellyn 10/14/83 | |==========================================================================| | | | Apple /// Software Division | | 1850 Union St. #494 | | San Francisco 94123 | | Modified by Jonathan G. R. LL | | | QUICK FILE /// Copy Utility | | Business Apple Group, Inc. | | y on your ProFile. GRABIT uses the same output file names, so each output file must have its own diskette or ProFile sub-directory. When you boot GRABIT, the following screen appears: y forbids naming) will convert a "name:value" file into an ASCII text file that is perfect for GRABIT. GRABIT PROCESSING Before booting GRABIT, you need the input file and either a formatted blank diskette or a sub-director digit "6" and press RETURN. If you enter a number greater than 15, you'll get beeped. The documentation really should have told you about that limitation, but it is the Quickfile maximum. At this point, the message area starts displaying a line of dots, the traditional method of letting you know that something is happening. When the program is finished processing the input file, you return to Message A, where you are given the option of converting another input file. This is not as wewith twice the capacity per drive, for $495 (one drive) or $595 (two drives). A "mix 'n match" 400/800 combination sells for $575. This review concentrates on the "PcDisk-400" and the accompanying "PC Copy" program for file transfer es the Apple /// access to a 400K disk drive but also lets the Apple /// read and write files on an IBM PC disk. The system is called "PcDisk-400" and sells for $450 (one drive) or $550 (two drives). DA also sells a "PcDisk-800" big brother INTRODUCTION DA DataSystems (3792 Windover Drive, Hamburg NY 14075) has just marketed an intriguing new tool for the Apple /// -- a combined hardware and software system that not only givlnopqrstuvwxyz{|}~ch, Blacksburg, VA 24061 2303 San Marcos Street, Blacksburg, Virginia 24060 Office: (703) 231-7921 Home: (703) 951-2025 CompuServe [76656,1514] PcDisk-400 and PC-Copy DS/DD Apple /// Drive With PC File Transfer ALLAN M. BLOOM, PhD CDP Institutional Research, Virginia Tenar display. GRABIT August 12, 1987 Page 4 Bloom Quickfile Creator Don't panic. Nothing is wrong. Prove it by "zooming in" on a record, and you'll in, you'll see a columnar list of what GRABIT converted, with each column headed by "FIELD A," "FIELD B," etc. If the file you were converting had some long data values, you will see truncation -- to fifteen characters -- in the Quickfile columis meaningless to anything but Quickfile. So go to the expert, right? Boot Quickfile and see what you've got. When you point Quickfile to the right disk or directory, you'll see one entry, for something called "Converted File." That's it. When you bring itme a Quickfile record. A friendly program would let you know if the file length were not an exact multiple of "x". GRABIT OUTPUT You can't tell much about GRABIT's output directly. It is a disk file in a format that pelessly out of sync. If the input were a Pascal text file, instead of an ASCII text file, you would get a whole lot of garbage from the text file's header block. GRABIT just grabs "x" input lines at a time and assumes that each set of "x" lines is to becould have the courtesy to tell you how many it actually did create. The program also doesn't tell you if you have a "long" or "short" file. If you inadvertently had one extra, or one missing, line of data in the input file, the output will be holl and good as it may appear. The program knows (or should know) some things that it isn't telling you. For one, it doesn't tell you how many Quickfile records it created. This is a key datum. You know how many records you wanted to create. The program shobetween the Apple /// and an IBM PC. DA claims no ability to format a PC disk or to do any PC-side file operations (delete, rename, etc). DA warns you that transferring a file does not imply transforming a file. Don't expect to transfer a /// Easy Pieces data base to the PC and have it be directly usable by DBase III. It is like saying all Apple /// files are SOS compatible, but don't expect Omnis /// to read a /// Easy Pieces data base directly. PC-Copy works with PC(MS) DOSyour existing driver file. Avoid the temptation to re-name the driver(s) from DC3A (and DC3B) to something meaningful. PC-Copy 1.39 only works with a device named DC3A. A forthcoming revision will change that. The DC3A driver can be adjusted another slot, you have just a little more work to do. Now you install the SOS driver on your boot disk(s). Nothing to it, if you are comfortable with the System Utilities "System Configuration Program" (SCP). Just add the supplied DC3.DRIVER to he power cord into a standard outlet and you plug the ribbon cable into the interface card. DA's instructions are clear and simple. If you plug the interface card into Slot 2, you've very little work to do. If you plug your interface card into mode. Then I'll talk about transferring files. INSTALLING THE HARDWARE AND SYSTEM SOFTWARE The "iron" comes in two parts: (1) a disk drive enclosure from which trail a ribbon cable and a power cord, and (2) an interface card. You plug tit. The innards of a transferred file are the same as the innards of the source file. That can cause headaches. Let's look at PcDisk-400 in detail. I'll start with the hardware and system software, then move on to operations in Apple /// native r improvement. If you only want high capacity disks to use with your Apple ///, buy it. If you want to use the PcDisk-400 for transferring files between an Apple /// and a PC, you should heed DA's warning that transferring a file does not transform in suspense. Here is my evaluation. In native Apple /// mode, the hardware (drive and interface card) and the SOS driver seem to work perfectly. The accompanying PC-Copy program is pretty slick. However it has a few bugs, and it has room fo. A half-height TEAC drive stands on its side in the left half of the box. The right half is a dummy UPDATE Notes 12/25/89 June 29, 1986 Page 2 panel that would otherwise hold the second drive unit. I won't keep you to standard 140K disks. None of those planned uses required two PcDisk-400 drives. I purchased the one-drive version of PcDisk-400. It comes in the same size box as the two-drive system -- 3.5 inches wide by 6.25 inches high by 13 inches deeprsonal computers. A new capability! My version of KERMIT only transfers text files. The second intended use was for ProFile backup in Apple /// native mode. Backing up a ProFile onto 400K disks just has to be less of a chore than backing it up on EBCDIC and and personal computer ASCII codes don't map well for some special characters. Brackets and braces and vertical bars are particular bugaboos. Even better, PcDisk-400 held promise for transferring data files between the home and office pensfer the data at 1200 baud via KERMIT to the mainframe. File transfer between the mainframe and the PC-3270 is lightning fast via co-ax cable connection. Further, using the mainframe as an intermediary caused some garbling of text. Mainframe n I ordered the system. Foremost was improved ability to exchange files between my home Apple /// and my office computers (IBM PC-3270 and IBM VM/CMS mainframe). For some text file transfers, it's faster to drive a disk to the office than to tra disks, versions 1.x through 2.x, single or double sided. PC-Copy will handle no more than 56 files on a PC/MS-DOS disk, and it will not handle DOS sub-directories. PC-Copy only works with PcDisk-400. I had specific uses for PcDisk-400 in mind whefor non-standard needs via the driver's "configuration block" entries. DA's manual provides no information on what those entries mean. If you, like me, bought the one-drive version of PcDisk, upgrade to the two-drive version is easy. Just buy another TEAC model 55B drive (or equivalent) and plug it in. The hardware and system software are already configured and prepared for two drives. NATIVE MODE OPERATION Once your PcDisk-400 is installed, treat it like any other App disk. Then you should check your defaults. PC-Copy defaults to having the Apple UPDATE Notes 12/25/89 June 29, 1986 Page 4 /// source or destination as a disk in D1. It defaults to adding an "A3" suffix to files cothat, it works fine. PC-COPY: General Features Invoking PC-Copy leads you through some eye-bending graphics before you get to the main command menu. You must first "log in" the PC disk. It takes about a minute to log in thehe "Catalyst Automatic Install" that is just a wee bit incompatible with BASIC 1.23. Simple fix. After using the auto-install, invoke System Utilities and file copy BB 1.23's SOS.INTERP over the one Catalyst's install procedure created. After id Catalyst had never been able to invoke a BASIC program, and who cares about Apple ///'s anyway. With that support, Apple /// vendors have a special obligation to tell users how to install their products under Catalyst. UPDATE 12-25-79: It is tto type RUN HELLO to activate PC-Copy. DA claims to be able to invoke PC-Copy directly from the Catalyst menu, with the same stuff I have, so maybe I'm wrong. I asked Quark (Catalyst's maker) about running BASIC programs under Catalyst. A man sa Catalyst and Selector /// installation instructions. It would be friendly to tell the user that Catalyst (2.0 at least) cannot invoke a BASIC program from its menu. Even with the best Catalyst installation, you get the BASIC prompt and have ibuted on paper. I was disappointed in the too-brief "Use with Catalyst" section. The manual says PC-Copy will run under Catalyst as a BASIC program under Business BASIC version 1.23 (supplied on the disk). I would prefer seeing explicit the concept of a "manual on a disk." I'd prefer to see a manual printing program on the disk that printed to your printer with pages that don't cross the page perfs and with a user-selectable left margin. DA says that future manuals will be distr complete with page headers and footers. The manual's 18 total pages can be printed via the System Utilities program. Simply copy USER.MANUAL.PT1 and USER.MANUAL.PT2 to PRINTER. The manual prints with no left margin. I've no quarrel with n an Apple /// and a PC via the PC-Copy program. Let's look at that program. PC-COPY: The Manual PC-Copy 1.39 comes on a "flippy" disk. Side one is the boot disk. Side two contains the user manual as two ASCII text files,revious backup took 26 standard disks. I was falling in love with PcDisk-400. I've yet to find a native-mode application under which PcDisk-400 does not perform superbly. For me, however, the key to PcDisk-400 is its ability to exchange files betweehout a whimper UPDATE Notes 12/25/89 June 29, 1986 Page 3 prior to doing its thing. My ProFile -- filled to some two-thirds capacity -- was backed up onto nine disks. Nine! I thought I'd died and gone to heaven. The pking to format anything bigger than a standard 140K Disk /// volume. Then I tried backing up my ProFile. Backup /// was perfectly content to have DC3A as the destination volume. I put blank DS/DD disks into DC3A, and Backup /// formatted each witle /// disk drive. The first thing I did was to format a disk in it. System Utilities barely burped. It noted that I asked to format a high capacity device and asked whether I was sure I wanted to do so. The warning and request always occur when aspied from the Apple /// and a "PC" suffix to files copied from a PC disk. Files copied from a PC disk are flagged as binary files by default. You may change those defaults via the main menu, for a full session. You then select the direction of transfer, A3-to-PC or PC-to-A3. The program then presents you with a numbered list of the files in the source directory and asks which files to copy. The PC disk in DC3A is always the PC-side source or destination. The Apple /// source or destinat alphabet. The characters in text files are organized into lines... The boundaries between lines are marked with the ASCII characters carriage-return, which is CHR$(13), and line-feed, which is CHR$(10) ... One element that is univep two bytes each. PC-COPY: Transferring Text Files Text is probably the most general thing that can be transferred. Within limits. Peter Norton describes this "universal" format as a file of "ordinary characters, like letters of the | The only modification a Turbo Pascal program needs to read those data records is adding a second "char" field after the first. PC character data take one byte each. Apple /// Pascal characters take u sc ascii: integer; | | sc max: integer; | | sc flip: packed array [1..506] of 0..255;| | end; | | | | type sign ch = record | | sc char: char; | UPDATE Notes 12/25/89 June 29, 1986 Page 5 | interest to programmers. For example, I usably transferred an Apple /// Pascal non-text data file to the PC. The file was structured in 512K blocks, like so: | ed for both the Apple /// and the PC (as both PFS:File and Filing Assistant). With modest file modification (DA has a program to do so at nominal charge), a PFS file can be transferred and used. There are other exceptions, perhaps mostly of a lot of things. As Peter Norton says in his book "Inside the IBM PC," text is as close to a universal format as exists in the personal computer world. There are exceptions to the "text only" rule of thumb. For example, PFS has been implementng Data Files In general, the only files that you can usably transfer between a PC and an Apple /// are "text" (human readable) files. Note that I said "usably." PC-Copy will transfer anything. Whether the result is useful or not depends one main menu. If you do, PC-Copy will just take off and make the copies. If you invoke that option, you give up control. You deserve whatever PC-Copy does to or for you. I can't imagine ever using that feature. PC-COPY: Transferriopy will pause with each batch file to be copied and ask what the destination file name should be. For a PC-to-A3 transfer, it will also ask the destination file's SOS filetype. You may defeat those prompts via the "toggle pauses" option on thAS" string. That option will also get a file name "PASQUALE.DTA," so be careful of the characters you use in the "partial match" option. Selecting several source-directory files to copy is called "batch processing." Under normal circumstances, PC-Cu may select specific files by number -- one number or several separated by commas. You may select all listed files by entering "*" (asterisk). You may select files via the "partial match" option, say all PC "PAS" suffix files by entering the "=Pion is whatever you specified on the main menu. If you forgot to specify an Apple /// directory, ESCAPE back to the main menu and correct your oversight. You may select one or several or all files in the source directory to be copied. Yorsal to all ASCII files is the end-of-file marker, which is code CHR$(26)." Mr Norton is not quite correct as to "universality," but he is close. The differences among various text file formats are small. You could reasonably expect to transfer program source code, listings, and other text files in usable format. You should not expect to transfer BASIC programs directly, but you should be able to save the program as an ASCII file, transfer it, and import the ASCII file intsferred. At the end of transferring a PC file to the Apple ///, PC-Copy asks how to "flag" the result in the SOS directory. That SOS "file type" flag is applied to the file AFTER it has been transferred. PC-Copy does not ask about file type whr of an Apple /// ASCII or PasData text file to a PC disk. No matter what a Pascal Text file looks like via Pascal editor, it is a different animal entirely. PC-Copy transfers files by blocks and pays no attention to the type of file being traniter file that is "printed" to disk with CR=1 is a perfect match with IBM's definition of a text file. Each "line" is terminated by a carriage return AND a line feed. That CR/LF combination is the key to a generally utile transfeault "A3" suffix to "DIF" for Lotus' Translate utility to recognize it. An Apple /// ASCII or PasData text file is very similar to Peter Norton's "universal" text file. Its "lines" are, in general, separated by only carriage returns. An Apple Wrk screen. The Turbo editor crashed on the PasText file. The PCX editor did the same thing. KEDIT, however, was happy with all but PasText. I tried loading the DIF file into Lotus 123 (1A) and SuperCalc3. Neither worked. I changed the DIF file's def I then tried to edit the files with the Turbo Pascal editor. Again, the Apple Writer "print" file was fine. On the ASCII and DIF and PasData text files, Turbo burped a lot, filled the screen with carriage returns, then presented me with a blan University mainframe. Again, the Apple Writer "print file" worked. The ASCII and DIF and PasData text files were transferred badly. Lines ran together with imbedded unprintable carriage return characters. The PasText file blew both systems.. The Apple Writer "print" file was fine. The DIF and ASCII and PasData files all listed in a single line at the bottom of the screen. The PasText file blew "more" out of the water. I tried my PC-3270's "send" command to transfer the files to theesult to my office Piece of Chunk. The PC was only really happy with the "printed" Apple Writer file. I first looked at the transferred files with the DOS "more" UPDATE Notes 12/25/89 June 29, 1986 Page 6 command"printed" ASCII file from Apple Writer, an ASCII DIF file created by /// EZ Pieces, a Pascal Data file that was "printed" from a Pascal program, and a Pascal Text file. PC-Copy transferred them to the PcDisk-400 without a murmur. I took the r directly (say into a /// Easy Pieces spreadsheet). Nonsense. You still have to edit out the control characters first. PC-Copy is both more and less apt at sending Apple /// files to the PcDisk-400. I tested five file formats -- an ASCII file, a . Editing out the two kinds of control characters is a whole lot easier than editing out the various garbage I often find when using the mainframe as an A3-PC intermediary. DA claims that PC DIF files (say from Lotus 1-2-3) can be importedle may or may not be terminated by a "Control-Z" character (Norton's CHR$(26)). It isn't hard to use an editor (Apple Writer, Pascal, etc) to remove those control characters. It is an extra step. I wish PC-Copy would take care of it automaticallyo the other computer's BASIC interpreter. PC-Copy is at its second best when importing a PC file into an Apple /// SOS directory. The imported file needs work. Each line of the file is followed by a "Control-J" (line feed) character. The fien copying from Apple /// to a file on PcDisk-400. PC-Copy just copies blocks of magnetism. PC-Copy will not strip "line feeds" from a PC text file, nor will it add "line feeds" to an Apple /// ASCII, DIF, or PasData text file. It won't convert a UCSD PasText to an ASCII text file. DA's manual is almost explicit in forswearing any intent to do so. PC-Copy could be more helpful. The definitions for the various general form Apple /// and PC text files are clear and simple. Text file transfet is like an ASCII file's. I copied a PasData text file to a PC disk. I read it back and told PC-Copy to flag it as an ASCII file. Apple Writer read it. UPDATE Notes 12/25/89 June 29, 1986 Page 8 I don't like the programing to do with whether its associated file is structured appropriately. The type is set AFTER the file has been transferred. I found a neat use for that feature. Apple Writer will not read a PasData text file, even though its internal forma PC-COPY: Random Thoughts The DC3 controller card is heat sensitive. If you have a lot of slots in use, consider a cooling fan of some stripe. The proferred Apple /// file type choices for imported files can mess you up. The "file type" has nothe appeared in the list of files available for transfer to an Apple ///. I called attention to those bugs. DA assures me that they will disappear before I finish this review. UPDATE 12-25-89: Those bugs are still there in 1.41. -Z" in files transferred to the Apple that needs edited out. PC-COPY: Bugs I found two bugs in PC-Copy 1.39. One was that a PC file name could be in lower case, and thus useless. Another was that the PC's volume nam handle the CR/LF incompatibility between IBM and Apple text file formats. DA did, however, forget about the "Ctrl-Z" that ends every IBM text file. No IBM-side program cares about the missing "Ctrl-Z" but there is an extraneous "Ctrle /// and a PC/MS-DOS disk in DC3A. It isn't as elegant as I'd like. You generally must go through at least one extra step to make the conversion complete. UPDATE 12-25-89: DA's "filter" programs in version 1.41 handle PFS conversion and mostly PC programs, editors, and word processors will not choke if the line feed isn't at the end of each text line. They are exceptions. All PC programs will accept text files with CR/LF line terminators. PC-Copy will copy files between an Appl each text INFILE line and write the same thing to a text OUTFILE. Apparently Turbo Pascal is very forgiving. If you want a copy of the program, send me three bucks for the disk and the mailer and the postage, and I'll send it to you. Some heck it with the PC/MS-DOS "more" command. PasData or other ASCII files need more processing. You can write a very simple PC program to convert them into files that make sense to the PC. I use a Turbo Pascal program that does nothing but read or via some special program, before transferring the file. You can't even usably transfer an Apple PasText file to IBM's UCSD Pascal system. PC-Copy only works with DOS disks. If the ASCII file matches PC specs for a text file, fine. You can cal Text file conversion to Norton's UPDATE Notes 12/25/89 June 29, 1986 Page 7 "universal" text file format. No way. You must convert a PasText file to an ASCII file, via the Pascal Editor's "set environment" command format, but I would like to see it transfer a PC DIF file to an Apple /// DIF file that is directly usable by an Apple /// spread sheet or data base program. Want to know how to deal with Apple /// files copied to the PcDisk-400? Forget Pascr will probably be the most common use of PC-Copy. I'd like to see PC-Copy handle those common transformations automatically or with a short query to the user. I would not expect PC-Copy to convert a WordStar file to Apple Writer not warning you if your output file name already exists on a destination PC disk. The program does warn you about an existing file on a destination Apple /// directory. PC-Copy often must shorten an Apple /// file name to fit PC constraints. It is too easy to inadvertently over-write a favorite file in an A3-to-PC transfer. I wish PC-Copy's defaults were user selectable. I tend to use my .PROFILE/COPY directory as the source and destination for file transfers. I tend to copy I>X200300S=1:D=1:B=1570D$=""500 Y=X:S=ED$(D)=D$:640 X=Y440D=D+1:S=E:440D=D-1:X=0F$(X):X=0 J=1D D$=D$(J)790&J0 :œ6303DE=S+1:N$,S,1)=" "N$,S,1)=","S=S+1:580%Nž#2390 ^1000c: h#2;a$ma$rY=1150:Y0wB=B+1: Count the number of lines printed xB=15B=30355yB=60#3;12)zB=60B=1 {#3;a$|360B<=20#3;13)::410#3;12):Z=11000:ZI I=3d: PRINTER V. 1.0 ::=2::"PRINT.ALL v. 1.0":3=4:"Directory Name(s) or return to quit: ";n$N$)=0::"MENU.MAKER"430 X>0260I=11000:I:200: ,I=1X 14000 6#2,F$(I)@#3,".PRINTER" JEAD PASCAL TEXT FILES."04=10:"78C";"ANY KEY RETURNS TO THE MENU."!>G$:::".D1/MENU.MAKER",320R",220(204::"79A";""; 2D=1:F=1 <#4;a$ FD=D+1 P#5;a$ZD=60#5;12)dD=60D=1nF=F+1::d$;::Y=1100:Y x13402  CATCH PASCAL TEXT FILES 202 :F*=08:"78C";"SORRY BUT MENU.MAKER CAN'T R".D1/MENU.MAKER",220 d$="" A$="PRINTING "+B$(I),16,B)=01:=0::"80C";A$;:#3,B$(I),16,B)Z=1#3;b$:"78A";b$Z=Z+1:Z=18:1290 1260 #4,B$(I),16,B)#5,".PRINTER"+ž#4#5;12):::".D1/MENU.MAKE30C$="N"C$="n"1160;:=23:=0::"79C";"PRESS ANY KEY TO HALT LISTING": $1020.202 8::Z=1B::=23:=0::"79C";"WOULD YOU LIKE A PRINTED COPY?":1C$:C$<>"Y"C$<>"y"C$<>"N"C$<>"n"1170*C$="N"C$="n"79C";"PRESS ANY KEY TO HALT LISTING"::202 1020#2,B$(I),16,B)ž#242:::1160Z=1#2;A$:"78A";A$Z=Z+1:Z>1842:::Z=1980*:=23:=0::"79C";"CONTINUE...?":1C$:C$<>"Y"C$<>"y"C$<>"N"C$<>"n"10 MENU.MAKER TEXT MODULESEG=0"MENU.MAKER"890&*X=11000: TEXT SLOW-DOWN LOOP ,X.1,180,22:2,280,21:2,2380,23:z:A$="LISTING "+B$(I),16,B)$=01:=0::"80C";A$;::12)>=23:=0::"only ASCII files. I have to change the PC-Copy defaults to my own defaults every time I invoke the program. A separate file of my default values would be a thoughtful feature. DA agrees with that suggestion and will look into implementinT$=N$,E,1):T$=" "T$=","610XE=E+1:E>N$)610:590bD$=N$,S,E-S)l:v:E>S+1600:D$="": œ770P=3:"Looking for ";34);D$;34);" directory." #1,D$=P3:"Reading from ";34);D$;34);" directory." ž#1740#1;A$:A$)<4710A$,3,4)="TEXT"X=X+1710 :X>YN=P::7);"There are no text files in the ";34);D$;34);" directory." ::I=P::7);"Unable to locate and open ";34);D$;34);" directory." ::II);v:520: 500THPOS=4:I/2=I/2)I=I-1I=IBOTM THPOS=44:I/2<>I/2)I=I+1I2=-1:I=I-2:IBOTM<30THPOS=44I=IBOTM/2)*2:=+IBOTM/2)-1:0"PRINT.ALL": OA+P 3HA=(81+UCA)A=(81+LCA):::: OA+Q Quits 3IA=(83+LCA)A=(83+UCA)"PRINT.SHOW": OA+S 2JA=(68+LCA)A=(68+UCA)/Screen.Savers/HELLON=THPOS:B$(I);XA<8A>11540bA-7640,660,690,720l:=THPOS:B$(00 =Q:WW=0A=:A=21A=9&oldprefix$=40A=31410: Control C "aborts" program to Basic(:A=13770: Return Selects a file *DA=27:50: Escape to change disks/FA=324000: back out one directory level 3GA=(80+UCA)A=(80+LCA)SIC 0":150A$="TEXT 0":150A$="CAT 0":150A$="FONT 0":150A$="FOTO 0":150A$(L),"BLOCKS")510*=27:=19:"FREE MEMORY AVAILABLE: ";=7:=20:"80C";A$(L);$:=5:THPOS=4:I=1:IBOTM=J-1:620Q=:=26:=21:16; +Q Quits."r12);::"80C";a$;:+w#9,"DISKNAME.DAT":#9;DISKNAME$:#9|d$=DISKNAME$$=23:=0::"80C";d$;::12)201M=3:=14:"This /// SIG Disk is \^ 19";Р,2)", Washington Apple `, Ltd."=4:B$(1)="":B$(2)=""A$="BA16,B) THEN 240 #1, d$="":=10:"80C";d$ ž#1300I=0"I=I+1:#1;A$(I):290,#1 6L=I-1@j=1:same=0 J:SEG=0 Tœ2030^CT<1CT=1:CT>13000Zha$="{,|,~,}; selects; to new disk; J/2)=4:=+1:ۙ=44B$(J);:J=J+1I:1,180,22:2,280,21:2,2380,23:8A$(1000),B$(1000),C%(511),C$(20),name$(20):=10:=0UCA=128:LCA=UCA+32CT=15 IF PREFIX$= PREFIX$+MID$(B$(I),VOLUME NAME (/DISKNAME) OR DEVICE NAME (.Dx)"P12);::"80C";a$;:Zb$="CHANGING DISKS"$d=23:=0::"80C";b$;::12).n=12:=20:"MAKE A NEW MENU FOR DISK: ";N$xN$)<2110=N$ :210 I=1L(A$(I),A$))200B$0 WAP /// SIG MENU.MAKER PROGRAM (v. 6.2) =".D1"210: Coldstart (320: Warmstart &*X=11000: TEXT SLOW-DOWN LOOP ,X.1 CHANGE DISK SUBROUTINE23œ202:2200<RFa$=" YOU MAY SELECT YOUR DISK BY 2010C$="N"C$="n"200;:=23:=0::"79C";"PRESS ANY KEY TO HALT LISTING": 20002,280,21 DF$(I)=D$+"/DISKNAME.DAT"F$(I)=D$+"/FLASHNAME.DAT"410:ۺ310 PRINTER v 1.0 p$ 900A$="PRINTING"+F$(I):$=01:=0::"80C";A$;::12)F=23:=0::"79C";"PRESS ANY KEY TO HALT PRINTING"::2,280,21 2000*:=23:=0::"79C";"CONTINUE...?":1C$:C$<>"Y"C$<>"y"C$<>"N"C$<>"n"#1,D$::"Processing directory ";34);D$;34);", please wait."; ž#1880*#1;A$:A$)<48104A$,3,4)<>"TEXT"810>X=X+1:".";HE=15:F$=A$,16,15)RF$,E,1)=" "E=E-1:850\F$(X)=D$+"/"+F$,E)f810p:  Pause=+IBOTM/2-.5):I=IBOTM:I/2=I/2)I=I-1 œ2120B=B$(I),16)," ")-1 B$(I),"BASIC 0")850B$(I),"TEXT 0")890 B$(I),"CAT 0")1140*B$(I),"FONT 0")18504B$(I),"FOTO 0")1930>B$(I),"PASTXT 0")2070H540R\A$="RUNNING "+B$(I),16,B)f"79C";A$;:=0pB$(I),16,B) z::SEG=1".D1/SEG.T"t=+B$(I),16,B) yCT=CT+1~240:=24:=0:"@ ..... "DATE.TIME.LINE" ....JM=Ҡ,4,2))BTM1630,1640,1650,166eeping track of any "miscellaneous" uncategorized amount. I've been known to pay cash for things I want to track by category. I would like to have an automatic transfer to a "cash" account. A "CASH' category on a check would automatically WISH LIST I often write checks that cover multiple categories. I would like to be able to enter a check with a "MULT" category and be able to enter up to maybe ten different categories and amounts, with the program automatically k or print them on an 80-column printer whose SOS device driver is named .PRINTER. You may request monthly, quarterly, or annual reports. You must request "merging" of different accounts in order to get a consolidated report. the target account and enter the date, transaction code, memo, and amount. When you are ready to print one of the three available reports (Check Register, Check Codes, Checks by Code), you may either display said reports on the console screen December 17, 1986 - 3 The up-to-ten accounts are not linked. You may not automatically transfer money between accounts. You must debit the source account. Then you must switch to ciliation" from the main menu and press "Y" for every check or deposit that has cleared. When you are through, CB3 presents you with a summary reconciliation that you may view or print. If your account is out of balance, just edit and re-reconcile. ust have the same number and date. You must ensure that the logical check amounts add to the total that you actually wrote on the check. Otherwise you won't be in balance. Check reconciliation is simplicity itself. You select "recona$,1)="/"5060:s=s-1 5030=a$240 MENU.MAKER 6.2 * Thanks to C.M.Davidson for his help! G$:::320H: Error Routine 202:U=11:"79C";"BAD PATH ERROR (NO DISK IN DISK DRIVE OR DESIRED FILE NOT FOUND.)"X=11000:X:::210Z a$="{,|,~,}; selects; back 1 level;1600 &:WW=1:0 :SEG=1;".D1/S EG.F" SEG=1".D1/SEG.G"diskname$=3802  CATCH PASCAL TEXT FILES 202 :F*=08:"78C";"SORRY BUT MENU.MAKER CAN'T READ PASCAL TEXT FILES."04=10:"78C"NOVEMBER":1750M$="DECEMBER":1750826);"-";M$;" ";Ѡ,2));", ";"19";Р,2);" ";/П,2))=>13П,2))-12;џ,6);:1780$П,2))=0"12";џ,6);:ٟ;$П,2))=>12" PM-":" AM-" 1830WW=1530 =26:=21 0,1670,1680,1690,1700,1710,1720,1730,1740^M$="JANUARY":1750hM$="FEBRUARY":1750rM$="MARCH":1750|M$="APRIL":1750M$="MAY":1750M$="JUNE":1750M$="JULY":1750M$="AUGUST":1750M$="SEPTEMBER":1750M$="OCTOBER":1750M$= create a "deposit" entry in the special "cash" account. The cash account would be special in that it would not have to balance. Any out-of-balance funds would be automatically assigned to a "miscellaneous" expense category. A transfer to another real account might be handled by a "TRnn" transaction code, where "nn" is the number (01 through 10) of the other account. If I write a check for $200, I would like to be able to enter "200" in a checkbook program. If I write a ch therefore, has given me the full-screen editing capabilities (including all 12 PF keys) that I enjoy with my direct connected IBM 327x terminal in the office. I have used and liked Access /// since receiving Version 1.0 with my /// in eas IBM 3090 mainframe computer. The mainframe has a "front end" processor that allows acceptable dial-in terminals to pretend that they are IBM 327x coax-connected units. A VT-100 is acceptable. My home Apple /// with Access ///'s VT-100 emulation,ike a "Brand X" ASCII terminal. Access ///'s emulation of the ubiquitous DEC VT-100 terminal is its major selling point from my perspective. Its VT-100 emulation is even better than advertised. I use my /// as a terminal dealing with my university'has always been my favorite Apple /// communications program. I've seen most of the other data communications programs. Save for NEXUS (a Tektronix graphics terminal emulator that may have never seen distribution) they make the /// behave las asleep, but the next version I saw was 3.2x -- the Access /// Interpreter. I got my copy in 1984 from Ray Wilfinger, the self styled Cupertino Black Hole. Access /// Interpreter is currently available from WAP as disk 3TEL-02. Access /// came with plain black wrapper documentation that was too obviously typed rather than typeset? Apple, Inc, was not long in taking Access /// to its own bosom. August 1982's Version 1.1 was a purely Apple product. I hadn't realized that I w Access /// was the first of the Apple /// data communications programs. It began life as an "other vendor supplied" Special Delivery Software product in 1981. Do you remember "SDS" programs, the disks that  61 2303 San Marcos Street, Blacksburg, Virginia 24060 Office: (703) 231-7921 Home: (703) 951-2025 CIS: 76656,1514 BitNet: IRBLOOM at VTVM1 ACCESS /// INTERPRETER ALLAN M. BLOOM, PhD CDP Institutional Research, Virginia Tech, Blacksburg, VA 240at flexibility. THE BOTTOM LINE Any 'personal finance" program is going to require a certain amount of duplicative effort. You are going to have a detailed paper trail in your real check register, yes? A checkbook proity with a letter quality printer or with a carriage wider than 80 columns. I suspect that others use a print spooler or "print" to disk. The /// is powerfully flexible in this regard, and I would like to see programs take advantage of theck for $15.10, I would like to be able to enter "15.1" into the program. I think a financial program should know about decimal points and cents. I would like to see support of a "general" printer. I suspect I'm not the only member of the /// communrly 1982. Let's look at its latest incarnation. FEATURES So what is new and different about Access /// Interpreter? A bunch. As an interpreter, it boots a whole lot faster than its predecessors. As an interpreter, it is not dependent on having another interpreter (BASIC or Pascal) present. Access /// Interpreter has some new and different options. In the setup menu, there are no longer options for Application Keypad and Normal Cursor Keys. They were a promise you will be unpleasantly surprised. As I said, the accompanying documentation only describes the changes to the product that were made to Version 3.2x. You NEED the original (1.0) and the incremental 1.1 documentation to make sense ofing that I'd missed anything in the interim. I must have missed something, but whatever it was does not seem to have been major. I have been able to live without it. What about the rest of y'all? If you are a new purchaser of Access ///, I"they" also assumes you have any idea what happened between 1.1 and 3.2x. Data communications is very important to me. I keep in touch as well as I can. I have the Access /// 1.0 and 1.1 documentation. The 3.2x documentation did not leave me feelNo matter the medium of the documentation, that ubiquitous "they" assumes you already have (1) the Version 1.0 manual and (2) the Apple Tech Notes (1750.990, August 25, 1982) that describe the 1.1 changes to the original version. That amorphous 2-cpi printer. If you have a 10-cpi 8-inch-wide printer, you may need to do some editing of the DOC file before the printed copy looks right. In any event, the magazine's two-sided printed documentation starts you out that much ahead of the game. documentation of the "command file" feature. The magazine may also give you paper copy of that documentation, at least with the review copy I received. It is no major inconvenience to print the 20 pages of documentation if you have a 1at the package in detail, starting with opening the box. WHAT YOU GET What you get, from THE /// MAGAZINE or from the TAU or WAP user group, is a disk. On the disk is the documentation specific to version 3.2 -- mostly ust be text files, and you must be prepared to accept that a certain amount of garbage may sneak into each transferred file. I believe I've described the new features of Access /// Interpreter, and its continuing non-feature. Let's look e talking about Hayes as a "standard," I appreciate that feature. There is also a non-feature. This version of Access /// is the same as its predecessors in having NO error-free file transfer protocol. If you want to send or receive files, they marly powerful. Most other communications programs are keyed to the "standard" Hayes command set. An Access /// command file does not depend on having a Hayes-compatible modem. Since I got my Racal/Vadic 3451PA triple modem before folks wer successfully called your favorite communications service, your command file can sense that stimulus and send the log-on sequence. A command file is a program, a set of instructions to the computer. The Access /// command files are particul involved in communicating with your favorite data communications service. A command file can tell Access /// how to respond to certain stimuli. For example, if your modem gives you a CONNECT message after it has t console screen is "printed" to your current recording file. Perhaps foremost, Access /// Interpreter has "command files." A command file is a play script that can automate the dogwork December 17, 1986 - 1 mong my favorite useless features in previous versions. The program now lets you set the size of your data capture (Recording File) buffer, via the setup menu. The program gives you a screen printing capability. Press openapple-P and the curren what you have in 3.2x. The documentation accompanying Version 3.2x is inadequate for describing the complete Access /// program. Frank Moore and his PAIR SOFTWARE to the rescue. For another 15 bucks, you can get the predecessor manuals. Simply order #5302 December 17, 1986 - 2 (Access /// 1.1 Program with manual and 1.1 notes). OK, so you get an extra disk -- for Version 1.1 of Access ///. The documentatitch, I go back to XX.UNUSED and start the process again. I also get in trouble with multi-line host messages. I've sometimes found it best to tell Access /// to look for a unique string in the first line to see how Access /// should respond. .UNUSED. Then I erase any XX command file December 17, 1986 - 3 that exists in the interpreter's directory. Then I copy XX.UNUSED to XX as the working command file. If there is a glib for command file creation. I only use a new or an unchanged command file. I key to a host-computer stimulus on the first line of a multi-line message. When developing or changing a command file, I work with an Apple Writer file named XX is a bore. I programmed a command file to handle it. It is great to get all that garbage taken care of by invoking a command file's name. I hate developing a command file. Things that should work might work. I've developed some rules of thumo call the telenet number, tell Telenet -- but only when asked -- your shoe size and terminal type and that you want CompuServe. Then CompuServe asks you a bunch of questions to which you must respond precisely. Two separate log-on sequences. Itr will give you the normal Access /// main menu screen. I have a love-hate relationship with Access /// command files. They can be terrific. For example, I have a heavy CompuServe habit. Local access to CompuServe is through Telenet. You have tn 3.2x sees a file named ACCESS.CMD within its immediate purview, it will execute it as the default command file. Just delete the ACCESS.CMD file (or re-name it) to get rid of the advertising. Then booting, or invoking, Access /// Interprete /// that you have already grown to love. If your boot disk (or hard disk directory under Catalyst) has the ACCESS.CMD file that comes with the 3.2x distribution disk, you will see an advertisement for the wonders of 3.2x command files. If Versioom SOS.DRIVER into its very own ACS3FONT file. Then you can tell Catalyst to use it when Access /// is invoked. USING ACCESS /// INTERPRETER Access /// Interpreter can be no more than a faster way of invoking the Access the previously existing ACS3FONT. Otherwise, you may still be OK. You can get the special font file from the 3.2x boot disk's SOS.DRIVER file. If you have something like the public domain FONT CAPTURE program, you can extract that character font fr That font is imbedded in the distribution disk's SOS.DRIVER file. Do not over-write that SOS.DRIVER file with your own favorite until you have that character font. If you have previously installed Access /// on your hard disk, you can use e given in Appendix "L" of the 3.2x documentation. Installation can be a challenge. Version 3.2x, like its predecessors, needs a special character font named ACS3FONT. That special font is not on the distribution disk as a special font file.l drivers to the distribution disk's SOS.DRIVER file, not copy over it. CATALYST INSTALLATION You can install Access /// Interpreter on your hard disk with an intelligent program selector like Catalyst. The instructions aron alone is worth the price. The Access /// Interpreter disk should be bootable and usable once you configure the SOS.DRIVER file to your particular system -- to get your own PRINTER and RS232 and whatever drivers. You should add your speciaAt other times, I can successfully tell Access /// to wait until it sees a last-line string before responding. There are inexplicable cases. A straight CompuServe dial-up starts with sending a CTRL-C upon connection with the service. I could never get my command file to send a CTRL-C that CompuServe would recognize. I eventually just entered that key combination myself at that point in the script. Calling CompuServe through TeleNet requires sending a RETURN to TeleNet upon initApple /// from day one through December 1987 -- takes up the biggest chunk. After that, THREE WORKS gets very varied. There are annotated lists of Apple /// terms, SOS completion codes (fatal and non fatal), monitor commands, file types, BASIC peeks and pormat. And I mean full. I could not save the two Word Processor files to disk after modifying them for my printer. The "useful information" cannot be readily pigeonholed, although the Apple /// bibliography -- an annotated list of articles referencing the onably low. I suggest that you buy it, lest Dave ask his cousin Vito to break your kneecaps. Let me try to describe THREE WORKS in a nutshell. It is eight disk sides full of useful information related to the Apple /// in "/// E-Z Pieces" (EZP) data base foesn't have something about the /// you need, you maybe don't need your Apple ///. You're going to have to watch me during this review. I really like THREE WORKS. I fear I will gush over it. I fear I have already gushed. It is a good product, priced unreas user group and real-life producer for Cable News Network and all around good guy, has a new (June 1988) edition of THREE WORKS, what he calls "a living record of the Apple /// Community." As has been said, THREE WORKS is an Apple /// encyclopedia. If it d  2303 San Marcos Street, Blacksburg, VA 24060 Office: (703) 231-7921 Home: (703) 951-2025 CIS 76656,1514 BitNet IRBLOOM at VTVM1 David Ottalini, co-chair of the Apple /// section of the Washington Apple Pi THREE WORKS ALLAN M. BLOOM, PhD CDP Institutional Research, Virginia Tech, Blacksburg VA 24061 es chanting many naughty words. If you persevere, you will probably find a ritual that works for you. THE BOTTOM LINE Access /// is an excellent ASCII terminal. Further, it provides awfully good emulation of the ubiquitreader, are at or below my skills, you may find yourself no different from a New Zealand aborigine when creating (or modifying) and using an Access /// command file. You will respond with ritual. You will find that said ritual involvantly amazed by some colleagues who calmly claim mastery of Access /// command files. Are they lying? Are they smarter than I am? Are they in on something that I have not yet devined and that they have not shared? I dunno. If you, gentle ommand file rules of thumb and kluges come from my imperfect understanding of the command file processor. The documentation does not lend itself to understanding. I see weird/random results. I behave ritualistically. I am constial connection. I could not get TeleNet to recognize a RETURN. I put two RETURN's back to back in the command file. It works. I am reminded of the psychology maxim that random reinforcement leads to ritualized behavior. I suspect that my various cokes, BASIC keywords, books and clubs and periodicals and vendors past and present, the latest versions of programs and device drivers, addresses of firms that still repair Apple ///'s, public domain programs and their sources, consultants and their specialties, contents of the CompuServe Apple /// libraries. WHAT YOU GET AND WHAT YOU NEED The eight disk sides contain 37 EZP files, two Word Processor and 35 Data Base files. The THREE.WORKS WP file on disk side one is a seven-page ialog any time. Without bothering to bring the catalog into your desktop. If you have hard disk space to spare and put all the THREE WORKS files there, you don't need the catalog file in any form. EZP's catalog (list of files) facility will tell you everytheve. Access is not as quick, but I cherish my hard disk space. There's an even better way. If you have ON THREE's The Desktop Manager, put the WP version of the file on your disk. Then invoke TDM's "File View" (Super Accessories Disk #2) to look at the cathrough articles and books trying to find a particular topic. I keep the four bibliography files on my hard disk for quick and easy access. I keep copies of the other 33 files handy on floppy disk, with the printed catalog stuffed into the first disk's sleORKS topics are in separate files, so you need not wade through everything to see the topic you're interested in. My main interest is the bibliography. I have a lot of the stuff printed about the Apple /// over the years, so much that it is a drag paging tve. WHAT I THINK I think THREE WORKS is too much. I doubt any single person would care about all the files on the eight disk sides, much as no one cares about every article in Encyclopaedia Britannica. The various THREE W's documentation speak for itself. If you aren't fond of the EZP manual, buy the Campbell & Redden book "Working With Apple Works" (Hayden, ISBN 0-8104-6759-3). It's my favorite. Just watch out for the Apple Works features that its older brother doesn't ha to use THREE WORKS. Oops, I'm gushing again. Sorry about that. Because THREE WORKS consists of EZP subfiles, the user documentation is mainly a brief paragraph on the contents of each file. The author assumes you know how to use EZP and lets that programsers. I suggest that THREE WORKS is so useful that you might want to buy /// E-Z THREE.WORKS June 30, 1988 Page 1 Bloom Three Works Pieces juste THREE WORKS consists of EZP files, you need /// EZ Pieces to use it. This also implies a minimum 256K system unit and two disk drives -- one of which may be a high capacity hard disk. If you don't have EZP, you are in the distinct minority of Apple /// u price low, so there is little excuse for piracy. Considering the amount of work he put into THREE WORKS, screwing him out of his tiny royalty would be at best tacky. Also despicable. Besides, Cousin Vito might find out. It shouldn't need saying, but sincrams and how to get them. I'm sure I missed something. Let's just add "et cetera" to be safe. THREE WORKS is not copy protected, and the author begs you to back up the four "flippy" disks onto eight single-sided volumes. He also notes that he has kept thepairs. The BASIC programmer can find a list of BASIC keywords and a list of peeks and pokes and calls. There are files of all known commercial programs and devices drivers, plus the latest version numbers of each. There are also lists of public domain progone for each year thereafter. There are additional files for Apple /// books, periodicals, clubs, and bulletin boards. At the system level are files of monitor commands, error codes, file types, a glossary of Apple /// terms, and a list of firms that do rentroduction to THREE WORKS. The other WP file is a two-page catalog of the disks, with its contents duplicated in a DB file if you prefer an on-line table of contents. THREE WORKS contains four Apple /// bibliography files, one for 1980 through 1984, and ing that the THREE WORKS catalog does. THREE WORKS covers a wide variety of Apple /// topics, but it does not cover everything. If you looked only at THREE WORKS, you might assume that the Apple /// supported only the Business BASIC programming language. There are no sections on Assembler, COBOL, Forth, Fortran, or Pascal. Dave is pretty sure those programming languages exist, but he doesn't know anything about them. He doesn't know much about SOS calls either. He does not devote specific sections to them.o much in 1987. There is only so much that can be displayed on an 80-column screen. The article titles are truncated on the display so the rest of the basic bibliographic data can be displayed -- publication, date, volume, and issue. There is more. You ge-----------------------| | Type entry or use * commands *-? for Help | | | The "column-format" view doesn't tell you much, except maybe that BLOOM showed up tohere From Here: Number 12 Chr TAUTALES Dec 6 3 | | On The Trail of the Apple /// WAP Journal Feb 9 2 | | Disk /// Backup for the Apple /// WAP Journal Nov 9 11 | |-----------------------------------------------ES Aug 5 11 | | Getting There From Here: Number 9: Mai TAUTALES Sep 5 12 | | Getting There From Here: Number 10: Pu TAUTALES Oct 6 1 | | Getting There From Here: Number 11: DI TAUTALES Nov 6 2 | | Getting TThere from Here: Number 4: The TAUTALES Apr 5 7 | | Getting There from Here: Number 6: II TAUTALES Jun 5 9 | | Getting There From Here: Number 7: Int TAUTALES Jul 5 10 | | Getting There From Here: Number 8: Wir TAUTALLES Dec 6 3 | | Getting There From Here: Number 1: We' TAUTALES Jan 5 4 | | Getting There from Here: Number 2: Bri TAUTALES Feb 5 5 | | Getting There from Here: Number 3: Me TAUTALES Mar 5 6 | | Getting MAGAZINE MONTH VOL NO | |======================================================================| | From BASIC to Pascal On Three Mar 4 3 | | Things to Come TAUTA | THREE.WORKS June 30, 1988 Page 2 Bloom Three Works | | | TITLE FIND RECORDS Esc: Review/Add/Change | | | | Find all records that contain BLOOM | | Press @-F to change Find. looks about like the Figure 1 example. Figure 1 | | | File: APPLE3.BIB.87 l can be. He is awfully good. Let's see an example. Figure 1 is an example of the 1987 "bibliography" data base. I admit that I requested EZP to find (openapple-F) all occurrences of the last name of my favorite author. That eccentricity aside, each file the text in the scribble space is good, you can use the EZP "find" command to select all records that match the particular topic you are interested in. I've found that Dave is particularly good at annotating THREE WORKS records. He is not perfect. No mortailes or the CompuServe data library files, a title is probably not enough to really pin down its contents. The annotations that Dave put in the "scribble space" of each data base record are the keys to finding an article of interest on any given topic. If He does reference them in the annotated bibliography. I keep saying "annotated" when talking about THREE WORKS files. That is the real key to their being useful. Every word in an EZP data base record can be searched for. In the case of the bibliography ft a hint that there is more to see because the keyword BLOOM isn't on the screen anywhere. It has to be in the record somewhere, yes? You're sure when you zoom in (openapple-Z) on a record, as in Figure 2. THREE.WORKS June 30, 1988 Page 3 Bloom Three Works Figure 2 REE WORKS versions are in the ever-so-useful EZP DB format already. There is a special frustration in searching the bibliography files. You look for references for a topic of intense personal interest. You find a mother lode of references on that topic. Efiles. He copied the file synopses verbatim as posted by the original contributors. BTW (That's "by the way" in CompuSpeak), it is a whole lot cheaper to get the contents of the data libraries via THREE WORKS than to download them yourself. Besides, the THways leaf through a data base file sequentially in "zoom out" mode. It will also help with your keyword selection. You'll see what kinds of words Dave tends to use to mean what kinds of things. Don't blame Dave for the keywords in the CompuServe library search, you have to know half the answer before you can ask the question. You tell EZP to look for a keyword related to a topic. If it is a good keyword, you get one or more references. If the keyword isn't any good, you get frustrated. Remember you can als. In "zoom" mode, you can page through a file (or a "found" subset) to see what all is there. Just press openapple-downarrow to see the next record, or you can back up a screen with openapple-uparrow. This is a normal EZP feature. As with any "keyword" e value of Dave's annotations. You certainly would never guess from the title that the PFS mail/merge program MERGE /// was in that article. Never assume what you see on the column-format is all there is to a THREE WORKS file. Zoom in to get all the goodieype entry or use * commands *-? for Help | | | As you can see, the full record contains much more than you see in the default column format. And you can see th | | -: - | | -: - | |----------------------------------------------------------------------| | TISSUE: 12 YEAR: 1987 | | | | NOTE: Bridge programs revisited: Mail List Manager (MLM) Utilities, | | -: Merge ///. | | | | PG(S): 6-7 MONTH: September COLLECTION: - | | VOL: 5 DAY: - | | | | MAGAZINE/NEWSLETTER: TAUTALES | | AUTHOR: Bloom | | SUBJECT: Column B09 | | | |======================================================================| | TITLE: Getting There From Here: Number 9: Mail Call | || Find all records that contain BLOOM | | Press @-F to change Find. | | | | Record 67 of 384 | | | File: APPLE3.BIB.87 FIND RECORDS Esc: Review/Add/Change | | | very one of those references is out of print. Unavailable. The publisher no longer exists. What THREE WORKS doesn't tell you is there is at least one person in the Apple /// community who does have a copy of that article or that program. There is nothing in THREE WORKS that says who to yell at to get what you need. I have a modest suggestion. Write or call Dave. His address and home phone are in the documentation. In THREE.WORKS June 30, 1988 Page 4 Bloom /// community, among his many significant contributions. He unlocked Catalyst. At least he unlocked the "Catalyst run-time system," the stuff a Catalyst user needs for his or her daily booting. If you have Catalyst 2.0 or 2.1, you can now do ng it" -- whatever "it" is. I've no idea what the problem was, but a "Catalyst Load Failure" message was the inevitable result of using a copy too long. Then Mel Astrahan made what may be his most significant contribution yet to the, 3E=02, use a virgin or degaussed disk as the target, pray for reasonable drive speeds). I began to make Catalyst run-time disks from my "official" Catalyst boot disk. Each Catalyst boot disk copy lasted maybe six months before somehow "losiot last forever. The prospects were frightening. The prospects might have been frightening, but they were not fatal. I had learned that COPY II PLUS (Version 4.4) would sometimes make a bootable copy of my Catalyst 2.0 master disk (Sync Quark stopped supporting the Apple /// version of Catalyst. Oh naughtyword. What was a sincere user to do? If one's Catalyst master disk went far-away-bye-bye, would the backup disk last forever? Why should it? The master, after all, did nsed my "official" Catalyst boot disk, kept my "official" backup disk in a steel safe two miles away, and hoped. I hoped that, if the master disk failed, the backup disk would work until I could get a replacement master from Quark. Thene it. My only gripe about Catalyst over the years has been that the fine folks at Quark (Catalyst's maker) chose to copy protect their product. When you depend on a product, you worry about the effects of a trashed disk. For years I u(or other high capacity disk) and the Catalyst program selector makes the /// rank above even sliced bread and peanut butter on my list of all time favorite things. I've been a Catalyst user since day one (My Catalyst's serial number is 177), and I likno secret that the Apple /// is the most sophisticated and powerful 8-bit computer ever made. The hardware design, the operating system, and the "Selectric standard" keyboard blow the doors off the competition. The added combination of a ProFile 24061 2303 San Marcos Street, Blacksburg, Virginia 24060 Office: (703) 231-7921 Home: (703) 951-2025 CIS: 76656,1514 BitNet: IRBLOOM at VTVM1 It is CATALYST RUN-TIME SYSTEM ALLAN M. BLOOM, PhD CDP Institutional Research, Virginia Tech, Blacksburg, VA Three Works the first place, he's a collector. His files probably have what you want. In the second place, he is buddies with a lot of other collectors. A CompuServe note from him will probably tyour routine booting with a disk that System Utilities will copy. No worries. You can make as many copies of your normal Catalyst boot disk as you want. This is a review of Dr. Astrahan's Catalyst Run-Time System (RTCAT). I suspect that you, gentle reader, have already devined my overall impression. I like it. Among the roses, however, are some thorns. Dr. Mel has not presented us with a perfect product, and it will not meet everyone's wildest fantasies. Dec NORMAL USE After you have copied your own Catalyst boot disk SOS.DRIVER file to the RTCAT disk, you will probably have no troubles booting and using your Catalyst system from the RTCAT boot disk. The only diinue reading this review. With any kind of luck, I'll cover all the significant bases. My experience has been that I will step into every trap there is, whether set or not. December 26, 1986 - 3 on disk. That's what I did. If I can't trust my best judgement, why should you? If you want to mess with the product minimally, the magazine's version is for you. If you want to delve a little deeper into the subject, look into the TAU disk. Or contl. Based on my experience, you only need four files on the RTCAT boot disk, no matter where you got it. Keep the SOS.KERNEL, SOS.DRIVER, SOS.INTERP, and CAT files. Erase everything else. To be safe, do same only to a copy of your distributist SOS.DRIVER to work. The magazine's distribution disk has a few extraneous files, too. I have no idea what the CONTROL data file or the NEW1 through NEW6 SOS files are for. I deleted them, and RTCAT worked perfectly. As near as I can telCatalyst and a bunch of files that will let you "free" your own Catalyst as in the original article. TAU doesn't say so, but installation of its disk is the same as for the magazine's. It is a boot disk that needs only your favorite Catalyells a boot disk. As Frank Moore says, simply install your Catalyst's SOS.DRIVER on the disk and use it. TAU sells a two-sided disk (one for version 2.0 and the other for 2.1) that includes Mel Astrahan's original article on "freeing" ners may read on, but I claim no responsibility for any items that aren't self explanatory. WHAT YOU GET You get a disk. What is on the disk depends on whether you get it from THE /// MAGAZINE or from TAU. The magazine sith an unprotected run-time system, those problems go away. Think about it, guys. This review assumes that you are a legitimate Catalyst owner and know all the terms. RTCAT is, after all, only for those who already have Catalyst. You non-owloper's stake in original program sales, seems to be a valuable lesson. Developers, take note. You can have a copy protected "full" system and a non-protected run-time system. Many of your user problems are due to copy protection, yes? W by Sun Systems of Logan Utah (Call 1-800-821-3221 and have your masterplastic card ready) for $99, $75 if purchased with an Apple /// system. Mel Astrahan's unlocking of the Catalyst run-time system, without compromising the program deve2.0 or 2.1, to make use of RTCAT. RTCAT does not come with the required Catalyst installation and setup files. RTCAT can only be used by those who have purchased the full Catalyst system. The full system is currently (December 1986) being sold it as disk 052 to members at its usual PDS price. CAVEAT RTCAT is very definitely NOT a cheap way to get Catalyst or a way around the copyright laws of these United States. You must already have Catalyst, Version ember 26, 1986 - 2 On the other hand, Dr. Mel isn't making a cent from his efforts. He has released RTCAT to the public domain. THE /// MAGAZINE sells it (#5806, $15 + $1 S&H). TAU (Third Apple Users Group) sells fference you will probably notice is that you boot lots faster than under your "official" Catalyst boot disk. It seems that a lot of the boot time used by the copy protected Catalyst involved checking to see that it was properly copy protected. This is not to say that you never need to worry about your Catalyst system or that RTCAT will handle everything. RTCAT is only great. It isn't a panacea. There may be problems with installing new software, and there may be problems with s) and re-invoked Catalyst's automatic installation procedures for PFS products from within RTCAT. Both PFS programs worked fine afterwards. Now why did that happen? I looked. I compared my hard disk PFS modules that worked under RTCAT with those double-apple ESCAPE to the Catalyst main menu, but I could do nothing with PFS. The fix was simple. I re-installed PFS after booting with RTCAT. I re-copied my original PFS disks (COPY II PLUS 4.4, copy disk, put write protect tabs on the copieple Writer (2.0) and Advanced VisiCalc began life protected, but they have since been replaced by the unlocked versions from TAU. The first time I invoked PFS (File or Report, take your pick) from RTCAT, I was greeted by a blank screen. I couldalyst under which it was installed. If you boot with a different Catalyst disk, you will fall upon interesting times. The effective serial number of RTCAT is zero. I've only two pieces of copy protected software -- PFS and KeyStroke. My Apsincere about being Catalyzed, its installed modules on your ProFile (or other high capacity disk) will be December 26, 1986 - 4 equally sincere about the serial number of the Catf original software copy protection. If the software was not copy protected, it was not sinere about being Catalyzed. If the software was copy protected, it was probably very sincere about being installed under Catalyst. If a program was EVOUSLY INSTALLED SOFTWARE The most serious potential problems are with previously installed programs or interpreters that were sincere about being "Catalyzed," about being installed under Catalyst. Sincerity seems to be a function o boot disk to install new software. If you are already at $2000, just respond with "N" to any request to recalculate that minimum for newly installed software. This is the least of the potential problems with RTCAT. RUNNING PR be safe. In any event, you MUST decline any recalculation for software that you install under RTCAT. This is a problem with a simple solution. If your "minimum load address" has not yet reached $2000, you must use your original, official, Catalyst $2000 already, feel perfectly free to decline the offer to recalculate the minimum interpreter load address. If not, you might want to take a chance and decline minimum recalculation. Back up your hard disk before taking that chance, just toll your new software with your official Catalyst boot disk. You may not answer "Y" to the "recalculate minimum interpreter load adress" question with RTCAT. If you do, the program blows up. That could ruin your whole day. If your minimum isoad address. If your existing minimum is "$2000," don't worry about it. That is the absolute minimum. If your existing minimum is already at the absolute minimum, you can use RTCAT to install any new program or interpreter. If not, you must instave no problems with new program installation under RTCAT. However, Catalyst has this thing called a minimum interpreter load address. Whenever you add an item to Catalyst's menu, you are asked if you want to recalculate that minimum interpreter lsoftware that was installed under your "official" Catalyst. Let's look at those possible problem areas. INSTALLING NEW PROGRAMS If you have already installed every "interpreter" under Catalyst that you ever care to, you'll hapreviously installed modules that did not work under RTCAT. They were the same, save for one two-byte integer in each code file. The previously installed modules had "177" in those two bytes (the serial number of my official Catalyst). The newly working modules had zeroes in those two bytes, the effective serial number of RTCAT. As I said, PFS and its protected brethren are sincere about the serial number of the Catalyst under which they were installed. I asked Dr. Astrahan if claims to do various text file transformations in addition to file transfer. I understand, however, that Apple Turnover is limited to the most "vanilla" of IBM PC systems. I will use PcDisk-400 and PC-Copy. I know how to avoid or get around Pour PC has a free slot, you might investigate the Apple Turnover card (Vertex Systems, 6022 W Pico Blvd, Los Angeles CA 90035, about $300) that reads, writes, and FORMATS Apple disks (including SOS format) with standard PC drives. Vertex // in native mode applications. I suspect the 800K version is equally superb. You say you can't get an A-143 anymore, Bunky? DA's PC-Disk might be a solution. DA had a great idea for A3/PC file transfer. I'd like to see the idea expanded upon. If y or DA's PcDisk-800. Unidisk uses 3.5 inch micro floppies, and PcDisk-800 needs "quad density" disks. PcDisk-400 is a good middle way. THE BOTTOM LINE As I said, PcDisk-400 is great as a DS/DD 400K drive for the Apple /g it. UPDATE 12-25-89: Default file type implemented in 1.41. I like the fact that PcDisk-400 uses standard 5-1/4 inch DS/DD disks. The only realistic competition for higher capacity Apple /// disk drives is On Three's 800K "Unidisk 3.5," s a good product. A few mods could make it a nifty one. tes me. It cries for so very few and very minor modifications. The documentation should be readable by someone without Apple Writer. It should list the program's design limitations. The program shoul The documentation should be readable by someone without Apple Writer. It should list the program's design limitations. The program should tell the user if record counts are hooey or if it encountered non-character data. Messages should be in English. It iIT is a valuable addition to the software available for the Apple ///. If you have the felt need for its function, buy it. It is certainly better than most public domain software, but it frustrates me. It cries for so very few and very minor modifications. see that all the data are there. Use Quickfile commands to adjust column-display specs as necessary. Also rename the file and the "FIELD x" identifiers to something meaningful. Then you're done. CONCLUDING REMARKS GRABREVIEWS BY BLOOM ry to make a copy of my software before installing it under Catalyst. Then I can simply re-format the Catalyzed installed disk. If you did not install a copy of your software, you can "un-Catalyze" your previously "Catalyzed" disks with the FIay a program installed under a particular Catalyst would continue to function normally under RTCAT. Mel has not yet responded to that request. If you have a previously installed copy protected program, you may have to re-install it under RTCAT. I t he could perhaps add an installation option to RTCAT that would give the run-time disk the same serial number as one's official, store bought, Catalyst. That way an RTCAT boot disk would be indistinguishable from the store-bought version. That wC-Copy's quirks. The system lets me do things faster. And I can transfer more types of files more easily than ever. I fear that the more casual user may not be able to take full advantage of this potentially marvelous tool. The extra steps generally needed to usably transfer text files may involve tools that he or she doesn't have. es, and FORMATS Apple disks (including SOS format) with standard PC drives. Vertex claims to do various text file transformations in additioXER Public Domain program available from the /// MAGAZINE and from TAU. Once you have un-Catalyzed your disks, you can re-install them under RTCAT. THE BOTTOM LINE On balance, Mel Astrahan's "Catalyst Run Time System" (RTCAe 30, 1988 Page 5 ile, in addition to adding the 1987 bibliography. Buy it. I'd say that even if Cousin Vito weren't looking over my shoulder. THREE.WORKS JunS that every Apple /// user could benefit from having it. It is so cheap that no Apple /// user needs to be without it. That is some kind of cost/benefit ratio, yes? If you have the original THREE WORKS, consider that Dave has reworked and improved every furn up someone who has the article you want. If that works, please be a sweetie and at least reimburse copying and mailing costs. THE BOTTOM LINE What can I say? There is so much good information consolidated in THREE WORKrse. Buy it. December 17, 1986 - 4 rything else is worse. Buy it. December 17, 1986 - 4 le processing is at best flighty. With all its problems, how do I rate the program? It is the best Apple /// general purpose communications program I've seen. Maybe it isn't great. Maybe it could stand major improvements. Everything else is wo graphics output on your screen. Access /// still does not include any error-free file transfer protocols. You cannot send or receive a "binary" file. You cannot send or receive a text file with guaranteed accuracy. Further, Access /// command fious DEC VT-100 terminal for communications applications that use the special VT-100 features. Don't expect graphics. The VT-100 is not a graphics terminal. You cannot log on to your favorite mainframe, invoke SASGRAPH or whatever, and expect to see be happy with the product. December 17, 1986 - 4 n a more gentle manner. CB3 works, within its limits. I trust I've given you enough information to decide whether you will be happy with the product. December 17, 1986 - 4 reconciliation is an automatic process. That feature alone could save a marriage. The report on "Checks by Category" can save you a whole lot of grief come tax time. I think CB3 could operate more effectively and trap user errors igram by necessity requires you to duplicate much of your real paper entries. It can't make such transcription easy, but it should give you a lot of goodies in return for your duplicative effort. CB3's return on your investment is twofold. Checkn to file transfer. I understand, however, that Apple Turnover is limited to the most "vanilla" of IBM PC systems. I will use PcDisk-400 and PC-Copy. I know how to avoid or get around PC-Copy's quirks. The system lets me do things faster. And T) may be the best thing that has happened to Apple /// since Apple (and everyone else) dropped support for my favorite personal computer. If you have a ProFile (or other high capacity disk) and if you have the Catalyst (2.0 or 2.1) system, you owe it to yourself to get RTCAT. I would very much like to see Dr. Astrahan, or anyone else for that matter, create an upgrade that gives an RTCAT boot disk the same serial number as one's original Catalyst. That would solve a lot of problems. That d May 12, 1984 Page 5 tiple document printing is a breeze. Single and multiple form letters are a snap. I find it hard to say anything but "buy it." t "buy it." WORD.JUGGLER.V2 has many absolutely super features, available nowhere else. Printer set-up is a joy. Moving blocks of text is a delight. Print-out control commands show in English. Pre-viewing a formatted document on the screen is the best I've ever seen. Partial and mul permutation" problem should be re-thought. I'd like to see the page title mechanism idiot-proofed and streamlined. Menus could be re-designed. Lexicheck's dictionary mechanism could be improved. Small potatoes, right? On the "hosanna" front, Word Juggler Page 4 Bloom Word Juggler //e left with minor gripes and major hosannas. The biggest of the minor gripes is that Word Juggler will not "print" a formatted document to a disk. The "many control-key t. HOW.NOT.TO July 17, 1987 Page 6 hat tested your ingenuity to its limits, but that is not enough if you desire to share that program with others. You must follow a superset of the golden rule. Don't just do unto others as you would have others do unto you. Do unto others nicer than that. ion might consume more time than the author could justify. In that event, he might best have kept the program to himself and his friends. As I said at the outset, your program can be an intellectual delight, a complex and sophisticated set of algorithms texample free. You must document the minimum that is required for an absolute stranger to understand what the program does and how to make the program do it. In the example presented here, necessary documentation would be extensive. Writing that documentat in Pascal and Assembler, it would take most folks longer to figure out what this program did than the exercise would be worth. I don't care how little a potential user values his or her time, buying a commercial package would be cheaper than getting this r overall investment in the program and truly makes it available to others. The rest of the answer -- at least in this case -- is far from simple. The more powerful and complex a program, the more good user documentation is essential. Even with expertise December 26, 1986 - 6 December 26, 1986 - 6 oes not however, keep me from giving RTCAT my enthusiastic approval. December 26, 1986 - 5