9


JANUARY===================<<< OCN NETNEWS >>>=======================1994
************************************************************************
This Newsletter is posted as a service of the OS-9 Community Network

                      * * * * * * * * * * * * * *

SUBMISSIONS:
We invite every member of the OS-9 Community to offer up any information
that may be of interest to the members of this echo. Any article on any
related OS-9 subject will be seriously considered for inclusion in this
monthly posting.

Send your articles via Fido NET Mail to Rodger Alexander,(1:301/3401).
You may also E-Mail via Internet to (ralexander@nikiti.bham.wednet.edu).

We offer no great reward ($$$),for posted articles other then the fame
and praise you receive from your OS-9 colleagues, especially me.

  PAUSED  (C)ontine  (S)top  PAUSEDC

         MICROWARE   GOES HEAD-TO-HEAD WITH   MICROSOFT

A recent article in the Wall Street Journal featured an almost
unbelievable account of MICROWARE going up against MICROSOFT.......
and winning!!

The aritlce explained that Microware has just contracted with Bell
Atlantic Corp., the regional Bell company.  Bell plans to distribute
an interactive service to 10 million households by the end of the
century.  Bell has already placed orders for TV set-top boxes from
three different suppliers and all of these boxes run OS/9 software.

In the mean time, MICROSOFT is investing over $100 million a year and
has allied with Intel and General Instrument Corp to develop their own
TV set-top boxes.

I think the key words here are MICROWARE and Atlantic Corp are planning
to `distribute', while MICROSOFT  and friends are busy `developing'.

  PAUSED  (C)ontine  (S)top  PAUSEDC

Also reported in the article was a head-to-head test between OS/9 and a
prototype from MICROSOFT called modular Windows.  OS/9 came out on top.
MICROSOFT's Chairman, Bill Gates was reported to have said that "The
early interactive services trials will be disappointing because we
haven't made enough progress in user interfaces and the richness of
services delivered".

An interesting account by MICROWARE's founder, Kenneth Kaplan mentioned
that MICROSOFT tried to buy Microware in 1986.  "MICROSOFT began trading
publicly on the over-the-counter market."  According to Mr. Kaplan, "Mr.
Gates saw that Microware was chosen as the operating system for the
Philips-Sony CD-I machine and he wanted into that market badly" rather
than design a new operating system.  Mr. Gates figured it made more
sense to buy Microware.

There was a cautionary note in the article that the Bell Atlantic phone
company could change its suppliers, however it intends to provide the
current OS/9 operated set-top boxes to 50,000 homes by year's end plus
another million homes by 1995.  With reported future plans for Bell
  PAUSED  (C)ontine  (S)top  PAUSEDC

Atlantic to acquire Tele-Communications Inc., 20 million more homes
could easily be added to the above figures.

                    THE NOVICE PROGAMMER

Like most beginners at C programming, I sometimes wonder
if such and such can be done. As with the following problem.

I very much liked the 'ON BREAK' call we have in Basic09. After
asking around with some of the C programmers in the Dallas area,
I was given a direction to start looking for the answer.

The 'sgstat.h' header contains a structure 'sgbuf' which
is designed to hold all the screen parameters. Declared in
this structure are 2 charector bytes, sg_kbich and sg_kbach,
that hold the values for 'tmode abort' and 'tmode quit',
respectivily. By doing a 'tmode' on the hardware window you
will find that 'abort' contains the value 03 and 'quit'
contains the value 05.
  PAUSED  (C)ontine  (S)top  PAUSEDC


One way to turn off the 'BREAK' key would be to access
this structure with pointers and change these bytes and
then write it back out, I found this to be cumbersome and
d
#include <stdio.h>
#include <os9.h>
#include <lowio.h>

#define ESCAPE      '\x05'   /* abort */
#define CTRL_BRK    '\x08'   /* quit  */

/* use only to embed my name in executable code */
char *ego[] = {"On_Break - Dave Kelly, v0.0, 1993, public domain"};

/* buffer to store key board parameter */
char key_board_buffer[32];

main()
  PAUSED  (C)ontine  (S)top  PAUSEDC

{
    char c;
    Store_Keyboard_Parmeters(key_board_buffer);   /* function call */
    Off_Break_Key();                              /* function call */

    /* This is one way to impliment the testing of this */
    /* routine. There are others but I will leave that  */
    /* to the programmers own exercises.                */

    while(c = tolower(getkey())) {
        switch (c) {
            case ESCAPE:
                escmsg();
                break;
            case 'q':
                On_Break_Key(key_board_buffer);   /* function call */
                exit(errno);
                break;
            default:
  PAUSED  (C)ontine  (S)top  PAUSEDC

                break;
        }
    }
}
/* store key board parameters */
Store_Keyboard_Parmeters(key_board_buffer)
char key_board_buffer[32];
{
    int i;
    _gs_opt(STDIN,  key_board_buffer);
}
/* Turn break key off */
Off_Break_Key()
{
    /* temp storage for this function */
    char  buf[32];

    _gs_opt(STDIN,  buf);     /* read the screen options           */
                              /* as in most cases, to turn         */
  PAUSED  (C)ontine  (S)top  PAUSEDC

                              /* something off, set it to zero     */
    buf[16] = '\x00';   /* sg_kbich nomally holds 'tmode abort=03' */
                                                  /* BREAK         */
    buf[17] = '\x00';   /* sg_kbach nomally holds 'tmode quit=05'  */
                                                  /* CONTROL BREAK */
    _ss_opt(STDIN,  buf);     /* write the screen options          */
}
/* restore original key board parameters */
On_Break_Key(key_board_buffer)
char key_board_buffer[32];
{
    _ss_opt(STDIN,  key_board_buffer);
}
/* Tell user how to exit properly */
escmsg()
{
    printf(" The proper escape key is the letter 'Q'!\n");
    CurOn(STDOUT);  /* For some reason I have not yet figured */
                    /* out, the cursor is turned off when you */
  PAUSED  (C)ontine  (S)top  PAUSEDC

                    /* press the break key. If you need the   */
                    /* cursor, you must turn it back on.      */
}
/* Returns a one key stroke value */
getkey()
{
    char c;
    return(read(STDIN, &c, 1) == 1) ? (unsigned) c : EOF;
}

Programming Note:
I have used function names and variables much longer that
the compiler will reconize to illustrate what each does.
While each is unique and will compile, you should shorten
them to conform with the 8 charector standard.

I hope this information helps someone.

                           _Dave Kelly
  PAUSED  (C)ontine  (S)top  PAUSEDC





                      <<<<  SOLDER FEST  >>>>

When was the last time your club had a 'Solder Fest'?

What in the (*&@!)   Is a solderfest?  You ask.  OK, let me explain.

If your OS-9 or CoCo Club is like ours, each meeting consist of
demonstrations and discussions about our favorite machine or favorite
operating system, but major hardware projects are limited to one of
the members showing off what he/she has accomplished to their machine
to improve it's performance.
GREAT!   Great for them but not for me!

How many CoCo/OS-9 users have envied those fellow club members who
have their machines neatly installed in a PC tower case.  It looks so
  PAUSED  (C)ontine  (S)top  PAUSEDC

cool!  But unless you have a great deal of experience in electronics
and electronic hardware construction, you don't dare attempt to install
your machine in a 'tower'.  You just know that something will go wrong
and then you won't have any computer at all.

Solution......A SOLDERFEST!
A special day long meeting of hardware hackers and non hackers.
The expertise is there.  The confidence is there.
And your computer will come out 'NEW and IMPROVED' and WORKING!

Can you imagine taking a Roto Tool and cutting your old multipak to
one half of it's original size.   NO WAY!
How about installing a parallel port in your coco by soldering a 2nd
PIA (68B21) chip on top of the original PIA .   HUH?
How about replacing the 6809 chip with the faster 6309 chip without
destroying the CoCo's motherboard.    OUCH!

There are many hardware projects that most of us would like to have
but will probably do without because we don't have the expertise.
  PAUSED  (C)ontine  (S)top  PAUSEDC

Regular club meetings simply are not long enough and not really
the right environment to accomplish major hardware modifications to
one or more computers.

Our SOLDERFEST usually begins at 10 or 11 in the morning and goes
to about 8 in the evening.  The number of participants is limited by
the number of hardware hackers available to help out.  We found it
best to keep the numbers limited to two 'non-techs' for every 'tech'.
Things progress at a good pace with everyone busy.

At the club meetings we determine what projects are going to be
worked on and who is coming.  It is the responsibility of the
hardware hackers (techies) to provide a parts list to those
individuals he/she will be working with at the 'FEST'.
MM1 TECH Echo*
To      : Warren Hrach
From    : John A Donaldson
Subject : Re: MM/1 TCP/IP
Date    : 93/01/26 09:45:52
Previous Reply is Message 1241   Next Reply is Message 1409

Warren,
  The UUCP port is seperate from BINKLEY. It is suppose to have not only 
UUCP but routines to do USENET MAIL. That is setup the packets for
USENET and decode packets, Send Mail & Read Mail routines.
 USENET is not the same as FIDO. USENET mail is Internet mail. I read
somewhere that someone was working on a bridge software to translate
FIDO mail into Internet USENET mail and the other way around.
 
John D
 
--- RiBBS v2.10  
 * Origin: Ocean Beach BBS 619-224-4878 MM1 TECH moderator (1:202/343)


Public Message 
Message # 1409 *MM1 TECH Echo*
To      : John A Donaldson
From    : Warren Hrach
Subject : Re: MM/1 TCP/IP
Date    : 93/01/26 10:29:50
Previous Reply is Message 1408   

          On Tuesday, January 26th, 1993 - John A Donaldson wrote:
 
JA>  USENET is not the same as FIDO. USENET mail is Internet mail. I read
JA> somewhere that someone was working on a bridge software to translate
JA> FIDO mail into Internet USENET mail and the other way around.
 
John,
    At one time Erik Seilstat had an MS dos util that took the Internet, 
Usenet newsgroup msg. to fido type. He used to send to me but no longer
is active since he got married.  He also had an MM/1.
    I think Tim Jones has an OS9 conversion program that does similar
but I doubt that it is 2 way. Neither one could send mail back to
Internet/usenet but recieved only.
-Warren
 
--- RiBBS v2.10 (Beta) 
 * Origin: Ocean Beach BBS 619-224-4878 MM1 TECH moderator (1:202/343)


Public Message 
Message # 1410 *MM1 TECH Echo*
To      : John A Donaldson
From    : Warren Hrach
Subject : Kterm bug
Date    : 93/01/26 10:51:00

John,
    I have tried using Kterm Ymodem batch upload and cannot get it to
work properly.  What I did is to chd to my /r0 with several files in it.
Then I start kterm 'kterm /t3' and log onto my BBS over my null modem at 
9600 baud. On the BBS I call up the upload function for ymodem batch.
I then have the kterm protocol already set to ymodem and click on the
file function.  Selecting send it asks for a filename. If I enter only
one name it will send it but on the bbs it gets named 'no_name'. If I
enter 2 filenames it will skip the first one and send the second only.
I am familiar with how OSTERM does the batch send by calling up the
current dir and one can click on the various filenames to que up the
files to send. But Kterm only opens a window that you have to enter a
filename into.  The kterm i have is edition #200 CRC 94D038.
BTW the xmodem1k works fine.
-Warren
 
--- RiBBS v2.10 (Beta) 
 * Origin: Ocean Beach BBS 619-224-4878 MM1 TECH moderator (1:202/343)


Public Message 
Message # 1411 *MM1 TECH Echo*
To      : All
From    : Warren Hrach
Subject : math module
Date    : 93/01/26 11:02:38

Calvin Dodge has improved the math module's speed by 10-20 times.  I
have for downloading in my OSK Programs file section as 'CALSMATH.LZH'
it is also freqable by the same name.  I am also ticking it out to the
OS9CN Librarys for distribution.
-Warren Hrach, MM/1 Sales Rep.
 
--- RiBBS v2.10 (Beta) 
 * Origin: Ocean Beach BBS 619-224-4878 MM1 TECH moderator (1:202/343)

=*= FIDO ECHO MESSAGES MENU =*=

<1> Scan  \
<2> Read   > OS9 Echo mail             
<3> Leave /
<4> Scan  \
<5> Read   > CoCo Echo mail
<6> Leave /
<7> Scan  \
<8> Read   > CoCo_Club Echo mail
<9> Leave /
<A> Scan  \
<B> Read   > MM1_TECH Echo Mail
<C> Leave /

<G>o back to Main Menu
<P>revious Menu (Messages Menu)

[57] Command >>> 