2651 lines
140 KiB
Plaintext
2651 lines
140 KiB
Plaintext
ÞÛÛݰ ÜÛÛÛÛÛÜ ÜÛÛÛÛÛÛ° ÛÛ° ÛÛ° ÜÛÛÛÛÛÛ° ÛÛ° ÛÛ° ÜÛÛÛÛÛÜ
|
|
ÛÛ° ÛÛ°°°°° ÛÛÜÜÜܰ ÛÛÛÜ ÛÛ° ÛÛÜÜÜܰ ÛÛ° ÛÛ° ÛÛ°°°°°
|
|
ÛÛ° ÛÛ° ÛÛßßßß° ÛÛßÛÛÛÛ° ÛÛßßßß° ÛÛ° Ü ÛÛ° ßÛÛÛÛÛÜ
|
|
ÞÛÛݰ ßÛÛÛÛÛß ßÛÛÛÛÛÛ° ÛÛ° ßÛÛ° ßÛÛÛÛÛÛ° ÛÛÜÛÛÛÜÛÛ° °°°°ÛÛ°
|
|
ÛÛ° ÛÛ°°° ÛÛ°ÛÛ° ÛÛ° ÛÛ° ÛÛ°ÛÛ°° ßÛÛß ßÛÛß ßÛÛÛÛÛß
|
|
Þݰ Þݰ ÞݰÞݰ Þݰ Þ° ÞݰÞݰ Þݰ Þ° Þݰް
|
|
ݰ ް ݰ ް ݰ ް ް
|
|
|
|
The Journal of IceNET June 1994
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ Editor's Desk ³
|
|
³ The Upper Registers Deacon Blues (2@7653) ³
|
|
³ M/E Comments Louie (6@1) ³
|
|
³ Letters To The Editors Louie (6@1) ³
|
|
³ IceNEWS Op-Ed Forum Louie (6@1) ³
|
|
³ ³
|
|
³ Feature Stories ³
|
|
³ WWIV Goes To School Chris (1@7668) ³
|
|
³ WWIV Security: One Semi-Expert's View Crossfire (1@8854) ³
|
|
³ ³
|
|
³ WWIV-Specific ³
|
|
³ WWIV Mod and Utility Reviews Papa Bear (1@5079) ³
|
|
³ ³
|
|
³ Software/Programming ³
|
|
³ To DOS, Or Not To DOS... Mega Bite (172@7672) ³
|
|
³ Learning C - Pt. 5 Daarkhan (1@7676) ³
|
|
³ Artificial Intelligence - Pt. 2 Louie (6@1) ³
|
|
³ ³
|
|
³ Hardware ³
|
|
³ Will Crawford On: The Future of Computing Will (1@6754) ³
|
|
³ Give me an A, Give me a T, Give me a Z Fractal (3@5750) ³
|
|
³ ³
|
|
³ Lite Bytes ³
|
|
³ Tales From Being A BBS Sysop - Funny Users Ima Moron (1@9661) ³
|
|
³ How They Got Started In BBSing - Pt. 3 Louie (6@1) ³
|
|
³ Silly Strings Ima Moron (1@9661) ³
|
|
³ Word Search Puzzle Answer Louhal (1@10) ³
|
|
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
|
|
³ IceNEWS Staff For June 1994 ³
|
|
³ ³
|
|
³ IceNEWS Publisher - Jim 1@1 ³
|
|
³ IceNEWS Editor-In-Chief - Deacon Blues 2@7653 ³
|
|
³ IceNEWS Managing Editor - Louie 6@1 ³
|
|
³ ³
|
|
³ IceNEWS Contributing Editors ³
|
|
³ Hardware - Will 1@6754 Software/Programming - Daarkhan 1@7676 ³
|
|
³ WWIV-Specific - Papa Bear 1@5079 Lite Bytes - Ima Moron 1@9661 ³
|
|
³ ³
|
|
³ Editors-At-Large - Louie 6@1, Chris #1@7658 ³
|
|
³ IceNEWS Production - Spelunker 1@7653 ³
|
|
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
|
|
³ IceNEWS is always seeking submissions from those who have ³
|
|
³ ideas for stories. If you have any ideas that you might ³
|
|
³ like to see published, contact any IceNEWS editor or ³
|
|
³ subscribe to IceNEWS Beat, subtype IceNEWS, host @1. ³
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ E D I T O R ' S D E S K ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ The Upper Registers ³ Deacon Blues (2@7653)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
Here's a couple of thoughts that I had while cleaning the coffee cup
|
|
rings off of Jim's old desk, which is now mine...
|
|
______________________________________________
|
|
|
|
Several weeks ago on the IceNET National Sysops Only sub, I saw something
|
|
that really warmed my heart. It seems that a local IceNET sysop from my 716
|
|
area code had a problem with one of the users of his system. The person had
|
|
apparently sent out some rather nasty e-mail to a number of network sysops and
|
|
users. The sysop of the system that the messages originated from posted on the
|
|
sysop sub, publicly apologizing to everyone for the actions of that user and
|
|
stated that he was revamping his BBS setup to make sure that something like
|
|
this did not occur again. While this was a great gesture of the sysop's part,
|
|
it is not the part of the story that got to me.
|
|
|
|
Several posts later, there was a response from a sysop from another area
|
|
of the net that had been the recipient of one of the offensive mailings. Much
|
|
to this person's credit (who also happens to be an IceNET Area Coordinator),
|
|
this sysop did not blast the other sysop for the occurrence. Instead, the
|
|
person posted saying that it was understood that sometimes these things happen
|
|
in the net and that there were no hard feelings over what happened. This
|
|
person went on to say the it was understood that there is no way for anybody
|
|
to monitor their system 24 hours a day to make certain that things like this
|
|
do not happen. This sysop then extended a hand to help the other in the
|
|
restructuring of the other's BBS and wished him the best of luck.
|
|
|
|
I personally take my hat off to both of these individuals for showing an
|
|
uncommon amount of class in the handling of this matter. Many lesser sysops
|
|
would have taken the opportunity to flame or bash the sysop of the system
|
|
where the messages originated from or would have made other comments that
|
|
could have belittled the other sysop. I've seen flame wars on sysop subs start
|
|
for less. Much to my pleasure, the situation was solved amicably, without
|
|
slurs, slander, and seamy behavior. Maybe Jim should consider changing the
|
|
name of the network to NIceNET...
|
|
______________________________________________
|
|
|
|
For those who may have missed it, "Newsweek" recently (May 16, 1994) ran
|
|
a cover story regarding the gender gap in BBSing. In a part of the story, a
|
|
number of female users related to the author how they were being treated
|
|
unfairly by the other inhabitants of cyberspace, saying that they are often
|
|
the target of flame mail or rude posts by male users for speaking their
|
|
opinions about various subjects and railroaded off of message bases. They also
|
|
stated that when it was found out that they were females, they often had to
|
|
deal with mail and posts in which they felt they were sexually harassed (asked
|
|
for body statistics, dates, and sexual favors).
|
|
|
|
In another story that recently appeared on PBS's "The MacNeil/Lehrer News
|
|
Hour" (May 12, 1994), the cyberworld was again the subject of bad press. The
|
|
show related the story of a young male who, through his computer access at the
|
|
prestigious Massachusetts Institute of Technology, managed to set up an
|
|
illegal BBS system that encouraged the uploading and downloading of
|
|
commercially-released software. In other words, "pirate" software.
|
|
|
|
While Internet was prominently named in both stories (in the case of the
|
|
pirate system, it was apparently an anonymous FTP site set up at the school
|
|
itself), I can't help but think that all of this reflects badly on all
|
|
computer networks and BBSing in general. Stories of this type can only further
|
|
the public misconception that BBSes are horny teenaged he-man woman-hating
|
|
boys clubs where you can download copies of WordPerfect for the price of a
|
|
phone call.
|
|
|
|
Unless the BBS community both cleans up its act and starts to find ways
|
|
to generate more positive press coverage of the cyberworld, I fear that the
|
|
false perception I mentioned above will not only damage the credibility or
|
|
create prejudice against the thousands (or tens of thousands... who really
|
|
knows for sure?) of good, legitimate sysops around the world but will also
|
|
turn some potential newbies -- females in particular in light of the
|
|
"Newsweek" story -- away from the idea of typing "NEW" at the "NN" prompt. The
|
|
real world is moving into computing, BBSing, and networking at a blistering
|
|
rate. Unless more tolerence and openness is shown toward these new drivers on
|
|
the data highways, the proposed Information Superhighway (now called the
|
|
Information Infrastructure by the politically-correct) is going to look like a
|
|
California freeway; with people taking pot-shots at other people who cut them
|
|
off, look at them the wrong way, intrude on their space or otherwise annoy
|
|
them.
|
|
______________________________________________
|
|
|
|
Well, that's enough musing for this month. Time to get on to IceNEWS
|
|
matters. In that respect, I would like to welcome a few new faces to the
|
|
editorial ranks here. Papa Bear, #1 @5079, comes aboard as a Contributing
|
|
Editor and joins our WWIV Specific department. Papa starts out this month by
|
|
answering the call of a number of IceNEWS readers by providing a couple of
|
|
reviews; one on the popular utility AutoSend, the other on a BBS mod.
|
|
Daarkhan, #1 @7676, steps into the Software/Programming department as a
|
|
Contributing Editor. Readers of past issues will recall his name from the
|
|
continuing series on learning C programming, a series that he continues in
|
|
this issue. Last, but not least, is Chris, #1 @7668, who has joined Louie as
|
|
an Editor-At-Large and will be contributing to various departments. Chris
|
|
starts his tenure here with a Feature story on how he got his school to set up
|
|
and operate a WWIV BBS.
|
|
|
|
The addition of these fine folks is in direct response to feedback
|
|
received from our readers asking for IceNEWS to be able to bring you a wider
|
|
range of stories. With these new additions, I feel that we have taken the
|
|
first step in that direction. Another step taken to improve the quality of
|
|
IceNEWS was a recent meeting of the 716-area staff (myself, Louie, Daarkhan,
|
|
Chris, and Spelunker) to "gang edit" the copy of this issue for errors. It was
|
|
a useful and productive meeting which I feel worked out well and should
|
|
benefit all of our readers. Hopefully, we will be able to continue this
|
|
practice in the future.
|
|
|
|
This shouldn't let us off the hook, though. We still need to keep hearing
|
|
from our readers about what you like and don't like and want or don't want to
|
|
see in future issues of the Journal. The Letters To The Editors section of
|
|
this issue contains a letter telling us just that. We need to hear from more
|
|
of you about whether or not you agree with these views and why you feel that
|
|
way. Remember, if you don't tell us what you want, we can't deliver it to you.
|
|
Please take the time and drop us a line to let us know that you're there.
|
|
|
|
And now, your June, 1994 edition of the IceNEWS Journal. Enjoy!
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ Comments From The Managing Editor ³ Louie (6@1)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
Well, this was a busy month at IceNEWS. Deacon Blues has assumed the
|
|
power position of Editor-in-Chief. Deacon is a long time IceNEWS Editor and
|
|
the rest of the Staff welcomes him to his new position as our fearless leader.
|
|
Deacon already filled you in on the staff expansion with Papa Bear, Daarkhan
|
|
and Chris becoming editors. I would like to extend my personal welcomes to
|
|
each of them as well.
|
|
|
|
This months issue provides some very good stories for your reading
|
|
pleasure.
|
|
|
|
Crossfire (1@8854) starts us out with an article about WWIV Security. It
|
|
contains just about everything a sysop ever wanted to know about ways he or
|
|
she can protect their system from unwanted hack attempts. It should be noted
|
|
that this article does share a common subject with a story written for the May
|
|
1994 issue by Papa Bear. Both articles were received within days of each other
|
|
and were both written with no input from each other. As PB's story was
|
|
received first, it was printed first. Crossfire was kind enough to allow us to
|
|
hold his article over until this issue.
|
|
|
|
Daarkhan and I continue our series articles about Learning C and
|
|
Artificial Intelligence respectively. I also have a third installment of "How
|
|
They Started BBSing," with segments this time coming from from Benny Hill
|
|
(1@7400), Wildfire (1@5857) and Daydreamer (2@4501). This is very interesting
|
|
stuff I think most folks are interested in. We got Louhal's (1@10) answer key
|
|
to last month's word search puzzle. Some nice techie articles from Fractal
|
|
(3@5750) on modems and Mega Bite (172@7672) on the DOS vs. Windows debate. Ima
|
|
Moron (1@9661) is his normal humorous self. There are a bunch of other
|
|
articles that you will be interested in as well.
|
|
|
|
Also, in DB's E-I-C Comments, he mentions the Letters to the Editor
|
|
section. We do wish for Letters from our readers. This month we are starting a
|
|
similar feature to the Letter section though. The IceNEWS Op-Ed Forum, which
|
|
users in all of WWIVland can write for.
|
|
|
|
The Op-Ed Forum will allow anybody and everybody to write an editorial in
|
|
which they can expound about their opinions on some issue facing WWIVland,
|
|
IceNET, BBSing, WWIVnet, WWIVLink, etc. This is not for your views on
|
|
President Clinton's Health Care Bill, but for your opinions on issues such as
|
|
"Pings," the Life Arts Network controversy, Information Superhighway, the Big
|
|
Three networks vs. the smaller networks, etc. Letters for the IceNEWS Op-Ed
|
|
Forum should be e-mailed to me (6@1) as I am the Letters guy on the staff.
|
|
Also, unlike the regular Letters section, the Op-Ed Forum will not contain
|
|
IceNEWS Editor responses. An IceNEWS Editor _may_ write for it (as I do in the
|
|
inaugural installment), just not as an IceNEWS Editor, but as their private
|
|
selves.
|
|
|
|
I hope you enjoy this months issue of IceNEWS. We do this all for you,
|
|
our kind-hearted readers. Thanks for reading us.
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ Letters To The Editors ³ Compiled By: Louie (6@1)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
The IceNEWS "Letters To The Editors" column is a forum for the readers to
|
|
express their feelings, thoughts, or opinions regarding IceNEWS. 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
|
|
|
|
|
|
Wildfire, #1 @5857, writes regarding his opinions on IceNEWS:
|
|
|
|
I don't particularly care for learning programming in a computer article.
|
|
I like a hardcopy book, with reference and index, etc., and I always
|
|
understand it better on paper than on a computer. (Yes, I know that I can
|
|
print it out, but it still isn't the same)
|
|
|
|
Maybe hints and tips would be fine. Actually, they would be great. Like
|
|
compiler compatibilities, OS/2, DOS, and Windows compilers, and the
|
|
performance of each, and any workarounds or MAKEFILE changes needed for
|
|
different versions, such as TC++, BC++, and GNU++ compilers. For those of you
|
|
out there who don't know what GNU is, it's an OS/2 Shareware C++ compiler,
|
|
I've yet to unzip my copy of it and look at it. "The Adventures of ModemMan,"
|
|
I skip them. It's filler fluff that I feel is wasted space. Maybe fill it in
|
|
with actual facts about computer industry happenings, Gates vs Stac, etc.
|
|
|
|
|
|
I feel that IceNEWS needs more technical articles. The "Building A PC"
|
|
articles, I didn't even look at, but were highly appropriate (I didn't look at
|
|
them since I built my system, (I'm a hardware specialist)) and there should be
|
|
more of them. Mainly, there should be more product reviews if possible in the
|
|
areas where we would need them; modem test results, com port test results,
|
|
backup devices, and video displays with built in BUS mouse connectors (for
|
|
those of us with multiple modems, too much other hardware, and no more IRQ's
|
|
and expansion slots for other serial ports to run a mouse for our BBS).
|
|
|
|
Another thing we should have [in IceNEWS] is software reviews for our
|
|
BBS. Like new utilities that are available and their actual usability and
|
|
usefulness. Possibly a section for chains reviews, new games and the setups
|
|
for WWIV, and how well the users like the game, and how much the sysop
|
|
actually likes it. There should also be more info on the NET itself, and NET
|
|
utilities that would make our lives easier and that are easy on our
|
|
pocketbooks. I know I'm running on a limited budget so there have to be a lot
|
|
more sysops out there like me who need utils, but don't have a lot of cash.
|
|
|
|
|
|
Louie, #6 @1, IceNEWS Editor-At-Large, responds:
|
|
|
|
I would like to start by extending my personal thanks to Wildfire for
|
|
writing up and e-mailing his comments to me and the rest of the IceNEWS Staff.
|
|
We like to get feedback from our readers. We wish to know what the people who
|
|
read the IceNEWS Journal think about our product.
|
|
|
|
I would just like to state that IceNEWS wants to be read and wants to
|
|
appeal to as many people as possible in the IceNET and WWIVland Communities.
|
|
That is why we publish many different types of articles from Humor and
|
|
Programming Language descriptions to Product Reviews and WWIV-Specific
|
|
articles. We want everybody who reads us to find something they wish to read.
|
|
|
|
Now, Wildfire has told us that he wants to see more tech-type stories in
|
|
the IceNEWS Journal. We have been recruiting more technical articles over the
|
|
past few months. But technical articles need to be written by technical
|
|
people. At IceNEWS, we have subdivided the technical areas into Hardware,
|
|
Software, Programming and WWIV Specific. We are looking for more and more
|
|
articles on each of these sub-topics. This month Papa Bear, our new
|
|
WWIV-Specific Editor, has a good article on WWIV Mod Reviews and includes a
|
|
couple of his own reviews in it.
|
|
|
|
However, I would just like to defend one specific thing that Wildfire
|
|
said. Wildfire does not seem to like Humor articles, like the "ModemMan"
|
|
series by Jot$ (1@7850) and Deacon Blues. Now, myself, I like computer humor.
|
|
I think that a lot of other BBSers around IceNET and WWIVland do as well.
|
|
|
|
So, please e-mail us (6@1 is the address to write to) and tell us if you
|
|
like the Lite Bytes Humor and what appears there. If most people like it, then
|
|
we will try to keep it around, if - in the main - folks think we should give
|
|
it the old heave ho, the we have to toss it aside and see how IceNEWS does
|
|
without humor.
|
|
|
|
We really do want to know what all our loyal readers think of any and
|
|
every aspect of IceNEWS. Please drop us an e-mail at any time to tell us what
|
|
you think of this issue (June 1994), or on anything about it in general.
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ The IceNEWS Op-Ed Forum ³ Louie (6@1)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
This is the first installment of the IceNEWS Op-Ed Forum. We will be
|
|
printing readers' personal opinions about things going on in IceNET, WWIVland,
|
|
the Information Superhighway, etc. Anything about these and other computing
|
|
topics is fair game for anybody to write a Guest Editorial about.
|
|
|
|
Please remember that any opinions published reflect the thoughts and
|
|
opinions of the respective authors and may not necessarily reflect the views
|
|
of IceNEWS, its staff, or any other contributing writers. These opinions are
|
|
in no way endorsed by IceNEWS or IceNET in any official manner.
|
|
|
|
The first person to write a guest editorial for the IceNEWS Op-Ed Forum
|
|
is myself. Somebody has to get the ball rolling and I want to air a gripe.
|
|
It's my opinion and not that of IceNEWS. With that in mind...
|
|
|
|
|
|
Sysop Sub-boards
|
|
|
|
When I read the various sysop sub-boards in IceNET, WWIVnet, WWIVLink and
|
|
other networks, I can't help but wonder just what all these sysops (with a
|
|
smattering of cosysops) are discussing. All that seems to ever get discussed
|
|
is modding, WWIVland politics, techie "my computer blew up, how do I fix it"
|
|
things, Sub-board advertisements and a few more posts about modding.
|
|
|
|
That troubles me a lot. Why? Because I do not think that is what a sysop
|
|
Sub-board should be used for. There are WWIV mod discussion subs already in
|
|
existence. There are WWIVland political discussion subs (WWIVnet Concerns,
|
|
WWIVLink Guidelines, etc.) already in existence. There are subs for technical
|
|
concerns as well. And there are the various Yellow Page Subs for sub-board
|
|
ads. Those subs are where those topics should be discussed in my opinion.
|
|
|
|
What should sysops and cosysops talk about? Simple. How do you make the
|
|
BBSing world a better place? How to deal with users in a variety of ways? How
|
|
to keep their boards good places to call? I realize that these are broad
|
|
topics and possibly a little difficult to discuss, but that is why they should
|
|
be talked about more often. The more that people discuss them, the easier it
|
|
will get to talk about them in the future.
|
|
|
|
Why don't sysops talk about those things much? I think it is because it
|
|
is much easier to talk about 14 lines of code in the latest mod. It is
|
|
specific, it compiles and executes properly or it doesn't.
|
|
|
|
WWIVland politics is pretty stupid most of the time anyway. Who's going
|
|
to be the AC in Area code XXX? Who is going to be King-for-a-day? Admittedly,
|
|
as the movie "History of the World - Part 1" pointed out, it is good to be the
|
|
King... but in most networks (save WWIVLink), the King appointed himself and
|
|
you kind of accepted that fact when you joined that network. If you have to
|
|
have an AC fight in your area, make a sub for the fight to take place on. Then
|
|
the rest of us in WWIVland do not have to hear about it.
|
|
|
|
Sysops and cosysops have got to remember that BBSing is about
|
|
communication. It isn't about sysops and cosysops communicating, it is about
|
|
USERS Communicating. Users are the important folks.
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ F E A T U R E S T O R I E S ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ WWIV Goes To School ³ Chris (1@7668)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
WWIV, the great creation of Wayne Bell and WWIV Software Services, has
|
|
been one of the most popular bulletin board software platforms around and its
|
|
popularity is increasing every day. Bulletin boards are mostly used for fun,
|
|
but now the vast array of applications that are available are becoming more
|
|
practical. Local computer stores have created bulletin boards for support of
|
|
their existing customers as well as a means of public relations in gaining new
|
|
ones. Just recently, however, WWIV has been used for educational purposes.
|
|
|
|
The Hamburg Central School District of Western New York is one of the
|
|
leaders in our area regarding the integration of telecommunications and
|
|
bulletin boards in the classroom curriculum. The Hamburg Junior High School
|
|
started a WWIV bulletin board (The Pinnacle, IceNET @7668) in November of 1993
|
|
and have had tremendous student, staff, and community involvement in the
|
|
project. We have used the bulletin board for many classroom activities.
|
|
|
|
Recently a ninth grade home and careers class used the bulletin board to
|
|
gather information on states they would like to live in as part of a group
|
|
project. Bulletin board users from various states responded to a form that the
|
|
students posted which included several questions pertaining to that state.
|
|
Students found various statistics in each state. They found that the divorce
|
|
rate in California was much higher than that of New York. They also found out
|
|
about some local news in each community as well as collage and education
|
|
information.
|
|
|
|
Another project that we are working on now is simply dubbed "I'm
|
|
Sailing!" One of the technology teachers in the Junior High School will be
|
|
taking his sail boat from Lake Erie to the Caribbean and will be taking all of
|
|
Hamburg with him. Yup, that's right! Armed with a Macintosh Powerbook and a
|
|
modem, he will be updating The Pinnacle weekly as to his progress. Because
|
|
students learn best in "hands on" situations, this project has the ability to
|
|
prove to students the relevancy of the subject matter at hand.
|
|
|
|
Science classes will be able to gather information on tides, currents,
|
|
winds and ecology, etc. which may be used directly in the classroom. Social
|
|
studies and English teachers can collaborate to have students retrieve
|
|
geographical and historical information on the areas visited and compare them
|
|
with encounters by the crew. Math classes might chart the courses on maps from
|
|
information gathered from the bulletin board. This can be directly applied to
|
|
such problems as time/speed/distance relationships by using real-life places,
|
|
people and situations. This is a tangible experience to move students beyond
|
|
the constraints of a text book and the traditional classroom environment.
|
|
|
|
The hard part about using a bulletin board for a class is that a bulletin
|
|
board, traditionally, allows only someone with a modem to access the bulletin
|
|
board. Thanks to Wayne Bell, that is no longer true. As I'm writing this, I'm
|
|
awaiting the arrival of Novell DOS for the bulletin board so that students can
|
|
access it on any of the three local instances we've registered on our
|
|
50-workstation local area network. We are also awaiting the arrival of Filo
|
|
Software Productions Front Door Installer so that we may add FidoNnet to the
|
|
cornucopia of networks that The Pinnacle subscribes to.
|
|
|
|
Well, that's about all we are doing at the moment. We are still
|
|
relatively new and we only have about 200 users, but that is changing quick. I
|
|
already have plans to help two other local school districts in creating WWIV
|
|
bulletin boards for themselves and linking them together with a special
|
|
WWIV-based network. I'm also giving presentations at the University of Buffalo
|
|
on the educational implications of bulletin boards in the classrooms. So, as
|
|
you can see, I'm a busy kid. If you have any suggestions, comments or
|
|
questions feel free to e-mail me. Oh, I almost forgot, one more thing!
|
|
Remember: "An hour spent on The Pinnacle is an hour spent reading and
|
|
writing!" so check it out at (716) 649-3530!
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ WWIV Security: One Semi-Expert's View ³ Crossfire (1@8854)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
WWIV security (or the alleged lack thereof), stock or modded, netted or
|
|
not, is certainly one of the most pressing concerns of virtually every WWIV
|
|
sysop today. I have been a WWIV sysop for over three years and have
|
|
encountered several attempted hacks on other systems (two of which were
|
|
successful) and advised other sysops on how to protect themselves against the
|
|
hacks which were commonly known at the time.
|
|
|
|
There has been a lot of debate lately, particularly in IceNET's WWIV
|
|
Security sub (subtype 213, host @1), about whether or not WWIV does in fact
|
|
contain several internal back doors. One person has even claimed to have found
|
|
a back door in NETWORK.EXE, but the general consensus judges this as highly
|
|
unlikely. Several people claim extensive knowledge of WWIV hacks but cannot
|
|
seem to produce a single viable example.
|
|
|
|
The keys to avoiding hacks are to understand the most common and likely
|
|
hack methods and to set up protection against them. Such methods of protection
|
|
may range from simple ones to highly complex ones requiring skill in C
|
|
programming in order to modify the BBS.
|
|
|
|
There are essentially two types of hacks, under which all known methods
|
|
may be grouped: internal, meaning a flaw in the BBS itself, or external,
|
|
meaning methods which rely on some external program to allow DOS access or
|
|
perform some other function like transmitting copies of CONFIG.DAT and
|
|
USER.LST. Most such programs can more accurately be called trojans, as they
|
|
may claim to be onliners or WWIV utilities.
|
|
|
|
|
|
--- OLD HACKS AND BACK DOORS ---
|
|
|
|
About four years ago, when WWIV 4.11 was new, a very common and
|
|
frequently successful hack was the one I refer to as the "411 Wildcard" hack.
|
|
This method required nothing more than entering ????????.??? as the filename
|
|
to upload; the BBS, thoroughly confused, would then place the uploaded file in
|
|
the main BBS directory. It was necessary to use a protocol which supported
|
|
batch operation as Xmodem would not allow a file with an unknown name to be
|
|
received. DSZ was generally used with the wildcard hack.
|
|
|
|
Obviously, this file could be anything the hacker wanted it to be. It was
|
|
certainly a very dangerous back door in its day, but, thankfully, it was
|
|
extinct by the time 4.12 was released. At any rate, this is an example of an
|
|
internal hack; a flaw in the BBS itself.
|
|
|
|
Popular opinion among most WWIV experts these days says there are few, if
|
|
any, internal back doors to WWIV. Indeed, in my associations with a few of
|
|
these experts, I have not heard one single word about any known internal back
|
|
doors in recent revisions of WWIV. They seem to be known <sarcasm mode
|
|
activated> only to the hackers themselves, who can never seem to give any sort
|
|
of hints as to their exact nature even when dared to do so by an entire
|
|
network. Many who claim to have knowledge of several large back doors seem to
|
|
be basing their claims on what was known about older versions of WWIV. Such
|
|
hack methods are very unlikely to have any relevance today.
|
|
|
|
It is important to note that when I claim belief that WWIV is secure I am
|
|
referring to stock versions or versions which the sysop himself has personally
|
|
modified. There have been several cases where, in direct violation of all
|
|
copyright laws and Wayne's policies, people have made extensive modifications
|
|
to the source and redistributed them as their own work. In some of these
|
|
cases, the person doing the modding has deliberately built a back door of his
|
|
own directly into the distributed version of the BBS, allowing anybody with
|
|
the necessary knowledge (generally an associate of the modder) to simply log
|
|
on and drop to DOS with a single command or keystroke, sometimes not needing
|
|
to go any further than the "NN:" prompt. This would be another example of an
|
|
internal back door, but it is one which has been deliberately and knowingly
|
|
placed there, and as such would not be an inherent flaw in WWIV itself.
|
|
|
|
|
|
--- HACKS THROUGH EXTERNALS ---
|
|
|
|
Barring deliberately created back doors, most methods will be external.
|
|
External programs may be on-liners, WWIV utilities, trojan versions of the
|
|
network software, or virtually any other program which may be called by the
|
|
BBS. Installation of such a program must be done by the hacker himself or, as
|
|
is usually the case, unknowingly by the sysop. If the hacker uploads the
|
|
program, begs the sysop to install it, and the sysop does, the sysop becomes
|
|
an unwitting accomplice in the hacking of his own BBS.
|
|
|
|
If the BBS has been set up correctly, it will be extremely difficult to
|
|
install such an external program without the direct involvement of the sysop.
|
|
What was known as the "extract hack" in earlier versions of WWIV, which relied
|
|
on the presence of a bogus PKUNZIP in the TEMP directory, has been eliminated
|
|
from all recent versions, making it a very poor choice for a hack attempt. The
|
|
"wildcard hack" has also been obsolete for several years and is a danger only
|
|
to those still running 4.11, if in fact anybody is still running it.
|
|
|
|
In order to guard against potential external hacks, it is extremely
|
|
important that every sysop make a full examination of each and every program
|
|
he plans to install in his BBS. This examination should include not only a
|
|
full virus check with everything he has in his arsenal, but also a full scan
|
|
with a utility like CHK4BOMB. If the program was uploaded by an unfamiliar
|
|
user who begs for it to be installed, the sysop should be immediately
|
|
suspicious. I personally would not install it at all.
|
|
|
|
When scanning a program, pay attention not only to the results of virus
|
|
and bomb scans, but also to the text data contained in the program. For
|
|
example, a program which claims to be a BBS log analyzer should have no reason
|
|
to access your USER.LST. External programs uploaded by a hacker may also be
|
|
nothing more than compiled batch files. In this case, you will usually see
|
|
word-for-word the original content of the batch file and you will be able to
|
|
gauge immediately the true intent of the program.
|
|
|
|
Another vital point is for the sysop to be intimately familiar with his
|
|
system. He should know what is in every single archive in his transfers, know
|
|
which files exist and which seem to have appeared out of nowhere, and what can
|
|
be considered "normal" behavior for any given program on his system. Anything
|
|
out of the ordinary should be investigated immediately.
|
|
|
|
|
|
--- SECURING TRANSFER SECTIONS AND ARCHIVERS ---
|
|
|
|
One of my favorite security tips has its origin back in the days of the
|
|
"extract" and "411 Wildcard" hacks, but it remains just as valid today as it
|
|
was three or four years ago - SPELL OUT ALL PATHNAMES. When installing
|
|
protocols, archivers, and editors in INIT, when installing any program in
|
|
//CHAINEDIT, when writing batch files, when defining paths for directories,
|
|
SPELL OUT ALL PATHNAMES. Let nothing go to default. Don't simply specify
|
|
"PKUNZIP" because it is in your PATH= variable. Tell the BBS to look for
|
|
C:\WHATEVER\PKUNZIP.EXE. Given this, there can never be even an ounce of
|
|
confusion as to which "PKUNZIP" you mean. It will be impossible for a bogus
|
|
PKUNZIP to be run unless it has overwritten the real PKUNZIP where it resides.
|
|
|
|
Since the transfer section is a favorite target, several steps must be
|
|
made to protect the system there. I recommend disabling uploads to all
|
|
directories except SYSOP, giving all users the U restriction so their uploads
|
|
will be forced to SYSOP, and turning on "uploads to sysop" in INIT. There is
|
|
no way an upload will go anywhere else unless an external protocol has been
|
|
installed incorrectly. BBS security is only one of the reasons for this.
|
|
Another concern is the welfare of your users. By placing new uploads on hold,
|
|
they can be fully tested and examined before they are ever made available for
|
|
download. Of course, you should also be careful to specify complete pathnames
|
|
for PKUNZIP, etc., in INIT if you choose to leave the archive commands active.
|
|
I personally believe the archive commands are absolutely safe when properly
|
|
configured, so in my opinion there's no reason for past worries about the
|
|
"extract" hack to force you to leave such a useful feature unavailable.
|
|
|
|
While PKUNZIP tends to be the favored archiver on many boards, there are
|
|
certainly others available, and they may have back doors similar to PKUNZIP
|
|
2.04's "rename or overwrite" problem. When installing any archiver for the
|
|
view/extract/add commands in INIT, it is crucial that the archiver's command
|
|
set be examined thoroughly for any options which can allow an extracted file
|
|
to be overwritten rather than renamed, included pathnames ignored, etc.
|
|
Whenever possible, files being extracted from an archive should be allowed to
|
|
overwrite existing files rather than being renamed (assuming the archiver does
|
|
allow renaming), and stored pathnames should always be excluded from the
|
|
extract process.
|
|
|
|
Although it might at first seem dangerous to allow overwrites while an
|
|
archive is being extracted, this is not really the case. WWIV tells the
|
|
archiver where to place the files it has extracted (the TEMP directory), so
|
|
any files being overwritten will be in the TEMP directory only. This may
|
|
sometimes be an inconvenience if multiple archives contain the same filename,
|
|
but it is certainly much safer than allowing a user on the BBS to rename a
|
|
file, complete with the pathname, and place it where he wishes.
|
|
|
|
|
|
--- HACKS COURTESY OF PKWARE ---
|
|
|
|
Now, on the subject of PKUNZIP, although I have said I believe the
|
|
archive commands are perfectly safe, this is assuming the archivers have been
|
|
set up correctly. PKUNZIP 2.04 contains what can be the core of an extremely
|
|
simple and dangerous external hack, and we have Phil Katz to thank for this
|
|
one. Suppose you're extracting from a .ZIP file, and one of the files in the
|
|
archive will overwrite a file which already exists (it's easy - extract it
|
|
twice). By default, PKUNZIP 2.04 will ask you if you would like to rename the
|
|
file being extracted. Now, let's suppose the extraction is being done by
|
|
someone trying to hack your system. He does want to rename the file. His
|
|
keystrokes are piped, courtesy of the BBS, directly to PKUNZIP's "new
|
|
filename" prompt. Suppose he decides to rename it to ..\BBS.EXE or
|
|
\COMMAND.COM? You've got a problem then.
|
|
|
|
The cure? Force PKUNZIP to ALWAYS overwrite existing files. This is done
|
|
with the -o switch. You can set this for the extract command line in INIT, or
|
|
you can set it as an environment variable (SET PKUNZIP=-o). The main point is
|
|
never to let PKUNZIP allow a user to rename a file as it is being extracted.
|
|
This one fix alone will cure what is today one of the single most common and
|
|
dangerous hacks, and often the most frequently unknown or overlooked among
|
|
novice sysops and those who have not already heard about this via the
|
|
networks.
|
|
|
|
|
|
--- OTHER ARCHIVE DANGERS ---
|
|
|
|
Another popular archiver, ARJ, also has a back door very similar to the
|
|
PKUNZIP 2.04 "rename" back door. In fact, it works in the same way. If a file
|
|
already exists, ARJ will, by default, let the user rename the file and send it
|
|
elsewhere. ARJ will give the user a "(YNAQ)" prompt, which means
|
|
Yes/No/Always/ Quit. "Yes" will force the existing file to be overwritten.
|
|
"Always" will tell ARJ to overwrite all existing files without any further
|
|
prompting. "Quit" is self-explanatory.
|
|
|
|
The problem here is the "no" response. If the user tells ARJ not to
|
|
overwrite an existing file, the user will be prompted for a new filename under
|
|
which the extracted file should be written. As with the PKUNZIP problem, if
|
|
this new filename happens to be a key system file, particularly one associated
|
|
with DOS or the BBS, then system security will be very badly compromised.
|
|
|
|
The fix for this problem is slightly different from the PKUNZIP fix, but
|
|
it is just as simple. One of ARJ's switches, -n, will force ARJ to ignore
|
|
files which already exist. As such, they cannot be renamed and redirected.
|
|
|
|
If the -n switch is included in ARJ's "extract from archive" command line
|
|
in INIT (as it most definitely should be), this back door is effectively
|
|
closed and is no longer a danger to the BBS. Thus, ARJ's command line should
|
|
be "ARJ e -n %1 %2." You may also want to tell ARJ to ignore stored pathnames;
|
|
in this case, use "ARJ e -e -n %1 %2."
|
|
|
|
Note that the above back doors are inherent to the archivers themselves,
|
|
NOT to WWIV or any other particular BBS software. This means they are a danger
|
|
not only to WWIV, but to any other software which allows a user to extract
|
|
from an archive. Any sysops of other BBS software reading this article should
|
|
make note of this and take the necessary steps to secure their boards as shown
|
|
above, since these archiver back doors can conceivably be used against their
|
|
systems as well.
|
|
|
|
The following can be used as a basic security test for any archiver you
|
|
plan to install on your system. Create an archive (it doesn't matter what you
|
|
put in it), extract it, then extract it again so it would try to overwrite an
|
|
existing file. If you are given a multiple-choice prompt, as is the case with
|
|
ARJ, try each choice in turn and note the results. You might run across an
|
|
option which allows a file to be renamed. If this happens, examine the
|
|
archiver's command set and use whatever switch or option will prevent a file
|
|
from being renamed, or at least one which will allow existing files to be
|
|
overwritten or ignored. The ability to rename an existing file has been found
|
|
to be a potential back door in at least two major archivers so far. There
|
|
certainly may be others. Don't take the chance - test each new archiver you
|
|
install in INIT and make sure it will not allow a file to be renamed or
|
|
redirected.
|
|
|
|
I have performed the above test with another archiver, LZH (LHA.EXE), and
|
|
have found that LZH will, by default, refuse to overwrite any file which
|
|
already exists. As such, it is my opinion that LZH is safe with the basic
|
|
extract command (LHA e filename.LZH <destination>) and no extra command line
|
|
options need to be used for security purposes.
|
|
|
|
|
|
--- AUTO-SKIPPING DURING EXTRACTS ---
|
|
|
|
PKUNZIP 2.04 has an option with the potential to provide excellent
|
|
security, the "-x@listfile" switch. Using this, it is possible to specify a
|
|
set of files which PKUNZIP will completely refuse to display or extract. Such
|
|
a file may look similar to this:
|
|
|
|
BBS.* INIT.* NETWORK*.* PKUNZIP.* RETURN.* *.BAT
|
|
|
|
Suppose this file is named PREVENT.LST. By passing "-x@PREVENT.LST" on
|
|
PKUNZIP's command line, you will eliminate the possibility that PKUNZIP may
|
|
extract the listed files from an archive. This is more of a precaution than an
|
|
important method of protection, but in my opinion every step toward a more
|
|
secure system is a step which should be taken.
|
|
|
|
I have found that, at least for my purposes, the space given for the
|
|
"extract from archive" command line in INIT is just a bit too short; I can't
|
|
fit the "-x@listfile" switch into the command line I use. If this is also the
|
|
case on your system, you can place this list in your PKUNZIP= environment
|
|
variable. The only disadvantage to this is that you must remove it from the
|
|
environment variable if you do wish to extract any of the listed files from a
|
|
.ZIP archive.
|
|
|
|
|
|
--- ANSI BOMBS ---
|
|
|
|
There has also been a lot of talk about ANSI bombs, especially where BBS
|
|
security is concerned, and in most cases this concern is generally unfounded.
|
|
An ANSI bomb usually relies on the presence of an ANSI driver which allows
|
|
keyboard remaps. The ANSI.SYS which comes with DOS is one such driver.
|
|
However, WWIV does not under any circumstances perform any ANSI decoding with
|
|
the aid of the ANSI.SYS driver. All necessary ANSI translation for cursor
|
|
movement and color is incorporated directly into the BBS itself, and codes
|
|
which are not deemed useful, such as the codes which remap the keyboard or
|
|
change screen modes, are completely ignored by the BBS.
|
|
|
|
In order for an ANSI bomb to have any effect against the BBS, it must be
|
|
translated by the resident ANSI driver. As such, it must be sent to the CON
|
|
device, which is something else the BBS does not do. However, assuming the
|
|
worst does happen and an ANSI remap code finds its way to CON, it will have no
|
|
effect unless the resident driver allows keyboard remaps. In truth, most
|
|
drivers don't allow remaps these days; DOS's ANSI.SYS is one of the few that
|
|
do. Using an alternate driver such as ZANSI or PKSFANSI will completely
|
|
eliminate any and all danger from ANSI bombs which cause keyboard remaps.
|
|
|
|
I have heard rumors of a hack method which involves //UPLOADing a certain
|
|
type of file and forcing the BBS to display it, but this seems to me as if it
|
|
is a variation of an ANSI bomb, and I have never once heard of any case where
|
|
such an attempted hack has been successful. I'm not saying it's impossible,
|
|
because I admit I know little about it, but I'll believe this one if I see it.
|
|
|
|
ANSI bombs in .ZIP comments have also been a concern in the past, but it
|
|
is rather well known at this point that PKUNZIP will not attempt to translate
|
|
ANSI comments unless the -q switch has been used. Leave out the -q, and you
|
|
can't be bombed by an ANSI .ZIP comment. No further elaboration is needed
|
|
here.
|
|
|
|
|
|
--- DANGEROUS DOS DOODADS ---
|
|
|
|
Some of the primary targets of ANSI bombs are DOS utilities such as
|
|
FORMAT, FDISK, and DEBUG, as these have the potential to do the most damage.
|
|
However, they are dangerous only if they can be found. FORMAT should be
|
|
renamed to something known only to you. FDISK can be completely removed from
|
|
the drive, as it is not something you would normally use on a regular basis
|
|
unless your hard drive is ready for the cemetary. DEBUG, unless you frequently
|
|
do assembly language programming, can also be safely removed from your drive.
|
|
If you must leave it on your drive, rename it as you have done with FORMAT.
|
|
|
|
It is entirely possible to protect your drive from FORMAT, even if it has
|
|
been renamed and the new name is somehow discovered. The key is in the volume
|
|
label. With all recent versions of DOS, FORMAT will prompt you to enter your
|
|
hard drive's volume label before it will proceed with formatting your drive.
|
|
This in itself does not amount to an effective security measure, but suppose
|
|
your label is something which simply cannot be entered from the console? I am
|
|
not referring to high-bit ASCII characters, which can be easily entered using
|
|
an alt+keypad combination; rather, I am referring to lower-case characters.
|
|
|
|
|
|
--- FANCY TRICKS FOR THE EXPERT ---
|
|
|
|
When you enter a response to FORMAT's volume label prompt, DOS will
|
|
convert your input to upper-case characters. Now suppose your label is "My
|
|
System" instead of "MY SYSTEM." When you try to enter "My System" in response
|
|
to the prompt, DOS sees this as "MY SYSTEM." Since "MY SYSTEM" does not match
|
|
"My System," FORMAT will not proceed!
|
|
|
|
In order to pull this trick, you will need a utility capable of
|
|
performing low-level editing directly on the File Allocation Table (FAT)
|
|
itself. Norton Utilities and Disk Commando are two such utilities. (You will
|
|
also need to be thoroughly familiar with the use of those utilities. I do not
|
|
recommend this patch to novices.) Search the FAT for your volume label, and
|
|
edit it to contain lower-case characters.
|
|
|
|
But, won't label be able to change this back to something which can be
|
|
entered from the keyboard? The answer is, no, not if it's done correctly (I
|
|
also recommend LABEL be renamed or removed). The volume label itself is
|
|
nothing but a null file with the exclusive <L>abel attribute set. Since it is
|
|
a file, you can do with it what can be done with almost any other file. To be
|
|
exact, it can be made read-only! So, while you're editing your FAT, set the
|
|
<R>ead Only attribute for your volume label. Not only will it be protected
|
|
from LABEL, it will also be protected from many other utilities, such as
|
|
XTree, which normally are capable of changing the volume label. After
|
|
performing these operations, I have tried changing my label with everything
|
|
I've got, and nothing but a sector editor seems capable of changing it.
|
|
|
|
Of course, a truly capable programmer could defeat this method, but if
|
|
such a hacker has managed to get this close to your DOS then you were in
|
|
trouble quite a while beforehand.
|
|
|
|
|
|
--- PROTECTION FROM THE INSIDE ---
|
|
|
|
Another way to protect the BBS from the inside is to modify the commands
|
|
for //DOS, //CHAINEDIT, etc. This is done in the source code itself, and is an
|
|
easy patch even for those with little or no modding experience - search for a
|
|
block of case{} statements containing the BBS sysop commands, change them to
|
|
whatever you wish, and recompile. Changing the commands is such a common
|
|
practice that my mention of it does not even approach being newsworthy.
|
|
|
|
Some sysops have added even more internal protection by either simply
|
|
eliminating the //DOS feature altogether or by adding a second password to be
|
|
used in addition to the system password. This second password is usually hard
|
|
coded into the BBS itself, requiring you to recompile the BBS if you change
|
|
the password, but those who use this trick swear by it. I wish I could show
|
|
novice modders how to add the second password, but I don't speak C.
|
|
|
|
|
|
--- PROTECTION THROUGH INIT.EXE ---
|
|
|
|
Another good security measure targets the definition of SL privileges in
|
|
INIT. As you know, there are a total of 256 different security levels which
|
|
can have various privileges, time limits, etc. assigned to them. What I have
|
|
done on my system is select a specific set of SL's for various purposes and
|
|
blanked everything else out. SL 254 is as good as SL 0 on my BBS, because I
|
|
have stripped all time, all privileges, and turned on all restrictions. It
|
|
takes time, but it's worth the effort.
|
|
|
|
Suppose you F9 a user and, while your back is turned (never turn your
|
|
back on an F9'ed user!), he goes into //UEDIT and gives himself an SL upgrade.
|
|
The highest SL which can be given in UEDIT is 254; so, when he sees he can't
|
|
give himself 255, he tries for the next best thing and winds up with a 254 SL.
|
|
Now, you've got everything ZEROED OUT for that SL. As soon as he sets his 254
|
|
SL, he is out of time, out of power, out of privileges, and out of luck. The
|
|
board kicks him off at the main menu and, if you have done as you should and
|
|
restricted that SL to one call per day, he will not be able to log on again
|
|
that day under that account. Simple, devious, and effective.
|
|
|
|
I'll return briefly to the subject of pathnames, particularly the TEMP
|
|
directory. While the old extract hack has been eliminated, it is still - in my
|
|
opinion - not a good idea to make the TEMP directory one branch down from your
|
|
main BBS directory. The reason for this is that writing a file as ..\file.ext
|
|
will send that file to the directory immediately preceding the current direc-
|
|
tory. If that directory happens to be your main BBS directory, it could cause
|
|
serious problems.
|
|
|
|
Make your TEMP directory AT LEAST two steps removed from your main BBS
|
|
directory. If you have several logical or physical drives, your TEMP directory
|
|
should reside on a different drive than your main BBS directory.
|
|
|
|
I also recommend changing the default pathnames used in INIT for the
|
|
DATA, GFILES, MSGS, BATCH, DLOADS, and TEMP directories. Many hack methods,
|
|
valid or otherwise, rely on a sysop's laziness and assume these pathnames have
|
|
been left at their default values. The trick here is to fool the hacker in
|
|
every way possible, and in many cases the only way to do that is to stay one
|
|
step ahead of him. You may also want to use a non-standard name for the main
|
|
BBS directory as well. You may want to call it BOARD or WWIV or even something
|
|
which doesn't even look as if it's BBS-related.
|
|
|
|
|
|
--- THE FORGOTTEN LOGON ---
|
|
|
|
Many novice sysops aren't aware that WWIV also contains a reserved logon
|
|
"account" similar to the !-@NETWORK@-! logon. This account is called the
|
|
!-@REMOTE@-! account and can be used to call a program called REMOTE. This may
|
|
have valid uses, especially when running file-request utilities or linking to
|
|
networks which do not support the WWIV network exchange protocols, but in many
|
|
cases it is little more than a back door waiting to be opened. If a hacker
|
|
manages to place a REMOTE program where it can be accessed by the BBS, he can
|
|
simply enter !-@REMOTE@-! at the "NN:" prompt and have his trojan execute. Of
|
|
course, as is the case with trojans, they can do whatever the authors want
|
|
them to do. This can extend as far as transmitting copies of CONFIG.DAT and
|
|
USER.LST; once those files are in a hacker's possession, he's got the sysop's
|
|
account and the system password.
|
|
|
|
To protect against this, it is not necessary to do anything more than
|
|
install a REMOTE program before anybody else can do so. Place a file called
|
|
REMOTE.* (where * can be COM, BAT, or EXE) in your main BBS directory and set
|
|
it to read-only. At the !-@REMOTE@-! logon, the BBS will execute your REMOTE.*
|
|
program. If you have eliminated the possibility of this file being overwritten
|
|
by such methods as the PKUNZIP 2.04 rename back door, then you have protected
|
|
yourself from the !-@REMOTE@-! hack.
|
|
|
|
If you can program in any language, you might also want to make your
|
|
REMOTE program do such things as write to the daily log and reprimand the
|
|
caller. At the very least, you can use a REMOTE.BAT which looks similar to
|
|
this:
|
|
|
|
@echo off echo Nice try, but the REMOTE logon has been closed! > COM1
|
|
echo ATH0 > COM1
|
|
|
|
If you have experience with C and the WWIV source code, you can go in and
|
|
comment out the entire block of code which processes the !-@REMOTE@-! logon;
|
|
in this case, it cannot possibly be used as a back door even if a trojan
|
|
REMOTE has somehow been installed.
|
|
|
|
|
|
--- ONE WORD: BACKUPS! ---
|
|
|
|
The importance of making regular backups cannot be too strongly or
|
|
frequently stressed. They may be extensive and involve mass-storage devices,
|
|
or they may simply be .ZIPped copies of every last file related to your BBS.
|
|
At the very least, you should keep frequently-updated backup copies of
|
|
CONFIG.DAT and your DATA and MSGS directories. It is also a good idea to make
|
|
regular backups of your networks' directories, especially if you are hosting
|
|
subs. It would be a major inconvenience to your subscribers if you suddenly
|
|
lost all your subscription data. Think about which files would cause headaches
|
|
if they got lost and BACK 'EM UP!
|
|
|
|
|
|
--- CONCLUSION ---
|
|
|
|
These are just some of the more common back doors and security holes
|
|
known or alleged to exist in WWIV. It is my opinion that the majority of the
|
|
older back doors, such as the extract (bogus PKUNZIP) and wildcard hacks, will
|
|
have no effect against a properly-configured and recent version of WWIV. Other
|
|
points, such as ANSI bombs, can be easily nullified (if they are indeed even a
|
|
danger at all) by using the proper ANSI driver, and in fact the general
|
|
concern over WWIV being vulnerable to ANSI bombs seems to be completely
|
|
baseless.
|
|
|
|
Hacks performed with the aid of external programs usually rely on a
|
|
sysop's lack of knowledge, caution and/or common sense, as they cannot usually
|
|
be installed or activated in any other way except perhaps by renaming an
|
|
extracted file with PKUNZIP 2.04 or ARJ 2.30, and even these are useless to a
|
|
hacker if the proper precautions have been taken (remember, specify -o for
|
|
PKUNZIP and -n for ARJ).
|
|
|
|
I believe WWIV is 100% secure in the hands of an informed sysop.
|
|
Protecting your system against hacks may at times seem to border on paranoia
|
|
and certainly requires a bit of cleverness, but isn't a little cautious
|
|
paranoia worth the effort when your entire system is at stake?
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ W W I V - S P E C I F I C ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ WWIV Mod and Utility Reviews ³ Papa Bear (1@5079)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
Introduction, AutoSend v1.13 and ALTW-07.MOD
|
|
|
|
A few weeks ago, I introduced a new sub-board into the WWIV world. It is
|
|
a sub-board for which I thought there was a real need. I hadn't seen anything
|
|
like it any time previously or else I wouldn't have done it.
|
|
|
|
It is called "WWIV MOD/Utility Reviews and Discussions." It is a sub
|
|
board on the WWIV-InfoBahn whose sole purpose is to review (and discuss, too
|
|
<g>) WWIV modifications and external utilities. No actual coding is to be
|
|
posted on this sub-board. Some, if not all, reviews may find their way into
|
|
the "pages" of IceNEWS as part of out WWIV-Specific department.
|
|
|
|
It accomplishes its goal by using a set format to review the items and
|
|
with specific rules governing how the reviews are to be written. I'll show a
|
|
couple of reviews, one for an utility, and another for a mod. But first, the
|
|
rules:
|
|
|
|
(1) The author of any modification/utility may not review their own work.
|
|
[And they shouldn't goad a friend into it either!]
|
|
|
|
(2) Modifications/utilities should be either registered copies of the
|
|
software or, if not registered, then they *must* be fully-functional
|
|
versions!
|
|
|
|
I'll now explain the format that should be used for review submissions on
|
|
the sub board. The primary purpose of this format is to provide anyone
|
|
considering these utilities/modifications with a quick way to determine
|
|
whether this is for them. It is not meant to be an exhaustive write-up.
|
|
|
|
NAME OF MOD/UTILITY BEING REVIEWED: {proper name}
|
|
AUTHOR'S NAME/HANDLE : {real name and handle}
|
|
VERSION NUMBER : {important to note ver. no.}
|
|
VERSION DATE (.EXE date stamp) : {this can be important, too!}
|
|
OVERALL SCORE : {a total of all scores below, divided by
|
|
4 (or 5, in the case of a mod)}
|
|
INSTALLATION : {how easy did it install, go into the
|
|
source? [score 1-10]}
|
|
DOCUMENTATION : {did the docs explain everything clearly?
|
|
did they cover everything? [score 1-10]}
|
|
PRESENTATION : {how does it look? [score 1-10]}
|
|
EASE OF USE : {is it intuitive? is it easy to use?
|
|
[score 1-10]}
|
|
CODING (MODs Only) : {is the coding easy to understand? is it
|
|
commented clearly? is the formatting in
|
|
coding consistent with WWIV? [score 1-10]}
|
|
|
|
STATED PURPOSE OF MOD/UTILITY:
|
|
------------------------------
|
|
{these should be the author's own words}
|
|
|
|
REVIEWER'S PRO COMMENTS:
|
|
-----------------------
|
|
{why did you like it? what made it stand out in your mind?}
|
|
|
|
REVIEWER'S CON COMMENTS:
|
|
------------------------
|
|
{what was wrong? explain any mark-downs in scores from above}
|
|
|
|
FINAL THOUGHTS:
|
|
---------------
|
|
{this is for anything you'd like to say about it. how to improve it. things
|
|
you'd like to seen done with it in the future.}
|
|
|
|
REVIEW WRITTEN BY : {handle / real name}
|
|
NET ADDRESS(ES) : {this is so the author can get hold of you! :) }
|
|
REVIEWER'S SYSTEM : {this should list you processor, CPU speed, operating
|
|
system, WWIV version number, memory manager, multi-
|
|
tasker, etc...}
|
|
HEAP FREE @ //STAT: {a *very* important consideration for any utilities, any
|
|
large modifications!}
|
|
-----------------------------------------------------------------------------
|
|
|
|
The sub-board is open to all people, sysops and non-sysops alike. Bad, or
|
|
negative, reviews are accepted. I don't want this turning into a "yes-man"
|
|
type of operation. The people in WWIVland deserve to know the lemons as well
|
|
as the great ones. Authors of the modifications/utilities have no say-so on
|
|
posting of reviews or inclusion in IceNEWS. We are trying to make sure this is
|
|
all on the up-and-up and completely fair and unbiased.
|
|
|
|
The sub-board is hosted by me. The SUBTYPE for subscription purposes is
|
|
REVIEW, and it can be picked up on the following node numbers/nets:
|
|
|
|
@5079 IceNET @5079 WWIVnet @15061 WWIVLink @1860 fileNET
|
|
@5050 SEXnet @5079 TARDISnet @11579 WW4net @11 norcalNET
|
|
|
|
|
|
Here is a review that I have written up for an utility, AutoSend 1.13:
|
|
-----------------------------------------------------------------------------
|
|
NAME OF MOD/UTILITY BEING REVIEWED: AutoSend
|
|
AUTHOR'S NAME/HANDLE : Cris McRae / JAFO
|
|
VERSION NUMBER : 1.13
|
|
VERSION DATE (.EXE date stamp) : 03/07/94
|
|
OVERALL SCORE : 9.25
|
|
INSTALLATION : 9
|
|
DOCUMENTATION : 9
|
|
PRESENTATION : 10
|
|
EASE OF USE : 9
|
|
|
|
STATED PURPOSE OF MOD/UTILITY:
|
|
------------------------------
|
|
A WWIV Net Sub Host Utility. Features: Sends old posts to new
|
|
subscribers; posts sub rules and subscription lists; post sub ads, rules, etc.
|
|
on any sub; removes unknown systems from N*.NET files; scans DEAD.NET for dead
|
|
posts and e-mail, configuration program for easy setup, graphical packet
|
|
scanning; complete logging system
|
|
|
|
REVIEWER'S PRO COMMENTS:
|
|
-----------------------
|
|
Easy to install using the new AUTOSCFG.EXE program.
|
|
Excels at its stated purpose.
|
|
Installs very easily via the AUTOSCFG /INSTALL command.
|
|
WWIV source code mod for registered WWIV sysops helps make manual message
|
|
sending easier.
|
|
|
|
REVIEWER'S CON COMMENTS:
|
|
------------------------
|
|
Documentation should be more explicit as to what command line switches
|
|
can be used when using it in conjunction with the EPREPROC.NET file as well as
|
|
those that shouldn't be used.
|
|
There *can* be problems with memory. This reviewer has not had any of
|
|
these problems since 1.12, though.
|
|
While the /REMOVE command line switch for removing "unknown systems" is
|
|
really nice, it can be a pain when one of your subscribing systems has been
|
|
removed from the net accidentally or temporarily.
|
|
|
|
FINAL THOUGHTS:
|
|
---------------
|
|
If you host a sub-board, I *highly* recommend using this program! It
|
|
really does help new systems join in the swing of things when they first
|
|
subscribe when they get the last few messages automatically
|
|
The other options: /REMOVE, /AUTOPOST, /AUTOPURGE make this a great tool
|
|
for automatic maintenance of your sub-boards.
|
|
JAFO's support sub-board provides an excellent place to ask the author
|
|
directly for help. He is also very open to new suggestions about AutoSend.
|
|
|
|
REVIEW WRITTEN BY : Papa Bear / Tracy L. Baker
|
|
NET ADDRESS(ES) : 1@11579.ww4net, 1@5079.ice/tardis/WWIVnet, 1@5050.sexnet
|
|
1@11.nocalnet, 1@15061.WWIVLink, 1@1860.filenet
|
|
REVIEWER'S SYSTEM : 386SX-33, DRDOS 6.0, DESQview 2.6, QEMM 7.0, WWIV 4.23
|
|
HEAP FREE @ //STAT: 241k
|
|
-----------------------------------------------------------------------------
|
|
|
|
And now, a review for a modification - ALTW-07.MOD:
|
|
|
|
-----------------------------------------------------------------------------
|
|
NAME OF MOD/UTILITY BEING REVIEWED: ALTW-07.MOD
|
|
AUTHOR'S NAME/HANDLE : French Mod Division (4@5497)
|
|
VERSION NUMBER : Revision B (C)
|
|
VERSION DATE (.EXE date stamp) : 05/02/94
|
|
OVERALL SCORE : 9.60
|
|
INSTALLATION : 9
|
|
DOCUMENTATION : 10
|
|
PRESENTATION : 10
|
|
EASE OF USE : 10
|
|
CODING (MODs only) : 9
|
|
|
|
STATED PURPOSE OF MOD/UTILITY:
|
|
------------------------------
|
|
This modification will allow the sysop to have a much better call-out
|
|
function, it lists the nodes you are connected to on each networks, gives you
|
|
information on this node and you can move between each nodes with the arrow
|
|
keys.
|
|
|
|
REVIEWER'S PRO COMMENTS:
|
|
-----------------------
|
|
An *outstanding* modification. I really love being able to use the cursor
|
|
keys to scroll around the box, all the time highlighting the various nodes to
|
|
call out. Very easy to use. Very intuitive.
|
|
I'm also pleased with the lower "window's" information. I'm now able to
|
|
easily see a lot of the networking and node-to-node information I never knew
|
|
was there!
|
|
|
|
REVIEWER'S CON COMMENTS:
|
|
------------------------
|
|
They could have done a little better job instructing those of us
|
|
upgrading from DS007A.MOD (its predecessor). There were some minor, but
|
|
important changes to be made. Take special care if upgrading.
|
|
Also, I'm not real keen on the global variable declarations in VARS.H.
|
|
Since they aren't used anywhere else in the source, it would have made more
|
|
sense to #define those variables in NETUP.C, where they are actually used.
|
|
|
|
FINAL THOUGHTS:
|
|
---------------
|
|
Keep in mind that it is my opinion about those "unnecessary" global
|
|
definitions/variables! The mod installs just peachy, especially if you are
|
|
installing it for the first time.
|
|
This is a great mod that really deserves to be included as stock source
|
|
in WWIV!
|
|
|
|
REVIEW WRITTEN BY : Papa Bear / Tracy L. Baker
|
|
NET ADDRESS(ES) : 1@11579.ww4net, 1@5079.ice/tardis/WWIVnet, 1@5050.sexnet
|
|
1@11.nocalnet, 1@15061.WWIVLink, 1@1860.filenet
|
|
REVIEWER'S SYSTEM : 386SX-33, DRDOS 6.0, DESQview 2.6, QEMM 7.0, WWIV 4.23
|
|
HEAP FREE @ //STAT: 241k
|
|
REVIEW DATE : 05/07/94
|
|
-----------------------------------------------------------------------------
|
|
|
|
Well, that's it for this month. Here's looking forward to a long and
|
|
healthy run for both this column and this sub board. I hope all of you out
|
|
there find reason to write up a quick review!
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ S O F T W A R E / P R O G R A M M I N G ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ To DOS... Or not to DOS... Or is Windows the answer? ³ Mega Bite (176@7672)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
All of us probably remember the first time we turned on a computer and
|
|
were mystified as it flashed incomprehensible messages onto the screen and
|
|
then proudly presented us with a C>. Then came the harrowing moment when we
|
|
realized it was not going to ask us to play a game or show us pretty pie
|
|
charts like all the demo computers had done. We searched though all the boxes
|
|
and bags and found a promising manual, "DOS x.xx". It was a large book with a
|
|
chapter on everything you could possibly need, except for what you wanted to
|
|
do right now. Most of us tried reading it and got through the first chapter
|
|
before throwing our hands up in futility.
|
|
|
|
But in that first chapter we learned some very important things like the
|
|
DIR and COPY commands. We were happy. Starting from there, whenever we needed
|
|
to do something different we would either call a friend, who invariably knew
|
|
more about it than we did. Or we chanced reading some more of the DOS manual.
|
|
It was all a learning experience and soon we all became accustomed to the
|
|
plethora of commands and syntax needed to do anything in DOS.
|
|
|
|
Then came Windows, everything was three clicks away from perfection. New
|
|
users no longer had to fumble through manuals (that would come later) to do
|
|
the simplest of things. The hardest part was getting the mouse pointer on the
|
|
right icon. They took the easy path to learning computers. But when they got
|
|
caught in a dos shell with that mysterious C> staring them in the face, they
|
|
were stumped. What in the world could they do? The all important mouse would
|
|
no longer respond to their summons, they pleaded with the computer to let them
|
|
back into Windows with all the pretty pictures and colors and a screen saver
|
|
that goes off every fifteen seconds. It was their first taste of DOS and they
|
|
were terrified, so they called us. And we would tell them, "Oh! Type this and
|
|
that and this and this and that." Having "grown up" with DOS we were experts,
|
|
but the poor guy on the other side of the phone was instantly mystified and
|
|
confused, for after all, how did we possibly remember all that? Then we
|
|
thought and replied, "I don't know, I just do."
|
|
|
|
And that is where DOS and Windows are different. Putting aside the
|
|
cosmetic differences, DOS requires a user to learn and remember a multitude of
|
|
commands and switches, whereas the only requirement for Windows is hand-eye
|
|
coordination. But then you might say, "Isn't Windows better then? You don't
|
|
have to spend all your time memorizing commands." That may be true, but if you
|
|
think carefully about how Windows works you find that it speeds up the
|
|
learning time for the user by doing more of the work for him/her. Is that bad?
|
|
Maybe. The more work someone does for you, the less control you have overall,
|
|
you become accustomed to having it done for you, and you become lazy. For
|
|
example, have you ever tried to copy select files from one drive to another in
|
|
Windows? In DOS it is a simple command: Copy *.exe a: c:, but in Windows you
|
|
have to find two or three different specification windows, look thought the
|
|
choices until you come to the one you want, mark the files, drag them
|
|
physically to the other side of the screen and drop them on the new drive.
|
|
|
|
User-friendliness (everything you need is right there and explained
|
|
clearly) is often tedious and time consuming for those of us who are used to
|
|
DOS. A 16 character statement in DOS is replaced with umpteen clicks and some
|
|
typing in Windows. The reason why many people who learned computers with DOS
|
|
hate Windows so vehemently, it is too simple. The inherent user-unfriendliness
|
|
of DOS is balanced by its great flexibility and power. Windows trades in some
|
|
of that flexibility and power for ease of working and user-friendliness. So
|
|
which one is better? That all depends on what you are doing.
|
|
|
|
DOS vs. Windows.................Tech. Help and Manuals
|
|
|
|
Until the advent of MS-DOS 6.0 DOS had almost no practical on-line help.
|
|
Slash H commands often gave incomplete or incomprehensible "help". But with
|
|
MSDOS 6.x came the HELP command which greatly enhances the usefulness of many
|
|
of the dos commands. But Windows still beats DOS hands down with the cross
|
|
referenced, easy to access help systems that COME WITH EVERY WINDOWS PROGRAM.
|
|
Don't we wish the same was true with all DOS applications? The one problem
|
|
shared by both products is the fact that the manuals both read like an
|
|
Apache/PKzip mix. The DOS manuals have gotten much [Ed. Note: Remember the DOS
|
|
3.x manuals that started renumbering the pages in the middle?] Windows hasn't
|
|
gone through the sheer number of changes DOS has so it is difficult to compare
|
|
to anything, but it is very hard to imagine the manuals doing anything but get
|
|
better.
|
|
|
|
DOS vs. Windows..................................Speed
|
|
|
|
One very serious drawback to Windows is the fact that it is a severe
|
|
memory hog. The problem has been patched and toyed with but because Windows
|
|
itself is a hog, anything not expressly made for Windows will almost always be
|
|
slower when used in Windows than when it is not. Most of the programs like
|
|
Word Perfect for Windows run more slowly than their DOS counterparts. Anything
|
|
that makes extensive and relentless use of graphics, such as flight simulator
|
|
or a fast action game becomes choppy and slow when played in a Window. DOS
|
|
doesn't have a problems like that. The reason is Windows is constantly
|
|
checking for screen saver times, taskmaster switches, residual drivers not
|
|
used in the DOS program, and an abundance of other things. This ties up memory
|
|
and eats up precious CPU time. In DOS , when a program is run it steps out of
|
|
the picture almost entirely. Before the program was run, Autoexec.bat and
|
|
Config.sys set up everything to listen to the program's instructions and stay
|
|
out of the way as much as possible.
|
|
|
|
But again, it depends what you are running. If it is a memory-intensive
|
|
CPU-burdening program, Windows will only make it slower. But if speed or
|
|
smoothness is not a factor, like in most word processors then Windows will do
|
|
just fine.
|
|
|
|
DOS vs. Windows.....................Programs Supported
|
|
|
|
Much to the dismay of many staunch DOS users, Windows programs are taking
|
|
over a good portion of the DOS market. But at this time there are still more
|
|
DOS applications and games then Windows applications and games. But due to the
|
|
fact that Windows now comes on practically every new computer system sold and
|
|
that almost all new users are learning on Windows, the places will soon be
|
|
reversed. What else is there to say?
|
|
|
|
DOS vs. Windows......................Correcting Errors
|
|
|
|
If you use computers for any length of time you are bound to screw
|
|
something up, sometimes by just turning the computer off at the wrong time.
|
|
Solving some problems is very easy, others may take hours or even days to
|
|
locate and fix. If you are using Windows and you get a fatal error a lot of
|
|
times the problem is in DOS. If you don't have experience with DOS you are
|
|
pretty much up the creek. Sure Windows comes with editors but if you never
|
|
worked with DOS you will have no idea what LH 12,512 /s means in your startup
|
|
files. Problems originating totally in Windows are generally easy to fix.
|
|
Generally. Sometimes.
|
|
|
|
Well, I can't think of much more to say in this article. I hope I have
|
|
helped you to see why you like or dislike Windows and which one is better for
|
|
you. I tried to present both DOS and Windows equally here, but, being one of
|
|
the "staunch DOS users" I mentioned earlier, I might have subconsciously
|
|
belittled Widows. If I did, I didn't mean to. Remember that there are a lot of
|
|
exceptions to anything anyone could say about DOS and Windows. So if you come
|
|
up with one example where I was wrong, don't get bent out of shape, I just
|
|
might not have thought of it. Just e-mail me and scream your head off, I don't
|
|
mind. It will help me to write better articles, taking in more points of view.
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ Learning C - Part Five ³ Daarkhan (1@7676)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
Chapter Five: PROGRAM CONTROL STATEMENTS
|
|
|
|
IMPORTANT NOTICE
|
|
|
|
This is the FIFTH chapter in a tutorial series by Richard Rost designed
|
|
for people who know very little about programming and want to learn C. If you
|
|
have not read the previous chapters, I urge you to call Paragon BBS
|
|
(716/837-1636) and download them!
|
|
|
|
|
|
FORWARD TO CHAPTER FIVE
|
|
|
|
Well, I said I'd try to get these chapters belted out faster, but alas,
|
|
time is a luxury I have not had as of late. My thanks go out to all of the
|
|
people who have helped keep the "Learning C" message base talkative and
|
|
informative.
|
|
|
|
|
|
PROGRAM CONTROL STATEMENTS
|
|
|
|
What is a program control statement? Simply, it is a statement that
|
|
controls the execution, or "flow," of your program. Without program control
|
|
statements, your programs would be able to do little more than simply display
|
|
information. Program control statements allow your program to "branch" out to
|
|
multiple possibilities based on various conditions. The two most important
|
|
control statements are "if" and "for," and we will cover each in depth,
|
|
starting with the "if" statement in this chapter, and the "for" statement in
|
|
chapter 6.
|
|
|
|
|
|
IF
|
|
|
|
The IF statement (I use it in capital letters to show that it's a
|
|
reserved word, but do not capitalize it in your programs - remember that C is
|
|
a case-sensitive language and will puke on you if you capitalize your IF
|
|
statements) is called a "selection" statement or a "conditional" statement. It
|
|
basically tests an operation or value to determine whether it is TRUE or
|
|
FALSE. In C, something is equal to logical FALSE if it is ZERO. Anything that
|
|
is not ZERO is considered TRUE.
|
|
|
|
value logical
|
|
----- -------
|
|
1 TRUE
|
|
0 FALSE
|
|
-1 TRUE
|
|
10.3 TRUE
|
|
|
|
|
|
The basic syntax of an IF statement is:
|
|
|
|
if (condition) statement;
|
|
|
|
For example, the following statement will print, "yes" if the variable
|
|
'x' is equal to 6:
|
|
|
|
if (x==6) printf("yes");
|
|
|
|
|
|
OOPS, I FORGOT "CONDITIONAL OPERATORS"
|
|
|
|
This brings us to another topic that we need to cover: conditional
|
|
operators. These are as follows:
|
|
|
|
operator operation
|
|
-------- ---------
|
|
== equal to
|
|
!= not equal to
|
|
< less than
|
|
> greater than
|
|
<= less than or equal to
|
|
>= greater than or equal to
|
|
|
|
If you have any background with mathematics, you can easily grasp the
|
|
meaning of these operators. Do not, however, confuse the equality operator
|
|
'==' with the assignment operator '='. Both have completely different uses.
|
|
For example,
|
|
|
|
x = 1
|
|
|
|
assigns the value of '1' to the variable 'x', whereas
|
|
|
|
x == 1
|
|
|
|
tests to see if 'x' is equal to '1'. This may seem a bit confusing, but
|
|
you'll get the hang of it through many (yes, many) compiler warnings for
|
|
"possible incorrect assignment" statements. The Turbo C and Borland C
|
|
compilers catch some of the instances in which you may have improperly used
|
|
these two operators.
|
|
|
|
NOTE: for those of you who are used to Pascal or Modula-2, the equality
|
|
operator in these languages ('=') is the assignment operator in C, whereas the
|
|
assignment operator in Pascal and Modula-2 is ':=' and in C it's just the
|
|
plain '='. Don't get confused between them all. I find myself sometimes
|
|
sitting down to write in Modula-2 and using '=='s all over the place.
|
|
|
|
DRILL THIS INTO YOUR HEAD:
|
|
|
|
Assignment =
|
|
Equality ==
|
|
|
|
|
|
IF, AGAIN
|
|
|
|
OK, so back to our IF statement. The best way to learn, as I always say,
|
|
is to look at and study examples. So what I'll do now is put up some examples
|
|
and let you see what they produce.
|
|
|
|
if (1 > 2) printf("TRUE");
|
|
|
|
In this statement, the "TRUE" will never print. The conditional statement
|
|
"1 > 2" or "is 1 greater than 2" will be evaluated to FALSE and the printf()
|
|
statement will never execute.
|
|
|
|
if (2 > 1) printf("TRUE");
|
|
|
|
In this example, the "TRUE" will print. 2 is, indeed, greater than 1.
|
|
|
|
if (2 >= 1) printf ("TRUE");
|
|
|
|
Again, the "TRUE" will print. 2 is greater than or equal to 1.
|
|
|
|
if (2) printf("TRUE");
|
|
|
|
This is an example of how you can put just about anything inside a
|
|
conditional statement. Remember, anything that is ZERO is equivalent to
|
|
logical FALSE. Everything else is considered TRUE. In this case, the
|
|
conditional statement is just '2' which is not zero, and is henceforth TRUE.
|
|
In this example, the "TRUE" will print.
|
|
|
|
if (!2) printf("TRUE");
|
|
|
|
Now, here, we introduce another new symbol, the logical NOT or '!'
|
|
symbol. You can negate any expression by including a '!' symbol before it. We
|
|
touched on it earlier with the '!=' or NOT EQUAL TO operator.
|
|
|
|
expression logical evaluation
|
|
---------- ------------------
|
|
0 FALSE
|
|
1 TRUE
|
|
-1 TRUE
|
|
!0 TRUE
|
|
!1 FALSE
|
|
!-1 FALSE
|
|
|
|
In our example above, the '!2' is evaluated to be equal to "NOT 2" which
|
|
is FALSE, so the "TRUE" will not print. If this seems confusing, read it
|
|
again. Ha ha ha... seriously, though, it will come to you - just remember that
|
|
you don't necessarily HAVE to have a mathematical expression inside the
|
|
parentheses of a conditional expression. You can have just about everything
|
|
from single numbers and variables to whole assignment statements! We'll see
|
|
some examples of more things you can do with the IF statement later.
|
|
|
|
|
|
SAMPLE PROGRAM
|
|
|
|
Ok, let's take a look at another example. This complete program will ask
|
|
the user to enter a number (int) and will tell the user whether or not the
|
|
number is equal to ZERO or not.
|
|
|
|
/* Am I Zero? */
|
|
|
|
#include <stdio.h>
|
|
|
|
void main (void)
|
|
{
|
|
int i;
|
|
|
|
printf ("Input a number: ");
|
|
scanf ("%i",&i);
|
|
if (i==0) printf ("Your number is ZERO");
|
|
if (i!=0) printf ("Your number is not ZERO");
|
|
}
|
|
|
|
Ok, so it's not the most functional program in the world, but it works.
|
|
First, a message prompts the user to input a number. Then the scanf() function
|
|
reads a number from the keyboard into the address of the variable 'i' (need to
|
|
review scanf()?) Then, the value of i is checked to see whether it is equal to
|
|
ZERO. If so, the first message is printed. If i is NOT zero, the second
|
|
message is printed. Note that there will NEVER be a case in which both
|
|
messages print NOR will there ever be a case where neither message is printed.
|
|
ONE and ONLY ONE message will always be printed.
|
|
|
|
One other way we could have represented the conditional statements above
|
|
would have been to just test the logical values of the variable 'i' as
|
|
follows:
|
|
|
|
if (i) printf ("Your number is NOT zero");
|
|
if (!i) printf ("Your number IS zero");
|
|
|
|
Remember, if i is logically FALSE, it is the same as being ZERO. This is
|
|
a very powerful aspect of C, and we will see more uses of it later.
|
|
|
|
|
|
IF... ELSE
|
|
|
|
It seems kind of redundant to have to check the value of i twice, doesn't
|
|
it? That's why C and most other major programming languages have an ELSE
|
|
statement. The syntax is:
|
|
|
|
if (condition) statement1;
|
|
else statement2;
|
|
|
|
Basically, if the condition is evaluated to TRUE, statement1 is executed,
|
|
otherwise (ELSE) statement2 is executed. These statements can be single
|
|
statements or entire code blocks (which we learned about in chapter 4) so we
|
|
can expand this syntax to:
|
|
|
|
if (condition) {
|
|
statements;
|
|
} else {
|
|
statements;
|
|
}
|
|
|
|
which is much more functional than single-line statements. So, let's take
|
|
a quick look at the else statement. See if you can figure out what the
|
|
following program does:
|
|
|
|
/* Am I Negative? */
|
|
|
|
#include <stdio.h>
|
|
|
|
void main (void)
|
|
{
|
|
int i;
|
|
|
|
printf ("Input a number: ");
|
|
scanf ("%i",&i);
|
|
if (i < 0) printf ("I am a negative number");
|
|
else printf ("I am NOT a negative number");
|
|
}
|
|
|
|
|
|
Simple enough, right? 'i' is evaluated, and if it's less than zero, the
|
|
first message is printed, ELSE the second message is printed. This method
|
|
saves us from having to check the value of i again - in large programs, this
|
|
can greatly effect execution speed, and code optimization is a good habit to
|
|
get into.
|
|
|
|
|
|
ASSIGNMENTS
|
|
|
|
I know that I said I would be including assignments for everyone to do,
|
|
but very few people have bothered to send me copies of their completed work,
|
|
so I'll stop doing them with this tutorial... if you really want me to
|
|
continue assignments, send them in! My e-mail address is below.
|
|
|
|
1. Write and execute a program that asks the user for a number greater
|
|
than 10. Have the computer yell at the user if the number is not in range.
|
|
|
|
2. Write and execute a program that asks the user for two numbers. Have
|
|
the computer tell the user whether or not the two numbers are EQUAL to each
|
|
other, or if not, which number is the larger of the two.
|
|
|
|
|
|
NEXT
|
|
|
|
Chapter 6 : The "for" statement.
|
|
|
|
|
|
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.
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ Artificial Intelligence - Part Two ³ Louie (6@1)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
For a long period of time, from the mid-1960s to the mid-1980s, the field
|
|
of artificial intelligence (AI) was considered a dead issue to many within the
|
|
computer sciences. Many of the predictions made by the AI experts, such as
|
|
Marvin Minsky, made great pronouncements about what was to come in the
|
|
not-too-distant future from AI. They were juiced-up on making computers that
|
|
could play chess very well and thought "well, if a computer can play chess on
|
|
par with most normal humans, then it isn't that far away from simple things
|
|
like language translation, computers seeing objects, computers thinking, etc.
|
|
etc."
|
|
|
|
Then they learned that a lot of the things that seemed simple at first
|
|
weren't so simple. There are lots of ambiguous things in this world. For a
|
|
simple example, language translation seems like something computers were
|
|
almost perfectly designed for. Give it a vast dictionary in English and in
|
|
Russian and it should be able to translate back and forth with ease. But it
|
|
doesn't work out that way. Take the English sentence "the spirit is willing,
|
|
but the flesh is weak." That, when translated by an early computer designed
|
|
for translation, came out in Russian as "the vodka is good, but the meat is
|
|
rotten."
|
|
|
|
That occurred because of meanings we attach to words. "Spirits" can mean
|
|
"alcoholic beverages." It could also mean "ghost," "soul," "good feelings,"
|
|
etc. Just a bit of a small problem.
|
|
|
|
Things like that were not beginning to be solved until the 1980s. You
|
|
needed a translator that understood what it would translate. That is still a
|
|
bit of a pipe dream even now. They have gotten better at it in choosing the
|
|
right methods, though. However, one area of AI did come forward with promised
|
|
advances. That field was Expert Systems.
|
|
|
|
Expert Systems
|
|
|
|
The major type of artificial intelligence programs to gain a lot of
|
|
attention are expert systems. Programs such as DENDRAL (for aid to chemists in
|
|
figuring out what chemical substances are which) and MYCIN (an AI expert
|
|
system for diagnosing blood diseases) have gained a lot of attention. They are
|
|
both expert systems.
|
|
|
|
An expert system contains knowledge about a particular field to assist
|
|
human experts or provide information to people who do not have access to an
|
|
expert in the particular field. Expert systems do something that seems almost
|
|
impossible at first glance. Often in AI circles, it has been found that the
|
|
things that seem simple on the surface are extremely difficult and the things
|
|
that seem extremely difficult on the surface are relatively simple. Expert
|
|
systems make a computer an expert in a narrow range of knowledge.
|
|
|
|
Today, many expert systems are in use for computer equipment repair,
|
|
investment analysis, financial estate and insurance planning, route scheduling
|
|
for vehicles, contract bidding, production control, training, etc. Many expert
|
|
systems in use around the world today.
|
|
|
|
Expert systems have three basic components: a knowledge base (database),
|
|
an inference engine, and a user interface (something common to most computer
|
|
programs). The knowledge base is a combination of data to work on and
|
|
if-then-else rules to apply to the data. This is the major reason the computer
|
|
language LISP is still widely used in AI circles. LISP can treat data and
|
|
programs statements as basically the same thing.
|
|
|
|
An example of the if-then-else rule-based structure is the following:
|
|
|
|
1. IF it is huge, THEN it is a whale.
|
|
|
|
2. IF it is NOT huge, THEN it is not a whale.
|
|
|
|
3. IF it is not a whale AND it blows a jet OR it has a blowhole OR it has a
|
|
horizontal tail, THEN it is a mammal.
|
|
|
|
4. IF is it not a whale AND it has no blowhole OR it has a vertical tail,
|
|
THEN it is a fish.
|
|
|
|
5. IF it is a mammal AND it has a pointed snout, THEN it is a dolphin.
|
|
|
|
6. IF it is a mammal AND it has a blunted snout AND it is with a whale, THEN
|
|
it is a baby whale.
|
|
|
|
7. IF it is a mammal AND it has a blunted snout AND it is not with a whale,
|
|
THEN it is a porpoise.
|
|
|
|
8. IF it is a fish AND it is by itself, THEN it may be a tuna.
|
|
|
|
9. IF it may be a tuna AND it has a double dorsal fin, THEN it is a tuna.
|
|
|
|
10. IF it may be a tuna AND it does not have a double dorsal fin, THEN it is
|
|
an unknown fish.
|
|
|
|
11. IF it is a fish AND is by itself THEN it is a swordfish or shark.
|
|
|
|
12. IF it is a swordfish or shark AND it has a sword, OR it is silvery AND has
|
|
a forward dorsal fin, THEN it is a swordfish ELSE it may be a shark.
|
|
|
|
13. IF it may be a shark AND it has sinewy swim, THEN it is a shark.
|
|
|
|
14. IF it may be a shark AND it does not have a sinewy swim, THEN it is an
|
|
unknown fish.
|
|
|
|
The words IF, THEN, ELSE, AND, and OR are capitalized because they each
|
|
perform a special operation. They are basic boolean mathematics. Conditions
|
|
met and operations performed. They are pretty much each self explanatory.
|
|
|
|
The knowledge base contains the hard data to work with as well. The data
|
|
may be like:
|
|
|
|
1. Robbie is not huge.
|
|
|
|
2. Robbie has a blow hole.
|
|
|
|
3. Robbie has a pointed a snout.
|
|
|
|
4. Jane has a double dorsal fin.
|
|
|
|
5. Jane is not huge.
|
|
|
|
6. Steve is huge.
|
|
|
|
The data would be descriptions of things in this case. You then apply the
|
|
descriptive data to the if-then rules and conclusions would fall out. This is
|
|
the domain of the inference engine.
|
|
|
|
In this example, Robbie is a dolphin, Jane a tuna, and Steve is a whale.
|
|
|
|
The inference engine of the expert system controls how and when the data
|
|
and rules in the knowledge base are applied. The two basic methods used in
|
|
inference engines are forward-chaining and backward-chaining.
|
|
|
|
Forward-chaining is sometimes refereed to as data-driven because the
|
|
inference engine uses the info that is provided to more through the network of
|
|
rules to reach all possible conclusions that can be drawn. When it doesn't
|
|
have enough info to reach conclusions then it may ask for more info.
|
|
|
|
To understand how forward-chaining works, imagine that your car has
|
|
malfunctioned. You call your mechanic and he/she asks you to describe what is
|
|
wrong. The mechanic continues to ask for more information until he/she figures
|
|
out what is wrong with your car.
|
|
|
|
Backward-chaining is the reverse of forward-chaining. Backward-chaining
|
|
starts with a possible conclusion and then tries to prove, using the data, if
|
|
that conclusion is true or false. Backward-chaining is sometimes called
|
|
object-driven because the expert system begins with "Robbie is a shark" and
|
|
then finds that Robbie isn't a shark according to its database. It would then
|
|
start again with "Robbie is a tuna" and then find out Robbie isn't a tuna.
|
|
When it finally tries "Robbie is a dolphin," it finds that it is correct and
|
|
then stops.
|
|
|
|
A good backward-chaining water animal expert system would start using
|
|
possible conclusions that are more likely to be true than other possible
|
|
conclusions. There are more tunas out there than sharks. So it would try to
|
|
see if Robbie is a tuna before it would try see if Robbie were a shark.
|
|
|
|
Backward-chaining may seem to be the process that would get answers
|
|
slower than forward-chaining, and in a simple expert system that would be the
|
|
case. However, in expert systems with very large data bases, backward-chaining
|
|
seems to be quicker most of the time.
|
|
|
|
The user interface communicates with the user of the expert system. The
|
|
user interface may ask questions when it needs more info. When I wrote an
|
|
expert system of my own when I was in college, the user interface was
|
|
practically non-existent. The system was just asking for file names. More
|
|
advanced expert systems have user interfaces that allow the user to ask
|
|
questions, provide information, etc.
|
|
|
|
Expert systems are very simple in their basic approach and set up, but,
|
|
the more rules and data in the data base, the more powerful they are. They are
|
|
starting to be used more and more to aid people in finding information because
|
|
of the shortage of and/or expense of consulting human experts.
|
|
|
|
LISP
|
|
|
|
Last month I wrote a little about the LISP programming language. LISP
|
|
(LISt Processing) is the predominant programming language used by the
|
|
Artificial Intelligence community.
|
|
|
|
John McCarthy developed LISP at MIT in 1958 because he needed a language
|
|
in which he could implement a program called "Advice Taker" efficiently.
|
|
Advice Taker never took-off itself, but the language McCarthy came up with for
|
|
it did. LISP is the second oldest programming language still in use. (FORTRAN
|
|
is the oldest)
|
|
|
|
There are many dialects of LISP around today. FranzLISP, ALISP, MacLISP
|
|
(note: MacLISPs name has nothing to do with the Apple Macintosh, MacLISP was
|
|
developed before the Apple Macs came into existence), XLISP, PC-LISP, etc. The
|
|
standard is called "Common LISP." It is an ISO and ANSI Standard language
|
|
definition.
|
|
|
|
XLISP and PC-LISP are Shareware standards for the IBM PC-compatible
|
|
market. They are both rather powerful. Both can be downloaded from The Great
|
|
White North (IceNET @1) or Paragon (@7654).
|
|
|
|
The major features that LISP offers as a programming language over other
|
|
languages are recursion, storage of programs and data as the same basic stuff,
|
|
and its ability to act as an interactive interpreter.
|
|
|
|
Recursion allows for functions to include themselves as part of their own
|
|
definitions. Other computer languages can do recursion, but they do it in
|
|
clumsy ways that are rather inefficient. Recursion is second nature to LISP.
|
|
|
|
Storing programs and data as the same basic stuff allows for programs to
|
|
be treated as data. A program could be written that would modify itself. AI
|
|
finds this a very useful thing for program learning: A program that could
|
|
teach itself a new trick. This also allows for LISP to keep track of which
|
|
instructions have been executed and how many times they were executed... which
|
|
is perfect for writing expert systems so that they can explain how conclusions
|
|
were reached.
|
|
|
|
LISP as an interactive interpreter means you have a programming
|
|
environment suitable for writing programs. Each program statement is only
|
|
executed when called for. This allows for quicker development as you don't
|
|
have to waste time compiling and recompiling all the time during the
|
|
development process.
|
|
|
|
The two LISP's I used in developing this article were:
|
|
|
|
XLISP Version 2.0 by David Betz (BIX address: dbetz).
|
|
|
|
PC-LISP v2.17 by Peter Ashwood-Smith.
|
|
|
|
Both can be downloaded from TGWN (IceNET @1) and Paragon (@7654). XLISP
|
|
includes Turbo C source code. Both are shareware software.
|
|
|
|
When I was in college, we used XLISP in the class. I wrote up one of the
|
|
programs we wrote and, with little modification, it ran in PC-LISP. I had to
|
|
change one function around a little bit and made it work by adding a few calls
|
|
to the list function in two places.
|
|
|
|
LISP's main data types (or object types if you prefer, as LISP is an
|
|
object oriented language at heart) are Symbolic Expressions, or S-Expressions
|
|
for short. The two major S-Exps are Atoms and Lists. Atoms are subdivided down
|
|
into Numbers (Fixed and Floating point), Literals, and Strings. Lists are
|
|
subdivided down into Data lists and Forms.
|
|
|
|
Numbers are just that; 1, 2, 3... 358452.254125, e, pi, etc. Fixed
|
|
numbers are what would be termed Integers in Pascal and int in C. Floating
|
|
points are what would be called Reals in Pascal and floats in C.
|
|
|
|
Literals are words, letters, etc. Things like A,B, Jim, IceNET, LISP,
|
|
WWIV-is-Great, etc. When you reference a literal you would normally reference
|
|
it with a quote mark ('). That is so LISP knows you are not trying to
|
|
reference a function or global variable.
|
|
|
|
You would reference them as 'Jim, 'IceNET, or 'WWIV is great.
|
|
|
|
Strings are mainly a lot like strings in Pascal or C. "Jim," "IceNET,"
|
|
"Deacon Blues is an evil Editor-in-Chief," etc., are string atoms. Everything
|
|
between the double quotes in included in the string.
|
|
|
|
Lists are expressions contained in parentheses. (A), (Jim), (IceNET is
|
|
great), (), ((())), (5 is a Number), etc. Lists can also contain other lists
|
|
and they can also be empty like the empty list () I noted above. Each Sublist
|
|
only counts as one element in a list, though. (LISP (Jim) (IceNET is (good)))
|
|
contains 3 elements even though there are 5 words.
|
|
|
|
Examples of lists and number of elements they contain.
|
|
|
|
List # of Elements ---- ------------- () 1
|
|
|
|
(Jim) 1
|
|
|
|
((IceNET)) 1
|
|
|
|
(Jim (IceNET is great)) 2
|
|
|
|
((())) 1 (Deacon Blues (is a Good
|
|
Editor)) 3
|
|
|
|
(An (interesting ((List)
|
|
structure))) 2
|
|
|
|
Forms come in two major types... Function and Global Variables. Functions
|
|
are defined by the user with the Function DEFUN. There are built-in functions
|
|
as well though, called primitives. Primitives are functions you would use in
|
|
creating more complicated functions.
|
|
|
|
Numerical Primitives : PLUS, DIFF, TIMES, and DIV.
|
|
|
|
PLUS performs addition. (PLUS 4 5) --> 9. (PLUS 1 2 3) --> 6.
|
|
DIFF does subtractions. (DIFF 6 2) --> 4 (DIFF 4.2 2.2) --> 2.0
|
|
TIMES is multiplication. (TIMES 5 5) -> 25. (TIMES 2 3 4) --> 24.
|
|
DIV is division. (DIV 6 2) ---> 3. (DIV 4 4) -----> 1.
|
|
|
|
PLUS and TIMES can take any number of arguments you give them. DIFF and
|
|
DIV only accept two arguments.
|
|
|
|
These can allow you to build your own functions, such as :
|
|
|
|
(DEFUN Factorial (num)
|
|
(COND ((EQUAL num 1) 1)
|
|
(t (TIMES N
|
|
(Factorial (DIFF num 1)) )) ))
|
|
|
|
You should take note that EQUAL is just what you would think it is. A
|
|
function that tests to see if two things are equal. If they are, it returns T
|
|
(True) or, if not it returns Nil (LISPese for False). COND is just a fancy way
|
|
of saying "If".
|
|
|
|
If NUM is equal to 1 THEN return 1 as the value of the function, if
|
|
not... activity T, which in this situation means "Else" and multiply NUM times
|
|
a recursive call to itself with NUM-1.
|
|
|
|
(Factorial 4) returns the value 24.
|
|
|
|
Symbolic Manipulation. the manipulation of symbols like '(IceNEWS is a
|
|
Fine publication), is what LISP was invented for. (Note the quote again. You
|
|
use those a lot in LISP for when you don't want to get data and program mixed
|
|
up.)
|
|
|
|
CAR, CDR and CONS are the heart of Symbolic Manipulation functions. CAR
|
|
means "Contents of the Address part of the Register," which sounds complicated
|
|
but in reality it means "First." It gives the first element of the list.
|
|
|
|
(CAR '(IceNEWS Is great)) --> IceNEWS.
|
|
|
|
CDR means "Contents of the Decrement part of the Register" but it really
|
|
means "Rest". Give me all of the list except the first element.
|
|
|
|
(CDR '(IceNEWS Is great)) --> (Is great).
|
|
|
|
Both these functions are often also referenced as FIRST and REST within
|
|
most LISPs. You LISP's environment can be altered so that CAR and CDR can be
|
|
referenced as FIRST and REST if you want. (Setq FIRST 'CAR) should do the
|
|
trick for you. Both CAR and CDR expect to be called with Lists, though. Don't
|
|
call them with only atoms as arguments. (CAR 'A) and (CDR 'A) both return NIL
|
|
or False.
|
|
|
|
CONS is for Constructing new lists. It accepts two arguments. It inserts
|
|
the first argument into the second argument. The first can be either a list or
|
|
atom. The second must be a list.
|
|
|
|
(CONS 'IceNEWS '(is great)) --> (IceNEWS is great).
|
|
(CONS '(Jim is an evil overlord) '(who must be stopped)) --->
|
|
((Jim is an evil overlord) who must be stopped)
|
|
|
|
There are also True-False or predicate functions. NULL, LISTP, ATOM,
|
|
NUMBERP, EQUAL, etc.
|
|
|
|
NULL tests to make sure something isn't Nil. LISTP checks to see if
|
|
something is a list or not. ATOM checks to see if something is an ATOM.
|
|
NUMBERP checks to make sure if something is a numeric atom. EQUAL, as I noted
|
|
before, checks to see if two things are equal or not.
|
|
|
|
Some other functions that should be referenced are: APPEND, a special
|
|
version of CONS. LIST which forms a new list out of its arguments, LENGTH,
|
|
which returns the number of elements in a given list as a numeric atom, and
|
|
REVERSE, which reverses a given list.
|
|
|
|
(APPEND '(IceNEWS is great) '(IceNET is cool)) ---->
|
|
(IceNEWS Is great IceNET is cool)
|
|
|
|
Compare to (CONS '(IceNEWS Is great) '(IceNET is cool)) ---->
|
|
((IceNEWS is great) IceNET is cool)
|
|
|
|
(LIST 'A) ---> (A). (LIST '(Jim is a nice guy)) ---->
|
|
((Jim is a nice guy)).
|
|
|
|
(LENGTH '(A B C D)) ---> 4.
|
|
|
|
(REVERSE '(A B C D)) --> (D C B A).
|
|
|
|
The other type of Forms are the global variables. These you alter using
|
|
Setq. Global variables can be functions as well as just your normal variable
|
|
like in Pascal or C. Like when I set a global variable equal to the CAR
|
|
function beforehand.
|
|
|
|
(SETQ **A** '(IceNET is nice)) defines a global variable of **A** which
|
|
means (IceNEW is Nice).
|
|
|
|
(CAR **A**) ----> IceNET.
|
|
(CDR **A**) ----> (is nice).
|
|
(CAR (CDR **A**)) ----> is.
|
|
(CONS 'Jimbo **A**) ----> (Jimbo IceNET is nice).
|
|
|
|
SETQ can be used for what is sometimes refereed to as polymorphism in
|
|
other languages like C++ or an OOP Pascal. It allows function names to go with
|
|
different types of functions at different times.
|
|
|
|
I'll now define some functions I have written in the past to give a feel
|
|
of what LISP can do sometimes.
|
|
|
|
Palindromep - a predicate that tests an argument list to see it is it a
|
|
list that has the same sequence of symbols when read from right to left as
|
|
when it is read left to right.
|
|
|
|
(DEFUN Palindromep (l)
|
|
(COND ((NULL l) T)
|
|
((EQUAL l (REVERSE l)) T)
|
|
(T NIL) ))
|
|
|
|
(Palindromep '(a b c b a)) ----> T.
|
|
(Palindromep '(a b c c c a)) --> NIL.
|
|
|
|
Presentp - a predicate that determines whether a given atom occurs
|
|
anywhere in an expression.
|
|
|
|
(DEFUN Presentp (a exption)
|
|
(COND ((NULL exption) NIL)
|
|
((EQUAL a (CAR exption)) T)
|
|
((LISTP (CAR exption)) (OR (Presentp a (CAR exption))
|
|
(Presentp a (CDR exption)) ))
|
|
(T (Presentp a (CDR exption)) )) )
|
|
|
|
(Presentp 'x '(SQRT (DIV (PLUS (expt x 2) (expt y 2)) 2))) ---> T.
|
|
|
|
|
|
There are other things to LISP, but those are the more difficult and
|
|
advanced aspects of the language. If anybody has any questions they would like
|
|
me to answer just drop me an e-mail (6@1 IceNET) and I will try to answer them
|
|
in an upcoming installment of this Artificial Intelligence series of articles.
|
|
|
|
|
|
Coming in the July issue of IceNEWS: Part 3 of this series.
|
|
|
|
|
|
Sources used in this series:
|
|
|
|
_Understanding Artificial Intelligence_; 1988; by Henry C. Mishkoff;
|
|
Howard W Sams.
|
|
|
|
_Artificial Intelligence... Using C_; 1987; by Herbert Schildt;
|
|
Osborne McGraw-Hill.
|
|
|
|
_The Computer Glossary: The Complete Desk Reference_; 1991; by Alan
|
|
Freedman; AmaCom.
|
|
|
|
_Using Turbo Prolog_; 1988; by Kelly M. Rich & Phillip R. Robinson;
|
|
Borland-Osborne McGraw-Hill.
|
|
|
|
_I, Robot_; 1950; by Isaac Asimov; Del Rey.
|
|
|
|
_Asimov On Science_; 1989; by Isaac Asimov; Pinnacle.
|
|
essays entitled "Thinking About Thinking" and
|
|
"More Thinking About Thinking".
|
|
|
|
_AI: The Tumultuous History of the Search for Artificial Intelligence_;
|
|
1993; by Daniel Crevier; BasicBooks.
|
|
|
|
_LISP: An Interactive Approach_; 1986; by Stuart C. Shapiro;
|
|
Computer Science Press.
|
|
|
|
_XLISP: An Experimental Object-Oriented Language_; 1986; by David M. Betz;
|
|
Documentation with program.
|
|
|
|
_PC-LISP User Manual_; 1987; by Peter Ashwood-Smith; Documentation with
|
|
program.
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ H A R D W A R E ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ Will Crawford On: The Future of Computing ³ Will (1@6754)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
Every few months, people get together and try to figure out what the
|
|
computing scene will look like five, ten, or fifteen years down the line.
|
|
Often these are wild guesses, flagrantly optimistic or too narrow-sighted and
|
|
pessimistic. A committee under President Johnson was told to come up with an
|
|
idea of what computing would be like in the year 2000. Everything they
|
|
predicted had occured by the mid 1970s. Arthur C. Clarke, a science visionary
|
|
if there ever was one, overshot the direction of AI (in 2001) and understated
|
|
it as well (in some of his novels, he predicted that punch cards would still
|
|
prevail in 100 years).
|
|
|
|
The mid 1990s is certainly a turbulent time, with platforms, chips, and
|
|
operating systems all jostling for a top position, and nobody is really quite
|
|
sure what will come out on top in the end. However, computer technology is
|
|
begining to settle into a pattern and trends appear which make long range
|
|
predictions easier. While things are still murky, many technological
|
|
developments of the next five to ten years can be seen through the haze.
|
|
|
|
Hard disk capacities will double, triple, and finally increase by up to
|
|
50 times over the next five years, with no real change in cost. Two new
|
|
technologies will make this possible. The first involves using DAC chips
|
|
(Digital Audio Converter, more on them later) to filter data "noise" from the
|
|
hard disk. This will allow information to be packed much more tightly on the
|
|
disk platter without additional miniaturization costs. The second scheme,
|
|
which may bear even more potential, involves changing the orientation of the
|
|
recording medium on the disk platter to allow a much tighter density of
|
|
information.
|
|
|
|
Crystal Lattice memory may also come into its own for storage, pehaps by
|
|
the year 2000, perhaps later. This involves using a laser to store data in
|
|
"cells" a few dozen atoms across in pieces of special crystal. While current
|
|
working models only store a few dozen bits of memory, this technology has the
|
|
potential to cram terrabytes of memory into a recording media not much larger
|
|
than a marble.
|
|
|
|
The chip wars will continue for a few more years, the eventual winner
|
|
still indeterminite. IBM, and Apple especially, are betting the farm on the
|
|
success of the PowerPC RISC chip. Intel has a lot to lose if PowerPC catches
|
|
on, so they'll continue to step up R&D and solve the cooling problems of the
|
|
latest generations of Pentiums and above (Intel recently demoed a Pentium DX4.
|
|
While capable of hundreds of MIPS, the machine needed liquid cooling).
|
|
Machines using liquid nitrogen cooling might become popular if the chips can't
|
|
be made to run at a lower temperature.
|
|
|
|
If IBM and Motorolla can release the PowerPC 620 chip on schedule, and
|
|
announce even more advanced versions, they have a good chance of prevailing.
|
|
Rumors are that IBM plans to incorporate some 486 compatible circuits onto the
|
|
next generation of PowerPC, helping end the copmatibilty problems. The other
|
|
RISC manufactures, such as MIPS (makers of the R4000 chip used in Silicon
|
|
Graphics workstations, among other strong RISC machines) aren't going to toss
|
|
in the towel, so there's still the possibility of a "Dark Horse" canidate.
|
|
|
|
Who wins the chip war really depends on who wins the Operating System
|
|
War. Which chip is "in" use might become quite irrelevant if Microsoft and/or
|
|
IBM get the multi-platform versions of Windows NT and OS/2 out the door on
|
|
time. Part of Microsoft's master plan includes versions of Windows NT, which
|
|
should be able -- with minimal effort -- to run all Windows NT apps, period,
|
|
making proccessor type irrelevant. If they can improve the emulation of 80x86
|
|
programs, they might manage to do just that. If IBM wins big with OS/2, then
|
|
the PowerPC will have a definite advantage. Of course, the product under
|
|
development by the IBM/Apple join venture Talligent may change all of that.
|
|
|
|
Audio subsystems will become standard equipment on almost all new
|
|
machines, perhaps to the level of common motherboard interfaces. The DAC chips
|
|
that are becoming very popular allow customized data proccessing that allows
|
|
the sound elements to be turned to various uses. Soft modems, such as those
|
|
found on the AV Macintoshes and available from a few PC vendors, will become
|
|
increasingly popular because they can easily be upgraded with software and
|
|
double as an audio system. They'll gradually replace conventional modems. With
|
|
the advent of enhanced telecommunications environments (the so-called
|
|
Information Superhighway), the picture might change again, with direct ISDN
|
|
links replacing modems in many applications.
|
|
|
|
There's a lot going on in the PC world, and the next few years and months
|
|
are going to be very interesting.
|
|
|
|
Next Month: The PC Buyer's Quandry
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ Give me an A, Give me a T, Give me a Z ³ Fractal (3@5750)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
What does it spell? ATZ. It sounds really simple, and if you feed it to a
|
|
modem, 99.9% of them will say OK. Not only that, they for the most part will
|
|
connect to almost any other modem at that setting. Why is it then that so many
|
|
people have so many problems getting their modem INIT strings to work?
|
|
|
|
For starters, most are overly complex. There seems to be a mystique about
|
|
modem initialization strings that says that they need to be a complex magical
|
|
combination of indiscernible characters to result in the right connection.
|
|
Take the following examples:
|
|
|
|
(lines with - are two-line init strings)
|
|
|
|
ATE0H0M0Q0V1X4\N3%C1\A3S0=0S2=1S48=7S95=44
|
|
ATC1E0F1H0M0Q0V1X6&A1&B1&C1&D2 - AT&H1&I0&K1&N0&R2&S0S0=0S2=1
|
|
ATC1E0F1H0M0Q0V1X6&A2&B2&C1&D2S38=1 - AT&H1&I0&K1&N0&R2&S0S0=0S2=1
|
|
AT\N3%C1\K3\G0\A3%D2%E0%M3 - ATS46=138S48=7S82=128S36=1S95=44S11=50
|
|
ATE1Q0M1L2&C1&D2S0=0S2=255&W0&W1
|
|
|
|
In most cases, much of the contents of the init strings are unnecessary
|
|
as many of them match the default values that are already set on power-on.
|
|
Many modems provide more than one command to do the same thing. Sometimes, a
|
|
command that starts with a letter like M0 or M1 (speaker on or off) can be
|
|
duplicated by an S-register command like S193=0 or S193=1.
|
|
|
|
Adding to the confusion is permanent memory, which allows modems to be
|
|
pre-configured to one setting or another but which can conflict with settings
|
|
that are specified in an initialization string. The best way to eliminate this
|
|
problem and assure consistency is to begin all init strings with a factory
|
|
reset command that will start you off from a common ground; an &F will often
|
|
work toward this end.
|
|
|
|
The "ATZ" init string doesn't reset to factory defaults, it merely resets
|
|
the modem to what it was when it was powered on, which would be different if
|
|
the permanent memory has been saved to in the past. AT&F, if the modem accepts
|
|
that command, would be much better because it is more consistent. Also, avoid
|
|
saving to permanent memory (ending with &W, &W0, or &W1) because it serves no
|
|
purpose as long as an init string is being used and could cause some problems
|
|
for other software which uses the modem (it will also probably slow down the
|
|
initialization process).
|
|
|
|
Many times, redundant commands can make for long lengthy init strings.
|
|
AT&FE1 wouldn't make sense because almost any modem that is new enough to have
|
|
a default setting in ROM will always turn the echo on anyway in its default
|
|
setting, so the E1 is redundant and should be removed. Your manual will
|
|
indicate the settings that a default initiates. Follow the &F (or similar)
|
|
command only with settings you desire to be different from the default
|
|
settings. This will often include &C1 and &D2, which are common additions; &C1
|
|
enables the carrier detect line so it doesn't always indicate a connection
|
|
even when noone is online; &D2 tells the modem to hangup in response to the
|
|
dropping of the DTR line from the computer. Most term programs and BBSes
|
|
(including WWIV) will try to hangup this way. You may also want to include a
|
|
M0 if your modems default leaves the speaker turned on.
|
|
|
|
A few spaces never hurt either just to make it readable. Hayes compatible
|
|
modems completely ignore spaces, so "AT &F &C1 &D2" makes a pretty good
|
|
universal setup string for most modems.
|
|
|
|
WWIV sysops should be aware that if your modem's factory defaults should
|
|
enable auto-answer you will need to add "S0=0" to your init string or the
|
|
modem will hang up when the board tells it to answer (You'll know this because
|
|
nobody will connect)! This happens because when a modem answers, pressing any
|
|
key before a carrier is locked on will cause it to abort and the ATA sent by
|
|
the computer aborts the answer already in progress.
|
|
|
|
Common additions to the generic setup include: S10=50, which allows the
|
|
modem to recover better from a momentary lost carrier (like a call waiting
|
|
beep), S0=0, which prevents auto-answer, and M0, which turns off the speaker.
|
|
Add these only as required to keep yourself running well.
|
|
|
|
For a good init string, start with something like this:
|
|
|
|
(WWIV sysops won't forget to add the curly brace on the end :))
|
|
|
|
AT &F S2=255 S10=50
|
|
|
|
Then, if needed, add &C1, &D2, S0=0, and M0 as required. By this time,
|
|
you should be well on your way to a good connect. WWIV sysops making a .MDM
|
|
profile will then need to make sure that the result strings indicate the
|
|
appropriate connects and baud rates (this can be done by setting the MS= and
|
|
CS= numbers as required). If your modem needs different settings added to its
|
|
init string to allow it to report the caller's baud rate, then add them. You
|
|
can lock the baud rate or leave it floating as long as the result strings
|
|
indicate the appropriate action. There are reasons for going either way, but
|
|
we'll leave that as well as other tips and tricks for another time.
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ L I T E B Y T E S ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ Tales From A BBS Sysop - Funny Users ³ Ima Moron (1@9661)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
ÿ That Funny Occurance
|
|
|
|
Every once in a while, a user pulls/posts/or E-mails one of those
|
|
immensely funny occurances that makes the work of being a sysop worth the time
|
|
and effort. I live for those moments, and I frequently encounter that point in
|
|
time when a user torques my funny bone. On that note I'll let all of you in on
|
|
my users quirks.
|
|
|
|
In creating an incentive to donate to my BBS I utilized a program titled
|
|
"Tradewars Galactic Market" by Eric Heimburg, WWIVnet 1@4709. The program
|
|
allows an external starport feature in which the sysop can regulate item
|
|
prices, users decloak others, disclose other player's locations, or in which
|
|
the user can transwarp tow themselves anyplace. I then created an ANSI ad
|
|
campaign using a modified mafia.ans from the tradewar ANSI files. Within Mr.
|
|
Martin's ANSI I created my mafia "Don" who extolled all of the features of the
|
|
software. There would now be two classes of Tradewars playing users on my BBS;
|
|
those that paid me a bribe for the AR toggle to use the mafia and those that
|
|
just played the game without any outside intervention. To be sure of immediate
|
|
success and a large subscription list to the program I added an incentive to
|
|
pay up; all paying subscribers to my mafia could, if they wished, pay an
|
|
additional $2.00 and exclude a competitor from the mafia. One fine morning I
|
|
picked up my mail to find the following letter wrapped around nine one dollar
|
|
bills:
|
|
|
|
Dear Mr Mafia Man
|
|
|
|
I am enclosing 900 cents in small unmarked bills. Please
|
|
do not hurt my ship. I want to see it alive again.
|
|
|
|
Thank you
|
|
David [real name excluded]
|
|
|
|
I laughed myself into stitches, I gave him his access and an extra
|
|
fifteen minutes of daily user time for the humor. BTW - the letter had the
|
|
appearance of a cut up magazine.
|
|
|
|
---- User Errors ----
|
|
|
|
I had expressedly informed all of my users that they should read the
|
|
network sub-board of their interest and, after aquiring a grasp of the subject
|
|
on the sub-board, they should then post. A young man logged on shortly after
|
|
having been allowed access to the networks. He then proceeded to comment on
|
|
anything and everything. I spent most of the morning logon deleting what I
|
|
could stop from being sent out and attempting to apologize for the dialogue
|
|
that was transmitted and I restricted him.
|
|
|
|
When the youngster logged back on to the BBS the following evening, he
|
|
immediatly sent me some feedback in which he stated that he was possesed by a
|
|
fervor that he had never experienced before. Mom and dad had held a cocktail
|
|
party at their house. At the end of the party, Junior was instructed to clean
|
|
up the mess, which he devoured in gulps -- gin, wiskey, etc. What could I do?
|
|
There just isn't any way to regulate the travels of youth. I temporarily
|
|
restricted his access, then, after a week, I forgave him.
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ How They Got Started In BBSing - Pt. 3 ³ Compiled by: Louie (6@1)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
Some of the kind readership of IceNEWS may recall the older articles in
|
|
this series in which stories from well known folks around WWIVland tell us all
|
|
how they started in BBSing. Such luminaries as Wayne Bell, Filo, Jim, Deanna,
|
|
etc. told us how they started in this wonderful hobby of ours called BBSing.
|
|
|
|
Hummm... Why do we call it "BBSing?" "MUGing" (Modem User Group) gets us
|
|
funny looks when we put up picnic signs with that on it. "Modemers" doesn't
|
|
give the same oomph as BBSing. "Bauders" just sounds weird. Well, I guess we
|
|
are stuck with some strange names like "BBSing" for our hobby.
|
|
|
|
This month we have stories from DayDreamer (2@4501), an all around nice
|
|
person who wrote about being a female sysop in the May 1994 issue of IceNEWS;
|
|
Benny Hill (1@7400), the all famous Group Coordinator of WWIVnet; and
|
|
Wildfire, (1@5857) who is a nice person writing for his first time for
|
|
IceNEWS. Each is "good people"... unlike some of the IceNEWS Staff. :-) hehehe
|
|
(Hey, Will... put that axe down!) One moment please while I put down the
|
|
rebellion within our ranks!
|
|
|
|
**BANG!** Ahhhggg! **THUD!** Belch! **WAP!**
|
|
|
|
There, everything seems to be back in the natural order of things. Seems
|
|
I had to promise Will that he could be M/E next month though.
|
|
|
|
Anyway, this is getting weird and you would rather hear from Daydreamer I
|
|
am sure.
|
|
|
|
|
|
|
|
Daydreamer, #2 @4501, writes:
|
|
|
|
Dream Tales
|
|
|
|
In the time before the creation of the mountains and after the creation
|
|
of the sun, there came into being DayDreamer.
|
|
|
|
'Twas the summer of '89. A bright, beautiful afternoon that gave no hint
|
|
of what was to come. Suddenly, a sharp scream echoed throughout the building,
|
|
followed by a sigh of relief... DreamScape, the dusk to dawn BBS, emerged into
|
|
the unsuspecting world.
|
|
|
|
After hours of reading fine print labeled FYEO, the newly created sysop
|
|
knew that something wonderful was going to happen. Rising from the chair that
|
|
she had called home for the better part of the day, the weary DayDreamer
|
|
brought into creation a blinking cursor, turned out the lights, and said,
|
|
"this is good."
|
|
|
|
Early the next morning, DayDreamer rushed to the room containing
|
|
DreamScape to see what had happened in the night: arghhhhhh... absolutely
|
|
nothing, not a call, not even a wrong number. With a worried expression, she
|
|
wondered what could be wrong. Then, the reason for failure became apparent.
|
|
Who knew about this new reality? Quick, call the printers. Send out the
|
|
messengers. Let the world know that there is something new and different to be
|
|
found in the tiny town of Oklahoma City. Find kindred souls. Search for others
|
|
that share the same desires and passions, those that wish to spend long,
|
|
endless hours making a simple machine become a power to be reckoned with.
|
|
|
|
Six WWIV wizards appeared, all with thunderous attitudes, bearing
|
|
predictions of misfortune. This was not a task for m'lady, 'twas a dirty and
|
|
thankless job and best left to those more suited for it. The lady viewed the
|
|
wizards, wondering what secrets they were trying to hide, why would they want
|
|
her to stay in the "dark Ages of childbirth and housework." Squaring her
|
|
shoulders, DayDreamer said, "We shall see if the walls of ignorance can be
|
|
torn down, and women given their rightful place in the electronic age." As
|
|
time passed, the user base grew with astounding speed. The new serfs cried for
|
|
more online time, more hours of operation, more utilities, and more of
|
|
DayDreamer's ancient wisdom.
|
|
|
|
Realizing that growth was a sign of success, DayDreamer sent a carrier
|
|
falcon with registry for her creation. As days passed, she became restless.
|
|
Would the keeper of the records, Lord Bell, also feel that this was not a task
|
|
for the other gender? Then it happened. The secret code arrived. With it came
|
|
a magic number, and DreamScape evolved into a 24-hour system, made to the
|
|
specifications of DayDreamer. Hers alone. No other had anything exactly like
|
|
it. The local WWIV wizards were still skeptical, but now they asked for advice
|
|
on questions that they could not resolve.
|
|
|
|
DayDreamer became the matriarch of WWIV in Oklahoma. This also created a
|
|
new set of problems. The reigning wizard had to admit to errors in some of his
|
|
spells, spells borrowed from other wizards in distant realms. New alliances
|
|
had to be formed. The camps divided, those that followed the bard and those
|
|
that followed a dreamer. Old friendships crumbled to dust as the new ones grew
|
|
stronger. The full meaning of the original worries became clear. WWIV: another
|
|
way of warfare; a masculine skill.
|
|
|
|
DayDreamer joined a national alliance of wizards and found no unusual
|
|
comments on her gender. There were questions of course, but time and
|
|
experience had provided answers. Some made offers of a physical nature, others
|
|
wondered at what had caused her to become one of the sysops. The answer to the
|
|
latter was simple, time was at fault. 'Twas the last frontier (or so she
|
|
thought). One of the new wizards spent long hours talking with the dreamer and
|
|
a friendship about user bases, file formats, archives and network connects.
|
|
DayDreamer wondered if the past and future could blend into the present
|
|
without constant strife. A merging took place and DreamScape and StarBase
|
|
resided in the same time and space. The Dream Wizard and the StarBase Admiral
|
|
signed an agreement to co-exist, bonding the past to the future.
|
|
|
|
Then another evolution took place. DreamScape had fullfilled DayDreamer's
|
|
every expectation. The time for change was at hand. With a few keystrokes,
|
|
DreamScape ceased to exist in this reality. DayDreamer made a permanent move
|
|
to StarBase, becoming the Admiral's right-hand "man." The random ways of
|
|
DreamScape were not the ways of StarBase. Choas was not the order of the day,
|
|
but singularity of purpose. DayDreamer sent a message to the wise Texas
|
|
Wizard, title to DreamScape was transferred to the Admiral, and DayDreamer
|
|
became the "Other One."
|
|
|
|
Ah, for a moment we forgot that this was suppose to tell the tale of
|
|
being a female sysop. Sysops have no gender, just a love of creation, a desire
|
|
to make new friends and assist others in becoming familiar with the keystrokes
|
|
required to navigate a message base. Being a sysop only requires a desire to
|
|
be up long hours searching out the reason for failure when new code is
|
|
incorporated into old, the reason for modem connect failures and lost
|
|
messages, corrupted user bases, and file not found errors.
|
|
|
|
Perhaps the motto of the sysop should be "be all you can be" and nothing
|
|
more.
|
|
|
|
|
|
Wildfire, #1 @5857, tells about how it all started for him:
|
|
|
|
I originally started BBSing in 1987 on my Tandy 1000EX, with a 1200 baud
|
|
modem. I was fast at that point. 2400 bps was just introduced, but many people
|
|
I knew still only had 300 bps. I was a member of a lot of WWIV BBSes. I liked
|
|
them. They were easy for new users to get used to and there was even a Mac
|
|
running a version of WWIV. Somebody actually took the time to port over (I
|
|
think a Pascal version) WWIV, and it was a cool BBS for us young'ns. I was all
|
|
of 15 and was really getting into computers. The modem was a natural
|
|
extension. I felt I could communicate better over the modem than person to
|
|
person, and I grew with the modem.
|
|
|
|
I dropped out of BBSing for almost a year. The Tandy died (don't tell my
|
|
dad but I left the window open behind it one night and it got rainded on. He
|
|
still thinks it was a natural failure) and I was without computer. Dad then
|
|
went out looking for another computer as I was starting to sort of need one to
|
|
do reports on as my school was no longer accepting hand-written reports and we
|
|
didn't have a working typewriter. He finally decided on another Tandy, a
|
|
1000SL this time. We bought the adapter board and put the 1200 bps modem back
|
|
in and I was back in business. Procomm + 1.1TD and I were good friends at the
|
|
time. When 2400 was becoming more and more prevalent, and most BBS users had
|
|
1200 bps modems, I wanted faster. So I wasted my $80 for the then cheapest
|
|
2400, and I was again a BBS speed demon/god. 9600 baud hadn't even been heard
|
|
of yet.
|
|
|
|
I graduated high school on that Tandy 1000 and got a job at Radio Shack
|
|
when I started college. I got a lot of computer exposure there. I already knew
|
|
more than most of the RS employees about computers, so it was just natural
|
|
that I learned more about them. After about a year, I finally bought a new
|
|
computer. It was about 6 months before the 386SX came out, so the only
|
|
affordable power at the time was a 286. The company made me a deal: a 286, 10
|
|
MHz, 1 MB RAM, 1.44 MB floppy, 52 MB IDE hard drive, 101-enhanced KB, and a
|
|
VGA monitor. I put my modem in there, still had that copy of PC+TD, and was
|
|
full force into BBSing again.
|
|
|
|
About 2 years ago, probably a little more, I got my own phone line. Don't
|
|
know why. I think it was really so I could BBS without dad bugging me to get
|
|
off the line. The phone line was horrible. After complaining, rewiring,
|
|
complaining again and getting them to fix the problems, I finally could call
|
|
out without a screen full of line noise.
|
|
|
|
Two of my friends then decided to set up a BBS on my computer. I kept
|
|
telling them not to, I didn't want to run a BBS. I didn't want to, really, I
|
|
didn't. They set up a copy of WWIV 4.12 and between the two of them, it took
|
|
all of about a half-hour. Full BBS with file directories, message bases,
|
|
g-files, and a game (we were all very good DOS users at the time, stuff wasn't
|
|
hard for us). I finally sat down and made a couple of ANSI logon/logoff
|
|
screens, and made the new user message, the system message, etc. Since the
|
|
thing was set up mostly, why not finish it?
|
|
|
|
I opened part time in around April of 1992, 9:00 AM until 12:00 AM, and
|
|
ran that way for about 6 months. Then I went 24 hours, swearing that I
|
|
wouldn't join a network since I didn't want to run a BBS to start with. Well,
|
|
needless to say, here I am. The BBS takes up as much of my life as my
|
|
ex-girlfriend did. It's scary...
|
|
|
|
|
|
Benny Hill #1 @7400
|
|
|
|
I started sometime in August, 1968, in the Big Apple. There, my parents
|
|
decided they wanted to have a child.... Wait, you only want how I got started
|
|
into BBSing? Oh, Sorry...
|
|
|
|
I started calling bulletin boards on one of my old best friend's computer
|
|
in 1988. His name was Kevin Camardelle from New Orleans. His computer was a
|
|
Timex Sinclair 2068 (no, not a Timex 1000 doorstop). At times, I would go over
|
|
to his house and call a bulletin board or two because I thought they were
|
|
"neat." The system he had consisted of only a TS 2068 computer and a Westridge
|
|
300 baud modem, which was slow at the time, and real slow now that I think
|
|
about it!
|
|
|
|
The first BBS I called was named LA Medsig, which was a RBBS Bulletin
|
|
Board in New Orleans. The first WWIV bulletin board I ever called was a system
|
|
run by Josh Aasgaurd in New Orleans called, at the time, Freedom's Gate. On
|
|
that BBS, I learned about BBS etiquette by observing things I saw from several
|
|
of the board's more respected users, such as Taliesin, Quadrangle, Morgana,
|
|
Shadowspawn, The Police, Redwitch, Todd VomiT, and Elizabeth Shaw. I watched
|
|
and tried my best to blend in with the ways of BBSing, as any newbie would do.
|
|
Eventually I got the hang of it. I was definitely hooked on BBSing!
|
|
|
|
In June of 1988, I called Madman's BBS, The Funny Farm BBS (still in
|
|
operation today, WWIVnet @5401, WWIVLink @15401 - WWIV Source Distribution
|
|
Site). At that time, he had just put up his BBS and I was his 6th user. Madman
|
|
was just getting his board started and I really enjoyed calling his BBS. One
|
|
day, Madman decided to take advantage of one of WWIV's features by assigning
|
|
subops to some of his sub-boards. At that time, his assistant sysop was a man
|
|
who went by the handle of Goata. I had volunteered to become a subop of the
|
|
"Opinions" sub-board, and someone by the handle of Stalker became the subop of
|
|
the "War" board. Well, I spent a lot of time on The Funny Farm. Eventually,
|
|
something or another happened with Goata and Madman decided he needed another
|
|
cosysop, and for some reason he selected me.
|
|
|
|
As a cosysop, I spent time trying to learn all the features of WWIV, as I
|
|
did enjoy the software and preferred it over any other BBS programs that I
|
|
saw. I became fairly familiar with the software through experimenting with the
|
|
commands, DOS, etc. The trick was, I did not have an IBM-compatible, but one
|
|
of Kevin's Timex Sinclair 2068s and 300 baud modem! No previous DOS experience
|
|
whatsoever! WWIV was easy to learn as the menus were easy to go through.
|
|
|
|
We ran WWIV v4.01 at the time (a -long- time ago). At one point, we
|
|
decided to drop down to WWIV v3.21d because we wanted to install games on the
|
|
system that we could not with 4.01, as not many were available at the time.
|
|
Things ran smoothly for the Farm; more users, more activity on the system, all
|
|
was going well.
|
|
|
|
Sometime around October of '88, I learned about WWIVnet. WWIVnet at the
|
|
time probably only had 150 systems in it, if that many. The System Operator of
|
|
The Ravenloft BBS, who was Count Strahd Von Zarovich, brought WWIVnet into New
|
|
Orleans as WWIVnet @5400. I was fascinated with the networking concept: that I
|
|
could actually send e-mail to someone in California from my own computer. I
|
|
spent a lot of time trying to convince other sysops in the area to join
|
|
WWIVnet. Madman was the first I was able to convince and he joined as the
|
|
original WWIVnet @5401. Of course, Madman had to upgrade to WWIV v4.05 to join
|
|
as v3.21d was not compatible. Kevin Caparotta (Piano Man) joined soon after as
|
|
node @5402, I got Freedom's Gate on the net as @5403, and things started
|
|
rolling along. By this time, I had 255 access on most of the WWIV boards in
|
|
New Orleans and was always willing to help anyone out if I could.
|
|
|
|
Eventually, with the help of Madman, I got an IBM XT-Turbo machine with a
|
|
huge 20 MB hard drive (well, back then, it was a good size). With the machine,
|
|
I inherited a 1200 baud modem. A big jump over 300 baud. Of course, I
|
|
downloaded a copy of WWIV and put it on my machine and tried to figure out
|
|
more things about the software. In February of 1989, I got my first 2400 baud
|
|
modem through help of Foxx of The Foxxhole BBS (1@4907 WWIVnet currently).
|
|
|
|
During the summer of 1989, I spent time trying to help promote the use of
|
|
the WWIV software. During that time, the original WWIV Support Network was
|
|
created with 5 systems, including Mr Bill of Mr Bill's Abode, Filo of The
|
|
Dragon's Den, a guy from Massachusetts, Eric Golden of Farpoint Station, and
|
|
Doug Fields of The Galactic Empire. The support network was growing a bit and
|
|
I tried my best and got The Funny Farm (original) into it. We registered the
|
|
WWIV software at this point (June of 1989).
|
|
|
|
In September 1989, I moved from New Orleans to Charlotte, NC. There was
|
|
not a single WWIV BBS in the 704 area code and not a single alias BBS in the
|
|
city whatsoever. I decided to put up my own BBS and decided to call it The
|
|
Funny Farm (East Wing). When my board was put up on October 10th, 1989, its
|
|
sole purpose was for the support of the WWIV software. It was my aim as a
|
|
sysop to promote the use of the software. In time, I had one of the largest
|
|
collections of WWIV compatible games, files and utilities available anywhere!
|
|
I joined WWIVnet as node @7400 and 704 area coordinator. In this area code, we
|
|
jumped from one WWIV BBS to, at one time, over 30 of us! All but one were
|
|
alias-based boards.
|
|
|
|
In time, Wayne Bell appointed me to coordinate the WWIV Support Network.
|
|
The first thing I did as support board coordinator was limit my own power, if
|
|
it ever even existed. I made it where any system being added would be voted
|
|
upon by the membership of the area, not any decision made by just one person.
|
|
Through trial and error, I think we currently have one of the best systems of
|
|
adding support systems as needed. While not perfect, it is the best solution
|
|
we have come up with so far; To be fair to one and all who submit a support
|
|
application.
|
|
|
|
I also remember one of the biggest events that ever hit the WWIV world.
|
|
It was in late 1990. There was some dissatisfaction of what was going on in
|
|
WWIVnet. At that time, there were no group coordinators; only ACs and Wayne as
|
|
the NC. I attended a sysop meeting in Richmond, VA. There, I met John Hardman,
|
|
John Wash, Tarkender Evenstar, Lord Samos, ->DOC<-, Deanna, Moribound The
|
|
Burgermiester (MTB of The Vaporboard), Kent 1@9955, and several other sysops.
|
|
It was at that meeting that the separation of WWIVnet was put into full force,
|
|
the meeting in which WWIVLink was born. On Feb 27th of 1991, WWIVLink was made
|
|
a reality when all of the systems which were to be WWIVLink boards instead of
|
|
WWIVnet boards were cut out of WWIVnet.
|
|
|
|
I created a modification for my board at the time (WWIV v4.10 I think)
|
|
which allowed me to be on both networks at the same time. I do believe I was
|
|
the first ever multi-network BBS for a WWIV-type network. I remained on
|
|
WWIVnet and was also a charter member of WWIVLink. I did this by allowing a
|
|
command to "jump" to the other network (a different BBS.EXE entirely). I had
|
|
tweaked the code so it would make automatic callouts to both networks through
|
|
batch files and everything was in full gear then. Unfortunately, some
|
|
circumstances developed and I could not duplicate what I did to that code to
|
|
do multi-network and I dropped out of WWIVLink.
|
|
|
|
Since 1991, I have served as the WWIVnet Group 6 Coordinator. I am also
|
|
the coordinator of the WWIV Support Network. My aim still remains the same: to
|
|
promote the use of the WWIV software. My BBS is an official support board, and
|
|
one of the original Source Distribution Sites. Since my board went up, I have
|
|
received close to 45,000 calls to the system, I have over 1000 users, and have
|
|
received calls from many parts of the globe including Canada, Japan, Mexico,
|
|
Portugal, England, Spain, and Australia.
|
|
|
|
If you wish to call my system, feel free to do so! The system runs 24
|
|
hours a day, 7 days a week. We are now at 14.4k v.32bis using a USRobotics
|
|
Dual Standard modem. The software as of this writing is WWIV v4.24 beta 1. We
|
|
have auto-sysop validation so you can download WWIV-related files on the first
|
|
call. We have about 65 MB worth of WWIV-related downloads available. We also
|
|
serve as a Source Distribution Site authorized by Wayne Bell. If you wish to
|
|
be able to download the source from here, give the board a call, and read the
|
|
instructions in the g-files section #1, "System Bulletins." No upload/download
|
|
ratios for WWIV sysops!
|
|
|
|
------------------------------------------------------------
|
|
|
|
Well, there. We found out that Daydreamer doesn't seem to live within our
|
|
Universe, Wildfire is a weird person, and Benny Hill is a card-carrying wacko!
|
|
But then, you could say any of that about any BBSers in existance. Myself, I
|
|
live on the 61st planet or Sirus in the year 6547. :-) Ha ha.
|
|
|
|
I hope you liked this.
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ Silly Strings - From IceNET Sysops Everywhere ³ Ima Moron (1@9661)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
For the June issue of the Journal, I've decided to include two partial
|
|
tagline collections submitted by Mike Hunt and Michael Siegle. Below that I've
|
|
included some humor submitted by Diamond #1 @3956.
|
|
|
|
|
|
Taglines from Mike Hunt #510 @1
|
|
|
|
"Apple" (c) Copyright 1767, Sir Isaac Newton.
|
|
|
|
And God said: E = «mvý - Zeý/r, and there was light!
|
|
|
|
On a clear disk you can seek forever
|
|
|
|
THE ROAD TO SUCCESS IS ALWAYS UNDER CONSTRUCTION.
|
|
|
|
The floggings will continue until morale improves.
|
|
|
|
I know a good tag line when I steal one.
|
|
|
|
|
|
Taglines from Michael Siegle #1 @8654
|
|
|
|
Drop your carrier...we've got you surrounded.
|
|
|
|
RAM= Rarely Adequate Memory.
|
|
|
|
Mary had a little RAM -- only about a MEG or so.
|
|
|
|
|
|
OK, here's some humor for ya. (not original) By Diamond #1 @3956
|
|
|
|
How do you tell the difference between a used car salesman and a computer
|
|
salesman?
|
|
|
|
The used car salesman knows he's lying... and knows how to drive.
|
|
|
|
ÄÄÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÄÄ
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ Word Search Puzzle Answer ³ Louhal (1@10)
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
|
|
|
|
. . . T N O F . . . . . . . . . . . . . . . S
|
|
COMPUTER D . T U P T U O . . . . . . . . . . . . . . T
|
|
. L . . . . T U P N I . . . . . . . . . . . I
|
|
. . E . E . . . . . . R O T C E S . . . . . B
|
|
ANALOG JOY STICK . . . I . G . C A N A L O G . . . . . . P . .
|
|
ARRAY KEYBOARD . . T . F K A . I . . . . . . . . . . R . . .
|
|
BASIC LANGUAGE . . . R . . C U . S . E S U O M . . I . . . .
|
|
BITS MEMORY . . . . O . . I G . A . . . . . . N . . C . .
|
|
BYTES MODEM . . . . . P . . T N . B . A . . T . . O . . .
|
|
COMPUTER MONITOR . R V . . . . . . S A . . R . E . . M . . . .
|
|
DATA MOUSE S O A . . . . . . . . L . R R . . P . . D . .
|
|
DISKETTE OUTPUT P T R . . . . . . . . Y . A . . U . . . R . .
|
|
DRIVE PORT R I I . . . . . . . . . O Y . T . . . . A . .
|
|
FIELD PRINTER E N A . . . . . . . . . M J E . F . . . O . .
|
|
FILES PROGRAM A O B D I S K E T T E A . R . . O F . . B . .
|
|
FONT SECTOR D M L . . . . . . . R G . . . . R I . . Y . R
|
|
FORMATE SPREADSHEET S . E . S E T Y B G N . . . . . M L . . E E .
|
|
HACKER STRING H . S . . . . . O I . . . . . . A E . . K . .
|
|
INPUT VARIABLES E . . . . . . R R . . M O D E M T S . C . . .
|
|
E . . . . . P T . . . . D R I V E . A . . . .
|
|
T . . . . . S M E M O R Y . . . . H . . . . .
|
|
. . . . . . . . . . A T A D . . . . . . . . .
|
|
|
|
|
|
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
|
|
³ IceNEWS is an independent newsletter published monthly as a service to ³
|
|
³ IceNET, its sysops and users. The opinions & reviews expressed herein ³
|
|
³ are the expressed views of the respective writers. All Rights Reserved.³
|
|
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
|