Skip to main content

apple contact thebestof1978

  • PublicationApple Contact
  • Pages32
  • Sourceapple_contact_thebestof1978.pdf
← Magazines apple contact thebestof1978
/ 32
Source: Brutal Deluxe Software — Apple Contact 1978–79, via applearchives.com.
Page 1
Loading…
Text content (OCR)
© 2.59 cowpuren wena 126 THE BEST OF concdact 7: the user group newsletters @appie A, inc: \ contact 78 /the best of the user group newsletters for 1978 @appie computer inc. 4° LOCAL USER GROUPS Apple's still springing up Many APPLE user groups have sprung up during 1978, and more are in the germination stage. Following is a list of those we knew about at the end of the year. If there is no group in your area and you want to start one, talk to your APPLE dealer. Chances are he knows most of the local APPLE II owners, and can help bring them together for your kickoff meeting. He might even want to host the meetings on a continuing basis. Ask him. If you have formed (or want to form) a local user group, let us know. We can publicize your efforts and help you get off to a good start. ALASKA 1, APPLE-HOLICS G. K. Inman SRA Box 1313 Anchorage AK, 99502 (907) 344-1300 ALABAMA 2, APPLE CORPS Terry Woodward Computer Center, Inc. 433 Valley Avenue Plaza Birmingham AL. 35209 (205) 942-8567 ARKANSAS 3. DATABITS C. Johnson C/O DATACOPE 5706A W. 12th Street Little Rock AR. 72204 (501) 666-8588 CALIFORNIA 4. L.A. APPLE USERS GROUP 11911 Wilshire Blvd. CA. 90025 5. ABACUS USERS GROUP BYTE SHOP 1122 B St. Hayward CA. 94541 (415) 886-2980 6. THE APPLE PICKERS SANTA ROSA COM- PUTER CENTER 604 Seventh Street Santa Rosa CA. 95404 7. APPLE USERS GROUP SCOTT STARKWEATHER 11074 San Pablo Avenue El Cerrito CA. 94530 (415) 233-5010 8. APPLE BYTE USERS GROUP LOY SPURLOCK APPLE BYTE PROGRAMMERS COMPUTER FORUM 14052 E, Firestone Blvd. Santa Fe Springs CA. 90670 (213) 921-2111 & (714) 739-0711 9. APPLE CORE Marion A, Clarke COMPUTERLAND OF THOUSAND OAKS 10. ll. 15, El Cid Plaza - 171 E. Thousand Oaks Blvd. Thousand Oaks CA. 91360 (805) 495-3554 APPLE-BIZ Melvin Wong 301 Balboa San Francisco CA. 94118 (415) 221-8500 APPLE CORE AVIDD ELECTRONICS 2210 Bellflower Rd. Long Beach CA. 90815 (213) 598-0444 . APPLE CORE Scott Kamins Box 4816 San Francisco CA. 94101 . APPLE USERS GROUP Mark Wozniak COMPUTERS PLUS 1324 S. Mary Sunnyvale CA. 94087 (408) 735-1199 . COMPUTERLAND OF LOS ALTOS Sarkis Kouzoujian 4546 El Camino Real Los Altos CA. 94022 (415) 941-8154 NORTH ORANGE COUNTY COMPUTER CLUB David Smith 607 North Twilight Placentia CA. 92670 (714) 993-9939 conzact 78 /the best of the user group newsletters for 1978 @erpie computer inc. 16. SILICON APPLE PROGRAMMING SOCIETY 2485 Rossotto Dr. San Jose CA. 95130 (408) 354-6120 17. VIDEO GAMES & COMPUTERS 301 Balboa San Francisco CA. 94118 (415) 221-8500 CONNECTICUT 18. APPLE USER GROUP Glen Brennan COMPUTERLAND OF FAIRFIELD 2475 Blackbrook Turnpike Fairfield CT. 06430 (208) 374-2227 DELAWARE 19. COMPUTERLAND OF NEWARK James H. Higgins Astro Shopping Center— Kirkwood Highway Newark DE, 19711 (302) 738-9656 FLORIDA 20. Victor Steeb SOUTHERN MICROCOMPUTER CO. Miami Lakes FL. 33160 (305) 821-7401 21. APPLE USER GROUP Pat Fiorentino 2201 Ponce De Leon Blvd. Coral Gables FL. 33134 S901E Northwest 151st St. FRANCE 22. APPLE OEDIP Schraen Dominique 8 - Place Ste-Opportune - 75001 Paris FRANCE 508-46-21 - 508-47-71. GEORGIA 23. APPLE USER GROUP Preston Love DATAMART INC. 3001 N. Fulton Dr. Atlanta GA. 30305 (404) 266-0336 HAWAIL 24. APPLE USER GROUP Dennis Nyhagen 7110 C Ohana-Nui Circle Honolulu HI. 96818 IOWA 25. Earl Keyser 22 Clover Lane Mason City TA. 50428 IDAHO 26. Larry Bugbee 2874 Ithaca Boise ID. 83705 (208) 362-9132 (Home) & (208) 384-6100 (Work) ILLINOIS 27. 28. APPLE PIE Jerry Feil 17318 S. Locust Tinley Park ILL. 60477 (312) 532-8244 (Home) NORTHWEST SUBURBAN APPLE USERS GROUP Ken Rose & Steve Uhl C/O COMPUTERLAND OF ARLINGTON HTS. Arlington Hts. ILL. 60004 (312) 359-6723 & (312) 882-4567 INDIANA 29. INDY APPLE PICKERS Doug McIntosh C/O HOME COMPUTER CENTER 2115 E. 62 Street Indianapolis IN. 46220 30. Joe Torzewski 51625 Chestnut Rd. Granger IN. 46530 LOUISIANA 31, SOUTHEASTERN SOFTWARE 7270 Culpepper Dr. New Orleans LA. 70126 MASSACHUSETTS 32, APPLESEED Donald M. Isaac 17 Saxon Rd. Worcester MA. 01602 MARYLAND 33. MARYLAND APPLE CORPS. Kevin Parks COMPUTERS ETC. 13A Allegheny Avenue Towson MD. 21264 (301) 296-0520 contact 78 /the best of the user group newsletters for 1978 @erple computer inc. MINNESOTA 34, MINI‘APP’LES Dan Buchler 13516 Grand Avenue South Burnsville MN. 55337 (612) 890-5051 MISSOURI 35. APPLE JACKS Creighton Calfee P.O. Box 8452 St. Louis MO. 63132 NEW JERSEY 36. APPLE GROUP-NEW JERSEY Steve Toth 1411 Greenwood Dr. Piscataway N.J. 08854 (201) 968-7498 37, COMPUTER LAB OF NEW JERSEY Dan Fischler 141 Route 46 Budd Lake NJ. 07828 (201) 691-1984 NORTH CAROLINA 38. APPLE CORE COMPUTER CLUB Alex Popper 3915 E. Independence Blvd. Charlotte NC. 28205 (704) 523-5107 NEBRASKA 39. APPLESAUCE OF LINCOLN/OMAHA Russ Genzmer C/O TEAM ELECTRONICS 2055 ‘O’ Street Lincoln NEW MEXICO 40. THE APPLE CORPS Earl J. Nielsen PERSONALIZED COMPUTER SERVICES 1803 Corte Del Ranchero Alamogordo NM. 88310 (S05) 437-8447 NEW YORK 41. NYC USERS GROUP Neil Shapiro C/O COMPUTER/MART OF NEW YORK 118 Madison Avenue New York NY. 10016 (212) 686-7923 42. Charles Kollett 32 .N. Brewster Lane Bellport—LI. NY. 11713 (516) 286-0198 OHIO 43. APPLE-SIDER John Anderson 5707 Chesapeake Way Fairfield OH. 45014 (513) 829-1340 OKLAHOMA 44, APPLE II USERS GROUP Jerry Henshaw - PRESIDENT C/O THE TULSA COMPUTER SOCIETY P.O. Box 1133 Tulsa OK. 74101 (918) 836-7364 OREGON 45, APPLE PORTLAND. PROGRAM LIBRARY EXCHANGE Ken Hoggatt - PRESIDENT. 9195 S.W. Elrose Court Tigard OR. 97223 (503) 639-5505 (Home) & (503) 644-0161 - X6136 (Work) PENNSYLVANIA 46, COMPUTERLAND OF HARRISBURG 4644 Carlisle Pike Mechanicsburg PA. 17055 47, APPLE USERS GROUP Neil Lipson PHILADELPHIA AREA COMPUTER SOCIETY 29 S. New Ardmore Avenue Broomall PA, 19008 (215) 825-3800 - X278 (Work) & (215) 356-6183 (Home) TENNESSEE 48. APPLE PI Richard C. Secrist (FORMERLY APPLEACHIAN USERS GROUP) RT. #12 - Cherokee Hills Sevierville TN. 37862 TEXAS - 49. APPLE BARREL R. V. Collins 12502 Bexley Houston TX, 77099 50. THE APPLE CORPS. Bobbie Ferrell Greenhill School contact 78 /the best of the user group newsletters for 1978 @oppie computer inc. 14255 Midway Rd. - Fulton Bldg. Dallas TX. 75240 (214) 661-1211 (Work) & (214) 243-6347 (Home) 51. APPLE CORPS. COMPUTERLAND OF AUSTIN 3300 Anderson Land Austin TX. 78757 (412) 452-5701 52. APPLE SEED Bill Hyde THE COMPUTER SHOP 6812 San Pedro San Antonio TX. 78216 (512) 828-0553 53. PHILIP W. JACKSON C/O COMPUTER SOLUTIONS Suite 124A - 9200 Broadway San Antonio TX. 78217 (512) 828-1455 & (800) 292-7652 (TOLL FREE) WASHINGTON 54. APPLE PUGET SOUND PROGRAM LIBRARY EXCHANGE Val Golding 6708 39th Ave. Southwest Seattle WASH. 98136 (206) 937-6588 (Home) & (206) 623-7966 WISCONSIN 55. WISCONSIN APPLE USERS Ken Blochowick C/O Cybernetic Mechanism P.O. Box 11463 Milwaukee Wi. 53211 (414) 964-6645 LOOKING AREAD ... to how your Apple will grow In case you are itchy to add to your Apple II system (or even just to learn more aboutit), here’s what’s coming up. BASIC PROGRAMMING MANUAL —This is a beginner’s guide to Apple BASIC, complete with lots of examples and illus- trations. It will be mailed to all users who have warranty cards on file with us, starting late this month. COMMUNICATIONS CARD —A card that lets your APPLE IL talk over the phone with other computers will become available in April. For $180, this intelli- gent interface will allow the computer to control any 110 or 300 baud serial device through an industry standard RS-232C interface port. Look for a data- sheet in the next newsletter. NEW APPLESOFT~—It’s com- ing, and it’s going to be great! The new APPLESOFT fixes bugs in the existing version, and adds features such as data save/load, high-resolution plotting capabil- ity, ON ERR GOTO capability, and much more. It will be avail- able on cassette in May, at $10. The ROM version, on a plug-in card (for slot #0), will be out in June at $99. The card will have a switch to allow you to choose between Apple BASIC and APPLESOFT. FLOPPY DISK—The new mini-floppy should be on dealers’ shelves by early July, at a price of less than $700 for the con- contact ‘78 /the best of the user group newsletters for 1978 Goppie computer inc. troller card and one drive. (Each card will handle up to two drives.) The software, which works with either version of BASIC, will be able to load and store named files and provide disk directory lists. Look for more details two issues from now. SERIAL INTERFACE CARD- This is a high-speed (to 9600 baud), programmable serial interface; designed to connect fast, half-duplex devices (printers, plotters, etc.) to the APPLE II. More details will be available two issues from now, and the device itself will be out in July. No price has been set. EDITORIAL He by Phil Roybal,Marketing Mgr. And now it's your turn As we enter 1979, it is re- warding to look back and see how far we’ve come in these last twelve months. If you’ve joined our Apple family recently, P’d like to welcome you and share a little historical perspective with you. At the start of 1977, personal computers sold largely to hobby- ists. Most products were S-100 bus systems without the reliabil- ity, packaging, or software re- quired to address other markets. Integrated systems (like APPLE II) were still a new idea. Indeed, some trade publications actually stated that such products were toys because they didn’t have the expansion capability of the old S-100 systems! A year later, integrated systems dominate retail sales; and Apple has emerged as the premiere manu- facturer in the quality-oriented segment of the market. While that was happening, the market itself was changing character. Today there are more hobbyists than ever; but now they share the computer stores with businessmen, educators, and industrial users. This change has resulted in demands for useful application software that has put considerable pressure on our in- dustry. While few programs actu- ally emerged during 1978, a great number of them were specified and contracted for. On the manufacturing side, the free ride was over. Poor product design, erratic quality, and inadequate financial strength took their toll. Some vendors fell prey to acquisition or reorganiza- tion, and ceased to be factors in the market. But the combined efforts of the industry sold around 180,000 systems. Apple Computer expanded production dramatically while building up an order backlog that reached 12 weeks during the Christmas buy- ing spree. We grew rapidly; and profits were reinvested to finance production expansions, new product development, and better customer support. The product line matured too. In January, we offered only the APPLE II system, at $1695 (16K RAM). By the end of the year we had introduced new manuals, modems, and printers; the Applesoft ROM Card; and our most popular peripheral, the floppy disk. Declining compo- nent costs and manufacturing economies of scale let us keep profit margins stable while we brought the price of a 16K sys- tem down to $1195. And most important, we were able to start several major software efforts that will yield dividends to every Apple user in ‘79. What lies ahead? Throughout the industry, 1979 should be the Year of Software. More than two dozen companies presently mar- ket APPLE programs, and that number should swell to 100 dur- ing ‘79. We are planning several major announcements that span the gamut from languages and operating systems to business and education packages supplied ready-to-run. And those packages will be accompanied by docu- mentation that sets the industry standard for completeness and clarity. It’s been a good year; and we owe a great deal to you, our cus- tomers. We plan to grow substan- tially during 1979 by bringing you products that will enhance the usefulness of your Apple in- vestment. We thank you, and hope to continue earning your support. A FUNNY THING HAPPENED ON THE WAY HERE..... This is the first of an irregu- larly published series of news- letters aimed at filling you in on what’s happening at Apple; and at soliciting the feedback, prod- uct ideas, and people we need to service you, our customer base. In the past, we occasionally let our enthusiasm carry us away. It is often easy to forget how dif- ficult it is to actually bring qual- ity products into production. (And that’s especially true when you're doubling in size every few months and still can’t hire people fast enough to do everything that needs doing.) But on the way here, we’ve learned a bit. And we realize success hinges upon meet- ing commitments. So from now on, you'll see more conservative schedules from us; and we'll usually beat them. This newsletter marks the start of an official APPLE II User Group: one that we trust will grow strong and healthy this year. But there’s a lot of work yet to do. A major portion of it has to do with classifying and documenting all the software we have received over the past months, It really hasn’t been lost. All 200 tapes are sitting in a box, waiting for us to look at them. While our goal was to publish a software list, description of the Software Bank, and Contributor’s Form with this newsletter, we started too late. Instead, it’ll be in the next newsletter. For sure, Apple Computer has grown contact 78 /the best of the user group newsletters for 1978 Goppie computer inc. from two men in a garage to 40 people in a modern 20,000 sq. ft. building, in less than two years. You made that possible, and we thank you. In the coming year we will continue to earn your support; and to actively solicit your inputs so that our efforts stay on target. It’s important to us. We learned that on the way here. PATCHES AND PROGRESS ... Wherein program bugs are stomped upon Tf (in the DOS) you try to load a program that had been saved under RAM APPLESOFT II, but you are now using the ROM card version, your program will not run correctly. To get around this problem, load your program and then type CALL 54514 and your program will be cor- rect. Similarly, a program that was saved onto diskette from the ROM card version and later load- ed under RAM APPLESOFT II will also cause problems. Simply type CALL 3314 and your program will be correct. You can now save it onto tape. The earliest production DOS had a problem: when in APPLE- SOFT II, any Read or Write state- ments with line numbers of 256 or higher would be ignored. To solve this problem on any disks you create from the DOS, bring up the DOS, remove the Write Protect sticker from your sys- tem’s master diskette, and then type: >PR#n (boot your system) >BLOAD RAWDOS >(hit Reset) * 25D6:4C DS 3F * 25DC:2E * 3FDS5:E8 FO 1 604C DD 25 * 3D0G >BSAVE RAWDOS, A$1B00, L$2500 Any new masters created from this original master diskette will now work properly. Cockpit errors and DOS A high percentage ~ 75 per cent, to be precise — of disk errors found so far are due to users trying to run APPLESOFT II by typing “RUN APPLE- SOFT.” This seems reasonable, but APPLE II doesn’t see it quite that way. As a result (among other things) you cannot reload programs saved on disk. To get things to come out right — all pointers where they should be, etc.—, from Integer BASIC simply type FP (Carriage Return) and you'll bring in APPLE- SOFT II, pointers and all. To get back to Integer BASIC simply type INT. Making life easier in APPLESOFT II If you use APPLESOFT II and enter a statement such as IF X=A THEN PRINT T, APPLE won’t do what you want it to do. That’s because APPLE- SOFT II’s parsing action causes the statement to be read as if you entered IF X = AT HEN PRINT T:a syntax error will appear and you won’t know why. To prevent this, simply en- close the A in parentheses, which stops APPLESOFT II’s parsing of the letter combination. Thus, enter the statement as IF X = (A) THEN PRINT T, and all will be right with the world. Had some printer card problems? Here’s why, and the fix. The original printer-card firmware uses the screen window width as the controlling param- eter to set the margin for BASIC listings and TAB functions. This means that when your printer’s line length is set at 132 columns, for example, the system display is set at 132 characters/line. We didn’t think that this would cause a problem, because printer mar- gins greater than 40 characters and screen displays are not allowed to co-exist. But there’s a catch when any screen clear functions are exe- cuted. The system uses window width to bound the clearing oper- ations, which is a direct com- mand not detectable by the print- er card. But the keyboard input routine executes a “clear to end of line” when it gets a carriage return. Since the window width can be at well beyond the 40 columns, memory from the cur- rent cursor position to well past the normal boundary will be set to “space” ($A0). If the cursor is at the bottom of the screen, this can cause addresses from $800-up to be set to $A0. Sim- ply setting the printer width on the keyboard with IC 132 N (CR), with the cursor at the bot- tom of the screen will cause these locations to be bombed because the window width gets set be- fore the (CR) is executed. Since APPLESOFT starts at $800 and Integer BASIC variables start at $800, bad things will happen for sure, So... to reduce the possibil- ity of problems with APPLE’s Parallel Printer card, do these things: 1—Home the cursor (ESC@, or CALL -936, in BASIC) prior to typing printer control sequences that set contact 78 /the best of the user group newsletters for 1978 @oppie computer inc. the column width past 40 columns. 2—Do not use any screen or line clear operations when using the printer with the column width set past 40 columns. Then be sure to return the line length to 40 columns before turning off the printer card with PR#0. If you’re using the revised printer card with PROM P1-02, add this: 3—To perform the vertical tab in Integer or APPLE- SOFT BASIC on the printer, the command POKE 36, (Tab distance) should be used in place of the TAB or VTAB com- mand. HIRES demo tape type Somehow we managed to ship a number of HIRES GRAPHICS demonstration tapes that ya typographical error on the cas- sette labels. The error is in the brief loading instructions printed on the label: *80@.FFFPR. This should read: *C@@.FFER. Note that the numeral “8” should be the letter ““C”. Programs on the tape will run correctly when you follow the proper loading instruc- tions, From time to time, we turn up a program bug. Although the fixes are incorporated into future versions of the program, often they are simple enough that users can ‘“‘patch” their present pro- grams to get improved perform- ance. Here are patches for a popular program. APPLESOFT CHANGES -- The following patches to APPLE- SOFT will fix problems associat- ed with the FRE, END, and DIM statements; and will allow the language to handle long program lines. The changes are made with a series of POKEs. They can be done from the command mode, or incorporated right into your program, CHANGES ARRAY INDEXING PROBLEM FIX: POKE 6331,32:POKE6332,15@:POKE 6333,41:POKE6334,234 POKE 19646 ,133:POKE19647,177:POKE 10648,162:POKE10649,5:POKE 10659),165:POKE10651,132:POKE 10652,96 LONG LINE FIX: POKE 3050,234 POKE 3954, 136 POKE 3055, 145 POKE 3056, 158 POKE 3057, 208 POKE 3952, 251 ‘END’ STATEMENT FIX: POKE 2048,210 FRE() FUNCTION FIX: POKE 6143,5 APPLESOFT MANUAL CORRECTION~—A small type- setting disaster left us with an in- comprehensible example on page 22 of the APPLESOFT Manual. The example should read as shown here. 100 DIM As(15) 110 FOR I = 1 TO 15 NEXT I 120 LET F = O71 130 IF AS(I) < 180 140 LET T& = As(I + 1) 150 LET A®(L + 1) = AB(ID 160 LET AS(I) = TS 4170 LET F = 1 180 LETI= 1414 130 190 IF F = 1 THEN 120 200 FOR I = 1 TO 15: PRINT AS(1) NEXT I 220 DATA APPLE, DOG, CAT, RANDOM, CO MPUTER, BASIC 290 DATA MONDAY, "si#ANSWER HE", " Foo 240 DATA COMPUTER, FOO, ELP, MILWAU KEE, SEATTLE, ALBUQUERQUE READ A(T) 1 AS(I + 1) THEN wu IF 1 < 15 GOTO BITS AND PIECES .. things about Apple, handy to know Document, document, docu- ment. It would be difficult for you to give us too much informa- tion about a program that you send up — we need to know as much (and sometimes more) about your program contribution as you can tell us. And never as- sume that potential users of your program are as clever as you; in- stead, assume that they know nothing — not even when to hit RETURN! Remember: The care you take in explaining your pro- gram is the only guarantee that it will be usable by anyone else. SAVE, then SAVE again. SAVE your program twice, one recording after the other, on the same cassette. By doing this you give yourself, and us, a safety factor in that if our computer cannot read the first SAVE, per- haps it will be able to read the second. (As you know, not all recorders are created equal.) By the way, please add your name and address to the pro- gram listing with REM state- ments before you save it, so that there will be no question as to whose program we’re running when we try it out. LOAD, check, then give yourself credit. After you SAVE your program, turn OFF the Apple to clear the memory space you’ve been using, then power it up and LOAD the program to be sure that it does in fact load and run. contace 78 /the best of the user group newsletters for 1978 @opric computer inc. Finally, protect. After saving your program, make sure that it cannot be erased. Every cassette includes a write/protect feature in the form of two small plastic tabs on the edge of the cassette opposite its business end. When these tabs are pushed in, pulled out, or otherwise gotten out of the way, the cassette can no longer be written into. Clearing the air. We make no profit from your contributions to the user portion of the APPLE software bank. We set up this portion of the bank simply to en- courage and to ease the exchange of programs among APPLE users. The honorarium that we pay for contributions to this portion of the bank is merely our way of encouraging such contributions. From time to time, of course, APPLE does purchase software, and does so at the fair market value. Such purchases are nego- tiated individually, based upon market conditions, applicability of the product, etc. The good earth APPLE I must be grounded —either via its three-wire power cord inserted into a properly grounded three-wire outlet, or by awire inserted between APPLE’s metal base plate and one of the plate’s mounting screws. In the latter case, you must run the ground wire to a (preferably very close) ground — a long, long metal rod driven into the earth, and connected to APPLE viaa heavy wire, or a wire connection to the cold-water system (but make sure you have metal pip- ing). Grounding eliminates any possibility of the existence of a floating potential, which can be detrimental to you, to APPLE, and to proper tape cassette operation. Get your head straight Cassette tape recorders — whether expensive or inexpen- sive -- often suffer a misalign- ment of their playback head dur- ing shipping and other handling. Such misalignment causes azi- muth error, which is death to the high-frequency response (particularly on units without a tone control) so necessary to accurately transfer data. But any audio shop technician can re- adjust the azimuth alignment; a skilled ear alone is often suffi- cient to do the job. Your original APPLE prerecorded tapes are excellent alignment references, because they are recorded with professional equipment main- tained to the highest profes- sional standards. The colon as a listing formatter for Applesoft The basic description of the colon’s action is that it can be used to separate BASIC state- ments. But with the colon you can structure your listing in any way you desire, whether you need vertical spacing or horizon- tal spacing—or both, as in tabu- lating data into blocks of rows and columns. To do it, enter the line num- ber, then the colon. If there is no information following the colon on the line, then the display will step vertically. If information does follow the colon, then that information will be spaced to the right of the colon, allowing the interior code of FOR... NEXT loops, etc., to be neatly indented. You can see how the colon is used for this purpose in this is- sue’s How To section. Note the neat appearance of the listing. Apple and Education Apple Computer, Inc., an- nounces the appointment of Roger Cutler as Education Spe- cialist for the company. Roger is organizing an educators’ user group. If you would like to be on his mailing list, please write him at Apple. Our plans include an educational software bank and advice on writing computer as- sisted instruction programs. Watch CONTACT for further information about educational applications of the Apple II. CALLING ALL INTERFACE CARD DESIGNERS Now that several other com- panies have begun to market interfaces for the APPLE II, a word on our design philosophy is in order. We are very interested in any devices that plug into APPLE II, and are generally happy to pro- vide information to prospective manufacturers. (Just write and ask for our Prototyping Board Write-up.) Our own philosophy is to build devices that are intelli- gent (have all control routines in on-board ROM) and are slot in- dependent. However, we must sometimes compromise because of design considerations in the system. Therefore, we have made the following restrictions on slot assignments: SLOT # ASSIGNMENT 0 APPLESOFT BASIC ROM Card 5 Second Disk Control- ler Card 6 First Disk Controller Card In addition, slots 4 and 5 are tentatively reserved for products that may have to be slot-depend- ent. Therefore, other manufac- turers should design peripherals which are either completely in- dependent of slot number, or will work in slots 1-3. In this way they will avoid possible conflicts with existing or proposed Apple Computer products. contact 78 /the best of the user group newsletters for 1978 apple computer inc. OUT OF THE MIST... ... clearing up things thought already clear Occasionally we document some wonderful feature in such a way that nobody understands it. As we identify those areas (recognizable by the stack of associated phone messages), this column will attempt to clarify them. 24K SYSTEM PROGRAM LOADING Normally, entering BASIC with the BC command resets the pointers to high and low memory (HIMEM & LOMEM), so that the monitor knows where to begin loading programs. How- ever, 24K systems need a little human help to set the HIMEM pointer. Therefore, before load- ing or keying in programs, enter BASIC in the command mode HIMEM: 24576 When this step is omitted, the system believes it has a 32K memory to work in. Since BASIC programs are loaded starting from the top of memory, they tend to fall into the bit bucket and dis- appear forever... .. PROGRAM LISTING WITH THE TTY PRINTER ROUTINE The hardware/software TTY interface described on page 114 of the APPLE IT REFERENCE MANUAL provides an inexpen- sive method of printing on a TTY (output only). The example on page 116 shows how com- mands can be incorporated into a BASIC program to produce hard copy output. Unfortunately, we left out an example of how to LIST a pro- gram on the TTY. Here’s how. Just enter the command mode of BASIC and type: CALL 880 LIST PR#0 That sequence will enable the TTY, list the program, and then return output to the TV screen. USING THE HI-RES ROUTINES A section of the new REFER- ENCE MANUAL describes the HI-RES plotting routines and mentions that they are available in ROM and on tape. Although the ROM’s aren’t available yet, many people don’t know that they have the routines on tape already. These programs are the machine language load at the start of the HI-RES DEMO tape. If you load the machine language part and then skip loading the BASIC demo program, you will have the routines in memory to work with. While use of most of the pro- grams is straightforward, the SHAPE routine gives some peo- ple problems because they don’t see how to build and use a shape table. Here’s an explanation. The SHAPE routine repro- duces a figure from a set of in- structions (the shape table) stored somewhere in memory. But it has to know where to find that table. It has been written to as- sume that the shape table begins at an address which is pointed to by memory locations 804 and 805. What you insert in those locations depends upon where you built your shape table. Let’s use the table example given in the REFERENCE MAN- UAL (page 53) to illustrate how to build an use the table. Here are the steps to follow: 1. Load the HI-RES routines into memory (COO.FFFR). 2. Build the shape table in mem- ory, using the monitor. Let’s arbitrarily start at address 900 hex, and fill in the data se- quentially, just as shown in the manual: *900:12 3F 20 64 2D 15 36 1E 07 00 This will put the table above BASIC’s variable space and below the bottom of a BASIC program. 3. Insert the shape table starting address into memory loca- tions 804 and 805, as shown in line 10 of the sample pro- gram that follows (For more details, see the explanation in the HOW TO section under LOADING MACHINE LAN- GUAGE PROGRAMGS....). Then insert information on color, scale, rotation, etc., into the other memory loca- tions specified in the REFER- ENCE MANUAL. The following table presents decimal-number equivalents and APPLE keyboard equivalents to ASCII (American Standard Code for Information Interchange) characters. That is, if you were to scan the keyboard directly in BASIC, these are the characters that you would read; or, if you were to go into memory, these characters would appear as string-variable values. In the APPLE keyboard column, read SMC as a SHIFT/ CONTROL-M BC as CONTROL -B, etc. The decimal numbers listed are those before clearing of the keyboard strobe; after clear- ing of the strobe, the number is the listed value minus 128 (e.g., after clearing of the strobe, 145 becomes 17). If an APPLE key- board equivalent doesn’t exist, or if there is no decimal equivalent, then the table shows a double dash (--); if the keyboard equiv- alent is identical to the ASCII character itself, then the table shows “‘sa.””. Such information can make your programming life much easier, because it lets you get keyboard data directly into a contact 78 /the best of the user group newsletters for 1978 Gopple computer inc. BASIC program without the use off the keyboard then you — the issue’s HOW TO section. In this of an INPUT statement. ‘As you programmer — are in command Multiple Precision Arithmetic know, INPUT statements can be every step of the way; you make listing, statements 2500 2610 in- limiting as, for example, when the decisions as to what goes and put data directly from the key- you type in a line and the screen what does not, and in a way that board; they tell you exactly yells SYNTAX ERROR at you. tells you exactly what's wrong as what’s happening, the nature of Well, what is the error? It may you go wrong. any error you may have com- take a long time to find. You can see one way in mitted, etc. — and all by making If, on the other hand, the which this idea is applied in ‘“‘Be- use of the equivalence in the keystrokes are picked directly ing Precise in INTEGER,” in this table presented here. TABLE OF ASCII CHARACTER VALUES FOR INTEGER BASIC (FOR APPLESOFT VALUES, SEE APPLESOFT MANUAL, APPENDIX K) ASCH APPLE DEC ASCII APPLE DEC ASCIL APPLE DEC ASCH APPLE DEC CHAR KYBD EQUIV CHAR KYBD EQUIV CHAR KYBD EQUIV CHAR KYBD EQUIV NUL SPC 128 sp BPR 160 @ sa 192 ~ 224 SOH ac 129 ! sa. 161 A 193 a 225 STX BC 130 a 162 B 194 b 226 Erx cf 131 # 163 c 195 c 227 EoT Do 132 $ 164 D 196 d 228 ENQ EC 133 % 165 E 197 e 229 ACK FO 134 & 166 F 198 f 230 BEL Go 135 : 167 G 199 g 231 BS - 136 ( 168 H 200 h 232 Htc 137 ) 169 I 201 i 233 LF IC 138 * 170 J 202 j 234 VT Kc 139 + 171 K 203 k 235 FF LG 140 ’ 172 L 204 1 236 cr Mo 141 = 173 M 205 m 237 so NC 142 . 174 N 206 n 238 sl of 143 / 175 co) 207 ° 239 DLE pc 144 0 176 Pp 208 Pp 240 DCI Qe 145 1 177 Q 209 q 241 pez Ro 146 2 178 R 210 r 242 DC3 sc 147 3 179 Ss 211 s 243 pea TS 148 4 180 T 212 t 244 NAK US 149 5 181 U 213 u 245 syn vo 150 6 182 Vv 214 v 246 ETB. wl 151 7 183 Ww 215 w 247 CAN Xf 152 8 184 x 216 x 248 EM YC 153 9 185 Y 217 y 249 sup 2° 154 : 186 Zz v 218 z 250 ESC sa. 155 H 187 [ = 19 251 FS = 156 < 188 \ a 220 252 cs Smo 157 = 189 ] SM 221 ALT = 253 RS SNC 58 > 190 t - 222 ne 254 US 159 2 Vv 191 - 223 RUBOUT 255 LF = Line Feed; CR = Carriage Return; SP = SPace; ESC = ESCape; sa. = Keyboard character same as ASCII character. a contact'78 /the best of the user group newsletters for 1978 @apple computer inc. HOU TO ... things your manual never told you LISTINGS—A LITTLE AT A TIME There is a way to stop APPLE II’s LIST operation. You must go into the MONITOR and enter the following bytes of hex: 3DA:A9 E3 85 36 A9 03 85 37 60 RETURN :48 AD 01 CO 10 08 AD 11 CO AD RETURN :01 CO 10 FB AD 11 CO 68 4C FO RETURN :FD 4C DA 03 RETURN After loading the hex code, press CONTROL Y to activate this StopList routine. Now we try listing memory by entering 0.FFF RETURN. Let some lines go by, then press any key. If you’ve done every- thing correctly, the scrolling will halt. Now press any other key and the lines will again scroll. This routine will still work when you go back into BASIC. But if for any reason you press RESET, you must reactivate the routine by going back into the MONI- TOR and pressing CONTROL Y. How does it work? Well, to print a character on the screen, APPLE II uses a routine located in MONITOR. APPLE goes to the routine by finding its address in locations 54 and 55 (36 and 37 in hex). But entering a CON- TROL Y replaces this address with the address of the Stop List routine. You catch APPLE be- cause it always checks for a Stop List command before printing any character. Software engineers call such a feature a hook, and use it to make pro- gramming just a bit more handy. Tony Hughes THE APPLE CORE San Francisco, Calif. AN APPLESOFT CONVERT PROGRAM Programs written in APPLE- SOFT BASIC and saved on tape cannot be LOADed and RUN with APPLESOFT IL. But there is a way to use them without retyping—by means of our CON- VERT program, which we list below. The CONVERT program runs in Integer BASIC, accepts a tape in APPLESOFT BASIC, and produces a new tape in APPLESOFT II BASIC. To use CONVERT, LOAD the CON- VERT tape. It will ask you if the old program (written in APPLESOFT BASIC) used OP- TION 1 or OPTION 2. ~ OPTION 1 was GRAPHICS COM- MANDS WITHOUT LET OR REM STATE- MENTS — OPTION 2 was LET OR STATEMENTS, BUT NO GRAPHICS After you answer you will be prompted to play the old pro- gram tape. After CONVERT has finished reading and processing the old tape, it will ask you to record a second tape. This second tape will be your original program converted into APPLE- SOFT IL. If any errors are dis- covered during the conversion process, you will be given self- explanatory messages. CONVERT Text 2 PRINT CONVERTS OLD, APPLESOFT PROGRAMS TO” convent 1978 APPLE COMPUTER, INC 4 PRINT © "PUKE 94,10 5 PRINT “WAS PROGRAM WRITTEN IN OPTION 1 OR" PRINT "OPTION 1. GRAPHICS COMM ‘NDS. WITHOUT" & PRINT * LET OR REM STATEMENTS" OPTION 2 LET AND REM STATEMENTS BUT NO ORAPHICS 7 INPUT "OPTION 4,0: IF O<>1 AND O<>2 THEN 7 10 ca 12 POKE 69, 7: F=1996. B=d076 -936: PRINT “PUT APPLESOFT PROGRAM TAPE IN RECORDER. CALL -938 TABS. PRINT "APPLESOFT CONVERSION PROGRAM: " PRINT “APPLESOFT 3¢ FORMAT“ PRINT "OPTION 2? PRINT * POKE 80,2: POKE 61,2: POKE 62 20 INPUT "PRESS THE PLAY BUTTON, THEN HIT RETURN". AS: CALL -259 29 IF PEEK (1)<128 THEN 30: PRINT ” TAPE READ ERROR!" TAPEPLAYER, THEN RE-RUN THIS PROGRAM” PRINT “TRY RE-ADJUSTING VOLUME CONTROLS ON 90 POKE 60,2: POKE 61, 16°E= PEEX (Z)+ PEEK (1)*256-6657' POKE 62,€ MOD 256: POKE 63, 6/256 CALL 259 95 CALL -936 PRINT * ‘CONVERTING 40 IF B>“E THEN 1000. A= PEEK (8)+F MOD 256 POKE B.A MOD 256: POKE B41, PEEK (B41 )4F/2564(A> 255) 30 FOR B=B+a TO 84999, T= PEEK (B) 39 IF T>142 THEN 60: T=137: GoTo 250 40 C=C+i: Ue PEEK (C) PRINT "BAD STATEMENT IN PROGRAMY =1 THEN G8: POKE D. 197 THEN NEXT B Be6+1 IF BCE THEN 40 1001 POKE €-2. 2 POKE E-1, 7° POKE EZ 1005 D=E-4096' POKE 2,0 MOD 256, POKE 1, 0/256 POKE 40,2. POKE 61,16, POKE &2,E MOD 256 PRINT "0. K PRINT “THE TAPE JUST RECORDED CAN NOW BE LOADED INTO APPLESOFT JC." IF TE199 THEN 290; IF Té>195 AND T<>142 OR O=2 THEN 200 IF UsG2 THEN 60 IF U=67 OR U=71 OR U=72 OR U=80 OR U=B6 THEN GOTO U: oto 250 19 THEN 250: TeT+1+ (T9194) #944 (13199)4(T>160)4(TD177) 02 T: IF B/500#500=0 THEN PRINT “STILL CONVERTING!" POKE 2.2 CALL -307 POKE 63,£/256° CALL -307 END 12 contact 78 /the best of the user group newsletters for 1978 @apple computer inc. STRING + STRING = CONCATENATION A string is a series of charac- ters, zero to 255 characters in length. To symbolize that it is a string being operated upon, a string-variable name ends with the $ symbol. APPLE can operate on string variables, in whole or in part, just as it operates on numeric variables. And this ability to manipulate strings—to reformat them, etc.— is a powerful tool. Concatenation is an impor- tant facet of string manipula- tions. To concatenate strings means to append one to another, to “series connect” hitherto independent character sets in order to operate upon them as a single entity. The concatenation function does exist in APPLE- SOFT and APPLESOFT II BASICs but, unfortunately, not in Integer BASIC. There is, however, a simple routine that will let you concate- nate strings with Integer BASIC. It’s listed below, and operates by defining each string, finding the length of the first, and telling APPLE to tack the start of the second string to the end of the first string, and so on down the line. The example shown here is for two strings only; the maxi- mum length of any concatenated string is, of course, limited to 255 characters. HOW TO GIVE A NUMBER SOME CHARACTER Both APPLESOFT and APPLESOFT II contain the func- tions ASC and CHRS. These are opposites—complementary func- tions, if you will—-in that ASC returns the decimal ASCH num- ber equivalent of its designated string-variable argument, while CHRS$ returns a single character equivalent of its designated deci- mal-ASCII number argument. Examples: Say, M$="M” is some string variable of interest to us in APPLESOFT. When you tell APPLE to PRINT ASC (M$), APPLE responds with a “77” on its screen. (Remember, first character only; decimal 77 in ASCII corresponds to the letter ‘“‘M’’.) On the other hand, tell APPLE to PRINT CHRS (77), and you get the letter ‘““M”’, A rather simpleminded example of the use of this pair of functions could be to associate them with the RaNDom function in a program to generate random alphanumeric sequences, except that you cannot do it in Integer BASIC because, alas, Integer con- tains only the ASC function. But don’t despair, for all is not lost. Below we give you a very short routine that gives Integer BASIC the equivalent of a CHR$ func- tion. /nsert it in your programs wherever you wish to and— presto!—you can convert decimal numbers to their ASCII character equivalents, HOW TO SET LOMEM WITH- OUT HARDLY TRYING LOMEM is the start of the Integer BASIC variables store- house; HIMEM marks the top of the program store, Between the two is your working space. En- tering BASIC with BC will set LOMEM to 2048, the normal default value. But there are times (when using the Heuristics Speechlab™ for instance) when LOMEM must be set to a dif- ferent value. The pro will incor- porate such an operation right into his programs, rather than leaving it to chance. Well, then, is there an easy way to reset LOMEM inside a program? The answer is yes, and we guarantee that your life will be simpler as a result. The example below will set a new LOMEM within an existing BASIC program. Of course, doing so will destroy existing variables, so do it before any are defined in the program. You can, in fact, insert this little routine at the start of your program so that it conveniently does the whole job for you. 1. Pick new LOMEM, | 2. a=l MOD 256: b=1/256 3. POKE 204,a: POKE 205,b— resets variable pointer 4, POKE 74,a: POKE 75,b— resets LOMEM pointer EXAMPLE 1, New LOMEM: 1-3000 2. a=184, b=11 3. POKE 204, 184: POKE 205, 11 4. POKE 74, 184: POKE 75, 11 Part of a personal computer’s charm lies in the fact that it is a creative tool. Each person uses it 13 contact 78 /the best of the user group newsletters for 1978 @oppie computer inc. differently, to accomplish dif- ferent goals, Unfortunately, this makes it difficult to write a manual that adequately covers everything a person might want to do with his system. The HOW TO section is therefore devoted to answering questions the manu- als missed. LOADING MACHINE LANGUAGE AS PART OF A BASIC PROGRAM Often we want to include machine language data inside a BASIC program. A great many Apple tapes are made up this way to simplify the loading pro- cess. Here’s a recipe for doing it yourself with programs written in Apple BASIC. Apple BASIC loads programs into memory with the highest program line at the highest RAM location (HIMEM). Preceeding lines are located lower and lower in RAM. The beginning of the program is PP, an address which is held in memory locations CA and CB (hexadecimal), or 202 and 203, decimal. When you type SAVE, the computer trans- fers to tape everything between PP and HIMEM. Thus, to tuck machine language into your pro- gram so that it can later be loaded like BASIC, it is merely necessary to move the PP pointer down below the beginning of the extra code, put in two POKES to reset the pointer before run- ning the program, and type SAVE. Later, you will be able to LOAD the whole thing just as if it were all BASIC. Just follow these steps: 1. Get the BASIC program into memory, just the way you want it. If you make any changes, you must re-do steps 2 and 6, 2. In the command mode, type: PRINT PEEK(202), PEEK (203) and write down the results. Let’s call them m and n, re- spectively. 3. Load your machine language code into memory using the monitor load capability (xxxx.yyyyR). This will put the machine language program into memory below the begin- ning of the BASIC program, starting at hexidecimal address xxxx, 4. Take the starting address of the machine language pro- gram and divide it into two parts: xx xx. Convert each pair of digits from hex to decimal values: a & b; cor- responding to the left and right xx pairs, respectively. Write them down. 5. Now enter the BASIC com- mand mode and type: POKE 202, b-1 (value b from step 4, above) POKE 203, a (value a from step 4, above) POKE 204, 00 POKE 205, 8 6. You have now moved the pointers down below your machine language program, and must insert code to move them back again when the program is run. To do that, type: 0 POKE 202,m: POKE 203, n:GOTO q where m and n are the values from Step 2, and q is the first line number in your BASIC program. That line number can be 0—it will not be erased by the above entry. 7. Now you're done! Don’t try to list your program before running it, because all you’ll see is a meaningless set of numbers and symbols. Just type SAVE (before running the program), and it will all go onto tape. Latera LOAD command will bring it all back in. CAUTION! Once you have RUN such a program, you cannot SAVE it, for the pointers will have been moved. You can only save or copy a program like this before it has been RUN. ... A Moving Experience On occasion it is handy to know how to move large blocks of data from one area of memory to another. While this is simple to do from the monitor (using the M command), it is a little more complex in BASIC. Below are some handles on the monitor routines that will let you use them within your BASIC programs. When would you use them? Well, they come in handy for copying images from page | (normal) to page 2 in standard- resolution graphics. With two slightly-different images on the two pages, it is possible to do simple animations by switching rapidly back and forth between pages. (NOTE: Be sure to set LOMEM to 3072 or higher before using page two of. graphics, or your variable table will be destroyed.) Here’s how. POKE 60, (old starting address mod 256) POKE 61, (old starting address / 256) POKE 62, (old ending address mod 256) POKE 63, (old ending address / 256) POKE 66, (new starting address mod 256) POKE 67, (new starting address / 256) CALL -468 (the actual move command) Now, to use Page 2 (remem- ber to set LOMEM to 3072 or higher): 10 POKE 60,0:POKE 61,4: POKE 62,255:POKE 63,7: POKE 66,0:POKE 67.8: CALL ~468: POKE —16299,0 To switch back and forth between Pages | and 2: POKE —16299,0 (displays Page 2) POKE -16300,0 (displays Page 1) 14 contact 78 /the best of the user group newsletters for 1978 Gorpie computer inc. If both pages contain similar graphics figures, then switching between the pages will yield simple animation; further effects may be gleaned from an inspec- tion of the list of POKEs on page 30 of the APPLE IT Reference Manual. (NOTE: Don’t try this with APPLESOFT in RAM. It starts at hex 800—the second page of graphic space. A block move into that area will send your APPLESOFT BASIC into the bit bucket!) PRINTING LOWER-CASE LETTERS WITH APPLE IL APPLE II cannot presently display lower-case characters on the screen, but it has no trouble printing them on most printers. To create a string of lower-case characters, simply generate the string in upper case at a known memory location; and then go through and add 32 to the ASCII value of each upper-case letter, 10 DIM 4%(80) Rant IN As 50 IF C<193 THEN 70: REM A NON-ALPHA CHARACTER. IF FOUND, That will produce the lower-case ASCII equivalent. If you then shove the modified code back into the string variable in place of the old value and print the string, you will print lower case characters. As you convert the string, you must test each character to see that it is not a numeral punctuation, etc. Obviously, only alphabetic characters can be converted to lower-case. Here’s a sample program that does the job. This program works because, by defining AS first, we know its absolute address in memory. Its first letter is stored in address 2053. (If this program were to be converted to APPLESOFT, we would have to manipulate our characters entirely through the string routines, since we cannot accurately locate the string in memoty.) REM BUFFER... MUST B E FIRST VARIABLE DEFINED IN PROG 20 INPUT "ENTER DATA: ", AS 30 FOR I=1 TO LEN(AS) 40 C= PEEK (2052+1) IIT VALUE OF THE "ITH" CHARACTER REM SET C=AsC TEST FOR DO NOTHING 60 POKE 2052+1,C+32: REM CONVERT L ETTER TO LOWER CASE AND INSERT B ACK INTO As 70 NEXT 1 80 CALL -996: REM CLEAR SCREEN 90 PRitt: REM TURN PRINTER ON (REME MBER, "PRINT D%; "PRPL" FOR DISK SYSTEMS 100 PRINT "BON": REM SET PRINTER FO R GO CHARACTERS 110 PRINT AS 120 PRINT "40N": REM RESET PRINTER TO 40 CHARACTERS 130 PR#O: REM SEE LINE 90 FOR DISK SYSTEMS 140 END contact 78 /the best of the user group newsletters for 1978 @oppie computer inc. THE NAME OF THE GAME IS THE SAVING OF THE NAME If you’re an APPLESOFT II user working with, say, an inven- tory list with names, then you’re in a bit of trouble if you want to SAVE the complete list to cassette tape, names and all: APPLESOFT II will save the numbers but not the names (strings). (Of course, the nicest way to SAVE such a list is to disk.) If you need to save strings to tape however, the following program will do the job very nicely. Note that statement 10 creates space for the strings; 1010 gives you information about free memory space and how far up the variables are; 1050 writes out the length of the tape’s string area; and 1070 writes all the desired information to tape. Strings can also be created by establishing string pointers that point to the string definitions within the program itself rather than copying the string defini- tion to high memory and point- ing to it there. Strings created in this way are not saved by this technique and if the saved strings and pointers are used by a dif- ferent program, these pointers will point to meaningless por- tions of the new program. This problem can be overcome by forcing the interpreter to copy the string item definitions to PRHO 4 “BYNTAX ERROR W1ST 2 REM 2 REM PROGRAM TO SAVE STRINGS 3 REM TO CASSETTE TAPE. 4 REM BY R.WIGGINTON (6/78) 5 REM 10 DIM A$(10) 20 PRINT "TYPE IN NINE STRINGS, SEPARATED BY" NEXT K 39 FOR K = 1 TO 9: INPUT A$(K) 40 REM NOW SAVE A$ TO TAPE. 50 GOSUB 1000 55 PRINT "STRINGS ARE NOW ON TAPE. AND START TAPE, AND PRESS ‘RTN‘ PRINT "CARRIAGE RETURNS. " TO RECALL, TYPE ‘GOTO 100’, REWIND 57 PRINT "LET TAPE RUN UNTIL CURSOR RETURNS. " 60 END 100 REM THIS PART RECALLS THE 101 REM STRINGS FROM TAPE. 102 REM 110 DIM B&(10) 120 GOSUB 2000 130 FOR K = 1 TO 9: PRINT BS(K): NEXT K 140 END 1000 REM STORE A$ TO TAPE. 1003 PRINT "INSERT CLEAN TAPE, START RECORDING. " 1005 PRINT "HIT ANY KEY WHEN READY" STORE A$: REM STORE A% REALLY STORES POINTERS 1010 X = FRE (0) GET 7$ 1020 REM IN ORDER FOR THIS PROGRAM TO WORK, HIMEM MUST BE AT THE SAME 1021 REM VALUE WHEN THE STRINGS ARE RECALLED AS WHEN THEY ARE STORED. 1030 X = PEEK (115) + 1040 GOSUB 2100 1050 POKE 30, x - PEEK (116) # 256 ~ INT (X / 256) # 256 PEEK (111) - PEEK (112) # 256 POKE 91,X / 256: CALL ~ 307: REM PUT (X) INTO LOCS 30%31, AND WROTE IT TO TAPE. 1050 REM (X) IS THE LENGTH OF THE STRING AREA. 1070 POKE 60, PEEK (111) 63, PEEK (116): CALL - 907 1020 REM HAVE NOW WRITTEN EVERYTHING 1090 PRINT "0. K." 2090 RECALL BS: REM 2010 GOSUB 2100: CALL 2020 X = PEEK (30) + 2030 X = PEEK (115) + 2040 POKE 60, xX — 2050 POKE 42, PEEK (115) 2060 RETURN RETURN 2100 POKE 60,30: POKE 61,0: POKE 62,31: ETTE ROUTINE POINTERS. a POKE 61, PEEK (112) POKE 43, POKE 42, PEEK (115): POKE GOT POINTERS BACK. - 259: REM GOT LENGTH OF STRING AREA PEEK (31) # 256: REM XISLENGTH OF AREA TO READ IN PEEK (116) # 256 - X INT (X / 256) ® 256: POKE 61,X / 256 PEEK (114): CALL - 259 POKE 63,0: RETURN : REM SET CASS high memory. One way is to use concatenation: 20 AS$(1) = AS(I) +” These two fixes should clear up all the problems in the pro- gram. Lining things up, point by point Since most BASICs justify (i.e., line up) the left-most column, a display of multi-digit, decimal-pointed numbers can be awkward to read and somewhat unattractive. A solution to this problem would be to use a tabulation routine that “justifies (or lines up) on the decimal point.”’ Such a routine would position the numbers in a column so that the decimal points are vertically aligned. The short program listed below does exactly that. Statements 10 through SO are merely a demonstration rou- tine that yields the sample run shown at the end of the listing. Statements 2000 through 2140 contain the routine that actually does the work. In effect, the routine aligns the numbers by right-justifying to the digit left of the decimal point, then tacks on the decimal point and the remaining digits to the right of the decimal point. List 40 F=-10; B=9: D=9 4S ASF 20 GOSUB 2000: PRINT "iD 30 IF A>3000 THEN 1000 40 F=10#F: D=D+A 50 GOTO 15 1000 END 2000 REM RIGHT-JUSTIFICATION ROUTINE FOR APPLE BASIC 2010 REM — INPUT IS ASSUMED TO BE IN VARIABLE "A" 2020 REM THE RIGHTMOST CHARACTER WILL APPEAR IN COLUMN CONTAINED IN VARIABLE "BY 2100 AS=" ": TF ACO THEN AS="—": REM GET SIGN OF NUMBER 2110 A= ABS (A): REM CONVERT A TO Pos, # 2120 C=(A>10)+(A>100)+(A>1000)+(A>10000) REM DETERMINE HOW FAR TO LEFT-SHIFT PRINTOUT 2130 TAB (B=C~1): PRINT AS: As REM RIGHT-JUSTIFY PRINTOUT 2140 RETURN RUN =10.9 -100. 19 =1000. 119 -10000..1119 Being precise in INTEGER The use of INTEGER BASIC limits you to the range of num- 16 contaci 78 /the best of the user group newsletters for 1978 Gapple computer inc. bers between —32767 and +32767. Such a limitation is, at its best, frustrating, and, at its worst, infuriating. Consider, for example, the businessman who daily deals with foreign curren- cies, for which the basic mone- tary unit may be very, very small. What’s a fella’ to do? Well, what he has to do is to go to multiple-precision arith- metic by means of a routine such as we present here. While this example is for addition only, it is readily adaptable to subtrac- tion, multiplication, and division by changes in statements 3000 through 3080. The program does its job on large numbers in the same way as we do it by long- hand arithmetic; that is, it operates on one digit at a time, then carries to the next, and so on. This particular listing is long and slow, because we wanted to make it clear and easy to read so that you could see what’s hap- pening. You may modify it to run much faster. Incidentally, you can get a better understanding of the pro- gram’s operation by relating certain of its statements to the ASCII conversion table that is in this issue’s OUT OF THE MIST section. Statements 2500 through 2520, for example, result in the keyboard being read directly. 2540 refers to CHAR = oa SyNTaK ERR 20 REM AN INTEGER 30 REN THAT PROVIDES 20- brett 0 DiDPTRY|CHAR-176 REM 5559 PRINT DioPTR). DPTREOPT en LeAt 3070 WERT | 3020 RETURN 000 Ren UTPUT ROUTINE 008 REN So _ S010 PRINT PRINT PRINT ps0 tet 8520 IF 0(11¢20 THEN 4070. T= 4070 PRINT) TAB 18 FOR J=I age0 121 S100 PRINT TAB TY 3410 TAD Ise FOR S013 PRINT pr 3120 PRINT PRINT « 9976549210 1) REN MULTIPLE PRECISION ARITHNETIC 3 0 }0 GOSUS 2500 REM GET ENPUT INTO MATRIX E 10 FOR tal TO 30 ACL*EC1) NEXT 1 REM MOVE NUMBER INTO A 5 IF (CHARCI76 OR CHAR>1@9) THEN 2520 REM AGQWERT ASCI1'TO MuHDER AND SAVE sa7asaaaio 100 30 Gosum GeTA MEN GET FIRST NUMBER INTO MATALY A NOT A NUNDER, SO 1oNORE IT SSko Ge permcat THEN 2570" PRINT “INPUT TOO LONG--START OVER" POP POP SOCDPAR-1) Ie1st 00TO 2598 REM Exb, RIGHT-WSTIFIED INPUT ROUTINES 3520 CCIYSTERP CARYINECARVOUT. REM. FINIGHED ADJUSTING CARRY F LGURES 4030 IF a11)<90 THEN S040 Ia141 oOTO 4090, REM LONONE LEADING ZEROS 4040 Tan 1+9 FOR J=1 TO.30. PRINT ACJ), 2070 4060; HEH 10NORE LEADING ZEROS 10.30 PRINT BC) NEXT ¥ 2590 IF C(1)¢20 THEN 4100 te1+1 GOTO 4090. REN TONORE LEADING ZEROS 7 “FoR Jat TO 31. PRINT v=") NEXT Jo PRINT 10 30. PRINT ctu): NEKT J 0 PRINT 141; reference to the table tells you that decimal 141 is actually the Carriage Return. Similarly, 2545 excludes all characters except for the digits 0 through 9 (176 through 185). Again, statement 2550 converts the ASCII characters to the numbers themselves (i.e., if CHAR = 181, then 181 - 176 = 5). The final Disk Operating System manual is in the works, and it’s going to contain a lot of information. But like all good things, it will take some time. Meanwhile, we have produced some examples that show how to handle the most asked-about situations. DATA FORMAT The first thing to understand about the disk is its information format. Data can be written as fixed-length records or random- length records. All data is written in ASCII. Fixed-length records are written when you OPEN the file with an “L” parameter. OPEN DAN, L40 will create a file named DAN, whose records are all 40 bytes long. If you only put 20 bytes of information into each, you will waste 20 bytes per record of disk space. Random-length records are actually one byte each, but are grouped together into blocks (logical records) which can be up to 32K bytes long. Each logical record ends with a carriage return. Note that this means the number “1” will require 2 bytes (number followed by a RETURN), and the number 10 will require 3 bytes. If you forget this and later replace “1”? with “10”, you will destroy part of the following record (poor pro- gramming practice). USING RANDOM-LENGTH RECORDS Example number one illus- trates the writing of random- 7 contact 78 /the best of the user group newsletters for 1978 @opple computer inc. len PR log int pri sta fol cre: rea Th Th: to wh fro do S 10 20 30 100 110 120 130 140 150 5 wth records. We simply open the file, then start printing. Each INT statement creates one ical record, ending with a car- riage return. Thus, to put items © separate records, we must nt them with separate PRINT tements. Each record is just long enough to hold the data you put in it. Now run this program, using strings of less than 20 characters. It produces files called FILE and FILE.PTR, which are used in the lowing examples. Example two reads the files ated by example one. It first dds FILE.PTR, which tells it how long the data file will be. en (in lines 90-100) it reads in that many records from FILE. is is a sequential read, where each INPUT statement brings in the next record. Lines 210-220 are random access reads (this has nothing to with random record length), ere we read a particular record m the middle of the file. To random reads, we specify the REM THIS PROGRAM SHOWS HOW TO WRITE RANDOM-LENGTH RECORDS HOME : DIM A$(20),B$(20), A(20):N = 1 LET DS = "": REM CTRL D PRINT "ENTER ‘END’ TO QUIT” PRINT “ENTER STRING #7) Ni INPUT A®(N): IF AS(N) = "END" THEN 60 PRINT "ENTER ANOTHER STRING"; INPUT BS(N): PRINT "ENTER A NUMBER "5: INPUT ACN) PRINT :N = N+ 1: GOTO 30 PRINT D$"OPEN FILE" PRINT D$"WRITE FILE" FOR X= 1TON~1 PRINT A$(X): PRINT BS(X) PRINT A(X): NEXT PRINT D$"CLOSE FILE" PRINT D$"OPEN FILE. PTR" PRINT D$"WRITE FILE. PTR” PRINT N- 1 PRINT D$"CLOSE FILE. PTR” END REM THIS PROGRAM SHOWS HOW TO READ BACK RANDOM-LENGTH RECORDS LET DS = "": REM CTRL D HOME : DIM C#(20),D$(20), (20) PRINT D$"OPEN FILE. PTR" PRINT D$"READ FILE, PTR" INPUT PTR PRINT D$"CLOSE FILE. PTR" PRINT D$"OPEN FILE” PRINT D$"READ FILE” FOR X = 1 TO PTR 100 INPUT C®(X): INPUT D%(X) INPUT C(X): NEXT 210 PRINT DS"READ FILE, R3" 220 INPUT C$(1),D$(1),C(1) 2390 PRINT D$"CLOSE 235 PRINT : PRINT : PRINT 240 PRINT C#(1),DS(1), C01) 1000 END 5] JRUN RNDREADER OPEN FILE. PTR READ FILE. PTR 23 CLOSE FILE. PTR OPEN FILE READ FILE ?THIS IS ?AN EXAMPLE, ai ?0F RANDOM ?RECORD 72 USACE 23 READ FILE, R3 28 18 ??AN EXAMPLE 21 CLOSE S IS AN EXAMPLE 1 desired record, minus 1, Note however that the computer doesn’t know how long each logical record is. (They’re ran- dom length, remember?) Therefore, it uses the physical record size, which is one byte long. (All records are physically one byte long, unless specified otherwise in an OPEN statement.) This means that if we say “READ FILE, R3,” the next INPUT statement will start reading at the fourth character of the file. Try it and see. USING FIXED-LENGTH RECORDS Fixed-length records are all of the same size and format. They offer the advantage of ease of use, since they always present information the same way. On the other hand, they are inflexi- ble. You must know when you start a file how big the largest record will be. Then, any smaller records will waste disk space (since all records are as long as the longest one). Example three shows the use of fixed-length records in both sequential and random access. Note that when writing into such a file (lines 120-150), we must specify each record number in a WRITE statement. Once the file is 10 REM THIS PROGRAM PROVIDES AN EXAMPLE OF RANDOM RECORD ACCESS 60 REM INITIALIZATION 70 > DIM AS$(40):D$ = CHRS (4) 80: PRINT D$:"NOMON Cc” 90 REM CREATE FILE OF FIXED LENGTH, 30-BYTE RECORDS, EACH CONTAINING SIMILAR 100 REM ASCII STRINGS. 110 : PRINT D%s “OPEN TEST2,L30" 120; FOR I = 0 TO 5 190 :: PRINT D$; "WRITE TEST2,R"5 1 140 :: PRINT “NAME ADDRESS "5 I 150 : NEXT I 160 REM NOW CHANGE ONE RECORD. 170 : PRINT D$i "WRITE TEST2, R3" 180 . PRINT "APPLE DOS VER 3. 1" 200 REM NOW READ THE FILE, LOOKING FOR THE CHANGE. PRINT SOMETHING WHEN IT 210 REM IS FOUND 220: FOR J = 0 TO 5 230 :: PRINT D$i "READ TEST2,R"i J 240 INPUT AS 250 IF LEFTS (A$, 5) = "APPLE" THEN PRINT “THIS RECORD WAS CHANGED" 260 > NEXT J 270 REM NOW CLOSE THE FILE, sO YOU WON'T GET AN ‘OUT OF DATA’ ERROR WHEN THE 280 REM PROGRAM TERMINATES. 290 : PRINT D%; "CLOSE" 300 END RUN NOMON ¢ NAME ADDRESS NAME ADDRESS NAME ADDRESS NAME ADDRESS NAME ADDRESS NAME ADDRESS APPLE DOS VER 3. ?NAME ADDRESS 0 2NAME ADDRESS 1 ?NAME ADDRESS 2 PAPPLE DOS VER 3.1 THIS RECORD WAS CHANGED 7NAME ADDRESS 4 ?NAME ADDRESS 5 araneHo 18 contact 78 /the best of the user group newsletters for 1978 @apple computer inc. written, we can replace a random record with another that con- tains more characters (lines 160- 180), so long as the new data does not exceed our 30-byte record length. After a change is made, we can scan the whole file (lines 200-260) to find the change, read it, and do something about it. EXECUTE FILES The last example concerns itself with EXEC files. Unlike other files that contain pro- grams or data, EXEC files con- tain commands, just exactly as they would by typed on the key- board by a computer operator. Thus, commands in this file are not preceeded by a CTRL/D, since that’s not what you would type on the keyboard. An EXEC file is created by a program made up for the purpose. It simply opens a file, and then PRINTs each command into it, just as you would have typed it. Example 4 shows a typical EXEC-builder program, which creates a file called COM- MANDS. While most operations are straightforward, putting quotes into the file (for string printing, etc.) is tricky. Lines 70-90 show how to do it. After this program has run, you will have an EXEC file on your disk. If you then say EXEC COMMANDS, it will take control of the system, do the specified operations, and return command to the keyboard when finished. 10 REM THIS PROGRAM SHOWS HOW TO BUILD AN EXEC FILE 20 LET D® = CHR (4): REM CTRL D 30 PRINT D%; "QPEN COMMANDS" 40 PRINT D$i "WRITE COMMANDS" 50 PRINT "FP" 40 PRINT "FOR I=0 TG 10: PRINT J NEXT I” 70 PRINT "RUN RNDREADER" 80 LET Z$ = "THIS IS THE END OF THE EXEC FILE," 9O LET Q$ = CHR (34): REM HOW TO INSERT QUOTES 100 PRINT "PRINT"; @$) 24; QS 110 PRINT D® "CLosE” 120 END Example 5 illustrates the use of the APPEND command. This command will open a file without “rewinding” it back to the beginning. Thus it allows you to build onto an existing file. The first item added to a file after it is appended will appear immediately following the last item of old data in the file. Try the following example to see how it works. LIST 100 REM APPEND FILE 110 HOME :D$ = "": REM CTRL D 120 INPUT “ENTER A STRING: "i AS 130 IF A$ = "" THEN 200 140 PRINT D$"APPEND TEST" 150 PRINT D$"WRITE TEST" 160 PRINT A$: PRINT D$"CLOSE* 170 GOTO 120 180 : 190: 200 REM GET IT BACK OUT 210 ONERR GOTO 250 220 PRINT D$"OPEN TEST" 230 PRINT D$"READ TEST" 240 INPUT A$: GOTO 240 250 POKE 214,0: REM RESET FLAG 260 PRINT D$"CLOSE™ 270 : 280 : 300 REM THIS PROGRAM DEMON- 310 REM STRATES THE USE OF 920 REM THE ‘APPEND’ COMMAND 330 : a0 REM IT WILL CONTINUE TO a@s0 REM APPEND THE ‘TEST’ 350 REM FILE UNTIL A NULL 370 REM STRING IS ENTERED. 330 : 370 REM AT THAT POINT IT WILL 400 REM READ THE RECORDS BACK 410 REM FROM THE FILE. 1 19 contact 78 /the best of the user group newsletters for 1978 Goppie computer inc. Z OUTSIDE THE ORCHARD NEW PRODUCTS .». Of interest to Apple users This column is written as a service to Apple customers, and contains information on products that we feel to be of interest to the user community. Apple Computer Company does not in any way recommend these products, or warrant their suita- bility for use with the APPLE II computer. NEW MODULATORS MEAN NO MORE WAVY LINES Some APPLE II users have noticed wavy lines or color patches on their TV screens caused by radiation from air- planes, motors, or the computer itself. A UHF modulators seem to solve these problems neatly. One new device, called the Sup-R-Mod I], is available at $29.95, from M&R ENTERPRISES P.O. Box 1011 Sunnyvale, CA 94088 The new modulator comes completely assembled, ready to plug into the APPLE II. Another modulator unit, this one from ATV Research, is avail- able to transform APPLE II’s video output to a video-modu- lated UHF signal. For B/W or color, the unit—called the Micro- Verter model MVX-500—outputs a signal tunable to one of four channels above television channel 14. It does not require direct connection to your television receiver’s antenna terminals, and it is powered by four AA cells, which the manufacturer claims will last in excess of 1000 hours. Suggested price: $35, from dealers or factory direct. ATV Research, 13th and Broadway, Dakota City, NE 68731; (402) 987-3771. HARDO-COPY GRAPHICS TERMINAL The Panographic-84 is a pre- cision x-y plotter with 100-step resolution in both directions; it is driven by zero-drift, adjust- ment-free stepping motors. Plotter programs can be written in BASIC or machine-language. Interface to APPLE is via our Parallel Printer card. Soon to be available is a chart reader that will allow you to use the plotter as an input device. The assembled plotter, with com- puter-operated pen lifter and molded cover, sells for $1400 (delivery 60 days ARO); as a kit, without lifter and cover ($995 (90-days delivery)); the pen lifter kit is $85; the cover, also $85. Pan Dynamics, Inc., 2950 Nebraska Ave., Santa Monica, CA 90404; (213) 829-2332. TAPE RECORDER CONTROL ROR and Candex Pacific have announced a relay activator to start and stop audio tape recorders via the REMOTE jack. The activator plugs into the GAME 1/0 connector on the Apple H, and is controlled with PEEK and POKE commands. Its connector allows the game controls to plug into it so that both devices can be used simul- taneously. Retail price is $24.95, and quantity discounts are available. Delivery is 30 days ARO. Tech- nical questions should be addressed to Candex Pacific, 693 Veterans Blvd., Redwood City, CA 94063. JOYSTICK UNIT According to its manufac- turer, this new full-range joystick has been designed to plug direct- ly into APPLE’s game I/O con- nector. With each joystick are two switches and two trimpots for adjusting to any APPLE II and any application. Compietely assembled, the single joystick sells for $39.95; a double joy- stick is available at $79.95. Quantity discounts are available, and delivery is 30 days ARO. Microproducts Company, 1128 19th St., Santa Monica, CA 90403, (213) 393-8371. Protect your investment from dust, coffee spills, and idle fingers with a heavy duty beige vinyl cover, custom fitted to your Apple I] Computer. For only $6.95 (includes shipping) you can help to insure a long and useful life for your investment. TO ORDER send check or money order to: Henwood Enterprises, Inc. 1833 E, Crabtree Dr. Arlington Heights, Ill. 60004 OR call TOLL FREE 800-323- 7360 and use your Master Charge, VISA, or American Express credit card. ANALOG INPUT CARD The AI-02 is a single-card, 16-channel, analog data acquisi- tion system for APPLE II. Each channel is individually addressa- ble through software. The analog- to-digital conversion takes 70us (8-bit resolution), after which an interrupt or a comple- tion flag is activated and the converted value can be acquired by APPLE. Contact the manu- facturer for more information on the AI-02, as well as for informa- tion on other of the firm’s prod- ucts for APPLE, such as a video input interface, and inventory and remote data entry software packages. Interactive Structures 20 contact 78 /the best of the user group newsletters for 1978 @opric computer inc. Inc., Suite 204, Science Center, 3401 Market St., Philadelphia, PA 19104. (215) 382-8296. INTERFACE BOARD A newly announced peri- pheral interface board contains two 2716 PROMs, 20-mA and RS232 interfaces, a real-time clock, and a parallel output port. The board also has two 16-pin DIP sockets, which may be used to connect the board to an external source. Contact the manufacturer for pricing information on the complete board. A bare board—without components, but with assembly instructions, diagrams, and pro- grams—is available for $29. Delivery, 3-4 weeks ARO. Peripheral Interface, 173-1128 McKercher Dr., Saskatoon, Sask. Canada S7H 4Y7. THE GANG OUTSIDE THE ORCHARD Here is a list of over SO com- panies or groups that market soft- ware, hardware, or newsletters for APPLE II owners. ARIZONA 1, PROGRAMMERS SOFT- WARE EXCHANGE 2110 North 2nd St. Cabot AR. 72023 CALIFORNIA 2. AJA SOFTWARE P.O. Box 2528 Orange CA. (714) 774-1270 3. APPLE CORE Scott Kamins P.O. Box 4816 San Francisco CA. 94101 4. ASTRO GRAPHICS SOFTWARE 140 Willow Ave. #2 Fairfax CA. 94930 . CANDEX PACIFIC 693 Veterans Blvd. Redwood City CA. 94063 (415) 364-8427 . CHARLES MANN & ASSOCIATES 1926 South Veteran Ave. Los Angeles CA. 90025 (213) 473-0244 . COMPUTER COMPONENTS INC. 6791 Westminster Ave. Westminster CA. 92683 . DAVID GORDON David Gordon 16956 Tupper St. Sepulveda CA. 91343 ED AVELAR Ed Avelar 2850 Jennifer Dr. Castro Valley CA. 94546 (415) 538-1235 (9-5) . G2 PROGRAM LIBRARY - GRT CORP. 1286 North Lawrence Station Rd. Sunnyvale CA. 94086 . GEORGE W. LEE George W. Lee 18803 S. Christina Ave. Cerritos CA. 90701 (213) 865-1639 . HEURISTICS INC. 900 North San Antonio Rd. Los Altos CA. . INNOVATIVE COMPUTER PROGRAMS 14. 15. 16. 20. Ron Graff P.O. Box 622 El Toro CA. 92630 (714) 586-2246 M & R ENTERPRISES P.O. Box 1011 Sunnyvale CA. 94088 MICROPRODUCTS 1024 - 17th St. Hermosa Beach CA, 90254 (213) 374-1673 MOUNTAIN HARDWARE INC, 5523 Scotts Valley Dr. Scotts Valley CA. 95066 (408) 438-4734 . PROGRAMMA CONSULTANTS 3400 Wilshire Blvd. Los Angeles CA. 90010 . QUALITY SOFTWARE 10051 Odessa Ave. Sepulveda CA. 91343 . RAINBOW COMPUTING INC. 10723 White Oak Ave. Granada Hills CA. 91344 (213) 360-2171 SOFTAPE SOFTWARE EXCHANGE 10756 Vanowen St. North Hollywood CA. 91605 (213) 985-5763 21 contact 78 /the best of the user group newsletters for 1978 @oppic computer inc. 21. 22. 26. STRICTLY SOFTWARE 16720 Hawthorne Blvd. Lawndale CA. 90260 (213) 371-7144 WISE OWL WORKSHOP Clifford T. Schafer 1168 Avenida De Las Palmas Livervore CA. 94550 CANADA 23. SPEAKEASY SOFTWARE LTD. P.O. Box 1220 Kemptville - Ontario Canada KOG 130 (613) 258-2451 CONNECTICUT 24, PROGRAM DESIGN INC. Carol Klitzner 11 Idar Court Greenwich er. 06830 FLORIDA 25. DR. GEORGE L. HALLER Dr. George L. Haller 1500 Galleon Dr. Naples FL, 33490 TRANS-DATA CORP. 161 Almeria Ave. - Dept. B-118 Coral Gables EE: 33134 (305) 576-7666 ILLINOIS 27. ELECTRIC KEYBOARD LTD. 1920 N. Lincoln Ave. Chicago ILL. 60614 (312) 751-1555 28. HENWOOD ENTERPRISES INC, 1833 E. Crabtree Dr. Arlington Hts. ILL. 60004 (800) 323-7360 29. WALLACE ELECTRONICS INC, 4921 N. Sheridan Rd. Peoria ILL. 61614 (309) 692-2616 IOWA 30. EARL KEYSER Earl Keyser 22 Clover Lane Mason City IA. 50401 LOUISIANA 31, SOUTHEASTERN SOFTWARE 7270 Culpepper Dr. New Orleans LA. 70126 MARYLAND 32. COMPUTERS ETC. 9330 Georgia Ave. Silver Spring MD. 20910 (310) 588-3748 33. MICRO USERS - SOFTWARE EXCHANGE INC. 7112 Darlington Dr. Baltimore MD. 21234 (301) 661-8531 34. U ASKED 4 IT Stuart Frager P.O. Box 13331 Baltimore MD. 21203 MASSACHUSETTS 35. ERIC ROSENFELD Eric Rosenfeld 70 Lancaster Rd. Arlington MA. 02174 36, PERSONAL SOFTWARE P.O. Box 136 Cambridge MA. 02138 (617) 783-0694 MICHIGAN 37. SYMETEC INC. P.O. Box 462 Farmington MI. 48024 MINNESOTA 38. NELSON R. CAPES Nelson R. Capes 586 Kent Lane Shoreview MN. 55112 MISSOURI 39. MILLIKEN COMMUNI- CATIONS CORP. Bodie Marx 1100 Research Blvd. St. Louis MO. 63132 (800) 325-4136 NEBRASKA 40. ATV RESEARCH 13th and Broadway Dakota City NE. 68731 (402) 987-3771 NEVADA 41, 6502 PROGRAM EXCHANGE 2920 Moana Reno NV. 89509 22 contact 78 /the best of the user group newsletters for 1978 Gopric computer inc. 44. 46. 47. NEW JERSEY 42. CREATIVE COMPUTING SOFTWARE P.O. Box 789-M Morristown NJ. 07960 (800) 631-8112 -in NJ. (201) 540-0445 NEW YORK 43. EBC P.O. Box 138 Freeville NY. 13068 PRS. THE PROGRAM OF THE MONTH CORP. 257 Central Park West New York NY. 10024 PENNSYLVANIA 45. ARESCO - THE RAINBOW MAGAZINE P.O. Box 43 - Dept. RP-1178 Audubon PA. 19407 INTERACTIVE STRUC- TURES INC. 3401 Market St. - Suite 204 Science Center Philadelphia PA, 19104 (215) 381-8296 MICROTRONIX P.O. Box Q - Dept. S Philadelphia PA. 19105 (800) 523-4550 TEXAS 48. B & G INTERFACE P.O. Box 59364 Northhaven Station Dallas TX. 75229 49, 50. DALLAS APPLE CORP. - THE GREENHILL SCHOOL Bob Matzinger P.O. Box 13446 Arlington TX: 76013 S-C SOFTWARE P.O. Box $537 Richardson TX. 75080 UTAH 51. BASIC BUSINESS SOFTWARE CO. P.O. Box 2032 Salt Lake City UTAH 84110 VIRGINIA 52. 53. CH GALFO 602 Orange St. Charlotteville VA. 22901 (804) 296-4832 HOME COMPUTER CENTER INC, 2927 Virginia Beach Blvd. Virginia Beach VA. 23452 (804) 340-1977 WASHINGTON 54, 55. APPLE PUGET SOUND PROGRAM LIBRARY EXCHANGE Val Golding 6708 39th Ave. S.W. Seattle WA. 98136 (206) 937-6588 (Eves.) (206) 623-7966 (Days) DARRELL’S APPLEWARE HOUSE 17638 - 157th Ave. S.E. Renton WA. 98055 56. PUGETSOUND PROGRAM LIBRARY EXCHANGE 6708 - 39th Ave. S.W. WA. 98136 (206) 932-6588 23 contact 78 /the best of the user group newsletters for 1978 @orpie computer inc. 24 DIRECTORY Here is the start of what we hope will become a comprehen- sive list of APPLE software available from outside sources. If you know about a product that should be on this list and isn’t, please tell us about it. These are the ones we knew about in December, 1978. EDUCATION PROGRAM MEMORY MEDIA PRICE SOURCE BASIC TUTORIAL TAPE $ 9.95 AJA SOFTWARE ENGLISH GRAMMAR 1 IN PILOT TAPE $ 10.00 Earl Keyser ENGLISH GRAMMAR 2 IN PILOT TAPE $ 10.00 ~ Earl Keyser ENGLISH GRAMMAR 3 IN PILOT TAPE $ 10.00 Earl Keyser ENGLISH GRAMMAR 4 IN PILOT TAPE $ 10.00 Earl Keyser ENGLISH GRAMMAR 5 IN PILOT TAPE $ 10.00 Earl Keyser ENGLISH GRAMMAR 6 IN PILOT TAPE $ 10.00 Earl Keyser ENGLISH GRAMMAR 7 IN PILOT TAPE $ 10.00 Earl Keyser ENGLISH GRAMMAR 8 IN PILOT TAPE $ 10.00 Earl Keyser ENGLISH GRAMMAR 9 IN PILOT TAPE $ 10.00 — Earl Keyser ENGLISH GRAMMAR 10 IN PILOT TAPE $ 10.00 Earl Keyser GRADING ROUTINE 16k TAPE $ 7.95 Innovative Computer GARDENING TAPE $ 10.00 Earl Keyser IQ BUILDER: VOCABULARY TAPE $ 12.50 Program Design 1Q BUILDER: Number Series TAPE $ 9.50 Program Design 1Q BUILDER: Analogies TAPE $ 9.50 Program Design INTEGER BASIC TUTORIAL TAPE $ 17.50 Puget Sound Program LEARNING BASIC 16k TAPE $ 19.95 Innovative Computer MORSE CODE TRAINER TAPE $ 10.00 Rainbow Computing Matching Quiz 8k TAPE $ 6.95 Innovative Computer Memory Aid 8k TAPE $ 6.95 Innovative Computer Preschool 1Q Builder TAPE $ 9.95 Program Design Step-by-Step BASIC TAPE $ 29.95 Program Design i Story Builder/Word Master TAPE $ 9.50 Program Design | Study Aid 8k TAPE $ 6.95 Innovative Computer Sell-3 Economic Simulators TAPE $ 10.00 Earl Keyser Vocabulary Word Games (10) TAPE $ 15.00 Earl Keyser | Workshop Cassette TAPE $ 5.00 Puget Sound Program | Wordsmith, Wumpus TAPE $ 9,95 U ASKED 4 IT contact 78 /the best of the user group newsletters for 1978 @orpie computer inc. FINANCIAL CALCULATIONS & DATA HANDLING PROGRAM MEMORY MEDIA Apple Disk Business Systems DISK Apartment Building Cost Analysis (needs Applesoft) TAPE Asset Record Program Apartment Billing TAPE Amortization Schedule TAPE Business Inventory 10k TAPE Business Inventory Package TAPE Banking & Financial (20 programs) TAPE Budget Plan TAPE Billings Management Check Verification Program Check Book TAPE Check Book DISK Check Book TAPE Data Management Program Expense Account Records TAPE Executive Management Overview Financial Tutorial TAPE Filing System Cross-Reference File TAPE File Use Tutorial TAPE File Use Tutorial DISK Finances TAPE Finances DISK Home Improvement Records TAPE Home Inventory Records TAPE Home Financial Record Program TAPE Inventory of Goods TAPE Inventory Invoicing Program Income Tax-1040, A & B TAPE Inventory TAPE Inventory Package (Sort/POS/ Recorder) Ledger Record System Label Print TAPE Label Print DISK Mailing List System TAPE Mailing List Management Professional Secretary Package Personal Secretary Package Professional Time Management Program 200 Maintain Inventory PRICE $ 35.00 $ 15.00 $ 49.95 $ 50,00 $ 24.00 $ 40.00 $160.00 $ 19.95 $ 89.95 49.95 20.00 28.00 20.00 BRAS w 24.98 50.00 49.95 ne we 24.00 50.00 15.00 23.00 15.00 23.00 PASSE $ 50.00 $ 50,00 $ 20.00 20.00 89.95 59.95 25.00 35.00 BRAS $125.00 59.95 10.00 18.00 AAs 50.00 79.95 ne 89.95 59.95 59.95 wae $ 50.00 SOURCE AJA SOFTWARE Rainbow Computing Charles Mann Darrell’s Appleware Programmer Software Computing Components Darrell’s Appelware Ed Avelar AJA Software Charles Mann Charles Mann Trans-data Trans-data Rainbow Computing Charles Mann Darrell’s Appleware Charles Mann Speakeasy Software Darrell’s Appleware Trans-data Trans-data Trans-data Trans-data Darrell’s Appleware Darrell’s Appleware Computer Components Earl Keyser Charles Mann Charles Mann Rainbow Computing Rainbow Computing Darrell’s Appleware Charles Mann Trans-data Trans-data Trans-data Charles Mann Charles Mann Charles Mann Charles Mann Darrell’s Appleware File TAPE contact 78 /the best of the user group newsletters for 1978 @oppie computer inc. FINANCIAL CALCULATIONS & DATA HANDLING PROGRAM Program 205 Sort on Part Number Program 210 Print Sales Slips & Updates Program 220 Generates Recorders Report MEMORY Retail Management System Software Pac #3 Statistics Software Pac #4 Finance Calculator Soft I, Financial Pkg & Golf Handicap Stock Market Anlysis Tax Planning Program Tax Planning Universal Database Vendor File MEDIA TAPE TAPE TAPE DISK TAPE TAPE TAPE TAPE TAPE TAPE SCIENTIFIC CALCULATION & MATHEMATICS PROGRAM MEMORY METRIC Conversion METRIC Conversion Math Practice Number Converter Bases Number Cruncher Super Math Super Math Super Math 16k Talking Calculator LANGUAGES PROGRAM MEMORY Apple FORTH Co-resident Assembler FOCAL MICRO PRODUCTS Apple Assembler PILOT Interpreter 6k Assembler/Text Editor MEDIA TAPE DISK TAPE TAPE TAPE DISK TAPE TAPE MEDIA TAPE TAPE TAPE TAPE TAPE PRICE $ 20.00 $ 50.00 $ 50.00 $ 59.95 $ 30.00 $ 15.00 10.00 9.95 od 89.95 7.95 60.00 Pe $ 50,00 PRICE $ 20.00 $ 28.00 $ 5.00 5.00 9.95 18.00 25.00 7.95 ARRAYS $ 12.95 PRICE $ 37.00 $ 25.00 $ 20.00 $ 20.00 $ 29.95 SOURCE Darrell’s Appleware Darrell’s Appleware Darrell’s Appleware Charles Mann Basic Business Basic Business Dr. George L. Haller AJA Software Charles Mann Ed Avelar Darrell’s Appleware Darrell’s Appleware SOURCE Trans-data Trans-data Programmer Software Astro Graphics Micro Users Trans-data Trans-data Innovative Computer Softape Software SOURCE Programma Consultants Microproducts The 6502 Program Exe Rainbow Computing Earl Keyser ARESCO 26 contact 78 /the best of the user group newsletters for 1978 @oppie computer inc. ENTERTAINMENT PROGRAM Appletalker Appledian—Irish Jig Applevision—HIRES GRAPHIC/ MUSIC DEMO Astrology (Emphemer is needed) Artillery Duel APPLEODIAN--5 OCTAVES & 12 VOICES AWARI, TOWER OF HANOI, HEXPAWN Bridge Challenger Bowling Bingo Blackjack Blackjack Bob Bishop’s Hires Starwars Bob Bishop’s Hires Rocket Lander Bob Bishop’s Hires Saucer Invasion Bingo for a Printer Beat the House Biorhythm Bomber Battleship/3D Tic-Tac-Toe Blackjack Bull & Bears Battleship Color Graphics Game Casino Royale Code Breaker, Secret Writing Christmas Carol Car Race Hires Graphics Clinic Devils Dungeon Dollars & Sense Dr. Apple—ELIZA Drawing DOJOWO Desert/Arctic Survival Don’t Fall Dragon Maze, Digital Derby, Saucer War Electric Crayon Escape Fast Gammon Foreign Legion Commando Funonyms Fly-Reaction Game MEMORY 16k 8k 8k 8k 8k 16k MEDIA TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE PRICE ARRAS PAGAHAE BHBAHAHHHHEE RARABHW $ $ $ $ $ $ *Membership required to obtain these programs 18:95 10.00 15.00 10.00 10.00 2.00 2.00 14.95 $.95 5.95 10.00 2.00 15.00 15.00 15.00 10.00 14.95 10.00 9.95 12.00 10.00 12.00 7.50 20.00 12.00 11.95 12.95 7.50 14.95 10.00 14.95 5.00 6.95 10.00 10.00 6.95 2.00 17.95 12.95 20.00 9.95 12.00 5.00 SOURCE Softape Software Rainbow Computing Rainbow Computing ASTRO Graphics Programmer Software *SOFTAPE SOFTWARE *SOFTAPE SOFTWARE Personal Software AJA Software AJA Software Rainbow Computing *Softape Software COMPUTER COMPONENTS COMPUTER COMPONENTS COMPUTER COMPONENTS Darrell’s Appleware G2 Program Library Programmer Software Softape Software U-ASKED 4 IT George W. Lee Softape Software Earl Keyser Programmer Software U ASKED 4 IT U ASKED 4 IT Micro Users Darrell’s Appleware G2 Program Library Rainbow Computing G2 Program Library Earl Keyser Innovative Computer Programmer Software Earl Keyser Innovative Computer *Softape Software Micro Users Micro Users Quality Software U ASKED 4 IT Speakeasy Software Earl Keyser Sr ETO 27 contact 78 /the best of the user group newsletters for 1978 Gapple computer inc. ENTERTAINMENT PROGRAM Graphics Package Hangman/Concentration Horse Race Hires Life Hires Paddle Drawing Routine Ham Radio (Send/Receive) Hot Air Balloon Hyper-Life, & Graphic Demo King Keyboard Organ Keyboard Organ Keyboard Organ Life Life Life (high speed, variable size) Maze Game Music Kaleidoscope Microchess 2.0 Microchess 2.0 Modeler Music Box Music (3 Octaves) Microtriva Othello Game Oregon Trail Othello, Mastermind, Seven (card game) Pinball Quiz Baseball Robots Game Rocket Pilot, Saucer Invasion Road Race, Space War Save-a-Sketch Save-a-Story Star Wars, Space Maze SIDE Shows Star Trek/Star Wars Stimulating Simulations— Applesoft II Tank War Trap & Chase (with special re) alker, Spectrum Analysis MEMORY 4k 16k 16k 8k 16k 8k 8k 4k 16k MEDIA TAPE TAPE DISK TAPE TAPE TAPE TAPE TAPE TAPE TAPE DISK TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE TAPE PRICE $ RAR BANHHKHEN “ PARARASLEEHH BEE FRARHHESNS = 3.00 12.00 25.00 10.00 20.00 18.00 10.00 2.00 10.00 18.00 25.00 6.95 5.00 6.50 12.00 12.95 9.95 19,95 15.00 10.00 12.95 20.00 12.00 10.00 10.00 2.000 10.00 7.95 7.50 12.95 9.95 6.95 795 12.95 12.95 10.00 14.95 12.95 49.95 19.95 SOURCE ASTRO Graphics U ASKED 4 IT Trans Data Rainbow Computing Computer Components CH Galfo Earl Keyser Softape Software Programer Software Trans-Data Trans-Data Innovative Computer Earl Keyser ASTRO Graphics C HGalfo Muse Softape Software Personal Software Rainbow Computing Programmer Software Micro Users Computer Components Softape Software Computer Components Earl Keyser *Softape Software Earl Keyser Innovative Computer ASTRO Graphics Softape Software Softape Software Innovative Computer Innovative Computer Softape Software Muse Rainbow Computing Personal Software Micro Users B & G Interfaces Softape Software *Membership required to obtain these programs contact 78 /the best of the user group newsletters for 197 8 @oppie computer ine. ENTERTAINMENT PROGRAM MEMORY MEDIA PRICE SOURCE U-Draw 16k TAPE $ 17.95 Micro-Users UFO, Clean Sweep, Star Wars, Lunar Lander TAPE $ 2.00 *Softape Software Warlords TAPE $ 12.00 Softape Software 10-4 Good Buddy TAPE $ 10.00 Earl Keyser 21 TAPE $ 9.95 Softape Software UTILITY & MISCELLANEOUS PROGRAM MEMORY MEDIA PRICE SOURCE Apple-Lis’ner TAPE $ 19.95 Softape Software Apple Box Mini-Modem TAPE $ 18.50 Puget Sound Program Lib Automatic Disk-to-Tape Back-up Copy TAPE $ 5.00 George W. Lee Best of Bishop DISK $ 39.95 Softape Software Common BASIC Programs (Applesoft) DISK $ 22.00 Basic Business Circuit Logic Development Aid (255 gates) TAPE $ 10,00 Rainbow Computing Common BASIC Programs TAPE $ 50.00 Programmer Software Demos & Newsletter TAPE $ 6.45 Southeastern Software Diet Planning TAPE $ 7.95 Ed Avelar Drug Store’s Patient/Drug File TAPE $ 50.00 Darrell’s Appleware Daily Calendar TAPE $ 50.00 Darrell’s Appleware Demo Cassette with Speechlab Model 20A $189.00 Heuristics, Inc. Data Save to Cassette TAPE $ 20.00 Computer Components Disk-Compatible Author-Title Index Program TAPE $ 10.00 George W. Lee HIRES Drawing Program TAPE $ 12.00 ASTRO Graphics HIRES Graphics for F.P. Basic 24k TAPE $ 30.00 Computer Components Introl Super-Voice Control/ graphics response DISK Mountain Hardware Instant Library DISK $ 39.95 Softape Software Instant Library TAPE $ 39.95 Softape Software Library Pak | TAPE $ 5.00 Puget Sound Program Lib Library Pak 2 TAPE $ 5.00 Puget Sound Program Lib Library Pak 3 TAPE $ 5.00 Puget Sound Program Lib Library Pak 4 TAPE $ 5.00 Puget Sound Program Lib Menu TAPE $ 10.00 Earl Keyser Memory Verify TAPE $ 5.00 Rainbow Computing Memory Aide TAPE $ 18.00 Trans-Data Memory Aide DISK $ 25,00 Trans-Data *Membership required to obtain these programs contact 78 /the best of the user group newsletters for 1978 @oppie computer inc. UTILITY & MISCELLANEOUS PROGRAM No-RES Introl Demo-Voice Control of 6 Devices Rainbow’s Pot-of-Gold (49 BASIC Programs) Programmed Exercise Program Super-Talker-Voice Control/ Response Slow Scan TV Receiver (no hardware required) Text Pak #1 (including typesetting) Trade Pak (6 for 6) Things To Do Utility Sort Utility Pak #1 Variable Message Word Processor Word Processor—Apple Editor 3-D Plot, Etch-a-Sketch, Star Burst APPLE BIBLIOGRAPHY Courtesy of: MICRO MICRO IS PUBLISHED MONTHLY BY: The COMPUTERIST, Inc P.O. Box 3 Chelmsford, MA. 08124 $12.00 for 12 issues Compiled by: William R. Dial MOS Technology, Inc., 950 Rit- tenhouse Rd., Norristown, PA 19401 “6502 Programming Manual” MOS Technology, Inc., 950 Rit- tenhouse Rd., Norristown, PA 19401 6502 Hardware Manual” Rankin, Roy and Wozniak, Steve, “Floating Point Routines for the 6502” Dr. Dobbs Journal 1, No. 7, pp. 17-19 (August 1976) Baum, Allen and Wozniak, Ste- phen, ‘‘A 6502 Dissembler” MEMORY MEDIA PRICE SOURCE TAPE/DISK Mountain Hardware TAPE $ 49.00 Rainbow Computing $ 19.95 Charles Mann TAPE/DISK Mountain Hardware TAPE $ 18.00 CH Galfo TAPE $ 4.95 Ed Avelar TAPE Trade Ed Avelar $ 24.95 Charles Mann TAPE $ 20.00 Darrell’s Appleware TAPE $ 5.95 Ed Avelar 8k TAPE $ 6.95 Innovative Computer 20k TAPE $ 50.00 Computer Components TAPE $ 50.00 Darrell’s Appleware TAPE $ 2.00 *Softape Software *Membership required to obtain these programs Interface Age 1, No. 10, pp. 14- 23 (September 1976) Rankin, Roy and Wozniak, Ste- phen, “Floating Point Routines for 6502” Interface Age 1, No. 12, pp. 103-111 (November 1976)—See also DDJ 1, No. 7, pp. 17-19 (August 1976) Apple Computer Inc., 20863 Stevens Creek Blvd., Cupertino, CA 95014, Byte 2, No. 11, p 252 (Nov, 1977) Ferruzzi, Arthur, “Inside the Apple IT”, MICRO, No. 1, pp 9- 10 (Oct-Nov 1977) Schwartz, Marc, “Ludwig von Apple II”, MICRO, No. 2, p 19 (Dec 77-Jan 78). Wozniak, Stephen, “Sweet 16: The 6502 Dream Machine”, Byte 2, No. 11, pp 150-159 (Nov. 1977) Feagans, John, “‘A Slightly Sour SWEET 16”, Byte 3, No. 2, p 93 (Feb. 1978). Correction of a slight bug in the Wozniak article in Byte, Nov. 1977. Electronics Warehouse Inc., 1603 Aviation Blvd., Redondo Beach, CA 90278, New Product Announcement. Scogin, Tom, ‘““AppleSOFT Benchmarks: Fast!”, Kilobaud, No. 15, p 12 (Mar 78) Carpenter, C.R., “Machine Lan- guage used in ‘Ludwig von Apple Il’, MICRO, No. 3, p 8 (Feb - Mar, 1978) Notes on an assembled ver- sion of the machine language used by Schwartz, MICRO, No, 2, p 19 in his music program. Carpenter, C.R., “Printing with the Apple II”, MICRO, No. 3, pp 13-16, (Feb-Mar, 1978) 30 contact ‘78 /the best of the user group newsletters for 1978 @oppic computer inc. ] Holt, Rod, “The Apple II Power Supply Revisited”, MICRO, No. 3, p 28 (Feb-Mar. 1978) Bishop, Robert J. “Star Wars” Kilobaud No. 14 pp 52-56 (Feb. 1978) Helmers, Carl “An Apple to Byte”, BYTE 3, No. 3, p. 18-46 (Mar. 1978) Anon., “‘Byte’s Bits”, BYTE 3, No. 4, p 166 (April 1978) Bishop, Robert J. “Rocket Pilot”, Kilobaud No. 13, pg 90 (Jan. 1978) Peoples Computers 6, No. 6 (May/June 1978) Cole, Phyllis “Apple II”. MICRO, Issue 4 (April/May 1978) Carpenter, C.R. “Variables Chart”. Carpenter, C.R. “Apple IT Printing Update”. Rowe, Mike “A Worm in the Apple”. Auricchio, Rick “An Apple II Programmer’s Guide”. Creative Computing 4, No. 4 (July/August 1978). North, Steve “Apple II Computer”. Dawkins, Gary D. “High- Resolution Graphics for the Apple II’. MICRO, Issue 5 (June/July 1978) Rowe, Mike “Half a Worm in the Apple”. See also EDN May 20, 1978. Suitor, Richard F. ‘““Applayer Music Interpreter”. Carpenter, Chuck “Apple II Accessories and Software”. People’s Computers 7 No. 2 (Sept/Oct., 1978) Gaines John “Apple Math”. Conway, John ‘A Tape-to- Microcomputer-Hardware Inter- face Requires a Wealth of Micro- techniques”. EDN 23 No. 6 pg. 101-110 (March 20, 1978). Hemenway, Jack E. “Add Floppies to Your Microcomputer to Form a Real Microcomputer System”. EDN 23 No. 12 pg 98- 107 (June 20, 1978) Kilobaud Issue 23 (Oct., 1978) Bishop, Robert J. “The Remarkable Apple IL’. MICRO, No. 7 (Oct./Nov., 1978) Auricchio, Rick “Breaker: An Apple II Debugging Aid”. Watson, Allen HI “MOS 16K RAM for the Apple II. Shryock, William H., Jr., “Improved Star Battle Sound Effects”. Schwartz, Mare, “Apple Calls and Hex-Decimal Conver- sion”, Eliason, Andrew H. “Apple II High Resolution Graphics Memory Organization”’. Anon, “Tone Routine for Apple II”. Southeastern Software Newsletter Issue No. 3 pg. 6 (Oct., 1978) Haller, George, “Storing and Re- covering Data in Applesoft II’, Southeastern Software News- letter Issue No. 2 pg. 4 (Sept, 1978) Call - APPLE 1 No. 6 Williams, Don “Key Klicker Routine”. Anon, ‘‘Routine to Find Page Length”. Anon, “Printer Driver Fixes”’. Anon, “Apple I Mini- Assembler”. Aldrich, Darrell ‘Use of Color Mask Byte in HIRES”. Anon, “Memory Map-Apple II with Applesoft Basic Loaded”. Anon, “List of Handy Calls”’. Apple Computer Staff “System Monitor’. Huelsdonk, Bob “Memory Test”. Call - APPLE | No. 7 (August, 1978) Golding, Val J. “A Disk Utility Program’”’. Backman, J.A. “Poor Man’s HEX-DECIMAL-HEX Con- verter”. Thyng, Mike ‘Basic File Handling”. Apple Computer Staff “System Monitor”. Anon “Applesoft Zero Page Usage’”’. Huelsdonk, Bob “Routine to Print Free Bytes”. Huelsdonk, Bob “A Patch for Double Loops”. Apple Computer Staff “Loading Machine Language as Part of a Basic Program”. Reprinted from Contact No. 1, May 1978. Call - APPLE 1 No. 8 (Sept., 1978) Aldrich, Ron “Convert”. Thyng, Mike ‘‘Arrays”. Chapman, Dan “Video Dis- play Organization”. Anon “Routine to Save an Array”. (reprinted from Apple Stems Vol. 1 No. 2 July, 1978) Lam, S.H. “Monitor Com- mands from Basic”. Williams, Don “Linkage Routines for the Apple II Integer Basic Floating Point Package”. Hill, Alan G. “Return to TEXT from Graphics”. Anon “Integral Data [P 125- 225 Driver”. Huelsdonk, Bob “Printer Driver Fixes”. Call - APPLE 1 No. 9 (Oct., 1978) Cook, John B. “Applesoft Tone Routines”. Scott, Michael M. ‘“‘A Brief History of Apple”. Anon, ‘‘Some Basic Entry Points”. Huelsdonk, Bob “Sample File Handler’’, Golding, Val and Williams, Don “Apple II Integer Basic: Interpretation of Memory”. Golding, Val “‘Applesoft II Tokens”. 31 Goppia computer ine? 10260 Bandley Drive Cuperlino, California 95014 (408) 996-4010 «THIRD CLASS US. Postage Paid Permit No 3440 San Francisco, CA
mp.ls