|||||| |||||| || || |||||| |||||| || || ||| || || || || ||| |||| |||||| || |||| Your || || || || ||| || || |||||| |||||| || || |||||| |||||| GenieLamp Computing || |||||| || || |||||| RoundTable || || || ||| ||| || || || |||||| |||||||| |||||| RESOURCE! || || || || || || || ||||| || || || || || ~ WELCOME TO GENIELAMP APPLE II! ~ """""""""""""""""""""""""""""" ~ FILE BANDWAGON: Top 10 Files for February ~ PD_QUICKVIEW: Change-A-File ~ BEHIND THE SCENES: With _Juiced.GS_ and the SIS Team ~ HOT NEWS, HOT FILES, HOT MESSAGES ~ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\//////////////////////////////////// GenieLamp Apple II ~ A T/TalkNET Publication ~ Vol.6, Issue 62 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Editor...................................................Ryan M. Suenaga \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\//////////////////////////////////// ~ GenieLamp IBM ~ GenieLamp ST ~ GenieLamp PowerPC ~ ~ GenieLamp A2Pro ~ GenieLamp Macintosh ~ GenieLamp TX2 ~ ~ GenieLamp Windows ~ GenieLamp A2 ~ LiveWire (ASCII) ~ ~ Member Of The Digital Publishing Association ~ GE Mail: GENIELAMP Internet: genielamp@genie.com ////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ >>> WHAT'S HAPPENING IN THE APPLE II ROUNDTABLE? <<< """""""""""""""""""""""""""""""""""""""""""""""""""" ~ April 1, 1997 ~ FROM MY DESKTOP ......... [FRM] HEY MISTER POSTMAN ...... [HEY] Notes From The Editor. Is That A Letter For Me? A2/PRO_ductivity ........ [A2P] FILE BANDWAGON .......... [BAN] A2Pro Bits & Bytes. Top 10 files for February 1997. PD_QUICKVIEW ............ [PDQ] BEHIND THE SCENES ....... [BTS] Change-A-File. With the SIS team and _Juiced.GS_ REAL WORLD APPLE .........[RWA] LOG OFF ................. [LOG] A Temperature Sensor GenieLamp Information [IDX]"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" READING GENIELAMP GenieLamp has incorporated a unique indexing system """"""""""""""""" to help make reading the magazine easier. To utilize this system, load GenieLamp into any ASCII word processor or text editor. In the index you will find the following example: HUMOR ONLINE ............ [HUM] Genie Fun & Games. To read this article, set your find or search command to [HUM]. If you want to scan all of the articles, search for [EOA]. [EOF] will take you to the last page, whereas [IDX] will bring you back to the index. MESSAGE INFO To make it easy for you to respond to messages reprinted """""""""""" here in GenieLamp, you will find all the information you need immediately following the message. For example: (SMITH, CAT6, TOP1, MSG:58/M475) _____________| _____|__ _|___ |____ |_____________ |Name of sender CATegory TOPic Msg.# Page number| In this example, to respond to Smith's message, log on to page 475 enter the bulletin board and set CAT 6. Enter your REPly in TOPic 1. A message number that is surrounded by brackets indicates that this message is a "target" message and is referring to a "chain" of two or more messages that are following the same topic. For example: {58}. ABOUT Genie Genie has pricing plans to fit almost any budget. Genie's """"""""""" services include email, software downloads, bulletin boards, chat lines, and an Internet gateway included at a non-prime time connect rate of $2.75. Some pricing plans include uncharged online connect time. As always, prices are subject to change without notice. To sign up for Genie, call (with modem) 1-800-638-8369 in the USA or 1-800-387-8330 in Canada. Upon connection wait for the U#= prompt. Type: JOINGENIE and hit RETURN. The system will then prompt you for your information. Need more information? Call Genie's customer service line (voice) at 1-800-638-9636. GET GENIELAMP ON THE NET! Now you can get your GenieLamp issues from """"""""""""""""""""""""" the Internet. If you use a web browser, connect to "gopher://gopher.genie.com/11/magazines". When using a gopher program, connect to "gopher.genie.com" and then choose item 7 (Magazines and Newsletters from Genie's RoundTables). *** GET INTO THE LAMP! *** """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" ///////////////////////////////////////// Genie_QWIK_QUOTE ///// / "I typo, therefore I am." / ////////////////////////////////////////////////// A2.TONY ///// [EOA] [FRM]////////////////////////////// FROM MY DESKTOP / ///////////////////////////////// Notes From The Editor """"""""""""""""""""" by Ryan M. Suenaga, M.S.W., L.S.W. [A2LAMP] >>> EVERYBODY GO SURF!!! <<< """""""""""""""""""""""""""" "Surfing the Internet" was a catchphrase, and now it's a cliche, but I still don't understand it. Not the Internet; that I have a grasp on. It's the surfing part. Being someone who spent many a weekend (and a good amount of schooldays) jumping on a board and catching waves in the middle of the Pacific Ocean, I just can't make the connection. Real surfing doesn't require a computer, a modem, or a phone line; just some decent weather, a fiberglass board, and some rolling waves. Having spent a lot of hours in front of a computer display, I realize jumping from site to site on the World Wide Web requires a certain amount of knowledge, but I can't imagine practicing web surfing for years and years. On the positive side, I also can't imagine drowning because I got caught by a bigger wave of HyperText Markup Language than I was prepared to deal with. Right now, it doesn't look like the accuracy of the analogy matters, because the news for Apple IIgs users wishing to browse the World Wide Web is the best it's ever been. The Spectrum Internet Suite, aka SIS, from Seven Hills Software is the first Apple II Web browser available, coming from one of the most reputable developers of Apple II software. The software that people had been waiting years for is finally here (or should be by the time you read this). And it doesn't require a fancy Internet connnection; a simple Unix shell account or your plain old Genie account will do just fine. Apple II users who have waited for years to check out the Internet finally have their chance. And while we may not have all of the bells and whistles of the hulking Web browsers that frequent other platforms, it's clear that an elegant, simple Apple II solution has again been found. Once more, we find out when someone says, "You can't do that on an Apple II," they really mean, "You can do something better on an Apple II." In the meantime, I wait for SIS to show up in my mailbox, still trying to figure out how surfing and Web browsing relate. [*][*][*] If you've decided to become a SIS-sy and cruise the 'net, or you already have some form of Web access, here's a hot new URL to add to your collection: http://www.syndicomm.com/a2web That's where to find The Mother Of All Apple II Web Sites, A2-Web. Hosted by Syndicomm, managers of the A2 and A2Pro areas on Genie and Delphi, and webmeistered by A2's own Dangerous David Kerwood, A2-Web has been months in the making. You can find links to virtually every Apple II-related company on the Web at A2-Web, as well as links to Apple II user home pages, Apple II user groups, Internet resources, and virtually everything you can imagine on the World Wide Web. A2-Web is optimized for use on Apple II-usable Web browsers (SIS and Lynx) as well as looking great with graphical Web browsers on other computer platforms (like Netscape Navigator). If you have your own contribution to make to A2-Web, be sure to let David know by sur. . . uh, browsing A2-Web and dropping a note in his emailbox. [*][*][*] My good buddy Tim Kellers told me at the 1996 Kansasfest that, "KFest is better than real life." I've expanded that to, "The Apple II is better than real life," and as such I try not to get too serious about writing about it. Unfortunately, some of my lapses have been too serious to joke about. Currently, I'm running close to on schedule with the actual content of _GenieLamp A2_ usually showing up right around the first of the month. Unfortunately, there's more to life than just the content. There's also the hype; in this case, the HyperStudio and Hypercard versions of _GenieLamp A2_. On a monthly basis, I've been trying to get these done so I can learn how to do them and I've simply been running out of time. Editor Emeritus Doug Cuff has come to the rescue each time by putting out both of the HyperLamps, and I owe him a great debt for this. Now to see if I can find a few hours to figure out how to do these on my own. . . [*][*][*] As I've said before, it's common for _GenieLamp A2_ to have uncommonly good writers, and this issue is no exception. We are again joined by the editor and publisher of the world famous Apple II periodical _Juiced.GS_, Max Jones, as well as our own Editor Emeritus, Doug Cuff. And Peter Brickell is back as well, making this not only the largest issue of _GenieLamp A2_ under my tenure, but also the current issue of all Apple II periodicals with the most diverse set of writers. Max brings us up to speed on how three of the SIS-sies got involved in the development of the Spectrum Internet Suite, Peter continues his real world escapades, and Doug has a pair of articles to share with us. _GenieLamp A2_'s more than five years old now, and like any five year old, there are new plans in place. I'm hoping to get a home for the 'Lamp up on the World Wide Web in the next month or so. In fact, I already have a site picked out; it's just a matter of finding the time. And of course, that's the limiting element. Still, I'm hoping to have a URL for you in the coming issue, and a preliminary site up, just so when you go and sur. . . uh, cruise the Web, _GenieLamp_ will be right there with you. -- Ryan Genie Mail: A2LAMP Internet: a2lamp@genie.com __________________________________________________________ | | | REPRINTING GENIELAMP | | | | If you want to reprint any part of GenieLamp, or | | post it to a bulletin board, please see the very end | | of this file for instructions and limitations. | |__________________________________________________________| ASCII ART BEGINS _____ _ _ ___ ___ / ____| (_) | | / _ \|__ \ | | __ ___ _ __ _ ___| | __ _ _ __ ___ _ __ | |_| | ) | | | |_ |/ _ \ '_ \| |/ _ \ | / _` | '_ ` _ \| '_ \ | _ | / / | |__| | __/ | | | | __/ |___| (_| | | | | | | |_) | | | | |/ /_ \_____|\___|_| |_|_|\___|______\__,_|_| |_| |_| .__/ |_| |_|____| | | |_| ASCII ART ENDS [EOA] [HEY]////////////////////////////// HEY MISTER POSTMAN / ///////////////////////////////// Is That A Letter For Me? """""""""""""""""""""""" by Ryan Suenaga [A2LAMP] o BULLETIN BOARD HOT SPOTS o A2 POT-POURRI o HOT TOPICS o WHAT'S NEW o THROUGH THE GRAPEVINE o MESSAGE SPOTLIGHT >>> BULLETIN BOARD HOT SPOTS <<< """""""""""""""""""""""""""""""" [*] CAT 5, TOP 14 ....... A Few Words about Gus [*] CAT 8, TOP 18 ....... Even More Postscript and PublishIt! [*] CAT 13, TOP 5 ....... Sheppy Speaks, People Listen [*] CAT 17, TOP 25 ....... Appleworks 5 vs. Appleworks 3 [*] CAT 42, TOP 17 ....... Everyone wants to be a SIS-sy >>> A2 POT-POURRI <<< """"""""""""""""""""" GUS, MEET EDDI. . . UH, BERNIE Hi Kids - """""""""""""""""""""""""""""" The following is a message I've recieved from Andy Nicholas at Apple Computer, one of the creators of Gus, the Apple IIgs emulator for the Power Macintosh. Andy is looking for more people to be involved in the testing and evaluation of Gus, specifically in education, and is soliciting volunteers to help test the emulator. Read on for the details... Forwarded Message: To: All users of Apple Computers From: Andy Nicholas, Apple Computer "Gus" is the name of an Apple IIGS emulator for Power Macs developed by some engineers at Apple in their spare time. Gus is not and will not be an official Apple product. Gus runs Apple II and IIGS software from "disk images" created from original Apple II and IIGS disks. Creating the disk images is relatively straightforward; however, Gus does not run copy protected software at this time (this may change depending on your responses). Aside from the obvious benefit of using Apple II and IIgs software on Power Macintosh computers, Gus can also serve a very useful purpose in helping schools transition to using (and buying) Power Macs from their Apple II and IIGS's. If you know of a school district whose "computer coordinator" or "technology czar" wouldn't mind signing a non-disclosure agreement and would be interested in having their school district evaluate Gus please have them contact us at gus-feedback@apple.com. We appear to already have some interest in this direction. We need the following information from a school's computer coordinator in order to non-disclose them: (1) Name (2) School district & school affiliation (3) USMail address where we can send a non-disclosure form (4) Email address where notifications of new versions can be sent (5) Do you have web access? If you don't have web access, do you have FTP access? Please do not contact Apple's support lines with questions regarding Gus. The only way right now to receive information is to subscribe to gus-news@apple.com and send questions regarding Gus to gus-feedback@apple.com. Thanks, Andy Nicholas Apple Computer (A2.DAD, CAT5, TOP14, MSG:274/M645;1) >>>>> Gus, and Fast Ed. . . er, Bernie II the Rescue also made the """"" Macintouch site on the World Wide Web today. Check out http://www.macintouch.com. Ryan http://www.keystroke.net/~rsuenaga "There's no shortage of windmills to tilt at."--Logan ANSITerm and CoPilot v2.55 (A2LAMP, CAT5, TOP14, MSG:275/M645;1) MORE PUBLISHIT!4 PATCHES PublishIt!4 Patch Update: """""""""""""""""""""""" Two improvements: First, please disregard the prior method I posted about modifying the Laserprep file so that PI4 PostScript print-to-disk files could be made to print correctly from outside of PI without any prior printer initialization. Yea, this method worked, but, there is a much better way. The better way involves removing some of the unnecessary lines from the Laserprep file Yea, this method worked, but, there is a much better way. The better way deleted with no apparent problem. One line inside the 'md' area must be modified though. These changes make the whole process work much better. When this is done, there is no need to add the persistant download lines of Serverdict Begin Exitserver to the beginning of the Laserprep file and no need to imbed the CTRL-D at the end of the file. This is important because it will no longer change the permanent 'state' of whatever printer you may wish to send the file to, whether it is hooked up to a PC, Mac, or other computer. In other words, the PublishIt job will be a completely self contained, encapsulated (and portable) file. I'll post the mods and would like some of you with PostScript printers to try printing some PI PostScript print-to-disk files from _outside_ of PublishIt (preferably on Mac's or PC's) and let me know if you run across any problems. Second, I've finally shade tree hacked a way to patch PI4 so that we can install and use the ZapfDingbats font and then have it use the internal PostScript ZapfDingbats font when printing. The patch is to the DTP.MAIN file in PI4, and works by replacing the built- in Avantgard-for-Northbrook swap with a ZapfDingbats-for-Northbrook swap. Also, the patch disables the Laserprep font re-encoding that keeps the Dingbat character names (eg A4, A5, etc...) from being encoded. Most of you probably aren't Dingbat fans. I have wanted, though, for a long time, to use the shadowed check box, the scissors, the telephone and the pencil symbols on some of the forms I construct. This will allow that. You will need to download (from A2 is fine) the bit-mapped Dingbats fonts. Note, you won't be printing bit-mapped fonts; you will use the full-formed built- in PostScript fonts. The bit-mapped fonts are necessary only for 'place holding' and for PI's print preview mode. I did find, however, that using (and renaming) the bit-mapped 14 point font as either a 10 or 12 point font gave the best results. Finally, I think a patch to allow PostScript printing via the parallel card is very doable. This could speed printing up as well as allow use of some PostScript printers that don't have a serial port. Hugh... (H.HOOD, CAT8, TOP18, MSG:166/M645;1) A2-WEB OPENS Possibly lost in the aura of the SIS release was the """""""""""" announcement of the opening of The Mother of All Apple II Web Sites, A2 web. The webmeister is our own David Kerwood, and the url is: http://www.syndicomm.com/a2web Ryan http://www.keystroke.net/~rsuenaga "There's no shortage of windmills to tilt at."--Logan ANSITerm and CoPilot v2.55 (A2LAMP, CAT13, TOP17, MSG:53/M645;1) >>>>> I didn't miss it. It was right there on page 18. Not to mention the """"" screen shot on page 5. ;) -- Carl Knoblock - Telephone Tech cknoblo@delphi.com cknoblo@novia.net (C.KNOBLOCK, CAT35, TOP8, MSG:31/M645;1) >>>>> Great! I just saw it for the first time today (in Juiced.GS, I """"" mean). A2-Web is, in fact, SIS-enhanced - you will see things there on the page that you will ONLY see if you view the pages with SIS. Of course, all the pages of A2-Web are fully functional with the more primitive browsers as well. :) Use the feedback button and tell me how to make it better! David K. - A2-Web! Get tangled at http://www.syndicomm.com/a2web/ (A2.DAD, CAT35, TOP8, MSG:32/M645;1) >>> HOT TOPICS <<< """""""""""""""""" A WOLF UPDATE It's still in the works... but the going is slow. I'm """"""""""""" working on putting in all the new art I just got. :) Sound-wise, things have kinda stalled for the time being. I still am working on getting access to the equipment and people I need to get the voices rerecorded. Sheppy (SHEPPY, CAT13, TOP5, MSG:93/M645;1) >>>>> Sheppy, """"" I was wondering if you were losing interest in this project, or just busy with other things. Appreciate the update. And I should add that the W3D beta is just flat-out awesome! Ed Staib / Bugman Delivered via Warped 8 meg GS Rom-01 Tower Proterm 3.1 till Spectrum/SIS bundle arrives :) (E.STAIB, CAT13, TOP5, MSG:94/M645;1) <<<<< I'm just busy with other things, I assure you. Wolf 3D is """"" basically acharity project for Logicware, and is therefore the absolute lowest priorityon my schedule. As such, I can only spend personal time on it, and I don'thave a lot of that left after working 12-16 hours a day on the money-making stuff at work. And to be honest, now that I'm married I like to spend as much of my free time with my wife as I can. :) I've gotten the new art, and am working gradually on getting it all in. :) Sheppy (SHEPPY, CAT13, TOP5, MSG:95/M645;1) SHIFTY LIST 2.0: AN UPDATE I've been extremely busy lately. But I assure """""""""""""""""""""""""" you, I'm still here. I admit I haven't read the BB other than this topic for several months though. :) At any rate, I'm looking at the best way to get Shifty List 2.0 done in the shortest possible time. Sheppy (SHEPPY, CAT13, TOP18, MSG:63/M645;1) <<<<< BTW... I'm putting reasonable effort into Shifty List 2.0, and """"" expect to be finished with it this spring (possibly within a month or so). I don't know for sure yet how it will be distributed, but it will be vastly superior to the original. :) Sheppy (SHEPPY, CAT13, TOP18, MSG:64/M645;1) >>>>> Sheppy, is it too late to ask for something on that? Is it """"" possible to make it so that it could be launched by PROSel? ie. an application, in addition to a Finder Extra? Or I guess you could assure me that PROsel's init manager within the Utilities is fully compatible with ShiftyList. Someone somewhere told me that mixing init managers (ShiftyList, Initmaster, PROSel) was dangerous. Thanks! _________ | homas (T.COMPTER, CAT13, TOP18, MSG:65/M645;1) <<<<< Shifty List isn't an init manager; it's a totally different tool """"" for allowing you to shift-boot and still get some items loaded up. There won't be an application version of the Shifty List Finder Extension for Shifty List 2.0 (the features list for Shifty List 2.0 is final), but I'm already working on a Shifty List 3.0 features list, and I'll consider it for that version. Sheppy (SHEPPY, CAT13, TOP18, MSG:66/M645;1) KEYBOARD KAOS Somebody (I forget who) pleaded for assistance: """"""""""""" >I fell into a Rom 3 //gs, now I need a //gs keyboard. Can anyone help? The absolute best keyboards for the IIgs are the genuine Apple Extended Keyboard, also known as the Mac SE keyboard, family number M0115, or the Apple Extended Keyboard II, family number M3501. Either one of these in combination with Bill Tudor's free Extended Keyboard Init (in the A2 Library) really makes heavy duty typing on the IIgs a whole lot nicer. Call Sun Remarketing and see if they have any of these. They ain't cheap, but if you spend a lot of time actually _doing_ stuff with your IIgs, they are one of the best investments you can make. These keyboards will work on all Macs as well, even PowerBooks and Duos, and are still the best keyboards available. David K. - A2-Web! Get tangled at http://www.syndicomm.com/a2web/ (A2.DAD, CAT12, TOP28, MSG:54/M645;1) >>>>> David - """"" >...the genuine Apple Extended Keyboard, I've grown so accustomed to the placement of keys on the GS keyboard, I'm wondering how the AEK compares - such as the Esc, Tab, control, Option and Open apple keys? - Joachim (J.NELSON56, CAT12, TOP28, MSG:56/M645;1) >>>>> Extended keyboards usually have all their keys in the same places. """"" The GS keyboard is the one that's different because it's so small. Here are the differences between the GS keybaord and the AppleDesign (which I think is layed out the same as the Apple Extended II): GS Keyboard =========== [RESET] [ESC] 1 2 3 4 5 6 7 8 9 0 - = [DEL] [TAB] Q W E R T Y U I O P [ ] [RET] Numeric [CTL] A S D F G H J K L ; ' [RETRN] <-- "L" shaped Return key Keypad [SHIFT] Z X C V B N M , . / [SHIFT] [CAP][OPT][CMD] ` [SPACE] \ [ARROWS] AppleDesign =========== [ESC] [Function Keys F1-F15] [RESET] ` 1 2 3 4 5 6 7 8 9 0 - = [DEL] [HELP][HOME][PGUP] [TAB] Q W E R T Y U I O P [ ] \ [DEL][END][PGDN] Numeric [CAP] A S D F G H J K L ; ' [RETRN] Keypad [SHIFT] Z X C V B N M , . / [SHIFT] Inverted-T [CTL][OPT][CMD] [SPACE] [CMD][OPT][CTL] Arrow Keys The numeric keypads are the same except the "+" and "-" keys are reversed. I hope my ASCII art is legible. - Tony (A2.TONY, CAT12, TOP28, MSG:57/M645;1) <<<<< Tony - in a terrific display of hard work and expended effort """"" (which made everyone sit up and take notice - not something that happens every day) did this for the Genie A2 subscribers: >Here are the differences between the GS keybaord and the AppleDesign >(which I think is layed out the same as the Apple Extended II): It is. Super effort, Tony. Just a clarification. The AppleDesign keyboards are not at all the same as the Apple Extended keyboards, apart from the fact that they are, uh, keyboards. The Apple Extended and Extended II keyboards are big, heavy, solid keyboards with great tactile feedback on the keys. No rubbery typing with these. The AppleDesign keyboards are good enough for most people, lightweight but not flimsy, though the keys are more squishy than I personnally prefer. David K. - A2-Web! Get tangled at http://www.syndicomm.com/a2web/ (A2.DAD, CAT12 ,TOP28, MSG:58/M645;1) >>> WHAT'S NEW <<< """""""""""""""""" SEVEN HILLS ANNOUNCES SIS Seven Hills Software is proud to announce """"""""""""""""""""""""" Spectrum Internet Suite: Now you can access the World Wide Web directly from your Apple IIGS! Using Spectrum 2.1 and its expandable XCMD/XDisplay technology, Seven Hills Software has developed the Spectrum Internet Suite - a combination of XCMDs, XDisplays and scripts designed to put you on the World Wide Web, right from your Apple IIGS - all without the need for GNO/ME, TCP/IP, or other programs. All you need is Spectrum 2.1, Spectrum Internet Suite, and a UNIX shell account or a Genie account! Building on the power and strength of Spectrum and its associated plug-in XCMDs and Displays, Spectrum Internet Suite combines an XDisplay with a new XCMD and powerful Spectrum scripting to provide a one-stop solution to the Internet. Features include: ===== NAVIGATION ===== - Optional Toolbar for quick access for frequently used commands - Proxy server support - Progress bar reports download status - Bookmark facility for visting favorite sites - Perform Basic Authentication security - History list maintained to return to a visited page in the same session - Browse files on local/network disks as well as the web - Type in URLs without the need of http:// - Automatic URL completion (for standard www. and .com addresses): type "apple" and it will load "http://www.apple.com/" ===== WEB PAGE GENERATION ===== - Supports the HTML 3.2 standards - "Netscape Navigator Client Pull" Dynamic Updating - Frame cells are accessed by links (like Lynx 2.6) - Exclusive Spectrum specific HTML tags: play Apple IIGS sound effects and speech from a web page! (the computer viewing the page must be running Spectrum Internet Suite and have appropriate sounds/speech software installed for these tags to work) - Color text - Multiple fonts and styles - Emedded IMG tag translation - Anchors and tags ===== OTHER FEATURES ===== - Display HTML source code - Save HTML source code to disk - Save formatted web page to disk or system clipboard - you can even use it for HTML to Teach conversion! - Print web page contents or HTML source code to any Print Manager supported printer - Using a UNIX shell account allows sending (only) of Email via Spectrum Internet Suite (email does not work from Genie) System requirements: - Spectrum v2.1 - An Apple IIGS running System 6.0.1 with 4Mb of RAM - A hard disk and an accelerator highly recommended - A modem with correctly wired hardware handshaking cable - A Genie account or a dial-up Unix shell account from your Internet Service Provider (no files are placed on the shell system, so no filespace is needed on your shell account). Note: Spectrum v2.1, running with its full complement of XCMDs and the Spectrum Internet Suite, requires at least 4Mb of memory to browse the Web. A great deal of processing also needs to be done to build an HTML display, so an accelerator is virtually a must. It is also advisable to run Spectrum from a hard disk for speed and maximum storage capacity. Retail price $25. SIS REQUIRES SPECTRUM VERSION 2.1 If you received v2.1 through the mail, you're ready! If you received v2.1 *AT* KansasFest and did NOT receive an update via email, you need to request a free update when you order SIS. If you own v2.0 you need to order the update to v2.1 for $25. If you own v1.0 you need to order the update to v2.1 for $30. If you don't own Spectrum, order SPv2.1 with SIS for the special price of $95. Add 7% tax if in Florida. Add $3.50 s&h (per order, not per item). Email Visa/MasterCard/Discover orders to sevenhills@genie.com or FAX them to 904-575-2015 any time, or phone 904-575-0566, M-F, 9am-5pm (leave order on voicemail) Mail checks/money orders to 1254 Ocala Road, Tallahassee, FL 32304. For more information, visit the Spectrum Internet Suite Home Page: http://www.netally.com/shss/iigs/sis/ (SEVENHILLS, CAT43, TOP15, MSG:50/M645;1) BRAND NEW JUICED Announcing ... """""""""""""""" ===== Juiced.GS, Volume 2, Issue 1 ===== The Winter, 1997 edition of Juiced.GS, the Apple II world's premier IIGS-specific magazine, is now arriving in subscriber mail boxes in the U.S., Canada, Mexico, and other points around the world. This issue is being mailed to 230 paid subscribers in 42 states and 12 foreign countries. Here's what you'll find in this issue: ============ Cover Story: A "Suite" Arrival ... A team of dedicated programmers, with the support of Seven Hills Software, has produced the first and only Web browser for the Apple IIGS. Spectrum Internet Suite will be available to users of Spectrum v2.1 in March. Snap Shot: An Interview with Bret Victor ... Juiced.GS got together via e-mail with the creative and versatile IIGS programmer in late December and chatted about all sorts of stuff. Desktop Publishing: Making a Good First Impression ... A closer look at the art of desktop publishing and its importance in capturing your intended audience. Also included is some of what you need to know about desktop publishing on your IIGS. Desktop Publishing Bonus: Working with Fonts ... Dave Bennett, an associate professor of journalism, explains how the desktop publisher should approach the use of fonts in documents. Shareware Spotlight: Defender of the World and Calendar Crafter GS are the featured programs in the spotlight this issue. DumplinGS: Still crazy ... A sizable helping of newsy bits from around the Apple II world, including the unveiling of the "Mother of all Apple II Web Sites!" II Be Named Later: A Personal Ad ... Our columnist, Ryan Suenaga, writes about life and love around a personal computer. ============ Juiced.GS is a quarterly, printed publication available by subscription. A subscription for 1997 is $14 in the U.S., Canada or Mexico, $20 elsewhere To subscribe, send a check or money order U.S. funds to: Max Jones Juiced.GS 2217 Lakeview Drive Sullivan, IN 47882 Makes checks or money orders payable to Max Jones. Sorry, no credit cards or purchase orders can be accepted. A complete set of 1996 issues is also available for $14. If you would like to purchase only a specific single copy (or copies) of 1996 issues, they are available for $4 each. An index and brief description of articles published in 1996 are available on the Juiced.GS web site. See URL below. Apple II Forever! Max Jones Juiced.GS Genie: M.JONES145 -- Delphi: JuicedGS Internet: m.jones145@genie.com -or- juicedgs@delphi.com Wolrd Wide Web: http://users.ids.net/~kerwood/juiced.gs (M.JONES145, CAT13, TOP43, MSG:43/M645;1) NEW HYPE! """"""""" Apple Blossom Publishing in cooperation with Hangtime of Script Central and Gareth Jones of Apples B.C. News presents H Y P E R Q U A R T E R L Y Beginning in April we will begin shipping a new disk-based subscription, with new issues appearing every three months. Each issue (two disks) will contain innovative new stacks and scripts, XCMDs and XFCNs, icons, art, news and tutorials. HyperCard IIGS, which is part of the Apple IIGS System Software, is an invaluable resource for Apple IIGS owners. But many folks don't know how useful and fun it can be. Sign up for Hyper Quarterly and you'll find out. In addition to the talents of Hangtime and Gareth Jones, we will be joined by Josh Calvin, Brian Gillespie and Ryan Suenaga in presenting stacks and info for your use and pleasure. Other IIGS HyperCard users are welcome to submit stacks for publication (yes, we'll pay!). The first issue is shaping up now and includes the following stacks: A.La.Carte by Hangtime, An innovative stack for rapidly creating custom menus for stacks. Type in the menu names, assign command key equivalents and menu item actions and install. TZ.Rolodex by Hangtime, HyperCard ships with an address book, but Hangtime's effort, aside from having the polished look he is famous for, lets you keep notes, view the correct time for the individual you're currently looking at, and lets you sort the stack by name. PostScripter by Gareth Jones, Want fantastic looking graphics for your desktop publishing efforts, but stymied by a lack of good conversion tools for 320 color images. No longer! Just print a 320 image to disk as a postscript file with the LaserWriter driver, and use this stack to re-size and re-position the image anywhere on the page, then download to your PostScript laser printer with your favorite app (dlps, LaserBeam, SendPS, ProTERM). HC.Word by Steve Cavanaugh, Need to dash off a quick note while work- & Gareth Jones ing in HyperCard? This text editor stack lets you do that, but can also read and write text files, encode with HTML, let you perform fast Finds for words in any documents you have in the stack, and can GSify text by automatical- adding in the ligatures, em dashes and other "high ASCII" characters. Other stacks likely to appear include a Lynx bookmark manager, an updated version of Quarknet from Brian Gillespie that works seamlessly with Delphi, a stack with scripts and scripted buttons for copy and paste into your own projects, and more. If you don't already have HyperCard IIGS, you can of course download it from Apple's ftp site. If you don't have the ability or time to do that, you can purchase the disks from us with your subscription for $12.00 (HyperCard IIGS version 1.1 comes on 6 disks). To subscribe, send a check or money order for $35.00 ($47.00 if you are also ordering HyperCard IIGS) made out to "Apple Blossom Publishing" to Steve Cavanaugh Apple Blossom Publishing P.O. Box 120434 Boston, MA 02112-0434 Sorry, neither credit cards nor purchase orders can be accepted. Please send any questions you might have to one of the email addresses below. Regards, Steve Cavanaugh Hyper Quarterly Apple Blossom Publishing The Apple Blossom http://members.aol.com/newblossom/ Apple II Modem Starter Disk (A2LAMP, CAT13, TOP17, MSG:53/M645;1) >>> THROUGH THE GRAPEVINE <<< """"""""""""""""""""""""""""" EVEN MORE SPECTRUM TRICKS I also am working on a Master Command Center """"""""""""""""""""""""" for Spectrum 2.1 users. It will access Delphi, Genie, CIS, the Delphi Messenger, Genie Copilot, and a mini CIS BB Reader all from one convenient Hitzone Menu. It's nowhere ready yet, but give me time. ;-) (K.GRAHAM16, CAT3, TOP36, MSG:61/M645;2) THE NEW SSII The next issue of Shareware Solutions II is finally nearing """""""""""" completion. Unlike the last issue, where there were many short (1-2 page) articles, this upcoming issue has two very long feature length articles. My feature length article is all about Spectrum Internet Suite, and Steve Disbrow's feature length article is all about networking. Of course, there's also the usual Grapevine news column (with some interesting Easter Egg discoveries), some "killer" Such A Deal offerings, the usual mix of freeware/shareware coverage in the Shareware Solutions II columns, and a second look at the the IIGS Emulator from our good friends in Switzerland. Soon....real soon now... Joe (JOE.KOHN, CAT28, TOP4, MSG:46/M645;1) SSII'S NEW HARMONIE I have zero details to offer at the moment, but there """"""""""""""""""" will soon be an updated version of Harmonie available from Burger Bill and Shareware Solutions II. In addition to fixing bugs in the current versions (AWGS colors, full justification), there will be direct support for a number of newer HP ink jet printers, and on those printers that offer 600 x 300 dpi, you'll finally be able to take full advantage of that increased resolution. Joe Kohn (JOE.KOHN, CAT28, TOP4, MSG:78/M645;1) >>>>> If the Burger-meister is taking Harmonie suggestions, I'd like to """"" make a couple: 1) Make the Deskwriter drivers work via Appletalk. 2) Do a conventional (non-networked) driver for the Laserwriter, that converts TrueType fonts on the fly :) 3) Do some for the newer Canon and Epson printers. Okay, I know I ask for a lot :) Ryan http://www.keystroke.net/~rsuenaga "There's no shortage of windmills to tilt at."--Logan ANSITerm and CoPilot v2.55 (A2LAMP, CAT28, TOP4, MSG:90/645;1) SSII BRINGS BACK A2-CENTRAL Coming Soon...to an Apple II screen near """"""""""""""""""""""""""" you... For the first time ever, every word that appeared in every issue of Open-Apple, A2-Central, and A2-Central-On-Disk will be available in a special 12 disk (3.5" only) collection that will be soon be available from Tom Weishaar and Joe Kohn. That's 8.8 megabytes of Apple II information, hints, tips, and humor from some of the sharpest minds to ever write about the Apple II. In addition, all 73 back issues of A2-Central-On-Disk will also be available. (JOE.KOHN, CAT28, TOP4, MSG:79/M645;1) >>> MESSAGE SPOTLIGHT <<< """"""""""""""""""""""""" Category 13, Topic 43 Message 36 Sat Mar 08, 1997 M.JONES145 [MaxJ] at 12:49 EST Oh, what a night .... For those of you who missed it, the Apple II Saloon hosted a "New PRODUCT" celebration Friday night in the A2 RTC, and the turnout was fabulous! When Dave Hecker made the announcement about Spectrum Internet Suite, the first and only IIGS Web browser, there were no fewer than 32 poeple in the room. As the night went on, some folks left, others joined in, and there was still about a dozen people in the Saloon when I finally signed off a little after 2 a.m. There were even Genie users in the RTC Friday night who said they had NEVER been in an RTC before. Oh, what a night ... We'll be working on a transcript of the session in the next day or so. Look for it to be uploaded later this weekend. I want to express my appreciation to the SIS development team -- Ewen Wannop, Geoff Weiss and Dave Hecker -- for being our guests for the RTC celebration. Ewen had to get out of bed at 4 a.m. to attend, and Geoff came in on a guest account and was still in the RTC when I left. What a trooper! Thanks also to Cindy for helping get the guest account arranged for Geoff. Thanks also to Dave Miller for setting up the Simulbot so our friends on Delphi could participate. And, of course, thanks to all those who attended and made this celebration a memorable one. Apple II forever, Max [*][*][*] While on Genie, do you spend most of your time downloading files? If so, you may be missing out some excellent information in the Bulletin Board area. The messages listed above only scratch the surface of what's available and waiting for you in the bulletin board area. If you are serious about your Apple II, the GenieLamp staff strongly urge you to give the bulletin board area a try. There are literally thousands of messages posted from people like you from all over the world. [EOA] [A2P]////////////////////////////// A2/PRO_ductivity / ///////////////////////////////// By Ryan M. Suenaga, M.S.W. [A2LAMP] >>> A2PRO BITS & BYTES <<< """""""""""""""""""""""""" UUENCODING IN C MINOR I need some help deciphering the following C code. """"""""""""""""""""" It is supposed to be code to decode UUencoded files. Anyone who feels led to comment this code and/or point out problems with it will receive my undying gratitude (well, at least a big thank you ;). Charlie --**-- if (msgtype == 'U') { FILE *f; char c1, c2, c3; int cnt, csum; f = fopen (buf2, (i== 1) ? "w" : "a"); if (f) { if (i != 1) { cnt = *buf - ' '; csum = 0; for (c = buf+1; cnt>0; c += 4) { c1 = ((c[0] - ' ') & 0x3f) << 2 | ((c[1] - ' ') & 0x3f) >> 4; c2 = ((c[1] - ' ') & 0x3f) << 4 | ((c[2] - ' ') & 0x3f) >> 2; c3 = ((c[2] - ' ') & 0x3f) << 6 | ((c[3] - ' ') & 0x3f); if (cnt-- > 0) fputc (c1,f); if (cnt-- > 0) fputc (c2,f); if (cnt-- > 0) fputc(c3, f); } } while (prevline = ourbuf, sgets (buf, 1024, &ourbuf) && (i = check_uue (buf))) { cnt = *buf - ' '; csum = 0; for (c = buf+1; i>0 && cnt> 0; c += 4) { c1 = ((c[0] - ' ') & 0x3f) << 2 | ((c[1] - ' ') & 0x3f) >> 4; c2 = ((c[1] - ' ') & 0x3f) << 4 | ((c[2] - ' ') & 0x3f) >> 2; c3 = ((c[2] - ' ') & 0x3f) << 6 | ((c[3] - ' ') & 0x3f); if (cnt-- > 0) fputc (c1,f); if (cnt-- > 0) fputc (c2,f); if (cnt-- > 0) fputc(c3, f); } } fclose (f); p += sprintf (p, " Got %s to %s\n",bu f1, download_path); } } (A2.CHARLIE, CAT4, TOP2, MSG:83/M530;1) >>>>> Roughly translating the c code, first a file "f" is opened for """"" writing. I'm not sure what "i" is used for but assuming it's not 1 you go into a loop to decode a line of uucode. Evidently, the line of uucode has previously been stored in in a buffer pointed to by "buf". cnt = *buf - ' '; takes the first character in the buffer (the line count) and subtracts an ascii space (32) from it. Thus cnt now holds the length of the line (in bytes when decoded). Assuming the line starts with "M" that is 45. csum = 0; "csum", the checksum is set to zero. for (c = buf+1; cnt>0; c += 4) next comes a loop that decodes the line od uucode. c is probably declared somewhere previously as a pointer of type char (char *c). It is initially set to point to the second character in "buf" (c = buf+1;). The loop is set up so that it will continue to loop while the "cnt" is greater than zero (cnt>0;), and each time thru the loop c is incremented by 4 (c += 4). Each time thru the loop four uucode characters are translated. Remember that four uucode characters translate to three real bytes. c1, c2 and c3 are variables that hold the three resulting bytes. They are not related to the variable c which is a pointer and c[n] which is the nth character past where c is currently pointing. Remember, at the start of the loop c is pointing to the second character in the buffer, the one past the line length character. c1 = ((c[0] - ' ') & 0x3f) << 2 | ((c[1] - ' ') & 0x3f) >> 4; This line decodes the first byte. c[0] is the second ascii character in the uucode line, and c[1] is the third. The part ((c[n] - ' ') & 0x3f) takes an uucoded character and subtracts 32 (an ascii space) from it and ANDs it with $3F to mask off the two high bits that aren't used. the << 2 shifts the first result two BITS to the left and the >> 4 shifts the second result four bits to the right. The | operator ORs the results together. Let's say the line starts off M3F.... "M" is the line length, c[0] = '3' and c[1] = 'F' in ascii code '3' = $33 and 'F' = $46. Following the equation above: Left half Right half $33 - $20 (a space) = $13 $4F - $20 (a space) = $2F ANDing with $3F = $13 ANDing with $3F = $2F 2 bit left shift = $4C 4 bit right shift = $02 OR the two halfs and c1 = $4E c2 and c3 are derived the same way, except the shifts are different to extract the three bytes. if (cnt-- > 0) fputc (c1,f); if (cnt-- > 0) fputc (c2,f); if (cnt-- > 0) fputc(c3, f); } <== brace that ends loop This code writes c1, c2 and c3 to the output file. as long as there are still bytes to be output (ie. cnt-- > 0) the -- after the "cnt" decrements "cnt" by one AFTER the comparison test is made. Then the loop is tested, and if cnt>0 is still true, the loop starts again, this time with c pointing to the 6th uucode character in the line. The looping continues until the last byte is decoded and "cnt" becomes zero. This completes one line of the code. I'm not sure how the remaining code and the "check_uue (buf)" function work as parts of that code are missing. It is safe to bet that it gets the next line into buffer and checks the checksum of the processed line, so I'll stop here. The remaining code is repetitive to what I listed above. Charlie, I did this in a hurry, I think it is accurate, but typos may have slipped in. I hope this gives you some help. Where did you get this code? Is in the library or can it be posted in its entirety? \ ___\ ___\ \ !\ \ A Bob, H AF6C (R.ECKWEILER, CAT4, TOP2, MSG:84/M530;1) <<<<< The code was posted to me on Delphi. I retyped it here and may have """"" made some typos. Here is the original text... --**-- if (msgtype == 'U') // want UUE file? { FILE *f; // UU decoded output file char c1, c2, c3; int cnt, csum; f = fopen (buf2, (i == 1) ? "w" : "a"); if (f) { if (i != 1) // a body line? { cnt = *buf - ' '; csum = 0; for (c = buf+1; cnt > 0; c += 4) { c1 = ((c[0] - ' ') & 0x3f) << 2 | ((c[1] - ' ') & 0x3f) >> 4; c2 = ((c[1] - ' ') & 0x3f) << 4 | ((c[2] - ' ') & 0x3f) >> 2; c3 = ((c[2] - ' ') & 0x3f) << 6 | ((c[3] - ' ') & 0x3f); if (cnt-- > 0) fputc (c1, f); if (cnt-- > 0) fputc (c2, f); if (cnt-- > 0) fputc (c3, f); } } while (prevline = ourbuf, sgets (buf, 1024, &ourbuf) && (i = check_uue (buf))) { cnt = *buf - ' '; csum = 0; for (c = buf+1; i > 0 && cnt > 0; c += 4) { c1 = ((c[0] - ' ') & 0x3f) << 2 | ((c[1] - ' ') & 0x3f) >> 4; c2 = ((c[1] - ' ') & 0x3f) << 4 | ((c[2] - ' ') & 0x3f) >> 2; c3 = ((c[2] - ' ') & 0x3f) << 6 | ((c[3] - ' ') & 0x3f); if (cnt-- > 0) fputc (c1, f); if (cnt-- > 0) fputc (c2, f); if (cnt-- > 0) fputc (c3, f); } } fclose (f); p += sprintf (p, " Got %s to %s\n", buf1, download_path); } } --**-- Charlie (A2.CHARLIE, CAT4, TOP2, MSG:85/M530;1) >>>>> Thanks Charlie, the added code didn't help much, there's still a """"" lot missing. I hope the translation I gave you is enough to get you started. Be sure not to write the decode part in AppleSoft. Bit shifting can be a challenge in basic unless there is an integer divide. In either case it is a lot slower than "C" or assembly. If you ever come across a better example of how the checksum is calculated please pass it along. Happy St. Patty's Day to you Mr. O'Charlie, Bob O'Eckweiler (R.ECKWEILER, CAT4, TOP2, MSG:86/M530;1) MORE UUENCODING I'm interested in learning how encoding and decoding in """"""""""""""" UU is done. I've read a bit of stuff on the Internet, but I haven't found any information on exactly how the algorithm works that changes the 3 eight-bit characters into 4 six-bit characters. Anyone around here able to explain it to me? Charlie (A2.CHARLIE, CAT23, TOP19, MSG:1/M530/1) >>>>> Hmmm... I'm not real familiar with the inner workings of UUencode """"" or Binscii, but I do know Base64 inside and out. :) Base64 is actually a pretty simple encoding scheme when you look at it. Dave (JUST.DAVE, CAT23, TOP19, MSG:2/M530;1) >>>>> I have source code around here somewhere for sciibin, a UNIX """"" program that handles Binscii decoding. If you're interested, I could upload it here. It's C source code, BTW. I'm sure I could dig up similar UU source code, if I had some time... - Tony (A2.TONY, CAT23, TOP19, MSG:4/M530;1) >>>>> Base64 is really very simple in concept, but it's a bear to """"" actually implement. :) Imagine you have two trays that are 24 bits long. One is divided in 3 pieces, each slot is 8 bits wide. Your second tray is divided into 4 pieces, each 6 bits wide. You just line the bits up in the 8 bit tray, hold it over the six bit tray, and drop the bits straight down. (see the diagram) _______________________ _______________________ ______________________ |7 6 5 4 3 2 1 0 |7 6 5 4 3 2 1 0 |7 6 5 4 3 2 1 0| | | | | | | | | | | | | | | | | | | | | | | | | v v v v v v v v v v v v v v v v v v v v v v v v |5 4 3 2 1 0 |5 4 3 2 1 0 |5 4 3 2 1 0 |5 4 3 2 1 0| ~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~ The resulting 6 bit values are used as a simple table lookup to the valid characters we can use for base64. Table 1: The Base64 Alphabet (graciously swiped from RFC 2045) Value Encoding Value Encoding Value Encoding Value Encoding 0 A 17 R 34 i 51 z 1 B 18 S 35 j 52 0 2 C 19 T 36 k 53 1 3 D 20 U 37 l 54 2 4 E 21 V 38 m 55 3 5 F 22 W 39 n 56 4 6 G 23 X 40 o 57 5 7 H 24 Y 41 p 58 6 8 I 25 Z 42 q 59 7 9 J 26 a 43 r 60 8 10 K 27 b 44 s 61 9 11 L 28 c 45 t 62 + 12 M 29 d 46 u 63 / 13 N 30 e 47 v 14 O 31 f 48 w (pad) = 15 P 32 g 49 x 16 Q 33 h 50 y When you hit the end of the data, if you don't have exactly 3 bytes to convert, then just drop what you have into the six-bit "tray" from the left side, and fill with 0-bits on the right to fill the current six-bit slot. Any empty slots on the right hand side can be filled with '=' characters. You can use a maximum of 76 characters per line. The "official" documentation on this encoding scheme begins on page 24 of RFC 2045, which can be found at You can also request a copy of it in email by sending mail to "mailserv@ds.internic.net". The subject can be whatever you want. In the BODY of the message, put "document-by-name rfc2045" (without the quotes obviously :) I'm not REAL familiar with UUencode, but I think it's pretty similar, except instead of using a table lookup, it just adds 32 to the 6-bit value (and some implementations replace spaces with back-apostrophes (`)). The problem with this (and why base64 was created) is that some mailservers choke on certain characters that are legal in UUencode. The alphabet used in the lookup table for base64 was carefully chosen so that every character in it would safely pass through all known mail server software. Dave (JUST.DAVE, CAT23, TOP19, MSG:5/M530;1) <<<<< Thanks! If I understand the concept then the following is true: """"" Hi-Bit A = 193 Hi-Bit B = 194 Hi-Bit C = 195 _______________________ _______________________ ______________________ |7 6 5 4 3 2 1 0 |7 6 5 4 3 2 1 0 |7 6 5 4 3 2 1 0| 1 1 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 1 0 0 0 0 1 1 |5 4 3 2 1 0 |5 4 3 2 1 0 |5 4 3 2 1 0 |5 4 3 2 1 0| ~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~ 48 28 11 3 w c L D Is that right? Charlie (A2.CHARLIE, CAT23, TOP19, MSG:6/530;1) <<<<< Tony, """"" Thanks. :) It never hurts to have sample code available. BTW, Alan [STARFALL] gave me the following information in the INTERNET RT BB: "You can get C source code for UUencode/decode from the GNU project. Go to ftp://gatekeeper.dec.com/pub/GNU/sharutils-4.2.tar.gz to get it. You'll need gunzip to uncompress it, and a tar utility to extract the files." Any chance that you could grab that and put it here in a form that I can read? Charlie (A2.CHARLIE, CAT23, TOP19, MSG:7/M530;1) >>>>> If I understand Dave's explanation, it means that for every four """"" character string in BASE64, there is a corresponding 3 character string in REAL (i.e., the original document). Is this a correct interpretation? A brute force method would be to simply encode the possible combination of 6- bit characters (4 each) and use a translation table to the 3x8-bit sets. It would be horrendous, but it would work. Or, one would have to use a 64-entry table, convert the characters to the bits, concatenate them, and then break into 8-bit groups, and reconvert to ASCII. Is the above correct? It also sounds like UUENCODE can't use the control characters. If it adds 32 to the value, it means that values less than 32 to start, when subtracted from, would give an encoded value less than zero. Joat (A2.TIM, CAT23, TOP19, MSG:8/M530;1) >>>>> Charlie: """"" > Is that right? Yes. :) >>> Joat > If I understand Dave's explanation, it means that for every four > character string in BASE64, there is a corresponding 3 character > string in REAL (i.e., the original document). Is this a correct > interpretation? Almost. If the 4-character string in base64 ends in = signs, then there are less than 3 characters in the that spot in the original document. This can only ocurr at the end of the data though. > A brute force method would be to simply encode the possible > combination of 6- bit characters (4 each) and use a translation table > to the 3x8-bit sets. It would be horrendous, but it would work. Or, > one would have to use a 64-entry table, convert the characters to the > bits, concatenate them, and then break into 8-bit groups, and > reconvert to ASCII. Well, yeah, except that brute force translation table would take approximately 64 megabytes of RAM to store, which makes it a little painful to use. :) So unless you're working on a machine that actually has that much memory available, you're pretty much stuck with splitting apart and reconcatenating the bits and using the 64-entry table. > It also sounds like UUENCODE can't use the control characters. If it > adds 32 to the value, it means that values less than 32 to start, when > subtracted from, would give an encoded value less than zero. No, you missed part of it. I think you still split the bits apart using that "tray example" method I showed you. The resulting 6-bit values have 32 added to them. Which makes it pretty identical to base64 except that 64 entry table being used is actually a subset of the standard ASCII table starting at ASCII 32. I think the first character of the line is also a count of how many characters are on that line in UUencode. Hmmm... waitasec... if you mean in the encoded data, then no, neither base64 nor uuencode uses control characters in the encoding. UUencode depends on the end-of-line characters for a crosscheck, since it has a length byte on each line. base64 just ignores any whitespace. Dave (JUST.DAVE, CAT23, TOP19, MSG:9/M530;1) >>>>> A2.CHARLIE """"" If you're just looking for theory, it's simple enough. (Note: Some of the details may not be completely accurate.) You process the file to be converted in chunks of three characters (padding with zeroes at EOF?). Say you have the following three values in a particular chunk of data (shown here in binary): 10110101 11010010 01101101 To convert them, you take the top two bits off of each number, concatenate them together to make a fourth six-bit byte: 10110101 11010010 01101101 || || || ------>----------->------------> 00101101 So you end up with: 00110101 00010010 00101101 00101101 Then you add 32 ($20) to each resulting value to get a number in the range of 32 to 96 (ASCII value of printable characters). For each line of output, put the line length (normally 77 characters? - an uppercase 'M') followed by the encoded characters. A zero length line terminates (?). Hope it helps. ...Chris (K.FLYNN, CAT23, TOP19, MSG:11/M530;1) <<<<< Chris, """"" I've just become interested in this subject, and I'm wondering about creating a utility for the Apple II (8 bit) that will encode/decode UU and/or Base64. From what I've seen of Base64 (Dave's explanation), this shouldn't be a major problem. However, I've gotten at least two different takes on how UU does it's coding, so I'm not sure how to proceed there. Andy, over in the Internet RT, said that UU is done this way (which is similar to Dave's description of Base64): | 7 6 5 4 3 2 1 0| 7 6 5 4 3 2 1 0| 7 6 5 4 3 2 1 0| | | | | | | | | | | | | | | | | | | | | | | | | v v v v v v v v v v v v v v v v v v v v v v v v | 5 4 3 2 1 0| 5 4 3 2 1 0| 5 4 3 2 1 0| 5 4 3 2 1 0| While you say... 1 1 0 0 1 0 0 1 0 1 0 0 0 1 1 0 0 0 1 1 1 1 0 1 --- --- --- 0 0 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 1 1 1 1 0 1 0 0 1 1 0 1 0 0 --- --- --- Is there more than one way to do UU? Charlie (A2.CHARLIE, CAT23, TOP19, MSG:12/M530;1) >>>>> Charlie, """"" For some years now, I have been receiving earthquake reports off of packet radio that are uuencoded. I use a standard decoder that I think I got off of AOL back when Apple //s were legal there. Being an inquisitive fellow, I also remember downloading a file or two that included the format for uuencoding and some source code (in C). If you like, and if I can find it - which I think I can, I'd be glad to upload it for all to see. Bob, AF6C (R.ECKWEILER, CAT23, TOP19, MSG:16/M530;1) >>>>> UUENCODE was developed to allow sending binary files over digital """"" communication links. Many of these links allowed only the transmission of the standard printable ascii characters. Control codes were used for other functions. Also, many of these links truncated spaces and blank lines. UUENCODE expands the file to be transmitted by 33% (plus overhead) by converting the binary file into one of 64 printable ascii characters thru . Also, since the space can be truncated on some systems, later versions of UUENCODE further translate the space into the back apostrophe (`) ascii 96. Three 8 bit bytes are encoded at a time. The 24 bits are separated into four six-bit 'bytes' and 32 is added to each of these 'bytes' to make it a printable ascii character. Let's convert $AB CD EF: 10101011 11001101 11101111 <= $AB CD EF in binary (3 bytes) 101010 111100 110111 101111 <= group into 6-bit "bytes" 00101010 00111100 00110111 00101111 <= put it in 8 bit byte form by adding two leading 0 bits. ($2A 3C 37 2F) 01001010 01011100 01010111 01001111 <= add 32 ($20) to each byte ($4A 5C 57 4F) J \ W O <= equivalent ascii Before going any farther, here is a two line text file and how it appears after UUENCODING. Of course UUENCODING a text file is kind of a waste, but it makes a good example. Here's the test file (each line ends with a ): Now is the time for all good men to come to the aid of their party! The quick brown fox jumps over the lazy dog. And here's that file UUENCODed: begin 644 testfile.txt M3F]W(&ES('1H92!T:6UE(&9OGD@9&]G+@U46 `` end size 113 The "begin 664" tells the decoder that uuencoded data follows and the "testfile.txt" is the filename that the file will be given. The encoded data then follows. Each line starts with a line length character and optionally ends with a checksum character. Notice that each of the first two lines start with a capital "M". This is a line-length character. "M" = ascii 77 minus the 32 offset = 45. But if you count the characters on one of those lines there are 62 characters. (61 characters if there is no checksum.) The 45 refers to the number of 8-bit bytes in that line prior to encoding. Forty-five bytes corresponds with 60 characters + one length and one checksum character adds to 62. Likewise the 7 line length character on the third encoded line refers to 23 bytes. If the number of bytes on the list line is not divisable by three the last group of four characters may only partially used. Some programs seem to pad zeros and others leave garbage. Since the number of bytes on the line is known this is not a problem. In the example above the last four ascii characters (+@U4) decode to $2E 0D 54 which is the ending period for byte 112 and a carriage return for byte 113 (the last byte) followed by "T" which is ignored garbage. The next line just contains two back apostrophe characters, which marks the end of file (Line length of zero). The "end" is a marker to tell the decoder that it is finished. Sometimes more than one file is encoded and another "begin" is encountered instead of the "end". UUENCODE allows for more than one file to be transmitted. The "size 113" is generated by the program I use and is not used by the decoder. It is just ascii information and in usually not present when sent. The checksum presents a problem across different versions of UUENCODE. Most programs have a feature to allow ignoring the line checksum. Richard Marks in his program uses the sum of all the encoded characters, before adding the mapping, modulo 64 as the checksum. This appears to be the correct method (according to information I've read - but I'm no expert). The version written by Mark Horton and ported to the IIgs by Jeff Noxon uses a different scheme; he uses the sum of the original, not the encoded characters. The version I used to encode the short text message above is the Horton/Noxon version. The Norton/Moxon version of UUENCODE and UUDECODE is available in the A2PRO library as file 4926. Hope this helps some, \ ___\ ___\ \ !\ \ A Bob, H AF6C (R.ECKWEILER, CAT23, TOP19, MSG:17/M530;1) >>>>> A2.CHARLIE """"" || Andy, over in the Internet RT, said that UU is done this way...: || || While you say... Don't listen to me. :) I just pulled that off the top of my head from some point in time from the ancient past. That means more than a couple of weeks ago. :) I double-checked and you're correct. Three eight-bit bytes at a time are packed into a bit stream and chopped back up into four six-bit bytes. The order of the bits does not change. The actual format appears to be: begin end Each encoded line consists of a length byte followed by up to 60 encoded (45 unencoded) characters. The length byte is the ASCII value represented by 32 plus the number of unencoded characters in the line. Any encoded value that would be a space character (including the length byte) is replaced by the back tick character (`). ...Chris (K.FLYNN, CAT23, TOP19, MSG:19/M530;1) <<<<< Hmmm... """"" Somewhere in the last few days I've seen that mentioned as the backslash (\). I did see that you put two back ticks (``) on the line following the last encoded line, and then on the next line you put the word "end". Am I confused (probably)? Charlie (A2.CHARLIE, CAT23, TOP19, MSG:20/M530;1) >>>>> A2.CHARLIE """"" || Somewhere in the last few days I've seen [`] mentioned as the backslash || (\). Nope, it's definitely a backtick according to the source code I saw. || I did see that you put two back ticks (``) on the line following the || last encoded line, and then on the next line you put the word "end". || || Am I confused (probably)? Yep, but only about me showing two backticks. I didn't say that, though it looks fine to me. ...Chris (K.FLYNN, CAT23, TOP19, MSG:21/M530;1) >>>>> Yes, the last line (before the END, which is optional - it could be """"" another BEGIN for another file) has one or two back ticks (could I have said backslash by mistake?). The back tick is SPACE which is 32 which decodes to zero. Thus the line length of the last line is zero. The second back tick is the checksum, also zero. \ ___\ ___\ \ !\ \ A Bob, H AF6C (R.ECKWEILER, CAT23, TOP19, MSG:24/M530;1) [EOA] [BAN]////////////////////////////// FILE BANDWAGON / ///////////////////////////////// Top 10 Files for February """"""""""""""""""""""""" by Douglas Cuff [D.CUFF] This feature lists the ten most popular files for the month. To give files a chance to seek their own levels, no files will be added to the list until they've been in place at least a month. This month, we look at the files uploaded 1-28 February 1997. This isn't the Academy Awards ceremony, folks; it's more like the People's Choice Awards (both of which are trademarked, by the way). The Top 10 doesn't necessarily tell you what's new and interesting--what files _you_ might find interesting--it simply tells you what files have been downloaded a lot--what other people found interesting! This month, GenieLamp A2 occupies four spots on the list, but we're just counting that one file. We hope this explains why there are 13 files on the Top 10 list. File # Filename Bytes DLs Short description ------ --------------- ------ --- ------------------------------------- 28342 A2.DOM.9702.BXY 416640 82 A2 Disk of the Month, Jan/Feb 1997 28307 MEGABOX201.BXY 19840 61 MegaBox 2.0.1 - NDA Music Player 28302 ALMP9702TXT.BXY 64896 53 GenieLamp A2 February 1997 Text 28301 ALMP9702AWP.BXY 72192 51 GenieLamp A2 February 1997 AWP 28313 PATCH.INFO.BXY 10368 36 AppleWorks 5.1 Patcher Information 28336 ALMP9702.HS.BXY 95360 25 GenieLamp A2, Feb. 1997 (HyprStudio) 28309 BESTMODS.01.BXY 1272704 25 Best MODs Collection Number 1 28304 A2.JAN.ADB.BXY 3228 24 ADB Update of A2 Library Index - JAN 28334 BESTMODS.06.BXY 1064448 21 Best MODs Collection Number 6 28305 FEB97DESK.BXY 467484 21 Desktop background INIs for Feb. 97. 28300 ALMP9702.ASC 119992 20 GenieLamp A2 February 1997 ASCII 28321 BESTMODS.04.BXY 1086592 18 Best MODs Collection Number 4 28339 BESTMODS.08.BXY 908544 16 Best MODs Collection Number 8 A2.DOM.9702.BXY Genie's A2 Disk of the Month has moved to a bi-monthly """"""""""""""" schedule. This edition begins with the Dean's List and two issues of GenieLamp A2 (January and February 1997). In the directory for all Apple II's, there's AutoMenu, a BASIC program selector to run only the executable files on your drive, and Fresh.It.Patch, instructions to patch AppleWorks v5.1 so that the desktop does not shrink each time you re-run it. In the Apple IIgs folder, there's FontViewer, v2.0 of the genealogy program Pedigree, and two picture-viewing utilities, Eye (a Finder extra that needs to be placed in System:FinderExtras) and GIFview, a quick 'n' dirty program for GIF graphics. Freeware and shareware. MEGABOX201.BXY MegaBox v2.0.1 by Rolf Braun is a music-player in an NDA """""""""""""" that can handle SoundSmith, Midi Synth, and NoiseTracker GS music files. The program hasn't changed since v2.0; only the documentation and some supplementary files, which are now included. Either public domain or freeware; the documentation isn't clear. ALMP9702TXT.BXY Four editions of the February issue of GenieLamp A2 grace """"""""""""""" our Top 10 list this month--in order of popularity, the standard text file edition, the AppleWorks word processor edition, the HyperStudio edition, and the "linefeeds added" unshrunk text file edition. All four editions feature the same great articles--the reinstatement of A2Pro RoundTable coverage, a review of Quick Click Morph, and a profile of software author Bret "Slixter" Victor. Freeware. PATCH.INFO.BXY Here are two files detailing the AppleWorks patches made """""""""""""" available in Bev's Free Patcher v6.5, available from Beverly Cadieux of Kingwood Micro Software / TEXAS II. The lion's share of the approximately 130 patches are for the most recent version of AppleWorks, v5.1. These two files are freeware. BESTMODS.01.BXY Part 1 of a series of "Best MODs" (music modules) """"""""""""""" uploaded by Russell Nielson. These 9 Amiga music modules may be played using favorite MODule player--Nielson suggests Deskplay: Captive 2, Dirty Mary 2, FunkySong, Kingdom of Pleasure, Leave Me Alone, Living Proof, LK (Lizard King), Pelforth Blues, Spacedweeb, Taproot, The Code of Pulse, and Walking in the Space. Freeware. A2.JAN.ADB.BXY An AppleWorks data base file of all the uploads to Genie's """""""""""""" A2 library during the month of January 1997--42 files in all. Freeware. BESTMODS.06.BXY These 9 Amiga music modules may be played using favorite """"""""""""""" MODule player: Acid Jazz, Clairvoyance, Decibel Overload, Fury Forest, Glutturale, Love Anarchy, Nitabrowski, Odyssey Part 1, and Street Jungle. Freeware. FEB97DESK.BXY A collection of 61 pictures in .INI format, to allow the """"""""""""" graphics to be used as the background for desktop programs (replacing the standard periwinkle blue). Almost all of these pictures focus on Valentine's Day--cupids, hearts, flowers, and the like--and as usual, there are many variations on some of the graphics (larger and smaller versions, mirror images, different backgrounds). Of the Valentine graphics, the best in my opinion are HEART3.INI (showing candy hearts with messages on them, or "conversation candies") and HEARTS2.INI, a nice pattern of large and small red hearts on a white background. There are a few graphics not on the Valentine theme: GRHOGDAY.INI, concerning Groundhog Day (February 2); PRESDAY.INI, concerning the American holiday President's Day (February 17); and RED.DRAGONa.INI, concerning a holiday I confess I am in ignorance of. (Readers?) Two graphics which may appear to be exceptions are the series CHRSTY3A.INI, CHRSTY3b.INI, CHRSTY3c.INI, which are very abstract representations of a heart pattern (and therefore not limited to use at Valentime) and the series VAL1.INI, VAL2.INI, VAL3.INI, which are sirds, or hidden three-dimensional pictures. (Avoid the last one, VAL3.INI, which has been imperfectly translated.) Freeware. BESTMODS.04.BXY These 9 Amiga music modules may be played using favorite """"""""""""""" MODule player: CPLX TaiPan Preview, Hmmmmma, Let there be Funk 2, M0rk Sone 2, Rubicon, So What, Tan, Technomania, and Tranzeseven. Freeware. BESTMODS.08.BXY These 9 Amiga music modules may be played using favorite """"""""""""""" MODule player: Enigma, Entity, Gratitude, Herald, It's Phenomenal, Klisje Paa Klisje, Macnormalia, Mandelforce, and Marek Bilinski. Freeware. [EOA] [PDQ]////////////////////////////// PD_QUICKVIEW / ///////////////////////////////// Yours For The Asking """""""""""""""""""" by Douglas Cuff [D.CUFF] Program Name: Change-A-File Filename: CF.4.22.BXY Program Number: 24287 File Size: 27392 Program Type: utility Author: Harold D. Portnoy Version Reviewed: v4.22 File Type: freeware & shareware Requirements: Apple IIe, IIc, IIgs FROM THE AUTHOR CHANGE-A-FILE is a batch file utility that reads """"""""""""""" AppleWorks Word Processor (AWP) and text (TXT) files; converts AWP files to TXT files, TXT files to AWP files, and AWP 3.0 (AWP 4) files to AWP 2.x files; restores damaged AWP and ADB (data base) files (including AW4); change file or auxiliary type codes, and strip or insert line feeds. Up to 88 files in a directory or subdirectory can be altered. This program uses the ProSel format. CHANGE-A-FILE is particularly useful to the AppleWorks (AWKS) user and to prepare files for uploading or alter files after downloading. [*][*][*] . __ (^) <^> /~ ~\ \-=======_/"\_======-/ \) PD_Q RATING "\. 1 ./" """"""""""" "\._ _ _./" . __ (_____) . __ (^) <^> /~ ~\ (^) <^> /~ ~\ \-=======_/"\_======-/ \) \-=======_/"\_======-/ \) "\. 2 ./" "\. 3 ./" "\._ _ _./" "\._ _ _./" (_____) (_____) . __ . __ (^) <^> /~ ~\ (^) <^> /~ ~\ \-=======_/"\_======-/ \) \-=======_/"\_======-/ \) "\. 4 ./" "\. 5 ./" "\._ _ _./" "\._ _ _./" (_____) (_____) FIVE LAMPS (1-5) PD_Q COMMENTS Change-A-File is a utility that comes in two parts. The """"""""""""" first part is free--three commands for manipulating text files, one command for typing text and AppleWorks word processor files (to the screen or printer), and one command for altering file types--five commands in all. The three commands for manipulating text files-- L- Strip Linefeed C- Strip Control Character I- Insert Linefeed --are not unique to this utility, but I like the batch implementation here. You can choose to strip or insert linefeeds, which is value to those who know that Apple, IBM, and UNIX all use different "newline" (or "end of line") sequences. Apple uses the carriage return online. IBM uses the carriage return plus linefeed. UNIX uses the linefeed only. You begin to see why inserting and removing linefeeds are important. If you the World Wide Web a lot, you'll probably find yourself with a lot of UNIX text files. Change-A-File not only lets you strip the linefeeds, but optionally lets you change the linefeeds to carriage returns--very useful indeed. To be sure, there are other utilities to handle the insertion and stripping of linefeeds--AppleWorks can now handle this internally with a simple macro, for instance--but I've found none so handy as Change-A-File. The ability to strip _any_ control character is also handy, even if the interface is slightly counter-intuitive--it sends me diving for the documentation file every time. To strip Control-Z, for example, press Z (not Control-Z) and then Return. The utility to view TXT and AWP files is nice, too, but it can only scroll forward, not back, as File-A-Trix does. On the bright side, it handles AppleWorks centering and indenting commands properly, which is more can do. To be honest, I keep forgetting about the ability to change the file type, auxiliary type, and the eight bits of the access code--so many other utilities offer similar capacity with a similar interface. All five commands I've described so far are absolutely free, and make the program well worth having because of its handy interface. If you pay author Harold Portnoy a mingy $10, you'll get a password to unlock Change-A-File and will get six more commands. When unlocked, Change-A-File really comes into its own. W- AWP File to TXT File T- TXT File to AWP File X- AWP 3-5 to 2.x File E- Exhume AWP File D- AWP File Doctor (AW 2-5) R- Repair ADB File (AW 2-5) The ability to change AppleWorks files into text files is nothing new--AppleWorks now handles the matter perfectly adequately--but again, this program makes it even easier. It's actually worth the hassle of quitting AppleWorks and launching the Change-A-File program--praise doesn't get any richer than that. For starters, you can be sure that your centered and indented text will be treated properly. You can translate a slew of files at one time, and you can easily choose to have each line end with or without a hard return. The routine to change TXT files into AWP files isn't quite as good--it doesn't always update the screen display properly when you first load the file--but it's still an appreciable time-saver. You can start working with a large pre-converted file more quickly than you can a text file. The latter has to be loaded onto the desktop and then converted for the word processor module once you enter the file. The second stage takes time. The file recovery and repair utilities are life-savers. I don't suppose I've had to use them more than half a dozen times in the last three years, but each time they've come through for me. "Exhume AWP" is the first command to try on word processor files that won't load, and if that doesn't work, you move onto the "AWP File Doctor". (You can sometimes benefit from trying both commands.) "Repair ADB File" does much the same thing, except--obviously--for data base files, and for that reason is even more valuable. With a word processor file, there are always alternatives, but a data base file is much trickier to resurrect, making the final of the six commands useful indeed. SUMMING UP If I had to list the two utilities I use most on a daily """""""""" basis, Change-A-File would come third, after the File-A-Trix Classic Desk Accessory (Apple IIgs only) and Cat Doctor (part of the commercial ProSel package, available in separate Apple IIe/IIc and IIgs versions). It keeps growing with me as I want to send out text or collect it, and I wouldn't want to be without it. RATING SYSTEM """"""""""""" 5 LAMPS.........What? You haven't downloaded this program YET? 4 LAMPS.........Innovative or feature rich, take a look! 3 LAMPS.........Good execution, stable program. 2 LAMPS.........Gets the job done. 1 LAMP..........A marginal download. 0 ..............GenieLamp Turkey Award! [EOA] [BTS]////////////////////////////// BEHIND THE SCENES / ///////////////////////////////// With _Juiced.GS_ and the Spectrum Internet Suite development team """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" by Max Jones [M.JONES145] (C) 1997, Max Jones, Juiced.GS All rights reserved The Apple II world has been buzzing since early March when it was greeted with the news that Spectrum Internet Suite, a full-featured World Wide Web browser, had been developed for the IIgs. Final production details are being worked out by SIS publisher Seven Hills Software. If all goes well, SIS could begin shipping during the first week of April. The product announcement, first made in the Winter '97 issue of Juiced.GS and a day later in a Genie Apple II Roundtable Real-Time Conference, may go down as one of the most stunning project developments in Apple II history. While common wisdom dictated that TCP/IP, the complex set of protocols that drive telecommunications on the Internet, would be needed for the IIGS before a Web browser could be developed, Spectrum Internet Suite was designed so that it did not need it. In fact, the basic requirements for running SIS include only Spectrum v2.1, either a Unix shell or Genie account, and a fairly robust hardware configuration with extra RAM, hard drive and high-speed modem. An accelerator is highly recommended. The development of SIS represents an intensive, seven-month project begun last July during Kfest '96 in Kansas City, Missouri. It was then that Spectrum author Ewen Wannop, Seven Hills partner Dave Hecker, and Apple II programmers Richard Bennett and Tim Buchheim, met up with Geoff Weiss, a systems administrator for an East Coast Internet service provider. Discussions among this small group planted the seeds that have now blossomed into a product many thought would never be possible on an Apple IIgs. Wannop wrote the Spectrum add-ons, Weiss wrote the powerful scripts, Hecker guided the development team, and Bennett and Buchheim served as consultants. Also joining the team within weeks of its formation was Ken Lucke, a master Spectrum scripter in his own right who has been involved with Spectrum development since its early days. I had the pleasure of being asked in mid-January by the SIS team and Seven Hills to become a beta tester for the final phase of development. I used what I learned to prepare my article for the Winter issue of Juiced.GS. As it turned out, that article was the first to be published about the project. While doing exhaustive testing on SIS, I also had the opportunity to interview Wannop, Weiss and Hecker about the project. I have compiled major portions of those interviews and am pleased to share them with _GenieLamp A2_ readers this month. [*][*][*] Following are portions of an interview conducted in early February with Spectrum author Ewen Wannop. Juiced.GS> How did Spectrum Internet Suite come to be? """"""""" Ewen> When I got to Kfest last year, the one thing I was hoping to see was """" Derek Taubert's Internet Tools and TCP/IP in action. Accessing the Internet in my opinion was the last big frontier for the IIgs to break through. If it was not able to join the Net revolution soon, then I felt the IIgs was unlikely to survive into the next millenium. Unfortunately, Derek was unable to get to Kfest, and nobody had been authorized to show his work in progress. This left me very frustrated. I had not even started to do anything along Net lines, as I had made assumptions that it would be necessary to have TCP/IP in order to do anything with the Net. Also, I had been very busy right up to the day before I flew to Kfest, getting Spectrum v2.1 ready. During Kfest I met face to face with those who had only been names up to that time. I had been introduced to Geoff Weiss quite early on, as I had borrowed his IIgs and enormous screen for my Spectrum demonstration. It was not until the last night of the fest, after we had got back from Jess and Jim's steak extravaganza, that a small group of us got together in Geoff's dorm room and SIS was born. Juiced.GS> Could you share with us some of what happened that night? """"""""" Ewen> Geoff had his Mac connected to the Net, and many of us had been """" browsing with it over the three days of the fest. That fateful night, Richard Bennett, Tim Buchheim, Dave Hecker, Geoff and myself started talking. We all lamented the fact that Derek Taubert had not finished his TCP/IP, and that this was really holding us all up in getting connected to the Net with the IIgs. Geoff then dropped a bombshell. He said that you did not TCP/IP to access the Net, and that there was another route that anybody with an ISP provider could use. Geoff asked us to give him a Web URL, and then he then proceeded to type a few commands into his Mac. Lo and behold, HTML poured onto his screen! I think all our mouths just dropped in unison as the implications of this struck home. Richard and myself were aghast. If we had known about this sooner, I am sure we would have been showing working browsers and other Internet goodies at Kfest last year! We quickly realized we now had some very important information, and so a working group was instantly set up with those who were grouped in that dorm room. Seven Hills was to mastermind the project, and they agreed to publish it. The moment I got back home to England, I started working on the browser. Within a month or so, I had the first Beta version available for testing. Juiced.GS> But wasn't SIS a combined effort? """"""""" Ewen> Until I had a working browser, or at least one that could interpret """" HTML and display it meaningfully, nothing much else could happen with the project. I had decided quite early on that the quickest way to get anything working was to use the existing power of Spectrum. There was no point in reinventing wheels. For this reason the browser was built as a drop-in Spectrum Online Display. In order to control the special display, I made it also conform to XCMD structure. This meant it was a new kind of hybrid display and XCMD, so I simply called it an XDisplay. With the first test version, I had prepared a very simple script that could at least tell me that it was working, and could load in HTML text files to test the display. I uploaded this to the testers, and concentrated from there on on the actual display itself. Geoff Weiss and Dave Hecker started working on the scripts straightaway, but very soon Geoff, with his amazing knowledge of how the Net works, took the scripts on, and has worked on them ever since. The scripts are really the core of SIS. The browser actually interprets the HTML and displays it, but apart from a few functions that were better done in assembler, the main part of SIS is achieved by the controlling scripts. It only goes to show that we really do have a very powerful scripting language in Spectrum! The beta testing team grew over time, and their contributions were invaluable, not only in reporting bugs, but in helping us decide what should and should not be included in the browser. The title 'Spectrum Internet Suite' or SIS, was coined quite early on. Juiced.GS> What has your life been like over the last seven months since """"""""" SIS was born? Ewen> Well, that is an easy one. It has really been no different from the """" previous five years or so during Spectrum develop. Oh, and I suppose my e-mail count has risen somewhat. One day, I think I counted over a hundred messages whizzing around the testers. Apart from the unfortunate need to go to work every so often, my days are filled from morning till late at night, debugging, testing and developing. The one thing that has changed though, is that work on the browser, and its various parts, has taken precedent over Spectrum itself. I have an increasing list of things that need to be done for any future versions of Spectrum, but have just not had the time to tackle them. Juiced.GS> Where do you see SIS going from here? """"""""" Ewen> We are very pleased and excited to have made the IIgs access the Web """" through SIS. There are some limitations with the access method we currently use, and if Derek Taubert ever gets his TCP/IP finished, then I would hope that we could link into that, and give SIS more flexible access to the Net. The scripts can be further developed to provide even more of the features that are normally expected from Net access. Geoff had not done much Spectrum scripting till he tackled this project, and I think he was suprised how powerful and flexible Spectrum scripting was. If we can keep him at it, I am sure we might see even more SIS features in the future. We were not able to provide onscreen graphics as part of the display. Fast as the IIgs may be, it was just not up to the speed required, or the screen resolution needed, to show pictures. Perhaps we could do something with showing graphics on demand, but this will depend on some other key features being resolved first. Juiced.GS> What are your plans for the future? """"""""" Ewen> I shall have much more time on my hands after the beginning of """" April. I plan to spend a great deal of it in front of the keyboard. There are still many projects that I would like to tackle, which I have just not had time to even start until now. The IIgs is definitely not dead as we have just proved. It has a great deal of life left in it yet! [*][*][*] Following is an edited transcript of an interview conducted in early February by Juiced.GS with SIS scripter Geoff Weiss. Juiced.GS> How did you come to be involved with the birth of Spectrum """"""""" Internet Suite at Kfest '96? Geoff> Dave Hecker and Ewen Wannop tended to hang out in the area near my """"" room. I stumbled into a conversation with two other people and learned that Seven Hills was given a suggestion of how to possibly design a Web browser for the IIgs without using TCP/IP. I was in disbelief how easy the network connection worked and wanted to test it out immediately. We used my roommate's local (Kansas City based) ISP to connect to my work. The commands we initially tried did not work. All of a sudden, I recognized the commands as something I had seen in operating our Web server. After a few minutes in getting to the right file, I figured out what we were doing wrong. We went through the set of commands and lo and behold, the entire contents of my company's home page was displayed in its pure HTML form. I remember being stunned thinking that was incredibly simple and couldn't believe a Web browser couldn't have been developed for any Apple II in four years. After a little more work, I figured out how to access pages besides the home page of a site. I remember this being an incredible day and saw that my IIgs could last a few more years as my sole computer. It was decided that since Spectrum is a WYSIWYG IIgs telecommunication program, a Web Browser could be easily developed using much of the built-in macro functions. The display that generates the Web page would be written in assembly langauge by Ewen. Just about every other Web Browser in existance is based on a set of C library routines, but this GS Web browser would use assembly for the quickest page generation possible. Juiced.GS> At what point did you become part of the development team? """"""""" Geoff> Roughly six weeks after KansasFest, Dave (Hecker) gave me the """"" option to be a beta tester for the browser. Of course I accepted since I wanted to be one of the first people to browse the Web on a IIgs. The script I received was written to work only on Genie. I rewrote the network connection so it worked with my ISP. In less than an hour, I could load my Web page on my IIgs. This was very exciting. But, the user interface was very, very simplistic. After the browser started, one had to select a menu item to bring up a window to enter a Web server on one line and the Web page on another line. I found this interface to be very, very clunky since I use Lynx and Netscape Navigator all the time. I spent a bit of time modifying the interface to make it "feel" more like the Netscape Navigator. The winow to select a Web server and page was changed to follow the normal URL syntax. More modifications included support for relative URLs and a complete redesign of the menus so it was more intuitive. It wasn't until Thanksgiving when the browser actually started to look like Netscape Navigator with buttons and an URL entry line on a toolbar. A common Netscape Navigator feature like going forward and backward in the History List wasn't added until mid-December. Juiced.GS> What has your life been like the past seven as SIS development """"""""" intensified? Geoff> Since I have a full time job as a system administrator for a small """"" ISP in Washington, D.C., IIgs development is done on a part time basis. I mostly considred writing the browser as "fun." I have to consider this as fun since I'm not going to make any money on the browser (well, I will get some financial compensation based on sales, but any money I make will not cover the time I actually spent on development I put in). There was a time at the first two weeks of November when our system had a major server crash and I couldn't do any work on the browser. It was understood by Dave and Ewen that my priorities were at work and browser development had to wait. At the beginning of January, I was getting frustrated since our network connection started having problems accessing certain Web sites. I was at a point where I thought we had to give up the entire project. There were only a few of us who knew about the browser. I was thinking we could keep it a secret and be the only ones who had Web access on a IIgs. I don't remember when my pessimism wore off, but a few development specs were changed to get around the problems I was facing. Juiced.GS> Now that SIS has been completed and is such an excellent piece """"""""" of software, you must be happy you stuck with it in tough times. Geoff> Over the course of seven months, there were some weekend mornings """"" that I didn't get to sleep until 6 a.m. working on the browser. There were weeks when I got nothing done just trying to resolve a stupid bug. But looking back at it all, it is incredible that a fully functional Web browser could be developed for the IIgs in the spare time of a few dedicated individuals in only seven months. [*][*][*] Following is an edited transcript of an interview conducted with Seven Hills Software partner Dave Hecker in early February. Juiced.GS> Please trace for us the steps leading up to the discovery of """"""""" the Web access method used by SIS and the decision to develop a browser. Dave> Shortly before Kfest I had some exposure to servers, ports, and """" other networking issues that got me wondering if there wasn't a way to retrieve web pages without requiring TCP/IP. At the Kfest roast I sat between Richard [Bennett] and Ewen, and by a stroke of luck Tim Buchheim was sitting across from me. I was asking Richard and Ewen, "How does this work" and "How does that work", and eventually I put it all together. "So if I did X and Y (without a TCP/IP connection), could I retrieve the HTML code for a web page?" Here's where the luck comes in: While Richard was pondering, Tim pipes in, "Sure! You just do X and Y, then A and B, and you'll get the HTML code." Back in the dorm that night, we were talking again and really wanting to do a little testing of our newly-assembled knowledge. Luck visits again, and Richard asked Geoff Weiss if we could borrow his Unix account. "Sure!" Geoff pounds out some commands. Close. A few more. Closer. A few more. Bingo! There's the full text of a Web page! Disbelieving what he just saw, Geoff tries another site. Bam! Then another. I asked Richard a few more questions, and Geoff offered some answers. Turns out he administers a Web server and knows a LOT about a missing piece of the puzzle! From there the idea just took off. Within a few short weeks after Kfest we were actually cruising the web! On a IIGS! Without the "required" TCP/IP! AMAZING! Juiced.GS> Amazing, indeed. But the method of getting to that point turned """"""""" out to really be quite simple? Dave> For what it's worth, the solution to not needing TCP/IP had existed """" all along ... it just took some luck to ask the right questions of the right people at the right time! In hindsight, the solution was so obvious we could not believe no one had thought of it before. [*][*][*] >>> ABOUT JUICED.GS <<< """"""""""""""""""""""" _Juiced.GS_ is a quarterly printed magazine dedicated to the people and products that keep the Apple IIgs going strong. In 1996, the magazine's inaugural year, _Juiced.GS_ went out to 295 paid subscribers in 42 states and 11 foreign countries. SUBSCRIPTION INFORMATION: A 1997 subscription is available for $14 in the U.S., Canada and Mexico; $20 elsewhere in the world. A set of the four 1996 issues is also available for $14 in the U.S., Canada and Mexico; $20 elsewhere. Renewals: If you were a 1996 subscriber, your subscription expired with Volume 1, Issue 4, Fall '96. If you have not yet renewed your subscription, or did not also subscribe for 1997 when you purchased your 1996 subscription, now is the time to renew. The Winter '97 issue (Volume 2, Issue 1) was published the first week of March. New subscriptions and renewals should be addressed to: Max Jones Juiced.GS 2217 Lakeview drive Sullivan, Indiana 47882 Send checks or money orders in U.S. funds payable to Max Jones. Sorry, no credit cards or purchase orders can be accepted. _Juiced.GS_ has a home page on the World Wide Web. Pay us a visit the next time you're cruising the web. The URL is: http://users.ids.net/~kerwood/juiced.gs E-mail to _Juiced.GS_ should be directed to: Genie: M.JONES145 Delphi: JuicedGS Internet: m.jones145@genie.com -or- juicedgs@delphi.com [EOA] [RWA]////////////////////////////// THE REAL WORLD APPLE / ///////////////////////////////// Connecting to the World Outside """"""""""""""""""""""""""""""" by Peter C. Brickell [P.BRICKELL] >>> PART 3B: BUILDING AN APPLE II TEMPERATURE SENSOR<<< """""""""""""""""""""""""""""""""""""""""""""""""""""""" In this installment I will be carrying on from my previous discussion of the theory of using thermistors as temperature sensors for the Apple II. I'll give some specific information on building a practical thermistor circuit for the Apple game port. First though, I'll review the last two installments. In Part 2 I talked about how timing delays can be programmed into the Apple to do elapsed time measurements. I gave some simple examples in Applesoft. Machine language can also be used for greater accuracy of timing. In Part 3a I described how the Apple's paddle input lines are used to indirectly measure resistance using a built in timing routine. The usual type of resistance which is measured by these lines is the variable resistors in a set of paddles or a joystick. In these cases, the value of the resistance is directly related to the position of the paddle or joystick. I discussed how a temperature sensitive resistor (thermistor) can be substituted for the paddle or joystick resistor to allow the Apple to crudely measure temperature with the PDL() command from Applesoft. I also stated that for better accuracy of measurements with a thermistor that a machine language routine, a larger capacitor in the circuit, and some form of calibration program are needed. Now, on with the show! >>>SOFTWARE<<< """""""""""""" To measure temperatures accurately you will need a machine language program which can accurately time the charging of the larger external capacitor used in this design. The project is taken from the book "Chaos in the Laboratory" by Vernier Software, and a program disk is included with the book. The book (which contains many other Apple II interfacing projects) is priced at $25.95 according to their 1997 catalogue. It has a suitable temperature measuring routine on the disk and an Applesoft output program which can be easily modified to suit the user. You will also require a calibrating program. This is also included on the disk that I mentioned above. Enterprising programmers who feel up to writing their own routines will not need these. The general idea is that three variable values must be established to accurately describe the thermistor temperature response. This means setting up and solving three simultaneous equations (which is more programming than I was prepared to take on) Using the Vernier software I have been able to read temperatures accurately to about 0.2 degrees Fahrenheit. I will describe some project modifications at the end of this article to allow crude use of a thermistor probe without the software I mentioned above, but for accurate temperature measurements, you will need these programs and the following design. >>>HARDWARE<<< """""""""""""" You will need only three parts to build the thermistor sensor for the Apple, other than some wire and your soldering equipment and skills. You will need: 1) A thermistor with a negative temperature coefficient (i.e. resistance goes down as temperature goes up). The room temperature resistance should be about 10 k ohms. These are available at Radio Shack and electronics shops. They should cost less than a dollar a piece. To start with, a plain bead type is satisfactory. I will get into some of the variations later. 2) A 4.7 microfarad capacitor rated at 10 volts or more. Some are much better than others at keeping their capacitance constant over a range of temperatures. The best are the metalized plastic caps (polyester, polypropylene, polycarbonate). The least stable (but cheapest) are electrolytic and tantalum types. Note: these last two types are polarized. You must install them with the correct polarity. 3) A 16 pin DIP (Dual Inline Package) plug to fit into your Apple's game I/O port. If you are using a //c for this, you will need a DB-9 "D" style male connector to plug into your game port. Again, Radio Shack or an electronics supplier should have these. The only other materials are some thin, insulated wire and some insulating tape. For those who may not wish to hunt around for components, Vernier Software at one time sold a parts kit for this project. I don't know if it is still available, but it may be worth asking. >>>ASSEMBLY<<< """""""""""""" Once again I am assuming that you know how to use a soldering iron and have some familiarity with electronics assembly. Even though you are not working directly on your computer, a mistake in assembly could damage your Apple once you connect the sensor to the computer. If you aren't sure about how any of this is done, have a friend who is familiar with electrical work give you a hand or check your work over before plugging it into your computer. 1) Decide how long a lead you want for your temperature sensor and cut two wires this length. Solder one to each lead of your thermistor. At this point you should insulate the bare leads of the thermistor. If you don't, they may touch and short out during use. This won't cause any damage, but will give erroneous temperature readings. 2) Connect one thermistor wire to the +5 volt line on your game port plug. On the 16 pin DIP plug, this is pin #1. If the pins are not numbered, the end of the plug with the #1 pin will be indicated with a notch or some other marking (see the following ASCII schematic). Looking at the top of the plug, the #1 pin will be at the top left. On the DB-9 plug for //c users, the +5 volt line is pin #2. These pins will usually be marked. 3) Connect the other wire from the thermistor to the PDL 0 line. On the 16 pin connector it is pin #6. On the DB-9 connector, PDL 0 is pin #5. 4) Solder a shorter wire to each lead of your capacitor. Mark the positive wire if you are using a tantalum or electrolytic capacitor. Otherwise the two leads are interchangeable. You may want to mount the capacitor on a small circuit board or in a plastic box to protect it and keep it out of the way. 5) Solder one capacitor wire to the PDL 0 line as you did in (3) above with the thermistor wire. If you are using a polarized capacitor, this MUST be the positive (+) wire from the capacitor. 6) Solder the remaining capacitor wire to the ground (GND) pin of the game port plug. On the 16 pin connector this is pin #8. On the DB-9 connector, the GND line is pin #3. ASCII ART BEGINS 16 PIN I/O CONNECTOR (from above): _________ __________ | \____/ | +5 V | 1 X 16 | | | | 2 15 | | | | 3 14 | | | | 4 13 | | | | 5 12 | | | PDL 0 | 6 X 11 | | | | 7 10 | | | GND | 8 X 9 | |_________________________| THERMISTOR CIRCUIT SCHEMATIC: +5 V ________________ | | / \ ( T ) Thermistor \ / | PDL 0 _______________| | | + ____|____ _____ Capacitor / | \ (+/- apply if polarized) / | \ | - GND ________________| ASCII ART ENDS That's it! You now have a thermistor temperature sensor for your Apple. Before you plug it in, check your work carefully to be sure that nothing is incorrectly wired, shorted, or incompletely soldered. This project can even be built without soldering if you use a small breadboard for assembly and a crimp-type 16 pin plug. I don't recommend this approach for any type of permanent installation, and the accuracy may be slightly affected by the built in capacitance of the breadboard itself. However, for experimentation it is a very easy and quick way to work. To test out your work, check the resistance between pin #1 and pin #6 (pins 2 and 5 on the DB-9). It should read approximately 10 k ohms (the same as your thermistor). The resistance should also decrease as you warm up the thermistor with your fingers. Pins #1 and #8 (2 and 3 on the DB-9) should have an infinite resistance, as should pins #6 and #8 (3 and 5 on DB-9), although you may get a momentary low resistance reading as the capacitor charges up. If all this checks out, you are ready to proceed. To use the sensor is very simple. Turn off your computer and plug in the Game Port plug into the appropriate socket (16 pin socket inside a ][ Plus, //e, or //GS, or the external DB-9 socket for a joystick on the //c). With the 16 pin connector, make absolutely sure that you plug the pin 1 end of the plug into the pin 1 end of the socket. Very bad things can happen if you do this backwards! Both the plug and the socket will have some type of marking or notch to indicate which is the pin 1 end. Also, be careful not to mis-align any pins when putting in the plug. Start up the computer and run the temperature measuring software. It will allow you to continuously display timing counts to start with. These should vary as you touch the thermistor and warm it up. Once everything appears to be working properly, you can calibrate the thermistor using the calibration routine that is part of the program for making temperature measurements. The calibration routine requires you to put the thermistor in three different regions of known temperature and input the actual temperature. I put my thermistors inside a plastic bag and immerse them in 3 beakers of water at different temperatures. From then on the program can calculate an unknown temperature by itself and you're in business! >>>MODIFICATIONS FOR SIMPLE APPLESOFT USE<<< """""""""""""""""""""""""""""""""""""""""""" If you don't want to bother with getting special software to try out the thermistor sensor, you can use it in a simplified form with only the PDL command to read a crude temperature. As I described in an earlier installment, you are limited to one of 256 values (0-255) with this command, so it is not really suitable for much more than experimenting. To use a thermistor in this mode, you do not use the 4.7 microfarad capacitor or the connection to the GND line. You also must use a thermistor which has a resistance of approximately 150 k ohms at the minimum temperature that you will want to use it at. This may take a little hunting to find, but most large electronics houses have a fair selection of thermistors. To use such a thermistor, connect the leads to the PDL 0 and + 5 volt lines of your computer directly (see above discussion for pin numbers). In this way it will mimic the action of a game paddle resistor, and you should be able to make readings using the Applesoft PDL(0) command. A simple routine is: 10 HOME 20 VTAB 10: HTAB 15 30 X = PDL(0) 40 PRINT X 50 GOTO 10 This will give you a continuous display of the PDL value on your screen. You will have to make up your own calibration table for the thermistor, and as I mentioned before, it won't be a straight line. Nevertheless an enterprising Apple user can probably make good use of this simple temperature measurement system. >>>MODIFICATIONS<<< """"""""""""""""""" Some substitution of components can be done in the thermistor sensor circuit and still achieve the same results. I found a very cheap supply of thermistors with a room temperature resistance of about 30 k ohms (about three times the recommended resistance). So I substituted a smaller capacitor (1.5 microfarads - 1/3 of the recommended value) and the system works perfectly. What is important is that the value of capacitance times resistance remains roughly the same as that given by the components listed above. You can also substitute different physical types of thermistors, depending on where you plan to use them. There are some which come encased in glass or resin for submerged use, or use in corrosive chemicals. Remember that if the leads get wet, you will short out the thermistor and it will not read properly. I use one of mine to measure the temperature of aquarium water. To avoid having to hunt around for the right resistance of thermistor in a coated design, I just slipped mine inside a small glass tube and sealed one end. This is partially submerged in the water and thus the probe is protected from moisture. The response time of the probe is slower than with a naked thermistor, but aquarium water temperature changes gradually, so it is not important. Thermistor size will affect how quickly it correctly reads the temperature surrounding it (its equilibration time). The smaller the thermistor bead, the faster it will come to equilibrium and read the correct temperature. I use a small bead thermistor (about 2-3 mm in diameter) for measuring room temperature. It responds so fast that I have enclosed it in a sandwich bag to avoid having draughts adversely affect the reading. It should be apparent that you can connect more than one temperature sensor to an Apple, as there are four PDL lines. With modification of the temperature reading program, machine language counting routine, and calibration program this is possible. I have built a system which can read temperatures from thermistors connected to all four PDL lines. It wasn't a trivial programming exercise, but it can be done. So this concludes the section on temperature measurement. The ability to measure resistance via the PDL lines is a great tool for interfacing the Apple. You can get resistors which vary their resistance in response to light, moisture, and other parameters. With suitable design and programming it is possible to use that old ][ Plus to do all these things! Next installment: Reading buttons and switches. >>>APOLOGIES AND EXCUSES<<< """"""""""""""""""""""""""" I must offer my sincere apologies to any readers who have been patiently waiting for this installment of the Real World Apple to appear. Such a long gap will not happen again. As the gracious editors of _GenieLamp_ pointed out I was indeed exploring the real world. Although, after returning to the snows of March at home in Toronto, I'm not sure just how "real" the South Pacific actually was! I would have written this article during the four months that I was away, but I was informed by my new bride (who apparently has known me for far too long) that if she spotted a computer in my possession on the islands of Rarotonga (Cook Islands) or New Zealand, that I would be single again so fast it would make my head spin. Ahhh, the joys of marital bliss! (I think the only reason that I am allowed to keep a computer around is so that I can send her email while she is teaching overseas!) See you next month (promise!). //////////////////////////////////////// Genie_QWIK_QUOTE //// / Indiana's a good place to be FROM. / ///////////////////////////////////////////// J.DWYER8 ///// [EOA] [LOG]////////////////////////////// LOG OFF / ///////////////////////////////// GenieLamp Information """"""""""""""""""""" o COMMENTS: Contacting GenieLamp o GenieLamp STAFF: Who Are We? GenieLamp Information GenieLamp A2 is published on the first of every """"""""""""""""""""" month in library 55 of Genie's A2 RoundTable (page 645;3). GenieLamp is also distributed on CrossNet and many public and commercial BBS systems worldwide. o To reach GenieLamp on Internet send mail to genielamp@genie.com or to reach GenieLamp _A2_, send mail to a2lamp@genie.com o Back issues of GenieLamp A2 are available in the A2 RoundTable Library #55 on page 645 (m645;3). o We welcome and respond to all E-mail. To leave comments, suggestions or just to say hi, you can contact me in the A2 RoundTable (Category 3, Topic 3) or send GenieMail to Ryan Suenaga at [A2LAMP] on page 200. >>> GENIELAMP STAFF <<< """"""""""""""""""""""" GenieLamp o John Peters [GENIELAMP] Publisher """"""""" o Mike White [MWHITE] Managing Editor APPLE II o Ryan M. Suenaga [A2LAMP] Editor """""""" o Doug Cuff [D.CUFF] Editor Emeritus A2Pro o Tim Buchheim [A2PRO.GELAMP] Editor """"" ATARI o Sheldon H. Winick [GELAMP.ST] Editor """"" IBM o Sharon Molnar [SHARON.LAMP] Editor """ MACINTOSH o Richard Vega [GELAMP.MAC] Editor """"""""" POWER PC o Ben Soulon [BEN.GELAMP] Editor """""""" \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\//////////////////////////////////// Opinions expressed herein are those of the individual authors, and do not necessarily represent the opinions of Genie Online Services, Yovelle Renaissance Corp., GenieLamp Online Magazines, or T/TalkNet Online Publishing. Bulletin board messages are reprinted verbatim and are included in this publication with permission from Genie Online Services and the source RoundTable. Genie Online Services, GenieLamp Online Magazines, and T/TalkNet Publishing do not guarantee the accuracy or suitability of any information included herein. We reserve the right to edit all letters and copy. Material published in this edition may be reprinted under the fol- lowing terms only. Reprint permission granted, unless otherwise noted, to registered computer user groups and not for profit publications. All articles must remain unedited and include the issue number and author at the top of each article reprinted. Please include the fol- lowing at the end of all reprints: \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/////////////////////////////////// The preceding article is reprinted courtesy of GenieLamp Online Magazine. (c) Copyright 1996 T/TalkNET Publishing and Genie Online Services. To join Genie, set your modem to half duplex (local echo). Have your modem dial 1-800-638-8369 in the United States or 1-800-387-8330 in Canada. When you get a CONNECT message, wait for the U#= prompt, type: JOINGENIE and hit the RETURN key. Genie will then prompt you for your signup information. If the signup server is unavailable, call (voice) 1-800-638-9636 for more information. ////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ [EOF] ��