textfiles/bbs/ICENEWS/news9404.txt

1674 lines
76 KiB
Plaintext
Raw Normal View History

2021-04-15 11:31:59 -07:00
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><C4B7>ķ <20><>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><C4B7>ķ <20><>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ
<20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20> <20> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20> <20> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20>
<20>͸ <20>ͼ<EFBFBD> <20><><EFBFBD><EFBFBD>ͼ<EFBFBD> <20><><EFBFBD><EFBFBD>ͼ<EFBFBD> <20>\<5C> <20><> <20><><EFBFBD><EFBFBD>ͼ<EFBFBD> <20> <20> <20><> <20><><EFBFBD>ͼ
<20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ķ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ <20><><EFBFBD><EFBFBD> <20><>ķ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ
<20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ͼ <20><><EFBFBD><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͸<EFBFBD><CDB8><EFBFBD><EFBFBD><EFBFBD>
<20><><EFBFBD> <20>ķ<EFBFBD> <20><><EFBFBD><EFBFBD>ķ<EFBFBD> <20><><EFBFBD><EFBFBD>ķ<EFBFBD> <20> <20> <20><> <20><><EFBFBD><EFBFBD>ķ<EFBFBD> <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۺ<EFBFBD><DBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۺ<EFBFBD><DBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۺ<EFBFBD><DBBA>ۺ <20><>ۺ<EFBFBD><DBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۺ<EFBFBD><DBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>ۺ<EFBFBD><DBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۺ
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>ͼ <20><>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>; <20><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ
The Journal of IceNET April 1994
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<20> The Editor's Desk <20>
<20> The State of IceNET Jim (1@1) <20>
<20> Managing Editor's Comments Ima Moron (1@9661) <20>
<20> Letters To The Editors Louie (6@1) <20>
<20> <20>
<20> WWIV Specific <20>
<20> A Message From Random Louie (6@1) <20>
<20> WWIV Operated Under OS/2 Martin (1@6257) <20>
<20> <20>
<20> Hardware <20>
<20> Building A PC/AT Compatible - Part 3 Will (1@6754) <20>
<20> <20>
<20> Software/Programming <20>
<20> Learning C - Part 3 Daarkhan (1@7676) <20>
<20> Microsoft Windows for Workgroups 3.11 Will (1@6754) <20>
<20> Turbo Pascal - An Introduction Odin (1@7664) <20>
<20> <20>
<20> Lite Bytes <20>
<20> April Fools Day Pranks Deacon Blues (2@7653) <20>
<20> The Adventures of ModemMan Jot$ (1@7850) Deacon Blues (2@7653) <20>
<20> Silly Strings Ima Moron (1@9661) <20>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ
<20> IceNEWS Staff For April 1994 <20>
<20> <20>
<20> IceNEWS Editor-In-Chief - Jim 1@1 <20>
<20> IceNEWS Managing Editor - Ima Moron 1@9661 <20>
<20> <20>
<20> IceNEWS Contributing Editors <20>
<20> Hardware - Will 1@6754 WWIV-Specific - Jack Ryan 1@4707 <20>
<20> Lite Bytes - Ima Moron 1@9661, Deacon Blues 2@7653 <20>
<20> Software/Programming - Pale Rider 1@23 <20>
<20> <20>
<20> Editor-At-Large - Louie 6@1 <20>
<20> <20>
<20> IceNEWS Production - Spelunker 1@7653 <20>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ
<20> IceNEWS is always seeking submissions from those who have <20>
<20> ideas for stories. If you have any ideas that you might <20>
<20> like to see published, contact any IceNEWS editor or <20>
<20> subscribe to IceNEWS Beat, subtype IceNEWS, host @1. <20>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20> T H E E D I T O R ' S D E S K <20>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> The State of IceNET <20> Jim (1@1)
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
IceNET has recently picked up in growth rate, as we approach 850 nodes. I'm
still hoping to see 1000 systems one day in IceNET :). Also, congrats go
out to Dr. Diversity and all the Group 1 sysops for having the highest
percentage of WWIV registered systems (over %88) for a group in IceNET. I
really appreciate all the sysops who have registered to help support the
software we all use, and your help to maintain our investment in our boards
by encouraging others to register. The goal for IceNET is to achieve %90
registration.
I've been testing WWIV 4.24 and NET34 now for several weeks, and I can say
you have some marvelous new features in the works. All the memory
management woes of the past are being lessened by the installation in stock
WWIV of the spawn options, which will give you a lot more memory and avoid
the likelihood of those nasty 'OUT OF MEMORY' type lockups. I don't know
when the release date is, but the beta testing seems to be moving along
well.
Don't forget WWIVcon coming up in July. Meet your modem friends
face-to-face and have a blast in New Orleans. It's a once-in-a-lifetime
opportunity to meet and hear speak the author of WWIV, Wayne Bell; Filo, who
we all know, and lot's of other WWIV celebrities (like YOURSELF if you come
:))...and I'll be there hoping to see all of you! Email me if you need any
details or help in making arrangements. BE THERE!"
Have a happy April Fool's day, and enjoy this issue, yet another in the
recent string of dynamic IceNEWS issues :)
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> Managing Editor's Comments <20> By Ima Moron 1@9661
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Hello IceNET, as you may have already heard I'm the Managing Editor for
the current issue of the IceNEWS Journal. Within the April issue, the staff
has prepared articles that you, the sysops, have requested through Deacon
Blues' questionnaire.
Special thanks to Deacon Blues, who has been an inspiration in
organizing the staff of the journal, and a big thanks to the whole staff
including Jim 1@1 for jumping in and contributing to this issue. A special
thanks goes to Daarkhan and Martin for contributing two well paced articles
for your reading pleasure.
In keeping with American tradition, we here at the IceNEWS Journal have
added a "spoof" article or "April Fool's" joke, somewhere within the issue.
I won't disclose which article the spoof is, but if you read the journal
thoroughly you'll spot the farce.
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> Letters To The Editors <20> By Louie 6@1
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Although there are no actual letters from readers to print here for
this issue, we are counting on you to change that for us. Please take the
time to write us regarding your feelings on IceNEWS and its contents, good
or bad. We want to hear what you have to say. Remember, IceNEWS is meant
for everyone in IceNET and we need your input in order to maintain a
successful and respected publication.
Please address any remarks or questions to:
IceNEWS Letters To The Editors
c/o Louie, #6 @1
IceNEWS Editor-At-Large
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20> W W I V S P E C I F I C <20>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> A Message From Random 1@3050 IceNET, 1@1 WWIVnet<65> By Louie, 6@1
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Well, something short, maybe...
Random #1 @3050
Thu Mar 03 19:15:43 1994
RE: What for..?
As you all probably know by now, I've been working for the last few months
on a method to automatically link WWIVNet-style networks with the IRS. This
will have network1.exe scan the sysop logs (yymmdd.log) looking for download
indications, and report each download as income to the downloader. It will
implement this via a compiled-in table mapping filenames to stated value of
the program. (Of course, there is some logic in there to ignore version
numbers, so that, say, future versions of DSZ will be caught and reported
without having to hard-code every possible version of DSZ.) Network3 will
then collect these reports, and initiate a dialout to the IRS 1-900 number
to upload the info to the IRS. I expect to have this implemented by the
Net31 release, slated for sometime in July 1992. The IRS is only going to
be collecting these reports until the 1993 tax year, and send out the
1099-MISC forms in early April 1994.
$F4 @1
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> WWIV Operated Under OS/2 <20> By Martin 1@6257
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
----------------------- First things first ------------------------
Getting WWIV 4.23 was something that I, like everyone else it seems, had
been looking forward to for a long time. I was lucky enough to have been
able to get it from Amber the night it was released so I was able to take a
look at it right away. I had planned to wait to install 4.23 on my BBS for
at least a week so I'd have time to really look it over but when I saw what
it had to offer I decided not to wait.
I had been running OS/2 on my second computer for almost 4 months. When I
first installed it I realized that I was faced with almost the same
magnitude of confusion as I had worked through each time I had bought a new,
unfamiliar, computer system. I say this only to say that when I set up WWIV
4.23 under OS/2 I was far from being an expert (and still am not) on the
operating system. I was a beginner as far as the use and understanding of
OS/2 was concerned, and I was also using a new version of the BBS software.
I had a lot of confusion to overcome!
Regardless, to the best of my memory, and for whatever help this is worth,
here is the breath-taking saga of Amiga Blues' encounter with running
multi-instance under OS/2.
-------------------------- HPFS or FAT? ---------------------------
I had set up OS/2 on my "personal" (as opposed to the BBS) computer with the
HPFS and dual boot. I didn't realize at that time that a person could
switch back and forth booting either OS/2 or DOS without installing the dual
boot feature under the HPFS. It is possible, though, to install OS/2 on an
existing partition by installing it in a subdirectory using the FAT system.
You can still reboot into DOS by using the "boot /dos" command, and back to
OS/2 by typing "c:\os2\boot /os2" (assuming you have used the default
directories). When it came time to install OS/2 on my BBS computer I
decided to use the FAT system and give it a try. I didn't want to have to
repartition my hard drive to use HPFS. You will have to weigh the
advantages and disadvantages of the FAT vs the HPFS and decide which way
seems best for you.
Once I had installed the operating system, I booted it up, made an icon (see
below) for instance number one and ran it. It worked!
Well, it worked to the extent that the board came up and ran. There was
still a lot of work to do before I was ready to actually open the board back
up to callers while running under OS/2.
----------------------- icons and .BAT files ---------------------
In order to get icons for my "instances" of WWIV, I had to go into the
System Setup folder and select "Migrate Applications". Your OS/2 manual
will explain the process involved with doing this. After running Migrate
Applications, you will need to select the "Add Programs" option and "Add"
your BBS.COM to the Selected Programs list. You will do this so that you'll
have an icon, but you will only do this as a first step; you won't actually
run the board off it. You should make a copy of this icon for each instance
you will want to run so that you have one icon for each instance.
Icon settings:
--------------
Once you have created your icons, go into the Settings for each one and
under "Path and file name:" have them call a .BAT file for each instance
rather than calling BBS.COM. Under "Path and file name:" you will want
C:\WWIV\WWIV1.BAT, C:\WWIV\WWIV2.BAT, and so on rather than C:\WWIV\BBS.COM.
This will allow you to set the instance correctly. See my example .BAT
files (following) if you don't know what I mean by this.
One of the other very important things to do is replace the standard COM
drivers that come with OS/2 with Ray Gwinn's SIO drivers. I won't go into
the way to do this; it's well covered in the documentation files that come
with the drivers. But one thing that's not immediately clear is that you
should go into the BBS's icons and make some changes under the new options
the SIO drivers give you. For one thing, you'll need to disable access to
every COM port but the one used by that instance. For example, let's assume
you're running your setup as follows:
2 remote and one local instance (3 icons total).
Instance 1 (WWIV1.BAT) uses COM2
Instance 2 (WWIV2.BAT) uses COM3
Instance 3 (WWIV3.BAT) is local.
You would want to go into your BBS icons and change your DOS settings so
that the icon for instance 1 (WWIV1.BAT) has access to COM2 only, the icon
for instance 2 (WWIV2.BAT) has access to COM3 only, and the icon for
instance 3 (WWIV3.BAT) does not access any of the COM ports. Once you've
installed the SIO drivers, you'll see that the icons will allow for the new
options the SIO drivers provide. Restricting each instance's access to only
the COM port it needs will prevent problems such as online programs causing
a System Error message telling you that your application tried to access a
communications port which is in use by another application.
I don't have any experience with running WWIV under OS/2's drivers and I
would highly recommend getting Mr. Gwinn's drivers. I ran the OS/2 drivers
for a while under Procomm Plus, and the difference between the SIO drivers
and the standard OS/2 drivers was amazing. I went from approximately 600
CPS and many crashes during transfers to 1600-1700 CPS and no more crashes.
Anyway, back to the issue of setting up your icons... You will also want to
set the IDLE_SECONDS and IDLE_SENSITIVITY to provide the best performance on
your particular system. As I've said, I'm no OS/2 expert, but I do believe
that these settings will work differently from one system to another. Your
settings will probably be different from mine. What I did to get them
tweaked the best I could was to set the IDLE_SECONDS just high enough so I
didn't get the famous "pause after message header" problem, and set the
IDLE_SENSITIVITY so that the processing time would be divided up between
instances as evenly as possible.
What I believe causes the problem with messages pausing right after the
header is displayed is OS/2 mistakenly thinking that the session is inactive
and pausing it until it thinks it's active again. Apparently this is a
problem with OS/2 and communication software. The software (in this case
your BBS) is processing data but there is no mouse movement or keyboard
action while you are reading the message. OS/2 doesn't think anything is
happening and idles the session until you do something. On my system I
experienced the problem with the session pausing after the message header
until I set the IDLE_SECONDS up to 4. Setting the IDLE_SECONDS to 4 took
care of the problem.
In order to get IDLE_SENSITIVITY set so that it seems to work the best, I
tried setting it as low as possible, and then ran the session. I checked
the setting by doing a new message scan and watching to see if the text was
"jerky". If it was jerky at the IDLE_SENSITIVITY I had, I exited the BBS,
quit the session, opened the icon's DOS settings and bumped the setting up
by 10 at a time until the text displayed smoothly. I then adjusted it by an
increment of 5. What I mean is this:
With IDLE_SENSITIVITY set at 30 if the text scrolled jerkily, I went out and
set the sensitivity to 40. If it was still jerky I set it to 50. If it was
then okay, I set it to 45. If it was okay, I left it alone, and if it was
jerky again I set it back to 50.
I have left INT_DURING_IO off. I have heard that having it on can mess up
network packet handling, and I don't want to risk that.
Another thing I did was to aim the DOS_DEVICE to C:\OS2\MDOS\ANSI.SYS so
that my system would be able to handle ANSI displays.
One last thing that I have just tried is setting the HW_TIMER to on. This
is due to a recommendation in "Your OS/2 Consultant" written by Herb Tyson
and published by Sams Publishing. Having the HW_TIMER on allows WWIV to
have direct access to the timer ports and stops OS/2 from emulating a timer.
Apparently, it's been documented that some fax programs and high speed data
transfer utilities don't run well unless HW_TIMER is set to on.
.BAT files:
-----------
The .BAT files are fairly simple. Here are mine:
(WWIV1.BAT)
set WWIV_INSTANCE=1
c:
cd \WWIV
bbs.com /i1
(WWIV2.BAT)
set WWIV_INSTANCE=2
c:
cd \WWIV
bbs.com /i2
(WWIV3.BAT)
set WWIV_INSTANCE=3
c:
cd \WWIV
bbs.com /m /i3
You can see that I've got instance 3 set up for local only use and have used
the /m parameter to disable the BBS from trying to find a modem.
------------------------- CD-ROM drives --------------------------
I had a little difficulty setting up my CD-ROM drives to work under OS/2 in
the same way they had been working under DOS. The problem was not the fault
of OS/2; it runs CD-ROM drives just as well as it runs anything else. It
was just a matter of finding drivers that worked with my drives (I have
Mitsumis). If you have a Mitsumi CD-ROM drive and haven't been able to find
a driver for it, you can call the OS/2 BBS at 919-517-0001 and get the
driver there. The file name is MITFIX.ZIP and the driver name is
MITFIX001.ADD. This driver supports the new FX series of Mitsumi drives as
well as the CRMC-FX001, the CRMC-FX001D and the older CRMC-LU005 drives.
Once I found and installed the drivers (see your OS/2 manual for more
information on this; it's covered very well), I set up a small RAM drive so
that the CD-ROM drive letters would be the same as they had been under DOS.
I did this because I had used a RAM drive under DOS. This may or may not be
important to you; I originally did this so I could run the board under DOS
or OS/2 without having to change anything. I've never gone back to DOS
though.
---------------------Additional Considerations---------------------
OS/2 aware:
-----------
The source code I got when I first downloaded WWIV 4.23 from Amber somehow
did not have the code enabled to allow WWIV to work as well under OS/2 as
possible. If you are registered and have access to your source code, check
UTILITY.C and be sure the following code is in void giveup_timeslice(void):
case 4 :/* outs("OS/2"); */
win_pause(); /* add for OS/2 timeslices*/
/* delay(17); */
break;
Many thinks to the person responsible for this "fix". My board ran a lot
better after I put this code in, and I checked with Wayne, who confirmed
that it should be in there. People had been complaining about the system
being very slow and jerky at times until I put this code in. I had even
upgraded from a 386DX-40 to a 486DX2-50 in order to help the BBS run more
smoothly, but things didn't really improve until I added this code. The
only time the board seems to slow noticeably now is when someone is doing a
file transfer.
Init:
-----
I've corresponded with Filo regarding the way INIT handles things with more
than one instance and he's indicated that there may be some changes under
4.24 to make the data it writes more "instance specific" (my word, for lack
of being able to think up anything better). As things are now, the only
thing I feel I can count on being kept separate from instance to instance is
the modem and COM port configuration information. I do know from first-hand
experience that your net low and high times are not kept separate; if you
change the net times under one instance it will be changed for all.
Memory:
-------
OS/2 is VERY memory hungry and you will not be satisfied with its speed or
performance unless your system is configured with enough memory. I know of
people who are running WWIV under OS/2 with only 4 megabytes of memory, but
I understand the Presentation Manager (the graphic interface) takes up
almost 4 MB, so I believe 8 MB is really the minimum for satisfactory
performance and more is, of course, even better. Another consideration is
that if you are used to using a RAM drive you should be aware that using one
under OS/2 will take the memory right off the top and may have a significant
impact on the performance of your system.
Rocker (1@6450) is running his system without using the Presentation Manager
and he reports that this frees up his system significantly.
External Transfer Protocols:
----------------------------
JAFO (1@8857) had indicated in one of the networked subs that the newest
version of DSZ is much more better behaved under a multitasking environment
than its predecessors have been and I believe he is right. I just
downloaded the DSZ.ZIP file from Telegodzilla with the DSZ.COM dated
02-02-94 and the GSZ.ZIP file with the GSZ.EXE file dated 02-03-94 and have
installed them. The system used to bog down significantly during file
transfers and I believe that it is a lot better now that I've installed
these newest versions of DSZ and GSZ. If you can't find them anywhere else
they are available on Telegodzilla at 503-621-3746.
My Setup:
---------
If you are interested, my system currently looks like this:
I have a 486DX2-50 MHz computer with 8 megabytes of RAM, 550 megabytes of
hard drive storage space, two Mitsumi CD-ROM drives, a US Robotics 14.4
Courier HST dual standard modem on the first line (612-591-1781) and a US
Robotics 14.4 Sportster on the second line (612-591-0173).
Conclusions:
------------
In case you haven't been able to tell, I am very happy with the way WWIV
runs multiple instances under OS/2. While there are definitely some
challenges, the end result is, in my opinion, well worth it. If you've got
the resources to be able to run OS/2 and if you want to run more than one
instance, I heartily recommend going with OS/2.
-Martin
References:
-----------
DSZ and GSZ can be ordered from Omen Technology Inc.
17505-V Northwest Sauvie Island Road
Portland, Oregon 97231
Modem: 503-621-3746
Fax: 503-621-3735
The Mitsumi device drivers can be downloaded from IBM's BBS, located at
Research Triangle Park, NC
Modem: 919-517-0001
Fax: 800-IBM-3395
SIO can be ordered from The Software Division
Attn: Raymond L. Gwinn
12469 Cavalier Dr.
Woodbridge, VA 22192
Voice orders: 703-494-4673
Fax: 703-494-0595
Reference Books I've found helpful:
-----------------------------------
Dvorak, John C. "Dvorak's Guide to OS/2 version 2.1",
Random House, Inc., New York, 1993.
Moskowitz, David and Kerr, David, et al. "OS/2 2.1 Unleashed",
Sams Publishing, Carmel, IN, 1993.
Tyson, Herb. "Your OS/2 2.1 Consultant",
Sams Publishing, Carmel, IN, 1993.
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20> H A R D W A R E <20>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> Building A PC/AT Compatible - Part 3 of 3 <20> By Will 1@6754
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
After a two issue hiatus, we're back with the conclusion of "Building A
PC." In the last two articles of this series, we went over choosing the
right machine for your needs, looking for, finding, and getting a good deal
on system components, and started the assembly of the new machine. When we
left off in Volume 4 Issue 1, we had just finished putting the hard and
floppy disk drives into the new machine. This issue, we'll complete steps 6
through 9, installation of the video and serial cards, cover, connecting the
external devices, in this case the monitor, keyboard, and mouse, and
powering up the machine.
NOTE: This article series should NOT be used as your only reference should
you attempt to build a Personal Computer system. It is hoped that the
information presented here will be both informational and interesting, but
the author or IceNEWS can not be held responsible for any effects the usage
of this article may have.
(In the last installment, we went through steps 1 - 5. In order to preserve
continuity, I'll start here at 6.)
6. Installing Video/Serial Expansion Cards
For both the serial and video cards, follow this general procedure
(note that if your serial and hard disk controller are integrated onto one
card, you will have already installed the serial portion). Remove one cover
plate (the thin metal piece covering the rectangular openings on the back of
the computer's case) for each card you need to install. Try to leave as
much room between each card as you can. If you have this configuration ('|'
representing an empty slot, and 'I' being a full one):
||I||
You should install the other two cards so you have this configuration:
I|I|I
While not directly affecting the operation of the cards, leaving vent room
allows the computer to run "cooler", and extends the operating life of the
expansion cards. For the daring, it might even be a good idea to shuffle
already installed cards in order to gain better ventilation.
Remove each card from the anti-static wrapping. Hold them only by the
edges, not touching the gold or silver plated connectors at the bottom.
Blow gently over the slot you plan to install the card in, and then gently
seat the card into the slot. Push down evenly from the top, excessive force
should not be needed. Screw the connection at the top of the card into the
case.
Note that you should not attempt to install a 16 bit (with two separate
connectors at the bottom) card into an 8 bit (only one connector) slot.
Some VGA boards (and other applications) are designed to function in an 8
bit slot with the other connector hanging over, but these are the exception
far more than the rule. A good rule of thumb is, if it doesn't fit, don't
do it. Some motherboards have one or two 8 bit slots to save money. Just
put an 8 bit board in them.
Some serial boards will have additional ports on a separate holder.
They usually look like this:
-----
-|\
P | |======/=] < Connectors to cards
o | |=====/==]
r _|/ Cables^
t -|\
s | |=====/==]
> | |====/===]
_|/
|
|
These should be installed in the same way an ordinary expansion card
is, except that there is nothing to seat in the actual slot. This might be
a good use for one of those 8 bit slots, and ventilation doesn't matter.
The cables connected to these should be attached to your serial card per the
instructions in its manual, as they all vary.
7. Cover On
Double check that all connections are made, all boards screwed down,
and that everything is secure. Gently blow over everything for dust motes.
Slide the cover back onto the case and screw it in in at least two places.
Generally you don't need to bother with screwing in all of the various
screws on the case, as that does little but make the machine difficult to
open up later. One or two screws, however, can prevent things from coming
off accidentally or third parties from opening your machine out of
curiosity. (I'm talking about ten year olds.)
8. Put the monitor on or by your computer, and the keyboard/mouse in front
of it. Uncoil/tangle all the cables and pull them around to the rear of the
machine. Plug them in, monitor to the video card, mouse to the proper
serial card slot, keyboard to the keyboard connector (usually a round AT
style, always integral to the motherboard). Plug the monitor into the wall
socket. Take the power cable that came with the power supply and plug it
into the back of the computer (usually a three pronged male connector, with
rectangular plugs). Plug the other end into the wall.
9. Power Up
Put disk one of your DOS setup into Drive A (note that you need the
full, installable version - upgrades won't work). Turn on the monitor, and
push the computer's power button (or flip the switch). Check that the
machine isn't smoking. It should power up and do a RAM self test, and
display a "Hit DEL for BIOS" message, or something similar. Do this, and
from the BIOS menus set the date, time, hard and floppy disk types, etc.
(Look for an article on BIOS configuration in a future IceNEWS.)
Save your BIOS settings, and the computer will restart. This time, let
it boot from the disk in drive A:. The DOS setup screen will come up, and
guide you through formatting and partitioning your hard disk (if you choose
to install OS/2 instead, put the OS/2 install disk into A:, and follow its
directions). After DOS is finished with partitioning, formatting, and
installing itself, you're done!
That concludes the "Building a PC" series in the IceNEWS hardware
department. Look for a future article on Troubleshooting a PC, which may
very well pick up right where this leaves off, in case your machine is NOT
running perfectly.
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20> S O F T W A R E / P R O G R A M M I N G <20>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> Learning C: Part 3 of 4 <20>
<EFBFBD> Variables, Input, & Calculations <20> By Daarkhan 1@7676
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
PART ONE: VARIABLES AND THEIR USAGE
VARIABLES
If you have any experience with programming at all, you know that a VARIABLE
is a memory location that holds data. For those of you without programming
experience, you can think of a variable like a room in a hallway. There are
many rooms along this hall, and we want to store something in one of them.
We take whatever it is we want to store (a number, a name, a whole record of
information) and place it into the room. All we then have to remember is
the room number (i.e. WHERE) we stored it.
C, unlike some other languages such as BASIC, requires that you DECLARE
every variable before you use it. This is so the compiler knows how much
memory to reserve for each variable (based on the TYPE of the variable -
we'll learn more about this in a little while).
C has five (5) basic data types. They are VOID (which we already learned
about), INTEGER, CHARACTER, FLOAT, and DOUBLE.
As we learned in chapter 2, a void data type has no value. We do not care
about what value it holds. We will examine void data types in more detail
later.
The integer data type (int) holds signed integers, generally (depending on
the computer) from -32,768 to +32,767. Integers require 16 bits (2 bytes)
of computer memory. Again, this may be different in some computers, but
it's a generally accepted standard.
A character type (char) reserves 8 bits (1 byte) of memory and is used
(normally) to hold a single character of data. One of the best features of
C is that char types and int types are interchangeable; that is, a char can
be used to hold a very small integer (from 0 to 255). We will see, later,
how this can be very helpful.
Floats (float) and doubles (double) are assigned numbers which have
fractional parts (including a decimal point). They are called Real in some
other languages, such as Modula-2. Each can hold very large values; the
only difference between the two is that a double will have twice the
precision (number of significant digits) as a float. We will examine these
data types in detail later, as well.
VARIABLE DECLARATION
To declare a variable in C, use the following convention:
type variable_name;
where type is the C data type, and variable_name is the name that you wish
to assign to the variable. For example, if you want to declare a character
data type and name it "x", you would use:
char x;
If you want to declare a float of name my_float, you would use:
float my_float;
Remember that variable names can hold all the alphanumeric characters (0-9,
A-Z, a-z) as well as the underscore ("_"). In general it is best to use
variable names that are easy to remember, and make sense. Try to avoid huge
names, but don't use too many single-character names that you may not
remember.
For example, if you want to keep track of a variable which stores the number
of computers you have in your office, you would not want to use
int number_of_computers_in_my_office;
but then again, you might forget what your variable means if you just use
int c;
in a big program. I would suggest using the variable
int num_computers;
It's not too big (it won't be a pain in the butt to retype several times in
your program), yet anyone looking at your code can easily tell what it
represents.
Remember to follow your variable declaration with a semicolon. Also,
remember that C is case-sensitive; the variables
int i;
and
int I;
are totally different variables.
GLOBAL AND LOCAL VARIABLE
Because C is a language which supports functions (procedures, modules,
whatever you want to call them; they're called functions in C), it also has
to support GLOBAL and LOCAL variables.
First, the definition of each, and then an explanation: a GLOBAL variable is
a variable which is accessible throughout your entire program. A LOCAL
variable is accessible only by the function in which it is declared.
The best way to explain this is to take a look at an example. Below is a
simple code segment representing my program:
/* beginning of MY_PROGRAM */
int a, b, c, y;
void function1 (void)
{
int x;
}
void function2 (void)
{
int y;
}
void main (void)
{
int z;
}
Now, although this program will compile (and run) it won't do anything.
Remember, we're looking at it for demonstration purposes. The program
starts off with a comment telling you that it's the beginning of my program
(remember, what's inside of comments /* */ the compiler ignores).
The integers a, b, and c are all declared OUTSIDE of any other functions.
They are GLOBAL variables and can be accessed by ANY of the functions here
(function1(), function2(), or main).
The variable x is declared ONLY inside of function1(), so ONLY function1()
can use this variable. No other function can use the variable x.
Again, the variable z is declared ONLY in the function main(), so
function1() and function2() cannot use it.
Let's take a look at the variable y. It is declared as BOTH a global
variable (outside of all the other functions) and as a local variable to
function2(). When this happens, the compiler will reserve memory for two
separate variables. function1() and main() will access the global variable
y, whereas function2() will have it's OWN separate variable y which is
TOTALLY DIFFERENT from the global variable y. In this case, function2()
CANNOT access the GLOBAL variable y.
Sound a little confusing? We'll discuss this more in a minute.
VARIABLE ASSIGNMENTS
Ok, now we know how to reserve memory space for a variable. In order to be
able to use that variable, we have to be able to ASSIGN it a value.
In C, use the following convention for variable assignments:
variable_name = value;
For example, to assign a value of 1000 to the variable count, you would use
the statement
count = 1000;
Easy enough? There are two ways to assign a value to a char variable; you
can enclose a character in single quotes, or you can refer to the character
with its ASCII value. For example, to assign the variable my_char the
letter 'A', you could use either of the following statements:
my_char = 'A';
my_char = 65;
Because 65 is the ASCII equivalent of the letter 'A'. (NOTE: most DOS
references and programming books have ASCII charts in them.)
To assign floating point numbers (float and double) you MUST include a
decimal point. For example,
my_float = 10.12
is a valid assignment. If your number does not have any fractional you must
use a zero (0).
Let's take a look at a short program which will declare some variables,
assign values to them, and print them out.
/* TEST program */
#include <stdio.h>
void main (void)
{
int i;
char c;
float f;
i = 100;
char = 'A';
float = 10.5;
printf ("My integer is %i \n", i);
printf ("My character is %c \n", c);
printf ("My real number is %f \n", f);
char = 67;
printf ("The character is now %c \n", c);
}
/* end of TEST program */
this program will produce an output of:
My integer is 100
My character is A
My real number is 10.5
The character is now C
(I didn't run it and test it, but you should get this output. If not,
someone please slap me and I'll be sure to test-run it myself! The only
difference I can foresee is that some compilers may produce a floating
output of 10.500000 for the real number.)
Go ahead and run this program. The point is to make sure that you
UNDERSTAND why it works... more than just how it works.
PART TWO: KEYBOARD INPUT
SCANF()
There are many ways to input characters from the keyboard. In this section,
we're going to look at one of the methods from the standard input/output
(stdio) library called scanf().
scanf() is one of the easiest functions to use, although it possesses
considerable flexibility. I personally hardly ever use it myself (in favor
of more advanced techniques), although it's an excellent tool for beginning
C programmers.
Let's jump right in with an example. To use scanf() to read an integer from
the keyboard, use the following convention:
scanf ("%i", &integer_name);
For example, to input a value into the int variable my_int, use
scanf ("%i", &my_int);
(NOTE: the ampersand before "my_int" is NECESSARY for scanf() to work
properly. Basically all it means (for you advanced computer people) is that
we're sending the address of the variable my_int to the function scanf().
You don't have to know this now - so don't worry about it. Just remember
that you NEED the &.)
One thing to note is that scanf() is LINE-BUFFERED. That means that scanf()
waits until the user presses the ENTER key before it reads the number
entered.
To read a value into a character data type, you would use the %c format
code. To read a float value, you use %f. To read a double value, use %lf
(long float). These format specifiers are exactly the same as the ones for
printf() (see chapter 2 for a chart).
SAMPLE PROGRAM
Below is a sample program that asks the user for some data, and then prints
out the results:
/* another TEST program */
#include <stdio.h>
void main (void)
{
int i;
char c;
float f;
printf ("Input an integer: ");
scanf ("%i", &i);
printf ("Input a character: ");
scanf ("%c", &c);
printf ("Input a float: ");
scanf ("%f", &f);
printf ("You entered: %i, %c, %f.\n", i, c, f);
}
/* end of TEST program */
Compile and run this program yourself. Check out the results!
Now, try to compile and run this program:
/* another program */
#include <stdio.h>
void main (void)
{
int i;
scanf ("%i", i);
printf ("You entered: %i", i);
}
It doesn't work, right? What's the reason why? Take a look at the scanf()
statement. Notice anything? We forgot to add the & symbol to the beginning
of the variable name. Add it in and see if the program works now.
PART THREE: ARITHMETIC CALCULATIONS
OPERATORS
For the most part, all operations in C follow the basic rules of algebra.
If you have any kind of a mathematical background, you should have no
problem understanding the material here. If you have not yet taken algebra
in school, you may want to get an algebra book and dig through it first,
before attempting to go any further with computer programming.
C has five basic arithmetic operators:
+ addition
- subtraction
* multiplication
/ division
% modulus
You are probably familiar with the first 4 operators. They will work on any
of the basic data types (int, char, float, double). The last one, the
modulus operator only works with the integer data type.
The - has two purposes. First, it is the subtraction operator. Secondly,
it is called a UNARY minus. That means that it reverses the sign of a
number (makes it negative or positive). The term UNARY means that it takes
ONE operator (as opposed to BINARY which takes two, TRINARY which takes
three, etc.)
The % (modulus) is the same as the MOD function in Modula-2 and Pascal. It
returns the remainder of an integer division. For example,
10 % 3
will return the value of 1 (10 divided by 3 equals 3 with 1 remainder).
There is no DIV (integer division) function in C because the / symbol can
take both real and integers. The integer division, however will truncate
any remainder, so
10 / 3
will return a 3.
EXPRESSIONS
An expression may appear on the right side of an assignment statement. For
example, if we declare an integer named sum, we can assign sum a value by:
int sum;
sum = 5 + 10;
in which case, sum now holds the value 15.
As in algebra, the * and / (and the %) have a higher precedence in the ORDER
OF OPERATIONS than do + and -. You can change the order of operations using
parentheses. In this example,
int answer1, answer2;
answer1 = 10 * 3 + 5;
answer2 = 10 * (3 + 5);
answer1 will have a value of 35, whereas answer2 will have a value of 80.
A C expression may contain both variables and constants. For example, this
is perfectly valid:
int a, b, answer;
a = 5;
b = 6;
answer = 100 - a - b;
a is assigned the value of 5; b is assigned 6, and answer is then assigned
89 (100 - 5 - 6 = 89).
You can also use calculations within the printf() statement. For example,
all of the following statements are correct:
given: int a = 10; int b = 5; float f = 10.0;
STATEMENT RESULTS
------------------------------------------- --------------
printf ("%i", 5); 5
printf ("%i", 1 + 2); 3
printf ("%i", a); 10
printf ("%i", a + 3); 13
printf ("%i", a + b * 3); 25
printf ("%i", (a + b) / 2); 7
printf ("%i", a % b); 0
printf ("%f", f / 2); 5.0
Feel free to experiment! Remember, now you know how to use printf(),
scanf(), variables, and all of the format codes and backslash character
constants! You can start to put together some simple programs of your own.
ASSIGNMENT
An idea that was presented to me after the last tutorial was to give out an
assignment at the end of each tutorial for people to work on, and send Email
to me when they finished. So here it is:
Assignment 3.1: write a simple program that accepts three numbers as input
from the user. Print out the sum, difference, product, quotient, and
modulus of the first two numbers, AND the sum and product of all three
numbers. Assign ALL of your answers to variables before printing them out.
When you've finished your assignment, compile it and make sure it runs, then
Email me (1@7676) a copy of your source code (program) and I'll issue you a
grade. I'll be keeping a record of all grades sent to me - and will post it
on occasion!
NEXT
Functions: usage, return values, and arguments.
SOURCES
Downing, Douglas. Dictionary of Computer Terms. New York:
Barrons, 1989.
Holzner, Steven. C Programming: The Accessible Guide to
Professional Programming. New York: Brady, 1991.
Schildt, Herbert. Teach Yourself C. Berkeley: Osborne
McGraw-Hill, 1990.
---. Turbo C/C++: The Complete Reference. Berkeley: Osborne
McGraw-Hill, 1990.
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> Microsoft Windows for Workgroups 3.11 - Is It For You? <20> By Will 1@6754
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Microsoft Corporation recently introduced its upgrade to both the
Microsoft Windows and Windows for Workgroups operating environments. Called
"Windows for Workgroups 3.11", this is Microsoft's intermediate step between
Windows 3.1 and NT. Although the original Windows for Workgroups was aimed
at those interested in network machines running Windows (with a minimum of
fuss and mess), W4WG 3.11 is designed to appeal to non-networked users as
well as those running networks. The question that many face - is it worth
upgrading if you're not running a network?
I installed the "Microsoft Workgroup Add-On For Windows", a software
only package that runs for about $50 on the street, and apparently requires
an existing installation of Windows. The installation is relatively simple
- pop in disk 1 and run the setup program. If you aren't running a network,
the program ignores that aspect. The installation program automatically
upgrades your existing Windows files, and installs the new applets (Hearts
game, "Microsoft At Home" fax, scheduler/time manager, and Microsoft Mail.
The fax portions of W4WG 3.11 make use of the Microsoft Mail program, so
even if you aren't on a network (and won't be needing any of the email
features) this should be installed if you plan on using the native fax
functions.
One of the main new features of W4WG 3.11 is 32 bit file and disk
access. These are enabled under the Virtual Memory section of the 386
Enhanced Mode control panel, a somewhat non-intuitive placement. The 32 bit
disk access requires a compatible disk controller, something my expensive
VL-BUS SCSI2 card was not. The file access is somewhat more flexible, and
did speed access to my hard disk cache. W4WG also includes an internal 32
bit disk cache. However, I found that disabling SmartDrive caused the
system to slow to unusability (a 16 megabyte 486dx2-66 clock doubled test
bed, no less). Although with SmartDrive re-enabled performance picked up a
bit, things still took about a second on average longer to complete than
they had under straight Windows 3.1. However, some areas, such as
file-saving under DOS, did increase slightly in speed.
W4WG also includes enhanced file sharing code (the equivalent of
SHARE.EXE under DOS). As many sysops have experienced, WWIV (and most
notably WWIVedit) do not take kindly to having SHARE.EXE loaded while
running Win3.x. However, many applications, such as Borland C++ 4.0, insist
upon it. The share code in W4WG 3.11 addresses and fixes this problem,
WWIV, WWIVedit, BC4, and Ami Pro all coexist peacefully.
Joining the mildly addictive Solitaire and the forgettable Minesweeper
game, is a networked version of Hearts. You can play with up to three other
people over the network, or against the computer. Slightly more serious
additions to the applet lineup are "Microsoft At Home" faxing, Schedule+, a
network aware personal scheduling/reminder program, Remote Access, a remote
network login system, and a single user license of Microsoft Mail. The fax
program sends through MS Mail or the scheduler, hooking into the somewhat
cryptic interfaces of each. Trips to the manual or at least the help files
are required to get it functioning well. The scheduler is functional and
slightly easier to learn than MS Mail, and is certainly functional enough
that you don't need to rush out and replace it with a third party add-on.
On the network side, W4WG includes several net-related applets over the
original version. These, in brief, include a Chat application, network
usage monitor, system performance monitor, pop up monitor, logon/logoff
control, and a configuration control. The new "Clipbook Viewer" replaces
the old clipboard viewer, with an advanced Multiple-Document-Interface
control set and OLE support. Networking support is now full 32 bit.
Windows for Workgroups 3.11 fixes many of my gripes about Windows, and
seems marginally more stable than, say, fissionable uranium, a definite step
up from Windows 3.1. The performance losses balance the gains, should
increase if you're running a 32 bit compatible disk controller, and are not
very noticeable anyway. The extra applets, while not wonderful, are
adequate and useful. It doesn't include some of the general Windows fixes
I'd like (volume control on the Sound control panel, for instance), but is a
step in the right direction. If you can afford the $50 for the upgrade, go
for it, and don't consider buying a new copy of Windows 3.1 instead of this.
It's no OS/2, but it's an improvement, and leaves you in an excellent
position to expand into a network sometime in the future.
Addendum: After using Windows for Workgroups 3.11 for three weeks, I
noticed some additional items about the environment. After about a day, the
speed of the system increased to about twice what it had been under Windows
3.1. DOS applications especially benefited from the increase in speed. The
system occasionally "pauses" for about two seconds (with heavy hard disk
activity), but this itself is not enough to counterbalance the increase in
speed. Also, system crashes began to occur more often, although still far
below the level of crashes under Windows 3.1.
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> Turbo Pascal - An Introduction <20> By 0다 1@7664
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
I want to make one thing perfectly clear. I am not saying that Pascal is a
better language than C or vice versa. I am writing this series of articles
about a language I enjoy and use frequently. I also enjoy programming in C,
ALGOL, APL, FORTRAN, and COBOL. But these two languages I use most often.
But now to the article.
Pascal is a high level language developed in the 1970's as a language which
allows easy identification of the main features of a program. The
constants, user defined data types. and variables and functions (procedures
or voids for you C freaks) are declared first, followed by the body of the
program. Different from C, Pascal uses BEGIN and END to block off areas of
the program as opposed to { and }.
Pascal and C are similar in that they are modular programming languages.
This means that a program is broken up into modules or procedures. This
allows for more flexibility for a programmer. BASIC is not a modular
programming language in its standard form. Some versions of BASIC on the
market today allow for a more modular look. FORTRAN is another basic
modular language but all the subroutines have to be declared following the
main body of the program.
The standard form of a pascal program in shown below:
program MyProg(input, output); <--- this is header for all programs
const
Here is where you can set up "variables" that never change their
value in the program.
type
Here is the section where the programmer can create his/her own
data types to be used in the program.
var
variables are declared here.
procedures and functions are then put in
begin (* Main Block *)
more code
end. <---- the last end must have a period
Constants are used if you plan on using the same number or expression
throughout the program. It is similar to the #DEFINE command in C. Change
the expression in the declaration and the value changes throughout the
program. You can have any type of constant declared.
The TYPE declaration is for programmers to declare their own user defined
data types. More will be discussed on this topic in future issues of
IceNEWS, because there is so much that can be done in this declaration.
The VAR declaration is the location where the global variables are declared
for use within the program. These variables have to have an alpha character
as their first character in their name. The valid types for the variables
is endless. You have your standard data types: INTeger, REAL, CHARacter,
STRING, BOOLEANs, and ARRAYs of these types. But you can also use the user
define types that are declared in the TYPE declaration section of the
program. There are other standard types that will also be discussed in
further issues of IceNEWS.
The rest of the program consists of procedures, functions, and the main
body. These 3 "items" contain the actual logical sequence of statements
that make the program go. A procedure is similar to the VOID in C, while a
function has the same basic idea in Pascal as it does in C. A function
returns a value back to the procedure or body that called the function for
use later on. The only real difference in the two is the syntax used.
What to expect in future issues of IceNEWS: An indepth look at user defined
types and an introduction to Turbo Vision programming using the Turbo Vision
feature first introduced in Turbo Pascal 6.0. Anyone interested in
contributing to these articles, by all means send me the information and I
will get it into the next articles and will give you the credit for that
part of the article.
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20> L I T E B Y T E S <20>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> April Fools Day Pranks <20> By Deacon Blues 2@7653
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
At the end of February, when the IceNEWS staff was starting work on
this April issue, I was debating about what I was going to contribute. It
took me a couple of days to realize that April Fool's Day would pretty much
be about when everyone will be reading this edition. Therefore, I thought
that a story about April Fool's Day pranks was in order.
While anyone can either pull or be the victim of a prank on any given
day, there are really only two days in the year that you have to be
especially wary; April Fool's Day, and, although to a somewhat lesser
extent, Halloween. On either of these two days, you can usually count on at
least seeing the results of a prank, regardless of whether or not you were
directly involved or not. Pranks can range from anything like phony
telephone calls or beeper messages to minor (or even sometimes major)
incidents of sabotage (loaded cigarettes, rigged desk drawers, etc.) and,
usually, conspiracy with others in order to perform the sabotage. While not
necessarily a good thing, pranks usually do offer a certain amount of stress
relief for the perpetrator (and offer no small amount of anguish to the
recipient, particularly those without a self-depreciating sense of humor).
Knowing that BBSers and computer users can get pretty stressed at
times, I knew that there would be those who had, at one time, taken part in
the playing of at least one computer prank at one time in their lives. I
put up a post asking for reports about pranks that have been pulled before,
or info about pranks yet to be pulled, or even pranks that people didn't
have the guts to pull. I think that these responses were pretty
good-natured, although one or two may may sound a little cruel to be played
on less experienced users (and less _forgiving_ users, too).
Ronda, #1 @3475, of Ronda's Riverboat BBS, tells of pulling a fast one on her
co's...
"This might be old... but I thought it was pretty cute when I did
it...
"I changed my command //dos to something only I knew and then made
//dos a fast logoff <g>. I didn't tell my co's about it... just to have a
little fun. It works great as a prank for any time."
-----================================-----
Scooter Rider, #1 @2465, at Scooter's Palace BBS, tells of the time when...
"Down in the 214 area code one year we all changed Logon and welcome
screens and put up other sysops screens on our boards so that the user thought
they had called the wrong board. All got a good laugh out of it and it was a
fairly nice April Fools gag."
-----================================-----
Perseus, #289 @7654, at Paragon, also recalls something similar in my own 716
area code one year...
"There is one very good one that I remember very well. Some years
back, the sysops of Stairway and Midnight Caller exchanged opening screens. It
really blew some minds since 50% of their users called both boards on a
regular basis."
-----================================-----
Alkar Zephyr, #1 @4506, of Alkar's Keep, speaks of a variation of the
`switched ANSI' gag...
"When me and the DM (sysop of formerly @4514, Worlds of Arashacom) were
roommates, we once pulled a practical joke that ended up in getting new users
for both our boards... We switched the phone lines around! Whenever someone
tried to call my board, they got Arashacom, and vice versa! We had a pretty
good laugh... :)"
-----================================-----
Bogie, #1 @3081, from The Entity, tells of two acts of system sabotage on
unsuspecting victims (although neither were meant to cause permanent damage or
data loss)...
"Neither of these have been pulled on users, but they have been done
to various bosses at work:
"1. Several years ago when my supervisor just got a 286 for his desk
instead of the terminal he had been using, a friend of mine and I got to
work early on what was to be his first full day with the computer. I copied
the file Helpcry.com to his hard drive and added it to the autoexec.bat file.
He came in a couple hours later and turned on the computer. We heard him yell
from our office down the hall as his computer had a voice saying, "Help I am
trapped in this computer get me out of here!." The best part of all of this
was when MIS (repair service) came down to check out his computer. MIS was in
on the joke and took the computer for a week.
"2. There is a nasty joke that I help another friend of mine play on
someone that wound up stealing my friend's job. The program we used was from
the shareware collection called Just for Laughs. I don't remember the name of
it, but it's a TSR that is time delayed. Once active, it waits for a number of
times the enter key has been pressed, which is configurable. When these
conditions are met, you get a nice little screen that pops up and says
"Congratulations you have just won one Hard disk format!" By the time they
finish reading this, they notice that the bottom of the screen is counting off
heads and cylinders while the drive light is going. The program actually is
doing seeks to get the drivelight active. This one is not recommended for
anyone with a weak heart." [Editor's Note: Nor is it recommended for those
without a _very forgiving_ sense of humor. Too cruel in my book, but still
damn funny :)]
-----================================-----
Sky, #2 @6560, of Expect a Miracle, made all of the users a sysop for a day
once...
"One year, I put in Merlin's MCI mod. It allowed you to put in things
like user name, phone number etc. I had a BLAST when I made the automessage
anonymously say:
NEW BBS in town!
Call NOW!
User phone number.
"The all panicked, and said `Who put my voice number in there!, I
can't have people calling at all hours.' I've never seen more people reading
the help to find out how to change the automessage!!!!"
-----================================-----
Will, #1 @6754, of Data Express (our IceNEWS Contributing Hardware Editor)
tells another MCI story:
"I think I saw a sysop a while ago that had used MCI codes (tokens that
are replaced with the current user's information) to say something like:
Radical Party at [User's Real Name]'s!
at [User's Home Address]! Call [User's Home Phone] to RSVP!
"I knew he liked to do that kind of stuff, so [when I logged on] it
didn't really faze me.. But it certainly scared a lot of people!"
-----================================-----
Flashback.....
Seafox, #1 @2459, Renyard's Keep, tells of turning back the hands of time on
April Fool's Day...
"Jafo keeps ancient versions of WWIV on his system. I D/l'd WWIV 1.00
from his system. I'm gonna set it up with my user list on a TRS-80 and a 300
baud modem, and on April Fool's Day, I'm gonna switch the two systems. I'm
also gonna date everything 10 years earlier, and allude to events of 1984 in
the message bases. The users are gonna freak."
-----================================-----
Jj, #1 @7100, Another Day in Paradise, gets even with the horny male
downloaders of her system...
"As a female sysop, I found myself getting tired of the endless 'babe'
type .gifs, so I d/led myself some beefcake. HAH! When I //uploaded one of them,
my description was "640x480x256c Whoa!!! Take it off!" Caught quite a few of
the 'babewatchers' on my board! Hehehehe.... But, um, they didn't think it
was very funny."
-----================================-----
As for what we plan to do here at The Cavern, I'm not saying! In case
this issue goes out before April 1st, I don't want our users to catch early
wind of our intended prank. Actually, it will most likely be a combination
of things, some of which _have_ been discussed here by others (that's the
only hint I'll give). As long as it's not malicious and the users can take
a joke, it should be a good time.
However, after seeing some of these other things that people have
mentioned, I think I'll just play it safe and give the modem a rest that
day... :)
Deacon Blues, 2@7653 IceNEWS Contributing Light Bytes Editor
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> The Adventures of ModemMan! <20> By Jots 1@7850 & Deacon Blues 2@7653
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Editor's note: "The Adventures Of ModemMan" is a multi-part adventure
that will be continued in a serialized format.
"In the not-so-distant future, a Top-Secret government experiment goes
awry. A computer-geek with the intelligence of a doorknob is accidentally
transformed mentally and physically by a combination of science, medicine,
technology, and dumb luck. The result: the world's first LIVING COMPUTER...
ModemMan! Disguised as Joe Modem, a mild-mannered sysop of a small
electronic bulletin board service in a large metropolitan city, ModemMan
fights a neverending battle with the sinister forces of evil to protect the
world, bringing truth, justice, and a higher transfer rate to all..."
The Adventures of
M o d e m M a n !
"Insufficient Memory"
Chapter 3: "COPY MODEM.MAN B:\BRAIN"
In our last episode, ModemMan uses his enhanced neural powers to escape
the confines of a limo belonging to the unsavory character of V. T. Killer,
which was being driven by his two henchmen, Blue Ray and Egg's Head.
Reverting to his guise of Joe Modem, he found out from his friend and
bartender Quakey that he's a fugitive; having been framed for data crimes,
which is a capital offense. Joe meets with Pronto, his co-sysop and MM's
helper. Pronto presents Joe with a videotape from DesqTop, the NC of the
largest net in the Tri-State area. DT tells Joe that V. T. has threatened
to crash all the computers in the area, but he thinks someone else is behind
the scheme. Joe and Pronto return to V. T.'s hideout to try to learn more,
but both are captured. After confiscating ModemMan's all-powerful Tool Kit,
V. T. tells both of them that they're going for a ride to meet his boss...
Joe was now somewhat sorry that he'd disabled V.T. Killer's limo
earlier. It certainly was a more comfortable ride than the one that he was
having now. Being blindfolded, bound, and gagged, it made it difficult for
him to figure out exactly where he and Pronto were. However, it felt like
he was lying on top of something that resembled a tire. Coupling that fact
with the sound of a vehicle traveling down a road and the smell of exhaust
gasses, Joe felt safe in surmising that they were locked in the trunk of a
car.
Joe noticed that the road had smoothed, making him suspect that they
had left New York state and were now either in New Jersey or Connecticut.
One whiff of the air made Joe suspect the latter of the two. Soon, the car
slowed to a stop and became quiet. The sound of the doors opening and
footsteps coming closer signaled the end of the ride. The deck lid popped
open and the cool night air rushed into the compartment. As rough set of
hands grabbed Joe and hauled him out of the trunk and onto his feet. The
hands guided him through a doorway and into some kind of building. Joe
heard the sounds of the others behind him. Suddenly, the hands clasped onto
Joe's shoulder, indicating to him to stop.
Joe then heard the voice of V.T. "You goons keep these punks here
while I go see if the boss is in." The voice was not seemingly directed at
Joe. "Get ready to meet an old 'pal' o' yours, ModemMan." A shiver went
down Joe's spine when he heard that. He could not figure out who the heck
this 'boss' guy was. An old pal, thought Joe... how many people do I know,
anyway? Oh well, thought Joe, I guess I'll find out soon enough. Moments
later, he heard the sound of approaching footsteps. The snap of a finger
signaled Blue Ray and Egg's Head to bring Joe and Pronto to their final
destination. They entered another room, then stopped. Another snap of the
fingers started the loosening of Joe's blindfold.
As soon as blindfold was being removed, Joe immediately looked around.
He seemed to be in a office which was converted to a high-tech lab. The
room was relatively dark, although a weird light seemed to be coming from
the back of the room. Near the source of the light was a man in a white lab
coat hunched over a table. He seemed to be soldering something. After two
minutes, he turned off his acetylene solderer and turned on the main
lighting. Still not looking up, he said, "Ah,I see you have brought me
ModemMan and his faithful sidekick Pronto. Good work, Mr. Killer. You
will be rewarded greatly for your services."
That voice, thought Joe, I _know_ that voice...
"Did you have to corrupt any BBSs?" asked the man in the lab coat,
still looking down at the table.
"Uh... No, boss... We caught him right away. An easy find," replied V.T.
The man stood up and walked over to where Joe was standing, his face
now becoming clear for the first time. "So, Joe," he said," don't you
remember me? Hmm?"
Now it clicked. "Dr.Boolean!" cried Joe. "I thought you were in jail!"
"Well, you thought wrong. Tell me, how have you been enjoying what was
supposed to be _MY_ Penultimate neural enhancement chip?"
It came back to Joe as if it all happened only yesterday. Joe Modem
was an assistant data entry clerk in a Top-Secret government project called
"Access," which was supposed to deal with the expansion of the human limits
by surgically implanting a super-computer chip - known as the "Penultimate"
chip - into the brain of the chip's creator, Dr. Boolean. "Access" was to
be the test-bed for future conscious-raising experiments that would
eventually lead to the incorporation of the "Penultimate" technology into
applications for the country's military. Boolean had planned on
double-crossing the government by using the chip for unsavory personal
reasons of cyber-world domination.
Late one night, while at the lab, Joe was taking a break from his
duties and unknowingly decided to have a seat in the chair in which the
operation was to be performed. After all, the chair looked so comfortable
and Joe was dead tired from inputting data for 10 hours straight. Outside,
a fierce electrical storm was raging. Lightning struck the facility,
causing numerous power overloads and activating the implant sequence of the
robotic operation equipment.
In a matter of seconds, Joe was surgically altered by the machinery. A
DIN-style plug receptacle was implanted in his right ear, allowing for a
connecting cable to link Joe's cerebral cortex into any standard keyboard
receptacle of any computer. A modular telephone jack was inserted into
Joe's right nostril, allowing for cerebral access to any telephone line. A
combination serial/parallel port interface was implanted into the roof of
his mouth to allow for cerebral access to various input/output devices.
Finally, the Penultimate chip was inserted directly into Joe's brain to
control all of the functions. Thus, ModemMan was born.
Using his newfound powers - thanks to his finding the set-up manual for
configuring his neurosystem - Joe powered-up the Penultimate chip and began
to explore his newfound abilities. Upon searching through the computer and
finding out Boolean's plans of cyber-domination, ModemMan quickly alerted
the Feds to Boolean's evil plot while destroying all schematics and
templates of the Penultimate chip. Joe thought that the chip was too
potentially dangerous to fall into the wrong hands.
Joe had thought that Boolean had been captured by the authorities.
Fearing that he would become the subject of further experimentation by the
government scientists, Joe quickly departed the center and decided to go
`underground' to duck the Feds. He resettled to his original home, NYC, and
tried to settle back down to a `normal' routine of life and computing.
"Oh, by the way, Joe, " said Boolean, jolting Joe back into the
present, "I just thought I should tell you who your 'sidekick' Pronto
_really_ is. Frisk 'im, boys!" Blue Ray and Egg's Head pulled out a pocket
metal detector stick and started to search Pronto. When they got to his
jacket pocket, it started beeping loudly. Ray stuck his hand into the
pocket and pulled out a small black wallet-sized case. He handed it to
V.T., who then handed it to Boolean. "Ah, yes, here it is. Why don't you
take a look at it, Joe?" Boolean waved the case in Joe's face for him to
see.
Inside was a badge, but not just any badge. It was a rectangular
silver plate, with the letters M.O.D. embossed on it. Joe immediately
recognized it as the symbol of a Deputy Enforcer of the Modem Operations
Directorate. And that meant that Pronto was really an undercover fed!
"Pronto,is this for real?" asked Joe.
"Sorry to tell ya, MM," he replied, "but it is. I was assigned to keep
an eye on you and the Penultimate chip so that nothing would happen to it
and to make sure you didn't get out of line with using it. Sorry."
"Come along, Joe," said Boolean as he led Joe over to a chair very
similar to the one that he'd received his enhancement in. "I want to show
you a special machine I call... The Brain."
"That's original," deadpanned Joe. If he was going to fry, he might as
well get a couple of zingers in while he could. "Did you think of that one
all by yourself?"
Boolean was too cool of a customer, though, and let the remark slide
without comment. "It's my little way of saying 'Thank you' for taking my
chip and a little introduction of what's to come. Have a seat, Joe,"
Boolean said mockingly, "make yourself comfortable."
Joe obliged and sat down. He was instantly strapped in to the chair by
Blue Ray. Dr. Boolean took the cord from the machine and ever-so-carefully
inserted it into Joe's nostril,where his RJ-11 jack was. With a faint
click, the cord was secured.
"OK, Ray," called Boolean. "Turn it on!" Blue Ray immediately pulled a
lever and machine started to hum. Ray then pulled another lever and a few
lights lit up on the control panel. "Get ready, 'ModemMan,'"said Boolean,
"this is going to get quite devastating."
At first, Joe felt nothing. As the machine proceeded to warm up, Joe
started feeling a little weird. It felt like a nagging headache. Then,
when Blue Ray pulled the final lever, it came on like a hurricane.
<20>crD<72>]<5D>i[<5B>6<EFBFBD><36>SQ<53><51>l(՟<>>8E!<21>ߠ#@<40><><EFBFBD>bV<62><56>@<40>i<EFBFBD>,<2C><>Bѷ[<5B><>g3o)<29>E<EFBFBD>U<EFBFBD><55>K<EFBFBD><4B>e<EFBFBD><65>G<EFBFBD>Ho<48>
;<3B><><EFBFBD><EFBFBD><49><57><DBB9><EFBFBD>mi<6D>.fO<66><4F><<3C><>͆uF<75><46>l<EFBFBD>;W/<2F><><EFBFBD>í<EFBFBD><C3AD>灣ɜ<E781A3><C99C><EFBFBD><ED92BD><EFBFBD><EFBFBD><EFBFBD>N0_<30>-<2D><>q<EFBFBD><71>?G|ڨ<>uV
Boolean was jacking streams of line noise into him, and tons of it!
"ARRRRGGGHHHHH!!" screamed Joe in agony.
<20><><EFBFBD><33>"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD>f<EFBFBD><66><EFBFBD><EFBFBD>&i<><69><EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD>[Et<45><74><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*<2A>IU<49>P<EFBFBD><50>(<28><><EFBFBD>hSp<53>ZV8<56><38><EFBFBD><EFBFBD>
?<3F>ůE>*<2A>H"<22>Ɍ<EFBFBD><C98C><EFBFBD>+0'<27><><EFBFBD>w<EFBFBD>3<EFBFBD><33>`<60><><EFBFBD>w<EFBFBD><77><EFBFBD><EFBFBD>g#NW<4E>c&<26><><EFBFBD>l<EFBFBD><6C><EFBFBD><EFBFBD>l5ka<6B><61><EFBFBD>p<EFBFBD>(oL<6F>דxe<78><65><EFBFBD><EFBFBD><EFBFBD>\
q<EFBFBD>Z<EFBFBD>f<EFBFBD> <20>I<EFBFBD><49>d<EFBFBD>Dj<44><6A>T<EFBFBD>R<EFBFBD>[<5B>`}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>kBnʵ<6E><CAB5>w<EFBFBD><77>xg<67><7F>3<EFBFBD>߶<EFBFBD><DFB6>#<23>cX<63>B<EFBFBD>*eʢ<65>ރ<EFBFBD>S<EFBFBD>O<EFBFBD>۰f$<24>a
"YYYYEEEAAAAAARRRRRGGGGGGGHHHHHHHH!!!!!"
;<3B><><EFBFBD><EFBFBD><49><57><DBB9><EFBFBD>mi<6D>.fO<66><4F><<3C><>͆uF<75><46>l<EFBFBD>;W/<2F><><EFBFBD>í<EFBFBD><C3AD>灣ɜ<E781A3><C99C><EFBFBD><ED92BD><EFBFBD><EFBFBD><EFBFBD>N0_<30>-<2D><>q<EFBFBD><71>?G|
޾<EFBFBD>x?Wsiy<69><79>s<EFBFBD><73><EFBFBD><EFBFBD>":1&<26><>`Ǯe<C7AE><65><EFBFBD>?<3F><><EFBFBD>3<EFBFBD><33><EFBFBD>0#,b<><62>q<EFBFBD><71>Z<EFBFBD><5A><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD><33>7<EFBFBD>h<EFBFBD><68>kW,<2C>o<EFBFBD><6F>Q<EFBFBD><51><EFBFBD>#<23>p<EFBFBD>p
:K/0q<30>R7$2A5%s<>;QJB<4A>y<EFBFBD>1Q<31>k:!<21>`<60>˯<EFBFBD><CBAF>Ɓ<EFBFBD><C681><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>#<23>Կ#ʕr<CA95>ʹ<EFBFBD>3[uU<75><55><EFBFBD>%5<>Rm<52><6D><EFBFBD>Z3<5A>}:
"AAAAIIIIIGGGGHGHHHHHHH!!!"
To Be Continued...
In our next chapter: Will this be the end of our hero? Will ModemMan
survive the onslaught of line noise, or will his brain simply drop carrier
and hard-lock? And what of the Penultimate chip? Will the evil Dr.
Boolean regain what he feels is rightfully his? Find out the answer to
these questions and more next month in the mind-numbing finale of "The
Adventures of ModemMan!"
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> Silly Strings <20>
<EFBFBD> From IceNET Sysops Everywhere <20> By Ima Moron 1@9661
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
This month I've chosen some silly minimum editings that you
might add to your BBS;
Located at the conference menu..."Minimum BPS Rate:"
String #1127 > Minimum $ modem:
Located at the new user information inquiry...
String #1168 > Can you support ANSI? (Y/N) if yes send $$ ..
Located as a sysop message, "Not enough memory"
String #1272 > More instances? More $, insufficient MEM.
option;
String #1272 > Windows on one meg or less? HA!HA!HA!HA!
Located as a sysop warning message, "Shut Down All Instances"
String #1413 > Meltdown! All instance shutdown.
Taglines for this issue;
From Jot$ 1@7805 - The Gravity Center
To B: or not to B:, that is the backup.
From Papa Bear 1@5079
The information went data way.
From Tweaty Bird 1@9650 WWIVNet - >UNKNOWN< bbs.
Windows...
From the people that brought you Edlin.
From The Grey Wanderer 1@9995
Ever wonder why Oprah spelled backwards is harpO?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
<EFBFBD> IceNEWS is an independent newsletter published monthly as a service to <20>
<EFBFBD> IceNET, its Sysops and users. The opinions & reviews expressed herein <20>
<EFBFBD> are the expressed views of the respective writers. All Rights Reserved.<2E>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>