═══ 1. Volume 2, Number 1 ═══ Volume 2, Number 1 ═══ 2. January Meetings ═══ For directions to the meeting places and topics for future meetings, see the section "MNOS2 Meetings". ═══ 2.1. General Meeting ═══ What The Mayo Clinic presents READS, an OS/2 product for reviewing digital medical images. When Thursday, January 17 4:00 - 6:00 PM and 7:00 - 9:00 PM Where IBM Minneapolis, Room 626 ═══ 2.2. LAN Server SIG ═══ What IBM's LAN Distance IBM's LAN NetView products Discussion of topics for 1994 When Thursday, January 17, 2:30 - 4:00 PM Where IBM Minneapolis, Room 420 ═══ 2.3. Rochester SIG ═══ What The Mayo Clinic presents READS, an OS/2 product for reviewing digital medical images. When Wednesday, January 16, 7:00 PM Where IBM Rochester, Building 006-1, Room 1100 ═══ 3. From the Prez ═══ Marcus Krumpholz Thanks to the assistance of Sandy Hauer, we are working on Non Profit and Tax Exempt status with the IRS. Once completed, this will allow us to increase the value of our memberships. We have now implemented a new Voicemail/Fax service. This new system features voicemail and "Fax on-demand retrieval". Posted will be our monthly newsletter, meeting information, Membership registration form and other OS/2 related information. More information next month. Marcus Krumpholz is President of the Minnesota OS/2 User Group and a member of TeamOS/2 ═══ 4. Big Bang: Birth & Growth of the Minnesota OS/2 User Group ═══ Lou Miranda An Interview with Bert Moshier, former President of the Minnesota OS/2 User Group. ═══ 4.1. "A Stealth Product" ═══ That's how Bert Moshier used to refer to OS/2: An outstanding product that nobody had ever heard of. But Bert's not the kind of person to let something as small as IBM get in his way. He was thoroughly convinced that OS/2 was the operating system of the future, and he was going to do everything in his power to make sure everyone knew it. And that's the basic concept behind the birth of the Minnesota OS/2 User Group. Why? Why risk a job with Cray Research to promote OS/2? Why write a 26 page letter to the chairman of IBM, describing how horribly IBM was promoting it? Why expend so much energy to start a user group that IBM wasn't even sure it wanted? Those were the kinds of questions that were going through my head as I prepared to call Bert last weekend. To understand the answers to those questions, we have to go back. Back a few years ago, to when Bert was working at Cray Research. The time is 1988. Windows 3.0 is still a gleam in Bill Gates' eye. The current version of Windows is 2.11, and the current version of OS/2 is 1.1. Neither is doing fantastically well in the marketplace, but two Cray coworkers are using them. Bert is the one using Windows, and his coworker is using OS/2. At this point, Bert is a Windows fanatic. GUIs are everything to him; the command line is dead. He's plugging away on an IBM PC/AT with 4 MB of RAM, using Windows Write to produce hundred-page WYSIWYG reports. Or, at least trying to. Being at the cutting edge of technology, Write just isn't cutting it. "I tell it to print, and it chugs along as if everything is OK." But out comes nothing from the printer. You can feel his earnestness as he tells you he was really trying to make it work. As a true believer, he wasn't willing to give up. But his boss just about was. Tired of things not quite working, Bert's boss gave him an ultimatum: Get it to work, or else.... Serendipitously, Bert met a coworker at Cray who was using this "other" operating system: OS/2 1.1. It was the first version of OS/2 that used the Presentation Manager. Bert didn't take to OS/2 right away. Version 1.1 had a number of unpleasant quirks. But through his contacts at a (now defunct) OS/2 user group, he managed to get a beta version of 1.2. This was much more to his liking. He could print large documents without the file corruption he got under Windows, and his 3270 terminal emulation software couldn't take the whole operating system down when it occasionally headed south. By now he was hooked. And when he got a beta version of OS/2 2.0 in March of 1991, he was floored. The first beta release that contained the WorkPlace Shell, in the fall of 1991, had another major impact on him. This was it: The operating system of the future. DOS/Windows couldn't hold a candle to this multithreading, protected mode operating system with an object-oriented user interface. ═══ 4.2. Bert the Visionary, Marcus the Doer ═══ At about this time, Bert met Marcus (Krumpholz, current president of the user group). "I'm great with ideas, but it's Marcus who has the drive and initiative to put them in place." Marcus was servicing Bert's PC when they met, but he wasn't the least bit interested in Bert's constant ravings about OS/2. Bert describes Marcus' reaction this way, "He was pleasant and businesslike. . . but reluctant; it took a while to convince him of OS/2's sophistication." It was around August of 1991 when Bert first presented the idea of starting an OS/2 user group in Minnesota. He eventually got hold of an IBMer in Minneapolis, and put together a statement of purpose for the group. Initially, the group had an OS/2 BBS running at a Twin Cities corporation. But with only one of two phone lines working, and a pitiful 70 MB hard drive, they needed more. Marcus again rescued the group with the suggestion that the BBS be part of The Warehouse, a popular Twin Cities BBS. Not coincidentally, Marcus was friends with the sysop of The Warehouse, and it worked out great (and, in fact, still works out to this day). "Marcus did all the legwork," says Bert, and it's easy to see how. Meetings were initially in the afternoon, but were eventually moved to the evening. This allowed the scope of the user group to be truly statewide, so that users from Rochester would have time to drive to the Twin Cities for the meetings. (Since then, the user group has expanded to have separate meetings in Rochester; again with Marcus as the driving force.) What was Bert's grand vision for the Minnesota OS/2 User Group? When you realize he was willing to take on IBM single-handed, it's easy to imagine his anticipated scope for the user group: o Online and printed newsletter o Classes o Special Interest Groups o Speaker resource for other computing groups o Every machine sold in Minnesota has OS/2 User Group information o When you think computers, you think OS/2; when you think OS/2, you think Minnesota OS/2 User Group o Foundation for a nationwide OS/2 user group Ambitious? Yes. In line with Bert's character? Totally! The Minnesota user group has come a long way since then, first with Bert and then with Marcus at the helm. Some of Bert's ideas have already been implemented, and some are underway now. What he clearly has a knack for is creating an innovative idea, and finding the resources and the people to take that idea to reality. He knows he cannot do everything, but rather encourages others to help him achieve his goal. The combination of Bert and Marcus has taken the user group to where it is today. So what has happened to Bert? He apparently had such an impact on IBM that they hired him away from Cray. He's now Advisory Planner for WorkPlace OS Planning at IBM in Boca Raton Florida. Not bad for someone who was once IBM's worst critic. Lou Miranda is a member of MNOS2's Executive Committee. He can be reached on CompuServe at 73567,471. ═══ 4.3. Footnote from Marcus ═══ Bert has definitely been one of the people who has influenced my life the most. Here I was asking him questions about the Cray computers, then all of a sudden we started talking about OS/2. After 1-2 hours, I was excited to explore this new operating system. Six months later, I received a beta copy. That's all it took -- I was hooked. Since then, being involved with OS/2 and the MNOS2 User Group has expanded my knowledge of computing and the computer industry. Bob Brickweg, an individual of equal importance, managed all of the "behind the scenes" details at IBM. Although his busy schedule does not permit him to attend our meetings regularly, he contacts us frequently. Last but not least, the MNOS2 Executive Committee has invested many hard working hours, without their dedication, none of this would be possible. ═══ 5. REXX Rules of Thumb ═══ Part 1 of 2 Raja Thiagarajan Editor's Note: This article is part 1 of a two-part series detailing six "rules of thumb" for programmers who would like to learn REXX. Since there are plenty of books, articles, and even OS/2 help files that teach REXX, why do we need this article? Because those books, articles, etc. are mostly aimed at people who have *never* programmed before. Thus, they have two major drawbacks. First, they dwell on things that programmers already know, like what a variable is. Second, they don't warn would-be REXX programmers that some things are *different* in REXX, and some of the "habits" that you might carry over from other languages can get you in trouble. This article gives six "rules of thumb" that should help you get started in REXX if you already know C or Pascal (or, really, any of the children of Algol). ═══ 5.1. 1. Start Every REXX Program with a Comment ═══ You already know this. There shouldn't be any reason for me to repeat it. . . except that it's an easy mistake to make, and it ties in with an important concept that we'll get to under the second rule. Here's "hello, world" in REXX: /* hello.cmd -- program to say hi*/ say "Hello, world" Type these two lines in your favorite editor, save the result as HELLO.CMD, and enter HELLO at an OS/2 prompt. Your computer should respond "Hello, world". Under OS/2, you are *required* to start *every* REXX program with a comment. And I *do* mean *start*; if there's so much as a space or carriage return in front of that comment--well, why don't you try that now? Insert a space in front of the comment and try running the program again. You'll see a big fat error message. So: START EVERY REXX PROGRAM WITH A COMMENT. (By the way, the conventions for comments in REXX are simple. Each comment begins with a "/*" and ends with a "*/". Comments can be spread over several lines. Unlike ANSI C or Pascal, REXX permits you to nest comments, so it's *much* easier to comment out hunks of code for testing.) ═══ 5.2. 2. Be Careful About Using Spaces in Certain Places ═══ You've already had a taste of this in the previous rule: If you put a space before the opening comment, your program will bomb. But there are two more places where the significance of spaces will trip up someone who's used to programming in C or Pascal. In REXX, everything is ultimately a string. If you want to concatenate two strings, you can do so by putting the explicit string abuttal operator ("||") between them. You can *also* concatenate them by simply writing one after another (this is known as "implied abuttal"). Please enter and run the following program. /* hello2.cmd -- Another program to say hi*/ greeting = "Hello" say greeting "world" say greeting"world" You should see "Hello world" on one line, followed by "Helloworld" on the second line. Your first guess might be that SAY in REXX is like PRINTF in C or WRITELN in Pascal; that it can accept an arbitrary number of arguments. But you'd be wrong. SAY can only be followed by a *single* expression: the string to be displayed. However, since greeting holds a string and "world" is a string, and since you've written one after the other, REXX treats this as implied abuttal. That is, REXX concatenates the two strings to form a *single* string which it then passes to SAY. Thus, the third line in the program above is equivalent to say "Hello" "world" or say "Hello world" On the other hand, the last line of the program is equivalent to say "Hello"'world' (In REXX, strings can be delimited by either single or double quotes. As in Pascal, you can "double" the delimiter to make it appear in a string literal. If I hadn't switched delimiters, the string would have been the one displayed as Hello"world.) Since there is no space between the strings, REXX abuts the strings *without* inserting a space between them. Thus, this line is equivalent to say "Helloworld" and it displays what you saw when you ran the program. Going back to the third line: You typed it with a single space between the variable 'greeting' and the string "world". What if you had used *two* spaces? Try it now. Edit the program and rerun it. Surprised? In REXX, more than one space is always treated the same as a single space (except in string literals). This is why you can write if greeting = 'hello' then say "It's hello" instead of having to always write if greeting = 'hello' then say "It's hello" Some of you are starting to yawn. So spaces are significant when you do string concatenation; so what? How often do you *do* string concatenation? Well, in REXX, you do it *a lot*. After all, it's the easiest way to output more than one thing at a time using the "preferred" output instruction! But there's a serious implication here that will cause you no end of grief until you figure it out. It's *only* a problem for people who have learned another language like C or Pascal and who expect REXX will work the same way. Up above, I wrote "You can *also* concatenate [strings] by simply writing one after another." Do you see a problem there? No? Enter the following program: /* func.cmd -- program to demonstrate a "problem" with function calls*/ say abs(-3) "is *not*" abs (-3) Before you run it, try to predict what it will display. Now run it. Well, whatever you predicted, it probably wasn't the 3 is *not* ABS -3 that you actually got. What happened? The "problem" is this. When you write abs(-3), REXX interprets it as a call to the absolute value function with -3 as an argument. However, when you put a space in front of the parentheses, REXX interprets this as an implicit abuttal; it assumes that you want to concatenate the string value of the variable 'abs' with the string '-3'. (The default value of 'abs' is "ABS" since the default value of *every* REXX variable is a string consisting of its name written in uppercase. By the way, like Pascal but unlike C, REXX ignores the upper/lowercase distinction outside of string literals.) Of course, since there's a space between the elements, you get a space between "ABS" and "-3". Some of you will recoil in horror at this: How dare REXX mandate that you *cannot* put a space between a function's name and its arguments! For my own part, I can only say that it's reasonable when you get used to it. And if REXX had been the first language you'd learned, it probably would seem weird the other way. So, grin and bear it, and BE CAREFUL ABOUT USING SPACES IN CERTAIN PLACES. An important digression: These first two rules of thumb bring up a very important difference between REXX and Pascal, C, or many other programming languages. Namely: *REXX* *is* *not* *entirely* *a* *free-form* *language*. Sometimes, you have to be careful about where you put spaces in REXX. And sometimes you have to be careful about where you split lines. For instance, while Pascal or C have no trouble if you put arguments to a procedure on a different line from the name of the procedure, REXX is *not* as forgiving. Using SAY as an example, say "Hello world" is *not* the same as say "Hello world" The latter displays "Hello world"; the former displays a blank line and then bombs when it tries to execute "Hello world" as an OS/2 command. If you need to continue a clause across a line break, use a comma. The comma will be replaced by a space and then REXX will continue as if the end-of-line character didn't exist. So, for instance, say , "Hello world" *will* display "Hello world". Enough digression, and on to the third rule of thumb, which is ═══ 5.3. 3. Don't Confuse Subroutine Calls with Function Calls ═══ In C or Pascal, you use pretty much the same syntax whether you're calling a function (i.e., a routine that returns a value) or a procedure (a routine that *doesn't* return a value). In fact, C blurs the distinction by letting you "ignore" the return value of a function if you want. But in REXX, the way you call a subroutine (which is REXX's term for a procedure) is *completely* different from the way you call a function. Here's an example of a function call in REXX: length = max(x_coord, y_coord) and here's an example of a subroutine call: call charout myFile, dist In REXX, a function is called by giving its name, followed *directly* by the left parenthesis (no space permitted! Remember the second rule!), followed by zero or more arguments (separated by commas) and then the right parenthesis. By contrast, a subroutine is called by using the keyword CALL, followed by the name of the subroutine, followed by a list of zero or more arguments separated by commas. No parentheses are used. (Digression: Am I the only one who's noticed that Microsoft's latest Visual Basic products seem to have picked up this distinction *and* syntax from REXX?) Having said all that, let me confess that you *can* call functions as if they were subroutines. In this case, the return value goes into the special variable RESULT. For instance: /* subr.cmd -- Calls a function like a subroutine */ call abs -3 say "abs(-3) is" result will display "abs(-3) is 3". Calling a subroutine as if it were a function is an exercise in futility. Thus, *don't* do something like charout(myFile, "foo") /*WRONG!*/ And always remember: DON'T CONFUSE SUBROUTINE CALLS WITH FUNCTION CALLS! Raja Thiagarajan can be reached through the Internet at "sthiagar@bronze.ucs.indiana.edu". ═══ 6. The Net Rat ═══ IBM has released a beta service pack for OS/2 2.1 that addresses most of the bugs found to date. According to some voices on the Internet it is a bug inducing beta, and suitable only for test environs. Since that is exactly where IBM tells you to try the thing, it makes sense to call it a beta drop. It is a full install over existing 2.1 and doesn't seem to add much to what you have now, so unless you are having trouble right now I would hold off AT LEAST until the next version is released (the final build should be ready by the end of January or so). One guy did mention a 20 to 30% increase in HPFS file system speed, but I have to hear more before I'll believe it. This service pack has nothing to do with OS/2 2.2, which is expected to add some new features. I get the impression that IBM is trying to keep the 2.2 feature set quiet as long as possible, but some of the more common guesses include peer to peer networking, symmetrical multiple processor (SMP) support, multiple message queue (no more hitting CTRL+ESC to get the cursor back, RAM requirements under 4 MB, and maybe even some file system enhancements. If OS/2 could just take the mystery out of it's installation/configuration and boot up with the right drivers in place, .... well, wouldn't that be great? Since it's supposed to be out around next fall, we shouldn't be waiting too long for a peek. ═══ 7. News Bites ═══ ═══ 7.1. OS/2 for Windows Promotion Ends ═══ Remember: February 9 is the last day you can get OS/2 for Windows at the promotional price of $49 (diskette) or $39 (CD-ROM). ═══ 7.2. New OS/2 Newsletters ═══ Productivity Solutions of Norristown, PA, announces two new quarterly newsletters for marketers and users of OS/2 and its applications. The OS/2 Marketing Report is devoted exclusively to marketing and sales issues. Each issue will include columns about how to demonstrate OS/2, and how to improve selling skills. The first issue has news about OS/2 sales, a success story about a small software developer, an article about how to stage a company-sponsored OS/2 conference, book reviews, and frequently asked questions. Future issues will cover how to sell OS/2 in client/server environments, more ideas for demonstrating OS/2, OS/2 software success stories, book reviews, how to improve selling skills, how OS/2 helps small businesses, and companies making major commitments to OS/2. The OS/2 Advisory is devoted to helping OS/2 users optimize their systems. Each issue will include the latest fixes and tuning tips. The first issue includes articles about troubleshooting tips for printing, navigating IBM's support offerings, software reviews, tips for swap files and icons, REXX, and where to find OS/2 software. Future issues will contain tips about troubleshooting OS/2 in a LAN environment, ideas for new users, tips for supporting OS/2 users, and book and product reviews. Each newsletter has 8 pages. Charter subscription prices are valid until 31 December 1993. Prices for annual subscriptions (four issues) are: o The OS/2 Marketing Report, 79 US$ until 31 December, 89 US$ thereafter o The OS/2 Advisory, 39 US$ until 31 December, 89 US$ thereafter. o Both newsletters, 99 US$ until 31 December, 119 US$ thereafter. All charter subscribers who prepay will receive a free T-shirt that says "Unleash the Power of OS/2". Subscriptions and information can be obtained by calling 1-800-695-8642 within the USA, or 1-215-631-0339 from elsewhere. The fax number is 1-215-631-0414. ═══ 8. Contributing to Threads ═══ If you have comments or suggestions regarding Threads, or if you would like to help with writing or production, you can call Mat Kramer at 1-612-649-0765, fax 1-612-649-0237 or email 75746.2404@compuserve.com. ═══ 8.1. Would you like to help? ═══ I (still) need someone to help by compiling the "News Bites" and/or "Tips & Technicals" columns. In both cases, the information is available on the BBS. It just needs to be gathered, organized and cleaned up for inclusion in the newsletter. If you can help or have other ideas for articles or columns and would like to see your name in bytes, please contact me. The deadline for contributions and information for publication in Threads is the first Monday of every month. Articles should be submitted as email messages or attached files on the BBS or CompuServe. ASCII or any popular word processor format are good, DeScribe is the preferred format. For small announcements (less than 50 words), you can call or fax. ═══ 9. MNOS2 Meetings ═══ ═══ 9.1. When and Where ═══ MNOS2 LAN Server SIG and General Meetings are held on the last Thursday of every month. On holidays, we meet on the previous Thursday. Meetings are held at the IBM building (First Bank Place, 650 Third Avenue South, Minneapolis). The meetings are open to the public, and there is no charge for attending. Call IBM at 397-6444 to ask for directions. Please Note: only two entrances are open - Sixth Street and the Skyway. The afternoon and evening general meetings cover similar material, and both will have product demonstrations, when scheduled. The Rochester SIG meets the day before the general meetings, at the main IBM Rochester site, building 006-1, room 1100. All non-IBMers need to enter through the contractors entrance at the east end of building 006. ═══ 9.2. Upcoming Topics & Demonstrations ═══ March 31 Keller Group, local authors of FaxWorks OS/2 Do you have a topic which you would like to present to the user group? If so, please call the MNOS2 voice/fax message line at 1-612-869-7956. ═══ 9.3. Netware for OS/2 ═══ On March 10, Jerry Mayfield (National Marketing Manager, Novell) will present "Netware for OS/2". Netware for OS/2 4.01 allows Netware 4.01 and OS/2 2.1 to run simultaneously on the same machine. This meeting is hosted by MNOS2 and the Twin Cities Chapter of the CNEPA User Group. Note: this meeting will not be held at our usual location. Thursday, March 10, 7:00 PM Ties 2565 Long Lake Road, Suite 150 Roseville, MN This meeting is open to the public and reservations are requested by March 9. To place reservations or obtain more information, please call our Voice/Fax information line (1-612-869-7956). ═══ 10. Corporate Sponsors ═══ We are thankful to the following sponsors and contributors to MNOS2: Alpha Omega Consulting Carlson Companies DeScribe, Inc. DeScribe is the first and only native, 32-bit multitasking and multithreading OS/2 word processor on the market. DeScribe exploits the full power of OS/2. DeScribe 4.0 is used to produce Threads. Contact DeScribe at 1-800-448-1586, fax 1-916-923-3447, or email 71333.154@compuserve.com. Focus Marketing Group Specializing in Bulk Mailings. They helped cut down our costs for the duplication and distribution of Threads. For more information, please call George Otis at 1-612-835-7481. Sandra L. Hauer, CPA Ms. Hauer can be reached at 1-612-561-2365. IBM Corporation IDS ITT Hartford OS/2 Professional Skamp Computer Services, Inc. OS/2 Solutions Since 1987 Delivering Software, Service & Expertise in Information Systems, since 1977. If you need expertise in OS/2, please call SKAMP Computer Services, Inc. at 1-612-941-0696. Tri-State Drilling, Inc. Walnut Creek Walnut Creek's Hobbes OS/2 CD-ROM is filled with over 2500 OS/2 files from the largest FTP archive of OS/2 material, ftp-os2.cdrom.com, known as Hobbes. The archive serves as the major distribution site of OS/2 freeware, shareware, device drivers, program updates and information. Walnut Creek brings this entire archive to you in a well organized, indexed, and virus-scanned CD-ROM. The contents of the CD-ROM are available on the MNOS2 BBS. Contact Walnut Creek at 1-800-786-9907, fax 1-510-674-0821, or email info@cdrom.com. ═══ 11. MNOS2 Executive Committee ═══ President Marcus Krumpholz, 866-1618 (h, if urgent) Past President Bert Moshier IBM Liaison General Meetings: Dennis Ware, 397-5294 LAN Server SIG: Jennifer Eiben, 397-5549 Rochester SIG: Mark Rongstad, 1-507-286-4987 Newsletter Editor Mat Kramer, 649-0765 (h) Membership Coordinator John Bald, 888-1301 (h), 525-6202 (w) BBS Lee Holm, 535-9212 (h) Treasurer Bruce Schroeder, 429-9199 (h), 627-2043 (w) Officers Larry DeRosier, 754-0252 (h) David Elliott, 943-9255 (w) Lou Miranda, 225-9178 (h) Dale Neilan, 425-4034 (w) ═══ 12. How to Contact MNOS2 ═══ Voice/Fax Messages 1-612-869-7956 CompuServe 76420,2752 Internet 76420.2752@compuserve.com BBS 1-612-379-8272, 1200-16800 bps, N, 8, 1 Mail 7300 12th Avenue South Minneapolis, MN 55423 ═══ 13. MNOS2 BBS ═══ The MNOS2 BBS message forums include local exchanges, Usenet (Internet), FidoNet, and other international network messages. The file libraries include many OS/2 programs, utilities, information files, graphics, and fixes. Most packages are compressed into a ZIP format, and you will need a utility capable of unzipping these packages. PKZ204.EXE and UNZ50X32.EXE are two such programs. The file ALLOS2.ZIP contains a complete list of all files on the BBS. Members can access the board for ninety minutes a day with no download restrictions. Guest users can access the board for fifteen minutes a day with a download/upload ratio restriction. The BBS's phone number is 1-612-379-8272, and can be reached with a 1200 bps or faster modem (up to 16800 currently). Set your communications software for N81 (no stop bit, 8 data bits, 1 parity bit). ═══ 14. MNOS2 Membership Registration Form ═══ Minnesota OS/2 User Group 7300 12th Avenue South Minneapolis, MN 55423 Bulletin Board System: 1-612-379-8272 Voice/Fax Information Line: 1-612-869-7956 Internet: 76420.2752@compuserve.com Please fax or mail this form. Electronic registrations via BBS are also possible (Questionnaire #05). If you have any questions, please call/fax our Voice/Fax Information line! Unless otherwise specified, this information will be considered public information. Public ___ Private ___ Name: Company: Mail Stop: Address: City: State: Zip : Country: Home Phone: Work Phone: Fax Number: Fax Type: Full Time ___ Part Time___ Email Address: Please check one of the following types of memberships: ┌──────┬─────────────────┬──────────────────┬─────────────────────────────────────────────┐ │ │$???.?? life │Patron Member │MNOS2 Patron / $15 yearly for registered BBS │ │ │ │ │access │ ├──────┼─────────────────┼──────────────────┼─────────────────────────────────────────────┤ │ │$100.00 yearly │Corporate Member │MNOS2 Corporate Sponsor / $15 additional for │ │ │ │ │each member which would like registered │ │ │ │ │access to BBS. │ ├──────┼─────────────────┼──────────────────┼─────────────────────────────────────────────┤ │ │$ 30.00 yearly │Individual (+BBS) │MNOS2 membership / registered BBS access │ ├──────┼─────────────────┼──────────────────┼─────────────────────────────────────────────┤ │ │$ 20.00 yearly │Individual/No BBS │MNOS2 membership / Guest BBS access │ ├──────┼─────────────────┼──────────────────┼─────────────────────────────────────────────┤ │ │$ 15.00 yearly │BBS Only │No MNOS2 membership / registered BBS access │ ├──────┼─────────────────┼──────────────────┼─────────────────────────────────────────────┤ │ │ No Charge │Guest │MNOS2 Guest / Guest BBS access │ └──────┴─────────────────┴──────────────────┴─────────────────────────────────────────────┘ OS/2 related interests? Are you a member of our BBS? Are you interested in contributing to the user group? If yes, how? How did you find out about the user group? Please make checks payable to: MN OS/2 User Group. ┌──────────────────┬──────────────────┬──────────────────┬──────────────────┬──────────────────┐ │For MN OS/2 User │ │ │ │ │ │Group Only │ │ │ │ │ ├──────────────────┼──────────────────┼──────────────────┼──────────────────┼──────────────────┤ │Receive Date │Paymt type │Chk Name │Chk Num │Chk Date │ ├──────────────────┼──────────────────┼──────────────────┼──────────────────┼──────────────────┤ │BBS Name │BBS Expire │BBS Paid │Misc │ │ └──────────────────┴──────────────────┴──────────────────┴──────────────────┴──────────────────┘ ═══ 15. Notices ═══ Threads is a copyright (c) 1994 publication of the Minnesota OS/2 User Group (MNOS2). Individual articles are copyright of the respective author. Articles may be reprinted, unless otherwise noted, provided that credit is given to the author, and that the original publication and notice of use is sent to the author in care of MNOS2. Subscriptions are included in the cost of membership. OS/2 is a registered trademark of IBM Corporation. All other products referenced herein are trademarks or copyrights of their respective companies. All opinions herein are those of the individual authors only, and do not necessarily represent those of MNOS2, its executive committee, or IBM. MNOS2 is not affiliated with IBM. MNOS2 assumes no liability for damages arising out of the publication or omission of any article or information in this newsletter. Threads is produced by: