







                                Trumpet Version 1.05





                         A News Reader for MS-DOS machines.






                                 by Peter R. Tattam





                      Email: peter@psychnet.psychol.utas.edu.au



                               Copyright (C) 1991,1992



       Page 2                                  Trumpet Version 1.05


       Introduction

       Trumpet is an NNTP newsreader for PC's running on MS-DOS.  It requires
       the use of  a Packet Driver  using either Blue-book  ethernet or  SLIP
       packets.   It provides  the user  with user-friendly  environment  for
       news-reading and also supports the use of a mouse for  point-and-click
       use.  Under some  circumstances, Trumpet will  also run under  Windows
       3.x, but as a DOS application only.

       Disclaimer

       This program is Copyright (C) 1991,1992 by Peter R. Tattam, All Rights
       Reserved.

       It is provided as shareware with the following limitations:

            This program is shareware  and is not  to be resold  or
            distributed for sale with other programs which are  for
            sale.   There is  no warranty  or claim  of fitness  or
            reliability. The program is  distributed AS IS, and  as
            such neither the author nor the University of  Tasmania
            shall be held liable for any  loss of data, down  time,
            loss of revenue or any other direct or indirect  damage
            or claims caused by this program.

       Using Trumpet for the first time

       If you are  running Trumpet for  the first time,  you must first  make
       sure that  you  have a  packet  driver  loaded.   Packet  drivers  are
       available from many sources,  of which the  most public accessible  is
       the SIMTEL20 MS-DOS  program archive. Many  sites mirror this  archive
       around the world.

       First type

            NEWS

       You should  be presented  with a  copyright  notice. Type  <enter>  to
       continue.  You will then be  given a setup screen.   You will need  to
       fill in  quite a  few details  regarding  your network.   If  you  are
       running from  a Novell  network, you  may  not be  able to  edit  some
       fields. Fill in those which you are able to fill in. Use the <tab> key
       to move  from field  to field.   After  you have  completed the  setup
       screen, type  <enter>.   When you  are starting  for the  first  time,
       Trumpet subscribes you to all the groups that are on the news  server.
       This number can be quite large on  some news servers, so if you  like,
       you can type <Alt-E><Alt-Z> to unsubscribe  from all news groups,  and
       then <ins>  to open  up the  subscribe box  and just  select the  news
       groups which interest you by moving  to the name of the newsgroup  and
       typing <enter>.  When you are satisfied that you have the news  groups
       that you wish to view, proceed to the next section.

       Using Trumpet Normally



       Trumpet Version 1.05                                  Page 3


       When using NEWS, if all goes well, you should be connected to the NNTP
       server and  then you  will be  able  to read  the  news. You  will  be
       presented with a large window with  2 scrolling frames. The top  frame
       is for locating a newsgroup, the bottom for scanning through a  group.
       A group's  articles  will not  be  displayed until  the  newsgroup  is
       selected with <enter>. To jump between the frames, type <tab>. To move
       about, use the cursor keys or click  on the scroll bars with a  mouse.
       You may  also  locate a  group  or subject  by  typing a  sequence  of
       characters which form part of the group name or article subject.   For
       example  the   sequence   'n','o','v','e'  will   locate   the   group
       'comp.sys.novell'.  This makes  it easy to locate  a group or  subject
       without typing too much.

       Note: if NEWS.INI does not exist, Trumpet will attempt to subscribe to
       all the newsgroups available.  This could take some time, and make you
       think that the  computer has gone  dead.  A  ticker should count  over
       showing you that Trumpet is loading all the newsgroup info.  The  same
       thing happens when you select the subscribe box.



       Page 4                                  Trumpet Version 1.05



       To read an article, merely select  the article in the lower window  by
       pressing <enter>. You can move about the article with the cursor keys,
       or if you have a mouse, you can click  on the scroll bars.  Try  using
       the F7/F8 keys to move from article to article.  You can also click on
       the bottom status  line to  invoke the commands  if you  have a  mouse
       loaded.

       All in all, the program is probably "self-explanatory".

       (well not really, but I'm sure you'll figure it out :-)

       Here are some of the special commands available from the various parts
       of the program.  Note that [key] means  press the ALT key at the  same
       time as pressing that key.   For example, [R] means  press ALT + R  at
       the same time.

       In the news group window (The top frame)

       Ins       open a window of all the unsubscribed groups
                 (when open, <enter> will subscribe the newsgroup)
       Del       unsubscibe from a news groups
       Sp[e]cial/[Z]ap     Unsubscribe from all news groups

       In the news article window (The bottom frame)

       F7/F8     will jump to the prev/next group with articles to be read.
       F9        cycle through header formats.
       [R]eadall will mark  all the  articles as  having  been read  for  the
                 current group and then scan to the next group with  articles
                 in it.
       [U]nread  Unread 20 articles at a time
       [T]oggle  will toggle the read status of an article.
       [S]kip    will mark the  article as having  been read without  reading
                 it.
       [F]ollow  do a follow up to the article
       [P]ost    post a new article
       f[O]rward forward article to mail user (defaults to self)

       In the article reader window (When an article has been selected)

       [H]eader  toggle viewing of the header
       [W]ordwrap     toggle word wrapping
       [P]rint   print an article (Can also save to a file this way)
       [S]ave    save article  to  a  file  (if  files  exists,  then  it  is
                 appended)
       [M]ail    mail a letter to author of the article.
       [R]eply   mail a  reply  to  the  author  of  the  article.  (includes
                 article)
       f[O]rward forward article to mail user (defaults to self)
       Sp[e]cial/[C]ancel  Cancel an article that you have posted.
       F9        toggle rot13



       Trumpet Version 1.05                                  Page 5


       The use of a mouse is supported  via the standard mouse driver.   Load
       your mouse driver before use.



       Page 6                                  Trumpet Version 1.05



       Providing command line parameters to Trumpet

       NEWS takes the following parameters.

           news [ nntp-host ]  { -option }

       The 'nntp-host' can  be overridden in  this manner.   The option  '-d'
       enables debugging.  This is only used for debugging the TCP/IP part of
       the program.

       An example of providing parameters from the command line would be

            news -myip=133.32.1.5 -netmask=255.255.0.0 -gateway=133.32.250.1

       Parameters may be in any order and can be read from the NEWS.PRM file,
       the command line, or environment variables.

       The individual parameters are

          nntp-host   domain name or IP address of the NNTP server
          smtp-host   domain name or IP address of the SMTP server
          dns-host    IP address of Domain name server
          time-host   IP address of Time server
          myip        an ip address, rarp or bootp (in lower case)
          netmask     your ip local network mask
          mygateway   ip address of your gateway outside your local net
          mss         maximum segment size that tcp can send. default 512
          rwin        size of the tcp receive window.
          site        your e-mail site name
          user        your e-mail user name
          organizationthe name of your organization
          fullname    your full name
          signame     your signature file name
          protect     disallow users to change setup
          options     your saved Trumpet options
          title-formatyour saved Trumpet title format
          timeout     timeout in  seconds for  commands  to time  out.  leave
                      large (> 600).
          vector      Hex specification of the packet driver vector number
          debug       debug options (see later)
          dbfile      debug file name
          d           equivalent to -debug=t
          maildir     specification of the maildir location (command line  or
                      environment variable only).
          ignore_nw   disable any netware features  of trumpet (command  line
                      or env. var. only)

       Debug options

       The parameter -debug enables certain debugging options.

       the format is



       Trumpet Version 1.05                                  Page 7


            news -debug=xyz

       where xyz is a string of the following characters



       Page 8                                  Trumpet Version 1.05



       e = ether header trace  (only if ip trace, arp trace or rarp trace  is
           on)
       a = arp trace
       r = rarp trace
       u = udp trace
       i = ip trace
       t = tcp trace

       e.g.
            news -debug=eat

       will trace arp packets with ether headers, and trace the tcp

       The -d option is equivalent to -debug=t

       You can also send output to a debug file with the option -dbfile

       e.g.
          news -d -dbfile=test.dbg

       will trace the tcp info into the file 'test.dbg'

       What Trumpet needs

       The files required are

            NEWS.EXE  - the executable file.
            NEWS.PRM  - a setup file for the news reader.
            NEWS.INI  - a list of the newsgroups subscribed to.

       Also required

            A packet driver of class 1 (Bluebook) or class 6 (SLIP)

       Optionally required

            Mouse driver



       Trumpet Version 1.05                                  Page 9




       A typical stand-alone setup would look like this

            myip       = 131.217.35.100
            user       = peter
            netmask    = 255.255.0.0
            mygateway  = 131.217.250.1
            nntp-host  = deimen.utas.edu.au:119
            smtp-host  = 131.217.1.19
            dns-host   = 131.217.1.19
            time-host  = 131.217.1.19
            site       = psychnet.psychol.utas.edu.au
            organization   = Psychology Department, University of Tasmania
            mss        = 512
            rwin       = 4096
            fullname   = Peter R. Tattam
            signame    = c:\news\my.sig

              



       Page 10                                 Trumpet Version 1.05



       Notes for Novell NetWare(tm) Users

       Trumpet recognizes the existence  of a NetWare  network, and will  act
       appropriately. Individual  users  will  save their  own  NEWS.PRM  and
       NEWS.INI in their  mail directory.   This  directory is  SYS:MAIL\nnnn
       where nnnn is their unique user-id number.

       NetWare users will have some parameters stored in their user parameter
       file and the rest loaded from  a global parameter file.  When  running
       from a network, some  parameters may change  from machine to  machine.
       One such parameter is the ip address 'myip'. One can use RARP or BOOTP
       to determine the IP address of a workstation, or pass the address  via
       the command-line or environment variables.

       The suggested way to run Trumpet is as follows.  The Trumpet  NEWS.EXE
       program should  reside in  a public  directory.   e.g.  SYS:PUBLIC  or
       SYS:TRUMPET

       A typical  public  setup  follows. Notice  that  some  parameters  are
       missing.

          myip        = rarp
          netmask     = 255.255.0.0
          mygateway   = 131.217.250.1
          nntp-host   = 131.217.1.19
          smtp-host   = 131.217.1.19
          dns-host    = 131.217.1.19
          time-host   = 131.217.1.19
          site        = psychnet.psychol.utas.edu.au
          organization= Psychology Department, University of Tasmania
          rwin        = 4096
          mss         = 1024
          user        = *
          fullname    = *
          timeout     = 600

       A typical user setup might be

          signame     = c:\news\my.sig

       Trumpet will only require the file  NEWS.PRM in the public  directory.
       For full security, this file should contain all the Trumpet parameters
       except those  which  you allow  users  to modify.    If the  user  and
       fullname are specified,  they should have  a "*"  as their  parameter.
       This means to load the username  and fullname from the novell  server.
       When  Trumpet  is  started   for  the  first   time,  the  user   will
       automatically have  a  NEWS.INI and  NEWS.PRM  created in  their  mail
       directory.  When Trumpet  is started, the existence  of a NEWS.INI  is
       checked,and if  one  is not  found,  a list  of  news groups  will  be
       retrieved from  the NNTP  server.   This  can take  some time,  so  be
       patient.  If the setting -protect  is provided then the user will  not
       be able to change any of the settings.



       Trumpet Version 1.05                                 Page 11



       The sequence of events for a novell user are :

            1) determination of mail directory
            2) NEWS.PRM loaded from user mail directory. (if exists)
            2-a) environment variable overrides
            2-b) command-line overrides
            3) NEWS.PRM loaded from NEWS.EXE  directory.  This will  override
               any attempt to forge some of the global parameters.
            4) if user and/or full name not set, then retrieve from server.
            5) NNTP session opened.
            6-a) if NEWS.INI exists in user mail directory then load it
            6-b) or if NEWS.INI exists in NEWS.EXE directory then load it
            6-c) or subscribe to all newsgroups on the NNTP server.
            ....
            ....
            [ optional
            7) User changes Setup (limited to only .sig file name)
            8) NEWS.PRM saved in mail directory
            ]
            ....
            ....
            9) User quits.
            10) NEWS.INI saved in mail directory
            11) NEWS.PRM saved in user's mail  directory.   (only the  screen
               settings updated)
            12) NNTP session ended.
            13) program ends.


       NEWS.INI format

       You may  modify  your own  news.ini  file.   This  can save  space  in
       Trumpet. The file is simply a list of lines, one per newsgroup.

       Each line has the following format.

       <line>         ::= <name> <subscribed> <readto> <unread-list>

       where

       <name>         ::= string
       <subscribed>   ::= "Y" | "N"
       <readto>  ::= integer
       <unread-list>  ::= { integer ["-" integer ] }

       e.g.

       comp.sys.novell Y 2345
       sci.physics Y 1234 1021 1034-1041 1211

       This format  will be  discontinued  in the  next  release. I  hope  to
       standardize to the .newsrc format used by unix systems.



       Page 12                                 Trumpet Version 1.05



       Bug Reports

       If you find a bug in Trumpet,  I would like to hear about it.
       You can e-mail me at

           peter@psychnet.psychol.utas.edu.au

       If you can, send me the NEWS.PRM that you are using (supervisor
       version if using Novell), and a simple trace of the form

            news -d -dbfile=simple.dbg

       and then

            news -debug=eairtu -dbfile=full.dbg

       Trouble shooting check list

       Can't connect to NNTP server.

            Check that you have a packet  driver loaded.  Packet driver  help
            is available from nelson@crynwr.com

            Check that you  have a valid  IP-address either  manually or  via
            RARP or BOOTP.

            Try telnetting to port 119 of the NNTP host using NCSA telnet  to
            see if it is accessible.

       Can access NNTP server but can't read any articles.

            You need to be authorized to use the NNTP server.
            See the administrator of the NNTP server.

       Can read articles, but can't POST.

            You need to be authorized to post articles.
            Some groups don't allow posting.

       Can read articles, but can't MAIL.

            Have you filled in the SMTP-HOST parameter?
            You need to be authorized to use the SMTP host.
            See the system administrator.

       Interface runs really, really slow. (on ethernet)

            Packets are  most  likely  being dropped  because  your  host  is
            sending too many packets  at a time.   Try setting RWIN=512,  and
            MSS=512. Experiment a little.

       Interface runs really, really slow. (via SLIP).



       Trumpet Version 1.05                                 Page 13


            You really  want to  use Trumpet  via SLIP????  :-)  Seriously...
            Later  versions  of  Trumpet  may  have  special  facilities  for
            background SLIP processing. If you are running SLIP, you may want
            to set MSS to a smaller size. (say 128 or 256)

       When I read large groups or large articles, Trumpet bombs.

            This is a known bug.  Future versions of Trumpet will attempt  to
            fix it up by providing article/group limits.

       Trumpet hangs halfway through a session.

            Many possible causes.
               IPXPKT being used with mss > 256.... set mss=256
               Communications broken.
               Some TSR is interacting badly with Trumpet.
               Mouse driver behaving badly.
               Monster groups/articles.
               Trumpet has timed out perhaps due to some kind of net failure.

       Known bugs

       Large articles still  crash Trumpet. This  is because of  insufficient
       error handling when expanding Turbo Vision Collections.
       Out of sync sessions cause havoc. Don't set timeout too small.

       Please report any bugs to

            peter@psychnet.psychol.utas.edu.au

       You can trace bugs with posting by creating a file called POST.LOG  in
       the same directory as NEWS.INI.   All lines posted to the NNTP  server
       will be saved in this file.


       Current wish list

            Archiving of articles via a simple database.  (not far off now)
            Automatic uuencode/uudecode facility for binary postings.
            Use external editor
            Use novell bindery for posting/reading/mailing restrictions.
            Mail a copy of posting
            Cut & paste in editor  (and a clipboard)
            Print out in Postscript
            A decent Manual
            This .DOC needs rewriting.
            No Print/File save error dialogs.



       Page 14                                 Trumpet Version 1.05


       Trumpet is going Shareware

       From  version  1.05,  Trumpet  has  become  shareware.    Due  to  the
       unprecedented demand for more  features to be added  to Trumpet, I  am
       intending to recover some of the costs in the development of  Trumpet.
       You may use Trumpet for up to a month to evaluate its usefulness.   If
       at the end of that time you  are satisfied with Trumpet as a  product,
       you can register  Trumpet.  The  basic registration fee  for a  single
       user version of Trumpet is US$10.  Versions 1.05 are shareware and  is
       released to the Internet. Later versions  are also shareware but  will
       be released to the Internet only  when they have been superceded by  a
       newer version.

       Registration of Trumpet 1.05

       All  you  need  to  do  is  send  US$10  plus  US$5  postage  for  the
       registration password and you  will receive the registration  password
       for Trumpet in the mail.  If you would like a copy on disk, there will
       be an additional cost of $10 per disk.

       Purchase of Trumpet 1.06

       When Trumpet 1.06 is ready, you can  send me a cheque or postal  order
       for US$10  registration plus  US$10 to  cover materials  and  postage.
       This version will have a few more  of the facilities asked for on  the
       wish list. I  will publish what  facilities are  available in  Trumpet
       1.06 when ready.

       Multi-user site license

       Trumpet will be  charged by the  number of simultaneous  users .   The
       pricing structure for commercial users is thus

            1-99 users       $10 US per user
            100-999 users  $1000 US + $2 US per additional user above 100
            1000-4999 users$2800 US + $0.20 US per additional user over 1000
            5000+          $3600 US

            site restriction 10km

       The pricing structure for educational users is thus

            1-99 users       $10 US per user
            100+           $1000 US

            site restriction unlimited.

       Australian  users  should  contact  me  regarding  Australian  pricing
       information and availability.

       Cheques or Postal Orders should be made out to

            Psychology Department, University of Tasmania



       Trumpet Version 1.05                                 Page 15


       and sent to

            Trumpet Software,
            c/- Psychology Department,
            University of Tasmania
            GPO Box 252C,
            HOBART, TAS AUSTRALIA 7001

       You may fill out the following order form and send it along with  your
       cheque or Postal Order to the above address.



       Page 16                                 Trumpet Version 1.05


                        +-----------------------------------+
                        |        O R D E R   F O R M        |
                        | for Trumpet version 1.05 Software |
                        +-----------------------------------+


       Ship to:                            Bill to:

       [                            ]      [                               ]
       [                            ]      [                               ]
       [                            ]      [                               ]
       [                            ]      [                               ]
       [                            ]      [                               ]


       Please supply the following items:

       ----------------------------------------------------------------------

       Licence to use Trumpet 1.05 for [       ] users. . . . . US$[       ]

       Tick at least one of the following options.
       [ ] 5.25" disk with the latest version of Trumpet + password
                   Cost - US$10 . . . . . . . . . . . . . . . . US$[       ]
       [ ] 3.5"  disk with the latest version of Trumpet + password
                   Cost - US$10 . . . . . . . . . . . . . . . . US$[       ]
       [ ] administration cost of sending registration password
                   Cost - US$5  . . . . . . . . . . . . . . . . US$[       ]


       Total. . . . . . . . . . . . . . . . . . . . . . . . . . US$[       ]

       Your registration name (required) (will appear on program)

       [___________________________________________________________________]

       Your email address (optional)
       [___________________________________________________________________]



       Trumpet Version 1.05                                 Page 17



                                 Trumpet Bug History

       Version 1.01 fixes the following bugs.

       Internal - NNTP result codes interpreted when exceptions occur.
       TCP/IP - modified to recycle packets out of sequence
       Unable to change IP address on command line.
       Some posting editor bugs fixed.
       Fixed RARP packets, timeout 10 seconds (was 5).

       Enhancements in Version 1.01

       On initial startup (or NEWS.INI missing) the setup screen appears
       automatically.
       Any error conditions will display a message on the screen for a couple
       of seconds.
       U(nread command now unreads 20 articles at a time

       Version 1.02 fixes the following bugs

       Check for low memory.  Displays  a message, and limps on with  reduced
       memory.
       Article numbers > 65535 should work now.

       Version 1.03 fixes the following bugs

       Some ARP code broken.
       TCP code improved for sending data.
       SMTP address not saved after setup screen.
       fixed  bug  when  unread  list   contains  old  articles  which   have
       disappeared from NNTP host.
       Fixed bug  in  screen  display when  focussing  a  new  group  without
       loading.
       Fixed bug  introduced by  Memory low  checking. If  there were  unread
       articles, the readto pointer was assigned to the last of them. Updated
       correctly now.

       Version 1.03 Enhancements

       Forwarding command in  article and news  item windows.   (defaults  to
       self)
       Mail command sends new letter to author of article.
       Reply command replies to author of article.
       Indicator on  start up  about IP  address  shows netmask  and  default
       gateway.
       More dials on load/save of news.ini.
       Full name extracted from Novell bindery.
       BOOTP installed.
       More robust Novell usage.
       Command line entry of all parameters.
       Extended debug options.



       Page 18                                 Trumpet Version 1.05


       Version 1.04 Bug fixes

       TCP code modified to avoid Silly Window Syndrome
       Inclusion of RWIN parameter for small/slow ethernet adaptors.
       RARP bug fixed (The BOOTP enhancement broke this part)
       Path line contains the DNS look up for the IP address.
       Date line fixed to conform to Usenet format.
       Traces may be sent to a text file for later analysis
       You can now escape using any when reading large groups.
       You can now shell to DOS.

       Version 1.05A bug fixes

       The "time-server address not specified causing articles to be rejected
       because of weird date: header" bug is fixed.
       Packet driver hooks modified to allow trace to work.
       The SMTP session is more robust. RCPT TO lines processed properly.
       CC: now works.
       Some changes to the TCP code.


       Version 1.05A Enhancements

       Saves Trumpet settings
       Lots of cosmetic changes to the program.
       Improved Article header layout.
       Support for SLIP included.
       Timeout on NNTP commands
       Rot13 support  (try F9 in the article viewer)
       Mail directory  can  be  supplied  via  command  line  or  environment
       variables.
       Send copy of mail to self.
       A net status indicator.
       A clock.
       The packet driver interrupt number can be set.
       NNTP port number can be set at end of NNTP host name.

       Version 1.05B Bug fixes/enhancements

       Mail now has a Date: header
       Mail to multiple recipients works (separate by commas, but don't use a
       comma in a comment)
       Added an  option to  disallow a  user to  change the  setup (option  -
       protect)
       Added some file error retry dialogs for the Print/Save commands.
       The save of the news.prm file has been changed to use a temporary file
       when saving.
       Maildir command has automatic append of "\" if not provided.
       IP header check sums checked.  (were not before)

       Version 1.05C Bug fixes

       BOOTP processing improved to allow any vendor type other than standard
       bootp options.



       Trumpet Version 1.05                                 Page 19



       Version 1.05D Bug fixes

       Small packets not checked for. (Introduced by SLIP)  Crashes with some
       packet drivers.



       Page 20                                 Trumpet Version 1.05


       Version 1.05E Bug fixes/enhancements

       Inclusion of a Cancel Article option.
       Removal of any reference to supervisor for Novell Systems.
       Fixed bug  where environment/command  line  parameters were  saved  in
       news.prm by mistake.
       Modified default timeout from 60 seconds to 600 seconds.
       Modified the  Posting/Mailing Dialogues  to  cope with  user  pressing
       <esc> by mistake when creating an article.

       Version 1.05F Bug fixes/enhancements

       Article line counting.
       0 line count appearing on Article list removed.
       Cross referencing  processing of  read articles  added.   (will  cause
       possible slow down of article scanning)
       Inclusion of a -ignore_nw  option to disable NetWare  maildir/username
       processing (cammand line or environment variable only).
       Bugs in 1.05E tcp fixed.
       Bug where users gateway wasn't disabled from setup menu fixed.
       Fixed empty RCPT TO:  fields (empty fields) in SMTP processing.

       Version 1.05G Bug fixes

       Bug fixed  which was  introduced in  revision F  relating to  removing
       spaces from some trumpet parameters.
       Bug fixed relating to 25/43-50 line mode switching.



       Trumpet Version 1.05                                 Page 21


                                  Acknowledgements

       The following packages are acknowledged in the development of Trumpet.

       Turbo Vision for Turbo Pascal 6.0 by Borland International

       TSPA2760 library of Turbo Pascal units available from garbo.uwasa.fi
       by Prof. Timo Salmi, moderating at garbo.uwasa.fi anonymous FTP
       archives at the University of Vaasa, Finland.
