Skip to main content

Apple Orchard v4n4 1983 Jun

  • PublicationApple Periodicals
  • Pages112
  • SourceApple-Orchard-v4n4-1983-Jun.pdf
← Magazines Apple Orchard v4n4 1983 Jun
/ 112
Source: Internet Archive — Aggregated Apple-era periodicals, 1981–2012.
Page 1
Loading…
Text content (OCR)
r ac. == INTERNATIONAL a. _—— Po _—_— | & = APPLE CORE™ | ] presents a > | hat ke a | , Re ee Te SE 2 Gee The Premier Magazine for Apple Computer Users 1M | VOLUME 4 NUMBER4 JUNE 1983 $3.25 (US) EDGE. 225 Turnpike Street, Canton, Massachusetts 02021 Toll-free: 1-800-343-6833; in Massachusetts (617) 828-8150. Telex 951-624. NO PERSONAL FILING SYSTEM DOES MORE Thank Heaven We gota Guardian Angel.™ “POWER FAILURE” Goodbye valuable data. Unless you have a Guardian Angel uninter- ruptable power source on duty. Guardian Angel switches to 150 watts of backup power in 1/100 of a second or less while alerting you of blackout or brownout conditions. Its rugged 12V battery gives you up to six minutes (15 at half-rated power), enough to save your data and shut down your system if line power does not return. Guardian Angel is compatible with virtually every major micro- computer system, including Apple, IBM, H-P, TRS-80, Xerox, Eagle and Osborne. Its transient voltage ppressor also prevents system damage from pov ike: G ian Angel simply plugs in between your power source and your microcomputer. Its compact size permits either desktop use or out of the way placement. Protect your investment: see your R.H. Electronics dealer today about Guar Angel or contact us at 566 Irelan Street, Buellton, CA 93427, (805) 688-2047. Guardian Angel’, with LED power status indicat blackouts, brownouts for just $595. Take a bite... 4 ae SI, ai Vol. 4, No. 4 June 1983 Cover; Micro Schizophrenia. Photo by Rob Wheless. ARTICLES The IBM That Thinks it’s an Apple - Peter C. Weiglin First look at a new non-Apple peripheral. The Ultimate in Userproofing Applesoft Input - Mark S. Darlow, P.E., Ph.D...............0. ee eee 18 Defusing potential bombs. 14 Review: Versaform - Gene Wilson is... i3.0043 cea sua vas Lehi UE eae ewe Lee ee ees 22 How a data manager helped a truck broker. Writing Custom Utility Programs - Jim Hopper ..... 2.6.6.0 6 cece eet eects 30 A utility to help write utilities. So What’s This Thing Called Exec? - Mike Kramer. .........6 000000 e eee e eect erence ences 38 How to use this builtin “Auto-Apple” mode. Word Handler II and Screenwriter Il- Ed Haymes. .... 2.2.0.0... cece cece eee erence ene e nes 42 A comparative review of two word processors. Burning Your Own EPROMs - Neil D. Lipson, P.E...........0 2.000 c ec eee eee cee eee een eee 44 Adventures in customizing your computer. The Apple //e User Group Conference - Ransom S. Fields .......... 0.0000. c eevee eee eee e eens 56 Report on a first-class information session. Of Special Interest- Louis H. Milrad €t al... 6 cscs yeas eaweee sees ete Weta ee es eee eR RES 62 How SIGs can help you — and vice versa. Converting Hex to Dec - John B. Matthews, M.D......... 00.00 c eee c ete e eee tee eect e een enee 66 $32 states in the Union? Braindusting with Pascal - Max J. Nareff 0.0.0... cece een eee ence eens 71 Flashcards for education. Tenth ices see cette teownes pore uncon wanass cepns ae aa nrene ee PO ioe 6 IAC Sponsoring Members. 12 Planting a Seed: The Volunteer Spirit - Peter C. Weiglin. 17 Print FRE(ED):= Val J GOING: 0c esciesecarecesrse: ore nine e'geeienen : : .. 65 From the IAC Office - Ken Silverman. Forbidden Fruit- Mark L. Crosby... . New Temptations, Delicacies, and Necessities. » SAVVY is a miraculous new information handling system. SAVVY is an automatic database management system. SAVVY is a new level of machine intelligence. SAVVY, part hardware, part software, is the beginning of truly “Personal Computing”. SAVVY comes with: General Ledger, Accounts Receivable, Accounts Payable, Payroll, Mailing List, Document Writer and Inventory Control. Through SAVVY, you and your computer talk to each other in your own natural, conversational English {or Spanish, or French, etc.). It learns from you what you want done in your own personal language. Once SAVVY learns your language it can create any file you wish. Input, output, additions, changes and deletions are “Sy, arranged for you. AS SAVVY's “Robot , Programmer” has been trained to write 100% of the programs needed to manage your database information. SAVVY runs CP/M™ and Apple DOS. ec. Trademark: SAVVY, Robot Programmer: Excallbur Technologies Corporation. Personal Language: SAVVY Marketing International. 100 South Ellsworth Street, 9th Floor, San Mateo, CA 94401 S ACV VY You'll discover that SAVVY recognizes your personal words, even if misspelled, or even if you use a phrase never used before! SAVVY continues to grow through use to become better and better at understanding your commands. Eventually, you will see SAVVY as a mirror to your own way of thinking and working. It is a re-definition of “user-friendly”. SAVVY, it’s the first system that truly means ‘‘personal computing’. SAVVY is like no other system on earth. SAVVY cost $950. Seeing is believing. SAVVY is on display at selected computer retail locations. Call for the name of your nearest dealer. CP/M is a trademark of Digital Research Corp. Apple is a Trademark of Apple Computer Inc. (415) 340-0335 One Apple and °1,575 can make a lot of pies. And charts. And graphs. Introducing the New Personal Computer Plotter from Hewlett-Packard Now you can use your Apple® com- puter to generate your own presentation i charts, graphs, and pie charts. How? Simply add on the new high quality, low cost HP 7470A Personal Computer Plotter. = The 7470A helps you save time, save money, and, lets you communicate quickly, accu- rately and effectively. The eye is faster. Data, when visualized graphically, becomes informa- tion fast. Charts and bar graphs can make any presenta- tion clearer and more readily understood. But asking your staff to produce the graphics for your next presentation doesn’t ensure accuracy or artistic talent. And going to outside suppliers can be costly. Combined with your Apple® computer, the new HP 7470A plotter does the communicating for you. Quickly. Logically. And with off-the-shelf software. Fast and pretty. The 7470A gives you high plotting speed with excellent line quality... faster than any competitive small plotter. On top of all that, it comes in an attractive design package that looks nice on your desk. And it does it for only $1,575. (U.S.A. domestic suggested retail price.) ee Name Seeing is believing. Send me a sample plot, an overhead transparency, and more detailed information. Title Count on it. The 7470A is built the Hewlett- Packard way. To last. Designed and engineered with only a few parts, none of which require adjustment. And with customized integrated circuits that ensure reliability. Pen Pals. The HP 7470A has — two single-pen stables that output multi-color plots in your choice of ten coordinated colors. Pens are automatically capped and stored. For only $95, you can also get a 17057 Overhead Transparency Kit that turns your plots into transpar- encies for overhead projectors. For “I need it tomorrow at 9:00 A.M!” meetings, it’s a necessity. —.__™ An option you'll want, too. Start plotting your next presentation today. Clip and mail the coupon below. Now. Mail the coupon below and we'll send you—absolutely free—a sample plot, a more detailed brochure, and a sample overhead transparency. Then...stop in at your nearest Hewlett-Packard Dealer. See the HP 7470A in action. Once you see it demonstrated you'll find a hundred ways to make your own Apple® pies. And charts. And graphs. When performance must be measured by results ©) PackanD Company Address City, State & Zip Phone Number( _) Apple is the registered trademark of Apple Computer, Inc. Send to: Hewlett-Packard, 16399 W. Bernardo Drive, San Diego, CA 92127—Attn: Nancy Carter ce Se EOE | 11202 Aos et a SS A A A A SS Se mal Textfile No, you're not missing an issue of Apple Orchard; our nine- times-a-year schedule means we did not publish in January and May, and will not publish in July. Herewith the June issue, on a mostly serious note after our April diversions. First, we welcome back FRE(ED), our prodigal predecessor, Val Golding, who gallantly responded to some pointed remarks. As you can see, he has been restored to his former state of 10-point grace. We can understand his absence; he’s been working hard on Call-A.P.P.LE., and it shows in that magazine's high quality. The concept of Special Interest Groups within the Interna- tional Apple Core, as well as in local user groups, has taken off under the firm hand of IAC Vice-President Lou Milrad. A look at what and how they're doing begins on Page 62. These folks embody the volunteer spirit, of which more in this month's Planting a Seed essay. Note that you don't have to be an expert to join in. Semi-expert status may seem to be required for something like burning your own EPROMs, but as Neil Lipson shows, it's notas difficult as it first appears. As this June issue went to bed, we received a telephone call from an excited Neil, who said that he had come upon a group of public-domain character fonts which could be used in a number of ways, including in EPROMs. He's preparing that material for a future issue. Jim Hopper and John B,. Matthews, active Apple owners in Dayton, Ohio, weigh in with some Assembly language material. The Dayton group is an active one, and more material from the Gem City is in the wings. While we're at it, we'll point out that Mike Kramer and Ed Haymes are active in the Houston Area Apple Users Group, and Mark Darlow is a member of the Capital Area Apple Byters in Albany, N.Y. Max Nareff, Ransom Fields, Gene Wilson and Peter Weiglin are members of the San Francisco Apple Core. Lou Milrad hails from Toronto, home of LOGIC, nee Apple-CAN, and Neil Lipson is a stalwart in the Apple users’ group in Philadelphia. Pretty good cross-section, huh? Let us hear from you. [ ) Introducing compl fable Introductory prices for “Compu-table” start at $53.95 An affordable, home-use computer table insures stability wires? High quality tubular steel frame superior strength and Built-in printer slot ' Built-in cord and ribbon slot for flush-to-wall fit and tangle-free © Correct 27” height for fatigue-free Tops are interchangable and may be purchased seperatly for system expansion *Optional, adjustable “Datatop” shelf, provides easy access to programs, manuals, printouts, disks, and other computer aids * * Additional options include disk keyboarding drive bay and movable work light MODEL | H_W_D_|COMPU-TABLE| DATATOP | DISK BAY | LIGHT 24 Printtind | 27”x24"x24” $45.95 N/A N/A N/A 32. 27"x32"x24" $53.95. $26.95 N/A $10.95 39 27"x39"x24" $57.95 $28.95 [$16.95 (12"x12)[ $10.95 48 27"x48"x24”" $59.95 $29.95 $19.95 (12"x17")| $10.95 lodel 48 shown with o} “Datat wore light ard qui athe tay T Model 32 comes without a printer slot 7 All tops for models 32, 39, 48 come wit built-in cord slot and notches for “Datatop”, unless» customer specifies oi + “Datatop” shelf clea Assembly required Phone number: (216) 354-4186 ce table” top by a maximum of 22” Send check or charge card number and expiration date (MASTERCARD or VISA only) to: COMPCO INDUSTRIES, INC. ‘Ohio residents include $149 sales tax All orders UPS collect ‘Apple and the Apple Logo are Registered Trademarks of Apple Computer, Inc. 6 Apple Orchard 2nd Generation Spreadsheet for Apple Ti and He _ enn uta Everything VisiCalc can do and much more. Plus 64K or 128K RAM. Plus 80-column display for Apple //e at no extra cost. MAGICALLC is a completely new second generation spreadsheet pro- gram for Apple II. This state-of-the-art system includes 70-column upper and lower case video, full 80-column board display, hard disk compatibility, individual column widths, invisible columns for confidential data, and full compatibility with VisiCalc that lets you utilize existing VisiCalc models. Refer to the box below for a compari- son of MAGICALC and VISICALC. EXPAND-A-RAM 64K or 128K of additional RAM memory for expanded MAGICALC worksheets. Includes MEMORY MANAGEMENT SYSTEM —relocates DOS for more free memory in BASIC. You also get RAMDISK emulators for APPLE DOS, APPLE PASCAL*"and CP/M™— a software package that emulates a standard Apple floppy disk drive butis 2 to 10 times faster. Plus more. Registered trade marks: Apple. .. belongs to Apple Computer, Inc., Magicalc to Artsci, Inc., Expand-A-Ram to Prometheus Products, Inc., VisiCalc to Visicorp, CP/M to Digital Research, Inc. EXPAND-A-RAM for Apple II plugs into any slot and works with the many software programs that use 16K of RAN in slot 0 — including CP/M, APPLE PASCAL LISA, MERLIN... and many others. EXPAND-A- RAM/80 for Apple Ile, which includes the 80-column display, goes into the auxiliary slot. No modification of your Apple is required. SPECIAL LOW INTRODUCTORY PRICES for the combination MAGICALC plus EXPAND-A-RAM are $399 with 64K RAM and $499 with 128K RAM. Apple Ile users (only), please specily your choice of the stan- dard EXPAND-A-RAM or EXPAND-A- RAM/80 with 80-column Display at no additional charge. See your local dealer for details: ARTSCI, INC. 5547 Satsuma Ave., North Hollywood, CA 91601, (213) 985-2922 PROMETHEUS PRODUCTS, INC. 45277 Fremont Blvd., Fremont, CA 94538, (415) 490-2370 COMPARE! Preboot required 70 column upper and lower case video display Full 80 column boo display widths Invisible columns for confidential data Hard disk compatibility Full com with VisiCalc Program plus 128K RAM More Apple II owners choose Hayes Micromodem II than any other modem in the world. Compare these features before you buy. You should. It’s your money. Thousands of other Apple II owners have already com- pared, considered, and are now communicating — all over the U.S.A. with Micromodem II. The best modem for the Apple Il. The most modem for your money. «2 Acomplete data communi- cation system. Micromodem II is not "base priced” plus necessary “options.” It's a complete, high-performance data com- munication system. The printed circuit board fits — quickly and easily — into your Apple II, eliminating the need for a serial interface card. And the Microcoupler™ (included) connects the Apple II directly to a standard modular telephone jack. Auto-dial and -answer features are built in. Operation can be full or half duplex, MMicromodem II and Micr CP/M isa regi ~~ Mitrocoupler ue trademarks of Hayes: ed trademark of Digital Researehy witha transmission rate of 300 bps. And it's Bell 103 compatible and FCC approved Now there's Hayes Terminal Pro- gram, too! Developed by Hayes speci- fically for Micromodem II, this new Terminal Program allows you to access all the great features of your modem in a matter of seconds. With it, youcan use your CP/M? DOS 3.3 or Pascal for- matted disks to create, send, re- ceive, list and delete files. Hayes Terminal Program is a complete, stand-alone disk. And because it's menu driven, you can choose from a wide variety of options to set your communication param- eters — as well as change hard- ware configuration — directly from the keyboard. It even allows you to generate ASCII characters that are normally not available from Apple Your Apple II just isn't the pen without Hayes Micromodem II keyboards, further extending your capabilities. Incoming data can be printed (on serial or parallel printers) as it's displayed on your screen. Micromodem I! is available with or without the Terminal Program. Buy your modem by itself, or optionally pack- aged with the Terminal Program disk and user manual at extra cost. The soft- ware is also sold separately, for those who already own a Micromodem II If you're ready to communicate with other computers, to access infor- mation utilities, time-sharing systems or use bulletin boards, then you're ready for Micromodem II. Come on. Compare. Consider. Then buy. Micromodem II is already the best-selling modem for the Apple II And Hayes’ new Terminal Program makes it better than H ever. Available at ayes nationwide. Hayes Microcomputer Products, Inc. 5835 Peachtree Corners East Norcross, Georgia 30092 (404) 449-8791 NEW! Terminal Program from Hayes! line Apple is a registered trademar! of Apple c iter Products, Inc. Sold only in the U j if. e 4 } / War Ly e Yeah —H about Mt ples? Start my subscription with volume CLT] Number 1] ne sae iia” oe Me Las es TV eceacaiectes 32. $2700 CITY. STATE. ZIP. Interbank No. [_1_[_T__]eigit number above your narne on MasterCard [I check/Money Order Charge CardNo.L TT TTT TTT III Tit ttt CI mastercara” Credit Card Signature Card Expires Lwisa Payment must accompany order and must be made in U.S. funds and drawn on U.S. bank. Make check payable to APPLE ORCHARD. ~ 4 4 One yp YEW NN tener, How oles. 7 USA. ... Only $19.50 Start my subscription with volume fd Number itd O (Save $9.7: mie ‘ E 2 Fe . - $36.00 NAME. Ceinee eiteees [Teanade/Mexico ...... $2700 CITY. STATE_ ZIP. Interbank No. [_1_1_[_]a-digit number above your name on MasterCard” LIcheck/Money Order Charge CardNo. CLE TTT TT TPIT ITT] = Unastercara | VISA Payment must accompany order and must be made in U.S. funds and drawn on U.S. bank. Make check payable to APPLE ORCHARD. Credit Card Signature Card Expires There's probably nothing that would add more power and usefulness to your Apple than a bigger. faster disk Now Lobo Drives offers a whole family of disk upgrade options—direct from the manu- facturer, at substantial savings We cut out the middleman—not the quality. Make no mistake—Lobo's low prices are for highest quality, ultra-reliable systems. We take no shortcuts in design, manufacturing testing, and burn-in. That's why Lobo systems are probably the only ones you'll find anywhere with a 1-year parts and labor guarantee. Lobo uses only Shugart or Seagate drives—the standards of the industry. We put them in rugged metal cabinets, with heavy-duty fan-cooled power supplies and our own proven controllers and interfaces. So whether you want 8” floppies, a Winchester system, or just a less expensive Apple-equivalent disk, Lobo delivers top quality for less You'll find our disk price breakthrough can mean a real performance breakthrough for your Apple II! 8” Floppy Disk Systems Up to 2.2 megabytes of on-line storage with two double-sided, double-density 8" flop- pies (1.1 megabytes with single-sided drives). DOS 3.3 capabilities are supported. Interface plugs into any Apple I/O slot (except 0). Lobo's optional CP/M includes a special DENSITY command to permit reading and writ- ing standard single-density disks. Optional Pascal software lets you store the| entire Apple Pascal system on one side of one 8" disk—with lots of room left for program files TWO SINGLE-SIDED DRIVES Model 8202CA $1625.00 TWO DOUBLE-SIDED DRIVES Model 5202CA $1925.00 Winchester Disk Systems Programs that make heavy use of disk files will get a spectacular performance boost when you plug in up to 8 megabytes of ultra- fast hard disk storage. And imagine the con- venience of having all your program and data files immediately available whenever you boot IMPORTANT: many hard disk systems now being sold have no provision for backing up the disk (using standard Apple minifloppies, you'd need about three dozen diskettes to com- pletely back up a 5 MB drivel). Lobo hard disk systems come with a built-in double-sided, quad-density floppy drive that can store the complete contents of the hard disk on six or seven floppies. This floppy drive also adds the equivalent of at least 5 more Apple disk drives to your total on-line storage! — SRS PS 5%" SYSTEM: ONE 5MB HARD DISK PLUS ONE 737 kB FLOPPY Model 950A 2675.00 8” SYSTEM: ONE 8 MB HARD DISK PLUS ONE 1.2MB FLOPPY Model 1850A $3459.00 Both include Lobo DMA interface usable in Apple slot 1-7 and DOS 3.3 patches. CP/M optional (see below) hy Apple-Compatible Minifloppy Systems Both the disk drive and the interface card are plug-compatible with Apple Disk !I equipment. Lobo and Apple drives may be freely mixed on a Lobo or Apple interface card, and the Lobo interface features a switch to select 13 or 16 sector boot. The only other difference is the price and Lobo’s unique 1-year guarantee! DISK DRIVE WITH INTERFACE CARD the sytem Model 3101-1 $455.00 DISK DRIVE ONLY Model 3101 $385.00 Software and Accessories All Lobo disk systems come complete with interface card and any necessary patches to DOS 3.3. Use of Apple Pascal with Lobo 8" floppy drives requires the Lobo Pascal Creator disk and documentation. Running CP/M with Lobo Winchester or 8" floppy systems requires a Microsoft SoftCard, an Apple Language card (or Micro- soft RAM Card), and the Lobo CP/M disk. Pascal is not currently supported on Lobo Winchester systems PASCAL CREATOR DISK AND DOCUMENTATION $54.00 CP/M DISK AND DOCUMENTATION $54.00 CP/M DISK WITH MICROSOFT SOFTCARD $355.00 MICROSOFT 16 KRAMCARD $175.00 APPLE FAN (RECOMMENDED FOR HEAVILY LOADED SYSTEMS) CLIPS ON LEFT SIDE OF COMPUTER $72.00 Ordering Information All prices include shipping and hand- ling. California residents add 6% sales tax. Credit card orders shipped within 24 hours Personal checks require 2-3 weeks for clearance before shipment. Please allow up to 6 weeks for delivery, The Lobo Warranty All Lobo hardware products carry a limited 1-year parts and labor warranty. Call or write for complete warranty statement. © 1983 Lobo Systems CP/Mis a trademark of Digital Research Corp. SoftCardis a trademark of Microsoft Apple il is a trademark of Appie Computer, Inc ox aT ORDER NUMBERS: (805) 683-1576 (800) 235-1245 (800) 322-6103 (In Calif.) Telex 658482 Hours: 7AM-5PM Pacific Time LOBO’ SYSTEMS INC 358 S. Fairview Ave., Dept. A0583 Goleta, CA 93117 Prices subject to change without notice. Apple pchard Vol. 4, No. 4 Entire contents Copyright © 1983 by International Apple Core, Inc. June 1983 Peter C. Weiglin - Editor and Publisher Donna Caldwell - Managing Editor Ingrid Worthge - Art Director Nicole Lefcourt - Editorial Assistant Val J. Golding - Editorial Associate Contributing Editors: Mark L. Crosby - New Products “Dr. Wo” - Pascal/Languages Editor Neil D. Lipson, P. E. A. S. (Woody) Liswood Morgan P. Caffrey Jim Linhart - Miscellaneous Cartooniery Dawn Brown - Circulation Manager Karen Vanikiotis Zinsmeister - IAC Staff Advertising Representative: Jeffrey Ginsberg (213) 450 - 0056 Address for all subscriptions, correspondence, advertising material, manuscripts, etc.: Apple Orchard 908 George Street Santa Clara, CA 95050 (408) 727 - 7652 ‘ApPLE ORCHARD (ISSN 0277-1950) is published nine times a year by the International Apple Core, Inc., 908 George St, Santa Clara, CA95050. Second Class Postage paid at Santa Clara, CA and additional entry points. Subscription Rates: $19.50 for nine issues in the U. S; $27.00 (US funds) in Canada, ‘Mexico, and APO/FPO addresses; and $36.00 (US funds) for addresses elsewhere. Se os et ase i osces bi eS 'e : iH a oS i. ace : + oe x = : si : cS International Apple Core Officers Bernie Urban Chairman, (301) 229 - 3458 Auby Mandell President (416) 593 - 9862 Harlan G. Felt Vice - President (408) 574-5211 Louis H. Milrad Vice - President (416) 222 -8447 Allen G. Sneider Treasurer (617) 742-6100 Joseph H. Budge Secretary (415) 342 - 1828 Kenneth D. Silverman Executive Director (408) 727 - 7652 Regional Directors Roger Keating P.O. Box 448, Double Bay 2048, NSW Australia ‘Auby Mandell 409 Queen St W,, Toronto, Ont Canada M5V2A5 S. Bellamy #402 BarakiNakayama Mansions, Ichikawa, Chiba272-01, Japan Jerry Vitt (Southern United States) (214) 369 - 7660 Bob Sander-Cederlof (Southern United States) (214) 324-2050 Bernie Urban (Eastern United States) (301) 229-3458 Robert Ramsdell (Eastern United States) (617) 546-3104 James Simpson (Western United States) (805) 492-3391 Stephen C. Lloyd (Western United States) (415) 571 - 7370 James E. Hassler (Northern United States) (307) 632 - 4934 Barry D. Bayer (Norther United States) (312) 798 - 6496 Committee Chairmen SPECIAL INTEREST GROUPS: Co-ordinator Louis H. Milrad (416) 222-8447 Agriculture Susie Allen (408) 746 - 0636 Apple /// Don Norris (415) 673-7635 “Calc” Applications John C. Hunter (416) 292-2590 Computer Art Stephen W. Long (416) 694-8892 Data Management Malcolm Slovin (213) 837-3741 Dental Ellis D. Neiburger (312) 244-0292 Education Ted Perry (916) 485-1690 Family David Stern (301) 881 - 2543 Games Jim Eatherly (202) 232 - 6046 Ham Radio James Hassler (WB7TRQ) (307) 632 - 4934 Handicapped David P. Szetela (617) 259-9710 Health Services Terry Mitiken (512) 691 - 6367 Investments John McMullen (914) 245-2734 Languages Ed Titlebaum (716) 275-4061 Telecommunications Craig Vaughan (703) 471-0572 COMMITTEES IAC Librarian Maj. Terry N. Taylor (213) 372-4134 Software Dr. Charles Smith (416) 297 -3575 Club Activities Ransom Fields (415)863 - 1093 New Club Assistance Karen Zinsmeister (408) 727 - 7652 NEW Beagle | B DOUBLE-TAKE omy 2 WAY-LIST/MULTIPLE UTILITY BY MARK SIMONSEN LISTS & CATALOGS Soran UP and DOWN, file names & program lines much easier to access. Arrow-keys control scroll direction. NEW LIST FORMAT lists each program statement on new line— FAST program trace/de-bugging. VARIABLE-DISPLAY shows all of a proj st & variables with current values. CROSS- REFERENCE shows line nos on which each vari able/s Better So meas peel rams (not just end-to-end). ‘NUMBER as pear stant Hex/Dec Converter, Program Stats, Eliminate/Redefine, Free Space-On-Disk.. (includes Peeks/Pokes Chart) NP~\- eaale! Bro Apple Mechanic's Hi-Res type routines are usable in your programs WITHOUT LICENSING FEE! Just give Beagle Bros credit on your disk and 4315 SIERRA VISTA / SAN DIEGO, CA 92103 619-296-6400 “APPLE” is a registered trade mark of YouKnow-Who. ros Unlocked Uitilities! eagle disks are Apple II/e A aeHible: and COPYABLE. Don't settle for less! 3 prontopos ONLY HIGH-SPEED Dis DISK UTILITY 29.50, Put TGHSTEED Dl foe a = ple’s normal inemory, Language Card or le high memory Function ‘Normal Pronto BLOAD HI-RES IMAGE 10sec. 3 sec. LOAD 60-SECTOR PROGRAM . ..16 sec. 4 sec. SAVE 60-SECTOR PROGRAM ...24 sec. 9 sec. 3 sec. 4 sec. BLOAD LANGUAGE CARD ...... 1 (TEXT FILES: No Change) BOOT PRONTO disk or your updated disks. Create new high-speed disks with normal INIT command. Compatible with ALL DOS COM- MANDS and almost ALL of your programs. LANGUAGE CARD or Ile chigh-m memory can hold DOS— 10,000 Extra-Bytes of program space! MORE DISK SPACEY PronteDOS freer extra-sectors per disk, almost one full tra PLUS: Aut -e-Disk-Space, New “TYPE” Com- mand displays Text Files, and much more... {includes Peeks/Pokes Chart) ALPHA PLOT 3 BY BERT REASEY & JACK CASSIDY 15- DOS BOSS 3 DISK COMMAND EDITOR __ 74:00 BY BERT KERSEY & JACK CASSIDY RENAME COMMANDS & ERROR MESSAGES: “Catalog” can be “Cat”; “Syntax Error" can be ‘Oops” or anything you want. Protect your pro- , unauthorized save-attempt cant ce ot Copyable” message. Also LIST-prevention and one-key program-run from catalog. CUSTOMIZE DOS: Change Disk Volume head- ingto your message. Omit/alter catalog fle codes. documentation and tips: hours of fuley’ reading and Apple ANYONE USING YOUR DISKS (booted or not) will be formatting DOS the way you designed it. (includes Peeks/Pokes Chart & Tip Book*2) 29.50 APPLE MECHANIC SHAPE-WRITER/BYTE:ZAP UTILITY ‘SHAPE EDITOR: Keyboard-draw shapes for hi- res animation in your s. Design tionally-Spaced TYPEFACES with special characters. Six fonts on the disk. Listable demos show how to use shape tables to animate games, graphics and professional Charts & Graphs. BYTE-ZAP: Rewrite any byte on adiskfor repair or alteration. Load entire sectors on the screen | a . BY DY TewT ONY cue mernece: FLEX TEXT, 28 its Complete instru ons experiments for making 79 INS NO HA MORE: Useful sie, text and hi-res ‘sick for your programs. Educational documentation. (includes Peeks/Pokes Chart & Tip Book*5) CES a FOR APPLE MECHANIC 22-00 26 NEW FONTS for Apple Mechanic programs. All sizes of Tly-ditable character, . BEAGLE MENU: only filenames you want from YOUR Dial fg. only Ap ‘Applesoft or only Locked files) for one-key selection. ‘includes Peeks/Pokes Chart & Beagle Menu Utility) PRINT VARIABLE-WIDTH TEXT on the hires screens with normal Applesoft commands (including Htab 1-70). Normal, expanded & com- Pressed text on same screen— no hardware! ADD GRAPHICS TO TEXT or vice-versa. Run existing programs under Flex Text control. Easy to use and compatible with PLE® and GPLE. DOS TOOL KIT® FONT compatibility, or use Flex Text fonts. Select up to 9 fonts with ctrl- commands. Print/List/Catalog in any style! Cus- tom TEXT CHARACTER EDITOR included. 70-Columns requires Monitor, not TV; (includes Peeks/Pokes) BEAGLE BAG aay 12-GAMYS ETS ON ON DISK _29.50 Darrah oe coaes & a are & Bint, she peice is right, the instruc are crystal clear, AND the disk is co] You can even cl LEARN, and see e the programs or list makes them tick. TWELVE Canes from the 7 Kersey— TextTrain, Sli Buzzword, Magic e Pack GREA Vi games that tap nar Ape 's Text, Feview in January 83 Softalk (page 128 BEAGLE MENU TOO: See et acee” "disk. (includes Peeks/Pokes Chart & Beagle Menu Utility) emto UTILITY ¢ ONLY UTILITIES ON ONE DISK 29.50 HIGH-SPEED DISPLAY UTILITY Ee ‘WEISHAAR LIST fORUATIEE cared ay Program ment on a new line. Loops indented with printer page breaks. 7A great debugger! Also... oan MULTI-COLUMN catalogs for printouts, auto- st Run-number & Date in programs, put invisi- le commands in , create INVISIBLE file names, alphabetize/store info on disk, convert decimal to hex or INT to FP, rem 65535, append programs, dump text-screen to printer. MORE TOO: 21 Total, a best-seller! (includes Peeks/Pokes Chart & Tip Book"3) MAKE TROFESSIONAL PRESENTATIONS of ex- isting hi-res, lores & text frames. FAST hi-res loads in 24i-seconds! Paddle or Ki -ad- frames. UNATTENDED SHOWS optional ic arrany re-proy led to dis] sac p Hc arrange & Fox fr ogammed to display create b/w text “slides”. Add type “live” from shows. Send copies of presenta- tions-on-disk to your friends and associates. (includes Peeks/Pokes Chart) DRAW IN HI-RES, on 2 pages, using OR paddies/joyatick. View lines before plotting. Mixed-colors and reverse (background opposite] Fast circles, boxes and ellipses; filled or outlined. COMPRESS HI-RES PICS TO 1/3 DISK-SPACE. Superimpose pages or re-locate any image area anywhere on either hi-res page. HI-RES TEXT: Proportional spacing, adjustable character size and color, upper & pag oars htab/vtab limits, sideways typing for graphs. (includes Peeks/Pokes Chart ‘& Tip Book"4) Apple Software Store for Beagle Bros disks. If DISTRIBUTOR. TIP DISK #1 100 TIP BOOK TIPS ON DISK ‘ONLY 20.00 100 rare a fom Beagle Bros Tip Books 1-4, Make your Apple do things its never done! grams changeable for mentation. Includes our Apple Command with ALL Applesoft, Integer & DOS Commands! (includes Peeks/Pokes AND Apple Command Charts) Pease es HS ASS ee ee RUSH the following disks by First Class Mail: D Alpha Plot . 39.50 C ProntoDOS . 29.50 DAMechanic’ 2950 0 Tip Disk*l : 20.00 1 O Typefaces .. 20.00 fo ity City . 29.50 - 29.50 C1 Add me to mail list. po OFrameUp .. 29:30 Om already ON it. AT YOUR APPLE DEALER NOW! Or order directly from ee Bros— Il Visa/MasterCard/COD, call I [| Nationwide: 1-800-854-2003 ext. 827 California: 1-800-522-1500 ext. 827 Alaska/Hawaii: 1-800-854-2622 ext. 827 I or mail US.Check, Money-Order or Visa/MC* to BEAGLE BROS, 17th-Floor 4315 SIERRA VISTA, SAN DIEGO, CA 92103 Add 1.50 First Von en iy any-size order. Hondas sedi 3 ; Galioraie aud ox. 4 op 0038 Salim INTERNATIONAL APPLE CORE Advanced Operating Systems 450 St John Rd. Suite 792 Michigan City, IN 46360 Apple Computer, Inc. 10260 Bandley Dr. Cupertino, CA 95014 AVS Electronics PTE Ltd. Block 9, 11-A First Floor Kallang Place, Kallang Basin Ind. East Singapore 1233 Corvus Systems, Inc. 2009 O'Toole Ave. San Jose, CA 95131 East Side Software Co. 344 E. 63rd Street Suite 14A New York, NY 10021 Electronic Arts 277 Campus Dr. San Mateo, CA 94403 Hayes Microcomputer 5835 Peachtree Corners Norcross, GA 30092 Houston Instrument Division 8500 Cameron Rd. Austin, TX 78753 Interactive Structures P.O. Box 404 Bala Cynwyd, PA 19004 Leading Edge Products 225 Turnpike St Canton, MA 02021 Legend Industries, LTD 2220 Scott Lk. Rd. Pontiac, MI 48054 12 Apple Orchard IAC Sponsors are a special breed. They are the organizations who con- tribute to and support many IAC activities. In addition, they provide us application notes concerning their products - notes that show new and SPONSORING MEMBERS different ways to utilize the sponsors’ products with modifications for spe- cial purposes. When you consider a software or product purchase, give our sponsors special consideration; they have shown that they care about their customers. GIVE YOUR APPLE* INSTANT RECALL” FOR JUST $59.95 Forget what you've heard about computer filing. INSTANT RECALL just made everything easy. No fields, no forms, no formats, no fooling. Mowing to set up before you get started. And, best of all, INSTANT RECALL comes at a no-kidding price of just $59.95. Save your notes about everything. Keep track of appointments and important dates. Record minutes of your meetings. Or reminders about customers conferences, expenses, or just about anything! You can mix up as many kinds of information as you want, or you can organize different files on different diskettes. Either way, INSTANT RECALL finds what you've filed the instant you ask, whether or not you remember what's there. if you've got an Apple II® or Apple Il Plus® with at least 48K, one disk drive and Applesoft in ROM, what are you waiting for? To find your nearest dealer or to order, call 800-428-3696 or 317-298-5566 and reference AD343.In Canada, contact Lenbrook Industries, Ltd., Scarborough, Ontario. SAMS BOOKS AND SOFTWARE Howard W. Sams & Co, Inc. 4300 West 62nd Street PO. Box 7092 Indianapolis, IN 46206 Instant Recalls trademark of Howard W. Sams & Co., Ine. ‘Apple'l and Apple Plus are registered trademarks of Apple Computer, Inc ™ M& R Enterprises 910 George Street Santa Clara, CA 95050 Nestar Systems, Inc. 2585 E. Bayshore Rd. Palo Alto, CA 94303 Nibble-Micro-Sparec, Inc. P.O. Box 325 Lincoln, MA 01773 Omega Microware 222 S. Riverside Dr. Chicago, IL 60606 Rana Systems 20620 South Leapwood Carson, CA 90746 Source Telecomputing 1616 Anderson Rd. McLean, VA 22102 Steve Blackson Productions 4613 Redwood Dr. Garland, TX 75043 SVA, Inc. 11722-D Sorrento Valley Rd. San Diego, CA 92121 Syntauri, Ltd. 3506 Waverly St Palo Alto, CA 94306 Telecom Terminal Systems 3903 Grandview Blvd. Los Angeles, CA 90066 Verbatim Corporation 323 Soquel Way Sunnyvale, CA 94086 Xerox Retail Division 7700 Edgewater Dr. Suite 360 Oakland, CA 94621 June 1983 13 The IBM That Thinks it’s an Apple by Peter C. Weiglin 14 Apple Orchard he rain was pelting the Market Street cobblestones as | waited for the light to change. Pulling my trenchcoat collar a bit closer around my ears, | headed for the San Franciscan Hotel. Darn rain. Bet this'll be the wettest March in San Francisco history. City looks like the inside of a sewer pipe today. The uninhibited revelries of the West Coast Computer Faire were going on behind me, in Brooks Hall. The annual Bit Bacchanale, the Festival of the Computer LED Lights, was nothing new, | had seen it all before. This year, the OI Rollerskater Jim Warren had set aside an IBM Room and an Apple Room, kind of like separate arenas. Seemed that the crowds were much heavier in Apple-land; among other things, they were almost smothering Lisa to death. But here | was crossing Market Street, away from the $200 disk drives, away from the $800 Apple lls. But | had a job to do. The trail of a hot story. My 4,728th secret hotel room meeting. Just be there, Bobby had said; never mind why. What a business. Get the story. Getit first. Get it right Well, it had better be good. Hmm. They're remodelling the lobby. Elevator. Fourth Floor. Ah, there’s the room. Knock. “Who's theah?” from inside. Love southern accents, but this one was male. “Bobby sent me.”, | answered. The door swung open to reveal the living room of a normal hotel suite; the room without the bed. Center stage ona dresser were an Apple Il and an IBM PG, side by side, looking like Jerry Brown and Jesse Helms on the same platform. A personable and professional operative welcomed me, picked up a disk, and said “Recognize this?” “Yeah,” I replied; “it's an Apple DOS 3.3 Master.” He nodded, and inserted it into a boot drive on the Apple. Worked fine. Then he made his first mistake, or so I thought. He put it into the boot drive of the IBM! Now, that’s just plain wrong. | had tensed a few muscles to leap the one and a half yards separating me from the PC when | stopped dead in my tracks, frozen with amazement. The IBM's CRT was reading “Apple II"; the disk was booting! Obviously, this was something big. “O.K.,” | said, “what's the answer?” eek ee The answer, it turns out, is Quadlink, a new product from Quadram Corporation. Quadram has made a name and quite a few bucks with peripherals for Baby Blue; the Quadlink is a multifunction board including a 6502 and other goodies which emulate the Apple Il inside an IBM PC. What that means, of course, is that Apple-based software is now available to be used by PC owners. Well, most Apple- based software. We saw games, word processing, and busi- ness software being booted and run successfully. Then, one game, known for its Stalag 17 copy protection, failed to boot. Had the Quadlink failed? Well, the program didn't boot properly on the nearby Apple either. Thus we found the ultimate in copy protection: if it won’t boot, it can’t be pirated. The Quadlink card requires a slotin the IBM PC. But because there are so few slots available, the trend has been toward multifunction cards. The Quadlink contains the Apple simu- lator, a parallel port, a serial port, and a game port The IBM color or monochrome monitor is used for video displays; Apple color HiRes looked good on the IBM color monitor. The controls are simple: press one function key to become an Apple, another to become an IBM. The hardest part, they said, was getting the DOS worked out. The IBM enhancements are also available for use in Apple mode. Suggested retail price: $680. te oR oR # “All right,” I said. “Now show me the one that goes the other way: that simulates an IBM PC in an Apple.” “Sorry. There just aren't that many people with Apples who want them to work like IBMs. But someday, maybe. ..” | flipped my notebook shut “Yeah. Someday.” | took my leave and headed back through the rain and the traffic to the bright lights. It had been worth it e June 1983 15 CIVISISCHEDULE [| SUPERCALC [) VISICALC [] WORDSTAR (1) D.B. MASTER [1] MULTI PLAN [1 VISIFILE [] dBASE II () RENT SOFTWARE BEFORE YOU BUY! from our SOFTWARE RENTAL LIBRARY You can now RENT the most popular software available for just 20-25% * of Manufacturers’ Retail Price ¢ Eliminate the risk—rent first! UYALINASHIOA © 100% of rental fee applies toward purchase e All purchases are 20% Off of Manufacturer’s Suggested List © Rentals are for 7-days (plus 3 days grace for return shipping) }] TWNOISS3IOUd YALIMAANISYIS () +08 YJOWNVW 31d C] L9dduad VLVG ] AZTEC [) SUBMARINE COMMANDER (1) WIZARDRY—SCENARIO | (] PREPPIE [) CANYON CLIMBER (1) DEADLINE [] STAR RAIDERS [} CENTIPEDE [) ZORK II © No Membership Fees 3 Now currently available for: Q Apple IBM, PC Standard CP/M ® Eagle TRS-80 II Xerox 820 t Northstar Osborne Heath/Zenith 89 3% Franklin 3 REMEMBER, THESE ARE NOT DEMOS, BUT ORIGINAL 2 UNRESTRICTED SOFTWARE PROGRAMS 3 (complete with manuals in original manufacturers’ packages) fs To Immediately Order, or for more information: a UNITED COMPUTER CORP Toll Free CALL 1-800 992-7777 3 Software Rental Liorery aaa & eel emetlallle oom el 8 FROGGER CHOPLIFTER |] GORF [) DAVID’S MIDNIGHT MAGIC [) EASTERN FRONT (1941) [) ZORK | Plantins The Volunteer Spirit The most exciting aspect of the Apple Computer phenomenon, as opposed to the more mundane machinery, is not the sheer technical brilliance and humanity which Apple the Company tells us characterizes its activities. Rather, it is the group of Apple users and owners who have volunteered their time and effort to help other users and owners. These folks are not paid, are more often criticized than thanked, and are a significant reason why, today, some others have become affluent. If you purchase an Apple or Apple-compatible computer today, you do not have to flounder around re-inventing the wheel to use your computer. Instead, there is likely to be a User Group near you, offering help. That help may take the form of classes and help sessions, publications and contributions to them, public domain software (contributed by members), Special Interest Group materials, Club booth work at a local Computerfest, digging out a bargain for clubmembers on one or another product, or the many clerical tasks common to any volunteer organization. The User Groups are perpetuating one of the oldest and finest ideas of mankind: mutual assistance. Those who have more experience (even when it's measured in months) help those who are coming along. For many people the most valuable activity is “random access”. A problem is stated at a meeting, e.g. “I'm having problems hooking my Frazzistat up through the Glorffim connector.” From another part of the room comes, “I think Ican help you.” Helper and helpee move to a sideline to discuss the problem. Indeed, the sideline conversations are more interesting than a good deal of what's going on up front (“Wanna hold the noise down back there?”’) Special Interest Groups represent a more focused approach to sharing, within and between Clubs. Elsewhere in this issue, we describe these widespread yet intense activities. Co- ordinator Lou Milrad’s wry characterization of the SIG leader's job as one with “long hours, frustration, and totally inadequate (ie. nonexistent) compensation” is understood by everyone who volunteers. Still they go on. Every club also knows the phenomenon of “burnout”, wherein a volunteer's level of effort diminishes over time or ceases altogether. The primary cause of bumout is simply stated: volunteers come to feel they are outnumbered by the complainers 10 to 1, and by the demanders, the “gimme’s, 100 to 1. The machinations of a club's amateur politicians is another factor. But even if you have never attended a Club meeting; even if you are repelled by the thought of User Groups and are the lonest of wolves, you have benefitted because the volunteers who are those clubs took the time to share some of their knowledge with others. Pause to thank them. And be thankful too that the volunteer spirit lives on. See Mid The (Ultimate in User-Proofing Applesoft Input by Mark S. Darlow, P.E., Ph.D. In order for a computer program to be successful, it must have features which prevent the user from accidently or otherwise “messing” it up. The best planned screen formatting can be ruined by a user who insists on responding to queries with unacceptable input This is particularly true for programs which require the entry of numeric or alphanumeric data. There is nothing quite so unnerving as spending half an hour entering data into a program only to have it “bomb out” because fumble fingers entered “1 E66” instead of “1E6"; and then to have to enter the data all over again. A well-written program must have some compassion for those of us with fingers just slightly larger than the keys, and patience just slightly less than needed for entering reams of data. Rather than be limited to rebuking the user with “ILLEGAL INPUT - TRY AGAIN” and then try to clean up the screen, the programmer should consider making itimpossible for the user to enter an unacceptable response. A method for doing this is described below along with several Applesoft routines and sample programs which can be adapted and inserted in most any Applesoft program. Most “good” programs do include such features, usually by providing error messages and other insults to direct the user to mend his ways. In fact, many BASIC interpreters, Applesoft included, have some of these features inherent in the execution of their input statements. Unfortunately, these “user-proofing” features do not always trap all possible input errors (e.g. illegally large values) and the error messages tend to clutter the monitor screen and defeat the programmer's efforts toward organized and attractive screen formatting. (In deference to the sensitivities of the reader, the term “user-proof’ is being used in place of the more colloquial “idiot-proof”.) Analternative approach to “bomb-out” protection is propos- ed here, wherein the user is simply not permitted to enter an illegal response. That is, each character of the user’s response is read and the resulting string is tested for legality before the character is even displayed on the screen. If the input character would render the response incomprehensible (ie. utterly useless), a control-G (bell) is output to wake up the user and get him back on track. Of course, this approach could be extended beyond the prevention of illegal input data to exclude the possibility of inappropriate input data. The means by which this approach may be applied is described in some detail below along with numerous examples and sample routines using 18 Apple Orchard Applesoft BASIC. The same methods (and routines) could also be applied, with some modification, to any BASIC language and computer system which provides for single character input without automatic output echo. Single Characters This “user-proofing” approach will be described by example, beginning with very simple situations and continuing through to the development of some fairly sophisticated routines for general numeric and alphanumeric input Let's begin with single character input, the simplest case of which is “Y or N” answers to “yes or no” questions. Single character input differs from multiple character input in that the code can be written so that concluding carriage returns are not required. However, when dealing with particularly fickle users who are apt to change their minds continually, it may be preferable to require the concluding carriage return to confirm the response. The following code will reject (with a beep) any answer other than Y or N (without a concluding carriage return). 100 GET ZZs 110 IF ZZ$<>"“Y" AND ZZ$<>"“N" THEN PRINT CHR§(7);: GOTO 100 120 PRINT ZZ$; If the semicolon in line 120 is eliminated, the computer will supply a carriage return in the output. If you want to give the user a second chance, add these lines: 130 GET ZZ$ 140 IF ZZ$ = CHR$(8) THEN PRINT ZZS;" ";ZZ$;:GOTO 100 150 IF ZZ$<>CHR$(13) THEN PRINT CHR§(7);:GOTO 130 Line 140 checks for a backspace « and deletes the character on the screen if a backspace is found. With slightly more complicated code, the cursor can be moved over the previous response without deleting it and this response can be subse- quently reentered with a right arrow. The procedure for right arrow reentry is described later in this article. Minor modifications in this code allow it to be used for other single character input. For example, replace line 110 with 110 IF ZZ$<“1" ORZZ$>"5" THEN PRINT CHR$(7);:GOTO. 100 to restrict input to a single digit between 1 and 5 (inclusive), or with 110 IF ZZ$<"C" OR ZZ$>“J" THEN PRINT CHRS$(7);:GOTO 100 to allow input of only a single letter between C and J (note that if you have a keyboard modification the case makes a difference). Remember that algebraic comparisons of strings are actually comparisons of their numerical ASCII equivalents. Multiple Characters Now let's get a bit more involved and consider multiple character input First, we'll look at general alphanumeric input where everything is accepted except “left arrow” (control-H) and “right arrow” (control-U). The left arrow will be used to delete the previously entered character, while the right arrow will be ignored (for now). This form of input can be handled using the following code: 200 ZI% = 0:2$ = “”:REM NULL STRING 210 21% = 21% +1 220 GET ZI$ 230 IF Z1$<>CHR$(8) AND Z1$<>CHR8(13) AND ZI%>255, THEN 400 240 IF Z1$ = CHR$(21) THEN 400 250 IF Z1$ = CHR8(13) THEN PRINT:GOTO 1000:REM CONTINUE 260 IF Z1$<>CHRS8(8) THEN Z$ = Z$ + Z18:PRINT Z1$;:GO- TO 210 270 IF LEN(Z) = 0 THEN 400 280 IF RIGHTS(Z$,1)> = “" THEN PRINT Z1S;" ";Z1$; 290 IF LEN(Z$)>1 THEN Z$ = LEFTS(Z$,LEN(Z$)-1) 300 IF ZI% = 2 THEN 200 310 ZI% = ZI%-1 320 GOTO 220 400 PRINT CHRS(7); 410 GOTO 220 The above example deserves some explanation. Line 200 initializes the string length counter, ZI%, and the string accumu- lator, Z$. The next two lines increment the counter and get a character from the keyboard. The test in line 230 is intended to prevent the user from making an error by entering a string which has a length of more than 255 characters. The only legal 256th characters are a backspace « or carriage return. Line 240 disallows a right arrow input Line 250 recognizes a carriage return as an input terminator and continues the program. Ifthis code were used as a subroutine, then GOTO 1000 would be replaced by RETURN. Line 260 determines whether the input character is a left arrow. If not, the character is a legal input, is added to the string accumulator and the loop is repeated for the next input character. Lines 270 through 320 are accessed only inthe case of a left arrow input. Line 270 checks to see if any characters preceded the left arrow. If not, the left arrow is meaningless and is ignored (with a beep). Otherwise, line 280 checks to see if the previous character is a printing character. If so, the cursor is backed up one space and the previous character is erased from the screen. In line 290, the previous character is stripped from the string accumulator if there is more than one character in the string accumulator. Stripping the last character from a string with only one character would produce an error during the execu- tion of the LEFT$ command. Line 300 returns to the initializa- tion of the loop if there is only one character in the string accumulator (the left arrow is the second character). Otherwise, the string counter is decremented and the next character is read. An interesting feature of this routine is that if a non-printing character is deleted with a left arrow, this character is stripped from the end of the string but the cursor is not moved back over the last printing character as would be done by Applesoft in the same situation. Finally, lines 400 and 410 let the user know (with a beep) if he has done something naughty, and loops back to get the next character input. This general alphanumeric input routine can be modified to allow only specific forms of input. For example, entries from only a selected list of possibilities might be desired. The string would then be tested after each character is input to see if it would still fall within this list. A fairly common example of this is filename input. In order to restrict the user to legal filename input, in terms of syntax only (30 characters or less; first character a letter; no commas allowed), the following substitu- tions and additions can be made to the above routine: 230 IF Z1$<>CHR$(8) AND Z1$<>CHR§(13) AND ZI%>30 THEN 400 235 IF Z1$ = “,” THEN 400 245 IF ZI% = 1 AND (Z1$<“A" OR Z1$>"Z") THEN 400 The change in line 230 reduces the maximum string length to 30 characters. Line 235 disallows commas and line 245 assures that the first character is a letter. Numeric Input We will now venture into the much more complicated world of numeric input General numeric input gets very complicat- ed fora number of reasons. First, in addition to numbers, there are other legal characters which are “+”, “—", “.” and “E” (as well the ever present left arrow and the occasionally allowed right arrow). However, these additional legal characters are legal only if used in the proper places. The numbers and other characters must also be combined so as not to produce an illegal value (i.e. greater than 1E+38). After each character is read in, it must be determined not only if the character is legal, but whether it is legal in the context in which it is being used. Additional tests can be used to determine if the inputis legal with regard to the more restrictive requirements of a particular application. For example, the input may be restricted to a particular range of values, or particular values (e.g. zero) may not be appropriate input values. How user-proof numerical input is accomplished is described below as part of a general user-proof input program. An Applesoft program is presented in Listing 1 which includes general numeric and alphanumeric user-proof input routines. Lines 1 through 140 make up a simple calling program whose only purpose is to exercise and demonstrate the user-proof input routines that follow. The user-proof input routine for numeric data is listed in lines 60000 through 60550. A number of variables are used in this routine to keep track of the number and types of legal characters input These variables are initialized in line 60020 and are defined below: ZP% indicates whether a period has been input (1 = yes; 0 = no) ZE% indicates whether an E has been input (1 = yes; 0 =) no) ZI% is a character input counter ZN&% is a count of the numerical characters entered prior to an June 1983 19 New Book TS USERID nae APPLE THE CUSTOM & Other Mysteries. CREATE A WHOLE NEW WORLD OF POSSIBILITIES FOR YOU AND YOUR APPLE. Dateline: California, January 1983. J.R. Programmer, bit diddler and hardware hacker extraordinaire’, wished that his APPLE computer had 6522 1/0 capabilities available. To have that one enhancement would open new vistas in data acquisition and display, complete his project, and make him millions. “Gosh, wouldn’t it be nifty?” exclaimed J.R. But alas, the lack of appropriate hardware prevented him from accomplishing his goal. J.R. looked everywhere in his local computer store for an interface or expansion board to solve his dilemma, but none were designed for the magnificent project he had in mind. “Shucks . . am I to do?” Poor J.R. But then, just as he was about to give up all hope, a splash of color caught his eye over in the book section .. . The Custom APPLE & Other Mysteries. “Oh joy, Oh joy!” cried our hero. “This book gives me the information, specifications and references I need to do the .” he stormed, “what hardware enhancements, whether I am a beginner or an expert, and provides me with the basic information required to write the software, common to many of the projects, myself. This book is just crammed with all kinds of neat stuff!” J.R. left the store, also an IJG book dealer, a very happy man. Winfried Hofacker. Ekkehard Floeget the custom annie & OTHER MYSTERIES A Hardware and Software Modification Guide. The Custom APPLE & Other Mysteries provided J.R. with a number of data acquisition and control projects with camera ready printed circuit layouts like the 6522 application interface board, an 8-Bit D/A and A/D converter, a sound and noise generator board, an EPROM burner board, an APPLE Slot Repeater, and included information on the APPLE as a square wave generator, the control of two stepper motors, connecting two 6502 systems, and lots lots more. Plug-In To Power And Get Turned On! The Custom APPLE & Other Mysteries is available for $24.95 at computer stores, B. Dalton Booksellers and independent book dealers around the world. If your dealer is out of stock, order direct from 1JG. Include $4.00 for shipping and handling. Foreign residents add $11.00 plus purchase price. U.S. funds only please. Upland, California 91786 i Phone: 714/946-5805 ~ 4 Helping You Help Yourself. 1JG, Inc. 1953 West 11th Street ©NG, inc. 1982 TM APPLE and APPLE II Trademarks of APPLE Computer Inc. E. ZX% is a count of all of the characters entered following an E ZD% is a count of the numerical characters entered between a period and an E Line 60047 prevents the entry of a null input or more thana single leading zero (no beep). Deletion of the first test in this line will result in a null entry (carriage return only) being interpreted as the value zero. Line 60050 causes a branch to line 60110 if the input character is not a number. Otherwise, a series of tests are conducted to determine whether the number read results in a legal value. Line 60053 limits the number of characters permitted in the exponent (the value following the E). Line 60055 assigns the current value of the exponent to the variable ZT. Line 60058 checks to see that no more than 38 numeric characters are entered in the mantissa (before the E). Line60060 then tests to make sure that the character read in would not result in a value greater than 1E + 38. If not, the appropriate counters are incremented in lines 60070 and 60080, and the program branches to line 60300 to update the string accumulator, print the character and loop back to get the next character. Line 60110 disallows spaces (no beep). A carriage return is detected in line 60120 and the value of the string accumulator is loaded into the variable ZZ. Lines 60125 through 60130 handle input of a left arrow, as discussed above. Lines 60140 through 60160 check for the input of a plus or minus sign and determine whether it is legal (it must be either the first character read in or the first character after an E). Similarly, lines 60170 through 60190 check the input of a period and lines 60200 through 60220 check the input of an E. Lines 60300 and 60310 add a legal input character to the string accumulator, print the character and loop back to get the next input character. Line 60400 beeps for an illegal input character and loops back to get the next character. Lines 60500 through 60550 decrement the appropriate counters following a left arrow input, and loop back for the next input character. An alphanumeric input routine with a filename option follows in lines 61000 through 61410. This routine is a modification of the one presented above for user-proof alphanumeric input Line 61000 (or 61010) is the entry point for general alphanumeric input, while line 61100 is the entry point for filename input, as discussed above. If desired, additional restrictions may be placed on the input data by adding appropriate checks. For example, a line 60065. could be added to check that VAL(Z$ + Z1$) is within an acceptable range of values before appending the input character (Z1$) to the string accumulator (Z$). Analternative programming scheme for providing this form of user-proof numeric input is simply to compute VAL(Z$ + Z1$) and trap any error with an ONERR GOTO, rather than to perform all of the tests in the routine in Listing 1. While this approach would be somewhat simpler and more direct, it would trap only illegal values and not irrelevent or absurd input (such as DUMMY or 1.1.1E + 1.1). Thus, atleast in my opinion, it would not be entirely satisfactory. Use of the left arrow as an input character to the routines in Listing 1 results in the deletion of the last character in the string accumulator and an appropriate adjustment of the screen image. These routines ignore a right arrow entry. Standard right arrow capability (character reentry) can be added to these routines, if desired. Two principal modifications are required. First, don’t delete characters from the screen after input of a left arrow (just backspace, if appropriate). Second, entry of a right arrow must be detected and the screen character under the cursor determined using a line of code lifted from page 87 of the Applesoft Il Reference Manual (using the SCRN function). A modified version of the routines in Listing 1 to include right arrow capability are presented in Listing 2. Note that entry of right arrows will result in reentry of printing characters only, and that non-printing characters which are deleted with a left arrow cannot be reentered with a right arrow. When first writing these routines, | was concerned that, as they got more complicated, they would get slow enough to hinder the user. However, as presented in Listings 1 and 2, the routines are fast enough that they will not lose any characters even from a fast typist. When using these routines in long programs, it would be a good idea to renumber the routines and put them at the beginning of the program so as not to slow them down. The only time speed might be a problem would be if Applesoft were to decide to “collect garbage” (delete old strings) during data input. To eliminate any concerns about speed, the routines presented in this article could be rewritten in machine language. However, | have not yet found this necessary. While these routines have been tested very carefully, the bugless program is yet to be written. If any bugs are found in these routines or a resourceful user finds a way to make them bomb, | would greatly appreciate being notified. | would also be interested to learn of modifications and interesting applica- tions that other programmers come up with. Certainly, there are an infinite variety of approaches and modifications which may be used to provide this form of user-proof input Happy programming, and may your users be well proofed. EE “My Legend memory expansion cards enhance my Apple and are a superb product for the Apple Computer.” I think the cards are mapped appropriately for extra storage. The software supplied makes the cards useful even for those who can't modify DOS on their own. I look forward to upcoming products from Legend.” Steve Wozniak Co-Founder, Apple Computer, Inc. If Steve Wozniak, Co-Founder of Apple Computer, Inc., thinks this highly of Legend products, we're doing something right. Go to your nearest computer dealer today and find out for yourself about Legend products. The Original Hi-Density RAM Products for APPLE II Legend Industries Ltd. West GERMANY “Apple Il is a product of Apple Computer, Inc June 1983 21 Versaform Review by Gene Wilson Versaform from Applied Software Technology, Inc. 14125 Capri Drive Los Gatos, CA 95030 VS-1 (Apple Il Floppy disk) VH-1 (Apple II Hard Disk) VS:3 (Apple ///) Introduction Advertised as a “business forms processor’, Versaform is in facta versatile data base management system, available for the Apple Il or the Apple ///. The group of runtime Pascal programs that makes up Versaform is so extensive as to rival software running on larger “mini” computers. Transaction recording (including printouts), data processing and report generation have been brought to a level where the computer user needs no special tools or training. Versaform’s form design flexibility is a real plus in helping non-computer people to understand, use and accept the system. The examples in this article have been provided from a database which was actually prepared on an Apple II with Versaform to handle the daily and monthly billing and invoice information for a West Coast truck brokerage firm. The broker provides trucking services to clients from a pool of available independent truck owners. The broker receives payment from the client, makes certain deductions (including the brokerage fee), and pays the truckers. The needs and available trucks vary from day to day, which means that no two days are alike; reconciliation of the data is not a simple process. The task of separating the many daily trucking operations, each with its own “ticket” or “day card”, into the various daily summaries and monthly invoices, statements, and reports is one for which Versaform is well suited. Much of the labor involved in taking the daily tickets and turning them into computer data has been removed by features like automatic filling, lookup tables and default values. Even the format of the former manual trucking ticket can be reproduced on screen to give the company emplyees a familiar “fill-in-the-blanks” system that is very fast and efficient! There are many other data base programs on the market Versaform fills a particular function that lies somewhere between the very rigidly structured formats of DB Master, and the mindbending task of learning another “language” with dBase Il. The other programs are great, but only Versaform allowed me the freedom to take a quick shot ata form design or entry screen formats. If] don’t like the end result, it only takes a couple of minutes to make it better. 22 Apple Orchard Floppy Disk Version Versaform comes in either a floppy disk (two drives mini- mum) or a hard disk version for the Apple I The Apple /// Versaform contains two boot disks, one for two-drive systems, and the other for 3-drive and hard disk systems. In the floppy disk versions, each program disk covers a general function; here is a list of the disks: (1) Design Program Disk; (2) Filing Program Disk; (3) Report Program Disk; (4) Copy/Print Program Disk; (5) Tutorial Disk; (6) Report Work Disk. Many people are intimidated by the pile of diskettes that comes out of the box; don’t be. Disk 5 is a Tutorial session, and is not part of the ongoing system. The other five disks are separated by activity. For example, designing a form (Disk 1) is a task which will seldom (if ever) involve simultaneous use of any of the other program diskettes. Filing (Disk 2) is another task which seldom involves the generation of reports or fresh design work. Most of your sessions with Versaform will involve only a single system diskette. This is the reason that the Pascal System is on each of the diskettes. This is also why you must have a minimum of two floppy disk drives on line (the second is for your data diskette). Reports require Disks 3 and 6; the requirement of a Report Work Disk (Disk 6) is created by the need to store intermediate files during the processing of reports. The Copy/Print program disk (Disk 4) is very handy for segmenting the data into multiple data bases, or for elimination of old records (file updating), etc. You select and boot with the function disk you wish to use. Hard Disk Version The hard disk versions (II and ///) tie all of the functions together with a master menu. There is a very complete installation guide for the Corvus Hard Disk System. The eight pages of information were presented in sufficient detail to allow a correct installation on the first pass. Setting up 1000 blocks (one block equals 512 bytes) for the program (as stated in the manual) gives a pretty wide margin for later addition of files! A look at the hard disk files shows that 728 blocks were required for the Versaform programs. A few more blocks were used on the boot disk for VERSAFORM.CODE (four blocks for the menu that ties everything together so neatly), and for BJTERM (one block), the configuration information file. SYSTEMLIBRARY is going to have nine blocks added. SYSTEM.STARTUP can be set to chain directly to Versaform, or VERSAFORM.CODE can be renamed SYSTEM.STARTUP on the boot volume.) As a further note, only the programs on Disks 1 through 4 need to go on the hard disk. There is some duplication of identical programs on various disks to allow the system to run smoothly in the floppy environment (that is, to minimize disk swapping). Only one copy of each of these programs is needed in the hard disk system. Why a hard disk? Speed. The hard disk is much faster than the floppy. (We all suspected that!) Finding records in a very large file is also faster with a hard disk. Loading and swapping program segments and messages is extremely fast (and very pleasant for the user), as information, menus and records literally “leap” onto the screen. but, don't look for the hard disk to make the CPU do any magic. Looking through a huge data base while sorting for a special report could take all night (just like the floppy version). Be aware of the limitations while the obvious advantages flash before you. Configuration The most important part of getting into Versaform is to read and thoroughly understand the System Configuration Pro- gram. The true power of this program will not be seen unless things are done correctly; the woods are full of people who have said, “I didn't know it could do that.” There are provisions for assigning key-activated commands while in data entry mode, and terminal initiation sequences can be manipulated from here. You can even have a standard printer initialization sequence, but still have the option of entering a different sequence at print time. This allows printing of some reports in compressed font mode, while others can be in any font or size/style available on your printer or interface card. The configuration file is named BUTERM, and it must be on every disk to be used as a boot disk (Design, Filing, Report and CPrint). Figure 1 shows a printout of a system configuration list Good News - Bad News: As important as the configuration process is, it's the LAST chapter in the User's Guide. Time for a little philosophy. Documentation isn't a major problem. The whole series of programs called Versaform is set up with the non-computer type person in mind. The menus are clear and usually concise. The decision process is straightfor- ward, and there is ample opportunity (in most cases) to “back out” of a bad decision. There need be no fear of making a mistake that can't be rectified without losing many hours of work. This quick experimentation can be a boon to the person who isn't entirely sure about the final layout or appearance of a report. Designing the Form This is the easiest part of the whole system. Simply decide what you want and where, answer questions regarding range checking, length, justification, if keyboard entry is mandatory, SYSTEM CONFIGURATION BJPROG: BJTERM Prefix code for this terminal is: NONE COMMAND CODE PREFIXED Display the cmd menu Validate 3 Get a form Save a form First form in file Last form in file File space report Print current form Calculator Next form Back to previous form Clear to blank form Erase unvalidated data Page forward Page backward Remove the current form Index list Delete a line Cursor to command line 27 Quit - exit the program SESE S ETE G EET ET ET TEE Video reverse type : O (none) Video reverse seq : NONE Normal video seq : NONE Terminal initialization seq: NONE Printer page width default : 80 Printer page length default : 66 Printer does not have form feed Printer does take LF after CR Printer initialization seq: NONE Operator will not be asked for printer control sequence. Display dummy data character is "." Printer dummy data character is "." Program volume names : Vol name for Design pgm is BJPROG . Vol name for Filing pgm is BJPROG . Vol name for Report pgm is BJPROG . Vol name for Copy/Prnt pgm is BJPROG . Vol name for Rptwrk disk is #5 . Default vol name for files is BACK1 . Diagnostic mode is not set. Figure 1 June 1983 23 look-up table, calculations, automatic filling, etc. The program will ask all the right questions, keep track of the answers, and even give you a hard copy of the session's results. Changes are easy to make. The input mask can be built and then changed, modified, or drastically altered just as quickly. Figure 2 shows the Truck Ticket Entry Form we designed. Filing No secrets here, but a few pleasant surprises. Hard work can be replaced by look-up tables, built-in calculator functions, and default values. Yes, you can enter quantity and a stock number, and Versaform will first look up the unit price from a lookup table you have created, and then calculate the extended amount Just keep dumping data into the machine. The program will make things as tolerable as possible, and a lot of checking can be done to see that the data entry is done properly. Hard copy of the day's activity can be obtained as well. There is no reason to have faulty data if a reasonable system of checks is maintained. The data entry does not have to wait long periods while the screen is reformatted between records. The program is fast in that area, and will not slow you down. The Command Line is available at any time while entering data: CMD:....V, G, SA, N, B, CL, PF, PB, R, I, @ Truck Ticket Entry Form: Job .. Ticket # ...... Mo .. Day .. Code . Qwner ..... + Driver Gross Amt . Less Brok . sees Less PUC. ......--- Net Due.© ...------ BACK1: TRUCK 260 26-Sep-82 r- BJWORK 12 13-Jun-82 266 < UNUSED > z 278 The command line doesn’t include all of the possible | commands available to you; pressing “?” and «RETURN» gives the full display of available commands: Validate (V) | Get a form (G) Save a form (SA) First form in file (F) Last form in file (L) File space report (SP) Print current form (PR) Delete a line (D) Next form (N) Back to previous form (B) Clear to blank form (CL) Erase unvalidated data (E) Page forward (PF) Page backward (PB) Remove the current form (R) Index list (I) Calculator (CA) Quit - another file (Q) Semi 10Whlr Truck # ....-. Hrsi ...... Hrs2 ...... Rate Rate se eeeeeee ee TRHL 49.50 Tr#2 46.30 Amti ..e2-- AmtZ2 ...20e S12 Datafile 512 Datafile 2/2 files<listed/in-dir>, 278 blocks used, 2 unused, 2 in largest File #9: TRUCK File size: 1040 storage units. Minimum form size: 110 characters, Column line size: O characters 1 storage units. Estimated file capacity: 936 forms with no column lines. Figure 2 24 Apple Orchard Now look at Figure 3, which shows the Checking and Automatic Filing information for item “Mo” (month). We see that the item Month has a minimum length of one character, a maximum limit of two; the number is right justified; it must be numeric, and it is mandatory (meaning you must enter data in this item from the keyboard.) Low acceptable value is 1 and high is 12. Any number out of this range will simply not be accepted. CHECKING AND AUTOMATIC FILLING Minimum-length 1. Justify-(L/R/#) r Numeric --- (Y) y Yes-or—no --(Y) . Maximum-length- 2. Selfchecking (Y) . Date ------- (Y) . Mandatory -- (Y) y EXTENDED CHECKS Ranges (Y) y List (Y) . Format (Y) . AUTOMATIC FILLING Lookup (Y) . Todaysdate (Y) . Calc - (Y) . Column Total (Y) . This item: Figure 3 Look-up Table Now we get fancy, using the Lookup Table feature of Versaform. Information can be stored and cross-referenced using this feature. In our example, we tied not one but two data items, “Owner” and “Driver”, to the “Truck #” item. (See Figures 4a and 4b.) You enter the truck number, and Versaform automatically places on the form the data from the lookup tables, The truck owner and driver were both found and plugged into the screen form after the user had entered only two to five digits of information. You can, if necessary, enter a value different from what the table provided by merely typing the new, overriding data right over the information supplied by the table (couldn't be easier). This allows a tremendous speedup in data entry. Itis also one of the places where | felt the program is limited. There is provision for only 99 lookup items per file. This could be too small for many applications. In this data base, every truck number is unique. This saves a great deal of time if much of the data can be keyed to a common (but unique) item. TABLE LOOKUP The data for this item will be obtained by looking it up in the table below. The item to get the lookup value from is: Item name Truck. #.....000eee0e Look up Result Le he BIG.’J’.TRKG. BIG.’ J’. TRKG. BIG. ’J’.TRKG. BIG.’ J’. TRKG. BISHOP. BLANCHARD. . AL.CAIN. . CIRCLE.’H’.... DAVID.ROGERS... DDL. TRKG... DDL. TRKG. DDL. TRKG. P&K. TRKG. P&K. TRKG. GORDON. ... ‘ This item: Qwner.............05 Figure 4a TABLE LOOKUP The data for this item will be obtained by looking it up in the table below. The item to get the lookup value from i Item name Truck. #.......0e2002 Look up Result L# ....L. wee ee eRe O1 J-1... BELL... 02 J-2... CAMPBELL, 03 J-3. 04 J-4... OS KB-1.. BREAD. . LUCAS... KARL. BISHOP. 06 B-21.. L.. ANDERSON 07 AC-1.. AL.CAIN. . 08 H-88.. J..CHRIS... 09 T-1... D..ROGERS.. 10 DDL-1. BULLOCK, . 11 DDL-6. Ww. .SMITI . 12 DDL-7. BULLOCK.... 13 H-10.. J..HIGDON.. 14 H-11.. BEN. HOSKINS 15 K-99... K.E..JOHNSON 16 K-111. KINNARD.... 17 R-15.. 18 R-18.. 19 R-83.. 20 O-1... 21 R-97.. 22 505. 23 T-1. 24 G-1. 25 G-2. R.T. .EDWARDS B..WELSCH. SHELTON. O. . WEBB. APARICIO. T..FORD. ROGER. THOMAS. D. «MARSHALL V.R..GORDON. .. This item: Driver.......22.0008 Figure 4b June 1983 25 The Net-due item needed a Checking/Filling and a calcula: tion mechanism as part of the form design; it's calculated to two decimal places. Calculation begins with Gross-Amt, sub- tracts the Less-Brok item, and subtracts the Less-PUC item. Roundoff errors should be trapped and eliminated from the data. (Try explaining three-cent “bust” in the month's receipts and you'll see the value of storing numbers rounded to two decimal places!) Dummy (intermediate) items can be set up to accomplish further manipulation of the data. CHECKING AND AUTOMATIC FILLING Minimum-length .. Justify-(L/R/#) 2 Numeric --- (Y) . Yes-or-no --(Y) . Maximum-length- .. Selfchecking (Y) . Date -— a Mandatory — F EXTENDED CHECKS Ranges (Y) . List (Y) . Format (Y) . AUTOMATIC FILLING Lookup (Y) . Calc - (Y) Y Todaysdate (Y) . Column Total (Y) . This item: Net.Due.$........... Figure 5a CALCULATION The calculation may be made by adding, subtracting, multiplying, or dividing two items, or one item and a number. Operations are +,-,*,/,Low(L),High (H) Oper ations Items/numbers Ii: GROSS. AMT. LESS. BROK. LESS.PUC.. This item: Net.Due.$........-++ Figure 5b Reports The whole idea of having a data base is to be able to store and manipulate the data. The report module allows the data to be displayed in almost any imaginable format, on pre-printed forms, in many different sorting orders. Different combinations of data can be readily compared. The standard reports are handled well. Simply move the cursor around the entry screen and indicate which items you want to have printed (and the order of printing). Subtotals, item totals, and sorting criteria are all established in a fast, straight forward manner. Changes are easily made. Figure 6 shows the payoff: an activity summary printout for all truckers with breakdown of hours and earnings. The real challenge is to design a print format to fit a pre- printed form, one which has critical locations for items of data. The tools provided include a numeric scale and a “dummy” record for the form that can be printed, using asterisks to show maximum data fields. This removes doubt as to just where an item will appear. Text can be added to every printed form to further clarify the data that is output. Versaform has provided a key index for record search and retrieval; use it. Any record can be found anywhere in even the largest of databases, but the search must be ona key item to be really fast. Use the built-in features and data can be manipulated at amazing speeds. Calculator Another nice feature is the calculator, which provides a dynamic tool for invoicing. In conjunction with column type data entry, it can provide a very fast billing service. The standard four functions (add, subtract, multiply, divide) are supported by additional functions which can change sign, invert, round, total columns, calculate a check digit, or validate data. Some 26 Apple Orchard statistical functions aren't provided, which limits Versaform’s ability to produce many types of scientific reports. The calculator is a good device for adding round-off routines where necessary. Sorting and Printing Reports Provisions have been included to subtotal, sort and total on any item(s) in the data base. Report Control instructions can be filled in and then saved for repeated use. A particular instruc- tion “form” can be called up and modified (for monthly reports, etc.) The ease of use makes this feature a real joy. The speed and versatility makes it possible (and convenient) to experiment and adjust until the desired result is obtained. It isn't necessary to have an idea for a form chiseled in concrete before booting up. No big preparation need be done in advance. Just get into it and see if the computer cranks out what you thought you wanted. This is one of the best features of Versaform; the ability to create “on the fly’. No one likes to be tied down to a program that demands that every little dot be placed in an absolute location or two hours later it won't work. That doesn’t happen with Versaform. Export Your data base probably has information that can be collated or placed into some type of written report with a word processor. The facility Versaform provides for this is the Export option of the Report Definition form. An Apple Pascal text file will be created on the data you have asked for, in the proper order as well. This text file will not include header titles, page numbers, etc. or other information that would clobber the entry of this data into a word processor program (or another data base with a completely different format than the original). Export has some less obvious uses, including placement of very specific data blocks into other files, data bases, etc. This REPLAY IT Apple Program Copy And Development System Disk Formatting Irrelevant Does not interfere with other cards Card is transparent until copy is desired Copies all 64K with *no* compression Menu driven Copy and restart in un Copies memory resident programs Analyze programs Development tool Why ours is better! 1. Accurate copy of memory 2. Language card not needed to copy or run - when using Replay Card 3. Fast copy €% restart - 15 seconds - 4. Analysis programs and 60 pages of documentation 5. Copy system in eprom - No need to boot other disks at copy time - To order or request info: Write or call Micro-Analyst, Inc. P.O. Box 15003 Austin, TX 78761 (512) 926-4527 Dealer Inquiries Welcome Cost: $150.00 [includes postage) Outside U.S./Canada add $10 shipping Texas residents add $7.50 sales tax VISA/MASTER CARD accepted!! REPLAY Il is intended to be used as an analysis tool, for program development, and for making archival backup copies. “Apple is a registered trademark for Apple Computers Inc naa ir 15 seconds nr iW Wasi rica aii Viiv Tn REPLAY ll is an interface card that is slot independent. Users can stop a program, examine and change memory, or copy the pro- gram, and restart. Control of the APPLE is obtained by pressing the remote switch which comes on an 18 inch cord outside the APPLE. REPLAY II does not copy the original disk, rather it copies the program executing in memory. If a copy is desired a blank disk is inserted in drive 1 and the options on the menu are contained in the eprom on the REPLAY II card, no other disk needs to be booted for copying, unlike other copy cards. The very act of booting another disk alters memory which is detectable by some protected software. REPLAY II does not change ANY memory. Extra money is buffered to allow copying and analysis without altering the original memory contents. REPLAY Il faithfully reproduces the lower 48K of memory in a fast load format. The upper 16K can also be copied for a 64K copy. Standard DOS 3.3 files can be created for storage on floppy or hard disks. A RAM card is needed for this. REPLAY II is fully documented in a GO page manual. Utility pro- grams supplied with the REPLAY II card include Program Analysis, Comparisons, Packing, and Compression. A ianguage card is not needed to run packed program copies. Because most programs are written in Assembly language, the user should be familiar with Assembly in order to fully utilize the advanced Analysis and Packing programs. REPLAY Il can automatically move protected APPLESOFT pro- grams to a standard DOS 3.3 disk for listing or modification Now game players can save a game at any level and QUICKLY restart with the REPLAY Il card. Users can freeze games, change variables to obtain unlimited ships or power, etc., then restart the program. Saving high scores is easy! Minimum requirements are an APPLE Il and a single disk drive. TRUCKING SUMMARY-BY OWNER fa Owner Truck Driver Ticket) Hrst Hirs2 Gross Aat Less Brok Less PUL. Net Due.$ il AL CAIN AC-i AL CAIN 2504 AL CAIN 0 1 BIG *J’ TRKG Jd BREAD 2461 297,90 14.85 0.67 281.48 1 BIG 7d" TRKG J-4 LUCAS. 2707 a 309.38 15,47 0.70 293.21 2 BIG 7d’ TRKE d-2 CAMPBELL 2552 5.50 2712.25 13,61 0.6! 258.02 2 BIB J’ TREE J-3 BREAD 2467 6.00 297.00 14.85 0.67 281.48 10 BIB ‘J’ TRKE J-2 CAMPBELL 2554 7,50 371.25 18.56 0.84 351.85 i BIG *J’ TRKG J-2 CAMPBELL 2558 4,75 235.13 11.76 0.53 222.84 12 BIG ’J? TRG JZ CAMPBELL 2560 8.00 396.00 19.80 0.89 375.31 2 BIG 7d’ TRKE J4 LUCAS am 7.50 371.25 18.56 0.84 351.85 15 BIG ’J’ TREE J-2 CAMPBELL 2564 8.00 19.80 0,89 375.31 15 BIG "J? TREE J4 LUCAS. 2712 7,50 18.56 0.84 351.85 16 BIG ’J? TRKB d-2 CAMPBELL 2568 7.75 19,18 0.86 363.59 1 BI6 ‘J? TRKG J-2 CAMPBELL 2572 4,00 9,90 0.45, 187.65 at BIG *J’ TRKG d-t BELL 2189 7.50 18.56 0.84 351.85 kj BIG ‘J’ TREG dd BREAD 2463 4.50 1.14 0.50 QUAL BIG ‘J’ TRKB 90.75 0 449214 224.60 10.13 4257.40 15 BISHOP KE-E KARL BISHOP 9999 175 383.63 16 BISHOP KB-1 KARL BISHOP 2569 8.00 396.00 BISHOP 15.75 0 779.63 10 BLANCHARD L. ANDERSON 2557 49,50 2 BLANCHARD L. ANDERSON 2561 383.63 t BLANCHARD L. ANDERSON 2727 396.00 1 BLANCHARD L. ANDERSON 2729 383.63 47 BLANCHARD L, ANDERSON 2730 185.63 BLANCHARD a 1398.39 10 CIRCLE 7H? H-88 J, CHRIS 1241 6.00 297.00 CIRCLE °H? 6.00 0 12 DAVID ROGERS ie! D. ROGERS 2257 5.50 DAVID ROGERS tT] 5.59 Figure 6 28 Apple Orchard feature is a real “sleeper” that can provide some interesting applications for advanced users. Pre-Printed Forms Changing over to a computer system will create some tension among those people in an organization who have depended on having the data massaged in a familiar fashion over a long period of time. Transition is much easier if the old- style forms are still used. Managers can still see the data they've always had, but now it is more readily available, and usually neater. The pre-printed forms option allows the placement of data at specific locations on the pre-printed forms. A grid system is established with the printer. The entry locations are then determined, and output information is relayed by the user to Versaform. Output will then “fill” the correct boxes, columns of information will align, and totals will be in the right locations. With this option, it's possible to print mailing labels, envelopes, letters and invoices, and the bonusis that nothing need appear to have been “computer-generated”. Business can continue to appear as if the old ways are still being observed, and that quality is not going to be sacrificed to improve speed. Stockpiles of old forms need not be discarded. Printing and setup costs for new forms can be avoided entirely as well. Documentation Strong and weak points. The good news is first that there is a thorough tutorial disk and very detailed Hands-On manual. The reference Summary is well done and to the point The bad news is that the “User's Guide’, although well-written, is not well-presented, nor does it group information where it can be easily located. The most important information is about the Configuration process, and this information appears in Chap- ter 10, the last chapter. My advice is to read this manual carefully, one time, then put it carefully away in a dark place at the bottom of a drawer (preferably in another part of the building). There is a very good tutorial disk, a “Hands-On Experience” manual, and a very detailed reference summary. Don't look for configuration information in the Hands-On Manual or the summary; it just isn’t there. The simple truth is that the program itself is so well documented that the average user just won't have any need (after the first use) to look at the manual. Summary Versaform is a valuable tool, with a personality unlike any of the other data base programs on the market today. Not for all applications, it handles small and medium data base applica- tions in a very flexible and efficient manner. Ease of use is the key at all times. Program flow from idea to finished report is swift and sure. Report generation is so fast that there is no hesitation in playing “what if” with the data. The program is a real joy for the person desiring to power up and create. le users: Buy Transend I for Vv $89. And get a valuable subscription offer from THE SOURCE. For just $89. Transend 1 software can make your Apple com- municate with any computer or information service over the telephone lines. And, for a limited time, you can take advan- tage of a valuable subscription offer from THE SOURCE, AMERICA'S INFORMATION UTILITY™—your connection to up-to-the-minute business and UPI news; stock prices; information and shopping services—virtually unlimited uses. Right now, SSM's complete line of Transend commu- nication software includes this subscription offer. For de- tails, ask your local de: dealer, piease call: 80 Offer expires June 30, 1983. bout Transend. For the name of a local SSM 2400, ext 912 (or 800-772-2666, ext 912 in California] Apple is a trademark of Apple Computer, Inc. Transend is a trademark of $8M Microcomputer Products, Inc. ‘THE SOURCE and AMERICA’S INFORMATION UTILITY is a servicemark of Source Telecomputing Corporation, a subsidiary of The Reader's lA man Digest Association: ne i} a7 Transend it. SSM Microcomputer Products Inc. 2190 Paragon Drive, San Jose, CA 95131 June 1983 29 Writing Custom Utility Programs by Jim Hopper While there is a wide variety of disk utilities available, very few are amenable to customizing or incorporation into a larger program. To be truly useful in these respects, a program should include documented source code. Until fairly recently the user had little choice but to use the commercial programs “as is"; however, the recent explosion of information on the Disk Operating System (DOS) has made it relatively easy for the user to write custom utility programs. The listing with this article is an example of a small utility program that exercises many of the routines used to write more complex utility programs. This program creates a text map of a diskette’s sector usage, along with a printout of the number of free and used sectors. It is made up of four main modules which use two general library subroutines and several monitor routines. The structure of these modules and the use of the monitor routines will be discussed in the following paragraphs. One special note: this listing was written to be assembled by On-Line System's LISA v2.5, and as such it uses some facilities unique to this assembler. Most of these differences are obvious; however, the use of LISA’s local labels will need some explanation. A local label is defined by an up arrow (Shift-N) followed by a digit (0 to 9 inclusive). These labels can be reused many times within the same program, thereby eliminating the need for a unique name for every little loop or skip in a program. Local labels are referenced by direction and name, where the direction is defined by < to branch to the first occurence of the label previous to the current line, or > which will branch to the first occurence after the current line. These labels can be replaced bya series of unique names if LISA v2.5 is not available. The first routine executed is SCREEN which creates the formatted display that is the background for the map. A rectangular border of inverse hex digits is created that labels the map locations for each track and sector on the disk. An inverse title and credit line is printed on the bottom line of the display, and a legend explaining the map’s symbolism is printed immediately below the lower border. Two fields are created and labeled for a free and used sector report. All access to the screen and keyboard is through a set of monitor routines which will be breifly discussed below. Notall these routines are used by SCREEN, but they are used elsewhere in the program, and are included here for complete- ness. The subroutine HOME clears the 40 column screen, and positions the cursor at the upper left corner of the screen. There are no inputs to this routine and the “homed” screen is the only output. The contents of both the accumulator and the Y register are destroyed by this routine. The vertical tab function is performed by the VTAB routine, where the zero page variable CV is the vertical position numbered down from the top, its values range from 0 to 23. To use this routine, the vertical position is loaded into CV, then a subroutine call to VTAB is executed, which destroys the contents of the accumu: lator. 30 Apple Orchard An ASCII character is output to the screen by the COUT1 routine. It is used by loading the desired character into the accumulator and executing a JSR instruction. The character is printed at the position of the cursor as defined by the VTABed position, and the contents of the zero page variable CH, which has a range of values from 0 to 39. A carriage return is output by the CROUT subroutine, the contents of the accumulator are destroyed by this subroutine. In PRBYTE the contents of the accumulator are printed to the screen; however, the value is not treated as an ASCII character. Instead the two hexidecimal digits represented by the accumulator value are printed. RDCHAR reads one byte from the keyboard and returns it in the accumulator. The program pauses until a character is input There are three different character sets in the Apple II computer: inverse, flashing, and normal character sets. Not all characters are represented in all three sets. The ASCII codes for the normal letters‘A’ to'Z’ are $C1 to $EO, and the numerals ‘0" to 9’ by $B0 to $B9. Inverse letters are given by the hex codes $01 to $1A, and numerals by $30 to $39. The codes for the 16 hex digits ‘0’ to ‘F’ are thus not entirely sequential. To print the sequence it is necessary to check for the last digit, then change the next code to ‘A’. The lines 48 to 64 of SCREEN demonstrate this for the inverse set. The character ‘0’ is initialized by loading the code $30 into the accumulator. The character is then printed by the routine COUT1, and incre- mented to the next character. It is necessary to check for‘ :’; when this occurs the sequence is moved to ‘A’ by changing the code to $01. In this routine the sequence is repeated several times to mark every track, thus the sequence continues until 'F" is printed. At this point, the sequence is restarted at ‘0’ and continued until the character counter in the X register is zero. The tracks are marked on the top and bottom borders, and the sectors are marked similarly down both sides. The legends, labels, and title line are created using the assembler's Psuedo Ops which generate strings of ASCII codes from a text string. The ASC Pseudo Op generates ASCII codes for either flashing or normal text depending upon the string delimiters used. Inverse strings are generated by the INV Pseudo Op, both types of delimiters generate identical code strings. These code strings are printed using the PRINT library subroutine; a zero is considered the end of string marker. The diskettes Volume Table Of Contents (VTOC) is read from track $11, sector 0 by RDVTOC. The DOS Input Output Block (IOB) is initialized to accept any volume number, and the correct track and sector. The buffer location is loaded both into the IOB, and stored as a zero page pointer to the buffer. The VTOC is then read into this one page buffer by using the Read Write Track Sector (RWTS) routine from DOS. The VTOC contains a bit map of the sector usage on a diskette, and a pointer to the first sector of the catalog. The bytes $38 to $C3 in the buffer are used as the bit map, with four bytes reserved for each track. At the present time only two of these bytes is used to represent the 16 sectors on each disk. Thus, each of the 16 bits is used to represent one sector ona track. A'‘1' indicates a free sector, and ‘0’ a used sector. For example, if all the sectors ona track are free, the two bytes are $FFFF, and if used, $0000. Partial usage of a track is indicated by a value between 0 and $FFFF. The first byte contains the map for sectors $F@@$8, and the second byte $7@@$0. For example: sectors byte #1: FEDC BA98 byte #2: 7654 3210. For more information on the VTOC format see References 1 and 2. The subroutine STATS prints the usage statistics to the predefined fields created by SCREEN. The library routine HEXDEC is used to convert the numbers to decimal values. Input is via the 2 bytes at SUM and SUM 2 + 1, and output values are stored in DECO, DEC1, DEC2 with the low order two digits stored in DECO. The output bytes are Binary Coded Decimal (BCD) representations which are output through the PRBYTE routine discussed above. For more information on this conversion routine see reference #3. MAP is the main program and as such calls the other three modules and translates the VTOC bit map into the text map. Starting at track zero, the index to the VTOC buffer is computed using the formula Y= 4* TRACK + $38 and the horizontal cursor position for this track is calculated by CH= TRACK + 1. The first eight sectors are mapped by the high byte of the pair so the index is initially incremented to read this byte. If the byte is $FF, all eight sectors are free and nothing is added to the map as blank sectors are indicated by space characters. If the byte is not $FF, then at least one sector of the eight is used, and the code starting at the label CHKBYTE is used to find out which it is. A count of the number of used sectors is kept in the two bytes labelled USED and USED + 1. The bits are rotated out of the accumulator into the carry bit which is checked for zero bits. If a zero bit is found that sector is marked as used by calculating its vertical position on the map by using the formula CV= SECTOR + 2 The cursor is positioned and an asterisk is added to the map to indicate a used sector. A ‘1’ is rotated back into the accumulator for every bit taken out; thus, the byte will become $FF when all the used sectors have been marked. The variable FLAG is checked to see if both bytes have been tested. If not, the index is decremented to read the first byte and the sector number is set to eight Once a track has been mapped the two unused bytes are skipped, and a check is made for the last track. hope you will find this a useful utility program, as well as an interesting illustration of the use of several important library and monitor routines. This program was written as part of a much larger utility program and as such is not as flexible as it could be. To create a stand alone program that is easy to use, some customization is required, which is the point of this article. | will leave you with the age old dodge used in physics texts when a problem is too much bother for the author to solve: “The completion of this project is left as an exercise for the reader”. References iar Computer, Inc.: The DOS Manual, Cupertino, CA, 2. Worth Don, Lechner Pieter: Beneath Apple DOS, Quality Software, Reseda, CA, 1981. 3. Wozniak, Steve: ‘Binary-To-Decimal shortcut’, APPLE ORCHARD, pp 52-53, Daly City CA, Winter 1980-1981. q ¢ BIEV FICW CIEV PICW FCW PICW FICW FCW PICW PICW FCW PICW PIEW BH EW HDEW HDC LILI. LILI, RIEI, LILI, RSE, FH ' Spanis LE? KIEV BIEW IEW FIEW FEW DY, ~ SOUTHWESTERN DATA SYSTEMS PRESENTS for the nish A PRACTICAL & EASY METHOD FOR LEARNING (OR BRUSH

Showing the first 100000 of 354283 characters.

mp.ls