Frequently Asked Questions about the Palmtop News Reader (PNR), Palmtop News
Reader Threader & Indexer (PNRTI), and other accompanying programs.

Rod Whitby <rwhitby@iname.com>
Corresponds to PNR version 3.0 or later.

If you have any additions for this FAQ please mail me the questions and
answers and I will include them in future releases.


Index
=====

1.   General
2.   Programs & scripts
3.   The configuration file
4.   File formats


=== 1. General

Q. Is PNR and its accompanying programs and source code freeware, shareware,
   or what?
A. PNR and everything that comes with it are freeware, but the author
   retains copyright on the programs, soure code, and accompanying
   documentation. The fonts are copied from the PAL distribution which
   is distributed under similar terms. PNR and its accompanying programs
   may be distributed freely without charge as long as they a distributed
   as an entire package, with no files missing.

Q. Will PNR work on my PC?
Q. Will PNR work on my HP-95LX?
A. PNR.EXM only works on HP100LX and HP200LX palmtops. PNR.EXE will also
   work on a desktop computer (using CGAGRAPH.COM supplied with the PAL
   distribution, see below).

Q. What is PAL? Where can I get it?
A. PAL is a suite of programs, utilities, and a library which helps you write
   applications for HP palmtops. PNR uses the PAL library. See www.palmtop.net
   for a copy.

Q. I cannot read the PNR.DOC file. What format is it?
A. Load it into MEMO on your HP palmtop.

Q. I have a shell account but I cannot run PPP. What can I do?
A. There are a number of options, see the documentation for PNR. Basically,
   if you have the 'tin' newsreader then you're safe. If not, then it is still
   possible to read your mail offline, but not news. Even so, you may find
   another solution.

=== 2. Programs & scripts

Q. What is the difference between PNR.EXE and PNR.EXM?
A. PNR.EXM is the System Manager compliant version for use on HPx00LX
   palmtops. PNR.EXE is an MS-DOS version that can be used on a HPx00LX and
   a desktop PC via use of CGAGRAPH.COM (supplied by PAL, see above). If
   you have a HPx00LX then use PNR.EXM.

   There are three main differences between PNR.EXM and PNR.EXE:

        o PNR.EXE has no access to the System Manager and HPx00LX hardware
          and as such cannot call the MEMO editor etc. and so must have
          the 'editor' setting defined in the config file.
        o Only one file can be attached to a message (wildcards cannot be
          used) in PNR.EXE
        o The Alt key cannot be used to get the menu on PNR.EXE. Instead press
          the MENU key or 'm'.

   PNR.EXE is supplied just in case PNR.EXM proves to not be System Manager
   compliant and is not provided as a replacement for your desktop offline
   newsreader (as if).

Q. When I try to read my news & mail PNR complains about being out of
   memory before the group index is even displayed!?
Q. When I view articles PNR complains about being out of memory or not all of
   the article can be viewed!?
Q. When I use PNRTI to index my news & mail it warns me about there being
   too many articles for PNR!?
A. As PNR is a System Manager compliant program it has been compiled under
   the small memory model, as rules dictate. This means PNR has a paltry
   64K of data space available to it. As you can understand, storing all
   the details about the articles & groups can take a lot of memory. Every
   effort has been made to reduce memory usage.

   As a rule of thumb, having more than 400 articles will use up all the
   memory available. PNRTI will give a warning message if more than 350
   articles are in the news & mail. If PNR runs out of memory you'll just
   have to limit the number of messages you download at a time.

   Another option is to reduce the memory usage within PNR. One way is not to
   use external fonts. Another way is to change the 'reserve' setting in the
   configuration file. This defines how much memory is reserved when an article
   is displayed, which is 10,000 bytes by default. If this value is reduced too
   low you will always get out of memory messages, as the PAL library used by
   PNR requires memory (actually the reserved memory is pretty much entirely
   for PAL's use). If its too high then you won't be able to view an article,
   or maybe only part of it. Experiment.

Q. When I move up one line when viewing a message it sometimes jumps up more
   than one line. Why?
A. When the end of a message is reached a filled box appears in the bottom
   left of the display. If you're at the end of a message and the entire 
   display is not taken up then when moving up a line PNR will actually move up
   enough lines to fill the rest of the display. It's a feature, not a bug...

Q. Can I delete some of my incoming messages from the News folder?
A. All incoming messages are retained until they are deleted as a group.  A
   workaround for this is to save all new messages into a temporary
   folder, from which they can be deleted.

Q. My folders index file has become corrupted. How can I repair it?
Q. My folders news file has become corrupted. How can I repair it?
A. There is no automatic solution, but you can repair it manually by
   following this procedure in your folder directory:

   1/ Rename the "<folder>.nws" file to "incoming.mai".
   2/ Run PNRTI on the "incoming.mai" file, creating "incoming.pna".
   3/ Take note of the number of folder articles reported by pnrti.
   4/ Rename the "incoming.mai" file back to "<folder>.nws".
   5/ Rename the "incoming.pna" file to "<folder>.pna".
   6/ Repeat the above steps for each "<folder>.nws" file.

   You then need to manually recreate the "folders.png" file
   according to the file format described at the end of this FAQ.  You
   will need the folder article counts you recorded for each folder.

   A future version of PNR may automate this procedure.

Q. I want to create my own fonts for use with PNR. How?
A. Get the PAL library (available from www.palmtop.net). It contains utilities
   for creating & converting fonts (and also the fonts distributed with PNR).

Q. How can I attach more than one file to an outgoing message?
A. When entering the filename to attach in the dialog box simply use wildcards.
   For example:

        Attach file(s): c:\*.txt

   You cannot enter a list of files (e.g. a.txt,b.txt).

Q. How can I import a group of files into a folder?
A. You can use the same technique as attaching more than one file. When asked
   for the filename of the file to import use wildcards.

Q. Where are the index files for replies?
A. They do not have one. A group & article index is created on the fly in
   memory each time the reply group/articles are accessed.

Q. My signature file does not get appended to my messages. Why?
A. Your signature file must be called OUTGOING.SIG. This file must
   be in your folder directory (specified in your configuration file by
   folder).

Q. How can I subscribe/unsubscribe to newsgroups using PNR?
A. Your list of subscribed groups, INCOMING.JN, may be edited from the
   article selection screen in News with F7. 

Q. When I import an external file into a folder and I try to view it, it says
   the article is corrupted. Why?
A. When PNR loads an article into memory for you to view it checks to make
   sure the article has a header. For an article to have a header it must have
   one or more lines followed by a blank line followed by one or more lines.

=== 3. The configuration file (C:\_DAT\PNR.CFG)

Q. I don't want PNR.CFG to be in C:\_DAT. How do I move it to another
   directory?
A. You can't (unless you change the source code and recompile).

Q. PNR complains about the configuration file having to contain settings for
   user, host, folder and spool. What do I do?
Q. PNR is not loading my configuration file even though I created it!?
Q. PNR is not loading the settings I've put into my configuration file!?
A. The configuration file must be called PNR.CFG and must be in the directory
   C:\_DAT

   All comment lines start with a semi-colon (;). The settings must go
   underneath the section name [PNR], for example:

   ; This is a comment line
   ; The following line IS ABSOLUTELY NECESSARY!
   [PNR]
   user=foo
   host=bar.com
   name=Fred Foo
   spool=c:\mbx
   folder=a:\news

Q. When replying to messages I want all the quoted text prefixed by something
   else other than '> '. How?
A. Change the setting for 'prefix' in the config file, e.g.:

     prefix='You Said> '

   (Note the single quotes so as to make sure the final space is included).

Q. My fonts are not all in the same directory, so the 'fontdir' setting is
   no use. What can I do?
A. Comment out the 'fontdir' setting in the config file and specify the full
   pathname for each external font required, e.g.:

   smallfont=c:\fonts\myfont.hnf
   largefont=f:\vr\otherfont.hnf

Q. I want to see the message header when viewing a message. How?
A. If you want to see the header for a message press 'Home'.
   If you always want to see the header put the following line in your
   c:\_dat\pnr.cfg file:

     header=1

Q. I want to use a SysMgr compliant (.EXM) editor as my editor. How?
A. This *may* be possible, but it depends upon your editor. First of all,
   comment out the editor setting in the configuration file. This setting is
   for DOS executables only. When the editor is not specified MEMO is used
   by default. PNR starts MEMO by feeding key scan codes into the keyboard
   buffer, and storing the complete filename of the file to edit in the
   palmtops Clipboard. The scan codes put into the keyboard buffer can be
   changed.

   The parameter `scancodes' defines the list of scan codes, separated by
   commas, e.g.:

    scancodes=118,67,111,68

   These are the scan codes for: MEMO, F9, PASTE, F10

   Remember that the complete filename of the file to edit is stored in
   the cut & paste buffer.

   Here is a list of scan codes:

    F1..F10 = 59..68
    0 = 11
    1...9 = 2...10
    q w e r...p = 16...25
    a s d f...l = 30...38
    z x c v...m = 44...50
    ESC = 1
    MENU = 200
    Zoom = 208
    DEL = 83
    BackSpace = 14
    - = 12
    + = 13
    Up, Down, Left, Right = 72,80,75,77
    ENTER = 28
    PageUp = 73
    PageDown = 81
    Space = 57
    Home = 71
    End = 79

   To apply shift add 128 to the scan code (e.g. for X and not x the scan
   code is 45 + 128 (173).

Q. How can I use aliases when sending mail and posting to newsgroups?
A. As an example, if you put the following in the [ALIAS] section of 
   your configuration file:

        offline=alt.offline.news-readers, comp.msdos.readers, alt.dont.exist

   Then when posting an article just enter `offline' in the list of newsgroups
   to post the article to. You can use more than one alias in the list, and
   use non-aliases with aliases. Note that the newsgroups list (once expanded)
   cannot be more than 512 characters. Aliases cannot be nested. See the
   documentation for more information.

Q. I use an external editor and when PNR calls it the editor is still in
   graphics mode not text mode. How do I fix it?
A. This is a problem with some editors (e.g. vi for DOS). Instead of calling
   the editor directly, use an intermediate batch file, e.g.:

     @echo off
     mode co80
     vi %1%

Q. Why aren't my lines broken up correctly, i.e. left justified?
Q. Why do my messages contain long lines, i.e. each paragraph is just one
   long line?
A. PNR/PNRTI does not format any input or output messages. For example, if
   you use Memo to write your messages you must press return at the end of
   the line or you end up with long lines. PNR has no problem displaying such
   lines, but other news readers may.

=== 4. File Formats

Q. What is the format of incoming spool files and folder files?
A. The incoming spool and folder file format is the Unix MMDF format.

   incoming.mai - The mail file (optional and may be empty)
   incoming.nws - The news file (optional and may be empty)
   incoming.idx - Index file

   <folder>.nws - Folder file (one per folder)

   .idx file
   ---------

   N 99999999 newsgroup_name

   .mai file & .nws file
   ---------------------

   [leading line of 4 ASCII 1's]
   [mail message/news article]
   [trailing line of 4 ASCII 1's]
   [leading line of 4 ASCII 1's]
   [mail message/news article]
   [trailing line of 4 ASCII 1's]
   [etc.]

Q. What is the format of outgoing message files?
A. Outgoing message files are compliant with the RFC822 internet standard.

   outgoing.m?? - Mail message
   outgoing.n?? - News article
   outgoing.s?? - Sent mail messages and news articles

Q. What is the format of the .PNG files?
A. PNG files are the group index files. News & mail share the same group
   index file, which is created by PNRTI. The group index file for folders
   is created by PNR. They are of the same format:

    Number_of_groups(%05d)
    Number_of_articles(%05d) Flags(%03d) File_name(%s) Group_name(%s)
    Number_of_articles(%05d) Flags(%03d) File_name(%s) Group_name(%s)
    Number_of_articles(%05d) Flags(%03d) File_name(%s) Group_name(%s)
    etc.

   The flags can be (exclusive, cannot be or'd unlike article flags):

    1   News group
    2   Mail group

   Note that the order of the group index file for news and mail must
   be correct for the articles index file, i.e. if the first group has
   5 articles then the first 5 entries in the articles index file
   refer to that group and so on.  As each folder has its own articles
   index file, this does not apply to the group index file for folders.

   The source code file PNRLIB.C that comes with PNRTI contains all the
   functions necessary for reading & writing group and article index files.
   See also PNRIDX.H

Q. What is the format of the .PNA files?
A. PNA files are the articles index files. News & mail share the same article
   index file, which is created by PNRTI. The article index file for each
   folder is created by PNR. They are of the same format:

    Subject(%s)
    Author(%s)
    Article_size(%ld) Flags(%d) Offset(%ld)
    Subject(%s)
    Author(%s)
    Article_size(%ld) Flags(%d) Offset(%ld)
    Subject(%s)
    Author(%s)
    Article_size(%ld) Flags(%d) Offset(%ld)
    etc.

   The Flags can be (may be or'd together, e.g. 9=read & filed):

    0   Unread, unkilled, not deleted, not filed (i.e. untouched)
    1   Read
    2   Killed (marked as killed)
    4   Deleted (marked for deletion)
    8   Filed

   The source code file PNRLIB.C that comes with PNRTI contains all the
   functions necessary for reading & writing group and article index files.
   See also PNRIDX.H

=== End of pnrfaq.txt ===
