ÚÄÄÄÄÄÄÄ·ÚÄÄÄÄÄÄÄ·ÚÄÄÄÄÄÄÄ·ÚÄÄ· ÚÄÄ·ÚÄÄÄÄÄÄÄ·ÚÄÄ·      ÚÄÄ·ÚÄÄÄÄÄÄÄ·
     ³ ÄÄÄÄÄ º³ ÄÄÄÄÄ º³ ÄÄÄÄÄ º³  º ³  º³ ÄÄÄÄÄ º³  º      ³  º³ ÄÄÄÄÄ º
     Ô͸   Éͼ³  ÉÍÍÍͼ³  ÉÍÍÍͼ³  º\³  º³  ÉÍÍÍͼ³  º      ³  º³   ÉÍÍͼ
       ³þþþº  ³þþº     ³þþÓÄ·   ³þþºþ³þþº³þþÓÄ·   ³þþº ÚÄÄ· ³þþº³þþþÓÄÄÄ·
       ³±±±º  ³±±º     ³±±Éͼ   ³±±º\³±±º³±±Éͼ   ³±±º ³±±º ³±±ºÔÍ͸±±±±º
     ÚÄÙ   ÓÄ·³  ÓÄÄÄÄ·³  ÓÄÄÄÄ·³  º ³  º³  ÓÄÄÄÄ·³  ÓÄÙ  ÓÄÙ  ºÚÄÄÙ    º
     ³ÛÛÛÛÛÛÛº³ÛÛÛÛÛÛÛº³ÛÛÛÛÛÛÛº³ÛÛº ³ÛÛº³ÛÛÛÛÛÛÛº³ÛÛÛÛÚÄÄ·ÛÛÛÛº³ÛÛÛÛÛÛÛº
     ÔÍÍÍÍÍÍͼÔÍÍÍÍÍÍͼÔÍÍÍÍÍÍͼÔÍͼ ÔÍͼÔÍÍÍÍÍÍͼÔÍÍÍ;  ÈÍÍÍͼÔÍÍÍÍÍÍͼ
     The Journal of IceNET                                     April 1994
    ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
    ³ The Editor's Desk                                                 ³
    ³  The State of IceNET                                    Jim (1@1) ³
    ³  Managing Editor's Comments                    Ima Moron (1@9661) ³
    ³  Letters To The Editors                               Louie (6@1) ³
    ³                                                                   ³
    ³ WWIV Specific                                                     ³
    ³  A Message From Random                                Louie (6@1) ³
    ³  WWIV Operated Under OS/2                         Martin (1@6257) ³
    ³                                                                   ³
    ³ Hardware                                                          ³
    ³  Building A PC/AT Compatible - Part 3               Will (1@6754) ³
    ³                                                                   ³
    ³ Software/Programming                                              ³
    ³  Learning C - Part 3                            Daarkhan (1@7676) ³
    ³  Microsoft Windows for Workgroups 3.11              Will (1@6754) ³
    ³  Turbo Pascal - An Introduction                     Odin (1@7664) ³
    ³                                                                   ³
    ³ Lite Bytes                                                        ³
    ³  April Fools Day Pranks                     Deacon Blues (2@7653) ³
    ³  The Adventures of ModemMan   Jot$ (1@7850) Deacon Blues (2@7653) ³
    ³  Silly Strings                                 Ima Moron (1@9661) ³
    ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
    ³                    IceNEWS Staff For April 1994                   ³
    ³                                                                   ³
    ³                 IceNEWS Editor-In-Chief - Jim 1@1                 ³
    ³             IceNEWS Managing Editor - Ima Moron 1@9661            ³
    ³                                                                   ³
    ³                    IceNEWS Contributing Editors                   ³
    ³    Hardware - Will 1@6754     WWIV-Specific - Jack Ryan 1@4707    ³
    ³         Lite Bytes - Ima Moron 1@9661, Deacon Blues 2@7653        ³
    ³               Software/Programming - Pale Rider 1@23              ³
    ³                                                                   ³
    ³                    Editor-At-Large - Louie 6@1                    ³
    ³                                                                   ³
    ³               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.       ³
    ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ


ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
                    ³ T H E   E D I T O R ' S   D E S K ³
                    ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ


ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ The State of IceNET ³ Jim (1@1)
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ

IceNET has recently picked up in growth rate, as we approach 850 nodes.  I'm
still hoping to see 1000 systems  one  day  in IceNET :).  Also, congrats go
out to Dr.  Diversity and all the Group 1  sysops  for  having  the  highest
percentage  of  WWIV registered systems (over %88) for a group in IceNET.  I
really appreciate all the  sysops  who  have  registered to help support the
software we all use, and your help to maintain our investment in our  boards
by  encouraging  others  to register.  The goal for IceNET is to achieve %90
registration.

I've been testing WWIV 4.24 and NET34  now  for several weeks, and I can say
you have  some  marvelous  new  features  in  the  works.   All  the  memory
management  woes of the past are being lessened by the installation in stock
WWIV of the spawn options, which will  give  you a lot more memory and avoid
the likelihood of those nasty 'OUT OF MEMORY' type lockups.   I  don't  know
when  the  release  date  is,  but the beta testing seems to be moving along
well.

Don't  forget  WWIVcon  coming  up   in   July.   Meet  your  modem  friends
face-to-face and have a blast in New  Orleans.   It's  a  once-in-a-lifetime
opportunity to meet and hear speak the author of WWIV, Wayne Bell; Filo, who
we  all know, and lot's of other WWIV celebrities (like YOURSELF if you come
:))...and I'll be there hoping to see all  of you!  Email me if you need any
details or help in making arrangements.  BE THERE!"

Have a happy April Fool's day, and enjoy this  issue,  yet  another  in  the
recent string of dynamic IceNEWS issues :)



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Managing Editor's Comments ³ By Ima Moron 1@9661
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

     Hello IceNET, as you may have already heard I'm the Managing Editor for
the current issue of the IceNEWS Journal.  Within the April issue, the staff
has prepared articles that  you,  the  sysops, have requested through Deacon
Blues' questionnaire.

      Special thanks to  Deacon  Blues,  who  has  been  an  inspiration  in
organizing  the  staff  of  the journal, and a big thanks to the whole staff
including Jim 1@1 for jumping in  and contributing to this issue.  A special
thanks goes to Daarkhan and Martin for contributing two well paced  articles
for your reading pleasure.

     In keeping with American tradition, we here at the IceNEWS Journal have
added  a "spoof" article or "April Fool's" joke, somewhere within the issue.
I won't disclose which article  the  spoof  is,  but if you read the journal
thoroughly you'll spot the farce.



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Letters To The Editors ³ By Louie 6@1
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄ

     Although there are no actual letters from readers  to  print  here  for
this  issue,  we are counting on you to change that for us.  Please take the
time to write us regarding your  feelings  on IceNEWS and its contents, good
or bad.  We want to hear what you have to say.  Remember, IceNEWS  is  meant
for  everyone  in  IceNET  and  we  need  your  input in order to maintain a
successful and respected publication.

                 Please address any remarks or questions to:

                        IceNEWS Letters To The Editors
                               c/o Louie, #6 @1
                           IceNEWS Editor-At-Large



ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
                         ³ W W I V   S P E C I F I C ³
                         ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ


ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ A Message From Random 1@3050 IceNET, 1@1 WWIVnet³ By Louie, 6@1
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄ


Well, something short, maybe...
Random #1 @3050
Thu Mar 03 19:15:43 1994

RE: What for..?

As you all probably know by now,  I've  been working for the last few months
on a method to automatically link WWIVNet-style networks with the IRS.  This
will have network1.exe scan the sysop logs (yymmdd.log) looking for download
indications, and report each download as income to the downloader.  It  will
implement  this via a compiled-in table mapping filenames to stated value of
the program.  (Of course, there  is  some  logic  in there to ignore version
numbers, so that, say, future versions of DSZ will be  caught  and  reported
without  having  to  hard-code every possible version of DSZ.) Network3 will
then collect these reports, and initiate  a  dialout to the IRS 1-900 number
to upload the info to the IRS.  I expect to have  this  implemented  by  the
Net31  release,  slated for sometime in July 1992.  The IRS is only going to
be collecting these  reports  until  the  1993  tax  year,  and send out the
1099-MISC forms in early April 1994.

 $F4 @1



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ WWIV Operated Under OS/2 ³ By Martin 1@6257
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

    ----------------------- First things first ------------------------

Getting WWIV 4.23 was something  that  I,  like  everyone else it seems, had
been looking forward to for a long time.  I was lucky enough  to  have  been
able  to get it from Amber the night it was released so I was able to take a
look at it right away.  I had planned  to wait to install 4.23 on my BBS for
at least a week so I'd have time to really look it over but when I saw  what
it had to offer I decided not to wait.

I  had  been running OS/2 on my second computer for almost 4 months.  When I
first installed  it  I  realized  that  I  was  faced  with  almost the same
magnitude of confusion as I had worked through each time I had bought a new,
unfamiliar, computer system.  I say this only to say that when I set up WWIV
4.23 under OS/2 I was far from being an expert (and still  am  not)  on  the
operating  system.   I was a beginner as far as the use and understanding of
OS/2 was concerned, and I was also  using a new version of the BBS software.
I had a lot of confusion to overcome!

Regardless, to the best of my memory, and for whatever help this  is  worth,
here  is  the  breath-taking  saga  of  Amiga  Blues' encounter with running
multi-instance under OS/2.

      -------------------------- HPFS or FAT? ---------------------------

I had set up OS/2 on my "personal" (as opposed to the BBS) computer with the
HPFS and dual boot.   I  didn't  realize  at  that  time that a person could
switch back and forth booting either OS/2 or DOS without installing the dual
boot feature under the HPFS.  It is possible, though, to install OS/2 on  an
existing  partition by installing it in a subdirectory using the FAT system.
You can still reboot into DOS by  using the "boot /dos" command, and back to
OS/2 by typing "c:\os2\boot  /os2"  (assuming  you  have  used  the  default
directories).   When  it  came  time  to  install  OS/2 on my BBS computer I
decided to use the FAT system and give  it  a try.  I didn't want to have to
repartition my hard  drive  to  use  HPFS.   You  will  have  to  weigh  the
advantages  and  disadvantages  of  the FAT vs the HPFS and decide which way
seems best for you.

Once I had installed the operating system, I booted it up, made an icon (see
below) for instance number one and ran it.  It worked!

Well, it worked to the extent  that  the  board  came up and ran.  There was
still a lot of work to do before I was ready to actually open the board back
up to callers while running under OS/2.

      ----------------------- icons and .BAT files ---------------------

In order to get icons for my "instances" of WWIV,  I  had  to  go  into  the
System  Setup  folder  and  select "Migrate Applications".  Your OS/2 manual
will explain the process  involved  with  doing this.  After running Migrate
Applications, you will need to select the "Add Programs"  option  and  "Add"
your BBS.COM to the Selected Programs list.  You will do this so that you'll
have  an icon, but you will only do this as a first step; you won't actually
run the board off it.  You should make a copy of this icon for each instance
you will want to run so that you have one icon for each instance.

Icon settings:
--------------

Once you have created your  icons,  go  into  the  Settings for each one and
under "Path and file name:" have them call a .BAT  file  for  each  instance
rather  than  calling  BBS.COM.   Under  "Path and file name:" you will want
C:\WWIV\WWIV1.BAT, C:\WWIV\WWIV2.BAT, and so on rather than C:\WWIV\BBS.COM.
This will allow you  to  set  the  instance  correctly.  See my example .BAT
files (following) if you don't know what I mean by this.

One of the other very important things to do is  replace  the  standard  COM
drivers  that  come with OS/2 with Ray Gwinn's SIO drivers.  I won't go into
the way to do this; it's  well  covered in the documentation files that come
with the drivers.  But one thing that's not immediately clear  is  that  you
should  go  into the BBS's icons and make some changes under the new options
the SIO drivers give you.  For  one  thing, you'll need to disable access to
every COM port but the one used by that instance.  For example, let's assume
you're running your setup as follows:

2 remote and one local instance (3 icons total).
Instance 1 (WWIV1.BAT) uses COM2
Instance 2 (WWIV2.BAT) uses COM3
Instance 3 (WWIV3.BAT) is local.

You would want to go into your BBS icons and change  your  DOS  settings  so
that  the  icon for instance 1 (WWIV1.BAT) has access to COM2 only, the icon
for instance 2  (WWIV2.BAT)  has  access  to  COM3  only,  and  the icon for
instance 3 (WWIV3.BAT) does not access any of the COM  ports.   Once  you've
installed  the SIO drivers, you'll see that the icons will allow for the new
options the SIO drivers provide.  Restricting each instance's access to only
the COM port it needs will  prevent problems such as online programs causing
a System Error message telling you that your application tried to  access  a
communications port which is in use by another application.

I  don't  have  any  experience with running WWIV under OS/2's drivers and I
would highly recommend getting Mr.  Gwinn's drivers.  I ran the OS/2 drivers
for a while under Procomm Plus,  and  the difference between the SIO drivers
and the standard OS/2 drivers was amazing.  I went  from  approximately  600
CPS and many crashes during transfers to 1600-1700 CPS and no more crashes.

Anyway, back to the issue of setting up your icons...  You will also want to
set the IDLE_SECONDS and IDLE_SENSITIVITY to provide the best performance on
your  particular system.  As I've said, I'm no OS/2 expert, but I do believe
that these settings will work differently  from one system to another.  Your
settings will probably be different from mine.   What  I  did  to  get  them
tweaked  the  best I could was to set the IDLE_SECONDS just high enough so I
didn't get the famous  "pause  after  message  header"  problem, and set the
IDLE_SENSITIVITY so that the processing time would  be  divided  up  between
instances as evenly as possible.

What  I  believe  causes  the  problem with messages pausing right after the
header is displayed is OS/2 mistakenly thinking that the session is inactive
and pausing it until  it  thinks  it's  active  again.  Apparently this is a
problem with OS/2 and communication software.  The software  (in  this  case
your  BBS)  is  processing  data  but there is no mouse movement or keyboard
action while you are reading  the  message.   OS/2 doesn't think anything is
happening and idles the session until you do  something.   On  my  system  I
experienced  the  problem  with the session pausing after the message header
until I set the IDLE_SECONDS  up  to  4.  Setting the IDLE_SECONDS to 4 took
care of the problem.

In order to get IDLE_SENSITIVITY set so that it seems to work  the  best,  I
tried  setting  it  as low as possible, and then ran the session.  I checked
the setting by doing a new message scan  and watching to see if the text was
"jerky".  If it was jerky at the IDLE_SENSITIVITY I had, I exited  the  BBS,
quit  the  session, opened the icon's DOS settings and bumped the setting up
by 10 at a time until the text displayed smoothly.  I then adjusted it by an
increment of 5. What I mean is this:

With IDLE_SENSITIVITY set at 30 if the text scrolled jerkily, I went out and
set the sensitivity to 40.  If it was still jerky I set it to 50.  If it was
then okay, I set it to 45.  If it  was  okay, I left it alone, and if it was
jerky again I set it back to 50.

I have left INT_DURING_IO off.  I have heard that having it on can  mess  up
network packet handling, and I don't want to risk that.

Another  thing  I  did  was to aim the DOS_DEVICE to C:\OS2\MDOS\ANSI.SYS so
that my system would be able to handle ANSI displays.

One last thing that I have just  tried  is setting the HW_TIMER to on.  This
is due to a recommendation in "Your OS/2 Consultant" written by  Herb  Tyson
and  published  by  Sams  Publishing.  Having the HW_TIMER on allows WWIV to
have direct access to the timer ports and stops OS/2 from emulating a timer.
Apparently, it's been documented that some  fax programs and high speed data
transfer utilities don't run well unless HW_TIMER is set to on.

.BAT files:
-----------

The .BAT files are fairly simple.  Here are mine:

(WWIV1.BAT)

set WWIV_INSTANCE=1
c:
cd \WWIV
bbs.com /i1

(WWIV2.BAT)

set WWIV_INSTANCE=2
c:
cd \WWIV
bbs.com /i2

(WWIV3.BAT)

set WWIV_INSTANCE=3
c:
cd \WWIV
bbs.com /m /i3

You can see that I've got instance 3 set up for local only use and have used
the /m parameter to disable the BBS from trying to find a modem.

       ------------------------- CD-ROM drives --------------------------

I had a little difficulty setting up my CD-ROM drives to work under OS/2  in
the same way they had been working under DOS.  The problem was not the fault
of  OS/2;  it  runs CD-ROM drives just as well as it runs anything else.  It
was just a matter of  finding  drivers  that  worked  with my drives (I have
Mitsumis).  If you have a Mitsumi CD-ROM drive and haven't been able to find
a driver for it, you can call the OS/2  BBS  at  919-517-0001  and  get  the
driver  there.   The  file  name  is  MITFIX.ZIP  and  the  driver  name  is
MITFIX001.ADD.   This driver supports the new FX series of Mitsumi drives as
well as the CRMC-FX001,  the  CRMC-FX001D  and  the older CRMC-LU005 drives.
Once I found and installed the  drivers  (see  your  OS/2  manual  for  more
information  on this; it's covered very well), I set up a small RAM drive so
that the CD-ROM drive letters would be  the same as they had been under DOS.
I did this because I had used a RAM drive under DOS.  This may or may not be
important to you; I originally did this so I could run the board  under  DOS
or  OS/2  without  having  to  change anything.  I've never gone back to DOS
though.

      ---------------------Additional Considerations---------------------

OS/2 aware:
-----------

The source code I got when  I  first downloaded WWIV 4.23 from Amber somehow
did not have the code enabled to allow WWIV to work as well  under  OS/2  as
possible.   If you are registered and have access to your source code, check
UTILITY.C and be sure the following code is in void giveup_timeslice(void):

      case 4 :/* outs("OS/2"); */
        win_pause();                  /* add for OS/2 timeslices*/
        /* delay(17); */
      break;

Many thinks to the person responsible  for  this  "fix".  My board ran a lot
better after I put this code in, and I checked  with  Wayne,  who  confirmed
that  it  should  be in there.  People had been complaining about the system
being very slow and jerky at  times  until  I  put this code in.  I had even
upgraded from a 386DX-40 to a 486DX2-50 in order to help the  BBS  run  more
smoothly,  but  things  didn't  really improve until I added this code.  The
only time the board seems to slow  noticeably now is when someone is doing a
file transfer.

Init:
-----

I've corresponded with Filo regarding the way INIT handles things with  more
than  one  instance  and he's indicated that there may be some changes under
4.24 to make the data it writes  more "instance specific" (my word, for lack
of being able to think up anything better).  As things  are  now,  the  only
thing I feel I can count on being kept separate from instance to instance is
the modem and COM port configuration information.  I do know from first-hand
experience  that  your  net low and high times are not kept separate; if you
change the net times under one instance it will be changed for all.

Memory:
-------

OS/2 is VERY memory hungry and you  will  not be satisfied with its speed or
performance unless your system is configured with enough memory.  I know  of
people  who are running WWIV under OS/2 with only 4 megabytes of memory, but
I understand  the  Presentation  Manager  (the  graphic  interface) takes up
almost 4 MB, so I believe 8  MB  is  really  the  minimum  for  satisfactory
performance  and  more is, of course, even better.  Another consideration is
that if you are used to using a RAM drive you should be aware that using one
under OS/2 will take the memory right off the top and may have a significant
impact on the performance of your system.

Rocker (1@6450) is running his system without using the Presentation Manager
and he reports that this frees up his system significantly.

External Transfer Protocols:
----------------------------

JAFO (1@8857) had indicated in  one  of  the  networked subs that the newest
version of DSZ is much more better behaved under a multitasking  environment
than  its  predecessors  have  been  and  I  believe  he  is  right.  I just
downloaded  the  DSZ.ZIP  file  from  Telegodzilla  with  the  DSZ.COM dated
02-02-94 and the GSZ.ZIP file with the GSZ.EXE file dated 02-03-94 and  have
installed  them.   The  system  used  to  bog down significantly during file
transfers and I believe that  it  is  a  lot  better now that I've installed
these newest versions of DSZ and GSZ.  If you can't find them anywhere  else
they are available on Telegodzilla at 503-621-3746.

My Setup:
---------

If you are interested, my system currently looks like this:

I  have  a  486DX2-50 MHz computer with 8 megabytes of RAM, 550 megabytes of
hard drive storage space,  two  Mitsumi  CD-ROM  drives,  a US Robotics 14.4
Courier HST dual standard modem on the first line (612-591-1781)  and  a  US
Robotics 14.4 Sportster on the second line (612-591-0173).

Conclusions:
------------

In  case  you  haven't  been able to tell, I am very happy with the way WWIV
runs  multiple  instances  under  OS/2.   While  there  are  definitely some
challenges, the end result is, in my opinion, well worth it.  If you've  got
the  resources  to  be able to run OS/2 and if you want to run more than one
instance, I heartily recommend going with OS/2.

-Martin

References:
-----------

DSZ and GSZ can be ordered from Omen Technology Inc.
                                17505-V Northwest Sauvie Island Road
                                Portland, Oregon  97231
                                Modem: 503-621-3746
                                Fax:   503-621-3735

The Mitsumi device drivers can be downloaded from IBM's BBS, located at
                                                  Research Triangle Park, NC
                                                  Modem: 919-517-0001
                                                  Fax:   800-IBM-3395

SIO can be ordered from The Software Division
                        Attn: Raymond L. Gwinn
                        12469 Cavalier Dr.
                        Woodbridge, VA  22192
                        Voice orders: 703-494-4673
                        Fax:          703-494-0595


Reference Books I've found helpful:
-----------------------------------

Dvorak, John C.  "Dvorak's Guide to OS/2 version 2.1",
        Random House, Inc., New York, 1993.

Moskowitz, David and Kerr, David,  et al.  "OS/2 2.1 Unleashed",
        Sams Publishing, Carmel, IN, 1993.

Tyson, Herb.  "Your OS/2 2.1 Consultant",
        Sams Publishing, Carmel, IN, 1993.



ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
                             ³ H A R D W A R E ³
                             ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ


ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Building A PC/AT Compatible - Part 3 of 3 ³ By Will 1@6754
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

     After a two issue hiatus, we're back with the conclusion of "Building A
PC." In the last two  articles  of  this  series,  we went over choosing the
right machine for your needs, looking for, finding, and getting a good  deal
on  system components, and started the assembly of the new machine.  When we
left off in Volume 4  Issue  1,  we  had  just finished putting the hard and
floppy disk drives into the new machine.  This issue, we'll complete steps 6
through 9, installation of the video and serial cards, cover, connecting the
external devices, in  this  case  the  monitor,  keyboard,  and  mouse,  and
powering up the machine.


NOTE:  This  article series should NOT be used as your only reference should
you attempt to build  a  Personal  Computer  system.   It  is hoped that the
information presented here will be both informational and  interesting,  but
the  author or IceNEWS can not be held responsible for any effects the usage
of this article may have.

(In the last installment, we went through  steps 1 - 5. In order to preserve
continuity, I'll start here at 6.)

6. Installing Video/Serial Expansion Cards

     For both the serial and video  cards,  follow  this  general  procedure
(note  that  if your serial and hard disk controller are integrated onto one
card, you will have already installed the serial portion).  Remove one cover
plate (the thin metal piece covering the rectangular openings on the back of
the computer's case) for each  card  you  need  to install.  Try to leave as
much room between each card as you can.  If you have this configuration ('|'
representing an empty slot, and 'I' being a full one):

       ||I||

You should install the other two cards so you have this configuration:

       I|I|I

While not directly affecting the operation of the cards, leaving  vent  room
allows  the  computer to run "cooler", and extends the operating life of the
expansion cards.  For the daring, it  might  even  be a good idea to shuffle
already installed cards in order to gain better ventilation.

     Remove each card from the anti-static wrapping.  Hold them only by  the
edges,  not  touching  the  gold  or silver plated connectors at the bottom.
Blow gently over the slot you plan  to  install the card in, and then gently
seat the card into the slot.  Push down evenly from the top, excessive force
should not be needed.  Screw the connection at the top of the card into  the
case.

     Note that you should not attempt to install a 16 bit (with two separate
connectors  at  the  bottom)  card  into an 8 bit (only one connector) slot.
Some VGA boards (and other  applications)  are  designed to function in an 8
bit slot with the other connector hanging over, but these are the  exception
far  more  than the rule.  A good rule of thumb is, if it doesn't fit, don't
do it.  Some motherboards have one or  two  8 bit slots to save money.  Just
put an 8 bit board in them.

     Some serial boards will have additional ports  on  a  separate  holder.
They usually look like this:

-----
   -|\
P   | |======/=] < Connectors to cards
o   | |=====/==]
r  _|/   Cables^
t  -|\
s   | |=====/==]
>   | |====/===]
   _|/
    |
    |

     These  should  be  installed in the same way an ordinary expansion card
is, except that there is nothing to  seat in the actual slot.  This might be
a good use for one of those 8 bit slots,  and  ventilation  doesn't  matter.
The cables connected to these should be attached to your serial card per the
instructions in its manual, as they all vary.

7. Cover On

     Double  check  that  all connections are made, all boards screwed down,
and that everything is secure.  Gently  blow over everything for dust motes.
Slide the cover back onto the case and screw it in in at least  two  places.
Generally  you  don't  need  to  bother  with screwing in all of the various
screws on the case, as that  does  little  but make the machine difficult to
open up later.  One or two screws, however, can prevent things  from  coming
off  accidentally  or  third  parties  from  opening  your  machine  out  of
curiosity.  (I'm talking about ten year olds.)

8.   Put the monitor on or by your computer, and the keyboard/mouse in front
of it.  Uncoil/tangle all the cables and pull them around to the rear of the
machine.  Plug them in,  monitor  to  the  video  card,  mouse to the proper
serial card slot, keyboard to the keyboard connector  (usually  a  round  AT
style,  always integral to the motherboard).  Plug the monitor into the wall
socket.  Take the power cable that  came  with  the power supply and plug it
into the back of the computer (usually a three pronged male connector,  with
rectangular plugs).  Plug the other end into the wall.

9. Power Up

     Put  disk  one  of  your DOS setup into Drive A (note that you need the
full, installable version - upgrades won't  work).  Turn on the monitor, and
push the computer's power button (or  flip  the  switch).   Check  that  the
machine  isn't  smoking.   It  should  power  up and do a RAM self test, and
display a "Hit DEL for  BIOS"  message,  or something similar.  Do this, and
from the BIOS menus set the date, time, hard and  floppy  disk  types,  etc.
(Look for an article on BIOS configuration in a future IceNEWS.)

     Save your BIOS settings, and the computer will restart.  This time, let
it  boot  from the disk in drive A:.  The DOS setup screen will come up, and
guide you through formatting and partitioning  your hard disk (if you choose
to install OS/2 instead, put the OS/2 install disk into A:, and  follow  its
directions).   After  DOS  is  finished  with  partitioning, formatting, and
installing itself, you're done!

     That concludes the  "Building  a  PC"  series  in  the IceNEWS hardware
department.  Look for a future article on Troubleshooting a  PC,  which  may
very  well  pick up right where this leaves off, in case your machine is NOT
running perfectly.



ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
                 ³ S O F T W A R E / P R O G R A M M I N G ³
                 ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ


ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Learning C: Part 3 of 4          ³
³ Variables, Input, & Calculations ³ By Daarkhan 1@7676
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

PART ONE: VARIABLES AND THEIR USAGE

VARIABLES

If you have any experience with programming at all, you know that a VARIABLE
is a memory location that holds  data.  For those of you without programming
experience, you can think of a variable like a room in a hallway.  There are
many rooms along this hall, and we want to store something in one  of  them.
We take whatever it is we want to store (a number, a name, a whole record of
information)  and  place  it into the room.  All we then have to remember is
the room number (i.e.  WHERE) we stored it.

C, unlike some other  languages  such  as  BASIC,  requires that you DECLARE
every variable before you use it.  This is so the compiler  knows  how  much
memory  to  reserve  for  each variable (based on the TYPE of the variable -
we'll learn more about this in a little while).

C has five (5) basic data  types.   They  are VOID (which we already learned
about), INTEGER, CHARACTER, FLOAT, and DOUBLE.

As we learned in chapter 2, a void data type has no value.  We do  not  care
about  what  value it holds.  We will examine void data types in more detail
later.

The integer data type (int)  holds  signed integers, generally (depending on
the computer) from -32,768 to +32,767.  Integers require 16 bits  (2  bytes)
of  computer  memory.   Again,  this may be different in some computers, but
it's a generally accepted standard.

A character type (char)  reserves  8  bits  (1  byte)  of memory and is used
(normally) to hold a single character of data.  One of the best features  of
C  is that char types and int types are interchangeable; that is, a char can
be used to hold a very small  integer  (from 0 to 255).  We will see, later,
how this can be very helpful.

Floats  (float)  and  doubles  (double)  are  assigned  numbers  which  have
fractional parts (including a decimal point).  They are called Real in  some
other  languages,  such  as  Modula-2.  Each can hold very large values; the
only difference between  the  two  is  that  a  double  will  have twice the
precision (number of significant digits) as a float.  We will examine  these
data types in detail later, as well.


VARIABLE DECLARATION

To declare a variable in C, use the following convention:

     type variable_name;

where  type  is the C data type, and variable_name is the name that you wish
to assign to the variable.  For example,  if you want to declare a character
data type and name it "x", you would use:

     char x;

If you want to declare a float of name my_float, you would use:

     float my_float;

Remember that variable names can hold all the alphanumeric characters  (0-9,
A-Z,  a-z)  as  well  as the underscore ("_").  In general it is best to use
variable names that are easy to remember, and make sense.  Try to avoid huge
names, but don't  use  too  many  single-character  names  that  you may not
remember.

For example, if you want to keep track of a variable which stores the number
of computers you have in your office, you would not want to use

     int number_of_computers_in_my_office;

but then again, you might forget what your variable means if you just use

     int c;

in a big program. I would suggest using the variable

     int num_computers;

It's not too big (it won't be a pain in the butt to retype several times  in
your  program),  yet  anyone  looking  at  your code can easily tell what it
represents.

Remember to  follow  your  variable  declaration  with  a  semicolon.  Also,
remember that C is case-sensitive; the variables

     int i;

and

     int I;

are totally different variables.

GLOBAL AND LOCAL VARIABLE

Because C is a  language  which  supports  functions  (procedures,  modules,
whatever  you want to call them; they're called functions in C), it also has
to support GLOBAL and LOCAL variables.

First, the definition of each, and then an explanation: a GLOBAL variable is
a variable which  is  accessible  throughout  your  entire program.  A LOCAL
variable is accessible only by the function in which it is declared.

The best way to explain this is to take a look at an example.   Below  is  a
simple code segment representing my program:


     /* beginning of MY_PROGRAM */

     int a, b, c, y;

     void function1 (void)
     {
          int x;
     }

     void function2 (void)
     {
          int y;
     }

     void main (void)
     {
          int z;
     }


Now,  although  this  program  will  compile (and run) it won't do anything.
Remember, we're  looking  at  it  for  demonstration  purposes.  The program
starts off with a comment telling you that it's the beginning of my  program
(remember, what's inside of comments /* */ the compiler ignores).

The  integers  a,  b, and c are all declared OUTSIDE of any other functions.
They are GLOBAL variables and can  be  accessed by ANY of the functions here
(function1(), function2(), or main).

The variable x is declared ONLY inside of function1(), so  ONLY  function1()
can use this variable.  No other function can use the variable x.

Again,  the  variable  z  is  declared  ONLY  in  the  function  main(),  so
function1() and function2() cannot use it.

Let's  take  a  look  at  the  variable  y.  It is declared as BOTH a global
variable (outside of all the  other  functions)  and  as a local variable to
function2().  When this happens, the compiler will reserve  memory  for  two
separate  variables.  function1() and main() will access the global variable
y, whereas function2()  will  have  it's  OWN  separate  variable y which is
TOTALLY DIFFERENT from the global variable  y.  In  this  case,  function2()
CANNOT access the GLOBAL variable y.

Sound a little confusing?  We'll discuss this more in a minute.

VARIABLE ASSIGNMENTS

Ok,  now we know how to reserve memory space for a variable.  In order to be
able to use that variable, we have to be able to ASSIGN it a value.

In C, use the following convention for variable assignments:

     variable_name = value;

For example, to assign a value of  1000 to the variable count, you would use
the statement

     count = 1000;

Easy enough?  There are two ways to assign a value to a char  variable;  you
can  enclose a character in single quotes, or you can refer to the character
with its ASCII  value.   For  example,  to  assign  the variable my_char the
letter 'A', you could use either of the following statements:

     my_char = 'A';
     
     my_char = 65;

Because 65 is the ASCII equivalent of  the  letter  'A'.   (NOTE:  most  DOS
references and programming books have ASCII charts in them.)

To  assign  floating  point  numbers  (float  and double) you MUST include a
decimal point.  For example,

     my_float = 10.12

is a valid assignment.  If your number does not have any fractional you must
use a zero (0).

Let's take a look  at  a  short  program  which will declare some variables,
assign values to them, and print them out.

     /* TEST program */

     #include <stdio.h>

     void main (void)
     {
          int i;
          char c;
          float f;
     
          i = 100;
          char = 'A';
          float = 10.5;

          printf ("My integer is %i \n", i);
          printf ("My character is %c \n", c);
          printf ("My real number is %f \n", f);

          char = 67;

          printf ("The character is now %c \n", c);
     }

     /* end of TEST program */

this program will produce an output of:

     My integer is 100
     My character is A
     My real number is 10.5
     The character is now C

(I didn't run it and test it, but you  should  get  this  output.   If  not,
someone  please  slap  me  and I'll be sure to test-run it myself!  The only
difference I can  foresee  is  that  some  compilers  may produce a floating
output of 10.500000 for the real number.)

Go ahead and run  this  program.   The  point  is  to  make  sure  that  you
UNDERSTAND why it works...  more than just how it works.

PART TWO: KEYBOARD INPUT

SCANF()

There are many ways to input characters from the keyboard.  In this section,
we're  going  to  look  at one of the methods from the standard input/output
(stdio) library called scanf().

scanf() is one  of  the  easiest  functions  to  use,  although it possesses
considerable flexibility.  I personally hardly ever use it myself (in  favor
of  more advanced techniques), although it's an excellent tool for beginning
C programmers.

Let's jump right in with an example.  To use scanf() to read an integer from
the keyboard, use the following convention:

     scanf ("%i", &integer_name);

For example, to input a value into the int variable my_int, use

     scanf ("%i", &my_int);

(NOTE: the  ampersand  before  "my_int"  is  NECESSARY  for  scanf() to work
properly.  Basically all it means (for you advanced computer people) is that
we're sending the address of the variable my_int to  the  function  scanf().
You  don't  have  to know this now - so don't worry about it.  Just remember
that you NEED the &.)

One thing to note is that scanf() is LINE-BUFFERED.  That means that scanf()
waits until the  user  presses  the  ENTER  key  before  it reads the number
entered.

To read a value into a character data type, you  would  use  the  %c  format
code.   To  read a float value, you use %f.  To read a double value, use %lf
(long float).  These format specifiers are  exactly the same as the ones for
printf() (see chapter 2 for a chart).

SAMPLE PROGRAM

Below is a sample program that asks the user for some data, and then  prints
out the results:

     /* another TEST program */

     #include <stdio.h>

     void main (void)
     {
          int i;
          char c;
          float f;

          printf ("Input an integer: ");
          scanf ("%i", &i);
          printf ("Input a character: ");
          scanf ("%c", &c);
          printf ("Input a float: ");
          scanf ("%f", &f);

          printf ("You entered: %i, %c, %f.\n", i, c, f);
     }

     /* end of TEST program */

Compile and run this program yourself. Check out the results!

Now, try to compile and run this program:

     /* another program */

     #include <stdio.h>

     void main (void)
     {
          int i;

          scanf ("%i", i);
          printf ("You entered: %i", i);
     }

It  doesn't work, right?  What's the reason why?  Take a look at the scanf()
statement.  Notice anything?  We forgot to add the & symbol to the beginning
of the variable name.  Add it in and see if the program works now.

PART THREE: ARITHMETIC CALCULATIONS

OPERATORS

For the most part, all operations  in  C  follow the basic rules of algebra.
If you have any kind of  a  mathematical  background,  you  should  have  no
problem  understanding the material here.  If you have not yet taken algebra
in school, you may want to  get  an  algebra  book and dig through it first,
before attempting to go any further with computer programming.

C has five basic arithmetic operators:

     +    addition
     -    subtraction
     *    multiplication
     /    division
     %    modulus

You are probably familiar with the first 4 operators.  They will work on any
of the basic data types (int, char,  float,  double).   The  last  one,  the
modulus operator only works with the integer data type.

The  -  has two purposes.  First, it is the subtraction operator.  Secondly,
it is called a UNARY  minus.   That  means  that  it  reverses the sign of a
number (makes it negative or positive).  The term UNARY means that it  takes
ONE  operator  (as  opposed  to  BINARY which takes two, TRINARY which takes
three, etc.)

The % (modulus) is the same as  the MOD function in Modula-2 and Pascal.  It
returns the remainder of an integer division.  For example,

     10 % 3

will return the value of 1 (10 divided by 3  equals  3  with  1  remainder).
There  is  no  DIV (integer division) function in C because the / symbol can
take both real and  integers.   The  integer division, however will truncate
any remainder, so

     10 / 3

will return a 3.

EXPRESSIONS

An expression may appear on the right side of an assignment statement.   For
example, if we declare an integer named sum, we can assign sum a value by:

     int sum;
     sum = 5 + 10;

in which case, sum now holds the value 15.

As in algebra, the * and / (and the %) have a higher precedence in the ORDER
OF  OPERATIONS than do + and -. You can change the order of operations using
parentheses.  In this example,

     int answer1, answer2;

     answer1 = 10 * 3 + 5;
     answer2 = 10 * (3 + 5);

answer1 will have a value of 35, whereas answer2 will have a value of 80.

A C expression may contain both  variables and constants.  For example, this
is perfectly valid:

     int a, b, answer;

     a = 5;
     b = 6;
     answer = 100 - a - b;

a is assigned the value of 5; b is assigned 6, and answer is  then  assigned
89 (100 - 5 - 6 = 89).

You  can  also use calculations within the printf() statement.  For example,
all of the following statements are correct:

     given: int a = 10; int b = 5; float f = 10.0;

     STATEMENT                                    RESULTS
     -------------------------------------------  --------------
     printf ("%i", 5);                            5
     printf ("%i", 1 + 2);                        3
     printf ("%i", a);                            10
     printf ("%i", a + 3);                        13
     printf ("%i", a + b * 3);                    25
     printf ("%i", (a + b) / 2);                  7
     printf ("%i", a % b);                        0
     printf ("%f", f / 2);                        5.0

Feel free to  experiment!   Remember,  now  you  know  how  to use printf(),
scanf(), variables, and all of the  format  codes  and  backslash  character
constants!  You can start to put together some simple programs of your own.

ASSIGNMENT

An  idea that was presented to me after the last tutorial was to give out an
assignment at the end of each tutorial for people to work on, and send Email
to me when they finished.  So here it is:

Assignment 3.1: write a simple  program  that accepts three numbers as input
from the user.  Print  out  the  sum,  difference,  product,  quotient,  and
modulus  of  the  first  two  numbers,  AND the sum and product of all three
numbers.  Assign ALL of your answers to variables before printing them out.

When you've finished your assignment, compile it and make sure it runs, then
Email me (1@7676) a copy of your  source code (program) and I'll issue you a
grade.  I'll be keeping a record of all grades sent to me - and will post it
on occasion!

NEXT

Functions: usage, return values, and arguments.

SOURCES

     Downing, Douglas. Dictionary of Computer Terms. New York:   
       Barrons, 1989.

     Holzner, Steven. C Programming: The Accessible Guide to     
     Professional Programming. New York: Brady, 1991.

     Schildt, Herbert. Teach Yourself C. Berkeley: Osborne
          McGraw-Hill, 1990.

     ---. Turbo C/C++: The Complete Reference. Berkeley: Osborne
          McGraw-Hill, 1990.




ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Microsoft Windows for Workgroups 3.11 - Is It For You? ³ By Will 1@6754
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

     Microsoft Corporation  recently  introduced  its  upgrade  to  both the
Microsoft Windows and Windows for Workgroups operating environments.  Called
"Windows for Workgroups 3.11", this is Microsoft's intermediate step between
Windows 3.1 and NT.  Although the original Windows for Workgroups was  aimed
at  those  interested in network machines running Windows (with a minimum of
fuss and mess), W4WG 3.11  is  designed  to appeal to non-networked users as
well as those running networks.  The question that many face - is  it  worth
upgrading if you're not running a network?

     I  installed  the  "Microsoft Workgroup Add-On For Windows", a software
only package that runs for about  $50 on the street, and apparently requires
an existing installation of Windows.  The installation is relatively  simple
- pop in disk 1 and run the setup program.  If you aren't running a network,
the  program  ignores  that  aspect.  The installation program automatically
upgrades your existing Windows files,  and  installs the new applets (Hearts
game, "Microsoft At Home" fax, scheduler/time manager, and  Microsoft  Mail.
The  fax  portions  of  W4WG 3.11 make use of the Microsoft Mail program, so
even if you aren't on  a  network  (and  won't  be  needing any of the email
features) this should be installed if you  plan  on  using  the  native  fax
functions.

     One  of  the  main  new  features  of W4WG 3.11 is 32 bit file and disk
access.  These are  enabled  under  the  Virtual  Memory  section of the 386
Enhanced Mode control panel, a somewhat non-intuitive placement.  The 32 bit
disk access requires a compatible disk controller,  something  my  expensive
VL-BUS  SCSI2  card was not.  The file access is somewhat more flexible, and
did speed access to my hard  disk  cache.  W4WG also includes an internal 32
bit disk cache.  However, I  found  that  disabling  SmartDrive  caused  the
system  to  slow  to unusability (a 16 megabyte 486dx2-66 clock doubled test
bed, no less).  Although with  SmartDrive re-enabled performance picked up a
bit, things still took about a second on average  longer  to  complete  than
they  had  under  straight  Windows  3.1.   However,  some  areas,  such  as
file-saving under DOS, did increase slightly in speed.


     W4WG  also  includes  enhanced  file  sharing  code  (the equivalent of
SHARE.EXE under DOS).   As  many  sysops  have  experienced,  WWIV (and most
notably WWIVedit) do not  take  kindly  to  having  SHARE.EXE  loaded  while
running Win3.x.  However, many applications, such as Borland C++ 4.0, insist
upon  it.   The  share  code  in W4WG 3.11 addresses and fixes this problem,
WWIV, WWIVedit, BC4, and Ami Pro all coexist peacefully.

     Joining the mildly addictive  Solitaire and the forgettable Minesweeper
game, is a networked version of Hearts.  You can play with up to three other
people over the network, or against the  computer.   Slightly  more  serious
additions  to the applet lineup are "Microsoft At Home" faxing, Schedule+, a
network aware personal scheduling/reminder  program, Remote Access, a remote
network login system, and a single user license of Microsoft Mail.  The  fax
program  sends  through  MS Mail or the scheduler, hooking into the somewhat
cryptic interfaces of each.  Trips to the  manual or at least the help files
are required to get it functioning well.  The scheduler  is  functional  and
slightly  easier  to  learn than MS Mail, and is certainly functional enough
that you don't need to rush out and replace it with a third party add-on.

     On the network side, W4WG includes several net-related applets over the
original version.  These,  in  brief,  include  a  Chat application, network
usage monitor, system performance  monitor,  pop  up  monitor,  logon/logoff
control,  and  a  configuration control.  The new "Clipbook Viewer" replaces
the  old  clipboard  viewer,  with  an  advanced Multiple-Document-Interface
control set and OLE support.  Networking support is now full 32 bit.

     Windows for Workgroups 3.11 fixes many of my gripes about Windows,  and
seems marginally more stable than, say, fissionable uranium, a definite step
up  from  Windows  3.1.   The  performance  losses balance the gains, should
increase if you're running a 32  bit compatible disk controller, and are not
very noticeable  anyway.   The  extra  applets,  while  not  wonderful,  are
adequate  and  useful.  It doesn't include some of the general Windows fixes
I'd like (volume control on the Sound control panel, for instance), but is a
step in the right direction.  If you  can afford the $50 for the upgrade, go
for it, and don't consider buying a new copy of Windows 3.1 instead of this.
It's no OS/2, but it's an  improvement,  and  leaves  you  in  an  excellent
position to expand into a network sometime in the future.

        Addendum: After using Windows for Workgroups 3.11 for three weeks, I
noticed some additional items about the environment.  After about a day, the
speed  of the system increased to about twice what it had been under Windows
3.1.  DOS applications especially benefited from the increase in speed.  The
system occasionally "pauses" for  about  two  seconds  (with heavy hard disk
activity), but this itself is not enough to counterbalance the  increase  in
speed.   Also,  system crashes began to occur more often, although still far
below the level of crashes under Windows 3.1.



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Turbo Pascal - An Introduction ³ By 0다  1@7664
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

I want to make one thing perfectly clear.  I am not saying that Pascal is  a
better  language than C or vice versa.  I am writing this series of articles
about a language I enjoy and use frequently.  I also enjoy programming in C,
ALGOL, APL, FORTRAN, and COBOL.  But  these  two languages I use most often.
But now to the article.

Pascal is a high level language developed in the 1970's as a language  which
allows  easy  identification  of  the  main  features  of  a  program.   The
constants, user defined data types.  and variables and functions (procedures
or  voids  for you C freaks) are declared first, followed by the body of the
program.  Different from C, Pascal uses BEGIN  and END to block off areas of
the program as opposed to { and }.

Pascal and C are similar in that they  are  modular  programming  languages.
This  means  that  a  program is broken up into modules or procedures.  This
allows for more  flexibility  for  a  programmer.   BASIC  is  not a modular
programming language in its standard form.  Some versions of  BASIC  on  the
market  today  allow  for  a  more  modular  look.  FORTRAN is another basic
modular language but all the  subroutines  have to be declared following the
main body of the program.

The standard form of a pascal program in shown below:

program MyProg(input, output);   <---  this is header for all programs

  const
     Here is where you can set up "variables" that never change their
     value in the program.
  type
     Here is the section where the programmer can create his/her own
     data types to be used in the program.
  var
     variables are declared here.

  procedures and functions are then put in

begin   (* Main Block *)
  more code
end.       <---- the last end must have a period

Constants are used if you plan  on  using  the  same  number  or  expression
throughout  the  program.  It is similar to the #DEFINE command in C. Change
the expression in  the  declaration  and  the  value  changes throughout the
program.  You can have any type of constant declared.

The TYPE declaration is for programmers to declare their  own  user  defined
data  types.   More  will  be  discussed  on  this topic in future issues of
IceNEWS, because there is so much that can be done in this declaration.

The VAR declaration is the location  where the global variables are declared
for use within the program.  These variables have to have an alpha character
as their first character in their name.  The valid types for  the  variables
is  endless.   You  have your standard data types: INTeger, REAL, CHARacter,
STRING, BOOLEANs, and ARRAYs of these types.   But you can also use the user
define types that are declared  in  the  TYPE  declaration  section  of  the
program.   There  are  other  standard  types that will also be discussed in
further issues of IceNEWS.

The rest of the  program  consists  of  procedures,  functions, and the main
body.  These 3 "items" contain the actual  logical  sequence  of  statements
that  make the program go.  A procedure is similar to the VOID in C, while a
function has the same basic  idea  in  Pascal  as  it  does in C. A function
returns a value back to the procedure or body that called the  function  for
use later on.  The only real difference in the two is the syntax used.

What  to expect in future issues of IceNEWS: An indepth look at user defined
types and an introduction to Turbo Vision programming using the Turbo Vision
feature  first  introduced  in  Turbo  Pascal  6.0.   Anyone  interested  in
contributing to these articles, by all  means  send me the information and I
will  get  it  into  the next articles and will give you the credit for that
part of the article.




ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
                           ³ L I T E   B Y T E S ³
                           ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ


ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ April Fools Day Pranks ³ By Deacon Blues 2@7653
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

     At the end of February, when the IceNEWS staff  was  starting  work  on
this  April  issue, I was debating about what I was going to contribute.  It
took me a couple of days to  realize that April Fool's Day would pretty much
be about when everyone will be reading this edition.  Therefore,  I  thought
that a story about April Fool's Day pranks was in order.

     While  anyone  can either pull or be the victim of a prank on any given
day, there are  really  only  two  days  in  the  year  that  you have to be
especially wary; April Fool's  Day,  and,  although  to  a  somewhat  lesser
extent, Halloween.  On either of these two days, you can usually count on at
least  seeing  the results of a prank, regardless of whether or not you were
directly involved  or  not.   Pranks  can  range  from  anything  like phony
telephone calls or beeper  messages  to  minor  (or  even  sometimes  major)
incidents  of  sabotage  (loaded cigarettes, rigged desk drawers, etc.) and,
usually, conspiracy with others in order to perform the sabotage.  While not
necessarily a good thing, pranks usually do offer a certain amount of stress
relief for the perpetrator  (and  offer  no  small  amount of anguish to the
recipient, particularly those without a self-depreciating sense of humor).

     Knowing that BBSers and computer  users  can  get  pretty  stressed  at
times,  I knew that there would be those who had, at one time, taken part in
the playing of at least one  computer  prank  at one time in their lives.  I
put up a post asking for reports about pranks that have been pulled  before,
or  info  about  pranks  yet to be pulled, or even pranks that people didn't
have  the  guts  to  pull.   I   think  that  these  responses  were  pretty
good-natured, although one or two may may sound a little cruel to be  played
on less experienced users (and less _forgiving_ users, too).


Ronda, #1 @3475, of Ronda's Riverboat BBS, tells of pulling a fast one on her
co's...

        "This might be old... but I thought it was pretty cute when I did
it...

        "I changed my command //dos to something only I knew and then made
//dos a fast logoff <g>.  I didn't tell my co's about it... just to have a
little fun. It works great as a prank for any time."

                  -----================================-----

Scooter Rider, #1 @2465, at Scooter's Palace BBS, tells of the time when...

        "Down in the 214 area code one year we all changed Logon and welcome
screens and put up other sysops screens on our boards so that the user thought
they had called the wrong board.  All got a good laugh out of it and it was a
fairly nice April Fools gag."

                  -----================================-----

Perseus, #289 @7654, at Paragon, also recalls something similar in my own 716
area code one year...

        "There is one very good one that I remember very well. Some years
back, the sysops of Stairway and Midnight Caller exchanged opening screens. It
really blew some minds since 50% of their users called both boards on a
regular basis."

                  -----================================-----

Alkar Zephyr, #1 @4506, of Alkar's Keep, speaks of a variation of the
`switched ANSI' gag...

     "When me and the DM (sysop of formerly @4514, Worlds of Arashacom) were
roommates, we once pulled a practical joke that ended up in getting new users
for both our boards...  We switched the phone lines around!  Whenever someone
tried to call my board, they got Arashacom, and vice versa!  We had a pretty
good laugh... :)"

                  -----================================-----

Bogie, #1 @3081, from The Entity, tells of two acts of system sabotage on
unsuspecting victims (although neither were meant to cause permanent damage or
data loss)...

        "Neither of these have been pulled on users, but they have been done
to various bosses at work:

        "1. Several years ago when my supervisor just got a 286 for his desk
instead of the terminal he had been using, a friend of mine and I got to
work early on what was to be his first full day with the computer. I copied
the file Helpcry.com to his hard drive and added it to the autoexec.bat file.
He came in a couple hours later and turned on the computer. We heard him yell
from our office down the hall as his computer had a voice saying, "Help I am
trapped in this computer get me out of here!." The best part of all of this
was when MIS (repair service) came down to check out his computer. MIS was in
on the joke and took the computer for a week.

        "2. There is a nasty joke that I help another friend of mine play on
someone that wound up stealing my friend's job. The program we used was from
the shareware collection called Just for Laughs. I don't remember the name of
it, but it's a TSR that is time delayed. Once active, it waits for a number of
times the enter key has been pressed, which is configurable. When these
conditions are met, you get a nice little screen that pops up and says
"Congratulations you have just won one Hard disk format!" By the time they
finish reading this, they notice that the bottom of the screen is counting off
heads and cylinders while the drive light is going. The program actually is
doing seeks to get the drivelight active. This one is not recommended for
anyone with a weak heart." [Editor's Note: Nor is it recommended for those
without a _very forgiving_ sense of humor. Too cruel in my book, but still
damn funny :)]

                  -----================================-----

Sky, #2 @6560, of Expect a Miracle, made all of the users a sysop for a day
once...

        "One year, I put in Merlin's MCI mod.  It allowed you to put in things
like user name, phone number etc.  I had a BLAST when I made the automessage
anonymously say:

                               NEW BBS in town!
                                  Call NOW!
                              User phone number.

        "The all panicked, and said `Who put my voice number in there!, I
can't have people calling at all hours.'  I've never seen more people reading
the help to find out how to change the automessage!!!!"

                  -----================================-----

Will, #1 @6754, of Data Express (our IceNEWS Contributing Hardware Editor)
tells another MCI story:

        "I think I saw a sysop a while ago that had used MCI codes (tokens that
are replaced with the current user's information) to say something like:

                      Radical Party at [User's Real Name]'s!
         at [User's Home Address]! Call [User's Home Phone] to RSVP!

        "I knew he liked to do that kind of stuff, so [when I logged on] it
didn't really faze me.. But it certainly scared a lot of people!"

                  -----================================-----

                 Flashback.....
Seafox, #1 @2459, Renyard's Keep, tells of turning back the hands of time on
April Fool's Day...

        "Jafo keeps ancient versions of WWIV on his system. I D/l'd WWIV 1.00
from his system. I'm gonna set it up with my user list on a TRS-80 and a 300
baud modem, and on April Fool's Day, I'm gonna switch the two systems. I'm
also gonna date everything 10 years earlier, and allude to events of 1984 in
the message bases. The users are gonna freak."

                  -----================================-----

Jj, #1 @7100, Another Day in Paradise, gets even with the horny male
downloaders of her system...

        "As a female sysop, I found myself getting tired of the endless 'babe'
type .gifs, so I d/led myself some beefcake.  HAH!  When I //uploaded one of them,
my description was "640x480x256c Whoa!!! Take it off!"  Caught quite a few of
the 'babewatchers' on my board!  Hehehehe....  But, um, they didn't think it
was very funny."

                  -----================================-----

     As  for what we plan to do here at The Cavern, I'm not saying!  In case
this issue goes out before April 1st,  I don't want our users to catch early
wind of our intended prank.  Actually, it will most likely be a  combination
of  things,  some  of which _have_ been discussed here by others (that's the
only hint I'll give).  As long as  it's not malicious and the users can take
a joke, it should be a good time.

     However, after seeing some of  these  other  things  that  people  have
mentioned,  I  think  I'll  just play it safe and give the modem a rest that
day...  :)

        Deacon Blues, 2@7653  IceNEWS Contributing Light Bytes Editor



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ The Adventures of ModemMan! ³ By Jots 1@7850 & Deacon Blues 2@7653
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

     Editor's note: "The Adventures Of ModemMan" is a  multi-part  adventure
that will be continued in a serialized format.

     "In  the not-so-distant future, a Top-Secret government experiment goes
awry.  A computer-geek with the  intelligence  of a doorknob is accidentally
transformed mentally and physically by a combination of  science,  medicine,
technology, and dumb luck.  The result: the world's first LIVING COMPUTER...
ModemMan!   Disguised  as  Joe  Modem,  a  mild-mannered  sysop  of  a small
electronic bulletin board  service  in  a  large metropolitan city, ModemMan
fights a neverending battle with the sinister forces of evil to protect  the
world, bringing truth, justice, and a higher transfer rate to all..."

                              The Adventures of
                              M o d e m M a n !

                            "Insufficient Memory"

                     Chapter 3: "COPY MODEM.MAN B:\BRAIN"

     In our last episode, ModemMan uses his enhanced neural powers to escape
the  confines of a limo belonging to the unsavory character of V. T. Killer,
which was being  driven  by  his  two  henchmen,  Blue  Ray  and Egg's Head.
Reverting to his guise of Joe Modem,  he  found  out  from  his  friend  and
bartender  Quakey  that he's a fugitive; having been framed for data crimes,
which is a capital offense.   Joe  meets  with Pronto, his co-sysop and MM's
helper.  Pronto presents Joe with a videotape from DesqTop, the  NC  of  the
largest  net  in the Tri-State area.  DT tells Joe that V. T. has threatened
to crash all the computers in the area, but he thinks someone else is behind
the scheme.  Joe and Pronto return to  V. T.'s hideout to try to learn more,
but both are captured.  After confiscating ModemMan's all-powerful Tool Kit,
V. T. tells both of them that they're going for a ride to meet his boss...

     Joe was now somewhat sorry  that  he'd  disabled  V.T.   Killer's  limo
earlier.   It certainly was a more comfortable ride than the one that he was
having now.  Being blindfolded, bound, and  gagged, it made it difficult for
him to figure out exactly where he and Pronto were.  However, it  felt  like
he  was lying on top of something that resembled a tire.  Coupling that fact
with the sound of a vehicle traveling  down  a road and the smell of exhaust
gasses, Joe felt safe in surmising that they were locked in the trunk  of  a
car.

     Joe  noticed  that  the road had smoothed, making him suspect that they
had left New York state and  were  now  either in New Jersey or Connecticut.
One whiff of the air made Joe suspect the latter of the two.  Soon, the  car
slowed  to  a  stop  and  became  quiet.  The sound of the doors opening and
footsteps coming closer signaled the end  of  the ride.  The deck lid popped
open and the cool night air rushed into the compartment.  As  rough  set  of
hands  grabbed  Joe  and hauled him out of the trunk and onto his feet.  The
hands guided him through  a  doorway  and  into  some kind of building.  Joe
heard the sounds of the others behind him.  Suddenly, the hands clasped onto
Joe's shoulder, indicating to him to stop.

     Joe then heard the voice of V.T.  "You  goons  keep  these  punks  here
while  I  go see if the boss is in." The voice was not seemingly directed at
Joe.  "Get ready to meet  an  old  'pal'  o' yours, ModemMan." A shiver went
down Joe's spine when he heard that.  He could not figure out who  the  heck
this 'boss' guy was.  An old pal, thought Joe...  how many people do I know,
anyway?   Oh  well, thought Joe, I guess I'll find out soon enough.  Moments
later, he heard the sound  of  approaching  footsteps.  The snap of a finger
signaled Blue Ray and Egg's Head to bring Joe  and  Pronto  to  their  final
destination.   They entered another room, then stopped.  Another snap of the
fingers started the loosening of Joe's blindfold.

     As soon as blindfold was  being removed, Joe immediately looked around.
He seemed to be in a office which was converted to  a  high-tech  lab.   The
room  was  relatively  dark, although a weird light seemed to be coming from
the back of the room.  Near the source of the light was a man in a white lab
coat hunched over a table.  He  seemed to be soldering something.  After two
minutes, he turned off  his  acetylene  solderer  and  turned  on  the  main
lighting.   Still  not  looking  up,  he said, "Ah,I see you have brought me
ModemMan and his faithful  sidekick  Pronto.   Good  work, Mr.  Killer.  You
will be rewarded greatly for your services."

     That voice, thought Joe, I _know_ that voice...

     "Did you have to corrupt any BBSs?" asked the  man  in  the  lab  coat,
still looking down at the table.

     "Uh... No, boss... We caught him right away. An easy find," replied V.T.

     The man stood up and walked  over  to  where Joe was standing, his face
now becoming clear for the first time.   "So,  Joe,"  he  said,"  don't  you
remember me?  Hmm?"

     Now it clicked. "Dr.Boolean!" cried Joe. "I thought you were in jail!"

     "Well, you thought wrong.  Tell me, how have you been enjoying what was
supposed to be _MY_ Penultimate neural enhancement chip?"

     It came back to Joe as  if  it  all happened only yesterday.  Joe Modem
was an assistant data entry clerk in a Top-Secret government project  called
"Access,"  which was supposed to deal with the expansion of the human limits
by surgically implanting a super-computer  chip - known as the "Penultimate"
chip - into the brain of the chip's creator, Dr.  Boolean.  "Access" was  to
be   the  test-bed  for  future  conscious-raising  experiments  that  would
eventually lead to the  incorporation  of  the "Penultimate" technology into
applications  for  the  country's  military.    Boolean   had   planned   on
double-crossing  the  government  by  using  the  chip for unsavory personal
reasons of cyber-world domination.

     Late one night, while  at  the  lab,  Joe  was  taking a break from his
duties and unknowingly decided to have a seat in  the  chair  in  which  the
operation  was  to be performed.  After all, the chair looked so comfortable
and Joe was dead tired from  inputting data for 10 hours straight.  Outside,
a fierce electrical  storm  was  raging.   Lightning  struck  the  facility,
causing  numerous power overloads and activating the implant sequence of the
robotic operation equipment.

     In a matter of seconds, Joe was surgically altered by the machinery.  A
DIN-style plug receptacle was  implanted  in  his  right ear, allowing for a
connecting cable to link Joe's cerebral cortex into  any  standard  keyboard
receptacle  of  any  computer.   A  modular telephone jack was inserted into
Joe's right nostril, allowing for cerebral  access to any telephone line.  A
combination serial/parallel port interface was implanted into  the  roof  of
his  mouth  to  allow  for  cerebral access to various input/output devices.
Finally, the Penultimate  chip  was  inserted  directly  into Joe's brain to
control all of the functions.  Thus, ModemMan was born.

     Using his newfound powers - thanks to his finding the set-up manual for
configuring his neurosystem - Joe powered-up the Penultimate chip and  began
to  explore his newfound abilities.  Upon searching through the computer and
finding out Boolean's  plans  of  cyber-domination, ModemMan quickly alerted
the Feds  to  Boolean's  evil  plot  while  destroying  all  schematics  and
templates  of  the  Penultimate  chip.   Joe  thought  that the chip was too
potentially dangerous to fall into the wrong hands.

     Joe had thought  that  Boolean  had  been  captured by the authorities.
Fearing that he would become the subject of further experimentation  by  the
government  scientists,  Joe  quickly  departed the center and decided to go
`underground' to duck the Feds.  He resettled to his original home, NYC, and
tried to settle back down to a `normal' routine of life and computing.

     "Oh, by the  way,  Joe,  "  said  Boolean,  jolting  Joe  back into the
present, "I just thought I  should  tell  you  who  your  'sidekick'  Pronto
_really_  is.  Frisk 'im, boys!" Blue Ray and Egg's Head pulled out a pocket
metal detector stick and started  to  search  Pronto.   When they got to his
jacket pocket, it started beeping loudly.   Ray  stuck  his  hand  into  the
pocket  and  pulled  out  a  small black wallet-sized case.  He handed it to
V.T., who then handed it to Boolean.   "Ah,  yes, here it is.  Why don't you
take a look at it, Joe?" Boolean waved the case in Joe's  face  for  him  to
see.

     Inside  was  a  badge,  but  not  just any badge.  It was a rectangular
silver plate, with  the  letters  M.O.D.   embossed  on it.  Joe immediately
recognized it as the symbol of a Deputy Enforcer  of  the  Modem  Operations
Directorate.   And  that  meant  that  Pronto  was really an undercover fed!
"Pronto,is this for real?" asked Joe.

     "Sorry to tell ya, MM," he replied, "but it is.  I was assigned to keep
an eye on you and the  Penultimate  chip  so that nothing would happen to it
and to make sure you didn't get out of line with using it.  Sorry."

     "Come along, Joe," said Boolean as he led Joe  over  to  a  chair  very
similar  to  the one that he'd received his enhancement in.  "I want to show
you a special machine I call...  The Brain."

     "That's original," deadpanned Joe.  If he was going to fry, he might as
well get a couple of zingers in while  he could.  "Did you think of that one
all by yourself?"

     Boolean was too cool of a customer, though, and let  the  remark  slide
without  comment.   "It's  my little way of saying 'Thank you' for taking my
chip and a  little  introduction  of  what's  to  come.   Have a seat, Joe,"
Boolean said mockingly, "make yourself comfortable."
     
     Joe obliged and sat down.  He was instantly strapped in to the chair by
Blue Ray.  Dr.  Boolean took the cord from the machine and ever-so-carefully
inserted it into Joe's nostril,where his  RJ-11  jack  was.   With  a  faint
click, the cord was secured.

     "OK, Ray," called Boolean.  "Turn it on!" Blue Ray immediately pulled a
lever  and  machine started to hum.  Ray then pulled another lever and a few
lights lit up on the  control  panel.  "Get ready, 'ModemMan,'"said Boolean,
"this is going to get quite devastating."

     At first, Joe felt nothing.  As the machine proceeded to warm  up,  Joe
started  feeling  a  little  weird.  It felt like a nagging headache.  Then,
when Blue Ray pulled the final lever, it came on like a hurricane.

     §crD]Èi[ƒ6ù—SQ…Ûl(ÕŸð>8E!©ß #@ãõÎbV°²@Ÿiß,š”BÑ·[Ãàg3o)ëEÃU™ÞK ¶e•ºGŽHo 
;îæÌüIÆšÞWÛ¹„ÁåmiÇ.fOûô<œá͆uFÕÎlÀ;W/„ŠÔí¦¯ç£Éœ¯ªí’½ïËéûúN0_ð-ª¤qðÇ?G|Ú¨ÜuV

     Boolean was jacking streams of  line  noise  into  him, and tons of it!
"ARRRRGGGHHHHH!!" screamed Joe in agony.

     ˜Žç3ϝ’"íµçþÌé3þfèÖñ&iòûßE¯‹áî[EtòÜÍÉyé˜éóœïê§ÖÂ*åIUïP‰Ù(—æ»hSpãZV8’ù‹‹
?ÝůE>*H"éÉŒ­¸Â+0'•©—wƒ3¶¡`Ÿ†Éw¥©Õæg#NWóc&÷Öl¶±¾Êl5kaÓÜép™(oL»×“xe¨ŒÁã‘\
q¦Z¦fê ÇIì›d“Dj¹ŠT’Râ[ý`}ºÓÝü€kBnʵíöw­ÍxgñŸ3Žß¶…«#ÜcXçBÇ*eÊ¢ÆÞƒàS¾OÖÛ°f$úa

     "YYYYEEEAAAAAARRRRRGGGGGGGHHHHHHHH!!!!!"

     ;îæÌüIÆšÞWÛ¹„ÁåmiÇ.fOûô<œá͆uFÕÎlÀ;W/„ŠÔí¦¯ç£Éœ¯ªí’½ïËéûúN0_ð-ª¤qðÇ?G|
Þ¾äx?Wsiyš…s­û÷¡":1&ª¼`Ç®e½ü¹?ž¦‹3ýÑÄ0#,b°Óq’ÎZ²ìù¼‘3Ÿí7Ìh„€kW,Ão¹“Q°²#Ãp p
:K/0qþR7$2A5%s¡;QJB§yù1Q¬k:!Ú`Ê˯ÐÀƁ †ºÐÎãž#ÛÔ¿#Ê•réÍ´µ3[uU‹û½%5”RmÅøðZ3í}:

     "AAAAIIIIIGGGGHGHHHHHHH!!!"

                              To Be Continued...

     In our next chapter: Will this be the end of our hero?   Will  ModemMan
survive  the  onslaught of line noise, or will his brain simply drop carrier
and hard-lock?   And  what  of  the  Penultimate  chip?   Will  the evil Dr.
Boolean regain what he feels is rightfully his?   Find  out  the  answer  to
these  questions  and  more  next  month  in the mind-numbing finale of "The
Adventures of ModemMan!"



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Silly Strings                 ³
³ From IceNET Sysops Everywhere ³ By Ima Moron 1@9661
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

This month I've chosen some silly minimum editings that you
might add to your BBS;

Located at the conference menu..."Minimum BPS Rate:"
String #1127 > Minimum $ modem:

Located at the new user information inquiry...
String #1168 > Can you support ANSI? (Y/N) if yes send $$ ..

Located as a sysop message, "Not enough memory"
String #1272 > More instances? More $, insufficient MEM.
  option;
String #1272 > Windows on one meg or less? HA!HA!HA!HA!

Located as a sysop warning message, "Shut Down All Instances"
String #1413 > Meltdown! All instance shutdown.

Taglines for this issue;

From Jot$ 1@7805 - The Gravity Center
To B: or not to B:, that is the backup.

From Papa Bear 1@5079
The information went data way.

From Tweaty Bird 1@9650 WWIVNet - >UNKNOWN< bbs.
Windows...
From the people that brought you Edlin.

From The Grey Wanderer 1@9995
Ever wonder why Oprah spelled backwards is harpO?



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ 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.³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ