Skip to main content

Apple Orchard v1n1 1980 Mar Apr

  • PublicationApple Periodicals
  • Pages110
  • SourceApple-Orchard-v1n1-1980-Mar-Apr.pdf
← Magazines Apple Orchard v1n1 1980 Mar Apr
/ 110
Source: Internet Archive — Aggregated Apple-era periodicals, 1981–2012.
Page 1
Loading…
Text content (OCR)
Volume One/Number One March/April 1980. O R CC H A R D THE APPLE NEWSMAGAZINE OF THE FIFTH ANNUAL WEST COAST COMPUTER FAIRE Introducing INTERNATIONAL APPLE CORE” = In this issue: = What is a User Group? = Programs and Features Published by the International Apple Core in cooperation with: * Apple Bay Area Computer Users Society « ad vis S.F Apple Core « oe * Apple Pugetsound Program Library Exchange « eHouston Area Apple Users Group « ¢ Michigan Apple ¢ Original Apple Cores « * New England Apple Tree « Philadelphia Apple User Group * Washington Apple Pi SUP*R° TERMINAL SUP’R’TERMINAL IS AN 80 COLUMN BY 24 LINE PLUG-IN COMPATIBLE BOARD FOR THE APPLE || COMPUTER SPECIFICATIONS 80 Columns by 24 lines, upper and lower case; all 128 ASCII characters. Upper and Lower case data entry using the APPLE II keyboard. Includes an Upper and Lower case 5x8 dot matrix ASCII character set, and inverse alpha characters. Character set can be user definable Includes VBC™ (video balance circuit) which enables the use of displaying 80 columns on an inexpensive 8 MHz CRT monitor Shift Lock Feature Works with APPLE PASCAL and APPLE BASIC PATENT PENDING * Incorporates PASCAL and BASIC control characters ¢ ALL monitor-type escapes are valid ¢ Follows protocols of PASCAL and BASIC operating systems ° Compatible with ALL APPLE II peripherals. Effective baud rate greater than 10,000; fast scrolling and clearing ¢ Synchronous operation with APPLE II ¢ Can beused with APPLE Il communication interface board to act as self contained terminal for time- sharing or other applications. M&R ENTERPRISES P.O. BOX 61011, Sunnyvale, CA 94088 Solve your personal energy crisis. Let VisiCalc"Software do the work. With a calculator, pencil and paper you can spend hours plan- ning, projecting, writing, estimating, calculating, revising, erasing and recalculating as you work toward a decision. Or with the Personal Software” VisiCalc program and your Apple* II you can explore many more options with a fraction of the time and effort you've spent before. VisiCalc is a new breed of problem-solving software. Unlike prepackaged software that forces you into a computerized straight jacket, VisiCalc adapts itself to any numerical problem you have. You enter numbers, alphabetic titles and formulas on your keyboard. VisiCalc organizes and displays this infor- mation on the screen. You don’t have to spend your time programming. Your energy is better spent using the results than get- ting them. Say you're a business manager and want to project your annual sales. Using the calculator, pencil and paper method, you'd lay out 12 months across a sheet and fill in lines and columns of figures on products, outlets, salespeople, etc. You'd cal- culate by hand the subtotals and summary figures. Then youd start revising, erasing and recalculating, With VisiCalc, you simply fill in the same figures on an electronic “sheet of paper” and let the computer do the work. Once your first projection is complete, you're ready to use VisiCalc’s unique, powerful recalculation feature. It lets you ask “What if?’ examining new options and planning for contingencies. “What if” sales drop 20 percent in March? Just type in the sales figure. VisiCalc instantly updates all other figures affected by March sales. Or say you're an engineer working on a design problem and are wondering “What if that oscillation were damped by another 10 percent?” Or you're working on your familys expenses and wonder “What will happen to our entertainment budget if the heating bill goes up 15 percent this winter?” VisiCalc responds instantly to show you all the consequences of any change. Once you see VisiCalc in action, you'll think of many more uses for its power. Ask your dealer for a demonstration and dis- cover how VisiCalc can help you in your professional work and personal life. You might find that VisiCalc alone is reason enough to own a personal computer. VisiCalc is available now for Apple II computers with versions for other personal computers coming soon. The Apple Il version requires a 32k disk system. For the name and address of your nearest VisiCalc dealer, call (408) 745-7841 or write to Personal Software, Inc., 592 Weddell Dr, Sunnyvale, CA 94086. If your favorite dealer doesn'talready carry Personal Software products, ask him to give us acall. VisiCale was developed exclusively for Personal Software by Software Arts, Inc (Cambridge, Mass. ‘TM-WVisiCale isa trademark of ‘ Personal Software, Inc “Apples a registered trademark ‘of Apple Computer, nc. MOVING DATA AT A SNAIL'S PACE BECAUSE YOU'RE FLOPPY BOUND? Let Corvus Systems put you back in the race! = For TRS-80f, Applet (including Apple Pascal), S-100 Bus—and now LSI-11. = Fully compatible hardware/s oftware. = 10-million byte disk: IMI-7710 = Proven Winchester technology. = 2-80 based Corvus disk controller. Comprehensive disk diagnostics. ip to 4 disks per system. ystem $5350 (LSI-11 $5950), #TRS-80 isa registered trademark of Radio Shack, a Tandy Co. +PApple isa registered trademark of APPLE Computers, Inc. 900 S. Winchester Boulevard CORVUS SYSTEMS, Inc. BESRhemertoniree) 408/246-0461 QUESTIONS & ANSWERS FROM SSM “What equipment can be used with the AIO?” Since the introduction of the AIO Serial & Parallel Apple Interface in September 1979, thousands of units have been sold to interface the Apple with a variety of printers and terminals. A partial list of devices that have actually been tested with the AIO includes: IDS 440 Paper Tiger Centronics 779 Qume Sprint 5 NEC Spinwriter Comprint Heathkit H14 IDS 125 IDS 225 Hazeltine 1500 Lear Siegler ADM-3 DTC 300 Ad 841 “Will the AIO work with a PAPER TIGER at 1200 baud serial?” Yes. The AIO has 3 handshaking lines for serial connections. The baud rate can be set with a rotary switch to 110, 300, 600, 1200, 2400 and 4800 baud. (Ask for a data sheet for more details on how to go up to 19,200 baud.) “Does the AIO work with Pascal?” Yes. The current AIO serial firmware works great with Pascal. If you want to run the parallel port, or both the serial and parallel ports with Pascal, order our “Pascal Patcher Disk”. “I’m an OEM with a particular need. Can Pee — "you that ce _— ce . ee eo sta p aan ee La _ meh be ) you can connect: ane ES a so an ay o Swit dard baud rates. On board firm- rar’ pe a powerful driver | This interface can be used to connect your Apple to a variety of parallel printers. The § _ programmable I/O ports have enough lines | to handle two printers simultaneously with handshaking control. The users manual includes a software listing for controlling parallel printers or, if you prefer, a par- allel driver routine is available in firm- ware as an option. And printing is only one application for this general purpose parallel interface. Two boards in one. SSM help me?” The AIO is the only board on the market that can interface the Apple to both serial and parallel devices. It can even do both at the same time. That's the kind of innovative design and solid value that’s been going into SSM products since the beginning of personal computing. The price, including PROMs and cables, is $135 in kit form, or $175 assembled and tested. See the AIO at your local computer store or contact us for more information. 74 AT] 2116 Walsh Avenue Santa Clara, California 95050 (408) 246-2707 Yes, The AIO is just one of several boards for the Apple that SSM will be introducing over the next year. We are also receptive to developing products to meet special OEM requirements. So please contact us if you havea need and there is nothing available to meet it. SSM will soon be moving to a new and larger facility in San Jose. Look for our new address and telephone number in our ads in Byte magazine, page 11. We welcome inquiries from new dealers, distributors and OEM’s. Please send in any suggestions, or applications information (AIO uses, printer and terminal hook-up diagrams, etc.) or your ideas for new products. We welcome your comments! G mai Enhance your APPLE to give you and your family more use and value of your current hardware than you thought possible through THE SOURCE . . . the world’s first infor- mation and communication utility for microcomputers. As Near As Your Telephone With a simply accoustical connec- tion to your telephone, your APPLE can become a part of a vast informa- tion and communication network which now serves thousands of home and business computers through a local phone call in over 300 U.S. cities. From UPI, New York Times to Local Entertainment Guides With THE SOURCE’s on-line key- word access, you can have important information sources in your own home the United Press Interna- tional wire service, over 5,000 infor- mational abstracts from the New York Times Consumer Data base, stock market reports, restaurant and entertainment information, dozens of sophisticated computer games, edu- cational programs, travel information and reservations, a discount buying service and hundreds of other information and entertaining services. Instant Nationwide Communication with Other Personal and Business Computers With your SOURCE network sub- scription, you will have the capability ve n your APPLE’ rame power : d and give your whole family a world of information, education, entertainment and communication with the first information utility. of instant nationwide communication with thousands of other microcom- puter users on THE SOURCE network. Use it to transmit programs and data, to relay business information, or simply to chat with friends ata fraction of the cost of other message systems. Expand Your Capacity for Programming and Storage Through Mainframe Power For your larger or more compli- cated programs, THE SOURCE offers you the ability to upload and down- load information to a large mainframe with unlimited storage capacity. You can program in FORTRAN, COBOL, EXTENDED BASIC, and RPG II with your APPLE and you'll never have a capability or a capacity problem again. The Source . . . Easy to Use for Your Whole Family You don’t have to be a computer whiz to enjoy THE SOURCE’s many information, entertainment, and com- munication advantages. All SOURCE services and information resources can be accessed in plain English with absolutely no prior knowledge re- quired of computer programming so the whole family can enjoy full use and value. The Source . . . An Affordable Compliment to Your APPLE System You'd pay thousands of dollars to duplicate the information and en- tertainment programs THE SOURCE offers. But THE SOURCE costs as little as $2.75 per connect hour (non- prime time), giving your family a value which is impossible to beat. Find Out How The Source Can Give More Power and Value to Your APPLE To find out how THE SOURCE’s many features can expand and com- plement the value of your APPLE and how easy it is to connect to the world’s first information utility, simply complete the coupon below or call our toll-free information hotline. There’s no obligation. Information Utility Free Information Request lease send me your free guide to THE SOURCE Information Utility for personal computers. | understand that | am under no obligation. CO I currently have a home computer. MAKE: ______, MODEL. C1 Please send me information on com- patible home microcomputers including the special low-cost equipment packages offered by THE SOURCE. NAME TADDRESSH cry stare: —_____z1. Please mail this coupon to: THE SOURCE 1616 Anderson Road™ McLean, Va 22102 Toll-free hot! MARCH/APRIL 1980 LZ" WHAT IS A USER GROUP by Val J. Golding To define user group, we must first define user. Very simply a user is an individual who has purchased or otherwise acquired a product. Webster defines user as “a person or thing that uses”. In the context to which we refer herein, user means an Apple II |computer user. Further, in our own definition user group implies in our own definition, user group implies a gathering or associa- tion of people with a common goal: to share with the others the knowledge in various areas that individuals may have gained. Currently in the United States, it is estimated that there are. between 50 and 100 active Apple computer user groups. User groups are not restricted to Apple users by any means. There are. also a number of groups devoted to the Pet, TRS80, etc. In addition, going back a bit further there were (and still are) computer c/ubs with a wider range of interest, i.e., not devoted to a specific brand or type of computer. These clubs were built around first generation microcomputers such as Imsai, Sol, etc., a breed which for the most part require some background in com- puter technology. These micros are not what the consumer expects today of ma- chines like Apple or Exidy, where one can walk into a computer store, plunk down a thousand or so and walk out with a computer that can be taken home, plugged in and immediately be put to use. In the mid 70’s, buying and assembling a microcomputer was akin to buying and assembling a stereo system, taking it home and plodding your way through a maze of wires and manuals, hoping that your pride and joy eventually would “run”. Out of this was born the first “user groups”, the computer clubs of the period. These clubs were of necessity hardware-oriented. Today the user group has taken on a new meaning and signifi- cance; they are groups where now the primary accent is on soft- ware and the exchange of information more closely allied to pro- gramming and operation. To understand the functions of a user group, it is necessary to look at some of the groups that are acknowledged as leaders and that were among the earliest formed. The first group around, to the best of our knowledge, was the Original Apple Corps in Los Angeles. They existed as early as December, 1977. Other groups that qualify as “pioneer” Apple user groups include the San Francisco Apple Core and Seattle’s Apple Pugetsound Program Library Exchange. It was only natural that as the microcomputer industry developed on the west coast, that the first user groups would be from that area. We have requested that each of the groups that contributed to the formation of the International Apple Corps furnish us with a bit of history and background on their respective organizations. Those vignettes follow here. THE APPLE ORCHARD PAGE 7 ORIGINAL APPLE CORPS by Kip Reiner The Original Apple Corps was founded by AVIDD Electronics in Long Beach, CA. Sandy Tiedeman was the first president of the club. He organized the first meeting of the Original Apple Corps in December 1977. This gave the Original Apple Corps the distinction of being the first Apple computer club in the country. The Los Angeles area was the early hot bed of activity for the Apple II as shown by an increase from six members at the first meeting to over thirty at the second meeting a month later. The Original Apple Corps has held two meetings at computer shows with very good results: The April 1978 meeting was held at the Percomp Computer Show in Long Beach. Over one-hun- dred members listened to Phil Roybal, marketing manager for Apple Computer, Inc. as he showed the Disk II prototype with a makeshift operating system which had to be loaded into memory in three different segments. At the third West Coast Computer Faire in Los Angeles, the November 1978 meeting was held. Over three hundred members in a packed meeting room listened to Steve Wozniak, the designer of the Apple computer, as he told about the history of Apple Computer, Inc. The Original Apple Corps meets on the second Sunday of the month in Lecture Hall 151 at Cal State University, Long Beach, at 12:00 noon. They use an Advent color projection television for video display along with black and white monitors along the sides of the room. Free software is given out at most meetings normally consisting of a full disk. In over two years of monthly meetings, the Original Apple Corps has had representatives of many major hardware and software manufacturers as speakers. The Original Apple Corps has made available a ready to run library with over 500 programs on disk for a nominal charge. These include programs in business, scientific, education, util- ities, and games. This month marks the one year anniversary of the Original Apple Corps magazine “Applesauce.” Our club is very proud of the magazine as a major source of information about the Apple computer and related products. In the last year the magazine has had numerous articles on programming in BASIC, Pascal, and assembly languages. The editor of “Applesauce,” Randy Hyde, is very experienced in Pascal. Both software and hardware reviews are included as regular features. In a recent issue Hi-res graphics was presented in depth. The Original Apple Corps has an electronic bulletin board system up and running as an information exchange for Apple Computer users. The club welcomes all hardware and manufacturers to speak at our meetings. Information on membership, subscriptions to ‘‘Apple- sauce”, and the program library are available at the following address: Original Apple Corps 12804 Magnolia Chino, CA 91710 Kip Reiner President Original Apple Corps DOES “GET” GET YOUR GO. In APPLESOFT when using the “GET” command in conjunction with DOS, follow it with a PRINT, else GET tends to do nasty things and mess up your DOS. PAGE 8 THE SAN FRANCISCO APPLE CORE by Ken Silverman The APPLE CORE OF SAN FRANCISCO is a non-profit or- ganization comprised of and supported by Apple II Computer owners. The Apple Core is run entirely by volunteer officers and committees. The club endeavors to aid other APPLE owners. All members are individuals (and their families), and NO shops, stores or corporations are directly registered. (However, any shop may register an employee c/o that shop). MONTHLY MEETINGS are held at Homestead Savings, at 5757 Geary Avenue, in San Francisco (at the corner of Geary and 22nd Avenue). Meetings are held on the first Saturday of each month at 10:00 a.m. THE CIDER PRESS is the official publication provided to the membership February through June, and September through De- cember. Included are program listings, tips, special features, re- views, editorial comment . . . The “Best of the Cider Press’ is published every January. “Apple Peelings’ takes over in July and August with an abbreviated, format consisting of minutes of meetings, Disk of the Month listing, product information and any News Flashes. The APPLE CORE LIBRARY of contributed programs is arranged by general categories. Members living in the San Fran- cisco Bay area may copy programs from the library at the fol- “lowing locations: Village Electronics - 668-4243 Computerland of San « 546-1592 Computerland of Belmont. . « 595-4232 Computerland of Marin . . . - 459-1767 Computerland of the Castro - 864-8080 AIDS - 221-8500 Courtesy and common sense dictate that a member call in advance to reserve use of required equipment. The stores pro- vide this service without charge. (Their aid helps us survive, so remember to return the favor with your patronage. The local stores have been VERY HELPFUL). Out of area members can get programs from the library through the mails in the following manner: 1. A member is required to donate at least one original or public domain program (not Copyrighted, please). 2. Donated programs must be sent on a disk or a computer tape placed in a self-addressed, stamped proper mailer, suitable for returning the disk or tape. Please use a Program Submission form. Include a note indicating the desired volume from the library that you would like to have copied. Carefully package the mailer and Note: CONTAINS LIVE COMPUTER PROGRAMS — DO NOT EX- POSE TO X-RAYS OR ELECTRICAL FIELDS — DO NOT BEND OR FOLD. Send to: The Apple Core Library Exchange P.O. Box 4816 San Francisco, CA 94101 INFORMATION/APPLECATION Please follow instructions as we do not want to see your disks or tapes ruined any more than you do. Only one library disk or tape will be processed per month. (The DOM-Disk of the Month is considered separately). .. The complete LIBRARY #1 is available to members for $150. Over 340 programs on 20 diskettes are packaged in diskette hol- ders, and bound in a SF Applecore binder. Over 30 pages about the library are included. THE APPLE ORCHARD MARCH/APRIL 1980 The DISK OF THE MONTH is a group of recently donated programs or updated utilities, etc. It was originated to encourage new members to be able to write programs by having examples to study and enjoy. Members unable to come to the meetings can send in $7.50 (US) for the current DOM which covers the cost of the disk, mailing and handling. Three past months are also available for $7.50 each. Members who come to the meetings can obtain the same DOM’s for $5.00 each. Prices are subject to change. NOTE:All programs on the DOM’s go into the library according to category. The stores do not have the COM’s on file. Current interest groups include NU’ERS (for new users), AS- SEMBOLEERS, CAI (Computer Assisted Instruction), Personal Finance, Medical & Health, DOS (Disk Operating Syntax), In- come Tax Programmers, etc., etc. APPLECATION FORM Check One: NAMES oe ce memes co om ess cw oe New Member ADDRESSS sx: ca-enge avin eee an CO Renewal sie bass brags ah sua) re oe con ves ey hee a0 1 Address Update ——— O Newsletter Trade at Header ae aes even ak oka es Se (Subject to Approval) PHONE NO vescsieawwrcres ase MEMBERSHIP RATES: $15.00/yr. USA-Newsletter sent 3rd class $20.00/yr. Foreign-Newsletter by surface mail $25.00/yr. Foreign-Newsletter by air. Send check or money order, US only. Send no cash! NOTE: In April yearly dues will be paid by all members. Amount will be pro-rated on your renewal date. STOCK MARKET SYSTEM For The Apple II With Disk II Individual Chart/12 Week Running Average ¢ INDIVIDUAL CHARTS * COMPARISON CHARTS IN COLOR © RUNNING AVERAGES PLOTTED AND ERASED © RESISTANCE/SUPPORT LINES PLOTTED © MAINTENANCE PROGRAM MAKES IT EASY TO UPDATE DATA, HANDLE STOCK SPLITS, ETC. .. * ONE YEAR’S WORTH OF WEEKLY STOCK DATA (HIGH, LOW, CLOSE & VOLUME) ON YOUR CHOICE OF ANY STOCKS ON THE NYSE OR AMEX * PROGRAMS & MANUAL. - $79.95 STOCK DATA.. $9.95 per stock MANUAL ONLY $4.95 * FOR MORE INFORMATION VISIT YOUR LOCAL COMPUTER STORE OR WRITE DIRECTLY TO: RTR SOFTWARE, INC. DEPT. AO1 P.O. BOX 12351 EL PASO, TX. 79912 (915) 544-4397 MARCH/APRIL 1980 APPLE PUGETSOUND PROGRAM LIBRARY EXCHANGE by Val J. Golding It is curious, in retrospect, to examine ones past and attempt to determine what went wrong or what went right. As one might surmise, there is no one single factor responsible for the current popularity of Apple Pugetsound. Certainly there was no hope or expectation on behalf of A.P.P.L.E.’s founders that the group would grow to its present strength of well over 3000, or that it would achieve the measure of acceptance that it has, nearly strangling to death along the way, under the burden of a staggering work load. If any single factor can be held to account, it would have to have been the news releases printed in the summer, 1978 issues of magazines such as Byte and Kilobaud, at a time when Apple users were starving for information of any kind about their new computers, and user groups were few and far between. Even by June of 1978, Call —A.P.P.L.E., this group’s news- letter, had grown to 16 pages in size, amd was acquiring some of the ear-marks of a “real” newsmagazine. No doubt the many sam- ple copies mailed out at that time provided the impetus for the growth that was to come. Also in mid-1978, A.P.P.L.E. implemented the concept of “Library Paks”, the popular format in which 20 or more assorted programs were made available to the members on a single low priced cassette. This author, in collaboration with Darrell Aldrich and numerous other individuals also conceived and wrote the “Programmer's Workshop”, a collection of handy Integer Basic utility routines, one of the earliest of it’s type. On April 10, 1979, Apple Pugetsound Program Library Ex- change was incorporated as a Washington state non-profit corpor- ation. That status continues currently, and none of the officers draw compensation for their services, despite the long and hard hours turned in by all. The membership and order office cur- rently processes over one hundred pieces of mail daily, the rou- tine portions of which is handled by a full time contract em- ployee. The other divisions, production and shipping, treasury, and editorial are similarly staffed. Today, Apple Pugetsound has achieved a vast reputation for its high quality software and documentation. Call —A.P.P.L.E., now a slick cover 56 page newsmagazine is available at computer dealers throughout the country, and is read by A.P.P.L.E. mem- bers in more than 20 countries. It too is known for its quality of content, and is considered by many as the authoritative source of Apple computer information. Last, but not least, through the “Call —A.P.P.L.E.” hot line, the club provides its members with a useful inquiry and informa- tion service, ranging from answering or referring programming problems to current events and new product information. It is not inexpensive to join, but the benefits far outweigh the cost. There is currently a one-time Apple-cation fee of $25.00 and annual dues of $15.00 through December, 1980, for a total of $40.00. Members joining at any time during 1980 will receive all 1980 issues of Call —A.P.P.L.E at no additional cost. Checks should be made payable to “A.P.P.L\E.” and mailed to our new address, which may be determined by calling (206)271-6939. New members will receive by return mail an Apple-cation blank, order form and description sheets of the various softwaré and publications available. THE APPLE ORCHARD. PAGE 9 THE PHILADELPHIA APPLE CLUB by Neil Lipson The Philadelphia Apple Club was started in Feb., 1978 by Neil D. Lipson. Since then it has expanded to include numerous small clubs, and membership in total exceeds 200. Dues for the Philadelphia branch are only $10. At present there is no newsletter. The meetings are held the third Saturday of each month, at LaSalle College in Philadelphia, 11:00 a.m. and last about three hours. There are numerous subgroups, among which include machine language, music, education, scientific, hardware, graphics, utili- ties, video, and light pen. The group is very eager to help and assist other groups in other areas of interest. About two diskettes of programs are distributed each month, consisting of public domain software only. Disks are distributed at the meetings only, at present. The meetings are held in a somewhat formal fashion, with an introduction, description of new events and news, new products, and then new software, with a question and answer session at the end. Periodically, we have speakers to give talks on various topics. We also coordinate closely with the Philadelphia Area Com- puter Society, which meets with us at LaSalle College, in projects than can be used on the Apple as well as other computers, and there is a close interaction between PACS and the Apple Club. PACS has in excess of 350 members (excluding Apple owners). PACS was formed in 1977 by Dick Moberg, and the present presi- dent is Eric Hafler, also a member of the Apple group. THE MICHIGAN APPLE The Michigan Apple is the most prominent Apple users group currently active in Michigan. The group is most visible through a newsletter that they publish 10 times a year. They also conduct meetings 10 times a year on the last Tuesday of the month at alternate computer stores in the metropolitan Detroit area. They discuss club business and new products and applications for the Apple. Additional activities conducted through the Michigan Apple include the following: Club disks of original programs donated by members are made available to the members. Meetings o f members with a common special interest are held periodically in member’s homes. The club also offers meetings of System Anal- ysis Groups (SAGs) that explore many aspects of the Apple com- puter in depth. A library of periodical and newsletter material is also maintained and cataloged for the use of members in. doing research. To receive the Michigan Apple-Gram (our newsletter) or to join the club for the various other activities, here is the current address, THE MICHIGAN APPLE COMPUTER CLUB P.O. BOX 551 MADISON HEIGHTS, MICHIGAN 48071 CONVERT WITHOUT DISK If you have an Apple Com Card and a printer with tape punch and read you can convert Integer Basic to Applesoft by punching tape from an Integer program listing and reading back into Apple- soft. PAGE 10 APPLE BAY AREA COMPUTER USERS SOCIETY (ABACUS) < AB-A-CUS> THE ABACUS group is located in the San Francisco East-Bay area, specifically, Castro Valley, Calif. The club meets on the 2nd Monday of each month, at 7:00 p.m. Our group is approximately 200 strong and growing. The ABACUS-II (NEWSLETTER) is.published monthly and is included in the annual membership fee'of $12.00.The ABACUS library contains in excess of 500 programs and is available to all members, local or out of state. Additional information may be obtained by writing Larry Danielson, club treasurer at 5302 Camino Alta Mira, Castro Val- ley, CA 94546, ABACUS OFFICERS: President . . .Ed Avelar 2850 Jennifer Dr., Castro Valley, CA 94546 — (415) 538-2431. Vice President ... Stephen Shank (415) 820-4374. Secretary .. . Dave Wilkerson Treasurer . . .Larry Danielson 5302 Camino Alta Mira, Castro Valley, CA 94546. (415) 581-2748. Librarian . . .Bill Walsh. The ABACUS is a founding member of the I.A.C. (INTER- NATIONAL APPLE CORPS). MEMBERSHIP APPLICATION FORM: ADDRESS iw :nchrmessesevmin nde ine ieste, nap se tn tae. mini ese neaseonseemenensie: CITY, STATE, ZIP Phone Hhome Phone Hwork . Occupation ... . en bene oe bene Mail to: ABACUS, 2850 Jennifer Dr., Castro Valley, CA 94546. WHAT IS THE INTERNATIONAL APPLE CORPS by Ken Silverman, Secretary On October 27-28, 1979 a meeting was held in San Francisco to discuss the formation of a non-profit organization to pass on all forms of information, both hardware and software, from Apple. user groups and users, software and hardware companies, MEMOREX Floppy Discs Lowest prices. WE WILL NOT BE UNDERSOLD! Buy any quantity 1-1000. Visa, Mastercharge accepted. Call free (800)235-4137 for prices and information. All orders sent postage paid. 100 Foothill Blvd, San Luis Obispo. CA, 93401. (In Cal. call (805) 543-1037.) THE APPLE ORCHARD MARCH/APRIL 1980 and Apple Computer Incorporated. This is to provide a flow of information in both directions through one organization for the benefit of the end Apple users. The meeting was attended by representatives of the larger Apple user groups in the United States. At the end of the weekend the “INTERNATIONAL APPLE CORPS” was formed. An interim Board of Directors and Officers were elected, a basis for a consti- tution and bylaws were formed, and organizational goals and ob- jectives were set. The International Apple Corps will be made up of Apple User Clubs all over the United States with membership open to clubs in other countries. The International Apple Corps is set up to distribute public domain software, application notes, general Apple information and product information. There is also a committee just to help persons who wish to start an Apple club. In order for this organization to work, like your own club, it needs funding. We plan to obtain monies from many areas and user groups is just one of these areas. To keep us going we are re- questing each club to send a “one time” $50 initiation fee for the CLUB to be a member of the INTERNATIONAL APPLE CORPS. At the first annual meeting in March, to coincide with the West Coast Computer Faire, a dues structure will be set. After your club joins it will be entitled to: 1. Access to an international library of programs 2. An input-output device for questions and problems on any subject dealing with the Apple 3. Access to printed information 4. Reduced subscription rate for publication Upon receipt of your $50 we will send the club a package that contains most of Apple’s reference manuals (including the new reference book), a collection of new application notes, and very soon the distribution of software. If you have any questions you can write us at our post office box, as shown on page 3. sour SPACE TRIP prow by Mark Cross You're zooming through space in your galactic scout. Souped up ion generators have boosted you to six times the speed of light. The stars are moving past your viewport. But wait! This is impossible! Any old spaceship can go faster than light, but you don’t know how to program your Apple to make the stars move past the viewport. This program simulates the view of moving stars seen by a fast spaceship. There is a background of distant stars that are so far away they seem to stay in the same place in the sky (lines 310-320). There are ten stars close to the moving spaceship which seem to spread out as the ship approaches. The math involved is simple. To make a star move away from the center by a constant such as 4/3 in line 420. The stars should move slower when they are near the center of the screen, straight ahead and far away. Stars at the edge of the screen will seem to move very fast and disappear off the edge of the viewport. The speed of the moving stars leaves something to be desired, even though this is Integer Basic with only ten points to be moved. You can make them move faster by using fewer stars in line 400 or multiplying by a bigger constant in line 420. Cross- hairs or a frame around the viewport would look good. More ad- vanced programmers might try a machine language routine to move the stars, or a shape table with an asteroid that grows in scale as it moves closer to the spaceship. NEW RELEASES FROM SYNERGISTIC SOFTWARE data management application. personnel files, accounting programs, etc. your own imagination, The program uses fast and flexible mact and-sort routines, provides for easy record Modifi Requires Applesoft, 48K disk THE MODIFIABLE DATABASE by Chris Anson & Robert Clardy The Modifiable Database is a general purpose, user oriented database program that can be easily customized for your specific Create any number of application Programs such as mailirg lists, bibliography files, inventory controls, The only limitations is e language search ing, and can search or print up to 2 disks of records with a single command. All commands are invocable by a few keystrokes, an easier to use or more flexible data management program. 1 Module 1 includes accounting/numeric functions Modifier Module 2 includes output formatting functions There's never been PROGRAM LINE EDITOR by Neil Konzon The Program Line Editor is one of the most powerful program editing tools avail- able. Inserting, deleting, or replacing char- acters within a line can be accomplished with a few simple keystrokes without re- entering the entire line, Lower case text can be inserted into print statements with a simple command. The package also includes a keyboard macro capability. You can assign common commands or convenient routines to a key- board character. Thereafter, pressing ESC and that character will cause the function to be executed. A complete set of macros is provided for your use or modification. These uniquely powerful capabilities make programming in Integer or Applesoft Basic twice as fast as it used to be. (16K) HIGHER GRAPHICS by Robert Clardy Higher Graphics is a high resolution graphics package that lets you create de- tailed displays for business or game use and add graphics effects to your software. Package includes 3 utility programs, a text explaining the use of high-res graphics for display and animation effects, and sample shape tables with over 100 of the more commonly desired shapes. The programs allow new shapes and shape tables to be created and existing shape tables to be com- bined, edited, or rearranged. The screen manipulation program allows the simple placement of shapes, areas cf color, and text anywhere on the screen. (48K Integer & Disk) HIGH-RES TEXT by Ron & Darrell Aldrich Add colorful customized text to your high resolution graphics displays. The High Resolution Text Generator allows you to define your own character sets with normal or double sized characters. The defined characters can be printed in the size de- fined or in an expanded size. Large char- acters can be printed in any of 10 colors, the high res colors plus yellow, aqua, pink, navy blue, and grey. The text generator has all the features of a normal text screen such as scrolling, tracing over text with the cursor, etc. plus full lower case capability with no hardware modifications required. Use the character sets provided (standard, countdown, side- ways, etc.) or define your own for special Purpose promotional displays, graphing, or games. | (Machine language routines require 16K) ODYSSEY by Robert Clardy Embark on a heroic quest across the dreaded Sargalo Sea stopping to explore dangerous islands, caverns, and old castles. Gather the forces and weapons that you will need to destroy the fortress of the cruel Caliph of Lapour. Three interlocking programs using several high-res and low-res maps provide an unending variety of hazards, opponents and adventures. {48K Integer on Disk) NOW AVAILABLE GAMES —CASS_ DISK Dungeon Campaign (1, 16K) 12.50 15.00 Dungeon Campaign (A, 32K) 12.50 15.00 Wilderness Campaign (1, 48K) 15.00 17.50 Dungeon & Wilderness (1, 48K) 30,00 Odyssey (1, 48K) 25.00 UTILITIES Higher Graphics (1, 48K) 25.00 High Res Text (1A, 32K) 32.50 Program Line Editor (1,A, 16K) 37.50 BUSINESS Mailing List Database (A, 48K) 34.50 Modifiable Database (A, 48K) 49.50 Modifier Module 1 15.00 Modifier Module 2 15.00 AVAILABLE AT YOUR LOCAL DEALER OR SEND CHECK OR INQUIRY TO SYNERGISTIC SOFTWARE, 5221 120 AVE. S.E., BELLEVUE, WA 98006. WA RESIDENTS ADD 5.3% SALES TAX PAGE 12 THE APPLE ORCHARD MARCH/APRIL 198u APPLESOFT INTERNAL ENTRY POINTS by Apple Computer, Inc. From: Contact John Crossley CONTENTS INTRODUCTION . . ABBREVIATIONS LABELS .. TXTPTR INP! ee TXTPTR TO INTEGER ROUTINE. FLOATING POINT MATH PACKAGE INTRODUCTION . . REGISTERS . . FUNCTIONS .. . MOVE ROUTINES . . UTILITIES CONVERSIONS INTEGER TO FAC FAC TO INTEGER... TXTPTR TO FAC. STRING UTILITIES : DEVICE INPUT ROUTINES. ... DEVICE OUTPUT ROUTINES INTERNAL LOCATOR ROUTINES. . INITIALIZATION ROUTINES” 7 STORAGE MANAGEMENT ROUTINES. . MISCELLANEOUS BASIC COMMANDS. . HIRES GRAPHICS ROUTINES CASSETTE ROUTINES....... : ERROR PROCESSOR ROUTINES. . . SYNTAX CHECKING ROUTINES. . . INDEX INTRODUCTION This is a guide for the 6502 machine language programmer who wants to take advantage of the various subroutines in Apple- soft. The addresses included assume that the user has an Apple II Plus, an Applesoft firmware card, or a Language Card. This list is believed to be correct, but be warned that it was a spare time project. If you find errors, contact your user group. This data is meant for the experienced programmer, NOT THE BEGINNER. Read your Applesoft Reference manual for more information. Take special note of CHRGET. This subroutine is the heart of Applesoft. When Applesoft wants the next character or an instruc- tion it points TXTPTR at the program or the input buffer and JSRs to CHRGET. When Applesoft READs DATA, TXTPTR is temporarily set to the last used DATA statement. ABBREVIATIONS the 6502 accumulator the 6502 X register the 6502 Y register the zero flag of the 6502 status register the carry flag of the 6502 status register A,X is a 16 bit number where A has the most significant byte and X the least significant byte. ON<x> (Y,A) is the number or string whose address is in Y and A with the msb in Y and the Isb in A. FAC the floating point accumulator ARG the ARGument register msb most significant bit or byte Isb least significant bit or byte eol end of line token ($00) LABELS HEX ADDR LABELS 3C,3D Apple monitor pointer for cassette routines 3E,3F Apple monitor pointer for cassette routines 6B,6C Start of array storage 200, 2F F Line input buffer CHARAC OD Used by STRLT2 CURLIN 75,76" The current line number (=FF if in direct mode. DATLIN Line number of current DATA statement DATPTR The address of the next DATA comes from DSCTMP Temp string descriptor ENDCHR ERRFLG ERRLIN ERRNUM ERRPOS ERRSTK FBUFFR FIRST FORPNT FRESPC 7B,7C 7D,7E 9D,9E, oF OE D8 Used by SRTLT2 $80 if ONERR active DA,DB Line number where error occurred DE Which error occurred be, DD TXTPTR save for HNDLERR Stack pointer value before error foo 10 FOUT buffer FO Used by PLOTFNS General pointer. see COPY Temp pointer for string storage routines Bottom of string storage Used by PLOTFNS Used by BLTU Used by BLTU HIRES page to plot on. ($20 for HGR, $40 for HGR2) Temp pointer for moving strings Mask for inverse output Last used temp string pointer General purpose 16 bit number location General purpose register. GETARYPT‘ FINDLN, BLTU HIMEM Last line executed Mask for flashing output The end of the program text Stack pointer saved before each statement Speed = delay number The top of array storage 85,86 7,72 6F,70 2C 94,95 96,97 £6 MEMSIZ OLDLIN 77,78 ORMASK PRGEND REMSTK SPDBYT F1 STREND 6D,6E STRNG1 STRNG2 AD,AE SUBFLG TEMPPT. TXTTAB 67,68 Pointer to a string. See MOVINS Pointer to a string. See STRLT2 $00 subscripts allowed, $80=no subscripts Last used temporary string descriptor Start of program text MARCH/APRIL 1980 THE APPLE ORCHARD PAGE 13 is it v2 2D Used by PLOTFNS EAC formal VALTYP 11 Flags last FAC operation O=number, FF= 10-84 AO 00 0000s FF string 10 84 AO 00 00 00 00 VARPNT 83,84 VARTAB_ 69.6A Used by PTRGET Start of variable storage TXTPTR INPUT ROUTINES CHRGET 00B1(177) (Increment TXTPTR) CHRGOT 00B7(183) (No increment) These routines load A from TXTPTR and set certain 6502 status flags. X and Y are not changed. On exit: A=the character Z is the set if A ‘:’ or eol ($3A or $00) C is clear if A is an ASCII number (‘0’ to ‘9’). TXTPTR TO INTEGER LINGET DAOC (55820) Read a line number (integer 0 to 63999) from TXTPTR into LINNUM. LINGET assumes that the 6502 registers and A have been set up by the CHRGET that fetched the first digit. Normally exits through CHARGET which fetches the character after the number. If the number is greater than 63999 then LINGET exits via SYNTAX ERROR. LINNUM is zero if there is no number at TXTPTR. GTBYTC E6FS (51925), JSR to CHRGET to gobble a character and fall into GETBYT. GETBYT E6F8 (59128) Evaluates the formula at TXTPTR, leaves the result in FAC, and falls into CONINT. ‘n the entry TXTPTR points to the first character of the formula for the first number. PLOTFNS puts the first number in FIRST and the second number in H2 and V2. PLOTFNS FIEC |(61932)\ Get 2 LORES plotting coordinates (0-47,0-47) from TXTPTR separated by a comma. On entry TXTPTR points to the first character of the formula for the first number. PLOTFNS puts the first number in FIRST and the second number in H2 and V2. HFNS F6B9 (63161) Get HIRES plotting coordinated (0-279,0-191) from TXTPTR. On entry TXTPTR points to the first character of the formula for the first number. Leaves the 6502 registers set up for HPOSN. On exit: A= vertical coordinate sb of horizontal coordinate Y= msb of horizontal coordinate. FLOATING POINT MATH PACKAGE INTRODUCTION This is the number format used throughout Applesoft: The exponent is a single byte signed number (EXP) in excess $80 form (the signed value has $80 added to it). The mantissa is 4 bytes (HO, MOH, MO,LO). The binary point is assumed to be to the right of the most significant bit. Since in binary floating point notation the msb is always 1, the number’s sign is kept there when the number is stored in packed form in memory. While in the math package the sign is kept in a separate byte (SGN) where only bit 7 is significant. If the exponent is zero then the number is zero although the mantissa isn’t necessarily zero. Examples: EXP HO MOH MO LO SGN Packed format -10 84 AO 00 00 00 10 84 20 00 00 00 Arithmetic routine calling conventions: For single argument functions: The argument is in FAC. The result is left in FAC. For two argument functions: The first argument is in ARG (see CONUPK). The second argument is in FAC. The result is left in FAC. FLOATING POINT REGISTERS NOTE: many of the following locations are used for other things when_not being used by the floating point math package. FAC ARG TEMP1 TEMP2 TEMP3 RND EXP 9D AS 93 98 8A co HOHO 9E A6 94 99 8B CA MOH oF Al 95 9A 8C CB MO AO A8& 96 9B 8D cc LO Al AQ 97 9C 8E cD SGN A2 AA (packed format) FLOATING POINT OPERATORS FMULT E97F (59775) Move the number in memory pointed to by Y,A into ARG and fall into... FMULTT E982 (59778) Multiply FAC and ARG. On entry A and Z reflect FACEXP. FDIV EA66 (90006) Move the number in memory pointed to by Y,A into ARG and fall into... ; FIDVT EA69 (60009) Divide ARG by FAC. On entry A and Z reflect FACEXP. FADD E7BE (59326) Move the number in memory pointed to by Y,A into ARG and fall into... FADDT E7C1 (59329) Add FAC and ARG. On entry A and Z reflect FACEXP. FSUB E7A7 (59303) Move the number in memory pointed to by Y,A, into ARG and fall into... FSUBT E7AA (59306) Subtract FAC from ARG. On entry A and Z reflect FACEXP. FPWRT EE97 (61079) Exponentiation (ARG to the FAC power). On entry A and Z should reflect the value of FACEXP. NOTE: Most FAC move routines set up A and Z to reflect FACEXP but aLDA $9D will insure the proper values. FLOATING POINT CONSTANTS NOTE: The following addresses point to numbers in packed form suitable for use by CONUPK and MOVMF. RND 00Cc9 201) 1/4 F070 61552) 1/2 EE64 61028) -1/2 £937 59703; 1 £913 59667 10 EASO (59984) SQR(.5) E92D (59693) SQR(2) E932 (59698) LN(2 E93C (59708) LOG(e)2 EEDB (61147 PI/2 F063 61539, PI*2 FO6B 61547, -32768 EOFE 57598) 1000000000 ED14[1E9] (60692[489] ) PAGE\14 \THE APPLE ORCHARD MARCH/APRIL 1980 FLOATING POINT FUNCTIONS SUMMARY OF MOVES: SGN EB90 (60304) FAC => (Y,A) EB2B Calls SIGN and floats the result in the FAC. Fae Oe EBs On exit: FAC => TEMP 2 EBIE FAC=1 If FAC was greater than 0 FAC => ARG EBG3 FAC=0 If FAC was equal to 0 (Y,A) => FAC EAF9 FAC=-1 If FAC was less than 0 (Y,A) => ARG EB63 ABS EBAF (60335) ARG => FAC EB53 Absolute value of FAC FLOATING POINT UTILITIES INT EC23 (60451) SIGN EB82 (60290) Greatest integer value of FAC. Uses QINT and floats the result. Set A according to the value of FAC. SQR EE8D (61069) Onexit: oo Take the square root of FAC At ENG ie Positive: LOG E941 (59713) A=FF _ if FAC is negative Log base e of FAC FOUT ED34 (60724) EXP EFO9 (61193) Creates a string in FBUFFR equivalent to the value of FAC. On Raise e to the FAC exit Y,A points to the string. The string ends in a zero. FAC is ‘aise e to the power scrambled. Use STROUT to then print the number. BND EFAE (61358) Fcomp EBB2 (60338) Formsarandom/number:in EAC Compare FAC and a packed number in memory pointed to by cos EFEA (61418) Y,A. COS(FAC) On exit: = Y,A) < FAC SIN EFFI (eras) ADAYA SINIFAC) A=FF if (Y,A) > FAC TAN FO3A (61498) NEGOP EEDO (61136) TAN(FAC) FAC= -FAC ATN FO9E (61598) ARCTAN(FAC) FADDH E7A0 (59296) Add 1/2 to FAC DIV10 EASS (59989) FLOATING POINT NUMBER MOVE ROUTINES Divide FAC by 10. Returns positive numbers only. MOVFM EAF9 (60153) MUL10 EA39 (59961) Move memory pointed to by Y,A, into FAC. On exit A and Z reflect FACEXP. MOV2F EBIE (60190) Pack FAC and move it into temporary register 2. Uses MOVMF. On exit A and Z reflect FACEXP. MOV1F EB21 (60193) Pack FAC and move it into temporary register 1. Uses MOVMF. On exit A and Z reflect FACEXP. MOVML EB23 (60195) Pack FAC and move it into zero page area pointed to by X. Uses MOVMF. On exit A and Z reflect FACEXP. MOVMF EB2B (60203) Pack FAC and move it into memory pointed to by Y,X. On exit A and Z reflect FACEXP. MOVFA EB53 Move ARG into FAC. On exit A=FACEXP and Z is set. MOVAF EB63 Move FAC into ARG. On exit A=FACEXP and Z is set. :. CONUPK E9E3 (59875) Load ARG from memory pointed to by Y,A. On exit A and Z reflect FACEXP, (60243) (60259) Multiply FAC by 10. Works for both positive and negative num- bers. INTEGER TO FAC SNGFLT E301 (58113) Float the unsigned integer in Y. GIVAYF E2F2 (58098) Float the signed integer in A,Y. FLOAT EB93 (60307) Float the signed integer in A. FAC TO INTEGER CONINT E6FB (59131) Convert FAC into a single byte number in X and FACLO. Nor- mally exits through CHRGET. If FAC is greater than 255 or less than 0 then CONINT exits via ILLEGAL QUANTITY ERROR. AYINT. E10C (57612) If FAC is less than +32767 and greater than -32767 then perform QINT. QINT EBF2 (60402) Quick greatest integer function. Leaves INT(FAC) in FACHO, MO, LO signed. QINT assumes FAC < 2 to the 23rd (8388608 decimal) MARCH/APRIL 1980 GETADR E752 (59218) Convert the number in FAC (-65535 to 65535) into a 2 byte integer (0-65535) in LINNUM. GETNUM E746 (59206) Read a 2 byte number into LINNUM from TXTPTR, check for a comma, and get a single byte number in X. On entry TXTPTR. points to the first character of the formula for the first number. Uses FRNUM, GETADR, CHKCOM, GETBYT. COMBYTE E74C (59212) Check for a comma and get a byte in X. Uses CHKCOM, BETBYT. On entry TXTPTR points to the comma, TXTPTR TO FAC FRMEVL DD7B (56699) Evaluate the formula at TXTPTR using CHRGET and leave the result in FAC. On entry TXTPTR points to the first character of the formula. This is the main subroutine for the commands that use formulas and works for both strings and numbers. If the for- mula is a string literal, FRMEVL gobbles the opening quote and executes STRLIT and ST2TXT. FRMNUM DD67 (56679) Evaluate the formula at TXTPTR, put it in FAC, and make sure it’s a number. On entry TXTPTR points to the first character of the formula. TYPE MISMATCH ERROR results if the formula is a string. FIN EC4A (60490) Input a floating point number into FAC from CHRGET. FIN assumes that the 6502 registers and A have been set up by the CHRGET that fetched the first digit. STRING UTILITIES In Applesoft strings have three parts: the descriptor, a pointer to the descriptor, and the ASCII string. A string descriptor contains the length of the string and the address of its first character. See page 137 of the Applesoft Reference Manual. Through most of the routines the descriptor is left in memory and a pointer is kept in FAC. The pointer is the address of the descriptor. The actual string could be anywhere in memory. In a program, 1A$= “HI” will leave a descriptor pointing into the program text. CAT E597 (58775) Concatenate two strings. FACMO,LO point to the first string’s descriptor and TXTPTR points to the ‘+’ sign. STRINI E3D5 (58325) Get space for creation of a string and create a descriptor for it in DSCTMP. On entry A=length of the string. STRSPA E3DD (58333) JSR to GETSPA and store the pointer and length in DSCTMP. copy DAB7 (55991) Free the string temporary pointed to by Y,A and move it to the memory pointed to by FORPNT. MOVINS €5D4 (58836) Move a string whose descriptor is pointed to by STRNG1 to memory pointed to by FRESPA. MOVSTR ESE2 (58850) Move the string pointed to by Y,X with a length of A to memory pointed to by FRESPA. STRTXT DE81 Sets Y,A equal to TXTPTR plus C and falls into STRLIT. (56961) THE APPLE ORCHARD PAGE 15 STRLIT E3E7 (58343) Store a quote in ENDCHR and CHARAC so that STRLT2 will stop on it. STRLT2 E3ED (58349) Take a string literal whose first character is pointed to by Y,A and build a descriptor for it. The descriptor is built in DSCTMP, but PUTNEW transfers it into a temporary and leaves a pointer to it in FACMO,LO. Characters other than zero that terminate the string should be saved in CHARAC and ENDCHR. Leading quotes should be skipped before STRLT2. On exit the character after the string literal is pointed to by STRNG2. Falls into PUTNEW. PUTNEW E42A (58410) Some string function is returning with a result in DSCTMP. Move DSCTMP to a temporary descriptor, put a pointer to the descrip- tor in FACMO,LO, and flag the result as a string. GETSPA E452 (58450) Get space for character string. May force garbage collection. Moves FRESPC and FRETOP down enough to store the string. On entry A= number of characters. Returns with A unaffected and pointer to the space in Y,X, FRESPC, and FRETOP. If there’s no space then OUT OF MEMORY error. FRESTR ESFD (58877) Make sure that the last FAC result was a string and fall into FREFAC. FRETMP. E604 (58884) Free up a temporary string. On entry the pointer to the descrip- tor is in Y,A. A check is made to see if the descriptor is a tempor- ary one allocated by PUTNEW. If so, the temporary is freed up by updating TEMPPT. If a temp is freed up a further check is made to see if the string is the lowest in memory. If so, that area of memory is freed up also by updating FRETOP. On exit the address of the string is in INDEX and Y,X and the string length isin A. FRETMS £635 (58933) Free the temporary descriptor without freeing up the string. On entry Y,A point to the descriptor to be freed. On exit Z is set if anything was freed. DEVICE INPUT ROUTINES INLIN D52C (54572) (No prompt INLIN+2 D52E (54574) (Use character in X for prompt} Input a line of text from the current input device into the input buffer, BUF, and fall into GDBUFS. GDBUFS D539 (54585) Puts a zero at the end of the input buffer, BUF, and masks off the msb on all bytes. On entry: X= the end of the input line On exit: A=0 X=FF Y=1 INCHR D553 (54611) Get one character from the current input device in A and mask off the msb. INCHR uses the main Apple input routines and sup- ports normal handshaking. PAGE 16 DEVICE OUTPUT ROUTINES STROUT DB3A (56122) Print string pointed to by Y,A. The string must end with a zero or a quote. STRPRT DB3D (56125) Print a string whose descriptor is pointed to by FACMO, FACLO. OUTDO DBSC (56156) Print the character in A. INVERSE, FLASH, and NORMAL in effect. CRDO DAFB (56059) Print a carriage return. OUTSPC DB57 (56151) Print a space. OUTQST DBSA (56154) Print a question mark. INPRT EDI9 (60697) Print “IN” and the current line number from CURLIN. Uses LINPRT. LINPRT ED24 (60708) Prints the 2 byte unsigned number in X,A. PRNTFAC ED2E (60718) Prints the current value of FAC. FAC is destroyed. Uses FOUT and STROUT. INTERNAL LOCATOR ROUTINES PTRGET DFE3 (57315) Read a variable name from CHRGET and find it in memory. On entry TXTPTR points to the first character of the variable name. On exit the address to the value of the variable is in VARPNT and Y,A. If PTRGET can’t find a simple variable it creates one. If it can’t find an array it creates one dimensioned to 0 to 10 and set all elements equal to zero. GETARYPT F7D9 (63449) Read a variable name from CHRGET and find it in memory. On entry TXTPTR points to the first character of the variable name. This routine leaves LOWTR pointing to the name of the variable array. If the array can’t be found the result is an OUT OF DATA ERROR. FNDLIN D61A (54810) Searches the program for the line whose number is in LINNUM. On exit: 1. If C set LOWTR points to the link field of the desired line. 2. If C clear then line not found. LOWTR to the next higher _ line. DATA D995 (55701) (oO TXTPTR to the end of the statement. Looks for ‘:’ or eol 0). DATAN D9A3 (55715), Calculate the offset in Y from TXTPTR to the next ‘:’ or eol (0). REMN D9AG6 (55718) Calculate the offset in Y from TXTPTR to the next col (9). ADDON D998 (55704) Add Y to TXTPTR. THE APPLE ORCHARD MARCH/APRIL 1980 INITIALIZATION ROUTINES SCRTCH D64B (54859) The ‘NEW’ command. Clears the program, variables, and stack. CLEARC D66C (54892) The ‘CLEAR’ command. Clears the variables and stack. STKINI D683 (54915) Clears the stack. RESTOR, D849 (55369) Sets the DATA pointer, DATPTR, to the bebinning of the program. STXTPT D697 Set TXTPTR to the beginning of the program. STORAGE MANAGEMENT ROUTINES BLTU D393 (54163) Block transfer makes room by moving everything forward. On entry: Y,A and HIGHDS=destination of high address + 1 LOWTR=lowest address to be moved HIGHTR=highest address to be moved + 1 On exit: LOWTR is unchanged HIGHTR=LOWTR — $100 HIGHDS=lowest address transferred — $100 REASON D3E3 (54243) Makes sure there’s enough room in memory, Checks to be sure that the address Y,A is less than FRETOP. May cause garbage collection. Causes OMERR if there’s no room. GARBAG E484 (58500) Move all currently used strings up in memory as far as possible. This maximizes the free memory area for more strings or numeric variables. MISCELLANEOUS BASIC COMMANDS Note that many commands are not documented because they jump into the new statement fetcher and cannot be used as a sub- routine. CONT D898 (55448) Moves OLDTXT and OLDLIN into TXTPTR and CURLIN. NEWSTT D7D2 (55250) Execute a new statement. On entry TXTPTR points to the ‘:’ preceding the statement or the zero at the end of the previous line. Use NEWSTT to restart the program with CONT. TH/S ROUTINE DOES NOT RETURN. RUN D566 (54630) Run the program in memory. THIS ROUTINE DOES NOT RETURN. GOTO D93E (55614) Uses LINGET and FNDLIN to update TXTPTR. GOTO assumes that the 6502 registers and A have been set up by the CHRGET that fetched the first digit. LET DA46 (55878) Uses CHRGET to get address of the variable, ‘=’, evaluate the formula, and store it. On entry TXTPTR points to the first char- acter of the variable name. (54935) MARCH/APRIL 1980 HIRES GRAPHICS ROUTINES NOTE: Regardless of which screen is being displayed, HPAG (lo- cation $£6) determines which screen is drawn on. ($20 for HGR, $40 for HGR2) HGR2 F3D4 (62420) Initialize and clear page 2 HIRES. HGR F3DE (62430) Initialize and clear page 1 HIRES. HCLR F3EE (62446) Clear the HIRES screen to black. BKGND F3F2 (62450) Clear the HIRES screen to last plotted color. HPOSN F40D (62477) Positions the HIRES cursor without plotting, HPAG determines which page the cursor is pointed at. On entry: Horizontal=Y,X Vertical=A HPLOT F453 (62547) Call HPOSN then try to plot a dot at the cursor’s position. No dot may be plotted if plotting non-white at a complementary color X coordinate. HLIN F530 (62768) Draws a line from the last plotted point or line destination to the coordinate in the 6502 registers. On entry: Horizontal =X,A Vertical=Y HFIND FSCB (62923) Convert the HIRES cursor’s position to X-Y coordinates. Used after SHAPE to find where you’ve been left. On exit: $E0=horizontal Isb $E1=horizontal msb $E2=vertical DRAW F601 (62977) Draw the shape pointed to by Y,X by inverting the existing color of the dots the shape draws over. On entry A=rotation factor. SETHCOL F6EC (63213) Set the HIRES color to X. X must be less than 8. SHLOAD F775 (63349) Loads a shape table into memory from tape above MEMSIZ (HIMEM) and sets up the pointer at $E8. CASSETTE ROUTINES SAVE D8B0 (55472) Save the program in memory to tape. LOAD D8co (55497) Load a program from tape.. VARTIO D8FO (55536) Set up Al and A2 to save 3 bytes ($50 -$52) for the length. THE APPLE ORCHARD PAGE 17 ERROR PROCESSOR ROUTINES ERROR D412 (54290) Checks ERRFLG and jumps to HNDLERR if ONERR is active. Otherwise it prints <or> ‘?’ <error message &X> ‘ERROR’. If this is during program execution then it also prints ‘IN’ and the CURLIN. HANDLERR F2E9 (62185) Saves CURLIN in ERRLIN, TXTPTR in ERRPOS, X in ERR- NUM, and REMSTK in ERRSTK. REMSTK is equal to the 6502 stack pointer and is set up at the start of each statement. X con- tains the error code. This may be used to interrupt the execution of a BASIC program. See the Applesoft Reference Manual page 136 for the value of X for a given error. RESUME F317 (62231) Restores CURLIN from ERRLIN and TXTPTR from ERRPOS and transfers ERRSTK into the 6502 stack pointer. SYNTAX CHECKING ROUTINES ISCNTC D858 (55384) Checks the Apple keyboard for a control — C ($83). Executes the BREAK routine if there is a control — C. CHKNUM DD6A (55682) Make sure FAC is numeric. See CHKVAL. CHKSTR DD6C (56684) Make sure FAC isa string. See CHKVAL. CHKVAL DD6D (56685) Checks the result of the most recent FAC operation to see if it is a string or numeric variable. A TYPE MISMATCH ERROR results if FAC and C don’t agree. On entry: C set checks for strings C clear checks for numerics ERRDIR E306 (58118) Causes ILLEGAL DIRECT ERROR if the program isn’t running. X is modified. ISLETC E07D (57469) Checks A for an ASCII letter (‘A’ to ‘Z’). On exit C set if Aisa letter. PARCHK DEB2 (57010) Checks for ‘(’, evaluates a formula, and checks for ‘)’. Uses CHKOPN and FRMEVL then falls into CHKCLS. CHKCLS DEB8 (57016) Checks at TXTPTR for ‘)’. Uses SYNCHR. CHKOPN DEBB (57019) Checks at TXTPTR for ‘(’, Uses SYNCHR. CHKCOM DEBE (50722) Checks at TXTPTR for ‘,’. Uses SYNCHR. SYNCHR. DECO (57024) Checks at TXTPTR for the character in A. TXTPTR is not modified. Normally exits through CHRGET. Exits with SYNTAX ERROR if they don’t match. XDRAW F65D (62977) Draw the shape pointed to by Y, X by inverting the existing color PROGIO D901 (55553) of the dots the shape draws over. On entry, A=rotation factor. Set up Al and A2 to save the program text. —= a —— <= — _ PAGE 18 THE APPLE ORCHARD MARCH/APRIL 1980 AS FREFAC 600 15 NE FRESPC 71, Al 3C,3D 12 ERESTR ESrD 15 NEGOP EEDO 14 A2 3E3F 12 ERETMP £604 13 NEWSTT D7D2 16 aaa Beat ig FRETOP 6F,70 12 -O- REMEVL DD7B 15 ARYTAB 6B,6C 12 FRMNUM DD67 18 OLDLIN 71,78 2 AYINT EOC ia PUB BIA 13 outDo DBSC 16 A __ —G OUTQST DBSA 16 GARBAG E484 ig OUTSC aoe? 16 BECND par 12 GDBUFS D539 15 -p- GETADR E752 15 BUF PONE 12 GETARYPT F7D9 16 pARCH pb? v —c- GTBYTC EOFS 13 BReEND jon 2 eee) Ee 13 procio D901 7 CHA Ob. 12 GETNUM ae 13 pRTFAC ED2E 16 cHRCLS Dees 17 GETSPA peed 13 PTRGET DFE3 16 CHKCOM DEBE 17, SIVAYP Hae \¢ puTNEw E42A 15 CHKNUM DD6A 17 CHKOPN DEBB 7 =O- CHKSTR DD6C 17 QINT EBF2 14 CHKVAL DDé6D 7 aA R CHRGET 00B1 13° H2 2c 12 CHRGOT 00B7 13. HANDLERR F2E9 17 REASON D3E3 16 CLEARC D66c 16 HCLR F3EE 17 REMN D9AG6 16 COMBYTE E74C 15 HFIND FSCB 17 REMSTK F8 12 CONINT E6FB 14 HENS F6B9 13 RESTOR D849 16 CONT D898 16 HGR F3DE 17 RESUME F317 17 CONUPK E9E3 14 HGR2 F3D4 17 RND EFAE 14 copy DAB7 15 HIGHDS 94,95 12 RUN D566 16 cos EFEA 14 HIGHTR 96,97 12 2s. CRDO DAFB 16 HLIN F530 7 CURLIN 75,76 12> HPAG E6 12) SAVE D8BO 7 HPLOT F453 17 SCRTCH D648 16 —-D- HPOSN F40D 17 SETHCOL EEC 7 SGN DATA ie 1 a+ SHLOAD F775 7 DATAN D9A3 16 sue Ea ui DATLIN 7B,7C 12 INDEX SE, SF 12 3G peee u DATPTR 1D,7E 12. INCHR D553 15 SIN ae Hae u DIVI0 EASS 14 INLIN 52 15 SNGET e DRAW F601 17 INLIN+2 DS52E 15 Se Ela in DSCTMP 9D-9F 12 INPRT ED19 eh feos 4 + INVELE 32 12 STREND SD.6E 12 ENDCHR OE 12 ISCNTC D858 7 erie EDS 13 ERRDIR E306 17 (SLETC E07D wy Steer Be 13 ERRFLG D8 12 STRNG1 AB,AC 12 ERNE paoe u STRNG2 AD, AE 12 cee bale 7 a- STROUT DB3A 16 ERROR D DD 32 LASTPT 53 12. STRPRT DB3D 16 eee oe Ler DA46 16 STRSPA E3DD 15 ERRSIK Re 74 LINGET DAOC 13° STRTXT DE81 15 EXP ERO? LINNUM 50,51 12. STXTPT D697 16 LINPRT ED24 16 SUBFLG 14 12 LOAD D8c9o 17 SYNCHR DECO 7 a LoG E941 14 LOWTR 9B,9C 12 - FADD E7BE 13 TAN FO3A 14 FADDH E7AO 14 Me TEMPPT 52 2 FBUFFR 100-1FF 12 MEMSIZ 73,74 12. TXTTAB 67,68 12 FCOMP EBB2 14 MOVIF EB21 14 ye FDIV EA66 13 MOV2F EBIE 14 FIN EC4A 15 MOVAF EB63 4 v2 2D 13 FIRST. FO 12) MOVFA EB53 14 VALTYP. WW 13 FLOAT EB93 14 MOVFM EAF9 14 VARPNT 83,84 3 FMULT E97F 13 MOVINS ESD4 15 VARTAB 69,6A 13 FNDLIN D61A 16 =MOVMF EB2B 14 VARTIO D&FO 7 FORPNT 85,86 12) MOVML B23 14 aus FOUT ED34 14 MOVSTR ESE2 15 FPWRT EE97 13° MUL10 EA39 14 XDRAW F65D 7 NEW MOUNTAIN FROM HARDWARE. CONTROL FROM YOUR APPLE. & —ay INTROL/X-10. COMPUTERIZE YOUR HOME. The Introl/X-10 peripheral system for your Apple* Computer allows you to remotely control lights and electrical appliances in your home. YOU'RE ALREADY WIRED. Introl/X-10 operates by utilizing your computer's intelli- gence to command the BSR System X-10 to send signals over regular 110 volt household wiring. That means you can control any electrical device in your home without additional wiring. READY TO USE. Introl/X-10 comes with complete software to control devices on pre-determined schedules, and features: * Control devices at a specific time. * Select a daily or weekly schedule. ¢ Specify a day of the week, or an exact date for a particular event. * Specify an interval of time for an event. * Rate device wattages for a running account of power consumption during your schedule for energy management. ¢ Used with our Apple Clock™ your sched- ules may run in “background” while other programs may run at the same time in “foreground.” ia Ci ee Sounds great. Name Address. Phone. EVERYTHING YOU NEED. The Introl Controller board plugs into a peripheral slot of your Apple. With an ultrasonic transducer it trans- mits control signals to the BSR/X-10 Command Console which may be plugged into any convenient AC outlet near your computer. On command, signals are sent to remote modules located at the devices you wish to control. Up to 16 remote module addresses may be controlled from your Apple. Software requires Applesoft firmware. AVAILABLE NOW. The Introl/X-10 System consists of the Intro! Controller board with timer and ultrasonic transducer, the X-10 Command Console and three remote modules. $279. Complete and tested. If you already have a BSR System X-10, the Intro! Controller board is available separately for $189. Additional remote modules are available at $15. See your computer dealer for a demonstration. Or, return the coupon below for complete information. Available through computer dealers worldwide “Apple is a trademark of Apple Computer Inc. BSR/System X-10 is a trademark of BSR, Ltd. Rs a a aa | Mountain Hardware, Inc. LEADERSHIP IN COMPUTER PERIPHERALS 300 Harvey West Bivd., Santa Cruz, CA 95060 (408) 429-8600 Home control from my Apple? That sounds like a great system. Send me alll the details. ity State. Zip == - NEW FROM MOUNTAIN HARDWARE. _ THE APPLE CLOCK. NEW UTILITY FOR YOUR COMPUTER. Until now, there hasn't beena Real-Time Clock for the Apple Il*. The Apple Clock from Moun- tain Hardware keeps time and date inimS increments for over one year. On-board battery backupkeepstheclock running in the event of power outage. Software controlled interrupts are generated by the clock. That means you can call up schedules, time events, date printouts ...all in real time on a programmed schedule. EASY TO USE. The Apple Clock is easily accessed from BASIC using routines carried in on-board ROM. With it, you can read time and program time-dependent functions for virtually any interval. From milliseconds to days, months or a year. PLUG IN AND GO. Plug the Apple Clock into a peripheral slot on your Apple II and you're ready to go. r 1 1 I 1 ' i Name. ye Mountain Hardware, Inc. Send me everything I'll need to know about the Apple Clock. FEATURES. © Time and date in imS increments for periods as long as one year. Software for calendar and clock routines, as well as an event timer are contained on on- board ROM. » e Program interrupts. © Crystal controlled accuracy of +.001%. e On-board battery backup keeps your clock in operation even during power outage. REAL TIME AT THE RIGHT PRICE. At $199 assembled and tested, it's the clock your Apple has been waiting for. And, it's available now through your Apple dealer. Drop in for a demonstration. Or return the coupon below. A COMPLETE LINE. Mountain Hardware also offers a complete line of peripheral products for many fine computers. 300 Harvey West Bivd., Santa Cruz, CA 95060 (408) 429-8600 Sounds great. I've got a computer. Send me information. City, Address. State. “Apple Il is a trademark of Apple Computer, Inc. ee | L. MARCH/APRIL 1980 from RP ? Lt. get. 3 This program solves the problem of finding a place in memory for machine language programs in Applesoft. Until now, programs were usually written to reside above HIMEM:, which has its draw- backs: a program written for a 48K machine would not run on 32K. Some programs, like RENUM/MERGE on the DOS 3.2 master disk, relocate themselves to accommodate different size systems, but this is often more work and hassle than the program is worth. &LOMEM: solves this problem in a unique way: it actually moves the Applesoft program upward in memory, freeing up the memory left behind. Do not confuse &LOMEM: (pronounced Ampersand LOMEM) with the Applesoft LOMEM: statement — Applesoft LOMEM: affects only the location of Applesoft vari- ables, whereas &LOMEM: affects the location of the variables AND program. To use the €LOMEM: utility, you must first BRUN LOMEM: to initialize the Ampersand jump vector and load it into memory. The syntax for the LOMEM: statement is as follows: &LOMEM: [addr] , where [addr] is the new start of program address in decimal. &LOMEM: can be used within programs or in immediate mode. The program does an implicit “CLEAR”, which wipes out all variables. The memory freed up by &LOMEM: will always start at $800 hex (the normal start of program address). So, a program line to reserve 2K of memory for-a machine language program assembled to run at $800 hex, would look something like this: 10 PRINT CHR$(4) “BRUN LOMEM:”:&LOMEM: 4096 Since the freed up memory space is the same as that freed up with the LOMEM: statement in Integer Basic, many machine language programs originally written for Integer Basic can now be easily adapted for use with Applesoft. There are a few things that should be kept in mind when using this program. First of all, this program will NOT work-with RAM Applesoft, since it calls routines within Applesoft itself. Amper- sand LOMEM: can only move programs UPWARD in memory; attempting to move the program back to its original location or to a lower address will DESTROY your program. The action of Ampersand LOMEM: statement is permanent; “NEW”, “CLEAR”, and “LOMEM” have no effect on the start of program address. The start address of another program loaded after the execution of a LOMEM: statement will also be the value set by &LOMEM:. Use the DOS FP command to reset the program address to its normal $800. This program was originally written for Ron and Darrell Aldrich’s Hi-Res Text Generator to allow its use in ROM Apple- soft systems of any RAM size. The program as presented here is identical to the program included on the Hi-Res Text Generator disk, from Apple Pugetsound Program Library Exchange. \he Ampersand LOMEM: resides at $330 hex, and uses approxi- mately 160 bytes. (This is because the Hi-Res Text Generator uses other locations in the $300 page.) &LOMEM:’s potential uses are unlimited. Dig in and let us know the unique applications you turn up! THE APPLE ORCHARD THE &LOMEM: UTILITY by Neil Konzen %330.3CF 0330- 0338- 0340- 0348- 0350- 0358- 0360~ 0368- 0370- 0378- 0380- 0388- 0390- 0398- 03A0- O3A8- O3B0- O3B8- 03C0- 03C8- ay 4C 8D Fé 03 A? A? AS 20 20 BO s2 £7 85 97 85 94 ES 85 95 ES ES 18 67 AB 65 95 —8 E8 C8 20 Ci 03 A2 47 20 ci 03 AS A2 BB 20 68 85 SE Bl Bl 86 SE 65 SE FO SE 85 Dé 38 BS BS S é 7 8 2 10 it 01 65 x FS 03 co as cé 67 68 aS 85 20 a2 ci Bg ci a4 50 oA SF 00 Si 03 AD 40 en F7 03 TE 2 67 8 96 38 AS 85 5 85 5 BO ES 95 C8 DO C3 03 Az AF 2 OS A co 96 03 AS 67 SF AQ 00 91 Si 65 5 90 E7 4C 65 5 95 O1 60 * & LOMEM! X x * BY NEIL KONZEN x 12 x 13 % EQUATES 14 15 16 17 18 19 20 21 22 23 24 25 24 27 28 x LOMEM RNMPTR PRGBEG VARTAB FRETOF OLDTXT DATXT HIGHDS HIGHTR PRGEND TXTPTR AMPRSND x x ORG OBJ EQu EQu EU EQu EQU EQu Eau EQU EQU Eau Eau EQu $330 $330 $50 $5E $67 $69 $73 $79 $70 $94 $96 SAF $k8 $3FS PAGE21 sn Db AS So Si 3 AF 01 69 03 20 05 A4 38 ce SE 6c 00 FF — PAGE 22 THE APPLE ORCHARD MARCH/APRIL 1980 SUBROUTINES 29 * 30 CHRGET EQU $0082 31 BLT2 EQU $I3C3 sPART OF FP BLOCK TRANSFER 32 CLEAR EQU $b6éC s’CLEAR’ STMT ENTRY 33 FRMEVL EQU $b067 SEVALUATE A FORMULA 34 SYNCHK EQu $BECO sCOMPARE A W/C TXTPTR) 35 SNERR EQU SDEC? 36 FRMNUM EQU $E752 37 % 03303 AP 40 338 LUA #$4C sSET UP AMPERSAND VECTOR 0332: 8D FS 03 3? STA AMPRSND 0335% AX 40 40 LDA #<LOMEM: 0337: 8D FS 03 41 STA AMPRSND+1 O33At AP 03 2 LBA #>LOMEM: O33C3 BL F7 03 43 STA AMPRSND+2 O33Fi 60 44 RTS 0340 AD A4 45 LOMEM? LDA $$A4 5’LOMEM?’ TOKEN? 0342; 20 CO DE 46 JSR SYNCHK S5SYNTAX CHECKING HERE 0345; 20 67 DD 47 JSR FRMEVL 30Ky SO GET VALUE 0348: 20 S2 E7 48 JSR FRMNUM 49 * 50 x O34Bi AS 67 si LDA PRGBEG O34Ds BS 7. S52 STA HIGHTR O34F: AS BO 53 LUA PRGEND+1 $¢FP MOVE ROUTINE USED O35i: 85 97 54 STA HIGHTR+1 FIN A VERY BIZZARE WAY! 0353: C6 96 53 DEC HIGHTR 56 & 0355: 38 57 SEC 03562 AS SO 58 LIA LOMEM 03538: 85 94 a? STA HIGHS 035A: ES 67 60 SBC PRGBEG O35C: 85 50 61 STA LOMEM OSSES AS Si 62 LBA LOMEM+2 0360: 85 95 63 STA HIGHDS+1 0362: ES 68 64 SBC PRGREG+1 0364 85 51 65 STA LOMEM+1 66 * 03663 AS AF 67 LDA PRGEND 03683 ES 67 68 SBC PRGHEG OJ6At AT 69 TAY O36BR3. AS BO 79 LBA PRGEND+1 O36ni ES 68 71 SEC PREBEG+1 O36F3 AA 72 TAX 93703 18 73 CLC 03713 65 95 74 ADC HIGHDS+1 0373: 85 95 73 STA HIGHES+1 0375: C8 76 INY S3STRANGE MATH HERE BECAUSE 0376: LO 01 77 BNE +3 sWE HAVE TO MOVE (PRGBEG )-1 0378; ES 738 INX SAND “BLT2’ IS CALLED FUNNY 0379: EB 29 INX 037A3 CB 80 INY O37B$ 20 C3 D3 81 JSR BLT2 82 * O37E$ AZ 6&9 83 SKPS LDX #VARTAB sNOW GO UPDATE THESE FTRS 0380: 20 Ci 03 84 JSR ALD 85 * 0383: AZ AF 86 LOX #PRGEND 0385: 20 C1 03 87 JSR ADD 88 * MARCH/APRIL 1980 0388: AZ 038A 20 O38D: AZ O38F% 20 03923 AS 0394: CP 0396: FO 03982 AZ 039A 20 O39T AS OS9Ft AS O3A1? 85 O3A3% 84 O3AS: AD O3A7: 38 O3AB! BL O3AA: 65 O3ACt 71 O3AES AA O3AF: CB O3B0; BL O3B2% FO O3B42 65 O3B6: 91 OSB8: 84 OSHA: 85 O3BC: 90 OSBE: 4C O3C1i 38 03C23 BS 03C4: 65 OSCE? 9S 03C8: BS O3CAS 65 O3CCi 9S O3CE: 60 67 Ci 79 ci Bg 0o2 oS Bg ci 67 68 SE SF 00 SE So SE SE OA S21 SE SE SF E7 6c 00 So 00 OL Si OL 03 03 03 BS 89 90 i 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 lil 112 113 114 115 1146 117 118 119 120 121 122 123 124 125 126 127 128 129 DONT RENUM DONE ADL --- END ASSEMBLY --- TOTAL ERRORS? THE APPLE ORCHARD PAGE 23 LIX JSR LOX JSR LDA CMP BEG LOX JSR LBA LOY STA STY Loy SEC LDA ALC STA TAX INy LDA BEG ALC STA STX STA BCC JMF SEC LUA ALC STA LDA ADC STA RTS 159 BYTES GENERATED THIS ASSEMBLY #PRGBEG ADD SOLETXT ADL TXTFTR+L $602 BONT #TXTFTR ALD PRGBREG PRGBEGHL RNMPTR RNMPTREL $0 3FIX ‘NEXT LINE’ ADDRESSES 5(¢ ASSUMING THEY’RE ALREADY OKAY) CRNMPTR D7 LOMEM CRNMPTR DY CRNMPTR D9 ¥ DONE LOMEM+1 CRNMPTR D7 Y RNMPTR RNMPTR+2 RENUM CLEAR sNOW LET APPLESOFT DO THE REST sADD LOMEM+1 TO ZERO $009X $ZERO PAGE LOC IN X LOMEM $O09% G1isX LOMEM+1 $19X --- SYMBOL TABLE --~ LOMEM $50 RNMPTR $5E FRGBEG $67 VARTAB $69 FRETOF $73 OLUTXT $79 DATXT $70 HIGHDS. $94 HIGHTR $76 PRGEND SAF TXTFTR $E8 AMPRSND $03F5 CHRGET $B. BLT2 $033 CLEAR $066C FRMEVL $DD67 SYNCHK $UECO SNERR $DEC9 FRMNUM $E752 LOMEM: $0340 SKPS $037E DONT $0390 RENUM $03AS BONE $03BE ALI $03C1 “As manager of Personal Computers, here at Computerland of San Francisco, evaluating new software products is part of my job. With all the word processors on the market today, | choose EasyWriter for my business and personal use.”’ EasyWriter. 80 COLUMNS OF WORD PROCESSING POWER FOR YOUR APPLE II COMPUTER Finally... INFORMATION UNLIMITED SOFTWARE is able to bring you a complete word processing system for the Apple II. The new EasyWriter system gives you 80 columns of upper and lower case characters for your Apple’s video display, using the new SUP’R'TERM 1 board! A long time ago, we decided to bring you the best simple-to- use and understand tools for your computer system. Today we've taken another stride in that same direction. It took some doing, in both hardware and software, but we think you'll agree that for the buck, no one can touch us. it out: 80 Columns on the Screen! Upper & Lower Case! Global Search & Ri Underlining! Bidire Incremei Printing! File Appending! 50 Pages of Text Per Disk! —Karen Dexter Weiss You can purchase the new EasyWriter 80 column word processing system as a com- plete hardware and software package directly from our new office in California, or fro your local computer dealer. a mite EF Software: Information Unlimited Software, Inc. 793 Vincente St. Berkeley, CA 94707 (415) 525-4046 See The System at the 5th West Coast Computer Faire. MARCH/APRIL 1980 eo") ” pe THE APPLE ORCHARD PAGE 25 CONNECTING WITH THE USCD BIOS by Randall Hyde After purchasing my language system, my first goal was get- ting it to work with my ComputerWorld printer interface. For those of you who are unfamiliar with the Pascal system, let me mention that it only supports Apple peripheral cards. For those of you unfamiliar with the ComputerWorld printer interface, it only costs $80 (which is $100 less than the Apple printer inter- face). Since | have a ComputerWorld interface | certainly did not feel like spending an additional $180 just so | could use my printer with Pascal. So the obvious solution was to “patch” the existing system so that it would recognize, and utilize, the Com- puterWorld printer interface. After two weeks of pulling my hair out trying to dissassemble the UCSD BIOS (BIOS stands for Basic Input Output System) Dave Smith (of ComputerWorld) turned me on to an application note on the BIOS which was given to him by Apple Computer Inc. This Ap note, among other things, gave a source listing of the BIOS as well as directions on patching your own drivers to the BIOS. This Ap note should have been distributed to each of the local clubs as part of the “Introductory Package” sent out by the International Apple Corp. Ask your local club director for a copy if you’re interested. Anyway, with this application note in hand | proceeded to add my printer driver to the UCSD BIOS. The only problem | encountered was the fact that the free mem- ory mentioned in the application note is not really free. So | encountered quite a few problems when trying to figure out where to put my driver routines. Since | have a Mountain Hard- ware ROM Plus board, | decided to store my drivers in ROM and utilize the ROM Plus’ capabilities. While burning the first version of my driver routine it occurred to me that in addition to the printer driver | should also take advantage of the ROM Plus lowercase entry capabilities as well as the lower case display capa- bilities of the Dan Paymar lower case mod. So, back to the BIOS source listings to incorporate the required patches. Since 1! wanted this for use by the Pascal System, | needed the capa- bility to input such characters as “[”, “]”, “ h , “')”, etc. To allow this | not only hooked up the shift key (to TTL input #1) but | also wired up the control key to TTL input 42 (pin #4 on the ROM Plus connector). Now, by pressing the shift key and the control key simultaneously | can input the full 96 upper/lower- case/special character ASCII character set! Some other things | added include a “CAPSLOCK” feature (toggled by pressing control — R) and of course | allow the use of the shift key when using the Pascal System for upper and lower case entry. This filter’. routine can be used anywhere a “LDA $C000” instruction is used. Simply replace the LDA $C000 with a JSR $C800 (assuming of course that the ROM Plus board is selected) and upon return, if the accumulator is negative, then a key has been pressed, otherwise no key has been pressed. The listing for this routine appears in listing I (the assembler used is LISA), The routine is called “CONSOLE”. Also included in listing one is the initialization procedure for the ComputerWorld interface card as well as the printer write routine for the ComputerWorld interface card. Note that these routines are assembled at different pages in the expansion ROM memory space to allow customization for the user’s particular needs. Once these routines are burned into ROM | have made the as- sumption that this ROM will be stuck in the number two ROM socket. Once the ROM is placed in this socket these routines are available for use by the Pascal system. There is one problem how- ever. The UCSD BIOS does not know that these drivers even exist. This means that we have to actually go in and change cer- tain locations in the BIOS to tell it when to use these routines. This problem is handled by a special program called a “SYSGEN” program. This SYSGEN program goes in and modities the Apple Pascal BIOS so that the printer card is recognized and the lower case modifications can take place. Typically there are two ways to write a SYSGEN program. You can write it as a “‘one-shot” which you execute once and it modifies the BIOS on the Pascal disk. Or you can write it as a “dynamic SYSGEN” which must be executed each time the disk is booted. The one-shot method has the obvious advantage in that you don’t have to worry about running the SYSGEN program everytime you boot your Pascal disks. It has the not- so-obvious disadvantage in that it can possibly make your Pascal disks incompatible with other systems. Since compatibility is a major concern | chose to use the dynamic method for my SYSGEN program. Listing #2 is the listing for the SYSGEN program. This pro- gram is written in 6502 assembly language using the Pascal Adap- table Assembler. This routine simply turns off the language card write protect and proceeds to overwrite portions of the BIOS with the patches for use with the drivers | had stored previously in the ROM Plus. Other patches are made to allow lower case dis- play capability, as well as to allow the Pascal system to recognize the ComputerWorld ROM. Since the Pascal system cannot execute an assembly language program directly (at least to my knowledge), a short Pascal pro- gram appears in listing #3. After its compilation you must link this Pascal program to the previously assembled SYSGEN routine. Once the above steps have been taken, you can simply “eXecute” the SYSGEN program at the Pascal command level, and presto! Lowercase capability and printer capability are yours. | will attempt to answer any questions you may have about the BIOS, simply write: RANDY HYDE c/o APPLESAUCE 12804 MAGNOLIA CHINO, CA 91710 appicyauce LE CORPS APPLESAUCE is the somewhat monthly publication of THE ORIG: INAL-APPLE CORPS. Each month Applesauce features articles on BASIC, Assembly Language, Pascal Business Applications and per: sonal applications for the Apple Il. It is not simply a collection of Peeks, Pokes, Calls and utilities, but features articles and colurnns each mont A subscription, tg APPLESAUCE costs $15 for 1 year (foreign or ders please add for airmail postage). To get your subscription started, or to get a sample copy write APPLESAUCE 12804 Magnolia Chino, CA 91710 PAGE 26 0800 0800 0800 0800 0800 O800 9800 o800 0800 9800 0800 0800 0800 o8O0 9800 0800 0800 0800 0800 0800 0800 0800 0800 9800 0800 0800 0800 0800 0800 0800 0800 0800 0800 0800 C800 cao caoo C800 C800 caoo caoo CaO caoo cao ca00 C803 C805 C8e5 Caos Caos CBO4 C805 ALOOCO B01 60 08 WONO MAW THE APPLE ORCHARD CNTRL.R EQU CNTRL.K EQU LINEFEED EAU RETURN EQu SHFTMASK EQU CNTLMASK FE.QU TRUE Eau FALSE EQuU + ROMFLUS EQU SHIFTFLG EQU CNTRLFLG EQU KEYBOARD EQU KEYSTRE EQU VARIABLES: ppt EYSAVE EQU APSLOCK EQU ne PAG ORG ORY OM eee CONSTANTS ETC. $92 $8B SBA $80 $20 $10 $1 $0 SFECIAL LOCATIONS BSCOAQ ROMPLUS ROMPLUS $0000 $CO10 $CFOO $CFOL $0800 $1000 SAVE MARCH/APRIL 1980 sASSUMED IN SLOT #2 +LOCATION OF SHIFT FLAG +LOCATION OF CTRL FLAG +KEYBOARL PORT >KEYBOARD CLEAR PORT 3CHAR SAVE AREA (CIN ROM+) *SHIFTLOCK BOOLEAN UCSD PASCAL LOWER CASE CONSOLE ORIVER, FOR PLACEMENT IN STATUS MOUNTAIN HARDWARE’S ROM PLUS. -ONSOLE: LOA KEYBOART! BML CNSLL 7 + NO KEY, SO RETURN RTS 3 + KEY WAS PRESSED), * CNSL1 PHF —_—O——ooOoOo MARCH/APRIL 1980 THE APPLE ORCHARD PAGE 27 C807 37 F C807 58 + CLEAR KEYBOARD FORT C807 S59 oF Cao? BCioca 60 CBOA 61 ; 62 + 63 + TEST FOR CONTROL-R (SHIFT/CAPS LOCK) ot F SBDOOCK 65 STA KEYSAVE. #SAVE INPUT CHAR C992 66 CMF #CNTRL.R TOOE 67 BNE CNSL2 68 ;¢ 69 + NOW TOGGLE CAPS LOCK MOLE ANID 70 + RETURN 7io3 ADOTE 72 LDA CAPSLOCK 4901 73 XOR #TRUE BIOL 74 AND #TRUE SDOLCE 73 STA CAPSLOCK 1 26 76 PLE ¢FIX STACK 7 AIO 77 LIA #$0 #FILL ACC WITH NON-NEG # E60 78 RTS 79 + BO 3 TEST THE CURRENT CHARACTER Al: 82 CNSL2: 83 + Ad + SEE IF SHIFT IS PRESSED 85 + - AMO 86 LOA #SHFTMASK eCAOCO 87 BIT SHIFTFLG DOGB 88 BNE NORMAL 89 +: 90 + NOW TEST FOR SIMULTANEOUS CTRL KEY 91 ¢ 92 LOA #CNTLMASK 93 BIT CNTRLFLG 94 BNE TSTSHFT 95 4 96 + CONTROL-SHIFT CHAR HERE 97 98 LOX #12 #INIT FOR 12 CHARS 99 LUA KEYSAVE 100 CS).30F CMP SPEC» X 5 FOos8 BE@ FNDL CA DEX LOF 8 BPL CSLOOF 104 ¢ 105 3 IGNOR C-S COMBINATION ANDI PASS 106 + CHARACTER UNCHANGED 107, + ADOOCE 108 LDA KEYSAVE 28 109 PLE 60 110 RTS 111; 1i2 + 113° + SPECIAL CHARACTER WAS DETECTEL+ ii4 + CONVERT ANG LEAVE PAGE 28 C83. F BOSACa 2 28 60 ALAZAB AFTASAS ATA BAD BLIRF BE, BC DE rr COASAS 3/ Eor aro DFDCIO 0B f ADOLOF | DOD A202 ADOOCE nD7AC8 FOO8 CA . Lore ADOOCF 28 60 Bos ice 28 60 CODDDE DOCOCE 115 116 117 118 119 120 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 i49 150 151 152 153 154 15 154 157 158 159 160 161 162 163 164 165 FNOL oo a Pull a SPECVAL ag Se seers STSHF Ts LDA CAPSLOCK BTR NOCHNG * LOX #2 sINIT FOR “@"> LDA KEYSAVE SFTLOOF CMF SHFTC+X BEQ FND2 DEX BPL SFTLOOP ¢ AT THIS POINT, LEAVE THE CHARACTER + ALONE LIA KEYSAVE PLP RTS * *# NOW A “@"» “J"y OR “*4" HAS BEEN + ENCOUNTERED. CONVERT TO “P", “M"+ OR 3 FNO2 LOA SHFTCUs X PLP RTS 3 7 SHFTC ASC "@1*" SHF TCC ASC “PMN" 4 ? + IF YOU GET TO THIS FOINT THEN THE + CAPSLOCK MONE IS IN EFFECT, SO TREAT + THE CHARACTER EXACTLY AS IT COMES * FROM THE APPLE KEYBOARD. - NOCHNG: THE APPLE ORCHARD LDA PLF RTS Ast ASC BYT Asc SPECVAL: X wae $FF “@ZRSIF_N Jc" “BER CDEP" SHIFT KEY IS PRESSED HERE oN MARCH/APRIL 1980 wg) he Pee MARCH/APRIL 1980 THE APPLE ORCHARD , PAGE 29 C88O ADOOCF 1466 LDA KEYSAVE cass CIB 167 CMP #ONTRL.K sCONTROL-K? C885 Loos 168 BNE NOCHNG1 caa7 AcE 149 LOA #0" #CHANGE TO “C" C889 BLOOCF 170 STA KEYSAVE. caac 171 + CABC ADOOCF 172 NOCHNGI LDA KEYSAVE caer 28 173 PLP ca90 40 174 RTS casi 175 3 cag 176 + cagL 177. + NORMAL CHARACTERS HERE (NO SHIFT OR CTRL) cai 178 + cari 179 NORMAL: C891 ADOICF 180 LDA CAPSLOCK Cao+ DOEA 181 BTR NOCHNG C896 182 + C896 183 + IF NOT IN CAPSI.UCK MODE, AND CB96 184 + CHARACTER IS ALFHARETIC~ “UNSHIFT" ca7S 185 3 If. C896 186 + C874 ANOOLF 187 LOA KEYSAVE ca99 CICL 188 CMP #"A" C89B 70E3 189 BLT NOCHNG Cagn CIDE 190 CMP 8" Z "464 caor BOOF 194 BCE NOCHNG CaAL 0920 192 ORA #$20 CAS BHOOCF 193 STA KEYSAVE CBAS 4C80CB8 194 JMF NOCHNG caA? 195 3 caAg 196 + cea 197+ CBAD 198 PAG C900 199 ORG $0900 £900 200 OBJ $1100 C700 201 + C900 202 3 c00 203 + C900 204 FHKE EEE EE EH HK EHH ERE HEE EK EEE EER EE EEE c900 ; C900 ' C900 ; 6900 $ COMPUTERWORLD! (ALIAS CCI OF OC) c900 } PRINTER INTERFACE DRIVER £900 $ C900 PINITs C900 AI00 212 LDA #0 C902 Bngeco § 213 STA C090 C905 an93Bco 214 STA $CO93 C908 AIO4 215 LDA #4 CIOA BHPICO 216 STA $CO91 C900 AIFF 217 LOA #$FF COOF BD92C0 218 STA $CO92 C912 AI3C 219 LOA #$30 C914 BLI93CO 220 STA $CO93 C917 A200 221 LOX #$0 C919 60 222 RTS PAGE 30 CIA CIA CI1A COLA cao cCAOO CA00 CAD CACO CAgO CAO CAOz CAGS caog CAS CAO9 CAE CAOR CAOR CAOB CAOE CAOC CAGr CALL CAL4+ CAL6 CAi9 #eRES ENC OF i Add $1.50 /item, shipping and handling professional, but not a substitute for legal advice THE APPLE ORCHARD. MARCH/APRIL 1980 223 3 224 3 225 7 226 FAG 227 ORG $CA00 228 OBJ $1200 229 5 230 + CCI PI CHAROUT ROUTINE 23 -3 232 PWRIT: 297F 233 AND #$7F :STRIF H.U. BIT 48 234 PHA +ANDD SAVE 235 3 236 HANIISHK JSR $0681 ¢TEST KEYBOART! 237 LDA C090 238 BMI HANIISHK 239 + 240; RETRIEVE CHARACTER AND OUTPUT 241 TO PRINTER 242 + 68 243 PLA ADGZCO Bad STA $CO92 AG31 245 LDA #$31 Bn9aCO «246 STA $0093 ;TOGGLE CHAR AVAILABLE A93C 247 LDA #$30 B093C0 248 STA $Co93 60 249 RTS 250 END ASSEMBLY FINALLY, Apple II°® software for the discerning computerist, and the not-so-discerning beginner AppleAids™ Little Tricks™ A series of carefully explained subroutines containing a potpourri of useful programming techniques in Integer Basic and Applesoft, such as specific key stroke identification, timing loops, disappearing question marks on input, no question marks on input, and many more. Cassette (24K) 14.95 Disk (32K) 19.95 Scroll Control™ Have you ever wondered why you cannot list an Integer Basic or Applesoft program one screen-page at a time? So have we, and we did something about it! Our machine language Scroll Control, hidden in RAM so as not to “bump” into your program, can be engaged or dis- engaged at a flick of the keyboard. Why be frustrated when instead you can control the scroll? Cassette 9.95 Disk 14.95 Form-It-Out™ A series of routines in Integer Basic and Applesoft containing detailed explanation and examples of programming techniques necessary to professionalize your screen output. Included are right and center justi- fication, windowing, tabbing, cursor positioning among others. Cassette (24K). 14.95 — Disk (32K) Track & Sector List™ This is the ultimate disk utility. Instead of a catalog, have you ever seen those dreaded words “I/O ERROR"? Is all lost? NO! Now your disk may be saved. Also you can eliminate bad sectors, remove control characters imbedded in file names, and more. This machine language program is supplemented by extensive tutorial documentation worth its weight in gold. Disk only (32K) 29.95 Compulaw™ Series Hex and Decimal Learning Tree™ “Alitax Estimator™ This Applesoft program, prepared under the supervision of an attorney, estimates disposable income after alimony and child support payments and federal taxes. For use by laymen and attorneys. 1980 tables. Cassette (24K). 9.95 — Disk (32K) 14.95 “Pensionner™ Accompanion to Alitax Estimator in Applesoft designed to calculate the present value of a pension in states in which a pension is subject to division in marital dissolution cases. Disk (32K) Cassette (24K). 9.95 14.95 NuJ. tes. add 5% sales tax Apple Il and Applesoft are registered trademarks of Apple Computer, Inc. FTA INCORPORATED ™ My ABC’s™ Anearly learning Integer Basic program using over one hundred and fifty high resolution graphic letters and pictures ina drll-and-practice format designed to develop identification of capital and small letters, and association of letters with pictures. Scoring capability allows monitoring Child tested and teacher recognized. Cassette (48K) 14.95 Disk 19.95 Now I Can Rhyme™ Accompanion to My ABC's in Integer Basic. The child selects those high resolution pictures which rhyme. Score-keeping capability allows monitoring. incorporates progressive levels of difficulty Cassette (48K) ..14.95 Disk (48K) 19.95 P.O. Box 774M | Morristown, NJ 07960 ) |) (201) 539-3770 MARCH/APRIL 1980 1 LWRCASE memory available: PAGE 0001 Current e000! O000; Oooo) AN 83C0 000s) AD 8300 OoOS! 00046! 00S! o0046! 0004! O0061 AO OO 1 BD £ERK 1 99 FADS =i U8 OQOOF; CO 10 OOLL! 9OFS oOoO1st oo13! ooO1s! 00131 oo13) OoO13 oo1g) OO131 A? BO ooO1S: 80 ESn8 oo18! AI O2 OO1A! BD EVD oor oOo1ny Oot OOLL ooint OOLLT OOLMT Ad OO OOLF! BY x*¥x* 00% 99 EODA 0025: C8 00261 CO OE o028! 9OFS OGRA A? 40 80 BAL/ A9 EO 0031: 80 BBR7 0034! AD DA 06361 8D 8CD7 00391 00371 o039t 00371 AQ OO THE APPLE ORCHARD PAGE 31 FILE+¢L. ASM +PROC LWRCASE 9527 LDA OCO83 #TURN ON RAM WRITE LDA oCO83 #ON LANGUAGE CARD. ROM PLUS PATCH TO ALLOW LOWER CASE INFUT TO FASCAL SYSTEM. LOY #0 LOOP LOA DATALLY STA OL&9A+Y INY CFY #10 Bcc LooF LOWER CASE DISFLAY FATCH. CONVERT THE SBC #620 TO A BCC *+$4 INS ‘TION WHICH ALLOWS LOWER CASE TO BE DISPLAYEL IF THE USER HAS A DAN PAYMAR BOARD LDA #OBO STA OD8ES LDA #2 STA OLSE9 COMPUTERWORLD PRINTER INITIALIZATION FATCH TO BIOS. LDY #0 LOOF2 LDA DATA2,Y STA OOAEO:Y INY CPY #0E BCC LOOF2 PATCH UP A JUMP TO THE ABOVE PRINTER INIT ROUTINE. LOA #40 STA OD78A LIA #OEO STA OD78B LDA #0DA STA 0078C MOVE THE PRINTCHAR ROUTINE INTO BIOS LOY #0 RHEE FonA OF PAGE 32 Oo3R! BD OOSE! 99 OO41) CB oo4z CO OO4+41 FOFS 0461 00451 0046) 00451 00461 OO1S) AF 0048) BL OO4+BT AD oo4n} BL OOS41 AL 00671 O09 0059) BO 0060 + 0041 006C i OOS t o006C! AL OOGF 1 60 070) Os} a0701 OO7 FT EA 00801 OOO} 48 106 OF 1406 O85 FOBF OF BF 80 OFBF 88CO THE APPLE ORCHARD MARCH/APRIL 1980 LOOPS LDA DATAS,Y STA ODAFO:Y INY CFY #0F gcc LOOFS + FATCH IN A JUMP TO THE PRINT CHAR + ROUTINE. LDA #40 STA OD81i1 LOA #OFrO STA OD812 LOA #00 STA OD81i3 FIX UP CARO RECOGNITION BYTES TO CORRESFOND TO THE COMPUTERWORLD INTERFACE, LOA #48 +SHOULD BE 4+ FOR NEWER CAROS STA OD610 LOA a4 ‘SHOULD BE 93 FOR NEWER CARDS STA OD614. PLACE A S IN LOCATION BFF9, THIS TELLS APPLE FASCAL THAT A FRINTER INTERFACE CARL IS IN SLOT #14 LUA #5 STA OBFF9 ¢ SET J.CNE FEED IGNOR MODE LOA OBFOF ORA #80 STA OBFOF WRITE FROTECT RAM CARL LDA ocoss RTS #LOWERCASE INPUT DRIVER ROUTINE DATAL «BYTE OALs OFF s OCF + LDA $CFFF + BYTE OA9)8A * LDA #684 «BYTE 8D, OAQ,0C0 + STA $COAQ + BYTE 20:0,0C8 * JSR $0300 »BYTE 10/30 + BFL JLIONCK + BYTE 29,7F + OND $7 F + BYTE OFA + NOP DOS ERROR MESSAGE OVERRIDES To avoid the NOMON CIO default: POKE - 251277234, POKE - 251287234. POKE - 251277234 : To defeat the NOT DIRECT COMMAND error’ POKE - 24543% 24% PXKE - 245429234. POKE - 245419234 Thes locations are for 48k, For 32k» add 419752 MARCH/APRIL 1980 THE APPLE ORCHARD PAGE 33 ou80! COMPUTERWORLD PRINTER INIT ROUTINE 0080) 0020x 8000 oo8G) AD FF CF RATAZ «BYTE OADy OFF, OCF + LDA $CFFF 0083! AD BA «BYTE OA9s BA + LDA #$8A 0083; 8D AO CO + BYTE 8D+0A0+0C0 ; $COAO 0088: 20 00 C9 »BYTE 20/0+0C9 3 JSR $0900 OOBBi AZ OO + BYTE 0A2+0 + LOX #60 oo8n! 60 +BYTE 60 ¢ RTS OOBE! 003Cx BEOO oo8E: AQ FF CF DATA3 . BYTE OAD, OFF; OCF + LOA $CFFF 00911 AD BA »BYTE OA9:BA + LOA #$8A 0093; 8D AQ CO » BYTE 80,0A0,0C0 + STA $COAO 0096! BA + BYTE 8A + TXA 00971 20 00 CA + BYTE 20,00,004 + JSR $CA00 OO9A! AZ OO »BYTE 0A2)00 + LOX #$0 o09t! 60 +BYTE 60 + RTS oognt oo9nt »ENO FILE:L.ASM SYMBOLTABLE DUMP AR - Aisalute Ud - Undefined MC - Macro RF - Ref PR - Proc FC - Func PB Pualic PY - Private Cs - Consts LATAL LE 00701 DATAS LB 0080! DATA LB OO&E! LOOF LE OOO8! 2 LB OOLF: LOOPS LB OOSE! LWRCASE FR ---~ 2 1 1:0 1 {$L PRINTER: |} 3 1 i:G 1 PROGRAM LOWERCASE; PURCHASE AND RECEIVE SOFTWARE FOR THE 4 1 2D 1 PROCEDURE LWRCASEs APPLE If = INSTANTLY = THROUGH YouR MODEM. EXTERNAL: A VARIETY OF PROGRAMS AT REASONABLE PRICES, 5 7 180 O BEGIN FULLY DOCUMENTED AAD TESTED, ALWAYS IN STOCK. 6 1 1:0 Oo OPEN 24 HOURS. ? 1 Len ie) LWRCASEs one [rel . Your & avo , GLADLY ACCEPTED. 8 1 ded 4 NEVER A CHARGE FOR PosTAGE OR HANDLING. 9 = 1:0 4 ENO, SAVE TIME AND MONEY. AvoID DISAPPOINTMENT. CAL TopAY FoR A FREE DEMONSTRATION AND A FREE SAMPLE PROGRAM. E& a) 324-3115 movem Aree 3c IS A REGISTERED TRADEMARK OF ATPLE Compurer, Inc. POST OFFICE BOX G5'4% — TORRANCE, CALIFORNIA 0504 LOOF MICROSOFT CONSUMER PRODUCTS CONTINUING THE MICROSOFT TRADITION Microsoft set the standard in microcomputer system software. We know more about the structure and capabilities of today’s microcomputers than anyone else. And now we're using that power in a whole new way! Announcing Microsoft Consumer Products. Dis- tinctive software packages backed by the Microsoft name. Each is created by a top-notch programmer and comes to you fully documented, at a cost you can afford. Microsoft Editor/Assembler-Plus.* Now get every feature of Radio Shack’s Editor/Assembler and T-Bug all in one package. PLUS—many “big computer’ features to simplify your programming, editing and debugging. All in a low cost cassette package. Don’t waste time creating both source and object tapes—Assembler-Plus assembles directly into mem- ory. Supports macros and conditional assembly, too. Editor-Plus simplifies editing with extra commands like Substitute, Move, Copy and Extend. And Z-Bug;” the most powerful debugger ever available for the TRS-80, has single step execution, direct execution in calculator mode and symbolic refer- ences. And, you can use up to 8 breakpoints at a time, with no need to remove a breakpoint before proceeding. For the 16K, Level Il, cassette TRS-80. Priced at $29.95. Microsoft Adventure. Only Microsoft offers Adven- ture complete, as originally written for the DEC PDP-10, now implemented on personal computers. The ultimate fantasy/logic game, Adventure allows you to explore the depths of the “Colossal Cave,’ collecting treasures and magic, solving puzzles, avoiding hazards and adversaries—including the dreaded killer dwarves. Don‘t be fooled by imita- tion or incomplete versions. Only Microsoft has it all. Adventure fills an entire disk with everything you need for your exploration. Written by Gordon Letwin, of SOFIWIN, Associates. Adventure for the TRS-80 re- quires a single-disk, 32K system. For the Apple II7* a single-disk, 32K system with either the standard disk or language card system. For just $29.95. A ICROSOFT CONSUMER N PROD! Microsoft Typing Tutor. There’s no easier way to mas- ter your keyboard! Faster and more efficient than any other teaching method, Typing Tutor helps you if you're starting from scratch or simply building speed. The secret lies in Typing Tutor’s exclusive TRM™ or “Time Response Monitoring” software. TRM moni- tors your keyboard 20 times per second so the com- puter can evaluate your skill. Your speed. Your errors. Your weakest keys. Typing Tutor tells you where you stand then automatically adjusts itself to help you improve. Written by Dick Ainsworth and Al Baker of the Image Producers, Inc. For the Apple II with 16K and Apple BASIC or the TRS-80 with 16K and Level II BASIC. Priced at $14.95. Microsoft Level Ill BASIC. Upgrade your Level II TRS-80 and increase your programming efficiency without additional hardware. Microsoft Level Ill loads from cassette tape on top of the Level Il ROM. It gives you every feature of Disk BASIC except disk file commands. But that’s not all—Level Ill’s high- speed graphics turn your TRS-80° into a virtual elec- tronic drawing board. And there's program renum- bering, long error messages, quick shift-key entries, time-limit INPUT statements and many more fea- tures. System requirements: Level Il BASIC and 16K. Occupies 5.2K RAM. Priced at $49.95, Where To Buy. Microsoft Consumer Products are sold by computer retailers nationwide. If your local computer store doesn’t have them, call us. Phone (206) 454-1315. Or write Microsoft Consumer Products, 10800 Northeast Eighth, Suite 819, Bellevue, WA 98004. "TRS-80 is a trademark of Radio Shack Corp. * ‘Apple Il is a trade- mark of Apple Computer, Inc.," Editor/Assembler-Plus and Z-Bug are trademarks of Microsoft. TRM is a trademark of The Image Producers, Inc MARCH/APRIL 1980 gett THE APPLE ORCHARD PAGE 35 SOFTWARE DEVELOPMENT TOOLS FOR THE APPLE II by Bob Stout INTRODUCTION The introduction of the Apple II+ was hailed by many as the answer for many small systems (read business and similar systems) applications. An Apple with Applesoft as its primary language is obviously better suited to this market than the original Apple II. However the adoption of the Autostart ROM as the new standard monitor chip will unfortunately only serve to further isolate the user from the computer’s internal operation and structure. While this is unfortunate for the casu

Showing the first 100000 of 367403 characters.

mp.ls